上一次主要讲了关于双目标定过程中一些需要注意的问题,在视觉slam中,很重要的一个方向是视觉与IMU的融合,因此也就有了很多相机与IMU融合的硬件。这次就来讲讲VIO硬件的标定,和双目类似的,在这个标定中我们最终需要得到IMU相对于相机的rotation和translation,IMU与相机数据的延时,以及IMU本身的一些“内参”,如加速度计、陀螺仪的bias,noise等。目前标定功能较齐全的是linux下的kalibr工具箱,matlab中代码比较零散,没有一个整合的toolbox,因此本篇先总结一下matlab的使用,下次继续讲讲kalibr的使用方法。
在基于matlab的标定方法中,我们关注以下两个点的标定:IMU相对于相机的旋转矩阵和IMU中加速度计Bias。
1.加速度计Bias标定
加速度计Bias的标定是相对较简单的,原理是利用重力加速度的不变性,通过硬件姿态的变换,获得硬件在不同方向上重力加速度的测量值。具体做法是让硬件在某一位置保持静止,记录此时加速度计读数,变换硬件姿态后重复上述过程。最终我们得到了多组加速度计数据。在硬件本体坐标系上看,每一次测量向坐标系中添加了一个长度为重力g的矢量,所有的数据点应该在一个球面上,通过球形拟合,找到球心位置,球心位置和原点的偏差即加速度计bias。为了使标定结果更精确ÿ