CN115371663A - 激光建图方法、装置及电子设备、计算机可读存储介质 - Google Patents
激光建图方法、装置及电子设备、计算机可读存储介质 Download PDFInfo
- Publication number
- CN115371663A CN115371663A CN202211012748.4A CN202211012748A CN115371663A CN 115371663 A CN115371663 A CN 115371663A CN 202211012748 A CN202211012748 A CN 202211012748A CN 115371663 A CN115371663 A CN 115371663A
- Authority
- CN
- China
- Prior art keywords
- voxel
- data
- feature
- feature point
- map
- 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
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
- G01C21/3833—Creation or updating of map data characterised by the source of data
- G01C21/3837—Data obtained from a single source
-
- 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/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/28—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
- G01C21/30—Map- or contour-matching
-
- 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/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/28—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
- G01C21/30—Map- or contour-matching
- G01C21/32—Structuring or formatting of map data
-
- 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
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three-dimensional [3D] modelling for computer graphics
- G06T17/005—Tree description, e.g. octree, quadtree
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three-dimensional [3D] modelling for computer graphics
- G06T17/05—Geographic models
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
Landscapes
- Engineering & Computer Science (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Geometry (AREA)
- Automation & Control Theory (AREA)
- Computer Graphics (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Electromagnetism (AREA)
- Optical Radar Systems And Details Thereof (AREA)
Abstract
本申请公开了一种激光建图方法、装置及电子设备、计算机可读存储介质,该方法包括:获取当前帧的激光点云数据,并对当前帧的激光点云数据进行特征提取,得到当前帧的特征点数据;获取体素地图,并将当前帧的特征点数据与体素地图进行匹配,体素地图中的各个体素分别对应同一个特征;根据匹配结果更新体素地图,得到更新后的体素地图;基于更新后的体素地图,利用预设优化算法对待优化位姿数据进行优化,以根据优化后的位姿数据得到激光点云地图。本申请采用特定结构的体素地图,一方面将其应用于前端的匹配算法中加速匹配过程,从而提高了激光建图效率,另一方面将其应用于后端的优化算法中进一步优化位姿,从而提高了激光建图精度。
Description
技术领域
本申请涉及地图构建技术领域,尤其涉及一种激光建图方法、装置及电子设备、计算机可读存储介质。
背景技术
激光SLAM(Simultaneous Localization And Mapping,同步定位与建图)是一种基于激光雷达采集的点云数据实现的建图方案,在无卫星定位信号或者卫星定位信号质量较差等场景中为保证自动驾驶车辆的精准定位提供了重要支撑。
LOAM(Lidar Odometry and Mapping in Real-time,实时激光雷达里程计与建图)是一种常用的激光SLAM方法,基于LOAM的点面特征进行激光雷达里程计建图的算法,在基本不损失精度的情况下,其运行效率比ICP(Iterative Closest Point,迭代最近点)算法和NDT(Normal Distributions Transform,正态分布变换)算法高,所以是目前主流的激光雷达里程计建图方案,其基本思想是采用Scan-to-Map的点面特征匹配方式将点云注册到点云地图中。但是随着时间的增加,其飘移也会逐渐累加。
视觉SLAM中的Bundle Adjustment(光速平差法,简称BA)思想是通过将特征点与像素点进行关联,并设置一个滑动窗口,进而在滑动窗口内优化其重投影误差。然而,由于视觉图像的分辨率很高,所以很容易找到关联点,而激光点云是稀疏的,因此将BundleAdjustment的思想直接应用到激光SLAM中是比较困难的。
发明内容
本申请实施例提供了一种激光建图方法、装置及电子设备、计算机可读存储介质,以提高激光建图效率和建图精度。
本申请实施例采用下述技术方案:
第一方面,本申请实施例提供一种激光建图方法,其中,所述激光建图方法包括:
获取当前帧的激光点云数据,并对所述当前帧的激光点云数据进行特征提取,得到当前帧的特征点数据;
获取体素地图,并将所述当前帧的特征点数据与所述体素地图进行匹配,所述体素地图中的各个体素分别对应同一个特征;
根据匹配结果更新所述体素地图,得到更新后的体素地图;
基于所述更新后的体素地图,利用预设优化算法对待优化位姿数据进行优化,以根据优化后的位姿数据得到激光点云地图。
可选地,所述将所述当前帧的特征点数据与所述体素地图进行匹配包括:
将所述当前帧的特征点数据与所述体素地图进行距离匹配,得到所述当前帧的特征点数据对应的目标体素;
将所述当前帧的特征点数据与所述目标体素进行匹配,得到所述匹配结果。
可选地,所述体素地图为八叉树结构,所述匹配结果包括匹配位姿,所述根据匹配结果更新所述体素地图,得到更新后的体素地图包括:
根据所述匹配位姿,将所述当前帧的特征点数据转换到体素地图坐标系下,得到转换后的特征点数据;
在所述体素地图中搜索所述转换后的特征点数据中的特征点是否位于所述体素地图的八叉树结构的叶子节点中,且与所述叶子节点对应的体素中的特征点属于同一特征;
若所述转换后的特征点数据中的特征点位于所述八叉树结构的叶子节点中,且与所述叶子节点对应的体素中的特征点属于同一特征,则将所述转换后的特征点数据中的特征点加入到所述叶子节点对应的体素中;
否则,则基于所述转换后的特征点数据中的特征点创建新的八叉树结构。
可选地,所述基于所述更新后的体素地图,利用预设优化算法对待优化位姿数据进行优化,以根据优化后的位姿数据得到激光点云地图包括:
确定所述待优化位姿数据的帧数是否达到预设滑动窗口的大小;
在所述待优化位姿数据的帧数达到所述预设滑动窗口的大小的情况下,获取所述预设滑动窗口内的待优化位姿数据;
基于所述更新后的体素地图,利用所述预设优化算法对所述预设滑动窗口内的待优化位姿数据进行优化,得到优化后的位姿数据。
可选地,所述基于所述更新后的体素地图,利用所述预设优化算法对所述预设滑动窗口内的待优化位姿数据进行优化,得到优化后的位姿数据包括:
基于所述更新后的体素地图,利用光束平差法构建非线性优化模型,所述非线性优化模型的待优化项为预设滑动窗口内的待优化位姿数据,所述非线性优化模型的残差项为所述预设滑动窗口对应的距离残差和;
利用所述非线性优化模型对所述预设滑动窗口内的待优化位姿数据进行局部优化,得到所述优化后的位姿数据。
可选地,所述基于所述更新后的体素地图,利用光束平差法构建非线性优化模型包括:
确定所述预设滑动窗口对应的多帧特征点数据,所述多帧特征点数据中分别包括多个特征点;
确定各个特征点对应的目标体素的特征类型;
根据各个特征点对应的目标体素的特征类型,构建各个特征点到对应的目标体素的距离残差;
根据各个特征点到对应的目标体素的距离残差,确定各帧特征点数据对应的距离残差和;
根据各帧特征点数据对应的距离残差和,确定所述预设滑动窗口对应的距离残差和。
可选地,所述特征类型包括线特征和面特征,所述根据各个特征点对应的目标体素的特征类型,构建各个特征点到对应的目标体素的距离残差包括:
若所述目标体素的特征类型为线特征,则根据各个特征点到对应的目标体素的距离构建点到线的距离残差;
若所述目标体素的特征类型为面特征,则根据各个特征点到对应的目标体素的距离构建点到面的距离残差。
第二方面,本申请实施例还提供一种激光建图装置,其中,所述激光建图装置包括:
获取单元,用于获取当前帧的激光点云数据,并对所述当前帧的激光点云数据进行特征提取,得到当前帧的特征点数据;
匹配单元,用于获取体素地图,并将所述当前帧的特征点数据与所述体素地图进行匹配,所述体素地图中的各个体素分别对应同一个特征;
第一更新单元,用于根据匹配结果更新所述体素地图,得到更新后的体素地图;
优化单元,用于基于所述更新后的体素地图,利用预设优化算法对待优化位姿数据进行优化,以根据优化后的位姿数据得到激光点云地图。
第三方面,本申请实施例还提供一种电子设备,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行前述之任一所述激光建图方法。
第四方面,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行前述之任一所述激光建图方法。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:本申请实施例的激光建图方法,先获取当前帧的激光点云数据,并对当前帧的激光点云数据进行特征提取,得到当前帧的特征点数据;然后获取体素地图,并将当前帧的特征点数据与体素地图进行匹配,体素地图中的各个体素分别对应同一个特征;之后根据匹配结果更新体素地图,得到更新后的体素地图;最后基于更新后的体素地图,利用预设优化算法对待优化位姿数据进行优化,以根据优化后的位姿数据得到激光点云地图。本申请实施例的激光建图方法采用特定结构的体素地图,一方面将其应用于前端的匹配算法中加速匹配过程,从而提高了激光建图效率,另一方面将其应用于后端的优化算法中进一步优化位姿,从而提高了激光建图精度。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例中一种激光建图方法的流程示意图;
图2为本申请实施例中一种激光建图流程示意图;
图3为本申请实施例中一种激光建图装置的结构示意图;
图4为本申请实施例中一种电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
本申请实施例提供了一种激光建图方法,如图1所示,提供了本申请实施例中一种激光建图方法的流程示意图,所述激光建图方法至少包括如下的步骤S110至步骤S140:
步骤S110,获取当前帧的激光点云数据,并对所述当前帧的激光点云数据进行特征提取,得到当前帧的特征点数据。
本申请实施例在进行激光建图时,需要先获取当前帧的激光点云数据,这里的激光点云数据可以由车辆上的激光雷达采集得到,然后利用一定的点云特征提取算法对当前帧的激光点云数据进行特征提取,得到当前帧的特征点数据,这里的点云特征提取算法可以是采用现有技术中基于LOAM的特征提取算法来实现,例如可以通过计算特征点的曲率大小的方式来得到当前帧的线特征和面特征等特征点数据。
步骤S120,获取体素地图,并将所述当前帧的特征点数据与所述体素地图进行匹配,所述体素地图中的各个体素分别对应同一个特征。
本申请实施例的最终目的在于构建出一定区域内的激光点云地图,以为后续自动驾驶车辆的定位提供依据。但对于现有的基于LOAM算法中采用的Scan-to-Map特征匹配方式构建点云地图的方案来说,随着新的激光点云数据的到来,点云地图中包含的数据量也会越来越大,如果每次都与整个点云地图中的全部数据进行匹配,将会耗费大量时间,导致建图效率低下。
基于此,本申请实施例构建了一定结构的体素地图(VoxelMap),体素地图由多个体素构成,每一个体素都可以看作是一个三维空间构成的点云地图块,但与点云地图相比,体素地图中除了存储了特征点信息,还存储了关于体素结构和特征点属性等信息,为提高建图匹配效率提供了支撑。
此外,本申请实施例的体素地图中的每一个体素分别表征同一个特征,也即属于相同特征的特征点数据会被划分到一个体素中,此种体素地图结构将减少在激光建图过程中搜索特征对应的时间,因为只需要搜索特征点所在或附近的体素即可,而不需要更详尽的搜索最近点,从而可以大幅度提高运行效率。当得到当前帧的特征点数据之后,将当前帧的特征点数据与体素地图中的各个体素进行匹配即Scan-to-VoxelMap,即可快速确定出与当前帧的特征点数据相匹配的体素,相比于传统的LOAM算法采取的全量数据匹配的方式,可以大大减少匹配的数据量,提高匹配效率。
步骤S130,根据匹配结果更新所述体素地图,得到更新后的体素地图。
上述匹配过程在于确定出体素地图中与当前帧的特征点数据相匹配的体素,匹配程度越高表明当前帧的特征点数据与对应的体素之间越有较大概率表征的是同一特征,因此可以以此来更新体素地图中的数据,也即基于匹配结果将当前帧的特征点数据注册到体素地图中。
步骤S140,基于所述更新后的体素地图,利用预设优化算法对待优化位姿数据进行优化,以根据优化后的位姿数据得到激光点云地图。
由于前述步骤是将当前帧的特征点数据与体素地图中的各个体素进行匹配,目的是为了提高匹配效率,但这种方式仅仅能够得到一个初步的匹配位姿,为了进一步提高匹配位姿的精度,本申请实施例可以采用预设优化算法对待优化位姿数据进行优化,从而根据优化后的位姿数据进行点云拼接,得到最终的激光点云地图。
上述预设优化算法可以采用非线性优化算法,例如视觉SLAM中的BundleAdjustment的思想可以直接应用到本申请实施例的激光建图优化过程中,因为本申请实施例构建的体素地图结构为特征点的匹配提供了有力支撑。当然,具体采用何种优化算法,本领域技术人员可以根据实际需求灵活选择,在此不作具体限定。
此外,为了便于前端的特征匹配以及后端的位姿优化对于体素地图的使用,本申请实施例构建的体素地图可以通过共享内存的方式提供给前端的特征匹配流程以及后端的位姿优化流程。
本申请实施例的激光建图方法采用特定结构的体素地图,一方面将其应用于前端的匹配算法中加速匹配过程,从而提高了激光建图效率,另一方面将其应用于后端的优化算法中进一步优化位姿,从而提高了激光建图精度。
在本申请的一些实施例中,所述将所述当前帧的特征点数据与所述体素地图进行匹配包括:将所述当前帧的特征点数据与所述体素地图进行距离匹配,得到所述当前帧的特征点数据对应的目标体素;将所述当前帧的特征点数据与所述目标体素进行匹配,得到所述匹配结果。
本申请在将当前帧的特征点数据与体素地图进行匹配时,针对当前帧的特征点数据中的每一个特征点,先计算该特征点与体素地图中的各个体素的距离,然后将距离最近的体素作为该特征点对应的目标体素。之后将当前帧的特征点数据与目标体素进行特征匹配,从而可以得到匹配位姿等数据。
在本申请的一些实施例中,所述体素地图包括多个体素的中心点,所述将所述当前帧的特征点数据与所述体素地图进行距离匹配,得到所述当前帧的特征点数据对应的目标体素包括:确定所述当前帧的特征点数据中的特征点与各个体素的中心点的距离;根据所述当前帧的特征点数据中的特征点与各个体素的中心点的距离,确定所述当前帧的特征点数据对应的目标体素。
本申请实施例在将当前帧的特征点数据中的特征点与体素地图进行距离匹配时,可以以体素地图中各个体素的中心点作为距离匹配的基准,各个体素的中心点可以在构建体素地图的过程中予以保存。通过计算特征点与各个体素的中心点的距离,可以将距离最小的体素作为目标体素。
在本申请的一些实施例中,所述获取体素地图包括:确定所述当前帧的特征点数据中的各个特征点是否对应同一特征;若是,则将当前帧的特征点数据保存到所述体素地图的一个体素中;若不是,则基于八叉树结构对所述当前帧的特征点数据进行若干次划分,得到多个体素,以使最终得到的各个体素分别对应同一特征。
本申请实施例在获取体素地图时,可以利用预设初始化策略对体素地图进行初始化,这里主要基于一个体素仅对应同一个特征的原则来构建体素地图的结构,因此可以先采用一定的检测算法来检测当前帧的特征点数据中的各个特征点是否对应同一特征。
特征点数据的属性主要分为线特征和面特征,首先,对于线特征和面特征二者之间的区分,可以通过现有技术中计算曲率的方式来实现,例如可以根据前后各5个点与当前点的长度(激光点到雷达的距离)计算曲率的大小。对于在三维空间中处于平滑平面上的点,其和周围点的大小差距不大,曲率较低,因此可以看作是面特征点,而对于在三维空间中处于尖锐边缘上的点,其和周围点的大小差距较大,曲率较高,因此可以看作是线特征点。
其次,对于不同的线特征之间或者不同的面特征之间的区分,可以通过如下方式来检测,先计算当前帧的激光点云数据的平均值,然后根据当前帧的激光点云数据的平均值计算当前帧的协方差矩阵C,最后再计算该协方差矩阵C的3个特征值,如果其中1个特征值显著大于另外2个特征值,则当前帧的特征点数据中的特征点属于同一个线特征,如果其中2个特征值显著大于另外1个特征值,则当前帧的特征点数据中的特征点属于同一个面特征,否则,则不属于同一个线特征/面特征。
通过上述方式可以判断出当前帧的特征点数据中包含的多个特征点是否对应同一个线特征/面特征,如果对应同一个线特征/面特征,那么直接将当前帧的特征点数据中包含的多个特征点保存在一个体素中即可,而如果不对应同一个线特征/面特征,则可以基于八叉树结构对当前帧的特征点数据进行若干次划分,例如可以按照预设空间大小等分成8个体素,然后再分别判断这8个体素中包含的特征点数据是否对应同一个线特征/面特征,以此类推,直到最终得到的各个体素分别对应同一特征或者达到最小体素尺寸即结束。当然,最小体素尺寸的大小本领域技术人员可以根据实际需求灵活设置,在此不作具体限定。
本申请实施例的每个体素地图由多个哈希表索引的八叉树结构组成,多个八叉树是为了减少树的深度,进一步提高搜索速度。每个八叉树结构的体素地图可以对应空间中默认体素大小的非空立方体,不同的八叉树可能有不同的深度,这取决于空间中各个立方体的几何形状。八叉树中的每个叶子节点,也即最后一层的节点都保存了所有对应于相同特征的特征点数据。另外,本申请实施例构建的八叉树结构的体素地图可以基于线特征和面特征分别构建对应的线特征体素地图和面特征体素地图。
本申请实施例设计的自适应八叉树结构的体素地图能够大大减少匹配算法的内存消耗,并且与现有的八叉树等数据结构又能够自然兼容,极大地方便了其实现和使用效率。
在本申请的一些实施例中,所述体素地图为八叉树结构,所述匹配结果包括匹配位姿,所述根据匹配结果更新所述体素地图,得到更新后的体素地图包括:根据所述匹配位姿,将所述当前帧的特征点数据转换到体素地图坐标系下,得到转换后的特征点数据;在所述体素地图中搜索所述转换后的特征点数据中的特征点是否位于所述体素地图的八叉树结构的叶子节点中,且与所述叶子节点对应的体素中的特征点属于同一特征;若所述转换后的特征点数据中的特征点位于所述八叉树结构的叶子节点中,且与所述叶子节点对应的体素中的特征点属于同一特征,则将所述转换后的特征点数据中的特征点加入到所述叶子节点对应的体素中;否则,则基于所述转换后的特征点数据中的特征点创建新的八叉树结构。
由于当前帧的特征点数据对应的是激光雷达坐标系,而体素地图对应的是体素地图坐标系,其与最终要构建得到的激光点云地图坐标系一样均是以第一帧激光点云数据为基准建立的坐标系,因此本申请实施例可以先通过位姿变换将当前帧的特征点数据转换到体素地图所在坐标系下,然后在体素地图中包含的所有八叉树结构中搜索转换后的特征点数据中的特征点是否位于某一八叉树结构的叶子节点中,进而根据不同的搜索结果采取不同的更新策略。
本申请实施例采取的更新策略的原则与前述实施例中初始化策略的原则相同,都是为了使体素地图中划分得到的每一个体素均对应同一个特征,因此在体素地图中进行搜索时,如果当前帧的特征点落入到某一个已有的叶子节点对应的体素内,同时与该叶子节点对应的体素中的特征点属于相同特征,例如均属于同一线特征/同一面特征,那么此时就可以将该特征点的数据直接加入到该叶子节点对应的体素中,实现对该叶子节点对应体素的更新。
而如果当前帧的特征点落入到任何一个已有的叶子节点对应的体素内,说明该特征点与已有的叶子节点中的特征点数据均不匹配,此时可以以该特征点作为根节点创建一个新的八叉树结构,并在哈希表中对其根进行索引。
通过上述自适应更新八叉树结构的体素地图的方式能够保证体素地图中的每一个体素均对应同一个特征,在激光建图过程中只需要搜索特征点所在或附近的体素即可,而不需要更详尽的搜索最近点,减少了搜索特征对应的时间,提高了匹配效率。
在本申请的一些实施例中,所述基于所述更新后的体素地图,利用预设优化算法对待优化位姿数据进行优化,以根据优化后的位姿数据得到激光点云地图包括:确定所述待优化位姿数据的帧数是否达到预设滑动窗口的大小;在所述待优化位姿数据的帧数达到所述预设滑动窗口的大小的情况下,获取所述预设滑动窗口内的待优化位姿数据;基于所述更新后的体素地图,利用所述预设优化算法对所述预设滑动窗口内的待优化位姿数据进行优化,得到优化后的位姿数据。
本申请实施例在进行后端优化时,可以采用预设滑动窗口的策略进行优化,也即基于预设滑动窗口的大小进行局部优化,因此在初始阶段,可以先判断当前已经获取到的待优化位姿数据的帧数是否已经达到预设滑动窗口的大小,例如预设滑动窗口的大小为20帧,那么如果当前已经获取到的待优化位姿数据的帧数为19帧,说明还不满足优化要求,而如果当前已经获取到的待优化位姿数据的帧数为20帧,说明已经满足优化要求,那么这时就可以基于更新后的体素地图,利用预设优化算法对预设滑动窗口内的所有待优化位姿数据进行位姿优化。
预设滑动窗口可以看作是一种队列结构,一旦窗口中的数据帧数超过预设滑动窗口的大小,会将较老的帧移出,例如,如果当前已经获取到的待优化位姿数据的帧数为21帧,那么会将第1帧数据从预设滑动窗口中移出,即始终保证对最新获取到的20帧数据进行优化。当然,预设滑动窗口的大小可以根据实际需求灵活设置,在此不作具体限定。
在本申请的一些实施例中,所述基于所述更新后的体素地图,利用所述预设优化算法对所述预设滑动窗口内的待优化位姿数据进行优化,得到优化后的位姿数据包括:基于所述更新后的体素地图,利用光束平差法构建非线性优化模型,所述非线性优化模型的待优化项为预设滑动窗口内的待优化位姿数据,所述非线性优化模型的残差项为所述预设滑动窗口对应的距离残差和;利用所述非线性优化模型对所述预设滑动窗口内的待优化位姿数据进行局部优化,得到所述优化后的位姿数据。
本申请实施例采用的预设优化算法可以采用基于BA算法构建的非线性优化模型来实现,BA算法目前主要应用于视觉SLAM中,视觉SLAM中的BA算法是通过将特征点与像素点进行关联,并通过构建重投影误差的方式来进行优化。而由于视觉图像的分辨率很高,所以上述过程很容易找到关联点,而在视觉SLAM中,激光点云是稀疏的,因此如果想将BA算法直接应用到激光slam中是比较困难的。
基于此,本申请实施例利用了前述实施例中构建的体素地图来克服BA算法在激光SLAM中应用困难的问题,因为体素地图结构中的每一个体素表征了同一特征,因此基于体素地图的结构同样能够容易且快速地找到相匹配的特征。
本申请实施例基于BA算法构建的非线性优化模型主要需要确定待优化项和残差项,由于采用的是预设滑动窗口的局部优化策略,因此待优化项对应的就是预设滑动窗口中的所有待优化位姿数据,残差项则可以根据预设滑动窗口中对应的多帧特征点数据与体素的距离匹配结果来构建距离残差和得到,进而可以通过最小化距离残差和的方式优化预设滑动窗口内的待优化位姿数据。
在本申请的一些实施例中,所述基于所述更新后的体素地图,利用光束平差法构建非线性优化模型包括:确定所述预设滑动窗口对应的多帧特征点数据,所述多帧特征点数据中分别包括多个特征点;确定各个特征点对应的目标体素的特征类型;根据各个特征点对应的目标体素的特征类型,构建各个特征点到对应的目标体素的距离残差;根据各个特征点到对应的目标体素的距离残差,确定各帧特征点数据对应的距离残差和;根据各帧特征点数据对应的距离残差和,确定所述预设滑动窗口对应的距离残差和。
由于预设滑动窗口中存储的是待优化位姿数据,而每一帧待优化位姿都会对应一帧特征点数据,一帧特征点数据中会包含多个特征点,每一个特征点会匹配到一个距离最近的体素。
基于此,本申请实施例在构建非线性优化模型时,可以分两个维度来构建,第一个维度为单数据帧的维度,针对任意一帧特征点数据,可以结合每个特征点对应的目标体素的特征类型,构建每个特征点到对应的目标体素的距离残差,从而可以得到多个特征点的距离残差,将这多个特征点的距离残差在每个数据帧的维度分别进行求和,进而可以得到每一帧特征点数据对应的距离残差和。第二个维度为多数据帧的维度,也即预设滑动窗口的维度,在得到每一帧特征点数据对应的距离残差和之后,将预设滑动窗口对应的每一帧特征点数据的距离残差和进一步求和,从而可以得到多帧特征点数据的距离残差和,也即预设滑动窗口的距离残差和。
在本申请的一些实施例中,所述特征类型包括线特征和面特征,所述根据各个特征点对应的目标体素的特征类型,构建各个特征点到对应的目标体素的距离残差包括:若所述目标体素的特征类型为线特征,则根据各个特征点到对应的目标体素的距离构建点到线的距离残差;若所述目标体素的特征类型为面特征,则根据各个特征点到对应的目标体素的距离构建点到面的距离残差。
本申请实施例的特征类型主要包括线特征和面特征,在构建各个特征点到对应的目标体素的距离残差时,可以区分不同的特征类型进行构建,例如如果相匹配的目标体素是线特征,那么可以构建点到线的距离残差,如果相匹配的目标体素是面特征,那么可以构建点到面的距离误差。
在本申请的一些实施例中,在基于所述更新后的体素地图,利用预设优化算法对待优化位姿数据进行优化之后,所述激光建图方法还包括:根据优化后的位姿数据,对所述更新后的体素地图中的特征点的位置信息进行更新。
由于体素地图中还存储了特征点在世界坐标系下的位置坐标等信息,因此在得到优化后的位姿数据后,可以利用优化后的位置信息对体素地图中存储的特征点的位置信息进行更新,从而利用更新后的体素地图参与下次Scan-to-VoxelMap的匹配流程。
为了便于对本申请各实施例的理解,如图2所示,提供了本申请实施例中一种激光建图流程示意图,本申请的整个激光建图流程主要分为3个线程:
1)线程1中基于LOAM算法单独对当前接收到的激光点云数据进行线/面特征提取,并保存特征点数据供其他线程使用;
2)线程2中基于LOAM特征匹配思想,执行Scan-to-VoxelMap的特征匹配,并以一定频率如10Hz输出激光里程计位姿,这里与传统的LOAM特征匹配过程不同的点在于本申请使用的是VoxelMap进行匹配,而不是全局的点云地图,从而可以大大提高匹配效率;
3)线程3基于VoxelMap和BA算法执行后端的滑窗位姿优化,得到滑窗内的优化后位姿数据后,基于优化后位姿数据进行点云地图的拼接,并以一定频率如2Hz输出,从而得到最终的激光点云地图。
综上所述,本申请的激光建图方法至少取得了如下的技术效果:
1)采用共享内存的体素地图,其既应用于前端的LOAM算法中加速匹过程,又应用于后端的BA算法中进一步进行位姿优化,最大化利用了体素地图,提高了激光建图效率和建图精度;
2)改进了传统的LOAM的匹配方式,即从Scan-to-Map的匹配方式调整为Scan-to-VoxelMap的匹配方式,在不降低匹配精度的前提下,可以大幅提高匹配速度;
3)将视觉SLAM中的BA思想应用于激光SLAM的后端滑窗优化中,提高了匹配位姿和建图精度;
4)采用多线程分别执行特征提取、匹配位姿以及位姿优化,进一步提高了建图速度,可以进行实时建图。
本申请实施例还提供了一种激光建图装置300,如图3所示,提供了本申请实施例中一种激光建图装置的结构示意图,所述激光建图装置300包括:获取单元310、匹配单元320、第一更新单元330以及优化单元340,其中:
获取单元310,用于获取当前帧的激光点云数据,并对所述当前帧的激光点云数据进行特征提取,得到当前帧的特征点数据;
匹配单元320,用于获取体素地图,并将所述当前帧的特征点数据与所述体素地图进行匹配,所述体素地图中的各个体素分别对应同一个特征;
第一更新单元330,用于根据匹配结果更新所述体素地图,得到更新后的体素地图;
优化单元340,用于基于所述更新后的体素地图,利用预设优化算法对待优化位姿数据进行优化,以根据优化后的位姿数据得到激光点云地图。
在本申请的一些实施例中,所述匹配单元320具体用于:将所述当前帧的特征点数据与所述体素地图进行距离匹配,得到所述当前帧的特征点数据对应的目标体素;将所述当前帧的特征点数据与所述目标体素进行匹配,得到所述匹配结果。
在本申请的一些实施例中,所述体素地图为八叉树结构,所述匹配结果包括匹配位姿,所述第一更新单元330具体用于:根据所述匹配位姿,将所述当前帧的特征点数据转换到体素地图坐标系下,得到转换后的特征点数据;在所述体素地图中搜索所述转换后的特征点数据中的特征点是否位于所述体素地图的八叉树结构的叶子节点中,且与所述叶子节点对应的体素中的特征点属于同一特征;若所述转换后的特征点数据中的特征点位于所述八叉树结构的叶子节点中,且与所述叶子节点对应的体素中的特征点属于同一特征,则将所述转换后的特征点数据中的特征点加入到所述叶子节点对应的体素中;否则,则基于所述转换后的特征点数据中的特征点创建新的八叉树结构。
在本申请的一些实施例中,所述优化单元340具体用于:确定所述待优化位姿数据的帧数是否达到预设滑动窗口的大小;在所述待优化位姿数据的帧数达到所述预设滑动窗口的大小的情况下,获取所述预设滑动窗口内的待优化位姿数据;基于所述更新后的体素地图,利用所述预设优化算法对所述预设滑动窗口内的待优化位姿数据进行优化,得到优化后的位姿数据。
在本申请的一些实施例中,所述优化单元340具体用于:基于所述更新后的体素地图,利用光束平差法构建非线性优化模型,所述非线性优化模型的待优化项为预设滑动窗口内的待优化位姿数据,所述非线性优化模型的残差项为所述预设滑动窗口对应的距离残差和;利用所述非线性优化模型对所述预设滑动窗口内的待优化位姿数据进行局部优化,得到所述优化后的位姿数据。
在本申请的一些实施例中,所述优化单元340具体用于:确定所述预设滑动窗口对应的多帧特征点数据,所述多帧特征点数据中分别包括多个特征点;确定各个特征点对应的目标体素的特征类型;根据各个特征点对应的目标体素的特征类型,构建各个特征点到对应的目标体素的距离残差;根据各个特征点到对应的目标体素的距离残差,确定各帧特征点数据对应的距离残差和;根据各帧特征点数据对应的距离残差和,确定所述预设滑动窗口对应的距离残差和。
在本申请的一些实施例中,所述特征类型包括线特征和面特征,所述优化单元340具体用于:若所述目标体素的特征类型为线特征,则根据各个特征点到对应的目标体素的距离构建点到线的距离残差;若所述目标体素的特征类型为面特征,则根据各个特征点到对应的目标体素的距离构建点到面的距离残差。
在本申请的一些实施例中,所述激光建图装置还包括:第一更新单元,用于根据优化后的位姿数据,对所述更新后的体素地图中的特征点的位置信息进行更新。
能够理解,上述激光建图装置,能够实现前述实施例中提供的激光建图方法的各个步骤,关于激光建图方法的相关阐释均适用于激光建图装置,此处不再赘述。
图4是本申请的一个实施例电子设备的结构示意图。请参考图4,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成激光建图装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
获取当前帧的激光点云数据,并对所述当前帧的激光点云数据进行特征提取,得到当前帧的特征点数据;
获取体素地图,并将所述当前帧的特征点数据与所述体素地图进行匹配,所述体素地图中的各个体素分别对应同一个特征;
根据匹配结果更新所述体素地图,得到更新后的体素地图;
基于所述更新后的体素地图,利用预设优化算法对待优化位姿数据进行优化,以根据优化后的位姿数据得到激光点云地图。
上述如本申请图1所示实施例揭示的激光建图装置执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
该电子设备还可执行图1中激光建图装置执行的方法,并实现激光建图装置在图1所示实施例的功能,本申请实施例在此不再赘述。
本申请实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的电子设备执行时,能够使该电子设备执行图1所示实施例中激光建图装置执行的方法,并具体用于执行:
获取当前帧的激光点云数据,并对所述当前帧的激光点云数据进行特征提取,得到当前帧的特征点数据;
获取体素地图,并将所述当前帧的特征点数据与所述体素地图进行匹配,所述体素地图中的各个体素分别对应同一个特征;
根据匹配结果更新所述体素地图,得到更新后的体素地图;
基于所述更新后的体素地图,利用预设优化算法对待优化位姿数据进行优化,以根据优化后的位姿数据得到激光点云地图。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种激光建图方法,其中,所述激光建图方法包括:
获取当前帧的激光点云数据,并对所述当前帧的激光点云数据进行特征提取,得到当前帧的特征点数据;
获取体素地图,并将所述当前帧的特征点数据与所述体素地图进行匹配,所述体素地图中的各个体素分别对应同一个特征;
根据匹配结果更新所述体素地图,得到更新后的体素地图;
基于所述更新后的体素地图,利用预设优化算法对待优化位姿数据进行优化,以根据优化后的位姿数据得到激光点云地图。
2.如权利要求1所述激光建图方法,其中,所述将所述当前帧的特征点数据与所述体素地图进行匹配包括:
将所述当前帧的特征点数据与所述体素地图进行距离匹配,得到所述当前帧的特征点数据对应的目标体素;
将所述当前帧的特征点数据与所述目标体素进行匹配,得到所述匹配结果。
3.如权利要求1所述激光建图方法,其中,所述体素地图为八叉树结构,所述匹配结果包括匹配位姿,所述根据匹配结果更新所述体素地图,得到更新后的体素地图包括:
根据所述匹配位姿,将所述当前帧的特征点数据转换到体素地图坐标系下,得到转换后的特征点数据;
在所述体素地图中搜索所述转换后的特征点数据中的特征点是否位于所述体素地图的八叉树结构的叶子节点中,且与所述叶子节点对应的体素中的特征点属于同一特征;
若所述转换后的特征点数据中的特征点位于所述八叉树结构的叶子节点中,且与所述叶子节点对应的体素中的特征点属于同一特征,则将所述转换后的特征点数据中的特征点加入到所述叶子节点对应的体素中;
否则,则基于所述转换后的特征点数据中的特征点创建新的八叉树结构。
4.如权利要求1所述激光建图方法,其中,所述基于所述更新后的体素地图,利用预设优化算法对待优化位姿数据进行优化,以根据优化后的位姿数据得到激光点云地图包括:
确定所述待优化位姿数据的帧数是否达到预设滑动窗口的大小;
在所述待优化位姿数据的帧数达到所述预设滑动窗口的大小的情况下,获取所述预设滑动窗口内的待优化位姿数据;
基于所述更新后的体素地图,利用所述预设优化算法对所述预设滑动窗口内的待优化位姿数据进行优化,得到优化后的位姿数据。
5.如权利要求1所述激光建图方法,其中,所述基于所述更新后的体素地图,利用所述预设优化算法对所述预设滑动窗口内的待优化位姿数据进行优化,得到优化后的位姿数据包括:
基于所述更新后的体素地图,利用光束平差法构建非线性优化模型,所述非线性优化模型的待优化项为预设滑动窗口内的待优化位姿数据,所述非线性优化模型的残差项为所述预设滑动窗口对应的距离残差和;
利用所述非线性优化模型对所述预设滑动窗口内的待优化位姿数据进行局部优化,得到所述优化后的位姿数据。
6.如权利要求5所述激光建图方法,其中,所述基于所述更新后的体素地图,利用光束平差法构建非线性优化模型包括:
确定所述预设滑动窗口对应的多帧特征点数据,所述多帧特征点数据中分别包括多个特征点;
确定各个特征点对应的目标体素的特征类型;
根据各个特征点对应的目标体素的特征类型,构建各个特征点到对应的目标体素的距离残差;
根据各个特征点到对应的目标体素的距离残差,确定各帧特征点数据对应的距离残差和;
根据各帧特征点数据对应的距离残差和,确定所述预设滑动窗口对应的距离残差和。
7.如权利要求6所述激光建图方法,其中,所述特征类型包括线特征和面特征,所述根据各个特征点对应的目标体素的特征类型,构建各个特征点到对应的目标体素的距离残差包括:
若所述目标体素的特征类型为线特征,则根据各个特征点到对应的目标体素的距离构建点到线的距离残差;
若所述目标体素的特征类型为面特征,则根据各个特征点到对应的目标体素的距离构建点到面的距离残差。
8.一种激光建图装置,其中,所述激光建图装置包括:
获取单元,用于获取当前帧的激光点云数据,并对所述当前帧的激光点云数据进行特征提取,得到当前帧的特征点数据;
匹配单元,用于获取体素地图,并将所述当前帧的特征点数据与所述体素地图进行匹配,所述体素地图中的各个体素分别对应同一个特征;
第一更新单元,用于根据匹配结果更新所述体素地图,得到更新后的体素地图;
优化单元,用于基于所述更新后的体素地图,利用预设优化算法对待优化位姿数据进行优化,以根据优化后的位姿数据得到激光点云地图。
9.一种电子设备,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行所述权利要求1~7之任一所述激光建图方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行所述权利要求1~7之任一所述激光建图方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202211012748.4A CN115371663A (zh) | 2022-08-23 | 2022-08-23 | 激光建图方法、装置及电子设备、计算机可读存储介质 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202211012748.4A CN115371663A (zh) | 2022-08-23 | 2022-08-23 | 激光建图方法、装置及电子设备、计算机可读存储介质 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN115371663A true CN115371663A (zh) | 2022-11-22 |
Family
ID=84067220
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202211012748.4A Pending CN115371663A (zh) | 2022-08-23 | 2022-08-23 | 激光建图方法、装置及电子设备、计算机可读存储介质 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN115371663A (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN117367412A (zh) * | 2023-12-07 | 2024-01-09 | 南开大学 | 一种融合捆集调整的紧耦合激光惯导里程计与建图方法 |
| CN117974894A (zh) * | 2024-01-30 | 2024-05-03 | 桂林凯文彼德科技有限公司 | 三维重建方法、装置、存储介质及建模设备 |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111258313A (zh) * | 2020-01-20 | 2020-06-09 | 深圳市普渡科技有限公司 | 多传感器融合slam系统及机器人 |
| CN112927363A (zh) * | 2021-04-07 | 2021-06-08 | Oppo广东移动通信有限公司 | 体素地图构建方法及装置、计算机可读介质和电子设备 |
| CN113781582A (zh) * | 2021-09-18 | 2021-12-10 | 四川大学 | 基于激光雷达和惯导联合标定的同步定位与地图创建方法 |
| CN113936109A (zh) * | 2021-10-15 | 2022-01-14 | 北京百度网讯科技有限公司 | 高精地图点云数据的处理方法、装置、设备以及存储介质 |
| CN113960614A (zh) * | 2021-09-22 | 2022-01-21 | 浙江大学 | 一种基于帧-地图匹配的高程图构建方法 |
| US20220164597A1 (en) * | 2020-11-20 | 2022-05-26 | Shenzhen Deeproute.Ai Co., Ltd | Methods for extracting point cloud feature |
-
2022
- 2022-08-23 CN CN202211012748.4A patent/CN115371663A/zh active Pending
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111258313A (zh) * | 2020-01-20 | 2020-06-09 | 深圳市普渡科技有限公司 | 多传感器融合slam系统及机器人 |
| US20220164597A1 (en) * | 2020-11-20 | 2022-05-26 | Shenzhen Deeproute.Ai Co., Ltd | Methods for extracting point cloud feature |
| CN112927363A (zh) * | 2021-04-07 | 2021-06-08 | Oppo广东移动通信有限公司 | 体素地图构建方法及装置、计算机可读介质和电子设备 |
| CN113781582A (zh) * | 2021-09-18 | 2021-12-10 | 四川大学 | 基于激光雷达和惯导联合标定的同步定位与地图创建方法 |
| CN113960614A (zh) * | 2021-09-22 | 2022-01-21 | 浙江大学 | 一种基于帧-地图匹配的高程图构建方法 |
| CN113936109A (zh) * | 2021-10-15 | 2022-01-14 | 北京百度网讯科技有限公司 | 高精地图点云数据的处理方法、装置、设备以及存储介质 |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN117367412A (zh) * | 2023-12-07 | 2024-01-09 | 南开大学 | 一种融合捆集调整的紧耦合激光惯导里程计与建图方法 |
| CN117367412B (zh) * | 2023-12-07 | 2024-03-29 | 南开大学 | 一种融合捆集调整的紧耦合激光惯导里程计与建图方法 |
| CN117974894A (zh) * | 2024-01-30 | 2024-05-03 | 桂林凯文彼德科技有限公司 | 三维重建方法、装置、存储介质及建模设备 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN110741282B (zh) | 外参标定方法、装置、计算设备以及计算机存储介质 | |
| WO2022179002A1 (zh) | 图像匹配方法、装置、电子设备以及存储介质 | |
| CN113781667B (zh) | 三维结构简化重建方法、装置、计算机设备和存储介质 | |
| CN115372989A (zh) | 基于激光雷达的越野自动小车长距离实时定位系统及方法 | |
| CN112785710B (zh) | Osgb三维模型建筑物快速单体化方法、系统、存储器及设备 | |
| CN115127542A (zh) | 激光建图方法、装置及电子设备、计算机可读存储介质 | |
| CN114593743A (zh) | 一种基于改进双向rrt算法的路径规划方法及装置 | |
| CN111445472A (zh) | 激光点云地面分割方法、装置、计算设备及存储介质 | |
| WO2019062649A1 (zh) | 一种自适应区域划分的方法及系统 | |
| CN113325389A (zh) | 一种无人车激光雷达定位方法、系统及存储介质 | |
| CN115371663A (zh) | 激光建图方法、装置及电子设备、计算机可读存储介质 | |
| CN113377748A (zh) | 激光雷达点云数据的静态点去除方法和装置 | |
| CN114463512B (zh) | 点云数据的处理方法、矢量化方法及装置 | |
| CN114563000A (zh) | 一种基于改进型激光雷达里程计的室内外slam方法 | |
| CN114509774A (zh) | 定位方法、定位系统、车辆以及计算机可读存储介质 | |
| CN118674930A (zh) | 一种基于地平面拟合和地面概率估计的三阶段点云地面分割方法 | |
| CN119810360B (zh) | 室外大场景激光雷达点云地图的生成方法及装置 | |
| CN115014332A (zh) | 激光slam建图方法、装置及电子设备、计算机可读存储介质 | |
| CN116523830A (zh) | 一种3d目标检测方法、系统、介质及终端 | |
| CN119478387B (zh) | 一种基于语义实例生成的零样本开放词汇场景理解方法 | |
| CN113469907A (zh) | 一种基于叶片型面特征的数据简化方法及系统 | |
| CN116596750A (zh) | 一种点云处理方法、装置、电子设备及存储介质 | |
| CN115952248B (zh) | 终端设备的位姿处理方法、装置、设备、介质及产品 | |
| CN116295392A (zh) | 有效行驶区域的快速确定方法、装置及电子设备、存储介质 | |
| CN116486371A (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 | ||
| RJ01 | Rejection of invention patent application after publication |
Application publication date: 20221122 |