趙 耀,葛小三,金滿庫(kù)
(1.山西省測(cè)繪地理信息院,山西太原 030001;2.河南理工大學(xué)測(cè)繪與國(guó)土信息工程學(xué)院,河南焦作 454003)
遙感影像快速發(fā)展,在檢測(cè)、分類、估產(chǎn)等方面應(yīng)用廣泛。超分辨率重建(SR)是通過(guò)算法來(lái)提高圖像分辨率,將低分辨率影像恢復(fù)高分辨率[1],近年來(lái)逐漸受到一些學(xué)者的關(guān)注。當(dāng)前SR 方法主要有基于重構(gòu)、插值和機(jī)器學(xué)習(xí)?;谥貥?gòu)方法是通過(guò)插值核對(duì)采樣點(diǎn)灰度進(jìn)行插值,以獲得接近高分辨率的放大效果?;诓逯捣椒ㄍㄟ^(guò)建立低分辨率與高分辨率圖像轉(zhuǎn)換模型,求解模型參數(shù)得到高分辨率圖像。這兩類方法在遙感影像應(yīng)用中因成像過(guò)程中退化因素復(fù)雜,模型難以全面考慮。
近年來(lái)數(shù)據(jù)驅(qū)動(dòng)下深度學(xué)習(xí)的方法為遙感數(shù)據(jù)處理提供了新途徑。2014 年,Dong 等將卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)應(yīng)用于超分辨率重建[2],建立三層卷積層網(wǎng)絡(luò),直接學(xué)習(xí)低分辨率與高分辨率圖像之間的端對(duì)端的映射,相較于傳統(tǒng)方法,在視覺效果和重建質(zhì)量上都有了較大提高。由于網(wǎng)絡(luò)層次太淺,在處理高分辨率影像時(shí)會(huì)丟失其紋理細(xì)節(jié)信息。針對(duì)上述不足,KIM 等提出了加入深層網(wǎng)絡(luò)的深度殘差網(wǎng)絡(luò),并將網(wǎng)絡(luò)深度增加至52 層改進(jìn),使用網(wǎng)絡(luò)權(quán)值共享塊,使網(wǎng)絡(luò)得到一定提升[3]。以上相較于傳統(tǒng)模型雖然都有一定提升,但還無(wú)法達(dá)到令人滿意的效果。
2016 年Ledig 等將對(duì)抗網(wǎng)絡(luò)引入超分辨率重建技術(shù),提出了超分辨率生成對(duì)抗網(wǎng)(SRGAN),解決了圖像高頻細(xì)節(jié)缺失問(wèn)題[4]。本文針對(duì)SRGAN偽影問(wèn)題,引入密集殘差塊增大網(wǎng)絡(luò)容量處理細(xì)節(jié),去除批量歸一化(BN)層,減少細(xì)節(jié)過(guò)度平滑,使用l1損失函數(shù)減少損失懲罰,改善偽影。實(shí)驗(yàn)結(jié)果表明:本文模型更適合遙感影像重建。
超分辨率重建生成式對(duì)抗網(wǎng)絡(luò)模型基本原理是將1 張低分辨率圖像送入生成網(wǎng)絡(luò)生成偽高分辨率圖像,再將偽高分辨率圖像送入鑒別網(wǎng)絡(luò),鑒別網(wǎng)絡(luò)判斷偽高分辨率圖像的真?zhèn)尾⑴c真實(shí)的高分辨率圖像進(jìn)行對(duì)比,得到偽高分辨率圖像與真實(shí)高分辨率圖像的損失(Gloss)和偽高分辨率圖像與真實(shí)高分辨率圖像的真實(shí)損失(Dloss),再將Gloss和Dloss 分別送入生成網(wǎng)絡(luò)和鑒別網(wǎng)絡(luò)。以此反復(fù)迭代訓(xùn)練生成網(wǎng)絡(luò)和鑒別網(wǎng)絡(luò),直至達(dá)到納什均衡,進(jìn)而獲得生成高分辨率圖像。模型整體結(jié)構(gòu)如圖1 所示。
圖1 超分辨率重建生成式對(duì)抗網(wǎng)絡(luò)模型結(jié)構(gòu)
生成網(wǎng)絡(luò)部分由多個(gè)殘差塊和兩個(gè)亞像素卷積層組成,每個(gè)殘差塊中包含2 個(gè)3×3 的卷積層,卷積層后加上批量歸一化層并且令ReLU 作為激活函數(shù)。由于改進(jìn)前生成模型在高頻細(xì)節(jié)上表現(xiàn)并不理想,本文將基本殘差塊替換為密集殘差塊,可使網(wǎng)絡(luò)能夠進(jìn)行更深層次的訓(xùn)練,得到更加理想的訓(xùn)練效果。同時(shí),通過(guò)去除批量歸一化層以減少高頻細(xì)節(jié)的平滑。因此,去除基本殘差塊中的BN 層,以達(dá)到在降低GPU 內(nèi)存占有率的同時(shí)生成更加真實(shí)高清的真實(shí)細(xì)節(jié)的效果,使其在訓(xùn)練樣本有限的情況下仍具有較好的重建性能。模型中密集殘差塊結(jié)構(gòu)如圖2 所示。
圖2 密集殘差塊結(jié)構(gòu)
不同于傳統(tǒng)框架中L 層連接層僅有L 個(gè)連接,密集殘差網(wǎng)絡(luò)增加連接數(shù)至L(L+1)/2 層,使特征可以傳到后面所有連接層中,讓網(wǎng)絡(luò)容量變得更高。引入密集殘差塊能夠確保網(wǎng)絡(luò)層之間流動(dòng)性最大,這種密集連接模式需要的參數(shù)比傳統(tǒng)卷積網(wǎng)絡(luò)少,不需要重新學(xué)習(xí)冗余的特征映射。改進(jìn)后的生成模型如圖3 所示。
圖3 改進(jìn)后的生成模型
采用類似SRGAN 的判別模型,分為3 部分,具體結(jié)構(gòu)如圖4 所示。第1 部分由1 個(gè)卷積塊和1個(gè)Leaky ReLU 激活函數(shù)組成,第2 部分為1 個(gè)基本模塊,每1 個(gè)基本模塊由1 個(gè)卷積塊、1 個(gè)Leaky ReLU 激活函數(shù)和1 個(gè)BN 層組成。第1 部分由1個(gè)維度為1024 的全連接層后接1 個(gè)Leaky ReLU激活函數(shù)組成,以獲得分類概率。模型選擇Leaky ReLU 作為激活函數(shù),在負(fù)值數(shù)保留效果方面比ReLU 激活函數(shù)要好,同時(shí)網(wǎng)絡(luò)在激活函數(shù)后添加BN 層來(lái)增強(qiáng)泛化能力,以避免梯度消失。
本文使用正則化損失和感知損失相結(jié)合的混合損失函數(shù),平滑生成圖像。混合損失函數(shù)如式(1)所示:
式中:lx為內(nèi)容損失;ltv為正則化損失函數(shù);lx和lgen合稱為感知損失函數(shù);lSRGen為生成對(duì)抗損失。
1)內(nèi)容損失
SRGAN 中l(wèi)x為lmse,其中W、H為網(wǎng)絡(luò)映射尺寸;r為給定的參數(shù)權(quán)重,如式(2)所示:
l1損失函數(shù)也被稱為最小絕對(duì)值偏差,屬于最原始的損失函數(shù),它是參考圖像(IH)x,y與重建影像GθG的絕對(duì)值的總和的最小化。我們將lmse損失函數(shù)改為l1損失函數(shù),如式(3)所示:
lmse損失函數(shù)便于梯度下降,與l1損失函數(shù)相比可以獲得較高的PSNR,但是受異常數(shù)據(jù)值的影響較大,往往會(huì)缺失生成的高分辨率圖像的高頻細(xì)節(jié),導(dǎo)致重建結(jié)果中存在偽影的問(wèn)題。我們選擇傳統(tǒng)的l1損失函數(shù),以達(dá)到更好處理數(shù)據(jù)中的異常值的效果,使較大的誤差不會(huì)因被平方過(guò)于放大而導(dǎo)致過(guò)大的懲罰。
2)生成對(duì)抗損失
生成對(duì)抗損失函數(shù)如式(4)所示,DθD(GθG(ILR))為重建圖像GθG(ILR) 自然HR 圖像的估計(jì)概率,因此我們將- logDθD(GθG(ILR)) 最小化,也就是最大化判別器給予生成器所生成的圖像為真的概率。
3)正則化損失函數(shù)
在圖像重建時(shí),采用l1損失函數(shù)可以降低外部噪聲的影響,但圖像自帶的噪聲會(huì)對(duì)重建結(jié)果有很大影響。為了保證圖片光滑完整性,需要將一個(gè)正則項(xiàng)添加到這個(gè)最優(yōu)化模型中來(lái),其中TVloss是通常會(huì)使用的一個(gè)正則項(xiàng)。本文使用的正則化損失計(jì)算式如式(5)所示:
為了驗(yàn)證本文算法的有效性和適用性,本實(shí)驗(yàn)的訓(xùn)練集采用DIV2K 數(shù)據(jù)集。訓(xùn)練時(shí)生成模型和判別模型初始權(quán)重設(shè)置使用均值為0,方差為0.01的隨機(jī)數(shù)值。最小批處理設(shè)置為16。初始學(xué)習(xí)率設(shè)置為2×10-4,初始衰減率設(shè)置為0.5,學(xué)習(xí)率下降周期為27 個(gè)epoch,當(dāng)學(xué)習(xí)率低于2×10-5時(shí)停止訓(xùn)練。無(wú)人機(jī)遙感數(shù)據(jù)測(cè)試集具有復(fù)雜度高、分辨率高的特點(diǎn),更加符合遙感影像現(xiàn)代發(fā)展特點(diǎn)。為表現(xiàn)本文算法的優(yōu)越性,本實(shí)驗(yàn)采用buildings 數(shù)據(jù)集和airplane 數(shù)據(jù)集以及一個(gè)無(wú)人機(jī)遙感數(shù)據(jù)集作為測(cè)試集。在這3 個(gè)數(shù)據(jù)集上橫向比較了Bicubic 算法(雙三次插值法)、SRCNN 算法和SRGAN 算法,并比較實(shí)驗(yàn)結(jié)果。實(shí)驗(yàn)環(huán)境采用GPU 為NVIDIA GeForce GTX1650,內(nèi)存為16 GB,Win10 操作系統(tǒng)的電腦。
本實(shí)驗(yàn)分為主觀和客觀兩方面,在不同遙感數(shù)據(jù)集中對(duì)不同模型進(jìn)行橫向?qū)Ρ?,表現(xiàn)網(wǎng)絡(luò)的超分辨率重建算法的性能。首先,通過(guò)對(duì)比峰值信噪比(Peak Signal to Noise Ratio,PSNR)和結(jié)構(gòu)相似性(Structural Similarity,SSIM)的值來(lái)表現(xiàn)網(wǎng)絡(luò)的超分辨率能力[5]。PSNR 計(jì)算公式如式(6)、式(7)所示,兩個(gè)m×n單色圖像I和K的均方差定義為:
SSIM 是一種基于亮度、對(duì)比度、結(jié)構(gòu)相似度信息對(duì)比重建后的超分辨率圖像與真實(shí)高分辨率圖像的相似程度的方法。SSIM 的值與影像主觀感知關(guān)聯(lián)性較強(qiáng)。計(jì)算公式如式(8)所示:
式中:l(x,y) 為亮度比較;c(x,y) 為對(duì)比度比較;s(x,y) 為結(jié)構(gòu)比較。
2.2.1 客觀評(píng)價(jià)結(jié)果及分析
客觀評(píng)價(jià)結(jié)果及分析由表1 可以看出:在同樣的樣本數(shù)據(jù)測(cè)評(píng)下,本文模型在各個(gè)數(shù)據(jù)集的4 倍重建效果相比較于SRGAN 算法和Bicubic 算法均為最佳,相較于SRCNN 算法部分?jǐn)?shù)據(jù)集中的PSNR 值較低。本文方法在3 個(gè)數(shù)據(jù)集上相對(duì)于SRGAN 算法,PSNR 和SSIM 的值平均提高0.24 dB與0.011 2。在自制遙感數(shù)據(jù)集中表現(xiàn)最佳,相比于SRGAN 算法,PSNR 和SSIM 的值分別提高了0.45 dB 和0.018 7 并達(dá)到所有模型最佳。
表1 在3 種數(shù)據(jù)集上各種算法的PSNR 值與SSIM 值對(duì)比
2.2.2 主觀評(píng)價(jià)結(jié)果及分析
為表現(xiàn)本文模型的優(yōu)越性和普適性,分別在無(wú)人機(jī)遙感數(shù)據(jù)集和airplane 數(shù)據(jù)集上各取1 張影像進(jìn)行超分辨率重建。對(duì)影像部分細(xì)節(jié)進(jìn)行放大,直觀地對(duì)超分辨率重建效果進(jìn)行對(duì)比。本文使用MATLAB 上的雙三次核函數(shù)進(jìn)行4 倍下采樣得到低分辨率影像(LR)進(jìn)行測(cè)試。
各算法在放大倍數(shù)為4 時(shí)對(duì)遙感影像進(jìn)行重建,能夠直觀地評(píng)估各算法的重建效果,如圖5、圖6 所示。圖5 將重建后的無(wú)人機(jī)遙感影像部分區(qū)域放大(方框已標(biāo)出)對(duì)比細(xì)節(jié)??梢钥闯觯翰捎肂icubic 模型和采用SRCNN 模型在復(fù)雜且細(xì)節(jié)多的遙感影像上重建效果較差,且影像模糊,而SRGAN模型較為清晰。相較于本文模型,本模型重建后的影像分辨率更高,且微小細(xì)節(jié)更為明顯、視覺效果更好。為了進(jìn)一步展示本模型的優(yōu)越性,圖6 將airplane 影像部分區(qū)域放大(紅方框已標(biāo)出)再次對(duì)比細(xì)節(jié)。可以清楚看出:雖然在buildings 數(shù)據(jù)集和airplane 數(shù)據(jù)集中,本文模型的PSNR 值均低于SRCNN 模型,但本文視覺效果要好于SRCNN 模型。Bicubic 算法和SRCNN 算法中右機(jī)翼中線條比較模糊,SRGAN 算法中線條比較清晰但存在過(guò)擬合并伴有偽影產(chǎn)生。在airplane 數(shù)據(jù)集中盡管各項(xiàng)數(shù)值并未達(dá)到最優(yōu),但在圖6 中可以看出:本文模型極大地改善了偽影問(wèn)題,輪廓細(xì)節(jié)恢復(fù)得更接近原始影像,相較于其他算法在細(xì)節(jié)處理方面本文算法達(dá)到最優(yōu)。
圖5 不同方法在無(wú)人機(jī)遙感圖像上的重建結(jié)果
針對(duì)SRGAN 超分辨率重建影像存在偽影、重建效果不理想等問(wèn)題,本文在SRGAN 算法的基礎(chǔ)上引入密集殘差塊,加深了網(wǎng)絡(luò)結(jié)構(gòu)的訓(xùn)練,使重建影像的分辨率更高,實(shí)驗(yàn)結(jié)果表明:網(wǎng)絡(luò)達(dá)到了更深層次的訓(xùn)練,改善了重建影像存在偽影問(wèn)題,提高圖像重建效果并緩解了過(guò)擬合等現(xiàn)象。在3個(gè)數(shù)據(jù)集上相對(duì)于SRGAN 算法,PSNR 和SSIM 的值平均提高了0.21 dB 與0.011 2。但隨著網(wǎng)絡(luò)層次的加深,訓(xùn)練量也隨之增大。下一步將繼續(xù)研究使用更加緊湊的算法優(yōu)化結(jié)構(gòu),在保證超分辨率重建效果的同時(shí),降低網(wǎng)絡(luò)計(jì)算量。