CN114612780A - 一种多地图切换slam建图方法 - Google Patents
一种多地图切换slam建图方法 Download PDFInfo
- Publication number
- CN114612780A CN114612780A CN202210249229.3A CN202210249229A CN114612780A CN 114612780 A CN114612780 A CN 114612780A CN 202210249229 A CN202210249229 A CN 202210249229A CN 114612780 A CN114612780 A CN 114612780A
- Authority
- CN
- China
- Prior art keywords
- map
- image
- data
- sub
- acquired
- 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 60
- 238000000034 method Methods 0.000 title claims abstract description 57
- 230000000007 visual effect Effects 0.000 claims abstract description 89
- 230000004927 fusion Effects 0.000 claims abstract description 43
- 238000003062 neural network model Methods 0.000 claims abstract description 43
- 238000005457 optimization Methods 0.000 claims description 18
- 238000012545 processing Methods 0.000 claims description 16
- 238000012549 training Methods 0.000 claims description 13
- 230000009467 reduction Effects 0.000 claims description 9
- 238000001514 detection method Methods 0.000 claims description 7
- 238000000605 extraction Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 description 16
- 238000005259 measurement Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 238000010276 construction Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000001914 filtration Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000005314 correlation function Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000010408 sweeping Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/583—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
-
- 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
-
- 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/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4038—Image mosaicing, e.g. composing plane images from plane sub-images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/521—Depth or shape recovery from laser ranging, e.g. using interferometry; from the projection of structured light
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/32—Indexing scheme for image data processing or generation, in general involving image mosaicing
-
- 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/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mathematical Physics (AREA)
- Molecular Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Library & Information Science (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Evolutionary Biology (AREA)
- Databases & Information Systems (AREA)
- Optics & Photonics (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本申请提供了一种多地图切换SLAM建图方法,该方法包括:基于激光点云扫描匹配算法,根据第一融合数据,对预先获取的多个子区域中每个子区域进行SLAM建图,得到第一地图;其中,第一地图为局部区域对应的地图,局部区域有多个;第一融合数据为多个传感器采集得到的每个子区域的二维激光雷达数据和每个子区域的三维点云数据进行融合得到;然后,根据多个第一地图之间的重叠区域对应的视觉图像,基于预设的图像匹配方法,对第一地图进行拼接,得到第二地图;最后,根据第二地图中各个位置与传感器采集的视觉图像之间的映射关系,基于深度神经网络模型,构建图像检索数据库,以在第二地图范围内对多个第一地图进行切换。
Description
技术领域
本申请涉及机器人自主导航技术领域,特别涉及一种多地图切换SLAM建图方法。
背景技术
随着移动机器人技术的不断发展,在实际应用中,对移动机器人的自主移动能力以及对场景信息的描述能力提出了越来越高的要求。同步定位与建图(SimultaneousLocalization and Mapping,SLAM)技术,尤其是基于二维激光雷达的SLAM技术当前已经在扫地机器人、巡检机器人等多种类型上实现实际应用,但还存在一定的局限性,例如,当场景较大时,所构建地图容易出现偏差,造成定位失效、以及对于多楼层或多空间环境,无法实现复杂场景下的地图构建以及定位。
因此,需要提供一种针对上述现有技术不足的改进技术方案。
发明内容
本申请的目的在于提供一种多地图切换SLAM建图方法,以解决或缓解上述现有技术中存在的问题。
为了实现上述目的,本申请提供如下技术方案:
本申请提供了一种多地图切换SLAM建图方法,包括:
基于激光点云扫描匹配算法,根据第一融合数据,对预先获取的多个子区域中每个子区域进行SLAM建图,得到第一地图;其中,所述第一地图为局部区域对应的地图,所述局部区域有多个,每一个所述局部区域由多个子区域拼接得到;所述第一融合数据为多个传感器采集得到的每个所述子区域的二维激光雷达数据和每个所述子区域的三维点云数据进行融合得到;
根据多个所述第一地图之间的重叠区域对应的视觉图像,基于预设的图像匹配方法,对所述第一地图进行拼接,得到第二地图;
根据所述第二地图中各个位置与所述传感器采集的视觉图像之间的映射关系,基于深度神经网络模型,构建图像检索数据库,以在所述第二地图范围内对多个所述第一地图进行切换。
优选地,所述基于激光点云扫描匹配算法,根据第一融合数据,对每个所述子区域进行SLAM建图,得到第一地图,具体为:
基于预设的数据融合模型,对所述子区域内获取的二维数据和三维点云数据进行数据融合,得到第一融合数据;
基于非线性最小二乘模型,根据位姿初始值,对第一融合数据进行扫描匹配,得到所述子区域的子图;
对多个所述子图进行拼接,得到所述第一地图。
优选地,所述对多个所述子图进行拼接,得到所述第一地图,具体为:
基于非线性最小二乘模型,对每个所述子图进行局部优化;
基于回环检测,对多个所述子图进行全局优化,得到第一地图。
优选地,所述对第一融合数据进行扫描匹配之后,还包括:
根据扫描匹配得到的当前位置的匹配位姿,基于时间插值就近原则,构建所述匹配位姿与所述传感器采集的视觉图像之间的映射关系。
优选地,所述根据多个所述第一地图之间的重叠区域对应的视觉图像,基于预设的图像匹配方法,对所述第一地图进行拼接,得到第二地图,具体为:
根据所述视觉图像,基于ORB算法,对所述重叠区域对应的视觉图像进行特征提取,得到重叠区域特征图;
根据重叠区域特征图,基于对极几何方法对所述重叠区域中的位姿进行解算,得到解算结果;
根据所述解算结果,基于地图扫描匹配,对第一地图进行拼接,得到所述第二地图。
优选地,所述根据所述第二地图中各个位置与所述传感器采集的视觉图像之间的映射关系,基于深度神经网络模型,构建图像检索数据库,以在所述第二地图范围内对多个所述第一地图进行切换,具体为:
根据所述第二地图中各个位置与所述传感器采集的视觉图像,对所述深度神经网络模型进行训练,得到训练后的深度神经网络模型;
基于训练后的深度神经网络模型,计算得到所述视觉图像对应的方向梯度直方图描述子;
将所述视觉图像、所述视觉图像对应的方向梯度直方图描述子存储到数据库中,得到所述图像检索数据库;
根据所述图像检索数据库中所述视觉图像与实时采集得到的新的图像之间的相似度,在所述第二地图范围内对多个所述第一地图进行切换。
优选地,所述根据所述第二地图中各个位置与所述传感器采集的视觉图像,对所述深度神经网络模型进行训练,得到训练后的深度神经网络模型,具体为:
对所述视觉图像进行降维处理,得到所述视觉图像与降维处理后的图像组成的图像对;
以所述图像对为训练数据,对深度神经网络模型进行训练,得到训练后的深度神经网络模型。
优选地,所述基于训练后的深度神经网络模型,计算得到所述视觉图像对应的方向梯度直方图描述子,具体为:
基于训练后的深度神经网络模型,得到每个所述图像对对应的方向梯度直方图描述子;
对应地,
所述将所述视觉图像、所述视觉图像对应的方向梯度直方图描述子存储到数据库中,得到所述图像检索数据库,具体为:
将所述视觉图像、所述降维处理后的图像、所述每个所述图像对对应的方向梯度直方图描述子存储到数据库中,得到所述图像检索数据库。
优选地,所述根据所述图像检索数据库中所述视觉图像与实时采集得到的新的图像之间的相似度,在所述第二地图范围内对多个所述第一地图进行切换,具体为:
根据所述图像检索数据库中每个所述图像对对应的方向梯度直方图描述子与所述实时采集得到的新的图像对应的方向梯度直方图描述子,计算所述图像对与所述实时采集得到的新的图像之间的相似度,以在所述第二地图范围内对多个所述第一地图进行切换。
优选地,所述传感器至少包括:激光雷达、视觉相机。
有益效果:
本申请中,基于激光点云扫描匹配算法,根据第一融合数据,对预先获取的多个子区域中每个子区域进行SLAM建图,得到第一地图;其中,所述第一地图为局部区域对应的地图,所述局部区域有多个,每一个所述局部区域由多个子区域拼接得到;所述第一融合数据为多个传感器采集得到的每个所述子区域的二维激光雷达数据和每个所述子区域的三维点云数据进行融合得到;然后,根据多个所述第一地图之间的重叠区域对应的视觉图像,基于预设的图像匹配方法,对所述第一地图进行拼接,得到第二地图;最后,根据所述第二地图中各个位置与所述传感器采集的视觉图像之间的映射关系,基于深度神经网络模型,构建图像检索数据库,以在所述第二地图范围内对多个所述第一地图进行切换。如此,能够显著提升在大场景空间或多楼层复杂空间内的机器人定位精度,并在多个不同空间内部实现同步定位以及地图场景关联功能,该SLAM建图方法具有覆盖范围广、定位精度高以及实用性强、简单易行等优点,具有良好的市场前景。
附图说明
构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。其中:
图1为根据本申请的一些实施例提供的多地图切换SLAM建图方法的流程示意图;
图2为根据本申请的一些实施例提供的对三维点云数据进行高度滤波处理的实施示意图;
图3为根据本申请的一些实施例提供的二维数据与三维点云数据融合的原理示意图;
图4为根据本申请的一些实施例提供的对子图进行全局优化的原理示意图;
图5为根据本申请的一些实施例提供的机器人的位姿与视觉图像关联的原理示意图;
图6为根据本申请的一些实施例提供的多个局部区域对应的地图拼接得到的第二地图的效果示意图。
具体实施方式
下面将参考附图并结合实施例来详细说明本申请。各个示例通过本申请的解释的方式提供而非限制本申请。实际上,本领域的技术人员将清楚,在不脱离本申请的范围或精神的情况下,可在本申请中进行修改和变型。例如,示为或描述为一个实施例的一部分的特征可用于另一个实施例,以产生又一个实施例。因此,所期望的是,本申请包含归入所附权利要求及其等同物的范围内的此类修改和变型。
图1为根据本申请的一些实施例提供的多地图切换SLAM建图方法的流程示意图;如图1所示,该方法包括:
步骤S101、基于激光点云扫描匹配算法,根据第一融合数据,对预先获取的多个子区域中每个子区域进行SLAM建图,得到第一地图;其中,所述第一地图为局部区域对应的地图,所述局部区域有多个,每一个所述局部区域包括多个子区域;所述第一融合数据为多个传感器采集得到的每个所述子区域的二维激光雷达数据和每个所述子区域的三维点云数据进行融合得到。
本申请实施例中,移动机器人在较大场景中自主移动,该场景可以为用于办公的较大房间、走廊等复杂环境信息,也可以为多楼层或者多空间环境。需要说明的是,移动机器人可以为不同类型的机器人,例如平台不同。
现有技术中,基于二维激光雷达构建的SLAM技术具有一定局限性,其对空间中的障碍物如桌椅等无法进行准确描述,只能扫描得到单一限定高度下的障碍物距离信息,在典型办公场景中,对桌椅等常见物体通过智能扫描出椅腿、桌腿等障碍点,在后续使用该地图进行导航过程中极易产生碰撞等问题。目前,常用解决办法为:在构建完成地图后,人工手动添加障碍物或边界,使机器人等移动载体在后续实际运行过程中规避由于二维激光雷达扫描局限性带来的地图场景建模不准确。另一方面,由于二维激光雷达仅包含单一平面信息,其探测距离受雷达探测范围限制,且不包含场景纹理信息,难以构建回环检测。因此,在进行大场景地图构建时,随着运行时间增长,地图范围扩大,而每次仅考虑相邻时刻的数据关联,之前产生的误差会不可避免的累积到下一时刻,使得定位建图系统出现累计误差,在没有回环检测进行全局优化的情况下,构建的地图没有全局一致性,易产生重影、漂移等问题,大场景地图构建质量难以保证,从而在较大场景中进行SLAM建图时,一方面难以实现复杂场景下的地图构建,另一方面,所构建的地图容易出现偏差,造成移动机器人定位失效。
本申请实施例中,在面对较大场景或者复杂场景进行SLAM建图时,首先,按照预设的规则,将较大场景或者复杂场景划分为多个局部区域,然后,对多个局部区域进一步划分,得到每个局部区域对应的多个子区域,最后,分别对每个子区域进行SLAM建图,并将多个子区域的地图拼接得到局部区域地图。其中,所预设的规则可以根据场景的大小或者场景特性,基于实际使用的需求进行确定,例如,可以按照网格对场景进行划分,或者,按照场景中障碍物的分布进行划分。通过将较大场景或者复杂场景进行区域划分,提高SLAM建图的效率和SLAM建图精度。
在一些可选的实施例中,传感器至少包括:激光雷达、视觉相机。进一步地,传感器还可以包括惯性测量单元或里程计。其中,激光雷达可以为二维激光雷达,用于对机器人所移动的场景信息进行扫描,得到二维激光雷达数据;视觉相机用于获取深度点云数据和机器人行进轨迹中对应的视觉图像,其中,深度点云数据为三维点云数据,用于与二维激光雷达数据融合,以实现高精度SLAM建图;惯性测量单元、里程计用于获取机器人移动过程中的位置、姿态信息。
可以理解地,根据所使用的机器人的平台特性,多个传感器可以有不同的配置方案,例如传感器包含激光雷达、视觉相机,以及,惯性测量单元与里程计中的一个,也可以同时包含惯性测量单元和里程计。
具体实施时,首先将多个传感器在各类型移动机器人平台上进行部署,使得多个传感器之间的位置、姿态关系在同一机器人平台上相对固定,然后确定各个传感器与机器人本体之间的相对位置、姿态关系。多个传感器之间通讯连接,获取的数据可以通过已知的相对位置、姿态关系进行空间同步,并使用导航处理计算机对多传感器获取的数据进行时间同步与处理。
相关技术中,由于二维激光雷达只能扫描单一平面内的物体,对一些桌椅等物体无法进行有效识别,导致错误碰撞等许多问题。而视觉相机由于其相对低廉的价格以及获取信息的丰富性,被越来越多的用于移动机器人的导航定位领域,但由于其本身易受光照影响、动态物体等多重限制,无法完全满足实际需求。
在一些可选实施例中,基于激光点云扫描匹配算法,根据第一融合数据,对每个所述子区域进行SLAM建图,得到第一地图,具体为:基于预设的数据融合模型,对所述子区域内获取的二维数据和三维点云数据进行数据融合,得到第一融合数据;基于非线性最小二乘模型,根据位姿初始值,对第一融合数据进行扫描匹配,得到所述子区域的子图;对多个所述子图进行拼接,得到所述第一地图。
本申请实施例中,基于预设的数据融合模型,对子区域内通过激光雷达获取的二维激光雷达数据和通过深度相机获取的三维点云数据进行数据融合,得到第一融合数据。基于多传感器数据融合,结合二维激光雷达以及深度相机(RGB-D)两种传感器的优点,通过数据融合在基于非线性优化的二维激光SLAM地图构建数据处理过程中,加入深度相机获取的三维点云数据,从而提升二维激光SLAM建图对三维立体场景信息的描述能力,以较小的计算量实现三维场景信息的构建,并提升SLAM中的建图精度以及场景识别能力,极大提升当前二维SLAM技术的实用性。
由于深度相机的视角范围的限制,使其获取的数据中会误将扫描到的地面点作为障碍物。本申请实施例中,在对二维激光雷达数据和三维点云数据进行数据融合之前,先对深度相机生成的三维点云数据进行高度滤波处理,即通过高度滤波器,去除深度相机生成的三维点云数据中的地面点,高度滤波的原理如图2所示。
深度相机所获取的三维点云数据为三维数据,而激光雷达扫描得到的数据为二维数据,且,二维数据与三维点云数据之间的坐标系不同,为了将二维数据与三维点云数据进行融合,需要进行坐标系转换,即通过传感器的位置、姿态之间的坐标对应关系,将深度相机获取的三维点云数据从深度相机坐标系转换到激光雷达坐标系。其中,从深度相机坐标系转换到激光雷达坐标系的坐标转换表达式为:
X=Rp+T
式中,R为深度相机与移动机器人的基座之间的坐标转换矩阵,T为深度相机与移动机器人的基座之间两个坐标系的平移量。
图3为根据本申请的一些实施例提供的二维数据与三维点云数据融合的原理示意图,如图3所示,△表示机器人的位置,☆表示深度相机获取的三维点云数据中的扫描点,○表示激光雷达获取的二维数据中的扫描点,×表示删除的扫描点。在对激光雷达获取的二维激光雷达数据与深度相机获取的三维点云数据进行数据融合时,分别计算深度相机获取的扫描点与机器人所在位置之间的距离,以及,激光雷达获取的扫描点与机器人所在位置之间的距离,然后将深度相机获取的扫描点与机器人所在位置之间的距离与激光雷达获取的扫描点与机器人所在位置之间的距离进行比对,保留距离较小的扫描点,将距离较大的扫描点删除,从而得到二维数据与三维点云数据的融合数据,即第一融合数据。其中,预设的数据融合模型为:
其中,ρ1和ρ2分别为三维点云数据或者二维数据的扫描点中任一个,poses是机器人的位置,dist()为两点之间的距离函数。
通过上述融合模型对三维点云数据与二维数据进行融合,保证了机器人行进过程中避障的安全性,同时,提高了SLAM建图对空间障碍物信息描述的准确性。
在另一可选实施例中,对三维点云数据与二维数据进行融合之后、对第一融合数据进行扫描匹配之前,还包括对激光雷达扫描数据进行预处理的过程,具体为:针对机器人行进过程中实时扫描得到的二维激光雷达数据,删除超出激光雷达的有效量程的数据;根据里程计或惯性测量单元采集的数据,对激光雷达采集的数据进行插值,以修正激光数据因为机器人移动产生的数据畸变。
在一具体应用中,基于非线性最小二乘模型,根据位姿初始值,对第一融合数据进行扫描匹配,得到所述子区域的子图。其中,位姿初始值可以通过里程计或惯性测量单元得到。在SLAM建图过程中,通过移动机器人的行进,由多个传感器获取各种数据,例如激光雷达或者深度相机所采集的数据由时间序列中的多帧数据组成;另一方面,根据里程计或惯性测量单元获取的数据计算机器人行进过程中的位置、姿态信息。实际计算时,将里程计或惯性测量单元在激光雷达采集两帧数据的时间间隔内的平移与旋转变化量,作为移动机器人的位置、姿态变化的初值,即位姿初始值(也称为先验位姿)。根据位姿初始值,基于激光点云扫描匹配算法,在每个子区域内机器人行进过程中对第一融合数据进行扫描匹配,即同时定位与地图构建(SLAM建图),此为前端处理过程。具体来说,机器人行进过程中各个位置采集到的数据为时间序列的二维激光雷达扫描数据和深度相机采集的时间序列三维点云数据,表现为多个数据帧,根据激光雷达扫描到的数据的位置,SLAM建图将多个数据帧进行位置匹配并拼接后组合为多个子图(submap)。当激光雷达扫描到的数据位于当前子图范围内,则根据当前扫描到的数据对子图进行更新,当激光雷达数据位于当前子图边缘或超出当前子图的范围,则构建新的子图,并在子图内部对当前扫描点基于非线性最小二乘模型进行局部优化(即后端优化),如此,完成每个子区域对应的地图构建,得到第一地图。
本申请实施例中,基于非线性最小二乘模型对所构建的子图进行局部优化,其中,子图的存储格式为概率网格(probability grids),概率网格中每个网格中心之间的距离为r,每个网格赋予一个值,用pixel表示,该值代表对应的网格被占用的概率。这里,网格被占用包括两种情况:一种是网格位于激光雷达扫描的边缘,称为hits,另一种是剩余激光有通过的范围,称为misses。在当前的子图中,对新采集的扫描点进行匹配,其被构造为一个非线性最小二乘模型,该模型的优化目标为:寻找机器人的K个位置(pose),使得各个位置之间的第一融合数据最匹配,从而确保在子图范围内的局部小范围内得到高精度的SLAM建图结果,并通过限制子图内激光雷达扫描处理的数据量,有效提高实时性,实现高精度制图同时能够实时、快速制图。
在另一些可选实施例中,基于非线性最小二乘模型,对每个子图进行局部优化;基于回环检测,对多个子图进行全局优化,得到第一地图。通过对各个子图先进行子图内局部优化,然后进行全局优化,提升各个子图之间的关联准确性,并形成高精度地图。
具体实施时,由于局部优化的误差持续积累,出现误差漂移的情况越来越严重,如果缺乏有效的回环优化,由于累积偏差太大使得SLAM建图结果变得不可用,因此通过使用回环检测(loop closure),建立全局优化。图4为根据本申请的一些实施例提供的对子图进行全局优化的原理示意图;如图4所示,虚线为机器人行进路线,机器人沿着该路线行进,并采集数据构建子图,将构建得到的多个子图存储时,子图之间易出现错位,同时机器人移动的轨迹关联性不强,这里,需要结合预先获取的测量数据,对全部子图和机器人的移动轨迹进行全局优化。其中,预先获取的测量数据可以通过人工测量获取。位姿图中的位姿包含两部分,一类是子图的基准位姿,另一类为激光雷达扫描得到的二维数据中的关键帧的扫描位姿。对这两类位姿基于非线性最小二乘模型同时进行优化,其中,非线性最小二乘模型可以用如下公式表示:
其中,Ξm为子图的基准位姿,m表示子图的个数,m取正整数;Ξs为激光雷达扫描得到的二维数据中的关键帧的扫描位姿, s表示关键帧的个数,s取正整数;ρ为丢失函数,用于防止噪声点的影响;是残差函数,表示非线性最小二乘模型; 为该优化中子图m与关键帧s的相对位移量;为子图m与关键帧s的角度差;表示子图的位姿;表示关键帧的位姿;ξij表示通过前端匹配的方式得到的子图i与关键帧j之间相对位姿,i、j为正整数;∑ij表示相对位姿的协方差。
在一些可选实施例中,对第一融合数据进行扫描匹配之后,还包括:根据扫描匹配得到的当前位置的匹配位姿,基于时间插值就近原则,构建所述匹配位姿与所述传感器采集的视觉图像之间的映射关系。
具体实施时,在SLAM建图过程中,机器人沿着移动轨迹行进,深度相机在采集三维点云数据的同时采集当前位置的视觉图像,根据SLAM建图时扫描匹配得到的当前位置的匹配位姿,基于时间插值就近原则,通过时间同步将视觉图像与匹配位姿进行关联。其中,当前位置的匹配位姿为对子图进行全局优化后得到的各个激光扫描点的位姿。
步骤S102、根据多个所述第一地图之间的重叠区域对应的视觉图像,基于预设的图像匹配方法,对所述第一地图进行拼接,得到第二地图。
在一些可选实施例中,所述根据多个所述第一地图之间的重叠区域对应的视觉图像,基于预设的图像匹配方法,对所述第一地图进行拼接,得到第二地图,具体为:根据所述视觉图像,基于ORB算法,对所述重叠区域对应的视觉图像进行特征提取,得到重叠区域特征图;根据重叠区域特征图,基于对极几何方法对所述重叠区域中的位姿进行解算,得到解算结果;根据所述解算结果,基于地图扫描匹配,对第一地图进行拼接,得到所述第二地图。
在具体实施时,根据前述的步骤对多个局部区域进行分别建图,得到每个局部区域对应的第一地图。当需要将每个局部区域对应的第一地图进行拼接,得到覆盖较大场景或者复杂场景的整体地图(第二地图)时,根据多个局部区域对应的地图之间的重叠区域对应的视觉图像,确定各个局部区域对应的地图之间的相对关系。其中,对重叠区域对应的视觉图像进行匹配时,根据视觉图像,基于ORB算法对视觉图像进行特征提取,得到重叠区域特征图,然后根据重叠区域特征图,基于对极几何方法对重叠区域的位姿进行解算,得到解算结果,最后,根据解算结果,将各个局部区域对应的地图基于地图扫描匹配进行拼接,得到覆盖较大场景或者复杂场景的整体地图,即第二地图,其效果示意图如图5所示,最终得到的总体地图如图6所示。
步骤S103、根据所述第二地图中各个位置与所述传感器采集的视觉图像之间的映射关系,基于深度神经网络模型,构建图像检索数据库,以在所述第二地图范围内对多个所述第一地图进行切换。
在一些可选实施例中,所述根据所述第二地图中各个位置与所述传感器采集的视觉图像之间的映射关系,基于深度神经网络模型,构建图像检索数据库,以在所述第二地图范围内对多个所述第一地图进行切换,具体为:根据所述第二地图中各个位置与所述传感器采集的视觉图像,对所述深度神经网络模型进行训练,得到训练后的深度神经网络模型;基于训练后的深度神经网络模型,计算得到所述视觉图像对应的方向梯度直方图描述子;将所述视觉图像、所述视觉图像对应的方向梯度直方图描述子存储到数据库中,得到所述图像检索数据库;根据所述图像检索数据库中所述视觉图像与实时采集得到的新的图像之间的相似度,在所述第二地图范围内对多个所述第一地图进行切换。
在另一可选实施例中,所述根据所述第二地图中各个位置与所述传感器采集的视觉图像,对所述深度神经网络模型进行训练,得到训练后的深度神经网络模型,具体为:对所述视觉图像进行降维处理,得到所述视觉图像与降维处理后的图像组成的图像对;以所述图像对为训练数据,对深度神经网络模型进行训练,得到训练后的深度神经网络模型。
需要说明的是,在SLAM建图的同时,构建匹配位姿与传感器采集的视觉图像之间的映射关系,其中,将所有采集到的视觉图像作为图像检索库的初始图像,并对这些视觉图像进行随机投影变换,生成视觉图像对应的新图片,将这些图片缩放为120像素×160像素的图像对,即降维处理,并依次进行编号。如此,不仅确定了深度神经网络模型训练的维数,且,减少数据处理量,同时也便于检索回溯。
在另一可选实施例中,所述基于训练后的深度神经网络模型,计算得到所述视觉图像对应的方向梯度直方图描述子,具体为:基于训练后的深度神经网络模型,得到每个所述图像对对应的方向梯度直方图描述子;对应地,所述将所述视觉图像、所述视觉图像对应的方向梯度直方图描述子存储到数据库中,得到所述图像检索数据库,具体为:将所述视觉图像、所述降维处理后的图像、所述每个所述图像对对应的方向梯度直方图描述子存储到数据库中,得到所述图像检索数据库。
将降维处理后的图像对作为训练数据,对深度神经网络模型进行训练,得到训练后的深度神经网络模型。本申请实施例中,深度神经网络模型具体为基于DeepLCD框架,通过创建自动编码结构,采用无监督深度神经网络方法,对该DeepLCD框架的深度神经网络模型进行训练,计算每个视觉图像的方向梯度直方图(Histogram of Oriented Gradient,简称HOG)描述子,并存储于图像检索库中,其中,方向梯度直方图描述子用于机器人移动时定位导航过程中计算与实时图像之间的相似度评分,通过图像相似度计算进行场景识别,实现地图选取以及定位初始化及偏离矫正。
在一些可选实施例中,所述根据所述图像检索数据库中所述视觉图像与实时采集得到的新的图像之间的相似度,在所述第二地图范围内对多个所述第一地图进行切换,具体为:根据所述图像检索数据库中每个所述图像对对应的方向梯度直方图描述子与所述实时采集得到的新的图像对应的方向梯度直方图描述子,计算所述图像对与所述实时采集得到的新的图像之间的相似度,以在所述第二地图范围内对多个所述第一地图进行切换。
在具体实施时,机器人经过SLAM建图,得到场景地图,同时,基于深度神经网络模型计算SLAM建图过程中视觉相机采集到的视觉图像的HOG,并将该HOG、视觉图像与位姿之间的关联关系存储到数据库中,得到图像检索数据库。当机器人在场景中移动时,通过调用已训练的深度神经网络模型,对机器人实时采集到的新的图像进行计算,得到新的图像对应的HOG,根据新的图像对应的HOG与图像检索数据库中已有的视觉图像的HOG,计算新的图像与已有视觉图像之间相似度。当相似度大于预设的阈值,则认为机器人当前位置与图像检索数据库中存储的视觉图像所关联的位置为相同位置,根据图像检索数据库中位姿与视觉图像之间的关联关系,对机器人当前的位置进行确定,并根据需要对局部区域的地图进行切换。
综上所述,本申请中,基于激光点云扫描匹配算法,根据第一融合数据,对预先获取的多个子区域中每个子区域进行SLAM建图,得到第一地图;其中,第一融合数据为多个传感器采集得到的每个子区域的二维激光雷达数据和每个子区域的三维点云数据进行融合得到;第一地图为局部区域对应的地图,局部区域有多个,每一个局部区域由多个子区域拼接得到。然后,根据多个第一地图之间的重叠区域对应的视觉图像,基于预设的图像匹配方法,对第一地图进行拼接,得到第二地图。最后,根据第二地图中各个位置与传感器采集的视觉图像之间的映射关系,基于深度神经网络模型,构建图像检索数据库,以在第二地图范围内对多个第一地图进行切换。如此,能够显著提升在大场景空间或多楼层复杂空间内的机器人定位精度,并在多个不同空间内部实现同步定位以及地图场景关联功能,该SLAM建图方法具有覆盖范围广、定位精度高以及实用性强、简单易行等优点,具有良好的市场前景。
以上所述仅为本申请的优选实施例,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种多地图切换SLAM建图方法,其特征在于,包括:
基于激光点云扫描匹配算法,根据第一融合数据,对预先获取的多个子区域中每个子区域进行SLAM建图,得到第一地图;其中,所述第一地图为局部区域对应的地图,所述局部区域有多个,每一个所述局部区域包括多个子区域;所述第一融合数据为多个传感器采集得到的每个所述子区域的二维激光雷达数据和每个所述子区域的三维点云数据进行融合得到;
根据多个所述第一地图之间的重叠区域对应的视觉图像,基于预设的图像匹配方法,对所述第一地图进行拼接,得到第二地图;
根据所述第二地图中各个位置与所述传感器采集的视觉图像之间的映射关系,基于深度神经网络模型,构建图像检索数据库,以在所述第二地图范围内对多个所述第一地图进行切换。
2.根据权利要求1所述的多地图切换SLAM建图方法,其特征在于,所述基于激光点云扫描匹配算法,根据第一融合数据,对每个所述子区域进行SLAM建图,得到第一地图,具体为:
基于预设的数据融合模型,对所述子区域内获取的二维数据和三维点云数据进行数据融合,得到第一融合数据;
基于非线性最小二乘模型,根据位姿初始值,对第一融合数据进行扫描匹配,得到所述子区域的子图;
对多个所述子图进行拼接,得到所述第一地图。
3.根据权利要求2所述的多地图切换SLAM建图方法,其特征在于,所述对多个所述子图进行拼接,得到所述第一地图,具体为:
基于非线性最小二乘模型,对每个所述子图进行局部优化;
基于回环检测,对多个所述子图进行全局优化,得到第一地图。
4.根据权利要求2或3所述的多地图切换SLAM建图方法,其特征在于,所述对第一融合数据进行扫描匹配之后,还包括:
根据扫描匹配得到的当前位置的匹配位姿,基于时间插值就近原则,构建所述匹配位姿与所述传感器采集的视觉图像之间的映射关系。
5.根据权利要求1所述的多地图切换SLAM建图方法,其特征在于,所述根据多个所述第一地图之间的重叠区域对应的视觉图像,基于预设的图像匹配方法,对所述第一地图进行拼接,得到第二地图,具体为:
根据所述视觉图像,基于ORB算法,对所述重叠区域对应的视觉图像进行特征提取,得到重叠区域特征图;
根据重叠区域特征图,基于对极几何方法对所述重叠区域中的位姿进行解算,得到解算结果;
根据所述解算结果,基于地图扫描匹配,对第一地图进行拼接,得到所述第二地图。
6.根据权利要求1所述的多地图切换SLAM建图方法,其特征在于,所述根据所述第二地图中各个位置与所述传感器采集的视觉图像之间的映射关系,基于深度神经网络模型,构建图像检索数据库,以在所述第二地图范围内对多个所述第一地图进行切换,具体为:
根据所述第二地图中各个位置与所述传感器采集的视觉图像,对所述深度神经网络模型进行训练,得到训练后的深度神经网络模型;
基于训练后的深度神经网络模型,计算得到所述视觉图像对应的方向梯度直方图描述子;
将所述视觉图像、所述视觉图像对应的方向梯度直方图描述子存储到数据库中,得到所述图像检索数据库;
根据所述图像检索数据库中所述视觉图像与实时采集得到的新的图像之间的相似度,在所述第二地图范围内对多个所述第一地图进行切换。
7.根据权利要求6所述的多地图切换SLAM建图方法,其特征在于,所述根据所述第二地图中各个位置与所述传感器采集的视觉图像,对所述深度神经网络模型进行训练,得到训练后的深度神经网络模型,具体为:
对所述视觉图像进行降维处理,得到所述视觉图像与降维处理后的图像组成的图像对;
以所述图像对为训练数据,对深度神经网络模型进行训练,得到训练后的深度神经网络模型。
8.根据权利要求7所述的多地图切换SLAM建图方法,其特征在于,所述基于训练后的深度神经网络模型,计算得到所述视觉图像对应的方向梯度直方图描述子,具体为:
基于训练后的深度神经网络模型,得到每个所述图像对对应的方向梯度直方图描述子;
对应地,
所述将所述视觉图像、所述视觉图像对应的方向梯度直方图描述子存储到数据库中,得到所述图像检索数据库,具体为:
将所述视觉图像、所述降维处理后的图像、所述每个所述图像对对应的方向梯度直方图描述子存储到数据库中,得到所述图像检索数据库。
9.根据权利要求8所述的多地图切换SLAM建图方法,其特征在于,所述根据所述图像检索数据库中所述视觉图像与实时采集得到的新的图像之间的相似度,在所述第二地图范围内对多个所述第一地图进行切换,具体为:
根据所述图像检索数据库中每个所述图像对对应的方向梯度直方图描述子与所述实时采集得到的新的图像对应的方向梯度直方图描述子,计算所述图像对与所述实时采集得到的新的图像之间的相似度,以在所述第二地图范围内对多个所述第一地图进行切换。
10.根据权利要求1-9任一所述的多地图切换SLAM建图方法,其特征在于,所述传感器至少包括激光雷达、视觉相机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210249229.3A CN114612780A (zh) | 2022-03-14 | 2022-03-14 | 一种多地图切换slam建图方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210249229.3A CN114612780A (zh) | 2022-03-14 | 2022-03-14 | 一种多地图切换slam建图方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114612780A true CN114612780A (zh) | 2022-06-10 |
Family
ID=81863224
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210249229.3A Pending CN114612780A (zh) | 2022-03-14 | 2022-03-14 | 一种多地图切换slam建图方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114612780A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114863075A (zh) * | 2022-07-05 | 2022-08-05 | 深圳市新天泽消防工程有限公司 | 基于多传感器的消防疏散路径规划方法、装置、设备 |
CN115236644A (zh) * | 2022-07-26 | 2022-10-25 | 广州文远知行科技有限公司 | 一种激光雷达外参标定方法、装置、设备和存储介质 |
CN115797811A (zh) * | 2023-02-07 | 2023-03-14 | 江西农业大学 | 一种基于视觉的农产品检测方法及系统 |
CN116468870A (zh) * | 2023-06-20 | 2023-07-21 | 佛山科学技术学院 | 一种城市道路三维可视化建模方法及系统 |
-
2022
- 2022-03-14 CN CN202210249229.3A patent/CN114612780A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114863075A (zh) * | 2022-07-05 | 2022-08-05 | 深圳市新天泽消防工程有限公司 | 基于多传感器的消防疏散路径规划方法、装置、设备 |
CN114863075B (zh) * | 2022-07-05 | 2022-10-14 | 深圳市新天泽消防工程有限公司 | 基于多传感器的消防疏散路径规划方法、装置、设备 |
CN115236644A (zh) * | 2022-07-26 | 2022-10-25 | 广州文远知行科技有限公司 | 一种激光雷达外参标定方法、装置、设备和存储介质 |
CN115797811A (zh) * | 2023-02-07 | 2023-03-14 | 江西农业大学 | 一种基于视觉的农产品检测方法及系统 |
CN116468870A (zh) * | 2023-06-20 | 2023-07-21 | 佛山科学技术学院 | 一种城市道路三维可视化建模方法及系统 |
CN116468870B (zh) * | 2023-06-20 | 2024-01-23 | 佛山科学技术学院 | 一种城市道路三维可视化建模方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112014857B (zh) | 用于智能巡检的三维激光雷达定位导航方法及巡检机器人 | |
CN114612780A (zh) | 一种多地图切换slam建图方法 | |
CN111220993B (zh) | 目标场景定位方法、装置、计算机设备和存储介质 | |
CN113110457B (zh) | 在室内复杂动态环境中智能机器人的自主覆盖巡检方法 | |
CN108550318B (zh) | 一种构建地图的方法及装置 | |
CN106940186B (zh) | 一种机器人自主定位与导航方法及系统 | |
CN105843223B (zh) | 一种基于空间词袋模型的移动机器人三维建图与避障方法 | |
CN103247040B (zh) | 基于分层拓扑结构的多机器人系统地图拼接方法 | |
CN110703747A (zh) | 一种基于简化广义Voronoi图的机器人自主探索方法 | |
CN115388902B (zh) | 室内定位方法和系统、ar室内定位导航方法和系统 | |
KR20220166779A (ko) | 고정밀 지도의 생산 방법, 장치, 설비 및 컴퓨터 저장 매체 | |
CN113467456A (zh) | 一种未知环境下用于特定目标搜索的路径规划方法 | |
Kim et al. | UAV-UGV cooperative 3D environmental mapping | |
CN115167433B (zh) | 融合全局视觉的机器人自主探索环境信息的方法及系统 | |
CN113720324A (zh) | 一种八叉树地图构建方法及系统 | |
CN111950440A (zh) | 一种识别与定位门的方法、装置及存储介质 | |
Tsai et al. | Dynamic visual understanding of the local environment for an indoor navigating robot | |
CN118752498B (zh) | 一种钢筋绑扎机器人的自主导航方法与系统 | |
CN116380039A (zh) | 一种基于固态激光雷达和点云地图的移动机器人导航系统 | |
CN117970928A (zh) | 基于ros系统多移动机器人协同的路径规划方法 | |
CN114429432B (zh) | 一种多源信息分层融合方法、装置及存储介质 | |
Li et al. | Object-aware view planning for autonomous 3-D model reconstruction of buildings using a mobile robot | |
CN113607161A (zh) | 机器人导航路径宽度获取系统、方法、机器人及存储介质 | |
CN117571002A (zh) | 基于半一致拓扑度量地图的视觉导航方法及系统 | |
CN117707194A (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 |