前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >前车要干吗?对前车微小运动的行为研究

前车要干吗?对前车微小运动的行为研究

作者头像
一点人工一点智能
发布2024-05-29 14:39:11
780
发布2024-05-29 14:39:11
举报

论文:Instantaneous Perception of Moving Objects in 3D

作者:Di Liu, Bingbing Zhuang, Dimitris N. Metaxas, Manmohan Chandraker

收录:CVPR2024

论文地址:https://arxiv.org/abs/2405.02781

编辑:东岸因为@一点人工一点智能

摘要:

这篇论文探讨了三维空间中移动物体瞬间感知的问题。作者指出,虽然现有的研究主要关注于一般的大型运动,但对物体瞬间微小运动的检测和量化同样重要,因为它可能预示着驾驶行为中的细微变化,这些变化可能对交通安全至关重要。例如,停车车辆开始移动或前行车辆突然停下并倒车等行为。

论文提出了一种方法,利用局部占位补全来增加点云的形状线索密度,从而减轻所谓的“泳动现象(swimming effect)”,这种效应会与真实物体的运动交织在一起,导致估计不准确。

作者通过实验证明了他们方法的有效性,特别是在处理微小运动方面,与传统的3D运动估计方法相比具有优势。此外,他们还精心设计了一个基准测试,用以评估这一未被充分研究的任务。

引言

在所处环境中,对邻近移动物体周围的3D运动感知对于驾驶安全至关重要。虽然现有的工作主要关注一般的大运动,但我们认为,瞬时检测和量化微小运动同样重要,因为它们可以指示驾驶行为的细微变化,这可能对安全至关重要,例如停车位附近的车辆行为。我们对这个未充分探索的任务进行了深入研究,考察了其独特的挑战,并开发了解决方案,同时精心设计了一个基准测试。

具体来说,由于稀疏激光雷达点云帧之间的缺乏对应,静态物体可能看起来像是在移动——所谓的“泳动现象”。这与真正的物体运动交织在一起,从而会产生模糊和不准确的估计,特别是在微小运动的情况下。

为了解决这个问题,我们的框架建议利用局部占用完成目标物体点云来密集化形状线索,并减轻泳动现象的影响。与移动物体检测和它们运动估计一起,占用完成在端到端的方式中一起学习。我们还将我们的见解转化为在专门针对微小运动的新评估基准测试中的有利性能。

总的来说,我们的贡献包括:

· 引入检测和估计车辆微小运动的任务,以及它们的实际意义和挑战。

· 设计一个框架,利用占用完成来减轻微小运动估计的“泳动现象”。

· 将我们的见解转化为在新的评估基准测试中的有利性能,该基准测试专门针对微小运动。

方法

2.1 问题定义和挑战

我们的目标是利用连续的点云来识别移动对象并估计它们的速度。微小运动的检测和估计面临挑战,主要源于激光雷达点云的稀疏性。激光雷达传感器只能捕获周围场景的稀疏点集,且这些点云的分布取决于激光雷达与场景元素的相对位置。因此,在短时间内,激光雷达的多个帧通常只能观察到物体表面的一小部分。

由于没有跨帧的精确点对应,静态场景元素看起来也可能像是在移动,这就是所谓的“泳动现象”[21]。这种效应与真正的物体运动交织在一起,使得微小运动难以准确表征,尤其是要区分真运动与泳动现象。

2.2 我们的框架

图2概述了S'More的框架。给定连续的激光雷达帧,我们首先通过过滤掉背景和具有大运动的物体识别出感兴趣的对象。然后对每个对象点云进行体素化,通过编码器-解码器网络提取特征,并进行占用补全。输出结果输入到运动检测器和运动流预测器中,用于最终的运动检测和估计。

2.2.1 占用补全

由于激光雷达点云的稀疏性,我们首先学习占用补全,密集化物体表面的形状线索,从而减轻泳动现象的影响。占用补全利用附近帧的信息来密集化局部占用网格,如图2所示。对于每个帧

,我们将其余T-1帧中的所有激光雷达点通过已知物体运动(已从观测中分离出本体运动)变换到

帧,并标记对应的体素为占用,即值为1。我们还标记视线方向上的点为空,即值为0。其他体素标记为未知。我们使用快速体素遍历算法[2]实现这一步骤。

2.2.2 网络架构和损失

我们使用编码器-解码器网络进行占用网格预测和静态/移动对象分类,并进一步用于运动检测器和运动流预测器。运动检测器将输入对象分类为静态或移动,而运动流预测器对每个占用的体素进行运动向量的回归。我们使用编码器-解码器结构,包括简单的卷积层和跳跃连接,如图6所示。

总体损失函数由占用损失、运动损失、尺度相关的运动流预测损失、相对流损失和角度损失加权组合而成。具体而言,我们为占用网格预测使用二元交叉熵损失,为静态/移动对象分类使用二元交叉熵损失,为运动流预测使用尺度相关的损失,为运动方向预测使用角度损失。

Overall Losses:

Occupancy Loss:

Relative flow loss:

Augular loss :

2.2.3 训练和推理

我们使用在Waymo开放数据集[46]上提取的微小运动数据进行训练。我们收集每个对象连续5帧的点云,共收集约140k个训练样本和9k个测试样本。我们使用标准F1分数来评估静态/移动对象分类的准确性,使用端点误差(EPE)和角度误差来评估运动流误差。

我们使用Adam优化器进行训练,学习率为0.001,动量为0.9。我们在每个对象上单独处理点云,但整体上运行速度可达每秒27帧,适用于包含30个感兴趣对象的场景。

在推理时,我们使用S'More的占用补全模块来增强点云,然后输入到运动检测器和运动流预测器中进行最终的运动检测和估计。

实验

3.1 S'More的评估

评估基准。由于没有专门针对微小运动的现有基准测试,我们从Waymo开源数据集中提取微小运动,利用其现有的注释。我们收集每个对象连续5帧的点云,共收集约140k个训练样本和9k个测试样本。我们使用标准F1分数来评估静态/移动对象分类的准确性,使用端点误差(EPE)和角度误差来评估运动流误差。

比较方法。在缺乏专门针对微小运动的检测方法的情况下,我们主要与经典迭代最近点(ICP)方法、点-平面ICP、广义ICP、Fast NSF和CenterPoint进行比较。

结果。表1显示了定量评估结果,表明我们的模型与所有基线相比在微小运动估计方面具有显著优势,尤其是在局部注册方面。

3.2 占用补全的影响

为了调查占用补全的影响,我们将占用模块从S'More中移除,并与仅将占用补全作为辅助任务的设置进行比较。我们报告了准确度,如图6(e)(f)所示,表明占用补全对良好性能有显著影响。我们将其归因于它在有效增强物体表面方面的作用。如图6(d)所示,我们提供了点云注册的可视化,以评估估计的运动,进一步支持占用补全的有效性。占用补全本身的定性结果如图7所示。

3.3 大运动下的表现

尽管我们的重点是微小运动,但研究其在较大运动下的表现也很重要。为此,我们训练了一个包括大运动数据的S'More模型,并在仅在大运动(fm in>0.2m)的 regime下进行评估。如表3所示,S'More和CenterPoint都实现了接近完美的检测精度(F1→1.0),正如预期的那样,由于大信号-噪声比。这种完美性支持我们的重点是增强微小运动,以提高实际系统的性能。我们还注意到,作为检测跟踪方法,CenterPoint在精度上更胜一筹,因为其准确性很大程度上取决于3D框定位,而不是运动。

3.4 与延迟相关的评估

由于重点是即时检测,一个时间敏感的任务,评估与时间相关的指标也很有帮助。我们原始的任务是在不超过0.5s的延迟内检测移动对象。在这里,我们增加

以针对更大的运动,这实际上允许如果假设恒定速度,则相应地增加延迟,从而减少对延迟的要求。我们在表5中报告了不同延迟下的检测精度(F1),表明S'More的性能一致优于其他方法。

3.5 重要设计选择

网格大小。我们研究了占用网格大小的影响,并发现它在我们的设计中很重要。我们比较了两个网格大小:平衡的100×100×100网格和另一个500×500×4网格,后者在z轴分辨率上显著降低。结果如图9(a)所示,当z轴分辨率降低时,性能明显下降(两条虚线始终低于实线)。这还可能导致由于模型在区分细微垂直变化方面的能力降低而引起的检测歧义。

结论

综上所述,本论文定义了检测车辆微小运动的问题,提出了其实际意义。为减轻微小运动感知中的泳动现象,我们利用占用补全作为有效策略来促进运动学习。尽管整体性能良好,但我们的方法在极端稀疏或高度遮挡的目标下面临挑战。我们目前也只处理了车辆而不处理行人和骑行者。我们希望这项工作和其局限性能够激发对这个重要但未充分探索问题的更多研究。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-05-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 一点人工一点智能 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
腾讯云服务器利旧
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档