ATSS论文解读和简洁代码实现

本文深入解读了ATSS论文,探讨了anchor-based与anchor-free检测器的差异,并介绍了ATSS算法的计算过程和其实验分析。通过实验表明,正负样本划分方式是性能差距的关键。同时,文章提供了基于ResNet50的简洁PyTorch代码实现,性能达到39.4%。
摘要由CSDN通过智能技术生成

本文是对论文Bridging the gap between anchor-based and anchor-free detection via adaptive training sample selection的解读和实现。
在编程过程中,代码中有一些参考或照抄了maskrcnn_benchmarkmmdetection的地方,特此声明。

论文解读

anchor-based和anchor-free的本质区别

论文第一部分通过实验的方式,验证了anchor-base(采用了RetinaNet)和anchor-free(采用了FCOS)的性能差距在于正负样本的划分。
简单回顾一下RetinaNet和FCOS划分正负样本的方法。

检测算法 划分正负样本的方法
RetinaNet (1)每个pixel处都预先生成一组anchor (2)根据每个anchor和每个物体框的iou来划分正负样本
FCOS (1)首先根据当前pixel是否在某个物体框内部来生成候选集 (2)采用空间上的尺度约束来得到最终的正样本,其余为负样本

FOCS和RetinaNet划分样本的方法
(a)图上表示RetinaNet,(a)图下表示FCOS。

但是,FCOS上采用了很多RetinaNet所没有采用的trick,如下所示:

  1. 在detection head网络中采用group norm
  2. 采用Giou Loss
  3. 划分正样本时,要求正样本的中心点必须位于物体框中
  4. 采用了一个中心分支,获取当前预测框的"中心点"的偏移程度
  5. 采用了一个scaler方法,对不同level的feature map上的预测框进行调整

而RetinaNet也有一个trick,即每个pixel处有多个anchor。

为了公平的比较,论文中为RetinaNet只保留一个正方形的anchor。这个anchor的尺度为 8 S ∗ 8 S 8S * 8S 8S8S,这里的 S S S表示当前feature map的stride。那么最小的anchor size为 64 ∗ 64 64*64 6464,最大的anchor size为 1024 ∗ 1024 1024*1024 10241024。论文中称这样的RetinaNet为RetinaNet(#A=1)。
然后为RetinaNet(#A=1)加入上面提到的trick,于是就可以得到下表:
在这里插入图片描述
可以看到目前RetinaNet(#A=1)的性能达到了37.0,并且无关变量完全相同,可以公平的进行比较了。此时RetinaNet(#A=1)和FCOS有两个不同点,即:

  • 正负样本划分的方法(如前所述)
  • 回归的状态,FCOS是立足中心点,预测当前点到物体框上、下、左、右四个边界的距离。而RetinaNet(#A=1)是预测4个回归因子,利用回归因子和anchor解码得到物体框

下面就需要通过实验验证到底是哪个原因导致了RetinaNet(#A=1)和FCOS的性能差距(37.0对37.8)。
需要做四个实验,即不同样本划分方法(根据iou划分和根据空间尺度约束划分)和不同回归方法(从anchor开始预测和从点开始预测),共有四个实验,实验结果如下所示:
在这里插入图片描述
可以看到,不同的回归方法对于性能几乎没有影响,而“根据空间尺度划分样本”要远远优于“根据iou划分样本”,因此可以得出结论,真正决定anchor-based和anchor-free性能差距的原因是正负样本划分方法

atss算法的计算过程

具体计算过程

论文中给出的计算过程:
在这里插入图片描述
翻译:
我们假设当前有一个物体 g g g,图片上的pixel集合为 C C C,anchor集合为 A A A,显然这里每个 c i ∈ C c_{i}\in C ci

  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值