【论文阅读】PF-Net: Point Fractal Network for 3D Point Cloud Completion

PF-Net: Point Fractal Network for 3D Point Cloud Completion

    • 1. 背景
    • 2. 相关工作
    • 3. 简介
    • 4. 网络结构
    • 5.实验分析

1. 背景

  • 从激光雷达等设备中获取的点云往往有所缺失(反光、遮挡等),这给点云的后续处理带来了一定的困难,也凸显出点云补全作为点云预处理方法的重要性。
  • 点云补全(Point Cloud Completion)用于修补有所缺失的点云(Point Cloud),从缺失点云出发估计完整点云,从而获得更高质量的点云。点云有助于用较小的数据量描述三维物体,在三维物体的检测识别领域应用广泛。

2. 相关工作

  • 传统的点云补全方法基于一定的物体基础结构的先验信息,如对称性信息语义类信息等,通过一定的先验信息对缺失点云进行修补。这类方法只能处理一些点云缺失率很低、结构特征十分明显的缺失点云
  • PointNetPointNet++ 使用深度学习网络实现了点云分割和点云分类之后,点云深度学习逐渐成为热门研究领域。
  • LGAN-AEPCN, 和 3D-Capsule 等,这些工作以不完整点云作为输入,输出完整点云,造成网络过于关注到物体的整体特征而忽略了缺失区域的几何信息。另一方面,这些网络会生成偏向于某类物体共性特征的点云,而失去某个物体的个体特征。(这些工作更注重于学习属性或者类别的一般特征而不是学习某一特定对象的局部细节)容易改变原有物体的特性(位置错误、几何特征丢失、形状扭曲等)。

3. 简介

  • 文章提出一种基于深度学习的点云分形网络PF-Net。PF-Net采用了一些自己的思路和方法来改善现有的问题:
    1. 以不完整点云作为输入,仅输出缺失部分点云,可保留物体点云的空间结构,对物体的局部特性感知更好
    2. 提出了更优的点云特征提取器多分辨率编码器(Multi-Resolution Encoder),多尺度的方法提升了高低层次点云语义信息提取的效率;
    3. 提出了点云金字塔解码器(Point Pyramid Decoder)用于生成点云,利用多阶段补全损失加粗样式 (Multi-stage completion loss) 监督其中关键点云的生成,从而减少了几何结构瑕疵。
    4. 利用 GAN*结构的鉴别器(Descriminator)优化网络,改善了同一类别不同物体间的特征会相互影响的现象(Genus-wise Distortions Problem)。

4. 网络结构

4.1 MRE(多分辨率编码器)
对输入点云做迭代最远点采样(FPS),获得更小尺度且更具有轮廓特征的降采样点云。 【论文阅读】PF-Net: Point Fractal Network for 3D Point Cloud Completion_第1张图片 MLP(CMLP)主要采用MPL(多层感知机)的处理方式。不同的是,分别对最后四层网络(output_dim=128,256,512,1024)的输出做maxpooling,再将这四层pooling后的输出拼接(concat)形成Latent Vector F (dim=1920x1),如图2。该方式能更充分的利用高层和底层特征
【论文阅读】PF-Net: Point Fractal Network for 3D Point Cloud Completion_第2张图片
• 拼接三个不同尺度点云的CMLP输出,获得Final Latent Map M(dim=1920x3)
• 将M通过多层感知机MLP从(1920x3)变换成(1920x1),获得Final Feature Vector V

4.2 PPD(点云金字塔解码器)

  • PPD 的主要思想监督每一阶段的点云,提升关键点的生成质量,在关键点的基础上不断生成新的点云。
  • 借鉴图像处理中经典的SIFT算法,采用特征金字塔加粗样式的方式,对编码出的特征,进行多尺度的解码生成不同尺度的点云。现有方法大都利用最后一个输出层的结果来做预测,导致只保留了全局特征而丢失了局部特征。为了更好地保留细节,网络中设计多层的特征解码,使不同粒度的特征更好地保留
  • 【论文阅读】PF-Net: Point Fractal Network for 3D Point Cloud Completion_第3张图片
    • 将上一步获得的Final Feature Vector V通过三个FC(全连接)层,产生三个不同尺度的点云特征
    • 以为例,经过一系列操作(linear, reshape, convolution) 生成与采样后的Ground Truth点云数相同的生成点云,用于后续Loss部分的构建

4.3 损失函数(包含GAN鉴别器)

  • 损失函数由两部分组成:Multi-stage Completion Loss 和 Adversarial Loss
    在这里插入图片描述
  1. Multi-stage Completion Loss(Lcom):
    该损失衡量输出点云与真值之间的差别。
    【论文阅读】PF-Net: Point Fractal Network for 3D Point Cloud Completion_第4张图片
  • 引入计算两个点云间的距离公式(公式1)其中,S1可以表示生成的点云,S2可以表示Ground Truth,对于S1中的每个点,找到其与S2中距离最近的点,计算欧氏距离后求和取平均,作为距离公式的第一部分;第二部分相似,对于S2中的每个点,找到其与S1中距离 最近的点,计算欧氏距离后求和取平均。
  • 在PDD解码器中,生成了三个不同尺度的点云,将三个对应的值取不同权重相加,作为总体损失的一部分(公式2)
  1. Adversarial Loss(Ladv):
  • 该损失优化MRE和PPD,使输出看起来更加真实。
  • GAN鉴别器:GAN鉴别器是一个分类器,其结构与CMLP类似:对一个多层MLP[64−64−128−256]的最后三层的输出进行maxpool得到feature vector f_i, i= 1, 2, 3.将f_i连接得到F,F通过全连接层 [256,128,16,1]以及Sigmoid函数得带最终的预测值。
  • 假设GAN 鉴别器的输出为D(), 其输入为残缺部分点云的预测值y’或对应真值y
  • 此部分采用了对抗生成网络的经典思想,利用生成器和判别器进行整体的优化。文中将作为整体,看作生成器,构建多层感知机作为判别器,如图4。利用生成器,判别器构建对抗损失
    【论文阅读】PF-Net: Point Fractal Network for 3D Point Cloud Completion_第5张图片
  1. Joint Loss
    将以上两部分的Loss以不同权重相加,获得完整的Loss Function。
    在这里插入图片描述

5.实验分析

  • 实验结果显示PF-Net大部分对比中都是占优的,达到了 SOTA:
  • 可以看出PF-Net细腻地输出与GroudTruth最接近。
  • 从上图的桌子、椅子中可以看出,PF-Net 没有学习桌子椅子这些类别的一般(共性)特征,可以输出个体差异,比如特殊的缺角的桌子和背靠5根的椅子。
    【论文阅读】PF-Net: Point Fractal Network for 3D Point Cloud Completion_第6张图片
  1. Pred→GT error误差用于衡量预测与真实情况之间的差异,
  2. GT→Pred error表示真值表面被预测的点云覆盖的程度。
  3. PF-Net( vanilla)是指没有GAN鉴别器模块的版本
    【论文阅读】PF-Net: Point Fractal Network for 3D Point Cloud Completion_第7张图片
    对GAN鉴别器(Discriminator)的分析:
    鉴别器的功能是区分预测形状与缺失区域的真实轮廓,并优化网络以生成更“真实”的配置。
    上图两个表明,Discriminator可以帮助最小化Pred→GT error。 如上所述,Pred→GT衡量的是预测与实际情况之间的差异。 因此,Discriminator使PF-Net生成与地面实况更相似的点云。
  • 对CMLP的分析:
    为了证明CMLP的有效性,作者在ModelNet40 上训练了遵循相同线性分类模型的CMLP和其他提取器,并评估了它们的总体分类准确性。
    【论文阅读】PF-Net: Point Fractal Network for 3D Point Cloud Completion_第8张图片
    结果表明,CMLP对语义信息有更好的理解

  • 对MRE与PPD的分析:
    作者进一步将PF-Net(vanilla)与三种不同的基线进行了比较:单分辨率MLP,单分辨率CMLP, 和多分辨率CMLP。
    【论文阅读】PF-Net: Point Fractal Network for 3D Point Cloud Completion_第9张图片
    结果表明多分辨率对性能有提高

  • 鲁棒性测试:
    作者以三个分别损失了25%,50%和75%的不完整点云作为输入。 注意,三个输入的Pred→GT误差和GT→Pred误差基本上是相同的,这意味着当处理具有不同缺失程度的不完整输入时,我们的网络具有很强的鲁棒性。实验结果如表5所示。
    【论文阅读】PF-Net: Point Fractal Network for 3D Point Cloud Completion_第10张图片
    【论文阅读】PF-Net: Point Fractal Network for 3D Point Cloud Completion_第11张图片
    实验证明PF-Net可以准确地“识别”不同类型的飞机,即使在大规模不完整的情况下,也可以保留原始点云的几何细节:

【论文阅读】PF-Net: Point Fractal Network for 3D Point Cloud Completion_第12张图片
注意第二个两个机翼都缺失的情况下仍然可以补全。

论文链接:https://arxiv.org/abs/2003.00410
论文代码:https://github.com/zztianzz/PF-Net-Point-Fractal-Network

你可能感兴趣的:(论文,机器学习,深度学习)