SuperAPI AI 工具集

3DTopia

3DTopia 是一个两阶段的文本到3D生成模型,第一阶段使用扩散模型快速生成候选3D资产,第二阶段对选定的候选资产进行细化,声称可在5分钟内完成文本到3D生成。

访问官网

工具介绍

3DTopia 是一个两阶段的文本到3D生成模型。第一阶段使用扩散模型快速生成候选3D资产,第二阶段对从第一阶段选择的资产进行细化。该模型于2024年1月18日发布。

用途:用于文本到3D生成,可在5分钟内完成。

主要能力:

  • 第一阶段:使用扩散模型快速生成候选3D资产。支持通过命令行参数控制采样(如 --sampler 可设置为 ddim 进行 DDIM 采样,默认使用1000步 DDPM 采样)、采样步数(--steps 仅对 DDIM 有效)、样本数量(--samples)、输入文本(--text)、随机种子(--seed)等。默认启用渲染多视角视频和 marching cubes,可通过 --no_video 和 --no_mcubes 抑制,可通过 --mcubes_res 控制 marching cubes 的3D体素分辨率,通过 --render_res 控制渲染视频分辨率。结果位于 results 文件夹下。
  • 第二阶段:对第一阶段选定的资产进行细化,分为两个步骤。示例中细化后的网格可在 results/default/stage2/a_robot_0_0_if2.glb 找到。详细使用请参考 threefiner。

使用方式:

  1. 安装环境:推荐使用 Anaconda 管理环境。
  2. 安装第二阶段细化器:请参考 threefiner 安装第二个阶段的网格细化器。已测试使用 Pytorch 1.12.0 和 CUDA 11.3 同时安装两个环境。
  3. 下载检查点(可选):gradio_demo.py 和 sample_stage1.py 已实现自动下载检查点。如需手动下载,可从 huggingface 下载 checkpoint 3dtopia_diffusion_state_dict.ckpt 或 model.safetensors。
  4. 运行第一阶段:使用命令行运行 sample_stage1.py,具体参数如上所述。
  5. 运行第二阶段:参考 threefiner 进行两个步骤的细化。

适用场景:文本到3D生成,快速生成3D资产。

限制:

  • 若在第二阶段遇到 ImportError: /lib64/libc.so.6: version 'GLIBC_2.25' not found 错误,可尝试安装较低版本的 pymeshlab:pip install pymeshlab==0.2。
  • 其他限制暂未提供。

其他信息:

  • 2024/03/10:Objaverse 的 captions 已发布。
  • 2024/03/04:技术报告已发布。
  • 2024/01/18:发布文本到3D模型 3DTopia。

致谢:感谢社区构建并开源了本工作的基础,特别感谢 EG3D、Stable Diffusion 的代码,以及 Objaverse 提供的数据集。