吳夢凡,何小海,卿粼波,翟 森,任 超
(四川大學 電子信息學院,四川 成都 610065)
圖像復原是圖像處理領域被廣泛研究的一類問題,其旨在從低質量降質圖像中恢復出包含更多細節的高質量圖像,在視頻增強、醫療診斷及智能監控等領域都有著重要應用。通常,低質量降質圖像的退化過程可表示為:

式中:y為低質量觀測圖像;x為原始高質量圖像;k為模糊核;?為卷積操作;↓s為s倍的下采樣操作;n為圖像噪聲,一般采用高斯噪聲進行建模。
圖像復原任務即希望能從給定的y中恢復出x,但由于這是一個病態的逆問題,具有高度的不適定性,因此一直以來具有較強的挑戰性。
近年來,基于深度學習的方法由于其網絡強大的特征表示能力,在圖像復原領域引起了廣泛關注,涌現出了大量相關研究,并取得了顯著的性能突破。該類方法通常基于訓練樣本,通過深度網絡去擬合學習高低質量圖像間的映射關系,表現出了優秀的復原性能。Dong 等人[1]提出的超分辨率網絡(Super-Resolution Convolutional Neural Network,SRCNN)是將卷積神經網絡應用于圖像超分辨率重建的開山之作,雖然網絡層數較少、結構較簡單,但和一些傳統算法相比,其性能已經表現出了突出的優越性,也表明了卷積神經網絡在圖像復原領域巨大的潛能。隨后,Kim 等人[2]提出了一種基于殘差學習的網絡,該網絡層數更深且通過學習輸入圖像的殘差信息,很好地降低了訓練難度。周登文等人[3]同樣采用了殘差結構,但額外引入了遞歸結構,使得在同等網絡深度下網絡參數量明顯減少。Zhang 等人[4]引入通道注意力模塊,提出了一個殘差通道注意力網絡用于圖像超分辨率重建,取得了很好的性能。Zamir 等人[5]提出了一種多階段漸進式學習的復原網絡,通過編解碼結構來學習圖像的多尺度信息,并進一步將不同階段的多尺度特征進行深度的融合,補充了在網絡傳遞中引起的部分信息缺失,獲得了更好的細節恢復能力。
但是,目前基于深度學習[6]的復原網絡大多針對假定降質信息已知的非盲復原任務,即基于某種已知的特定降質條件生成訓練樣本進行網絡訓練,網絡性能與該降質條件高度耦合,當實際降質與該假設不同時,網絡性能就會明顯下降。實際應用中,要處理的圖像往往降質類型是更復雜且未知的,此類網絡不再適用。因此,也有一些研究工作[7-9]開始著眼于盲圖像復原的研究,盲圖像復原無須要求降質條件已知,而是首先進行圖像降質信息的估計,其次基于該降質信息進行下一步的復原工作。相較于非盲圖像復原只能處理單一降質條件,它能處理降質更加復雜的情況,且利用了圖像降質信息,能幫助復原網絡得到更好的重建結果。
基于上述研究基礎,本文提出了一種基于降質信息估計的盲圖像復原算法,該算法主要由噪聲估計網絡、模糊核估計網絡和重建網絡3 部分組成。對于輸入的低質量圖像,首先通過噪聲估計網絡和模糊核估計網絡得到降質圖像的噪聲水平和模糊核;其次將估計得到的噪聲水平和模糊核作為降質信息,與輸入的低質量圖像一起輸入重建網絡,以幫助網絡獲得更好的復原效果。本文算法不論是在主觀視覺效果上還是客觀評價指標上都取得了不錯的結果,恢復出了較高質量的圖像。
此處盲圖像復原算法無須要求降質參數已知,而是首先基于某種算法對降質信息進行估計,其次在此基礎上完成重建。相較于非盲圖像復原算法,它能處理更多種降質情況,但由于挑戰性也更大,因此針對它的相關研究相對較少。
早期的盲復原算法大多是基于重建的算法,且大多數復原算法僅聚焦于低質量圖像中模糊的去除,對于噪聲及其他降質因素并未充分考慮。這些算法大多是將問題分解為模糊核估計和非盲復原兩個步驟:第一步通過模糊核估計算法得到圖像模糊核;第二步基于此模糊核將盲復原問題轉換為通常的非盲復原問題來解決。早期,涌現出了大量相關方法[10-13],但通常涉及復雜的優化過程,如文獻[13]中利用自然圖像的自相似性屬性來預測潛在的模糊核,并基于該模糊核完成后續重建;文獻[12]提出了一種框架聯合實現模糊識別和圖像重建,采用一種軟模糊先驗來擬合模糊模型相關性,基于此引導模糊估計的優化,并采用基于交替最小化的迭代算法來逐步估計圖像模糊和高質量圖像。然而,由于未考慮圖像噪聲等因素,此類方法在核預測過程中很容易受到輸入噪聲的影響,導致核估計不準確,造成性能下降。之后,也有一些研究工作將深度學習方法應用到盲復原算法中。例如,在適應各種模糊核結構的網絡(Conditioned All Blur kernels,CAB)[14]和多重降質超分辨率網絡(Super-Resolution Network For Multiple Degradations,SRMD)[15]中,網絡可以將模糊核作為一個額外的輸入,并根據所提供的核生成不同的結果。文獻[16]利用圖像信息的內部遞歸性,提出了一種無監督的超分辨率重建(Super Resolution,SR)方法來對具有不同模糊核的圖像進行重建,它根據從輸入圖像本身提取的圖像塊訓練一個小的卷積神經網絡,訓練后的特定網絡可用于該圖像的超分辨率重建。文獻[7]對降質情況進行了更全面的研究,針對模糊、噪聲、下采樣及壓縮并存的情況,提出了對應的網絡級聯盲超分辨率網絡(Cascaded Blind Super Resolution network,CBSR)用于低質量圖像的復原重建。該網絡能對低質量圖像中的多種降質因素進行估計,并將估計所得降質信息用于重建過程,幫助獲得更好的復原性能。這些方法雖然有效地提升了性能,但仍然存在很多問題,如對降質情況分析不夠全面、存在降質信息估計誤差等問題。
目前,大多數基于卷積神經網絡的圖像復原算法都是基于降質參數已知的模擬降質,這些算法雖然取得了不錯的性能,但通常只適用于單一的降質類型。當面對降質類型更復雜且參數未知的情況時,并不能很好地處理。針對此問題,本文提出了一種基于降質信息估計的盲圖像復原算法,與通常的復原算法相比,額外引入了圖像本身的降質信息作為輸入,幫助復原網絡獲得更好的重建結果。降質信息是通過特定的降質估計網絡估計得來,對于降質參數未知的情況,能進行降質參數的估計,進而使后續復原網絡可以處理多種降質情況。本文研究了復原領域通常采用的高斯噪聲、高斯模糊、下采樣并存的復合降質模型,復原過程包括對圖像的去噪、去模糊及超分辨率重建。總體思路為,對于輸入圖像,首先通過相應的估計網絡對降質信息進行估計,其次將估計所得也作為輸入送往重建網絡,指導并輔助后續重建網絡的訓練。
本文提出的基于降質信息估計的盲圖像復原算法總體網絡結構如圖1 所示。該網絡框架主要由噪聲估計網絡、模糊核估計網絡和重建網絡3 部分組成。噪聲估計網絡和模糊核估計網絡分別負責圖像噪聲水平和模糊核的估計,重建網絡在得到上述估計后進行最后的復原重建工作。噪聲估計網絡、模糊核估計網絡及重建網絡的具體結構見下文。

圖1 基于降質信息估計的盲圖像復原算法網絡結構
對于輸入降質圖像,首先通過噪聲估計網絡估計它的噪聲水平,其次將上一步估計得到的噪聲水平和降質圖像輸入模糊核估計網絡里進一步估計模糊核信息。此外,為了節省計算量,對模糊核做了主成分分析(Principal Component Analysis,PCA)完成降維處理[15]。最后將降維后的模糊核張量和噪聲水平一起作為圖像降質信息,聯合降質圖像一起經雙三次插值(Bicubic)后輸入重建網絡,得到最終重建結果。重建網絡因為充分利用了圖像降質信息,能獲得更好的重建結果,恢復出細節更豐富的高質量圖像。
本文采用了一個簡單的級聯結構網絡來進行噪聲水平估計,且鑒于小波變換在提升性能及節省網絡計算開銷上的優異性能,在網絡首尾分別引入了小波變換和小波逆變換,網絡結構如圖2 所示。

圖2 噪聲估計網絡結構
對于輸入的降質圖像,首先通過小波變換將其變換到小波域上,并通過一個3×3 卷積層進行初步的特征提取;其次將其輸入到連續10 個由3×3卷積層、批量歸一化(Batch Normalization,BN)層、整流線性單元(Rectified Linear Unit,ReLU)組成的卷積模塊中進行進一步的學習;最后將結果再做一個對應的小波逆變換變換到像素域,得到估計的噪聲水平張量。
對于該噪聲估計網絡的訓練,本文使用了L2損失和TV 損失來約束網絡訓練結果,其損失函數定義如下:

式中:σ為目標噪聲水平張量;σest為網絡估計的噪聲水平張量;λn為正則項系數。式(2)中第二項的TV 損失的表達式為:

式中:Δh為水平方向的梯度算子;Δv為垂直方向的梯度算子。
本文模糊核估計網絡采用和圖2 所示噪聲網絡相同的結構,不同之處在于,除了輸入降質圖像,還將噪聲估計網絡估計得到的噪聲水平張量一起送進了網絡。除此之外,為了更好地保證估計的精確性,本文選擇更容易估計的模糊核方差作為網絡估計目標,而不是直接估計模糊核。
與噪聲估計網絡類似,模糊核估計網絡的損失函數定義為:

式中:λk為正則項系數;k為目標模糊核方差張量;kest代表網絡估計的模糊核方差張量。TV 損失函數的具體形式為:

在通過網絡得到估計的模糊核方差張量后,可將模糊核方差張量的均值作為估計的模糊核方差,通過高斯模糊核生成公式,得到估計的模糊核。該二維高斯模糊核的公式為:

本文選取用于實驗的高斯模糊核大小為15×15,結合上述公式可以發現,若將模糊核的每一個值都拓展成一個M×N×1 的張量,則會得到一個尺寸為M×N×225 的模糊核張量。該模糊核張量會極大增加網絡訓練難度,且存在大量冗余信息。有相關研究工作發現[15],使用PCA 技術對高斯模糊核進行維度降維,能在保持模糊核絕大部分信息的同時降低數據量,且已被證明在圖像復原任務中是有效的。故本文采用了上述相同思路,對估計的高斯模糊核進行了進一步的PCA 降維處理。具體流程如圖3 所示,估計的15×15 模糊核首先被拉伸成一個225 維的向量k1,其次將其與PCA 矩陣相乘降低其維度至15 維,最后通過維度擴展得到一個大小為M×N×15 的模糊核張量。其中,圖中R指張量或向量的具體維度。

圖3 PCA 降維流程
本文提出的重建網絡結構如圖4 所示,網絡的輸入為低質量圖像和估計得到的降質信息,包括噪聲水平張量和模糊核張量,輸出為重建的高質量圖像。該重建網絡采用了編解碼的結構模式。

圖4 重建網絡結構
在編碼端,首先,將輸入的低分辨率圖像和估計所得降質信息級聯起來,經過小波變換后,將其下采到下一級;其次,通過一個5×5 卷積層提取圖像特征,并隨后經過一個多層特征融合卷積塊,該融合卷積塊由4 個3×3 卷積層組成,每個卷積層的輸出經過合并(concatenation)操作級聯在一起,通過1×1 卷積層完成融合;再次,特征再經過一次小波下采,并同樣經過提取特征的3×3 卷積層和多層特征融合卷積塊;最后,將所得通過一個殘差塊得到最后的編碼特征。該殘差塊具體結構由3×3 卷積層、ReLU 激活函數、3×3 卷積層組成。
在解碼端,采用和編碼端對稱的結構。通道特征先經過上采操作,然后通過多層特征融合卷積塊進行處理,且在同一水平層,為了減小編解碼端特征的差異,編碼端的通道特征被殘差路徑處理后與上采后的通道特征相加。稍有差異之處在于,解碼端的多層特征融合卷積塊去掉了殘差跳連接。在經過兩次上采與特征融合后,最后經過一個7×7 卷積層將特征通道數降維至12,并通過最后一層上采樣后輸出3 通道的殘差,與輸入圖像相加,得到最終的重建圖像。整個重建網絡的損失函數:

式中:x為目標高分辨率圖像;xrec為網絡重建的高分辨率圖像。
為驗證本文提出復原算法的有效性,基于上文所述網絡結構進行了網絡訓練。采用的訓練集為DIV2K、BSD500 和WED4744,測試集為Set5、Set14 和Urban100。同時,使用圖像處理領域常用的兩個客觀評價指標峰值信噪比(Peak Signal-to-Noise Ratio,PSNR)和結構相似性索引測度(Structure Similarity Index,SSIM)來對網絡性能進行評估。分別進行了超分辨率倍數為2 和4 的復原任務。
該網絡的訓練共分為兩個階段。第一階段單獨進行噪聲估計網絡、模糊核估計網絡及重建網絡的訓練。訓練過程中,設置噪聲估計網絡的噪聲水平范圍為0~50,模糊核估計網絡的模糊核方差范圍為0.5~6。此階段,設置3 個網絡初始學習率均為1e-4,之后每經過40 000 次迭代降低0.1 倍。第二階段,在第一階段訓練的基礎上將3 個網絡級聯起來,實現進一步的精調訓練。該階段,重建網絡的學習率設置和上一階段保持一致,但固定噪聲估計網絡和模糊核估計網絡的學習率為1e-6。
此外,在保持相同設置下,本文選擇了現有的一些圖像復原算法來和本文提出的算法對比。所采用的對比算法包括深度超分辨率網絡(Very Deep Super-Resolution Network,VDSR)[2]、增強深度超分辨率網絡(Enhanced Deep Super-Resolution network,EDSR)[17]、多重降質超分辨率網絡(Super-Resolution Network For Multiple Degradations,SRMD)[15]、深 度即插即用超分辨率網絡(Deep Plug-and-play Super-Resolution network,DPSR)[18]、圖像復原卷積神經網絡(Image Restoration Convolutional Neural Network,IRCNN)[19]和語義推理注意力網絡(Context Reasoning Attention Network,CRAN)[20]。其中,EDSR、VDSR、CRAN 是非盲超分辨率算法,IRCNN 和DPSR 是兩種經典的復原算法。SRMD 是一種可以接收噪聲水平張量和模糊核張量的非盲復原算法,本文將本章算法中的噪聲估計網絡和模糊核估計網絡與SRMD級聯起來作為一種對比算法,記作盲多重降質超分辨率網絡(Super-Resolution network for Multiple Degradations in Blind case,SRMDB)。此 外,為了保證公平性,選擇重新訓練了VDSR、EDSR 和CRAN 等算法,所用訓練集與本章算法完全一致,并完全保證相關實驗設置相同,重新訓練后的幾種對比算法分別記為VDSR*、EDSR*和CRAN*。
為了評估所提算法在圖像復原任務上的性能,分別在常用的測試集Set5、Set14、Urban100 上進行了實驗。實驗中,本文首先用大小為15×15 的高斯模糊核對圖像進行模糊,其次進行相應倍數的雙3 次下采,最后在模糊圖像上添加高斯噪聲,得到降質圖像。同時,為了驗證本文提出算法在不同程度降質條件下的效果,使用了兩種降質設置生成測試圖像:設置1,噪聲水平為5,高斯核方差為2;設置2,噪聲水平為10,高斯核方差為4。
在降質設置1 下,表1 給出了不同算法在3 個測試數據集上的平均PSNR和SSIM值。此外,為了能對復原結果有一個更直觀的感受,圖5 列出了不同算法對圖像PPT3 的重建結果圖。
由表1 可見,本文方法在3 個數據集上都取得了最高的PSNR和SSIM,且無論是低倍數重建還是高倍數重建,性能都明顯好于其他對比算法。例如,在Set5 上,進行2 倍重建時,比對比算法中性能最好的CRAN*還要高出0.29 dB 和0.005 6;4 倍重建時,比CRAN*高出0.55 dB 和0.008 4。除此之外,在Set14 和Urban100 上,不管是2 倍重建還是4 倍重建,也都取得了最高的指標,且相比于其他算法有比較大的優勢。此外,通過圖5 從視覺效果上來觀察,VDSR 和EDSR 重建結果噪聲殘留仍比較明顯,DPSR 相較來說好一點,但模糊程度比較明顯。VDSR*和IRCNN 能基本保證圖像的清晰度,但卻額外引入了一些偽影。相比之下,對比算法中EDSR*和CRAN*獲得了最好的重建效果,但對于圖像的一些細節信息并未很好地恢復出來。而本文方法,重建出了比較清晰的圖像,且最大程度地保證了圖像細節信息的保留,獲得了較好的視覺效果。

表1 不同方法去除15×15 高斯模糊(方差為2)和噪聲(噪聲水平為5)的PSNR 和SSIM

圖5 不同算法在圖像PPT3 上的重建效果
在降質設置2 下,表2 列出了不同算法在3 個測試數據集上的平均PSNR和SSIM值。圖6 給出了不同算法在圖像butterfly 上的重建效果圖。由表2 結果可以看到,2 倍和4 倍重建時,所有數據集上對比算法中CRAN*性能最好,但和本文方法相比,其結果還是更低。以2 倍重建為例,本文方法的結果在3 個數據集上兩個指標分別比CRAN*高0.15 dB 和0.004 2、0.16 dB 和0.005 5、0.25 dB和0.0。對于圖6,這些算法處理的圖像視覺效果呈現出和降質設置1 中類似的結果,本文方法重建出的圖像明顯要好于其他對比算法,圖像更清晰且細節更豐富。

圖6 不同算法在圖像butterfly 上的重建效果

表2 不同方法去除15×15 高斯模糊(方差為4)和噪聲(噪聲水平為10)的PSNR 和SSIM
綜上所述,說明本文提出的圖像復原算法能比較好地實現低質量圖像的復原任務,可以重建出比較高質量的圖像,不僅在主觀視覺效果而且在客觀評價指標上,都有比較明顯的優勢。
本文提出了一種基于降質信息估計的盲圖像復原算法。該算法借助圖像降質信息幫助重建網絡獲得更好的性能,使整個復原網絡能更好地適用于多種降質情況。該算法主要由噪聲估計網絡、模糊核估計網絡及重建網絡3 部分組成。對于輸入的低質量圖像,首先經過噪聲估計網絡估計圖像噪聲水平,其次結合估計所得結果進一步通過模糊核估計網絡估計圖像模糊核,最后將估計所得降質信息(即噪聲水平和模糊核)聯合低質量圖像一起送往重建網絡,恢復出對應高質量圖像。實驗表明,本文提出的圖像復原算法能夠很好地處理不同降質情況的低質量圖像,從中恢復出較高質量的圖像,并且在客觀評價指標上和主觀視覺效果上,都取得了很好的效果。