基于雾度分布与自适应衰减的图像去雾算法 下载: 575次
1 引言
作为计算机视觉领域的重要研究问题之一,图像去雾近些年得到了极快发展,并取得了令人满意的结果。图像去雾是对雾霾等天气条件下,成像设备采集到的存在质量受损、清晰度下降等问题的图像进行清晰化处理的过程。
目前,图像去雾算法主要包括基于物理模型的复原去雾方法[1-5,6-10]与基于深度学习的网络去雾方法[11-18]。基于物理模型的复原去雾方法主要依据大气散射模型,利用一些先验条件和假设信息,估计出透射率和大气光,进而得到复原结果。He等[1]提出了暗通道先验(DCP)算法,他们认为大多数室外清晰图像的暗通道接近于0,但事实上清晰图像包含的天空等高亮区域的暗通道并不为0,因此DCP算法在天空等区域失效。Xu等[2]提出了一种结合暗通道和亮通道先验理论的去雾算法,他们通过对大量有雾与无雾图像的观察,发现在大多数有雾图像中,某像素处总会至少有一个颜色通道具有较大的强度,且该强度趋近于无雾图像的大气光强度。虽然该算法取得了不错的复原结果,但是存在透射率估计不准的问题,故复原结果中局部区域仍存在失真现象。Yang等[3]提出了一种利用边缘保持函数代替最小滤波拟合暗通道的去雾算法,该算法利用幂律压缩和线性衰减克服了最小滤波的局限性,进而得到了较为准确的透射率,也取得了不错的复原效果。基于物理模型的复原去雾方法从图像退化的本质出发,取得了较好的复原效果。
近些年随着深度学习的发展,一些研究者将深度学习的方法应用到图像去雾中[11-18]。Cai等[12]提出了一种基于端到端网络模型的去雾算法,通过结合复原算法中的假设和先验信息,进而得到复原结果。Ren等[13]提出了一种多尺度卷积神经网络用以训练透射率,并利用细尺度网络对透射率进行优化,进而得到最终的去雾结果。Li等[14]提出了一种多合一网络模型,该模型中利用多层卷积网络得到了包含透射率与大气光的新函数,实现了图像去雾。Liu等[15]构造了一种残差网络结构,并结合有雾图像及其假设或先验信息,用以估计透射率。虽然基于深度学习的网络去雾算法思想前沿,但是这种方法没有考虑到图像退化的本质,导致训练出的模型对真实环境下的有雾图像复原充满了不确定性。
综上,本文提出了一种基于图像特征的雾度分布模型,利用自适应线性衰减估计透射率,并利用雾度分布进行局部大气光改进,进而得到复原结果。实验表明,所提算法对于薄雾、浓雾图像均具有理想的处理效果,在客观评价中也取得了令人满意的结果。
2 大气散射模型
在计算机视觉系统中,通常以大气散射模型来表现雾天条件下的成像过程,其表达式为
式中:I(x)表示有雾图像;J(x)表示清晰图像;A表示大气光;t(x)表示透射率;J(x)t(x)表示入射光衰减模型,反映了反射光在介质中的衰减结果;A
式中:
式中:β表示大气散射系数,大气光模型认为β与波长无关,一般取常数;d1(x1)表示场景深度;x1表示图像像素坐标。可以发现,透射率与景深呈负相关,衰减关系近似为指数衰减,即
在分布式(CAP)算法[11]中通过学习的方式获得了景深模型的参数,并将景深定义为
式中:a0=0.121779;a1=0.959710;a2=-0.780245;v(x2)为有雾图像亮度分量;s(x2)为有雾图像饱和度分量;x2为图像像素坐标。
3 所提算法
3.1 基于图像特征的雾度分布
通常在雾天图像退化过程中,雾度较大处场景的反射光受悬浮颗粒的影响越大,大气光参与的比例就越大,故雾度较大的图像具有亮度值高、纹理特征不可见、图像饱和度低以及场景深度较大等特征,如
图 1. 有雾图像及其特征分布。 (a)有雾图像;(b)亮度分量;(c)饱和度分量
Fig. 1. Hazy image and its characteristic distribution. (a) Hazy image; (b) brightness component; (c) saturation component
从
式中:W(x)表示雾度分布。在景深雾浓处,除了亮度和饱和度变化明显以外,其纹理信息通常不可见。因此,在景深函数的基础上建立了一种基于图像特征的雾度分布估计模型,其表达式为
式中:F(x)为纹理特征;θ为影响因子,其取值越大,说明纹理对雾度的影响越大。由 (7)式可知,获得图像的纹理是得到雾度分布的关键。纹理特征主要表现了物体表面具有缓慢变化或者周期性变化的表面结构的组织排列属性,一般在包含多个像素点的区域中统计计算。考虑到算法的整体复杂度,利用基于灰度共生矩阵(GLCM)的方法来提取有雾图像的纹理信息。GLCM表示图像像素对的联合概率分布,该矩阵不仅反映了图像灰度在相邻的方向、间隔、变化幅度的综合信息,也体现了相同的灰度级像素之间的位置分布特征,因此利用该方法进行纹理提取较为准确。
在利用GLCM计算图像纹理特征时,将有雾图像转至灰度图,并计算能量(MEne)、熵(MEnt)、对比度(MCon)这三种纹理信息值,三者的表达式分别为
式中:P(a,b)表示图像中某个灰度值到另一个灰度值的概率值;a、b分别是图像的像素坐标。能量主要反映了灰度分布的均匀程度和纹理粗细度,能量越大表示纹理变化越稳定。熵反映了图像灰度分布的混乱程度,熵越大,其灰度分布越混乱。对比度主要反映了图像的清晰度和纹理的沟纹深浅。为了保证雾图纹理信息均匀且不丢失,将上述三种纹理信息的均值作为最终的纹理结构信息,即
利用(5)、 (7)、 (11)式可得雾度分布。为了使雾度分布更加平滑,使用交叉双边滤波对其进行平滑处理。交叉双边滤波利用引导图像的灰度相似性和几何贴近度获取滤波核,以对待处理图像进行滤波,本文中的引导图为有雾图像的亮度分量图。5幅有雾图像(image1、image2、image3、image4、image5)如
图 2. 有雾图像和雾度分布。 (a1)~(a5)有雾图像; (b1)~(b5)雾度分布
Fig. 2. Hazy image and haze distribution. (a1)--(a5) Hazy image; (b1)--(b5) haze distribution
表 1. 不同图像的纹理信息值
Table 1. Texture information values of different images
|
3.2 基于雾度的透射率估计
在大气成像过程中,大气光A、有雾图像I(x)与清晰图像J(x)共平面且长度依次递减,其示意图如
式中:
由于雾度随着景深的增加而变大,故可以认为一幅清晰图像在受到雾气影响时,在近景和景深区域其受到的影响是不同的。对于景深区域,浓雾的影响使得清晰图像的退化更加严重,即在浓雾区域中有雾图像到清晰图像的衰减更加剧烈。受到Wang等[5]线性衰减模型的启发,提出了一种基于雾度分布的线性衰减模型,其表达式为
式中:
式中:Wmax(x4)和Wmin(x4)分别表示x4处的最大雾度分布和最小雾度分布。
由式(14)可知,在雾度较大的区域,W'(x4)具有较大的值,进而
式中:
综上所述,透射率可以表示为
为了消除纹理,对透射率进行双边滤波平滑处理,进而得到本文的透射率。为了验证本文透射率估计的准确性,随机选取RESIDE数据集中的4幅图像进行验证,并将复原结果与文献[ 5]中的结果进行主观对比与定量对比。线性模型准确性验证算法的过程如下。
1) 在相同大气光下,利用所提模型与文献[ 5]中模型分别得到合成雾图的透射率与复原结果。
2) 将利用所提模型得到的复原结果和利用文献[ 5]中模型得到的结果与数据集标签进行均方误差(MSE)求解。
3) 对复原结果进行定量分析,MSE越小越好,峰值信噪比(PSNR)越大越好。
图 4. 利用不同模型得到的合成雾图复原结果的分析。(a1)~(a4)雾图;(b1)~(b4)清晰图;(c1)~(c4)利用文献[ 5]中模型获得的透射率;(d1)~(d4)利用文献[ 5]中模型获得的复原结果;(e1)~(e4)利用所提模型获得的透射率;(f1)~(f4)利用所提模型获得的复原结果
Fig. 4. Analysis of restoration results of synthetic hazy images obtained by different methods. (a1)--(a4) Hazy image; (b1)--(b4) clear image; (c1)--(c4) transmittance obtained by model in Ref.[5]; (d1)--(d4) restoration result obtained by model in Ref.[5]; (e1)--(e4) transmittance obtained by proposed method; (f1)--(f4) restoration result obtained by proposed method
表 2. 定量指标对比
Table 2. Comparison of quantitative indicators
|
3.3 基于雾度的局部大气光改进
在大气散射模型中,大气光也是影响去雾效果的重要参数。大气光模型认为大气光代表着无穷远处的光照信息,故通常用大气光来反映亮度信息。He等[1]将暗通道中排名前0.1%(数量占比)的值对应的坐标在原图中对应的值作为全局大气光,这种估计在有雾图像包含大片高亮区域时失效,将导致复原结果亮度失真。Sun等[6]从亮度分量出发,提出了利用局部大气光代替全局大气光的思想,并取得了较为理想的效果。但是,Sun等仅单纯地将亮度分量作为大气光估计的约束,此时即使形态学处理在消除高亮细节的同时对亮度分量进行了一定的模糊,仍然会保留不需要的成分。
本文在进行雾度估计时,在保留亮度的同时,较为彻底地消除了纹理细节的影响。因为雾度在一定程度上可以反映大气光信息,所以结合雾度分布,对局部大气光进行了改进求解,改进算法的步骤如下。
1) 将有雾图像转至HSV空间,提取亮度分量v(x4),并对其进行形态学处理以消除局部过亮现象,形态学结构元采用圆形结构,结构元半径为s=min(W, H)/15,W和H为雾图尺寸。
2) 利用全局大气光的思想,求取雾度分布的平均亮度信息Wbright(x4),并对其进行形态学处理与交叉双边滤波平滑操作。
3) 求取局部大气光与雾度平均亮度信息Wbright(x4)的均值,即
式中:v'(x4)表示经过形态学处理与交叉双边滤波处理的亮度分量;A1表示改进后的大气光。为了验证所提大气光的有效性,选取真实环境下的两幅有雾图像,将本文大气光与局部大气光[6]进行对比分析,如
图 5. 所提大气光与文献[ 6]中局部大气光的对比。 (a1)(a2)雾图; (b1)(b2)局部大气光; (c1)(c2)利用局部大气光得到的复原结果;(d1)(d2)所提大气光; (e1)(e2)利用所提大气光得到的复原结果
Fig. 5. Comparison of proposed atmospheric light and local atmospheric light in Ref. [6]. (a1) (a2) Hazy image; (b1) (b2) local atmospheric light; (c1) (c2) restoration result obtained by local atmospheric light; (d1) (d2) proposed atmospheric light; (e1) (e2) restoration result obtained by proposed atmospheric light
3.4 图像复原
为了防止透射率下溢出,设定透射率下边界阈值为0.1。根据大气散射模型可得,清晰图像的复原公式为
式中:I1(x4)表示有雾图像; J1(x4)表示恢复的清晰图像。所提算法原理框图如
图 7. 所提算法去雾示意图。(a) 有雾图像;(b) 雾度分布;(c) 透射率;(d) 大气光;(e) 去雾图像
Fig. 7. Schematic diagram of dehazing by proposed method. (a) Hazy image; (b) haze distribution; (c) transmittance; (d) atmospheric light; (e) dehazed image
4 实验结果分析
为了说明所提算法的可行性和有效性,将分别从主观评价和定量分析两个方面进行验证。选取文献[ 1]中的DCP算法、文献[ 5]中的线性衰减算法、文献[ 3]中的去雾算法、文献[ 13]中的MSCNN算法、文献[ 14]中的AOD-Net算法作为对比算法。前三种算法是基于物理模型的复原去雾方法,后两种是目前比较流行的基于深度学习的网络去雾算法。为了说明所提算法的普适性,分别选取自然条件下的6幅自然雾图、2幅浓雾图和RESIDE数据集中的4幅合成雾图进行复原比较。
主观对比可以方便地分析各算法之间的优势与不足。
图 8. 自然雾图的复原结果对比。 (a1)~(a5)原始图像;(b1)~(b5)利用文献[ 1]中算法得到的复原结果;(c1)~(c5)利用文献[ 3]中算法得到的复原结果;(d1)~(d5)利用文献[ 5]中算法得到的复原结果;(e1)~(e5)利用文献[ 13]中算法得到的复原结果; (f1)~(f5)利用文献[ 14]中算法得到的复原结果; (g1)~(g5)利用所提算法得到的复原结果
Fig. 8. Comparison of restoration results of natural hazy images. (a1)--(a5) Original image; (b1)--(b5) restoration result obtained by algorithm in Ref.[1]; (c1)--(c5) restoration result obtained by algorithm in Ref.[3]; (d1)--(d5) restoration result obtained by algorithm in Ref.[5]; (e1)--(e5) restoration result obtained by algorithm in Ref.[13]; (f1)--(f5) restoration result obtained by algorithm in Ref. [14]; (g1)--(g5) restoration result obtained by proposed algorithm
图 9. 浓雾图像的复原结果对比。 (a1)(a2)原始图像;(b1)(b2)利用文献[ 1]中算法得到的复原结果;(c1)(c2)利用文献[ 3]中算法得到的复原结果;(d1)(d2)利用文献[ 5]中算法得到的复原结果;(e1)(e2)利用文献[ 13]中算法得到的复原结果; (f1)(f2)利用文献[ 14]中算法得到的复原结果; (g1)(g2)利用所提算法得到的复原结果
Fig. 9. Comparison of restoration results of dense hazy images. (a1)(a2) Original image;(b1)(b2) restoration result obtained by algorithm in Ref.[1]; (c1)(c2) restoration result obtained by algorithm in Ref.[3]; (d1)(d2) restoration result obtained by algorithm in Ref.[5]; (e1)(e2) restoration result obtained by algorithm in Ref.[13]; (f1)(f2) restoration result obtained by algorithm in Ref. [14]; (g1)(g2) restoration result obtained by proposed algorithm
表 3. 自然雾图情况下各算法的指标对比
Table 3. Comparison of indicators of each algorithm in case of natural hazy image
|
表 4. 测试集图像情况下各算法的指标对比
Table 4. Comparison of indicators of each algorithm in case of test set image
|
图 10. 合成雾图的复原结果对比。 (a1)~(a4)原始图像;(b1)~(b4)利用文献[ 1]中算法得到的复原结果;(c1)~(c4)利用文献[ 3]中算法得到的复原结果;(d1)~(d4)利用文献[ 5]中算法得到的复原结果;(e1)~(e4)利用文献[ 13]中算法得到的复原结果; (f1)~(f4)利用文献[ 14]中算法得到的复原结果; (g1)~(g4)利用所提算法得到的复原结果
Fig. 10. Comparison of restoration results of synthetic hazy images. (a1)--(a4) Original image; (b1)--(b4) restoration result obtained by algorithm in Ref.[1]; (c1)--(c4) restoration result obtained by algorithm in Ref.[3]; (d1)--(d4) restoration result obtained by algorithm in Ref.[5]; (e1)--(e4) restoration result obtained by algorithm in Ref.[13]; (f1)--(f4) restoration result obtained by algorithm in Ref. [14]; (g1)--(g4) restoration result obtained by proposed algorithm
从
式中:n1、n0分别表示有雾图像和无雾图像的可见边;N表示总像素;i为任意像素;M表示无雾图像可见边集合;fi和gi分别是有雾图像和清晰图像。对于测试集图像,随机选取RESIDE测试集中的10幅图像进行验证分析,选择PSNR与结构相似性(SSIM)为客观指标[20]。在以上6种指标中,除时间外,其他指标越大越好。自然雾图复原结果中各算法的客观指标对比如
从
5 结论
雾天降质图像的清晰化处理一直是计算机视觉领域重要的研究问题。以雾度较大区域具有高亮度、低对比度、纹理模糊等特点为依据,结合GLCM的方式,构造了一种基于图像特征的雾度分布线性估计模型。从大气散射模型的空间关系出发,在线性传输的基础上考虑了不同雾度区域传输速率的差异,建立了一种以雾度分布为约束的线性衰减函数,并得到了透射率估计。在测试集上的验证结果进一步证明了所提模型的可行性。在局部大气光的基础上,以雾度平均亮度信息为约束,得到了局部大气光的优化结果。实验结果表明,所提算法在主客观对比分析中均取得了较好的评价。
[2] Xu YS, Guo XQ, Wang HY, et al.Single image haze removal using light and dark channel prior[C] //IEEE/CIC International Conference on Communications in China (ICCC), July 27-29, 2016, Chengdu, China.New York: IEEE Press, 2016: 16410299.
[3] Yang Y, Wang Z W. Haze removal: push DCP at the edge[J]. IEEE Signal Processing Letters, 2020, 27: 1405-1409.
[4] Meng GF, WangY, Duan JY, et al.Efficient image dehazing with boundary constraint and contextual regularization[C] //2013 IEEE International Conference on Computer Vision, December 1-8, 2013, Sydney, NSW, Australia.New York: IEEE Press, 2013: 617- 624.
[5] Wang W C, Yuan X H, Wu X J, et al. Fast image dehazing method based on linear transformation[J]. IEEE Transactions on Multimedia, 2017, 19(6): 1142-1155.
[6] Sun W, Wang H, Sun C H, et al. Fast single image haze removal via local atmospheric light veil estimation[J]. Computers & Electrical Engineering, 2015, 46: 371-383.
[7] MeiW, LiX. Single image dehazing using dark channel fusion and haze density weight[C] //2019 IEEE 9th International Conference on Electronics Information and Emergency Communication (ICEIEC), July 12-14, 2019, Beijing, China.New York: IEEE Press, 2019: 579- 585.
[8] 郭翰, 徐晓婷, 李博. 基于暗原色先验的图像去雾方法研究[J]. 光学学报, 2018, 38(4): 0410002.
[9] 刘增力, 付钰. 基于透射率自适应约束修正的图像去雾算法[J]. 激光与光电子学进展, 2020, 57(16): 161003.
[10] 金仙力, 张威, 刘林峰. 基于引导滤波和自适应容差的图像去雾算法[J]. 通信学报, 2020, 41(5): 27-36.
Jin X L, Zhang W, Liu L F. Image defogging algorithm based on guided filtering and adaptive tolerance[J]. Journal on Communications, 2020, 41(5): 27-36.
[11] Zhu Q S, Mai J M, Shao L. A fast single image haze removal algorithm using color attenuation prior[J]. IEEE Transactions on Image Processing, 2015, 24(11): 3522-3533.
[12] Cai B L, Xu X M, Jia K, et al. DehazeNet: an end-to-end system for single image haze removal[J]. IEEE Transactions on Image Processing, 2016, 25(11): 5187-5198.
[13] Ren WQ, LiuS, ZhangH, et al. Single image dehazing via multi-scale convolutional neural networks[M] //Leibe B, Matas J, Sebe N, et al. Computer vision-ECCV 2016. Lecture notes in computer science. Cham: Springer, 2016, 9906: 154- 169.
[14] Li BY, Peng XL, Wang ZY, et al.AOD-net: all-in-one dehazing network[C] //2017 IEEE International Conference on Computer Vision (ICCV), October 22-29, 2017, Venice, ItalyNew York: IEEE Press, 2017: 4780- 4788.
[15] Liu R S, Fan X, Hou M J, et al. Learning aggregated transmission propagation networks for haze removal and beyond[J]. IEEE Transactions on Neural Networks and Learning Systems, 2019, 30(10): 2973-2986.
[16] QianW, ZhouC, Zhang DY. CIASM-net: a novel convolutional neural network for dehazing image[C] //2020 5th International Conference on Computer and Communication Systems (ICCCS), May 15-18, 2020, Shanghai, ChinaNew York: IEEE Press, 2020: 329- 333.
[17] Li C Y, Guo C L, Guo J C, et al. PDR-Net: perception-inspired single image dehazing network with refinement[J]. IEEE Transactions on Multimedia, 2020, 22(3): 704-716.
[18] Zhang J, Tao D C. FAMED-Net: a fast and accurate multi-scale end-to-end dehazing network[J]. IEEE Transactions on Image Processing, 2020, 29: 72-84.
[19] 郭璠, 蔡自兴. 图像去雾算法清晰化效果客观评价方法[J]. 自动化学报, 2012, 38(9): 1410-1419.
Guo F, Cai Z X. Objective assessment method for the clearness effect of image defogging algorithm[J]. Acta Automatica Sinica, 2012, 38(9): 1410-1419.
[20] 陈永, 郭红光, 艾亚鹏. 基于多尺度卷积神经网络的单幅图像去雾方法[J]. 光学学报, 2019, 39(10): 1010001.
杨燕, 张金龙. 基于雾度分布与自适应衰减的图像去雾算法[J]. 激光与光电子学进展, 2021, 58(22): 2210012. Yan Yang, Jinlong Zhang. Image Dehazing Algorithm Based on Haze Distribution and Adaptive Attenuation[J]. Laser & Optoelectronics Progress, 2021, 58(22): 2210012.