作为经常体验各类 AI 工具的产品经理,我见过不少 Image-to-3D 的解决方案。它们通常要么生成精度不足,要么后处理复杂,要么材质支持有限。但微软最近开源的 TRELLIS.2,在这几个维度上的表现让我重新审视了这一赛道的现状——它不再是"AI 艺术实验",而是逐步演变为真正可用的3D 资产自动化生产工具。
项目概览
TRELLIS.2 是微软开源的单图像到 3D 模型生成框架,核心能力是在 1 分钟内将一张二维图片转换为带完整 PBR 材质的游戏级 3D 资产。

生成的模型格式为 .glb,可直接导入 Blender、Unity、Unreal Engine 等主流 3D 软件,基本无需后处理即可使用。
根据官方数据,在 NVIDIA H100 GPU 上,生成基础质量模型仅需 3 秒(512³分辨率)。
核心功能拆解
1. 三维度的性能均衡
TRELLIS.2 采用 4B 参数规模的 DiT(Diffusion Transformer)架构,但关键优化在于其编码方式:
- 稀疏 3D VAE + 16 倍空间下采样——将高分辨率 3D 数据压缩到紧凑的潜在空间,降低计算成本的同时保留结构细节
- 分辨率支持范围:512³ ~ 1536³
- 生成时间:512³ 约 3 秒、1024³ 约 17 秒、1536³ 约 1 分钟(H100 环境)
2. 拓扑结构处理的突破——O-Voxel 表示法
传统等值面场方法在处理复杂几何时容易失效。TRELLIS.2 引入 O-Voxel 表示法,专门应对以下难点场景:
- 薄壳结构:衣物褶皱、树叶、纸质物体等低厚度几何
- 非流形几何:不连续或拓扑复杂的结构
- 内部结构:物体内部的封闭空间与细节
这意味着生成的模型在几何学上"站得住脚",而非仅在视觉上相似。
3. PBR 材质的完整支持
大多数 3D 生成工具输出单一颜色贴图,容易产生"塑料感"。TRELLIS.2 直接生成 PBR 四通道材质:
- Base Color(基础颜色)
- Roughness(粗糙度)
- Metallic(金属度)
- Opacity(不透明度/透明通道)
这些参数可直接投入到现代渲染管线,确保物理准确性——生成的玻璃在渲染引擎中真正透明,金属表面确实会反光。
4. 极简的处理流程
从图像到可用资产的完整链路被压缩至极致:
- 纹理网格 → O 体素:< 10 秒(单核 CPU)
- O 体素 → 纹理网格:< 100 毫秒(CUDA)
- 整个工作流无需显式渲染或额外优化步骤
使用方式对比
方案一:在线体验(推荐快速尝试)
微软在 Hugging Face 部署了官方 Space,浏览器即可使用:
地址:https://huggingface.co/spaces/microsoft/TRELLIS.2
操作流程:上传图片 → 点击生成 → 等待 20 秒左右 → 查看 3D 预览 → 下载 .glb 文件

优点:零部署成本,适合快速验证
缺点:受服务端资源限制,可能存在排队
方案二:本地部署(适合批量生成)
环境要求:
- NVIDIA GPU,显存 ≥ 24GB(推荐 H100 或 A100)
- CUDA 12.x 环境
- Python 3.9+
安装步骤:
git clone -b main https://github.com/microsoft/TRELLIS.2.git --recursive
cd TRELLIS.2
./setup.sh --new-env --basic --flash-attn --nvdiffrast --nvdiffrec --cumesh --o-voxel --flexgemm
脚本会自动下载预训练模型(TRELLIS.2-4B)和必要依赖。
代码集成示例
若需在应用中集成 TRELLIS.2,核心流程如下:
import os
import cv2
import imageio
from PIL import Image
import torch
from trellis2.pipelines import Trellis2ImageTo3DPipeline
from trellis2.utils import render_utils
from trellis2.renderers import EnvMap
import o_voxel
# 1. 加载环境贴图(用于渲染预览)
envmap = EnvMap(torch.tensor(
cv2.cvtColor(cv2.imread('assets/hdri/forest.exr', cv2.IMREAD_UNCHANGED), cv2.COLOR_BGR2RGB),
dtype=torch.float32, device='cuda'))
# 2. 加载管道
pipeline = Trellis2ImageTo3DPipeline.from_pretrained("microsoft/TRELLIS.2-4B")
pipeline.cuda()
# 3. 读取输入图像并生成
image = Image.open("input.png")
mesh = pipeline.run(image)[0]
mesh.simplify(16777216) # 面数优化
# 4. 生成预览视频
video = render_utils.make_pbr_vis_frames(render_utils.render_video(mesh, envmap=envmap))
imageio.mimsave("preview.mp4", video, fps=15)
# 5. 导出为 GLB 格式
glb = o_voxel.postprocess.to_glb(
vertices=mesh.vertices,
faces=mesh.faces,
attr_volume=mesh.attrs,
coords=mesh.coords,
attr_layout=mesh.layout,
voxel_size=mesh.voxel_size,
aabb=[[-0.5, -0.5, -0.5], [0.5, 0.5, 0.5]],
decimation_target=1000000,
texture_size=4096,
remesh=True,
verbose=True)
glb.export("output.glb", extension_webp=True)
输出说明:
preview.mp4:PBR 材质渲染效果预览output.glb:可直接导入 3D 软件的资产文件- 透明度处理:Alpha 通道包含在纹理中,但默认以不透明模式导出。若需启用透明效果,需在 3D 软件中手动连接材质的 Alpha 通道
应用场景分析
TRELLIS.2 的实用性主要体现在以下领域:
电商与虚拟陈列:产品图 → 3D 模型 → Web 展示,加速虚拟试衣、家居预览等场景
游戏与数字内容:角色、道具、环境的快速原型生成,缩短前期美术制作周期
VR/AR 应用:实物识别后即时生成交互式 3D 资产
文化遗产数字化:文物照片转 3D 扫描级模型,用于存档与展示
与同类工具的定位差异
当前 Image-to-3D 领域存在多个开源方案。TRELLIS.2 在以下维度的特性值得关注:
| 维度 | TRELLIS.2 | TripoSR | LRM++ |
| 材质输出 | 完整 PBR 四通道 | 颜色贴图为主 | 颜色 + 法线 |
| 拓扑处理 | O-Voxel(复杂几何) | 隐式函数 | 网格直接生成 |
| 生成速度(512³) | ~3 秒 | ~10-15 秒 | ~8-12 秒 |
| 最低显存需求 | 24GB+ | 12GB+ | 16GB+ |
| 开源程度 | 完全开源 | 完全开源 | 权重开源 |
总结与建议
从产品角度看,TRELLIS.2 代表了 Image-to-3D 这一方向从"实验室"走向"生产环境"的关键节点。它的差异化优势主要体现在三个方面:
- 材质完整性:PBR 四通道的支持打通了与现代渲染引擎的直接集成路径,减少中间环节
- 几何鲁棒性:O-Voxel 方法对拓扑复杂结构的处理优于传统隐式方法,输出的模型结构更可靠
- 推理效率:在同等质量下,3 秒的生成速度为批量处理提供了现实可行性
对有实际落地需求的团队(如电商平台、游戏工作室、XR 内容方),TRELLIS.2 值得作为首选方案进行试验——可从官方 Hugging Face Space 的免费体验开始,验证效果后再考虑本地部署。