跳转至

MASt3R-SLAM: Real-Time Dense SLAM with 3D Reconstruction Priors

会议: CVPR 2025
arXiv: 2412.12392
代码: 未开源
领域: 三维视觉 / SLAM
关键词: 单目SLAM, 稠密重建, 3D先验, MASt3R, Sim(3)优化, 无标定SLAM

一句话总结

首个以双视图 3D 重建先验 MASt3R 为基础构建的实时单目稠密 SLAM 系统,通过高效的点图匹配、光线误差跟踪、局部融合、回环检测和二阶全局优化,在无需相机标定的情况下实现 15 FPS 的全局一致位姿估计和稠密几何重建,性能达到 SOTA。

研究背景与动机

领域现状:视觉 SLAM 是机器人和 AR 的基础模块。稀疏 SLAM(ORB-SLAM3)精度高但缺乏稠密场景模型;稠密 SLAM 依赖各种先验(单目深度、光流、NeRF/3DGS),但单视图先验存在多视图不一致性,光流先验将位姿与几何纠缠在一起。DROID-SLAM 通过端到端学习匹配+稠密BA取得鲁棒性,但缺乏显式几何约束导致3D重建不一致。

现有痛点:(1) 现有单目稠密 SLAM 都假设已知相机内参,而实际应用中标定常不可靠或不可用;(2) 单视图深度先验在多视图间存在偏差和尺度不一致;(3) DUSt3R/MASt3R-SfM 虽然提供了统一的双视图 3D 先验,但仅支持离线处理无序图像集,时间复杂度随图像数爆炸增长,不适合实时 SLAM。

核心矛盾:3D 重建先验提供了统一解决位姿/相机模型/稠密几何的能力,但如何在增量式、实时的 SLAM 框架中高效利用这种先验?

本文切入角度:将 MASt3R 的双视图预测作为 SLAM 的统一基础,设计高效的前端(迭代投影匹配 + 光线误差跟踪 + 点图融合)和后端(增量回环检测 + 二阶 Sim(3) 全局优化),仅假设中心相机模型(无参数化内参)。

方法详解

整体框架

系统分为前端跟踪和后端优化两个线程。前端对每帧新图像,与当前关键帧一起送入 MASt3R 获取双视图点图预测,通过迭代投影匹配建立像素对应关系,基于光线误差估计相对位姿并融合点图。后端在新关键帧加入时,通过 ASMK 特征检索寻找回环候选、送入 MASt3R 解码验证、添加图边,然后在 Sim(3) 空间进行二阶全局优化。

关键设计

  1. 迭代投影点图匹配 (Iterative Projective Matching):

    • 将 MASt3R 的参考点图归一化为光线 \(\psi(\mathbf{X}_i^i)\),对目标点图中的每个 3D 点,迭代优化其在参考帧中的像素坐标使光线角度误差最小:\(\mathbf{p}^* = \arg\min_\mathbf{p} \|\psi([\mathbf{X}_i^i]_\mathbf{p}) - \psi(\mathbf{x})\|^2\)
    • 利用解析 Jacobian + Levenberg-Marquardt 求解,几乎所有有效像素在 10 次迭代内收敛
    • 跟踪时以上一帧匹配结果初始化加速收敛;之后用 MASt3R 特征在局部窗口内进一步精化
    • 用自定义 CUDA 核并行化,跟踪仅需 2ms
    • 设计动机:利用点图的光线平滑性进行投影数据关联,避免 k-d tree 的构建开销和特征暴力搜索的二次复杂度
  2. 光线误差跟踪 + 局部点图融合:

    • 用光线误差(角度误差)代替 3D 点误差估计位姿:\(E_r = \sum \|\psi(\tilde{\mathbf{X}}_{k,n}^k) - \psi(\mathbf{T}_{kf}\mathbf{X}_{f,m}^f)\|_\rho\),对深度预测错误具有鲁棒性(角度误差有界)
    • 附加一个小权重的距离误差项避免纯旋转退化
    • 解位姿后通过置信度加权的滑动平均将新帧点图融合到关键帧的典范点图中
    • 设计动机:MASt3R 的深度预测频繁出现不一致,光线误差比 3D 点误差更鲁棒
  3. 增量回环检测 + 二阶 Sim(3) 全局优化:

    • 将 MASt3R-SfM 的 ASMK 图像检索框架改为增量式:每添加一个关键帧就查询数据库并更新索引
    • 后端优化在 Sim(3) 空间联合最小化所有图边的光线误差,固定第一个 7-DoF 位姿消除规范自由度
    • 使用解析 Jacobian + 稀疏 Cholesky 分解的 Gauss-Newton,CUDA 并行构建 Hessian
    • 设计动机:一阶优化(DUSt3R 原方案)每次迭代后需重新缩放,二阶方法在 Sim(3) 上直接收敛更快且无需后处理

损失函数

本文为 SLAM 系统,不涉及训练损失。核心优化目标:
- 前端跟踪:最小化光线角度误差 + 小权重距离误差
- 后端全局优化:最小化所有图边的光线角度误差 \(E_g\)
- 已知标定时:切换为像素重投影误差 \(E_\Pi\)

实验关键数据

主实验表

TUM RGB-D ATE (m):

方法 360 desk desk2 floor room avg
DROID-SLAM (标定) 0.111 0.018 0.042 0.021 0.049 0.038
GO-SLAM (标定) 0.089 0.016 0.028 0.025 0.052 0.035
Ours (标定) 0.049 0.016 0.024 0.025 0.061 0.030
DROID-SLAM* (无标定) 0.202 0.032 0.091 0.064 0.918 0.158
Ours* (无标定) 0.070 0.035 0.055 0.056 0.118 0.060
  • 标定模式 TUM 平均 ATE 0.030m,SOTA
  • 无标定模式比 DROID-SLAM*(GeoCalib初始化) 好 62%

7-Scenes ATE (m):

方法 chess fire heads kitchen stairs avg
DROID-SLAM 0.036 0.027 0.025 0.040 0.026 0.049
Ours 0.053 0.025 0.015 0.041 0.011 0.047

几何重建质量

方法 7-Scenes Chamfer EuRoC Chamfer
DROID-SLAM 0.077 0.117
Spann3R@20 0.058 -
Ours 0.066 0.085
Ours* (无标定) 0.056 0.090
  • 无标定系统的几何重建质量也超过 DROID-SLAM

关键发现

  • 无标定 SLAM 结果可与 DPV-SLAM (有标定) 相媲美
  • 在 ETH3D-SLAM 上鲁棒性最好(成功跟踪序列数最多),ATE 和 AUC 均最优
  • EuRoC 上虽然 ATE 不如 DROID-SLAM,但 Chamfer 距离明显更好——说明 3D 先验对几何重建的优势
  • 无标定系统在 7-Scenes 上 Chamfer 距离 0.056 甚至优于标定版本 0.066(工厂标定不精确)

亮点与洞察

  • 范式创新:首次将离线的双视图3D重建先验成功引入实时SLAM,证明了通用3D先验在SLAM中的可行性和优越性
  • 光线误差的优雅性:将点图归一化为光线后,所有优化(匹配/跟踪/后端)统一到角度误差空间,对深度误差鲁棒且有界,并自然支持任意中心相机模型
  • 无标定SLAM:不假设固定参数化相机模型,天然支持变焦/畸变/时变相机模型,这在实际应用中非常有价值
  • 前端融合的设计巧思:通过置信度加权滑动平均融合多帧点图到关键帧,类似滤波SLAM的思想,既利用了所有帧信息又避免了在后端存储所有点图

局限性

  • MASt3R 推理是系统瓶颈,需要 GPU 才能达到 15 FPS
  • 尚未在 MASt3R 训练数据中未覆盖的相机模型(如鱼眼/全景)上验证
  • EuRoC 灰度序列性能不如 DROID-SLAM(后者训练时有 10% 灰度图像增强)
  • 无已知标定时的纯旋转场景可能退化(虽然有距离项缓解)
  • 需要 RTX 4090 级别 GPU,部署门槛高

相关工作与启发

  • DUSt3R → MASt3R → MASt3R-SLAM:从离线 SfM 到实时 SLAM 的演进路径清晰,后续可能看到更多基于基础模型先验的 SLAM 系统
  • 与 DROID-SLAM 的对比思考:DROID-SLAM 及其后续 (DPV-SLAM, GO-SLAM) 都基于端到端学习匹配+稠密BA范式,而本文用 off-the-shelf 的 3D 先验走了完全不同的路线,两个方向未来可能融合
  • 光线误差在 3D 视觉中的启发:归一化为光线后统一处理内外参的思路,可推广到多相机系统、非参数化标定等场景

评分

⭐⭐⭐⭐⭐ — 开创性地将双视图3D重建先验引入实时SLAM,系统设计完整优雅(匹配/跟踪/融合/回环/优化每个环节都有针对性设计),标定和无标定模式均达到SOTA,对SLAM领域具有范式级影响。

相关论文