賀長秀
(中國人民解放軍63636部隊,酒泉732750)
霧霾天氣條件下,戶外采集的圖像會受到空氣中懸浮微粒(水蒸氣或煙塵)的影響而降質(zhì),這是由于光線在空氣傳播過程中受到微粒的散射和吸收作用,導致目標場景表面的反射光衰減,同時大氣環(huán)境光受懸浮微粒的散射而混入到成像光路中,使得戶外采集到的圖像出現(xiàn)模糊、顏色退化、對比度下降等現(xiàn)象。這些缺陷會嚴重影響室外計算機視覺系統(tǒng)的工作性能。因此,針對霧霾圖像研究圖像去霧技術(shù)對計算機視覺系統(tǒng)的應用有著重要意義。
圖像去霧算法是通過一定的技術(shù)或手段對霧天圖像進行處理,去除圖像中霧的遮擋和干擾,得到對比度、顏色和細節(jié)等各方面都滿意的圖像。目前現(xiàn)有的圖像去霧算法可分為三類:基于圖像增強的方法、基于物理模型的方法和基于深度學習的方法。
基于圖像增強的去霧方法是從圖像的特征出發(fā),通過利用或改進傳統(tǒng)的增強算法來改善霧天圖像的對比度和顏色信息,以此來達到去霧的目的。常用的圖像增強算法有直方圖均衡化、同態(tài)濾波、小波變換和基于Retinex 的算法[1]。圖1 展示了利用傳統(tǒng)圖像增強方法進行去霧的例子。從圖1 中可以看出,處理后的霧天圖像對比度得到了提升,但是整體去霧效果不自然。這是由于基于圖像增強的去霧方法沒有考慮到霧天圖像降質(zhì)的原因,僅從圖像特征出發(fā),來改善對比度和顏色信息,在增強過程中忽略了圖像中場景的深度信息,導致增強后的圖像在景深跳躍的區(qū)域不自然,不是實質(zhì)意義上的去霧處理。
圖1 傳統(tǒng)圖像增強方法應用于霧天圖像的處理結(jié)果
基于物理模型的圖像去霧方法是從霧天圖像降質(zhì)或退化的機理出發(fā),研究可以描述霧天圖像退化的物理模型,進而通過估計模型中的未知參數(shù),來反演降質(zhì)過程,最終復原出無霧清晰的圖像。目前,此類方法中使用較多的是大氣散射模型,該模型最先由McCartney等人[3]根據(jù)米氏大氣散射理論提出,后續(xù)Narasimhan 和Nayar[4]進行推導得到的。如圖2 所示,大氣散射模型描述的是采集設備接收到的圖像可由兩部分組成,一部分是目標場景的反射光在大氣傳播過程中經(jīng)過懸浮粒子衰減后到達接收設備,另一部分是光路周圍的大氣光經(jīng)過懸浮粒子的散射混入到了成像光路,與目標場景的反射光一起到達接收設備。在數(shù)學上,可用如下公式表示:
式(1)中,I(x)為觀察到的圖像,即霧天圖像,t(x)為透射率,A為大氣光,J(x)為復原后的無霧圖像。式(1)右側(cè)有兩部分組成,J(x)t(x)表示直接衰減項,描述目標場景反射光衰減后的部分,A(1-t(x))表示大氣光項,描述混入到成像光路的部分。圖像去霧的目的是從輸入的霧天圖像I(x)出發(fā),估計模型中的未知參數(shù),復原無霧圖像J(x)。根據(jù)目前基于物理模型的去霧方法所基于的假設或先驗,又可將此類方法分為三類:基于深度信息的方法、基于偏振光的方法和基于先驗知識的單幅圖像去霧方法[5]。
基于深度信息的方法是通過一定的方法得到圖像的景深信息,進而估計物理模型中的參數(shù),進而將參數(shù)代入模型,反演得到清晰無霧的結(jié)果圖像。常用的深度估計方法有以下幾種,1998 年,Oakley 等人[6]利用雷達和飛機的飛行參數(shù)來估計場景的深度信息。Nara?simhan 和Nayar 在文獻[7]中提出了一種基于用戶交互方式估計場景深度的方法。該方法通過用戶手動指定天空區(qū)域和消失點的方法來得到場景的深度信息。隨后,Narasimhan 和Nayar[8]利用在相同場景不同天氣條件下的兩幅或多幅圖像,通過相應的約束條件,計算場景的三維結(jié)構(gòu)信息,進而復原得到清晰無霧的圖像。Kopf 等人[9]利用已經(jīng)場景的三維紋理信息,得到相應的深度信息。
雖然基于深度信息的去霧方法可以得到較好的復原效果,但是此類方法應用場景單一,針對性強,且需要額外的硬件或者用戶交互信息,因此難以推廣和應用。
霧霾天氣條件下,目標場景光線強度隨著場景距離增大而指數(shù)衰減,相應的環(huán)境光強度隨著距離增大而指數(shù)增加,通常認為接收設備采集到的光線偏振度大部分是由空氣中散射例子的環(huán)境光造成的?;谶@一假設,Schechner 等人[10]從大氣光的偏振特性出發(fā),通過估計兩幅或多幅圖像在不同偏振方向偏振度、大氣光以及透射率等參數(shù),進而將估計的參數(shù)代入到降質(zhì)模型中復原得到清晰的圖像。然而,這些基于偏振光的圖像去霧方法僅適用于薄霧的場景,在濃霧場景下效果較差。
由于前兩類方法都需要額外的信息或者多幅輸入圖像,在真實的應用場景下很難滿足,因此基于單幅圖像的去霧方法得到更多研究者的關注。針對單幅圖像去霧而言,由于僅有輸入的單幅圖像信息可用,因此模型的反演求解屬于病態(tài)問題。為了實現(xiàn)單幅圖像去霧的目的,需要有效的先驗知識或合理的假設來估計模型中的關鍵參數(shù),進而代入到降質(zhì)模型中進行反演復原得到無霧圖像。Tan[11]通過觀察發(fā)現(xiàn)無霧圖像的對比度與霧天圖像相比較高,進而提出了一種最大化局部對比度的方法來達到去霧的目的。Fattal 等人[12]假設場景表面陰影與透射率呈統(tǒng)計不相關性,然后利用獨立成分分析(Independent Component Analysis,ICA)的方法來估計透射率和大氣光參數(shù)。Tarel 等人[13]首次引入了大氣光幕的概念,并利用快速中值濾波的方法來對大氣光幕進行估計,進而將估計的大氣光幕參數(shù)代入到模型中進行求解。He 等人[14]通過對大量無霧自然圖像進行觀察發(fā)現(xiàn)在大多數(shù)非局部天空局部區(qū)域內(nèi),總存在一些像素點至少在某個顏色通道的亮度值很小,甚至會趨近于0,稱之為暗通道先驗規(guī)律(Dark Channel Prior)。數(shù)學上,暗通道先驗規(guī)律可表示為:
式(2)中,Ω(x)為像素點x 的鄰域,Jc為圖像的顏色通道,Jdark為暗通道圖,由暗通道先驗理論可得,Jdark趨近于0。He 等人進而將暗通道先驗理論來簡化大氣散射模型,具體的,將模型(1)兩邊進行兩次最小值運算,可得:
式(3)中假設透射率在局部塊內(nèi)是恒定不變的,結(jié)合式(2)中的暗通道先驗規(guī)律,可對式(3)進行簡化再推導,可得:
式(4)中可以粗略求出透射率參數(shù),如果將此粗略透射率直接代入模型中,則會出現(xiàn)明顯的塊效應,嚴重影響復原效果。因此,He 等人利用軟摳圖算法來細化透射率圖,即求解矩陣方程:
式(5)中L為拉普拉斯稀疏矩陣,λ為參數(shù),U是和L同樣大小的單位矩陣,為式(4)求出的粗略透射率,t為細化后的透射率圖。
由于該方法簡單有效,迅速被國內(nèi)外研究者關注。然而,軟摳圖細化透射率圖的方法復雜度較高,耗時較大,因此,He 等人隨后又提出了導向圖濾波(Guid?ed Image Filter,GIF)[15]來細化透射率圖,大大提高了算法的執(zhí)行效率。然而,該方法在某些場景下會失效,如含有大片天空區(qū)域的霧天圖像。當輸入的霧天圖像中含有大片天空區(qū)域時,暗通道先驗規(guī)律不成立,導致基于暗通道先驗的方法在對此類圖像處理時會出現(xiàn)顏色失真,噪聲放大等現(xiàn)象。后續(xù)研究者針對該方法的缺陷也提出了一系列的改進算法。
近年來,一些有效的先驗知識被先后提出,如顏色衰減先驗(Color Attenuation Prior,CAP)[16]、霧線先驗(Haze-lines Prior)[17]等。圖3 是利用不同先驗知識得到的去霧結(jié)果圖像。如圖3 所示,基于先驗知識的去霧方法可去除霧氣對圖像的遮擋,有效改善霧天圖像的視覺效果。
基于先驗知識的方法目前是傳統(tǒng)圖像去霧領域研究的趨勢,通過探索有效的先驗知識來估計模型的參數(shù),便可以很好的復原圖像。但是,先驗知識的應用場景往往受限,其通用性有待進一步探究。
圖3 基于先驗知識的圖像去霧方法處理結(jié)果
隨著計算能力的提升和硬件成本的下降,以數(shù)據(jù)為驅(qū)動的基于學習的圖像去霧方法得到了迅猛的發(fā)展,成為了近年來主流的方法。特別的,卷積神經(jīng)網(wǎng)絡(Convolutional Neural Networks,CNNs)和生成對抗網(wǎng)絡(Generative Adversarial Networks,GANs)[18]已成功應用于圖像去霧領域。Cai 等人[19]首次嘗試利用CNN 來構(gòu)造端到端的去霧網(wǎng)絡,實現(xiàn)從輸入單幅霧天圖像到透射率圖之間的映射。Ren 等人[20]提出了一種多尺度CNN 去霧網(wǎng)絡,包括兩個子網(wǎng)絡,分別用于粗略估計透射率圖和細化透射率圖。隨后,Li 等人[21]通過推導大氣散射模型公式,將透射率和大氣光兩個參數(shù)進行合并,統(tǒng)一到一個參數(shù)中,并構(gòu)造了一體化CNN 去霧網(wǎng)絡,實現(xiàn)從輸入單幅霧天圖像到無霧圖像之間的映射?;贕AN 網(wǎng)絡,Li 等人設計了條件生成對抗式去霧網(wǎng)絡,實現(xiàn)霧天圖像到透射率之間的映射。Zhu 等將可微編程的思想與生成對抗網(wǎng)絡進行結(jié)合用于圖像去霧領域。Pan 等人[22]為了求解通用的圖像復原問題,將GAN 網(wǎng)絡與物理模型進行結(jié)合,改進了GAN 網(wǎng)絡的結(jié)構(gòu),成功應用于圖像去霧、去噪、超分辨以及去模糊任務。基于深度學習的方法由于需要大量配對的霧天和無霧圖像作為訓練數(shù)據(jù),現(xiàn)有的方法通常是利用物理模型通過設計不同的參數(shù)值來得到仿真的霧天圖像。由于真實的配對數(shù)據(jù)很難獲取,基于循環(huán)一致性的生成對抗網(wǎng)絡(CycleGAN)[23]應運而生,該網(wǎng)絡的所需的訓練數(shù)據(jù)無需成對出現(xiàn),大大放松了基于深度學習的方法對訓練數(shù)據(jù)集的限制。
基于深度學習的圖像去霧方法目前是該領域研究的主流,此類方法通過大量的仿真霧天數(shù)據(jù)集進行學習得到的網(wǎng)絡結(jié)構(gòu)在應用于仿真霧天圖像時可以得到很好的去霧效果,但應用于真實霧天圖像時往往效果欠佳,這是由于仿真的霧天圖像無法有效如實反映真實霧天圖像的霧霾分布。
圖4 為基于深度學習的去霧方法得到的處理結(jié)果。如圖4 所示,基于深度學習的方法在應用于真實霧天圖像時會出現(xiàn)過飽和或去霧不徹底的現(xiàn)象。
圖4 基于深度學習的去霧方法處理結(jié)果
本文針對近年來圖像去霧算法的研究進展進行了綜述,其中包括基于圖像增強的方法,基于物理模型的方法和基于深度學習的方法,并闡述了各自的優(yōu)缺點。圖像去霧領域的發(fā)展對戶外計算機視覺系統(tǒng)的應用具有重要的意義。然而,該領域仍存在一些難點亟待解決。
(1)物理模型的準確性。目前廣泛使用的大氣散射模型僅考慮空氣中粒子的單散射作用,忽略了粒子與粒子之間的再次散射影響。此外,現(xiàn)有的物理模型也基于大氣中懸浮粒子具有空間不變性的假設,而真實的霧霾天氣往往更加復雜,不一定滿足現(xiàn)有模型的假設條件。
(2)算法的實時性。目前現(xiàn)有的大多數(shù)算法均關注圖像去霧的效果,而對算法的執(zhí)行效率和處理時間研究的較少,算法的可實時性對計算機視覺系統(tǒng)的應用具有很大的影響,在保證效果的前提下提高算法的處理效率,使其可以實時應用于戶外視覺系統(tǒng)是未來的研究方向。
(3)圖像去霧算法的客觀評價標準。目前現(xiàn)有的算法在進行對比時,客觀評價指標無法全面的評價算法性能,只能反映單方面的優(yōu)劣,因此,研究針對圖像去霧算法的客觀評價指標有利用該領域的發(fā)展。