作者:王利民 |  已授权转载(源:知乎)编辑:CVer

https://zhuanlan.zhihu.com/p/493049779

AdaMixer: A Fast-Converging Query-Based Object Detector

代码:https://github.com/MCG-NJU/AdaMixer

论文(刚刚开源):

https://arxiv.org/abs/2203.16507

本文介绍一下我们在目标检测的新工作AdaMixer,通过增强检测器的自适应建模能力来加速query-based检测器(类DETR检测器和Sparse RCNN)的收敛和最终的表现效果,并且使模型架构维持在一个相对简单的结构上。我们提出了一系列技术来增强query-based检测器的decoder解码部分,包括3D特征空间采样和动态MLP-Mixer检测头,这使得我们免于引入设计繁重、计算量大的各种注意力编码器(attentional encoder),或者特征金字塔式的多尺度交互网络,在保持效果的同时(其实我们超越了很多之前的模型),进一步简化了基于query的检测器的结构。

研究动机

首先,我们简单介绍一下我们的研究动机。现在基于query的检测器成为学术研究的热点,其通过query集合(有的文章也称proposal集合)和图像特征图的迭代交互抽取特征,不断完善query本身的语义,使其能够在matching loss下完成query对object的一对一cls和bbox预测。基于query的检测器不需要后续的NMS操作,使得整个检测流程更为简单和优雅。但是我们发现,基于query的检测器,尤其是类DETR检测器,其通常引入了多层的注意力编码器(attentional encoder),这些注意力编码器对每个像素密集地进行全局或者局部的注意力计算,引入了较大的运算量,且不易于拓展到高分辨率的特征图上,由此带来了小物体检测困难的问题,而且可能会带来训练时长的困扰。Sparse R-CNN流派引入了显式的特征金字塔网络FPN来增强对小物体的建模,但同样的,特征金字塔网络会引入额外的计算量。我们觉得在backbone和decoder之间加入额外的网络其实有些不优雅,而且这和用query做检测的目标有点相违背了。如果检测器需要厚重的密集编码器的话,那用数量少的query通过decoder可以检测物体作为模型的亮点就有点南辕北辙了。出现这些问题的根本原因还是decoder不够强势,需要encoder的建模能力来弥补,所以我们的方法的根本动机就是增强decoder的能力,使检测器尽量避免引入各种encoder。

但如何增强decoder的能力呢,尤其是对不同图像不同目标的多样化建模能力?这个问题对只使用稀疏且数量限制的query的解码器至关重要。回顾典型的query decoder本身,是一个基于transformer decoder的结构,首先将query和query之间做self attention,而后query和图像特征feat做交互,然后每个query再过FFN。而这些初始的query虽然一般都是可学习的向量,但在inference时就固定下来,无法对不同的输入而变化(虽然现在有潮流把初始的query由类RPN产生),所以如何保证query decoder本身的解码机制对不同图片输入不同物体的自适应能力就成了一个问题。为此,我们提出从两个方面来改进这种基于query的目标检测器:采样位置的自适应能力和解码特征的自适应能力,对应着就是我们提出的3D特征空间采样和动态MLP-Mixer检测头。

方法

我们简单介绍一下我们的AdaMixer检测器两个代表性的创新点,以利于读者迅速抓取到我们方法的脉络。有些细节在此忽略了,具体可以查看原文。

自适应的特征采样位置

与现在其他方法一样,我们把query解耦成两个向量,分别是内容向量(content vector)和位置向量(positional vector),其中query代表着的框可以由位置向量解码而来。在每一个stage,query decoder都会更新refine这两个向量。值得注意的是,我们对位置向量采用的参数化并不是常用框的lrtb坐标或是ccwh坐标,而是xyzr形式,其中z代表着框大小的对数,r代表着框长宽比的对数,这种参数化形式的xyz可以直接让我们的query可以与多层级特征所形成的3D特征空间进行联系。如上图所示,3D特征空间中的query坐标自然由xyz决定,自适应3D特征采样首先由query根据自己的内容向量生成多组offset,再在3D特征空间上进行对应点的插值采样得到对应的特征,3D特征空间有益于我们的方法统一自适应地学习目标物体的位置和尺度的变化。注意这一步是不需要任何多尺度交互网络的。

自适应的采样内容解码

对于一个query而言上述步骤采集到的特征形状为  ,其中  为采样点的个数,  是通道数量,我们在MLP-Mixer的启发下提出了逐query的自适应通道和空间mixing操作(adaptive channel mixing,ACM和adaptive spatial mixing,ASM)。具体来说,我们的decoder用动态依赖于query的权重去沿两个维度(通道  和空间 )mixing采集到的特征,由于采集的特征可能来自于不同层级的特征图,这样的mixing操作自然赋予了decoder多尺度交互建模的能力。

总结构

我们的AdaMixer解码器总结构如上图,虽然看起来有一点繁琐,但是在内容向量上的操作基本构造还是和Transformer decoder是一致的,位置向量可以简单地视为在一个stage内参与坐标变换和计算,然后在一个stage的末尾再更新。

总的AdaMixer检测器只由两个主要部分构成:其一是主干网络,其二是我们所提出来的AdaMixer解码器,不需要额外的注意力编码器以及显式的多尺度建模网络。

结果

实验结果在当时投稿时还是比较精彩的,在12 epoch的训练条件下,我们的表现超过了其他检测器(包括传统以及基于query的检测器),其中N为query的数量,证明了我们的方法的收敛速度和最终效果。而且我们的12 epoch在8卡V100上实际训练时间还是比较快的,只要9小时。

在与跟其他query-based检测器相比下,我们也有更好的表现,而且我们是表中唯一不需要额外的注意力编码器或者金字塔特征网络的模型。

消融实验

我们做了比较丰富的消融实验来验证我们提出的各个模块的有效性。在此,我们选一些有代表性的消融实验来进行讨论。

表(a)是对我们方法核心所需的自适应性的探究,不管是采样位置(loc.)还是解码内容(cont.)的适应性都对我们最终模型的表现有着大幅的影响。

表(b)是对我们提出的adaptive mixing的探究,动态通道混合(ACM)和动态空间混合(ASM)的顺序组合是最佳选择。

表(c)是我们的AdaMixer再加上不同的多尺度交互网络的效果,我们很惊讶地发现不加额外的金字塔网络居然效果还比较好,我们猜测可能是因为我们的AdaMixer解码器自然具有多尺度交互的能力且额外的金字塔网络有着更多的参数需要更多的训练时间来收敛。

表8进一步探究了3D特征空间采样。注意到表8中实验模型都没有配备FPN网络,在这种情况下RoIAlign的表现效果较差在我们的情理之中。自适应2D采样(不学习z方向上的offset)的模型落后了3D特征空间采样将近1.5个AP,说明了3D采样尤其是z方向上学习offset的必要性。另外,另一个很有意思的结论是只用C4特征要比C5要好,这可能归功于C4特征的分辨率较大。而且只用C4特征时,可以把ResNet的后续特征提取阶段直接砍掉(因为没有FPN,也用不到C5特征图了),这可能代表着此类检测器轻量化可以涉及的方向?我们还未做过多探究。

总结

我们提出了一个具有相对简单结构、快速收敛且表现不俗的检测器AdaMixer,通过改善解码器对目标物体的自适应解码能力,我们的AdaMixer无需引入厚重的注意力编码器以及显式的多尺度交互网络。我们希望AdaMixer可以作为后续基于query的检测器简单有效的基线模型。

本文仅做学术分享,如有侵权,请联系删文。

干货下载与学习

后台回复:巴塞罗自治大学课件,即可下载国外大学沉淀数年3D Vison精品课件

后台回复:计算机视觉书籍,即可下载3D视觉领域经典书籍pdf

后台回复:3D视觉课程,即可学习3D视觉领域精品课程

3D视觉精品课程推荐:

1.面向自动驾驶领域的多传感器数据融合技术

2.面向自动驾驶领域的3D点云目标检测全栈学习路线!(单模态+多模态/数据+代码)
3.彻底搞透视觉三维重建:原理剖析、代码讲解、及优化改进
4.国内首个面向工业级实战的点云处理课程
5.激光-视觉-IMU-GPS融合SLAM算法梳理和代码讲解
6.彻底搞懂视觉-惯性SLAM:基于VINS-Fusion正式开课啦
7.彻底搞懂基于LOAM框架的3D激光SLAM: 源码剖析到算法优化
8.彻底剖析室内、室外激光SLAM关键算法原理、代码和实战(cartographer+LOAM +LIO-SAM)

9.从零搭建一套结构光3D重建系统[理论+源码+实践]

10.单目深度估计方法:算法梳理与代码实现

11.自动驾驶中的深度学习模型部署实战

12.相机模型与标定(单目+双目+鱼眼)

13.重磅!四旋翼飞行器:算法与实战

14.ROS2从入门到精通:理论与实战

重磅!计算机视觉工坊-学习交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有ORB-SLAM系列源码学习、3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、深度估计、学术交流、求职交流等微信群,请扫描下面微信号加群,备注:”研究方向+学校/公司+昵称“,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进去相关微信群。原创投稿也请联系。

▲长按加微信群或投稿

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列三维点云系列结构光系列手眼标定相机标定、激光/视觉SLAM、自动驾驶等)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近4000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

圈里有高质量教程资料、可答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~

CVPR 2022 Oral | 目标检测新工作!南大开源AdaMixer:快速收敛的基于查询的目标检测器...相关推荐

  1. CVPR 2020 | 港中文提出3D目标检测新框架DSGN

    ©PaperWeekly 原创 · 作者|张承灏 学校|中科院自动化所硕士生 研究方向|双目深度估计 本文介绍的是香港中文大学贾佳亚团队在 CVPR 2020 上提出的 3D 目标检测新框架--深度立 ...

  2. CVPR 2020 | CentripetalNet:目标检测新网络,COCO 48 % AP超现所有Anchor-free网络

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 Anchor-free目标检测新网络,在COCO上可达48 AP!性能优于CenterNet.RPDe ...

  3. CVPR 2022 Oral | 清华开源FineDiving:细粒度动作质量评估数据集

    点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 作者:荷塘小八戒 |  已授权转载(源:知乎)编辑:CVer https://zhuanlan.zhihu. ...

  4. CVPR 2022 Oral 腾讯优图厦门大学提出无需训练的ViT结构搜索算法

    CVPR 2022 Oral  腾讯优图&厦门大学 提出无需训练的ViT结构搜索算法 Training-free Transformer Architecture Search 论文:http ...

  5. 英伟达这篇CVPR 2022 Oral火了!2D图像秒变逼真3D物体!虚拟爵士乐队来了!

    点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 你见过乐器自己演奏么?看看这个: 图1. "活灵活现"的虚拟乐器还是在 NVIDIA 服 ...

  6. ICML 2021 | 上交华为提出GWD:旋转目标检测新方法

    点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 作者:yangxue |  已授权转载(源:知乎) https://zhuanlan.zhihu.com/p ...

  7. CaDDN:基于单目的3D目标检测新方法(CVPR2021)

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者丨元气满满的打工人 来源丨CV研习社 文章导读 导读:在自动驾驶的技术中,3D目标检测能够提更加丰 ...

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

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

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

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

  10. 三维目标检测新SOTA---ADFDetV2论文解读

    问题 本文提出了一种单阶段的三维目标检测算法,并在文中分析了二阶段三维目标检测算法的不必要性.其所提算法在waymo实时目标检测竞赛中取得了第一的成绩.其性能超过了所有单阶段和多阶段的目标检测算法. ...

最新文章

  1. 信息系统项目管理师-论文要求
  2. boost::detail::lowest_bit的测试程序
  3. 分享一个好用的函数吧,将js中的对象转成url参数
  4. 戴尔笔记本电脑开机黑屏怎么办_戴尔笔记本电脑充不进电怎么办
  5. 小程序跳转样式布局错乱_小程序页面布局样式元素总结
  6. 【报告分享】快消产业互联网案例研究报告.pdf(附下载链接)
  7. MeterSphere实现“机器人定时在企业微信群中发送消息”功能
  8. C#笔记05 方法和参数
  9. 阶段3 2.Spring_02.程序间耦合_5 编写工厂类和配置文件
  10. Github上托管项目
  11. 地脚螺钉直径系列_干数控这么久,现在才分清楚螺栓、螺钉、螺柱的区别
  12. 实操调试成功 基于NI-VISA的USBTMC接口程控仪器连接
  13. kettle连接mysql教程_KETTLE初学者使用教程
  14. R语言 常用的数据分析工具包
  15. 30种大脑训练方法:提高你的注意力(修订本) - 目录
  16. SpaceEye :12种地球实时卫星照片壁纸
  17. Win7系统自动关机设定让你更轻松
  18. js主要是用来向html页面中,javascript是用来干什么的?
  19. cascading 使用_欢迎使用Cascading 2.0 –减轻Hadoop困境的开源API
  20. 评点2021-2022年上市的那些Go语言新书

热门文章

  1. ShopNc实例化对象
  2. CentOS 上MySQL报错Can't connect to local Mysql server through socket '/tmp/mysql.scok' (111)
  3. 大型网站软件架构特点
  4. 进程/线程间通信和同步
  5. Web开发技术——JQuery8(添加元素和删除元素)
  6. hdu 3925 一道复杂的简单题
  7. 四、hibernate实体对象,事务管理,锁
  8. Idea常用快捷键及功能简记--不断更新
  9. potplayer播放器没有声音的解决方案
  10. CentOS7安装Portainer实现docker可视化操作