anchor-base和anchor_free两者的优缺点

  • anchor-base和anchor_free两者的优缺点

    • 一、什么是anchor
    • 二、anchor-base和anchor-free的区别
    • 三、anchor-free和single anchor
    • 三、anchor-base和anchor-free的优缺点
  • 参考

一、什么是anchor

从字面的意思解释,anchor就是船锚,用来固定船的位置。

而在计算机视觉中的anchor和字面意思很相近,被称为锚点或者锚框,进而在目标检测中经常出现的anchor box就是锚框,表示固定的参考框。

目标检测是"在哪里有什么"的任务,在这个任务中,目标的类别不确定、数量不确定、位置不确定、尺度不确定,传统非深度学习方法如VJ和DPM,和早期深度学习方法如OverFeat,都要金字塔多尺度+遍历滑窗的方式,逐尺度逐位置判断"这个尺度的这个位置处有没有认识的目标",非常笨重耗时。

anchor的概念最早出现在FasterRCNN的论文中,首先预设一组不同尺度不同位置的固定参考框,覆盖几乎所有位置和尺度,每个参考框负责检测与其交并比大于阈值 (训练预设值,常用0.5或0.7) 的目标,anchor技术将问题转换为"这个固定参考框中有没有认识的目标,目标框偏离参考框多远",不再需要多尺度遍历滑窗,极大的提升了速度。同时anchor的存在,也解决不同物体的中心点落到一个grid cell中的问题。

二、anchor-base和anchor-free的区别

在anchor-base方法中,物体检测问题通常都被建模成对一些候选区域进行分类和回归的问题。在单阶段检测器中,这些候选区域就是通过滑窗方式产生的 anchor;在两阶段检测器中,候选区域是 RPN 生成的 proposal,但是 RPN 本身仍然是对滑窗方式产生的 anchor 进行分类和回归。

而anchor-free方法中,是通过另外一种手段来解决检测问题的。同样分为两个子问题,即确定物体中心和对四条边框的预测。预测物体中心时,具体实现既可以定义一个hard的中心区域,将中心预测融入到类别预测的target里面,也可以预测一个soft的centerness score。对于四条边框的预测,则比较一致,都是预测该像素点到 ground truth 框的四条边距离,不过会使用一些 trick 来限制 regress 的范围。

anchor-free的方法能够在精度上媲美 anchor-based的方法,最大的功劳应该归于 FPN,其次归于Focal Loss。在每个位置只预测一个框的情况下,FPN 的结构对尺度起到了很好的弥补,FocalLoss则是对中心区域的预测有很大帮助。

三、anchor-free和single anchor

上面提到的anchor-free和每个位置有一个正方形anchor在形式上可以是等价的,也就是利用FCN的结构对feature map的每个位置预测一个框(包括位置和类别)。但anchor-free仍然是有意义的,我们也可以称之为anchor-prior-free。另外这两者虽然形式上等价,但是实际操作中还是有区别的。在anchor-based的方法中,虽然每个位置可能只有一个anchor,但预测的对象是基于这个 anchor来匹配的,而在anchor-free的方法中,通常是基于这个点来匹配的。

三、anchor-base和anchor-free的优缺点

anchor-base的优点在于有着更高的精度,所提取到的特征更丰富。但是two stage阶段产生预选框所需要的耗时和算力大大增大,尽管one stage阶段在一定程度上解决了这个问题,将检测器整合成end-to-end的形式,通过不同特征尺度的每个特征点都进行预设不同尺度不同大小的三个anchor,缩减了RPN的步骤,提升了检测速度,尽管近几年one stage发展迅速,但精度达不到two stage的SOTA程度。

和anchor-base进行比较,anchor-free最大的优势就在于其检测器的检测速度,因为不需要预设anchor,只需要对不同尺度的特征图的目标中心点和宽高进行回归,极大的减少了耗时和需要的算力。其缺点则是在于它的精度并不能达到anchor-base方法的SOTA。近两年还提出了一些结合anchor-base和anchor-free的检测器。

我觉得目标检测就是这样一个发展过程,从最初的RCNN到现在各种方法百花齐放,但最终目的如果没法落地的话,也仅仅是实验室的数据,anchor-free作为一个未来的发展方向,更偏向于实际落地,在保证精度的同时,提升速度,这是未来目标检测发展所需要的。


参考

1、anchor_based-anchor_free object detectors

2、一文读懂anchor-base和anchor-free

3、物体检测的轮回: anchor-based 与 anchor-free

2 anchor-base和anchor_free两者的优缺点相关推荐

  1. Anchor Base 和 Anchor Free

    1 概念 1.1 什么是Anchor Anchor也叫做锚,其实是一组预设的边界框用于在训练时学习真实的边框位置相对于预设边框的偏移.通俗点说就是预先设置目标可能存在的大概位置,然后再在这些预设边框的 ...

  2. anchor base和anchor free, 小物体检测, YOLO V1-3 9000 V4 V5 的区别,yolov5-8, yolox创新点

    文章目录 Anchor base和Anchor Free的区别: 如何增强模型对小物体的检测效果 Yolo基本思想 不同版本的Yolo网络差异 YOLO V1 YOLO V2 YOLO9000 YOL ...

  3. anchor free和anchor base

    仅供个人学习使用 1.anchor base anchor base的方法需要先在图片上生成候选框,无论是RPN生成还是通过k-means生成的先验框,都需要在分类回归之前有存在的框可使用.在框的基础 ...

  4. 【AI面试】目标检测中one-stage、two-stage算法的内容和优缺点对比汇总

    在深度学习领域中,图像分类,目标检测和目标分割是三个相对来说较为基础的任务了.再加上图像生成(GAN,VAE,扩散模型),keypoints关键点检测等等,基本上涵盖了图像领域大部分场景了. 尤其是在 ...

  5. FCOS:全卷积一阶段Anchor Free物体检测器,多种视觉任务的统一框架

    作者 | ronghuaiyang 来源 | AI公园 导读:这是众多Anchor Free中比较有影响力的一篇文章,不光是效果好,而且思路清楚,简单,不需要任何trick,并将众多的视觉任务统一到了 ...

  6. 深度学习算法面试常问问题(三)

    pooling层是如何进行反向传播的? average pooling: 在前向传播中,就是把一个patch的值取平均传递给下一层的一个像素.因此,在反向传播中,就是把某个像素的值平均分成n份 分配给 ...

  7. YOLOv1——YOLOX系列及FCOS目标检测算法详解

    文章目录 一. 开山之作:YOLOv1 1.1. YOLOv1简介 1.2 YOLOv1 检测原理 1.3 YOLOv1网络结构 1.4 YOLOv1 损失函数 1.5 YOLOv1优缺点 二. YO ...

  8. 这些深度学习模型不会还有人不知道吧,不会吧不会吧

    这里写目录标题 1 TF-IDF 文本挖掘预处理 2 word2vec word2vec 对比模型 1.NNLM 2.RNNLM 1.Skip-gram模型 2.CBOW模型 Word2vec关键技术 ...

  9. 论文解读:FastSAM | Fast Segment Anything | 基于yolov8-seg实现 比SAM快50倍

    发表时间:2023.06.21 论文地址:http://export.arxiv.org/pdf/2306.12156 项目地址:https://github.com/CASIA-IVA-Lab/Fa ...

最新文章

  1. QT的QDialogButtonBox类的使用
  2. Windows10 【系统周期表】【系统下载表】【大型软件表】
  3. Angular Material 阴影使用
  4. Windows Phone 7 使用启动器(Lanucher)
  5. 关联规则mlxtend的应用
  6. 最新 Molecular Operating Environment (MOE) Linux Windows
  7. rpm 安装、卸载软件命令 ——以nginx为例
  8. CPU瓶颈(五)--过度编译与不必要重复编译的解决方案
  9. 一句话菜刀 php eval,如何基于菜刀PHP一句话实现单个文件批量上传?
  10. 解决eclipse乱码问题
  11. 程序员辉辉想裸辞,但又不太敢
  12. 日知录-章0:当我们在谈论大数据时,我们在谈什么?
  13. 红米note3android驱动,红米Note3手机驱动
  14. springboot定期清理文件
  15. HTML---下拉框、列表框使用详解(select 与 option)
  16. C++基本功和 Design Pattern系列 Operator 下
  17. 如何判断PHP数组是否为空
  18. 华清远见上海中心培训感言
  19. 网管型交换机与非网管型交换机的区别
  20. 开源项目也可以是你的良师益友

热门文章

  1. 树莓派连接中文SSID的wifi无线网络
  2. Powerpoint2010也能直接截图
  3. “平台化思维”如火如荼的今天,该如何借鉴?
  4. javaScript ES6-ES11新特性总结
  5. 超简单 CameraX 人脸识别效果封装
  6. 从MES到MOM,抓住中国工业软件的机遇
  7. 解码奇安信2021年业绩预告传递的几个信息,2022更值得期待
  8. 用Windows XP自带的性能监视器测试
  9. weblogic集群部署
  10. OJ.2324: 约瑟夫环问题【数组】