在已有地图的基础上更新局部地图的方法、系统及介质与流程

专利2022-05-09  29



1.本发明涉及局部地图更新技术领域,具体地,涉及一种在已有地图的基础上更新局部地图的方法、系统及介质。


背景技术:

2.地图更新是按现实情况对地图内容进行更正的过程,目的在于及时反映人文与自然要素的实际变化,保持地图现势性和准确性和可靠性。
3.现在云迹机器人已为中国数千家酒店、写字楼、商场等场景提供各类商业服务机器人产品与服务,超过千台机器人在各种场景中,每时每刻为人类服务。云迹机器人凭借在室内定位导航、智能移动,可以提供提供带路和信息宣传的功能,还可以为人送东西的功能,从而为人类的生活提供了方便。
4.针对上述现有技术,存在以下技术缺陷,机器人在使用前,会提前录入整体的地图信息,而在实际的使用过程中,地图的局部位置会经常发生变化,例如添加了某障碍物等,就使得环境的变化引起导航的误判,而每次都重新录入整体地图会使操作过程十分繁琐。


技术实现要素:

5.针对现有技术中的缺陷,本发明的目的是提供一种在已有地图的基础上更新局部地图的方法、系统及介质,能够在已有地图的基础上更新局部地图,解决环境改变引起的导航和定位问题。
6.根据本发明提供的一种在已有地图的基础上更新局部地图的方法、系统及介质,所述方案如下:
7.第一方面,提供了一种在已有地图的基础上更新局部地图的方法,所述方法包括:
8.判断需要进行更新的地图区域,再将机器人移动至需要更新的地图区域;
9.读取原有地图数据,传递给初始化地图;
10.得到初始化图后,向机器人输入此时机器人在地图上的实际位置;
11.有了初始化地图和机器人在地图中正确位置后,机器人通过本体的激光雷达和里程计数据生成该局部区域的地图;
12.得到该局部区域的地图之后,存储局部地图。
13.优选的,所述读取原有地图数据,传递给初始化地图包括:
14.将原有的地图读取到程序中,在算法的初始化中,生成一张与原有地图尺寸一样初始化图;
15.遍历原有地图的各个像素栅格值,依次复制到初始化图中,这样初始化图就与原有地图一模一样。
16.优选的,所述生成局部区域的地图包括:
17.建图算法采用rbpf粒子滤波算法,该算法公式为:
18.p(x
1:t
,m∣z
1:t
,u
0:t
)=p(m∣x
1:t
,z
1:t
)p(x
1:t
∣z
1:t
,u
0:t
)
19.式中,x
1:t
为机器人当前的位置,m为生成的地图,z
1:t
为激光雷达数据,u
0:t
为运动控制,此处即为里程计;
20.机器人建图时默认初始位置为(0,0),即为初始图的中心位置,设置机器人的实际位置来让机器人跳到初始图中的正确区域;
21.当机器人在初始地图位置正确后,即能够接收激光数据,已知位置,已知激光,通过上述公式即能够得到当前的地图;
22.遥控机器人往前走,地图边界不断扩大,把需要更新的区域都扫描到;
23.在实际操作时,生成的局部地图需要和原始的初始地图进行对齐。
24.优选的,所述局部地图需要和原始的初始地图进行对齐,如果对齐不精确就会导致局部更新失败,一般有三种方式:
25.一种是将机器人移动至需要更新的地图区域中,根据全局定位得到机器人位姿,在局部更新时,将获取到位姿作为初始位姿输入程序;
26.第二种是已知该位置,由上位机输入;
27.第三种是配套的地图可视化工具通过鼠标点击的方式获得。
28.第二方面,提供了一种在已有地图的基础上更新局部地图的系统,所述系统包括:
29.模块1:判断需要进行更新的地图区域,再将机器人移动至需要更新的地图区域;
30.模块2:读取原有地图数据,传递给初始化地图;
31.模块3:得到初始化图后,向机器人输入此时机器人在地图上的实际位置;
32.模块4:有了初始化地图和机器人在地图中正确位置后,机器人通过本体的激光雷达和里程计数据生成该局部区域的地图;
33.模块5:得到该局部区域的地图之后,存储局部地图。
34.优选的,所述模块2包括:
35.将原有的地图读取到程序中,在算法的初始化中,生成一张与原有地图尺寸一样初始化图;
36.遍历原有地图的各个像素栅格值,依次复制到初始化图中,这样初始化图就与原有地图一模一样。
37.优选的,所述模块4包括:
38.模块4.1:建图算法采用rbpf粒子滤波算法,该算法公式为:
39.p(x
1:t
,m∣z
1:t
,u
0:t
)=p(m∣x
1:t
,z
1:t
)p(x
1:t
∣z
1:t
,u
0:t
)
40.式中,x
1:t
为机器人当前的位置,m为生成的地图,z
1:t
为激光雷达数据,u
0:t
为运动控制,此处即为里程计;
41.模块4.2:机器人建图时默认初始位置为(0,0),即为初始图的中心位置,设置机器人的实际位置来让机器人跳到初始图中的正确区域;
42.模块4.3:当机器人在初始地图位置正确后,即能够接收激光数据,已知位置,已知激光,通过上述公式即能够得到当前的地图;
43.模块4.4:遥控机器人往前走,地图边界不断扩大,把需要更新的区域都扫描到;
44.模块4.5:在实际操作时,生成的局部地图需要和原始的初始地图进行对齐。
45.优选的,所述模块4.5中局部地图需要和原始的初始地图进行对齐,如果对齐不精确就会导致局部更新失败,一般有三种方式:
46.一种是在模块1中,根据全局定位得到机器人位姿,在局部更新时,将获取到位姿作为初始位姿输入程序;
47.第二种是已知该位置,由上位机输入;
48.第三种是配套的地图可视化工具通过鼠标点击的方式获得。
49.与现有技术相比,本发明具有如下的有益效果:
50.1、够在已有地图的基础上更新局部地图,从而解决环境改变引起的导航和定位问题;
51.2、局部地图的更新相比于对地图整体更新更加简便,效率更高。
附图说明
52.通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
53.图1为本发明的整体流程图。
具体实施方式
54.下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
55.本发明实施例提供了一种在已有地图的基础上更新局部地图的方法,参照图1所示,在机器人的使用过程中,如果地图发生了变化,找出需要进行更新的地图区域,手动将机器人移动到需要更新的地图区域。机器人到达需更新的地图区域后,先将原有的地图读取到程序中,在算法的初始化中,生成一张与原有地图尺寸一样初始化图,然后再遍历原有地图的各个像素栅格值,依次复制到初始化图中,这样初始化图就与原有地图一模一样。
56.有了初始化地图和机器人在地图中正确位置后,机器人再通过本体的激光雷达和里程计数据生成该局部区域地图,具体包括:
57.首先,建图算法采用rbpf粒子滤波算法,该算法公式为:
58.p(x
1:t
,m∣z
1:t
,u
0:t
)=p(m∣x
1:t
,z
1:t
)p(x
1:t
∣z
1:t
,u
0:t
)
59.式中,x
1:t
为机器人当前的位置,m为生成的地图,z
1:t
为激光雷达数据,u
0:t
为运动控制,此处即可理解为里程计;这个公式的核心思想是根据激光的观测和里程计的测量信息去估计联合后验概率密度函数,来代表地图和机器人轨迹。
60.机器人建图时默认初始位置为(0,0),即为初始图的中心位置,但实际需要更新的局部图可能在初始地图中的任意位置,因此必须设置机器人的实际位置来让机器人跳到初始图中的正确区域。
61.当机器人在初始地图位置正确后,即可接收激光数据,已知位置,已知激光,通过上述公式即可得到当前的地图。
62.其次,遥控机器人往前走,地图边界不断扩大,把需要更新的区域都扫描到。
63.最后,在实际操作时,最大的难度是生成的局部地图需要和原始的初始地图进行对齐,如果对齐不精确就会导致局部更新失败,一般有三种方式,一种是在最开始的步骤
中,根据全局定位得到机器人位姿,在局部更新时,将获取到位姿作为初始位姿输入程序,第二种是已知该位置,由上位机输入,第三种是配套的地图可视化工具通过鼠标点击的方式获得。三种方式都在实际应用都会使用,第一种方式精度较高,其他两种需要进行可视化微调,使得激光和已经存在的障碍物进行重合。
64.生成新的局部区域地图之后,将原有的该位置的局部地图进行替换,并保存新的局部区域地图。
65.本发明实施例还提供了一种在已有地图的基础上更新局部地图的系统,该系统包含模块1、模块2、模块3、模块4和模块5,其中模块1是根据已经发生变化的地图,判断需要进行更新的地图区域,从而手动将机器人移动至需要更新的地图区域;
66.在模块2中,读取原有地图数据,传递给初始化地图:将原有的地图读取到程序中,在算法的初始化中,生成一张与原有地图尺寸一样初始化图,然后遍历原有地图的各个像素栅格值,依次复制到初始化图中,这样初始化图就与原有地图一模一样。
67.在模块3中,得到初始化图后,需要输入此时机器人在地图上的实际位置,再进入模块4中,初始化地图和机器人在地图中正确位置后,机器人通过本体的激光雷达和里程计数据生成该局部区域的地图。所述模块4的具体步骤如下:
68.模块4.1:建图算法采用rbpf粒子滤波算法,该算法公式为:
69.p(x
1:t
,m∣z
1:t
,u
0:t
)=p(m∣x
1:t
,z
1:t
)p(x
1:t
∣z
1:t
,u
0:t
)
70.式中,x
1:t
为机器人当前的位置,m为生成的地图,z
1:t
为激光雷达数据,u
0:t
为运动控制,此处即可理解为里程计。
71.模块4.2:机器人建图时默认初始位置为(0,0),即为初始图的中心位置,设置机器人的实际位置来让机器人跳到初始图中的正确区域。
72.模块4.3:当机器人在初始地图位置正确后,即能够接收激光数据,已知位置,已知激光,通过上述公式即能够得到当前的地图。
73.模块4.4:遥控机器人往前走,地图边界不断扩大,把需要更新的区域都扫描到。
74.模块4.5:在实际操作时,生成的局部地图需要和原始的初始地图进行对齐,如果对齐不精确就会导致局部更新失败,一般有三种方式:
75.一种是在模块1中,根据全局定位得到机器人位姿,在局部更新时,将获取到位姿作为初始位姿输入程序。
76.第二种是已知该位置,由上位机输入。
77.第三种是配套的地图可视化工具通过鼠标点击的方式获得。
78.最后,模块5是将模块4内得到该局部区域的地图替换原有地图里的该局部区域,从而存储最新的局部区域地图。
79.本发明实施例提供了一种在已有地图的基础上更新局部地图的方法、系统及介质,能够在已有地图的基础上更新局部地图,从而解决环境改变引起的导航和定位问题,且提高了地图的更新效率。
80.本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置、模块、单元以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置、模块、单元以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置、模块、单
元可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置、模块、单元也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置、模块、单元视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
81.以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。

技术特征:
1.一种在已有地图的基础上更新局部地图的方法,其特征在于,所述方法包括:步骤1:判断需要进行更新的地图区域,再将机器人移动至需要更新的地图区域;步骤2:读取原有地图数据,传递给初始化地图;步骤3:得到初始化图后,向机器人输入此时机器人在地图上的实际位置;步骤4:有了初始化地图和机器人在地图中正确位置后,机器人通过本体的激光雷达和里程计数据生成该局部区域的地图;步骤5:得到该局部区域的地图之后,存储局部地图。2.根据权利要求1所述的方法,其特征在于,所述步骤2包括:步骤2.1:将原有的地图读取到程序中,在算法的初始化中,生成一张与原有地图尺寸一样初始化图;步骤2.2:遍历原有地图的各个像素栅格值,依次复制到初始化图中,这样初始化图就与原有地图一模一样。3.根据权利要求1所述的方法,其特征在于,所述步骤4包括:步骤4.1:建图算法采用rbpf粒子滤波算法,该算法公式为:p(x
1:t
,m|z
1:t
,u
0:t
)=p(m|x
1:t
,z
1:t
)p(x
1:t
|z
1:t
,u
0:t
)式中,x
1:t
为机器人当前的位置,m为生成的地图,z
1:t
为激光雷达数据,u
0:t
为运动控制,此处即为里程计;步骤4.2:机器人建图时默认初始位置为(0,0),即为初始图的中心位置,设置机器人的实际位置来让机器人跳到初始图中的正确区域;步骤4.3:当机器人在初始地图位置正确后,即能够接收激光数据,已知位置,已知激光,通过上述公式即能够得到当前的地图;步骤4.4:遥控机器人往前走,地图边界不断扩大,把需要更新的区域都扫描到;步骤4.5:在实际操作时,生成的局部地图需要和原始的初始地图进行对齐。4.根据权利要求3所述的方法,其特征在于,所述步骤4.5中局部地图需要和原始的初始地图进行对齐,如果对齐不精确就会导致局部更新失败,一般有三种方式:一种是在步骤1中,根据全局定位得到机器人位姿,在局部更新时,将获取到位姿作为初始位姿输入程序;第二种是已知该位置,由上位机输入;第三种是配套的地图可视化工具通过鼠标点击的方式获得。5.一种在已有地图的基础上更新局部地图的系统,其特征在于,所述系统包括:模块1:判断需要进行更新的地图区域,再将机器人移动至需要更新的地图区域;模块2:读取原有地图数据,传递给初始化地图;模块3:得到初始化图后,向机器人输入此时机器人在地图上的实际位置;模块4:有了初始化地图和机器人在地图中正确位置后,机器人通过本体的激光雷达和里程计数据生成该局部区域的地图;模块5:得到该局部区域的地图之后,存储局部地图。6.根据权利要求5所述的方法,其特征在于,所述模块2包括:将原有的地图读取到程序中,在算法的初始化中,生成一张与原有地图尺寸一样初始化图;
遍历原有地图的各个像素栅格值,依次复制到初始化图中,这样初始化图就与原有地图一模一样。7.根据权利要求5所述的方法,其特征在于,所述模块4包括:模块4.1:建图算法采用rbpf粒子滤波算法,该算法公式为:p(x
1:t
,m|z
1:t
,u
0:t
)=p(m|x
1:t
,z
1:t
)p(x
1:t
|z
1:t
,u
0:t
)式中,x
1:t
为机器人当前的位置,m为生成的地图,z
1:t
为激光雷达数据,u
0:t
为运动控制,此处即为里程计;模块4.2:机器人建图时默认初始位置为(0,0),即为初始图的中心位置,设置机器人的实际位置来让机器人跳到初始图中的正确区域;模块4.3:当机器人在初始地图位置正确后,即能够接收激光数据,已知位置,已知激光,通过上述公式即能够得到当前的地图;模块4.4:遥控机器人往前走,地图边界不断扩大,把需要更新的区域都扫描到;模块4.5:在实际操作时,生成的局部地图需要和原始的初始地图进行对齐。8.根据权利要求7所述的方法,其特征在于,所述模块4.5中局部地图需要和原始的初始地图进行对齐,如果对齐不精确就会导致局部更新失败,一般有三种方式:一种是在模块1中,根据全局定位得到机器人位姿,在局部更新时,将获取到位姿作为初始位姿输入程序;第二种是已知该位置,由上位机输入;第三种是配套的地图可视化工具通过鼠标点击的方式获得。9.一种存储有计算机程序的计算机可读存储介质,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤。
技术总结
本发明提供了一种在已有地图的基础上更新局部地图的方法、系统及介质,涉及局部地图更新技术领域,该方法包括:步骤1:判断需要进行更新的地图区域,再将机器人移动至需要更新的区域;步骤2:根据需要更新的区域,生成初始化图;步骤3:得到初始化图后,向机器人输入此时机器人在地图上的实际位置;步骤4:有了初始化地图和机器人在地图中正确位置后,机器人通过本体的激光雷达和里程计数据生成该局部区域的地图;步骤5:得到该局部区域的地图之后,存储局部地图。本发明能够在已有地图的基础上更新局部地图,解决环境改变引起的导航和定位问题。问题。问题。


技术研发人员:杨洪杰 郭震
受保护的技术使用者:上海景吾智能科技有限公司
技术研发日:2021.03.02
技术公布日:2021/6/24

转载请注明原文地址:https://doc.8miu.com/read-250150.html

最新回复(0)