【点云系列】Learning Representations and Generative Models for 3D pointclouds

文章目录


清理一些之前的草稿箱,写了一半忘记写完发布,望大家见谅。不过鉴于已经有好几个人翻译了全文,不懂的可以参考去看看,这篇文章真的算作点云生成模型的鼻祖了。妥妥的斯坦福出品,验证试验是真的多。基本在告诉我们高斯混合模型的好用。

1. 概要:

2018CVPR 会议论文,也算是先驱作品了。
论文:http://proceedings.mlr.press/v80/achlioptas18a/achlioptas18a.pdf
补充材料:http://proceedings.mlr.press/v80/achlioptas18a/achlioptas18a-supp.pdf
代码:https://github.com/optas/latent_3d_points

本文要点

  • 研究点云的表示方法,主要使用deep AutoEncoder。

  • 对比了不同的生成模型,l-GAN要好多GMMs

    模型包括
    1)GANs:直接作用于原始点云;
    2)l-GANs(latent-GANs):直接作用在潜在空间的点云特征,用AE先提取潜在空间点云特征;
    3)GMMs:高斯混合模型

    评估方法
    1)样本保真度;
    2)覆盖率度量;

2. 贡献点:

  • 一种新的点云AE框架;
  • 第一套点云深度生成模型;
  • 新的衡量指标,基于两个不同的点云集合之间的最佳匹配;

3. 衡量方式:

3.1 度量

1) EMD:测地距离

限制:两个点集数量需要一致,是两个集合之间的运输问题,一一对应。
优点:几乎处处可微
【点云系列】Learning Representations and Generative Models for 3D pointclouds

2) CD:近邻度量

优点:度量一个集合与另一个集合最近邻的平方,不限制两个集合数量相同。且计算较EMD更高效。
【点云系列】Learning Representations and Generative Models for 3D pointclouds

3.2 生成模型度量方式

1) JSD:

欧几里得三维空间边界分布的简森-香农散度(Jensen-Shannon Divergence )
用来衡量两个分布的相似度
【点云系列】Learning Representations and Generative Models for 3D pointclouds

2) Converage:

覆盖率的计算:用B与A的匹配比例来衡量。本质也是计算距离得到。所以计算是否相似仍然需要用到基础度量CD或EMD。
点级别的距离计算公式; EMD几乎处处可微,但CD可微且计算更为高效;

  1. Earth Mover’s distance(EMD)
    【点云系列】Learning Representations and Generative Models for 3D pointclouds

  2. Chamfer(pseudo)distance(CD)
    【点云系列】Learning Representations and Generative Models for 3D pointclouds

3) 最小匹配距离(Minimum Matching Distance,MMD)

MMD可以通过测量A对B的保真度,弥补 覆盖率的缺点(不能准确指示几何A中覆盖的有多好)

比较

MMD与Coverage互补。在MMD小Cov大的情况下,点云A集合以良好的保真度捕获了B的所有模式。
JSD是计算分布相似性的,因此其是粗略的评估两个集合之间的相似性。JSD与MMD有很好的相关性,可以作为一个有效的替代方式。

4. 表示与生成模型

基本块
AEs:重新编码输入的架构。可以用压缩后的特征 z z z来表达原始点云。可用于重建任务。
【点云系列】Learning Representations and Generative Models for 3D pointclouds
GANs:基础架构:生成器G和判别器D。
G:生成与真实数据无法区分的样本,通过将一个简单分布中 随机抽取的样本传递给生成器函数。
D:把合成的样本与实际样本区分开;
【点云系列】Learning Representations and Generative Models for 3D pointclouds
GMM:一种概率模型,用于表示一个假设分布为多模态高斯分布的种群,即由多个子种群组成,其中每个子种群都服从高斯分布。假设已知子种群数量,利用期望最大化(EM)算法可以从随机样本中学习GMM参数(其实也就是高斯分布的均值和方差)。

4.1 原始GAN模型(r-GAN):

训练数据集:20483点云
判别器:结构与AE相同,没有用任何Batch-Norm,使用Leaky ReLU,最后一个全连接层输出送入到sigmoid激活函数。
生成器:高斯噪声为输入,5个FC-ReLu层映射到2048
3输出

4.2 隐空间GAN(l-GAN):

先训练好一个AE,然后使用AE的编码器获得隐表达特征Z。
生成器与判别器都是基于Z来进行操作。优化隐表达特征Z。
优势:结构简单。具体来说,单个隐藏层MLP的生成器与两个隐藏层MLP判别器耦合,足以产生可测量性良好和真实的结果。

4.3 高斯混合模型(GMM):

在AE学习的隐空间建立一系列高斯混合模型(GMMs)。
尝试了各种数量的高斯分量和对角或完全协方差矩阵。
通过首先对配置的分布进行采样然后使用AE的解码器, GMM可以看成是点云生成器,类似l-GANs。

5. 实验评估

数据集

ShapeNet:轴对齐且居中与单位球体中。数据分为85%:5%:10% = 训练:验证:测试。
JSD测评使用的是283常规体素网格。

AE重建

代表性能力
使用AE潜空间上的简单加法代数编辑点云中的部分后的效果。

形状编辑:公式如下,效果如下图3,参考(Yi et al. 2016a)
【点云系列】Learning Representations and Generative Models for 3D pointclouds
假定给定类别可以进一步划分为两个子类:A 与B,两者有彼此没有的结构特征,可以通过它们的平均潜在表示 X B − X A \mathbf{X}_B-\mathbf{X}_A XB​−XA​的差异来模拟两个子类之间的差异。 同理可以通过 x A ′ = x A + X B − X A x_{A'}=x_A+\mathbf{X}_B-\mathbf{X}_A xA′​=xA​+XB​−XA​。参见下图3。
【点云系列】Learning Representations and Generative Models for 3D pointclouds
泛化性:重建后的几乎与训练的形状一样好。使用MMD捕获AE的泛化性说明。
【点云系列】Learning Representations and Generative Models for 3D pointclouds
潜空间探索:线性插值
对两个形状的隐表达进行线性插值后将结果进行解码,获得两个形状之间的中间变体(morph-like)。
【点云系列】Learning Representations and Generative Models for 3D pointclouds
形状补全
【点云系列】Learning Representations and Generative Models for 3D pointclouds
分类
训练来自55个类别的人造物体的57,000个模型。 专门针对此实验,我们使用512维度的特征。使用线性SVM进行分类,下表显示效果。可以看到简单AE效果就不错。
【点云系列】Learning Representations and Generative Models for 3D pointclouds
表2 ModelNet10 / 40上的分类性能(%)。 比较A:SPH(Kazhdan等人,2003),B:LFD(Chen等人,2003),C:TL-Net(Girdhar等人,2016),D:VConv-DAE(Sharma等人。 ,2016),E:3D-GAN(Wu等,2016)。

这里的SVM分类器的AE使用一个编码器,每层对应滤波器:128,128,256,512个,分别有1024,2048,2048*3个神经元的解码器。每层使用BatchNorm。沿Z轴旋转到每批输入点云来实现在线数据增强。训练1000轮的CD损失和1100轮的EMD。分类一些参数见下表。
【点云系列】Learning Representations and Generative Models for 3D pointclouds

评估生成模型

各类方法比较如下表,在验证-分割上通过最小JSD选择epochs/模型,在椅子数据集的测试分割上评估5个生成器。 我们报告:A:基于采样的记忆基线,B:r-GAN,C:1-GAN(AE-CD),D:1-GAN(AE-EMD),E:1-WGAN(AE-EMD), F:GMM(AE-EMD)。可以看到GMM效果最好。
【点云系列】Learning Representations and Generative Models for 3D pointclouds

图6显示了随着训练的进行,生成的合成数据集与基于GAN的模型的保持测试数据之间的JSD(左)和MMD和覆盖率(右)。
注意:r-GAN努力提供测试集的良好覆盖率和良好保真度; 这暗示了一个公认的事实,即端到端的GAN通常很难训练。
在训练较少的情况下,l-GAN (AE-CD)在保真度方面表现更好,但覆盖率仍然很低。切换到基于EMD的AE用于表示并且使用相同的潜在GAN架构(l-GAN,AE-EMD),产生覆盖率和保真度的显着改善。两个l-GAN虽然遭受模式崩溃的已知问题:训练进行到一半时,第一个覆盖率开始下降,但保真度仍然处于良好水平,这意味着它们对一小部分数据进行了过度拟合。后来,随之而来的是灾难性的崩溃,覆盖率下降至0.5%。 正如预期的那样,切换到潜在的WGAN在很大程度上消除了这种崩溃。
【点云系列】Learning Representations and Generative Models for 3D pointclouds
图7解释了 CD距离的盲目性,其挺不爽很有那么有判别性。只对部分良好匹配有额外副作用,也就是覆盖率CD>覆盖率EMD的时候。
【点云系列】Learning Representations and Generative Models for 3D pointclouds

【点云系列】Learning Representations and Generative Models for 3D pointclouds

6. 其他

形状类比:

这里通过在隐空间 进行线性操作+欧几里得最近邻搜索 找到类似的形状,证明了隐空间的欧几里得性质。
具体:已知 A A A , A ′ A' A′,和 B B B, 那么 B ′ = B + ( A ′ − A ) B' = B + (A' - A) B′=B+(A′−A),也就是在搜在 B B B潜在空间当中与 B ′ B' B′最近邻的结果。可用于寻找形状类比。如下图所示。
【点云系列】Learning Representations and Generative Models for 3D pointclouds

自动编码人

数据集D-FAUST:10个人,每人14个运动,每个运动由300个网格的时间序列捕获。
本实验:随机采样80个网格,每个网格提取4096个点云。下图展示了插值的效果。
【点云系列】Learning Representations and Generative Models for 3D pointclouds
【点云系列】Learning Representations and Generative Models for 3D pointclouds

参数选择

其他详细参数见论文

GMM
结论:具有完全协方差矩阵的模型实现比使用对角协方差训练的模型JSD小得多。
使用完全协方差矩阵式,30个或更多的集群似乎已经足够得到最小的JSD。
【点云系列】Learning Representations and Generative Models for 3D pointclouds

局限

罕见形状的椅子会不正确地被解码。
AE可能错过高频几何细节,无法重建不常见的例子。
【点云系列】Learning Representations and Generative Models for 3D pointclouds

7. 参考

  1. 论文翻译
  2. 论文翻译2
上一篇:Redis中的Reactor 模型的工作机制


下一篇:修改camunda数据库配置