許駿,, 王直杰
東華大學(xué) 信息科學(xué)與技術(shù)學(xué)院,,上海 200051
摘要:基于暗通道先驗(yàn)算法的圖像去霧技術(shù)已經(jīng)日益成熟,但是其處理速度慢、天空區(qū)域過(guò)曝,、處理完的圖像色彩變暗等缺點(diǎn)也很明顯,。本文針對(duì)這幾方面分別提出了求透射率時(shí)的優(yōu)化、糾正天空等明亮區(qū)域的錯(cuò)誤估計(jì)的透射率,、采用自動(dòng)色劑的算法進(jìn)行顏色校正等方法,,從而有效地提升去霧圖像的視覺(jué)效果與處理速度,。實(shí)驗(yàn)結(jié)果與幾種經(jīng)典的算法結(jié)果進(jìn)行比較驗(yàn)證了本文算法在處理效率與顏色保真度方面的優(yōu)越性。
關(guān)鍵詞:圖像去霧,;暗通道先驗(yàn),;顏色校正;處理速度
0引言
在日常生活中,,戶外場(chǎng)景拍攝很容易受各種因素的影響,,如灰塵、霧或煙霧,。近幾年霧霾天氣越來(lái)越頻繁,,這些懸浮在空氣中的粒子會(huì)對(duì)場(chǎng)景的反射光和大氣光的散射產(chǎn)生很大的影響,,使得拍攝所得到的圖像質(zhì)量降低、美感全無(wú),,甚至?xí)寛D像對(duì)比度與顏色產(chǎn)生明顯失真,,導(dǎo)致場(chǎng)景和目標(biāo)的可辨識(shí)度降低。這些都會(huì)直接影響到機(jī)器視覺(jué)對(duì)于圖像內(nèi)容的識(shí)別與分析,。所以為了給機(jī)器視覺(jué)識(shí)別提供更清晰的圖像,對(duì)圖像進(jìn)行去霧處理就顯得非常重要,。
1去霧算法分類(lèi)
目前,圖像去霧算法主要分為兩大類(lèi):一類(lèi)為圖像增強(qiáng)[1],,如直方圖均衡化法,、Retinex算法,、基于小波的方法,、基于大氣調(diào)制傳遞方程的方法,。另一類(lèi)為圖像修復(fù)[2],如深度信息的霧天圖像復(fù)原,、基于先驗(yàn)的霧天圖像復(fù)原,、基于偏微分方程的霧天圖像復(fù)原、最小失真意義下的霧化圖像復(fù)原,。
為了能夠更有效地對(duì)圖像進(jìn)行高效的去霧處理,,本文提出了基于暗通道先驗(yàn)的去霧改進(jìn)算法,其屬于基于先驗(yàn)的霧天圖像復(fù)原,。本文基于大氣散射模型,在算法去霧的計(jì)算過(guò)程中進(jìn)行了合理的優(yōu)化,,減少計(jì)算量,,提高了實(shí)時(shí)性,,并且改善了經(jīng)過(guò)去霧處理后使得圖像整體變暗的不良效果。
2本文的算法
2.1大氣散射模型
大氣散射模型是由McCarthney在1975年提出的,,該模型描述了霧化圖像的退化過(guò)程,并被廣泛應(yīng)用于圖像去霧領(lǐng)域,,根據(jù)大氣光在霧天退化過(guò)程中傳輸?shù)奈锢硖匦钥梢杂靡韵鹿奖硎緸椋?]:
I(x)=J(x)t(x)+A(1-t(x))(1)
其中,,I(x)表示有霧圖像,J(x)表示去霧后的圖像,,場(chǎng)景輻射中大氣傳輸過(guò)程中的透射率用t(x)表示,,目標(biāo)輻射信息的直接衰減用J(x)t(x)表示,反應(yīng)出了經(jīng)過(guò)傳輸介質(zhì)后目標(biāo)的電磁波信息到達(dá)傳感器的能量,;A表示大氣光,,大氣光經(jīng)過(guò)衰減后到達(dá)傳感器的能量用A(1-t(x))表示。假設(shè)大氣層是均勻的,,電磁波在大氣中為各向同性傳播,,透射率t表示為:t(x)=e-βd(x),其中,,β是大氣散射系數(shù),,d(x)是場(chǎng)景深度。
2.2暗通道先驗(yàn)條件
暗通道先驗(yàn)[4]是通過(guò)對(duì)多幅室外的無(wú)霧圖像進(jìn)行研究總結(jié)出來(lái)的規(guī)律,,在這些室外無(wú)霧清晰的圖像中發(fā)現(xiàn),,大部分非天空區(qū)域中,至少有一個(gè)顏色通道的某些像素的亮度值很低,,幾乎趨近于零,,并且,此區(qū)域的最低亮度值也幾乎為零,。對(duì)于任意的圖像J,,它的暗原色通道Jdark可以表示為:Jdark= minΩ (minc∈{r,g,b}Jc)
其中Jdark表示圖像J的強(qiáng)度值接近于0的暗通道,,Jc表示J的R,、G、B三通道之一,,Ω 表示以一個(gè)像素為中心的窗口,。
2.3透射率的計(jì)算與優(yōu)化
根據(jù)文獻(xiàn)[3]中暗原色先驗(yàn)理論得到:
這就是透射率t的預(yù)估值。
在生活中,,即使是萬(wàn)里無(wú)云的晴天,,空氣中也存在著一些顆粒,因此,,看遠(yuǎn)處的物體還是能感覺(jué)到霧的影響,,但是,,霧能使人感受到景深的存在,使圖像看起來(lái)更真實(shí),。因此,,有必要在去霧的時(shí)候保留一定程度的霧,這可以通過(guò)在式(2)中引入一個(gè)在[0,1]之間的因子w,,則式(2)修正為:
w代表了霧的保留度,,其值越小,去霧效果越不明顯,所以取w=0.95,,這樣保留一些霧的存在可以使人感受到景深的存在,,圖像也更符合需求。
由于暗通道去霧的透射率圖比其他算法都要精細(xì),并且在整個(gè)算法中占用了大量的處理時(shí)間,降低了程序的處理效率,所以如果適當(dāng)?shù)亟档鸵稽c(diǎn)精度,,其去霧的效果理論上應(yīng)該不會(huì)有太大的區(qū)別,,本文采取的方法不對(duì)原圖求透射率,而是用以下方法來(lái)對(duì)透射率的求取進(jìn)行簡(jiǎn)化。
?。?)把RGB轉(zhuǎn)化為灰度直方圖;
?。?)對(duì)原圖進(jìn)行下采樣,,縮小為原圖的1/4,存放在V(x),并求解出V(x)的透射率,;
?。?)采用插值法獲取原圖大概的透射率。
經(jīng)過(guò)實(shí)驗(yàn)證明這種方式很大程度上提高了執(zhí)行速度,,而且去霧效果與原方案基本一致,。
但是,如果縮小系數(shù)不是特別大,,比如縮小為原來(lái)的0.5倍大小,,可能兩次縮放所用的耗時(shí)還抵消了計(jì)算小圖的透射率圖所換來(lái)的盈利,因此必須合理選擇這個(gè)下采樣率,。
研究中發(fā)現(xiàn)傳統(tǒng)的暗通道先驗(yàn)去霧對(duì)天空部分處理效果不好,,天空往往會(huì)出現(xiàn)較大面積的紋理及分塊現(xiàn)象。其根本原因還是因?yàn)樘炜詹课换旧鲜遣环习低ǖ廊レF先驗(yàn)條件的,,對(duì)此本文提出了一種避免圖像去霧算法中天空部分出現(xiàn)過(guò)度增強(qiáng)的方法:(1)將圖像轉(zhuǎn)換為灰度,,為保留更多的邊緣信息,使用具有對(duì)比度保留功能的去色算法,;(2)求灰度圖像的梯度信息,,采用邊緣檢測(cè)算子實(shí)現(xiàn);(3)對(duì)梯度信息進(jìn)行去噪和濾波,;(4)按照設(shè)定梯度閾值和亮度閾值對(duì)梯度信息進(jìn)行區(qū)分,;(5)對(duì)區(qū)分后的圖像進(jìn)行高斯羽化處理,。
得到天空區(qū)域后,He[4]將天空區(qū)域的透射率圖統(tǒng)一設(shè)置成一個(gè)固定值,,但這樣不好,,還是應(yīng)該根據(jù)具體的值做適當(dāng)?shù)男拚?在He的上述操作中,得到的天空區(qū)域并不真正屬于天空,,某個(gè)點(diǎn)并不一定是完全屬于天空或完全不屬于,。因此本文提出一種優(yōu)化方法,如下所示:
Jx=(tp×Ix+Jx×(255-Ix))/255
其中Jx是指暗通道的點(diǎn),,tp就類(lèi)似于He所講的固定透射率值,,是自己根據(jù)圖像處理效果調(diào)試指定的,在上式中,,若I(x)=255,,即完全屬于天空,則該點(diǎn)的透射率即為固定值,,若I(x)=0,,即完全不屬于天空,計(jì)算式的值不變,,不影響正常去霧,。
另外關(guān)于大氣光值A(chǔ)的計(jì)算,He提出了以獲得的天空部位的像素的平均值作為A,,這也是非常合理的,,但是在實(shí)際處理時(shí),針對(duì)有些完全沒(méi)有天空部分的圖像,,可能檢測(cè)到的天空區(qū)域很?。黠@屬于誤檢,但是程序不知道),,這個(gè)時(shí)候以此為大氣光值,,也是不合理的。為此,,本文的處理方式是先計(jì)算天空部位的A值,,然后再檢測(cè)天空像素占整個(gè)圖像的比例,如果比例小于5%,,則還是以He計(jì)算A的方式進(jìn)行,。
還有一步,He也提到了,,就是這些校正的步驟都必須在進(jìn)行導(dǎo)向?yàn)V波前做,。這樣利用導(dǎo)向?yàn)V波的平滑功能,可以從一定程度上將天空和非天空分界部位的不平滑現(xiàn)象彌補(bǔ)掉,,這一方法有效地避免了天空區(qū)域過(guò)曝的情況,。
如圖1所示,,優(yōu)化透射率后的算法的圖像右上角天空區(qū)域不會(huì)出現(xiàn)暗通道算法的偏色和大量色斑,不會(huì)有明顯的過(guò)渡區(qū)域,。
2.4顏色增強(qiáng)
直接去霧后的圖像會(huì)比原始圖像暗,,因此本文提出在處理完后需要對(duì)圖像進(jìn)行一定的曝光增強(qiáng)。圖像亮度調(diào)整分為非線性和線性兩種方法[5],。非線性圖像亮度調(diào)整是將圖像像素的R,、G、B分別加上或減去某個(gè)值,,其優(yōu)點(diǎn)是代碼簡(jiǎn)單,,亮度調(diào)整速度快;缺點(diǎn)是圖像信息損失較大,,調(diào)整過(guò)的圖像顯得平淡,,無(wú)層次感。線性圖像亮度調(diào)整一般是將圖像像素的RGB轉(zhuǎn)換為HSL(HSV)等顏色空間,,對(duì)L(V)部分進(jìn)行增減調(diào)整后,,再轉(zhuǎn)換為RGB顏色空間,優(yōu)點(diǎn)是調(diào)整過(guò)的圖像層次感很強(qiáng),;缺點(diǎn)是代碼較復(fù)雜,,調(diào)整速度慢,而且當(dāng)圖像亮度增減量較大時(shí)有很大的失真,。
設(shè)亮度增減量value范圍為 -1~+1,,本文采用了優(yōu)化后的圖像亮度增強(qiáng)法,,原理用下式表示:
當(dāng)value>0時(shí):
rgb=RGB+RGB*(1/(1-value)-1)
當(dāng)value<0時(shí):
rgb=RGB+RGB*value
3實(shí)驗(yàn)結(jié)果與分析
3.1去霧效果比較
如圖1和圖2給出了本文算法與He文獻(xiàn)中的原暗通道先驗(yàn)算法的去霧效果比較,。
在圖1中,本文的處理結(jié)果能較好地恢復(fù)出天空區(qū)域,,無(wú)偏色及明顯色斑,。圖2中,本文的處理結(jié)果能很好地改善圖像色彩偏暗的情況,。由此可見(jiàn)本文算法的去霧效果比He算法的處理效果有明顯改善,。
3.2運(yùn)算速度比較
在普通計(jì)算機(jī)上,使用Visual Studio 2010運(yùn)行本文算法,。運(yùn)行環(huán)境為Windows 7,,計(jì)算機(jī)配置為Intel(R) Core(TM) i3 CPU M 350 @2.27 GHz with 3 GB RAM。程序運(yùn)行時(shí)間如表1,。
4總結(jié)
本文基于暗通道先驗(yàn)?zāi)P?,在He算法基礎(chǔ)上提出了以下改進(jìn),首先針對(duì)暗通道原理去霧效率低的缺點(diǎn),,提出了縮小采樣標(biāo)本后再用插值法求取透射率的方法來(lái)優(yōu)化
算法效率,。然后對(duì)是否屬于天空區(qū)域的透射率進(jìn)行矯正,。最后通過(guò)圖像亮度增強(qiáng)的方法改善了去霧處理后圖像變暗的缺點(diǎn),使得實(shí)驗(yàn)結(jié)果在主觀和客觀方面都達(dá)到了令人滿意的效果,。
參考文獻(xiàn)
?。?] 郭璠,蔡自興,謝斌,等.圖像去霧技術(shù)研究綜述與展望[J].計(jì)算機(jī)應(yīng)用,2010,30(9):24172421.
[2] 葛艷,,趙瑞,高占江,,等.基于TV模型和膨脹的圖像修復(fù)方法研究[J].微型機(jī)與應(yīng)用,2014,33(18):3941,44.
[3] MCCARTNEY E J. Optics of Atmosphere: Scattering by Molecules and Particles[M]. New York: John Wiley and Sons,,1976.
?。?] He Kaiming, Sun Jian, Tang Xiaoou. Single image haze removal using dark channel prior [J]. IEEE Transactions on pattern Analysis and Machine Intelligence, 2011,33(12):23412353.
[5] 劉艷英,凌朝東.HSV空間的彩色多聚焦圖像融合[J].微型機(jī)與應(yīng)用,2014,33(8):4548.