AI 日报

Shape-E 教程:如何设置和使用 Shap-E 模型

  • By aihubon
  • Dec 19, 2023 - 2 min read



Shape-E 教程:如何设置和使用 Shap-E 模型

什么是E型?

Shap-E 是 OpenAI 开发的突破性模型,使用文本或图像作为输入生成一系列 3D 对象,以其创新方法改变了 3D 应用领域。这项非凡的技术可以在 GitHub 上免费获取,允许用户在计算机上无缝运行它,而无需 OpenAI API 密钥或互联网连接。Shap-E 真正引人注目的是它的多功能性:生成的 3D 对象可以在 Microsoft Paint 3D 等软件中打开,甚至可以转换为 STL 文件以进行 3D 打印。凭借其独特的功能,Shap-E 正在重新定义我们处理文本到 3D 和图像到 3D 生成的方式,以及由此产生的人工智能应用的创造性可能性。

我们要做什么?

在本教程中,我们将学习如何在 Google Colab 中创建 Notebook、设置和使用 OpenAI 的 Shape-E 模型来生成 3D 模型并使用 Blender Studio 对其进行自定义。

先决条件

访问 Blender.org 并下载与您的操作系统兼容的 Blender Studio。

开始吧!

第 1 步 – 设置项目

让我们首先在 Google Colab 中创建新的笔记本。

转到 Google Colab 并创建新笔记本。

Shape-E 教程:如何设置和使用 Shap-E 模型
在 Google Colab 中创建新笔记本

第 2 步 – 克隆存储库

现在,我们需要将 Shap-E 存储库克隆到我们的 Google Colab Notebook。

!git clone https://github.com/openai/shap-e

输入目录并安装要求。

%cd shap-e!pip install -e .

第 3 步 – 实施和烘焙 3D 模型。

添加新的code cell.

在这里我们将导入所有必需的库。

import torchfrom shap_e.diffusion.sample import sample_latentsfrom shap_e.diffusion.gaussian_diffusion import diffusion_from_configfrom shap_e.models.download import load_model, load_configfrom shap_e.util.notebooks import create_pan_cameras, decode_latent_images, gif_widget

单击Run按钮 或CMD/CTRL + Enter运行单个code cell.

凉爽的!

添加新的code cell.

这里我们将设备设置为cuda如果可用,否则设置为cpu

device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')

单击RunCMD/CTRL + Enter

添加新的code cell.

在这里我们将加载模型和权重。

xm = load_model('transmitter', device=device) model = load_model('text300M', device=device) diffusion = diffusion_from_config(load_config('diffusion')) 

单击RunCMD/CTRL + Enter

请耐心等待,加载模型和权重需要一些时间。对我来说大约需要 5 分钟。是的,当然这取决于您的互联网连接速度。

你做的很棒!

添加新的code cell.

在这里我们将生成 3D 模型。

batch_size = 1 # this is the size of the models, higher values take longer to generate.guidance_scale = 15.0 # this is the scale of the guidance, higher values make the model look more like the prompt.prompt = "a donut" # this is the prompt, you can change this to anything you want.latents = sample_latents(    batch_size=batch_size,    model=model,    diffusion=diffusion,    guidance_scale=guidance_scale,    model_kwargs=dict(texts=[prompt] * batch_size),    progress=True,    clip_denoised=True,    use_fp16=True,    use_karras=True,    karras_steps=64,    sigma_min=1e-3,    sigma_max=160,    s_churn=0,)

单击RunCMD/CTRL + Enter

生成 3D 模型需要一些时间,根据您的batch_size等级越高,batch_size生成 3D 模型需要的时间就越长。对我来说,用 . 生成 3D 模型大约需要 22 秒batch_size=1

添加新的code cell.

这里我们将渲染 3D 模型,使用render_mode = 'nerf'神经辐射场 (NeRF) 来渲染 3D 模型。您可以将其更改为render_mode = 'stf'使用样式传递函数 (STF) 渲染模式来渲染 3D 模型。

render_mode = 'nerf' # you can change this to 'stf'size = 64 # this is the size of the renders, higher values take longer to render.cameras = create_pan_cameras(size, device)for i, latent in enumerate(latents):    images = decode_latent_images(xm, latent, cameras, rendering_mode=render_mode)    display(gif_widget(images))

单击RunCMD/CTRL + Enter

你看到模型在旋转吗?很酷,对吧?

我们继续吧。

添加新的code cell.

在这里,我们将 3D 模型另存为.ply.obj文件。

注意:.obj,稍后我们将使用它在 Blender Studio 中进行自定义。

# Example of saving the latents as meshes.from shap_e.util.notebooks import decode_latent_meshfor i, latent in enumerate(latents):    t = decode_latent_mesh(xm, latent).tri_mesh()    with open(f'example_mesh_{i}.ply', 'wb') as f: # this is three-dimensional geometric data of model.        t.write_ply(f)    with open(f'example_mesh_{i}.obj', 'w') as f: # we will use this file to customize in Blender Studio later.        t.write_obj(f)

单击RunCMD/CTRL + Enter

切换选项卡Files并点击刷新。您将看到example_mesh_0.plyexample_mesh_0.obj文件。

Shape-E 教程:如何设置和使用 Shap-E 模型
谷歌 Colab 文件

将文件下载.obj到本地计算机。

第 4 步 – 在 Blender Studio 中自定义 3D 模型。

打开 Blender Studio 并创建新项目。

Shape-E 教程:如何设置和使用 Shap-E 模型
搅拌机工作室

删除默认的多维数据集。

Shape-E 教程:如何设置和使用 Shap-E 模型
删除默认立方体

单击File>> ImportWavefront (.obj)_ 选择.obj您从 Google Colab 下载的文件。

Shape-E 教程:如何设置和使用 Shap-E 模型
导入.obj文件

您应该在中心看到 3D 模型。

Shape-E 教程:如何设置和使用 Shap-E 模型
3D模型

哇!,它本身看起来很酷,不是吗?顺便说一句,Shap-E 做得很好。

您可以根据需要自定义 3D 模型。

为了演示目的,我简单地将配料涂成粉红色,将甜甜圈涂成棕色。

Shape-E 教程:如何设置和使用 Shap-E 模型
定制3D模型

Shape-E 真的太棒了!

Shape-E 教程:如何设置和使用 Shap-E 模型
Midjourney 的 AI 生成艺术

在本教程中,我们学习了如何使用 Google Colab 设置和使用 Shape-E 模型。此外,我们研究了 Blender Studio 并尝试自定义生成的 3D 模型。

现在轮到您测试您学到的技能并创建您自己的 3D 艺术作品了。随着您更多地使用它,也许您会发现一些限制并希望在您自己的 Shap-e 应用程序中修复它?

为什么不在人工智能黑客马拉松期间这样做呢?顺便赢得很酷的奖品!成为人工智能爱好者社区的一员,了解更多关于人工智能及其潜力的信息!

感谢您阅读本教程。

谢谢你!– AI未来百科 ; 探索AI的边界与未来! 懂您的AI未来站