vMAP


  • Description:vMAP 论文笔记 (读项目页/全文后所写) — 对象级神经隐式建图,每个物体一个小 MLP,向量化批量并行训练几十个 MLP 实时建图,可拆/可重组场景
  • Paper:Kong, X., Liu, S., Taher, M., & Davison, A. J. (2023). vMAP: Vectorised Object Mapping for Neural Field SLAM. CVPR 2023. arXiv:2302.01838
  • K2E-B ID:[K2E-B-G5-8]
  • Max3 PDF[K2E] SLAM/[K2E-B-G] Geometry & Rendering/[K2E-B-G5] NeRF SLAM/[K2E-B-G5-8][2023] vMAP Vectorised Object Mapping for Neural Field SLAM.pdf
  • Notion ID:(待创建)
  • Created:2024-03-31
  • Updated:2026-06-02
  • License转载欢迎 — 请署名 Yu Zhang 并链回 yuzhang.io 原文

Table of Contents


1. 概述

vMAP (Kong, Liu, Taher, Davison 2023, ICL Dyson 机器人实验室, CVPR) — 对象级 (object-level) 神经隐式建图。每个物体 (含背景) 用一个独立的小 MLP 表示,而非 iMAP 的单一全局 MLP。

核心 trick:向量化 (vectorised) 批量并行训练 — 把几十个小 MLP 堆成一个 batch 在 GPU 上同时优化 → 单场景最多约 50 个物体 (典型 20~70、均值 50) 仍 5 Hz 实时

意义:解耦的对象级地图 → 物体可单独停/续训、无相互干扰、可重组成新场景。

iMAP 见 iMAP (G5-1);NICE-SLAM 见 NICE-SLAM。本笔记读论文全文 + 项目页。

2. 对象级表示 — 一物体一 MLP

  • 每个物体实例 = 一个小 MLP (类似 iMAP 的 occupancy MLP,但更小):物体 MLP 4 层、隐藏维 32
  • 背景单独用更大的 MLP (4 层、隐藏维 128)
  • 极致紧凑:约 40 KB/物体,整场景 (含背景) 仅 0.66M 参数 (去背景 0.56M) — 远小于 NICE-SLAM 的 12.12M
  • 每个 MLP 在自己物体的局部坐标系内学完整 occupancy/颜色 → 天然水密 (watertight)
  • 物体维护一个3D 包围盒,随观测跨帧更新

对比单一全局场 (iMAP):容量分摊到每物体 → 小物体细节不被大场景挤占,互不干扰。

3. 检测与数据关联

  • 输入 RGB-D 流
  • 实例分割得每帧物体 mask:现成检测器 Detic (开放词表 LVIS 预训练,>1000 类)
  • 相机位姿外部提供:用 ORB-SLAM3 跟踪,不与几何联合优化 (作者发现外部跟踪更准更鲁棒、实现更简洁)
  • 数据关联跨帧,两条准则同时满足才判为同一物体:① 语义一致 (与前帧预测同一语义类) ② 空间一致 (两者 3D 包围盒的平均 IoU);否则视为新物体在线动态加入地图
  • 监督采样在物体 2D 包围盒 $\mathcal{R}^k$ 内;深度/颜色 loss 仅在 mask $M^k$ 内 ($M^k\subset\mathcal{R}^k$),occupancy loss 覆盖整个 bbox (mask 外鼓励为空)

4. 向量化并行训练

关键工程创新 — 把 N 个 MLP 当一个 batch 训

  • 所有物体 MLP 结构相同 (隐藏维 32) → 权重可堆叠成 $[N, \cdot]$ 张量;背景例外 — 用更大网络 (隐藏维 128) 单独训练,不进 batch
  • PyTorch 高度优化的向量化算子一次前向/反传所有物体 MLP (论文 Sec 3.3 称 "vectorised operations in PyTorch [9]",引用 [9] 即 functorch (He & Zou) — 即用 functorch/torch.vmap 思路批量化,正文只是未直接写出这两个词)
  • 避免"逐物体串行训练"的 GPU 利用率低 → 物体数增加几乎不掉速
  • 实测约 50 个物体仍保 5 Hz 地图更新

这是 vMAP 能"对象级却仍实时"的核心。

5. 渲染、遮挡、水密重建

  • 每物体 MLP 独立体渲染 (沿光线采样 → occupancy 累积 → 深度/颜色),类 iMAP/NeRF (见 NeRF)。深度引导采样:表面附近高斯采 $N_s$ 点 ($d_\sigma{=}3$ cm) + 近界到表面分层采 $N_c$ 点
  • 遮挡:2D 新视角合成用 Ray-Box Intersection 算各物体的近/远界,再沿光线对各物体渲染深度排序 (depth ranking) → 遮挡感知 (occlusion-aware) 场景级合成
  • 水密:每物体 MLP 学闭合表面,对部分观测/遮挡仍能补出合理闭合面 — 无需 3D 先验;但完全在视野外的区域 (如整面看不到的椅背) 因缺通用 3D 先验仍补不全
  • 损失 (Eq.7):$L=\sum_k L^k_{depth}+\lambda_1 L^k_{colour}+\lambda_2 L^k_{occupancy}$ — 三项:深度 + 颜色 + 占据 (occupancy),权重 $\lambda_1{=}5$、$\lambda_2{=}10$

6. 结果

Replica (Tab.2):vMAP 在 Scene Completion Ratio (92.99)物体级全部指标领先,物体级 Completion 误差 (Comp.[cm]=1.44) 比 iMAP* (2.38) / NICE-SLAM* (3.27) 低约 40%/56%;但 Scene Accuracy 上 TSDF-Fusion (1.28)、iMAP* (2.15) 优于 vMAP (3.20) — 场景级 Acc 偏向大物体 (墙/地),并非全面碾压。亮点:对象级解耦 → 物体重建质量高 + 可编辑 (拆物体、换场景),且实时 (建图 8m16s vs NICE-SLAM 34m34s)。

属神经隐式 SLAM 中对象级/可组合路线代表 (区别于 NICE-SLAM 的统一网格、Vox-Fusion 的统一体素)。

References

  • Kong, X., Liu, S., Taher, M., & Davison, A. J. (2023). vMAP: Vectorised Object Mapping for Neural Field SLAM. CVPR 2023. arXiv:2302.01838 — 论文 (本笔记读项目页 + 全文整理)
  • 项目页: kxhit.github.io/vMAP
  • 前作单 MLP 见 iMAP (G5-1);网格/体素路线见 NICE-SLAM / Vox-Fusion