SLAM-Former: Putting SLAM into One Transformer¶
会议: ECCV2026
论文: ECCV 原文
领域: 3D 视觉
关键词: 单目稠密 SLAM、全局一致性、前后端协作、KV 缓存、token 剪枝
一句话总结¶
SLAM-Former 用共享权重的 Transformer 交替执行因果增量建图与全局地图校正,并将校正后的 KV 缓存反馈给前端,在无需相机标定的设置下达到 TUM RGB-D 平均 ATE 0.039 m 和 7-Scenes 重建 Chamfer 0.027 m。
研究背景与动机¶
单目稠密同时定位与建图(SLAM)不仅要估计相机走到哪里,还要让不同时间看到的墙壁、桌面等表面落在一致的三维位置。 DUSt3R、MASt3R 和 VGGT 等几何基础模型提高了从图像直接预测几何的能力,但把局部预测拼成长期地图仍不容易。 MASt3R-SLAM 和 VGGT-SLAM 通过图像对或子地图建立几何,再用外部优化连接这些局部结果;局部预测的形变、尺度差异和跨帧不一致仍可能留下重复表面。
另一条路线是让模型按时间顺序接收图像,通过循环状态或 KV 缓存保存历史。 StreamVGGT 等方法避免每来一帧就重算全部输入,却通常不重新估计过去已经生成的地图。 当早期几何有偏差时,后续帧一直依赖带偏差的历史状态,因而“能够持续输出”并不等于“能在获得新证据后纠正过去”。 传统 SLAM 的后端恰好承担这一职责,但作者希望把它纳入同一个可学习模型,而不是继续叠加独立回环检测与图优化模块。
SLAM-Former 因此保留前端和后端的职能划分,却让两者共享 Transformer 权重,以地图 token 和注意力缓存作为交接内容。 前端给后端提供带有顺序信息的几何初值,后端则修正历史表示,并改变前端下一步所依赖的记忆。 核心 idea:不仅更新地图的输出,还把全局校正写回前端的 KV 缓存,让后续增量预测从已经纠偏的历史继续出发。
方法详解¶
整体框架¶
输入是连续单目 RGB 图像,输出是各关键帧的局部点图、置信度和相机位姿,并由这些结果组成稠密地图。 图像先编码成 patch token,附加 register token;共享骨干交替聚合帧内信息与跨帧信息,任务头再解码几何和位姿。 “一个 Transformer”指前后端共享同一模型,并不是每帧只调用一次网络,也不是取消关键帧选择和周期调度。
系统先进行因果前端增量建图,再周期性执行全局后端缓存反馈;KV 多样性剪枝减少后端注意力和随后前端缓存访问的负担。 训练时用三种注意力模式匹配这些运行状态,监督信号不作为推理输入。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
A["连续 RGB 图像<br/>图像编码"] --> B["因果前端增量建图"]
B -->|每 10 个关键帧的地图 token| C["全局后端缓存反馈"]
C --> D["KV 多样性剪枝"]
D -->|刷新历史 KV| B
B --> E["任务头解码<br/>局部点图与位姿"]
D --> E
S["训练监督<br/>深度、点图、相机"] -.-> B
S -.-> C
图中的剪枝发生在后端注意力计算中,并把相应 KV 留给后续前端;箭头是协作与缓存流,不表示先完成全部后端计算再开始剪枝。 完整 KV 是默认评测设置,启用剪枝不会删除需要输出几何的查询位置。
关键设计¶
1. 因果前端增量建图
每来一帧,系统先把它与最近的关键帧成对输入同一 Transformer,用全注意力预测位姿,再根据相对运动决定是否保留。 实际实现采用平移阈值 0.1;这一步不读取全部历史 KV,因此不必为大量相邻、冗余的图像付出完整建图成本。 前两个关键帧联合初始化;此后每个新关键帧读取历史关键帧的跨帧注意力 KV,产生自己的地图 token 和新 KV,再追加到状态中。 它只依赖已经看到的帧,所以满足在线处理的因果性;代价是过去的错误不会仅靠这个步骤被重新修正。
地图 token 与 KV 缓存不能混为一谈:前者是骨干输出的隐式几何表示,可以送入任务头解码,也可以交给后端继续处理;后者是各层注意力的键和值,用于让新帧复用历史信息。 前端不需要在每步重新编码并运行全部旧图像,因而比反复执行全序列模型更适合流式输入。 模型预测每帧自身坐标系中的局部点图,而不是直接要求每个点都处于固定世界坐标系;跨帧一致性由位姿、后端交互以及训练中的几何约束共同建立。
2. 全局后端缓存反馈
每积累 10 个关键帧,后端把已有地图 token 作为输入,通过全注意力让历史帧之间进行双向交互,并在一次前向传播中重新估计地图表示。 与仅对新帧做因果注意力不同,旧帧此时能够利用后来出现的视角;作者借此承担传统回环检测和全局优化的功能,而不显式求解位姿图。 这是一种学习到的全局校正机制,不等于证明注意力必然找对回环或满足所有几何约束。
更关键的是,后端产生的 KV 会替换前端保存的对应历史 KV。 如果只刷新输出点云却继续沿用旧缓存,新帧依然会参考错误的历史;缓存反馈把纠偏真正接入后续推理。 反过来,后端接收的不是互不相关的原始图像,而是前端按顺序形成的地图 token,里面已经包含增量定位和建图的上下文。 为使同一套权重既能处理图像 token 又能处理地图 token,训练专门覆盖纯前端、前后端混合与纯后端三种状态,而非只在测试时临时拼接两种注意力。
3. KV 多样性剪枝
关键帧不断增加会同时放大缓存容量和跨帧注意力成本,但不能简单删除 patch token:对应的稠密几何输出也可能随之消失。 作者借鉴 DivPrune,在每个关键帧的非 register patch token 中,以余弦距离衡量差异,贪心挑选能够保持较大最小两两距离的子集。 它追求的是保留不同内容的代表,而不是把有限预算都给相似区域;两两距离预计算对每帧 patch 数的复杂度是平方级。
保留集合确定后,只裁剪键和值,查询保持完整,原文可清楚辨认的关系是:
因此每个原有查询位置仍能汇聚保留的上下文并输出几何,减少的是“可被检索的记忆”,而非“需要预测的地图位置”。 若关键帧数为 \(n\)、固定保留比例为 \(\gamma\),论文将主导注意力成本表述为前端 \(O(\gamma n)\)、后端 \(O(\gamma n^2)\);这减少常数,但没有把固定比例后端变成线性算法。 让缓存池随序列按对数或平方根增长时,后端对应 \(O(n\log n)\) 或 \(O(n^{1.5})\);这些是注意力规模分析,不能直接当作整个系统的实测加速倍数。
一个完整示例¶
设相机在房间里移动,稍后再次看到先前拍过的墙面;这是机制示例,不是论文新增的实验序列。 开始时,前两个关键帧建立地图 token 和 KV;第 3 个关键帧到来后,先通过帧对位姿检查,再利用已有 KV 生成新的局部点图和位姿。 到第 10 个关键帧触发后端时,所有已积累的地图 token 共同参与校正,早先墙面的位置可以受新视角影响。
若采用 25% KV 保留比例,每帧仍保留全部查询,但只保留选中的四分之一 patch KV 来参与相应注意力。 后端刷新前端历史缓存后,第 11 个关键帧依赖的是校正后的历史,而不是最初的漂移状态。 这一流程说明它与“视频结束后再优化一次”的区别:后端的收益会进入下一轮在线预测。
损失函数 / 训练策略¶
每次训练迭代顺序执行三种模式并共享权重:Mode 1 用因果注意力模拟前端累计 KV;Mode 2 对历史地图 token 用全注意力、对新图像用因果注意力,模拟后端 KV 与前端新 KV 混用;Mode 3 对地图 token 使用全注意力,训练纯后端校正。 Mode 3 的地图 token 可以来自不同运行或缓存状态,让后端学习处理带有不同误差的前端表示。 Mode 2 尤其重要,因为“校正过的历史加上尚未校正的新帧”正是周期式后端运行间隙的真实状态。
各模式都监督深度、点图和相机,清楚可读的总目标为:
深度取自局部点图的深度分量;深度与点图监督包含置信度加权和空间梯度约束。 点图监督先利用预测位姿把局部点图对齐到第一帧;相机监督使用尺度处理后的相对位姿与 Huber 损失,尺度估计沿用 Pi3 的做法。 缓存中的式 (4) 至式 (6) 存在运算符缺失,故这里不重建其精确细项公式,也不猜测置信度项的符号和系数。
模型以 Pi3 权重初始化,共有 36 层帧内及全局注意力 Transformer,冻结图像编码器和相机头。 训练 10 个 epoch,batch size 为 32,每个 batch 只含 12 帧;测试则处理更长序列。 采用 AdamW,学习率 \(10^{-5}\) 与余弦调度,设置 \(\lambda=100\)、\(\beta=10\),后端间隔 \(T=10\)。 训练数据包括 ARKitScenes、ScanNet、ScanNet++、HyperSim、BlendedMVS、MegaDepth 和 MVS-Synth;32 张 A100 上训练耗时 11 小时,评测使用单张 RTX 4090。
实验关键数据¶
主实验¶
ATE 是绝对轨迹误差,这里报告其 RMSE;Acc. 衡量预测表面到真实表面的距离,Complet. 衡量真实表面被重建覆盖的距离,Chamfer 汇总双向距离,以下均越低越好。 表中只比较无需标定的方法,数值单位均为 m;主实验默认保留全部 KV。
| 数据集与指标 | SLAM-Former | 对比方法 | 对比值 | 原文来源 |
|---|---|---|---|---|
| TUM RGB-D 平均 ATE | 0.039 | ViSTA-SLAM | 0.052 | 表 1 |
| TUM RGB-D 平均 ATE | 0.039 | VGGT-SLAM | 0.053 | 表 1 |
| 7-Scenes 平均 ATE | 0.042 | MASt3R-SLAM | 0.066 | 表 2 |
| Replica 平均 ATE | 0.030 | EC3R-SLAM | 0.041 | 表 3 |
| 7-Scenes Acc. | 0.017 | EC3R-SLAM | 0.025 | 表 4 |
| 7-Scenes Complet. | 0.037 | EC3R-SLAM | 0.054 | 表 4 |
| 7-Scenes Chamfer | 0.027 | EC3R-SLAM | 0.040 | 表 4 |
7-Scenes Acc. 从 0.025 降至 0.017,对比值作分母时相对降低 32.0%;不能把原文“对手误差约高 47%”改写为“本文降低 47%”。 定位也不是对所有标定方法占优:TUM 表 1 的标定 MASt3R-SLAM 为 0.030,低于本文 0.039;Replica 的正文也明确承认落后于标定 DROID-SLAM。 原文表 4 的 ViSTA-SLAM ATE 为 0.056,而表 2 为 0.055,这个差异不作自行统一。
消融实验¶
表 6 直接比较有无后端,TUM RGB-D 的 ATE RMSE 单位为 m。
| 配置 | 平均 | room | floor | desk | 说明 |
|---|---|---|---|---|---|
| 仅前端 | 0.134 | 0.547 | 0.264 | 0.041 | 只做因果增量预测 |
| 前端 + 后端 | 0.039 | 0.082 | 0.079 | 0.018 | 全局校正并反馈 KV |
平均 ATE 相对降低约 70.9%,room 的改善尤其明显,符合长序列累积漂移需要历史校正的动机。 但这组消融一起引入了后端校正和 KV 反馈,不能据此分别量化两者的独立贡献,也没有单独证明 Mode 2 的收益。
表 7 进一步分析 7-Scenes 上的缓存压缩,所有误差单位仍为 m。
| KV 保留设置 | ATE | Acc. | Complet. | Chamfer |
|---|---|---|---|---|
| 100% | 0.042 | 0.017 | 0.036 | 0.026 |
| 50% | 0.041 | 0.017 | 0.036 | 0.027 |
| 25% | 0.042 | 0.018 | 0.037 | 0.027 |
| 12.5% | 0.042 | 0.020 | 0.038 | 0.029 |
| 6.25% | 0.055 | 0.026 | 0.042 | 0.034 |
| log KV pool | 0.042 | 0.017 | 0.037 | 0.027 |
| sqrt KV pool | 0.041 | 0.017 | 0.037 | 0.027 |
原文表 7 的 100% 行为 Complet. 0.036、Chamfer 0.026,与表 4 的 0.037、0.027 略有不同;这里按各表原值保留,不把两次报告视为完全相同的基准。
关键发现¶
- 后端不仅改善最终表面,也显著降低轨迹误差;表 6 是支持前后端协作最直接的定量证据。
- 保留 12.5% KV 时 ATE 仍为 0.042,但 Acc. 已从 0.017 增至 0.020,因此“定位几乎不变”不等于“所有几何指标不变”。
- 6.25% 时多项指标明显恶化;对数与平方根缓存池则维持较接近完整 KV 的结果,显示固定比例不是唯一选择。
亮点与洞察¶
- 把后端校正写入注意力记忆,而不只修正最终预测。这让“地图优化”能够影响未来的感知过程,是比单次离线重建更接近 SLAM 的协作方式。
- 用三种注意力配置训练同一个模型,覆盖周期运行中不同来源的缓存状态。可迁移的思路是显式训练模块交接时的混合状态,而不是默认单独训练的功能自然兼容。
- 完整查询与稀疏 KV 分离,保住稠密输出位置。这种压缩方式适合“输出必须密集,但可供检索的历史高度冗余”的视觉任务。
局限与展望¶
- 作者明确指出长序列存在时延和显存扩展问题,图 7 的曲线终点对应内存限制。固定比例剪枝仍保留后端平方级注意力,不能据此宣称无限长实时 SLAM。
- 三套主要定量基准都是室内场景;本文证据不足以推出室外大尺度、强动态物体或严重遮挡条件下的可靠性,这是评测范围的限制。
- 表 6 没有拆分缓存反馈、后端重估和三模式训练,后端间隔与关键帧阈值也缺少独立敏感性分析。后续应在相同预算下分别控制这些因素。
- 全注意力承担回环功能是作者的机制解释,本文没有单独报告回环检测准确率或失败恢复能力。更接近部署的评测应检查错误回环、长时间失跟和动态场景下的恢复。
相关工作与启发¶
- vs MASt3R-SLAM / VGGT-SLAM:它们以几何基础模型提供图像对或子地图预测,再用外部几何优化连接;本文用共享 Transformer 直接更新全局地图 token,并反馈到后续前端。传统方法仍可能在某些标定定位设置下更准确。
- vs StreamVGGT / CUT3R:流式模型擅长利用历史生成新结果,但不具备本文这种周期性全局重估与缓存刷新机制。本文最重要的增量是让历史能够被新证据改写。
- vs Pi3:Pi3 提供预训练几何能力,本文增加顺序式前端与后端协作。图 6 给出定性比较,但正文称 ofkt0、图注称 ofkt1,序列标识不一致,因此不据此作精确的序列级定量结论。
- 可延伸方向:根据地图不一致程度自适应决定后端触发时机和缓存预算,可能比固定每 10 个关键帧更新更有效;这是笔记提出的研究方向,不是原文已验证结果。
评分¶
- 新颖性: 4/5。共享 Transformer 的前后端闭环和 KV 反馈具有明确系统创新,但建立在成熟几何基础模型与注意力机制之上。
- 实验充分度: 4/5。覆盖三套定位基准、重建和剪枝分析,但缺少更细粒度协作消融及室外长期验证。
- 写作质量: 4/5。架构与训练模式对应清楚,少数跨表数值与图文序列标识需谨慎读取。
- 价值: 4/5。为从流式几何预测走向可回溯校正的神经 SLAM 提供了具体、可借鉴的系统设计。