跳转至

MGSfM: Multi-Camera Geometry Driven Global Structure-from-Motion

会议: ICCV 2025
arXiv: 2507.03306
代码: 3dv-casia/MGSfM
领域: 自动驾驶
关键词: Structure-from-Motion, 多相机系统, 全局运动平均, 旋转平均, 平移平均, 三维重建, 自动驾驶

一句话总结

提出 MGSfM,一个面向多相机系统的全局 Structure-from-Motion (SfM) 框架,通过解耦旋转平均 (DMRA) 和混合平移平均 (MGP) 两个核心模块,充分利用多相机刚性约束,在大规模场景中实现与增量式 SfM 媲美甚至更优的精度,同时速度提升约 10 倍。

研究背景与动机

多相机系统在自动驾驶中的重要性

自动驾驶和机器人平台越来越多地采用多相机系统(立体相机、四目环视等)来实现环境感知。这些相机之间的刚性相对位姿约束(同一刚体上相机之间的相对位姿在所有帧中保持不变)是一个天然的强几何先验,可以显著提升 SfM 的精度和鲁棒性。

现有方法的局限

  • 增量式 SfM(如 COLMAP、MCSfM):逐帧添加相机和三维点,精度较高但计算量大,且存在尺度漂移(scale drift)问题——误差随序列长度单调累积,尤其在大规模场景和缺乏回环检测时特别严重
  • 全局 SfM(如 GLOMAP):一次性联合估计所有相机位姿,误差分布更均匀,但鲁棒性不足——容易受到外点匹配的影响,尤其是在仅使用 camera-to-point 约束时
  • 多相机全局方法(如 MMA):利用多相机约束进行平移平均,但仅使用相对平移方向,丢弃了 feature track 中的丰富信息

核心问题

如何在全局 SfM 框架中同时利用:(1) 多相机刚性约束来消除尺度歧义;(2) camera-to-camera 和 camera-to-point 两种互补约束来提升鲁棒性?

方法详解

MGSfM 基于 GLOMAP 构建,输入 COLMAP 数据库,输出 COLMAP 兼容的稀疏重建结果。核心包含两个阶段:

1. 解耦旋转平均(Decoupled Multi-camera Rotation Averaging, DMRA)

传统旋转平均将所有相机的旋转统一求解,但多相机系统中同一刚体单元内部相机的相对旋转应保持一致。DMRA 采用分层策略:

  1. 刚体内部旋转估计:首先利用冗余的多帧观测,通过中值旋转平均(Median Rotation Averaging)鲁棒地估计同一刚体单元内各相机之间的相对旋转 \(\{R_{ij}^{rig}\}\)
  2. 全局刚体旋转估计:将每个多相机单元视为一个刚体节点,利用步骤 1 的结果将所有相机的相对旋转转换为刚体单元之间的相对旋转,再进行标准的全局旋转平均
  3. 反投影恢复:从全局刚体旋转和刚体内部相对旋转,恢复每个相机的全局旋转

这种解耦策略的优势在于:内部旋转估计充分利用了多帧冗余性,对外点鲁棒;全局旋转平均的问题规模大幅缩小(节点数等于刚体单元数而非相机总数)。

2. 混合平移平均(Multi-camera Geometry driven Position estimation, MGP)

平移平均是全局 SfM 的核心难点,因为相对平移仅有方向信息(无尺度),而多相机系统提供了天然的尺度约束。MGP 融合两类互补约束:

Camera-to-Camera 约束(相对平移)

从两帧之间的本质矩阵分解得到的相对平移方向 \(\hat{t}_{ij}\),提供帧间运动的方向约束。在多相机系统中,同一帧的不同相机对之间形成重叠图像对,可以恢复刚体单元间的相对尺度。

Camera-to-Point 约束(Feature Tracks)

每条 feature track 将 3D 点与多个相机中心关联,提供了额外的角度约束。Feature tracks 的优势是数量多、覆盖面广,但容易受外点影响。

两阶段优化

  1. 初始化阶段:利用相对平移的 camera-to-camera 约束,通过凸的距离基目标函数求解相机位置和 3D 点的初始估计。凸优化保证收敛到全局最优,避免局部极值
  2. 精化阶段:以初始化结果为起点,构造融合 camera-to-camera 和 camera-to-point 约束的无偏非双线性角度基目标函数(unbiased non-bilinear angle-based objective),通过非线性优化精化所有相机位置和 3D 点

角度基目标函数的关键特性:

  • 无偏性:不受 3D 点到相机距离的影响,避免近距离点主导优化
  • 非双线性:相比双线性形式,计算中无需引入辅助变量,优化更高效
  • 对外点 feature tracks 具有更好的鲁棒性

3. 整体流程

  1. 特征提取与匹配(COLMAP)
  2. DMRA 估计全局旋转
  3. MGP 估计全局平移
  4. Bundle Adjustment 联合精化

实验关键数据

KITTI Odometry(室外立体相机)

方法 类型 多相机约束 关键表现
COLMAP 增量 ✗ 基线方法,尺度漂移明显
GLOMAP 全局 ✗ 误差分布均匀但整体偏大
MMA 全局 ✓ 仅用相对平移,精度优于 GLOMAP
MCSfM 增量 ✓ 精度好但速度慢
MGSfM 全局 ✓ 精度最优,速度远超增量方法
  • 在挑战性序列 08(无完整回环)上,MGSfM 的轨迹最接近 ground truth
  • 在序列 01(特征少、外点多)上,仅用 feature tracks 的方法容易陷入局部极值,MGSfM 的混合策略表现鲁棒

KITTI-360(大规模室外多相机)

  • MGSfM 速度约为 MCSfM 的 10 倍
  • 重建质量优于 COLMAP、GLOMAP 和 MMA
  • 内部相机位姿(刚体内部相对旋转和平移)的估计精度与 MCSfM 的 BA 精化结果相当,验证了 DMRA 的鲁棒性

ETH3D-SLAM(室内场景)

场景 GLOMAP AUC@0.1m MGSfM AUC@0.1m GLOMAP 时间(s) MGSfM 时间(s)
ceiling_1 18.5 59.7 240 34
desk_3 86.4 95.8 462 89
large_loop_1 70.0 87.9 250 30
motion_1 25.7 46.5 885 158
reflective_1 79.1 91.3 3239 335
repetitive 66.9 91.4 90 23

MGSfM 在所有场景上均大幅优于 GLOMAP,精度提升 10-40 个百分点,速度提升 4-10 倍。

自采数据集

  • CAMPUS(29,000+ 图像,520,000 m²):MGSfM 耗时 66 分钟 vs COLMAP 1588 分钟 vs GLOMAP 580 分钟 vs MCSfM 401 分钟。COLMAP、GLOMAP、MMA 的重建结果错误,MCSfM 有局部错误结构
  • STREET(四目相机,12,000+ 图像,500,000 m²):仅 MGSfM 正确重建了道路轨迹

消融实验

在 KITTI Odometry 上比较六种配置(仅相对平移 / 仅 feature tracks / 混合,双线性 / 非双线性):

  • 混合策略始终优于单一约束,尤其在外点多的序列上优势明显
  • 非双线性目标函数在合理初始化下,鲁棒性和精度优于双线性形式
  • MGSfM(Hybrid-Non-Bilinear)在除"仅相对平移"外的所有配置中速度最快,说明良好的初始化对效率至关重要

亮点与洞察

  1. 分层解耦的旋转平均:将多相机旋转估计拆分为刚体内部和刚体间两个层次,既利用了多帧冗余性,又减小了全局优化的问题规模,是一个优雅的工程设计
  2. 混合约束的平移平均:将 camera-to-camera(稀疏但鲁棒)和 camera-to-point(密集但易受外点影响)两类约束统一到角度基框架中,通过两阶段优化(凸初始化 + 非线性精化)兼顾鲁棒性和精度
  3. 多相机刚性约束消除尺度歧义:这是多相机系统最重要的几何先验——同一刚体上的多相机提供冗余观测,可以约束相邻帧间的相对尺度,从根本上缓解单目/立体 SfM 的尺度漂移问题
  4. 实际工程价值高:基于 GLOMAP 构建,输入输出兼容 COLMAP 生态,代码已开源,支持单相机和多相机配置

局限与展望

  1. 仅支持单一刚体配置(single rig):目前假设所有帧来自同一多相机系统,不支持多种不同相机配置混合的场景(作者在 GitHub 中提到 multi-rig 支持是未来计划)
  2. 依赖 COLMAP 的特征匹配:特征提取和匹配仍使用传统 COLMAP 流程,未集成学习型特征(如 SuperPoint + LightGlue),在纹理贫乏或重复纹理场景下匹配质量仍是瓶颈
  3. 序列式图像假设:主要针对有时序关系的序列图像设计(如自动驾驶行车序列),对无序图像集合的适用性未充分验证
  4. 室内小场景提升空间:虽然在 ETH3D-SLAM 上有不错表现,但多相机刚性约束的优势在小场景中不如大规模场景明显
  5. 缺少与端到端学习方法的对比:未与近年基于深度学习的 SfM 方法(如 DUSt3R、MASt3R)进行比较

相关工作与启发

  • COLMAP [Schönberger & Frahm, CVPR 2016]:增量式 SfM 的标准方法,精度高但速度慢
  • GLOMAP [Pan et al., ECCV 2024]:全局 SfM,MGSfM 的代码基础
  • MMA [Cui et al.]:利用多相机几何的全局平移平均,启发了 MGSfM 的混合策略
  • MCSfM:增量式多相机 SfM,在重建质量上是 MGSfM 的主要对比对象
  • HETA [Tao et al., CVPR 2024]:作者前序工作,利用 feature tracks 重新审视全局平移估计

对研究的启发:多相机系统的刚性约束思路可推广到其他多传感器融合场景;两阶段优化(凸初始化 + 非凸精化)是处理非凸优化问题的通用范式。

评分

  • 新颖性: ⭐⭐⭐⭐ — 分层解耦旋转 + 混合平移的全局框架设计有新意
  • 实验充分度: ⭐⭐⭐⭐⭐ — 多个数据集、消融实验、定量定性全面
  • 写作质量: ⭐⭐⭐⭐ — 结构清晰,公式推导完整
  • 价值: ⭐⭐⭐⭐⭐ — 代码开源,兼容 COLMAP 生态,直接可用于自动驾驶三维重建