机器之心转载

作者:孙培泽

全新的目标检测范式Sparse R-CNN。

本文主要介绍一下我们最近的一篇工作:

沿着目标检测领域中 Dense 和 Dense-to-Sparse 的框架,Sparse R-CNN 建立了一种彻底的 Sparse 框架, 脱离 anchor box,reference point,Region Proposal Network(RPN) 等概念,无需 Non-Maximum Suppression(NMS) 后处理, 在标准的 COCO benchmark 上使用 ResNet-50 FPN 单模型在标准 3x training schedule 达到了 44.5 AP 和 22 FPS。

  • Paper: https://arxiv.org/abs/2011.12450

  • Code: https://github.com/PeizeSun/SparseR-CNN

1. Motivation

我们先简单回顾一下目标检测领域中主流的两大类方法。

  • 第一大类是从非 Deep 时代就被广泛应用的 dense detector,例如 DPM,YOLO,RetinaNet,FCOS。在 dense detector 中, 大量的 object candidates 例如 sliding-windows,anchor-boxes, reference-points 等被提前预设在图像网格或者特征图网格上,然后直接预测这些 candidates 到 gt 的 scaling/offest 和物体类别。

  • 第二大类是 dense-to-sparse detector,例如,R-CNN 家族。这类方法的特点是对一组 sparse 的 candidates 预测回归和分类,而这组 sparse 的 candidates 来自于 dense detector。

这两类框架推动了整个领域的学术研究和工业应用。目标检测领域看似已经饱和,然而 dense 属性的一些固有局限总让人难以满意:

  • NMS 后处理

  • many-to-one 正负样本分配

  • prior candidates 的设计

所以,一个很自然的思考方向就是:能不能设计一种彻底的 sparse 框架?最近,DETR 给出了一种 sparse 的设计方案。candidates 是一组 sparse 的 learnable object queries,正负样本分配是 one-to-one 的 optimal bipartite matching,无需 nms 直接输出最终的检测结果。然而,DETR 中每个 object query 都和全局的特征图做 attention 交互,这本质上也是 dense。而我们认为,sparse 的检测框架应该体现在两个方面:sparse candidates 和 sparse feature interaction。基于此,我们提出了 Sparse R-CNN。

Sparse R-CNN 抛弃了 anchor boxes 或者 reference point 等 dense 概念,直接从 a sparse set of learnable proposals 出发,没有 NMS 后处理,整个网络异常干净和简洁,可以看做是一个全新的检测范式。

2.Sparse R-CNN

Sparse R-CNN 的 object candidates 是一组可学习的参数,N*4,N 代表 object candidates 的个数,一般为 100~300,4 代表物体框的四个边界。这组参数和整个网络中的其他参数一起被训练优化。That's it,完全没有 dense detector 中成千上万的枚举。这组 sparse 的 object candidates 作为 proposal boxes 用以提取 Region of Interest(RoI),预测回归和分类。

这组学习到的 proposal boxes 可以理解为图像中可能出现物体的位置的统计值,这样 coarse 的表征提取出来的 RoI feature 显然不足以精确定位和分类物体。于是,我们引入一种特征层面的 candidates,proposal features,这也是一组可学习的参数,N*d,N 代表 object candidates 的个数,与 proposal boxes 一一对应,d 代表 feature 的维度,一般为 256。这组 proposal features 与 proposal boxes 提取出来的 RoI feature 做一对一的交互,从而使得 RoI feature 的特征更有利于定位和分类物体。相比于原始的 2-fc Head,我们的设计称为 Dynamic Instance Interactive Head。

Sparse R-CNN 的两个显著特点就是 sparse object candidatessparse feature interaction,既没有 dense 的成千上万的 candidates,也没有 dense 的 global feature interaction。Sparse R-CNN 可以看作是目标检测框架从 dense 到 dense-to-sparse 到 sparse 的一个方向拓展。

3. Architecture Design

Sparse R-CNN 的网络设计原型是 R-CNN 家族。

  • Backbone 是基于 ResNet 的 FPN。

  • Head 是一组 iterative 的 Dynamic Instance Interactive Head,上一个 head 的 output features 和 output boxes 作为下一个 head 的 proposal features 和 proposal boxes。Proposal features 在与 RoI features 交互之前做 self-attention。

  • 训练的损失函数是基于 optimal bipartite matching 的 set prediction loss。

从 Faster R-CNN(40.2 AP) 出发,直接将 RPN 替换为 a sparse set of learnable proposal boxes,AP 降到 18.5;引入 iterative 结构提升 AP 到 32.2;引入 dynamic instance interaction 最终提升到 42.3 AP。

4. Performance

我们沿用了 Detectron2 的 3x training schedule,因此将 Sparse R-CNN 和 Detectorn2 中的 detectors 做比较(很多方法没有报道 3x 的性能,所以没有列出)。同时,我们也列出了同样不需要 NMS 后处理的 DETR 和 Deformable DETR 的性能。Sparse R-CNN 在检测精度,推理时间和训练收敛速度都展现了相当有竞争力的性能。

5. Conclusion

R-CNN 和 Fast R-CNN 出现后的一段时期内,目标检测领域的一个重要研究方向是提出更高效的 region proposal generator。Faster R-CNN 和 RPN 作为其中的佼佼者展现出广泛而持续的影响力。Sparse R-CNN 首次展示了简单的一组可学习的参数作为 proposal boxes 即可达到 comparable 的性能。我们希望我们的工作能够带给大家一些关于 end-to-end object detection 的启发。

原文链接:https://zhuanlan.zhihu.com/p/310058362

© THE END

转载请联系 机器之心 公众号获得授权

投稿或寻求报道:content@jiqizhixin.com

目标检测新范式:Sparse R-CNN相关推荐

  1. 抛弃Anchor box和NMS,目标检测新范式开源:Sparse R-CNN

    点击上方,选择星标或置顶,不定期资源大放送! 阅读大概需要10分钟 Follow小博主,每天更新前沿干货 作者丨孙培泽@知乎 来源丨https://zhuanlan.zhihu.com/p/31005 ...

  2. 优秀!港大同济伯克利提出Sparse R-CNN: 目标检测新范式

    作者孙培泽 转自知乎,已获授权转载,请勿二次转载 https://zhuanlan.zhihu.com/p/310058362 本文主要介绍一下我们最近的一篇工作: Sparse R-CNN: End ...

  3. 太棒了!港大同济伯克利推出目标检测新范式:Sparse R-CNN

    点上方蓝字计算机视觉联盟获取更多干货 在右上方 ··· 设为星标 ★,与你不见不散 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:机器之心,原文链接:https://zhuanlan.zhi ...

  4. 最近目标检测新范式汇总SparseRCNN,OneNet,DeFCN等

    点上方蓝字计算机视觉联盟获取更多干货 在右上方 ··· 设为星标 ★,与你不见不散 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:作者丨林大佬@知乎 来源丨https://zhuanlan. ...

  5. 解读目标检测新范式:Segmentations is All You Need

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 多年来,基于候选区域网络(RPN)的现有模型在目标检测任务中得到了 ...

  6. NWD-Based Model | 小目标检测新范式,抛弃IoU-Based暴力涨点(登顶SOTA)

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者丨ChaucerG 来源丨集智书童 小目标检测是一个非常具有挑战性的问题,因为小目标只包含几个像素 ...

  7. ICLR2022系列解读之三:一个新的目标检测网络结构范式GiraffeDet

    本文解读我们ICLR2022上发表的论文<GiraffeDet: A Heavy-Neck Paradigm for Object Detection>.我们提出了一个新的目标检测网络结构 ...

  8. 何恺明团队最新研究:3D目标检测新框架VoteNet,两大数据集刷新最高精度

    [导读]FAIR何恺明等人团队提出3D目标检测新框架VoteNet,直接处理原始数据,不依赖任何2D检测器.该模型设计简单,模型紧凑,效率高,在两大真实3D扫描数据集上实现了最先进的3D检测精度. 当 ...

  9. 重磅开源!目标检测新网络 DetectoRS:54.7 AP,特征金字塔与空洞卷积的完美结合

    原文链接:重磅开源!目标检测新网络 DetectoRS:54.7 AP,特征金字塔与空洞卷积的完美结合 论文地址:https://arxiv.org/abs/2006.02334 代码地址(基于mmd ...

最新文章

  1. 让Maven项目使用Nexus作为远程仓库的settings.xml配置
  2. 云网融合 — 算力中心
  3. The Power of Ten – Rules for Developing Safety Critical Code
  4. 【深度学习笔记】CUDA
  5. AndroidStudio-使用Translations Editor
  6. 【leetcode 简单】 第五十五题 打家劫舍
  7. Microsoft Windows Server 2019 1809 iso镜像 企业版本
  8. java 课后习题 冒泡排序的运用
  9. Ubuntu 11.04下最流行的17款应用(linux在中国市场的占有率好像只有0.1几%)
  10. ajax的post方式传数组参数
  11. anaconda必须安装在c盘吗_Window版本 - Python数据分析集成开发环境 Anaconda安装(超详细)...
  12. Bailian3756 多边形内角和【数学计算】
  13. Java的OOP编程思想
  14. favicon.ico在线转换网站
  15. 10041---socket与http的区别
  16. 安装sklearn-poter遇到报错(TypeError:‘encoding‘ is an invalid keyword argument for this function)
  17. 常见却可能无意间伤人的 8 句话
  18. 【AI】封杀这个公式,AI智商将为零【转】
  19. ctfshow 爆破 web21-web28
  20. 超火表白代码,心心(html+css)

热门文章

  1. 终于“打造”出了一个可以随时随地编程的工具
  2. 肝货,详解 tkinter 图形化界面制作流程!
  3. 使用 Python 开发一个恐龙跑跑小游戏,玩起来
  4. 龙蜥降世,神龙升级,阿里云投入 20 亿发力操作系统
  5. 无需3D运动数据训练,最新人体姿势估计方法达到SOTA | CVPR 2020
  6. 打破深度学习局限,强化学习、深度森林或是企业AI决策技术的“良药”
  7. 百炼智百炼智能获5000万元Pre-A轮融资,深耕智能获客赛道
  8. FPGA在人工智能时代的独特优势
  9. python语音识别终极指南
  10. 离开互联网上岸1年后,我后悔了!重回大厂内卷