地图更新方法、电子设备及存储介质与流程

未命名 07-23 阅读:94 评论:0


1.本技术实施例涉及定位技术领域,特别是涉及一种地图更新方法、电子设备及存储介质。


背景技术:

2.随着科技的进步,可移动设备(如移动机器人)技术得到了迅速的发展,许多仓库或者工厂的点到点搬运任务由人向可移动设备转变,slam(simultaneous localization and mapping,即时定位与地图构建)可移动设备由于容易部署、维护成本低而受到了许多工厂的青睐,差速轮可移动设备由于速度快、效率高、成本低为可移动设备首选。
3.当可移动设备slam完成部署后,定位地图及运行轨迹(拓扑地图)已固定。然而在一些高精点处需前置点横向偏差不能相差过大,例如对接某一机台,前置点与机台对接口的横向偏差过大时,导致可移动设备到达机台时位姿调整不过来。针对前置点误差较大这一问题,产生的主要原因及解决办法包括:打点精度所致,打点时由于操作原因或者可移动设备本身原因,不能完全使得横向误差为0,甚至带来几厘米的偏差,这固有偏差会使得可移动设备往一个方向偏移;环境变化导致,环境变化导致到达前置点的位姿不稳定,加上打点精度,可能超出阈值,使得可移动设备到达高精点难以调整回来。
4.现有技术中,在确定一个高精点到点精度差且多次出现该问题时重新打点(包括高精点和前置点),若某一区域大部分点都差时更新环境地图且更新部分需重新打点或者调点。由于这种方式无法有效定量地评估其前置点精度,再次打的点仍不一定是最优的点,同时环境地图更新后需重新打点。


技术实现要素:

5.鉴于上述问题,提出了本技术实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种地图更新方法、电子设备及存储介质。
6.依据本技术实施例的第一方面,提供了一种地图更新方法,包括:
7.获取各个可移动设备分别在拓扑地图中每个前置节点的横向偏差数据,所述前置节点是在所述拓扑地图中与目标节点相邻且位于目标节点之前的节点,所述拓扑地图表征可移动设备的运行路径,所述横向偏差数据是可移动设备在前置节点的位姿信息与基准位姿信息之间的横向偏差;
8.根据各个可移动设备在同一前置节点所对应所述横向偏差数据的统计信息,确定是否对所述前置节点以及所述前置节点所对应的目标节点的全局位姿信息进行更新;
9.若确定对所述前置节点以及目标节点的全局位姿信息进行更新,根据每个所述可移动设备在所述前置节点的位姿信息,确定所述前置节点的目标全局位姿信息和所述目标节点的目标全局位姿信息,所述前置节点的全局位姿信息表征可移动设备在所述前置节点的全局基准位姿信息,所述目标节点的全局位姿信息表征可移动设备在所述目标节点的全局基准位姿信息;
10.在所述拓扑地图中,将所述前置节点的全局位姿信息更新为所述目标全局位姿信息,并将所述目标节点的全局位姿信息更新为所述目标全局位姿信息。
11.依据本技术实施例的第二方面,提供了一种电子设备,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如第一方面中所述的地图更新方法。
12.依据本技术实施例的第三方面,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的地图更新方法。
13.依据本技术实施例的第四方面,提供了一种计算机程序产品,包括计算机程序或计算机指令,所述计算机程序或计算机指令被处理器执行时实现第一方面所述的地图更新方法。
14.本技术实施例提供的地图更新方法、电子设备及存储介质,通过获取各个可移动设备分别在拓扑地图中每个前置节点的横向偏差数据,根据各个可移动设备在同一前置节点所对应横向偏差数据的统计信息,确定是否对前置节点以及前置节点所对应的目标节点的全局位姿信息进行更新,若确定对前置节点以及目标节点的全局位姿信息进行更新,根据每个可移动设备在前置节点的位姿信息,确定前置节点的目标全局位姿信息和目标节点的目标全局位姿信息,在拓扑地图中,将前置节点的全局位姿信息更新为前置节点的目标全局位姿信息,并将目标节点的全局位姿信息更新为目标节点的目标全局位姿信息,由于可以基于可移动设备途经前置节点的横向偏差数据来确定需要更新全局位姿信息的前置节点和目标节点,进而对前置节点和目标节点的全局位姿信息进行更新,实现了自动对拓扑地图进行更新,而无需重新打点,可以降低维护成本,提高可移动设备任务的高效性。
15.上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。
附图说明
16.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本技术的限制。
17.图1是本技术实施例提供的一种地图更新方法的步骤流程图;
18.图2是本技术实施例中横向偏差数据的计算示意图;
19.图3是本技术实施例提供的另一种地图更新方法的步骤流程图;
20.图4a是本技术实施例中定位地图中待更新的定位区域的示例图;
21.图4b是对图4a所示定位区域进行帧位姿优化的因子图的示例图;
22.图5是本技术实施例提供的一种地图更新装置的结构框图;
23.图6是本技术实施例提供的一种电子设备的结构框图。
具体实施方式
24.下面将参照附图更详细地描述本技术的示例性实施例。虽然附图中显示了本技术
的示例性实施例,然而应当理解,可以以各种形式实现本技术而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本技术,并且能够将本技术的范围完整的传达给本领域的技术人员。
25.近年来,基于人工智能的计算机视觉、深度学习、机器学习、图像处理、图像识别等技术研究取得了重要进展。人工智能(artificial intelligence,ai)是研究、开发用于模拟、延伸人的智能的理论、方法、技术及应用系统的新兴科学技术。人工智能学科是一门综合性学科,涉及芯片、大数据、云计算、物联网、分布式存储、深度学习、机器学习、神经网络等诸多技术种类。计算机视觉作为人工智能的一个重要分支,具体是让机器识别世界,计算机视觉技术通常包括人脸识别、活体检测、指纹识别与防伪验证、生物特征识别、人脸检测、行人检测、目标检测、行人识别、图像处理、图像识别、图像语义理解、图像检索、文字识别、视频处理、视频内容识别、三维重建、虚拟现实、增强现实、同步定位与地图构建(slam)、计算摄影、机器人导航与定位等技术。随着人工智能技术的研究和进步,该项技术在众多领域展开了应用,例如安全防控、城市管理、交通管理、楼宇管理、园区管理、人脸通行、人脸考勤、物流管理、仓储管理、机器人、智能营销、计算摄影、手机影像、云服务、智能家居、穿戴设备、无人驾驶、自动驾驶、智能医疗、人脸支付、人脸解锁、指纹解锁、人证核验、智慧屏、智能电视、摄像机、移动互联网、网络直播、美颜、美妆、医疗美容、智能测温等领域。本技术实施例也是涉及计算机视觉技术,具体是一种地图更新方法,用于对可移动设备的地图进行更新,具体方案如下:
26.图1是本技术实施例提供的一种地图更新方法的步骤流程图,该方法可以应用于对可移动设备(如移动机器人)的地图进行更新,可以由可移动设备所对应的服务器等电子设备来执行,如图1所示,该方法可以包括:
27.步骤101,获取各个可移动设备分别在拓扑地图中每个前置节点的横向偏差数据,所述前置节点是在所述拓扑地图中与目标节点相邻且位于目标节点之前的节点。
28.其中,拓扑地图是地图学中一种统计地图,一种保持点与线相对位置关系正确而不一定保持图形形状与面积、距离、方向正确的抽象地图,表征可移动设备的运行路径。拓扑地图是把室内环境表示为带节点和相关连接线的拓扑结构图,其中节点表示环境中的重要位置点(如拐角、门、电梯、楼梯等),边表示节点间的连接关系,如走廊等。所述目标节点是可移动设备要到达的目标点位,如货架所在位置点等。所述可移动设备为差速模型。
29.所述横向偏差数据是可移动设备在前置节点的位姿信息(实际位姿信息)与基准位姿信息之间的横向偏差。图2是本技术实施例中横向偏差数据的计算示意图,如图2所示,1表示可移动设备在目标节点的基准位姿信息,2表示无误差时可移动设备在前置节点的基准位姿信息,3表示可移动设备的实际位姿信息,可以看到,可移动设备的实际位姿信息相对于在前置节点的基准位姿信息产生了横向偏差4,由于可移动设备是差速模型,不能横移运动消除累计误差,且运动过程不能产生大的扭动,因为大的扭动可能使可移动设备与黑色障碍物5相撞。
30.基于这种高精任务,通常采用基于基准点(mark)的相对定位(包括激光基准点或视觉基准点),其定位实时上报可移动设备到基准点的位姿信息,导航根据其数据进行相应的规划运动。普通定位不能保证其精度,故本技术实施例以相对定位为基准。其中,基准点是与目标节点对应的一个标识点位,也是确定位姿信息(包括前置节点的位姿信息、目标节
点的位姿信息以及可移动设备的位姿信息)的坐标原点,例如在目标节点对应的是一个u型槽时,基准点是u型槽背部的中心点。
31.在本技术的一个实施例中,所述获取各个可移动设备分别在拓扑地图中每个前置节点的横向偏差数据,包括:
32.接收各个所述可移动设备上报的在每个所述前置节点的横向偏差数据;或者
33.接收各个所述可移动设备上报的可移动设备相对于基准点的位姿信息,并根据所述位姿信息,确定可移动设备在所述基准点所对应前置节点的横向偏差数据,所述基准点是确定所述位姿信息的坐标原点。
34.可移动设备在到达与目标节点对应的前置节点时可以计算与该前置节点的横向偏差数据,并向服务器上报该横向偏差数据,服务器接收到可移动设备上报的横向偏差数据;或者,可移动设备在到达与目标节点对应的前置节点时,可以将可移动设备相对于基准点(mark)的位姿信息上报至服务器,服务器接收到可移动设备上报的该可移动设备相对于基准点的位姿信息,根据可移动设备相对于基准点的位姿信息,结合目标节点相对于基准点的位姿信息,来计算可移动设备相对于目标节点的位姿信息,从该位姿信息中获取横向偏差数据。即通过如下公式来计算可移动设备相对于目标节点的位姿信息:
[0035][0036]
其中,表示可移动设备相对于目标节点的位姿信息,表示目标节点相对于基准点的位姿信息,表示可移动设备相对于基准点的位姿信息。
[0037]
在得到可移动设备的横向偏差数据后,可以对该横向偏差数据进行记录,可以记录每个可移动设备在每个前置点的横向偏差的次数、均值和方差。
[0038]
在本技术的一个实施例中,在所述获取各个可移动设备分别在拓扑地图中每个前置节点的横向偏差数据之后,还包括:针对每个所述可移动设备,记录所述可移动设备在每个所述前置节点所产生横向偏差数据的次数、均值和方差;针对每个所述前置节点,记录每个所述可移动设备在所述前置节点所产生横向偏差的次数、均值和方差。
[0039]
在获取到可移动设备在前置节点的横向偏差数据后,记录该可移动设备在该前置节点所产生的横向偏差数据的次数n、均值u和方差σ,以及到达目标节点(即高精点,要求较高的精度)的精度,记录可移动设备所对应横向偏差数据的数据格式为map《robot_id,shard_ptr1《msgs》》,其中,robot_id表示可移动设备的标识,shard_ptr1《msgs》表示该可移动设备在每个前置节点所产生的横向偏差数据的次数、均值和方差,记录前置节点所对应横向偏差数据的数据格式为map《node_id,shard_ptr2《msgs》》,其中,node_id表示前置节点的标识,shard_ptr2<msgs>表示在该前置节点处每个可移动设备所产生的横向偏差的次数、均值和方差。
[0040]
在获取到一次横向偏差数据时,对记录的数据进行更新,无需保留以前的所有的横向偏差数据,可以基于本次的观测数据进行迭代计算,即通过如下公式进行迭代计算:
[0041]nnew
=n+1,
[0042]
[0043][0044]
其中,n
new
表示迭代后横向偏差数据的次数,n表示迭代前横向偏差数据的次数,u
new
表示迭代后横向偏差数据的均值,u表示迭代前横向偏差数据的均值,o
detect
表示本次观测数据中的横向偏差数据,σ
new
表示迭代后横向偏差数据的方差,σ表示迭代前横向偏差数据的方差,σ
now
表示基于本次的横向偏差数据与均值u
new
得到的本次的横向偏差数据的方差。
[0045]
通过记录可移动设备在每个前置节点所产生横向偏差的数据,以及每个可移动设备在前置节点所产生的横向偏差数据,在横向偏差数据的次数达到一定次数时可以直接使用所记录的数据(均值、方差)进行横向偏差数据的判断,确定待更新的地图数据。
[0046]
步骤102,根据各个可移动设备在同一前置节点所对应所述横向偏差数据的统计信息,确定是否对所述前置节点以及所述前置节点所对应的目标节点的全局位姿信息进行更新。
[0047]
针对每个前置节点,对各个可移动设备在该前置节点产生的横向偏差数据进行统计,得到每个前置节点所对应的横向偏差数据的统计信息。判断每个前置节点所对应的横向偏差数据的统计信息是否满足目标条件,在一个前置节点所对应的横向偏差数据的统计信息满足目标条件时,确定对该前置节点以及该前置节点所对应目标节点的全局位姿信息进行更新;在一个前置节点所对应的横向偏差数据的统计信息不满足目标条件时,确定不需要对该前置节点以及该前置节点所对应目标节点的全局位姿信息进行更新。
[0048]
步骤103,若确定对所述前置节点以及目标节点的全局位姿信息进行更新,根据每个所述可移动设备在所述前置节点的位姿信息,确定所述前置节点的目标全局位姿信息和所述目标节点的目标全局位姿信息。
[0049]
其中,所述前置节点的全局位姿信息表征可移动设备在所述前置节点的全局基准位姿信息,所述目标节点的全局位姿信息表征可移动设备在所述目标节点的全局基准位姿信息。
[0050]
在确定对一个前置节点以及该前置节点所对应目标节点的全局位姿信息进行更新时,根据每个可移动设备在该前置节点的位姿信息,结合前置节点与目标节点的位姿信息,可以对该前置节点的全局位姿信息进行修正,得到该前置节点的目标全局位姿信息,并可以对该前置节点所对应目标节点的全局位姿信息进行修正,得到目标节点的目标全局位姿信息。可移动设备在前置节点的位姿信息可以包括可移动设备的全局位姿信息以及基准节点相对于可移动设备的位姿信息。全局位姿信息是针对目标坐标原点而言的,目标坐标原点也是定位地图的坐标原点。
[0051]
在本技术的一个实施例中,所述根据每个所述可移动设备在所述前置节点的位姿信息,确定所述前置节点的目标全局位姿信息和所述目标节点的目标全局位姿信息,包括:
[0052]
针对每个所述可移动设备,根据所述目标节点相对于基准点的位姿信息、所述前置节点相对于所述目标节点的位姿信息、所述可移动设备的全局位姿信息以及所述基准点相对于所述可移动设备的位姿信息,确定所述目标节点的全局位姿信息以及所述前置节点的全局位姿信息,所述基准点是确定可移动设备的位姿信息的坐标原点;
[0053]
对各个所述可移动设备下所确定的目标节点的全局位姿信息求取均值,得到所述
目标节点的目标全局位姿信息,以及,对各个所述可移动设备下所确定的前置节点的全局位姿信息求取均值,得到所述前置节点的目标全局位姿信息。
[0054]
一个目标节点对应一个基准点,可移动设备在前置节点处的位姿信息是可移动设备在前置节点处相对于该基准点的位姿信息。
[0055]
在确定需要对前置节点和目标节点的全局位姿信息进行更新后,从拓扑地图中可以获取到该目标节点相对于基准点的位姿信息、前置节点相对于目标节点的位姿信息,并可以从可移动设备上报的数据中获取到可移动设备的全局位姿信息以及基准点相对于可移动设备的位姿信息(即基准点在可移动设备坐标系下的位姿信息)。针对每个可移动设备,可以确定所述可移动设备的全局位姿信息、基准点相对于所述可移动设备的位姿信息以及所述目标节点相对于目标基准点的位姿信息之间的乘积,将该乘积确定为所述目标节点的全局位姿信息;确定可移动设备的全局位姿信息、基准点相对于所述可移动设备的位姿信息、目标节点相对于基准点的位姿信息以及前置节点相对于目标节点的位姿信息之间的乘积,将该乘积确定为前置节点的全局位姿信息。即通过如下公式确定目标节点的全局位姿信息:
[0056][0057]
其中,表示目标节点的全局位姿信息,表示可移动设备的全局位姿信息,表示基准点相对于可移动设备的位姿信息,表示目标节点相对于基准点的位姿信息。
[0058]
通过如下公式确定前置节点的全局位姿信息:
[0059][0060]
其中,表示前置节点的全局位姿信息,表示可移动设备的全局位姿信息,表示基准点相对于可移动设备的位姿信息,表示目标节点相对于基准点的位姿信息,表示前置节点相对于目标节点的位姿信息。各个全局位姿信息均是相对于定位地图的坐标原点而确定的。
[0061]
上述得到的目标节点的位姿信息和前置节点的位姿信息,是单一的可移动设备产生的,将在所有可移动设备下所确定的目标节点的全局位姿信息求取均值,作为目标节点的目标全局位姿信息,并将所有可移动设备下所确定的前置节点的全局位姿信息求取均值,得到前置节点的目标全局位姿信息。实现了基于各个可移动设备的位姿信息来对前置节点和目标节点的全局位姿信息进行更新。其中,全局位姿信息包括位置信息和姿态信息(角度),在对各可移动设备下的全局位置信息求取均值时,是分别对位置信息和姿态信息求取均值。
[0062]
在本技术的一个实施例中,所述对各个所述可移动设备下所确定的目标节点的全局位姿信息求取均值,得到所述目标节点的目标全局位姿信息,包括:去除各个所述可移动设备下所确定的目标节点的全局位姿信息中的最大全局位姿信息和最小全局位姿信息,并将剩余的全局位姿信息的均值确定为所述目标节点的目标全局位姿信息;
[0063]
所述对各个所述可移动设备下所确定的前置节点的全局位姿信息求取均值,得到所述前置节点的目标全局位姿信息,包括:去除各个所述可移动设备下所确定的前置节点的全局位姿信息中的最大全局位姿信息和最小全局位姿信息,并将剩余的全局位姿信息的
均值确定为所述前置节点的目标全局位姿信息。
[0064]
在求取各个可移动设备下所确定的目标节点的全局位姿信息的均值时,可以去除其中的最大全局位姿信息和最小全局位姿信息,并求取剩余的全局位姿信息的均值,将该均值确定为该目标节点的目标全局位姿信息;在求取多个可移动设备下所确定的前置节点的全局位姿信息的均值时,可以去除其中的最大全局位姿信息和最小全局位姿信息,并求取剩余的全局位姿信息的均值,将该均值确定为该前置节点的目标全局位姿信息。
[0065]
由于最大全局位姿信息和最小全局位姿信息误差较大,通过去除后再求取均值,可以提高所确定的目标节点和前置节点的全局位姿信息的准确性,增强鲁棒性。
[0066]
步骤104,在所述拓扑地图中,将所述前置节点的全局位姿信息更新为所述目标全局位姿信息,并将所述目标节点的全局位姿信息更新为所述目标全局位姿信息。
[0067]
在拓扑地图中,将前置节点原始的全局位姿信息更新为目标全局位姿信息,并将目标节点原始的全局位姿信息更新为目标全局位姿信息,完成了对前置节点和目标节点的全局位姿信息的更新。
[0068]
在进行地图更新时,为了提示操作员该系统正在运行且起作用,可以将可能需要更新的前置节点在原拓扑地图中进行区别显示(例如将待更新的前置节点显示为红色等),以对待更新的前置节点进行提醒。
[0069]
本实施例提供的地图更新方法,通过获取各个可移动设备分别在拓扑地图中每个前置节点的横向偏差数据,根据各个可移动设备在同一前置节点所对应的横向偏差数据的统计信息,确定是否对前置节点以及前置节点所对应的目标节点的全局位姿信息进行更新,若确定对前置节点以及目标节点的全局位姿信息进行更新,根据每个可移动设备在前置节点的位姿信息,确定前置节点的目标全局位姿信息和目标节点的目标全局位姿信息,在拓扑地图中,将前置节点的全局位姿信息更新为前置节点的目标全局位姿信息,并将目标节点的全局位姿信息更新为目标节点目标全局位姿信息,由于可以基于可移动设备途经前置节点的横向偏差数据来确定需要更新全局位姿信息的前置节点和目标节点,进而对前置节点和目标节点进行全局位姿信息的更新,实现了自动对拓扑地图进行更新,而无需重新打点,可以降低维护成本,提高可移动设备任务的高效性。
[0070]
在上述技术方案的基础上,在所述根据各个可移动设备在同一前置节点所对应所述横向偏差数据的统计信息,确定是否对所述前置节点以及所述前置节点所对应的目标节点的全局位姿信息进行更新之前,还包括:针对每个所述前置点,确定在所述前置点节处所述横向偏差数据大于第一偏差阈值的可移动设备的统计数量,作为所述前置节点所对应的所述统计信息。
[0071]
针对每个前置节点,分别比较每个可移动设备在该前置节点所产生的横向偏差数据与偏差阈值,并统计横向偏差数据大于偏差阈值的可移动设备的统计数量,横向偏差数据大于偏差阈值的可移动设备的统计数量为该前置节点的统计信息。一个前置节点的统计信息可以作为判断该前置节点是否需要更新全局位姿信息的依据。
[0072]
在本技术的一个实施例中,所述根据各个可移动设备在同一前置节点所对应所述横向偏差数据的统计信息,确定是否对所述前置节点以及所述前置节点所对应的目标节点的全局位姿信息进行更新,包括:确定所述统计数量与所述前置节点所对应可移动设备的总数量之间的第一比值;若所述第一比值大于或等于第一比值阈值,确定对所述前置节点
以及所述前置节点所对应的目标节点的全局位姿信息进行更新。
[0073]
前置节点所对应的可移动设备是在该前置节点产生横向偏差数据的可移动设备。
[0074]
计算前置节点所对应的统计数量与该前置节点所对应的可移动设备的总数量之间的比值,得到第一比值,比较第一比值与第一比值阈值,如果第一比值大于或等于第一比值阈值,说明大部分的可移动设备在该前置节点处都会产生横向偏差数据,则确定该前置节点有横向偏差,需要在拓扑地图中对该前置节点的全局位姿信息进行更新。通过第一比值与第一比值阈值的关系,可以评估前置节点的精度,从而将精度较低的前置节点确定为需要更新全局位姿信息的前置节点。
[0075]
在上述技术方案的基础上,所述方法还包括:针对每个所述可移动设备,统计出现所述横向偏差数据大于第二偏差阈值的前置节点的数量;若统计得到的前置节点的数量与所述前置节点的总数量之间的第二比值大于第二比值阈值,生成所述可移动设备的检修提示信息。
[0076]
针对每个可移动设备,比较该可移动设备途径每个前置节点的横向偏差数据与第二偏差阈值,统计横向偏差数据大于第二偏差阈值的前置节点的数量,确定统计得到的前置节点的数量与该可移动设备所经过的前置节点的总数量之间的第二比值,如果第二比值大于第二比值阈值,说明该可移动设备自身有误差,需检测维修,生成该可移动设备的检修提示信息,并上报操作员,以提醒操作员待有时间对该可移动设备进行检测,以防出错。其中,第二比值阈值可以根据需求设置,为了确保判断结果的准确性,可以设置较高的第二比值阈值,例如第二比值阈值可以设置为90%。
[0077]
图3是本技术实施例提供的另一种地图更新方法的步骤流程图,在上述实施例的基础上,本技术实施例还可以对定位地图进行更新,如图3所示,该方法可以包括:
[0078]
步骤301,获取各个可移动设备分别在拓扑地图中每个前置节点的横向偏差,所述前置节点是在所述拓扑地图中与目标节点相邻且位于目标节点之前的节点。
[0079]
步骤302,根据各个可移动设备在同一前置节点所对应所述横向偏差数据的统计信息,确定是否对所述前置节点以及所述前置节点所对应的目标节点的全局位姿信息进行更新。
[0080]
步骤303,若确定对所述前置节点以及目标节点的全局位姿信息进行更新,根据每个所述可移动设备在所述前置节点的位姿信息,确定所述前置节点的目标全局位姿信息和所述目标节点的目标全局位姿信息。
[0081]
步骤304,在所述拓扑地图中,将所述前置节点的全局位姿信息更新为所述目标全局位姿信息,并将所述目标节点的全局位姿信息更新为所述目标全局位姿信息。
[0082]
步骤305,获取定位地图中待更新的定位区域。
[0083]
如果人为知道某一区域的环境更改了,可以直接将该区域确定为待更新的定位区域。或者,还可以基于确定的待更新前置点来确定待更新的定位区域,即如果多个待更新前置点处于同一区域中,可以认为该区域的环境有更改,将该区域确定为待更新区域。其中,定位地图包括:激光slam地图或者视觉slam地图。定位地图是全局地图,拓扑地图是在全局地图下可移动设备运行轨迹的地图。
[0084]
在本技术的一个实施例中,所述获取定位地图中待更新的定位区域,包括:在存在多个所述需要更新全局位姿信息的前置节点时,对多个所述前置节点进行聚类,得到至少
一个聚类区域;针对每个所述聚类区域,分别确定在所述聚类区域内每个所述前置节点横向偏差数据的方差数据大于或等于方差阈值的可移动设备的数量,作为统计结果;若每个所述前置节点所对应的统计结果与所述多个可移动设备的总数量之间的第三比值均大于或等于第三比值阈值,确定所述聚类区域为所述定位地图中待更新的定位区域。
[0085]
如果存在多个需要更新全局位姿信息的前置节点,可以使用kd树来对多个前置节点进行聚类,得到至少一个聚类区域。针对每个聚类区域,在每个前置节点处,确定在该前置节点的横向偏差数据的方差数据大于或等于方差阈值的可移动设备的数量,作为统计结果,若每个前置节点所对应的统计结果与途径该前置节点的可移动设备的总数量之间的第三比值均大于或等于第三比值阈值,则可以确定该聚类区域为定位地图中待更新的定位区域。其中,第三比值阈值可以根据需求设置,为了确保判断结果的准确性,可以设置较高的第三比值阈值,例如第三比值阈值可以设置为90%。其中,kd树(k-dimension tree)是一种对k维空间中的实例点进行存储以便对其进行快速检索的树形数据结构。kd树是一种二叉树,表示对k维空间的一个划分,构造kd树相当于不断地用垂直于坐标轴的超平面将k维空间切分,构成一系列的k维超矩形区域。kd树的每个结点对应于一个k维超矩形区域。利用kd树可以省去对大部分数据点的搜索,从而减少搜索的计算量。
[0086]
需要说明的是,为了确保确定的定位区域确实是需要更新的区域,还可以对定位区域中的需要更新全局位姿信息的前置节点所占比例进行判定,在定位区域中待更新前置节点在所有前置节点中的所占比例大于或等于第四比值阈值时,确定该定位区域为定位地图中待更新的定位区域。例如,一个聚类区域中的前置节点几乎都产生了横向偏差(如需要更新全局位姿信息的前置节点达到90%),且该聚类区域内每个需要更新全局位姿信息的前置节点处每个可移动设备的横向偏差数据的方差都(或90%)大于方差阈值,则该聚类区域的定位地图可能需要更新,将该聚类区域确定为定位地图中待更新的定位区域。
[0087]
通过上述方式来确定定位地图中待更新的定位区域,将阈值设置的较高,这样评判的意义在于,更相信前置节点的变化误差大一些,定位地图需要更新的概率更低,从而通过更新拓扑地图就可以解决横向偏差的问题时就无需对定位地图进行更新。
[0088]
步骤306,根据每个所述可移动设备的横向偏差数据的方差数据,确定目标可移动设备,所述目标可移动设备的帧位姿和帧数据用于作为更新定位地图的依据。
[0089]
通常一个可移动设备构建的定位地图平滑性比多个可移动设备构建并融合拼接的定位地图的平滑性要高,因此本技术实施例基于可移动设备的横向偏差数据的方差数据,来确定安装精度较高的可移动设备,并将该可移动设备确定为目标可移动设备,进而使用目标可移动设备来构建地图,以减小所构建的地图的误差。
[0090]
在本技术的一个实施例中,所述根据每个所述可移动设备的横向偏差数据的方差数据,确定目标可移动设备,包括:将各个所述可移动设备中横向偏差数据的方差数据最小的可移动设备确定为所述目标可移动设备。
[0091]
比较各可移动设备的横向偏差数据的方差数据,选取方差数据最小的可移动设备,将该可移动设备确定为目标可移动设备,这样确定的目标可移动设备精度更高,所构建的定位地图误差更小。
[0092]
步骤307,获取所述目标可移动设备在所述定位区域内多帧的帧位姿和帧数据,并获取所述目标可移动设备在所述多帧之前且与所述多帧相邻的目标数量帧的帧位姿和帧
数据以及所述目标可移动设备在所述多帧之后且与所述多帧相邻的目标数量帧的帧位姿和帧数据。
[0093]
定位地图可以分为栅格地图和拓扑地图,为了统一叙述,采用帧位姿和帧数据的方式进行地图更新,其核心为如何确保更新区域帧位姿的准确性,本技术实施例采用图优化的方式进行。
[0094]
目标可移动设备在定位区域内的多帧的帧位姿是需要优化的帧位姿,选择该定位区域边界的目标数量帧作为与原地图的焊接区,获取目标可移动设备在定位区域内多帧的帧位姿和帧数据,并获取目标可移动设备在多帧之前且与多帧相邻的目标数量帧的帧位姿和帧数据,以及目标可移动设备在多帧之后且与多帧相邻的目标数量帧的帧位姿和帧数据。
[0095]
步骤308,根据所述多帧的帧位姿和帧数据、在所述多帧之前目标数量帧的帧位姿和帧数据、以及在所述多帧之后目标数量帧的帧位姿和帧数据,对所述多帧的帧位姿进行优化,得到所述多帧优化后的帧位姿。
[0096]
根据多帧的帧位姿和帧数据、在多帧之前目标数量帧的帧位姿和帧数据、以及在多帧之后目标数量帧的帧位姿和帧数据,建立因子图,并基于因子图来进行帧位姿的优化,在优化过程中采用非线性最小二乘来确定多帧优化后的帧位姿。
[0097]
图4a是本技术实施例中定位地图中待更新的定位区域的示例图,图4b是对图4a所示定位区域进行帧位姿优化的因子图的示例图,如图4a所示,区域6为待更新的定位区域,区域7为焊接区,如图4b所示,五边形8表示目标可移动设备在焊接区的帧位姿,五边形9表示目标可移动设备在定位区域的帧位姿,横线10表示地图的特征观测约束,横线11表示定位区域中多帧的帧间约束,各帧位姿之间的连线12表示里程计帧间约束,三角形13表示地图信息。其中,对于视觉slam和激光slam,地图信息使用不同的数据进行表示,例如对于视觉slam,定位地图采用特征形式,这时地图信息可以使用从帧数据中提取的视觉特征来表示,对于激光slam,定位地图的格式如果有特征时,地图信息可以使用从帧数据中提取的激光特征来表示。
[0098]
在基于因子图进行帧位姿的优化时,对于激光slam中的2d激光,可以采用csm(correlative scan matching,相关性扫描匹配)和基于梯度优化的方法(ceres)来进行优化。csm可以简单地理解为暴力搜索,即将每一个帧(激光)数据与子图(定位区域)里的每一个帧位姿进行匹配,直到找到最优位姿。基于梯度优化的方法的原理是构造误差函数,使其最小化,精度较高。在基于因子图进行帧位姿的优化时,对于激光slam的3d激光,可以采用icp(iterative closest point,迭代最近点)来进行优化。
[0099]
在基于因子图进行帧位姿的优化时,对于视觉slam可以采用视觉重投影误差来进行优化。视觉重投影误差是一个特征点在归一化相机坐标系下的估计值与观测值的差。
[0100]
步骤309,将所述多帧的帧数据和优化后的帧位姿投影到所述定位地图中,得到更新后的定位地图。
[0101]
在对多帧的帧位姿进行优化后,将多帧中每帧优化后的帧位姿和原来的帧数据投影到定位地图中,完成定位地图的更新,得到更新后的定位地图。得到更新后的定位地图后,可以提示操作员检查,并接收操作员手动给出的确定更新指令或者拒绝更新指令,在接收到确定更新指令时,应用更新后的定位地图。
[0102]
在完成地图更新后,将所记录的横向偏差数据清除,即清除可移动设备在每个前置节点所产生横向偏差数据的次数、均值和方差,并清除每个可移动设备在同一前置节点所产生横向偏差的次数、均值和方差,也就是清除map《robot_id,shard_ptr1《msgs》》和map《node_id,shard_ptr2《msgs》》。
[0103]
本实施例提供的地图更新方法,在拓扑地图更新完成后,还可以对定位地图中需要更新的定位区域进行更新,根据每个可移动设备的横向偏差数据的方差数据,确定精度较高的可移动设备为目标可移动设备,根据目标可移动设备在定位区域内多帧的帧位姿和帧数据、在多帧之前且与多帧相邻的目标数量帧的帧位姿和帧数据、以及在多帧之后且与多帧相邻的目标数量帧的帧位姿和帧数据,对多帧的帧位姿进行优化,得到多帧优化后的帧位姿,将多帧的帧数据和优化后的帧位姿投影到定位地图中,得到更新后的定位地图,实现了基于目标可移动设备的轨迹来对定位地图的自动更新。
[0104]
本技术实施例采用服务器检测、地图更新的方案,首先判断前置节点是否有横向偏差数据,并计算其横向偏差数据的均值和方差,通过多个可移动设备多次在前置节点上报的横向偏差(或服务器计算得到的横向偏差)是否大于偏差阈值判断是否有横向偏差,并计算其均值和协方差;其次判断拓扑地图、定位地图是否需更新、可移动设备自身是否有偏差,基于是否有横向偏差数据判断该前置节点是否需要更新,基于横向偏差数据的方差数据及临近需更新全局位姿信息的前置节点的数量共同判断该区域地图是否需重建;更新拓扑地图和定位地图,由于目标节点与基准点的相对关系及前置节点与目标节点的相对关系固定,因此可根据当前位姿以及与基准点的关系更新前置节点和目标节点的位姿,对于定位地图,采用基于轨迹更新的方式选择更新。最后清除缓存继续监测,待地图更新完成后,清除更新节点(所更新的前置节点)的缓存信息,并重新开始监测。本技术实施例既能解决打点误差大的问题,又能解决环境变化导致前置节点横向偏差的问题,同时可以合理地评估高精打点(即可以实时的对前置节点的横向偏差数据进行评估,并更新),降低后续的维护成本,提高可移动设备任务的高效性;通过本技术实施例的方案,实施人员甚至可以不用现场打点,直接在地图上打完初始点,然后基于本技术实施例所提供的方案将所有点位调整整齐,降低了实施难度,提高实施效率;通过服务器基于多车的统计方案可以除去单车的差异性问题。
[0105]
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术实施例并不受所描述的动作顺序的限制,因为依据本技术实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本技术实施例所必须的。
[0106]
图5是本技术实施例提供的一种地图更新装置的结构框图,如图5所示,该地图更新装置可以包括:
[0107]
横向偏差获取模块501,用于获取各个可移动设备分别在拓扑地图中每个前置节点的横向偏差数据,所述前置节点是在所述拓扑地图中与目标节点相邻且位于目标节点之前的节点,所述拓扑地图表征可移动设备的运行路径,所述横向偏差数据是可移动设备在前置节点的位姿信息与基准位姿信息之间的横向偏差;
[0108]
更新确定模块502,用于根据各个可移动设备在同一前置节点所对应所述横向偏
差数据的统计信息,确定是否对所述前置节点以及所述前置节点所对应的目标节点的全局位姿信息进行更新;
[0109]
位姿信息确定模块503,用于若确定对所述前置节点以及目标节点的全局位姿信息进行更新,根据每个所述可移动设备在所述前置节点的位姿信息,确定所述前置节点的目标全局位姿信息和所述目标节点的目标全局位姿信息,所述前置节点的全局位姿信息表征可移动设备在所述前置节点的全局基准位姿信息,所述目标节点的全局位姿信息表征可移动设备在所述目标节点的全局基准位姿信息;
[0110]
拓扑地图更新模块504,用于在所述拓扑地图中,将所述前置节点的全局位姿信息更新为所述目标全局位姿信息,并将所述目标节点的全局位姿信息更新为所述目标全局位姿信息。
[0111]
可选的,所述装置还包括:
[0112]
针对每个所述前置节点,确定在所述前置点节处所述横向偏差数据大于第一偏差阈值的可移动设备的统计数量,作为所述前置节点所对应的所述统计信息。
[0113]
可选的,所述更新确定模块包括:
[0114]
第一比值确定单元,用于确定所述统计数量与所述前置节点所对应可移动设备的总数量之间的第一比值;
[0115]
更新确定单元,用于若所述第一比值大于或等于第一比值阈值,确定对所述前置节点以及所述前置节点所对应的目标节点的全局位姿信息进行更新。
[0116]
可选的,所述位姿信息确定模块包括:
[0117]
位姿信息确定单元,用于针对每个所述可移动设备,根据所述目标节点相对于基准点的位姿信息、所述前置节点相对于所述目标节点的位姿信息、所述可移动设备的全局位姿信息以及所述基准点相对于所述可移动设备的位姿信息,确定所述目标节点的全局位姿信息以及所述前置节点的全局位姿信息,所述基准点是确定可移动设备的位姿信息的坐标原点;
[0118]
均值计算单元,用于对各个所述可移动设备下所确定的目标节点的全局位姿信息求取均值,得到所述目标节点的目标全局位姿信息,以及,对各个所述可移动设备下所确定的前置节点的全局位姿信息求取均值,得到所述前置节点的目标全局位姿信息。
[0119]
可选的,所述均值计算单元具体用于:
[0120]
去除各个所述可移动设备下所确定的目标节点的全局位姿信息中的最大全局位姿信息和最小全局位姿信息,并将剩余的全局位姿信息的均值确定为所述目标节点的目标全局位姿信息;
[0121]
去除各个所述可移动设备下所确定的前置节点的全局位姿信息中的最大全局位姿信息和最小全局位姿信息,并将剩余的全局位姿信息的均值确定为所述前置节点的目标全局位姿信息。
[0122]
可选的,所述装置还包括:
[0123]
第二统计模块,用于针对每个所述可移动设备,统计出现所述横向偏差数据大于第二偏差阈值的前置节点的数量;
[0124]
提示信息生成模块,用于若统计得到的前置节点的数量与所述前置点的总数量之间的第二比值大于第二比值阈值,生成所述可移动设备的检修提示信息。
[0125]
可选的,所述装置还包括:
[0126]
定位区域获取模块,用于获取定位地图中待更新的定位区域;
[0127]
目标设备确定模块,用于根据每个所述可移动设备的横向偏差数据的方差数据,确定目标可移动设备,所述目标可移动设备的帧位姿和帧数据用于作为更新定位地图的依据;
[0128]
位姿数据获取模块,用于获取所述目标可移动设备在所述定位区域内多帧的帧位姿和帧数据,并获取所述目标可移动设备在所述多帧之前且与所述多帧相邻的目标数量帧的帧位姿和帧数据以及所述目标可移动设备在所述多帧之后且与所述多帧相邻的目标数量帧的帧位姿和帧数据;
[0129]
帧位姿优化模块,用于根据所述多帧的帧位姿和帧数据、在所述多帧之前目标数量帧的帧位姿和帧数据、以及在所述多帧之后目标数量帧的帧位姿和帧数据,对所述多帧的帧位姿进行优化,得到所述多帧优化后的帧位姿;
[0130]
定位地图更新模块,用于将所述多帧的帧数据和优化后的帧位姿投影到所述定位地图中,得到更新后的定位地图。
[0131]
可选的,所述定位区域获取模块包括:
[0132]
区域聚类单元,用于在存在多个需要更新全局位姿信息的前置节点时,对多个所述前置节点进行聚类,得到至少一个聚类区域;
[0133]
第三统计单元,用于针对每个所述聚类区域,分别确定在所述聚类区域内每个前置节点处横向偏差数据的方差数据大于或等于方差阈值的可移动设备的数量,作为统计结果;
[0134]
定位区域确定单元,用于若每个所述前置节点所对应的统计结果与所述多个可移动设备的总数量之间的第三比值均大于或等于第三比值阈值,确定所述聚类区域为所述定位地图中待更新的定位区域。
[0135]
可选的,所述横向偏差获取模块包括:
[0136]
横向偏差接收单元,用于接收各个所述可移动设备上报的在每个所述前置节点的横向偏差数据;或者
[0137]
横向偏差确定单元,用于接收各个所述可移动设备上报的可移动设备相对于基准点的位姿信息,并根据所述位姿信息,确定可移动设备在所述基准点所对应前置节点的横向偏差数据,所述基准点是确定所述位姿信息的坐标原点。
[0138]
本技术实施例提供的装置中各个模块、单元所对应功能的具体实现过程可参考图1-图4所示方法实施例,此处不再赘述装置部分各个模块、单元所对应功能的具体实现过程。
[0139]
本实施例提供的地图更新装置,通过获取各个可移动设备分别在拓扑地图中每个前置节点的横向偏差数据,根据各个可移动设备在同一前置节点所对应横向偏差数据的统计信息,确定是否对前置节点以及前置节点所对应的目标节点的全局位姿信息进行更新,若确定对前置节点以及目标节点的全局位姿信息进行更新,根据每个可移动设备在前置节点的位姿信息,确定前置节点的目标全局位姿信息和目标节点的目标全局位姿信息,在拓扑地图中,将前置节点的全局位姿信息更新为前置节点的目标全局位姿信息,并将目标节点的全局位姿信息更新为目标节点的目标全局位姿信息,由于可以基于可移动设备途经前
置解点的横向偏差数据来确定需要更新全局位姿信息的前置节点和目标节点,进而对前置节点和目标节点的全局位姿信息进行更新,实现了自动对拓扑地图进行更新,而无需重新打点,可以降低维护成本,提高可移动设备任务的高效性。
[0140]
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0141]
图6是本技术实施例提供的一种电子设备的结构框图,如图6所示,该电子设备600可以包括一个或多个处理器610以及与处理器610连接的一个或多个存储器620。电子设备600还可以包括输入接口630和输出接口640,用于与另一装置或系统进行通信。被处理器610执行的程序代码可存储在存储器620中。
[0142]
电子设备600中的处理器610调用存储在存储器620的程序代码,以执行上述实施例中的地图更新方法。
[0143]
根据本技术的一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质包括但不限于磁盘存储器、cd-rom、光学存储器等,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现前述实施例所述的地图更新方法。
[0144]
根据本技术的一个实施例,还提供了一种计算机程序产品,包括计算机程序或计算机指令,所述计算机程序或计算机指令被处理器执行时实现上述实施例所述的地图更新方法。
[0145]
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
[0146]
本领域内的技术人员应明白,本技术实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本技术实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0147]
本技术实施例是参照根据本技术实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0148]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0149]
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0150]
尽管已描述了本技术实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本技术实施例范围的所有变更和修改。
[0151]
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
[0152]
以上对本技术所提供的一种地图更新方法、电子设备及存储介质,进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的一般技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。

技术特征:
1.一种地图更新方法,其特征在于,包括:获取各个可移动设备分别在拓扑地图中每个前置节点的横向偏差数据,所述前置节点是在所述拓扑地图中与目标节点相邻且位于目标节点之前的节点,所述拓扑地图表征可移动设备的运行路径,所述横向偏差数据是可移动设备在前置节点的位姿信息与基准位姿信息之间的横向偏差;根据各个可移动设备在同一前置节点所对应所述横向偏差数据的统计信息,确定是否对所述前置节点以及所述前置节点所对应的目标节点的全局位姿信息进行更新;若确定对所述前置节点以及目标节点的全局位姿信息进行更新,根据每个所述可移动设备在所述前置节点的位姿信息,确定所述前置节点的目标全局位姿信息和所述目标节点的目标全局位姿信息,所述前置节点的全局位姿信息表征可移动设备在所述前置节点的全局基准位姿信息,所述目标节点的全局位姿信息表征可移动设备在所述目标节点的全局基准位姿信息;在所述拓扑地图中,将所述前置节点的全局位姿信息更新为所述目标全局位姿信息,并将所述目标节点的全局位姿信息更新为所述目标全局位姿信息。2.根据权利要求1所述的方法,其特征在于,在所述根据各个可移动设备在同一前置节点所对应所述横向偏差数据的统计信息,确定是否对所述前置节点以及所述前置节点所对应的目标节点的全局位姿信息进行更新之前,还包括:针对每个所述前置节点,确定在所述前置点节处所述横向偏差数据大于第一偏差阈值的可移动设备的统计数量,作为所述前置节点所对应的所述统计信息。3.根据权利要求2所述的方法,其特征在于,所述根据各个可移动设备在同一前置节点所对应所述横向偏差数据的统计信息,确定是否对所述前置节点以及所述前置节点所对应的目标节点的全局位姿信息进行更新,包括:确定所述统计数量与所述前置节点所对应可移动设备的总数量之间的第一比值;若所述第一比值大于或等于第一比值阈值,确定对所述前置节点以及所述前置节点所对应的目标节点的全局位姿信息进行更新。4.根据权利要求1-3任一项所述的方法,其特征在于,所述根据每个所述可移动设备在所述前置节点的位姿信息,确定所述前置节点的目标全局位姿信息和所述目标节点的目标全局位姿信息,包括:针对每个所述可移动设备,根据所述目标节点相对于基准点的位姿信息、所述前置节点相对于所述目标节点的位姿信息、所述可移动设备的全局位姿信息以及所述基准点相对于所述可移动设备的位姿信息,确定所述目标节点的全局位姿信息以及所述前置节点的全局位姿信息,所述基准点是确定可移动设备的位姿信息的坐标原点;对各个所述可移动设备下所确定的目标节点的全局位姿信息求取均值,得到所述目标节点的目标全局位姿信息,以及,对各个所述可移动设备下所确定的前置节点的全局位姿信息求取均值,得到所述前置节点的目标全局位姿信息。5.根据权利要求4所述的方法,其特征在于,所述对各个所述可移动设备下所确定的目标节点的全局位姿信息求取均值,得到所述目标节点的目标全局位姿信息,包括:去除各个所述可移动设备下所确定的目标节点的全局位姿信息中的最大全局位姿信息和最小全局位姿信息,并将剩余的全局位姿信息的均值确定为所述目标节点的目标全局
位姿信息;所述对各个所述可移动设备下所确定的前置节点的全局位姿信息求取均值,得到所述前置节点的目标全局位姿信息,包括:去除各个所述可移动设备下所确定的前置节点的全局位姿信息中的最大全局位姿信息和最小全局位姿信息,并将剩余的全局位姿信息的均值确定为所述前置节点的目标全局位姿信息。6.根据权利要求1-3任一项所述的方法,其特征在于,还包括:针对每个所述可移动设备,统计出现所述横向偏差数据大于第二偏差阈值的前置节点的数量;若统计得到的前置节点的数量与所述前置节点的总数量之间的第二比值大于第二比值阈值,生成所述可移动设备的检修提示信息。7.根据权利要求1-3任一项所述的方法,其特征在于,还包括:获取定位地图中待更新的定位区域;根据每个所述可移动设备的横向偏差数据的方差数据,确定目标可移动设备,所述目标可移动设备的帧位姿和帧数据用于作为更新定位地图的依据;获取所述目标可移动设备在所述定位区域内多帧的帧位姿和帧数据,并获取所述目标可移动设备在所述多帧之前且与所述多帧相邻的目标数量帧的帧位姿和帧数据以及所述目标可移动设备在所述多帧之后且与所述多帧相邻的目标数量帧的帧位姿和帧数据;根据所述多帧的帧位姿和帧数据、在所述多帧之前目标数量帧的帧位姿和帧数据、以及在所述多帧之后目标数量帧的帧位姿和帧数据,对所述多帧的帧位姿进行优化,得到所述多帧优化后的帧位姿;将所述多帧的帧数据和优化后的帧位姿投影到所述定位地图中,得到更新后的定位地图。8.根据权利要求7所述的方法,其特征在于,所述获取定位地图中待更新的定位区域,包括:在存在多个需要更新全局位姿信息的前置节点时,对多个所述前置节点进行聚类,得到至少一个聚类区域;针对每个所述聚类区域,分别确定在所述聚类区域内每个前置节点处横向偏差数据的方差数据大于或等于方差阈值的可移动设备的数量,作为统计结果;若每个所述前置节点所对应的统计结果与所述多个可移动设备的总数量之间的第三比值均大于或等于第三比值阈值,确定所述聚类区域为所述定位地图中待更新的定位区域。9.根据权利要求1-3任一项所述的方法,其特征在于,所述获取各个可移动设备分别在拓扑地图中每个前置节点的横向偏差数据,包括:接收各所述可移动设备上报的在每个所述前置节点的横向偏差数据;或者接收各个所述可移动设备上报的可移动设备相对于基准点的位姿信息,并根据所述位姿信息,确定可移动设备在所述基准点所对应前置节点的横向偏差数据,所述基准点是确定所述位姿信息的坐标原点。10.一种电子设备,其特征在于,包括:处理器、存储器及存储在所述存储器上并可在所
述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1-9任一项所述的地图更新方法。11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-9任一项所述的地图更新方法。12.一种计算机程序产品,其特征在于,包括计算机程序或计算机指令,所述计算机程序或计算机指令被处理器执行时实现权利要求1至9任一项所述的地图更新方法。

技术总结
本申请实施例提供了一种地图更新方法、电子设备及存储介质,该方法包括:获取各个可移动设备分别在拓扑地图中每个前置节点的横向偏差数据;根据各个可移动设备在同一前置节点所对应横向偏差数据的统计信息,确定是否对所述前置节点以及所述前置节点所对应的目标节点的全局位姿信息进行更新;若确定对所述前置节点以及目标节点的全局位姿信息进行更新,根据每个可移动设备在前置节点的位姿信息,确定前置节点的目标全局位姿信息和目标节点的目标全局位姿信息;在拓扑地图中,将前置节点的全局位姿信息更新为目标全局位姿信息,并将目标节点的全局位姿信息更新为目标全局位姿信息。本申请实施例实现了自动对拓扑地图进行更新,可以降低维护成本。可以降低维护成本。可以降低维护成本。


技术研发人员:马云飞 沈毅
受保护的技术使用者:北京旷视机器人技术有限公司
技术研发日:2023.03.29
技术公布日:2023/7/22
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐