李春明, 姜雨彤, 宋海平, 紀超, 郭猛, 朱琳
(中國北方車輛研究所, 北京 100072)
在霧天環境下,大氣透過光的強度衰減,導致成像質量下降,圖像細節缺失,信息的可辨識度大大降低。現階段急需尋求有效的圖像去霧方法,為現代武器信息對抗技術提供更好的信息來源[1]。實現在霧濃度不高的情況下可以真實地還原出目標的特征,而在霧濃度較高的情況下,則可以比較清晰地分辨出圖像中有意義的目標,達到偵察目的。因此,研究快速、有效的圖像去霧方法具有重要的理論意義和現實價值。
霧濃度的估計對于霧天場景的認知是非常必要的,是圖像去霧的前提。然而,霧濃度估計僅僅依賴人眼視覺系統的主觀感知是不可靠的。因此,為了協助計算機視覺系統選擇更有效的圖像去霧操作,同時為后續的圖像信息處理建立基礎,有必要建立一個客觀、科學的霧濃度估計方法。
目前,研究者們提出的霧濃度估計方法主要分為兩類:
1)采用氣象學的能見距離進行霧濃度估計,霧濃度越高,能見度越低。早期,Pomerleau[2]提出通過測量各位置路牌的對比度衰減程度來估計能見度,這種情況下圖像中路牌的存在是必不可少的。之后,Hautiere等[3]提出一種采用輔助地理地形信息進行自動霧檢測和能見度距離估計的方法,這種方法的關鍵是創建圖像場景的精確三維幾何模型。接下來,Caraffa等[4]提出一種霧氣散射系數預測方法來進行能見度距離的估計,然而能見度估計的準確性主要取決于已知深度圖質量的好壞,這就需要一個精確的三維場景模型。這類方法有一定的限制性,要求霧天圖像中必須包含有距離性質的標志物(例如路牌)、靜止對象或三維幾何模型。
2)根據霧天圖像和無霧圖像的特征統計來計算待測圖像的特征偏差,從而估計霧濃度。Choi等[5-6]提出一種無參考感知霧濃度預測(FADE)模型,通過對大量的霧天和無霧圖像的特征統計,發現霧天圖像有一些特有的衰減特征,例如對比度低、色彩暗淡和亮度大等特征,霧濃度的估計值是通過計算待測圖像的特征值與統計得到的自然無霧圖像特征值的偏差而得到的。然而,Choi等方法中霧濃度的估計值是從0到∞,說明濃度估計值是不存在上限的,這意味著難以明確估計出霧濃度的大小程度。隨著機器學習在圖像處理領域的發展和成熟[7-8],本文研究建立光學厚度的理論代替(代理)模型,從而通過霧天圖像光學厚度值來進行場景的霧濃度估計。代理模型,也稱為近似模型,是根據有限少量樣本點和基于物理實驗所得到的目標響應值,通過插值或回歸等近似逼近技術所構造的計算復雜度低、計算速度快,計算結果接近于實際結果的數學模型。其中較為常見的代理模型主要有多項式回歸(PRG)模型、克里金(KRG)模型、徑向神經網絡(RBNN)模型等。目前,基于代理模型理論的分析和優化(SBAO)方法,由于其具有設計周期短、計算代價低等優點,被廣泛應用在航空航天、汽車工業、制造工業等領域復雜工程結構的優化設計中。
本文首次將代理模型理論分析和優化方法引入到圖像處理領域中,將光學厚度預測與現有的代理模型SBAO方法相結合。根據有霧圖像的衰減特性,歸納統計有關的霧天圖像特征,通過代理模型方法對霧天圖像特征進行敏感度分析,并選擇與霧濃度相關性大的圖像特征作為模型的設計變量,致力于建立計算復雜度小、準確度高的光學厚度估計代理模型。由此可進行霧濃度估計及去除場景中不同濃度的霧氣對圖像的影響。
大氣散射模型主要由入射光衰減和大氣光成像兩個模型構成,反演霧天圖像形成過程可得到去霧后圖像,由此開創了圖像去霧的先河。為了將大氣散射模型擴展到彩色圖像實際應用中,He等[9]對大氣散射模型進行簡化,得到霧天RGB圖像的成像模型為
I(x)=J(x)t(x)+A(1-t(x)),
(1)
t(x)=e-βd(x),t(x)∈(0,1],
(2)
式中:x為二維圖像上像素點的位置坐標;I(x)為觀察到場景的有霧圖像;t(x)為介質透射率函數;J(x)為場景目標直接反射光強,即要恢復的清晰無霧場景圖像;A為大氣光矢量;β為消光系數,包含吸收系數和散射系數,在圖像去霧應用中近似為散射系數;d(x)為場景點深度。t(x)是由β與d(x)共同作用的結果。根據簡化模型可推導出去霧圖像J(x)的求解公式:
(3)
通過求取A、t(x)的值,可從原有霧圖像I中得到去霧后的圖像J(x),實現圖像去霧。
根據(2)式,t(x)是隨光學厚度βd(x)呈指數變化且直接反映霧濃度,則霧天圖像場景像素點x的光學厚度表達式為
D(x)=βd(x).
(4)
將光學厚度D(x)作為目標函數,霧相關圖像特征作為設計變量,構建代理模型;再分析各設計變量的敏感度,進行誤差分析和代理模型校正后,可獲得光學厚度的精確代理模型。圖1給出了基于光學厚度代理模型的霧濃度估計及圖像去霧流程圖。

圖1 基于光學厚度代理模型霧濃度估計與圖像去霧流程圖Fig.1 Flow chart of optical depth surrogate model-based method for estimating fog density and removing fog effect from images
根據大量霧天圖像的特征統計建立光學厚度估計的代理模型后,可根據(2)式和(4)式求解出大氣透射率。由此,定義霧天圖像中的場景點x的霧濃度為
Df(x)=1-t(x).
(5)
如此定義霧濃度Df(x)有以下兩個原因:首先,透射率t(x)是隨著光學厚度D(x)的增加而呈指數衰減的,從而導致霧濃度Df(x)呈線性增加,這就使霧濃度Df(x)正相關于光學厚度D(x),因此將光學厚度作為目標函數進行建模并作為霧濃度估計的預先步驟是合理的;其次,由于光學厚度的變化范圍是從0到∞,所以不能直接作為霧濃度估計參數,而霧濃度的范圍是從0到1,具體上限、下限的存在使得霧濃度大小更為明確。所以,通過(5)式可對霧天圖像中場景點的霧濃度進行合理估計。
從大量霧天圖像中提取一系列霧天圖像特征進行統計,并將這些特征作為以光學厚度為目標函數的設計變量。圖2給出了霧天圖像以及其暗通道、局部對比度、色度、色度方差、彩色度和圖像銳度等特征[6]提取圖像。從視覺效果看,其中一些圖像特征受圖像內容影響大,并不隨霧濃度的影響而發生明顯變化,比如局部對比度、色度方差、圖像銳度;而另一些圖像特征,可體現出不同光學厚度的場景點具有不同的霧濃度,如暗通道特征、色度、彩色度、飽和度- 亮度。
彩色圖像可從RGB彩色空間轉換到與人類視覺感知性相關性更強的HSV彩色空間,霧氣的存在對于場景圖像的色調H分量沒有影響,然而圖像的飽和度S分量和亮度V分量則會隨著場景中霧氣濃度的不同而產生劇烈變化。將圖像I(x)的飽和度S(x;I)和亮度V(x;I)結合在一起,定義為基于HSV空間的飽和度、亮度聯合特征,簡稱為飽和度- 亮度特征,表達式為

圖2 霧天圖像的特征提取Fig.2 Fog-related features extracted from a foggy image
fs(x;I)=S(x;I)V(x;I)=
(6)
式中:R、G、B分別為彩色圖像的三通道;Ic(x)為像素點x在c通道的強度值;fs(x;I)作為有霧圖像I的飽和度- 亮度特征,則其對應的同一場景無霧圖像J的飽和度- 亮度特征fs(x;J)可根據(6)式獲得。同一場景在無霧天氣下和有霧天氣下所拍攝的圖像對中像素點的飽和度- 亮度特征值有如下關系:
fs(x;I)=e-D(x)fs(x;J).
(7)
通過(7)式可知,有霧圖像的飽和度- 亮度特征值是隨著霧天條件下場景點光學厚度值的增加而呈指數衰減的。
提取霧天圖像(見圖2(a))的飽和度- 亮度特征,結果如圖2(h)所示,將圖2中這7個霧天圖像特征作為設計變量用于光學厚度代理模型的初步構建。
根據霧天圖像的特征,可采用代理模型方法建立霧天圖像中像素點光學厚度的代理模型。圖3為采用代理模型方法建立霧天圖像中像素點光學厚度估計模型的流程圖。

圖3 霧天圖像中像素點光學厚度代理模型的建立Fig.3 Flow chart of surrogate modeling method
建立光學厚度估計代理模型的主要步驟為:
1)準備大量合成有霧圖像特征值作為實驗數據;
2)通過實驗數據采用代理模型方法,初步擬合出光學厚度代理模型;
3)采用敏感度分析方法,選擇與圖像內容無關、僅與圖像霧濃度相關的特征作為模型構建的設計變量;
4)篩選了設計變量后,重新擬合代理模型,對修正后的代理模型進行誤差分析,即獲得高精度代理模型。此模型可準確地給出光學厚度與重要的霧相關特征之間的數學關系。
1.3.1 訓練數據的準備
模型擬合的關鍵問題是,要具備足夠的實驗數據來建立霧天圖像中像素點光學厚度估計的代理模型。這就需要足夠多的同一場景無霧圖像及具有不同霧濃度的有霧圖像,但是在現實中很難同時獲取到同一場景在不同天氣條件下的多幅圖像。Tang等[10]提出了一種基于無霧圖像來合成有霧圖像的方法,通過此方法可以獲取足夠的實驗數據。為了得到以霧天圖像像素點的光學厚度為目標函數的代理模型,需要準備用于模型擬合的實驗數據,具體流程如圖4所示。

圖4 光學厚度估計模型擬合的實驗數據準備流程Fig.4 Process of generating the training data
首先,需要獲取大量的自然無霧圖像;其次,為每一幅圖像的所有像素點賦予同一光學厚度值,光學厚度取值范圍是[0.01,3.00],這是根據(2)式中透射率的取值范圍t∈[0.05,0.99]而推導出的,從而生成了多幅不同值的光學厚度圖;最后,對于每幅無霧圖像,加以具有不同值的光學厚度圖和隨機大氣光A(A∈[180, 255]),根據(1)式和(2)式合成其對應的多幅有霧圖像。每幅光學厚度圖都具有統一的D值,為每幅無霧圖像生成10幅光學厚度圖,以合成10幅具有不同霧濃度的有霧圖像,且每幅合成的有霧圖像上所有像素點都具有相同的霧濃度。將100幅無霧圖像和1 000幅合成有霧圖像作為實驗數據用于光學厚度估計回歸模型的建立。
1.3.2 光學厚度代理模型的初步建立
對于構建代理模型,主要存在著兩類方法:一類是參數化方法,主要有多項式回歸(PRG)模型法[11]、克里金法[12];另一類是非參數化方法,例如徑向神經網絡(RBNN)法[13]。由于參數模型估計方法旨在確定目標函數和設計變量之間關系的確切函數形式,參數化模型方法中的PRG模型[11]結構簡單、適應性強,所以選擇PRG模型法來構建光學厚度的代理模型。
選擇2階PRG模型作為霧天圖像的像素點光學厚度估計的代理模型,霧天圖像的相關特征fp(p=1,2,…,7)分別為暗通道、局部對比度、飽和度- 亮度、色度、色度方差、彩色度和圖像銳度,作為初步模型建立的7個獨立設計變量,以構建光學厚度的目標函數。在構建代理模型之前,所有的獨立變量值和目標變量都歸一化到[0,1]之間,基于統一的上限和下限以控制實驗數據,使得它們具有相近的取值范圍。自變量fp(p=1,2,…,7)歸一化轉化為f′p(p=1,2,…,7),光學厚度歸一化轉化為D′(x),將此7個歸一化自變量和光學厚度進行代理模型的初步擬合,則光學厚度估計的2階PRG模型可表達為
D′(x)=-0.622 3+2.607 5f′1(x)+2.088 2f′2(x)-
1.640 9f′3(x)+1.958 3f′4(x)-0.439 5f′5(x)+…+
1.221 4f′6(x)f′7(x)-0.364 4f′72(x).
(8)
1.3.3 光學厚度代理模型的敏感度分析
如(8)式所示,光學厚度估計的PRG模型由7個獨立的設計變量擬合出來,此多項式模型中共包含36個單項式,整個擬合過程計算復雜度高。為了解決這個問題,需要選取少量但更重要的設計變量進行一個更簡單的擬合過程。通過求得的PRG模型中各項系數,來計算不同設計變量對于目標函數的重要程度,那些對于目標函數無重要影響的設計變量就可忽略。通過上述降維過程,可降低模型擬合的計算復雜度,同時提高擬合模型的精確度,這就是基于代理模型方法的敏感度分析。代理模型的敏感度分析有很多具體的方法,其中Sobol方法[14]被廣泛用于工程問題的分析與應用。
表1給出了7個設計自變量的敏感度值。對總體敏感度值進行比較,f′4、f′3、f′6和f′1是敏感度值較大的4個變量。這表明色度、飽和度- 亮度、彩色度和暗通道特征更多地貢獻于目標函數。但是,是否所有這些具有較高敏感度的設計變量對于代理模型都是必不可少的,將在1.3.4節進一步分析。然而,f′2、f′5和f′7對應于局部對比度、色度方差和銳度特征,作為敏感度較低的設計變量,它們對目標函數的貢獻較小,在代理模型的重新構建中被忽略。

表1 代理模型構建的設計自變量敏感度分析
可根據敏感度分析對模型構建過程中的變量進行選擇,精簡代理模型構建所需自變量個數,有利于提高模型擬合精度,降低計算復雜度。
1.3.4 光學厚度代理模型的誤差分析及修正

采用所獲得的高精度代理模型求得光學厚度估計值,并用三維等值面圖表示。如圖5所示,三維等值面圖中不同顏色代表不同等值面,且每個等值面上的所有點具有相同數值。作為示例,圖5(a)給出了在一幅無霧圖像,圖5(b)給出了圖5(a)的合成有霧圖像,此合成有霧圖像上所有像素點的歸一化光學厚度值均為0.45. 從合成有霧圖像中計算得到設計變量f′1、f′3和f′4的值,代入到修正后的高精度光學厚度估計的代理模型中,并獲得目標函數值,在圖5(c)中用“黑色圓點”表示。可以看到,大多數“黑色圓點”位于0.35和0.55的等值面之間,并且在實驗真值0.45的等值面附近。這說明大多數目標函數的估計值與實驗真值之間的誤差很小,而且修正后的光學厚度估計代理模型的精度很高。

表2 不同設計變量組合重構的代理模型的誤差分析

圖5 基于重建代理模型的光學厚度估計值三維等值面分布Fig.5 3D contour distribution graph of optical depth estimation based on the surrogate model
霧天圖像中像素點的光學厚度采用代理模型進行估計后,霧濃度圖即可通過以下步驟獲得:

圖6 霧天圖像的霧濃度圖求解及圖像去霧處理Fig.6 Estimation of fog density map and image defogging
1)根據(4)式和(2)式計算得出霧天圖像的透射率圖;
2)將獲得的透射率圖由引導濾波器[9]進行濾波,使邊緣特征清晰;
3)霧天圖像中每個場景點的霧濃度可根據(5)式進行估計。因此,霧天圖像(見圖6(a))的霧濃度圖可獲得,并如圖6(b)所示。
對于圖像去霧,大氣光A的估計是必不可少的一步。在霧濃度圖中選擇亮度值排在前0.1%的最亮像素點,如圖6 (b)中紅色矩形區域內的像素點,尋找這些像素點在霧天圖像(見圖6(a))中所對應的區域,用藍色矩形框標出,再選擇區域內像素點的平均亮度值作為大氣光A值。
對于輸入的霧天圖像,當透射率t和大氣光A都已知時,可以通過(3)式獲得去霧后的圖像,如圖6(c)所示。
本文提出的基于光學厚度代理模型的霧濃度估計及圖像去霧方法,簡稱為SMOD霧濃度估計方法及SMOD去霧方法。Tang等[10]采用霧相關特征進行隨機森林分類,從而估計大氣透射率,實現圖像去霧處理,簡稱為RFT去霧方法。Zhu等[15]是通過建立飽和度和亮度的線性模型對景深進行估計,實現圖像去霧處理,簡稱為LMD去霧方法。由于SMOD去霧方法與RFT去霧方法、LMD去霧方法類似,均是建立霧相關特征與大氣散射模型參數的數學關系,來實現圖像去霧,因此將本文提出的SMOD方法與以上兩種方法進行比較,以確定SMOD方法的有效性與優越性。

表3 采用RFT、LMD與SMOD方法對合成有霧圖像的霧濃度估計結果
Tab.3 Comparison of fog density estimations on synthetic foggy images

表4給出了自然界真實的霧天圖像通過不同方法去霧處理后的圖像視覺效果比較。由表4可以看出:RFT方法去霧結果的顏色比本應該有的顏色更暗,這是由高估霧濃度而導致,并且出現明顯的顏色畸變,比如在天空區域;LMD方法在去霧圖像中仍然具有明顯的霧氣殘留,并且在一些區域比如山的和樹木的紋理被模糊;與上述兩種方法的去霧結果相比,SMOD方法呈現更好的去霧圖像,有著清晰的場景細節和恢復出的自然顏色。
本文建立了霧天圖像的像素點光學厚度估計的代理模型,提出基于代理模型的霧濃度估計和圖像去霧方法。得到主要結論如下:
表4 采用RFT、LMD與SMOD方法獲得真實有霧圖像的去霧結果
Tab.4 Comparison of image defogging results on real-world images

1)研究了霧天圖像相關特征,提出一個全新的基于HSV彩色空間的飽和度- 亮度聯合特征,證明飽和度- 亮度特征與霧天圖像的霧氣濃度有著重要的相關性。
2)經過敏感度分析,選擇暗通道、飽和度- 亮度和色度這3個重要的霧相關特征作為設計變量,以光學厚度為目標函數建立了代理模型。
3)基于光學厚度估計的代理模型提出了一種霧濃度估計的表達式,可確定霧濃度水平具體值。
4)通過對比實驗,證明了提出方法在去霧圖像的視覺化清晰效果和去霧結果的準確程度都勝過現有的先進去霧方法,可以更好地應用于圖像去霧處理。
本文提出的SMOD霧濃度估計方法及去霧方法為圖像的后期信息處理作了重要的鋪墊并打下了良好的基礎,同時為機器學習在圖像處理領域得以更廣泛的應用起到了推動作用。