PU-Net: Point Cloud Upsampling Network
网络架构

PU-Net有四个组件:patch extraction, point feature embedding, feature expansion和coordinate reconstruct。
patch extraction:从给定的一组先验3D模型中提取不同比例和分布的点块。
point feature embedding:通过分层特征学习和多层次特征聚合将原始3D坐标映射到特征空间。
feature expansion:扩展特征数量。
coordinate reconstruct:用一系列全连接层重建输出点云的三维坐标。
训练数据生成

为了学习点云中的局部几何图形,作者采取基于分块的方法来训练网络。首先,在这些对象点云的表面上随机选择个点。然后从每个选定的点开始,在对象上生长出一个曲面分块,使得分块上的任何点都在曲面上与选定点的特定的测地线距离()内。最后,使用Poisson disk采样在每个面片上随机生成个点,作为分块上的参考真实点云,而输入点在每个训练时期以的下采样率从真实点集合随机采样。
点特征嵌入

分层特征学习:
Pu-Net采用PointNet++中提出的分层特征学习机制作为网络的开端,逐步捕获层次结构中不断增长的尺度特征。
多级特征聚合
Pu-Net首先通过PointNet++中的插值方法从下采样的点特征中恢复所有原始点的特征,等级为的插值点的特征计算为:

其中为逆距离权重,为的三个最近邻点。然后使用1x1的卷积减少不同级别的内插特征到相同维度。最后将各个级别的特征连接,得到最终的点特征
Feature Expansion
假使的维度为,为输入点数,为连接的点特征的维度。特征扩展层将输出的特诊,其中为上采样率.
基于sub-pixel convolution layer,PU-Net的上采样表示为:
其中(每个特征集共享参数)和(每个特征集参数不同)表示对进行的两次1x1卷积。将的张量reshape为。
Cfoordinate Reconstruction
使用全连接网络将的扩展特征变换为。

端到端训练
Joint Loss Function

重建损失使用Earth Mover’s distance(EMD):

其中为predicted point cloud;为参考点云。为双射映射
尽管具有重建损失的训练可以在基础对象表面上生成点,但生成的点往往位于原始点附近。为了更均匀地分布所生成的点,Pu-Net还包含一个排斥损失,表示为:

其中为输出点的数目,为k个最近邻点的索引。为L2范数。递减函数作为排斥项(距离越小值越大),避免离其他点太近。为权重因子。
最终的端到端训练损失函数:
其中为网络参数,和为权重。