摘要:第一列和第六列顯示輸入圖像,其余列是產(chǎn)生的圖像。然而,現(xiàn)有的模型在多域圖像轉(zhuǎn)換任務中效率低下。該圖表示連接多個域的拓撲圖。在訓練過程中,隨機生成目標域標簽并訓練模型,以便靈活地將輸入圖像轉(zhuǎn)換到目標域。
圖像到圖像轉(zhuǎn)化的任務是將一個給定圖像的特定方面改變到另一個方面,例如,將一個人的面部表情從微笑到皺眉改變(見圖1)。自從生成對抗網(wǎng)絡(luò)(GANs)的引入,這個任務經(jīng)歷了很大的發(fā)展,從改變發(fā)色,改變邊緣圖以重建照片,到改變風景圖像的季節(jié)等。
圖1. 通過從RaFD數(shù)據(jù)集學習轉(zhuǎn)移知識,從而應用到CelebA圖像轉(zhuǎn)化的多域的圖像到圖像轉(zhuǎn)化結(jié)果。第一列和第六列顯示輸入圖像,其余列是產(chǎn)生的StarGAN圖像。注意,圖像是由一個單一模型網(wǎng)絡(luò)生成的,面部表情標簽如生氣、高興、恐懼是從RaFD學習的,而不是來自CelebA。
給定來自兩個不同域的訓練數(shù)據(jù),這些模型學習如何將圖像從一個域轉(zhuǎn)換到另一個域。文章中將術(shù)語表示為圖像中固有的特征,如頭發(fā)顏色、性別或年齡,屬性值作為屬性的特定值,例如黑色/金色/棕色的頭發(fā)顏色,或性別的男性/女性等。我們進一步將具有一系列相同屬性值的圖像設(shè)為一個域。例如,女性形象代表一個域,而男性代表另一個域。
幾個圖像數(shù)據(jù)集帶有許多標記屬性。例如,在CelebA數(shù)據(jù)集包含40個標簽的面部特征,如頭發(fā)的顏色、性別、年齡;RaFD數(shù)據(jù)集有8個表示面部表情的標簽,如“快樂”,“憤怒”和“悲傷”。我們可以根據(jù)這些屬性設(shè)置執(zhí)行更有趣的任務,即多域圖像到圖像的轉(zhuǎn)換,我們根據(jù)多個域的屬性來改變圖像。圖1中,前5列展示了一個CelebA圖像可以根據(jù)任何四個域進行轉(zhuǎn)化,“金發(fā)”、“性別”、“年齡”、“蒼白的皮膚”。我們可以進一步延伸到從不同的數(shù)據(jù)集進行多個域的訓練,如共同訓練的CelebA和RaFD圖像來改變CelebA圖像的面部表情,通過訓練RaFD數(shù)據(jù)提取特征來作用于CelebA圖像,如在圖1的最右邊的列。
然而,現(xiàn)有的模型在多域圖像轉(zhuǎn)換任務中效率低下。這些模型的低效率是因為在學習K域的時候,需要訓練K(K?1)個生成器。圖2說明了如何在四個不同的域之間轉(zhuǎn)換圖像的時候,訓練十二個不同的生成器的網(wǎng)絡(luò)。即使它們可以從所有域圖像學習全局特征,如形狀特征學習,這種模型也是無效的,因為每個生成器不能充分利用整個訓練數(shù)據(jù),只能從K學習的兩個領(lǐng)域。未能充分利用訓練數(shù)據(jù)很可能會限制生成圖像的質(zhì)量。此外,它們不能聯(lián)合訓練來自不同域的數(shù)據(jù)集,因為每個數(shù)據(jù)集只有部分標記,本文在3.2章進一步討論。
圖2. 我們的StarGAN模型與其他跨域模型的比較。(a)為處理多個域,應該在每一對域都建立跨域模型。(b)StarGAN用單個發(fā)生器學習多域之間的映射。該圖表示連接多個域的拓撲圖。
為解決這些問題我們提出了StarGAN,它是生成對抗網(wǎng)絡(luò),能夠?qū)W習多個域之間的映射。如圖2(b)所示,文章中提出的模型接受多個域的訓練數(shù)據(jù),并且只使用一個生成器學習所有可用域之間的映射。這個想法是非常簡單的。其模型不是學習固定的圖像轉(zhuǎn)化(例如,從黑發(fā)到金發(fā)),而是輸入圖像和域信息,學習如何靈活地將輸入圖像轉(zhuǎn)換到相應的域中。文章中使用一個標簽(二進制或one hot向量)代表域信息。在訓練過程中,隨機生成目標域標簽并訓練模型,以便靈活地將輸入圖像轉(zhuǎn)換到目標域。通過這樣做,可以控制域標簽并在測試階段將圖像轉(zhuǎn)換成任何所需的域。
本文還引入了一種簡單而有效的方法,通過將掩碼向量添加到域標簽,使不同數(shù)據(jù)集的域之間進行聯(lián)合訓練。文章中所提出的方法使模型可以忽略未知的標簽,并專注于有標簽的特定數(shù)據(jù)集。在這種方式下,此模型對任務能獲得良好的效果,如利用從RaFD數(shù)據(jù)集學到的特征來在CelebA圖像中合成表情,如圖1的最右邊的列。據(jù)本文中提及,這篇工作是第一個成功地完成跨不同數(shù)據(jù)集的多域圖像轉(zhuǎn)化。
總的來說,本文的貢獻如下:
提出了StarGAN,生成一個新的對抗網(wǎng)絡(luò),只使用一個單一的發(fā)生器和辨別器實現(xiàn)多個域之間的映射,有效地從所有域的圖像進行訓練;
展示了如何在多個數(shù)據(jù)集之間學習多域圖像轉(zhuǎn)化,并利用掩碼向量的方法使StarGAN控制所有可用的域標簽。
提供定性和定量的結(jié)果,對面部表情合成任務和面部屬性傳遞任務使用StarGAN,相比baseline模型顯示出它的優(yōu)越性。
?
原則上,文中提出的模型可以應用于任何其他類型的域之間的轉(zhuǎn)換問題,例如,風格轉(zhuǎn)換(style transfer),這是未來的工作方向之一。
模型簡介
在單一數(shù)據(jù)集上的訓練
總得來看,StarGAN包括兩個模塊,一個鑒別器D和一個生成器G.(a)D學習如何區(qū)分真實圖像和偽造圖像,并將真實圖像分類到相應領(lǐng)域。 (b)G同時輸入圖像和目標域的標簽并生成假圖像,在輸入時目標域標簽被復制并與輸入圖像拼接在一塊。 (c)G嘗試從給定原始域標簽的假圖像重建原始圖像。 (d)G試圖生成與真實圖像不可區(qū)分的圖像同時又很容易被目標域D所區(qū)分出來。
在多數(shù)據(jù)集上的訓練
StarGAN同時在CelebA和RaFD兩個數(shù)據(jù)機上進行培訓的概述。 (a)?(d)顯示了使用CelebA的訓練過程,(e)?(h)顯示了使用RaFD的訓練過程。 (a),(e)鑒別器D學習如何區(qū)分真實圖像和偽造圖像,并僅將已知標簽的分類誤差最小化。 (b),(c),(f),(g)當掩碼向量(紫色)為[1,0]時,生成器G學習專注于CelebA標簽(黃色),而忽略RaFD標簽(綠色)來執(zhí)行圖像到圖像的轉(zhuǎn)換,反之亦然,當掩碼矢量是[0,1]時。 (d),(h)G嘗試生成與真實圖像無法區(qū)分的圖像,同時圖像可以被D分類可為目標域。
實驗結(jié)果
在明星臉上的面部屬性遷移
這些圖片是由StarGAN在CelebA 數(shù)據(jù)集上訓練后生成的。
在RaFD人臉數(shù)據(jù)集上的表情合成
這些圖片是由StarGAN在RaFD人臉數(shù)據(jù)集上訓練后生成的。
在明星臉上的表情合成
這些圖片是由StarGAN同時在RaFD和CelebA數(shù)據(jù)集上訓練后生成的。?
論文:StarGAN: Unified Generative Adversarial Networks for Multi-Domain Image-to-Image Translation
摘要
最近的研究表明,在兩個領(lǐng)域之間圖像到圖像轉(zhuǎn)化的研究領(lǐng)域取得了顯著的成功。然而,現(xiàn)有的方法在處理兩個以上圖像域時,可伸縮性和魯棒性有限,因此,要為每一對映像域都需要獨立構(gòu)建不同的模型。
為了解決這個問題,我們提出了一個新的可擴展的StarGAN,可以利用同一個模型實現(xiàn)多個域圖像到圖像轉(zhuǎn)化。這樣一個統(tǒng)一的StarGAN模型體系允許在一個單一的網(wǎng)絡(luò)內(nèi)同時訓練不同域的多個數(shù)據(jù)集。這使得StarGAN與現(xiàn)有的圖像轉(zhuǎn)化模型相比,StarGAN更加靈活,能將輸入圖像轉(zhuǎn)化到任意所需要的目標域圖像。實驗證明,我們的方法在面部屬性轉(zhuǎn)移和面部表情合成任務上的有效性。
Github 代碼
PyTorch代碼實現(xiàn)的《StarGAN: UnifiedGenerative Adversarial Networks for Multi-Domain Image-to-Image Translation》,StarGAN可以很靈活的將一副圖片轉(zhuǎn)換成任何你想要的目標風格,這一切只需要一個簡單的生成器和一個判別器。
作者
Yunjey Choi ?https://github.com/yunjey,?
Minje Choi ?https://github.com/mjc92,?
Munyoung Kim ?https://www.facebook.com/munyoung.kim.1291,?
Jung-Woo Ha ?https://www.facebook.com/jungwoo.ha.921,?
Sung Kim ?https://www.cse.ust.hk/~hunkim/,?
Jaegul Choo ?https://sites.google.com/site/jaegulchoo/
Python代碼依賴包
Python 2.7 or 3.5+ https://www.continuum.io/downloads
PyTorch 0.2.0 http://pytorch.org/
TensorFlow 1.3+ https://www.tensorflow.org/ ?
如何開始運行代碼
1. 克隆代碼倉庫 ?
bash
$ git clonehttps://github.com/yunjey/StarGAN.git
$ cd StarGAN/
2. 下載數(shù)據(jù)集
(i) CelebA數(shù)據(jù)集
bash
$ bashdownload.sh
(ii) RaFD數(shù)據(jù)集
由于RaFD并不是一個公開的數(shù)據(jù)集,所以你必須先在Radboud Faces Database website (http://www.socsci.ru.nl:8180/RaFD2/RaFD?p=main)這個網(wǎng)站上申請使用權(quán)限。然后你需要想這里描述https://github.com/yunjey/StarGAN/blob/master/png/RaFD.md的那樣,來創(chuàng)建相應的目錄結(jié)構(gòu)。
3. 訓練 StarGAN
(i) 使用CelebA訓練
bash
$ python main.py--mode="train" --dataset="CelebA" --cdim=5 --imagesize=128 --numepochs=20--numepochsdecay=10
(ii) 使用RaFD訓練
bash
$ python main.py--mode="train" --dataset="RaFD" --cdim=8 --imagesize=128 --numepochs=200--numepochsdecay=100
(iii) 同時使用CelebA和RaFD訓練
bash
$ python main.py--mode="train" --dataset="Both" --cdim=5 --c2dim=8 --imagesize=256--numiters=200000 --numitersdecay=100000
4. StarGAN測試
(i) 在明星臉上的面部屬性遷移
bash
$ python main.py--mode="test" --dataset="CelebA" --cdim=5 --imagesize=256 --testmodel=201000
(ii) 在RaFD人臉數(shù)據(jù)集上的表情合成
bash
$ python main.py--mode="test" --dataset="RaFD" --cdim=8 --imagesize=256 --testmodel=200200
(iii) 在明星臉上的表情合成
bash
$ python main.py--mode="test" --dataset="Both" --cdim=5 --c2dim=8 --imagesize=256--testmodel=200000
參考文獻
論文:
StarGAN: Unified Generative Adversarial Networks for Multi-Domain Image-to-Image Translation
arXiv: https://arxiv.org/abs/1711.09020
github: https://github.com/yunjey/StarGAN
video: https://v.qq.com/x/page/t0510kq8mya.html
歡迎加入本站公開興趣群商業(yè)智能與數(shù)據(jù)分析群
興趣范圍包括各種讓數(shù)據(jù)產(chǎn)生價值的辦法,實際應用案例分享與討論,分析工具,ETL工具,數(shù)據(jù)倉庫,數(shù)據(jù)挖掘工具,報表系統(tǒng)等全方位知識
QQ群:81035754
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/4687.html
摘要:生成你的明星臉介紹,叫做生成對抗網(wǎng)絡(luò)。改進損失函數(shù)為了訓練過程穩(wěn)定,生成高質(zhì)量的圖像,論文中采用自定義梯度懲罰來代替對抗誤差損失其中表示真實和生成圖像之間均勻采樣的直線,試驗時。 StarGAN——生成你的明星臉 1 GAN 介紹 GAN,叫做生成對抗網(wǎng)絡(luò) (Generative Adversarial Network) 。其基本原理是生成器網(wǎng)絡(luò) G(Generator) 和判別器網(wǎng)...
摘要:但年在機器學習的較高級大會上,蘋果團隊的負責人宣布,公司已經(jīng)允許自己的研發(fā)人員對外公布論文成果。蘋果第一篇論文一經(jīng)投放,便在年月日,斬獲較佳論文。這項技術(shù)由的和開發(fā),使用了生成對抗網(wǎng)絡(luò)的機器學習方法。 GANs「對抗生成網(wǎng)絡(luò)之父」Ian Goodfellow 在 ICCV 2017 上的 tutorial 演講是聊他的代表作生成對抗網(wǎng)絡(luò)(GAN/Generative Adversarial ...
摘要:此前有工作將像素損失和生成對抗損失整合為一種新的聯(lián)合損失函數(shù),訓練圖像轉(zhuǎn)換模型產(chǎn)生分辨率更清的結(jié)果。一般來說,結(jié)合使用多種損失函數(shù)的效果通常比單獨使用一種要好。結(jié)合感知對抗損失和生成對抗損失,提出了感知對抗網(wǎng)絡(luò)這一框架,處理圖像轉(zhuǎn)換任務。 近來,卷積神經(jīng)網(wǎng)絡(luò)的發(fā)展,結(jié)合對抗生成網(wǎng)絡(luò)(GAN)等嶄新的方法,為圖像轉(zhuǎn)換任務帶來了很大的提升,包括圖像超分辨率、去噪、語義分割,還有自動補全,都有亮眼...
摘要:本篇綜述的重點是回顧當前利用深度神經(jīng)網(wǎng)絡(luò)進行遷移學習的研究及其應用。這篇綜述論文的貢獻如下定義了深度遷移學習,并首次將其分為四類。這就是一個深度遷移學習任務,其中是一個表示深度神經(jīng)網(wǎng)絡(luò)的非線性函數(shù)。 論文:A Survey on Deep Transfer Learning論文地址:https://arxiv.org/pdf/1808.01974v1.pdf摘要:作為一種新的分類方法,深度學...
閱讀 2721·2021-11-11 16:55
閱讀 758·2021-09-04 16:40
閱讀 3144·2019-08-30 15:54
閱讀 2694·2019-08-30 15:54
閱讀 2475·2019-08-30 15:46
閱讀 459·2019-08-30 15:43
閱讀 3289·2019-08-30 11:11
閱讀 3043·2019-08-28 18:17