建图(Mapping)是slam的两大目标之一。上述讨论的都是定位,讨论了特征值点的定位,直接法的定位,以及后端优化。在经典的slam模型中,所谓的地图,即所有路标点的集合。一旦确定了路标点的位置,可以说明完成了建图。只是如此,那么视觉里程计,Bundle Adjustment算完成了任务,还额外的进行了优化。
但建图的需求不同,SLAM作为一种底层技术,往往是用来为上层应用提供信息。例如扫地机器人需要完成扫地工作,希望计算一条能够覆盖整张地图的路径。或者,如果上层是一个增强现实设备,那么开发者可能将虚拟物体叠加在现实物体之中。在视觉slam看来,“建图”是服务与“定位”的; 但在应用层看来,“建图”明显还带来许多其他需求:
定位:定位是基本功能不用多说。视觉里程计讨论如何利用局部地图来实现定位。在回环检测部分,只要有全局的描述子信息,就能通过回环检测确定机器人的位置。
导航:在地图中进行路径规划,在任意两个地图间寻找路径,然后控制自己运动到目标点的过程。该过程中至少知道地图中哪些地方不可通过,而哪些地方是可以通过。这属于稀疏特征点地图的能力范围,至少得是一种稠密的地图。
避障:避障也是机器人经常碰到的一个问题,不过它更注重局部的,动态的导航物的处理。同样,仅有特征点,无法判断某个特征点是否为障碍物,所以需要稠密地图。
重建:稠密地图,利用slam获得周围环境的重建效果,并把它展示给其他人看。例如:三维的视频通话或者网上购物等。也可以构建带纹理的平面,就像电子游戏中的三维场景那样。
交互:主要指人与地图之
视觉slam14讲之建图
最新推荐文章于 2025-01-02 14:41:47 发布