slam整体框架总结

框架:

前端、后端、回环检测、建图。
slam整体框架总结
传感器分类:视觉方法:单目(Monocular)、双目(Stereo)、深度(RGB-D)、鱼眼全景等。
物理方法:TOF、结构光。
视觉里程计:通过图像估计相机运动。
后端优化:.去噪,优化轨迹和地图。
.最大后验概率估计MAP。
回环检测:.检测机器人是否回到最初的位置。
.识别到达过的场景。
.计算图像间的相似性。
可选择的方法有:(1)对任意两个关键帧进行特征匹配。
(2)基于里程计的方法。
(3)基于外观的方法。(主流方法,相对独立,与前端、后端无关。)
建图:.用于导航、路径规划、可视化等。
.度量地图VS拓扑地图。
.稀疏地图VS稠密地图。

相机与图像:

包括小孔成像模型与双目相机模型。https://www.jianshu.com/p/bd1a0afcddbe
注意公式推导。从像素坐标到世界坐标。
相机内参与外参:内参包括fx,fy,畸变,主点坐标x0,y0。(即便包括径向畸变与切向畸变。桶形失真与枕形失真。)
外参包括旋转矩阵(欧拉角,四元数,R3向量表示)与平移矩阵(x,y,z平移向量。)

视觉里程计

经典slam中:用位姿-路标描述SLAM。
视觉slam中:用图像特征点作为SLAM的路标。
特征点的信息:.位置、大小、方向、评分等——关键点
.特征点周围的图像信息——描述子
常用算法:SIFT/SURF/ORB
特征点匹配方法:暴力匹配、快速最近邻(FLANN)。
光流法特征提取与匹配,直接法。:运动较大时需要使用金字塔。同时该方法可以用于跟踪图像中的稀疏关键点的运动轨迹。

匹配分类:

对极几何:匹配2个单目图片,得到2D-2D之间的关系。(用于估计3D点位置,初始化)
PNP:匹配的是单目图片与地图,得到3D-2D之间的关系。(初始化后,匹配新来的图片。)
ICP:匹配的是RGB-D图,得到的是3D-3D之间的关系。(点云融合,RGB-D图匹配)

计算相机运动与点云(特征点)空间位置

熟悉计算时公式推导。计算时用到本质矩阵与基本矩阵(先计算基本矩阵再由基本矩阵计算本质矩阵)。
本质矩阵描述的是相机的旋转与平移。
基本矩阵与内参有关。
通过两步即可计算位姿:1.由匹配点计算E。
2.由E恢复R、t。(奇异值分解)
对极约束的性质:×任意非0常数依然满足。
E共5个*度。
(计算时当成普通矩阵,由八个*度)用8点法求解。
八点法:.用于单目SLAM的初始化。
.尺度不确定性:可通过归一化t或特征点的平均深度。
.纯旋转问题:t=0时无解。
.多于八对点时:用最小二乘或RANSAC法求。
三角化:求得R、t后利用三角化计算特征点的3D位置(深度)。
.解的精度与平移有关,平移大时特征匹配效果不好。相机前进时,图像中心的点无法三角化(因为没有视差)。