本發(fā)明涉及圖像處理
技術(shù)領(lǐng)域:
,特別涉及一種基于暗原色先驗(yàn)的單幅圖像去霧方法。
背景技術(shù):
:目前對于霧天圖像的處理方法主要分為兩類:霧天圖像復(fù)原和霧天圖像增強(qiáng)。霧天圖像的增強(qiáng)方法不考慮圖像退化的本質(zhì)原因,而是基于主觀視覺感受,能有效地提高霧天圖像的對比度,突出圖像的細(xì)節(jié),改善圖像的視覺效果,適用范圍廣,但對于突出部分的信息可能會造成一定損失。霧天圖像復(fù)原方法根據(jù)霧天對圖像成像的影響機(jī)制,建立圖像退化模型,反向推導(dǎo)出圖像復(fù)原模型,計(jì)算獲得不受霧影響的最優(yōu)估計(jì)值,得到清晰的圖像。近年來,眾多研究者致力于單幅降質(zhì)圖像的去霧研究,由于單幅圖像中霧的深度信息未知,一般需要借助先驗(yàn)或假設(shè)來達(dá)到去霧的目的。這方面的早期工作是由Tan等完成的,他們通過統(tǒng)計(jì)發(fā)現(xiàn)無霧圖像比有霧圖像具有更高的對比度,以及局部區(qū)域的環(huán)境光為常數(shù)這兩個(gè)先驗(yàn)條件,提出一種旨在增強(qiáng)圖像對比度的去霧方法,在光學(xué)原理上達(dá)到去霧,但忽視了透射率,處理結(jié)果的一些色彩經(jīng)常會出現(xiàn)過度飽和的現(xiàn)象。Fattal等利用透射率和物體表面陰影局部不相關(guān)的假設(shè)條件來估計(jì)場景反照率,并推導(dǎo)出介質(zhì)透射率,恢復(fù)出場景光,取得了很好的效果,但該方法需要足夠的顏色信息以及差異性,當(dāng)霧很濃時(shí),該方法估計(jì)出的透射率就不可靠。何凱明等基于對戶外無霧圖像數(shù)據(jù)庫的統(tǒng)計(jì)規(guī)律,提出一種簡單有效的暗原色先驗(yàn)圖像去霧算法,能夠明顯提高霧天戶外圖像清晰度,均勻地調(diào)整圖像整體的色彩亮度,從而達(dá)到良好的視覺效果,對一般戶外圖像取得了很好的去霧效果,受到研究者的重點(diǎn)關(guān)注。暗原色先驗(yàn)去霧方法存在的不足:1)傳統(tǒng)的暗原色先驗(yàn)算法采用軟摳圖細(xì)化透射率,由于采用高精度插值求解大型稀疏矩陣,帶來了巨大的運(yùn)算量,不利于工程上的應(yīng)用;2)暗原色先驗(yàn)算法建立在暗原色假設(shè)之上,對不滿足這個(gè)假設(shè)的明亮區(qū)域,算法估計(jì)的透射率偏小,復(fù)原圖像出現(xiàn)色彩失真以及整體偏暗的現(xiàn)象。技術(shù)實(shí)現(xiàn)要素:本發(fā)明的目的旨在解決上述技術(shù)缺陷,改善暗原色先驗(yàn)算法的效果以及提高算法效率。為了達(dá)到上述目的,本發(fā)明提出一種基于暗原色先驗(yàn)的單幅圖像去霧方法,包括以下幾個(gè)步驟:S1:自適應(yīng)求出含霧圖像I的暗原色圖Idark;S1.1:求出最小顏色通道Ic,具體公式如下:Ic(x,y)=minc∈{R,G,B}(I(x,y))]]>其中(x,y)表示R、G、B三通道圖像中的像素點(diǎn)。S1.2:對最小暗通道圖Idark進(jìn)行自適應(yīng)分塊,并進(jìn)行最小值濾波,得到暗原色圖Idark。其中自適應(yīng)分塊大小為:block=round(max(3,M×1%,N×1%))M,N分別為最小顏色通道Ic的長和寬,暗原色圖Idark的具體公式為:Idark(x,y)=minc∈{R,G,B}(min(x,y)∈block(I(x,y)))]]>S2:對暗原色圖Idark進(jìn)行圖像分割,獲得包含天空區(qū)域和非天空區(qū)域的圖像,具體分割方法如下:S2.1:求出暗原色圖像Idark的亮度圖B,并采用最大類間方差法(OTSU)對亮度圖像B進(jìn)行自適應(yīng)閾值分割,得到分割后的二值圖像Bbinary,公式如下:Bbinary(x,y)=0,th1<λ11,th1≥λ1]]>其中th1是亮度圖像B在坐標(biāo)(x,y)處的亮度值,λ1是亮度圖像B的最大類間方差分割閾值。S2.2:求出暗原色圖像Idark的灰度梯度圖G,并采用最大類間方差法(OTSU)對梯度圖像G進(jìn)行自適應(yīng)閾值分割,得到分割后的二值圖像Gbinary,公式如下:Gbinary(x,y)=0,th2≥λ21,th2<λ2]]>其中th2是梯度圖像G在坐標(biāo)(x,y)處的梯度值,th2是梯度圖像G的最大類間方差分割閾值。S2.3:將分割后的亮度二值圖Bbinary及梯度二值圖Gbinary作并運(yùn)算,得到分割后的天空區(qū)域和非天空區(qū)域二值圖像Ybinary,公式如下:Ybinary(x,y)=0,th1<λ1,th2≥λ21,th1≥λ1,th2<λ2]]>S3:利用上述分割出的天空區(qū)域重估大氣光值A(chǔ),把天空區(qū)域亮度最大的前50%的亮度均值作為大氣光的估計(jì)值。S4:粗略估計(jì)透射率S4.1:利用何凱明原方法粗略估計(jì)非天空區(qū)域的透射率具體公式如下:t~notsky(x,y)=1-ωminc∈{r,g,b}(min(x,y)∈block(Ic(x,y)Ac))]]>其中ω(0<ω≤1)是去霧參數(shù),是可調(diào)參數(shù),用來選擇性的保留遠(yuǎn)方景物中的小部分霧,使得復(fù)原圖像更加自然,當(dāng)ω=1時(shí)表示徹底去霧。S4.2:利用蔣建國提出的K容差機(jī)制粗略估計(jì)天空區(qū)域的透射率具體公式如下:t~sky(x,y)=K|Ac-Idark(x,y)|(1-ωminc∈{R,G,B}(min(x,y)∈blockIc(x,y)Ac))]]>其中K表示容差參數(shù),是可調(diào)參數(shù),用來調(diào)整天空區(qū)域亮度和大氣光值之間的容差值。S4.3:利用分割后的天空區(qū)域和非天空區(qū)域的二值圖像Ybinary將天空區(qū)域和非天空區(qū)域透射率進(jìn)行合并,得到粗略透射率計(jì)算公式如下:t~(x,y)=1-ωminc∈{R,G,B}(min(x,y)∈block(Ic(x,y)Ac)),Ybinary(x,y)=0K|Ac-Idark(x,y)|(1-ωminc∈{R,G,B}(min(x,y)∈blockIc(x,y)Ac)),Ybinary(x,y)=1]]>S5:采用引導(dǎo)濾波細(xì)化透射率,以含霧圖像I的灰度圖Igray作為引導(dǎo)圖像,通過如下公式得到細(xì)化的透射率t(x,y):t(x,y)=akIigray+bk,∀i∈ξk]]>其中t(x,y)是圖像Iigray中以k為中心像素的局部窗口ξk的線性變換,通過求解線性因數(shù)(ak,bk)的最優(yōu)解,使輸入圖像p與輸出圖像t(x,y)之間的差值最小化。最后求出輸出圖像如下:t(x,y)=1|ξ|Σk|i∈ξk(akIigray+bk)=a‾iIigray+b‾i]]>其中μk和δk表示圖像Igray在局部窗口ξ中的均值和方差,|ξ|是窗口ξk中的像素個(gè)數(shù)。S6:利用大氣散射模型得到復(fù)原的清晰圖像J,具體公式為:J(x,y)=I(x,y)-Amax(t(x,y),t0)+A]]>當(dāng)t(x,y)接近于0時(shí),與實(shí)際不符,因此為透射率t(x,y)設(shè)置一個(gè)下限t0S7:采用引導(dǎo)濾波進(jìn)一步增強(qiáng)復(fù)原圖像J的邊緣信息,以復(fù)原圖像J作為引導(dǎo)濾波器的輸入,含霧圖像I作為引導(dǎo)圖像,實(shí)現(xiàn)引導(dǎo)濾波器平滑濾波的作用,得到邊緣模糊的輸出圖像q0,最終復(fù)原圖像Jfinary計(jì)算公式如下:Jfinally(x,y)=M(J(x,y)-q0(x,y))+q0(x,y)其中M是邊緣增強(qiáng)倍數(shù),是一個(gè)可調(diào)參數(shù)。有益效果本發(fā)明通過拓展暗原色先驗(yàn)算法的適用范圍,利用霧天圖像中天空區(qū)域的特征,采用自適應(yīng)閾值的方法分割出天空去,并分別估計(jì)透射率,改善了暗原色先驗(yàn)在天空區(qū)域透射率偏小的弊端,克服了復(fù)原圖像在天空等明亮區(qū)域色彩失真的現(xiàn)象;利用分割出的天空區(qū)域重新估計(jì)大氣光值,來改善復(fù)原圖像整體偏暗的弊端;利用引導(dǎo)濾波細(xì)化透射率,極大地提高了算法的運(yùn)行速率;最后,采用引導(dǎo)濾波的方法增強(qiáng)圖像邊緣,提高圖像的清晰度。附圖說明圖1為本發(fā)明流程圖;具體實(shí)施方式下面詳細(xì)描述本發(fā)明的實(shí)施例,所述實(shí)施例的示例在附圖中示出,其中自始至終相同或類似的標(biāo)號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實(shí)施例是示例性的,僅用于解釋本發(fā)明,而不能解釋為對本發(fā)明的限制。如圖1所示,本發(fā)明的實(shí)施例的基于暗原色先驗(yàn)的單幅圖像去霧改方法,包括以下幾個(gè)步驟:步驟S1,求出含霧圖像I的暗原色圖Idark。在本步驟的一個(gè)實(shí)施例中,首先,讀入含霧圖像I,然后采用自適應(yīng)分塊的方法求出暗原色圖Idark,具體處理方法如下:S1.1:求出最小顏色通道Ic,具體公式如下:Ic(x,y)=minc∈{R,G,B}(I(x,y))]]>其中(x,y)表示R、G、B三通道圖像中的像素點(diǎn)。S1.2:對最小暗通道圖Idark進(jìn)行自適應(yīng)分塊,并進(jìn)行最小值濾波,得到暗原色圖Idark。其中自適應(yīng)分塊大小為:block=round(max(3,M×1%,N×1%))M,N分別為最小顏色通道Ic的長和寬,暗原色圖Idark的具體公式為:Idark(x,y)=minc∈{R,G,B}(min(x,y)∈block(I(x,y)))]]>步驟S2,對暗原色圖Idark進(jìn)行自適應(yīng)閾值分割。在本步驟的一個(gè)實(shí)施例中,對暗原色圖Idark進(jìn)行自適應(yīng)閾值分割,得到天空區(qū)域和非天空區(qū)域的二值圖像Ybinary,具體分割方法如下:S2.1:求出暗原色圖像Idark的亮度圖B,并采用最大類間方差法(OTSU)對亮度圖像B進(jìn)行自適應(yīng)閾值分割,得到分割后的二值圖像Bbinary,公式如下:Bbinary(x,y)=0,th1<λ11,th1≥λ1]]>其中th1是亮度圖像B在坐標(biāo)(x,y)處的亮度值,λ1是亮度圖像B的最大類間方差分割閾值。S2.2:求出暗原色圖像Idark的灰度梯度圖G,并采用最大類間方差法(OTSU)對梯度圖像G進(jìn)行自適應(yīng)閾值分割,得到分割后的二值圖像Gbinary,公式如下:Gbinary(x,y)=0,th2≥λ21,th2<λ2]]>其中th2是梯度圖像G在坐標(biāo)(x,y)處的梯度值,th2是梯度圖像G的最大類間方差分割閾值。S2.3:將分割后的亮度二值圖Bbinary及梯度二值圖Gbinary作并運(yùn)算,得到分割后的天空區(qū)域和非天空區(qū)域二值圖像Ybinary,公式如下:Ybinary(x,y)=0,th1<λ1,th2≥λ21,th1≥λ1,th2<λ2]]>步驟S3,重估大氣光值A(chǔ)利用上述分割出的天空區(qū)域重估大氣光值,把天空區(qū)域亮度最大的前50%的亮度均值作為大氣光的估計(jì)值。步驟S4,粗略估計(jì)透射率對分割出的天空區(qū)域和非天空區(qū)域采用不同的方式粗略估計(jì)透射率,然后利用二值圖像Ybinary將天空區(qū)域和非天空區(qū)域透射率進(jìn)行合并,得到粗略透射率具體操作步驟如下:S4.1:利用何凱明原方法粗略估計(jì)非天空區(qū)域的透射率具體公式如下:t~notsky(x,y)=1-ωminc∈{R,G,B}(min(x,y)∈block(Ic(x,y)Ac))]]>其中ω(0<ω≤1)是去霧參數(shù),是可調(diào)參數(shù),用來選擇性的保留遠(yuǎn)方景物中的小部分霧,使得復(fù)原圖像更加自然,當(dāng)ω=1時(shí)表示徹底去霧。S4.2:利用蔣建國提出的K容差機(jī)制粗略估計(jì)天空區(qū)域的透射率具體公式如下:t~sky(x,y)=K|Ac-Idark(x,y)|(1-ωminc∈{R,G,B}(min(x,y)∈blockIc(x,y)Ac))]]>其中K表示容差參數(shù),是可調(diào)參數(shù),用來調(diào)整天空區(qū)域亮度和大氣光值之間的容差值。S4.3:利用分割后的天空區(qū)域和非天空區(qū)域的二值圖像Ybinary將天空區(qū)域和非天空區(qū)域透射率進(jìn)行合并,得到粗略透射率計(jì)算公式如下:t~(x,y)=1-ωminc∈{R,G,B}(min(x,y)∈block(Ic(x,y)Ac)),Ybinary(x,y)=0K|Ac-Idark(x,y)|(1-ωminc∈{R,G,B}(min(x,y)∈blockIc(x,y)Ac)),Ybinary(x,y)=1]]>步驟S5,采用引導(dǎo)濾波細(xì)化透射率。以含霧圖像I的灰度圖Igray作為引導(dǎo)圖像,通過如下公式得到細(xì)化的透射率t(x,y):t(x,y)=akIigray+bk,∀i∈ξk]]>其中t(x,y)是圖像Iigray中以k為中心像素的局部窗口ξk的線性變換,通過求解線性因數(shù)(ak,bk)的最優(yōu)解,使輸入圖像p與輸出圖像t(x,y)之間的差值最小化。最后求出輸出圖像如下:t(x,y)=1|ξ|Σk|i∈ξk(akIigray+bk)=a‾iIigray+bi‾]]>其中μk和δk表示圖像Igray在局部窗口ξ中的均值和方差,|ξ|是窗口ξk中的像素個(gè)數(shù)。步驟S6,復(fù)原無霧圖像J。利用大氣散射模型得到復(fù)原的清晰圖像J,具體公式為:J(x,y)=I(x,y)-Amax(t(x,y),t0)+A]]>當(dāng)t(x,y)接近于0時(shí),與實(shí)際不符,因此為透射率t(x,y)設(shè)置一個(gè)下限t0步驟S7,引導(dǎo)濾波邊緣增強(qiáng)。采用引導(dǎo)濾波進(jìn)一步增強(qiáng)復(fù)原圖像J的邊緣信息,以復(fù)原圖像J作為引導(dǎo)濾波器的輸入,含霧圖像I作為引導(dǎo)圖像,實(shí)現(xiàn)引導(dǎo)濾波器平滑濾波的作用,得到邊緣模糊的輸出圖像q0,最終復(fù)原圖像Jfinary計(jì)算公式如下:Jfinally(x,y)=M(J(x,y)-q0(x,y))+q0(x,y)其中M是邊緣增強(qiáng)倍數(shù),是一個(gè)可調(diào)參數(shù)。盡管已經(jīng)示出和描述了本發(fā)明的實(shí)施例,對于本領(lǐng)域的普通技術(shù)人員而言,可以理解在不脫離本發(fā)明的原理和精神的情況下可以對這些實(shí)施例進(jìn)行多種變化、修改、替換和變型,本發(fā)明的范圍由所附權(quán)利要求及其等同限定。當(dāng)前第1頁1 2 3