Shape-E 教程:如何设置和使用 Shap-E 模型_第1页
Shape-E 教程:如何设置和使用 Shap-E 模型_第2页
Shape-E 教程:如何设置和使用 Shap-E 模型_第3页
Shape-E 教程:如何设置和使用 Shap-E 模型_第4页
Shape-E 教程:如何设置和使用 Shap-E 模型_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Shap-E是OpenAI开发的一种创新模型,它可以使用文本或图像作为输入来生成一系列3D对象,从而改变了3D应用领域。这项非凡的技术可以在GitHub上免费访问,用户可以在自己的计算机上无缝运行它,不需要OpenAIAPI密钥或互联网连接。Shap-E的多功能性也是其与众不同之处,用户可以将生成的3D对象在MicrosoftPaint3D等软件中打开,甚至可以转换成STL文件进行3D打印。这项技术正在重新定义我们处理文本到3D和图像到3D生成的方式,以及人工智能应用程序可以从中产生哪些创造性的可能性。在本教程中,我们将学习如何在GoogleColab中创建笔记本,设置和使用OpenAI的Shap-E模型生成3D模型,并使用BlenderStudio对其进行自定义。首先,您需要前往并下载与您的操作系统兼容的BlenderStudio。接下来,转到GoogleColab并创建一个新的笔记本。在GoogleColab中创建新笔记本现在,我们需要将Shap-E存储库克隆到我们的GoogleColabNotebook。!git

clone

/openai/shap-e进入目录并安装要求。%cd

shap-e!pip

install

-e

.添加新的codecell.在这里,我们将导入所有必要的库。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”键来运行单个代码块。现在,我们将设置设备为CUDA(如果可用),否则设置为CPU。device

=

torch.device('cuda'

if

torch.cuda.is_available()

else

'cpu')单击Run或CMD/CTRL+Enter。添加新的codecell.在这里,我们将加载模型和权重。xm

=

load_model('transmitter',

device=device)

model

=

load_model('text300M',

device=device)

diffusion

=

diffusion_from_config(load_config('diffusion'))请点击“Run”或按下“CMD/CTRL+Enter”键。请耐心等待,加载模型和权重需要一些时间。对我来说,这大约花费了5分钟的时间。但是,这取决于您的互联网连接速度。接下来,我们将生成一个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

mpt

=

"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,)单击Run或CMD/CTRL+Enter。生成3D模型需要一些时间,根据您的batch_size更高batch_size将需要更长的时间来生成3D模型。对我来说,生成3D模型大约需要22秒batch_size=1。添加新的codecell.这里我们将渲染3D模型,使用render_mode='nerf'

NeuralRadianceFields(NeRF)来渲染3D模型。您可以将其更改为使用样式传递函数(STF)render_mode='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))请点击“Run”或按下“CMD/CTRL+Enter”键。你看到模型旋转了吗?很酷,是吗?接下来,我们将把3D模型保存为.ply和.obj文件。请注意:.obj文件将在稍后在BlenderStudio中用于自定义。#

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)单击Run或CMD/CTRL+Enter。将选项卡切换到Files并点击刷新。您将看到example_mesh_0.ply和example_mesh_0.obj文件。谷歌Colab文件将文件下载.obj到本地计算机。打开BlenderStudio并创建新项目。搅拌机工作室删除默认多维数据集。删除默认立方体点击File>

Import>

Wavefront(.obj)。选择.obj您从GoogleColab下载的文件。导入.obj文件您应该会在中心看到3D模型。3D模型它本身看起来很牛,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论