以下是根据您的要求翻译的中文版本,保留了原文的 Markdown 结构、标题层级、列表、代码块、技术术语和专有名词。
Robbyant lingbot-map
LingBot-Map: Geometric Context Transformer for Streaming 3D Reconstruction Robbyant Team
teaser.mp4
🗺️ 欢迎使用 LingBot-Map! 我们构建了一个前馈式 3D 基础模型,用于流式 3D 重建!🏗️🌍
LingBot-Map 专注于以下方面:
- Geometric Context Transformer:在架构上通过 anchor context、pose-reference window 和 trajectory memory,将坐标定位、密集几何线索和长程漂移校正统一在单个流式框架中。
- 高能效流式推理:采用前馈架构,结合 paged KV cache attention,在 518×378 分辨率下,可对超过 10,000 帧的长序列实现约 20 FPS 的稳定推理。
- 最先进的重建质量:在多个基准测试中,相较于现有的流式方法和基于迭代优化的方法,均展现出更优性能。
📑 目录 点击展开
📰 新闻 📋 待办事项 ⚙️ 安装 📦 模型下载 🚀 快速开始 🎬 交互式演示(demo.py) 尝试示例场景 使用关键帧间隔进行流式处理 窗口式推理(适用于长序列,>3000 帧) 天空遮罩 可视化选项 性能与内存 🎥 离线渲染管线(demo_render/batch_demo.py) 📜 许可证 📖 引用 ✨ 致谢
📰 新闻
- 2026-05-25 — 📊 评估基准已发布。我们发布了 KITTI 和 Oxford Spires 的评估脚本——详见
benchmark/目录下的流程,运行preprocess/oxford.py可在评估前准备 Oxford Spires 数据。 - 2026-04-29 — 📹 长视频演示已发布。我们发布了一个超长视频示例(约 25,000 帧,13 分钟室内漫游),使用离线管线渲染——详见 Worked Example 中的命令、参数说明及渲染输出。
- 2026-04-27 — 🚀 LingBot-Map 加速版已发布。拉取最新 main 分支,运行
python demo.py --compile ...或python gct_profile.py --backend flashinfer --dtype bf16 --compile可在您的硬件上验证。 - 2026-04-24 — 修复了 FlashInfer KV cache 的一个 bug,该 bug 导致
--keyframe_interval > 1时非关键帧被错误缓存。现在运行超过 320 帧时,位姿和重建质量应有所改善。
📋 待办事项
- ✅ 发布评估基准
- ✅ Oxford Spires 数据集
- ✅ KITTI 数据集
- ✅ VBR 数据集
- ✅ Droid-W 数据集
- ✅ TUM-D 数据集
- ✅ 7-scenes 数据集
- ✅ ETH3D 数据集
- ✅ Tanks and Temples 数据集
- ✅ NRGBD 数据集
- ✅ 发布演示脚本
- ✅ 室内长视频演示(特色室内漫游)
- ✅ 室外长视频演示
- ✅ LingBot-World 演示
- ✅ 航拍长视频演示
⚙️ 安装
- 创建 conda 环境
- 安装 PyTorch(CUDA 12.8)
conda create -n lingbot-map python=3.10 -y
conda activate lingbot-map
pip install torch==2.8.0 torchvision==0.23.0 --index-url https://download.pytorch.org/whl/cu128
推荐使用 PyTorch 2.8.0,因为 NVIDIA Kaolin(批渲染管线所需)已为 torch-2.8.0_cu128 提供预编译 wheel。如果您只需要 demo.py,可以使用更新的 PyTorch 版本,但批渲染器需要从源码编译 Kaolin。其他 CUDA 版本请参考 PyTorch 官方入门指南。
- 安装 lingbot-map
- 安装 FlashInfer(推荐)
pip install -e .
FlashInfer 提供 paged KV cache attention,用于高效流式推理。它是一个纯 Python 包,首次使用时 JIT 编译 CUDA 内核,因此单个 wheel 可跨 CUDA/PyTorch 版本使用:
pip install --index-url https://pypi.org/simple flashinfer-python
仅当您的默认 pip 索引为内部镜像且不包含 flashinfer-python 时,才需要指定 --index-url https://pypi.org/simple。
(可选)为加快首次使用速度,可额外安装 CUDA 特定的 JIT 缓存:
pip install flashinfer-jit-cache -f https://flashinfer.ai/whl/cu128/flashinfer-jit-cache/
详情请参见 FlashInfer 安装文档。
如果未安装 FlashInfer,模型将通过 --use_sdpa 回退到 SDPA(PyTorch 原生 attention)。
- 可视化依赖(可选)
pip install -e ".[vis]"
📦 模型下载
| 模型名称 | Huggingface 仓库 | ModelScope 仓库 | 描述 | |----------|------------------|-----------------|------| | lingbot-map-long | robbyant/lingbot-map | Robbyant/lingbot-map | 更适合长序列和大规模场景(推荐) | | lingbot-map | robbyant/lingbot-map | Robbyant/lingbot-map | 平衡检查点——在短序列和长序列之间取得全面性能折中 | | lingbot-map-stage1 | robbyant/lingbot-map | Robbyant/lingbot-map | lingbot-map 的阶段一训练检查点——可加载到 VGGT 模型中进行双向推理(c2w) |
🚧 即将推出:我们正在训练一个更强的模型,支持更长的序列,敬请期待。
🚀 快速开始
安装完成后,通过一条命令运行您的第一个场景:
python demo.py --model_path /path/to/lingbot-map-long.pt \
--image_folder example/courthouse --mask_sky
这将启动一个交互式 viser 查看器,访问地址为 http://localhost:8080。
请参阅下面的交互式演示部分,了解完整的场景和参数列表,或跳转到离线渲染管线部分以进行长序列批渲染。
🎬 交互式演示(demo.py)
运行 demo.py 可通过基于浏览器的 viser 查看器进行交互式 3D 可视化(默认地址 http://localhost:8080)。
尝试示例场景
我们在 example/ 目录下提供了四个示例场景,可直接运行:
# 法院场景
python demo.py --model_path /path/to/lingbot-map-long.pt \
--image_folder example/courthouse --mask_sky
output_pointcloud_side_by_side.mp4
# 大学场景
python demo.py --model_path /path/to/lingbot-map-long.pt \
--image_folder example/university --mask_sky
output_pointcloud_side_by_side.mp4
# 环路场景(闭环轨迹)
python demo.py --model_path /path/to/lingbot-map-long.pt \
--image_folder example/loop
output_pointcloud_side_by_side.mp4
# 牛津场景(带天空遮罩,室外大规模场景)
python demo.py --model_path /path/to/lingbot-map-long.pt \
--image_folder example/oxford --mask_sky
output_pointcloud_side_by_side.mp4
🎯 特色:室内漫游(约 25,000 帧,13 分钟)
该序列对于交互式 viser 查看器来说过长——此片段是使用离线渲染管线渲染的。请参见该部分。