CN114092638A - 点云地图构建方法、装置、设备、存储介质及计算机程序 - Google Patents
点云地图构建方法、装置、设备、存储介质及计算机程序 Download PDFInfo
- Publication number
- CN114092638A CN114092638A CN202111314754.0A CN202111314754A CN114092638A CN 114092638 A CN114092638 A CN 114092638A CN 202111314754 A CN202111314754 A CN 202111314754A CN 114092638 A CN114092638 A CN 114092638A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- map
- pose information
- cloud map
- cloud 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.)
- Pending
Links
- 238000010276 construction Methods 0.000 title claims abstract description 48
- 238000004590 computer program Methods 0.000 title claims abstract description 14
- 238000000034 method Methods 0.000 claims abstract description 57
- 238000013507 mapping Methods 0.000 claims abstract description 32
- 230000000903 blocking effect Effects 0.000 claims abstract description 12
- 230000008569 process Effects 0.000 claims description 20
- 238000005457 optimization Methods 0.000 claims description 15
- 230000004927 fusion Effects 0.000 claims description 4
- 238000009825 accumulation Methods 0.000 description 6
- 238000001514 detection method Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 238000000638 solvent extraction Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 238000012937 correction Methods 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- 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/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; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/08—Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请公开了一种点云地图构建方法、装置、设备、存储介质及计算机程序,属于地图构建技术领域。该方法包括:获取三维点云数据,三维点云数据是由地图扫描设备对分块区域内的环境扫描得到的,分块区域是对整个建图区域分块得到的子区域;按照时间戳将三维点云数据关联至地图扫描设备的位姿信息;当位姿信息的置信度小于置信度阈值时,通过分块点云地图和局部点云地图对位姿信息进行优化,得到优化的位姿信息;基于优化的位姿信息将三维点云数据拼接至分块点云地图与局部点云地图。该方法能够避免组合惯导易受到天气、物体遮挡等因素的影响,输出的位姿信息不准确的问题。
Description
技术领域
本申请涉及地图构建技术领域,特别涉及一种点云地图构建方法、装置、设备、存储介质及计算机程序。
背景技术
在自动驾驶、智慧城市、物联网、及其他小而精的垂直应用等应用领域,高精地图具有广阔的应用价值。其可以由车载激光雷达采集点云数据生成。
比如,在车辆行使时,通过组合惯导记录在各个时间上该车辆的位姿信息,同时通过激光雷达采集各个时间上的三维点云数据,然后基于上述位姿信息对上述三维点云数据进行拼接,生成高精地图。
但是,组合惯导输出的车辆的位姿信息容易受到天气、物体遮挡等因素的影响,导致高精地图的精确度降低。
发明内容
本申请实施例提供了一种点云地图构建方法、装置、设备、存储介质及计算机程序,该方法能够避免组合惯导易受到天气、物体遮挡等因素的影响,输出的位姿信息不准确的问题。所述技术方案如下。
根据本申请的一个方面,提供了一种点云地图构建方法,该方法包括:
获取三维点云数据,三维点云数据是由地图扫描设备对分块区域内的环境扫描得到的,分块区域是对整个建图区域分块得到的子区域;
按照时间戳将三维点云数据关联至地图扫描设备的位姿信息,位姿信息用于表示三维点云数据采集过程中地图扫描设备的运动姿态;
在位姿信息的置信度小于置信度阈值的情况下,通过分块点云地图和局部点云地图对位姿信息进行优化,得到优化的位姿信息;分块点云地图是指分块区域的点云地图,局部点云地图是由部分或者全部已构建分块点云地图拼接得到;
基于优化的位姿信息将三维点云数据拼接至分块点云地图与局部点云地图。
根据本申请的另一个方面,提供了一种点云地图构建装置,该装置包括:
获取模块,用于获取三维点云数据,三维点云数据是由地图扫描设备对分块区域内的环境扫描得到的,分块区域是对整个建图区域分块得到的子区域;
关联模块,用于按照时间戳将三维点云数据关联至地图扫描设备的位姿信息,位姿信息用于表示三维点云数据采集过程中地图扫描设备的运动姿态;
优化模块,用于在位姿信息的置信度小于置信度阈值的情况下,通过分块点云地图和局部点云地图对位姿信息进行优化,得到优化的位姿信息;分块点云地图是指分块区域的点云地图,局部点云地图是由部分或者全部已构建分块点云地图拼接得到;
构建模块,用于基于优化的位姿信息将三维点云数据拼接至分块点云地图与局部点云地图。
根据本申请的另一方面,提供了一种计算机设备,上述计算机设备包括:处理器和存储器,上述存储器存储有计算机程序,上述计算机程序由上述处理器加载并执行以实现如上所述的点云地图构建方法。
根据本申请的另一方面,提供了一种计算机可读存储介质,上述计算机可读存储介质中存储有计算机程序,上述计算机程序由处理器加载并执行以实现如上所述的点云地图构建方法。
根据本申请的另一个方面,提供了一种计算机程序(或计算机程序产品),上述计算机程序(或计算机程序产品)包括计算机指令,上述计算机指令存储在计算机可读存储介质中。计算机设备的处理器从上述计算机可读存储介质读取上述计算机指令,上述处理器执行上述计算机指令,使得上述计算机设备执行如上所述的点云地图构建方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
该方法中点云地图的构建,首先将整个建图区域分块,然后针对每个分块区域构建分块点云地图;且在构建分块点云地图的同时,还构建局部点云地图,这里的局部点云地图是由历史时间段上已构建的部分或者全部分块点云地图拼接的,与每个分块点云地图不完全一样,在点云地图的构建过程中,若是位姿信息的置信度小于置信度阈值,则通过分块点云地图和局部点云地图共同对位姿信息进行优化,这样能够保证位姿信息的准确性,从而保证在按照该位姿信息构图的精确度,这样就避免了组合惯导受到天气、物体遮挡等因素的影响,输出的位姿信息不准确,进而影响基于其输出的位姿信息构建的高精地图的精准度;其中,组合惯导是由全球定位系统(Global Positioning System,GPS)和惯性传感器(Inertial Measurement Unit,IMU)组合成的。
其次,通过分块对整个建图区域进行建图,能够避免单独采用局部点云地图的构建方式时导致的误差累积,保证整个构图的全局一致性;结合局部点云地图则能够保证局部构图的平滑性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请一个示例性实施例提供的车载系统的结构示意图;
图2示出了本申请一个示例性实施例提供的点云地图构建方法的流程图;
图3示出了本申请另一个示例性实施例提供的点云地图构建方法的流程图;
图4示出了本申请另一个示例性实施例提供的点云地图构建方法的流程图;
图5示出了本申请另一个示例性实施例提供的点云地图构建方法的流程图;
图6示出了本申请另一个示例性实施例提供的点云地图构建方法的流程图;
图7示出了本申请另一个示例性实施例提供的点云地图构建方法的流程图;
图8示出了本申请一个示例性实施例提供的点云地图构建装置的框图;
图9示出了本申请一个示例性实施例提供的计算机设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
首先对本申请涉及的几个名词进行介绍。
三维点云数据,是指在三维坐标系统中的一组向量的集合。这些向量通常以x、y、z三维坐标的形式表示,而且一般主要用来代表一个物体的外表面形状。示例性的,Pk={xk,yk,zk}表示空间中的第k个点,Point Cloud={P1,P2,P3,…,Pv}表示一组点云数据,k、v为正整数。示例性的,上述三维点云数据是由三维扫描设备产生的,例如激光雷达(lidar)、立体摄像头(stereo camera)、飞行时间相机(time-of-flight camera)。
地图扫描设备对环境扫描可以得到三维点云数据,再由计算机设备将三维点云数据通过逐帧的累加,形成点云地图。其中,地图扫描设备是三维扫描设备。对于每一帧三维点云数据,其采集时地图扫描设备的位姿即是这一帧三维点云数据与其他点云数据进行拼接的依据。
物体在空间具有6个自由度,即沿x、y、z三个直角坐标轴方向的移动自由度和绕这三个坐标轴的转动自由度,转动自由度分别为航向角、俯仰角和翻滚角。通常,地图采集车上的车载激光雷达直接采用GPS+IMU获得激光雷达的6个自由度的位姿,这一方法对GPS依赖度很大,而GPS容易受到天气、物体等遮挡等因素的影响,导致GPS+IMU输出的位姿不准确,进而三维点云数据的拼接重影;还可能存在GPS的定位跳变,导致三维点云数据的拼接出现断层;这些都会导致构建成的点云地图的精确度降低。
还存在一种构图方法,是基于局部点云数据进行建图,这一方式容易造成误差累计,在大范围建图的情况下,甚至无法形成闭环,从而无法进行全局纠正。
为了解决上述问题,提高构建成的点云地图的精确度,本申请提供了一种点云地图构建方法,该方法的详细实现细节请参考以下实施例。
示例性的,上述点云地图构建方法可以应用于车载系统中,请参考图1,示出了本申请实施例涉及的一种车载系统的示意图。该车载系统包括:全球导航卫星系统(GlobalNavigation Satellite System,GNSS)110、激光雷达120、IMU130、摄像机140和主机电脑150。其中,主机电脑150属于计算机设备。
对于原始数据的采集,GNSS 110用于记录地图采集车的位置信息,记录当前采集点的坐标;激光雷达120用于采集三维点云数据,能够对预设半径内的周围环境进行扫描;IMU 130用于捕获地图采集车的角度和加速度信息,以校正地图采集车的位置和角度;摄像机140用于采集路面标志、车道线等。
上述GNSS 110、激光雷达120、IMU 130和摄像机140分别与主机电脑150之间建立有通信连接,通过上述通信连接将采集得到的原始数据传输至主机电脑150。主机电脑150基于GNSS 110、激光雷达120、IMU 130和摄像机140采集的原始数据构建高精地图。示例性的,在高精地图的构建过程中,主机电脑150执行本申请提供的点云地图构建方法,以基于GNSS 110+IMU 130输出的位姿信息与激光雷达120输出的三维点云数据,构建高精度的点云地图,进而在点云地图的基础上构建高精地图,以提升高精地图的精度。
图2示出了本申请一个示例性实施例提供的点云地图构建方法的流程图,该方法应用于图1所示的计算机设备中,该方法包括以下步骤:
步骤201,获取三维点云数据,三维点云数据是由地图扫描设备对分块区域内的环境扫描得到的,分块区域是对整个建图区域分块得到的子区域。
在点云地图的构图过程中,计算机设备中设置有对整个建图区域划分的多个分块区域。针对每一个分块区域进行建图,地图采集车在一个分块区域中行使,地图采集车上设置的地图扫描设备对环境进行扫描,得到该分块区域的三维点云数据;同时,地图采集车上设置的组合惯导输出地图采集车的位姿信息,以此位姿信息作为地图扫描设备的位姿信息。计算机设备接收地图扫描设备传输的三维点云数据,即获得该分块区域的三维点云数据;从组合惯导获得地图扫描设备的位姿信息。
示例性的,地图扫描设备可以将采集到的三维点云数据存储至存储器的第一指定存储区域,组合惯导可以将输出位姿信息至存储器的第二指定存储区域;计算机设备从第一指定存储区域获取指定时间段内的三维点云数据,以及从第二指定存储区域获取上述指定时间段内的位姿信息。
步骤202,按照时间戳将三维点云数据关联至地图扫描设备的位姿信息。
位姿信息用于表示三维点云数据采集过程中地图扫描设备的运动姿态。
每一帧三维点云数据上标记有第一时间戳,第一时间戳用于指示该帧三维点云数据的采集时刻;每一个位姿信息标记有第二时间戳,第二时间戳用于指示该位姿信息的采集时刻。计算机设备对第一时间戳与第二时间戳一致的三维点云数据与位姿信息进行关联。
步骤203,在位姿信息的置信度小于等于置信度阈值的情况下,通过分块点云地图和局部点云地图对位姿信息进行优化,得到优化的位姿信息。
分块点云地图是指分块区域的点云地图,这里的分块点云地图可以是指已构建成的分块点云地图,也可以是指未构建成的分块点云地图。
局部点云地图是整个建图区域中的局部区域的点云地图,这里的局部点云地图可以是由部分或者全部已构建分块点云地图拼接得到;对于每一个已构建分块点云地图,可以采用其中一部分或者全部用以拼接形成局部点云地图。
已构建分块点云地图包括:与时间戳相邻的历史时间段上构建构成的分块点云地图,该时间戳是当前所要拼接的三维点云数据的时间戳。比如,三维点云数据的时间戳为2021/11/02/12:03:55(即2021年11月02日12时03分55秒),则历史时间段可以是11:03:55至12:03:54。
计算机设备按照时序对每一帧三维点云数据进行拼接,对一帧三维点云数据进行拼接时,首先确定该帧三维点云数据关联的位姿信息的置信度是否大于置信度阈值,其中,位姿信息的置信度用于表征该位姿信息的准确度;在位姿信息的置信度大于置信度阈值的情况下,才能够确认该位姿信息是准确的,从而保证能够基于该位姿信息将该帧三维点云数据拼接在正确的位置上;在位姿信息的置信度小于或者等于置信度阈值的情况下,则通过分块点云地图和局部点云地图对位姿信息进行优化,得到优化的位姿信息,也即对位姿信息进行校正,以最大化位姿信息的准确度,进而保证能够基于该位姿信息将该帧三维点云数据拼接在正确的位置上。
对于位姿的优化,计算机设备可以采用同步定位与建图(SimultaneousLocalization And Mapping,SLAM)闭环算法对三维点云数据关联的位姿信息进行优化,得到优化的位姿信息;或者,还可以采用BA优化算法对三维点云数据关联的位姿信息进行优化,得到优化的位姿信息,BA也即光束平差法(Bundle Adjustment)。
比如,计算机设备调用SLAM闭环算法,基于三维点云数据和分块点云地图中的点云数据对位姿信息进行优化,得到第一位姿信息;基于三维点云数据和局部点云地图中的点云数据对位姿信息进行优化,得到第二位姿信息;之后基于第一位姿信息和第二位姿信息确定优化的位姿信息。
步骤204,基于优化的位姿信息将三维点云数据拼接至分块点云地图与局部点云地图。
针对每一帧三维点云数据,计算机设备按照优化的位姿信息,将三维点云数据同步拼接至分块点云地图与局部点云地图;或者按照优化的位姿信息,将三维点云数据拼接至分块点云地图,再将三维点云数据拼接至局部点云地图;或者按照优化的位姿信息,将三维点云数据拼接至局部点云地图,再将三维点云数据拼接至分块点云地图。
综上所述,本实施例提供的点云地图构建方法,首先将整个建图区域分块,然后针对每个分块区域构建分块点云地图;且在构建分块点云地图的同时,还构建局部点云地图,这里的局部点云地图是由历史时间段上已构建的部分或者全部分块点云地图拼接的,与每个分块点云地图不完全一样,在点云地图的构建过程中,若是位姿信息的置信度小于置信度阈值,则通过分块点云地图和局部点云地图共同对位姿信息进行优化,这样能够保证位姿信息的准确性,从而保证在按照该位姿信息构图的精确度,这样就避免了组合惯导受到天气、物体遮挡等因素的影响,输出的位姿信息不准确,进而影响基于其输出的位姿信息构建的高精地图的精准度。
其次,通过分块对整个建图区域进行建图,能够避免单独采用局部点云地图的构建方式时导致的误差累积,保证整个构图的全局一致性;结合局部点云地图则能够保证局部构图的平滑性。
示例性的,计算机设备在对三维点云数据与位姿信息关联之前,对获得的位姿信息进行预处理,确定该位姿信息的置信度,对该位姿信息标记其置信度。可选地,该置信度包括位姿信息采集的信号质量,相应地,置信度阈值包括信号质量阈值。如图3,图2中步骤203可以通过步骤301来实现,如下所示:
步骤301,在位姿信息对应的信号质量小于信号质量阈值的情况下,通过分块点云地图和局部点云地图对位姿信息进行优化,得到优化的位姿信息。
计算机设备获取位姿信息以及位姿信息对应的信号质量,然后将位姿信息与信号质量进行关联,或者,将信号质量生成为位姿信息携带的标记信息。
这里的信号质量可以是该位姿信息采集时GNSS(或者GPS)的定位信号的信号质量。比如,可以是该位姿信息采集时GNSS(或者GPS)的定位信号的信号强度,和/或信噪比(Signal to Noise Ratio,SNR)。
还存在一种情况,计算机设备对位姿信息预处理,确定位置信息的置信度大于置信度阈值、或者小于等于置信度阈值,将置信度大于置信度阈值的位姿信息标记为固定位姿。示例性的,计算机设备在位姿信息的置信度大于置信度阈值的情况下,将位姿信息标记为固定位姿。那么,步骤203还可以通过步骤302来实现,如图4所示:
步骤302,在位姿信息不存在固定位姿的标记的情况下,通过分块点云地图和局部点云地图对位姿信息进行优化,得到优化的位姿信息。
计算机设备在获得位姿信息之后,确定位姿信息是否携带有固定位姿(fix)的标记;若是不存在,则执行“通过分块点云地图和局部点云地图对位姿信息进行优化,得到优化的位姿信息”的步骤。
这样,采用如上的方式能够保证每一帧三维点云数据的位姿信息的准确性,进而使得每一帧三维点云数据都能够准确地拼接至分块点云地图和局部点云地图。
如图5,对于每一帧三维点云数据关联的位姿信息的优化,还可以采用步骤401至步骤403来实现,如下所示:
步骤401,在位姿信息的置信度小于等于置信度阈值的情况下,根据三维点云数据与分块点云地图中的点云数据,预估得到地图扫描设备在时间戳上的第一位姿信息。
示例性的,计算机设备基于原有位姿信息(即三维点云数据关联的位姿信息)随机出至少两个候选位姿;基于三维点云数据和分块点云地图中的点云数据,计算至少两个候选位姿中每一个候选位姿的分布概率,得到每一个候选位姿的第一分布概率,候选位姿的第一分布概率表示了在分块点云地图中,该候选位姿作为上述三维点云数据的标准位姿信息的概率;将最大的第一分布概率对应的候选位姿确定为第一位姿信息,并记录第一位姿信息对应的第一分布概率,也即第一预估概率,该第一预估概率即是指位姿优化时第一位姿信息的分布概率。
步骤402,在位姿信息的置信度小于等于置信度阈值的情况下,根据三维点云数据与局部点云地图中的点云数据,预估得到地图扫描设备在时间戳上的第二位姿信息。
计算机设备基于三维点云数据和局部点云地图中的点云数据,计算至少两个候选位姿中每一个候选位姿的分布概率,得到每一个候选位姿的第二分布概率,候选位姿的第二分布概率表示了在局部点云地图中,该候选位姿作为上述三维点云数据的标准位姿信息的概率;将最大的第二分布概率对应的候选位姿确定为第二位姿信息,并记录第二位姿信息对应的第二分布概率,也即第二预估概率,该第二预估概率即是指位姿优化时第二位姿信息的分布概率。
步骤403,基于第一位姿信息和第二位姿信息确定出优化的位姿信息。
当第一预估概率大于第二预估概率时,将第一位姿信息确定为优化的位姿信息;或者,当第二预估概率大于第一预估概率时,将第二位姿信息确定为优化的位姿信息;或者,当第一预估概率等于第二预估概率时,将第一位姿信息或者第二位姿信息确定为优化的位姿信息。
可选地,计算机设备还可以在获得第一位姿信息和第二位姿信息之后,对第一位姿信息和第二位姿信息进行位姿融合,得到优化的位姿信息。
该方法提供的位姿信息的优化方式,采用分块点云地图和局部点云地图共同对位姿信息优化,使得优化的位姿信息能够更加准确;尤其是,上述第一位姿信息和第二位姿信息的融合,保证了全局一致性的同时,还能够保证局部构图的平滑性。
地图采集车通常是由工作人员驾驶的,因此,对于每一个分块区域,其包括开阔区域与有遮挡区域,可以通过人为控制使得地图扫描设备优先采集该分块区域内的开阔区域的三维点云数据,即得到第一点云数据,再采集该分块区域内的有遮挡区域的三维点云数据,即得到第二点云数据;比如,对于常见的快阔的机动车道和有林荫遮挡的非机动车道,优先采集机动车道的三维点云数据,再采集非机动车道的三维点云数据。也因此,第一点云数据的第一采集时刻优先于第二点云数据的采集时刻。
这样,在建图过程中,优先对开阔区域内的三维点云数据进行拼接,完成分块点云地图的一部分,然后对有遮挡区域内的三维点云数据进行拼接,完成分块点云地图的另一部分。这样的构图方式,可以优先获得具备优质的(也即置信度高的)位姿信息对应的三维点云数据,准确地构建出分块点云地图的一部分,保证了这一部分地图的精准度;且在位姿信息置信度足够高的情况下,无需进行位姿优化,也提高了分块点云地图的构建效率。
由于局部点云地图的构建容易发生误差累积,为了避免这一事件的发生,计算机设备在局部点云地图的构建的过程中,实时检测地图扫描设备的运动距离(也即地图采集车的运动距离);在运动距离大于距离阈值的情况下,对局部点云地图进行截断,以构建新的局部点云地图。其中,运动距离是指局部点云地图的开始构建时刻起的累积运动距离。这里的运动距离可以包括局部点云地图的开始构建时刻起地图扫描设备的直线运动距离。
在另一个实施例中,计算机设备可以在局部点云地图的构建过程中,实时预估局部点云地图对应的平面地图面积;在平面地图面积大于面积阈值的情况下,对局部点云地图进行截断,以构建新的局部点云地图。
对于新的局部点云地图的构建,计算机设备可以基于地图扫描设备所在的地理位置,获取与上述地理位置相邻的已构建分块点云地图,其中,已构建分块点云地图可以是整个构建完成的分块点云地图,也可以是部分构建完成的分块点云地图;基于相邻的已构建分块点云地图拼接生成新的局部点云地图。
或者,计算机设备确定出已拼接三维点云地图的时间戳中距离当前时刻最近的目标时间戳(或者直接将当前时刻确定为目标时间戳),获取目标时间戳相邻的指定时间段上生成的已构建分块点云地图,基于上述指定时间段上的已构建分块点云地图拼接生成新的局部点云地图。
或者,计算机设备确定出已拼接三维点云地图的时间戳中距离当前时刻最近的目标时间戳(或者直接将当前时刻确定为目标时间戳),确定出目标时间戳相邻的指定时间段上生成的部分局部点云地图,剔除局部点云地图中除部分局部点云地图之外的其他部分局部点云地图,即得到新的局部点云地图,也即保留部分局部点云地图作为新的局部点云地图。
这一方法能够在结合局部点云地图来保证构图的局部平滑性的同时,还能够减少局部点云地图的误差累积。
在构图的过程中,可能出现重复进入同一个分块区域的情况,此时,计算机设备可以对该分块区域对应的分块点云地图进行校正,如图6,步骤如下:
步骤501,当进入分块区域时,遍历构建过点云地图的分块区域的列表。
计算机设备中设置有构建过点云地图的分块区域的列表;计算机设备在构图的过程中,基于地图扫描设备的地理位置确定进入一个新的分块区域,则遍历构建过点云地图的分块区域的列表,以确定是否存在该分块区域的分块点云地图。
步骤502,在列表中存在分块区域的情况下,从历史数据中载入分块区域的分块点云地图。
计算机设备在列表中存在分块区域的情况下,从存储器存储的历史数据中查找该分块区域的分块点云地图的数据,载入该分块区域的分块点云地图。
步骤503,在获取三维点云数据之后,基于三维点云数据对分块点云地图进行校正。
计算机设备在载入该分块区域的分块点云地图之后,还获取三维点云数据,基于该三维点云数据对分块点云地图进行校正。
存在另一种情况,载入的分块点云地图可能是对分块区域的部分构建完成的分块点云地图,也即这个分块点云地图是构建了一部分,并非是对整个分块区域构建完成,这时,计算机设备基于三维点云数据对分块点云地图进行校正的同时,还执行上述实施例提供的点云地图构建方法,基于其他三维点云数据对分块点云地图进行继续构建。
步骤504,在列表中不存在分块区域的情况下,基于三维点云数据构建分块区域的分块点云地图。
计算机设备在列表中不存在分块区域的情况下,执行上述实施例提供的点云地图构建方法,基于三维点云数据对分块点云地图进行构建。
这一方式能够避免对已构图的分块区域,重复做构建的分块点云地图的动作。
还存在三维点云数据关联的位姿信息,其置信度大于置信度阈值,此时,可以执行图7中的步骤205,如下所示:
步骤205,在置信度大于置信度阈值的情况下,基于位姿信息将三维点云数据拼接至分块点云地图和局部点云地图。
计算机设备在位姿信息的信号质量大于置信度阈值的情况下,对位姿信息进行运动补偿之后,直接基于该位姿信息将三维点云数据拼接至分块点云地图和局部点云地图。
示例性的,计算机设备在位姿信息的标记为固定位姿的情况下,基于位姿信息将三维点云数据拼接至分块点云地图和局部点云地图。
这一点云地图构建方式,在位姿信息的可信度足够时,可以直接采用该位姿信息进行点云数据的拼接,那么可以节省位姿优化的步骤,这样的位姿信息越多,那么点云地图的构建速度越快。
图8示出了本申请一个示例性实施例提供的点云地图构建装置的框图,该装置可以通过软件、硬件、或者二者结合实现成为计算机设备的部分或者全部。
该装置包括:
获取模块601,用于获取三维点云数据,所述三维点云数据是由地图扫描设备对分块区域内的环境扫描得到的,所述分块区域是对整个建图区域分块得到的子区域;
关联模块602,用于按照时间戳将所述三维点云数据关联至所述地图扫描设备的位姿信息,所述位姿信息用于表示所述三维点云数据采集过程中所述地图扫描设备的运动姿态;
优化模块603,用于在所述位姿信息的置信度小于置信度阈值的情况下,通过分块点云地图和局部点云地图对所述位姿信息进行优化,得到优化的位姿信息;所述分块点云地图是指所述分块区域的点云地图,所述局部点云地图是由部分或者全部已构建分块点云地图拼接得到;
构建模块604,用于基于所述优化的位姿信息将所述三维点云数据拼接至所述分块点云地图与所述局部点云地图。
在一些实施例中,优化模块603,用于:
根据所述三维点云数据与所述分块点云地图中的点云数据,预估得到所述地图扫描设备在所述时间戳上的第一位姿信息;以及
根据所述三维点云数据与所述局部点云地图中的点云数据,预估得到所述地图扫描设备在所述时间戳上的第二位姿信息;
基于所述第一位姿信息和所述第二位姿信息确定出所述优化的位姿信息。
在一些实施例中,优化模块603,用于:
当第一预估概率大于第二预估概率时,将所述第一位姿信息确定为所述优化的位姿信息;或者,当所述第二预估概率大于所述第一预估概率时,将所述第二位姿信息确定为所述优化的位姿信息;其中,所述第一预估概率是指位姿优化时所述第一位姿信息的分布概率,所述第二预估概率是指位姿优化时所述第二位姿信息的分布概率;
或者,对所述第一位姿信息和所述第二位姿信息进行位姿融合,得到所述优化的位姿信息。
在一些实施例中,所述分块区域包括开阔区域与有遮挡区域,相应地,所述三维点云数据包括对所述开阔区域采集的第一点云数据、与对所述有遮挡区域采集的第二点云数据;
所述第一点云数据的第一采集时刻先于所述第二点云数据的第二采集时刻。
在一些实施例中,该装置还包括:检测模块605和截断模块606;
检测模块605,用于在所述局部点云地图的构建过程中,实时检测所述地图扫描设备的运动距离;其中,所述运动距离是指所述局部点云地图的开始构建时刻起的累积运动距离;
截断模块606,用于在所述运动距离大于距离阈值的情况下,对所述局部点云地图进行截断,以构建新的局部点云地图。
在一些实施例中,该装置还包括:检测模块605和截断模块606;
检测模块605,用于在所述局部点云地图的构建过程中,实时预估所述局部点云地图对应的平面地图面积;
截断模块606,用于在所述平面地图面积大于面积阈值的情况下,对所述局部点云地图进行截断,以构建新的局部点云地图。
在一些实施例中,该装置还包括:检测模块605、载入模块607和校正模块608;
检测模块605,用于当进入所述分块区域时,遍历构建过点云地图的分块区域的列表;
载入模块607,用于在所述列表中存在所述分块区域的情况下,从历史数据中载入所述分块区域的所述分块点云地图;
校正模块608,用于在获取所述三维点云数据之后,基于所述三维点云数据对所述分块点云地图进行校正。
在一些实施例中,构建模块604,用于在所述置信度大于所述置信度阈值的情况下,基于所述位姿信息将所述三维点云数据拼接至所述分块点云地图和所述局部点云地图。
在一些实施例中,所述置信度包括所述位姿信息采集的信号质量,相应地,所述置信度阈值包括信号质量阈值。
综上所述,本实施例提供的点云地图构建装置,将整个建图区域分块,然后针对每个分块区域构建分块点云地图;且在构建分块点云地图的同时,还构建局部点云地图,这里的局部点云地图是由历史时间段上已构建的部分或者全部分块点云地图拼接的,与每个分块点云地图不完全一样,在点云地图的构建过程中,若是位姿信息的置信度小于置信度阈值,则通过分块点云地图和局部点云地图共同对位姿信息进行优化,这样能够保证位姿信息的准确性,从而保证在按照该位姿信息构图的精确度,这样就避免了组合惯导受到天气、物体遮挡等因素的影响,输出的位姿信息不准确,进而影响基于其输出的位姿信息构建的高精地图的精准度。
其次,通过分块对整个建图区域进行建图,能够避免单独采用局部点云地图的构建方式时导致的误差累积,保证整个构图的全局一致性;结合局部点云地图则能够保证局部构图的平滑性。
图9示出了本申请一个示例性实施例提供的计算机设备的结构示意图。该计算机设备可以是执行如本申请提供的点云地图构建方法的设备。
计算机设备700包括中央处理单元(CPU,Central Processing Unit)701、包括随机存取存储器(RAM,Random Access Memory)702和只读存储器(ROM,Read Only Memory)703的系统存储器704,以及连接系统存储器704和中央处理单元701的系统总线705。计算机设备700还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统,Input Output System)706,和用于存储操作系统713、应用程序714和其他程序模块715的大容量存储设备707。
基本输入/输出系统706包括有用于显示信息的显示器708和用于用户输入信息的诸如鼠标、键盘之类的输入设备709。其中显示器708和输入设备709都通过连接到系统总线705的输入输出控制器710连接到中央处理单元701。基本输入/输出系统706还可以包括输入输出控制器710以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器710还提供输出到显示屏、打印机或其他类型的输出设备。
大容量存储设备707通过连接到系统总线705的大容量存储控制器(未示出)连接到中央处理单元701。大容量存储设备707及其相关联的计算机可读介质为计算机设备700提供非易失性存储。也就是说,大容量存储设备707可以包括诸如硬盘或者紧凑型光盘只读存储器(CD-ROM,Compact Disc Read Only Memory)驱动器之类的计算机可读介质(未示出)。
计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、可擦除可编程只读存储器(EPROM,Erasable Programmable Read Only Memory)、带电可擦可编程只读存储器(EEPROM,Electrically Erasable Programmable Read Only Memory)、闪存或其他固态存储其技术,CD-ROM、数字通用光盘(DVD,Digital Versatile Disc)或固态硬盘(SSD,Solid State Drives)、其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。其中,随机存取记忆体可以包括电阻式随机存取记忆体(ReRAM,Resistance RandomAccess Memory)和动态随机存取存储器(DRAM,Dynamic Random Access Memory)。当然,本领域技术人员可知计算机存储介质不局限于上述几种。上述的系统存储器704和大容量存储设备707可以统称为存储器。
根据本申请的各种实施例,计算机设备700还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即计算机设备700可以通过连接在系统总线705上的网络接口单元711连接到网络712,或者说,也可以使用网络接口单元711来连接到其他类型的网络或远程计算机系统(未示出)。
上述存储器还包括一个或者一个以上的程序,一个或者一个以上程序存储于存储器中,被配置由CPU执行。
在一个可选的实施例中,提供了一种计算机设备,该计算机设备包括处理器和存储器,存储器中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现如上所述的点云地图构建方法。
在一个可选的实施例中,提供了一种计算机可读存储介质,该存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现如上所述的点云地图构建方法。
可选地,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、固态硬盘(SSD,Solid State Drives)或光盘等。其中,随机存取记忆体可以包括电阻式随机存取记忆体(ReRAM,Resistance RandomAccess Memory)和动态随机存取存储器(DRAM,Dynamic Random Access Memory)。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
本申请还提供一种计算机可读存储介质,该存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述各方法实施例提供的点云地图构建方法。
本申请还提供了一种计算机程序产品,上述计算机程序产品包括计算机指令,上述计算机指令存储在计算机可读存储介质中。计算机设备的处理器从上述计算机可读存储介质读取上述计算机指令,上述处理器执行上述计算机指令,使得上述计算机设备执行如上所述的点云地图构建方法。
应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (13)
1.一种点云地图构建方法,其特征在于,所述方法包括:
获取三维点云数据,所述三维点云数据是由地图扫描设备对分块区域内的环境扫描得到的,所述分块区域是对整个建图区域分块得到的子区域;
按照时间戳将所述三维点云数据关联至所述地图扫描设备的位姿信息,所述位姿信息用于表示所述三维点云数据采集过程中所述地图扫描设备的运动姿态;
在所述位姿信息的置信度小于置信度阈值的情况下,通过分块点云地图和局部点云地图对所述位姿信息进行优化,得到优化的位姿信息;所述分块点云地图是指所述分块区域的点云地图,所述局部点云地图是由部分或者全部已构建分块点云地图拼接得到;
基于所述优化的位姿信息将所述三维点云数据拼接至所述分块点云地图与所述局部点云地图。
2.根据权利要求1所述的方法,其特征在于,所述通过分块点云地图和局部点云地图对所述位姿信息进行优化,得到优化的位姿信息,包括:
根据所述三维点云数据与所述分块点云地图中的点云数据,预估得到所述地图扫描设备在所述时间戳上的第一位姿信息;以及
根据所述三维点云数据与所述局部点云地图中的点云数据,预估得到所述地图扫描设备在所述时间戳上的第二位姿信息;
基于所述第一位姿信息和所述第二位姿信息确定出所述优化的位姿信息。
3.根据权利要求2所述的方法,其特征在于,所述基于所述第一位姿信息和所述第二位姿信息确定出所述优化的位姿信息,包括:
当第一预估概率大于第二预估概率时,将所述第一位姿信息确定为所述优化的位姿信息;或者,当所述第二预估概率大于所述第一预估概率时,将所述第二位姿信息确定为所述优化的位姿信息;其中,所述第一预估概率是指位姿优化时所述第一位姿信息的分布概率,所述第二预估概率是指位姿优化时所述第二位姿信息的分布概率;
或者,对所述第一位姿信息和所述第二位姿信息进行位姿融合,得到所述优化的位姿信息。
4.根据权利要求1至3任一所述的方法,其特征在于,所述分块区域包括开阔区域与有遮挡区域,相应地,所述三维点云数据包括对所述开阔区域采集的第一点云数据、与对所述有遮挡区域采集的第二点云数据;
所述第一点云数据的第一采集时刻先于所述第二点云数据的第二采集时刻。
5.根据权利要求1至3任一所述的方法,其特征在于,所述方法还包括:
在所述局部点云地图的构建过程中,实时检测所述地图扫描设备的运动距离;
在所述运动距离大于距离阈值的情况下,对所述局部点云地图进行截断,以构建新的局部点云地图;
其中,所述运动距离是指所述局部点云地图的开始构建时刻起的累积运动距离。
6.根据权利要求1至3任一所述的方法,其特征在于,所述方法还包括:
在所述局部点云地图的构建过程中,实时预估所述局部点云地图对应的平面地图面积;
在所述平面地图面积大于面积阈值的情况下,对所述局部点云地图进行截断,以构建新的局部点云地图。
7.根据权利要求1至3任一所述的方法,其特征在于,所述方法还包括:
当进入所述分块区域时,遍历构建过点云地图的分块区域的列表;
在所述列表中存在所述分块区域的情况下,从历史数据中载入所述分块区域的所述分块点云地图;
在获取所述三维点云数据之后,基于所述三维点云数据对所述分块点云地图进行校正。
8.根据权利要求1至3任一所述的方法,其特征在于,所述方法还包括:
在所述置信度大于所述置信度阈值的情况下,基于所述位姿信息将所述三维点云数据拼接至所述分块点云地图和所述局部点云地图。
9.根据权利要求1至3任一所述的方法,其特征在于,所述置信度包括所述位姿信息采集的信号质量,相应地,所述置信度阈值包括信号质量阈值。
10.一种点云地图构建装置,其特征在于,所述装置包括:
获取模块,用于获取三维点云数据,所述三维点云数据是由地图扫描设备对分块区域内的环境扫描得到的,所述分块区域是对整个建图区域分块得到的子区域;
关联模块,用于按照时间戳将所述三维点云数据关联至所述地图扫描设备的位姿信息,所述位姿信息用于表示所述三维点云数据采集过程中所述地图扫描设备的运动姿态;
优化模块,用于在所述位姿信息的置信度小于置信度阈值的情况下,通过分块点云地图和局部点云地图对所述位姿信息进行优化,得到优化的位姿信息;所述分块点云地图是指所述分块区域的点云地图,所述局部点云地图是由部分或者全部已构建分块点云地图拼接得到;
构建模块,用于基于所述优化的位姿信息将所述三维点云数据拼接至所述分块点云地图与所述局部点云地图。
11.一种计算机设备,其特征在于,所述计算机设备包括:处理器和存储器,所述存储器存储有计算机程序,所述计算机程序由所述处理器加载并执行以实现如权利要求1至9任一所述的点云地图构建方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序由处理器加载并执行以实现如权利要求1至9任一所述的点云地图构建方法。
13.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机指令,所述计算机指令存储在计算机可读存储介质中;
计算机设备的处理器从所述计算机可读存储介质读取所述计算机指令,所述处理器执行所述计算机指令,使得所述计算机设备执行如权利要求1至9任一所述的点云地图构建方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111314754.0A CN114092638A (zh) | 2021-11-08 | 2021-11-08 | 点云地图构建方法、装置、设备、存储介质及计算机程序 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111314754.0A CN114092638A (zh) | 2021-11-08 | 2021-11-08 | 点云地图构建方法、装置、设备、存储介质及计算机程序 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114092638A true CN114092638A (zh) | 2022-02-25 |
Family
ID=80299318
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111314754.0A Pending CN114092638A (zh) | 2021-11-08 | 2021-11-08 | 点云地图构建方法、装置、设备、存储介质及计算机程序 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114092638A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115080678A (zh) * | 2022-06-29 | 2022-09-20 | 杭州海康威视数字技术股份有限公司 | 定位地图建立方法、装置及电子设备 |
-
2021
- 2021-11-08 CN CN202111314754.0A patent/CN114092638A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115080678A (zh) * | 2022-06-29 | 2022-09-20 | 杭州海康威视数字技术股份有限公司 | 定位地图建立方法、装置及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108921947B (zh) | 生成电子地图的方法、装置、设备、存储介质以及采集实体 | |
CN107796397B (zh) | 一种机器人双目视觉定位方法、装置和存储介质 | |
CN114236552B (zh) | 基于激光雷达的重定位方法及系统 | |
KR102548282B1 (ko) | 고정밀도 맵 작성 방법 및 장치 | |
CN107167826B (zh) | 一种自动驾驶中基于可变网格的图像特征检测的车辆纵向定位系统及方法 | |
CN111192331B (zh) | 一种激光雷达和相机的外参标定方法及装置 | |
CN109141446A (zh) | 用于获得地图的方法、装置、设备和计算机可读存储介质 | |
CN107845114B (zh) | 地图的构建方法、装置及电子设备 | |
JP2018124787A (ja) | 情報処理装置、データ管理装置、データ管理システム、方法、及びプログラム | |
CN112363158B (zh) | 机器人的位姿估计方法、机器人和计算机存储介质 | |
CN107527382B (zh) | 数据处理方法以及装置 | |
CN111680747B (zh) | 用于占据栅格子图的闭环检测的方法和装置 | |
CN110597265A (zh) | 一种扫地机器人回充方法和装置 | |
CN113432533B (zh) | 一种机器人定位方法、装置、机器人及存储介质 | |
CN113959457B (zh) | 一种自动驾驶车辆的定位方法、装置、车辆和介质 | |
CN114549738A (zh) | 无人车室内实时稠密点云重建方法、系统、设备及介质 | |
CN114111775A (zh) | 一种多传感器融合定位方法、装置、存储介质及电子设备 | |
KR102490521B1 (ko) | 라이다 좌표계와 카메라 좌표계의 벡터 정합을 통한 자동 캘리브레이션 방법 | |
CN114114367A (zh) | Agv室外定位切换方法、计算机装置及程序产品 | |
CN114092638A (zh) | 点云地图构建方法、装置、设备、存储介质及计算机程序 | |
CN115077563A (zh) | 车辆定位精度评价方法、装置及电子设备 | |
CN115773747A (zh) | 一种高精度地图生成方法、装置、设备及存储介质 | |
CN115797310A (zh) | 一种光伏电站组串倾角的确定方法及电子设备 | |
CN114111769B (zh) | 一种视觉惯性定位方法、装置及自动驾驶装置 | |
CN111462321B (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 |