PointNet++:度量空间中点集的深层层次特征学习
Abstract
以前很少有研究点集深度学习的著作。PointNet[20]是这方面的先驱。然而,通过设计,PointNet无法捕获由度量空间点所产生的局部结构,从而限制了其识别细粒度模式的能力以及对复杂场景的通用性。在这项工作中,我们介绍了一种分层神经网络,它将PointNet递归地应用于输入点集的嵌套划分。通过利用度量空间距离,我们的网络能够在不断增加的上下文范围内学习局部特征。进一步观察到点集通常以不同的密度采样,这导致在均匀密度上训练的网络的性能大大降低,我们提出了新的集学习层来自适应地组合来自多个尺度的特征。实验表明,我们的PointNet++能够快速有效地学习深层点集特征。特别是,在具有挑战性的3D点云基准上,取得了比最新技术显著更好的结果。
1 Introduction
我们感兴趣的是分析几何点集,它是欧几里得空间中点的集合。一种特别重要的几何点集是由3D扫描仪捕获的点云,例如,来自配备适当的自动驾驶车辆。作为一个集合,这样的数据必须对其成员的排列保持不变。此外,距离度量定义可能显示不同属性的局部邻域。例如,不同位置的点的密度和其他属性可能不一致-在3D扫描中,密度变化可能来自透视效果、径向密度变化、运动等。 以前很少有研究点集深度学习的著作。PointNet[20]是一项直接处理点集的开创性工作。PointNet的基本思想是学习每个点的空间编码,然后将所有单个点特征聚合为全局点云签名。根据其设计,PointNet不捕获由度量引起的局部结构。然而,利用局部结构已被证明是卷积结构成功的重要因素。CNN将在规则网格上定义的数据作为输入,能够沿着多分辨率层次结构以越来越大的比例逐步捕获特征。在较低水平,神经元的感受野较小,而在较高水平,神经元的感受野较大。沿着层次结构抽象局部模式的能力允许更好地概括不可见的情况。 我们引入了一种称为PointNet++的分层神经网络,以分层方式处理在度量空间中采样的一组点。PointNet++的总体思想很简单。我们首先根据基础空间的距离度量将点集划分为重叠的局部区域。与CNN相似,我们从小区中提取局部特征,捕捉精细的几何结构;这些局部特征被进一步分组为更大的单元,并进行处理以生成更高级别的特征。重复这个过程,直到我们获得整个点集的特征。 点网的设计必须解决两个问题:如何生成点集的分区,以及如何通过局部特征学习器提取点集或局部特征。这两个问题是相互关联的,因为点集的划分必须产生跨分区的公共结构,以便可以共享局部特征学习者的权重,就像在卷积设置中一样。我们选择本地特征学习者作为PointNet。正如在这项工作中所展示的,PointNet是一种有效的体系结构,用于处理无序的点集以进行语义特征提取。此外,该体系结构对输入数据损坏具有鲁棒性。作为一个基本构建块,PointNet将本地点或特征集抽象为更高级别的表示。在此视图中,PointNet++在输入集的嵌套分区上递归应用PointNet。 仍然存在的一个问题是如何生成点集的重叠分区。每个分区被定义为基础欧氏空间中的一个邻域球,其参数包括质心位置和比例。为了均匀地覆盖整个集合,通过最远点采样(FPS)算法在输入点集中选择质心。与以固定步幅扫描空间的体积CNN相比,我们的局部接受域依赖于输入数据和度量,因此更高效。 图1:从结构传感器捕获的扫描可视化(左:RGB;右:点云)。
然而,由于特征尺度的纠缠性和输入点集的非均匀性,确定合适的局部邻域球的尺度是一个更具挑战性的问题。我们假设输入点集可能在不同区域具有可变密度,这在实际数据中非常常见,例如结构传感器扫描[18](见图1)。因此,我们的输入点集与CNN输入非常不同,CNN输入可以被视为在均匀恒定密度的规则网格上定义的数据。在CNN中,与局部分区比例相对应的是内核的大小[25]表明使用较小的内核有助于提高CNN的能力。然而,我们在点集数据上的实验却为这一规则提供了相反的证据。由于采样不足,小邻域可能由太少的点组成,这可能不足以允许PointNet可靠地捕获模式。 本文的一个重要贡献是,PointNet++利用多尺度的邻域来实现鲁棒性和细节捕获。在训练过程中,借助随机输入丢失,网络学习自适应地对不同尺度下检测到的模式进行加权,并根据输入数据组合多尺度特征。实验表明,我们的PointNet++能够高效、稳健地处理点集。特别是,在具有挑战性的3D点云基准测试中获得了明显优于最新技术的结果。
2 Problem Statement
假设X=(M,d)是一个离散度量空间,其度量继承自欧几里德空间Rn,其中M? Rn是点集,d是距离度量。此外,环境欧几里德空间中M的密度可能并非处处均匀。我们感兴趣的是学习集函数f,它将X作为输入(以及每个点的附加特征),并生成语义兴趣重分类X的信息。实际上,这样的f可以是将标签分配给X的分类函数,也可以是将逐点标签分配给M的每个成员的分段函数。
3 Method
我们的工作可以看作是PointNet[20]的扩展,增加了层次结构。我们首先回顾PointNet(3.1节),然后介绍具有层次结构的PointNet的基本扩展(3. 2节). 最后,我们提出了我们的PointNet++,它能够在非均匀采样点集(3. 3节). 3.1 PointNet[20]综述:一种通用的连续集函数逼近器 给定一个无序点集 {x1, x2, …, xn} 和 xi∈Rd,可以定义一个集合函数 f : X → R 将一组点映射到一个向量: 图 2:以 2D 欧几里得空间中的点为例,我们的分层特征学习架构及其在集合分割和分类中的应用的图示。单尺度点分组在此处可视化。有关密度自适应分组的详细信息,请参见图 3
其中 γ 和 h 通常是多层感知器 (MLP) 网络。 方程1中的集合函数 f对输入点排列是不变的,并且可以任意逼近任何连续集函数[20]。请注意,h 的响应可以解释为一个点的空间编码(详见 [20])。 PointNet在一些基准测试中取得了令人印象深刻的性能。然而,它缺乏在不同尺度上捕获本地上下文的能力。在下一节中,我们将介绍一个分层特征学习框架来解决这个局限性。
3.2 分层点集特征学习 虽然PointNet使用单个max pooling操作来聚合整个点集,但我们的新体系结构构建了点的分层分组,并沿分层结构逐步抽象出越来越大的局部区域。 我们的层次结构由许多抽象层次组成(图2)。在每一个层次上,对一组点进行处理和抽象,以生成一个包含较少元素的新集合。集合抽象层由三个关键层组成:采样层、分组层和PointNet层。采样层从输入点选择一组点,定义局部区域的质心。然后,分组层通过查找质心周围的“相邻”点来构造局部区域集。PointNet层使用迷你点网将局部区域模式编码为特征向量。 集合抽象层以N×(d+C)矩阵作为输入,该矩阵来自具有d-dim坐标和C-dim点特征的N个点。它输出N’子采样点的N’×(d+C’)矩阵,该矩阵具有d-dim坐标和总结本地上下文的新C’-dim特征向量。我们将在下面的段落中介绍集合抽象级别的各个层。 Sampling layer(采样层)。给定输入点 {x1, x2, …, xn},我们使用迭代最远点采样 (FPS) 来选择点 {xi1, xi2, …, xim} 的子集,使得 xij 是最远点(度量距离)从集合 {xi1, xi2, …, xij?1} 关于其余点。与随机抽样相比,在质心数相同的情况下,它具有更好的覆盖整个点集的能力。与扫描与数据分布无关的向量空间的 CNN 相比,我们的采样策略以数据相关的方式生成接收域。 Grouping layer(分组层)。该层的输入是一个大小为N×(d+C)的点集和一组大小为N’×d的质心的坐标。输出是大小为N’×K×(d+C)的点集组,其中每组对应于局部区域,K是质心点邻域中的点数。请注意,K在不同的组中有所不同,但后续的PointNet层能够将灵活数量的点转换为固定长度的局部区域特征向量。 在卷积神经网络中,像素的局部区域由阵列索引在像素的特定曼哈顿距离(内核大小)内的像素组成。在从度量空间采样的点集中,点的邻域由度量距离定义。 球查询查找查询点半径范围内的所有点(在实现中设置了上限 K)。另一种范围查询是 K 最近邻 (kNN) 搜索,它可以找到固定数量的相邻点。与 kNN 相比,球查询的局部邻域保证了固定的区域尺度,从而使局部区域特征在空间上更具泛化性,这对于需要局部模式识别的任务(例如语义点标记)来说是首选。 PointNet layer(点网层)。在这一层,输入是N’个数据大小为N’×K×(d+C)的点的局部区域。输出中的每个局部区域都由其质心和对质心邻域进行编码的局部特征进行抽象。输出数据大小为 N’× (d+C’)。 首先将局部区域中点的坐标转换为相对于质心点的局部帧:Xi(j)=Xi(j)? ^X(j)对于i=1,2,K和j=1,2,…,其中,?x是质心的坐标。我们使用PointNet[20],如第3.1节所述作为本地模式学习的基本构建块。通过使用相对坐标和点特征,我们可以捕捉局部区域中的点对点关系。
3.3 非均匀采样密度下的鲁棒特征学习 如前所述,点集在不同区域的密度不均匀是很常见的。这种非均匀性给点集特征学习带来了重大挑战。在密集数据中学习的特征可能不会推广到稀疏采样区域。因此,为稀疏点云训练的模型可能无法识别细粒度的局部结构。 理想情况下,我们希望尽可能近距离地检查点集,以捕获密集采样区域中的最精细细节。但是,禁止在低密度区域进行此类近距离检查,因为取样不足可能会破坏局部模式。在这种情况下,我们应该在更大的范围内寻找更大的尺度模式。为了实现这一目标,我们提出了密度自适应点网层(图3),当输入采样密度改变时,该层学习组合来自不同尺度区域的特征。我们将具有密度自适应点网层的分层网络称为点网。 图3:(a)多尺度分组(MSG)(b) 多分辨率分组(MRG)。
在前面的3.2节中,每个抽象级别包含单个尺度的分组和特征提取。在PointNet++中,每个抽象层提取局部模式的多个尺度,并根据局部点密度进行智能组合。在对局部区域进行分组和结合不同尺度的特征方面,我们提出了两种类型的密度自适应层,如下所示。 多尺度分组(MSG)。如图3(a)所示,捕获多尺度模式的一种简单但有效的方法是应用具有不同尺度的分组层,然后根据点网提取每个尺度的特征。将不同比例的特征连接起来以形成多比例特征。 我们训练网络学习一种优化策略,以结合多尺度特征。这是通过对每个实例以随机概率随机删除输入点来实现的,我们称之为随机输入删除。具体地说,对于每个训练点集,我们选择从[0,p]中均匀采样的dropout率θ,其中p≤ 1.对于每个点,我们随机丢弃一个概率为θ的点。在实践中,我们设置p=0.95以避免生成空点集。在此过程中,我们为网络提供了各种稀疏性(由θ引起)和不同均匀性(由dropout中的随机性引起)的训练集。在测试期间,我们保留所有可用点。 多分辨率分组(MRG)。上面的MSG方法在计算上是昂贵的,因为它在每个质心点的大规模邻域上运行本地PointNet。特别是,由于质心点的数量在最低水平通常是相当大的,时间成本是巨大的。 在这里,我们提出了一种替代方法,避免了这种昂贵的计算,但仍然保留了根据点的分布特性自适应聚合信息的能力。在图3 (b)中,一个区域在某一层次上的特征是两个向量的连接。一个向量(图中左边)是通过使用集合抽象层从较低层次Li?1总结每个子区域的特征得到的。另一个向量(右)是通过使用单一的PointNet直接处理局部区域的所有原始点而获得的特征。 当局部区域密度较低时,第一个向量可能比第二个向量更不可靠,因为计算第一个向量的子区域包含更稀疏的点,更容易出现采样缺陷。在这种情况下,第二个向量的权重应该更高。另一方面,当一个局部区域的密度很高时,第一个向量提供更精细的细节信息,因为它具有在较低层次上以更高分辨率递归检查的能力。 与MSG相比,该方法在计算效率上更高效,因为我们在最低层次上避免了大规模邻域的特征提取。
3.4 集合分割的点特征传播 在集合抽象层中,对原始点集进行下采样。而在语义点标注等集合分割任务中,我们希望获得所有原始点的点特征。一种解决方案是始终将所有抽象层中的所有点采样为质心,但这将导致较高的计算成本。另一种方法是将特征从下采样点传播到原始点。 我们采用基于距离的插值和跨级别跳过链接的分层传播策略(如图 2 所示)。在特征传播级别,我们将点特征从 Nl×(d +C) 个点传播到 Nl?1 个点,其中 Nl?1 和 Nl(Nl ≤ Nl?1)是集合抽象级别 l 的输入和输出的点集大小。我们通过在 Nl?1 个点的坐标处插入 Nl 个点的特征值 f 来实现特征传播。在插值的众多选择中,我们使用基于 k 个最近邻的逆距离加权平均值(如等式 2,默认情况下我们使用 p = 2,k = 3)。然后将 Nl-1 个点上的内插特征与来自集合抽象级别的跳过链接点特征连接起来。然后将连接的特征通过一个“单元点网”,这类似于 CNN 中的逐一卷积。应用一些共享的全连接层和 ReLU 层来更新每个点的特征向量。重复该过程,直到我们将特征传播到原始点集。
4 Experiments
数据集 我们评估了四个数据集,从 2D 对象(MNIST [11])、3D 对象(ModelNet40 [31] 刚性对象、SHREC15 [12] 非刚性对象)到真实 3D 场景(ScanNet [5])。对象分类是通过准确性来评估的。语义场景标记通过以下 [5] 的平均体素分类精度进行评估。我们在下面列出了每个数据集的实验设置:
- MNIST:具有 60k 训练和 10k 测试样本的手写数字图像。
- ModelNet40:40类CAD模型(大部分是人造的)。我们使用官方分割,其中 9,843 个形状用于训练,2,468 个形状用于测试。
- SHREC15:来自 50 个类别的 1200 个形状。每个类别包含 24 个形状,其中大部分是具有各种姿势的有机形状,例如马、猫等。我们使用五折交叉验证来获得该数据集的分类精度。
- ScanNet:1513 个扫描和重建的室内场景。我们按照[5]中的实验设置,使用1201个场景进行训练,312个场景进行测试。
4.1 欧几里得度量空间中的点集分类 我们评估我们的网络对从 2D (MNIST) 和 3D (ModleNet40) 欧几里德空间采样的点云进行分类。 MNIST 图像被转换为??数字像素位置的 2D 点云。 3D 点云是从 ModelNet40 形状的网格表面采样的。默认情况下,我们对 MNIST 使用 512 点,对 ModelNet40 使用 1024 点。在表 2 的最后一行(我们的法线),我们使用面部法线作为附加点特征,我们还使用更多点 (N = 5000) 来进一步提高性能。所有点集都归一化为零均值并在单位球内。我们使用具有三个全连接层的三层分层网络 结果。在表 1 和表 2 中,我们将我们的方法与一组具有代表性的先前技术进行了比较。请注意,表 2 中的 PointNet (vanilla) 是 [20] 中不使用转换网络的版本,这相当于我们只有一层的分层网络。
图 4:左:具有随机点丢失的点云。右图:曲线显示了我们的密度自适应策略在处理非均匀密度方面的优势。 DP表示训练期间随机输入dropout;否则训练是在均匀密集的点上。有关详细信息,请参阅第 3.3 节。
首先,我们的分层学习架构的性能明显优于非分层 PointNet [20]。在 MNIST 中,我们看到从 PointNet (vanilla) 和 PointNet 到我们的方法的错误率相对降低了 60.8% 和 34.6%。在 ModelNet40 分类中,我们还看到使用相同的输入数据大小(1024 个点)和特征(仅坐标),我们的分类明显强于 PointNet。其次,我们观察到基于点集的方法甚至可以达到与成熟图像 CNN 更好或相似的性能。在 MNIST 中,我们的方法(基于 2D 点集)实现了接近网络 CNN 中网络的精度。在 ModelNet40 中,我们的具有正常信息的方法显着优于先前最先进的方法 MVCNN [26]。 对采样密度变化的鲁棒性。直接从现实世界中捕获的传感器数据通常存在严重的不规则采样问题(图 1)。我们的方法选择多个尺度的点邻域,并通过适当加权来学习平衡描述性和鲁棒性。 我们在测试期间随机丢点(图4左),以验证我们的网络对非均匀和稀疏数据的鲁棒性。在图4右图中,我们可以看到MSG+DP(训练过程中随机输入dropout的多尺度分组)和MRG+DP(训练过程中随机输入dropout的多分辨率分组)对采样密度变化非常鲁棒。MSG+DP性能下降不到1%,从1024到256个测试点。而且,与其他方法相比,它在几乎所有采样密度上都取得了最好的性能。PointNet vanilla[20]在密度变化下是相当健壮的,因为它关注全局抽象而不是细节。然而,与我们的方法相比,细节的缺失也让它变得不那么强大。SSG(简化的PointNet++,在每个级别中使用单一的规模分组)不能推广到稀疏采样密度,而SSG+DP通过在训练时间中随机剔除点来修正这个问题。 4.2 语义场景标注的点集分割 为了验证该方法适用于大规模点云分析,我们还对语义场景标注任务进行了评价。目标是预测室内扫描点的语义对象标签。[5]在体素化扫描上使用完全卷积神经网络提供基线。他们完全依赖扫描几何而不是RGB信息,并以每体素为基础报告精度。为了进行公平比较,我们在所有实验中都去掉了RGB信息,并将点云标签预测转换为[5]之后的体素标记。我们还与[20]进行了比较。图5(蓝条)以每体素为基础报告准确率。 图5:扫描网络标签的准确性。
我们的方法在很大程度上优于所有的基线方法。与[5]在体素化扫描上进行学习相比,我们直接在点云上进行学习,避免了额外的量化误差,并进行数据依赖采样,使学习更加有效。与[20]相比,我们的方法引入了层次特征学习,捕获了不同尺度的几何特征。这对于理解不同层次的场景和标记不同大小的对象非常重要。我们可视化示例场景标注结果如图6所示。
图6:扫描标签结果。[20]正确地捕捉了房间的整体布局,但没有发现家具。相比之下,我们的方法更擅长于分割除了房间布局之外的物品。
采样密度变化的稳健性 为了测试我们训练的模型在非均匀采样密度的扫描上的表现,我们合成了与图1相似的Scannet场景的虚拟扫描,并根据该数据评估我们的网络。关于如何生成虚拟扫描,我们建议读者参阅补充材料。我们在三种情况下(SSG, MSG+DP, MRG+DP)评估我们的框架,并与基线方法[20]进行比较。 性能对比如图5(黄条)所示。我们看到,由于采样密度从均匀点云向虚拟扫描场景转移,SSG性能大大下降。而MRG网络在采样稀疏时能够自动切换到粒度较粗的特征,因此对采样密度的偏移具有更强的鲁棒性。尽管训练数据(均匀点随机dropout)与非均匀密度的扫描数据之间存在域差距,但我们的MSG网络受到的影响较小,在比较方法中准确率最高。这证明了我们的密度自适应层设计的有效性。
4.3 非欧几里得度量空间中的点集分类 在这一节中,我们展示了我们的方法对非欧几里得空间的推广。在非刚性形状分类(图7)中,一个好的分类器应该能够将图7中的(a)和?正确地分类为同一类别,即使它们的姿态不同,这需要内在结构知识。SHREC15中的形状是嵌入在3D空间中的2D表面。沿着表面的测地线距离自然地产生一个度量空间。我们通过实验表明,在这个度量空间中采用PointNet++是捕获底层点集内在结构的有效方法。
图7:非刚性形状分类示例。
对于[12]中的每个形状,我们首先构造了由对偶测地线距离引起的度量空间。我们跟踪[23]以获得模拟测地线距离的嵌入度量。接下来我们提取了度量空间WKS [1], HKS[27]和多尺度高斯曲率[16]的固有点特征。我们使用这些特征作为输入,然后根据底层度量空间对点进行抽样和分组。通过这种方式,我们的网络学习捕捉不受形状特定姿态影响的多尺度内在结构。另一种设计选择包括使用XY Z坐标作为点特征或使用欧几里得空间r3作为底层的度量空间。下面我们展示的这些都不是最佳选择。 结果。我们将我们的方法与表3中先前最先进的[14]方法进行了比较。[14]提取测地矩作为形状特征,并使用堆叠稀疏自动编码器对这些特征进行消化,以预测形状类别。我们的方法使用非欧几里得度量空间和内在特征在所有设置中获得最佳性能,并大大优于[14]。 比较我们方法的第一和第二种设置,我们看到内在特征对非刚性形状分类非常重要。XY Z特征不能反映其内在结构,受位姿变化的影响较大。比较我们方法的第二和第三种设置,我们看到使用测地线邻域比使用欧几里得邻域更有益。欧几里得邻域可能包括表面上很远的点,当形状产生非刚性变形时,这个邻域可能会发生巨大的变化。这给有效的权值分配带来了困难,因为局部结构可能会变得组合复杂。曲面上的测地线邻域解决了这一问题,提高了学习效率。
4.4 特征可视化 在图8中,我们可视化了层级网络的第一级核学到的东西。我们在空间中创建了一个体素网格,并聚集了网格细胞中激活某些神经元最多的局部点集(使用了最高的100个例子)。保留高投票的网格细胞,并将其转换回三维点云,这代表神经元识别的模式。由于模型是在ModelNet40上训练的,ModelNet40主要由家具组成,所以在可视化中我们可以看到平面、双面、线、角等结构。
图8:从第一层核学习到的三维点云模式。模型经过ModelNet40形状分类训练(从128个核中随机选取20个)。颜色表示点的深度(红色表示近,蓝色表示远)。
5 Related Work
层次特征学习的思想是非常成功的。在所有的学习模型中,卷积神经网络[10,25,8]是最突出的学习模型之一。然而,卷积并不适用于具有距离度量的无序点集,而这正是我们工作的重点。 最近的一些研究[20,28]研究了如何将深度学习应用于无序集。它们忽略了潜在的距离度量,即使点集拥有一个。因此,它们无法捕获点的局部上下文,对全局集的平移和归一化非常敏感。在这项工作中,我们以从度量空间中取样的点为目标,并通过在我们的设计中明确考虑潜在的距离度量来解决这些问题。 从度量空间中采样的点通常是有噪声且采样密度不均匀的。这影响了点特征的有效提取,导致学习困难。选取合适的尺度进行点特征设计是关键问题之一。此前,在几何学处理界或摄影测量学和遥感界,已经针对这一问题开发了几种方法[19,17,2,6,7,30]。与所有这些工作相反,我们的方法学习提取点特征,并以端到端方式平衡多个特征尺度。 在三维度量空间中,除了点集,还有几种常用的深度学习表示,包括体积网格[21,22,29]和几何图形[3,15,33]。然而,在这些工作中,没有一个明确考虑非均匀采样密度的问题。
6 Conclusion
在这项工作中,我们提出PointNet++,一个强大的神经网络体系结构,用于处理在度量空间中采样的点集。PointNet++递归函数对输入点集的嵌套划分,并有效地学习关于距离度量的层次特征。为了解决非均匀点采样问题,我们提出了两个新的集合抽象层,根据局部点密度智能地聚合多尺度信息。这些贡献使我们能够在具有挑战性的3D点云基准上实现最先进的性能。 在这项工作中,我们提出PointNet++,一个强大的神经网络体系结构,用于处理在度量空间中采样的点集。PointNet++递归函数对输入点集的嵌套划分,并有效地学习关于距离度量的层次特征。为了解决非均匀点采样问题,我们提出了两个新的集合抽象层,根据局部点密度智能地聚合多尺度信息。这些贡献使我们能够在具有挑战性的3D点云基准上实现最先进的性能。
References
[1] M. Aubry, U. Schlickewei, and D. Cremers. The wave kernel signature: A quantum mechanical approach to shape analysis. In Computer Vision Workshops (ICCV Workshops), 2011 IEEE International Conference on, pages 1626–1633. IEEE, 2011. [2] D. Belton and D. D. Lichti. Classification and segmentation of terrestrial laser scanner point clouds using local variance information. Iaprs, Xxxvi, 5:44–49, 2006. [3] J. Bruna, W. Zaremba, A. Szlam, and Y . LeCun. Spectral networks and locally connected networks on graphs. arXiv preprint arXiv:1312.6203, 2013. [4] A. X. Chang, T. Funkhouser, L. Guibas, P . Hanrahan, Q. Huang, Z. Li, S. Savarese, M. Savva, S. Song, H. Su, J. Xiao, L. Yi, and F. Y u. ShapeNet: An Information-Rich 3D Model Repository. Technical Report arXiv:1512.03012 [cs.GR], 2015. [5] A. Dai, A. X. Chang, M. Savva, M. Halber, T. Funkhouser, and M. Nie?ner. Scannet: Richly-annotated 3d reconstructions of indoor scenes. arXiv preprint arXiv:1702.04405, 2017. [6] J. Demantké, C. Mallet, N. David, and B. V allet. Dimensionality based scale selection in 3d lidar point clouds. The International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, 38(Part 5):W12, 2011. [7] A. Gressin, C. Mallet, J. Demantké, and N. David. Towards 3d lidar point cloud registration improvement using optimal neighborhood knowledge. ISPRS journal of photogrammetry and remote sensing, 79:240– 251, 2013. [8] K. He, X. Zhang, S. Ren, and J. Sun. Deep residual learning for image recognition. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 770–778, 2016. [9] D. Kingma and J. Ba. Adam: A method for stochastic optimization. arXiv preprint arXiv:1412.6980. [10] A. Krizhevsky, I. Sutskever, and G. E. Hinton. Imagenet classification with deep convolutional neural networks. In Advances in neural information processing systems, pages 1097–1105, 2012. [11] Y . LeCun, L. Bottou, Y . Bengio, and P . Haffner. Gradient-based learning applied to document recognition. Proceedings of the IEEE, 86(11):2278–2324, 1998. [12] Z. Lian, J. Zhang, S. Choi, H. ElNaghy, J. El-Sana, T. Furuya, A. Giachetti, R. A. Guler, L. Lai, C. Li, H. Li, F. A. Limberger, R. Martin, R. U. Nakanishi, A. P . Neto, L. G. Nonato, R. Ohbuchi, K. Pevzner, D. Pickup, P . Rosin, A. Sharf, L. Sun, X. Sun, S. Tari, G. Unal, and R. C. Wilson. Non-rigid 3D Shape Retrieval. In I. Pratikakis, M. Spagnuolo, T. Theoharis, L. V . Gool, and R. V eltkamp, editors, Eurographics Workshop on 3D Object Retrieval. The Eurographics Association, 2015. [13] M. Lin, Q. Chen, and S. Yan. Network in network. arXiv preprint arXiv:1312.4400, 2013. [14] L. Luciano and A. B. Hamza. Deep learning with geodesic moments for 3d shape classification. Pattern Recognition Letters, 2017. [15] J. Masci, D. Boscaini, M. Bronstein, and P . V andergheynst. Geodesic convolutional neural networks on riemannian manifolds. In Proceedings of the IEEE International Conference on Computer Vision Workshops, pages 37–45, 2015. [16] M. Meyer, M. Desbrun, P . Schr?der, A. H. Barr, et al. Discrete differential-geometry operators for triangulated 2-manifolds. Visualization and mathematics, 3(2):52–58, 2002. [17] N. J. MITRA, A. NGUYEN, and L. GUIBAS. Estimating surface normals in noisy point cloud data. International Journal of Computational Geometry & Applications, 14(04n05):261–276, 2004. [18] I. Occipital. Structure sensor-3d scanning, augmented reality, and more for mobile devices, 2016. [19] M. Pauly, L. P . Kobbelt, and M. Gross. Point-based multiscale surface representation. ACM Transactions on Graphics (TOG), 25(2):177–193, 2006. [20] C. R. Qi, H. Su, K. Mo, and L. J. Guibas. Pointnet: Deep learning on point sets for 3d classification and segmentation. arXiv preprint arXiv:1612.00593, 2016. [21] C. R. Qi, H. Su, M. Nie?ner, A. Dai, M. Yan, and L. Guibas. V olumetric and multi-view cnns for object classification on 3d data. In Proc. Computer Vision and Pattern Recognition (CVPR), IEEE, 2016. [22] G. Riegler, A. O. Ulusoys, and A. Geiger. Octnet: Learning deep 3d representations at high resolutions. arXiv preprint arXiv:1611.05009, 2016. [23] R. M. Rustamov, Y . Lipman, and T. Funkhouser. Interior distance using barycentric coordinates. In Computer Graphics F orum, volume 28, pages 1279–1288. Wiley Online Library, 2009. [24] P . Y . Simard, D. Steinkraus, and J. C. Platt. Best practices for convolutional neural networks applied to visual document analysis. In ICDAR, volume 3, pages 958–962, 2003. [25] K. Simonyan and A. Zisserman. V ery deep convolutional networks for large-scale image recognition. arXiv preprint arXiv:1409.1556, 2014. [26] H. Su, S. Maji, E. Kalogerakis, and E. G. Learned-Miller. Multi-view convolutional neural networks for 3d shape recognition. In Proc. ICCV , to appear, 2015. [27] J. Sun, M. Ovsjanikov, and L. Guibas. A concise and provably informative multi-scale signature based on heat diffusion. In Computer graphics forum, volume 28, pages 1383–1392. Wiley Online Library, 2009. [28] O. Vinyals, S. Bengio, and M. Kudlur. Order matters: Sequence to sequence for sets. arXiv preprint arXiv:1511.06391, 2015. [29] P .-S. W ANG, Y . LIU, Y .-X. GUO, C.-Y . SUN, and X. TONG. O-cnn: Octree-based convolutional neural networks for 3d shape analysis. 2017. [30] M. Weinmann, B. Jutzi, S. Hinz, and C. Mallet. Semantic point cloud interpretation based on optimal neighborhoods, relevant features and efficient classifiers. ISPRS Journal of Photogrammetry and Remote Sensing, 105:286–304, 2015. [31] Z. Wu, S. Song, A. Khosla, F. Y u, L. Zhang, X. Tang, and J. Xiao. 3d shapenets: A deep representation for volumetric shapes. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 1912–1920, 2015. [32] L. Yi, V . G. Kim, D. Ceylan, I.-C. Shen, M. Yan, H. Su, C. Lu, Q. Huang, A. Sheffer, and L. Guibas. A scalable active framework for region annotation in 3d shape collections. SIGGRAPH Asia, 2016. [33] L. Yi, H. Su, X. Guo, and L. Guibas. Syncspeccnn: Synchronized spectral cnn for 3d shape segmentation. arXiv preprint arXiv:1612.00606, 2016.
Supplementary
A Overview 补充材料提供了更多的实验细节,包括更多的实验,以验证和分析我们提出的方法。 在B节中,我们在主要论文中提供了用于实验的具体网络架构,并详细描述了数据准备和训练的细节。在C节中,我们展示了更多的实验结果,包括部分分割和邻域查询分析的基准性能,对抽样随机性和时间空间复杂性的敏感性。
B Details in Experiments 首先对描述网络架构的符号做一个约定: 表示一个SA(set abstraction)层,其中带有k个局部区域,球半径为r,使用d个全连接层的PointNet,每层的宽度为Li。 表示这是一个全局SA层(global set abstraction level),将集合转换为单个向量 代表使用m个尺度的MSG 代表宽度为l的全连接层,dp为dropout_ratio
代表一个宽度为d的特征传播层,除了最后一层是预测分数的层,其他全连接层都应用batch normalization和ReLU
B.1 网络架构:
-
SSG with K number of categories -
MSG -
MRG 分支1和2会连接起来并送入分支4,然后分支3的输出和分支4连接,之后送入如下的全连接层用于分类 -
Network for semantic scene labeling 最后两个FP层使用0.5的dropout -
Network for semantic and part segmentation 最后两个FP层使用0.5的dropout -
分类模型中添加了N (0, 0.01)的高斯噪声、随机旋转物体来做数据增强 -
ScanNet Experiment Details 语义分割时,从初始场景中生成一个1.5 * 1.5 * 3的立方体,保持立方体中≥2%的体素被占用,≥70%的表面体素具有有效的注释。在测试阶段,同样将测试场景分成较小的立方体,首先对立方体中的每个点进行标签预测,然后在同一场景的所有立方体中合并标签预测。如果一个点从不同的立方体获得不同的标签,就使用多数投票法来获得最终的点标签预测。 -
SHREC15 Experiment Details 在训练和测试阶段都从每个形状中随机选择1024个点,为了生成输入的内在特征,分别提取100维WKS,HKS和多尺度高斯曲率,导致每个点成为一个300维的特征向量。然后使用PCA将特征维度降到64。使用8维嵌入来模拟测地距离(用于描述我们的非欧几里德度量空间,同时选择局部区域)
B.2 Virtual Scan Generation 包括分割模型的性能、近邻点选择方法的分析、模型对采样的随机性和时空复杂度的敏感性。
-
Semantic Part Segmentation 该任务是为每个点预测一个标签,使用IoU作为评价准则,取所有类的平均值(mIoU),训练期间使用 cross entropy 作为最小化的损失函数。 作者将模型取得优异表现的原因归功于:MSG 在多尺度领域选择上的灵活性、多个 SA 层实现的逐层特征提取。并且 SA 层的操作和图像中的卷积操作非常相似,并且不需要执行昂贵的特征分解,这些使我们的方法更适合大规模点云分析。作者的实验也证明了分层特征学习对于精细语义理解的重要性。 -
近邻选择方法的比较:KNN & ball query 论文中使用的是基于某个半径 r 的 ball query,作者也实验了基于 KNN 的近邻搜索。同时也比较了不同的 r 和 k。当采样密度比较均匀时,ball query 的方法要比 KNN 稍好一点(slightly better)。作者推测在非常不规则的点集中,KNN 的泛化能力会变得更差。 作者在其实验中也观察到,稍大一点的半径有助于提高性能,因为能捕获更丰富的局部模式。 -
随机性在最远点采样中的影响(Effect of Randomness in Farthest Point Sampling) 首先,FPS 具有随机性,采样结果也受初始采样点的影响。作者实验了模型对这种随机性的敏感性,当特征存在2.1%的标准偏差时,测试精度只有0.17%的标准偏差,对于采样的随机性还是比较鲁棒的。 -
时间和空间复杂度 作者的实验环境是单卡GTX1080,batch_size 8,TensorFlow1.1,计算前向时间(forward time)来衡量时间复杂度 尽管 MSG 的方法在非规则采样的数据上有很好的表现,但是由于它需要进行多尺度的特征提取,其前向计算的时间复杂度两倍于 SSG 并且空间复杂度更高。
相比 MSG,MRG 在时间复杂度上表现更好,因为它使用跨层的区域,但是也使其空间复杂度两倍于MSG。
总体上看,PointNet++ 中提出的方法相较于带有 T-net 的 PointNet,在空间复杂度上都有更好的表现,但是由于分层特征提取,时间复杂度也数倍于PointNet。
|