3DGUT: Enabling Distorted Cameras and Secondary Rays in Gaussian Splatting

📄 arXiv: 2412.12507v2 📥 PDF

作者: Qi Wu, Janick Martinez Esturo, Ashkan Mirzaei, Nicolas Moenne-Loccoz, Zan Gojcic

分类: cs.GR, cs.CV

发布日期: 2024-12-17 (更新: 2025-03-24)

备注: Our paper has been accepted by CVPR 2025. For more details and updates, please visit our project website: https://research.nvidia.com/labs/toronto-ai/3DGUT

🔗 代码/项目: GITHUB


💡 一句话要点

3DGUT:通过Unscented变换,使3D高斯溅射支持畸变相机和二次光线

🎯 匹配领域: 支柱三:空间感知与语义 (Perception & Semantics)

关键词: 3D高斯溅射 Unscented变换 畸变相机 二次光线追踪 实时渲染

📋 核心要点

  1. 传统3D高斯溅射依赖针孔相机模型,无法处理畸变相机和二次光照效果,限制了其应用范围。
  2. 3DGUT利用Unscented变换近似高斯分布,通过Sigma点实现非线性投影,从而支持畸变相机和二次光线追踪。
  3. 该方法在保持光栅化效率的同时,实现了对复杂相机模型和光照效果的支持,扩展了3DGS的应用能力。

📝 摘要(中文)

3D高斯溅射(3DGS)能够在消费级硬件上高效重建和高保真实时渲染复杂场景。然而,由于其基于光栅化的公式,3DGS仅限于理想的针孔相机模型,并且缺乏对二次光照效果的支持。最近的方法通过追踪粒子来解决这些限制,但这会显著降低渲染速度。本文提出了3D高斯Unscented变换(3DGUT),用Unscented变换代替EWA溅射公式,通过sigma点来近似粒子,这些sigma点可以在任何非线性投影函数下精确投影。这种修改使得可以轻松支持具有时间相关效应(如卷帘快门)的畸变相机,同时保持光栅化的效率。此外,我们将渲染公式与基于追踪的方法对齐,从而能够进行二次光线追踪,以在同一3D表示中表示反射和折射等现象。源代码可在https://github.com/nv-tlabs/3dgrut 获取。

🔬 方法详解

问题定义:3D高斯溅射(3DGS)在场景重建和渲染方面表现出色,但其基于光栅化的方法限制了它对非理想相机模型(如畸变相机)和复杂光照效果(如反射和折射)的支持。现有方法通过光线追踪粒子来解决这些问题,但计算成本显著增加,影响了实时渲染性能。因此,如何在保持渲染效率的同时,扩展3DGS对更复杂相机模型和光照效果的支持是一个关键问题。

核心思路:3DGUT的核心思想是使用Unscented变换(UT)来近似3D高斯分布。UT通过一组称为Sigma点的样本来表示高斯分布,这些Sigma点可以通过非线性函数进行精确投影。通过将EWA溅射替换为基于UT的投影,3DGUT能够处理任意非线性投影函数,从而支持畸变相机和二次光线追踪。这种方法旨在在保持光栅化效率的同时,实现对更复杂相机模型和光照效果的支持。

技术框架:3DGUT的整体框架包括以下几个主要步骤:1) 使用Unscented变换生成代表3D高斯分布的Sigma点。2) 将这些Sigma点投影到图像平面上,使用非线性投影函数来处理畸变相机模型。3) 使用投影后的Sigma点进行渲染,并计算像素颜色值。4) 对于二次光线追踪,从渲染点发射光线,并计算反射和折射效果。整个流程保持了光栅化的效率,同时支持了更复杂的相机模型和光照效果。

关键创新:3DGUT的关键创新在于使用Unscented变换来近似3D高斯分布,并将其应用于3DGS的渲染流程中。与传统的EWA溅射相比,UT能够处理任意非线性投影函数,从而支持畸变相机模型。此外,通过将渲染公式与基于追踪的方法对齐,3DGUT能够进行二次光线追踪,从而支持反射和折射等复杂光照效果。这种方法在保持渲染效率的同时,扩展了3DGS的应用范围。

关键设计:3DGUT的关键设计包括:1) Sigma点的数量和位置的选择,这会影响UT的近似精度。2) 非线性投影函数的选择,这取决于具体的相机模型。3) 二次光线追踪的实现细节,包括光线发射方向的计算和光照模型的选择。此外,损失函数的设计也至关重要,需要平衡重建质量和渲染效率。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

论文提出的3DGUT方法,通过Unscented变换,成功地使3D高斯溅射支持了畸变相机和二次光线追踪。实验结果表明,该方法在保持光栅化效率的同时,能够有效地处理畸变相机模型,并实现反射和折射等复杂光照效果。虽然具体的性能数据和对比基线未在摘要中提及,但该方法为3DGS的应用开辟了新的可能性。

🎯 应用场景

3DGUT的应用场景广泛,包括:增强现实(AR)和虚拟现实(VR),可以处理真实世界中常见的相机畸变;电影和游戏制作,可以实现更逼真的光照效果;机器人视觉,可以提高在复杂光照条件下的场景理解能力;以及自动驾驶,可以更准确地重建周围环境。

📄 摘要(原文)

3D Gaussian Splatting (3DGS) enables efficient reconstruction and high-fidelity real-time rendering of complex scenes on consumer hardware. However, due to its rasterization-based formulation, 3DGS is constrained to ideal pinhole cameras and lacks support for secondary lighting effects. Recent methods address these limitations by tracing the particles instead, but, this comes at the cost of significantly slower rendering. In this work, we propose 3D Gaussian Unscented Transform (3DGUT), replacing the EWA splatting formulation with the Unscented Transform that approximates the particles through sigma points, which can be projected exactly under any nonlinear projection function. This modification enables trivial support of distorted cameras with time dependent effects such as rolling shutter, while retaining the efficiency of rasterization. Additionally, we align our rendering formulation with that of tracing-based methods, enabling secondary ray tracing required to represent phenomena such as reflections and refraction within the same 3D representation. The source code is available at: https://github.com/nv-tlabs/3dgrut.