F²SLAM:让三维模型预测进入SLAM后端,关键是这一道“门”
F²SLAM:让三维模型预测进入SLAM后端,关键是这一道“门”
内容摘要
点击“计算机视觉life”,选择“星标”机器人AI干货第一时间送达以下文章转载自智驾机器人技术前线拿一段视频重建三维场景,今天已经不算稀奇。难的是视频持续输入之
点击“计算机视觉life”,选择“星标”
机器人AI干货第一时间送达
拿一段视频重建三维场景,今天已经不算稀奇。难的是视频持续输入之后,系统既要跟得上相机运动,又要让此前估计的轨迹和地图经得起新观测的检验。
在线 SLAM 擅长前一件事:依靠相邻帧的匹配关系,边走边更新相机位置。多视图三维模型擅长后一件事的一部分:一次看更多图像,利用更宽的视角范围推断几何结构。两者放到一起,似乎就能互补。
可真正接起来时,会碰到一个问题:模型生成了一份深度、位姿或点云,SLAM 后端却未必能继续修正这份预测。子地图可以对齐,结果可以融合,但那些支撑预测的多视图证据,未必进入了后端反复求解的观测集合。
东京大学、东北大学、中国科学技术大学和萨拉戈萨大学的研究者,在 F²SLAM 中讨论的就是这个接口问题。他们把前馈模型的输出转换成稠密的“目标坐标与权重”,让这些观测与局部跟踪约束一起,进入同一个持久因子图和同一个稠密 BA 后端。
这篇论文值得读的地方,是它对“预测该怎样被 SLAM 使用”给出了清楚的系统设计。尤其是消融实验中的一个反差:去掉几何一致性门控后,Replica 上的轨迹误差从 0.0023 米变成 0.5848 米。模型能看得更远,仍不意味着每一次预测都应该被接纳。
图1|原论文 Figure 1,第2页。上方依赖局部帧间观测,中间先重建再对齐子地图,下方将两种来源的观测交给统一的因子图与 BA。
01|先看它改变了什么:从“融合结果”到“更新观测”
理解 F²SLAM,可以先把“地图状态”和“观测”分开。
地图状态是系统当前相信的几何结果,包括相机位姿、每个像素的深度,以及可能需要优化的相机内参。观测则是约束这些结果的证据:某个像素在另一帧里应该出现在哪里,这个对应关系有多可信。
如果一个前馈模型直接给出一份点云,再通过子地图对齐把它接入已有地图,系统主要处理的是两份几何结果之间的关系。F²SLAM 选择在更靠近优化器的位置接入:它把多视图推理转成像素对应观测,由后端决定怎样调整位姿和深度来满足这些观测。
这样做的意义在于,观测可以留下来。之后新的局部证据进入系统,已有状态发生变化,后端仍能用存储的目标坐标计算新的重投影误差,而不必把一次预测当作已经定稿的几何结果。
这里的“持久”也有具体范围。系统维护的是可持续更新的状态与因子机制,并不把历史上的全部边永远留在活动图里。活动因子有年龄和容量限制,退役后的观测可以保留,供后续局部 BA 按需复用。
论文将方法落在一条 RGB 视频流上。高频跟踪使用预训练的 DROID-Net;低频分支先用预训练 DINO 主干提取图像特征,再通过多视图聚合和 Flow3r 预测位姿、深度以及位移与置信度。因此,它的主要贡献是观测表示、更新机制和统一优化方式,而非从头训练一个新的三维基础模型。
02|后端只维护一份状态,两种观测说同一种“语言”
论文把待优化的状态写成:
其中,关键帧集合决定当前有哪些相机位姿和逆深度图。位姿采用世界到相机的变换;逆深度是深度的倒数。相机内参已知时保持固定,未知时与位姿、逆深度一起优化。内参的参数化为:
图中的一条有向边,表示从源关键帧到目标关键帧的对应关系。它存储的观测是:
目标坐标告诉后端:源图像中的一个像素,应该对应到目标图像的哪个位置。权重则分别作用于水平和垂直方向的重投影残差,控制这个像素对应关系在优化中的影响。
这相当于为两个分支统一接口。高频分支可以基于局部相关性产生观测,低频分支可以基于更宽的多视图上下文产生观测;到 BA 后端时,它们都表现为目标坐标和权重。
但“格式相同”只解决了接口问题,不能证明观测可靠。坐标和尺度需要一致,预测还要经过检查。F²SLAM 后面的设计,就是在处理这些更容易出错的部分。
图2|原论文 Figure 2,第3页。高频分支维护图结构,低频分支刷新已有边的观测;二者最终优化同一份位姿、逆深度和可选内参。
03|高频跟踪负责连续性,低频推理负责补充多视图证据
高频分支:先让系统稳定地跟下去
视频中相邻帧通常有较高重叠。高频分支利用相关性特征和循环更新器,频繁更新局部约束。
它并不把每一帧都存成关键帧,而是根据相对上一关键帧的平均图像运动决定是否插入。新关键帧进入之后,系统连接时间上相邻和几何上接近的帧,建立双向边,并管理活动因子的寿命与数量。
所以,高频分支同时承担两项工作:生成局部跟踪观测,以及维护因子图的拓扑结构。
它预测的是相对于当前几何重投影的坐标修正:
可以把它理解为:当前位姿和深度预测这个像素会落在某处,跟踪网络再根据图像证据,提出一个修正量。构造完成后,目标坐标在接下来的这次 BA 求解中保持固定。
低频分支:积累足够视角,再提出新观测
多视图模型计算更重,也需要足够的视角差异。低频分支不会对每一帧都运行推理,而是积累关键帧,根据累计图像运动和缓冲长度触发。
这里的运动量是图像空间中的调度信号,并非相机已经移动了多少米。默认配置采用 800 的目标运动量,最多使用 20 个关键帧作为上下文;关键帧插入的图像运动阈值为 40。
低频分支在已有活动边中选择候选,预测完整的源到目标位移,再转为目标坐标:
需要留意两种分支的区别:高频分支预测相对当前重投影的修正,低频分支预测完整位移。若把低频位移也当成修正量加到当前重投影上,就会改变论文的观测构造方式。
低频分支也不额外生成一套子地图或因子图。它使用更宽的上下文,但只刷新选中的已有边。前馈位姿和深度可以在规范对齐后初始化共享状态,后续几何优化仍由同一个 BA 完成。
04|最要紧的一步:模型很自信,也不一定能更新因子
更多图像有助于推理几何,却无法消除遮挡、弱重叠、错误匹配等问题。若一次不可靠的预测替换了原本稳定的观测,它就可能在后端中持续拉动位姿和深度,把误差扩散出去。
F²SLAM 因此为低频预测设置了状态一致性检查。
首先,用当前 SLAM 的位姿、逆深度和内参,计算源像素在目标帧中的重投影位置。再与低频分支提出的目标坐标比较:
检查并非只看一个平均误差。投影有效且预测置信度超过下限的像素组成支持集;其中,重投影误差足够小的像素被计作内点:
随后,系统把支持集平均置信度、支持比例、内点比例,以及内点平均重投影误差组合成候选帧对的接纳分数:
这个分数的直觉很直接:可信像素多、有效覆盖足够、几何一致性好,候选才更值得接纳。只有少量局部像素匹配得很好,未必能代表整个帧对可靠。
实际接纳条件还同时要求支持比例和分数过线:
通过检查之后,低频候选替换该边上原有的目标坐标和权重,并加上更新锁,避免高频分支马上把它覆盖。锁在该因子的剩余活动寿命内有效,默认配置中,接纳的低频因子会在 20 次前端更新后移除。未通过检查的候选不改变原观测。
因此,一条边在一次求解中使用的是当前存储的一份观测。系统没有在同一条边上简单叠加两份来源不同的残差,也没有无条件平均两者。
另一个容易被术语掩盖的细节是“规范对齐”。单目几何预测可能有不同的尺度和参考坐标系,前馈位姿、深度在进入共享状态前,需要与当前 SLAM 的几何规范对齐。否则,同一个场景在两种尺度下表达,直接比较就会产生系统性偏差。
这道门也有自身的边界:接纳标准依赖当前状态。若当前状态已经偏得很远,一份正确却与之差异较大的预测,也可能难以被接纳。论文没有证明该机制能解决任意严重漂移或跟踪失败;它解决的是在现有状态周围,有选择地接入低频观测的问题。
05|统一 BA 到底在优化什么?
后端先利用当前状态,把源像素从源相机坐标系变换到目标相机坐标系,再投影回图像平面:
这里的逆投影使用源像素及其逆深度。它与目标观测之间的差,就是稠密重投影残差:
按原论文公式23,统一优化目标可写为下面的形式。为方便阅读,将观测项和两项正则化分别记出:
上式中的残差沿用前面定义,仍依赖像素和当前几何状态;此处省略其参数以缩短公式。
第一项让几何重投影尽量贴近存储的目标坐标,用有效性掩码剔除无效对应,并以置信度权重和鲁棒损失控制异常观测的影响。第二项约束逆深度的空间变化。第三项用内参先验限制内参更新;标定已知时,不优化内参,也不需要这一项。
因子来自哪个分支、是否处于更新锁定状态,都属于观测管理信息,不是新增的几何优化变量。后端依然只求解同一份状态。
“统一”体现在这里:两个分支不各自维护一套结果再做折中,而是让当前接纳的观测共同约束同一份几何状态。
06|实验怎么看:Replica 很突出,其他场景要分别讨论
论文在 TUM RGB-D、7-Scenes、Replica 和 KITTI Odometry 上评估轨迹,并在 Replica 与 7-Scenes 上评估重建。
轨迹指标采用绝对轨迹误差的均方根,即 ATE RMSE,单位为米,越低越好。评估前用相似变换进行轨迹对齐:
相似变换包含尺度、旋转和平移。因此,0.002 米描述的是指定基准与对齐协议下的轨迹误差,不能直接理解为任意现场中的绝对定位误差,也不证明单目系统无需其他信息就能恢复真实物理尺度。
无标定轨迹:三个数据集平均值领先,7-Scenes 排第二
下表依据原论文表1至表4整理。每一行只比较该数据集表中列出的无标定方法。
|
|
|
|
|
|
|---|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Replica 上,从 0.030 米到 0.002 米,按表中舍入后的平均值计算,误差下降约 93.3%。这个数字很醒目,但消融表更能帮助判断提升来自哪里:基础跟踪本身已经达到 0.0027 米,完整方法为 0.0023 米。说明在这个数据集上,强局部跟踪也是结果的重要来源,不能把与其他系统的全部差距都归给低频模型。
作者也指出,Replica 的稳定光照、有限运动模糊和较小帧间运动,有利于 DROID-Net 跟踪。它是支持方法有效性的证据,却不是所有场景难度的缩影。
原论文 Table 3,第7页。已标定与无标定结果分组报告;无标定 F²SLAM 的平均 ATE 为0.002米。星号表示作者在自身硬件上复现的基线。
7-Scenes 上,F²SLAM 的平均值高于 SLAM-Former。它在 Heads、Stairs 等序列表现较好,但在 Office、Pumpkin 等序列存在差距。所以,较准确的表述是“在所列无标定方法中,三个数据集平均值领先、一个数据集第二”,而不是“全面超过现有方法”。
已标定结果:有改善,也有持平和落后
已标定配置下,F²SLAM 在 TUM 的平均 ATE 为 0.029 米,DROID-SLAM 为 0.038 米;Replica 上两者的表格平均值都为 0.003 米;7-Scenes 上 F²SLAM 为 0.053 米,略高于 DROID-SLAM 的 0.050 米。
KITTI 的差异更大。F²SLAM 从 DROID-SLAM 的 554.82 米降到 67.19 米,但仍落后于 LDSO 的 22.43 米和 DPV-SLAM++ 的 25.75 米。这些长序列的结果提醒我们,局部与多视图观测的融合,不能自动替代显式回环。
论文中 F²SLAM 的无标定平均误差在四个数据集上均低于其已标定配置。作者认为,联合优化内参可能补偿缩放、裁剪、校正或相机模型约定带来的系统性重投影偏差。这个解释不等于数据集标定有误,也不等于工程系统应该放弃准确标定。
07|重建质量:更有意思的是把缺失区域补起来
轨迹准确与地图完整并不是同一个问题。局部跟踪即使很稳,也可能对遮挡边缘、视角较少的区域或弱约束表面重建不足。
论文用重建精度误差 Acc. 和完整性误差 Comp. 分别描述表面贴合程度与覆盖情况,7-Scenes 还报告 Chamfer 距离。这些都是距离误差,越低越好;Comp. 不是“完整率”,不能把它写成百分比覆盖率。
|
|
|
|
|
|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
依据原论文表5、表6整理。Replica 与7-Scenes 的数值精度沿用原表。
Replica 上,F²SLAM 在所列方法中取得最好的平均精度误差和完整性误差。7-Scenes 上,它与 SLAM-Former 的精度误差持平,但完整性误差减半,Chamfer 距离下降约 29.6%。
这组结果比单独强调轨迹误差更能说明低频观测的价值:局部跟踪已经能维持相机运动时,更宽的多视图证据仍可能补充场景几何的约束,使表面更连续、缺失更少。
图3|原论文 Figure 3,第9页。依次为 DROID-SLAM、VGGT-SLAM、F²SLAM 和真值;框选区域用于展示缺失、伪影和表面连续性的区别。
作者说明,为公平比较,没有采用各方法特有的置信度点云过滤等后处理。读图时也应把它与表格结合:展示样例能够说明局部结构差异,但完整性提升的判断仍应以整个评估集合的指标为依据。
08|消融比排行榜更能解释:门控为什么不能省
Replica 上的消融分别拆开了前馈初始化、观测刷新、规范对齐和状态一致性门控。
|
|
|
|
|
|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
初始化和观测刷新单独使用,都能改善基础跟踪的结果。两者结合,并保留规范对齐和门控,得到这组实验中最好的整体表现。
去掉规范对齐之后,重建完整性误差从 0.0174 米增至 0.0194 米,甚至高于基础跟踪。这说明将预测放到一致的几何规范下,不能只被视作数据预处理的小事。
去掉门控的结果更直接:ATE 约为完整系统的 254 倍,重建精度和完整性也同时恶化。不可靠的多视图预测一旦进入持久观测集合,影响可能比一次错误初始化更长久。这是这组实验对门控必要性的支持,但仍限于论文报告的配置和数据集。
原论文 Table 7,第9页。可对照上方中文表格查看原始配置名称和数值。
窗口大小实验还有一个值得注意的现象。使用 4 或 8 个关键帧时,误差显著恶化;达到 12 个及以上后,结果才进入相对稳定区间。继续扩大窗口,也没有带来单调改善。
作者把小窗口失效归因于多视图支持不足:基线与视角多样性不够,对应关系和深度预测难以稳定。默认 20 帧是在轨迹、重建精度和完整性之间取平衡,不能理解为“窗口越大越好”。
图4|原论文 Figure 4,第17页。纵轴使用对数尺度,读取小窗口与其他设置的差距时需要注意这一点。
正文与附录中,也有复现时需要留意的信息空缺。接纳规则定义了评分阈值,但所给实现细节没有明确列出其取值;附录表9的 ATE 数字未清楚标注单位,与其他表格不宜直接混用。实际复现需要进一步核实这些配置。
09|走向机器人和自动驾驶,还差哪些环节?
这套接口设计值得借鉴,但原论文也留下了很明确的工程边界。
首先是回环。F²SLAM 当前没有显式回环机制。宽窗口观测能够提供超出局部帧间跟踪的几何证据,却不等同于识别已经走过的地方,并利用回环约束修正整段轨迹。KITTI 的已标定结果,已经反映出它与部分带回环方法的差距。
图5|原论文 Figure 9,第21页。展示多个 KITTI 序列的道路重建与轨迹;这些定性结果用于观察整体结构,不替代长序列误差评估。
其次是吞吐与显存。论文在 A100 40GB GPU 上报告了如下 Replica 平均运行结果:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
数据来自原论文表8,使用相同 A100 硬件。
F²SLAM 比 VGGT-SLAM 2.0 的平均吞吐约高 89.3%,但显存占用约为其 2.37 倍;与 SLAM-Former 相比,速度略低,峰值显存约少 44.2%。这是具体的速度与资源取舍。
“在线系统”描述的是边接收数据边处理的方式。A100 上约 7.4 FPS,并不证明它能在移动端或车端硬件上,以 30 FPS 连续处理输入。要判断部署可行性,还需要目标设备上的延迟分布、低频触发时的峰值开销和资源占用。
最后是复杂场景中的预测可靠性。论文指出,弱纹理、动态物体、大视角变化和尺度歧义仍可能影响前馈预测。门控能拒绝一部分不一致观测,但不等于这些场景已经被解决;当局部状态和低频预测同时不可靠时,仍需要更强的失效检测与恢复策略。
10|读完这篇,最值得带走的是一种接入方式
对做 SLAM 的研究者而言,F²SLAM 提供了一个可继续扩展的接口:只要某种模型能够输出与 BA 坐标系一致的稠密对应及权重,就有机会接入同一个几何优化后端。
但接口后面还需要完整的观测管理:什么时候运行模型,怎样对齐尺度和坐标,哪些预测能刷新现有因子,刷新后保留多久,以及下一次优化如何继续使用这些观测。
这篇论文把这些环节放到了同一套系统里。Replica 的结果说明它在有利条件下能取得很低的轨迹误差;重建实验显示它能改善覆盖与连续性;门控消融则提醒我们,预测的价值不仅取决于模型能力,也取决于系统怎样判断和使用预测。
如果准备沿着它继续做,显式回环、低频预测的可靠性校准,以及资源受限设备上的调度,都是原论文结果直接指向的问题。比起再加一个网络分支,先把新观测进入系统后的生命周期设计清楚,可能更值得花时间。
论文信息
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
| 本文仅做学术分享,如有侵权,请联系删文!
新品上新
让机器人真正走进真实场景:从“能移动”到“会认路”EDU-D360 × EDU-BOX 一体化智能机器人方案来了
“超级拓展坞”正式发布,EDU-BOX走向实际应用,让机器人从“会走”到“会干活”研发快人一步
福利优惠

推荐阅读
太夯了!机器狗导航直接省 1年工期
如何解决具身机器人感知之痛?
新品上新
让机器人真正走进真实场景:从“能移动”到“会认路”EDU-D360 × EDU-BOX 一体化智能机器人方案来了
“超级拓展坞”正式发布,EDU-BOX走向实际应用,让机器人从“会走”到“会干活”研发快人一步
福利优惠
推荐阅读