?

基于多輸入多輸出編解碼器網絡的圖像去模糊

2023-12-29 04:25許光宇
齊魯工業大學學報 2023年6期
關鍵詞:尺度損失卷積

許光宇,汪 雨

安徽理工大學 計算機科學與工程學院,安徽 淮南 232001

圖像去模糊旨在將模糊圖像恢復為更清晰的圖像,在人類社會和工業生產中具有廣泛的應用場景。傳統的圖像去模糊方法通過估計模糊核將圖像去模糊問題轉化為求解模型的逆問題,經典的算法如Lucy-Richardson算法[1]、維納濾波算法[2],通過對模糊圖像進行反卷積估計清晰的圖像。Liu等[3]提出了一種基于徑向基函數神經網絡的Lucy-Richadson算法,可以在動態條件下去除星敏感器獲取的星圖像模糊,提升星心提取的成功率和姿態確定精度。針對圖像的旋轉運動模糊,Li等[4]提出了一種新的模糊核估計模型,對于由旋轉運動產生的模糊圖像有著較好的恢復效果。但是圖像的模糊核往往是未知的,因此非盲去模糊方法對于解決實際問題往往存在一定的局限性。Pan等[5]利用線性近似的方式,解決了暗通道先驗當中非凸非線性優化的問題,加強了暗通道的稀疏性,獲得了較好的去模糊性能。為了更準確的估計模糊核,Zhao等[6]使用極值通道先驗作為稀疏互補知識來提取顯著結構,比此前的方法具有更好的魯棒性和性能。Yang等[7]提出新的耦合正則化方式,利用算子分裂和乘法器的交替方向法導出一種數值格式,得到了一種更準確、更高效且魯棒性更高的盲去模糊算法。Zhao等[8]提出了一個深度變分貝葉斯框架,利用恢復的潛在清晰圖像和模糊核的近似后驗信息,獲得了良好的去模糊效果。

深度學習以其強大的特征提取和表達能力在計算機視覺領域取得了巨大成就,如圖像分類、目標檢測等。為了克服傳統圖像去模糊算法的不足,研究者也探索了大量基于深度學習的圖像去模糊算法。Nah等[9]提出了深度多尺度卷積神經網絡,以端到端的方式恢復由于相機抖動、失焦等原因引起的圖像模糊,在動態場景去模糊中取得了優良的性能。Tao等[10]中的多尺度循環網絡(scale-recurrent network deblur,SRN-Deblur),則是利用權重共享使得網絡結構更簡單,參數數量更少,訓練更加容易。Zhang等[11]利用空間金字塔匹配的端到端卷積神經網絡分層模型(deep multi-patch hierarchical network,DMPHN),通過分割圖片進行多階段去模糊,進一步的提升了網絡的處理性能。Gao等[12]提出參數選擇性共享和嵌套跳過連接的方法(parameter selective sharing and nested skip connections,PSS-NSC),使得網絡參數在子網絡中共享,內存需求降低但計算復雜度仍然很高。Zamir等[13]提出了一種用于圖像恢復的多階段架構(multi-stage progressive image restoration network,MPRNet),從輸入的退化圖像當中逐步學習重建信息,在空間細節和高級上下文信息之間取得平衡,實現了強大的去模糊性能提升。

多尺度網絡去模糊的方法被證實是有效的,但仍然存在紋理不夠清晰,圖像細節模糊等問題。本文提出了一種基于多輸入多輸出編解碼器網絡的圖像去模糊方法。首先,設計一個特征提取模塊提取多尺度模糊圖的全局和局部特征信息,為網絡提供更豐富的特征信息,并利用特征融合模塊將多個尺度下的特征信息融合。相比于傳統的多個子網絡堆疊的方式,使得不同尺度下的上下文特征信息與細節特征可以在單個編解碼器網絡當中流動,增強了特征信息的流動性。最后,提出了一個由L1損失、多尺度頻率重建損失與邊緣損失組成的混合損失函數,可以更好的考慮圖像的高頻紋理結構信息,提高復原圖像在細節上的表現。實驗結果表明,本文方法與近年來的去模糊方法[9-14]相比,在客觀評價指標與主觀視覺上均取得了較好的結果,能夠有效解決圖像非均勻盲去模糊中紋理細節不清晰的問題,圖像去模糊后可以保留更多的紋理細節與邊緣輪廓信息,復原出更高質量的圖像。

1 本文方法

1.1 圖像去模糊框架

圖像去模糊框架如圖1所示,網絡整體采用U-net結構。它包括編碼器網絡塊(encode block,EB),解碼器網絡塊(decode block,DB),特征提取模塊(feature extraction module,FEM),特征融合模塊(feature fusion module,FFM)。其中編碼器網絡塊EB1由一個卷積核為3×3步長為1的卷積層與一個殘差組構成,每個殘差組包含8個多尺度殘差塊[9],每個殘差塊包括2個卷積核為3×3步長為1的卷積層與1個ReLu激活函數。殘差塊中使用跳躍連接,能夠讓深層網絡獲取更豐富的信息,解決梯度消失的問題。在EB1的基礎上,通過增加特征注意力模塊(feature attention module,FAM)[14]構建了用于增強或抑制特征信息的編碼器網絡塊EB2和EB3。解碼器網絡塊DB1同樣由一個卷積層與一個殘差組構成,解碼器網絡塊DB2和DB3則是在DB1的基礎上增加了轉置卷積,對特征圖進行上采樣操作。

圖1 提出的網絡結構

解碼階段中圖像輸出的過程可以表示為:

1.2 多尺度特征提取塊

為了從不同尺度的模糊圖像中提取特征信息,設計了一種基于多尺度的特征提取模塊。如圖2所示,此模塊通過兩條支路提取特征信息。主要支路使用一個卷積核為3×3步長為1的卷積層和一個卷積核為1×1步長為1卷積層進行堆棧,為了保證特征提取的效率,僅使用兩層堆棧。另外一條支路,使用卷積核為3×3步長為1的卷積層對輸入的模糊圖像進行細化,在不過多增加計算量的前提下,獲得全局特征與局部特征信息。細化后的特征圖與主要支路的輸出特征進行連接操作,最后使用額外的一個卷積核為1×1步長為1的卷積層進行卷積操作,對特征提取模塊的特征圖進一步的信息融合并調整通道數。

圖2 多尺度特征提取模塊

特征提取過程可描述為:

Fa=Conv1(Conv3(Conv1(Conv3(Bn)))), (2)

Fb=Conv3(Bn), (3)

1.3 特征融合塊

1.4 損失函數

由于均方誤差(mean square error,MSE)損失函數受離群點影響較大,容易導致恢復的圖像過度平滑且邊緣模糊,采用了L1損失,多尺度頻率重建損失(multi-scale frequency reconstruction,MSFR)[14]與邊緣損失的混合損失函數,在保證圖像去模糊的同時,更關注高頻紋理信息。

(1)L1損失

L1損失函數對異常點有更好的魯棒性,受離群點的影響較小,可以保證圖像的結構與邊緣信息,L1的表達式為:

L1=‖X-Y‖1, (13)

其中,X代表重建圖像;Y代表真實圖像。

(2)多尺度頻率重建損失

由于去模糊的目的是恢復丟失的高頻分量,因此必須減小頻率空間中的差值。MSRF損失函數可以用于評估多尺度重建圖像與真實圖像在頻域上的差異,減小頻域空間中的差值。MSFR損失函數可以表示為:

其中,K為層數;tk是總元素數將損失除以總元素數進行歸一化;F為將圖像信號傳輸到頻域的快速傅里葉變換(fast fourier transform,FFT),運算效率高使用方便。

(3)邊緣損失

邊緣損失(Edge loss,ED)函數可以更好的考慮圖像的高頻紋理結構信息,提高復原圖像的輪廓清晰度。

其中Δ為拉普拉斯算子;γ為常數值10-3。

最終的損失函數為:L=L1+α1LMSFR+α2LED,α1和α2分別取值為0.01和0.05。

2 實驗結果與分析

為了充分驗證所提出網絡模型的有效性,首先介紹了實驗所采用的數據集和實驗設置,然后采用定量和定性分析法評估本文方法的性能,最后通過消融實驗驗證了所提各個部分的有效性。為公平比較,本文方法與其他基于深度學習的去模糊算法進行對比,包括DeepDeblur[9]、SRN-Deblur[10]、DMPHN[11]和MIMO-Unet[14]。

2.1 實驗數據集

選取GoPro[9]和HIDE[15]兩個數據集進行實驗,GoPro數據集是由GoPro相機拍攝的高速視頻序列,單幅模糊圖像由連續的多幀清晰圖像取平均的方法獲得,連續多幀圖像的中間幀作為模糊圖像對應的清晰圖像,GoPro數據集中共有3 214對720×1 280分辨率的清晰圖像與模糊圖像,其中2 103對圖像進行訓練,1 111對圖像進行測試。HIDE數據集內包括了多個場景下的運動模糊圖像,共包括8 422對720×1 280分辨率的清晰圖像和模糊圖像,測試集內包含了2 025對模糊圖像與清晰圖像,用于評估網絡的泛化性能。

2.2 實驗設置

本文算法基于PyTorch框架實現,在NVIDIA GeForce RTX 3060 GPU上進行訓練與測試。訓練過程中批大小設置為4,輸入圖像大小為256×256,采用Adam優化器進行優化,學習率設置為10-4,每500輪降低0.5,共訓練3 000輪,每個圖像水平翻轉概率為0.5以增強數據。在GoPro數據集上對提出的網絡進行訓練,在GoPro數據集和HIDE數據集上對訓練好的模型進行測試。

2.3 定量與定性對比實驗

2.3.1 定量對比實驗

為了綜合評估復原圖像的效果,選取了峰值信噪比 (peak signal-to-noise ratio,PSNR)[16]與結構相似性 (structural similarity,SSIM)[17]作為復原圖像定量分析的評價指標。PSNR值越大表示恢復結果在整體上越接近原圖像;SSIM值越大,圖像結構信息損失越小,具有更好的視覺效果。實驗結果如表1所示,表中列出了各算法評價指標的平均值,SRN-Deblur在DeepDeblur的基礎上采用跳躍連接與網絡權重共享,獲得了較好的評價結果。DMPHN通過分割圖片進行多階段去模糊,較前兩種方法在評價指標上有了明顯的上升。MIMO-Unet引入了多輸入多輸出的方式提升特征信息利用率,取得了次優結果。所提出的算法在兩個數據集中均取得了最高的平均PSNR值與平均SSIM值。較MIMO-Unet本文方法在GoPro和HIDE數據集上分別提升了0.21 dB、0.010和0.13 dB、0.015。

2.3.2 定性對比實驗

為了給出關于恢復性能的直觀結果,從GoPro和HIDE數據集中分別隨機選取3張不同場景的模糊圖進行定性評估,本文方法和其他對比方法的去模糊結果如圖4和圖5所示。SRN-Deblur[10]對于文字模糊修復效果尚可,但對于人像模糊的恢復效果較差,仍有大部分模糊未去除,如圖4(c)第1幅圖中的車牌文字和后視鏡倒影,以及第2幅圖中的人臉和門牌號。DMPHN去模糊效果相較于SRN-Deblur有所進步,在大部分區域有較好的去模糊性能,但圖像的紋理細節信息恢復不足。如圖4(c)第1幅圖中車輛后視鏡倒影和第2幅圖中女孩面部都存在細節不夠清晰的情況。MIMO-Unet在去模糊效果上比上述兩種方法有了明顯提高,擁有很好的主觀視覺效果,但邊緣細節等顯著信息并不突出。

在圖5的定性比較結果中,通過觀察第1幅和第3幅圖像中的人物與文字區域可發現,SRN-Deblur的恢復結果(圖5(c))圖像紋理細節不清晰,去模糊能力有限,不論是人物的輪廓區域還是文字的細節部分,都存在細節缺陷。DMPHN去模糊效果較好(圖5(d)),但是在細節紋理方面仍然無法實現良好的效果,如第1幅圖中的“太平”二字仍有大片偽影未能去除。MIMO-Unet可以復原文字保留人物輪廓,但仍然無法較好地解決復原圖像出現偽影問題,如圖5(e)第1幅圖中的人物與字體周圍的偽影,以及第3幅圖中的人物容貌細節。通過直觀對比可以看出,本文方法所產生的復原圖像中,圖像的文字紋理細節更加清晰,人物輪廓明顯且未出現偽影,主觀效果最接近真實圖像。

注:(a)模糊圖像;(b)清晰圖像;(c) SRN-Deblur;(d) DMPHN;(e) MIMO-Unet ;(f)本文算法。

注:(a)模糊圖像; (b)清晰圖像;(c) SRN-Deblur;(d) DMPHN;(e) MIMO-Unet ;(f)本文算法。

實驗結果表明,所提的方法能夠較徹底的去除圖像非均勻模糊,同時保留更多的紋理邊緣等細節信息,恢復的圖像更清晰,擁有更佳的人眼視覺觀感。本文方法的恢復結果在主客觀評價方面均優于相對比的方法,是一種有效的圖像去模糊方法。

2.4 消融實驗

2.4.1 不同損失函數組合結果

在GoPro數據集上,對不同的損失函數進行消融實驗,表2為不同損失函數的組合實驗結果。從表2可知,在僅使用L2損失函數的情況下,平均PSNR和平均SSIM的值最小,去模糊的效果最差。單獨使用L1損失函數與單獨使用邊緣損失函數,均比L2損失函數效果更好,但仍然無法獲得最佳的結果。其中在單獨L1損失函數獲得了次優的結果,平均PSNR值與平均SSIM值分別達到了31.65 dB與0.945。本文使用的由L1損失,多尺度頻率重建損失與邊緣損失組成的混合損失函數,獲得了最好的平均PSNR值與平均SSIM值,相較于L2損失函數平均PSNR值和平均SSIM值分別提升了1.07 dB和0.037,比次優的L1損失函數平均PSNR和平均SSIM也分別提升了0.29 dB和0.016,因此本文選用混合損失函數。

2.4.2 不同網絡模塊對比

為了驗證所提模塊的有效性,在GoPro數據集上進行了不同模塊的組合實驗。首先,評估了不同特征融合方法的有效性,將所提出的特征融合模塊FFM與傳統的特征圖逐元素相加及通道拼接的融合方式相對比。結果如表3所示,使用FFM比按元素相加的融合方式,平均PSNR提高了0.46 dB,平均SSIM提高了0.026,比特征圖拼接的方式平均PSNR提高0.40 dB,平均SSIM提高0.023。為了驗證特征提取塊FEM的有效性,使用一層3×3卷積代替FEM,由表3中可知使用FEM時比單獨使用卷積操作效果更好,平均PSNR提高了0.19 dB,平均SSIM提高了0.020。

表3 不同模塊組合的消融實驗

3 結束語

本文提出了一種基于多輸入多輸出編解碼器網絡的圖像去模糊方法,不同于傳統的多尺度網絡簡單堆疊子網絡的方式,該網絡利用單一編解碼網絡結構模擬傳統多尺度網絡的多個子網絡級聯結構,將多尺度模糊圖像輸入編解碼器當中,按照“從粗到精”的策略逐步恢復清晰圖像。通過特征提取模塊提取不同尺度模糊圖像的全局和局部特征信息,網絡能夠獲取更豐富、更全面的特征信息;其次,使用特征融合模塊進行特征融合,增強了網絡內部特征的流動能力;最后,在損失函數中引入L1損失、多尺度頻率重建損失和邊緣損失以提升圖像復原效果,同時盡可能多地保留紋理結構和邊緣信息。與其他方法相比,本文方法在客觀評價與主觀效果上均取得了良好的去模糊效果,是一種有效的圖像去模糊方法。然而,本文方法對于人像的恢復效果不是特別,理想紋理細節過于豐富丟失真實性,未來的工作將集中在這個問題上,繼續優化網絡模型,提升人像的恢復效果。

猜你喜歡
尺度損失卷積
基于3D-Winograd的快速卷積算法設計及FPGA實現
胖胖損失了多少元
財產的五大尺度和五重應對
從濾波器理解卷積
玉米抽穗前倒伏怎么辦?怎么減少損失?
基于傅里葉域卷積表示的目標跟蹤算法
宇宙的尺度
一般自由碰撞的最大動能損失
損失
9
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合