30秒生成建模师级Mesh!最大可生成面数提升至1600,GitHub揽星1.9k项目发布V2版本

时间:2024-08-20 01:33:45编辑:揭秘君

只需30 秒,AI 就能像 3D 建模师一样,在各种指示下生成高质量人造 Mesh。

NeRF、3D Gaussian Splatting 生成的三维重建图像 Mesh 效果如下:

点云造出精细 Mesh:

Dense Mesh 基础上生成也可以:

一张图,甚至文本描述就足够了:

GitHub 已揽星 1.9k 的MeshAnything项目上新了 V2 版本,由来自南洋理工大学、清华大学、帝国理工学院、西湖大学等研究人员完成。

MeshAnything V2 相比 V1,使用了最新提出的Adjacent Mesh Tokenization(AMT)算法,将最大可生成面数从 800 提升到了 1600。

相比之前的 Mesh tokenization 方法,AMT 平均只需要一半长度的 token sequence 即可表达同一个 Mesh。

这项研究一经发布也迅速得到不少网友关注。

那么,MeshAnything 究竟是一种怎样的方法?MeshAnything V2 做了哪些改进?

高度可控的人造 Mesh 生成

值得注意的是,虽然 AI 很早就能够生成 Mesh 了,但这与上面所展示的生成人造 Mesh 有着巨大区别。

团队表示,所有之前方法,例如 Marching Cubes 和 Get3D,生成的 Mesh 都是面片非常稠密的 Mesh,面片数往往是人造 Mesh 的数百倍,几乎不可能应用于游戏,电影等实际 3D 工业。

并且由于它们的面片结构不符合人类直觉,3D 建模师很难再对其进行细致的加工。

如下图所示,这一问题没法简单地依靠 remesh 来解决,在不影响效果的前提下,remesh 方法虽然仅仅能够小幅度地减少面片:

而上述问题直接影响了 3D 研究应用于工业界。

3D 工业界的 pipeline 几乎全以人造 Mesh 作为 3D 表征,即使 3D 研究领域能产出精度极高的 NeRF 或者 3D Gaussian,但没法将它们转化为工业界能应用的 Mesh 的话,应用将十分受限。

因此,之前研究团队提出了 MeshAnything,旨在实现高度可控的人造 Mesh 生成。

MeshAnything 是一个自回归的 transformer,其将 Mesh 的每个面片视作 token,整个 Mesh 被视作 token 序列,接着像大语言模型一样,一个 token 一个 token 地生成,最终生成出整个 Mesh。

MeshAnything 运用精妙的 condition 设计,其将点云作为 condition 来实现高度可控的人造 Mesh 生成:

MeshAnything 以点云为 condition 的设计让其可以与诸多 3D 扫描,3D 重建,3D 生成的方法结合。

这些种类繁多的方法最终得到的 3D 表示虽然多样,但总能从中采样到点云,从而输入到 MeshAnything 中转为人造 Mesh,帮助这些能输出 3D 模型的工作运用到实际 3D 工业中。

另外,这种设计还大大降低了 MeshAnything 的训练难度,提高了效果。因为点云提供了精细的 3D 形状信息,MeshAnything 不需要去学习复杂的 3D 形状分布,只需要学习如何搭建出符合给定点云的人造 Mesh。

MeshAnything V2 有何提升?

MeshAnything V2 在 V1 版本的基础上大幅度提高了性能,并将最大可生成面数 800 提升到了 1600。

其主要提升来源于其新提出的 Adjacent Mesh Tokenization(AMT)算法。

相比之前的 Mesh tokenization 方法,AMT 平均只需要一半长度的 token sequence 即可表达同一个 Mesh

由于 transformer 的计算是 n^2 复杂度,一半长度的 token sequence 意味着降低了 4 倍的 attention 计算量。并且 AMT 得到的 token sequence 更加紧凑,结构更好,更有利于 transformer 的学习。

AMT 是通过尽可能地仅仅用一个 vertex 来表达一个一个面片来实现上述进步的:

上图清晰地表达出了 AMT 的运作过程,其通过优先表达相邻的面片来用 1 个 vertex 表达一个面片。当不存在相邻的没表达过的面片,AMT 添加一个特殊 token "&" 来标识这一情况并重新开始。

在 AMT 的帮助下,V2 在性能和效率上大幅超过之前的方法,实现了高质量的人造 Mesh 生成。

在训练数据上,MeshAnything 使用 ShapeNet 和 Objaverse 中的人造 Mesh,将这些 Mesh 展开成 token sequence 之后使用 cross-entropy loss 监督。

V1 和 V2 都仅仅使用了 350m 的 transformer 架构,100K 的训练数据就得到了以上结果,表明该方向还有非常大 scale up 潜力。

更多结果如下:

V1 项目主页 : ?

https://buaacyw.github.io/mesh-anything/

V2 项目主页 :

https://buaacyw.github.io/meshanything-v2/

— ?? —

投稿请发邮件到:

ai@qbitai.com

标题注明【投稿】,告诉我们:

你是谁,从哪来,投稿内容?

附上论文 / 项目主页链接,以及联系方式哦

我们会(尽量)及时回复你

点这里关注我,记得标星哦~

一键三连「分享」、「点赞」和「在看」

科技前沿进展日日相见 ~ ?

上一篇:六部:经典韩国,超尺度,满天星电影,

下一篇:专家:5G网速比4G快7倍 但体验没什么差别