目标检测之ATSS算法anchor-free和anchor-based的差异

本文参考以下链接,如有侵权,联系删除
参考
Bridging the Gap Between Anchor-based and Anchor-free Detection via Adaptive Training Sample Selection
-CVPR 2020

概要

anchor-free算法:CornerNet-2018,FCOS-2019,CenterNet-2019
ATSS(Adaptive Training Sample Selection)主要就是研究anchor-free和anchor-based算法之间的关系,内容上主要包括2大方面:

  • 对于基于anchor-based和anchor-free的目标检测算法之间的效果差距做了详细的对比实验,得出的结论就是如何确定正负样本是影响这2类算法的重要原因
  • 提出了ATSS方式来确定正负样本

anchor-based和anchor-free的效果差异

以RetinaNet和FCOS为例,二者在COCO数据集上的mAP分别是32.5和37.8,差距还是比较大的。
差异:

  • RetinaNet在特征图上每个点铺设多个anchor,而FCOS在特征图上每个点只铺设一个中心点,这是数量上的差异。
  • RetinaNet基于anchor和GT之间的IoU和设定的阈值来确定正负样本,而FCOS通过GT中心点和铺设点之间的距离和尺寸来确定正负样本。 这1点可以从Figure1的对比中看到,牛这张图像中蓝色框和点表示GT,红色框表示RetinaNet铺设的anchor,红色点表示FCOS铺设的点,左右两边类似表格上的数值表示最终确定的正负样本,0表示负样本,1表示正样本。
    目标检测之ATSS算法anchor-free和anchor-based的差异_第1张图片
  • RetinaNet通过回归矩形框的2个角点偏置进行预测框位置和大小的预测,而FCOS是基于中心点预测四条边和中心点的距离进行预测框位置和大小的预测。 这1点可以从Figure2的对比中看到,蓝色框和点表示GT,红色框表示RetinaNet的正样本,红色点表示FCOS的正样本。
    目标检测之ATSS算法anchor-free和anchor-based的差异_第2张图片

对比实验

主要关注第2和3点,所以首先将RetinaNet在每个点铺设的anchor数量减少到1,也就是和FCOS保持一致,这样第一点差异就不存在了.另外,FCOS中使用的训练技巧同样加入到RetinaNet中,最后map达到37.0,基本上和FCOS的37.8很接近了.
目标检测之ATSS算法anchor-free和anchor-based的差异_第3张图片
接下来,作者对剩余的0.8的差异进行了分析,做了如下实验
目标检测之ATSS算法anchor-free和anchor-based的差异_第4张图片
按行看,Intersection over Union 这一行的两个数值表示RetinaNet和FCOS都采用基于IoU方式确定正负样本,二者的mAP基本没有差别;
同样的,Spatial and Scale Constraint 这一行的两个数值表示RetinaNet和FCOS都采用基于距离和尺寸方式确定正负样本,二者的mAP也一样.
所以结论就是:回归方式的不同并不是造成RetinaNet和FCOS效果差异的原因,也就是前面说的第二点差异是不影响的

按列看,Box这一列的两个数值表示将RetinaNet的正负样本确定方式从IoU换成和FCOS一样的基于距离和尺寸,那么mAP就从37.0上升到37.8
同样的,Point这一列的两个数值表示将FCOS的正负样本确定方式从基于距离和尺寸换成和RetinaNet一样的基于IoU,那么mAP就从37.8将为36.9.
所以结论就是:如何确定正负样本才是造成RetinaNet和FCOS效果差异的原因,也就是前面所说的第三点差异才是根源

对比实验步步紧扣,很严谨

ATSS(Adaptive Training Sample Selection)

目标检测之ATSS算法anchor-free和anchor-based的差异_第5张图片
算法流程如上表

  • 第3行到第6行是根据anchor和GT的中心点距离(L2)选出候选正样本,每一层选取k个
  • 第7行是计算IoU
  • 第8行到第15行是先计算IoU的均值和标准差从而得到阈值,然后根据阈值进行正负样本的确定

上述算法仍然存在少量超参数,比如k,以及关于阈值的确定有比较多的先验知识,但是超参数比之前的方法还是要少一些,而且ATSS对于anchor的尺寸,宽高比,数量比较鲁棒

目标检测之ATSS算法anchor-free和anchor-based的差异_第6张图片

目标检测之ATSS算法anchor-free和anchor-based的差异_第7张图片
目标检测之ATSS算法anchor-free和anchor-based的差异_第8张图片
目标检测之ATSS算法anchor-free和anchor-based的差异_第9张图片
目标检测之ATSS算法anchor-free和anchor-based的差异_第10张图片
目标检测之ATSS算法anchor-free和anchor-based的差异_第11张图片

你可能感兴趣的:(计算机视觉,深度学习,计算机视觉)