楊斌 李桐 解凱
(北京印刷學院信息工程學院 北京市 102600)
近年來深度學習的超分辨重建方法已成為主流。用神經(jīng)網(wǎng)絡進行超分辨重建主要可分為兩類方法:一類是訓練神經(jīng)網(wǎng)絡去擬合低分辨率圖像空間與高分辨率圖像空間的映射關系,可以將其概括為非線性映射法。它的特點是使用單一網(wǎng)絡,通過不斷優(yōu)化減小損失函數(shù)的值,確定網(wǎng)絡是否擬合分辨率映射空間。典型的網(wǎng)絡結構有SRCNN、ESPCN、VDSR和EDSR等;另一類是訓練一組神經(jīng)網(wǎng)絡從低分辨率空間生成合理的高分辨率像素,使用另一組神經(jīng)網(wǎng)絡判別生成圖像是否和原始圖像相近,通過判別網(wǎng)絡學習帶動生成網(wǎng)絡學習,改進生成網(wǎng)絡重建圖像質量,可以將其概括為生成法。它的特點是使用兩個或多個神經(jīng)網(wǎng)絡,以判別神經(jīng)網(wǎng)絡監(jiān)督生成網(wǎng)絡重建圖像質量。如采用生成對抗網(wǎng)絡(Generative Adversarial Net-work,GAN)結構的SRGAN,ESRGAN,RankSRGAN和SPSR。非線性映射法在重建過程中可以取得更高的峰值信噪比(PSNR)與結構相似性(SSIM),但重建圖像的細節(jié)方面較為平滑。采用GAN 結構的生成方法通過生成網(wǎng)絡與對抗網(wǎng)絡博弈的方式重建的圖像在細節(jié)方面更接近人類視覺感知。
SRGAN 與ESRGAN 在生成網(wǎng)絡設計與改進中并未考慮利用合適的網(wǎng)絡結構對圖像先驗信息進行學習。超分辨重建以像素作為研究對象,在生成模型中最大化利用低分辨圖像的像素信息,使其以像素圖像塊的形式重建,既可以保證生成圖像重建的真實感,也提高了重建效率。因此,使用學習圖像先驗信息更優(yōu)的網(wǎng)絡結構重建有重要意義。且隨著生成網(wǎng)絡先驗學習能力增強,沿用SRGAN 的判別模型會過早失去對樣本與生成圖像的判別能力,導致模型坍塌,失去對抗性,使得判別模型結構上也需要改進。
本文在第2 部分將Deep Image Prior(DIP)的方法進一步設計,證明不同網(wǎng)絡結構對圖像先驗的學習能力有差異。程德強等已經(jīng)使用一種遞歸結構的U-Net 提升了超分辨重建質量。通過對比殘差結構網(wǎng)絡與遞歸結構U-Net 網(wǎng)絡對圖像先驗的學習能力,遞歸U-Net 網(wǎng)絡結構在學習圖像先驗能力更出色。在第3 部分網(wǎng)絡設計中使用遞歸結構的U-Net作為GAN 的生成器進行圖像重建,使用殘差結構改進原VGG 結構的判別網(wǎng)絡,增強判別網(wǎng)絡的判別能力。第4、5部分為實驗結果與總結。
研究者通常認為神經(jīng)網(wǎng)絡生成真實圖像能力來自于學習了大量示例圖像的真實圖像先驗。DIP 中,首先對神經(jīng)網(wǎng)絡隨機初始化,通過均勻分布生成的噪聲經(jīng)過網(wǎng)絡傳播后模擬圖像的退化過程,并將退化后噪聲與真實退化圖像用反向傳播的方式進行學習。噪聲在迭代中逐漸變成未退化的圖像(如圖1)。整個過程并沒有使用大量示例圖像,只用真實的退化圖像即得到未退化圖像證明了神經(jīng)網(wǎng)絡自身可以學習到大量低層次的圖像先驗信息。神經(jīng)網(wǎng)絡經(jīng)過長時間發(fā)展已設計出多種結構。由于不同神經(jīng)網(wǎng)絡的結構差異以及參與圖像處理的任務不同,作為生成網(wǎng)絡在學習圖像先驗的能力上必然會存在差異。
圖1:三種網(wǎng)絡對butterfly 學習結果
在模擬退化過程中,噪聲n 會經(jīng)歷兩步變化。第一步生成網(wǎng)絡會生成未退化的圖像,即超分辨任務中的高分辨率圖像G(n)。第二步為學習圖像的退化過程,即下采樣G(n)成為品質接近于x的低分辨率圖像。在整個過程中,使用不同結構的G(n)即可對比不同生成網(wǎng)絡學習圖像先驗信息的能力。當噪聲通過不同結構的網(wǎng)絡學習高分辨率退化圖像時,受限于不同結構對圖像先驗信息的學習能力,亦或者說網(wǎng)絡捕捉真實圖像的概率分布能力與捕捉低分辨率圖像細節(jié)能力存在差異,不同網(wǎng)絡在一定的迭代次數(shù)下生成高清圖像的速度與質量也存在不同。
由公式(1),分別對SRGAN、ESRGAN 的生成網(wǎng)絡與遞歸結構的U-Net 做比對實驗。低分辨圖像LR 用插值法的對原始圖像進行4 倍下采樣得到。為了更好的觀察噪聲在網(wǎng)絡傳播,將SRGAN 與ESRGAN 生成模型中用于對低分辨率圖像上采樣到高分辨率圖像的模塊移除,并對ESRGAN 生成網(wǎng)絡增加BN 層,使三種結構的對比條件一致。網(wǎng)絡迭代次數(shù)為2500 次。
網(wǎng)絡在學習過程中,噪聲PSNR與SSIM變化情況如圖2。
圖2:三種網(wǎng)絡學習圖像先驗PSNR 與SSIM 變化
經(jīng)過2500 次迭代后,最終生成圖像的指標結果:
從過程圖1 與表1 來看,在重建圖像時,使用遞歸結構的U-Net 迭代收斂速度最快,生成圖像質量最高。ESRGAN次之,SRGAN 的生成模型最差。ESRGAN 與SRGAN 均是殘差結構的網(wǎng)絡,區(qū)別是ESRGAN 加入了密集連接結構。遞歸U-Net 模型的表現(xiàn)最好,證明了該結構的網(wǎng)絡提取圖像先驗信息的能力優(yōu)于殘差結構。
表1:三種網(wǎng)絡學習先驗最終指標
網(wǎng)絡損失函數(shù)參考了彭晏飛、張中興等人的設計方法,對SRGAN 的損失函數(shù)進行改進。除了SRGAN 的內容損失與對抗損失外,還加入全變差損失(TV Loss)。全變差損失可以抑制生成器中噪聲的污染,但代價是增加圖像的空間平滑性,所以在損失函數(shù)里權重不宜過大。此時生成網(wǎng)絡損失函數(shù)可表示為公式(2):
式中,l是圖像的像素的MSE Loss,l是經(jīng)典SRGAN 網(wǎng)絡中提出的一個為防止MSE Loss 生成紋理過于平滑的更符合感知效果的損失函數(shù)。本文用VGG19 網(wǎng)絡作為l。l與l合起來即為重建過程的內容損失,l是SRGAN 網(wǎng)絡中提出為更好欺騙判別網(wǎng)絡其改進生成圖像細節(jié)的對抗損失,l為全變差損失。
各損失函數(shù)的具體公式如下:
上述各式,l中s 為上采樣因子;l中H,W為所采用的所述判別網(wǎng)絡相應特征圖的高度與寬度, 為在經(jīng)過第i 次池化前,通過第j 次卷積后的特征圖運算;l中β 為TV Loss 的可調參數(shù),當β<1 時容易生成圖像偽影,β>1 時,圖像會更加平滑。
3.2.1 生成網(wǎng)絡模型
U-Net于2015 年提出,是一種快速精確進行圖像語義分割的網(wǎng)絡。由第2 部分的分析表明,遞歸形式的U-Net可以將不同深度的圖像特征進行融合,學習更多的圖像先驗信息。ESRGAN 中使用殘差-殘差密集塊結構(RRDB),表明通過密集連接結構能將更多低分辨率圖像特征在傳播過程中補償,重建圖像的細節(jié)質量會更好。本文的U-Net 網(wǎng)絡在設計上使用遞歸的方式,同時加入了跳躍連接結構,補償每一層深度下丟失的特征信息。
在網(wǎng)絡上采樣方法的選擇中,通??梢圆捎貌逯?、反卷積、亞像素卷積等多種方法。經(jīng)典U-Net 結構選擇插值法對低分辨率圖像進行像素填充。使用插值方法會導致上采樣后圖像過于平滑,不利于圖像重建。亞像素卷積以像素塊形式填充,避免上采樣后圖像平滑。由于用圖像塊填充,使其上采樣后的圖像存在明顯的棋盤效應。在設計上,本文通過增加網(wǎng)絡第一層卷積輸入通道數(shù)來進行抑制。如圖3,當輸入通道數(shù)為16 時,重建圖像有明顯的棋盤效應,而隨著輸入通道的增加,在輸入通道數(shù)為128 時,網(wǎng)格更加細化,棋盤效應會顯著減弱。除此之外,相較于插值法,亞像素卷積的計算量更小。為提升重建圖像的細節(jié)質量與重建效率,本文U-Net 中所有上采樣方法均采用亞像素卷積。
圖3:不同輸入通道重建結果
將上采樣模塊放置在前端時,使整個過程中學習到更多的原圖先驗信息,擴充的特征圖通過網(wǎng)絡學習到原圖像素排列的映射關系,保證生成圖像結構與原圖一致,并在細節(jié)上越來越接近于真實圖像。在網(wǎng)絡結構中最后輸出卷積層的卷積核尺寸選擇上,不同尺寸也會對重建圖像細節(jié)產(chǎn)生影響。為更有效抑制亞像素卷積帶來的棋盤效應,為了讓圖像更自然,本文將最后的輸出卷積核尺寸設為3。U-Net 生成網(wǎng)絡結構如圖4。其中k 表示卷積核尺寸,n 為特征圖數(shù)量,s 為卷積步長。
圖4:遞歸結構U-Net 生成網(wǎng)絡模型
3.2.2 判別網(wǎng)絡模型
在生成模型訓練效率超過判別模型效率時,判別模型會更早的達到判別極限,起不到博弈的作用,導致模型崩塌。SRGAN 判別網(wǎng)絡采用VGG 網(wǎng)絡結構實現(xiàn)。通過VGG 將圖像層層降采樣,得到圖像高級細節(jié)特征。最終通過對這些特征的分類,得到真實圖像與重建圖像的分類概率。遞歸結構的U-Net 生成網(wǎng)絡通過學習圖像先驗使其在訓練效率上高于SRGAN 的生成結構。僅在少次數(shù)迭代學習中,判別網(wǎng)絡就無法對生成圖像與真實圖像進行分辨。因此需要對原始模型進行改進。
為提升判別網(wǎng)絡的效率,需要得到深層的高級特征或者更多細節(jié)特征對生成圖像進行判別。本文在VGG 結構的降采樣模塊前增加殘差結構,通過加深網(wǎng)絡層數(shù)使判別網(wǎng)絡提取到更深層的高級圖像特征。相較于前者的7 層網(wǎng)絡結構,改進判別結構的網(wǎng)絡深度增加到了14 層。同時,殘差網(wǎng)絡的結構特點在于使用殘差進行特征補償,使經(jīng)過殘差塊的退化信息的通過補償流入到下一個殘差塊。既提高了信息流通,也并且避免了由與網(wǎng)絡過深所引起的消失梯度問題和退化問題。通過加入殘差結構的改進,圖像在重建過程中學習到更高質量的細節(jié)。改進判別網(wǎng)絡結構如圖5。
圖5:改進的殘差結構判別網(wǎng)絡模型
表4:五種數(shù)據(jù)集不同方法重建SSIM 指標
本文的實驗環(huán)境,硬件環(huán)境:Intel(R) Core(TM) i7-7700 3.6GHz 處理器,16G 運行內存,NVIDA GeForce GTX 1080(8G)顯卡。軟件環(huán)境:Windows10 操作系統(tǒng),搭載Python 3.8 版本的Anaconda 4.8.5。深度學習框架為Pytorch 1.6。
數(shù)據(jù)集方面,本文選用了PASCAL-VOC2012 作為訓練集,將超分辨重建常用的Set5 作為驗證集。網(wǎng)絡參數(shù)采用Adam 方法進行優(yōu)化,初始學習速率(Learning Rate)為10,指數(shù)衰減率(遺忘因子 )為0.9。所有Leaky ReLU 函數(shù)的超參值設為0.2。訓練的迭代次數(shù)為500 次。為方便稱呼,將本文設計的網(wǎng)絡稱為USRGAN。
在開始訓練前,也需將數(shù)據(jù)集做預處理。先將數(shù)據(jù)集中的圖片隨機裁剪成88×88 的小塊作為真實圖像標簽保存,再通過雙三次插值的方法將標簽圖像縮小4 倍,作為網(wǎng)絡輸入。在同樣迭代訓練500 次的條件下,將SRGAN 的訓練過程和USRGAN 過程比較,最佳數(shù)據(jù)如表2 所示。
表2:SRGAN 與USRGAN 訓練最佳指標
得益于遞歸結構U-Net 對圖像先驗的學習能力,遞歸結構U-Net 作為生成網(wǎng)絡可以達到更低的網(wǎng)絡損失。整個訓練過程的驗證集指標表明,相比于SRGAN,同條件訓練過程下的USRGAN 在驗證集的PSNR 與SSIM 指標明顯好于前者。
本文在5 個公開的數(shù)據(jù)集Set5、Set14、BSDS100、Uraban100 以及Manga109 中測試模型重建效果。以4 倍的放大因子作為基準進行圖片重建,并與經(jīng)典的SRCNN、EDSR 網(wǎng)絡結構,流行的超分辨生成對抗網(wǎng)絡SRGAN、ESRGAN、RankSRGAN 的重建結果的PSNR 指標、SSIM指標進行對比。對比結果在表3 與4。
表3:五種數(shù)據(jù)集不同方法重建PSNR(單位:dB)指標
在PSNR 方面,以遞歸結構U-Net 為生成模型設計的GAN 在重建性能上有顯著提升,在所有網(wǎng)絡中表現(xiàn)最佳;在SSIM 指標中,遞歸U-Net 生成網(wǎng)絡也在多個數(shù)據(jù)集中展現(xiàn)了更優(yōu)秀的表現(xiàn)。這種結果得益于U-Net 網(wǎng)絡在圖像先驗提取中的出色表現(xiàn)。USRGAN 在重建細節(jié)質量仍然存在部分棋盤效應現(xiàn)象,較ESRGAN 與RankSRGAN 有差距,但與經(jīng)典的SRCNN、EDSR 這些非線性映射網(wǎng)絡相比,通過GAN 方法重建,圖像細節(jié)質量有明顯優(yōu)勢。
從Set5、Set14、BSDS100 以及Urban100 中選取圖片,使用USRGAN 與其他網(wǎng)絡在4 倍采樣因子下重建結果如圖6。重建圖片上可看出USRGAN 在細節(jié)上與原圖細節(jié)近乎一致,這也使USRGAN 在PSNR 與SSIM 指標上相較于其他網(wǎng)絡表現(xiàn)出更穩(wěn)定更優(yōu)秀的性能。
圖6:不同重建方法重建圖片(×4)
本文對比了超分辨中殘差結構網(wǎng)絡與遞歸結構U-Net 網(wǎng)絡對圖像先驗的學習能力,提出使用學習圖像先驗能力更強的遞歸結構U-Net 網(wǎng)絡作為超分辨生成對抗網(wǎng)絡生成器;為強化判別器對生成圖像與真實圖像的細節(jié)判別,引入殘差結構改進SRGAN 的判別器。實驗表明將遞歸結構U-Net 作為生成對抗網(wǎng)絡的生成模型可以有效提高圖像重建的PSNR 與SSIM 指標,并獲得更加真實自然的細節(jié)。以Set5,Set14,BSDS 等五種標準數(shù)據(jù)集作為基準,在PSNR 指標上平均提升0.656dB,在SSIM 指標上平均提升0.02。在保證重建細節(jié)真實自然的前提下,得到質量更好的圖像細節(jié)是本設計結構后續(xù)改進的重點。此外,本文對比不同網(wǎng)絡結構學習圖像先驗的能力的實驗,也為后續(xù)選擇有更強的學習圖像先驗能力的超分辨生成模型提供了思路。