中文标题:PointNet:用于 3D 分类和分割的点集深度学习
作者:Charles R. Qi
期刊:CVPR
年份:2017
引用数:5216
摘要
点云是一种重要的几何数据结构。由于格式不规则,大多数研究人员将此类数据转换为规则的 3D 体素网格或图像集合。然而,这会使数据不必要地庞大并导致问题。在本文中,我们设计了一种直接消耗点云的新型神经网络,它很好地尊重了输入中点的排列不变性。我们的网络名为 PointNet,为从对象分类、部分分割到场景语义解析的应用程序提供了统一的架构。虽然简单,但 PointNet 非常高效和有效。从经验上看,它表现出与最先进的技术水平相当甚至更好的强大性能。从理论上讲,我们提供了分析,以了解网络学到了什么以及为什么网络在输入扰动和损坏方面是稳健的。
Figure 1.PointNet的应用程序。我们提出了一种新的深网架构,该架构使用原始点云(点集),无需体素化或渲染。它是一个学习全局和局部点特征的统一体系结构,为许多3D识别任务提供了一种简单、高效和有效的方法。
1 介绍
在本文中,我们探索了能够推理 3D 几何数据(如点云或网格)的深度学习架构。典型的卷积架构需要高度规则的输入数据格式,如图像网格或 3D 体素的格式,以执行权重共享和其他内核优化。由于点云或网格不是常规格式,因此大多数研究人员通常将此类数据转换为常规 3D 体素网格或图像集合(例如,视图),然后再将它们提供给深度网络架构。然而,这种数据表示转换使生成的数据变得不必要地庞大——同时也引入了可能掩盖数据自然不变性的量化伪影。
出于这个原因,我们使用简单的点云专注于 3D 几何的不同输入表示 - 并将我们的结果命名为深度网络 PointNets。点云是简单统一的结构,避免了网格的组合不规则性和复杂性,因此更容易学习。然而,PointNet 仍然必须尊重这样一个事实,即点云只是一组点,因此对其成员的排列是不变的,因此需要在网络计算中进行某些对称化。还需要考虑刚性运动的进一步不变性。
我们的 PointNet 是一个统一的架构,它直接将点云作为输入并输出整个输入的类标签或输入的每个点的每个点段/部分标签。我们网络的基本架构出奇地简单,因为在初始阶段,每个点都以相同且独立的方式进行处理。在基本设置中,每个点仅由其三个坐标(x、y、z)表示。可以通过计算法线和其他局部或全局特征来添加额外的维度。
我们方法的关键是使用单个对称函数,即最大池化。网络有效地学习了一组优化函数/标准,用于选择点云的有趣或信息丰富的点,并对它们的选择原因进行编码。网络的最终全连接层将这些学习到的最优值聚合到整个形状的全局描述符中(形状分类),或者用于预测每个点的标签(形状分割)。
我们的输入格式很容易应用刚性或仿射变换,因为每个点独立变换。因此,我们可以添加一个依赖于数据的空间变换器网络,它尝试在 PointNet 处理数据之前规范化数据,以进一步改进结果。
我们对我们的方法进行了理论分析和实验评估。我们表明我们的网络可以逼近任何连续的集合函数。更有趣的是,事实证明,我们的网络学习通过一组稀疏的关键点来总结输入点云,根据可视化,这些关键点大致对应于对象的骨架。理论分析提供了一种理解,为什么我们的 PointNet 对输入点的小扰动以及通过点插入(异常值)或删除(丢失数据)造成的损坏具有高度鲁棒性。
在从形状分类、零件分割到场景分割的许多基准数据集上,我们通过实验将我们的 PointNet 与基于多视图和体积表示的最先进方法进行了比较。在统一架构下,我们的 PointNet 不仅速度快得多,而且表现出与最先进技术相当甚至更好的强大性能。
我们工作的主要贡献如下:
- 我们设计了一种新颖的深度网络架构,适合在 3D 中使用无序点集;
- 我们展示了如何训练这样的网络来执行 3D 形状分类、形状部分分割和场景语义解析任务;
- 我们对我们方法的稳定性和效率进行了彻底的实证和理论分析;
- 我们说明了网络中选定神经元计算的 3D 特征,并对其性能进行了直观的解释。
神经网络处理无序集的问题是一个非常普遍和基本的问题——我们希望我们的想法也可以转移到其他领域。
2 相关工作
点云特征点云的大多数现有特征都是针对特定任务手工制作的。点特征通常对点的某些统计特性进行编码,并被设计为对某些变换保持不变,这些变换通常分为内在 [2,21,3] 或外在 [18,17,13,10,5]。它们也可以分为局部特征和全局特征。对于特定任务,找到最佳特征组合并非易事。
点云特征:点云的大多数现有特征都是针对特定任务手工制作的。点特征通常对点的某些统计特性进行编码,并被设计为对某些变换保持不变,这些变换通常分为内在 [2,21,3] 或外在 [18,17,13,10,5]。它们也可以分为局部特征和全局特征。对于特定任务,找到最佳特征组合并非易事。
3D 数据深度学习:3D 数据有多种流行的表示形式,导致了各种学习方法。体积(Volumetric) CNN:[25,15,16] 是在体素化形状上应用 3D 卷积神经网络的先驱。然而,由于 3D 卷积的数据稀疏性和计算成本,体积表示受到其分辨率的限制。 FPNN [12] 和 Vote3D [23] 提出了特殊的方法来处理稀疏问题;然而,他们的操作仍然是在稀疏的体积上,处理非常大的点云对他们来说是一个挑战。 多视图(Multiview) CNNs:[20,16] 已经尝试将 3D 点云或形状渲染成 2D 图像,然后应用 2D conv nets 对它们进行分类.借助精心设计的图像 CNN,这一系列方法在形状分类和检索任务中取得了主导性能 [19]。然而,将它们扩展到场景理解或其他 3D 任务(例如点分类和形状完成)并非易事。光谱(Spectral) CNNs:一些最新的作品[4,14] 在网格上使用光谱CNNs。然而,这些方法目前仅限于流形网格,如有机物体,如何将它们扩展到非等距形状,如家具。 基于特征(Feature-based) DNN:[6,8] 首先将 3D 数据转换为向量,通过提取传统的形状特征,然后使用全连接网络对形状进行分类。我们认为它们受到提取特征的表示能力的限制。
无序集的深度学习:从数据结构的角度来看,点云是一组无序的向量。虽然深度学习中的大多数工作都集中在常规输入表示上,如序列(在语音和语言处理中)、图像和体积(视频或 3D 数据),但在点集的深度学习方面并没有做太多工作。
Oriol Vinyals 等人 [22] 最近的一项工作研究了这个问题。他们使用具有注意力机制的读-处理-写网络来消耗无序输入集,并表明他们的网络具有对数字进行排序的能力。然而,由于他们的工作侧重于通用集合和 NLP 应用,因此在集合中缺乏几何的作用。
3 问题陈述
我们设计了一个直接使用无序点集作为输入的深度学习框架。点云表示为一组 3D 点
P
i
∣
i
=
1
,
.
.
.
,
n
{P_i|i= 1, ..., n}
Pi?∣i=1,...,n,其中每个点
P
i
P_i
Pi? 是其
(
x
,
y
,
z
)
(x, y, z)
(x,y,z) 坐标的向量加上额外的特征通道,例如颜色, normal 等。为了简单和清晰,除非另有说明,我们只使用
(
x
,
y
,
z
)
(x, y, z)
(x,y,z) 坐标作为我们点的通道。
对于对象分类任务,输入点云要么直接从形状中采样,要么从场景点云中预先分割。我们提出的深度网络为所有
k
k
k 个候选类别输出
k
k
k 个分数。对于语义分割,输入可以是用于部分区域分割的单个对象,也可以是来自用于对象区域分割的 3D 场景的子体积。我们的模型将为
n
n
n 个点中的每一个和
m
m
m 个语义子类别中的每一个输出
n
×
m
n×m
n×m 分数。
4 点集上的深度学习
我们网络(Sec4.2)的架构受到
R
n
\R^n
Rn(Sec4.1)中点集属性的启发。
4.1
R
n
\R^n
Rn中点集的性质
我们的输入是来自欧几里得空间的点的子集。它具有三个主要属性:
- 无序。与图像中的像素阵列或体积网格中的体素阵列不同,点云是一组没有特定顺序的点。换句话说,一个消耗 N 个 3D 点集的网络需要对 N 保持不变!按数据馈送顺序排列的输入集。
- 点之间的相互作用。这些点来自具有距离度量的空间。这意味着点不是孤立的,相邻的点形成一个有意义的子集。因此,模型需要能够从附近的点捕获局部结构,以及局部结构之间的组合相互作用。
- 变换下的不变性。作为几何对象,点集的学习表示应该对某些变换保持不变。例如,一起旋转和平移点不应修改全局点云类别或点的分割。
4.2 PointNet架构
Figure 2.PointNet 架构。分类网络以 n 个点作为输入,应用输入和特征变换,然后通过最大池化聚合点特征。输出是 k 个类别的分类分数。分割网络是分类网络的扩展。它连接全局和局部特征并输出每点分数。 “mlp”代表多层感知器,括号中的数字是层大小。 Batchnorm 用于所有带有 ReLU 的层。 Dropout 层用于分类网络中的最后一个 mlp。
我们的完整网络架构如图 2 所示,其中分类网络和分割网络共享大部分结构。请阅读图2的标题以了解流程。
我们的网络具有三个关键模块:作为对称函数聚合所有点信息的最大池化层,局部和全局信息组合结构,以及两个联合对齐网络,对齐输入点和点特征。
我们将在下面的单独段落中讨论这些设计选择背后的原因。
无序输入的对称函数:为了使模型对输入排列不变,存在三种策略:1)将输入排序为规范顺序; 2) 将输入视为一个序列来训练 RNN,但通过各种排列来扩充训练数据; 3)使用一个简单的对称函数来聚合来自每个点的信息。这里,一个对称函数将 n 个向量作为输入,并输出一个对输入顺序不变的新向量。例如,+ 和 ? 运算符是对称二元函数。
虽然排序听起来像一个简单的解决方案,但在高维空间中实际上不存在稳定的排序。一般意义上的点扰动。这可以很容易地通过矛盾来证明。如果存在这样的排序策略,则它定义了高维空间和 1 维实线之间的双射映射。不难看出,要求一个排序在点扰动时保持稳定等同于要求该地图在维数减少时保持空间接近度,这是一般情况下无法完成的任务。因此,排序并不能完全解决排序问题,并且随着排序问题的持续存在,网络很难学习从输入到输出的一致映射。如实验所示(图 5),我们发现直接在排序点集上应用 MLP 效果不佳,尽管比直接处理未排序输入略好。
使用 RNN 的想法将点集视为一个序列信号,并希望通过使用随机排列的序列训练 RNN,RNN 将变得对输入顺序不变。然而,在“OrderMatters”[22] 中,作者表明顺序确实很重要,不能完全省略。虽然 RNN 对小长度(几十个)序列的输入排序具有相对较好的鲁棒性,但很难扩展到数千个输入元素,这是点集的常见大小。根据经验,我们还表明基于 RNN 的模型的性能不如我们提出的方法(图 5)。
我们的想法是通过对集合中的变换元素应用对称函数来近似定义在点集上的一般函数:
f
(
{
x
1
,
…
,
x
n
}
)
≈
g
(
h
(
x
1
)
,
…
,
h
(
x
n
)
)
,
(1)
f(\{ x_1,\dots,x_n \}) \approx g(h(x_1), \dots ,h(x_n)), \tag{1}
f({x1?,…,xn?})≈g(h(x1?),…,h(xn?)),(1) 其中
f
:
2
R
N
→
R
,
h
:
R
N
→
R
K
,
g
:
R
K
×
?
×
R
K
f : 2^{\R^N} \rightarrow \R , h : \R^N \rightarrow \R^K , g : R^K \times \cdots \times \R^K
f:2RN→R,h:RN→RK,g:RK×?×RK 是对称函数。
从经验上讲,我们的基本模块非常简单:我们通过多层感知器网络近似
h
h
h,通过单个变量函数和最大池化函数的组合来近似
g
g
g。通过
h
h
h 的集合,我们可以学习多个
f
f
f 来捕获集合的不同属性。
虽然我们的关键模块看起来很简单,但它具有有趣的特性(参见 Sec5.3)并且可以在一些不同的应用程序中实现强大的性能(参见 Sec5.1)。由于我们模块的简单性,我们还能够提供 Sec4.3 中的理论分析。
局部和全局信息聚合:上述部分的输出形成了一个向量
[
f
1
,
.
.
.
,
f
K
]
[f_1, . . . , f_K]
[f1?,...,fK?],这是输入集的全局签名。我们可以轻松地在形状全局特征上训练 SVM 或多层感知器分类器进行分类。然而,点分割需要结合局部和全局知识。我们可以通过一种简单而高效的方式来实现这一点。
我们的解决方案可以在图 2(分割网络)中看到。在计算全局点云特征向量后,我们通过将全局特征与每个点特征连接起来将其反馈给每个点特征。然后我们基于组合点特征提取新的每点特征——这次每点特征知道局部和全局信息。
通过这种修改,我们的网络能够预测依赖于局部几何和全局语义的每点数量。例如,我们可以准确预测每个点的法线(补充中的图),验证网络能够从点的局部邻域汇总信息。在实验会话中,我们还表明我们的模型可以在形状部分分割和场景分割方面实现最先进的性能。
联合对齐网络:如果点云经历了某些几何变换,例如刚性变换,则点云的语义标记必须是不变的。因此,我们期望我们的点集学习到的表示对这些变换是不变的。
一个自然的解决方案是在特征提取之前将所有输入集对齐到规范空间。贾德伯格等人。 [9] 介绍了空间变换器的思想,通过采样和插值来对齐 2D 图像,这是通过在 GPU 上实现的专门定制的层实现的。
与[9]相比,我们的点云输入形式使我们能够以更简单的方式实现这一目标。我们不需要发明任何新层,也没有像在图像案例中那样引入别名。我们通过迷你网络(图 2 中的 T-net)预测仿射变换矩阵,并将此变换直接应用于输入点的坐标。迷你网络本身类似于大网络,由点独立特征提取、最大池化和全连接层的基本模块组成。关于 T-net 的更多细节在补充中。
这个想法也可以进一步扩展到特征空间的对齐。我们可以在点特征上插入另一个对齐网络,并预测一个特征变换矩阵来对齐来自不同输入点云的特征。但是特征空间中的变换矩阵比空间变换矩阵的维数高很多,大大增加了优化的难度。因此,我们为 softmax 训练损失添加了一个正则化项。我们将特征变换矩阵约束为接近正交矩阵:
L
r
e
g
=
∥
I
?
A
A
T
∥
F
2
(2)
L_{reg} = \Vert I-AA^T \Vert _F^2 \tag{2}
Lreg?=∥I?AAT∥F2?(2)
其中
A
A
A 是由迷你网络预测的特征对齐矩阵。正交变换不会丢失输入中的信息,因此是需要的。我们发现通过添加正则化项,优化变得更加稳定,我们的模型获得了更好的性能。
4.3 理论分析
通用近似:我们首先展示了我们的神经网络对连续集函数的通用逼近能力。通过集合函数的连续性,直观地,对输入点集的微小扰动不应极大地改变函数值,例如分类或分割分数。
形式上,令
X
=
S
:
S
?
[
0
,
1
]
m
a
n
d
∣
S
∣
=
n
,
f
:
X
→
R
X={S:S?[0,1]mand|S|=n},f: X → \R
X=S:S?[0,1]mand∣S∣=n,f:X→R 是 X 上的连续集函数,与 Hausdorff 距离
d
H
(
?
,
?
)
d_H(·,·)
dH?(?,?),即,
?
?
>
0
,
?
δ
>
0
?_\epsilon > 0,? \delta >0
???>0,?δ>0,对于任意
S
,
S
′
∈
X
S,S^′∈X
S,S′∈X,若
d
H
(
S
,
S
′
)
<
δ
d_H(S,S^′)<\delta
dH?(S,S′)<δ,则
∣
f
(
S
)
?
f
(
S
′
)
∣
<
?
|f(S)?f(S^′)|<\epsilon
∣f(S)?f(S′)∣<?。我们的定理表明,如果在最大池化层有足够多的神经元,我们的网络可以任意逼近
f
f
f,即,
K
K
K 在等式(1) 足够大。
定理 1:假设
f
:
X
→
R
f:X →\R
f:X→R 是一个连续集函数, Hausdorff 距离
d
H
(
?
,
?
)
d_H(·,·)
dH?(?,?).
?
?
>
0
,
?
a
?_\epsilon > 0,? a
???>0,?a一个连续函数 h 和一个对称函数
g
(
x
1
,
.
.
,
x
n
)
=
γ
?
M
A
X
g(x_1, . . , x_n) = \gamma?MAX
g(x1?,..,xn?)=γ?MAX,使得对于任意
S
∈
X
S∈X
S∈X,
∣
f
(
S
)
?
γ
(
M
A
X
x
i
∈
S
{
h
(
x
i
)
}
)
∣
<
?
\vert f(S)-\gamma(MAX_{x_i \in S}\{h(x_i)\}) \vert < \epsilon
∣f(S)?γ(MAXxi?∈S?{h(xi?)})∣<?
其中
x
1
,
.
.
.
,
x
n
x_1, . . . , x_n
x1?,...,xn? 是
S
S
S 中任意排序的元素的完整列表,
γ
\gamma
γ 是一个连续函数,
M
A
X
MAX
MAX 是一个向量最大值运算符,它以 n 个向量作为输入并返回一个新的元素级最大值的向量。
这个定理的证明可以在我们的补充材料中找到。关键思想是,在最坏的情况下,网络可以通过将空间划分为大小相等的体素来学习将点云转换为体积表示。然而,在实践中,网络学习了一种更聪明的策略来探测空间,正如我们将在点函数可视化中看到的那样。
瓶颈尺寸和稳定性:从理论上和实验上,我们发现我们网络的表达能力受到最大池化层维度的强烈影响,即 (1) 中的
K
K
K。在这里,我们提供了一个分析,它也揭示了与我们的模型稳定性相关的属性。
我们将
u
=
M
A
X
x
i
∈
S
{
h
(
x
i
)
}
u=MAX_{xi∈S}\{h(xi)\}
u=MAXxi∈S?{h(xi)} 定义为将
[
0
,
1
]
m
[0,1]^m
[0,1]m 中的点集映射到
K
K
K 维向量的子网络。以下定理告诉我们输入集中的小损坏或额外噪声点不太可能改变我们网络的输出:
定理 2 假设
u
u
u :
X
→
R
K
X →R^K
X→RK 使得
u
=
M
A
X
x
i
∈
S
{
h
(
x
i
)
}
u= MAX_{xi∈S}\{h(xi)\}
u=MAXxi∈S?{h(xi)} 和
f
=
γ
?
u
f=γ?u
f=γ?u。然后,
(
a
)
?
S
,
?
C
S
,
N
S
?
X
,
f
(
T
)
=
f
(
S
)
i
f
C
S
?
T
?
N
S
;
(
b
)
∣
C
S
∣
≤
K
(a)\forall S, \exists C_S,N_S \subseteq X,f(T)=f(S)ifC_S \subseteq T \subseteq N_S; \\ (b)|C_S| \leq K
(a)?S,?CS?,NS??X,f(T)=f(S)ifCS??T?NS?;(b)∣CS?∣≤K 我们解释了定理的含义。 (a) 表示如果
C
S
C_S
CS? 中的所有点都被保留,则
f
(
S
)
f(S)
f(S) 在输入损坏之前保持不变;它也保持不变,额外的噪声点高达
N
S
N_S
NS?。 (b) 表示
C
S
C_S
CS? 只包含有限数量的点,由 Kin (1) 确定。换句话说,
f
(
S
f(S
f(S)实际上完全由小于或等于K个元素的有限子集
C
S
?
S
C_S?S
CS??S 决定。因此,我们称
C
S
C_S
CS? 为临界点集和
K
K
K 的瓶颈维数。
结合 h 的连续性,这解释了我们模型关于点扰动、损坏和额外噪声点的鲁棒性。稳健性类似于机器学习模型中的稀疏性原理。直观地说,我们的网络学习通过一组稀疏的关键点来总结形状。在实验部分,我们看到关键点形成了对象的骨架。
5 实验
实验分为四个部分。首先,我们展示了 PointNets 可以应用于多个 3D 识别任务(Sec5.1)。其次,我们提供了详细的实验来验证我们的网络设计(Sec5.2)。最后,我们将网络学习的内容可视化(Sec5.3)并分析时间和空间复杂度(Sec5.4)。
5.1.应用
在本节中,我们将展示如何训练我们的网络来执行 3D 对象分类、对象部分分割和
语
义
场
景
分
割
1
语义场景分割^1
语义场景分割1。即使我们正在研究一种全新的数据表示(点集),我们也能够在多个任务的基准测试中获得可比甚至更好的性能。
3D 对象分类:我们的网络学习可用于对象分类的全局点云特征。我们在 ModelNet40 [25] 形状分类基准上评估我们的模型。共有来自 40 个人造物体类别的 12,311 个 CAD 模型,分为 9,843 个用于训练和 2,468 个用于测试。虽然以前的方法侧重于体积和多视图图像表示,但我们是第一个直接处理原始点云的方法。
1补充材料中包含更多应用示例,例如基于通信和点云的 CAD 模型检索
我们根据人脸面积在网格面上均匀采样 1024 个点,并将它们归一化为一个单位球体。在训练期间,我们通过沿上轴随机旋转对象并通过具有零均值和 0.02 标准偏差的高斯噪声抖动每个点的位置来动态地增强点云。 Table 1 ModelNet40 上的分类结果。我们的网络在 3D 输入的深度网络中达到了最先进的水平。
在表 1 中,我们将我们的模型与以前的工作以及使用 MLP 对从点云中提取的传统特征(点密度、D2、形状轮廓等)的基线进行比较。我们的模型在基于 3D 输入(体积和点云)的方法中实现了最先进的性能。只有完全连接的层和最大池化,我们的网络在推理速度上获得了强大的领先优势,并且也可以很容易地在 CPU 中并行化。我们的方法与基于多视图的方法(MVCNN [20])之间仍然存在小的差距,我们认为这是由于丢失了渲染图像可以捕获的精细几何细节。
3D 对象零件分割:零件分割是一项具有挑战性的细粒度 3D 识别任务。给定 3D 扫描或网格模型,任务是为每个点或面分配零件类别标签(例如椅子腿、杯柄)。
我们对来自 [26] 的 ShapeNet 零件数据集进行评估,该数据集包含来自 16 个类别的 16,881 个形状,总共标注了 50 个零件。大多数对象类别都标有两到五个部分。地面实况注释标记在形状上的采样点上。
我们将零件分割制定为每点分类问题。评估指标是点上的 mIoU。对于类别 C 的每个形状 S,计算形状的 mIoU:对于类别 C 中的每个零件类型,计算真实和预测之间的 IoU。如果 groundtruth 和预测点的并集为空,则将部分 IoU 计为 1。然后我们对类别 C 中所有部分类型的 IoU 进行平均以获得该形状的 mIoU。为了计算类别的 mIoU,我们取该类别中所有形状的 mIoU 的平均值。
在本节中,我们将我们的分割版本 PointNet(图 2 的修改版本,分割网络)与两种传统方法 [24] 和 [26] 进行比较,这两种方法都利用了逐点几何特征和形状之间的对应关系,以及我们的自己的 3D CNN 基线。有关 3D CNN 的详细修改和网络架构,请参阅补充说明。
Table 2.ShapeNet 部分数据集上的分割结果。度量是点上的 mIoU(%)。我们与两种传统方法 [24] 和 [26] 以及我们提出的 3D 全卷积网络基线进行比较。我们的 PointNet 方法在 mIoU 中达到了最先进的水平。
在表 2 中,我们报告了每个类别和平均 IoU(%) 分数。我们观察到平均 IoU 提高了 2.3%,并且我们的网络在大多数类别中都优于基线方法。
Figure 3.零件分割的定性结果。我们可视化了所有16个对象类别的CAD零件分割结果。我们展示了部分模拟Kinect扫描(左块)和完整ShapeNet CAD模型(右块)的结果。
我们还对模拟 Kinect 扫描进行了实验,以测试这些方法的稳健性。对于 ShapeNet 零件数据集中的每个 CAD 模型,我们使用 Blensor Kinect Simulator [7] 从六个随机视点生成不完整的点云。我们使用相同的网络架构和训练设置在完整的形状和部分扫描上训练我们的 PointNet。结果表明,我们仅损失了 5.3% 的平均 IoU。在图 3 中,我们展示了完整和部分数据的定性结果。可以看出,虽然部分数据相当具有挑战性,但我们的预测是合理的。
场景中的语义分割:我们的部分分割网络可以轻松扩展到语义场景分割,其中点标签成为语义对象类而不是对象部分标签。
我们在斯坦福 3D 语义解析数据集 [1] 上进行了实验。该数据集包含来自 Matterport 扫描仪的 6 个区域(包括 271 个房间)的 3D 扫描结果。扫描中的每个点都用来自 13 个类别(椅子、桌子、地板、墙壁等以及杂物)的语义标签之一进行注释。
为了准备训练数据,我们首先按房间分割点,然后将房间采样成面积为 1m x 1m 的块。我们训练 PointNet 的分割版本来预测每个块中的每个点类。每个点由 XYZ、RGB 和归一化位置(从 0 到 1)的 9 维向量表示。在训练时,我们在每个块中随机采样 4096 个点。在测试时,我们对所有点进行测试。我们遵循与 [1] 相同的协议,使用 k-fold 策略进行训练和测试。
Table 3. 场景中语义分割的结果。度量是 13 个类别(结构和家具元素加上杂波)的平均 IoU 和基于点计算的分类精度
Figure 4.语义分割的定性结果。顶行是带颜色的输入点云。底行是在与输入相同的相机视点中显示的输出语义分割结果(在点上)
我们使用手工制作的点特征将我们的方法与基线进行比较。基线提取相同的 9 维局部特征和三个附加特征:局部点密度、局部曲率和法线。我们使用标准 MLP 作为分类器。结果如表 3 所示,其中我们的 PointNet 方法明显优于基线方法。在图 4 中,我们展示了定性分割结果。我们的网络能够输出平滑的预测,并且对缺失点和遮挡具有鲁棒性。
Table 4. 场景中 3D 对象检测的结果。度量是平均精度,阈值 IoU 0.5 在 3D 体积中计算
基于我们网络的语义分割输出,我们进一步构建了一个使用连接组件进行对象提议的 3D 对象检测系统(详见补充部分)。我们与表 4 中先前最先进的方法进行了比较。前一种方法基于滑动形状方法(带有 CRF 后处理),其中 SVM 对体素网格中的局部几何特征和全局房间上下文特征进行了训练。我们的方法在报告的家具类别上大大优于它。
5.2.架构设计分析
在本节中,我们通过对照实验验证我们的设计选择。我们还展示了我们网络超参数的影响。
与替代顺序不变方法的比较:正如第 4.2 节中提到的,至少有三个选项可以使用无序集合输入。我们使用 ModelNet40 形状分类问题作为测试平台来比较这些选项,以下两个控制实验也将使用此任务。 Figure 5. 实现顺序不变性的三种方法。应用于点的多层感知器 (MLP) 由 5 个隐藏层组成,神经元大小为 64,64,64,128,1024,所有点共享一个 MLP 副本。靠近输出的 MLP 由大小为 512,256 的两层组成。
我们比较的基线(如图 5 所示)包括未排序和排序点上的多层感知器作为 n×3 数组、将输入点视为序列的 RNN 模型以及基于对称函数的模型。我们实验的对称操作包括最大池化、平均池化和基于注意力的加权和。注意方法类似于 [22] 中的方法,其中从每个点特征预测一个标量分数,然后通过计算 softmax 跨点对分数进行归一化。然后根据归一化分数和点特征计算加权和。如图 5 所示,maxpooling 操作以较大的获胜幅度实现了最佳性能,这验证了我们的选择。
Table 5. 输入特征变换的影响。度量是 ModelNet40 测试集上的整体分类准确率
输入和特征转换的有效性:在表 5 中,我们展示了我们的输入和特征转换(用于对齐)的积极影响。有趣的是,最基本的架构已经取得了相当合理的结果。使用输入转换可提高 0.8% 的性能。正则化损失是高维变换工作所必需的。通过结合转换和正则化项,我们实现了最佳性能。
Figure 6.PointNet 稳健性测试。指标是 ModelNet40 测试集上的整体分类准确率。左:删除点。最远是指用最远采样对原来的 1024 个点进行采样。中:插入。异常值均匀分散在单位球体中。右:扰动。独立地向每个点添加高斯噪声。
鲁棒性测试:我们展示了我们的 PointNet 虽然简单有效,但对各种输入损坏具有鲁棒性。我们使用与 图 5 的最大池化网络相同的架构。输入点被归一化为一个单位球体。结果见图 6 。
至于缺失点,当有50%的点缺失时,准确率仅下降2.4%和3.8 关于最远和随机输入采样。我们的网络对异常点也很稳健,如果它在训练期间看到了异常点。我们评估了两种模型:一种在具有 (x, y, z) 坐标的点上进行训练;另一个在 (x, y, z) 加上点密度。即使 20% 的点是异常值,网络也有超过 80% 的准确率。 图 6 右显示网络对点扰动是鲁棒的。
5.3.可视化 PointNet
Figure 7. 临界点和上限形状。虽然临界点共同确定给定形状的全局形状特征,但落在临界点集和上限形状之间的任何点云都会给出完全相同的特征。我们对所有图形进行颜色编码以显示深度信息。
在图 7 中,我们可视化了一些样本形状 S 的临界点集
C
S
C_S
CS? 和上限形状
N
S
N_S
NS?(如 Thm2 中讨论的)的一些结果。两个形状之间的点集将给出完全相同的全局形状特征
f
(
S
)
f(S)
f(S)。
我们可以从图 7 中清楚地看到,临界点集
C
S
C_S
CS?,那些对最大池化特征有贡献的,总结了形状的骨架。上界形状
N
S
N_S
NS? 说明给出与输入点云
S
S
S 相同的全局形状特征
f
(
S
)
f(S)
f(S) 的最大可能点云 S 。
C
S
C_S
CS? 和
N
S
N_S
NS? 反映PointNet的鲁棒性,失去一些非关键点根本不会改变全局形状特征
f
(
S
)
f(S)
f(S)。
通过将边长为 2 的立方体中的所有点通过网络转发并选择点函数值
(
h
1
(
p
)
,
h
2
(
p
)
,
?
?
?
,
h
K
(
p
)
)
(h_1(p),h_2(p),···,h_K(p))
(h1?(p),h2?(p),???,hK?(p)) 不大于全局形状描述符。
5.4.时空复杂度分析
Table 6. 用于 3D 数据分类的深层架构的时间和空间复杂度。 PointNet (vanilla) 是没有输入和特征转换的分类 PointNet。 FLOP 代表浮点运算。 “M”代表百万。 Subvolume 和 MVCNN 对来自多个旋转或视图的输入数据使用池化,否则它们的性能会差很多。
表 6 总结了我们分类 PointNet 的空间(网络中的参数数量)和时间(浮点运算/样本)复杂度。我们还将 PointNet 与之前工作中的一组具有代表性的基于体积和多视图的架构进行了比较。
虽然 MVCNN [20] 和 Subvolume (3D CNN) [16] 实现了高性能,但 PointNet 的计算成本效率更高(以 FLOPs/sample 衡量:分别为 141 倍和 8 倍效率更高)。此外,就网络中的#param(参数少 17 倍)而言,PointNet 的空间效率比 MVCNN 高得多。此外,PointNet 更具可扩展性——它的空间和时间复杂度是 O(N)——输入点的数量是线性的。然而,由于卷积在计算时间中占主导地位,多视图方法的时间复杂度随着图像分辨率的增加而增加,基于体积卷积的方法随着体积大小的增加而增加。
根据经验,PointNet 能够在 TensorFlow 上使用 1080X GPU 每秒处理超过 100 万个点,用于点云分类(大约 1K 个对象/秒)或语义分割(大约 2 个房间/秒),显示出实时应用的巨大潜力.
6.结论
在这项工作中,我们提出了一种新的直接消耗点云的深度神经网络点网。我们的网络提供了一个统一的方法来实现一些3D识别任务,包括对象分类、部分分割和语义分割,而在标准基准上获得比标准的状态更好或更好的结果。我们还提供理论分析和可视化,以了解我们的网络。
参考文献
[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. InProceedings 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. InComputer 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. InComputer 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. InProceedings 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 ofLecture 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. InNIPS 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. InSymposium on geometry processing, volume 6, pages 156–164, 2003.5 [12] 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 [13] 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 [14] J. Masci, D. Boscaini, M. Bronstein, and P . V andergheynst. Geodesic convolutional neural networks on riemannian manifolds. InProceedings of the IEEE International Conference on Computer Vision Workshops, pages 37–45, 2015.2 [15] D. Maturana and S. Scherer. Voxnet: A 3d convolutional neural network for real-time object recognition. InIEEE/RSJ International Conference on Intelligent Robots and Systems, September 2015.2,5 [16] C. R. Qi, H. Su, M. Nie?ner, A. Dai, M. Y an, and L. Guibas. V olumetric and multi-view cnns for object classification on 3d data. InProc. Computer Vision and Pattern Recognition (CVPR), IEEE, 2016.2,5,8 [17] R. B. Rusu, N. Blodow, and M. Beetz. Fast point feature histograms (fpfh) for 3d registration. InRobotics and Automation, 2009. ICRA’09. IEEE International Conference on, pages 3212–3217. IEEE, 2009.2 [18] R. B. Rusu, N. Blodow, Z. C. Marton, and M. Beetz. Aligning point cloud views using persistent feature histograms. In2008 IEEE/RSJ International Conference on Intelligent Robots and Systems, pages 3384–3391. IEEE, 2008.2 [19] M. Savva, F. Y u, 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 [20] H. Su, S. Maji, E. Kalogerakis, and E. G. Learned-Miller. Multi-view convolutional neural networks for 3d shape recognition. InProc. ICCV , to appear, 2015.2,5,6,8 [21] J. Sun, M. Ovsjanikov, and L. Guibas. A concise and provably informative multi-scale signature based on heat diffusion. InComputer graphics forum, volume 28, pages 1383–1392. Wiley Online Library, 2009.2 [22] O. Vinyals, S. Bengio, and M. Kudlur. Order matters: Sequence to sequence for sets.arXiv preprint arXiv:1511.06391, 2015.2,4,7 [23] D. Z. Wang and I. Posner. V oting for voting in online point cloud object detection.Proceedings of the Robotics: Science and Systems, Rome, Italy, 1317, 2015.2 [24] Z. Wu, R. Shou, Y . Wang, and X. Liu. Interactive shape cosegmentation via label propagation.Computers Graphics, 38:248 – 254, 2014.6 [25] Z. Wu, S. Song, A. Khosla, F. Y u, L. Zhang, X. Tang, and J. Xiao. 3d shapenets: A deep representation for volumetric shapes. InProceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 1912–1920, 2015.2, 5 [26] L. Yi, V . G. Kim, D. Ceylan, I.-C. Shen, M. Y an, 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
|