Photo-SLAM: Real-time Simultaneous Localization and Photorealistic Mapping for Monocular, Stereo, and RGB-D Cameras
TL;DR 精炼摘要
Photo-SLAM解决了神经渲染SLAM资源难题,实现了便携设备上的实时光度写实建图。它采用“超基元地图”,融合显式几何定位与隐式光度纹理,并结合几何加密和高斯金字塔训练优化。实验结果表明,其建图性能显著超越SOTA(PSNR提升30%,渲染加速数百倍),并支持嵌入式平台实时运行。
摘要
The integration of neural rendering and the SLAM system recently showed promising results in joint localization and photorealistic view reconstruction. However, existing methods, fully relying on implicit representations, are so resource-hungry that they cannot run on portable devices, which deviates from the original intention of SLAM. In this paper, we present Photo-SLAM, a novel SLAM framework with a hyper primitives map. Specifically, we simultaneously exploit explicit geometric features for localization and learn implicit photometric features to represent the texture information of the observed environment. In addition to actively densifying hyper primitives based on geometric features, we further introduce a Gaussian-Pyramid-based training method to progressively learn multi-level features, enhancing photorealistic mapping performance. The extensive experiments with monocular, stereo, and RGB-D datasets prove that our proposed system Photo-SLAM significantly outperforms current state-of-the-art SLAM systems for online photorealistic mapping, e.g., PSNR is 30% higher and rendering speed is hundreds of times faster in the Replica dataset. Moreover, the Photo-SLAM can run at real-time speed using an embedded platform such as Jetson AGX Orin, showing the potential of robotics applications.
思维导图
论文精读
中文精读
1. 论文基本信息 (Bibliographic Information)
- 标题 (Title): Photo-SLAM: Real-time Simultaneous Localization and Photorealistic Mapping for Monocular, Stereo, and RGB-D Cameras (Photo-SLAM:面向单目、双目和RGB-D相机的实时同步定位与光度写实建图)
- 作者 (Authors): Huajian Huang (香港科技大学), Longwei Li (中山大学), Hui Cheng (中山大学), Sai-Kit Yeung (香港科技大学)
- 发表期刊/会议 (Journal/Conference): 论文的格式和引用风格(例如,引用了大量 CVPR, ECCV, ICRA 的论文)表明它很可能投稿或发表于计算机视觉或机器人领域的顶级会议,如 CVPR, ICCV, ECCV 或 ICRA。
- 发表年份 (Publication Year): 论文中引用了2023年的多篇文献,因此该论文应发表于2023年或之后。
- 摘要 (Abstract): 摘要指出,将神经渲染与SLAM系统集成在联合定位和逼真视图重建方面显示出巨大潜力。然而,现有方法完全依赖于隐式表示,资源消耗巨大,无法在便携设备上运行,这偏离了SLAM的初衷。为解决此问题,本文提出了Photo-SLAM,一个基于
超基元地图 (hyper primitives map)的新型SLAM框架。该框架利用显式几何特征进行定位,同时学习隐式光度特征来表示环境的纹理信息。除了基于几何特征主动加密超基元,本文还引入了一种基于高斯金字塔 (Gaussian-Pyramid)的训练方法,以渐进式学习多层次特征,从而提升光度写实建图的性能。在单目、双目和RGB-D数据集上的大量实验证明,Photo-SLAM在在线光度写实建图方面显著优于当前最先进的SLAM系统,例如,在Replica数据集上,PSNR提升了30%,渲染速度快了数百倍。此外,Photo-SLAM可以在嵌入式平台(如Jetson AGX Orin)上实时运行,展示了其在机器人应用中的巨大潜力。 - 原文链接 (Source Link):
/files/papers/68e0ab569cc40dff7dd2bb22/paper.pdf(已提供)
2. 整体概括 (Executive Summary)
-
研究背景与动机 (Background & Motivation - Why):
- 核心问题: 如何实现一个既能精确进行实时定位,又能生成高质量、照片般逼真三维地图的SLAM系统,并且该系统足够高效,可以在资源有限的移动设备(如机器人、无人机)上运行。
- 重要性与挑战 (Gap): 传统的SLAM系统(如
ORB-SLAM)专注于几何建图,生成的地图(如稀疏点云)虽然精确但缺乏视觉真实感。近年来,结合了神经渲染 (Neural Rendering)的SLAM系统(如NICE-SLAM)虽然可以生成逼真的视图,但它们严重依赖于计算成本高昂的隐式神经表示 (implicit neural representations)和神经求解器 (neural solvers)。这导致它们需要强大的GPU,运行速度慢,并且难以扩展到大场景,不适合实时应用,违背了SLAM服务于移动自主系统的初衷。 - 创新思路: 本文的切入点是“显式”与“隐式”的结合。作者提出不完全依赖于缓慢的隐式表示,而是构建一个
超基元地图 (hyper primitives map)。这个地图显式地存储几何特征(如ORB特征点)用于快速、鲁棒的定位;同时,将场景的颜色和纹理等光度信息隐式地编码在这些基元中,并使用一种极快的渲染技术——3D高斯溅射 (3D Gaussian Splatting)——来生成逼真图像。这种混合设计旨在兼顾传统SLAM的效率和神经渲染的质量。
-
核心贡献/主要发现 (Main Contribution/Findings - What):
- **提出了首个基于
超基元地图的SLAM框架: 这是第一个将经典SLAM的几何前端与3D高斯溅射渲染后端相结合的系统。该框架创新地支持单目、双目和RGB-D三种主流相机,并能处理室内外环境。 - 提出了
高斯金字塔学习法以提升建图质量: 为了在只有稀疏深度信息(尤其是在单目情况下)时也能生成高质量地图,作者设计了一种高斯金字塔渐进式学习 (Gaussian-Pyramid-based learning)策略。该方法通过从低分辨率到高分辨率逐步优化场景细节,有效地实现了由粗到精的特征学习,显著提升了建图的逼真度。 - 实现了SOTA性能和嵌入式平台实时运行: 该系统完全用C++和CUDA实现,达到了最先进的性能。实验表明,其建图质量(
PSNR)和渲染速度远超现有方法。更重要的是,它可以在NVIDIA Jetson AGX Orin这样的嵌入式设备上实时运行,证明了其在实际机器人应用中的可行性和巨大潜力。
- **提出了首个基于
3. 预备知识与相关工作 (Prerequisite Knowledge & Related Work)
-
基础概念 (Foundational Concepts):
- SLAM (Simultaneous Localization and Mapping): 同步定位与建图。这是一个过程,移动机器人或设备在未知环境中,使用传感器(如相机)在构建环境地图的同时,估计自身在该地图中的位置和姿态。这是实现自主导航的基础。
- 神经渲染 (Neural Rendering):** 一类利用深度神经网络从场景数据(如图像、几何)中合成新视角图像的技术。其中最著名的代表是
NeRF (Neural Radiance Fields),它使用一个多层感知机 (MLP)将一个三维空间点和二维观看方向映射到该点的颜色和密度,通过沿相机射线积分来渲染图像。 - 3D高斯溅射 (3D Gaussian Splatting): 一种新颖的实时场景表示和渲染技术。它不用连续的函数(如NeRF),而是用大量三维高斯椭球来表示场景。每个高斯体都有位置、形状(通过协方差矩阵表示,可分解为旋转和缩放)、颜色(通过
球谐函数 (Spherical Harmonics, SH)表示,以捕捉视角相关的光照效果)和不透明度等属性。渲染时,这些三维高斯体被快速地“溅射”(投影)到二维图像平面上并进行 alpha 混合,速度远快于NeRF的逐点采样和积分。 - 因子图 (Factor Graph): 一种用于表示概率模型中变量和因子之间关系的二分图。在SLAM中,它被广泛用于建模和求解非线性优化问题。变量节点代表相机位姿和地图点,因子节点代表传感器测量(如重投影误差)或运动约束,整个SLAM问题就转化为求解使所有因子代价最小化的变量状态。
- ORB特征 (Oriented FAST and Rotated BRIEF): 一种高效的、对旋转和尺度具有不变性的图像特征点。它结合了
FAST关键点检测器和BRIEF描述子,是ORB-SLAM等经典SLAM系统进行图像匹配和跟踪的核心技术。
-
前人工作 (Previous Works):
- 经典SLAM系统 (Graph Solver + Explicit Representation): 如
ORB-SLAM系列、DSO。它们使用因子图求解器,构建由稀疏点云或半稠密点云组成的显式地图。优点是速度快、鲁棒性高、计算资源消耗低。局限性是地图的视觉效果差,不够逼真。 - 深度学习SLAM (Neural Solver + Explicit Representation): 如
DROID-SLAM。它们使用深度神经网络(如光流网络RAFT)来代替传统的特征匹配和运动估计,直接输出稠密的深度图。优点是在训练数据覆盖的场景中精度很高。局限性是计算量大,依赖GPU,且在未见过的场景中泛化能力可能下降。 - 神经渲染SLAM (Neural Solver + Implicit Representation): 如
NICE-SLAM,ESLAM,Co-SLAM。它们将场景表示为隐式神经场,并通过端到端的方式联合优化相机位姿和场景表示。优点是可以生成照片般逼真的地图。局限性是训练和优化过程极其缓慢,资源消耗巨大,通常需要密集的深度信息作为监督才能稳定收敛,不适合实时应用。
- 经典SLAM系统 (Graph Solver + Explicit Representation): 如
-
技术演进 (Technological Evolution): SLAM技术从追求几何精度的经典方法,演进到利用深度学习提升前端跟踪性能,再到与神经渲染结合追求视觉真实感。Photo-SLAM正处于这一演进脉络的关键节点,它试图通过融合不同方法的优势,来解决神经渲染SLAM的效率瓶颈。
-
差异化分析 (Differentiation): 如 图像 10(a) 所示,Photo-SLAM将自己定位在现有方法的交叉点。与纯神经渲染SLAM相比,Photo-SLAM的核心区别在于:
- 混合表示 vs. 纯隐式表示: Photo-SLAM使用
超基元地图,混合了用于定位的显式几何特征和用于渲染的隐式光度特征。而NICE-SLAM等则完全依赖于一个统一的、缓慢的隐式场。 - 图求解器 vs. 神经求解器: Photo-SLAM沿用经典SLAM的
因子图优化方法进行定位,这比端到端的神经求解器更高效、更鲁棒。 - 快速渲染器 vs. 慢速渲染器: Photo-SLAM采用
3D高斯溅射进行渲染,速度比NeRF的体素渲染 (Volume Rendering)快几个数量级。 - 对深度依赖性低: 由于其鲁棒的几何前端和创新的
GP学习法,Photo-SLAM不强制要求密集的深度输入,因此能很好地支持单目和双目相机。
- 混合表示 vs. 纯隐式表示: Photo-SLAM使用
4. 方法论 (Methodology - Core Technology & Implementation Details)
Photo-SLAM的整体框架如 图像 10(b) 所示,它由四个并行运行的线程(定位、几何建图、光度写实建图、回环检测)组成,这些线程共同维护和优化一个中心的超基元地图。
-
方法原理 (Methodology Principles): 核心思想是“分而治之”:将SLAM中的“定位”和“建图”两个任务在一定程度上解耦。定位任务交由成熟、高效的经典几何方法处理;建图任务则采用最新的、高质量且高速的神经渲染技术。两者通过共享的
超基元地图进行连接和交互。 -
方法步骤与流程 (Steps & Procedures):
- 超基元地图 (Hyper Primitives Map): 这是系统的核心数据结构。一个
超基元本质上是一个三维点,但附带了丰富的属性:ORB features: 用于和图像帧中的2D特征点进行匹配,实现快速定位。rotation、scaling、density: 这三者共同定义了一个三维高斯椭球的形状和不透明度,是3D高斯溅射的基础参数。spherical harmonic (SH) coefficients: 一组系数,用于表示该点的颜色如何随观察方向变化,从而模拟复杂的光照和材质效果。
- 定位与几何建图 (Localization and Geometry Mapping):
- 定位线程: 当一个新的图像帧输入时,提取
ORB特征,并与地图中超基元的ORB特征进行匹配,建立2D-3D对应关系。然后通过一个称为运动-only BA (motion-only bundle adjustment)的优化过程,最小化重投影误差,快速计算出当前帧的相机位姿()。其优化目标函数为: - :相机的旋转和平移(位姿)。
- :图像中的二维关键点。
- :地图中对应的三维点(
超基元的位置)。 - :将三维点投影到二维图像的投影函数。
- :鲁棒的
Huber代价函数,用于减小外点(错误匹配)的影响。 - :与关键点尺度相关的协方差矩阵。
- 几何建图线程: 当一个帧被选为
关键帧 (keyframe)后,该线程会进行局部BA (local bundle adjustment)。它会同时优化一小批相关的关键帧位姿和它们共同观测到的超基元三维位置,以提高地图的局部一致性和精度。
- 定位线程: 当一个新的图像帧输入时,提取
- 光度写实建图 (Photorealistic Mapping):
- 渲染: 该线程使用
3D高斯溅射渲染器,根据关键帧的位姿,将超基元地图渲染成图像。渲染公式为: - :在位姿下渲染出的图像颜色。
- :第 i 个
超基元的颜色,由其SH系数根据视角计算得出。 - :第 i 个
超基元经过投影和光栅化后的不透明度,由其密度和高斯函数共同决定。 - 优化: 通过最小化渲染图像 和真实
关键帧图像 之间的光度损失 (photometric loss),来优化超基元的渲染相关属性(位置、旋转、缩放、密度、SH系数)。损失函数为L1损失和SSIM损失的加权和: SSIM:结构相似性 (Structural Similarity),一种衡量图像 perceptual 质量的指标。- 基于几何的加密 (Geometry-based Densification): 几何建图线程只创建稀疏的地图点。为了获得逼真的渲染效果,需要更密集的点。该策略利用图像中那些未被用于定位的
ORB特征点(inactive2D feature points)来主动创建新的、临时的超基元。这些新点的三维位置通过不同方式估计:RGB-D相机直接使用深度值;双目相机通过立体匹配计算深度;单目相机则借用其邻近的已存在地图点的深度。
- 渲染: 该线程使用
- 基于高斯金字塔的学习 (Gaussian-Pyramid-Based Learning):
- 这是一个创新的训练策略,用于指导光度建图的优化过程,其与其他方法的对比如 图像 1 所示。
- 首先,将真实的
关键帧图像 构建成一个高斯金字塔,即一系列从高到低分辨率的图像 。 - 优化过程分为多个阶段。在初始阶段,使用金字塔顶层最低分辨率的图像 作为监督信号。这使得系统能够先学习场景的整体结构和低频信息。
- 随着优化的进行,逐步切换到更高分辨率的图像()作为监督,同时
超基元也在不断被加密。这使得系统能够由粗到精地学习场景的细节和高频纹理。 - 这个过程可以形式化地表示为:
- :代表训练的第 k 个阶段。
- :高斯金字塔第 k 层的图像。
- 超基元地图 (Hyper Primitives Map): 这是系统的核心数据结构。一个
5. 实验设置 (Experimental Setup)
-
数据集 (Datasets):
- Replica: 一个高质量的、照片般逼真的室内场景合成数据集,提供完美的相机位姿、深度图和RGB图像,非常适合用于评估建图质量。
- TUM RGB-D: 一个广泛使用的真实世界室内场景RGB-D数据集,包含各种纹理和运动模式,用于评估SLAM系统在真实环境中的性能。
- EuRoC MAV: 一个由微型飞行器(MAV)在室内环境中采集的双目+IMU数据集,具有挑战性的运动和光照变化,用于评估双目SLAM性能。
- 自定义户外数据集: 使用ZED 2双目相机采集的户外场景,用于验证系统在无界、大尺度环境下的泛化能力。
-
评估指标 (Evaluation Metrics):
- 定位精度:
ATE (Absolute Trajectory Error),绝对轨迹误差。它通过将估计的相机轨迹与地面真实轨迹进行对齐后,计算对应位姿之间的均方根误差(RMSE)。RMSE越小,定位越准确。 - 建图质量:
PSNR (Peak Signal-to-Noise Ratio): 峰值信噪比。衡量渲染图像与真实图像之间像素级别的差异。值越高,表示重建图像失真越小,质量越高。SSIM (Structural Similarity Index): 结构相似性指数。从亮度、对比度和结构三个方面衡量图像的相似度,比PSNR更符合人眼感知。值越高,表示两图在结构上越相似。LPIPS (Learned Perceptual Image Patch Similarity): 学习型感知图像块相似度。利用深度神经网络提取的特征来比较图像相似性,被认为是最接近人类视觉感知的指标之一。值越低,表示两图在感知上越相似。
- 定位精度:
-
对比基线 (Baselines):
- 经典SLAM:
ORB-SLAM3(最先进的稀疏SLAM系统)。 - 经典稠密重建:
BundleFusion(实时RGB-D稠密重建系统)。 - 深度学习SLAM:
DROID-SLAM(基于深度学习的SOTA视觉SLAM)。 - 神经渲染SLAM:
NICE-SLAM,Orbeez-SLAM,ESLAM,Co-SLAM,Point-SLAM,Go-SLAM(当前主流的同时支持定位和视图合成的SLAM系统)。
- 经典SLAM:
6. 实验结果与分析
-
核心结果分析:
- Replica数据集 (参考Table 1的描述):
- 建图质量: Photo-SLAM在
PSNR,SSIM,LPIPS三项指标上全面大幅领先所有对比方法。例如,在RGB-D场景下,其PSNR高达34.958,而次优的Point-SLAM为34.632,ESLAM为32.516。这证明了其生成的地图具有极高的逼真度。 - 渲染速度: Photo-SLAM的渲染速度达到了惊人的1084 FPS,是
ESLAM(2.6 FPS) 和Co-SLAM(3.7 FPS) 的数百倍。这得益于高效的3D高斯溅射渲染器。 - 定位精度: 其定位精度(ATE RMSE为0.604cm)与
ESLAM(0.568cm) 和DROID-SLAM(0.634cm) 等SOTA方法相当,证明其几何前端的可靠性。 - 单目性能: 在更具挑战的单目场景下,Photo-SLAM的优势更加明显。其
PSNR达到33.302,远超Orbeez-SLAM(23.246) 和Go-SLAM(21.172),而NICE-SLAM在没有深度监督时几乎失效。图像 2 和 图像 7 直观地展示了Photo-SLAM在各种相机输入下高质量的重建效果。
- 建图质量: Photo-SLAM在
- TUM和EuRoC数据集 (参考Table 2, 3的描述):
- 在真实的TUM数据集上,许多基于学习的SLAM方法(如
DROID-SLAM)由于泛化问题导致定位精度急剧下降,而Photo-SLAM的定位精度与经典的ORB-SLAM3相当,显示了其鲁棒性。其建图效果如 图像 7 和 图像 8 所示。 - 在EuRoC双目数据集上,Photo-SLAM是第一个能够进行在线光度写实建图的系统,并取得了良好的定位和建图效果,如 图像 9 所示。
- 在真实的TUM数据集上,许多基于学习的SLAM方法(如
- 效率和平台支持:
- 图像 5 的跟踪速度对比图显示,Photo-SLAM的平均跟踪耗时仅为0.02秒/帧,远低于其他神经SLAM系统,且波动极小,非常稳定。
- 图像 4 展示了系统在Jetson AGX Orin嵌入式平台上的实时运行情况,证明了其低资源消耗和实用性。图像 6 展示了在不同场景下平滑准确的运动轨迹。
- Replica数据集 (参考Table 1的描述):
-
消融实验/参数分析 (Ablation Studies / Parameter Analysis) (参考Table 4的描述): 这是验证本文两个核心创新点有效性的关键实验。
- 去除
几何加密 (Geo): 当去掉Geo策略时,系统只能依赖初始的稀疏地图点进行渲染。结果显示,虽然模型尺寸变小了,但单目和RGB-D场景下的PSNR分别下降了约2和1.7,渲染图像中出现明显的空洞和伪影(如 图像 3(a) 所示的天花板部分)。这证明主动利用几何特征来增加基元密度是提升渲染完整性的关键。 - 去除
高斯金字塔学习 (GP): 当去掉GP学习法,直接用原始高分辨率图像进行优化时,结果急剧恶化。尤其是在单目场景下,PSNR从33.3骤降到20.0,渲染结果变得极其模糊(如 图像 3(b) 所示)。这是因为没有由粗到精的引导,被Geo策略加密的大量位置不精确的超基元无法被有效优化,反而成为了“噪声”。这证明GP学习法是保证建图质量、有效优化稠密基元的必要手段。 - 结论:
Geo和GP相辅相成,缺一不可。Geo负责提供足够数量的“画布”(超基元),而GP则确保能在这块画布上画出精美的“画作”。
- 去除
7. 总结与思考 (Conclusion & Personal Thoughts)
-
结论总结 (Conclusion Summary): 论文成功地提出了Photo-SLAM,一个新颖的、结合了经典SLAM几何优势和现代神经渲染质量的框架。通过引入
超基元地图、基于几何的加密策略和基于高斯金字塔的学习方法,Photo-SLAM在不牺牲定位精度和实时性的前提下,实现了SOTA级别的在线光度写实建图,并首次将其能力扩展到单目、双目相机以及嵌入式平台,为SLAM技术在机器人和AR/VR领域的实际应用铺平了道路。 -
局限性与未来工作 (Limitations & Future Work):
- 动态环境处理: 论文中的实验场景均为静态。与大多数SLAM系统一样,Photo-SLAM目前无法处理环境中的动态物体,动态物体会被视为噪声或被错误地重建为模糊的“鬼影”。
- 光照变化与重光照: 场景的外观(
SH系数)是与捕获时的光照条件强相关的。系统无法处理剧烈的光照变化,也无法对重建的场景进行重光照 (Relighting)。 - 地图管理与可扩展性: 对于非常大规模或长期的建图任务,
超基元的数量会持续增长,导致内存消耗和计算负担增加。未来需要研究有效的地图压缩、剪枝或分块管理机制。
-
个人启发与批判 (Personal Insights & Critique):
- 启发:
- “返璞归真”的智慧: 在所有人都涌向端到端深度学习的浪潮中,Photo-SLAM“回头看”的思路非常值得借鉴。它没有盲目地用神经网络替换所有模块,而是明智地保留了经典方法中那些已经被证明高效且鲁棒的部分(如图优化定位),只在最能发挥优势的地方(高质量渲染)采用新技术。这种“混合式”架构是工程和研究中解决复杂问题的典范。
- 实用主义的胜利: 这项工作最大的价值在于其实用性。它不仅仅是在某个指标上刷新了记录,而是真正将一个前沿概念(光度写实SLAM)从“实验室玩具”推向了“可部署工具”的边缘,特别是在嵌入式设备上的成功运行,极大地拓展了其应用边界。
- 批判与改进方向:
- 单目深度的简易性: 单目情况下,为
inactive特征点估计深度时采用“借用最近邻深度”的方法相对简单。如果能引入一个轻量级的、自监督的单目深度估计网络来提供更可靠的深度先验,可能会进一步提升单目建图的质量和鲁棒性。 - 探索基元表示:
3D高斯是当前非常有效的表示,但未来也可以探索其他更紧凑或更具表达力的基元 (primitives),例如引入平面等几何基元来更高效地表示大面积的平坦区域,从而减小模型尺寸。
- 单目深度的简易性: 单目情况下,为
- 启发:
相似论文推荐
基于向量语义检索推荐的相关论文。