NSDT工具推荐Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器 - REVIT导出3D模型插件 - 3D模型语义搜索引擎 - Three.js虚拟轴心开发包

能够在本地运行代码的一个好处是,可以在没有互联网连接的情况下生成3D模型。

出于这个原因,我创建了shap-e-local这个项目作为那些想要离线生成 3D 模型的人或那些正在寻找一个地方来吹嘘他们充足的 GPU 能力的人的样本。

1、演示

我用以下提示生成的3D模型(.obj)导入Blender并渲染它们:

  • 苹果
  • 鲨鱼
  • 桌子

墙壁和地板是blender的内置平面对象。

2、运行环境

  • 操作系统: Ubuntu 20.04.5 LTS
  • 处理器: 英特尔® 酷睿(TM) i7-6800K CPU @ 3.40GHz
  • GPU: NVIDIA GeForce RTX 3090
  • CUDA版本:12.1
  • pip版本:23.1.2
  • conda版本:23.5.0

3、执行流程

  1. 将此项目下载为 zip 文件夹,然后将其解压缩
  2. 使用Python创建一个虚拟环境,然后激活它
conda create -n shap-e python=3.10
conda activate shap-e

3. 将当前目录更改为解压缩的文件夹

// example
cd shap-e-local-main

4. 安装所需的库

pip install -e .
pip install pyyaml ipywidgets fvcore iopath

5. 运行 testTorch.py 以确认torch正在识别 cuda

python testTorch.py

如果这个程序的输出看起来像这样,就说明环境ok了:

PyTorch is using: cuda  
PyTorch version: 2.0.1+cu117  
Result of tensor operation: tensor([ 8., 15.], device='cuda:0')  

6. 运行 pytorch3dPrep.py 以检查合适的 pytorch3d 版本

python pytorch3dPrep.py

此程序输出一个字符串(例如“py310_cu117_pyt201”)
记住这个字符串。

7. 安装 pytorch3d 库

pip install --no-index --no-cache-dir pytorch3d -f https://dl.fbaipublicfiles.com/pytorch3d/packaging/wheels/{output string}/download.html

// example
pip install --no-index --no-cache-dir pytorch3d -f https://dl.fbaipublicfiles.com/pytorch3d/packaging/wheels/py310_cu117_pyt201/download.html

8.  最后,让我们生成一个 3D 模型!

在运行下面的代码之前,可以编辑 textTo3D.py 以更改输入文本提示、batch_size等。

python textTo3D.py

此程序根据你指定的batch_size输出一些 .obj 文件和 .ply 文件。

9.  如果想要查看生成的3D模型

首先安装显示 3D 对象所需的库。

pip install vedo
pip install open3d

然后,使用以下命令检查生成的文件。
(命令行参数“文件名”是除文件扩展名部分以外的文件的名称。
例如,键入“Python displayPly.py example_mesh_0”来检查“example_mesh_0.ply”文件。

python displayObj.py {filename}
python displayPly.py {filename}

请确保 displayObj.py 或 displayPly.py 文件与 .obj 或 .ply 文件位于同一目录中。


原文链接:Shap-E-local

BimAnt翻译整理,转载请标明出处