掌桥专利:专业的专利平台
掌桥专利
首页

基于孪生特征金字塔和地面分割的激光雷达里程计方法

文献发布时间:2024-04-18 19:58:30


基于孪生特征金字塔和地面分割的激光雷达里程计方法

技术领域

本发明涉及计算机视觉技术领域,特别是指一种基于孪生特征金字塔和地面分割的激光雷达里程计方法。

背景技术

同时定位与建图(SLAM)是移动机器人研究领域的关键技术之一。经典的SLAM系统通常包括传感器数据读取、前端里程计、后端优化、回环检测、建图等五个部分。里程计作为SLAM系统中的重要步骤之一,其任务是利用传感器采集到的数据估计机器人的运动轨迹。基于视觉和基于激光雷达的里程计方法较为常见。基于视觉的里程计方法容易受到光照、天气等因素的影响较大,导致位姿估计精度较低,而激光雷达能够直接获取机器人周身360°的环境深度信息,这使得基于激光雷达的里程计在许多应用场景中更具有鲁棒性。

发明内容

本发明实施例提供了基于孪生特征金字塔和地面分割的激光雷达里程计方法,能够提高基于激光雷达进行位姿估计任务的精度。所述技术方案如下:

一方面,提供了一种基于孪生特征金字塔和地面分割的激光雷达里程计方法,该方法应用于电子设备,该方法包括:

对激光雷达原始三维点云数据进行预处理,去除地面点,得到由非地面点组成的训练帧点云;

构建基于孪生特征金字塔和分层优化的位姿估计网络,用于输出输入的每对相邻训练帧点云之间的位姿变换;

根据位姿估计网络输出的每对相邻训练帧点云之间的位姿变换,计算位姿回归误差损失函数值,基于得到的位姿回归误差损失函数值,训练所述位姿估计网络;

利用训练好的位姿估计网络预测待估计的激光雷达点云序列中每一帧点云对应的激光雷达位姿。

进一步地,所述对激光雷达原始三维点云数据进行预处理,去除地面点,得到由非地面点组成的训练帧点云包括:

使用地面分割算法对激光雷达原始三维点云数据进行预处理,去除地面点,得到由非地面点组成的训练帧点云;

其中,所述地面分割算法由点云全景分割网络Cylinder3D实现,相邻的两帧点云PC

进一步地,所述位姿估计网络包括:孪生特征金字塔、场景流融合编码模块和位姿分层优化模块;

所述孪生特征金字塔,用于对经过地面分割预处理后的点云PC′

所述场景流融合编码模块,用于关联孪生特征金字塔编码得到的特征向量f

所述位姿分层优化模块,用于增量式地优化初始相对位姿估计,通过关注不同尺度下点云特征信息的变化,进行位姿估计的更新。

进一步地,所述孪生特征金字塔包括:2个子特征金字塔,2个子特征金字塔的所有网络层共享权值;

每个子孪生特征金字塔由3个不同规模的MBConv3D模块堆叠而成;

每个MBConv3D模块包括:维度扩张单元、卷积单元、压缩激发网络SENet和维度收缩单元;其中,维度扩张单元、卷积单元、压缩激发网络SENet和维度收缩单元依次相连;

维度扩张单元为Shared MLP→BatchNorm→Swish,卷积单元为KPConv→BatchNorm→Swish,维度收缩单元为Shared MLP→BatchNorm;其中,Shared MLP表示共享多层感知器,BatchNorm表示批归一化层,Swish为激活函数,KPConv表示核点卷积层,→表示连接;

在所述维度扩张单元中,Shared MLP通过多层感知机对点云中局部邻域点的特征进行升维;其中,局部邻域点是使用最远点采样方法得到的;经过Shared MLP输出的特征f

其中,x

所述KPConv,用于提取局部区域的点特征并将提取到的点特征进行融合,在点x

其中,

所述SENet是针对通道的注意力机制模块,通过压缩和激发特征通道来增强特征;

在所述维度收缩单元中,Shared MLP通过多层感知机降低SENet输出的特征的维度。

进一步地,所述场景流融合编码模块包括FlowNet3D、Shared MLP和初始位姿估计子模块;

所述FlowNet3D,用于关联孪生特征金字塔编码得到的特征向量f

所述Shared MLP使用孪生特征金字塔生成的特征向量f

在所述初始位姿估计子模块中,Shared MLP输出的掩码经过Softmax归一化后与场景流嵌入特征Flow

进一步地,所述位姿分层优化模块包括:第一位姿优化子模块和第二位姿优化子模块,第一位姿优化子模块输出的优化后的相对位姿向量(t

所述位姿变换单元,用于通过输入对应的平移向量t

其中,xyz

所述场景流更新与编码单元,用于将经过位姿变换后的源点云与目标点云共同输入FlowNet3D生成场景流嵌入特征,场景流更新与编码单元输入的场景流嵌入特征Flow

所述位姿更新单元,用于根据位姿增量对输入的相对位姿向量q

[0,t

q

其中,Δt和Δq表示场景流更新与编码单元预测的平移向量和四元数的增量,t

进一步地,所述根据位姿估计网络输出的每对相邻训练帧点云之间的位姿变换,计算位姿回归误差损失函数值,基于得到的位姿回归误差损失函数值,训练所述位姿估计网络包括:

利用位姿估计网络在3个级别输出的相对位姿向量t

其中,n=0,1,2,

根据计算得到的帧间配准损失函数

其中,λ

一方面,提供了一种电子设备,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现上述基于孪生特征金字塔和地面分割的激光雷达里程计方法。

一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现上述基于孪生特征金字塔和地面分割的激光雷达里程计方法。

本发明实施例提供的技术方案带来的有益效果至少包括:

本发明实施例中,对激光雷达原始三维点云数据进行预处理,去除地面点,得到由非地面点组成的训练帧点云;构建基于孪生特征金字塔和分层优化的位姿估计网络,用于输出输入的每对相邻训练帧点云之间的位姿变换;根据位姿估计网络输出的每对相邻训练帧点云之间的位姿变换,计算位姿回归误差损失函数值,基于得到的位姿回归误差损失函数值,训练所述位姿估计网络;利用训练好的位姿估计网络预测待估计的激光雷达点云序列中每一帧点云对应的激光雷达位姿。这样,能够提高基于激光雷达进行位姿估计任务的精度。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的基于孪生特征金字塔和地面分割的激光雷达里程计方法的流程示意图;

图2为本发明实施例提供的基于孪生特征金字塔和地面分割的激光雷达里程计方法的整体框架示意图;

图3为本发明实施例提供的MBConv3D模块的结构示意图;

图4为本发明实施例提供的场景流融合编码模块的结构示意图;

图5为本发明实施例提供的位姿优化子模块的结构示意图;

图6(a)为本发明实施例提供的方法在KITTI里程计数据集中序列09上估计的轨迹示意图;

图6(b)为本发明实施例提供的方法在KITTI里程计数据集中序列10上估计的轨迹示意图;

图7是本发明实施例提供的一种电子设备的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

如图1所示,本发明实施例提供了一种基于孪生特征金字塔和地面分割的激光雷达里程计方法,该方法可以由电子设备实现,该电子设备可以是终端或服务器,该方法包括:

S101,对激光雷达原始三维点云数据进行预处理,去除地面点,得到由非地面点组成的训练帧点云;

本实施例中,如图2所示,使用地面分割算法对激光雷达原始三维点云数据进行预处理,去除地面点,得到由非地面点组成的训练帧点云;

其中,所述地面分割算法由点云全景分割网络Cylinder3D实现,相邻的两帧点云PC

S102,构建基于孪生特征金字塔和分层优化的位姿估计网络,用于输出输入的每对相邻训练帧点云之间的位姿变换;

本实施例中,所述位姿估计网络包括:孪生特征金字塔、场景流融合编码模块和位姿分层优化模块,位姿估计网络的详细结构如表1所示;其中,

所述孪生特征金字塔,用于对经过地面分割预处理后的点云PC′

所述场景流融合编码模块,用于关联孪生特征金字塔编码得到的特征向量f

所述位姿分层优化模块,用于增量式地优化初始相对位姿估计,通过关注不同尺度下点云特征信息的变化,进行位姿估计的更新。

表1位姿估计网络结构

表1中,FC表示全连接层。

本实施例中,所述孪生特征金字塔包括:2个子特征金字塔,2个子特征金字塔的所有网络层共享权值;

其中一个子孪生特征金字塔对经过预处理的点云PC′

f

其中,Pyramid()为子孪生特征金字塔;

另一个子孪生特征金字塔对经过预处理的点云PC′

f

本实施例中,每个子孪生特征金字塔由3个不同规模的MBConv3D模块堆叠而成;MBConv3D模块的输入为经过预处理的点云中各点的空间坐标与对应的特征向量;

每个MBConv3D模块包括:维度扩张单元、卷积单元、压缩激发网络SENet和维度收缩单元;其中,维度扩张单元、卷积单元、压缩激发网络SENet和维度收缩单元依次相连;

如图3所示,维度扩张单元为Shared MLP→BatchNorm→Swish,卷积单元为KPConv→BatchNorm→Swish,维度收缩单元为Shared MLP→BatchNorm;其中,Shared MLP表示共享多层感知器,BatchNorm表示批归一化层,Swish为激活函数,KPConv表示核点卷积层,→表示连接;

在所述维度扩张单元中,Shared MLP通过多层感知机对点云中局部邻域点的特征进行升维;其中,局部邻域点是使用最远点采样方法得到的;经过Shared MLP输出的特征f

其中,x

所述KPConv,用于提取局部区域的点特征并将提取到的点特征进行融合,在点x

其中,

所述SENet是针对通道的注意力机制模块,通过压缩和激发特征通道来增强特征;

在所述维度收缩单元中,Shared MLP通过多层感知机降低SENet输出的特征的维度。

由此可知,在孪生特征金字塔中,使用Shared MLP扩展特征向量的维度,KPConv提取局部区域的点特征并融合,接着SENet通过压缩和激发特征通道来增强特征,最后再使用一层Shared MLP降低特征的维度并输出。

如图4所示,场景流融合编码模块的输入为相邻两帧点云(即:源点云和目标点云)的空间坐标(xyz

本实施例中,所述场景流融合编码模块包括场景流估计网络FlowNet3D、SharedMLP和初始位姿估计子模块;

所述FlowNet3D,用于关联孪生特征金字塔编码得到的特征向量f

Flow

其中,f

所述Shared MLP使用孪生特征金字塔生成的特征向量f

在所述初始位姿估计子模块中,Shared MLP输出的掩码经过Softmax归一化后与场景流嵌入特征Flow

如图2所示,所述位姿分层优化模块包括:第一位姿优化子模块和第二位姿优化子模块,第一位姿优化子模块输出的优化后的相对位姿向量(t

每个位姿优化子模块包括:位姿变换单元、场景流更新与编码单元和位姿更新单元;

如图5所示,所述位姿变换单元,用于通过输入对应的平移向量t

其中,xyz

所述场景流更新与编码单元,用于将经过位姿变换后的源点云与目标点云共同输入FlowNet3D生成场景流嵌入特征,场景流更新与编码单元输入的场景流嵌入特征Flow

所述位姿更新单元,用于根据位姿增量对输入的相对位姿向量q

[0,t

q

其中,Δt和Δq表示场景流更新与编码单元预测的平移向量和四元数的增量,t

S103,根据位姿估计网络输出的每对相邻训练帧点云之间的位姿变换,计算位姿回归误差损失函数值,基于得到的位姿回归误差损失函数值,训练所述位姿估计网络;

在本实施例中,位姿估计网络在3个级别输出的相对位姿向量t

其中,

接着,计算最终的位姿回归误差损失函数

其中,λ

本实施例中,在训练时,将一个批次的激光雷达序列中的所有三维点云数据输入到点云全景分割网络Cylinder3D中执行数据预处理,得到去除地面点的训练帧点云再输入位姿估计网络中,对位姿估计网络进行训练;其中,根据位姿估计网络预测的每对相邻训练帧之间的相对位姿向量,计算位姿回归误差损失函数值,基于得到的位姿回归损失函数值,采取端到端的训练方式并通过反向传播来训练整个位姿估计网络。

S104,利用训练好的位姿估计网络预测待估计的激光雷达点云序列中每一帧点云对应的激光雷达位姿。

在本实施例中,为了验证本发明实施例提供的激光雷达里程计方法的有效性,使用KITTI里程计数据集评估测试其性能:

(1)相对位移均方误差(Rel.trans.):一个序列中全部长度为100、200、……、800米的子序列的平均位移RMSE(Root Mean Square Error),以%度量,即每100米偏差的米数,数值越小越好。

(2)相对旋转均方误差(Rel.rot.):一个序列中全部长度为100、200、……、800米的子序列的平均旋转RMSE,以deg/m度量,数值越小越好。

在本实施例中,应用了KITTI里程计数据集中00-08这9个序列作为训练集与验证集训练位姿估计网络,并用09-10这两个序列测试所述的基于孪生特征金字塔和分层优化的位姿估计网络的性能。

KITTI里程计数据集是目前国际上主流的自动驾驶数据集之一,包含市区、乡村、高速公路等道路场景,数据集包含双目图像、激光雷达点云以及实际轨迹。

在本实施例中,位姿回归误差损失函数的超参数λ

为了验证本发明所述方法的性能,本实施例中,选择了基于传统方法和基于深度学习的激光雷达里程计方法进行了对比,实验结果如表2所示。本实施例在KITTI序列09、10中生成的轨迹分别如图6(a)和图6(b)所示,其中,虚线轨迹为真实的轨迹,实线轨迹为本实施例中估计出的轨迹。

表2 KITTI数据集中本实施例方法与其他方法对比

本实施例中,在表2所比较的方法中,ICP、GICP、LOAM是传统的非学习方法,在这些传统方法中,具有后端优化的LOAM取得了最好的结果;LO-Net、ENCODE、DMLO、PWCLO-Net等都是基于学习的方法。据我们所知,在基于深度学习的方法中,PWCLO-Net是此前所有基于深度学习的方法中精度最高的,本实施例的方法与之相比,特征金字塔和位姿优化的层数更浅,并且由于更好地利用了点云的几何、语义信息,本实施例所述的方法在基于深度学习的方法中取得了最好的性能。

为了验证本实施例所述的方法各部分的意义,本实施例中还进行了消融实验。实验结果如表3所示,其中,第二行中的“w/o Ground segmentation”表示去除数据的地面分割预处理,此时位姿估计网络的输入为完整的激光雷达点云帧。第三行的“with SharedMLP”表示将孪生特征金字塔中的MBConv3D模块全部替换为Shared MLP层。第四行的“w/oPose refinement”表示去除网络中的位姿分层优化网络,此时场景流融合编码网络输出的6自由度位姿向量直接作为最终的输出。第五行的“w/o Mask”表示去除网络中所有输出为掩码的模块。最后一行表示本文完整的方法的实验结果。

表3消融实验结果

综上,本发明实施例所述的基于孪生特征金字塔和地面分割的激光雷达里程计方法,至少具有以下优点:

1)本发明是一种基于孪生特征金字塔和分层优化的激光雷达里程计方法,通过深度神经网络仅使用激光雷达的点云信息,不使用任何其他信息来估计两帧间的位姿变换;

2)针对道路环境场景中地面点对里程计贡献度低、信息冗余的问题,本实施例提出了使用预处理筛除原始点云中的地面点,使得用于位姿估计的点云特征密度更高,提高了位姿估计网络的收敛速度和泛化能力;

3)本实施例设计了一个全新的逐点特征提取模块MBConv3D,旨在通过建立局部点的分布特征来捕获物体表面的变形、加强局部点邻域的特征聚合,并基于MBConv模块的结构优化计算效率;

4)本实施例在KITTI数据集上进行评估实验和消融实验验证本实施例所提出的方法。实验结果表明,本实施例的方法在大部分序列中与最优的激光雷达里程计效果相当,在测试序列中甚至比基于深度学习的所有方法精度更高,因此,本实施例提供的基于孪生特征金字塔和地面分割的激光雷达里程计方法,能够提高基于激光雷达进行位姿估计任务的精度。

图7是本发明实施例提供的一种电子设备600的结构示意图,该电子设备600可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(centralprocessing units,CPU)601和一个或一个以上的存储器602,其中,所述存储器602中存储有至少一条指令,所述至少一条指令由所述处理器601加载并执行以实现上述基于孪生特征金字塔和地面分割的激光雷达里程计方法。

在示例性实施例中,还提供了一种计算机可读存储介质,例如包括指令的存储器,上述指令可由终端中的处理器执行以完成上述基于孪生特征金字塔和地面分割的激光雷达里程计方法。例如,所述计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

相关技术
  • 基于特征金字塔的孪生网络红外目标跟踪方法
  • 基于边缘金字塔与交叉特征融合的颈椎分割方法及装置
技术分类

06120116503125