pointNet:用于三维分类和分割的点集深度学习

时间:2024-04-04 20:50:50

原文:PointNet:Deep Learning on Point Sets for 3D Classification and Segmentation

原文连接:https://arxiv.org/abs/1612.00593

摘要

点云是一种重要的几何数据结构。由于其格式不规则,大多数研究人员将这些数据转换成规则的三维体素网格或图像集合。然而,这使得数据不必要的庞大,并导致问题。本文设计了一种直接消耗点云的新型神经网络,该神经网络很好地考虑了输入点的置换不变性。我们的网络名为PointNet,为从对象分类、部分分割到场景语义解析的应用程序提供了统一的体系结构。虽然简单,PointNet是高效和有效的。从经验上看,它表现出强劲的表现,甚至比现有技术更好。理论上,我们提供分析,以了解网络已经学到了什么,以及为什么网络对于输入扰动和损坏是鲁棒的。

1.介绍

在本文中,我们探索深度学习架构能够推理三维几何数据,如点云或网格。典型的卷积架构需要非常规则的输入数据格式,例如图像网格或3D体素的格式,以便执行权重共享和其他内核优化。由于点云或网格不是常规格式,大多数研究人员通常在将这些数据馈送到深层网络体系结构之前将这些数据转换为常规3D体素网格或图像(例如,视图)集合。然而,这种数据表示转换使得所得到的数据不必要地庞大,同时还引入了可以模糊数据的自然不变性的量化伪影。

出于这个原因,我们专注于一个不同的输入表示3D几何使用点云-并命名我们产生的深网PoxtNETs。点云数据是简单而统一的结构,避免了组合的不规则性和复杂性,网格,从而更容易学习。然而,pointnet,仍然要尊重事实,一点云只是一个点集,因此常为其成员的排列,需要一定的symmetrizations在网络计算。刚性运动的进一步不变性也需要考虑。

我们的pointnet是一个统一的架构,直接以点云的输入和输出的一类标签的整个输入或每点段/部分标签输入的每个点。我们的网络基础架构很简单,在初始阶段的每一个点进行独立同。在基本设置中,每个点仅由它的三个坐标(x,y,z)表示。额外的维度,可以通过计算法线和其他局部或全局的功能补充。

我们的方法的关键是一个单一的对称函数的使用,最大池。有效的网络学习的一组优化的功能/标准,选择点云有趣或信息点编码为他们选择的原因。最后的全连接层网络聚合这些学到的最优值为全局描述符的整个形状如上面所提到的(分类)或是用来预测每点标签(形状分割)。

我们的输入格式很容易应用刚性或仿射变换,因为每个点独立变换。因此我们可以添加一个数据依赖的空间变换网络,试图规范数据前pointnet过程,从而进一步提高的结果。

pointNet:用于三维分类和分割的点集深度学习

我们提供了理论分析和实验评价我们的方法。我们表明,我们的网络可以近似任何连续的函数集。更有趣的是,我们的网络学习用一组稀疏的关键点来概括输入点云,根据可视化,这些关键点大致对应于对象的骨架。理论分析解释了为什么我们的PointNet对输入点的小扰动以及通过点插入(离群值)或删除(丢失数据)造成的损坏具有很强的鲁棒性。

在许多基准数据集上,从形状分类、部分分割到场景分割,我们实验比较了我们的PointNet和基于多视图和体表示的最新方法。在统一的体系结构下,我们的PointNet不仅在速度上快得多,而且在标准性能上甚至比现有技术表现得更好。

我们的工作的主要贡献如下:

●我们设计了一种适用于3D中无序点集的新型深网体系结构;

●我们展示了如何训练这样的网络来执行3D形状分类、形状部分分割和场景语义解析任务;

我们对我们的方法的稳定性和效率进行了彻底的经验和理论分析;

●我们说明由网络中选定的神经元计算的3D特征,并为其性能开发直观的解释。

用神经网络处理无序集的问题是一个非常普遍和基本的问题——我们希望我们的思想也可以转移到其他领域。

2。相关工作

点云特征点云的大多数现有特征都是针对特定任务手工制作的。点特征通常编码点的某些统计特性,并且被设计成对某些变换是不变的,这些变换通常被分类为内在的[2,24,3]或外在的[20,19,14,10,5]。它们也可以被归类为局部特征和全局特征。对于特定的任务,找到最佳的特征组合不是微不足道的。

对3D数据3D数据的深入学习有多种流行的表示方式,导致学习的各种方法。体积CNN:(28, 17, 18)是将三维卷积神经网络应用于体素化形状的先驱。然而,由于数据稀疏性和3D卷积的计算代价,体积表示受到分辨率的限制。FPNN(13)和Vote3D(26)提出了处理稀疏问题的特殊方法;

他们的操作仍然是稀疏的卷,对他们来说处理非常大的点云是很有挑战性的。多视图CNN:(23, 18)尝试将3D点云或形状渲染成2D图像,然后应用2D CONV网对它们进行分类。在设计良好的图像CNNs的情况下,这一系列方法已经在形状分类和检索任务上取得了支配性的性能[ 21 ]。然而,将它们扩展到场景理解或其他3D任务(如点分类和形状完成)并不容易。光谱CNN:一些最新的作品(4, 16)在网格上使用光谱CNNs。然而,这些方法目前局限于诸如有机物体之类的流形网格,如何将它们扩展到诸如家具之类的非等距形状并不明显。基于特征的DNN:[6,8]首先将三维数据转换为矢量,提取传统的形状特征,然后利用全连通网络对形状进行分类。我们认为它们受到所提取特征的表示能力的限制。

从数据结构的角度看无序集的深层学习,点云是一组无序的向量。虽然在深层学习中的大多数工作都集中在常规输入表示上,如序列(在语音和语言处理中)、图像和卷(视频或3D数据),但是在点集的深度学习中没有做太多的工作。一个最近的工作从Oroi-Viyales等人(25)着眼于这个问题。他们使用读写过程注意机制的网络消费无序的输入集和显示他们的网络是数字的能力。然而,由于他们的工作集中于泛型集合和NLP应用,因此在集合中缺乏几何的作用。

三。问题陈述

我们设计了一个深度学习框架,它直接消耗无序的点集作为输入。一点云被表示为一个3D点集{ PI | i = 1,…,n},其中每个点的皮是一个向量(x,y,z的)坐标加上额外的特征通道如颜色、正常等简单明了,除非另有说明,我们只使用(x,y,z)坐标为我们点的通道ELS。

面向对象分类任务,输入的点云是由形状或预分割从现场直接采样点云。我们提出的深度网络输出K得分为所有的K个候选类。语义分割,输入可以是部分区域分割一个单独的对象,或一个子体积从3D场景对象的区域分割。我们的模型将输出N×M分数为每个N点和M语义子类别中的每一个。

pointNet:用于三维分类和分割的点集深度学习

4。点集的深层学习

我们的网络(SEC 4.2)的体系结构是由R n(SEC 4.1)中的点集的性质所启发的。

4.1。Rn中点集的性质

我们的输入是来自欧氏空间的点的子集。

它有三个主要特性:

无序的。不同于像素阵列的图像或体素阵列的体积网格,点云是一组点没有特定的顺序。换言之,消耗N个3D点集的网络需要对N是不变的!数据输入顺序中输入集合的排列。

点之间的相互作用。这些点来自具有距离度量的空间。这意味着点不是孤立的,并且相邻点形成有意义子集。因此,模型需要能够从附近的点捕获局部结构,以及局部结构之间的组合相互作用。

在变换下的不变性。作为几何对象,点集的学习表示对于某些变换应该是不变的。例如,旋转和平移点一起不应该修改全局点云类别,也不应该修改点的分割。

4.2。点网体系结构

我们的完整网络架构在图2中可视化,其中分类网络和分割网络共享大部分结构。请阅读图2的管道说明。我们的网络有三个关键模块:作为聚集所有点的信息的对称函数的最大汇聚层、局部和全局信息组合结构、以及两个联合对准网络,它们同时对准输入点和点特征。

我们将在下面的单独段落中讨论这些设计选择背后的原因。

无序输入的对称函数  为了使模型不变于输入置换,存在三种策略:1)将输入分类为规范顺序;2)将输入看作训练RNN的序列,但用各种置换对训练数据进行扩充;3)使用简单的对称函数。聚合每个点的信息。这里,对称函数取n个向量作为输入,并输出与输入顺序不变量的新向量。例如,+和*算子是对称的二进制函数。

虽然排序听起来像一个简单的解决方案,但在高维空间中,实际上不存在一般意义上的稳定的w.r.t点扰动的顺序。这可以很容易地被矛盾显示出来。如果存在这样的排序策略,它定义了高维空间与一维实线之间的双射映射。不难看出,要求排序是稳定的w.r.t点扰动等价于要求该映射随着维度的降低而保持空间接近性,这是在一般情况下无法实现的任务。因此,排序不能完全解决排序问题,并且当排序问题持续存在时,网络很难学习从输入到输出的一致映射。实验结果表明(图5),我们发现运用一个MLP直接排序的点集的表现不佳,但略优于直接处理一个未排序的输入。

使用RNN认为点集作为一个连续的信号,希望通过与随机置换序列的RNN训练理念,RNN将成为输入顺序不变。然而,在《秩序问题》(25)中,作者已经表明秩序是重要的,不能被完全忽略。而网络具有输入小长序列排序比较好的鲁棒性(几十个),规模为投入要素的人是很困难的,这是点集的常见尺寸。从经验上,我们还表明,基于RNN模型不执行以及我们所提出的方法(图5)。

我们的想法是近似的一般函数在一个点集采用对称函数集合中的元素定义转换

pointNet:用于三维分类和分割的点集深度学习

从经验上讲,我们的基本模块非常简单:我们用多层感知器网络来近似h,用单变量函数和最大汇聚函数的组合来近似g。这被发现通过实验很好地工作。通过H的集合,我们可以学习一些F的集合来捕获不同的属性。

虽然我们的关键模块看起来很简单,但是它具有有趣的特性(参见Sec 5.3),并且可以在一些不同的应用程序中实现强大的性能(参见Sec 5.1)。由于我们的模块的简单性,我们也能够提供理论分析,如SEC 4.3。

局部和全局信息聚合:上述部分的输出形成向量[f1,.…,FK],这是输入集的全局签名。我们可以很容易地训练SVM或多层感知器分类器的形状全局特征分类。然而,点分割需要局部和全局知识的组合。我们可以通过简单而高效的方式来实现这一目标。

我们的解决方案可以在图2(分割网络)中看到。计算完全局点云特征向量后,通过将全局特征与每个点特征连接起来,将其反馈到每个点特征。然后,我们基于组合的点特征来提取新的点特征——这次每个点特征知道局部和全局信息。

通过这种修改,我们的网络能够预测依赖于局部几何和全局语义的每点数量。例如,我们可以精确地预测每个点的法线(附图中),验证网络能够从该点的本地邻域中总结信息。实验证明,该模型在形状分割和场景分割方面均能达到最新水平。

如果点云经过某些几何变换,如刚性变换,则点云的语义标记必须是不变的。因此,我们期望我们的点集所学的表示对于这些变换是不变的。

一种自然的解决方案是在特征提取之前将所有输入集对齐到标准空间。贾德伯格等。[9]引入空间变换的思想,通过采样和插值来对准2D图像,通过GPU实现的特定定制层来实现。

我们的点云输入形式使我们能够以比(9)更简单的方式实现这一目标。我们不需要发明任何新的层,并且没有象图像中那样引入别名。我们用小网络(图2中的T-网)来预测仿射变换矩阵,并将这个变换直接应用于输入点的坐标。该网络本身类似于大网络,由点无关特征提取、最大池和全连接层等基本模块组成。关于T-NET的更多细节在补充中。

该思想还可以进一步扩展到特征空间的对齐。我们可以在点特征上插入另一个对准网络,并预测一个特征变换矩阵来对准来自不同输入点云的特征。然而,特征空间中的变换矩阵维数远高于空间变换矩阵,这大大增加了优化的难度。因此,我们增加了一个正规化的术语,以我们的SOFTMax培训损失。我们将特征变换矩阵约束为接近正交矩阵:

pointNet:用于三维分类和分割的点集深度学习

其中A是由微型网络预测的特征对齐矩阵。正交变换不会丢失输入中的信息,因此是需要的。我们发现,通过加入正则化项,优化变得更加稳定,并且我们的模型达到更好的性能。

4.3。理论分析

首先,我们证明了我们的神经网络对连续集函数的普遍逼近能力。通过连续设置功能,直观地说,一个小的扰动输入点集不应该大大改变函数的值,如分类或分割的分数。

正式,让X = {:S⊆[ 0,1 ]和|S| = n },F:X→R是X上的关于Hausdorff距离DH一组连续函数(·,·),即∀C> 0,∃δ> 0,任何s,s'∈X,如果DH(S,S')<δ,然后| F(s)-F(s')| <c。我们的定理表明,f可以任意近似由我们的网络给定足够的神经元在最大池层,即k(1)足够大

pointNet:用于三维分类和分割的点集深度学习

定理1。假设f:x~r是连续集函数W.R.T.Hausdorff距离DH(·,·)。∀c>0,∃一个连续函数H和一个对称函数g(x1,.)。…,xn)=γmax,对于任何s ∈ x,

pointNet:用于三维分类和分割的点集深度学习

其中x1,.…xn是S序中任意元素的完整列表,γ是连续函数,MAX是以n个向量为输入并返回元素最大值的新向量的向量极大算子。

这个定理的证明可以在我们的补充材料中找到。关键思想是,在最坏的情况下,网络可以通过将空间划分成大小相等的体素来学习将点云转换为体积表示。然而,在实践中,网络学习了更智能的策略来探索空间,正如我们将在点函数可视化中看到的。

理论上和实验上我们发现,网络的表达能力受最大汇聚层维数(即K in(1))的强烈影响。在这里,我们提供了一个分析,这也揭示了我们的模型的稳定性相关的属性。

我们定义U=max {H(Xi)}为F的子网络,它将在[0, 1 ] m中的点映射到k维向量。下面的定理告诉我们,输入集中的小损坏或额外的噪声点不太可能改变网络的输出:

pointNet:用于三维分类和分割的点集深度学习

 

pointNet:用于三维分类和分割的点集深度学习

我们解释了定理的含义。(a)表示如果CS中的所有点都被保留,则f(S)直到输入损坏是不变的;它还随着直到NS的额外噪声点而不变。(b)表示CS仅包含有界数,由K(1)确定。换言之,F(S)实际上完全由有限或不等于K元素的有限子集CS决定。因此,我们称CS为S的临界点集,称K为f的瓶颈维数。结合h的连续性,这解释了我们的模型w.r.t点扰动、腐蚀和额外的噪声点的鲁棒性。与机器学习模型中稀疏性原理相比较,得到了鲁棒性。直观地说,我们的网络学会通过一组稀疏的关键点来概括形状。在实验部分,我们看到关键点构成了一个对象的骨架。

5。实验

实验分为四个部分。首先,我们显示点网可以应用于多个3D识别任务(SEC 5.1)。第二,我们提供详细的实验来验证我们的网络设计(SEC 5.2)。最后,我们可视化网络学习(SEC 5.3)并分析时间和空间复杂度(SEC 5.4)。

5.1。应用

在本节中,我们将展示如何训练我们的网络来执行3D对象分类、对象部分分割和语义场景分割1。尽管我们正在研究一种全新的数据表示(点集),但我们能够在多个任务的基准测试中实现可比甚至更好的性能。

3D对象分类 我们的网络学习可以用于对象分类的全局点云特征。我们在模型NET40[ 28 ]形状分类基准上评估我们的模型。从40个人造物体类别中,有12311个CAD模型,分成9843个

我们在模型NET40[ 28 ]形状分类基准上评估我们的模型。有12311个CAD模型从40个人造目标类别,分裂成9843的培训和2468的测试。虽然以前的方法侧重于体积和多视图图像表示,但我们是第一个直接处理原始点云的方法。我们根据人脸面积均匀地在网格面上采样1024个点,并将它们归一化为单位球面。

在训练过程中,通过沿上轴随机旋转物体来动态地增强点云,并通过均值为零和标准偏差为0.02的高斯噪声来抖动每个点的位置。

pointNet:用于三维分类和分割的点集深度学习

在表1中,我们将我们的模型和以前的工作以及使用MLP对从点云中提取的传统特征(点密度、D2、形状轮廓等)的基线进行比较。我们的模型在基于3D输入(体积和点云)的方法中达到了最先进的性能。由于只有完全连接的层和最大池,我们的网络在推理速度方面有很强的领先性,而且在CPU中也很容易并行化。我们的方法和基于多视图的方法(MVCNN〔23〕)之间仍然存在一个小的差距,我们认为这是由于丢失的精细几何细节可以被渲染的图像捕获。

三维物体分割 部分分割是一个具有挑战性的细粒度三维识别任务。给定3D扫描或网格模型,任务是将部件类别标签(例如椅子腿、杯柄)分配给每个点或面部。

我们对[29]中的ShapeNet部件数据集进行评估,该数据集包含来自16个类别的16881个形状,注释了总共50个部件。大多数对象类别被标记为两到五个部分。地面真实注释标注在形状上的采样点上。

我们把部分分割作为一个点分类问题来解决。评价指标是MIOU点。对于C类中的每个形状S,要计算形状的mIoU:对于C类中的每个部件类型,在基础事实和预测之间计算IoU。如果地面真理和预测点的结合是空的,那么将部分IOU计数为1。然后,我们对C类的所有部分类型进行平均化,得到MIU。为了计算MIUE的类别,我们对该类别中的所有形状取平均值。

在这一节中,我们将我们的分割版本PointNet(FIG 2的修改版本,分割网络)与两个传统的方法[27 ]和[29 ]进行比较,它们利用点几何特征和形状之间的对应关系,以及我们自己的3D美国有线电视新闻网基线。详见补充说明

3DCNN的修改和网络架构。在表2中,我们报告每个类别和平均IOU(%)分数。我们观察到2.3%的平均IOU改进,并且我们的网击败了大多数类别的基线方法。我们还进行了模拟Kinect扫描实验,以测试这些方法的鲁棒性。在shapenet部分数据集的每个CAD模型,我们使用blensor Kinect模拟器[ [7]从6随机的观点产生不完整的点云。我们用相同的网络架构和训练设置在完整的形状和部分扫描上训练点网。结果表明,我们只损失5.3%的平均IOU。在图3中,我们给出了完整和部分数据的定性结果。可以看出,虽然部分数据相当具有挑战性,但我们的预测是合理的。

场景中的语义分割 我们的零件分割网络可以容易地扩展到语义场景分割,其中点标签成为语义对象类,而不是对象零件标签。

我们在斯坦福大学3D语义解析数据集上进行了实验[1 ]。数据集包含来自6个领域的Matter端口扫描仪的3D扫描,包括271个房间。扫描中的每个点都用来自13个类别(椅子、桌子、地板、墙壁等,加上杂乱)的语义标签之一进行注释。

 

pointNet:用于三维分类和分割的点集深度学习

pointNet:用于三维分类和分割的点集深度学习

为了准备训练数据,我们首先逐个房间分割点,然后将房间样本分成面积为1m×1m的块。每个点由XYZ、RGB和归一化位置的9-暗向量表示(从0到1)。在训练时间,我们随机抽样4096个点在每个区块上飞行。在测试时间,我们对所有的点进行测试。我们遵循相同的协议[1 ]使用K折叠策略的火车和测试。我们比较我们的方法与基线使用手工点特征。基线提取相同的9模糊局部特征和三个附加特征:局部点密度、局部曲率和正常值。我们使用标准的MLP作为分类器。结果显示在表3中,我们的PooTnNET方法显著优于基线方法。在图4中,我们展示了定性的分割结果。

我们的网络能够输出平滑的预测,并且对缺失点和遮挡具有鲁棒性。基于我们网络输出的语义分割,我们进一步构建了一个使用连接组件进行对象建议的3D对象检测系统(详细信息见补充)。我们与表4中的现有技术方法进行了比较。前一种方法是基于滑动形状法(带有CRF后处理),其中SVM训练了体素网格中的局部几何特征和全局空间上下文特征。我们的方法比它大幅度的家具类别报告。

5.2。架构设计分析

在这一节中,我们通过控制实验验证了我们的设计选择。我们还展示了我们的网络超参数的影响。

与第4.2节中提到的替代顺序不变性方法相比,使用无序集合输入至少有三种选择。我们使用ModelNet40形状分类问题作为比较这些选项的测试平台,下面的两个控制实验也将使用这个任务。我们比较的基线(如图5所示)包括n×3阵列的无序和排序点上的多层感知器、将输入点视为序列的RNN模型和基于对称函数的模型。我们实验的对称操作包括最大池、平均池和基于注意力的加权和。注意力方法类似于[25]中的方法,其中,从每个点特征预测标量分数,然后通过计算软最大值来标准化跨点的分数。然后将加权和计算在归一化得分和点特征上。如图5所示,MyPooLoin操作以较大的获胜裕度实现了最佳性能,这验证了我们的选择。

有效的输入和功能转换,在表5中我们展示的积极影响我们的输入和功能转换(对齐)。有趣的是,最基本的架构已经达到了相当合理的效果。使用输入变换提高了0.8%的性能。高维变换工作需要正则化损失。通过将变换和正则化项相结合,实现了最佳性能。

鲁棒性测试表明,我们的pointnets,简单而有效,对各种输入损坏具有鲁棒性。我们使用与图5的最大池网络相同的体系结构。输入点被归一化为单位球面。结果见图6。

pointNet:用于三维分类和分割的点集深度学习

由于缺少点,当有50%点失踪,精度只下降了2.4%和3.8%的相对遥远的和随机的输入采样。我们的网络也是异常模型的稳健:一个训练点(x,y,z)坐标;另一对(X,Y,Z)加上点密度。即使有20%的点是异常值,网络也有80%以上的精度。图6右图显示了网络对点扰动的鲁棒性。

pointNet:用于三维分类和分割的点集深度学习

5.3。可视化点阵网

图7中,我们把关键点集的CS和上界的形状(如在2 ns THM讨论)一些样品的形状,点集的两个形状之间将完全相同的整体形状特征F(S)。

从图7我们可以清楚的看到,关键点集的CS,那些贡献最大混合特征,总结了形状的骨架。上界形状NS说明最大可能的点云,给相同的全局形状特征F(S)为输入点云美国CS和NS反映pointnet鲁棒性,意味着失去一些非关键点不改变全局形状签名F(s)在所有。

NS是由转发所有的点在一个edge-length-2立方体通过网络选择点P的点的函数值(H1,H2(P)(P),···,香港(P))不超过全球的形状描述符。

pointNet:用于三维分类和分割的点集深度学习

5.4。时空复杂度分析

表6总结了我们的分类PointNet的空间(网络中参数的数量)和时间(浮点操作/示例)复杂度。我们还比较PotoNETs的代表性的集合体积和多视图的架构在以前的作品。

虽然MVCNN[23]和Sub.(3D CNN)[18]实现了高性能,但PointNet在计算成本方面效率更高(在FLOP/sample中测得,分别为141x和8x)。此外,在网络中,PoNETNE比MVCNN更节省空间(17x更少的参数)。此外,PootNETs更具可扩展性——它的空间和时间复杂度是O(n)-在输入点的数量上是线性的。然而,由于卷积在计算时间上占主导地位,多视点方法的时间复杂度随着图像分辨率的增大而增大,基于体积卷积的方法随着体积的增大而呈立方体增长。

从经验上讲,PointNet能够在TensorFlow上使用1080XGPU每秒处理100多万个点,用于点云分类(大约1K个对象/秒)或语义分割(约2个房间/秒),显示出巨大的实时应用潜力。

pointNet:用于三维分类和分割的点集深度学习

6。结论

在这项工作中,我们提出了一种新的直接消耗点云的深度神经网络PootNET.我们的网络提供了一个统一的方法来实现一些3D识别任务,包括对象分类、部分分割和语义分割,而在标准基准上获得比标准的状态更好或更好的结果。我们还提供了理论分析和可视化了解我们的网络。

References
[1] I. Armeni, O. Sener, A. R. Zamir, H. Jiang, I. Brilakis, M. Fischer, and S. Savarese. 3d semantic parsing of
large-scale indoor spaces. In Proceedings of the IEEE International Conference on Computer Vision and Pattern Recognition, 2016. 6, 7
[2] 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
[3] M. M. Bronstein and I. Kokkinos. Scale-invariant heat kernel signatures for non-rigid shape recognition. In
Computer Vision and Pattern Recognition (CVPR), 2010 IEEE Conference on, pages 1704–1711. IEEE, 2010. 2
[4] J. Bruna, W. Zaremba, A. Szlam, and Y. LeCun. Spectral networks and locally connected networks on graphs. arXiv preprint arXiv:1312.6203, 2013. 2
[5] D.-Y. Chen, X.-P. Tian, Y.-T. Shen, and M. Ouhyoung. On visual similarity based 3d model retrieval. In Computer graphics forum, volume 22, pages 223–232. Wiley Online Library, 2003. 2
[6] Y. Fang, J. Xie, G. Dai, M. Wang, F. Zhu, T. Xu, and E. Wong. 3d deep shape descriptor. In Proceedings
of the IEEE Conference on Computer Vision and Pattern Recognition, pages 2319–2328, 2015. 2
[7] M. Gschwandtner, R. Kwitt, A. Uhl, and W. Pree. BlenSor: Blender Sensor Simulation Toolbox Advances in Visual Computing. volume 6939 of Lecture Notes in Computer Science, chapter 20, pages 199–208. Springer Berlin / Heidelberg, Berlin, Heidelberg, 2011. 6
[8] K. Guo, D. Zou, and X. Chen. 3d mesh labeling via deep convolutional neural networks. ACM Transactions on Graphics (TOG), 35(1):3, 2015. 2
[9] M. Jaderberg, K. Simonyan, A. Zisserman, et al. Spatial transformer networks. In NIPS 2015. 4
[10] A. E. Johnson and M. Hebert. Using spin images for efficient object recognition in cluttered 3d scenes. IEEE Transactions on pattern analysis and machine intelligence, 21(5):433– 449, 1999. 2
[11] M. Kazhdan, T. Funkhouser, and S. Rusinkiewicz. Rotation invariant spherical harmonic representation of 3 d shape descriptors. In Symposium on geometry processing, volume 6, pages 156–164, 2003. 5
[12] Y. LeCun, L. Bottou, Y. Bengio, and P. Haffner. Gradientbased learning applied to document recognition. Proceedings of the IEEE, 86(11):2278–2324, 1998. 13
[13] Y. Li, S. Pirk, H. Su, C. R. Qi, and L. J. Guibas. Fpnn: Field probing neural networks for 3d data. arXiv preprint arXiv:1605.06240, 2016. 2
[14] H. Ling and D. W. Jacobs. Shape classification using the inner-distance. IEEE transactions on pattern analysis and machine intelligence, 29(2):286–299, 2007. 2
[15] L. v. d. Maaten and G. Hinton. Visualizing data using t-sne. Journal of Machine Learning Research, 9(Nov):2579–2605, 2008. 15
[16] J. Masci, D. Boscaini, M. Bronstein, and P. Vandergheynst. Geodesic convolutional neural networks on riemannian manifolds. In Proceedings of the IEEE International Conference on Computer Vision Workshops, pages 37–45, 2015. 2

[17] D. Maturana and S. Scherer. Voxnet: A 3d convolutional neural network for real-time object recognition. In IEEE/RSJ International Conference on Intelligent Robots and Systems, September 2015. 2, 5, 10, 11
[18] C. R. Qi, H. Su, M. Nießner, A. Dai, M. Yan, and L. Guibas. Volumetric and multi-view cnns for object classification on 3d data. In Proc. Computer Vision and Pattern Recognition (CVPR), IEEE, 2016. 2, 5, 8
[19] R. B. Rusu, N. Blodow, and M. Beetz. Fast point feature histograms (fpfh) for 3d registration. In Robotics and Automation, 2009. ICRA’09. IEEE International Conference on, pages 3212–3217. IEEE, 2009. 2
[20] R. B. Rusu, N. Blodow, Z. C. Marton, and M. Beetz. Aligning point cloud views using persistent feature histograms. In 2008 IEEE/RSJ International Conference on Intelligent Robots and Systems, pages 3384–3391. IEEE, 2008. 2
[21] M. Savva, F. Yu, H. Su, M. Aono, B. Chen, D. Cohen-Or, W. Deng, H. Su, S. Bai, X. Bai, et al. Shrec16 track largescale 3d shape retrieval from shapenet core55. 2 [22] 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. 13
[23] 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. 2, 5, 6, 8
[24] 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. 2
[25] O. Vinyals, S. Bengio, and M. Kudlur. Order matters: Sequence to sequence for sets. arXiv preprint
arXiv:1511.06391, 2015. 2, 4, 7

[26] D. Z. Wang and I. Posner. Voting for voting in online point cloud object detection. Proceedings of the Robotics: Science and Systems, Rome, Italy, 1317, 2015. 2
[27] Z. Wu, R. Shou, Y. Wang, and X. Liu. Interactive shape cosegmentation via label propagation. Computers & Graphics, 38:248–254, 2014. 6, 10
[28] Z. Wu, S. Song, A. Khosla, F. Yu, 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. 2, 5, 11
[29] 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. 6, 10, 18

补充的

概述

该文件提供了额外的定量结果,技术细节和更多的定性测试实例的主要文件。在SEC B中,我们扩展了鲁棒性测试,将PositNET- VoxNet与不完全输入进行比较。在Sec C中,我们提供了关于神经网络结构、训练参数的更多细节,在Sec D中,我们描述了场景中的检测流水线。然后,SEC说明了PooTNET的更多应用,而SEC F显示了更多的分析实验。SEC为我们的PosiNETs理论提供了一个证明。最后,我们在SEC H中显示了更多的可视化结果。

B   pointnets与VoxNet的比较

(Sec 5.2)我们扩展了Sec 5.2鲁棒性测试中的实验,以比较PointNet和VoxNet[17](体积表示的代表性体系结构)对输入点云中缺失数据的鲁棒性。两个网络在相同的列车测试分割上被训练,1024个点作为输入。对于VoxNet,我们将点云体素化为32×32×32个占用网格,通过上轴随机旋转和抖动来增加训练数据。在测试时间,输入点被随机丢弃。

按一定比例。当VoxNet对旋转敏感时,其预测使用点云的12个视点的平均得分。如图8所示,我们看到我们的PointNet对缺失点更加健壮。当输入点的一半丢失时,VoxNet的精度显著下降,从86.3%到46%,差为40.3%。

虽然我们的点网只有3.7%的性能下降。这可以通过我们的PointNet的理论分析和解释来解释——它正在学习使用一组关键点来概括形状,因此它对丢失的数据非常健壮。

C.网络架构和培训细节

(Sec 5.1)点网分类网络作为本文的基本结构,这里我们对联合对准/变换网络和训练参数提供更多的细节。第一个变换网络是以原始点云作为输入并回归到3×3矩阵的微型点网。它由每个点上的共享MLP(64,128,1024)网络(具有层输出大小64,128,1024)、跨点的最大池以及具有输出大小512,256的两个完全连接的层组成。输出矩阵被初始化为单位矩阵。除了最后一层之外,所有层包括Relu和批处理归一化。第二变换网络具有与第一个网络相同的结构,除了输出是64×64矩阵。矩阵也被初始化为一个身份。在SOFTMax分类损失中加入正则化损失(权重0.001),使矩阵接近正交。

我们使用辍学与保持比率0.7在最后一个完全连接层,其输出维度256,在类得分预测之前。批处理归一化的衰减率从0.5开始,并逐渐增加到0.99。我们使用亚当优化器初始学习率0.001,动量0.9和批量大小32。每20个周期将学习率除以2。MyNET3的培训需要3-6小时来与TensorFlow和GTX1080 GPU汇合.

pointNet:用于三维分类和分割的点集深度学习

点网分割网络  分割网络是对分类点网的扩展。局部点特征(第二转换网络之后的输出)和全局特征(最大池的输出)针对每个点进行连接。分段网络不采用辍学。训练参数与分类网络相同。

对于形状零件分割的任务,我们对基本的分割网络体系结构(本文中图2所示)做了一些修改,以便获得最佳性能,如图9所示。我们添加了一个表示输入类的热向量,并将其与最大池层的输出连接起来。我们还增加了一些层中的神经元,并添加跳跃链接来收集不同层中的局部点特征,并将它们连接起来形成到分割网络的点特征输入。虽然[27]和[29]独立地处理每个对象类别,但是由于缺少某些类别的训练数据(数据集中所有类别的形状总数显示在第一行中),所以我们跨类别训练PointNet(但是使用一个热向量输入来指示类别)。为了允许公平的比较,当测试这两个模型时,我们只预测给定的特定对象类别的部分标签。在语义分割任务中,我们使用了如图2所示的体系结构。

在ShapeNet部件数据集上训练模型大约需要6到12个小时,在斯坦福语义分析数据集上训练大约需要半天。

在ShapeNet零件分割实验中,我们将我们提出的分割版本PointNet与两种传统方法以及3D体积CNN网络基线进行了比较。在图10中,我们展示了我们使用的基线3D体积美国有线电视新闻网网络。我们将著名的3DCNN体系结构,如VoxNet[17]和3DShapeNets[28]推广到完全卷积的3DCNN分割网络。

对于给定的点云,我们首先将其转换为体积表示,作为分辨率为32×32×32的占用网格。然后,依次应用五个具有32个输出通道和1个步幅的3D卷积运算来提取特征。每个体素的感受野为19。最后,在计算的特征图中加入核大小为1×1×1的三维卷积层序列来预测每个体素的分割标记。Relu和批量归一化被用于除最后一层之外的所有层。网络是跨类别训练的,然而,为了与给定对象类别的其他基线方法进行比较,我们只考虑给定对象类别中的输出分数。

pointNet:用于三维分类和分割的点集深度学习

D  检测管道的细节(sec5.1)

基于语义分割结果和我们的对象分类点网,构建了一个简单的三维物体检测系统。

我们使用连接组件与分割得分,以获得在场景中的对象建议。从场景中的随机点出发,找到其预测标签,使用BFS搜索具有相同标签的附近点,搜索半径为0.2米。如果得到的集群有200多个点(假设在1m乘以1m的面积中有4096个点样本),则该集群的边界框被标记为一个对象建议。对于每个提出的对象,它的检测得分被计算为该类别的平均点得分。在评估之前,削减非常小的面积/体积的建议。对于桌子,椅子和沙发,包围盒延伸到地板,以防止腿与座椅/表面分开。

我们观察到,在像礼堂这样的一些房间中,许多物体(如椅子)彼此靠近,其中连接的组件将无法正确地分割出单个组件。因此,我们利用我们的分类网络,并使用滑动形状的方法,以减轻椅子类的问题。我们为每个类别训练二元分类网络,并使用分类器进行滑动窗口检测。所得到的框通过非最大抑制来修剪。将所提出的从连接构件和滑动形状的盒子组合起来进行最终评估。

在图11中,我们展示了目标检测的精确回忆曲线。我们训练了六个模型,其中每一个模型都在五个区域进行训练,并在左侧区域进行测试。在测试阶段,每个模型在从未见过的区域上进行测试。对于PR曲线的生成,对所有六个区域的测试结果进行汇总。

E.更多应用程序(SEC 5.1)

从点云模型中,我们的PootNETs为每个给定的输入点云学习全局形状签名。我们期望几何相似的形状具有相似的全局特征。在这一节中,我们测试我们关于形状检索应用的猜想。更具体地说,对于来自ModelNet测试分割的每个给定查询形状,我们计算分类PointNet给出的它的全局签名(得分预测层之前的层的输出),并通过最近邻搜索来检索分割后的列中的相似形状。结果如图12所示。

pointNet:用于三维分类和分割的点集深度学习

形状对应 在本节中,我们表明点特征学习PooTnNET可以潜在地用于计算形状对应。给定两种形状,我们通过匹配**全局特征中相同维度的点对来计算它们的临界点集CS之间的对应关系。图13和图14显示了两个相似的椅子和桌子之间的形状对应关系。

F 更多架构分析(SEC 5.2)

瓶颈尺寸和输入点数的影响这里我们展示我们的模型的性能改变关于第一最大层输出的大小以及输入点数。在图15中,我们看到性能随着点的增加而增长,但是它在大约1K点饱和。最大层尺寸起着重要的作用,将层尺寸从64增加到1024,得到2×4%的性能增益。这表明,我们需要足够的点特征函数来覆盖3D空间,以区分不同的形状。

值得注意的是,即使以64点作为输入(从网格上的最远点采样获得),我们的网络也能达到良好的性能。

在本节中,我们展示了通过点网学习的点特征可以潜在地用于计算形状对应。给定两种形状,我们通过匹配**全局特征中相同维度的点对来计算它们的临界点集CS之间的对应关系。图13和图14显示了两个相似的椅子和桌子之间的形状对应关系。

E 更多架构分析(SEC 5.2)

瓶颈尺寸和输入点数的影响  这里我们展示我们的模型的性能改变关于第一最大层输出的大小以及输入点数。在图15中,我们看到性能随着点的增加而增长,但是它在大约1K点饱和。最大层尺寸起着重要的作用,将层尺寸从64增加到1024,得到2×4%的性能增益。这表明,我们需要足够的点特征函数来覆盖3D空间,以区分不同的形状。

值得注意的是,即使以64点作为输入(从网格上的最远点采样获得),我们的网络也能达到良好的性能。

pointNet:用于三维分类和分割的点集深度学习

pointNet:用于三维分类和分割的点集深度学习

MNIST数字分类当我们专注于3D点云学习时,一个健全的检查实验是将我们的网络应用于2D点云-像素集。为了将MNIST图像转换为2D点集,我们对像素值进行阈值设置,并将值大于128的像素(表示为图像中具有(x,y)坐标的点)添加到该集合。我们使用256的集合大小。如果该集合中有超过256个像素,则对它进行随机子采样;如果较少,则用集合中的一个像素填充该集合(由于我们的最大操作,用于填充的点不会影响结果)。

如表7所示,我们与一些基线进行比较,包括将输入图像视为有序向量的多层感知器、将输入视为从像素(0,0)到像素(27,27)的序列的RNN、以及香草版本的CN。虽然MNIST上性能最好的模型仍然是经过良好设计的CNN(达到小于0.3%的错误率),但令人感兴趣的是,我们的PointNet模型可以通过将图像视为2D点集来获得合理的性能。

pointNet:用于三维分类和分割的点集深度学习

在PointNet的分割版本中,局部点特征和全局特征被连接起来以便为局部点提供上下文。然而,目前还不清楚上下文是否通过这种连接来学习。在本实验中,我们通过显示我们的分割网络可以被训练来预测点法线,一个由点的邻域决定的局部几何特性,来验证我们的设计。

我们训练我们的分段点网的修改版本,以有监督的方式回归到地面真理点法线。我们只是改变我们的分割点网络的最后一层来预测每个点的法向量。我们使用余弦距离的绝对值作为损耗。图16将我们的PointNet正常预测结果(左列)与从网格(右列)计算的基本真值法线进行比较。我们观察到合理的正常重建。我们的预测比在某些区域包括翻转法线方向的地面真理更平滑和连续。

正如Sec 5.2和Sec B中所讨论的,我们的PointNet对分类任务的数据损坏和缺失点不太敏感,因为全局形状特征是从给定输入点云的关键点集合中提取的。在本节中,我们证明了鲁棒性也适用于分割任务。基于点特征和学习全局形状特征的组合来预测每个点标记。在图17中,我们说明了给定输入点云S(最左边的列)、临界点集CS(中间列)和上界形状NS的分割结果。图18中,我们可视化了ModelNet或ShapeNet中不存在的、来自看不见的类别(面部、房子、兔子、茶壶)的新形状的临界点集和上行形状。结果表明,所学习的每个点函数是可推广的。然而,由于我们主要是在人造物体上进行大量的平面结构训练,所以在新的类别中重建的上界形状也包含更多的平面表面。

pointNet:用于三维分类和分割的点集深度学习

定理证明(秒4.3)

pointNet:用于三维分类和分割的点集深度学习

通过构造对称函数和连续函数,证明了F可以任意逼近。

pointNet:用于三维分类和分割的点集深度学习

 

 

pointNet:用于三维分类和分割的点集深度学习

pointNet:用于三维分类和分割的点集深度学习

pointNet:用于三维分类和分割的点集深度学习

pointNet:用于三维分类和分割的点集深度学习

pointNet:用于三维分类和分割的点集深度学习

 

pointNet:用于三维分类和分割的点集深度学习

H 更多的可视化

分类可视化我们使用t-SNE[15]将点云全局签名(1024-dim)从我们的分类点网嵌入到二维空间中。图20显示了MealNET40测试分割形状的嵌入空间。相似的形状根据它们的语义类别聚集在一起。

分割可视化,我们提出了更多的分割结果上的两个完整的CAD模型和模拟Kinect部分扫描。我们还可视化故障案例与错误分析。图21和图22显示了在完整的CAD模型和模拟的Kinect扫描上产生的更多的分割结果。图23说明了一些失败案例。请阅读错误分析的说明。

场景语义分析可视化我们在图24中给出了语义分析的可视化,其中显示了两个办公室和一个会议室的输入点云、预测和地面真实性,用于语义分割和对象检测。区域和房间在训练集中是看不见的。

点函数可视化我们的分类点网为每个点计算K(在这个可视化中我们取K=1024)维点特征,并通过最大汇聚层将所有每个点的局部特征聚合为单个K-dim向量,从而形成全局形状描述符。

为了更深入地了解所学习的每点函数h的检测结果,我们将图19中给出高每点函数值f(pi)的点pi可视化。这种可视化清楚地表明,不同的点函数学习检测散布在整个空间中的各种形状的不同区域中的点。