机器人导航路径的生成方法及装置

文档序号:1873884 发布日期:2021-11-23 浏览:1次 >En<

阅读说明:本技术 机器人导航路径的生成方法及装置 (Method and device for generating robot navigation path ) 是由 喻超 李民 俞浩 常新伟 于 2021-08-11 设计创作,主要内容包括:本发明公开了一种机器人导航路径的生成方法及装置。其中,该方法包括:获取机器人所处目标环境的三维点云数据;根据预设的第一高度阈值对三维点云数据进行分组,得到高度不同的多组三维点云层,其中,第一高度阈值为一个或多个高度值;基于多组三维点云层,生成包括多级高度的高程地图;根据高程地图生成机器人在目标环境中的导航路径。本发明解决了相关技术中机器人的根据平面地图生成导航路径,在地形复杂的情况下,难以有效提供导航路径的技术问题。(The invention discloses a method and a device for generating a robot navigation path. Wherein, the method comprises the following steps: acquiring three-dimensional point cloud data of a target environment where the robot is located; grouping the three-dimensional point cloud data according to a preset first height threshold value to obtain a plurality of groups of three-dimensional point cloud layers with different heights, wherein the first height threshold value is one or more height values; generating an elevation map comprising multiple levels of heights based on the multiple groups of three-dimensional point cloud layers; and generating a navigation path of the robot in the target environment according to the elevation map. The invention solves the technical problem that in the related art, the robot generates the navigation path according to the plane map and is difficult to effectively provide the navigation path under the condition of complex terrain.)

机器人导航路径的生成方法及装置

技术领域

本发明涉及机器人导航领域,具体而言,涉及一种机器人导航路径的生成方法及装置。

背景技术

随着机器人的技术发展,机器人的自主导航在智能机器人中的作用越来越重要,其根据机器人搭载的传感装置,或者根据机器人所处环境地图进行分析,生成机器人的导航路线,使得机器人可以自主避障,在环境中进行移动。

传统的可通行地图构建方式依赖的高程地图只考虑地形的单级高度,也即是地面上较小高度范围的地图,这种单级高程地图较为粗糙,只能考虑到地面上的情况,在面向复杂地形环境下无法充分发挥移动智能体的运动学能力,例如,在地面上放置的高脚桌,就无法被考虑到,在机器人或机器人上的设备高度高于高脚桌的桌面高度时,就无法根据单级高度地图提供的导航路径控制机器人移动,在机器人移动到高脚桌的位置就会发生碰撞,因而无法进一步提高移动智能体在复杂地形上的通过能力。

针对上述的问题,目前尚未提出有效的解决方案。

发明内容

本发明实施例提供了一种机器人导航路径的生成方法及装置,以至少解决相关技术中机器人的根据平面地图生成导航路径,在地形复杂的情况下,难以有效提供导航路径的技术问题。

根据本发明实施例的一个方面,提供了一种机器人导航路径的生成方法,包括:获取机器人所处目标环境的三维点云数据;根据预设的第一高度阈值对所述三维点云数据进行分组,得到高度不同的多组三维点云层,其中,所述第一高度阈值为一个或多个高度值;基于多组所述三维点云层,生成包括多级高度的高程地图;根据所述高程地图生成所述机器人在所述目标环境中的导航路径。

可选的,所述获取机器人所处目标环境的三维点云数据包括:通过设置在所述机器人上的传感装置,采集所述机器人预设范围内的原始三维点云;从所述原始三维点云中,选取目标区域的目标三维点云,其中,所述目标区域为所述机器人前方第一距离范围内以及上方第二距离范围内的区域;对所述目标三维点云进行降采样,得到所述机器人所处目标环境的三维点云数据。

可选的,基于多组所述三维点云层,生成包括多级高度的高程地图包括:确定所述高程地图的坐标系,其中,所述坐标系与所述机器人的机体坐标系相对静止;根据世界坐标系的地图栅格和所述坐标系,确定所述高程地图对应的目标栅格;根据目标三维点云层,确定所述目标栅格中每个单元格的平面高度,其中,所述平面高度为所述单元格对应的三维点云层中点云高度最高的高度值,所述目标三维点云层为多组三维点云层中任一组三维点云层;根据所述目标栅格的所有单元格的平面高度,拟合出所述目标三维点云层对应的目标地图层;通过遍历多组三维点云层,得到多组三维点云层分别对应的地图层,生成所述高程地图。

可选的,所述高程地图包括多个高度不同的地图层,多个所述地图层与所述多组三维点云层一一对应;所述根据所述高程地图生成所述机器人在所述目标环境中的导航路径包括:根据预设的第二高度阈值对多个所述地图层进行划分;得到高度低于所述第二高度阈值的第一地图层和高度高于所述第二高度阈值的第二地图层;根据所述第一地图层和所述第二地图层生成所述机器人在所述目标环境中的导航路径。

可选的,所述根据所述第一地图层和所述第二地图层生成所述机器人在所述目标环境中的导航路径包括:根据所述第一地图层确定所述目标环境中是否存在所述机器人的可通行区域;若所述目标环境中存在所述机器人的可通行区域,则根据所述第二地图层确定所述可通行区域是否存在碰撞事件;在所述可通行区域不存在碰撞事件的情况下,确定所述可通行区域有效;在有效的所述可通行区域中根据路径生成算法,生成所述机器人的导航路径。

可选的,所述方法还包括:在所述目标环境中不存在所述可通行区域,或者所述可通行区域存在所述碰撞事件的情况下,控制机器人改变位姿,重新执行获取机器人所处目标环境的三维点云数据的步骤,直至机器人所处目标环境的可通行区域有效。

可选的,所述根据所述第一地图层确定所述目标环境中是否存在可通行区域包括:对所述第一地图层先后进行多个维度滤波,确定所述第一地图层的各个单元格针对每一维度可通行的通行值,其中,所述通行值为多个,多个通行值分别对应多个维度,所述第一地图层包括多个划分的单元格;在各个维度的通行值均未超过各个维度对应的通行阈值的情况下,根据各个维度的预设权重,以及各个维度的通行值,计算所述第一地图层的各个单元格的总通行值;在所述总通行值达到总通行阈值的情况下,确定所述第一地图层的单元格可通行,其中,所述总通行阈值与所述机器人的通行能力对应;根据可通行的多个单元格,确定所述可通行区域。

可选的,根据所述第二地图层确定所述可通行区域是否存在碰撞事件包括:根据所述第二地图层的点云拟合出所述可通行区域上方的结构;确定所述机器人运动时的最低高度;在所述最低高度大于等于所述结构的最低高度的情况下,确定所述可通行区域存在碰撞事件。

根据本发明实施例的另一方面,还提供了一种机器人导航路径的生成装置,包括:获取模块,用于获取机器人所处目标环境的三维点云数据;分组模块,用于根据预设的第一高度阈值对所述三维点云数据进行分组,得到高度不同的多组三维点云层,其中,所述第一高度阈值为一个或多个高度值;第一生成模块,用于基于多组所述三维点云层,生成所述目标环境的高程地图,其中,所述高程地图包括多个高度不同的地图层;第二生成模块,用于根据所述高程地图生成所述机器人在所述目标环境中的导航路径。

根据本发明实施例的另一方面,还提供了一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行上述中任意一项所述的机器人导航路径的生成方法。

根据本发明实施例的另一方面,还提供了一种计算机存储介质,其特征在于,所述计算机存储介质包括存储的程序,其中,在所述程序运行时控制所述计算机存储介质所在设备执行上述中任意一项所述的机器人导航路径的生成方法。

在本发明实施例中,采用获取机器人所处目标环境的三维点云数据,根据预设的第一高度阈值对三维点云数据进行分组,得到高度不同的多组三维点云层,基于多组三维点云层,生成包括多级高度的高程地图,根据高程地图生成机器人在目标环境中的导航路径的方式,达到了根据高程地图对机器人进行导航,避免了不考虑复杂地形在一定高度之上的情况,导致导航路径无法通行的目的,实现了提高了导航路径的准确性,在复杂地形也能够提供有效导航路径的技术效果,进而解决了相关技术中机器人的根据平面地图生成导航路径,在地形复杂的情况下,难以有效提供导航路径的技术问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的一种机器人导航路径的生成方法的流程图;

图2是根据本发明实施方式的基于多级高程地图生成可通行地图的流程图;

图3是根据本发明实施方式的多级高程地图的示意图;

图4是根据本发明实施例的一种机器人导航路径的生成装置的示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

根据本发明实施例,提供了一种机器人导航路径的生成方法的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

图1是根据本发明实施例的一种机器人导航路径的生成方法的流程图,如图1所示,该方法包括如下步骤:

步骤S102,获取机器人所处目标环境的三维点云数据;

步骤S104,根据预设的第一高度阈值对三维点云数据进行分组,得到高度不同的多组三维点云层,其中,第一高度阈值为一个或多个高度值;

步骤S106,基于多组三维点云层,生成目标环境的高程地图,其中,高程地图包括多个高度不同的地图层;

步骤S108,根据高程地图生成机器人在目标环境中的导航路径。

通过上述步骤,采用获取机器人所处目标环境的三维点云数据,根据预设的第一高度阈值对三维点云数据进行分组,得到高度不同的多组三维点云层,基于多组三维点云层,生成包括多级高度的高程地图,根据高程地图生成机器人在目标环境中的导航路径的方式,达到了根据高程地图对机器人进行导航,避免了不考虑复杂地形在一定高度之上的情况,导致导航路径无法通行的目的,实现了提高了导航路径的准确性,在复杂地形也能够提供有效导航路径的技术效果,进而解决了相关技术中机器人的根据平面地图生成导航路径,在地形复杂的情况下,难以有效提供导航路径的技术问题。

上述机器人可以为智能机器人,机器人上设置有传感装置用于采集目标环境的三维点云数据,例如,RGB-D深度相机,双目相机,带旋转机构的2D单线激光雷达,3D多线激光雷达:机械式、半固态式或纯固态式等。通过采集机器人前方的目标环境的三维点云,生成目标环境的高程地图。

上述目标环境可以为机器人前方预定范围的区域环境。对于机器人而言,前方一定范围的环境是移动所必须的,而且传感装置的采集精度也已随着距离的加长,导致采集的点云数据精度较差,在生成高程地图时,距离较远处的环境的三维点云精度差,对机器人的导航作用小,而且会占用运算资源。因此,选择机器人前方预定范围的目标环境,进行点云采集和高程地图的生成,不仅可以节约资源,还可以更加高效和准确。

上述三维点云数据是基于机器人所在的世界坐标系,其三维点云的三维坐标也是相对于世界坐标系而言的,因此,在机器人采集目标环境的三维点云之后,可以根据机器人的机体坐标系或者高程地图的坐标系,对三维点云的三维坐标进行转换,方便后续在生成高程地图时对三维点云进行处理。

上述根据预设的第一高度阈值对三维点云数据进行分组,得到高度不同的多组三维点云层,其中,第一高度阈值为一个或多个高度值。上述第一高度阈值的个数取决于高程地图需要生成的地图层的数量。例如,高程地图需要生成两个地图层,则需要一个高度值,高程地图需要生成三个地图层,则需要两个高度值。通过高度值对三维点云进行分组,将三维点云分成多组与高程地图的地图层对应的三维点云层。

在基于多组三维点云层生成高程地图时,根据一组三维点云层,生成一个高程地图的地图层,从而根据多个组三维点云层,生成高程地图的多个地图层,从而生成包括多级高度的高程地图。

上述高程地图是基于机器人的目标环境的三维点云生成的,其包含了目标环境中的各个高度的物体或者障碍的三维点云,其生成的高程地图不仅包括了地面上的障碍和地形,还包括了一定高度的障碍和通道,其反应的是整个目标环境三维立体的通行情况,相比于现有技术中单级高度的高程地图,只能反应地面上一定范围的障碍和通道,会导致其确定的导航路径并不是实际的最优路径,上述高程地图具有更只能更准确的特点,解决了相关技术中机器人的根据平面地图生成导航路径,在地形复杂的情况下,难以有效提供导航路径的技术问题。

可选的,获取机器人所处目标环境的三维点云数据包括:通过设置在机器人上的传感装置,采集机器人预设范围内的原始三维点云;从原始三维点云中,选取目标区域的目标三维点云,其中,目标区域为机器人前方第一距离范围内以及上方第二距离范围内的区域;对目标三维点云进行降采样,得到机器人所处目标环境的三维点云数据。

上述传感装置在采集三维点云时,对实际的采集范围,往往难以精准控制。通常来讲传感装置具有自己一定的有效采集范围,但是该采集范围通常不能够被改变。因此,在传感装置采集周围环境的三维点云,得到上述原始三维点云,从原始三维点云中,根据目标区域的范围,选取目标区域对应的目标三维点云,目标区域外的原始点云可以删除。

上述目标区域为机器人前方第一距离范围内以及上方第二距离范围内的区域,具体的,可以以前方第一距离,上方第二距离,以及传感装置的采集宽度为长宽高的长方体区域,也可以为以第一距离为半径,第二距离为高度的半圆柱区域。

对目标三维点云进行降采样,可以通过滤波器对目标三维点云进行降采样处理,然后均匀化点云在三维空间的分布,可以提高三维点云的准确度和稳定性,以便后续处理。

可选的,基于多组三维点云层,生成包括多级高度的高程地图包括:确定高程地图的坐标系,其中,坐标系与机器人的机体坐标系相对静止;根据世界坐标系的地图栅格和坐标系,确定高程地图对应的目标栅格;根据目标三维点云层,确定目标栅格中每个单元格的平面高度,其中,平面高度为单元格对应的三维点云层中点云高度最高的高度值,目标三维点云层为多组三维点云层中任一组三维点云层;根据目标栅格的所有单元格的平面高度,拟合出目标三维点云层对应的目标地图层;通过遍历多组三维点云层,得到多组三维点云层分别对应的地图层,生成高程地图。

在根据多组三维点云层生成高程地图时,先建立高程地图的坐标,该高程地图的坐标系相对于机器人是静止不同的,保持与机器人的同步移动,也即是机器人发生移动时,高程地图的坐标系也发生移动,其生成的高程地图也随之移动,在机器人发生旋转时,高程地图的坐标系也发生旋转,其生成的高程地图也随之旋转。这样就可以有效避免因机器人连续移动导致的定位累积误差,进而导致搞成地图也产生累积误差的问题,确保每一时刻当前的高程地图都相对于机器人都是准确的。

上述世界坐标系也即是机器人所处三维空间的世界坐标系,可以包括经纬度和海拔高度。上述地图栅格是相对于世界坐标系划分的,与真实世界的位置相对应。根据高程地图的坐标系原点的世界坐标,就可以确定高程地图对应的目标栅格。确定高程地图的目标栅格,是为了方便在高程地图更新时,只改变变化的单元格,对于没有发生变化的单元格,或者变化程度较小可以忽略的单元格可以从更新前的高程地图中集成,这样可以提高高程地图更细的效率。同时为高程地图划分单元格,也是为了后续方便根据单元格的三维点云,对地图进行拟合,保证后续地图的生成。

上述根据目标三维点云层,确定目标栅格中每个单元格的平面高度,其中,平面高度为单元格对应的三维点云层中点云高度最高的高度值,目标三维点云层为多组三维点云层中任一组三维点云层。也即是从多组三维点云层中选取一个,确定目标栅格中每个单元格对应的点云,根据每个单元格对应的一个或多个点云的高度,确定单元格的平面高度,此处的平面高度实际上是每个单元格确定其对应的点云的最高高度之后,根据该高度生成单元格的平面,则该高度也即是该平面的高度。

然后根据目标栅格的多个单元格的平面,拟合出该目标三维点云层对应的地图层。采用相同的方式,对多组三维点云层中的其他三维点云层进行处理,得到多组三维点云层分别对应的地图层。根据确定的多个地图层,生成高程地图。

需要说明的是,本实施例中上述三维点云层的数量可以为两个,其生成的地图层也为两个。

可选的,高程地图包括多个高度不同的地图层,多个地图层与多组三维点云层一一对应;根据高程地图生成机器人在目标环境中的导航路径包括:根据预设的第二高度阈值对多个地图层进行划分;得到高度低于第二高度阈值的第一地图层和高度高于第二高度阈值的第二地图层;根据第一地图层和第二地图层生成机器人在目标环境中的导航路径。

在上述地图层的数量为两个的情况下,上述第二高度阈值等于上述第一高度阈值。在上述地图层的数量超过两个的情况下,上述第二高度可以为上述第一高度阈值中的多个高度中的一个。将多个地图层划分为在下的第一地图层,用以表示地面物体,以及在上的第二地图层,用以表示高处的障碍。

根据第一地图层可以确定机器人在地面上的可通行区域或者可通行路径,根据第二地图层可以确定第一地图层确定的可通行区域或者可通行路径,是否存在高处的碰撞障碍,若存在,说明该可通行区域或者可通行路径实际上不可通行。进而确定机器人在目标环境中的有效的导航路径。

具体的,根据第一地图层和第二地图层生成机器人在目标环境中的导航路径包括:根据第一地图层确定目标环境中是否存在机器人的可通行区域;若目标环境中存在机器人的可通行区域,则根据第二地图层确定可通行区域是否存在碰撞事件;在可通行区域不存在碰撞事件的情况下,确定可通行区域有效;在有效的可通行区域中根据路径生成算法,生成机器人的导航路径。

上述路径生成算法可以为现有技术的RT路径算法等。

可选的,方法还包括:在目标环境中不存在可通行区域,或者可通行区域存在碰撞事件的情况下,控制机器人改变位姿,重新执行获取机器人所处目标环境的三维点云数据的步骤,直至机器人所处目标环境的可通行区域有效。

目标环境中不存在可通行区域,或者可通行区域存在碰撞事件,则说明本目标区域内没有可以通行的有效导航路径,则控制机器人改变位姿,重新确定目标环境,获取目标环境的三维点云,执行上述步骤,确定新的目标环境中的导航路径。

上述位姿也即是机器人的位置和姿态,改变位姿也即是机器人发生移动或者姿态变化,其发生姿态变化,机器人的总高度和宽度都会发生变化。机器人移动就会导致位置发生变化,其面对的目标区域可能就会出现新的环境,则需要对新的环境是否具有有效的可通行区域进行确定。在机器人的姿态发生变化时,可以是机器人自身部件发生变化,或者机器人朝向发生变化。例如,图3所示的机器人为腿足式机器人,腿足式机器人的腿足可以发生高度变化,就会引起机器人的总高度发生变化,原来不可通行的路径,在高度变化后就可能通行。机器人位姿的变化还可以是旋转机器人的朝向,使机器人朝向新的目标区域,确定该目标区域是否存在有效的可通行区域。

需要说明的是,上述位姿变化的多种方式,包括移动位置,改变自身部件形态,旋转朝向等,其目的都是为了获取新的目标区域,从而根据新的目标区域确定是否具有可通行区域。在一些实施例中,上述多种位姿变化的方式之间还可以设置执行的优先级,例如,在机器人通行时,由于当前的目标区域中的碰撞高度和可通行区域已经确定,优先选择改变自身部件,在能够通过改变自身部件的形态就通行的情况下,可以避免更新目标区域,以提高导航的效率。在改变自身部件的姿态也无法通行的情况下,说明必须要更新目标区域,然后优先选择在原地位置改变朝向,这样可以基于原目标区域进行一定角度的旋转,可以结合以确定的可通行区域,来确定是否存在有效的可通行区域,也不会造成原目标区域运算的浪费,而且避免较为消耗能量的机器人移动。在转动朝向也无法解决的情况下,可以移动机器人,寻找可以通行的有效可通行区域。

可选的,根据第一地图层确定目标环境中是否存在可通行区域包括:对第一地图层先后进行多个维度滤波,确定第一地图层的各个单元格针对每一维度可通行的通行值,其中,通行值为多个,多个通行值分别对应多个维度,第一地图层包括多个划分的单元格;在各个维度的通行值均未超过各个维度对应的通行阈值的情况下,根据各个维度的预设权重,以及各个维度的通行值,计算第一地图层的各个单元格的总通行值;在总通行值达到总通行阈值的情况下,确定第一地图层的单元格可通行,其中,总通行阈值与机器人的通行能力对应;根据可通行的多个单元格,确定可通行区域。

上述多个维度的通行值,可以包括坡度通行值,跨高通行值,崎岖度通行值等。在实施时,可以采用一套串行滤波器对该地图层依次执行以下滤波:(1)坡度(slope)滤波,评估爬坡可通行性,(2)跨高(step)滤波,评估越障可行性,(3)崎岖度(roughness)滤波,从而对第一地图单元的单元格是否可行进行确定。

由于上述每一项维度的通行值,都是机器人通行所必须的,因此,需要保证的是每个维度的通行值都要满足要求,一旦一个维度的通行值不满足通行阈值要求,则说明机器人无法通过,就不再继续后续的维度的通行值的确定。从而节省了计算资源。

上述多个维度是存在权重值的,对机器人通行影响越大的维度,其权重值越高,本实施例中的机器人可以为通过滚轮移动的机器人,其权重最高的坡度,跨高次之,崎岖度的权重最小。因此,在确定多项维度的通行值时,可以按照维度的权重顺序,来进行滤波,可以最高效率的进行筛选。

在各个维度的通行值均未超过各个维度对应的通行阈值的情况下,则说明机器人可以通行,根据各个维度的预设权重,以及各个维度的通行值,计算第一地图层的各个单元格的总通行值,根据总通行值评估机器人对该单元格的通行难易程度,或者通行成功程度。

上述总通行阈值与机器人的通行能力对应,也即是总通行阈值是预先针对该机器人进行评估后得到的,其机器人的通行能力越高,可以包括爬坡能力越强,跨高能力越强,崎岖通行能力越强等,其对应的通行阈值也就越高。

在总通行值达到总通行阈值的情况下,确定第一地图层的单元格可通行,根据可通行的多个单元格,确定可通行区域。在另一些实施例中,还可以根据可通行区域集合路径生成算法生成可通行路径,也即是上述导航路径。

在第一地图层确定出机器人的可通行路径后,根据第二地图层确定可通行区域是否存在碰撞事件包括:根据第二地图层的点云拟合出可通行区域上方的结构;确定机器人运动时的最低高度;在最低高度大于等于结构的最低高度的情况下,确定可通行区域存在碰撞事件。

若可通行区域存在碰撞事件,则说明该可通行区域实际不可通行,若可通行区域不存在碰撞事件,说明该可通行区域确实可行。最终根据一个或多个没有碰撞事件的可通行区域,确定机器人的通行的最佳路径作为导航路径,例如,总通行值最高的路径,或者,距离最近的路径,或者行驶速度最高的路径等。

需要说明的是,本实施例还提供了一种可选的实施方式,下面对该实施方式进行详细说明。

本实施方式提供了一种应用于地面移动智能体的基于多级高度信息的可通行地图构建方法,用于辅助地面移动智能体实现安全而高效的自主导航。上述移动智能体相当于上述机器人。本实施方式概括为移动智能体通过搭载的传感装置感知附近路面地形,生成分级高度的高程地图,基于高程地图来构建符合移动智能体运动学约束的可通行地图。移动智能体的运动规划功能模块在可通行地图上规划出避开或穿越危险地形的最短可达路径。

图2是根据本发明实施方式的基于多级高程地图生成可通行地图的流程图,如图2所示,本实施方式的步骤如下:

1.感知地形生成三维点云:地面移动智能体通过搭载的传感装置感知附近(尤其是前方)地面及地面上方状况,生成地面地形的原始三维点云。其中,传感装置包括但不局限以下几类:(1)RGB-D深度相机(2)双目相机(3)带旋转机构的2D单线激光雷达(4)3D多线激光雷达:机械式、半固态式或纯固态式。

2.三维点云处理:接收感知前端获取的地面地形的原始三维点云,首先从原始输入的原始三维点云中提取一个感兴趣立体区域(也即是目标区域)内的局部的目标三维点云,上述目标区域的定义如下:以智能体机体坐标系原点为中心,前进方向的长度区间范围设定为感知传感装置的有效感知距离(感知盲区/最远可靠感知距离),高度方向的区间范围设定为一个固定值,此值依据智能体的最大可活动空间来设定,例如±1m;其次,对目标区域的目标三维点云使用体素滤波器进行降采样,并均匀化点云在三维空间的分布;最后,把降采样后的目标三维点云按照设定高度阈值划分为贴近地面的较低点云层(lower_points)与浮在空中的较高点云层(upper_points)。

3.生成高程地图:高程地图所属坐标系定义在智能体的机体坐标系下,保持与智能体的同步移动,这样就可以有效避免因里程计定位累积误差导致地图也产生累积误差的问题,确保每一时刻当前的高程地图都是准确的。里程计所属坐标系定义在世界坐标系或导航坐标系下,当智能体发生了位姿变化(移动或转向)时必须及时更新当前高程地图,因此,首先要根据里程计信息来更新高程地图在世界坐标系下的位置。其次,分别根据输入的较低点云层与较高点云层生成高程地图中的对应较低地图层(lower_elevation)与较高地图层(upper_elevation)地图层,形成具有两级高度的高程地图。针对每一个地图单元格的高度值的更新判断依据为:对于较低地图层,如果当前输入点云高度值大于之前高度值,则用当前输入点云的高度值来替代之前高度值,否则当前地图单元格的高度值保持不变;对于较高地图层,如果当前输入点云的高度值小于之前高度值,则用当前输入点云的高度值替代之前高度值,否则当前地图单元格的高度值保持不变。

上述描述提到的里程计数据可以由以下但不局限于以下方式提供:(1)移动智能体的本体里程计,(2)视觉里程计(VO),(3)视觉惯性里程计(VIO),(4)激光里程计(LO),(5)激光惯性里程计(LIO),(6)激光视觉惯性里程计(LVIO),(7)其他外部定位系统,例如GPS、RTK GPS、UWB、视觉运动捕捉定位系统等。

4.生成可通行地图:基于前一步骤生成的两级高度的高程地图,首先,在较低地图层上进行可通行性的评估计算,具体操作方法为设计一套串行滤波器对该地图层依次执行以下滤波:(1)坡度(slope)滤波,评估爬坡可通行性,(2)跨高(step)滤波,评估越障可行性,(3)崎岖度(roughness)滤波,评估崎岖地面可通过性。每一级滤波后都会生成对应的可通行代价值,代价值的有效区间在[0,1]之间,数值大小表明了可通行的可能性大小,0代表完全不能通行,1代表完全可通行。如果当前级滤波器计算的代价值超过最大设定阈值,那么就不会继续进行后一级滤波了。如果依次通过了3级滤波器,那么会计算一个最终代价值,具体方法是按照权重将3个滤波器输出的代价值进行加权求和,所得值即代表了综合考量了爬坡能力、越障能力与崎岖地面适应能力的可通行可能性大小。

其中,上述描述中的每一级滤波器的最大设定阈值为智能体的面向特定地形时所能适应的最大运动能力,例如针对坡度滤波器,将最大设定阈值设置为30度代表智能体能够爬的最大斜坡的坡度为30度。另外,上述提到的权重值大小反映了移动智能体在分别面向三种地形的侧重点大小。滤波器的最大设定阈值和权重值要根据具体的移动智能体的运动学能力来设定为合理值,以确保生成的可通行地图是安全有效的。

其次,较高地图层将被用于移动智能体的防碰撞检测,此较高地图层是进一步提高智能体在复杂地形上的可通过能力的关键,针对可以调整机体高度的智能体来说(例如四足机器人),在面对诸如低矮桌椅、通道地形环境时,基于传统的单级高程地图生成的可通行地图会将此类地形直接判定为不可通行,而有了本实施方式提出的多级高度的高程地图,移动智能体就能够根据较高地图层来进一步判断是否能够通过调整机体高度以适应地形来爬行通过,因此,移动智能体能够找到更多可选择的可通行路径,进而提高了智能体在复杂地形上的通过效率和安全性。

图3是根据本发明实施方式的多级高程地图的示意图,如图3所示,基于多级高度高程地图生成的可通行地图能够提高移动智能体在复杂地形中的安全通过能力。基于本发明提出的多级高程可通行地图构建方法,智能体能够规划出一条穿过低矮桌子的更短安全路径a;而传统的可通行地图构建方法只能规划出绕过桌子的更长路径b。

图4是根据本发明实施例的一种机器人导航路径的生成装置的示意图,如图4所示,根据本发明实施例的另一方面,还提供了一种机器人导航路径的生成装置,包括:获取模块42,分组模块44,第一生成模块46和第二生成模块48,下面对该装置进行详细说明。

获取模块42,用于获取机器人所处目标环境的三维点云数据;分组模块44,与上述获取模块42相连,用于根据预设的第一高度阈值对所述三维点云数据进行分组,得到高度不同的多组三维点云层,其中,所述第一高度阈值为一个或多个高度值;第一生成模块46,与上述分组模块44相连,用于基于多组所述三维点云层,生成所述目标环境的高程地图,其中,所述高程地图包括多个高度不同的地图层;第二生成模块48,与上述第一生成模块46相连,用于根据所述高程地图生成所述机器人在所述目标环境中的导航路径。

通过上述装置,通过获取模块42获取机器人所处目标环境的三维点云数据,分组模块44根据预设的第一高度阈值对三维点云数据进行分组,得到高度不同的多组三维点云层,第一生成模块46基于多组三维点云层,生成包括多级高度的高程地图,第二生成模块48根据高程地图生成机器人在目标环境中的导航路径的方式,达到了根据高程地图对机器人进行导航,避免了不考虑复杂地形在一定高度之上的情况,导致导航路径无法通行的目的,实现了提高了导航路径的准确性,在复杂地形也能够提供有效导航路径的技术效果,进而解决了相关技术中机器人的根据平面地图生成导航路径,在地形复杂的情况下,难以有效提供导航路径的技术问题。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

15页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种路径规划方法、装置、存储介质及电子设备

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!