SLAM是什么呢?Google一下,就会发现很长的一串名字-Simultaneous Localization and Mapping,哇感觉第一单词就不明白是干啥的啊!听我慢慢道来,先看后边的,Localization就是定位,Mapiing就是建图。所以从这里可以看到,这个东东至少玩了2个并发的线程。”同时“这个词就是要告诉我们localization 和mapping是同时发生的。问题是为什么要同时进行呢?这个我们稍后会讲。
第一个线程是定位,那么定位的结果是什么呢?一般我们知道飞机在空中有一个三维的坐标,这是位置。然后有一个飞行的方向,也是三维的,这是姿态,所以总共6维的信息。知道了这六维信息机器人就知道自己在哪里,地图,我们生活中的地图(百度地图)和这里的地图有啥不一样呢?百度地图呢,是为人而服务的,那么这里的地图既是给机器人用的,同时也给人看,所谓的可视化。有了地图呢,机器人就知道往哪里去,这就是导航,总而言之捏,slam算法就是为了导航而来滴。
SLAM怎么实现呢
感觉还是很有意思的啊,那么搞起来。
我们首先要考虑一个问题,人自己是怎么定位导航的呢?人使用眼和前厅系统综合完成自己定位,详细请参考博客玩转四旋翼无人机(sensor数据融合)。中的内容。
为了模拟人,机器人装了视觉和各种传感器。那么我们先从硬件着手,硬件呢得有一个机器人,当然没有也没关系,把自己模拟机器人好啦。然后可以把各