综合介绍
TRELLIS是一个由Microsoft开发的大型3D资产生成模型。它能够接收文本或图像提示,并生成各种格式的高质量3D资产,如辐射场、3D高斯和网格。TRELLIS的核心是统一的结构化潜在变量(SLAT)表示,这使得它能够解码为不同的输出格式,并通过专为SLAT设计的整流流变压器作为强大的后盾。该模型在一个包含50万个多样化对象的大型3D资产数据集上进行了预训练,显著超越了现有方法,展示了灵活的输出格式选择和本地3D编辑功能。
功能列表
- 高质量生成:生成具有复杂形状和纹理细节的多样化3D资产。
- 多功能性:接收文本或图像提示,生成包括辐射场、3D高斯和网格在内的各种3D表示。
- 灵活编辑:允许对生成的3D资产进行轻松编辑,如生成同一对象的变体或对3D资产进行本地编辑。
使用帮助
安装流程
- 先决条件:
- 推荐使用Linux运行代码,未在其他平台上测试。
- 推荐使用Conda管理依赖项。
- 需要Python 3.8或更高版本。
- 需要具有16GB以上内存的NVIDIA GPU,代码已在NVIDIA A100和A6000 GPU上测试。
- 需要CUDA工具包来编译某些子模块,代码已在CUDA 11.8和12.2上测试。
- 安装步骤:
- 克隆存储库:
git clone --recurse-submodules https://github.com/microsoft/TRELLIS.git cd TRELLIS
- 安装依赖项:
. ./setup.sh --new-env --basic --xformers --flash-attn --diffoctreerast --spconv --mipgaussian --kaolin --nvdiffrast
- 克隆存储库:
使用流程
- 加载预训练模型:
from trellis.pipelines import TrellisImageTo3DPipeline pipeline = TrellisImageTo3DPipeline.from_pretrained("JeffreyXiang/TRELLIS-image-large") pipeline.cuda()
- 加载图像并运行管道:
from PIL import Image image = Image.open("assets/example_image/T.png") outputs = pipeline.run(image, seed=1)
- 渲染输出:
from trellis.utils import render_utils video = render_utils.render_video(outputs['gaussian'][0])['color']
- 保存结果:
import imageio imageio.mimsave("sample_gs.mp4", video, fps=30)