曹虎晨, 姚善化, 王仲根
(安徽理工大學(xué) 電氣與信息工程學(xué)院,安徽 淮南 232001)
采煤機(jī)在采煤過程中會(huì)有大量的塵霧產(chǎn)生,這些彌漫在空氣中的塵霧不僅會(huì)影響煤礦工人的身體健康,還會(huì)造成井下事故的發(fā)生。通常在煤塵中注水[1]或在采煤機(jī)處噴灑大量的水霧[2],以達(dá)到降塵的目的,但水霧嚴(yán)重影響采集到的圖像質(zhì)量,不利于后續(xù)對(duì)目標(biāo)的識(shí)別和跟蹤等處理。因此,研究煤礦井下圖像去霧具有重要意義。
應(yīng)用較廣泛的圖像去霧算法可分為基于圖像增強(qiáng)、基于卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)、基于物理模型3類[3]?;趫D像增強(qiáng)的去霧算法有Retinex算法、同態(tài)濾波等。文獻(xiàn)[4]在HSV空間下用改進(jìn)的雙邊濾波算法融合多尺度Retinex算法,在色彩和邊緣模糊處理等方面有所提升,但是去霧效果不好,易出現(xiàn)過曝光。文獻(xiàn)[5]先通過同態(tài)濾波提高圖像清晰度,再采用直方圖均衡化突出邊緣信息,提高了圖像特征點(diǎn)選取的準(zhǔn)確率,該方法通過增強(qiáng)圖像對(duì)比度等來(lái)突出邊緣細(xì)節(jié),算法簡(jiǎn)單,但是去霧效果差,易出現(xiàn)過曝光等問題。基于CNN的去霧算法用CNN建立一個(gè)端到端的網(wǎng)絡(luò),再利用數(shù)據(jù)集來(lái)訓(xùn)練這個(gè)網(wǎng)絡(luò),從而得到無(wú)霧圖像。文獻(xiàn)[6]提出基于深度融合網(wǎng)絡(luò)的去霧算法,該算法構(gòu)建了較大規(guī)模的去霧數(shù)據(jù)集,解決了圖像過增強(qiáng)現(xiàn)象。但該方法去霧效果差,且煤礦井下去霧數(shù)據(jù)集很少,難以訓(xùn)練出一個(gè)好的去霧模型。基于物理模型的去霧算法依據(jù)大氣散射模型對(duì)塵霧進(jìn)行處理。文獻(xiàn)[7]通過觀察大量戶外有霧與無(wú)霧圖像的差異,提出了基于暗原色先驗(yàn)的圖像去霧算法(以下簡(jiǎn)稱He算法)。該算法簡(jiǎn)單,去霧效果好,但細(xì)節(jié)處理效果較差,易出現(xiàn)去霧圖像過曝光等問題。文獻(xiàn)[8]提出一種基于暗原色先驗(yàn)的煤礦井下退化圖像復(fù)原算法,使用正則化拉普拉斯矩陣構(gòu)建暗原色先驗(yàn)去霧塵模型,該算法對(duì)圖像細(xì)節(jié)處理較好,但是去霧后的圖像偏暗,且容易失真。文獻(xiàn)[9]基于暗原色理論提出了一種自適應(yīng)雙邊濾波的煤礦塵霧圖像增強(qiáng)算法,該算法在去噪的同時(shí)極大地保留了圖像的邊緣特征,但對(duì)細(xì)節(jié)處理較差。文獻(xiàn) [10]提出了基于邊界約束及上下文正則化的去霧算法(以下簡(jiǎn)稱Meng算法),首先通過限制傳遞函數(shù)的固有邊界得到粗透射率,其次通過上下文正則化得到精細(xì)化透射率,最后用精細(xì)化后的透射率通過大氣散射模型來(lái)恢復(fù)無(wú)霧圖像,該算法對(duì)細(xì)節(jié)部分除霧效果很好,但容易出現(xiàn)局部透射率估計(jì)不準(zhǔn)確的問題,且去霧圖像會(huì)出現(xiàn)顏色失真、對(duì)比度過飽和等問題。文獻(xiàn)[11]提出了對(duì)邊界約束進(jìn)行雙邊濾波優(yōu)化的圖像去霧算法,將圖像分割成天空區(qū)域與非天空區(qū)域,對(duì)天空區(qū)域與非天空區(qū)域分別處理,解決了圖像過曝光的問題,但圖像分割需要手動(dòng)操作,算法處理時(shí)間較長(zhǎng)。
針對(duì)上述問題,本文將He算法與Meng算法進(jìn)行融合,提出了一種基于邊界約束的煤礦井下塵霧圖像去霧算法。首先,用伽馬校正改變井下圖像亮度,選取開運(yùn)算處理后的圖像顏色通道的最大值作為煤礦井下的大氣光值。其次,分別用暗通道算法與邊界約束算法對(duì)圖像進(jìn)行處理,對(duì)邊界約束算法得到的邊界約束圖進(jìn)行引導(dǎo)濾波,得到更為清晰的邊界約束圖,并將邊界約束算法的粗透射率與暗通道先驗(yàn)算法的粗透射率進(jìn)行比較再融合。最后,經(jīng)過上下文正則化細(xì)化透射率,再通過大氣散射模型得到去霧后的圖像。
在計(jì)算機(jī)視覺中,大氣散射模型[12]廣泛用于圖像去霧,即
式中:I(x)為有霧圖像,x為圖像中像素點(diǎn)位置;J(x)為無(wú)霧圖像;t(x)為透射率;A為全球大氣光值。
圖像成像中的大氣散射光導(dǎo)致了圖像的對(duì)比度下降和顏色失真等問題。去霧的目的是通過單幅圖像來(lái)準(zhǔn)確估計(jì)全球大氣光值A(chǔ)和透射率t(x),從而恢復(fù)無(wú)霧圖像J(x)。
He算法的暗通道先驗(yàn)知識(shí)中提到無(wú)霧圖像總會(huì)存在一個(gè)顏色通道的值接近0,故對(duì)無(wú)霧圖像中每個(gè)像素的顏色通道值最小化可得到暗通道圖像。
式中:Jdark(x)為暗通道圖像;c為紅綠藍(lán)三色通道中的某一通道;y為圖像中像素點(diǎn)位置;Ω(x)為以x處像素為中心的一個(gè)窗口;Jc(y)為像素點(diǎn)位置為y的彩色無(wú)霧圖像。
將暗通道先驗(yàn)知識(shí)與塵霧圖像成像模型結(jié)合,對(duì)式(1)進(jìn)行2次最小濾波后求解出透射率。假設(shè)最小濾波后的透射率沒有改變,則透射率為
式中:Ic(y)為像素位置為y的彩色有霧圖像;Ac為彩色通道的大氣光值。
在無(wú)霧的情況下,透射率接近1,I(x)≈J(x)。隨著霧濃度的增加,t(x)會(huì)逐漸減小,I(x)≈A,所以文獻(xiàn)[10]提出了一個(gè)邊界約束理論,即無(wú)霧圖像的亮度值存在下邊界B0與上邊界B1,由式(1)可知,當(dāng)A一定時(shí),t(x)也存在邊界tb(x)。
式中:Ic(x)為像素點(diǎn)位置為x的彩色有霧圖像;,分別為某一顏色通道的下邊界與上邊界。
在實(shí)際生活中存在邊緣區(qū)域透射率跳躍的情況,若采用式(4)估計(jì)透射率,會(huì)導(dǎo)致圖像邊緣出現(xiàn)偽影效應(yīng)。為了解決偽影效應(yīng)問題,引入了權(quán)重函數(shù)W(x,z)[10]。
式中z為圖像中與x相鄰像素點(diǎn)的位置。
當(dāng)t(x)與t(z)相差很大時(shí),W(x,z)就要很小才能使式(5)成立,反之亦然。依據(jù)這個(gè)限制,可采取相鄰像素亮度差的方式來(lái)定義權(quán)重函數(shù)。
式中:Dj為像素點(diǎn)j的差分濾波算子,由8個(gè)Kirsch邊緣檢測(cè)算子與1個(gè)Laplacian算子構(gòu)成;*為卷積符號(hào)。
雖然引入權(quán)重函數(shù)解決了圖像邊緣偽影的問題,但Meng算法在圖像非邊緣的區(qū)域存在透射率不相似的問題,這不符合最優(yōu)透射率原則。為了獲得最優(yōu)透射率,引入懲罰項(xiàng),構(gòu)建新函數(shù)H(x,β)。
式中:β為懲罰因子;λ為正則化參數(shù);t*(x)為優(yōu)化后的透射率;°為元素相乘符號(hào);ω為像素索引集;μ為輔助變量。
當(dāng)透射率滿足式(4)的邊界約束條件時(shí),H(x,β)的值最小,透射率最優(yōu)。當(dāng)不滿足約束條件時(shí),H(x,β)的值很大,應(yīng)舍去,以達(dá)到特征稀疏化的目的。
通過交替最小化算法將與μ有關(guān)的項(xiàng)分離出來(lái),通過與 μ相關(guān)函數(shù)的最小值求解出μ。
結(jié)合式(7),利用二維快速傅里葉變換,并假設(shè)圓形邊界條件,最后求得t*(x)為
式中:F-1為傅里葉逆變換;F為傅里葉變換;為復(fù)共軛變換。
基于邊界約束的煤礦井下塵霧圖像去霧算法主要包括大氣光值的獲取、He算法與Meng算法的粗透射率融合、上下文正則化、圖像去霧等。算法流程如圖1所示。
圖1 去霧算法流程Fig. 1 Flow chart of defogging algorithm
首先,對(duì)輸入的圖像進(jìn)行伽馬校正,對(duì)校正后的圖像進(jìn)行顏色通道開運(yùn)算處理,從開運(yùn)算后的圖像中選取亮度最大值作為大氣光值。其次,分別用He算法與Meng算法對(duì)伽馬校正后的圖像進(jìn)行處理,對(duì)Meng算法得到的邊界約束圖進(jìn)行引導(dǎo)濾波,用得到的粗透射率與He算法的粗透射率進(jìn)行比較再融合。最后,對(duì)融合后的粗透射率進(jìn)行上下文正則化,得到精細(xì)化透射率,再通過大氣散射模型得到去霧后的圖像。
煤礦是點(diǎn)光源照射環(huán)境,故先采用伽馬校正對(duì)圖像進(jìn)行亮度調(diào)整。
式中:Igamma(x)為經(jīng)過伽馬校正后的有霧圖像;γ為伽馬因子,控制整個(gè)變換的縮放程度,γ=0.7。
伽馬校正結(jié)果如圖2所示。可看出,調(diào)整后的圖像亮度更均勻。
圖2 伽馬校正結(jié)果Fig. 2 Results of Gamma correction
He算法采用的大氣光值估計(jì)方法是直接選取暗通道中亮度值前0.1%的平均值,但是井下存在大片黑暗區(qū)域,造成暗通道中的亮度值都較小,選取的大氣光值也較小。文獻(xiàn)[11]提出的估計(jì)方法是選取暗通道圖像開運(yùn)算后的最大值。以上方法都是對(duì)暗通道圖像進(jìn)行處理(暗通道是對(duì)顏色通道進(jìn)行最小值濾波后得到的),這使得暗通道圖像的值均小于原圖像顏色通道的值。本文直接對(duì)輸入圖像的顏色通道進(jìn)行開運(yùn)算處理,選取紅綠藍(lán)通道中最亮的區(qū)域值作為大氣光值,這樣能夠降低去霧圖像點(diǎn)光源區(qū)域的亮度,可以很好地抑制點(diǎn)光源照射。大氣光值估計(jì)方法對(duì)比如圖3所示。
圖3 大氣光值估計(jì)方法對(duì)比Fig. 3 Comparison of atmospheric light estimation algorithms
從圖3可看出,He算法的估計(jì)方法出現(xiàn)了過曝光問題,極大地影響了對(duì)信息的識(shí)別。文獻(xiàn)[11]及本文提出的估計(jì)方法差異并不明顯。經(jīng)過計(jì)算,He算法的估計(jì)方法得出的大氣光值為[121,123,122],文獻(xiàn)[11]算法的估計(jì)方法得出的大氣光值為[219,221,219],本文提出的估計(jì)方法得出的大氣光值為[234,233,234]??煽闯霰疚奶岢龅墓烙?jì)方法選取的大氣光值更大,在煤礦環(huán)境中能夠有效地抑制點(diǎn)光源照射。
針對(duì)Meng算法得到的邊界約束圖存在邊界模糊的問題,本文引入引導(dǎo)濾波[13],以保持邊界清晰。
當(dāng)x位于不同的窗口時(shí),會(huì)存在不同的a,b值,所以要對(duì)以x為中心的窗口內(nèi)a和b的值取平均,得到平均后的引導(dǎo)濾波。
引導(dǎo)濾波結(jié)果如圖4所示。可看出對(duì)邊界約束圖進(jìn)行引導(dǎo)濾波后,邊界約束圖變得更加平滑,邊界信息更加明顯。
圖4 引導(dǎo)濾波結(jié)果Fig. 4 Results of guiding filtering
如果將傳統(tǒng)的Meng算法直接應(yīng)用在煤礦井下,圖像會(huì)出現(xiàn)透射率評(píng)估不正確的問題。因此,將He算法與Meng算法先進(jìn)行比較然后再融合。這是因?yàn)镸eng算法計(jì)算粗透射率時(shí)更加精細(xì),但容易出現(xiàn)區(qū)域透射率評(píng)估不正確的問題;He算法通過暗通道來(lái)計(jì)算透射率,在井下黑暗的環(huán)境中,He算法對(duì)透射率的估計(jì)更加準(zhǔn)確,但是其評(píng)估的透射率是成塊的,透射率細(xì)節(jié)不夠。如果直接對(duì)He算法與Meng算法的粗透射率進(jìn)行融合,易導(dǎo)致透射率邊界模糊,因此對(duì)He算法與Meng算法的粗透射率差值進(jìn)行比較,當(dāng)He算法和Meng算法的粗透射率差值小于閾值時(shí),對(duì)He算法和Meng算法的粗透射率值取平均。當(dāng)He算法和Meng算法的粗透射率差值大于閾值時(shí),則取He算法和Meng算法中最小的粗透射率值。然后再對(duì)He算法和Meng算法的粗透射率進(jìn)行融合,融合后的粗透射率為
式中:t1(x),t2(x)分別為Meng算法與He算法的粗透射率值;Q為判定閾值,0<Q<1。
經(jīng)過多次實(shí)驗(yàn),發(fā)現(xiàn)當(dāng)Q=0.1時(shí),融合效果最好,實(shí)驗(yàn)結(jié)果如圖5所示??煽闯鋈诤虾蟮耐干渎士朔薓eng算法相鄰物體透射率不同的缺點(diǎn)。
圖5 融合結(jié)果Fig. 5 Result of fusion
為了驗(yàn)證本文算法的有效性,對(duì)煤礦井下大量的有霧圖像進(jìn)行測(cè)試(由于篇幅限制,僅選擇6張井下圖像進(jìn)行測(cè)試)。仿真結(jié)果如圖6所示??煽闯鯤e算法雖然達(dá)到了一定的去霧效果,但在有點(diǎn)光源的圖像中存在圖像過曝光的問題。文獻(xiàn)[9]的算法雖能夠減小點(diǎn)光源照射的問題,但對(duì)塵霧較濃的圖像去霧效果較差,且在去霧圖像中的燈光處存在較多的藍(lán)色圓環(huán),說(shuō)明此算法處理圖像較亮區(qū)域時(shí)出現(xiàn)了顏色失真。Meng算法與文獻(xiàn)[11]的算法對(duì)圖像的細(xì)節(jié)處理得很好,但存在色彩對(duì)比度過飽和、顏色失真及整體顏色偏暗等問題。本文算法在有點(diǎn)光源的圖像中沒有出現(xiàn)過曝光的問題,還很好地保留了圖像的細(xì)節(jié)信息,在燈光處出現(xiàn)的失真更少,對(duì)濃霧圖像的處理效果優(yōu)于其他算法,且本文算法去霧后的圖像整體較亮、去霧效果更好。
圖6 去霧效果對(duì)比Fig. 6 Comparison of defogging effect
為了驗(yàn)證本文算法的優(yōu)異性,采用峰值信噪比(Peak Signal-to-Noise Ratio,PSNR)、結(jié)構(gòu)相似性指標(biāo)(Structural Similarity Index,SSIM)、特征相似性指標(biāo)(Feature Similarity Index,F(xiàn)SIM)3種指標(biāo)對(duì)各類算法的去霧效果進(jìn)行客觀評(píng)價(jià),結(jié)果見表1。其中PSNR表征去霧圖像的失真性,數(shù)值越大,代表圖像失真越??;SSIM從圖像亮度、對(duì)比度和結(jié)構(gòu)對(duì)比度3個(gè)方面表征去霧效果,值越大,表示去霧效果越好;FSIM側(cè)重圖像的邊緣保持,值越大,表示圖像邊緣保持更好。
表1 不同算法去霧圖像指標(biāo)比較Table 1 Indicators comparison of defogging images processed by different algorithms
從表1可看出:在PSNR,SSIM ,F(xiàn)SIM參數(shù)上,本文算法相較于He算法分別平均提升了61.52%,36.51%,24.57%,相較于文獻(xiàn)[9]的算法分別平均提升了15.51%,19.27%,-0.30%,相較于Meng算法分別平均提升了18.93%,7.19%,1.21%,相較于文獻(xiàn)[11]的算法分別平均提升了18.29%,10.54%,1.19%。PSNR的提升說(shuō)明本文算法得到的去霧后圖像失真更小、細(xì)節(jié)信息更多。SSIM的提升說(shuō)明了去霧后的圖像更加明亮、對(duì)比度更加鮮明、圖像結(jié)構(gòu)保持得更好。FSIM的提升說(shuō)明了本文算法在保留精細(xì)化的同時(shí),還能很好地保留圖像的邊緣特征,具有一定的優(yōu)異性。
(1) 基于暗通道的大氣光值估計(jì)方法應(yīng)用到煤礦井下時(shí),選取的大氣光值較小,易造成圖像過曝光、無(wú)法抑制點(diǎn)光源照射等問題。因此,提出直接對(duì)圖像的紅綠藍(lán)三色通道做開運(yùn)算處理,取開運(yùn)算后通道圖像的最大值作為大氣光值,有效降低了點(diǎn)光源附近區(qū)域的亮度。
(2) 結(jié)合He算法在井下環(huán)境中評(píng)估透射率的準(zhǔn)確性與Meng算法對(duì)細(xì)節(jié)信息處理的優(yōu)異性,將兩者的粗透射率差值進(jìn)行比較,然后再融合得到粗透射率,利用上下文正則化對(duì)融合后的粗透射率細(xì)化,并通過大氣散射模型得到去霧后的圖像。
(3) 仿真結(jié)果表明,本文算法沒有出現(xiàn)過曝光等問題,且對(duì)濃霧圖像的處理效果更好,去霧后的圖像也更加明亮,顏色更加接近原圖。
(4) 本文去霧算法在PSNR,SSIM,F(xiàn)SIM上相較于He算法平均提升了61.52%,36.51%,24.57%,相較于文獻(xiàn)[9]的算法平均提升了15.51%,19.27%,-0.30%,相較于Meng算法平均提升了18.93%,7.19%,1.21%,相較于文獻(xiàn)[11]的算法平均提升了18.29%,10.54%,1.19%。說(shuō)明本文去霧算法對(duì)煤礦井下圖像的去霧效果更好、圖像更加明亮、細(xì)節(jié)信息保留的更多,具有一定的優(yōu)異性。