2. VIO基础回顾

视觉惯性里程计(Visual-Inertial Odometry,VIO)是把相机与IMU两类互补传感器融合起来,在未知环境中连续估计载体位姿与速度的技术。相机提供丰富的环境结构信息,但单帧尺度不可观、快速运动易模糊;IMU提供高频角速度与加速度,短时精度高、能观测尺度与重力方向,但零偏会随时间积分漂移。VIO的核心思想正是用视觉约束抑制IMU漂移,用IMU高频预测弥补视觉帧率不足,从而在量产设备上获得稳定、可复现的定位输出。

一、核心原理:紧耦合与松耦合

按融合深度,VIO可分为松耦合与紧耦合。松耦合把视觉位姿与IMU预积分结果分别求解后再做滤波或优化融合,结构简单、模块解耦,但丢失了原始观测间的相关性,精度与鲁棒性受限。紧耦合则把视觉重投影误差与IMU预积分残差放入同一个优化或滤波框架中联合求解,视觉特征与惯性状态互相约束,是当前主流方案(如VINS-Mono、OKVIS、ORB-SLAM3的惯性模式)的基础。

从信息流看,VIO的典型处理链路为:IMU原始数据 → 预积分 → 视觉前端特征跟踪 → 关键帧与滑窗管理 → 后端联合优化 → 边缘化 → 输出位姿、速度、零偏。IMU预积分把两帧之间的高频测量压缩为相对位姿、速度与零偏雅可比,避免在优化中重复积分,是紧耦合能实时运行的关键。

VIO 紧耦合数据流与坐标系关系 相机 Camera 30 Hz 图像 / 特征 IMU 200 Hz 角速度/加速度 视觉前端 跟踪 / 三角化 / 关键帧 IMU 预积分 ΔR Δv Δp + 雅可比 滑动窗口联合优化 重投影误差 + 预积分残差 边缘化 / 零偏更新 状态输出 位姿 / 速度 / 零偏 重力方向 / 尺度 坐标系定义(外参 T_BC 连接) 世界系 W 重力对齐 / 局部原点 机体系 B IMU 本体 / 载体 相机系 C 光心 / 光轴 Z 像素系 P u v / 内参 K

二、坐标系定义与外参标定

VIO中至少涉及四个坐标系:世界系 W(重力对齐、局部原点)、机体系 B(IMU本体)、相机系 C(光心与光轴)、像素系 P(图像平面)。状态量通常在世界系下表达,而观测在相机系与像素系中产生,因此必须明确各系之间的变换关系。

  • 外参 T_BC:相机与IMU之间的旋转与平移,是VIO精度的关键参数,量产中需逐台标定。
  • 时间偏移 t_d:相机与IMU的采样时刻不同步,未标定会直接引入运动模糊方向的系统性误差。
  • 重力方向:由IMU加速度在静止段估计,决定世界系Z轴,影响尺度与俯仰/横滚可观性。
量产建议:外参与时间偏移应在产线一次性标定并写入设备参数区,运行中仅做小幅在线优化,避免冷启动阶段因外参错误导致初始化失败。

三、状态估计框架与传感器模型

VIO的状态向量通常包含滑动窗口内各关键帧的位姿、速度、IMU零偏,以及相机外参与时间偏移。以VINS-Mono为例,状态可写为:

X = [ x_0, x_1, ..., x_n, λ_0, ..., λ_m, T_BC, t_d ]
x_k = [ p_k, v_k, q_k, b_a, b_g ]   // 位置、速度、姿态、加速度零偏、陀螺零偏
λ_j : 第 j 个特征点的逆深度

IMU测量模型为:

ω_m = ω + b_g + n_g
a_m = R_WB^T (a_W - g_W) + b_a + n_a

视觉测量模型为针孔投影加畸变:

z = π( K · T_CB · T_WB · P_W ) + n_z

后端把IMU预积分残差与视觉重投影残差加权求和,构造非线性最小二乘问题,用Ceres或g2o求解。滑动窗口通过边缘化旧帧保持计算量恒定,同时保留历史信息约束。

模块输入输出关键参数
IMU预积分角速度、加速度ΔR、Δv、Δp及雅可比零偏、噪声密度
视觉前端图像序列特征轨迹、关键帧跟踪数、最小视差
初始化预积分+视觉尺度、重力、速度、零偏窗口长度、静止检测
联合优化残差与信息矩阵状态更新量迭代次数、鲁棒核
边缘化旧帧约束先验信息滑窗长度

四、典型场景与常见误区

在量产机器人或AR设备上,VIO初始化阶段最易出问题。若设备启动时处于运动状态,IMU无法准确估计重力与零偏,会导致尺度错误、轨迹漂移。建议在固件中加入静止检测,满足加速度方差与角速度阈值后再触发初始化。

常见误区:把VIO当作绝对定位使用。VIO本质是里程计,长时间运行必然累积漂移,量产系统必须配合回环检测、地图匹配或GNSS做全局约束,否则无法满足长时定位精度要求。

复盘时建议重点检查三类指标:初始化收敛时间、外参标定残差、滑窗内特征跟踪数量。若跟踪数骤降,优先排查光照突变、纹理缺失与运动模糊;若零偏估计发散,检查IMU温漂与标定质量。只有把传感器模型、坐标系与外参、状态估计框架三者对齐,VIO才能在量产环境中稳定输出可信位姿。