以视觉信息作为输入的3D占用预测任务最近因其在自动驾驶中的关键应用而受到来自工业界和学术界的广泛关注。3D占用预测任务旨在根据视觉输入估计 3D 环境中每个体素的占用状态和语义标签。该任务提供了更细粒度的场景语义和结构描述,这对于开发安全且强大的自动驾驶系统非常重要。
利用时间输入对于 3D 占用预测非常重要,因为它为理解场景演变提供了足够的历史上下文信息。大多数现有方法遵循传统的感知、转换和融合流程,给定顺序输入信息,感知模块独立获得每个帧的场景表示,例如BEV特征以及体素特征。然后,转换模块根据自车轨迹对齐多帧的时序特征信息,融合模块融合对齐的特征表示以推断当前的 3D 占用情况。
然而,这些方法未能考虑驾驶场景演变的固有连续性和简单性。相邻帧中的驾驶场景表示应该彼此紧密相关,因为场景演变通常仅源于自车和其他动态物体的运动。直接融合多帧表征会忽略 3D 场景演化提供的这种强先验信息,即静态物体连贯性和动态物体运动,这使得模型很难理解驾驶场景的发展。此外,这种设计增加了时间建模的复杂性和计算工作量,从而降低了其效率和有效性。
考虑到上述提到的相关问题,在本文中,我们探索基于世界模型的范式以利用场景演变进行感知,该算法称为GaussianWorld。GaussianWorld采用显式 3D 高斯作为场景表示,而不是传统的隐式 BEV/Voxel 表示,这可以实现物体运动的显式和连续建模。给定历史 3D 高斯和当前视觉输入,GaussianWorld算法模型旨在预测场景如何演变并预测当前的占用情况。
考虑到上述场景演化的分解,我们采用 3D 高斯作为场景表示,以明确和连续地对场景演化进行建模。我们用一组稀疏的 3D 语义高斯来描述 3D 场景,其中每个高斯代表一个具有明确位置、比例、旋转和语义概率的灵活区域。为了学习场景演化,我们引入了一个额外的时间特征属性来捕获 3D 高斯的历史信息。3D 高斯表示可以表述为如下的公式形式。
我们进一步提出了一个 3D 高斯世界模型,GaussianWorld,以利用场景演化进行感知。提出的 GaussianWorld 对之前的 3D 高斯和当前的传感器输入进行操作,以预测当前的 3D 高斯。
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 的占用标签,相关的实验结果如下表所示。
我们对基于 GaussianFormer 的不同时序建模方法的性能和效率进行了比较。我们探索了两种实现 GaussianFormer-T 的方法,分别在 3D 高斯空间和透视视图空间中进行时序融合。对于前者,我们独立提取每帧的 3D 高斯表示,并利用 4D 稀疏卷积来促进跨帧 3D 高斯之间的时序交互。对于后者,我们独立提取每帧的多尺度图像特征,并采用可变形注意机制来实现当前帧的 3D 高斯和来自不同帧的图像特征之间的交互。相关的实验结果指标如下所示。