张道华
(毫州师范高等专科学校电子与信息工程系,安徽 亳州236800)
雾霾条件下单幅图像去雾算法研究与实现
张道华
(毫州师范高等专科学校电子与信息工程系,安徽 亳州236800)
摘要:雾霾条件下获得的图像信息模糊,给实际运用带来了严重不便.图像去雾算法有非常重要的意义.把暗通道优先单幅图像去雾算法为作为探讨雾天图像清晰化的算法研究重点,简述了直方图均衡化去雾算法和多尺度Retinex去雾算法,将3者进行了效果与效率上的性能分析.利用MATLAB集成这3种雾天图像清晰化算法实现了简单的去雾系统.
关键词:雾天图像增强;数字图像处理;暗通道优先
随着数字图像处理技术迅速发展,在道路实时监控、遥感、卫星成像等研究领域越来越受到人们的关注.雾霾天气里,由于空气中悬浮物的存在,大大降低了能见度,图像对比度降低,给户外图像采集带来了严重不便,严重影响了交通系统和户外视觉系统的正常工作.图像去雾就成为实用且急待解决的研究课题.
1.1直方图均衡化的原理
图像的像素灰度分布特征能用灰度直方图描述,直接调整灰度直方图,可以增大图像数据信息量,改善画面的表现效果.如果某个灰度值的像素个数在图像中占得比例较大,那么这个灰度值对画面的影响就较大,反之,若某个灰度值的像素个数在图像中占的足够较小,那么改变这个像素的灰度值对图像的影响是可忽略不计的.
直方图均衡化的基本原理就是,把图像中像素的灰度值按像素个数多少分为两种处理方法,展宽像素个数多的灰度值,归并像素个数少的灰度值[1].通过这两步,达到增强图像,使图像清晰的目的.
1.2直方图均衡化的优点和缺点
直方图均衡化由于其算法简单,所以计算量较小,通过此方法可以使局部的对比度得到增强,却毫不妨碍整体的对比度,直方图均衡化最大的优点在于它的操作是可逆的,只要有了均衡化函数,原始的直方图就能得到恢复.
直方图均衡化仅能对近处的景物进行增强,对于远处的场景增强效果并不明显[2].除此以外,此方法还有两个弊端:部分细节消失;图像处理后对比度增强的不自然的,色彩发生了偏移,画面整体呈红色.直方图均衡化的处理结果见图1.
图1 原图与直方图均衡化处理后效果对比
2.1 Retinex理论简介
Retinex是由视网膜的英文单词Retina和大脑皮层的英文单词Cortex组合而成的.根据人眼成像的逆过程,Edwin Land建立了基于Retinex理论的图像增强模型,很大程度上解决了图像增强传统方法存在的缺陷,为图像增强思路增添了全新的视野.在Retinex理论中[3],图像I(x,y)的组成有两部分,其一是物体的光亮亮度,也就是图像的低频部分,其二是物体的反射亮度,也就是图像的高频部分,通常称之为被亮度图像和反射图像.分别用R(x,y)和L(x,y)来表示.其中,L(x,y)表示入射光,R(x,y)表示物体的反射性质.一旦给定图像,如果从中可以分离出亮度图像和反射图像,就能借助于改变亮度图像与反射图像的之间的比例,来达到图像增强的目标.成像过程可以用下式表示:
S(x,y)=R(x,y)·L(x,y).
在这个式子中,L(x,y)表示入射光,图像中像素能达到的范围由它决定,R(x,y)表示物体的反射性质,由它反映一幅图像的内在性质.也就是抛开了入射光的性质来获得物体的本来面貌,这个本来面貌就是我们所要得到的增强图像.
在Retinex理论中,从原图像达到图像增强目标的关键因素是,如何将亮度图像计算出来,然而在数学上亮度图像的计算是一个奇异问题,亮度图像只能估算.由于存在不同的估算方法,因此多种基于Retinex理论的图像增强算法应运而生,此处不再赘述.本文探讨的是其中的多尺度的Retinex算法.
2.2多尺度Retinex(MSR)算法简介
通过单尺度Retinex的优化和延伸,提出了多尺度Retinex.它们的本质都是必须先,接着再提取亮度图像,获取平滑图像的关键是借助高斯卷积函数.多尺度Retinex是把多个单尺度Retinex的结果进行加权求和.
其中RMi是多尺度Retinex在第i个颜色空间的输出,N是相应尺度的数量,ω是对应尺度的权值[3],Si为对应第1个色彩空间的图像分布,Gn为对应权值的高斯卷积函数.这里,
其中,Gn为第n个尺度参数,λn为归一化因子,同样满足万∫∫Gn(x,y)dxdy=1.多尺度Retinex比单尺度Retinex平衡动态范围压缩和色调再现的能力好.
在实际使用中,选取卷积函数的尺度参数最好能包括各种范围的尺度,比如选取较小、适度或较大尺度.至于具体如何选择尺度,这要依赖于图像本身的特点和预期处理效果.小尺度有较好的动态范围压缩和清晰度增强,大尺度有较好的色彩保真能力.具体处理结果见图2.
图2 原图与Retinex处理后效果对比
在计算机视觉和图形学中,雾化图像[4]通常被描述为下式:
在(1)中,J(x)t(x)被称为场景直接衰减值,描述描述场景颜色值,以及它在介质中的衰减程度;A(1-t(x))A (1-t(x))被称为空气光,描述由于光线散射导致场景颜色值偏移的大气光.在大气光均匀的条件下,t可以描述为:
其中,β是大气散射系数,d是场景深度.场景的衰减程度与场景深度呈指数关系.若能够恢复t,则也能够将场景深度d按照一定比例进行恢复.
3.1暗通道优先处理
在多数不包含天空的部分区域中起码有一个颜色通道中存在亮度极小乃至临界于零的像素.也就是说,在这样的一个区域中的最小亮度接近零.为了更好地描述这个概念,下面定义暗通道的数学表达.对于任意图像J,其暗通道Jdark由下式给出[5]:
3.2估算t
假设大气光A是已知的.首先,对式子(1)除以A进行规范化处理(每个颜色通道是独立的)再假设每个小块Ω(x)中的t都是一个常数,并将其表示为˜t(x).对A规范化处理后的等式两边求暗通道[6]:
其中,由于˜t(x)在相同小块中是常数,可放在最小值操作的外面.由于场景色彩J是无雾图像,J的根据暗通道优先理论,其暗通道接近零:
由于Ac恒为正,因此:
将(3)带(2)去倍增项,并将估算的式子简化为
t(x)→0,由于天空是无限远的,天空部分的t确实接近零.式(4)对天空部分和非天空部分都能很好适用.
在实际运用中,即使是在晴朗的天气,大气中也并非没有任何颗粒,因此,当我们观察远处的场景时仍然会有雾存在.若将雾彻底除去,那么图像将看上去非常不自然.因此,我们选择性地为远处的场景保留少量的雾.为式(4)引入一个常量参ω(0<ω≤1)
这个修正使得式子为远处的物体保留了雾.在本文中将ω的值定为0.95.
暗通道优先理论对消除雾天图像模型中的倍增项(即场景直接衰减值)至关重要.通过这种方式,仅保留了一次项.这种策略与以往的主要依赖倍增项的单幅去雾算法有很大不同.
尽管暗通道优先算法在处理彩色图像以及未遮盖的低对比度物体时非常有效,但是仍然会产生光晕.这是因为实际上在同一个小块中,t并不一定相同.因此需要用到一种软抠图方法来对透射图进行修正.
3.3软抠图
图像抠图等式:
其中F是前景色彩,B是背景色彩,α是前景的透明度.雾天图像的透射图是严格的α-图,因此,可以使用封闭框架抠图来修正透射图.将修正后的透射图表示为t(x),将t(x)和t˜(x)写成向量表示为t和t˜,并将下面的代价函数最小化:
这里,第一项是平滑项,第二项是带权值λ的数据项,矩阵L被称为抠图拉普拉斯矩阵[7].
3.4估算大气光A
在以往的算法中,透明度最低的区域被当作A或者A的初始猜测值.在Tan的研究中,雾天图像中亮度最高的像素被当作透明度最低的像素.然而,这一结论仅当太阳光可以被忽略的多云天气时才成立.在这种情况下,大气光是场景的唯一光源.此时,每个颜色通道的场景色彩可以由下式给出:
其中R≤1,是场景中各点的反射比.带入式(1),得
当图像中存在无限远出的像素(t≈0),I中最亮的像素即透明度最低的点,这些点近似等于A.然而在实际应用中,阳光是不可以忽略的,考虑阳光S,将式(6)修改为
并将式(7)修改为
这样,整个图像中的最亮的像素可以比大气光更亮.这些像素可以是图像中白色的物体或建筑.
由于有雾图像的暗通道近似于雾的浓度,使用暗通道来探测图像中透明度最低的区域,并改善大气光的估计.首先选取暗通道图中亮度最高的10%的像素,这些像素通常是图像中透明度最低的点.在这些像素中,选取输入图像I中亮度最高的像素作为大气光.这些像素可能不是输入图像中最亮的.这个方法即使在无限远的点不在图像中的时候也能有很好效果.
3.5恢复场景色彩
计算出大气光和透射图后,即可根据(1)恢复场景色彩.然而(1)的第一项J(x)t(x)当t(x)接近零时也会非常接近零,此时,直接恢复的原场景色彩J就会有噪声,因此,这里使用一个下限t0来限定t的值.这样,在雾浓的地方就保留了适当的雾.最终的场景恢复式[8]为:
t0的值可以设为0.1.
3.6 Ω(x)尺寸的选择
在本算法中一个至关重要的参数是式(5)中Ω(x)尺寸的大小.一方面,Ω(x)中包含暗色像素的可能性是随着其尺寸的增大而增加的,尺寸越大对暗通道优先更有利.Ω(x)越大时,暗通道越暗.Ω(x)越小式(4)就越不精确,从而导致最终恢复的场景色彩过饱和.另一方面,同一个Ω(x)中的t(x)是常数的假设并不准确,若Ω(x)过大,则深度边缘的光晕就会变深.然而软抠图技术使得这一缺陷得到弥补,即便Ω(x)选得较大,对处理结果也没有太大影响.本文中Ω(x)选用15×15,处理效果见图3.
图3 原图与暗通道优先处理后效果对比
4.1系统结构设计
本文研究的基于暗通道优先雾天图像清晰化算法的实现是在Matlab实验平台上进行的.去雾系统能够分别实现暗通道优先单幅去雾算法、直方图均衡化去雾算法以及多尺度Retinex去雾算法3种算法,并产生每种算法的中间结果,选择带雾图片,系统能够产生3种算法处理的效果图,另外系统还对每种算法的运行速度及效果如峰值信噪比、亮度和对比度进行对比.
图4 去雾系统的结构
4.2 3种算法的比较分析
通过带雾图像在去雾系统上的测试,随机选取带雾图像,对上述3种算法在运行时间、亮度、对比度和峰值信噪比4个方面进行比较,见表1.
表1 3种算法的系数比较
从运算速度的角度看,直方图均衡化由于算法简单,因此运行速度是3种方法中最快的,Retinex方法次之,暗通道优先处理由于需要对景深边缘进行软抠图修正透射图,因此运行所需要的时间最长.
从3种算法所产生的处理效果图可以看出,暗通道优先的去雾效果最好,可以成功处理大多数雾天图像,对图中场景的大部分信息甚至是细节部分进行还原;直方图均衡化算法虽然也能对大部分雾天图像信息进行还原,但仅能对近处的景物进行增强,对于远处的场景增强效果并不明显,并且图像中色彩发生了偏移,画面整体呈红色(见图1);Retinex算法虽然能够将景物较清晰地还原,对部分景物进行了增强,但是在近处某些部分发生了过饱和,如图2.由于Retinex在计算增强模型时,使图像在对比度较高的边界和平滑区域过分增强,所以导致在处理结果上往往会出现噪声,影响最终的视觉效果.
基于暗通道优先处理的单幅去雾算法虽然在处理结果上有着非同寻常的效果,但是在处理过程中耗费的时间代价也是非常巨大的.这主要是因为软抠图所进行的矩阵运算所需要的时间开销.然而若没有软抠图技术这一步,则会使景物在右深度差的边缘产生光晕,严重影响图像的视觉效果.若要在时间上减少开销,则需要在边缘锐化的算法上进一步进行改进.
参考文献:
[1]王蓉,孙玉秋.基于直方图处理的局部图像增强算法研究[J].长江大学学报:自然科学版,2013,10(1):25-26.
[2]郭璠,蔡自兴.图像去雾算法清晰化效果客观评价方法[J].自动化学报,2012,38(9):1410-1412.
[3]孙洪伟,朱志超.一种提高雾天图像清晰度的方法[J].合肥工业大学学报:自然科学版,2011,34(1):84-86.
[4]石文轩,詹诗萦,李婕.一种边缘优化的暗通道去雾算法[J].计算机应用研究,2010,30(12):3855-3856.
[5]肖忠捷,余文森,程仁贵,等.基于暗通道先验的快速图像去雾算法研究[J].吉林师范大学学报:自然科学版,2014(3):106-108.
[6]DING M,TONG R F.Efficient dark channel based image dehazing using quadtrees[J].Science China(Information Sciences),2014(3):232-238.
[7]胡伟,袁国栋,董朝等.基于暗通道优先的单幅图像去雾新方法[J].计算机研究与发展,2010(12):2133-2134.
[8]李权合,毕笃彦,许悦雷,等.雾霾天气下可见光图像场景再现[J].自动化学报,2014,40(4):745-748.
(责任编辑:欧恺)
中图分类号:TP391.41
文献标识码:A
文章编号:1007-5348(2015)06-0008-06
[收稿日期]2015-04-07
[基金项目]安徽省质量工程项目(2014msgzs170).
[作者简介]张道华(1984-),女,安徽六安人、毫州师范高等专科学校电子与信息工程系讲师,硕士;研究方向:图形图像处理及模式识别.
Research and Implementation on the Single Image Haze Removal Algorithm
ZHANG Dao-hua
(Department of Electronic and Information Engineering,Bozhou Teachers College, Bozhou 236800,Anhui,China)
Abstract:The haze-image experiences degradation or fuzzy information,and in this way digital image processing technology will be caused great inconvenience.Therefore,the de-haze technology is very significant. This essay discusses a single image haze removal algorithm using Dark Channel Prior.This essay also briefly describes the histogram equalization algorithm to fog and multi-scale Retinex to fog algorithms,performance analysis on the effectiveness and efficiency to facilitate the dark channel priority algorithm with these two algorithms.In the last part of this essay,it implements defogging system integrating these three clear of the fog image processing algorithms by using the matlab software.
Key words:image De-haze;digital image processing;dark channel prior