APP下载

基于暗原色的图像去雾改进算法研究

2016-04-08马春波徐浪平

计算机与数字工程 2016年1期
关键词:图像处理

马春波 徐浪平 敖 珺

(桂林电子科技大学信息与通信学院 桂林 541004)



基于暗原色的图像去雾改进算法研究

马春波徐浪平敖珺

(桂林电子科技大学信息与通信学院桂林541004)

摘要何恺明提出的暗原色先验是一种简单有效的单幅图像去雾算法,很好地解决了雾天场景透射率的估算问题,图像复原效果清晰自然。但是原算法中的软抠图算法复杂度高、耗时长,对全天空区域和明亮区域处理效果不理想,恢复图像黯淡。针对这些问题,文章引入了引导图像滤波和自适应的容差机制,改进了原始算法。实验证明改进后的算法不仅大大降低了计算复杂度,同时也很好地保证了图像的去雾效果。

关键词图像处理; 图像去雾; 暗原色; 引导图像滤波; 容差机制

Improved Image Dehazing Based on Dark Channel Prior

MA ChunboXU LangpingAO Jun

(School of Information and Communication Engineering, Guilin University of Electronic Technology, Guilin541004)

AbstractHe Kaiming proposes a very simple but powerful prior, called the dark channel prior, for single image haze for single image haze removal. The problem of estimation of transmission is solved well and the restored image is clear and natural. But the computational complexity of the soft matting is high and it is not well done to the sky region, the images after haze removal looks dim. To solve these problems, the guided image filtering, adaptive tolerance mechanism are introduced and the exposure is increased to improve the original algorithm. Experiments prove that the improved algorithm not only greatly reduces the computational complexity, but also ensure the effect of image haze removal.

Key Wordsimage processing, image dehazing, dark channel prior, guided image filtering, tolerance mechanism

Class NumberTP391.41

1引言

户外场景的图像通常会由于大气中混浊的媒介(比如雾霭)而降质,降质的图像对比度和色彩的保真度下降。因此,一种简单有效的去雾算法对提高交通安全等方面有重大的现实意义。

目前图像去雾算法主要分为两类。一类是基于图像处理的增强方法,提高图像的对比度,增强局部细节信息,如文献[1~3]中直方图均衡化的方法,文献[4]中的Retinex图像增强算法。另一类是基于大气散射模型的方法,通过建立雾天退化模型,恢复出原始图像。如文献[5]中基于曲波域增强方法,文献[6~8]中利用偏振光恢复场景深度信息来实现雾天图像复原;Tan[9]最先开始的基于先验信息的图像去雾研究;Fattal等人[10]通过估计场景的辐照度,推导出传播图像,恢复场景光。何恺明等人[11]提出的基于暗原色的单一图像去雾算法。

本文针对何恺明算法中存在透射率估算复杂度高的问题,引入引导图像滤波的方法,大大提高了算法效率;改进了容差机制算法,矫正了明亮区域颜色失真。仿真结果证明改进后的算法在执行效率和去雾性能方面有很大的提升。

2暗原色先验去雾算法简介

2.1大气散射模型

根据大气散射模型可以建立雾天图像退化的物理模型,如下:

I(x)=J(x)t(x)+A(1-t(x))

(1)

式(1)中x表示像素点坐标,I(x)是含雾图像,J(x)是无雾场景光强,A是大气光,t(x)为场景光透射率分布。去雾的目标是从I中复原J、A、t。

2.2暗原色先验(dark channel Prior)

暗原色先验是通过对大量户外无雾图像的统计得出的:在绝大多数非天空的局部区域里,某一些像素总会有至少一个颜色通道具有很低的值。用公式描述,对于一幅图像J,定义:

(2)

Jc表示图像J的某一个颜色通道,Ω(x)表示以x为中心的矩形区域。观察得出,除了天空区域,Jdark的强度总是很低并且趋近于0。如果J是户外的无雾图像,就把Jdark称为J的暗原色,并且把以上统计得出的经验性规律称为暗原色先验。

2.3暗原色去雾算法流程

利用暗原色先验实现图像去雾的流程图如图1所示。

图1 暗原色去雾流程图

(3)

又因局部暗原色Jdark的值是趋近于0的。因此有:

(4)

将式(4)代入式(3)可得:

(5)

3本文算法的改进

本文第二节介绍的算法中使用了软抠图的方法来估算透射率t(x)。软抠图算法中使用了抠图拉普拉斯矩阵[12],性能很好,但是计算复杂度很高,导致执行效率很低。此外,原算法在不符合暗原色先验的明亮区会出现色彩失真,恢复出来的图像相对比较暗淡。针对上面出现的问题,在3.1节中,引入引导图像滤波估算透射率,提高算法效率,3.2节中引入自适应的容差机制,矫正了色彩失真问题。

3.1引导图像滤波

3.1.1引导滤波模型

图像引导滤波器[13]是一种局部线性图像滤波器,其优点是在实现平滑滤波的同时还具有良好的边缘保持性能,在图像处理领域有着广泛的应用前景。引导图像滤波的关键假设是:输出q是引导图像I以像素k为中心的窗口ωk的线性变换:

qi=akIi+bk,∀i∈ωk

(6)

3.1.2参数分析

上面定义了引导滤波器,现在讨论其在图像边缘处理方面的性能。由文献[13]可知,假设引导图像I和滤波器输入图像p是相等的,即I≡p。则ak、bk的解为

(7)

如图2所示,在不同的窗口半径r和ε的输出图像。

表1是输出图像的峰值信噪比(PSNR)。

表1 输出图像的峰值信噪比

从图2和表1中可以看出在相同的窗口半径下,ε的取值对图像的质量影响不是很大。反之,当ε相同时,窗口半径越小,图像的PSNR值越大,图像的质量越高。粗略计算了,原始输入图像在不同半径r下的方差:varr=2=0.0126,varr=8=0.0058均方差越大,qi=akIi+bk中ak值越大,bk值越小,因此输出的像素值中I的成分增大,均值的成分减少,所以图像的细节表现的越明显。

图2 用引导滤波进行边缘检测

图3是使用引导图像滤波的暗原色去雾效果。可以看出使用引导图像滤波的方法同样有很好的去雾效果。

图3 同参数下的引导图像滤波去雾效果

在图3中,窗口半径r较小时,图像在平滑区有比较理想的去雾效果。从b、c红色方框区域可以清楚地看出r=20比r=80时的去雾效果好。但是在窗口半径r=20时,复原图像的边缘会出现图c中黄色方框中的Halo效应。从上节的分析可知,窗口半径较小时,能够很好地保持图像的细节信息,因此r=20比r=80时的去雾效果好。由于在图像边缘区域,计算得到的暗通道的值相差比较大,在计算透射率时,图像边缘一侧的均值μk会大于原像素点的值,因此bk会增大,最后输出的透射率的值会偏大。由式(5)可知,透射率增大,图像保留的雾气成分越多,因此会出现图4红色方框中的Halo效应。

3.1.3性能分析

图4是使用引导图像滤波器替换软抠图算法后的去雾效果:

图4 去雾效果图

algorithmsResult[11]OuralgorithmPic.114.768s3.515sPic.212.346s2.950sPic.315.267s3.618sPic.417.764s4.228s

表2中对比了上图中四幅图像分别用文献[11]中的软抠图法和本文的引导图像滤波算法进行去雾处理的耗时长短,从表中可以看出本文的算法明显要比文献[11]处理速度快,说明引导图像滤波算法能够大大减小计算的复杂度。

3.2明亮区色彩矫正

针对原算法中出现的明亮区域色彩失真的问题,在文献[14]的基础上改进了对明亮区的透射率的修正算法。该算法是根据图像中高亮像素比例的统计,来定义一个自适应的容差K,来适应不同图片的透射率估算。

上面介绍的暗通道去雾算法,在处理自然的有雾场景具有很好的效果,但是通过大量的实验会发现,在处理含天空、偏白色物体、水面等大面积“明亮区”的图像时会出现色彩失真的现象。由文献[14]中的分析可知,这些“明亮区”即使在无雾的条件下,它们的像素值也很大,区域内找不到像素值接近于0的暗原色点,所以暗原色先验在这些区域是不成立的。因此我们估算出来的透射率是不准确的,实际的透射率要大于暗原色估计的透射率。

为了解决这个问题,文献[14]中引入参数K,定义为容差,对于|I-A|小于K的区域(认为是明亮区),重新计算透射率,对于|I-A|大于K的区域(满足暗原色先验),保持原来的透射率。这种方法很好地解决了“明亮区”色彩失真的问题,但是容差K的取值是根据经验值确定的一个固定的值,不能适用于不同的图片。

在有些场景中,对于“明亮区”的选择并不准确。比如受到点光源、太阳光的反射的影响,某一块“明亮区”中有很小的区域会显得格外亮,并与周围的普通高亮区有很明显的亮度差,称之为“高亮区”。这时候容差如果过小就只能选中“高亮区”,而不能包含所有的“明亮区”。因此本文提出了一种根据图像中高亮像素比例的统计,来定义一个自适应的容差K,获取更准确的明亮区透射率分布。

首先,统计图像中三通道R、G、B的均值大于180的个数,明亮区域的每个通道的值比较平均,因此其均值大于门限值180就认为是“高亮区”。如果“高亮区”不超过整个图像像素的2%,说明存在“高亮区”,因此根据上面的分析,必须要增大容差K的取值,才能包含大部分的“明亮区”。这里我们定义一个容差修正因子φ,定义为:φ=256*(n/N),其中n为“高亮区”像素的个数,N为所有像素的个数。容差K的取值方法为

当(n/N)<2%时,K=45+φ/3

当(n/N)≥2%时,K=45+10*(5-φ)

使用文献[14]中的透射率修正式(12),就能得到修正后的透射率分布:

(8)

图5是改进后的算法和文献[14]中算法结果的对比。

图5 自适应容差处理结果对比

从图5可以看出,文献[14]中的固定容差的算法能够很好的处理“明亮区”的色彩失真问题,但是在红方框内还是会有少部分区域会有色彩失真。在本文引入自适应容差机制算法后,能够很好地改善这种状况,矫正这部分的色彩失真。

4实验结果及总结

本文将暗原色和引导图像滤波的算法结合,优化了透射率的估算,提高了算法的处理效率。在明亮区的透射率估算中引入了自适应容差机制,解决了明亮区域色彩失真的现象,提高了算法的适应性。在引导图像滤波算法中,滤波半径选择不合适容易产生Halo效应。因此提出一种自适应获取滤波半径,进一步优化滤波算法,提升算法的效率与性能,是下一步研究的重点。

由于使用暗原色先验去雾恢复出来的图像整体偏暗,因此本文所有的仿真结果都使用颜色空间转换的方法来增强图像的亮度。

本文最终改进后的算法的去雾实验仿真结果如图6所示。

图6 本文算法去雾效果

[1] 祝培,朱虹,钱学明,等.一种有雾天气图像景物影像的清晰化方法[J].中国图象图形学报:A辑,2004,9(1):124-128.

ZHU Pei, ZHU Hong, QIAN Xueming, et al. A Image Clearness Method for Fog[J]. Journal of Image and Graphics,2004,9(1):124-128.

[2] 翟艺书,柳晓鸣,涂雅瑗,等.一种改进的雾天降质图像的清晰化算法[J].大连海事大学学报:自然科学版,2007,33(3):55-58.

ZHAI Yishu, LIU Xiaoming, TU Yayuan, et al. An improved fog-degraded image clearness algorithm[J]. Journal of Dalian Maritime University: Natural Science Edition,2007,33(3):55-58.

[3] 王萍,张春,罗颖昕.一种雾天图像低对比度增强的快速算法[J].计算机应用,2006,26(1):152-153.

WANG Ping, ZHANG Chun, LUO Yinxin, et al. Fast algorithm to enhance contrast of fog-degraded images[J]. Computer Applications,2006,26(1):152-153.

[4] 乔小燕,姬光荣,陈雾.一种改进的全局Retinex图像增强算法及其仿真研究[J].系统仿真学报,2009(4):1195-1197.

QIAO Xiaoyan, JI Guangrong, CHEN Wu, et al. Improved Retinex Image Enhancement Algorithm and Simulation Study[J]. Journal of System Simulation,2009(4):1195-1197.

[5] 董烈乾,李振春,刘磊,等.基于经验模态分解的曲波阈值去噪方法[J].吉林大学学报:地球科学版,2012,42(3):838-844.

DONG Lieqian, LI Zhenchun, LIU Lei, et al. A Method of Curvelet Threshod Denoising Based on Empirical Mode Decomposition[J]. Journal of Jilin University(Earth Science Edition),2012,42(3):838-844.

[6] Schechner Y Y, Narasimhan S G, Nayar S K. Polarization-based vision through haze[J]. Applied Optics,2003,42(3):511-525.

[7] Shwartz S, Namer E, Schechner Y Y. Blind haze separation[C]//Computer Vision and Pattern Recognition, 2006 IEEE Computer Society Conference on. IEEE,2006,2:1984-1991.

[8] Schechner Y Y, Averbuch Y. Regularized image recovery in scattering media[J]. Pattern Analysis and Machine Intelligence, IEEE Transactions on,2007,29(9):1655-1660.

[9] Tan R T. Visibility in bad weather from a single image[C]//Computer Vision and Pattern Recognition, 2008. CVPR 2008. IEEE Conference on. IEEE,2008:1-8.

[10] Fattal R. Single image dehazing[C]//ACM Transactions on Graphics(TOG). ACM,2008,27(3):72.

[11] He K, Sun J, Tang X. Single image haze removal using dark channel prior[J]. Pattern Analysis and Machine Intelligence, IEEE Transactions on,2011,33(12):2341-2353.

[12] Levin A, Lischinski D, Weiss Y. A closed-form solution to natural image matting[J]. Pattern Analysis and Machine Intelligence, IEEE Transactions on,2008,30(2):228-242.

[13] He K, Sun J, Tang X. Guided image filtering[M]. Computer Vision-ECCV 2010. Springer Berlin Heidelberg,2010:1-14.

[14] 蒋建国,侯天峰,齐美彬.改进的基于暗原色先验的图像去雾算法[J].电路与系统学报,2011,16(2):7-12.

JIANG Jianguo, HOU Tianfeng, QI Meibing. Improved Image Dehazing algorithm Based on Dark Channel Prior[J]. Journal of Circuits and Systems,2011,16(2):7-12.

中图分类号TP391.41

DOI:10.3969/j.issn.1672-9722.2016.01.028

作者简介:马春波,男,博士,教授,硕士生导师,研究方向:密码技术、网络安全技术、信息隐藏。徐浪平,男,硕士研究生,研究方向:激光水下成像。敖珺,女,博士,教授,硕士生导师,研究方向:信号处理。

基金项目:国家自然基金(编号:61167006);广西自然科学然基金(编号:2012GXNSFBA053173)资助。

收稿日期:2015年7月12日,修回日期:2015年8月27日

猜你喜欢

图像处理
海战场侦察图像处理技术图谱及应用展望
人工智能辅助冠状动脉CTA图像处理和诊断的研究进展
基于ARM嵌入式的关于图像处理的交通信号灯识别
基于图像处理的机器人精确抓取的设计与实现
机器学习在图像处理中的应用
计算机图像处理技术应用分析
遥感图像处理软件在文物高光谱数据分析中的应用
图像处理系统运用POCS-Mallat算法的探讨
基于图像处理的定位器坡度计算
基于图像处理的晶圆表面缺陷检测