季新宇 朱留存 張震 柳成 羅俊琦
(1.揚州大學信息工程學院 江蘇省揚州市 225127 2.北部灣大學先端科學技術研究院 廣西壯族自治區欽州市 535011)
圖像藝術風格化是指利用計算機模擬某種藝術風格繪制素描、水彩以及漫畫等藝術風格[1],是近年來非真實感繪制領域的研究熱點之一[2],在海量圖像數據下,人工對圖像進行藝術化加工已是存在成本高昂、效率較低的問題,且畫圖質量受個人技能影響較大,再已無法滿足任務需要,因此運用深度學習技術來實現圖像藝術風格化具有重要意義,已有學者提出了一些圖像藝術風格化算法,如Gatys 等[3]首次運用深度學習來實現圖像的藝術風格轉換,通過卷積神經網絡[4-5-6]中間層輸出特征映射的統計特性,提取并量化圖像內容和風格特征,該算法實驗效果良好,但其又有不足,不足主要表現為以下兩個方面,一方面是迭代速度慢,需要在多輪迭代計算中逐步對生成圖像施加紋理,以完成對圖像的渲染,這個過程需要較長的處理時間。另一方面則是對于某些特定風格,風格化處理后效果往往不盡如人意,例如圖像的漫畫化效果較差。
針對上述問題,Johnson Justin 等[7]提出了基于生成模型迭代的風格遷移算法。該算法用感知損失函數訓練前饋網絡,使用在Imagenet 上訓練好的VGGNet 簡化損失函數計算過程,直接生成風格化圖像,其效率得到較大的提升。同時,由于該算法把逐像素求差損失函數改進為感知損失函數,在圖像超分辨率重建方面也有較好的效果[8-9]。盡管該算法在圖片的生成速率上有良好表現,但仍存在以下問題:生成的風格化的圖像背景部分存在較多的紋理傳輸,影響圖像的質量與藝術化效果;算法網絡結構復雜,在進行圖像風格化的學習過程中,計算復雜度較高,限制了算法的處理速度。
綜合來看,當前圖片風格化遷移算法仍然普遍存在處理效果有所欠缺和處理速度有限的缺點。本文結合引入指數線性單元ELU的殘差網絡ResNet 和雙線性插值加卷積conv 的尺寸重建方法,提出一種能夠兼具圖像內容特征和風格特征的圖像風格化算法,使得在圖像整體表現和迭代速度上有更佳的表現。
VGG-Net 在 Gatys 等人算法中的用于特征提取以及損失函數的計算,Justin 等人算法中的感知損失網絡,本文算法也將其用作感知損失函數。本文主要在Justin 等人算法的圖像轉換網絡結構上進行一定的改進:將原圖像轉換網絡的深度殘差網絡ResNet 替換為引入指數線性單元ELU 的殘差網絡 ResNet 和用改進雙線性插值加卷積的形式替換原轉換網絡的圖像生成模塊的反卷積層。
VGG-Net 是由Simonyan 等人[10]2014年在中提出的,在當年的LSVRC 競賽中獲得圖像分類任務的第二名。Simonyan 在他的論文中將這種網絡模型稱為VGG,VGG 網絡一般用于分類問題,VGG網絡被分為VGG16 和VGG19,分類的依據是結構網絡深度有16 層和19 層的區別,VGG-19 網絡結構如圖 1 所示。

圖1:VGG19 網絡結構示意圖
Justin Johnson 等人[7]使用的網絡分為兩部分,網絡結構如圖2,圖像轉換網絡fw和感知損失網絡,其中感知損失網絡是用來定義損失函數。圖像轉換網絡是一個參數為w 的由殘差塊[11]組成的卷積網絡,中間層為殘差塊,解決了網絡較深優化時,易出現梯度消失或梯度爆炸的問題。論文是用已經預訓練的 VGG-Net 提取一張風格圖與大量內容圖的特征來優化損失函數,并利用優化后的損失函數對圖像轉換網絡進行訓練,訓練出的轉換模型就可以達到圖像快速風格遷移的效果。



在圖像轉換網絡中,網絡結構主要分為特征提取模塊、殘差神經網絡和圖像生成模塊,特征提取模塊用于提取輸入圖像 的特征,由3 個卷積層組 成,殘差神經網絡是進行轉換的主體,是由5 個殘差塊構成的,圖像生成模塊主要是用于將轉換后的特征恢復為所需要尺寸的圖像,由3 個反卷積[13]組成。整個網絡結構如圖3所示,卷積層和反卷積層跟隨批歸一化與 Relu 函數,最后一層的反卷積跟隨 Tanh 函數,以保證圖像的輸出范圍正確。
除以上在損失網絡處理的損失函數外,為了避免出現輸出圖像的空間平滑度過低的情況,提出了總變異正則化函數:

圖2:網絡結構圖

圖3:轉換網絡結構圖


1.3.1 指數線性單元的殘差網絡
為了進一步緩解梯度消失問題和提高算法的處理速度,本文使用shah 等人[14]提出的引入指數線性單元的殘差網絡替代原論文中提出的殘差網絡,shah 等人提出使用指數線性單元(exponential Liner unit,ELU)代替標準殘差函數中BN層[15]和ReLU層[16]的組合。ReLU 函數輸出的值均大于0,當激活值的均值非0 時,就會對下一層產生一個偏置值,如果激活值之間不能相互抵消(即均值非0),會導致下一層的激活單元有偏移!如此疊加,單元越多時,偏移就會越大[17]。相比ReLU,ELU 可以取負值,消減了前向傳播時的偏移,這讓單元激活均值可以更接近0,類似于BN 的效果但是只需要更低的復雜度,殘差單元和指數線性殘差單元如圖4 和圖5 所示。
ELU 的公式如下:

其中:δ 是一個可調的參數,它控制著 ELU 負值部分在何時飽和;ELU 可將前面單元輸入的激活值的均值控制在0,讓激活函數的負值部分也可以攜帶信息并被使用,在降低計算復雜度的同時還可以加快殘差網絡的學習速度,這里取δ=0.1。
1.3.2 改進雙線性插值生成模塊
Justin Johnson 等人設計的兩部分網絡中的圖像轉換網絡中圖像生成模塊將殘差網絡處理后的具有高層語義的特征數據經過反卷積處理進行原尺寸重建,但經過實驗發現,重建后的圖像經常成網格狀,也即重建后的圖像具有棋盤效應[18],這與轉置卷積卷積核的尺寸和步長有關,并且僅僅調整卷積核的大小和步長也不易消除此效應,棋盤效應情況如圖6 所示。
在另一篇論文中,武筱琪[19]等人采用上采樣加卷積的方式來替換反卷積,其中上采樣為最近鄰插值法,以此來避免棋盤效應的產生,提升了一定的圖像質量,但最近鄰插值在進行圖像尺寸的變換,插入像素時,像素值的大小只考慮該像素點位置最近的像素值的大小,不考慮其他像素,因此會喪失一定的空間信息對圖像縮放后的質量有一定影響,并且可能會造成插值生成的圖像灰度上的不連續,在灰度變化的地方可能出現明顯的鋸齒狀。采用雙線性插值進行上采樣加上卷積,也可避免棋盤效應并且提升一定的圖像質量,同時對算法復雜度影響不大。現有的雙線性插值算法在實際運用也會產生一些問題,例如整體的圖像相對位置會發生變化,如圖7 所示,這里的坐標都是0-based,綠色部分是原圖像(2,2),外圍是目標圖像(3,3),原圖像的幾何中心點是(1,1),目標圖像的幾何中心點是(1.5,1.5),就會產生下列問題,目標圖像的原點(0,0)點和原始圖像的原點是重合的,但是目標圖像的幾何中心點相對于原始圖像的幾何中心點偏右下,那么整體圖像的位置會發生偏移,所以參與計算的點相對都往右下偏移會產生相對的位置信息損失,可能出現圖像內容或邊界的扭曲。
為了使縮放前后的圖像中心重合,于是將原有的雙線性插值公式(6)改為改進線性插值公式(7),其中縮放后任意像素點的坐標為(x,y),對應原圖的坐標為(x',y'),采樣后圖像高為h,寬為w,原圖像高為h',寬為w',得到圖像縮放比例sh=h'/h,sw=w'/w。

本文所設計的網絡結構中,感知損失網絡選用了預訓練好的VGG19,因為不用其進行分類,VGG19 中的全連接層舍棄掉,利用損失網絡來描述內容損失Lcontent和風格損失Lstyle,當在轉換網絡訓練每一張輸入圖像x,都會計算Lcontent和Lstyle,進而優化轉換網絡,從而得到針對于某一特定風格的風格遷移模型,從而保證網絡的快速與實時性,風格圖主要提取到卷積網絡前五層的特征,內容圖像主要提取到第五層的特征進行內容重建。圖像轉換網絡內部如表1所示。
將本文提出的改進算法在兩組不同藝術風格的風格圖和內容圖上進行實驗,通過與Gatys 等人算法,Justin 等人的基于感知損失網絡算法的對比,驗證本文算法的有效性。在網絡訓練過程中,使用1000 多張油畫,1000 多張漫畫作為圖像風格數據,使用2000多張真實圖像作為訓練數據同時選一些人物圖像作為測試數據測試生成的圖像轉換網絡的性能,部分訓練數據和測試數據如圖8 所示。實驗環境為CPU i7 2.2GHZ,RAM 16G,顯卡NVIDIA GeForce GTX 1060。
本文提出方法基于 TensorFlow 深度學習框架實現,使用 GPU進行運算加速,優化算法采用Adam,為了防止梯度在局部最優解附近產生震蕩,并且把損失函數降到足夠低,所以初始學習率η 為0.003,前 50 回合學習率不變,后 50 回合學習率開始線性衰減,最大循環次數Nepoch為100,經過試驗比較,選擇將風格圖前五層特征權重系數設置為第一層權重為 0.4,第二層權重為 0.3,第三層權重為 0.2,第四第五層為0.05,也就是低層的權值高于高層,對于內容損失權重γ 和風格損失權重β,參考文獻[20]進行的實驗以及結論,當進行油畫風格遷移時,由于對風格化效果要求高,所以設置為α=1,β=400,當進行漫畫風格遷移時,由于對圖像內容信息需求大,所以設置為α=5,β=100。
分別以Gatys 等人算法,Justin 等人算法與本文基于改進感知損失函數的實時圖像風格遷移算法進行圖像風格遷移實驗,實驗結果共4 組,如圖9 所示。圖中每組第1 行1 列是原圖像,第1 行2列是風格圖像,第2 行1,2,3 列分別為Gatys 等人算法,Justin等人算法與本文基于改進感知損失函數的快速圖像風格遷移算法的實驗結果,訓練集訓練完成后的圖像轉換網絡使用一定的測試數據進行驗證對比,結果如圖10 所示。
從以上幾組訓練實驗結果以及測試實驗結果來看,Gatys 等人算法生成的建筑油畫,人物漫畫語義內容還是不能夠很好的識別以及表現出來,在油畫中的主體建筑,漫畫中的人物臉部,都出現了不少不規則的色塊,邊緣信息尤其以漫畫中人臉的邊緣輪廓較為明顯,也出現了缺失。Justin 等人算法保留一定的邊緣信息,同時在背景部分也產生了一些多余紋理。本文算法去除掉了背景及建筑,人臉上的多余紋理,保留了內容圖像內容較為清晰的邊界信息。
由于油畫風格化后的結果具有更多的風格紋理并且內容信息一般不會發生變形,漫畫風格化的圖像有更好的內容信息但是風格已經融入到圖像內容之中,一些內容細節,內容之間的結構可能已經發生變化,此外背景部分的一些多余紋理可以理解為噪聲,所以選取結構相似性(Structural Similarity SSIM)圖像質量評價指標對油畫實驗結果進行評估,選取峰值信噪比(Peak Signal to Noise Ratio PSNR)評價指標對漫畫實驗進行評估,SSIM 評估指標是通過評估亮度,對比度,結構這三個方面來對內容圖像和風格化圖像進行結構性的評估。PSNR 評估指標則是通過比較峰值信號的能量與噪聲的平均能量之比來評估兩幅圖像的差異性。這兩種指標都是值越大模型越好,詳細評估結果見表2。

表 1:轉換網絡內部結構參數

表 2:實驗評估結果
從表2 可以看出,風格遷移實驗結果中,Gatys 等人算法在第二組油畫實驗結果的SSIM 高于本文方法,但在其他實驗結果來看,本文所提的基于改進感知損失函數的實時圖像風格遷移方法的SSIM 或PSNR 均高于其他方法。
由于Gatys 等人算法提取內容與風格特征對隨機生成的一張噪聲圖進行訓練,經過多次迭代降低損失函數的過程,最終生成風格化圖像。而Justin 等人算法與本文方法都是用提取到的內容以及風格特征對一個特定的網絡進行訓練,得到所需的圖像轉換網絡,然后通過該網絡就可以對多個圖像進行特定的風格化的處理。其過程,結果都有所不同,所以這里主要對Justin 等人算法與本文方法進行迭代速度的比較,本文所提方法比原基于改進感知損失函數圖像風格遷移方法提高了收斂速度,兩種算法在訓練幾組實驗數據時的平均總損失函數隨迭代次數變化的情況如圖11 所示,相同迭代次數下,本文算法的值比Justin 等人算法要低,基于改進感知損失函數實時圖像風格遷移算法收斂更快。

圖4:殘差單元

圖5:ELU 殘差單元

圖6:棋盤效應產生情況

圖7:原雙線性插值縮放圖

圖8:實驗數據

圖9:實驗結果

圖10:轉換網絡測試結果

圖11:收斂速度比較
本文利用對基于感知損失函數的圖像風格遷移算法進行改進,引入指數線性單元的殘差網絡ELU+ResNet 替換原圖像轉換網絡的深度殘差網絡ResNet,優化了殘差單元的結構,降低了復雜度,加快了網絡收斂速度。把圖像轉換網絡中圖像生成模塊中反卷積層換為改進雙線性插值加卷積的形式,避免了棋盤效應的產生,提升了生成圖像質量。試驗結果表明,和原基于感知損失函數的圖像風格遷移算法相比,本文提出的方法在風格化效果和收斂速度上有更佳的表現,可以更好更快生成需要的風格化圖像。