移动机器人 | 地图表示及构建
移动机器人 | 地图表示及构建
移动机器人对环境的感知,即移动机器人可以根据自身携带的传感器对所处周围环境进行环境信息的获取,并提取环境中有效的特征信息加以处理和理解,最终根据建立所在环境的模型表达所在环境的信息。随着传感器技术的发展,传感器在移动机器人中得到了充分的使用,大大提高了智能移动机器人对环境信息的获取能力。
移动机器人环境感知技术是完成自主机器人定位、导航的前提,通过对周围的环境进行有效的感知,移动机器人能够更好地进行自主定位、环境探索与自主导航等基本任务的实施。环境感知技术是智能机器人自主行为理论中的重要研究内容,具有十分重要的研究意义。
01、地图表示及构建
环境模型的表示是解决环境建模问题的第一步。环境建模本质上属于环境特征提取与知识表示方法的范畴,决定了系统如何存储、利用和获取知识,即怎样获取环境信息、怎样表示环境地图、怎样构建环境地图。所以,环境建模(Mapping)是建立机器人所处工作环境的各种物体(如障碍、路标等)准确的空间位置描述,即空间模型或地图。
建图需要关注以下几个问题:
(1) 便于理解和计算。创建地图的目的是供机器人进行路径规划,所以地图必须便于机器理解和计算。
(2) 方便扩展。当探测到新环境信息时,应该可以方便地添加到地图中。
(3) 便于定位。
典型的地图表示方法有尺度地图、拓扑地图、直接表征地图和混合地图。地图表示方法不同,适用场合和作用也就不一样。
尺度地图表示环境的几何属性。为了构建地图,移动机器人必须处理从传感器(激光雷达、声呐、摄像机等)获取的外部环境信息和自身的运动姿态。因为这些数据的来源不是很准确,所以在构建地图时需要对这些不确定性信息进行处理。概率理论和方法可以很好地处理不确定性信息,在移动机器人的地图构建中取得了广泛的应用。尺度地图又分为栅格地图和几何特征地图。
拓扑地图用顶点和边描述空间中各种物体之间或不同环境之间的关系,并没有一个明显的尺度概念。拓扑地图通常用图表表示,需要的存储空间小,通过其进行路径规划效率很高,适合大规模环境下的应用。然而,因为无精确的尺度信息,所以并不适合机器人的定位。
直接表征法省去了特征或栅格表示这一中间环节,直接使用传感器读入的数据描述环境,但因其数据存储量大,环境噪声干扰严重,特征数据的提取与匹配困难,使其应用受到一定限制。
混合地图是将上述地图组合在一起。近年来,为了结合以上几种环境描述方法的优点,人们提出了拓扑与几何相结合的混合地图模型,将整个环境表示为一个拓扑图,拓扑图中的每个节点都有该节点对应区域的详细几何描述。获得这种混合地图的方式有两种:一种是在拓扑地图中加入几何信息予以注释;另一种是在几何地图上提取拓扑信息形成拓扑地图。混合地图模型结合了拓扑地图与几何特征地图(栅格地图)的优点,是今后的发展趋势。
1●栅格地图
栅格地图的主要思想是把环境空间分解为局部单元并用它们是否被障碍占据进行状态描述。简单来说,栅格地图将环境分解成一系列离散栅格,每个栅格有一个值,表示该栅格被障碍物占用的情况,能够详细地描述环境的信息,易于机器人进行定位和路径规划,但路径规划效率不高。最简单的方式是用0、1表示空闲(Free)和占用(Occupied),则栅格地图等同于二值图。然而,传感器对障碍物的判断带有一定的概率,所以一般会用0~1的概率值描述栅格有障碍物的概率。这样,栅格地图不再是二值图,而是灰度图。图5-1(a)显示了根据二维传感器构建的栅格地图模型。
■ 图5-1 (a)栅格地图
在栅格地图中,对于一个点,当引入其Free状态的概率与其Occupied状态的概率的比值作为点的状态时,便引入占用率的概念,这样的表达方式称为占用栅格地图。
占用栅格地图生成的是概率地图。因为贝叶斯滤波器提供了一种计算后验概率的总体框架,标准的占用栅格地图构建算法通过贝叶斯滤波器(Bayes Filters)计算每个栅格占用的后验概率。假设{x,y}表示一个x,y栅格的坐标,P(mx,y)表示其占用的概率。每个栅格只有两种状态:占用或空闲。所以,问题就能够转换为计算二元变量集合的后验概率。
每个栅格的占用概率可由传感器的观测数据z1…zt和先验占用信息
确定,即每个栅格被占用的后验概率为
通过二维数组记录环境地图中对应栅格是否有障碍物,即栅格的障碍属性。为了简便,实际操作中可以设置栅格单元初始占用概率为0.5,之后按照地图更新公式计算获得当前时刻的占用概率值,占用概率值大于0.5的栅格障碍属性值置为“1”,表示有障碍;占用概率值小于0.5的栅格障碍属性值置为“0”,表示无障碍。占用概率栅格地图如图5-2所示。
■ 图5-2占用概率栅格地图
不同于特征地图,栅格地图不需要对应用环境中的特征信息进行精确的描述。栅格表示地图属于近似描述,对某个栅格的感知信息可直接与探测环境中的某个区域对应,因此栅格地图易于创建和维护。机器人对测得的障碍物的具体形状不太敏感,特别适于处理声呐的测量数据。栅格地图为移动机器人的空间感知和导航中的许多问题提供了一个鲁棒和统一的解决方案,主要优点有:
(1) 栅格地图简单、直观,可以精确地表示移动机器人的工作环境。
(2) 栅格地图本身对不确定性信息进行了描述,有利于进行多传感器信息融合的地图构建。
(3) 栅格地图为移动机器人的导航、避障、规划、定位等提供了基础。
(4) 匹配临时局部栅格地图可以检测运动物体。
栅格地图的缺点是,当在大型环境中或栅格单元划分比较细时,栅格法计算量迅速增长,需要大量内存单元,使计算机的实时处理变得很困难。
2●特征地图
基于特征信息的地图表示方法主要是依赖移动机器人从所探测环境的信息中提取抽象的具有几何特征的数据构建地图,如图5-1(b)所示。
■ 图5-1 (b)特征地图
在某些特定的室内结构化环境中,最常见的墙、走廊、门、房间等其特征就是边、角、面。因此,可以将环境定义为线段、平面、角点的集合,这些几何特征信息一般会使用坐标、长度、宽度以及颜色等一系列参数表示。一般来说,室外环境的特征提取比较困难,特征地图比较适合于室内结构化的环境描述。特征地图使用这些几何信息描述环境,其表示方法更为紧凑且便于位置估计和目标识别。
基于特征信息的地图一般使用以下的特征集合表示:
其中,ck是一个特征;n是这个地图中的特征总数。
近年来,很多SLAM研究都采用几何特征地图。该类方法的难点主要体现在如何从机器人收集的环境感知信息中提取出抽象的几何特征,以及定位与模型更新时如何基于观测到的特征在地图中寻找对应的匹配,即数据关联问题。提取特征需要对感知信息作额外的处理,且需要一定数量的感知数据才能获得结果。
通过人工标识的定位方法是比较常用的特征定位方法。此方法需要事先在作业环境中设置易于辨识的标识物。当应用自然标识定位时,自然信标的几何特征(如点、线、角等)得事先定义。特征方法建模定位准确,环境模型易于被描绘与表示,地图的参数化设置也适用于路径规划与运动控制,但特征法需要特征提取等预处理过程,对传感器噪声也比较敏感,只适于高度结构化环境。
3●拓扑地图
拓扑地图(图5-1(c))是按照环境结构定义的一种比较紧凑的地图表示方法,一般应用于室内环境。通常,环境的复杂度决定了拓扑地图的分辨率。拓扑地图由位置节点和节点间的连线(边)组成,两者间有严格的对应准则。环境的拓扑地图就是一张连接线图,其中节点表示环境中的重要位置点,如门、楼梯、电梯等,边表示节点间的连接关系。地铁、公交车线路图均是典型的拓扑地图实例,其中停靠站为节点,节点间的路为边。
■ 图5-1 (c)拓补地图
拓扑地图可组织为层次结构,例如,在底层一个位置可能就是一个房间,但在上一层时则可能是一栋建筑物或一座城市。这种表示方法能够完成快速的路径规划,并且为多线程的人机交互指令的下达提供了一个更理想的接口。拓扑地图把环境建模成一张具有拓扑意义的图,忽略了具体的几何特征数据。它不必精确描述不同节点间的地理位置关系,图形抽象,表示方便。采用抽象的理论直观地描述环境,因此拓扑地图对移动机器人位姿信息的准确度要求并不高,对于移动机器人的位姿误差,有了更好的鲁棒性。当移动机器人离开一个节点时,机器人只知道它正在哪一条边上行走就够了。
在拓扑地图中进行定位,移动机器人必须准确地分辨节点,该问题又称为地点识别。所以,节点一般要有明显可区分和辨别的标识或者特征,并能被传感器识别。如果探测环境中存在两个或者两个以上相似的节点时,并且机器人从不同路径进行探测时,使用拓扑地图就很难分辨是否为同一节点。
拓扑地图表示简单,其易于扩展,能够完成快速路径规划。但因为信息的抽象性,使得机器人难以进行精确、可靠的自定位。
4●直接表征法
直接表征法(图5-1(d))是直接使用传感器读入的数据描述环境,一般用于基于视觉传感器建图。传感器数据本身比特征或栅格这一中间表示环节包含了更丰富的环境描述信息,如图像、激光点云。所以,在直接应用原始传感器数据表示探测环境的同时,记录下来自不同位置以及方向的环境外部感知数据(包含某些坐标、几何特征或符号信息),使用这些数据作为在这些位置处的环境特征描述。通过直接表征地图进行定位方法,与识别拓扑位置采用的方法原理上是一样的,差别仅在于此方法试图从所获取的传感器数据中创建一个函数关系,以便更精确地确定机器人的位姿。因为在不同的方位获得的外观图像不同,如果在局部地图中传感器数据到移动机器人位姿间具有一一对应关系,那么将当前位置获取的图像与原来的参考图像进行比较,则能够跟踪移动机器人的位姿。该函数经过一定的转换,还能够进行全局定位。
■ 图5-1 (d)直接表征法地图
直接表征法数据存储量大,环境噪声干扰严重,特征数据的提取与匹配困难,使其应用受到一定限制。