徐 健,高 艷,范九倫
(西安郵電大學(xué) 通信與信息工程學(xué)院,陜西 西安 710121)
圖像超分辨率(super resolution,SR)是指從低分辨率(low resolution,LR)圖像中恢復(fù)高分辨率(high resolution,HR)圖像的過程[1],隨著深度學(xué)習(xí)的發(fā)展,大多數(shù)圖像處理方法使用卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)來實(shí)現(xiàn)圖像重建[2]。目前提高網(wǎng)絡(luò)性能的方法主要包括兩種:1)改進(jìn)網(wǎng)絡(luò)結(jié)構(gòu);2)添加先驗(yàn)信息。在改進(jìn)網(wǎng)絡(luò)結(jié)構(gòu)方面,文獻(xiàn)[3]率先提出一種基于CNN的3層模型;文獻(xiàn)[4]提出了殘差神經(jīng)網(wǎng)絡(luò);文獻(xiàn)[5]提出添加擴(kuò)展濾波器,雖然比文獻(xiàn)[4]提出的方法網(wǎng)絡(luò)層多了50 %,但效果更好。在添加先驗(yàn)信息方面,文獻(xiàn)[6]提出了使用語義信息加入網(wǎng)絡(luò)重建模型的方法;文獻(xiàn)[7]在網(wǎng)絡(luò)模型中添加了多個降級模型。然而,大多數(shù)網(wǎng)絡(luò)需要依靠外部數(shù)據(jù)進(jìn)行訓(xùn)練,收斂速度慢且只有在滿足訓(xùn)練條件時才對圖像的重建效果較好。因此,基于自學(xué)習(xí)的方法具有巨大的優(yōu)勢,但基于自學(xué)習(xí)的方法存在訓(xùn)練樣本不足易使網(wǎng)絡(luò)欠擬合,進(jìn)而導(dǎo)致圖像重建效果較差。
本文提出一種特征增強(qiáng)式提取的網(wǎng)絡(luò)結(jié)構(gòu)對圖像的特征進(jìn)行深層提取,該網(wǎng)絡(luò)致力于尋找和利用單幅圖像的內(nèi)在信息,用一張低分辨率圖像作為訓(xùn)練和測試樣本,訓(xùn)練一個CNN,實(shí)現(xiàn)對該低分辨率圖像的重建。實(shí)驗(yàn)結(jié)果表明:本文方法克服了外部學(xué)習(xí)運(yùn)算時間長和訓(xùn)練慢的缺陷,并解決了自學(xué)習(xí)樣本不足導(dǎo)致網(wǎng)絡(luò)易欠擬合的問題。
CNN圖像超分辨率方法是近年來的研究熱點(diǎn)[8,9]。CNN主要是通過對包含高/低分辨率圖像數(shù)據(jù)集進(jìn)行訓(xùn)練學(xué)習(xí)得到系統(tǒng)模型,不需要借助圖像處理算法分析圖像的特征,也不需要構(gòu)造高/低分辨率圖像塊字典[10]。文獻(xiàn)[3] 率先成功地將CNN引入圖像超分辨率,該方法將傳統(tǒng)的處理圖像超分辨率的策略即稀疏編碼[11]的3個階段:特征提取、非線性映射、圖像重建,統(tǒng)一到一個CNN,實(shí)現(xiàn)了圖像的重建,如圖1所示。
圖1 圖像超分辨率重建過程
1)特征提?。簭牡头直媛蕡D像中提取多個圖像塊,每個塊經(jīng)過卷積操作,得到多維向量,將所有的特征向量組成特征矩陣。2)非線性映射:將n1維特征矩陣,通過卷積操作實(shí)現(xiàn)非線性映射,變換為另一n2維特征矩陣。3)圖像重建:將n2維特征矩陣經(jīng)過反卷積[12],還原為超分辨率圖像。
本文用一張低分辨率圖像LR作為訓(xùn)練樣本和測試樣本,訓(xùn)練一個CNN實(shí)現(xiàn)了對該LR圖像的超分辨率重建。具體做法是:首先,對該LR圖像I下采樣得到下采樣圖像Is,(s為采樣因子);其次,學(xué)習(xí)二者之間的映射關(guān)系;最后,將學(xué)習(xí)到的映射關(guān)系用于LR圖像的重建,即可得到重建圖像Is即高分辨率圖像HR,網(wǎng)絡(luò)設(shè)計(jì)思想如圖2所示。
圖2 網(wǎng)絡(luò)設(shè)計(jì)思想
由于只有一個實(shí)例圖像I沒有借助外部訓(xùn)練集,缺乏訓(xùn)練樣本,所以,本文對該低分辨率圖像I進(jìn)行不同倍率的下采樣,得到圖像本身以及多個不同倍率的下采樣版本In,其中n∈Z+,并將得到的In進(jìn)行旋轉(zhuǎn)、鏡像等增強(qiáng)操作繼續(xù)擴(kuò)充樣本,如式(1)所示
Ie=f(In,A,M)
(1)
式中Ie為擴(kuò)充后的圖像樣本,f為對樣本集In進(jìn)行增強(qiáng)操作,A為將圖像進(jìn)行不同角度的旋轉(zhuǎn),M為將圖像進(jìn)行鏡像翻轉(zhuǎn)。
本文利用圖像內(nèi)在信息的重現(xiàn)性搭建了一個相對輕量且簡單的網(wǎng)絡(luò),可以適應(yīng)每個圖像的不同設(shè)置,能夠得到較好的重建結(jié)果。網(wǎng)絡(luò)由特征提取單元、特征增強(qiáng)單元、殘差單元和重建單元4個單元組成。
2.2.1 特征提取單元
特征提取單元是對下采樣后的低分辨率圖像進(jìn)行淺層特征提取,為了避免圖像信息的流失和控制計(jì)算量,選取的卷積核大小為3×3,輸入圖像為三通道的彩色(RGB)圖像,所以濾波器設(shè)置為[3,3,3,64]。
2.2.2 特征增強(qiáng)單元
特征增強(qiáng)單元是對特征提取單元提取到的淺層特征進(jìn)行再次提取。特征提取單元對圖像只是進(jìn)行了淺層的提取,丟失了很多重要的細(xì)節(jié)信息,所以,本文設(shè)計(jì)一個增強(qiáng)單元提取圖像的深層特征。具體做法是:將前一層提取到的圖像特征與當(dāng)前層提取到的特征進(jìn)行線性堆疊,如式(2)所示
Fn+1=a*Fn+(1-a)*Fn-1
(2)
式中Fn為當(dāng)前層提取的圖像特征,Fn-1為前一層輸出的圖像特征,Fn+1為當(dāng)前層下一層的輸入,n為隱含層的層數(shù),為了控制網(wǎng)絡(luò)的深度,只選取了4層進(jìn)行增強(qiáng),a為經(jīng)過大量實(shí)驗(yàn)得到的乘積因子,當(dāng)a取0.6時,對圖像的重建效果最好,整個增強(qiáng)過程如式(3)所示
Fn+1=R(C(Fn,Fn-1))
(3)
式中C為線性堆疊操作,R為激活操作,為了更好擬合隱含層間的關(guān)系,每一層都用ReLU函數(shù)進(jìn)行激活。
2.2.3 殘差單元
殘差單元是為了充分利用圖像的內(nèi)在信息。在這個單元用了長/短跳躍連接,如圖3所示。低分辨率圖像中含有豐富的低頻信息,可直接用于圖像的重建,所以,用了一個長跳躍連接將輸入的低頻圖像和經(jīng)過網(wǎng)絡(luò)重建得到的高頻細(xì)節(jié)進(jìn)行連接。不同于以往的殘差學(xué)習(xí),只是將當(dāng)前層直接傳遞給下一層,本文用了幾個短跳躍連接將網(wǎng)絡(luò)前幾層輸出分別傳遞給后幾層,傳遞方式可以如式(4)所示
圖3 殘差單元中的連接方式
Fp+1=Fp+Fq-p
(4)
式中F為提取特征的操作,Fp+1為p+1層的輸入,而Fp和Fq-p為各個隱含層的輸出,其中p和q均為網(wǎng)絡(luò)的層數(shù),不同的是q為網(wǎng)絡(luò)的總層數(shù),同樣為了不增加網(wǎng)絡(luò)的復(fù)雜度,將p的取值范圍設(shè)定為(1~(q/2-1))。
2.2.4 重建單元
重建單元是輸出網(wǎng)絡(luò)最終的重建圖像,其由兩部分組成,分別是輸入的低分辨率圖像和經(jīng)過網(wǎng)絡(luò)訓(xùn)練學(xué)習(xí)得到的高頻細(xì)節(jié),如式(5)所示
Ioutput=Iinput+Ifinal
(5)
式中Iinput和Ioutput為網(wǎng)絡(luò)的輸入與輸出,Ifinal為網(wǎng)絡(luò)學(xué)習(xí)得到的高頻細(xì)節(jié)。本文的網(wǎng)絡(luò)結(jié)構(gòu)如圖4所示。
圖4 網(wǎng)絡(luò)結(jié)構(gòu)
由圖4可知,該網(wǎng)絡(luò)是一個端到端(end-to-end)的結(jié)構(gòu),即輸入低分辨率(LR)圖像通過訓(xùn)練網(wǎng)絡(luò)可以得到高分辨率(HR)圖像。該網(wǎng)絡(luò)由兩部分組成:1)分特征提取單元,包括淺層特征提取和深層特征提取,其中深層提取部分加入了增強(qiáng)單元;2)殘差學(xué)習(xí)單元,加入了殘差組,連接方式如2.2.3節(jié)所述。
本文實(shí)驗(yàn)平臺的操作系統(tǒng)為 Windows10,軟件環(huán)境為Pycharm 3.0,電腦處理器為 (GPU:1070Ti;CPU:AMD Ryzen5 2600 Six-Core Processor 3.85 GHz)。
訓(xùn)練集和測試集來自數(shù)據(jù)集Set5,Set14和Ur-ban100的圖像。測試的低分辨率圖像由高分辨率圖像下采樣得到的,其中下采樣使用了雙三次差值法。訓(xùn)練集是由測試集的圖像擴(kuò)充得到的,具體做法是:將測試圖像隨機(jī)旋轉(zhuǎn)90°,180°和270°之后,用隨機(jī)采樣因子[0.5,0.6,0.7,0.8,0.9]對旋轉(zhuǎn)后的樣本進(jìn)行下采樣。
本文網(wǎng)絡(luò)設(shè)計(jì)了10個隱含層,每一層有64個通道。搭建網(wǎng)絡(luò)時,首先為節(jié)點(diǎn)分配了隨機(jī)權(quán)重和偏差值,一旦收到單次迭代的輸出,就可以計(jì)算出網(wǎng)絡(luò)的損失,然后將該損失通過反向傳播算法反饋給網(wǎng)絡(luò)以更新網(wǎng)絡(luò)的權(quán)重。具體做法是:從0.001的學(xué)習(xí)率開始,周期性地對重構(gòu)誤差進(jìn)行線性擬合。當(dāng)標(biāo)準(zhǔn)差大于擬合后的斜率時,將學(xué)習(xí)率除以10作為新的學(xué)習(xí)率,再次開始迭代;當(dāng)學(xué)習(xí)率小于設(shè)定的最小值時,停止迭代,并在網(wǎng)絡(luò)的訓(xùn)練階段加入了ADMA優(yōu)化器對網(wǎng)絡(luò)進(jìn)行優(yōu)化。
本文搭建的網(wǎng)絡(luò)包含增強(qiáng)單元、殘差單元和線性疊加單元,為了驗(yàn)證添加這些單元的必要性和有效性,設(shè)計(jì)了4種網(wǎng)絡(luò)結(jié)構(gòu)在數(shù)據(jù)集Urban100上以采樣因子2做對比試驗(yàn)。4種網(wǎng)絡(luò)結(jié)構(gòu)分別是:結(jié)構(gòu)1為增強(qiáng)單元+殘差單元;結(jié)構(gòu)2為增強(qiáng)單元+線性疊加單元;結(jié)構(gòu)3為殘差單元+線性疊加單元;結(jié)構(gòu)4為增強(qiáng)單元+殘差單元+線性疊加單元。4種網(wǎng)絡(luò)結(jié)構(gòu)的峰值信噪比(peak signal to noise ratio,PSNR)如表1所示。
表1 4種不同網(wǎng)絡(luò)結(jié)構(gòu)的PSNR的比較結(jié)果
分析表1可知,結(jié)構(gòu)4的PSNR值最高,即當(dāng)網(wǎng)絡(luò)結(jié)合了增強(qiáng)單元、殘差單元以及線性疊加單元時,對圖像的超分辨率重建效果最好。
4.2.1 主觀評價(jià)
為了評定本文方法的性能,將本文的結(jié)果與一些現(xiàn)有方法A+[11],ZSSR[13],EDSR[14]的結(jié)果進(jìn)行了對比,如圖5、圖6和圖7所示。
圖5 不同方法對人臉圖像的超分結(jié)果對比
圖6 不同方法對建筑圖像1的超分結(jié)果對比
圖7 不同方法對建筑圖像2的超分結(jié)果對比
分析圖5、圖6和圖7可知,在對人臉圖像進(jìn)行超分辨率重建時,本文的方法與現(xiàn)有一些方法效果相當(dāng),但在對建筑圖像進(jìn)行重建時,本文方法能夠得到視覺效果顯著提升的高分辨率圖像。
4.2.2 客觀評價(jià)
本文通過計(jì)算PSNR結(jié)構(gòu)相似性(structural similarity,SSIM) ,對幾種方法進(jìn)行了定量評估,以采樣因子2,3,4,在數(shù)據(jù)集set5,set14和Urban100上進(jìn)行數(shù)據(jù)對比,具體如表2所示。
表2 不同方法的PSNR/SSIM比較結(jié)果
分析表2的結(jié)果可知,本文的方法相比于機(jī)器學(xué)習(xí)方法A+,深度學(xué)習(xí)的外部學(xué)習(xí)方法EDSR以及深度學(xué)習(xí)的自學(xué)習(xí)方法ZSSR,本文方法能夠得到PSNR更高且視覺效果更好的高分辨率圖像。
針對基于CNN的自學(xué)習(xí)圖像超分辨率現(xiàn)有方法訓(xùn)練樣本不足導(dǎo)致網(wǎng)絡(luò)容易出現(xiàn)欠擬合的問題,提出一種特征增強(qiáng)式提取的網(wǎng)絡(luò)結(jié)構(gòu)用于圖像超分辨率重建。在網(wǎng)絡(luò)中設(shè)計(jì)了增強(qiáng)單元和殘差單元用于提取圖像的深層特征,在增強(qiáng)單元中加入了線性堆疊去除冗余信息,在殘差單元中加入長短跳躍連接避免有效信息的流失,并通過自學(xué)習(xí)的方法充分利用了圖像的內(nèi)部自相似性以及借助CNN的力量實(shí)現(xiàn)了對低分辨率圖像的重建。結(jié)果表明:本文網(wǎng)絡(luò)與現(xiàn)有方法相比,在對建筑圖像進(jìn)行超分辨率重建時,PSNR提高了0.5~1 dB。