丁明航, 鄧然然, 邵 恒
(長安大學(xué) 信息工程學(xué)院, 西安 710064)
圖像超分辨率是一種典型的不適定[1]問題, 其作為一種基礎(chǔ)的視覺問題, 在學(xué)界和人工智能公司中引起了越來越多的關(guān)注, 并被廣泛地引用于安全和監(jiān)控成像, 醫(yī)學(xué)成像和圖像生成等領(lǐng)域.圖像超分辨率目的在于通過模糊的低分辨率(Low Resolution, LR)圖像生成視覺質(zhì)量較好的高分辨率(High Resolution, HR)圖像.為了解決這個不適定問題, 已經(jīng)提出了眾多的圖像超分辨率算法, 包括基于插值的[2], 基于重構(gòu)的[3]和基于學(xué)習(xí)的方法[4-10].
其中基于插值的方法[11]能較好地保護圖像的邊緣,但該方法不考慮圖像的內(nèi)容, 只是簡單地進行像素點之間的計算, 容易丟失大量細節(jié)信息, 從而導(dǎo)致模糊.另一種基于重構(gòu)的超分辨率方法[12]結(jié)合了圖像的降質(zhì)模型, 解決了基于插值方法無法引入先驗信息的問題.該方法雖然對復(fù)雜度低的圖像效果較好, 但對紋理結(jié)構(gòu)豐富的圖像則效果一般.隨后研究人員提出了基于學(xué)習(xí)的方法, 如Dong C 等[13]提出的SRCNN.該方法結(jié)構(gòu)簡單, 結(jié)果相較于其他方法更精確, 但是會損失許多圖像的細節(jié)信息, 同時數(shù)據(jù)來源并不多, 所恢復(fù)出的圖像紋理在視覺上還是無法令人滿意.
為了進一步提高視覺質(zhì)量, 生成對抗網(wǎng)絡(luò)[14](Generative Adversarial Network, GAN)被引入超分辨率領(lǐng)域, 以改善圖像超分辨率后失真的視覺效果.然而,SRGAN[15]由于網(wǎng)絡(luò)結(jié)構(gòu)復(fù)雜, 不能穩(wěn)定訓(xùn)練更深層的網(wǎng)絡(luò), 因此其結(jié)果仍與真實圖像存在差距.隨后, Wang XT 等[16]研究了SRGAN 網(wǎng)絡(luò)體系結(jié)構(gòu)的兩個關(guān)鍵組成部分: 對抗損失和感知損失, 并對每個部分進行了改進, 得到了一個增強的SRGAN (ESRGAN).該方法可以訓(xùn)練出更深層的網(wǎng)絡(luò), 提取更多紋理細節(jié)特征, 但在圖像恢復(fù)時容易產(chǎn)生更多與真實圖像不一致的偽紋理.同時該方法無法充分利用低分辨率局部特征層信息,因此, 在無法生成更加自然圖像的同時浪費了深層網(wǎng)絡(luò)的優(yōu)良設(shè)計.
為了解決網(wǎng)絡(luò)容易生成偽紋理的問題, 本文首先將注意力生成對抗網(wǎng)絡(luò)[17]引入超分辨率方法中, 以此作為超分辨率模型的基礎(chǔ)架構(gòu).其次, 為了降低網(wǎng)絡(luò)結(jié)構(gòu)的復(fù)雜性以更多地利用低分辨率的局部特征層信息, 本文還對注意力生成對抗網(wǎng)絡(luò)中生成器部分進行了改進, 引入了密集殘差塊結(jié)構(gòu)[18].最后, 在圖像超分辨率重建后, 本文還利用峰值信噪比[19](Peak Signal to Noise Ratio, PSNR)和結(jié)構(gòu)相似性[20](Structural Similarity Index, SSIM)這兩種普遍的超分辨率評價標(biāo)準(zhǔn)對結(jié)果進行定量分析, 對比說明所設(shè)計方法的優(yōu)良性能.
生成對抗網(wǎng)絡(luò)(GAN)的理論基礎(chǔ)源自于博弈論中的二人零和博弈.GAN 強大的圖片生成能力, 使其在圖像合成、圖像修補、超分辨率、草圖復(fù)原等領(lǐng)域內(nèi)均有廣泛應(yīng)用.同樣, 生成對抗網(wǎng)絡(luò)的結(jié)構(gòu)也被應(yīng)用于本文的基礎(chǔ)框架中.GAN 的基本框架包含一個生成器模型(Generator model, G)和一個判別器模型(Discriminator model, D), 如圖1 所示.
圖1 生成對抗網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu)
如圖1 所示的GAN 的基礎(chǔ)框架中, 生成器模型可用函數(shù) G(x) 表示, 判別器模型可用函數(shù) D(x)表示, 每個函數(shù)都有可調(diào)參數(shù).圖1(a)所示為判別器結(jié)構(gòu), 其處理流程是從訓(xùn)練高分辨率真實圖像中采樣作為輸入x, 送入判別器模型 D(x) 中, D(x)通過自身的訓(xùn)練學(xué)習(xí), 盡可能地輸出接近1 的概率值.圖1(b)所示為生成器結(jié)構(gòu),其處理流程是從訓(xùn)練低分辨圖像中采樣作為輸入z, 經(jīng)生成器模型生成偽造樣本G (z), 然后將其作為判別器模型的輸入.判別器模型的目的是盡量使 D( G(z))接近0,而生成器模型的目的盡量使它接近1, 最終在二者的互相博弈中達到平衡.
殘差網(wǎng)絡(luò)(Residual Network, ResNet)和跳躍連接(skip connection)結(jié)構(gòu)經(jīng)研究可以更加容易地訓(xùn)練深層的網(wǎng)絡(luò), 因而GAN 可以通過加入該結(jié)構(gòu)來增加網(wǎng)絡(luò)層數(shù)提升超分辨率圖像生成能力.殘差網(wǎng)絡(luò)和跳躍連接的基本結(jié)構(gòu)如圖2 所示.
圖2 殘差網(wǎng)絡(luò)和跳躍連接結(jié)構(gòu)
圖2 中, 殘差網(wǎng)絡(luò)在原始的卷積層上增加跳躍連接支路構(gòu)成基本殘差塊, 使原始要學(xué)習(xí)的 H(x)被表示成 H( x)=F(x)+x .殘差網(wǎng)絡(luò)的殘差結(jié)構(gòu)使得對 H(x)的學(xué)習(xí)轉(zhuǎn)為對 F(x) 的學(xué)習(xí), 而對 F(x) 的學(xué)習(xí)較 H(x)容易.殘差網(wǎng)絡(luò)通過層層累加的殘差塊結(jié)構(gòu), 有效緩解了GAN 深層網(wǎng)絡(luò)的退化問題, 使得GAN 更易穩(wěn)定訓(xùn)練,更易生成自然真實的圖像.
基于生成對抗網(wǎng)絡(luò)的基礎(chǔ)框架, 本文將注意力遞歸網(wǎng)絡(luò)引入到生成器中, 并將常規(guī)殘差塊替換為密集殘差結(jié)構(gòu), 通過此設(shè)計來盡可能生成在視覺質(zhì)量上更為理想的圖像.同時, 改進判別器和感知損失函數(shù), 以此作為用于平衡視覺質(zhì)量和峰值信噪比(PSNR)的網(wǎng)絡(luò)策略.
如圖3 所示, 本文所設(shè)計的生成器主要由淺層特征提取網(wǎng)絡(luò), 注意力遞歸網(wǎng)絡(luò), 非線性映射網(wǎng)絡(luò)和最后的上采樣網(wǎng)絡(luò)組成.圖3 中, ILR和 ISR分別表示網(wǎng)絡(luò)的輸入和輸出.具體地, 淺層特征提取網(wǎng)絡(luò)使用兩個卷積層(Conv)來提取低分辨率圖像的淺層信息.第一個Conv 層從 ILR輸 入中提取特征 F-1. 然后對 F-1做進一步的淺層特征提取, 輸出為 F0, 用公式可以表示為:
其中, HSFE1(·) 和 HSFE2(·)表示卷積運算.
圖3 生成器結(jié)構(gòu)
在對原始輸入 ILR進行淺層特征提取后, 其輸出F0作為新的輸入被送入注意力遞歸網(wǎng)絡(luò)中.詳細的注意力遞歸網(wǎng)絡(luò)結(jié)構(gòu)如圖4 所示.注意力遞歸網(wǎng)絡(luò)的主要目的是在輸入的圖像中提取出需要恢復(fù)的紋理細節(jié),這些紋理細節(jié)將會被之后的非線性映射網(wǎng)絡(luò)所增強并用于高分辨率圖像的生成.因此能否重建出逼真自然的圖像, 取決于低分辨率紋理細節(jié)提取的好壞.
圖4 注意力遞歸網(wǎng)絡(luò)結(jié)構(gòu)
如圖4 中的架構(gòu)所示, 本文采用遞歸網(wǎng)絡(luò)來生成視覺注意力.遞歸網(wǎng)絡(luò)中的每個時間步長均包含3 層密集殘差塊(Residual Dense Block, RDB), 1 個循環(huán)門控單元(Gated Recurrent Unit, GRU)和1 層卷積層, 以此用來生成二維注意力圖像.每個時間步長所學(xué)習(xí)到的注意力圖都是一個取值介于0 到1 之間的矩陣, 其中每個矩陣元素值越大, 表示注意力就越大.在圖4 中,An為注意力學(xué)習(xí)過程生成的可視化注意力圖, 其中n 代表遞歸的次數(shù).隨著遞歸次數(shù)的增加, 訓(xùn)練出的注意力圖就越能凸顯細節(jié)紋理和相關(guān)結(jié)構(gòu).
遞歸注意力網(wǎng)絡(luò)中用到的循環(huán)門控單元(GRU)包括一個重置門 rt和一個更新門 zt.GRU 的計算公式被定義為如下公式:
其中, ht-1和 ht分別表示上一時刻和當(dāng)前時刻的隱藏層狀態(tài), 而表示當(dāng)前更新狀態(tài).Wz, Wr分別表示更新門和重置門的權(quán)重, *代表卷積運算.將GRU 的輸出特征送入其后的卷積層中, 即可生成二維的注意力圖像.在訓(xùn)練過程中, 每個時間步長內(nèi)輸入圖像均與生成的注意力圖像相連, 同時它們會作為新的輸入被送到遞歸網(wǎng)絡(luò)的下一層中.
假設(shè)通過n 層遞歸注意力網(wǎng)絡(luò)后的輸出為Fn, 并用如下公式表示:
其中, HATT表示注意力網(wǎng)絡(luò)的函數(shù), n 代表經(jīng)過幾層遞歸操作.
在經(jīng)遞歸注意力網(wǎng)絡(luò)進行紋理細節(jié)特征提取后,要對這些特征進行映射.所設(shè)計的非線性映射網(wǎng)絡(luò)具有8 層conv+ReLU 結(jié)構(gòu), 并添加了跳躍連接提升網(wǎng)絡(luò)訓(xùn)練的穩(wěn)定性.非線性映射網(wǎng)絡(luò)可表示為如下公式:
其中, FNMN是 利用非線性網(wǎng)絡(luò)函數(shù) HNMN輸出的結(jié)果.
最后, 在生成高分辨率圖像前加入了一個上采樣網(wǎng)絡(luò), 其是由一個卷積層構(gòu)成的, 以此來獲得4 倍放大的超分辨率圖像輸出.可表示為如下公式:
其中, HUPN為上采樣網(wǎng)絡(luò)函數(shù), ISR為超分辨率圖像輸出.
為了進一步提高GAN 的圖像恢復(fù)質(zhì)量, 本文設(shè)計了密集殘差塊結(jié)構(gòu), 并將其應(yīng)用到注意力遞歸網(wǎng)絡(luò)中,其結(jié)構(gòu)如圖5 所示.如圖5(a), 首先在原有殘差塊基礎(chǔ)上移除BN 層.當(dāng)訓(xùn)練和測試數(shù)據(jù)集的統(tǒng)計數(shù)據(jù)差異很大時, BN 層往往會在生成圖像中引入偽紋理并限制泛化能力.因此, 為了網(wǎng)絡(luò)的穩(wěn)定訓(xùn)練, 需要移除BN 層.同時, 移除BN 層有助于降低計算復(fù)雜性和減小內(nèi)存開銷.如圖5(b), 在移除BN 層后又將密集塊與跳躍連接進行結(jié)合, 前面的RDB 和后續(xù)每一層都的輸出都有直接連接, 這不僅保留了前饋性質(zhì), 還充分提取了局部特征層信息, 提升了網(wǎng)絡(luò)的容量.
圖5 密集殘差塊結(jié)構(gòu)
除了改進的生成器結(jié)構(gòu), 本文還改進了判別器.如圖6 所示, 改進的判別器的網(wǎng)絡(luò)結(jié)構(gòu)和參數(shù)設(shè)置與原始SRGAN 的判別器不同.具體來說, 輸入待判別的高分辨率圖片, 先經(jīng)過7 層的卷積層抽取圖片特征, 再將圖像數(shù)據(jù)的維度壓平(flatten), 最后經(jīng)全連接層(Fully Connected layer, FC)和Sigmoid 函數(shù)輸出判別的結(jié)果.本文生成對抗網(wǎng)絡(luò)經(jīng)判別器對真實圖像與生成圖像的判別, 反饋到生成器中, 使得權(quán)重參數(shù)變化更加靈敏,以此改善了網(wǎng)絡(luò)退化的問題.原始GAN 生成器G 在初始訓(xùn)練時其性能遠不如判別器D, 這樣便會產(chǎn)生模型崩潰(model collapse)問題.為此, 本文改進了原始GAN 的損失函數(shù).該損失函數(shù)是基于L1 范數(shù)設(shè)計的,同時包含了判別器的重構(gòu)誤差.判別器使用該損失函數(shù)在提升圖像質(zhì)量的同時還提升了生成器G 的學(xué)習(xí)能力.
圖6 判別器結(jié)構(gòu)
首先圖像像素級誤差可以認為是服從高斯分布的,基于L1 范數(shù)的損失函數(shù)被定義為:
式中, 高分辨率圖像用 IHR表 示, 低分辨圖像用 ILR表示.需要迭代的生成器和判別器損失函數(shù)其優(yōu)化規(guī)則由式(11)表示:
其中,
其中, 高分辨率圖像用 x 表示, 低分辨圖像用 z表示, 超分辨率圖像用 y表示, 判別器關(guān)于高分辨率圖像的損失用 LDr表示, 低分辨率圖像的損失用 LDf表示.λk表示k 的增量, kt表示k 的第t 次迭代結(jié)果, k的值改變可以用來提升生成器的學(xué)習(xí)能力.γ是超分辨率圖像誤差的期望與高分辨率圖像的期望值之比, 該參數(shù)的值可以提升生成圖像的質(zhì)量.
本文使用峰值信噪比(PSNR)和結(jié)構(gòu)相似性(SSIM)這兩種基礎(chǔ)方法作為評價指標(biāo), 以此來說明圖像超分辨率方法性能的優(yōu)劣.在圖像超分辨率評價中,PSNR 的值越高就說明圖像分辨率越高, 或圖像越接近真實高分辨率圖像, 其是利用均方誤差(Mean Square Error, MSE)進行計算的:
式中, m ×n尺寸的圖像均用I 與K 表示.
PSNR 被定義為:
一般情況下, PSNR 的單位被設(shè)置為dB, 數(shù)值越大圖像視覺質(zhì)量越高.
圖像結(jié)構(gòu)相似性是一種符合人類主觀感受的評價指標(biāo).通常情況下, SSIM 的值越靠近1, 代表超分辨率圖像與原始圖像結(jié)構(gòu)越相似, 也就是失真越小, 質(zhì)量越好.SSIM 被定義為:
式中, uf表示真實高分辨率圖像的平均灰度值, σf表示真實高分辨率圖像的方差, 而表示超分辨率圖像的灰度值,表示超分辨率圖像的方差, 最后真實高分辨率圖像與超分辨率圖像之間的協(xié)方差用來表示,C1和C2是常數(shù), 這兩個常數(shù)被設(shè)置為, C1=(k1*L)2,C2=(k2*L)2, k1=0.01, k2=0.03 , L =255.
本文利用超分辨率中被廣泛使用的Set5, Set14和BSD100 3 個基準(zhǔn)數(shù)據(jù)集進行實驗.所有實驗均是將低分辨率圖像進行4 倍放大得到超分辨率圖像的.訓(xùn)練樣本使用來自ImageNet 數(shù)據(jù)庫的10 萬張圖像的隨機樣本.并在配置有NVIDIA GTX 1080Ti 的硬件設(shè)備上進行網(wǎng)絡(luò)的訓(xùn)練.低分辨率圖像的獲取方法是利用4 倍雙三次下采樣方法獲取.同時, 因為網(wǎng)絡(luò)設(shè)計為全卷積網(wǎng)絡(luò), 所以可以向生成器中送入任意大小的圖像.為了優(yōu)化網(wǎng)絡(luò)的訓(xùn)練效果, 本文使用Adam 作為網(wǎng)絡(luò)優(yōu)化器.并設(shè)置初始學(xué)習(xí)速率為 1 0-4, 進行200次迭代.
本文將測試結(jié)果同已有方法(包括雙三次方法Bicubic, SRCNN 和SRGAN)作對比.測試結(jié)果均為4倍放大的公平對比.為了對比結(jié)果清楚公平地展示, 要對超分辨率圖像進行相同區(qū)域的裁切放大.如圖7 所示,本文超分辨率方法相較于其他方法, 無論是視覺效果還是紋理細節(jié)均有較優(yōu)的表現(xiàn).因此, 本文方法在兼顧降低偽紋理的產(chǎn)生的同時改善了圖像超分辨率后的視覺質(zhì)量.
圖7 不同方法超分辨率圖像視覺效果對比
表1 展示了不同超分辨率方法的定量比較.可以看出, 在相同放大倍數(shù)和相同數(shù)據(jù)集下, 本文方法在PSNR 和SSIM 數(shù)值上均表現(xiàn)最佳.表1 中, 本文方法PSNR 值為31.62, SSIM 值為0.903, 相較于其他方法評價指標(biāo)的數(shù)據(jù)均有所提升.這表明本文方法所采用的注意力遞歸網(wǎng)絡(luò)和密集殘差結(jié)構(gòu)是有效的.
表1 不同方法超分辨率結(jié)果的PSNR 和SSIM 數(shù)值對比
同時, 為了說明本文方法在訓(xùn)練穩(wěn)定性上的優(yōu)秀表現(xiàn), 還同其他方法在訓(xùn)練過程中的PSNR 值進行了比較.如圖8 所示, 在前期訓(xùn)練迭代中本文方法就較快地提升了PSNR 值, 并較快地趨于穩(wěn)定.這說明, 相較于其他方法本文所采用的方法有較快的收斂速度和較好的網(wǎng)絡(luò)性能表現(xiàn).
圖8 不同方法PSNR 趨勢
在生成對抗網(wǎng)絡(luò)的基礎(chǔ)上, 本文改進生成對抗網(wǎng)絡(luò)中生成器部分, 加入了注意力遞歸網(wǎng)絡(luò), 設(shè)計了新的密集殘差結(jié)構(gòu), 實現(xiàn)了端到端的圖像超分辨率網(wǎng)絡(luò).在每個密集殘差塊中, 低分辨率的局部特征層被充分提取, 這樣不僅可以穩(wěn)定訓(xùn)練網(wǎng)絡(luò), 還可以快速地使網(wǎng)絡(luò)收斂, 減小網(wǎng)絡(luò)參數(shù)計算和內(nèi)存消耗.此外, 通過注意力遞歸網(wǎng)絡(luò)更加突出了圖像的細節(jié)紋理, 使紋理恢復(fù)得更加自然真實, 同時減少了偽紋理的生成.最后, 本文利用普遍采用的PSNR 和SSIM 評價指標(biāo), 對本文方法產(chǎn)生的超分辨率圖像同其他方法進行了對比, 證明了本文方法的網(wǎng)絡(luò)性能和重建圖像在視覺質(zhì)量上與數(shù)值評價上的優(yōu)異表現(xiàn).