点云上采样对于从稀疏三维数据重建稠密三维点云十分有效。但面对非规则、无需、稀疏、噪声和不完整的点云结构,图像领域的超分辨、补全、稀疏加密等方法无法直接用于点云上采样中。PointNet系列方法基于全连接抽取特征计算量过大、PUNet方法则缺失了细节信息、ECNet方法则需要复杂的边缘标记。本文则提出了一种基于点云片元的渐进式方法,将较大上采样分解为多个聚焦于不同层级尺度的上采样模块,实现了多尺度高精度的点云加密。
模型的主要思路是将点云加密过程分解为多步骤 的上采样子网络来实现,每个子网络中的点云片元与感受野自适应不同的尺度。感受野的自适应变化使得模型的不同层级可以学习不同尺度的几何特征。模型主要由多个级联和跳接的上采样子模块构成,而上采样子模块又有稠密连接的特征抽取单元和编码赋值特征拓展单元构成。同时通过模块内和模块间的跳接实现多尺度的信息抽取和不同层级间的信息共享。
1.点云上采样
利用上采样的点云加密方法主要主要有基于优化和基于深度学习的方法。
基于优化的方法主要利用了形状的先验信息,在已有点的基础上插入新点,并保持边缘的状态。他们主要利用了局域的几何特征而没有考虑到多尺度的全局特征。
基于深度学习的点云上采样方法从PointNet开始有了大幅度的发展,包括PointNet++在内的多种变种在多种点云相关任务上取得了良好的表现。但基于pointnet的生成模型由于计算量限制了其能够处理的点云分辨率。PUNet则独辟蹊径采用了基于点云片元的处理方式实现了对于高分辨的点云处理,但上采样结果却缺乏对于细粒度几何特征的重建。ECCV2018提出的ECNet通过缩小点与边缘间的距离提高锐利特征的重建效果,但它却需要复杂的边缘标注数据来实现。
为了从给定无序点云中恢复出(隐含表面上的)稠密的点云,研究人员提出了一种渐进式的分布处理方法来处理点云的稀疏性、无序性和隐含表面的复杂性。这种方法将大比例的上采样分解为多层级多步骤的上采样,通过一系列相同结构的子模块序列递进地实现了对于点云的上采样加密过程。同时模块内和模块间利用条件层实现信息共享,使得不同的模块专注于处理不同层级的细节,同时也可以充分利用上一级信息来改善最终的处理结果。
2.网络模型
这种多尺度的多步骤的点云上采样网络包含了多个相同结构的上采样模块。例如下图如果要进行八倍上采样时,它使用三个两倍的上采样子模块级联实现了八倍上采样。它的输出是目标点云片元,并在基准数据的监督下进行多级上采样,并将预测结果传至下一层级进行处理。每一层级相对独立,通过融合不同片元的预测得到最后的重建结果。
为了实现多级上采样单元的级联工作,需要一种有效的自适应方法来处理不同尺度和点云密度下的上采样问题。在不同尺度下网络的感受野应该自适应的变换。为了在非规则的多尺度点云中实现自适应处理,研究人员利用改进后的k最邻近方法来实现。感受野的大小通过特征层中knn的尺度来定义,只要固定邻域点的数量,那么随着点云密度的增加感受的口径就会不断收窄。下图显示了模型在上采样时处理的空间区域也在不断缩小。
解决了尺度自适应问题后,就可以开始搭建网络了。为了实现
2
L
2^L
2L的上采样,需要L个上采样单元级联实现。在训练过程中每一个单元需要进行两次训练,共2L-1次训练(由于没有前置训练,第一层只需训练一次)。
针对第L层,首先需要固定住1到L-1层等参数进行初始训练;随后在达到一定精度后放开前面单元进行联合训练。这种策略将避免训练新的层级时不恰当的梯度扰乱先前层的稳定性。由于感受野内的点数固定,随着级数的增加所处理的空间尺度也在收窄,聚焦的尺度也从全局逐渐转为细节的特征学习。
?模型由多个上采样单元构成,每个单元内部和单元之间都具有跳接层进行信息共享。下图显示了模型对点云进行渐进式多级处理的结构,每一个单元结构相同但负责不同层级。
?与PointNet++的构造类似,上采样单元主要由特征抽取、特征拓展模块构成。下图就是上采样单元的结构,其目的是将输入的特征进行上采样拓展两倍。上采样单元的主要任务有三:通过内部稠密连接进行特征抽取feature extraction、通过编码赋值进行特征拓展feature expansion、通过双边插值进行单元间信息共享。
信息抽取单元主要利用稠密连接的denseblock来实现。首先输入Nxd维(一般是Nx3或Nx2的点云)的信息,通过第一层抽取为固定尺度的特征C’,随后利用KNN将特征分组得到NxK个组别,并进一步利用(K个)MLP对组特征进行优化得到G通道的特征。这一特征与上一个特征合并后又得到新的一个G通道特征(共NK(2G+C’))个特征。最终通过maxpooling将分组信息进行浓缩后得到最终的N(2G+C’),同时加上最初的Nx3特征。这一特征作为模块多尺度特征聚合将会馈入后续的模块中复用提高重建精度同时也提高了参数效率减小模型尺寸,在最后一层的压缩作用下重新在下一个单元得到NxC’的特征。
特征拓展单元将特征的空间尺度翻倍。信息抽取单元得到NxC的特征后就会被送入到特征拓展单元中进行下一步处理。这个单元的目的是将NxC的特征转换为2Nxd,以便实现二倍的上采样。 为了获得二倍的上采样,按照PUNet中的方式需要将特征也进行二倍的拓展。在PUNet中,将特征copy了r份以便实现r倍的特征拓展,但会造成生成的点过于集聚在原始点附近,需要斥力项来修正。而在这里,研究人员通过在特征中加入新的维度实现位置扰动,从而构建出了新的特征。
具体来说,将原始NxC特征复制后,在每一个特征后加入一个编码为1或-1的向量来产生位置扰动。这意味着在隐空间中新的特征编码在原始位置的对称两侧,有利于生成新的点。而后利用MLP将2Nx(C+1)的特征压缩为2Nxd的残差特征。值得注意的是,由于共享相同的MLP进行处理模型的参数与上采样率无关。(一点思考:特征编码中,可以利用二进制的编码形式±1即可代表两种状态。如果使用多个值的交叉熵则可以表示多种状态)
为了在多个不同上采样单元间交换信息,需要建立模块间跳接层沟通。然而不同模块针对的点云密度不同,如果需要将上一次特征传递到下一层则需要良好的差值技术匹配不同层级的特征。这部分使用了双边插值的技术,利用目标点周围的特征来进行插值。其中θ代表点之间的指数距离而φ代表了特征间的指数距离。
在计算量和优化的考虑下,研究人员使用了基于残差的特征衔接方式
f
i
=
f
~
i
+
f
i
f_i=\widetilde{f}_i+f_i
fi=f
i+fi。这种方式可以由粗到精的优化,在粗糙的尺度上不断通过下一阶段学习到的细粒度特征来完善重建结果。
模型的损失函数使用了欧式距离来作为度量。由于预测结果会在边界位置上有细微的不匹配,噪声和局外点会影响损失函数的计算,所以研究人员改进了倒角距离(Chamfer distance)作为损失函数:
L
(
P
,
Q
)
=
1
P
∑
p
∈
P
ξ
(
min
q
∈
Q
∣
∣
p
−
q
∣
∣
2
)
+
1
Q
∑
q
∈
Q
ξ
(
min
p
∈
Q
∣
∣
p
−
q
∣
∣
2
)
ξ
(
d
)
=
{
d
,
d
<
=
δ
0
,
o
t
h
e
r
s
L(P,Q) = \frac{1}{P} \sum_{p \in P} \xi (\min_{q\in Q}||p-q||^2) + \frac{1}{Q} \sum_{q \in Q} \xi (\min_{p\in Q}||p-q||^2) \\ \xi(d) = \left\{ \begin{aligned} d & , & d<=\delta \\ 0 & , & others \\ \end{aligned} \right.
L(P,Q)=P1p∈P∑ξ(q∈Qmin∣∣p−q∣∣2)+Q1q∈Q∑ξ(p∈Qmin∣∣p−q∣∣2)ξ(d)={d0,,d<=δothers
这时候利用了PQ点集进行了计算,提高了对于噪声和局外点的鲁棒性。在一定的方位δ内会被考虑进来,而超过这一范围就会变成局外点不考虑。更重要的是δ与本层级点云的平均最近邻域距离相乘,使得它可以适应不同尺不同密度点云的损失计算。
3.模型性能
研究人员在MNIST-CP,Sketchfab和ModelNet10上进行了实验。其中MNIST-CP是从mnist中抽取出的二维点。针对三维模型mesh,使用Meshlab中的Possion-disk采样来获取不同密度的点云。
下面几个表格可以看到模型在三个数据集上的表现,其中HD,CD,P2F为Hausdorff distance和Chamfer distance以及point-to-surface distance,会同 EAR[23], PU-Net [59] and EC-Net [58] 三个模型进行了比较.
上面两个表格可以看到,在sketchfab和modelnet10数据集上,这篇文章提出的方法都比先前的PUNet和EAR和ECNet要好。还可以看到使用倒角距离CD的结果也优于豪斯多夫距离和点与表面距离作为度量的结果。这说明改进后的CD十分更适合于点云加密结果的度量。
下面的表格指出了模型多各个模块起到的作用,可以看到所有的模块都有正向共享,特别是多阶段架构和各阶段分离训练产生的提升作用明显。
下图也显示了单阶段训练b、多阶段训练c以及完整策略的模型d得到的结果差异
针对真实扫描的结果,通过去噪后b在放入本文模型中得到了加密后的上采样结果,可以看到细节和面部表情更多的显示了出来:
为了检测模型的鲁棒性,研究人员还在不同的稀疏程度和噪声水平下检测了输出的质量。下图可以看到在输入点云密度减小和噪声增加时,本方法有着比PU-Net更好的鲁棒性:
最后再来看几个实际扫描点云的重建结果:
附注:这篇论文与PUNet来自相似的团队,其中Daniel Cohen-Or教授是特拉华大学的视觉研究人员,其课题组对于点云和三维有着深入研究,也参与了PUNet的研究。Yifan Wang和*Shihao Wu都是Olga Sorkine-Hornung负责的ETHZ交互几何实验室的同学,专注于点云三维几何视觉的相关研究。黄惠是深圳大学可视计算中心负责人。
值得关注的组:特拉华大学Daniel Cohen-Or教授组, ETHZ交互几何实验室, 深圳大学可视计算研究中心,港中文王安平,Chi-Wing FU, Philip
ref:
Yifan Wang
Shihao Wu
Daniel Cohen-Or
Olga Sorkine-Hornung
paper:https://arxiv.org/pdf/1811.11286.pdf
code:https://github.com/yifita/3PU
ECNet
PointNet++
PointNet
Feature expansion: AtlasNet
[FoldingNet](https://arxiv.org/pdf/1712.07262.pdf http://www.merl.com/research/license#FoldingNet)
Directional Chamfer Matching
Hausdorff distance,Fréchet distance(弗雷歇距离)
3D machineLearning repo