衷佩瑋 楊睿 孫愷琦 陳國強



摘 要:針對基于暗原色先驗規律的去霧算法計算復雜度高、對圖像天空區域處理不佳等問題,提出一種基于HSI顏色空間和暗原色先驗原理的改進算法。首先將圖像轉換到HSI顏色空間,保持色調分量H不變,對飽和度分量S進行拉伸變換,乘以恢復系數;對于亮度分量I采用改進的暗原色先驗模型實現去霧:引入像素高度概率函數求取大氣光值;構建闕值函數,分別計算天空區域和非天空區域透射率;最后利用引導濾波對透射率進行優化。實驗表明,利用該算法復原后的圖像清晰,可避免顏色失真和光暈現象。運行時間較一些常用方法縮短30%以上,且對比度提高20%以上,證明該算法可行有效,可改進去霧效果。
關鍵詞:暗原色先驗;顏色失真;圖像去霧;HSI色彩空間
DOI: 10. 11907/rjdk.191550
開放科學(資源服務)標識碼(OSID):
中圖分類號:TP317.4
文獻標識碼:A
文章編號:1672-7800(2020)001-0267-04
0 引言
圖像去霧作為計算機視覺的重要研究內容之一,在安全監控[1]、衛星遙感[2]、城市交通[3]、目標識別[4]等領域有著重要應用。
當前主流圖像去霧方法可分為兩類:基于非物理模型的圖像增強方法和基于物理模型的圖像復原方法。圖像增強處理不考慮退化因素,通過增強圖像中的有用信息,削弱或去除某些不需要的信息,提高圖像對比度以實現去霧[5]。常用圖像增強算法包括直方圖均衡化算法[6]、曲波算法[7]、同態濾波算法[8]、小波方法[9]及Retinex算法[10]等,其中以Retinex算法為代表。1964年Edwin Land[l提出色彩恒常性Retinex理論,其可在動態范圍壓縮、邊緣增強和顏色恒常3個方面達到平衡,為解決霧天圖像質量問題提供了一種新的增強方法。目前研究人員采用較多的Ret-lnex算法有單尺度Retinex( Single scale Retinex,SSR)和多尺度Retinex( Multiple scale Retinex,MSR)算法。但研究表明,根據Retinex理論輸出圖像存在光暈、過增強和算法復雜度高等缺陷,且會導致RCB彩色偏移為灰色,即“灰度世界被破壞”[12]。
基于物理模型的圖像復原方法通過分析霧圖降質的物理機理,建立霧圖退化模型,最后逆向求解復原無霧圖像。相比圖像增強方法,基于物理模型的圖像復原方法考慮霧霾對成像的影響,是真正意義上的去霧方法,具有內在優越性且更可靠。Fattal[13]假設透射率與表面投影局部不相關,計算透射率達到去霧目的,但該方法基于輸入圖像的統計特性,濃霧圖像去霧效果不佳;He[14]在2008年提出的暗原色先驗理論運用最為廣泛。該算法首先利用暗原色先驗粗略估計介質透過率,然后借助圖像軟件摳圖算法對介質透過率進行細化,最后基于大氣散射模型復原得到無霧圖像,是目前最有效的單幅圖像去霧方法之一。但該算法時間復雜度高,當存在大面積明亮區域時,該算法失效。針對這些問題,基于暗原色先驗原理,學者們提出了改進算法并取得了較好結果。孫小明等[15]基于暗原色先驗原理提出一種改進算法,該算法基于分塊思想完成透射率的空間自適應估計,通過判斷大氣光強度和暗通道差值絕對值大小判斷霧圖中是否含有明亮區域,以獲得更佳的去霧效果;張登銀等[16]針對明亮區域暗通道失效情況,提出一種基于雙閥值的明亮區域識別方法和透射率修正機制,提高了暗通道先驗適用范圍;陳書貞等[17]提出一種基于改進暗通道與導向濾波的單幅圖像去霧算法,對于大面積天空或白色物體區域可實現良好的去霧效果,但其算法復雜度有待改進。
本文基于暗通道先驗模型,提出一種改進的單幅圖像去霧算法,先將圖像RCB顏色空間轉換到HSI顏色空間,對亮度分量I進行暗原色去霧,結合像素點相對高度和亮度獲取合適的大氣光值,在求解透射率的過程中,判斷像素點在圖像中的區域,運用不同的求解函數,并采用引導濾波進行優化,圖像色調H則保持不變,從而有效改善圖像在天空區域的失真問題,實現更好的去霧效果。
1 理論基礎
1.1 大氣散射模型
目前,在計算機視覺及計算機圖形領域,應用最廣泛的霧天圖像退化物理模型是McCartney大氣散射模型[18],該模型揭示了霧天圖像退化機理,是實現圖像去霧的主要理論依據。Naver&Narasimhan把大氣對景物反射的光線影響分為大氣對景物光線的衰減和環境光疊加兩部分,表達式為:
I(x)=J(x)f(x)+A(1一t(x))(1)
I(x)指輸入的原始有霧圖像;J(x)是場景目標反射,即復原的無霧圖像,指場景點光線強度;t(x)是透射率;A是大氣光強度;J(x)t(x)是直接衰減項,用來描述場景點光線在介質中的衰減;A(1-t(x))是環境光增強后的光線強度,表示環境中的入射光與大氣粒子發生散射作用的大氣光成分,該部分會造成場景模糊和顏色失真。
根據式(1)可知I(x),去霧的目的是恢復J(x),關鍵在于估計模型未知參數A和t(x)。
1.2 暗原色先驗
Hen引通過對大量圖像的觀察得出暗原色先驗規律,即在無霧圖像中絕大多數非天空的局部區域里,每個局部區域至少在一個顏色通道上有亮度值很小的像素點。
2 算法設計
在數字圖像處理中最常用的是面向硬件的彩色模型。RCB模型并不能很好地解釋人眼對色彩的理解,HSI顏色模型[19]可從彩色圖像攜帶的彩色信息中消除強度分量的影響,獨立處理飽和度和亮度通道,大幅減少工作量,是一種理想的顏色空間。基于HSI顏色模型優勢,本文將在HSI空間進行圖像去霧。
本文對HSI顏色空間3個分量分別進行處理,步驟包括:①保持色調分量H不變;②對飽和度分量I進行拉伸變換,乘以系數k(本文k取3),使圖像色彩更加飽和自然;③對亮度分量I采用改進的暗通道先驗模型進行去霧。從式(1)可以看出,復原無霧圖像的關鍵在于對未知參數大氣光值和透射率的估計。
2.1 大氣光值估計方法
一般情況下大氣光取值于霧最濃的天空或無窮遠的區域,現有典型的大氣光值估計方法[20]存在無法排除區域中較大白色近景區域的問題,針對該情況,為了更準確地估計大氣光值,默認天空位于圖像上部,本文根據像素點在圖像中的高度判斷天空區域。
2.2 透射率估計方法
為估計透射率t(x),如果直接將式(5)用于大氣散射模型以求解去霧,會出現明顯的塊效應,而且天空區域透射率估計值往往偏小,He[14]提出采用軟摳圖獲得更為精細的透射率插值,但軟摳圖算法非常耗時。為此,He[20]又提出引導濾波方法估計透射率,雖提高了透射率估計精度和效率,但依舊對天空區域處理不佳。本文先利用式(5)得到t的粗估計值,設定閾值K,通過判斷每個點的大氣光值與亮度分量I的差值絕對值,決定是否改變透射率。公式可表示為:
當差值絕對值小于K時,表示其為天空區域;當差值絕對值大于K時,則表示其為非天空區域。通過大量實驗證明當K取值為60時,可以取得較好的去霧效果,之后再運用引導濾波[20]們對透射率進行優化。
3 實驗結果及分析
為驗證本文算法有效性,在霧天圖像數據集中選取多幅圖像進行測試,限于篇幅,本文僅選取4幅圖像進行分析。實驗環境為Inter(R) Core (TM) i7-6700HQ CPU@2.60GHZ,8.OGB內存,Windowsl0操作系統,實驗在Mat-lab2016a平臺上運行。
3.1 主觀評價
將本文算法與文獻[20]、[21]的算法進行對比,可以看出在不存在天空區域的圖像(見圖1)中,3種算法都取得了較好的去霧效果,但文獻[20]、[21]經算法處理后的圖像色彩都過于飽和;在存在天空區域的圖像中(見圖2-4),文獻[20]算法和文獻[21]算法的去霧效果圖均存在光暈現象,且文獻[21]算法的效果圖出現了天空大片變暗的現象,相比之下,即便是存在大片天空區域的圖4,本文算法在處理天空區域時也取得了良好的效果,去霧效果明顯優于其它兩種算法,且圖像色彩更接近原始霧圖,視覺效果真實自然。
3.2 客觀評價
為了進一步驗證本文算法有效性,采用運行時間、對比度、方差3個客觀評價指標進一步對以上算法進行比較,結果如表l所示。
對比度和方差越大,圖像越清晰可辨,色彩也越飽和鮮艷。從表1數據中可以看出,除在圖1和圖4中文獻[20]、[21]的算法在方差方面優于本文算法,其余數據皆為本文算法最優。在圖1中,3種算法的方差數據相差并不大;在圖4中,3種算法的方差數據相差較大,但從圖4的去霧效果可以看出,文獻[20]、[21]的算法去霧效果圖均出現了色彩偏移,這可能是導致其方差大于本文算法方差的原因。
綜上所述,本文算法在時間效率方面具有明顯優勢,且在方差和對比度兩個客觀指標處的數據良好,取得了較好的去霧效果。
4 結語
本文解釋了由于大氣光值區域選取不當導致經典算法處理圖像顏色失真的現象,引入像素高度概率函數,判定天空區域,通過結合像素點在圖像中的相對高度和亮度值找到合適的大氣光估計值;同時構建閾值函數,針對處于不同區域的像素點運用不同的透射率函數求解,最后利用引導濾波對透射率進行優化。實驗表明,本文算法能有效處理天空等明亮區域,去霧后圖像清晰自然,主客觀評價指標均優于一些常用算法,且去霧速度明顯提升。
參考文獻:
[1]李穎,鄭明杰.視頻監控圖像高速運動物體穩定特征識別仿真[J].計算機仿真,2018,35( 12):342-345+354,
[2]張正豪,馮伍法,王濤,等.一種改進的基于暗原色先驗信息的航空遙感圖像去霧方法[J].測繪科學技術學報,2018,35(2):182-186.
[3] 王峰萍,王衛星,楊楠,等.基于改進Retinex的城市交通圖像增強 [J].交通運輸系統工程與信息,2017,17(5):53-59.
[4]張騫予,管姝,謝紅薇,等.基于深度特征學習的圖像自適應目標識別算法[J].太原理工大學學報,2018,49(4):592-598.
[5]劉海波,楊杰,吳正平,等.基于暗通道先驗和Retinex理論的快速單幅圖像去霧方法[J].動化學報,2015,41(7):1264-1273.
[6] 汪志云,黃夢為,胡釙,等.基于直方圖的圖像增強及其MATLAB實現[J].計算機工程與科學,2006(2):54-56.
[7] 何勁,李宏偉,張群.一種自適應閩值曲波圖像去噪算法[J].數據采集與處理,2010, 25(3):336-340.
[8]陳春寧,王延杰.在頻域中利用同態濾波增強圖像對比度[J].微計算機信息,2007(6):264-266.
[9] 馬云飛,何文章.基于小波變換的霧天圖像增強方法[J].計算機應用與軟件,2011, 28(2):71-72+95.
[10]
PROVENZI E. FIERRO M. RIZZI A. et al. Random spray Retinex:anew retinex implementation to investigate the local properties of themodel[J]. IEEE Transactions on Image Processing, 2007, 16(1):162-171.
[11]趙曉霞,王汝琳,李雪艷.基于多尺度Retinex的霧天降質圖象增強算法[J].工礦自動化,2009. 35( 10):62-66.
[12]
CHEN J,PARIS S,DURAND F.Real-time edge-aware image pro-cessing with the bilateral grid[C].ACM Transactions on Craphics,2007. 26(3):103.
[13]
FATTAL R. Single image dehazing[Jl. ACM Transactions on Craph-ics,2008,27(3):1-9.
[14]
HE K, SUN J, TANG X.Single image haze removal using dark chan-nel prior[C].IEEE Conference on Computer Vision and Pattern Rec-ognition, 2009: 1956-1963.
[15]孫小明,孫俊喜,趙立榮,等.暗原色先驗單幅圖像去霧改進算法[J].中國圖象圖形學報,2014. 19(3):381-385.
[16]
ZHANGD Y. JUM Y. WANGX M.A fast image daze removal algo-rithm using dark channel prior [J]. Acta Electronica Sinica. 2015,43(7):1437-1443.
[17] 陳書貞,任占廣,練秋生.基于改進暗通道和導向濾波的單幅圖像去霧算法[J].自動化學報,2016, 42(3):455-465.
[18] 吳迪,朱青松.圖像去霧的最新研究進展[J].自動化學報,2015,41(2):221-239.
[19]王建新,張有會,王志巍,等.基于HSI顏色空間的單幅圖像去霧算法[J].計算機應用,2014. 34( 10):2990-2995.
[20]
HE K, SUN J, TANG X.Guided image filtering [J]. IEEE Transac-tions on Pattern Analysis and Machine Intelligence, 2013, 35 (6):1397-1409.
[21]
MENG G,WANG Y. DUAN J,et al. Efficient image dehazing with boundarV constraint and contextual regularization [C]. Proceedingsof the IEEE international conference on computer vision, 2013:617-624.
(責任編輯:江艷)
基金項目:北京林業大學大學生創新創業訓練項目( S201810022093)
作者簡介:衷佩瑋(1998-),女,北京林業大學理學院學生,研究方向為圖像處理;楊睿(1998-),男,北京林業大學理學院學生,研究方向為圖像處理;孫愷琦(1998-),女,北京林業大學理學院學生,研究方向為圖像處理;陳國強(1997-),男,北京林業大學理學院學生,研究方向為圖像處理。