CNN的反击 | DECO: 纯卷积Query-Based检测器超越DETR!

作者 | 派派星  编辑 | 极市平台

点击下方卡片,关注“自动驾驶之心”公众号

戳我-> 领取自动驾驶近15个方向学习路线

>>点击进入→自动驾驶之心目标检测技术交流群

本文只做学术分享,如有侵权,联系删文

导读

 

本文旨在研究是否能够构建一种基于查询的端到端目标检测框架,而不采用复杂的Transformer架构。提出了一种名为Detection ConvNet(DECO)的新型检测框架,包括主干网络和卷积编码器-解码器结构。通过精心设计DECO编码器和引入一种新颖的机制,使DECO解码器能够通过卷积层实现目标查询和图像特征之间的交互。 

b6709dfd34ac7edb048585405c2bcb8c.png

标题:DECO: Query-Based End-to-End Object Detection with ConvNets
论文:https://arxiv.org/pdf/2312.13735.pdf
源码:https://github.com/xinghaochen/DECO
原文:https://zhuanlan.zhihu.com/p/686011746@王云鹤

引言

Detection Transformer(DETR)推出之后,迅速引发了目标检测领域的一股热潮,很多的后续工作也从精度和速度方面对原始的 DETR 进行了改进。然而,Transformer 是否真的大一统视觉领域呢,至少从 ConvNeXt 和 RepLKNet 等工作表明,CNN 结构在视觉领域还是有很大的潜力的。

d3580f404a6f24b97553f720a367c2be.png

我们这个工作探究的就是如何利用纯卷积的架构,来得到一个性能能打的类 DETR 框架的检测器。致敬 DETR,我们称我们的方法为DECO (Detection ConvNets)。采用 DETR 类似的结构设定,搭配不同的 Backbone,DECO 在 COCO 上取得了38.6%和40.8%的AP,在V100上取得了35 FPS和28 FPS的速度,取得比DETR更好的性能。搭配类似RT-DETR的多尺度特征等模块,DECO取得了47.8% AP和34 FPS的速度,总体性能跟很多DETR改进方法比都有不错的优势。

方法

网络架构

6b490e37489521b8bff4522450d67496.png

DETR的主要特点是利用Transformer Encoder-Decoder的结构,对一张输入图像,利用一组Query跟图像特征进行交互,可以直接输出指定数量的检测框,从而可以摆脱对NMS等后处理操作的依赖。我们提出的DECO总体架构上跟DETR类似,也包括了Backbone来进行图像特征提取,一个Encoder-Decoder的结构跟Query进行交互,最后输出特定数量的检测结果。唯一的不同在于,DECO的Encoder和Decoder是纯卷积的结构,因此DECO是一个由纯卷积构成的Query-Based端对端检测器。

编码器

DETR 的 Encoder 结构替换相对比较直接,我们选择使用4个ConvNeXt Block来构成Encoder结构。具体来说,Encoder的每一层都是通过叠加一个7x7的深度卷积、一个LayerNorm层、一个1x1的卷积、一个GELU激活函数以及另一个1x1卷积来实现的。此外,在DETR中,因为Transformer架构对输入具有排列不变性,所以每层编码器的输入都需要添加位置编码,但是对于卷积组成的Encoder来说,则无需添加任何位置编码

解码器

相比而言,Decoder的替换则复杂得多。Decoder的主要作用为对图像特征和Query进行充分的交互,使得Query可以充分感知到图像特征信息,从而对图像中的目标进行坐标和类别的预测。Decoder主要包括两个输入:Encoder的特征输出和一组可学的查询向量(Query)。我们把Decoder的主要结构分为两个模块:自交互模块(Self-Interaction Module, SIM)和交叉交互模块(Cross-Interaction Module, CIM)。

1b8fa4fead893d100574f516bd19a1d9.png

这里,SIM模块主要融合Query和上层Decoder层的输出,这部分的结构,可以利用若干个卷积层来组成,使用9x9 depthwise卷积和1x1卷积分别在空间维度和通道维度进行信息交互,充分获取所需的目标信息以送到后面的CIM模块进行进一步的目标检测特征提取。Query为一组随机初始化的向量,该数量决定了检测器最终输出的检测框数量,其具体的值可以随实际需要进行调节。对DECO来说,因为所有的结构都是由卷积构成的,因此我们把Query变成二维,比如100个Query,则可以变成10x10的维度。

CIM模块的主要作用是让图像特征和Query进行充分的交互,使得Query可以充分感知到图像特征信息,从而对图像中的目标进行坐标和类别的预测。对于Transformer结构来说,利用cross attention机制可以很方便实现这一目的,但对于卷积结构来说,如何让两个特征进行充分交互,则是一个最大的难点。

要把大小不同的SIM输出和encoder输出全局特征进行融合,必须先把两者进行空间对齐然后进行融合,首先我们对SIM的输出进行最近邻上采样:

72dc1228273250c609c5277d16102520.png

使得上采样后的特征与Encoder输出的全局特征有相同的尺寸,然后将上采样后的特征和encoder输出的全局特征进行融合,然后进入深度卷积进行特征交互后加上残差输入:

a566dac178ea492ae7b414b92fa2d2ab.png

最后将交互后的特征通过FNN进行通道信息交互,之后pooling到目标数量大小得到decoder的输出embedding:

fc0b5bc50d29b6e92dd9616bbaef77cd.png

最后我们将得到的输出embedding送入检测头,以进行后续的分类和回归。

多尺度特征

跟原始的DETR一样,上述框架得到的DECO有个共同的短板,即缺少多尺度特征,而这对于高精度目标检测来说是影响很大的。Deformable DETR通过使用一个多尺度的可变形注意力模块来整合不同尺度的特征,但这个方法是跟Attention算子强耦合的,因此没法直接用在我们的DECO上。为了让DECO也能处理多尺度特征,我们在Decoder输出的特征之后,采用了RT-DETR提出的一个跨尺度特征融合模块。实际上,DETR诞生之后衍生了一系列的改进方法,我们相信很多策略对于DECO来说同样是适用的,这也希望感兴趣的人共同来探讨。

实验

我们在COCO上进行了实验,在保持主要架构不变的情况下将DECO和DETR进行了比较,比如保持Query数量一致,保持Decoder层数不变等,仅将DETR中的Transformer结构按上文所述换成我们的卷积结构。可以看出,DECO取得了比DETR更好的精度和速度的Tradeoff。

e085ff025c1b0645fbcad2efac0d1c6d.png

我们也把搭配了多尺度特征后的DECO跟更多目标检测方法进行了对比,其中包括了很多DETR的变体,从下图中可以看到,DECO取得了很不错的效果,比很多以前的检测器都取得了更好的性能。

7cb45c1aa0321ca44d3531e206754d05.png

文章中DECO的结构进行了很多的消融实验及可视化,包括在Decoder中选用的具体融合策略(相加、点乘、Concat),以及Query的维度怎么设置才有最优的效果等,也有一些比较有趣的发现,更详细的结果和讨论请参看原文。

总结

本文旨在研究是否能够构建一种基于查询的端到端目标检测框架,而不采用复杂的Transformer架构。提出了一种名为Detection ConvNet(DECO)的新型检测框架,包括主干网络和卷积编码器-解码器结构。通过精心设计DECO编码器和引入一种新颖的机制,使DECO解码器能够通过卷积层实现目标查询和图像特征之间的交互。在COCO基准上与先前检测器进行了比较,尽管简单,DECO在检测准确度和运行速度方面取得了竞争性表现。具体来说,使用ResNet-50和ConvNeXt-Tiny主干,DECO在COCO验证集上分别以35和28 FPS获得了38.6%和40.8%的AP,优于DET模型。希望DECO提供了设计目标检测框架的新视角。

投稿作者为『自动驾驶之心知识星球』特邀嘉宾,欢迎加入交流!

① 全网独家视频课程

BEV感知、毫米波雷达视觉融合多传感器标定多传感器融合多模态3D目标检测车道线检测轨迹预测在线高精地图世界模型点云3D目标检测目标跟踪Occupancy、cuda与TensorRT模型部署大模型与自动驾驶Nerf语义分割自动驾驶仿真、传感器部署、决策规划、轨迹预测等多个方向学习视频(扫码即可学习

f11aaa56a849ba8f8f4bf2b40adea2d6.png

网页端官网:www.zdjszx.com

② 国内首个自动驾驶学习社区

国内最大最专业,近2700人的交流社区,已得到大多数自动驾驶公司的认可!涉及30+自动驾驶技术栈学习路线,从0到一带你入门自动驾驶感知2D/3D检测、语义分割、车道线、BEV感知、Occupancy、多传感器融合、多传感器标定、目标跟踪)、自动驾驶定位建图SLAM、高精地图、局部在线地图)、自动驾驶规划控制/轨迹预测等领域技术方案大模型、端到端等,更有行业动态和岗位发布!欢迎扫描下方二维码,加入自动驾驶之心知识星球,这是一个真正有干货的地方,与领域大佬交流入门、学习、工作、跳槽上的各类难题,日常分享论文+代码+视频

d988cc2db5839b12cc0d7fb3a52de94e.png

③【自动驾驶之心】技术交流群

自动驾驶之心是首个自动驾驶开发者社区,聚焦2D/3D目标检测、语义分割、车道线检测、目标跟踪、BEV感知、多模态感知、Occupancy、多传感器融合、transformer、大模型、在线地图、点云处理、端到端自动驾驶、SLAM与高精地图、深度估计、轨迹预测、NeRF、Gaussian Splatting、规划控制、模型部署落地、cuda加速、自动驾驶仿真测试、产品经理、硬件配置、AI求职交流等方向。扫码添加汽车人助理微信邀请入群,备注:学校/公司+方向+昵称(快速入群方式)

b1e80dbc5fb7963cfd86f0bbf423834e.jpeg

④【自动驾驶之心】平台矩阵,欢迎联系我们!

5a358be19a89fa415395b02a3209f9fe.jpeg

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值