MSG+DP的性能从1024个测试点降低不到1%到256个测试点。此外,与替代方案相比,它在几乎所有采样密度上都实现了最佳性能。PointNet原味[20]由于其专注于全局抽象而不是细节,因此在密度变化下相当鲁棒。然而,细节的丧失也使其与我们的方法相比功能较弱。SSG(在每个级别上带有单尺度分组的PointNet++的消融版本)无法推广到...
我们发现,由于采样密度从均匀点云转移到虚拟扫描场景后,SSG的性能大幅下降。另一方面,MRG网络对于采样密度的转换更加稳健,因为当采样稀疏时,它能够自动切换到描述更加粗粒度的特征。即使在训练数据(具有随机暂弃的均匀点)和非均匀密度的扫描数据之间存在邻域鸿沟,我们的MSG网络也仅仅受到轻微地影响,并且在比较中获得了所...
在分组层中作者提出了3种方案:SSG(single scale grouping)、MSG(multi-scale grouping)多尺度、MRG(multi-resolution grouping)多分辨率。实际上就是采用不同的半径或不同的分辨率进行了多次采样分组。也是为了解决本文中的第三个问题。 SSG:就相当于只有一种半径做了分组采样 MSG:相当于在同分辨率下做了多个半径分...
那么在这一节中,我们将会实现PointNet++(MSG)中基础部分的搭建,即PointNetSetAbstractionMsg层的搭建。 在下一节点云处理:基于Paddle2.0实现PointNet++对点云进行分类处理④中,我们将会一起来实现PointNet++(SSG)整体网络搭建,并进行训练和测试。 二、PointNet++(MSG)网络简介 ...
MSG 多尺度进行采样,即前面提到的grouping layer不采用同一个半径R,而是采用不同的半径和采样个数,然后每次采样的特征都经过pointnet layer提取到特征后再进行融合,参照下图应该就清晰了。 MRG 多层级进行采样,主要是考虑到如果对每一个采样点都进行MSG,计算量太大。MRG采用两个pointnet layer对特征进行提取和聚合,过...
而在SSG中,只给定了一个尺度大小的半径,因此对所有的邻域只是用一个PointNet进行特征提取。 多尺度的特征提取后,每个尺度得到的特征的channel数是不一样的,但是特征数量是一样的,MSG直接将这些不同尺度的特征按channel进行拼接,得到了融合了多尺度的局部特征。 MSG结合了对点云的输入数据的dropout,也就是说,对输入...
前面介绍的抽象层都只包含单个尺度的分组(single scale grouping,SSG)和特征提取。在PointNet++中,每个抽象层还可以使用多尺度分组(Multi-scale grouping,MSG)、多分辨率分组(Multi-resolution grouping ,MRG),来提取并组合多个局部区域特征。 (1)多尺度分组(Multi-scale grouping,MSG)...
作者在 2D MNIST 数据集和 3D ModelNet40 数据集上进行了实验,分类结果基本达到了 SOTA,而且也验证了 PointNet++ 在不同的点云采样密度下的鲁棒性。下图中 SSG 表示单尺度聚合层(相对于 MSG)。 4.3 场景分割 作者基于 Scannet 框架[3],对比了 3DCNN[4]、PointNet 和 PointNet++ 网络的性能。
ModelAccuracy PointNet (Official) 89.2 PointNet2 (Official) 91.9 PointNet (Pytorch without normal) 90.6 PointNet (Pytorch with normal) 91.4 PointNet2_SSG (Pytorch without normal) 92.2 PointNet2_SSG (Pytorch with normal) 92.4 PointNet2_MSG (Pytorch with normal) 92.8...
PointNet2_SSG (Pytorch with normal)92.4 PointNet2_MSG (Pytorch with normal)92.8 Part Segmentation (ShapeNet) Data Preparation Download alignmentShapeNethereand save indata/shapenetcore_partanno_segmentation_benchmark_v0_normal/. Run ## Check model in ./models ## e.g., pointnet2_msg python train...