1.前言
基于特征法的SLAM系统,其实就是根据一帧一帧的图像之间具有匹配关系的特征点,通过对极几何进行相机位姿的计算:
1) 2d - 2d :对极约束求解essential/fundamental矩阵分解相机位姿或者2d平面与相机平面的homograpy分解计算位姿。
2) 2d - 3d :pnp求解相机位姿。
及p2d,p3d,相机位姿三个变量知2个求第三个的问题。已知位姿与p2d求p3d(trangulate三角化),已知p3d与位姿求p2d(相机投影模型),已知p2d,p3d求解位姿(pnp问题)。
3) 3d - 3d :icp点云配准求解相机位姿。
然后由于单目具有特征点深度无法估计(像素点极线上任意深度的点投影相同)的问题,刚好IMU具有真实的物理尺度,IMU的加入能够将纯视觉的尺度极大的“精确化”,这样就使得相机的运动有了测量尺度。那么,系统中有了两个sensor,这两个sensor各自产生了自己的坐标系,要将两个坐标系下的数据联系起来就需要知道两个坐标系之间的旋转和平移关系。因此需要对两个传感器的外参进行校准,本篇笔记主要分析这个问题。
2.相机IMU外参标定原理
相机与IMU之间的外参标定,就是计算相机与IMU之间的相对旋转将上边的{
,
,
……
}序列和{
,
,
……
……}序列对应起来。由于搭载相机和IMU的设备(无人车或者无人机)是刚体,所以计算出来的旋转是个常数,具体地:
计算帧间的视觉位姿变化量和IMU积分位姿量,初始时两个系统的loop是没有进行对其的。
由于IMU和相机是刚体摆放,相同时间间隔内的位姿变化量应该只跟常数(外参)有关。通过线性求解Rcb使得视觉和imu对齐。