VoxelNeXt:用于3D检测和跟踪的纯稀疏体素网络

news2024/11/19 6:26:48

VoxelNeXt:Fully Sparse VoxelNet for 3D Object Detection and Tracking

目前自动驾驶场景的3D检测框架大多依赖于dense head,而3D点云数据本身是稀疏的,这无疑是一种低效和浪费计算量的做法。我们提出了一种纯稀疏的3D 检测框架 VoxelNeXt。该方法可以直接从sparse CNNs 的 backbone网络输出的预测 sparse voxel 特征来预测3D物体,无需借助转换成anchor, center, voting等中间状态的媒介。该方法在取得检测速度优势的同时,还能很好地帮助多目标跟踪。VoxelNeXt在nuScenes LIDAR 多目标跟踪榜单上排名第一。

1.概述

在本文中,我们提出了VoxelNeXt。这是一个简单、高效且无需后期处理的3D对象检测器。我们设计的核心是体素到对象方案,其根据体素特征直接预测3D对象一个强大的完全稀疏的卷积网络。关键的优点是我们的方法可以去掉锚代理,稀疏到密集转换、区域建议网络和其他复杂组件。

 由于我们的体素到对象方案避免了密集的特征图,所以网络可以高效推理。它只预测稀疏和必要的位置,如表1所示,与CenterPoint[57]相比。这种表示也使得VoxelNeXt可以很容易地扩展到使用离线跟踪器的3D跟踪。先前的工作[57]只跟踪预测的物体中心,这可能涉及对其位置的预测偏差。在VoxelNeXt中,查询体素(用于框预测的体素),也可以被跟踪以进行关联。

最近,FSD[16]利用了完全稀疏的框架。在VoteNet[37]的推动下,它投票支持对象中心,并采用迭代细化。由于3D稀疏数据通常分散在物体表面,因此这种投票过程不可避免地会引入偏差或误差。因此,需要诸如迭代群校正之类的细化来确保最终的准确性。该系统因其对客体中心的强烈信念而变得复杂。FSD[16]在大范围表现不错,但其效率不如我们的,如图所示。

 2.具体方法

如果不使用2D检测头,直接用voxel稀疏会有什么问题呢?

稀疏探测器[16,46,47]的方法避免了密集的探测头,而是引入了其他复杂的管道。RSN[47]对距离图像执行前景分割,然后检测剩余图像上的3D对象稀疏数据。SWFormer[46]提出了一种具有精细窗口分割和具有特征金字塔的多个头的稀疏变换器。受VoteNet[37]的启发,FSD[16]使用点聚类和组校正来解决中心特征缺失的问题

这些检测器进行稀疏预测,但以不同的方式使检测管道复杂化。在我们的工作中,这个中心缺失的问题也可以通过具有大感受野的稀疏网络简单地跳过。我们对常用的稀疏神经网络进行最小的调整,以实现完全稀疏的检测器。

稀疏神经网络因其效率而成为3D深度学习[10,11,23,41]中的大型骨干网络。人们普遍认为,它的表现能力对于预测是有限的。与所有这些解决方案相反,我们证明,在没有任何其他复杂设计的情况下,通过额外的下采样层可以简单地解决感受野瓶颈不足的问题

点云或体素分布不规则,通常分散在3D对象的表面,而不是中心或内部。这促使我们沿着一个新的方向进行研究,直接基于体素而不是手工制作的锚或中心来预测3D盒子。

2.1.稀疏CNN骨干网适配

具有足够感受野的强特征表示是确保对稀疏体素特征进行直接和正确预测的必要条件。尽管普通稀疏CNN骨干网络已被广泛用于3D对象检测器[12,41,57],但最近的工作表明了其弱点,并提出了各种方法来增强稀疏骨干,例如使用精心设计的卷积[7]、large kernels [8], and transformers [25, 26, 35]

与所有这些方法不同,我们尽可能少地进行修改来实现这一点,只使用额外的下采样层。默认情况下,简单稀疏的CNN骨干网络有4个阶段,其特征步长为{1,2,4,8}。我们将输出稀疏特征分别命名为{F1,F2,F3,F4}。此设置无法进行直接预测,尤其是对于大型对象。为了增强其能力,我们简单地包括两个额外的下采样层,以获得{F5,F6}的步长为{16,32}的特征。

这种微小的变化直接对扩大感受野产生了显著的影响。我们将最后三个阶段{F4,F5,F6}到Fc的稀疏特征进行组合。它们的空间分辨率都与F4对齐。对于阶段i,Fi是一组单独的特征fp。p∈Pi是三维空间中的一个位置,坐标为(xp,yp,zp)。该过程如图4所示。值得注意的是,这种简单的稀疏串联不需要其他参数化层。稀疏特征Fc和它们的位置Pc被获得为:

 

 图4 VoxelNeXt框架的详细结构。图中带圆圈的数字对应于第3.1节和第3.2节中的段落。1-额外向下取样。2-稀疏高度压缩。3-体素选择。4-框回归。为了简单起见,我们在这里省略了F1、F2和F3的生成。

在附加下采样层的情况下,有效感受野ERF更大,预测框更准确。它足够有效,并且几乎不需要额外的计算,如表2所示。因此,我们使用这种简单的设计作为骨干网络。

稀疏高度压缩
3D对象检测器通过将稀疏特征转换为密集特征,然后将深度(沿z轴)组合为通道维度,将3D体素特征压缩为密集的2D图。这些操作需要占用占用内存和计算。

在VoxelNet中,我们发现2D稀疏特征对于预测是有效的。VoxelNeXt中的高度压缩是完全稀疏的。我们只需将所有体素放在地面上,并在相同的位置对特征进行累加。它的成本不超过1毫秒。我们发现,对压缩的2D稀疏特征的预测成本低于使用3D稀疏特征的成本,如表5所示。压缩的稀疏特征F’c及其位置P’c如下所示:

 

 空间体素修剪
我们的网络完全基于体素。3D场景通常包含大量冗余的背景点,并且对预测几乎没有好处。我们沿着下采样层逐渐修剪不相关的体素。根据SPS Conv[32],我们抑制了具有小特征量值的体素的膨胀,如图6所示。

 

将抑制比设为0.5,我们仅对特征幅度|fp|(在通道维度上平均)位于所有体素的上半部分的体素进行扩张。体素修剪在很大程度上节省了计算,而不会影响性能,如表3所示。

 2.2. 稀疏检测头

体素选择
图4显示了VoxelNeXt模型的详细框架。我们不依赖于密集特征图M,而是直接基于3D CNN骨干网络V∈R的稀疏输出来预测对象 N×F。我们首先预测K类体素的分数,s∈R
N×K。在训练过程中,我们将离每个注释边界框中心最近的体素指定为正样本我们使用焦点损失[31]进行监督。我们注意到,在推理查询过程中,体素通常不在对象中心。它们甚至不一定在边界框内,例如图中的行人。我们在表7中统计了nuScenes验证集上查询体素的分布。

 

 在推理过程中,我们通过使用稀疏最大池来避免NMS后处理,因为特性足够稀疏。与子流形稀疏卷积[19]类似,它只对非空位置进行运算。这是基于预测的分数s,并针对每个类别单独进行。

我们采用稀疏最大池来选择具有空间局部最大值的体素。去除的体素将被排除在框预测中,这节省了头部的计算。

框回归
从正的或选定的稀疏体素特征v∈Rn×F直接回归边界框。根据CenterPoint[57]中的协议,我们回归位置(∆x,∆y)∈R2,高度h∈R,3D尺寸s∈R3,旋转角度(sin(α),cos(α))∈R2
对于nuScenes数据集或跟踪,我们通过任务定义回归速度v∈R2。这些预测是在训练期间在L1损失函数下监督的。对于Waymo数据集,我们还预测了IoU,并在IoU损失的情况下进行训练,以提高性能[22]。我们简单地使用核大小为3的全连通层或3×3子流形稀疏卷积层进行预测,而不需要其他复杂的设计。我们发现,3×3稀疏卷积比全连接层产生更好的结果,负担有限,如表6所示

 2.3 3D跟踪


 我们的框架自然扩展到了3D跟踪。CenterPoint[57]通过二维速度v∈R2跟踪预测的物体中心,该速度也受到L1损失的监督。我们将此设计扩展到VoxelNeXt中。我们的解决方案是使用体素关联来包括更多与查询体素位置匹配的轨迹。

如图8所示,我们记录了用于预测每个框的体素的位置。与中心关联类似,我们计算L2距离以进行匹配。通过将查询位置的索引回溯到原始输入体素而不是stride-8位置来选择查询位置。被跟踪的体素存在于输入数据中,其比预测的中心具有更小的偏差。此外,相邻帧之间的查询体素共享与框相似的相对位置。我们的经验表明,体素关联改善了表11中的跟踪。

 

 

 3.总结及实验结果

文章相对centerpoint 有较大提升,思想源于centerpoint,创新点在于直接使用真值中心最近对应的voxel作为有无目标的回归,而centerpont中还是基于2d特征的heatmap。跟踪时也使用原始查询voxel表现突出。具体指标如下:

 

 

 原论文:https://arxiv.org/pdf/2303.11301.pdf

 

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

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

相关文章

电脑断电后无法正常启动怎么办?

电脑断电后无法正常启动是一个很常见的问题,其实除断电外,电脑强制关机后无法正常启动也很常见,出现这个问题一般是由硬件导致,可能是内存、电源、主板、显卡、硬盘等硬件出现问题,尤其是一瞬间断电再来电,…

全网最牛最全面的接口自动化接口关联的三个层次

一、(接口查询的条件分析) 1.一般来说,在所有平台中,凡是往数据库里增加接口,必然有相应的查询接口和修改操作的接口 2.接口的后台服务除了要把数据返回给我们之外,还要把真正对数据的修改操作写入数据库…

linux系统学习

本文建立于Linux的课堂学习 文章目录 Linux基础1. Linux操作环境1.1 简述Linux文件类型有哪些1.2 简述Linux的文件访问权限1.3 简述shell的功能,常见的shell有几种1.4 列举几个常用的Shell环境变量以及用途 2. Linux Shell命令操作2.1 简述在Linux Shell中获取帮助…

数据结构总结6:八大排序

后续会有补充 排序 排序:按照某个或某些关键字的大小,递增或递减排列起来的操作。 稳定性:假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变&#xff0c…

如何完美卸载VS2015(2023年5月份实测有效)

使用控制面板卸载VS2015,出现正在配置您的系统,这可能需要一些时间,然后就出现卡住半个小时第二行的条都没有动的问题,这里提供vs2015以及以前版本的卸载方式 问题产生原因:他需要下载一些东西,然后由于你懂的网络原因…

基于yolov3训练自己的数据集

训练数据集的教学视频链接 42. 第六章:基于YOLO-V3训练自己的数据集与任务_哔哩哔哩_bilibili 数据打标签 下载labelme标注工具 通过pip install labelme下载,打开anaconda prompt,切换到下载labelme的环境(我的是pytorch&…

torch显存分析——如何在不关闭进程的情况下释放显存

torch显存分析——如何在不关闭进程的情况下释放显存 1. 基本概念——allocator和block2. torch.cuda的三大常用方法3. 可以释放的显存4. 无法释放的显存?5. 清理“显存钉子户” 一直以来,对于torch的显存管理,我都没有特别注意,只…

ffmpeg mkv 文件解析

一、mkv的文件组织 1. EBML基本单元 EBML组成mkv文件最基本的单元, 也是解析文件最小的一个粒度。EBML基本元素结构: ID:标志着这个EMBL 是一个什么类型的,类型决定了后面data中存储的是什么类型的数据如是int,string…

腾讯云备案限制条件说明(必看)

腾讯云网站备案要求首先你有一个需要备案的域名,域名实名认证信息和备案主体相同;在腾讯云有一台符合备案条件的云服务器、轻量应用服务器等云产品;然后根据备案主体所在省份地区,符合当地的通信管理局要求。下面腾讯云百科来详细…

Centos7系统常用命令

一、防火墙firewalld、sestatus 1 查看防火墙状态:systemctl status firewalld 2 关闭运行的防火墙:systemctl stop firewalld.service 开启运行的防火墙:systemctl start firewalld.service 3 禁止防火墙服务器:systemctl di…

如何一行代码实现 OpenAI 可观测,大幅提升使用体验

作者|观测云 徐季秋 现在基于 OpenAI 的 Chat 应用井喷,但给开发者带来了两个难点,一是因为 OpenAI 基于 tokens 的计费机制导致不容易规划消费;另一是 OpenAI 提供的调用本身不稳定,很难分辨是传参错误或是访问失败。…

flume 进阶 Ganglia 部署(十二)

规划安装 hadoop100: web gmetad gmod epel-release hadoop101: gmod epel-release hadoop102: gmod epel-release 安装 三台都安装 sudo yum -y install epel-releasesudo yum -y install ganglia-gmond在hadoop100安装 sudo yum -y install ganglia-gmetadsudo yum -y i…

RT-Thread 2. GD32在 RT-Thread Nano上添加控制台与 FinSH

本篇文档分为两部分: 第一部分是添加 UART 控制台(实现打印):用来向控制台对接的终端输出打印信息;该部分只需要实现两个函数,串口初始化和系统输出函数,即可完成 UART 控制台打印功能。 第二部…

sonarqube上的webAPI如何调用?-暴躁了一天调通了

首先吐槽一句,官方API文档给了个寂寞,调不通啊,然后查各种搞了一天,竟然没有一篇文章能把这件事写清楚,给我暴躁的。 结论竟然是原来是我不会调用接口。。。我今天非要把这篇文章写好。 web接口入口 通过sonarqube下…

QT开发实战-动态壁纸软件

动态壁纸软件开发 项目源代码在下面链接获取: ----------------------------- 开发者:CodeSharkSJ 希望此项目能加强你对Qt的应用 文章目录 项目图与开发环境核心技术原理自定义窗口程序UI布局背景绘制样式表基本实现QWebEngineQMedia使用系统托盘隐藏记忆功能应用程序打包 …

四年巨亏49亿,第四范式四闯IPO

深陷亏损的AI公司第四范式,四闯IPO! 4月24日,决策类AI独角兽北京第四范式智能技术股份有限公司(下称“第四范式”)再次更新招股书,继续向港交所发起上市冲击。 第四范式是一家专注于提供以平台为中心的人…

(9) 线性回归

文章目录 1 多元线性回归LinearRegression1.1 基本原理1.2 linear_model.LinearRegression 2 回归类的模型评估指标2.1 是否预测了正确的数值2.2 是否拟合了足够的信息 3 岭回归与Lasso回归3.1 多重共线性3.2 岭回归3.2.1 linear_model.Ridge3.2.2 选取最佳的正则化参数 α \al…

车载以太网-FlexRay

摘要: 到底什么是FlexRay? 1. FlexRay是什么? 那么到底什么是FlexRay?往简单了说,就是CAN总线加LIN总线混合起来排个课程表、提个速再加个冗余。像LIN一样基于TDMA,提高了协议的复杂度,拥有静态…

【linux】挖矿病毒nanominer伪装成python占用服务器GPU的查杀记录

病毒表现 gpustat -cpu 可以看到root用户将GPU的核心跑满了每个占用都是100%,显存吃了6G多。 nvidia-smi 不能正常显示GPU被哪些进程占用 ![在这里插入图片描述](https://img-blog.csdnimg.cn/780f90080a084a44ac59227e384f985b.png 病毒文件分析 在/tmp/.x/…

win10 vmware虚拟机蓝屏怎么办 win10 vmware虚拟机蓝屏解决方法【详解】

最近有朋友出现win10 vmware虚拟机蓝屏的情况应该怎么办?小伙伴们在使用vmware虚拟机出现了蓝屏现象的小伙伴们不用担心,小编翻阅各种资料后给大家带来两种虚拟机蓝屏的解决方法,想要解决此问题的小伙伴们快跟着小编往下看吧! win…