Mask R-CNN网络框架
从图中可以看到,Mask R-CNN网络是在Faster R-CNN网络的基础上演变而来的,具体变化点主要有2个:
(1)将RoI池化层优化为了ROI Align层;
(2)在最后的分类器和回归器的基础上添加了全卷积层(Fully Convolutiona Nets,FCN),该结构输出了Mask。
接下来分三部分介绍一下Mask R-CNN,第一部分是回顾Fast R-CNN,具体的可参考上篇文章,
第二部分是介绍ROI Align,第三部分是介绍全卷积层(FCN)。
Faster R-CNN
上图是以VGG16为骨干网络的Faster R-CNN模型的网络结构,再进一步的观察4个部分的模型细节:
(1)骨干卷积网络层(conv layers):首先预处理将尺寸为P*Q的图像转变为M*N的图像,然后将此图像送入骨干网络提取特征,骨干网络包含了13个conv层+13个relu层+4个pooling层(卷积层和池化层的设置可根据选用的骨干网络切换),然后输出特征图,该特征图共享用于后面的RPN和ROI层;
(2)区域推荐网络(Region Proposal Network):该部分首先利用3*3的卷积层进一步对特征图进行提取,然后送入2个分支,第一个分支为1*1*18的卷积层(18是通道数,后面为解释实际意义),然后经过softmax输出边界框内二分类是否含有物体(positive或者negative);第二个分支为1*1*36的卷积层,回归输出确定边界框(bounding box regression);
(3)RoI池化层:该部分利用骨干卷积网络层输出的特征图(feature maps)和区域推荐网络输出的候选框(proposals),结合图像缩放尺度等信息,输出推荐候选框对应的固定尺寸特征图(proposal feature maps);