馮興杰 王 榮
1(中國民航大學信息網(wǎng)絡(luò)中心 天津 300300) 2(中國民航大學計算機科學與技術(shù)學院 天津 300300)
在實際應(yīng)用中,受到圖像采集設(shè)備成本、傳輸帶寬、存儲年限久遠等問題的限制,很難保證得到的圖像均為精致的高分辨率圖像。因此超分辨率重建(Super-Resolution,SR)技術(shù)的產(chǎn)生顯得尤為重要。根據(jù)輸入數(shù)據(jù)類型的不同,可以將SR分為單圖像SR和多圖像SR,由于多圖像SR直接基于單圖像SR,因此本文主要討論單圖像超分辨率重建(Single Image Super-Resolution,SISR)。
圖像超分辨率重建的目的是將給定的具有粗糙細節(jié)的低分辨率圖像(LR)轉(zhuǎn)換為相應(yīng)的具有更好的視覺效果以及精致細節(jié)的高分辨率圖像(HR)。SR的應(yīng)用領(lǐng)域很廣泛,如目標檢測(尤其是針對小對象)、監(jiān)控視頻、衛(wèi)星遙感等。實際上,無限多的高分辨率圖像可以通過下采樣得到相同的低分辨率圖像。因此,SR問題本質(zhì)上是不適定的,不存在唯一解。為了緩解這一問題,文獻中提出了許多SISR方法,目前的SISR方法一般可分為兩類:基于重建的方法(Reconstruction-Based)[1-2]和基于樣本學習的方法(Example Learning-Based)?;谥亟ǖ姆椒▋H用了一些先驗知識來正則化重建過程,計算量低且簡單,不過無法處理復(fù)雜圖像結(jié)構(gòu)?;趯W習的方法利用大量通過學習得到的先驗數(shù)據(jù)來學習低分辨率圖像到高分辨圖像的某種映射關(guān)系,用學習到的映射關(guān)系來預(yù)測高分辨率圖像,常見的有基于稀疏編碼和基于深度學習的方法。
近年來深度學習發(fā)展迅猛。Dong等[3]首先提出了一個采用三層卷積神經(jīng)網(wǎng)絡(luò)的SRCNN模型對特征提取、非線性映射和圖像重建階段進行端到端的聯(lián)合優(yōu)化。Shi等[4]提出了一種有效的亞像素卷積神經(jīng)網(wǎng)絡(luò)ESPCN,它直接在LR空間中提取特征映射,有效地降低了計算復(fù)雜度。受到功能強大的深度卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)的影響,許多基于CNN的SR方法嘗試訓練一個更深的網(wǎng)絡(luò)以獲得更好的重建性能。Kim等[5]提出了一種包含20個卷積層的VDSR模型,該模型采用殘差學習和自適應(yīng)梯度裁剪來減輕訓練難度,證明了更深的網(wǎng)絡(luò)可以提供更好的特征重建,使網(wǎng)絡(luò)捕捉到更加全局的特征,進而有益于超分辨率重建工作中圖像細節(jié)的恢復(fù)。
因此在之后提出的一些模型[6-9]為了獲得更好的性能,不斷深化或拓寬網(wǎng)絡(luò)已經(jīng)成為了一種趨勢。然而,不斷對網(wǎng)絡(luò)進行深化和拓寬,隨之而來的則是實際應(yīng)用中算法復(fù)雜度和內(nèi)存消耗的提升。在實際應(yīng)用中,如移動和嵌入式視覺應(yīng)用中,這些方法的適用性較差。此外,傳統(tǒng)的卷積層平等地對待圖像的高頻特征與低頻特征,不加區(qū)分地將特征傳向后續(xù)層。但高頻特征往往包含更多的細節(jié)信息,而SR任務(wù)的重點是恢復(fù)圖片中的紋理細節(jié)信息,因此應(yīng)該將重點放在擁有高頻細節(jié)的特征上。隨著研究的深入,注意力的重要性得到了廣泛的關(guān)注,注意力不僅闡明了關(guān)注的焦點在哪里,還提高了焦點的表達。與被廣泛關(guān)注的Hu等[10]提出的只關(guān)注通道注意力的方法不同,Woo等[11]對基于通道和空間兩個維度上的特性響應(yīng)進行了研究,提出了通道和空間注意力機制。它可以自適應(yīng)地重新校準通道和空間兩個維度上的特性響應(yīng)以提高網(wǎng)絡(luò)的表達能力,很好地解決了深層網(wǎng)絡(luò)中特征不加區(qū)分的向后傳遞的問題,同時該注意力機制引入的參數(shù)量很少。這為SR獲取全局特征來更好地恢復(fù)高頻紋理細節(jié)以及網(wǎng)絡(luò)的輕量化提供了新思路。
基于上述討論,本文提出一種基于雙注意力機制的輕量級圖像超分辨率重建(SR-LAM)算法。所提出的SR-LAM網(wǎng)絡(luò)為了能夠充分地捕獲上下文信息,將網(wǎng)絡(luò)深度保持在20層。網(wǎng)絡(luò)結(jié)構(gòu)分為四部分。第一部分由一個增強模塊對LR圖像進行淺層特征的提取及校準。第二部分由包含組卷積的卷積核大小為3×3的特征提取塊堆疊,逐步細化殘差信息。第三部分與第一部分相同,用一個增強模塊進行深層特征提取和重新校準。最后由重建模塊將殘差信息上采樣到目標尺寸后與上采樣到目標尺寸的輸入圖像融合輸出結(jié)果。最后通過在縱向和橫向上進行對比實驗,表明了盡管使用較少的卷積層,本網(wǎng)絡(luò)仍然能夠獲得具有競爭性的結(jié)果。
自Kim等[5]的方法被提出以來,許多超分辨率重建算法都是基于它進一步優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu)以提高網(wǎng)絡(luò)性能。本文也將在VDSR模型的基礎(chǔ)上提出改進。
該模型以插值后的目標尺寸低分辨率圖像作為網(wǎng)絡(luò)的輸入,這無疑加大了網(wǎng)絡(luò)的計算量。為了擁有更大的感受野讓圖像特征提取到更多的細節(jié),VDSR采用了更深(20層)的網(wǎng)絡(luò)結(jié)構(gòu),為了加速收斂,采用了非常高的學習率,使用殘差學習來緩解高學習率導致的梯度問題。Kim等通過實驗證明了不斷加深網(wǎng)絡(luò)會帶來感受野的增加,使網(wǎng)絡(luò)能夠捕捉到更加全局的特征,進而有益于SR工作中紋理細節(jié)的恢復(fù)。
雖然Kim等對超分辨重建算法做出了很好的改進,但其中仍存在著一些影響超分辨率重建質(zhì)量和效率的因素:
1) 對于目標尺度系數(shù)n,與插值后的目標尺寸LR圖像進行卷積的計算量將是與原始LR圖像進行卷積計算的n2倍,另外,雙三次插值方法不會帶來額外的有利于解決不適定問題的信息。
2) VDSR及之后提出的一些模型為了獲得更好的性能,不斷深化或拓寬網(wǎng)絡(luò)已經(jīng)成為了一種趨勢,但隨之而來的是龐大的計算量及網(wǎng)絡(luò)訓練困難。
3) LR圖像與HR圖像之間存在許多相似的部分,SR任務(wù)的重點則是恢復(fù)圖片中的紋理細節(jié)信息,因此應(yīng)該將重點放在擁有高頻細節(jié)的特征上。VDSR及一些傳統(tǒng)的卷積網(wǎng)絡(luò)認為所有空間位置和通道對超分辨率具有統(tǒng)一的重要性,通常采用級聯(lián)網(wǎng)絡(luò)拓撲,每一層的特征映射被無區(qū)別地發(fā)送到后續(xù)層,這不利于把注意力集中在更有利于恢復(fù)高頻細節(jié)的特征上。
針對上述現(xiàn)象,隨著研究的深入,本文對其做出了改進:
1) 本文方法采用后上采樣代替提前上采樣,以此來降低網(wǎng)絡(luò)運算量,這有利于網(wǎng)絡(luò)輕量化的實現(xiàn)。
2) 在某些情況下,考慮到并非所有特征都是SR所必需的,其重要性各不相同,有選擇地側(cè)重于某些特定特征對更好地恢復(fù)高頻細節(jié)是有幫助的。由于卷積運算是通過混合跨通道和空間信息來提取特征的,所以強調(diào)沿著通道和空間軸這兩個主要維度的重要特征是有必要的。對空間和通道兩個維度上的特征響應(yīng)研究[11]允許這種靈活性的產(chǎn)生。提出雙注意力機制可以自適應(yīng)地重新校準通道和空間兩個維度上的特性響應(yīng),提高網(wǎng)絡(luò)的表達能力,解決深層網(wǎng)絡(luò)中特征不加區(qū)分的向后傳遞的問題。另外該注意力機制引入的參數(shù)量非常少。融合高效且輕量的雙注意力機制代替普通卷積塊在保證了網(wǎng)絡(luò)質(zhì)量的情況下進一步實現(xiàn)了輕量化,很好地解決了網(wǎng)絡(luò)加深帶來的訓練困難。
3) 用組卷積代替普通卷積已經(jīng)被證明[12]了能夠在性能損失很小的前提下減少大量的網(wǎng)絡(luò)參數(shù),本文方法為了進一步實現(xiàn)網(wǎng)絡(luò)輕量級在特征提取模塊融入了組卷積。
圖1展示了本模型的總體網(wǎng)絡(luò)架構(gòu)。模型由四部分組成,包括三種模塊:增強模塊、特征提取模塊、重建模塊。
圖1 SR-LAM網(wǎng)絡(luò)結(jié)構(gòu)
SR的具體任務(wù)是將原始高分辨率圖像(IHR)進行下采樣得到輸入網(wǎng)絡(luò)的低分辨率圖像(ILR),經(jīng)網(wǎng)絡(luò)得到最終的重建后高分辨率圖像(ISR)。其中的下采樣操作其實是在模擬原始圖像在其獲取、存儲和傳輸過程中存在不可避免的各種圖像退化過程,退化函數(shù)通常是未知的,在目前的SR方法中大多采用雙三次插值對IHR進行下采樣預(yù)處理來模擬這個過程,為了與其他網(wǎng)絡(luò)保持一致,本文也采用此插值方法來處理原始高分辨率圖像。
對于網(wǎng)絡(luò)的輸入圖像,第一部分由一個增強模塊對LR圖像進行淺層特征的提取及校準。其中增強模塊包含一個卷積核大小為3×3的卷積層和基于通道和空間的雙注意力模塊。第二部分由5個包含組卷積的卷積核大小為3×3的特征提取塊堆疊,逐步提取殘差信息。第三部分與第一部分相同,用一個增強模塊進行深層特征提取和重新校準。最后由重建模塊將信息采用[4]提出的亞像素卷積的方式上采樣到目標尺寸并和直接雙三次插值上采樣后的LR圖像融合相加。
增強模塊由一個3×3的卷積和一個基于通道和空間兩個維度的雙注意力模塊組成。卷積層后面跟著一個LReLU激活函數(shù),如圖2所示。首先進行淺層特征的提取,緊接著對特征進行一次校準,讓隨后的特征提取步驟把注意力集中在更有利于恢復(fù)高頻細節(jié)的特征上。輸出維度為64的特征圖。用公式表示如下:
圖2 增強模塊
Fout=FS(FC(H(Fin)))
(1)
式中:Fin表示輸入;H表示特征提取函數(shù);FC表示通道注意力操作;FS表示空間注意力操作;Fout為增強模塊的輸出。
此注意力模塊是一個輕量級模塊,在僅引入了1 194個參數(shù)的情況下提高了網(wǎng)絡(luò)的表達能力,滿足了對網(wǎng)絡(luò)輕量級的要求。該模塊將注意力的特征細化應(yīng)用于通道和空間兩個不同維度,加強了對高頻紋理細節(jié)的校準能力,引入該模型使得本網(wǎng)絡(luò)可以在保持較小開銷的同時獲得有競爭力的重建效果。
在通道注意力子單元中,如圖2所示。對于輸入的特征圖F∈RH×W×C首先使用平均池化和最大池化來聚合特征圖的空間信息,生成兩個不同的空間上下文信息來分別表示平均池化特征和最大池化特征。接著將兩個上下文特征分別發(fā)送到共享網(wǎng)絡(luò),共享網(wǎng)絡(luò)由含有一個隱藏層的MLP組成。之后對MLP輸出的兩個特征進行逐元素求和以及Sigmoid激活操作,生成通道注意力特征圖AC(F),該特征圖和輸入特征圖逐元素相乘得到空間注意力子模塊的輸入特征圖FC,這個過程可以表示為:
FC=sigmoid(MLP(Avgpool(F))+MLP(Maxpool(F)))
(2)
在空間注意力子單元中,如圖2所示。通道注意力子模塊的輸出Fc即本子模塊的輸入。首先對其沿著通道軸進行平均池化和最大池化得到兩個上下文信息,將得到的兩個信息基于通道方向做拼接,經(jīng)一個卷積降維到單通道,然后經(jīng)Sigmoid激活函數(shù)生成最終的空間注意力特征圖。最后將該特征圖與輸入特征圖做乘法得到FS,這個過程可以表示為:
FS=sigmoid(f7×7(Avgpool(FC);Macpool(FC))
(3)
式中:f7×7為一個7×7×1的卷積層。
上述過程可以簡潔地概括為:
FC=AC(F)?F
(4)
Fout=FS=AS(FC)?FC
(5)
式中:AC為通道注意力操作;AS為空間注意力操作。
用組卷積代替普通卷積已經(jīng)被證明[12]可以減少大量的參數(shù)和操作,而性能損失很小。為了進一步降低網(wǎng)絡(luò)參數(shù),減少網(wǎng)絡(luò)計算成本。本文在特征提取模塊的第二層引入了組卷積。組卷積可看成是一種稀疏卷積連接的形式。將輸入特征在通道方向上分成若干組,分別對每一組進行卷積后在通道方向進行拼接。如圖3所示。特征提取模塊由兩個3×3的卷積層和一個組卷積塊組成。使用組卷積的優(yōu)勢在于它使模型的效率可調(diào),用戶可適當?shù)剡x擇組大小,因為組大小和性能處于權(quán)衡關(guān)系中。本文延續(xù)Ahn等[12]所提出結(jié)論,設(shè)定組卷積的組大小為4。
圖3 特征提取模塊
早期的上采樣方法大多是采用雙三次插值進行提前上采樣,即在網(wǎng)絡(luò)的第一層之前或者第一層對輸入的LR上采樣到與輸出的HR相匹配的尺寸。這種方法顯然會增加計算復(fù)雜度,尤其是對于卷積操作,因為卷積網(wǎng)絡(luò)的處理速度直接取決于輸入圖像的分辨率,這不符合本文輕量級網(wǎng)絡(luò)的目標。其次,雙三次插值方法不會帶來額外的有利于解決不適定問題的信息。因此本文沒有延續(xù)VDSR中的提前上采樣操作,而是采用了文獻[4]中提出的亞像素卷積進行后上采樣。亞像素卷積通過通道擴增和像素點重排來實現(xiàn)圖像放大。由于輸入的圖片分辨率降低,可以有效地使用較小的卷積核來進行特征提取,同時維持給定的上下文區(qū)域。分辨率和卷積核尺寸的減小也大大降低了計算量和內(nèi)存的復(fù)雜度。
最后將重建模塊的輸出與經(jīng)上采樣到目標尺寸的輸入圖像融合得到最終結(jié)果。
本文采用峰值信噪比(PSNR)和結(jié)構(gòu)化相似度(SSIM)作為重建的評價指標。PSNR與還包含L1和L2的像素損失高度相關(guān),像素損失最小直接最大化PSNR。本文采用L1作為模型的損失函數(shù),L1公式如下:
(6)
該模型使用DIV2K數(shù)據(jù)集[13]進行訓練,它包括1 000幅圖像,其中:800幅訓練圖像;100幅驗證圖像;100幅測試圖像。它是一種新提出的高質(zhì)量圖像數(shù)據(jù)集。由于該數(shù)據(jù)集的豐富性,最近的SR模型[14-16]也使用了DIV2K數(shù)據(jù)集。本文方法在四個被廣泛使用的標準數(shù)據(jù)集上進行評估:Set5、Set14、BSD100、Urban100。
本文使用文獻[17]中提出的Xavier初始化方法進行權(quán)重初始化,偏置項初始化為零。使用Adam[18]對網(wǎng)絡(luò)進行優(yōu)化。初始學習率為:1E-4,最大迭代次數(shù)為10 000,每2 000次迭代學習率減半。
本文的實驗環(huán)境如表1所示。
表1 實驗環(huán)境
為了探索通道和空間的注意力機制對SR任務(wù)的作用,首先將本文模型與剔除掉注意力模塊的NA-SR-LAM進行了對比。訓練過程如圖4所示,橫軸為訓練輪數(shù),縱軸為PSNR值??梢钥吹桨⒁饬δK的模型訓練過程更穩(wěn)定,隨著訓練次數(shù)的增加,波動逐漸變小。實驗結(jié)果如表2所示。實驗結(jié)果顯示迭代次數(shù)為10 000時,添加了通道和空間注意力的模型較沒有添加的模型在四個測試數(shù)據(jù)集上的峰值信噪比值分別提高了:0.29 dB,0.27 dB,0.24 dB,0.53 dB。此外,一個普通的3×3卷積核將引入36 928個參數(shù),一個注意力模塊僅引入了1 194個參數(shù)。綜上所述,通道和空間注意力模塊不僅有利于增強特征表達能力而且有利于模型的輕量化。
表2 SR-LAM與無注意力的SR-LAM對比
圖4 SR-LAM與無注意力的SR-LAM對比(S=2)
表3展示了迭代次數(shù)為3 000時,Set14數(shù)據(jù)集上有無組卷積情況下模型參數(shù)量以及PSNR的對比。其中N-Group表示用普通卷積來代替特征提取模塊中組卷積。
表3 SR-LAM與無組卷積的SR-LAM對比
由表3可知,融合組卷積的模型與未應(yīng)用組卷積的模型在PSNR上僅相差0.01 dB,但參數(shù)量卻比未應(yīng)用組卷積的模型降低了將近23%,因此引入組卷積是實現(xiàn)該模型輕量化的有效措施。
本文提出的改進策略在不同程度上都對網(wǎng)絡(luò)的輕量化做出了一定貢獻,為了進一步直觀展示本文算法是否更好地平衡了模型復(fù)雜度與重建效果,本文對近年來基于深度學習的經(jīng)典超分辨率算法進行了對比實驗。實驗條件:目標尺度系數(shù)(S)為4,數(shù)據(jù)集為Set14。
選取的對比算法有:SRCNN[3]、LapSRN[19]、FSRCNN[20]、VDSR[5]、DRRN[6]、IDN[16]、本文提出的SR-LAM算法:SRCNN模型采用三層卷積神經(jīng)網(wǎng)絡(luò)對特征提取、非線性映射和圖像重建階段進行端到端的聯(lián)合優(yōu)化;FSRCNN方法將SRCNN的提前上采樣改為了后上采樣,并且用8個小尺寸的卷積核來代替之前的大卷積核,降低了計算復(fù)雜度,重建效果略有提升;VDSR將網(wǎng)絡(luò)加深到20層以提高圖像重建效果;DRRN延續(xù)了VDSR更深的網(wǎng)絡(luò)層次重建效果更好的思想,將網(wǎng)絡(luò)加深到52層,重建效果略有提升,模型參數(shù)量也有所下降;LapSRN方法對原始LR圖像先生成低倍放大圖像,再逐步細化生成高倍放大的圖像,很好地改善了放大倍數(shù)高的復(fù)雜度問題;IDN直接從LR圖像提取特征,減少了模型計算量,受到注意力思想的影響,作者提出了可提高網(wǎng)絡(luò)表達能力、壓縮特征冗余信息的蒸餾模塊,通過對此模塊的疊加在一定程度上提高了網(wǎng)絡(luò)重建效果。
實驗結(jié)果如圖5所示,其中橫軸表示算法所需參數(shù)量,縱軸為重建效果評價指標PSNR,不同大小的圓點代表不同算法所需參數(shù)量。結(jié)果表明:本文提出的方法更好地兼顧了重建效果與模型復(fù)雜性。與重建效果相當?shù)腎DN、LapSRN相比,本文所提出的模型更加簡潔,參數(shù)量更少。在模型參數(shù)量方面,SR-LAM的重建效果遠好于參數(shù)量相當?shù)腄RRN。對比基礎(chǔ)模型VDSR,其參數(shù)量是本文所提方法的1.5倍。
圖5 不同算法在Set14數(shù)據(jù)集上的PSNR及參數(shù)個數(shù)對比(S=4)
圖6直觀地對比了目標重建系數(shù)為2的comic圖像的重建效果。對比Bicubic、SRCNN、VDSR、IDN方法,本文方法視覺上手指邊緣以及流水的線條都更加清晰,這是因為本文將更多的注意力放在了高頻信息,因此本方法對線條以及高頻信息的重建效果更好、紋理更加清晰。
圖6 不同方法對comic重建的視覺效果對比(S=2)
表4顯示了最近基于CNN的SR方法的性能和模型大小。選取的算法包括:LapSRN[19]、IDN[16]、RCAN[21]、SAN[22]。本文提出的SR-LAM較LapSRN和IDN擁有更少的參數(shù)和更好的性能。雖然RCAN和SAN性能略勝,但其付出的代價特別大,二者平均參數(shù)量是本文所提方法的32倍。
表4 參數(shù)及性能比較(Set14)
表5客觀地對比了本文方法與其他五種經(jīng)典方法(雙三次插值(Bicubic)、SRCNN、FSRCNN、VDSR、IDN)在不同上采樣倍數(shù)下的PSNR以及SSIM。
表5 本文方法(SR-LAM)與其他方法結(jié)果比較
結(jié)果顯示本文模型取得了具有競爭力的結(jié)果:與基礎(chǔ)模型VDSR相比,在S分別等于2、3、4的情況下,四個測試數(shù)據(jù)集上的PSNR值平均提高了0.273 dB、0.253 dB、0.295 dB,SSIM值平均提高了0.003、0.005、0.008;與先進的IDN模型相比,在Set14和Urban100數(shù)據(jù)集上本文方法取得了更好的結(jié)果,而且通過對比圖6(e)和圖6(f)可以發(fā)現(xiàn),本文方法對手指及指甲處的邊緣恢復(fù)得更為清晰,視覺效果更好,與原圖像也更加相似。
本文提出一個簡潔、輕量、便于在移動端使用的超分辨率重建模型:SR-LAM。方法上主要通過:融合高效且輕量的雙注意力機制代替普通卷積塊、采用后上采樣方法來代替提前上采樣、引入部分組卷積的方式,使模型能夠在擁有少量網(wǎng)絡(luò)參數(shù)的情況下達到一個有競爭力的重建效果。實驗結(jié)果證明,對比重建效果相當?shù)南冗M模型,本文方法僅使用了其1/2,甚至更少的參數(shù)量。因此可以說本文模型更好地平衡了模型復(fù)雜度與重建效果。后續(xù)將進一步研究如何將這種高效、簡潔的網(wǎng)絡(luò)用于視頻超分辨率領(lǐng)域。