CN113670293A - 地图构建方法及装置 - Google Patents
地图构建方法及装置 Download PDFInfo
- Publication number
- CN113670293A CN113670293A CN202110920287.XA CN202110920287A CN113670293A CN 113670293 A CN113670293 A CN 113670293A CN 202110920287 A CN202110920287 A CN 202110920287A CN 113670293 A CN113670293 A CN 113670293A
- Authority
- CN
- China
- Prior art keywords
- target
- nodes
- storage space
- node
- target data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000010276 construction Methods 0.000 title claims abstract description 17
- 238000000034 method Methods 0.000 claims abstract description 52
- 238000012545 processing Methods 0.000 claims description 15
- 238000001514 detection method Methods 0.000 claims description 13
- 238000012546 transfer Methods 0.000 claims description 10
- 230000004888 barrier function Effects 0.000 claims description 4
- 238000013507 mapping Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 abstract description 9
- 230000008569 process Effects 0.000 description 15
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000012549 training Methods 0.000 description 6
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000007787 long-term memory Effects 0.000 description 3
- 230000003936 working memory Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000005034 decoration Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000006403 short-term memory Effects 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000015654 memory Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3863—Structures of map data
- G01C21/387—Organisation of map data, e.g. version management or database structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Automation & Control Theory (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Navigation (AREA)
Abstract
本发明公开了一种地图构建方法及装置。其中,该方法包括:获取目标设备在目标区域中移动时在不同时刻采集的目标数据;将根据目标数据构建的多个节点存储至第一存储空间中,其中,节点指示同一时刻采集的目标数据;根据预设规则从多个节点中选择目标节点转移至第二存储空间;根据第一存储空间的节点和第二存储空间的节点构建目标区域的地图。本发明解决了由于地图会随着场景和运行时间的增大而增长造成的计算量增加的技术问题。
Description
技术领域
本发明涉及机器导航领域,具体而言,涉及一种地图构建方法及装置。
背景技术
目前slam算法是常见的解决机器人在陌生环境中移动并绘制地图的算法,但是大多数的slam算法,其地图会随着场景和运行时间的增大而增长,从而导致计算量增加,影响算法的实时性。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种地图构建方法及装置,以至少解决由于地图会随着场景和运行时间的增大而增长造成的计算量增加的技术问题。
根据本发明实施例的一个方面,提供了一种地图构建方法,包括:获取目标设备在目标区域中移动时在不同时刻采集的目标数据;将根据目标数据构建的多个节点存储至第一存储空间中,其中,节点指示同一时刻采集的目标数据;根据预设规则从多个节点中选择目标节点转移至第二存储空间;根据第一存储空间的节点和第二存储空间的节点构建目标区域的地图。
可选地,多个节点根据以下方式构建:根据初始时刻采集的目标数据构建首个节点,按时序遍历各个时刻采集的目标数据;在当前遍历的目标数据与上一节点指示的目标数据之间的相似度小于或等于第一预设相似度阈值的情况下,根据当前遍历的目标数据构建对应的节点,并与上一节点建立相邻连接关系。
可选地,其特征在于,根据以下方式计算当前遍历的目标数据与上一节点指示的目标数据之间的相似度:分别获取当前时刻目标数据和上一节点中的目标数据的特征点,以及与特征点对应的描述子;依据特征点和描述子,计算当前时刻目标数据和上一节点中的目标数据的词频-逆文本频率TF-IDF相似度。
可选地,方法还包括;将生成的节点存储至第三存储空间中;在第三存储空间中的节点数量大于第二预设数量的情况下,将第三存储空间中最早构建的节点存放到第一存储空间中,以使第三存储空间中的节点数量等于第二预设阈值。
可选地,方法还包括:为构建的多个节点确定权重值;其中,权重值用于表征节点的重要程度;相应的,根据预设规则从多个节点中选择目标节点转移至第二存储空间包括:将多个节点中权重值最低的节点作为目标节点转移至第二存储空间。
可选地,为构建的多个节点确定权重值包括:将多个节点中首个节点的权重值设置为预设初始值;在当前遍历的目标数据与上一节点指示的目标数据之间的相似度小于或等于第一预设相似度阈值的情况下,将根据当前遍历的目标数据构建对应的节点的权重值设置为预设初始值;在当前遍历的目标数据与上一节点指示的目标数据之间的相似度小于第一预设相似度阈值的情况下,增加上一节点的权重值。
可选地,根据预设规则从多个节点中选择目标节点转移至第二存储空间包括:将多个节点中最早构建的节点作为目标节点转移至第二存储空间。
可选地,根据第一存储空间的节点和第二存储空间的节点构建目标区域的地图包括:根据第一存储空间的节点和第二存储空间的节点分别对应的目标数据,确定目标区域的点云数据;对点云数据进行分割,得到目标区域中的障碍物区域和可通行区域;以及依据障碍物区域和可通行区域构建目标区域的导航地图。
可选地,方法还包括:依据第一存储空间中存放的节点对目标设备进行闭环检测,其中,闭环检测通过以下方式实现:计算当前时刻目标数据与第一存储空间中存放的各个节点的相似度,当多个相似度中的最大相似度大于第二预设相似度阈值时,确定最大相似度对应的节点为闭环节点;比较当前时刻目标数据中的目标设备位姿数据和闭环节点中的目标设备位姿数据,得到相对位姿数据,并比较相对位姿数据和预设位姿阈值;当相对位姿数据不大于预设位姿阈值时,依据相对位姿数据校正当前时刻目标数据中的目标设备位姿数据;依据校正后的目标设备位姿数据,对目标区域的地图进行校正。
可选地,依据相对位姿数据校正当前时刻目标数据中的目标设备位姿数据之后,方法还包括:将第二存储空间中与闭环节点相邻的节点存储到第一存储空间,并在检测到新的闭环节点后将上述从第二存储空间转移到第一存储空间的节点再次转移到第一存储空间中;依据第一存储空间中的节点,构建目标区域的导航地图。
可选地,根据预设规则从多个节点中选择目标节点转移至第二存储空间,包括:在目标设备处理目标数据时所消耗的时间大于预设时间阈值的情况下,从多个节点中选择目标节点转移至第二存储空间,直到消耗的时间不大于预设时间阈值;或,在第一存储空间中存放的节点数量大于第二预设数量的情况下,从多个节点中选择目标节点转移至第二存储空间,直到第一存储空间中存放的节点数量等于第二预设数量。
根据本发明实施例的另一方面,还提供了一种地图构建装置,包括:获取模块,用于获取目标设备在目标区域中移动时在不同时刻采集的目标数据;第一处理模块,用于将根据目标数据构建的多个节点存储至第一存储空间中,其中,节点指示同一时刻采集的目标数据;第二处理模块,用于根据预设规则从多个节点中选择目标节点转移至第二存储空间;构建模块,用于根据第一存储空间的节点和第二存储空间的节点构建目标区域的地图。
根据本发明实施例的另一方面,还提供了一种非易失性存储介质,非易失性存储介质包括存储的程序,在程序运行时控制非易失性存储介质所在设备执行地图构建方法。
根据本发明实施例的另一方面,还提供了一种处理器,处理器用于运行程序,程序运行时执行地图构建方法。
在本发明实施例中,采用获取目标设备在目标区域中移动时在不同时刻采集的目标数据;依据目标数据确定多获取目标设备在目标区域中移动时在不同时刻采集的目标数据;将根据目标数据构建的多个节点存储至第一存储空间中,其中,节点指示同一时刻采集的目标数据;根据预设规则从多个节点中选择目标节点转移至第二存储空间;根据第一存储空间的节点和第二存储空间的节点构建目标区域的地图的方式,通过控制节点数量,达到了控制工作内存中的数据量的目的,从而实现了减少计算量的技术效果,进而解决了由于地图会随着场景和运行时间的增大而增长造成的计算量增加的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种地图构建方法的流程示意图;
图2是根据本发明实施例的一种节点处理流程示意图;
图3是根据本发明实施例的一种地图构建装置的结构示意图。
具体实施方式
目前常见的移动机器人有轮式机器人,履带式机器人和足式机器人,而在这三中类型的移动机器人中,足式机器人中的四足机器人相对而言应用范围更广泛一些。目前四足机器人的驱动方式包括液压驱动,气动驱动和电动驱动,可以在松软地面或崎岖不平的地形上行驶,能够在非结构化和恶劣的环境中工作。
对于移动机器人而言,如何在一个陌生的环境中确定自身的位置并绘制地图,从而实现在陌生环境中的导航是当今研究的热点。目前常见的解决方案是通过slam算法来解决。但是目前大部分移动机器人在采用slam算法时,随着移动机器人在目标区域中移动时间的增加,机器人的工作内存中存放的数据会越来越多,导致机器人的计算量增大,影响了机器人的处理速度。
为了解决上述问题,本申请中提出了一种地图构建方法,解决了由于地图会随着场景和运行时间的增大而增长造成的计算量增加的技术问题。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本发明实施例,提供了一种地图构建方法的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明实施例的地图构建方法,如图1所示,该方法包括如下步骤:
步骤S102,获取目标设备在目标区域中移动时在不同时刻采集的目标数据;
在本申请的一些实施例中,上述目标数据为目标设备在运动过程中采集到的体现自身运动状况和周边环境的数据,可以包括目标设备自身的位姿数据,以及目标设备周边环境的彩色图像数据,深度图像数据。其中,目标设备周边环境的彩色图像数据和深度图像数据可用于提取周边环境的3D点,生成周边环境的3D点云并进行分割,从而生成目标区域中的障碍物区域和可通行区域,并构建地图。其中,上述可通行区域是由可通行栅格组成的。
具体地,位姿数据为表示目标设备的姿态数据,如目标设备的关节位置等,也可以是表示目标设备位置的数据,包括目标设备的横纵坐标值,以及目标设备的航向角,横滚角和俯仰角。其中,上述航向角,横滚角和俯仰角可以通过如下方式确定:定义目标设备的右、前、上三个方向构成坐标系,这样,绕向前的轴旋转的角度就是横滚角的角度;绕向右的轴旋转的角度就是俯仰角的角度;绕向上的轴旋转的角度就是航向角的角度。
在本申请的一些实施例中,上述目标设备自身的位姿数据可以通过目标设备上集成的里程计来获取,其中,上述目标设备可以为四足机器人等可自行移动的设备。
在本申请的一些实施例中,上述彩色图像数据可以是RGB三通道彩色图像数据。
步骤S104,将根据所述目标数据构建的多个节点存储至第一存储空间中,其中,所述节点指示同一时刻采集的目标数据;
在本申请的一些实施例中,上述多个节点可以根据以下方式构建:根据初始时刻采集的目标数据构建首个节点,按时序遍历各个时刻采集的目标数据;在当前遍历的目标数据与上一节点指示的目标数据之间的相似度小于或等于第一预设相似度阈值的情况下,根据当前遍历的目标数据构建对应的节点,并与上一节点建立相邻连接关系。
具体地,根据以下方式计算当前遍历的目标数据与上一节点指示的目标数据之间的相似度:分别获取当前时刻目标数据和上一节点中的目标数据的特征点,以及与特征点对应的描述子;依据特征点和描述子,计算当前时刻目标数据和上一节点中的目标数据的词频-逆文本频率TF-IDF相似度。
在本申请的一些实施例中,在创建节点时还会为构建的多个节点确定权重值;其中,权重值用于表征节点的重要程度;相应的,根据预设规则从多个节点中选择目标节点转移至第二存储空间包括:将多个节点中权重值最低的节点作为目标节点转移至第二存储空间。
具体地,为构建的多个节点确定权重值包括:将多个节点中首个节点的权重值设置为预设初始值;在当前遍历的目标数据与上一节点指示的目标数据之间的相似度小于或等于第一预设相似度阈值的情况下,将根据当前遍历的目标数据构建对应的节点的权重值设置为预设初始值;在当前遍历的目标数据与上一节点指示的目标数据之间的相似度小于第一预设相似度阈值的情况下,增加上一节点的权重值。
在本申请的一些实施例中,依据目标数据确定多个节点的具体方式为:当目标设备开始在目标区域中移动时,确定目标设备在移动过程中确定的首个节点,并设置首个节点的权重值为预设初始值;以预设时间周期,周期性获取目标数据,并在每次获取目标数据后,确定当前时刻目标数据和上一节点中的目标数据的相似度;当相似度不大于第一预设相似度阈值时,依据当前时刻目标数据确定新节点,确定新节点与上一节点之间为相邻关系,并设置新节点的权重值为预设初始值;当相似度大于第一预设相似度阈值时,增加上一节点的权重值。
在本申请的一些实施例中,在确定两个节点为相邻节点后,还会计算两个节点之间存储的位姿数据的相对位姿数据(具体计算方式可以是计算两个节点中存储的位姿数据的差值等,为现有技术),相对位姿数据可用于对地图进行优化,具体而言是对构建地图时所使用的节点中的位姿数据进行优化。
在本申请的一些实施例中,确定当前时刻目标数据和上一节点中的目标数据的相似度的方法包括:分别获取当前时刻目标数据和上一节点中的目标数据的特征点,以及与特征点对应的描述子;依据特征点和描述子,计算当前时刻目标数据和上一节点中的目标数据的词频-逆文本频率TF-IDF相似度。
具体地,依据特征点和描述子,计算当前时刻目标数据和上一节点中的目标数据的词频-逆文本频率TF-IDF相似度之前,还需要把不同的特征归类为不同的单词。为了能够把特征归类为单词,还需要训练一个字典。所谓的字典就是包含了所有可能的单词的集合,为了提高通用性,需要使用大量的数据训练。其中,字典的训练过程也可以看做是一个聚类的过程,可以采用K聚类等聚类方法对训练数据进行聚类。
在本申请的一些实施例中,上述词频-逆文本频率TF-IDF是一种统计方法,用以评估某个字词对于一个文件集或一个语料库中的其中一份文件的重要程度。其中字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。TF-IDF的主要思想是:如果某个词或短语在一篇文章中出现的频率TF高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。
TF-IDF相似度的计算方法为实TF*IDF,其中TF为词频(Term Frequency),IDF为逆向文件频率(Inverse Document Frequency)。具体地,TF表示词条在某个文档中出现的频率。而IDF则用来体现某个词条被多少文件包含,若包含某个词条的文件越少,则说明该词条的区分度越好,对应的IDF就越大。
在本申请的一些实施例中,上述特征点为图像灰度值发生剧烈变化的点或者在图像边缘上曲率较大的点(即两个边缘的交点),而描述子则是描述特征点的朝向和特征点周围的像素信息。
具体地,特征点是那含有丰富局部信息的点,经常出现在图像中拐角、纹理剧烈变化等地方。特征点具有“尺度不变性”,也就是说其在不同图片中能够被识别出来。
在本申请的一些实施例中,可以通过描述子来确定两个特征点是否是同一个特征点。一般描述子的构造为选择以特征点为中心,预设距离为半径的圆,并对圆内的像素点进行计算得到一个向量。上述向量可以反映特征点周围像素的特点,即可以描述当前特征点的周围特性。因为相同的特征点周围是相似的,所以可以用描述子来判断两个特征点是不是同一个。
在本申请的一些实施例中,生成的节点在构建后会存放在第三存储空间中,当第三存储空间中存放的节点数量超过第一预设数量时,将第三存储空间中最早构建的节点存放到第一存储空间中,直到第三存储空间中的节点数量等于第一预设数量。
步骤S106,根据预设规则从多个节点中选择目标节点转移至第二存储空间;
在本申请的一些实施例中,上述目标节点可以为权重值较低的部分节点,或创建时间较早的部分节点。
为了便于理解步骤S104和步骤S106中对节点的转移过程,下面结合图2所示的节点处理流程对步骤S104和步骤S106做进一步地解释说明。
具体地,如图2所示,当目标涉设备在目标区域中运动时,目标设备的传感器会按照预设频率采集周边的环境数据和自身的位姿数据。
然后目标设备会依据采集到的数据生成节点。目标设备会在刚开始运动时依据初始第一帧采集到的数据建立节点,并设定节点的权重为零;之后每采集到一帧数据,都会根据每帧数据中的描述子和地图中的描述子,计算当前帧和上一节点的TF-IDF相似度,如果超过一定阈值,则认为两者相似,则不建立新的节点,更新上一节点权重加一;如果机器不动也不建立新节点;其他情况,建立新节点,并与上一节点建立相邻连接关系。
如图2所示,生成的节点可以存放在以下几个地方:短期内存(也就是第三存储空间),用于存放新建的节点,不参与闭环检测;工作内存(也就是第一存储空间),存放用于闭环检测的节点;长期内存(也就是第三存储空间),存放从工作空间中剔除的节点,节点也可以再放回工作空间中。
在本申请的一些实施例中,图2中节点在不同的存储空间中转移时遵循如下规则:当短期内存中的节点数量超过设定值,则将最老的节点放到工作空间中;当工作空间中的节点数量超过设定值或者程序处理一帧数据的时间超过设定值时,将工作空间中老的,权重低的节点移动到长期内存中;当发生闭环时,将与闭环节点相邻的节点从长期内存中取回工作空间中。
在本申请的一些实施例中,当所述目标设备处理所述目标数据时所消耗的时间大于预设时间阈值时,目标设备可以将所述多个节点中的部分节点转移到第二存储空间,直到所述时间不大于所述预设时间阈值。其中,目标设备处理目标数据包括依据采集的图像数据生成三维点云数据,进一步得到障碍物和通行栅格,以及生成新节点和进行闭环检测。
步骤S108,根据第一存储空间的节点和第二存储空间的节点构建目标区域的地图
在本申请的一些实施例中,根据第一存储空间的节点和第二存储空间的节点构建目标区域的地图包括:根据第一存储空间的节点和第二存储空间的节点分别对应的目标数据,确定目标区域的点云数据;对点云数据进行分割,得到目标区域中的障碍物区域和可通行区域;以及依据障碍物区域和可通行区域构建目标区域的导航地图。
在本申请的一些实施例中,在根据第一存储空间和第二存储空间中的节点建立目标区域的地图时,也会使用到第存储空间中的节点。
在本申请的一些实施例中,第一存储空间中存放的节点还用于对目标设备进行闭环检测的位姿数据校正,其中,闭环检测用于校正目标设备的位姿数据。闭环检测的具体流程为:计算当前时刻目标数据与第一存储空间中存放的各个节点的相似度,当多个相似度中的最大相似度大于第二预设相似度阈值时,确定最大相似度对应的节点为闭环节点;比较当前时刻目标数据中的目标设备位姿数据和闭环节点中的目标设备位姿数据,得到相对位姿数据值,并比较相对位姿数据值和预设位姿阈值;当相对位姿数据值不大于预设位姿阈值时,依据相对位姿数据值校正当前时刻目标数据中的目标设备位姿数据;依据校正后的目标设备位姿数据,对目标区域的地图进行校正。
在本申请的一些实施例中,依据相对位姿数据校正当前时刻目标数据中的目标设备位姿数据之后,还可以将第二存储空间中与闭环节点相邻的节点存储到第一存储空间,并在检测到新的闭环节点后将上述从第二存储空间转移到第一存储空间的节点再次转移到第一存储空间中,然后依据第一存储空间中的节点,构建目标区域的导航地图。
在本申请的一些实施例中,在确定所述第一存储空间中的节点数量时,只统计与上述闭环节点之间不是相邻连接关系的节点的数量。
在本申请的一些实施例中,当目标设备闭环检测完成后,目标设备还会依据第一存储空间中的节点构建新的导航地图。
通过上述步骤,可以实现减少计算量的技术效果,进而解决了由于地图会随着场景和运行时间的增大而增长造成的计算量增加的技术问题。
实施例2
根据本发明实施例,提供了一种地图构建装置的装置实施例,图3是根据本发明实施例的地图构建装置,如图3所示,该装置包括:获取模块30,用于获取目标设备在目标区域中移动时在不同时刻采集的目标数据;第一处理模块32,用于将根据目标数据构建的多个节点存储至第一存储空间中,其中,节点指示同一时刻采集的目标数据;第二处理模块34,用于根据预设规则从所述多个节点中选择目标节点转移至第二存储空间;构建模块36,用于根据第一存储空间的节点和第二存储空间的节点构建目标区域的地图。
在本申请的一些实施例中,获取模块30所获取的目标数据中可以包括目标设备自身的位姿数据,以及目标设备周边环境的彩色图像数据,深度图像数据。其中,目标设备周边环境的彩色图像数据和深度图像数据可用于提取周边环境的3D点,生成周边环境的3D点云并进行分割,从而生成障碍物和可同行栅格,构建导航地图。
具体地,位姿数据包括目标设备的横纵坐标值,以及目标设备的航向角,横滚角和俯仰角。其中,上述航向角,横滚角和俯仰角可以通过如下方式确定:定义目标设备的右、前、上三个方向构成坐标系,这样,绕向前的轴旋转的角度就是横滚角的角度;绕向右的轴旋转的角度就是俯仰角的角度;绕向上的轴旋转的角度就是航向角的角度。
在本申请的一些实施例中,上述目标设备自身的位姿数据可以通过目标设备上集成的里程计来获取,其中,上述目标设备可以为四足机器人等可自行移动的设备。
在本申请的一些实施例中,上述彩色图像数据可以是RGB三通道彩色图像数据。
在本申请的一些实施例中,第一处理模块32依据目标数据确定多个节点的具体流程如下:当目标设备开始在目标区域中移动时,确定目标设备在移动过程中确定的首个节点,并设置首个节点的权重值为预设初始值;以预设时间周期,周期性获取目标数据,并在每次获取目标数据后,确定当前时刻目标数据和上一节点中的目标数据的相似度;当相似度不大于第一预设相似度阈值时,依据当前时刻目标数据确定新节点,确定新节点与上一节点之间为相邻关系,并设置新节点的权重值为预设初始值;当相似度大于第一预设相似度阈值时,增加上一节点的权重值。
在本申请的一些实施例中,在确定两个节点为相邻节点后,还会计算两个节点之间存储的位姿数据的相对位姿数据(具体计算方式可以是计算两个节点中存储的位姿数据的差值等,为现有技术),相对位姿数据可用于对地图进行优化,具体而言是对构建地图时所使用的节点中的位姿数据进行优化。
在本申请的一些实施例中,确定当前时刻目标数据和上一节点中的目标数据的相似度的方法包括:分别获取当前时刻目标数据和上一节点中的目标数据的特征点,以及与特征点对应的描述子;依据特征点和描述子,计算当前时刻目标数据和上一节点中的目标数据的词频-逆文本频率TF-IDF相似度。
具体地,依据特征点和描述子,计算当前时刻目标数据和上一节点中的目标数据的词频-逆文本频率TF-IDF相似度之前,还需要把不同的特征归类为不同的单词。为了能够把特征归类为单词,还需要训练一个字典。所谓的字典就是包含了所有可能的单词的集合,为了提高通用性,需要使用大量的数据训练。其中,字典的训练过程也可以看做是一个聚类的过程,可以采用K聚类等聚类方法对训练数据进行聚类。
在本申请的一些实施例中,上述词频-逆文本频率TF-IDF是一种统计方法,用以评估某个字词对于一个文件集或一个语料库中的其中一份文件的重要程度。其中字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。TF-IDF的主要思想是:如果某个词或短语在一篇文章中出现的频率TF高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。
TF-IDF相似度的计算方法为实TF*IDF,其中TF为词频(Term Frequency),IDF为逆向文件频率(Inverse Document Frequency)。具体地,TF表示词条在某个文档中出现的频率。而IDF则用来体现某个词条被多少文件包含,若包含某个词条的文件越少,则说明该词条的区分度越好,对应的IDF就越大。
在本申请的一些实施例中,上述特征点为图像灰度值发生剧烈变化的点或者在图像边缘上曲率较大的点(即两个边缘的交点),而描述子则是描述特征点的朝向和特征点周围的像素信息。
具体地,特征点是那含有丰富局部信息的点,经常出现在图像中拐角、纹理剧烈变化等地方。特征点具有“尺度不变性”,也就是说其在不同图片中能够被识别出来。
在本申请的一些实施例中,可以通过描述子来确定两个特征点是否是同一个特征点。一般描述子的构造为选择以特征点为中心,预设距离为半径的圆,并对圆内的像素点进行计算得到一个向量。上述向量可以反映特征点周围像素的特点。即可以描述当前特征点的周围特性。因为相同的特征点周围是相似的,所以可以用描述子来判断两个特征点是不是同一个。
在本申请的一些实施例中,上述新节点在构建后会存放在第三存储空间中,当第三存储空间中存放的节点数量超过第一预设数量阈值时,将第三存储空间中最早构建的节点存放到第一存储空间中,直到第三存储空间中的节点数量等于第一预设数量阈值。
在本申请的一些实施例中,第一处理模块32还可以依据第一存储空间中存放的节点对目标设备进行闭环检测的位姿数据校正,其中,闭环检测用于校正目标设备的位姿数据。闭环检测的具体流程为:计算当前时刻目标数据与第一存储空间中存放的各个节点的相似度,当多个相似度中的最大相似度大于第二预设相似度阈值时,确定最大相似度对应的节点为闭环节点;比较当前时刻目标数据中的目标设备位姿数据和闭环节点中的目标设备位姿数据,得到相对位姿数据值,并比较相对位姿数据值和预设位姿阈值;当相对位姿数据值不大于预设位姿阈值时,依据相对位姿数据值校正当前时刻目标数据中的目标设备位姿数据;依据校正后的目标设备位姿数据,对目标区域的地图进行校正。
实施例3
根据本发明实施例,提供了一种非易失性存储介质实施例,该非易失性存储介质包括存储的程序,其中,程序运行时控制非易失性存储介质所在设备执行下述地图构建方法:获取目标设备在目标区域中移动时在不同时刻采集的目标数据;将根据目标数据构建的多个节点存储至第一存储空间中,其中,节点指示同一时刻采集的目标数据;根据预设规则从多个节点中选择目标节点转移至第二存储空间;根据第一存储空间的节点和第二存储空间的节点构建目标区域的地图。
根据本发明实施例,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行下述地图构建方法:获取目标设备在目标区域中移动时在不同时刻采集的目标数据;将根据目标数据构建的多个节点存储至第一存储空间中,其中,节点指示同一时刻采集的目标数据;根据预设规则从多个节点中选择目标节点转移至第二存储空间;根据第一存储空间的节点和第二存储空间的节点构建目标区域的地图。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (14)
1.一种地图构建方法,其特征在于,包括:
获取目标设备在目标区域中移动时在不同时刻采集的目标数据;
将根据所述目标数据构建的多个节点存储至第一存储空间中,其中,所述节点指示同一时刻采集的目标数据;
根据预设规则从所述多个节点中选择目标节点转移至第二存储空间;
根据所述第一存储空间的节点和所述第二存储空间的节点构建所述目标区域的地图。
2.根据权利要求1所述的方法,其特征在于,所述多个节点根据以下方式构建:
根据初始时刻采集的目标数据构建首个节点,按时序遍历各个时刻采集的目标数据;
在当前遍历的目标数据与上一节点指示的目标数据之间的相似度小于或等于第一预设相似度阈值的情况下,根据当前遍历的目标数据构建对应的节点,并与上一节点建立相邻连接关系。
3.根据权利要求2所述的方法,其特征在于,根据以下方式计算当前遍历的目标数据与上一节点指示的目标数据之间的相似度:
分别获取所述当前时刻目标数据和所述上一节点中的目标数据的特征点,以及与所述特征点对应的描述子;
依据所述特征点和所述描述子,计算所述当前时刻目标数据和所述上一节点中的目标数据的词频-逆文本频率TF-IDF相似度。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括;
将生成的节点存储至第三存储空间中;
在所述第三存储空间中的节点数量大于第一预设数量的情况下,将所述第三存储空间中最早构建的节点存放到所述第一存储空间中,以使所述第三存储空间中的节点数量等于第一预设数量。
5.根据权利要求2所述的方法,其特征在于,所述方法还包括:
为构建的所述多个节点确定权重值;其中,所述权重值用于表征节点的重要程度;
相应的,所述根据预设规则从所述多个节点中选择目标节点转移至第二存储空间包括:将所述多个节点中权重值最低的节点作为目标节点转移至第二存储空间。
6.根据权利要求5所述的方法,其特征在于,所述为构建的所述多个节点确定权重值包括:
将所述多个节点中首个节点的权重值设置为预设初始值;
在当前遍历的目标数据与上一节点指示的目标数据之间的相似度小于或等于第一预设相似度阈值的情况下,将根据当前遍历的目标数据构建对应的节点的权重值设置为预设初始值;
在当前遍历的目标数据与上一节点指示的目标数据之间的相似度小于第一预设相似度阈值的情况下,增加所述上一节点的权重值。
7.根据权利要求1所述的方法,其特征在于,根据预设规则从所述多个节点中选择目标节点转移至第二存储空间包括:将所述多个节点中最早构建的节点作为目标节点转移至第二存储空间。
8.根据权利要求1所述的方法,所述根据所述第一存储空间的节点和所述第二存储空间的节点构建所述目标区域的地图包括:
根据所述第一存储空间的节点和所述第二存储空间的节点分别对应的目标数据,确定所述目标区域的点云数据;
对所述点云数据进行分割,得到所述目标区域中的障碍物区域和可通行区域;以及
依据所述障碍物区域和所述可通行区域构建所述目标区域的导航地图。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
依据所述第一存储空间中存放的节点对所述目标设备进行闭环检测,其中,所述闭环检测通过以下方式实现:计算当前时刻目标数据与所述第一存储空间中存放的各个节点的相似度,当多个相似度中的最大相似度大于第二预设相似度阈值时,确定所述最大相似度对应的节点为闭环节点;比较当前时刻目标数据中的目标设备位姿数据和闭环节点中的目标设备位姿数据,得到相对位姿数据值,并比较所述相对位姿数据值和预设位姿阈值;当所述相对位姿数据值不大于所述预设位姿阈值时,依据所述相对位姿数据值校正所述当前时刻目标数据中的目标设备位姿数据;
依据校正后的目标设备位姿数据,对所述目标区域的地图进行校正。
10.根据权利要求9所述的方法,其特征在于,依据所述相对位姿数据校正所述当前时刻目标数据中的目标设备位姿数据之后,所述方法还包括:
将所述第二存储空间中与所述闭环节点相邻的节点存储到所述第一存储空间,并在检测到新的闭环节点后将从第二存储空间转移到第一存储空间的节点再次转移到第一存储空间中;
依据所述第一存储空间中的节点,构建所述目标区域的导航地图。
11.根据权利要求1项所述的方法,其特征在于,根据预设规则从所述多个节点中选择目标节点转移至第二存储空间,包括:
在所述目标设备处理所述目标数据时所消耗的时间大于预设时间阈值的情况下,从所述多个节点中选择目标节点转移至第二存储空间,直到所述消耗的时间不大于所述预设时间阈值;或,
在第一存储空间中存放的节点数量大于第二预设数量的情况下,从所述多个节点中选择目标节点转移至第二存储空间,直到所述第一存储空间中存放的节点数量等于所述第二预设数量。
12.一种地图构建装置,其特征在于,包括:
获取模块,用于获取目标设备在目标区域中移动时在不同时刻采集的目标数据;
第一处理模块,用于将根据所述目标数据构建的多个节点存储至第一存储空间中,其中,所述节点指示同一时刻采集的目标数据;
第二处理模块,用于根据预设规则从所述多个节点中选择目标节点转移至第二存储空间;
构建模块,用于根据所述第一存储空间的节点和所述第二存储空间的节点构建所述目标区域的地图。
13.一种非易失性存储介质,其特征在于,所述非易失性存储介质包括存储的程序,其中,在所述程序运行时控制所述非易失性存储介质所在设备执行权利要求1至11中任意一项所述地图构建方法。
14.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至11中任意一项所述地图构建方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110920287.XA CN113670293B (zh) | 2021-08-11 | 地图构建方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110920287.XA CN113670293B (zh) | 2021-08-11 | 地图构建方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113670293A true CN113670293A (zh) | 2021-11-19 |
CN113670293B CN113670293B (zh) | 2024-07-30 |
Family
ID=
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080319557A1 (en) * | 2005-07-06 | 2008-12-25 | Airbus Uk Limited | Program-Controlled Process |
JP2011145078A (ja) * | 2010-01-12 | 2011-07-28 | Yahoo Japan Corp | データ生成装置、データ生成方法及び経路探索装置 |
US20120121161A1 (en) * | 2010-09-24 | 2012-05-17 | Evolution Robotics, Inc. | Systems and methods for vslam optimization |
CN108592912A (zh) * | 2018-03-24 | 2018-09-28 | 北京工业大学 | 一种基于激光雷达的室内移动机器人自主探索方法 |
CN108932515A (zh) * | 2017-05-26 | 2018-12-04 | 杭州海康机器人技术有限公司 | 一种基于闭环检测进行拓扑节点位置校正的方法和装置 |
CN109407985A (zh) * | 2018-10-15 | 2019-03-01 | 郑州云海信息技术有限公司 | 一种数据管理的方法以及相关装置 |
US20190370989A1 (en) * | 2017-02-17 | 2019-12-05 | SZ DJI Technology Co., Ltd. | Method and apparatus for 3-dimensional point cloud reconstruction |
CN110555901A (zh) * | 2019-09-05 | 2019-12-10 | 亮风台(上海)信息科技有限公司 | 动静态场景的定位和建图方法、装置、设备和存储介质 |
CN111795704A (zh) * | 2020-06-30 | 2020-10-20 | 杭州海康机器人技术有限公司 | 一种视觉点云地图的构建方法、装置 |
CN112214629A (zh) * | 2019-07-12 | 2021-01-12 | 珠海格力电器股份有限公司 | 基于图像识别的回环检测方法及可移动设备 |
CN112416950A (zh) * | 2021-01-25 | 2021-02-26 | 中国人民解放军国防科技大学 | 一种三维sketch结构的设计方法和装置 |
CN112950696A (zh) * | 2021-02-03 | 2021-06-11 | 珠海格力智能装备有限公司 | 导航地图的生成方法及生成装置、电子设备 |
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080319557A1 (en) * | 2005-07-06 | 2008-12-25 | Airbus Uk Limited | Program-Controlled Process |
JP2011145078A (ja) * | 2010-01-12 | 2011-07-28 | Yahoo Japan Corp | データ生成装置、データ生成方法及び経路探索装置 |
US20120121161A1 (en) * | 2010-09-24 | 2012-05-17 | Evolution Robotics, Inc. | Systems and methods for vslam optimization |
US20190370989A1 (en) * | 2017-02-17 | 2019-12-05 | SZ DJI Technology Co., Ltd. | Method and apparatus for 3-dimensional point cloud reconstruction |
CN108932515A (zh) * | 2017-05-26 | 2018-12-04 | 杭州海康机器人技术有限公司 | 一种基于闭环检测进行拓扑节点位置校正的方法和装置 |
CN108592912A (zh) * | 2018-03-24 | 2018-09-28 | 北京工业大学 | 一种基于激光雷达的室内移动机器人自主探索方法 |
CN109407985A (zh) * | 2018-10-15 | 2019-03-01 | 郑州云海信息技术有限公司 | 一种数据管理的方法以及相关装置 |
CN112214629A (zh) * | 2019-07-12 | 2021-01-12 | 珠海格力电器股份有限公司 | 基于图像识别的回环检测方法及可移动设备 |
CN110555901A (zh) * | 2019-09-05 | 2019-12-10 | 亮风台(上海)信息科技有限公司 | 动静态场景的定位和建图方法、装置、设备和存储介质 |
CN111795704A (zh) * | 2020-06-30 | 2020-10-20 | 杭州海康机器人技术有限公司 | 一种视觉点云地图的构建方法、装置 |
CN112416950A (zh) * | 2021-01-25 | 2021-02-26 | 中国人民解放军国防科技大学 | 一种三维sketch结构的设计方法和装置 |
CN112950696A (zh) * | 2021-02-03 | 2021-06-11 | 珠海格力智能装备有限公司 | 导航地图的生成方法及生成装置、电子设备 |
Non-Patent Citations (3)
Title |
---|
HYUN CHUL ROH; CHANG HUN SUNG; MIN TAE KANG; MYUNG JIN CHUNG: "Fast SLAM using polar scan matching and particle weight based occupancy grid map for mobile robot", 2011 8TH INTERNATIONAL CONFERENCE ON UBIQUITOUS ROBOTS AND AMBIENT INTELLIGENCE (URAI), 6 February 2012 (2012-02-06) * |
艾青林;余杰;胡克用;陈琦;: "基于ORB关键帧匹配算法的机器人SLAM实现", 机电工程, vol. 33, no. 05, 31 May 2016 (2016-05-31) * |
许曈,吴学娟,凌有铸,陈孟元: "一种改进闭环检测算法的鼠类SLAM 模型研究", 控制工程, vol. 26, no. 3, 31 March 2019 (2019-03-31) * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111666921B (zh) | 车辆控制方法、装置、计算机设备和计算机可读存储介质 | |
CN110531760B (zh) | 基于曲线拟合和目标点邻域规划的边界探索自主建图方法 | |
CN110874100B (zh) | 用于使用视觉稀疏地图进行自主导航的***和方法 | |
WO2020134082A1 (zh) | 一种路径规划方法、装置和移动设备 | |
CN109509210B (zh) | 障碍物跟踪方法和装置 | |
Linegar et al. | Work smart, not hard: Recalling relevant experiences for vast-scale but time-constrained localisation | |
CN113537208B (zh) | 一种基于语义orb-slam技术的视觉定位方法及*** | |
WO2020155615A1 (zh) | Vslam方法、控制器和可移动设备 | |
CN106092104A (zh) | 一种室内机器人的重定位方法及装置 | |
CN111536964A (zh) | 机器人定位方法及装置、存储介质 | |
Zhou et al. | Self‐supervised learning to visually detect terrain surfaces for autonomous robots operating in forested terrain | |
CN108763287A (zh) | 大规模可通行区域驾驶地图的构建方法及其无人驾驶应用方法 | |
CN109163722B (zh) | 一种仿人机器人路径规划方法及装置 | |
CN107677279A (zh) | 一种定位建图的方法及*** | |
CN113345018A (zh) | 一种动态场景下的激光单目视觉融合定位建图方法 | |
CN110705385B (zh) | 一种障碍物角度的检测方法、装置、设备及介质 | |
CN113110455B (zh) | 一种未知初始状态的多机器人协同探索方法、装置及*** | |
CN110181508A (zh) | 水下机器人三维航路规划方法及*** | |
CN112785705B (zh) | 一种位姿获取方法、装置及移动设备 | |
CN110956161A (zh) | 一种自主建图方法、装置及智能机器人 | |
CN112651997A (zh) | 地图构建方法、电子设备和存储介质 | |
JP2022523312A (ja) | Vslam方法、コントローラ及び移動可能機器 | |
GB2610410A (en) | Incremental dense 3-D mapping with semantics | |
Wang et al. | Multi-cue road boundary detection using stereo vision | |
Yang et al. | Large-scale 3D semantic mapping using stereo vision |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20221101 Address after: No.018, 8th floor, building 6, No.33 yard, middle Xierqi Road, Haidian District, Beijing 100085 Applicant after: BEIJING XIAOMI MOBILE SOFTWARE Co.,Ltd. Applicant after: Dreame technology (Suzhou) Co.,Ltd. Address before: 215100 E3, building 16, No. 2288, Yuexi Wuzhong Avenue, Wuzhong District, Suzhou City, Jiangsu Province Applicant before: Dreame technology (Suzhou) Co.,Ltd. |
|
GR01 | Patent grant |