FIFO: Learning Fog-invariant Features for Foggy Scene Segmentation(学习雾不变特征的雾状场景分割算法)

FIFO

Title: FIFO: Learning Fog-invariant Features for Foggy Scene Segmentation(学习雾不变特征的雾状场景分割算法)

paper: http://arxiv.org/pdf/2204.01587v1

code: http://cvlab.postech.ac.kr/research/FIFO/

Abstract

​ 在恶劣天气条件下的视觉识别在现实应用中具有重要意义。在此背景下,提出了一种新的方法来学习语义分割模型,以稳健地对抗雾特征。其关键思想是将图像的雾条件视为其风格,并缩小分割模型的神经风格空间中具有不同雾条件的图像之间的差距。特别是,由于图像神经网络风格通常受到其他因素和雾的影响,所以引入了一个雾通滤波器模块它学习从风格中提取与雾相关的因素。对雾通滤波器和分割模型进行交替优化,逐渐缩小了不同雾条件之间的风格差距,从而允许学习雾不变特征

FIFO: Learning Fog-invariant Features for Foggy Scene Segmentation(学习雾不变特征的雾状场景分割算法)_第1张图片

Introduction

​ 现有的方法通过合成雾图像数据集来解决问题,这些数据集通过将真实雾效应应用于完全标注的清晰天气图像,并用于语义分割的监督学习。此外,还引入了curriculum learning approaches,该方法通过使用未标记的真实浓雾图像,逐步将模型从光合成雾变成真实浓雾。虽然这些方法已经取得了令人印象深刻的鲁棒性,但由于它们的训练策略仅限于普通的监督学习,因此还有进一步改进的空间。此外,curriculum learning approaches要求外部模块在训练中控制真实雾图像的雾密度,往往使最终模型偏向于雾场景;因此在训练中需要额外的计算和额外的超参数,往往会降低清晰图像的性能。

​ 为了解决上述问题,提出了一种新的学习雾不变特征的方法,称为FIFO。其目的是学习一个对输入图像的雾式变化不敏感的分割模型。为此,首先定义了训练图像的三个不同领域,即晴朗天气(CW)、合成雾(SF)和真实雾(RF),其中前两个领域的图像被标记,而最后一个领域的图像没有被标记。然后,FIFO鼓励分割网络关闭特征空间中不同雾域之间的风格差异,从而学习雾不变特征。

FIFO: Learning Fog-invariant Features for Foggy Scene Segmentation(学习雾不变特征的雾状场景分割算法)_第2张图片

​ 那么,FIFO的成功在很大程度上取决于雾风格表示的质量。不幸的是,现有的样式表示方案并不适合我们的任务,因为它们是手动设计来捕捉图像的整体样式,也受雾以外的因素的影响(例如,何时拍摄图像),甚至图像的内容;直接使用这些神经风格会引入副作用,如内容改变等,从而导致次优解决方案。

为了解决这个问题,提出了雾通滤波器,这是一种采用普通神经风格的可学习模块——特征映射的Gram矩阵作为输入,并以嵌入向量的形式从该风格中只提取与雾相关的信息,称为雾因子。特别是,它们学会了将同一域的雾因子画在一起,并将不同域的雾因子分开,从而通过雾因子来区分输入图像的雾条件。进而鼓励分割模型在训练过程中减少不同区域图像的雾因子之间的差距。雾通滤波器与分割网络的交替优化逐渐缩小了不同域之间的雾式间隙,最终导致分割网络的雾不变特征本文重点思想,按照这个思想理解文章!!!请注意,雾通滤波器仅是用于训练的辅助模块,因此在测试中不需要。

​ 与之前的工作相比,FIFO在训练简单和测试有效性方面具有优势。与之前的工作不同,FIFO在训练中不需要控制合成和真实雾图像的雾密度水平,从而允许较少超参数较少的分割模型进行端到端学习。更重要的是,出于同样的原因,它不需要额外的模块来估计和操纵训练中真实雾图像的雾密度。在有效性方面,FIFO明显优于所有现有记录,并提高了在有雾天气和晴朗天气领域上的性能,而现有的方法往往会降低在清晰场景上的性能。

Configuration of Training Data

​ FIFO的训练图像根据其雾类型分为三个不同的领域:晴朗天气(CW)、合成雾(SF)和真实雾(RF)。对于CW图像,采用Cityscapes dataset,该数据集用于语义分割的监督学习。同时,作为SF图像,利用了雾化的Foggy Cityscapes DBF dataset,该数据集是通过模拟城市景观数据集图像上的真实雾效应而构建的,因此也得到了充分的注释。最后,RF图像来自Foggy Zurich dataset,这是一个在现实世界中捕获的未标记的雾场景的集合。

​ 首先,在Foggy Cityscapes DBF dataset中,FIFO通过一个值(即衰减系数β=0.005)固定合成雾的密度水平,并利用整个数据集。其次,FIFO利用了Foggy Zurich dataset作为一个整体,而之前的工作将其分成多组不同的密度水平,使用额外的模块来估计图像的雾密度。这些差异使得FIFO的管道更加直接和简洁。

Proposed Method

首先在Foggy Cityscapes DBF dataset上对分割网络进行预训练,并将初始化的雾通滤波器随机附加到网络的不同特征图上。FIFO的两个部分在每个小批中交替训练,除了在前5K迭代中,雾通滤波器被单独训练以避免冷启动。请注意,雾通滤波器仅用于分割网络的雾不变特征学习的训练。换句话说,FIFO没有增加额外的推理时间复杂性,因为它只使用分割网络进行测试。

​ 为了构建一个小批量,从CW和RF中随机采样相同数量的图像,并选择采样的CW图像的SF对应物。对于这样的小批量,学习雾通滤波器将同一雾域的雾因子绘制在一起,并将不同域的雾因子分开,以便根据其雾域来区分输入。另一方面,对分割网络进行了优化,以关闭不同域的雾因子之间的距离,并最小化普通的分割损失。这种交替优化精确地关闭了不同域之间的雾式间隙,导致了雾不变的特征。

FIFO: Learning Fog-invariant Features for Foggy Scene Segmentation(学习雾不变特征的雾状场景分割算法)_第3张图片

Fog-pass Filtering Modules

​ 雾通滤波模块不是分割网络的原始特征图,而是将特征图的整体风格表示作为输入,通过过滤掉大部分内容信息,更多地关注图像的风格。在这种情况下,样式表示可以被认为是一个编码的先验知识的hardwired layer 。特别采用特征映射的Gram矩阵作为样式表示,因为它提供了比其他方法更丰富的样式信息,例如通道特征统计。不了解Gram矩阵的读者可自行搜索。https://blog.csdn.net/bbbeoy/article/details/108195122

FIFO: Learning Fog-invariant Features for Foggy Scene Segmentation(学习雾不变特征的雾状场景分割算法)_第4张图片

​ 设 I a I^{a} Ia I b I^{b} Ib是来自小批处理的一对图像, F l F^{l} Fl表示连接到分割网络的第 l t h l^{th} lth层的雾通滤波器。然后通过公式分别计算两个图像的雾因子 f a , l = F l ( u a , l ) \mathbf {f}^{a,l} =F^{l}(\mathbf {u}^{a,l}) fa,l=Fl(ua,l) f b , l = F l ( u b , l ) \mathbf {f}^{b,l} =F^{l}(\mathbf {u}^{b,l}) fb,l=Fl(ub,l)。其中, u a , l \mathbf {u}^{a,l} ua,l u b , l \mathbf {u}^{b,l} ub,l分别表示由其第 l t h l^{th} lth个中间特征映射计算出的格拉姆矩阵的向量上三角部分。雾通滤波器的作用是通过 f a , l \mathbf {f}^{a,l} fa,l f b , l \mathbf {f}^{b,l} fb,l来告知分割网络 I a I^{a} Ia I b I^{b} Ib在雾条件下的不同。

为此,雾通滤波器学习一个雾因子空间,其中同一雾域紧密组合在一起,不同域的雾因子彼此较远。给定小批处理中每个图像对 P \mathcal {P} P的集合, F l F^{l} Fl的损失函数设计如下:

FIFO: Learning Fog-invariant Features for Foggy Scene Segmentation(学习雾不变特征的雾状场景分割算法)_第5张图片

其中, d ( ⋅ ) d(\cdot) d()为余弦距离, m m m为边缘, I ( a , b ) \mathbf {I}(a,b) I(a,b)表示 I a I^{a} Ia I b I^{b} Ib属于同一雾域时,返回1,否则为0。

Segmentation Network

分割网络采用三个不同的目标进行训练,分别用于语义分割、雾不变特征学习和无论输入的雾条件下的一致预测。下面我们将详细介绍每个损失函数。

Segmentation Loss分割损失。为了学习语义分割,将pixel-wise cross-entropy loss应用于单个图像。损失是由

在这里插入图片描述

其中, P i , j ∈ R \mathbf {P}_{i,j}\in \R Pi,jR Y i , j ∈ 0 , 1 \mathbf {Y}_{i,j}\in {0,1} Yi,j0,1分别表示 j j j类在像素 i i i处的预测得分和真值标签, n n n为像素数。

Fog Style Matching Loss 雾风格匹配损失。给定一对来自不同雾域的图像,分割网络学习出接近雾因子之间距离的雾不变特征。为此,第二次损失与冻结雾通滤波器给出的两个雾因子相匹配。设 f i a , l \mathbf {f}^{a,l}_{i} fia,l f i b , l \mathbf {f}^{b,l}_{i} fib,l雾通滤波器 F l F^{l} Fl计算的图像的雾因子。然后,损失是由

在这里插入图片描述

其中, d l d_{l} dl n l n_{l} nl分别表示其雾因子的维数和第 l t h l^{th} lth个特征图的空间大小。

Prediction Consistency LossCW图像和SF图像具有完全相同的语义布局。通过强迫对这些图像进行相同的预测,可以在学习到的表示中对齐CW和SF域。因此,只有对于同一来源的CW和SF图像,励模型预测相同的分割图。设 P i C W ∈ R c \mathbf {P}_{i}^{CW} \in \R^{c} PiCWRc P i S F ∈ R c \mathbf {P}_{i}^{SF} \in \R^{c} PiSFRc表示像素 i i i的分割模型预测的类概率向量,其中 c c c为类数。第三个损失被设计为强制所有像素的 P i C W \mathbf {P}_{i}^{CW} PiCW P i S F \mathbf {P}_{i}^{SF} PiSF之间的一致性,并由

在这里插入图片描述

其中 K L d i v ( ) KLdiv() KLdiv()是Kullback-leibler散度。此损失与等式3中的雾样式匹配损失的目标相同,但通过少量的CW-SF对来增强预测水平上的雾不变性。此外,它也是对等式中的分割损失的补充等式2中的概率分布以来提供的信息超出了类标签所使用的分割损失。

Training Strategy给定一个小批,从三个不同的域对,即CW-SF、CW-RF和SF-RF中分别采样相同数量的图像对。请注意,每个CW-SF对的图像具有相同的语义布局,因此预测一致性损失应用于它们。对于CW-SF对,通过最小化的方法来训练分割网络

在这里插入图片描述

其中, λ f s m \lambda_{fsm} λfsm λ c o n \lambda_{con} λcon正在平衡超参数和 Y C W = Y S F Y^{CW}=Y^{SF} YCW=YSF。另一方面,对于包括RF在内的其他对输入域对,损失仅由分割和雾式匹配项组成,由

在这里插入图片描述

Experiments

网络架构。采用具有ResNet-101骨干的RefineNet-lw作为分割网络。然后,将两个雾通滤波模块分别连接到分割网络的Conv1层和ResBlock1层的输出上。如图3(a)所示,这两个模块是由leaky ReLU激活函数的多层感知器实现。

FIFO: Learning Fog-invariant Features for Foggy Scene Segmentation(学习雾不变特征的雾状场景分割算法)_第6张图片

FIFO: Learning Fog-invariant Features for Foggy Scene Segmentation(学习雾不变特征的雾状场景分割算法)_第7张图片

你可能感兴趣的:(去雾算法,DeepLearining,计算机视觉,深度学习,图像去雾,目标分割)