一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于深度学习的端到端三维点云配准方法与流程

2022-02-21 09:22:44 来源:中国专利 TAG:


1.本发明涉及点云slam算法技术领域,尤其是一种基于深度学习的端到端三维点云配准方法。


背景技术:

2.随着3d采集技术发展,三维点云广泛应用于自动驾驶、机器人、遥感和医疗等领域,而三维点云配准是其中的关键任务。涉及到以下两个概念,pointnet:一种基于深度学习的点云特征提取算法,slam:即时定位与地图构建,或并发建图与定位。经典的点云配准算法中,besl等人于1992年提出的最近点迭代算法(iterative closest point,icp)估计刚性转换,biber等人提出的3d-ndt算法借助优化技术计算出点云之间的最优配准状态。对此较多针对icp算法和3d-ndt算法进行优化,如借助平面特征的四参数表达法,构建最小二乘准则完成配准。随着深度学习技术的快速发展,针对三维点云的分类、分割、识别等网络被大量提出并且取得巨大的进步。2017年qi等人首次提出pointnet算法将深度学习网络用于三维点云中。pointnet 等算法通过局部信息与全局信息的联合在特征提取方面取得一定的效果。基于学习的点云配准中,主要分为基于特征配准和端到端配准。基于特征配准主要使用基于深度学习的点云特征网络进行特征描述子获取,最后利用svd算法或ransac算法计算变换矩阵。端到端点云配准网络中,主要使用回归的形式获得位姿变换,但是大多数基于此的配准方法缺少全局特征无法在大型点云中运用,部分方法也受限于初始位姿精度。
3.类似icp之类的一些传统算法和改进算法一定程度上提高了点云配准的准确性,但是在多噪声的情况下,对于初始估计匹配位姿要求较高,在缺乏初始位姿的情况下可能发生局部收敛。利用深度学习网络进行特征提取,最后使用svd或者ransac算法进行点云配准,此类方法对特征较敏感,导致算法泛化性差,基于深度学习的端到端点云配准算法在配准时间和精度方面仍存在不足。


技术实现要素:

4.本发明需要解决的技术问题是提供一种基于深度学习的端到端三维点云配准方法,改善传统点云配准算法存在的容易陷入局部收敛、几何特征描述子稳定性差等问题,在端到端配准网络中能够获得良好的效果。
5.为解决上述技术问题,本发明所采用的技术方案是:
6.一种基于深度学习的端到端三维点云配准方法,包括滤除对配准误差降低没有帮助地面点云,利用位置自适应点卷积网络获取三维点云的局部特征信息和全局特征信息,通过流嵌入式网络获取点云之间的相似性,利用位置自适应性点卷积网络获取全局特征和局部特征的融合特征,最后使用mini-pointnet网络获取两帧点云之间的位姿关系,使用对偶四元数形式进行表达,达到端到端配准效果;
7.本发明将共享的动态点卷积网络作为三维点云的特征提取模块,将得到的特征描
述子输入到流嵌入模块,最后利用全连接层作为整体的输出层即获得不同时刻点云的相对位姿变换关系。
8.本发明技术方案的进一步改进在于:包括以下部分:
9.1、地面滤除模块
10.在该模块中,采用扇形分割的方式,对激光雷达点云进行分割,获取每个扇形的最低点,与阈值进行对比,粗略估计地面点云,通过相邻扇形区域的地面点云z方向斜率对比,去除错误的地面点云估计,最后利用高斯平滑滤波,增加地面点云滤除的准确度;
11.2、特征提取模块
12.输入点云x,卷积层的输入特征f和输出特征g分别表示为针对点云中的每个点xi点卷积表示为
[0013][0014]
其中表示中心点xi与其邻点xi的输出卷积权值的函数;ni表示所有邻域点,λ(

)表示对张量进行最大化、求和、均值化等操作的聚合函数;
[0015]
为了能够克服三维点云具有的无序性、不规则性等特点,需要对卷积核函数进行设计优化;根据paconv算法中的卷积核设计,首先设计权重矩阵集合其中m表示权重矩阵的个数;设计系数学习网络,获取系数向量s
ij
={s
ijm
|m=1

m}用以关联权重矩阵,s
ij
为点xi和邻点xj的相对距离,该距离与点位置有着较大关联即位置自适应,再通过多层mlp学习到的权重系数,s
ij
表示为式(2)所示:
[0016]sij
=soft max(θ(xi,xj))
ꢀꢀꢀ
(2)
[0017]
其中θ(

)表示mlp网络层;根据权重和相对应系数,最终的卷积权重函数表示为式(3)所示:
[0018][0019]
特征提取模块在整个配准网络中起到重要作用,在该模块中需要对三维点云数据进行处理,尤其是多线激光雷达数据中,需要进行无效点去除;考虑到点云数据较多,需要进行一定的降采样处理;在本发明中,为了提高数据处理速度和整体系统的速度,在降采样处理前进行地面点云滤波处理,同时为了融合点云特征提取过程中的局部特征和全局特征,采用多个动态卷积核和最远点采样联动的方法完成特征提取部分;
[0020]
3、流嵌入模块
[0021]
通过特征提取层,获得两帧点云的数据为x

={xi∈r
3 d

|i=1
…n′
}、y

={yi∈r
3 d

|i=1
…n′
},其中d

表示为经过特征提取模块之后的特征维度,n

表示为通过特征提取模块中最远点采样之后的点;d

和n

的具体参数将在数据处理与网络训练小节中体现;点云x

中的每个点xi在点云y

中以半径r进行分组;
[0022]
计算点之间的相对距离和各自的特征输入到mlp网络中,获得输出的特征ei∈rd′
,如式(4)所示:
[0023][0024]
其中g
(...)
表示为该模块的输入点云特征,其中h(

)表示为多层mlp结构,与pointnet子模块类似,max{

}表示为最大池化;
[0025]
4、输出模块
[0026]
在输出模块中,主要利用mini-pointnet结构进行预测,最终的网络输出维度为8,利用对偶四元数,获得旋转矩阵和平移向量;
[0027]
5、损失函数部分
[0028]
对偶四元数的表达式为其中w、x、y、z均为对偶数,形如{a
dual
=a0 εa
ε
|ε2=0},即对偶四元数可以通过8个实数进行表达,利用对偶四元数计算旋转和平移如式(5)、(6)所示:
[0029]
r=q0ꢀꢀꢀ
(5)
[0030]
t=2q
sq0*
ꢀꢀꢀ
(6)
[0031]
其中,r表示为旋转所对应的四元数,根据对偶四元数的特征,采用deepclr中的损失函数,使用表示预测值:
[0032][0033][0034]
在本发明的点云配准框架中,利用位置自适应点卷积进行特征提取,在多个权重矩阵中使用随机初始化,为避免网络学习到相似的参数,导致无法保证权重矩阵的多样性,利用权重正则化避免该问题,保证内核的多样性,如式(9)所示:
[0035][0036]
最终的损失函数表示为:
[0037]
l=αl
t
βlr γl
corr
ꢀꢀꢀ
(10)
[0038]
本发明采用modelnet40数据集对网络进行训练和测试时候,该数据集包含40个不同种类共12311个模型三维点云数据;在特征提取模块中n
fps
=1024,n
sample
=32,mlp=[3,32,32,64],在流嵌入模块中,mlp=[128,128,256],损失函数中α=β=γ=1;
[0039]
使用kitti数据集时,在特征提取模块中n
fps
2048,n
sample
=64,mlp=[4,32,32,64],在流嵌入模块中,mlp=[128,128,256],损失函数中α=λ=1,β=200。
[0040]
本发明技术方案的进一步改进在于:在地面滤除模块中在地面滤除步骤时,考虑到点云的生成方式,利用扇形栅格将点云划分为m
channel
×mbin
块,分块式对点云进行地面估计,点云数据为pi={xi,yi,zi,ii},其中ii为强度信息,则点云属于栅格块由式(11)、(12)获得;
[0041][0042]
[0043]
首先设定相对雷达安装位置的地面高度阈值h
min
=-2.0m、h
max
=-0.4m,通过阈值判断地面点,在通过各个栅格的地面斜率阈值判断是否为地面点。
[0044]
本发明技术方案的进一步改进在于:在地面滤除模块中涉及到底点云地面分割使用点云地面分割算法:
[0045]
1)输入:读取kitti数据中的点云数据;
[0046]
2)初始化参数及内存分配;
[0047]
3)通过直通滤波器滤除无用点,通过体素滤波器降采样(0.1f);
[0048]
4)计算点云欧式距离,滤除雷达周围异常点(<3.4m);
[0049]
5)点云进行扇形栅格划分为m
channel
×mbin
个块(cell);
[0050]
6)for each cell:hi=z
min
[0051]
(1)if h
min
<hi<h
max
:hi=hi[0052]
elif hi>h
max
:hi=h
max
[0053]
else hi<h
min
:hi=h
min

[0054]
(2)高斯平滑,通过阈值筛选错误的非地面点;
[0055]
(3)计算高度斜率,大于阈值则非地面点;
[0056]
7)获取滤除地面后的点云信息。
[0057]
本发明技术方案的进一步改进在于:在特征提取模块中的点云特征提取算法如下所示:
[0058]
1)输入点云及其特征和
[0059]
2)拼接点云x和y,分割坐标与对应特征获得点集p∈r
2b
×n×3和特征
[0060]
3)对点云和相对应特征运用最远点采样算法进行下采样,运用基于knn算法的邻点查找并分组;
[0061]
4)创建m=16的权重矩阵集合,通过多层mlp获取相对位置获取对应的系数矩阵;
[0062]
5)通过权重矩阵和系数矩阵的组合,得到卷积内核;
[0063]
6)得到采样后的点集p

∈r
2b
×n′×3和对应的特征
[0064]
由于采用了上述技术方案,本发明取得的技术进步是:
[0065]
本发明改善了传统点云配准算法存在的容易陷入局部收敛、几何特征描述子稳定性差等问题。本发明采用的配准方法具足够泛化性,通过对激光雷达点云数据进行帧到帧轨迹估计,能够在较大规模场景点云数据中完成配准,在不使用其他优化方法的情况下,本发明的端到端配准网络能够获得良好的效果。
[0066]
本发明提供了改进的点云地面滤除方法:针对激光雷达数据,采用扇形分割的方法,利用最低点与阈值进行对比获取地面点云并使用相对斜率的方法改善地面滤除效果,同时使用高斯平滑增加滤除精度。
[0067]
本发明的特征提取网络将pointnet 算法进行改良,使用一层最远点采样降低时间,使用位置自适应卷积代替第二层最远点采样结构,减少时间的同时,增加局部信息和全局信息的融合。
[0068]
本发明的损失函数为了获取较好的位姿,需要使用针对位姿的损失函数,同时利用惩罚损失函数让卷积核参数不同,保证网络学习到的参数更加丰富。
附图说明
[0069]
图1是本发明原理框图;
[0070]
图2是本发明的点云映射分组图;
[0071]
图3是本发明的输出模块示意图。
具体实施方式
[0072]
下面结合实施例对本发明做进一步详细说明:
[0073]
如图1至图3所示,一种基于深度学习的端到端三维点云配准方法,针对了现有问题,即类似icp之类的一些传统算法和改进算法一定程度上提高了点云配准的准确性,但是在多噪声的情况下,对于初始估计匹配位姿要求较高,在缺乏初始位姿的情况下可能发生局部收敛。利用深度学习网络进行特征提取,最后使用svd或者ransac算法进行点云配准,此类方法对特征较敏感,导致算法泛化性差。基于深度学习的端到端点云配准算法在配准时间和精度方面仍存在不足。针对以上缺点,本发明从数据处理开始,滤除对配准误差降低没有帮助地面点云,在特征提取方面,利用位置自适应性点卷积网络获取全局特征和局部特征的融合特征,使用点嵌入模块和回归网络获得相对位姿的双四元数,最后获得位姿变换关系。
[0074]
针对经典点云配准算法存在对噪声敏感等问题,基于学习的配准方法中全局信息或局部信息存在缺失等问题,本发明使用端到端深度学习网络完成配准。通过点云地面滤除算法,去除对配准无用的地面点云,减少数据量,提高点云配准效率。利用位置自适应点卷积网络获取三维点云的局部特征信息和全局特征信息,通过流嵌入式网络获取点云之间的相似性,减少信息缺失,且在特征提取过程中利用点云最远点采样的方法,使配准方法能够应用在较大型点云中。最后通过流嵌入结构和mini-pointnet网络获取位姿的对偶四元数表示形式,获取两帧点云之间的位姿关系,使用对偶四元数形式进行表达,达到端到端配准效果,从而实现端到端配准结构。
[0075]
配准过程中,给定两帧点x={xi∈r
3 d
|i=1

n}和y={yi∈r
3 d
|i=1

m},其中d表示通过点云对应的特征如颜色、强度信息等,点云配准的目的在于找到两帧点云之间的相对变换矩阵t
yx
,其中变换矩阵t由旋转矩阵r∈s0(3)和平移向量t∈r3组成。
[0076]
本发明的配准框架将共享的动态点卷积网络作为三维点云的特征提取模块,将得到的特征描述子输入到流嵌入模块,流嵌入模块主要用于学习两帧点云的相互联系,进行推断。最后利用全连接层作为整体的输出层即获得不同时刻点云的相对位姿变换关系。主要框架结构如图1所示。
[0077]
包括以下部分:
[0078]
1、地面滤除模块
[0079]
在该模块中,采用扇形分割的方式,对激光雷达点云进行分割,获取每个扇形的最低点,与阈值进行对比,粗略估计地面点云,通过相邻扇形区域的地面点云z方向斜率对比,去除错误的地面点云估计,最后利用高斯平滑滤波,增加地面点云滤除的准确度。
[0080]
在点云地面滤除中,部分方案使用ransac算法进行平面估计,该方法容易将非地面点的平面滤除。在位姿获取方面,部分方案利用svd分解或者ransac算法进行,但是对比于利用回归的方法而言,需要较大的算力支持和显存支持。
[0081]
点云在地面滤除步骤中,考虑到点云的生成方式,利用扇形栅格将点云划分为m
channel
×mbin
块,分块式对点云进行地面估计,点云数据为pi={xi,yi,zi,ii},其中ii为强度信息,则点云属于栅格块由式(11)、(12)获得。
[0082][0083][0084]
首先设定相对雷达安装位置的地面高度阈值h
min
=-2.0m、h
max
=-04m,通过阈值判断地面点,在通过各个栅格的地面斜率阈值判断是否为地面点。
[0085]
涉及到底点云地面分割如下所示。
[0086]
算法2点云地面分割
[0087]
1)输入:读取kitti数据中的点云数据。
[0088]
2)初始化参数及内存分配。
[0089]
3)通过直通滤波器滤除无用点,通过体素滤波器降采样(0.1f)。
[0090]
4)计算点云欧式距离,滤除雷达周围异常点(<3.4m)。
[0091]
5)点云进行扇形栅格划分为m
channel
×mbin
个块(cell)。
[0092]
6)for each cell:hi=z
min
[0093]
(1)if h
min
<hi<h
max
:hi=hi[0094]
elif hi>h
max
:hi=h
max
[0095]
else hi<h
min
:hi=h
min
[0096]
(2)高斯平滑,通过阈值筛选错误的非地面点。
[0097]
(3)计算高度斜率,大于阈值则非地面点。
[0098]
7)获取滤除地面后的点云信息。
[0099]
2、特征提取模块
[0100]
输入点云x,卷积层的输入特征f和输出特征g分别表示为针对点云中的每个点xi点卷积表示为
[0101][0102]
其中表示中心点xj与其邻点xj的输出卷积权值的函数。ni表示所有邻域点,λ(

)表示对张量进行最大化、求和、均值化等操作的聚合函数。
[0103]
为了能够克服三维点云具有的无序性、不规则性等特点,需要对卷积核函数进行设计优化;根据paconv算法中的卷积核设计,首先设计权重矩阵集合其中m表示权重矩阵的个数。设计系数学习网络,获取系数向量s
ij
={s
ijm
|m=1

m}用以关联权重矩阵,s
ij
为点xi和邻点xj的相对距离,该距离与点位置有着较大关联即位置自适应,再通过多层mlp学习到的权重系数,s
ij
表示为式(2)所示:
[0104]sij
=xoft max(θ(xi,xj))
ꢀꢀꢀ
(2)
[0105]
其中θ(

)表示mlp网络层。根据权重和相对应系数,最终的卷积权重函数表示为式(3)所示:
[0106][0107]
特征提取模块在整个配准网络中起到重要作用,在该模块中需要对三维点云数据进行处理,尤其是多线激光雷达数据中,需要进行无效点去除。考虑到点云数据较多,需要进行一定的降采样处理。在本发明中,为了提高数据处理速度和整体系统的速度,在降采样处理前进行地面点云滤波处理,同时为了融合点云特征提取过程中的局部特征和全局特征,采用多个动态卷积核和最远点采样联动的方法完成特征提取部分。
[0108]
在位姿获取中,为了避免使用旋转矩阵导致9个数据描述3个自由度的情况,利用mini-pointnet网络回归对偶四元数的方法,同时获得含有旋转矩阵信息和平移信息的8维数据。
[0109]
算法1点云特征提取如下所示:
[0110]
1)输入点云及其特征和
[0111]
2)拼接点云x和y,分割坐标与对应特征获得点集p∈r
2b
×n×3和特征
[0112]
3)对点云和相对应特征运用最远点采样算法进行下采样,运用基于knn算法的邻点查找并分组。
[0113]
4)创建m=16的权重矩阵集合,通过多层mlp获取相对位置获取对应的系数矩阵。
[0114]
5)通过权重矩阵和系数矩阵的组合,得到卷积内核。
[0115]
6)得到采样后的点集p

∈r
2b
×n′×3和对应的特征
[0116]
3、流嵌入模块
[0117]
通过特征提取层,获得两帧点云的数据为x

={xi∈r
3 d

|i=1
…n′
}、y

={yi∈r
3 d

|i=1
…n′
},其中d

表示为经过特征提取模块之后的特征维度,n

表示为通过特征提取模块中最远点采样之后的点;点云x

中的每个点xi在点云y

中以半径r进行分组,如图2所示。
[0118]
计算点之间的相对距离和各自的特征输入到mlp网络中,获得输出的特征ej∈rd′
,如式(4)所示:
[0119][0120]
其中g
(...)
表示为该模块的输入点云特征,其中h(

)表示为多层mlp结构,与pointnet子模块类似,max{

}表示为最大池化;
[0121]
4、输出模块
[0122]
在输出模块中,主要利用mini-pointnet结构进行预测,最终的网络输出维度为8,利用对偶四元数,获得旋转矩阵和平移向量,输出模块网络示意图如图3所示。
[0123]
5、损失函数部分
[0124]
在该部分中,本发明的主要目的是点云配准即获取两帧点云的相对位姿关系,在系统获取位姿部分利用回归对偶四元数的方法,所以为了获取有效的位姿,将位姿变换作为损失函数的一部分。另外在特征提取模块中使用多个卷积核,为了让卷积核学习到不同的参数,利用惩罚函数让卷积核不相同,起到全局特征获取的作用。
[0125]
深度学习网络能够根据数据进行网络参数训练,所以在整个发明中,针对一个数据集不需要进行网络参数修改,在整个系统中,损失函数和位姿回归网络均使用相同结构。利用对偶四元数代替普通四元数的原因为对偶四元数不仅能表达旋转也能够表达平移,具有更高的效率,并能够增加旋转与平移之间的联系,表示紧凑,更加有利于网络的回归。
[0126]
对偶四元数的表达式为其中w、x、y、z均为对偶数,形如{a
dual
=a0 εa
ε
|ε2=0},即对偶四元数可以通过8个实数进行表达,利用对偶四元数计算旋转和平移如式(5)、(6)所示:
[0127]
r=q0ꢀꢀꢀ
(5)
[0128]
t=2q
sq0*
ꢀꢀꢀ
(6)
[0129]
其中,r表示为旋转所对应的四元数。根据对偶四元数的特征,采用deepclr中的损失函数,使用表示预测值:
[0130][0131][0132]
在本发明的点云配准框架中,利用位置自适应点卷积进行特征提取,在多个权重矩阵中使用随机初始化,为避免网络学习到相似的参数,导致无法保证权重矩阵的多样性,利用权重正则化避免该问题,保证内核的多样性,如式(9)所示:
[0133][0134]
最终的损失函数表示为:
[0135]
l=αl
t
βlr γl
corr
ꢀꢀꢀ
(10)
[0136]
本发明采用modelnet40数据集对网络进行训练和测试时候,该数据集包含40个不同种类共12311个模型三维点云数据。在特征提取模块中n
fps
=1024,n
sample
=32,mlp=[3,32,32,64],在流嵌入模块中,mlp=[128,128,256],损失函数中α=β=γ=1。
[0137]
使用kitti数据集时,在特征提取模块中n
fps
2048,n
sample
=64,mlp=[4,32,32,64],在流嵌入模块中,mlp=[128,128,256],损失函数中α=λ=1,β=200。
[0138]
本发明分别计算平移误差t
err
和旋转误差r
err
作为评价指标,旋转误差的单位为米(m),旋转误差单位为度(
°
),如式(14)、(15)所示:
[0139]
t
err
=||t
pred-t
gt
||2ꢀꢀꢀ
(14)
[0140][0141]
在使用kitti odometry数据集中,将序列00-10分割为训练集和测试集,将序列00-06作为训练集,07-10作为测试集。通过实验对比,本发明的配准方法在旋转误差和平移误差的评估中,相对比与deepclr算法旋转误差降低约7.5%,平移误差没有明显降低,但是通过数据分析,本发明的旋转误差最大值和平移误差最大值处于较低水平,意味着有着较好的鲁棒性,对减少误差积累起到重要作用。配准时间也是度量配准方法效率的标准之一,在实验中,对本发明中的配准方法运行时间与deepclr算法运行时间进行对比,deepclr处理每帧的平均时间为53.2ms,而本发明的处理时间为39.3ms,时间下降约26.1%。
[0142]
本发明实验硬件设备采用具有两块nvidia geforce gtx 2080ti gpu和一个intel core i9 cpu的工作站,软件平台采用ubuntu 18.04下的pytorch 1.2深度学习框架,使用python3.7对本发明神经网络进行搭建。
[0143]
实验结果与分析
[0144]
本发明采用modelnet40数据集对网络进行训练和测试时候,该数据集包含40个不同种类共12311个模型三维点云数据。在特征提取模块中n
fps
=1024,n
sample
=32,mlp=[3,32,32,64],在流嵌入模块中,mlp=[128,128,256],损失函数中α=β=γ=1。
[0145]
使用kitti数据集时,在特征提取模块中n
fps
2048,n
sample
=64,mlp=[4,32,32,64],在流嵌入模块中,mlp=[128,128,256],损失函数中α=λ=1,β=200。
[0146]
本发明分别计算平移误差t
err
和旋转误差r
err
作为评价指标,旋转误差的单位为米(m),旋转误差单位为度(
°
),如式(14)、(15)所示:
[0147]
t
err
=||t
pred-t
gt
||2ꢀꢀꢀ
(14)
[0148][0149]
在使用kitti odometry数据集中,将序列00-10分割为训练集和测试集,将序列00-06作为训练集,07-10作为测试集。通过实验对比,本发明的配准方法在旋转误差和平移误差的评估中,相对比与deepclr算法旋转误差降低约7.5%,平移误差没有明显降低,但是通过数据分析,本发明的旋转误差最大值和平移误差最大值处于较低水平,意味着有着较好的鲁棒性,对减少误差积累起到重要作用。配准时间也是度量配准方法效率的标准之一,在实验中,对本发明中的配准方法运行时间与deepclr算法运行时间进行对比,deepclr处理每帧的平均时间为53.2ms,而本发明的处理时间为39.3ms,时间下降约26.1%。
[0150]
本发明实验硬件设备采用具有两块nvidia geforce gtx 2080ti gpu和一个intel core i9 cpu的工作站,软件平台采用ubuntu18.04下的pytorch 1.2深度学习框架,使用python3.7对本发明神经网络进行搭建。
[0151]
实验中硬件设备采用nvidia geforce gtx 2080ti gpu和intel core i9 cpu。在点云地面去除中模块中,采用c 语言下的pcl库和ros框架下进行,配准方法中软件平台主要使用ubuntu 18.04下的pytorch 1.8深度学习框架。
[0152]
modelnet40数据
[0153]
在使用modelnet40数据集中,使用均匀采样的方法获得2048个点作为输入,采用deepclr算法中的策略进行训练和测试。在训练和测试过程中,随机平移[0,0.1]单位距离,随机旋转[0,5]
°
,同时在训练过程中加入标准差为0.02的高斯随机噪声,且两帧点云噪声独立添加。为了测试配准方法的泛化性,使用20种不同形状的点云作为训练数据,在测试中使用另外20种数据进行测试。在该数据集中,使用均方根误差(root mean square error,rmse)对三维点云的配准效果和精度进行评估,如式(13)所示:
[0154][0155]
式中gt、pred分别表示真实值和预测值。通过记录旋转的欧拉角和平移转换作为真实旋转矩阵和平移向量作为真实值,以供损失函数和配准评估使用。将本文的配准网络
同经典配准算法icp和基于深度学习的配准算法deepclr在同样的数据集情况下进行测试分析。如表1所示,本文配准方法的旋转角度均方根误差相比于icp算法降低约31.7%,相比于deepclr算法降低约44.1%,平移均方根误差相比于icp算法降低约40.0%,相比于deepclr算法降低约33.4%。
[0156]
表1 modelnet40数据配准评估
[0157][0158]
kitti数据集
[0159]
在使用kitti odometry数据集中,将序列00-10分割为训练集和测试集,将序列00-06作为训练集,07-10作为测试集。经过地面滤除之后的点云作为输入点云,通过测试,此时的点云数目在20000-35000之间。特征提取模块中结合了最远点滤波,使得网络能够处理较大规模的点云数据。在本文中,为了体现配准方法的可行性和准确性与部分经典的点云配准网络进行对比,如icp算法,在icp配准中采用性能较好的point to plane的方式。同时与部分基于深度学习的点云配准方法进行对比,如deepvcp算法、3dfeat-net[25]算法。在本文中使用和deepclr算法相同的评价指标,分别计算平移误差t
err
和旋转误差r
err
,旋转误差的单位为米(m),旋转误差单位为度(
°
),如式(14)、(15)所示:
[0160]
t
err
=||t
pred-t
gt
||2ꢀꢀꢀ
(14)
[0161][0162]
通过实验对比,本文的配准方法在旋转误差和平移误差的评估中,相对比与deepclr算法旋转误差降低约7.5%,平移误差没有明显降低,但是通过数据分析,本文的旋转误差最大值和平移误差最大值处于较低水平,意味着有着较好的鲁棒性,对减少误差积累起到重要作用。配准时间也是度量配准方法效率的标准之一,在我们的实验中,对本文算法运行时间与deepclr算法运行时间进行对比,deepclr处理每帧的平均时间为53.2ms,而本文的处理时间为39.3ms,时间下降约26.1%。如表2所示,为kitti数据配准的误差分析。
[0163]
表2 kitti数据配准误差分析表
[0164][0165]
在点云slam的前端激光里程计中,点云配准为重要的一环,通过对激光里程计轨
迹进行可视化直观的表示配准效果。在本文中,对kitti odometry数据进行帧对帧轨迹估计,在此过程中,主要目的为评估配准方法的可靠性,所以未使用到其他形式的配准方法进行优化,同时也没有应用到slam中常用的优化方法如图优化和回环检测方法。
[0166]
实验表明,本发明采用的配准方法具有一定的泛化性,通过对激光雷达点云数据进行帧到帧轨迹估计,能够在较大规模场景点云数据中完成配准,在不使用其他优化方法的情况下,本发明的端到端配准网络能够获得较好的效果。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献