王 威,張 彤,王 新
(長沙理工大學 計算機與通信工程學院,長沙 410114) E-mail:1214304762@qq.com
圖像超分辨率重構是從一幅低分辨率圖像恢復出一幅相應的高分辨率圖像.由于圖像超分辨重構技術能在一定程度上修正由成像設備或環境對圖像造成的損壞,圖像超分辨率重構技術被廣泛應用于醫學[1],衛星圖像,安防監控[2]等領域.圖像的超分辨率重構是一個病態的逆問題,從低分辨率圖像重構得到的高分辨率圖像結果并不唯一.早期的超分辨率重構方法主要是插值法,此類方法實現比較簡單,但是重構效果不佳.傳統圖像超分辨率重構的方法主要有:基于圖像先驗信息的方法[3,4],內部塊復用方法(internal patch recurrence)[5,6],傳統的基于學習的重構方法[7-9].
近年來,隨著深度學習網絡模型展現出強大學習能力,一種更加有效的重構方法被廣泛用于解決圖像超分辨重構這一不適定問題:基于深度學習的圖像超分辨率方法.通過訓練端到端的網絡模型,直接學習低分辨率圖像與高分辨率之間的映射關系.
深度學習的概念由Hinton等人[10]于2006年提出,是機器學習研究中的一個新的領域,其動機在于建立、模擬人腦進行分析學習的神經網絡.隨著深度學習各項技術的快速發展,目前深度學習被廣泛用于領域,主要包括圖像處理,自然語言處理,文本分析等.下面主要針對圖像超分辨重構這一具體研究領域,介紹深度學習中相關關鍵技術和網絡模型的發展改進.
傳統的人工神經網絡采用全連接的方式搭建網絡,這使得隨著網絡的加深和每一層神經節點的增加,就會導致網絡參數驟增,卷積神經網絡通過卷積核的權值共享技術大大減少了神經網絡的參數數量.除此之外,卷積神經網絡還由于其較強的特征提取能力和抗位移形變等能力,被廣泛用于圖像處理等領域.卷積神經網絡處除了卷積層,一般還有池化層和全連接層.卷積神經網絡的主要結構如圖1所示.

圖1 卷積神經網絡結構簡圖Fig.1 Schematic diagram of convolutional neural network structure
卷積神經網絡的學習能力常常受限于梯度爆炸或梯度消失等問題,隨著 Nomalization[11]、Dropout[12]、Rectified Linear Unit(ReLU)[13]等技術方法的提出,卷積神經網絡在訓練時梯度爆炸或梯度消失問題有所改善.但是,隨著網絡層數不斷加深,網絡性能并不像我們期望的那樣變得更好,反而會變得飽和,甚至下降,即出現了退化問題.Kaiming He等人針對這一問題首次提出了殘差網絡結構[14],殘差網絡通過恒等連接構建深度殘差網絡來克服退化問題,基本的恒等連接網絡結構如圖2所示,其中H(X)為我們想要學習到的最終映射關系,通過加入恒等連接,可知H(X)=F(X)+X.則恒等連接之間堆疊的非線性層需要學習的映射關系變為F(X)=H(X)-X.恒等連接的加入使得中間網絡層只需要學習輸入和目標之間的殘差.隨后,諸多基于殘差學習思想的深層網絡結構[15-17]被提出,應用到了各個領域中[18-20].

圖2 殘差學習:恒等連接Fig.2 Residual learning:identity connection


圖3 密集連接:密集連接網絡結構Fig.3 Dense connection:structure of dense connection network
生成式對抗網絡[25](Generative Adversarial Networks,GANs)是蒙特利爾大學的Goodfellow Ian于2014年提出的一種生成模型.如圖4所示,GANs中包含生成模型和鑒別模型.其中生成模型不斷學習訓練集中真實數據的概率分布.判別模型:判斷輸入的圖片是否是真實圖片,目標是能準確區分生成模型生成的圖片與訓練集中的圖片.GANs在訓練過程中通過相互競爭讓這兩個模型同時得到增強.由于判別模型的存在,使得在沒有大量先驗知識以及先驗分布的前提下也能很好的學習逼近真實數據,最終讓模型生成的數據非常接近真實數據.生成模型和鑒別模型可以根據需要靈活選擇網絡模型.雖然,生成式對抗網絡時還存在難以訓練和難以收斂等問題,但其在諸多領域優良的實際應用表現和價值,還是引起了諸多學者的關注和業界的重視.

圖4 生成式對抗網絡結構簡圖Fig.4 Structure of generative adversarial networks
基于卷積神經網絡的超分辨率模型不同于一般的卷積神經網絡模型,其中一般不包含池化層和全連接層.SRCNN[26]是首次被用于解決圖像超分辨率重構問題的深度學習模型.ESPCN[27]和FSRCNN[28]在重構方法和計算效率對SRCNN進行改進.ESPCN通過引入了亞像素卷積層高效的完成重構時的上采樣.FSRCNN是針對SRCNN的卷積層進行改進設計,并且引入了反卷積層[29]用來實現上采樣.基于卷積神經網絡的模型一般網絡結構較淺,簡單的加深卷積神經網絡的深度,在訓練時往往會變得難以收斂.其中SRCNN只包含了三層卷積層,網絡感受野大小為13.較小的感受野會使得在重構時只有小部分區域的低分辨率圖像信息可以作為參考信息,這在很大程度上制約重構效果.
表1 網絡模型和對應的損失函數
Table 1 Network model and their loss function

網絡模型 損失函數SRCNNL(Θ)=1n∑ni=1‖F(Yi;Θ)-Xi‖2EPSCN?(ω1:l,b1:l)=1r2HW∑rHx=1∑rWy=1(IHRx,y-flx,y(ΙLR))2FSRCNNL(θ)=minθ∑ni=1K‖F(Yis;θ)-Xi‖22

淺層的網絡模型一般感受野都很小,這會制約重構效果,而深層的卷積神經網絡又難以訓練.由于在圖像超分辨時,低分辨圖像和高分辨率圖像之間存在大量相同信息,同時殘差網絡具有一定的抗退化性能,所以基于殘差學習的模型充分利用這些特點,使得網絡只需要學習低分辨率圖像和高分辨率圖像之間的殘差映射關系,這相比于直接學習低分辨圖像到高分辨率圖像之間的映射關系,降低了網絡參數的復雜性,在一定意義上降低了學習難度,所以基于殘差學習的模型[30,31]一般具有較深的網絡結構.
VDSR[32]提出的網絡結構中引入了全局殘差學習,并通過結構可調梯度裁剪技術成功將網絡層數加深至20層,其感受野增加到41×41(相比SRCNN的13×13).EDSR[33]通過堆疊多個殘差單元加深網絡,并在網絡中引入了全局殘差學習,最終搭建了針對某一特殊重構放大尺度的網絡模型.同時,作者還在EDSR的基礎上,通過在網絡的前后兩端加入不同重構放大尺度的處理模塊構建了實現多尺度重構的MDSR網絡.除此之外,DRCN[34]和DRRN[35]通過不斷遞歸殘差單元加深網絡,通過遞歸的方式可以使得在加深網絡的同時不增加網絡參數,其中DRCN包含了16個遞歸層,整個網絡的感受野達到41×41.DRRN通過不斷遞歸殘差網絡塊將網絡結構加深至52層.幾種主要的基于殘差學習的模型結構如圖5所示.
低分辨率圖像相對于高分辨率圖像丟失了很多圖像高頻信息,并且每一個像素點的修復都與其周邊的圖像像素信息密切相關,所以,在重構高分辨率圖像時我們期望能盡可能多的提供低分辨率圖像信息,這不僅需要網絡具有更大的感受野,還需要充分利用網絡中提取的分層特征信息.基于分層特征融合的模型通過在網絡中引入密集跳步連接,充分融合利用網絡中的分層特征信息,為重構高分辨率圖像提供了更多更豐富的特征信息,這有助于網絡進行更加準確的圖像重構.

圖5 基于殘差學習的模型的結構簡圖Fig.5 Illustration of network structure based on residual learning
MenNet[36]以Memory block為網絡單元,對網絡中Memory block進行密集跳步連接,目的就是為了實現網絡自適應學習的連續記憶功能,同樣在Memory block中把每一個殘差單元都連接到最后的Gate Unit,與前面的Memory block輸出進行特征融合.SRDenseNet[37]以密集網絡塊作為網絡的基本單元,在通過跳步連接將每一個密集單元的輸出連接到后面的卷積層進行分層特征融合.RDN[38]在密集單元的基礎引入殘差學習,構建了殘差密集網絡作為網絡的基本單元,最后同樣地將每一個殘差密集網絡單元的跳步連接至一個1*1的卷積層進行全局特征融合.基于分層特征融合的模型針對特征信息在網絡局部和全局進行融合,使得深層網絡中各層的特征信息能更加充分的融合利用,為重構提供了更多的特征信息,這有助于網絡實現更好的重構效果.
基于對一般的深度學習網絡模型進行訓練學習,建立的低分辨率圖像到高分辨率圖像之間的非線性映射關系,由于人為設置的基于均方誤差的損失函數常常使得網絡最后學習到的重構結果往往過于平滑,會丟失一些真實高分辨率圖像中的細節和高頻信息,雖然在PSNR指標評價取得了好的效果,但是卻不一定能達到良好的人類視覺感受.生成式對抗網絡通過生成器和鑒別器的相互博弈,可以使得生成器生成的圖像更加接近真實的高分辨率圖像,能更加準確的重構出圖像的高頻細節部分.
由于存在先天條件等多方面不足,小微企業普遍面臨嚴重的融資約束(financial constraints)。其中,如何緩解信貸約束(credit constraints)成為學術研究的焦點。在企業成長理論中,金融資源是小企業最基礎的資源,信貸約束及信貸可獲得性必然影響小企業的生存和發展。首先,信貸約束會對小企業的正常經營產生直接影響,可能限制小企業正常支付、研發投入、新項目投資、經營規模擴大等經營活動,最終影響其生存。[2]此外,信貸可獲得性對企業銷售、資本及就業等也有重要影響。[3]
SRGAN[39]中通過堆疊多個殘差模塊構建了深層的生成網絡,同時構建了包含8個卷積層的鑒別網絡.整個網絡通過生成器和鑒別器的博弈交替優化,最終實現兩個網絡的納什平衡.整個網絡的優化目標如公式(1)所示,其中GθG,DθD分別表示生成函數和鑒別函數,ILR,IHR分別表示訓練圖像對中的低分辨圖像和相應真實高分辨率圖像.
(1)
訓練生成模型使其生成的圖像能夠混淆鑒別模型,使鑒別模型難以區分圖像是真實圖像還是生成圖像.而訓練鑒別模型的目的就是使其盡可能區分圖像是否為真實圖像.此外,作者針對生成器的損失函數進行了優化,提出了感知損失函數(perceptual loss),由三部分組成:內容損失(content loss),對抗損失(adversarial loss)以及正則化損失(regularization loss),這使得整個生成式對抗模型產生的圖像更加接近真實圖像.具體如表2所示,其中φi,j()表示在第i個池化層之前的第j層卷積層的特征圖譜,Wi,jHi,j表示VGG網絡中特征圖譜的維度.
表2 感知損失函數
Table 2 Perceptual loss

AttnGAN[40]提出了細粒度圖像生成,借助文本描述生成包含充分細節重構圖像.利用多模態相似性為目標,協同優化特征提取,使得GAN性能得到提升.Adrian Bulat[41]等人針對訓練時常常人為對高分辨率圖像進行雙線性下采樣以獲得用于訓練的低分辨率圖像-高分辨率圖像對.這使得網絡在處理真實低分辨率圖像時難以取得良好的重構效果,提出了先利用未配對的高分辨率圖像-低分辨率圖像訓練生成式對抗網絡,經過訓練學習到圖像的退化和下采樣方法.再把這個網絡的輸出用于訓練進行重構的生成式對抗網絡.這使得生成對抗式網絡能更好的學習到真實圖像的退化過程,能使重構結果更加真實.
基于深度學習的圖像超分辨率重構模型在重構時的處理模式一般分為直接處理低分辨率圖像和處理插值預處理的低分辨率圖像.SRCNN,VDSR,DRCN,DRRN等模型,通過雙三次插值對圖像進行退化模糊處理,再通過插值處理對圖像進行尺度變換,從而保持網絡的輸入和網絡重構后的圖像大小保持一致.在重構前通過插值預處理放大低分辨率圖像尺寸,這會相地應增加計算代價.因此,有些網絡模型[42,43]直接處理未經過預處理的低分辨率圖像,通過在網絡中引入ESPCN中的亞像素卷積層模塊或反卷積層模塊實現重構時的上采樣過程,這使得網絡可以直接對低分辨率圖像進行尺度放大的超分辨率重構.
本章將對幾種主要得基于深度學習的圖像超分辨率重構網絡進行實驗分析,通過PSNR,SSIM,MOS三個指標對比各個模型的重構效果,并對比分析了每個模型的重構所耗時間.
實驗以image91作為訓練數據集,其中包含291張圖像,通過對數據集中的圖像進行三個角度(90°,180°,270°)的旋轉,將數據集人為擴充到1164張圖像,其中1000張用作訓練集,其余的164張用作驗證集.測試數據集包括Set5,Set14,BSD100,三個數據集分別包含5張,14張,100張圖像,圖6給出了訓練數據集的部分圖示.

圖6 訓練數據集圖示Fig.6 Diagram of training data sets
具體的實驗環境配置如表3所示.實驗對傳統的重構方法和幾種主要的深度學習框架在Set5數據集上的重構結果進行了可視化,如圖7所示.其中可以見得.傳統的基于稀疏編碼的重構方法相比于基于深度學習的模型重構效果較差,包含三層卷積層的SRCNN網絡的重構效果較傳統方法有所提高,但是重構圖像質量整體效果一般.隨著網絡層數的加深,基于遞歸殘差學習的DRRN和基于密集連接的SRDenseNet重構效果都明顯優于SRCNN,但是重構效果都過于平滑,重構圖像中丟失了很多高頻信息.SRGAN通過生成式對抗網絡模型和對損失函數的改進,使得其重構效果更加接近真實原圖.在幾種方法中,SRGAN重構圖像更加符合人眼視覺感受,重構效果最好,其次是DRRN和SRDenseNet,這表明:1)隨著網絡層數的增加和分層特征信息的融合可以重構網絡提供更大的感受野和特征信息,有助于重構效果的提升;2)基于生成式對抗網絡的模型和損失函數的改進使網絡能學習到更加豐富的高頻信息,從而使得重構圖像更加接近真實圖像.
表3 實驗環境配置
Table 3 Experimental environment configuration

配置名稱 配置參數操作系統Ubuntu 16.04CPUIntel i7 3.30GHzGPUGTX1080Ti(11G)RAM16G/DDR3/2.10GHzcuDNN版本CuDNN 7.0CUDA版本CUDA9.0深度學習框架Caffe

圖7 不同方法在Set5數據集上重構結果可視化Fig.7 Reconstruct result of different methods visualization on Set5 dataset
此外,表4給出各個模型在Set14數據集上在原圖進行四倍尺度變換的基礎上進行重構時對于各個指標的定量分析.下面根據表中的各種指標進行具體的比較分析.
對于PSNR和SSIM而言,深層的網絡模型明顯優于淺層的模型,其中RDN由于結合密集連接和殘差學習,充分融合利用分層特征信息,未重構提供了大量的參考信息,其PSNR和SSIM都為所有比較模型中的最高值,分別為28.92dB和0.7891.基于生成式對抗網絡的SRGAN由于對目標函數進行了改進,其在PSNR和SSIM指標上值并不高,甚至其PSNR結果在幾種模型中最低,僅有27.01dB.
表4 不同算法模型的定量分析
Table 4 Comparison of quantitative results of different algorithms

Set14(×4)BicubicSRCNNESPCNFSRCNNVDSRDRCNDRRNSRDenseNetRDNSRGANPSNR26.0127.5027.7327.6528.0328.0528.2128.5128.9227.01SSIM0.70250.75120.76110.75860.76750.76710.77210.77810.78910.7815MOS1.862.682.912.883.013.093.283.313.413.61Time0.023s0..237s0.038s0.059s0.301s0.313s0.3290.369s0.354s0.367s
對于MOS取值,也就是人眼視覺效果評價指標,該指標能反映各個模型的重構結果在人類視覺感官上的優劣.可以看出基于生成式對抗網絡的SRGAN雖然在PSNR和SSIM指標上結果并不理想,但由于利用對抗訓練和對損失函數進行了改進,SRGAN的重構結果更加接近真實圖像,更加符合人類的視覺感受.取得的MOS值也是所有模型的最高值,高達3.61.
對于重構時間而言,深層的網絡模型勢必會導致更多的權值參數和計算量,所以深層結構的模型在重構時間上遠大于淺層模型.在淺層模型中ESPCN和FSRCNN通過對網絡結構和卷積層的改進較SRCNN重構更快,用時分別為0.038s和0.059s.
綜上所述,隨著網絡層數的增加,通過殘差學習和密集連接使得特征信息的充分融合利用,有利于為網絡重構提供更多的參考信息和緩減學習難度,網絡的重構效果也越來越好.其中,以殘差密集網絡為單元的RDN模型綜合表現最優.然而,RDN雖然取得了較高的PSNR,SSIM和MOS值.但是其實際重構圖像紋理細節過于平滑,很多細節高頻信息不能得到很好的重構和修復.針對這一問題,SRGAN對損失函數進行改進,使得重構圖像更加接近真實圖像,對高頻信息的重構更加準確.
圖像超分辨率重構是計算機視覺領域重要的研究工作,可以促進計算機視覺領域的其他工作,例如圖像識別,圖像分割等等,具有相當重要的意義.基于深度學習的圖像超分辨率重構方法自提出以來取得了較大的進步和發展,接下來將對其未來的發展趨勢進行討論.
1)更深更加融合的網絡結構,對于重構網絡來說,更大的深度意味著更大的感受野,同時利用殘差跳步連接和密集連接重構融合網絡中各個層的特征信息,都可以為重構提供更多的參考信息.網絡的重構效果也會隨之而提高.
2)改進損失函數,目前常見的損失函數基本上都是基于MSE,結果表明這種損失函數可以使得網絡取得較高的PSNR.但是往往使得重構圖像過于平滑丟失了細節的高頻信息,通過研究真實低分辨圖像的退化模型,改進損失函數,使得網絡學習到能重構更加接近真實圖像的參數模型.
3)優化生成式對抗網絡,生成式對抗網絡通過對抗學習可以使得網絡的重構圖像具有更多的高頻細節信息,更加接近真實圖像.但是,生成式對抗網絡本身還存在諸多問題,比如難以訓練,不穩定等問題.所以對生成式對抗網絡進行優化將是接下來的研究熱點.
4)更加科學準確的評價標準,目前主要的評價圖像重構效果的指標多為PSNR和SSIM,但是有些PSNR和SSIM取值高的圖像,質量并不一定高.所以PSNR和SSIM并不能很科學準確的評價圖像質量,而已有的主觀評價比較繁雜,且需要大量的人力,操作難度較大.通過對真實高分辨率圖像的結構分布特點進行研究,得到更加準確的圖像評價標準.這也將是圖像超分辨率重構的一個研究重點.