国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

AttnGAN代碼復(fù)現(xiàn)(詳細(xì)步驟+避坑指南)文本生成圖像

這篇具有很好參考價(jià)值的文章主要介紹了AttnGAN代碼復(fù)現(xiàn)(詳細(xì)步驟+避坑指南)文本生成圖像。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

一、前言

這篇文章是AttnGAN: Fine-Grained TexttoImage Generation with Attention(帶有注意的生成對(duì)抗網(wǎng)絡(luò)細(xì)化文本到圖像生成)的代碼復(fù)現(xiàn)博文,我邊做邊寫,展示詳細(xì)步驟、踩坑和debug的過(guò)程。

論文地址: https://arxiv.org/pdf/1711.10485.pdf

論文閱讀筆記:Text to image論文精讀 AttnGAN

二、下載代碼和數(shù)據(jù)集

(下載鏈接如果打不開,翻到文末)

1、首先在github上下載模型代碼:https://github.com/taoxugit/AttnGAN(此為Python2.7版本)

??????最近在github上找到了AttnGAN的python3版本,可以有效避免很多語(yǔ)法錯(cuò)誤,推薦下載(22年2月28日更新)??????:
https://github.com/davidstap/AttnGAN

AttnGAN代碼復(fù)現(xiàn)(詳細(xì)步驟+避坑指南)文本生成圖像

2、下載為鳥類預(yù)處理的元數(shù)據(jù):https://drive.google.com/open?id=1O_LtUP9sch09QH3s_EBAgLEctBQ5JBSJ
并將其保存到data/

AttnGAN代碼復(fù)現(xiàn)(詳細(xì)步驟+避坑指南)文本生成圖像

3、下載鳥類圖像數(shù)據(jù):http://www.vision.caltech.edu/visipedia/CUB-200-2011.html 將它們提取到data/birds/。
AttnGAN代碼復(fù)現(xiàn)(詳細(xì)步驟+避坑指南)文本生成圖像
??????若該鏈接打不開可下載這個(gè),內(nèi)容是一樣的(22年2月28日更新)??????:https://drive.google.com/file/d/1hbzc_P1FuxMkcabkgn9ZKinBwW683j45/view

AttnGAN代碼復(fù)現(xiàn)(詳細(xì)步驟+避坑指南)文本生成圖像
4、下載完后目錄如下:
AttnGAN代碼復(fù)現(xiàn)(詳細(xì)步驟+避坑指南)文本生成圖像

三、搭建環(huán)境

1、首先配置好解釋器

2、然后安裝環(huán)境

pip install python-dateutil
pip install easydict
pip install pandas
pip install torchfile nltk
pip install scikit-image

可能需要額外安裝的環(huán)境,根據(jù)提示進(jìn)行補(bǔ)充:

pip install torchvision

四、預(yù)訓(xùn)練DAMSM 模型(也可以跳過(guò)這步驟,直接下載預(yù)訓(xùn)練模型)

python pretrain_DAMSM.py --cfg cfg/DAMSM/bird.yml --gpu 0

可能出現(xiàn)的問(wèn)題1:‘EasyDict’ object has no attribute ‘iteritems’
問(wèn)題原因:Python3中:iteritems變?yōu)閕tems
解決方案:根據(jù)提示將iteritems改為items
AttnGAN代碼復(fù)現(xiàn)(詳細(xì)步驟+避坑指南)文本生成圖像
AttnGAN代碼復(fù)現(xiàn)(詳細(xì)步驟+避坑指南)文本生成圖像

可能出現(xiàn)的問(wèn)題2: ‘EasyDict’ object has no attribute ‘has_key’
問(wèn)題原因:Python3以后刪除了has_key()方法
解決方案:將 b.has_key(k):改為if k in b

可能出現(xiàn)的問(wèn)題3: module ‘torch._C’ has no attribute ‘_cuda_setDevice’
問(wèn)題原因:環(huán)境問(wèn)題,環(huán)境沒配好
解決方案:卸載原環(huán)境,重新配置pytorch

可能出現(xiàn)的問(wèn)題4:name ‘xrange’ is not defined
問(wèn)題原因:xrange是python2的用法,在python3中range與xrange已經(jīng)合并為range了。
解決方案:把用到的程序里的xrange( )函數(shù)全部換為range( )

可能出現(xiàn)的問(wèn)題5: ‘a(chǎn)scii’ codec can’t decode byte 0x80 in position 0: ordinal not in range(128)
問(wèn)題原因:讀取文件時(shí)的解碼問(wèn)題
解決方案:更改為:
class_id = pickle.load(f, encoding=‘bytes’)

可能出現(xiàn)的問(wèn)題6:IndexError: list index out of range
問(wèn)題原因:代碼問(wèn)題,數(shù)組超限
解決方案:AttnGAN代碼復(fù)現(xiàn)(詳細(xì)步驟+避坑指南)文本生成圖像
將 if i < (cfg.TREE.BRANCH_NUM - 1):改為
if i < (cfg.TREE.BRANCH_NUM - 2):

可能出現(xiàn)的問(wèn)題7:IndexError: invalid index of a 0-dim tensor. Use tensor.item() to convert a 0-dim tensor to a Python number
問(wèn)題原因:在pytorch高版本用item()
解決方案:將【0】改為.item()AttnGAN代碼復(fù)現(xiàn)(詳細(xì)步驟+避坑指南)文本生成圖像

可能出現(xiàn)的問(wèn)題8:OSError: cannot open resource
問(wèn)題原因:ImageFont.truetype(‘Pillow/Tests/fonts/FreeMono.ttf’, 50),環(huán)境里沒有FreeMono這個(gè)字體
解決方案:更換字體,更改為:
fnt = ImageFont.truetype(‘Pillow/Tests/fonts/arial.ttf’, 40)

五、運(yùn)行

1、預(yù)訓(xùn)練模型的下載(選做)

如果做了第四步,可以直接進(jìn)入下一小節(jié)

如果沒有做第四步,首先下載別人已經(jīng)訓(xùn)練好的預(yù)訓(xùn)練模型:
https://drive.google.com/open?id=1GNUKjVeyWYBJ8hEU-yrfYQpDOkxEyP3V將其保存到DAMSMencoders/

下載https://drive.google.com/open?id=1lqNG75suOuR_8gjoEPYNp8VyT_ufPPig并將其保存到models/

2、運(yùn)行

訓(xùn)練GAN:python main.py --cfg cfg/bird_attn2.yml --gpu 1
運(yùn)行:python main.py --cfg cfg/eval_bird.yml --gpu 1
以從“./data/birds/example_filenames.txt”中列出的文件中的標(biāo)題生成示例。結(jié)果保存到DAMSMencoders/.

可能出現(xiàn)的問(wèn)題1:‘str‘ object has no attribute ‘decode
問(wèn)題原因:Python2和Python3在字符串編碼上的區(qū)別。
解決方案:.encode(‘utf-8’). decode(‘utf-8’) ) #先編碼再解碼:
filenames = f.read().encode(‘utf8’).decode(‘utf8’).split(’\n’)
sentences = f.read().encode(‘utf8’).decode(‘utf8’).split(’\n’)

可能出現(xiàn)的問(wèn)題2:FileNotFoundError: [Errno 2] No such file or directory:’…/data/birds/text/180.Wilson_Warbler/Wilson_Warbler_0007_175618.txt’
問(wèn)題原因:該文件沒找到, 路徑問(wèn)題
解決方案:更改為正確的路徑,如果text是處于壓縮狀態(tài)要解壓。

可能出現(xiàn)的問(wèn)題3:RuntimeError: CUDA out of memory. Tried to allocate 40.00 MiB (GPU 0; 4.00 GiB total capacity; 2.86 GiB already allocated; 33.84 MiB free; 20.86 MiB cached)
問(wèn)題原因:GPU性能不足(但依然還是能跑出結(jié)果,結(jié)果在AttnGAN-master\models\bird_AttnGAN2\example_captions中)
解決方案:花錢升級(jí)硬件或者放到服務(wù)器

六、實(shí)驗(yàn)結(jié)果
可以在這里輸入相應(yīng)測(cè)試的文本
AttnGAN代碼復(fù)現(xiàn)(詳細(xì)步驟+避坑指南)文本生成圖像
然后在這里就可以看到生成的各個(gè)階段的圖像和注意力機(jī)制的應(yīng)用。
AttnGAN代碼復(fù)現(xiàn)(詳細(xì)步驟+避坑指南)文本生成圖像
在這里可以選擇采樣數(shù)據(jù)集
AttnGAN代碼復(fù)現(xiàn)(詳細(xì)步驟+避坑指南)文本生成圖像

然后在這里可以看到采樣生成的圖像。
AttnGAN代碼復(fù)現(xiàn)(詳細(xì)步驟+避坑指南)文本生成圖像

部分實(shí)驗(yàn)結(jié)果如下:

1.this bird is yellow with white and has a very long beak
AttnGAN代碼復(fù)現(xiàn)(詳細(xì)步驟+避坑指南)文本生成圖像
2.this bird has wings that are blue and has a red belly
AttnGAN代碼復(fù)現(xiàn)(詳細(xì)步驟+避坑指南)文本生成圖像

3.this bird is yellow with white on its head and has a very short beak
AttnGAN代碼復(fù)現(xiàn)(詳細(xì)步驟+避坑指南)文本生成圖像

六、資源下載

打不開網(wǎng)址的可以點(diǎn)擊:https://download.csdn.net/download/air__Heaven/85067478
該文件除了需要下載配置好圖像數(shù)據(jù)集(二-3),其他都是配置好了的文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-440865.html

到了這里,關(guān)于AttnGAN代碼復(fù)現(xiàn)(詳細(xì)步驟+避坑指南)文本生成圖像的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 優(yōu)化 RDMA 代碼的建議和技巧-rdma性能優(yōu)化技巧-避坑指南

    優(yōu)化 RDMA 代碼的建議和技巧-rdma性能優(yōu)化技巧-避坑指南

    DMA 代表直接內(nèi)存訪問(wèn)。這意味著應(yīng)用程序可以在 CPU 干預(yù)的情況下直接訪問(wèn)(讀/寫)主機(jī)內(nèi)存。如果您在主機(jī)之間執(zhí)行此操作,它將成為遠(yuǎn)程直接內(nèi)存訪問(wèn) (RDMA) 在閱讀有關(guān) RDMA 的內(nèi)容時(shí),您會(huì)注意到一些用于描述其優(yōu)點(diǎn)的術(shù)語(yǔ)。 “零復(fù)制 Zero Copy”、“內(nèi)核繞過(guò) Kernel Bypas

    2024年02月03日
    瀏覽(30)
  • 【ChatGPT】ChatGPT使用指南——文本生成

    目錄 ChatGPT使用指南——文本生成 1 引言 2 文本摘要任務(wù) 2.1 什么是文本摘要?

    2024年02月07日
    瀏覽(23)
  • DenseNet代碼復(fù)現(xiàn)+超詳細(xì)注釋(PyTorch)

    DenseNet代碼復(fù)現(xiàn)+超詳細(xì)注釋(PyTorch)

    關(guān)于DenseNet的原理和具體細(xì)節(jié),可參見上篇解讀:經(jīng)典神經(jīng)網(wǎng)絡(luò)論文超詳細(xì)解讀(六)——DenseNet學(xué)習(xí)筆記(翻譯+精讀+代碼復(fù)現(xiàn)) 接下來(lái)我們就來(lái)復(fù)現(xiàn)一下代碼。 整個(gè)DenseNet模型主要包含三個(gè)核心細(xì)節(jié)結(jié)構(gòu),分別是 DenseLayer (整個(gè)模型最基礎(chǔ)的原子單元,完成一次最基礎(chǔ)的

    2023年04月23日
    瀏覽(21)
  • ResNet代碼復(fù)現(xiàn)+超詳細(xì)注釋(PyTorch)

    ResNet代碼復(fù)現(xiàn)+超詳細(xì)注釋(PyTorch)

    關(guān)于ResNet的原理和具體細(xì)節(jié),可參見上篇解讀:經(jīng)典神經(jīng)網(wǎng)絡(luò)論文超詳細(xì)解讀(五)——ResNet(殘差網(wǎng)絡(luò))學(xué)習(xí)筆記(翻譯+精讀+代碼復(fù)現(xiàn)) 接下來(lái)我們就來(lái)復(fù)現(xiàn)一下代碼。 源代碼比較復(fù)雜,感興趣的同學(xué)可以上官網(wǎng)學(xué)習(xí):? https://github.com/pytorch/vision/tree/master/torchvision 本

    2024年02月11日
    瀏覽(28)
  • ResNeXt代碼復(fù)現(xiàn)+超詳細(xì)注釋(PyTorch)

    ResNeXt代碼復(fù)現(xiàn)+超詳細(xì)注釋(PyTorch)

    ResNeXt就是一種典型的混合模型,由基礎(chǔ)的Inception+ResNet組合而成,本質(zhì)在gruops分組卷積,核心創(chuàng)新點(diǎn)就是用一種平行堆疊相同拓?fù)浣Y(jié)構(gòu)的blocks代替原來(lái) ResNet 的三層卷積的block,在不明顯增加參數(shù)量級(jí)的情況下提升了模型的準(zhǔn)確率,同時(shí)由于拓?fù)浣Y(jié)構(gòu)相同,超參數(shù)也減少了,便

    2024年02月15日
    瀏覽(20)
  • 如何本地部署Stable Diffusion:詳細(xì)步驟與指南

    Stable Diffusion作為一種前沿的深度學(xué)習(xí)圖像生成技術(shù),在藝術(shù)創(chuàng)作、設(shè)計(jì)、科學(xué)可視化等領(lǐng)域展現(xiàn)出巨大的潛力。若您希望在自己的本地環(huán)境中部署Stable Diffusion,以下是一份詳細(xì)的步驟與指南,幫助您成功搭建并運(yùn)行該模型。 一、準(zhǔn)備環(huán)境 在開始部署之前,您需要確保本地環(huán)

    2024年03月14日
    瀏覽(27)
  • WireShark 安裝指南:詳細(xì)安裝步驟和使用技巧

    WireShark 安裝指南:詳細(xì)安裝步驟和使用技巧

    Wireshark是一個(gè)開源的網(wǎng)絡(luò)協(xié)議分析工具,它能夠捕獲和分析網(wǎng)絡(luò)數(shù)據(jù)包,并以用戶友好的方式呈現(xiàn)這些數(shù)據(jù)包的內(nèi)容。Wireshark 被廣泛應(yīng)用于網(wǎng)絡(luò)故障排查、安全審計(jì)、教育及軟件開發(fā)等領(lǐng)域。接下將講解Wireshark的安裝與簡(jiǎn)單使用。 目錄 Wireshark安裝步驟 Npcap安裝步驟 USBPcap安

    2024年02月21日
    瀏覽(20)
  • git生成ssh密鑰詳細(xì)步驟

    git生成ssh密鑰詳細(xì)步驟

    首先右鍵點(diǎn)擊電腦桌面,點(diǎn)擊“git bash here”,打開git命令窗口 如果git用戶名和郵箱等已經(jīng)完成配置,則跳過(guò)此步驟,直接操作第3條;假如沒有配置,繼續(xù)如下操作: (1)、在命令窗口配置用戶,輸入命令:git config --global user.name \\\"blalalala\\\"。其中” blalalala”是你自己的用戶名;

    2023年04月21日
    瀏覽(36)
  • git 生成密鑰詳細(xì)步驟 和 配置

    首先右鍵點(diǎn)擊電腦桌面,點(diǎn)擊選擇\\\"Git Bash Here\\\",打開git命令窗口; 首先右鍵點(diǎn)擊電腦桌面,點(diǎn)擊選擇\\\"Git Bash Here\\\",打開git命令窗口; 在git命令窗口配置用戶,輸入命令:git config --global user.name “mink”。其中“blkj”是你自己要填的用戶名; .接著進(jìn)行郵箱配置,輸入命令:git co

    2024年02月16日
    瀏覽(25)
  • ThinkPHP5系列遠(yuǎn)程代碼執(zhí)行漏洞復(fù)現(xiàn)(詳細(xì))

    ThinkPHP5系列遠(yuǎn)程代碼執(zhí)行漏洞復(fù)現(xiàn)(詳細(xì))

    ThinkPHP是一款運(yùn)用極廣的PHP開發(fā)框架。其版本5中,由于框架對(duì)控制器名沒有進(jìn)行足夠的檢測(cè),會(huì)導(dǎo)致在沒有開啟強(qiáng)制路由的情況下可執(zhí)行任意方法,從而導(dǎo)致遠(yuǎn)程命令執(zhí)行漏洞。 漏洞危害 啟動(dòng)環(huán)境 切換到/thinkphp/5.0.23-rce# 目錄下 將version改為2,保存并退出 接著執(zhí)行 此時(shí)環(huán)境

    2024年02月12日
    瀏覽(29)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包