陳賽健,朱遠(yuǎn)平
(天津師范大學(xué)計(jì)算機(jī)與信息工程學(xué)院,天津300387)
(*通信作者電子郵箱zhuyuanping@tjnu.edu.cn)
圖像的超分辨率和去模糊通常被分開(kāi)處理,但本文提出了一種聯(lián)合的超分辨率與去模糊方法以處理低分辨率的模糊圖像。這類(lèi)圖像通常是由于相機(jī)遠(yuǎn)離目標(biāo)對(duì)象,并且相機(jī)和目標(biāo)對(duì)象之間存在相對(duì)運(yùn)動(dòng)而產(chǎn)生的。從模糊的低分辨率(Low-Resolution,LR)圖像中重建出清晰的高分辨率(High-Resolution,HR)圖像,不僅提高了圖像的視覺(jué)效果,還有利于其他的視覺(jué)任務(wù),如目標(biāo)檢測(cè)[1]和識(shí)別[2]。
順序地使用現(xiàn)有的超分辨率[3]和去模糊方法[4]來(lái)處理這個(gè)聯(lián)合問(wèn)題是一種自然的思路,但這種策略面臨諸多問(wèn)題:一方面,兩個(gè)模型之間的簡(jiǎn)單連接使得第二個(gè)模型放大了第一個(gè)模型的估計(jì)誤差,重建的HR 圖像存在嚴(yán)重的偽影;另一方面,這種組合方式不能充分利用兩個(gè)任務(wù)之間的相關(guān)性,而且需要分別訓(xùn)練模型,這造成大量的時(shí)間消耗。
針對(duì)上述問(wèn)題,本文提出了一個(gè)高效的端到端的生成式對(duì)抗網(wǎng)絡(luò)(Generative Adversarial Network,GAN)來(lái)處理這個(gè)復(fù)雜的聯(lián)合問(wèn)題。生成器由兩個(gè)模塊組成,首先上采樣模塊對(duì)輸入的低分辨率模糊圖像進(jìn)行4 倍上采樣,輸出超分辨率(Super-Resolution,SR)圖像;然后通過(guò)去模糊模塊重建去模糊的SR圖像。由于輸入圖像的低分辨率和嚴(yán)重的模糊退化,上采樣模塊生成的SR 圖像通常是模糊的并伴有令人不悅的偽影,利用這種雙模塊結(jié)構(gòu)有利于最終重建出清晰的SR文本圖像。在鑒別器中使用全局平均池化層(Global Average Pooling,GAP)來(lái)減少模型參數(shù)。此外,引入了一個(gè)聯(lián)合的損失函數(shù),其由超分辨率與去模糊的集成像素?fù)p失、基于文本圖像先驗(yàn)的特征匹配損失以及對(duì)抗損失組成,它們分別在像素、語(yǔ)義層和高頻細(xì)節(jié)方面迫使重建圖像與真實(shí)的HR 圖像相似。本文所提模型不含批量歸一化層(Batch-Normalization,BN),并且大多操作在LR 空間執(zhí)行,因此大大降低了計(jì)算成本。實(shí)驗(yàn)結(jié)果表明本文方法能夠處理更真實(shí)的退化圖像,獲得比現(xiàn)有算法更好的重建效果。
傳統(tǒng)的圖像超分辨率算法主要采用稀疏編碼[5]、自相似性[6]等。 近 年 來(lái),卷 積 神 經(jīng) 網(wǎng) 絡(luò)(Convolutional Neural Network,CNN)在圖像超分辨率方面得到了廣泛的應(yīng)用[7-9],并取得了比以往方法更好的效果,然而,這些峰值信噪比(Peak Signal-to-Noise Ratio,PSNR)導(dǎo)向的方法不能很好地反映圖像的視覺(jué)質(zhì)量,因此,感知驅(qū)動(dòng)的方法[3,10]被提出。它們可以重建更逼真的圖像,但是大多數(shù)的SR算法都是針對(duì)簡(jiǎn)單的雙三次退化而設(shè)計(jì)的,當(dāng)輸入的LR圖像具有復(fù)雜的模糊退化時(shí)不能表現(xiàn)良好。
現(xiàn)有的盲圖像去模糊算法大多都涉及到模糊核的估計(jì)步驟[11-12],然而,不精確的核估計(jì)會(huì)導(dǎo)致去模糊圖像具有嚴(yán)重的振鈴偽影。最近基于CNN 的方法[4,13]省略了核估計(jì),能有效地處理圖像模糊問(wèn)題,但是對(duì)于低分辨率的模糊圖像,這些方法無(wú)法放大空間分辨率,并重建出清晰的圖像細(xì)節(jié)。
聯(lián)合的超分辨率與去模糊問(wèn)題引起較少的關(guān)注,但在現(xiàn)實(shí)世界中經(jīng)常能遇到模糊的LR 圖像。一些方法[14-15]利用光流估計(jì)來(lái)重建清晰的HR 圖像,但不適用于單幅圖像輸入。Xu 等[16]提出SCGAN(Single-Class GAN)模型能有效地超分辨率模糊的文本圖像,但與之不同的是本文使用深層的雙模塊網(wǎng)絡(luò)去重建更清晰的高分辨率文本圖像,同時(shí)所提方法的計(jì)算效率更高,魯棒性更強(qiáng)。Zhang 等[17]為處理這個(gè)聯(lián)合問(wèn)題提出了一個(gè)深度編碼-解碼網(wǎng)絡(luò),但該網(wǎng)絡(luò)只聚焦于簡(jiǎn)單的均勻高斯模糊退化的LR 圖像。Pan 等[18]提出的基于物理的生成對(duì)抗模型能處理圖像去模糊、圖像超分辨率等圖像復(fù)原問(wèn)題,但與本文不同的是該模型不能聯(lián)合處理圖像的超分辨率與去模糊問(wèn)題,只能單獨(dú)分開(kāi)實(shí)現(xiàn)。Zhang 等[19]提出了一個(gè)門(mén)控融合網(wǎng)絡(luò)(Gated Fusion Network,GFN)來(lái)超分辨率模糊的LR圖像,但是該模型是為具有運(yùn)動(dòng)模糊的自然場(chǎng)景圖像設(shè)計(jì)的,對(duì)于極低分辨率的模糊文本圖像表現(xiàn)糟糕。
本文提出的模型受到條件對(duì)抗網(wǎng)絡(luò)[20]的啟發(fā),如圖1 所示,生成器網(wǎng)絡(luò)由上采樣模塊和去模糊模塊兩部分組成。在上采樣模塊中輸入低分辨率模糊文本圖像,生成超分辨率圖像,然而由于輸入圖像缺乏良好的細(xì)節(jié),加上平均絕對(duì)誤差(Mean Absolute Error,MAE)損失函數(shù)(式(1))的影響,生成的SR 圖像通常過(guò)于平滑且伴有令人不快的偽影,因此,添加了一個(gè)去模糊模塊使生成的圖像更加清晰,這也提高了鑒別器網(wǎng)絡(luò)區(qū)分真實(shí)圖像和生成圖像的能力。此外,在鑒別器中采用全局平均池化層[21]代替?zhèn)鹘y(tǒng)的全連接層,降低了網(wǎng)絡(luò)參數(shù)量和過(guò)擬合的發(fā)生。
圖1 本文提出的聯(lián)合超分辨率與去模糊的網(wǎng)絡(luò)結(jié)構(gòu)Fig. 1 Proposed joint super-resolution anddeblurring network structure
2.1.1 生成器網(wǎng)絡(luò)
如圖2和表1所示,生成器網(wǎng)絡(luò)由上采樣模塊與去模糊模塊組成,網(wǎng)絡(luò)采用了一種殘差學(xué)習(xí)結(jié)構(gòu),并如Lim 等[9]所建議,移除殘差塊(如圖3)中的批量歸一化層,以保持特征的范圍靈活性。但不同于文獻(xiàn)[9]的是本文的網(wǎng)絡(luò)中有兩個(gè)反卷積層,每層反卷積將低分辨率圖像上采樣2倍。
表1 生成器網(wǎng)絡(luò)參數(shù)設(shè)置Tab. 1 Generator network parameter settings
注:“×3”表示3個(gè)殘差塊或卷積層,“×2”代表2個(gè)反卷積層。
圖2 生成器網(wǎng)絡(luò)結(jié)構(gòu)Fig. 2 Generator network structure
圖3 殘差塊Fig. 3 Residual block
此外,生成器網(wǎng)絡(luò)還包含一個(gè)去模糊模塊,其網(wǎng)絡(luò)結(jié)構(gòu)類(lèi)似上采樣模塊,但去模糊模塊中沒(méi)有反卷積層以保持圖像的空間分辨率不變。類(lèi)似于Nah 等[22]的方法,在每一層之后使用整流線性單元(Rectified Linear Unit,ReLU)激活。但每個(gè)模塊的最后一層除外,其后使用雙曲正切函數(shù)激活。
2.1.2 鑒別器網(wǎng)絡(luò)
鑒別器網(wǎng)絡(luò)如圖4 和表2 所示,該網(wǎng)絡(luò)的輸入是圖像,輸出是輸入圖像為真實(shí)圖像的概率。類(lèi)似于VGG 網(wǎng)絡(luò),在使用步長(zhǎng)卷積(strided convolution)對(duì)圖像進(jìn)行降采樣的同時(shí)特征數(shù) 量 翻 倍。正 如Ledig 等[10]所 為,使 用 斜 率 為0.2 的LeakyReLU 作為激活函數(shù),但最后一層使用sigmoid 函數(shù)。此外,一個(gè)全局平均池化層被用來(lái)代替第一個(gè)全連接層。
圖4 鑒別器網(wǎng)絡(luò)結(jié)構(gòu)Fig. 4 Discriminator network structure
表2 鑒別器參數(shù)設(shè)置Tab. 2 Discriminator parameter settings
2.2.1 集成像素?fù)p失
基于學(xué)習(xí)的圖像超分辨率或去模糊方法通常以重建圖像與真實(shí)圖像之間的平均絕對(duì)誤差(Mean Absolute Error,MAE)損失作為目標(biāo)函數(shù)[7,9]。不同于大部分的方法[3,16]約束生成器網(wǎng)絡(luò)的最后層輸出,本文對(duì)上采樣模塊和去模糊模塊分別使用了MAE 損失,這迫使上采樣模塊輸出清晰的SR 圖像來(lái)幫助去模糊模塊更好地重建HR 圖像。集成像素?fù)p失LX包含超分辨率像素?fù)p失和去模糊像素?fù)p失,其計(jì)算公式如式(1)所示:
2.2.2 特征匹配損失
在深度CNN 模型中,僅使用像素?fù)p失可以獲得一個(gè)特別高的PSNR 值。然而由于缺乏高頻內(nèi)容,生成的圖像往往存在令人不滿(mǎn)的偽影和過(guò)于平滑的紋理。為了獲得更逼真的圖像,將特征匹配損失引入目標(biāo)函數(shù)中。此損失比較的是生成圖像與對(duì)應(yīng)的真實(shí)圖像的CNN 特征圖之間的差異。不同于常 見(jiàn) 的 感 知 損 失[10,23]利 用 在ImageNet 數(shù) 據(jù) 集 上 預(yù) 訓(xùn) 練 的VGG19(Visual Geometry Group 19)網(wǎng)絡(luò),本文采用的是在文本圖像數(shù)據(jù)集上訓(xùn)練的CNN15 全卷積網(wǎng)絡(luò)[24],這有助于學(xué)習(xí)到特定的文本圖像先驗(yàn)。特征匹配損失被定義為式(2):
其中:Φ是在上文描述的CNN15網(wǎng)絡(luò)中獲得的特征圖,W和H分別代表特征圖的寬度和高度。此外,正如Wang 等[3]所建議,使用激活前的特征,在本文中使用CNN15網(wǎng)絡(luò)的第7層卷積,這個(gè)特征匹配損失迫使真實(shí)圖像和生成的高分辨率圖像具有相似的特征表示。
2.2.3 對(duì)抗損失
除了上述損失函數(shù)外,還使用了對(duì)抗損失,這激勵(lì)生成器網(wǎng)絡(luò)生成更清晰的高頻細(xì)節(jié)來(lái)欺騙鑒別器網(wǎng)絡(luò)。其被定義為式(3):
其中:Dθ(Gω())表示生成圖像Gω()是高分辨率圖像的概率。在實(shí)踐中,通過(guò)最小化-ln(Dθ(Gω(ILR)))而不是ln(1-Dθ(Gω(ILR)))來(lái)促進(jìn)梯度計(jì)算。
2.2.4 目標(biāo)函數(shù)
綜上所述,本文的目標(biāo)函數(shù)是集成的像素?fù)p失、特征匹配損失和對(duì)抗損失的組合。其可表示為式(4):
其中:α和λ是兩個(gè)權(quán)重參數(shù),ω1 和ω2 是上采樣模塊G1與去模糊模塊G2的網(wǎng)絡(luò)參數(shù)。在實(shí)踐中,生成器G 和鑒別器D 通過(guò)式(5)、(6)進(jìn)行優(yōu)化。
本文采用來(lái)自Hradi? 等[24]的文本圖像數(shù)據(jù)集,數(shù)據(jù)集包含超過(guò)6萬(wàn)張模糊的和清晰的HR 圖像對(duì),模糊的文本圖像具有失焦模糊和運(yùn)動(dòng)模糊。為了生成更多的訓(xùn)練數(shù)據(jù),將HR圖像對(duì)隨機(jī)裁剪成64×64 的子圖像以獲得模糊的HR 子圖像Hblur和清晰的HR 子圖像Hsharp,接著對(duì)Hblur使用Bicubic 下采樣4 倍以獲得模糊的LR 子圖像Lblur。最終,總共70 萬(wàn)張圖像對(duì)(Lblur,Hsharp)用作訓(xùn)練集。測(cè)試集由100 張失焦模糊和運(yùn)動(dòng)模糊的文本圖像組成,使用相同的方式下采樣測(cè)試集。真實(shí)場(chǎng)景下的文本圖像包含40 張各類(lèi)場(chǎng)景下的退化圖像,利用真實(shí)世界中的文本圖像以評(píng)估本文所提方法的魯棒性。為了降低光照的影響,對(duì)真實(shí)世界中的圖像使用了對(duì)比度變換和伽瑪校正來(lái)進(jìn)行預(yù)處理。
本文將所有輸入和真實(shí)圖像的范圍歸一化到[-1,1]來(lái)執(zhí)行預(yù)處理。式(5)中的權(quán)重參數(shù)α和λ根據(jù)經(jīng)驗(yàn)分別被設(shè)置為0.001 和0.01。采用ADAM 優(yōu)化器[25]來(lái)訓(xùn)練模型,minibatch 大小設(shè)置為128。學(xué)習(xí)率初始化為2×10-4,并在每1×105個(gè)mini-batch 更新時(shí)減半,使用He 等方法[26]初始化每層過(guò)濾器的權(quán)重。訓(xùn)練時(shí)交替更新生成器和鑒別器網(wǎng)絡(luò),即更新比率設(shè)置為1。所有的模型都在NVIDIA 1080Ti GPU上訓(xùn)練。
本文將提出方法與幾種先進(jìn)的算法進(jìn)行了比較,包括超分辨率方法[10]、超分辨率[3,10]和去模糊算法[4,13]的組合,以及聯(lián)合的圖像去模糊和超分辨率方法[16,19]。
3.3.1 在合成數(shù)據(jù)集和真實(shí)世界圖像上的效果
本文使用上述的文本圖像測(cè)試集,根據(jù)PSNR 和結(jié)構(gòu)相似度(Structural SIMilarity index,SSIM)來(lái)評(píng)估提出的方法。定量結(jié)果如表3 所示,所提方法將PSNR 和SSIM 分別提高了1.52 dB、0.011 5,這表明本文方法能更好地恢復(fù)文本圖像。
表3 不同算法在測(cè)試集上的質(zhì)量評(píng)估結(jié)果Tab. 3 Quality evaluation results of different algorithms on test set
定性結(jié)果如圖5 所示,可觀察到順序組合超分辨率與去模糊方法不能生成清晰的圖像,這種組合方法會(huì)由于誤差累積而加劇偽影。定性結(jié)果與定量結(jié)果相一致,提出的方法表現(xiàn)優(yōu)于現(xiàn)存的聯(lián)合方法。
圖5 不同算法在測(cè)試集上的重建結(jié)果對(duì)比Fig. 5 Reconstruction results comparison of different algorithms on test set
此外,如表4所示,在同一GPU 上提出的方法比現(xiàn)有的聯(lián)合方法需要更少的運(yùn)行時(shí)間。由于圖像恢復(fù)過(guò)程只涉及到生成器網(wǎng)絡(luò),與文獻(xiàn)[19]相比,提出的模型尺寸要小得多(0.9 MB vs 12 MB)。又不同于文獻(xiàn)[16],本文的生成器中不使用批量歸一化層,同時(shí)也不在模型的初始層就實(shí)現(xiàn)上采樣操作,這大大減少了計(jì)算量。正如圖6 所示,提出的方法收斂更快。
表4 OCR精度、模型尺寸和平均運(yùn)行時(shí)間的比較Tab. 4 Comparison of OCR accuracy,model size and average running time
圖6 損失函數(shù)曲線圖Fig. 6 Loss function graph
由于本文的生成器模型是一個(gè)全卷積網(wǎng)絡(luò),因此提出的方法可以恢復(fù)任意大小的文本圖像。從圖7 可以看出,所提方法生成的文本圖像比現(xiàn)有的聯(lián)合方法在真實(shí)世界中的文本圖像上獲得更好的視覺(jué)效果。
圖7 真實(shí)場(chǎng)景下的不同聯(lián)合方法的重建圖像對(duì)比Fig. 7 Comparison of reconstructed images of different joint methods in real scenes
3.3.2 字符識(shí)別的效果
提高OCR(Optical Character Recognition)的精度是本文提出方法的主要目的之一。此外,由于PSNR 不能很好地評(píng)價(jià)基于GAN 方法生成的圖像,因此可以利用文本圖像的字符識(shí)別率來(lái)評(píng)估重建圖像的質(zhì)量。直接使用ABBYY FineReader 14 基本上無(wú)法識(shí)別上文描述的測(cè)試集中的低分辨率模糊文本圖像。但是,如表4 所示,與其他的聯(lián)合方法相比,所提方法將OCR 精度提高了13.2 個(gè)百分點(diǎn),在測(cè)試集上獲得了81.6%的字符識(shí)別精度。
為了驗(yàn)證去模糊模塊、對(duì)抗訓(xùn)練和集成逐像素?fù)p失中的超分辨率損失對(duì)本文提出方法的有效性,分別進(jìn)行了消融實(shí)驗(yàn)。從表5 可以看出,移除去模糊模塊顯著降低了重建圖像的質(zhì)量。一個(gè)原因是上采樣模塊加劇了由輸入圖像中像素退化引起的偽影。因此,在生成器中添加去模糊模塊可以有效地抑制偽影,生成字符更清晰的文本圖像。當(dāng)不使用對(duì)抗訓(xùn)練去優(yōu)化模型時(shí),從表5 中可以看出PSNR 和SSIM 都有一定的提高,這并不令人驚訝。正如在文獻(xiàn)[10,27]中所觀察到的一樣,這是因?yàn)槟P褪菍?zhuān)門(mén)針對(duì)這兩個(gè)指標(biāo)優(yōu)化的。這樣重建的圖像通常過(guò)于平滑并且缺乏足夠的圖像細(xì)節(jié),因此OCR的精度明顯降低。正如表5 所示,去除集成逐像素?fù)p失中的超分辨率損失(即式(1)的第一部分)后,圖像質(zhì)量有一定程度的下降。此損失迫使上采樣模塊生成的超分辨率圖像接近真實(shí)圖像,這有助于后續(xù)的去模糊模塊重建出更清晰的高分辨率圖像。
表5 所提方法的不同部分的影響Tab. 5 Effect of different parts of the proposed algorithm
本文提出了一個(gè)輕量級(jí)模型來(lái)重建具有復(fù)雜模糊的極低分辨率文本圖像。此模型基于生成式對(duì)抗網(wǎng)絡(luò),其中生成器網(wǎng)絡(luò)包含兩個(gè)模塊,分別進(jìn)行上采樣和去模糊操作。此外,引入了一個(gè)由集成像素?fù)p失、基于文本圖像先驗(yàn)的特征匹配損失以及對(duì)抗損失組成的聯(lián)合訓(xùn)練損失來(lái)指導(dǎo)生成器網(wǎng)絡(luò)恢復(fù)良好的圖像細(xì)節(jié)。實(shí)驗(yàn)結(jié)果表明,所提方法是高效的且能更好地重建真實(shí)世界中的退化圖像,在視覺(jué)質(zhì)量和PSNR、OCR精度等客觀指標(biāo)方面均明顯優(yōu)于現(xiàn)有的算法。
盡管所提方法可以重建清晰的高分辨率圖像,但在重建的文本圖像中有個(gè)別字符不同于真實(shí)圖像。這可能是因?yàn)楸疚牡姆椒ǜ嗑劢瓜袼丶?jí)的文本圖像恢復(fù),而沒(méi)有充分考慮文本圖像的上下文依賴(lài)性。在未來(lái)的工作中,將嘗試引入遞歸神經(jīng)網(wǎng)絡(luò)來(lái)進(jìn)一步提高文本圖像的重建效果。