一种点云局部特征提取方法、装置、设备及存储介质
技术领域
本发明涉及三维点云处理领域,更具体地说,涉及一种点云局部特征提取方法、装置、设备及存储介质。
背景技术
点云为三维对象提供了简单直观的几何表示,在自动驾驶、室内导航和机器人技术等许多实际应用中,点云的应用越来越广泛。因此,点云的分析与处理越来越受到研究者的重视,特别是近年来基于深度学习的方法在点云特征提取中表现出了非凡的性能。然而,与二维图像中的规则像素不同,三维点云是由非欧几里德空间中的一系列无组织点组成的,典型的二维卷积由于其不规则的稀疏结构无法直接对三维点云进行运算。研究一种有效的点云特征提取方法,可以使三维点云更加有效的服务于当前应用中。
在此之前已有一些专家针对一般点云局部特征提取算法,结合传统的图形学和视觉做了相关研究,这些方法可分为基于多视图的方法、基于体积的方法和基于点的方法。其中,基于多视图的方法将三维点云投影或展平为一组二维视图,以便将二维CNN中使用的标准卷积应用于转换数据以进行特征提取,但这种方法不可避免地会造成投影过程中的几何信息丢失。基于体积的方法可以将点云表示为规则的三维体积网格,以便三维卷积可以与二维卷积一样使用,然而为了获得高分辨率的输出,通常需要消耗大量的内存和大量的计算资源。基于点的方法通常为每个点的特征提取构建了强大的推理模块,并使用简单的最大池操作来聚合点云局部区域的相邻特征,虽然这种对称运算保证了点云的排列不变性,但由于它只捕获全局范围内最重要的信息,区域内其他有用的细节信息可能会丢失。
上述方法都有一个共同的局限性,即不能利用长距离几何信息进行局部精细特征提取。
发明内容
为了解决传统方法无法利用长距离几何信息进行局部精细特征提取的技术问题,本发明构建了一种基于膨胀图神经网络的点云局部特征提取网络,该网络通过对学习到的局部注意几何特征进行聚合,来学习扩张图上的局部特征,并获取足够的局部细节。
为了实现上述目的,本发明提出了一种点云局部特征提取方法,包括以下步骤:
S1、获取点云数据,并对所述点云数据进行降采样操作,得到降采样后的稀疏点云数据集;
S2、利用扩展的K近邻搜索算法对所述稀疏点云数据集中的每个点云构造局部扩张图,得到每个点云的局部特征,所述局部特征用于表示中心点与其邻域之间的远程几何相关性;
S3、在传统卷积神经网络中引入注意力机制,构造基于膨胀图神经网络的点云局部特征提取网络,所述点云局部特征提取网络包括图注意力层和注意力池化层;
S4、通过所述图注意力层对中心点的边缘赋予权值,学习所述局部扩张图中每个点云的边缘注意力特征;
S5、通过所述注意力池化层对所述每个点云的边缘注意力特征进行聚合,得到每个点云的最终局部特征;
S6、通过所述稀疏点云数据集,并融合所述最终局部特征,对所述点云局部特征提取网络进行迭代训练,得到训练好的点云局部特征提取网络;
S7、通过所述训练好的点云局部特征提取网络对待测点云数据进行语义预测,获得点云局部特征的语义预测结果。
优选地,步骤S3中,所述在传统卷积神经网络中引入注意力机制,构造基于膨胀图神经网络的点云局部特征提取网络的步骤,包括:
将注意力机制应用到网络层,得到图注意层;
将最大池化层改进为注意力池化层,同时在网络升维和降维操作之间的跳层连接部分引入所述图注意层,得到基于膨胀图神经网络的点云局部特征提取网络。
优选地,步骤S2中,所述利用扩展的K近邻搜索算法对所述稀疏点云数据集中的每个点云构造局部扩张图的步骤,包括:
S21、用K-NN搜索算法从输入点h={p1,p2,...,pn}中搜索k×d个最近的邻域点pi;
S22、按照空间距离从近到远对k×d个邻域点pi进行排序;
S23、将排序后的k×d个邻域点按排列顺序分成k个点的小点集,每个小集包含d个点;
S24、选择第一个小点集中的第d点作为起始扩张点p1 [d],并将其添加到扩张点集合mi={p1 [d],p2 [d],...,pk [d]};
S25、重复步骤S24,直到从k个分割点中选择了所有的扩张点,得到所述稀疏点云数据集中每个点云的局部扩张图。
优选地,在步骤S1中,所述对点云数据进行降采样操作,采用随机降采样的方法。
优选地,在步骤S6之后,还包括:
通过测试数据集对所述基于膨胀图神经网络的点云局部特征提取网络进行测试并优化,得到优化后的点云局部特征提取网络。
优选地,在步骤S7之后,还包括:
对所述点云局部特征的语义预测结果进行评价,评价指标包括:精度P、召回率R、F1-score和总体分类精度OA,定义式分别为:
P=(TP)/(TP+FP)
R=(TP)/(TP+FN)
F1-score=2×[(P×R)/(P+R)]
OA=(TP+TN)/(TP+FN+FP+TN)
其中:TP表示目标语义预测正确且不是未识别项目的数目,FP表示原语义为未识别样本但预测错误的数目,FN表示语义预测为未识别样本但原本有语义的数目,OA表示分类正确的样本个数占所有样本个数的比例,F1-score是用来衡量二分类模型精确度的一种指标,同时兼顾了精度P和召回率R。
此外,为了实现上述目的,本发明还提供了一种点云局部特征提取装置,包括以下模块:
降采样模块,用于获取点云数据,并对所述点云数据进行降采样操作,得到降采样后的稀疏点云数据集;
局部扩张图构建模块,用于根据扩展的K近邻搜索算法对所述稀疏点云数据集中的每个点云构造局部扩张图,得到每个点云的局部特征,所述局部特征用于表示中心点与其邻域之间的远程几何相关性;
网络构建模块,用于在传统卷积神经网络中引入注意力机制,构造基于膨胀图神经网络的点云局部特征提取网络,所述点云局部特征提取网络包括图注意力层和注意力池化层;
边缘注意力特征学习模块,用于通过所述图注意力层对中心点的边缘赋予权值,学习所述局部扩张图中每个点云的边缘注意力特征;
边缘注意力特征聚合模块,用于通过所述注意力池化层对所述每个点云的边缘注意力特征进行聚合,得到每个点云的最终局部特征;
训练模块,用于通过所述稀疏点云数据集,并融合所述最终局部特征,对所述点云局部特征提取网络进行迭代训练,得到训练好的点云局部特征提取网络;
语义预测模块,用于通过所述训练好的点云局部特征提取网络对待测点云数据进行语义预测,获得点云局部特征的语义预测结果。
此外,为了实现上述目的,本发明还提供了一种点云局部特征提取设备,所述点云局部特征提取设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的点云局部特征提取程序,所述点云局部特征提取程序被所述处理器执行时实现所述的点云局部特征提取方法的步骤。
此外,为了实现上述目的,本发明还提供了一种存储介质,所述存储介质上存储有点云局部特征提取程序,所述点云局部特征提取程序被处理器执行时实现所述的点云局部特征提取方法的步骤。
本发明提供的技术方案带来的有益效果是:
1、本发明提出了一种新的用于点云局部特征提取的图注意网络,该网络可以快速、准确的得到点云数据的语义预测;
2、本发明利用扩展的K近邻搜索算法构造每个点的局部扩张图,利用中心点与其邻域之间的长程几何相关性进行局部特征表示;
3、本发明将注意机制应用到设计的网络层,称为图注意层,通过对中心点的边缘赋予适当的权值,动态地学习局部扩张图上的上下文注意特征,并通过注意池操作更好地保留点云的局部几何细节。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1为本发明实施例一种点云局部特征提取方法的流程图;
图2为本发明实施例扩展的K近邻搜索算法的技术流程图;
图3为本发明实施例基于膨胀图神经网络的点云局部特征提取网络模型架构图;
图4为本发明实施例点云数据集示意图;
图5为本发明实施例两种方法的测试效果可视化图;
图6为本发明实施例一种点云局部特征提取装置的结构图。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图详细说明本发明的具体实施方式。
请参考图1,图1为本发明实施例一种点云局部特征提取方法的流程图;本实施例一种点云局部特征提取方法,包括以下步骤:
S1、获取点云数据,并对所述点云数据进行降采样操作,得到降采样后的稀疏点云数据集;
请参考图4,图4为本发明实施例点云数据集示意图;本实施例点云数据集为斯坦福大学公开的点云数据集S3DIS,其中,图4(a)-图4(f)分别是点云数据集S3DIS中area_1数据、area_2数据、area_3数据、area_4数据、area_5数据和area_6数据的示意图;
将area_1数据、area_2数据、area_3数据、area_4数据和area_5数据作为训练数据,将area_6数据作为测试数据;
使用随机降采样的方法对训练数据进行降采样操作,采样率设置为1%,得到降采样后的稀疏点云数据集。
S2、利用扩展的K近邻搜索算法对所述稀疏点云数据集中的每个点云构造局部扩张图,得到每个点云的局部特征,所述局部特征用于表示中心点与其邻域之间的远程几何相关性;本实施例中,选定邻域点数量k设置为20。
S3、在传统卷积神经网络中引入注意力机制,构造基于膨胀图神经网络的点云局部特征提取网络,所述点云局部特征提取网络包括图注意力层和注意力池化层;本实施例中,点云分类共有:天花板、地板、墙面、横梁、圆柱、窗户、门、桌子、椅子、沙发、书架、床和未识别项目共计13类。
S4、通过所述图注意力层对中心点的边缘赋予权值,学习所述局部扩张图中每个点云的边缘注意力特征;
S5、通过所述注意力池化层对所述每个点云的边缘注意力特征进行聚合,得到每个点云的最终局部特征;
S6、通过所述稀疏点云数据集,并融合所述最终局部特征,对所述点云局部特征提取网络进行迭代训练,得到训练好的点云局部特征提取网络;
S7、通过所述训练好的点云局部特征提取网络对待测点云数据进行语义预测,获得点云局部特征的语义预测结果。
请参考图2,图2为本发明实施例扩展的K近邻搜索算法的技术流程图;利用扩展的K近邻搜索算法对所述稀疏点云数据集中的每个点云构造局部扩张图,具体包括以下步骤:
S21、用K-NN搜索算法从输入点h={p1,p2,...,pn}集合中搜索k×d个最近的邻域点pi;
S22、按照空间距离从近到远对k×d个邻域点pi进行排序;
S23、将排序后的k×d个邻域点按排列顺序分成k个点的小点集,每个小集包含d个点;
S24、选择第一个小点集中的第d点作为起始扩张点p1 [d],并将其添加到扩张点集合mi={p1 [d],p2 [d],...,pk [d]};
S25、重复步骤S24,直到从扩张点集合中选择了所有的扩张点,得到每个点局部扩张图。
请参考图3,图3为本发明实施例基于膨胀图神经网络的点云局部特征提取网络模型架构图,包括以下步骤:
S41、将稀疏点云中每个点的局部扩张图结构数据作为网络的输入数据;
S42、本实施例中,首先,输入到网络中的每个局部扩张图结构数据会经过图注意力层进行卷积操作,学习扩张图中每条边的注意力特征。
S43、将提取到的注意力边特征信息输入到图注意力池化层中进行聚合,从而最终得到每个输入点的局部特征。
请参考图5,图5为本发明实施例两种方法的测试效果可视化图。可视化图展示的是在测试数据集(area_6数据)中的conferenceRoom_1区域和office_1区域,本发明方法与PointNet方法的对比示意。
图5(a)是测试数据集中名称为conferenceRoom_1的真实标签;图5(b)是PointNet方法在测试数据conferenceRoom_1上的可视化结果;图5(c)是本发明方法在测试数据conferenceRoom_1上的可视化结果;从图中方框标记处的右上方房门所在区域可以看出,对比真实的标签,利用本发明方法所分割的房门边缘点云较PointNet方法更加准确,误分类较少,因此,本发明方法在测试数据conferenceRoom_1上的可视化结果优于PointNet方法。
图5(d)是测试数据集中名称为office_1的真实标签;图5(e)是PointNet方法在测试数据office_1上的可视化结果;图5(f)是本发明方法在测试数据office_1上的可视化结果;从图中方框标记处的左方窗户所在区域可以看出,对比真实的标签,PointNet方法不能分割出窗户区域的点云,而本发明方法可以分割出一部分窗户区域点云,因此,本发明方法在测试数据office_1上的可视化结果优于PointNet方法。
为了进一步验证本发明方法的有益效果,表1展示的是本实施例方法和pointnet方法在conferenceRoom_1、office_1和hallway_1上的精度对比;表2展示的是本实施例方法和pointnet方法在整体数据集上的精度对比。可以看到本实施例方法的分割精度结果明显优于pointnet方法。
表1本发明与其他多种方法在不同数据集上的精度对比
表2本发明方法与PointNet方法在整体数据集上的分类精度对比
特征提取方法 |
总体分类精度OA(%) |
PointNet |
75.35 |
本发明 |
81.55 |
参考图6,为了实现上述点云局部特征提取方法,本实施例中,还提供了一种点云局部特征提取装置,包括以下模块:
降采样模块1,用于获取点云数据,并对所述点云数据进行降采样操作,得到降采样后的稀疏点云数据集;
局部扩张图构建模块2,用于根据扩展的K近邻搜索算法对所述稀疏点云数据集中的每个点云构造局部扩张图,得到每个点云的局部特征,所述局部特征用于表示中心点与其邻域之间的远程几何相关性;
网络构建模块3,用于在传统卷积神经网络中引入注意力机制,构造基于膨胀图神经网络的点云局部特征提取网络,所述点云局部特征提取网络包括图注意力层和注意力池化层;
边缘注意力特征学习模块4,用于通过所述图注意力层对中心点的边缘赋予权值,学习所述局部扩张图中每个点云的边缘注意力特征;
边缘注意力特征聚合模块5,用于通过所述注意力池化层对所述每个点云的边缘注意力特征进行聚合,得到每个点云的最终局部特征;
训练模块6,用于通过所述稀疏点云数据集,并融合所述最终局部特征,对所述点云局部特征提取网络进行迭代训练,得到训练好的点云局部特征提取网络;
语义预测模块7,用于通过所述训练好的点云局部特征提取网络对待测点云数据进行语义预测,获得点云局部特征的语义预测结果。
此外,本实施例中,还提供了一种点云局部特征提取设备,所述点云局部特征提取设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的点云局部特征提取程序,所述点云局部特征提取程序被所述处理器执行时实现所述的点云局部特征提取方法的步骤。
此外,本实施例中,还提供了一种存储介质,所述存储介质上存储有点云局部特征提取程序,所述点云局部特征提取程序被处理器执行时实现所述的点云局部特征提取方法的步骤。
在不冲突的情况下,本发明中上述实施例及实施例中的特征可以相互结合。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。