祁成曉, 劉 芳, 孫 策, 曲振方, 朱福珍
(1.黑龍江大學(xué) 電子工程學(xué)院, 哈爾濱150080;2.黑龍江東方學(xué)院 信息工程學(xué)院, 哈爾濱150086)
圖像超分辨率重建技術(shù)在許多場(chǎng)景中有著廣泛應(yīng)用,該技術(shù)可以實(shí)現(xiàn)從退化圖像中恢復(fù)高頻信息。傳統(tǒng)算法主要是基于插值和基于重建的方法[1-4]。隨著深度學(xué)習(xí)的發(fā)展,基于深度學(xué)習(xí)的方法在該領(lǐng)域中占據(jù)著主導(dǎo)地位。2014年,Dong等首次提出超分辨率技術(shù)(Super-resolution convolutional neural network, SRCNN)算法,該模型用一個(gè)3層的網(wǎng)絡(luò)結(jié)構(gòu),實(shí)現(xiàn)了低分辨率圖像特征提取、映射關(guān)系學(xué)習(xí)以及圖像重建的過(guò)程,取得了很好的效果。Kim基于此進(jìn)行改進(jìn),提出了VSDR[5]和DRCN[6]模型,通過(guò)加深網(wǎng)絡(luò)模型深度,實(shí)現(xiàn)了重建質(zhì)量更好的高分辨率圖像目標(biāo)。隨著殘差塊[7]的提出,研究圍繞著如何提升網(wǎng)絡(luò)深度,Zhang等提出了一種密集連接的網(wǎng)絡(luò),通過(guò)加入注意力機(jī)制的方式提升殘差塊的性能[8-9]。2017年,Ledig等首次提出基于生成對(duì)抗網(wǎng)絡(luò)的SRGAN算法,使用判別對(duì)抗的訓(xùn)練方式,使得重建圖像在視覺(jué)上更接近人眼感知效果[10-15]。本文在SRGAN的基礎(chǔ)上進(jìn)行改進(jìn),提出一種以對(duì)抗生成網(wǎng)絡(luò)為主體的更加輕量的網(wǎng)絡(luò)結(jié)構(gòu)。
本文構(gòu)建的級(jí)聯(lián)殘差對(duì)抗生成網(wǎng)絡(luò)(Cascading residual generative adversarial network,CRGAN)描述如下:在生成網(wǎng)絡(luò)中,提取的特征信息進(jìn)入殘差塊(Residual block,RB)前首先進(jìn)行分組卷積,實(shí)現(xiàn)降低參數(shù)量的目的,每3個(gè)殘差塊組成一個(gè)級(jí)聯(lián)塊(Cascading block,CB),信息流進(jìn)入每一個(gè)級(jí)聯(lián)塊前,對(duì)上一級(jí)的輸出利用1×1的卷積核進(jìn)行融合壓縮。殘差塊進(jìn)行局部(級(jí)聯(lián)塊內(nèi)和殘差塊間)和全局的融合(級(jí)聯(lián)塊間),實(shí)現(xiàn)特征信息在這種連接中傳遞到更加深層的網(wǎng)絡(luò)。接著生成網(wǎng)絡(luò)的重建圖像輸入到判別網(wǎng)絡(luò)進(jìn)行判別,并且研究了對(duì)抗損失和感知損失對(duì)超分辨重建圖像的影響。
對(duì)抗生成網(wǎng)絡(luò)結(jié)構(gòu)示意圖如圖1所示。這種網(wǎng)絡(luò)生成的圖像更加接近人眼感知效果,具有更加豐富的紋理細(xì)節(jié)。該網(wǎng)絡(luò)模型包括生成器子網(wǎng)絡(luò)G和判別器子網(wǎng)絡(luò)D,生成器G用于重建圖像的過(guò)程,而判別器D是二分類的過(guò)程,對(duì)生成器G生成的圖像和真實(shí)高分辨率圖像進(jìn)行判別。
圖1 對(duì)抗生成網(wǎng)絡(luò)結(jié)構(gòu)
將該網(wǎng)絡(luò)用于圖像超分辨領(lǐng)域,低分辨率圖像ILR輸入到生成器網(wǎng)絡(luò),輸出為生成的超分辨率圖像ISR,超分辨率圖像ISR和原始高分辨率圖像IHR作為判別網(wǎng)絡(luò)的輸入,輸出判別概率,函數(shù)式為:
(1)
網(wǎng)絡(luò)架構(gòu)圖如圖2所示。在生成網(wǎng)絡(luò)中,將殘差塊進(jìn)行密集連接,每3個(gè)殘差塊組成一個(gè)級(jí)聯(lián)塊,特征信息進(jìn)入每一個(gè)級(jí)聯(lián)塊前,對(duì)前級(jí)的聯(lián)塊輸出信息利用1×1的卷積核進(jìn)行融合壓縮,殘差塊包含跳躍連接的部分,可以將特征信息傳遞到更深層網(wǎng)絡(luò)。
圖2 CRGAN整體網(wǎng)絡(luò)結(jié)構(gòu)圖
引用SRGAN網(wǎng)絡(luò)的思想,通過(guò)對(duì)原有的生成器網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行改進(jìn),在生成網(wǎng)絡(luò)中,對(duì)內(nèi)部殘差塊結(jié)構(gòu)改進(jìn),同時(shí)改變殘差塊之間的連接方式。殘差塊每3個(gè)分為一組,每3個(gè)殘差塊通過(guò)級(jí)聯(lián)的方式構(gòu)成一個(gè)級(jí)聯(lián)塊,信息流在進(jìn)入每一個(gè)級(jí)聯(lián)塊前,都要對(duì)之前的級(jí)聯(lián)塊的輸出利用1×1的卷積核進(jìn)行融合壓縮,級(jí)聯(lián)塊內(nèi)的3個(gè)殘差塊也采用相同的連接方式,實(shí)現(xiàn)圖像的超分辨重建。下面具體介紹級(jí)聯(lián)塊和改進(jìn)后的殘差塊。
2.1.1 級(jí)聯(lián)塊
每個(gè)級(jí)聯(lián)塊包含3個(gè)殘差塊,3個(gè)殘差塊通過(guò)本文設(shè)計(jì)的連接方式構(gòu)成一個(gè)級(jí)聯(lián)塊,級(jí)聯(lián)塊結(jié)構(gòu)如圖3所示,灰色的模塊表示本文提出的一種新的殘差塊,同時(shí)級(jí)聯(lián)塊中殘差塊的數(shù)量確定,文中實(shí)驗(yàn)部分在保證其他條件完全相同的條件下,用1~5個(gè)殘差塊分別構(gòu)造級(jí)聯(lián)塊,用于分析殘差塊數(shù)量對(duì)模型最終重建能力的影響,最終選定每個(gè)級(jí)聯(lián)塊中包含3個(gè)殘差塊。
圖3 級(jí)聯(lián)塊結(jié)構(gòu)
2.1.2 新的殘差塊
使用一種新的殘差塊結(jié)構(gòu)(Residual-E)[16-18],如圖4所示,首先分組卷積用來(lái)降低參數(shù)量,考慮到BN層產(chǎn)生的偽影問(wèn)題,所以Residual-E結(jié)構(gòu)去掉BN層,同時(shí)修改激活函數(shù),加入分組卷積。傳統(tǒng)的激活函數(shù)Relu會(huì)導(dǎo)致負(fù)區(qū)間梯度消失的現(xiàn)象,其表達(dá)式為:
圖4 殘差塊結(jié)構(gòu)對(duì)比
(1)
因此,使用LeakyReLU作為非線性激活函數(shù),可表示為:
(3)
式中a是一個(gè)(0,1)區(qū)間內(nèi)的實(shí)數(shù),這種激活函數(shù)可以保證不會(huì)丟失負(fù)樣本信息。
設(shè)K為核大小;Cin和Cout分別為輸入和輸出通道數(shù);F表示輸入特征大小和輸出特征大小。單個(gè)殘差塊的計(jì)算量為(忽略激活和累加)2×(K·K·Cin·Cout·F·F)。設(shè)G為分組大小,那么改進(jìn)后的殘差塊計(jì)算量為:
(4)
則新的殘差塊的計(jì)算量和原殘差塊的比例為:
(5)
因此,可以通過(guò)調(diào)節(jié)分組數(shù)目和輸入、輸出的通道數(shù)目來(lái)減少計(jì)算量,提升效率。本文使用的通道數(shù)恒為64,所以k值不作考慮,文中設(shè)置的分組數(shù)目為4,計(jì)算量降低了約3.998倍。
生成網(wǎng)絡(luò)的具體實(shí)現(xiàn)過(guò)程如下:
(1)卷積層提取低頻圖像特征;
(2)特征進(jìn)入殘差塊前進(jìn)行分組卷積,降低參數(shù)量;
(3)隨著網(wǎng)絡(luò)深度加深,學(xué)習(xí)高頻圖像特征;
(4)通過(guò)對(duì)每個(gè)外部級(jí)聯(lián)塊的輸出進(jìn)行一次1×1的卷積,聚合不同級(jí)聯(lián)塊圖像的特征;
(5)將聚合不同級(jí)聯(lián)塊的特征通過(guò)亞像素卷積層,實(shí)現(xiàn)對(duì)低分辨圖像2倍的上采樣;
(6)最后通過(guò)3×3卷積,實(shí)現(xiàn)圖像超分辨重建的過(guò)程。
生成模塊包括3個(gè)外部級(jí)聯(lián)塊、9個(gè)內(nèi)部殘差塊和亞像素卷積層。多層級(jí)聯(lián)連接作為多層快捷連接,實(shí)現(xiàn)了將信息從較低層快速傳播到較高層的目標(biāo)。
傳統(tǒng)超分辨率卷積神經(jīng)網(wǎng)絡(luò)模型基于像素?fù)p失函數(shù)生成重建圖像,這類方法對(duì)圖像的細(xì)節(jié)生成效果不佳,對(duì)于圖像的局部區(qū)域銳化程度不夠。本文采用對(duì)抗訓(xùn)練的方式,判別網(wǎng)絡(luò)模型結(jié)構(gòu)如圖5所示,該網(wǎng)絡(luò)以生成的超分辨圖像和原始高分辨圖像作為輸入,用VGG-16模型作為判別網(wǎng)絡(luò),首先8個(gè)卷積層用來(lái)提取圖像的512維特征,最后輸入到兩個(gè)全連接層和Sigmoid激活函數(shù),判定圖像來(lái)源。
圖5 判別器子網(wǎng)絡(luò)結(jié)構(gòu)
損失函數(shù)對(duì)于重建任務(wù)十分重要,如果僅僅選擇均方誤差損失作為優(yōu)化的目標(biāo),可以獲得較高的客觀評(píng)價(jià)指標(biāo),但是恢復(fù)的圖像信息過(guò)于平滑,丟失了邊界信息[19-21]。為此本文模型優(yōu)化感知損失函數(shù)lp、并行優(yōu)化像素?fù)p失函數(shù)lMSE和對(duì)抗損失函數(shù)la。三者以加權(quán)的形式集成,損失函數(shù)可表示為:
l=lp+λ1lMSE+λ2la
(6)
式中λ1和λ2分別為調(diào)節(jié)各個(gè)損失項(xiàng)權(quán)重的正則因子。
2.3.1 像素?fù)p失
在圖像的超分辨重建領(lǐng)域,常用最小均方誤差(Mean square error,MSE)作為損失函數(shù),MSE越小,超分辨出的圖像和原圖像相似度就越高,其對(duì)應(yīng)的損失函數(shù)定義為:
(7)
2.3.2 感知損失
基于MSE損失函數(shù)重建結(jié)果的峰值信噪比(Peak signal to noise ratio, PSNR)較高,但結(jié)果會(huì)因缺乏高頻細(xì)節(jié)使得圖像過(guò)于平滑,為了解決這一問(wèn)題,在模型損失項(xiàng)中加入感知損失,感知損失的定義為:
(8)
式中:Di是判別器子網(wǎng)絡(luò)的第i層;Ci是第i層對(duì)應(yīng)的通道數(shù);Hi和Wi分別是第i層特征圖的長(zhǎng)和寬。
引入獨(dú)一無(wú)二的文化主題特色,結(jié)合不同區(qū)域文化特色打造實(shí)體經(jīng)濟(jì),是目前傳統(tǒng)實(shí)體經(jīng)濟(jì)防御電商沖擊的不可缺少的因素。像我們現(xiàn)在身邊出現(xiàn)的主題餐廳、主題圖書(shū)館,都是吸引顧客到實(shí)體店消費(fèi)的因素。
2.3.3 對(duì)抗損失
根據(jù)生成對(duì)抗網(wǎng)絡(luò)的思想,對(duì)抗損失的公式為:
la=-Exr[log(1-DRa(xr,xf))]-Exf[log(DRa(xf,xr))]
(9)
實(shí)驗(yàn)在Intel Core Xeon E3 3.30 GHz,NVIDIA GTX 2080Ti GPU硬件環(huán)境下進(jìn)行,選擇PyTorch深度學(xué)習(xí)框架訓(xùn)練網(wǎng)絡(luò)。圖像預(yù)處理過(guò)程主要包含兩個(gè)方面:(1)對(duì)圖像進(jìn)行以下位置變換,如平移、轉(zhuǎn)置、鏡像、旋轉(zhuǎn)和縮放等處理方式,可以增加數(shù)據(jù)集的數(shù)量,提高模型的泛化性;(2)突出樣本中的有用信息,強(qiáng)調(diào)某些區(qū)域的特征,擴(kuò)大不同物體的特征差別,加強(qiáng)圖像訓(xùn)練效果,滿足某些特殊分析的需要[9-12]。基于深度學(xué)習(xí)的方法需要大量數(shù)據(jù)支撐,樣本量越大,模型的泛化性越好。目前,可供選擇的公開(kāi)遙感數(shù)據(jù)集較少,本文選擇了200幅自建大尺寸高清遙感圖像,為了實(shí)現(xiàn)樣本增強(qiáng),對(duì)選取圖像進(jìn)行裁剪,變成128×128的尺寸,再分別進(jìn)行旋轉(zhuǎn)和平移,實(shí)現(xiàn)擴(kuò)大訓(xùn)練樣本的目的。對(duì)高清圖像進(jìn)行雙三次插值,通過(guò)這種下采樣的方式得到低分辨率圖像數(shù)據(jù)集。
重建圖像客觀評(píng)價(jià)主要參考兩項(xiàng)指標(biāo):圖像的PSNR和結(jié)構(gòu)相似性(Structural similarity,SSIM)。
(10)
(11)
3.2.1 殘差塊數(shù)量對(duì)模型性能的影響
表1 不同數(shù)量殘差單元測(cè)試
3.2.2 CRGAN與SRGAN實(shí)驗(yàn)效果對(duì)比
為了驗(yàn)證所提出的CRGAN在測(cè)試集上的重建效果,與原SRGAN算法進(jìn)行對(duì)比。
(a)真實(shí)值
放大重建圖像,由重建的效果圖可以看出,本算法重建的圖像高頻信息更加豐富,更接近原圖效果。本次實(shí)驗(yàn)過(guò)程中,選取8張遙感圖像進(jìn)行測(cè)試,計(jì)算兩種算法的網(wǎng)絡(luò)模型重建出的2倍的高分辨率圖像與真實(shí)高清圖像相比的PSNR和SSIM,結(jié)果如表2所示。由結(jié)果可知,所提出算法的兩個(gè)定量評(píng)估指標(biāo)都明顯優(yōu)于SRGAN,峰值信噪比較SRGAN算法提升0.48 dB,結(jié)構(gòu)相似度提升0.023。
表2 測(cè)試遙感圖像SR的PSNR對(duì)比/dB
表3 遙感圖像SR的SSIM對(duì)比
構(gòu)建了以生成對(duì)抗網(wǎng)絡(luò)為主體框架的CRGAN算法,在生成網(wǎng)絡(luò)中,將殘差塊進(jìn)行密集連接,每3個(gè)殘差塊組成一個(gè)級(jí)聯(lián)塊,特征信息進(jìn)入級(jí)聯(lián)塊前,對(duì)前級(jí)聯(lián)塊的輸出利用1×1的卷積核進(jìn)行融合壓縮。殘差塊進(jìn)行了局部(級(jí)聯(lián)塊內(nèi)和殘差塊間)和全局的融合(級(jí)聯(lián)塊間),使得特征信息在這種連接中傳遞到深處。引入對(duì)抗訓(xùn)練的方式,融合感知損失函數(shù),無(wú)論是主觀視覺(jué)效果還是客觀評(píng)價(jià)指標(biāo)都有較大的提升,提升遙感地物細(xì)節(jié)信息的同時(shí),改善了遙感圖像視覺(jué)效果,在軍用和民用領(lǐng)域有很大的參考價(jià)值。后續(xù)將繼續(xù)優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu),提高對(duì)模型細(xì)節(jié)特征重構(gòu)的能力,加快重建速度,并且增加多幀圖像超分辨的研究。