計(jì)算機(jī)視覺(jué)應(yīng)用開(kāi)發(fā)課件:基于CycleGAN的圖像風(fēng)格遷移_第1頁(yè)
計(jì)算機(jī)視覺(jué)應(yīng)用開(kāi)發(fā)課件:基于CycleGAN的圖像風(fēng)格遷移_第2頁(yè)
計(jì)算機(jī)視覺(jué)應(yīng)用開(kāi)發(fā)課件:基于CycleGAN的圖像風(fēng)格遷移_第3頁(yè)
計(jì)算機(jī)視覺(jué)應(yīng)用開(kāi)發(fā)課件:基于CycleGAN的圖像風(fēng)格遷移_第4頁(yè)
計(jì)算機(jī)視覺(jué)應(yīng)用開(kāi)發(fā)課件:基于CycleGAN的圖像風(fēng)格遷移_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

基于CycleGAN的圖像風(fēng)格遷移案例描述01任務(wù)案例目標(biāo)02任務(wù)案例分析03任務(wù)案例實(shí)施04任務(wù)1案例描述1案例描述本案例將學(xué)習(xí)如何使用搭建一個(gè)CycleGAN風(fēng)格遷移網(wǎng)絡(luò),通過(guò)訓(xùn)練該網(wǎng)絡(luò)實(shí)現(xiàn)斑馬和馬的風(fēng)格互換。2案例目標(biāo)案例目標(biāo)學(xué)會(huì)搭建一個(gè)完整的CycleGAN風(fēng)格遷移網(wǎng)絡(luò);

設(shè)計(jì)出CycleGAN網(wǎng)絡(luò)的風(fēng)格遷移損失,包括內(nèi)容損失和風(fēng)格損失;使用訓(xùn)練后的CycleGAN網(wǎng)絡(luò)實(shí)現(xiàn)斑馬與馬的風(fēng)格轉(zhuǎn)換。23案例分析案例分析上節(jié)已經(jīng)了解到,CycleGAN是由兩個(gè)生成器和兩個(gè)判別器組成。如圖6-7-6,X表示X域的圖像,Y表示Y域的圖像。X域的圖像經(jīng)過(guò)生成器G生成Y域的圖像,再經(jīng)過(guò)生成器F重構(gòu)回X域輸入的原圖像;Y域的圖像經(jīng)過(guò)生成器F生成X域圖像,再經(jīng)過(guò)生成器G重構(gòu)回Y域輸入的原圖像。判別器D_x和D_y起到判別作用,確保圖像的風(fēng)格遷移。對(duì)于X域轉(zhuǎn)化為Y域的生成器G和判別器D_y建立損失函數(shù)如下所示:3案例分析對(duì)于重構(gòu)回Y域的圖像,建立循環(huán)一致性損失函數(shù)如下所示:CycleGAN的訓(xùn)練的總體損失函數(shù)以下所示:總而言之,CycleGAN想要達(dá)到的目的是,完成兩個(gè)域之間的風(fēng)格轉(zhuǎn)換,在風(fēng)格轉(zhuǎn)換的同時(shí),又要確保圖中物體的幾何形狀和空間關(guān)系不發(fā)生變化。34案例實(shí)施4案例實(shí)施 1.導(dǎo)庫(kù)安裝

tensorflow_examples

包,以導(dǎo)入生成器和判別器。pipinstallgit導(dǎo)入程序運(yùn)行所需要庫(kù),其中pix2pix是基于GAN實(shí)現(xiàn)圖像翻譯,更準(zhǔn)確地講是基于cGAN(conditionalGAN,也叫條件GAN)。因?yàn)閏GAN可以通過(guò)添加條件信息來(lái)指導(dǎo)圖像生成,因此在圖像翻譯中就可以將輸入圖像作為條件,學(xué)習(xí)從輸入圖像到輸出圖像之間的映射,從而得到指定的輸出圖像。而其它基于GAN來(lái)做圖像翻譯的,因?yàn)镚AN算法的生成器是基于一個(gè)隨機(jī)噪聲生成圖像,難以控制輸出。因此基本上都是通過(guò)其他約束條件來(lái)指導(dǎo)圖像生成,而不是利用cGAN,這是pix2pix和其他基于GAN做圖像翻譯的差異。4案例實(shí)施2.數(shù)據(jù)預(yù)處理加載數(shù)據(jù)庫(kù)中訓(xùn)練和測(cè)試圖片。dataset,metadata=tfds.load('cycle_gan/horse2zebra',with_info=True,as_supervised=True)train_horses,train_zebras=dataset['trainA'],dataset['trainB']test_horses,test_zebras=dataset['testA'],dataset['testB']隨機(jī)裁剪圖片至同一尺寸。cropped_image=tf.image.random_crop(image,size=[IMG_HEIGHT,IMG_WIDTH,3])4案例實(shí)施將圖片進(jìn)行標(biāo)準(zhǔn)化處理。image=(image/127.5)–1返回隨機(jī)抖動(dòng)的圖片。image=tf.image.resize(image,[286,286],method=tf.image.ResizeMethod.NEAREST_NEIGHBOR)3.構(gòu)建網(wǎng)絡(luò)模型通過(guò)安裝的

tensorflow_examples

包導(dǎo)入

Pix2Pix

中的生成器和判別器。這里訓(xùn)練了兩個(gè)生成器(G和F)以及兩個(gè)判別器(X和Y)。生成器

G

學(xué)習(xí)將圖片

X

轉(zhuǎn)換為

Y。生成器

F

學(xué)習(xí)將圖片

Y

轉(zhuǎn)換為

X。判別器

D_X

學(xué)習(xí)區(qū)分圖片

X

與生成的圖片

X

(F(Y))。判別器

D_Y

學(xué)習(xí)區(qū)分圖片

Y

與生成的圖片

Y

(G(X))。4案例實(shí)施generator_g=pix2pix.unet_generator(OUTPUT_CHANNELS,norm_type='instancenorm')generator_f=pix2pix.unet_generator(OUTPUT_CHANNELS,norm_type='instancenorm')discriminator_x=pix2pix.discriminator(norm_type='instancenorm',target=False)discriminator_y=pix2pix.discriminator(norm_type='instancenorm',target=False)在CycleGAN中,沒(méi)有可訓(xùn)練的成對(duì)數(shù)據(jù),因此無(wú)法保證輸入

x

和目標(biāo)

y

數(shù)據(jù)對(duì)在訓(xùn)練期間是有意義的。所以為了強(qiáng)制網(wǎng)絡(luò)學(xué)習(xí)正確的映射,提出了循環(huán)一致?lián)p失。defdiscriminator_loss(real,generated):real_loss=loss_obj(tf.ones_like(real),real)generated_loss=loss_obj(tf.zeros_like(generated),generated)total_disc_loss=real_loss+generated_lossreturntotal_disc_loss*0.5defgenerator_loss(generated):returnloss_obj(tf.ones_like(generated),generated)4案例實(shí)施循環(huán)一致意味著結(jié)果應(yīng)接近原始輸出。例如,將一句英文譯為法文,隨后再?gòu)姆ㄎ姆g回英文,最終的結(jié)果句應(yīng)與原始句輸入相同。在循環(huán)一致?lián)p失中,圖片

X

通過(guò)生成器

G

傳遞,該生成器生成圖片

。生成的圖片

通過(guò)生成器

F

傳遞,循環(huán)生成圖片

。在

X

之間計(jì)算平均絕對(duì)誤差。defcalc_cycle_loss(real_image,cycled_image):loss1=tf.reduce_mean(tf.abs(real_image-cycled_image))returnLAMBDA*loss14案例實(shí)施生成器

G

負(fù)責(zé)將圖片

X

轉(zhuǎn)換為

Y。一致性損失表明,如果您將圖片

Y

饋送給生成器

G,它應(yīng)當(dāng)生成真實(shí)圖片

Y

或接近于

Y

的圖片。defidentity_loss(real_image,same_image):loss=tf.reduce_mean(tf.abs(real_image-same_imag

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論