申懷波,王永康,張孝崢
(中國北方車輛研究所,北京 100072)
基于暗原色先驗的圖像去霧優(yōu)化技術(shù)
申懷波,王永康,張孝崢
(中國北方車輛研究所,北京100072)
由于霧霾等大氣散射作用會使戰(zhàn)場環(huán)境獲取的圖像質(zhì)量退化,圖像去霧可以大幅度提升視覺效果,方便火控系統(tǒng)目標(biāo)識別與跟蹤。基于暗通道先驗理論提出一種改進的中值濾波算法,針對不同區(qū)域使用不同大小的濾波窗口,可以快速有效地對透射率細(xì)化,避免邊緣效應(yīng)。并且還提出了天空區(qū)域透射率優(yōu)化算法,去除了天空區(qū)域的紋理和斑塊效應(yīng)。實驗結(jié)果表明,該算法具有速度快并且效果好的特點。
去霧算法,暗通道先驗,透射率優(yōu)化
圖像作為感知戰(zhàn)場最直觀的信息,為發(fā)現(xiàn)和識別目標(biāo)帶來極大便利。然而,由于受到惡劣天氣的影響,使得采集到的圖像質(zhì)量受到極大退化。如在有霧的環(huán)境中,由于大氣散射的作用,拍攝出來的圖像色彩失真、對比度和能見度降低,圖像質(zhì)量退化嚴(yán)重影響了圖像信息的提取與應(yīng)用,對火控系統(tǒng)的目標(biāo)識別與跟蹤帶來嚴(yán)峻挑戰(zhàn)。因此,快速和高效的圖像去霧算法成為當(dāng)前研究熱點。
圖像去霧算法主要分為兩類:一類是基于圖像增強的算法,另一類是基于圖像復(fù)原的算法。基于圖像增強的方法大多基于直方圖均衡和Retinex算法,通過增加圖像亮度或?qū)Ρ榷?,突出?xì)節(jié)信息,從而減小霧對圖像的干擾。如Tan[1]通過增加復(fù)原圖像的局部對比度來達(dá)到去霧的目的,但是這種方法由于沒有考慮透射率,結(jié)果會使部分色彩過度飽和失真。基于圖像復(fù)原的去霧算法利用已有的模型和觀測到的數(shù)據(jù)反演退化過程,從而復(fù)原得到清晰的圖像。如Oakley[2]利用測得的場景景深信息,然后對光照分布進行修正從而實現(xiàn)去霧。但是,該方法得到的透射率偏差較大,不能有效改善降質(zhì)圖像質(zhì)量。
HE[3]等人基于戶外無霧圖像統(tǒng)計規(guī)律,提出了基于暗通道先驗的單幅圖像去霧算法。根據(jù)暗通道先驗規(guī)律估算透射率,并且采用軟摳圖算法對透射率進行細(xì)化,對降質(zhì)圖像去霧產(chǎn)生了較好的效果。但是該算法復(fù)雜度高,計算量大,計算速度和效率比較低。
本文基于暗原色先驗規(guī)律,提出了改進的中值濾波算法,改善了中值濾波在圖像去霧時造成的黑色斑點和去霧后圖像不自然等缺點。并針對原算法對天空區(qū)域不適用而造成去霧后圖像模糊現(xiàn)象,提出了透射率修復(fù)算法,提高了去霧圖像天空區(qū)域的視覺效果。
1.1大氣散射物理模型
根據(jù)大氣散射理論[4],在計算機視覺領(lǐng)域,廣泛使用以下公式:
其中,I(x)是指觀測到的像素顏色強度,J(x)表示場景的真實亮度。A表示圖像總體大氣光強。t(x)為大氣透射率,表示場景中物體反射的光線沒有發(fā)生散射而直接傳輸?shù)綌z像機的比例。J(x)t(x)表示場景信息在傳輸過程中的衰減。A(1-t(x))表示由于大氣散射作用導(dǎo)致圖像質(zhì)量下降。圖像去霧的目的就是從I(x)、t(x)和A中求出原圖像J(x)。
1.2暗原色先驗去霧
何凱明等人通過對晴朗天氣下大量戶外無霧圖像統(tǒng)計發(fā)現(xiàn),絕大多數(shù)無霧圖像的每個局部區(qū)域,R、G、B 3個通道中至少一個顏色通道具有強度值很低的像素。公式定義如下:
Jc代表J的一個顏色通道,而Ω(x)是以x為中心的一塊方形區(qū)域。除了天空區(qū)域Jdark(x)的值總是很低,甚至趨近于0。則Jdark(x)稱為J的暗原色,并把以上規(guī)律稱為暗原色先驗。
根據(jù)暗原色先驗規(guī)律,透射率t'(x)計算過程如下:
假設(shè)全球大氣光強度A已知,并且在Ω(x)方形區(qū)域內(nèi)透射率t'(x)保持不變,有:
為了使去霧后,圖像更加真實,對上式加入調(diào)整因子ω,表示去霧程度的大小。該值可根據(jù)具體情況進行選取,原文中取ω為0.95。
則透射率t'(x)為:
全球大氣光A通常為常量,HE算法中求取過程如下:首先選取圖像暗通道中最大的0.1%像素,然后找到這些像素在原有霧圖像中對應(yīng)的點,選取其中亮度最大的作為圖像大氣光估計。
至此,理論上根據(jù)求得的透射率t'(x)和A可對原圖像還原。然而,原算法對透射率估計過于粗糙,導(dǎo)致去霧后圖像存在較明顯邊緣效應(yīng)。原圖和去霧圖如圖1所示。因此,十分有必要對透射率進行細(xì)化。
圖1 含霧圖及粗略透射率去霧圖
HE等人利用軟摳圖[5]的方法,可以有效去除holo效應(yīng)。但該算法計算量大,不能達(dá)到實時去霧的目的。HE又提出用引導(dǎo)濾波[6]代替軟摳圖對透射率進行細(xì)化。但是計算較復(fù)雜,限制了該算法后續(xù)的代碼移植和硬件實現(xiàn)。并且HE等人的算法對天空等大面積明亮區(qū)域不適用,去霧后圖像天空處出現(xiàn)較明顯紋理與斑塊效應(yīng)。文獻(xiàn)[5]提出了用中值濾波代替HE的最小值濾波算法,但去霧后圖像會出現(xiàn)黑色斑點,并且像素間過度不自然。
2.1改進中值濾波細(xì)化透射率
采用暗通道先驗去霧后,圖像產(chǎn)生邊緣效應(yīng)是由于對景深突變處的透射率估計錯誤造成的。如窗口Ω(x)內(nèi),近景處像素強度值較小,而遠(yuǎn)景處強度值較大,則遠(yuǎn)景處的像素值經(jīng)最小值濾波后將會被低估,透射率t結(jié)果偏大。
中值濾波[5]是一種非線性低通濾波器,可以去除噪聲的同時,保持圖像的邊緣?;驹硎且源翱谥邢袼兀▁,y)為中心,將窗口內(nèi)所有的像素從小到大排列,取中間值為該中心像素的強度值。采用中值濾波代替窗口內(nèi)最小值濾波會避免這種估計錯誤。
若整幅圖像采用中值濾波,會發(fā)現(xiàn)去霧后圖像邊緣處,細(xì)節(jié)過于突出,像素間過渡不自然,并且濾波后圖像某些區(qū)域會產(chǎn)生黑色斑塊。這是由于在強度變化的邊緣,若某像素點強度值低(甚至趨于0),但窗口內(nèi)絕大多數(shù)像素值強度較大,中值濾波后該點取較大強度值,使透射率取值偏低所致。因此,對于強度值較低的局部暗區(qū)域,防止該點強度值因為窗口內(nèi)其他像素點被過度放大,將原濾波半徑減小。經(jīng)過大量實驗,我們發(fā)現(xiàn)對于明亮區(qū)域,中值濾波窗口半徑r1為4,窗口大小為9*9的效果較好。對于局部暗區(qū)域,窗口半徑r2取為1,即采用3*3的窗口,可以明顯減小邊緣區(qū)域像素被過度放大的現(xiàn)象,去除黑斑效應(yīng)。閾值K將整幅圖像劃分為亮區(qū)域與暗區(qū)域。為了方便計算,取K值為A*0.5。
實驗結(jié)果如圖2所示。
圖2 去霧后算法效果對比
從圖2可以看出,只采用中值濾波求暗通道圖對透射率進行優(yōu)化會使去霧后圖像出現(xiàn)黑色斑點,并且去霧后圖像像素間過渡不自然。采用改進的中值濾波算法后,黑色斑點消失,并且圖像平滑,視覺效果較好。
2.2天空區(qū)域透射率t優(yōu)化
大量實驗發(fā)現(xiàn),在亮度較高的區(qū)域找不到像素值趨近于0的點,也就是說暗通道先驗在這些區(qū)域不適用。在天空等區(qū)域,透射率t(x)為:
可以看出,在這些區(qū)域內(nèi),透射率t比原透射率大。為了更好地處理天空區(qū)域,本文首先分割天空區(qū)域,然后將透射率根據(jù)天空區(qū)域與非天空區(qū)域分別處理。
天空區(qū)域整體較平滑,相鄰像素間變化不大,因此,可以用像素間梯度信息來識別,梯度值越小表明該圖像越光滑。Sobel邊緣檢測算子用3*3鄰域的行與列之間的離散差計算梯度,輸入圖像在水平和垂直方向分別與模板進行卷積,輸出二值圖像,邊緣處標(biāo)記為1,非邊緣處標(biāo)記為0。
檢測出梯度小的區(qū)域后,天空區(qū)域具有較高亮度值,根據(jù)亮度閾值可以準(zhǔn)確地分割出天空區(qū)域。
由于天空區(qū)域真實透射率比暗通道得到的透射率大,為了正確求取t,定義:
圖3 原圖與天空區(qū)域分割圖
為了防止改進后天空區(qū)域透射率被度放大和防止對霧氣較濃區(qū)域過度去霧,本文對透射率t分別設(shè)置了上限tmax和下限tmin,此處tmax=1,tmin=0.1。即:
綜上所述,天空區(qū)域透射率優(yōu)化算法過程如下:
2.3求取去霧后圖像
根據(jù)上述所求得的大氣光強度A和透射率t,去霧后圖像可由下式求得:
為了驗證該算法的效率,在酷睿i5處理器,3 G內(nèi)存的計算機上基于matlab進行了試驗,并將該優(yōu)化算法與HE等人的暗原色先驗算法進行比較。本節(jié)將從圖像去霧的處理效果與處理時間兩方面進行對比。
3.1圖像去霧主觀效果
本文提出用改進的中值濾波代替最小值濾波求透射率和對天空區(qū)域的透射率優(yōu)化算法。圖6與圖7分別給出了無天空區(qū)域與有天空區(qū)域,本文算法與文獻(xiàn)[3]算法的效果對比圖。
圖5 有霧圖像
圖6 無天空區(qū)域算法去霧效果對比
圖7 有天空區(qū)域算法去霧效果對比
通過比較可得,在圖像沒有大面積天空區(qū)域時,該算法與HE提出的暗通道先驗算法圖像去霧主觀效果差別不大,都能達(dá)到較好的去霧效果。和原算法相比,圖片的對比度有明顯提升,顏色的退化得到一定程度的修正。當(dāng)原圖像存在天空區(qū)域時,該算法能夠有效地避免天空區(qū)域失真的塊效應(yīng)和較大面積的紋理。
3.2算法計算速度
本文與原算法分別對不同分辨率的相同圖片進行測試,測試結(jié)果如下:
本文算法 文獻(xiàn)[3]算法600*400 1.32 s 8.51 s 800*500 2.24 s 18.11 s 1 200*900 3.35 s 23.67 s
由實驗可以得出,改進算法計算速度有較大提升。本算法利用改進中值濾波取代了原算法中的軟摳圖算法對透射率進行平滑,既保留了中值濾波的快速性,又可以有效地去除去霧后圖像的邊緣效應(yīng)。
本文在暗原色先驗算法的基礎(chǔ)上,提出了快速透射率細(xì)化算法。對暗通道圖采用改進中值濾波算法代替最小值濾波,避免了計算繁瑣的軟摳圖和復(fù)雜的引導(dǎo)濾波,提升了計算速度,有效地避免了預(yù)案算法中的邊緣效應(yīng)。該算法還對天空區(qū)域透射率進行優(yōu)化,消除了預(yù)案算法去霧后天空區(qū)域出現(xiàn)的紋理和斑塊,提升了天空區(qū)域去霧后的視覺效果。
為了更好地促進該技術(shù)的推廣與應(yīng)用,如何將該技術(shù)應(yīng)用于實時視頻處理,并且將該算法移植到基于硬件資源的嵌入式系統(tǒng)中,是我們下一步的研究重點。
[1]TAN R T.Visibility in bad weather from a single image[C]// Proceedings of IEEE Conference on Computer Vision and Patter Recognition,2008:1-8.
[2]OKALEY J P,SATHERLEY B L.Improcing image quality in poor visibility using modal for degradation[J].IEEE Transactions on Image Processing.1998,7(2):167-179.
[3]HE K M,SUN J.Single image haze removal using dark channel prior[C]//IEEE Conference on Computer Vision and Pattern Recogniton,Maami,USA,2009:1956-1963.
[4]MCCARTHEY E J.Optics of the atmosphere:scattering by molecules and particles[M].New York:John Wiley and Sons,1976:23-32.
[5]GIBSON K B,VO D T,NGUYEN T Q.An investigation of dehazing effects on image and video coding[J].IEEE Transactions on Image Processing,2012,2l(2):662-673.
[6]HE K M,SUN J,TANG X O.Guided image filtering[C]//European Conference on Computer Vision,Crete,Greece,2010:1-14.
Optimized Image Dehazing Using Dark Channel Prior
SHEN Huai-bo,WANG Yong-kang,ZHANG Xiao-zheng
(China North Vehide Research Institute,Beijing 100072,China)
Atmospheric scattering effect can make image quality degradation.Image dehazing can improve visual effect and facilitate target recognition and tracking.This paper proposes improved median filter algorithm based on dark channel prior,using different sizes of filter window with different region.It can effectively refine transmissivity and avoid holo effect.Also,this paper proposes sky area transmissivity refine algorithm.It wipes off veins of sky and patch effect.Experimental results show that this algorithm is high-efficient to dehaze the image.
dehazing algorithm,dark channel prior,transmissivity refine
TP391
A
1002-0640(2016)07-0157-04
2015-06-05
2015-07-15
申懷波(1989-),男,山東聊城人,碩士研究生,助理工程師。研究方向:武器控制總體技術(shù)。