劉 恒,梁 媛,潘 斌,劉琳珂,侯 健
(1.遼寧石油化工大學 信息與控制工程學院,遼寧 撫順 113001;2.遼寧石油化工大學 理學院,遼寧 撫順 113001)
圖像是人類傳遞信息的常用方式之一,但受拍攝設(shè)備和天氣等因素的影響,獲取的圖像在分辨率上往往不盡人意。圖像超分辨率重建技術(shù)在一定程度上滿足了人們對高質(zhì)量圖像的需求,并且在視頻監(jiān)控、醫(yī)學影像、圖像壓縮等領(lǐng)域廣泛應用。
實現(xiàn)單幅圖像超分辨率重建的方法有三大類,分別是基于插值、重建和學習的方法。其中,基于插值的方法[1]是依據(jù)低分辨率圖像的像素灰度值估算其它像素點的灰度值,進而實現(xiàn)超分辨率圖像的重建。但是采用該方法獲得的重建圖像,在邊緣會產(chǎn)生鋸齒效應和塊效應?;谥亟ǖ姆椒ǎ?]是建立圖像的退化模型,利用退化前后低分辨率圖像的誤差進行迭代,優(yōu)化求解,從而重建出高分辨率圖像。但是該方法依賴高分辨率圖像的先驗知識,所以不適合做放大倍數(shù)的圖像重建?;趯W習的方法[3]是輸入一組高分辨率和低分辨率圖像對,利用低分辨率圖像對模型進行訓練,學習低分辨率圖像與高分辨率圖像的對應關(guān)系,從而更好地輸出超分辨率圖像。與其他兩類方法相比,基于學習的方法重建的圖像具有更好的視覺效果。
近年來,基于深度學習的方法成為研究重點。2014年,卷積神經(jīng)網(wǎng)絡(luò)首次被Dong等[4]引入圖像超分辨率重建技術(shù)中,提出SRCNN(Superresolution convolutional neural network)算法,但該算法運行效率低。2016年,Dong等針對該問題,提出FSRCNN(Fast super-resolution convolutional neural networks)算法[5],將需要提高分辨率的圖像直接輸入網(wǎng)絡(luò),從而提高運行效率,但是圖像重建效果一般。為了避免輸入圖像預處理帶來的重構(gòu)偽影,Lai等將拉普拉斯金字塔引入圖像超分辨率重建中,提出LapSRN(Laplacian pyramid super-resolution network)算法[6],在圖像特征空間域和通道域采用均等處理,浪費計算資源。現(xiàn)有算法沒有考慮超分辨率圖像重建模型的自適應性問題,限制了圖像的重建質(zhì)量。
本文引入基于雙注意力機制的對偶學習算法,在深層特征提取模塊引入注意力機制,提高重建精確度,從而優(yōu)化重建過程中的映射關(guān)系;在處理圖像特征空間域和通道域時,更多關(guān)注目標任務顯著性的特征,從而使計算資源得到最大化的利用。采用對偶學習策略,為低分辨率圖像提供額外的重建監(jiān)督,減少映射函數(shù)的可能空間,并通過迭代反饋誤差有效指導超分辨率圖像重建,以更好地解決超分辨率圖像重建模型的自適應性問題。
本文算法分為兩個子網(wǎng)絡(luò),即原始重建網(wǎng)絡(luò)和對偶學習網(wǎng)絡(luò)。其中,原始重建網(wǎng)絡(luò)包含三個模塊:淺層信息提取模塊、深層信息提取模塊和重建模塊。淺層特征提取模塊和深層特征提取模塊包含的基本模塊數(shù)由放大倍數(shù)S決定,為log2S個基本模塊。淺層特征提取模塊的每個基本模塊依次由卷積層、激活函數(shù)、卷積層組成;深層特征提取模塊每個基本塊由一個雙重注意力模塊、亞像素卷積層和卷積層組成。網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
圖1 基于雙注意力機制的對偶學習算法網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Dual learning algorithm network structure based on dual attention mechanism
淺層特征提取時,首先對原始圖像預處理,采用雙三次插值法將圖像尺寸放大至與輸出圖像相同,記作ILR,將其作為輸入圖像,使用3×3卷積核提取ILR的特征,記為;接著使用3×3卷積核、以2為步長做卷積操作,使用Leaky ReLu函數(shù)激活,再通過3×3卷積核、以1為步長做卷積操作,得到下采樣處理特征圖。下采樣次數(shù)為log2S,得到與原圖像尺寸相同的特征圖I,使用1×1卷積得到原圖像。計算過程
式中:S為圖像的放大倍數(shù);HSF()為單層卷積映射;()表示第一次進行卷積-激活函數(shù)-卷積操作。
深層特征提取時,將最后一次下采樣得到的特征圖作為雙注意力機制模塊的輸入,之后使用亞像素卷積進行上采樣操作,這一過程同樣執(zhí)行l(wèi)og2S次。為了更好地進行特征融合,對上采樣得到的特征圖使用1×1卷積核降維,降維后的特征圖與尺寸相同的淺層特征圖進行特征融合,融合后的特征圖作為下一次雙注意力機制的輸入,特征融合次數(shù)為log2S次。
重建模塊中,對融合的特征圖進行卷積操作得到高分辨率圖像ISR即為所求圖像。計算過程
式中:HUP()為上采樣操作,上標表示第幾次執(zhí)行上采樣操作;HCASA()為雙重注意力操作,上標1表示第1次執(zhí)行雙注意力操作;⊕表示特征融合操作。
對偶學習中,用重建高分辨率圖像下采樣生成低分辨率圖像。當放大倍數(shù)為S時,基本模塊數(shù)為log2S個。對偶模塊框架如圖2所示。
圖2 對偶模塊框架Fig.2 Dual module framework
受CBAM(Convolutional block attention module)算法[7]的啟發(fā),將雙重注意力機制的內(nèi)部結(jié)構(gòu)設(shè)置為通道注意力模塊和空間注意力模塊,如圖3所示。
圖3 雙重注意力機制的結(jié)構(gòu)Fig.3 Structure of dual attention mechanism
1.2.1 通道注意力 通道注意力機制即網(wǎng)絡(luò)通過自動學習的方式獲取每個特征通道的顯著性,并且據(jù)此給每一個特征通道賦予一個權(quán)重值,從而使網(wǎng)絡(luò)將重點放在信息多的特征上,重新標定前面得到的特征。其結(jié)構(gòu)如圖4所示。
圖4 通道注意力機制的結(jié)構(gòu)Fig.4 Structure of channel attention mechanism
首先對輸入的特征圖H×W×C進行全局平均池化,得到1×1×C的特征向量,計算式
式中:C為特征圖的個數(shù);H×W表示特征圖的尺寸;uc(i,j)為特征圖第c個通道位置在(i,j)的像素值;Fsq()為全局平均池化操作,用來求出每個特征圖對應的均值。
使用兩個全連接層建立通道與通道間的相關(guān)性,并根據(jù)網(wǎng)絡(luò)學習各通道的重要程度對特征圖的權(quán)重進行調(diào)整,計算式
其中,F(xiàn)ex為特征提取函數(shù);W1和W2分別為兩個1×1卷積層的權(quán)重,W1以比率r的形式進行通道縮減,W2以比率r的形式進行通道增加,通過訓練網(wǎng)絡(luò)學習不斷調(diào)整權(quán)重值。
最后,不同的通道乘上相應的權(quán)重,得到每個特征圖的權(quán)重。計算式
式中:xc為新的特征圖;sc為第c個通道的權(quán)重;uc為第c個通道;Fscale為sc和uc的乘積函數(shù)。
1.2.2 空間注意力 每個通道的特征圖顯著性不同,每個特征圖上不同位置的紋理細節(jié)也是不同的,由此,本文引入空間注意力模塊,捕捉圖像的紋理細節(jié)。網(wǎng)絡(luò)結(jié)構(gòu)如圖5所示。將H×W×C的特征圖F同時進行一個通道維度的平均池化和最大池化,得到兩個H×W×1的通道描述,之后將兩個描述按通道完成拼接。為保證拼接后的描述能強化所有空間位置并實現(xiàn)非線性映射,本文使用7×7卷積核進行卷積操作,采用Sigmoid激活函數(shù)得到權(quán)重矩陣Ms,并將其與特征圖F的權(quán)重信息相乘,得到具有新權(quán)重的特征圖。
圖5 空間注意力機制的結(jié)構(gòu)Fig.5 Structure of spatial attention mechanism
對偶回歸網(wǎng)絡(luò)通過反饋信息對學習任務的效果進行加強和指導,結(jié)構(gòu)如圖6所示。將低分辨率圖像輸入原始重建網(wǎng)絡(luò),生成高分辨率圖像,再利用對偶網(wǎng)絡(luò)將其轉(zhuǎn)化為低分辨率圖像。這一過程存在噪聲[8],因此轉(zhuǎn)化后的低分辨率圖像與原始圖像之間存在差異。若將這個差異最小化,可同時改進兩個子網(wǎng)絡(luò)模型的性能??紤]到對偶任務概率分布之間的聯(lián)系,在訓練過程中加入約束條件:目標函數(shù)1
圖6 對偶學習網(wǎng)絡(luò)結(jié)構(gòu)Fig.6 Dual learning network structure
目標函數(shù)2
式中:l為兩個函數(shù)的差異函數(shù);f和g是兩個對偶網(wǎng)絡(luò)的模型;θxy為低分辨率圖像到高分辨率圖像的映射;θyx為高分辨率圖像到低分辨率圖像的映射;x為低分辨率圖像;y為高分辨率圖像;P(x)P(y|x;θxy)為對偶學習對原始重建模型的約束;P(y)P(x|y;θyx)為原始重建模型對對偶模型的約束。
為了求解這個問題,使用拉格朗日乘數(shù)法,為兩個目標函數(shù)增加乘數(shù)項
若能較好地估計P(x)和P(y),對偶學習算法就能提升兩個對偶網(wǎng)絡(luò)的性能。
兩個子網(wǎng)絡(luò)都使用L1損失函數(shù),則原始重建網(wǎng)絡(luò)的損失函數(shù)為LP(P(xi),yi),其中,i為第i張圖像,P(xi)為超分辨率圖像,y原始高分辨率圖像。對偶網(wǎng)絡(luò)的損失函數(shù)表示為LD(D(P(xi)),xi),其中,D(P(xi))表示超分辨率圖像下采樣得到的低分辨率圖像;x表示由預處理圖像經(jīng)過淺層特征提取模塊卷積得到的低分辨率圖像??倱p失函數(shù)為
其中λ為超參數(shù),用來控制兩個網(wǎng)絡(luò)的權(quán)重。
實驗使用pytorch框架對網(wǎng)絡(luò)進行構(gòu)建,實驗操作系統(tǒng)為64位Ubuntu18.04,計算平臺版本為CUDA10.0,硬件配置為Intel Xeon(R)Platinum 8160 CPU,250G內(nèi)存,GPU為4張NVIDIAP100。
注意力卷積核數(shù)為64,每次上采樣前包含30個注意力模塊;采用自適應矩估計優(yōu)化器,β1=0.9,β2=0.999;對偶回歸中的權(quán)重λ為0.1,批量大小為6。本文算法放大4倍圖像重建的參數(shù)設(shè)置如表1所示。
表1 訓練模型網(wǎng)絡(luò)參數(shù)Tab.1 Network parameters of training model
使用的訓練集為DIV2K和Flickr2K,基準數(shù)據(jù)集為Set5、Set14、B100、Urban100。
從主觀與客觀兩方面對圖像的重建質(zhì)量進行評估。以峰值信噪比(Peak signal-to-noise ratio,PSNR)、結(jié)構(gòu)相似度(Structural similarity,SSIM)以及重建時間作為客觀評價的指標。其中,PSNR值越大,圖像失真的程度就越小,即圖像的重建效果越好;SSIM值越接近于1,重建圖像與真實圖像就越接近。主觀評價依據(jù)直觀的視覺效果,對圖像的重建質(zhì)量進行評估。
(1)算法性能及時間分析。分別在4個基準數(shù)據(jù)集上完成算法的性能評估及重建時間分析,并與SRCNN算法進行對比,實驗結(jié)果如表2所示。雖然本文算法的重建時間比SRCNN算法平均每張圖像多消耗0.03~0.2 s,但是本文算法的PSNR值和SSIM值都高于SRCNN算法。尤其是在Set14數(shù)據(jù)集中,相比SRCNN算法,本文算法平均每張圖像的重建時間縮短了0.01 s,且PSNR值提高1.16 dB,SSIM提升0.018。本文算法的性能以及重建效率均可滿足相關(guān)應用的需要。
表2 在放大2倍和4倍下PSNR、SSIM及時間分析Tab.2 PSNR,SSIMand time analysis under 2 times and 4 times magnification factors
(2)不同算法性能對比。設(shè)置相同實驗參數(shù),將本文算法與Bicubic、SRCNN、ESPCN(Efficient sub-pixel convolutional neural network)、DRRN(Deep recursive residual network)、LapSRN、DBPN(Deep back-projection networks)算法進行對比,結(jié)果如表3所示。當放大倍數(shù)為2和4時,本文算法的峰值信噪比和結(jié)構(gòu)相似度都高于其他算法。
表3 不同算法在圖像放大2倍和4倍下PSNR和SSIM對比Tab.3 Comparison of PSNR and SSIM for different algorithms under 2 times and 4 times magnifications
(3)不同算法的視覺效果對比。將本文算法與原始高分辨率圖像(High resolution,HR)、低分辨率圖像(Low resolution,LR)、Bicubic、SRCNN、DRRN、LapSRN和DBPN算法從重建圖像的視覺效果上進行對比。從基準數(shù)據(jù)集中隨機選取圖像,將其輸入到各網(wǎng)絡(luò)模型中,重建圖像的局部放大圖與真實圖像的局部放大圖詳見圖7和圖8。與其他算法相比,本文算法重建的高分辨率圖像,在邊緣和紋理細節(jié)上更加清晰,與真實圖像的視覺效果更接近。
圖7 Set5圖像放大2倍下不同算法的視覺效果對比Fig.7 Comparison of visual effects of different algorithms under 2 times magnification of Set5 image
圖8 Set14圖像放大4倍下不同算法的視覺效果對比Fig.8 Comparison of visual effects of different algorithms under 4 times magnification of Set14 image
為了解決圖像重建的自適應問題和避免圖像重建浪費過多計算資源,本文引入雙注意力機制和對偶學習用于單幅圖像超分辨率重建。算法使用對偶學習減少低分辨率圖像到高分辨圖像的函數(shù)映射空間,并且結(jié)合通道注意力機制和空間注意力機制獲取不同位置不同通道的權(quán)重值,使網(wǎng)絡(luò)可以依據(jù)權(quán)重高效分配計算資源,同時使用極少的參數(shù)提高超分辨率重建的質(zhì)量。在基準數(shù)據(jù)集Set5、Set14、BSDS100、Urban100上進行放大2倍和4倍的重建測試實驗,并對比峰值信噪比和結(jié)構(gòu)相似度指標。實驗結(jié)果表明,與Bicubic、SRCNN、ESPCN、DRRN、LapSRN算法相比,本文算法的峰值信噪比和結(jié)構(gòu)相似度都高于其他算法,視覺效果比其他算法圖像更清晰。本文算法的重建時間比SRCNN算法稍長或持平。