Mask R-CNN论文笔记

1 简介

来源论文《MaskR-CNN》。
Mask R-CNN 可以进行物体实例的分割。在识别一张图片中各物体实例的同时,对每个实例产生高质量的分割蒙版(mask)。

R-CNN (region-based CNN)发展到Faster R-CNN,现在又到了Mask R-CNN。Mask R-CNN是在Faster R-CNN的基础上增加了一个分支,用来进行RoI(region of interest)上的分割蒙版的预测。也增加了5fps(帧/秒)的消耗。

如下图那些带颜色的蒙版。
Mask R-CNN论文笔记

Mask R-CNN并行的预测分类标签和蒙版。

2 Mask R-CNN

Faster R-CNN对于每个候选物体有两个输出,分别是分类标签和bounding-box offset。Mask R-CNN增加了第3个输出,物体蒙版。

Faster R-CNN 包括两个步骤。第一步是RPN(region proposal network),用来产生候选的物体bound ing boxes。第二步,使用ROIPool 从每个候选的 bound ing box中提取特征,进行分类和bounding box 回归。

Mask R-CNN也是两步,第一步也是RPN,与上面相同。第二步,并行预测分类和box offset,同时对每个ROI输出一个二进制蒙版(mask)。

所以损失函数有三部分,L=L_分类+L_box+L_mask。L_分类+L_box同以前。Mask 分支对于每个ROI有一个 Kmm维输出,意味着K个m*m的二进制mask,每一个对应着K种分类中的一个。应用一个per-pixel sigmoid函数,定义L_mask为平均binary cross-entropy loss。L_mask是像素对像素(pixel)的行为。

Mask分支对于每个ROI预测K个masks,但我们仅使用第k个mask,其中k是通过分类预测分支预测的分类。

2.1.1 ROIAlign

Faster R-CNN用的ROIPool 会导致ROI与已提取特征的偏移,对不齐。主要是因为离散采样的原因。
Mask R-CNN采用ROIAlign避免了上面的问题。
ROIAlign说明如下图:
Mask R-CNN论文笔记

2.1.2 Mask 分支

在网络头部增加一个全卷积(FCN)mask预测分支。从使用FCN从每个ROI预测一个m*m的mask。如下图。
Mask R-CNN论文笔记

3 实验结果

3.1.1 ROLPool 与ROIAlign

Mask R-CNN论文笔记

3.1.2 Mask R-CNN 结果

Mask R-CNN不仅在mask预测上表现很好,同时也提高了bounding box的预测。
Mask R-CNN论文笔记