论文笔记:Relation-Shape Convolutional Neural Network for Point Cloud Analysis
https://arxiv.org/pdf/1904.07601.pdf
摘要
- RSCNN 将规则网格上的CNN推广到不规则的点云。
- RSCNN 的关键是从关系 relation 中学习,比如点之间的几何拓扑约束。特别地,从采样点到其他点之间,根据预先定义的几何先验,局部点集的卷积权重学习到高阶的关系表达式。
- 诱导的局部表达包含了关于点云布局的显示推理,这使得有更多的形状意识(shape awareness)和鲁棒性。
1. Introduction
通常讲,有对于学习点云 P ⊂ R 3 P\subset\mathbb R^3 P⊂R3 来讲,有三个挑战
- P P P 是无序的,因此要求学习的表达是置换不变的(permutation invariant)。
- P P P 分布在三维几何空间,因此对刚性变换(旋转、平移)是鲁棒地。
- P P P 形成隐形状 (underlying shape), 因此学习的表达应该具有识别形状的意识 (discriminative shape awareness )。
三个挑战(1)被对称函数很好的解决了,(2,3)仍需要全面的研究。本文的目的是将规则网格的CNN推广到不规则的配置中,一起解决上述挑战。
RSCNN 的关键是从关系 relation 中学习,比如点之间的几何拓扑约束,在我们看来,这可以对3D点云编码有意义的形状信息。
特别地,每一个局部卷积邻域都是由一个中心点 x x x 和它的邻域 N ( x ) \mathcal N(x) N(x)。因此,局部点集的卷积权重根据预先定义的几何先验知识学习到高阶的关系表达式,比如直观 x x x 和 N ( x ) \mathcal N(x) N(x) 的低阶关系。
通过这种卷积,得到关于点的空间布局的显式推理的归纳表示。它有区别地反映了不规则点形成的基本形状,因此是形状感知的(3)。 此外,从几何先验得到置换不变性和刚性变换(平移、旋转)鲁棒性(2)。
利用该卷积作为基本运算,分层的CNN架构,即RSCNN,以实现对点云周边形状感知的学习。
主要贡献:
- 提出了一种新的从关系学习的卷积算子,称为关系-形状卷积。它可以显式地编码点的几何关系,从而具有形状感知和鲁棒性;
- 提出了一种有关系形状卷积的深层层级结构,即RS-CNN。它可以将规则网格CNN扩展到不规则配置,实现点云的感知周边形状的学习;
- 针对三项任务准进行了实验,以及经验和理论分析,证明了RS-CNN是 state of the art的。
2. Related Work
3. Shape-Aware Representation Learning
点云分析的核心是鲁棒地有区别地表示基础形状。 这里,我们用新的关系形状卷积(RS-Conv),通过将规则网格CNN扩展到的不规则配置,来学习目标的周边形状感知表示。
3.1Relation-Shape Convolution
模型:局部点子集 P s u b ⊂ R 3 P_{sub}\subset\mathbb R^3 Psub⊂R3 是球形邻域,中心点 x i x_i xi, 邻域 x j N ( x i ) x_j\mathcal N(x_i) xjN(xi)。 目的是学习这个邻域的一个诱导表示 f P s u b {\bf{f}} _{P_{sub}} fPsub ,能够有区别的编译基础形状信息。为此,一个通用的卷积操作为
f P s u b = σ ( A ( { T ( f x j ) , ∀ x j } ) ) , d i j < r , ∀ x j ∈ N ( x i ) . {\bf{f}} _{P_{sub}}=\sigma \Big(\mathcal A \big(\{\mathcal T({\bf{f}}_{x_j}),\forall x_j\}\big)\Big), \ d_{ij}<r, \forall x_j\in\mathcal N(x_i)\ . fPsub=σ(A({T(fxj),∀xj})), dij<r,∀xj∈N(xi) .
其中 x x x 是3D点, f \bf f f 是特征向量, d i j d_{ij} dij 是 x i x_i xi 和 x j x_j xj 间的欧式距离, r r r 是球半径。
点云的置换不变性当 A \mathcal A A 是对称的(如相加)且 T \mathcal T T 对 N ( x i ) \mathcal N(x_i) N(xi) 的所有点是共享的。
经典CNN的局限: 经典CNN中, T \mathcal T T 作用为 T ( f x j ) = w j ⋅ ( f ) x j \mathcal T({\bf f}_{x_j})={\bf w}_j\cdot (\bf f)_{x_j} T(fxj)=wj⋅(f)xj 。这在应用到点云上有两个限制:
- w j {\bf w}_j wj 不是共享的。导致对点的置换有变化,且不能处理不规整的 P s u b P_{sub} Psub ,比如说点数不同。
- w j {\bf w}_j wj 在反向传播的时候梯度只与 x j x_j xj 有关, 导致是一个隐式学习策略,使得 f P s u b {\bf f}_{P_{sub}} fPsub 不能带有太多形状意识和鲁棒性
上面的局限可以通过数据增强和大量卷积滤波器缓解,但不是最优的。
改造:从关系中学习 上述局限都可以解决。用 w i j {\bf w}_{ij} wij 代替 w j {\bf w}_j wj , h i j {\bf h}_{ij} hij 是低阶关系向量,比如预先定义 $ x_i$ 和 $x_j $ 之间的几何先验知识,学习关于 $ {\bf h}_{ij} $ 的映射 M \mathcal M M ,实验中 h i j = ( 3 D E u c l i d e a n d i s t a n c e , x i − x j , x i , x j ) {\bf h}_{ij}=( 3D\ Euclidean\ distance, x_i-x_j,x_i, x_j) hij=(3D Euclidean distance,xi−xj,xi,xj) 。该过程描述为 T ( f x j ) = w i j ⋅ f x j = M ( h i j ) ⋅ f x j \mathcal T({\bf f}_{x_j}) = {\bf w}_{ij} \cdot {\bf f}_{x_j} = \mathcal M({\bf h}_{ij})\cdot {\bf f}_{x_j} T(fxj)=wij⋅fxj=M(hij)⋅fxj 。
映射 M \mathcal M M 的作用是抽取两个点之间的高阶关系,能编码空间布局。这里的映射 M \mathcal M M 是共享的MLP。
w i j {\bf w}_{ij} wij 的梯度与 x i x_i xi 和 x j x_j xj 有关。
M \mathcal M M 对 N ( x i ) \mathcal N(x_i) N(xi) 的所有点共享,保证了 3.2 节刚性变换的鲁棒性。
因此有 ${\bf{f}} {P{sub}}=\sigma \Big(\mathcal A \big({\mathcal M({\bf{h}}{ij})\cdot {\bf f}{x_j},\ \forall x_j}\big)\Big)\ . $ 这个卷积表达式,聚集了 x i x_i xi 和 N ( x i ) \mathcal N(x_i) N(xi) 的关系,能显式推导点的空间布局,因此是有辨别的形状意识。
信道上升映射 Channel-raising mapping f P s u b = σ ( A ( { M ( h i j ) ⋅ f x j , ∀ x j } ) ) {\bf{f}} _{P_{sub}}=\sigma \Big(\mathcal A \big(\{\mathcal M({\bf{h}}_{ij})\cdot {\bf f}_{x_j},\ \forall x_j\}\big)\Big) fPsub=σ(A({M(hij)⋅fxj, ∀xj})) 中 的 f P s u b 的{\bf f}_{P_{sub}} 的fPsub 信道数和 f x j {\bf f}_{x_{j}} fxj 相同,这与经典 CNN 不一致,因此在 f P s u b {\bf f}_{P_{sub}} fPsub 增加了共享的 MLP 使映射增加信道数。(图2 中间)
3.2 Properties
RS-CONV f P s u b = σ ( A ( { M ( h i j ) ⋅ f x j , ∀ x j } ) ) {\bf{f}} _{P_{sub}}=\sigma \Big(\mathcal A \big(\{\mathcal M({\bf{h}}_{ij})\cdot {\bf f}_{x_j},\ \forall x_j\}\big)\Big) fPsub=σ(A({M(hij)⋅fxj, ∀xj})) 保持四个性质:
- 置换不变性 低阶关系 h \bf h h 和共享的 MLP M \mathcal M M 对点的输入顺序都是不变的,再加上聚集函数 A \mathcal A A 是对称的,满足置换不变的条件。
- 刚性变换鲁棒性 在合适的 h \bf h h (如3D欧式距离)的定义下, 在高阶关系编码 M ( h ) \mathcal M({\bf h}) M(h) 的刚性变换鲁棒性仍然成立。
- 点相互作用 关系学习明显的编译了点之间的几何关系,自然的捕捉到了点之间的交互。
- 权重共享 可以更鲁棒,降低复杂度。因为对称 A \mathcal A A ,共享 MLP M \mathcal M M 和预先由几何先验定义的 h \bf h h 独立于不规则的点云,因此满足性质。
3.3 Revisting 2D Grid Convolution
提出的 RS-Conv 是关于关系推理的 2D 网格卷积的一般形式,如图3。
规则网格 kernel 的权重受制于与中心点的位置,一个权重只能编译一种规则网格。
3.4 RS-CNN for Point Cloud Analysis
用 RS-Conv 作为基本操作和统一的采样方法,可以的得到像经典的 CNN 的,分层的形状意识学习结构 (a hierarchical shape-aware learning architecture): F P N l l = RS-CONV ( F P N l − 1 l − 1 ) {\bf F}^l_{P_{N_l}} = \text{RS-CONV}({\bf F}^{l-1}_{P_{N_{l-1}}}) FPNll=RS-CONV(FPNl−1l−1) ,其中 ${\bf F}^l_{P_{N_l}} $是有 N l N_l Nl 个点的采样点集 ${P_{N_l}} $ 在第 l l l 层的特征。
RS-CNN 用在分类和分割上,学习一组分层形状意识的表达。对于分类,最后全局表达跟了三层全连接;对于分割,学习的多层次表达通过特征传递 (feature propagation) 连续的上采样,来生成逐点的预测。
3.5 Implementation Details
RS_Conv 聚集函数 A = max pooling \mathcal A=\text{max pooling} A=max pooling ,nonlinear activator σ = ReLU \sigma = \text{ReLU} σ=ReLU ,映射函数 M = 3 MLP \mathcal M=3 \text{ MLP} M=3 MLP , channel-rasing 是一层共享 MLP。
RS-CNN for point analysis 最远点采样方法采样局部子集。对于子集中心点,在三个不同尺度下共享相同权重进行学习,这与 pointnet 的MSG(multi-scale grouping,对不同尺度的特征使用多组权重) 不同。
只有点的3D坐标作为 RS-CNN 的输入。
4. Experiment
4.1 Point Cloud Analysis
Shape clssification
Shape part segmentation
Normal estimation