论文下载:
https://openaccess.thecvf.com/content_cvpr_2018/papers/Yu_PU-Net_Point_Cloud_CVPR_2018_paper.pdf
代码下载:https://github.com/yulequan/PU-Net
简介:
由于数据的稀疏性和不规则性,利用深度学习分析三维点云是一个具有挑战性的课题。本文提出了一种数据驱动的点云上采样技术。其核心思想是学习每个点的多层次特征,并通过特征空间中的多分支卷积单元对点集进行隐式扩展。扩展后的特征被分割成多个特征,然后重构成一个上采样点集。网络是在补丁级别上应用的,具有一个联合损失函数,该函数使上采样点以均匀分布保持在非平坦表面上。我们使用合成和扫描数据进行了各种实验来评估我们的方法,并证明了它优于一些基线方法和基于优化的方法。结果表明,我们的上采样点具有更好的均匀性和潜在的曲面更加贴合。
本文主要贡献:
该工作主要解决3D点云的上采样问题,提出了一个数据驱动的点云上采样网络。核心思想是学习每个点的多层次特征,然后通过特征中隐含的多分支卷积单元扩展点集空间。将扩展后的特征分解为多个特征,再将这些特征重构为一个上采样点集。
方法:
如上图所示,上采样网络PU-Net的结构图:网络输入提取补丁的N个点,经过pointnet++学习到多级特征,相应的有rN个点输出网络,这里r是上采样率。C表示特征通道数目。用插值恢复N个点不同特征层次特征然后利用卷积网络将多级特征统一到通道为C,特征扩张使采用两种不同的卷积层增加联非线性,点云特征集成模块中红色显示原来的和逐步降采样的点,绿色显示恢复的特征。联合使用重建损失函数和互斥损失函数用来端到端地训练上采样网络。
PU-Net有四个组件:段提取Patch Extraction、点特征嵌入Point Feature Embedding、特征扩张Feature Expansion和坐标重建 Coordinate Reconstruction。
1.Patch Extraction
收集一组3D对象作为优先信息来训练。这些对象涵盖了丰富多样的形状,从表面光滑到形状锋利的边角。本质上,为了让网络对点云进行采样,它应该从对象中学习局部几何模式。我们在曲面上随机选择M个点来表达这些对象。从每个选定的点,生成一个一个曲面的小块(surface patch),使得这样小块上的任何点都在曲面上选定点一定的测地线距离(d)内。然后,使用Poisson disk采样的方法在每个小块上随机生成N个点,作为小块上的真实点分布。在我们的上采样任务中,局部和全局信息被被一起用来平滑和统一的输出。因此,用不同的尺寸设置d,这样就可以在先前的物体上提取不同比例和密度的点。
2.Point Feature Embedding
神经网络浅层特征一般反映着局部的小尺度特征,为了更好的上采样结果,采用skip-connection来聚集不同层的特征。
由于在分层特征提取中逐步对每个小块的输入进行二次下采样,通过PointNet++中的插值方法,首先从下采样的点特征中上采样恢复所有原始点的特征N×Cl ,从而连接每个级别的点特征。具体而言,插值点x在l水平上的特征通过以下方式计算:
3.Feature Expansion
在Point Feature Embedding之后,扩展了特征空间中的特征数量, 这相当于扩展点的数量,因为点和特征是可以互换的。假设f的维数是N×C’,N是输入点的数目,C’是级联嵌入特征的特征维数。特征扩展操作将输出维数为rN×C的特征f,其中r是上采样率,C是新的特征维数。本质上,这类似于图像相关任务中的特征上采样,这可以通过反卷积或插值来完成。然而,由于点的非规则性和无序特性,将这些操作应用于点云并不容易。
因此,提出了一种基于子像素卷积层的有效特征扩展操作:
4.Coordinate Reconstruction
在这一部分中,我们从尺寸为rN×C’的扩展特征重建输出点的3D坐标。具体来说,我们通过一系列全连接层对每个点的特征进行三维坐标重建,特征的维度由rN×C’变为rN×3。
实验结果:
当NUC越小时取得点表面更加平滑。
下图为和EAR方法对比的结果:
结论:
在这篇论文中,提出了一个深度点云上采样网络,目标是从一组稀疏的点中生成一组更密集、更均匀的点。网络是在小块级别使用多级特征聚合方式进行训练的,从而捕获局部和全局信息。网络设计通过对包含非局部几何图形的单个特征进行操作来允许上下文感知的上采样,从而绕过了对点之间指定顺序的需求。实验证明了我们方法的有效性。作为第一次使用深度网络的尝试,该方法仍然有许多局限性。毕竟,它不是为填补而设计的,所以我们的网络不能填补大的漏洞和缺失的部分。此外,本网络可能无法为采样严重不足的微小结构添加有意义的点。