李國(guó)清,湯子夢(mèng),吳喜芳,張合兵,王春陽(yáng),李保蓮
(1.河南省遙感測(cè)繪院,河南 鄭州 450000;2.河南理工大學(xué) 測(cè)繪與國(guó)土信息工程學(xué)院,河南 焦作 454000;3.河南省國(guó)土資源調(diào)查規(guī)劃院,河南 鄭州 450016)
在云霧等惡劣環(huán)境影響下遙感影像可視性差,圖像失真嚴(yán)重,無(wú)法滿足影像感知系統(tǒng)對(duì)圖像清晰度的要求[1],因此,圖像除霧算法十分重要。
目前,圖像除霧技術(shù)主要有兩種:一種是圖像增強(qiáng)技術(shù);另一種是圖像復(fù)原技術(shù)[2]。圖像增強(qiáng)技術(shù)主要是增強(qiáng)圖像的對(duì)比度、亮度和色彩飽和度,未從圖像本質(zhì)解決問(wèn)題;圖像復(fù)原技術(shù)從云霧影像本質(zhì)出發(fā),具體思路為首先建立數(shù)學(xué)物理模型,然后通過(guò)反演算法得到除霧后的影像。近年來(lái),圖像除霧算法被學(xué)者不斷改進(jìn)演變,出現(xiàn)了直方圖均衡化、曲波變換、小波變換、同態(tài)濾波等,其中最經(jīng)典的也是應(yīng)用最廣泛的技術(shù)是基于Retinex模型的除霧算法。在該算法的基礎(chǔ)上,又演變了單尺度Retinex算法、多尺度Retinex算法、帶彩色恢復(fù)因子的多尺度算法[3]。
一些試驗(yàn)表明,單尺度Retinex算法影像除霧后的邊緣細(xì)節(jié)信息不完整,多尺度Retinex算法在影像亮度相差較大時(shí),某些區(qū)域會(huì)出現(xiàn)嚴(yán)重的光暈現(xiàn)象。針對(duì)此問(wèn)題,秦旭佳等[4]提出了一種基于HSV色彩模型的Retinex圖像增強(qiáng)算法,將傳統(tǒng)的RGB色彩模式圖像在圖像增強(qiáng)算法基礎(chǔ)上變換到HSV色彩模型上,然后再將該模型轉(zhuǎn)移到RGB色彩空間上。經(jīng)過(guò)兩次變換,校正了顏色通道間的關(guān)系,得到霧化后的影像。雖然影像的地物細(xì)節(jié)信息得到增強(qiáng),但計(jì)算過(guò)程較為復(fù)雜;石文軒等[5]提出了一種基于Retinex和色度比的除霧算法,既去除了云霧,又保留了原始圖像的色彩信息。該算法的主要原理是對(duì)影像的對(duì)比度進(jìn)行線性化處理,避免了霧化后圖像的色彩畸變和灰度加深等問(wèn)題;楊安洪[6]則是采用同態(tài)濾波、多尺度及圖像復(fù)原的處理方法,利用同態(tài)濾波與彩色空間變換相結(jié)合處理云霧圖像,提出并實(shí)現(xiàn)了同態(tài)濾波和HSV變換的處理方法;朱錫芳等[7]利用小波變換,分析了云霧和地物影像在小波系數(shù)中的分布,通過(guò)適當(dāng)改變圖像的高低層系數(shù),減小近似系數(shù),達(dá)到去除云霧的目的。而圖像復(fù)原技術(shù)主要從云霧影像本質(zhì)出發(fā)去除霧;顧明等[8]拉伸RGB顏色通道,進(jìn)行圖像增強(qiáng),除霧效果較好。
圖像復(fù)原技術(shù)主要包含多幅影像的圖像復(fù)原除霧算法和基于單幅影像的圖像復(fù)原除霧算法。在多幅影像除霧算法中,其中較為典型的是偏振光法和Narasimhan算法,兩者都有一定局限性。偏振光算法操作計(jì)算過(guò)程較復(fù)雜,Narasimhan算法需要人為評(píng)定影像中顏色較深和較淺區(qū)域,結(jié)果不能滿足精度要求,缺乏可依賴性?;趩畏跋竦膱D像復(fù)原除霧算法又分為基于景深信息的除霧算法和基于先驗(yàn)信息的除霧算法。J.P.Oakly等[9]基于景物深度信息提出了除霧算法,該算法雖然能夠明顯除霧,但對(duì)軟硬件設(shè)備要求較高。LI X等[10]認(rèn)為影像容易受到云霧大小的影響,因此要建立一定的除霧框架;TAN R T等[11]提出的將對(duì)比度最大化的除霧算法在處理像素變化大的問(wèn)題時(shí),會(huì)產(chǎn)生少量的光暈現(xiàn)象,同時(shí)去霧后的圖像色彩飽和度也較高;R.Fattal等[12]基于影像的透射率進(jìn)行除霧處理,主要針對(duì)云霧不嚴(yán)重的情況進(jìn)行處理,在霧層比較厚或地物信息不太好看出的區(qū)域,霧化后的圖像色彩失真較為嚴(yán)重;HE K M等[13]提出的暗原色先驗(yàn)理論是比較經(jīng)典的除霧算法,被大多數(shù)人采用,計(jì)算過(guò)程簡(jiǎn)便,處理后的影像地物信息也得到完整表達(dá),但需要處理的影像面積較大時(shí),除霧后的影像效果一般,精度較差;方帥等[14]提出基于霧天圖像的同步去噪與復(fù)原,對(duì)原始圖像進(jìn)行兩次雙邊濾波處理,最后在濾波后的圖像中引入色彩恢復(fù)因子,解決顏色失真問(wèn)題;薛現(xiàn)光等[15]根據(jù)現(xiàn)有的BSHTI和IBSHIT 算法,進(jìn)一步提出了OIBSHTI算法,改進(jìn)后的算法不僅有效消除了地物紋理,而且充分還原了地表建筑的真實(shí)特征,影像的曝光也得以改善。除對(duì)正常影像進(jìn)行除霧之外,學(xué)者還對(duì)海上影像進(jìn)行除霧研究,林昌等[16]對(duì)海上影像運(yùn)用改進(jìn)的MSRCR算法進(jìn)行了試驗(yàn),對(duì)于海上影像處理研究具有一定意義。很多情況下,也會(huì)出現(xiàn)多幅影像拼接后的去除云霧。還有學(xué)者針對(duì)多源遙感影像的去云層問(wèn)題,提出了多項(xiàng)式改正算法,實(shí)現(xiàn)不同遙感影像拼接后去除云層的目的。
在現(xiàn)階段的圖像除霧算法中,國(guó)內(nèi)外學(xué)者提出了多種算法和思路,但大多數(shù)是結(jié)合多傳感器融合或多光譜圖像法。本文在導(dǎo)向?yàn)V波基礎(chǔ)上,提出基于導(dǎo)向?yàn)V波和自動(dòng)白平衡融合的圖像除霧算法,該方法不僅可以克服傳統(tǒng)除霧算法的缺點(diǎn),如天空區(qū)域的色彩失真、除霧不徹底、地物真實(shí)特征難以完整顯現(xiàn)等[17],而且原始圖像的信息內(nèi)容也能得到完整保存。通過(guò)將原始圖像和經(jīng)導(dǎo)向?yàn)V波處理后的圖像進(jìn)行對(duì)比,證實(shí)了該算法的可行性。
在圖像除霧過(guò)程中,首先要清楚云霧形成原因,云是有效觀察傳感器的必然障礙[18]。在計(jì)算機(jī)視覺(jué)領(lǐng)域,通常使用霧天退化模型表示帶霧影像。該模型首先由E.J.McCartney等[19]提出,包括衰減模型和環(huán)境光模型,即
I(x)=J(x)t(x)+A(1-t(x)),
(1)
式中:x為圖像像素的坐標(biāo)位置;I(x)為實(shí)際有霧的圖像;J(x)為需要求解的無(wú)霧圖像;A為全局大氣光照強(qiáng)度,一般情況下設(shè)為常量,與像素的空間坐標(biāo)位置無(wú)關(guān);t(x)為透射率,它的原型是e-rd(x),其中r為大氣散射系數(shù),d(x)為景深。
大氣光照強(qiáng)度A都是確定的,獲取方法有很多,例如暗通道算法、分塊遞歸思想、分段思量估計(jì)和快速估計(jì)大氣光值,其中最簡(jiǎn)便的是將圖像亮度最大點(diǎn)的灰度值作為大氣光值,之后求解透射率的過(guò)程,根據(jù)暗通道算法求解透射率,大氣光值確定以后,由式(1)得
(2)
由于J(x)和I(x)的范圍可以確定,大氣光值一般情況下接近于0,其中0≤J(x)≤255,0≤I(x)≤A,0≤J(x)≤A,0≤t(x)≤1,因此
(3)
式中,0≤t(x)≤1,且
(4)
為了保證圖像的自然性,一般引入一個(gè)參數(shù)調(diào)整透射率。GAO T等[20]提出了一種新的計(jì)算方法確定補(bǔ)償函數(shù)中的參數(shù),提高透射率,
(5)
由此可得,霧天退化模型的除霧算法實(shí)際上是根據(jù)已知的帶霧影像I(x)求解透射率t(x)和全局大氣光照A的過(guò)程。
在圖像除霧濾波算法中,導(dǎo)向?yàn)V波、最小二乘濾波和雙邊濾波是3種較為典型的濾波算法。相對(duì)于普通濾波算法,導(dǎo)向?yàn)V波最大的優(yōu)點(diǎn)是盡可能讓輸出圖像的梯度和導(dǎo)向圖相似,同時(shí)讓輸出圖像的灰度與輸入圖像相似,以此保留圖像本質(zhì),并達(dá)到去除噪聲的目的。[21]除此之外,導(dǎo)向?yàn)V波在引導(dǎo)圖像的基礎(chǔ)上,可以最大化輸出圖像邊緣信息。導(dǎo)向?yàn)V波最早由He等在2013年提出,主要思想是引導(dǎo)圖像做線性變換,假設(shè)導(dǎo)向圖像I和輸出圖像q之間存在一個(gè)局部線性模型,該模型為
qi=akIi+bk,?i∈wk。
(6)
像素點(diǎn)i經(jīng)濾波處理后的結(jié)果用加權(quán)平均式表達(dá),即
(7)
式中:qi為局部線性公式的輸出;I為引導(dǎo)影像;ak,bk為窗口系數(shù);pj是窗口的任意值。用γ表示窗口半徑,則窗口的損失函數(shù)為
其中,pi為窗口wk的任意值,ε為一個(gè)正規(guī)化參數(shù),避免ak過(guò)大和過(guò)于平滑,可以通過(guò)線性回歸方法求解,
(9)
(10)
其中,
(11)
(12)
(13)
從而不難得到濾波圖像t(x):
(14)
雖然可導(dǎo)向?yàn)V波除霧算法結(jié)構(gòu)上比較嚴(yán)謹(jǐn),除霧效果優(yōu)于一般的除霧算法,但仍存在一定局限性,不能達(dá)到理想的效果。通過(guò)分析一定量的航空影像和室外影像,可以發(fā)現(xiàn)微小物體呈現(xiàn)出的視覺(jué)效果比較暗淡,圖像的整體顏色不突出,難以表達(dá)地物的完整信息。這主要是因?yàn)閷?dǎo)向?yàn)V波算法中的透射量是根據(jù)傳輸模型的估計(jì)值計(jì)算的,而實(shí)際值和真實(shí)值之間往往存在一定誤差。
由于拍攝環(huán)境影響,絕大多數(shù)拍攝設(shè)備無(wú)法真實(shí)還原物體本身的色彩信息,只能通過(guò)自動(dòng)白平衡算法AWB進(jìn)行顏色校正。自動(dòng)白平衡是圖像處理中的一個(gè)重要技術(shù),不同的白平衡算法根據(jù)不同的校正基準(zhǔn)對(duì)原始圖像進(jìn)行偏色恢復(fù),一般分為兩類:第一類是廣泛假設(shè)法,主要包括灰度世界算法、基于灰度世界算法、全反射理論算法、全反射理論的何種加權(quán)正交組合算法;第二類是先驗(yàn)知識(shí)算法,包含色彩透視法、色彩相關(guān)法和色彩對(duì)應(yīng)法[22]。由于前者比后者計(jì)算便捷,所以前者應(yīng)用較為廣泛。
首先,需要將RGB三色空間轉(zhuǎn)換為YCbCr空間,使用的轉(zhuǎn)換公式為
(15)
式中:Y為亮度信息;R,G,B為顏色通道;Cb,Cr為藍(lán)色分量和紅色分量及其各自的參考值之間的差值。
根據(jù)圖像處理,將圖像亮度值作為對(duì)應(yīng)于前12%像素點(diǎn)的區(qū)域的白色參考點(diǎn)。
計(jì)算Raver/Gaver/Baver,R,G和B三色通道中白色參考點(diǎn)的平均值。
求解RGB三色通道的增益值Rgain/Ggain/Bgain
Rgain=Ymax/Raver,
(16)
式中:Ymax為Y系數(shù)的最大亮度值在YCbCr空間中,依照式(16),用相同的辦法獲得Ggain,Bgain,進(jìn)行圖像顏色校正,并獲得計(jì)算結(jié)果
R′=R×Rgain
G′=G×Ggain
B′=B×Bgain,
(17)
式中,R′,G′,B′為最終校正過(guò)的影像值。
自動(dòng)白平衡算法在映射過(guò)程中,函數(shù)容易受到少數(shù)極亮或極暗像素的影響,使得映射過(guò)程出現(xiàn)錯(cuò)誤,從而使得物體信息不能得到完整表達(dá)。針對(duì)這一問(wèn)題,本文提出了基于導(dǎo)向?yàn)V波和自動(dòng)白平衡除霧算法,該算法能夠很好地解決單個(gè)導(dǎo)向?yàn)V波和自動(dòng)白平衡算法在除霧過(guò)程中出現(xiàn)的問(wèn)題,使得除霧后的影像清晰明亮,滿足遙感影像精度的需求。
該算法的思路是首先分析傳統(tǒng)的暗通道算法,并進(jìn)一步分析導(dǎo)向?yàn)V波和自動(dòng)白平衡原理,最終獲得除霧后的影像。暗通道先驗(yàn)算法是圖像除霧算法的一個(gè)重要理論,其中何凱明博士的暗通道先驗(yàn)算法尤為典型,即在非天空的局部領(lǐng)域里,某一個(gè)像素總會(huì)有至少一個(gè)顏色通道具有很低的值,因此對(duì)于任何輸入的圖像J,暗通道可以定義為
(18)
式中:Jc(y)為彩色圖像的每個(gè)通道;Ω(x)為以像素為中心的一個(gè)窗口。
霧霾成像的數(shù)學(xué)模型為
J(x)=(I(x)-A)/t(x)+A,
(19)
式中,A的估計(jì)方法一般是首先選取暗通道最亮點(diǎn)0.1%的像素,這些像素一般是最不透光的像素[23],從這些像素中選取最高亮度的像素作為大氣光。當(dāng)圖像的t值很小時(shí),會(huì)導(dǎo)致J的值偏大,從而使得圖像失真,因此一般可設(shè)置一個(gè)閾值t0,然后再替換到大氣散射模型中,則無(wú)霧圖像的輸出結(jié)果為
(20)
將式(14)和式(20)代入式(17)中,輸出影像為
(21)
為了證實(shí)該算法的有效性,使用MATLAB R2014a開(kāi)發(fā)平臺(tái)編寫(xiě)代碼。首先在初始化的環(huán)境讀取帶霧圖像,獲取暗通道圖像;然后將暗通道圖像進(jìn)行導(dǎo)向?yàn)V波計(jì)算,獲取過(guò)濾后的圖像;再通過(guò)大氣散射模型檢索過(guò)濾后的圖像,獲得預(yù)處理圖像;最后將自動(dòng)白平衡算法應(yīng)用于預(yù)處理模式以獲取輸出圖像。[24]選取4幅圖像數(shù)據(jù)作為試驗(yàn)數(shù)據(jù),圖像數(shù)據(jù)1是2016年獲取的航拍影像(http://news.focus.cn/zz/2016-12-19/11312845.html);圖像數(shù)據(jù)2為2016年大疆精靈3拍攝的無(wú)人機(jī)影像;圖像數(shù)據(jù)3是2014年基于國(guó)產(chǎn)SWDC系列航攝儀得到的影像[25],圖像數(shù)據(jù)4是Google Earth(http://earth.google.com/)上下載的的四川雅安地區(qū)影像。圖1是各算法的除霧效果對(duì)比圖。
圖1 各算法除霧后的效果對(duì)比
為了證明該算法的可行性,分別對(duì)原始的帶霧圖像運(yùn)用了幾種算法處理。如圖2所示,原始影像的云霧較重,難以分辨出地物信息,HSV雙邊濾波處理后的影像出現(xiàn)模糊、色彩暗淡現(xiàn)象;經(jīng)導(dǎo)向?yàn)V波除霧后的影像雖然可以達(dá)到一些除霧效果,但是處理后的圖像色彩暗淡,圖像的邊緣信息模糊,造成后續(xù)的使用工作不能滿足精度要求;暗原色算法處理后的影像色彩較暗,灰度信息不太明顯;可以看出,經(jīng)過(guò)本文算法處理后的影像細(xì)節(jié)信息可以得到完整表達(dá),很好地解決了色彩失真的現(xiàn)象,該算法可以運(yùn)用在遙感影像的去霧過(guò)程中。
在除霧算法的應(yīng)用中,高還原精度影像是一個(gè)重要的評(píng)定標(biāo)準(zhǔn),同時(shí)算法處理的快速性也是衡量算法可行性的指標(biāo),為了進(jìn)一步驗(yàn)證算法的精確度,對(duì)算法的處理時(shí)間和圖像的信息熵等也作了評(píng)定,如表1所示。
表1中給出了針對(duì)4組帶霧影像兩種算法不同性質(zhì)的比較,可以看出,本文算法處理圖像的時(shí)間較短,這是因?yàn)閷?dǎo)向?yàn)V波和暗原色算法都比較復(fù)雜,而本文算法將其與自動(dòng)白平衡算法融合,節(jié)約了時(shí)間。在影像信息熵方面,本文算法也表現(xiàn)出了較好的性能,信息熵反映了圖像中各灰度級(jí)出現(xiàn)的概率大小,是圖像質(zhì)量評(píng)價(jià)的重要指標(biāo),即表示圖像含有的信息多少,信息熵越大,包含的圖像信息越多。由此看出,在4組除霧后的影像中,本文算法的信息熵為理想狀態(tài)。平均梯度反映了圖像微小細(xì)節(jié)反差變化的速率,表示圖像的相對(duì)清晰程度,平均梯度越大,層次越多,圖像也就越清晰。本文算法的平均梯度相比于其他3種算法均有改進(jìn),和原始的帶霧圖像相比提高更大,因此該算法可行性更好;峰值信噪比也是評(píng)定圖像信息的一個(gè)重要指標(biāo),峰值信噪比越高,圖像質(zhì)量越好,恢復(fù)后的圖像越接近于原始圖像,失真效果越小。4組圖像經(jīng)除霧處理后峰值信噪比均有了一定提高。無(wú)論從主觀的除霧后圖像信息表達(dá)方面,還是對(duì)比客觀的算法性能,本文算法除霧效果更好。
表1 各除霧算法性能的比較
(1)針對(duì)暗通道先驗(yàn)算法去除遙感圖像中明亮區(qū)域的云霧時(shí)容易造成色彩失真的問(wèn)題,本文從帶霧圖像本質(zhì)出發(fā),提出了一種基于導(dǎo)向?yàn)V波與自動(dòng)白平衡算法融合的除霧新算法。
(2)通過(guò)對(duì)遙感影像進(jìn)行除霧試驗(yàn)發(fā)現(xiàn),新算法的除霧效果優(yōu)于傳統(tǒng)的導(dǎo)向?yàn)V波器算法。該算法不僅解決了原除霧算法圖像模糊不清、圖像失真、邊緣不明顯的問(wèn)題,而且獲取的圖像中地物特征更為明顯,具有較好的視覺(jué)效果,節(jié)約了處理時(shí)間,提高了工作效率。
(3)本研究為未來(lái)遙感圖像除霧提供了新的思路,在一定程度上解決了遙感圖像的全天候使用問(wèn)題。