掌桥专利:专业的专利平台
掌桥专利
首页

机器人地图中障碍物的标记方法及装置

文献发布时间:2023-06-19 16:04:54



技术领域

本发明涉及一种智能机器人技术领域,特别是涉及一种机器人地图中障碍物的标记方法及装置。

背景技术

随着机器人技术的不断发展与进步,自主移动机器人逐渐应用到各个场景中,如矿山机器人、水下机器人、餐饮机器人、扫地机器人等等等。自主移动机器人能够顺利行进主要是基于作业环境地图,通过作业环境地图表达作业环境内路径、障碍物等讯息。常用的机器人环境地图构建方式有:利用SLAM(simultaneous localization and mapping,即时定位与建图)算法、vSLAM(Visual simultaneous localization and mapping,基于视觉即时定位与建图)算法和卫星地图构建方法等。

然而,现有扫地机器人虽然具备自主导航能力及障碍物识别能力,但并不能将识别到的障碍物准确的显示到机器人地图正确的位置上,因此,将障碍物在机器人地图中的正确位置进行标记,以使得对障碍物进行准确的显示是亟待解决的问题。

发明内容

有鉴于此,本发明提供一种机器人地图中障碍物的标记方法及装置,主要目的在于解决现有机器人地图中障碍物位置显示准确度较低的问题。

依据本发明一个方面,提供了一种机器人地图中障碍物的标记方法,包括:

获取概率地图和高度地图,所述概率地图用于标识机器人作业环境中各位置存在障碍物的概率分布,所述高度地图用于标识所述机器人作业环境中各位置对应的障碍物高度分布;

根据所述概率地图和所述高度地图进行数据分组,得到多个数据集合,每个所述数据集合标识一个障碍物的障碍物信息,而所述障碍物信息至少包含有障碍物位置信息和障碍物边缘信息;

按照所述障碍物信息将障碍物标记在地图中。

进一步地,所述获取概率地图和高度地图之前,所述方法还包括:

获取障碍物初始概率地图和初始高度地图;

采集所述机器人在工作过程中的采集数据并对所述采集数据进行解析,得到障碍物数据,所述采集数据至少包含有图像数据和高度数据;

根据所述障碍物数据对所述初始概率地图和所述初始高度地图进行调整,并将调整后的初始概率地图确定为所述概率地图,将调整后的初始高度地图确定为所述高度地图。

进一步地,所述获取障碍物概率地图和高度地图之后,所述方法还包括:

结合所述概率地图和所述高度地图并根据预设概率阈值提取多个候选点;

所述根据所述概率地图和所述高度地图进行数据分组,得到多个数据集合包括:

将所述多个候选点进行聚类处理,得到多组聚类数据,每组所述聚类数据标识一个所述数据集合。

进一步地,所述方法还包括:

获取所述机器人作业环境的SLAM地图,所述SLAM地图中包含有标识禁止机器人通行的未知区域;

根据所述SLAM地图和所述数据集合分别计算第一区域面积和第二区域面积,所述第一区域面积为在所述SLAM地图中最大连续未知区域,而所述第二区域面积为所述数据集合标识的障碍物占地面积;

根据所述第一区域面积和所述第二区域面积识别落地障碍物,所述落地障碍物为禁止机器人在障碍物内外穿梭的障碍物。

进一步地,所述方法还包括:

收集所述第二区域面积小于预设面积阈值且在所述SLAM地图中相邻的区域;

生成与收集的区域对应的最小外接多边形,并将所述最小外接多边形标识的区域确定为所述落地障碍物。

进一步地,所述方法还包括:

根据各组所述聚类数据中候选点位置进行分组,并提取第一候选点分组,所述第一候选点分组内包含的候选点数量最多;

计算与所述第一候选点分组中的候选点对应的最小外接矩形;

根据所述最小外接矩形对各组所述聚类数据进行更新,以使得对所述聚类数据标识的障碍物信息进行修正。

进一步地,所述方法还包括:

解析所述SLAM地图得到障碍物朝向;

所述按照所述障碍物信息将障碍物标记在地图中包括:

根据所述障碍物位置、障碍物边缘和所述障碍物朝向将障碍物在地图中进行标记。

进一步地,所述方法还包括:

当所述第二区域面积存在重合时,根据重合的第二区域面积判断与所述重合的第二区域面积对应的障碍物是否具有包围关系;

若否,则对与所述重合的第二区域面积对应的障碍物数据集合进行优化。

进一步地,所述按照所述障碍物信息将障碍物标记在地图中包括:

若与所述重合的第二区域面积对应的障碍物具有包围关系,则按照所述包围关系和所述障碍物信息将障碍物在地图中进行标记。

依据本发明另一个方面,提供了一种机器人地图中障碍物的标记装置,包括:

第一获取模块,用于获取概率地图和高度地图,所述概率地图用于标识机器人作业环境中各位置存在障碍物的概率分布,所述高度地图用于标识所述机器人作业环境中各位置对应的障碍物高度分布;

第一分组模块,用于根据所述概率地图和所述高度地图进行数据分组,得到多个数据集合,每个所述数据集合标识一个障碍物的障碍物信息,而所述障碍物信息至少包含有障碍物位置信息和障碍物边缘信息;

标记模块,用于按照所述障碍物信息将障碍物标记在地图中。

进一步地,所述装置还包括:

第二获取模块,用于获取障碍物初始概率地图和初始高度地图;

采集模块,用于采集所述机器人在工作过程中的采集数据;

第一解析模块,用于对所述采集模块采集到的采集数据进行解析,得到障碍物数据,所述采集数据至少包含有图像数据和高度数据;

调整模块,用于根据所述障碍物数据对所述初始概率地图和所述初始高度地图进行调整;

确定模块,用于将调整后的初始概率地图确定为所述概率地图,将调整后的初始高度地图确定为所述高度地图。

进一步地,所述装置还包括:

提取模块,用于结合所述概率地图和所述高度地图并根据预设概率阈值提取多个候选点;

聚类模块,用于将所述多个候选点进行聚类处理,得到多组聚类数据,每组所述聚类数据标识一个所述数据集合。

进一步地,所述装置还包括:

第三获取模块,用于获取所述机器人作业环境的SLAM地图,所述SLAM地图中包含有标识禁止机器人通行的未知区域;

第一计算模块,用于根据所述SLAM地图和所述数据集合分别计算第一区域面积和第二区域面积,所述第一区域面积为在所述SLAM地图中最大连续未知区域,而所述第二区域面积为所述数据集合标识的障碍物占地面积;

识别模块,用于根据所述第一区域面积和所述第二区域面积识别落地障碍物,所述落地障碍物为禁止机器人在障碍物内外穿梭的障碍物。

进一步地,所述装置还包括:

收集模块,用于收集所述第二区域面积小于预设面积阈值且在所述SLAM地图中相邻的区域;

生成模块,用于生成与收集的区域对应的最小外接多边形,并将所述最小外接多边形标识的区域确定为所述落地障碍物。

进一步地,所述装置还包括:

第二分组模块,用于根据各组所述聚类数据中候选点位置进行分组,并提取第一候选点分组,所述第一候选点分组内包含的候选点数量最多;

第二计算模块,用于计算与所述第一候选点分组中的候选点对应的最小外接矩形;

更新模块,用于根据所述最小外接矩形对各组所述聚类数据进行更新,以使得对所述聚类数据标识的障碍物信息进行修正。

进一步地,所述装置还包括:第二解析模块,

所述第二解析模块,用于解析所述SLAM地图得到障碍物朝向;

所述标记模块,具体用于根据所述障碍物位置、障碍物边缘和所述障碍物朝向将障碍物在地图中进行标记。

进一步地,所述装置还包括:

判断模块,用于当所述第二区域面积存在重合时,根据重合的第二区域面积判断与所述重合的第二区域面积对应的障碍物是否具有包围关系;

优化模块,用于若与所述重合的第二区域面积对应的障碍物不具有包围关系,则对与所述重合的第二区域面积对应的障碍物数据集合进行优化。

进一步地,

所述标记模块,具体用于若与所述重合的第二区域面积对应的障碍物具有包围关系,则按照所述包围关系和所述障碍物信息将障碍物在地图中进行显示。

根据本发明的又一方面,提供了一种存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如上述机器人地图中障碍物的标记方法对应的操作。

根据本发明的再一方面,提供了一种终端,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;

所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行上述机器人地图中障碍物的标记方法对应的操作。

借由上述技术方案,本发明实施例提供的技术方案至少具有下列优点:

本发明提供了一种机器人地图中障碍物的标记方法及装置,与现有技术相比,本发明实施例通过获取概率地图和高度地图,所述概率地图用于标识机器人作业环境中各位置存在障碍物的概率分布,所述高度地图用于标识所述机器人作业环境中各位置对应的障碍物高度分布;根据所述概率地图和所述高度地图进行数据分组,得到多个数据集合,每个所述数据集合标识一个障碍物的障碍物信息,而所述障碍物信息至少包含有障碍物位置信息和障碍物边缘信息;按照所述障碍物信息将障碍物标记在地图中,实现了根据机器人作业环境内中障碍物的概率分布和高度分布数据,识别作业环境内障碍物的位置信息和边缘信息,并根据障碍物的位置信息和边缘信息在机器人地图中对障碍物进行标记,由于障碍物边缘可以标识障碍物为落地障碍物还是非落地障碍物,从而实现了在机器人地图中对障碍物进行准确标记。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1示出了本发明实施例提供的一种机器人地图中障碍物的标记方法流程图;

图2示出了本发明实施例提供的另一种机器人地图中障碍物的标记方法流程图;

图3示出了本发明实施例提供的一种机器人地图中障碍物的标记装置组成框图;

图4示出了本发明实施例提供的另一种机器人地图中障碍物的标记装置组成框图;

图5示出了本发明实施例提供的一种终端的结构示意图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

现有扫地机器人虽然具备自主导航能力及障碍物识别能力,但将障碍物在机器人地图中的正确位置进行标记,以使得对障碍物进行准确的显示是亟待解决的问题。本发明实施例提供了一种机器人地图中障碍物的标记方法,如图1所示,该方法包括:

101、获取概率地图和高度地图。

其中,所述概率地图用于标识机器人作业环境的栅格地图中各位置存在障碍物的概率分布,所述高度地图用于标识所述机器人作业环境的栅格地图中各位置的高度分布情况。而障碍物可以为落地障碍物,即机器人无法在该障碍物底部穿梭的障碍物,如衣柜、洗衣机等,也可以为非落地障碍物,即障碍物本体中至少一部分是悬空的,机器人能够正常在该障碍物悬空部分运行且在其内外穿梭的障碍物。在本申请实施例中,针对落地障碍物和非落地障碍物两种类型的障碍物,获取到的概率地图和高度地图也可以为两种。

进一步地,概率地图反映了机器人作业环境内的栅格地图中每一个位置存在障碍物的概率,在概率地图上,概率值越大的区域表明该位置上放置有障碍物的概率越大,相反,概率值越小的区域表明该位置上放置有障碍物的概率越小。同样的,高度地图反映了机器人作业环境内的栅格地图中各位置对应的高度的分布情况。但需要说明的是,障碍物概率地图和高度分布地图只能标识作业环境内障碍物位置和高度大致的分布情况,而若要在机器人地图中对障碍物进行展示,则需要获知障碍物的具体位置、障碍物边缘位置等数据,因此在本申请实施例中首先获取概率地图和高度地图,以便根据地图进一步处理得到用于在地图中展示障碍物的数据。

102、根据所述概率地图和所述高度地图进行障碍物数据分组,得到多个数据集合。

其中,每个数据集合标识一个障碍物的障碍物信息,而所述障碍物信息至少包含有障碍物位置信息和障碍物边缘信息。

具体地,本步骤可以为根据概率地图和高度地图提取能够标识障碍物的位置点,而后根据提取到的位置点所对应的区域范围确定为当前作业环境中的障碍物,但不限于此。同样的,本步骤中的数据集合也可以区分为标识落地障碍物的数据集合和标识非落地障碍物的数据集合,且各个数据集合还可以配置有用以标识障碍物的标识信息如障碍物名称、障碍物编号等,障碍物所处房间标识信息,障碍物类型信息等,以便根据各组数据集合对其标识的障碍物准确标记。

103、按照所述障碍物信息将障碍物标记在地图中。

通过根据概率地图和高度地图进行数据分组,得到能够标识每个障碍物的位置和边缘等信息的数据集合,则可以根据各组数据绘制各个障碍物并将其在地图中进行标记,以便后续进行展示。具体地,地图展示的方法可以为现有技术中地图展示方法,本申请实施例对此不做具体限定。

本发明提供了一种机器人地图中障碍物的标记方法及装置,与现有技术相比,本发明实施例通过获取概率地图和高度地图,所述概率地图用于标识机器人作业环境中各位置存在障碍物的概率分布,所述高度地图用于标识所述机器人作业环境中各位置对应的障碍物高度分布;根据所述概率地图和所述高度地图进行数据分组,得到多个数据集合,每个所述数据集合标识一个障碍物的障碍物信息,而所述障碍物信息至少包含有障碍物位置信息和障碍物边缘信息;按照所述障碍物信息将障碍物标记在地图中,实现了根据机器人作业环境内中障碍物的概率分布和高度分布数据,识别作业环境内障碍物的位置信息和边缘信息,并根据障碍物的位置信息和边缘信息在机器人地图中对障碍物进行标记,由于障碍物边缘可以标识障碍物为落地障碍物还是非落地障碍物,从而实现了在机器人地图中对障碍物进行准确标记。

进一步的,作为上述实施例具体实施方式的细化和扩展,为了完整说明本实施例的具体实施过程,提供了另一种机器人地图中障碍物的标记方法,如图2所示,该方法包括:

201、获取障碍物概率地图和高度地图。

其中,所述概率地图用于标识机器人作业环境中各位置存在障碍物的概率分布,所述高度地图用于标识所述机器人作业环境中各位置对应的障碍物高度分布。本步骤的概念解释和具体实施方式可以参考上述步骤101中相应描述,本申请实施例在此不再赘述。

需要说明的是,本申请实施例中的机器人为具有照相功能和测距功能的机器人,而机器人的测距可以通过双目相机、结构光、TOF(Time of flight,时差法)、LDS(LaserDirect Structuring,激光直接成型术)等中的任意一种方式来实现,本申请实施例对此不做限定。机器人能通过拍照对行走过程中遇到的障碍物类型进行识别,通过测距能够得出距离自身当前位置、在地平面上某一方位上、某一高度处存在/不存在物体的结论。

在本申请实施例中,步骤201之前还可以包括:获取障碍物初始概率地图和初始高度地图;采集所述机器人在工作过程中的采集数据并对所述采集数据进行解析,得到障碍物数据;根据所述障碍物数据对所述初始概率地图和所述初始高度地图进行调整,并将调整后的初始概率地图确定为所述概率地图,将调整后的初始高度地图确定为所述高度地图。

其中,所述采集数据至少包含有图像数据和高度数据,而障碍物初始概率地图和初始高度地图可以为针对两种类型障碍物,即落地障碍物和非落地障碍物,并根据先验概率和高度分别生成的。

进一步地,当机器人在作业环境内运行时,持续拍照并根据图片数据识别图片中包含的障碍物,而对于每一帧图片的图片数据和对于两种类型的障碍物,解析得到的障碍物数据只标识两种情形,即不包含任意一种障碍物,或者包含一种/两种障碍物,当不包含任意一种障碍物时则将该帧图像标识的视场范围和景深范围在概率地图中对应位置的概率值减小,而当包含一种/两种障碍物时,则将该帧图像标识的范围在概率地图上对应位置的概率值增加,并且可以根据不同类型障碍物的先验情况,将概率地图上远离机器人方向的适当区域内的概率值增加,以此方式得到准确的障碍物概率地图。

而对于高度地图则可以通过机器人在作业环境内运行时,持续采集障碍物的高度数据,并将高度数据投影到高度地图上。初始高度地图中可以先验的设定多个高度区间,当机器人采集到障碍物的高度数据时,根据障碍物位置和高度数据映射到初始高度地图中,若其在预设高度区间内,则增加当前位置和当前高度处的高度分布概率,反之则减少,以得到准确的障碍物高度地图。而对于障碍物高度数据的获取方式以及将获取到的高度数据映射到高度地图中的方式,本申请实施例不做限定。

在本申请实施例中,通过首先创建障碍物初始概率地图和初始高度地图,并根据机器人采集到的图像和高度数据对标识障碍物信息的数据集合进行优化,并得到能够标识在指定位置存在各类型障碍物概率,和在指定位置、指定高度范围是否存在障碍物的数据集合,并根据该数据集合生成概率地图和高度地图,确保了地图数据的准确性,进而提升了机器人地图中障碍物标记的准确性。

202、结合所述概率地图和所述高度地图并根据预设概率阈值提取多个候选点。

其中,预设概率阈值可以根据障碍物类型和不同的应用场景进行设定。对于每种障碍物将所有满足概率地图上该点的概率值超过预设阈值且在高度地图上该点的概率超过预设阈值的点,收集为候选点。而对于概率地图中的预设阈值和在高度地图中的预设阈值可以相同也可以不同,且预设阈值可以根据障碍物类型不同而取不同的数值,本申请实施例对此不做具体限定。

需要说明的是,单独通过概率地图或者单独通过高度地图提取候选点,都存在候选点不准确的情况,而结合概率地图和高度地图则可以基于多维度数据提取候选点,确保了数据处理的准确性。

203、将所述多个候选点进行聚类处理,得到多组聚类数据。

其中,每组所述聚类数据标识一个数据集合,即标识一个障碍物的障碍物信息,而所述障碍物信息至少包含有障碍物位置和障碍物边缘。

在本申请实施例中,对于任意两个候选点,如果他们之间的直线距离小于一定阈值,则认为这两个候选点属于同一类;对于任意两个候选点,如果这两个候选点在SLAM(simultaneous localization and mapping)地图上存在一条无障碍物或其他阻挡路径,且所有路径中最短的一条距离小于一定阈值,则认为这两个候选点属于同一类;对于任意两个候选点,当两个候选点之间存在一个障碍物(如一堵墙)时,则认为这两个候选点不属于一类。

此外,在聚类得到多个聚类数据之后,可以首先对各聚类数据标识的范围进行预判,当该范围超过合理障碍物范围时,则可以将该聚类数据确定为异常数据并将其删除,以确保障碍物数据的准确性。

进一步地,为了显示机器人地图中的障碍物,本申请实施例还包括:获取所述机器人作业环境的SLAM地图;根据所述SLAM地图和所述数据集合分别计算第一区域面积和第二区域面积;根据所述第一区域面积和所述第二区域面积识别落地障碍物。其中,所述SLAM地图中包含有标识禁止机器人通行的未知区域,所述第一区域面积为在所述SLAM地图中最大连续未知区域,而所述第二区域面积为所述数据集合标识的障碍物占地面积,所述落地障碍物为禁止机器人在障碍物内外穿梭的障碍物。

具体地,根据聚类得到的数据集合判断障碍物是否为落地数据的方式可以为:

1)、判断第一区域与第二区域面积之间的比值是否大于阈值A

2)、判断第一区域面积与第二区域面积之间的比值是否大于阈值B(B

3)判断第一区域与第二区域面积之间的比值是否大于阈值C(C

当根据某数据集合进行判断并满足上述条件时,则认为该组数据集合标识的障碍物为落地障碍物。在各判断步骤中的阈值均可以为根据先验数据确定的,本申请实施例对此不做具体限定。需要说明的是,落地障碍物对于清洁机器人是障碍物,也就是说机器人在行进过程中需要避开落地障碍物以顺利执行清扫任务,所以在本申请实施例中,通过作业环境的障碍物概率地图和高度地图提取候选点并进行聚类等,进一步确定属于落地型的障碍物,以便于将这些障碍物以落地型障碍物的形式进行标记和显示,确保了障碍物类型标记和显式的正确性,为机器人在作业环境中的行进提供可靠是地图数据。

进一步地,本申请实施例还包括:收集所述第二区域面积小于预设面积阈值且在所述SLAM地图中相邻的区域;生成与收集的区域对应的最小外接多边形,并将所述最小外接多边形标识的区域确定为所述落地障碍物。

需要说明的是,对于类似于桌椅等特性为具有复数个障碍物腿的障碍物,这类障碍物的障碍物支撑腿位置在SLAM地图上显示为障碍物的障碍物,但除了支撑腿障碍物其他本体为悬空状态,为非落地障碍物。考虑到这类支撑腿的横截面积比较小,因此可以根据SLAM地图上聚类范围内所有直接相邻的数据点生成标识障碍物支撑腿的数据集合,每个障碍物支撑腿数据集合标识一个具有一定截面积的支撑腿,根据先验设定的面积阈值对数据集合进行筛选,即提取小于预设面积阈值的支撑腿数据集合,根据筛选得到得支撑腿数据集合能够得到障碍物的多个支撑腿的位置和占地面积。进一步地,计算与多个支撑腿对应的最小外接多边形框,并对该多边形校核,若在预设范围内则可以将该最小外接多边形确定为障碍物的占地面积,以实现对非落地障碍物占地面积和障碍物支撑部分准确标记和显式。而这类非落地障碍物的支撑腿高度和悬空本体的高度可以通过机器人采集的高度数据进行确定,本申请实施例对此不做具体限定。

进一步地,为了准确识别靠墙障碍物的位置,本申请实施例还包括:根据各组所述聚类数据中候选点位置进行分组,并提取第一候选点分组,所述第一候选点分组内包含的候选点数量最多;计算与所述第一候选点分组中的候选点对应的最小外接矩形;根据所述最小外接矩形对各组所述聚类数据进行更新,以使得对所述聚类数据标识的障碍物信息进行修正。

对于非靠墙障碍物,至少存在两个面能够被机器人感知到,而在实际障碍物场景中,对于部分落地障碍物其存在至少2个面靠墙放置或被其他障碍物遮挡,机器人在行进过程中只能感知到这类障碍物的1个面,因此对于这类障碍物,通过将该障碍物的障碍物数据集合中的候选点进行分组,将直接相邻或者距离较近的候选点归纳为一组,对于包含候选点数量最多的组,计算与该组对应的最小外接矩形,并根据该外接矩形对障碍物数据集合中的数据进行更新。具体地,若该矩形的短边小于一定阈值且长边大于一定阈值,或者该矩形短边与长边之间的比值满足一定阈值,那么便确定该障碍物为机器人只能感知到一个面的障碍物,即该障碍物为靠墙障碍物,此时该障碍物范围为以该矩形长边为一边,另一边根据实际障碍物情况取先验长度,或者根据实际障碍物情况取已知长边一定比例的长度,而后结合SLAM地图或高度地图判定该障碍物范围内是否存在支撑点,若不存在则对该障碍物范围进行适当收缩,以使得收缩后的障碍物范围符合常规障碍物范围且具有支撑点。

进一步地,调整障碍物范围可以为依据市场调研数据、生活经验,以及预设先验各类型障碍物范围值等进行缩放。而在进行收缩时,对于靠墙障碍物则可以结合墙面信息往合理方向收缩,对于无法判定或者非靠墙障碍物,则向靠近障碍物范围中心反向收缩;在扩展时则可以从障碍物范围中心向外扩展,并结合SLAM地图信息以限制扩展障碍物范围与墙面等障碍物存在冲突。而如果得到的障碍物范围远大于或远小于合理障碍物范围,那么便可确定该障碍物数据异常,则可以删除;而如果得到的障碍物范围略小于或略大于合理障碍物范围,则可以将其尺寸调整至合理障碍物范围。

204、解析所述SLAM地图得到障碍物朝向。

具体地,本步骤可以根据解析结果并结合实际应用中的多种场景确定障碍物朝向,对于机器人视角能够观察到障碍物使用面的障碍物,如衣柜,那么便可以根据机器人上传的图像数据确定该类障碍物的朝向。而对于靠墙障碍物,则可以结合SLAM地图状态判断,通过障碍物在SLAM地图中靠墙边、障碍物尺寸等综合确定。此外,对于部分障碍物不存在障碍物朝向,如餐桌,那么这类障碍物便可以忽略显示朝向。

在本申请实施例中,解析获取障碍物朝向和上述对障碍物信息进行优化即调整障碍物范围,不存在先后关系,即可以根据不同的应用场景,先判定障碍物朝向再调整障碍物范围,也可以先调整障碍物范围再判断障碍物朝向,在计算过程中也可以动态调整两个维度的障碍物数据,以得到多个适配的标识障碍物的数据集合。

205、根据所述障碍物位置、障碍物边缘和所述障碍物朝向将障碍物在地图中进行标记。

进一步地,本申请实施例还可以包括:当所述第二区域面积存在重合时,根据重合的第二区域面积判断与所述重合的第二区域面积对应的障碍物是否具有包围关系;若否,则对与所述重合的第二区域面积对应的障碍物数据集合进行优化;若与所述重合的第二区域面积对应的障碍物具有包围关系,则按照所述包围关系和所述障碍物信息将障碍物在地图中进行标记。

需要说明的是,当两个障碍物数据集合标识的障碍物存在大面积重合时,则可能是两个障碍物的一个或两个障碍物位置存在误差或者是两个障碍物之间存在包围关系,如沙发和茶几,因此在本步骤中首先对两个障碍物是否存在包围关系进行判断,并在存在包围关系时按照其对应的包围位置进行适当调整就显示,而当两个障碍物不存在包围关系时,则可以根据两个障碍物重合方向对两组障碍物数据进行优化,如将两个障碍物的边界分别向重合的反方向侧收缩至适当位置,以便根据优化后的障碍物信息对障碍物进行展示。

本发明提供了一种机器人地图中障碍物的标记方法及装置,与现有技术相比,本发明实施例通过获取概率地图和高度地图,所述概率地图用于标识机器人作业环境中各位置存在障碍物的概率分布,所述高度地图用于标识所述机器人作业环境中各位置对应的障碍物高度分布;根据所述概率地图和所述高度地图进行数据分组,得到多个数据集合,每个所述数据集合标识一个障碍物的障碍物信息,而所述障碍物信息至少包含有障碍物位置信息和障碍物边缘信息;按照所述障碍物信息将障碍物标记在地图中,实现了根据机器人作业环境内中障碍物的概率分布和高度分布数据,识别作业环境内障碍物的位置信息和边缘信息,并根据障碍物的位置信息和边缘信息在机器人地图中对障碍物进行标记,由于障碍物边缘可以标识障碍物为落地障碍物还是非落地障碍物,从而实现了在机器人地图中对障碍物进行准确标记。

进一步的,作为对上述图1所示方法的实现,本申请实施例提供了一种机器人地图中障碍物的标记装置,如图3所示,该装置包括:第一获取模块31、第一分组模块32、标记模块33。

第一获取模块31,用于获取概率地图和高度地图,所述概率地图用于标识机器人作业环境中各位置存在障碍物的概率分布,所述高度地图用于标识所述机器人作业环境中各位置对应的障碍物高度分布;

第一分组模块32,用于根据所述概率地图和所述高度地图进行数据分组,得到多个数据集合,每个所述数据集合标识一个障碍物的障碍物信息,而所述障碍物信息至少包含有障碍物位置信息和障碍物边缘信息;

标记模块33,用于按照所述障碍物信息将障碍物标记在地图中。

进一步地,如图4所示,所述装置还包括:

第二获取模块34,用于获取障碍物初始概率地图和初始高度地图;

采集模块35,用于采集所述机器人在工作过程中的采集数据;

第一解析模块36,用于对所述采集模块采集到的采集数据进行解析,得到障碍物数据,所述采集数据至少包含有图像数据和高度数据;

调整模块37,用于根据所述障碍物数据对所述初始概率地图和所述初始高度地图进行调整;

确定模块38,用于将调整后的初始概率地图确定为所述概率地图,将调整后的初始高度地图确定为所述高度地图。

进一步地,如图4所示,所述装置还包括:

提取模块39,用于结合所述概率地图和所述高度地图并根据预设概率阈值提取多个候选点;

聚类模块310,用于将所述多个候选点进行聚类处理,得到多组聚类数据,每组所述聚类数据标识一个所述数据集合。

进一步地,如图4所示,所述装置还包括:

第三获取模块311,用于获取所述机器人作业环境的SLAM地图,所述SLAM地图中包含有标识禁止机器人通行的未知区域;

第一计算模块312,用于根据所述SLAM地图和所述数据集合分别计算第一区域面积和第二区域面积,所述第一区域面积为在所述SLAM地图中最大连续未知区域,而所述第二区域面积为所述数据集合标识的障碍物占地面积;

识别模块313,用于根据所述第一区域面积和所述第二区域面积识别落地障碍物,所述落地障碍物为禁止机器人在障碍物内外穿梭的障碍物。

进一步地,如图4所示,所述装置还包括:

收集模块314,用于收集所述第二区域面积小于预设面积阈值且在所述SLAM地图中相邻的区域;

生成模块315,用于生成与收集的区域对应的最小外接多边形,并将所述最小外接多边形标识的区域确定为所述落地障碍物。

进一步地,如图4所示,所述装置还包括:

第二分组模块316,用于根据各组所述聚类数据中候选点位置进行分组,并提取第一候选点分组,所述第一候选点分组内包含的候选点数量最多;

第二计算模块317,用于计算与所述第一候选点分组中的候选点对应的最小外接矩形;

更新模块318,用于根据所述最小外接矩形对各组所述聚类数据进行更新,以使得对所述聚类数据标识的障碍物信息进行修正。

进一步地,如图4所示,述装置还包括:第二解析模块319,

所述第二解析模块319,用于解析所述SLAM地图得到障碍物朝向;

所述标记模块33,具体用于根据所述障碍物位置、障碍物边缘和所述障碍物朝向将障碍物在地图中进行标记。

进一步地,如图4所示,所述装置还包括:

判断模块320,用于当所述第二区域面积存在重合时,根据重合的第二区域面积判断与所述重合的第二区域面积对应的障碍物是否具有包围关系;

优化模块321,用于若与所述重合的第二区域面积对应的障碍物不具有包围关系,则对与所述重合的第二区域面积对应的障碍物数据集合进行优化。

进一步地,如图4所示,

所述标记模块33,具体用于若与所述重合的第二区域面积对应的障碍物具有包围关系,则按照所述包围关系和所述障碍物信息将障碍物在地图中进行显示。

本申请提供了一种机器人地图中障碍物的标记方法及装置,与现有技术相比,本发明实施例通过获取概率地图和高度地图,所述概率地图用于标识机器人作业环境中各位置存在障碍物的概率分布,所述高度地图用于标识所述机器人作业环境中各位置对应的障碍物高度分布;根据所述概率地图和所述高度地图进行数据分组,得到多个数据集合,每个所述数据集合标识一个障碍物的障碍物信息,而所述障碍物信息至少包含有障碍物位置信息和障碍物边缘信息;按照所述障碍物信息将障碍物标记在地图中,实现了根据机器人作业环境内中障碍物的概率分布和高度分布数据,识别作业环境内障碍物的位置信息和边缘信息,并根据障碍物的位置信息和边缘信息在机器人地图中对障碍物进行标记,由于障碍物边缘可以标识障碍物为落地障碍物还是非落地障碍物,从而实现了在机器人地图中对障碍物进行准确标记。

根据本发明一个实施例提供了一种存储介质,所述存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的机器人地图中障碍物的标记方法。

图5示出了根据本发明一个实施例提供的一种终端的结构示意图,本发明具体实施例并不对终端的具体实现做限定。

如图5所示,该终端可以包括:处理器(processor)402、通信接口(CommunicationsInterface)404、存储器(memory)404、以及通信总线408。

其中:处理器402、通信接口404、以及存储器406通过通信总线408完成相互间的通信。

通信接口404,用于与其它设备比如客户端或其它服务器等的网元通信。

处理器402,用于执行程序410,具体可以执行上述机器人地图中障碍物的标记方法实施例中的相关步骤。

具体地,程序410可以包括程序代码,该程序代码包括计算机操作指令。

处理器402可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。终端包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。

存储器406,用于存放程序410。存储器406可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。

程序410具体可以用于使得处理器402执行以下操作:

获取概率地图和高度地图,所述概率地图用于标识机器人作业环境中各位置存在障碍物的概率分布,所述高度地图用于标识所述机器人作业环境中各位置对应的障碍物高度分布;

根据所述概率地图和所述高度地图进行数据分组,得到多个数据集合,每个所述数据集合标识一个障碍物的障碍物信息,而所述障碍物信息至少包含有障碍物位置信息和障碍物边缘信息;

按照所述障碍物信息将障碍物标记在地图中。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。

技术分类

06120114692708