杨 燕,白海平
(兰州交通大学电子与信息工程学院,兰州 730070)
基于暗通道先验的补偿快速去雾算法
杨 燕,白海平
(兰州交通大学电子与信息工程学院,兰州 730070)
针对暗通道先验算法去雾能力较弱且速度慢的问题,提出一种对暗通道补偿的快速去雾算法。在分析光晕产生原因的基础上,结合中值滤波算法补偿去雾能力较弱的边缘雾区暗通道图,将有雾图像的全局最小值图像作为导向图,利用引导滤波平滑且保持边缘特性细化补偿后的暗通道图,消除黑斑效应,降低算法复杂度,将新的暗通道中的最大值作为大气光强的简单估计,根据大气散射模型恢复无雾图像。实验结果表明,与中值滤波算法、快速去雾算法等相比,该算法获得的无雾图像具有更好的清晰度和色彩恢复度,能提高运算速度。
暗通道;补偿算法;去雾算法;引导滤波;大气散射模型
DO I:10.3969/j.issn.1000-3428.2015.10.039
在雾霾天气条件下,空气中的粉尘、水滴等悬浮的大量粒子的散射、折射作用导致获得的户外图像严重降质,图像的对比度、色彩和分辨率难以保真,致使图像信息特征提取和使用困难,限制了各种户外监控和检测系统的应用,例如航天拍摄、交通视屏监控、地形勘测等。因此,有效的去雾算法研究是非常具有实用价值的课题。
现今,国内外去雾算法的研究主要分为 2类:(1)图像增强算法,该类算法重点在于通过各种手段增强结果图像的对比度和突出细节,并未考虑雾霾图像形成的物理实质;(2)利用大气散射模型估计模型中参数信息,反求出无雾图像,该模型可以利用单幅有雾图像的信息,而无需过多的附加信息。文献[1]通过扩大结果图像的局部对比度,达到视觉去雾效果的目的,但该算法并未真正考虑物理模型的透射率,恢复的场景色彩会出现过度饱和现象。文献[2]则是利用数据统计理论,假设场景色度和介质传播率不相关的特性来估计反射率,进而推导出场景的透射率,但该算法过分依赖于输入信息的统计特性,当假设条件无法满足时,该算法就会失效。文
献[3]提出了一种快速去雾算法,该算法利用中值滤波估计大气散耗函数,去雾图像在细小边缘区域去雾能力较差。文献[4]通过无雾图像暗通道统计规律得到先验信息,即在局部区域内至少有一个通道的值很小,根据大气散射模型推导出透射率的粗率估计,并利用soft matting细化透射率,该算法可以得到较好的去雾效果,但在求取透射率的过程中需要消耗大量的运算时间和存储空间。文献[5-6]通过联合双边滤波估计大气散耗函数间接求得透射率,以实验快速去雾。文献[7]利用引导滤波来代替软抠图,极大降低了运算时间,但选择的参考图像是有雾图像而导致恢复图像总是存在一定程度的雾。为改善暗通道先验算法的不足,本文提出一种基于暗通道先验的补偿快速去雾算法。
2.1 大气散射模型
在计算机视觉和图形中,单色大气散射模型[8-9]被广泛应用于雾霾条件下图像降质过程,其数学表达式为:
其中,χ是图像的空间坐标;I是观测到的有雾图像;J是场景的辐射强度值,即真实的无雾图像;t是透射率,描述的是光线发生散射后能够剩余光能量的能力;A是大气光强度;J(χ)t(χ)是场景的直接衰减项;A(1-t(χ))是环境光项。
2.2 暗通道先验去雾
通过观察清晰图像发现:在绝大多数非天空的局部区域里的一些像素总是有至少一个通道值很低,即暗通道,表达式为:
其中,c是彩色图像 RGB空间的3个颜色通道;Ω(χ)是一个以χ为中心的窗口。除了天空等明亮区域外,无雾图像的暗通道Jdark的值都很低,并且趋于0。 即:
假设大气光强 A是已知的,用 A来标准化式(1),两边取最小值运算,得到:
假设局部区域内的透射率是恒定的,对式(4)取局部区域最小,透射率不变,定义此时透射率为t~(χ)。则式(4)变换为:
根据式(3)可知,无雾图像的暗通道值趋于0,则式(6)中趋于0,只剩余分子项,透射率表达式为:
式(7)求得的透射率只是一个粗估计,用求解稀疏矩阵的方式来细化透射率,但由于其算法的复杂性而不能很好地用于实践当中,又提出利用引导滤波[7]来代替软抠图,大大减少了运算时间,但引导图是有雾图像会使得无雾图像总是存在雾感,如图1所示。
图1 引导滤波算法
根据式(1)当透射率趋近于0时,会使得式(1)中J(χ)t(χ)趋近于0,所以,设定透射率的一个下限值t0,根据式(1)得到复原图像表达式:
3.1 透射率估计
文献[4]利用式(7)估算透射率,直接参与恢复无雾图像的模型计算,会出现严重的光晕现象,如图2所示。
图2 直接去雾
根据式(7),有雾图像暗通道表达式:
从式(9)可知,取暗通道图就是在有雾图像的最小值图像(如图2(a))中取窗口内最小值,假设
图3是窗口,若 w5是图像边缘像素点,w3是被雾污染的像素点,当边缘两边的像素值差别很大时,取窗口最小值操作,会使w3的暗通道值减小,透射率会变大,一般在有雾像素点 I(χ)和大气光 A的值差别不大,根据式(8),当透射率较大时,会使像素点J(χ)的值较大,造成去雾不彻底或光晕现象,如图2(c)所示。
图3 像素分布
文献[10]提出用中值滤波来代替窗口最小值操作,即:
透射率是关于景深和大气散射系数的函数,其表达式为:
其中,β是大气散射系数,在可见光范围内是均匀的;d是景深,即获取图像设备与场景的距离,影响透射率的主要因素是景深。根据式(12)可知,当景深越大时,透射率越小,反之,透射率越大。一般来说,在近景的时由于景深较小,透射率较大,远景的雾区景深较大,透射率较小。
中值滤波算法选取局部区域中值的优点是可以提高局部区域内暗通道值,根据式(11),减小了局部透射率值,根据式(8)可知,可以降低雾区的像素值,提高去雾能力,光晕现象明显减弱,木门处和墙面处去雾很明显;缺点是由于选取中值造成边缘的扩大,而产生边缘模糊现象,当边缘像素 w5值很小时,中值滤波算法估计的暗通道值过大,会造成该区域恢复值估计过小,造成无雾图像出现文献[11]所提出的黑斑效应,墙面的纹理不够清晰,在树叶部分出现了黑斑效应。
本文保留中值滤波的去雾能力较强的优点,利用引导滤波平滑且保持边缘的特性克服其黑斑效应和边缘不清晰的缺点。
对暗通道图做如下调整,其表达式为:
相应的透射率为:
其中,取中值滤波窗口尺寸要小于取局部最小值的窗口尺寸,即 Ω1<Ω2。提高局部区域内暗通道值,并且在假设较大局部区域内透射率相等的条件下,利用引导滤波算法[7]的暗通道理论来估计透射率。式(13)的本质是在引导滤波算法估计的暗通道图的基础上在局部区域内加上一个系数ζ,即对暗通道进行补偿,其表达式为:
分别对根据式(9)、式(10)和式(13)求得暗通道图进行比较,如图4所示,对应图4局部放大暗通道图,如图5所示。
图4 暗通道图
图5 对应图4的局部放大暗通道图
通过观察图5的局部放大图,可以看出,利用中值滤波补偿后得到的暗通道图对值较小区域影响较小,与引导滤波算法相比,在边缘附近适当的提高了暗通道值,并且在非边缘部分区域较为平滑,但并没有如中值滤波算法的暗通道图那样过于平滑和过低的估计值较小的区域。
相应的透射率表达式为:
引导滤波[7]具有平滑且保持边缘的优点。假设滤波器输入图像为P,输出图像为q,在窗口wk中有如下线性关系,其表达式为:
其中,qi是滤波器局部输出;Ii是滤波器的引导图
像;(ak,bk)是窗口 wk中一系列线性系数。引导滤波通过代价函数最小使得输入图像 P和输出图像q差值最小,代价函数表达式为:
其中,ε是防止a过大的调整系数,利用线性回归的方法求得(ak,bk):
其中,μk和 δk是 I在窗口 wk的均值和标准差;w是窗口wk内像素个数;Pk′是输入图像P在窗口wk中的均值。不同窗口在涉及像素i时导致式(16)的结果不同,所以,可以平均以 i中心的 qi可能取值,其表达式为:
其中,a″i和b″i是以i中心的窗口内的平均系数。
但传统的引导滤波算法是原有雾图像的3个通道作为引导图,当平均3个通道的滤波结果时,会使得雾区的透射率较大,根据式(8)可知,恢复出的雾区的值会较大,造成去雾能力减弱,且由于选取的是3个通道使得该算法的时间复杂度较高。本文利用引导滤波的平滑且保持边缘的特性细化补偿后的暗通道图Idark′,选取的引导图是有雾图像的最小值图像,即将式(20)中的I替换为其滤波表达式为:
最小值图像含有雾图像的细节信息,既减小了选取有雾图像引导所带来的复杂度,同时降低了因选取中值滤波造成的估计过大的暗通道,消除了黑斑效应。如图6(a)为利用中值滤波补偿后的暗通道,可以看出细节边缘非常不明显,且部分叶子的暗通道值较大,如图6(a)方框内,经过引导滤波后的图6(b),可以看出,边缘较为明显,且降低了过大的暗通道值,如图6(b)方框内,消除了黑斑效应,且去雾效果明显,如图6(c)所示。
图6 本文算法使用效果示意图
本文算法跟中值滤波算法[10]、引导滤波算法去雾效果对比,如图 7所示,相应的局部放大对比如图8所示。
图7 去雾效果对比
图8 局部效果对比
3.2 大气光强度估计
文献[7]认为暗通道图可以近似估计雾的浓度,选取0.1%的暗通道亮度最大值,这些像素点为雾很浓的点,选取在相对像素点上有雾图像值最大的点作为大气光的估计值,但是该方法在暗通道图求取过程中若窗口选取的不合适,会导致无法腐蚀掉白色物体,依然会造成选取的大气光强是白色物体上的像素点。本文算法提高了大多数局部区域内的暗通道值,相应地可以选取较为大的大气光值进行去雾处理,本文选取补偿后的暗通道的最大值来估计大气光强度,即:
3.3 本文算法流程
估计出透射率t和大气光强度A后,根据式(8)恢复无雾图像,则本文算法流程如图9所示。
图9 本文算法流程
本文实验平台是在系统处理器为Intel(R)Core(TM)2 Duo CPU T6400@2.00 GHz的PC机上利用Matlab7.4.0进行仿真。有雾图像是选自文献[4]中所使用的实验图像和一些去雾领域中的经典测试图像。 对中值滤波算法[10]、快速去雾算法[3]、引导滤波算法[7]与本文算法的多幅实验图像进行去雾效果比较。将实验图像全部归一化到[0,1]范围内,参数选择如下:本文算法中值滤波窗口尺寸Ω1= 3,最小值滤波窗口尺寸 Ω2=7,根据文献[4]的参数选择,选取透射率下限值 t0=0.1,引导滤波参数:滤波半径是选取最小值滤波窗口的8倍,则r= 56,根据文献[5]的参数选择,选取调整系数ε= 0.01。
4.1 主观评价
通过图 10~图 12比较各算法的去雾效果。图10(a)草垛图大小为353×288像素;图11(a)树林图大小为426×320像素;图12(a)故宫图大小为449×630像素。可以看出,中值滤波算法去雾图像较为暗沉,并且在小区域内去雾不彻底,如图11(b),树枝之间存在明显的雾气,Tarel算法去雾图像颜色恢复较好,但仍然存在去雾不彻底的现象,如图11(c)的树枝之间,如图12(c)的石廊上,引导滤波算法利用引导滤波细化透射率去雾算法去雾效果较好,但在细节上去雾能力较弱,如图10(d)、图11(d)、图12(d)的方框内。本文算法去雾图像具有更好的清晰度和色彩恢复度,去雾效果更明显,如图10(e)、图11(e)、图12(e)的方框内。
图10 草垛图去雾效果对比
图11 树林图去雾效果对比
图12 故宫图去雾效果对比
4.2 客观评价
在图像去雾领域中,使用最为广泛的去雾客观评价标准是可见边梯度法[12],利用新增可见边集合数(e)和规范的平均梯度(r—)来表征去雾效果,e和 r—的值越大表明去雾效果越好,其表达式分别为:
其中,n0是有雾图像的可见边数目;nr是去雾图像新增加的可见边数目;ri是 Pi处去雾图像梯度与有雾图像梯度的比值;i是去雾图像可见边集合区域。
表1为各种去雾算法结果图像的可见边集合数(e)和规范的平均梯度(r—)以及所需运行时间对比,可以看出,本文算法在可见边集合数和平均梯度上都要大于其他3种算法,并且在运算时间上与中值滤波算法接近,但去雾效果要好于中值滤波算法,本文算法在保证图像清晰效果的同时大大降低了运算时间。
表1 去雾结果对比
本文结合暗通道先验和中值滤波算法的优点,提出一种暗通道补偿快速去雾算法。该算法通过中值滤波补偿暗通道图,提高局部区域内暗通道值,利用最小值图像导向细化暗通道图,并取补偿后的暗通道的最大值估计大气光强度,获得的去雾图像改善了传统暗通道先验算法去雾能力较弱的细节区域。实验结果证明了该算法的有效性。
但本文算法对存在大面积明亮区域有雾图像如白色物体、天空等处理效果不太理想,下一步工作是深入探究透射率估计模型,使算法能够在处理存在明亮区域的退化图像时也能得到较为清晰的去雾结果。
[1] Tan R T.Visibility in Bad Weather from a Single Image[C]//Proceedings of IEEE Conference on Computer Vision and Pattern Recognition.Washington D.C.,USA:IEEE Press,2008:1-8.
[2] Fattal R.Single Image Dehazing[J].ACM Transactions on Graphics,2008,27(3):1-9.
[3] Tarel JP.Fast Visibility Restoration from a Single Color or Gray Level Image[C]//Proceedings of the 12th IEEE International Conference on Computer Vision. Washington D.C.,USA:IEEE Press,2009:2201-2208.
[4] He Kaiming,Sun Jian,Tang Xiao.Single Image Haze Removal Using Dark Channel Prior[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2011,33(12):2341-2353.
[5] 禹 晶,李大鹏,廖庆敏.基于物理模型的快速单幅图像去雾方法[J].自动化学报,2011,37(2):143-149.
[6] 陈 龙,郭宝龙.基于联合双边滤波的单幅图像去雾算法[J].北京邮电大学学报,2012,35(4):19-23.
[7] He Kaiming,Sun Jian,Tang Xiaoou.Guided Image Filtering[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2013,35(6):1397-1409.
[8] Narasimhan S G.Vision and the Atmos-phere[J].International Journal of Computer Vision,2002,48(3):233-254.
[9] Narasimhan S G.Chromatic Framework for Vision in Bad Weather[C]//Proceedings of IEEE Conference on Computer Vision and Pattern Recognition.Washington D.C.,USA:IEEE Press,2000:598-605.
[10] Gibson K B.An Investigation of Dehazing Effects on Image and Video Coding[J].IEEE Transactions on Image Processing,2012,21(2):662-673.
[11] 张小刚,唐美玲,陈 华,等.一种结合双区域滤波和图像融合的单幅图像去雾算法[J].自动化学报,2014,40(8):1733-1739.
[12] Hautiere N.Blind Contrast Enhancement Assessment by Gradient Ratioing at Visible Edges[J].Image Analysis &Stereology Journal,2008,27(2):87-95.
编辑 刘 冰
Compensative Quick Defogging Algorithm Based on Dark Channel Prior
YANG Yan,BAI Haiping
(School of Electronic&Information Engineering,Lanzhou Jiaotong University,Lanzhou 730070,China)
Aiming at the problem of weak ability and slow processing speed in dehazing program based on dark channel prior algorithm,this paper proposes a fast defogging algorithm of compensation for dark channel image.It combines median filtering algorithm to compensate the area dark channel image with weak defogging ability.The global minimum image is regarded as guided image and the dark channel image is filtered utilizing the guided filter characteristics of edgepreserving smoothing,which can remove the phenomenon of blackspot and cut down the algorithm complexity.Clear images can be restored based on the atmosphere scattering model after regarding the maximum of new dark channel image as evaluating the atmosphere light intensity simply.Experimental results show that compared with the median filtering algorithm,fast defogging algorithm,etc,the obtained defogging images of this algorithm have better sharpness and color degrees.The computational speed is greatly improved.
dark channel;compensation algorithm;defogging algorithm;guided filtering;atmosphere scattering model
杨 燕,白海平.基于暗通道先验的补偿快速去雾算法[J].计算机工程,2015,41(10):210-215,220.
英文引用格式:Yang Yan,Bai Haiping.Compensative Quick Defogging Algorithm Based on Dark Channel Prior[J]. Computer Engineering,2015,41(10):210-215,220.
1000-3428(2015)10-0210-06
A
TP391
国家自然科学基金资助项目(61561030);甘肃省科技厅自然科学基金资助项目(1310RJZA050);甘肃省财政厅基本科研业务费基金资助项目(214138)。
杨 燕(1972-),女,副教授、博士,主研方向:数字图像处理,语音信号处理;白海平,硕士研究生。
2014-10-28
2014-12-29E-m ail:yangyantd@mail.lzjtu.cn