3DGS-LM: Faster Gaussian-Splatting Optimization with Levenberg-Marquardt
作者: Lukas Höllein, Aljaž Božič, Michael Zollhöfer, Matthias Nießner
分类: cs.CV
发布日期: 2024-09-19 (更新: 2025-08-21)
备注: Accepted to ICCV 2025. Project page: https://lukashoel.github.io/3DGS-LM, Video: https://www.youtube.com/watch?v=tDiGuGMssg8, Code: https://github.com/lukasHoel/3DGS-LM
💡 一句话要点
提出基于Levenberg-Marquardt算法的3DGS-LM,加速3D高斯溅射优化。
🎯 匹配领域: 支柱三:空间感知与语义 (Perception & Semantics)
关键词: 3D高斯溅射 Levenberg-Marquardt算法 优化加速 可微渲染 GPU并行计算
📋 核心要点
- 现有3DGS方法依赖ADAM优化器,迭代次数多,耗时较长,成为性能瓶颈。
- 3DGS-LM采用Levenberg-Marquardt算法替代ADAM,并设计高效的GPU并行化方案。
- 实验表明,3DGS-LM在保持重建质量的同时,比原始3DGS速度提升20%。
📝 摘要(中文)
本文提出了一种名为3DGS-LM的新方法,通过用定制的Levenberg-Marquardt(LM)算法替换ADAM优化器,来加速3D高斯溅射(3DGS)的重建。现有方法通过减少高斯数量或改进可微光栅化器的实现来减少优化时间。然而,它们仍然依赖于ADAM优化器在数千次迭代中拟合场景的高斯参数,这可能需要长达一个小时。为此,我们将优化器更改为与3DGS可微光栅化器结合使用的LM算法。为了实现高效的GPU并行化,我们提出了一种用于中间梯度缓存的数据结构,使我们能够在自定义CUDA内核中高效地计算雅可比向量积。在每次LM迭代中,我们使用这些内核从多个图像子集中计算更新方向,并将它们组合成加权平均值。总的来说,我们的方法比原始3DGS快20%,同时获得相同的重建质量。我们的优化也与其他加速3DGS的方法无关,因此与原始3DGS相比,能够实现更快的加速。
🔬 方法详解
问题定义:现有3D高斯溅射(3DGS)方法在优化过程中,依赖于ADAM优化器进行高斯参数的拟合,需要数千次迭代,耗时较长,严重影响了重建速度。尤其是在大规模场景下,优化时间可能长达数小时,限制了3DGS的实际应用。
核心思路:本文的核心思路是用Levenberg-Marquardt(LM)算法替换ADAM优化器。LM算法是一种二阶优化算法,相比于ADAM等一阶优化算法,具有更快的收敛速度。通过定制化的LM算法,可以在更少的迭代次数内达到相同的重建质量,从而加速3DGS的优化过程。
技术框架:3DGS-LM的整体框架仍然基于3DGS的可微渲染流程。主要改进在于优化器部分,将ADAM替换为LM算法。为了高效地计算LM算法所需的雅可比矩阵,论文设计了一种缓存中间梯度的数据结构,并使用CUDA内核进行并行计算。在每次LM迭代中,从多个图像子集中计算更新方向,并进行加权平均,以提高优化稳定性。
关键创新:最重要的创新点在于将LM算法引入到3DGS的优化中,并针对3DGS的特点进行了定制化设计。与现有方法相比,3DGS-LM不再依赖于一阶优化算法,而是利用二阶优化算法的优势,显著提高了优化速度。此外,针对LM算法中雅可比矩阵计算的并行化,提出了高效的缓存和计算方案,保证了算法在GPU上的高效运行。
关键设计:为了在GPU上高效地计算雅可比矩阵,论文设计了一个缓存中间梯度的数据结构。该数据结构存储了每个高斯参数对每个像素的梯度信息,避免了重复计算。此外,论文还使用CUDA内核并行计算雅可比向量积,进一步提高了计算效率。在LM算法的每次迭代中,从多个图像子集中计算更新方向,并使用加权平均的方式进行组合。权重的选择可能与每个子集的损失有关,具体细节未知。
🖼️ 关键图片
📊 实验亮点
实验结果表明,3DGS-LM在保持与原始3DGS相同重建质量的前提下,优化速度提升了20%。这意味着在相同的时间内,可以使用3DGS-LM重建更大规模、更复杂的场景。此外,3DGS-LM的优化方法与其它加速3DGS的方法兼容,可以进一步叠加使用,实现更快的速度提升。具体的量化指标和对比实验细节未知。
🎯 应用场景
3DGS-LM的加速优化能力使其在需要快速重建3D场景的应用中具有广泛的应用前景,例如:实时三维重建、虚拟现实/增强现实、机器人导航、自动驾驶等。该方法可以显著减少重建时间,提高用户体验,并降低计算成本。未来,该方法可以进一步扩展到更大规模的场景和更复杂的材质建模。
📄 摘要(原文)
We present 3DGS-LM, a new method that accelerates the reconstruction of 3D Gaussian Splatting (3DGS) by replacing its ADAM optimizer with a tailored Levenberg-Marquardt (LM). Existing methods reduce the optimization time by decreasing the number of Gaussians or by improving the implementation of the differentiable rasterizer. However, they still rely on the ADAM optimizer to fit Gaussian parameters of a scene in thousands of iterations, which can take up to an hour. To this end, we change the optimizer to LM that runs in conjunction with the 3DGS differentiable rasterizer. For efficient GPU parallization, we propose a caching data structure for intermediate gradients that allows us to efficiently calculate Jacobian-vector products in custom CUDA kernels. In every LM iteration, we calculate update directions from multiple image subsets using these kernels and combine them in a weighted mean. Overall, our method is 20% faster than the original 3DGS while obtaining the same reconstruction quality. Our optimization is also agnostic to other methods that acclerate 3DGS, thus enabling even faster speedups compared to vanilla 3DGS.