楊改娣,黎敬濤,宋開雨
(昆明理工大學(xué) 信息工程與自動(dòng)化學(xué)院,云南 昆明 650500)
超分辨率圖像重建在圖像壓縮、醫(yī)學(xué)成像、遙感成像、公共安防等計(jì)算機(jī)視覺(jué)子領(lǐng)域有廣泛應(yīng)用[1-4],并且在圖像識(shí)別、目標(biāo)檢測(cè)、目標(biāo)分割等許多監(jiān)督式學(xué)習(xí)任務(wù)的預(yù)處理階段有重要作用[1].監(jiān)督式學(xué)習(xí)訓(xùn)練階段使用的訓(xùn)練樣本需要對(duì)目標(biāo)進(jìn)行標(biāo)注,但由于拍攝過(guò)程的不穩(wěn)定性或某些特定領(lǐng)域采集環(huán)境的影響[5],獲取到的圖像往往是低分辨率的.低分辨率圖像在進(jìn)行標(biāo)注時(shí)由于缺乏高頻細(xì)節(jié),會(huì)出現(xiàn)目標(biāo)對(duì)象誤標(biāo)和漏標(biāo)問(wèn)題,尤其訓(xùn)練集中有相似目標(biāo)和小目標(biāo)的圖像,影響更為明顯.因此,得到超分辨率圖像是提高監(jiān)督式學(xué)習(xí)任務(wù)性能的保障.
Dong 等[6](SRCNN)首次利用卷積網(wǎng)絡(luò)實(shí)現(xiàn)超分辨率的重建,但Shi 等[7](ESPCN)認(rèn)為SRCNN使用插值進(jìn)行預(yù)上采樣操作影響了性能,認(rèn)為應(yīng)讓網(wǎng)絡(luò)從訓(xùn)練樣本中學(xué)習(xí)如何進(jìn)行放大,便將預(yù)上采樣操作替換為在重建操作之后增加一個(gè)亞像素卷積層來(lái)實(shí)現(xiàn)放大,這種方法在降低SRCNN 計(jì)算量的同時(shí)重建效果也得到改善.Ledig 等[8](SRGAN)則認(rèn)為SRCNN、ESPCN 以及其他使用均方誤差(Mean Square Error,MSE)作為重建目標(biāo)損失的算法,其模型重點(diǎn)學(xué)習(xí)的是顏色、亮度等像素上的差異而非圖像固有的語(yǔ)義差異,導(dǎo)致重建出來(lái)的圖像過(guò)于平滑,缺乏高頻信息,在感知上不令人滿意.對(duì)此,SRGAN 定義了感知損失函數(shù),并利用可以生產(chǎn)具有真實(shí)圖像感知的生成對(duì)抗網(wǎng)絡(luò)來(lái)重建超分辨率圖像.Haris 等[9](DBPN)則仍然使用MSE 作為重建損失函數(shù),通過(guò)設(shè)計(jì)具有自回歸功能的上下采樣單元構(gòu)成網(wǎng)絡(luò),利用反饋機(jī)制挖掘低分辨率圖像與高分辨率圖像之間的相關(guān)性信息來(lái)重建超分辨率圖像,該算法同樣提升了峰值信噪比(Peak Signal to Noise Ratio,PSRN)和結(jié)構(gòu)相似性(Structural Similarity,SSIM)值[10].除了在網(wǎng)絡(luò)結(jié)構(gòu)、損失函數(shù)的討論之外,Blau 等[11]關(guān)注算法的評(píng)估指標(biāo),用數(shù)學(xué)理論證明失真與感知質(zhì)量并不是完全相關(guān),有時(shí)候較大的失真也可能有較好的感知質(zhì)量,為此提出新的評(píng)估指標(biāo)平衡兩者.
近年來(lái),為了改善使用MSE 作為重建目標(biāo)損失導(dǎo)致重建出來(lái)的超分辨率圖像在失真和感知兩個(gè)屬性上難以兼得的問(wèn)題,許多改進(jìn)算法相繼被提出.段麗娟等[12]鑒于小波變換能夠?qū)D像內(nèi)容的“粗略”和“細(xì)節(jié)”特征進(jìn)行分離,提出一種基于小波域的深度殘差網(wǎng)絡(luò),解決傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)方法忽略重要細(xì)節(jié)的問(wèn)題.也有許多研究者在SRGAN模型上進(jìn)行優(yōu)化改進(jìn),丁玲等[13]為緩解判別器在接收高分辨率圖像作為輸入時(shí),輸出判別信號(hào)不穩(wěn)定問(wèn)題,設(shè)計(jì)了一個(gè)穩(wěn)定的基于能量的輔助對(duì)抗損失;李強(qiáng)等[14]與辛元雪等[15]方法相似,均刪除生成網(wǎng)絡(luò)中的所有批歸一化層,設(shè)計(jì)多級(jí)殘差密集連接模塊,重新改進(jìn)網(wǎng)絡(luò)結(jié)構(gòu).針對(duì)一些算法忽略了特征通道間相關(guān)信息以及網(wǎng)絡(luò)數(shù)據(jù)傳遞中信息丟失問(wèn)題,蔡體健等[16]、許嬌等[17]提出多尺度殘差融合與通道注意力相結(jié)合類重構(gòu)網(wǎng)絡(luò);蔡文郁等[18]將殘差與注意力機(jī)制引進(jìn)到循環(huán)生成對(duì)抗網(wǎng)絡(luò)中.
這些算法主要對(duì)生成對(duì)抗網(wǎng)絡(luò)[19]、殘差網(wǎng)絡(luò)[20]等這類單向機(jī)制進(jìn)行改進(jìn),雖然在一定程度上重建效果有所提高,但單向機(jī)制只從一個(gè)方向?qū)W習(xí)低分辨率與高分辨率圖像之間的信息,不能同時(shí)挖掘低分辨率圖像演進(jìn)到高分辨率圖像和高分辨率圖像退化到低分辨率圖像兩個(gè)方向信息,導(dǎo)致在超分辨率特征重建時(shí),兩者的相關(guān)性信息沒(méi)有得到充分利用,進(jìn)而限制了網(wǎng)絡(luò)性能,影響重建效果.本文受《每日郵報(bào)》報(bào)道的變色龍眼睛有著可以同時(shí)向前向后看的非凡視覺(jué)功能一文啟發(fā)[21],借助具有可以結(jié)合序列演進(jìn)前向與反向兩個(gè)方向給輸出提供不同方向時(shí)間信息功能的雙向循環(huán)神經(jīng)網(wǎng)絡(luò)(Bidirectional Recurrent Neural Network,BRNN)[22],進(jìn)行網(wǎng)絡(luò)模型設(shè)計(jì).變色龍的兩只眼球可以360 度獨(dú)立旋轉(zhuǎn),兩只眼睛可以同時(shí)注視兩個(gè)不同方向,有非常寬廣的視野范圍,這一特殊功能幫助他們更快地捕捉到昆蟲[23].而雙向循環(huán)神經(jīng)網(wǎng)絡(luò)的前向循環(huán)網(wǎng)絡(luò)和反向循環(huán)網(wǎng)絡(luò)如同變色龍的兩只眼睛,同時(shí)看低分辨率圖像如何演進(jìn)到高分辨率圖像以及高分辨率圖像如何退化到低分辨率圖像兩個(gè)過(guò)程.通過(guò)雙向循環(huán)機(jī)制獲取兩個(gè)方向信息,在重建超分辨率特征時(shí)將這兩個(gè)分向上的特征聯(lián)合起來(lái)進(jìn)行最終預(yù)測(cè),實(shí)現(xiàn)在超分辨率圖像重建過(guò)程中失真和感知屬性的兼顧,改善重建效果.
本文提出的基于雙向循環(huán)網(wǎng)絡(luò)的變色龍視覺(jué)超分辨率重建算法,定義了特征演進(jìn)和退化序列,并在VGG[24]基礎(chǔ)結(jié)構(gòu)上設(shè)計(jì)了低分辨率圖像到高分辨率圖像演進(jìn)和高分辨率圖像到低分辨率圖像退化網(wǎng)絡(luò);將演進(jìn)和退化網(wǎng)絡(luò)對(duì)應(yīng)應(yīng)用為雙向循環(huán)網(wǎng)絡(luò)的前向循環(huán)和反向循環(huán)網(wǎng)絡(luò)結(jié)構(gòu).完整的SRBRNN 網(wǎng)絡(luò)結(jié)構(gòu)如圖1 所示,包括一個(gè)雙向循環(huán)重建模塊和兩個(gè)卷積模塊,其中雙向循環(huán)重建模塊包含特征演進(jìn)和退化網(wǎng)絡(luò)以及雙向循環(huán)超分辨率特征重建網(wǎng)絡(luò).特征演進(jìn)和退化網(wǎng)絡(luò)模擬低分辨率圖像到高分辨率圖像演進(jìn)和高分辨率圖像到低分辨率圖像退化兩個(gè)過(guò)程;雙向循環(huán)超分辨率特征重建網(wǎng)絡(luò)的兩個(gè)循環(huán)網(wǎng)絡(luò)則模擬變色龍的兩只眼睛,負(fù)責(zé)獲取演進(jìn)和退化兩個(gè)過(guò)程信息.網(wǎng)絡(luò)模型采用先放大再修復(fù)流程,將低分辨率圖像先放大到目標(biāo)尺寸作為網(wǎng)絡(luò)輸入,并經(jīng)過(guò)卷積特征提取模塊1 提取低分辨率圖像特征,然后把提取的特征送給BRNN 進(jìn)行超分辨率特征重建,最后在卷積模塊2 中對(duì)重建的超分辨率特征進(jìn)行特征通道數(shù)調(diào)整,輸出超分辨率圖像.
圖1 SRBRNN 網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 The network structure of SRBRNN
1.1 特征演進(jìn)和退化網(wǎng)絡(luò)特征演進(jìn)和退化網(wǎng)絡(luò)主要功能是對(duì)卷積特征提取模塊1 提取到的低分辨率圖像特征進(jìn)行加工,構(gòu)造像素到語(yǔ)義特征演進(jìn)序列和語(yǔ)義到像素特征退化序列,模擬低分辨率圖像到高分辨率圖像演進(jìn)和高分辨率圖像到低分辨率圖像退化過(guò)程.采用VGG 網(wǎng)絡(luò)作為特征演進(jìn)和退化網(wǎng)絡(luò)的骨干模型.VGG 模型的不同深度卷積層梯度機(jī)制,可以提取不同類型特征,淺層更多是顏色亮度像素特征,深層更多是語(yǔ)義特征.將通道數(shù)逐層加深方向提取到的各層特征定義為像素到語(yǔ)義特征演進(jìn)序列,對(duì)應(yīng)低分辨率圖像到高分辨率圖像演進(jìn)過(guò)程信息;而通道數(shù)逐層遞減方向提取到的各層特征定義為語(yǔ)義到像素特征退化序列,對(duì)應(yīng)高分辨率圖像到低分辨率圖像退化過(guò)程信息.
網(wǎng)絡(luò)結(jié)構(gòu)如圖2 所示,將序列演進(jìn)方向稱為Forward VGG,序列退化方向稱為Backward VGG,圖2 中的k表示卷積核數(shù).每個(gè)卷積層均采用3×3小卷積核,與SRCNN 使用的5×5、9×9 大卷積核相比,多個(gè)小卷積核降低計(jì)算量的同時(shí)具有更強(qiáng)的非線性表達(dá)能力,可以學(xué)習(xí)到像素與語(yǔ)義特征之間更豐富、精準(zhǔn)的映射關(guān)系.
圖2 特征演進(jìn)和退化網(wǎng)絡(luò)Fig.2 Feature evolution and degenerate networks
1.2 雙向循環(huán)超分辨率特征重建網(wǎng)絡(luò)雙向循環(huán)超分辨率重建網(wǎng)絡(luò)的雙向循環(huán)機(jī)制通過(guò)像素到語(yǔ)義特征演進(jìn)序列和語(yǔ)義到像素特征退化序列不同方向的信息交流,并結(jié)合低分辨率圖像到高分辨率圖像演進(jìn)及高分辨率圖像到低分辨率圖像退化兩個(gè)過(guò)程信息,對(duì)低分辨率圖像與高分辨率圖像之間的相關(guān)性信息進(jìn)行全面推理學(xué)習(xí),使網(wǎng)絡(luò)在重建超分辨率特征時(shí)可以兼顧到失真和感知兩個(gè)屬性.
雙向循環(huán)超分辨重建網(wǎng)絡(luò)由輸入序列、兩個(gè)循環(huán)網(wǎng)絡(luò)和輸出序列組成,輸入序列為卷積特征提取模塊1 提取到的低分辨率特征,前向循環(huán)和反向循環(huán)網(wǎng)絡(luò)的網(wǎng)絡(luò)模型分別為Forward VGG 和Backward VGG,輸出序列則是前向循環(huán)網(wǎng)絡(luò)以及反向循環(huán)網(wǎng)絡(luò)的各個(gè)同層輸出特征對(duì)應(yīng)疊加.雙向循環(huán)網(wǎng)絡(luò)推理流程:前向循環(huán)網(wǎng)絡(luò)Hi層的輸入由輸入序列Xi特征和前向循環(huán)網(wǎng)絡(luò)Hi-1層的輸出特征同時(shí)控制,而反向循環(huán)網(wǎng)絡(luò)Hi層的輸入由輸入序列Xi特征和反向循環(huán)網(wǎng)絡(luò)Hi+1層的輸出特征同時(shí)控制,然后前向和反向循環(huán)網(wǎng)絡(luò)的同層輸出特征同時(shí)輸入到輸出模塊G中.前向和反向循環(huán)網(wǎng)絡(luò)的同層輸出特征,一個(gè)來(lái)自演進(jìn)過(guò)程中的特征,另一個(gè)來(lái)自退化過(guò)程中的特征,輸出模塊對(duì)接收到的多種像素與語(yǔ)義特征組合進(jìn)行信息整合后作為超分辨率特征序列輸出.BRNN 結(jié)構(gòu)如圖3 所示,推理流程如式(1)~(4).
圖3 BRNN 網(wǎng)絡(luò)結(jié)構(gòu)Fig.3 The network structure of BRNN
1.3 損失函數(shù)SRBRNN 使用的損失包括MSE和雙向循環(huán)超分辨率特征重建網(wǎng)絡(luò)輸出序列的最后一個(gè)特征映射之間的歐氏距離,損失函數(shù)如式(5)~(7)所示.經(jīng)過(guò)SRBRNN 網(wǎng)絡(luò)的雙向循環(huán)信息交流,輸出的超分辨率圖像包含了豐富的低分辨率圖像與高分辨率圖像演進(jìn)和退化過(guò)程信息,使得Lmse可以兼顧優(yōu)化超分辨率圖像與高分辨率圖像之間失真和感知差異;LG特征損失輔助優(yōu)化感知差異.
式中:r表示圖像通道數(shù)(r=3),表示源高分辨率圖像第 (x,y) 像素點(diǎn)的像素值,表示重建超分辨率圖像第 (x,y)像素點(diǎn)的像素值,W、H和W j、H j表示輸出特征圖的尺寸大小,?j()表示雙向循環(huán)超分辨率特征重建網(wǎng)絡(luò)輸出序列第j個(gè)特征圖的每個(gè)像素值.
實(shí)驗(yàn)在Set5[25]、Set14[26]、BSD100[27]基準(zhǔn)測(cè)試集上進(jìn)行4 倍重建,并用PSNR 和SSIM 指標(biāo)對(duì)算法效果進(jìn)行評(píng)估.為證明算法的有效性,將Bicubic[28]、SRCNN、ESPCN、SRGAN、SRResNet、DBPN、EMSRN[17]算法作為對(duì)比實(shí)驗(yàn).實(shí)驗(yàn)硬件平臺(tái)為64 位Windows 操作系統(tǒng),配合2 塊GTX 2080 TI 顯卡加速,深度學(xué)習(xí)框架為Pytorch1.11 版本.
實(shí)驗(yàn)設(shè)置如下:訓(xùn)練樣本采用RGB 三通道圖像,使用大小為16 的批訓(xùn)練,中心裁剪加載圖像96×96 的子塊作為原始高分辨率圖像,對(duì)原始高分辨率圖像進(jìn)行4 倍雙線性降采樣后再使用雙三次插值進(jìn)行放大到目標(biāo)尺寸作為低分辨率圖像,原始高分辨率圖像與低分辨率圖像構(gòu)成訓(xùn)練樣本對(duì).訓(xùn)練使用LSRBRNN損失函數(shù)和Adam 優(yōu)化器(β1=0.9,β2=0.999,ε=10-8),學(xué)習(xí)速率設(shè)為η=10-4,進(jìn)行10 輪預(yù)訓(xùn)練.
表1 顯示SRBRNN 算法與各個(gè)比較算法在Set5、Set14、BSD100 測(cè)試集經(jīng)過(guò)4 倍重建后的PSNR 和SSIM([0,1])結(jié)果及模型大小對(duì)比,最優(yōu)結(jié)果加粗標(biāo)出.可以看出,與Bicubic、SRCNN、ESPCN、SRGAN、SRResNet、DBPN、EMSRN 算法相比,SRBRNN 算法的PSNR 和SSIM值最優(yōu);模型大小,實(shí)時(shí)性優(yōu)勢(shì)不突出.值得注意的是,EMSRN 算法的PSNR 和SSIM 值雖然優(yōu)于Bicubic、SRCNN、ESPCN、SRGAN、SRResNet、DBPN 算法,但并不能很好地代表感知質(zhì)量,所以增加Mean Opinion Score(MOS)主觀評(píng)價(jià)指標(biāo),補(bǔ)充說(shuō)明算法的重建效果.MOS 是讓一定數(shù)量的觀察者對(duì)重建出來(lái)的圖像進(jìn)行評(píng)分,然后計(jì)算所有觀察者評(píng)分的平均值.MOS 取值范圍[1,5],分值越高表示重建的高分辨率圖像感知效果越好.為了與算法更公平地對(duì)比,對(duì)低分辨率圖像進(jìn)行4 倍重建.如表2 所示,SRBRNN 算法的MOS 值最大,重建效果最優(yōu),EMSRN 算法劣于SRGAN 和DBPN 算法.
表1 不同算法×4 的PSNR 和SSIM 結(jié)果與模型大小對(duì)比Tab.1 Comparison of PSNR and SSIM and model size of different algorithms ×4
表2 不同算法×4 的MOS 對(duì)比Tab.2 MOS comparison of different algorithms ×4
圖4 展示了不同算法在4 倍重建圖像的局部細(xì)節(jié)對(duì)比圖,HR(High Resolution)表示源高分辨率圖像.從圖4 中可以看到SRBRNN 重構(gòu)出來(lái)的蝴蝶翅膀上的紋理更豐富,線條更清晰,具有令人滿意的視覺(jué)感知效果.圖5 是Set14/Set5/BSD100/cocoVal2017/other 的部分圖片測(cè)試效果,包含了不同類別事物,結(jié)果圖中SRBRNN 重建出來(lái)的圖像在失真與感知質(zhì)量上均有較好表現(xiàn).
圖4 不同算法4 倍重建細(xì)節(jié)對(duì)比Fig.4 4× comparison of reconstruction details of different algorithms
圖5 SRBRNN 算法不同測(cè)試集4 倍重建效果Fig.5 4× reconstruction effect of different test sets of SRBRNN algorithm
本文借由變色龍視覺(jué)功能,結(jié)合雙向循環(huán)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),設(shè)計(jì)了雙向循環(huán)變色龍超分辨率重建模型,為超分辨率圖像重建任務(wù)提供了新的思考角度.通過(guò)在基于深度學(xué)習(xí)的超分辨率圖像重建算法使用的基準(zhǔn)測(cè)試集和評(píng)估標(biāo)準(zhǔn)上進(jìn)行實(shí)驗(yàn)評(píng)估與比較,實(shí)驗(yàn)結(jié)果表明,在客觀評(píng)估指標(biāo)和主觀評(píng)估指標(biāo)上,SRBRNN 模型優(yōu)于比其他算法,重建的超分辨率圖像在失真和感知上都有較好表現(xiàn).因使用VGG 作為雙向循環(huán)網(wǎng)絡(luò)的骨干網(wǎng)絡(luò),所以SRBRNN 模型參數(shù)略大,后續(xù)將關(guān)注模型的輕量化,讓模型有更好的實(shí)時(shí)性.