1.一种基于深度学习的端到端三维点云配准方法,其特征在于:包括滤除对配准误差降低没有帮助地面点云,利用位置自适应点卷积网络获取三维点云的局部特征信息和全局特征信息,通过流嵌入式网络获取点云之间的相似性,利用位置自适应性点卷积网络获取全局特征和局部特征的融合特征,最后使用mini‑PointNet网络获取两帧点云之间的位姿关系,使用对偶四元数形式进行表达,达到端到端配准效果;
本发明将共享的动态点卷积网络作为三维点云的特征提取模块,将得到的特征描述子输入到流嵌入模块,最后利用全连接层作为整体的输出层即获得不同时刻点云的相对位姿变换关系。
2.根据权利要求1所述的一种基于深度学习的端到端三维点云配准方法,其特征在于:包括以下部分:
1、地面滤除模块
在该模块中,采用扇形分割的方式,对激光雷达点云进行分割,获取每个扇形的最低点,与阈值进行对比,粗略估计地面点云,通过相邻扇形区域的地面点云Z方向斜率对比,去除错误的地面点云估计,最后利用高斯平滑滤波,增加地面点云滤除的准确度;
2、特征提取模块
输入点云X,卷积层的输入特征F和输出特征G分别表示为针对点云中的每个点xi点卷
积表示为
其中 表示中心点xi与其邻点xj的输出卷积权值的函数;Ni表示所有邻域点,Λ(…)表示对张量进行最大化、求和、均值化等操作的聚合函数;
为了能够克服三维点云具有的无序性、不规则性等特点,需要对卷积核函数进行设计优化;根据PAConv算法中的卷积核设计,首先设计权重矩阵集合其中M表示权重矩阵的个数;设计系数学习网络,获取系m
数向量Sij={sij|m=1…M}用以关联权重矩阵,Sij为点xi和邻点xj的相对距离,该距离与点位置有着较大关联即位置自适应,再通过多层MLP学习到的权重系数,Sij表示为式(2)所示:Sij=softmax(θ(xi,xj)) (2)其中θ(…)表示MLP网络层;根据权重和相对应系数,最终的卷积权重函数表示为式(3)所示:
特征提取模块在整个配准网络中起到重要作用,在该模块中需要对三维点云数据进行处理,尤其是多线激光雷达数据中,需要进行无效点去除;考虑到点云数据较多,需要进行一定的降采样处理;在本发明中,为了提高数据处理速度和整体系统的速度,在降采样处理前进行地面点云滤波处理,同时为了融合点云特征提取过程中的局部特征和全局特征,采用多个动态卷积核和最远点采样联动的方法完成特征提取部分;
3、流嵌入模块
3+d′ 3+d′
通过特征提取层,获得两帧点云的数据为X′={xi∈R |i=1…N′}、Y′={yi∈R |i=1…N′},其中d′表示为经过特征提取模块之后的特征维度,N′表示为通过特征提取模块中最远点采样之后的点;d′和N′的具体参数将在数据处理与网络训练小节中体现;点云X′中的每个点xi在点云Y′中以半径r进行分组;
d′
计算点之间的相对距离和各自的特征输入到MLP网络中,获得输出的特征ei∈R ,如式(4)所示:
其中g(...)表示为该模块的输入点云特征,其中h(…)表示为多层MLP结构,与PointNet子模块类似,MAX{…}表示为最大池化;
4、输出模块
在输出模块中,主要利用mini‑PointNet结构进行预测,最终的网络输出维度为8,利用对偶四元数,获得旋转矩阵和平移向量;
5、损失函数部分
dual
对偶四元数的表达式为 其中w、x、y、z均为对偶数,形如{a =a0+εaε|2
ε=0},即对偶四元数可以通过8个实数进行表达, 利用对偶四元数计算旋转和平移如式(5)、(6)所示:r=q0 (5)*
t=2qsq0 (6)其中,r表示为旋转所对应的四元数,根据对偶四元数的特征,采用DeepCLR中的损失函数,使用 表示预测值:
在本发明的点云配准框架中,利用位置自适应点卷积进行特征提取,在多个权重矩阵中使用随机初始化,为避免网络学习到相似的参数,导致无法保证权重矩阵的多样性,利用权重正则化避免该问题,保证内核的多样性,如式(9)所示:最终的损失函数表示为:
L=αLt+βLr+γLcorr (10)本发明采用ModelNet40数据集对网络进行训练和测试时候,该数据集包含40个不同种类共12311个模型三维点云数据;在特征提取模块中nfps=1024,nsample=32,MLP=[3,32,
32,64],在流嵌入模块中,MLP=[128,128,256],损失函数中α=β=γ=1;
使用KITTI数据集时,在特征提取模块中nfps=2048,nsample=64,MLP=[4,32,32,64],在流嵌入模块中,MLP=[128,128,256],损失函数中α=λ=1,β=200。
3.根据权利要求1所述的一种基于深度学习的端到端三维点云配准方法,其特征在于:在地面滤除模块中在地面滤除步骤时,考虑到点云的生成方式,利用扇形栅格将点云划分为mchannel×mbin块,分块式对点云进行地面估计,点云数据为pi={xi,yi,zi,Ii},其中Ii为强度信息,则点云属于栅格块由式(11)、(12)获得;
首先设定相对雷达安装位置的地面高度阈值Hmin=‑2.0m、Hmax=‑0.4m,通过阈值判断地面点,在通过各个栅格的地面斜率阈值判断是否为地面点。
4.根据权利要求1所述的一种基于深度学习的端到端三维点云配准方法,其特征在于:在地面滤除模块中涉及到底点云地面分割使用点云地面分割算法:
1)输入:读取KITTI数据中的点云数据;
2)初始化参数及内存分配;
3)通过直通滤波器滤除无用点,通过体素滤波器降采样(0.1f);
4)计算点云欧式距离,滤除雷达周围异常点(<3.4m);
5)点云进行扇形栅格划分为mchannel×mbin个块(cell);
6)for each cell:hi=zmin(1)if Hmin<hi<Hmax:hi=hielif hi>Hmax:hi=Hmaxelse hi<Hmin:hi=Hmin;
(2)高斯平滑,通过阈值筛选错误的非地面点;
(3)计算高度斜率,大于阈值则非地面点;
7)获取滤除地面后的点云信息。
5.根据权利要求1所述的一种基于深度学习的端到端三维点云配准方法,其特征在于:在特征提取模块中的点云特征提取算法如下所示:
1)输入点云及其特征 和
2B×N×3
2)拼接点云X和Y,分割坐标与对应特征获得点集P∈R 和特征
3)对点云和相对应特征运用最远点采样算法进行下采样,运用基于KNN算法的邻点查找并分组;
4)创建M=16的权重矩阵集合,通过多层MLP获取相对位置获取对应的系数矩阵;
5)通过权重矩阵和系数矩阵的组合,得到卷积内核;
2B×N′×3
6)得到采样后的点集P′∈R 和对应的特征