OpenAI 发布了他们的最新作品:Shap-E,这是一种专为 3D 资产设计的条件生成模型。与该领域的其他模型不同,Shap-E具有生成隐式函数参数的独特能力,仅需一个文本提示即可将其呈现为纹理网格和神经辐射场 (NeRF)。
Shape-E 的 GitHub 存储库在这里
作为 OpenAI 为数不多的开源产品之一,Shap-E 现在可以在 GitHub 上轻松获得,其中包含模型权重、推理代码,甚至还有一个入门示例。使用 Shap-E,3D 建模从未如此简单或更易于访问。
如论文中所述,Shap-E 的训练过程包括两个不同的阶段。在第一阶段,编码器被训练来确定地将 3D 资产映射到隐式函数的参数中。在第二阶段,条件扩散模型然后在编码器的输出上进行训练,从而允许更细微和复杂的生成能力。通过这种独特的方法,Shap-E 为 3D 资产创建领域树立了新标准。
根据这篇论文,Shap-E 拥有令人印象深刻的能力,在对 3D 和文本数据配对的大型数据集进行训练时,能够在几秒钟内生成复杂多样的 3D 资产。更值得注意的是,尽管 Shap-E 具有更高维、多表示的输出空间,但它设法更快地收敛并产生与Point-E相当甚至更好的样本质量。
如何使用它
强烈建议您在继续安装过程之前创建一个新的虚拟环境。
完成后,激活它并使用以下命令克隆整个存储库:
https://github.com/openai/shap-e
然后,运行以下命令来安装 Shap-E:
cd shape -e
pip install -e .
需要注意的是,官方仓库中的 setup.py 文件不完整,没有包含几个必要的 Python 包。例如:
blobfile
pyyaml
ipywidgets
要解决此问题,您需要通过pip install手动安装这些缺失的包。
如果您在使用 Torch 时遇到任何问题,请参考官网的安装说明。
例如,您可以参考以下包含必要包(以及一些未使用的包)的需求文件:
blobfile==2.0.2
certifi==2022.12.7
charset-normalizer==3.1.0
clip @git+https://github.com/openai/CLIP.git@a9b1bf5920416aaeaec965c25dd9e8f98c864f16
colorama==0.4.6
contourpy==1.0。 7
cycler==0.11.0
filelock==3.12.0
fire==0.5.0
fonttools==4.39.3
ftfy==6.1.1
humanize==4.6.0
idna==3.4
imageio==2.28.1
ipywidgets
Jinja2= =3.1.2
kiwisolver==1.4.4
lazy_loader==0.2
lxml==4.9.2
MarkupSafe==2.1.2
matplotlib==3.7.1
mpmath==1.3.0
networkx==3.1
numpy==1.24.3
packaging= =23.1
枕头==9.5.0
pycryptodomex==3.17
pyparsing==3.0.9
python-dateutil==2.8.2
PyWavelets==1.4.1
PyYAML==6.0
regex==2023.5.5
requests==2.30.0
scikit-image==0.20.0
scipy==1.10.1
six==1.16.0
sympy==1.11.1
termcolor==2.3.0
tifffile==2023.4.12
torch==2.0.0+cu118
torchvision==0.15.1+cu118
tqdm==4.65.0
typing_extensions==4.5.0
urllib3==2.0 .2
wcwidth==0.2.6
用法
安装pip install -e .。
要开始使用示例,请参阅以下笔记本:
sample_text_to_3d.ipynb — 以文本提示为条件对 3D 模型进行采样
sample_image_to_3d.ipynb — 以合成视图图像为条件对 3D 模型进行采样。
encode_model.ipynb — 加载 3D 模型或 trimesh,创建一批多视图渲染和点云,将它们编码为潜在的,并将其渲染回来。为此,请安装 Blender 3.3.1 或更高版本,并将环境变量设置BLENDER_PATH为 Blender 可执行文件的路径。来源
局限性
尽管生成的 3D 对象最初可能显得粗糙或像素化,但仅需一次文本输入即可生成它们的事实确实具有开创性。然而,值得注意的是,Shap-E 目前在生成具有多个属性或提示的对象方面存在局限性,正如论文所强调的那样。
最近,OpenAI 还推出了 Point-E,它被宣传为 3D DALL-E 的继任者。与其前身一样,Shap-E 使用扩散技术,但这一次,用户可以生成支持 NeRF 的纹理网格而不是点云。凭借 Shap-E 的尖端技术,3D 资产创建的前景确实一片光明。