基于交互式多模型MSCKF的双目视觉/惯性里程计算法
2021-08-05程向红
王 磊,程向红,李 进,王 乐
(1. 安徽科技学院电气与电子工程学院,蚌埠 233100; 2. 东南大学 微惯性仪表与先进导航技术教育部重点实验室,南京 210096)
精确的位姿估计是实现移动平台智能控制和自主作业的关键。视觉惯性里程计(Visual inertial odometry, VIO)将惯性导航系统测量信息与视觉测量信息结合起来,实现对移动平台的位姿估计。随着微机电系统(Micro-electro-mechanical system, MEMS)惯性测量单元(Inertial measurement unit, IMU)的发展,VIO具有成本低、小型化、功耗低等优点,被广泛应用于移动机器人、无人机和手持设备[1-4]。由于视觉/惯性组合导航系统具有模型复杂、非线性强的特点,如何有效地利用惯性测量信息和视觉信息的互补性来实现精确的位姿估计一直是该领域研究的热点和难点。
根据是否将视觉特征信息加入到状态向量中,可以将实现VIO 的组合方式分为紧耦合和松耦合两大类,大量的研究证明紧耦合的方式相对于松耦合,精确性更高。紧耦合VIO 凭借其在精度和鲁棒性方面的优势,近年来逐渐成为主流方法[5,6]。根据VIO 系统状态估计的实现方式,可以将其分为基于滤波器估计和基于关键帧非线性优化的两类方法[7-9]。对于采用紧耦合组合方式的VIO 系统,经典的滤波方法包括多状态约束卡尔曼滤波(Multi-state-constraint Kalman filter, MSCKF)算法[10-12]和鲁棒视觉里程计算法(Robust visual inertial odometry, ROVIO)[13]。MSCKF 算法采用一种类似于滑动窗口的结构,它关注特征点在连续一段时间内各个时刻的所有状态,并对这些时刻的状态建立非线性三角化约束,从而对窗口内的状态量执行消元操作,然后对系统参数进行滤波更新和优化。……
