基于SLIC和SVR的单幅图像去雾算法
2018-02-08尚媛园舒华忠周修庄
栾 中 尚媛园 舒华忠 周修庄 丁 辉
(1首都师范大学信息工程学院, 北京 100048)(2首都师范大学成像技术北京市高精尖创新中心, 北京 100048)(3东南大学影像科学与技术实验室, 南京210096)
雾霾天气下采集的户外图像质量会有严重的下降.图像去雾算法依靠数字图像处理和图像复原等技术来增强雾霾图像的视觉效果.在近期的去雾算法中,单幅图像去雾因实现方便、成本低而备受青睐.单幅图像去雾算法通常采用大气物理模型[1]来描述雾霾天气下的成像过程,该模型主要包含传输效率参数和天空亮度参数.不同的算法采用不同的方式来估算模型中的这2类参数,在早期的算法中,研究者们依据无雾自然场景图像的先验规律[2-7]提出了多种估计方案,但这类算法的图像去雾结果大多存在图像过度增强的问题,包括色彩失真、噪声放大、晕轮效应等.
随着近年来机器学习技术的发展,研究者们提出了多种基于统计学习和深度学习的图像去雾算法,例如,训练一个随机森林[8]或卷积神经网络[9-10]来估算传输效率参数.相对于基于先验的算法,该类算法的去雾结果更精确,出现过度增强现象的概率较低.但是对于图像中雾霾较重的部分,去雾效果通常不理想,并且该类算法仍然采用传统方法估算天空亮度参数,在处理明暗变化强烈的图像时会导致图像暗部细节丢失.
为了进一步提升图像去雾算法的效果,本文结合多种图像特征来提升传输效率参数的估算精度,并提出了更有效的计算天空亮度参数的算法.
1 大气物理模型
去雾是图像复原范畴内的问题,雾霾图像的降质有其特有的物理原因.本文采用大气散射模型[1]来描述雾霾图像的形成过程.在该模型中,由于大气对光线的散射效应,进入成像设备的光由衰减后的原始场景反照率和环境光亮度2个部分构成,即
I(p)=J(p)t(p)+A(p)(1-t(p))
(1)
式中,I(p)为成像设备观察到的雾霾图像I在位置p处的像素矩阵;J为原始场景反照率矩阵,表示无雾天气下应该得到的清晰图像,是去雾算法的求解目标;A为天空亮度参数矩阵,用来表示成像场景的光照强度;t为传输效率参数矩阵,由被拍摄物体到成像设备的距离和大气浑浊程度决定.去雾算法的任务是根据输入图像I来估算t和A,然后代入式(1)计算出清晰图像J.
2 天空亮度参数的估算
在大气散射模型中,天空亮度参数矩阵A表示场景中的光照强度.传统方法(如四叉树分割法[2]和暗通道搜索法[3])需要搜索出图像中无穷远点的位置,并用该位置的像素值来估计A.这类方法存在2个方面问题:① 无穷远点应该被定位在天空区域或雾霾最厚的区域,但是在实际图像中经常出现大面积的白色物体或高反光率区域,严重影响天空区域的判定精度,进而影响最终的去雾效果.② 在传统方法中,该参数在图像中的所有位置都取一个固定值,当图像中大气光分布不均匀或图像本身的动态范围较大时,去雾结果中较暗部分的细节会大量丢失.
针对大量自然场景图片的观测表明,在白天室外场景中,大部分物体通过反射和吸收不同波长的光线而呈现出不同的颜色和亮度,而图像的局部区域内通常会聚集同质物体,因此在最大通道图像中,局部区域内像素的最大值可以近似反映该区域的光照强度.以输入图像图1(a)为例,首先对输入图像每个像素位置取RGB三通道的最大值,得到最大通道图像,结果见图2(a).接下来,需要对最大通道图像做最大值滤波操作,以估算天空亮度参数.传统的滤波操作均采用方形窗口,但由于图像内容的复杂性,方形窗口内可能包含大量非同质像素,导致恢复后图像存在局部残雾且传输图估算精度下降.因此,本文利用SLIC算法[11]将最大通道图分割成形状自适应的超像素块,在滤波过程中采用超像素块作为滤波窗口,最大程度地利用了同质像素的信息.图2(b)给出了最大通道图像经过超像素分割后的结果.利用这种基于超像素的最大值滤波来处理最大通道图,得到天空亮度参数矩阵A.通过输入图像I计算天空亮度参数矩阵A的公式为
(2)
式中,Ic(p)为图像在通道c下位置p处的像素矩阵;Ω为位置p处的像素所属的超像素块;c∈{r, g, b}为RGB图像的色彩通道.
(a) 输入图像
(b) 传统算法结果
(c) 本文算法结果
由于各超像素块取最大值的操作,天空亮度参数矩阵A的边缘信息与原图之间存在一定误差,直接用来恢复图像会产生块效应.本文利用简单的边缘保留滤波算法[12]对A做平滑处理可以有效地改善这一现象.
(a) 最大通道图
(b) SLIC分块结果
(c) 天空亮度参数图
不同天空亮度估计算法对去雾效果的影响见图1.其中,图1(b)为传统方法的去雾结果,图1(c)为本文算法的去雾结果.由图可知,采用传统算法,所得图像中间山谷的阴影部分亮度严重下降,远景部分也存在变暗的情况.采用本文算法,在恢复对比度和饱和度的前提下,图像整体亮度更加均匀,视觉效果得到了较大的提升.
3 传输效率参数估计
3.1 训练样本
在图像去雾问题中,由于成像设备在大多数情况下无法获得同一场景下有雾和无雾的一对图像,训练数据的采集是一个困难问题.鉴于此,本文采用人工合成训练集的方案.首先,采集户外高质量无雾图像J,将其切割成图像块Jb,并随机为图像块指定一个传输效率参数tb∈[0.1, 1]和一个天空亮度参数Ab.由于图像J是在无雾天气时采集,光源不经衰减直接照射到场景,因此将图像块的局部大气光Ab固定为1.然后,根据式(1),将Jb,tb和Ab作为输入,合成后的雾霾图像块Ib作为输出,得到一组训练样本,其中Ib作为训练数据,tb为其对应的样本标签.本文总共合成了约1.6×105个图像块作为训练集.
3.2 特征提取
本文对3.1节得到的训练集中每个样本提取了4种特征,这些特征除了与雾霾浓度相关以外,还可以在一定程度上反应图像质量.
麦克森对比度Fmic是一个可以衡量图像能见度的特征[2],计算公式为
(3)
直方图均衡度Fhis是一个反应图像中像素值分布集中程度的特征[2],计算公式为
(4)
最小通道均值Fmin为图像块最小通道下所有像素的均值,计算公式为
(5)
式中,B为位置p处像素所属的矩形图像块.
饱和度特征Fsat[7]为图像块内每个像素最小通道值与最大通道值之比的总和,计算公式为
(6)
3.3 回归模型训练与图像恢复
通过3.2节的特征提取操作,每个训练样本被表示为一个4维特征向量.将这些特征向量和对应的样本标签输入到SVR训练工具中,得到传输参数估算模型.在图像恢复过程中,利用该模型估算出雾霾图像的传输效率参数矩阵t,结合在第2节中得到的天空亮度参数矩阵A,利用式(1)便可恢复出无雾图像J.
4 实验结果与分析
4.1 实验设置
为了更好地评估本文所提算法的性能,将本文算法与其他6种主流图像去雾算法结果进行了对比实验,包括4种基于自然图像先验的去雾算法[2-5]和2种基于深度神经网络的去雾算法[9-10].所提算法与所有对比算法所依赖实验平台均为Matlab R2015b,Intel Core i7-6800k 3.4 GHz,32 GB RAM.
实验使用如下2个测试集来评价不同算法的性能表现:① 327张带有真实景深数据的清晰无雾图像,称为有监督测试集.其中,景深数据由激光测距装置获取.② 149张包含多种户外场景的雾霾图像,称为无监督测试集.有监督测试集用来测试算法的客观评价指标,无监督测试集用来测试算法的主观视觉效果.所有算法在运行时没有加入任何预处理以及额外的参数调整操作.
4.2 客观评价指标分析
由于有监督测试集带有真实景深数据,该部分实验的操作为:利用真实景深数据为无雾图像加入一定程度的雾霾,得到合成雾霾图像.用不同的去雾算法为合成雾霾图像去雾,并将去雾结果与原有的无雾图像做对比,计算SSIM和PSNR两个客观评价指标,结果见表1.由表可知,本文算法的去雾结果与原始无雾图像最接近.
表1 不同算法的SSIM和PSNR值
4.3 视觉效果分析
图3和图4为图像测试集中选取的具有代表性的2组去雾结果.由图3可知,利用文献[3]算法、文献[2]算法和文献[9]算法得到的结果中远处森林部分均偏暗,文献[10]算法去雾程度不足,文献[5]算法整体对比度偏低,图像中右侧金属柜的表面色彩偏移严重.文献[4]算法和本文算法相对具有更好的可视性效果,但与文献[4]算法相比较,利用本文算法得到的结果中图像左侧火车部分对比度更高,且画面整体更明亮.
由图4可知,文献[5]算法去雾不足且存在明显晕轮效应,文献[3]算法和文献[2]算法去雾程度偏重,天空部分噪声被放大,路面色彩过饱和,文献[4]算法和文献[10]算法近景区域表现较好,但远景部分去雾不足.相对来说,文献[9]算法和本文算法的可视性效果更好,但相对于文献[9]算法,本文算法结果中天空区域色彩更自然,近景的路面区域色彩也更接近真实情况.
(a) 原图
(b) 文献[5]算法
(c) 文献[3]算法
(d) 文献[2]算法
(e) 文献[4]算法
(f) 文献[9]算法
(g) 文献[10]算法
(h) 本文算法
(a) 原图
(b) 文献[5]算法
(c) 文献[3]算法
(d) 文献[2]算法
(e) 文献[4]算法
(f) 文献[9]算法
(g) 文献[10]算法
(h) 本文算法
由此可知,所提算法有效地恢复了图像的对比度和颜色饱和度,同时无论是在主观视觉效果方面,还是在结构相似度和峰值信噪比等客观评价指标方面,所提算法均优于现有传统算法.
5 结论
1) 针对传统去雾算法中天空亮度参数估算部分存在的问题,本文提出了基于超像素分割的估算方法,能够更好地适应有强烈光照变化的场景.
2) 在传输效率参数估算部分,本文提取了图像块的多种特征,并利用支持向量机训练了高精度去雾模型,取得了比传统算法更精确的结果.
3) 实验结果表明,所提算法在各种复杂场景下,均能在主观视觉感受和客观评价指标上取得比现有去雾算法更好的结果.下一步研究工作为充分利用上下文语义信息,在图像去雾的过程中加入场景理解.
)
[1] Narasimhan S G, Nayar S K. Vision and the atmosphere[J].InternationalJournalofComputerVision, 2002(3): 233-254. DOI: 10.1023/A:1016328200723.
[2] Kim J H, Jang W D, Sim J Y, et al. Optimized contrast enhancement for real-time image and video dehazing[J].JournalofVisualCommunicationandImageRepresentation, 2013,24(3): 410-425. DOI:10.1016/j.jvcir.2013.02.004.
[3] He K, Sun J, Tang X. Single image haze removal using dark channel prior[J].IEEETransPatternAnalMachIntell, 2011,33(12): 2341-2353. DOI:10.1109/TPAMI.2010.168.
[4] Zhu Q, Mai J, Shao L. A fast single image haze removal algorithm using color attenuation prior[J].IEEETransImageProcess, 2015,24(11): 3522-3533. DOI:10.1109/TIP.2015.2446191.
[5] Tarel J P, Hautiere N. Fast visibility restoration from a single color or gray level image [C]//IEEEInternationalConferenceonComputerVision. Kyoto, Japan, 2009: 2201-2208.DOI: 10.1109/ICCV.2009.5459251.
[6] Gao Y, Hu H M, Wang S, et al. A fast image dehazing algorithm based on negative correction[J].SignalProcessing, 2014,103: 380-398. DOI:10.1016/j.sigpro.2014.02.016.
[7] Li Z, Zheng J. Edge-preserving decomposition-based single image haze removal[J].IEEETransImageProcess, 2015,24(12): 5432-5441. DOI:10.1109/TIP.2015.2482903.
[8] Tang K, Yang J, Wang J. Investigating haze-relevant features in a learning framework for image dehazing[C]//IEEEInternationalConferenceonComputerVisionandPatternRecognition. Columbus, OH, USA,2014: 2995-3012.DOI: 10.1109/CVPR.2014.383.
[9] Cai Bolun,Xu Xiangmin, Jia Kui, et al. DehazeNet: An end-to-end system for single image haze removal[J].IEEETransImageProcess, 2016,25(11): 5187-5198. DOI:10.1109/TIP.2016.2598681.
[10] Ren W, Liu S, Zhang H, et al. Single image dehazing via multi-scale convolutional neural networks [C]//EuropeanConferenceonComputerVision. Amsterdam, the Netherlands, 2016:154-169. DOI:10.1007/978-3-319-46475-6_10.
[11] Achanta R, Shaji A, Smith K, et al. SLIC superpixels compared to state-of-the-art superpixel methods[J].IEEETransPatternAnalMachIntell, 2012,34(11): 2274-2282. DOI:10.1109/TPAMI.2012.120.
[12] He K, Sun J, Tang X. Guided image filtering[J].IEEETransPatternAnalMachIntell, 2013,35(6): 1397-1409. DOI:10.1109/TPAMI.2012.213.