
一种3d激光雷达点云数据预测点的快速选取配准方法
技术领域
1.本发明涉及三维激光雷达的即时定位与建图技术领域,具体涉及到一种3d 激光雷达点云数据预测点的快速选取配准方法。
技术背景
2.在地图构建步骤中,除了要为slam(simultaneous localization and mapping) 确定地图表示形式外,还有一个重要目标:将新构造的地图元素控制在理想的位置上,以便于建立两帧地图间地图元素的对应关系,这也是为位姿估计步骤做准备。然而,3d环境要比2d环境更复杂,3d点集的数量也远远大于2d点集,进行直接的拓展会带来很大问题。因为地图重构方法中“预测”这一步骤的算法复杂度是o(n3),计算量随点集的数量成三次方增长,数据量的急剧增加,为这一步的计算带来了繁重的负担。
3.为了克服现有技术的缺陷,本发明提供一种预测点快速选取配准方法,所研究的方法具有2d和3d之间的通用性。以解决现有slam技术背景中点集数据量大、数据处理慢且预测点集识别效率较低的问题。可通过分割多维数据空间的数据点集对比选取预测点集,通过计算测试点集与筛选的训练点集之间的相对距离,并进行预测点相对距离权重验证,实现快速精确选取预测点集位置,从而有助于高精度的快速定位建图。
4.现有技术中有关三维地图构建点集配准的方法在基于激光雷达的环境建模中得到了广泛的应用。专利cn202110066231.2公开了一种基于高斯距离的点云数据的处理方法。根据原始点云数据集的特征信息计算点云数据集中所有的点到关键点的高斯距离,再基于高斯距离确定关键点的相邻点集;对相邻点集进行特征聚合,生成关键点对应的特征点集来建图。专利cn202011328046.8公开了一种基于多点云数据矩阵的点云数据处理方法,通过预先训练得到的点云重构模型中的序列化网络层对所述点云矩阵进行序列化处理,来获得多个子特征矩阵,再基于多子特征矩阵进行拼接处理,得到第一特征矩阵,基于所述点云重构模型中的重构网络层对所述第一特征矩阵进行重构。专利cn201910438575.4公开了一种基于坐标积分图像局部法向量聚类的点云数据处理方法。通过确定点云数据的坐标积分图像和深度积分图像,根据所述坐标积分图像和所述深度积分图像,确定所述点云数据中的每个点分别对应的局部法向量,再根据各所述局部法向量对所述点云数据中的点进行聚类得到不同类别的点集,来确定各类别点集对应的物体信息。然而此类方法存在以下几个问题:第一,此类发明通常利用传统机器学习算法对预测点进行识别,由于预测点排列的不规则性此类方法效率较低;第二,在这些研究中,它们都将应用场景的结构当作单一曲面来进行建模,当建图区域过大时,误差会被放大,不同的训练点之间在选取预测点时会受到影响;并且第三,当建图区域过大时,面对巨大的数据量,其算法计算速度慢,进而建图速度就变得相对缓慢。
技术实现要素:5.为了克服现有技术的不足,本发明提供一种3d激光雷达点云数据预测点的快速选
取配准方法,面对一些复杂场景的三维点云地图构建,这些场景中通常都含有多曲面、多层面的结构(例如,两堵相互垂直的墙),复杂的3d环境下,地图重构方法中“预测”这一步骤的算法复杂度是o(n3),计算量随点集的数量成三次方增长,数据量的急剧增加,为这一步的计算带来了繁重的负担,进行直接的拓展会带来很大计算难度;本发明通过将激光雷达扫描的整个点云数据集分割成一些子数据集,分别为各个子数据集中的预测点进行快速配准处理,进一步提升三维点云数据集中预测点集的整体配准速率。
6.为解决上述技术问题本发明的技术方案为,
7.一种3d激光雷达点云数据预测点的快速选取配准方法,包括以下步骤:
8.步骤1:首先用三维激光雷达对区域a进行扫描,获得区域a的点云数据点集φ,将数据集φ作为输入项;
9.步骤2:将点云数据集φ等分为n个子数据点集φ
i
(i=1,
…
,n),筛选保留符合条件的子点集φ
j
(j=1,
…
,k,k<n)用以参与点集配准,所述条件为子数据点集中数据点数>w,w为自行指定数值;
[0010][0011]
其中:s
(φ
′
)
表示参与点集配准的所有点集和;
[0012]
步骤3:分析子点集φ
j
中各数据点集分布情况,对点集φ
j
中的各个数据点进行规则划分,构建子点集序列结构;
[0013]
步骤4:根据子数据点集φ
j
的划分规则对测试点进行定位,预测点进行选取,并进行最优预测点验证;
[0014]
步骤5:输出三维激光雷达扫描的区域a中最终选取的用以建图的预测点集。
[0015]
进一步,所述步骤3包括以下步骤:
[0016]
步骤3.1:要处理的对象集合是一个三维空间中的数据集,首先需要将三维数据进行划分,以维度d作为标准来对数据进行划分,d∈{x,y,z};
[0017]
步骤3.2:首先对子点集φ
j
每个维度上各数据点假设点集φ
j
上有q个数据点,l=1,2,3
…
q)进行整合处理,找出各维度数据点的中值每维度各数据点分别对该维度中值求差:
[0018][0019]
其中:表示m维度的差值和;
[0020]
通过比较每个维度的差值和大小来确定所选取的维度,差值和最大的维度即为参考维度d;
[0021]
步骤3.3:在确定参考维度d后,基于该维度中值维度中值为d维度上的数据点中值,对三维数据点进行一次划分,以平面为分界,使得各数据点在d维度上,一侧的数据点值小于平面另一侧的所有数据点的值,对于划分产生的两个新子点集φ
j1
、φ
j2
的数据点以同样的方法再划分直到每个新产生的子点集不能再划分为止。
[0022]
再进一步,所述步骤4包括以下步骤:
[0023]
步骤4.1:基于步骤3所述,在完成子点集数据点划分后,对于某一测试点 p,就可以按照对应子点集的划分规则很快的进行定位,初步寻找出距其最近的预测点;
[0024]
步骤4.2:计算测试点p与其初步判断得到的预测点的相对距离dis,以测试点p为圆心,相对距离dis为半径作球c
′
,进一步判断,距测试点p是否还有更近的训练样点,当球c
′
内存在其他训练样点时,可确定存在更优预测点,可通过距离权重值大小比较选取最优预测点并更新相对距离为dis
′
,同理,再以测试点p为圆心,相对距离dis
′
为半径作球,至预测球内不含有其他训练样点,结束搜索,可以将该思想扩充到全部的子点集φ
j
中,以提升预测点选取的效率。
[0025]
本发明的有益表现是:本发明提出了一种三维激光雷达点云数据中预测点的快速选取配准方法,通过将激光雷达扫描的整个点云数据集等分割成一些子数据集,对子数据集中的各数据点进行规则划分处理后,再基于子数据集划分数据点的规则,分别为各个子数据集中的测试点进行快速配准处理,验证选取预测点,进一步提升三维点云数据集中预测点集的整体配准速率。所提出的三维激光雷达点云数据预测点的快速选取配准方法对于激光slam建图中点云数据的点集配准处理具有很大的参考价值。
附图说明:
[0026]
图1为本发明方法流程图;
[0027]
图2为本发明子点集中的预测点快速选取案例示意图。
具体实施方式
[0028]
下面结合附图和实施例,对本发明的具体实施方式进一步详细叙述(以a区域场景3d建图为例)。
[0029]
参照图1~图2,一种3d激光雷达点云数据预测点的快速选取配准方法,包括以下步骤:
[0030]
步骤1:首先用三维激光雷达对区域a进行扫描,获得区域a的点云数据点集φ,把点云数据集φ作为输入项;
[0031]
步骤2:将点云数据集φ等分为100个子数据点集φ
i
(i=1,
…
,100),筛选保留符合条件(子数据点集中数据点数>3)的子点集φ
j
(j=1,
…
,95)用以参与点集配准;
[0032][0033]
其中:s
(φ
′
)
表示参与点集配准的所有点集和;
[0034]
步骤3:分析子点集φ
j
中各数据点集分布情况,对点集φ
j
中的各个数据点进行规则划分,构建子点集序列结构,以某一子数据点集φ
κ
(1≤κ≤95)的二维(xy)平面为例,下面将具体说明如何进行预测点的点集配准,假设子数据点集φ
κ
中,包括以下训练样点(数据点):(3,4.2)、(4,8)、(5,7)、(6,4)、(7,5)、(8,2)、(9,1)、(10,6)。
[0035]
①
第一步:经计算参考中值x=7可将数据点集分为子数据点集φκ1:(3,4.2)、(4,8)、(5,7)、(6,4)和子数据点集φ
κ2
:(8,2)、 (9,1)、(10,6)两个子数据点集;
[0036]
②
第二步:子数据点集φ
κ1
经计算参考中值y=7又可划分为子数据点集
φ
κ11
:(3,4.2)、(6,4)和子数据点集φ
κ12
:(4,8);子数据点集φ
κ2
经计算参考中值y=2又可划分为子数据点集φ
κ21
:(9, 1)和子数据点集φ
κ22
:(10,6);
[0037]
③
第三步:子数据点集φ
κ11
再划分为子数据点集φ
κ111
:(3,4.2)和子数据点集φ
κ112
:(6,4);
[0038]
最终,可将各训练样点按照图2所示进行规则划分。
[0039]
步骤4:测试点定位和预测点选取,步骤如下:
[0040]
步骤4.1:假设点(3,6.5)为本案例的一测试点,第一步通过数据比较可确定测试点(3,6.5),介于训练样点(3,4.2)和(6,4)之间;
[0041]
步骤4.2:第二步通过相对距离的权重值比较,初步确定训练样点(3,4.2) 距测试点(3,6.5)最近,距离为dis=2.3,可初步确定点(3,4.2)为预测训练点;
[0042]
步骤4.3:第三步以测试点(3,6.5)为圆心,dis=2.3为半径作圆,进一步判断,是否还有距测试点(3,6.5)距离更近的训练样点,当圆内存在其他训练样点时,可确定存在更优预测点,通过距离权重值大小选取最优预测点;正如图2中所示,训练样点(4,8)和(5,7)在圆内,计算得训练样点(4,8) 距离测试点(3,6.5)更近,dis
′
=1.8。更新训练样点(4,8)为预测训练样点,再以测试点(3,6.5)为圆心,dis
′
=1.8为半径再作圆进行验证,圆内无训练样点,结束搜索;进一步将该思想扩充到全部的子点集φ
j
中,以提升预测点集配准效率;
[0043]
步骤5:输出预测点为(4,8),进一步对于每个子数据点集,不需要使用点集内的所有训练点,只需使用训练位置在测试位置附近且点集间相关性高的那些训练点,就可以得到足够准确的预测值,最终输出三维激光雷达扫描的区域a 中最终选取的用以建图的预测点集。
[0044]
本说明书的实施例所述的内容仅仅是对发明构思的实现形式的列举,仅作说明用途。本发明的保护范围不应当被视为仅限于本实施例所陈述的具体形式,本发明的保护范围也及于本领域的普通技术人员根据本发明构思所能想到的等同技术手段。