APP下载

应用于雾天行车视频实时处理的改进去雾算法

2018-05-17张红莉李展鹏何宗伦董明轩

西部论丛 2018年2期

张红莉 李展鹏 何宗伦 董明轩

【摘要】雾、霾天气的情况下,采集图像时会受到大气粒子散射的影响,导致图像细节模糊,色彩失真,可视距离较低。现针对图像视频去雾的算法已被提出,但存在去雾实时性差,天空及大量明亮區域处理效果不理想,复原图像偏暗等问题,为此基于暗原色先验理论提出了一种改进的有效实时视频去雾算法。首先,采用逐像素式滤波估计透射率,消除块效应;其次,采用自适应亮度调整的方法解决图像偏暗的问题;而后,在视频中取出必要的帧数显示处理,考虑对屏幕从上到下五分之三的位置进行去雾处理,余下部分不进行去雾处理(因为一般近处去雾效果不明显,远处明显),提高图像处理速度。本文中的改进去雾算法可以实时地进行视频去雾,并且提高了图像对比度,清晰度,可视距离加长。并可应用在Android平台APP中,在手机移动端实现视频实时去雾。

【关键词】实时视频去雾技术 暗通道先验 逐像素式最小滤波 自适应亮度调整

引言

近年来,雾霾天气频繁,该天气导致能见度降低,对比度差,对人们的日常生活尤其是交通安全方面有恶劣影响。实时地进行视频去雾处理有重要的实际意义。

目前的去雾算法主要分两类:一种是图像增强的方法,主要有直方图均衡化、Retinex算法、局部对比度增强等,根据主观视觉效果来进行对比度调整优化。另一种是图像复原的方法,通过分析图像在雾天的降质过程建立图像退化模型,进而求解无雾图像。图像增强的方法未考虑图像退化因素,导致不能完全达到去雾功能。所以相较而言图像复原的方法得到的图像更加清晰自然,是当前去雾研究的热点。

2009年,He Kaiming等人提出基于暗原色先验理论的去雾算法[1],取得了相当好的去雾效果。但是此算法对天空区域处理效果并不理想,而且算法复杂度高,实时性差。本文针对于雾天中交通视频实时处理提出了一种改进的去雾算法,采用逐像素式滤波对粗略透射率进行精细化,合理估计了大气光值,利用自适应方法对视频图像进行了亮度调整,并对图像进行分割处理,针对远处图像进行去雾,提高处理速度,适用于行车交通视频的实时去雾显示。

1 本文算法

1.1 大气散射模型

大气散射模型[2]对于雾或者霾条件下的成像都适用,是众多图像去雾算法的理论基础,描述为:

式中,I(x)为雾天图像,J(x)为无雾图像,t(x)为透射率,A(x)为大气光强。

1.2 暗通道先验规律

He等人通过统计大量的户外无雾图像特性,得到暗原色先验规律:清晰图像至少在某一个颜色通道上存在一些强度值非常低的像素点。图像暗通道可以表示为:

式中, 为J的一个颜色通道,c为图像r,g,b三个通道中的任意一个, 为以x为中心的一个局部区域,为图像J的暗通道。

暗原色先验规律即为图像的非天空区域总是趋向于零的,即:

利用暗原色先验规律,结合大气散射模型即可得到透射率的估计:

式中,为一个常数,为了保留一定的雾气使得图像更加真实,我们取值0.9。另外我们设置一个下限值防止t(x)为0,最终去雾图像为:

1.3 求解透射率

He的暗原色先验去雾算法中是将图像分块再进行最小值滤波,其中分块的大小将直接影响透射率值的估计。若是较小会使透射率估计细节较多,不够平滑,局部错误增多;若是较大减少了局部错误,透射率估计又不足够细致。而多数有雾图像的雾气分布都是不均匀的,分块大小难以稳定,导致去雾效果不理想,不适于实时视频去雾处理。

本文的算法采用的是逐像素式的最小值滤波方法[4]。在He算法中块的移动步长为分块宽度,本文中块的移动步长为一个像素点。这样得到的点暗原色图细节丰富又平滑过渡。

1.4求解大气光值

图像中最不透明,亮度最强的像素被看作大气光。大气光值的估计会影响图像在极远处的细节信息,估计过小时会使极远处图像过亮,图像动态范围受到压缩;估计过大时会使近处图像偏暗,影响图像还原效果。大气光值的估计应当在雾气最浓处,通常情况下在图像的上部分天空区域或极远处。本文中对大气光值的估计如下:

1)天空区域一般位于视频帧的上半部分,故对视频帧的前1/2进行下采样,得到较小分辨率的天空部分。对求出暗通道图

2)在中取亮度最大的像素点,将下采样后的视频帧的对应位置作为中心,进行半径为1/30的最大值滤波,取最大值位置上的RGB通道的最大值为大气光值A。

1.5自适应亮度调整

图像中大多数区域的像素强度要比估计的大气光值低,得到的无雾图像会偏暗,因此需要对初步去雾的图像进行亮度调整。在RGB空间中,如果两像素点的各通道对应成比例,则两点应颜色相同。本文中对初步去雾后图像的各像素点RGB三个通道进行同比例增强,保持图像颜色同时提高亮度[4]。

亮度增量k(x)根据输入图像的三通道均值计算。考虑实际RGB范围为0~255,先计算图像每个像素点三通道的最大值

则该点增强的比例应限制在270/以下,从而保持颜色。

2 实验结果及分析

本文在操作系统Windows 8.1 专业版,配置为Intel(R) Core(TM)i5-5200U CPU@2.20GHZ,4.00GB内存的计算机运行得到,开发语言为C语言和OpenCV,开发平台为codeblocks。对三幅典型图像分别采用He的算法与本人算法进行处理对比,效果图如下:

如图5所示,He的算法去雾效果明显,但是去雾后的图像偏暗,且天空区域容易失真.本文算法在He算法的基础上进行了改进,使得去雾处理效果较优的同时视觉效果更好,处理速度更快,更加适合于交通行车中实时进行视频去雾处理。为了进一步验证算法有效性,采用了方差、平均梯度、信息熵、运行时间作为度量指标,分别反映出图像像素点离散程度、清晰度、信息含量、处理速度。其结果如下表:

从表1中可以看出,本文算法很大程度上提升了去雾处理的速度。

3结语

本文基于He的暗通道先验去雾算法进行研究改进,采用逐像素式滤波进行透射率估计,得到的点暗原色图细节丰富,并且平滑了透射率消除块效应;将大气光值进行合理估计,并优化视觉效果,降低算法复杂度,提高运行效率,达到实时进行视频去雾处理的效果。但是本文改进的算法还仅对陆地汽车交通行进的视频实时处理有良好效果,算法的复杂度及去雾效果还有待进一步加强。

参考文献:

[1] He Kaiming,Sun Jian,Tang Xiaoou. Single image haze removal using dark channel prior [C]. IEEE Conference on Computer Vision and Pattern Recognition, CVPR 2009,IEEE,2009:1956-1963。

[2] McCartney E J. Optics of the atmosphere: Scattering by molecules and particles[M]. New York: John Wiley and Sons,1976:23-32。

[3]李春江,禹素萍,许武军,范红.《基于暗原色先验图像去雾的改进算法》[J]. 微型机与应用,2017(16)。

[4]张冰冰,戴声奎,孙万源.《基于暗原色先验模型的快速去雾算法》[J]. 中国图象图形学报,2013(02)。