付 輝,吳 斌,張紅英,徐 進(jìn)( 西南科技大學(xué) 信息工程學(xué)院,四川 綿陽 621000 )
?
環(huán)境光模型暗通道快速去霧處理
付 輝,吳 斌,張紅英,徐 進(jìn)
( 西南科技大學(xué) 信息工程學(xué)院,四川 綿陽 621000 )
摘要:傳統(tǒng)的暗通道先驗算法對單幅圖像處理時間長,復(fù)雜度高,圖像質(zhì)量能繼續(xù)優(yōu)化。本文提出改進(jìn)算法,結(jié)合LOG邊緣檢測和四叉樹快速定位大氣光顏色矢量A值區(qū)間,應(yīng)用skyline較為精準(zhǔn)地確定A值;利用分區(qū)間維納濾波兼得傳統(tǒng)維納濾波的保邊去噪能力強(qiáng)的優(yōu)點,抑制透射圖暈輪效應(yīng),并通過膨脹和腐蝕進(jìn)一步優(yōu)化投射圖邊緣。大量測試圖像表明,改進(jìn)算法在優(yōu)化去霧圖像視覺效果的前提下節(jié)約處理時間。
關(guān)鍵詞:暗通道先驗;邊緣檢測;維納濾波;膨脹;腐蝕
由于天空懸浮粒子能散射和吸收光線形成霧霾,從而造成室外拍攝成像的對比度和色度都較低。在室外圖像質(zhì)量要求較高的應(yīng)用中,如軍事敵情監(jiān)控,刑偵犯罪細(xì)節(jié)斟酌,汽車前方障礙物觀測等,都需要對降質(zhì)圖像做去霧處理,還原目標(biāo)細(xì)節(jié)。對霧霾處理能顯著提高圖像質(zhì)量,使之更好地應(yīng)用于高級處理領(lǐng)域。
近年來,大量去霧算法被提出,并在單幅圖像去霧領(lǐng)域取得突破進(jìn)展。Tan[1]基于大量觀察和統(tǒng)計得出晴天比霧天圖像有更高對比度的結(jié)論。雖對比度提升顯著,但所得圖像略微偏離場景原先色度,此外圖像出現(xiàn)暈輪效應(yīng),圖像細(xì)節(jié)不連續(xù)。Fattal[2]假定光在介質(zhì)中的傳播與物體表面陰影不相關(guān),即透射率和場景反照率之間無約束性。該去霧方式依賴于色度變化,不適合處理灰度級圖像,某些場景(如濃霧)的透射率和場景反照率不滿足上述假設(shè)。Tarel[3]引入一種基于中值濾波的新思路,復(fù)原場景清晰可見,額外引入的噪聲數(shù)據(jù)少,但其自動調(diào)整能力和靈活性稍差。Kopf[4]基于3D模型以及場景深度信息完成去霧,由于需訪問數(shù)字地圖或谷歌地形圖等,應(yīng)用方式有一定局限性。Schechner[5]指出光線散射是部分大氣粒子偏振引起的,并基于該理念利用多幅圖像不同角度偏振模型實現(xiàn)去霧目的,但此模型的工程應(yīng)用性偏弱。Narasimhan[6]從RGB色度空間推出基于二進(jìn)制的物理散射模型,得出無霧場景結(jié)構(gòu)可以通過對比兩個或者兩個以上的氣象圖,還原同一場景無霧細(xì)節(jié)的結(jié)論。該方法基于大氣散射系數(shù)不改變光線波長的假設(shè),但此結(jié)論僅在近似霧天的情況成立。He[7]通過統(tǒng)計分析大量戶外無霧圖片,得出大多數(shù)不接近天空光線的物體至少有一個顏色通道值較低的結(jié)論,進(jìn)而提出暗通道先驗去霧算法。暗通道先驗去霧是迄今為止最有效的去霧方法。
但當(dāng)場景中主體與天空光亮顏色相近時,傳統(tǒng)的暗通道先驗算法去霧效果將大打折扣。而且該方法對灰度區(qū)域處理不佳,并在深度不連續(xù)之處將出現(xiàn)暈輪效應(yīng),同時采用的軟摳圖方法占用大量時間資源。針對上述問題,本文在暗通道先驗方法基礎(chǔ)上加以改進(jìn),使用快速的新方法實現(xiàn)對大氣光顏色矢量值A(chǔ)的估計;通過改進(jìn)的分區(qū)維納濾波及圖像形態(tài)學(xué)[12]方法對透射率進(jìn)行優(yōu)化,提高了去霧圖像視覺效果,同時節(jié)約處理時間。
1.1 霧天圖像物理模型
計算機(jī)視覺廣泛應(yīng)用的霧天成像物理模型[6]如下:
其中:F(x, y)為圖像經(jīng)過衰減和散射后的最終值,R(x, y)為此場景原始像素值,t(x, y)代表經(jīng)過介質(zhì)的光線,即到達(dá)成像設(shè)備中未被散射和吸收的部分,A代表大氣光顏色矢量。模型(1)中,對含有N個像點的彩色圖像,存在3N個約束量,4N+3個未知量。其中,R(x, y)含3N個未知量,t(x, y)有N個未知量,A含3個未知量。通過僅有信息,圖像去霧過程由霧霾圖像F(x, y),t(x, y)和A值估計原始圖像R(x, y)。根據(jù)病態(tài)方程處理技術(shù),需要做特定的假設(shè)和先驗信息來實現(xiàn)圖像去霧的目的。
依據(jù)現(xiàn)有物理模型,到達(dá)觀測者的圖像觀測強(qiáng)度由兩個部分構(gòu)成:一是直接衰減模型,即Rdark(x,y)→0,散射光線隨距離增加在介質(zhì)中發(fā)生衰減的部分,導(dǎo)致場景中色彩變化;二是環(huán)境光模型,用A(1-t(x, y ))表示。環(huán)境光是造成顏色改變的最基本因素,由自然環(huán)境中光照散射產(chǎn)生,包括直射光線,漫反射光線和大地反射光線。模型分別如圖1和圖2所示。
圖1 衰減模型Fig.1 Attenuation model
圖2 環(huán)境光模型Fig.2 Ambient light mode
1.2 暗通道先驗
He[7]統(tǒng)計大量室外無霧霾非天空背景的圖像,發(fā)現(xiàn)該類圖像至少有一個顏色通道像素值很低的結(jié)論,由此給出暗通道先驗?zāi)P?。在霧霾圖像中,暗通道像素值強(qiáng)度與大氣光線強(qiáng)度呈相關(guān)性,任意給定一幅圖像R(x, y),其暗通道為
式中:C
R是R(x, y)的顏色通道,?(x, y)為以像素點(x, y)為中心的方形區(qū)域。暗通道是由兩個最小值操作量共同作用的結(jié)果:表示每個像素點RGB顏色空間中的操作,起最小值濾波器的作用。
在暗通道區(qū)域中尋找一個最小顏色通道像素值量,由于R(x, y)除天空之外的區(qū)域暗通道值很低,近乎于零,即。若其暗通道出現(xiàn)大量亮度值大的像素,則存在兩種可能,即天空和霧霾。霧霾能提高暗通道的亮度值,由此采用暗通道值,可估計輸入圖像的霧霾程度。
He應(yīng)用大氣散射的物理模型等式(1),其變形如下:
并給出透射率t1(x, y)的估計式:
服務(wù)人類感知是圖像處理的目的,若徹底消除霧氣,得到圖像的效果不自然。基于該原因,He引入一個參數(shù)w0,可保留部分霧氣進(jìn)行調(diào)節(jié)。
并采用軟摳圖優(yōu)化t1(x, y),選取百分之一的最高霧氣灰度值來估測A值,代入式(1)可還原無霧圖像,其計算流程如圖3所示。
圖3 He方法流程圖Fig.3 He’s method flowchart
很多去霧算法選取視覺效果濃烈的霧氣區(qū)來估計大氣光顏色矢量A,使得某些鏡面反射物質(zhì),如水面或反光體表面,被錯誤地用來估計大氣光顏色矢量A。He取整幅圖像像素值最大的1%作為大氣光顏色值A(chǔ),精度不高。本文先利用LOG算子進(jìn)行邊緣檢測,再通過四叉樹結(jié)合skyline算法尋找大氣光最大值,可較準(zhǔn)確地定位A值。并通過維納濾波,圖像形態(tài)學(xué)方法對透射率優(yōu)化,提高算法處理效率。
2.1 邊緣檢測分區(qū)
本文利用LOG算子對霧霾圖像F(x, y)處理,再對其像素值逐行查找和搜索,并檢測邊緣兩側(cè)15×15區(qū)域像素灰度平均值的大小,根據(jù)大氣光顏色矢量A像素值大的特點,能粗略地判斷天空區(qū)域的位置。LOG算子是拉普拉斯算子基礎(chǔ)上的改進(jìn),并通過求取二階導(dǎo)數(shù)零點位置確定邊緣。該方法對邊緣處圖像噪聲尤為敏感,其引入二維高斯進(jìn)行模糊[9],能較好地獲得圖像邊緣,同時平滑圖像,消除圖像中存在的部分小孤立點和結(jié)塊狀。常用的LOG算子離散化模版:
通過對霧霾圖像與LOG算子的離散化模板卷積運(yùn)算實現(xiàn)對F(x, y)的邊緣檢測[10],其邊緣檢測效果如圖4(b)。輸出后的圖像:
2.2 四叉樹估計A值
采用LOG算法對霧霾圖像F(x, y)邊緣檢測得F1(x, y),并對邊緣兩側(cè)區(qū)域查找,根據(jù)天空區(qū)域像素值大的特點確定天空區(qū)域m,再進(jìn)行四叉樹構(gòu)造skyline算法,得到的大氣光顏色矢量A值是較精確的。圖4(c)首先將天空區(qū)域m劃分為四個部分,計算每個部分的灰度平均值并比較。再取灰度平均值最大的一塊m1繼續(xù)分塊,至分塊的尺寸小于給定值a,并對塊m1進(jìn)行skyline搜索。skyline的基本思想為尋找不受其他點支配的點組合。支配的定義是:點支配另外一個點,當(dāng)且僅當(dāng)時,至少有一個維度滿足。
圖5中B2受B1點支配,B4,B5受B3點支配,B5,B7受B6點支配,而B1,B3,B6不受其他點支配,為skyline點。對m1應(yīng)用skyline搜索算法尋找灰度值最大的點Fmax(x, y),該灰度值近似為大氣光顏色矢量值A(chǔ)。
圖4 (a) 原始圖像; (b) LOG邊緣檢測; (c) 大氣光顏色值估計Fig.4 (a) Original image; (b) LOG edge detection; (c) Estimated value of atmospheric light color
圖5 skyline搜索原理圖Fig.5 Schematics of skyline search
2.3 改進(jìn)的分區(qū)維納濾波[8]結(jié)合圖像形態(tài)學(xué)優(yōu)化透射率
由于透射率隨景深的變化而變化,并在邊緣處快速變化,使得處理后的霧霾圖像邊緣處往往出現(xiàn)暈輪效應(yīng),實質(zhì)是透射率t(x, y)選取值偏差大。He采用Softmatting中規(guī)模較大的系數(shù)矩陣處理透射率,但處理代價大,耗時長,計算t(x, y)占用了大部分時間。對此,本文對透射率處理實現(xiàn)改進(jìn),采用改進(jìn)的分區(qū)維納濾波[8]和圖像形態(tài)學(xué)[12]中的膨脹和腐蝕優(yōu)化透射率。
透射率t(x, y)和景深d(x, y)成指數(shù)關(guān)系,算法處理中假定一定區(qū)域內(nèi)的景深相同,即t(x, y)一定。由于邊緣處景深偏差較大,因而所選取濾波算法在去除噪聲的同時,可以盡量完整地保留邊緣細(xì)節(jié)。傳統(tǒng)的維納濾波去除噪聲效果明顯,視覺上存在良好的感官,但圖像邊緣區(qū)的振鈴效應(yīng)嚴(yán)重。本文選取改進(jìn)的分區(qū)維納濾波[8]對透射率處理可避免傳統(tǒng)維納濾波的不足。傳統(tǒng)維納濾波是根據(jù)最小均方差的卷積模型,其頻域表達(dá)式:
其中:T(u, v)為透射率圖t(x, y)的傅里葉變換,H*(u,v)為退化算子H(u, v)的復(fù)共軛,Sf(u, v)為原始圖像的功率譜,Sn(u, v)為噪聲功率譜,T2(u, v)為輸出圖像。
改進(jìn)的分區(qū)維納濾波[8]對圖像分為平坦、紋理和邊緣三區(qū)。大量實驗表明,取平坦區(qū)γflat= 10-2,紋理區(qū)γvein= 10-3,邊緣區(qū)γedge= 10-5值時,復(fù)原圖像在亮度、邊緣保持、去噪程度上達(dá)到最佳效果。傳統(tǒng)維納濾波則對整幅圖像取值,當(dāng)γ=10-5時效果最優(yōu)。
式(10)與式(11)中Mlocal(x, y )為局部均值,δlocal(x, y)為局部方差,(x, y)為圖像像素點,2P +1和2Q +1為使用模板的大小。選擇的模板應(yīng)與暗通道圖像分塊匹配,因而選取15×15的模板,并求取圍繞在(x, y)周圍2P +1和2Q +1像素值的均值和方差。
首先計算初始透射率圖的局部方差,并獲取和保存局部方差最大值δmaxlocal(x, y),將圖像分成上述三區(qū)處理后,再融合。應(yīng)用改進(jìn)的分區(qū)維納濾波可將透射率中的塊效應(yīng)基本清除。但處理后透射率圖的邊緣與待處理霧霾圖像F(x, y)邊緣仍有偏離,需深入處理。
本文對T2(u, v)采用傅里葉反變換得t2(x, y),再利用圖像形態(tài)學(xué)方法對t2(x, y)做后續(xù)處理,為保留圖像細(xì)節(jié)區(qū)域和景深突變區(qū)域,應(yīng)先采用膨脹處理,使圖像邊緣處部分的零散小細(xì)節(jié)連通;再進(jìn)行腐蝕操作,使邊緣向內(nèi)縮小。由于透射率的像素值是二值化的,算法實質(zhì)為求解塊中的最小值。
對t2(x, y)進(jìn)行腐蝕處理的程度取決于塊大小,腐蝕程度過大或過小都將出現(xiàn)與原圖F(x, y)不匹配的邊緣,通常取塊的1/2。與He方法對比,求得的透射率雖未保留所有邊緣細(xì)節(jié),但對整體信息和邊緣部分的處理效果,與真實透射率相近。從圖6可看出利用改進(jìn)的分區(qū)維納濾波[8]結(jié)合圖像形態(tài)學(xué)優(yōu)化透射率的方法可行。
圖6 (a) 為原始霧霾圖像; (b) 為霧霾圖像暗通道;(c) 為初始投射圖; (d) 為本文的投射圖Fig.6 (a) Original haze map; (b) Dark-channel of haze image; (c) Original projection map; (d) The projection map in our paper
2.4 霧霾圖像還原
本文通過LOG邊緣檢測和四叉樹構(gòu)造skyline算法尋找大氣光顏色矢量A,采用改進(jìn)的分區(qū)維納濾波和圖像形態(tài)學(xué)[12]處理中的膨脹和腐蝕優(yōu)化透射率得到t3(x, y)。至此,利用所得的A,t3(x, y) ,F(x, y )還原無霧圖像R(x, y) ,具體步驟見圖7。
圖7 改進(jìn)算法流程圖Fig.7 Improved algorithm flowchart
實驗所用操作系統(tǒng)為windows 7,并在 Inter corei7-2670QM CPU (5GHz), 4 GB內(nèi)存的操作平臺上運(yùn)行,基于opencv2.4.8對本文算法進(jìn)行驗證。
3.1 去霧效果的對比
為驗證算法的可靠性,利用日常捕獲和網(wǎng)絡(luò)搜素所得的大量霧霾圖片進(jìn)行測試。圖8給出了He[7], Retinex[11]和本文改進(jìn)方法的去除霧霾圖像后效果對比。
本文算法與He算法和Retinex算法對比發(fā)現(xiàn),Retinex算法處理后顏色失真嚴(yán)重,He算法處理后天空區(qū)域的效果不理想。成因是其處理明亮白灰色區(qū)域時不匹配暗通道先驗的理論模型,導(dǎo)致透射率的取值有偏差。利用改進(jìn)算法能有效地解決該問題,得到接近真實值的透射率。處理后的霧霾圖像,較好地再現(xiàn)圖像細(xì)節(jié),色度與日光下真實場景相近。
3.2 處理速度和運(yùn)算耗時
對于一幅分辨力為600×400的圖像,He方法處理時間為14.560 s,其中計算透射率消耗10.200 s,占用了大部分處理時間。Retinex處理時間為768.5 ms,雖時間上占優(yōu),但復(fù)原圖像效果失真嚴(yán)重。本文算法處理時間為821.67 ms,兼顧視覺效果。表1給出不同像素值大小的圖片算法處理時間的測試結(jié)果,與暗通道先驗算法相比,改進(jìn)算法處理時間顯著縮短,本文算法具有一定的魯棒性。為驗證更多不同分辨力圖像的處理效率,表中列出測試圖1和測試圖2加以對照。
圖8 (a),(e),(i) 為原始霧霾圖像; (b),(f),(j) 為He方法去霧結(jié)果; (c),(g),(k) 為Retinex方法去霧結(jié)果; (d),(h),(l)為本文方法去霧結(jié)果Fig.8 (a),(e),(i) Original haze image; (b),(f),(j) Result of He method; (c),(g),(k) Result of Retinex method; (d),(h),(l) Result of our method
表1 運(yùn)算效率對照Table 1 Result of operation rate calculation
本文針對He估計透射率計算時間長,處理周期慢,及對大氣光顏色矢量A估計偏差大,提出改進(jìn)。對A估計方法進(jìn)行創(chuàng)新,采用LOG邊緣檢測和四叉樹構(gòu)造skyline尋找大氣光顏色矢量A。并通過改進(jìn)的分區(qū)維納濾波以及圖像形態(tài)學(xué)方法對透射率實現(xiàn)優(yōu)化,其處理邊緣景深突變處導(dǎo)致的暈輪效應(yīng)效果明顯。本文算法優(yōu)化去霧圖像視覺效果的同時縮短處理時間,優(yōu)化效果較為理想,真實地還原了清晰無霧場景的狀態(tài)。下一步主要針對縮短去霧處理的時間,并將本文的單幅圖像去霧算法應(yīng)用在視頻去霧中。
參考文獻(xiàn):
[1] Tan R. Visibility in bad weather from a single image [C]// Proceedings of IEEE Conference on Computer Vision and Pattern Recognition,Washington DC,USA,Jun 23-28,2008:2347-2354.
[2] Fattal R. Single image de-hazing [J]. ACM Transactions on Graphics(S0730-0301),2008,27(3):721-729.
[3] Tarel J P,Hautiere N. Fast visibility restoration from a single color or gray level image [C]// Proceedings of the 12th IEEE International Conference on Computer Vision,Kyoto,Japan,Sep 29-Oct 2,2009:2201–2208.
[4] Kopf J,Neubert B,Chen B,et al. Deep photo:model-based photograph enhancement and viewing [J]. ACM Transition Graph(S1557-7368),2008,27(5):116-1-116-10.
[5] Schechner Y Y,Narasimhan S G,Nayar S K. Instant de-hazing of images using polarization [C]// Proceedings of IEEE Conference on Computer Vision and Pattern Recognition,Hawaii,USA,Dec 9-14,2001,1:325-332.
[6] Narasimhan S G,Nayar S K. Vision and the atmosphere [J]. International Journal of Computer Vision(S0920-5961),2002,48(3):233-254.
[7] HE Kaiming,SUN Jian,TANG Xiaoou. Single image haze removal using dark channel prior [C]// Proceedings of IEEE Conference on Computer Vision and Pattern Recognition,Washington D C,USA,Jun 20-25,2009:1956-1963.
[8] 姜樹明,段彩艷. 基于分區(qū)改進(jìn)的維納濾波圖像復(fù)原 [J]. 山東科學(xué),2012,25(4):40-46.
JIANG Shuming,DUAN Caiyan. An improved partition image restoration based on Wiener Filter [J]. Shandong Science,2012,25(4):40-46.
[9] 王保云,張榮,尹東,等. 基于最強(qiáng)方向梯度的圖像模糊度評價方法 [J]. 光電工程,2013,40(5):80-86.
WANG Baoyun,ZHANG Rong,YIN Dong,et al. A Blurriness assessment method based on maximal oriented gradient [J]. Opto-Electronic Engineering,2013,40(5):80-86.
[10] 鄒永星,周仁魁,羅秀娟,等. 一種提取圖像目標(biāo)邊緣的新方法 [J]. 光電工程,2005,32(6):76-79.
ZOU Yongxing,ZHOU Renkui,LUO Xiujuan,et al. New method for image target edge extraction [J]. Opto-Electronic Engineering,2005,32(6):76-79.
[11] 張尚偉,曾平,羅雪梅,等. 具有細(xì)節(jié)補(bǔ)償和色彩恢復(fù)的多尺度Retinex色調(diào)映射算法 [J]. 西安交通大學(xué)學(xué)報,2012,46(4):32-37.
ZHANG Shangwei,ZENG Ping,LUO Xuemei,et al. Multi-Scale retinex with color restoration and detail compensation [J]. Academic Journal of Xi’an Jiaotong University,2012,46(4):32-37.
[12] 鄒江威,陳曾平. 應(yīng)用形態(tài)學(xué)與圖像流法的空間小目標(biāo)提取方法 [J]. 光電工程,2005,32(4):13-16.
ZOU Jiangwei,CHEN Zengping. Small space target extraction based on morphology and image flow method [J]. Opto-Electronic Engineering,2005,32(4):13-16.
Fast Image Dehazing Based on Dark-chanel Physical Model
FU Hui,WU Bin,ZHANG Hongying,XU Jin
( School of Information Engineering, Southwest University of Science and Technology, Mianyang 621000, Sichuan Province, China )
Abstract:In order to overcome the defects of the traditional de-hazing algorithm based on dark channel, such as a long working time, high complexity, bad image quality, and so on, an improved algorithm is proposed. This proposed algorithm firstly uses edge detection and quad-tree algorithms to locate the interval of the atmospheric light A fast and uses the skyline algorithm to obtain the value of A precisely. Then, use the improved Wiener filter, which has the abilities of de-noising and edge preserving, to inhibit halo effect of the transmission. Finally, optimize the edge information of the transmission by dilation and erosion. A plenty of experimental results show that the improved algorithm has a better visual effect and a lower time consumption comparing with the traditional de-hazing algorithms.
Key words:dark channel prior; edge detection; Wiener filter; dilation; erosion
作者簡介:付輝(1991-),女(漢族),山西陽泉人。碩士研究生,主要研究工作是圖像處理,DSP。E-mail: 1285110730@qq.com。
基金項目:中國科學(xué)院“西部之光”人才培養(yǎng)計劃(13zs0106);四川省科技廳科技支撐計劃項目(2014SZ0223, 2015GZ0212)
收稿日期:2015-04-08;收到修改稿日期:2015-07-13
文章編號:1003-501X(2016)02-0082-07
中圖分類號:TP391.4
文獻(xiàn)標(biāo)志碼:A
doi:10.3969/j.issn.1003-501X.2016.02.014