CN112116656A - 同步定位与地图构建slam中的增量建图方法和装置 - Google Patents
同步定位与地图构建slam中的增量建图方法和装置 Download PDFInfo
- Publication number
- CN112116656A CN112116656A CN202010768085.3A CN202010768085A CN112116656A CN 112116656 A CN112116656 A CN 112116656A CN 202010768085 A CN202010768085 A CN 202010768085A CN 112116656 A CN112116656 A CN 112116656A
- Authority
- CN
- China
- Prior art keywords
- data
- laser
- robot
- pose
- neural network
- 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.)
- Pending
Links
- 238000013507 mapping Methods 0.000 title claims abstract description 59
- 238000000034 method Methods 0.000 title claims abstract description 48
- 230000001360 synchronised effect Effects 0.000 title claims abstract description 17
- 238000003062 neural network model Methods 0.000 claims abstract description 38
- 238000000605 extraction Methods 0.000 claims abstract description 31
- 238000012549 training Methods 0.000 claims abstract description 27
- 238000010276 construction Methods 0.000 claims abstract description 12
- 238000012545 processing Methods 0.000 claims description 20
- 238000013527 convolutional neural network Methods 0.000 claims description 13
- 230000007613 environmental effect Effects 0.000 claims description 10
- 238000012360 testing method Methods 0.000 claims description 10
- 230000011218 segmentation Effects 0.000 claims description 7
- 238000001914 filtration Methods 0.000 claims description 5
- 238000012512 characterization method Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 18
- 230000000875 corresponding effect Effects 0.000 description 9
- 238000004422 calculation algorithm Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 2
- 238000013075 data extraction Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 239000000049 pigment Substances 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/75—Determining position or orientation of objects or cameras using feature-based methods involving models
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/89—Lidar systems specially adapted for specific applications for mapping or imaging
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/93—Lidar systems specially adapted for specific applications for anti-collision purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
Abstract
本申请公开同步定位与地图构建slam中的增量建图方法和装置。本申请的方法包括:实时采集机器人周边环境的激光数据,对各采集时刻下的激光数据进行特征提取,获得激光数据中用于表征环境反馈结果的特征数据;利用特征数据和各采集时刻下机器人的位姿对预先构建的神经网络模型进行训练;在启动slam增量建图时,对机器人在当前时刻采集到的激光数据进行特征提取,将提取到的特征数据输入到训练好的神经网络模型中,获得神经网络模型输出的位姿数据;根据当前时刻采集的激光数据构建原始地图,并根据所述位姿数据与所述原始地图进行增量建图。本申请的技术方案能够提高所构建地图的精度,避免出现地图断层、重叠等问题。
Description
技术领域
本申请涉及计算机技术领域,具体涉及一种同步定位与地图构建slam中的增量建图方法和装置。
背景技术
slam(simultaneous localization and mapping)是一种同时定位与地图构建技术,主要用于解决机器人在未知环境中依靠2D或者3D传感器进行定位导航和地图构建的问题。
增量建图指的是机器人依靠现有的地图,继续进行地图构建的过程。现有的增量建图方案大多是基于传统定位+地图拼接算法,在新地图与旧地图匹配的过程中容易丢失精度,造成地图断层或者重叠。
发明内容
本申请提供了一种同步定位与地图构建slam中的增量建图方法和装置,用于解决或部分解决上述问题。
一方面,本申请提供了一种同步定位与地图构建slam中的增量建图方法,包括:
实时采集机器人周边环境的激光数据,对各采集时刻下的激光数据进行特征提取,获得激光数据中用于表征环境反馈结果的特征数据;
利用特征数据和各采集时刻下机器人的位姿对预先构建的神经网络模型进行训练;
在启动slam增量建图时,对机器人在当前时刻采集到的激光数据进行特征提取,将提取到的特征数据输入到训练好的神经网络模型中,获得神经网络模型输出的位姿数据;
根据当前时刻采集的激光数据构建原始地图,并根据位姿数据与原始地图进行增量建图。
另一方面,本申请提供了一种同步定位与地图构建slam中的增量建图装置,包括:
数据处理单元,用于实时采集机器人周边环境的激光数据,对各采集时刻下的激光数据进行特征提取,获得所述激光数据中用于表征环境反馈结果的特征数据;
训练单元,用于利特征数据和各采集时刻下机器人的位姿对预先构建的神经网络模型进行训练;
实施单元,用于在启动slam增量建图时,对机器人在当前时刻采集到的激光数据进行特征提取,将提取到的特征数据输入到训练好的神经网络模型中,获得神经网络模型输出的位姿数据;
建图单元,用于根据当前时刻采集的激光数据构建原始地图,并根据位姿数据与原始地图进行增量建图。
再一方面,本申请提供了一种机器人,包括:存储器、处理器和激光器;
激光器,采集机器人周边的激光数据并发送给处理器;
存储器,存储计算机可执行指令;
处理器,根据计算机可执行指令执行上述同步定位与地图构建slam中的增量建图方法。
又一方面,本申请提供了一种计算机可读存储介质,计算机可读存储介质上存储有一个或多个计算机程序,一个或多个计算机程序被执行时实现上述同步定位与地图构建slam中的增量建图方法。
本申请的有益效果是:本发明对各个采集时刻下的激光数据进行特征提取,利用提取到的特征数据和机器人位姿对构建的神经网络模型进行训练,在启动slam增量建图时,对当前时刻采集到的激光数据进行特征提取,将提取到的特征数据输入到神经网络模型,通过将神经网络模型输出的位姿作为机器人当前时刻的位姿,重新确定精度更高的机器人位姿,结合重新确定后的机器人位姿与原始地图进行增量建图,避免构建好的地图中出现断层、重叠等问题,显著地提高了建图精度。
附图说明
图1是本申请一个实施例示出的建图过程示意图;
图2是本申请一个实施例示出的同步定位与地图构建slam中的增量建图方法的流程示意图;
图3是本申请一个实施例示出的栅格地图示意图;
图4-1是本申请一个实施例示出的激光数据示意图;
图4-2是本申请一个实施例示出的对图4-1中的激光数据进行干扰点后过滤的示意图;
图5-1是本申请一个实施例示出的激光数据示意图;
图5-2是本申请一个实施例示出的从图5-1中的激光数据中抽取环境反馈结果示意图;
图5-3是本申请一个实施例示出的基于图5-1中的激光数据生成距离信息的示意图;
图6-1是本申请一个实施例示出的时间序列数据散点示意图;
图6-2是本申请一个实施例示出的对图6-1中的时间序列数据进行分段的示意图;
图6-3是本申请一个实施例示出对图6-1中的时间序列数据分段后的子数据进行线性拟合的示意图;
图7是本申请一个实施例示出的特征回归效果示意图;
图8-1是本申请示出的采用传统算法所构建的地图的效果图;
图8-2是本申请一个实施例示出的增量建图效果示意图;
图9是本申请一个实施例示出的同步定位与地图构建slam中的增量建图装置的功能框图;
图10是本申请一个实施例的机器人的结构框图;
图11是本申请一个实施例的计算机可读存储介质的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
基于现有技术中,机器人在增量建图时出现的精度丢失、地图断层或重叠等缺陷问题,本申请实施例提出一种解决方案,参考图1,本申请一方面利用采集到的激光数据计算机器人位姿,基于机器人位姿构建原始地图;另一方面,将采集到的激光数据输入到神经网络模型中,将神经网络模型输出的位姿作为机器人当前时刻的位姿;最后,结合原始地图与机器人当前的位姿进行地图构建。
图2是本申请一个实施例示出的同步定位与地图构建slam中的增量建图方法的流程示意图,参见图2,该增量建图方法包括如下步骤:
步骤S210,实时采集机器人周边环境的激光数据,对各采集时刻下的激光数据进行特征提取,获得激光数据中用于表征环境反馈结果的特征数据。
本实施例中,每个时刻采集的激光数据可以是由多个离散的点组成的数组,体现在栅格地图上的形式为如图4-1中示出的散点。在一些实施例中,每个时刻采集的激光数据也可以是如图5-1所示的一帧图像数据。
本实施例中,特征数据是从激光数据中抽取出来用于表征环境反馈结果的数据,例如用于表征环境中如图5-2所示的墙面、建筑物等障碍物。
步骤S220,利用特征数据和各采集时刻下机器人的位姿对预先构建的神经网络模型进行训练。
本实施例中,神经网络模型可以为YOLOV3卷积神经网络模型,采用darknet53网络结构。
步骤S230,在启动slam增量建图时,对机器人在当前时刻采集到的激光数据进行特征提取,将提取到的特征数据输入到训练好的神经网络模型中,获得神经网络模型输出的位姿数据。
现有技术中,一般是利用定位算法,例如贝叶斯定位算法对激光数据进行计算,得到机器人位姿,利用该机器人位姿进行地图构建。但由于此种利用定位算法计算得到的机器人位姿并不准确,直接利用该机器人位姿进行地图构建容易导致地图断层或重叠等问题。因此,本实施例基于神经网络模型计算机器人位姿,利用神经网络模型输出的机器人位姿重新确定机器人位姿,以基于重新确定的具有更高精度的机器人位姿进行地图构建,提高地图构建的精度。
步骤S240,根据当前时刻采集的激光数据构建原始地图,并根据位姿数据与原始地图进行增量建图。
本步骤中,可以根据机器人位姿数据确定机器人在原始地图中的位置,基于机器人位姿将新增地图与已经构建好的原始地图进行无缝拼接,然后基于后续采集到的激光数据继续构建地图,进而完成slam中的增量建图。
由图2所示可知,本实施例对各个采集时刻下的激光数据进行特征提取,利用提取到的特征数据和机器人位姿对构建的神经网络模型进行训练,在启动slam增量建图时,对当前时刻采集到的激光数据进行特征提取,将提取到的特征数据输入到神经网络模型,通过将神经网络模型输出的位姿作为机器人当前时刻的位姿,重新确定机器人位姿,结合重新确定后的机器人位姿与栅格地图进行地图构建,避免构建好的地图中出现断层、重叠等问题,显著地提高了建图精度。
下面以一个机器人为例,结合图3至图8-2并利用该机器人采集的激光数据进行地图构建的方法进行具体说明。
上述步骤S210与步骤S230对激光数据进行特征提取的方法包括:首先,从激光数据中抽取出环境反馈结果,环境反馈结果可以是图5-2中示出的用于表示墙面、建筑物等障碍物的数据点。然后,根据环境反馈结果从激光数据中分离出机器人与环境反馈结果之间的距离信息,图5-3示出即为从图5-1所示的激光数据中分离出的机器人与图5-2中的环境反馈结果之间的距离信息。最后,根据距离信息进行特征提取,获得特征数据。
在一些实施例中,可以根据激光数据对应的采集时刻与距离信息,生成时间序列数据,对时间序列数据进行相关性分段处理,得到一段或多段子数据;基于各段子数据的特征回归处理结果,得到特征数据。其中,特征回归处理是指,在得到子数据之后,将一段或多段拟合的子数据按照时间排序,根据时间序列数据与激光数据之间的对应关系,将时间序列子数据映射到激光数据中,从激光数据中获得特征数据,图7中矩形框中的数据点即为特征回归后的特征数据。
由于相邻两条激光束的夹角是固定的,激光器旋转的频率也是固定的,因此可以直接把抽取出的距离数据转换成如图6-1所示的时间序列数据,如图6-1所示,由于转换后的时间序列数据分散较为杂乱没有规律,因此,本实施例对时间序列数据通过数据之间的相关性进行分段,将具有相关性的数据分为一段,进而分段后的子数据是符合某种规则或符合某种特征的,可以进行特征提取。
在对时间序列数据进行相关性分段时,可以设置时间窗,基于时间窗完成时间序列数据的相关性分段。例如设置时间窗为3个数据,若一个数据对应的激光点夹角为1°,则每3°内的激光点对应的时间序列数据进行一次相关性判断。若在某片段内,数据连续相关,则可认为该片段内数据具有相关性,可以分为一类,该类内的子数据存在某种关系,例如存在线性关系或非线性关系。图6-2中每个矩形框中的时间序列子数据可以归为一类,可以看出,矩形框中的子数据具有线性相关性。需要说明的是,本实施例并不限定子数据之间符合何种相关性,只需要将具有同一种相关性的子数据划分为一类即可。
为提高时间序列数据分段的准确性,如图6-3所示,在一些实施例中,对分段后的每段子数据进行线性或多项式拟合处理,当拟合误差在阈值范围内时,确定该子数据符合线性特征;对符合线性特征的子数据进行特征回归处理,得到所述特征数据。
由于基于数据之间的相关性对时间序列数据进行分段时,可能会将干扰点划分到子数据中,此时直接将包括干扰点的子数据进行特征回归,会将干扰点作为特征点提取出来,进而影响后续基于特征数据计算机器人位姿的准确度。而对分段后的每段子数据进行线性或多项式拟合处理,通过拟合误差筛选出包括干扰点的子数据,进而将不包括干扰点的子数据进行特征回归处理,提高特征提取的准确性。
为进一步提高所提取特征数据的准确性,过滤掉干扰点的影响,一些实施例中,在获得激光数据中用于表征环境反馈结果的特征数据之后,还根据特征数据中各数据点与机器人激光器之间的距离,过滤掉特征数据中的干扰数据点;或者,在对各采集时刻下的激光数据进行特征提取之前还根据各采集时刻下的激光数据中各激光点与机器人激光器之间的距离,过滤掉特征数据中的干扰数据点。
在激光数据的采集过程中,距离激光器越近的激光点,其测量精度越高,距离激光器越远的激光点,其测量精度会越低。本实施例过滤的干扰数据点即为距离激光器比较远的激光点。假设激光器的坐标为(Xo,Yo),激光器的有效距离为m米,这个阈值可以根据激光器的性能进行调整,激光器的性能越好,阈值可以相应调高,当激光点(Xn,Yn)与激光器的距离sqrt((Xn-Xo)2+(Yn-Yo)2)>m时,激光点(Xn,Yn)即为干扰数据点,在特征数据中或激光数据中将这个激光点过滤掉。
在一些实施例中,将过滤掉干扰数据点的特征数据作为一组数据保存,如果相邻时刻的两组数据相同,从该两组数据中去除一组数据。或者,将过滤掉干扰数据点的每帧激光数据作为一组数据保存,如果相邻时刻的两帧激光数据相同,从该相邻两帧激光数据中去除一帧激光数据,避免数据量重复和过多造成训练时间增加。
在一些实施例中,还可以计算两个相邻特征数据之间的距离,将距离值超过预设距离阈值的特征数据过滤掉。
基于上述特征数据的提取过程,可以从图4-1中包括大量干扰点的激光数据中提取出图4-2中的特征数据,使提取到的特征数据可以按照顺序连接形成一个闭合的轮廓。
在一些实施例中,上述步骤S220对神经网络模型进行训练的方法包括:
将特征数据对应采集时刻下的机器人的位姿写入配置文件中,并建立配置文件中位姿与特征数据之间的对应关系;
将由特征数据构成的数据集划分为测试集和训练集,例如将70%的特征数据作为训练集,将30%的数据作为测试集;
利用YOLOV3卷积神经网络的darknet53网络结构读取配置文件与训练集数据,利用配置文件与训练集数据对所述YOLOV3卷积神经网络进行训练,并基于测试集数据对训练后的YOLOV3卷积神经网络进行测试,直至得到稳定的YOLOV3卷积神经网络。
如图3所示,栅格地图中有三个色素,分别为:黑、白、灰,黑色代表障碍物,白色代表可同行区域,灰色代表未知区域,本实施例根据机器人的位姿和每一条激光数据的数值,来计算障碍物和通行区域在栅格地图中的位置。
参考图3,上述步骤S240构建原始地图的方法包括:
步骤1,根据激光数据计算得到机器人的位姿,位姿包括机器人的位置与角度;
例如利用贝叶斯公式bel(Yt)=p(Yt|A0,A1,...At,B0,B1,...Bt)进行机器人位姿计算,其中,Yt标识t时刻机器人的位姿,该位置包括位置(x,y)和角度α,A0,A1,...At表示在0,1,…t时刻激光器采集到的距离信息,B0,B1,...Bt表示在0,1,…t时刻机器人码盘获取到的距离信息,码盘用于计算机器人移动的距离,因此,机器人码盘获取到的距离信息也可以理解为机器人移动的距离信息。
步骤2,根据机器人的位置与角度,以及根据机器人朝向与机器人激光器发射出的激光束之间的夹角,计算障碍物位置;
步骤3,根据障碍物位置在原始栅格地图中绘制出障碍物区域和通行区域,完成原始地图的构建。
参考图3,由于栅格地图中,黑色代表障碍物,可以将障碍物坐标位置(X1,Y1)所在的栅格灰度值设置为0。
由此,基于上述步骤1至步骤3可以构建出原始地图。
在构建好原始地图,并基于训练好的神经网络模型得到机器人当前时刻的位姿时,根据位姿数据与原始地图实现增量建图。
基于以上方法,本实施例可以基于slam实现增量建图,图8-1与图8-2,其中图8-1为采用传统算法所构建的地图的效果图,图8-2而采用本申请实施例的方法构建得到的地图效果图,对比图8-1与图8-2可以看出,图8-1中椭圆形框中的部分有明显的错位,建图精度差,而本申请实施例的建图方法所构建得到的地图不存在错位、重叠等问题,精度得到了显著的提高。
与前述方法相对应,本申请还提供了一种同步定位与地图构建slam中的增量建图装置。
图9是本申请一个实施例示出的同步定位与地图构建slam中的增量建图装置的功能框图,如图9所示,本实施例的装置900包括:
数据处理单元910,用于实时采集机器人周边环境的激光数据,对各采集时刻下的激光数据进行特征提取,获得所述激光数据中用于表征环境反馈结果的特征数据;
训练单元920,用于利用所述特征数据和各采集时刻下机器人的位姿对预先构建的神经网络模型进行训练;
实施单元930,用于在启动slam增量建图时,对机器人在当前时刻采集到的激光数据进行特征提取,将提取到的特征数据输入到训练好的神经网络模型中,获得所述神经网络模型输出的位姿数据;
建图单元940,用于根据当前时刻采集的激光数据构建原始地图,并根据所述位姿数据与所述原始地图进行增量建图。
在一些实施例中,数据处理单元910包括数据抽取模块和特征提取模块;
数据抽取模块,用于从所述激光数据中抽取出环境反馈结果,以及根据所述环境反馈结果从所述激光数据中分离出机器人与所述环境反馈结果之间的距离信息;
特征提取模块,用于根据所述距离信息进行特征提取,获得所述特征数据。
在一些实施例中,特征提取模块,还用于根据激光数据对应的采集时刻与所述距离信息,生成时间序列数据;对所述时间序列数据进行相关性分段处理,得到一段或多段子数据;基于各段子数据的特征回归处理结果,得到所述特征数据。
在一些实施例中,特征提取模块,还用于对分段后的每段子数据进行线性或多项式拟合处理,在拟合误差在阈值范围内时,确定该子数据符合线性特征;对符合线性特征的子数据进行特征回归处理,得到所述特征数据。
在一些实施例中,特征提取模块,还用于在获得所述激光数据中用于表征环境反馈结果的特征数据之后,根据特征数据中各数据点与机器人激光器之间的距离,过滤掉特征数据中的干扰数据点;或者,在对各采集时刻下的激光数据进行特征提取之前,根据各采集时刻下的激光数据中各激光点与机器人激光器之间的距离,过滤掉特征数据中的干扰数据点。
在一些实施例中,特征提取模块,还用于将过滤掉干扰数据点的特征数据作为一组数据保存,如果相邻时刻的两组数据相同,从该两组数据中去除一组数据;或者,将过滤掉干扰数据点的每帧激光数据作为一组数据保存,如果相邻时刻的两帧激光数据相同,从该相邻两帧激光数据中去除一帧激光数据。
在一些实施例中,训练单元920,用于将所述特征数据对应采集时刻下的机器人的位姿写入配置文件中,并建立配置文件中位姿与特征数据之间的对应关系;将由特征数据构成的数据集划分为测试集和训练集;利用YOLOV3卷积神经网络的darknet53网络结构读取配置文件与训练集数据,利用配置文件与训练集数据对所述YOLOV3卷积神经网络进行训练,并基于测试集数据对训练后的YOLOV3卷积神经网络进行测试,直至得到稳定的YOLOV3卷积神经网络。
在一些实施例中,建图单元940还用于根据所述激光数据计算得到机器人的位姿,所述位姿包括机器人的位置与角度;根据所述机器人的位置与角度,以及根据机器人朝向与机器人激光器发射出的激光束之间的夹角,计算障碍物位置;根据所述障碍物位置在原始栅格地图中绘制出障碍物区域和通行区域,完成原始地图的构建。
综上所述,本申请实施例对各个采集时刻下的激光数据进行特征提取,利用提取到的特征数据和机器人位姿对构建的神经网络模型进行训练,在启动slam增量建图时,对当前时刻采集到的激光数据进行特征提取,将提取到的特征数据输入到神经网络模型,通过将神经网络模型输出的位姿作为机器人当前时刻的位姿,重新确定精度更高的机器人位姿,结合重新确定后的机器人位姿与原始地图进行增量建图,避免构建好的地图中出现断层、重叠等问题,显著地提高了建图精度。
需要说明的是:
在此提供的算法和显示不与任何特定计算机、虚拟装置或者其它设备固有相关。各种通用装置也可以与基于在此的示教一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本申请也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本申请的内容,并且上面对特定语言所做的描述是为了披露本申请的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本申请的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本申请并帮助理解各个发明方面中的一个或多个,在上面对本申请的示例性实施例的描述中,本申请的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本申请要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本申请的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本申请的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本申请的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本申请实施例的同步定位与地图构建slam中的增量建图装置中的一些或者全部部件的一些或者全部功能。本申请还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本申请的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
例如,图10示出本申请一个实施例示出的机器人的结构示意图,该机器人1000包括激光器1040、处理器1010和被安排成存储计算机可执行指令(计算机可读程序代码)的存储器1020。激光器1040用于采集机器人周边的激光数据并发送给处理器1010,存储器1020可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。存储器1020具有存储用于执行上述方法中的任何方法步骤的计算机可读程序代码1031的存储空间1030。例如,用于存储计算机可读程序代码的存储空间1030可以包括分别用于实现上面的方法中的各种步骤的各个计算机可读程序代码1031。计算机可读程序代码1031可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。这些计算机程序产品包括诸如硬盘,紧致盘(CD)、存储卡或者软盘之类的程序代码载体。这样的计算机程序产品通常为例如图11所述的计算机可读存储介质。
图11示出了根据本申请一个实施例的一种计算机可读存储介质的结构示意图。该计算机可读存储介质1100存储有用于执行根据本申请的方法步骤的计算机可读程序代码1031,可以被机器人1000的处理器1010读取,当计算机可读程序代码1031由机器人1000运行时,导致机器人1000执行上面所描述的方法中的各个步骤,具体来说,该计算机可读存储介质存储的计算机可读程序代码1031可以执行上述任一实施例中示出的方法。计算机可读程序代码1031可以以适当形式进行压缩。
应该注意的是上述实施例对本申请进行说明而不是对本申请进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本申请可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (10)
1.一种同步定位与地图构建slam中的增量建图方法,其特征在于,包括:
实时采集机器人周边环境的激光数据,对各采集时刻下的激光数据进行特征提取,获得所述激光数据中用于表征环境反馈结果的特征数据;
利用所述特征数据和各采集时刻下机器人的位姿对预先构建的神经网络模型进行训练;
在启动slam增量建图时,对机器人在当前时刻采集到的激光数据进行特征提取,将提取到的特征数据输入到训练好的神经网络模型中,获得所述神经网络模型输出的位姿数据;
根据当前时刻采集的激光数据构建原始地图,并根据所述位姿数据与所述原始地图进行增量建图。
2.如权利要求1所述的方法,其特征在于,对各采集时刻下的激光数据进行特征提取,获得所述激光数据中用于表征环境反馈结果的特征数据,包括:
从所述激光数据中抽取出环境反馈结果;
根据所述环境反馈结果从所述激光数据中分离出机器人与所述环境反馈结果之间的距离信息;
根据所述距离信息进行特征提取,获得所述特征数据。
3.如权利要求2所述的方法,其特征在于,根据所述距离信息进行特征提取,包括:
根据激光数据对应的采集时刻与所述距离信息,生成时间序列数据;
对所述时间序列数据进行相关性分段处理,得到一段或多段子数据;
基于各段子数据的特征回归处理结果,得到所述特征数据。
4.如权利要求3所述的方法,其特征在于,基于各段子数据的特征回归处理结果,得到所述特征数据,包括:
对分段后的每段子数据进行线性或多项式拟合处理,在拟合误差在阈值范围内时,确定该子数据符合线性特征;
对符合线性特征的子数据进行特征回归处理,得到所述特征数据。
5.如权利要求3所述的方法,其特征在于,在获得所述激光数据中用于表征环境反馈结果的特征数据之后,还包括:
根据特征数据中各数据点与机器人激光器之间的距离,过滤掉特征数据中的干扰数据点;或者,
在对各采集时刻下的激光数据进行特征提取之前还包括:
根据各采集时刻下的激光数据中各激光点与机器人激光器之间的距离,过滤掉特征数据中的干扰数据点。
6.如权利要求5所述的方法,其特征在于,在过滤掉干扰数据点之后,还包括:
将过滤掉干扰数据点的特征数据作为一组数据保存,如果相邻时刻的两组数据相同,从该两组数据中去除一组数据;
或者,将过滤掉干扰数据点的每帧激光数据作为一组数据保存,如果相邻时刻的两帧激光数据相同,从该相邻两帧激光数据中去除一帧激光数据。
7.如权利要求1所述的方法,其特征在于,利用所述特征数据和各采集时刻的机器人的位姿对预先构建的神经网络模型进行训练,包括:
将所述特征数据对应采集时刻下的机器人的位姿写入配置文件中,并建立配置文件中机器人的位姿与特征数据之间的对应关系;
将由特征数据构成的数据集划分为测试集和训练集;
利用YOLOV3卷积神经网络的darknet53网络结构读取配置文件与训练集数据,利用配置文件与训练集数据对所述YOLOV3卷积神经网络进行训练,并基于测试集数据对训练后的YOLOV3卷积神经网络进行测试,直至得到稳定的YOLOV3卷积神经网络。
8.如权利要求1所述的方法,其特征在于,根据当前时刻采集的激光数据构建原始地图,包括:
根据所述激光数据计算得到机器人的位姿,所述位姿包括机器人的位置与角度;
根据所述机器人的位置与角度,以及根据机器人朝向与机器人激光器发射出的激光束之间的夹角,计算障碍物位置;
根据所述障碍物位置在原始栅格地图中绘制出障碍物区域和通行区域,完成原始地图的构建。
9.一种同步定位与地图构建slam中的增量建图装置,其特征在于,包括:
数据处理单元,用于实时采集机器人周边环境的激光数据,对各采集时刻下的激光数据进行特征提取,获得所述激光数据中用于表征环境反馈结果的特征数据;
训练单元,用于利用所述特征数据和各采集时刻下机器人的位姿对预先构建的神经网络模型进行训练;
实施单元,用于在启动slam增量建图时,对机器人在当前时刻采集到的激光数据进行特征提取,将提取到的特征数据输入到训练好的神经网络模型中,获得所述神经网络模型输出的位姿数据;
建图单元,用于根据当前时刻采集的激光数据构建原始地图,并根据所述位姿数据与所述原始地图进行增量建图。
10.一种机器人,包括:存储器、处理器和激光器;
激光器,采集机器人周边的激光数据并发送给处理器;
存储器,存储计算机可执行指令;
处理器,根据计算机可执行指令执行如权利要求1-8任一项所述的增量建图方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010768085.3A CN112116656A (zh) | 2020-08-03 | 2020-08-03 | 同步定位与地图构建slam中的增量建图方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010768085.3A CN112116656A (zh) | 2020-08-03 | 2020-08-03 | 同步定位与地图构建slam中的增量建图方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112116656A true CN112116656A (zh) | 2020-12-22 |
Family
ID=73799143
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010768085.3A Pending CN112116656A (zh) | 2020-08-03 | 2020-08-03 | 同步定位与地图构建slam中的增量建图方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112116656A (zh) |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107403163A (zh) * | 2017-07-31 | 2017-11-28 | 武汉大学 | 一种基于深度学习的激光slam闭环检测方法 |
CN107907124A (zh) * | 2017-09-30 | 2018-04-13 | 杭州迦智科技有限公司 | 基于场景重识的定位方法、电子设备、存储介质、系统 |
CN108181636A (zh) * | 2018-01-12 | 2018-06-19 | 中国矿业大学 | 石化工厂巡检机器人环境建模与地图构建装置和方法 |
CN108759844A (zh) * | 2018-06-07 | 2018-11-06 | 科沃斯商用机器人有限公司 | 机器人重定位与环境地图构建方法、机器人及存储介质 |
US20190043203A1 (en) * | 2018-01-12 | 2019-02-07 | Intel Corporation | Method and system of recurrent semantic segmentation for image processing |
CN109658445A (zh) * | 2018-12-14 | 2019-04-19 | 北京旷视科技有限公司 | 网络训练方法、增量建图方法、定位方法、装置及设备 |
CN110068330A (zh) * | 2019-01-16 | 2019-07-30 | 上海交通大学 | 基于arma模型实现的机器人的自主定位方法 |
CN110174894A (zh) * | 2019-05-27 | 2019-08-27 | 小狗电器互联网科技(北京)股份有限公司 | 机器人及其重定位方法 |
CN110274597A (zh) * | 2019-06-13 | 2019-09-24 | 大连理工大学 | 一种解决室内机器人任意点启动时“粒子绑架”问题的方法 |
WO2019192172A1 (zh) * | 2018-04-04 | 2019-10-10 | 歌尔股份有限公司 | 一种姿态预测方法、装置和电子设备 |
CN110471422A (zh) * | 2019-08-29 | 2019-11-19 | 南京理工大学 | 智能轮椅的障碍物检测与自主避障方法 |
CN110544307A (zh) * | 2019-08-29 | 2019-12-06 | 广州高新兴机器人有限公司 | 基于卷积神经网络的语义地图构建方法及计算机存储介质 |
CN111076733A (zh) * | 2019-12-10 | 2020-04-28 | 亿嘉和科技股份有限公司 | 一种基于视觉与激光slam的机器人室内建图方法及系统 |
CN111145251A (zh) * | 2018-11-02 | 2020-05-12 | 深圳市优必选科技有限公司 | 一种机器人及其同步定位与建图方法和计算机存储设备 |
CN111402328A (zh) * | 2020-03-17 | 2020-07-10 | 北京图森智途科技有限公司 | 一种基于激光里程计的位姿计算方法及装置 |
CN111427061A (zh) * | 2020-06-15 | 2020-07-17 | 北京云迹科技有限公司 | 一种机器人建图方法、装置,机器人及存储介质 |
-
2020
- 2020-08-03 CN CN202010768085.3A patent/CN112116656A/zh active Pending
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107403163A (zh) * | 2017-07-31 | 2017-11-28 | 武汉大学 | 一种基于深度学习的激光slam闭环检测方法 |
CN107907124A (zh) * | 2017-09-30 | 2018-04-13 | 杭州迦智科技有限公司 | 基于场景重识的定位方法、电子设备、存储介质、系统 |
CN108181636A (zh) * | 2018-01-12 | 2018-06-19 | 中国矿业大学 | 石化工厂巡检机器人环境建模与地图构建装置和方法 |
US20190043203A1 (en) * | 2018-01-12 | 2019-02-07 | Intel Corporation | Method and system of recurrent semantic segmentation for image processing |
WO2019192172A1 (zh) * | 2018-04-04 | 2019-10-10 | 歌尔股份有限公司 | 一种姿态预测方法、装置和电子设备 |
CN108759844A (zh) * | 2018-06-07 | 2018-11-06 | 科沃斯商用机器人有限公司 | 机器人重定位与环境地图构建方法、机器人及存储介质 |
CN111145251A (zh) * | 2018-11-02 | 2020-05-12 | 深圳市优必选科技有限公司 | 一种机器人及其同步定位与建图方法和计算机存储设备 |
CN109658445A (zh) * | 2018-12-14 | 2019-04-19 | 北京旷视科技有限公司 | 网络训练方法、增量建图方法、定位方法、装置及设备 |
CN110068330A (zh) * | 2019-01-16 | 2019-07-30 | 上海交通大学 | 基于arma模型实现的机器人的自主定位方法 |
CN110174894A (zh) * | 2019-05-27 | 2019-08-27 | 小狗电器互联网科技(北京)股份有限公司 | 机器人及其重定位方法 |
CN110274597A (zh) * | 2019-06-13 | 2019-09-24 | 大连理工大学 | 一种解决室内机器人任意点启动时“粒子绑架”问题的方法 |
CN110544307A (zh) * | 2019-08-29 | 2019-12-06 | 广州高新兴机器人有限公司 | 基于卷积神经网络的语义地图构建方法及计算机存储介质 |
CN110471422A (zh) * | 2019-08-29 | 2019-11-19 | 南京理工大学 | 智能轮椅的障碍物检测与自主避障方法 |
CN111076733A (zh) * | 2019-12-10 | 2020-04-28 | 亿嘉和科技股份有限公司 | 一种基于视觉与激光slam的机器人室内建图方法及系统 |
CN111402328A (zh) * | 2020-03-17 | 2020-07-10 | 北京图森智途科技有限公司 | 一种基于激光里程计的位姿计算方法及装置 |
CN111427061A (zh) * | 2020-06-15 | 2020-07-17 | 北京云迹科技有限公司 | 一种机器人建图方法、装置,机器人及存储介质 |
Non-Patent Citations (4)
Title |
---|
QING-LING LI 等: "NeuralnetworkbasedFastSLAMforautonomousrobots in unknownenvironments", 《ELSEVIER》 * |
XIEYUANLI CHEN 等: "SuMa++: Efficient LiDAR-based Semantic SLAM", 《2019 IEEE/RSJ INTERNATIONAL CONFERENCE ON INTELLIGENT ROBOTS AND SYSTEMS (IROS)》 * |
一树荼蘼: "占据栅格地图(Occupancy Grid Map)", 《HTTPS://BLOG.CSDN.NET/DGREH/ARTICLE/DETAILS/83064564/》, pages 4 - 6 * |
曲丽萍: "移动机器人同步定位与地图构建关键技术的研究", 《万方数据》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110009718B (zh) | 一种三维高精度地图生成方法及装置 | |
CN110111345B (zh) | 一种基于注意力网络的3d点云分割方法 | |
CN111044570A (zh) | 电力设备的缺陷识别及预警方法、装置及计算机设备 | |
Li et al. | Automatic bridge crack identification from concrete surface using ResNeXt with postprocessing | |
CN112240772B (zh) | 一种车道线生成方法及装置 | |
Noichl et al. | " BIM-to-Scan" for Scan-to-BIM: Generating Realistic Synthetic Ground Truth Point Clouds based on Industrial 3D Models | |
CN115830297A (zh) | 一种遥感影像变化检测类样本库的处理方法 | |
CN115439621A (zh) | 一种煤矿井下巡检机器人三维地图重建及目标检测方法 | |
CN112733971B (zh) | 扫描设备的位姿确定方法、装置、设备及存储介质 | |
CN106909935A (zh) | 一种目标跟踪方法及装置 | |
CN113902793A (zh) | 基于单视觉遥感影像端到端建筑物高度预测方法、系统和电子设备 | |
CN112116656A (zh) | 同步定位与地图构建slam中的增量建图方法和装置 | |
CN108364289A (zh) | Ivoct图像易损斑块自动检测方法 | |
Guo et al. | A scalable method to construct compact road networks from GPS trajectories | |
Kurdthongmee et al. | A framework to estimate the key point within an object based on a deep learning object detection | |
CN116861262A (zh) | 一种感知模型训练方法、装置及电子设备和存储介质 | |
CN115494533A (zh) | 车辆定位方法、装置、存储介质及定位系统 | |
CN112749844A (zh) | 基于人工智能的产业规划方法、装置、存储介质、电子设备 | |
CN113724383A (zh) | 机器人拓扑地图生成系统、方法、计算机设备及存储介质 | |
CN112069445A (zh) | 一种2d slam算法评估及量化方法 | |
Bohari et al. | Residential property valuation using GIS | |
CN112327337A (zh) | 路口重建方法、装置、设备及存储介质 | |
Mansour et al. | Hierarchical SVM for Semantic Segmentation of 3D Point Clouds for Infrastructure Scenes | |
Dong et al. | HotBEV: Hardware-oriented Transformer-based Multi-View 3D Detector for BEV Perception | |
CN115546780B (zh) | 车牌识别方法、模型及装置 |
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 |