李鵬飛, 何小海*, 卿粼波, 石 偉, 吳小強(qiáng)
(1. 四川大學(xué) 電子信息學(xué)院,四川 成都 610065;2. 中國(guó)民航局第二研究所,四川 成都 610000)
在夜間有霧條件下,光線受到空氣中微粒的反射、散射和吸收的影響,容易造成拍攝的圖片對(duì)比度低、整體亮度低和成像模糊的現(xiàn)象。這種情況下采集到的圖像會(huì)影響圖像采集、目標(biāo)跟蹤、顯著性檢測(cè)、輔助駕駛等計(jì)算機(jī)視覺(jué)系統(tǒng)的性能。消除霧霾可以提高上述系統(tǒng)的性能,因此從有霧圖像中消除霧霾至關(guān)重要。相對(duì)于白天去霧,夜間去霧由于人工光源的滲入,光源周?chē)拇髿夤飧粒綀?chǎng)景點(diǎn)的入射光和反射光受到霧霾衰減等因素的影響,使圖像不同部分的照明不均勻,因此夜間的大氣光不能假定為均勻的,相比白天去霧,夜間去霧更具挑戰(zhàn)性。
近年來(lái),夜間圖像去霧的研究方法按照是否對(duì)霧天的成像機(jī)理進(jìn)行分析可分為基于圖像增強(qiáng)的方法和基于物理模型圖像復(fù)原的方法[1]。圖像增強(qiáng)算法有直方圖均衡化、Retinex算法、小波變換和亮度對(duì)比度變換等,該類(lèi)方法沒(méi)有考慮光成像原理,可能丟失部分圖像的細(xì)節(jié)信息?;谖锢砟P偷姆椒ㄊ茄芯快F霾圖像退化過(guò)程,建立退化模型,得到去霧圖像或其最佳估計(jì),該類(lèi)方法通常能夠保留豐富的信息,可以得到自然的結(jié)果。
目前白天去霧的研究很多,已經(jīng)取得許多優(yōu)秀的研究成果,比如基于暗通道先驗(yàn)的去霧算法[2-3]、基于非局部先驗(yàn)去霧算法[4]等,而夜間去霧的研究相對(duì)較少。Zhang等人[5]設(shè)計(jì)了一個(gè)考慮了夜間不均勻的光照條件和人工光源對(duì)顏色影響的夜間去霧模型,該算法去霧后圖像顏色自然,但容易出現(xiàn)局部失真;Li等人[6]分析了燈光等光源的光暈和光色,在去霧前先消除光暈的影響,通過(guò)估計(jì)局部大氣光來(lái)矯正顏色,再利用暗通道先驗(yàn)去霧;Park等人[7]首先用相對(duì)平滑假設(shè)分解出光暈,然后用整體和局部大氣光融合的方法估計(jì)大氣光,利用權(quán)重熵估計(jì)透射率函數(shù),但去霧的同時(shí)可能會(huì)放大噪聲;Santra等人[8]考慮了夜間空間變化的大氣光,提出一種白天夜間都適用的去霧方法;Zhang等人[9]提出最大反射率先驗(yàn)來(lái)估計(jì)變化的大氣光顏色圖,并消除顏色圖對(duì)輸入圖像的影響,然后通過(guò)改進(jìn)的暗通道方法估計(jì)透射率函數(shù),最后得到了顏色均衡的去霧圖像;Liao等人[10]采用深度學(xué)習(xí)的方法去除霧霾,在合成的有霧圖像上取得了良好的去霧效果,但是在訓(xùn)練過(guò)程中缺乏大量的真實(shí)霧圖和相應(yīng)的無(wú)霧參考圖像數(shù)據(jù)集。
本文針對(duì)夜間復(fù)雜的光源條件,通過(guò)加權(quán)差分圖像作為參考進(jìn)行引導(dǎo)濾波來(lái)估計(jì)含場(chǎng)景輪廓信息的大氣光,通過(guò)拉普拉斯銳化處理的灰度圖像作為參考圖像引導(dǎo)濾波來(lái)估計(jì)補(bǔ)充細(xì)節(jié)的大氣光,然后將二者融合;在計(jì)算透射率函數(shù)時(shí)結(jié)合暗通道和亮通道各自的優(yōu)點(diǎn)提出聯(lián)合優(yōu)化的透射率函數(shù),彌補(bǔ)了暗通道先驗(yàn)透射率在夜間光源區(qū)域的不足。
在計(jì)算機(jī)視覺(jué)和計(jì)算機(jī)圖形學(xué)中,廣泛用于描述白天有霧圖像的模型是I(x)=J(x)t(x)+A[1-t(x)][2],白天去霧模型基于A是常量和大氣光為場(chǎng)景主要光源的假設(shè),而夜間的光照條件復(fù)雜,所以它不太適合于夜間圖像去霧,典型的夜間有霧圖像成像模型[1,11]為:
I(x)=J(x)t(x)+A(x)[1-t(x)],
(1)
式中:I是觀察到的圖像,J是無(wú)霧圖像,A(x)是大氣光,t是場(chǎng)景到相機(jī)的透射率函數(shù)。J(x)t(x)包含圖像中大部分的信息及細(xì)節(jié),與場(chǎng)景輻射的衰減有關(guān),A(x)[1-t(x)]與大氣光在霧霾天氣中的散射有關(guān),代表大氣光散射過(guò)程中引起的薄霧粒子[6]。
受最近研究進(jìn)展的推動(dòng),本文基于式(1)描述的模型實(shí)現(xiàn)去霧。由夜間霧霾天氣成像模型(1)可以看出,求出t(x)和A(x)即可以恢復(fù)出無(wú)霧的圖像。本文算法通過(guò)原圖像的加權(quán)信道差分圖像作為參考對(duì)均衡化處理后的圖像引導(dǎo)濾波[12]得到包含輪廓信息的大氣光分量Awcd,通過(guò)原圖像的拉普拉斯銳化灰度圖作為參考對(duì)均衡化處理后的圖像引導(dǎo)濾波得到補(bǔ)充細(xì)節(jié)的大氣光分量Alaplace,然后將二者融合得到大氣光A。本文通過(guò)暗通道透射率tDCP和亮通道透射率tBCP的加權(quán)融合得出透射率函數(shù)t(x),然后由式(2)求出去霧圖像,算法結(jié)構(gòu)如圖1所示。
圖1 算法結(jié)構(gòu)圖Fig.1 Algorithm structure diagram
在霧霾天氣中,場(chǎng)景成像前一般要經(jīng)歷多次散射,例如霧天條件下光源周?chē)霈F(xiàn)的光暈就是多次散射的一種表現(xiàn),使用引導(dǎo)濾波可以平滑光源的變化。文獻(xiàn)[13]在能見(jiàn)度恢復(fù)過(guò)程中分析了大氣中的薄霧,指出像素點(diǎn)處薄霧的強(qiáng)度值大于0小于該像素點(diǎn)三通道的最小灰度值,本文使用RGB三通道中最小灰度值的0.7倍來(lái)近似薄霧,然后使用式(3)得出的加權(quán)信道差分圖像作為參考圖像進(jìn)行引導(dǎo)濾波[11],得到包含輪廓信息的大氣光。文獻(xiàn)[14]指出引導(dǎo)濾波的關(guān)鍵模型參數(shù)是通過(guò)原始圖像場(chǎng)景中物體的邊緣信息來(lái)選擇的,本文使用輸入圖像的拉普拉斯銳化灰度圖作為參考圖像引導(dǎo)濾波得出補(bǔ)充細(xì)節(jié)的大氣光,最后將二者融合得到最終的大氣光。計(jì)算公式如下:
(2)
(3)
(4)
IIaplace=Igray-Laplace(Igray)/2,
(5)
(6)
式中,I為輸入圖像,將I轉(zhuǎn)換到Iab空間,對(duì)l分量做直方圖均衡化處理得到圖像Ilab,然后使用式(4)得到均衡化處理后的圖像Ieq。Imax、Imedian、Imin分別為輸入圖像中像素點(diǎn)處灰度值的最大值、中值和最小值,Igray為I的灰度圖像,Laplace為核大小為3×3的拉普拉斯變換,Awcd=GuidedFilter(Iwcd,Ieq)、AIaplace=GuidedFilter(IIaplace,Ieq)為引導(dǎo)濾波得到的兩個(gè)大氣光分量,Awcd為以Iwcd為參考圖像引導(dǎo)濾波得到的大氣光,AIaplace為以IIaplace為參考圖像引導(dǎo)濾波得到的大氣光,A(x)為求出的大氣光函數(shù)。圖2為本文算法和其他算法A的對(duì)比。
圖2 不同方法估計(jì)的大氣光Fig.2 Atmospheric light estimated by different methods
空氣中少量的霧霾是人類(lèi)感知深度的線索[2],即使在晴朗的天氣里,我們看遙遠(yuǎn)物體時(shí)依然感覺(jué)到有少量霧霾的存在,估計(jì)透射率函數(shù)t時(shí)要避免出現(xiàn)0值,小的t值可以增強(qiáng)暗區(qū)域的亮度,但是當(dāng)t接近于0時(shí)可能會(huì)產(chǎn)生噪聲,大的t值可以抑制高亮度。在計(jì)算透射率函數(shù)時(shí)使光源位置有較大的t值可以抑制光源過(guò)度增亮,在暗區(qū)域使t值較小可以增強(qiáng)暗區(qū)域的亮度。本文計(jì)算透射率函數(shù)t的過(guò)程分為3個(gè)步驟:計(jì)算暗通道、計(jì)算亮通道、暗通道和亮通道的加權(quán)融合。
3.2.1 暗通道先驗(yàn)
暗通道先驗(yàn)是基于戶(hù)外無(wú)霾圖像的統(tǒng)計(jì),在圖像中非天空的局部區(qū)域中,一些像素點(diǎn)在至少一個(gè)顏色通道(RGB)中具有較低的強(qiáng)度,在有霧圖像中,假設(shè)非天空區(qū)域景物至少有一個(gè)彩色通道是弱反射的,這些暗通道像素的強(qiáng)度是由大氣光決定的[2],而天空區(qū)域大氣光的所有通道都有強(qiáng)反射,當(dāng)場(chǎng)景對(duì)象上有大面積區(qū)域類(lèi)似于天空(白色)且沒(méi)有陰影時(shí),暗通道先驗(yàn)可能是無(wú)效的。本文在計(jì)算透射率時(shí)對(duì)天空和光源等圖像中較亮的區(qū)域進(jìn)行了改進(jìn),避免在這些區(qū)域出現(xiàn)極小的t值,得出tDCP的計(jì)算公式如下:
(7)
式中:
(8)
(9)
(10)
TGmax=0.4×max(IA),
(11)
式中,Ω(x)是以像素點(diǎn)x為中心的窗口區(qū)域,Ac為3.1節(jié)求出的大氣光。
3.2.2 亮通道先驗(yàn)
夜間有霧圖像可能會(huì)受到燈光、火光等光源的影響,為了彌補(bǔ)暗通道先驗(yàn)在這些光源區(qū)域的不足,文獻(xiàn)[11]使用了亮通道先驗(yàn),即光源區(qū)域像素通常包含至少一個(gè)具有高強(qiáng)度的顏色通道,在亮通道先驗(yàn)的基礎(chǔ)上,提出了亮通道透射率的計(jì)算方式:
(12)
本文對(duì)tBCP(x)進(jìn)行了一個(gè)增強(qiáng)運(yùn)算,用于增強(qiáng)亮通道中低強(qiáng)度的亮度[15],同時(shí)防止高亮區(qū)域出現(xiàn)極端的增強(qiáng):
(13)
式中,max(tBCP)為tBCP中的灰度值最大值。
3.2.3 計(jì)算權(quán)重α
由于tDCP較適合應(yīng)用在非光源區(qū)域,tBCP較適合應(yīng)用在光源區(qū)域[11],權(quán)重α用于融合暗通道和亮通道透射率,本文通過(guò)式(15)中設(shè)定的判斷條件,對(duì)圖片中較亮的區(qū)域計(jì)算較大的α值,從而在使用式(20)融合暗亮通道時(shí)給亮通道tBCP一個(gè)較大的權(quán)重;對(duì)于圖片中較暗的區(qū)域,為避免過(guò)度增強(qiáng)弱光區(qū)域加入了自適應(yīng)權(quán)重系數(shù)[16],如式(15)所示。
(14)
(15)
式中:
(16)
(17)
(18)
tGmax=0.4×max(Imax),
(19)
I為經(jīng)均衡化處理后的輸入圖像。
3.2.4 計(jì)算透射率函數(shù)
本文采用加權(quán)融合的方法來(lái)計(jì)算透射率函數(shù)t(x),tBCP和tDCP加權(quán)融合的傳輸函數(shù)為:
(20)
之后對(duì)上式求出的t(x)做限制對(duì)比度自適應(yīng)直方圖均衡化[17]處理,再用Igray作為參考圖像引導(dǎo)濾波得到細(xì)化的透射率函數(shù)。圖3為一組不同算法求出的t(x)函數(shù)圖的對(duì)比:
在計(jì)算出大氣光A(x)和透射率函數(shù)t(x)后,根據(jù)夜間霧霾圖像成像模型(1),可用公式(2)得到去霧圖像。
圖3 不同方法求出的透射率Fig.3 Transmittance calculated by different methods
本文算法采用PyCharm COMMUNITY 2019.2 Python3.6編程實(shí)現(xiàn),計(jì)算A(x)使用的引導(dǎo)濾波卷積核直徑為60;窗口Ω的大小對(duì)透射率t有重要影響,太大或太小的窗口尺寸都可能會(huì)導(dǎo)致不準(zhǔn)確的t值估計(jì),本文在求tDCP和tBCP時(shí)用Ω尺寸為15×15;求α(x)用的Ω窗口大小為15×15;用于限制對(duì)比度自適應(yīng)直方圖均衡化的網(wǎng)格大小為16×16;細(xì)化透射率t(x)用的引導(dǎo)濾波卷積核直徑為30,實(shí)驗(yàn)分為主觀評(píng)價(jià)、客觀評(píng)價(jià)和算法處理時(shí)間對(duì)比。
圖4~圖74組為去霧結(jié)果對(duì)比,從圖中燈光區(qū)域的對(duì)比可以看出本文算法可以保持光源的輪廓形狀。
圖4 不同方法對(duì)亭子圖片的去霧效果Fig.4 Dehazing results of different methods on pavilion picture
圖5 不同方法去霧效果對(duì)比(第二行為圖中紅框位置放大的結(jié)果,從圖中可以看出,算法[8,11]去霧后亭子頂部的紋理過(guò)于變暗)Fig.5 Comparison results of different dehazing methods (The second line are the magnification results of the red box area in the picture, the textures on the top of the pavilion are too dark after dehazing by algorithm [8,11])
圖6 不同方法對(duì)薄霧和較濃的霧圖像去霧效果對(duì)比Fig.6 Comparison of dehazing results of different methods on haze and dense haze images
圖7 不同方法去霧效果對(duì)比Fig.7 Comparison of different methods of dehazing results
從圖中可以看出,文獻(xiàn)[5]去霧后亮度和細(xì)節(jié)均有改善,但部分區(qū)域會(huì)存在噪聲放大的現(xiàn)象;文獻(xiàn)[6]取得了較好的去霧效果,但抑制光暈的過(guò)程中光源位置周?chē)菀桩a(chǎn)生黑色偽影;文獻(xiàn)[8]去霧后亮度整體偏暗,部分暗區(qū)域會(huì)出現(xiàn)細(xì)節(jié)丟失;文獻(xiàn)[9]去霧效果良好,但少量區(qū)域會(huì)產(chǎn)生顏色失真,如圖7中樹(shù)葉和鐵路位置所示;另外圖6中路燈位置出現(xiàn)黑色偽影;文獻(xiàn)[11]去霧后圖像有著良好的對(duì)比度,但少量暗區(qū)域會(huì)出現(xiàn)細(xì)節(jié)丟失,如圖5湖邊亭子的頂部位置所示;另外在圖7第3幅圖路燈位置出現(xiàn)了模糊的情況;本文算法去霧后在保持圖像細(xì)節(jié)的同時(shí)取得了良好的去霧效果。
客觀評(píng)價(jià)將本文算法的去霧結(jié)果與文獻(xiàn)[5,6,8-9,11]進(jìn)行了對(duì)比。因在現(xiàn)實(shí)場(chǎng)景中同時(shí)獲得夜間有霧的圖像和與其對(duì)應(yīng)的相同條件下拍攝的無(wú)霧Ground Truth圖像是困難的[7],因此采用BRISQUE、NIQE、信息熵和對(duì)比度4個(gè)無(wú)參考指標(biāo)作為參考。
無(wú)參考客觀評(píng)價(jià)指標(biāo)BRISQUE可以測(cè)量圖像細(xì)節(jié)的損失程度,該指標(biāo)值越低代表圖像質(zhì)量越好[14,18];NIQE用來(lái)評(píng)估圖像質(zhì)量,越小的數(shù)值代表圖像質(zhì)量越高[19];信息熵反應(yīng)圖片的信息量,數(shù)值越大代表信息越豐富[20-21];對(duì)比度[1]反應(yīng)圖像細(xì)節(jié)豐富程度,數(shù)值越大越好。表1為對(duì)圖4、5、6計(jì)算的4個(gè)指標(biāo)的對(duì)比情況,表2為對(duì)圖4~圖7中的圖片計(jì)算的上述4個(gè)指標(biāo)的平均值。
表1 不同算法去霧后圖片的指標(biāo)對(duì)比Tab.1 Index comparison of images after dehazing by different algorithms
表2 不同算法去霧后指標(biāo)平均值對(duì)比Tab.2 Comparison of average values of indexes after dehazing by different algorithms
續(xù) 表
從表1和表2的指標(biāo)對(duì)比可以看出,本文算法在質(zhì)量和細(xì)節(jié)保持方面具有一定的優(yōu)勢(shì)。
該節(jié)將本文算法和文獻(xiàn)[6,8,11]做了運(yùn)行時(shí)間的對(duì)比,對(duì)比算法和本文算法代碼均使用Matlab編程實(shí)現(xiàn),測(cè)試電腦系統(tǒng)為Win10 home版,CPU i7-8750H,內(nèi)存為8G,測(cè)試圖像為本文主觀對(duì)比中使用的10張圖片,將圖片的尺寸都調(diào)整為560×420。表3為不同算法在這10張圖片上運(yùn)行時(shí)間的平均值對(duì)比。
表3 不同算法的平均運(yùn)行時(shí)間Tab.3 Average running time of different algorithms
從上表可以看出,本文算法運(yùn)行時(shí)間比文獻(xiàn)[6, 8]要快,比文獻(xiàn)[11]要慢,相比文獻(xiàn)[11],本文算法多了圖片預(yù)處理的過(guò)程。另外在求暗通道和權(quán)重α的過(guò)程中增加了判斷條件,還有采用兩種大氣光分量融合的方式等原因?qū)е铝诉\(yùn)行時(shí)間的增加。
本文提出了一種簡(jiǎn)單有效的夜間圖像去霧算法,通過(guò)兩個(gè)大氣光分量融合的方式得出適合光照不均勻夜間環(huán)境的大氣光。通過(guò)自適應(yīng)權(quán)重圖融合亮通道和暗通道推導(dǎo)出的透射率函數(shù),結(jié)合了亮通道和暗通道各自的優(yōu)點(diǎn),去霧后視覺(jué)效果良好。實(shí)驗(yàn)結(jié)果表明,在測(cè)試圖片上計(jì)算的BRISQUE、NIQE、信息熵、對(duì)比度指標(biāo)的平均值分別為18.281,3.494 3,7.587 2,23.809 7,與對(duì)比算法相比均有一定的提升。本文算法去霧后可以較好地保留原圖像的結(jié)構(gòu)信息,且細(xì)節(jié)失真較小。