鄭良緣,王 平,高穎慧
(國防科技大學電子科學與工程學院 ATR重點實驗室,長沙 410073)
在霧天等惡劣氣候條件下,成像系統由于受到大氣散射的影響會發生嚴重的圖像質量下降的情況,諸如圖像能見度降低、對比度減小、色彩失真等問題。這種降質的圖像極大地限制和影響了戶外視覺系統效用的發揮,因此恢復霧天圖像的清晰度就顯得尤為重要。
近年來,基于單幅圖像去霧的算法成為國內外學者研究的熱點,多數方法都建立在先驗假設基礎之上。Tan.R[1]方法是基于同一場景無霧時的對比度高于有霧時的對比度的先驗條件,通過最大化局部對比度來恢復圖像,但該方法沒有基于物理模型恢復反照率或深度,只是增強了視覺效果,導致恢復的圖像會出現過飽和現象;Fattal.R[2]方法是基于物體表面投影與大氣光傳播局部不相關的先驗條件,通過估計場景的輻照度來推導透射率,但該方法需要輸入的圖像含有充分的顏色信息,因此復原后圖像失真較大,且在濃霧條件下圖像恢復效果較差。Kratz[3]方法基于場景深度和反照度在概率統計上是獨立的先驗條件,通過求解一個最大后驗概率估計景深和輻照度,但該類方法大多以經驗值來設定參數,實用性不強。Tarel[4]方法是基于大氣幕在絕大部分時間內是平滑的先驗條件,通過快速邊緣濾波估計大氣幕函數來恢復圖像,但該方法參數較多,不易調整,且不恰當的參數設置易引入Halo效應,得不到很好的去霧效果。He[5]方法是基于暗原色先驗條件,通過估計傳輸圖并利用軟摳圖(soft matting)算法進行修正,恢復出清晰無霧圖像。但基于暗原色先驗條件的去霧算法其暗原色區域的大小需要人為憑經驗值設定,若區域的尺寸偏大,則不能滿足介質透射率在相應的小區域內是不變的假設;若區域的尺寸偏小,則該區域有可能不存在暗原色值趨于0的情況,暗原色先驗規律失效,因此不能保證得到精準的介質透射率。另外,軟摳優化透射率計算復雜,耗時較長,無法滿足實時性要求。
本文提出了基于超像素分割的圖像去霧算法,使得透射率的計算更加準確,并在提高去霧速度的同時能更好地保持圖像的邊緣細節。
目前對于霧天圖像的處理方法主要分為兩類:一是基于圖像處理的增強算法;另一類是基于物理模型的復原方法。本文主要采用基于模型的方法對霧天成像建立物理模型。依據Mc Cartney[6]提出的大氣散射模型,將霧天降質圖像光學模型表示為

其中:I(x)為觀察到的有霧圖像;J(x)表示理想天氣條件下場景輻射照度,即清晰無霧的圖像;A為整體大氣光值;t(x)為介質傳輸率,代表場景的光線通過大氣透射到成像設備而沒有被散射的部分。當大氣環境是均勻的各向同性的介質時,傳輸率可表示為

其中:β為大氣散射系數;d(x)是場景與相機之間的距離。另外,式(1)中,右邊的第1項J(x)t(x)為直接衰減項[1],稱為衰減模型,它描述景物光線在透射媒介中經衰減后的部分;第2項(1-t(x))A是大氣光成分[7],稱為大氣光模型。去霧的目標是從I(x)中復原J(x)。
文獻[5]提出了暗原色先驗理論(dark channel prior)。對無霧圖像進行統計分析獲得的規律表明:對于戶外晴天圖像的任一局部區域中,至少在r、g、b三個顏色通道中有一個通道其像素值Jdark(x)非常小,接近于0,稱之為暗原色。通常對于一幅圖像J(x),其暗原色圖像各像素點的值可以表示為

其中:Jc為原圖像的一個顏色通道;Ω(x)是以x為中心像素的一塊方形區域。該暗原色圖像的物理意義是通過局部最小值濾波,濾去可能干擾大氣光取值的白色場景目標,從而使A的取值盡可能準確。假設大氣光值A已知,透射率t(x)在某一個局部區域內是恒定不變的,將式(1)兩邊進行局部區域大小為Ω(x)的最小值濾波,則式(1)可變形為:


根據暗原色先驗原理,在無霧情況下Jdark(x)值趨近于0,即

因Ac為正值,故可以推導出:

將式(7)代入到式(5)中,可以求得粗略估計的透射率:

為使圖像更加自然真實,保證晴朗天空下場景遠處仍存有一定的霧氣,在式(8)中引入一個常量參數 ω(0<ω<1),通常情況下其值設置為0.95,以使圖像達到遠近層次感。

將式(9)代入到式(1)中,同時考慮到入射光衰減模型項J(x)t(x)在傳輸圖t(x)趨近于0時t(x)也近似為0[5],因此將傳輸圖t(x)限制在一個較小的范圍內。令t0=0.1,使傳輸圖t(x)有一個下限,以保證在原圖霧氣濃度較深的區域保留少量的霧氣影響。因此,通過粗略估計透射率得到的去霧圖像可以表示為

由式(9)估計出介質透射率屬于粗略估計,求得的去霧圖像會因濾波窗口尺寸選取偏大產生明顯的“halo”效應,不能很好地保留原始圖像的邊緣特征。為了得到更精確的透射圖,He使用Levin等[8]提出的soft matting方法,將透射圖優化的過程轉變為最小化式價值函數的過程,如式(11)所示。


從而得到優化后的透射圖t,并根據已知大氣光值A和觀測得到的有霧圖像I(x),利用式(10)求得精確估計透射率條件下的去霧圖像J。
He方法是通過固定區域求取暗原色,然后依據暗原色先驗理論,對大氣散射模型公式進行數學轉化運算求得介質透射率的估計值。該算法求解成立必須滿足一個前提條件,即在求取暗原色的固定區域內假設該區域內介質透射率的值是一樣的。但依據均勻大氣介質中介質透射率公式t(x)=e-βd(x)可知,介質透射率和物體對各種波段散射的散射系數β以及場景深度d(x)有關。實際操作中為保證區域內存在暗原色值,在確定區域范圍時需要盡量設定較大窗口,但若選取的區域覆蓋多個景深的場景,則d(x)會產生較大的變化,邊緣部分暗原色值就會被錯誤估計,導致粗略恢復圖在場景深度發生變化的邊緣地帶產生較為明顯的光暈現象(見圖2(d)內紅色實線框內所示)。
基于暗原色先驗去霧算法在使用暗原色先驗律的過程中需進行對原始霧天圖像在小鄰域內求最小的操作。受小的鄰域內最小操作的影響,在得到的介質透射率的初始估計中存在大量的方塊效應。為了消除上述方法造成的方塊效應,文獻[5]采用圖像軟摳算法。但該摳圖算法涉及對一個大型Laplacian矩陣求逆運算,而大型矩陣求逆運算的時間和空間復雜度非常高,且其編程實現也較困難。
針對霧天圖像目標邊緣模糊、對比度低等特點,本文采用基于信息熵率的超像素分割算法[9]分別對各個小區域求取透射率,其目的在于通過分割減少圖像中邊緣部分暗原色值誤判的概率,減小方塊效應。之后根據分割區域估計暗原色值獲取透射率圖像。最后采用相對簡單的指導濾波器算法代替摳圖算法獲得優化后的傳輸率圖,并通過暗原色圖定位大氣光所在區域,恢復霧天圖像。具體算法流程如圖1所示。

圖1 算法流程
目前,圖像分割的算法主要可以分為基于特征空間(feature-space based)、基于圖像空間(image-domain based)、基于物理特征(physics based)三大類。本文算法基于圖論理論[10],針對霧天圖像目標邊緣模糊、對比度低等特點,采用超像素分割方法[9],其主要思想是將圖像分割問題轉換為基于圖的區域相似性的問題,利用最大轉移概率定義相應的目標函數,通過求解目標函數最大值獲得相應的區域,即超像素。然后將分割出的圖像進行暗通道計算來估算透射率,以減少圖像中邊緣部分暗原色值誤判的概率。
通過超像素分割后求取的透射率相對更準確,利用粗略透射率恢復的霧天圖像的方塊效應明顯減少。在這種情況下,利用軟摳圖來細化透過率t就不再必要,且利用優化透射率的算法會耗費大量的運算時間,為此采用引導濾波[12]的方法,對經過分割后獲得的介質透射率圖像進行精細化操作。
引導濾波原理:輸出的矩陣在局部范圍內為指導矩陣的線性變換,因此引導濾波過程可以表示為

其中:I為指導矩陣;p為輸入矩陣;q為輸出矩陣;ij為矩陣中元素,wij(I)是引導濾波器的核,影響輸出矩陣q對場景結構信息的保持性。根據引導濾波定義,在圖像處理中,引導濾波器即在像素k處的輸出是指導矩陣I中以像素k為中心的窗口wk中所有元素的線性組合,表達式為

其中ak和bk是窗口wk中和輸入圖像P有關的常量線性變換系數。為求得ak和bk,將最小化輸入圖像P和輸出圖像Q之間的差異性問題轉化為代價函數的極小值問題,定義代價函數

其中ε為防止ak過大的歸一化參數。對式(15)取最小值,可以得到ak和bk。最后對所有局部窗口應用上述局部線性模型,得到最終的濾波效果,輸出圖像Q為

本文算法中,將觀測到的原始有霧圖像I(x)設定為指導圖,將經過超像素分割后獲取的粗略透射率估計圖作為輸入圖像P,通過引導濾波得到精細化透射率圖像Q。由于利用指導濾波的時間復雜度僅為O(N),大大減少了軟摳算法中矩陣的求逆運算,因此運算速度明顯提高。
本文采用He[5]方法估算大氣光值。首先對暗原色信息圖中的像素強度從高到低排序,選取排序后亮度值為前0.1%的像素點。在這些像素對應于原圖像的像素點中,選取亮度最大值作為大氣光A的值。該方法能快速、準確、有效地估計出A的值。
利用獲取的傳播圖信息t(x)和大氣光A,根據式(10)可求得去霧后的圖像J(x)。為保證整體去霧效果,同時為避免因去霧過度產生圖像失真問題,本文選取t0=0.3,可以較好地抑制天空部分的噪聲影響。
為了驗證算法的效果,對相關網頁中霧天圖像進行算法驗證對比實驗。將本文基于超像素分割求取的暗通道圖和利用固定區域分塊求取的暗通道圖進行比較,固定區域與本文算法的去霧效果對比見圖2。圖2中:(a)和(e)為同一幅有霧圖像(614×953);(b)是采用9×9區域得到的暗原色通道暗通道圖像;(f)是采用基于超像素分割算法得到的暗通道圖像;為了從視覺上更加直觀地展現兩個算法的差別,(c)和(g)分別對(b)和(f)作了彩色化操作,暗原色值相等的部分用同一種顏色來表示;(d)和(h)分別是基于9×9尺寸區域求得的粗略透射率估計值恢復的無霧圖像和基于超像素分割后求取粗略透射率估計值恢復的無霧圖像;(b1)和(f1)分別為兩種方法獲取的暗原色圖局部放大部分;(d1)和(h1)分別為恢復的霧天圖像局部放大部分。
通過對圖2中幾個關鍵環節效果的對比可以發現:圖(d)中紅色實線框標記處白邊較多、較粗,光暈現象較明顯,說明基于固定區域分塊求取暗通道圖的方法存在較高概率的暗原色值誤判;相比而言,(h)中紅色實線框標記處白邊較少、較細,光暈現象輕微,說明采用本文算法估計出的透射率相比原固定區域估計透射率的方法其數值更為準確。此外,在視覺效果方面,本文算法更能體現圖像的遠近層次感。從(d)中紅色虛線標記處可以看到,遠處與天空相接的房屋整體上亮度值較低,基本未達到去霧的效果;而從(h)中紅色虛線標記處可以看到,其房屋處亮度值由近至遠逐漸降低,在保證去霧效果的同時又體現了圖像的層次感。

圖2 固定區域法與本文算法的去霧效果對比
為了更加直觀地顯示本文算法的效果,將本文算法與Fattal去霧算法、He去云霧算法進行比較,對比實驗結果如圖3所示。其中:(a)~(c)組圖像為霧氣較濃時的圖像,(d)組圖像為薄霧時的圖像。末位數字為1的圖像為原始霧天圖像,末位數字為2的圖像為采用Fattal算法恢復的無霧圖像,末位數字為3的圖像為He算法恢復的無霧圖像,末位數字為4的圖像為本文算法恢復的無霧圖像。
從整體上看,Fattal去霧算法對于去薄霧情況效果較好,但隨著霧氣加重,恢復后的圖像會使圖像對比度增加,特別是在濃霧情況下,恢復后的霧天圖像出現明顯失真。圖3中:(a2)中遠處的布娃娃因亮度值過大,導致基本無法看出物體的輪廓,灰度值與大氣光值相近部分也會受到其影響而無法識別,如邊緣部分的白色物體;(c2)中樹木細節無法識別,例如紅色虛線標記處所示。另外,從(a2)、(a3)、(a4)中紅色實線標記對比中可以看出,經過Fattal算法去霧后的布娃娃頭發顏色出現明顯失真;經過He去云霧算法后,布娃娃細節部分如眼睛、鼻子與面部灰度相近比較暗淡,而本文算法去霧后的布娃娃頭發、臉部等細節更加清晰和突出,臉部與頭發之間的對比度更顯自然。
在體現場景目標的層次感方面,本文算法也具有一定優勢。從圖3第2組圖中的紅色實線標記對比可以看到:對于由近及遠接近大氣光的部分,(b2)的去霧效果不是很明顯,與天空相接處仍有霧存在;(b3)和(b4)相比,兩者都實現了去霧,但前者圖像標記部分較模糊,后者圖像清晰,在樹葉與樹葉之間、樹葉與樹枝之間的細節方面表現更好,且邊緣交接部分層次更為清晰。最后,從(d2)、(d3)、(d4)的紅色虛線標記對比中可以看出:Fattal算法和He云霧算法去霧后的圖像整體偏暗,而本文算法去霧后的圖像亮度相對較高,有利于后期的圖像處理。

圖3 不同算法的去霧效果比較
本文提出一種基于超像素分割的圖像去霧新算法,其主要思想是用圖像分割確定的小區域來代替固定區域,再對分割后的小區域分別求取透射率,目的是通過分割減少圖像中邊緣部分暗原色值誤判的概率,減少光暈效應,然后根據分割區域估計各區域暗原色值獲取透射率圖像,最后采用相對簡單的指導濾波器算法代替摳圖算法獲得優化后的傳輸率圖。實驗結果表明:本文算法在提高圖像去霧運算速度的同時有效抑制了光暈效應,不僅不會降低圖像的對比度,而且能很好地保留邊緣細節。
[1]Tan R.Visibility in bad weather from a single image.CVPR[M].Anchorage,Alaska:IEEE Computer Society,2008:1-8.
[2]Fattal R.Single image dehazing[J].Los Angeles:ACM Transactions on Graphics,2008,27(3):1-9.
[3]Kratz L,Nishino K.Factorizing scene albedo and depth from a single foggy image[C]//Proceedings of the IEEE International Conference on Computer Vision.Kyoto,Japan:IEEE,2009:1701-1708.
[4]Tarel J P,Hautiere N.Fast visibility restoration from a single color or gray level image[C]//Proceedings of the 12thIEEE International Conference on Computer Vision.Kyoto,Japan:IEEE,2009:2201-2208.
[5]He K M,Sun J,Tang X O.Single image haze removal using dark channel prior[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition Miami.USA:IEEE,2009:1956-1963.
[6]McCartney E J.Optics of the Atmosphere:Scattering by molecules and particles[J].John wiley and sons,1975(11):371-379.
[7]KOSCHMIEDER H.Theorie der horizontalen sichtweite[J].Beitr Phys Frei Atmos,1924(12):171-181.
[8]Levin A,Lischinski D,Weiss Y.A closed form solution to natural image matting[J].IEEE Transactions on Pattern Analysis andMachineIntelligence,2008,30(2):228-242.
[9]Ming-Yu Liu,Oncel Tuzel,Srikumar Ramalingam.Rama Chellappa[Z].Entropy Rate Superpixel Segmentation,CVPR2011.
[10]王朝瑞.圖論[M].3版.北京:北京理工大學出版社,2004.
[11]ACHANTA R,SHAJI A.SLIC superpixels compared to state-of-the-art superpixel methods[J].IEEE Transactions on PAMI,2012,34(11):2274-2282.
[12]HE Kai-ming,SUN Jian,TANG Xiao-ou.Guided image filtering[C]//Proc of ICCV.USA:[s.n.],2010:1-14.