精读笔记

Problem Setting

[OKVIS2-X: Open Keyframe-Based Visual-Inertial SLAM Configurable With Dense Depth or LiDAR, and GNSS](IEEE Transactions on Robotics / 2025)。这篇论文解决的不是一个新的 VIO/LIO 单点精度问题,而是一个系统级 SLAM 问题:如何在同一套优化框架里同时获得高精度轨迹、可用于导航的稠密占据地图、多传感器可配置性,以及公里级实时运行。真正难点在于 dense map 和 estimator 的耦合:如果地图只是后处理,不能提高定位鲁棒性;如果地图直接进入优化,又会引入巨大内存、计算和全局一致性问题。以前方法常卡在两端:sparse VI SLAM 有精度但地图不可用,dense/neural SLAM 地图细但尺度小或离线,LIO/LVIO 精度强但多数地图是点云/局部 surfel,不显式表达 free space。本文面对的关键矛盾是:机器人需要 occupancy/free-space 这种适合规划的表示,但 SLAM 后端需要一个轻量、可优化、可闭环修正的表示。

Motivation

已有路线不够的核心原因不是少了某个传感器,而是表示层不匹配。视觉特征地图服务于 BA,不服务于导航;点云/mesh 描述表面,不可靠地区分 free 和 unknown;单体 dense volume 可用于规划但不适合大尺度闭环。作者的核心观察是:当系统已有 LiDAR、RGB-D 或 learned depth 时,最自然的地图不是 sparse landmark,而是 probabilistic volumetric occupancy;但这个 occupancy map 必须被切成 submaps,并且必须反向约束状态估计,否则只是一个昂贵的重建模块。关键缺口就是:一个在 factor graph 中把 VI、dense geometry、GNSS 和 loop closure 统一起来,同时还保留导航地图语义的工程-建模框架。

Core Idea

论文真正的核心思想是把 dense volumetric occupancy submap 作为可优化的几何记忆。每个 submap 以关键帧为锚,内部保持局部一致;全局一致性通过关键帧位姿和 submap alignment factors 维护。这样 map 不再是估计之后的 artifact,而是状态估计的一部分:新的 depth/LiDAR measurement 被投到已有 occupancy field 上,occupancy log-odds 的零交叉和梯度提供类似 signed distance 的残差,从而产生 frame-to-map 或 map-to-map 几何约束。和 prior 的本质区别在于,它不是做显式 ICP correspondence,也不是把 dense map 后处理到 trajectory 上,而是用 occupancy field 本身产生 correspondence-free residual,并把这个 residual 放回统一因子图。这个 inductive bias 很明确:局部空间几何在 submap 内稳定,跨 submap 的漂移可以用低维刚体位姿修正;free/occupied/unknown 的概率表示既服务估计又服务导航。

Method

方法上值得保留的机制只有几个。1)Submap anchoring:每个 occupancy submap 绑定到创建时的关键帧,解决单体地图不可扩展和闭环后地图无法一致更新的问题;核心变化是地图更新从体素级全局重建变成 submap pose 的刚体重排。2)Occupancy alignment factor:用 L(p)/sqrt(L_min^2/9 + sigma_d^2 |grad L|^2) 构造归一化残差,解决 depth/LiDAR measurement 如何不经 correspondence 进入优化的问题;它把 occupancy log-odds 近似成 surface distance,并显式纳入测量不确定性。3)Uncertainty-aware learned depth fusion:对 stereo 和 MVS depth 预测 aleatoric uncertainty,再做方差加权融合;它解决 learned depth 噪声无法直接当几何约束的问题,但更像让 dense factor 不伤害优化,而不是核心 SLAM 创新。4)GNSS 4-DoF global frame alignment:估计 local VI world 到 ENU 的 yaw+translation,在 observability 足够后固定,并在 dropout 后做 loop-closure-like drift distribution;这是把 GNSS 变成全局一致性约束,而不是简单 pose prior。5)Online camera-IMU extrinsics calibration:把相机外参也放进 reprojection 与 marginalized relative pose factors;对多相机真实 rig 很重要,但属于提高部署鲁棒性的必要工程。

Key Insight / Why It Works

最关键的有效性来源是 representation alignment:同一个 occupancy submap 同时满足 state estimation 的几何约束需求和 navigation 的 free-space 表达需求,避免了“定位地图”和“规划地图”两套世界模型的分裂。第二个有效性来源是 memory reuse:submap 是对过去 dense observations 的压缩,frame-to-map / map-to-map factor 实际上是在用历史几何记忆给当前 pose 提供额外约束;这比只依赖 sparse visual landmarks 对低纹理、光照变化和短时视觉失败更稳。第三个来源是尺度组织:把 dense 复杂度限制在局部 submaps,把全局优化变量保持在 pose/keyframe 层面,本质上是把高维地图问题低维化。最可能的核心贡献是 occupancy submap 与 factor graph 的紧耦合,而不是多传感器列表本身。GNSS、在线外参、depth network 都是重要增强,但更像让系统在真实数据上成立的辅助件。部分结果很可能来自 engineering/scaling:OKVIS2 基座、loop closure/full BA、多线程、鲁棒核、外参校准、参数调优、传感器配置都贡献显著。论文没有完全拆清“occupancy factor 本身”相对强 LIO/VIO 后端的独立增益,尤其在 VI-LiDAR 配置中,优势可能同时来自 LiDAR 几何、闭环和成熟工程。

Relation To Prior Work

这篇属于 keyframe optimization-based VI SLAM → multisensor factor graph → dense submap SLAM 这条谱系,而不是 neural SLAM 或纯 LIO 谱系。它最接近 OKVIS2 的扩展版、Voxgraph/occupancy submap 系列、LVI-SAM/FAST-LIVO 类多传感器融合系统,以及 Kimera/SimpleMapping 类 dense mapping 系统。看似新的部分中,多传感器因子图、IMU preintegration、GNSS factor、loop closure、online extrinsic calibration 都是已有思想重组;实质新增在于把 volumetric occupancy submaps 作为可产生优化残差的统一 dense representation,并且该 representation 直接可用于导航。和 FAST-LIVO/R3LIVE 这类强实时 LIVO 的差异不是“谁用了 LiDAR”,而是地图语义:OKVIS2-X 牺牲一定内存,换取 free-space occupancy 和 submap-level global consistency。和 neural dense SLAM 的差异是它没有追求 photorealistic rendering 或 implicit scene representation,而是选择低维、可解释、可实时、可规划的概率占据。

Dataset / Evaluation

实验覆盖面比较强:小尺度室内飞行、中尺度手持多相机/激光、大尺度车载城市序列,以及 GNSS dropout 场景,基本对应了论文的系统主张。真实世界和真机数据占比较高,VBR 的公里级序列尤其能验证 submap scalability,而 Hilti-Oxford 能验证多相机、低光照和 LiDAR 补偿。evaluation 支持“这是一个强工程系统”这一点,也支持“occupancy submap 可以在大尺度下实时工作”。但对核心机制的因果验证还不够干净:EuRoC 上 depth alignment 对轨迹提升有限;Hilti/VBR 中 VI-LiDAR 的提升很难区分来自 LiDAR sensing、本方法的 occupancy residual、loop closure/full BA 或参数配置。GNSS 评估一部分使用模拟 RTK,真实复杂 GNSS 下只做了相对有限验证,并且没有使用 raw GNSS/Doppler 的强融合,因此 claim 应理解为系统可扩展性证明,而非 GNSS-SLAM 最优解。

Limitation

最大隐含前提是 submap 内漂移可忽略。一旦局部运动估计已经在一个 submap 内积累了明显形变,后续只能刚体移动 submap,无法修正内部非刚性误差;这是所有 submap 方法的结构性上限。第二,occupancy alignment 依赖 overlap 和可靠梯度;在长走廊、弱几何、重复结构、稀疏观测或动态物体污染下,残差可能退化甚至误导优化。第三,learned depth 的不确定性是否真正 calibrated 文中未充分说明;方差加权融合可以降低坏深度影响,但不能保证跨域可靠。第四,scalability 仍受内存限制,只是从 monolithic volume 转移到 submap collection;公里级可行不等于无限尺度可行,作者提出 on-demand loading 也说明当前还不是最终形态。第五,增益归因不完全清楚:这篇论文有很强的系统工程成分,部分 SOTA 可能主要来自 scaling、传感器覆盖、OKVIS2 基座和 full BA,而非某个单一新理论机制。

Takeaway

  • 1)对机器人 SLAM 来说,地图表示不应只为定位服务;能表达 free/occupied/unknown 的 occupancy volume 是比 point cloud 更贴近 deployment 的归纳偏置。
  • 2)dense map 要进入长期 SLAM,关键不是更强的重建网络,而是 submap 化和与 factor graph 的低维耦合。
  • 3)learned depth 真正可用于 SLAM 的前提不是深度更锐,而是 uncertainty 能进入优化权重,否则 dense factor 很容易成为噪声源。
  • 4)未来值得做的不是继续堆传感器,而是解决 submap 内部形变、动态场景、时间外参、地图按需加载和语义/变化检测如何与 occupancy optimization 共存。

一句话总结

OKVIS2-X 是把 OKVIS2 式 keyframe VI SLAM 推向真实机器人多传感器部署的一篇系统型工作,其真正贡献是用可导航的 volumetric occupancy submaps 作为因子图中的几何记忆,实现 dense mapping 与高精度状态估计的紧耦合和大尺度工程化。