何惜琴, 陳冬冬
(閩南理工學(xué)院 電子與電氣工程學(xué)院,福建 泉州 362700)
霧霾的存在使得場(chǎng)景視見(jiàn)度降低,造成機(jī)器設(shè)備拍攝的戶(hù)外圖像嚴(yán)重退化,色彩保真度不足,細(xì)節(jié)辨識(shí)度較差,影響了圖像在安防監(jiān)控、檢測(cè)識(shí)別與分析等場(chǎng)合的應(yīng)用[1-3]。為了降低霧霾對(duì)戶(hù)外圖像的干擾,有必要研究針對(duì)有霧圖像的清晰化處理,這對(duì)于提高圖像系統(tǒng)的有效性和適用性具有積極的促進(jìn)作用[4-5]。
基于大氣散射模型和深度學(xué)習(xí)的去霧方法成為近年來(lái)的研究熱點(diǎn)。深度學(xué)習(xí)去霧通常采用神經(jīng)網(wǎng)絡(luò)對(duì)大量數(shù)據(jù)集進(jìn)行訓(xùn)練,然而霧天場(chǎng)景具有多樣性的特點(diǎn),訓(xùn)練的樣本數(shù)量和多樣性受限將導(dǎo)致場(chǎng)景適應(yīng)性不足。模型去霧算法分析霧氣形成的因素,充分利用先驗(yàn)假設(shè)信息從根本上去除霧氣影響,適用場(chǎng)景更廣。He等人[6]通過(guò)觀察大量自然圖像得出規(guī)律:無(wú)霧圖像的大多數(shù)局部塊中至少存在某一顏色通道值很低的像素點(diǎn),而受霧氣影響的圖像會(huì)使得這些通道值升高。利用這一先驗(yàn)規(guī)律估計(jì)景物透射率和大氣光強(qiáng)度,再采用軟摳圖對(duì)透射率進(jìn)行優(yōu)化修復(fù),取得了較好的去霧結(jié)果。Meng等人[7]利用約束條件對(duì)透射率進(jìn)行細(xì)化,再通過(guò)正則化對(duì)恢復(fù)圖像建模,在提升圖像對(duì)比度的同時(shí),減少了噪聲干擾。Zhu等人[8]首次將顏色衰減先驗(yàn)信息用于透射率的計(jì)算,并借助監(jiān)督學(xué)習(xí)對(duì)景物深度進(jìn)行估計(jì),恢復(fù)的圖像具有色彩鮮艷、細(xì)節(jié)清晰的特點(diǎn)。Cai等人[9]將透射率的估計(jì)融入端到端的深度訓(xùn)練系統(tǒng),再通過(guò)大氣散射模型復(fù)原清晰結(jié)果。Bui等人[10]使用彩色橢球體模型計(jì)算透射率,在維持色彩保真度方面取得了一定成效。Salazar等人[11]結(jié)合多層感知器和通道最小值對(duì)透射率進(jìn)行有效計(jì)算,且借助對(duì)比度拉伸技術(shù)擴(kuò)寬了動(dòng)態(tài)范圍。Liu等人[12]結(jié)合先驗(yàn)知識(shí)和數(shù)據(jù)信息估計(jì)透射率,采用殘差網(wǎng)絡(luò)結(jié)構(gòu)有效提升了算法的魯棒性。Vazquez等人[13]充分利用顏色通道的迭代耦合關(guān)系,提出一種基于物理模型的去霧優(yōu)化算法,并通過(guò)參考指標(biāo)與非參考指標(biāo)驗(yàn)證了算法的優(yōu)越性。
考慮到霧氣對(duì)圖像具有漂白作用,為了更準(zhǔn)確地恢復(fù)圖像的顏色與細(xì)節(jié),本文通過(guò)YUV顏色模型分離亮度分量和色度分量,一方面對(duì)亮度分量進(jìn)行去霧處理,增強(qiáng)細(xì)節(jié)可見(jiàn)性與邊緣梯度;另一方面對(duì)色度分量進(jìn)行補(bǔ)償,有效提升色彩保真度,避免偏色與過(guò)飽和現(xiàn)象。大量仿真實(shí)驗(yàn)證明本文算法具有優(yōu)越的視覺(jué)效果和評(píng)價(jià)指標(biāo),為去霧提供了一種新的解決方案。
大氣散射模型常被用于圖像復(fù)原和圖像去霧方面的研究,其表達(dá)式可寫(xiě)為:
I(x)=J(x)t(x)+A(1-t(x))
(1)
其中,I(x)為有霧圖像,J(x)為霧氣去除后的清晰圖像,A為全局大氣光強(qiáng)度,t(x)為景物透射率。當(dāng)場(chǎng)景光線的傳播介質(zhì)均勻分布時(shí),t(x)=e-βd(x),β為大氣散射系數(shù),d(x)為場(chǎng)景深度。式(1)中,定義大氣光幕:
M(x)=A(1-t(x))=A(1-e-βd(x))
.
(2)
大氣光幕體現(xiàn)景物周?chē)饩€的散射作用,造成了實(shí)際場(chǎng)景的顏色退化和對(duì)比度下降。該模型表明,已知I(x)的前提下,求解M(x)、t(x)和A便可復(fù)原清晰的無(wú)霧圖像J(x)。
目前常用于圖像去霧的顏色模型有RGB、HSV和YUV等。使用RGB模型復(fù)原圖像時(shí),需要單獨(dú)對(duì)3個(gè)顏色通道進(jìn)行操作,若通道間的顏色不平衡易造成偏色現(xiàn)象;HSV模型與人眼感知顏色的方式較為近似,其色度、飽和度和亮度可單獨(dú)提取,與RGB模型的轉(zhuǎn)換涉及到每個(gè)像素點(diǎn)的三角函數(shù)計(jì)算,所需的計(jì)算量和運(yùn)行時(shí)間成本較高;而YUV模型的轉(zhuǎn)換僅需簡(jiǎn)單的代數(shù)計(jì)算即可完成,容易移植到視頻處理模塊,且亮度分量Y和色度分量U、V是分離的,彼此之間互不影響,常用于解決視頻流傳輸和電視兼容問(wèn)題。
從RGB模型到Y(jié)UV模型的轉(zhuǎn)換公式如下:
(3)
式中,R、G、B分別表示每個(gè)像素點(diǎn)的紅、綠、藍(lán)三基色,線性加權(quán)得到亮度分量Y;色度分量U和V的加權(quán)系數(shù)各不相同,充分考慮了人眼視覺(jué)感官對(duì)色差的敏感度。從YUV模型到RGB模型的轉(zhuǎn)換公式如下:
(4)
式中,色度V反映了紅色與亮度分量的差異,色度U反映的是藍(lán)色與亮度分量的差異。在YUV模型下實(shí)現(xiàn)圖像處理之后,需轉(zhuǎn)換到RGB模型才能正常顯示。
與當(dāng)前主流方法不同的是,本文使用YUV顏色模型進(jìn)行去霧操作。首先通過(guò)式(3)對(duì)原始圖像I進(jìn)行分離,得到亮度分量IY和色度分量IU、IV;其次根據(jù)大氣散射模型求解亮度分量IY的光幕值、透射率和大氣光強(qiáng)度,而對(duì)色度分量IU、IV進(jìn)行顏色補(bǔ)償,一方面能夠節(jié)省計(jì)算量,另一方面能夠有效恢復(fù)圖像的色彩。
為了獲取精確的光幕值,對(duì)亮度分量IY執(zhí)行形態(tài)學(xué)開(kāi)運(yùn)算,既可消除紋理細(xì)節(jié)和亮白色物體的干擾,又能基本維持整體亮度不變,該結(jié)果記為P,如圖1(a)所示,圖像中存在矩形塊現(xiàn)象,接下來(lái)采用導(dǎo)向?yàn)V波[14]進(jìn)行細(xì)化。
圖1 大氣光幕和大氣光強(qiáng)度的估計(jì)Fig.1 Estimation of atmospheric veil and airlight
導(dǎo)向?yàn)V波常被用于平滑去噪、細(xì)節(jié)增強(qiáng)和HDR壓縮等方面的應(yīng)用,具有計(jì)算快速、效果出眾的特點(diǎn)。該濾波器中,需要將邊緣豐富的圖像作為導(dǎo)向圖,然而原始圖像及其亮度分量IY均受霧氣影響,細(xì)節(jié)退化,邊緣梯度不明顯,此處構(gòu)造拉普拉斯銳化算子對(duì)亮度分量進(jìn)行卷積運(yùn)算,該算子的模板形式如下:
(5)
銳化過(guò)程可表示為:
L=hIY
(6)
(7)
式中,ak和bk表示線性變換參數(shù),|w|表示局部圖像塊wk的像素總個(gè)數(shù)。在線性模型中,為了求解變換參數(shù),通過(guò)最小化輸入和輸出之間的差值計(jì)算代價(jià)函數(shù),即在局部圖像塊wk中,有
(8)
式中,ε表示規(guī)則參數(shù),用于調(diào)整細(xì)節(jié)的平滑程度。根據(jù)線性回歸求解式(8)中的變換參數(shù),得到
(9)
(10)
將ak和bk代入式(7)計(jì)算之后,濾波結(jié)果即為大氣光幕M,如圖1(c)所示,可以看出,M基本保留了導(dǎo)向圖L的邊緣結(jié)構(gòu),且局部亮度與輸入圖P高度相似。
假定大氣光強(qiáng)度A已知的前提下,根據(jù)式(2)計(jì)算透射率:
(11)
式中,0≤ω≤1,用于控制圖像的霧氣去除程度,為了保留小部分霧氣使復(fù)原圖像的視覺(jué)效果具有層次感,一般取ω=0.95。若圖像中存在大面積亮度近似大氣光值的天空,容易導(dǎo)致該區(qū)域的透射率出現(xiàn)偏差,從而影響復(fù)原圖像的視覺(jué)效果。原因在于天空基本不含信息量,即便是完全無(wú)霧的情況下,其灰度值也較大,因此通過(guò)式(11)計(jì)算后認(rèn)定該區(qū)域的霧氣濃度高,造成過(guò)度去霧處理而出現(xiàn)色彩失真。為了克服該局限,需要對(duì)天空區(qū)域的透射率進(jìn)行修正。此處引入容差參數(shù)[15]R,依據(jù)光幕值和大氣光強(qiáng)度值的絕對(duì)差大小來(lái)判斷天空區(qū)域:將滿(mǎn)足|M(x)-A|>R的區(qū)域視為非天空,此時(shí)維持透射率不變;將滿(mǎn)足|M(x)-A|≤R的區(qū)域則視為天空,此時(shí)透射率需要進(jìn)行修正:
(12)
式中,容差參數(shù)R一般取為60。修正之后,可確保天空區(qū)域的透射率值增大,從而弱化該區(qū)域的去霧,避免色彩失真現(xiàn)象。
全局大氣光強(qiáng)度A是圖像去霧的另一個(gè)關(guān)鍵參數(shù)。當(dāng)前求解的方式較多,如對(duì)天空區(qū)域進(jìn)行分割提取,并尋找最大值或者計(jì)算均值[16]來(lái)估計(jì)A,此類(lèi)方法的局限在于要求場(chǎng)景中存在天空。采用四叉樹(shù)迭代搜索的方式[17]估計(jì)A值取得一定的效果,不足之處在于較難避免非霧氣的白色目標(biāo)干擾。李喆[18]將暗通道和景深圖中最亮的部分像素保留下來(lái),再將其最大值視為A,該方法的局限在于自然拍攝的場(chǎng)景深度是未知的,難以保證估計(jì)的準(zhǔn)確性。
由大氣散射的特征可知,大氣光強(qiáng)度A位于圖像中霧氣最濃或深度最大的區(qū)域,尋得該區(qū)域即可求得準(zhǔn)確值。根據(jù)3.1節(jié)的分析,開(kāi)運(yùn)算操作消除了圖像中類(lèi)似白色目標(biāo)的影響,且導(dǎo)向?yàn)V波后的光幕值近似反映了霧氣分布特性,因此可依據(jù)M的強(qiáng)度信息獲取大氣光強(qiáng)度A。本文提出估計(jì)A的步驟如下:
(1)為了進(jìn)一步消除噪聲以及個(gè)別異常像素的干擾,標(biāo)記M中最亮的前0.2%像素點(diǎn)坐標(biāo);
(2)該坐標(biāo)對(duì)應(yīng)于IY中相同位置的像素集合指定為霧最濃區(qū)域,如圖1(d)的右上角所示,以黑色填充標(biāo)識(shí);
(3)計(jì)算該區(qū)域內(nèi)所有像素的平均值作為大氣光強(qiáng)度A。
由透射率tr和大氣光強(qiáng)度A即可反解大氣散射模型,求出亮度分量的清晰結(jié)果:
(13)
維持色度分量IU、IV不變,通過(guò)式(4)進(jìn)行轉(zhuǎn)換即可得到恢復(fù)效果。圖2(a)為霧天圖像,圖2(b)為去霧結(jié)果,可以看出,圖像的霧氣被有效去除,對(duì)比度和視見(jiàn)度有所提升,但是仍然存在兩個(gè)問(wèn)題:一是去霧后的整體亮度較弱,部分細(xì)節(jié)可見(jiàn)性不足;二是霧氣具有漂白作用,僅對(duì)亮度分量進(jìn)行恢復(fù)將無(wú)法補(bǔ)償顏色信息,造成景物表面的色彩飽和度不足。為了使視覺(jué)效果符合人眼特性,首先采用曲線擬合[19]對(duì)JY進(jìn)行亮度調(diào)整,計(jì)算公式如下:
圖2 去霧結(jié)果和色度補(bǔ)償Fig.2 Defogging results and chroma compensation
(14)
式中,δ表示增強(qiáng)系數(shù),數(shù)值越小則圖像的整體亮度越高。δ可根據(jù)大氣光幕的平均亮度自適應(yīng)選取,即δ=2×mean(M(x)),mean表示求平均值。
其次根據(jù)亮度分量IY對(duì)色度分量IU、IV進(jìn)行補(bǔ)償:
(15)
(16)
式中,JUL、JVL為補(bǔ)償后的結(jié)果;κ表示補(bǔ)償系數(shù),數(shù)值越大則圖像的飽和度越高。圖2給出了κ分別取2、4、6時(shí)的色度補(bǔ)償效果,不難看出,圖2(c)顏色暗淡,飽和度不足;圖2(e)過(guò)于飽和;圖2(d)整體適中,與原圖像的色度基本保持一致。
本文算法在MATLAB R2015a上編程實(shí)現(xiàn),對(duì)600幅不同場(chǎng)景下的含霧圖像進(jìn)行了實(shí)驗(yàn)測(cè)試。算法中形態(tài)學(xué)開(kāi)運(yùn)算采用25×25的方形結(jié)構(gòu)元素,導(dǎo)向?yàn)V波的規(guī)則參數(shù)取0.01,局部圖像塊尺寸取17×17。實(shí)驗(yàn)對(duì)比的算法有國(guó)際主流的Meng算法[7]、Cai算法[9]、Salazar算法[11]和Vazquez算法[13]。
圖3給出了上述算法的處理結(jié)果。img1為不含天空的近景圖像,對(duì)比圖中左上角的房子可以看出,本文算法的對(duì)比度更好,細(xì)節(jié)可見(jiàn)性更強(qiáng)。img2為小型無(wú)人機(jī)航拍的地面圖像,Meng算法雖然將霧氣去除,但整體顏色過(guò)于飽和,場(chǎng)景層次感不足;Cai算法、Salazar算法和Vazquez算法對(duì)遠(yuǎn)處的去霧效果不佳;相比之下,本文算法對(duì)霧氣的去除較為徹底,整體明亮通透。img3和img4為含大面積天空的濃霧圖像,Meng算法存在明顯的顏色失真現(xiàn)象;Cai算法和Vazquez算法的視覺(jué)效果相似,對(duì)樓房建筑、天安門(mén)的去霧力度不足;Salazar算法整體明亮,但仍受到較多霧氣的影響;本文算法的視見(jiàn)度和清晰度更高,對(duì)天空的保持效果明顯。img5為混合遠(yuǎn)、近景的濃霧圖像,Meng算法出現(xiàn)偏藍(lán)色現(xiàn)象;Cai算法的對(duì)比度較差;Salazar算法和Vazquez算法的遠(yuǎn)處仍然存在霧氣沒(méi)有去除干凈;通過(guò)對(duì)比可知,本文算法的色調(diào)與原圖像基本一致,恢復(fù)效果優(yōu)于其他算法。img6為含有近景的薄霧圖像,本文算法對(duì)近景處的亮度和顏色提升更明顯,細(xì)節(jié)對(duì)比度更強(qiáng),其余算法均出現(xiàn)顏色暗淡與細(xì)節(jié)辨識(shí)度較差的缺陷。
圖3 去霧結(jié)果比較Fig.3 Comparison of defogging results
在客觀指標(biāo)方面,采用信息熵、平均梯度和標(biāo)準(zhǔn)差作為評(píng)價(jià)參數(shù),表1給出了圖3中6組圖像的評(píng)價(jià)結(jié)果。從表1可知,本文算法的信息熵占較大優(yōu)勢(shì),意味著恢復(fù)圖像的細(xì)節(jié)信息更多、顏色信息更豐富。本文算法的平均梯度和標(biāo)準(zhǔn)差均為最優(yōu)值,表明邊緣輪廓比其他方法更加清晰,對(duì)比度更高??陀^評(píng)價(jià)的結(jié)論與主觀評(píng)價(jià)基本一致,再次驗(yàn)證了本文算法的有效性。
表1 客觀參數(shù)評(píng)價(jià)Tab.1 Objective parameter evaluation
續(xù) 表
本文采用YUV顏色模型與導(dǎo)向?yàn)V波相結(jié)合的方式恢復(fù)含霧圖像的真實(shí)場(chǎng)景。首先構(gòu)造拉普拉斯銳化算子,結(jié)合導(dǎo)向?yàn)V波對(duì)大氣光幕進(jìn)行細(xì)化,并糾正天空區(qū)域的透射率值;接著計(jì)算濃霧區(qū)域的均值作為大氣光強(qiáng)度;最后補(bǔ)償色度信息,恢復(fù)無(wú)霧場(chǎng)景的真實(shí)色彩。主觀評(píng)價(jià)和客觀指標(biāo)均驗(yàn)證了本文算法具有增強(qiáng)邊緣強(qiáng)度與細(xì)節(jié)可見(jiàn)性的優(yōu)勢(shì),其中信息熵提高1.2%以上,平均梯度提高48.0%以上,標(biāo)準(zhǔn)差提高10.6%以上。本文算法能夠有效維持原始圖像的顏色關(guān)聯(lián)性,適合移植到視頻監(jiān)控、戶(hù)外直播等流媒體方面的應(yīng)用。