范曉燁,王 敏
(河海大學 計算機與信息學院,南京 210024)
提升圖像清晰度是計算機視覺領域中的常見問題.它已經成為視頻監控、軍事目標識別以及消費型攝影、攝像等眾多應用領域的一個重要研究課題.模糊的圖像嚴重影響目標識別、語義理解等高級視覺任務,所以,對模糊圖像的處理,提高圖像清晰度具有重要意義,因此受到了計算機視覺研究領域的高度關注.
最近,在圖像修復[1,2],超分辨率[3–7]和去模糊[8–10]相關研究領域中,通過應用生成對抗網絡(GAN)[11]取得了重大進展.它是一種基于真實圖像與生成圖像比較來進行訓練的模型,以博弈的思想使得輸出盡可能的接近輸入的真實分布,該訓練方式可以很好地從樣本數據中學習特征,更好地解決分類和回歸問題.GAN包括兩部分:生成器和判別器.生成器生成圖像,辨別器判斷圖像是來自真實分布還是生成網絡.在訓練期間,判別網絡計算對抗損失對生成網絡進行評分.GAN可以保留圖像的紋理細節,創造出接近真實圖像的生成圖像,令人無法分辨是否為真實圖像.因此受到生成對抗網絡對圖像處理的啟發,通過使用GAN 也可將提高圖像清晰度視為圖像到圖像的轉換.
本文采用GAN 的思想,生成網絡中采用改進的殘差塊(residual block)作為主體,生成器損失函數在原有基礎上加入內容損失、感知損失、紋理損失,在視覺和定量評估方面取得較大進展.
卷積神經網絡在計算機視覺任務中普遍應用,從識別,語義分割到降噪,超分辨率,去模糊,修復,都表現出了卓越的性能.深度網絡以端到端的多層方式將低級、中級、高級特征和分類器集成在一起,并且可以通過增加網絡深度來豐富特征.
一味地增加網絡層數帶來的問題就是梯度消失,不僅難以訓練,而且收斂速度變慢,為解決上述問題,He 等提出了ResNet[12],它可以在增加特征圖通道數的同時增加網絡深度,而不增加網絡的復雜度,并通過實驗證明殘差網絡收斂速度更快,當網絡深度顯著增加時,其準確率也會隨之上升.這是選擇ResNet 作為GAN模型中生成網絡主體部分的原因之一.
之所以選擇GAN 作為網絡框架,是因為我們想要的是和真實圖像無法區分的輸出,這正是最近提出的GAN 所研究的[13–15].Isola 等[16]提出圖像到圖像的轉換問題通常是逐像素的分類或回歸問題,在本文中,通過逐像素的方式計算輸出和真實圖像之間的內容損失.
原始ResNet 中的快捷連接僅僅是簡單地執行恒等映射,并將其輸出添加至幾個網絡層之后的輸出,恒等快捷連接既不增加額外的參數也不增加計算復雜度.文獻[14]為了解決圖像分類等高級的計算機視覺問題,因此將ResNet 體系結構直接應用于提高圖像清晰度這類的低級計算機視覺問題是達不到最優效果的.
傳統殘差網絡中有批歸一化操作,但是在提高圖像清晰度的應用中,殘差塊中BN是沒有必要的,因為殘差塊中快捷連接已經在不增加額外的參數和計算復雜度的前提下,加速了訓練過程,因此本文的生成網絡部分中的殘差網絡也將去除BN 層.同樣重要的是He和Srivastava 等[17]說明跳躍連接可以將梯度反向傳播到底層,并將圖像細節傳遞到頂層,有助于減輕網絡中攜帶相同信息的負擔并獲得高質量的局部最優化.在提高圖像清晰度的過程中要考慮到圖像的局部多樣性,因此殘差結構非常適用于提高圖像清晰度.
Pathak 等[18]發現將GAN 與傳統的損失函數混合起來對于訓練效果是有益的,例如L2損失函數.但是如果我們要求GAN 最小化預測像素和真實像素之間的L2距離,它將傾向于產生模糊的結果.Zhao 等[19]實驗使用L1損失函數訓練的網絡比使用L2可以獲得更好的性能表現,收斂也更快.
綜上所述,為了生成圖像盡可能逼真,所以使用GAN框架,并和不同損失函數結合.在提高圖像清晰度方向上,要考慮到圖像特征的范圍靈活性和局部多樣性,所以生成器采用去除BN 的殘差塊作為主體結構.
本文遵循文獻[20]的思想,生成網絡由多個殘差塊組成.GAN 中的生成網絡和判別網絡均使用SAME模式進行卷積,該操作會保持原特征圖的維數不變,從而實現無損特征提取.
受到文獻[11]的啟發,GAN是一個最大最小的博弈問題,生成網絡希望生成圖像盡可能地接近真實分布,致使判別網絡認為是真的;而判別網絡則是盡可能地分辨出圖像的真假,如式(1)所示:

其中,pdata為真實分布,pG為生成器分布,D和G分別表示判別器和生成器.將傳統的最大最小問題應用于本文中便有式(2):

其中,IB為模糊圖像,IT為真實清晰圖像.
提高圖像清晰度對圖像紋理生成的要求極高,因此GAN 中的生成網絡至關重要.它需要對通過網絡層的信息進行整合,為了改善反向傳播中的梯度流,快捷連接可以增強殘差網絡的梯度流.
本文GAN 中生成網絡和判別網絡的總體結構如圖1,圖2所示.生成網絡主體部分由改進的殘差塊(去除BN 層)和跳躍連接嵌套而成,不使用池化層和反池化層,因為池化層會丟失圖像細節,然而這些細節信息對提高圖像清晰度至關重要.中間由5 個改進的殘差塊組成,利用跳躍連接進行像素級相加操作,保證了將圖像細節傳遞到特征圖頂層,有利于降低網絡的復雜度,獲得高質量的局部最優化,將梯度反向傳播到底層,使得訓練深層網絡更加容易.

圖1 判別網絡架構

圖2 生成網絡架構
判別網絡部分主要由8 個卷積-激活-歸一操作組成,用兩個全連接層在尾部進行重新擬合,減少特征信息的損失,根據特征的組合進行分類,大大減少特征位置對分類帶來的影響.最后用Sigmoid 對全連接層的輸出進行二分類,判斷輸入圖像真假與否.
如圖3所示圖3(a)為原始的殘差塊,其適用于圖像分類等高級計算機視覺問題,均達到較高水平,在提高圖像清晰度這類低級計算機視覺問題中,原始的殘差塊并沒有表現出滿意的效果,其中BN 層是不必要的模塊,將其去除可簡化網絡結構,在穩定GAN 訓練過程的同時,性能也有所提升,圖3(b)為改進的殘差塊.

圖3 殘差塊
另外將網絡中的ReLU 激活函數改為了PReLU,整流激活函數對神經網絡性能的巨大提升功不可沒,由文獻[21]提出的PReLU 激活函數可以自適應地學習整流器的參數,在ImageNet 分類上,PReLU是超越人類分類水平的關鍵所在,在可忽略的計算成本下提高精度.
實驗證明,選用LReLU 和ReLU 作為整流器對最終的實驗結果幾乎沒有影響,因此采用可以不斷尋求最優參數的PReLU 作為整流器.
本文GAN 模型的損失函數主要分為兩部分:生成器損失函數和判別器損失函數,其中生成器損失函數由內容損失、感知損失、紋理損失和對抗損失構成,下面將進行展開介紹.
2.4.1 內容損失
本文GAN 模型的損失函數在原來最大最小問題的基礎上加入內容損失函數,文獻[4,18]使用的是均方誤差(L2)作為損失函數,這可以在定量評估方面取得很高的分數,但是它會導致圖像的細節紋理太過平滑,給人視覺上有模糊的感覺.文獻[19]通過實驗發現使用曼哈頓距離(L1)訓練出來的模型性能更好,訓練過程的收斂速度也比L2快,因此使用L1作為本文模型中的內容損失函數:

其中,W和H分別表示圖像的寬和高.
2.4.2 感知損失
當兩幅圖像內容完全一樣,但相對位置卻偏差1 個像素時,求得的內容損失卻不是0,其關注的是圖像中每一個對應位置像素之間的距離,因此魯棒性不強.感知損失允許模型的輸出可能與真實圖像不完全匹配,但鼓勵網絡生成具有類似特征表示的圖像,如式(4)所示:

本文使用預訓練的VGG-19 網絡來獲取特征圖 φ,為了同時考慮到圖像中的多尺度信息捕獲高級和低級特征,因此將第2 個和第5 個池化層結果融合.避免了要求網絡輸出圖像與真實清晰圖像在像素級別上的一致,而是鼓勵兩幅圖具有相似的特征.
2.4.3 紋理損失
Ulyanov 等[22]在風格遷移中將全局紋理合成到其他圖像,與風格遷移任務的區別在于,本文任務中圖像中的紋理特征多樣化,不僅限于一種風格,因此在訓練過程中通過計算基于塊的紋理損失,使得網絡生成局部相似的紋理,可以促進產生的圖像具有更豐富的紋理信息.如式(5)所示:

其中,Gr(F)=FFT.
2.4.4 對抗損失
生成器損失函數還有原始的對抗損失,其鼓勵生成網絡能夠生成更加自然的圖像.對抗損失如式(6):

2.4.5 判別器損失
GAN 網絡的損失函數中除了生成器損失函數,還包括判別器損失函數,判別網絡同時對生成圖像和真實圖像進行判斷,判別器損失函數如式(7):

式中,對于真實樣本IT而言越大越好;對于假樣本而言越小越好,為了這兩項的期望趨勢相同,我們將改寫為
DIV2K 數據集[22]是新發布的用于圖象復原任務的高質量圖像數據集,包括800 張訓練圖像,100 張驗證圖像和100 張測試圖像,圖像種類包羅萬象應有盡有,所以本文采用該數據集進行實驗,盡可能增加模型的泛化能力.
由于數據集圖像過大,因此訓練過程中對圖像進行隨機裁剪24×24 并翻轉,使用Adam 優化算法進行500 000次迭代,訓練25 萬次后進行學習速率衰減,衰減率設置為0.1,訓練生成網絡每更新一次,判別網絡更新兩次,防止GAN 訓練的不平衡.
本小結通過消融實驗證明改進的殘差塊和損失函數對于提高圖像清晰度的有效性,如圖4所示,圖4(a)和圖4(b)分別為生成模型的輸入和真實清晰圖像,圖4(c)至圖4(f)為分別進行實驗得出的效果圖.具體來說,圖4(a)為輸入的模糊圖像,圖4(b)為真實清晰圖像,圖4(c)為沒有使用殘差塊的生成效果,定義該生成模型為StackedG;圖4(d)為使用傳統殘差塊的生成效果,定義該生成模型為ResG;圖4(e)為使用改進殘差塊的生成效果,定義該生成模型為NonBN-ResG;圖4(f)為使用改進殘差塊和損失函數的生成效果,定義該生成模型為NonBN-ResG-L.

圖4 消融實驗
如圖5所示,更加細節地展示實驗效果,為了方便起見標號同圖4.對該女人的人臉細節觀察,圖5(c)有明顯的色彩失真,圖5(d)則有振鈴效應,圖5(e)的細節重建不足,較為模糊,圖5(f)的紋理特征,精細化程度均明顯高于其他3 種情況,包括頭發、眼睛、牙齒,甚至身后的文字均清晰可見,與真實的高清晰度圖像相差無幾.表1為定量分析,可得出使用L1作為內容損失函數訓練的網絡雖然在定量評估方面沒有達到最優,但比L2訓練獲得更好的性能表現.
本文提出了一種基于生成對抗網絡的提升圖像清晰度方法,生成網絡主體部分由改進的殘差塊和跳躍連接嵌套而成,保證了將圖像細節傳遞到特征圖頂層,有利于降低網絡的復雜度,獲得高質量的局部最優化,將梯度反向傳播到底層,使得訓練深層網絡更加容易.
將來視頻監控等眾多領域對圖像清晰度會有更高的要求,目前有多項工作研究重點放在超分辨率的工作上,因此未來我們可以將提高清晰度和超分辨率結合起來,在實現超分辨率的基礎上并提高圖像清晰度,這可以成為將來的研究重點.

圖5 實驗細節對比

表1 不同模型的定量評估