基于高斯衰减的自适应线性变换去雾算法 下载: 1064次
1 引言
在雾、霾等天气条件下,空气中悬浮着大量的小水滴、浮尘颗粒等介质。这些介质对光线具有散射和折射作用,导致成像设备获得的图像对比度和饱和度下降,可视效果较差,也不能满足人们后续对图像的处理需求[1]。因此,从有雾图像中复原出视觉效果良好的图像具有十分重要的研究意义[2]。
目前,图像去雾算法主要分为图像增强算法和图像复原算法两大类。图像增强算法以直方图均衡[3]和Retinex算法[4]为代表,其主要目的是满足人眼的视觉感知,并在不考虑降解模型的情况下为计算机识别提供便利。图像增强算法不但无法从本质上实现图像去雾,而且容易丢失图像局部细节信息并引入相应噪声。图像复原算法根据大气散射物理模型,利用先验知识或假设,通过求解模型中的未知量复原出无雾图像。这类算法具有一定的内在优势,是当前图像去雾领域的主流算法。近年来,基于假设或先验知识的图像去雾算法的研究取得了重大突破。He等[5]通过对大量清晰无雾图像的观察和统计,提出暗通道先验理论,并利用软抠图算法细化透射率,最终复原出无雾图像。但是,暗通道先验理论在图像中的大片天空等明亮区域失效,导致透射率估计不准确,且软抠图算法时间复杂度较高。Meng等[6]提出了基于边界约束的去雾算法,通过牺牲图像的部分细节特征可以获取效果较好的无雾图像。虽然该方法复原的图像细节有所增多,但是所回复的图像出现了明显的偏色现象。Sun等[7]提出一种局部大气光估计算法,有效地改善了暗通道先验理论中全局大气光估计不足所造成的影响,但其对含大面积明亮区域的图像复原效果不佳,同时所复原的图像过饱和。杨燕等[8]提出一种基于边缘保持的自适应高斯衰减图像去雾算法,该方法对边缘与非边缘区域进行了分离,利用邻域内像素点的空间距离构建自适应高斯函数平滑非边缘区域,有效地抑制了景深突变处的Halo效应,但该方法仍然不能有效地估计图像中大面积天空等明亮区域的透射率。Zhu等[9]通过观察有雾图像在HSV[H表示色调,S表示饱和度,V表示亮度]颜色空间的分布情况,提出利用亮度和饱和度的差值估计景深,并通过建立线性模型对该方法进行了验证。该方法简单有效,但容易受训练样本的影响。Wang等[10]假设在有雾图像和无雾图像的最小值通道之间存在一种线性关系并提出一种基于线性变换的图像去雾算法。该方法能够很好地处理景深突变的边缘区域,但对明亮区域透射率估计过小,需要一定的后处理操作。最近,基于机器学习的去雾方法被提出,该方法利用深度学习神经网络可更好地提取与雾相关的特征并进行透射率估计。Cai等[11]提出端到端深度学习去雾算法,并提出双边线性修正的方法,提高了恢复图像的质量。Ren等[12]提出多尺度卷积神经网络图像去雾算法,利用多级神经网络训练图像特征信息,但在训练神经网络时多采用合成数据集,因此不适用于不同类型的图像。该方法模型复杂,同时受到数据集的约束,目前在去雾领域发展有限。
针对暗通道先验理论中明亮区域透射率估计不足以及景深边缘处出现Halo效应的问题,本文提出一种基于高斯衰减的自适应线性变换图像去雾算法。首先,利用线性变换约束有雾图像的最小值通道来近似估计无雾图像最小值通道操作。其次,通过高斯函数衰减有雾图像的最小值通道,对大面积天空等明亮区域透射率进行自适应补偿,以解决透射率估计不足的问题。最后,利用交叉双边滤波器消除透射率纹理效应,得到局部平滑且边缘保持良好的优化透射率。本文采用局部大气光策略估计大气光值,避免了由于全局大气光值估计不准确引起的误差,最终结合大气散射模型复原出无雾图像。
2 暗通道先验理论
在计算机视觉和计算机图形中,大气散射模型[13-14]被广泛用于描述有雾图像信息,
式中:
暗通道先验理论是He等[5]通过对大量清晰无雾的户外图像进行数理统计后得到的一个先验规律。暗通道先验理论表明:在绝大多数无雾图像的非天空区域,红、绿、蓝三个颜色通道中至少存在一个颜色通道的值很低,趋近于0,即
式中:
假设大气光值
式中:
暗通道先验理论采用局部最小值滤波(15×15的滤波窗口)方法,该滤波方法可能导致暗通道图像的像素值在局部区域内是一个常数。如果一个像素点
3 算法
针对暗通道先验理论中明亮区域透射率估计不足及景深边缘处出现Halo效应的问题,提出一种基于高斯衰减的自适应线性变换图像去雾算法,算法流程如
图 2. 所提算法效果图。(a)有雾图像;(b)自适应线性变换;(c)局部大气光值;(d)粗略透射率;(e)优化透射率;(f)复原图像
Fig. 2. Effect images of proposed algorithm. (a) Hazy image; (b) adaptive linear transformation; (c) local atmospheric optical value; (d) rough transmittivity; (e) optimal transmittivity; (f) restored image
3.1 透射率估计
3.1.1 自适应线性变换
假设大气光值
为了消除暗通道先验理论中最小值滤波引起的Halo效应,从基于像素的角度考虑,采用逐像素处理的方法可得
在雾天条件下,大气光对图像成像的影响是随着场景到观察点距离的增大而增大。从视觉效果来看,随着雾浓度的增加,图像的亮度逐渐增加;随着景深越大,有雾图像的像素值越大。根据文献[ 10]中的线性变换理论,在有雾图像和无雾图像的最小值通道之间存在一种线性关系,即
通过(7)式可建立有雾图像与无雾图像的最小值通道之间的线性变换模型为
式中:
式中:
因此,在[
假设大气光值
式中:
为了直观地说明
图 4. 仿真实验比较。(a)有雾图像;(b) μ=0.2;(c) μ=0.4;(d) μ=0.6;(e) μ=0.8;(f) μ=1.0
Fig. 4. Comparison of simulation experiments. (a) Hazy image; (b) μ=0.2; (c) μ=0.4; (d) μ=0.6; (e) μ=0.8; (f) μ=1.0
对于存在大片明亮区域的无雾图像,其暗通道值远大于0,导致暗通道先验理论在估计明亮区域的透射率时失效。由(10)式得到的透射率会随着
式中:
因此,可得到粗略透射率为
式中:参数
3.1.2 优化透射率
本文算法是从基于像素的角度考虑,所得的透射率在很大程度上受到其自身灰度值的影响。交叉双边滤波器是空域和值域滤波器的结合,它不仅能够消除纹理效应,还能够保持图像的边缘信息。所以,为了得到更为平滑的透射率,引入交叉双边滤波器[7]对透射率进一步优化。最终的优化透射率为
式中:
从
图 5. 透射率对比图。(a)有雾图像;(b)文献[ 5]中的方法;(c)粗略透射率;(d)优化透射率
Fig. 5. Comparison of transmittivity. (a) Hazy image; (b) method in Ref. [5]; (c) rough transmittivity; (d) optimal transmittivity
3.2 局部大气光估计
大气光值
首先对有雾图像求取最大值通道得到
3.3 图像复原
以上分析可确定透射率
图 6. 基于局部大气光值的效果图。(a)有雾图像;(b)最大通道图;(c)形态学闭操作;(d)交叉双边滤波结果
Fig. 6. Effect images based on local atmospheric optical value. (a) Hazy image; (b) map of maximum channel; (c) morphologically closed operation; (d) cross-bilateral filtering result
式中:为了防止分母趋于0,取
4 实验效果对比分析
为了验证所提算法的有效性,对取经典的图像去雾算法与本文所提算法进行实验对比,从主观评价和客观评价两个方面进行比较分析。本文算法是在Matlab R2014Ra的环境下运行,计算机的CPU为Intel(R) Core(TM) i7-7500U,CPU主频为2.70 GHz,计算机内存4.00 GB,操作系统为64位Windows 10。
4.1 主观评价
主观评价即人眼所看到的视觉效果。主观评价往往具有一定的片面性,但是可以快速看出复原图像效果的好坏。为了验证本文算法的有效性,分别与He等[5]提出的暗通道先验理论、Meng等[6]提出的边界约束算法、Sun等[7]提出的局部大气光遮罩估计算法、杨燕等[8]提出的基于边缘保持的自适应高斯衰减图像去雾算法以及Zhu等[9]提出的颜色衰减先验算法进行了比较,实验结果如
图 7. 实验结果对比。(a)有雾图像;(b)文献[ 5]中的方法;(c)文献[ 6]中的方法;(d)文献[ 7]中的方法;(e)文献[ 8]中的方法;(f)文献[ 9]中的方法;(g)本文方法
Fig. 7. Comparison of experimental results. (a) Hazy image; (b) method in Ref. [5]; (c) method in Ref. [6]; (d) method in Ref. [7]; (e) method in Ref. [8]; (f) method in Ref. [9]; (g) proposed method
4.2 客观评价
主观评价具有一定的片面性,客观评价则有一定的理论支撑,因此具有一定参考性。为了客观地验证本文算法的有效性,采用无参考的图像质量评估方法[17-18],将可见边集合数(
式中:
图 8. 客观评价。(a)可见边数;(b)归一化平均梯度;(c)饱和像素点个数;(d)运行时间
Fig. 8. Objective evaluation. (a) Number of visible edges; (b) normalized average gradient; (c) number of pixels in saturation point; (d) running time
从
5 结论
暗通道先验理论在图像景深突变的边缘处会出现Halo效应,并且对图像中的天空、强光源或白色物体等明亮区域的透射率估计不足。针对上述问题,从基于像素角度出发,通过将有雾图像的最小值通道与线性变换理论相结合,近似估计无雾图像的最小值通道,从而消除了由于局部最小值滤波引起的Halo效应。通过高斯函数衰减有雾图像的最小值通道对图像中明亮区域的透射率进行自适应补偿,从而得到粗略透射率。最后,采用交叉双边滤波器对透射率进行优化。本文算法复原的图像色彩自然,细节明显,并且在客观评价中也具有很大的优势。但是本文算法依然存在不足,对于高斯函数标准差和控制因子的选取有一定的局限性。自适应地选取标准差和控制因子,进一步提高去雾效果将是接下来的研究重点。
[1] 代书博, 徐伟, 朴永杰, 等. 基于暗原色先验的遥感图像去雾方法[J]. 光学学报, 2017, 37(3): 0328002.
[4] 杨爱萍, 白煌煌. 基于Retinex理论和暗通道先验的夜间图像去雾算法[J]. 激光与光电子学进展, 2017, 54(4): 041002.
[6] Meng GF, WangY, Duan JY, et al. Efficient image dehazing with boundary constraint and contextual regularization[C]∥IEEE International Conference on Computer Vision, December 1-8, 2013, Sydney, NSW, Australia. New York: IEEE, 2013: 617- 624.
[8] 杨燕, 张国强, 李一菲, 等. 基于边缘保持的自适应高斯衰减去雾算法[J]. 激光与光电子学进展, 2018, 55(8): 081004.
[12] Ren WQ, LiuS, ZhangH, et al. Single image dehazing via multi-scale convolutional neural networks[C]∥Leibe B, Matas J, Sebe N, et al. Computer Vision - ECCV 2016. Cham: Springer, 2016, 9906: 154- 169.
[13] 郭翰, 徐晓婷, 李博. 基于暗原色先验的图像去雾方法研究[J]. 光学学报, 2018, 38(4): 0410002.
[14] 杨燕, 陈高科. 基于光补偿和逐像素透射率的图像复原算法[J]. 通信学报, 2017, 38(5): 48-56.
[15] SulamiM, GlatzerI, FattalR, et al. Automatic recovery of the atmospheric light in hazy images[C]∥IEEE International Conference on Computational Photography(ICCP), May 2-4, 2014, Santa Clara, CA, USA. New York: IEEE, 2014: 1- 11.
[17] 刘坤, 毕笃彦, 王世平, 等. 基于稀疏特征提取的单幅图像去雾[J]. 光学学报, 2018, 38(3): 0310001.
姜沛沛, 杨燕. 基于高斯衰减的自适应线性变换去雾算法[J]. 激光与光电子学进展, 2019, 56(10): 101002. Peipei Jiang, Yan Yang. Adaptive Linear Transformation Image Dehazing Algorithm Based on Gaussian Attenuation[J]. Laser & Optoelectronics Progress, 2019, 56(10): 101002.