陳富成 陳華華



摘 要:針對運動圖像盲去模糊問題,基于生成對抗網絡,提出利用一種端對端方式恢復模糊圖像算法。運用生成對抗神經網絡方法對運動模糊圖像直接復原,跳過估計模糊核過程,增加感知損失作為損失項,使圖片內容和全局結構接近。此外,增加結構相似性損失函數作為約束項,進一步提升生成圖片與清晰圖片的相似性。實驗結果表明,新算法可有效去除運動圖像模糊。與其它算法相比,所提算法獲得的圖像更加清晰。
關鍵詞:生成對抗網絡;去運動模糊;感知損失;結構相似性損失
DOI:10. 11907/rjdk. 182666 開放科學(資源服務)標識碼(OSID):
中圖分類號:TP317.4 文獻標識碼:A 文章編號:1672-7800(2019)008-0208-04
Image Blind Motion Deblur Algorithm Based on Generative Adversarial Network
CHEN Fu-cheng,CHEN Hua-hua
(School of Communication Engineering, Hangzhou Dianzi University, Hangzhou 310018,China)
Abstract: Non-uniform blind deblurring of motion scenes has been a challenging problem in the field of image processing. Aiming at the blind deblurring problem of moving images, we propose a neural network based on conditional generation confrontation to recover the motion blur algorithm caused by motion in an end-to-end manner. The method of generative adversarial network is used to directly recover the motion blurred image, and the process of estimating the blur kernel is skipped. Increasing the perceptual loss as a loss term makes the content of the picture close to the global structure. In addition, the structural similarity loss function is added as a constraint term to further constrain and enhance the similarity between the generated image and the clear picture. The experimental results verify that the proposed new algorithm can effectively remove the blur of moving images. Compared with other algorithms, the proposed algorithm can obtain clearer images.
Key Words: generative adversarial network; motion deblur; perceptual loss; structural similarity loss
作者簡介:陳富成(1993-),男,杭州電子科技大學通信工程學院碩士研究生,研究方向為圖像處理;陳華華(1976-),杭州電子科技大學通信工程學院副教授,研究方向為圖像處理、計算機視覺、模式識別。本文通訊作者:陳華華。
0 引言
在醫學成像[1-2]、交通安全[3-4]、攝影學[5-6]、目標識別與追蹤[7-8]、天文探測[9-10]等領域,獲得一幅清晰圖像尤為重要。但在圖像成像過程中,拍攝設備與成像物體之間很難保持相對靜止狀態,會造成圖像模糊。運動圖像的模糊過程可看作是清晰圖像和一個二維線性函數卷積運算后,受到加性噪聲污染得到的。該線性函數稱為點擴散函數[11]或卷積核,包含圖像的模糊信息。圖像的盲去模糊指在模糊方式未知(即模糊核未知)的情況下,僅依靠模糊圖像本身信息還原出原始清晰圖像。
針對圖像盲去模糊問題,文獻[12]基于自然圖像梯度服從重尾效應的統計規律,推演出模糊核;文獻[13]根據模糊圖像的突出邊緣與低秩先驗,為模糊核估計提供可靠的邊緣信息,低秩先驗為中間圖像提供數據可靠的先驗。但這些方法對模糊核的估計仍然不準確,尤其是在運動遮擋或不連續情況下,這種不準確的核估計會導致振鈴效應。
傳統方法在解決函數逼近問題時存在不足,導致圖像去模糊效果不理想。大數據時代,深度學習得到了迅猛發展,其在圖像盲去運動模糊中的應用越來越廣泛。文獻[14]提出了一種準確估計模糊核算法:首先訓練一個卷積神經網絡,把模糊圖像恢復成中間圖像,然后結合模糊圖像與中間圖像準確估計單個全局模糊核;文獻[15]提出一種連續去模糊方法,通過似然項和平滑先驗優化卷積神經網絡得到模糊核。以上方法都需要結合傳統的優化方法進行,所以需要精確的核估計步驟;文獻[16]采用條件對抗網絡,以端到端方式直接生成清晰圖像,其在損失函數中加入感知損失以提高生成圖像與輸入圖像在內容和全局結構上的相似性。
理想情況下,該輸出目標應該與輸入樣本相似,但是生成對抗網絡[17]并不會限制生成器輸出,這就造成很多時候生成器的輸出不穩定。本文在文獻[16]的基礎上引入結構相似性作為生成器約束項,以限制生成器輸出。將訓練好的模型在幾個不同的運動模糊場景中測試,結果表明該模型能高效恢復模糊圖像。
1 盲去運動模糊模型
生成對抗網絡模型基本框架如圖1所示,將由運動造成的模糊圖像B輸入到生成器G得到生成圖像G(B),生成圖像G(B)與清晰圖像S一同輸入判別器D中,分別將其映射為一個判別器,以判別為真的概率值。生成對抗網絡是一個互相博弈的過程,生成器依據判別器的判別結果進行優化,而判別器則努力去判別清晰圖像與生成圖像,直到判別器無法區分清晰圖像與生成圖像為止,此時生成器的去模糊效果達到最好。
圖1 生成對抗網絡GAN的基本模型
本文在生成對抗網絡的圖像盲去運動模糊模型中,訓練一個CNN作為生成器G, 判別器由卷積層、全連接層和激活層構成,對抗網絡的目標函數為:
式(1)中,[S~psharp(S)]表示清晰圖像S取自真實清晰圖像集,[B~pblurry(B)]表示模糊圖像,B取自模糊圖像集,E表示期望,D表示判別器對輸入圖像為真的概率。該損失函數存在判別器越好生成器梯度消失越嚴重的問題,故采用WGAN[18]方法,將損失函數改為:
[l=n=1N-DθD(GθD(IB))] (2)
為提高生成圖像、輸入圖像內容與全局結構的相似性,引入感知損失函數[19]。為限制生成器輸出,引入結構相似性函數作為生成器G的約束項。
1.1 總損失函數
總損失函數由對抗損失、感知損失、結構相似性損失組合而成。
[L=lGAN+λ?lX+κ?LSSIM(P)]? (3)
1.2 感知損失函數
理論上生成圖像I與清晰圖像S在內容及全局結構上的相似性應盡可能接近,故以感知損失函數表示生成圖像I與清晰圖像S之間的差異。
[lX=1Wi,jHi,jx=1Wi,jy=1Hi,j(φi,j(S)x,y-φi,j(I)x,y)2]? (4)
式(4)中,[φi,j]是在VGG19[20]網絡下第i層最大池化之前通過第j層卷積層獲得的特征映射,[Wi,j]和[Hi,j]是特征映射的寬度和高度。
1.3 結構相似性(SSIM)損失函數
原始GAN在生成圖像時是沒有約束的,故生成器很容易失去訓練方向,導致訓練不穩定、梯度消失和模式崩潰問題,故引入圖像結構相似性損失函數[21]作為約束項,約束生成器的訓練。結構相似性定義為:
[SSIM(p)=2μxμy+c1μx2+μy2+c1?2σxy+c2σ2x+σ2y+c2]? (5)
式(5)中,[μx]、[μy]是圖像塊像素的平均值,[σx]、[σy]是圖像像素值的標準差,[σxy]是兩個圖像像素的協方差,[c1]、[c2]為常數。
SSIM越大越好,所以把損失函數改寫成:
[LSSIM(P)=1Np∈P1-SSIM(P)] (6)
即求[LSSIM]的最小值。但是這樣無法解決圖像像素的邊界問題,所以重寫損失函數如下:
[LSSIM(P)=1-SSIM(p)] (7)
[p]表示像素塊的中間像素值。
2 網絡模型
2.1 生成器網絡
生成器網絡模型如圖2所示。生成器網絡共由14塊組成,其中每一塊里面包含了卷積層、Instance歸一化層、Relu激活函數層。在每個殘差塊的第一個卷積層后面添加概率為0.5的Dropout正則化。第一塊卷積層為3通道,卷積核大小為7×7,步長為1。第二塊與第三塊的卷積核大小為3×3,步長為2,補零寬度為1。后面接入9個卷積核大小為3×3、步長為2、padding為2的殘差塊。最后是兩個卷積核為3×3、步長為2、padding為1、output_padding為1的反卷積塊。第一層卷積核大小為4×4×3,步長為2,共有128個卷積核生成128張輸出;第二層卷積核大小為3×3×128,卷積步長為2,共有512個卷積核生成512張輸出;第三層卷積核大小為3×3×512,卷積步長為2,共有1 024個卷積核生成1 024張輸出;接著連接一個1 024維輸出的全連接層,再連接一個一維的全連接層和sigmoid函數得到輸出。此外,引入全局跳躍連接使生成器可從模糊圖像學習到殘差校正。
2.2 判別器網絡
判別器是在生成器訓練完畢后對生成器生成的圖像判定為真的概率。當概率大于0.5時,將輸入圖像判為清晰圖像,反之將其判定為生成圖像。判別器網絡前面由4個卷積塊組成,其中每塊包含卷積塊、Instance歸一化層和LeakyReLU激活層。第一層卷積核大小為4×4×3,步長為2,共有128個卷積核生成128張輸出;第二層卷積核大小為3×3×128,卷積步長為2,共有512個卷積核生成512張輸出;第三層卷積核大小為3×3×512,卷積步長為2,共有1 024個卷積核生成1 024張輸出;接著連接一個1 024維輸出的全連接層,再連接一個一維全連接層和sigmoid得到輸出。
2.3 網絡結構
該模型的網絡結構如圖3所示。將模糊圖像B作為生成器輸入,并輸出恢復的模糊圖像G(B)。在生成器訓練期間,恢復圖像G(B)和清晰圖像S作為輸入并估計它們之間的結構相似性差異與特征差異。完整的損失函數有對抗損失、結構相似性損失和感知損失。
圖3 算法模型
3 實驗結果分析
3.1 實驗設計
本實驗在Linux操作系統下基于PyTorch深度學習框架實現。計算機配置參數如下:3.4GHz的i3處理器臺式機,NVIDA GTX1060顯卡,16GB RAM。模型在隨機剪裁的256×256像素的GoPro數據集上訓練。因為該模型是全卷積,又是在剪裁的圖像塊上訓練,故可應用在任意大小的圖像中。將生成器和判別器的學習速率設置為1×10-4效果最好。經過150次迭代后,后150次迭代的學習速率呈線性衰減。本模型參數經過多次實驗調整,將[λ]設置為100,[κ]設置為0.84,[C1]、[C2]分別設置為2.55、 6.75。經過實驗優化,選擇自適應矩估計優化策略。驗證表明,將batch size設置為1時效果最好。
3.2 數據集預處理
GoPro數據集分訓練集和測試集。該數據集內含有車輛、行人等多個運動場景造成的圖像模糊,所以在運動去模糊領域應用較為廣泛。訓練集含有2 103張運動模糊圖片和與之相對應的清晰圖片,測試集內含有1 000張運動模糊圖像和與之對應的清晰圖像。將訓練集尺寸隨機剪裁為256×256,把模糊圖像與對應的清晰圖像相匹配同時作為生成器的輸入。
3.3 實驗結果
該模型在GoPro數據集上訓練迭代60萬次后達到收斂狀態。在不同的運動模糊場景中進行測試,本文模型的輸出結果與文獻[16]模型的輸出結果對比見圖4。
圖4 原模糊圖像與各類算法去模糊結果
結果表明,本文算法模型的去模糊效果比文獻[16]在細節方面有明顯提升,該模型可解決由拍攝設備與物體間相對運動造成的模糊,而不僅僅是人為的模糊。表1列出了幾種算法比較,可以看出,平均PSNR與SSIM表現得更為突出。
表1 GoPro測試集下的平均值
實驗結果表明,本文模型對運動模糊圖像有較好的去模糊效果,但是圖像細節部分依然存在模糊現象。由于圖像運動是一個連續的過程,而圖像的成像是在曝光時間內所有影像的集合。所以,硬件設備越差,成像過程丟失的信息就越多,這對去運動圖像模糊來說是個很大的難題。若要降低圖像成像過程中信息丟失對圖像去模糊的不利影響,可采用高幀數拍攝設備。
4 結語
本文提出的圖像盲去運動模糊算法,針對GAN網絡模型訓練不穩定問題,引入結構相似性損失函數作為約束項進行創新。實驗證明本文方法優于其它算法,提高了圖像去模糊效果。但是本文提出的算法訓練參數過多,增加了訓練復雜度,而且在實際處理運動模糊圖像時仍存在不足,下一步將重點研究如何在去模糊效果不降低的情況下減少訓練參數、降低訓練復雜度。因為真實運動模糊圖像一般都具有多種模糊情況,所以要考慮適當增加卷積核的感受野大小。
參考文獻:
[1] MICHAILOVICH O V, ADAM D. A novel approach to the 2-D blind deconvolution problem in medical ultrasound[J]. IEEE Transactions on Medical Imaging, 2005, 24(1):86-87.
[2] MICHAILOVICH O, TANNENBAUM A. Blind deconvolution of medical ultrasound images: a parametric inverse filtering approach.[J]. IEEE Transactions on Image Processing, 2007, 16(12):3005-3019.
[3] 隋曄,馬鉞. 交通監控系統中運動目標分類和跟蹤研究[J]. 信息與控制, 2003, 32(1):61-64.
[4] 張敏. 視頻監控中運動目標檢測與清晰化方法的研究[D]. 鎮江:江蘇大學,2010.
[5] YOU Y L, KAVEH M. A regularization approach to joint blur identification and image restoration[M]. Piscataway:IEEE Press, 1996.
[6] SROUBEK F,FLUSSER J. Multichannel blind deconvolution of spatially misaligned images[J]. IEEE Transactions on Image Processing,2005,14(7):874-875.
[7] WU Y. Blurred target tracking by blur-driven tracker[C]. IEEE International Conference on Computer Vision. IEEE, 2011:1100-1107.
[8] DAI S, YANG M, WU Y, et al. Tracking motion-blurred targets in video[C].IEEE International Conference on Image Processing, 2006:2389-2392.
[9] SCHULZ T J. Multiframe blind deconvolution of astronomical images[J]. Journal of the Optical Society of America A, 1993, 10(5):1064 - 1073.
[10] HANISCH R J, JACOBY G H. Astronomical data analysis software and systems x[J]. Publications of the Astronomical Society of the Pacific, 2001, 113(784):772-773.
[11] 郎銳. 數字圖像處理學[M]. 北京:希望電子出版社, 2002.
[12] FERGUS R, SINGH B, HERTZMANN A, et al. Removing camera shake from a single photograph [J]. ACM Transactions on Graphics, 2006, 25(3):787-794.
[13] PAN J, LIU R, SU Z, et al. Motion blur kernel estimation via salient edges and low rank prior[C].IEEE International Conference on Multimedia and Expo, 2014:1-6.
[14] CHAKRABARTI A. A neural approach to blind motion deblurring[C]. European Conference on Computer Vision. Springer, Cham, 2016:221-235.
[15] SUN J, CAO W, XU Z, et al. Learning a convolutional neural network for non-uniform motion blur removal[C].IEEE Conference on Computer Vision and Pattern Recognition,2015:769-777.
[16] KUPYN O,BUDZAN V,MYKHAILYCH M,et al. Deblurgan: blind motion deblurring using conditional adversarial networks[EB/OL]. https://cloud.tencent.com/developer/article/1096122
[17] GOODFELLOW I J, POUGET-ABADIE J, MIRZA M, et al. Generative adversarial nets[C]. International Conference on Neural Information Processing Systems,2014:2672-2680.
[18] ARJOVSKY M, CHINTALA S, BOTTOU L. Wasserstein gan[J].? arXiv preprint,2017(3):1701-1711 .
[19] JUSTIN JOHNSON,ALEXANDRE ALAHI,LI F F. Perceptual losses for real-time style transfer and super-resolution[EB/OL]. https://github.com/jcjohnson/fast-neural-style.
[20] KAREN SIMONYAN,ANDREW ZISSERMAN.Very deep convolutional networks for large-scale image recognition[EB/OL]. https://arxiv.org/abs/1409.1556.
[21] ZHAO H,GALLO O,FROSIO I,et al. Loss functions for neural networks for image processing[J]. Computer Science,2015(3):2411-2419.
[22] NAH S, KIM T H, LEE K M. Deep multi-scale convolutional neural network for dynamic scene deblurring[DB/OL]. https://arxiv.ogr/abs/1612.02177.
[23] KIM T H,LEE K M. Segmentation-free dynamic scene deblurring[C]. Columbus:IEEE Conference on Computer Vision and Pattern Recognition, 2014.
(責任編輯:杜能鋼)