DFN 论文笔记

DFN 论文笔记

论文:Learning a Discriminative Feature Network for Semantic Segmentation

论文最早版本arXiv上的发表时间是2018.04,本文是论文v1版本笔记

CVPR 2018收录


Abstract

现有的语义分割方法主要面对两个方面的挑战:

  • intra-class inconsistency:类内不一致
  • inter-class indistinction:类间无差别

Discriminative Feature Network (DFN)包含两个子网络:

  • Smooth Network用于处理类内一致性问题,作者设计了一个具有通道注意力模块和全局平均池化的平滑网络,以选择更有判别性的特征
  • Border Network用于处理边界不清晰问题,借助多层语义边界监督区分边界两边的特征

1. Introduction

语义分割是众多计算机视觉应用中的一项基本技术。

但仍有一些问题:

  • intra-class inconsistency:类内不一致。一个区域内有相同的语义标签,但是模型将其预测成了不同的类。如第一行牛的左下角被分类成了马
  • inter-class indistinction:类间不清晰。两个相邻的区域,有着类似的外表、不同的语义标签,但是模型将其预测为了一类。如第二行机箱与屏幕有着相同的蓝光和黑壳,使其难以区分

--

为了应对这两个挑战,从更宏观的角度重新思考语义分割任务

  • 将其看作一项把一致的语义标签分配给一类物体而不是每个单一像素的任务。
  • 需要把每个类别的像素看作一个整体,进而同时兼顾类内一致与类间差别
  • 这意味任务需要具有判别性的特征

所以本文提出一个全新的判别特征网络(DFN) 以学习特征表示,DFN有两个组件:Smooth Network 和 Border Network

--

Smooth Network用来解决类内不一致问题

  • 需要多尺度和全局语境特征来编码局部和全局信息。比如,由于缺乏足够的语境信息,图1(a) 中的白色小图像块经常无法预测正确
  • 引入多尺度语境信息后,对于一定尺度的物体来说,大量的特征具有不同程度的判别力,其中一些特征可能导致预测错误。因此,有必要选择高效的判别特征

出于上述两方面的考虑,Smooth Network设计成了U形结构

  • 可以抓取不同尺度的语境信息,并通过全局平均池化抓取全局语境
  • 此外,还使用了通道注意力模块(CAB),利用高层特征逐阶段地指导低层特征的选择

--

Border Network负责区分外观相似但标签不同的相邻图像块

  • 大多数现有方法把语义分割看作一种密集识别问题,通常忽略了对类间关系进行建模
  • 以图 1(d) 为例,如果越来越多的全局语境信息整合进分类过程,相邻于显示器的电脑主机由于外观相似很容易被误认是显示器
  • 因此,明确地使用语义边界指导特征的学习非常重要。这可以迫使网络增强两边特征的判别性
  • 作者把语义边界loss整合进Border Network以学习更有判别性的特征,增大类间差别

2. Related Work


3. Method

3.1. Smooth network

绝大多数现有方法无法保证正确预测图像中所有部分,尤其是较大区域的物体和复杂场景时。

--

类内不一致主要因为语境缺失

  • 可以通过使用全局平均池化来引入全局语境
  • 但全局语境只具有高维语义信息,无助于复原空间信息
  • 因此需要多尺度感受野和语境来优化空间信息,正如大多数现有方法那样
  • 然而,由于不同尺度的感受野其判别力也各不相同,会造成不一致的结果
  • 从而需要选择更具判别力的特征来预测某个特定类别的统一语义标签

--

本文使用 ResNet 作为基础识别模型

--

当下流行的语义分割架构主要有两种 style

  • Backbone-Style,如PSPNet和Deeplab v3,通过PSP module或ASPP来集成多尺度信息
  • Encoder-Decoder-Style,比如RefineNet和GCN,利用不同阶段固定的多尺度上下文,但是这缺乏强连续性的全局上下文信息

许多网络结构结合不同阶段的特征是仅仅是通过通道相加完成的,这样的操作忽略了不同阶段之间的差异性

  • 本文嵌入了一个全局平均池化层,把 U 形架构扩展为 V 形架构。为网络引入最强的一致性约束作为指导
  • 本文提出通道注意力模块以增强一致性。该设计结合相邻阶段的特征以计算通道注意力向量。高级特征给出语义指导选择低级特征,从而达到选择更具区分力的特征

Channel attention block:

结构:

CAB 的设计目的是改变每一阶段的特征权重以优化一致性,如图 3 所示:

  • 在 FCN 架构中,卷积算子输出了一个score map,给出每个像素在每一类别上的概率。这种方式实际意味着不同通道的权重是平等的。
  • 然而,不同阶段的特征判别力不同,造成预测的一致性各不相同。
  • 为实现类内一致预测,应该提取判别特征,并抑制非判别特征,从而可以逐阶段地获取判别特征以实现预测类内一致。

Refinement residual block:

特征网络中每一阶段的特征图全都经过 RRB,如图 2(b) 所示:

  • 第1个组件是1x1卷积层,整合所有通道的信息,并把通道数量统一为 512
  • 接着是一个基本的残差模块,可以优化特征图
  • 该模块还可以强化每一阶段的识别能力

3.2. Border network

在语义分割任务中,尤其在空间上相近时,预测外观相似的不同类别时经常容易混淆

  • 因此需要增大特征间的差别
  • 出于这一考虑,本文采用语义边界指导特征学习,同时应用显式监督提取精确的语义边界,使网络学习类间更具判别性的特征
  • Border Network 直接通过显式语义边界监督学习语义边界,类似于语义边界检测任务。这使得语义边界两边的特征变得可区分

--

本文的工作需要语义边界具有更多的语义含义

  • 因此Border Network的设计是自下而上的
  • 它可以同时从低级阶段获取精确的边界信息和从高级阶段获取语义信息,从而消除一些缺乏语义信息的原始边界
  • 高级阶段的语义信息可以逐阶段地优化低级阶段的细节边界信息
  • 借助传统的图像处理方法,比如 Canny,作者可以从语义分割的groundtruth中获得网络的监督信号

--

为了处理正负样本不均衡,使用了focal loss来监督Border network,调整α和γ参数以获得更佳的性能:FL(p_{k})=-(1-p_{k})^{\gamma}logp_{k} 。其中 p_{k} 是对每个类别 k 的概率估计值。

3.3. Network Architecture

基于Smooth Network和Border Network,论文提出DFN:

使用预训练的ResNet作为网络主干

  • Smooth NetWork:顶端使用了一个全局平均池化层捕获全局信息。使用channel attention block来改变通道权重
  • Border Network上,使用语义边界监督,网络获得更为精准的边界,得到的mask也更具区分度

显式的特征优化

  • 需要使用多层监督以获取更佳性能,同时网络也更容易训练
  • Smooth Network借助softmax loss监督每一阶段的上采样输出(全局平均池化层除外) l_s=SoftmaxLoss(y;w)
  • Border Network借助focal loss监督输出, l_b=FocalLoss(y;w)
  • 两个子网络在一起联合训练,其loss通过一个λ参数控制两者的权重,L=l_s+\lambda l_b

4. Experimental Results


5. Conclusion

  • 论文从更为宏观的角度审视语义分割任务,将其看作一项把一致的语义标签分配给一类物体(而不仅仅是在像素层面)的任务
  • 认为现存的语义分割任务存在两个挑战:intra-class inconsistency和inter-class indistinction
  • 针对这两个挑战,论文分别提出了Smooth Network还是Border Network
  • 在次基础上,提出了完整的结构DFN,实验结果证明了模型的有效性

发布于 2018-09-16

文章被以下专栏收录