Abstract
实时4D动态场景重建仍然是自动驾驶感知的一个重要挑战。大多数现有方法依赖于通过自监督或多模态传感器融合进行深度估计。在本文中,我们提出了一种基于DUSt3R框架的Driv3R方法,可以直接从多视图图像序列中回归每帧点云图。为了实现流式密集重建,我们维护了一个内存池,用以推断传感器之间的空间关系以及动态时间上下文,从而增强多视图的3D一致性和时间整合。此外,我们采用了4D流预测器来识别场景中的移动物体,以便引导网络更加关注这些动态区域的重建。最后,我们以一种无需优化的方式,将所有每帧点云图一致地对齐到世界坐标系。我们在大规模nuScenes数据集上进行了广泛实验,评估了该方法的有效性。Driv3R在4D动态场景重建方面优于以前的框架,并在不需要全局对齐的情况下实现了15倍的推理速度提升。
代码获取:https://github.com/Barrybarry-Smith/Driv3R
Introduction
实时且精确的动态场景密集重建是自动驾驶和机器人感知领域的一项重要挑战。与融合多模态传感器(如摄像头、激光雷达和雷达)相比,仅依赖于多视图摄像头是一种更具计算效率且成本更低的解决方案。然而,在没有3D真实监督的情况下,如何实现准确的深度估计以及动态物体的精确表示,为这一任务带来了显著挑战。
为了应对自动驾驶中的动态大规模场景重建挑战,研究者提出了多种高效的3D表示方法,包括通过多视图摄像头进行场景重建,支持下游任务如新视图合成、深度估计和姿态预测。早期的研究通过隐式神经辐射场(NeRF)进行3D表示,并通过后续研究提升了效率、性能和泛化能力。近年来,基于光栅化渲染器的显式3D高斯表示在性能和效率上取得了显著进展。
为更准确地建模动态物体和场景,研究者结合了物体跟踪、光流和运动编码等策略,扩展了3D表示以支持动态4D重建。尽管在高效3D表示方面取得了进展,精确且密集的点云在自动驾驶背景下仍然至关重要。为此,DUSt3R提出通过图像直接回归像素对齐的点云表示和置信图,MonST3R进一步扩展了DUSt3R的表示以支持动态场景。然而,MonST3R依赖计算密集的全局对齐过程,限制了其在动态大规模场景中的效率。为解决此问题,Spann3R引入了空间内存池,通过更新特征实现增量3D重建,但其仍无法有效处理时间信息的融合,限制了动态场景的建模能力。
为了解决这些问题,我们提出了Driv3R模型,用于在无需全局对齐优化的情况下,重建全球世界坐标系中的大规模动态自动驾驶场景。具体而言,我们维护了一个内存池,用于推断多视图序列中的时间关系和空间上下文。此外,为了从输入图像中准确捕获动态物体,我们采用了轻量级的RAFT模型,并通过4D流预测器中的分割细化进行优化。在生成了流预测器的移动物体掩码后,我们采用预训练的R3D3模型的点云预测作为监督,指导我们的模型更专注于这些动态区域以实现准确的4D重建。通过确保时空内存池中不同视点之间的信息交互,我们实现了无需优化即可将每帧点云图对齐到世界坐标系,最终重建了完整的大规模4D动态自动驾驶场景。我们在大规模nuScenes数据集上进行了广泛的深度估计和场景重建实验,Driv3R在动态大规模场景的4D重建中,性能优于所有现有方法,推理速度相比依赖全局对齐优化的方法提升了15倍。
3.Method
3.1. 问题表述
给定来自RGB相机的多视图图像 ,及对应的相机位姿(每个时间戳),我们提出的Driv3R旨在学习全球世界坐标系下的4D密集像素点云表示。
我们的Driv3R包含三个阶段,支持端到端训练。首先,我们受Spann3R的启发,构建了一个用于时空信息交互的内存池。然后,我们引入了4D流预测器,用于识别场景中的动态物体,在训练过程中引导网络更专注于这些区域的重建。最后,我们使用多视图对齐器将所有点云图注册到一致的世界坐标系中,且无需优化。通过利用预训练的R3D3模型的深度推理作为监督,Driv3R能够实现一致的4D密集点云重建,并在动态场景中精确建模移动物体。
3.2. 时空内存池
Spann3R 以多视图图像作为输入,并管理一个外部空间内存,以在一致的坐标系中预测每张图像的点云图。受此启发,我们维护了一个时空内存池,用于在多视图输入序列中推断时间关系和空间上下文。具体而言,给定来自输入序列中不同传感器和时间戳的帧,记为 和 ,首先通过ViT 对两个图像进行编码,生成特征图。随后,我们通过从时空内存池中提取记忆更新(如公式1所示),从而使编码的特征能够充分与先前时间戳和视点获取的信息进行交互。
其中,分别表示当前帧的查询、来自内存池的键和值。随后,通过两个互联解码器对特征对进行解码。由目标解码器解码的特征用于生成下一步的查询,而由参考解码器解码的特征则用于内存编码以及每帧点云图和置信图的回归(如公式2所示)。
与Spann3R相比,我们的架构能够高效处理空间和时间信息的存储、管理和交互。具体来说,我们为每个传感器维护一个独立的内存池,每对键值对都标记有相应的时间戳。在内存池更新期间,根据与现有内存键的余弦相似性,将新键添加到相关的传感器池中,从而使我们能够在使用内存池更新由ViT生成的特征时,识别出与当前帧具有最接近空间和时间关系的键值对(如图3所示)。通过仅对相关键值对执行交叉注意力机制,我们有效减少了不必要的计算开销,并将来自不相关帧的干扰降至最低。
3.3. 4D流预测器
为了增强Driv3R模型对输入场景中动态物体的重建能力,我们设计了基于RAFT 模型的4D流预测器。给定来自单个传感器的图像序列 及在第3.3节中获得的相应点云图 ,我们首先生成一组图像对 ,其中包含时间上相邻的帧。然后,我们使用预训练的RAFT模型预测每对图像的流图 。为了进一步捕捉物体的4D运动,我们在点云图上应用交叉投影,以获取由传感器运动引起的流图(如公式3所示)。因此,通过简单地对所有帧对的相应掩码进行平均,我们得出了每帧的粗动态掩码 。
接下来,我们结合预训练的SAM2 模型进行分割,以进一步优化粗动态掩码。具体来说,对于第t帧的每个掩码,我们首先对 进行二值化,并将每个连通的掩码区域与原始图像一起输入SAM2,利用分割输出增强二值化的粗掩码。这有助于填补初始掩码中缺失的部分,从而确保对动态物体的全面覆盖。最终,我们获得了优化后的动态物体掩码。4D流预测器的整体过程可表示为:
其中,PoseEstimate(·) 表示通过给定点云图估计相机外参和内参(如DUSt3R中所述)。S(⋅)和 B(⋅)分别表示SAM2增强和二值化操作。
3.4. 多视图对齐器
在从多视图输入序列回归每帧点云预测之后,多传感器的点云图(表示为)最初是在各自的坐标系中表示的。因此,我们使用一个多视图对齐器以无需优化的方式将这些点云图对齐到全球世界坐标系中。具体来说,我们首先通过对输入序列中每帧进行姿态估计获得相机参数,以便将预测的点云图投影为每帧深度图。因此,使用真实相机参数,每个深度图可以反投影到全球世界坐标系中的点(如公式5所示)。由于所有的每帧点云图都是从充分捕捉内存池中时空信息的特征中解码而来,这种简单的姿态变换能够确保点云在时间和空间上的一致性。最终,我们从多传感器输入中在真实世界坐标系内获得每帧的密集点云图 ,而无需任何额外的对齐:
3.5. Driv3R的训练
损失函数。由于自动驾驶中通过LiDAR获得的点云稀疏性,我们使用预训练的R3D3模型的密集深度估计结果作为监督。在热身训练步骤后,我们只监督与动态物体对齐的点,这些动态物体由第3.3节中的4D流预测器识别,用以计算基于置信度的损失(如公式6所示)。根据DUSt3R的做法,预测的点云图和来自R3D3预测的“真实值”点云图都通过平均距离进行归一化。此外,我们还添加了一个尺度损失,以鼓励预测的点云图的尺度小于来自预训练R3D3模型的预测结果。
两阶段训练。我们的Driv3R模型通过两阶段训练来解决训练内存的限制。在第一阶段,输入序列仅包含来自单一传感器的图像,这意味着内存池仅用于时间信息的交互。在第二阶段,输入序列由来自不同传感器和时间戳的图像组成,并且具有重叠的视场,这使得内存池可以进一步推理空间关系,并确保输出的点云图在空间上一致。最后,我们采用无需优化的多视图对齐器来制定全球世界坐标系中的完整4D密集点云预测。
4.Experiment
结果与分析
深度估计。表1显示,与多视图深度估计框架和直接回归每帧点图的方法相比,我们的Driv3R在nuScenes数据集上取得了具有竞争力的结果。值得注意的是,图4中的视觉结果表明,Spann3R 中引入的空间记忆池无法完全捕捉输入序列中的时间关系,因此会在快速移动的动态物体重建区域造成显著模糊。此外,尽管MonST3R在某些场景下可以实现更精细的深度估计,但其全局对齐过程计算开销大且对动态掩码的准确性高度敏感。相比之下,Driv3R利用了Spann3R在静态重建方面的优势以及R3D3在动态物体深度估计方面的优势,因此在4D动态重建方面更加高效和稳健。
动态物体和场景重建。为了突出Driv3R准确重建动态场景的能力,我们从nuScenes验证集中抽取了3,508个输入序列,其中包含较多的动态物体,这些物体由4D流预测器识别。如表2所示,Driv3R在nuScenes动态子集上的重建和深度估计方面超越了所有现有方法。值得注意的是,我们的模型在动态场景重建上的结果甚至略优于MonST3R,后者需要全局对齐和流优化,而我们的模型在没有优化的情况下以更高效的推理速度进行推理。可视化结果进一步表明,由Spann3R预测的快速移动物体的点云通常会受到不完整、模糊和不准确的影响。相比之下,由于与记忆池的时间交互和4D流预测器提供的动态掩码引导,Driv3R能够更准确地重建快速移动物体的动态区域。此外,图5中所示的通过无需优化的多视图对齐器生成的4D全局点云保持了强烈的3D一致性,因为来自不同视点的编码特征可以在记忆池中共享空间信息。由于Driv3R的点图仍然包含边缘上的漂浮点,我们只保留高置信度的区域,并通过无需优化的多视图对齐器将其对齐到全球坐标系统中进行可视化。
效率分析。表3显示,我们的Driv3R在推理效率方面显著超越了需要全局对齐优化的DUSt3R和MonST3R。此外,Driv3R相比依赖单目深度预测或多视图融合进行场景重建的方法,也取得了更好的效率。尽管我们的模型由于额外的内存存储而消耗更多的推理内存,但其效率与Spann3R相当,在Spann3R中,我们仅通过合并来自不同传感器的点图来制定4D表示。然而,Driv3R进一步通过准确识别和建模4D流预测器中的动态物体,并通过与时间-空间记忆池的交互确保时间和空间一致性,从而在动态场景的4D重建中实现了卓越的性能。
模块消融实验。如表4所示,尽管在时间戳之间进行的时间交互相较于使用直接的DUSt3R编码-解码架构改善了重建质量,但引入不同视点之间的空间交互(如图2所示)进一步提升了模型性能。此外,4D流预测器生成的动态掩码缓解了R3D3 [35]模型预测不准确的影响。这使得Driv3R能够利用DUSt3R [43]在静态场景中的强大3D先验,以及R3D3多视图估计中预测的动态物体表示,从而显著提升了动态4D重建的性能。
结论
本文的贡献如下:
(1)提出了Driv3R模型,这是一个能够在不依赖全局对齐优化的情况下,在全局世界坐标系中重建大规模动态自动驾驶场景的模型。它通过维护一个记忆池来处理多视图序列中的时间关系和空间上下文。
(2)动态对象捕捉与4D流预测:为了从输入图像中准确捕捉动态对象,Driv3R模型采用了轻量级的RAFT模型,并在4D流预测器中进行分割细化。利用流预测器生成的移动对象掩码,模型进一步采用预训练的R3D3模型的点云预测作为指导,以更精确地关注动态区域,实现准确的4D重建。
(3)多视图3D一致性与优化自由对齐:通过在时间-空间记忆池中不同视点之间的信息交互,Driv3R模型确保了多视图3D一致性。这种交互使得每帧的点图能够在无需优化的情况下对齐到世界坐标系,从而实现大规模4D动态自动驾驶场景的完整重建。
(4)在大规模nuScenes数据集上进行的深度估计和场景重建实验中,Driv3R模型达到了与最先进的多视图深度估计框架相当的成果。此外,在动态大规模场景的4D重建方面,Driv3R的方法在推理速度上比依赖全局对齐优化的方法快15倍,显示出显著的性能优势。
文章引用:Driv3R: Learning Dense 4D Reconstruction for Autonomous Driving
最后别忘了,帮忙点“在看”。
您的点赞,在看,是我创作的动力。
AiFighing是全网第一且唯一以代码、项目的形式讲解自动驾驶感知方向的关键技术。
长按扫描下面二维码,加入知识星球。