本发明涉及点云语义分割技术,尤其涉及一种基于深度学习的大规模点云语义分割方法。
背景技术:
1、当前的三维点云语义分割技术可分为传统方法及基于深度学习策略的方法。在基于深度学习的策略中,进一步可将方法分类为基于投影、基于体素以及基于点的方法。其中,基于投影的方法通过将三维点云转换为二维视图,以便应用成熟的二维卷积神经网络。而基于体素的技术则是将点云数据转化为体素格,使用三维卷积来进行特征抽取。
2、在深度学习的点云语义分割领域,基于投影的方法面临着遮挡和重叠等挑战;基于体素的方法往往导致数据冗余和计算需求增加,使其不太适合大规模数据集;基于格网的随机性抽稀技术提高了点云预处理效率,但由于其固定的格网大小,它未能解决大规模点云中对象类别的不均匀分布问题。
3、鉴于大规模点云通常包括高达数亿的点,直接处理这些数据是不切实际的。因此,在模型训练前的数据预处理阶段,选择具有代表性的点子集以降低处理复杂度显得尤为重要。
技术实现思路
1、本发明要解决的技术问题在于针对现有技术中的缺陷,提供一种基于深度学习的大规模点云语义分割方法。
2、本发明解决其技术问题所采用的技术方案是:一种基于深度学习的大规模点云语义分割方法,包括以下步骤:
3、1)对大规模点云数据进行预处理;所述预处理包括按照设定密度进行网格划分处理;具体如下:
4、确定点云数据中各点的三维坐标的最大值与最小值;
5、基于点云数据中各点的三维坐标极值,设置网格尺寸,并计算x、y、z三轴方向上的网格总数;
6、根据坐标深度信息为每个网格分配一个索引标签;
7、对每个网格内的点数进行评估,若某个网格的点数超出了设定的阈值,则将该网格均分为两个子网格,直至所有网格内的点数均不超过阈值;
8、2)在每个网格随机选取一个点保留,其余点剔除,获取预处理后的点云数据;
9、3)将经过预处理的点云数据输入到一个用于语义分割的深度学习网络中,实现最终的点云语义分割;
10、该网络依次包含全连接层、四个编码层、多层感知机mlp、与四个编码层对应的四个解码层和分类器;
11、其中,四个编码层,每一层均由一个rs模块和一个laa模块构成;
12、四个解码层,每一层都设有一个上采样(us)模块和一个与对应编码层相链接的注意力残差(ar)模块。
13、按上述方案,所述步骤3)中,该网络初始化时的特征维度为[batch,number,6],点云通过一层全连接层,其特征维度被调整至尺寸[b,n,8],点云数据在通过4个rs模块时会经历逐步的下采样处理,同时特征通道数相应调整为:从[b,n,8]依次调整至[b,n/4,32],[b,n/16,128],[b,n/64,256],[b,n/256,512]。([b,n,6]→[b,n/4,32]→[b,n/16,128]→[b,n/64,256]→[b,n/256,512])。
14、按上述方案,所述步骤3)中,点云数据通过rs模块进行随机下采样后输入laa模块;laa模块处理过程如下:
15、首先,通过knn算法构建每个点的k个最近邻点云块p={p1,p2……,pk};
16、接着,对这些点的坐标特征进行位置编码,计算块中心点pi与其邻近点之间的相对位置信息prel,k及绝对距离distk;
17、prel,k=pcoor,k-pcoor,i;
18、其中,pcoor,i为中心点坐标,pcoor,k为邻近点的坐标;
19、distk=||pcoor,k-pcoor,i||;
20、将相对位置信息及绝对距离数据与中心点坐标pcoor,i及其邻近点坐标pcoor,k结合,并通过卷积层处理以提取相对位置矢量fpos,k;
21、
22、fpos,k=conv(rk);
23、其中,表示拼接操作,||·||表示绝对值距离计算,conv表示卷积操作。
24、此后,将所得的相对位置矢量与对应点特征合并,并执行求和池化。
25、按上述方案,多层感知机mlp用于对编码层的输出进行处理,以生成新的邻近特征,从而对点云的局部几何结构进行精确编码。
26、按上述方案,解码层中,四个us模块功能是恢复点云的特征尺寸,并调整其通道尺寸为从[b,n/256,512][b,n,8]依次调整至[b,n/64,256],[b,n/16,128],[b,n/
27、4,32],[b,n,8];
28、ar模块利用每个前序层的输出特征以及laa模块生成的相对点位置矢量fp os,k作为输入,该模块处理过程如下:
29、首先将前一层的输出进行上采样,生成新的上采样点云,此点云用作注意力计算的query;
30、query=us×wq;
31、同时,通过1×1卷积层从laa模块的相对点位置矢量fpos,k中获取用作注意力计算的key和value;
32、key=fposk×wk;
33、value=fpos,k×wv;
34、其中,key为注意力键,value为注意力值;w表示权重矩阵;
35、进行注意力计算,将注意力机制的输出与上采样点云进行合并,并通过一个共享多层感知机进一步获得注意力残差特征;其中:
36、
37、其中,d表示特征通道数量。
38、按上述方案,所述分类器中,对解码后的点云特征进行进一步处理,通过三层全连接网络来实现最终的点云语义分割;在这一过程中,点云特征的通道尺寸进行调整为([b,n,8]→[b,n,64]→[b,n.32]→[b,n,n_class]),以匹配分类的类别数量;
39、n_class为需要分类的类别数量。
40、本发明产生的有益效果是:
41、本发明通过点云格网稀疏化策略和模型优化的特征提取功能,适用于大规模点云语义分割,同时优化了点云分割性能,平衡了类别分布并保留了关键的几何细节。
1.一种基于深度学习的大规模点云语义分割方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于深度学习的大规模点云语义分割方法,其特征在于,所述步骤1)中,按照设定密度进行网格划分处理具体如下:
3.根据权利要求1所述的基于深度学习的大规模点云语义分割方法,其特征在于,所述步骤3)中,该网络初始化时的特征维度为[batch,number,6],点云通过一层全连接层,其特征维度被调整至尺寸[b,n,8],点云数据在通过4个rs模块时会经历逐步的下采样处理,同时特征通道数相应调整为:从[b,n,8]依次调整至[b,n/4,32],[b,n/16,128],[b,n/64,256],[b,n/256,512]。
4.根据权利要求1所述的基于深度学习的大规模点云语义分割方法,其特征在于,所述步骤3)中,点云数据通过rs模块进行随机下采样后输入laa模块;laa模块处理过程如下:
5.根据权利要求1所述的基于深度学习的大规模点云语义分割方法,其特征在于,所述多层感知机mlp用于对编码层的输出进行处理,以生成新的邻近特征,从而对点云的局部几何结构进行精确编码。
6.根据权利要求3所述的基于深度学习的大规模点云语义分割方法,其特征在于,所述解码层中,四个us模块功能是恢复点云的特征尺寸,并调整其通道尺寸为从[b,n/256,512][b,n,8]依次调整至[b,n/64,256],[b,n/16,128],[b,n/4,32],[b,n,8];
7.根据权利要求1所述的基于深度学习的大规模点云语义分割方法,其特征在于,所述分类器中,对解码后的点云特征进行进一步处理,通过三层全连接网络来实现最终的点云语义分割;在这一过程中,点云特征的通道尺寸进行调整为([b,n,8]→[b,n,64]→[b,n,32]→[b,n,n_class]),以匹配分类的类别数量;n_class为需要分类的类别数量。
8.一种电子设备,其特征在于,
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7任一项所述的方法。