摘要
多智能体协同建图长期依赖 RGB-D 传感器,限制了其在轻量级机器人平台上的落地。MAGS-SLAM(arXiv 2605.10760)提出首个纯 RGB 多智能体 3D Gaussian Splatting SLAM 框架,核心思路是:每个智能体独立构建局部 Gaussian 子地图并发送紧凑摘要,通过 Sim(3) 位姿图优化消除单目尺度歧义,再用占用感知 Gaussian 融合合并子地图。在 ReplicaMultiagent、AriaMultiagent 和 ETH3D 三个基准上,渲染质量全面超越 RGB-D 协作方法(ETH3D 平均提升 +5 dB PSNR),追踪精度与 RGB-D 基线持平。
一、问题背景
现有方法的核心局限
当前多智能体 Gaussian SLAM(GRAND-SLAM、MAGiC-SLAM、CoMA-SLAM)均依赖 RGB-D 深度传感器,理由是:
- 尺度歧义 :单目相机无法直接获取度量深度,Gaussian 初始化坐标 μk=Tk−1π−1(u,dk)\mu_k = T_k^{-1}\pi^{-1}(u, d_k)μk=Tk−1π−1(u,dk) 中的 dkd_kdk 必须有绝对尺度
- 子地图对齐:多智能体间的坐标系融合需要度量一致的 Sim(3) 变换,深度缺失使得 RANSAC 尺度估计高度不稳定
- 融合冲突:直接合并不同智能体的 Gaussian 会引入大量重复点云,无深度辅助无法判断遮挡关系
MAGS-SLAM 的核心主张:用 Metric3D 单目深度先验替代 RGB-D,配合多层几何-外观联合验证,在不使用深度传感器的前提下实现与 RGB-D 同级的建图质量。
二、核心方法
2.1 整体框架
Agent A
单目视频
局部 Gaussian 子地图
- Metric3D 深度先验
Agent B
单目视频
局部 Gaussian 子地图
- Metric3D 深度先验
子地图摘要 S_l^a
128-D描述子 + 3D点云 + 锚帧
子地图摘要 S_l^b
128-D描述子 + 3D点云 + 锚帧
全局协同
位姿图优化
Sim3-PGBA
Sim3 校正 C_l^a
占用感知
异步 Gaussian 融合
全局一致
Gaussian 地图
系统由三个模块串联:局部单目 Gaussian SLAM (每智能体独立运行)→ 全局协同位姿图优化 (子地图间 Sim(3) 对齐)→ 占用感知异步融合(消除重叠 Gaussian)。
2.2 局部单目 Gaussian 子地图
深度耦合局部 BA
前端采用 DROID-SLAM 的稠密束调整(DBA)框架,但引入 Metric3D 单目深度先验约束尺度。局部 BA 损失为:
LBA=∑(i,j)∈E∥uij∗−π (Tijπ−1(ui,di))∥Σij2 \mathcal{L}{\mathrm{BA}} = \sum{(i,j)\in\mathcal{E}} \left\| u^*{ij} - \pi\!\left(T{ij}\pi^{-1}(u_i, d_i)\right) \right\|^2_{\Sigma_{ij}} LBA=(i,j)∈E∑ uij∗−π(Tijπ−1(ui,di)) Σij2
其中 uij∗u^*{ij}uij∗ 为精细化对应点,TijT{ij}Tij 为关键帧间相对位姿,Σij\Sigma_{ij}Σij 为协方差加权矩阵。
为与 Metric3D 深度先验 dˉkprior\bar{d}_k^{\mathrm{prior}}dˉkprior 耦合,引入联合深度-尺度调整(JDSA):
LJDSA=LBA+∑k∈V∥Bkdk−dˉkprior∥2 \mathcal{L}{\mathrm{JDSA}} = \mathcal{L}{\mathrm{BA}} + \sum_{k\in\mathcal{V}} \left\| \mathcal{B}_k d_k - \bar{d}_k^{\mathrm{prior}} \right\|^2 LJDSA=LBA+k∈V∑ Bkdk−dˉkprior 2
Bk\mathcal{B}_kBk 是每帧深度尺度系数,使网络预测深度与 DBA 优化深度在尺度上保持一致。
Gaussian 子地图初始化与优化
关键帧 kkk 的 Gaussian 中心初始化为反投影点云:
μk=Tk−1π−1(u,dk) \mu_k = T_k^{-1}\pi^{-1}(u, d_k) μk=Tk−1π−1(u,dk)
局部 Gaussian 地图优化损失包含四项:
Lmap=0.95⋅L1(I^,I)+0.25⋅L1(D^,D)+0.01⋅Lnormal+10⋅Liso \mathcal{L}{\mathrm{map}} = 0.95\cdot L_1(\hat{I}, I) + 0.25\cdot L_1(\hat{D}, D) + 0.01\cdot\mathcal{L}{\mathrm{normal}} + 10\cdot\mathcal{L}_{\mathrm{iso}} Lmap=0.95⋅L1(I^,I)+0.25⋅L1(D^,D)+0.01⋅Lnormal+10⋅Liso
| 项 | 作用 |
|---|---|
| L1(I^,I)L_1(\hat{I}, I)L1(I^,I) | 渲染图像与真实图像的光度一致性 |
| L1(D^,D)L_1(\hat{D}, D)L1(D^,D) | 渲染深度与估计深度的几何一致性 |
| Lnormal\mathcal{L}_{\mathrm{normal}}Lnormal | 法向量平滑正则化 |
| Liso\mathcal{L}_{\mathrm{iso}}Liso | Gaussian 各向同性正则化,防止退化扁椭球 |
子地图摘要编码
当关键帧数达 KmaxK_{\max}Kmax 或相机轨迹超过阈值 τmove\tau_{\mathrm{move}}τmove,当前子地图冻结并广播摘要:
Sℓa=(dℓa, Qℓa, Rℓa, [bmin,bmax]ℓa, Aℓa) \mathcal{S}\ell^a = \left(d\ell^a,\; \mathcal{Q}\ell^a,\; \mathcal{R}\ell^a,\; [b_{\min}, b_{\max}]\ell^a,\; A\ell^a\right) Sℓa=(dℓa,Qℓa,Rℓa,[bmin,bmax]ℓa,Aℓa)
- dℓad_\ell^adℓa:128 维 DROID 均值池化全局描述子(用于余弦检索)
- Qℓa\mathcal{Q}\ell^aQℓa:最多 NQN\mathcal{Q}NQ 个显著 3D 点 + 局部描述子(用于特征匹配)
- Rℓa\mathcal{R}_\ell^aRℓa:ICP 配准点云
- AℓaA_\ell^aAℓa:锚帧(位姿、图像、视差、内参)
显著性得分定义为:
σ(u)=∥∇F∥u+λa∥∇d∥u+λF∥F∥u \sigma(u) = \left\|\nabla F\right\|_u + \lambda_a\left\|\nabla d\right\|_u + \lambda_F\left\|F\right\|_u σ(u)=∥∇F∥u+λa∥∇d∥u+λF∥F∥u
2.3 全局协同位姿图优化
Sim(3) 对齐:Umeyama 算法
跨智能体子地图对应点集 {pis}↔{pit}\{p_i^s\} \leftrightarrow \{p_i^t\}{pis}↔{pit} 的 Sim(3) 估计:
Γ=1N∑i(pit−pˉt)(pis−pˉs)⊤=UΛV⊤ \Gamma = \frac{1}{N}\sum_i (p_i^t - \bar{p}^t)(p_i^s - \bar{p}^s)^\top = U\Lambda V^\top Γ=N1i∑(pit−pˉt)(pis−pˉs)⊤=UΛV⊤
R=UDV⊤,s=tr(ΛD)σs2,t=pˉt−sRpˉs R = UDV^\top, \quad s = \frac{\mathrm{tr}(\Lambda D)}{\sigma_s^2}, \quad t = \bar{p}^t - sR\bar{p}^s R=UDV⊤,s=σs2tr(ΛD),t=pˉt−sRpˉs
其中 D=diag(1,...,1,det(UV⊤))D = \mathrm{diag}(1,\ldots,1,\det(UV^\top))D=diag(1,...,1,det(UV⊤)) 保证旋转行列式为 +1+1+1。
几何-外观联合验证级联
原始 Sim(3) 估计可能因特征匹配错误退化,验证采用四级级联过滤:
- 尺度单调性检验 :Sim(3) 尺度 sss 落在单目合理区间
- ICP 精化 :fitness Φ\PhiΦ 和 RMSE ρicp\rho_{\mathrm{icp}}ρicp 满足阈值
- 空间范围检验(几何非退化性):
η=min (ext(Xinls)diag(Ps), ext(Xinlt)diag(Pt))≥τext \eta = \min\!\left(\frac{\mathrm{ext}(\mathcal{X}^s_{\mathrm{inl}})}{\mathrm{diag}(\mathcal{P}^s)},\; \frac{\mathrm{ext}(\mathcal{X}^t_{\mathrm{inl}})}{\mathrm{diag}(\mathcal{P}^t)}\right) \geq \tau_{\mathrm{ext}} η=min(diag(Ps)ext(Xinls),diag(Pt)ext(Xinlt))≥τext
拒绝内点集中在退化平面或线段的回环(ext\mathrm{ext}ext 为三轴范围,diag\mathrm{diag}diag 为包围盒对角线)。
- 光度残差验证:对齐后锚帧间的逐像素残差:
repho(u)=Isr(u)−Itgt (πtgt (Cttgt−1∘Csr,t⋅psr(u))) r_e^{\mathrm{pho}}(u) = I^{\mathrm{sr}}(u) - I^{\mathrm{tgt}}\!\left(\pi^{\mathrm{tgt}}\!\left(C_{t_{\mathrm{tgt}}}^{-1} \circ C_{\mathrm{sr},t} \cdot p^{\mathrm{sr}}(u)\right)\right) repho(u)=Isr(u)−Itgt(πtgt(Cttgt−1∘Csr,t⋅psr(u)))
全局位姿图目标函数
Lgraph ({Cℓa})=∑e∈Esmwe∥regeo∥ρ2+∑e∈Evwepho∣Ue∣∥repho∥ρ2 \mathcal{L}{\mathrm{graph}}\!\left(\{C\ell^a\}\right) = \sum_{e\in\mathcal{E}^{\mathrm{sm}}} w_e \left\|r_e^{\mathrm{geo}}\right\|^2_\rho + \sum_{e\in\mathcal{E}^v} \frac{w_e^{\mathrm{pho}}}{|\mathcal{U}e|}\left\|r_e^{\mathrm{pho}}\right\|^2\rho Lgraph({Cℓa})=e∈Esm∑we∥regeo∥ρ2+e∈Ev∑∣Ue∣wepho repho ρ2
其中几何残差 regeo=log(Me−1∘Cttgt−1∘Csr,t)∈R7r_e^{\mathrm{geo}} = \log(M_e^{-1} \circ C_{t_{\mathrm{tgt}}}^{-1} \circ C_{\mathrm{sr},t}) \in \mathbb{R}^7regeo=log(Me−1∘Cttgt−1∘Csr,t)∈R7,ρ\rhoρ 为鲁棒核函数。智能体内时序边权重 wt≫wvw^t \gg w^vwt≫wv(跨智能体验证边),保证局部一致性不被少量跨机约束破坏。
当子地图发生刚性位移 Δa,ℓ\Delta_{a,\ell}Δa,ℓ 时,边变换解析更新:
Me←{Me∘Δa,ℓ−1if a=src(e)Δa,ℓ∘Meif a=tgt(e) M_e \leftarrow \begin{cases} M_e \circ \Delta_{a,\ell}^{-1} & \text{if } a = \mathrm{src}(e) \\ \Delta_{a,\ell} \circ M_e & \text{if } a = \mathrm{tgt}(e) \end{cases} Me←{Me∘Δa,ℓ−1Δa,ℓ∘Meif a=src(e)if a=tgt(e)
2.4 占用感知异步融合
Sim(3) 下的 Gaussian 变换
Sim(3) 校正 (s,R,t)(s, R, t)(s,R,t) 作用于 Gaussian 参数:
μi′=sRμi+t,Σi′=s2RΣiR⊤,si′=ssi \mu'_i = sR\mu_i + t, \quad \Sigma'_i = s^2 R\Sigma_i R^\top, \quad s'_i = ss_i μi′=sRμi+t,Σi′=s2RΣiR⊤,si′=ssi
尺度 sss 同时作用于位置协方差和尺寸,保持 Gaussian 形状几何一致。
占用感知去重(解决重叠 Gaussian 问题)
构建两个体素网格(体素尺寸 0.10 m,64 位空间哈希索引):
Oocc=⋃Gi∈Gtgt{κ(x):x∈[μi−ksi, μi+ksi]} \mathcal{O}{\mathrm{occ}} = \bigcup{G_i\in\mathcal{G}^{\mathrm{tgt}}} \left\{\kappa(x) : x \in [\mu_i - ks_i,\; \mu_i + ks_i]\right\} Oocc=Gi∈Gtgt⋃{κ(x):x∈[μi−ksi,μi+ksi]}
Ofree=⋃u,k{κ (ck+t(rk(u)−ck)):t∈[0,1)} \mathcal{O}{\mathrm{free}} = \bigcup{u,k} \left\{\kappa\!\left(c_k + t(r_k(u) - c_k)\right) : t\in[0,1)\right\} Ofree=u,k⋃{κ(ck+t(rk(u)−ck)):t∈[0,1)}
引入的 Gaussian jjj 保留当且仅当:
κ(μj)∉OoccANDκ(μj)∉Ofree \kappa(\mu_j) \notin \mathcal{O}{\mathrm{occ}} \quad \mathrm{AND} \quad \kappa(\mu_j) \notin \mathcal{O}{\mathrm{free}} κ(μj)∈/OoccANDκ(μj)∈/Ofree
Oocc\mathcal{O}{\mathrm{occ}}Oocc 拒绝与目标智能体已有 Gaussian 重叠的点;Ofree\mathcal{O}{\mathrm{free}}Ofree 拒绝落在目标智能体空闲射线路径上的点(即已被观测为空的区域)。这是单目场景下处理重叠遮挡的核心机制。
曝光补偿与联合精化
跨智能体图像存在曝光差异,对每个关键帧引入仿射参数 (ak,bk)(a_k, b_k)(ak,bk):
I~(u)=eakI^(u)+bk \tilde{I}(u) = e^{a_k}\hat{I}(u) + b_k I~(u)=eakI^(u)+bk
精化损失:
Lrefine=1.75⋅L1(I~,I)+0.2⋅(1−SSIM)+0.25⋅L1(D^,Dˉ)+10⋅Lnormal \mathcal{L}{\mathrm{refine}} = 1.75\cdot L_1(\tilde{I}, I) + 0.2\cdot(1-\mathrm{SSIM}) + 0.25\cdot L_1(\hat{D}, \bar{D}) + 10\cdot\mathcal{L}{\mathrm{normal}} Lrefine=1.75⋅L1(I~,I)+0.2⋅(1−SSIM)+0.25⋅L1(D^,Dˉ)+10⋅Lnormal
精化运行 2,000 次迭代,学习率为各智能体局部阶段的一半,不透明度剪枝阈值 0.005。
三、实验分析
追踪精度(ATE RMSE,单位 cm)
ReplicaMultiagent --- 与 RGB-D 基线对比
| 场景 | MAGS-SLAM | GRAND-SLAM (RGB-D) | MAGiC-SLAM (RGB-D) |
|---|---|---|---|
| Office-0 | 0.29 | 0.26 | 0.27 |
| Apartment-0 | 0.46 | --- | 0.16 |
| Apartment-1 | 0.46 | --- | --- |
| Apartment-2 | 0.31 | 0.18 | --- |
MAGS-SLAM 以纯单目输入,在多数场景接近甚至超越 RGB-D 方法追踪精度。
AriaMultiagent(三智能体)
| 场景 | MAGS-SLAM | MAGiC-SLAM (RGB-D) | MNE-SLAM (RGB-D) |
|---|---|---|---|
| Room-0 | 0.86 | 1.15 | --- |
| Room-1 | 0.54 | --- | 0.95 |
三智能体协同下,MAGS-SLAM 优于所有 RGB-D 基线。
渲染质量(PSNR↑ / SSIM↑ / LPIPS↓)
ReplicaMultiagent
| 场景 | MAGS-SLAM | GRAND-SLAM |
|---|---|---|
| Office-0 | 43.24 / 0.99 / 0.02 | 43.12 / --- / --- |
| Apartment-0 | 42.83 / 0.99 / 0.02 | --- / --- / --- |
| Apartment-1 | 36.28 / 0.96 / 0.06 | --- / --- / --- |
| Apartment-2 | 38.99 / 0.98 / 0.04 | 39.46 / --- / --- |
ETH3D(纯单目,全面超越 RGB-D 基线 MAC-Ego3D)
| 场景 | MAGS-SLAM PSNR | MAC-Ego3D PSNR | 提升 |
|---|---|---|---|
| Sofa | 30.67 | 27.09 | +3.58 dB |
| Table | 27.05 | 20.46 | +6.59 dB |
| Plant-Scene | 31.32 | 26.02 | +5.30 dB |
| Mannequin | 31.99 | 27.20 | +4.79 dB |
| Planar | 22.68 | 17.04 | +5.64 dB |
ETH3D 上平均提升超过 5 dB,表明占用感知融合 + Metric3D 先验组合效果显著。
消融实验(ReplicaMultiagent 均值)
| 去除的组件 | PSNR ↑ | SSIM ↑ | LPIPS ↓ | 代价 |
|---|---|---|---|---|
| 完整系统 | 40.33 | 0.981 | 0.035 | --- |
| 去掉 Sim(3)-PGBA 更新 | 36.32 | 0.963 | 0.057 | -4.01 dB |
| 去掉光度残差 | 37.88 | 0.967 | 0.045 | -2.45 dB |
| 去掉占用感知融合 | 33.16 | 0.941 | 0.113 | -7.17 dB |
| 去掉位姿-Gaussian 联合精化 | 38.94 | 0.974 | 0.041 | -1.39 dB |
| 将 Sim(3) 退化为 SE(3) | 18.61 | 0.718 | 0.390 | -21.72 dB |
两个关键结论:
- 占用感知融合是渲染质量最重要的组件(-7.17 dB),没有它 Gaussian 重叠导致严重伪影
- 尺度估计(Sim(3) vs SE(3))是决定性因素(-21.72 dB),单目场景中忽略尺度几乎完全失效
小结
三个核心创新点:
-
Metric3D + JDSA 联合深度-尺度约束:将单目深度先验嵌入局部 BA,使 Gaussian 初始化具有度量尺度,是整个系统可行的前提(消融:去掉 Sim(3) 降 21.72 dB)
-
四级几何-外观验证级联 :空间范围检验 η≥τext\eta \geq \tau_{\mathrm{ext}}η≥τext 专门拒绝退化平面回环,光度残差验证筛掉几何正确但外观不一致的伪回环,使跨机约束高度可靠
-
双占用网格 Gaussian 去重 :Oocc\mathcal{O}{\mathrm{occ}}Oocc(已占据体素)+ Ofree\mathcal{O}{\mathrm{free}}Ofree(已空闲射线)的联合过滤,在无深度传感器条件下精确判断 Gaussian 是否冗余
局限性与个人判断:
- 对 Metric3D 先验质量强依赖,纹理贫乏或反光场景深度先验失效时系统会退化
- 子地图冻结策略(固定 KmaxK_{\max}Kmax 或 τmove\tau_{\mathrm{move}}τmove)在快速运动场景下可能触发过早冻结,影响局部精度
- 占用网格体素尺寸 0.10 m 在大尺度室外场景或细粒度物体(直径 < 0.1 m)上存在分辨率瓶颈
- 目前未公开代码,实际工程化的 Sim(3)-PGBA 实时性有待验证(论文未报告帧率)
总体而言,MAGS-SLAM 在"纯 RGB 多智能体建图"这一高难度设定下给出了完整的系统级答案,ETH3D 上 +5 dB 的提升幅度说明渲染质量已超越同类 RGB-D 方法,具备较强的实用价值。