【大模型-SLAM】LingBot-Map:Geometric Context Transformer for Streaming 3D Reconstruction
背景介绍
LingBot-Depth 负责深度感知。
LingBot-VLA是具身大模型,在上海交大GM-100评测中刷新了真机成功率纪录。
LingBot-World对标Google Genie 3,16 FPS实时交互。
LingBot-VA首次实现自回归视频-动作联合建模,真机任务成功率比Pi0.5平均提升20%。
LingBot-Map的是SLAM
看清世界(Depth)→ 理解空间(Map)→ 模拟物理(World)→ 决策行动(VLA/VA)
参考链接:Hugging Face:https://huggingface.co/robbyant/lingbot-map
ModelScope:https://www.modelscope.cn/models/Robbyant/lingbot-map
GitHub:https://github.com/Robbyant/lingbot-map
Paper:https://arxiv.org/abs/2604.14141
Homepage:https://technology.robbyant.com/lingbot-map
摘要
流式 3D 重建旨在从视频流中恢复 3D 信息,例如相机位姿和点云。
我们提出了 LingBot-Map,这是一个基于几何上下文转换器 (geometric context transformer ,GCT) 架构的前馈 3D 基础模型,用于从流数据中重建场景。
LingBot-Map 的一个关键特性在于其精心设计的注意力机制,该机制集成了锚点上下文、位姿参考窗口和轨迹记忆,分别用于解决:
- 坐标定位coordinate grounding、
- 密集几何线索dense geometric cues
- 和长程漂移校正问题。
这种设计在保持丰富的几何上下文的同时,保持了流状态的紧凑性,从而能够在超过 10,000 帧的长序列上,对 518 × 378 分辨率的输入数据实现约 20 FPS 的稳定高效推理。
1、Introduction
近年来,3D基础模型发展迅速,例如VGGT[75]和Depth Anything3[37]等方法,这些成果大多局限于离线场景.
作者认为:SLAM 应该有选择地保留最重要的内容,而不仅仅是保留多少内容,并且这种选择应该基于几何先验,但要从数据中端到端地学习。
为此,我们引入了 LingBot-Map,这是一个基于几何上下文注意力机制(Geometric Context Attention,GCA)构建的流式基础模型。
GCA 在统一的注意力框架内实现了这一原则。该设计借鉴了经典 SLAM 系统的一个关键洞见:鲁棒的实时重建需要维护不同类型的空间上下文——用于坐标定位的参考系、用于密集局部几何估计的局部窗口以及用于漂移校正的全局地图。
因此,GCA 显式地维护了三种互补的上下文:用于坐标和尺度定位的锚定上下文、保留近期帧密集视觉特征以进行精确局部几何估计的局部姿态参考窗口,以及将完整的观测历史压缩成紧凑的逐帧标记以实现全局一致性的轨迹记忆。
Accordingly, GCA explicitly maintains three complementary types of context: an anchor context for coordinate and scale grounding, a local pose-reference window that retains dense visual features from recent frames for accurate local geometry estimation, and a trajectory memory that compresses the full observation history into compact per-frame tokens for global consistency.
虽然上下文结构源于经典的重建原则,但 GCA 用端到端学习的注意力机制取代了手工设计的优化,该机制能够自适应地对每种上下文类型中的信息进行加权、编码和压缩。这种结构化但可学习的表示方法确保了即使在任意长的序列上也能进行稳定高效的推理,每帧的内存和计算量几乎是恒定的,因为局部窗口之外的上下文被压缩成紧凑的每帧标记。
LingBot-Map 在包括Oxford Spires、7-Scenes、Tanks and Temples和ETH3D在内的综合基准数据集上,在相机姿态估计和密集3D重建质量方面,LingBot-Map均优于现有的流式训练方法。
我们的贡献总结如下:
• 我们提出了 LingBot-Map,这是一个基于几何上下文注意力机制 (GCA) 的流式 3D 基础模型。它维护三种互补的上下文类型——锚框、姿态参考窗口和轨迹记忆——以实现高效且一致的长序列流式推理。
• 我们提出了一种基于渐进式训练和上下文并行的高效训练方案,并采用相对损失函数来实现稳定的长序列优化。
• 我们证明 LingBot-Map 在多个基准测试(Oxford Spires、Tanks and Temples、ETH3D 和 7-Scenes)上取得了最先进的性能,在重建质量和推理速度方面显著优于现有的流式方法。
2 Related Work
传统三维重建(Traditional 3D Reconstruction.)。传统的三维重建方法主要包括运动结构重建(SfM)[48, 56, 62]、同步定位与建图(SLAM)[4, 44, 45] 和多视图立体视觉(MVS)[15, 57, 91]。SfM 和 SLAM 从多视图观测中恢复相机位姿和场景几何结构,其中 SfM 通常离线处理无序图像集,而 SLAM 在线处理视频流。这些系统通常复杂且高度模块化,其核心是基于优化的光束法平差进行相机位姿估计。相比之下,MVS 侧重于在已知相机位姿的情况下进行密集重建。过去十年中,许多研究探索了用深度学习模块替换这些流程中的各个组件,特别是用于特征提取 [12] 和匹配 [54, 65]。最近,一些方法尝试以端到端的方式实现 SfM、SLAM 或 MVS,例如 VGGTSfM [76]、DROID-SLAM [69] 和 MVSNet [91, 92]。
3D 基础模型(3D Foundation Model)。DUSt3R [81] 代表了前馈式 3D 重建的范式转变。给定一组未调整姿态的图像,DUSt3R 可以直接回归出场景的密集 3D 重建模型,而无需显式的几何建模。然而,DUSt3R [81] 仅支持双视图输入,并且需要通过优化来对齐所有结果以适应更多视图。为了支持两个以上的视图并提高重建质量,VGGT [75] 使用了一种包含跨视图注意力层的先进 Transformer 架构,在标准基准测试中取得了最先进的性能。至关重要的是,VGGT 证明,利用大规模数据和强大的模型架构可以显著提高重建质量。在此基础上,后续众多研究工作在多个维度上推进了前馈重建技术的发展,包括提高重建精度[37, 75, 83, 100]、增强计算效率[39, 90]、处理动态场景[6, 13, 24, 40, 64, 74, 86, 98]、实现新型视图合成[8, 17, 22, 29, 36, 61, 67, 78, 88, 89, 94]以及融合多模态输入[21, 25, 41]。然而,这些方法主要针对离线处理,并未解决流式三维重建特有的挑战,例如如何保持长期一致性以及如何在长时间序列中管理计算资源。
流式三维重建(Streaming 3D Reconstruction. )。受在线应用需求的驱动,流式三维重建大致可分为混合式SLAM方法和端到端前馈方法。混合方法通常将三维基础模型与传统的SLAM流程相结合[11, 42, 46],旨在充分利用两种范式的优势。然而,这些方法通常依赖于手工设计的组件和精细的参数调优来实现最佳性能,缺乏完全端到端学习框架的优势。相比之下,近期的前馈流式方法[28, 33, 73, 80, 103]通过采用基于循环神经网络(RNN)的架构或将缓存机制与因果注意力机制相结合,将离线范式扩展到流式场景。具体而言,CUT3R[79]维护一个持久状态,并通过RNN架构进行循环更新。为了缓解状态遗忘,TTT3R [7] 采用了测试时训练策略。同时,StreamVGGT [103]、Stream3R [28] 和 Wint3R [33] 则采用了更先进的 VGGT 架构,并结合了因果注意力机制和缓存策略。尽管取得了这些进展,现有的流式方法在处理长输入序列和复杂环境时,往往难以保持性能。常见的故障模式包括轨迹漂移显著、重建精度下降以及内存和计算需求急剧增长。我们认为这些限制源于缺乏一种有效的机制来在流式处理过程中保留关键的几何上下文信息。与此同时,LoGeR [99]、Scal3R [87] 和 ZipMap [23] 探索了将 3D 重建扩展到长序列的方法。LoGeR 结合了用于局部对齐的滑动窗口注意力机制和用于全局一致性的测试时训练 (TTT) 机制,而 Scal3R 则扩展了 TTT 范式,引入了分块和视觉位置识别技术,以处理大规模场景。 ZipMap进一步利用TTT层将整个图像集合压缩成一个紧凑的隐藏场景状态,实现了线性时间双向重建。然而,这些方法依赖于测试时参数更新,这引入了额外的计算开销,并限制了其实时应用。相比之下,我们的LingBot-Map是一个纯粹的前馈流模型,无需测试时训练或后优化,通过紧凑的几何上下文设计实现了实时推理。
3 Method
3.1 概述
给定一个连续的图像流 I = {I1, I2, …},LingBot-Map 会在每帧新帧 It 到达时立即进行处理,并仅使用当前帧和之前观测到的帧 {I1, …, It} 来估计其相机位姿ˆPt 和深度图ˆDt,而无需访问未来的观测数据。
我们设计了一种流式变体,其中每一帧都由 ViT 骨干网络编码,并交替经过帧级注意力机制和几何上下文注意力机制 (GCA) 层进行处理,之后由特定任务的头部预测相机位姿和深度图(参见图 4)。
实现高效流式推理的关键在于 GCA,它维护了三个互补的几何上下文:锚框、位姿参考窗口和轨迹记忆,从而在长期一致性和紧凑状态表示之间取得平衡。(anchor, pose-reference window, and trajectory memory, )
我们将在 3.2 节详细介绍 GCA,并在 3.3 节详细介绍整体架构和训练策略。 3.3,以及第 3.4 节中的推理管道。
3.2 Geometric Context Attention
流式三维重建的核心挑战在于几何上下文的管理:模型必须保留足够的长程上下文以确保全局一致性,同时保持其流式状态足够紧凑以进行高效推理。
经典的SLAM和SfM系统通过将流式状态分解为三种不同的空间上下文类型,为这种权衡提供了结构性的见解,每种上下文都发挥着互补的作用:用于坐标和尺度定位的参考系、用于密集几何估计的近期观测局部窗口以及用于校正累积漂移的全局地图。
基于此原理,GCA将流式上下文分解为三种互补的学习注意力机制,用端到端可微分注意力取代了手工设计的优化:锚点上下文、局部姿态参考窗口和轨迹记忆。我们将在下文中分别描述这些机制。
Anchor Context.
单目重建本质上存在尺度模糊性,因此必须在流式传输开始前建立一致的坐标系和绝对尺度。
诸如 DUSt3R [81] 和 VGGT [75] 等离线方法通过相对于全局点云进行归一化来解决这个问题,但这需要访问所有帧,因此与因果流式推理不兼容。
我们取而代之的是,将前 n 幅图像(n ≪ N)指定为锚帧,并用它们来确定尺度。我们对这些帧应用完全注意力机制,并用可学习的锚点标记来增强它们的图像标记,使网络能够识别它们并将其与后续的流式传输帧区分开来。初始化后,这些帧的锚点标记和图像标记被保留在注意力上下文中,所有后续帧都将它们作为固定的参考进行关注。
在训练过程中,我们将所有真实标注归一化到从锚框导出的规范尺度:我们计算 s = 作为真实点云 X¯anchor 到坐标原点的平均距离,并将所有真实深度和相机平移除以 s。
Local Pose-Reference Window.
精确地注册每一帧新图像需要与附近观测图像有密集的视觉重叠,而仅凭远处的锚帧无法提供这种上下文信息。为了解决这个问题,我们在推理过程中维护一个包含最近 k 帧的滑动窗口,并保留它们的完整图像标记。这种密集的局部上下文信息提供了来自直接视觉连接的重要相对姿态线索,使网络能够将新帧精确地注册到全局轨迹中。为了进一步增强局部窗口内的几何一致性,我们在该窗口内的帧之间应用了相对姿态损失,具体细节见第 3.3 节。
Trajectory Memory.
锚点上下文和局部窗口共同提供了一个固定的全局参考和密集的近期观测数据,但由于缺乏中间帧的记录,姿态误差会在长时间序列中不断累积,导致估计轨迹发生漂移。为了缓解这个问题,我们保留了一个紧凑的轨迹上下文,它概括了完整的观测历史。具体来说,对于既不在锚点集内也不在活动滑动窗口内的帧,我们仅保留相机、锚点和注册标记(即每帧 6 个上下文标记),同时丢弃占用大量内存的图像标记(每帧 M 个标记)。此外,我们将视频时间位置编码 [72] 融入到保留的标记中,从而对全局轨迹施加时间顺序。通过维护这种轻量级但时间有序的所有历史观测记录,轨迹记忆提供了长程线索,有助于校正累积的漂移并确保全局一致性。
注意力掩码设计
注意力掩码设计。图 3 比较了用于流式推理的不同注意力模式。全局注意力 (a) 关注所有帧,但无法以流式方式运行。因果注意力 (b) 支持流式运行,但会导致内存和计算量随序列长度线性增长。滑动窗口注意力 © 限制了计算量,但牺牲了长期上下文信息。我们的 GCA (d) 将锚框上下文、轨迹记忆和局部窗口信息结合到一个结构化的注意力掩码中,在保持长程一致性的同时,限制了每帧的计算成本。
复杂度分析。对于一个 T 帧序列,GCA 中每帧的注意力上下文包含 n 个完整标记的锚帧 (n · (M+ 6))、k 个完整标记的窗口帧 (k · (M+ 6)) 以及 (T−n− k) 个紧凑标记的轨迹帧(每个帧 6 个标记)。由于 n 和 k 是固定常数,总上下文简化为 (n + k) · M+ 6T,其中第一项为常数,第二项以每帧 6 个标记的速度增长。相比之下,因果注意力保留 T · (M+ 6) = MT + 6T 个标记,同样包含 6T 项,但额外增加了一个随完整标记数量增长的 MT 项。由于在因果注意力下,每个新帧增加 (M+6) 个标记,而在 GCA 下仅增加 6 个标记,因此对于典型值 (M≈500),每帧的增长率大约降低了 80 倍。具体来说,当 n=3、k=16 和 T=10,000 时,因果注意力累积了约 5×106 个标记,而 GCA 仅保留了约 7×104 个标记,从而每帧的内存和计算量几乎是恒定的。
3.3 Geometric Context Transformer Framework
架构。整体架构如图 4 所示。
- 首先,每个输入图像由基于 DINOv2 [47] 初始化的 Vision Transformer (ViT) 骨干网络进行编码,生成每帧 M 个图像标记。
- 这些图像标记与相机标记 c ∈ RC、四个注册标记 rj ∈ RC (j = 1, …, 4) 以及一个可学习的锚标记 a ∈ RC 进行增强。
- 然后,增强后的标记通过多个交替的帧注意力层和 GCA 层进行处理。
- 帧注意力层在每一帧内独立运行,实现逐帧特征细化;而 GCA 根据第 3.2 节中描述的结构化注意力掩码跨帧运行,实现跨帧几何推理。
- 最后,相机头使用相机标记预测相机的绝对位姿 ˆPt,深度头使用图像标记预测相应的深度图 ˆDt。
损失函数。我们使用由深度项、绝对位姿项和相对位姿项组成的复合损失函数来训练 LingBot-Map:
深度损失(Ldepth)和绝对位姿损失(Labs-pose)遵循 VGGT [75] 中的定义。
我们使用相机到世界的变换来监督网络,而不是使用世界到相机的变换。在世界到相机的参数化中,旋转和平移本质上是耦合的,这使得平移估计对旋转误差非常敏感,尤其是在长序列中。
受 π3 [83] 的启发,我们引入了滑动窗口内所有帧对的相对位姿损失
其中,Lrot(i, j) 和 Ltrans(i, j) 分别表示帧 i 和帧 j 之间相对姿态的测地线旋转误差和 ℓ1 平移误差。由于窗口仅包含已观测到的帧,因此这种损失本质上是因果性的,并有助于保持局部轨迹的一致性。
渐进式视角训练。直接在长序列上进行训练极具挑战性:早期姿态误差会沿着轨迹传播,破坏损失函数的稳定性,导致优化速度缓慢甚至发散。为了解决这个问题,我们采用了一种渐进式训练策略,从短子序列开始,并在训练过程中逐步增加视角数量。这种训练方法使网络能够先从短片段中获得可靠的局部几何估计,然后再学习如何在逐渐延长的轨迹上保持全局一致性。
上下文并行。随着训练视图数量的增长,由于跨帧注意力机制的二次方开销,GPU内存成为主要瓶颈。为了解决这个问题,我们采用了Ulysses [20] 的上下文并行策略,该策略将不同的视图分布在多个GPU上,通过高效的全局通信实现注意力机制的并行计算。
3.4 Inference System Design(工程化做的很好)
与自回归LLM类似,我们的因果模型(causal model)缓存了先前处理帧的键值(KV)状态,以避免冗余的重复计算。然而,在朴素因果注意力机制下,KV缓存的大小与帧数呈线性关系,导致内存消耗和每帧延迟增加。GCA通过保持每帧上下文的紧凑性来解决这个问题(参见3.2节),但滑动窗口和轨迹驱逐逻辑仍然需要频繁的缓存更新(添加新条目并丢弃旧条目),这在标准的连续布局下会因重复的内存重新分配而产生开销。我们通过分页KV缓存布局[27]消除了这种开销,在该布局中,更新仅影响新添加的标记,而不是整个缓存序列。
我们在 FlashInfer [95] 上实现了运行时环境,它原生支持分页键值缓存管理,并针对分页和稀疏键值布局优化了注意力内核。在 518 × 378 分辨率下,视频序列最多 1000 帧,滑动窗口大小为 64 帧,我们基于 FlashInfer 的实现达到了约 20 FPS,而其他方面相同的 PyTorch 基线模型(采用连续键值缓存更新)的帧率约为 10.5 FPS。为了支持稳健的长序列推理,我们每隔 m 帧选择一个关键帧保留在键值缓存中,当输入视图
4 Training & Inference
在长序列上端到端地训练流式 3D 重建模型极具挑战性:早期帧中的姿态误差会沿着轨迹传播,破坏损失函数的稳定性,使得直接在数百个视角上进行优化变得不切实际。为了解决这个问题,我们采用了两阶段训练方案。第一阶段使用短的、多样化的多视角数据训练一个离线基础模型,以建立鲁棒的几何先验(第 4.1 节)。第二阶段引入我们提出的几何上下文注意力机制(GCA),并逐步扩展到长序列,将基础模型的几何基础迁移到流式场景(第 4.2 节)。我们在第 4.3 节中描述了训练数据的整理,并在第 4.4 节中描述了推理流程。
4.1 Base Model Training
模型初始化。我们使用 DINOv2 [47] 中的 ViT 骨干网络进行初始化,图像块大小为 14 像素,随后进行 24 个交替的帧注意力和跨帧注意力模块,架构与 VGGT [75] 类似。在此阶段,我们使用标准的全局注意力机制而非 GCA:由于训练数据包含无序的多视图集合和时间有序的视频序列,全局注意力机制不引入时间结构,可以充分利用这两种数据类型。每个训练样本的输入视图数量在 2 到 24 之间随机抽取,以匹配可用数据集的不同规模。
分布式训练。训练大约需要 21,500 个 GPU 小时,使用完全分片数据并行 (FSDP) 和梯度检查点以及 bfloat16 混合精度来管理内存消耗。
4.2 Streaming Model Training(训练过程写的很细节)
基于基础模型的初始化。我们使用预训练的基础模型权重初始化流式模型,并将全局注意力机制替换为 GCA。由于 GCA 中的查询、键和值投影与全局注意力机制共享相同的参数化,因此预训练权重可以直接迁移,从而提供强大的初始化能力,加速收敛。
优化与渐进式训练。我们使用与第一阶段相同的预热和余弦退火策略,以 5×10⁻⁴ 的基础学习率进行 16 万次迭代的训练。为了稳定地训练越来越长的序列,我们采用了一种视图训练策略:训练视图的数量在训练过程中从 24 线性增加到 320。初始视图数 24 与基础阶段使用的最大视图数一致,而上限 320 则由上下文并行下的 GPU 内存预算决定。类似地,GCA 的局部姿态参考窗口大小 k 在训练期间从 16 到 64 随机采样,使模型接触到不同的感受野,并在推理时提高鲁棒性,因为可以使用不同的窗口大小。
上下文并行。随着视图数量的增长,由于跨帧注意力机制的二次方开销,GPU 内存成为主要瓶颈。我们采用 Ulysses [20] 的上下文并行策略,并行维度为 16,将不同的视图分布在多个 GPU 上,并通过全 GPU 间的集体通信来计算注意力。我们的实现基于 TorchTitan [34] 和 Magi Attention。训练大约需要 15,360 个 GPU 小时。
4.3 Training Data
数据集构成。我们精心整理了一个包含 29 个数据集的训练语料库,涵盖室内、室外、以物体为中心的场景、合成场景和真实世界场景。完整的数据集列表,包括数据格式、场景类型和各阶段的采样率,均列于表 1。粗略地,这些数据集可分为两类:多视角集合(帧无序且可能缺乏时间连续性)和视频序列(帧遵循连续的摄像机轨迹)。这种区别决定了我们在每个训练阶段采用不同的采样策略。
第一阶段:多样化的短序列数据。第一阶段旨在从广泛的场景分布中构建通用的几何先验。我们从所有 29 个数据集中抽取数据,这些数据集的采样比例大致平衡。多视角数据集包括 BlendedMVS [93]、HyperSim [53]、MegaDepth [31]、MVS Synth [19]、GTA SFM [77]、CO3D [52]、Objaverse [10] 和 Texverse [101]。视频数据集包括 Unreal4K [70]、WildRGBD [85]、TartanAir [82]、TartanAirV2 [82]、TartanAirGround [50]、PointOdyssey [102]、VirtualKITTI [3]、Kubric [16]、DL3DV [38]、Replica [63]、SceneRGBD [43]、Mapfree [1]、Aria Synthetic Environments [49]、ADT [49]、ScanNet [9]、ScanNet++ [96]、MatrixCity [30]、MidAir [14] 以及我们内部的游戏数据集。每次迭代对每个场景采样 2 到 24 帧,使用动态批处理采样器,每个 GPU 最多打包 48 张图像。帧选择依赖于邻近采样器:随机选择一个参考帧,其余帧从其周围的空间窗口抽取,不强制任何时间顺序。这种无序抽样非常适合此阶段的混合模态数据,因为许多数据集没有自然的帧顺序。
第二阶段:长轨迹视频数据。第二阶段将分布转向用于流式重建的长且时间上连贯的序列。我们显著提高了具有扩展轨迹和多场景覆盖的数据集的采样权重,包括 TartanAir [82]、TartanAirV2、TartanAirGround [50]、MidAir [14]、MatrixCity [30]、Waymo [66]、VirtualKITTI [3]、KITTI-360 [35]、ScanNet++ [96]、ScanNet [9] 以及我们内部的游戏数据集,同时降低或剔除缺乏时间结构的仅包含多视角的数据集的权重(具体比例见表 1)。
回折视频采样器。为了从长视频中生成时间上连贯的训练子序列,我们将空间邻近采样器替换为回折视频采样器。该采样器从随机帧开始,并以随机步长前进。到达序列边界后,它会反转方向并绘制一个新的步长(与前一个步长不同),以避免退化振荡。这种机制可以生成帧率自然变化且无前向时间偏差的子序列,从而在训练过程中为模型提供多样化的时间上下文。
4.4 Inference Modes
LingBot-Map 支持两种推理模式,即直接输出和视觉里程计(VO),它们共享一个共同的关键帧选择机制。
关键帧选择。当输入序列超过最大训练长度时,我们采用自适应关键帧选择策略来控制KV缓存的增长。对于每一帧输入数据,模型首先估计其深度图和相机位姿,然后利用预测的位姿和深度计算相对于最近关键帧的光流。如果光流强度超过预定义的阈值,则将该帧指定为新的关键帧,并将其特征添加到KV缓存中;否则,将其丢弃。两种推理模式均采用此机制。
直接输出模式。直接模式是默认的推理设置。模型通过全局上下文关联分析(GCA)逐帧进行因果处理,完整的三级上下文(锚框、轨迹记忆和局部窗口)持续累积,无需重置。每一帧直接输出绝对相机位姿和密集深度图。在此模式下,预测误差仅来自模型逐帧推理,不会引入任何外部对齐步骤带来的额外误差。尽管模型在最多 320 个视图的序列上进行训练,但我们通过实验发现,启用关键帧选择的直接模式在大约 10 倍训练长度(约 3000 帧)内保持稳定,超过此长度后,预测质量会逐渐下降。
视觉里程计 (VO) 模式。对于远超直接模式有效范围(例如,数万帧)的序列,我们切换到 VO 模式。输入被分割成重叠的局部窗口。在每个窗口内,首先联合处理一部分帧,以建立稳健的局部尺度和坐标系,然后通过关键帧选择,利用全局坐标分析 (GCA) 对剩余帧进行因果处理。每个窗口结束时,模型状态重置。为了将连续窗口融合为一条全局轨迹,我们计算连续窗口重叠区域之间的 Sim(3) 对齐,从而恢复相对尺度、旋转和平移。这使得 LingBot-Map 能够在有限的内存下处理任意长度的序列,但代价是在每个窗口边界处引入额外的漂移:与直接模式不同,VO 模式会产生额外的对齐误差,并且该误差会随着窗口数量的增加而累积。
权衡取舍。直接模式通过避免窗口间对齐误差来生成更精确的轨迹,因此当序列长度保持在约 3000 帧以内时,它是首选。对于远超此范围的输入,VO 模式的泛化效果更佳,但代价是窗口边界处会累积对齐漂移。实际上,选择哪种模式取决于序列长度和所需的全局一致性水平。
默认推理配置。除非另有说明,本报告中的所有实验均使用直接输出模式,局部姿态参考窗口大小 k = 64,关键帧间隔 m = 1,分辨率为 518×378,精度为 bfloat16。对于涵盖城市级环境或超长序列的大规模演示视频,我们使用 VO 模式。
6 Experiments
1、Camera Pose Estimation
2、3D Reconstruction
7 Conclusion and Discussion
我们提出了 LingBot-Map,一个用于从连续视觉输入进行长距离 3D 重建的流式基础模型。其核心是几何上下文注意力机制 (GCA),该机制将流式状态分解为三种互补的上下文类型:锚框、局部姿态参考窗口和轨迹记忆。GCA 的设计灵感来源于经典 SLAM 系统的结构,但采用端到端学习的方式。与因果注意力机制相比,这种设计将每帧上下文增长量降低了约 80 倍,从而能够在任意长度的序列上以约 20 FPS 的速度进行稳定的推理。在多个基准测试数据集上的广泛评估表明,LingBot-Map 在流式方法中取得了最先进的性能,甚至在 Oxford Spires 等大规模数据集上超越了离线方法和基于优化的方法。 LingBot-Map 通过从连续的视觉流中实现精确、实时的密集 3D 重建,为广泛的应用打开了大门,包括自主导航、增强现实,以及最值得注意的是,需要持续的、即时的空间理解才能与物理世界交互的具身人工智能系统。
局限性。尽管 LingBot-Map 在各种基准测试中表现出色,但仍存在一些局限性。首先,该模型目前没有显式地引入回环检测,而回环检测可以进一步减少在重访先前观测区域时累积的漂移。其次,将轨迹记忆压缩到每帧固定数量的标记可能会丢失一些精细的几何细节,而这些细节对于跨越数万帧的超长序列可能非常有用。第三,与其他前馈方法一样,我们的方法没有进行测试时优化,而测试时优化可以进一步提高复杂场景下的重建质量。
未来方向。一个有前景的方向是将类似光束法平差的优化和显式的回环检测融入注意力机制,从而在保持端到端可微性的同时,进一步缩小与传统 SLAM 后端之间的差距。此外,扩展 LingBot-Map 以处理包含运动物体的动态场景、集成多模态输入(例如 LiDAR 或 IMU 数据)以及探索将该模型作为下游应用(例如新视图合成和导航)的骨干网络,都是未来令人兴奋的研究方向。
