SIGRAPH 24年4月来自浙大等的论文 “RTG-SLAM: Real-time 3D Reconstruction at Scale Using Gaussian Splatting”。
实时高斯-SLAM (RTG-SLAM),是一种使用高斯splatting的 RGBD 摄像机大规模环境实时 3D 重建系统。该系统具有紧凑的高斯表示和高效的动态高斯优化方案。强制每个高斯都是模糊的或几乎透明的,模糊的高斯适合表面和主颜色,透明的高斯适合残差色。以不同于颜色渲染的方式渲染深度,让单个模糊高斯很好地适合局部表面区域,而无需多个重叠的高斯,从而大大降低内存和计算成本。对于动态高斯优化,明确为每帧的三种类型像素添加高斯:新观察的、有大颜色误差的和有大深度误差的。还将所有高斯分为稳定和不稳定两类,其中稳定高斯预计可以很好地拟合先前观察的 RGBD 图像,拟合不了的就算不稳定。只优化不稳定高斯,只渲染不稳定高斯占据的像素。这样,需要优化的高斯数量和需要渲染的像素数量都大大减少,并且可以实时进行优化。
大规模实时 3D 重建是计算机图形学和视觉领域长期研究的问题,在 VR/AR、自主机器人和具有即时反馈的交互式扫描等众多应用中都至关重要。随着 RGBD 相机(如 Microsoft Kinect)的普及,人们提出了不同的 RGBD SLAM方法进行实时 3D 重建,使用各种表面表示,如点云 [Du et al. 2011]、面元 [Keller et al. 2013; Whelan et al. 2015] 和符号距离函数 [Newcombe et al. 2011]。这些方法能够实时重建具有高质量 3D 表面的大规模场景 [Dai et al. 2017; Nießner et al. 2013; Steinbrücker et al. 2013]。但它们主要关注 3D 重建的几何精度,很少考虑重建结果的渲染真实感。
一些工作尝试使用NeRF作为密集 RGBD SLAM 的隐式场景表示 [Mildenhall et al. 2020],希望实现高质量的几何和外观重建。这些方法通常将场景表示为 MLP 网络 [Sucar et al. 2021a] 或隐式网格 [Yang et al. 2022; Zhu et al. 2022a],通过可微分体渲染,优化场景参数并估计相机姿势。然而,由于体渲染成本昂贵,这些方法难以达到实时性能。此外,高内存成本使得它们很难处理大规模场景。
最近,3D 高斯 [Kerbl et al. 2023] 作为辐射场的替代表示出现,它可以实现与以前 NeRF 相同或更好的渲染质量,同时渲染和训练速度更快。然而,到目前为止,三维高斯表示主要用于离线重建场景 [Chung et al. 2024; Yang et al. 2023],不适用于具有序贯 RGBD 输入的在线重建任务。要将其用于大规模实时三维重建,核心问题在于如何以低内存和计算成本表示场景,以及如何实时执行在线高斯优化。有几项并发的工作 [Huang et al. 2023b; Keetha et al. 2023; Matsuki et al. 2023; Yan et al. 2023; Yugay et al. 2023] 尝试将高斯函数融入 RGBD SLAM 系统,该系统使用高斯函数的不同场景表示以及不同的在线优化策略。虽然已经展示了有希望的结果,但要实现大规模场景的实时重建还有很长的路要走。
目前有一些同时进行的工作旨在将 3D 高斯集成到密集 RGBD SLAM 中。3D 高斯 [Kerbl et al. 2023] 可以实时渲染高质量图像,但优化是离线进行的,通常需要几分钟。为了将高斯扩展到在线重建,[Yan et al. 2023] 提出了一种自适应扩展策略添加新的或删除嘈杂的 3D 高斯,以及一种从粗到细的技术来选择可靠的高斯进行跟踪。[Yugay et al. 2023] 提出撒种子和优化高斯 splats 的新策略,以将其用途扩展到序贯 RGBD 输入。SplaTAM [Keetha et al. 2023] 定制了一个在线重建流水线,使用底层高斯表示和可微分渲染进行轮廓引导优化。[Matsuki et al. 2023] 统一高斯表示,实现准确、高效的跟踪、映射和高质量渲染。[Huang et al. 2023b] 引入一种基于高斯金字塔的训练方法,逐步学习多级特征并提高映射性能。虽然结果很有希望,但实现大规模实时重建仍然很困难。据报道,在合成的 Replica 数据集 [Straub et al. 2019] 上,NVIDIA RTX 4090 GPU [Matsuki et al. 2023] 的最快重建速度为 8.34 fps。也没有在真实的大场景上展示完整的重建结果。
得益于紧凑的高斯表示和高效的高斯优化策略,本文方法可以以较低的内存成本实时重建真实的大场景。
如图是方法概述。左图:强制每个高斯函数模糊或几乎透明,并且使用模糊高斯函数以不同于颜色的方式渲染深度,这样单个模糊高斯函数就可以很好地拟合表面的局部区域,从而产生一个紧凑的高斯表示,以更少量的高斯函数拟合 3D 表面。右图:计算颜色误差图、深度误差图和光透射图,以确定在何处添加模糊高斯函数或透明高斯函数。仅优化不稳定的高斯函数,并且仅渲染它们占用的像素以进行优化。
用一组 3D 高斯函数 {𝐺𝑖 } 来表示场景 S。
与 [Kerbl et al. 2023] 类似,每个高斯函数都与位置 p𝑖、协方差矩阵 𝚺𝑖、模糊度 𝛼𝑖 和球谐函数 (SH) 系数 SH𝑖 相关联。
协方差矩阵 𝚺𝑖 分解为尺度向量 s 和四元数 q。
每个高斯函数在添加后确定一次,使其模糊的(𝛼 = 0.99)拟合 3D 表面和主色,或使其几乎透明的(𝛼 = 0.1)拟合残差色。