PolarMask:基于极坐标表示的单镜头实例分割
深度学习
最后更新 2020-06-15 11:24 阅读 7338
最后更新 2020-06-15 11:24
阅读 7338
深度学习
PolarMask: Single Shot Instance Segmentation with Polar Representation
•将实例分割问题归结为极坐标下的实例中心分类和稠密距离回归 此文用的是单阶段方法(单阶段多阶段解读见上个PPT),在单阶段方法中,用逐像素分类的方法预测mask是费时费劲的,我们注意到如果获得了物体的轮廓,那么mask自然就有了,图C和图D代表笛卡尔坐标系和极坐标系(利用角度和距离来确定坐标)。
本文采用极坐标的方式来表示mask,其优点有
1.极坐标的原点可以看作是物体的中心。
2.轮廓中的点由距离和角度决定。
3.角度是可以天然按方向连线的,
可以非常方便的把这些点连成轮廓
笛卡尔缺少第三个优势
•使用目标检测器FCOS来计算本文的模型(YOLO等其实都可以)。
•FCOS其实也可以看做最简单的POLARMASK,当轮廓变成正方形的时候,模型的backbone和FCOS一模一样,后面在加上3个根据任务特定的head,(如果不检测bbox就2个)
• contributions
•该方法将实例分割转换为两个并行任务:实例中心分类和稠密距离回归。PolarMask的主要优点是简单有效。实例分割的复杂度,无论是从设计复杂度还是计算复杂度来看,都可以与目标检测一样。
•设计了 the Polar IoU Loss 和 Polar Centerness,该loss对比普通的l1平滑loss精准度高了极多。
•第一个用如此简单的单阶段模型达到了许多耗时更久更大的模型的性能
Mass Center 通过上个论文我们知道,极坐标的中心选择有很多方法,如bbox中心和质心,怎么选一个好的中心是依据它的表现。本文也表示在一些情况下质心在物体之外,但是作者打算这种问题交给后来的研究 (但是ICCV2019那个论文里已经有了解决 方法),但是对此本文有个补救方法,在质 心的周围也取中心点作为新的实例如周围取 8个,也许可以找到优于质心的点。•Distance Regression
1.如果一条射线与实例轮廓有多个交点,我们直接选择最大长度的交点。
2.如果有一条射线从中心开始,在一定角度上与实例的轮廓没有交点,我们将其回归目标设为最小值0.0000006
3.如果射线与轮廓线的交点恰好是亚像素点(即,像素坐标不是整数),我们总是可以使用插值方法,如线性插值,来估计其回归目标。
本文也提出了极坐标表示法不能百分百发挥出mask人为标注的性能,但是目前离人工标签性能还有很大的距离,所以暂时不在考虑范围内。
PolarMask中的mask分支实际上是一个密集的距离回归任务,因为每个训练示例都有n条射线(n = 36)。这可能会导致回归损失和分类损失之间的不平衡。其次,例如,它的n条射线是相关的,应该作为一个整体进行训练,而不是作为一组独立的回归例子。所以设计了 Polar IoU Loss
思考:
•本文在loss设计上有独到之处,因为它把这些射线当成整体来计算,根据表现它的确评分也好点,而且它不需要调试权重,但是奇怪的是文中似乎并没有写到中心点是如何确定,我正在发邮件询问作者,我们把这篇论文和上一篇比对我们发现有许多相似之处,但是也有不同,比如取中心的策略不同,并对一些细节上的处理的不同,如上一篇文章对破碎的物体有处理,本文没有提及,上一个论文是用了拟合的手段缩短了向量长度,本文直接基于一个新的且快的目标检测模型。
•是否有可以改进的地方?
肯定是有的,因为极坐标本身的特性,mask必定是不完美有损失的,并对于一些特定形状的物体,肯定是有问题的,是否可以对同一个物体运用两个极坐标,然后再结合这两个极坐标生成的模型,比如我们遇到了轮胎,中心是在物体外的,但若是两个极坐标,我们可以完成对它的分割