方金生,朱古沛
1.閩南師范大學 計算機學院,福建 漳州 363000
2.數據科學與智能應用福建省高校重點實驗室(閩南師范大學),福建 漳州 363000
圖像超分辨率重建(super-resolution reconstruction,SR)技術是由低分辨率(low-resolution,LR)圖像重建出高分辨率(high-resolution,HR)圖像,在醫學、多媒體等領域有諸多應用,是近幾年的研究熱點[1]。然而SR是一個典型的病態問題,即一幅LR圖像對應多幅HR圖像[2]。為解決這個問題,研究人員先后提出了諸多基于先驗信息來限制重建的解空間的數值法[3]和基于學習的方法[4],但這些方法都無法獲得令人滿意的效果。如何有效地從LR圖像中恢復HR圖像且不出現失真是該領域的研究重點。
近年來,深度學習在計算機視覺和自然語言處理等領域都展現出了強大性能[5],國內外研究團隊由此提出了諸多基于深度學習的SR模型[6-11]。Dong等人提出了第一個基于卷積神經網絡(convolutional neural network,CNN)的圖像SR方法SRCNN[12],該方法首先對LR圖像進行雙三次插值[13]上采樣預處理,再經過三層卷積神經網絡進行圖像重建過程。由于該算法速度較慢,Dong等人提出加速模型FSRCNN[14],該算法采用卷積層代替雙三次插值,使用更小的卷積核以及更多的特征通道,同時在最后一層引入反卷積進行上采樣,有效地加快了網絡速度。He等人提出殘差學習網絡ResNet[15],其中的殘差學習方法能夠有效地解決深層網絡的梯度消失和梯度爆炸問題,并且能加快網絡的收斂速度。由此,殘差網絡成為研究人員加深網絡來提高性能的重要方法。隨后,Kim等人首次將殘差學習引入SR領域,構建一個深層網絡模型VDSR[16],提高了重建精度且實現多尺度重建。Lim等人將原殘差模塊中的批歸一化層去除并在殘差支路乘以一個小的系數,由此提出了EDSR[17],該方法實現了多尺度的精確重建,但也使得網絡參數量高達43×106。然而,SR技術是為從LR圖像中恢復更多細節,即高頻信息,然而大多數網絡模型[14,17-18]對每個通道特征進行相同權重處理,則會導致對低頻特征進行不必要的計算,從而降低深層網絡的性能。因此,Zhang等人提出了RCAN[19],將通道注意(channel attention,CA)加入到嵌套的殘差結構中,構建出超過四百層的大規模網絡,大幅提高峰值信噪比(peak signal to noise ratio,PSNR)。
上述方法均通過加深或加寬網絡以獲得更優的網絡性能。但是,規模過大的網絡模型會消耗更大的存儲空間以及計算負擔,不適合應用于計算能力受限的設備以及對實時性要求高的場合。所以,在設計網絡時需要考慮模型大小與重建性能之間的權衡問題[20-24]。
因此,設計輕量化的SR模型成為了重要的研究方向。Lai等人通過設計拉普拉斯金字塔結構提出LapSRN[20];Ahn等人通過設計級聯模塊提出CARN[21];Hui等人通過設計蒸餾模塊提出IDN[22];Hui等人進一步設計出信息多蒸餾塊提出IMDN[23];Liu等人對信息多蒸餾模塊繼續改進,構建出殘差特征蒸餾塊,提出了RFDN[24]。這些輕量級網絡模型均能以相對較低的模型參數量和計算復雜度獲得優異的重建性能,但均存在不足。LapSRN[20]逐步進行圖像上采樣使得網絡中會產生大尺度的特征映射,從而造成網絡計算量顯著增加;CARN[21]提出的級聯機制可以融合各層的信息,與此同時也因為使用稠密連接增加參數量和計算量;IDN[22]中的蒸餾結構不能有效篩選出需要進一步提煉的重要特征;IMDN[23]中的逐步細分模塊不夠高效以及通道分離操作缺乏靈活性;RFDN[24]在權衡參數和性能之間是相對較好的,但由于直接對各蒸餾模塊特征進行拼接融合,沒有充分利用網絡中的低、高頻信息,模型性能還有進一步提升的空間。
為此,本文提出一種輕量級的基于金字塔池化注意力機制網絡(light-weighted pyramid pooling-based attention network,LiPAN),實現以較小的參數量和計算量獲得更優的SR效果。該網絡包括特征提取和重建兩個階段,特征提取階段中包含信息蒸餾塊(information distillation block,IDB)、金字塔池化模塊(pyramid pooling module,PPM)以及反向注意力融合模塊(backward attention fusion module,BAFM)。IDB對特征進行提取操作,然后將各層特征蒸餾出來進行融合,再經過注意力模塊提取特征中關鍵的信息,該結構充分利用各層不同特征的信息,實現對特征的有效提取。PPM對特征進行不同尺度的池化,該模塊通過獲取更大的感受野得到更多的上下文先驗信息。BAFM對不同層次的特征進行融合,在融合前需經過注意力模塊對特征的空間信息進行關注度區分,相比于RFDN中簡單地將不同層次的特征進行跳躍拼接操作,BAFM能夠更加有效地融合不同層次的信息,從而重建出更加清晰的圖像。
綜上所述,本文的主要貢獻有三點:(1)提出了一種輕量級的基于金字塔池化注意力機制網絡,與其他輕量型網絡相比,在參數量相當的情況下本文的網絡可以得到更好的SR性能;(2)在信息蒸餾塊之后引入金字塔池化模塊,金字塔池化模塊能夠獲得更大的感受野以及更多的先驗信息,實驗證明該模塊能恢復更真實、尖銳的細節信息;(3)設計了一個反向注意力融合模塊,它將所有金字塔池化模塊之后的特征進行空間重要度區分之后進行融合,該設計在引入少量參數的情況下能夠進一步提高SR性能。
RFDB是RFDN的核心模塊[24],如圖1(a)所示,RFDB由3個1×1卷積(Conv-1)和3個淺殘差塊(SRB)組成,而SRB僅由一個3×3卷積(Conv-3)和一個恒等連接分支組成,如此設計能夠讓RFDB在不增加參數量的情況下更好地利用殘差學習的能力。在RFDB中,使用1×1卷積進行信息蒸餾,參數量和運算量都明顯得到了降低。

圖1 原始RFDB結構Fig.1 Structure of original RDFB
金字塔池化結構多用于圖像分割任務中,He等人提出了基于空間金字塔池化(SPP)結構的SPPNet[25],生成不同層次的特征圖,實現了CNN輸入圖像尺寸可變;Zhao等人構建金字塔池化模塊(PPM),提出PSPNet[26]方法,PPM是一個有層次的全局先驗結構,包含不同尺寸、不同子區域間的信息,比起SPP,PPM能夠進一步減少不同子區域間上下文信息的丟失,能夠在深層神經網絡的最終層特征圖上構造全局場景先驗信息。PPM首先將輸入圖像經過金字塔得到N個不同的子區域,金字塔池化模塊中不同層級的輸出包含不同大小的特征映射,在每個級別后使用1×1卷積,將對應級別的通道數量降為原本的1/N,然后通過雙線性插值直接對低維特征圖進行上采樣,得到與原始特征映射相同尺寸的特征圖,最后,融合各個層級的輸出特征,作為最終的金字塔池化全局特性。PPM通過不同尺度的池化層得到多尺度圖像特征,再將這些特征融合以獲取不同的圖像細節。
PPM的具體結構如圖2所示,若采用四階的金字塔池化模塊,即{1×1,2×2,4×4,8×8}的平均池化層,設i×idown表示尺度為i×i的自適應平均池化操作,up_i指第i層的上采樣操作,將輸入特征記為Fin,池化層的輸出Fpool_i可以表示為:

圖2 PPM結構圖Fig.2 Structure of PPM

其中,Fup_i和Fdown_i分別代表第i階段特征的上采樣和下采樣函數,Fr定義為1×1特征降維卷積。因此,PPM的輸出可以描述為:

式中,Fr表示1×1卷積的降維函數,Concat表示在特征通道維度上進行拼接操作。
近年來注意力機制被廣泛應用于計算機視覺研究中,比如圖像分類、目標檢測以及圖像超分辨率等。SENet[27]算法成為ImageNet 2017競賽分類任務上的冠軍模型,該模型引入通道注意力,它可根據通道特征上不同的權重響應進行區分特征重要性。Hui等人在IMDN中進一步提出了CCA,與CA模塊相比,該模塊對通道權重依據進行了調整,由原來的均值升級為標準差與均值之和。Liu等人在RFANet[28]中提出增強的空間注意力(ESA),ESA先是進行1×1卷積減小通道維度,保證該結構的輕量化,然后設計步長為2的3×3卷積,再用大小為7×7,步長為3的最大池化操作進一步擴大感受野,從而能更大范圍地關注到特征中重要的空間信息。
本章主要介紹LiPAN算法的網絡結構及主要功能模塊IDB以及BAFM的具體實現方法。
如圖3所示,本文提出的網絡模型LiPAN由淺層特征提取、信息蒸餾塊IDB、金字塔池化模塊PPM、反向注意力融合模塊BAFM和上采樣模塊組成。IDB由蒸餾結構和ESA模塊組成,ESA能夠使特征信息更集中于感興趣區域,因而該結構在控制參數量的情況下能夠提取到更多的高頻信息,使得重建圖像的紋理更加以及邊緣更加尖銳[28];PPM進一步擴大感受野,提取不同尺度的上下文特征信息[26];最后,BAFM對不同層次的各種尺度特征進一步提取和融合,利用ESA對特性有效提取的優勢,可更為準確地重建圖像。

圖3 LiPAN結構圖Fig.3 Architecture of LiPAN
將輸入的LR圖像和輸出的HR圖像分別記為X和Y。首先,輸入的LR圖像X經過一個3×3卷積層得到淺層特征F0,然后F0經過n個IDB逐步提取特征,該過程記為:

其中,Rk表示第k個IDB函數,Fk-1和Fk分別表示第k個IDB的輸入和輸出特征。將IDB的輸出特征分別輸入金字塔池化模塊(第n個IDB的特征除外),則輸出特征為:

其中,Gk為第k個IDB經過PPM函數的特征輸出為第k個PPM函數。接著將所有的中間特征經過BAFM進一步融合各層次頻率信息:

其中,Ff和Rf分別代表融合后的輸出特征和BAFM函數。最后采用亞像素卷積上采樣層生成SR圖像Y:

其中Rup為上采樣函數。
圖4顯示了IDB的具體結構,由漸進細化模塊(progressive refinement module,PRM)和ESA組成。如圖4(a)所示,紅色虛線內為PRM,其中,SRB為淺殘差模塊,PRM由4個用于細化特征的SRB與4個用于蒸餾特征的1×1卷積Conv-1組成,最后將所有蒸餾特征進行融合。假設輸入特征為Fin,則4個階段的信息蒸餾過程如下[24]:

其中,DLi表示第i個階段的蒸餾層,RLi表示第i個階段的SRB塊,Fdistilled_i表示第i個階段的蒸餾特征,Frefined_i表示第i個階段的細化特征,最后將所有階段的蒸餾特征拼接起來作為PRM的輸出:

其中Concat表示在通道維度上進行拼接操作。
最后,如圖4(b)所示,ESA首先使用1×1卷積將輸入特征進行降維,再依次連接步長為2的卷積層、最大池化層,然后經過2個3×3卷積層、1個上采樣層、1個1×1卷積層,最后經過Sigmoid激活層產生的結果與原始輸入特征進行相乘得到最終結果。另外,將第一個1×1卷積降維后的特征與上采樣后的特征相加。若ESA運算記為Fesa,則IDB的輸出為:

圖4 IDB的結構Fig.4 Structure of IDB

其中Fr表示1×1卷積的降維函數。
如圖3所示,圖右下角表示反向注意力融合單元(backward attention fusion unit,BAFU),本文由5個BAFU組合而成BAFM模塊。該模塊將高層特征H5逐層向低層特征H1融合,對相鄰層的特征經過注意力機制ESA后進行融合,這樣可以有效地利用不同層次提取到的特征信息,并且可以獲得更多的上下文信息[8]。
BAFU主要由ESA和1×1卷積層組成,采用向后注意力融合策略,先經過ESA獲取關鍵重要的空間特征信息,再經過1×1卷積對不同層次的信息進行融合。這里定義第i個IDB函數的輸出為Fi,Fi再經過PPM函數的輸出定義為Gi,因此融合操作可以用公式表述為:

其中,Fesa為增強的空間注意力單元,Concat表示對相鄰層次的特征進行拼接,Conv為對特征進行融合并降維的1×1卷積。將中間層的特征從后往前依次進行特征融合,直到最終生成的融合特征H1。最后將H1與淺層的特征F0相加并傳播到上采樣層得到SR圖像。
本文算法的訓練數據集為DIV2K,該數據集包括800張高質量的訓練圖像和100張紋理豐富的驗證圖像[29]。LR圖像由對HR圖像進行雙三次下采樣操作獲取。本文在4種公共的數據集上進行模型的評估:Set5[30]、Set14[31]、BSD100[32]、Urban100[33],這4種測試集來源于自然景觀、人物等真實圖像,數量分別為5張、14張、100張和100張。以峰值信噪比(peak signal-to-noise ratio,PSNR)和結構相似度(structural similarity,SSIM)作為評價度量。
LiPAN的實驗設置與經典算法EDSR[17]、RCAN[19]等保持一致,訓練圖像的大小為48×48像素的LR圖像塊,采用隨機的水平翻轉和90°旋轉方式實現數據增強,并將所有訓練圖像減去均值圖像。使用Adam優化器,其參數設定為β1=0.9,β2=0.999和ε=10-8,批數據量為16,損失函數為平均絕對誤差(MAE)。在LiPAN網絡中,IDB的蒸餾率設為1/2,PPM的池化尺寸分別為{1,2,4,8},ESA單元中的縮小因子設置為4,LiPAN的特征通道維度設置為48;初始學習率為5E-4,數據總的訓練輪次(epochs)為1 000,每經過200個輪次,學習率減半。該網絡使用PyTorch框架實現,并使用GTX 3090的GPU進行訓練。
為了更好地研究LiPAN各個模塊的作用,在4個測試數據集上分別測試含有各個功能模塊的網絡性能,并計算相應的平均PSNR值及網絡參數量,結果如表1所示。Base指基準網絡,由6個IDB以及無注意力機制的反向特征融合模塊(BFM)組成;網絡Base_PPM指在Base基準網絡引入PPM;網絡Base_BAFM指在Base基準網絡引入BAFM;而本文提出的網絡LiPAN在基準網絡同時引入Base_BAFM和PPM。

表1 在4個測試集上的消融實驗(3倍采樣率)Table 1 Ablation study on 4 testing dataset(with sampling scale of 3)
從表1可以看出,在基準網絡Base上應用PPM模塊后,PSNR值提升了0.01 dB,證明了PPM模塊的有效性,通過對輸入特征進行多尺度特征融合,增強了特征表達能力;在基準網絡Base上應用BAFM模塊后,PSNR值提升了0.04 dB,說明BAFM模塊有效地融合了相鄰層次的特征信息,從而提升了網絡性能;Base_BAFM比Base網絡的參數量有所增加,主要在于Base_BAFM運用了ESA機制。本文提出的LiPAN在Base_BAFM基礎上引入PPM,可以在僅增加35×103參數的情況下進一步將PSNR值提升0.06 dB。
LiPAN訓練的收斂過程如圖5所示,Base、Base_PPM、Base_BAFM以及LiPAN在3倍采樣率下,在Set5測試數據集上得到的PSNR與訓練輪次的關系曲線圖。由此可知LiPAN模型收斂速度更快,且損失值更低,這表明BAFM和PPM模塊可以幫助LiPAN網絡很好地收斂以及獲得更佳的重建性能。

圖5 不同模型的PSNR值收斂過程Fig.5 Convergence of PSNR of different models
BAFU與PPM作為LiPAN重要的模塊,二者的數量決定著網絡的性能。因此,本節在其他條件保持一致的情況下,僅改變二者模塊數進行實驗,評估對結果的影響。實驗結果在采樣率為3的4個測試集上得到,如表2所示,當數量設為n時,表示在前n個IDB后面連接PPM和BAFU。
從表2可知,當BAFU和PPM數量小于6時,隨著數量的增加,PSNR也隨之提高,參數量也呈線性增加。當BAFU和PPM數量為6時,網絡參數量繼續增加,但PSNR反而減少,主要原因在于第6個IDB提取出來的是高頻信息,PPM中使用了全局池化操作,會一定程度地平滑邊緣信息,導致網絡的性能下降。因此,BAFU和PPM數量為5時能夠在網絡規模與性能之間達到最好的平衡。

表2 BAFU與PPM數量對網絡性能的影響(3倍采樣率)Table 2 Effectiveness of number of BAFU and PPM
為了驗證本文LiPAN方法的性能,將其與Bicubic[13]、SRCNN[12]、FSRCNN[14]、VDSR[16]、LapSRN[20]、MemNet[34]、CARN[21]、IDN[22]、IMDN[23]、RFDN[24]等經典輕量級SR方法進行比較。表3、表4和表5分別顯示了LiPAN與其他輕量級模型在2倍采樣率、3倍采樣率及4倍采樣率時,在不同測試數據集上的客觀評價。與對比算法相比,大多數情況下,LiPAN具有較優的PSNR和SSIM值。由此表明,在相近的網絡參數量和乘加運算量情況下,LiPAN的綜合性能優于對比算法。

表3 尺度因子為2時不同模型的定量指標比較Table 3 Quantitative comparison of different methods under sampling scale of 2

表4 尺度因子為3時不同模型的定量指標比較Table 4 Quantitative comparison of different methods under sampling scale of 3

表5 尺度因子為4時不同模型的定量指標比較Table 5 Quantitative comparison of different methods under sampling scale of 4
圖6和圖7分別顯示了本文模型LiPAN與SRCNN[12]、VDSR[16]、LapSRN[20]、CARN[21]、IMDN[23]和RFDN[24]模型的視覺效果比較。如圖6所示,LiPAN的重建圖像能夠有效地抑制圖像的偽影,其得益于IDB能夠恢復出更尖銳的邊緣信息;同時,BAFM對不同層次信息的有效融合,使得本文方法重建圖像的細節和紋理更加清晰。如圖7所示,由于降采樣使得高頻信號缺失導致建筑斜頂端的窗戶出現錯誤的預測,而本文方法通過PPM融入了全局場景信息,有效地利用周邊的信息,重建的結果更接近于真實圖像。

圖6 不同算法在3倍采樣率下的視覺效果比較Fig.6Qualitativecomparisonofdifferentmethodsundersamplingscaleof3

圖7 不同算法4倍采樣率下的視覺效果比較Fig.7 Qualitative comparison of different methods under sampling scale of 4
表6顯示了LiPAN與其他算法的重建實時性比較,與VDSR和MemNet相比,LiPAN具有更少的參數、乘加數以及運行時間;與CARN相比,LiPAN具有更少的參數以及乘加數,但運行時間略有增加;與RFDN相比,LiPAN在參數、乘加數以及運行時間三者均有所增加,這主要因為BAFM和PPM的引入增加了網絡的深度,以及ESA在具有強大的空間特征重要度判別能力的同時,也增加了其結構的復雜性。

表6 模型實時性比較Table 6 Real-time comparison with other methods
圖8顯示了LiPAN與對比網絡的參數量、乘加數和網絡性能對比,LiPAN具有與IDN、IMDN和RFDN等算法相近的參數量級,但擁有最高的PSNR值;同時,在乘加數方面,LiPAN的乘加數少于一些主流輕量級網絡但具有較高的PSNR值。綜上所述,LiPAN的網絡性能均優于其他主流網絡。

圖8 不同網絡模型的性能比較Fig.8 Performance comparison of different network models
本文提出了一種基于IDB模塊、金字塔池化結構及注意力機制的輕量級超分辨重建網絡LiPAN。該網絡通過注意力機制及多層次提取不同尺度特征信息方式,能夠有效提取豐富的圖像細節,從而獲得較優的重建性能。相比于其他基于CNN的輕量型算法,LiPAN能在相同量級的網絡規模上,以相對較低的計算量獲得更優的主觀和客觀結果。然而,由于LiPAN的結構較為復雜而需要更多的重建時間,因而,提高LiPAN的實時性是接下來的研究內容。