机器人栅格地图构建方法、装置、机器人及存储介质与流程

文档序号:26395690发布日期:2021-08-24 16:05阅读:123来源:国知局
机器人栅格地图构建方法、装置、机器人及存储介质与流程

本发明涉及机器人地图构建领域,尤其涉及一种机器人栅格地图构建方法、装置、机器人及存储介质。



背景技术:

现有技术中,通常是使用激光雷达或深度相机对于空间障碍物进行扫描。例如,激光雷达集成于移动机器人,机器人在空间内移动,并通过激光雷达对外部环境进行扫描,以获得激光点云数据。利用激光点云数据构建机器人栅格地图,用于路径规划、避开障碍物。

目前,在面对时而宽大,时而窄小的复杂区域时,若采用恒定分辨率构建与区域相对应的机器人栅格地图,则是没有考虑实际区域的宽窄情况,在一些窄区域时,一些细小角落被忽略,则不能获得足够的精度,难以为机器人提供精准控制以能够顺利穿过该窄区域;而在一些宽大区域时,此处的数据量比较大,大大增加了整体数据存储量和计算难度。因此,目前的机器人栅格地图表达区域情况是缺乏灵活性的、实用性不强。



技术实现要素:

本发明的主要目的在于提供一种机器人栅格地图构建方法、装置、机器人及存储介质,旨在增强机器人栅格地图表达区域情况的实用性。

此外,为实现上述目的,本发明还提供一种机器人栅格地图构建方法,机器人配置有采集装置,所述机器人栅格地图构建方法包括以下步骤:

通过所述采集装置采用不同的分辨率分别获取多个区域内的环境数据,并分别根据每一个区域内的环境数据构建相对应的栅格地图;

将各个栅格地图关联拼接,以得到目标地图。

可选地,在通过所述采集装置采用不同的分辨率分别获取多个区域内的环境数据,并分别根据每一个区域内的环境数据构建相对应的栅格地图之前,包括:

根据机器人在应用场景中的可行走区域的宽度,将应用场景划分为多个区域。

可选地,所述根据机器人在应用场景中的可行走区域的宽度,将应用场景划分为多个区域,包括:

当所述可行走区域的宽度小于或等于预设长度时,则将宽度小于或等于预设长度的区域标记为第一区域,当所述可行走区域的宽度大于预设长度时,则将宽度大于预设长度的区域标记为第二区域;

相应地,所述通过所述采集装置采用不同的分辨率分别获取多个区域内的环境数据,包括:

通过所述采集装置的第一分辨率获取第一区域内的环境数据;

通过所述采集装置的第二分辨率获取第二区域内的环境数据,其中,第一分辨率大于第二分辨率。

可选地,所述多个区域包括第一区域和第二区域,其中,可行走区域的宽度小于或等于预设长度的区域标记为第一区域,可行走区域的宽度大于预设长度的区域标记为第二区域;

所述通过所述采集装置采用不同的分辨率分别获取多个区域内的环境数据,并分别根据每一个区域内的环境数据构建相对应的栅格地图,包括:

当机器人位于所述第一区域时,则通过所述采集装置的第一分辨率获取第一区域内的环境数据,在所述第一区域内的环境数据中提取关键帧数据并构建第一栅格地图,其中,所述第一栅格地图用于表达所述第一区域;

当机器人位于所述第二区域时,则通过所述采集装置的第二分辨率获取第二区域内的环境数据,在所述第二区域内的环境数据中提取关键帧数据并构建第二栅格地图,其中,所述第二栅格地图用于表达所述第二区域。

可选地,所述第一栅格地图的网格分辨率大于所述第二栅格地图的网格分辨率。

可选地,所述第一栅格地图的网格分辨率是所述第二栅格地图的网格分辨率的整数倍。

可选地,所述将各个栅格地图关联拼接,以得到目标地图,包括:

获取每一个栅格地图的边界的关键帧数据,并提取边界特征;

分别根据各个栅格地图的边界特征的相似度,对各个栅格地图进行关联拼接,以得到目标地图。

此外,为实现上述目的,本发明还提供一种机器人栅格地图构建装置,所述机器人栅格地图构建装置包括:

构建模块,用于通过所述采集装置采用不同的分辨率分别获取多个区域内的环境数据,并分别根据每一个区域内的环境数据构建相对应的栅格地图;

拼接模块,用于将各个栅格地图关联拼接,以得到目标地图。

此外,为实现上述目的,本发明还提供一种机器人,所述机器人包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的机器人栅格地图构建程序,所述机器人栅格地图构建程序被所述处理器执行时实现如上述的机器人栅格地图构建方法的步骤。

此外,为实现上述目的,本发明还提供一种存储介质,所述存储介质上存储有机器人栅格地图构建程序,所述机器人栅格地图构建程序被处理器执行时实现如上述的机器人栅格地图构建方法的步骤。

本发明实施例提出的一种机器人栅格地图构建方法、装置、设备及存储介质。本发明实施例通过采集装置采用不同的分辨率分别获取多个区域对应的环境数据,然后,根据每个区域对应的环境数据构建每个区域相对应的栅格地图,最后,将所有区域相对应的栅格地图进行关联拼接,得到所有区域整体对应的目标地图。本发明可通过灵活地调整采集装置的分辨率,以不同的分辨率采集不同区域内的环境数据,并构建相对应的栅格地图,进而关联拼接得到所有区域整体对应的目标地图。对于不同的区域,考虑实际区域的宽窄情况,采用不同分辨率的环境数据构建机器人栅格地图,避免采用恒定分辨率的环境数据构建栅格地图的弊端,增强了栅格地图表达区域情况的灵活性和实用性。

附图说明

图1为本发明实施例提供的机器人栅格地图构建设备一种实施方式的硬件结构示意图;

图2为本发明机器人栅格地图构建方法第一实施例的流程示意图;

图3为本发明机器人栅格地图构建方法第一实施例中的区域示意图;

图4为本发明机器人栅格地图构建方法第二实施例的流程示意图;

图5为本发明机器人栅格地图构建装置一实施例的功能模块示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。

本发明实施例机器人栅格地图构建终端(又叫终端、设备或者终端设备)可以是移动服务机器人。

如图1所示,该终端可以包括:处理器1001,例如cpu(centralprocessingunit,中央处理器),通信总线1002,存储器1003。其中,通信总线1002用于实现这些组件之间的连接通信。存储器1003可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1003可选的还可以是独立于前述处理器1001的存储装置。

本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图1所示,作为一种计算机存储介质的存储器1003中可以包括机器人栅格地图构建程序。

在图1所示的终端中,处理器1001可以用于调用存储器1003中存储的机器人栅格地图构建程序,并执行以下操作:

通过所述采集装置采用不同的分辨率分别获取多个区域内的环境数据,并分别根据每一个区域内的环境数据构建相对应的栅格地图;

将各个栅格地图关联拼接,以得到目标地图。

进一步地,处理器1001可以用于调用存储器1003中存储的机器人栅格地图构建程序,还执行以下操作:

根据机器人在应用场景中的可行走区域的宽度,将应用场景划分为多个区域。

进一步地,处理器1001可以用于调用存储器1003中存储的机器人栅格地图构建程序,还执行以下操作:

当所述可行走区域的宽度小于或等于预设长度时,则将宽度小于或等于预设长度的区域标记为第一区域,当所述可行走区域的宽度大于预设长度时,则将宽度大于预设长度的区域标记为第二区域;

相应地,所述通过所述采集装置采用不同的分辨率分别获取多个区域内的环境数据,包括:

通过所述采集装置的第一分辨率获取第一区域内的环境数据;

通过所述采集装置的第二分辨率获取第二区域内的环境数据,其中,第一分辨率大于第二分辨率。

进一步地,处理器1001可以用于调用存储器1003中存储的机器人栅格地图构建程序,还执行以下操作:

当机器人位于所述第一区域时,则通过所述采集装置的第一分辨率获取第一区域内的环境数据,在所述第一区域内的环境数据中提取关键帧数据并构建第一栅格地图,其中,所述第一栅格地图用于表达所述第一区域;

当机器人位于所述第二区域时,则通过所述采集装置的第二分辨率获取第二区域内的环境数据,在所述第二区域内的环境数据中提取关键帧数据并构建第二栅格地图,其中,所述第二栅格地图用于表达所述第二区域。

进一步地,处理器1001可以用于调用存储器1003中存储的机器人栅格地图构建程序,还执行以下操作:

确定所述第一栅格地图的网格分辨率大于所述第二栅格地图的网格分辨率。

进一步地,处理器1001可以用于调用存储器1003中存储的机器人栅格地图构建程序,还执行以下操作:

定义所述第一栅格地图的网格分辨率是所述第二栅格地图的网格分辨率的整数倍。

基于上述设备硬件结构,提出了本发明机器人栅格地图构建方法的实施例。

参照图2,在本发明机器人栅格地图构建方法的第一实施例中,机器人配置有采集装置,所述机器人栅格地图构建方法包括步骤s10-步骤s20:

步骤s10,通过所述采集装置采用不同的分辨率分别获取多个区域内的环境数据,并分别根据每一个区域内的环境数据构建相对应的栅格地图。

本实施例中的机器人栅格地图构建方法应用于移动机器人,可以理解的是,移动机器人集成有激光雷达或深度相机(即本实施例中的采集装置),当需要构建某个区域对应的地图时,机器人在该区域内移动,并通过激光雷达扫描四周环境,以获得该区域的激光点云数据,也即环境数据。通过调整激光雷达的分辨率,使激光雷达以不同的分辨率获取多个区域内的环境数据,然后分别根据每个区域对应获取的环境数据,构建每个区域相对应的栅格地图。

步骤s20,将各个栅格地图关联拼接,以得到目标地图。

可知地,当上述所有区域对应的栅格地图均被构建完成后,机器人栅格地图构建程序将会把所有区域对应的栅格地图关联拼接起来,形成整个区域对应的目标地图。如图3所示,图3为多个区域对应的示意图,在图3所示中,a区域和b区域都是机器人可行走区域,a区域和b区域之外的区域为机器人的不可行走区域。将所有区域对应的栅格地图拼接起来后,便得到了整个区域对应的目标地图。由于采用不同的分辨率获取不同区域内的环境数据,每个区域对应的栅格地图的网格的分辨率也可不相同,避免采用恒定分辨率的环境数据构建栅格地图的弊端,增强了栅格地图表达区域情况的灵活性和实用性。

具体地,步骤s10之前的步骤,包括:

步骤a1,根据机器人在应用场景中的可行走区域的宽度,将应用场景划分为多个区域。

可知地,本实施例中的机器人栅格地图构建方法对于整个区域划分的依据是:机器人的可行走区域的宽度。在整个区域中,将具有变化不大的,且可行走区域的宽度小于或等于预设长度的连续区域,被划分为一个区域。例如,如图3所示,在a区域内的可行走区域的宽度是比较宽大的,这一区域则划分为a区域。然而,b区域的可行走区域的宽度是比较窄小的,b区域相当于一个窄道,此时,这一区域则划分为b区域。

在本申请中,将应用场景划分为多个区域,例如,图3所示的a区域和b区域。在分别构建a区域地图和b区域地图时,则机器人通过采集装置(激光雷达或深度相机)采用不同的分辨率获取相对应的环境数据,并构建相对应的栅格地图。

具体地,步骤a1细化的步骤包括:

步骤b1,当所述可行走区域的宽度小于或等于预设长度时,则将宽度小于或等于预设长度的区域标记为第一区域,当所述可行走区域的宽度大于预设长度时,则将宽度大于预设长度的区域标记为第二区域。

在本申请中,考虑实际场景区域的宽窄情况,将一些连续的窄小区域标记为第一区域,将一些连续的宽大区域标记为第二区域。一些实施例中,以可行走区域的宽度小于或等于预设长度时,则将宽度小于或等于预设长度的区域标记为第一区域,预设长度可以为机器人宽度的2倍;以可行走区域的宽度大于预设长度,预设长度为机器人宽度的2倍时,则将宽度大于预设长度的区域标记为第二区域。

步骤s10细化的步骤包括:

步骤b2,通过所述采集装置的第一分辨率获取第一区域内的环境数据,通过所述采集装置的第二分辨率获取第二区域内的环境数据,其中,第一分辨率大于第二分辨率。

可以理解的是,本实施例给出一种具体的应用场景,在这个具体的应用场景中,根据机器人可行走区域的宽度将应用场景划分成两个区域,即小于或等于预设长度的第一区域,和大于预设长度的第二区域。在另一些实施例中,可根据机器人的可行走区域的宽度将应用场景划分成多个区域,为方便描述,本申请以第一区域和第二区域进行描述本申请技术方案。如图3,当某个区域(记为a区域)对应的可行走宽度小于或等于预设长度时,则将a区域标记为第一区域,当另一个区域(记为b区域)对应的可行走宽度大于预设长度时,则将b区域标记为第二区域。并且,通过采集装置采用第一分辨率获取第一区域内的环境数据,以及采用第二分辨率获取第二区域内的环境数据,其中,第一分辨率大于第二分辨率。其中,采集装置的分辨率越大,则获取到的环境数据越精细,在一些细小角落也能够识别出障碍区和非障碍区,也即栅格地图能够精细地表达实际环境,识别出障碍区和非障碍区。相反地,当采集装置的分辨率越小时,则获取到的环境数据越“模糊”,一些细小角落会直接被错误地识别为障碍区或非障碍区,也即,不能精细地确定出障碍区和非障碍区。

在本申请中,考虑实际区域情行,当构建地图的区域是窄小区域时,则采集装置采用偏大的分辨率获取环境数据,虽然会增大数据存储量和计算量,但能够使得栅格地图精细地表达实际环境,以利于精准控制机器人顺利穿过该窄小区域。相反地,当构建地图的区域是宽大区域时,则采集装置采用偏小的分辨率获取环境数据,此时会减小数据存储量和计算量,栅格地图表达实际环境不够精细,但实际环境中的可行走区域足够机器人活动,通过该区域的栅格地图也能够让机器人顺利通过。

具体地,步骤s20细化的步骤包括:

步骤c1,获取每一个栅格地图的边界的关键帧数据,并提取边界特征。

步骤c2,分别根据各个栅格地图的边界特征的相似度,对各个栅格地图进行关联拼接,以得到目标地图。

对各个栅格地图进行关联拼接时,需要获取每一个区域对应的栅格地图的边界的关键帧数据,并提取栅格地图边界的边界特征,然后,根据每个栅格地图的边界特征的相似度,确定相邻的栅格地图,以及两相邻栅格地图对应的相邻边界,最终,将相邻栅格地图对应的相邻边界进行关联拼接,形成整个区域对应的目标地图。

在本实施例中通过采集装置采用不同的分辨率分别获取多个区域对应的环境数据,然后,根据每个区域对应的环境数据构建每个区域相对应的栅格地图,最后,将所有区域相对应的栅格地图进行关联拼接,得到所有区域整体对应的目标地图。本发明可通过灵活地调整采集装置的分辨率,以不同的分辨率采集不同区域内的环境数据,并构建相对应的栅格地图,进而关联拼接得到所有区域整体对应的目标地图。对于不同的区域,考虑实际区域的宽窄情况,采用不同分辨率的环境数据构建机器人栅格地图,避免采用恒定分辨率的环境数据构建栅格地图的弊端,增强了栅格地图表达区域情况的灵活性和实用性。

进一步地,参照图4,在本发明上述实施例的基础上,提出了本发明机器人栅格地图构建方法的第二实施例。

本实施例是第一实施例中步骤s10细化的步骤,本实施例与本发明上述实施例的区别在于:

步骤s11,当机器人位于所述第一区域时,则通过所述采集装置的第一分辨率获取第一区域内的环境数据,在所述第一区域内的环境数据中提取关键帧数据并构建第一栅格地图,其中,所述第一栅格地图用于表达所述第一区域。

步骤s12,当机器人位于所述第二区域时,则通过所述采集装置的第二分辨率获取第二区域内的环境数据,在所述第二区域内的环境数据中提取关键帧数据并构建第二栅格地图,其中,所述第二栅格地图用于表达所述第二区域。

本实施例中的机器人栅格地图构建方法应用于移动机器人,可以理解的是,移动机器人身上配置有激光雷达或深度相机,可以通过激光雷达和/或深度相机以第一分辨率获取第一区域内的环境数据,然后,从第一区域内的环境数据中提取关键帧数据和提取区域边界对应的关键帧数据,并基于关键帧数据构建第一栅格地图,其中,第一栅格地图用于表达第一区域。另外地,通过激光雷达和/或深度相机以第二分辨率获取第二区域内的环境数据,然后,从第二区域内的环境数据中提出关键帧数据和提取区域边界对应的关键帧数据,基于关键帧数据构建第二栅格地图,其中,第二栅格地图用于表达第二区域。在本申请中,栅格地图用于表达应用场景内的实际环境,其中,栅格地图中显示有机器人可行走区域(非障碍区)和不可行走区域(障碍区),以图3所示,区域a和区域b均是机器人的可行走区域,然而区域a和区域b之外的其他区域为不可行走区域。进一步地,在本申请中,第一区域所对应第一栅格地图的网格分辨率大于第二区域所对应的第二栅格地图的网格分辨率,且第一栅格地图的网格分辨率是第二栅格地图的网格分辨率的整数倍。

在本实施例中,考虑实际环境中的可行走区域的宽窄情况以及数据存储量和计算量,采用不同分辨率的环境数据构建相对应区域的栅格地图,并对获得的多个栅格地图进行拼接,以得到目标地图,增强了栅格地图表达区域情况的灵活性和实用性。

此外,参照图5,本发明实施例还提出一种机器人栅格地图构建装置,所述机器人栅格地图构建装置包括:

构建模块10,用于通过所述采集装置采用不同的分辨率分别获取多个区域内的环境数据,并分别根据每一个区域内的环境数据构建相对应的栅格地图;

拼接模块20,用于将各个栅格地图关联拼接,以得到目标地图。

可选地,机器人栅格地图构建装置,还包括:

区域划分模块,用于根据机器人在应用场景中的可行走区域的宽度,将应用场景划分为多个区域。

可选地,所述区域划分模块,包括:

区域标记单元,用于当所述可行走区域的宽度小于或等于预设长度时,则将宽度小于或等于预设长度的区域标记为第一区域,当所述可行走区域的宽度大于预设长度时,则将宽度大于预设长度的区域标记为第二区域;

相应地,所述构建模块10,包括:

环境数据获取单元,用于通过所述采集装置的第一分辨率获取第一区域内的环境数据,通过所述采集装置的第二分辨率获取第二区域内的环境数据,其中,第一分辨率大于第二分辨率。

可选地,所述多个区域包括第一区域和第二区域,其中,可行走区域的宽度小于或等于预设长度的区域标记为第一区域,可行走区域的宽度大于预设长度的区域标记为第二区域;

所述构建模块10,包括:

第一栅格地图构建单元,用于当机器人位于所述第一区域时,则通过所述采集装置的第一分辨率获取第一区域内的环境数据,在所述第一区域内的环境数据中提取关键帧数据并构建第一栅格地图,其中,所述第一栅格地图用于表达所述第一区域;

第二栅格地图构建单元,用于当机器人位于所述第二区域时,则通过所述采集装置的第二分辨率获取第二区域内的环境数据,在所述第二区域内的环境数据中提取关键帧数据并构建第二栅格地图,其中,所述第二栅格地图用于表达所述第二区域。

可选地,所述第一栅格地图的网格分辨率大于所述第二栅格地图的网格分辨率。

可选地,所述第一栅格地图的网格分辨率是所述第二栅格地图的网格分辨率的整数倍。

可选地,所述拼接模块20,包括:

边界特征提取单元,用于获取每一个栅格地图的边界的关键帧数据,并提取边界特征;

栅格地图拼接单元,用于分别根据各个栅格地图的边界特征的相似度,对各个栅格地图进行关联拼接,以得到目标地图。

此外,本发明实施例还提出一种存储介质,所述存储介质上存储有机器人栅格地图构建程序,所述机器人栅格地图构建程序被处理器执行时实现上述实施例提供的机器人栅格地图构建方法中的操作。

上述各程序模块所执行的方法可参照本发明方法各个实施例,此处不再赘述。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体/操作/对象与另一个实体/操作/对象区分开来,而不一定要求或者暗示这些实体/操作/对象之间存在任何这种实际的关系或者顺序;术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的。可以根据实际的需要选择中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

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

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的机器人栅格地图构建方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1