陳亞瑞,丁文強,徐肖陽,胡世凱,閆瀟寧,許能華
(1. 天津科技大學人工智能學院,天津 300457;2. 深圳市安軟科技股份有限公司,深圳 518131)
單幅圖像超分辨率(single image super-resolution,SSIR)重建是根據一張低分辨率(low resolution,LR)圖像恢復出高分辨率(high resolution,HR)圖像的過程.SSIR作為計算機視覺一個非常重要的研究方向,引起了國內外眾多學者的廣泛關注,其研究成果有大量的商業應用.超分辨率重建在醫學成像、衛星成像、人臉識別、視頻監控以及恢復重要歷史圖像資料等諸多領域發揮了非常重要的作用.
在深度學習沒有興起之前,傳統的SSIR通常使用插值法[1-3].插值法具有計算簡單、計算速度快等優點,但有時會導致生成圖像的邊緣和細節模糊.隨著深度學習的不斷發展,深度學習在單幅圖像超分辨率領域的優異表現,促進了單幅圖像超分辨率研究的快速發展,各種神經網絡的變體也應用于單幅圖像超分辨率的研究中,包括卷積神經網絡[4]、對抗神經網絡[5]以及二者的結合等[6].
超分辨率生成對抗網絡(super-resolution generative adversarial networks,SRGAN)[7]是將圖像超分辨率與生成對抗網絡結合,生成視覺效果較好的高分辨率圖像.然而,SRGAN模型的訓練數據由人工構造,根據已知的高分辨率圖像,利用雙三次插值法[3]進行下采樣,得到低分辨率圖像.人工構造的高分辨率-低分辨率(HR-LR)圖像對并沒有考慮復雜情況下的圖像超分辨率問題,例如低光照、模糊、噪聲、運動等復雜情況.這導致了用人工構造的HR-LR圖像對訓練得到的模型在處理人工生成的低分辨率圖像時效果很好,但是處理現實生活中低分辨率圖像的效果往往不盡如人意.SRGAN模型的損失更加關注峰值信噪比(peak signal-to-noise ratio,PSNR),而忽略了結構相似性(structural similarity,SSIM),這使生成的高分辨率圖像雖然有較好的峰值信噪比,但是視覺效果不佳.基于此,本文模型在SRGAN模型的基礎上進行了3個方面的改進:首先,構造一個新的損失函數(光照損失),解決低光照條件下的圖像超分辨率問題;其次,增加結構相似性損失,平衡生成圖像的PSNR和SSIM,使生成圖像的視覺效果更好;最后,構造新的訓練數據集,在傳統低分辨率圖像的基礎上,通過減少圖像的灰度值降低圖像的亮度,得到全新的HR-LR圖像對,此時的LR圖像不僅是低分辨率而且還是低光照條件.
從低分辨率圖像估計其對應高分辨率圖像的挑戰性任務被稱作超分辨率.傳統的圖像超分辨率方法通常使用插值法,例如雙線性插值法[2]、雙三次插值法[3]、Lanczos[7]重采樣等.插值法具有計算簡單、計算速度快等優點,但是生成的圖像往往比較模糊,紋理細節通常比較平滑.在深度學習興起之后,傳統的圖像超分辨率方法逐漸走向了沒落,而基于深度學習的圖像超分辨率方法迅速發展,研究人員提出了很多新的方法.
基于深度學習的圖像超分辨率方法主要包括基于卷積神經網絡[8-12]、基于遞歸神經網絡[13-15]、基于循環神經網絡[16]、基于對抗神經網絡[5,17]、基于反饋機制[18-19]、基于通道注意力機制[20-22]等.還有一些特殊的圖像超分辨率方法,例如針對多尺度超分辨率重建[23]、基于弱監督學習的超分辨率重建[24-25]、基于無監督的超分辨率重建[26-27]、針對盲超分辨率圖像重建[28-30]等.
由于卷積神經網絡在圖像分類、識別等領域有著出色的表現,因此Dong等[8]將卷積神經網絡(convolutional neural network,CNN)應用到超分辨率重建中,提出了超分辨率重建卷積神經網絡(superresolution convolutional neural network,SRCNN).雖然SRCNN模型只有3層神經網絡,但是相較于傳統的圖像超分辨率方法,取得了顯著的效果.
由于CNN的優異表現,越來越多的研究人員開始嘗試用CNN實現圖像的超分辨率重建,并提出了許多新的模型.例如,Dong等[9]改進了SRCNN模型,提出了快速超分辨率重建卷積神經網絡(fast super-resolution convolutional neural network,FSRCNN).Kim等[4]提出了超分辨率重建極深卷積神經網絡(very deep convolutional network for super- resolution,VDSR)模型,相比于SRCNN模型,VDSR模型使用了更深的神經網絡,可以提取更多的特征圖,使重建后的圖像細節更加豐富.Mao等[10]提出了極深殘差編解碼網絡(very deep residual encoderdecoder networks,RED-Net)模型,該模型用到了編碼-解碼結構.考慮到DenseNet模型的優點,Tong 等[11]提出了SRDenseNet網絡.Yu等[12]在2018年提出了WDSR模型,并取得了當年NTIRE競賽的冠軍. 目前,盡管卷積神經網絡在圖像超分辨率重建上很難恢復真實的紋理和細節,生成的圖像比較模糊,但是其在圖像超分辨率領域仍然占據著重要位置,每年都會有許多基于CNN的圖像超分辨率模型被提出.
傳統的圖像超分辨率方法和基于卷積神經網絡的圖像超分辨率方法都是以峰值信噪比作為一項重要的評判指標,導致的結果就是隨著模型的不斷改進,PSNR越來越大,但是生成的圖像在視覺感知上質量較差.這也證實了,即使PSNR數值大,圖像的感官質量也并不一定就好.為了生成符合人類感官質量的圖像,Ledig等[5]提出了SRGAN模型,網絡主體采用對抗生成網絡(generative adversarial net,GAN),損失函數采用感知損失與對抗損失之和.雖然峰值信噪比不是最高,但是SRGAN模型生成的圖像更加自然清晰,更符合人眼的視覺效果.盡管SRGAN模型取得了很好的視覺效果,但是隨著網絡的加深,SRGAN模型生成的圖像也會在細節上出現模糊,在圖像紋理上出現偽影.
基于SRGAN出現的問題,Wang等[17]對SRGAN模型進行了改進,提出了ESRGAN模型. ESRGAN模型對SRGAN模型進行了3個方面的改進.首先,引入沒有批量歸一化的RRDB(residual-inresidual dense block)作為基本的網絡架構單元.其次,使用相對平均GAN(RaGAN)改進判別器網絡,有助于生成器網絡恢復更多的真實紋理細節.最后,提出了一種改進的感知損失,使用激活之前的VGG特征代替SRGAN模型中激活之后的VGG特征,調整之后的感知損失提供了更清晰的圖像邊緣和視覺上更令人滿意的結果.
不論是傳統的圖像超分辨率方法,還是基于深度學習的圖像超分辨率方法,其關注的研究領域大都是從低分辨率圖像恢復出高分辨率圖像,較少研究現實生活中存在的復雜的低分辨率圖像,例如低分辨率圖像同時存在低光照、模糊、噪聲等情況.這就導致了在用模型處理現實中的低分辨率圖像時,生成圖像的效果并不好.
本文的融合光照損失的圖像超分辨率生成對抗網絡(image super-resolution generative adversarial network based on light loss,LSRGAN)模型是在SRGAN模型的基礎上進行創新:
(1)LSRGAN模型能夠實現在低光照條件下的圖像超分辨率重建.
(2)提出新的損失為光照損失.利用RGB顏色空間與YIQ顏色空間的線性關系計算出圖像中的亮度分量,將圖像中的亮度作為損失函數,更好地恢復低光照條件下的低分辨率圖像.
(3)將圖像的結構相似性作為損失函數添加到原有的損失中,這有利于生成更加真實、自然的圖像,提高圖像的感官質量.
(4)構建新的訓練數據集.先將高分辨率圖像進行變黑處理,得到人造的低光照圖像.然后使用雙三次插值法進行下采樣,得到低光照條件下的低分辨率圖像.
LSRGAN模型的網絡結構如圖1所示.

圖1 網絡結構圖 Fig. 1 Structure diagram of network
LSRGAN模型在對抗過程中的目標函數為

其中:G為生成器網絡,θ為生成器網絡的網絡參數;D為判別器網絡,?為判別器網絡的網絡參數;E為期望,IHR為真實高分辨率圖像,ILR為低分辨率圖像;Pdata( IHR)為真實高分辨率圖像的分布,Pdata( ILR)為低分辨率圖像的分布;G ( ILR)為生成器網絡生成的超分辨率圖像,D ( IHR)為當輸入圖像為真實高分辨率圖像時判別真偽,D (G( ILR))為輸入圖像為超分辨率圖像時判別真偽.
LSRGAN模型生成器網絡的全部損失函數為

其中:α、β、γ、δ為模型的超參數,為光照損失,為內容損失,為結構相似性損失,為對抗損失.

其中:ISR為超分辨率圖像;IHR為高分辨率圖像;Y為圖像亮度,Y = 0.299 R + 0.587G +0.144B,R、G、B分別為圖像的RGB三通道值.

相較于基于像素的內容損失,基于式(4)內容損失生成的圖像具有更好的視覺效果.

其中:ISR為生成的超分辨率圖像,IHR為真實的高分辨率圖像;μISR為ISR的平均值,μIHR為IHR的平均值;為 ISR的方差,為 IHR的方差,σISRIHR為ISR和IHR的協方差;C1=( k1l)2,C2= ( k2l)2,C1和 C2為維持穩定的常數,l為像素值的動態范圍,k1= 0.01,k2= 0.03.結構相似性的范圍為0~1,當兩張圖像一模一樣時,SSIM的值等于1.
對抗損失lDSR是基于判別器網絡,判別器網絡用于區分真實的高分辨率圖像和生成的高分辨率圖像,對抗損失可以有效提高生成圖像的視覺效果,其表達 式為

其中:G為生成器網絡,D為判別器網絡,G ( ILR)為生成器網絡生成的超分辨率圖像,D (G( ILR))為輸入圖像為超分辨率圖像時判別真偽.
LSRGAN模型在訓練過程中,根據式(1)中的目標函數,對生成器網絡和判別器網絡進行交替優化,解決對抗最小-最大問題,得到最優的生成器網絡的網絡參數θ和判別器網絡的網絡參數?.
生成器網絡包括特征提取單元、深度殘差單元以及上采樣單元3個主要部分.生成器網絡的結構示意圖如圖2所示,其中特征提取單元包括64個卷積核大小為3×3的卷積層和ReLU層,低分辨率圖像先經過該卷積層進行卷積特征提取,然后通過ReLU函數進行激活.深度殘差單元包括12個殘差塊,用于進一步對特征提取單元提取到的特征圖進行特征學習并提取高頻信息.每個殘差塊內部依次為卷積層、批標準化BN層、ReLU層、卷積層、批標準化BN層和殘差邊.卷積層進行特征圖的特征提取,批標準化BN層對特征圖的特征進行標準化,以減少模型的計算量.用ReLU函數進行激活,給學習到的特征圖增加非線性元素.殘差邊將輸入和輸出進行疊加操作,避免因網絡層數太多而導致梯度消失的問題.上采樣單元由1個反卷積層和ReLU層組成,用于根據提取的高頻信息將低分辨率圖像進行指定倍數的放大〔本文是將低分辨率(LR)圖像的長和寬均放大3倍〕,從而得到超分辨率圖像.

圖2 生成器網絡的結構示意圖 Fig. 2 Structure diagram of generation network
判別器網絡用于區分超分辨率圖像和真實的高分辨率圖像,促進生成器網絡生成效果更好的超分辨率圖像.判別器網絡的結構示意圖如圖3所示.判別器網絡由卷積塊和全連接層組成.其中卷積塊由卷積核大小為3×3的卷積層、LeakyReLU層以及批標準化BN層組成,用于不斷地提取輸入圖像的特征.

圖3 判別器網絡的結構示意圖 Fig. 3 Structure diagram of discrimination network
輸入至判別器網絡的圖像先經過卷積核大小為3×3、通道數為64的卷積層進行特征提取,然后經過LeakyReLU函數進行激活.通過7個組成相同的卷積塊進一步提取圖像特征,隨著特征圖大小的不斷減少,通道數不斷增多,分別為64、128、128、256、256、512、512,將神經網絡學習到的特征存儲到通道中.最后經過全連接層進行分類,Sigmoid層計算出輸入圖像是真實高分辨率圖像的概率.
實驗在NVIDIA GeForce RTX 3090GPU上訓練所有網絡,所有實驗均在低分辨率和高分辨率圖像之間以3倍的尺度因子執行.為了公平比較,所有實驗的PSNR和SSIM度量均使用TensorFlow封裝好的方法計算.優化器為Adam,學習率為0.0002,數據的批量處理大小為16,更新迭代13000次.
訓練數據來自數據集 BSDS200[31]、Genral-100[9]、DIV2K[32]和Flickr2K[33]中隨機采樣的高分辨率圖像,訓練數據集詳細信息見表1.BSDS200數據集是BSDS500數據集的訓練子集,由伯克利大學提供,常用于圖像分割、輪廓檢測和圖像超分辨率重建.General-100數據集有100張圖像,里面包含人物、動物、日常景象等.DIV2K數據集有1000張高分辨率圖像,其中800張用于訓練,100張用于驗證,100張用于測試.Flickr2K數據集有2650張高分辨率圖像,里面包含人物、動物、日常景象等.

表1 訓練數據集詳細信息 Tab. 1 Details of training dataset
測試數據來自Set5[34]、Set14[35]、BSDS100[36]和Urban100[19]數據集,測試數據集詳細信息見表2. Set5數據集有5張圖像,里面含有人物、動物、昆蟲等.Set14數據集有14張圖像,里面含有人物、動物、自然景象等.BSDS100數據集有100張圖像,是BSDS500數據集的測試子集.Urban100數據集有100張圖像,里面包含各種建筑物.

表2 測試數據集詳細信息 Tab. 2 Details of test dataset
對隨機采樣得到的高分辨率圖像進行隨機裁剪,裁剪成224像素×224像素大小的高分辨率圖像;挑選裁剪后的圖像,剔除不符合要求的圖像;最終得到3428張高分辨率圖像.對裁剪、挑選后得到的3428張高分辨率圖像先得到其灰度圖,然后通過減少灰度圖的灰度值減少圖像的亮度,接著使用雙三次插值法進行下采樣,得到低光照低分辨率圖像.這一步可以用公式表示為

式中:ILR為所求的低光照低分辨率圖像;IHR為高分辨率圖像;↓s表示下采樣;s為下采樣的尺度因子;f(?)為用于將高分辨率圖像進行變黑處理的函數,其中 f( IHR) =α? IHR+γ? ones(size( IHR)),α為超參數,γ為黑度參數.
對比Bilinear、SRCNN、SRFBN[19]、SRGAN和LSRGAN這5個模型在黑度參數γ分別為-70、 -130和-160條件下的精度,即對比PSNR和SSIM.
首先在構造的訓練數據集(在數據集BSDS200、Genral-100、DIV2K和Flickr2K中隨機采樣)上進行訓練,然后在4個測試數據集BSDS100、Set14、Set5和Urban100上進行測試.測試時,先對測試數據進行3.2節中的變黑處理和下采樣處理,然后對處理后的測試數據進行測試,實驗結果見表3和圖4.

圖4 定性結果實驗對比 Fig. 4 Qualitative results of experimental comparison

表3 定量結果實驗對比 Tab. 3 Quantitative results of experimental comparison
由表3可知:黑度參數γ的值越小,圖像的亮度就越低,圖像超分辨率重建的難度越大.當黑度參數γ= ? 70時,測試圖像的亮度改變不大,亮度減小的程度對測試圖像的影響較小,此時LSRGAN模型在4個測試數據集上的8個指標中取得了4個最好的結果,SRFBN模型取得了2個最好的結果,SRCNN模型取得了2個最好的結果.當黑度參數γ=? 130時,測試圖像的亮度改變較大,亮度減小的程度對測試圖像的影響較大,此時LSRGAN模型在4個測試數據集上的8個指標中取得了3個最好的結果,SRFBN模型取得了2個最好的結果,SRGAN模型取得了2個最好的結果,SRCNN模型取得了1個最好的結果.當黑度參數γ=? 160時,測試圖像的亮度改變很大,亮度減小的程度對測試圖像的影響很大,此時僅憑肉眼很難分辨出測試圖像的內容.在這種情況下,LSRGAN模型展現出了絕對的優勢,在4個測試集上的8個指標全部取得了最好的定量結果.綜上所述,LSRGAN模型在整體上表現最好,且隨著圖像亮度的降低,LSRGAN模型的生成效果越來越好;當圖像的亮度很低且影響到圖像內容的觀測時,光照損失發揮了很重要的作用,此時LSRGAN模型具有很好的生成效果.
由圖4可知:隨著黑度參數γ的值逐漸減小,圖像的亮度逐漸降低,圖像超分辨率重建的難度逐漸增大,模型的生成能力逐漸減弱.此時,LSRGAN模型的折線斜率變化最小,這表明LSRGAN模型的生成能力受圖像亮度降低的影響最?。虼丝梢缘贸鼋Y論,當圖像逐漸變暗時,LSRGAN模型受圖像亮度降低的影響最小,LSRGAN模型依然具有很好的模型生成能力,可以生成視覺效果較好的圖像.
3.4.1 公共測試集
為了進一步展示5種模型的生成效果,在公共測試集Set14中隨機選擇1張圖片,在黑度參數γ分別為-70、-130和-160時進行生成測試,生成結果如圖5所示.

圖5 公共測試集Set14的模型生成圖像效果展示 Fig. 5 Model generation image effect display of public test Set14
在公共測試集Urban100中隨機選擇1張圖片,在黑度參數γ分別為-70、-130和-160時進行生成測試,生成結果如圖6所示.

圖6 公共測試集Urban100的模型生成圖像效果展示 Fig. 6 Model generation image effect display of public test Urban100
根據圖5和圖6可知:隨著黑度參數γ的值越來 越小,低分辨率圖像的亮度越來越低;當γ=? 1 60時,圖像幾乎全黑,此時圖像中包含的有用信息很少,將其恢復成高分辨率圖像是十分困難的.
從生成圖像的效果可以看出,LSRGAN模型可以實現在低光照條件下的圖像超分辨率重建,并且生成的圖像具有較好的視覺效果.
3.4.2 真實圖像
在模型的訓練和測試時,訓練數據和測試數據的低光照條件都是人為構造的,如此得到的低光照圖像是線性的,整個圖像的亮度一起降低.為了進一步驗證模型的生成能力,收集了現實生活中的低光照圖像進行測試.將現實生活中的低光照圖像進行3倍下采樣處理,這里不需要進行變黑處理;然后將處理后的圖像輸入模型進行測試,生成結果如圖7所示.

圖7 現實生活中的低光照圖像的模型生成圖像效果展示 Fig. 7 Model generation image effect display of low light image in real life
由圖7可知:現實生活中的低光照圖像情況比較復雜,可能存在局部亮度低的問題,并且導致圖像質量不高的原因是多方面的.在這種情況下,LSRGAN模型仍然具有較好的圖像超分辨率和恢復光照的能力,可以處理現實生活中的低光照圖像.
本文提出了一種融合光照損失的圖像超分辨率生成對抗網絡LSRGAN模型,并在實驗中展示了模型定性指標PSNR和SSIM的值及模型生成圖像的效果.與經典SRGAN模型的對比實驗顯示,該模型不僅能夠實現一般情況下的圖像超分辨率重建,而且可以實現在低光照條件下的圖像超分辨率重建,并取得了較好的實驗效果.理論分析及實驗結果表明,LSRGAN模型中的光照損失和結構相似性損失可以幫助恢復圖像的光照強度,具有較好的恢復效果,同時使生成的圖像具有較好的視覺效果.