[论文学习] OCNet: Object Context Network for Scene Parsing (Microsoft Research)

OCNet: Object Context Network for Scene Parsing
OCNet:用于场景分析的对象上下文网络

作者:Yuhui Yuan 、Jingdong Wang
论文:http://arxiv.org/pdf/1809.00916v1.pdf
代码:https://github.com/PkuRainBow/OCNet

摘要
上下文对于各种计算机视觉任务至关重要最先进的场景解析方法已经利用了在图像级别上定义的上下文的有效性。这种上下文携带属于不同类别的对象的混合。
在这里插入图片描述
根据每个像素P的标签被定义为它所属的对象的类别,我们提出像素化 object context,其由属于相同类别的对象和像素P组成。像素P的object context 的表示是属于与P共享相同类别的像素的所有特征的聚合。由于地面实况反对属于的像素P不可用,我们采用自注意方法通过学习像素相似性图来近似对象。

我们进一步提出金字塔object context和Atrous空间金字塔object context来捕获多个尺度的上下文。基于object context,我们介绍了OCNet,并表明OCNet在Cityscapes基准测试和ADE20K基准测试中都达到了最先进的性能。OCNet的代码将在https://github.com/PkuRainBow/OCNet上提供。

简介
在这里插入图片描述
Figure 1: OCNet预测的像素级对象上下文。第一列显示了来自Cityscapes验证集的三幅图像,第二列显示了它们的ground-truth分割地图,第三列显示了使用OCNet预测的注意力地图。第一行的预测注意图是基于目标车中的一个像素,第二行是基于目标人中的一个像素,第三行是基于目标路中的一个像素。颜色的深浅表示注意力权重的大小(最深的蓝色表示最高的值)

灵感来自每个像素的标签P是对象的类别,它属于我们介绍中的Object1上下文捕获的对象属于同一个类别与像素P .考虑到对象属于同一个类别和P提前不可用,我们使用自注意方法,通过学习一个包含所有像素和像素P之间相似性的相似性图来近似对象。我们通过根据预测的相似性图聚合所有特征来近似表示每个像素P的对象上下文

网络结构
在这里插入图片描述
上图为OCNet主要的网络结构

OCNet以ResNet-101为backbone(后两个block为dilated convolution,dilation rate分别为2和4),其后是这篇文章提出的object context module去计算逐像素的object context,最后是1×1的卷积输出预测图。object context module是基于Self Attention Mechanism,作者一共提出了3种不同的object context module: base-OC, Pyramid-OC, ASP-OC。

在这里插入图片描述
上图为3种不同的object context module分别为: base-OC, Pyramid-OC, ASP-OC。每个object context module都含有3个阶段:(1)计算X;(2)计算C;(3)融合
Base-OC
(1)计算X: 3×3的卷积减少channel从2048到512
(2)计算C: 用self-attention模块计算逐像素的attention map和object context
(3)融合: concatenate C 和 X
进一步用1×1的卷积减少channel维度为512

Pyramid-OC(受PSPNet的启发)
(1)计算X: 3×3的卷积减少channel从2048到512
(2)计算C: 在四个分支中分别用self-attention模块计算逐像素的attention map和object context。第一个分支把全部特征图作为输入,第二个分支把特征图分为2×2的子区域,每个子区域应用共享的transform,第三个和第四个分支把输入分为3×3和6×6的子区域,每个子区域的transform不共享。最后concatenate每个分支的结果并用1×1的卷积增加X的维度与object context的维度相等再进行concatenate
(3)融合: 进一步用1×1的卷积减少channel维度为512

ASP-OC(受DeepLAbV3的ASPP启发)
(1)计算X: 共有5个分支。分别为1×1的卷积,3×3的卷积,dilation rate为12的3×3卷积,dilation rate为24的3×3卷积,dilation rate为36的3×3卷积
(2)计算C: 对每个分支的结果分别用self-attention模块计算逐像素的attention map和object context。实验发现再2,3,4,5分支中使用self-attention模块会有害performance
(3)融合: concatenate C 和 X,进一步用1×1的卷积减少channel维度为512

在这里插入图片描述
上图介绍了Object Context module中的变量和基本原理。
在计算object context表示的自注意模块(SA)。X为输入的特征图,P为位置特征图,W为由self-attention得到的逐像素的相似度图,第i行表示所有像素与第i个像素的相关性,C为Object Context module最后得到的逐像素的object context表达。
其推倒表达式可表示为:
在这里插入图片描述
其中W可由以下公式得到:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值