唐稔為,劉啟和,譚 浩
電子科技大學(xué) 信息與軟件學(xué)院,成都 610054
繪畫是藝術(shù)的一種表現(xiàn)形式,優(yōu)秀的畫作總是會(huì)吸引到大眾的目光,在過去,一幅優(yōu)秀的畫作需要耗費(fèi)一個(gè)專業(yè)的畫家大量的時(shí)間來精雕細(xì)琢?,F(xiàn)在隨著計(jì)算機(jī)視覺的興起,科學(xué)家們開始研究如何利用計(jì)算機(jī)技術(shù)將普通圖像轉(zhuǎn)換為藝術(shù)畫作,風(fēng)格遷移技術(shù)應(yīng)運(yùn)而生。風(fēng)格遷移技術(shù)不僅可以用于繪制藝術(shù)風(fēng)格圖像,也可用于娛樂行業(yè),例如影視、動(dòng)漫的制作,將需要由人工逐步制作的背景渲染、漫畫上色等交由風(fēng)格遷移網(wǎng)絡(luò)來批量完成,極大地縮短了制作時(shí)間,降低了制作成本。
圖像風(fēng)格遷移可以理解為對(duì)圖像進(jìn)行重新渲染,在保持其內(nèi)容特征不變的情況對(duì)其顏色、紋理等進(jìn)行改變的過程。風(fēng)格遷移技術(shù)主要分為傳統(tǒng)風(fēng)格遷移技術(shù)和神經(jīng)風(fēng)格遷移技術(shù)(Neural Style Transfer,NST)。
傳統(tǒng)遷移技術(shù)主要包括早期的非真實(shí)感渲染(Non-Photorealistic Rendering,NPR)[1-3]和紋理遷移[4-6]。NPR可對(duì)特定藝術(shù)風(fēng)格,如水彩畫、油墨畫以及中國(guó)風(fēng)的古典畫等各種畫風(fēng)進(jìn)行數(shù)字化模擬。根據(jù)渲染方式不同,NPR 可細(xì)分為三類:筆觸渲染、圖像類比和圖像濾波。Meier[7]提出基于筆觸渲染的畫筆模型,可以模擬油畫生成的過程;Hertzmann等人[8]提出圖像類比的概念,在有監(jiān)督的狀態(tài)下改變?cè)瓐D風(fēng)格;Winnem?ller等人[9]引入雙邊濾波器和高斯差分濾波器來自動(dòng)生成卡通風(fēng)格圖像。
紋理遷移技術(shù)主要用于紋理合成,即根據(jù)參考圖像來對(duì)輸入圖像進(jìn)行紋理填充,使得生成圖像具有類似于樣圖的紋理風(fēng)格,適用于處理紋理簡(jiǎn)單且重復(fù)的圖像,如木紋、磚塊和墻面等。Efros和Leung[10]采用馬爾科夫隨機(jī)場(chǎng)(Markov Random Field,MRF)模型,選取與待填充像素點(diǎn)的鄰域最接近的紋理片段來對(duì)該點(diǎn)進(jìn)行像素填充。這是早期紋理合成的經(jīng)典算法,但該方法每填充一個(gè)像素值就需要遍歷一次紋理片段,時(shí)間成本很高。Wei 等人[11]為了解決以上問題,利用矢量量化的方法提升了紋理合成的速度。Ashikhmin[12]提出了適用于自然景觀的紋理合成算法。徐曉剛等人[13]提出以多種紋理樣圖為參考,得到混合紋理圖像的算法。Han 等人[14]提出一種新的基于樣例的多尺度紋理合成算法,實(shí)現(xiàn)了基于不同尺度的低分辨率圖像的紋理合成。
盡管以上傳統(tǒng)遷移技術(shù)能夠用于生成各類藝術(shù)作品,但仍有如下不足:(1)模型泛化程度差,只能進(jìn)行某種特定風(fēng)格的渲染;(2)這些技術(shù)只考慮了低層細(xì)節(jié)特征,沒有提取圖像高層語義特征;(3)以上方法采用逐像素編譯來轉(zhuǎn)換圖像,速度較慢。為了解決這些不足,神經(jīng)風(fēng)格遷移技術(shù)應(yīng)運(yùn)而生。
Gatys等人[15]發(fā)現(xiàn)深度神經(jīng)網(wǎng)絡(luò)可同時(shí)提取圖像底層紋理信息和高層語義信息,并將該技術(shù)引入風(fēng)格遷移領(lǐng)域,率先研究出一種基于VGG(Visual Geometry Group)網(wǎng)絡(luò)的神經(jīng)風(fēng)格遷移模型,效果圖如圖1 所示。Gatys等人[15-18]的工作吸引了學(xué)術(shù)界和藝術(shù)界的廣泛關(guān)注。
圖1 Gatys神經(jīng)風(fēng)格遷移效果圖Fig.1 Generated results of Gatys’neural style transfer
目前主流的神經(jīng)風(fēng)格遷移算法,根據(jù)圖像生成方式的不同可分為兩類:(1)基于圖像迭代的慢速風(fēng)格遷移;(2)基于模型迭代的快速風(fēng)格遷移。其中基于圖像迭代的慢速風(fēng)格遷移通過在噪音圖像上進(jìn)行像素迭代來生成風(fēng)格化圖像,根據(jù)風(fēng)格化方式的不同可再細(xì)分為基于統(tǒng)計(jì)參數(shù)和非統(tǒng)計(jì)參數(shù)的方法。其中基于統(tǒng)計(jì)參數(shù)的方法主要根據(jù)全局統(tǒng)計(jì)信息來進(jìn)行風(fēng)格匹配,以Gatys等人[15]的算法為代表。基于非統(tǒng)計(jì)參數(shù)的方法主要根據(jù)區(qū)域塊相似性來進(jìn)行風(fēng)格遷移,當(dāng)內(nèi)容圖像在形狀上與風(fēng)格圖像接近時(shí)效果較好,以Li 和Wand 等人[19]的研究為代表。
第二類基于模型迭代的快速風(fēng)格遷移算法包括基于前饋風(fēng)格化模型和基于GAN(Generative Adversarial Network)的方法。其中,基于前饋風(fēng)格化模型的算法通過預(yù)先訓(xùn)練生成模型的方式來快速風(fēng)格化圖像,以Johnson等人[20]和Ulyanov等人[21]為代表;基于GAN網(wǎng)絡(luò)的方式主要是通過生成器與鑒別器之間的博弈來轉(zhuǎn)換輸入圖像風(fēng)格,以條件式生成對(duì)抗網(wǎng)絡(luò)(Conditional Generative Adversarial Nets,CGAN)[22]和StarGAN[23]為代表。
本文的貢獻(xiàn)在于概述了現(xiàn)有的神經(jīng)風(fēng)格遷移算法,對(duì)其進(jìn)行了詳細(xì)的分類,并系統(tǒng)地講解了各類代表性模型的算法原理。同時(shí)提出了針對(duì)神經(jīng)風(fēng)格遷移算法的評(píng)估方法,為模型的選擇提供了參考。最后,總結(jié)了現(xiàn)階段神經(jīng)風(fēng)格遷移技術(shù)的不足之處,并提出了相應(yīng)的改進(jìn)措施。
本文第一部分對(duì)現(xiàn)階段神經(jīng)風(fēng)格遷移算法進(jìn)行分類和解釋;第二部分闡述了神經(jīng)風(fēng)格遷移技術(shù)的商業(yè)前景;第三部分提出了風(fēng)格遷移算法的評(píng)價(jià)方法,總結(jié)了各代表性模型的優(yōu)缺點(diǎn);第四部分指出了當(dāng)前風(fēng)格遷移方法存在的問題并提出解決方法;最后進(jìn)行了總結(jié)并指出風(fēng)格遷移算法具有良好的研究前景。
本章概述了當(dāng)前主流的神經(jīng)風(fēng)格遷移方法,包括基于圖像迭代的慢速神經(jīng)風(fēng)格遷移和基于模型迭代的快速神經(jīng)風(fēng)格遷移。前一類方法在圖像上逐像素迭代得到風(fēng)格化圖像,計(jì)算效率低下[24];后一類方法則是利用生成模型來風(fēng)格化圖像,生成速度上提升明顯,但同時(shí)也存在生成質(zhì)量不佳以及靈活度不夠的缺點(diǎn)。
基于圖像迭代的慢速神經(jīng)風(fēng)格遷移首先利用深度神經(jīng)網(wǎng)絡(luò)提取圖像特征,然后在隨機(jī)噪聲圖像上采用反卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)來迭代更新噪聲圖像像素,使其擁有內(nèi)容圖像的語義特征與風(fēng)格圖像的風(fēng)格特征。這種采用反向CNN來進(jìn)行圖像重建的方法由DeepDream首次提出[25]。
基于圖像迭代的慢速神經(jīng)風(fēng)格遷移定義了兩類損失函數(shù):內(nèi)容損失函數(shù)和風(fēng)格損失函數(shù)。其中,風(fēng)格損失函數(shù)是神經(jīng)風(fēng)格遷移的關(guān)鍵,根據(jù)風(fēng)格損失函數(shù)的不同再細(xì)分為以下兩類:基于統(tǒng)計(jì)參數(shù)的方法、基于非統(tǒng)計(jì)參數(shù)的方法。
1.1.1 基于統(tǒng)計(jì)參數(shù)的方法
基于統(tǒng)計(jì)參數(shù)的方法根據(jù)全局統(tǒng)計(jì)信息來進(jìn)行風(fēng)格遷移。其中,基于Gram矩陣的方法、基于最大均值差(Maximum Mean Discrepancy,MMD)的方法都屬于基于統(tǒng)計(jì)參數(shù)的方法。
Gram 矩陣Gatys 等人[15]于2015 年第一次將VGG網(wǎng)絡(luò)和Gram矩陣[16]應(yīng)用到風(fēng)格遷移中,他使用VGG網(wǎng)絡(luò)的中高層激活函數(shù)的輸出來表示圖像的內(nèi)容特征,主要包括其宏觀結(jié)構(gòu)和輪廓等,然后使用Gram 矩陣來描述其風(fēng)格特征。最小化生成圖像與輸入圖像的內(nèi)容特征與風(fēng)格特征差異即可實(shí)現(xiàn)圖像風(fēng)格遷移。下式具體展示了計(jì)算內(nèi)容特征差異的內(nèi)容損失函數(shù):
等式左側(cè)p表示內(nèi)容圖像,x表示風(fēng)格化圖像,l表示在VGG網(wǎng)絡(luò)的第l層;等式右側(cè)和分別表示風(fēng)格化圖像以及內(nèi)容圖像在VGG 網(wǎng)絡(luò)的l層中第i個(gè)特征映射的第j個(gè)激活值。風(fēng)格損失函數(shù)定義如下:
其中,Lstyle表示總損失;ωl表示l層風(fēng)格損失函數(shù)所占的權(quán)重;El表示l層的風(fēng)格損失;Nl表示第l層的所有濾波器;Ml表示第l層的特征映射大小。和分別表示風(fēng)格圖像和風(fēng)格化圖像的Gram矩陣。下式給出了Gram矩陣的定義:
其中,表示風(fēng)格圖像在VGG網(wǎng)絡(luò)的l層中第i個(gè)特征映射的第k個(gè)激活值。總損失函數(shù)定義如下:
其中,a、p和x分別表示風(fēng)格圖像、內(nèi)容圖像和生成圖像;β和α為風(fēng)格損失函數(shù)和內(nèi)容損失函數(shù)各自在總損失函數(shù)中所占的權(quán)重。
但Gatys 等人的方法不能捕獲圖像的長(zhǎng)期相關(guān)性;同時(shí),采用Gram矩陣來表示風(fēng)格特征的方法在穩(wěn)定性、生成紋理質(zhì)量等方面都具有局限性。此外,Gatys 等人的方法只提取了圖像高層特征,摒棄了低層信息,因此風(fēng)格化后的圖像會(huì)出現(xiàn)細(xì)節(jié)丟失的情況。而且Gatys等人的算法沒有考慮圖像的筆觸變化、語義信息以及深度位置信息等,這會(huì)導(dǎo)致不合理的風(fēng)格化。因此,后續(xù)的算法針對(duì)Gatys等人算法的缺點(diǎn)來進(jìn)行了改進(jìn)。
Berger 和Memisevic 等人[26]在Gatys 的基礎(chǔ)上進(jìn) 行改進(jìn),通過在高級(jí)特征上加入馬爾可夫結(jié)構(gòu),使得生成圖像滿足長(zhǎng)期一致性,可用于具有全局對(duì)稱性的紋理生成以及圖像季節(jié)的變換。
Risser 等人[27]通過研究發(fā)現(xiàn)Gram 矩陣不穩(wěn)定的主要原因在于Gram矩陣在表征圖像特征時(shí)不能體現(xiàn)該圖像數(shù)據(jù)的分布信息,這可能導(dǎo)致兩張數(shù)據(jù)分布不同的圖像具有完全相同的Gram 矩陣。因此Risser 等人[27]額外引入了統(tǒng)計(jì)直方圖損失來表征圖像特征的分布信息,解決了Gram 矩陣不穩(wěn)定的問題,但是該算法在計(jì)算上十分復(fù)雜。
針對(duì)內(nèi)容圖像低層信息丟失的問題,Li等人[28]引入拉普拉斯損失對(duì)低層特征附加約束,使用拉普拉斯矩陣額外描述了內(nèi)容圖像中的低層信息,對(duì)VGG 網(wǎng)絡(luò)中提取的高層語義信息進(jìn)行了細(xì)節(jié)上的補(bǔ)充。
后續(xù)研究引入語義信息來加強(qiáng)對(duì)生成圖像的控制。Castillo等人[29]在Gatys等人[15]的方法上引入基于實(shí)例的語義分割來實(shí)現(xiàn)針對(duì)特定區(qū)域的風(fēng)格遷移。Luan等人[30]通過人為控制將內(nèi)容圖像和風(fēng)格圖像的語義特征——映射,使得風(fēng)格遷移發(fā)生在語義相同的子區(qū)域,防止各區(qū)域塊風(fēng)格的溢出。Penhouest和Sanzenbacher[31]在Luan等人[30]的基礎(chǔ)上進(jìn)行改進(jìn),引入圖像語義自動(dòng)分割,簡(jiǎn)化了工作流程。
最大均值差Li等人[32]通過研究提出一種針對(duì)神經(jīng)風(fēng)格遷移的新解釋,將其視為一個(gè)領(lǐng)域適應(yīng)問題,采用MMD來比較源域和目標(biāo)域的風(fēng)格差異。通過使MMD最小化,即縮小領(lǐng)域差距來完成從源域到目標(biāo)域的圖像遷移。Li等人[32]的算法從數(shù)學(xué)層面對(duì)Gram矩陣匹配原理進(jìn)行了解釋,證明了匹配風(fēng)格圖像和生成圖像的Gram矩陣本質(zhì)上是最小化兩個(gè)域分布之間的MMD。因此采用不同核函數(shù)的MMD算法都可以用于風(fēng)格遷移,該結(jié)論增加了對(duì)神經(jīng)風(fēng)格遷移網(wǎng)絡(luò)的理論描述,使學(xué)術(shù)界對(duì)風(fēng)格遷移的理解更加透徹。
盡管以上方法對(duì)Gatys 等人的算法進(jìn)行了改進(jìn),解決了其不穩(wěn)定、細(xì)節(jié)丟失、缺乏語義信息等問題,但仍未解決筆觸變化以及深度位置信息缺失的問題,這對(duì)于生成圖像質(zhì)量的影響是不可忽略的。
1.1.2 基于非統(tǒng)計(jì)參數(shù)的方法
與基于統(tǒng)計(jì)參數(shù)的方法不同,基于非統(tǒng)計(jì)參數(shù)的方法首先將兩幅圖像分割成許多區(qū)域塊,然后對(duì)兩幅圖像之間最相似的區(qū)域塊進(jìn)行匹配來實(shí)現(xiàn)風(fēng)格遷移,在保持圖像局部特征方面效果較好。其中基于深度神經(jīng)網(wǎng)絡(luò)的馬爾可夫隨機(jī)場(chǎng)(Markov Random Fields,MRFs)、語義風(fēng)格遷移和深度圖像類比都屬于非統(tǒng)計(jì)參數(shù)方法。
馬爾可夫隨機(jī)場(chǎng)Li 和Wand[19]發(fā)現(xiàn)早期的基于馬爾可夫隨機(jī)場(chǎng)的傳統(tǒng)風(fēng)格遷移方法僅捕獲每個(gè)像素特征的相關(guān)性,而沒有約束其在空間上的布局,因此提出將馬爾可夫隨機(jī)場(chǎng)與dCNN(deep Convolutional Neural Network)相結(jié)合來進(jìn)行風(fēng)格遷移。他們采用馬爾可夫隨機(jī)場(chǎng)模型對(duì)dCNN提取到的圖像特征映射進(jìn)行分割,得到許多區(qū)域塊,并通過捕獲圖像局部像素的特征信息的方式對(duì)兩幅圖像的區(qū)域塊進(jìn)行匹配。公式(6)為L(zhǎng)i和Wand引入的馬爾可夫隨機(jī)場(chǎng)損失:
其中,m表示區(qū)域塊的總數(shù)量;Fl(I)為神經(jīng)網(wǎng)絡(luò)模型中l(wèi)層的區(qū)域塊集合;Ψi(Fl(I))表示Fl(I)中的第i個(gè)區(qū)域塊;ΨNN(i)(Fl(Is))是與Ψi(Fl(I))區(qū)域塊最佳匹配的區(qū)域塊,采用歸一化互相關(guān)計(jì)算得到。結(jié)果如圖2所示。
圖2 Li和Wand的風(fēng)格遷移效果圖Fig.2 Generated results of Li and Wand’s style transfer
但Li和Wand[19]的算法在內(nèi)容圖像與風(fēng)格圖像差異過大時(shí),風(fēng)格化結(jié)果并不理想,而且該算法不能很好地保留圖像的細(xì)節(jié)以及全局語義信息。
語義風(fēng)格遷移由于Li 和Wand[19]的算法沒有對(duì)圖像進(jìn)行精確的掩碼分割,有時(shí)會(huì)導(dǎo)致錯(cuò)誤的語義匹配,因此Champandard[33]將語義分割與Li 和Wand 的MRFs算法相結(jié)合,實(shí)現(xiàn)了語義風(fēng)格遷移。但MRFs的算法復(fù)雜度較高,因此Chen和Hsu[34]提出一種新的基于內(nèi)容感知的語義映射模型來代替MRFs,即利用掩碼來約束源圖像與目標(biāo)圖像之間的空間對(duì)應(yīng)關(guān)系,同時(shí)引入風(fēng)格特征的高階統(tǒng)計(jì)信息來加強(qiáng)風(fēng)格匹配的一致性,簡(jiǎn)化了生成過程。之后,Merchrez等人[35]提出一種新的上下文損失,這種損失只考慮圖像特征之間的相似性,忽略特征的空間位置,實(shí)現(xiàn)了無需進(jìn)行空間對(duì)齊的語義風(fēng)格遷移。
深度圖像類比與基于MRFs 的方法不同,Liao 等人[36]提出的深度圖像類比通過最近鄰算法來尋找兩幅圖像之間最相似的區(qū)域塊,使兩幅圖像的特征對(duì)齊來進(jìn)行風(fēng)格遷移。但該方法并不能很好地保存圖像全局語義信息,因此Gu等人[37]在此基礎(chǔ)上提出特征重排損失,即在最近鄰算法的基礎(chǔ)上引入約束,盡量讓每一個(gè)區(qū)域塊都被匹配,來保持圖像的全局語義。
盡管以上基于非統(tǒng)計(jì)參數(shù)的方法為慢速神經(jīng)風(fēng)格遷移拓寬了思路,但仍存在很多局限性:(1)要求內(nèi)容圖像與風(fēng)格圖像在形狀上具有一定的相似性;(2)在圖像全局語義特征的展示上有所欠缺;(3)生成圖像的風(fēng)格模式較為單一,風(fēng)格特征不夠豐富。
盡管基于圖像迭代的神經(jīng)風(fēng)格遷移方法的生成效果十分可觀,但由于其需要對(duì)圖像中的每個(gè)像素進(jìn)行迭代,耗時(shí)久成為了亟待解決的缺點(diǎn)。Johnson 等人[20]提出了解決辦法,以犧牲風(fēng)格選擇的靈活性為代價(jià),將圖像生成過程交由經(jīng)過訓(xùn)練的前饋風(fēng)格化網(wǎng)絡(luò)來完成,極大地提高了風(fēng)格遷移速度。
本章詳述了基于模型迭代的方法,包括基于前饋生成模型的方法和基于GAN 的方法。其中,基于生成模型的方法首先需要大量的圖像數(shù)據(jù)集來訓(xùn)練前饋風(fēng)格化網(wǎng)絡(luò),輸入的內(nèi)容圖像經(jīng)過該網(wǎng)絡(luò)后可直接輸出風(fēng)格化的結(jié)果?;贕AN的方法則需要對(duì)生成器和鑒別器進(jìn)行訓(xùn)練,直到其達(dá)到一個(gè)納什平衡的狀態(tài),此時(shí)的生成圖可以以假亂真。
1.2.1 基于前饋風(fēng)格化模型的方法
基于前饋風(fēng)格化模型算法的代表性工作有兩個(gè),分別是Johnson等人[20]和Ulyanov等人[21],這兩個(gè)模型思路相似,都是通過預(yù)訓(xùn)練前饋風(fēng)格化模型的方式來對(duì)圖像進(jìn)行風(fēng)格化,其不同之處在于模型結(jié)構(gòu)。Johnson等人[20]在Radford等人[38]提出的模型結(jié)構(gòu)上使用了殘差塊和分步卷積,Ulyanov 等人[21]則使用多尺度架構(gòu)作為生成網(wǎng)絡(luò)。
Johnson等人[20]以Gatys等人[17]的算法為基礎(chǔ)來進(jìn)行改進(jìn),率先提出了基于前饋風(fēng)格化模型的快速風(fēng)格遷移方法,實(shí)現(xiàn)了實(shí)時(shí)風(fēng)格轉(zhuǎn)換。Johnson 等人[20]引入感知損失函數(shù),該損失函數(shù)與Gatys 等人[17]提出的兩個(gè)損失函數(shù)一致。其最終目標(biāo)函數(shù)為:其中,λs、λc和λTV分別表示風(fēng)格損失函數(shù)、內(nèi)容損失函數(shù)和圖像平滑函數(shù)在總損失中所占的權(quán)重;yc代表VGG 網(wǎng)絡(luò)從內(nèi)容圖像中提取到的內(nèi)容特征;ys代表VGG網(wǎng)絡(luò)從風(fēng)格圖像中提取到的風(fēng)格特征;f(x)代表輸出圖像的特征表示;為圖像的風(fēng)格損失函數(shù);為圖像的內(nèi)容損失函數(shù);lTV(y)為總變差正則化項(xiàng),可以使輸出圖像的空間結(jié)構(gòu)更加平滑,達(dá)到抗噪的效果。結(jié)果圖如圖3所示。
圖3 Johnson的風(fēng)格遷移效果圖Fig.3 Generated results of Johnson’s style transfer
Ulyanov等人[21]提出的圖像生成模型使用了多尺度架構(gòu),可以學(xué)習(xí)到輸入圖像在不同維度上的特征,使生成圖像擁有更加豐富的細(xì)節(jié)。相比于Johnson 等人[20],Ulyanov 等人[21]的模型采用了更多的并行通道,減少了模型參數(shù),進(jìn)一步提升了風(fēng)格遷移速度。
隨后,Ulyanov 等人[39]發(fā)現(xiàn)用實(shí)例歸一化(Instance Normalisation,IN)代替原模型[21]中的批量歸一化(Batch Normalization,BN)[40],即單獨(dú)對(duì)每張圖像進(jìn)行歸一化處理,可以極大地提升生成圖像質(zhì)量。
但是Johnson等人[19]和Ulyanov等人[21,39]的算法設(shè)計(jì)仍遵循Gatys等人[15]的模型,因此具有和其一樣的局限性,即底層信息丟失、無筆觸變化以及缺乏深度位置信息等。同時(shí),其生成圖像質(zhì)量略差于Gatys等人[15]的算法。
盡管上述生成模型方法比以往基于圖像迭代的風(fēng)格遷移方法快兩個(gè)數(shù)量級(jí),但只能生成特定風(fēng)格的圖像,想得到其他風(fēng)格需重新訓(xùn)練一個(gè)前饋生成網(wǎng)絡(luò),靈活性差且非常耗時(shí)。因此單模型多風(fēng)格的生成網(wǎng)絡(luò)開始出現(xiàn),它將多種風(fēng)格整合到一個(gè)模型中來提高前饋網(wǎng)絡(luò)的效率。Dumoulin 等人[41]在Ulyanov 等人[39]的基礎(chǔ)上進(jìn)行改進(jìn),提出了條件實(shí)例歸一化(Conditional Instance Normalization,CIN),通過只改變IN 層的參數(shù)得到能生成32 種不同風(fēng)格的圖像轉(zhuǎn)換網(wǎng)絡(luò)。Chen 等人[42]提出StyleBank 層的概念,將風(fēng)格特征與StyleBank層中的一組參數(shù)綁定,內(nèi)容特征共享,想要實(shí)現(xiàn)新的風(fēng)格遷移只需單獨(dú)訓(xùn)練一個(gè)新的StyleBank層即可。以上算法將風(fēng)格特征與少量模型參數(shù)綁定,減少了訓(xùn)練量,但隨著其學(xué)習(xí)的風(fēng)格數(shù)量的增加,模型參數(shù)會(huì)越來越冗余。因此,Li等人[43]提出了一種包含多種風(fēng)格的風(fēng)格選擇模型,將圖像像素作為信號(hào)輸入來控制風(fēng)格化圖像生成,該模型可以合成300多種紋理并能生成16種風(fēng)格的前饋網(wǎng)絡(luò)。Zhang 和Dana[44]提出CoMatch 層的概念,首先讓模型學(xué)習(xí)多種風(fēng)格,然后把目標(biāo)風(fēng)格圖像特征作為信號(hào)輸入,指導(dǎo)輸入圖像在CoMatch 層匹配該風(fēng)格特征,實(shí)現(xiàn)風(fēng)格遷移。
隨后,Chen 和Schmid[45]首次提出任意風(fēng)格遷移模型,他們使用預(yù)訓(xùn)練的VGG 網(wǎng)絡(luò)從內(nèi)容特征和風(fēng)格特征中分別提取出多個(gè)激活塊,然后將每個(gè)內(nèi)容激活塊與最相似的風(fēng)格激活塊進(jìn)行匹配,文中稱為“Style Swap”,得到生成圖像,但該模型風(fēng)格化速度較慢。Huang 和Belongies[46]在Dumoulin[41]的基礎(chǔ)上對(duì)CIN進(jìn)行改進(jìn),提出自適應(yīng)實(shí)例歸一化(Adaptive Instance Normalization,AdaIN)層,該模型速度優(yōu)于Chen和Schmidt[45]的方法,實(shí)現(xiàn)了對(duì)輸入圖片進(jìn)行實(shí)時(shí)任意風(fēng)格轉(zhuǎn)換。但是AdaIN[46]算法是由數(shù)據(jù)驅(qū)動(dòng)的,在對(duì)未出現(xiàn)過的數(shù)據(jù)進(jìn)行泛化時(shí)有局限性。此外,AdaIN僅對(duì)特征映射的均值和方差進(jìn)行改變,難以得到具有豐富細(xì)節(jié)和復(fù)雜結(jié)構(gòu)的生成圖。Lu等人[47]將語義風(fēng)格遷移引入前饋生成模型,實(shí)現(xiàn)了基于語義對(duì)應(yīng)的任意風(fēng)格遷移。Li 等人[48]提出一種基于編碼器/解碼器的模型,用白化和上色轉(zhuǎn)換(Whitening and Colouring Transformations,WCT)第一次實(shí)現(xiàn)了無需針對(duì)特定風(fēng)格進(jìn)行訓(xùn)練的任意風(fēng)格遷移。Li等人[49]研究發(fā)現(xiàn)AdaIn[46]和WCT[48]等算法都是將內(nèi)容圖像特征與一個(gè)轉(zhuǎn)換矩陣線性相乘來實(shí)現(xiàn)風(fēng)格遷移,因此提出一個(gè)針對(duì)以上線性風(fēng)格遷移的一般優(yōu)化方法,即訓(xùn)練線性前饋模型來代替風(fēng)格遷移過程中的矩陣計(jì)算,進(jìn)一步簡(jiǎn)化了前饋風(fēng)格化模型的生成流程,提高了生成速度。Shen 等人[50]提出一個(gè)新的元網(wǎng)絡(luò)來實(shí)現(xiàn)任意風(fēng)格遷移,相比于以往模型,該元網(wǎng)絡(luò)具有更小的模型尺寸,方便移植并且能在移動(dòng)端上運(yùn)行。Park 等人[51]發(fā)現(xiàn)之前的算法并沒有很好地平衡全局和局部的風(fēng)格模式,因此提出風(fēng)格注意力網(wǎng)絡(luò)(Style-Attentional Network,SANet),其可以根據(jù)內(nèi)容圖像的語義空間分布,靈活地將風(fēng)格特征匹配到內(nèi)容特征上。
可以看出,前饋風(fēng)格化模型的靈活度有了很大的提升,實(shí)現(xiàn)了任意風(fēng)格遷移,但其生成圖像質(zhì)量仍略遜于基于圖像迭代的慢速風(fēng)格遷移算法。
1.2.2 基于GAN網(wǎng)絡(luò)的風(fēng)格遷移方法
2014 年,GAN 被Goodfellow 等人[52]首次提出,該網(wǎng)絡(luò)由兩部分組成:生成器和鑒別器,模型結(jié)構(gòu)如圖4 所示。其訓(xùn)練過程可以視作生成器和鑒別器之間的博弈。前者致力于生成以假亂真的數(shù)據(jù),相應(yīng)地,后者致力于辨別出虛假數(shù)據(jù)。兩者在對(duì)抗中共同學(xué)習(xí)、進(jìn)步,使生成結(jié)果達(dá)到最好。
圖4 基于GAN的圖像風(fēng)格遷移基本框架圖Fig.4 Basic framework of image style transfer based on GAN
Goodfellow 等人[52]引入對(duì)抗損失函數(shù)來訓(xùn)練GAN網(wǎng)絡(luò),具體如下所示:
其中,x為真實(shí)圖像;z為輸入的噪音圖像;G(z)為通過生成器之后的生成圖像,D(x)為鑒別器給出的真實(shí)圖像x判別為真的概率,D(G(z))為鑒別器給出的生成圖像G(z)為真實(shí)圖像的概率。
Li和Wand[53]通過對(duì)抗性訓(xùn)練來訓(xùn)練基于馬爾可夫隨機(jī)場(chǎng)的前饋網(wǎng)絡(luò),得到了具有真實(shí)感的圖像。結(jié)果表明,他們的算法優(yōu)于Johnson 等人[20]的前饋生成模型算法,可以在復(fù)雜圖像中保留連貫的紋理。然而,Li 和Wand 等人的算法沒有考慮語義相關(guān)性,因此在非紋理樣式例如面部合成方面效果較差。
Mirza 等人[22]提出CGAN 來進(jìn)行圖像生成,該模型在原始GAN模型的基礎(chǔ)上為生成器和鑒別器都加入了額外信息y,來引導(dǎo)模型生成方向。但該監(jiān)督學(xué)習(xí)算法需要在預(yù)先處理過的成對(duì)數(shù)據(jù)集上進(jìn)行訓(xùn)練,然而很多情況下,并沒有這樣完美的成對(duì)數(shù)據(jù)集。因此,繼續(xù)深入研究基于無監(jiān)督學(xué)習(xí)的風(fēng)格遷移GAN。Zhu 等人[54]提出無需在成對(duì)數(shù)據(jù)集上進(jìn)行訓(xùn)練的CycleGAN,該網(wǎng)絡(luò)分別采用兩個(gè)生成器和兩個(gè)判別器。兩個(gè)生成器用于在兩個(gè)域之間互相轉(zhuǎn)換,兩個(gè)判別器用于分辨兩個(gè)域中圖片的真假。該模型不僅要求圖像可以從源域轉(zhuǎn)換到目標(biāo)域,同時(shí)也要求目標(biāo)域圖像可以轉(zhuǎn)換回源域,稱之為循環(huán)一致性損失,該損失具體如下:
其中,x和y分別為兩個(gè)圖像域;G(x)為x向y的映射;F(G(x))為生成的G(x)反向映射回x;G(F(y))同理。DiscoGAN[55]和DualGAN[56]在模型架構(gòu)和實(shí)驗(yàn)思路上與CycleGAN 相似。Liu 等人[57]設(shè)計(jì)出基于GAN 和VAE的UNIT 框架,通過構(gòu)建一個(gè)共享的潛在空間實(shí)現(xiàn)了無監(jiān)督圖像到圖像的轉(zhuǎn)換。以上生成對(duì)抗訓(xùn)練模型解決了CGAN 只能在成對(duì)數(shù)據(jù)集上訓(xùn)練的局限性。但是,它們一次只能學(xué)習(xí)兩個(gè)不同域之間的關(guān)系,難以處理多個(gè)域之間的轉(zhuǎn)換,隨后,Choi等人[23]提出SartGAN,該模型在多個(gè)跨域數(shù)據(jù)集上進(jìn)行訓(xùn)練,實(shí)現(xiàn)多領(lǐng)域轉(zhuǎn)換。
StarGAN 增加目標(biāo)領(lǐng)域標(biāo)簽c作為生成器的輸入,使生成器可以隨著目標(biāo)領(lǐng)域標(biāo)簽的變換產(chǎn)生不一樣的輸出,并訓(xùn)練鑒別器D來識(shí)別圖像真假,同時(shí)判斷其屬于哪個(gè)領(lǐng)域。在風(fēng)格遷移過程中,StarGAN只改變領(lǐng)域差異部分,具體實(shí)施如下所示。
該模型引入兩種類別損失:鑒別器D的損失和生成器G的損失。訓(xùn)練鑒別器D時(shí),使用輸入圖片在源域的監(jiān)督信號(hào)進(jìn)行訓(xùn)練;而訓(xùn)練生成器G的時(shí)候,使用生成圖片在目標(biāo)域的監(jiān)督信號(hào)進(jìn)行訓(xùn)練。鑒別器D的損失如下:
其中,x為輸入圖像,c′為源域標(biāo)簽信息,Dcls(c′|x)是由鑒別器D計(jì)算的在源域標(biāo)簽上的分布概率。生成器G的損失如下:
其中c為目標(biāo)域標(biāo)簽信息,G(x,c)為生成器生成圖片。Dcls(c|G(x,c))是由鑒別器D計(jì)算的在目標(biāo)域標(biāo)簽上的分布概率。
此外,StartGAN 模型引入重構(gòu)損失函數(shù)Lrec,即CycleGAN[54]中的循環(huán)一致性損失函數(shù),來讓生成圖像在域無關(guān)的部分與輸入圖像保持一致;以及對(duì)抗性損失函數(shù)Ladv,使得生成圖片與真實(shí)圖像難以區(qū)分。
綜上,StarGAN 中鑒別器D和生成器G的總損失函數(shù)分別為:
其中,λcls、λrec分別是類別損失函數(shù)和重構(gòu)損失函數(shù)的權(quán)重。
之后,Chen等人[58]提出CartoonGAN,用于將現(xiàn)實(shí)圖片轉(zhuǎn)化為漫畫風(fēng)格。該模型在CycleGAN 的基礎(chǔ)上增加了兩個(gè)基于卡通圖像特征設(shè)計(jì)的損失值,分別是邊緣對(duì)抗損失和內(nèi)容損失,使得生成圖像具有漫畫圖像的清晰邊緣以及內(nèi)容特征。P??ko 等人[59]在CartoonGAN 的基礎(chǔ)上,通過提取視頻關(guān)鍵幀的方法,實(shí)現(xiàn)了將視頻轉(zhuǎn)換為動(dòng)漫風(fēng)格;Li等人[60]使用注意力對(duì)抗網(wǎng)絡(luò)(Attentive Adversarial Network,AAN)將關(guān)注點(diǎn)放在面部區(qū)域的重要部分,忽略細(xì)節(jié)信息,實(shí)現(xiàn)了對(duì)自拍進(jìn)行卡通化,即SCGAN(Selfie Cartoonization Generative Adversarial Network)。Wang 等人[61]在CartoonGAN 的基礎(chǔ)上進(jìn)行改進(jìn),提出了一種新型的輕量級(jí)生成對(duì)抗網(wǎng)絡(luò),稱為AnimeGAN,該模型實(shí)現(xiàn)了保持原圖色彩,只對(duì)紋理進(jìn)行動(dòng)漫化。該過程通過引入三種新穎的損失函數(shù)實(shí)現(xiàn),分別是灰度風(fēng)格損失Lgra、顏色重建損失Lcol和灰度對(duì)抗損失Ladv。其中灰度風(fēng)格損失Lgra使得生成圖像具有與動(dòng)漫圖像一樣的紋理和線條;顏色重建損失Lcol使得生成圖像具有原始圖片的色彩;灰度對(duì)抗損失Ladv保證了生成圖像為彩色圖像。圖5 展示了AnimeGAN 生成的宮崎駿風(fēng)格的結(jié)果圖。之后,Zhao 等人[62]提出基于對(duì)抗一致性的不成對(duì)圖像轉(zhuǎn)換網(wǎng)絡(luò),即ACL-GAN(Adversarial Consistency Loss-GAN)。相比于CycleGAN,ACL-GAN 更加鼓勵(lì)生成圖像保留源圖像的重要特征,而不是要求生成圖像可以完全翻譯回源域,這使得兩個(gè)域的圖像可以關(guān)注特征層面的相似性而不是像素層面的相似性,因此ACL-GAN 靈活度更高,可以實(shí)現(xiàn)更多功能。
圖5 AnimeGAN風(fēng)格遷移效果圖Fig.5 Generated results of AnimeGAN style transfer
但以上模型僅對(duì)圖像風(fēng)格進(jìn)行變換而忽略了真實(shí)圖像與動(dòng)漫圖像之間的幾何差距。因此Cao 等人[63]提出CariGAN,對(duì)人臉照片同時(shí)進(jìn)行風(fēng)格遷移和幾何遷移,使得生成的圖像不僅具有漫畫圖像的紋理風(fēng)格,也具有其夸張的幾何外觀。其幾何形變的核心在于提出了一個(gè)新的損失函數(shù),即特征損失,其通過計(jì)算輸入圖像面部坐標(biāo)與人臉平均面部坐標(biāo)的差距,找出其最顯著的特征進(jìn)行夸大來實(shí)現(xiàn)面部幾何形變,具體如下:
表1 從有無監(jiān)督、適用場(chǎng)景、是否可形變以及各自優(yōu)缺點(diǎn)這幾個(gè)方面來比較了幾種GAN 網(wǎng)絡(luò)。其中,只有CGAN[22]為有監(jiān)督圖像轉(zhuǎn)換網(wǎng)絡(luò),其他GAN 均可實(shí)現(xiàn)無監(jiān)督的圖像到圖像轉(zhuǎn)換。CycleGAN[54]適用范圍較廣,包括人臉轉(zhuǎn)換以及場(chǎng)景風(fēng)格轉(zhuǎn)換等都可以使用,因此可用來與其他GAN 進(jìn)行比較;UNIT[57]適用于真實(shí)圖像間的相互轉(zhuǎn)換;StarGAN[23]、CariGAN[63]以 及ACLGAN[62]適用于面部處理,其中CariGAN[63]可以實(shí)現(xiàn)真實(shí)人臉到漫畫人臉的夸張形變;CartoonGAN[58]和Anime-GAN[61]適用于動(dòng)漫場(chǎng)景化。表1 最詳細(xì)地列出了各個(gè)算法的優(yōu)缺點(diǎn)。
表1 各類GAN模型優(yōu)缺點(diǎn)比較Table 1 Comparison of advantages and disadvantages of GAN algorithms
GAN 的使用為風(fēng)格遷移領(lǐng)域的提供了新思路,其不僅提高了風(fēng)格遷移速度,也保證了生成圖像質(zhì)量,同時(shí),研究者針對(duì)各個(gè)場(chǎng)景設(shè)計(jì)出許多滿足特殊需求的GAN,提高了模型的實(shí)用性,促進(jìn)了風(fēng)格遷移技術(shù)投入實(shí)際商業(yè)應(yīng)用。
近年來,神經(jīng)風(fēng)格遷移技術(shù)在生成圖像質(zhì)量和生成圖像速度方面都有了很大的提升,同時(shí)其基于深度神經(jīng)網(wǎng)絡(luò)的智能化標(biāo)準(zhǔn)化的作業(yè)流程也優(yōu)于復(fù)雜繁瑣的人工制作,因此越來越多的商業(yè)應(yīng)用中開始出現(xiàn)風(fēng)格遷移技術(shù)的影子,例如數(shù)字化模擬、視頻制作以及圖像處理軟件等。下面詳細(xì)介紹神經(jīng)風(fēng)格遷移技術(shù)在這三個(gè)方面的商業(yè)應(yīng)用:
(1)數(shù)字化模擬。風(fēng)格遷移可用于水墨畫、油畫、中國(guó)傳統(tǒng)畫作等藝術(shù)畫作的重建。曹毅[65]通過分析筆和宣紙的特點(diǎn),利用神經(jīng)網(wǎng)絡(luò)模擬了中國(guó)傳統(tǒng)水墨畫的繪制過程,能夠自動(dòng)生成水墨風(fēng)格的輸出;王濤等人[66]對(duì)圖像進(jìn)行預(yù)處理,使其擁有手繪油畫的質(zhì)感,然后經(jīng)過P-M 和Weickert[67-68]的加權(quán)模型讓生成畫作很好地模擬了梵高油畫風(fēng)格;Lin 等人[69]提出了一種多尺度的深度神經(jīng)網(wǎng)絡(luò)來將素描轉(zhuǎn)化為中國(guó)古典畫;Li等人[70]通過引入新型濾波器和三個(gè)完全可微的損失項(xiàng)來模擬中國(guó)古典畫作的風(fēng)格特征,繪制出具有傳統(tǒng)中國(guó)風(fēng)的圖像。這些都是以技術(shù)為載體,傳承和發(fā)揚(yáng)中國(guó)文化的代表。在技術(shù)的幫助下,人們可以輕松繪制自己想要的圖像風(fēng)格,而不需要具備專業(yè)的技能。
(2)影視制作。在影視娛樂行業(yè)中,不管是電影動(dòng)漫還是游戲,都需要用到大量的人工來手繪所需要的視頻幀,這不僅需要專業(yè)人才,也十分耗費(fèi)時(shí)間精力,因此,如若能使用風(fēng)格遷移來代替人工手繪,提高效率,會(huì)使制作成本極大地減少。例如,Tang等人[71]提出局部紋理修補(bǔ)技術(shù)來改善視頻中紋理層的扭曲缺失現(xiàn)象;Ruder等人[72]通過使用光流引導(dǎo)讓視頻風(fēng)格化后仍然具有時(shí)間連貫性;但Ruder 等人的方法耗時(shí)久,因此Huang 等人[73]和Gupta等人[74]受Ruder等人[72]的啟發(fā),分別提出一種基于前饋網(wǎng)絡(luò)的實(shí)時(shí)視頻風(fēng)格遷移模型,避免了動(dòng)態(tài)計(jì)算光流,在保證視頻具有時(shí)間連貫性的同時(shí),極大地提高了視頻生成效率。但以上方法嚴(yán)重依賴于訓(xùn)練集中對(duì)于光流的手工注釋,并且對(duì)于遮擋以及快速運(yùn)動(dòng)等十分敏感,容易導(dǎo)致偽像,因此,Xu 等人[75]提出基于自監(jiān)督的時(shí)空卷積神經(jīng)網(wǎng)絡(luò),可以在未標(biāo)記的數(shù)據(jù)集中訓(xùn)練,并實(shí)時(shí)地生成連貫的風(fēng)格化視頻??梢钥闯觯L(fēng)格遷移在影視領(lǐng)域的應(yīng)用是十分廣泛的。
(3)圖像處理軟件?;谏疃壬窠?jīng)網(wǎng)絡(luò)的風(fēng)格遷移算法讓圖像處理軟件不再局限于簡(jiǎn)單地為圖片加一層濾鏡,而是利用神經(jīng)網(wǎng)絡(luò)來學(xué)習(xí)藝術(shù)作品的風(fēng)格、紋理等細(xì)節(jié),讓一張普通的照片也擁有高級(jí)的藝術(shù)感。例如Prisma[76]、Deepart[77]等軟件可以在幾秒之內(nèi)將用戶拍攝的普通照片轉(zhuǎn)化為大師風(fēng)格的畫作,這在同質(zhì)化日益嚴(yán)重的美圖應(yīng)用中,樹立了新的審美趨向;國(guó)內(nèi)也緊跟熱點(diǎn),研發(fā)出包含中國(guó)傳統(tǒng)畫風(fēng)的風(fēng)格遷移軟件——造畫,提供超過400多種風(fēng)格種類,涵蓋油畫、版畫、插畫、素描以及獨(dú)具特色的水墨中國(guó)風(fēng)等藝術(shù)濾鏡,為照片添墨加彩,制造一種傳統(tǒng)東方美感,傳承和發(fā)揚(yáng)了中國(guó)文化。
總而言之,風(fēng)格遷移技術(shù)具有良好的商業(yè)前景,可應(yīng)用于各行各業(yè),因此需要對(duì)現(xiàn)階段存在的問題進(jìn)行繼續(xù)改進(jìn),加快其投入商業(yè)應(yīng)用。
風(fēng)格遷移模型評(píng)估通常采用兩種評(píng)估方法,即定性評(píng)估和定量評(píng)估。定性評(píng)估主要用于評(píng)價(jià)生成圖像質(zhì)量,由于缺乏系統(tǒng)性的風(fēng)格遷移圖像質(zhì)量評(píng)價(jià)體系,因此采用個(gè)人參與的方式來判斷生成圖像是否符合人眼欣賞水平。其評(píng)價(jià)結(jié)果與許多因素有關(guān),如評(píng)價(jià)者的年齡、職業(yè)、文化教育程度、成長(zhǎng)環(huán)境、觀察條件、情緒等等。定量評(píng)估主要用于評(píng)估模型生成速度、損失變化等,可以通過精確的數(shù)字指標(biāo)表示,十分客觀。采用定性評(píng)估和定量評(píng)估相結(jié)合的方式可以更全面地評(píng)價(jià)模型好壞。表2從所采用訓(xùn)練集、風(fēng)格化速度、訓(xùn)練時(shí)間、風(fēng)格類型是否多樣以及各自優(yōu)缺點(diǎn)等方面來比較各個(gè)風(fēng)格遷移算法。
表2 各算法優(yōu)缺點(diǎn)比較Table 2 Comparison of advantages and disadvantages of each algorithms
在圖像風(fēng)格化速度方面,早期的非真實(shí)感渲染和傳統(tǒng)非參數(shù)紋理合成速度較慢?;谀P偷目焖亠L(fēng)格遷移算法遠(yuǎn)快于Gatys 等人[15]的算法。其中,Chen和Schmidt[45]以及Li等人[48]的算法慢于其他快速風(fēng)格遷移算法,難以實(shí)現(xiàn)實(shí)時(shí)風(fēng)格遷移。同時(shí),任意風(fēng)格遷移算法轉(zhuǎn)換速度普遍低于單模型單風(fēng)格和單模型多風(fēng)格算法。
在訓(xùn)練時(shí)間方面,主要對(duì)基于模型迭代的快速風(fēng)格化算法進(jìn)行比較。Jing等人[78]的實(shí)驗(yàn)結(jié)果表明,單模型單風(fēng)格算法訓(xùn)練時(shí)間差距不大,都較快;單風(fēng)格多模型算法中,Li 等人[43]的算法訓(xùn)練時(shí)間較長(zhǎng);任意風(fēng)格遷移算法訓(xùn)練時(shí)間遠(yuǎn)長(zhǎng)于單模型單風(fēng)格和單模型多風(fēng)格算法。
在圖像生成質(zhì)量方面,以Gatys 等人[15]的算法作為評(píng)價(jià)標(biāo)準(zhǔn),可以看出Meier[7]的非真實(shí)感渲染算法和Efros等人[10]的傳統(tǒng)非參數(shù)算法相比于Gatys等人[15]基于圖像迭代的神經(jīng)風(fēng)格遷移算法不太理想;而基于模型迭代的快速風(fēng)格化算法相比于基于圖像迭代的算法,雖然在速度方面有了巨大的提升,但在生成圖像質(zhì)量上仍略差于Gatys等人[15]的算法。CycleGAN網(wǎng)絡(luò)[23]生成圖像質(zhì)量略優(yōu)于Gatys 的算法,但其無法處理圖像形狀改變的情況,CartoonGAN 則是由于加入了漫畫圖像特有的特征損失,因此在生成漫畫風(fēng)格圖像方面效果好于Gatys的算法。其他詳見表2分析[79-85]。
以上評(píng)估指標(biāo)為模型的選擇提供了參考。神經(jīng)風(fēng)格遷移網(wǎng)絡(luò)未來可在以上指標(biāo)上繼續(xù)優(yōu)化,提升模型綜合表現(xiàn),使其能盡早地投入大規(guī)模商業(yè)應(yīng)用。
雖然現(xiàn)階段神經(jīng)風(fēng)格遷移技術(shù)已有了一定的研究成果,但在某些方面的研究還不夠深入,仍然存在一些尚未解決的問題,以下對(duì)這些問題進(jìn)行了描述并提出一些針對(duì)性的改進(jìn)方法。
現(xiàn)階段風(fēng)格遷移模型的生成圖像質(zhì)量缺少一套標(biāo)準(zhǔn)的評(píng)估系統(tǒng),多是由人類參與完成,受主觀影響較大,不夠科學(xué)與規(guī)范。因此規(guī)范評(píng)價(jià)流程與指標(biāo)是一個(gè)重要的后續(xù)研究方向,可以通過制定一套固定的評(píng)價(jià)體系來實(shí)現(xiàn)。首先,指定一個(gè)算法作為比較的標(biāo)準(zhǔn),同時(shí)制定一套用于比較評(píng)估的標(biāo)準(zhǔn)圖像數(shù)據(jù)集。然后,在選取質(zhì)量評(píng)估者時(shí),要盡量涵蓋多類型的普通人群以及相關(guān)藝術(shù)家,并制定一個(gè)固定的評(píng)價(jià)表格,要求評(píng)估者根據(jù)表格來進(jìn)行多方面的評(píng)價(jià)。
現(xiàn)階段的語義分割大多應(yīng)用于慢速風(fēng)格遷移模型,在快速風(fēng)格遷移模型中的應(yīng)用較少。因此在快速風(fēng)格遷移模型的基礎(chǔ)上實(shí)現(xiàn)語義風(fēng)格遷移,提高快速風(fēng)格遷移模型的生成質(zhì)量,減少風(fēng)格溢出問題是下一個(gè)重要的研究方向??梢允褂靡粋€(gè)前饋風(fēng)格化網(wǎng)絡(luò)來進(jìn)行風(fēng)格遷移,然后構(gòu)建一個(gè)圖像語義風(fēng)格網(wǎng)絡(luò)來分割輸入的內(nèi)容圖像,確定需要進(jìn)行風(fēng)格化的區(qū)域,最后再對(duì)各個(gè)區(qū)域進(jìn)行圖像融合并平滑融合邊緣。
現(xiàn)有的神經(jīng)風(fēng)格遷移算法會(huì)同時(shí)對(duì)顏色、紋理等進(jìn)行遷移。但是,有時(shí)人們希望保留內(nèi)容圖像色彩,僅對(duì)紋理進(jìn)行風(fēng)格化處理。因此在保持圖像色彩不變的前提下只對(duì)紋理進(jìn)行遷移,提高模型生成圖像的可選擇度是未來的一個(gè)發(fā)展趨勢(shì)。使用灰度圖像或許可以實(shí)現(xiàn)單獨(dú)轉(zhuǎn)移紋理的功能,首先將內(nèi)容圖像與風(fēng)格圖像轉(zhuǎn)為灰度圖,僅將其紋理特征遷移到內(nèi)容圖像上,然后采用顏色遷移算法,以內(nèi)容圖像為參考來對(duì)風(fēng)格化后的圖像進(jìn)行顏色重構(gòu),這樣就可以使得風(fēng)格化圖像既具有風(fēng)格圖像的紋理特征,同時(shí)保持了內(nèi)容圖像的原有色彩。
為了使得圖像效果更好,更適用于各領(lǐng)域的特殊需求,未來可以繼續(xù)深入研究在風(fēng)格遷移過程中增加一些額外處理。Zhang等人[86]引入圖像顏色遷移來實(shí)現(xiàn)風(fēng)格化圖像的顏色控制;Luan等人[87]在風(fēng)格遷移中使用圖像融合來使前后景圖像更加和諧;Zhang 等人[88]引入圖像分割來進(jìn)行多模態(tài)風(fēng)格遷移,即對(duì)分割后的模塊分別采用不同風(fēng)格區(qū)域作為參考來進(jìn)行轉(zhuǎn)移。在圖像風(fēng)格遷移中引入以上圖像處理方法對(duì)于風(fēng)格遷移商業(yè)化有著重要的推動(dòng)作用。
現(xiàn)階段大部分風(fēng)格遷移只是針對(duì)圖像的紋理,顏色等進(jìn)行改變,而忽略了其形狀的影響。但是在特定場(chǎng)景下,人們希望生成圖像形狀向目標(biāo)圖像形狀靠近,例如將真實(shí)人臉轉(zhuǎn)化為動(dòng)漫人臉時(shí),其不僅是風(fēng)格上的轉(zhuǎn)變,在外形輪廓上也需要像動(dòng)漫人物一樣夸張。因此,將圖像幾何變換與圖像風(fēng)格遷移相結(jié)合是推動(dòng)神經(jīng)風(fēng)格遷移模型進(jìn)一步發(fā)展的重要途徑??梢钥紤]訓(xùn)練一個(gè)形變網(wǎng)絡(luò),將其與風(fēng)格遷移網(wǎng)絡(luò)相結(jié)合,使輸入圖像在風(fēng)格和形狀方面都接近于目標(biāo)圖像,適用于藝術(shù)創(chuàng)作領(lǐng)域,如漫畫制作、電影制作等。
綜上,完善評(píng)估體系、提高模型生成速度以及質(zhì)量是神經(jīng)風(fēng)格遷移領(lǐng)域的未來研究方向,同時(shí),提高模型的靈活性和多樣性,使得神經(jīng)風(fēng)格遷移技術(shù)滿足各種商業(yè)需求是未來的發(fā)展趨勢(shì)。
在過去的幾年中,隨著人們對(duì)圖像藝術(shù)化需求漸增,神經(jīng)風(fēng)格遷移不管是在學(xué)術(shù)研究還是商業(yè)應(yīng)用領(lǐng)域都有著飛速的發(fā)展。本文首先對(duì)基于圖像迭代和基于生成模型迭代的風(fēng)格遷移方法進(jìn)行了匯總;然后對(duì)各個(gè)代表性網(wǎng)絡(luò)進(jìn)行了詳細(xì)的講解,包括其工作機(jī)理、目標(biāo)函數(shù)、改進(jìn)方式和模型結(jié)構(gòu)等方面;并介紹了神經(jīng)風(fēng)格遷移在商業(yè)上的應(yīng)用,展示了其研究潛力;其次對(duì)各類風(fēng)格遷移模型進(jìn)行了評(píng)價(jià),指出其優(yōu)缺點(diǎn);最后討論了現(xiàn)階段神經(jīng)風(fēng)格遷移網(wǎng)絡(luò)中存在的問題以及改進(jìn)策略。
總體而言,基于深度學(xué)習(xí)的圖像風(fēng)格遷移不僅促進(jìn)了計(jì)算機(jī)圖像學(xué)的發(fā)展,也真正地推動(dòng)了藝術(shù)文化的傳播和普及,在商業(yè)上也有良好的應(yīng)用前景,應(yīng)繼續(xù)對(duì)其進(jìn)行深入探索,進(jìn)一步優(yōu)化神經(jīng)風(fēng)格遷移模型綜合指標(biāo),在保證生成質(zhì)量的同時(shí),提升其生成速度以及泛化程度。