-
在物体点云分类实验中,文中采用的是普林斯顿大学制作的用于3D模型识别的标准数据集ModelNet40[13],该数据集是一系列网格化的3D-CAD模型,包含40个类别的12311个CAD模型,其中有9843个训练模型,2468个测试模型。
在物体点云分割实验中,文中采用的是ShapeNet part[14]数据集。其中数据集包含16881个点云模型,共16个形状类别;其中14006个模型用于训练,2875个模型用于测试,不同类别的物体被分割成各个部分并且没有重叠,将每个模型中随机采样出2048个点进行物体分割实验。
-
为了保证实验的统一性和真实性,文中采用相同的实验平台、系统以及编译环境。基于Ubuntu和Cuda11.1建立的深度学习环境下进行,实验中所使用的深度学习网络框架和相关环境配置以及各部分模型参数详如表1所示。
Environment configuration Model parameters Name Configuration Name Value CPU Intel i7-10700 F Batch size 32 GPU RTX3090 Number point 1024 RAM 32 G Max epoch 250 Operation system Ubuntu18.04 Optimizer Adam Language Python 3.7 Learning rate 0.001 Learning framework TensorFlow GPU 1.15.0 Momentum 0.9 Table 1. Experimental platform configuration
-
为证明文中算法在处理点云分类任务上的优势,在ModelNet40[29]数据集上进行实验对比,其中对比算法包括:PointNet[5]、PointNet++[6]、DGCNN[8]、PointCNN[7] 、Pointwise[15]、Structural Relational Reasoning PointNet (SRN- PointNet)[16]、Graph Geometric Moments Net (GGM)[17]、Multi-scale Dynamic Graph CNN (MSDGCNN)[18]和EllipsoidNet (EllNet)[19]。通过对比评估准确度(Eval accuracy)和平均分类精确度(Avg class acc),来定量分析各算法的优越性。各算法分类实验结果详如表2所示。
Method Representation Input Eval accuracy Avg class acc PointNet[5] Points 1024×3 89.2% 86.2% PointNet++[6] Points(+normal) 1024×(3+3) 90.7% 87.8% DGCNN[8] Points 1024×3 92.2% 88.9% PointCNN[7] Points 1024×3 91.7% 88.5% Pointwise[15] Points 1024×3 91.6% 89.1% SRN-PointNet[16] Points 1024×3 91.5% 88.6% GGM[17] Points 1024×3 92.5% 89.0% MSDGCNN[18] Points 1024×3 91.8% 88.3% EllNet[19] Points 1024×2 92.6% 89.0% Ours Points 1024×3 92.7% 89.3% Table 2. Experimental comparison of various classification algorithms of ModelNet40[13]
表2中,除了PointNet++的输入为Points+normal的1024×(3+3)数据、EllNet输入的是1024×2二维点云数据,其余算法采用的均是标准Points的1024×3数据。文中算法在评估准确度和平均分类精确度数值上均优于其他9种算法,其中评估准确度为92.7%、平均分类精度为89.3%。PointNet和PointNet++虽然尽可能的提取点云的全局特征,但是只能考虑到全局和单个点的特征,缺少局部几何信息以及高级语义特征的描述,所以其分类的实验效果较差,最高的评估准确度仅为90.7%。尽管PointCNN、Pointwise以及SRN-PoinNet将PointNet算法进行了提升,分类实验的效果也大幅提升但是相较于文中的算法还是有一定的差距,最高的评估准确度也只有91.7%。在DGCNN和MSDGCNN这两个动态图卷积算法中,该实验结果有所提高,但局部有效信息仍有所丢失,最高的评估准确度仅为92.2%。在EllNet和GGM算法中,EllNet算法为提取潜在的局部特征,将点云数据的特征投影到一个二维椭球空间上,但是仍会造成部分隐式的高级语义特征丢失,而且这两个算法所提取的全局特征也会因为投影的过程造成丢失,最终导致评估准确度比文中算法低了0.1%。GGM算法是从局部点集入手,学习其几何特征,利用显式编码点构造几个特征进而生成表面几何特征,这种以局部特征构造全局特征的方法会对点云的真实几何信息造成丢失,而且点云隐式特征依然没能提取到,从而导致评估准确度仅有91.8%。相比而言,文中算法不仅提高了全局特征的提取范围,还通过局部提取到的高级语义信息和有效几何特征进一步完善了整体特征。通过分类实验对比,文中算法更具优越性。
文中选取最具代表性的PointNet、PointNet++、DGCNN、GGM网络作为对比,通过测试点数为64、128、256、512、1024的稀疏点集数据,进一步测验该网络对点云数据集密度的稳定性如图12所示。
图12中,PointNet和DGCNN网络随着点集密度的增加,分类准确度提升的幅度极大,在处理稀疏点云数据时分类准确度极低。PointNet++网络在密度为64~128的点集之间分类准确度变化较大,在密度为128~512之间增长较为缓慢,当密度超过512时逐渐趋于稳定。GGM网络和文中方法的分类准确度整体增长幅度较小,当密度大于512之后分类准确度基本保持不变,但各点集密度的分类准确度都要高于GGM。文中方法不随点集的密度变化而过度影响分类准确度,在点集密度呈倍数增减的状态下分类准确度的整体波动范围不超过4%,而且不同密度的点集经本方法处理后的分类准确度仍然高于其他方法。
为了更好地测评本网络的性能,选取更具代表性的PointNet、PointNet++、DGCNN、PointCNN作为对比方法,通过测评模型大小、测试耗时及精度进行定量分析。从表3可以清晰地看出该网络复杂度低且模型轻量化、耗时较短,在分类准确度上更是优于其他算法。
-
在分割实验中,采用ShapeNet part[14]数据集来评估各算法的物体分割效果,与分类对比算法保持一致。
利用各个类别的IoU(%)和总体分割精度mIoU(%)作为定量分析的评价度量。其中IoU的求值表达式为:
各算法分割测试结果如表4所示,通过实验数据可知,经文中算法处理后的数据集物体分割总体分割精度mIoU(%)的值是85.5%,而且在16个类别中,文中算法有一半以上类别的精度达到了最优效果。虽然在mIoU数值上文中相比较PointCNN相差了0.6%,但其算法需要增加信息量来提高精度。相比而言文中算法处理点云数据更简洁,计算成本也比较低。
Method mIoU Shapes IoU Plane Bag Cap Car Chair Earcup Guitar Knife Lamp Laptop Motor Mug Pistol Rocket Skate Table PointNet[5] 83.7% 83.4% 78.7% 82.5% 74.9% 89.6% 73.0% 91.5% 85.9% 80.8% 95.3% 65.2% 93.0% 81.2% 57.9% 72.8% 80.6% PointNet[6] 85.1% 82.4% 79.0% 87.7% 77.3% 90.8% 71.8% 91.0% 85.9% 83.7% 95.3% 71.6% 94.1% 81.3% 58.7% 76.4% 82.6% DGCNN[8] 85.2% 84.0% 83.4% 86.7% 77.8% 90.6% 74.7% 91.2% 87.5% 82.8% 95.7% 66.3% 94.9% 81.1% 63.5% 74.5% 82.6% PointCNN[7] 86.1% 84.1% 86.4% 86.0% 80.8% 90.6% 79.7% 92.3% 88.4% 85.3% 96.1% 77.2% 95.3% 84.8% 64.2% 80.0% 83.0% Pointwise[15] 85.1% 82.9% 80.7% 87.8% 76.6% 90.8% 79.2% 91.0% 86.6% 83.3% 95.3% 71.9% 94.4% 80.9% 62.0% 75.1% 82.5% SRNPNet[16] 85.3% 82.4% 79.8% 88.1% 77.9% 90.7% 69.6% 90.9% 86.3% 84.0% 95.4% 72.2% 94.9% 81.3% 62.1% 75.9% 83.2% GMM[17] 85.2% 83.9% 82.8% 88.0% 79.8% 90.7% 76.8% 91.3% 87.6% 82.6% 95.5% 66.6% 94.8% 81.8% 62.6% 73.8% 82.6% MSDGCN[18] 85.4% 83.7% 84.7% 87.5% 77.0% 90.8% 68.2% 91.5% 86.5% 96.0% 95.5% 72.0% 95.1% 83.4% 61.9% 77.4% 82.9% Ell-Net[19] 85.0% 82.8% 81.5% 87.6% 76.8% 90.6% 78.8% 90.8% 86.8% 86.9% 95.1% 71.8% 94.2% 80.8% 61.8% 75.0% 82.2% Ours 85.5% 84.3% 85.8% 88.1% 80.0% 90.8% 79.5% 91.6% 88.2% 91.6% 95.8% 76.7% 96.1% 82.6% 65.6% 81.2% 82.8% Table 4. Local segmentation test results of each algorithm on the ShapeNet Part[14] data set
ShapeNet Part数据集共分为18个类别,依次从18个类别里随机抽取一个例子进行可视化展示,并与PointNet[5]算法及标准实例图(Ground Truth)进行比较,详情如图13所示。
如图13所示,依据红色方框标记处的各类别分割可视化对比展示。文中算法的可视化结果基本接近于标准分割图例,更接近于真实分割效果。然而经PointNet算法分割后的可视图出现了较为严重的错误现象,例如bag中的手袋部分不能进行准确的分割标记,这是由于PointNet算法不能完整地提取点云全部特征所导致的。根据主观可视化视图对比和客观数据对比,文中网络能大幅度提高物体分割的准确率。
为更好地验证文中算法能够应用于更多复杂的点云数据,对稀疏点集物体,大型复杂场景(其中大型复杂场景包含遮挡场景和遮挡物体数据)进行分割测试。如图14、15所示,分别表示稀疏点集物体和大型复杂场景的分割可视化结果图。文中算法不仅能够在权威的ShapeNet part[14]标准数据集下进行准确分割,还能够精准地分割稀疏点集和大型复杂场景,分割的效果更具优越性。
图16所示为点集密度与分割精度的关系,图17为不同点集密度下的分割可视图。文中分别从点集的不同位置减少点的数量并依次进行分割精度的测试,实验结果表明,随着点数的增多分割的精度也逐渐增大,当物体点集数量为整体密度的100%时分割精度达到最大。该算法在分割点集密度不足100%的数据时仍能将物体的各部分信息表示出来,由此可见在处理残缺或遮挡点云数据时算法依然可以达到较好的准确度。
-
为了优化网络,寻求最佳参数组合,进行消融实验分析,依然采用标准的ModelNet40[13]数据集进行实验操作。
局部采样的关键在于感受野的大小,最佳的感受野能更好的对局部特征进行感知。感受野过大会造成特征提取的不细致,而感受野过小则会造成细节信息的丢失。感受野的大小取决于邻近点的数量,通过测试不同数量的最近邻点对结果的影响来进行实验分析,进而得到最佳的
$ K $ 值。由表5可知,当
$ K $ 值为20时分类评估准确度最高,表明当前感受野的大小合适,局部特征提取最佳。当$ K $ 值大于20时,分类评估准确度开始下降。实验结果表明,当最近邻点数为20时,局部感受野最佳,能够尽可能的将局部信息提取完整。KNN point number Avg class acc Eval accuracy 16 89.5% 91.4% 20 89.8% 92.7% 25 89.1% 91.3% 30 88.6% 91.1% 32 88.5% 90.8% Table 5. Analysis of the best
$ K $ value在文中网络中,扩张边缘卷积模块和KNN-VLAD模块是提取点云全局几何信息特征和局部高级语义特征的模块,可以大幅度提升网络的性能。扩张边缘卷积模块通过扩大特征提取的范围,进一步增加提取点云各处的几何信息数量,最终汇总成全局特征。KNN-VLAD模块通过KNN采样获取点与点之间的联系,VLAD模块利用已经提取的低级语义信息来描述高级语义信息,补偿全局提取特征时遗漏的有效信息。
如表6所示,若网络中仅含扩张边缘卷积模块时,此时只能全局特征的提取,缺乏重要的局部特征的补偿,由于整体特征不完整导致分类评估准确度仅有92%。如果网络中仅含KNN-VLAD模块时,由于只有对局部特征进行细致提取而缺乏全局特征的提取及汇总,其分类评估准确度只有90.8%。而当2个模块同时工作时才能提高网络的性能,分类评估准确度才能达到最高,其数值为92.7%。经消融实验分析,证明了上述模块的重要性及有效性。
Dilated-Edge conv KNN-VLAD Avg class acc √ × 92.0% × √ 90.8% × √ 92.7% Table 6. Analysis of module impact
Object point cloud classification and segmentation based on semantic information compensating global features
doi: 10.3788/IRLA20210702
- Received Date: 2022-01-20
- Rev Recd Date: 2022-02-25
- Publish Date: 2022-08-31
-
Key words:
- semantic information /
- 3D model classification, segmentation /
- feature extraction /
- deep learning
Abstract: 3D point cloud data processing has played an essential role in object segmentation, medical image segmentation, and virtual reality. However, the existing 3D point cloud learning network has a small global feature extraction range and cannot obtain local high-level semantic information, which leads to incomplete point cloud feature representation. Aiming at these problems, a classification, and segmentation network of object point cloud based on semantic information compensating global features was proposed. Firstly, align the input point cloud data to the specification space, and perform the preprocessing of the input conversion of the data. Then, the expanded edge convolution module was used to extract the features of each layer of the converted data and superimpose them to generate global features. In the local feature extraction, the extracted low-level semantic information was used to describe the high-level semantic features and effective geometric information, which was used to compensate for the missing point cloud features in the global features. Finally, the global feature and local high-level semantic information were combined to obtain the overall feature of the point cloud. The experimental results show that the method in this paper is superior to the current classic and novel algorithms in classification and segmentation performance.