Cross Modal Transformer: Towards Fast and Robust 3D Object Detection

代码地址

https://github.com/junjie18/CMT

1. 引言

在本文中,我们提出了Cross-Modal Transformer(CMT),这是一种简单而有效的端到端管道,用于鲁棒的3D对象检测(见图1(c))。首先,我们提出了坐标编码模块 (CEM),它通过将3D点集隐式编码为多模态标记来生成位置感知特征。具体来说,对于相机图像,从视锥体空间采样的3D点用于指示每个像素的3D位置的概率。 而对于LiDAR,BEV 坐标只是简单地编码到点云标记中。接下来,我们介绍位置引导查询。每个查询都按照PETR[26]初始化为3D参考点。我们将参考点的3D坐标 变换到图像和LiDAR空间,以在每个空间中执行相对坐标编码。

与现有方法相比,所提出的CMT框架具有许多优点。首先,我们的方法是一个简单的端到端管道,可以轻松扩展。3D位置被隐式编码到多模态特征中,这避免了引入 显式跨视图特征对齐引起的偏差。其次,我们的方法仅包含基本操作,没有对多模态特征进行特征采样或复杂的2D到3D视图转换。它实现了最先进的性能,并且与现 有方法相比显示出明显的优越性。第三,我们的CMT的鲁棒性比其他现有方法强得多。

极端的是,在LiDAR未命中的情况下,与那些基于视觉的3D物体检测器相比,我们仅使用图像标记的CMT可以实现相似的性能[23,26]。

总而言之,我们的贡献是:

  • 我们提出了一种快速且强大的3D检测器,这是一个真正的端到端框架,无需任何后处理。它克服了传感器丢失的问题。
  • 3D位置被编码到多模式标记中,无需任何复杂的操作,例如网格采样和体素池。
  • CMT 在nuScenes数据集上实现了最先进的3D检测性能。它为未来的研究提供了一个简单的基线。
图1 BEVFusion、TransFusion 之间的比较以及我们建议的 CMT。 (a) 在 BEVFusion 中,相机功能通过视图变换将图变换到 BEV 空间。两个模态特征在 BEV 空间中串联起来,采用BEV编码器进行融合。 (b) 先输血从 Li- 的高响应区域生成查询雷达特征。之后,对象查询与点交互云特征和图像特征分开。 (c) 在 CMT 中,对象查询直接与多模态功能交互同时。添加位置编码(PE)用于对齐的多模态特征。 “VT”是视图从图像到 3D 空间的变换。
图2 左:CMT 与现有方法之间的性能比较。所有速度统计数据均在单个Tesla A100 GPU 使用官方存储库的最佳模型。右:传感器缺失情况下 CMT 的性能评估。在推理过程中,CMT 在 LiDAR 缺失的情况下实现了基于视觉的性能,表现出很强的鲁棒性。

2. 相关工作

2.1. 基于相机的3D目标检测

早期的工作主要遵循密集预测流程。首先在图像平面上定位物体,然后预测其相关的 3D 属性,如深度、尺寸和方向。然而对于环视摄像头,基于透视视图的设计需要精心的后处理来消除重叠区域的冗余预测。BEV 表示提供了一个统一的坐标来融合来自多个摄像头视图的信息。LSS、BEVDet和BEVDepth预测深度分布,将图像特征提升到 3D 视锥体网格。DETR3D和BEVFormer将预定义的 BEV 查询投影到图像上,然后使用 Transformer 注意力来对多视图特征的关系进行建模。这些方法明确地将局部图像特征从 2D 透视视图投影到 BEV。PETR和 SpatialDETR采用依赖于摄像头姿态的位置嵌入,允许 Transformer 隐式地学习从图像视图到 3D 空间的投影。

2.2. 基于激光雷达的3D目标检测

基于激光雷达的 3D 物体检测旨在使用从激光雷达捕获的点云来预测 3D 物体的边界框。现有的方法将点云处理成不同的表示形式。基于点的方法直接从原始点云中提取特征并预测 3D 边界框。PointNet是第一个以端到端的方式处理点云的架构,它保留了点云的空间特征。其他方法将无序、不规则的激光雷达点云投影到规则的特征空间,如 3D 体素、特征柱和距离图像。然后使用标准的 2D 骨干网络在 BEV 平面中提取特征。VoxelNet首先将原始点云划分为规则的体素网格,然后使用 PointNet 网络从每个体素网格中的点提取特征。

2.3. 多模态3D目标检测

3D检测中的多传感器融合近年来引起了广泛关注。最先进的(SoTA)方法倾向于为两种模态找到统一的表示,或者定义对象查询来融合特征以进行进一步的预测。例如,BEVFusion[24,28]应用lift-splatshoot(LSS)操作将图像特征投影到BEV空间上,并将其与LiDAR特征连接起来。UVTR[20]通过可变形注意力[57]在3D体素空间中生成统一的表示。而对于基于查询的方法,FUTR3D[8]将3D参考点定义为查询,并直接从投影平面的坐标中对特征进行采样。TransFusion[1]采用两级管道。这些建议由LiDAR特征生成,并通过查询图像特征进一步细化。

图3.Cross-Modal Transformer(CMT)范例的架构。多视图图像和点云被输入到两个骨干网络以提取特征标记。在坐标编码模块中,相机光线和BEV位置的坐标分别转换为图像位置编码(ImPE)和点云位置编码(PCPE)。查询由位置引导查询生成器生成。在查询生成器中,3D锚点被投影到不同的模态,并且相对坐标被编码(参见右侧部分)。多模态令牌进一步与转换器解码器中的查询交互。更新后的查询进一步用于预测3D边界框。

3. 方法

该方法主要分为五部分:1)backbone,提取图像和点云特征(通用模块,不介绍),2)坐标编码模块,得到position-aware多模态tokens,3)position-guided query generator,计算position-aware queries,4)decoder和loss,5)masked-modal training。

3.1. 坐标编码模块(CEM)

坐标编码模块(CEM)用于将 3D 位置信息编码为多模态标记。它生成相机和 BEV 位置编码(PE),分别添加到图像标记和点云标记中。在 CEM 的帮助下,多模态标记可以在 3D 空间中隐式对齐。

3.2. Position-guided Query Generator

继 Anchor-DETR [48] 和 PETR [29] 之后,我们首先用从 [0, 1] 之间的均匀分布中采样的 n 个锚点A = \left \{ a_i = (a_{x,i}, a_{y,i}, a_{z,i}), i = 1, 2,\cdots, n \right \}初始化查询。然后,这些锚点通过线性变换转换到 3D 世界空间:

3.3. Decoder和Loss

至于解码器,我们遵循 DETR中的原始 Transformer 解码器,并使用 L 个解码器层。对于每个解码器层,位置引导的查询与多模态标记进行交互并更新它们的表示。使用两个前馈网络(FFN)通过更新后的查询来预测 3D 边界框和类别。

3.4. Masked-Modal Training

对于自动驾驶系统来说,安全性是最重要的关注点。一个理想的系统即使部分出现故障也需要有可靠的性能,并且不能依赖于任何特定模态的输入。最近,BEVFusion [27] 已经对激光雷达传感器故障的鲁棒性进行了探索。然而,这种探索仅限于有限的扫描范围,并且模型需要重新训练。在本文中,我们尝试了更极端的故障情况,包括单个摄像头缺失、摄像头缺失和激光雷达缺失。这与实际场景相符,并能确保自动驾驶的安全性。

为了提高模型的鲁棒性,我们提出了一种称为掩码模态训练的训练策略。在训练过程中,我们随机仅使用单一模态(如摄像头或激光雷达)进行训练,比例分别为\eta_1\eta_2。这种策略确保模型在单一模态和多模态下都能得到充分训练。然后,模型可以在单一模态或多模态下进行测试,而无需修改模型权重。实验结果表明,掩码模态训练不会影响我们融合模型的性能。即使激光雷达损坏,它仍然能够实现与最先进的基于视觉的 3D 探测器类似的性能。

图4 我们在测试阶段分析了 CMT 系统在三种模拟传感器错误下的鲁棒性:(a)单个摄像头缺失,(b)所有摄像头缺失,(c)激光雷达缺失。

4. 实验

分析一个有意思的图。下图中蓝色是初始queries在图像上的投影,红色是最终预测queries的投影,可以看到,queries最终会移动到离其较近的前景物体上。

5. 总结与讨论

在本文中,我们提出了一个完全端到端的框架用于多模态 3D 物体检测。它隐式编码将 3D 坐标转化为图像和点的标记云。通过坐标编码,简单而有效可采用主动DETR管道进行多模态融合以及端到端的学习。通过蒙面模态训练,我们的多模态检测器可以学习,具有很强的鲁棒性,即使错过了多种模式中的一种。我们希望这样的简单的管道设计可以提供更多关于端到端 3D 物体检测。

参考文献

https://blog.51cto.com/u_16282361/7754113

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

【论文笔记】Cross Modal Transformer: Towards Fast and Robust 3D Object Detection_cross model transformer:towards fast and robust 3d-CSDN博客

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/8918.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

Oracle数据库 查看SQL执行计划的几种方法

前言 在日常的运维工作中,SQL优化是DBA的进阶技能,SQL优化的前提是要看SQL的执行计划是否正确,下面分享几种查看执行计划的方法,每一种方法都各有各的好处,可以根据特定场景选择某种方法。 一.使用AUTOTRACE查看执行…

简单介绍Nginx服务器的反向代理、负载均衡

欢迎来到“雪碧聊技术”CSDN博客! 在这里,您将踏入一个专注于Java开发技术的知识殿堂。无论您是Java编程的初学者,还是具有一定经验的开发者,相信我的博客都能为您提供宝贵的学习资源和实用技巧。作为您的技术向导,我将…

域名+服务器+Nginx+宝塔使用SSL证书配置HTTPS

前言 在我的前面文章里,有写过一篇文章 linux服务器宝塔从头部署别人可访问的网站 在这篇文章,有教学怎么使用宝塔和买的服务器的公网IP,以及教怎么打包vue和springboot去部署不用域名的网站让别人访问 那么,这篇文章将在这个…

Chromium 中chrome.webRequest扩展接口定义c++

一、chrome.webRequest 注意 :从 Manifest V3 开始,"webRequestBlocking" 权限不再适用于大多数扩展程序。以 "declarativeNetRequest" 为例,它允许使用 declarativeNetRequest API。除了 "webRequestBlocking&quo…

.NET中通过C#实现Excel与DataTable的数据互转

在.NET框架中,使用C#进行Excel数据与DataTable之间的转换是数据分析、报表生成、数据迁移等操作中的常见需求。这一过程涉及到将Excel文件中的数据读取并加载至DataTable中,以便于利用.NET提供的丰富数据处理功能进行操作,同时也包括将DataTa…

多个NVR同时管理EasyNVR多品牌NVR管理工具/设备:IP常见问题解决方案

随着视频监控技术的不断发展,NVR(网络视频录像机)已经成为现代安防系统的重要组成部分。而为了更高效地管理多个品牌的NVR设备,EasyNVR这一多品牌NVR管理工具应运而生。然而,在实际使用过程中,尤其是在多个…

虚幻引擎 CEO 谈元宇宙:发展、策略与布局

在当今科技领域,元宇宙无疑是最热门的话题之一。Epic Games 首席执行官 Tim Sweeney 对元宇宙的未来发展充满信心,他认为开放元宇宙将融合娱乐、游戏和科技产业,带来一个光明的未来。本文将深入探讨采访中的关键内容,分析元宇宙的…

支付宝与华为终端联手,移动支付即将进入“碰时代”

大家好,我是小悟。 支付宝与华为终端强强联手,达成了战略合作!这可不仅仅是个简单的合作哦,它预示着我们的移动支付方式即将迎来一场革命性的变革,正式进入“碰时代”! 支付宝,作为全球领先的…

常用机器人算法原理介绍

一、引言 随着科技的不断发展,机器人技术在各个领域得到了广泛应用。机器人算法是机器人实现各种功能的核心,它决定了机器人的行为和性能。本文将介绍几种常用的机器人算法原理,包括路径规划算法、定位算法和运动控制算法。 二、路径规划算法…

【go从零单排】迭代器(Iterators)

🌈Don’t worry , just coding! 内耗与overthinking只会削弱你的精力,虚度你的光阴,每天迈出一小步,回头时发现已经走了很远。 📗概念 在 Go 语言中,迭代器的实现通常不是通过语言内置的迭代器类型&#x…

Java 连接操作 MySQL 数据库(增删查改操作)

环境 MySQL 5.5 版本eclipseMySQL 连接驱动 mysql-connector-java-5.1.18-bin.jar mysql8.0之前的版本与之后的版本使用的jar包是不同的,在使用时也有一定的区别。这里,我的 MySQL 版本为 5.5。 准备工作 将 jar 包添加到项目中,右键项目&a…

STL---迭代器

本文来源:《C语言程序设计》第10章 理解迭代器对于理解STL框架并掌握STL的使用至关重要。 迭代器是泛化的指针,STL算法利用迭代器对存储在容器中的元素序列进行遍历,迭代器提供了访问容器中每个元素的方法。 虽然指针也是一种迭代器&#…

TSMI252012PMX-3R3MT功率电感详细解析

TSMI252012PMX-3R3MT功率电感详细解析 一、引言 在现代电子设备的不断小型化和高性能化的趋势下,功率电感作为电路中的关键元件,其性能的好坏直接影响到整个电路的稳定性和效率。TSMI252012PMX-3R3MT作为深圳市时源芯微科技有限公司(TimeSo…

Ubuntu22.04安装DataEase

看到DataEase的驾驶舱,感觉比PowerBI要好用一点,于是搭建起来玩玩。Dataease推荐的操作系统是Ubuntu22.04/Centos 7。 下载了Ubuntu22.04和DataEase 最新版本的离线安装包 一.安装ubuntu22.04 在安装的时候,没有顺手设置IP地址信息&#xff…

OpenEuler 下 Docker 安装、配置与测试实例

文章目录 前言1. 环境准备2. 下载 Docker3.配置服务文件4.配置加速器加速下载docker镜像5. 验证 Docker 安装 前言 Docker 安装大致分为包管理器安装、脚本安装、离线手动安装、容器编排工具安装、桌面版安装等,每种安装各有特点,但涉及知识面不少&…

wordpress实用功能A5资源网同款 隐藏下载框 支付框 需要登录才能查看隐藏的内容

实用功能 隐藏下载框 支付框 需要登录才能查看隐藏的内容, 个人网站防天朝申查实测有效 。 登录前,未登录: 登录后,已登录: 功能说明 该代码段的主要功能是隐藏支付框并为未 登录用户显示一条提示信息,告知他们需要…

C 语言学习-05【数组】

1、一维数组元素的操作 输入一个数&#xff0c;按原来排序的规律将它插入到一个一排列好的数组中&#xff1a; #include <stdio.h>int main() {int i, data, a[10] {2, 3, 6, 9, 11, 12, 14, 17, 19};printf("Primitive series: \n");for (i 0; i < 9; i)…

H5移动端预览PDF方法

新建页面 新建一个页面以便去预览对应的pdf 新建完后在 pages.json 文件内去新增对应路由 页面内容 <template><view class"page"><view class"pdf"><view id"demo"></view></view><view class"b…

嵌入式学习(11)-WS2812灯珠

WS2812的级联控制协议非常简单。通过一根信号线就可以进行串行异步信号发送。 下面显示了四个WS2812通过数据性级联的方式。在串行通讯中使用不同高低电平脉冲表示数据0,1编码。 使用GPIO模拟时序时&#xff1a;GPIO的驱动频率大约是1MHz 硬件电路&#xff1a; 软件代码实现&…

流类库与输入输出

来源&#xff1a;《C语言程序设计》 像C语言一样&#xff0c;C语言也没有输入输出语句。 但C标准库中有一个面向对象的输入输出软件包&#xff0c;即I/O流类库。 流是I/O流类的中心概念。 ------ I/O流类库是C语言中I/O函数在面向对象的程序设计方法中的一个替换产品。 -…