Advertisement

【论文阅读】【CVPR2019】Dual Attention Network for Scene Segmentation

阅读量:

源文icon-default.png?t=L9C2https://arxiv.org/abs/1809.02983源码icon-default.png?t=L9C2https://github.com/junfu1115/DANet

Introduction

这篇论文通过基于Self Attention mechanism来捕获上下文依赖。提出了Dual Attention Networks(DANet)来自适应地整合局部特征和全局依赖。具体做法是,在一贯的dilated FCN中加入两种类型地attention module。其中position attention module选择性地通过所有位置的加权求和聚集每个位置的特征。channel attention module通过所有channle的feature map中的特征选择性地强调某个特征图。最后将两种attention module的output 求和得到最后的特征表达。所提出的DANet在三个数据集Cityscapes,PASCAL Context和coco Stuff上实现了state-of-the-art的结果。

Model

基础网络为dilated ResNet(与DeepLab相同),最后得到的feature map大小为输入图像的1/8。之后是两个并行的attention module分别捕获 spatial和channel的依赖性,最后整合两个attention module的输出得到更好的特征表达。

Position attention module

如图所示,在Position Attention Module中,特征图A(CxHxW)首先分别通过3个卷积层得到3个特征图 B,C,D,然后reshape为CxN,其中N=HxW,之后将reshape后的B的转置与reshape后的C相乘再通过 softmax得到spatial attention map S(NxN),接着把 S的转置与D做乘积再乘以尺度系数lpha再reshape为原来形状,最后与A相加得到最后的输出E。其中lpha初始化为0,并逐渐的学习分配到更大的权重。可以看出E的每个位置的值是原始特征每个位置的加权求和得到的。

Channel attention module

同样的,在ChannelAttention Module中,分别对A做reshape和reshape与transpose,将得到的两个特征图相乘再通过softmax得到channel attention map X(CxC),接着把X与 A做乘积再乘以尺度系数eta再reshape为原来形状,最后与A相加得到最后的输出E。其中 eta初始化为0,并逐渐的学习分配到更大的权重。

EXperiment




参考原文链接:[()

全部评论 (0)

还没有任何评论哟~