知乎原文:
https://zhuanlan.zhihu.com/p/265319518
项目主页:
https://hyperplane-lab.github.io/Generative-3D-Part-Assembly/
论文链接:
https://arxiv.org/pdf/2006.07793.pdf
代码仓库:
https://github.com/Championchess/Generative-3D-Part-Assembly
01
引言
三维形状的部件拼装,是计算机视觉、图形学领域的基本问题。如图1所示,三维部件拼装在数学上可以形式化为对于各个输入部件的位姿估计(pose estimation)问题,即给定各个部件在各自规范空间(canonical space)中的布局,目标是组成一个完整的形状。三维部件拼装有着很广泛的应用,比如从家具城买回来一堆家具的部件,或者工厂当中有一堆杂乱摆放的零件,这时候则需要机器人把这些零散的部件组装成完整的、可供使用的整体。
尽管目前已有很多工作利用深度学习方法进行部件拼装,然而这些方法都至少有以下几个局限性之一:1. 每个部件的几何形状都可以任意生成,没有限制;2. 假设了每个部件初始的时候都是已经旋转好了的;3. 假设机器人知道关于整个三维几何形状的先验知识。为了让训练出来的模型能够更好地在真实的场景中完成部件拼装的任务,在我们的任务设定当中,每个部件的几何形状都是给定、不能更改的,机器人不知道关于整体形体的任何先验知识,并且需要预测每个给定输入部件的包括旋转、平移在内的六自由度位姿。
为解决这一新设定下的部件拼装问题,我们提出了一个基于迭代式图神经网络(iterative graph neural network)的动态图神经网络学习(dynamic graph learning)的框架。在这一框架下,机器人通过对各个部件几何形状的观察和推理去隐式学习各个部件之间的关系,并将这一隐式学到的部件关系应用到部件拼装任务当中,甚至达到了比使用给定各部件之间真实连接关系更好的效果。这一框架,为分析机器学习过程中“机器是如何学习的”,提供了启示。
方法
给定一个原始的三维点云 ,我们的目标是对每一个输入的部件 去预测一个六自由度的部件位姿 ,用预测的位姿对每一个输入的部件 做变换得到变换后的部件 ,这些变换后的部件则一起构成机器人最终拼装出来的三维几何体 。
我们的架构由迭代式的图神经网络骨架(iterative graph neural network backbone)、动态关系推理模块(dynamic relation reasoning module)和动态部件聚合模块(dynamic part aggregation module)组成,总的框架结构如图2所示。
迭代式的图神经网络骨架:我们在每一轮迭代的时候对图中每一个结点做一次信息传递(message passing)以更新这个结点的潜表达:
其中, 是点 j 传递给点 i 的信息。此外,我们还根据当前轮每个结点的潜表达、上一轮对这个结点代表部件的位姿预测、这个结点代表部件初始几何信息去更新这个结点代表部件的位姿预测:
动态关系推理模块:每一轮迭代时,我们根据当前图的各个结点代表部件的位姿去动态更新图中边的权重:
并按照当前图中边的权重加权对每一个结点做信息传递以更新这个结点的潜表达:
动态部件聚合模块:偶数轮迭代时,我们把代表每种等价类部件(geometrically-equivalent parts)的结点聚合成一个结点 ,从而在一个稀疏点集(sparse node set)上进行信息传递;奇数轮迭代的时候,我们又把这些聚合了的结点分开(unpool)成独立的结点,从而在稠密点集(dense node set)上进行信息传递。
以上各个模块具体的实现和训练细节请参见论文。
03实验结果
我们的实验是在 PartNet [1] 数据集上进行的。我们和之前一些方法(如 ComplementMe [2], PQ-Net [3] 等)的变体以及我们自己方法的几个变体都进行了对比,展示了定性和定量的结果,证明了我们的方法在部件拼装任务中的优越性。图3展示了定性的对比结果(左),此外,利用 VAE 类似的思想,我们的方法还可以产生多模态的输出(右)。
总结
本文提出了一种更贴近实际的(practical)的部件拼装问题,并设计了一个基于动态图网络学习的可以生成多模态拼装的方法。我们的方法揭示了动态图网络学习在部件拼装任务中的优越性,并为分析“机器是如何学习的”提供了思路。未来可能的研究方向包括考虑融合部件关节信息以及更高阶的部件之间的信息等来达到更好的部件拼装效果。
参考文献
[1] Kaichun Mo, Shilin Zhu, Angel X Chang, Li Yi, Subarna Tripathi, Leonidas J Guibas, and Hao Su. Partnet: A large-scale benchmark for fine-grained and hierarchical part-level 3d object understanding. CVPR, 2019.
[2] Minhyuk Sung, Hao Su, Vladimir G Kim, Siddhartha Chaudhuri, and Leonidas Guibas. Complementme: weakly-supervised component suggestions for 3d modeling. ACM TOG, 36(6):1–12, 2017.
[3] Rundi Wu, Yixin Zhuang, Kai Xu, Hao Zhang, and Baoquan Chen. Pq-net: A generative part seq2seq network for 3d shapes. CVPR, 2020.