相机内参:像素坐标(u,v)到相机坐标(x, y, z)变换,fx和fy为焦距在x,y上投影,u0和v0为偏移量
u = x/z*fx+u0
v = y/z*fy+v0
相机外参:相机坐标(x, y, z)到世界坐标(X,Y,Z)变换,包括{R,t}
点云之间的合并需要相机外参,相机外参也就是相机的pose
Slam算法中的PnP:用来计算相机外参,已知一些点的3d位置(x, y, z)和图像中2d位置相匹配,利用PnP可以计算{R,t}
Slam中的ICP:ICP算法能够使不同的坐标下的点云数据合并到同一个坐标系统中,首先是找到一个可用的变换,配准操作实际是要找到从坐标系1到坐标系2的一个刚性变换。
Slam中的BA:Bundle Ajustment是一种图优化方法,优化最小化投影误差,下图为例
Q(aj,bi)为物体bi在相机aj中的投影。
传统Slam包括地图初始化,特征点提取,特征点匹配,位姿估计,关键帧提取,点云拼接,地图点云优化,回环检测等。
位姿估计分为2D-2D, 2D-3D, 3D-3D
2d-2d: 对极约束方法,求本质矩阵。
2d-3d: PnP方法
3d-3d: ICP方法
Orb slam中的位姿估计为根据前一帧和运动模型,匹配下一帧中的信息,如果匹配大于阈值则成功,否则重定位,用特征和点云地图匹配,之后使用PnP。
Slam中分为视觉slam(单目slam,双目slam,RGBD slam),激光slam,融合slam。
优化方法LBA
优化方法RANSAC