Bridging the Gap Between Anchor-based and Anchor-free Detection via Adaptive Training Sample Selection
ATSS为CVPR2020中的一篇论文,论文题目如上所示,大体意思为通过自适应选择训练样本来弥补基于锚和无锚检测器的差距。因为目前大多数目标检测成果都是在anchor-based的基础上产生的,但之前刚好读过anchor-free的论文FCOS,意识到anchor-free也是有很大的优势的,所以刚好借此机会更加深入的了解这两种检测方法的本质区别,同时学习下作者的改进。
- 研究内容
近年来,anchor-based检测器一直主导着目标检测,同时anchor-free检测器由于FPN和Focal Loss的引入而受到广泛关注。本文首先指出anchor-based检测与anchor-free检测的本质区别是在于如何定义正、负训练样本,从而导致两者之间的性能差距。如果他们在训练中对正样本和负样本采用相同的定义,无论从一个anchor还是一个point回归,最终的表现都没有明显的差异。由此可见,如何选取正、负训练样本对当前目标检测具有重要意义。然后,作者提出了一种自适应训练样本选择(ATSS),根据目标的统计特征自动选择正样本和负样本。它显著地提高了anchor-based和anchor-free检测器的性能,并弥补了两者之间的差距。最后,作者阐释了在图像上每个位置平铺多个anchor点来检测目标的必要性。
- 研究方法
由于本篇论文主要就是研究anchor-based和anchor-free算法之间的关系,因此研究的切入点就在于基于anchor-based和anchor-free的目标检测算法之间的效果差异到底是什么原因造成的。作者分别选了2个代表性算法进行探究:RetinaNet和FCOS,二者在COCO数据集上的mAP分别是32.5和37.8,差距还是比较大的。
作者首先分析了RetinaNet和FCOS在算法上的差异,大体上分为三点,一是RetinaNet在特征图上每个点设置多个anchor,而FCOS在特征图上每个点只设置一个中心点,这是数量上的差异;二是RetinaNet基于anchor和GT之间的IOU和设定的阈值来确定正负样本,而FCOS通过GT中心点和铺设点之间的距离和尺寸来确定正负样本。如文中图一所示,牛所在的图像中,蓝框和点表示GT,红框表示RetinaNet的anchor,红点表示FCOS设置的点,左右表格表示最终确定的正负样本,0是负样本,1是正样本;三是RetinaNet通过回归矩形框的2个角点偏置进行预测框位置和大小的预测,而FCOS是基于中心点预测四条边和中心点的距离进行预测框位置和大小的预测。如文中图二所示,蓝色框和点表示GT,红色框表示RetinaNet的正样本,红色点表示FCOS的正样本。
围绕这三点主要差异,作者通过统一两个方法中正负样本的比例、统一使用相同的训练方法技巧,尽力做到公平对比,最终RetinaNet的mAP达到37.0,与FCOS的37.8很接近。接着分析最终的0.8mAP的差异,作者通过对比数据发现,回归方式的不同不是造成效果差异的原因,而如何确定正负样本才是造成差异的真正原因。
确定造成差异的根源是正负样本的选择问题后,作者提出了ATSS来自适应的选取正负样本。具体方法为首先对于每个输出的检测层,先计算每个anchor的中心点和目标的中心点的距离,选取K个anchor中心点离目标中心点最近的anchor为候选正样本;接着计算每个候选正样本和真实框之间的IOU,计算这组IOU的均值和方差;接着根据均值和方差设置选取正样本的阈值;根据每一层的阈值从候选正样本中选出真正需要加入训练的正样本,最终进行训练。
- 优缺点
优点:
(1)通过细致的实验对比指出了anchor-based检测与anchor-free检测的本质区别实际上是如何定义正负样本;
- 提出了一种自适应训练样本选择(ATSS),根据目标的统计特征自动选择正样本和负样本;
- 论述了在图像上每个位置平铺多个anchor点来检测目标的必要性;
- 减少了超参数的使用,对anchor的尺寸、宽高比、数据比较鲁棒;
- ATSS中根据不同层的特性对不同层的阈值进行了微调,这导致了更好的检测效果。
缺点:
ATSS中的A表示adaptive,也就是自适应的意思,也就是说正负样本是可以自动确定的,但实际上实验中还使用了少量超参数,比如K,离真正做到自适应还有一定的距离,同时关于阈值的确定有比较多的先验知识。