李 慧,萬曉霞
武漢大學(xué) 印刷與包裝系,武漢430079
圖像風(fēng)格遷移技術(shù)的使用在日常生活中已經(jīng)越來越廣泛,通常是將藝術(shù)家的作品風(fēng)格遷移到普通照片上,使遷移后的照片具有藝術(shù)感;或者是將兩張真實照片進行風(fēng)格遷移,使白天變成黑夜,陰天變成晴天等。針對這些想法,許多學(xué)者提出了一些圖像風(fēng)格遷移的算法。然而,好多方法得到的圖像出現(xiàn)內(nèi)容扭曲、邊緣內(nèi)容細節(jié)丟失的問題。
Gatys等人[1-3]提出Neural Style的方法,模擬人類視覺的處理方式,經(jīng)過訓(xùn)練多層卷積神經(jīng)網(wǎng)絡(luò)(CNN),使計算機辨別并學(xué)會藝術(shù)風(fēng)格,從而用到普通照片上,使生成的圖像極具藝術(shù)感,而這些圖像有內(nèi)容扭曲、細節(jié)丟失的現(xiàn)象。隨后,Gatys等人[4]又對自己的工作進行了改進,加強了風(fēng)格遷移中對細節(jié)的控制,可以控制風(fēng)格遷移程度,而對圖像內(nèi)容沒有控制。Johnson等人[5]提出Fast Neural Style 的方法訓(xùn)練好一個風(fēng)格模型之后,GPU通常只需要運行幾秒便生成對應(yīng)的風(fēng)格遷移結(jié)果,提高了風(fēng)格遷移的運行速度,而生成圖像效果沒有改進。Luan 等人[6]在Gatys 的工作基礎(chǔ)上加強改進,控制了風(fēng)格遷移的內(nèi)容細節(jié)[7-8]。Li C等人[9]的CNNMRF是馬爾可夫隨機場(MRF)模型和訓(xùn)練過的深度卷積神經(jīng)網(wǎng)絡(luò)(DCNN)的組合算法,用風(fēng)格圖像中最相似的區(qū)域匹配每個輸入神經(jīng)區(qū)域,減少了不準(zhǔn)確的特征轉(zhuǎn)移,保留了內(nèi)容圖像的具體特征。
2017年Huang X等人[10]通過編碼-解碼結(jié)構(gòu)加速了風(fēng)格遷移,但由于自編碼器結(jié)構(gòu)中,解碼器信息損失的問題沒有解決,導(dǎo)致圖像的遷移結(jié)果中紋理呈現(xiàn)“塊狀”,在分割邊緣上尤其明顯。2017年Li Y[11]等人對自適應(yīng)實例規(guī)范化(Adaptive Instance Normalization,AdaIN)添加了白遷移(Whitening transform)和顏色遷移(Coloring transform)合稱為(WCT),WCT 使風(fēng)格遷移在特征的選取和色彩的校正上有了一定改觀。2019 年CVPR 上,Puy G 等人[12]針對AdaIN 添加了運行時損失和正則項,使得風(fēng)格遷移的網(wǎng)絡(luò)結(jié)構(gòu)可以更加靈活。Park D Y[13]等人針對AdaIN添加了底層特征注意力,也就是風(fēng)格注意力,解決了非邊緣處長時間域上紋理分布一致性的問題。Yao Y 等人[14]針對AdaIN 添加了高層特征注意力,即主題注意力,解決了多個主題圖像下紋理遷移混亂的問題。近年來的風(fēng)格遷移文獻主要以AdaIN為基礎(chǔ)進行改進,并未涉及圖像分割邊緣上的風(fēng)格遷移,未能解決圖像細節(jié)丟失和圖像扭曲的問題。
所以,針對這些問題,在圖像風(fēng)格遷移算法加入了語義分割算法和摳圖算法(Matting)[8]。語義分割和Matting算法有很多種。Long等人[15]首次使用全卷積神經(jīng)網(wǎng)絡(luò)(Fully Convolution Networks,F(xiàn)CNs)對圖像進行端到端分割,從抽象的語義特征直接對像素進行分類。Deeplab方法[7]使用空洞卷積來擴大感受野,條件隨機場算法來改善分割結(jié)果,后來又使用了編碼譯碼結(jié)構(gòu)。DilatedNet[16]方法直接去掉池化層,使用擴張卷積的方法實現(xiàn)了去掉下采樣的同時而不降低網(wǎng)絡(luò)的感受野的效果。Chuang Y Y等[17]提出的貝葉斯摳圖法從待處理像素的范圍里采樣相關(guān)聯(lián)的像素,根據(jù)圖像像素點的顏色值特征,建立像素顏色模型,再用極大似然法來估計Alpha 值。Levin A 等[8]的閉合式摳圖算法允許Alpha 值從已知區(qū)域傳播到未知區(qū)域,提出拉普拉斯矩陣。Chen Q 等[18]提出的KNN 摳圖算法采用HSV 顏色和像素點坐標(biāo)兩種特征,通過在特征空間取k 個最近鄰點計算得拉普拉斯矩陣再計算alpha值。這些用于圖像風(fēng)格遷移中的語義分割或者Matting算法都不能獨自分割出清晰的圖像邊緣,所以在風(fēng)格遷移時,這些圖像邊緣都是隨機遷移特征,導(dǎo)致邊緣模糊。只有將兩種方法結(jié)合起來才能得到精細的邊緣,從而完成更準(zhǔn)確的圖像風(fēng)格遷移。
為了克服圖像風(fēng)格遷移出現(xiàn)的圖像扭曲、內(nèi)容邊緣細節(jié)丟失等問題,本文使用深度卷積網(wǎng)絡(luò)模型進行圖像風(fēng)格遷移,先對輸入圖像進行DilatedNet[16]的語義分割得到內(nèi)容圖像和風(fēng)格圖像分割掩膜(Mask),將Mask添加到輸入圖像作為附加通道,抑制圖像在轉(zhuǎn)換過程中的“溢出”;再用Matting[8]算法進行邊緣銳化,定義最小二乘懲罰函數(shù)來增強輸入圖像真實性;然后使用優(yōu)化后的風(fēng)格遷移算法進行內(nèi)容和風(fēng)格重建,生成圖片。最后,將該方法與Neural Style 改進方法[4]和CNNMRF[9]方法生成的圖片進行分析比較。本文方法將語義分割和Matting 算法相結(jié)合得到邊緣更清晰的分割圖像,進行此種風(fēng)格遷移可以很好地解決圖像扭曲和細節(jié)丟失的問題,得到更真實的風(fēng)格遷移圖像。
深度卷積神經(jīng)網(wǎng)絡(luò)(Deep Convolutional Neural Networks,DCNNs)[19]是一種帶有卷積計算的具有深層結(jié)構(gòu)的前饋神經(jīng)網(wǎng)絡(luò)(Feedforward Neural Networks)[20]。如今深度卷積神經(jīng)網(wǎng)絡(luò)已經(jīng)廣泛地應(yīng)用于圖像處理領(lǐng)域,圖像風(fēng)格遷移便是使用了深度卷積神經(jīng)網(wǎng)絡(luò)進行輸出圖像的內(nèi)容和風(fēng)格重建。圖像風(fēng)格遷移中有兩類圖像,一類是風(fēng)格圖像,通常是藝術(shù)家作品,一類是內(nèi)容圖像,一般是真實照片。風(fēng)格遷移就是將風(fēng)格圖像的藝術(shù)風(fēng)格經(jīng)過深度卷積神經(jīng)網(wǎng)絡(luò)遷移到內(nèi)容圖像上,而內(nèi)容圖像的具體內(nèi)容如物體、形狀都不發(fā)生改變。
Gatys的Neural Style[3]方法為圖像風(fēng)格遷移的基礎(chǔ)算法。該方法使用了19 層VGG 卷積網(wǎng)絡(luò)中的16 個卷積層和5個池化層的特征空間。
為了要生成效果好的風(fēng)格遷移圖像,該方法定義了兩個損失函數(shù),一是內(nèi)容損失函數(shù)(contentloss),要求使輸出圖片在內(nèi)容細節(jié)上與輸入的內(nèi)容圖片極盡相似;二是風(fēng)格損失函數(shù)(styleloss),要求使輸出圖片在風(fēng)格上與風(fēng)格圖像極盡相似。計算輸出圖像,內(nèi)容圖像和風(fēng)格圖像之間的損失,P 為輸入的內(nèi)容圖像,A 是風(fēng)格圖像,O 為輸出的圖像。則內(nèi)容損失函數(shù)為:
其中,L 為卷積層總數(shù),l 表示深度卷積神經(jīng)網(wǎng)絡(luò)的第l層卷積層。并且和是它們在層中的相應(yīng)特征表示。在每個層中,存在Nl個濾波器,每個濾波器具有大小為Dl的矢量化特征映射。
該方法使用Gram矩陣表示圖像的風(fēng)格特征。其中是第一層中矢量化特征映射和之間的內(nèi)積:
則風(fēng)格損失函數(shù)為:
最后得到最小化的總損失函數(shù)為:
其中,αl和βl分別是內(nèi)容和風(fēng)格重建的加權(quán)因子,Γ為平衡內(nèi)容和樣式兩個權(quán)重的權(quán)重。
深度卷積神經(jīng)網(wǎng)絡(luò)已經(jīng)廣泛地應(yīng)用于圖像處理領(lǐng)域。圖像風(fēng)格遷移使用深度卷積神經(jīng)網(wǎng)絡(luò)的方法將風(fēng)格圖像的特征逐層遷移到內(nèi)容圖像上,即圖像在原空間的特征表示變換到一個新的特征空間,較好地保存圖像信息[21]。
圖像語義分割的使用深度卷積神經(jīng)網(wǎng)絡(luò)分離圖像的前景和背景以便更好地進行風(fēng)格遷移。在圖像風(fēng)格遷移任務(wù)中訓(xùn)練的深度卷積神經(jīng)網(wǎng)絡(luò)通過以下方式實現(xiàn)語義分割:(1)將所有完全連接的層轉(zhuǎn)換為卷積層;(2)通過卷積層增加特征分辨率。然后,使用雙線性插值將圖像上采樣,以達到原始圖像分辨率,產(chǎn)生完全連接的CRF的輸入,從而細化分割結(jié)果[7]。
使用深度卷積神經(jīng)網(wǎng)絡(luò)的圖像語義分割方法可以解決圖像風(fēng)格遷移中遇到的圖像扭曲和內(nèi)容細節(jié)丟失的問題,本文通過改善神經(jīng)網(wǎng)絡(luò)圖像風(fēng)格遷移基礎(chǔ)算法并結(jié)合圖像語義分割算法對圖像進行真實性的圖像風(fēng)格遷移。
卷積神經(jīng)網(wǎng)絡(luò)圖像風(fēng)格遷移算法得到的輸出圖像都很好地學(xué)習(xí)了風(fēng)格圖像的紋理與顏色,但輸出圖像的內(nèi)容出現(xiàn)扭曲與內(nèi)容細節(jié)丟失的情況。本文在圖像風(fēng)格遷移基礎(chǔ)算法中加入了語義分割和Matting[8]的算法,使得圖像內(nèi)容細節(jié)完好,輸出圖像更具真實性。通常情況下語義分割只能做到將圖像大體分割,而邊緣不清晰,所以本文在采用Dilated Convolution[16]的語義分割算法后再引入Matting[8]的方法,使得圖像邊緣分割得更加清晰。
圖像語義分割是計算機視覺領(lǐng)域十分重要的算法之一,該算法中計算機自動地從輸入圖像中分割出對象區(qū)域,識別該區(qū)域的內(nèi)容并進行標(biāo)記。本文方法使用擴張卷積來擴大感受野[22],進行圖像密集特征提取,使用空洞金字塔池化(Spatial Pyramid Pooling,SPP)[7]來處理多尺度問題;使用了條件隨機場(Conditional Random Field,CRF)[23]來改善分割邊界的結(jié)果,后來又使用了編碼譯碼結(jié)構(gòu)。本文使用的語義分割方法能夠解決圖像風(fēng)格遷移溢出的問題。該方法生成內(nèi)容和風(fēng)格圖像的分割掩膜(Mask),將Mask添加到輸入圖像上作為附加通道,通過連接分割通道和更新風(fēng)格損失來增強風(fēng)格遷移算法。增強風(fēng)格損失函數(shù)為:
其中,C 是語義分割掩碼中的通道數(shù),Ml,c[]· 表示層l中分段掩碼的通道c,而Gl,c[]· 是對應(yīng)于Fl,c[]· 的Gram矩陣。對掩模進行下采樣以匹配卷積神經(jīng)網(wǎng)絡(luò)的每一層處的特征映射空間大小。
圖像是由前景和背景組成,在不同的圖片中前景與背景的比例不同,在只有背景時,前景所占比例為0%;而在只有前景時,背景所占比例為0%。這個比例值被定義為一個未知數(shù)a。將圖像I 作為輸入,圖像I 是由前景圖像F 和背景圖像B 的合成。假設(shè)第i 個像素的顏色是對應(yīng)的前景色和背景色的線性組合。αi是像素的前景不透明度。則AlphaMatting[24]表達式為:
此Matting[8]算法利用圖像的顏色特征進行α 值的傳播,使α 值從已知區(qū)域傳播到未知區(qū)域。該算法推測得到未知像素的α 值并推理出該像素點的顏色呈線性相關(guān)關(guān)系。通過計算矩陣,將函數(shù)表達式轉(zhuǎn)化為關(guān)于α的二次型形式得:
其中L 為拉普拉斯矩陣(Matting Laplacian Matrix)[8],該矩陣L 可由圖像局部像素點的顏色計算得到。
Matting算法[8]將圖像前景與背景分離,避免了圖像在進行風(fēng)格遷移中的圖像溢出的現(xiàn)象。圖像溢出現(xiàn)象有草地的風(fēng)格溢出到天空中,得到的圖像效果極差。但Matting 算法[8]得到的前景與背景的分離圖像的邊緣不夠清晰,還需要更加精細的銳化。
在上述Matting的基礎(chǔ)上定義一個最小二乘懲罰函數(shù)[8]來最小化誤差的平方,尋找最佳匹配,確保不會在圖像風(fēng)格傳輸期間丟失圖像細節(jié)。最小二乘懲罰函數(shù)為:
矩陣MI為懲罰因子,表示標(biāo)準(zhǔn)線性系統(tǒng)最小化,該矩陣僅依賴于輸入圖像P,輸入圖像P 有N 個像素,MI是為通道c 中輸出圖像O 的矢量化版本。
其中,L 是卷積層的總數(shù),l 表示深度神經(jīng)網(wǎng)絡(luò)的第l層卷積層。Γ 是控制風(fēng)格損失的權(quán)重。αl和βl是層的權(quán)重。λ 是最小二乘懲罰函數(shù)的權(quán)重。Lm是內(nèi)容損失函數(shù)。是增強風(fēng)格損失函數(shù)。Lm是最小二乘懲罰函數(shù)。
本文的圖像風(fēng)格遷移算法先引入語義分割和Matting算法對內(nèi)容和風(fēng)格圖像進行分割,再使用預(yù)先訓(xùn)練的VGG-19[25]卷積神經(jīng)網(wǎng)絡(luò)進行特征提取,最后生成圖片。圖1為本文的圖像風(fēng)格遷移算法結(jié)構(gòu)圖。
實驗中將一組彩色照片作為測試圖像,一次測試包括一對圖像,一對圖像中有一張內(nèi)容圖像和一張風(fēng)格圖像。將每對圖像進行裁切,使同對圖像尺寸大小一樣。然后,使用本文方法和Neural Style 改進方法[4]、CNNMRF[9]方法進行圖像風(fēng)格遷移實驗,將得到的輸出圖片進行主觀對比評價。分析本文方法中語義分割和Matting[8]部分得到的語義掩膜邊緣清晰程度,判斷本文方法后期是否需要進一步改進。分析輸出圖像的紋理和顏色遷移效果,判斷本文方法是否解決圖像扭曲和內(nèi)容細節(jié)丟失問題。
實驗使用Python 3.7.1 結(jié)合pytorch[26]深度學(xué)習(xí)框架,運算平臺為8 核i7 處理器,利用GTX1060 顯卡進行GPU加速。本文的方法使用預(yù)先訓(xùn)練的VGG-19[25]作為特征提取器,選擇conv4_2 層作為內(nèi)容表示,此層的αl=1,所有其他層的αl=0。conv1_1,conv2_1,conv3_1,conv4_1 和conv5_1 層作為風(fēng)格表示,這些層的βl=1/5,其他層的βl=0。據(jù)Luan[6]的圖像風(fēng)格遷移方法所知,太小的λ 值不能防止圖像失真,過大的λ 值又會抑制風(fēng)格遷移,所以最佳參數(shù)為Γ=102,λ=104。
在進行了一系列不同類別的圖像風(fēng)格遷移實驗之后,挑選出實驗效果較好的8組實驗分別進行算法運行時間比較,主觀視覺分析和質(zhì)量評估。
圖1 本文的圖像風(fēng)格遷移算法結(jié)構(gòu)圖
記錄三種方法對8組圖片進行實驗的運行時間,進行比較。本文算法較為復(fù)雜,與Neural Style改進方法[4]和CNNMRF[9]相比運行時間較長是一定的,后期還需要多加努力進行改進。但是本文算法生成的圖像與Neural Style 改進方法[4]和CNNMRF[9]相比效果較好。表1 為Neural Style改進方法[4]、CNNMRF[9]和本文方法的代碼運行時間。
表1 三種算法的各組圖運行時間 s
本文方法的語義分割與Matting[8]階段實驗得到的內(nèi)容和風(fēng)格圖像的Mask 圖像如圖2 所示。A、B、C、D、E、F、G、H 組的圖片從左到右分別是內(nèi)容圖像、內(nèi)容圖像的Mask、風(fēng)格圖像、風(fēng)格圖像的Mask。分析內(nèi)容圖像和風(fēng)格圖像的Mask 圖像邊緣分割情況,判斷本文方法所用的語義分割與Matting[8]結(jié)合的方法是否能實現(xiàn)有效分割,為以后工作的改進提供實驗基礎(chǔ)。
分析圖2可知,A組的內(nèi)容和風(fēng)格圖像的Mask圖像的邊界處過于圓滑;B 組的內(nèi)容和風(fēng)格圖像的Mask 圖像中原本規(guī)則的建筑物的形狀十分不規(guī)則;C組的內(nèi)容和風(fēng)格圖像的Mask 圖像中只粗略分割,其中黑色部分為天空和湖水;D、E 組的內(nèi)容和風(fēng)格圖像的Mask 圖像中邊界平滑分成兩部分,風(fēng)格圖像的Mask 圖像中的帆船未能分割出來;F組的內(nèi)容和風(fēng)格圖像的Mask圖像中邊緣不規(guī)則不能分割成花瓶的形狀,且風(fēng)格圖像的Mask 圖像中并未能分出前后背景;G、H 組的內(nèi)容和風(fēng)格圖像的Mask圖像中,人物邊緣不精細,頭發(fā)絲未能分割出,且有的臉型不完整。綜上所述,本文實驗方法得到的內(nèi)容和風(fēng)格圖像的Mask圖像中出現(xiàn)邊緣銳化程度不夠的問題,但較為清晰,有利于風(fēng)格遷移。
三種風(fēng)格遷移算法實驗最終得到的輸出圖像如圖3 所示,分為a、b、c、d、e、f、g、h 組。每組圖像從左到右,包括內(nèi)容圖像、風(fēng)格圖像、Neural Style 改進方法[4]、CNNMRF[9]方法以及本文方法的輸出圖像。
圖2 內(nèi)容、風(fēng)格和Mask圖像
圖3 內(nèi)容圖像、風(fēng)格圖像和三種算法的輸出圖像
對實驗得到的Neural Style改進方法[4]、CNNMRF[9]和本文方法的輸出圖像進行具體分析。
(1)Neural Style改進方法[4]可以很好地遷移風(fēng)格圖像的紋理和顏色,但紋理會遍布整個內(nèi)容圖像,使內(nèi)容圖像發(fā)生扭曲、丟失內(nèi)容細節(jié),圖像內(nèi)容的邊緣模糊。
其中,圖3 的a、b、d、f、g 和h 組中的Neural Style 改進方法[4]輸出圖像將風(fēng)格圖像的顏色和紋理很好地遷移到了內(nèi)容圖像上,而內(nèi)容圖像細節(jié)嚴(yán)重丟失,內(nèi)容邊緣模糊。a組的輸出圖像天空與樹木細節(jié)丟失,圖像模糊;b 組的輸出圖像出現(xiàn)嚴(yán)重圖像扭曲;d 組輸出圖像天空部分出現(xiàn)扭曲模糊;f 組的內(nèi)容圖像的花瓶在輸出圖像中完全消失,其輸出圖像與風(fēng)格圖像十分相似;g組的輸出圖像扭曲,人臉細節(jié)丟失,五官模糊,頭發(fā)紋理消失;h組的輸出圖像人臉面部細節(jié)丟失,邊緣模糊,人臉周圍背景扭曲。出現(xiàn)問題區(qū)域如圖4紅框所示。
c 和e 組的輸出圖像效果較好一些,但其中有些部分出現(xiàn)了模糊,那些部分丟失了具體的圖像內(nèi)容。出現(xiàn)問題區(qū)域如圖5紅框所示。
圖4 Neural Style改進方法輸出圖像問題區(qū)域示意圖
圖5 Neural Style改進方法輸出圖像問題區(qū)域示意圖
(2)CNNMRF[9]方法部分圖片很好地轉(zhuǎn)移了風(fēng)格圖像的紋理,保留了內(nèi)容圖像的顏色,同時又將風(fēng)格圖像的顏色融合進去,最終生成的圖片呈現(xiàn)雪花狀,但還是能夠看到內(nèi)容圖像的一些大體內(nèi)容,內(nèi)容細節(jié)模糊,無圖像扭曲現(xiàn)象。而人臉的風(fēng)格遷移效果極差。
其中,圖3的a、b、c、d、e、f中的CNNMRF[9]方法生成的圖片可以看出,圖像中的內(nèi)容仍然可見,而細節(jié)模糊,無扭曲現(xiàn)象。
圖3的g、h中的CNNMRF[9]方法生成的圖片可以看出,人物臉部內(nèi)容完全丟失,且出現(xiàn)異常扭曲的現(xiàn)象,圖片也未能很好地遷移風(fēng)格圖像的紋理,生成的圖片看不出人臉特征,效果極差。圖6 即為g 和h 中CNNMRF[9]方法生成的圖片的內(nèi)容損失區(qū)域示意圖。
圖6 CNNMRF方法輸出圖像內(nèi)容損失區(qū)域示意圖
(3)本文的方法由于進行了精確的邊緣分割,可以很好地遷移風(fēng)格圖像的顏色和內(nèi)容,但是風(fēng)格圖像的紋理在輸出圖像上幾乎沒有體現(xiàn),輸出圖像的內(nèi)容細節(jié)保存完好。解決了Neural Style 改進方法[4]和CNNMRF[9]方法遇到的圖像扭曲、細節(jié)丟失的問題。
其中,圖3的a、b、c、d、e組為風(fēng)景圖片的風(fēng)格遷移,本文方法很好地遷移了風(fēng)格圖像的顏色,特別是圖片中的天空和湖水的顏色。a組將傍晚的景色換成了藍天白云,樹木草地除保持原主色外,整體偏藍色調(diào);b組直接由白天變?yōu)榱艘雇恚敵鰣D像天空顏色不均勻;c組湖水和天空顏色遷移得比較好,雖然未能學(xué)習(xí)到風(fēng)格圖像中的燈籠燈光,但整體得到輸出圖片效果較好;d組輸出圖片與內(nèi)容圖像相比整體亮度變高,顏色偏藍,但山的顏色不夠均勻;e 組輸出圖像很好地學(xué)習(xí)了風(fēng)格圖像的顏色保留了內(nèi)容圖像的細節(jié),完成效果較好。b 和d 組本文的方法出現(xiàn)顏色不均勻區(qū)域如圖7紅框所示。
圖7 本文方法的輸出圖像問題區(qū)域示意圖
f 組輸出圖像背景很好地學(xué)習(xí)了風(fēng)格圖像的顏色,花瓶色調(diào)也變?yōu)辄S色,整體風(fēng)格遷移效果很好。g組輸出圖像人物左右側(cè)亮度不同,顏色不均勻,但整體顏色為風(fēng)格圖像顏色,內(nèi)容無損失,圖像也無扭曲。h組人物左中右三部分顏色不均勻,且顏色遷移不完全,但圖像整體內(nèi)容無損失,圖像無扭曲,人物邊緣清晰。g和h組輸出圖像出現(xiàn)顏色不均勻分區(qū)表示如圖8所示。
圖8 g和h組輸出圖像顏色不均勻分區(qū)示意圖
針對上述選出的8 組實驗圖像以及結(jié)果(a、b、c、d、e、f、g、h 組的內(nèi)容圖像、風(fēng)格圖像、Neural Style 改進方法[4]和CNNMRF[9]方法輸出圖像以及本文方法輸出圖像),找到30 位同學(xué),讓他們觀察圖像并針對圖像內(nèi)容細節(jié)是否完好和圖像是否扭曲進行評估,選出他們認為內(nèi)容細節(jié)完好和圖像無扭曲現(xiàn)象的方法。根據(jù)調(diào)查數(shù)據(jù)得到圖9 的圖像內(nèi)容細節(jié)完好評估統(tǒng)計圖和圖10 的圖像無扭曲現(xiàn)象評估統(tǒng)計圖。
圖9 8組圖像內(nèi)容細節(jié)完好評估人數(shù)統(tǒng)計圖
圖10 8組圖像無扭曲現(xiàn)象評估人數(shù)統(tǒng)計圖
據(jù)圖9 可知,c、d、e、h 組的圖像內(nèi)容細節(jié)評估中選擇Neural Style transfer 的人數(shù)在16.7%~40%,選擇CNNMRF[9]方法的人數(shù)在3.33%~16.67%,而其余組80%以上的人都選擇的本文實驗方法。這表明CNNMRF[9]方法得到的風(fēng)格遷移圖像有明顯的內(nèi)容細節(jié)丟失的現(xiàn)象,Neural Style 改進方法[4]的圖片好評占比也不高,反映了本文的圖像風(fēng)格遷移方法得到的圖像內(nèi)容細節(jié)完好。
據(jù)圖10可知,在a、c、e、h組中圖像無扭曲選擇Neural Style改進方法[4]和本文方法的人數(shù)相當(dāng),證明這幾組都沒有明顯的圖像扭曲現(xiàn)象。在a組中,三種方法各占比26.67%、33.33%、40%,差距不大,三種方法圖像扭曲現(xiàn)象都不明顯。b、c、d、e、f、g、h組中選擇CNNMRF[9]方法的人數(shù)占比極低,而b、d、f、g 組70%以上都選擇了本文方法,表明生成的圖像基本無扭曲的現(xiàn)象。
綜上所述,本文的帶有語義分割并結(jié)合Matting[8]算法的圖像風(fēng)格遷移方法在圖像內(nèi)容細節(jié)和圖像無扭曲現(xiàn)象的評估中,好評約占70%,且從生成圖像來看,本文方法生成圖像也是三種方法中效果最好的,達到了解決以前風(fēng)格遷移算法出現(xiàn)內(nèi)容細節(jié)丟失、圖像扭曲問題的目的。
針對圖像風(fēng)格遷移算法生成圖像出現(xiàn)的扭曲、內(nèi)容邊緣細節(jié)丟失問題,研究了一種基于深度卷積神經(jīng)網(wǎng)絡(luò)的帶有語義分割的圖像風(fēng)格遷移算法。該算法結(jié)合了Matting算法和語義分割的方法將圖像的前景和背景分開,定義了最小二乘懲罰函數(shù)來加強圖像邊緣的真實性。最后,將改進的圖像風(fēng)格遷移算法進行實驗。對得到的內(nèi)容圖像和風(fēng)格圖像Mask圖像的邊緣銳化效果分析可知,本文的方法對邊緣銳化程度不夠,需要進一步改進。通過Neural Style改進方法、CNNMRF方法和本文方法實驗得到的效果圖像和主觀評估統(tǒng)計圖分析對比,進一步證明了提出的算法能夠解決圖像風(fēng)格遷移遇到的圖像扭曲和內(nèi)容邊緣細節(jié)丟失的問題。若能再對語義分割和Matting 算法作進一步改進,加強邊緣細節(jié)分割,會得到更好的風(fēng)格遷移效果圖像。