Mask RCNN

713 阅读2分钟

1. 摘要

Mask RCNN是在faster RCNN的基础上提出的,在原有的基础上添加了mask模块,可用于实例分割,在检测物体的同时,能获得高质量的分割效果。是一个并行的架构。

2.主要创新点

  • 原RCNN并不是为了分割物体而提出的,为校准空间信息提出RoIAlign,RoIAlign能精确地保留原来的空间信息(疑惑?) mask RCNN的精度要高10%-20%,说明了位置信息对分割的重要性。 之前的rolPooling使用的是取整操作,造成不配准的问题,这对于提取准确的mask有巨大的负面影响。现改用双线性插值的RoIAlign。
  • 与使用softmax的分类方法不同,mask rcnn 单独地为每一个类预测一个二进制掩膜,不存在类内竞争,依赖ROI分支进行预测。
  • 使用的损失函数不同:使用组合损失函数L = Lcls + Lbox + Lmask

盲区知识点

  • 损失空间信息:像分类和定位的网络,在全连接层处会将空间信息压缩到短向量;而这个问题可以用像素到像素连接的卷积来提取空间结构。
  • pix to pix behavio是什么意思?

3.主要框架

RoIAlign:ROI Align是在Mask-RCNN这篇论文里提出的一种区域特征聚集方式, 很好地解决了ROI Pooling操作中两次量化造成的区域不匹配(mis-alignment)的问题。实验显示,在检测测任务中将 ROI Pooling 替换为 ROI Align 可以提升检测模型的准确性。

RoIAlign
分为了两部分,(i)主干网络用卷积神经网络进行特征提取;(ii)用网络头进行bounding box的分类和回归。每一个mask prediction单独对每一个RoI进行。 主干神经网络使用resNet,提取第四个全连接层的特征。

3.1整体框架

推荐一篇不错的mask rcnn的博文