基于自适应特征融合的语义感知去雾网络(Semantic-Aware Dehazing Network With Adaptive Feature Fusion)

Abstract

尽管卷积神经网络(cnn)在单幅图像去雾中表现出了高质量的重建效果,但由于模糊场景中的语义混淆,恢复自然逼真的去雾结果仍然是一个具有挑战性的问题。在本文中,我们展示了通过将语义先验结合到去雾网络中来忠实地恢复纹理是可能的,因为无雾图像中的物体往往会显示某些形状、纹理和颜色。我们提出了一种语义感知的去雾网络(SDNet),该网络将语义先验作为去雾的颜色约束,有利于获取合理的场景配置此外,我们设计了一个密集连接的块来捕获全局和局部信息,用于去雾和语义先验估计为了消除某些物体的不自然外观,我们提出自适应地融合浅层和深层特征。实验结果表明,我们提出的模型与最先进的单图像去雾方法相比表现良好。

I. INTRODUCTION

单幅图像去雾的目的是直接从模糊的输入中获得无雾的图像,这是图像处理领域的一个基本问题,因为去雾可以极大地促进相关的高级任务[1],例如图像识别和场景理解。在文献中,空气颗粒引起的图像退化过程被数学表述为[2]

其中I(x)为退化朦胧图像,需要恢复的场景亮度用J(x)表示,A为环境照明,透射率图用t(x)表示,t(x)取决于散射系数β和场景深度d(x)。 

早期的方法[2]、[3]采用多幅图像或附加深度信息来去除雾霾。然而,在实际情况下,很难获得同一场景的多幅图像或额外的深度信息。为了克服这个问题,提出了利用锐利图像先验的单图像去雾方法[4],[5]。他等人[6]发现了暗信道先验(DCP)来预测传输图。但是,对于与大气光相似的场景物体,DCP可能无效。Fattal[7]观察到,无雾斑块中的像素在RGB色彩空间中形成一条线,并基于此先验恢复透射图。Berman等人[8]基于可以使用100个颜色簇来很好地表示无雾图像的事实,引入了雾线先验[8]。

最近,深度神经网络在单幅图像去雾任务中的峰值信噪比(PSNR)方面的性能有了显著提高[9],[10]。Cai等[11]采用卷积神经网络(CNN)提取更有效的底层特征来预测传输图。Ren等[12]引入了一种多尺度深度模型来预测传输图,该模型采用大网络预测粗传输图,再使用小网络对粗传输图进行细化。然而,这种网络在忠实的纹理恢复方面表现出局限性。

在这项工作中,我们提出了一种有效的算法来预测单幅图像去雾的语义分割。假设场景的语义分割是已知的,这个先验可以表征一个对象区域(例如,天空、建筑和草地)的语义类,并限制合理的解空间用于去雾。另一方面,我们注意到模糊图像和相应的无模糊图像共享相同的语义信息,这可以用来弥合合成训练数据和现实世界模糊图像之间的差距

基于以上见解,我们试图开发一种能够充分利用颜色空间和语义分割概率图之间的相关性的方法。为此,我们设计了一个语义感知的去雾网络(SDNet),该网络基于高水平和低水平特征融合生成雾相关特征和语义先验低层特征有助于恢复纹理细节高层特征包含大量的语义信息,有利于去雾和语义先验估计。如图1所示,在考虑语义先验时,所提出的SDNet生成忠实的颜色。

图1所示。在一个具有挑战性的现实世界的密集朦胧的例子的视觉比较。如果不使用语义信息,网络就无法恢复合理的场景,例如天空区域往往是黑暗的。相比之下,在语义信息的引导下,我们的算法产生了视觉上忠实的结果。(a)模糊输入。(b)没有语义先验。(c)语义分割。(d)具有语义先验。

使用语义先验的另一个优点是语义信息可以减少合成训练数据和真实测试图像之间的差距。我们注意到,大多数现有的基于学习的去雾方法忽略了合成和真实模糊图像之间的差距本文使用语义先验来弥合合成图像和真实图像之间的差距,因为两者共享相同的分类和类别。因此,训练数据中对象的语义标签可以推广到真实照片中。为此,我们开发了一个基准数据集,包括来自SYSU-Scene数据集的户外朦胧图像、语义分割和真实深度图[13]。此外,我们注意到直接融合浅层和深层会导致最终去雾图像中的伪影为了解决这个问题,我们提出了一个自适应融合模块。自适应融合模块可以通过最具代表性的特征,并重新调整高级和低级特征的权重,有助于生成自然的去雾结果

本文的主要贡献如下。

1)我们提出了一种SDNet,在统一的框架下同时解决语义分割和图像去雾。利用学习到的语义先验可以实现对语义区域丰富的去噪图像的重建。

2)提出了一种自适应融合模块,对浅层和深层特征进行自适应融合。自适应融合模块有助于去除最终去雾图像中的非自然伪影。

3)我们开发了一个由户外朦胧图像和语义分割组成的基准数据集来训练所提出的网络。我们证明了学习后的SDNet能够很好地利用语义先验去除现实世界的模糊图像。

4)我们通过在合成数据集和真实世界图像上进行大量实验来评估所提出的除雾方法。此外,还进行了烧蚀研究,以证明所提出的SDNet中不同模块的有效性。

II. RELATED WORK

在本节中,我们回顾了与单幅图像去雾和语义知识学习最相关的工作。

单个图像去雾:雾的存在降低了无雾图像的色彩饱和度和对比度,这降低了大多数高级计算机视觉任务的性能。除雾方法主要分为两大类:1)基于锐利图像先验的图像恢复方法和2)基于深度学习的除雾网络。

通过手工特征复原图像的方法有很多[8],[14]-[16]。He等人观察到无雾图像patch至少有一个像素具有一个颜色通道趋于零,因此在一般情况下,He等人利用DCP有效地预测了透射图。但是,DCP不能应用于白色场景和天空区域。为了提高DCP的泛化能力,Meng等人提出了一种边界约束先验(BCCR)。Zhu等[15]提出了一种线性模型来预测深度,并用监督机器学习方法求解模型的参数。Chen和Huang[17]提出了一种基于边缘坍缩的去雾算法,动态修复传输图,获得满意的能见度去雾效果。Kim等[18]提出了一种基于传输图估计的快速除雾方法。

近年来,由于cnn的发展,研究者引入了许多用于图像去雾的深度模型,如DehazeNet[11]、DCPDN[19]、DDN[20]、HDDNet[21]、MSCNN[12]等。DehazeNet[11]和MSCNN[12]通过堆叠一些CNN层来预测传输图。DCPDN[19]通过将大气散射模型嵌入到网络中来恢复最终的去雾结果。EPDN[22]将去雾建模为图像到图像的转换问题。Chen等人[23]引入了一种基于深度学习的方法来提高DCP的泛化。Li等[24]介绍了一种具有雾霾级别感知的渐进式除雾网络。Liu等[25]引入了用于单幅图像去雾的深度先验。Zhang等[27]通过考虑非局部相似度[26],提出了一种非局部去雾网络。Deng等[28]提出先获得不同的去雾结果,然后将中间结果融合,得到高质量的去雾结果。提出了一种感知启发的方法[29]来提高除雾质量。提出了一种基于径向基函数(radial basis function, RBF)的去雾方法[30],该方法通过人工神经网络致力于有效去除雾霾效应,同时保留恢复图像的可见边缘和亮度。Huang等[31]将联合语义学习引入到目标检测中,提高了恶劣天气条件下的目标检测性能。Wang等[32]将去雾任务建模为图像到图像的转换问题。Zhu等[33]设计了一种除雾发生器,将输入的模糊图像输出透射图、空气光和最终的除雾结果。Zhang等[21]提出了一种分层密度感知的除雾网络,利用雾霾密度来提高除雾质量。Hong等[34]采用知识蒸馏进行除雾,将清洁图像的知识转移到学生网络中。Dong等[35]设计了一种U-Net架构,通过增强和误差反馈来提高除雾性能。Pang等[36]研究了双目图像去雾问题,提出了双目图像去雾网络(BidNet),该网络可以同时去除双眼图像的左右模糊图像的雾霾。

与我们的研究最接近的是[37]和[38]的研究,他们利用语义信息来提高除雾性能。本文提出的方法与这两种基于语义的除雾方法存在四个主要区别。首先,[37]和[38]的语义分割分别使用预训练好的VGGNet[39]和refineNet[40]对清晰图像进行提取。相比之下,我们的语义先验是在模糊数据集上训练的,这可以提高在真实模糊图像上估计的语义先验的准确性。其次,与SSD[37]相比,我们的模型可以捕获低级和高级特征之间的关系,这对于识别像素的类别至关重要。第三,SSD捕获图像级语义信息,而我们提出的模型捕获像素级语义信息,保留空间信息。最后,[38]的方法利用语义来估计传输映射。然而,不准确的传输估计会导致不理想的结果。相比之下,我们提出的模型直接利用语义从模糊图像中重建干净图像。

Semantic Knowledge Learning:cnn已经被证明在许多高级任务[41]-[46]和低级任务[47]-[49]中是有效的,这得益于语义知识学习。例如,VGGNet[39]增加了层的深度以更好地提取特征,并成为许多高级作品的基础模型[50],[51]。为了克服VGGNet的训练困难,提出了通过添加残差连接的ResNet[41],该方法在许多语义知识学习任务中取得了较好的性能[52],[53]。此外,为了克服深度学习模型的严重收缩,提出了扩张卷积[54],并在语义分割中显示出有效的效果。为了更好地利用不同层的特征信息,DenseNet[43]采用密集连接策略开发,在图像分类中获得了令人鼓舞的结果。在我们的工作中,我们将扩张和密集策略结合起来,捕捉全局语义特征,以指导雾霾的去除。

III. PROPOSED METHOD

图2所示。拟定的SDNet体系结构。该网络由四个主要部分组成:浅层特征提取、用于捕获全局信息和语义先验的密集扩张网络、自适应多尺度特征融合模块和图像重构块。第一层和最后一层分别是浅层特征提取层和重构层。 

A. Network

所提出的SDNet架构如图2所示。设I和J分别表示为模糊输入和无模糊地面真值。重构图像可以通过F(I)得到,其中F(·)表示我们提出的SDNet函数。

如图2所示,第一层和最后一层分别为浅层特征提取层和重构层。我们提出了一种密集的扩张(扩张卷积)网络来提取层次特征,它可以很好地捕获模糊输入的全局结构并保留主要结构。此外,采用自适应特征融合模块融合低、高层特征进行语义估计。最后,利用中间特征和分割概率图对去噪结果进行重构。接下来我们将介绍SDNet的细节。

Dense Dilated Net:我们的密集扩张网络是通过堆叠几个扩张卷积层构建的,如图2所示。在没有上下文信息的情况下检测或识别像素的语义是一项具有挑战性的任务,因为关于场景结构的信息很少。为了考虑更多的上下文信息,它本质上融合了扩展卷积和密集连接的优点。密集扩张网络的关键在于如何掌握更大范围的信息(即更大的感受野大小),从而获得更复杂的高级语义知识。一种可能的解决方案是像传统的语义分割方法那样多次执行最大池化。然而,我们的去雾任务需要更多像素级的精确结果。最大池化会丢失图像的许多细节。为了减轻这些缺点,我们建议使用堆叠扩张卷积来扩大感受野的大小。此外,图像中的底层细节对恢复边界也很重要。为此,我们采用密集连接来保留输入的主要结构。这种连接学习倾向于保留更多的底层特征,使我们能够形成具有更强表征能力的高质量图像去雾的深度网络。受上述需求的启发,密集连接的扩张网络自然呈现。这样,我们不仅可以将语义信息整合到去雾中,还可以很好地捕获全局结构和局部细节

具体来说,在我们的模型中,密集连接包含11个扩展卷积层,每一层接收来自前一层的不同类型的特征映射。可以表示为

式中,表示密集扩张网络在第l个扩张卷积层学习到的中间特征映射; 例如,Fd1为扩张卷积卷积1的输出,F0表示从第一个卷积层提取的浅层特征,并由平均池化层下采样(它使特征的分辨率降低到输入的1/2大小)。另外,DConv和C分别是扩展卷积和连接操作。在这种情况下,我们的网络在高分辨率特征上进行训练,以保持真实外观的中频和高频(中频和高频信息指的是图像中的对比度和锐度信息,它可以影响图像的清晰度和质量)。与典型的扩张残差网络[54]相比,我们使用了更轻的网络来保持恢复场景物体的详细摄影外观的能力。此外,我们的模型可以很好地捕获多尺度目标。例如,每个扩张层都相当于不同尺度的核,例如,不同的接受域。因此,我们的模型可以获得更多尺度的特征映射,这有助于模型更好地捕获多尺度目标。

Adaptive Feature Fusion Module:从(2)的密集扩张网中获得高级特征后,我们进一步根据提取的特征估计分割概率图和去雾结果。然而,我们注意到,仅使用密集扩张网络中的高级特征映射会在估计的分割和最终的去雾结果中导致一些伪影因此,我们提出了一个自适应特征融合模块,将低级特征(来自第二卷积层,即F2)和高级特征(来自密集扩张网络,即Fd11)融合在一起,以提高语义分割的性能。本文提出的自适应特征融合模块主要由三个部分组成:1)跨尺度注意模块;2)实例规范化层;3)连接层concat。我们注意到深层的语义属性更抽象,而浅层具有更多的低级特征直接融合这两种类型的特性可能会导致特性不兼容。为了解决这一问题,我们提出了一种自适应特征融合方法,通过实例归一化来缓解高级和低级特征之间的差距[55],[56]。可以表示为

其中σ(·)为实例归一化操作, 是上采样层,CA为跨尺度注意力;F2为Conv2的输出。有几种选择可以作为高级模块,例如转置层、双线性上采样和最近邻上采样。在这项工作中,我们直接使用一个简单的双线性上采样层来调整密集扩张网络的输出特征。

图3所示。提出的跨尺度注意力模块架构,该模块接收高分辨率特征图和低分辨率特征图作为输入,输出信息量最大的特征图。 

所提出的跨尺度注意模块旨在选择最具代表性的特征并将其传递给实例规范化层。如图3所示,跨尺度注意力接收浅层和深层特征,然后利用深层特征激活浅层中信息量最大的特征。传统的深度除雾方法对通道特征处理均等,不适合我们的网络。我们的模型被设计成使用浅特征来补偿深特征。特别是,我们设计了跨尺度注意模块,以确定哪些通道有助于恢复语义分割和最终去雾图像。本文提出的跨尺度注意不同于传统的通道注意[57]。首先,通道注意力采用输入特征的全局池化来确定信息丰富的通道特征,而我们的跨尺度注意力采用高级特征的全局池化来决定信息丰富的低级特征。其次,跨尺度注意力旨在选择能够补偿高级特征的特征,而通道注意力只选择信息量最大的特征。所提出的跨尺度注意不同于挤压-激励squeezeand-excitation(SE)模块[58]和非局部模块[59]。首先,SE模块和非局部模块从一个特征映射中获取新的特征。相比之下,所提出的跨尺度注意在两个相距较远的特征映射之间执行。其次,NL块通过关注所有其他位置并计算所有位置特征的加权平均来计算每个位置的响应,这会产生很大的计算负担。相比之下,跨尺度注意通过密集连接的网络提取高级特征,通过跨尺度关注收集有用的低级特征,可以捕获全局和局部特征,避免了大量的计算负担。

实例规范化在我们的工作中有两个优点。首先,我们注意到模糊输入通常由于衰减而缺乏对比度,而我们的目标是增强去雾结果的对比度。因此,在一般情况下,重建结果不应依赖于模糊图像的对比度。幸运的是,实例归一化能够学习高度非线性的对比度归一化函数,以增强去雾结果中的对比度。其次,实例规范化可以解决由低级和高级特征引起的特征不兼容问题[60]。通过融合特征,我们的模型可以有效地利用底层结构信息和高层语义信息。因此,语义分割图M可以由以下生成

 为下一阶段提取最具代表性的特征。

Image Reconstruction:在这一部分中,我们试图使用语义先验来提高除雾质量对于给定的语义先验,场景中的对象往往具有有限的颜色外观。例如,树木和草往往呈现绿色的外观。因此,为像素提供一个类别(基于场景上下文)可能会使网络更容易生成合理的颜色外观。具体来说,我们的基本思想是利用颜色空间和语义分割概率图之间的约束。为了实现这一点,我们设计了一个模块,将除雾建模为一个后验问题。该模块可以让我们通过识别像素属于哪个类别,在分割概率图的条件下生成干净的图像。这样,它将为我们提供额外的信息,以消除雾霾。将生成的去雾特征图与分割概率图融合,恢复最终的去雾结果为

式中F(I)表示基于分割映射的SDNet重构图像。 

B. Loss Functions

为了训练我们的语义感知模型,我们使用像素softmax分类器来预测每个像素的类标签。类标签将用于生成分割概率图,定义如下:

其中P是图像的像素数, 是在给定语义模块输出z的情况下,在像素I处的类别预测,是真实语义标签。此外,对于去噪结果,我们还基于L1范数定义了恢复图像与地面真值之间的重建损失

其中N为训练数据集中的图像个数, 为L1范数,J是真实的无雾图像,保留学习过的过滤器的权重。

特别是,为了进一步提高除雾质量,我们建议通过利用平滑损失限制与真实值有相同梯度的预测结果,其公式为(为了进一步提高去雾的质量,我们提出了一种平滑损失函数,它通过限制预测结果和真实图像有相同的梯度来实现)

∇为梯度提取操作。

最后,结合语义损失和重建损失进行消雾,我们最终得到的损失函数为

其中λ1和λ2为正权值,用于控制相应损失的重要程度。

C. Training Dataset

没有现有的数据集包含模糊图像、真实无雾图像和用于训练我们网络的语义分割。为了解决这个问题,我们做了以下努力。首先,我们从SYSU-Scene的公共分割数据集中收集1200幅图像[13],然后使用深度估计方法[67]估计每张图像的深度图,并按照基于学习的去雾方法[12],[19],[64]的协议合成朦胧图像。具体来说,对于t(x) = e - βd(x),我们选择10个随机的β∈[0,0.5]。我们没有使用大的β∈[0.5,∞],因为这样的设置会产生非常小的传输,这对于实际情况可能是不合理的。结果,我们在训练集中合成了12000幅模糊图像和相应的清晰图像和ground truth语义分割。对于分割标签,我们直接使用[13]中定义的37个标签,包括:building、grass、car、person、sea、airplane、bag、ball、bench、bicycle、bird、boat、bottle、bus、camera、cat、phone、chair、cow、cup、dog、glasses、horse、laptop、motorcycle、racket、rail、sheep、sky、sofa、street/road、suitcase、table、train、tree、tv/monitor、umbrella。我们在图4中展示了生成的带有语义标签和深度图的密集和轻朦胧图像。

图4所示。提出数据集的可视化示例。深度可以表示物体与相机之间的距离,语义标签可以表示物体的类别。

D. Implementation Details

已有研究表明,对于膨胀层,恒等初始化[68]优于高斯随机变量。在我们的实现中,我们使用身份初始化器初始化膨胀层的权重。我们利用每个卷积层和扩展卷积层后的Leaky ReLU作为激活函数。在训练过程中,使用(9)中定义的损失函数对所有模块进行端到端训练。使用ADAM对所提出的模型进行训练,作为优化求解器,并设置初始学习率为0.0001来训练我们的网络。我们每25个epoch将学习率降低0.5。我们训练我们的模型150次,在RTX 2080Ti上大约需要48小时。我们使用批量大小为2,斑块大小为300 × 300,从模糊图像中随机裁剪。所有实验均使用Python 3.6和PyTorch 1.1进行。我们在实验中设置λ1 = 0.5, λ2 = 0.001。此外,我们对密集连接的扩张网络的11个扩张卷积层分别使用了1、2、4、8、16、32、16、8、4、2和1的扩张率,这有助于网络利用更多的上下文来更好地捕获结构信息。

V. CONCLUSION

在本文中,我们提出了一种新的SDNet来学习单个图像去雾任务的语义先验。我们的方法将除雾问题建模为以语义信息为条件的颜色概率最大化问题,该问题通过使用密集的扩张网络获得语义先验来实现。因此,所提出的SDNet能够通过将分类标签合并到除雾网络中来生成鲜明生动的颜色。为了有效地估计语义先验,我们提出了一个密集连接的扩展网络,该网络可以利用更多的上下文信息并捕获场景结构。此外,我们提出了一个自适应特征融合模块来融合多尺度特征,并采用实例归一化来去除伪像和平滑去雾结果。在合成和现实世界数据集上进行的大量实验表明,所提出的算法优于最先进的除雾方法。

我们的工作目前依赖于SYSU-Scene数据集中给出的37个语义类别[13],因此没有考虑更精细类别(如山谷、卡车、桥梁和河流)的语义先验。在这种情况下,它对模糊输入的分割任务提出了具有挑战性的要求。在未来的工作中,我们将通过考虑更多的语义类别来解决这个问题。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值