《YOLACT++:Better Real-time Instance Segmentation》阅读笔记
论文链接:https://arxiv.org/abs/1912.06218
简介
在YOLACT的基础上,通过将可变形卷积引入基干网络,通过使用更好的锚尺度和长宽比优化目标检测头,并加入一个新的快速掩模重评分分支,YOLACT++模型可以在33.5fps的MS-COCO上达到34.1mAP,在实时的情况下,与目前最先进的方法性能相当接近。
一、引言
为了进一步提高相对于YOLACT的性能,文章提出了YOLACT++:
(1)将可变形卷积[1]、[2]合并到基干网络,提供更灵活的特征采样,增强处理不同尺度、纵横比和旋转后的实例的能力
(2)优化预测头,使其具有更好的anchor尺度和宽高比,以获得更大的目标召回率
(3)引入了一种新的快速掩模重评分分支,该分支在仅需少量速度开销的情况下,可以获得良好的性能提升。
二、YOLACT++
YOLACT网络结构见图2。

2.1快速掩膜重评分网络
Mask Scoring R-CNN[3]中提到,mask的类别得分和mask的质量不一定正相关,因此,为了更好将类置信度与掩模质量联系起来,Mask Scoring R-CNN在Mask R-CNN上增加了一个新的模块来学习将预测的掩膜向着GT掩膜和掩膜之间的IoU值回归,收到Mask Scoring R-CNN的启发,文章引入了一个掩膜重评分分支,该分支根据预测掩模和GT掩膜间的IoU来重评分预测掩模,图6示意该分支网络结构。

文章将YOLACT中裁剪后(阈值化之前)的预测掩膜作为输入,并为每个对象类别输出mask IoU。文章通过文章预测的各个类别对应的mask IoU和对应的类别得分,对每个掩膜重新评分。
文章方法不同于Mask Scoring R-CNN,主要有以下两个方面:(1)文章的输入仅是全图像大小的掩模(预测框区域外置零),而Mask Scoring R-CNN是将掩模预测分支的特征与ROI repooled掩模的级联作为输入(2)文章没有任何fc层,速度大大加快。将快速掩膜重评分分支添加到yolact的速度开销为1.2 ms,这将fps从34.4更改为33。
2.2带区间的可变形卷积
文章遵循DCNv2[2]的设计选择,从C3到C5,用3x3可变形卷积层替换各个ResNet块中的3x3卷积层,将可变形卷积层添加到yolact的主干中,可以获得1.8的mAP增益,速度负担增加8ms。性能增益主要因为:(1)DCN可以通过与目标实例对齐来增强网络处理具有不同规模、旋转和纵横比的实例的能力(2) YOLACT作为一个单阶段方法,没有重新采样的过程。因此,相比两阶段方法(如Mask R-CNN),一个更好、更灵活的采样策略对于YOLACT更为关键,因为该网络中没有办法恢复次优采样。相反,Mask R-CNN中的ROI align操作通过将所有对象对齐到一个规范的引用区域,在一定程度上解决了这个问题。
尽管当按照[2]中的设计选择直接插入可变形卷积层时,性能提升相当不错,但速度开销也很大(见表7)。

这是因为当使用ResNet-101时,有30个具有可变形卷积的层。为了加快resnet-101模型的速度,同时保持其性能的提高,文章使用了较少的可变形卷积。文章尝试在四种不同的配置:(1)在最后10个ResNet块中(2)在最后13个ResNet块中(3)在间隔为3的最后3个ResNet阶段中(即,跳过中间的两个ResNet块;总共11个可变形层)(4)在最后3个ResNet阶段,间隔4(共8个变形层)。给定结果,在YOLACT中,DCN(interval=3)设置被选为最终配置,它将速度开销减少了5.2ms到2.8ms,并且与没有interval相比,只有0.2mAP的下降。
2.3优化预测头
由于YOLACT是依靠基于anchor的基干检测器的,因此为anchor选择合适的超参数(比如其比例和长宽比)非常重要。文章尝试了两种变化:(1)保持尺寸不变,同时将anchor长宽比从[1,1/2,2]增加到[1,1/2,2,1/3,3];(2)保持长宽比不变,将FPN每层特征的anchor尺寸增加到三种([1x,21/3x22/3x])。与原来相比前者和后者分别增加了5/3倍和3倍的anchor数目。如表6所示,配置2产生最佳速度与性能的权衡。

三、结果
3.1掩膜
在MS COCO上的结果见下表1.

可以看到YOLACT++相对YOLACT有了较小的速度降低和较大的性能提升,性能接近Mask R-CNN,速度实现实时。
3.2目标检测结果
可想而知只目标检测时,YOLACT比生成实例分割更快。表4比较了文章网络和YOLOv3的性能和速度。

文章能在不使用YOLOv2和YOLOv3的一些附加技巧(如多尺度训练、优化锚箱、基于单元的回归编码和目标评分)的同时达到相同性能和速度。由于文章对检测性能的改进主要来自于使用FPN和使用mask进行训练(两者都与YOLO所做的改进是正交的),因此我们很可能将yolo和YOLACT结合起来,以创建一个更好的检测器。此外,这些检测结果表明,mask只有6 ms要计算,耗时很少。
3.3YOLACT++的进步
表5列出了YOLACT++的改进和相应的性能或速度提升

图10示意了部分预测图。

可以看到由于使用了掩膜重评分,那些被低估的掩模(质量好但分类置信度低的掩模)和被高估的掩模(质量差但分类置信度高的掩模)的排序变得更为合适(如图a所示);图(b)示意,因为使用了变形卷积和更合适的anchor设计,掩膜的质量得到提升,box的检测位置更准确;图(c)示意分类置信度和box的召回率更高。
四、结论
文章提出了一种单阶段实时实例分割方法。核心思想是并行预测掩模原型和每一实例的掩模系数,并将它们线性组合形成最终的实例掩模。COCO和Pascal-VOC的大量实验证明了文章方法的有效性。YOLACT++,通过对基干网络的改进、更好的anchor设计和快速的掩模重评分网络,在仍然实时的情况下,与原始框架YOLACT相比显示出了显著的性能提升。
五、参考文献
[1]J. Dai, H. Qi, Y. Xiong, Y. Li, G. Zhang, H. Hu, and Y. Wei, “Deformable convolutional networks,” in Proceedings of the IEEE international con- ference on computer vision, 2017, pp. 764–773.
[2]X. Zhu, H. Hu, S. Lin, and J. Dai, “Deformable convnets v2: More deformable, better results,” in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2019, pp. 9308–9316.
[3]Z. Huang, L. Huang, Y. Gong, C. Huang, and X. Wang, “Mask scoring r-cnn,” in CVPR, 2019.
