PointConv: Deep Convolutional Networks on 3D Point Clouds

PointConv 2019

本文提出了一种对三维点云进行非均匀采样卷积的新方法。

提出使用逆密度尺度对MLP学习到的连续函数重新加权,这对应于连续卷积的蒙特卡罗近似。我们称这样的操作为PointConv。PointConv包括将点云的位置作为输入,并学习MLP来近似权函数,以及在学习的权重上应用逆密度尺度来补偿非均匀采样。

论文阅读:PointConv_权重

论文阅读:PointConv_权重_02

其中,F(x + δx, y + δy, z + δz) 是局部区域G中以点p = (x, y, z)为中心的点的特征。S(δx, δy, δz)是点(δx, δy, δz)的逆密度。点云可以看作是连续r3空间中的一个非均匀样本。在每个局部区域,(δx, δy, δz)可以是局部区域的任意位置。

我们的主要思想是通过多层感知器从三维坐标(δx, δy, δz)近似权函数W(δx, δy, δz),并通过核化密度估计(kernelized density estimation)近似逆密度S(δx, δy, δz)[38],然后使用MLP实现非线性变换。由于权重函数高度依赖于输入点云的分布,因此我们将整个卷积操作称为PointConv。

为了保持排列不变性,PointConv中的MLP的权重在所有点之间共享。为了计算反密度尺度S(δx, δy, δz),我们首先使用核密度估计(KDE)离线估计点云中每个点的密度,然后将密度馈送到MLP进行一维非线性变换。使用非线性变换的原因是为了让网络自适应地决定是否使用密度估计。每个特征编码模块中的关键层是采样层、分组层和PointConv。缺点是每个过滤器都需要通过网络进行近似,因此效率非常低。

论文阅读:PointConv_权重_03

基于反卷积的特征传播

论文阅读:PointConv_点云_04

PointDeconv由插值和PointConv两部分组成。首先,我们使用插值来传播前一层的粗特征。接下来[28],从最近的3个点对特征进行线性插值

高效PointConv

原始的PointConv可以等效地简化为矩阵乘法和1 × 1卷积。

图5显示了PointConv的高效版本。

在这种方法中,我们不是将生成的过滤器存储在内存中,而是将权重过滤器分成中间结果M和卷积核h两部分,我们可以看到,内存消耗减少到原始版本的Cmid K×Cout。使用与图3相同的输入设置并让Cmid = 32,内存消耗为0.1255GB,大约是原始PointConv的1/64

论文阅读:PointConv_权重_05