去雾算法在视频图像处理中的研究与应用
2013-08-13贾敏智
孙 静,贾敏智
(太原理工大学信息工程学院,山西 太原 030024)
责任编辑:任健男
计算机视觉系统大多数应用于户外工作,如城市交通、视频监控、遥感成像等,都要求被提取的图像准确清晰。但是在雾天的天气条件下,由于场景的能见度下降,导致了图像中目标的颜色以及对比度等特征被衰减,系统的正常工作受到影响,因此在视频图像的处理中增加去雾技术显得非常重要[1-3]。
目前,对雾天获得的图像进行清晰化处理的方法基本[4-5]上有两类:基于模型和非模型的算法。其中,基于物理模型的算法是应用逆运算来改善图像的对比度,是了解图像退化的内在原因。然而,非物理模型的算法并不需要知道图像退化原因的信息,用非物理模型的方法处理图像称之为图像增强。用基于物理模型的方法处理图像称之为图像恢复,这类算法更加有效可靠,原因是它们利用了图像退化的物理机理,目的是为了提高退化图像的保真度。
本文基于物理模型提出了一种空气光快速去雾算法。该算法采用最大像素值估计天空亮度,利用高斯低通滤波器分离出背景空气光,从而进行图像亮度恢复以及图像的饱和校正。本文算法比较简单,运算速度快,且适用于彩色图像和灰度图像。
1 大气散射物理模型
在雾、霾天气条件下,大气粒子的散射作用导致成像受到影响。这种影响主要是由两个散射过程造成的:一方面,由于大气粒子的散射,物体表面的反射光随着距离的增大发生衰减,同时与前向散射、光强的衰减一起导致了物体成像的亮度减弱;另一方面,自然光因大气粒子的散射进入成像设备参与了成像,而自然光的强度随着传播距离的增加而逐渐增强。因此,正是大气粒子的前向散射与后向散射的共同作用导致图像模糊、分辨力下降,图像饱和度、对比度降低,色调偏移。这样,不仅影响图像本身的视觉效果,而且还影响对图片的分析性能。大气散射模型示意图如图1所示。
图1 大气散射模型示意图
在有雾的情况下,图像退化的主要原因是大气的散射。大气的散射是一个非常复杂的过程,大气中存在的悬浮颗粒的大小、类型、密度以及光的波长和极化状态都会对它产生一定的影响。McCartney提出了大气散射模型[3],即衰减模型和环境光模型,公式为
式中:I(x)是未去雾的输入图像辐射信息;G(x)t(x)表示衰减模型,A(1-t(x))则表示衰减模型;G(x)为空间坐标x处的场景反照率;d为空间坐标x处的场景深度;β是大气的散射系数;A为天空的亮度,一般假设为全局的常量。
随着场景深度的增加,环境光到达人眼的光线也就增多。这就导致了图像的颜色发生漂移,使得有雾的图像整体看起来不是很清晰,呈现偏灰色。设空气光为V(x),即
则式(1)改为
假设估算出空气光V(x)和天空亮度A,则图像复原后的模型为
2 图像复原方法
2.1 大气光的估计
天空亮度A采用最亮像素值估计时容易受到高亮噪声或者白色物体的干扰。需要进行灰度腐蚀操作的为各颜色分量,然后取颜色分量之间的最小值,进而选取0.1%最亮的像素。估计天空亮度A则用对应原图像中的最大像素值。为了保证天空亮度不受影响,必须滤除图像中白色物体,图像中白色物体的尺寸不能小于结构元素的尺寸。但是,如果结构元素的尺寸大于图像中的天空区域,则会错误地把天空区域滤除。
首先,灰度腐蚀操作的含义为以彩色图像的最小颜色分量为对象,进行最小值滤波,即
式中:c∈{R,G,B}表示颜色通道R,G,B;Ω (x)表示以像素x为中心的邻域,它与图像的宽和高之中的最小值成比例,Ω (x)取0.025。
然后,以彩色图像的灰度分量为对象,采用Canny[1]算子进行边缘检测,分块统计各边缘图像,最后在每个图像块中计算边缘像素数所占的比例,记为Nedge(x)。那么候选天空区域就是必须满足Imin(x)>Tv且Nedge(x)<Tp的像素集合。其中Tv为亮度值,取Tv=95% ×Imin(x);Tp为平坦值,取 Tp=0.001。
2.2 利用高斯低通滤波器分离出大气光
根据频率分布特征,低频部分为雾和背景光,高频部分为景物。利用高斯低通滤波器获取空气光V(x),即
2.3 图像亮度的恢复
将计算出的A与V(x)带入式(5)中,可以推导出复原后的亮度分量GV(x)
雾天图像分布不均匀,需将直方图进行扩展。根据高斯分布“3σ”规则,就正态随机变量而言,其值落在区间[μ-3σ,μ+3σ]内是允许的,取复原后的亮度GV的最小值=μ-3σ;复原后的亮度GV的最大值= μ+3σ。
μ为GV的均值,σ为GV的标准差。最后得到拉伸后图像的每一个谱分量值为
式中:drmax表示输出设备的动态范围;表示输入;表示输出。
2.4 校正图像的饱和度
在有雾的恶劣天气情况下,捕获的图像饱和度之所以降低是因为雾的漂白作用。校正饱和度S,即U(x)=,其中,aI,dI,aG,dG分别表示的是输入与
IIGG输出图像的亮度分量对数的平均值与标准偏差。
3 实验结果比较与分析
对于单幅图片来说,Tarel算法是要估算大气耗散函数,即采用中值滤波的变形形式,但并不是好的边缘保持滤波方法,且在处理白色的区域时效果不是很理想。同时,如果参数选择不恰当的话,很容易引起Halo效应,该算法中存在的参数比较多,调整的时候较复杂。而采用本算法能很好地恢复图像的对比度,图像的色彩也比较自然,图像显得更真实、柔和。实验结果比较如图2所示。
图2 实验结果比较
本方法也适用于动态的场景,为了减少图像中的背景对去雾效果的影响,本文采用区别天空区域的方法,对一段雾天视频图像的场景深度进行估算。采用大气光的估计进行灰度腐蚀操作,把天空亮度估算出来。在处理过程中,保留运动物体的同时,也提高了场景的能见度。可见,利用此算法对动态场景的去雾效果很好。效果图如图3所示。
4 结论
图3 动态场景去雾效果图
不管是对于单幅图像还是对于运动的场景,本文提出的采用高斯低通滤波来分离背景大气光的方法都适用。因此,在处理视频图像中采用此算法的主要优势有:1)此算法简单,处理速度快,且能处理彩色图像;2)处理后的图像色彩自然柔和且图像较清晰;3)应用于动态场景的处理效果较好;4)处理图像中的白色区域较好。
[1]禹晶,李大鹏,廖庆敏.基于物理模型的快速单幅图像去雾方法[J].自动化学报,2011,37(2):143 -149.
[2]禹晶,徐东彬,廖庆敏.图像去雾技术的研究[J].中国图象图形学报,2011,16(9):1561 -1576.
[3]黄黎红.单幅图像的快速去雾算法[J].光电子·激光,2011,22(11):1735-1739.
[4]陈功,王唐,周何琴.基于物理模型的雾天图像复原新方法[J].中国图象图形学报,2008,13(5):888 -893.
[5]王泽兵,杨朝晖.彩色图像分割技术研究[J].电视技术,2005,29(4):20-24.