[目标检测]-涨点trick之ATSS:Bridging the Gap Between Anchor-based and Anchor-free Detection笔记

1.论文及代码

1.论文:https://arxiv.org/abs/1912.02424
2.代码:https://github.com/sfzhang15/ATSS

2.动机及结论

本文主要探讨anchor-base与anchor-free的目标检测算法之间的差异是由什么引起的?

  • 1.论文主要阐述了对于正负样本的定义和选取对模型最终效果的影响。
    通过一系列的实验最终指出,anchor free的FCOS与anchor-based的RetinaNet的本质区别是正/负样本的选择方式不同
  • 2.进一步提出了一种改进方法即ATSS,对目前的正负样本选择效果进一步提升。
  • 3.指出在使用了ATSS方法后,检测头每个像素点对应多个anchor对最终的性能没有太大影响
  • 4.在不引入额外开销的情况下,实现了MS COCO的最佳表现

3.anchor-base与anchor-free定义正负样本差异

分别以 RetinaNet和 FCOS 网络为例。
1.feature map上每个点对应的anchor数量不同
FCOS的feature map上一个点对应一个anchor
RetinaNet的一个点对应9个anchor(3种scale、3种ratio)

2.正/负样本的定义方式不同
FCOS的anchor中心在一个gt内,且满足尺度限制即为正样本
(尺度限制是指FCOS使用FPN时不同尺度的feature map上对anchor尺寸做了限制,使得小的feature map检测大目标,大的feature map检测小目标)
RetinaNet则是直接计算anchor与gt的IOU,大于一个阈值的记为正样本,小于一个阈值的记为负样本

3.边框回归的初始状态不同
FCOS是从一个中心点开始,直接回归中心点到四条边的距离
RetinaNet则是从定义好的anchor开始,已知中心点坐标,长和宽,回归长和宽

这里插一句,retinanet比较像传统的one-stage检测方法,比如yolo。FCOS可以看我另一篇博客 FCOS论文理解 的解析。

下面就是作者做了一系列的消融实验,最终得出,anchor-free与anchor-base的性能表现的本质区别就是 如何定义正负样本
如表第一列所列,对于RetinaNet(#A=1),使用空间和比例约束策略代替IoU策略将AP性能从37.0%提高到37.8%。对于FCOS,如果使用IoU策略选择正样本,AP性能将从37.8%下降到36.9%,如表2第二列所示。
在这里插入图片描述
所以说如果你在用box方式iou筛选的,你换成fcos那种筛选方式,能涨点!!!

4.论文的核心工作

在训练目标检测器时,首先需要定义正样本和负样本进行分类,然后使用正样本进行回归。根据前面的结论,前者是关键,而无锚探测器FCOS改进了这一步骤。它引入了一种新的正负定义方法,比传统的基于IoU的策略获得了更好的性能。受此启发,我们深入研究了目标检测中最基本的问题:如何定义正负训练样本,并提出了自适应训练样本选择(ATSS)。与这些传统策略相比,该方法几乎没有超参数,并且对不同的环境具有鲁棒性。
整体的ATSS算法流程如下
在这里插入图片描述

  1. 对于每个ground truth,首先建立一个空集合Cg;
  2. 对每个level的检测头feature map,选计算每个anchor的中心点和GT的中心点的L2距离,每层选取K个anchor中心点离GT中心点最近的anchor,总计K*L个anchor为候选正样本(candidate positive samples);
  3. 计算每个候选正样本和ground truth之间的IOU,计算这组IOU的均值和方差;
  4. 根据方差和均值,设置选取该ground truth的正样本的阈值:t=m+v ;m为均值,v为方差;
  5. 根据t从其候选正样本中选出真正需要加入训练的正样本;
  6. 依次计算所有的ground truth,得到全部的训练正样本;
  7. 其他的未被选入的anchor box为负样本;
  8. 训练
4.1一些动机
4.1.1 根据 anchor box与物体边框的中心距离来选择候选样本

对于 RetinaNet,当anchor box的中心接近物体的中心时,IoU就大。对于FCOS来说,anchor point 越接近物体的中心,它就越能产生高质量的检测目标。因此,anchor 距离物体中心越近,候选样本就越好。

4.1.2 使用平均值和标准方差的和作为IoU阈值

在这里插入图片描述

ground truth 的 iou平均值 mg是衡量预设anchor 对于该目标是否合适的度量。
如(a),mg越大,表示候选样本位置越贴近与ground truth,质量越高
如(b),mg越小,表示候选样本位置越远离与ground truth,质量越低

ground truth的 iou方差 vg是衡量那一个level的检测层更适合检测到该物体
如(a),将tg=mg+vg作为阀值,则只有level3符合要求,我们只从那一层中选取正样本
如(b),较低的vg意味着存在多个适合该ground truth的金字塔层级,tg较低,会从这些层级中来选择正样本

这样就可以为每个物体自适应的来选择足够多的正样本了

5.实验

5.1 ATSS

在这里插入图片描述
rerinalnet与fcos分别加上atss后,性能大涨。

5.2超参数k

在这里插入图片描述
非常的鲁棒,不要太大太小都差不多,k选9就好。

5.2 scale与 aspect ratio

在这里插入图片描述
这里同样是feature map上每个点只有一个anchor,分别改变scale和ratio的结果,精度差不太多(其实还是有0.几个点的差别)

5.3最终结果

在这里插入图片描述
ATSS+多尺度训练+超大的backbone达到了state-of-the-art。

6.补充

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值