【文献阅读笔记之】ACFNet: Attentional Class Feature Network for Semantic Segmentation

摘要

传统的语义分割网络大的是从空间的角度设计的,充分利用丰富的上下文信息。文章中提出一种新的观点,类中心,即从分类的角度提取全局的上下文。除此之外,作者还提出一个新的模块,名为注意类特征(ACF)模块,用来计算和自适应地结合每个像素的不同类中心。在此基础上,作者引入了一个从粗到细的分割网络,称为Atten-tional Class Feature Network (ACFNet),它可以由ACF模块和任何非壳分割网络(基础网络)组成。

一. 引言

一些常见的模块,例如PPM、ASPP模块,他们都是侧重于用不同的空间策略(PPM是将图像分割成多个不同大小的区域,分别进行下采样,ASPP是用不同扩张率的卷积核)来获取丰富的上下文信息。在计算上下文时,他们没有明确区分不同类别的像素。无论像素来自哪个类别,周围来自不同类别的激活对象对上下文的贡献都是一样的,这可能使像素在确定它属于哪个类别时感到困惑。

作者认为,利用以前被忽视的类级背景,对于语义分割任务也是至关重要的。类中心则侧重于从分类的角度来捕捉上下文,它使用同一类别的所有像素来计算一个类级的表示。因此,作者提出了一个简单而有效的从粗到细的分割框架来接近类中心。

除此之外,作者受到了注意力机制的启发,提出不同的像素需要适应性地找到(文中用的是pick up)不同类别的类中心。例如,如果一个图像中没有 "道路 "类别,那么这个图像中的像素就不需要关注 "道路 "的特征。如果一个像素在 "人 "类和 "骑手 "类之间摇摆不定,那么它应该更关注 "人 "和 "骑手 "在整个图像中的表现,而不是其他类别。因此,提出了一个注意力类别特征(ACF)模块,利用注意力机制,使像素有选择地意识到整个场景的不同类别中心。

作者提出的网络由两部分组成。第一部分是一个完整的语义分割网络,称为基础网络,它产生粗略的分割结果,它可以是任何先进的语义分割网络。第二部分是ACF模块。ACF模块首先使用粗略的分割结果和基础网络的特征图来计算每个类别的类中心。然后,通过粗略分割结果和类中心计算出注意类特征。

为什么要用粗略的分割结果:大家知道,我们在训练我们网络的时候,对于输入图像,我们有真实标签(groundtruth),但是我们在预测一张新的图像的时候,并没有真实标签供我们使用。所以,作者提出使用一张粗略的分割结果来训练,这样可以应对实际应用的场景,使我们的网络具有鲁棒性。

 图1.注意类特征网络(Attentional Class Feature Network)

在给定输入图像(a)的情况下,我们首先使用CNN(基本网络)获得更高层的特征图(b)和相应的粗分割结果(c)。然后应用注意类特征(ACF)模块(d)根据粗略分割结果计算不同类别的类中心(e)和每个像素的注意类特征。最后将注意力类别特征和特征图(b)连接起来,得到最终的精细分割(f)

作者的贡献总结如下:

 提出了类中心的概念、提出了ACF模块、提出了一种粗略-精细的分割结构


二、

略过,介绍了一些前人的贡献


三. 方法

本节中,首先介绍我注意力类征(ACF)模块,并阐述ACF模块如何捕获和自适应组合类中心。然后介绍了一种由粗到细的分割结构,它由ACF模块组成,名为注意类特征网络(ACFNet)。

3.1 注意类特征模块

ACF模块的总体结构如图2 (d)所示,它由两个模块组成:Class Center Block(CCB)和Class Attention Block(CAB),分别用于计算类中心和注意类特征。ACF模块基于从粗到细的分割结构。ACF模块的输入是粗分割结果和基础网络的特征图(这里指的是图2中的b,即经过主干网络输出的feature map),输出是注意类特征。

图2. CCB模块 

 图3.CAB模块

3.1.1 类中心

类中心的定义方式如下:

 其中,y_{j}是像素 j 的标签,1[y_{j}=i]代表对应像素是否来自第  i类的二进制指示符。

我们用粗略的分割结果来评估一个像素属于特定类别的可能性。对于某一个类A,在粗略分割结果中出现A概率较高的像素通常属于A,这些像素在计算A的类中心时应该贡献更多,这样我们就可以近似一个鲁棒的类中心。

粗略分割结果输出的结果P_{coarse}\epsilon \mathbb{R}^{N\times H\times W}和经过主干网络的输出feature map F \epsilon \mathbb{R}^{C \times H \times W}。其中,N是类别的数量,我们用类中心块(CCB)来计算每个类别的类中心。

图4. 类中心的作用

对于一个属于A类的给定像素p,当只使用p的特征时,模型将其误标为B类。但如果模型知道A(浅蓝色区域)和B(浅黄色区域)在图像中的代表(类中心),它可以发现p更有可能来自A而不是B,因此,错误的预测可以得到纠正。

3.1.2 注意类特征

对于像素p,我们将粗分割结果作为其注意图(attention map)来计算其注意类特征。我们使用粗分割结果的原因很简单。如果粗分割将一个像素标错了一个错误的类,它就需要更多地关注这个错误的类来检查特征的一致性。或者,如果一些类甚至不存在于图像中,像素不需要知道这些类。如图4所示,像素p只需要知道A和B的类中心,而不需要知道其他类中心。

图5. 类中心和类特征的计算公式

3.2 注意类特征网络

我们分别使用ResNet]和带有atrous空间金字塔池(ASPP)的ResNet作为我们的基网络,以验证我们的ACF模块的有效性。ACF模块利用分割结果和基础网络中的特征图来计算注意类特征。最后,我们将注意类特征和基准网络中的特征图连接在一起,通过1 × 1的卷积进行细化,得到最终的分割结果。

损失函数采用交叉熵损失函数。并且用了三个参数(λa,λc,λf)来平衡辅助损失、粗略分割损失和精细分割损失(la,lc,lf)

四.实验

数据集采用的是Cityscapes

4.1 网络结构

基准网络我们使用ResNet-101在ImageNet上进行预训练,PSPNet,去掉分类层和最后一个池化层,最后两个块内卷积层的膨胀率分别设为2和4。网络的输出stride设置为8。

带ASPP模块的基准网络为了验证ACF模块的泛化能力,我们还在基础网络ResNet-101和ASPP模块的基础上进行了多次实验,并且按照原论文的方法,将四个支路的输出通道从256改为512。

注意类特征模块为了减少计算量和内存占用,首先将ACF模块的输入通道减少到512。ACF模块最终输出的通道数也设置为512。

4.2 实现细节

我们使用随机梯度下降(SGD)优化器,初始学习率为0.01,权重衰减为0.0005,动量为0.9。学习率衰减策略采用学习率乘以一个系数(1-\frac{iter}{maxiter})^{0.9}。(λa,λc,λf)分别设置为0.4,0.6,0.7。迭代40k次,batch size为8.

4.3 消融实验

4.3.1注意类特征模块

我们首先使用atrous ResNet-101作为基线准网络,通过直接对输出进行上采样获得最终结果。首先,我们评估基准网络的性能,如表1所示。

 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值