论文详细解释了anchor-free与anchor-based的本质区别,此外,使用ATSS去尝试解决label assignment的问题

摘要:

近年来,anchor-based检测器一直主导着目标检测。近年来,anchor-free检测器由于FPN和Focal Loss的引入而受到广泛关注。本文首先指出anchor-based检测与anchor-free检测的本质区别是在于如何定义正、负训练样本,从而导致两者之间的性能差距。如果他们在训练中对正样本和负样本采用相同的定义,无论从一个anchor还是一个point回归,最终的表现都没有明显的差异。由此可见,如何选取正、负训练样本对当前目标检测具有重要意义。然后,我们提出了一种自适应训练样本选择(ATSS),根据目标的统计特征自动选择正样本和负样本。它显著地提高了anchor-based和anchor-free检测器的性能,并弥补了两者之间的差距。最后,我们讨论了在图像上每个位置平铺多个anchor点来检测目标的必要性。在COCO数据集上进行的大量实验支持了我们的上述分析和结论。随着新引入的ATSS,我们在不引入任何开销的情况下,将最先进的检测器大大提高到50.7%的AP。

引言:


1. 当前Anchor-free detectors可以分为两种类型:
• Keypoint-based:Cornernet、Centernet
• Center-based:FCOS、Foveabox

2. Anchor-free和Anchor-based方法如上图所示,可以看出来两种方法结构非常相似,Anchor-free是将点作为预设值的样本而不是anchor。它们之间有三个主要的区别:
(1) 每个位置的anchor的数量。RetinaNet每个位置设置几个anchor,而FCOS设置一个anchor每个位置;
(2) 正、负样本的定义。RetinaNet是根据IOU阈值设定,FCOS使用空间和尺度的限制来确定正负样本;
(3) 回归开始状态。RetinaNet将目标边界框从预置anchor框中回归,FCOS从点定位目标。

3.本文的创新点:
(1) 基于上述分析的区别,先指出了anchor-based检测与anchor-free检测的本质区别;
(2) 提出了一种自适应训练样本选择(ATSS),根据目标的统计特征自动选择正样本和负样本;
(3) 讨论了在图像上每个位置平铺多个anchor点来检测目标的必要性。

正文:

一、为什么anchor-free(FCOS)性能明显好于anchor-based(RetinaNet)?

1. 文章首先分析了FCOS比RetinaNet多用的一些隐藏的涨分点,排除一些因素的干扰,主要由以下几项:
• adding GroupNorm in heads
• using the GIoU regression
• limiting positive samples in the ground-truth box
• introducing the centerness branch
• adding a trainable scalar for each level feature pyramid
经过实验分析,可以看出来FCOS比RetinaNet实际AP值只高了0.8个点

2. 分析两种方法的3个主要区别的贡献度
(1) 每个位置的anchor的数量,这个在是1的实验中已经含盖了,RetinaNet中的A=1,意思是Anchor数量设置为1;
(2)正、负样本的定义 (3)回归开始状态
实验分析了这两个差异所造成的影响: 1)如果两者对正负样本的定义一致; 2)如果两者回归对象一致

实验结果表明定义正负样本的差异是造成两者性能差异的主要因素

3.最终结论:
指出了基于一阶段anchor-based的检测器与anchor-free检测器的本质区别在于如何定义正、负训练样本,这对于当前的目标检测具有重要意义,值得进一步研究。
具体来说:

如图所示,FCOS首先使用空间约束在空间维度中查找候选正样本,然后使用比例约束在比例维度中选择最终正样本。与此相反,RetinaNet利用IoU直接同时选择空间和尺度维度的最终的正样本。

二、ATSS(Adaptive Training Sample Selection)

基于上述分析,如何更好地定义正负样本,对于目标检测的提升有着重要的意义,之前的FCOS、RetinaNet等都是属于hard型的定义方法,本文提出了自适应选择正负样本的方法:

算法流程:

  1. 对每个ground-truth box记为g, 在一个特征图上按照L2距离找到离中心最近的k个候选正样本集,总共有L个特征图,所以候选正样本集有k*L个;
  2. 计算g和候选正样本集的均值方差,得到tg=mg+vg;
  3. 我们选择IoU大于或等于阈值tg的候选样本作为最终正样本。值得注意的是,我们还将正样本的中心限制在ground-truth框中此外,如果将一个anchor分配给多个ground-truth box,则将选择IoU最高的那个。其余为负样本。

方法动机:
1. 使用L2距离找到离中心最近的k个候选正样本集是因为对于RetinaNet,当anchor中心更靠近物体中心时,IoU更大。对于FCOS,point离目标中心越近,检测质量越高。
2. 使用统计样本的均值和方差作为阈值的原因是如下图,图3(a)所示的高均值mg表明它有高质量的候选集,IoU阈值应该是高的。低mg如图3(b)所示,表明其候选人大多为低质量,IoU阈值应较低。高标准差vg意味着有一个最适合此目标的特征金字塔级别。利用平均mg和标准偏差vg之和作为IoU阈值tg,可以根据目标的统计特性,自适应地从适当的特征金字塔水平上为每个对象选择足够多的阳性结果。

实验结果:

1.anchor-free、anchor-based、ATSS对比

2.ATSS中anchor预设值数量的必要性

[目标检测]--CVPR2020-ATSS:Bridging the Gap Between Anchor-based and Anchor-free Detection相关推荐

  1. 【目标检测】ATSS: bridging the gap between anchor-based and anchor-free detection via ATSS (cvpr20)

    文章目录 一.背景和动机 二.方法 三.效果 一.背景和动机 目标检测在很长一段时间内都是被 anchor-based 的方法统治,后来出现了一些基于 FPN 和 Focal loss 的 ancho ...

  2. 深度学习论文阅读目标检测篇(三):Faster R-CNN《 Towards Real-Time Object Detection with Region Proposal Networks》

    深度学习论文阅读目标检测篇(三):Faster R-CNN< Towards Real-Time Object Detection with Region Proposal Networks&g ...

  3. (20)目标检测算法之YOLOv5计算预选框、详解anchor计算

    目标检测算法之YOLOv5计算预选框.详解anchor计算 单节段目标检测算法中:预选框的设定直接影响最终的检测精度 众所周知,yolov5中采用自适应调整预选框anchor的大小,但万事开头难,配置 ...

  4. Anchor Based和Anchor Free的相爱相杀与ATSS的诞生

    前言 我们都知道按照是否出现RPN可将目标检测算法分为two-stage和one-stage,其中one-stage的一个主要代表便是YOLO系列,而根据是否存在先验锚框的定义我们也可以将其分为Anc ...

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

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

  6. 3D目标检测 CVPR2020 总结

    本文盘点CVPR 2020 所有目标检测相关论文,总计64篇论文,感觉最大的特点是3D目标检测研究工作很多有21篇,尤其是工业界单位,可能是自动驾驶热带来的.2D目标检测依然很热,神经架构搜索也开始在 ...

  7. 2D目标检测CVPR2020总结

    2D目标检测 Large-Scale Object Detection in the Wild From Imbalanced Multi-Labels 作者 | Junran Peng, Xingy ...

  8. 目标检测再次革新!图灵奖得主团队提出Pix2Seq,将Detection变成了Image Captioning...

    关注公众号,发现CV技术之美 ▊ 写在前面 本文提出了一种简单通用的目标检测框架Pix2Seq.与目前显式地集成了关于检测任务的先验知识的方法不同,本文的方法简单地将目标检测转换为以像素输入为条件的语 ...

  9. 目标检测中多尺度:特征金字塔FPN_Feature Pyramid Networks for Object Detection

    原始内容来源于: https://blog.csdn.net/cdknight_happy/article/details/100528127 https://blog.csdn.net/WZZ181 ...

最新文章

  1. 道家遁甲式(又名道家奇门)
  2. 《流畅的Python》一副扑克牌中的难点
  3. 1.13 梯度检验-深度学习第二课《改善深层神经网络》-Stanford吴恩达教授
  4. Linux中read接收用户输入
  5. js异步请求php数据,原生JS发送异步数据请求实例详解
  6. uiautomatorviewer报错“Error taking device screenshot: EOF” ,
  7. 【渝粤教育】国家开放大学2019年春季 8680电工电子技术 参考试题
  8. php 微信登录 扫码 h5,【小程序】WeAuth微信小程序实现PC网站扫码授权登录
  9. flask 导出excel
  10. Linux实现黑客帝国背景炫酷效果
  11. 如何把TS视频文件转换为MP4格式?
  12. VSCode 中使用GO语言
  13. 欧洲商学院MBA(项目管理)学习笔记
  14. azkaban短信报警功能和项目依赖功能实现
  15. 【操作系统】30天自制操作系统--(1)虚拟机加载最小操作系统
  16. MySQL数据库的DQL(数据查询语言)使用---指定查询字段、去重(distinct)、where条件子句、联表查询(xxx join)、分页(order by)和排序(limit)
  17. 国家计算机职业技能鉴定4级考试内容详解
  18. 什么是面向对象、面向过程?
  19. c语言实现词法分析器+文法分析器(全代码)
  20. svn使用过程中遇到的错误

热门文章

  1. sendmail 邮件服务器 套件,Fedora架设Sendmail邮件服务器
  2. VS2017中SQLite配置和引用和数据库操作编程
  3. Jenkins设置代理:
  4. 以 dpdk应用层包处理程序为例谈谈多进程和多线程模型选择
  5. 如何用最暴力的方法实现恺撒密码——python
  6. html实现文字隐藏展开特效代码,js实现点击展开隐藏效果(实例代码)
  7. 云尚发卡PHP,PHP云尚发卡系统V1.5.7源码
  8. 新大陆--markdown 以后可以开心的写博客了
  9. 干货: 在 Flutter 项目下安卓 flavor 打包配置实践 | 开发者说·DTalk
  10. EditText取消焦点