OKVIS

Leutenegger 2015 · 论文

一句话总结 — OKVIS(Open Keyframe-based Visual-Inertial SLAM)确立了VIO中紧耦合滑动窗口优化的范式:在一个由关键帧和最近帧组成的有限窗口内联合最小化重投影误差和IMU误差,并用Schur补边缘化将所有更早的信息压缩为一个先验。

问题

基于滤波器的VIO(MSCKF一类)对每个测量只在更新时线性化一次;累积的线性化误差会带来精度损失。全量光束法平差在每次迭代时重新线性化所有内容,漂移小得多——但对所有历史帧执行BA无法实时运行,而且以数百赫兹到达的惯性测量会在相邻状态之间产生密集的时间约束。OKVIS通过一个有限的关键帧窗口来化解这一张力:关键帧在时间上可以任意间隔(因此即使静止不动,估计结果也不会产生漂移),而旧的状态则通过边缘化被折叠进一个高斯先验中。

方法与架构

实验结果

在一套定制的、由FPGA同步的立体惯性传感器(ADIS16448 IMU,800 Hz,两台WVGA全局快门相机,20 Hz,基线11厘米)采集的数据集上进行评估,并与一个采用相同关键点和IMU数据的、基于MSCKF风格随机克隆的滑动窗口滤波器进行对比,使用M=7M{=}7个关键帧和S=3S{=}3个最近帧。在1200米长的Vicon Loops序列上(14分钟,Vicon真值),所有方法的每米行程中位位置误差都低于0.1%,但OKVIS的航向角漂移比滤波器更小。在7.9公里长的Bicycle Trajectory(23分钟,速度可达13.1 m/s,DGPS真值)以及620米的ETH Main Building手持数据集上,立体版本(aslam)和单目版本(aslam-mono)都始终优于msckf-mono。从粗略的CAD估计出发进行在线外参标定,消除了标定不准所引起的尺度误差;将关键帧数量从7增加到12没有带来显著提升,而将每幅图像的关键点数量从240减少到45只会轻微降低精度。

对SLAM的意义

OKVIS所确立的滑动窗口BA加边缘化架构,是VINS-Mono、Basalt、ORB-SLAM3的VI模式、DM-VIO以及OKVIS2都遵循的模板,它也提供了紧耦合非线性优化在可接受代价下优于滤波方法的第一个有力证据。它的关键帧选择逻辑和边缘化策略,至今仍是”如何在不丢弃信息的前提下限制VIO计算量”这一问题的默认答案。OKVIS还开创了一条长长的传承线:OKVIS2加入了带可重新激活地标的回环检测,OKVIS2-X则将该框架扩展到了LiDAR、深度和GNSS。

相关条目