《视觉SLAM十四讲》笔记

《视觉SLAM十四讲》笔记

ch02 初识SLAM

经典视觉SLAM框架

《视觉SLAM十四讲》笔记视觉SLAM流程包括以下步骤:
1.传感器信息读取: 在视觉SLAM中主要为相机图像信息的读取和预处理.如果是在机器人中,还可能有码盘、惯性传感器等信息的读取和同步.
2.视觉里程计(Visual Odometry,VO): 视觉里程计的任务是估算相邻图像间相机的运动,以及局部地图的样子.VO又称为前端(Front End).
视觉里程计不可避免地会出现累积漂移(Accumulating Drift)问题.
3.后端优化 (Optimization): 后端接受不同时刻视觉里程计测量的相机位姿,以及回环检测的信息,对它们进行优化,得到全局一致的轨迹和地图.由于接在VO之后,又称为后端(Back End).
在视觉 SLAM中,前端和计算机视觉研究领域更为相关,比如图像的特征提取与匹配等,后端则主要是滤波与非线性优化算法.
4.回环检测 (Loop Closing): 回环检测判断机器人是否到达过先前的位置.如果检测到回环,它会把信息提供给后端进行处理.
5.建图 (Mapping): 它根据估计的轨迹,建立与任务要求对应的地图.
地图的形式包括度量地图(精确表示地图物体的位置关系)与拓扑地图(更强调地图元素之间的关系)两种.

SLAM问题的数学表述

主要考虑从 k − 1时刻到 k 时刻,小萝卜的位置 x 是如何变化的.

运动方程:
《视觉SLAM十四讲》笔记1.xk​,xk−1​表示小萝卜在 k 和 k − 1时刻的位置
2.uk表示运动传感器的读数(有时也叫输入)
3.wk​表示噪声
假设小萝卜在 k时刻于xk​处探测到了某一个路标yj​
观测方程:
《视觉SLAM十四讲》笔记zk,j​–小萝卜在 xk​位置上看到路标点yj​,产生的观测数据.yj​表示第j个路标点
vk,j​–噪声
这两个方程描述了最基本的SLAM问题:当知道运动测量的读数u ,以及传感器的读数z 时,如何求解定位问题(估计 x )和建图问题(估计 y)?这时,我们就把SLAM问题建模成了一个状态估计问题:如何通过带有噪声的测量数据,估计内部的、隐藏着的状态变量?

ch03 三维空间刚体运动

旋转矩阵

点、向量和坐标系

1.向量a在线性空间的基[e1​,e2​,e3​]下的坐标为[a1​,a2​,a3​]T.
《视觉SLAM十四讲》笔记2.向量的内积与外积
2.1向量的内积: 描述向量间的投影关系
《视觉SLAM十四讲》笔记 2.2向量的外积: 描述向量的旋转
《视觉SLAM十四讲》笔记其中 a^表示a的反对称矩阵

《视觉SLAM十四讲》笔记

坐标系间的欧氏变换

1.欧式变换:

在欧式变换前后的两个坐标系下,同一个向量的模长和方向不发生改变,是为欧式变换.

一个欧式变换由一个旋转和一个平移组成.
2.旋转矩阵 R:
2.1推导:设单位正交基 [e1​,e2​,e3​]经过一次旋转变成了 [e1′​,e2′​,e3′​],对于同一个向量 a,在两个坐标系下的坐标分别为 [a1​,a2​,a3​]T和 [a1′​,a2′​,a3′​]T.根据坐标的定义:
《视觉SLAM十四讲》笔记等式左右两边同时左乘[e1T​,e2T​,e3T​]T,得到:
《视觉SLAM十四讲》笔记矩阵R描述了旋转,称为旋转矩阵.

上一篇:ORB_SLAM2及其他SLAM精度测评


下一篇:WinSock之服务查询