注意力引导特征增强的单图像去雾
2021-10-19何胜敏陈志翔
何胜敏,陈志翔
(1.闽南师范大学计算机学院,福建漳州363000;2.数据科学与智能应用福建省高校重点实验室,福建漳州363000;3.闽南师范大学物理与信息工程学院,福建漳州363000)
图像去雾是现实世界中低层次视觉应用的典型问题.由于图像去雾具有不适定性和重要的现实意义,它已经成为图像处理和计算机视觉领域的一个热门话题.具体地,典型的图像去雾方法通常应用模型[1]:
其中I(x)和J(x)分别表示带雾图像和无雾图像,A表示大气光成分,t(x)表示透射率.通过大气散射模型的观点来看,准确的估计A和t(x)是克服不适定性去雾问题的关键.在这一事实的启发之下,在过去的几年之中,已经开发了很多基于大气散射模型的去雾方法.此外,还有其他优秀的方法,如图像增强的方法以及深度学习的方法.
由于较强的表征能力,深度学习方法已成为解决这些弊端的主导技术.具体来说,具有灵活模块化体系结构的深度CNN 也非常流行于图像应用.虽然CNN 提出的方法对图像恢复具有视觉效果,但仍然存在缺点:计算成本和内存消耗较高,深层网络没有充分利用浅层对深层的影响,方法大多忽略了复杂的背景可以隐藏一些关键特征.
本文提出了一种由DVB、FEB 和AB 组成的去雾网络AGFENet.具体来说,基于扩张和普通卷积的DVB,通过增加感受野,从给定的有雾图像中提取有用的特征,以提高去雾性能和效率.然后,FEB 通过长路径融合全局和局部特征,以提高去雾网络的表达能力.在有雾图像的背景或者特殊区域通常存在某些特征被厚雾隐盖的情况,增加了训练的难度.因此,本文使用注意机制来指导AGFENet进行图像去雾.也就是说,AB 可以准确的引导整体的网络向厚雾区域付出更大的计算资源,将更需注意的区域,投入相应权重的关注,精确地提取隐藏在复杂背景中的噪声信息来处理复杂的噪声图像.同时,FEB通过跳跃连接可以增强AB的表达能力,以提高去雾网络的效率,降低复杂性.
这项工作的主要贡献:采用扩张卷积和普通卷积组成的DVB,在不增加网络参数的前提下,增加了感受野,以提高去雾性能和效率,同时也能有效减少网络深度.FEB使用一条长路径融合来自浅层和深层的信息,在FEB内部也进行了内部的特征增强,这不仅可以提高去雾网络的表达能力,还可以保证网络的浅层信息能流向深层.利用AB 从给定的噪声图像中深入挖掘隐藏在复杂背景中的噪声信息,这对于处理复杂有雾图像非常有用.将FEB 跳跃连接至AB,保证了在每个阶段都有浅层的特征流向深层,降低了训练的复杂度.
1 相关工作
在基于大气散射模型的传统去雾方法中,文献[2]提出了一种暗通道先验方法(DCP),它认为图像的每一个局部区域,都至少有一个颜色通道会有很低的值,作者用这种假设去预测估计透射率图,并取得了不错的去雾效果.文献[3]提出了一种基于边界约束的去雾方法(BCCR),通过牺牲部分边界信息来获取去雾图像,该方法在处理输入图像亮度偏低的情况下有好的表现.文献[4]中说明传统的去雾方法在去雾上面已经取得了很大的成功,但是在处理图像天空区域时,会出现天空区域色彩恢复的过于鲜艳,或者出现去雾后的图像中会存在颜色失真的现象,对恢复的图像造成一些损害等问题.
基于传统的去雾方法已经在去雾上取得了很好的效果,但是也有明显的缺点,恢复的图像会存在失真,在某些实际情况之下不能表现出良好的效果.
而随着深度学习在计算机视觉领域取得很大的成功,越来越多的研究人员利用深度学习处理图像去雾问题.文献[5]作为深度学习去雾的早期代表,提出了一种端到端的去雾网络(DehazeNet),它通过输入的有雾图像,经过神经网络处理之后,输出介质透射率,最终使用大气散射模型去恢复无雾图像.文献[6]提出的多尺度卷积神经网络(MSCNN),能在透射率的表现上有较为精确的估计.由于大气散射模型需要分别估计大气光成分以及透射率,两者分别估计,会将误差放大化.文献[7]提出了一个轻量级的网络结构(AOD),并将透射率t(x)和大气光成分A统一成一个公式,减小了误差范围,去雾效果会比依靠传统大气散射模型的去雾算法更有效.并且在处理真实有雾图像任务中,表现要好于大部分深度学习去雾方法.文献[8]提出一种基于门限融合网络的雾图像的复原方法(GFN),整体的网络结构由编码网络、解码网络构成,编码网络用于对雾图像本身及其多种变换图像进行特征编码,解码网络则用于估计这些变换图像对应的权重.为了去除恢复结果中容易出现的光晕效应,GFN 可以有效增加网络感知野并减少光晕效应.但是深度学习所提出的方法中在处理图像时,在薄雾与厚雾区域付出了同样的计算代价,而图像中雾分布是不一样的,在处理不同浓度雾时,薄雾区域的权重和厚雾区域的权重要有明显的侧重,以至于在处理不同雾效果时,达到较好的情况.对于这种付出相同计算代价去处理厚雾与薄雾区域,注意到近年来受到广泛应用的注意力机制[9].注意力就是模仿人类的注意力现象,通常人类的视觉会注意于全局图像中的局部部分,而这些局部区域往往存在着更加重要的信息,只要对这些区域投入更多的计算资源,就能获取更多有用信息.计算机视觉中,注意力机制就是从众多的信息中提取更加有用的信息,将更多的计算资源放在更应该注意的区域以解决任务的关键问题.
获取更多的图像信息,对于有雾图像的去雾是很重要的.扩张卷积相比于普通卷积,仅仅多了一个参数扩张因子,就扩大了感受野,它让每一个卷积的输出都能包括更多的范围的信息.利用扩张卷积,就可以让原本的卷积核,在不改变参数数量的情况下,扩大获取信息的能力,同时它能确保输出的特征尺寸保持不变.例如,原本的3×3 卷积核,如果扩张因子是1,在不增加参数的情况下,就能拥有4 ×4 的感受野.通常在CNN中,采取扩大感受野的办法,第一种就是增加深层网络的深度和宽度,而这种方法训练难度较大.第二种方法涉及更多的卷积参数,增加了网络的复杂度.这两种方法,都有较大的缺陷.因此在本文提出的方法中,使用扩张卷积来增加感受野.
2 提出的方法
2.1 网络架构
如图1,去雾网络AGFENet 由DVB、FEB 和AB 组成.具体来说,AGFENet 网络结构的设计遵循了图像去雾性能和效率之间的关系.为了提高性能,使用三个块,即从不同的角度去除雾噪声的DVB、FEB 和AB.DVB 利用扩张卷积和标准卷积来扩大感受野大小,获取更多的上下文信息以提高去雾性能.FEB 通过长路径连接全局和局部特征,以提高图像去雾的表达能力.AB可以通过注意力机制重点处理更加需要注意的信息,用于复杂噪声任务,如厚雾区域.
图1 AGFENet网络结构Fig.1 Network architecture of AGFENet
2.2 扩张卷积块
如图2,提出了一个扩张卷积块(也称为DVB)来提高去雾性能和效率.此外,它还可以降低去雾网络的深度,这对于降低计算成本和内存消耗是非常有利的.具体来说,提出的基于扩张和普通卷积的扩张卷积块不同于常见的卷积设计.12层DVB包括两种类型:扩张卷积+BN+ReLU与普通卷积+BN+ReLU.整体的DVB 中卷积核大小全部为3×3,其中扩张卷积中的卷积因子是2,就表示用3×3 的卷积核,就可以捕获5×5 的感受野,映射更多的上下文重要信息.因此具有扩张卷积的部分,就可以看作是信息重点.而有普通卷积的部分,就可以看作是信息低点.几个信息高点和一些信息低点的组合,就可以被认为是具有稀疏性.这不仅可以提高训练的去雾性能和效率,而且降低了训练的复杂性.
图2 扩张卷积块Fig.2 Dilated conv block
2.3 特征增强块
随着网络深度的增长,浅层的特征对于深层的影响会降低.为了解决这一问题,如图3,在AGFENet中提出了一种用于图像去雾的特征增强块(也称为FEB).FEB通过对内部第一层至第三层进行特征融合,增强网络的表达能力,而后FEB 通过长路径充分利用输入的有雾图像作为全局特征和局部特征,就可以生成更具有表达能力的特征.最后,使用级联操作融合输入噪声图像和第十六层的输出,再次增强网络的表示能力.此外,使用Tanh将获得的特征转换为非线性.FEB不仅利用了输入的有雾图像,还在内部进行了特征增强,将浅层与深层的特征进行融合,最后传入AB中,为AB引导整体网络往厚雾区域进行权重偏移提供支持.
图3 特征增强块Fig.3 Feature enhancement block
2.4 注意力块
如图4,本文利用AB 进行注意力引导,DVB 与FEB 增强网络的表达能力,AB 负责引导FEB 与DVB学习厚雾区域信息,三者之间相互作用,随着训练的次数的增加,更容易将隐蔽在图像中的特征进行增强,更增加整体网络往厚雾区域的计算,同时也保持对薄雾区域的计算,这对未知的有雾图像非常有用,即真实噪声图像.AB 利用以下两个步骤来实现注意力机制.第一步AB 内部中的第二层卷积尺寸为1×1,使用该卷积将获得的特征压缩成向量作为调整前一阶段的权重,这也可以提高去雾效率.第二步利用获得的特征权重乘以第十六层的输出,以提取更突出的噪声特征.
图4 注意力块Fig.4 Attention block
3 实验
3.1 数据集
在真实世界中,想要获取大量的无雾图像和相对应不同程度的雾浓度的无雾图像是难以完成的,因此为了训练和评估本文提出的AGFENet,通过使用合成的有雾图像进行训练.选取一个大规模的合成图像数据集来自文献[10]的RESIDE,它是通过从基于大气散射模型的清晰图像中生成不同浓度的无雾图像,大气光A在[0.7,1.0]之间,均匀地随机选择散射系数在[0.6,1.8]之间,RESIDE室内训练集包含13 990有雾图像和1 399张无雾图像,为了比较与其他的去雾方法,选取PSNR以及SSIM作为客观评价指标,来评估算法在客观指标上的优劣,并在RESIDE 的合成测试集上分别计算室内室外各500 张图像的平均峰值信噪比(PSNR)和结构相似性(SSIM).除了客观指标,还在真实世界有雾图像进行测试,以评判提出方法的普遍性.
3.2 PSNR/SSIM实验结果
选取在图像去雾领域最常见的两个指标PSNR/SSIM,与DCP,BCCR,MSCNN,AOD 和GFN 算法对比,选取RESIDE数据集中SOT测试集(包含室内室外各500张图像)作为计算平均PSNR/SSIM 的数据,具体结果如表1.
表1 合成有雾图像的实验结果数据分析Tab.1 Experimental data analysis of synthetic foggy images
从表1可以发现,本文的方法在SOT室外测试集中,有着比室内更好的效果,PSNR由室内的23.72提升到26.29,SSIM 从0.890 提升到0.934.因为图像去雾的实际还是要应用在室外环境中,所以从客观指标上看,本文的方法在处理室外环境有好的表现.从整体来看,本文的方法在PSNR,SSIM 较其他对比方法,都有一定的提升.
3.3 合成有雾图像实验结果
在室内合成数据集上,可以明显的发现,DCP 和BCCR 能够有效的去雾,但是会出现严重的失真,MSCNN 和AOD 能有效去雾,但是去雾后的图像依旧还有一部分的雾,在对比的方法中,只有它们二者,还会存在着薄雾,而GFN处理之后的无雾图像可以明显的看出,能够很明显去雾,并且恢复的无雾图像和标准无雾图像很相似,但仔细查看,可以发现,本文提出的方法,在处理以上所有图像时,更接近标准无雾图像.如图5.
图5 合成室内和室外有雾图像的实验结果Fig.5 Experimental results of synthesizing indoor and outdoor foggy images
在室外合成有雾图像的恢复中,DCP和BCCR还是能够有效的去雾,但是在处理天空区域时,二者依然会出现失真的情况,天空部分会显得十分不自然.MSCNN 能够增强图像的对比度,但是并不能完全的去雾,依旧会存在一些薄雾区域,AOD的在恢复无雾图像时,去雾的能力是不错的,没有存在明显的雾区,但是恢复的无雾图像,但是会出现颜色校正过深的情况,整体的色调会偏暗,而GFN会出现颜色矫正过于鲜艳的现象,提出的算法在恢复的无雾上,更接近标准无雾图像,恢复效果从以上来看,本文的方法具有更好的表现.
3.4 真实有雾图像实验结果
虽然传统的DCP和BCCR不是通过CNN的方法去雾,但是本文在图5和表1已经展示了DCP和BCCR的去雾主观效果和客观指标,可以明显发现传统的方法相对于CNN 的去雾方法存在明显的不足,在恢复图像上存在失真等现象,因此在真实有雾图像实验结果这个部分,本节不讨论DCP和BCCR,而是增加文献[11]一个基于CNN注意力机制的去雾方法FFA.
从图6,可以明显看出,本文提出的AGFENet在真实有雾图像比其他的方法具有更明显的优势,无论是在去雾能力还是图像的恢复色彩都具有很好的效果.可以明显的看到,FFA 与本文的方法都是用了注意力机制,但是FFA方法在处理真实图像的能力在所有的对比方法中,效果并不明显,甚至还存在破坏图像的情况.如图6中第二行与第四行图像,当远处的存在厚雾时,只有本文的方法能在处理远处的噪声,在恢复颜色矫正上,也有更好的表现.图6表明本文提出的AGFENet不仅可以处理近景的复杂人物图像,在具有复杂的背景的自然景观图上,也能恢复出细节,达到不破坏图像的情况下,实现恢复的效果最优.
图6 真实有雾图像的实验结果Fig.6 Experimental results of real foggy images
4 结论
提出了一个特征增强的注意引导去雾网络AGFENet用于图像去雾.在卷积核的选取上,并没有全部采取普通卷积,而是采用扩张卷积,在不增加参数的情况下,让每一次的训练都能扩大感受野,在这个基础上提出了DVB.该DVB 也被用来减少网络的深度.FEB 用来集成浅层和深层的信息,在内部和外部都进行了跳跃连接,达到了外部增强与内部增强,并且将FEB 中的输出特征与AB 连接,又保证了浅层的信息不会在深层受到减弱,同时与AB相互协同,将特征传给AB,AB用该特征引导DVB与FEB进行注意力偏移,将更多的计算资源放在更需要注意的地方.实现结果表明,提出的AGFENet优于其他的对比方法.