写在前面&笔者的个人理解
以视觉信息作为输入的3D占用预测任务最近因其在自动驾驶中的关键应用而受到来自工业界和学术界的广泛关注。3D占用预测任务旨在根据视觉输入估计 3D 环境中每个体素的占用状态和语义标签。该任务提供了更细粒度的场景语义和结构描述,这对于开发安全且强大的自动驾驶系统非常重要。
利用时间输入对于 3D 占用预测非常重要,因为它为理解场景演变提供了足够的历史上下文信息。大多数现有方法遵循传统的感知、转换和融合流程,给定顺序输入信息,感知模块独立获得每个帧的场景表示,例如BEV特征以及体素特征。然后,转换模块根据自车轨迹对齐多帧的时序特征信息,融合模块融合对齐的特征表示以推断当前的 3D 占用情况。
然而,这些方法未能考虑驾驶场景演变的固有连续性和简单性。相邻帧中的驾驶场景表示应该彼此紧密相关,因为场景演变通常仅源于自车和其他动态物体的运动。直接融合多帧表征会忽略 3D 场景演化提供的这种强先验信息,即静态物体连贯性和动态物体运动,这使得模型很难理解驾驶场景的发展。此外,这种设计增加了时间建模的复杂性和计算工作量,从而降低了其效率和有效性。
考虑到上述提到的相关问题,在本文中,我们探索基于世界模型的范式以利用场景演变进行感知,该算法称为GaussianWorld。GaussianWorld采用显式 3D 高斯作为场景表示,而不是传统的隐式 BEV/Voxel 表示,这可以实现物体运动的显式和连续建模。给定历史 3D 高斯和当前视觉输入,GaussianWorld算法模型旨在预测场景如何演变并预测当前的占用情况。
为了证明提出的GaussianWorld算法模型的有效性,我们在流行的nuScenes数据集上进行了大量实验。如下图所示,我们的 GaussianWorld 可以有效地预测场景演变,并在不引入额外计算的情况下将单帧占用率预测提高 2% 以上(mIoU)。
论文链接:https://arxiv.org/pdf/2412.10373
网络模型结构&技术细节
World Models for Perception
精确感知 3D 场景对于开发可靠的自动驾驶系统至关重要。它旨在预测 3D 场景的几何形状和语义,以支持后续的预测和规划任务。感知模型利用前帧和当前帧的传感器输入来获得感知结果。
感知任务中的时间建模的传统流程包括三个阶段,分别是感知、转换和融合。感知模块首先独立提取每一帧的场景表示。随着自车的前进,跨帧的自车表示会错位。转换模块通过根据自我轨迹将过去的特征与当前帧对齐来解决此问题。然后,融合模块整合对齐的多帧表示以供感知进行使用。传统的流程可以表述为如下的公式形式。
尽管该框架的性能取得了较为不错的成绩,但它未能考虑驾驶场景固有的连续性和简单性。驾驶场景的演变通常仅源于自车和其他动态物体的运动。相邻帧中的驾驶场景表征本质上是相关的,包含了世界的演化动力学和物理定律。然而,直接融合多帧表征会忽略这种强先验信息,从而限制其性能。
受此启发,我们探索了一种基于世界模型的范式,以利用场景演化进行感知。世界模型通过学习简单但有效的时间建模先验来增强感知。我们使用感知世界模型根据先前的表示和当前的传感器输入预测当前的表示,具体的表现形式如下
我们进一步将 3D 感知任务重新表述为以当前传感器输入为条件的 4D 预测问题,其表述形式如下
通过获得预测的场景表征和下一个观察值后,我们可以将它们输入到世界模型中,以流式方式预测下一个表征。世界模型根据场景演变和当前观察值学习场景表征的联合分布,最终用于实现感知。
Explicit Scene Evolution Modeling
驾驶场景的演化一般简单且连续,主要由动态物体的运动引起。当在一定范围内采用以自车为中心的场景表示时,场景演化通常可以分解为三个关键因素:静态场景的自我运动对齐,动态物体的局部运动,新观察区域的补全。通过对这些因素进行建模,世界模型可以学会有效地演化场景,如下图所示。
考虑到上述场景演化的分解,我们采用 3D 高斯作为场景表示,以明确和连续地对场景演化进行建模。我们用一组稀疏的 3D 语义高斯来描述 3D 场景,其中每个高斯代表一个具有明确位置、比例、旋转和语义概率的灵活区域。为了学习场景演化,我们引入了一个额外的时间特征属性来捕获 3D 高斯的历史信息。3D 高斯表示可以表述为如下的公式形式。
我们进一步提出了一个 3D 高斯世界模型,GaussianWorld,以利用场景演化进行感知。提出的 GaussianWorld 对之前的 3D 高斯和当前的传感器输入进行操作,以预测当前的 3D 高斯。
接下来,我们将介绍 GaussianWorld 如何在三维高斯空间中对上述场景演化的分解因素进行建模。
(1)Ego Motion Alignment of Static Scenes.
GaussianWorld 的目标是基于之前的高斯结果预测当前的3D高斯,每帧的 3D 高斯表示代表以相应帧的自车位置为中心的一定范围内的场景,向前移动会导致物体的全局位移。GaussianWorld 通过使用对齐模块来对齐从上一帧到当前帧的 3D 高斯位置来解决此问题。为了实现这一点,它基于自车轨迹对整个场景的 3D 高斯进行全局仿射变换。形式上来看,给定最后一帧 3D 高斯和仿射变换矩阵,对齐的 3D 高斯可以表示为如下的公式形式。
(2)Local Movements of Dynamic Objects
我们还考虑了场景演变过程中动态物体的局部运动。GaussianWorld 通过更新动态高斯函数的位置来实现这一点。对齐的 3D 高斯函数根据其语义概率分为两个互斥集,分别是动态高斯集合和静态高斯集合。然后,GaussianWorld 使用运动层来学习对齐的 3D 高斯的联合分布和当前观察结果,以预测动态高斯的运动。
(3)Completion of Newly-Observed Areas
当自车移动到新位置时,某些现有区域会超出边界,而一些新区域则变得可观察。我们丢弃超出边界的高斯函数,并使用随机初始化的高斯函数补全新观察到的区域。为了保持一致数量的 3D 高斯函数,我们在新观察到的区域中均匀采样等量的 3D 高斯函数。随后,GaussianWorld 使用感知层根据当前观察预测新观察区域中已补全的 3D 高斯分布的所有属性。
3D Gaussian World Model
接下来,我们介绍一下本文提出的GaussianWord的整体框架。从前一帧的 3D 高斯开始,我们首先应用对齐模块来获取当前帧的对齐 3D 高斯。在新观察到的区域中,我们采样额外的 3D 高斯并将其当前帧的3D高斯进行混合,从而一起描述整个场景。
我们基于当前传感器的输入数据,使用运动层和感知层来更新对齐的3D高斯以及最新观察到区域的3D高斯。值得注意的是,这两层共享相同的模型架构和参数,即编码器模块和细化模块,从而允许它们集成到统一的演化层中并并行计算。这种设计确保GaussianWorld 保持模型简单性和计算效率。我们堆叠多个演化层以迭代地细化 3D 高斯函数,使模型具有足够的能力来学习场景演化
此外,为了解决 3D 高斯表示与现实世界之间的潜在不一致问题,我们加入了另外的细化层来微调 3D 高斯的所有属性
演化层和感知层之间的唯一区别在于历史高斯的哪些属性被调整。这种调整可以合并到统一的细化块中,如下图所示。因此,两个层都可以集成到统一的高斯世界层中。
我们采用交叉熵损失和 lovaszsoftmax损失进行训练,首先在单帧任务上对我们的模型进行预训练。然后我们使用流式训练策略对模型进行微调,其中每个场景的图像按顺序输入到模型中。在每次训练迭代期间,将当前帧图像与上一帧中预测的 3D 高斯相结合输入到模型中进行 3D 占用预测。当前帧中预测的 3D 高斯将传递到下一次迭代进行连续流式训练。在流式训练的早期阶段,模型还不能熟练地预测场景的演变,导致流式预测误差很大。为了增强训练稳定性,我们从短序列开始训练,并在整个训练过程中逐渐增加序列长度。我们使用概率建模,并在每次迭代中以的概率随机丢弃前一帧的 3D 高斯表示。随着训练的进展,我们逐渐降低的值,使模型能够适应预测更长的序列。
实验结果&评价指标
我们对 nuScnene 验证集上以视觉为中心的 3D 语义占用预测方法与其他最先进方法进行了全面比较,并使用 SurroundOcc 的占用标签,相关的实验结果如下表所示。
对于 GaussianWorld 的第一个训练阶段,我们在单帧设置中复现了 GaussianFormer,记为 GaussianFormer-B。仅使用 25600 个高斯函数,它就实现了与当前最先进的方法相当的性能。由于此基准上缺乏时序建模方法,我们引入了 GaussianFormer 的时序融合变体以进行公平比较,记为 GaussianFormer-T。经过第二阶段的训练,我们的 GaussianWorld 的表现远胜于所有单帧模型和基于时序融合的 GaussianFormer。与单帧模型 GaussianFormer-B 相比,它的语义 mIoU 提高了 2.4%,几何 IoU 提高了 2.7%。此外,GaussianWorld 的表现也优于时间融合模型 GaussianFormer-T,mIoU 增加了 1.7%,IoU 增加了 2.0%。这些结果凸显了我们基于世界模型的感知框架优于传统的时序融合方法。相关的可视化结果如下图所示。
我们对基于 GaussianFormer 的不同时序建模方法的性能和效率进行了比较。我们探索了两种实现 GaussianFormer-T 的方法,分别在 3D 高斯空间和透视视图空间中进行时序融合。对于前者,我们独立提取每帧的 3D 高斯表示,并利用 4D 稀疏卷积来促进跨帧 3D 高斯之间的时序交互。对于后者,我们独立提取每帧的多尺度图像特征,并采用可变形注意机制来实现当前帧的 3D 高斯和来自不同帧的图像特征之间的交互。相关的实验结果指标如下所示。
我们的 GaussianWorld 远远超越了所有其他时序建模方法,并且显著降低了延迟和内存消耗。值得注意的是,与单帧模型相比,我们的 GaussianWorld 在推理延迟和内存消耗几乎相同的情况下显著提高了性能。这归功于我们统一而简洁的模型架构,它可以处理单帧输入和流式输入,而无需引入额外的计算。
此外,我们的 GaussianWorld 明确地模拟了基于世界模型的感知场景演化的三个分解因素。为了评估这些因素的影响,我们进行了消融研究以确认其有效性,相关额实验结果如下表所示。
下表也展示了使用不同流长度时,我们的 GaussianWorld 的 mIoU 和 IoU 性能。我们观察到,流式传输更多帧通常会带来更好的性能,但在大约 20 帧后会略有下降。改进源于我们对场景演变的建模,有效地考虑了历史帧。
我们也探讨不同流媒体训练策略的影响,相关的实验结果汇总在下面的表格中。
结论
在本文中,我们提出了一个基于世界模型的框架,利用场景演化进行 3D 语义占用预测。我们将 3D 占用预测重新表述为以当前传感器输入为条件的 4D 占用预测问题。我们将场景演化分解为三个因素,并利用 3D 高斯进行显示建模。然后,我们使用GaussianWorld 来显式地利用 3D 高斯空间中的场景演化,并以流式传输的方式促进 3D 语义占用预测。大量的实验结果表明,与现有方法相比,我们的模型在不引入额外计算开销的前提下,展示了SOTA的性能。