王 蓉,楊 燕
(蘭州交通大學(xué)電子與信息工程學(xué)院,甘肅 蘭州 730070)
霧、霾等惡劣天氣條件下,由于空氣中懸浮的氣溶膠、水滴等顆粒會(huì)對光線產(chǎn)生散射,導(dǎo)致捕獲的室外圖像出現(xiàn)對比度降低、顏色失真和細(xì)節(jié)模糊等降質(zhì)問題[1],對戶外物體識(shí)別、障礙物檢測、視頻監(jiān)控和智能運(yùn)輸?shù)扔?jì)算機(jī)視覺系統(tǒng)造成極大影響。因此,對降質(zhì)圖像進(jìn)行有效的清晰化處理具有重要的研究意義和實(shí)際應(yīng)用價(jià)值。
目前,圖像去霧算法主要分為3大類:基于圖像增強(qiáng)的算法、基于圖像復(fù)原的算法和基于機(jī)器學(xué)習(xí)的算法?;趫D像增強(qiáng)的算法并未考慮圖像退化的本質(zhì)原因,僅通過提高對比度、突出場景特征對降質(zhì)圖像作簡單的清晰化處理,極易造成圖像過度增強(qiáng)且丟失局部細(xì)節(jié),從而不能實(shí)現(xiàn)真正意義上的去霧。經(jīng)典的基于圖像增強(qiáng)的算法包括小波變換[2]、直方圖均衡化[3]和Retinex算法[4]等。
基于機(jī)器學(xué)習(xí)的算法通過構(gòu)建網(wǎng)絡(luò)模型并對其進(jìn)行訓(xùn)練,進(jìn)而得到復(fù)原的無霧圖像。Cai等人[5]提出了一種基于端到端的卷積神經(jīng)網(wǎng)絡(luò)架構(gòu),通過學(xué)習(xí)有霧圖像與其對應(yīng)透射率圖之間的映射關(guān)系來實(shí)現(xiàn)場景復(fù)原。Ren等人[6]提出了一種多尺度卷積神經(jīng)網(wǎng)絡(luò)去霧算法,首先使用粗尺度網(wǎng)絡(luò)對場景透射率進(jìn)行粗略估計(jì),再通過另一個(gè)細(xì)尺度網(wǎng)絡(luò)進(jìn)一步優(yōu)化得到復(fù)原圖像。Li等人[7]根據(jù)重構(gòu)的大氣散射模型提出一種一體化去霧網(wǎng)絡(luò)AOD-Net(All-in-One Dehazing Netwok),該網(wǎng)絡(luò)與大多數(shù)分別估計(jì)透射率和大氣光的模型不同,可通過輕量級卷積神經(jīng)網(wǎng)絡(luò)直接生成無霧圖像。Qin等人[8]提出了一種端到端的特征融合注意力網(wǎng)絡(luò)FFA-Net(Feature Fusion Attention Network),可以有效提取圖像特征并直接恢復(fù)無霧圖像,但對于真實(shí)場景有霧圖像復(fù)原效果并不理想。盡管深度學(xué)習(xí)是目前各個(gè)領(lǐng)域的研究熱點(diǎn),但對于圖像去霧而言,由于缺乏大量的真實(shí)圖像數(shù)據(jù)集對網(wǎng)絡(luò)進(jìn)行訓(xùn)練,導(dǎo)致該類方法在真實(shí)場景霧圖處理方面效果欠佳,因而在實(shí)際應(yīng)用中具有一定的局限性。
基于圖像復(fù)原的算法通過分析圖像退化機(jī)理建立物理模型,利用特定的先驗(yàn)或假設(shè)估計(jì)模型中的未知參數(shù),實(shí)現(xiàn)自然場景的有效復(fù)原。Tan[9]基于大量統(tǒng)計(jì)信息發(fā)現(xiàn)無霧圖像對比度遠(yuǎn)高于有霧圖像,進(jìn)而采取最大化局部對比度來達(dá)到去霧的目的,得到的復(fù)原圖像具有較好的視覺效果,但容易出現(xiàn)過飽和及光暈效應(yīng)。Fattal[10]假設(shè)物體表面陰影與介質(zhì)傳輸率局部不相關(guān),通過獨(dú)立成分分析法實(shí)現(xiàn)場景復(fù)原,但由于缺乏足夠的顏色信息,對于濃霧圖像及灰度圖像該算法無效。He等人[11]通過觀察大量無霧圖像統(tǒng)計(jì)特性,提出了暗通道先驗(yàn)理論,并結(jié)合大氣散射模型復(fù)原出清晰無霧的圖像,但該算法不適用于含有天空等明亮區(qū)域的圖像,且復(fù)原結(jié)果在景深突變處易出現(xiàn)光暈及塊狀偽影。Meng等人[12]提出了一種基于邊界約束的正則化去霧算法,以犧牲部分細(xì)節(jié)為代價(jià)來獲得較好的復(fù)原結(jié)果。Zhu等人[13]提出了一種線性顏色衰減先驗(yàn)理論,對霧圖景深(指有霧圖像的場景深度)進(jìn)行建模并使用監(jiān)督方法學(xué)習(xí)模型參數(shù),能恢復(fù)較多的細(xì)節(jié)信息但去霧不夠徹底。
針對上述圖像復(fù)原算法的不足,本文提出了一種改進(jìn)算法,在避免暗通道先驗(yàn)算法景深突變處易產(chǎn)生光暈偽影及天空等明亮區(qū)域偏色現(xiàn)象的同時(shí),保持復(fù)原結(jié)果去霧徹底且清晰自然。首先,對大氣散射模型作對數(shù)變換,結(jié)合暗通道先驗(yàn)理論提出對數(shù)域正相關(guān)關(guān)系;然后建立高斯函數(shù)進(jìn)行擬合得到粗級透射率,再利用自適應(yīng)伽馬校正技術(shù)與交叉雙邊濾波操作對透射率進(jìn)行優(yōu)化;最后,設(shè)定不同尺寸的濾波核執(zhí)行閉操作,以獲得改進(jìn)后的局部大氣光,結(jié)合大氣散射模型實(shí)現(xiàn)無霧圖像的有效復(fù)原。實(shí)驗(yàn)結(jié)果表明,本文算法去霧效果較好,能有效地恢復(fù)出圖像的細(xì)節(jié)信息。
在計(jì)算機(jī)視覺和圖像處理領(lǐng)域中,通常以大氣散射模型[14,15]為理論基礎(chǔ)對霧圖形成過程進(jìn)行描述,如式(1)所示:
I(x)=J(x)t(x)+A(1-t(x))
(1)
其中,I(x)為有霧圖像;J(x)為無霧圖像;A為大氣光;t(x)為場景透射率,表示光線在傳播過程中未被散射且到達(dá)成像設(shè)備的部分。當(dāng)大氣同質(zhì)時(shí),t(x)可表示為式(2):
t(x)=e-βd(x),0≤t(x)≤1
(2)
其中,β為大氣散射系數(shù),d(x)為場景深度?;谖锢砟P腿レF的關(guān)鍵在于通過估計(jì)未知參數(shù)A和t(x),結(jié)合大氣散射模型從I(x)中恢復(fù)出J(x)。顯然該復(fù)原過程是一個(gè)典型的病態(tài)問題,因此需要借助一些先驗(yàn)知識(shí)或約束條件來達(dá)到圖像去霧的目的。
He等人[11]通過對大量戶外無霧圖像進(jìn)行統(tǒng)計(jì),得出在無霧圖像非天空區(qū)域中至少存在一個(gè)顏色通道,其像素值很低甚至趨近于0,該通道稱為暗通道,用公式可表示為如式(3)所示:
(3)
其中,Jdark(x)稱為無霧圖像暗通道,Ω(x)是以像素x為中心的鄰域窗口,c表示r,g,b通道中的某個(gè)顏色通道。假設(shè)大氣光A為常數(shù),對式(1)兩邊同時(shí)作2次最小值運(yùn)算可得到式(4):
(4)
其中,Idark(x)表示有霧圖像的暗通道。結(jié)合式(3)可得透射率表達(dá)式如式(5)所示:
(5)
由于暗通道采用了2次最小值濾波操作,導(dǎo)致恢復(fù)圖像在景深突變處產(chǎn)生嚴(yán)重的光暈現(xiàn)象,為此He等人[11]引入Soft Matting方法對透射率進(jìn)行優(yōu)化,以獲得較好的邊緣保持特性,但其時(shí)間復(fù)雜度極高。后來,He等人[16]又提出使用引導(dǎo)濾波技術(shù)代替軟摳圖處理,算法效率得到了很好的提升。
針對暗通道先驗(yàn)算法在天空等高亮區(qū)域透射率估計(jì)不準(zhǔn)確,以及景深突變處易產(chǎn)生光暈效應(yīng)等問題,本文提出了一種基于轉(zhuǎn)換域和自適應(yīng)伽馬校正的圖像去霧算法,算法流程如圖1所示。第1部分是對透射率進(jìn)行估計(jì),首先,對大氣散射模型兩邊作對數(shù)變換,提出一種對數(shù)域正相關(guān)關(guān)系,通過構(gòu)造高斯函數(shù)對其進(jìn)行擬合得到透射率的粗略估計(jì);然后,將有霧圖像轉(zhuǎn)換至HSV色彩空間提取亮度分量,構(gòu)造自適應(yīng)伽馬校正因子對粗級透射率進(jìn)行修正,再使用交叉雙邊濾波得到優(yōu)化透射率。第2部分是大氣光估計(jì),受到局部大氣光探索方法的啟示,本文分別采用2個(gè)不同尺寸的濾波核執(zhí)行閉操作處理,然后求取二者算術(shù)平均值得到均衡后的閉操作結(jié)果,從而得到改進(jìn)后的大氣光A。最后,利用大氣散射模型得到復(fù)原的無霧圖像。
Figure 1 Flowchart of the proposed algorithm圖1 本文算法流程圖
假設(shè)大氣光A已知,對式(1)進(jìn)行變換可得式(6):
(6)
由于有霧圖像I(x)、透射率t(x)及無霧圖像J(x)之間必然存在某種相關(guān)關(guān)系,因此為了便于分析各變量之間的相關(guān)性,可對式(6)兩邊作對數(shù)變換,將其轉(zhuǎn)換至對數(shù)域?qū)崿F(xiàn)變量分離,并結(jié)合式(5),得到式(7):
(7)
大氣光A不影響式(7)兩邊變量之間的相關(guān)性,因此基于式(7),本文提出了一種對數(shù)域正相關(guān)關(guān)系,如式(8)所示:
ln(1-J(x))∝{ln(1-I(x))-ln(1-Idark(x))}
(8)
其中,I(x)和Idark(x)均為已知量。為了方便推導(dǎo)可設(shè)定中間變量temp(x),其表達(dá)式如式(9)所示:
temp(x)=ln(1-I(x))-ln(1-Idark(x))
(9)
將temp(x)從對數(shù)域轉(zhuǎn)換至標(biāo)準(zhǔn)空間,結(jié)合式(8)得到標(biāo)準(zhǔn)域下的正相關(guān)關(guān)系,如式(10)所示:
1-J(x)∝etemp(x)
(10)
由于高斯函數(shù)具有較好的分布特性,并且可以通過調(diào)節(jié)方差使其函數(shù)形狀可控[17],因此本文提出采用均值為1,方差為σ2的高斯函數(shù)來擬合式(10)中的正相關(guān)關(guān)系,從而實(shí)現(xiàn)無霧圖像的初始估計(jì)J0(x),如式(11)所示:
J0(x)=1-e-(1-etemp(x))2/σ2
(11)
Figure 2 Dehazing results with different values of σ圖2 不同σ值時(shí)的最終復(fù)原結(jié)果
其中,σ為標(biāo)準(zhǔn)差,其取值大小會(huì)影響無霧圖像的最終復(fù)原質(zhì)量。圖2為選取不同σ值時(shí)的最終復(fù)原結(jié)果對比。從圖2b~圖2e可以看出,當(dāng)σ值較小時(shí),復(fù)原圖像較為自然,但仍有殘霧存在;當(dāng)σ值較大時(shí),圖像去霧比較徹底,但又會(huì)出現(xiàn)輕微的過飽和現(xiàn)象。通過對大量霧圖進(jìn)行仿真,實(shí)驗(yàn)得出當(dāng)σ取0.6時(shí)圖像去霧后的復(fù)原質(zhì)量最佳。
上述基于有霧圖像及其暗通道估計(jì)的初始無霧圖像J0(x)存在嚴(yán)重的塊狀偽影及光暈現(xiàn)象,并不能作為最終的復(fù)原結(jié)果,此處仍然估計(jì)J0(x)的目的在于實(shí)現(xiàn)本文透射率的粗略估計(jì)。
假設(shè)大氣光A已知,對式(1)兩邊同時(shí)執(zhí)行最小通道操作,得到最小通道大氣散射模型,如式(12)所示:
(12)
對式(12)進(jìn)行變形得到透射率,如式(13)所示:
(13)
(14)
其中,k為衰減系數(shù),代表有霧圖像與其最小通道之間的衰減程度。根據(jù)大氣成像理論,無霧圖像與其最小通道間存在同樣的衰減關(guān)系,因此可通過該衰減系數(shù)對J0(x)作近似衰減,得到式(15):
(15)
結(jié)合式(13)可以得到透射率的粗略估計(jì),如式(16)所示:
(16)
通過粗級透射率所復(fù)原的無霧圖像在部分區(qū)域出現(xiàn)發(fā)黑現(xiàn)象,并且圖像整體偏暗。為了克服上述不足,本文使用伽馬校正技術(shù)對粗級透射率進(jìn)行修正,如式(17)所示:
(17)
其中,γ為校正因子。當(dāng)γ>1時(shí),圖像整體灰度值變小,即圖像變暗;當(dāng)γ<1時(shí),圖像整體灰度值變大,即圖像變亮。為了避免透射率估計(jì)不足所引起的圖像偏暗,設(shè)定γ的取值為[0,1]。然而,對于不同的有霧圖像,需分別設(shè)置不同的γ值來使復(fù)原圖像擁有最佳效果,這導(dǎo)致算法存在手動(dòng)設(shè)置參數(shù)的缺陷。另外,在圖像不同區(qū)域均采用所設(shè)定值對透射率進(jìn)行修正,會(huì)使得部分區(qū)域透射率估計(jì)不準(zhǔn)確,從而產(chǎn)生顏色失真現(xiàn)象。因此,本文提出采用亮度分量構(gòu)造自適應(yīng)伽馬校正因子,實(shí)現(xiàn)在圖像不同區(qū)域采用不同的γ值對粗級透射率進(jìn)行校正,這不僅降低了算法復(fù)雜度,而且有效避免了部分區(qū)域顏色失真現(xiàn)象。首先,將有霧圖像轉(zhuǎn)換至HSV色彩空間以提取亮度分量v(x),然后對其作如式(18)所示的處理,得到自適應(yīng)伽馬校正因子:
γ=1-α·v(x)
(18)
其中,α為控制參數(shù),控制圖像去霧程度,經(jīng)驗(yàn)取值為0.4。結(jié)合式(17)和式(18)得到自適應(yīng)伽馬校正之后的透射率,再利用交叉雙邊濾波對其作平滑處理,得到優(yōu)化透射率。
圖3為粗級透射率校正前后復(fù)原結(jié)果對比圖。圖3b是透射率未校正之前所得的復(fù)原結(jié)果,可以看出圖像中鐵軌處發(fā)黑嚴(yán)重且復(fù)原結(jié)果整體偏暗;圖3c為自適應(yīng)伽馬校正之后所得的復(fù)原結(jié)果,局部區(qū)域發(fā)黑現(xiàn)象明顯得到抑制,且復(fù)原圖像明亮度適宜,去霧效果較好。
Figure 3 Comparison of recovered results before and after transmission correction圖3 透射率校正前后復(fù)原結(jié)果對比
如圖4所示,與Sun算法[18]相比,本文大氣光估計(jì)更為準(zhǔn)確且在局部區(qū)域內(nèi)具有更多細(xì)節(jié)信息。同時(shí),本文算法的復(fù)原結(jié)果亮度適宜,邊緣處沒有出現(xiàn)光暈現(xiàn)象,整體效果較好。
Figure 4 Comparison of atmospheric light and recovered results圖4 大氣光及復(fù)原結(jié)果對比
基于上述內(nèi)容得出大氣光A和優(yōu)化透射率,將二者代入大氣散射模型便可得到最終的復(fù)原圖像J(x),如式(19)所示:
(19)
其中,設(shè)定t0為透射率的下限值,取值為0.1,目的是為了避免分母趨于0。
為了驗(yàn)證所提算法的有效性與可行性,本文選取多幅霧霾天氣圖像進(jìn)行對比實(shí)驗(yàn),從主觀評價(jià)和客觀評價(jià)2方面對算法復(fù)原結(jié)果進(jìn)行分析。
主觀評價(jià)是以人的主觀感受為準(zhǔn),存在一定的片面性,但可以直觀地反映出圖像的復(fù)原效果。本文選取6幅具有不同特征的霧天圖像作為實(shí)驗(yàn)樣本,其中包括近景與遠(yuǎn)景區(qū)域、天空與非天空區(qū)域、薄霧與濃霧區(qū)域。基于這些圖像將本文算法與文獻(xiàn)[16]中的算法(簡稱He算法)、文獻(xiàn)[12]中的算法(簡稱Meng算法)、文獻(xiàn)[6]中的算法(簡稱Ren算法)、文獻(xiàn)[7]中的算法(簡稱Li算法)和文獻(xiàn)[8]中的算法(簡稱Qin算法)進(jìn)行對比,實(shí)驗(yàn)結(jié)果如圖5所示。
Figure 5 Comparison of experimental results圖5 實(shí)驗(yàn)結(jié)果對比
圖5a為輸入的有霧圖像。圖5b為He算法中使用暗通道先驗(yàn)算法復(fù)原的結(jié)果,可以看到霧氣基本去除,但在景深突變區(qū)域仍存在嚴(yán)重的光暈效應(yīng)且去霧不夠徹底,如第1和第6幅圖像。另外,對于包含天空區(qū)域的圖像透射率估計(jì)不準(zhǔn)確,導(dǎo)致天空區(qū)域出現(xiàn)偏色現(xiàn)象,如第2和第3幅圖像。圖5c為Meng算法中使用的邊界約束算法復(fù)原的結(jié)果,恢復(fù)圖像細(xì)節(jié)明顯增多但色彩保真度較差,出現(xiàn)了顏色失真及過飽和現(xiàn)象,尤其在天空及景深變化區(qū)域偏色嚴(yán)重,如第2、第3和第6幅圖像。圖5d為Ren算法中使用多尺度卷積神經(jīng)網(wǎng)絡(luò)算法復(fù)原的結(jié)果,對于薄霧圖像去霧比較徹底,但在部分區(qū)域仍存在嚴(yán)重的偏色及過飽和現(xiàn)象,如第1和第2幅圖像中的樹葉和天空區(qū)域。圖5e為Li算法中使用一體化去霧網(wǎng)絡(luò)算法復(fù)原的結(jié)果,存在輕微的過飽和現(xiàn)象,且復(fù)原結(jié)果整體偏暗,因而視覺效果一般,如第1和第4幅圖像。圖5f為Qin算法中使用特征融合注意力網(wǎng)絡(luò)算法復(fù)原的結(jié)果,恢復(fù)圖像在天空區(qū)域具有較好的表現(xiàn),但在景深突變處仍有輕微的光暈效應(yīng),如第1和第6幅圖像。圖5g為本文算法復(fù)原的結(jié)果,整體而言恢復(fù)圖像去霧徹底,僅在極少區(qū)域有殘霧現(xiàn)象,并且明亮度適宜,具有良好的色彩保真度。與其它幾種算法相比,本文算法抑制了光暈效應(yīng)及塊狀偽影的產(chǎn)生,同時(shí)能恢復(fù)出較多細(xì)節(jié)信息,如第4和第6幅圖像,此外天空區(qū)域保持相對較好,沒有出現(xiàn)顏色失真現(xiàn)象。
為了使實(shí)驗(yàn)對比更加全面有效,本文采用Hautiere等人[20]提出的無參考圖像質(zhì)量評估方法,選取可見邊集合數(shù)e、平均梯度r、峰值信噪比PSNR(Peak Signal-to-Noise Ratio)及運(yùn)行時(shí)間t作為客觀評價(jià)指標(biāo)。其中,峰值信噪比是指有用信號(hào)與噪聲之間的比值,e和r的值越大也說明算法的復(fù)原效果越好,其定義如式(20)和式(21)所示:
(20)
(21)
仍以圖5中的6幅有霧圖像作為實(shí)驗(yàn)樣本,采用目前經(jīng)典的圖像去霧算法與本文算法進(jìn)行客觀對比,實(shí)驗(yàn)結(jié)果如圖6所示。從圖6a可以看出,相比于其他5種算法,本文算法在可見邊指標(biāo)上取得了最佳效果。圖6b為平均梯度,本文算法的該指標(biāo)性能明顯優(yōu)于He算法、Li算法及Qin算法,但與Meng算法相比略有不足。圖6c為峰值信噪比,各算法在該指標(biāo)上的性能差異不是很大,但整體而言本文算法表現(xiàn)較好。圖6d為運(yùn)行時(shí)間,本文算法雖不及He算法,但相比其他4種算法而言時(shí)間復(fù)雜度較低。綜上,與其他經(jīng)典算法相比,本文算法具有一定的優(yōu)越性。
Figure 6 Objective evaluation圖6 客觀評價(jià)
Figure 7 Comparison of experimental results圖7 實(shí)驗(yàn)結(jié)果對比
除了上述真實(shí)場景下的有霧圖像對比實(shí)驗(yàn),本文還在合成有霧圖像數(shù)據(jù)集上進(jìn)行了比較,以進(jìn)一步驗(yàn)證所提算法的有效性。如圖7所示,以隨機(jī)選取的幾幅合成圖像作為實(shí)驗(yàn)樣本,對各算法復(fù)原結(jié)果進(jìn)行主觀分析,可以看出本文算法在合成圖像處理中同樣具有較好的復(fù)原效果。其中,He算法及Meng算法恢復(fù)圖像具有明顯的過飽和現(xiàn)象,且天空區(qū)域偏色嚴(yán)重;Ren算法和Li算法天空區(qū)域復(fù)原效果自然,但部分區(qū)域存在去霧不徹底現(xiàn)象;Qin算法雖去霧徹底,但復(fù)原圖像整體偏暗,相比之下,本文算法復(fù)原結(jié)果明亮度適宜,天空區(qū)域沒有失真現(xiàn)象且整體去霧比較徹底。
在客觀評價(jià)上,本文采用峰值信噪比PSNR和結(jié)構(gòu)相似性SSIM(Structural SIMilarity)作為評價(jià)指標(biāo)[21]。其中,結(jié)構(gòu)相似性用來衡量2幅圖像的相似度,值越大,代表算法性能越好。從表1可以看出,與其他算法相比,本文算法在PSNR指標(biāo)上取得了最優(yōu)效果,SSIM指標(biāo)性能也相對較好,進(jìn)一步證明了所提算法的有效性。
Table 1 PSNR and SSIM on synthetic hazy images
為了避免暗通道先驗(yàn)算法中存在的光暈效應(yīng)以及天空等明亮區(qū)域顏色失真現(xiàn)象,本文提出了一種基于轉(zhuǎn)換域與自適應(yīng)伽馬校正的圖像去霧算法。將大氣散射模型轉(zhuǎn)換至對數(shù)域提出對數(shù)域正相關(guān)關(guān)系;然后采用高斯函數(shù)對其擬合得到粗級透射率,利用亮度分量構(gòu)造自適應(yīng)伽馬校正因子對粗級透射率進(jìn)行修正得到優(yōu)化透射率,并結(jié)合改進(jìn)后的局部大氣光得到最終的復(fù)原圖像。實(shí)驗(yàn)結(jié)果表明,本文算法復(fù)原圖像去霧徹底且清晰自然,在保持較好色彩保真度的同時(shí)有效地抑制了天空區(qū)域偏色及光暈現(xiàn)象。但是,該算法在時(shí)間復(fù)雜度方面還略有不足,將作為下一步工作進(jìn)行改進(jìn)。