1. 介绍
SLAM的英文名称是simultaneous localization and mapping或Concurrent Mapping and Localization,中文名称是即时定位与地图构建或并发建图与定位。
SLAM就是一项技术,这个技术可以帮助一个运动的物体定位。之所以称为即时定位与地图构建,是因为它可以在定位的同时创建地图。
2. 应用场景
2.1 场景一
你买回家一个扫地机器人(SLAM的应用场景之一),把它随意放在你家客厅的某个位置开始扫地。这个扫地机器人对你家完全陌生,它的任务是把你家客厅和所有房间打扫干净(尽量不重复,不能像无头苍蝇那样随便扫)。为了完成任务它需要记住:
- 自己从哪出发。
- 自己走过哪些地方。
- 自己现在在哪(相对出发点的位置)。
2.2 场景二
机器人被安排到一个山洞中了解内部空间结构。山洞很大,洞穴相连,一张照片不能拍出布局。机器人从山洞入口开始,要一边走一边根据自己所见画出山洞布局图。为了创建布局图它需要记住:
- 自己从哪出发。
- 山洞每个区域相对出发点的坐标。
3. 研究内容
3.1 主要研究内容
从2中的应用场景可以总结SLAM的任务:
- 在出发点选定一个坐标系。比如出发点是(0, 0, 0)。
- 推断每一时刻自己在选定坐标系中的坐标,其实就是相对出发点的坐标,比如(1, 2, 3)。这个过程就是定位。
如果要建图,只需把所见情景保存下来。如果要用于下次定位,只需在保存所见情景(比如一个独一无二的标记)的时候保存下它的位置,下次看到这个标记就读取它的位置信息,不再需要推断。如果要记录自己走过哪些地方,只需在创建的地图上标记一下。这些都不是重点。
推断每一时刻自己在选定坐标系上的坐标就是SLAM的主要研究内容。
3.2 位置表示的传递性
位置的表示是具有传递性的,比如从(0, 0, 0)位置出发,第1次推断自己的位置与第0次的位置(出发点)的相对坐标是(1, 2, 3),,第2次推断自己的位置与第1次的相对坐标是(4, 5, 6),那么第二次推断时的坐标就是(5, 7, 9)。
所以推断每一时刻自己在选定坐标系上的坐标这一任务可以分解为推断相邻位置的相对坐标。
之所以利用传递性,是因为机器人的传感器感应范围有限。如果机器人某时刻获取的数据与第一次获取的数据没有联系,我们就不能直接推断出该时刻与出发点的位置关系。比如你有一把量程为10厘米的尺子,需要测量的物体长度超过10厘米,那么你就需要多次测量:第一次测量点为位置1,相对起点是10厘米;第二次测量点为位置2,相对位置1是10厘米;第三次测量点为位置3,相对位置2是3.12厘米。那么被测量物体长度就是23.12厘米。
根据传递性,进行多次相邻位置的推断,就可以知道每个位置相对起点的坐标(即它们在选定坐标系中的坐标)。
来源:CSDN
作者:共产主义建设者
链接:https://blog.csdn.net/qq_26697045/article/details/103614760