一、概述
实例分割和语义分割均可将图片按像素级进行切割,区别是实例分割可以区分不同个体,但语义分割不行。
(实例分割) (语义分割)
二、网络结构
相较于Faster RCNN,Mask RCNN将RoI Plooing体换为了RoI Align。且在Faster RCNN之外并联了一个实例分割的分支。
1.Mask结构
Mask分支与预测分支不共用RoI Align,Mask分支的RoI最后得出的特征图为14*14。结构如下图:
得出的结果为28*28*numclasses,对于每个类别都预测了蒙板。
网络训练时,Mask分支的目标由RPN提供;但预测时,Mask分支的目标由Fast RCNN提供,因为训练时,PRN可能对一个网络提供多个预测值(框),相当于数据增强;而预测,仅会得到一个预测框。
2.RoI Align
RoI Pooling计算的为目标到左上角的偏移距离,涉及两次取整。会对最终结果造成影响
而RoI Align计算的是目标点到左上角的距离,没有取整,可以提升计算精度
具体计算为使用双线性插值来计算
四、损失函数计算
其中rpn和fast_rcnn的损失计算同faster rcnn,而Mask分支的损失函数计算如下:
按不同类别计算BCELoss。