天津市天津大道养护管理中心,天津 300202
摘要:恶劣的雾霾天气对道路监控造成了很大的困扰,限制了道路监控的功能,为了解决这一问题,本文提出了一种快速的注重对比度增强的优化视频去雾算法。从实时监控的视频流角度出发,分为关键帧与非关键帧两个部分来处理。对关键帧的处理,首先计算大气光照值;再考虑到提高有雾图像的对比度会产生过补偿从而导致图像信息缺失的问题,提出了最小化代价函数的策略,这样既保证了图像对比度的提高,又保留了图像的原有信息;此外,添加了光照补偿技术,使得视频色彩更加明亮,避免失真。对非关键帧部分的处理,直接使用关键帧计算出的大气光照值,使用运动目标检测方法获取视频序列中的运动物体,然后将基于像素块的透射率图传递给非关键帧,减小计算开销。另外,添加时间相关性约束条件来减少视频序列上的闪烁和抖动,使得视频更加平滑、流畅。
关键词:道路工程;视频去雾;对比度增强;道路监控视频;
引言
道路监控系统存在着一些自然现象引起的问题,其中比较典型的是雾霾对城市交通监控的干扰,通过对监控摄像头拍摄的视频进行清晰化处理可以有效地改善这一状况。
截至目前,视频去雾的算法大多以图像去雾为基础。在过去的十几年里,国内外专家学者He、Fattal和Tan等人对图像去雾做了很多研究,并提出了很多有效的图像去雾算法,获得了比较好的去雾效果。其中He等人提出了基于暗通道先验模型的去雾方法。此方法在单幅图片上去雾效果较为理想,但是时间复杂度高,计算开销大[1]。Lin等人在He等人的基础上提出了使用导向滤波(guided filter)来计算图像的透射率图(transmission map)的方法,此方法大大降低了算法的时间开销[2]。Ancuti等人提出了半逆法,该算法可以快速区分图像中的有雾区域和无雾区域,算法简单,便于应用[3]。Berman等人基于图像的颜色可以由几百个不同的颜色估计得到的假设,提出了一种非局部的图像去雾算法[4]。Wang等人暗通道先验算法的基础上提出了一种基于超像素的均值-均方差暗通道单幅图像去雾算法,该算法在雾浓度较大时能显著提高大景深图像的可见性[5]。Ju等人根据雾气浓度的视觉特征,提出一种雾气浓度估计模型,结合大气散射模型,实现了一种新的图像去雾算法[6]。
后来,研究者们将图像去雾的研究拓展到视频领域。Kim等人基于有雾视频低对比度的事实,采用图像增强的方法来达到去雾效果,提升了去雾算法的效率,并将其推广到实时视频去雾,较好地保持了视频的时空一致性[7-9]。Xu等人采用自适应直方图均衡化算法来约束对比度,并拓展到视频的去雾领域[10]。Guo等人则基于雾气遮罩理论来解决视频中的有雾区域,他们将覆盖在有雾帧上的雾气作为一层遮罩被,从雾化视频中消除[11]。Li等人在基于CNN的图像去雾基础上,提出了一种端到端的视频去雾网络架构,有效地解决了帧间不连续等问题[12]。Song等人采用多策略合成视频去雾方法,充分利用了视频场景中的环境信息,实现了较好的去雾效果[13]。
在国内的交通运输领域对视频去雾技术也有广泛的应用,比较典型的场景包括能见度较低的高速公路和道路视频监控、交通导航以及交通标志牌检测和交警手势识别等。而视频监控的去雾技术,与道路车辆的动态信息以及能见度有很大关系[14-16]。上海交通大学路林吉教授课题组针对交通道路的实时监控、安防,采用局部直方图均衡化方法开发了一套雾天视频清晰化装置。大连海事大学可信软件与移动计算实验室(TSMC)在大气传输理论基础上,以多种气象数据为参数,确定符合地区特征的参数模型实现图像去雾,同时对于光晕和雨雾的处理也取得较好的效果。上海某安防整体解决方案提供商,开发出了一套便于嵌入式系统实现的去雾算法,可以实时快速地实现去雾取景效果,该技术在大气透射模型的基础上融合了图像增强技术,能够取得较为理想的去雾效果,并且已经实现产品化。
尽管在视频去雾领域出现了很多算法,但是现有的方法中主要是针对视频各帧图像单独处理,并没有利用视频各帧之间大量的冗余信息来减少计算量;在视频去雾过程中,没有考虑连续的视频帧之间的时间相关性,所以不能保持视频的连贯性和流畅度。
基于以上研究背景,本文提出了一种基于对比度增强的视频去雾算法。如图1所示,算法以关键帧去雾为基础,计算大气光环境值,设计最小代价函数来减小图像信息缺失;使用基于像素块的透射率图计算方法,添加导向滤波减小块效应;检测出视频中的运动物体,将关键帧的透射率图传递到非关键帧,减小了计算开销,实现了算法的实时性;并添加时间相关性检验,减小视频抖动和闪烁。
本文采用的视频去雾算法以关键帧图像去雾为基础。对于输入的关键帧图像,首先估计出它的大气光环境值,然后基于像素块来计算透射率图,并应用导向滤波来优化透射率图,去除图像中的块效应,最后通过透射率值和大气光估值来复原图像,达到去雾的效果。
1.1大气衰减模型和大气光估值
大气衰减模型描述了光线在大气中传播的衰减过程[17]。当入射光透过大气介质时,由于大气中普遍存在悬浮微粒,从被观测物体的表面反射出来的光的能量被吸收和散射,使得相机获取的图像中的光线低于实际的光线强度。这种衰减作用在有雾天气的情况下更加严重,并且随着相机位置与被观测物体之间距离的增加,大气衰减作用更加明显。
大气环境光是指光线在大气中传播,在经过大气中的悬浮微粒时发生了散射现象,使得反射光线转而向其他各个方向传播。经过大气散射之后,大气中悬浮的微粒如同一个大光源,其中的组成成分包含:太阳光、漫反射光线、地面反射光线等。同光线衰减模型一样,随着相机和被观测物体之间距离的增大,大气光强作用也在增加,所以会表现为场景中点的亮度随着场景深度的增大而增加,即大气光的增强作用。
目前广泛使用的大气雾霾模型如下所示:
其中,是观察到的物体光强,即有雾的输入图像;为坐标处的场景反照率,即所求清晰图像;为场景深度(也称光程),即大气光环境值,是环境中各种光强的总值;为大气散射系数,表示单位体积的大气对光的散射能力。
在对大气光进行估值时,需要寻找到比较亮的区域,例如天空,但是有时候图像中会存在比大气环境光还要亮的区域,例如车灯。因此,为了获得更加准确的大气光估值,本文采用四分搜索的方法,将一幅图像划分成四个矩形区域,然后计算出每个区域内的像素均值与像素标准差的差值并进行比较,保留值最大的区域,并进一步划分成四个更小的区域。我们重复此过程直至所选区域小于某个设定尺寸,具体选择过程如图2所示。在最后选定的区域内,我们通过求取的最短距离作为大气光的值。
1.2 计算透射率图
假设图像中的景深是局部相似的,对图像中的每一个大小为的块,计算出它的透射率值。那么,对于每一个固定的透射率值,大气雾霾模型可以改写为:
从公式(4)中我们可以看到MSE随着的减小而增大。
当我们选择一个较小的值时,对于浓度很大的雾天图像,其输入的像素值会集中在一个较小的区间内,此时经过公式(3)计算出来的像素值是在内的,我们可以得到一个高对比度的复原图像,但是,当输入图像只有较轻的雾时,输出的像素值会超出,此时这些值将被截断为0或者255,从而导致了复原图像的信息缺失。因此,需要在高对比度和信息损失之间寻找到一个平衡点,来达到最优的去雾效果。
为此,本文定义一个最小代价函数来优化透射率图算法。首先定义对比度代价函数,将每一个图像块的三个颜色通道上的MSE进行求和,然后取负值得到对比度代价函数,即
其中,为权重参数,用来调节对比度和信息缺失这两者之间的平衡关系。
1.3 导向滤波优化
导向滤波是He等人提出的理论基础,进一步完善了暗通道先验方法[18]。导向滤波通过输入一张图像作为导向图,通过导向图来识别出图像中的边缘、纹理和细节等。与双边滤波相比,导向滤波保持了边缘的平滑性,在边缘的处理上效果更好。它将导向图的结构变化为滤波输出,是一种超越平滑的滤波概念。导向滤波更为快捷,在计算机图形学和图像处理中有很好的应用效果。
在普通的线性平移变换滤波器中,经过滤波的像素点可以表示为一个加权平均值:
其中,为导向图像,为滤波输入图像,为输出图像,和为像素下标。 滤波器核是导向图的函数,与独立且和线性相关。在本文中,即为有雾的输入图像,为估计的透射率图。通过导向滤波,可以通过初步的透射率图和有雾图像来得到精确的透射率图,以计算后续的去雾图像。
导向滤波假设导向图与滤波的输出之间满足局部线性关系,即为在以像素为中心的窗口的线性转换:
它们的梯度比的明显边缘处要小得多。在这种情况下我们仍可以保证,这意味着输出图像依然可以很好地保持导向图中强烈的亮度值变化。
1.4光线补偿
由于所移除的雾的亮度来源于图像中的光源和物体的反射,通过暗通道先验算法去雾后的图片往往会亮度降低,从而产生了色彩偏差,特别是图像本身具有与雾的色彩相似的物品,如白色大理石等,由于在这一区域低估了透射率的影响,即会造成图片失真。光线补偿能够很好地解决这个问题。
Jain等人提出,由于在绝大部分图像中都含有纯白色,即使图像中的色彩偏差很大,其中的局部纯白色区域也会有明显的表现,因而根据纯白色像素的色彩偏移来预估整幅图像的色彩偏移是合理的[20]。
本文将RGB图像转换到YCbCr颜色空间,提取图像中所有像素的亮度分量,并将其按照从高到低排列,取前%的像素亮度作为“参考白”,将这些参考白的像素的RGB分量调为255,其他像素按一定比例进行变换,即可得到增强后的图像;同时,对于灰度区域,人眼感受的亮度与入射光强会呈对数函数关系,为取得最佳的视觉效果,可以进行如下变换:
综合以上方法,我们能够使图像像素的亮度值达到最适宜的程度,使图像更加优美,从而达到更精确的去雾效果。如图3所示,为加入光线补偿后的暗通道去雾结果,可以看出比中原始去雾结果有很明显的亮度增强。
2非关键帧去雾
对于非关键帧的去雾方法,我们不计算每一个非关键帧的透射率图,而是将得到的关键帧的透射率图在进行运动估计后进行传递,得到非关键帧的透射率图。因为在两关键帧之间的各帧虽然具有高冗余性和深度基本相似的特性,但是每一帧之间还是存在细微差别,因此,需要进行关键帧和非关键帧之间的运动估计。如何检测出非关键帧和关键帧之间运动物体的微小位置差别将会是非关键帧去雾算法的重点和难点。
2.1 运动物体检测与透射率图传递
非关键帧的透射率图处理的关键之处在于检测出视频序列中的物体运动轨迹,然后对运动轨迹处的透射率进行计算,而对场景中的背景部分的透射率值不做改变,减少了计算时间。
本文采用Lucas-Kanade光流算法实现运动物体检测[21]。该算法适用于输入的视频帧图像的一组点上,是求解稀疏光流的经典方法。LK光流法选取一个邻域小窗口的局部信息,以此来提高光流的计算速度。该算法计算视频相邻帧在时间到时间之间的每个像素点的位置变化。基于泰勒级数展开,对空间和时间坐标使用偏导数,这种方法也称为差分法。LK光流法的约束方程可以写为:
其中,是在时刻点位置的像素。由于在一个很短的时间内运动,所以我们可以进行下述假设:
(1)亮度恒定假设:即视频帧场景中的运动目标在帧之间运动时,亮度不会随着时间推移而改变。
(2)运动范围很小假设:即假设运动的物体在这个时间段内的运动很慢,即物体在相邻帧之间的运动很小。
(3)空间相似性假设。即在一个相同场景中的同一区域相邻的点具有相似的运动特征。
基于上述假设,我们可以根据约束方程来具体计算LK光流法的具体步骤。首先进行基于图像信号的泰勒级数展开(差分法),再计算其在时间和空间坐标上的偏导数,最终通过迭代计算获得一个与理想假设近似的解。
通过LK光流法计算出关键帧之间的运动情况,获取图像中每一个像素点随时间变化的运动矢量,进而实现关键帧到非关键帧的透射率图的传递。
2.2时间相关性检验
为了保持视频帧间运动物体的连贯性,本文采用时间相关性约束对视频进行优化处理。基于像素与相邻帧的对应邻域中的亮度一致性假设,时间相关性函数可以定义为:
其中,是当前像素点的邻域;是的权重值;表示利用邻域像素的相似性给出的平滑函数价值的定义,表示该价值函数的上限值,通常取0.05-0.1之间的某个值。
为了保持图像中运动目标在边界处的连贯性,利用有雾图像的强度或颜色的改变,定义了自适应的平滑能量函数权重。是一个控制因子,防止两个像素值相同时分母为零;该平滑函数的定义保证了透射率图在底梯度区域的平滑过渡及在高梯度区域的连续性,即优化了图像的边界值。
最后,最小化总时间相关性函数来获得最优解,得到最终的去雾视频。通过时间相关性校验,解决了去雾处理后的视频由于透射率图局部像素匹配不精确和亮度变化等造成的视频闪烁、抖动等问题,校正了图像中物体边界的信息,最终获得了较好的去雾结果。
3实验与讨论
实验中所有的算法均在配置为Intel® CoreTM i7-4790 3.60GHz CPU、8GB内存、Windows 10操作系统的PC计算机上采用Visual Studio 2012和OpenCV 2.4.9编程实现。
我们先使用本地存储的有雾视频进行测试并截取了其中四帧画面作为对比,如图4所示,左列为没有经过去雾处理的源视频截取画面,右列为经过去雾的对应画面,从上至下对应的帧数分别为第1帧、第20帧、第30帧和第40帧。
Fig.4 Dehazing results of videos shot a fixed position
从图中可以看出我们的方法对雾天的处理效果较好,色彩对比明显;相比较于原画面,处理后的图像更加清晰。
为了更好地对比本文方法和其他方法在去雾效果上的优势,我们将视频的第一帧图像使用单帧去雾算法进行去雾处理,并将结果和其他方法进行对比分析,对比结果如图5所示。
图5 使用不同去雾算法的处理效果对比。其中,(a)是原视频的第一帧,(b)是使用soft matting的He等人的暗通道先验方法的去雾结果,(c)是使用guided filter的He等人的暗通道去雾方法的去雾结果,(d)是本文算法的去雾结果。
Fig.5 Comparison of different dehazing algorithm. (a) is the first frame of the orginal video, (b) is the result of Dark Channel Prior Algorithm with Soft Matting, (c) is the result of Dark Channel Prior Algorithm with Guided Filter, (d) is the result of our algorithm.
图5展示了不同去雾算法的结果对比。从中可以明显地看出,我们的方法在去雾效果上相比较于传统方法有了较大的提升。表1给出了去雾结果(b)、(c)、(d)各自的客观评价数值,其中,e和r是新增可见边之比和新增可见边的法向量上颜色变化梯度值,PSNR(dB)为图像的峰值信噪比,数值越高,反映图像的去噪效果越好;用时(s)是算法计算透射率图的耗时。从表1可以看出,本文方法在效果和速度上均较传统算法有了较大的提升。
表2展示了处理关键帧时各步骤所耗费的时间。表3展示了处理非关键帧时各步骤所耗费的时间。其中,对关键帧部分的处理耗费时间要长一些,而非关键帧部分则少很多。因此,在经过优化后的视频去雾算法在时间性能上得到了较大的提升,可以达到实时处理的要求。从表3可以看出,算法主要的时间消耗在写入帧这一部分,通过写入帧图像完成对去雾后的视频保存,这一功能并不需要实时性的要求。因此,我们的算法还可以在此基础上进行完善,通过将写入帧这一步以并行处理的方式实现,,这也是我们将来工作的一个方向。
我们对不同浓度的雾天情况进行了测试,对一些重点区域进行了对比,其中,关注区域包括道路指示牌、路面车辆、道路中间设置的检测牌以及车道线等。图7展示了路面指示牌区域的去雾结果,可以看出经过去雾处理之后的指示牌在色彩上更加明亮,基本达到了没有雾的效果,而下面的字也更加清晰。
如图9所示,我们将道路中的测试牌和马路上的车道线进行了对比。不难发现,对于测试牌(红框圈出)进行去雾之后,对于近距离的测试牌我们可以清楚的看到上面的数字以及方块的轮廓线和不同的颜色,对于较远处的测试牌,方块的颜色比原画面要清晰很多。从红框中的车道线可以看出,去雾算法能够使得车道线更加明显。
4结论
本文提出了一种针对监控视频的去雾算法。采用提取关键帧的方法,使用四分搜索来估算出关键帧的大气光环境值;在计算透射率图时,设计了最小代价函数来获得最优地透射率值,避免了在提高图像对比度时产生的信息缺失问题;使用导向滤波对透射率图进行优化,保持了图像的边缘信息,去除了块效应;对于非关键帧的透射率图计算,使用帧间运动检测,将关键帧的透射率图传递到非关键帧,减小了计算量;添加了时间相关性约束,避免了去雾后的视频序列产生抖动、闪烁等问题,使得视频更加平滑、流畅。实验结果证明本算法具有很好地去雾效果,算法效率相较于其它算法有明显优势。
本文提出的算法能够较好地处理道路监控视频,满足了其实时性的要求。然而,该算法仍然有提升的空间,比如在进行帧间运动物体检测方面,可以考虑替换为更加精准的方法,使得透射率图的计算更加准确,从而提升整体的视频去雾效果。
参考文献:
References:
[1] K. M. He, J. Sun, X. O. Tang. Single image haze removal using dark channel prior[C]. IEEE Conference on Computer Vision and Pattern Recognition, pp. 1956-1963, 2009.
[2] Z. Q. Lin, X. Wang. Dehazing for image and video using guided filter[J]. Open Journal of Applied Sciences, pp. 123-127, 2012.
[3] C. O. Ancuti, C. Ancuti, C. Hermans, et al. A fast semi-inverse approach to detect and remove the haze from a single image[C]. Asian Conference on Computer Vision, pp. 501-514, 2010.
[4]D. Berman, T. Treibitz and S. Avidan. Non-local Image Dehazing[C]. IEEE Conference on Computer Vision and Pattern Recognition, pp. 1674-1682, 2016.
[5]汪云飞, 冯国强, 刘华伟, 赵博欣. 基于超像素的均值-均方差暗通道单幅图像去雾方法[J]. 自动化学报, 44(3): 481-489 , 2018.
Y.-F. WANG , G. Q. FENG , H. W. LIU, B. X. Zhao. Superpixel-based Mean and Mean Square Deviation Dark Channel for Single Image Fog Removal[J]. Acta Automatica Sinica, 44(3): 481-489, 2018.
[6]鞠铭烨, 张登银, 纪应天. 基于雾气浓度估计的图像去雾算法[J]. 自动化学报, 42(9): 1367-1379, 2016.
M. Y. JU, D. Y. ZHANG, Y. T. JI. Image Haze Removal Algorithm Based on Haze Thickness Estimation[J]. Acta Automatica Sinica, 42(9): 1367-1379, 2016.
[7]J. H. Kim, J. Y. Sim, C. S. Kim. Single image dehazing based on contrast enhancement[C]. IEEE International Conference on Acoustics, Speech and Signal Processing, pp. 1273-1276, 2011.
[8]J. H. Kim, W. D. Jang, Y. Park, et al. Temporally coherent real-time video dehazing[C]. IEEE International Conference on Image Processing, pp. 969-972, 2012.
[9]J. H. Kim, W. D. Jang, J. Y. Sim, et al. Optimized contrast enhancement for real-time image and video dehazing[J]. Journal of Visual Communication and Image Representation, pp. 203-438, 2013.
[10]Z. Xu, X. Liu, X. Chen. Fog removal from video sequences using contrast limited adaptive histogram equalization[A]. IEEE Computer Society, 1-4, 2009. .
[11]G. Jin, L. Lu, X. Zhu. A dehazing algorithm of compression video image[J]. Advanced Materials Research, pp. 825-829, 2014.
[12]B. Y. Li, X. L. Peng, Z. Y. Wang, et al. End-to-End United Video Dehazing and Detection. arXiv:1709.03919, 2017.
[13]W. Song, B. Deng, H. Zhang, et al. An adaptive real-time video defogging method based on context-sensitiveness[C]. IEEE International Conference on Real-time Computing and Robotics, pp. 406-410, 2016.
[14]胡平, 杨旭东. 高速公路能见度快速检测算法[J]. 公路交通科技, 34(4): 115-122, 2017.
P. Hu, X. D. Yang. An Algorithm for Fast Detecting Expressway Visibility[J]. Journal of Highway and Transportation Research and Development, 34(10): 115-122, 2017.
[15]张密科, 胡选儒. 基于图像纹理分析的动态车辆识别方法研究[J]. 公路交通科技, 34(10): 122-127, 2017.
M. K. ZHANG, X. R. HU. Study on Dynamic Vehicle Identification Method Based on Image Texture Analysis[J]. Journal of Highway and Transportation Research and Development, 34(10): 122-127, 2017.
[16]宋洪军, 郜园园, 陈阳舟. 基于摄像机动态标定的交通能见度估计[J]. 计算机学报, 38(6): 1172-1187, 2015.
H. J. Song, Y. Y. Gao, Y. Z. Chen. Traffic Visibility Estimation Based on Dynamic Camera Calibration[J]. Chinese Journal of Computers, 38(6): 1172-1187, 2015.
[17]S. G. Narasimhan, S. K. Nayer. Contrast restoration of weather degraded images[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, pp. 713-724, 2003.
[18]K. M. He, J. Sun, X. O. Tang. Guided image filtering[C]. European Conference on Computer Vision, pp. 1-14, 2010.
[19]N. Draper, H. Smith. Applied Regression Analysis[M]. 2nd. John Wiley, 1981.
[20]R. L. Hsu, M. Abdel-Mottleb, A. K. Jain. Face Detection in Color Image [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, pp. 696-706, 2002.
[21]B. D. Lucas. Generalized image matching by the method of differences[M]. Carnegie Mellon University, 1985.
论文作者:韩学光
论文发表刊物:《工程管理前沿》2019年第06期
论文发表时间:2019/6/21
标签:图像论文; 算法论文; 视频论文; 关键论文; 大气论文; 像素论文; 等人论文; 《工程管理前沿》2019年第06期论文;