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

news2024/9/23 23:27:12

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精英的学习成长社区

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【人工智能】横扫市场的巨星大模型:探秘当今最热门的AI力量(14)

今年,ChatGPT成了大家的明星,简直是个神奇的助手!问什么问题,都秒回,写各种文字、甚至代码,简直是工作利器。而国内这半年AI领域热度不减,涌现了一批新公司和产品,大厂也在风头上。A…

【学习笔记】TypeScript编译选项

TS 中的编译选项 我们写了一个TS的文件,我们需要使用如下的命令将我们的TS文件转换为JS文件。 tsc xxx.ts 这样会产生一个对应的js文件 自动编译文件 编译文件时,使用 -W 指令后,TS编译器会自动监视文件的变化,并在文件发生变…

MySQL篇之定位与优化MySQL慢查询

一、如何定位慢查询 1.方案一:开源工具 调试工具:Arthas。 运维工具:Prometheus 、Skywalking。 2.方案二:MySQL自带慢日志 慢查询日志记录了所有执行时间超过指定参数(long_query_time,单位:…

Habitat环境学习四:Habitat-sim基础用于导航——使用导航网格NavMesh

如何使用导航网格NavMesh 官方教程1、NavMesh基础定义1.1 使用NavMesh的原因1.2 什么是NavMesh 2、NavMesh的使用方法2.1 获取自上而下Top down view视角地图2.2 在NavMesh中进行查询以及随机产生可导航点2.3 查找最短路径2.4 场景加载NavMesh2.5 重新计算并生成NavMesh2.6 什么…

python-分享篇-画樱花

文章目录 画樱花代码效果 画樱花 代码 from turtle import * from random import * from math import *def tree(n,l):pd()#下笔#阴影效果t cos(radians(heading()45))/80.25pencolor(t,t,t)pensize(n/3)forward(l)#画树枝if n>0:b random()*1510 #右分支偏转角度c ran…

openGauss学习笔记-216 openGauss性能调优-确定性能调优范围-硬件瓶颈点分析-CPU

文章目录 openGauss学习笔记-216 openGauss性能调优-确定性能调优范围-硬件瓶颈点分析-CPU216.1 CPU216.2 查看CPU状况216.3 性能参数分析 openGauss学习笔记-216 openGauss性能调优-确定性能调优范围-硬件瓶颈点分析-CPU 获取openGauss节点的CPU、内存、I/O和网络资源使用情况…

神经网络 | 常见的激活函数

Hi,大家好,我是半亩花海。本文主要介绍神经网络中必要的激活函数的定义、分类、作用以及常见的激活函数的功能。 目录 一、激活函数定义 二、激活函数分类 三、常见的几种激活函数 1. Sigmoid 函数 (1)公式 (2&a…

Open CASCADE学习|点和曲线的相互转化

目录 1、把曲线离散成点 1.1按数量离散 1.2按长度离散 1.3按弦高离散 2、由点合成曲线 2.1B样条插值 2.2B样条近似 1、把曲线离散成点 计算机图形学中绘制曲线,无论是绘制参数曲线还是非参数曲线,都需要先将参数曲线进行离散化,通过离…

JavaScript综合练习1

JavaScript 综合练习 1 1. 循环嵌套 两个以上的循环进行套娃。 1.1. 语法 for (外部声明记录循环次数的变量; 循环条件; 变化值) {for (内部声明记录循环次数的变量; 循环条件; 变化值) {循环体;} }2. 倒三角 2.1. 案例 2.2. 代码实现 // 外层打印几行 for (let i 1; i …

【高阶数据结构】位图布隆过滤器

文章目录 1. 位图1.1什么是位图1.2为什么会有位图1.3 实现位图1.4 位图的应用 2. 布隆过滤器2.1 什么是布隆过滤器2.2 为什么会有布隆过滤器2.3 布隆过滤器的插入2.4 布隆过滤器的查找2.5 布隆过滤器的模拟实现2.6 布隆过滤器的优点2.7 布隆过滤器缺陷 3. 海量数据面试题3.1 哈…

在windows的控制台实现贪吃蛇小游戏

欢迎来到博主的文章 博主id:代码小豪 前言:看懂这篇文章需要具有C语言基础,还要对单链表具有一定的理解。如果你只是想要试玩这个游戏,可以直接在文章末尾找到源码 由于实现贪吃蛇需要调用Win32 API函数,这些函数我会…

vue3项目中的404页面

vue3项目中的404页面 春节前的最后一篇技术博客了 写了不少vue项目,发现一直没有正确处理404页面。404页面的出现有这么几种可能: 错误输入了页面地址路由连接跳转时,某些路由已经不存在了,而程序员并没有正确处理 也就是说40…

jvm问题自查思路

本文聊一下最近处理了一些jvm的问题上,将这个排查和学习过程分享一下,看了很多资料,最终都会落地到几个工具的使用,本文主要是从文档学习、工具学习和第三方技术验证来打开认知和实践,希望有用。 一、文档 不仅知道了…

假期刷题打卡--Day26

1、MT1212乘法表 请编写一个简单程序,输出九九乘法表。输入n,就输出乘法表到n的地方。 格式 输入格式: 输入整型 输出格式: 输出整型。形式如:1*11 样例 1 输入: 5输出: 1*11 2*12 …

编曲入门软件哪个好 编曲入门教程 Studio One哪个版本好 Studio One6.5正版多少钱 FL Studio下载

新手编曲软件推荐?新手学编曲要先熟悉编曲逻辑,因此需要选择编曲逻辑简明易懂的宿主软件。编曲新手应该做哪些准备?准备好编曲设备、宿主软件、基础乐理学习资料。 一、编曲入门软件哪个好 新手入门阶段还没有形成系统的编曲思维&#xff0…

整合 Axios

大家好我是苏麟 , 今天聊一下Axios . Axios Axios 是一个基于 promise 网络请求库,作用于node.js 和浏览器中。 它是 isomorphic 的(即同一套代码可以运行在浏览器和node.js中)。在服务端它使用原生 node.js http 模块, 而在客户端 (浏览端) 则使用 XMLHttpReques…

七、Nacos源码系列:Nacos服务发现

目录 一、服务发现 二、getServices():获取服务列表 2.1、获取服务列表 2.2、总结图 三、getInstances(serviceId):获取服务实例列表 3.1、从缓存中获取服务信息 3.2、缓存为空,执行订阅服务 3.2.1、调度更新,往线程池中…

【算法】{画决策树 + dfs + 递归 + 回溯 + 剪枝} 解决排列、子集问题(C++)

文章目录 1. 前言2. 算法例题 理解思路、代码46.全排列78.子集 3. 算法题练习1863.找出所有子集的异或总和再求和47.全排列II17.电话号码的字母组合 1. 前言 dfs问题 我们已经学过,对于排列、子集类的问题,一般可以想到暴力枚举,但此类问题用…

基于Chrome插件的Chatgpt对话无损导出markdown格式(Typora完美显示)

刚刚提交插件到Chrome插件商店正在审核,想尝试的可以先使用: https://github.com/thisisbaiy/ChatGPT-To-Markdown-google-plugin/tree/main 我将源代码上传至了GitHub,欢迎star, IssueGoogle插件名称为:ChatGPT to MarkDown plus…

海外云手机——平台引流的重要媒介

随着互联网的飞速发展,跨境电商、短视频引流以及游戏行业等领域正经历着迅猛的更新换代。在这个信息爆炸的时代,流量成为至关重要的资源,而其中引流环节更是关乎业务成功的关键。海外云手机崭露头角,成为这一传播过程中的重要媒介…