ACFNet:用于语义分割的注意类特征网络

原名:ACFNet: Attentional Class Feature Network for Semantic Segmentation

链接:Accepted to ICCV 2019,https://arxiv.org/abs/1909.09408

参考阅读:https://blog.****.net/gefeng1209/article/details/102760719

一、方法简介

不同于普通语义分割从空间角度设计利用上下文信息,提出类中心的概念,从分类的角度提取全局上下文。这个类级别的上下文描述了图像中每个类的整体表示。进一步提出了一种新颖的模块,称为注意力类别特征(ACF)模块,用于根据每个像素计算并自适应地组合不同的类别中心。在ACF模块的基础上,我们引入了一种从粗到细的细分网络,称为注意力分类特征网络(ACFNet),它可以由ACF模块和任何现成的细分网络(基础网络)组成。

ACFNet:用于语义分割的注意类特征网络

通俗来说,即是在CNN网络中间特征层A,对属于类别i的像素计算属于其i类别的平均概率ACFNet:用于语义分割的注意类特征网络,计算的结果称之为类别i的Class Center:属于类别i的所有像素的平均特征(特征图上的平均响应值);再将计算结果ACFNet:用于语义分割的注意类特征网络与属于该类别的所有像素概率值相乘获得ACFNet:用于语义分割的注意类特征网络ACFNet:用于语义分割的注意类特征网络层作为新的特征连接到该中间特征层A中继续进行之后的网络训练。

二、方法创新点详解

1、初始类别确定Class Center,CCB:Class Center Block

类别i的Class Center:属于类别i的所有像素的平均特征(特征图上的平均响应值)

理论:在label上计算

ACFNet:用于语义分割的注意类特征网络

类别i的class center=(label上类别i在每个通道上对应位置预测值累加和)/(label上类别i的像素个数) 

实际:在粗分割图ACFNet:用于语义分割的注意类特征网络和特征图ACFNet:用于语义分割的注意类特征网络上计算,先将ACFNet:用于语义分割的注意类特征网络的维度reshape成ACFNet:用于语义分割的注意类特征网络,使用1*1卷积减少F的通道数然后reshape得到ACFNet:用于语义分割的注意类特征网络

ACFNet:用于语义分割的注意类特征网络

 

ACFNet:用于语义分割的注意类特征网络

2、Attentional class feature,CAB:class attention block

直接使用粗分割图作为attention map,再利用class center来计算得到attention class featureACFNet:用于语义分割的注意类特征网络

ACFNet:用于语义分割的注意类特征网络

 

计算的结果与特征层A连接再进行1*1卷积,细化计算得到的特征,并用于继续原始网络进行之后的训练。

ACFNet:用于语义分割的注意类特征网络

三、实验效果

Class Center的两个好处:

每个类别的class center都表达了该类别的全局信息,在训练时可以帮助模型学习到每个类别之间的鉴别力的特征
class center可以帮助检查一个像素与每个类别的class center之间的一致性,通过引入class center,模型可以纠正一些之前被错分的case

1、添加到成熟的ResNet网络中效果明显提升

ACFNet:用于语义分割的注意类特征网络

2、与其他网络在常见类的对比

ACFNet:用于语义分割的注意类特征网络

3、将ResNet101作为基础网络添加ACF机制时的分割效果

ACFNet:用于语义分割的注意类特征网络