SLAM-0-基础

SLAM的基础概念。

  SLAM是Simultaneous Localization and Mapping的缩写,同时定位与地图构建。

1.基础概念

  • 单目相机:只使用一个相机的进行SLAM的做法称作单目SLAM(Monocular SLAM)。但只有二维信息,没有深度信息。如果想要恢复三维结构信息,那么必须改变相机的视角——y移动相机。
  • 视差:近处的物体移动快,远处的物体运动慢。当相机移动时,就会形成视差。
  • 尺度:单目SLAM估计的轨迹与地图与真实的轨迹与地图相差一个因子,称之为尺度。但是单目SLAM无法仅凭图像确定真实尺度,成为尺度不确定性
  • 双目相机:双目相机有两个单目相机组成,两个相机之间的距离是已知的,成为基线。与人眼的测量的原理相类似。这个技术需要大量计算才能估计每一个像素点的深度。(双目相机的测量距离与基线相关,基线越大,测量距离越大)双目相机非常耗费计算资源,往往需要FPGA或GPU加速。
  • 深度相机,又称RGB-D相机,其是通过红外结构光或者Time-of-Flight(飞行时间)。像激光传感器那样向物体发射光并接收返回的光。常见的RGB-D相机有Kinectxtion Pro LiveRealSence

2.框架介绍

经典框架图:
SLAM框架
SLAM流程如下:

  • 1.传感器信息读取:进行相机信息的读取和预处理。可能还会有码盘、惯性传感器等信息的读取和同步。
  • 2.视觉里程计(Visual Odometry):视觉里程计的任务是估算相邻图像间相机的运动,以及局部地图的样子。
  • 3.后端优化(Optimization):后端接受不同时刻视觉里程计测量的相机位姿,以及回环检测的信息,对它们进行优化,得到全局一致的轨迹和地图。
    1. 回环检测:回环检测判断机器人是否到达过先前的位置,如果检测到回环,会把信息提供给后端处理。
  • 5.建图:根据估计的轨迹,建立与任务要求对应的地图。

  在视觉SLAM中,前端和计算机视觉研究领域更为相关。比如图像的特征提取与匹配。后端则主要是滤波与非线性优化算法。

3.方程

抽象数学模型:

$x_k$为位置信息,$u_k$为输入,$w_k$为噪声。
观测方程:

在$x_k$位置看到路标点$y_j$,产生一个标志$z_{k,j}$。$v_{k,j}$为噪声。

这两个工程方程描述了最基本的SLAM问题,SLAM建模问题就是一个状态估计问题。

分类:分为线性/非线性、高斯、非高斯系统。

  • 线性高斯系统(Linear Gauss)是最简单的
Dock wechat
欢迎您扫一扫上面的微信公众号,订阅我的公众号