Advertisement

【GaussianOcc: Fully Self-supervised and Efficient 3D Occupancy Estimation with Gaussian Splatting】笔记

阅读量:

【GaussianOcc: Fully Self-supervised and Efficient 3D Occupancy Estimation with Gaussian Splatting】阅读笔记

  • 1. 论文概述
    • Abstract

    • 1. Introduction

    • 2. Related work

      • 2.1 Surround view depth estimation
      • 2.2 Surround view 3D occupancy estimation
      • 2.3 3D Gaussian splatting
    • 3. Method

      • 3.1 Preliminaries
      • 3.2 Overview of the proposed GaussianOcc
      • 3.3 Scale-ware training by Gaussian Splatting
      • 3.4 Fast rendering by Gaussian Splatting
      • 3.5 Loss function
    • 4. Experiment

1. 论文概述

Abstract

GaussianOcc研究了关于高斯渲染的两方面:1. 完全的自监督 2. 高效的OCC估计。传统的自监督 3D 占用估计方法在训练期间仍然需要来自传感器的6D 姿态真值。

为了解决这个限制,提出高斯溅射投影(GSP)模块,为相邻视图投影的完全自监督训练提供准确的尺度信息。

此外,现有方法依赖于使用 2D 信号(深度图、语义图)进行最终 3D 体素表示学习的体积渲染,这既耗时又效率较低。我们提出从体素空间(GSV)进行高斯分布以利用高斯分布的快速渲染特性。

因此,所提出的 GaussianOcc 方法能够以较低的计算成本(训练速度快 2.7 倍,渲染速度快 5 倍)实现完全自监督(无地面真实姿态)3D 占用估计,具有竞争性能。

1. Introduction

近年来,以视觉为中心和以网格为中心的感知方法都得到了自动驾驶行业和学术界的广泛关注[35, 39]。其中,环视 3D 占用估计 [32,45,48,51] 已成为核心感知任务,也是鸟瞰 (BEV) 方法的有前景的替代方案 [9,29,30]。为了促进 3D 占用率估计,已经为监督训练开发了几个benchmark,尽管这些需要在 3D 注释方面付出大量努力。为了减轻注释的负担,人们提出了基于体绘制的自监督[5,12,18,24,54]和弱监督[37]学习方法[11,36,46]。体积渲染允许使用 2D 监督信号(例如 2D 语义图和深度图)进行 3D 表示学习,从而消除了训练期间需要大量 3D 注释。

现有方法[24, 54]通过体绘制实现自监督学习,其中2D语义图监督来自开放词汇语义分割[55],深度图监督来自自监督深度估计[13] ]。然而,这些方法面临两个重大限制。首先,体积渲染是在真实世界尺度上执行的,这需要提供真实的 6D 位姿来计算跨连续图像的多视图光度损失。其次,由于需要密集采样操作,体渲染的低效率带来了挑战,与新颖的视图合成任务[1,19,27]相同。这些限制阻碍了开发更通用、更有效的自监督 3D 占用估计范例。

为了解决上述限制,我们探索了一种完全自监督且有效的方法,使用高斯分布进行 3D 占用估计 [1, 27]。具体来说,我们介绍了使用高斯泼溅来执行跨视图泼溅,其中渲染图像构造了跨视图损失,该损失在与 6D 姿态网络的联合训练期间提供尺度信息。这消除了训练期间对地面实况 6D 姿势的需要。为了提高渲染效率,我们放弃了传统体渲染所需的密集采样。相反,我们建议直接从 3D 体素空间执行高斯分布。在这种方法中,体素网格中的每个顶点都被视为 3D 高斯,我们直接优化体素空间内这些高斯的属性,例如语义特征和不透明度。通过这种新颖的方法,我们提出的方法 GaussianOcc 在完全自我监督和高效的 3D 占用估计方面取得了进展,如图 1 所示。

这项工作的主要贡献总结如下。

  • 我们引入了第一个用于高效环视3D 占用估计的完全自监督方法,其特点是对高斯分布的探索。
  • 我们提出了用于交叉视图投影的高斯泼溅,它可以提供尺度信息,从而在训练期间消除对地面实况 6D 姿态的需要。
  • 我们建议从体素空间进行高斯泼溅,与体渲染相比,训练速度快 2.7 倍,渲染速度快 5 倍,从而实现具有竞争力的性能。

2.1 Surround view depth estimation

环绕视图设置提供了以自我为中心的 360 度感知解决方案 [3,14,35,39]。 [17]介绍了监督设置中的环视基准,其中直接从地面真实深度图学习深度尺度。FSM [16] 是依赖于立体约束的尺度感知环视深度估计的开创性工作 [53]。然而,后续研究 [28, 44] 发现重现 [16] 的性能具有挑战性。 Surrounddepth [44] 使用来自运动结构(SFM)的稀疏点云改进了尺度监督信号。基于 FSM 中的空间和时间约束,[28]引入了体积特征融合模块来增强性能。为了获得更好的性能,[38]提出了基于多摄像机和单目深度细化的时间离线细化策略。这些作品[16,28,38,44]都使用传统的投影和索引插值进行跨视图合成,计算合成视图和目标图像之间的损失。相比之下,我们的方法采用高斯分布和专门的设计,与单独的空间约束相比,实现了更好的性能。

2.2 Surround view 3D occupancy estimation

近年来,环视 3D 占用率估计受到了广泛关注,有几个基于 Nuscene 数据集的基准 [41,43,45]。除了提出的先进架构之外[31,32,51,56],另一个研究趋势涉及利用体绘制进行3D监督和2D监督[12,24,37,54]。 SimpleOcc [12] 率先使用体积渲染进行 3D 占用估计,探索了监督学习和自监督学习。 RenderOcc [37]扩展了渲染的语义信息。 OccNeRF [54] 和 SelfOcc [24] 共享相似的方法,使用 2D 开放词汇语义模型来生成用于监督的语义图。然而,由于体渲染过程是在真实世界规模下进行的,这些自监督方法 [12,24,54] 需要来自传感器的地面实况 6D 姿态来提供真实世界规模的训练。相比之下,我们正在探索一种解决方案,利用相邻摄像机中的重叠区域来学习真实世界的比例,从而消除对地面实况 6D 姿势的需要。

2.3 3D Gaussian splatting

3D 高斯喷射已成为使用适定图像对 3D 和 4D 场景进行建模的流行方法 [8, 26, 27, 47],与神经辐射场中的体渲染相比,它具有快速渲染的特性 [11, 19, 36]。在驾驶场景的背景下,一系列研究集中在特定场景的重建上[22,49,58]。然而,我们的工作研究了广义设置中高斯泼溅的功能。在这种情况下,现有方法通常根据学习的 2D 高斯属性的非投影构建 3D 高斯[7,33,40,57]。我们也采用这种非投影方法,但独特的是,我们的方法从相邻的数据构建交叉视图信息视图通过高斯泼溅投影学习尺度信息。

此外,最近的两项工作 GaussianFormer [25] 和 GaussianBeV [6] 与我们的工作密切相关,它们专注于 3D 占用估计和 BEV 预测。然而,我们的探索有所不同,重点关注高斯分布可以有助于占用估计的两个新属性:比例感知训练和更快的渲染。

3. Method

3.1 Preliminaries

在本文中,我们研究了使用 3D 高斯分布 [27] 进行完全自监督的 3D 占用估计。 3D 高斯分布 (3D-GS) 是一种使用点基元对静态 3D 场景进行建模的技术。每个点都表示为缩放高斯分布,其特征在于 3D 协方差矩阵 Σ 和平均值 μ。点 X 的高斯分布由下式给出:
在这里插入图片描述
为了通过梯度下降实现有效优化,协方差矩阵 Σ 被分解为缩放矩阵 S 和旋转矩阵 R,如下所示
在这里插入图片描述
高斯从 3D 空间到 2D 图像平面的投影涉及视图变换 W 和投影变换 J 的仿射近似的雅可比行列式。 2D 协方差矩阵 Σ′ 计算如下:
在这里插入图片描述
随后,应用了类似于 NeRF [36] 中使用的 alpha 混合渲染技术。其公式为:
在这里插入图片描述

这里,ci 表示每个点的颜色,密度 αi 由具有协方差 Σ’ 的 2D 高斯函数和学习的每点不透明度的乘积确定。颜色是使用球谐函数 (SH) 系数定义的,如 [10, 27] 中所述。
总之,基本的 3D 高斯分布方法用以下属性来表征每个高斯点:(1)3D 位置 X ∈ R3,(2)由 SH 系数 c ∈ Rk 定义的颜色(其中 k 表示 SH 基的维数) ),(3) 由四元数 r ε R4 表示的旋转,(4) 缩放因子 s ε R3+,以及 (5) 不透明度 α ε [0, 1]。

3.2 Overview of the proposed GaussianOcc

GaussianOcc 的概述如图 2 所示。主要贡献是引入了用于尺度感知训练的跨视图高斯分布和用于更快渲染的体素网格高斯分布。与用于特定场景 3D 重建的原始高斯泼溅不同,我们探索了高斯属性在 2D 和 3D 网格中良好对齐的设置。该方法将 2D 图像平面中的 3D 场景建模为深度图,将 3D 网格空间中的 3D 场景建模为体素(占用)格式。

3.3 Scale-ware training by Gaussian Splatting

来自空间相机装备的比例:与之前的工作[16, 44]类似,比例信息来自环绕相机装备。具体来说,可以通过利用相机外在矩阵来获得真实世界的尺度,即利用两个相邻视图之间重叠区域的空间光度损失,即将 Ii t 扭曲为 Ij t:
在这里插入图片描述

其中 Ki, Ti 是第 i 个相机的内在和外在矩阵,Di t 是第 i 个相机的预测深度图,pt 是变形期间对应的像素。扭曲操作是通过相应的 pi→j t 的双线性插值来实现的。然而,正如[44]所指出的,在如此小的重叠区域中,由于监督信号较弱,映射 pi→j t 很容易超出图像边界。我们的实践也验证了这一局限性。为了提供更强的监督信号,[44]提出促进结构运动(SFM)提取稀疏深度信息以进行尺度感知训练,这是耗时且不简单的。不同的是,我们建议使用高斯泼溅进行比例感知投影来实现跨视图立体约束。

高斯投影投影(GSP):如图2所示,我们使用深度网络来预测2D网格空间中的高斯属性,包括深度图、比例图和旋转图。对于每个相邻视图,我们首先计算重叠区域中的掩模,然后掩模掉这些重叠区域的一侧。由于另一侧重叠区域的存在,未投影的 3D 场景保持完整,这对于提供比例训练至关重要,如实验部分所示。然后我们对相邻视图进行泼溅渲染以获得渲染图像。如果深度图被准确学习,渲染的图像应该类似于原始图像,为整个管道提供必要的比例信息。

重叠掩模的获取流程如图3所示。重叠掩模的获取是基于体绘制的。我们在一个视图中沿光线密集地采样点,如果多个采样的 3D 点落入重叠区域内,则该像素被视为重叠区域的一部分。
请注意,在 DDAD 数据集 [14] 中,我们排除了具有自遮挡的区域(例如车身的部分)。最后,我们将 Open CV 库 [2] 中的腐蚀操作应用于掩模以进行纯化。

3.4 Fast rendering by Gaussian Splatting

体渲染性能低下:对于 2D 监督(语义和深度图),之前的方法 [12,24,37,54] 采用基于密集采样的体渲染。虽然用于建模 3D 场景的最终 3D 体素表示比原始隐式表示 (MLP) [36] 快得多,但它仍然很耗时,特别是在合并语义地图渲染时。例如,在OccNeRF[54]中,分辨率为180×320时的采样点数为108,735,066。然而,目标优化点对应于 3D 体素网格中的顶点,总计 320 × 320 × 24 = 2, 457, 600。密集采样点中的这种冗余有助于体渲染的优化,但效率非常低。

Gaussian Splatting from Voxel (GSV):如上所述,目标优化点是3D体素网格中的顶点,这促使我们考虑直接优化这些顶点。因此,我们研究使用高斯泼溅来进一步加速渲染过程。对于 3D 体素网格中的每个顶点,我们获得高斯分布所需的属性,例如 3D 位置、语义信息和不透明度。因此,我们提出将每个顶点视为 3D 高斯。由于这些顶点排列在 3D 体素空间中,因此我们可以通过优化相关高斯属性来对 3D 场景进行建模。

3.5 Loss function

我们将总损失函数表述为:
在这里插入图片描述

其中 It 和 ^ It 分别指目标图像和相应的合成图像。请注意,时间视图光度损失 Ltemporal 中的 ^ It 是通过使用坐标索引从源图像投影像素生成的。相比之下,交叉视图光度损失 Lcross 中的 ^ It 是从我们提出的交叉视图高斯泼溅方法导出的。 Lsemantic 是 2D 语义损失。 Ltv 是整个体素空间的正则化损失。平衡参数β设置为0.85以平衡两个损失项。

4. Experiment

全部评论 (0)

还没有任何评论哟~