鄭璐, 王保云, 孔艷
(云南師范大學 信息學院,云南 昆明 650500)
圖像作為信息的載體,在各行各業(yè)發(fā)揮了極其重要的作用.互聯(lián)網(wǎng)上大量的圖像信息因受成像設(shè)備、網(wǎng)絡(luò)不當傳播、環(huán)境等因素的影響,存在圖像質(zhì)量不高,細節(jié)信息不完善等問題,難以為我們提供更有用的信息,挖掘更多的價值.超分辨率重建(Super Resolution,SR)是利用某些圖像處理手段或算法模型,基于低分辨率圖像,估計出高分辨率圖像的技術(shù)[1].目前,圖像超分辨率在監(jiān)控設(shè)備、衛(wèi)星圖像和醫(yī)學影像等領(lǐng)域有著廣泛地應(yīng)用,發(fā)展前景廣闊[2].
基于重建和基于非深度學習的超分辨率方法相對比較傳統(tǒng)[3-7].近幾年,隨著深度學習方法的迅猛發(fā)展,深度學習與圖像處理原理的結(jié)合在實現(xiàn)圖像超分辨率的準確性和速度方面取得了巨大的突破.2014年由Dong等人[8]提出的SRCNN(Super-Resolution using Convolutional Neural Network)是基于深度學習方法的首秀,在圖像超分辨率的準確性和速度方面取得了巨大的突破,重建出的超分辨率圖像效果相比傳統(tǒng)方法有很大改善.基于此,Shi等[9]提出更便利的ESPCN,該方法可直接在原圖像上提取細節(jié)信息,然后經(jīng)由算法計算重建圖像,顯著提高了重建效率.由Kim等人[10]受殘差網(wǎng)絡(luò)結(jié)構(gòu)的啟發(fā),運用殘差網(wǎng)絡(luò)結(jié)構(gòu)來解決超分辨率相關(guān)問題,這對圖像重建中基于深度學習方法的發(fā)展具有重要意義.
生成對抗網(wǎng)絡(luò)(Generative Adversarial Network,GAN)具有強大的圖像生成能力[11],在圖像生成、修補、超分辨率、草稿圖復(fù)原等領(lǐng)域都有實際的應(yīng)用價值[12].Ledig等率先將GAN應(yīng)用到超分辨率重建領(lǐng)域中,提出了基于生成對抗網(wǎng)絡(luò)的超分辨率(Super-Resolution using a Generative Adversarial Network,SRGAN)算法[13],解決了最終恢復(fù)出來的圖像通常會丟失高頻細節(jié)這一問題,把圖像超分辨率重建研究又推向了一個新的高度.
本文改進了SRGAN中的生成器網(wǎng)絡(luò)模型,用DenseNet來代替ResNet,提出了一種新的基于生成對抗網(wǎng)絡(luò)的超分辨率圖像重建方法,主要有以下優(yōu)點:
(1)在4倍放大因子的圖像上實現(xiàn)了超分辨率重建,改進了SRGAN中的生成器網(wǎng)絡(luò)模型,增加密連接塊,在一定程度上提高了PSNR和SSIM值.
(2)為了促進圖像的空間平滑性,在優(yōu)化問題中,使用內(nèi)容損失函數(shù)和Total Variation Loss一起約束噪聲.
(3)選用VGG19的19、16、13、10、7層輸出對比結(jié)果,加強了不同尺度的特征融合.
算法將低分辨率圖像樣本輸入到生成器網(wǎng)絡(luò)中進行訓(xùn)練學習,通過學習到的圖像特征,不斷生成并輸出逐漸逼近真實高分辨率的圖像,接著再輸入到判別器網(wǎng)絡(luò)中,辨別其輸入的圖像是否來自原始真實的高分辨率圖像,直到生成器網(wǎng)絡(luò)生成高質(zhì)量的超分辨率圖像使判別器無法判別出真假時訓(xùn)練結(jié)束.其網(wǎng)絡(luò)結(jié)構(gòu)如圖1和圖2所示.
圖1 SRGAN生成器網(wǎng)絡(luò)模型圖[13]
圖2 SRGAN判別器網(wǎng)絡(luò)模型圖[13]
DenseNet具有密集連接性,在這個網(wǎng)絡(luò)中,任意兩層之間都有直接的連接[14].各層網(wǎng)絡(luò)的輸入是之前所有層輸出的串聯(lián),該層提取的圖像特征作為輸入,給到該層之后的每一層.網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示.
圖3 DenseNet網(wǎng)絡(luò)模型圖
訓(xùn)練開始前應(yīng)用高斯濾波器對原始高分辨率樣本圖像IHR進行預(yù)處理,通過下采樣獲得待輸入的低分辨率圖像ILR.
SRGAN的生成器網(wǎng)絡(luò)的核心是采用了具有相同布局的B個殘差塊,同時受到DenseNet的啟發(fā),將SRGAN中的殘差塊改為密連接塊.具體來說,在生成器網(wǎng)絡(luò)部分,設(shè)置了3×23個密連接塊,加深網(wǎng)絡(luò)的同時,共享參數(shù),解決了網(wǎng)絡(luò)層次較深時難以訓(xùn)練的問題.其網(wǎng)絡(luò)結(jié)構(gòu)如圖4所示.
圖4 生成器網(wǎng)絡(luò)模型圖[14]
圖5 判別器網(wǎng)絡(luò)模型圖
生成器網(wǎng)絡(luò)主要作用是特征提取和圖像重建.特征的提取又分為淺層特征和深層特征的提取.首先保留SRGAN中的第一層卷積網(wǎng)絡(luò)來進行淺層特征提取,然后通過密連接塊(DenseNet)提取深層特征.DenseNet與ResNet不同,特征映射并不是簡單的求和相加,而是增加密集塊跳躍連接,將密連接塊作為一個整體進行處理,第一個卷積層的輸出以及每個密集連接塊的輸出,都輸入給在之后的所有密連接塊,這樣所有功能都可以串聯(lián)起來.例如第l層接收前面I0,I1,…,Il-1所有層的特征圖作為輸入,用公式表示為:
Il=Sl[(I0,I1,…,Il-1)]
(1)
其中(I0,I1,…,Il-1)是第l層之前所有層輸出的特征圖的串聯(lián),S用來表示多層輸入的串聯(lián).
GAN的最終目的是訓(xùn)練生成器模型G,這里給定生成器模型G的參數(shù)為θg,ILR表示輸入的低分辨率圖像,ISR表示生成器生成的高分辨率圖像,表示為:
ISR=Gθg(ILR)
(2)
為了辨別出兩種圖像的性質(zhì):真實高分辨率圖像IHR、生成器G重建的圖像ISR,定義判別器網(wǎng)絡(luò)D,結(jié)構(gòu)如圖5所示.該網(wǎng)絡(luò)在SRGAN的基礎(chǔ)上簡化了判別器網(wǎng)絡(luò)D的網(wǎng)絡(luò)結(jié)構(gòu),這樣不僅可以提高判別器的訓(xùn)練效率,同時也避免了判別器的判別能力過高,從而造成生成器難以訓(xùn)練的問題.生成器G不斷地對低分辨率圖像進行重建,以欺騙可區(qū)分的判別器D,判別器D不斷地區(qū)分圖像是真實的還是重建的,直到無法判別為止.兩個網(wǎng)絡(luò)形成相互博弈、相互對抗的過程,用公式表示為:
EILR~Pg(ILR)[1-Dθd(Gθg(ILR))]
(3)
感知損失lSRper、對抗損失lSRadv以及內(nèi)容損失lSRimg共同構(gòu)成了損失函數(shù)lSR:
lSR=0.006lSRper+10-3lSRadv+
lSRimg+2e-8tvloss
(4)
其中,使用內(nèi)容損失函數(shù)lSRimg和Total Variation Loss(tvloss)一起約束噪聲.內(nèi)容損失lSRimg定義為:
(5)
在圖像中,Total Variation Loss定義為:
(6)
其中,x表示圖像的像素值,β默認設(shè)置為2.
此外,感知損失函數(shù)lSRper采用5層特征融合,而不是簡單的VGG19輸出層的特征損失.感知損失計算如下:
(7)
(8)
對抗損失函數(shù)是基于所有訓(xùn)練樣本重建后和原始高分辨率圖像一起輸入判別器,然后被判別器判別為原始高分辨率圖像IHR的概率定義的.對抗損失用來描述真實高分辨率圖像IHR和經(jīng)過重建的超分辨率圖像ISR之間的相似性.損失越小,則說明重建的超分辨率圖像越逼近真實高分辨率圖像,生成器網(wǎng)絡(luò)生成的圖像質(zhì)量越高,圖像重建效果越好.對抗損失用公式表示為:
(9)
目前使用較為廣泛且客觀的圖像質(zhì)量評價指標有兩種,峰值信噪比(PSNR)和結(jié)構(gòu)相似性(SSIM).其中,PSNR用來表示局部信息丟失的多少[15],單位為dB.其定義式為:
(10)
其中,MSE是原始圖像和重建圖像的均方誤差.
結(jié)構(gòu)相似性(SSIM)在算法設(shè)計上充分考慮人眼主觀感受特性,是一種衡量數(shù)字圖像的主觀感受方法,比一般方法更符合人眼的主觀感受效果.該計算方式通過比較亮度,對比度和結(jié)構(gòu)三項指標來評估原始圖像和重建圖像的相似程度[16],其定義式為:
SSIM(X,Y)=l(X,Y)·c(X,Y)·s(X,Y)
(11)
(12)
(13)
(14)
其中,原真實圖像和重建圖像的均值用μX、μY分別表示,方差用σX、σY分別表示,協(xié)方差用σXY表示,C1、C2、C3為常數(shù).
實驗使用公開基準數(shù)據(jù)集Set5、Set14、BSD100進行測試.實驗運行環(huán)境的基本硬件為英特爾Core i5-9 600 k @ 3.70GHz 六核處理器,內(nèi)存32GB,兩塊Nvidia GeForce GTX 1080 Ti(8G)顯卡.
實驗中,利用本文提出的方法實現(xiàn)了4倍放大因子的情況下三個基準圖像數(shù)據(jù)集的超分辨率重建效果,并從基準數(shù)據(jù)集中選取了一些圖像進行測試,最后測試結(jié)果放大細節(jié)后比較實驗效果.如圖6-8所示,分別是Set5、Set14、BSD100.每組圖從左至右依次是輸入的待重建低分辨率圖像、雙三次插值(Bicubic)后的圖像、SRResNet重建后的圖像、SRGAN重建后的圖像、本文方法重建后的圖像和原始高分辨率圖像.依次與Bicubic,SRResNet,SRGAN三種方法進行了比較,本文提出的基于密連接的GAN方法最終效果相對更好.其中,圖6雙立方插值效果明顯最差,而SRResNet,SRGAN和本文的方法整體差別不大,細節(jié)重建都不夠優(yōu)秀,但是SRResNet重建的圖像邊緣呈鋸齒狀,基于密連接的GAN相比SRGAN的邊緣看起來稍加清楚,但總體上都沒能很好地重建原始圖像中類似“毛邊”的細節(jié).圖7中重建動物的毛發(fā)細節(jié)效果明顯增強,很顯然,基于密連接的GAN重建效果是最好的,SRGAN次之.圖8中,各方法對比效果不太明顯,沒有一種方法能夠完整顯示字母‘A’輪廓,但相對來說,基于密連接的GAN方法做得最好.
總體來說,基于密連接的GAN的最終重建效果最好,重建后的圖像包含更多的細節(jié)信息,例如動物毛發(fā)、邊緣輪廓等都更加清晰.最后對重建的圖像效果進行定量指標評價,如表1所示,本文的方法相比SRGAN,PSNR提升了1.30 dB,SSIM提升了0.03.
(a)LR (b)Bicubic (c)SRResNet (d)SRGAN (e)Ours (f)HR
(a)LR (b)Bicubic (c)SRResNet (d)SRGAN (e)Ours (f)HR
(a)LR (b)Bicubic (c)SRResNet (d)SRGAN (e)Ours (f)HR
表1 不同方法重建效果定量指標比較
Table 1 Comparison of quantitative indicators for reconstruction effects of different methods
數(shù)據(jù)集Bicubic[16]PSNR/SSIMSRResNet[13]PSNR/SSIMSRGAN[13]PSNR/SSIMOursPSNR/SSIMSet528.46/0.8130.51/0.8829.40/0.8530.70/0.88Set1425.98/0.7027.19/0.7826.02/0.7426.89/0.79BSD10025.84/0.67/25.16/0.6726.53/0.74
運用GAN強大的圖像生成能力構(gòu)建了基于密連接的生成對抗網(wǎng)絡(luò)圖像超分辨率重建模型,該網(wǎng)絡(luò)模型將SRGAN生成器模型中的ResNet改為DenseNet,充分利用各層的特征映射,加快了網(wǎng)絡(luò)的收斂速度,同時能夠使參數(shù)共享,加深網(wǎng)絡(luò)層次的同時,降低計算成本.改進后的生成器網(wǎng)絡(luò)重建圖像的效果優(yōu)秀,在客觀評價指標上也取得了良好的表現(xiàn),比較現(xiàn)存算法優(yōu)勢明顯.接下來,繼續(xù)改進網(wǎng)絡(luò)模型,優(yōu)化損失計算,進一步提高重建圖像的細節(jié)和紋理特征,提升網(wǎng)絡(luò)訓(xùn)練的效率.