去雾系统V2包括作者新加入的多尺度Retinex去雾算法以及改进去雾算法,以及4种评价去雾效果的客观指标。
00 目录
引言
去雾系统新增功能
结果分析
源码获取
展望
参考文献
01 引言
在作者前面写过的文章中,已经介绍过图像去雾算法的应用价值及研究现状,并且也介绍了4种去雾算法的原理及代码实现(全局直方图均衡化、局部直方图均衡化、暗通道先验、Retinex理论的去雾算法),将这4种算法集成在一个GUI中。但首先该系统缺乏对去雾效果的评价指标,其次4种算法对一些图像的去雾效果欠佳,因此作者对该系统做了改进,引入了4种评价指标,增加了2种算法,其中一种也是一种简单改进,最后也是取得了不错的效果。
02 去雾系统新增功能
2.1 去雾系统现有功能
在介绍新功能前,先介绍原去雾系统的功能,对于原去雾系统,集成4种算法。3种增强型去雾算法——全局/局部直方图均衡化、Retinex理论的去雾算法,这类去雾算法没有考虑雾图像的成因,只是通过提高图像对比度,改善了图像的视觉效果,不能从根本上对图像进行去雾,而且容易丢失图像信息;其次是一种复原型去雾算法——暗通道先验算法,这类算法是基于大气散射物理模型,通过寻找先验知识,求解模型中的未知量,获得清晰图像[1],这类算法的难点在于对于模型参数的估计能否准确。下面将介绍V2.0版本的去雾系统新增功能。
2.2 增强型去雾算法——多尺度Retinex算法(Multi Scale Retinex,MSR)原理
Retinex算法最早由E.Land提出,该算法是根据人类视觉感知色彩的恒常性提出的一种大脑皮层理论,根据反射分量来估计物体的颜色,单尺度Retinex算法于1997年被Jobson[2]提出,该算法能有效的增强图像,但由于尺度单一,因此提出了对于雾气分布均匀的雾图像具有良好效果的多尺度Retinex算法[3]。MSR算法在Retinex算法的基础上从大、中、小三个尺度实行计算,小尺度的 Retinex 算法能实现图像的动态范围压缩,大尺度Retinex 算法可使图像的色调再现,中尺度的 Retinex 兼顾图像的动态范围压缩与颜色保真之间的平衡性,同时按照1/3比例加权各尺度,平衡颜色保持与细节增强,降低图像边缘可能出现的光晕。MSR 算法可以弥补Retinex算法的不足,使得图像的颜色保真度以及动态压缩都有大幅度提高。
多尺度 Retinex算法的基本公式如下:
其中,Ri(x ,y)是输出的图像,i∈R,G,B表示3个颜色谱带,Fn(x,y)是高斯滤波函数,Wn表示尺度的权重因子,N表示使用尺度的个数,N=3,表示彩色图像,i∈R,G,B。N=1,表示灰度图像。从公式中可以看出,多尺度Retinex算的特点是能产生包含色调再现和动态范围压缩这两个特性的输出图像。
在多尺度Retinex算法的雾霾图像清晰化过程中,图像可能会因为增加了噪声而造成对图像中的局部区域色彩失真,使得物体的真正颜色效果不能很好的显现出来,从而影响了整体视觉效果。为了弥补这个缺点,一般情况下会应用带色彩恢复因子C的多尺度Retinex算法来解决。带色彩恢复因子C的多尺度Retinex算法是在多个固定尺度的基础上考虑色彩不失真恢复的结果,在多尺度 Retinex算法过程中,我们通过引人一个色彩因子C来弥补由于图像局部区域对比度增强而导致图像颜色失真的缺陷,通常情况下所引入的色彩恢复因子C的表达式为:
其中,C表示第个通道的色彩恢复系数,它的作用是用来调节3个通道颜色的比例,f(·)表示的是颜色空间的映射函数。带色彩恢复的多尺度Retinex算法通过色彩恢复因子C这个系数来调整原始图像中三个颜色通道之间的比例关系,**从而通过把相对有点暗的区域的信息凸显出来,**以达到消除图像色彩失真的缺陷。处理后的图像局域对比度提高,而且它的亮度与真实的场景很相似,图像在人们视觉感知下显得极其逼真。
2.3 本文的去雾算法
本法是对导向滤波的暗通道先验算法求得的去雾图像经拉伸后与进行自适应直方图均衡化得到的去雾图像线性融合到一幅图像上,该方法类似于图像抠图法,该方法是将不同雾天的降质图像看作由前景和背景以不同比例组合产生的,但本文的算法是该方法的简化版,最终取得的效果也较好,也算是有一点价值。
2.4 评价指标
图像去雾性能的评价包括主观和客观两种,由于对于图像去雾算法的有效性通过人的主观直觉来进行时,容易受到绝对主体地位的个人主观因素的干扰,往往会影响正确的判断,可靠性不高,所以客观定量的评价去雾效果是必须的。本文选择信息熵值、可见边比、可见边规模化梯度均值、饱和黑白像素点百分比[4]作为客观评价指标对去雾图像进行评价,其中信息熵值、可见边比、可见边规范化梯度均值、越大,饱和黑白像素点百分比越小说明去雾后效果更好。
2.4.1 信息熵值
计算信息熵评价值的大小就是求图像灰度值的总期望。图像的细节信息的多少可以由信息熵的评价结果来表征,如果图像包含的信息越多,那么信息熵的值也会越大。其计算公式:
2.4.2 可见边比
可见边比的计算公式为:
式中,n0为原图像中可见边的数目,nr为去去雾后的图像中可见边的数目,如果去雾效果好,去雾后的图像会变得清晰,会有更多边缘可见,则很好的体现了图像细节对比度增强的效果。
2.4.3 可见边规范化梯度均值
可见边规范化梯度均值计算公式为:
中:r表示可见边的相关系数,VLr 和VLo分别代表去雾图像和原图像中目标的能见度水平,ΔIr和ΔIo表示去雾图像和原图像中可见边上像素点的梯度值,r ̅为去雾图像中所有可见边的集合,Pi为在可见边上的像素点。通过加权所有位于可见边上的像素点的Sobel梯度比值,获得对可见边对比度所增加强度的衡量。
2.4.4 饱和黑白像素点百分比
对于饱和黑色或白色像素点的百分比σ,可表示为
式中:ns为去雾后的图像中饱和的白色或黑色像素点的数目,dimx和dimy分别表示图像的宽和高。 σ体现了去雾后图像中饱和像素点所占的比例,即图像过增强的强度。
03 结果分析
将同一雾图用以上方法进行去雾,得到的结果如下
从运行结果来看,客观指标上本文的去雾算法各项都较好,而主观观察上也能够看出本文的去雾算法效果较之其它算法是更佳的,本文所提出的改进方法总体上效果令人满意。
04 源码获取
https://mbd.pub/o/bread/ZJmTmZdy
(保证运行,有任何问题私信作者)
05 展望
首先,本文虽然采用4种客观评价指标,但实际中有时它们不能达到统一,出现度量不一致的现象;另一方面,当去雾图像出现过增强时,图像边缘处的对比度能得到很大的增强,但往往同时也会出现颜色失真,从而极大地影响可视性,而基于可见边比的方法并不能反映这一现象,因为其评价参量都没有考虑对颜色失真的度量。 因此,基于该方式的评价准则还需要进一步完善。
其次,本文所用算法运行用时较之其它算法用时长,在某些去雾图像上也存在失真和噪声的问题,这将在后面的研究中加以改进。
最后,如果各位同学对该去雾系统有其它改进想法或有想要增加的功能可以私信作者,作者可以在此基础上再进行改进。
06 参考文献
[1]He Kaiming,Sun Jian,Tang Xiaoou.Single image haze removal using dark channel prior[C]//IEEE Conference on Computer Vision and Pattern Recognition,2009:1956-1963.】
[2] 韩涛, 张虎龙, 邹强. 基于二维小波变换的图像除雾技术[J].电子设计工程,2017, 25(07): 191-193.
[3]Jobson D J, Rahman Z, Woodell G A. Properties and performance of a center surround retinex[J]. IEEE Transactions on Image Processing, 1997, 6(3): 451-462
[4] HAUTIERE N,TARELJ P,AUBERT D,et al.Blind contrast enhancement assessment by gradient ratioing at visibleedges[J]. Image Analysis and Stereology Journmal,2008,27( 2):87-95.