slam第一讲(初识slam)

1.SLAM : Simultaneous Localization and Mapping, 同时定位与地图构建

  • 定义: 搭载特定传感器的主体,在没有环境先验信息的情况下,于运动过程中建立环境的模型,同时估计自身的运动(位姿)。
  • 如果这里的传感器是相机,就称之为 视觉 SLAM

2.SLAM 的目的是解决“定位”与“地图构建”这两个问题

  • 希望实时地、在没有先验知识的情况下进行 SLAM,要解决这个问题就很不简单
  • SLAM 发展了将近 30 多年,相机才能认识到自身的位置,才能估算自己的运动

3.SLAM 应用点

  • 室内扫地机
  • 室内服务机器人
  • 自动驾驶
  • 空中的无人机
  • 虚拟现实
  • 增强现实

 4.SLAM 系统分成几个模块:传感器信息读取,视觉里程计、后端优化、建图以及回环检测 

传感器信息读取:

在视觉slam中主要为相机图像信息的读取和预处理,如果是在机器人中,还可能有码盘,惯性传感器等信息的读取和同步

视觉里程计(Visual Odometry,VO):

视觉里程计的任务是估算相邻图像间相机的运动,以及局部地图的样子。VO又称为前端(Front End)

 后端优化(Optimization):

后端接受不同时刻视觉里程计测量的相机位姿,以及回环检测的信息,对它们进行优化,得到全局一致的轨迹和地图。由于接在VO之后,又称为后端(Back End)

回环检测(Loop Closing):

 回环检测判断机器人是否到达过先前的位置,如果检测到回环,他会把信息提供给后端进行处理

建图(Mapping):

根据估计的轨迹,建立与任务要求对应的地图

  • 度量地图(Metric Map):度量地图强调精确地表示地图中物体的位置关系,通常我们用 稀疏(Sparse) 和 稠密(Dense) 对它们进行分类。
  1. 稀疏地图:进行了一定程度的抽象,并不需要表达所有的物体。
  2. 稠密地图:通常按照某种分辨率,由许多小块组成。二维度量地图是许多小格子(Grid),三维这是许多小方块(Voxel)。一般地含有占据、空闲、未知三种状态,以表达该格内是否有物体。

     缺点:这种地图需要存储每一个小格子的状态,耗费大量的存储空间,而且多数情况下地图的许多细节部分是无用的。另一方面,大规模度量地图有时会出现一致性问题。很小的一点转向误差,可能会导致两间屋子的墙出现重叠,使得地图失效。

  • 拓扑地图(Topological Map):拓扑地图则更强调地图元素之间的关系。拓扑地图是一个图(Graph),由节点和边组成,只考虑节点间的连通性。它放松了地图对精确位置的需要,去掉地图的细节问题,是一种更为紧凑的表达方式。

  缺点:拓扑地图不擅长表达具有复杂结构的地图。如何对地图进行分割形成结点和边,又如何使用拓扑地图进行导航与路径规划。

 5.slam问题的数学描述

对于运动,记一段离散的时刻为t=1,2,..K,在这些时刻,用x表示自身位置,于是各时刻的位置就记为x1,x2,...xK,这些构成了运动轨迹。

对于地图,假设地图是由许多个路标组成的,而每个时刻,传感器会测量到一部分路标点,得到他们的观测数据,设路标点共有N个,用y1,y2 ...yN来表示它们

  • 运动:考虑从k-1时刻到k时刻,小萝卜的位置x是如何变化的
  • 观测:假设小萝卜在k时刻于xk处探测到了某一个路标yj,我们要考虑这件事情是如何用数学语言来描述的

运动方程:x_{_{k}}=f(x_{k-1},u_{k},w_{k})

uk是运动传感器的读数(有时也叫输入),wk是噪声

观测方程:z_{_{k,j}}=h(y_{j},x_{k},v_{k,j})

vk,j是这次观测里的噪声,在位置xk上看到某个路标点,产生了一个观测数据zk,j

对于不同的传感器,这两个方程有不同的参数化形式。如果我们保持通用性,把它们取成抽象形式,那么SLAM过程可总结为上述两个基本方程。这两个方程描述了最基本的SLAM问题:当我们知道运动测量的读数 u ,以及传感器的读数 z 时,如何求解定位问题(估计 x)和建图问题(估计 y)? 这时,我们把SLAM问题建模成了一个状态估计问题:如何通过带有噪声的测量数据,估计内部的、隐藏着的状态变量?

状态估计问题的求解,与两个方程的具体形式,以及噪声服从哪种分布有关。我们按照运动和观测方程是否为线性,噪声是否服从高斯分布进行分类,分为线性/非线性和高斯/非高斯系统。其中线性高斯系统(LG 系统)最为简单,他的无偏最优估计可以由卡尔曼滤波器(KF)给出。而在复杂的非线性非高斯系统(NLNG系统)中,我们会使用以扩展卡尔曼滤波器(EKF)和非线性优化两大类方法去求解它。时至今日,主流视觉SLAM使用以图优化(Graph Optimization)为代表的优化技术进行状态估计。我们以为优化技术已经明显优于滤波器技术,只要计算资源允许,我们通常都偏向于使用优化方法。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值