劉佳嘉,唐悟甲,劉建華
(1.中國民航飛行學院航空工程學院,四川 廣漢 618307;2.中國電子科技集團公司第二十九研究所,四川 成都 610036)
基于大氣散射模型的單幅霧天圖像復原方法
劉佳嘉1,唐悟甲2,劉建華1
(1.中國民航飛行學院航空工程學院,四川 廣漢 618307;2.中國電子科技集團公司第二十九研究所,四川 成都 610036)
現有大氣散射模型方法對于利用長期固定成像器的地方可以較好實現場景建模并復原霧天圖像,但在缺乏其他天氣狀況下,景物圖像作為參考的單幅霧天圖像不能很好地復原。針對這一問題,該文提出一種新的基于大氣散射模型的單幅霧天圖像復原方法。該復原方法先通過邊緣檢測算法查找景物輪廓來劃分不同區域,然后標定不同連通區域來劃分景物層次,再計算圖像灰度值變化曲線的斜率并分割天空區域,最后對新的環境光強度設定,對不同區域的景物采用不同的參數進行復原。采用一張手動拍射圖像和一張網絡圖像作為實例分別進行實驗,結果表明:該方法能夠很好地復原缺乏參考圖像的單幅霧天圖像。
大氣散射模型;圖像去霧;天空分割;場景劃分
現階段圖像去霧方法大致分為非建模和建模2類。非建模方法是對霧天降質圖像進行有選擇性的增強,可以提高圖像的對比度。但這種方法的不足之處在于不考慮景深,對所有像素點都進行相同處理,而實際上不同層次物體所受霧氣影響不同[1],這就導致場景信息丟失,從而使恢復圖像失真[2-3]。建模方法則依據不同距離的物體受霧氣的疊加影響,以及成像器所得圖像來計算景物的實際效果[4-5]。常見建模方法包括大氣散射模型方法、交互式復原方法和場景深度估計方法等。大氣散射模型方法的準確性較高,但需使用兩幅或者多幅同一場景不同天氣的圖像進行輔助。在安裝固定攝像機時該方法的輔助條件容易獲得,可從監測視頻中提取各種天氣狀況的圖像幀;但對于臨時拍攝的單幅霧天圖像,因沒有參考圖像,該方法不能進行復原。文獻[6]利用馬爾科夫隨機場恢復出大氣光,從而改善了降質圖像,但該方法由于沒有通過物理模型恢復圖像,往往導致恢復圖像出現光暈效應。文獻[7]利用圖像的彩色統計信息對圖像進行恢復,該方法的缺點是對于濃霧區域的恢復效果不佳。文獻[8-9]通過估算大氣遮光罩來恢復圖像,具有較好的效果,但這種方法要求圖像具有較高的對比度且大氣遮光罩平滑,因此應用范圍有限。文獻[10]提出了一種基于天空區域分割的改進暗原色先驗去霧算法,此算法解決了暗原色先驗在明亮區域估計透射率偏小的問題,在一定程度上能夠提高霧天交通圖像的整體對比度、層次感;但該方法由于在場景傳輸率的優化里采用固定的散射系數,因此對于濃霧環境下的圖像復原效果不佳。
為了復原沒有參考圖像的單幅霧天圖像,本文在現有大氣散射模型方法的基礎上,提出了一種新的基于大氣散射模型的單幅霧天圖像復原方法。該方法只利用單幅霧天圖像本身,通過分割場景,計算復原所需的環境光亮度,能夠實現對擁有天空區域的霧天圖像進行較好復原。
McCartney在1975年提出了大氣散射模型。在該模型中成像器所接收的光線一部分來自實際景物的反射光,即衰減反射光;另一部分來自大氣中懸浮顆粒散射的光線,即環境光。其中衰減光模型描述了反射光經過大氣削弱的過程,衰減反射光線的強弱反比于物體離成像器的實際距離。環境光包括太陽其他方向直射的光線,大地和天空云層的漫反射光線,成像器所接收到的實際光線為這兩個光線的疊加。
大氣散射系數β(λ)和光波長度有關,滿足公式:

其中,0≤r≤4,r取決于大氣中懸浮顆粒物的大小。
晴天時光線散射對波長的選擇性很強,此時r=4。濃霧時大氣散射系數變化很小,此時r≈0,所有可見光被散射,所以看見一片白色的霧氣。文獻[11-12]分別利用光學深度值和環境光強度成功地進行圖像去霧。但是對于臨時拍攝的單幅霧天圖像,由于沒有其他參考圖像的輔助而難以采用傳統方法進行復原。
本文在現有的大氣散射模型基礎上提出一種單幅霧天圖像復原方法。無需采集多幅輔助圖像,通過場景劃分、天空分割、遠景提取和新的環境光強度設定,對不同的景物采用不同的參數進行復原,能夠成功復原不具備各種天氣狀況作為參考的單幅霧天圖像。其處理流程如圖1所示。

圖1 霧天圖像復原流程圖
2.1 圖像邊緣檢測
在霧天復原中,標定不同深度區域是處理的第一步,本文通過邊緣檢測算法查找景物輪廓來劃分不同區域。常見邊緣檢測算法[13]包括robert算法、sobel算法、prewitt算法、LOG算法等。通過實驗效果對比,本文采用sobel算法[14]處理圖像,該方法運算量小、計算速度快,所得結果能滿足后續處理需求。圖2(a)為原始圖像。圖2(b)中包含非常多細小邊緣線條,為防止在后續分割中造成過分割現象,利用一定閾值篩選掉過小邊緣。篩選公式為

其中T為篩選閾值。
本文采用固定值T=10即可達到滿意效果,圖2(c)為經過篩選并加強顯示后的結果。處理后線條清晰層次分明,利用該圖進行連通區域查找,再劃不同景物層次。
2.2 景物層次劃分
圖3為景物層次劃分流程圖。

圖2 邊緣檢測結果

圖3 景物層次劃分流程
以邊緣檢測的結果為依據運用連通區域查找算法[15-16],通過標定不同連通區域來劃分景物層次。圖4(a)為連通區域查找運算之后的效果圖。可看出大塊白色區域中還包含很多獨立的黑色小區域,對小區域標定后將像素點數小于一定閾值的區域標記為邊界區域,就可篩選掉極小區域[17]。結果如圖4(b)所示,閾值為100。
連通區域劃分后計算每個區域平均灰度值,用于后續判斷天空區域:

圖4 連通區域劃分及篩選效果

k——連通區域標號;
N——該連通區域中像素個數。
接下來將區域邊界歸屬到各自的景物層次中。通過在原始霧天圖像中比較該邊界與其接壤連通區域平均像素值,選擇和邊界像素值最接近區域作為該像素點的歸并區域。結果如圖5所示,每一區域用一種顏色標記,不同區域不同顏色。

圖5 連通區域歸并效果
完成景物層次的劃分后,計算環境光強度。由于不同景物所處高度不同,從遠處傳來的環境光在不同高度所需要穿透的霧氣層也不同,即使同一景物的最高點和最低點也有很大差別,因此每一點的環境光強度是不一致的。光線強度為

其中Ej表示高度為j的位置環境光強度。
如果能找到Ej,則可利用式(4)復原景物亮度。由于環境光只和高度有關,而和景物到成像器距離無關,因此假設霧天圖像中包含天空區域,且該區域能從空中一直延伸到地平線附近,即像上景物無法全部遮擋遠處地平線或者遮擋高度有限。這樣就可利用天空區域計算環境光強度。
2.3 天空區域劃分
天空部分灰度值一般大于其他區域,圖6為門限值大于300判斷出的天空區域,可看出遠景受霧氣影響其輪廓難以形成閉合包絡線,被誤判為天空區域。因此需對天空區域進行二次處理,分離出遠景。

圖6 天空區域
普通霧氣可視為均勻介質,光線的衰減應隨高度增加連續減弱。圖 7(a),圖 7(c),圖 7(e)為分別取圖像第10,100,200列時的灰度值變化曲線,圖中直線段為近景灰度值255,曲線為天空區域。第10列曲線變化平緩,而第100列和第200列有一個明顯奇點,奇點左右兩邊曲線的斜率有明顯的變化。可假設該點附近存在實際景物,干擾了光線指數衰減過程。
本文通過計算曲線斜率作為分割依據:

根據式(5),求得曲線每一處的斜率值,如圖7(b),圖7(d),圖7(f)所示。 再根據該值采用固定閾值和自適應閾值方法綜合確定遠景分割點。在獲得某一列的斜率值后平滑該列曲線[18-19],獲得g(i,j)中出現頻率最高的值作為該列主值。主值表示光線正常衰減趨勢,如果光線衰減斜率和主值偏差超過一定范圍,則表明該處可能存在遠景干擾了光線正常衰減。
固定閾值法根據經驗獲得閾值,在本文中采用偏差值大于4作為遠景和天空的分界點。當出現第一個斜率偏差值大于4的點時,確定該點為分界點。自適應方法先計算平均偏差值,當出現第一個偏差值大于平均值時,則標定該點為分界點。單獨采用任一方法都可能得到孤立奇點,造成分界點不正確,因此需將兩者結合來修正奇點。采用相鄰點判斷法,如果該點位置和周圍點差別大于一定值,則修正該點位置為左右兩點平均值。由于某些含遠景的天空和遠景相近,該列已經不能判斷分界點,但左右兩列卻能找到分界點,則該列分界點為左右兩列的平均值,即斷點的連接。圖8為修正分界點后的位置圖。可以看出,相對于圖6,已將遠景從天空區域中分割出來。
在不受霧氣干擾的情況下,天空區域每一行亮度應該一致,且復原后天空亮度最大值是255。由于霧氣均勻分布,可認為同一行光線受到霧氣衰減相同,有相同光學深度,因此可通過該行最亮列計算出該行光學深度,再獲得其他列光線強度。利用式(6)計算得到每一行最亮值的像素灰度值Amax:

同一行其他列光強度根據βd利用式(8)計算。

式中:E(d,λ)——成像器處接收到的環境光強度;
E∞——無窮遠處的環境光強度。
根據之前假設,天空區域能延伸至地平線附近,天空中像素高度最低行就是地表處環境光強度,則式(4)中環境光強度為已知。
2.4 景物區域實際距離的計算
圖像中景物到成像器距離各不同,因此反射光衰減程度也各有差異。為了能復原實際亮度,需知道光學深度βd,d是景物實際距離。
圖9為景物投影示意圖,f為焦距,h為圖像像素點到地平線高度,H為焦點距離地面高度,d為實際景物到焦點距離。根據三角公式:

圖7 天空區域單列灰度曲線及斜率值

圖8 天空區域最終分界點

圖9 景物到成像器距離計算

焦距f可從圖像屬性中獲得,H是相機所在高度,可能是固定腳架高度,或者拍攝人的高度。普通數碼相機CCD尺寸大約在1/2.5~1/2.3in,首先將h的單位像素換算成公制單位再計算:

其中ph為圖像的總像素高度。

圖10 霧天復原圖像結果
由于f,h,H已知,可根據式(9)計算景物實際距離d,再結合參數β,得到式(1)所需參數。β取決于霧氣濃度,最佳值可使復原后圖像對比度最大化。
2.5 圖像復原
復原時,由式(6)復原天空區域亮度,根據式(9)計算景物到成像器實際距離d,再估計參數β,由式(4)計算出復原值D0。
本文實驗中采用一張手動拍射圖像和一張網絡圖像。前者拍攝相機為SONY DSC-T100,像素值為2048×1536,焦距為6mm,手持拍攝。后者來源網絡,因此圖像屬性未知。
圖10(a)~圖 10(d)為大氣散射參數β取 0.2,手持拍攝高度H取1.6m,焦距f取6mm時的原始圖像及復原結果。 圖10(e)為原始霧天網絡圖像,圖10(f)、圖10(g)分別為普通方式復原結果,圖10(h)為采用本文方法復原結果,其中β取0.2,H取1.7,f取6mm。
通過處理結果表明,該方法能較準確地分割景物,遠景與天空分割明顯;而普通增強方式遠景與天空融合較深,不僅界限不清,近景也不夠清晰。本文方法較好地實現圖像復原,近景清晰,遠景分明,效果較好。
傳統大氣散射模型需要多幅不同天氣狀況的圖像作為參考,對固定成像器的方式較為實用,但對于隨機拍取的零散單幅圖像則效果甚微。本文提出了基于大氣散射模型的單幅霧天圖像復原方法。該方法根據圖像中景物邊緣劃分場景,分割不同層次景物。同時根據環境光的實際情況,提出了新的環境光計算方法,并根據光線衰減特性實現對遠景再分割,避免遠景被誤判為天空,并對天空和場景兩種區域采用不同的復原算法。結果顯示復原效果較好,近景清晰,遠景與天空界限明顯。
本文的缺點在于天空區域與遠景界線過于明顯,比較突兀。下一步將研究采用融合算法等方法使邊界過度更自然。另外近景復原效果較好,遠景效果不太理想,下一步將研究如何在遠景復原效果上進行改進。
[1]王大雷.霧天圖像增強技術的分析與研究[D].南京:南京理工大學,2007.
[2]畢篤彥,葛淵,李權合,等.單幅圖像去霧方法研究[J].空軍工程大學學報(自然科學版),2013,14(6):46-53.
[3]MI Z, ZHOU H, ZHENG Y, et al.Single image dehazing via multi-scale gradient domain contrast enhancement[J].Iet Image Processing,2016,10(3):206-214.
[4]NARASIMHAN S G, NAYAR S K.Interactive(de)weathering of an Image using physical models[C]∥In Proceeding of ICCV Workshop on Color and Photometric Methods in Computer Vision(CPMCV) France,2003:241-252.
[5]NARASIMHAN S G,NAYAR S K.Contrast restoration of weather degraded images[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2003,25(6):713-724.
[6]TAN R T.Visibility in bad weather from a single image[C]∥IEEE Conference on ComputerVision and Pattern Recognition,Alaska USA,2008:1-8.
[7]FATTAL R.Single image dehazing[J].ACM Transactions on Graphics,2008,27(3):72.
[8]TAREL J P,HAUTIERE N.Fast visibility restoration from a single color or gray level image[C]∥IEEE International Conference on Computer Vision, Kyoto Japan,2009:2201-2208.
[9]何人杰,樊養余,WANG Z Y,等.基于非局部全變分正則化優化的單幅霧天圖像恢復新方法 [J].電子與信息學報,2016,38(10):2509-2514.
[10]邢曉敏,劉威.霧天交通場景中單幅圖像去霧[J].中國圖形圖像學報,2016,12(11):1440-1447.
[11]OAKLEY JP,SATHERLEY B L.Improving image quality in poor visibility conditions using a physical model for contrast degradation[J].IEEE Transitions on Image Processing,1998,7(2):167-179.
[12]盧洋,張旭秀.圖像邊緣檢測算法的對比分析與研究[J].太原科技,2009(3):50-52.
[13]吳國偉,謝金法,郭志強.基于Sobel算子的車輛輪廓邊緣檢測算法[J].河南科技大學學報(自然科學版),2009,30(6):38-41.
[14]馬勝前,張光南,楊金龍,等.基于二維直方圖的otsu圖像分割算法改進[J].西北師范大學學報(自然科學版),2009,45(1):57-61.
[15]蔡念,唐孝艷,許少睿,等.基于分水嶺算法的MELK圖像分割[J].計算機應用研究,2009,26(8):3175-3176,3191.
[16]朱凱軍,周焰,蘭祖送.基于區域分割的霧天圖像增強算法[J].計算機測量與控制,2006,14(5):661-663.
[17]郭尚,蘇鴻根.基于像素的計算大量連通區域面積的快速算法[J].計算機工程與設計,2008,29(7):1760-1763.
[18]趙鳳石,邵寄群.曲線平滑局部處理[J].佳木斯工學院學報,1992,10(3):170-177,186.
[19]周焰,王祖喜,陳振羽,等.一種曲線平滑的自適應方法[J].計算機工程,2000,26(4):13-15.
(編輯:商丹丹)
Restoration for single fog image based on atmospheric scattering model
LIU Jiajia1,TANG Wujia2,LIU Jianhua1
(1.Aviation Engineering Institute,Civil Aviation Flight University of China,Guanghan 618307,China;2.No.29 Research Institute of CETC,Chengdu 610036,China)
The current atmospheric scattering model method can be used to effectively realize scene modelling and restore fog image where the long-term fixed imager is used,but it is failed in restoring single fog image without reference of scene images under other weather conditions.Aiming at this problem,a new method of single fog image restoration based on atmospheric scattering model is presented in the article.The restoration method firstly can find the contours of the scenery to divide different regions in edge detection algorithm way,then divide the scene hierarchy by calibrating different regions together and calculate the slope of the image gray value change curve and divide the sky area,finally reset the new environment light intensity and restore sceneries in different regions by applying different parameters.A manually shot image and a network image are used as an example to test the method.The test results show that the method can effectively reconstruct the single fog image without reference images.
atmospheric scattering model; removing fog in image; sky segmentation; scene partitioning
A
:1674-5124(2017)07-0117-07
10.11857/j.issn.1674-5124.2017.07.023
2017-01-11;
:2017-02-24
劉佳嘉(1986-),女,四川新津縣人,講師,碩士,研究方向為航空電子、圖像處理。