張嘉暉,沈文忠
運動模糊是圖像質(zhì)量中較為常見的一個問題,一般是由相機抖動和物體運動引起的。在光線較差的條件上,相機會增加曝光時間,同樣會引起較大的圖像降質(zhì)。近年來,隨著圖像處理技術(shù)的迅速發(fā)展,社會各界對這一經(jīng)典問題進行了大量的研究。
圖像產(chǎn)生運動模糊這一過程在數(shù)學(xué)上可以看成清晰的圖像與模糊核卷積,加上噪聲,用數(shù)學(xué)模型表示為:
其中B為模糊圖像,F(xiàn)為復(fù)原后的清晰圖像,K為模糊核,N為隨機噪聲,?為卷積算子。
圖像去模糊研究的重點便在于確定模糊核。去模糊方法便根據(jù)模糊核分為兩類:非盲去模糊和盲去模糊。非盲去模糊是在模糊核已知的條件上進行圖像復(fù)原,其算法訓(xùn)練時所用的圖片添加了相同的模糊核,這種方法對于實際場景中的應(yīng)用效果較差;盲去模糊是在模糊核未知的條件上進行圖像復(fù)原,與實際場景的應(yīng)用較為貼切。目前絕大多數(shù)盲去模糊算法都是根據(jù)圖像的先驗信息估計模糊核。早期,Levin[1]等利用一種超拉普拉斯先驗建模圖像的梯度來估計模糊核。Pan[2]提出了一種基于圖像暗通道先驗的模糊核估計方法,然而泛化能力并不理想。近年來,隨著深度學(xué)習(xí)的快速發(fā)展,其強大的學(xué)習(xí)能力能夠有效地解決圖像修復(fù)存在的一些問題。Su[3]首先利用卷積神經(jīng)網(wǎng)絡(luò)實現(xiàn)端到端的視頻去模糊。Xu[4]通過卷積神經(jīng)網(wǎng)絡(luò)中的非線性映射函數(shù)將圖像的模糊像素映射為清晰的細節(jié)紋理信息,實現(xiàn)圖像去模糊。但是該網(wǎng)絡(luò)的層次較淺,在圖像復(fù)原的過程中會丟失大量的細節(jié)信息,降低復(fù)原的精度。
綜上所述,基于模型的圖像去模糊算法精度仍需提升,模型大小也仍需優(yōu)化,對于細節(jié)信息的學(xué)習(xí)能力仍需提高。因此,本文提出一種基于循環(huán)卷積網(wǎng)絡(luò)的去模糊算法。
網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示,模糊圖像輸入后經(jīng)由兩層卷積層進行特征提取,隨后進入循環(huán)模塊,經(jīng)6次循環(huán)后得到6個共享參數(shù)的卷積層,再經(jīng)由兩層卷積層進行圖像修復(fù)整合,得到6個復(fù)原圖像,并將其加權(quán)平均得到最終輸出的清晰圖像。循環(huán)模塊作為圖像細節(jié)信息復(fù)原的關(guān)鍵所在,借鑒了循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)的結(jié)構(gòu)。本文受Resnet[5]啟發(fā),在輸入層和整合環(huán)節(jié)之間加入了跳躍連接(skip connection),skip connection將圖像特征并行排列,特征大小不變,能夠有效地提高網(wǎng)絡(luò)的非線性映射能力。
圖1 網(wǎng)絡(luò)結(jié)構(gòu)圖
網(wǎng)絡(luò)的特征提取模塊和循環(huán)模塊均由卷積層和Re-LU激活函數(shù)層構(gòu)成。由于圖像修復(fù)問題的特殊性,深度學(xué)習(xí)領(lǐng)域一般不添加池化層,池化層的添加可能會導(dǎo)致本就缺少細節(jié)信息的模糊輸入丟失更多重要的信息。特征提取部分采用兩個3×3的卷積核堆疊,這樣在保證感受野的同時計算量也比較小,且具有較強的非線性映射能力。循環(huán)模塊所采用的3×3卷積核會在每一次循環(huán)中擴大感受野,開始階段感受野比較小,對于細微的紋理信息比較敏感,隨著循環(huán)次數(shù)的增加,感受野逐漸變大,能夠提取到輸入圖像中更加豐富的結(jié)構(gòu)信息。由于沒有池化層的存在,不需要考慮尺寸問題,循環(huán)模塊所輸出的6個逐漸細化的復(fù)原圖像通過skip connection與輸入圖像直接融合做加權(quán)平均,將其作為整合模塊的輸入,經(jīng)由兩層卷積核的整合后,輸出最終復(fù)原后的圖像。
圖像去模糊的目標在于重建清晰的圖像,使網(wǎng)絡(luò)復(fù)原的清晰圖像盡可能地與原圖接近。
本網(wǎng)絡(luò)所選取均方誤差(MSE)作為損失函數(shù),定義如上:
其中,f1(x,y)為清晰圖像在(x,y)處的像素值,f(x,y)為網(wǎng)絡(luò)輸出的復(fù)原圖像在(x,y)處的像素值,M和N代表圖像的寬和高。
GOPRO[6]數(shù)據(jù)集是目前利用深度學(xué)習(xí)進行去模糊算法研究最常用的數(shù)據(jù)集,圖像數(shù)量多。GOPRO數(shù)據(jù)集由Nah建立,使用GOPRO4相機拍攝240幀/秒的視頻,通過平均地合成不同數(shù)量的連續(xù)潛在幀,生成不同強度的模糊圖片,該樣能夠高度還原真實的運動模糊。并且選取用于生成模糊圖像的清晰幀序列中的中心幀作為每一個模糊圖像對應(yīng)的清晰圖像。數(shù)據(jù)集由3214對清晰和模糊的圖像組成,分辨率為1280×720。同時,由于網(wǎng)絡(luò)的輸入要求,本文將GOPRO數(shù)據(jù)集中的圖片裁剪為256×256的圖像塊。
圖像修復(fù)的效果通常選用結(jié)構(gòu)相似性(Structural Similarity,SSIM)和峰值信噪比(Peak Signal to Noise Ratio,PSNR)兩項指標進行評價。
PSNR是使用最為普遍的一種圖像客觀評價指標,通過計算對應(yīng)像素點之間的誤差來評價圖像的質(zhì)量。
SSIM是一種衡量兩幅圖片相似度的指標。它分別從亮度、對比度、結(jié)構(gòu)三方面度量圖像相似性。
在GOPRO數(shù)據(jù)集上,本文與集中較為常見的模糊算法進行比較,表1為不同去模糊算法在GOPRO數(shù)據(jù)集上的質(zhì)量評估結(jié)果。
表1 GOPRO數(shù)據(jù)集不同算法質(zhì)量評估結(jié)果
從表1中可以看出,相較于其他方法,本文的算法在PSNR和SSIM指標上都略有提升。由于網(wǎng)絡(luò)采用循環(huán)模塊,其復(fù)原能力大大提升,從而更多的細節(jié)信息被補全,去模糊效果得到了顯著提升。
針對目前去模糊算法的一些普遍問題,本文提出了一種基于循環(huán)卷積神經(jīng)網(wǎng)絡(luò)的去模糊算法,以端到端的方式實現(xiàn)速度更快、精度更高的模糊圖像復(fù)原。實驗結(jié)果表明,本文提出的算法復(fù)原圖像客觀評價指標較高,細節(jié)信息抓取準確,可以恢復(fù)出較高質(zhì)量的清晰圖像。未來的研究工作將圍繞兩個方面開展:一是對網(wǎng)絡(luò)結(jié)構(gòu)進行優(yōu)化改進,使評價指標得到更大的提升,二是將網(wǎng)絡(luò)壓縮成更加輕型的網(wǎng)絡(luò),從而使得本文提出的深度模型能夠部署在計算資源有限的嵌入式設(shè)備上。