Mask R-CNN

论文:Mask R-CNN 

Github:https://github.com/facebookresearch/Detectron

 

论文主要基于检测框架faster RCNN的基础上,增加了一个实例分割的head分支模块,从而实现Instance segment。实际速度可以达到5fps。

 

RCNN,fast RCNN,faster RCNN,mask RCNN进化史:

RCNN:

整体流程不是端到端,分成了3个独立的过程

  1. 候选框提取采用selective search方法
  2. CNN模块对候选区域提取特征
  3. SVM进行分类,LSR进行回归

fast RCNN:

整体流程依然不是端到端,分成了2个独立的过程,selective search提取候选区域的过程,以及后续的提特征,分类回归这2个过程

相比RCNN的改进:

  1. 使用softmax代替svm,使用smooth L1代替LSR
  2. 提出了roi pooling,使得提特征和分类回归这2部分端到端

faster RCNN:

整体流程端到端实现

相比fast RCNN的改进:

    1.提出RPN结构,终于使得整个检测框架端到端。

mask RCNN:

相比faster RCNN主要改进在于

  1. 增加了mask branch这个做instance segment的head分支,并且训练使用binary sigmoid loss而不是softmax
  2. 基础backbone采用了FPN思想
  3. Roi pooling升级为roi align,避免了2次量化精度的损失

 

论文贡献:

(1)Mask 分支的Instance segment实现

(2)Roi pooling的改进版Roi align

(3)和yolo-v3一样,使用多个binary sigmoid 来替换softmax

 

整体框架:

总体loss:

分别代表分类的loss,边界框回归的loss,实例分割的loss。

 

ROI align:

ROI pooling操作细节:

ROI align操作细节:

 

Mask 模块结构:

实验结果:

coco实例分割结果:

Mask rcnn 的分割结果优于fully convolutional instance segmentation (FCIS)

 

各个改进点对结果的提升:

(a)resnext的结果优于resnet101,resnet101的结果优于resnet50。FPN的使用会对结果有提升。

(b)多分类任务使用多个sigmoid效果优于使用1个softmax,避免了各个像素对应类别之间的竞争,解决了1个像素可能同时属于多个类别的问题。

(c)RoiAlign>RoiWarp>RoiPool

(d)使用Resnet50的第5个卷积层(stride=32)比第4个卷积层(stride=16),更能体现出RoiAlign比RoiPool具有更大的优势。RoiAlign对misalignment具有更好的鲁棒。

(e)Mask分支中,使用FCN结构比MLP结构效果更好,因为FCN可以编码空间布局信息。

 

coco物体检测结果:

 

coco关键点检测结果:

 

Cityscapes 实例分割结果:

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值