东北大学 信息科学与工程学院,辽宁 沈阳 110819
收稿日期:2021-11-23
基金项目:国家自然科学基金资助项目(51634002)。
作者简介:孟红记(1970-),女,辽宁沈阳人,东北大学副教授。
摘要:目前主流图像去雾算法输出的结果图像存在颜色失真、边缘模糊的问题.为改善上述问题,提出一种基于深度学习的图像去雾算法,所提算法由两个模块构成:注意力特征融合模块和雾霾模型参数估计模块.注意力特征融合模块用于充分提取雾霾图像的颜色、边缘特征;基于稠密连接空洞卷积自编码器的雾霾模型参数估计模块用于估计雾霾模型的参数,改善网络退化的问题.在浓雾图像、薄雾图像数据集上的实验表明,本文提出的算法有效地实现了图像去雾,与主流的图像去雾算法相比具有更高的结构相似性(SSIM),更低的均方误差(mean-square error, MSE)和边缘误差eedge.
关键词:注意力机制特征融合稠密连接空洞卷积自编码器
Image Dehazing Algorithm Based on Attentional Feature Fusion and Dense Network
MENG Hong-ji, LIU Pei-yan, HU Zhen-wei
School of Information Science & Engineering, Northeastern University, Shenyang 110819, China
Corresponding author: MENG Hong-ji, E-mail: menghongji@ise.neu.edu.cn.
Abstract: There are problems of distorted colors and blurred edges in the results of the state-of-the-art image dehazing algorithms. For solving the problems, an image dehazing algorithm based on deep learning is proposed. The proposed algorithm consists of two modules: attentional feature fusion module and haze model parameter estimation module. Attentional feature fusion module is designed to extract the color and edge features of hazy images sufficiently. Haze model parameter estimation module based on densely connected dilated convolution auto encoder is used to estimate the parameter of haze model and deal with the network degeneration in image dehazing. Experiments on images with thin haze and thick haze show that the proposed algorithm performs well on image dehazing, and the proposed dehazing algorithm has higher structural similarity (SSIM), lower mean-square error (MSE), lower edge error eedge than the state-of-the-art image dehazing algorithms.
Key words: attentional mechanismfeature fusiondensely connecteddilated convolutionauto encoder
在常见的雾霾天气下,雾霾粒子对可见光的散射会降低相机等设备采集到图像的对比度,使图像颜色失真,进而降低了目标检测、图像语义分割等计算机视觉任务的准确度.因此,图像去雾是具有现实意义的课题.
图像去雾算法主要分为两大类,基于图像增强的算法、基于物理模型(Narasimhan大气散射模型[1])的方法.基于图像增强的算法根据视觉感受对图像进行处理.例如,直方图均衡化算法、Rizzi等[2]提出的ACE算法,都是基于图像增强的算法,当图像中雾霾比较薄的时候,这类方法能取得很好的效果.然而,基于图像增强的算法没有考虑雾霾使图像退化的物理原因,因此不能从本质上进行图像去雾,而且此类方法难以处理浓雾.基于物理模型的方法根据Narasimhan提出的大气散射模型[1],结合先验知识或神经网络估计大气散射模型中的参数,进而估计与雾霾图像对应的无雾图像.例如,He等[3]提出了基于暗通道先验的单张图像去雾算法.暗通道先验(dark channel prior, DCP)算法假设暗通道的像素值趋于零,推导出透射率的计算公式,DCP算法在大部分雾霾图像上达到了良好的效果,然而图像白色区域或浅色区域在暗通道中的像素值不趋于0,DCP算法按照0进行计算,因此当图像含有白色物体或浅色区域时,会出现色彩失真、光晕效应.
近年来,深度学习被应用于基于大气散射模型的图像去雾.例如,Cai等[4]提出使用大气环境光先验及神经网络估计透射率进而估计无雾图像的算法DehazeNet.在对大气环境光先验估计准确的前提下,DehazeNet可以有效估计无雾图像,但对大气环境光先验的估计在少数情况下存在偏差,降低了算法的准确性,由于DehazeNet网络层数较深,少数情况下冗余的网络学习的参数使网络不能恒等映射,导致网络退化,进而导致结果图像颜色失真、边缘模糊.Li等[5]提出AOD-Net网络,并对大气散射模型进行了扩展(本文将扩展后的模型称为雾霾模型),引入了一个新变量,使用卷积网络估计这个变量,进而估计无雾图像,不再需要先验知识.AOD-Net在大多数情况下能得到理想的去雾效果,但在少数情况下,由于在特征提取时没有融合雾霾图像局部、全局的颜色和边缘特征,提取到的特征缺失了信息,导致结果图像中颜色失真、边缘模糊.
由上述分析可知,当前主流的基于深度学习的算法结果图像存在颜色失真、边缘模糊的问题,原因如下:算法提取雾霾图像颜色、边缘特征时缺失了部分特征信息;当网络层数较深时,冗余的网络会学习不能使网络恒等映射的参数,导致网络退化.本文通过基于注意力机制的特征融合模块动态地确定不同特征图的权重,可以改善提取雾霾图像特征时颜色、边缘特征信息缺失的问题;通过基于稠密连接空洞卷积自编码器的雾霾模型参数估计模块来估计雾霾模型中的参数,可以改善网络退化的问题.分别使用结构相似性(SSIM),eedge和均方误差(MSE)评价本文算法输出的图像与真实无雾图像颜色相似程度、边缘的误差和像素的均方误差.实验表明,本文提出的算法有效实现了图像去雾,并改善了颜色失真、边缘模糊的问题.
1 雾霾图像的模型1.1 大气散射模型及雾霾模型图 1为大气散射模型示意图,光源为太阳和大气环境光,雾霾粒子对光的散射导致图像降质.
图 1(Fig. 1)
图 1 大气散射模型示意图Fig.1 Diagram of atmospheric scattering model |
经典的大气散射模型由Narasimhan提出,无雾霾图像与有雾霾图像的关系如下:
(1) |
(2) |
由公式(1)推导出:
(3) |
(4) |
(5) |
(6) |
1.2 雾霾图像的颜色失真与边缘模糊根据三基色原理,任何颜色都可以由红、绿、蓝三基色按照不同比例混合而成,在RGB色彩空间,可以将任何一个彩色的数字图像分解为R, G, B三个通道.
在雾霾天气下,可以根据式(1)表示雾霾对R, G, B通道像素值的影响:
(7) |
(8) |
(9) |
图像的边缘由像素函数一阶差分的极值区域表示,差分计算公式为
(10) |
1.3 基于深度学习的去雾算法存在问题目前主要采用基于串行或者并行卷积网络的两种类型深度学习方法进行去雾,这两种算法均未能有效解决颜色失真、边缘模糊的问题.原因之一:在图像特征提取时只采用串行的卷积核;或采用并行的卷积核但人为固定了不同卷积核输出特征图的权重,见图 2.
图 2(Fig. 2)
图 2 两类常用的去雾方法Fig.2 Two types of commonly used dehazing methods (a)—串行的卷积核;(b)—并行的卷积核. |
图 2中Conv n表示第n个卷积核,根据图 2a,若特征提取只采用串行的卷积核,卷积核中趋于0的元素与雾霾图像中对应位置的像素值乘积趋于0,使卷积结果缺失了蕴含在这些像素值中的特征信息.根据图 2b,采用并行的卷积核得到的不同特征图可能有互补的信息,但人为固定不同特征图的权重导致不能有效补偿缺失的信息.
串行或者并行卷积的深度学习算法未能有效解决颜色失真、边缘模糊问题的另一个原因:模型参数估计网络冗余的层难以拟合恒等映射,导致网络退化,图 3为网络退化的示意图.
图 3(Fig. 3)
图 3 网络退化的示意图Fig.3 Diagram of network degradation |
在图 3中,假定当前最优网络g1有k1层,在该网络后面加入冗余的卷积层,得到k2层的网络g2,如果冗余的k2-k1层网络学习到的参数能使g2的输出与g1的输出相同,即这些冗余的层拟合恒等映射,则层数更深的网络效果不会变差.然而实验[6]表明随网络层数加深,会出现网络准确度下降的问题,这是由于冗余的网络层难以拟合恒等映射,使网络退化.
2 基于注意力特征融合稠密自编码器的算法本文提出基于深度学习的算法,由两个模块组成:注意力特征融合模块;基于稠密连接空洞卷积自编码器的雾霾模型参数估计模块.本文提出的算法的结构见图 4.
图 4(Fig. 4)
图 4 本文提出算法的结构Fig.4 Structure of the proposed algorithm |
2.1 基于注意力机制的雾霾图像特征融合针对提取雾霾图像特征时信息缺失的问题,本文引入特征融合[7]与注意力机制[8]的思想,并设计基于注意力机制的特征融合模块,学习雾霾图像不同特征图的权重,其结构见图 5,图中的Conv表示卷积操作,AM(attentional module)表示特征融合模块中的注意力模块.
图 5(Fig. 5)
图 5 注意力特征融合模块Fig.5 Attentional feature fusion module |
输入该模块的雾霾图像分别经过大小不同的并行的卷积核Conv 1, Conv 2的卷积(本文在训练时将Conv 1, Conv 2设置为尺寸分别是3×3, 5×5的卷积核),得到两组不同的特征图,将特征图进行填充操作,通过在图像周围填充像素值,保证图像周围的信息不会随着后续网络的卷积丢失,填充的结果分别输入到注意力模块AM中.AM计算雾霾图像不同特征图对应的权重,并把特征图加权求和输出.图 6为AM的内部结构.
图 6(Fig. 6)
图 6 AM的内部结构Fig.6 Structure of AM |
输入到AM的两个特征图X, Y相加后,经过卷积核尺寸为1×1的卷积,并进行批归一化,由激活函数ReLU计算的结果,再经过卷积和批归一化,输入到Sigmod函数.
由Sigmod函数计算特征X对应的权重矩阵WX,特征Y对应的权重矩阵WY,将特征X, Y对应元素加权求和得到雾霾图像特征融合的结果AMoutput.AM模块输出的计算公式如下:
(11) |
2.2 雾霾模型参数估计模块的设计针对雾霾模型参数估计网络退化的问题,本文在自编码器网络中引入稠密连接[9]、空洞卷积[10]的思想,并设计基于稠密连接空洞卷积自编码器的参数估计网络, 见图 7.
图 7(Fig. 7)
图 7 雾霾模型参数估计模块Fig.7 Haze model parameter estimation module |
图 7中,灰色方块表示稠密连接的卷积层,黑色方块表示空洞卷积层,每层网络使用ReLU作为激活函数.该模块的输入经过稠密连接的卷积网络后,被空洞卷积层降维,然后在解码器反卷积,输出张量K(x).表 1为自编码器模块的具体结构,表中的Zn表示参数估计模块中第n层网络的输出结果.
表 1(Table 1)
表 1 稠密自编码器网络的具体结构Table 1 Structure of dense connected auto-encoder
| 表 1 稠密自编码器网络的具体结构 Table 1 Structure of dense connected auto-encoder |
稠密连接网络中任意两层都有直接的连接,可强化特征传输,用以改善雾霾模型参数估计网络退化的问题.图 8是稠密连接结构的示意图.
图 8(Fig. 8)
图 8 稠密连接结构示意图Fig.8 Diagram of densely connected layers |
假设Hn为稠密网络第n层从输入到输出的变换函数,h0为稠密网络第l层(层1)的输入,不同层的输出被拼接在一起,第n层输出公式为
(12) |
(13) |
(14) |
(15) |
图 9为空洞卷积示意图, 图中每一个小格代表一个像素,灰色区域是卷积核的感受野.
图 9(Fig. 9)
图 9 空洞卷积Fig.9 Dilated convolution (a)—rrate=1;(b)—rrate=2. |
在图 9的例子中,原始卷积核边长k=2,由式(15)计算可知,图 9b中感受野是一个5×5的区域.
2.3 基于雾霾模型的无雾图像估计已知雾霾图像I(x),根据文中提出的方法估计参数K(x).根据雾霾模型式(5),可以估计无雾图像J(x),作为算法的输出.
2.4 损失函数的选取选用均方误差(MSE)作为训练网络时的损失函数,MSE的公式为
(16) |
3 实验及实验结果3.1 实验环境及超参数设置训练使用的雾霾图像,由NYU2数据集[11]提供的无雾图像和透射率图像生成.合成雾霾图像的方法是设置不同的大气散射光和散射系数值,根据式(1)计算雾霾图像.
测试使用的数据选自RESIDE数据集[12].
3.2 图像去雾算法效果评价本文通过主观评价和客观评价验证图像去雾算法的效果.
3.2.1 主观评价选取典型的雾霾图像,使用本文算法进行图像去雾,将效果与经典的去雾方法DCP,DehazeNet,AOD-Net的结果比较,观察图像中颜色是否失真,边缘是否模糊,见图 10.
图 10(Fig. 10)
图 10 不同算法去雾效果的比较Fig.10 Comparison of dehazing effects of different algorithms (a)—雾霾图像;(b)—DCP算法结果图像;(c)—DehazeNet算法结果图像;(d)—AOD-Net算法结果图像;(e)—本文算法结果图像;(f)—真实无雾图像. |
由图 10可知,DCP算法结果图像中水立方、天空的颜色与真实无雾图像有较大差别,而树木、草坪的颜色与真实无雾图像接近,边缘清晰;AOD-Net算法和DehazeNet算法的结果中,树木、草坪的颜色与真实无雾图像有较大差异,且边缘比真实无雾图像模糊;本文算法的结果与真实无雾图像最接近,树木、草坪的颜色和边缘与真实无雾图像接近.由此可见,本文算法有效改善了当前主流图像去雾算法颜色失真、边缘模糊的问题.
图 11选取了另一组典型的雾霾图像,图像中有丰富的颜色、边缘信息,使用本文算法处理,结果与真实无雾图像进行比较.
图 11(Fig. 11)
图 11 本文算法对其他图像的去雾效果Fig.11 Dehazing effects of the proposed algorithm on other images (a)—雾霾图像;(b)—本文算法结果图像;(c)—真实无雾图像. |
从图 11可看出,本文提出的图像去雾算法有效计算出了图像中植物、路灯和建筑物的边缘、颜色.
3.2.2 客观评价为了定量评价图像去雾算法对雾霾图像中物体颜色、边缘估计的准确度,选取SSIM,eedge,MSE作为客观评价指标.
根据Retinex理论,物体的颜色是由反射能力决定的.SSIM指标通过分离照度,衡量物体反射能力,评价图像颜色的相似度.图像p,q的SSIM计算公式为
(17) |
图像的梯度可以反映图像的边缘信息,因此使用梯度图像的均方误差作为图像边缘误差的评价指标:
(18) |
(19) |
(20) |
(21) |
MSE为衡量两张图像像素的均方误差,MSE越小,两张图像像素误差越小.
在测试集(20组浓雾图像,15组薄雾图像)上分别计算不同算法处理结果与真实无雾图像的平均SSIM,eedge,MSE,如表 2~表 4所示.
表 2(Table 2)
表 2 平均SSIMTable 2 Average SSIM
| 表 2 平均SSIM Table 2 Average SSIM |
表 3(Table 3)
表 3 平均eedgeTable 3 Average eedge
| 表 3 平均eedge Table 3 Average eedge |
表 4(Table 4)
表 4 平均MSETable 4 Average MSE
| 表 4 平均MSE Table 4 Average MSE |
从表 2可以看出,本文算法的平均SSIM大于其他三种算法,因此,本文提出的图像去雾算法得到的结果图像颜色更准确.
从表 3可以看出,本文算法结果的eedge在R通道和G通道上均小于AOD-Net算法结果,因此本文提出的图像去雾算法得到的结果图像边缘更清晰.
从表 4可以看出,本文提出的算法具有最低的平均MSE,表明本文算法得到的无雾图像与真实无雾图像对应像素值的均方误差更小.
客观评价表明,本文算法有效改善了雾霾图像颜色失真、边缘模糊的问题.通过统计,本文算法处理分辨率为413×550的RGB8图像的平均时间为0.069 1 s,可以实时处理图像.
4 结语针对当前主流图像去雾算法输出的图像存在颜色失真、边缘模糊的问题,本文分析了原因并提出了一种基于深度学习的图像去雾算法.采用注意力特征融合模块,能充分提取雾霾图像的特征;采用基于稠密连接空洞卷积自编码器的雾霾模型参数估计模块,能改善网络退化的问题,提升运算速度.实验表明,本文算法在有效估计无雾图像的同时,改善了颜色失真、边缘模糊的问题,可应用于实时图像去雾.
参考文献
[1] | Narasimhan S G, Nayar S K. Vision in bad weather[C] //Proceedings of the IEEE International Conference on Computer Vision. Corfu: IEEE, 1999: 820-827. |
[2] | Rizzi A, Gatta C, Marini D. A new algorithm for unsupervised global and local color correction[J]. Pattern Recognition Letters, 2003, 24(11): 1663-1677. DOI:10.1016/S0167-8655(02)00323-9 |
[3] | He K, Sun J, Tang X. Single image haze removal using dark channel prior[J]. IEEE Transactions on Partten Analysis and Machine Intelligence, 2011, 33(12): 2341-2353. DOI:10.1109/TPAMI.2010.168 |
[4] | Cai B, Xu X, 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. DOI:10.1109/TIP.2016.2598681 |
[5] | Li B, Peng X, Wang Z, et al. AOD-Net: all-in-one dehazing network[C]//Proceedings of the IEEE International Conference on Computer Vision. Venice: IEEE, 2017: 4770-4778. |
[6] | He K, Zhang X, Ren S, et al. Deep residual learning for image recognition[C]// Proceedings of 2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas: IEEE, 2016: 770-778. |
[7] | Szegedy C, Liu W, Jia Y, et al. Going deeper with convolutions[C]// Proceedings of 2015 IEEE Conference on Computer Vision and Pattern Recognition. Boston: IEEE, 2015: 1-9. |
[8] | Fei W, Jiang M, Chen Q, et al. Residual attention network for image classification[C]// Proceedings of 2017 IEEE Conference on Computer Vision and Pattern Recognition. Hawaii: IEEE, 2017: 6450-6458. |
[9] | Huang G, Liu Z, Maaten L, et al. Densely connected convolutional networks[C]// Proceedings of 2017 IEEE Conference on Computer Vision and Pattern Recognition. Hawaii: IEEE, 2017: 2261-2269. |
[10] | Yu F, Koltun V. Multi-scale context aggregation by dilated convolutions[C]// Proceedings of 2016 International Conference on Learning Representations. Puerto Rico, 2016: 1-13. |
[11] | Silberman N, Hoiem D, Kohli P, et al. Indoor segmentation and support inference from rgbd images[C] // Proceedings of the European Conference on Computer Vision. Florence: Springer, 2012: 746-760. |
[12] | Li B, Ren W, Fu D, et al. Benchmarking single image dehazing and beyond[J]. IEEE Transactions on Image Process, 2018, 28(1): 1-13. |