楊 燕,梁小珍,張金龍
(蘭州交通大學 電子與信息工程學院,甘肅 蘭州 730070)
視頻監控等智能設備在計算機視覺系統應用中起著重要的作用。由于霧、霾天氣的存在,使得成像設備采集到的圖片降質嚴重,不能很好地監測到目標物體,給視覺系統帶來極大的不便[1-3]。因此,圖像去霧有著很重要的現實意義、研究價值以及實用價值。
目前,圖像去霧方法主要為基于物理模型和基于深度學習的方法。基于物理模型的方法從圖像降質的本質出發,以大氣散射模型為依據,通過估計大氣光和透射率,逆向推導降質公式,從而得到無霧圖像。He等人[4]對大量戶外無霧圖像統計發現:在非天空和高亮區域,其像素點的某一個顏色通道具有非常低的像素值,提出暗通道先驗DCP。Zhu等人[5]通過統計有霧圖像的顏色信息,提出顏色衰減先驗CAP,估計出深度信息,從而得到無霧圖像。Hu等人[6]觀察發現大氣光照不僅在不同圖像中存在差異,在同幅圖片的不同區域也存在差異,提出基于局部—全局聯合光照調整的去霧算法,用局部光照代替全局大氣光。該算法對不同霧濃度和光照條件的霧圖均有良好的適應性。Yang等人[7]提出用一個分段函數來代替最小濾波器操作,有效避免了暗通道方法在邊緣處透射率估計不準確的問題。基于物理模型的去霧方法發展迅速,效果顯著。但存在的問題是:先驗信息具有局限性,不能適用于任意場景;以DCP為例,該先驗信息不適用于高亮區域。同時,手動設計特征的過程較為繁瑣,不具有便利性。
為了改善傳統算法的不足,基于深度學習的去霧方法迅速發展,成為圖像去霧的主流方向。該類方法主要借助卷積神經網絡(Convolutional Neural Network,CNN),通過構建端到端的網絡架構訓練所需特征。Cai等人[8]基于深層CNN搭建Dehaze-Net去霧網絡來訓練透射率,借助大氣散射模型恢復出無霧圖像,取得了不錯的結果,尤其天空區域效果顯著。但該網絡以傳統方法中的先驗或假設構建,具有一定的局限性。Ren等人[9]提出的端到端門控融合去霧網絡GFN通過使用白平衡、對比度增強和伽馬校正等一系列操作實現最終的去霧,但網絡實現過程較繁瑣。Li等 人[10]提 出的AOD網絡,通過變形大氣散 射模型公式,將透射率和大氣光整合為一個統一參數K訓練,改變了以往分別訓練大氣光和透射率的風格,但由于網絡層數較少精度有限,并不總能達到好的去霧效果。Qin等人[11]基于不同的通道特征包含完全不同的加權信息,且不同圖像像素上的霧濃度分布也不同,提出一種通道注意和像素注意機制結合的特征注意網絡FFA-Net。由于該網絡只是考慮了有霧圖像與無霧圖像之間的差值,并未從圖像整體風格出發,盡管對合成圖像效果良好,但在真實場景中存在細節丟失嚴重,去霧不徹底的問題。Wang等人[12]通過對大量有霧圖像的不同顏色通道統計發現:有霧區域主要集中在Ycbcr色彩空間的亮度通道上,提出大氣照明先驗,搭建了AIPNet去霧網絡,在一定程度上提高了圖像質量,但仍存在特征提取不全面,部分復原圖像伴有殘霧。
基于上述傳統方法以及現有網絡存在的不足,本文提出了一種基于CNN的分離特征和協同網絡的端到端去霧架構。首先基于大氣散射模型,本文將傳統的去霧模型變形為乘性干擾與加性干擾的形式,簡化去霧過程,突出特征重要程度;然后用一個四層密集級聯的深層多尺度網絡和一個淺層多尺度網絡來分別提取分離出的乘性特征MF和加性特征AF;最后結合初始輸入信息以及提取到的兩個特征,通過復原模塊得到清晰圖像。各項實驗結果表明,所提網絡復原圖像去霧徹底,顏色保真度高,細節保持良好且無偏色現象。
在圖像去霧領域中,常用大氣散射模型[13-15]描述霧天條件下的成像過程,如式(1)所示:

其中,I(x)和J(x)分別代表有霧圖像和無霧圖像,A表示大氣光,t(x)為透射率,反映了大氣光穿透霧氣的能力。
本文對大氣散射模型做如下變形:


相比較于式(1)所示模型,本文所建立的乘性干擾加加性偏置的形式不僅可以更加簡潔地反映圖像退化過程,而且能夠更加直觀地突出各特征的重要程度,在搭建網絡時更具目標性,從而保證網絡訓練的穩定性。由式(3)可以看出,提取乘性特征MF和加性特征AF是復原圖像的關鍵。因此,本文網絡設計的重點就是獲取所需的圖像特征MF和AF。
與以往大多數依賴大氣散射模型,通過分別訓練大氣光、透射率或者將兩者整合在一起訓練實現去霧的操作不同。本文從大氣散射模型變形公式出發,重點考慮乘性特征和加性特征的提取,設計了一個雙網并行的去霧網絡,網絡整體架構如圖1所示。

圖1 網絡整體架構Fig.1 Overall network architecture
所提網絡主要包括:乘性特征提取模塊MFEM(Multiplicative Feature Extraction Mod‐ule)、加性特征提取模塊AFEM(Additive Fea‐ture Extraction Module)以及復原模塊RM(Res‐toration Module),通過這些模塊的共同作用,從而實現從有霧圖像(Hazy Image)到無霧圖像(Clear Image)的端到端處理。
2.2.1 乘性特征提取模塊MFEM
傳統的網絡結構提取圖像特征時通常是從單路徑結構體系出發的,網絡各階段間沒有通信[16-17],模型如圖2(a)所示。雖然能夠得到所需特征,但隨著網絡深度的增加,特征精度提升有限,并不能達到良好的效果。考慮到各層不同階段之間的信息交互,本文通過將上層各階段網絡引入下層網絡,進而充分利用各層網絡不同深度的空間信息以及圖像細節特征,獲取到更加全面豐富的特征信息。各層之間的信息交互不僅實現了特征重用的目的,提升網絡精度,而且可以有效減小模型部署成本[18-19],如圖2(b)所示。

圖2 模型對比Fig.2 Model comparison
基于上述分析,本文MFEM模塊的設計充分考慮特征重用的優點,搭建了一個四層密集級聯的多尺度網絡來提取圖像的乘性特征。具體地,采用不同尺寸的卷積操作來獲取不同感受野的圖像特征;通過密集級聯充分利用各層信息,補償信息間差異,捕捉更加全面的特征;ReLu函數不僅可以克服梯度消失而且可以加快網絡的訓練速度,因此MFEM模塊采用ReLu作為激活函數。本文將輸入圖片尺寸設為480×640,為保證輸出圖像尺寸的一致性,輸出尺寸,步長,填充,輸入尺寸遵循式(4)所示的規則:

其中,m1為輸入圖片尺寸,m1為輸出圖片尺寸;P為填充,f代表卷積核尺寸,S為步長;為向下取整操作。
深度可分離卷積包括逐通道卷積(Depth‐wise)和逐點卷積(Pointwise)兩個步驟,是兩種卷積共同作用的結果。與常規卷積相比,深度可分離卷積可以在達到同等效果的同時有效降低參數量。因此,為降低網絡參數量、提高網絡訓練效率,MFEM網絡采用深度可分離卷積實現其功能。
MFEM模塊各階段內部參數如表1所示。ConvY-X中Y代表卷積核尺寸,X代表卷積編號,例如Conv1-1表示尺寸為1×1,編號為1的卷積,×N表示上采樣。其次,當填充P≠0時,本文采用大小為3×3,步長為2,P=1的最大池化層對圖片進行下采樣操作,以減小圖片尺寸。

表1 乘性特征提取模塊MFEM各卷積核參數Tab.1 MFEM convolution kernel parameters
2.2.2 加性特征提取模塊AFEM
在本文所提的線性復原模型中,可將加性特征AF視為偏置。與MF相比,AF對輸出結果影響較小。因此,本文AFEM模塊使用6個卷積層融合不同大小的濾波尺寸,捕獲多感受野特征。同時,引入跳躍連接有效避免梯度消失或梯度爆炸問題,顯著增強網絡性能。網絡內各部分參數如表2所示。為了進一步比較本文所提特征MF和AF的對復原結果的影響,進行如下實驗,如圖3所示。從一組有無加性特征的復原效果對比圖可以看出:加性特征主要體現在圖像的細節部分及顏色保真度方面,它可以有效增強圖像細節信息,使圖像局部特征更加明顯,同時在視覺上使圖像更加清晰自然。如圖中紅框部分所示,加性特征AF加入后地面及墻面顏色更加清晰自然且細節特征明顯增多。

表2 加性特征提取模塊AFEM各卷積核參數Tab.2 AFEM convolution kernel parameters

圖3 有無加性特征復原效果對比圖Fig.3 Comparison of restoration effect with or without AF
2.2.3 損失函數
為保證網絡的收斂性,本文在訓練網絡時采用將基于預訓練VGG-19網絡的感知損失[20]與L2損失相結合的損失函數求解方法,通過最小化重建圖像與真實圖像之間的誤差獲得無霧圖像。L2損失與感知損失LP分別如式(5),式(6)所示:

其中,Ji表示真實無霧圖像,Ji'表示經過所提網絡得到的重建圖像,H,W,M分別表示重建圖像的高度、寬度以及數目。φi表示真實圖像特征圖,表示重建圖像特征圖。
因此,最終的損失函數L為:

其中,ε為權重因子,本文設置為0.01。
分別利用MFEM模塊和AFEM模塊得到訓練好的特征AF和MF后,結合初始信息,通過復原模塊,便可得到無霧圖像,如圖4所示。

圖4 圖像復原Fig.4 Image restoration
為驗證所提網絡的有效性及合理性,本文對其在合成圖像和真實圖像的去霧效果分別做了定量評估,并從視覺效果和客觀數據兩方面與目前先進的算法作對比,使結果更具說服力。
本文網絡運行是基于Pytorch框架下實現的,在Ubuntu環境下使用V100 GPU來訓練去霧網絡。其中,設置初始學習率為經驗值0.000 1,batchsize為32。Adam優化器的動量衰減指數分別是:β1=0.9,β2=0.999。迭代次數為30次,訓練一次迭代的時間為28分鐘,最終訓練出的網絡模型大小為1 808 kb。
本文使用合成圖像數據集RESIDE(Realis‐tic Single Image Dehazing)[21]訓 練 網 絡。RE‐SIDE從NYU2[22]深度數據集中選取圖像,通過隨機選擇大氣光A(A∈(0.8,1.0))和散射設系數β(β∈(0.5,1.5))來合成不同的有霧圖像。其中包括ITS(Indoor Training Set)室內數據集、OTS(Outdoor Training Set)室外數據集和SOTS(Synthetic Objective Testing Set)數據集。本文選擇RESIDE中的ITS數據集作為訓練集,SOTS作為測試集。訓練集ITS中包括1 399張清晰圖像以及所對應的不同霧濃度的13 990張有霧圖像;測試集SOTS中包括500張室內有霧圖像和500張室外有霧圖像。另外,為更好地驗證所提網絡的有效性和實用性,本文還選取了真實環境中色彩較為豐富的有霧圖像進行測試。
在網絡性能的定量評估上,本文選取了一些去霧領域具有代表性的算法作對比,包括基于物理模型的傳統算法He算法、Zhu算法;基于深度學習的Cai算法、Li算法、Ren算法和Qin算法。
3.2.1 主觀評價
在合成圖像數據集SOTS上對網絡從主觀和客觀兩方面進行評估,隨機選取其中的4幅室內圖像和4幅室外圖像進行效果評價,各算法去霧效果如圖5~6所示。可以看出:與其他算法相比,本文算法所得結果圖與原清晰圖像最為相似,具體分析如下:
He方法獲得的圖像去霧較徹底,但較其其他算法效果圖而言圖像整體偏暗,且由于暗通道的局限性,天空區域嚴重失真,如圖6(b)所示。另外,邊緣突變處透射率估計不準確,導致復原圖像在邊緣處易出現光暈和塊狀效應,如圖6(b)中第一幅圖像樹葉周圍存在光暈偽影;由Cai方法得到的圖像顏色自然,尤其天空區域更為顯著,但存在去霧不徹底和細節損失嚴重的問題。如圖5(c)中第一幅圖像墻面區域明顯有霧氣殘留,第四幅圖像前景椅子嚴重偏色以及圖像6(c)中第一幅圖像樹葉過暗細節模糊;較He算法,Ren算法在天空區域的偏色問題有所改善,但部分圖像存在去霧不徹底及顏色過飽和問題。如圖5(d)中第四幅圖像、圖6(d)中第一幅圖像去霧效果較差,圖6(d)中第三幅圖及第四幅圖像中的石頭護欄部分顏色過黃;Li方法得到的圖像顏色保真度較好且去霧也較為徹底,但由于網絡結構比較淺特征提取不是很豐富,遠景區域細節恢復較差,如圖6(e)中第三幅圖像及第四幅圖像后山的樹林;Qin算法得到的無霧圖像室內圖像去霧效果較好,復原圖像顏色自然,室外圖像去霧不太徹底,但天空區域顏色自然,無明顯的偏色現象,如圖5(f)所示;與前面幾種經典算法相比,本文算法去霧效果顯著,細節保持良好,且無明顯的失真、偏色等問題,去霧圖像顏色自然,在室內及室外圖像上均有不錯的表現。

圖5 室內合成霧圖各算法去霧效果對比圖(圖像1-4)Fig.5 Comparison of restoration effects of various algorithms in iutdoor synthetic hazy image(Image1-4)

圖6 室外合成霧圖各算法去霧效果對比圖(圖像1-4)Fig.6 Comparison of restoration effects of various algorithms in outdoor synthetic hazy image(Image1-4)
3.2.2 客觀評價
客觀評價指標采用深度學習中統一使用的結構相似度SSIM(Structural Similarity Index Measurement)指標和峰值信噪比PSNR(Peak Signal to Noise Ratio)指標。其中,結構相似度SSIM用來衡量兩幅圖像的相似程度,取值范圍為[0,1],峰值信噪比PSNR用來表示一幅圖像中有用信號和噪聲的比值,兩者都是越大越好。兩指標對應的數學表達式分別如式(8),式(9)所示:

其中,μi和μj分別為圖像i和圖像j的均值,σi和σj為兩幅圖像的標準差,σij為兩幅圖像的協方差,c0和c1為常數。

其中,MSE為去霧后的圖像與清晰圖像的最小均方誤差,MAX一般取255。
在SOTS上的客觀指標如表3所示(數據為均值)。可以看出:經本文網絡處理得到的圖片在SSIM指標上領先其他算法,PSNR指標也優于大部分算法,取得了不錯的結果,輔助驗證了所提網絡的有效性。

表3 SOTS數據集評測指標Tab.3 SOTS evaluation indicators
3.3.1 主觀評價
為了進一步證實所提網絡的實用價值,本文對其在真實場景下的效果圖像進行實驗評估,各算法去霧效果如圖7所示。可以發現:He算法對于含豐富近景的圖像去霧效果良好,但由于最小濾波器使用造成透射率誤估,使得復原圖像在邊緣處容易出現光暈,以及大氣光估計不準確,導致去霧圖像在含天空的遠景區域嚴重失真,如圖7(b)所示;與其他算法相比,Zhu算法和Qin算法都存在去霧不徹底,細節損失嚴重等問題,尤其Qin算法更加明顯,如圖7(c)中紅框所示部分;Cai算法去霧效果顯著,尤其天空區域顏色恢復自然,但部分圖像去霧程度過大,導致部分像素點丟失圖像變暗,如圖7(d)紅框中樹葉部分以及船體部分所示;Ren算法效果圖去霧徹底,但有明顯的偏色問題特別是包含天空部分的區域,如圖7(e)中圖像3的樹葉、圖像5的前景部分以及圖像2和圖像6的天空區域;Li算法整體去霧效果較好,部分區域存在顏色失真現象,如圖7(f)中圖像4的草丘;和其它算法相比,本文算法效果圖去霧徹底,細節保持良好,復原場景清晰自然。

圖7 真實場景各算法去霧效果對比圖(圖像1-6)Fig.7 Comparison of restoration effects in real scenes(Image1-6)
3.3.2 客觀評價
客觀評價采用真實場景去霧領域中經常使用的無參考的圖像質量評估法[23],其評價指標包括:飽和像素點個數m、可見邊集合數e、平均梯度r以及運行時間t(單位:秒);其中飽和像素點個數和運行時間數值越小,算法表現越好;可見邊集合數e和平均梯度r數值越大,表明算法效果越好。
各算法中各指標如表4所示(表中數據為均值)。由表可以看出:所提網絡在飽和像素點個數和運行時間指標上有較好的表現,并且在可見邊集合數和平均梯度兩指標上具有領先優勢。與其它各算法相比,所提網絡在可見邊集合數e上提高了28.1%,在平均梯度r上提高27.9%。

表4 真實場景各評價指標Tab.4 Indicators for real scenes
為了進一步驗證所提各模塊對最終去霧結果的貢獻,隨機挑選數據集SOTS中的一幅圖像進行如下的消融實驗。主要包括:1)僅提取有霧圖像的加性特征AF來復原圖像;2)僅提取有霧圖像的乘性特征MF來復原圖像;3)加性特征AF和乘性特征MF共同作用(AF+MF)。
由圖8對比圖可以看出:AF圖像只保留了一些全局特征,細節信息大量丟失;MF圖像細節信息明顯增多,但存在去霧不徹底和偏色的問題。相比之下,由AF和MF兩個特征共同作用下的圖像不僅保留了原圖像的色彩而且細節信息明顯去霧也較徹底,各圖像指標如表5所示。從表5可以看出,由AF和MF兩特征共同作用下得到的圖像在指標SSIM和PSNR上得到了顯著提升。

表5 在SOTS數據集上的評測指標對比Tab.5 Comparison of indicators on the SOTS

圖8 消融實驗結果對比圖Fig.8 Comparison of ablation experiment
針對目前傳統算法以及現有網絡存在的不足,提出了一種基于CNN的分離特征和協同網絡的端到端圖像去霧模型。其設計從大氣散射模型變形公式出發,充分考慮對圖像乘性特征MF和加性特征AF的提取。通過密集級聯和跨層連接有效提升網絡精度,減小模型部署成本,提高網絡運行效率。實驗表明:所提網絡去霧效果良好且圖像保真度高,與其它算法相比優勢明顯,有效解決了當前圖像去霧不徹底、顏色偏移及細節保持不佳、可見度下降等問題。但由于該網絡的復原模塊本質上還是依靠大氣散射模型,復原出的部分圖像在細節保持及天空區域的顏色保真度方面仍存在不足,提高去霧模型的準確性將是今后進一步的研究重點。