崔 琛,黃 輝,張凱兵
(1.西安工程大學(xué) 電子信息學(xué)院,陜西 西安 710048;2.廣西科技師范學(xué)院 職業(yè)技術(shù)教育學(xué)院,廣西 來賓 546100)
圖像超分辨是一種利用同一場景下獲得的一幅或多幅低分辨率(low-resolution,LR)圖像重建出一幅高分辨率(high-resolution,HR)圖像的圖像恢復(fù)技術(shù)[1]。一般而言,目前主流的超分辨算法主要分為四種要類型:基于插值的方法[2-4]、基于重構(gòu)的方法[5-8]、基于傳統(tǒng)的實(shí)例學(xué)習(xí)的方法[9-12]和基于深度學(xué)習(xí)的方法[13-15]。
基于插值的方法主要是利用特定的基函數(shù)或插值核估計(jì)高分辨率圖像中的未知像素。盡管這類方法簡單、高效,但它們難以恢復(fù)低分辨率圖像中丟失的高頻細(xì)節(jié),導(dǎo)致重建的圖像視覺效果模糊,通常情況下難以滿足實(shí)際應(yīng)用要求?;谥貥?gòu)的方法通過求解圖像生成的逆問題實(shí)現(xiàn)高分辨率圖像的估計(jì),但該方法重建圖像的質(zhì)量很大程度上依賴于應(yīng)用的先驗(yàn)知識。因此,學(xué)習(xí)并利用有效而全面的圖像先驗(yàn)知識進(jìn)行正則化求解,是成功解決該問題的關(guān)鍵。基于傳統(tǒng)實(shí)例學(xué)習(xí)的圖像超分辨方法主要借助于機(jī)器學(xué)習(xí)技術(shù),從給定的大量實(shí)例圖像對中學(xué)習(xí)低分辨與高分辨圖像塊之間映射關(guān)系,實(shí)現(xiàn)低分辨圖像到高分辨圖像的變換。雖然基于傳統(tǒng)實(shí)例學(xué)習(xí)的方法能有效恢復(fù)低分辨圖像中丟失的高頻細(xì)節(jié),但是該類方法對數(shù)據(jù)集的依賴性較強(qiáng),當(dāng)輸入圖像與訓(xùn)練數(shù)據(jù)集中的圖像在結(jié)構(gòu)上差異較大時(shí),重建出的超分辨圖像并不能達(dá)到令人滿意的效果。
近年來,隨著深度卷積神經(jīng)網(wǎng)絡(luò)在計(jì)算機(jī)視覺中的成功應(yīng)用,基于深度學(xué)習(xí)的超分辨方法得到了人們廣泛的關(guān)注,出現(xiàn)了很多有效的深度學(xué)習(xí)超分辨重建算法。Dong等[5]首次應(yīng)用卷積神經(jīng)網(wǎng)絡(luò)模型建立低分辨與高分辨圖像間的非線性映射關(guān)系,提出了卷積神經(jīng)網(wǎng)絡(luò)的超分辨方法(super-resolution convolutional neural network, SRCNN)。該方法首先利用卷積層對低分辨圖像進(jìn)行特征提取,然后利用獲得的映射特征重建出需要的高分辨圖像。之后Dong等[7]對SRCNN進(jìn)行了改進(jìn),在低分辨率空間進(jìn)行圖像特征的提取和非線性映射,最后使用反卷積實(shí)現(xiàn)圖像超分辨重建。受大規(guī)模圖像識別深度卷積神經(jīng)網(wǎng)絡(luò)的啟發(fā),Kim等[8]提出了一種基于深度卷積神經(jīng)網(wǎng)絡(luò)的精確圖像超分辨率(very deep convolutional neural networks,VDSR)重建方法。為擴(kuò)大超分辨網(wǎng)絡(luò)的感受野,該方法使用了更深的殘差網(wǎng)絡(luò)結(jié)構(gòu),其性能較基于SRCNN的超分辨方法具有明顯的優(yōu)勢。為緩解過深的網(wǎng)絡(luò)結(jié)構(gòu)而導(dǎo)致網(wǎng)絡(luò)在訓(xùn)練過程中出現(xiàn)梯度消失或梯度爆炸問題,He等[9]提出了一種深度殘差網(wǎng)絡(luò)(residual network,ResNet)的圖像識別方法,該方法通過設(shè)計(jì)殘差連接網(wǎng)絡(luò)結(jié)構(gòu),能在網(wǎng)絡(luò)層數(shù)較深的情況下仍能獲得較好的訓(xùn)練效果。受該思想的啟發(fā),Lim等[10]將殘差網(wǎng)絡(luò)結(jié)構(gòu)引入到超分辨率重建網(wǎng)絡(luò)中,提出了一種增強(qiáng)深度殘差網(wǎng)絡(luò)的超分辨方法(enhanced deep residual network based super-resolution,EDSR),該方法通過去掉歸一化層,使用更深更廣的網(wǎng)絡(luò)結(jié)構(gòu)實(shí)現(xiàn)對SR網(wǎng)絡(luò)的增強(qiáng)。Zhang等[11]使用密集殘差塊和所有卷積層的層次特征,提出了基于殘差密集網(wǎng)絡(luò)(residual dense network,RDN)的超分辨網(wǎng)絡(luò)模型。他們利用殘差中的殘差結(jié)構(gòu)和通道注意機(jī)制構(gòu)建了一個殘差通道注意力網(wǎng)絡(luò)(residual channel attention network,RCAN),該方法能有效緩解深層網(wǎng)絡(luò)的訓(xùn)練難度,提高了超分辨網(wǎng)絡(luò)的重建能力。盡管上述網(wǎng)絡(luò)模型在解決超分辨問題中取得了較好的效果,但他們都忽略了如何利用低分辨圖像中多尺度相似性信息來進(jìn)一步提高超分辨重建的性能。由于自然圖像在同一尺度和不同尺度之間均存在相似性結(jié)構(gòu),相同尺度的自相似性有助于提高超分辨估計(jì)的魯棒性,而不同尺度的相似性有助于恢復(fù)圖像中更精細(xì)的紋理結(jié)構(gòu)信息。
最近研究者除了研究超分辨網(wǎng)絡(luò)的結(jié)構(gòu)外,還提出了許多針對超分辨重建的特征提取模塊塊,具有代表性的有殘差塊[11]、密集塊[13]和Inception塊[14]。Li等[15]引入Inception塊來提取低分辨圖像的多尺度特征。Kim等[16]提出了一種增強(qiáng)的殘差塊,從而減輕網(wǎng)絡(luò)訓(xùn)練的難度。Li等[17]提出了一種帶有門控選擇機(jī)制的殘差塊,可以自適應(yīng)地學(xué)習(xí)高頻信息而過濾低頻信息。Wang等[18]提出了多記憶殘差塊,將長短時(shí)記憶嵌入到該模塊中,有效地學(xué)習(xí)了連續(xù)低分辨圖像幀之間的相關(guān)性。Tong等[19]引入了密集塊,提出了一種將低維特征和高維特征有效相結(jié)合的方法,從而提升重建性能。Zhang等[11]提出了一種殘差密集塊,該模塊結(jié)合殘差塊和密級連接塊的優(yōu)點(diǎn),充分利用了低分辨圖像的所有分層特征。不過,殘差塊和密集塊都只使用單一大小的卷積核,不僅很難檢測到不同尺度的圖像特征,而且增加了計(jì)算復(fù)雜度。為了解決上述方法中存在的不足,Li等[20]將大小不同的卷積核加入到殘差塊中,并提出了多尺度殘差塊(multi-scale residual block,MSRB),并且在不同尺度特征之間使用跳連接實(shí)現(xiàn)特征的共享和重用。盡管基于MSRB的方法能檢測到不同尺度的圖像特征,但該方法應(yīng)用大尺寸卷積核會會導(dǎo)致網(wǎng)絡(luò)計(jì)算復(fù)雜性的顯著增加,而且該模型沒有充分利用淺層和深層局部圖像特征,導(dǎo)致該方法仍存在一定的局限性。
鑒于上述分析,本文將研究如何充分利用不同尺度的淺層和深層局部圖像特征來解決上述方法存在的不足,以提高基于深度學(xué)習(xí)超分辨網(wǎng)絡(luò)的重建性能。為了充分利用低分辨圖像中多尺度圖像特征之間的互補(bǔ)性,本文提出了一種基于多尺度漸進(jìn)融合網(wǎng)絡(luò)(multi-scale progressive fusion network,MSPFN)的圖像超分辨方法。該方法首先利用高斯核對LR圖像依次進(jìn)行下采樣,生成高斯金字塔序列圖像。然后,設(shè)計(jì)一種粗融合模塊(coarse-fusion module,CFM)實(shí)現(xiàn)多尺度圖像特征的提取和融合,之后利用細(xì)融合模塊(fine-fusion module,F(xiàn)FM)進(jìn)一步對CFM中特征進(jìn)行整合,并且在FFM模塊中引入通道注意力機(jī)制選擇性地學(xué)習(xí)不同尺度的特征,以有效地減少特征冗余。利用多個FFM模塊以級聯(lián)形式構(gòu)建漸進(jìn)多尺度融合網(wǎng)絡(luò),最后通過重建模塊(reconstruction module,RM)對來自CFM模塊和FFM模塊的特征進(jìn)行融合,以生成高質(zhì)量的超分辨圖像。提出的基于MSPFN的網(wǎng)絡(luò)結(jié)構(gòu)圖如圖1所示。
圖1 基于MSPFN的網(wǎng)絡(luò)結(jié)構(gòu)圖
首先對輸入圖像使用高斯核生成不同尺度的高斯金字塔圖像。將金字塔圖像作為輸入,并通過多個并行的卷積層提取淺層特征。在粗融合模塊中,將不同尺度的淺層特征輸入到幾個并行的殘差遞歸單元(residual recurrent units,RRU)中,實(shí)現(xiàn)多尺度圖像深度特征的提取。殘差遞歸單元如圖2所示。設(shè)計(jì)粗融合模塊的作用包括三個方面:1)引入Conv-LSTM來模擬空間維度上的紋理信息,并采用遞歸計(jì)算和殘差學(xué)習(xí)來獲取互補(bǔ)的圖像信息。2)對于多尺度圖像來說,不同尺寸的圖像能夠提供不同的感受,使得網(wǎng)絡(luò)在淺層結(jié)構(gòu)上能捕獲到更多的圖像內(nèi)容和細(xì)節(jié)。3)有利于提取多尺度圖像特征,實(shí)現(xiàn)更加魯棒的超分辨重建。
圖2 殘差遞歸單元
為了獲得更加精細(xì)的圖像特征,將CFM模塊輸出的結(jié)果輸入到FFM模塊中。為了便于觀察,將CFM模塊設(shè)計(jì)成與FFM模塊具有相似的多尺度結(jié)構(gòu),如圖2所示。與CFM模塊不同,在FFM模塊中加入了通道注意力機(jī)制,增強(qiáng)了網(wǎng)絡(luò)對重要特征的學(xué)習(xí)能力,從而為每個通道分配不同的權(quán)重,讓網(wǎng)絡(luò)更多地關(guān)注重要的圖像特征抑制不重要的特征。最后,為了避免信息丟失,利用反卷積來提升分辨率,從而構(gòu)成U型殘差注意力模塊(U-shaped residual attention block,URAB)。URAB結(jié)構(gòu)如圖3所示,URAB由多個通道注意力單元組成,利用短跳躍連接學(xué)習(xí)同一尺度下的相似信息,而且在級聯(lián)的細(xì)融合模塊中利用長跳躍連接,不僅實(shí)現(xiàn)不同尺度下的圖像信息融合,而且有利于反向傳播。
圖3 URAB結(jié)構(gòu)圖
對圖像超分辨重建模型中,損失函數(shù)用來計(jì)算真實(shí)的高分辨圖像與超分辨圖像之間的誤差,以指導(dǎo)模型的優(yōu)化。早期研究人員采用像素上的L2范數(shù)作為損失函數(shù),盡管該損失函數(shù)能獲得較高的峰值信噪比(peak signal-to-noise ratio,PSNR)和相似結(jié)構(gòu)(structural similarity,SSIM),但主觀視覺效果并沒有提升。因此,該方法容易導(dǎo)致圖像細(xì)節(jié)的模糊,產(chǎn)生過度平滑的視覺效果。為了避免上述問題,本文以Charbonnier損失函數(shù)為指導(dǎo)提出一種新的損失函數(shù),表示為:
(1)
為了進(jìn)一步改善高頻細(xì)節(jié)的真實(shí)性,使用另外一種邊緣損失函數(shù)來防止出現(xiàn)圖像過度平滑的效果。邊緣損失函數(shù)表示為:
(2)
L=L1+λ×Ledge
(3)
式中:λ為權(quán)重參數(shù),本文實(shí)驗(yàn)中設(shè)置為0.05。
本文提出的MSPFN模型在DIV2K[21]數(shù)據(jù)集進(jìn)行訓(xùn)練該數(shù)據(jù)集包含800幅訓(xùn)練圖像,100幅驗(yàn)證圖像和100幅測試圖像。本文選擇800幅圖像進(jìn)行訓(xùn)練,選擇5幅圖像進(jìn)行驗(yàn)證。測試集選用Set5,Set10,Set14和Urban100,它們分別包含5、14、100、100幅圖像。這些數(shù)據(jù)集中包含圖像內(nèi)容豐富,能充分評估超分辨重建算法的有效性。
為了驗(yàn)證本文所提出算法的有效性,首先建立一個基準(zhǔn)模型。在本文的基準(zhǔn)中,金字塔圖像的級別設(shè)置為3,即原始比例、1/2比例和1/4比例。在CFM中,每個循環(huán)Conv-LSTM的濾波器數(shù)量分別設(shè)置為32、64和128,F(xiàn)FM(M)和CAU(N)的深度分別設(shè)置為10和3。利用Adam優(yōu)化器每批次處理16幅圖像,初始學(xué)習(xí)率設(shè)為2×10-4,每20000步減小為原來的1/2,直到1×10-6,將上述參數(shù)設(shè)置迭代30次進(jìn)行訓(xùn)練網(wǎng)絡(luò)。本文實(shí)驗(yàn)均在英偉達(dá)2080Ti GPU和Ubuntu 18.04系統(tǒng)中進(jìn)行訓(xùn)練和測試。
1)基本模塊驗(yàn)證。本文使用的基準(zhǔn)模型中M=10,N=3,分別設(shè)計(jì)3個比較模型來分析基本模塊CFM、FFM和多尺度金字塔框架對超分辨性能的影響。其中Model1是僅具有原始輸入的單尺度框架,Model2代表從MSPFN去除所有CFM模塊的網(wǎng)絡(luò)模型,而Model3表示從MSPFN中去除所有FFM模塊的網(wǎng)絡(luò)模型。表1是Set14數(shù)據(jù)集在×2倍放大情況下不同模型的重建結(jié)果。由表1可知,本文提出的MSPFN相對于其他三種模型具有明顯的優(yōu)勢,而且發(fā)現(xiàn)FFM模塊對超分辨重建結(jié)果的影響顯著高于CFM模塊和單尺度框架。
表1 基本模塊驗(yàn)證結(jié)果
2)M和N參數(shù)分析。為了驗(yàn)證FFM的深度(M)和CAU(N)的數(shù)量對超分辨性能的影響,相對于基準(zhǔn)模型(M=10,N=3)設(shè)計(jì)出4個比較模型,4個模型分別為MSPFNM5N3,MSPFNM8N3,MSPFNM10N1,MSPFNM10N5。表2列出了Set14數(shù)據(jù)集在×2倍情況下在不同模型的重建結(jié)果。
表2 不同M和N的比較結(jié)果
由表2可知,隨著M和N的增加,超分辨重建圖像的質(zhì)量也隨之提升。但需要注意的是,隨著M和N的增加,超分辨網(wǎng)絡(luò)模型的參數(shù)量會增加,導(dǎo)致算法的計(jì)算效率變低。為平衡重建質(zhì)量和計(jì)算效率,本文設(shè)置M=10,N=3。
為了驗(yàn)證本文所提出方法的有效性,將本文方法與7種主流超分辨方法進(jìn)行比較,包括A+[22],SelfExSR[23],SRCNN[5],F(xiàn)SRCNN[7],VDSR[8],DRCN[24]和MSRN[20]。圖4~圖6從視覺質(zhì)量上分別展示8種算法對不同測試圖像進(jìn)行超分辨的視覺效果,并對比了4倍放大下各算法對Urban數(shù)據(jù)集中的3幅圖像(包括img005、img061和 img074)中特定區(qū)域的重建效果。從圖4~圖6中的對比結(jié)果可以看出,本文所提出的算法重建出的效果最接近與原始圖像。其中,A+和SelfExSR算法重建的圖像視覺效果最差,出現(xiàn)了明顯的模糊,且紋理細(xì)節(jié)缺失嚴(yán)重。SRCNN和FSRCNN相對與A+和SelfExSR性能有所提高,但是重建出來的邊緣和紋理細(xì)節(jié)比較模糊,不能滿足實(shí)際需求。VDSR,DRCN和MSRN相較于其他算法性能有明顯的提升,但在紋理細(xì)節(jié)豐富的區(qū)域出現(xiàn)明顯的扭曲失真。綜合上述結(jié)果,可以看出本文所提出的算法恢復(fù)出來的圖像紋理細(xì)節(jié)最清晰,視覺效果最好。
圖4 img005放大4倍時(shí)SR結(jié)果對比
圖5 img061放大4倍時(shí)SR結(jié)果對比
圖6 img074放大4倍時(shí)SR結(jié)果對比
表3展示不同方法在Set5、Set14、Urbanl00和BSDl00 4個測試數(shù)據(jù)集上的3種放大倍數(shù)情況下的平均PSNR值和SSIM值。
表3 不同尺度圖像超分辨重建結(jié)果
由表3中的結(jié)果可知,本文提出的MSPFN方法在不同數(shù)據(jù)集進(jìn)行放大2倍和3倍時(shí),無論是PSNR還是SSIM的結(jié)果均優(yōu)于其他7種算法。盡管在放大4倍時(shí)在個別數(shù)據(jù)集上的性能指標(biāo)略低于MSRN算法,但綜合所有數(shù)據(jù)集上的性能指標(biāo),本文所提出的方法具有最好的重建性能。
本文提出了一種基于多尺度漸進(jìn)融合的超分辨網(wǎng)絡(luò)模型,該模型首先將生成的多尺度高斯金字塔圖像輸入到CFM對多尺度的圖像進(jìn)行特征提取并融合。然后利用FFM進(jìn)一步對CFM中的特征進(jìn)行整合,并且在FFM模塊中引入通道注意力機(jī)制。通道注意力機(jī)制不僅可以選擇性地學(xué)習(xí)不同尺度的特征,而且可以有效地減少特征冗余。此外多個FFM以級聯(lián)形式形成漸進(jìn)的多尺度融合。最后通過RM模塊將來自CFM模塊和FFM模塊中的特征進(jìn)行有效融合,從而重建出高質(zhì)量的超分辨圖像。與其他七種主流的超分辨算法的對比實(shí)驗(yàn)結(jié)果表明,所提出的基于多尺度漸進(jìn)融合網(wǎng)絡(luò)的超分辨方法能重建出主、客觀質(zhì)量評價(jià)方面更好的超分辨圖像。