论文一起读 | MeshGPT: 基于仅解码器注意力模型的三角网格生成方法

文摘   科技   2024-06-20 11:00   广东  

导读

本文是VCC许宏浩同学对论文 MeshGPT: Generating Triangle Meshes with Decoder-Only Transformers 的解读,该工作由慕尼黑工业大学、都灵理工大学以及奥迪公司合作完成,已发表在计算机视觉顶级会议CVPR 2024上。

项目主页:
https://nihalsid.github.io/mesh-gpt/

该工作提出了一种形状生成方法,能够直接生成三角网格,该方法能够生成干净、连续和紧凑的的网格结构,该生成方法显著地提升了网格生成的质量,能够在后续诸如视频、游戏、虚拟现实等应用中发挥更大作用。

注:本文图片均来自原论文与其项目主页。



I


 引言 
在计算机图形学中,三角网格是3D几何的主要表达形式,该表达被广泛应用于电影、游戏以及虚拟现实中。与点云或体素等其他3D形状表达相比,三角网格更可控、紧凑且可直接用于现代渲染管线。本工作旨在解决三角网格的生成任务,从而简化3D资产的制作流程。

近年来,3D形状生成取得了重大进展,这些方法生成的几何表达主要集中在体素 [1]、点云 [2]和神经场 [3];为了便于下游应用,这些几何表达通常需要通过后处理来转换成三角网格,例如使用Marching Cubes算法进行表面提取。然而,如图1所示,后处理生成的三角网格密度过高、划分过细,导致其表面过于平滑,容易丧失一些尖锐的几何特性。

图1 现有方法生成三角格质量

为了解决上述问题,本工作提出了一种直接生成三角网格的方法。受文本生成模型的启发,本工作将三角网格的生成视作一组三角面片序列的生成。遵循文本生成的范式,本工作首先从大量的3D物体网格中学习三角面片的几何嵌入词汇表,从而能够对三角面片进行编码和解码;随后,基于学习到的词汇表,本工作通过训练一个transformer模型自回归地生成表示网格的三角面片序列。与现有技术相比,该工作显著地提高了三角网格的生成质量。

II


 技术贡献 

本工作主要贡献如下:

  • 提出了一种三角网格生成的新范式,直接生成三角面片序列;

  • 提出了一种三角面片的表征方法,可以将一组三角面片表征为几何嵌入词汇表中的一组几何嵌入,以便于自回归地生成连续的具有锐利边缘的紧凑网格


III


 方法介绍 
MeshGPT方法由词汇表学习和自回归网格生成两部分构成。本工作首先从大量的3D形状中学习几何嵌入词汇表,这是通过编码器-解码器网络完成的,该网络的瓶颈是一个向量量化模块,通过词汇表学习模块,我们能将组成网格的一组三角面片编码为一组量化的几何嵌入;随后,本工作训练一个GPT风格的仅解码器的transformer模型,给定上述的几何嵌入序列,该transformer模型的训练目标是预测序列中下一个几何嵌入的词汇表索引。

经过训练后,该transformer模型能够自回归地采样以预测几何嵌入序列,这些几何嵌入序列可以被解码组成最终表达物体几何的网格结构。

词汇表学习

图2 词汇表学习


如图2所示,整个词汇表学习由三部分构成:编码器、解码器以及量化模块。给定输入的三角网格   其中  表示该网格的三角面片数量,  表示相应三角面片的几何特征,包括三角面片的顶点坐标、三条边之间的夹角以及面片的法相和面积,三角面片之间的顺序按照每个面片最低顶点的高度信息从低往高排;该方法首先将三角网格输入至一个图卷积编码器中,其中每个三角面片构成一个节点,相邻的三角面片由一条无向边连接,使用图卷积的设计能够考虑面片之间的邻接信息,从而能够有效地对每个面片提取几何丰富的特征  
在量化模块中,对于每个面片的编码特征   作者首先将其沿着特征通道划分成三个顶点特征,并对共享顶点的特征进行聚合,随后通过词汇表量化这些基于顶点的特征,最终把每个面片的三个顶点的特征聚合起来构成每个面片的量化嵌入 

在解码器模块,每个面片嵌入输入至一个ResNet34解码器中,输出9个坐标表示相应重建的三角面片 需要注意的是,将这些坐标预测为离散变量,即一组离散值的概率分布,相较于实值回归可以重建出更高质量的三角网格。整个词汇表学习的损失函数由三角网格离散坐标的交叉熵损失以及几何嵌入词汇表的承诺损失组成。

自回归网格生成

图3 自回归网格生成


如图3所示,本工作采用GPT风格的仅解码器的Transformer架构,将三角网格预测为几何嵌入词汇表中的索引序列。该Transformer的输入包含使用图卷积编码器和残差量化模块提取的几何嵌入序列,这组嵌入序列会被拍平并且使用开始和结束token进行标记;该Transformer通过预测序列中下一个几何嵌入在词汇表中的索引来进行训练。

经过训练后,该Transformer模型能够自回归地生成一组几何嵌入的索引序列,这组索引对应一组几何嵌入序列,我们可以将其输入至解码器中来生成最终的三角网格。


IV


 部分结果展示 
下图展示了本工作在ShapeNet数据集的椅子和桌子类别上的对比生成结果。相较于以往工作,本文方法能够生成连续的保留锐利边缘的紧凑网格,同时保留了更多几何细节。

图4 椅子和桌子的生成质量对比


除此之外,如下图所示,MeshGPT还能根据给定的局部形状推断多种可能的补全方案。

图5 形状补全

V


 总结与展望 
MeshGPT是一种新颖的形状生成的方法,能够直接生成三角网格。与现有的网格生成方法相比,本工作能够生成更加干净、连续、紧凑的三角网格,更加符合真实数据中的三角剖分模式。该工作也面临一些局限性:该方法是通过自回归的方式生成三角网格,因此面临生成时间过长的问题,通常生成一个物体需要30-90秒的时间,该方法可能无法有效地解决场景生成的任务,因此如何在场景生成的任务上结合该生成范式是一个值得探索的方向。

VI


 思考与讨论 
Q: 为什么不直接用三角面片顶点坐标作为tokens进行生成? 
A: 直接使用坐标作为token主要有以下两个问题:(1) 序列长度过长;(2) 使用坐标作为token无法有效捕捉形状的几何模式,同时该表示也缺少有关相邻三角面片的信息。

Q: 该方法是否只是记住了数据集内的形状? 
A: 如下图展示了与MeshGPT生成的样本相对应的训练集中最相似的物体,可以发现该方法能够生成新颖且逼真的几何形状。
图6 形状新颖性展示

以下是开放性问题,欢迎读者朋友留言讨论: 
Q: 目前论文的实验部分只提供了ShapeNet四个类别(椅子、桌子、长凳、灯)的实验结果,可以发现这些类别的物体都是高度对称、且具有明显锐利边缘的物体,如果需要生成一些表面比较平滑的形状,比如衣服、人体等,该方法又会生成怎样的结果呢?

-- End--



导 读 | 许宏浩
审 核 | 胡瑞珍
编 辑 | 申


参考文献

[1] Jiajun Wu, Chengkai Zhang, Tianfan Xue, Bill Freeman, and Josh Tenenbaum. Learning a probabilistic latent space of object shapes via 3D generative-adversarial modeling. Advances in Neural Information Processing Systems (NeurlPS). 82-90, 2016.

[2] Shitong Luo and Wei Hu. Diffusion probabilistic models for 3D point cloud generation. Conference on Computer Vision and Pattern Recognition (CVPR). 2837-2845, 2021. 

[3] Muheng Li, Yueqi Duan, Jie Zhou, and Jiwen Lu. Diffusionsdf: Text-to-shape via voxelized diffusion. Conference on Computer Vision and Pattern Recognition (CVPR). 12642-12651, 2023.




深圳大学可视计算研究中心
Visual Computing Research Center
----------------------------------
https://vcc.tech


中心以计算机图形学、计算机视觉、可视化、机器人、人工智能、人机交互为学科基础,致力促进多个学科的深入交叉与集成创新,重点推进大规模静动态数据获取与优化融合、多尺度几何建模与图像处理、可视内容生成与仿真渲染、复杂场景重建与识别理解、三维移动协同感知与人机交互、智能模拟学习与强化认知、海量信息可视化与可视分析等方面的科学研究。

📫
转载及合作:szuvcc@gmail.com


深圳大学可视计算研究中心
深圳大学可视计算研究中心致力于大力提升可视计算科学研究与高等教育水平,以计算机图形学、计算机视觉、人机交互、机器学习、机器人、可视化和可视分析为学科基础,促进多个学科的深入交叉和集成创新。详见官网: vcc.tech
 最新文章