Semantic Single-Image Dehazing
abstract
由于单个图像中包含有限的信息,单图像雾度去除具有挑战性。以前的解决方案主要依靠手工制作的先验来弥补这种不足。最近的卷积神经网络(CNN)模型已被用于学习与雾霾相关的先验,但它们最终用作高级图像滤波器。在本文中,我们提出了一种新的单一图像雾霾去除语义方法。与现有方法不同,我们基于提取的语义特征推断颜色先验。我们认为可以利用语义上下文来为(a)在清洁图像之前学习颜色和(b)估计环境照明提供信息提示。这种设计允许我们的模型从具有强烈模糊性的具有挑战性的案例中恢复干净的图像,例饱和照明颜色和图像中的天空区域。在实验中,我们验证了我们对合成和真实模糊图像的方法,其中我们的方法显示出优于最先进方法的优越性能,表明语义信息有助于雾霾去除任务。
1 Introduction
在本文中,我们介绍了基于语义的去雾,这是一种使用语义信息为推断清晰图像提供额外指导的新方法。语义线索在其他“低级”应用程序中取得了成功,例如:颜色恒定[9]和图像过滤[10]。在这里,我们提出了一个完全端到端的卷积神经网络(CNN),它从训练样本中学习语义和对象的自然颜色之间的相关性,并根据学习的语义特征推断出干净的场景和照明颜色。因此,对于中等或强语义颜色先验的对象类(例如,天空是蓝色并且植物是绿色),语义提供关于对象的真实颜色的信息提示,并且可以高可信度地学习清洁场景和环境照明;对于中等或弱语义先验的对象,可以利用例如来自其他强烈自信对象的低级先验和环境照明估计来预测真实颜色。说明了我们方法背后的概念在图1中。
本文的主要贡献在于我们是第一个明确利用高级功能为单个图像雾霾去除问题提供信息性色彩先验的人。我们发现我们的方法对于极端设置(明亮的表面,严重的色移,饱和的大气光,天空区域等)是强大的,这对以前的方法提出了重大挑战。我们在实验中表明,所提出的模型在具有合成雾度的RGB-D测试集上获得了最先进的结果。由于模型是在街景上训练的,我们还在类似语义类的真实世界朦胧场景上测试我们的模型,其中模型显示与现有技术方法相当的结果。
图片.png
3 Semantic color prior
我们提出了一种新方法,通过训练CNN模型来探索去雾的语义,从训练集中学习以一组语义特征为条件的颜色分布。这种方法允许我们的模型推断语义先验以恢复真实的场景颜色。当模型再次看到类似的语义时,使用语义提示获得的额外知识用于补救单个图像中缺少信息。
清洁图像:传统方法依靠物理雾度模型来恢复对象的真实颜色。这需要准确估计大气光和透射值(结构信息),两者都难以获得。然而,在语义类和它所呈现的颜色分布之间经常存在强相关性(例如植物可能具有绿色),因此,有时可以高可信度直接预测真实颜色(参见图1)。因此,语义特征可以为清晰图像的预测提供强大的先验
当估计模糊度高(例如,非常小的传输值)时特别有用。一个例子是具有有效无限深度的天空区域,在这种情况下,不可能恢复真实的颜色。但是,当正确识别为天空时,图像部分可能是蓝色调的颜色。尽管猜测不一定准确,但是仍然可以学习和利用颜色分布以减少预测的模糊性。
环境照明:另一方面,语义上下文也可用于估计大气照明颜色,最直接的情况也是天空区域,其通常具有接近环境光的颜色。这反过来可以使具有弱语义先验的对象受益(例如,汽车可以是任意颜色,但是在空间上与道路或树相邻的汽车可能具有相似的深度和透射率,并且可以在给定环境照明的情况下推断其真实颜色,如图所示。在图1)中。
然而,在实践中,我们还观察到当给出模糊图像作为输入时,对象的真实颜色和环境照明是相互依赖的。因此,我们设计了一个网络,将它们合并在一起,并允许一个网络改进另一个。我们不是要求我们的网络明确地预测照明颜色,而是利用一组全局特征,这些特征可以携带与例如相关的全局上下文信息。不仅是环境照明颜色,还有全局场景语义。这种非局部性允许从强烈自信的语义先验的对象学习的信息传播到图像的其他部分,并且有益于对具有弱语义先验的对象的真实颜色预测。
3.1 Overview
该模型的流水线如图4所示。该模型将模糊图像作为输入,输出是预测的清晰图像。我们的模型遵循完全卷积设计,由三个模块组成:一个用于更高级语义的语义模块 特征提取,用于预测全局特征的全局估计模块,最后是用于推断干净图像的颜色模块。
图片.png
3.2 Semantic module
对于语义特征提取,我们利用着名的图像分类网络VGG16 [27],该网络在ImageNet数据集[28]上进行了预训练。 该模型已经过1000多种语义类别的对象识别任务的广泛训练[28]。 由于我们只需要与语义相关的特征而不是精确的标记,我们删除了VGG模型的最终密集和softmax层,并使用其中间卷积层的输出进行语义特征提取。 我们选择VGG16是因为它具有良好的性能和简单的设计。 VGG16模型有5个多层块(我们称之为块1到块5),每个块都有几个卷积层,后面跟着一个最大池层[27]。 由于我们希望强制语义网络的普遍性,我们不训练VGG模型来服务我们的数据集,即它的权重在训练期间是固定的。
通常观察到,当信息通过深度CNN(例如分类和识别模型)传播时,处理过的知识集在内部变得信息量较少但更多的是面向任务的。 为了平衡信息丢失和任务特定性(在这种情况下是场景语义提取)之间的权衡,我们使用VGG16的块4中的最终卷积层(向下采样8倍)用于本地 推断颜色先验的功能。 然后,通过轻量级三级子网将提取的局部语义特征上采样为原始图像大小,以适应颜色模块的输入大小。 在每个阶段,使用内核大小为3×3的卷积层将特征数量减少一半,然后将特征图上采样2倍。
3.3 Global estimation module
我们进一步利用语义模块来估计一组32个全局特征。 这种设计背后的关键直觉是全局特征可以携带有关环境照明或语义上下文的有价值信息,这可以从场景语义推断出来。 VGG16模型的块5输出(下采样32倍)被发送到我们的全局估计模块,该模块预测每个特征映射的单个值(1×1大小特征)。
我们采用[9]中提出的置信加权池技术。 所提出的全局估计模块被训练为从每个输入贴片Ω学习一组局部特征FΩ,以及局部置信度CΩ。 然后通过平均由其个体置信度加权的局部特征来获得全局特征F.
图片.png
这种池化技术使我们的模型能够根据局部区域上语义先验的置信水平提取全局特征,因为一些语义类可能比其他语义类具有更高的重要性(如图1所示)。全局池允许将局部特征聚合并广播到图像的其他部分,并且在完全卷积体系结构中有效地实现图像大小的感知域。
为此,我们构建了一个具有四个中间层的轻量级模型,以学习全局特征。我们使用前三个卷积层(滤波器尺寸分别为5×5×256,5×5×64和1×1×33)进行进一步的特征提取。置信池的输入有33个特征,其中前32个是预测的局部特征,最后一个特征是相应的置信度。在汇集之前,在置信度上应用逐层softmax激活以用于归一化目的。全局估计模块的最终输出被减少到32个通道的1×1特征图。
3.4 Color module
颜色模块同时读取语义特征和全局特征。 全局特征被广播到原始图像大小,此时,模糊图像以及语义和全局特征映射被连接,如图4所示。
然后,我们的颜色模块处理连接的输入。 对于这一部分,我们使用AOD-Net的架构[7],因为它是最先进的端到端CNN除雾模型。 但是,在我们的例子中,输入不仅包含模糊图像,还包含48通道特征图(16个用于语义特征,32个用于全局特征),因此,中间层具有更多过滤器来处理附加输入特征。 原始AOD-Net的5个卷积层各有3个滤波器,我们的模块版本分别有16,16,8,4,3个滤波器。 没有进行任何其他修改。我们网络的最终输出是预测干净场景的RGB图像。
5 Conclusion and discussions
在本文中,我们介绍了一种单图像去雾的语义方法。我们是第一个明确利用语义特征来学习语义先验的先验,用于估算潜在的清洁场景。我们在合成模糊图像上实现了最先进的性能,并且我们的模型能够在强估计模糊度下准确地恢复干净的场景,例如,强烈的雾霾和半饱和的环境照明,具有学识渊博的语义先验。
由于难以获取真实世界的训练数据,我们的数据集仅包含室内场景和室外道路场景,这意味着一般真实世界物体的语义以及它们相应的真实颜色的缺陷。因此,学习在训练期间未看到的真实世界室外物体的语义颜色先验是具有挑战性的,这意味着我们无法证明我们的模型可以很好地概括为自然的室外场景,直到相关的数据集可用。这种限制取决于公布的数据,而不是我们的方法,并且在实验中可以获得更高的准确性。在未来,我们将通过更广泛的图像训练我们的模型来改善这一点