
在人工智能技术飞速发展的今天,3D 资产生成技术逐渐成为数字内容创作的重要工具。TRELLIS 作为一款由微软、清华大学和中国科学技术大学联合开发的开源项目,以其高质量的 3D 资产生成能力和灵活的编辑功能,吸引了众多开发者和研究人员的关注。本文将详细介绍 TRELLIS 的技术原理、主要功能、应用场景以及快速使用方法,帮助读者全面了解这一创新项目。
一、项目概述
TRELLIS 致力于提供高质量的 3D 资产生成模型,支持从文本或图像提示生成各种格式的 3D 资产,如辐射场(Radiance Fields)、3D 高斯(3D Gaussians)和网格(Meshes)。该项目基于统一的结构化潜在表示(Structured Latent Representation)和修正流变换器(Rectified Flow Transformers),能够在大规模数据集上进行训练,生成具有复杂形状和纹理细节的 3D 资产。

二、主要功能
1、高质量生成
TRELLIS 能够生成具有复杂形状和纹理细节的高质量 3D 资产。通过强大的生成模型和优化算法,TRELLIS 在生成 3D 资产时能够保留原始数据的几何和外观信息,生成的 3D 资产与原始数据高度一致。
2、多功能支持
TRELLIS 支持从文本或图像提示生成多种 3D 表示格式,包括但不限于辐射场、3D 高斯和网格。这种多功能性使得 TRELLIS 能够适应不同的下游应用需求,为用户提供灵活的 3D 资产生成解决方案。
3、灵活编辑
TRELLIS 允许用户对生成的 3D 资产进行轻松编辑,如生成同一对象的变体或对 3D 资产进行本地编辑。这种灵活的编辑功能使得用户能够根据具体需求对 3D 资产进行个性化调整,提高 3D 资产的实用性和多样性。

三、技术原理
1、Structured LATent (SLAT) 表示
TRELLIS 使用 SLAT 作为统一的 3D 潜在表示,基于稀疏的 3D 网格上定义局部潜在变量,编码 3D 资产的几何和外观信息。这种表示方法能够高效地处理 3D 资产的稀疏性,为生成高质量的 3D 资产提供了基础。
2、多视图视觉特征
TRELLIS 基于强大的视觉基础模型提取的多视图视觉特征,详细编码 3D 资产的结构和外观信息。通过多视图视觉特征,TRELLIS 能够更好地理解 3D 资产的全局和局部信息,提高生成的 3D 资产的质量。
3、修正流变换器
TRELLIS 使用修正流变换器作为 3D 生成模型的核心,特别适应于处理 SLAT 的稀疏性。修正流变换器能够高效地生成 3D 资产,同时保持生成过程的稳定性和可控性。
4、两阶段生成流程
TRELLIS 采用两阶段生成流程,首先生成 SLAT 的稀疏结构,然后在已生成的结构上生成局部潜在向量。这种生成流程使得 TRELLIS 能够灵活生成不同格式的 3D 表示,满足不同的应用需求。

四、应用场景
1、游戏开发
在游戏开发中,TRELLIS 可以用于生成高质量的 3D 模型和场景,提高游戏的视觉效果和沉浸感。通过从文本或图像提示生成 3D 资产,TRELLIS 能够帮助游戏开发者快速创建丰富的游戏内容。
2、影视制作
在影视制作中,TRELLIS 可以用于生成虚拟场景和角色模型,提高影视制作的效率和质量。通过生成高质量的 3D 资产,TRELLIS 能够帮助影视制作团队实现更加逼真的视觉效果。
3、教育与培训
在教育和培训领域,TRELLIS 可以用于生成教学用的 3D 模型和场景,帮助学生更好地理解复杂的概念和知识。通过生成高质量的 3D 资产,TRELLIS 能够提供更加直观和生动的教学资源。
4、工业设计
在工业设计中,TRELLIS 可以用于生成产品原型和设计概念,帮助设计师快速验证和优化设计方案。通过生成高质量的 3D 资产,TRELLIS 能够提供更加直观和详细的设计参考。
五、快速使用
1、环境要求
硬件:推荐使用 16GB 以上显存的 NVIDIA 显卡(如 RTX 30/40 系列),CUDA Toolkit 11.8 或 12.2,Python 3.8+。
软件:需要安装 conda 环境管理工具。
2、安装步骤
1. 克隆项目代码:
git clone https://github.com/microsoft/TRELLIS.git
cd TRELLIS
2. 创建并激活conda 环境:
conda create -n trellis python=3.10
conda activate trellis
pip install -r requirements.txt
3. 下载预训练模型:
-
TRELLIS-image-large: 大型图生 3D 模型 (1.2B 参数)
-
TRELLIS-text-base: 基础文生 3D 模型 (342M 参数)
-
TRELLIS-text-large: 大型文生 3D 模型 (1.1B 参数)
-
TRELLIS-text-xlarge: 超大型文生 3D 模型 (2.0B 参数)
可以从 Hugging Face 下载这些模型。
3、运行示例
以下是一个简单的示例,展示如何使用 TRELLIS 生成 3D 资产:
import os
os.environ['SPCONV_ALGO'] = 'native'
import imageio
from PIL import Image
from trellis.pipelines import TrellisImageTo3DPipeline
from trellis.utils import render_utils, postprocessing_utils
# 加载模型
pipeline = TrellisImageTo3DPipeline.from_pretrained("JeffreyXiang/TRELLIS-image-large")
pipeline.cuda()
# 加载图像
image = Image.open("assets/example_image/T.png")
# 运行模型
outputs = pipeline.run(image, seed=1)
# 渲染输出
video = render_utils.render_video(outputs['gaussian'][0])['color']
imageio.mimsave("sample_gs.mp4", video, fps=30)
# 保存为 GLB 文件
glb = postprocessing_utils.to_glb(outputs['gaussian'][0], outputs['mesh'][0])
glb.export("sample.glb")
运行上述代码后,你将获得以下文件:
– `sample_gs.mp4`:展示 3D 高斯表示的视频。
– `sample.glb`:包含提取的纹理网格的 GLB 文件。
结语
TRELLIS 以其高质量的 3D 资产生成能力和灵活的编辑功能,为 3D 资产生成领域带来了新的突破。通过强大的技术原理和丰富的应用场景,TRELLIS 为开发者和研究人员提供了一个强大的工具,推动了 3D 资产生成技术的发展。未来,随着技术的不断进步和社区的不断壮大,TRELLIS 有望在更多领域发挥更大的作用。
项目地址
项目官网:https://trellis3d.github.io/
GitHub 仓库:https://github.com/microsoft/TRELLIS
(文:小兵的AI视界)