传统的单目视觉同步定位与地图创建(MonoSLAM)方法很难处理累积误差问题,如何有效地利用惯性传感器输出的运动信息辅助SLAM系统抑制累积误差是MonoSLAM研究中的一项重要内容.由于惯性传感器输出的三轴方向角中横滚角和俯仰角的精度较高,而偏航角的精度相对较低,如果在SLAM系统中直接使用惯性传感器输出的偏航角信息不但无法有效地抑制该系统中的累积误差,反而会进一步增大系统误差、降低SLAM系统的稳定性.针对这种情况,提出一种基于惯性传感器横滚角和俯仰角的MonoSLAM方法.首先利用惯性传感器输出的横滚角和俯仰角进行系统标定;然后将惯性传感器自身的偏航角作为系统状态向量的一个分量,利用扩展卡尔曼滤波器实时地估计状态向量,进而实现实时鲁棒的同步定位和地图创建.实验结果表明,该方法可以有效地抑制SLAM系统运行过程中产生的累积误差,并降低惯性传感器测量误差对SLAM系统稳定性的影响.
It is difficult for traditional monocular simultaneous localization and mapping(MonoSLAM) methods to deal with the accumulated errors effectively,so how to fuse data from an inertial measurement unit(IMU) with data from a MonoSLAM system to reduce such errors becomes an important issue currently.We observed that,among the three Euler angles from an IMU,Roll and Pitch are more accurate than Yaw.Then if Yaw is used directly in a MonoSLAM system,the accumulated errors will increase rather than decrease.To address this problem,a new monocular SLAM method based only on Roll and Pitch output from an IMU is presented.First,the IMU-vision system is calibrated by using only Roll and Pitch.Then,the extended Kalman filter(EKF) is adopted to estimate the state vector comprising the camera position,Yaw of the IMU and the locations of features,and a SLAM system based on only Roll and Pitch is implemented robustly in real time.Experimental results show that the proposed method can reduce the accumulated errors effectively and alleviate the negative influence of the IMU's measurement errors on the system's stability.