当前位置:   article > 正文

Mask R-CNN详解(图文并茂)

mask r-cnn

Mask R-CNN

Mask R-CNN是一个实例分割(Instance segmentation)算法,主要是在目标检测的基础上再进行分割。Mask R-CNN算法主要是Faster R-CNN+FCN,更具体一点就是ResNeXt+RPN+RoI Align+Fast R-CNN+FCN,如下图所示。

Mask R-CNN

Mask R-CNN的创新点有:
1 .Backbone:ResNeXt-101+FPN 2. RoI Align替换RoI Pooling
Mask R-CNN算法步骤:

1.输入一张图片,进行数据预处理(尺寸,归一化等等)
2.将处理好的图片传入预训练的神经网络中(ResNet等,优秀的主干特征提取网络)获得相应的feature map。
3.通过feature map中的每一点设定ROI,获得多个ROI候选框
4.对这些多个ROI候选框送到RPN中进行二值分类(前景或后景)和BB回归(Bounding-box regression),过滤掉一部分候选的ROI。
5.对剩下的ROI进行ROI Align操作(即先将原图和feature map的pixel对应起来,然后将feature map和固定的feature对应起来)
6.对这些ROI进行分类(N类别分类),BB回归和Mask生成(在每一个ROI里面进行FCN操作)。

RoI Pooling和RoI Align有哪些不同?

ROI Align是在Mask R-CNN中提出的一种区域特征聚集方式,很好地解决了ROI Pooling操作中两次量化造成的区域不匹配问题(下面会提到什么是量化),实验显示将ROI Align替换ROI Pooling可以提升检测模型的准确性。
在这里插入图片描述
RoI Pooling 的作用是根据预选框的位置坐标在特征图中将相应区域池化为固定尺寸的特征图,以便进行后续的分类和包围框回归操作。由于预选框的位置通常是由模型回归得到的,一般来讲是浮点数,而池化后的特征图要求尺寸固定。故RoI Pooling这一操作存在两次量化的过程,上图为ROI操作。
· 将候选框边界量化为整数点坐标值。
· 将量化后的边界区域平均分割成 声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】

推荐阅读
相关标签