張望
(西華大學汽車與交通學院,四川 成都 610039)
目前大多數交通監控、智能汽車、目標檢測和其他系統都假定輸入圖像是清晰的,然而由于大氣中煙霧和粉塵等懸浮顆粒物的存在,視覺系統通常會捕獲能見度和對比度降低的圖像。因此增強圖像清晰度是一項必要的任務。目前,針對去霧的研究可分為三種:圖像增強,圖像復原和深度學習方法[1]。
基于圖像增強的方法忽略圖像內在機理,直接消除多余的干擾信息,提高亮度和對比度,從而恢復出清晰圖像。Land EH等[2]以色感一致性理論為基礎提出Retinex,單尺度Retinex[3]能增強對比度和在動態范圍大幅度壓縮,多尺度Retinex[4]可提高色彩飽和度,實現局部動態范圍壓縮,但當霧分布不均勻時會產生光暈現象和色彩失真。直方圖均衡化是一種全局對比度增強方法,計算量較低。Pizer SM等[5]提出一種圖像對比度增強方法,即限制對比自適應直方圖均衡化(Contrast Limited Adaptive Histogram Equalization,CLAHE),限制直方圖以減弱噪聲強度。Srinivasan S等[6]提出一種自適應局部區域伸展(Local Region Stretch,LRS)直方圖均衡化,它在灰度區間對圖像像素點均衡化。上述基于直方圖的去霧方法會丟失邊緣等細節信息,降低有用信息對比度導致對比度異常。Ancuti等[7]提出了基于融合的圖像去霧方法,通過融合白平衡和增強對比度兩個原始模糊圖像實現,由于不考慮霧霾物理模型,該方法在復原色彩等方面不夠準確。
基于圖像復原的方法大多考慮大氣散射物理模型[8],去霧能力較圖像增強方法有些許提高。He K等[9]提出一種暗通道先驗(Dark Channel Prior,DCP)的方法進行去霧,根據大多數有霧圖像的統計規律估計透射率,并由大氣散射模型得出去霧圖像,但在天空區域色彩失真。Pang J等[10]結合了暗通道先驗和引導圖像濾波方法進行單圖像去霧,得到精細的透射圖。Zhu Q等[11]提出了一種顏色衰減先驗(Color Attenuation Prior,CAP),對模糊圖像的場景深度使用線性模型學習參數,接著恢復深度信息,進而通過大氣散射模型估計透射率并去除霧氣。Fattal R等[12]提出了一種單幅圖像去霧算法,通過假設表面陰影與透射率統計獨立改進了大氣散射模型,增加了表面陰影參數。Tan RT等[13]觀察到無霧圖像對比度高于有霧圖像,大氣光數值與成像距離有關,從而建立馬爾科夫隨機場的成本函數計算得出大氣光。基于實時除霧需要,Tarel JP等[14]考慮大氣衰減模型和大氣光模型,利用中值濾波估計霧氣濃度,從而復原無霧圖像。Wang Y K等[15]設計一種多尺度融合去霧方法,結合馬爾科夫隨機場理論搜索深度圖的最優解,保留了較多邊緣等細節信息,進而恢復高質量的無霧圖像。
基于卷積神經網絡(Convolutional Neural Network,CNN)的方法近年來在去霧任務上取得了較大進展,Cai B等[16]首次采用端到端的CNN網絡結構估計透射率,解決了手工提取特征復雜等問題。Li B等[17]介紹了一體化去霧網絡(Allin-One Dehazing Network,AOD-Net),通過端到端的輕量級CNN生成清晰圖像,滿足其他檢測任務的需要。Mondal R等[18]提出了一種基于全卷積神經網絡(Fully Convolutional Neural Network,FCN)的圖像去霧方法,設計了一個聯合估計透射率和大氣光的網絡。Ren W等[19]提出了一種用于單幅圖像去霧的多尺度卷積神經網絡(Multi-Scale Convolutional Neural Networks,MSCNN)模型,它包括估計圖像透射圖的粗尺度網絡和局部細化結果的細尺度網絡。以上方法對于圖像去霧效果較于圖像增強和圖像復原方法有明顯提升,但由于它們過度關注局部特征,仍有對比度下降、細節缺失等問題。
近年來,基于Transformer的深度學習方法在自然語言處理[32]、語音識別[33]和計算機視覺[34]等各個領域顯示出了巨大潛能。在圖像處理領域,Transformer相較于CNN更關注全局信息,注意力機制等結構在圖像去霧方面卓有成效。Dosovitskiy A等[29]首次將Transformer應用于圖像,完全替代了卷積操作,并通過在超大數據集上預訓練,在一般數據集上得到了優秀的結果。Woo S等[30]的研究提出在空間和通道注意力融合的卷積注意力模塊(Convolutional Block Attention Module,CBAM),其提取的特征結合多維信息,并在能集成在CNN網絡中從而提高性能。Yu W等[31]專注于Transformer在多項任務中有效的原因,提出PoolFormer結構,并表明在Transformer前期使用Pooling模塊后期使用Attention模塊可以獲得良好的效果。
由于有霧圖像中物體的尺度在密度、分布和大小等方面存在明顯差異,本文提出基于空間通道Transformer(Space-Channel Transformer,SCFormer)的雙分支去霧網絡。首先建立一種特征自適應提取模塊(Feature Adative Extraction Module,FAEM)用于提取圖像淺層特征,減少了像素間損失;然后設計編碼器-解碼器(Encoder-Decoder)結構,Encoder中采用PoolFormer架構,Decoder中建立新的空間通道雙注意力Transformer;接著添加卷積分支用于無監督學習,從而更好估計傳輸圖;最后在Reside測試數據集上進行了客觀評價指標和主觀評價指標測試。本文的主要工作包括:
(1)基于Transformer網絡,提出空間通道自注意力網絡;
(2)針對霧圖中的尺度差異,提出一種特征自適應提取模塊;
(3)針對圖像去霧效果,提出一種特征余弦相似度損失函數;
(4)在Reside數據集上進行訓練與測試,并對比了相關的圖像去霧方法,結果驗證了本文模型的有效性及優越性。
空氣中的微小顆粒幾乎不會阻擋光線,但在霧天空氣中有大量懸浮粒子,如水蒸氣、氣溶膠,他們對可見光有很強的吸收和散射作用,造成目標反射光能量的衰減,從而導致成像效果差和對比度低。
1925年,Keim等[22]提出霧天圖像能見度較低是大氣中的懸浮粒子對光的吸收和散射造成的。根據上述理論,大氣衰減模型在1976年由McCartney[8]提出,如圖1所示,公式如下:

圖1 大氣散射模型
其中:x是圖像中像素點的坐標;λ是光的波長;I(x,λ)是攝像機獲取的霧天圖像;β(λ)表示大氣散射系數;d(x)是攝像機與目標的距離;R(x,λ)是需要復原的無霧圖像;L∞是無窮遠處的大氣光值。
1999年,Nayar SK等[23]闡明了霧天圖像的成像過程和引起成像質量下降的原因,即目標反射光能量的衰減和環境光受散射作用形成的背景光強度大于目標光,并建立了成像數學模型:
式中:I(x,λ)是攝像機采集到的有霧圖像;J(x)是輸出的無霧圖像;A是大氣光。
2009年,He K等[9]提出了暗通道先驗理論,即在大多數非天空的局部區域里,某些像素灰度值總會有一個顏色通道是很低的值,公式如下:
其中:Jc(x,y)是彩色圖像的各個通道圖像;Ω(x,y)是以像素點(x,y)為中心的區域。
2017年,Yan Y等[24]提出類似于DCP的亮通道先驗,即是模糊圖像中最模糊的圖像塊里的某些像素灰度值在至少一個顏色通道里是很高的值,其表示為:
式中:Jc(x,y)是圖像的各個顏色通道;Ω(x,y)是以像素點(x,y)為中心的區域;Abright(x,y)是無霧圖像的大氣光強度。
為方便計算,霧天成像模型簡化為:
其中:I(x)是輸入的有霧圖像在坐標x像素的像素值;t(x)是大氣透射率。
目前基于圖像復原的去霧方法通過人工假設等方式估計出大氣光A,采用等方法計算出透射率t(x),根據大氣物理模型推算出去霧圖像,但這類方法需要估計的參數較多,誤差較大,甚至當圖像像素點的灰度值接近大氣光值時,局部可能出現色斑、色偏效應,從而導致去霧效果不理想。
CNN是一種前饋神經網絡,它通常由卷積層、池化層和全連接層等組成。
2.2.1 卷積層
卷積層的輸出是輸入數據和可學習參數構成的卷積核進行卷積操作得到的,公式如下:
式中:m和n為位置編號;k為網絡層數;為神經元
輸出;Sn為卷積操作區間;為神經元輸入;為第k層權重;是第k偏置;f是非線性激活函數。
2.2.2 池化層
池化層是對卷積層結果進行降維,擴大感受野,其表示為:
本文采用GA-PSO的配電網重構的基本思想是通過克服算法自身的缺點,使尋優過程較快收斂到全局最優解。由于算法各自的特殊性,直接混合實現困難,本文提出將種群分成兩部分,分別進行尋優保證粒子的多樣性,信息共享使其不易陷入局部最優,將尋優結果進行比較來更新最優解,達到尋優目的。
式中:λ是乘性偏置;是第k層偏置;g是激活函數;f是池化函數。
2.2.3 上采樣層
上采樣層是放大輸入圖像,其表示為:
式中:hn是輸出圖像高度;wn是輸出圖像寬度;hn-1是輸入圖像高度;wn-1是輸入圖像寬度。
本文提出一種基于雙注意力機制的端到端去霧方法,首先建立特征自適應提取模塊(Feature Adative Extraction Module,FAEM)提取淺層特征;然后構建一種Encoder-Decoder模塊,Encoder基于PoolFormer提取全局信息,Decoder關注空間與通道維度,建立自注意力機制模塊;同時共同輸入多尺度暗通道與明通道先驗圖像塊,并與原圖像級聯,生成粗糙的透射圖;接著使用導向濾波得到較清晰的去霧圖像,參與主干網絡參數更新,最后得到高質量的無霧圖像。
本文構建了結合空間與通道自注意力機制基于Pool-Former的Encoder-Decoder結構,并增加輔助網絡分支進行無監督學習,以增加梯度回流信息量,并得到清晰的無霧圖像,如圖2所示,主干網絡的編碼器是通過殘差塊進行淺層空間特征提取;解碼器使用SCFormer,用于恢復圖像的原始尺寸,中間的跳躍連接使用空洞空間卷積池化金字塔(Atrous Spatial Pyramid Pooling,ASPP)[25]模塊,獲取多尺度物體信息,從而為輸出圖像保留更多全局信息,提高圖像除霧效果;輔助網絡輸出透射圖,與暗通道透射圖計算損失函數以進行梯度回流,更新參數。

圖2 本文網絡結構
訓練時,編碼器在輸入中使用手工提取的7×7和11×11尺寸的亮減暗通道圖像塊與彩色圖像級聯,即7通道的尺寸為256×256的圖像。網絡首先使用FAEM模塊提取全局信息;其次使用連續4個PoolFormer模塊加深網絡深度的同時保持圖像尺寸不變,其中Pooling操作在提取不同維度特征的同時,減少模型復雜度與參數;為了應對下采樣過程中的信息丟失,添加ASPP模塊擴大感受野,降低分辨率損失。
解碼器中使用連續4個空間通道自注意力網絡(Space-Channel Transformer,SCFormer)模塊與跳躍連接輸出級聯,加強信息傳播,減少信息損失,保留了邊緣、紋理等細節,接著兩次使用轉置卷積[27]上采樣,恢復到原始尺寸激活函數使用帶泄露修正線性單元(Leaky Rectified Linear Unit),解決了負輸入的零梯度問題;最后采用3×3卷積生成3通道彩色去霧圖像。
分支網絡使用雙線性插值復原圖像大小,首先估計出粗糙的透射圖,接著使用導向濾波獲取精細的透射圖,然后計算出暗通道透射圖損失,更新網絡相關參數,從而減少過擬合并增強結構魯棒性。
損失函數是度量輸出圖像與真實圖像的差距,上分支網絡損失函數包括L2損失LL2(I)、余弦相似性(Cosine Similar,CS)的感知損失Lcos(I),輔助網絡增加了暗通道透射圖損失Ldark(I)依據重要程度賦予不同權重,總損失函數為:
L2損失函數在圖像去霧中能增大輸出圖像與真實圖像的差異,加快收斂速度,本文將他作為主干網絡的損失函數,其公式如下:
其中:f k(x)是主干網絡的第k批輸出值,yk為第k批無霧標簽圖像,n為訓練樣本數。
余弦相似性損失函數關注特征級別的一致性,是衡量兩幅圖像相似度的常用指標,輸出圖像與真實圖像之間的Lcs(I)計算如下:
其中:f k(x)是主干網絡的第k批輸出值,yk為第k批無霧標簽圖像。
暗通道透射率損失函數是考慮了分支網絡輸出結果對主干網絡的影響,通過對輸出的透射率圖像計算導向濾波等方法獲得的清晰圖像與主干網絡輸出的去霧圖像之間的Ldark(I)如下:
其中:gk(x)是分支網絡的第k批輸出值,yk為第k批無霧清晰圖像,n為訓練樣本數。
Reside數據集[26]是圖像去霧領域使用較廣泛的公共數據集。本文使用Reside-indoor數據集中的ITS數據集,選取13000張圖片作為訓練集,990張圖片作為驗證集,包括500張圖片的SOTS作為測試集。本文使用Pytorch框架構建深度學習模型,在配備GeForce RTX 3090 GPU的Ubuntu環境下訓練。設置kcs、kdark分別為0.1、0.01時除霧結果最好。在進行卷積神經網絡訓練時,輸入圖片尺寸為256×256×7,參數初始化方法為均勻分布初始化,初始固定學習率為0.0002,并使用Adam優化器,批尺寸batch-size為8,epoch為100,網絡總損失函數包括LL2(I)、Lcs(I)、Ldark(I),使用圖像質量評價標準峰值信噪比(Peak Signal-to-Noise Ratio,PSNR)和結構相似性(Structural Similarity,SSIM)指標度量去霧效果。
本文使用PSNR與SSIM作為圖像去霧任務中的客觀評價指標。PSNR和SSIM的數值的大小表示圖像質量的好壞。本文在單分支的殘差網絡ResNet50上進行了基準實驗如表1所示,進一步分析了模型中不同部分的影響,所有超參數調整都在驗證集上進行。從表中可知,當逐漸添加不同模塊,PSNR和SSIM指標數值都有提高。
將本文方法與目前的先進去霧方法AOD-Net[17]、CAP[11]、DCP[9]、FCN[18]、MSCNN[19]在合成圖像去霧數據集上進行對比的主觀結果如圖3所示。前兩行是在Reside-indoor上的測試結果,后兩行是在Reside-outdoor上的測試結果。從圖中看出,AOD-Net和MSCNN仍然有霧氣殘留現象;CAP產生部分色斑且亮度較低;DCP去霧結果在天空區域出現較明顯顏色失真現象且對比度過高;FCN結果亮度過高,部分區域出現色偏效應;本文方法的色彩真實呈現和細節復原效果較其他方法明顯更好,與真實的清晰圖像相似度更高。在真實有霧場景中的去霧結果如圖4所示,本文方法在減少霧氣殘留方面效果顯著,且亮度增強和色彩還原效果較其他方法更好。

圖3 不同模型對合成圖像去霧的主觀結果對比圖

圖4 不同模型對真實圖像去霧的主觀結果對比圖
在Reside-indoor測試集上進行客觀評價對比的客觀結果如表1所示。從中可以看出,本文方法獲得了最高的PSNR和SSIM數據值,PSNR和SSIM均大幅提高,兩個指標相較于其他方法有了較大提升,展現了模型的良好性能。

表1 不同網絡模型的PSNR和SSIM客觀結果對比
本文提出了一種基于SCFormer的雙分支網絡的圖像去霧方法。輸入包含暗通道和亮通道圖像的多尺度級聯圖像,提高了估計透射率的準確率,提升了圖像分辨率;PoolFormeer的應用和ASPP的構建獲取了全局特征;SCFormer考慮圖像物體差異,較好還原無霧圖像顏色、紋理等細節;改進了損失函數,增加了分支網絡得到粗糙的透射圖,從而減少過擬合,增強模型泛化能力,最終通過客觀和主觀評價表現了網絡在去霧方面的良好性能。但本文沒有使用目標檢測等視覺任務進行驗證,且只進行了單幅圖像去霧,接下來可以應用本文算法在實時視頻去霧等領域。