劉洪麟,帥仁俊,陶 靜,張秋艷
1(南京工業(yè)大學(xué) 計算機科學(xué)與技術(shù)學(xué)院,南京 211816) 2(南京工業(yè)大學(xué) 經(jīng)濟與管理學(xué)院,南京 211816)
圖像風(fēng)格遷移是一種使用卷積神經(jīng)網(wǎng)絡(luò)將一張圖片的語義內(nèi)容與不同風(fēng)格的圖片融合起來的技術(shù)[1].圖像風(fēng)格遷移已經(jīng)在影視和游戲領(lǐng)域有了較為廣泛的應(yīng)用,比如Prisma相機、電影特效和游戲場景設(shè)計.電影《Come swim》中的情節(jié)是一半現(xiàn)實和一半夢境,夢境的畫面就是經(jīng)過該技術(shù)處理后得到,這種方法得到的渲染方式顯然比直接運用電腦繪制具有更高的性價比.就此制片方還寫了一篇題為《運用神經(jīng)風(fēng)格轉(zhuǎn)移實現(xiàn)印象派風(fēng)格在電影“Come Swim”中的應(yīng)用》的論文.該技術(shù)目前使用較多的損失函數(shù)有L1、L2和Gram損失,前兩者是逐像素損失函數(shù),后者是全局損失函數(shù).在圖像風(fēng)格化任務(wù)中,這些損失函數(shù)的使用會出現(xiàn)很多問題,其中主要出現(xiàn)的問題是圖像風(fēng)格化不徹底和風(fēng)格化區(qū)域選擇錯誤.
針對上述問題,本文提出了一種最強引力損失函數(shù),使用該損失函數(shù)替換風(fēng)格化技術(shù)中的所有損失函數(shù).替換后生成圖片的質(zhì)量有較為明顯的提升,為上述問題提供了較好的解決方案.
目前,有很多著名的學(xué)者在圖像風(fēng)格遷移方面進行研究.基于深度學(xué)習(xí)的圖像風(fēng)格化是源于Gatys等人[2]的研究工作.他們運用卷積神經(jīng)網(wǎng)絡(luò)取得了很好的紋理合成效果.同時,他們又考慮如何運用卷積神經(jīng)網(wǎng)絡(luò)將一張圖像的紋理遷移到另一張圖片上.于是,他們提出了一種藝術(shù)風(fēng)格的神經(jīng)網(wǎng)絡(luò)算法[3].Risser[4]等人在Gatys的基礎(chǔ)上添加梯度直方圖損失進行約束,紋理合成和風(fēng)格遷移的效果均優(yōu)于Gatys的算法.Li等人[5]使用MRF(馬爾科夫隨機場)損失函數(shù)替換Gram損失函數(shù),利用MRF的空間布局限制,提高生成圖像的質(zhì)量.Johnson等人[6]使用感知損失訓(xùn)練一個前置轉(zhuǎn)換網(wǎng)絡(luò),圖片風(fēng)格化的速度提升了3個數(shù)量級.但網(wǎng)絡(luò)每次只能轉(zhuǎn)換一種風(fēng)格,如果要切換風(fēng)格,必須重新訓(xùn)練轉(zhuǎn)換網(wǎng)絡(luò).
圖像風(fēng)格遷移即使一張普通的圖片具有另一張圖片的風(fēng)格,其基本原理為:假設(shè)給定了一張內(nèi)容圖片c和一張風(fēng)格圖片s,生成一張圖片g.g圖片在內(nèi)容上與c相似,風(fēng)格上與s相似.其中使用了VGG-19網(wǎng)絡(luò)提取圖片的內(nèi)容與風(fēng)格,該技術(shù)的原理如圖1所示.
圖1 風(fēng)格遷移原理圖Fig.1 Schematic diagram of style migration
卷積神經(jīng)網(wǎng)絡(luò)每層的輸出為若干個特征圖(Feature map),本文用al表示l層卷積神經(jīng)網(wǎng)絡(luò)的輸出.根據(jù)Gatys等人的研究,使用Gram矩陣可以提取圖片的紋理特征,即風(fēng)格[7].生成圖g與圖片c與的內(nèi)容損失為:
(1)
G(al)為Gram計算,生成圖g與圖片s的風(fēng)格損失為:
(2)
則總損失函數(shù)為:
Ltotal=Lcontent+Lgram
(3)
基于迭代優(yōu)化的圖像風(fēng)格遷移方法步驟如下:
Step1.隨機初始化g,即隨機選取像素的白噪聲圖作為VGG-19的輸入;
Step2.求出整體損失函數(shù)Ltotal;
Step3.使用梯度下降法優(yōu)化方法最小化總體損失函數(shù)Ltotal的值;
Step4.如果Ltotal收斂或小于指定閾值,則停止迭代;否則轉(zhuǎn)step2.
特征圖al為VGG-19的第l層的輸出,其形式為[nH,nW,nC],nH、nW和nC分別為特征圖的高、寬和通道數(shù).令i=nH,j=nW,k=nC.根據(jù)公式(2),使用不同通道的特征進行Gram矩陣計算可以提取圖片的風(fēng)格.本文高維度風(fēng)格特征點選取
圖2 高維度特征點選取Fig.2 High-dimensional feature points selection
方法如圖2黑色立方體部分所示,(i,j)位置特征點表達形式為(aij1,aij2,aij3,…,aijk),其中al共有i*j個高維度風(fēng)格特征點.同理高維度內(nèi)容特征點如灰色立方體所示,al中有j*k個高維度內(nèi)容特征點,其表達形式為(a1jk,a2jk,a3jk,…,aijk).i、j和k均為整數(shù).
最強引力方法是將圖片與目標圖片看作是一些高維度特征點的集合,如果兩張圖片相似,則對應(yīng)高維度特征點也互相吸引.因此,本文提出了引力的概念用來衡量這些高維度點的吸引力程度,示意圖見圖3.圖3中白色圓圈表示生成圖x的高維度特征點,黑色圓圈表示目標圖y的高維度特征點,生成圖x中的所有特征點都會通過黑色箭頭在目標圖y中匹配到與自身引力最強的特征點.圖3(a)中y的所有特征點都被x匹配到,可以稱x與y基本相同.圖3(b)中y的大部分特征點被x匹配到,可以稱x與y相似.圖3(c)中y的極少數(shù)特征點被x匹配到,則稱x與y不相似.
圖3 基于最強引力的圖片相似度衡量示意圖Fig.3 Image similarity measurement diagram based on the maximum gravitation
本文提出的最強引力方法主要是受到牛頓萬有引力的啟發(fā):宇宙中每個質(zhì)點都以一種力吸引其他各個質(zhì)點,這種力與各質(zhì)點的質(zhì)量的乘積成正比,與它們之間距離的平方成反比.圖片中高維度特征點不同于真實物體,不存在質(zhì)量這一指標,所以本文將生成圖x與目標圖y中高維度特征點的“質(zhì)量”的乘積設(shè)置為常數(shù)1,高維度特征點之間的“距離”rij可以如下表示:
(4)
其中ε為修正參數(shù),值為1e-5.dij為xi與yj的余弦距離,表達式為:
(5)
(6)
xi與yj之間的引力Gij表達式為:
(7)
將引力Gij歸一化可得:
(8)
圖片x和目標圖y都是高維度特征點的集合,可以將它們表示為:X={xi}和Y={yj}.令|X|=|Y|=N(若|X|≠|(zhì)Y|,從較大的圖片中抽取N個高維特征點),則基于最強引力的圖片相似度衡量公式可以表示為:
(9)
根據(jù)本文提出的最強引力原理,則最強引力損失函數(shù)表達式如下所示.其中al(x)和al(y)表示VGG19網(wǎng)絡(luò)的第l層輸出的特征圖.
LMG(x,y,l)=-log(MG(al(x),al(y)))
(10)
本文給出的最強引力損失函數(shù)不僅適用于內(nèi)容損失,同時也是用于風(fēng)格損失.將原風(fēng)格遷移技術(shù)中總體損失函數(shù)改進為:
Ltotal=LMG(g,c,lC)+LMG(g,s,ls)
(11)
LMG(g,c,lC)和LMG(g,s,ls)分別表示基于最強引力的內(nèi)容損失函數(shù)和風(fēng)格損失函數(shù),g為生成圖,c為內(nèi)容圖片,s為風(fēng)格圖片.其中l(wèi)C=conv4_2,ls={conv3_2,conv4_2}[8].
基于最強引力的圖像風(fēng)格遷移方法步驟如下:
1.隨機初始化g,即隨機選取像素的白噪聲圖作為VGG-19的輸入;
2.在VGG-19的conv4_2層提取內(nèi)容圖片c的高維度內(nèi)容特征點,并計算生成圖g與內(nèi)容圖c的最強引力內(nèi)容損失;
3.在VGG-19的conv3_2和conv4_2層提取風(fēng)格圖片s的高維度風(fēng)格特征點,并計算生成圖g與風(fēng)格圖s的最強引力風(fēng)格損失;
4.求出最強引力整體損失函數(shù)Ltotal;
5.使用梯度下降法優(yōu)化方法最小化總體損失函數(shù)Ltotal的值;
6.如果Ltotal收斂或小于指定閾值,則停止迭代;否則轉(zhuǎn)2.
本文的實驗環(huán)境是Python3.5.5,處理器為i7-6800K,內(nèi)存32G,運行Linux操作系統(tǒng),同時配備GTX1080Ti顯卡,研究方案主要基于開源的機器學(xué)習(xí)框架TensorFlow.
為了測試最強引力損失函數(shù)在處理空間非對齊圖像數(shù)據(jù)任務(wù)中的魯棒性,本文使用一張具有高斯噪聲的圖片作為輸入,一張空間非對齊的無噪聲原圖作為目標圖片,運用迭代優(yōu)化進行圖片降噪處理.結(jié)果如圖4所示.
圖4 基于最強引力損失函數(shù)的空間非對齊圖片降噪結(jié)果對比圖Fig.4 Comparison of noise reduction results of spatially non-aligned pictures based on the maximum gravitation loss function
由于L1是逐像素損失函數(shù),用L1對空間非對齊圖像的處理效果很差,所以得到了一張很模糊的圖片.本文提出的最強引力損失函數(shù)是基于語義相似的的區(qū)域進行迭代優(yōu)化,無論目標圖片如何變換,該方法的迭代優(yōu)化策略永遠是麋鹿→麋鹿,草→草,樹→樹.
基于卷積神經(jīng)網(wǎng)絡(luò)圖像增強技術(shù)的訓(xùn)練集是空間對齊的圖像數(shù)據(jù),但這種低像素→高像素空間對齊的數(shù)據(jù)集通常很難獲取.使用本文提出的方法可以降低其對數(shù)據(jù)集的要求,即使用語義內(nèi)容相似的低像素→高像素,不必要求圖片嚴格的逐像素對齊.實驗結(jié)果如圖5所示.
圖5 基于最強引力損失函數(shù)的圖像增強對比圖Fig.5 Image enhancement comparison based on the maximum gravitation loss function
該部分的實驗內(nèi)容是基于Ignatov[9]的CNN圖像增強架構(gòu),數(shù)據(jù)集來自DPED(DSLR Photo Enhancement Dataset).圖5中(b)馬爾科夫隨機場損失和(c)最強引力損失使用的是空間非對齊圖像數(shù)據(jù),(d)使用的是空間對齊圖像數(shù)據(jù).因為(d)原損失函數(shù)中包含逐像素損失,如果使用空間非對齊數(shù)據(jù)訓(xùn)練前置網(wǎng)絡(luò),會造成總損失函數(shù)無法收斂的問題[10].本文使用增強圖像和目標圖片計算其PSNR(峰值信噪比)及SSIM(結(jié)構(gòu)相似性)的平均值,其平均值如表1所示.
由表1可以看出,本文的提出的LMG明顯優(yōu)于LMRF,并且其PNSR和SSIM的值很接近使用空間對齊數(shù)據(jù)訓(xùn)練的結(jié)果.因此在空間對齊圖像數(shù)據(jù)無法獲取的情況下,本文的方法提供了一個很好的解決方案.
表1 增強圖像的PNSR和SSIM平均值
Table 1 Average PNSR/SSIM results on enhanced image
損失函數(shù)PNSRSSIMLMRF+非對齊圖像數(shù)據(jù) 17.860.8805LMG+非對齊圖像數(shù)據(jù) 19.020.8916 原損失函數(shù)+對齊圖像數(shù)據(jù)19.970.9181
上述兩個實驗證明了最強引力損失函數(shù)在處理空間非對齊圖像數(shù)據(jù)任務(wù)中具有很好的魯棒性,最后將該損失函數(shù)應(yīng)用于圖像風(fēng)格遷移技術(shù),結(jié)果如圖6所示.
圖6 圖像風(fēng)格遷移對比圖Fig.6 Image style transfer comparison
Gatys等人的損失函數(shù)為Lcontent+Lgram,Li等人的主要損失函數(shù)為Lcontent+LMRF,本文使用的是最強引力損失函數(shù).圖6第一行和第二行圖片風(fēng)格化結(jié)果中,Gatys和Li等人的方法出現(xiàn)了風(fēng)格化不徹底的問題.比如第二行的上海和拉斯維加斯風(fēng)格化結(jié)果中,Gatys和Li等人結(jié)果中的大廈都達到了風(fēng)格化的要求,但是天空明顯出現(xiàn)了風(fēng)格化不徹底的問題.第三行和第四行風(fēng)格化結(jié)果中Gatys和Li的方法出現(xiàn)了風(fēng)格化區(qū)域錯誤的問題.比如麋鹿和梅花鹿風(fēng)格化中,Gatys和Li結(jié)果里的部分草的顏色變?yōu)槊坊股砩系纳?風(fēng)格化區(qū)域出現(xiàn)了偏差.Gatys和Li的方法在大部分情況下可以滿足風(fēng)格化要求,針對上述問題本文特意選取具有干擾性的圖片進行風(fēng)格化.從圖中可以看出,本文的方法一直表現(xiàn)良好,并沒有出現(xiàn)上述兩個問題,同時也說明了本文為圖像風(fēng)格化效果不理想問題提供了一個較好的解決方案.
針對圖像風(fēng)格遷移技術(shù)中圖像風(fēng)格化不徹底和風(fēng)格化區(qū)域選擇錯誤的兩個問題,本文提出了一種基于語義學(xué)的最強引力的解決方法.實驗結(jié)果證明,該方法能夠很好的處理上述兩個問題,風(fēng)格化圖片質(zhì)量有較明顯提升.同時本文對空間非對齊圖像降噪和圖像增強實驗證明,最強引力方法在處理空間非對齊圖像具有很好的魯棒性.本文的方法是通過特征點與特征點之間的迭代優(yōu)化來最小化損失函數(shù),所以對圖像中物體空間位置限制不足[11].下一步的工作準備將本文的方法與空間偏移方法相結(jié)合,以此實現(xiàn)更復(fù)雜圖像的風(fēng)格遷移[12].