樓鑫杰,李小薪,劉志勇
(1.浙江工業大學 計算機科學與技術學院,杭州 310023;2.深圳職業技術學院 工業中心,廣東 深圳 518055)
圖像超分辨率重建旨在從低分辨率圖像中重建出高分辨率圖像,但由于多個高分辨率圖像可能會產生相同的低分辨率圖像,因此超分辨率問題具有固有的不變形特點,且高分辨率圖像會因多種類型的細節損失而退化成不同的低分辨率圖像,導致圖像超分辨率重建任務較為復雜。為解決該問題,研究人員提出了很多圖像超分辨率方法,包括基于插值的方法[1]、基于重構的方 法[2]以及基于學習 的方法[3-5]。
自DONG 等[6]引入淺層卷積神經網絡(CNN)來實現圖像超分辨率后,基于深度學習的方法由于其卓越的重建性能而引起廣泛關注。基于深度學習方法的優勢主要基于深度網絡和跳躍連接兩個關鍵因素。深度網絡可以提供強大的特征表達和提取能力,能夠建立復雜圖像從低分辨率到高分辨率的映射,同時可以通過更大的接受域來保留更多的上下文信息,且跳躍連接可以有效地緩解僅通過堆疊更多卷積層加深網絡而導致的梯度消失或爆炸問題。
隨著網絡深度的增加,網絡參數的數量也不斷增多,大規模的網絡模型將占用巨大的內存資源,且存在過擬合的風險。為減少網絡參數數量,使用遞歸結構是常見做法。最近的研究表明[7-8],許多具有遞歸結構的網絡例如DRCN[9]、DRRN[10]等均可以近似為簡單狀態下的遞歸神經網絡(RNN)。與多數傳統的基于深度學習的方法相似,這些具有遞歸結構的網絡可以以前饋方式共享信息。但即使采用了跳躍連接,前饋方式也無法使前一層的網絡從后一層中得到有用的信息。
在生物學的認知理論中,連接皮層視覺區域的反饋連接可以將響應信號從高層區域傳輸到低層區域[11-12],因此最近的研究[13-14]已將這種反饋機制應用于人工神經網絡體系結構中。這些體系結構中的反饋機制以自上而下的方式工作,通過將高階信息反饋給淺層網絡,完善低級編碼信息。
本文提出一種基于反饋機制的圖像超分辨率重建算法,通過構建超分辨率反饋網絡,在反饋連接的基礎上使用高階信息細化低階信息。該網絡本質上是具有反饋模塊的RNN,是專門針對圖像超分辨率任務設計的網絡。其中,反饋模塊由具有密集跳躍連接的多組上采樣層和下采樣層構成,能形成強大的高級表示形式。受AMIR 等[14]啟發,本文使用具有約束條件的RNN 中包含的隱藏狀態來實現網絡的反饋機制,并使用課程學習策略,通過連續迭代的方式使網絡學習復雜的失真模型。
本節主要對3 個方面的內容展開闡述,包括基于深度學習的圖像超分辨率方法、反饋機制以及課程學習。
深度學習已經在包括圖像超分辨率任務在內的各種計算機視覺任務中顯示了卓越的性能。DONG等[6]在圖像超分辨率中引入了3 層CNN,以學習復雜的低分辨率圖像到高分辨率圖像的映射。KIM等[9]將CNN 的深度增加到20 層,以便在低分辨率圖像中使用更多的上下文信息。文獻[9]使用跳躍連接來克服當網絡變得更深時的優化難題。最近的研究已采用不同類型的跳躍連接改善圖像高分辨率算法,例如SRResNet[15]和EDSR[7]應用文獻[16]中的殘差跳躍連接,SRDenseNet 應用文獻[17]中的密集跳躍連接。ZHANG 等[1]在RDN 模型中組合了局部與全局殘差和密集跳躍連接。由于這些網絡體系結構中的跳躍連接均以自下而上的方式使用或扮演組合分層功能,因此低級別的信息只能從前面幾層中接收到。由于接收域小,因此缺少足夠的上下文信息。這些低級別的信息在之后的層中被重復使用,從而進一步限制了網絡的重構能力。為解決此問題,本文提出一種超分辨率反饋網絡,其中高級別信息以自上而下的方式流過反饋連接,以獲取更多上下文信息,從而糾正低級別的信息。
神經網絡的反饋機制允許網絡通過輸出信息來更正之前的狀態,該反饋機制已被許多網絡體系結構采用以滿足各種計算機視覺任務的需求。在語義分割領域,文獻[18]嘗試用拓撲損失來提取高階語言信息,高階語義信息反饋到淺層網絡用于糾正低階語義信息。文獻[14]旨在解決計算機視覺任務中的分類問題,將具有高階信息的隱藏狀態轉移到輸入圖像的信息中,從而在卷積遞歸神經網絡中實現反饋。對于圖像高分辨率重建任務,HAN 等[19]應用一種延遲反饋機制,在雙狀態RNN 中的2 個循環狀態之間傳輸信息。但與本文的反饋網絡不同的是,HAN 等的工作中低分辨率圖像到最終的高分辨率圖像信息流仍然采用前饋方式。本文的反饋模塊中的信息通過密集的跳躍連接有效地流經結構層。如圖1 所示,每次迭代的隱藏狀態都會流入下一個迭代過程以重新配置輸入。為了使隱藏狀態包含高分辨率圖像的信息,在訓練過程中將總損失與每次迭代過程相關聯。超分辨率反饋網絡的設計原理是使粗糙的高分辨率圖像信息可以促進低分辨率圖像更好地重建完整的高分辨率圖像。圖2 顯示了本文網絡的基本架構,很好地體現了本文的反饋機制。實驗結果表明,本文的反饋模塊具有更好的重建性能,更適合圖像超分辨率任務。

圖1 反饋模塊的信息流Fig.1 Information flow of the feedback module

圖2 本文網絡的基本框架Fig.2 Basic framework of the network in this paper
課程學習是由易到難的逐步學習過程,此過程將逐漸增加學習目標的難度,是改善訓練過程的一種有效策略。課程學習在早期主要用于處理單個任務,PENTINA 等[20]將課程學習以順序的方式擴展到多個任務。GAO 等[21]利用課程學習解決圖像恢復中的注視問題。由于他們的網絡僅限于一次預測,因此在訓練過程中將根據任務的復雜程度,通過輸入不同的訓練數據來實施課程學習。本文通過利用課程學習從易到難的訓練過程,逐漸恢復失真的圖像,重建出高分辨率圖像。
本文的反饋機制通過迭代的網絡子模塊重新配置,以糾正每個迭代過程中系統的輸入,這種迭代的因果過程有助于上下文信息的傳遞和利用,因為高階信息可以幫助低分辨率圖像更好地恢復重建。本節首先介紹超分辨率反饋網絡的整體架構,然后對反饋模塊的設計展開探究,最后是課程學習在本文中的應用以及最后損失的計算方法的定義。
如圖3 所示是本文的網絡結構,可以看到超分辨反饋網絡結構可以展開為T次迭代過程,每次迭代過程t在時間上從1 到T排序。為了使超分辨率反饋網絡中的隱藏狀態帶有輸出的概念信息,每個迭代的損失將被計算疊加到總損失上。每個迭代輪次的子網絡包含3 個部分:低分辨率特征提取模塊(LRFB),反饋模塊(FB)和重構模塊(RB),每個模塊的權重在時間上是共享的。每次迭代過程中將通過全局的殘差跳躍連接傳遞上采樣的圖像,以便于繞過子網。因此,網絡的每次迭代過程的目的是在輸入低分辨率圖像ILR的同時恢復殘差圖像Conv(s,n)和Deconv(s,n)分別為卷積層和反卷積層。其中:s是卷積核的大??;n是卷積核的數量。

圖3 超分辨率反饋網絡結構Fig.3 Super-resolution feedback network structure
低分辨率特征提取器包括Conv(3,4m) 和Conv(3,m)。其中:m表示基本卷積核數。當為低分辨率特征提取模塊提供低分辨率圖像ILR時,可以從中獲取低分辨率圖像信息的淺層特征如式(1)所示:


其中:fFB表示反饋模塊的操作,圖1 顯示了反饋模塊的具體數據流圖。本文將在3.2 節對反饋模塊展開描述。
重構模塊利用Deconv(k,m)將低分辨率特征恢復到正常的高分辨率圖像,之后再用Conv(3,cout)生成殘差圖像,公式(3)描述了重構模塊(RB)的功能:

其中:fRB表示重構操作。
第t個迭代輪次的輸出圖像可由式(4)得到:

其中:fUP表示上采樣核操作,通過跳躍連接將淺層信息傳輸到深層網絡,盡可能恢復原圖像的細節特征。經過T輪的迭代過程,將得到T張高分辨率圖像
如圖4 所示為第t個輪次迭代過程中的反饋模塊通過接受反饋信息來糾正低階信息,將更強大的高階信息作為輸出傳遞到下一個迭代和重構模塊。反饋模塊包含G組特征映射網絡子結構,并且通過密集的跳躍連接相互聯系。每一組特征映射子結構均可以通過上采樣操作和下采樣操作將高分辨率圖像特征映射到低分辨率圖像上。

圖4 反饋模塊的網絡結構Fig.4 Network structure of feedback module

其中:C↓g對應的是通過第g組特征映射子網絡的Conv(1,m)的下采樣操作。
為充分利用每個特征提取子網絡獲取的有效信息和下一個迭代輪次的低分辨率特征通過跳躍連接對每個輪次的低分辨率特征進行有效融合,以生成反饋模塊的輸出:

本文選擇L1 損失函數優化本文的網絡模型。由于本文框架會在時間刻度上展開,由此對同一退化模型會得到T張目標高分辨率圖像對于簡單的退化模型,T張目標高分辨率圖像基本一致,但對于復雜的退化模型,會根據T次迭代過程執行課程訓練的任務難度對進行排序,每個輪次的損失都是總損失的一部分,因此網絡的整體損失定義為:

其中:θ為網絡參數的集合;Wt是固定的參數;Z=本文認為越到迭代后面,模型所造成的損失權重占比越大,可以提升最終模型的準確性,同時也可以在所有迭代過程中通過學習錯誤以糾正模型。
本文通過端到端的訓練方式學習網絡參數θ,通過最小化超分辨率圖像F(X;θ)和實際的高分辨率X的L1 損失函數進行學習,如式(10)所示:

本文設置模型的初始值學習率為1×10-4,采取adam 優化策略以提高收斂的效果。
數據庫和評估指標:使用DIV2K[21]和Flickr2K作為網絡的訓練數據。為充分利用訓練數據,采用數據增強的方法。使用PSNR 和SSIM 指標作為超分辨率圖像的評估指標,測試數據集采用5 個標準的測試集:Set5,Set14,B100,Urban100,Manga109。
為與現有模型進行公平且全面的比較,選取2 種真實高分辨率圖像生成低分辨率圖像的標準退化模型。其中第1 種退化模型是GB 退化模型,該模型將高斯模糊應用于高分辨率圖像下采樣,在實驗中使用7×7 大小的高斯核進行模糊處理。與GB 退化模型不同的是,WN 退化模型是經過雙三次下采樣及添加高斯白噪聲處理的退化模型,高斯白噪聲的標準差sigma 為25,高斯函數的偏差為0,處理后的像素點值限制范圍為0~255。
使用pytorch 訓練框架和2 塊NVIDIA1080 TiGPU,每個訓練批次大小為16。為從低分辨率圖像中充分利用上下文信息,根據放大系數提供具有不同色塊大小的RGB 圖像塊。不同尺寸縮放和對應的圖像塊大小如表1 所示,表2 是參數的設置,Conv(k,m)和Deconv(k,m)中k、步長和填充大小。本文選用Relu 作為除了每個子網的最后一層之外所有卷積層和反卷積層的激活函數。Adam 參數優化算法用來優化網絡并加速網絡的收斂,本文設置學習率的初始值為0.000 1,每200 個迭代輪次學習率減少為1/2。

表1 不同尺寸縮放對應的圖像塊尺寸Table 1 Image block size corresponding to different size scaling

表2 參數設置Table 2 Parameter settings
本節主要探索反饋模塊的有效性,提出的反饋主要由2部分組成:1)上采樣層和下采樣層(UDSL);2)密集的跳躍連接(DSC)。如表3 所示,其中:×表示未使用該部分;√表示使用該部分。當反饋模塊中的UDSL部分被普通的3×3 大小的卷積核代替時,PSNR 值有所下降,表明上采樣操作和下采樣操作可以揭示豐富的上下文信息,并對圖像超分辨率操作有效。將密集的跳躍連接加入到反饋模塊中,該跨層次甚至跨時間的結構能有效地使信息流動,強化信息傳遞的概念,因此可進一步提高重建性能。

表3 UDSL 和DSC 的消融實驗Table 3 Ablation experiment of UDSL and DSC
探索反饋模塊中特征映射組數量G的影響。本文固定迭代輪次T為4,從圖5 可以看出,適當增大特征映射組,可有效提升超分辨率的準確率(彩色效果見《計算機工程》官網HTML 版)。

圖5 G 的收斂分析Fig.5 Convergence analysis of G
本文的框架模型是能在時間刻度上展開的遞歸神經網絡,每一個遞歸模塊都會得到一張目標超分辨率圖像。上一個迭代輪次的輸出會幫助下一個迭代模塊更好地完成超分辨率任務。由圖6 可知(彩色效果見《計算機工程》官網HTML 版),在高階語義信息的反饋下,越后面迭代輪次的低階語義信息特征圖越細化,有效地提高了圖像超分辨率的準確性。為進一步探索該迭代遞歸過程中反饋機制的有效性,圖7 顯示,與無反饋連接的網絡(T=1)相比,借助反饋連接的網絡重建性可以得到顯著改善。此外隨著T的增長,圖像重建性可以得到有效增長,網絡性能收益于迭代過程中的信息流通機制。

圖6 細化特征圖的視覺對比Fig.6 Visual comparison of refined feature maps

圖7 T 的收斂分析Fig.7 Convergence analysis of T
本文通過課程學習策略訓練了GB 模型和WN模型,這2 種模型在圖像超分辨率中屬于明顯的退化模型,具有普遍的代表性。在方法上選取了SRCNN[6]、VDSR[9]、IRCNN_G[23]、SRMDNF[24]及RDN[25]5 種圖像超 分辨率模 型。SRCNN 前兩層學習率為1×10-4,最后一層 學習率為1×10-5,訓練共1 500 個輪次。VDSR 的學習率設置為0.1,訓練50 個輪次。IRCNN 的學習率設置為1×10-4,當收斂到一定閾值時自動停止訓練。SRMDNF 的學習率為1×10-4,訓練采用adam 優化策略。RDN 學習率為1×10-4,訓練采用adam 優化策略。本文的BatchSize為16,學習率為1×10-4,采用adam 優化策略,T為4,G為6。訓練數據來自DIV2K 和Flickr2K 數據集的一共2 260 張圖片,包括尺寸縮放為×2、×3、×4,訓練時間如表4 所示。測試數據來自Set5、Set14、B100、Urban100以及Manga109 總共328 張圖片。

表4 不同模型的訓練時間對比Table 4 Comparison of training time of different models h
表5 和表6 所示為不同模型在5 個測試數據集下的綜合評估實驗對比,表中加粗數字表示該組數據最大值??梢钥吹皆诓煌叨认拢疚姆椒ㄔ贕B 和WN模型下的性能表現均優于其他圖像超分辨率方法。圖8和圖9 所示為來自標準數據集中GB 和WN 退化模型的2 組超分辨率的視覺結果。與其他方法相比,本文方法能減輕失真程度,并在超分辨率圖像中生成更準確的細節信息。因此,本文認為超分辨率反饋網絡能夠合理地利用反饋機制,在處理不同的退化模型中具有更強的魯棒性和有效性。

表5 GB 退化模型下的性能對比Tabel 5 Performance comparison in GB degradation model

表6 WN 退化模型下的性能對比Tabel 6 Performance comparison in WN degradation model

圖8 GB 退化模型視覺對比Fig.8 Visual comparison of GB degradation model

圖9 WN 退化模型視覺對比Fig.9 Visual comparison of WN degradation model
本文提出一種基于反饋機制的圖像超分辨率重建算法,通過構建新型網絡結構,使用反饋連接在自上而下的反饋流中提供豐富的高階信息。更多上下文信息的反饋有助于低分辨率圖像的重建,且網絡中的反饋模塊能有效處理反饋信息流,帶有反饋連接的遞歸結構能提高網絡早期重建能力。此外,使用課程式學習策略,并通過連續迭代的方式使網絡學習復雜的失真模型,從而對不同的失真退化模型具有更強的魯棒性。實驗結果表明,該算法與SRCNN、VDSR、RDN 等算法相比,能有效提升圖像超分辨率重建的準確性。盡管本文構建網絡對于超分辨率任務有效,但在語義分割等高階計算機視覺復雜任務上的效果并不明顯,網絡具有一定局限性,下一步將利用反饋機制發展一種通用的反饋網絡,以處理計算機視覺中的復雜任務。