梁 敏,王昊榕,張 瑤,李 杰
(山西財經大學信息學院,太原 030006)
(*通信作者電子郵箱liangmin716@163.com)
圖像在采集、傳輸過程中受設備、光照等環境影響,直接降低了圖像的質量。數字圖像超分辨率(Super-Resolution,SR)旨在通過某種模型約束條件由低分辨率(Low Resolution,LR)圖像重建清晰的高分辨率(High Resolution,HR)圖像,在公共安全、視頻監控、醫學圖像處理[1-3]等方面具有強烈的需求。但根據有限的圖像信息重建出更多信息是一個病態過程,所以圖像超分辨率重建研究始終是一個具有挑戰性的任務。
目前,圖像超分辨率重建是前沿熱門領域,吸引了越來越多的學者參與研究,并發表了眾多有意義的工作,其中,具有代表性的有:Yang 等[4]提出的基于稀疏編碼表示的超分辨率方 法(Sparse-coding-based Super-Resolution,ScSR),Timofte等[5]提出的可調整錨定鄰域回歸方法(Adjusted Anchored neighborhood regression for fast super-resolution,A+)。近年來,基于深度學習的超分辨率方法表現出良好的性能。Dong等[6]提出了基于卷積神經網絡的圖像超分辨率重建(Super-Resolution using Convolutional Neural Network,SRCNN)方法,將卷積神經網絡應用于超分辨率,實現了以低分辨率圖像作為輸入、高分辨率圖像作為輸出的端到端映射的重建模型。Wang 等[7]將傳統的稀疏編碼模型與深度學習相結合,提出了基于稀疏編碼的網絡(Sparse-Coding-based Network,SCN)。Dong 等[8]修改了SRCNN 模型,提出了加速的超分辨率卷積神經網絡(Fast Super-Resolution Convolutional Neural Network,FSRCNN),通過在網絡末端添加反卷積層替代SRCNN初始上采樣操作,使得不同比例縮放因子可以共享卷積層權重,提升了重建速度。Kim 等[9]應用殘差學習并結合可調梯度裁剪策略提出了超深卷積神經網絡的圖像超分辨率方法(Super-Resolution using Very Deep convolutional network,VDSR)。李現國等[10]設計了具有中間層監督的網絡模型(Intermediate Supervision Convolutional Neural Network,ISCNN),借助監督層誤差函數來改善網絡梯度消失現象。劉月峰等[11]先對低分辨率圖像進行三種插值操作,然后進行五種不同強度的銳化操作,最后將圖像合并排列成三維矩陣,以此作為網絡的多通道輸入。Wang 等[12]設計了一個通過深層和淺層卷積網絡實現端到端映射的超分辨率模型(End-to-End Deep and Shallow convolutional network,EEDS),由淺層通道重建圖像的主要結構,深層通道重建圖像的高頻細節。上述方法仍存在的問題是:淺層網絡不能充分提取圖像的特征,有重建質量不高的天然缺陷;而深層網絡參數量大、計算復雜度高、重建效率低。
針對上述問題,本文提出一種基于加速殘差網絡的圖像超分辨率重建方法(image Super-Resolution reconstruction method based on AccelerateD residual network,ADSR)。該方法對低分辨率圖像與高分辨率圖像之間的高頻殘差信息運用加速殘差網絡進行訓練,將低分辨率圖像與網絡學到的殘差相加得到重建圖像。主要貢獻包括:
1)構建一個殘差網絡對低分辨率圖像與高分辨率圖像之間的高頻殘差信息進行重建,避免低分辨率圖像攜帶的低頻信息在深層網絡中的冗余學習,將網絡主要用于高頻殘差信息的訓練,從而提高效率。
2)在非線性映射前加入收縮層,對提取的低分辨率圖像的特征圖維數進行降維,能夠減少深層網絡參數,提高時間效率,以較少的網絡參數快速獲得較好的重建質量。
3)探索ADSR 網絡模型在運動模糊圖像超分辨率重建上的有效性,在多種模糊核下均取得了較現有方法更好的視覺效果和客觀量化指標。
為了解決利用深層網絡進行超分辨率重建中存在的網絡參數多、計算復雜度高等問題,本文構建了一個ADSR 網絡模型。在本章中,將其視為由低分辨率圖像到高分辨率圖像的端到端映射過程,并劃分為六部分介紹:低分辨率特征提取、特征收縮、非線性映射、高分辨率特征擴展、高頻殘差信息重建以及殘差求和。圖1給出了ADSR的網絡框架。ADSR整體是一個殘差網絡,其主要目的是對低分辨率圖像缺失的高頻細節部分進行重建,提高邊緣及紋理信息的重建精度。在局部上將端到端的非線性映射部分更細致地劃分成特征收縮、非線性映射、高分辨率特征擴展這三個部分,降低了深層網絡傳輸過程中低分辨率特征圖的維度,從而降低模型復雜度。

圖1 ADSR網絡架構Fig.1 ADSR network architecture
單幅低分辨率圖像重建時,首先將該低分辨率圖像采用雙三次插值方法(Bicubic)上采樣到要重建的高分辨率圖像尺寸,得到初始的上采樣低分辨率圖像Y作為網絡的輸入,網絡的目標是將Y盡可能地恢復出與真值高分辨率圖像X相似的重建圖像Z。利用一組濾波器對低分辨率圖像Y進行卷積操作提取出豐富的圖像特征,其中每一個濾波器對應得到一張特征圖。將該層結構表示為F1(Y)=W1*Y+B1,W1和B1分別表示濾波器的權重以及偏差,“*”表示卷積操作,W1對應n1個尺寸為f1×f1 的濾波器,即經過特征提取層能夠提取出n1張特征圖。該部分如圖1中的Patch extraction所示。
在超分辨率重建任務中,把從低分辨率特征提取層F1提取到的特征圖進行非線性映射得到用于重建高分辨率圖像對應的高分辨率特征圖。然而在特征提取層中為了獲得圖像的豐富特征,特征維數n1通常較大,再將這些特征傳入多層非線性映射結構時會產生較多的參數,時間復雜度較高。
ADSR在非線性映射前加入了特征收縮層將特征圖維數從n1 維降至n2 維。該層結構表示為F2(Y)=W2*F1(Y) +B2,W2和B2分別表示濾波器的權重以及偏差,W2對應n2個尺寸為f2 ×f2 的濾波器,且n2<n1,即經過特征收縮層將特征圖維數降至n2。該部分如圖1中的Shrinking所示。
通過低分辨率特征提取及特征收縮后得到了低分辨率圖像的n2 張特征圖,將這些特征圖進行非線性映射能夠得到用于重建高分辨率圖像對應的高分辨率特征圖,所以非線性映射結構對重建質量發揮著關鍵的作用。ADSR 使用多層小尺寸濾波器串聯的架構來獲得較大的圖像感受野,有利于提高重建質量。將非線性映射部分的當前層數表示為i,其結構表示如式(1)所示:

其中:W3i和B3i表示第i層濾波器的權重以及偏差,M表示非線性映射部分的總層數,其值將在實驗部分討論確定。該部分如圖1中的Mapping所示。
為了減少網絡參數,在非線性映射前應用了特征收縮層進行降維,但直接使用n2 維特征進行重建得到的圖像質量不高,所以要在非線性映射之后、重建之前加入擴展層將特征圖維數從n2維升回至n1維。表示為F4(Y)=W4*F3i(Y) +B4,其中i=M,W4和B4分別表示濾波器的權重以及偏差,W4對應n1 個尺寸為f4 ×f4 的濾波器,即經過特征擴展層將高分辨率特征圖維數升至n1。該部分如圖1中的Expanding所示。
深層超分辨率重建網絡主要完成兩個任務:一是將低分辨率圖像Y已有的信息從網絡層的輸入端輸送至輸出端;二是重建低分辨率圖像與真值高分辨率圖像之間的差值部分R,即R=X-Y。在超分辨率重建任務中,要重建的信息遠少于低分辨率和高分辨率圖像已有的公共信息,所以任務一將耗費網絡極大的資源,而真正用于任務二的資源較少。另外輸入端信息Y在網絡中進行傳輸學習時隨著網絡結構加深,容易出現細節丟失的問題。
ADSR 構建了一個殘差網絡對低分辨率圖像與高分辨率圖像之間的高頻殘差信息進行重建。殘差結構能夠避免信息Y的深層網絡傳送過程,將網絡主要用在高頻殘差信息R的重建上。ADSR 將n1維高分辨率特征圖進行融合生成的一維圖像,即為重建出的高頻殘差圖像。表示為R′=W5*F4(Y) +B5,W5和B5分別表示濾波器的權重以及偏差,W5對應1個尺寸為f5×f5的濾波器。該部分如圖1中Reconstruction所示。
本文構建的殘差網絡框架在訓練時以上采樣低分辨率圖像Y作為輸入,將由殘差網絡獲得的高頻殘差圖像R′與低分辨率圖像Y相加得到的重建高分辨率圖像Z作為輸出,以均方誤差(Mean Squared Error,MSE)作為網絡模型的損失函數,如式(2)所示,式中n表示訓練集的樣本數目。

圖2顯示了set5數據集中butterfly圖像的上采樣低分辨率圖像Y,重建的殘差圖像R′以及最終生成的高分辨率圖像Z。

圖2 butterfly圖像超分辨率重建過程Fig.2 Super-resolution reconstruction process of butterfly image
綜上所述,基于加速殘差網絡的圖像超分辨率重建方法的過程如圖3所示,分為以下步驟:

圖3 ADSR技術路線Fig.3 ADSR technology roadmap
1)對輸入的低分辨率圖像進行雙三次插值處理,獲得上采樣的低分辨率圖像Y;
2)提取代表圖像Y高頻信息的n1張低分辨率特征圖;
3)通過特征收縮層將其降維至n2;
4)經過非線性映射層得到對應的n2張高分辨率特征圖;
5)通過特征擴展層將其升維至n1;
6)由n1張高分辨率特征圖重建出高分辨率殘差圖像R′;
7)將R′與Y相加獲得最終重建的高分辨率圖像Z。
2.1.1 訓練集與測試集
訓練集 本文實驗基于隨機森林學習(Random Forest Learning,RFL)[13]的超分辨率方法使用的291 張圖片,采用數據增強的方法,對圖像旋轉90°、180°、270°,并縮小0.6倍以及0.8倍,得到3 492張圖片作為訓練集。采用43的步長將數據集切割成43×43的圖像塊,混合多比例因子2、3、4數據集將獲得大約38萬張的圖像塊用于網絡訓練。
測試集采用set5[14]、set14[15]、BSD100[16]以 及Urban100[17]四個數據集作為測試集。
2.1.2 訓練細節
ADSR 網絡結構以MSE 作為損失函數,表示重建的高分辨率圖像與真值圖像之間的差異,選用Adam(Adam optimization)算法來優化損失函數。訓練的初始學習率設置為0.000 1,權重衰減系數設置為0.000 1,濾波器的權重采用He 等[18]提出的方法進行初始化。訓練的批大小設置為128,模型訓練了超過200 個epoch。網絡在硬件參數NVIDIA GeForce GTX 1060 下使用caffe 工具以及Matlab R2017b 接口進行訓練及測試。
2.1.3 評價指標
為了定量表示重建結果并與其他方法進行對比,本文采用峰值信噪比(Peak Signal-to-Noise Ratio,PSNR)及結構相似性(Structural SIMilarity,SSIM)作為重建效果評價標準。PSNR 值越大代表與真值圖像相比重建圖像失真越少,SSIM值越大代表重建圖像與真值圖像的結構相似性越高。
2.2.1 不同層數設置
ADSR 加入特征收縮層減少網絡參數勢必會以降低重建質量為代價,所以考慮增加網絡層數來降低質量的損失,因此設置了實驗對合適的網絡層數進行探討,先以22 層網絡結構作為基礎,之后通過增加M討論選定ADSR最終的層數。
表1 顯示了ADSR 在n1=64、n2=32,網絡層數分別為22、23、24、25以及26的各測試集的PSNR 及SSIM 均值結果(其中加粗表示最高值)。通過分析不同層數的重建結果,選定層數較小且重建質量較好的24層為默認的層數。

表1 測試集在不同層數設置下的PSNR及SSIM均值Tab.1 Mean values of PSNR/SSIM of test sets under different layer configurations
2.2.2 不同濾波器個數設置
本文將低分辨率特征提取部分的濾波器個數n1 設置為64,即通過特征提取層提取出代表低分辨率圖像特征的64 張特征圖。在進行收縮時考慮將其降為16 維、32 維以及48 維。表2 顯示了在24 層網絡架構上(n1,n2)設置為(64,16)、(64,32)及(64,48)的各測試集的PSNR 及SSIM 均值結果(其中加粗的值表示最高值)。通過分析不同設置下的重建結果,選定重建質量較好的(64,48)為默認的濾波器個數。

表2 測試集在不同濾波器個數n1、n2設置下的PSNR及SSIM均值Tab.2 Mean values of PSNR/SSIM of test sets under different filter number n1,n2 configurations
2.2.3 不同比例因子設置
為解決一個神經網絡模型只適用于單一比例因子的問題,本文將原始訓練集按多種倍數比例因子進行縮放并融合成大的訓練集,使得訓練得到的模型適用于所有訓練集中包含的比例因子,提高網絡模型的泛化能力。表3和表4顯示了層數為24,濾波器個數為(64,48)的網絡結構在不同訓練集下得到的模型的set5 數據集的PSNR 及SSIM 結果,其中加粗的值表示測試比例因子包含在訓練集的比例因子中。

表4 不同比例因子模型對SSIM均值的影響Tab.4 The influence of different scale factor models on mean value of SSIM
實驗結果顯示單比例因子訓練集的模型無法處理其他比例因子重建問題,有時重建效果甚至比雙三次插值方法效果還差。以縮放比例因子2 下的測試集重建結果為例,其在比例因子2 訓練集的模型下的PSNR 值為37.55,在比例因子3訓練集的模型下的PSNR 值為30.92,在比例因子4 訓練集的模型下的PSNR 值為25.67,而用雙三次插值方法得到的PSNR值為33.66。
相比單比例因子訓練集來說,混合比例因子訓練集下的模型可以有效處理所有預定義比例因子的重建問題,且能使大比例因子測試集的重建效果得到增強。以表3中(×2,3,4)訓練集模型下的各尺度PSNR 值與對應的各單比例因子訓練集的模型的PSNR 值對比為例:37.36(×2,3,4)-37.55(×2)、33.59(×2,3,4)-33.47(×3)、31.19(×2,3,4)-31.00(×4)。

表3 不同比例因子模型對PSNR均值的影響Tab.3 Influence of different scale factor models on mean value of PSNR
另外對于大比例因子3 和4 來說訓練集涉及的預定義比例因子越多,模型重建的增強效果就越明顯。以縮放比例因子4下的測試集重建結果為例,其在單比例因子4訓練集的模型下的PSNR 值為31.00,在混合比例因子(×2,4)訓練集的模型下的PSNR 值為31.14,(×3,4)訓練集的模型下的PSNR 值為31.06,(×2,3,4)訓練集的模型下的PSNR值為31.19。
2.3.1 重建質量的比較
為了反映ADSR 的重建效果,本文將它與Bicubic、ScSR[4]、A+[5]以及近來國內外提出的基于深度學習的方法SRCNN[6]、SCN[7]、FSRCNN[8]、VDSR[9]、ISCNN[10]、劉月峰等[11]方法以及EEDS[12]進行比較。其中,所有對比方法的重建結果都使用原作者提供的數據或原作者發布的源代碼生成的數據。本文方法選擇在層數為24、濾波器個數為(64,48)、數據集為(×2,3,4)混合比例因子融合下的重建結果。圖4列出了set14數據集中comic圖像在比例因子為3時多種方法下的重建圖像以及PSNR 值。從中可以看出,ADSR 方法在邊緣處及高頻細節處的重建效果更為突出,且整體結構與原圖更為接近。

圖4 comic在比例因子為3時的重建圖像Fig.4 Reconstructed image of comic at the scale of 3
表5、6 分別顯示了ADSR 與這些方法在set5、set14、B100及Urban100 四個測試集下的PSNR 和SSIM 均值,其中加粗標注的值表示最高值,下劃線標注的值表示次高值。結果顯示在重建質量上ADSR除稍低于VDSR外,均優于對比方法。

表5 ADSR與現有方法PSNR的比較 單位:dB Tab.5 Comparison of PSNR of ADSR with existing methods unit:dB

表6 ADSR與現有方法SSIM的比較Tab.6 Comparison of SSIM of ADSR with existing methods
VDSR 的PSNR 及SSIM 均值略高于本文方法,其原因是它直接使用提取出的高維度特征圖進行非線性映射,網絡模型參數量比ADSR 大(2.36 MB>1.50 MB)。ADSR 采用的特征降維操作會產生較小的重建質量的損失,但能在時間效率上取得較大的優勢。圖5 列出了ADSR 與VDSR 這兩種方法在4 個測試集上的重建質量與重建時間的對比,結果顯示ADSR 方法的PSNR 均值只比VDSR 低0.1 dB 左右,但重建速度提高了將近一倍。

圖5 VDSR與ADSR重建質量與時間的對比Fig.5 Comparison of reconstruction quality and time between VDSR and ADSR
另外,雖然ADSR 在測試集上的重建均值略低,但能在很多圖像上取得比VDSR 好的重建結果,如圖6 所示,列出了set5數據集中bird圖像及set14數據集中flowers圖像在比例因子為3 時兩種方法下的重建圖像以及PSNR 值對比,其中ADSR取得了更佳的重建結果。

圖6 Bird及flowers在比例因子為3時的重建圖像Fig.6 Reconstructed images of bird and flowers at the scale of 3
2.3.2 重建時間的比較
為了反映ADSR 的深層網絡加速效果,本文與A+[5]、SRCNN[6]、VDSR[9]、ISCNN[10]以及基于對稱殘差卷積神經網絡的圖像超分辨率重建方法(Super-Resolution based on Symmetric residual convolution neural network,SymSR)[19]進行了重建時間的比較。表7 顯示了ADSR 與這些方法在set5、set14、B100 以及Urban100 測試集下的重建時間均值,其中加粗標注的值表示最低值。結果顯示ADSR 的重建速度最快。在set5、set14、B100 三個數據集上ADSR 的重建速度至少是SRCNN 的20 倍,是VDSR 深層網絡的1.5 倍。在具有重建挑戰性的城市數據集Urban100 上ADSR 的重建速度至少是SRCNN 的43 倍,是VDSR 深層網絡的2.5 倍。另外ADSR 網絡模型參數量較VDSR 有所減小(1.50 MB<2.36 MB),說明了本文方法達到了減少網絡參數,降低網絡復雜度,且明顯提高重建速度的目的。

表7 ADSR與現有方法重建時間的比較 單位:sTab.7 Comparison of reconstruction time of ADSR with other methods unit:s
目前對圖像超分辨率重建的研究絕大多數是集中在處理下采樣模糊的理想化退化模型,鮮有研究考慮運動模糊等更為一般的退化因素[20]。本文將ADSR 應用在處理運動模糊這一具有挑戰性的問題上,探索ADSR 模型在處理運動模糊時的有效性。
訓練集將多種運動模糊核考慮在內,提升網絡模型的泛化能力,其中模糊長度設置為[5,8,11,14],模糊角度設置為[0°,45°]。圖7列出了測試集中的3張圖像在模糊長度為14,模糊角度為45°下的重建圖像以及PSNR值,結果顯示,與VDSR相比,ADSR能以較小的網絡模型獲得更優的重建效果,說明在處理運動模糊圖像超分辨率重建問題上ADSR更有效。

圖7 VDSR與ADSR重建質量的比較Fig.7 Comparison of reconstruction quality between VDSR and ADSR
圖8列出了這兩種方法在4個測試集上的重建時間對比,結果顯示ADSR方法的重建速度比VDSR快將近一倍。

圖8 VDSR與ADSR重建時間的比較Fig.8 Comparison of reconstruction time between VDSR and ADSR
本文提出了一種基于加速殘差網絡的圖像超分辨率重建方法ADSR。該方法對低分辨率圖像與真值圖像之間的殘差信息進行重建,它在多層小尺寸濾波器串聯的非線性映射結構前加入特征收縮層對提取的特征圖維數進行降維,然后在映射后加入高分辨率特征擴展層進行升維,重建出高分辨率的殘差信息。經實驗證明,ADSR 能夠取得較A+等傳統方法以及SRCNN、ISCNN 等國內外深度學習方法更好的超分辨率重建結果,并且能夠減少深層網絡參數,降低網絡復雜度,達到加快重建速度、提高重建效率的目的。此外將該方法應用于運動模糊圖像的超分辨率重建也獲得了較好的性能,但實際獲取的低分辨率圖像降質因素眾多,后續將構建更高效的網絡來處理通用降質模型下的低分辨率圖像的超分辨率重建問題。