【翻译】StarGAN: Unified Generative Adversarial Networks for Multi-Domain Image-to-Image Translation
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? 摘要
最近的研究表明了兩個領(lǐng)域內(nèi)圖像到圖像轉(zhuǎn)換取得了顯著的成功。然而,現(xiàn)有的方法處理兩個以上的領(lǐng)域時在可伸縮性和魯棒性上有局限,因?yàn)槊繉D像域都要構(gòu)建不同的模型。為了解決這個局限,我們推出starGAN,一種新穎的、可擴(kuò)展的方法,它可以僅使用一個模型對多個域執(zhí)行圖像到圖像的轉(zhuǎn)換。StarGAN的這種統(tǒng)一模型架構(gòu)可以僅在一個網(wǎng)絡(luò)中國訓(xùn)練多個數(shù)據(jù)集的多個領(lǐng)域。這使starGAN與現(xiàn)有模型相比,轉(zhuǎn)換圖片的質(zhì)量更高,擁有靈活地將輸入圖像轉(zhuǎn)換到任何目標(biāo)域的新能力。我們的實(shí)驗(yàn)證明了我們的方法在面部特征轉(zhuǎn)移和面部表情合成上的有效性。
1.介紹 Introduction
圖像到圖像轉(zhuǎn)換的任務(wù)是改變圖像上特定的部分,使給定的圖像變成另一張圖像,比如改變一個人的面部表情使他從微笑到皺眉(Fig.1),在引入生成性對抗網(wǎng)絡(luò)(GANs)之后,這項(xiàng)任務(wù)經(jīng)歷了顯著的改進(jìn),其結(jié)果包括改變頭發(fā)顏色、從邊緣地圖重建照片和改變風(fēng)景圖片的季節(jié)。
給定來自兩個不同域的訓(xùn)練數(shù)據(jù),這些模型學(xué)習(xí)將圖像從一個域轉(zhuǎn)換到另一個域。我們定義attribute表示圖片特征,例如頭發(fā)顏色、性別或年齡,定義attribute value表示為屬性的特定值,例如,黑色/金色/棕色表示頭發(fā)顏色,或男性/女性表示性別。定義domain為一系列共享了某個屬性的圖片,如女性圖片和男性圖片分屬不同的domain。
一些圖像數(shù)據(jù)集包含許多標(biāo)記屬性。例如,CelebA數(shù)據(jù)集包含40個與面部屬性相關(guān)的標(biāo)簽,如頭發(fā)顏色、性別和年齡,RaFD數(shù)據(jù)集有8個面部表情標(biāo)簽,如“高興”、“生氣”和“悲傷”。這些設(shè)置使我們能夠執(zhí)行更有趣的任務(wù),即多域圖像到圖像的轉(zhuǎn)換,根據(jù)來自多個域的屬性更改圖像。圖1的前五列展示了CelebA圖像如何通過‘棕發(fā)’、‘性別’、‘年齡’‘白色皮膚’任意四個域之一進(jìn)行轉(zhuǎn)化的。我們可以更進(jìn)一步地從多個數(shù)據(jù)集訓(xùn)練多個領(lǐng)域,例如,聯(lián)合訓(xùn)練CelebA和RaFD圖像,使用在RaFD上訓(xùn)練獲得的特征來改變CelebA圖像的面部表情,如圖1的最右邊的幾欄。?
然而,現(xiàn)有的各種模型在多領(lǐng)域圖像轉(zhuǎn)化問題上效率很低,現(xiàn)有的GAN模型效率低是因?yàn)闉榱藢?shí)現(xiàn)在k個不同的風(fēng)格域上進(jìn)行遷移,需要構(gòu)建k*(k-1)個生成器,圖2說明了如何訓(xùn)練12個不同的生成器網(wǎng)絡(luò)在4個不同的域之間轉(zhuǎn)換圖像。同時,盡管存在如人臉形狀這樣可以可以從所有領(lǐng)域的圖像中學(xué)習(xí)到的全局特征,每個生成器也不能充分利用訓(xùn)練數(shù)據(jù),只能從k中選2個學(xué)習(xí),這是生成網(wǎng)絡(luò)的效率很低。未能充分利用訓(xùn)練數(shù)據(jù)可能會限制生成圖像的質(zhì)量。此外,他們不能訓(xùn)練來自數(shù)據(jù)集的域,因?yàn)槊總€數(shù)據(jù)集都有部分標(biāo)記,將在3.2節(jié)進(jìn)一步討論。
為了解決這一問題,我們提出starGAN,一種可以在多個域之間映射的生成對抗網(wǎng)絡(luò)。如圖2(b)所示,我們的模型僅用一個生成器訓(xùn)練多個領(lǐng)域,學(xué)習(xí)所有獲得領(lǐng)域間的映射。這個思想很簡單,我們的模型沒有學(xué)習(xí)固定的轉(zhuǎn)換(例如,從黑色到金色的頭發(fā)),而是同時輸入圖像和域信息,并學(xué)習(xí)將輸入的圖像靈活地轉(zhuǎn)換到相應(yīng)的域中。我們使用一個標(biāo)簽(例如二進(jìn)制或one-hot向量)來表示域信息, 在訓(xùn)練期間,隨機(jī)生成一個目標(biāo)域標(biāo)簽,并訓(xùn)練模型將輸入圖像靈活地轉(zhuǎn)換到目標(biāo)域。這樣,我們可以控制域標(biāo)簽,并在測試階段將圖像轉(zhuǎn)換到任何所需的域。
我們還介紹一種簡單有效的方法,通過在域標(biāo)簽中添加mask vector來實(shí)現(xiàn)不同數(shù)據(jù)集的域之間的聯(lián)合訓(xùn)練。我們提出的方法確保模型可以忽略位置標(biāo)簽關(guān)注特殊數(shù)據(jù)集提供的標(biāo)簽。用這種方法,我們的模型可以很好地執(zhí)行任務(wù),例如使用從RaFD學(xué)習(xí)的特征合成CelebA圖像的面部表情,如圖1最右邊的列所示。直到目前我們所知的中,我們的工作是第一個成功實(shí)現(xiàn)跨不同數(shù)據(jù)集執(zhí)行多域圖像轉(zhuǎn)換的。
總的來說,我們的貢獻(xiàn)如下:
?
2.相關(guān)工作Related Work
Generative Adversarial Networks.生成對抗網(wǎng)絡(luò)(GANs)在各種計(jì)算機(jī)視覺領(lǐng)域都顯示出顯著的效果,如圖像生成、圖像轉(zhuǎn)換、超分辨率成像、面部圖像合成。一個傳統(tǒng)的GAN模型包含兩個模塊:一個判別器和一個生成器。判別器學(xué)習(xí)判別真假樣本,生成器學(xué)習(xí)產(chǎn)生與真樣本難以分辨的假樣本。我們的方法還利用adversarial 損失,使生成的圖像盡可能真實(shí)。
Conditional GANs.基于GAN的條件圖像生成也展開了積極的研究。先前的研究已經(jīng)為判別器和生成器提供了類信息,以便生成基于類的樣本。其他最近的方法集中于生成與給定文本描述高度相關(guān)的特定圖像。條件圖像生成也成功應(yīng)用到了域轉(zhuǎn)換,超分辨率成像和圖片編輯。本文提出了一種可擴(kuò)展的GAN框架,通過提供條件域信息,可以靈活地將圖像轉(zhuǎn)換到不同的目標(biāo)域。
Image-to-Image Translation.最近在圖像到圖像轉(zhuǎn)換的工作得到了令人印象深刻的結(jié)果。如pix2pix用cGANs以有監(jiān)督的方式進(jìn)行圖像轉(zhuǎn)換。它結(jié)合了adversarial 損失和L1損失,因此需要成對的數(shù)據(jù)樣本。為了解決獲取數(shù)據(jù)對的問題,提出一種不成對的圖像到圖像轉(zhuǎn)換的框架。UNIT將VAEs與CoGAN結(jié)合起來,CoGAN是由兩個生成器共享權(quán)重以學(xué)習(xí)圖像在跨域中的聯(lián)合分布的一個GAN框架。CycleGAN和DiscoGAN利用cycle consistency損失來保存輸入圖像和轉(zhuǎn)換圖像間的關(guān)鍵屬性。然而,所有這些框架一次只能學(xué)習(xí)兩個域之間的聯(lián)系。他們的方法在處理多個域的時候有限制,需要對每對域訓(xùn)練不同的模型。與之前提到的方法不同,我們的框架可以僅用一個生成器學(xué)習(xí)多個域之間的關(guān)系。
| ? | |
| ? | ? |
?
3. Star Generative Adversarial Networks
首先定義提出的StarGAN,StarGAN是一個在單個數(shù)據(jù)集中處理多域圖像到圖像轉(zhuǎn)換的框架。然后,我們討論了StarGAN如何將包含不同標(biāo)簽集的多個數(shù)據(jù)集合并在一起,以便使用這些標(biāo)簽靈活地執(zhí)行圖像轉(zhuǎn)換。
3.1 多域圖像轉(zhuǎn)換 Multi-Domain Image-to-Image Translation
我們的目標(biāo)是訓(xùn)練一個單獨(dú)的生成器G使他可以學(xué)習(xí)多域間的映射。為了達(dá)到目標(biāo)我們訓(xùn)練了一個生成器G,它能將帶有域標(biāo)簽c的輸入圖像x轉(zhuǎn)換為輸出圖像y,G(x, c)—>y。隨機(jī)生成目標(biāo)域標(biāo)簽c,使G能靈活地轉(zhuǎn)換輸入圖像。我們還引入了一個輔助判別器,允許單個的判別器控制多域。也就是說,判別器產(chǎn)生圖像和標(biāo)簽的可能性分布為,D:x->{Dsrc(x),Dcls(x)}, 圖3說明了我們提出方法的訓(xùn)練過程。
Adversarial Loss.為了讓產(chǎn)生的圖像與真實(shí)圖像難以區(qū)分,我們采用對抗性損失
G生成圖像G(x,c),由輸入圖像x和目標(biāo)領(lǐng)域標(biāo)簽c得到,同時判別器D試圖區(qū)分開真實(shí)圖像和生成圖像。在本文中,我們將Dsrc(x)作為輸入圖像x經(jīng)過判別器D之后得到的可能性分布,生成器G使這個式子盡可能的小,而判別器D則盡可能使其最大化。
Domain Classification Loss.給定輸入圖像x和域標(biāo)簽c,我們的目標(biāo)是將x轉(zhuǎn)換成輸出圖像y,該圖像被正確地分類到目標(biāo)域c。為了是實(shí)現(xiàn)這個目標(biāo),我們在D的頂部增加一個輔助分類器,并加入分類損失函數(shù),使其對生成器和判別器都起到優(yōu)化的作用。也就是說,我們將目標(biāo)分解為兩項(xiàng):用于優(yōu)化D的真實(shí)圖像的域分類損失和用于優(yōu)化G的偽圖像的域分類損失。前者具體公式為:
其中Dcls(c’|x)表示由D計(jì)算的域標(biāo)簽上的概率分布。最小化這個式子,判別器D學(xué)習(xí)將真實(shí)圖像x正確分類到其相關(guān)分布c’。我們假設(shè)輸入圖像和域標(biāo)簽對(x,c’)由訓(xùn)練數(shù)據(jù)得來。另一方面,偽圖像的域分類的損失函數(shù)定義為:
換句話說,G最小化這個式子,使得生成的圖像能夠被判別器判別為目標(biāo)領(lǐng)域c。
Reconstruction Loss.通過最小化對抗損失和分類損失,生成器G能夠生成盡可能真實(shí)的圖像,并且能夠被分類為正確的目標(biāo)領(lǐng)域。然而,最小化損失(式子(1)、(3))并不能保證轉(zhuǎn)換后的圖像在只改變輸入中與域相關(guān)的部分的同時保留輸入圖像的內(nèi)容。為了緩解這一問題,我們對生成器使用了循環(huán)一致性損失函數(shù),定義如下:
其中,生成器G以生成圖像G(x,c)以及原始輸入圖像領(lǐng)域標(biāo)簽c’為輸入,努力重構(gòu)出原始圖像x。我們選擇L1范數(shù)作為重構(gòu)損失函數(shù)。注意我們兩次使用了同一個生成器,第一次是將原始圖像轉(zhuǎn)化為目標(biāo)域圖像,然后由轉(zhuǎn)換后的圖像重構(gòu)成原始圖像。
Full Objective.最終,優(yōu)化G和D的目標(biāo)函數(shù)分別為:
其中λcls, λrec是和對抗損失相對權(quán)重類似分別控制分類誤差和重構(gòu)誤差的超參數(shù)。在所有實(shí)驗(yàn)中,我們設(shè)置λcls=1,λrec=10。
3.2 多數(shù)據(jù)集訓(xùn)練 Training with Multiple Datasets
StarGAN的一個重要優(yōu)勢是同時合并包含不同類型標(biāo)簽的多個數(shù)據(jù)集,使得其在測試階段能夠控制所有的標(biāo)簽。然而有一個問題是當(dāng)從多個數(shù)據(jù)集學(xué)習(xí)時標(biāo)簽信息對每個數(shù)據(jù)集而言只是部分已知。在CelebA和RaFD的例子中,前一個數(shù)據(jù)集包含諸如發(fā)色,性別等信息,但它不包含任何后一個數(shù)據(jù)集中包含的諸如開心生氣等表情標(biāo)簽。這是有問題的,因?yàn)楫?dāng)從翻譯的圖像G(x,c)重建輸入圖像x時,需要關(guān)于標(biāo)簽向量c′的完整信息(參見式(4)
Mask Vector.為了緩解這一問題,引入mask vecrot m,允許StarGAN忽略不明確的標(biāo)簽,專注于特定數(shù)據(jù)集提供的明確的已知標(biāo)簽。在StarGAN中,用n維one-hot向量來表示m,n表示數(shù)據(jù)集的數(shù)量。此外,為標(biāo)簽定義統(tǒng)一的版本:
[·]表示串聯(lián),其中ci表示第i個數(shù)據(jù)集的標(biāo)簽。已知的標(biāo)簽ci的向量可以表示為二進(jìn)制屬性的二進(jìn)制向量,也可以表示為分類屬性的一個one-hot向量。對于剩下的n-1個未知標(biāo)簽我們簡單設(shè)為0。在我們的實(shí)驗(yàn)中,我們使用CelebA和RaFD數(shù)據(jù)集,n為2。
Training Strategy. 利用多數(shù)據(jù)集訓(xùn)練StarGAN時,我們使用式子(7)定義的c~作為生成器的輸入.這樣做使生成器學(xué)習(xí)忽略不明確的標(biāo)簽,設(shè)為0向量,來關(guān)注明確的給定標(biāo)簽。生成器的結(jié)構(gòu)與訓(xùn)練單個數(shù)據(jù)集時是一致的,除了輸入c~。另一方面,我們擴(kuò)展了判別器的輔助分類器來生成所有數(shù)據(jù)集在標(biāo)簽上的概率分布。然后,將模型按照多任務(wù)學(xué)習(xí)的方式進(jìn)行訓(xùn)練,其中,判別器只將已知標(biāo)簽相關(guān)的分類誤差最小化即可。比如,訓(xùn)練CelebA的圖像,判別器只是把CelebA中涉及到的屬性標(biāo)簽的分類誤差最小化,而不是RaFD數(shù)據(jù)集相關(guān)的面部表情的標(biāo)簽。通過這樣的設(shè)置,判別器學(xué)習(xí)到了所有數(shù)據(jù)集的分類特征,生成器也學(xué)會控制所有數(shù)據(jù)集的所有標(biāo)簽。
4.實(shí)施Implementation
Improved GAN Training.為了穩(wěn)定訓(xùn)練過程獲得高質(zhì)量的圖片,我們使用帶梯度懲罰的WGAN策略作為對抗損失函數(shù),如下:
其中x^沿真實(shí)圖像對和生成圖像對之間的直線均勻采樣,整個實(shí)驗(yàn)過程使用λgp = 10。
Network Architecture. StarGAN具有由兩個卷積層組成的生成器網(wǎng)絡(luò),其中兩個卷積層的步長為2(用于下采樣)、六個剩余塊和兩個轉(zhuǎn)置卷積層的步長為2(用于上采樣)。我們對生成器使用實(shí)例規(guī)范化,但對鑒別器不使用規(guī)范化。我們利用PatchGANs作為鑒別網(wǎng)絡(luò),它對局部圖像補(bǔ)丁的真假進(jìn)行分類。
5實(shí)驗(yàn) Experiments
在這一部分,首先通過進(jìn)行用戶研究來比較StarGAN和最近的面部屬性轉(zhuǎn)移方法。接下來,對人臉表情生成進(jìn)行分類實(shí)驗(yàn)。最后,證明了StarGAN可以學(xué)習(xí)多個數(shù)據(jù)集之前圖像到圖像的翻譯。我們所有的實(shí)驗(yàn)都是在訓(xùn)練階段用看不見的圖像輸出的模型進(jìn)行的。
5.1 Baseline Models
我們采用DIAT和CycleGAN作為對照組模型,這兩種方法都在兩個不同的域之間執(zhí)行圖像到圖像的轉(zhuǎn)換。為了進(jìn)行比較,我們?yōu)槊繉Σ煌挠蚨啻斡?xùn)練這些模型。我們還采用IcGAN作為對照組,它可以使用cGAN執(zhí)行屬性轉(zhuǎn)移。
DITA 使用對抗損失來學(xué)習(xí)從x到y(tǒng)的映射,其中x和y分別是X和Y兩個不同域中的人臉圖像。該方法在映射上的正則化項(xiàng)為||x-F(G(x))||1,以保持源圖像的身份特征,其中F是在人臉識別任務(wù)中預(yù)先訓(xùn)練的特征提取器。
CycleGAN 同樣是用對抗損失學(xué)習(xí)X,Y兩個不同域間的映射。該方法通過循環(huán)一致性損失對映射進(jìn)行正則化||x-GYX(GXY(x))||1和||y-GXY(GYX(y))||1。這種方法需要兩個生成器和鑒別器為每對不同的域。
IcGAN將編碼器和cGAN結(jié)合起來。cGAN學(xué)習(xí)映射G:{z,c}->x,圖像x同時受到潛向量z和條件向量c的作用。此外IcGAN引入一個編碼器學(xué)習(xí)cGAN的逆映射,Ez:x->z 和Ec:x->c。這使得IcGAN可以僅通過改變條件向量和保留潛向量來合成圖像。
?
5.2 Datasets
CelebA.CelbA數(shù)據(jù)集包含202,599 個名人的面部圖像,每個圖像都帶有40個二進(jìn)制屬性。我們將初始大小為178×218的圖像裁剪為178×178,然后將其大小調(diào)整為128×128。我們隨機(jī)選取2000幅圖像作為測試集,利用所有剩余圖像作為訓(xùn)練數(shù)據(jù)。我們使用以下屬性構(gòu)建七個域:頭發(fā)顏色(黑色、金色、棕色)、性別(男性/女性)和年齡(年輕/年老)。
RaFD.RaFD包含從67名參與者收集的4,824張圖像。每個參與者在三個不同的注視方向做八個面部表情,從三個不同的角度捕捉。我們將圖像裁剪為256×256,其中面居中,然后將其大小調(diào)整為128×128。
?
5.3 Training?
用Adam算法訓(xùn)練所有模型,參數(shù)β1=0.5,β2=0.999。以0.5的概率水平翻轉(zhuǎn)圖像來增強(qiáng)數(shù)據(jù)。五次鑒別器更新后執(zhí)行一次生成器更新,一次訓(xùn)練的樣本量設(shè)為16。在CelebA上的實(shí)驗(yàn)中,我們在前10個階段訓(xùn)練所有學(xué)習(xí)率為0.0001的模型,并在后10個階段將學(xué)習(xí)率線性衰減為0。為了彌補(bǔ)數(shù)據(jù)的不足,在使用RaFD進(jìn)行訓(xùn)練時,我們對所有模型進(jìn)行100個階段的訓(xùn)練,學(xué)習(xí)率為0.0001,并在接下來的100個階段應(yīng)用相同的衰減策略。在一臺NVIDIA Tesla M40 GPU上訓(xùn)練大約需要一天。
?
5.4. Experimental Results on CelebA
我們首先將所提出的方法與單屬性和多屬性傳輸任務(wù)的對照模型進(jìn)行比較。考慮到所有可能的屬性-值對,我們對DIAT和CycleGAN等跨域模型進(jìn)行了多次訓(xùn)練。在DIAT和CycleGAN的情況下,我們執(zhí)行多步驟轉(zhuǎn)換以合成多個屬性(例如,在更改頭發(fā)顏色后傳輸性別屬性)。
Qualitative evaluation.圖4示出了CelebA上的面部屬性轉(zhuǎn)移結(jié)果。我們觀察到,與跨域模型相比,我們的方法在測試數(shù)據(jù)上提供了更高質(zhì)量的轉(zhuǎn)換結(jié)果。一個可能的原因是StarGAN通過多任務(wù)學(xué)習(xí)框架的正則化效應(yīng)。換句話說,相對于訓(xùn)練一個模型來執(zhí)行固定的轉(zhuǎn)換(例如,棕色-金色頭發(fā)),這很容易過擬合,更好的是訓(xùn)練我們的模型來根據(jù)目標(biāo)域的標(biāo)簽靈活地轉(zhuǎn)換圖像。這使得我們的模型能夠?qū)W習(xí)適用于具有不同面部屬性值的圖像的多個域的可靠特征。
此外,相對于IcGAN,我們的模型在保留輸入的面部特征方面具有優(yōu)勢。我們推測這是因?yàn)槲覀兊姆椒ㄍㄟ^使用卷積層的激活圖作為潛在的表示來保存空間信息,而不是像IcGAN那樣僅僅使用低維的潛向量。
Quantitative evaluation protocol.為了進(jìn)行定量評估,我們使用AMT對單屬性和多屬性轉(zhuǎn)換任務(wù)進(jìn)行了兩次用戶研究。在給定輸入圖像的情況下,土耳其人被要求根據(jù)感知現(xiàn)實(shí)、屬性轉(zhuǎn)換質(zhì)量和保持人物的原始特征來選擇最佳生成圖像。這些選項(xiàng)是從四種不同方法生成的四個隨機(jī)圖像。在一項(xiàng)研究中生成的圖像在頭發(fā)顏色(黑色、金色、棕色)、性別或年齡上都有一個屬性轉(zhuǎn)移。在另一項(xiàng)研究中,生成的圖像包含屬性轉(zhuǎn)換的組合。每個土耳其人被問30到40個問題,包括幾個簡單合邏輯的問題來驗(yàn)證人類的努力。單次和多次轉(zhuǎn)移任務(wù)中,驗(yàn)證的土耳其人的數(shù)量分別為146和100。
Quantitative results. 表1和表2分別顯示了我們在單屬性和多屬性轉(zhuǎn)換上的AMT實(shí)驗(yàn)結(jié)果。在所有實(shí)驗(yàn)中,StarGAN在屬性轉(zhuǎn)換效果獲得了多數(shù)選票。在表1中性別變化的情況下,我們的模型和其他模型之間的投票差異很小,例如,StarGAN的39.1%和DIAT的31.4%。然而,在多屬性變化中,例如表2中的“G+A”情況,性能差異明顯,例如StarGAN的49.8%與IcGAN的20.3%,清楚地顯示了StarGAN在更復(fù)雜的多屬性轉(zhuǎn)移任務(wù)中的優(yōu)勢。這是因?yàn)榕c其他方法不同,StarGAN可以通過在訓(xùn)練階段隨機(jī)生成目標(biāo)域標(biāo)簽來處理關(guān)于多個屬性變化的圖像轉(zhuǎn)換。
5.5 Experimental Results on RaFD
接下來訓(xùn)練我們的模型在RaFD數(shù)據(jù)集上生成面部表情。為了比較StarGAN和對照組的模型,我們將輸入域固定為“中性”表達(dá)式,但目標(biāo)域在其余七個表達(dá)式中有所不同。
Qualitative evaluation.如圖5所示,StarGAN在正確保持輸入的人物特征和面部特征的同時,清晰地生成最自然的表情。盡管DIAT和CycleGAN大多保留了輸入的身份,但它們的許多結(jié)果顯示模糊,無法保持輸入中看到的銳度。IcGAN甚至無法在生成男性圖像時保留圖像中的個人身份。?????????????
我們認(rèn)為,StarGAN在圖像質(zhì)量方面的優(yōu)勢是由于其來自多任務(wù)學(xué)習(xí)環(huán)境的隱式數(shù)據(jù)增強(qiáng)效應(yīng)。RaFD圖像包含較小的樣本,如每個域500個圖像。當(dāng)在兩個域上訓(xùn)練時,DIAT和CycleGAN一次只能使用1000個訓(xùn)練圖像,但是StarGAN總共可以使用所有可用域中的4000個圖像進(jìn)行訓(xùn)練。這使得StarGAN能夠正確地學(xué)習(xí)如何保持生成輸出的質(zhì)量和清晰度。
Quantitative evaluation.為了進(jìn)行定量評估,我們計(jì)算了人臉表情生成圖像的分類誤差。我們使用ResNet-18體系結(jié)構(gòu)在RaFD數(shù)據(jù)集上訓(xùn)練了一個面部表情分類器(訓(xùn)練集和測試集的分割率為90%/10%),得到了接近完美的99.55%的準(zhǔn)確率。然后,我們使用相同的訓(xùn)練集訓(xùn)練每個圖像轉(zhuǎn)換模型,并在相同的、不可見的測試集上執(zhí)行圖像轉(zhuǎn)換。最后,我們使用上面提到分類器對轉(zhuǎn)化后的圖像表情進(jìn)行分類。如表3所示,我們的模型達(dá)到了最低的分類誤差,這表明我們的模型在所有比較方法中產(chǎn)生了最真實(shí)的面部表情。
模型的另一個重要優(yōu)點(diǎn)是可以根據(jù)所需參數(shù)的數(shù)量進(jìn)行伸縮。表3的最后一列顯示,StarGAN學(xué)習(xí)所有轉(zhuǎn)換所需的參數(shù)數(shù)量比DIAT小7倍,比CycleGAN小14倍。這是因?yàn)镾tarGAN只需要一個生成器和判別器對,而不考慮域的數(shù)量,但是在跨域模型的情況下,如CycleGAN,需要為每個源-目標(biāo)域?qū)τ?xùn)練完全不同的模型。
5.6 Experimental Results on CelebA+RaFD
最后,證明我們的模型不僅可以從單個數(shù)據(jù)集中的多個域?qū)W習(xí),而且可以從多個數(shù)據(jù)集中學(xué)習(xí)。使用mask vector在CelebA和RaFD數(shù)據(jù)集上聯(lián)合訓(xùn)練模型。為了區(qū)分只在RaFD上訓(xùn)練的模型和同時在CelebA和RaFD上訓(xùn)練的模型,我們將前者表示為StarGAN-SNG(single),后者表示為StarGAN-JNT(joint)。
Effects of joint training.圖6在合成CelebA圖像的面部表情對StarGAN-SNG和StarGAN-JNT之間進(jìn)行定性比較。StarGAN-JNT展現(xiàn)了高質(zhì)量的情感圖像,而StarGAN-SNG產(chǎn)生合理但模糊的灰色背景圖像。這種差異是因?yàn)镾tarGAN-JNT在訓(xùn)練中學(xué)習(xí)轉(zhuǎn)換CelebA圖像,而StarGAN-SNG沒有。換句話說,StarGAN-JNT可以利用這兩個數(shù)據(jù)集來改進(jìn)共享的低級任務(wù),比如面部關(guān)鍵點(diǎn)檢測和分割。通過同時使用CelebA和RaFD,StarGAN-JNT可以改善這些低級任務(wù),這有利于學(xué)習(xí)面部表情合成。
Learned role of mask vector.在這個實(shí)驗(yàn),給出一個one-hot向量c,對給定維度的人臉表情設(shè)置為1。這樣,由于顯式地給出了與第二個數(shù)據(jù)集相關(guān)聯(lián)的標(biāo)簽,因此正確的mask vector是[0,1]。圖7顯示了給出正確mask vector的情況和相反mask vector即[1,0]的情況。使用的錯誤的mask vector時StarGAN-JNT 生成人臉表情失敗,它會操縱輸入圖像的年齡。這是因?yàn)槟P秃雎粤宋粗拿娌勘砬闃?biāo)簽,并通過mask vector將面部屬性標(biāo)簽視為有效。注意,由于其中一個面部屬性是“young”,因此當(dāng)模型接受零向量作為輸入時,它會將圖像從young轉(zhuǎn)換為old。通過這種行為,我們可以確認(rèn),當(dāng)涉及到來自多個數(shù)據(jù)集的所有標(biāo)簽時,StarGAN正確地學(xué)習(xí)了mask vector在圖像到圖像轉(zhuǎn)換中的預(yù)期作用。
?
?
6. 結(jié)論 Conclusion
本文提出StarGAN,一種可擴(kuò)展的只用一個生成器和判別器進(jìn)行多領(lǐng)域圖像到圖像轉(zhuǎn)換的模型。除了在可擴(kuò)展性方面的優(yōu)勢,由于多任務(wù)學(xué)習(xí)策略在生成能力上的提升,StarGAN相對于其他現(xiàn)有方法也能生成質(zhì)量更高的圖像。除此之外,本文提出的mask vector也使得StarGAN能夠利用包含不同分布標(biāo)簽的不同數(shù)據(jù)集,進(jìn)而可以處理從這些數(shù)據(jù)集中學(xué)習(xí)到的所有的屬性標(biāo)簽。希望我們的工作能夠讓用戶開發(fā)跨多個領(lǐng)域的圖像轉(zhuǎn)換應(yīng)用。
?
總結(jié)
以上是生活随笔為你收集整理的【翻译】StarGAN: Unified Generative Adversarial Networks for Multi-Domain Image-to-Image Translation的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Solving environment:
- 下一篇: 方正飞鸿:工作流在OA系统中的重要性