ECCV2020 | Cityscapes上83.7 mIoU,通过解耦的主体和边缘监督改进语义分割

点击上方“AI算法修炼营”,选择“星标”公众号

精选作品,第一时间送达

本文是收录于ECCV2020,将语义分割网络解耦成主体部分和边缘部分,并将body和edge同时进行优化,思想其实很简单。

论文地址:https://arxiv.org/pdf/2007.10035.pdf

代码地址:https://github.com/lxtGH/DecoupleSegNets

现有的语义分割方法要么通过对全局上下文信息建模来提高目标对象的内部一致性,要么通过多尺度特征融合来对目标对象的边界细节进行优化。本文提出了一种新的语义分割方法,本文认为性能强的语义分割方法需要明确地建模目标对象的主体(body)和边缘(edge),这对应于图像的高频和低频信息。为此,本文首先通过warp图像特征来学习 flow field使目标对象主体部分更加一致。在解耦监督下,通过对不同部分(主体或边缘)像素进行显式采样,进一步优化产生的主体特征和残余边缘特征。通过实验表明,所提出的具有各种基准或主干网络的框架可有更好的目标对象内部一致性和目标对象边界。在包括Cityscapes、CamVid、KIITI和BDD在内的四个主要道路场景语义分割数据集上进行的大量实验表明,本文提出的方法实现了SOTA,同时保持了较高的推理效率。特别是,本文的方法仅使用精细标注的数据就可以在Cityscapes数据集上达到83.7 mIoU。

简介

语义分割是计算机视觉中的一项基本任务,旨在将对象类标签分配给图像中的每个像素。这是迈向视觉场景理解的关键一步,它具有许多应用,例如自动驾驶、图像生成和医学诊断。

虽然全卷积网络(FCNs)在许多主要的语义分割baseline中表现出色,但它们仍然存在以下局限性:首先,FCNs的感受野(Receptive Field,RF)随着网络深度的增加而缓慢增长(仅线性增长),这种有限的RF无法完全模拟图像中像素之间的长距离依赖关系。此外,FCNs中的下采样操作会导致模糊的预测,因为与原始图像相比,细微的细节会在显著降低的分辨率中消失,由于像素的模糊性和噪声发生在物体主体内部,很难对其进行分类。因此,预测的分割边界往往是模糊的,边界细节远远不能令人满意,这导致性能下降,特别是在小物体上。

另一方面,人类通过感知物体主体和边缘信息来区分物体是很自然的。受此启发,本文以明确的方式探索主体和边缘之间的关系,以获得最终的语义分割结果。如图1(a)前两行所示,一个自然的图像可以分解为一个低空间频率分量,它描述了平滑变化的结构,以及一个高空间频率分量,它描述了快速变化的结构。首先应用均值或高斯滤波器进行平滑处理,其余高频部分可通过减法获得。同样的,分割mask也可以用这种方式解耦,其中细微细节的边缘部分可以通过减法从主体部分获得。 受这一结论的启发,假设用于语义分割的特征图也可以解耦为两个部分:主体特征和边缘特征(见图1(b))。前者包含了物体内部低频的平滑表示,而后者则有高频的sharper细节信息。

图1.说明本文的模块和监督框架。(a) 提出的框架的动机。本文的方法在将自然图像解耦为低频和高频时共享相同的分割。(b)框架的示意图。本文的方法包括三个步骤:首先,将分割特征分为身体特征和边缘特征。然后,对这两个部分进行专门设计的监督。然后合并两个改进的功能以进行最终预测。

在本文中,通过在特征层上显式地建模主体一致性和保留边缘信息,然后在统一框架中联合优化它们来解决语义分割。整个过程包括三个步骤。首先,提出了一种新颖的基于流flow-based的方法,通过学习的偏移offset field将每个像素向目标对象内部弯曲,以保持每个对象的主体部分的一致性,从而生成主体特征表示。然后,通过从输入特征中明确减去主体特征来获得边缘特征。主体特征由mask进行监督,在训练过程中忽略边缘,而边缘特征由边缘mask监督以学习边缘预测。最后,将两个优化的特征合并到最终的表示中进行分割。由于主体生成部分是在降采样特征上完成的,因此边缘信息不准确。将边缘特征和主题特征两个部分合并为一个单独的特征,作为重建的表示形式,并通过常用的交叉熵损失对其进行监督训练。

此外,所提出的框架是轻量级的,可以插入基于最新的FCN 的分割网络中以提高其性能。该方法在四个驾驶场景数据集包括Cityscapes ,CamVid ,KITTI 和BDD 上均取得了最佳性能。特别是,该方法在仅带有精细标注数据的Cityscapes数据集上实现了83.7 mIoU。

本文的方法

图2展示了整个网络架构,该架构基于最新模型Deeplabv3 +。在这里,仅将带空洞卷积的ResNet用作主干网络。特别是,本文所提出的模块被插入到ASPP模块之后。解耦损失函数分别附加在解耦模块的末尾。此外,本文的模块重量轻,可以部署在任何FCN架构(例如PSPNet )上以完善特征表示。

1  Decoupled segmentation framework

给定一个特征图H×W×C,其中C表示通道尺寸,H×W表示空间分辨率,所提出的模块输出具有相同大小的细化特征图。特征图可以分解为body主体部分和edge边缘部分。在本文中,假设它们满足加法规则,这意味着特征图F:F = Fbody + Fedge。本文模型目标是设计具有特定监督权的组件,分别处理每个部分。因此,首先通过执行body部分,然后通过显式减法获得边缘部分。主体生成模块旨在聚集对象内部的上下文信息并为每个对象形成清晰的对象。

2  Body generation module主体生成模块

主体生成模块负责同一对象内的像素生成更一致的特征表示。因为物体内部的像素彼此相似,而沿边界的像素则显示出差异,因此可以显式地学习body和边缘特征表示,为此,本文的方法学习了flow field,并使用它对原始特征图进行warp以获得显式的主体特征表示。该模块包含两个部分:flow field生成和特征变形。

2.1 Flow  field  generation

为了生成主要指向对象中心的flow,突出对象中心部分的特征作为显性引导是一种合理的方法。一般来说,低分辨率的特征图(或粗表示)往往包含低频项。低空间频率项捕捉了图像的总和,低分辨率特征图代表了最突出的部分,在这里我们将其视为伪中心位置或种子点的集合。如图2(a)所示,因此采用了编码器-解码器的设计,编码器将特征图下采样为低分辨率表示,并有较低的空间频率部分。 同时应用strided-convolutions将F压缩成高频特征图,具体采用三次连续的3×3深度卷积来实现。对于flow field的生成,与FlowNet-S(《Flownet: Learning optical flow with convo-lutional networks.》)共享相同的pipline。详细来说,首先将低频特征图上采样插值到与原始特征图相同的大小,然后将它们连在一起,并应用3×3 卷积层来预测流图。由于模型是基于扩张的主干网络,3×3的卷积核足够大,在大多数情况下可以覆盖像素之间的长距离。

2.2 Feature warping

使用可微分的双线性采样机制来逼近每个点, 其过程如下面公式所示:

从flow特征图δ计算出的wp代表了扭曲空间网格上的双线性核权重。N代表所涉及的相邻像素。

3、Edge preservation module边缘保留模块

边缘保留模块旨在处理高频项。它还包括两个步骤:1)从原始特征图F中减去主体特征图;2)添加更精细的细节信息的低级特征作为补充。首先,从原始输入特征图F中减去主体特征,添加了额外的低级特征输入,以补充缺少的详细信息,以增强主体特征中的高频项。最后,将两者连接起来,并采用1×1卷积层进行融合。该模块可以用下面等式表示,其中γ是卷积层并且表示级联运算。

4、Decoupled body and edge supervision损失函数

因为每个部分都有特定的目的。特别是,可以为body和edge附加辅助监督损失。对于边缘保留模块,预测了训练过程中的边界映射,它是图像中对象和填充类的所有轮廓的二进制表示。总损失函数是计算如下:

实验与结果

数据集:Cityscapes、CamVid、 KITTI 、BDD  

实验结果

1、消融实验

2、对比实验

    

4、其他数据集上效果

更多细节可参考论文原文。


你可能感兴趣的:(python,计算机视觉,机器学习,人工智能,深度学习)