Bridging the Gap Between Anchor-based and Anchor-free Detection via ATSS论文阅读 - CVPR2020 oral

Bridging the Gap Between Anchor-based and Anchor-free Detection via Adaptive Training Sample Selection论文阅读

论文下载地址点击此链接跳转
这是博主自己在github整理的目标检测方向论文的合集,应该算比较全,目前已更新至2020ECCV,即将更新:2020IJCAI合集,欢迎下载…

知乎上很好的一个评价贴:如何评价zhangshifeng最新的讨论anchor based/ free的论文?. 作者有亲自回答,推荐阅读。

一、Abstract

       目标检测已经被基于anchor的检测器主导了好几年了,由于FPN和Focal loss的提出,anchor-free检测器又开始流行了起来,这篇文章首先指出了anchor-based和anchor-free检测器的本质区别在于如何去定义正负训练样本,这也导致了二者间的性能差异。如果它们采用相同的正负样本定义,那么无论是从框回归还是点回归,最终的性能表现都不会有非常明显的差别。这也说明了如何去划分正负训练样本对当前的目标检测器来说是至关重要的。作者提出了一个Adaptive Training Sample Selection(ATSS),根据目标的特征统计来自动划分正负样本,这个方法显著提升了anchor-free和anchor-based两种检测器的检测性能,并弥补了二者间的差距。最后作者对在每个位置平铺多个anchor来检测目标的必要性做了讨论。

二、Introduction

       anchor-free检测器主要是通过两种方式来找到目标:第一种是先找到几个预定义的或者是自学习的keypoints,然后去限制目标的空间范围,这种叫做基于关键点的anchor-free检测器。第二种方法是将目标的中心点或中心区域定义为postives,然后预测从positives到目标四个边的距离,这种称为基于中心的anchor-free检测器。anchor-free检测器能够消除掉和anchor相关的超参,并取得和基于anchor的检测器相似的检测性能,同时泛化能力也更强。
       在这两种anchor-free检测器中,基于关键点的方法遵循标准关键点估计流程,而基于中心的检测器与基于anchor的检测器是类似的,只是基于中心的检测器是将点作为预设样本,而不是anchors。
       作者对one-stage检测器RetinaNet和基于中心的anchor-free检测器FCOS作了比较,二者主要有三点差异:
       (1) 每个位置预设的平铺anchor的数量:Retinanet是在每个位置平铺多个anchor,而FCOS是在每个位置设置一个点。
       (2) 对于正负样本的定义:RetinaNet是根据IOU来划分的正负样本,而FCOS是利用在空间和尺度上加以限制来选择样本。
       (3) 回归起始状态:RetinaNet是从预定义的anchor框来回归目标边界框,而FCOS是从anchor point来定位目标。
       相比RetinaNet,FCOS的检测性能更好,于是作者对这三个差异中哪一点是造成这两个检测器的性能差异的关键因素做了研究,最终确定二者间的本质差别在于如何定义正负训练样本,这也是二者间存在性能差异的原因。作者基于这一点提出了ATSS,并经一系列试验得出在一张图像的每个位置平铺多个anchor是没有必要的结论。

       Contributions:
       1、指出anchor-free与anchor-based检测器间的关键差异在于如何定义正负训练样本。
       2、提出了一个自适应训练样本选择方法(ATSS)来根据目标的统计特征选择正负训练样本。
       3、证明了在图像每个位置平铺多个anchor是不必要的操作。
       4、能够不引入任何额外的计算量带来精度提升,达到SOTA效果。

三、Difference Analysis of Anchor-based and Anchor-free Detection

       作者对FCOS和Retinanet间的各项差异做了研究来确定关键差异。

3.1 Inconsistency Removal

       作者先是将retinanet改为与FCOS相似的在每个位置只生成一个anchor box,但修改后FCOS的检测性能会比retinanet要好很多。不过由于FCOS相比retinanet有加很多trick,比如在head用GN,回归损失用GIOU,限制正样本在GT box中,引入centerness分支,对每层特征金字塔添加可训练的标量,作者在RetinaNet中加入了这些非关键差异来去掉这些不一致,可以看到retinanet的精度到了37.8,不过与FCOS相比仍有0.8的差异。
在这里插入图片描述

3.2 Essential Difference

       在加入了非关键差异后,FCOS和retinanet主要还有两点不同,首先是分类任务中怎样去划分正负样本,然后是回归任务中每一个anchor box和anchor point的回归起点不同。

3.2.1 Classification.

       Retinanet是根据IOU值对特征金字塔不同层级的anchors划分正负样本,首先标记每个目标的最佳anchor,IOU大于阈值θp的标为正样本,小于阈值θn的标为负样本,忽略其余anchor box。FCOS利用空间和尺度的限制来划分正负样本,首先是在空间维度选择在GT框中的anchor points为候选正样本,然后从尺度维度根据对特征金字塔每个层级定义的尺度范围来从候选正样本中得到最终的正样本,没被选取的anchor points即为负样本。
在这里插入图片描述
       这两种不同的采样方式产生了不同的正负样本,如下表所示:
在这里插入图片描述
       当retinanet通过空间和尺度的限制来划分正负样本时ap能从37.0升至37.8,FCOS使用IOU值来划分ap则会从37.8降为36.9。这个结果表明,正负样本的定义是anchor-based和anchor-free检测器的本质区别。

3.2.2 Regression.

       在确定了正负样本后,正样本会向目标回归。RetinaNet是根据anchor box和目标框在四个方向上的偏移做回归,FCOS是根据anchor points到边界框四条边的一个偏移做回归。也就是对于一个正样本,它在RetinaNet中的回归起始状态是一个方框,而在FCOS是一个点。但这由上表也可看出这个差异对ap并没有什么影响,表明回归起始状态是一个非关键差异。
在这里插入图片描述
       综上:anchor-based和anchor-free检测器的本质区别在于如何对正负样本进行定义。

四、Adaptive Training Sample Selection

       训练目标检测器时,首先需要划分正负样本进行分类,然后是对正样本进行回归。之前的分析可以看出划分正负样本方法的差异会更关键一些,而FCOS有对此提出了一种新的正负样本的定义,实现了更好的检测性能,因此作者对此作了研究,提出了Adaptive Training Sample Selection(ATSS),一种几乎没有超参并且对不同的设置具有较强的鲁棒性。
       之前的样本选取策略会有一些很敏感的超参,比如IOU阈值,尺度范围等。设置好这些超参后,GT必须根据这些规则来选取它们的正样本,这些超参数设置的不同会产生不同的结果。因此,作者提出了一个几乎不需要任何超参,根据目标统计特征自动划分正负样本的ATSS方法。
       对于每一个GT box g,先找到它的候选正样本集,对特征金字塔的每一层,根据anchor boxes的中心和GT的中心的l2距离来选取k个anchor boxes。假设有L个特征金字塔层级,则GT g会有k×L个候选正样本。然后计算这些候选正样本与GT间的IOU,记为Dg,并计算Dg的均值和方差记为mg和vg,然后计算对于GT g划分正负样本的阈值:tg=mg+vg,最终根据阈值来选取正样本。同时,作者还限制了正样本的中心必须在gt box内。此外,如果一个anchor box被分配给了多个GT,那么他会选择与其IOU值最高的GT,对其他GT则会作为负样本。
在这里插入图片描述
      作者考虑的是:
      1、anchor中心如果更靠近目标中心,其质量应该更好。
      2、IoU的均值mg可以评估对该目标预设的anchor是否合适。由下图可推断出高mg表明候选集质量较高,IOU阈值也会更高,低mg表明候选集质量较低,IOU阈值会相应较小。IOU的标准差vg是对哪一层适合用来检测当前目标的一个衡量,vg较高表明有一个特征金字塔层级非常适合用于检测此对象,这样mg加上vg后会获得一个较高的阈值,最终基本只从那一层级选取正样本,较低的vg则是表示有多个特征金字塔层级适合检测此目标,mg+vg得到一个较低的阈值来从这些层级中选择合适的正样本。利用均值mg和标准差vg的和作为IoU阈值tg就可以达到自适应地从适宜的金字塔层级中为每个对象选取足够的正样本的目的。
      3、anchor的中心如果在目标中心外应该是一个质量较差的候选框,应当排除。
      4、我们还需要保持不同目标间的一个公平性。根据统计理论,大约16%的样本会处于置信区间[mg+vg,1]中,尽管候选框的IOU值的分布不是一个正态分布,但统计结果显示每个目标大约会有0.2*kL个正样本,这相对于其尺度,长宽比和位置来说是不变的,而retinanet和FCOS中会对大目标有更多的正样本,这是一种不公平的现象。
      5、保持hyperparameter-free。这个方法只需要一个超参k,基本做到了hyperparameter-free。
在这里插入图片描述
       作者在RetinaNet和FCOS中验证了ATSS的有效性。改进的原因是ATSS是基于每个GT的统计特征自适应地选择正样本。
在这里插入图片描述
       这个实验研究的每个位置平铺的anchor数量的影响,作者先是对原始的RetinaNet加入了第一个表中的各种改进(gn, giou等),ap从36.3到了38.4,比表一中每个位置只用一个anchor的效果要好,表明在传统的基于IOU值的样本选择策略下,每个位置平铺更多的anchor是有效的。不过在使用ATSS后,可以看到不管在每个位置平铺多少个anchor,结果都近乎一样,所以每个位置平铺多个anchor在合适的正负样本选择策略下可能是一种无用操作。
在这里插入图片描述
       和一些sota做了比较,实验非常丰富,
在这里插入图片描述

五、个人总结

       这篇文章主要是指出了anchor-free与anchor-based检测器间的一个关键差异是对于正负样本的定义。anchor-based检测器通常是根据IOU值来划分正负样本,而anchor-free检测器则是根据在空间和尺度上的限制来从anchor points中选取正负样本。作者提出了ATSS,一种自适应的正负样本选择策略,根据各目标的一个特征统计结果,由各目标的候选正样本的IOU值的均值和方差之和来动态地确定划分正负样本的阈值。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值