论文阅读:《Mask R-CNN》ICCV2017

概述

Mask R-CNN是用于目标检测分割的框架,即对一张图片,既输出图片中已有的目标,还能为每一个实例生成一个高质量的分割掩码。一句话概括object instance segmentation = object detection + semantic segmentation。

特点

1.mask R-CNN是在faster R-CNN的基础上,在每一个RoI都增加一个预测分割的 mask,这和分类以及bounding box回归是并行的一条分支。
2.训练简单,仅仅比faster R-CNN多一点计算开销
3.易于泛化到多个任务上,例如人体姿态估计
4.在不加任何的trick的情况下,再COCO数据集上超越其他的方法

网络框架

这里写图片描述

Mask R-CNN整体框架是faster R-CNN的基础上又加入了全连接的分割子网络,由原来的两个任务(检测+分类),变化了现在的三个任务(检测+分类+分割)。maks R-CNN有两条并行的分支,第一个分支是使用faster R-CNN的基础结构,对候选bounding box进行分类和bounding box坐标回归。第二个分支是对每一个RoI区域预测分割mask,他的结构实际上是一个小的FCN。

实现细节

(1)faster R-CNN 的输出是两个:类别标签和bounding box,它的算法步骤是

第一,RPN(region proposal network),给出候选的bounding box
第二,通过RoIpooling,在各个候选框中进行分类和坐标回归。

所谓RoIpooling就是将大小不同的bounding box映射到矩形框中

(2)mask R-CNN也是分为两步:

第一,RPN给出候选bounding box
第二,一个分支对bounding box进行分类和回归,另一个分支对每一个RoI输出binary mask

(3)loss function:classification loss + box loss + mask loss。mask分支对每一个RoI有Km2维度的输出,即K个类别,分辨率为m*m的二值mask。因此作者使用的是单像素sigmoid二值交叉熵,而不是单像素的softmax多项式交叉熵。二值交叉熵会使得每一类的mask不互相竞争,而不是和其他类的mask比较。

(4)RoIAlignment:是对RoIpooling的改进,RoIpooling会使得在pooling的时候存在不对准的情况,因此作者采用先双线性插值,再聚合的方法。可以用来进行pixel-to-pixel的对准。

开源实现

https://github.com/CharlesShang/FastMaskRCNN (TensorFlow)
https://github.com/xilaili/maskrcnn.mxnet(MxNet)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值