Sparse4D v1

Sparse4D: Multi-view 3D Object Detection with Sparse Spatial-Temporal Fusion

2bcea72d0dce44a684c2bcdd6873795a.png

Abstract

基于鸟瞰图 (BEV) 的方法最近在多视图 3D 检测任务方面取得了重大进展。与基于 BEV 的方法相比,基于稀疏的方法在性能上落后,但仍然有很多不可忽略的优点。为了进一步推动稀疏 3D 检测,在这项工作中,我们介绍了一种名为 Sparse4D 的新方法,该方法通过稀疏采样和融合时空特征对锚框进行迭代细化。(1)稀疏 4D 采样:对于每个 3D 锚点,我们分配多个 4D 关键点,然后将其投影到多视图/尺度/时间戳图像特征以采样相应的特征; (2) 层次特征融合:我们分层融合不同视图/尺度、不同时间戳和不同关键点的采样特征以生成高质量的实例特征。通过这种方式,Sparse4D 可以有效地有效地实现 3D 检测,而不依赖于密集视图转换或全局注意力,并且对边缘设备部署更加友好。此外,我们引入了一个实例级深度重新加权模块来缓解 3Dto-2D 投影中的不适定问题。在实验中,我们的方法优于nuScenes数据集中所有基于稀疏的方法和大多数基于BEV的检测任务方法。代码可在 https://github.com/linxuewu/Sparse4D 获得。

1. Introduction

        多视图视觉 3D 感知在自动驾驶系统中起着至关重要的作用,尤其是对于低成本部署。与激光雷达模态相比,相机可以为远程距离检测和仅视觉元素识别提供有价值的视觉线索。然而,在没有显式深度线索的情况下,2D图像的3D感知是一个不适定的问题ill-posed issue,,这导致了一个长期存在的挑战,即如何正确地融合多摄像头图像来解决3D感知任务,如3D检测。最近的方法有两种主流类别:基于 BEV 的方法和基于稀疏的方法the BEV-based methods and the sparse-based methods.。

        基于BEV的方法[12,17-19,29,49]通过将多视图图像特征转换为统一的BEV空间,实现优异的性能提升。然而,除了BEV方式的优点外,还存在一些不可避免的缺点:(1)图像到BEV的透视变换需要密集的特征采样或重排,这对于低成本的边缘设备部署来说既复杂又计算成本高;(2)最大感知范围受BEV特征图大小的限制,难以在感知范围、效率和准确性之间进行权衡;(3)在BEV特征中压缩高度维度,失去纹理线索。因此,BEV 特征不适用于一些感知任务,例如信号牌检测。

        与基于 BEV 的方法不同,基于稀疏的算法 [5,35,41] 不需要密集透视变换模块,而是直接对稀疏特征进行 3D 锚点细化,从而可以缓解上述问题。其中,最具代表性的稀疏3D检测方法是DETR3D[41]。然而,它的模型容量是有限的,因为DETR3D只采样单个3D参考的特征每个锚查询的点。最近,SRCN3D[35]利用RoI-Align[9]对多视图特征进行采样,但不够高效,不能精确对齐不同视图的特征点。同时,现有的稀疏 3D 检测方法没有利用丰富的时间上下文,并且与最先进的基于 BEV 的方法相比具有显着的性能差距。

        在这项工作中,我们投入了我们最好的效果来扩展基于稀疏的三维检测的极限。为了解决这些问题,我们引入了一个名为Sparse4D的新框架,该框架利用分布在3D锚框区域的多个关键点对特征进行采样。与单点方式[41]和RoI-Align方式[35]相比,我们的采样方式有两个主要优点:(1)可以有效地提取每个锚盒内部丰富完整的上下文;(2)可以简单地扩展到时间维度作为4D关键点,可以有效地对齐时间信息。使用 4D 关键点,如图 1 所示,Sparse4D 首先为每个关键点执行多标签、多视图和多尺度。然后,这些采样的特征经过分层融合模块,生成高质量的实例特征,用于 3D 框细化。此外,为了缓解基于相机的 3D 检测的不适定问题并提高感知性能,我们明确地添加了一个实例级深度重新加权模块,其中实例特征由从预测深度分布中采样的深度置信度重新加权。该模块以稀疏的方式进行训练,无需额外的激光雷达点云监督。

总之,我们的工作有四个主要贡献:

• 据我们所知,我们提出的 Sparse4D 是第一个具有时间上下文融合的稀疏多视图 3D 检测算法,可以有效地对齐空间和时间视觉线索以实现精确的 3D 检测。

• 我们提出了一个可变形的4D聚合模块,可以灵活地完成多维(点、时间戳、视图和尺度)特征的采样和融合。• 我们引入了一个深度重新加权模块来缓解基于图像的 3D 感知系统中的不适定问题。

•在具有挑战性的基准 - nuScenes 数据集上,Sparse4D 在 3D 检测任务上优于所有现有的基于稀疏的算法和大多数基于 BEV 的算法,并且在跟踪任务上也表现良好。

2. Related Work

2.1. Sparse Object Detection

早期的目标检测方法[7,22,33,37,38]使用密集预测作为输出,然后利用非最大抑制(non-maxima suppression, NMS)处理这些密集预测。DETR[3]引入了一种新的检测范式,利用基于集合的损失和变压器直接预测稀疏检测结果。DETR在对象查询和全局图像上下文,计算量大,收敛困难。由于全局交叉注意力的使用,DETR 不能被视为纯稀疏方法。然后,可变形DETR[51]修改DETR,提出了一种基于参考点的局部交叉注意,加快了模型的收敛速度,降低了计算复杂度。稀疏R-CNN[36]提出了另一种基于区域提议思想的稀疏检测框架。网络结构非常简单有效,证明了稀疏检测的可行性和优越性。作为 2D 检测的扩展,许多 3D 检测方法最近更加关注这些稀疏范式,例如 MoNoDETR [46]、DETR3D [41]、Sparse R-CNN3D [35]、SimMOD [48] 等。

2.2. Monocular 3D Object Detection

        单目3D检测算法以一幅图像为输入,输出物体的3D包围盒。由于图像不包含深度信息,因此这个问题是不适定的,并且与 2D 检测相比更具挑战性。FCOS3D [39] 和 SMOKE [25] 基于单级 2D 检测网络进行了扩展,使用全卷积网络直接回归每个对象的深度。[31,40,43]利用单目深度估计结果将二维图像转换为三维伪点云信号,然后利用基于激光雷达的检测网络完成三维检测。OFT [34] 和 CaDDN [32] 在视图转换模块的帮助下将密集的 2D 图像特征转换为 BEV 空间,然后将 BEV 特征发送到检测器以完成 3D 对象检测。不同之处在于 OFT 使用 3D 到 2D 逆投影关系来完成特征空间变换,而 CaDDN 基于 2D 到 3D 投影,更像是伪 LiDAR 方法。

2.3. Multi-view 3D Object Detection

密集算法是多视图 3D 检测的主要研究方向,它使用密集特征向量进行视图变换、特征融合或框预测。目前,基于 BEV 的方法是密集算法的主要部分。BEVFormer[18]采用可变形注意完成BEV特征生成和密集时空特征融合。BEVDet [11, 12] 使用提升飞溅操作 [30] 来实现视图转换。在BEVDet的基础上,BEVDepth[17]增加了显式深度监督,显著提高了检测精度。BEVStereo[15]和SOLOFusion[29]将时间立体技术引入到三维检测中,进一步提高了深度估计效果。PETR[23,24]利用三维位置编码和全局交叉注意进行特征融合,但全局交叉注意的计算成本很高。与普通 DETR [3] 一样,PETR 不能被视为纯稀疏方法。DETR3D[41]是一个表示稀疏方法的有效工作,基于稀疏参考点进行特征采样和融合。图DETR3D[5]遵循DETR3D,引入了一个图网络来实现更好的空间特征融合,特别是对于多视图重叠区域。

3. Methodology

3.1. Overall Framework

如图2所示,Sparse4D符合编码器解码器结构。图像编码器用于提取具有共享权重的图像特征,其中包含主干(如ResNet[10]和VoVNet[14])和颈部(如FPN[20])。给定时间 t 的 N 个视图输入图像,图像编码器提取多视图多尺度特征图 asIt = {It,n,s|1≤s ≤ S, 1 ≤ n ≤ N }。为了利用时间上下文,我们提取最近T帧的图像特征作为图像特征队列I = {It}t0t=ts,其中ts = t0−(T−1)。

3.2. Deformable 4D Aggregation

实例特征的质量对整体稀疏感知系统有重大影响。为了解决这个问题,如图 3 所示,我们引入了可变形 4D 聚合模块来获得具有稀疏特征采样和层次特征融合的高质量实例特征。

4D关键点生成。对于第 m 个锚实例,我们将 K 个 4D 关键点指定为 Pm ∈ RK×T ×3,它由 KF 固定关键点和 KL 可学习关键点组成。如图3(a)所示,在当前时间戳0处,我们首先将固定关键点PF m,t0直接放在立体中心和锚盒的六个面中心上。然后,与固定关键点不同,可学习关键点在不同的实例特征上有所不同,这允许神经网络找到每个实例的最具代表性的特征。给定

821c01ad86b3472bb332236b25ce1694.png

层次融合。Hierarchy Fusion.为了生成高质量的实例特征,我们以分层方式融合上述特征向量 fm。如图3(c)所示,对于每个关键点,我们首先聚合不同视图中的特征,并用预测的权重进行缩放,然后与序列线性层进行时间融合。最后,对于每个锚实例,我们融合多点特征来生成实例特征。

3.3.深度重权模块

        这个3D到2D变换(Eq.(5))有一定的模糊性,即不同的3D点可能对应相同的2D坐标。对于不同的 3D 锚点,可以采样相同的特征(见图 4),这增加了神经网络拟合的难度。为了缓解这个问题,我们结合了显式深度估计模块Ψdepth,该模块由多个具有剩余连接的mlp组成。对于每个聚合特征 F 'm,我们估计离散深度分布,并使用 3d 锚框中心点的深度对相应的置信度 Cm 进行采样,这将用于对实例特征重新加权。

6c54be932d2c4a96a9c7df5ffcb4812f.png

697ea8a3b13d4833a156144044c4f624.png

这样,对于那些3D中心点远离深度方向的ground truth的实例,即使2D图像坐标非常接近ground truth,对应的深度置信度趋于零。因此,在重新加权后,相应的实例特征F‘’m受到惩罚也趋于0。结合显式深度估计模块可以帮助视觉感知系统进一步提高感知精度。此外,深度估计模块可以设计和优化为一个单独的部分,以促进模型性能。

3.4. Training

我们用 T 帧对视频剪辑进行采样,以端到端训练检测器。连续帧之间的时间间隔在 {dt, 2dt} (dt ≈ 0.5) 中随机采样。在 DETR3D [41] 之后,匈牙利算法用于将每个基本事实与一个预测值进行匹配。损失包括三个部分:分类损失、边界框回归损失和深度估计损失:

5. 结论

        在这项工作中,我们提出了一种新的方法Sparse4D,它通过可变形的4D聚合模块实现多标签和多视图的特征级融合,并使用迭代细化来实现3D盒回归。Sparse4D 可以提供出色的感知性能,并且在 nuScenes 排行榜上优于所有现有的稀疏算法和大多数基于 BEV 的算法。

        我们相信 Sparse4D 仍有许多改进的空间。例如,在深度重权模块中,可以加入多视图立体(MVS)[15,45]技术来获得更精确的深度。编码器还可以考虑相机参数以提高 3D 泛化 [8, 17]。因此,我们希望 Sparse4D 可以成为稀疏 3D 检测的新基线。此外,Sparse4D 的框架也可以扩展到其他任务,例如高清地图构建、占用估计、三维重建等。

 

 

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

四数之和--力扣18

四数之和 题目思路代码 题目 思路 类似于三数之和,先排序,利用双指针解题。 如果排序后的第一个元素大于目标值,直接返回,为什么nums[i]需要大于等于0,因为目标值可能为负数。比如:数组是[-4, -3, -2, -1…

大数据安全需求分析与安全保护工程

大数据安全威胁与需求分析 特征:海量是数据规模、快速的数据流转、多样的数据类型和价值密度低 种类和来源:结构化、半结构化和非结构化数据 数据种类: 结构化数据:关系模型数据,以关系数据库表形式管理的数据 非…

Docker:对已有的容器,对当前容器映射的端口实时 (增删改查)

首先我的docker已经起了一个容器,我突然想把他的80->80映射的端口改成80->8080 但是我不想去新启动容器,想在现有容器基础上去修改,或者我想删除某个端口映射(只是大概思路) 如何寻找容器配置文件位置 首先我这…

Linux系统使用Docker安装DockerUI并实现远程管理本地容器无需公网IP

文章目录 前言1. 安装部署DockerUI2. 安装cpolar内网穿透3. 配置DockerUI公网访问地址4. 公网远程访问DockerUI5. 固定DockerUI公网地址 前言 DockerUI是一个docker容器镜像的可视化图形化管理工具。DockerUI可以用来轻松构建、管理和维护docker环境。它是完全开源且免费的。基…

立足本土,面向全球 | 全视通闪耀亮相Medical Fair Asia新加坡医疗展

Medical Fair Asia是亚洲地区最大的医疗设备、医疗器械和医疗技术展览会之一,自1997年创办以来,每两年在新加坡举办一次。该展会不仅是新加坡医疗行业交流的龙头平台,也是亚洲乃至全球医疗企业和专业人士共聚一堂、展示最新产品和技术的重要舞…

红黑树的删除

文章目录 前言一.删除的节点左子树右子树都有二.删除的节点只有左/右子树删除调整操作 三.删除的节点没有孩子1.删除的节点为红色2.删除的节点为黑色1).兄弟节点为黑色(1).兄弟节点至少有一个红色的孩子节点LL型RR型RL型LR型 (2).兄弟节点没有孩子或所有孩子为黑色 2).兄弟节点…

vue3使用leaflet+trackplayer实现非地图动画轨迹(市场平面图动态轨迹)

vue3使用leaflettrackplayer实现非地图动画轨迹(市场平面图动态轨迹) 先下载 leaflet 和 leaflet-trackplayer两个主要库 leaflet官方文档 npm install leaflet npm install leaflet-trackplayer然后在页面中引用 html <template><button click"playMap&quo…

【时时三省】(C语言基础)指针进阶 例题7

山不在高&#xff0c;有仙则名。水不在深&#xff0c;有龙则灵。 ----CSDN 时时三省 二维数组 第一个a 因为它有12个元素 每个元素占4个字节 所以就打印48 第二个a&#xff3b;0&#xff3d;&#xff3b;0&#xff3d; 表示是第一行第一个元素 所…

滑动窗口算法—最小覆盖子串

题目 ”最小覆盖子串“问题&#xff0c;难度为Hard&#xff0c;题目如下&#xff1a; 给你两个字符串 S 和 T&#xff0c;请你在 S 中找到包含 T 中全部字母的最短子串。如果 S 中没有这样一个子串&#xff0c;则算法返回空串&#xff0c;如果存在这样一个子串&#xff0c;则可…

Codeforces practice C++ 2024/9/11 - 2024/9/13

D. Mathematical Problem Codeforces Round 954 (Div. 3) 原题链接&#xff1a;https://codeforces.com/contest/1986/problem/D 题目标签分类&#xff1a;brute force&#xff0c;dp&#xff0c;greedy&#xff0c;implementation&#xff0c;math&#xff0c;two pointers…

[数据集][目标检测]乱堆物料检测数据集VOC+YOLO格式1143张1类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;1143 标注数量(xml文件个数)&#xff1a;1143 标注数量(txt文件个数)&#xff1a;1143 标注…

Java高级Day41-反射入门

115.反射 反射机制 1.根据配置文件re.properties指定信息&#xff0c;创建Cat对象并调用hi方法 SuppressWarnings({"all"}) public class ReflectionQuestion {public static void main(String[] args) throws IOException {//根据配置文件 re.properties 指定信息…

交叉编译工具链的安装及带wiringPi库的交叉编译实现

交叉编译工具链的安装及带wiringPi库的交叉编译实现 交叉编译的概念交叉编译工具链的安装下载交叉编译工具链配置环境遍变量编译程序到ARM平台 带wiringPi库的交叉编译下载编译wiringPi库调用树莓派的wringPi库 交叉编译的概念 交叉编译是在一个平台上生成另一个平台上的可执行…

xshell密钥方式连接阿里云Linux

前提条件 有阿里云ECS linux实例安装好xshell工具 步骤 创建密钥对并绑定ECS实例 浏览器登录阿里云-->控制台-->ECS服务器-->网络与安全-->密钥对-->创建密钥对 根据提示填写密钥名称-->选中默认资源组-->创建 创建完成&#xff0c;会自动下载密钥对的…

WPF实现Hammer 3D入门学习

代码下载&#xff1a;https://download.csdn.net/download/bjhtgy/89748674

【Python】生成图片验证码

1. 首先安装第三方库PIL&#xff08;图像处理库&#xff09; pip install pillow 2. 编写生成验证码代码 这里字体 SimHei.ttf 文件要放在该文件目录下。 import random from PIL import Image, ImageDraw, ImageFont, ImageFilterdef check_code(width128, height30, char…

PowerShell install 一键部署Oracle21c-xe

Oracle21c-xe前言 无论您是开发人员、DBA、数据科学家、教育工作者,还是仅仅对数据库感兴趣,Oracle Database Express Edition (XE) 都是理想的入门方式。它是全球企业可依赖的强大的 Oracle Database,提供简单的下载、易于使用和功能齐全的体验。您可以在任何环境中使用该…

Redis:发布(pub)与订阅(sub)实战

前言 Redis发布订阅&#xff08;Pub/Sub&#xff09;是Redis提供的一种消息传递机制&#xff0c;它使用“发布者-订阅者”&#xff08;publisher-subscriber&#xff09;模式来处理消息传递。在这种模式下&#xff0c;发布者将消息发布到一组订阅者中&#xff0c;而无需关心谁…

基于MATLAB的图像融合设计

摘 要 图像融合能够将不同类型传感器获取的同一对象的图像数据进行空间配准。并且采用一定的算法将不同类型的传感器获取的同一对象的图像数据所含用的信息优势或互补性有机地结合起来产生的新的图像数据。这种新数据含有所研究对象的更多信息表征&#xff0c;与单一图像相对比…

learn C++ NO.13——list

前言 本文将从list的使用&#xff0c;再到根据sgi库对于list实现作为参考模拟实现一下list。通过模拟实现来增加对它的理解。 介绍list list是一个由带头双向循环链表实现的STL容器&#xff0c;它提供常规时间内对数据进行插入和删除操作。 list在内存中存储不连续的空间存储…