程 鴻 龍 偉 李炎炎
(四川大學(xué)機(jī)械工程學(xué)院 四川 成都 610065)
在夜間霧、霾等天氣條件下拍攝的戶外圖像,由于人工光源照明不均勻,大氣懸浮粒子對(duì)光的吸收和散射作用,導(dǎo)致成像設(shè)備采集到的夜晚圖像存在光照不均勻、圖像對(duì)比度低、色偏嚴(yán)重等現(xiàn)象。圖像中部分信息丟失,影響視頻監(jiān)控和圖像采集系統(tǒng)的效果[1-2]。因此,夜間去霧具有重要的意義。
近年來國內(nèi)外學(xué)者主要針對(duì)白天條件下的有霧圖像進(jìn)行研究,并取得了較大的突破?,F(xiàn)有的去霧算法主要有兩類。一類是不依據(jù)圖像物理成像模型的方法,直接利用數(shù)學(xué)的方法改變圖像的像素值。如直方圖均衡化[3]、單尺度和多尺度Retinex方法[4]等。另一類是依據(jù)圖像物理成像模型的方法。這類方法利用McCartney等[5]提出的衰減模型和大氣光模型,求得模型中參數(shù),如大氣光值和透射率,最終獲得目標(biāo)圖像。如Fattal[6]提出的基于獨(dú)立成分分析去霧,He等[7]提出的基于暗通道先驗(yàn)去霧,Zhu等[8]提出的基于顏色衰減先驗(yàn)去霧,Berman等[9]提出的基于color-line的非局部圖像去霧等。上述算法在白天有霧的條件下均能取得很好的去霧效果,但不適用夜晚去霧。
目前僅有少量關(guān)于夜晚圖像去霧的研究。Pei等[10]提出了一種基于物理成像模型的夜晚圖像去霧算法,首先將夜晚有霧圖像轉(zhuǎn)換為理想的白天有霧圖,再根據(jù)暗通道先驗(yàn)對(duì)圖片進(jìn)行去霧處理;Zhang等[11]通過增強(qiáng)估計(jì)光照強(qiáng)度以獲得光照平衡的結(jié)果,再進(jìn)行顏色校正,最后利用暗通道先驗(yàn)和逐點(diǎn)環(huán)境光估計(jì)法去霧;Li等[12]構(gòu)建含有光暈層的夜晚圖像成像模型,再基于暗通道先驗(yàn)去霧;方帥等[13]根據(jù)大氣光局部變化的現(xiàn)象構(gòu)建新的夜晚成像模型,提出了基于信息熵的透射率估計(jì)方法,并通過光源區(qū)域的顏色屬性來進(jìn)行顏色校正,最終獲得清晰的夜晚圖像;楊愛萍等[14]建立含有人工光源的夜晚霧天圖像成像模型,利用低通濾波的環(huán)境光估計(jì)方法,進(jìn)而預(yù)測夜晚成像的透射率,以此進(jìn)行去霧,再利用直方圖匹配方法解決色偏問題。
上述有關(guān)夜晚圖像去霧研究中,相較于白天圖像去霧有統(tǒng)一的大氣物理成像模型,夜晚圖像去霧目前還沒有統(tǒng)一的成像模型,故本文提出一種基于非物理模型的夜晚圖像去霧算法。實(shí)驗(yàn)結(jié)果表明,本文算法能有效提高夜晚圖像的清晰度,達(dá)到改善視覺效果的目的。
同態(tài)濾波是一種減少低頻分量增加高頻分量,減少光照變化并銳化邊緣或細(xì)節(jié)的圖像濾波方法。它以照度反射模型作為頻域處理的基礎(chǔ)[15],能夠?qū)D像灰度范圍進(jìn)行調(diào)整,從而消除圖像上照明不均勻的問題,增強(qiáng)圖像暗區(qū)域細(xì)節(jié),使增強(qiáng)后的圖像更符合人的視覺習(xí)慣。
夜間有霧圖像f(x,y)可以表示為入射分量i(x,y)與反射分量r(x,y)乘積:
f(x,y)=i(x,y)·r(x,y)
(1)
式中:入射分量i(x,y)屬于光照條件下的低頻成分[16];反射分量r(x,y)屬于展示圖像細(xì)節(jié)等特性的高頻成分。處理光照不均勻的多光源的彩色夜晚圖像,就需要盡量增加圖像的低頻分量,同時(shí)適當(dāng)增強(qiáng)圖像的高頻分量。
由于式(1)是由兩個(gè)函數(shù)乘積構(gòu)成,故不能直接用Fourier變換對(duì)i(x,y)和r(x,y)進(jìn)行操作。對(duì)式(1)兩邊分別同時(shí)取對(duì)數(shù),得:
lnf(x,y)=lni(x,y)+lnr(x,y)
(2)
再對(duì)式(2)進(jìn)行Fourier變換,得到頻域表達(dá)式:
F(u,v)=I(x,y)+R(x,y)
(3)
式中:I(x,y)和R(x,y)分別是lni(x,y)和lnr(x,y)的Fourier變換結(jié)果。用傳遞函數(shù)H(u,v)對(duì)式(3)的F(u,v)進(jìn)行處理,可得:
H(u,v)F(u,v)=I(x,y)F(u,v)+R(x,y)F(u,v)
(4)
濾波處理后,對(duì)式(4)進(jìn)行傅里葉逆變換回到空間域,即得:
FH(u,v)=IH(x,y)+RH(x,y)
(5)
最后,對(duì)式(5)兩邊同時(shí)取指數(shù),得到同態(tài)濾波后的圖像:
g(x,y)=eFH(u,v)=eIH(x,y)eRH(x,y)
(6)
同態(tài)濾波的過程如圖1所示。
圖1 同態(tài)濾波器增強(qiáng)過程
從以上推導(dǎo)過程可以看出,能否達(dá)到理想的濾波效果,關(guān)鍵在于選擇合適的濾波函數(shù)H(u,v)。
頻域內(nèi)的同態(tài)濾波處理,常用的傳遞函數(shù)為高斯型高通濾波函數(shù)[17],優(yōu)化后的表達(dá)式如下:
(7)
式中:γH表示高頻增益;γL表示低頻增益;θ為銳化系數(shù),用來改變傳遞函數(shù)斜面的傾斜程度;D0表示截止頻率;D(u,v)表示頻率(u,v)到濾波器(u0,v0)中心的距離。表達(dá)式如下:
(8)
高通濾波器通過抑制低頻分量,并保留高頻分量對(duì)圖像進(jìn)行銳化處理。但由于夜晚光源較多且光照不均勻,經(jīng)過Fourier變換的頻率譜圖像亮點(diǎn)較多,實(shí)際圖像已經(jīng)表現(xiàn)很尖銳。故為了抑制夜晚圖像中的高頻部分,適當(dāng)增加低頻成分,本文的傳遞函數(shù)H(u,v)采用高斯低通濾波函數(shù),優(yōu)化后的表達(dá)式如下:
(9)
Retinex理論是由Edwin.H.Land基于顏色恒常性理論提出的,認(rèn)為一幅給定的夜晚霧天圖像S(x,y)可視為入射光分量L(x,y)和反射光分量R(x,y)的乘積[18]:
S(x,y)=L(x,y)·R(x,y)
(10)
式中:R(x,y)表示物體的反射性質(zhì),即所要復(fù)原的圖像;L(x,y)表示入射光圖像,決定了圖像像素能達(dá)到的動(dòng)態(tài)范圍,應(yīng)盡量消除入射光的影響。
將式(10)等號(hào)兩邊轉(zhuǎn)換到空間進(jìn)行計(jì)算,得到:
logR(x,y)=logS(x,y)-log(S(x,y)×G(x,y))
(11)
式中:G(x,y)為高斯函數(shù)。
(12)
式中:λ是一個(gè)尺度因子,它的值必須滿足以下條件:
(13)
式中:φ表示高斯環(huán)繞尺度,其作用是控制領(lǐng)域范圍。φ值越小,高斯模板的半徑越小,計(jì)算的中心像素受周圍像素的作用越大,增強(qiáng)后的圖像對(duì)比度越明顯,細(xì)節(jié)也更突出,但顏色失真也越嚴(yán)重;φ值越大,增強(qiáng)后的圖像顏色保真效果越好,但是圖像顯得越模糊,去霧效果也隨之下降。
考慮到夜晚圖像存在或明或暗的部分,為了提升圖像的對(duì)比度,獲得更多的圖像細(xì)節(jié),本文采用限制對(duì)比度自適應(yīng)直方圖均衡的方法。相比自適應(yīng)直方圖均衡化(AHE),CLAHE在AHE的基礎(chǔ)上,對(duì)每個(gè)子塊直方圖進(jìn)行了限制,因此CLAHE能解決AHE算法中滑動(dòng)模板帶來的窗口之間灰度不平滑問題[19]。該方法首先將圖像分為若干重疊的子區(qū)域,對(duì)每個(gè)區(qū)域進(jìn)行對(duì)比度限幅,將超出限幅的部分均勻分布到直方圖的其他部分,如圖2所示。然后對(duì)每個(gè)子區(qū)域進(jìn)行直方圖均衡,再對(duì)每個(gè)像素使用插值的方法消除分塊帶來的塊邊緣過渡不平衡的問題。最終實(shí)現(xiàn)對(duì)比度受限自適應(yīng)直方圖均衡增強(qiáng)。本文采用MATLAB自帶的限制對(duì)比度自適應(yīng)直方圖均衡算法。
圖2 對(duì)比度受限直方圖均衡
雖然人在各種環(huán)境下都能準(zhǔn)確判斷出白色物體,但相機(jī)成像的圖片,在不同色溫的光線下,圖像就會(huì)出現(xiàn)顏色偏差,與人眼看到的顏色不一致,因此夜晚圖像普遍存在色偏。為進(jìn)一步改善夜晚圖像去霧效果,增強(qiáng)人眼的視覺效果,本文采用白平衡算法對(duì)去霧后的圖像進(jìn)行顏色校正。
白平衡是一種以人眼看到的白色為標(biāo)準(zhǔn)[20],使人眼看到的白色物體在照片中也呈現(xiàn)白色。白平衡算法以灰度世界假設(shè)[21]為基礎(chǔ),假設(shè)認(rèn)為在有足夠顏色變化的圖中,它的RGB分量的平均值會(huì)趨近相等,如下:
Raver=Gaver=Baver
(14)
式中:Raver、Gaver、Baver分別表示三個(gè)顏色通道的均值。
再計(jì)算各個(gè)通道的增益,即:
(15)
(16)
最后根據(jù)Von Kries對(duì)角模型,求得各個(gè)顏色通道的像素值,即:
Rnew=R×KRGnew=R×KGBnew=R×KB
(17)
計(jì)算的結(jié)果中可能會(huì)出現(xiàn)溢出的情況,即像素值大于255,本文將大于255的像素直接設(shè)置為255。
實(shí)驗(yàn)在MATLAB 2017b下進(jìn)行算法編程,PC處理器為2.6 GHz Intel(R)Core(TM)i5-4210M,內(nèi)存為4 GB。本文的算法流程如圖3所示。為了展示各步驟結(jié)果,從圖蟲網(wǎng)上收集了一幅夜間霧天圖像(661像素×1 200像素),各步驟結(jié)果如圖4所示。結(jié)果顯示本文算法能有效去除夜晚的霧氣,提升圖像對(duì)比度,展示更多的細(xì)節(jié)信息。
圖3 夜間圖像去霧算法流程圖
(a)夜間有霧原始原圖
為了驗(yàn)證本文算法結(jié)果,收集了文獻(xiàn)[11]中的實(shí)驗(yàn)圖片,以Pavilion、Street和Trains為實(shí)驗(yàn)對(duì)象,并與傳統(tǒng)的Retinex算法、He等[7]的方法及Li等[12]的方法進(jìn)行對(duì)比。各算法去霧效果圖如圖5所示??梢钥闯?,傳統(tǒng)的Retinex算法沒能有效改善夜晚有霧的圖像視覺效果;He等[7]的方法因?yàn)槭羌僭O(shè)在白天光照均勻條件下進(jìn)行的,沒有考慮夜晚圖像的成像特點(diǎn),所以去霧效果不明顯;Li等[12]的方法對(duì)夜晚去霧取得了較好的效果,但由于也是基于暗通道先驗(yàn)基礎(chǔ),結(jié)果圖中天空區(qū)域出現(xiàn)塊效應(yīng)現(xiàn)象,且色偏嚴(yán)重。相比之下,本文的算法考慮了夜晚光照不均勻、對(duì)比度低、色偏嚴(yán)重的特點(diǎn),有針對(duì)地對(duì)問題進(jìn)行處理,改善了視覺效果,有效地完成了對(duì)夜晚有霧圖像的處理。
(a)夜間有霧圖像
為進(jìn)一步驗(yàn)證本文算法的增強(qiáng)效果,采用平均梯度A、信息熵H、對(duì)比度C和算法運(yùn)行時(shí)間T等客觀指標(biāo)對(duì)去霧后的圖像進(jìn)行質(zhì)量評(píng)價(jià),各算法的性能指標(biāo)統(tǒng)計(jì)結(jié)果如表1所示。
表1 算法性能指標(biāo)統(tǒng)計(jì)
圖像的平均梯度A能反映圖像對(duì)微小細(xì)節(jié)反差表達(dá)的能力。平均梯度越大,表明影像越清晰,反差表達(dá)能力越好。其公式如下:
(18)
式中:Ji,j為第i行、第j列的像素值;c與r為圖像的行數(shù)和列數(shù)。
圖像的信息熵H是表示圖像細(xì)節(jié)方面的指標(biāo),信息熵值越大,圖像細(xì)節(jié)越多,計(jì)算公式如下:
(19)
式中:pi表示像素i出現(xiàn)的概率。
利用文獻(xiàn)[2]的方法計(jì)算圖像中的對(duì)比度C,C值越大,對(duì)比度值越大,圖像細(xì)節(jié)越清晰。計(jì)算公式如下:
(20)
式中:w、h分別表示圖像的寬和高;L(x)表示像素點(diǎn)x處的亮度。
從表1可以看出,四種算法中,本文算法在各個(gè)指標(biāo)中都取得理想的結(jié)果。尤其是在實(shí)驗(yàn)圖片Trains的處理結(jié)果中,對(duì)圖像去霧的各個(gè)指標(biāo)都取得最好效果。雖然傳統(tǒng)Retinex 算法和He等的方法的運(yùn)行時(shí)間比較短,但是這兩種算法都沒能對(duì)夜晚有霧圖像進(jìn)行有效的處理;對(duì)于Pavilion圖,Li等的方法在性能指標(biāo)中占有一定優(yōu)勢,但算法運(yùn)行時(shí)間遠(yuǎn)超過本文算法的運(yùn)行時(shí)間。綜上所述,本文算法復(fù)原的圖像在各項(xiàng)指標(biāo)中總體呈現(xiàn)最優(yōu)。
本文針對(duì)夜晚有霧圖像的特點(diǎn),以提高圖像對(duì)比度,改善視覺效果為目的,提出了一種基于非物理模型的夜間圖像去霧算法。實(shí)驗(yàn)結(jié)果表明,在平均梯度、信息熵、對(duì)比度以及算法運(yùn)行時(shí)間等指標(biāo)下,本文算法處理的結(jié)果總體優(yōu)于Retinex算法、He等方法、Li等方法,處理后的圖像具有更高的細(xì)節(jié)清晰度。需要指出的是,本文沒有從夜晚圖像成像的原理進(jìn)行去霧,而是根據(jù)人眼視覺要求,利用數(shù)學(xué)的方法提升圖像的視覺效果。