一、背景
近年来,3D 点云分析在自动驾驶和机器人等领域有着诸多的应用,因此得到了各界广泛的关注。主流的点云分析任务都需要对点云的 3D 形状进行高级别的理解,比如点云识别。但从不规则分布的 3D 点中很难推理学习其隐含的 3D 形状。随着以卷积神经网络(CNN)为代表的深度学习方法的兴起,大量的研究工作致力于将 CNN 在图像分析上的巨大成功复制到点云处理领域。然而由于点云数据的不规则性,经典的图像网格卷积难以适用。
一般来说,在点云上进行卷积学习主要面临三大挑战:
点云由无序的点集构成,因此卷积需要对点的输入顺序具有置换不变性。
点云分布于 3D 几何空间,因此卷积应当对点云的刚体变换具有鲁棒性,比如平移、旋转等。
点云形成一个隐含的形状,因此卷积得到的表征应当具备有区分力的「形状意识」。
本文提出 Relation-Shape CNN(RS-CNN)来缓解上述挑战。RS-CNN 的核心是从几何关系中推理学习 3D 形状,因为在本文看来,3D 点之间的几何关系能够有表现力的编码其隐含的形状信息。所提出的 RS-CNN 在点云分类、部件分割和法向估计三个任务上均达到了最佳水平。并且得益于对几何关系的建模,RS-CNN 能够自然地实现置换不变性以及刚体变换鲁棒性。为了验证 RS-CNN 的几何形状推理能力,本文还在 3D 点云的 2D 投影空间中做了测试,实验表明,RS-CNN 依然具备优秀的形状识别性能。
二、Relation-Shape CNN(RS-CNN)
RS-CNN 的基本卷积算子如图 2 所示。为了实现局部卷积归纳学习,我们将局部点云子集 建模为一个球形邻域,该邻域的中心点为采样点 xi,其余点作为 xi 的邻居点。在该邻域上,我们构建了一个一般性的卷积操作方法:
其中 x 是三维点,f 是特征向量,dij 是点 xi 和 xj 的 3D 欧式距离,r 是球半径。卷积结果 f Psub 通过首先使用函数 τ 对邻域中每一个点进行特征变换,然后使用函数 A 聚集变换后的特征,最后经过非线性 σ 激活后获得。注意到仅当 A 是对称函数,并且函数 τ 对邻域中每一个点均共享参数时,f Psub 对输入点的顺序具有置换不变性。
在经典网格卷积中,特征变换函数实现为,其中 wj 为可学习的卷积权重,•表示按元素相乘。该卷积方法在点云数据上操作时会有两个缺陷:1)由于 wj 不共享参数,因此该卷积对输入点集不具备置换排列不变性。2)在反向传播中 wj 的梯度仅与孤立点 xj 相关,因此该卷积难以捕捉到点间关系。
为了克服上述问题,我们将卷积转换为从几何关系中学习。在方法上,我们将 wj 替换为 wij,并让 wij 从几何关系向量 hij 中学习一个高维的映射函数 M。hij 是预先定义的点 xi 和 xj 之间的几何先验。该过程可以描述为:
其中映射函数 M 的目标是从几何先验中学习一个高维的、有表现力的关系表达,以编码 3D 点集的空间布局,这里我们使用共享的多层感知器(MLP)实现映射函数 M。以这种方式,wj 巧妙地转换为 wij,它的梯度由预定义的几何先验 hij 决定,且与点 xi 和 xj 均几何相关。于是,公式(1)中的 f Psub 变为:
该卷积方法聚集了点 xi 和所有邻居点 之间的几何关系表达,因此可以对 3D 点的空间分布进行显式的推理,进而有区分力的反映其隐含的 3D 形状。其中几何先验 hij 可以灵活设置,因为映射函数 M 能将 hij 映射为高维的关系向量,以实现与特征 fxj 进行通道对齐。在经典图像 CNN 中,随着图像分辨率的降低,特征通道数会逐渐增加以提升表达能力。基于此,我们在 f Psub 上增加共享的 MLP 以实现通道提升映射。
图 3 为经典 2D 网格卷积的示意图。注意到 wj 总是隐含着 xi 和 xj 的一个固定位置关系,也就是说,wj 在学习过程中受到了限制,实际上编码了一种规则的网格关系。因此,我们所提出的关系卷积方法具有通用性,它也能够建模经典的 2D 栅格卷积。
图 4 展示了 RS-CNN 应用于点云分类和点云分割的网络框架。将所提出的几何关系卷积方法搭配均匀的点云下采样算法,可以很容易实现类似图像 CNN 的多层神经网络,相关操作简单高效。
三、实验
为了验证 RS-CNN 的有效性,我们在主流的点云分析任务上进行了测试,包括点云分类、部件分割和法向预测。ModelNet40 上的分类结果如表 1 所示,在仅使用 3D 坐标 xyz 和 1k 个稀疏点作为输入的情况下,RS-CNN 仍然实现了最佳分类效果。
ShapeNet part 上的分割效果如图 6 所示。尽管点云所形成的形状多种多样,并且很容易产生混淆,RS-CNN 依然可以准确地将部件分割出来。
ModelNet40 上的法向预测结果如图 7 所示。与 PointNet 以及 PointNet++相比,RS-CNN 可以取得更加准确的法向预测结果。尽管如此,RS-CNN 仍然难以有效推理棘手的形状,比如旋转楼梯以及错综复杂的植物。
公式(3)中的几何先验 可以进行灵活地定义,我们在 ModelNet40 上测试了五个比较直观的例子,结果如表 6 所示。可以看到,仅仅使用 3D 欧式距离作为低维几何关系(model A),RS-CNN 依然能够取得 92.5% 的精度,这很让人印象深刻。此外,为了测试 RS-CNN 的几何形状推理能力,我们强制置零某一维的坐标值,即将 3D 点云投影到 2D 空间(model E,图 9),得到的分类精度均接近 92.2。这证明了 RS-CNN 不仅可以从 3D 点云中学习 3D 形状,还能从 2D 投影空间中推理 3D 形状。
为了验证所提出的几何关系卷积的鲁棒性,我们设置几何先验 hij 为 3D 欧式距离,然后在 ModelNet40 上进行鲁棒性测试,结果如表 7 所示。虽然几何关系 hij 能够做到旋转不变,但网络初始输入的特征 xyz 仍然会受到旋转的影响。针对这一问题,我们引入法向将每一个局部点集旋转到以法向和采样点确定的局部坐标系中,实现了旋转不变。但该旋转会给形状识别带来困难,因此分类精度会有所下降。
论文:Relation-Shape Convolutional Neural Network for Point Cloud Analysis
论文地址:https://arxiv.org/abs/1904.07601
项目主页:https://yochengliu.github.io/Relation-Shape-CNN/
摘要:点云分析非常具有挑战性,因为从一系列不规则点中很难捕捉其隐含的形状。在本文中,我们提出了 RS-CNN,即 Relation-ShapeConvolutionalNeuralNetwork,它致力于拓展经典的规则网格 CNN 至不规则的配置以进行点云分析。RS-CNN 的核心是从关系中学习,也就是学习 3D 点间的几何拓扑约束。具体来说,局部点集的卷积权重被转换为从几何先验中学习一个高维的关系表达,该几何先验由点集中的一个采样点和剩余点预先定义而来。这样,归纳后的局部卷积表示可以对 3D 点的空间布局进行显式的推理,进而获得有区分力的形状意识和良好的鲁棒性。使用该卷积可以搭建一个分层的架构 RS-CNN,以实现具有上下文形状意识的学习方法来进行点云分析。在具有挑战性的基准数据上,横跨三个任务的大量实验研究表明,RS-CNN 达到了当前最佳水平。
注:作者正在维护一个「点云处理最新论文集」项目,感兴趣的读者可查看以下链接:https://github.com/Yochengliu/awesome-point-cloud-analysis