字数 4665,阅读大约需 24 分钟
腾讯混元3D 2.0重磅开源:迈向高分辨率纹理3D资产生成新纪元
3D 内容创作的门槛正在被不断打破!今天,我们要向大家隆重介绍来自腾讯的 Hunyuan3D 2.0,一个先进的大规模 3D 合成系统,旨在生成令人惊叹的高分辨率、带纹理的 3D 资产。无论你是专业设计师、游戏开发者,还是仅仅对 3D 创作充满好奇的爱好者,Hunyuan3D 2.0 都将为你打开一扇通往想象力世界的大门。
想象一下,只需要一张图片,就能快速生成细节丰富、纹理逼真的 3D 模型,这不再是遥不可及的梦想。Hunyuan3D 2.0 正是为此而生,它致力于“让每个人的想象力都能在创建和操纵 3D 资产中得以实现”。
🔥 最新动态
Hunyuan3D 团队一直在快速迭代,带来更多激动人心的功能:
- • 2025年4月1日: 🤗 发布了 Turbo 纹理绘制模型 Hunyuan3D-Paint-v2-0-Turbo,以及多视图纹理生成管线!用户可以尝试使用
fast_texture_gen_multiview.py
示例。同时,敬请期待新的纹理生成模型 RomanTex 和 PBR 材质生成模型 MaterialMVP! - • 2025年3月19日: 🤗 发布了 Turbo 加速模型 Hunyuan3D-2-Turbo、Hunyuan3D-2mini-Turbo 以及 FlashVDM 加速技术。
- • 2025年3月18日: 🤗 发布了多视图形状模型 Hunyuan3D-2mv 和轻量级 0.6B 参数形状模型 Hunyuan3D-2mini。
- • 2025年2月14日: 🛠️ 发布了纹理增强模块,用户可以通过
minimal_demo.py
获取高清纹理! - • 2025年2月3日: 🐎 发布了 Hunyuan3D-DiT-v2-0-Fast,这是一个指导蒸馏模型,可以将 DiT 推理时间减半,具体用法参见
minimal_demo.py
。 - • 2025年1月27日: 🛠️ 发布了 Hunyuan3D 2.0 的 Blender 插件,让 Blender 用户也能无缝集成!
- • 2025年1月23日: 💬 社区成员贡献了 Windows 安装工具、ComfyUI 支持(ComfyUI-Hunyuan3DWrapper 和 ComfyUI-3D-Pack)等优秀扩展。
- • 2025年1月21日: 💬 用户可以在官方网站 Hunyuan3D Studio (3d.hunyuan.tencent.com) 上体验激动人心的 3D 生成!
- • 2025年1月21日: 🤗 正式发布 Hunyuan3D 2.0 的推理代码和预训练模型,开放给所有用户试用!
摘要:Hunyuan3D 2.0 的核心优势
Hunyuan3D 2.0 是一个先进的大规模 3D 合成系统,专注于生成高分辨率的带纹理 3D 资产。该系统包含两大核心基础组件:
- 1. 大规模形状生成模型 (Hunyuan3D-DiT): 基于可扩展的流式扩散 Transformer (Flow-based Diffusion Transformer) 构建,旨在创建与给定条件图像(例如单张图片)精确对齐的几何形状,为下游应用奠定坚实的基础。
- 2. 大规模纹理合成模型 (Hunyuan3D-Paint): 利用强大的几何先验和扩散先验知识,为生成的或用户手工制作的网格 (mesh) 生成高分辨率、色彩鲜艳的纹理贴图。
此外,团队还构建了 Hunyuan3D-Studio —— 一个多功能、用户友好的生产平台,简化了 3D 资产的再创作过程。它允许专业用户和业余爱好者高效地操纵甚至动画化他们的网格模型。
系统评估表明,Hunyuan3D 2.0 在几何细节、条件对齐(图像与生成模型的匹配度)、纹理质量等方面均优于之前的 SOTA(State-of-the-Art)模型,包括开源模型和闭源模型。
上图展示了 Hunyuan3D 2.0 的整体系统流程,从输入(图像/文本)到最终的高质量带纹理 3D 模型。
☯️ Hunyuan3D 2.0 架构解析
Hunyuan3D 2.0 采用了一个巧妙的两阶段生成管线:
- 1. 第一阶段:形状生成 (Shape Generation):首先,系统会根据输入条件(如一张图片)生成一个基础的、无纹理的网格模型(bare mesh)。这一步的核心是 Hunyuan3D-DiT 模型。
- 2. 第二阶段:纹理合成 (Texture Synthesis):接着,系统会为上一步生成的网格或用户提供的现成网格合成高质量的纹理贴图。这一步的核心是 Hunyuan3D-Paint 模型。
这种策略的优势在于:
- • 解耦难度: 将复杂的 3D 生成任务分解为形状和纹理两个相对独立的子问题,降低了整体难度。
- • 提升灵活性: 用户不仅可以从头生成带纹理的模型,还可以利用 Hunyuan3D-Paint 为自己已有的模型(无论是生成的还是手工制作的)添加或替换纹理。
上图直观展示了 Hunyuan3D 2.0 的两阶段架构,清晰地描绘了从输入到形状生成,再到纹理生成的过程。
性能表现:超越业界标杆
为了验证 Hunyuan3D 2.0 的实力,团队将其与其他顶级的开源及闭源 3D 生成方法进行了全面比较。数值结果令人信服地表明,Hunyuan3D 2.0 在生成带纹理 3D 资产的质量和遵循输入条件的能力方面,均超越了所有基线模型。
模型 | CMMD(⬇) | FID_CLIP(⬇) | FID(⬇) | CLIP-score(⬆) |
---|---|---|---|---|
顶级开源模型1 | 3.591 | 54.639 | 289.287 | 0.787 |
顶级闭源模型1 | 3.600 | 55.866 | 305.922 | 0.779 |
顶级闭源模型2 | 3.368 | 49.744 | 294.628 | 0.806 |
顶级闭源模型3 | 3.218 | 51.574 | 295.691 | 0.799 |
Hunyuan3D 2.0 | 3.193 | 49.165 | 282.429 | 0.809 |
- • CMMD (Chamfer Maximum Mean Discrepancy): 衡量生成形状与真实形状相似度,越低越好。
- • FID_CLIP & FID (Fréchet Inception Distance): 衡量生成图像(渲染图)与真实图像分布的相似度,越低越好。
- • CLIP-score: 衡量生成内容与输入文本/图像描述的语义一致性,越高越好。
从上表可以看出,Hunyuan3D 2.0 在各项关键指标上均取得了最佳或接近最佳的成绩,证明了其在生成质量和语义对齐方面的领先地位。
眼见为实,看看 Hunyuan3D 2.0 的生成效果:
这些动图展示了从单张图片输入到生成高质量带纹理 3D 模型的过程,模型的细节和纹理质量都非常出色。
🎁 模型库:多种选择满足不同需求
Hunyuan3D 2.0 提供了一系列预训练模型,以适应不同的硬件配置和应用场景。
基本显存需求:
- • 仅进行形状生成:需要约 6GB VRAM。
- • 进行形状和纹理生成:总共需要约 16GB VRAM。
Hunyuan3D-2mini 系列 (轻量级)
模型 | 描述 | 发布日期 | 参数量 | 下载链接 |
---|---|---|---|---|
Hunyuan3D-DiT-v2-mini-Turbo | 步骤蒸馏加速版 | 2025-03-19 | 0.6B | Download[1] |
Hunyuan3D-DiT-v2-mini-Fast | 指导蒸馏加速版 | 2025-03-18 | 0.6B | Download[2] |
Hunyuan3D-DiT-v2-mini | 迷你版图像到形状模型 | 2025-03-18 | 0.6B | Download[3] |
- • 特点: 参数量小 (0.6B),对显存要求更低,适合资源有限的环境。提供 Turbo 和 Fast 版本以加速推理。
Hunyuan3D-2mv 系列 (多视图)
模型 | 描述 | 发布日期 | 参数量 | 下载链接 |
---|---|---|---|---|
Hunyuan3D-DiT-v2-mv-Turbo | 步骤蒸馏加速版 | 2025-03-19 | 1.1B | Download[4] |
Hunyuan3D-DiT-v2-mv-Fast | 指导蒸馏加速版 | 2025-03-18 | 1.1B | Download[5] |
Hunyuan3D-DiT-v2-mv | 多视图图像到形状模型 | 2025-03-18 | 1.1B | Download[6] |
- • 特点: 能够利用多张不同视角的图像作为输入来生成形状,通常能获得更完整、更准确的 3D 几何结构。同样提供 Turbo 和 Fast 加速版本。
Hunyuan3D-2 系列 (标准版 & 纹理)
模型 | 描述 | 发布日期 | 参数量 | 下载链接 |
---|---|---|---|---|
Hunyuan3D-DiT-v2-0-Turbo | 步骤蒸馏加速形状模型 | 2025-03-19 | 1.1B | Download[7] |
Hunyuan3D-DiT-v2-0-Fast | 指导蒸馏加速形状模型 | 2025-02-03 | 1.1B | Download[8] |
Hunyuan3D-DiT-v2-0 | 标准图像到形状模型 | 2025-01-21 | 1.1B | Download[9] |
Hunyuan3D-Paint-v2-0 | 标准纹理生成模型 | 2025-01-21 | 1.3B | Download[10] |
Hunyuan3D-Paint-v2-0-Turbo | 蒸馏加速纹理模型 | 2025-04-01 | 1.3B | Download[11] |
Hunyuan3D-Delight-v2-0 | 图像细节增强/光照模型 | 2025-01-21 | 1.3B | Download[12] |
- • 特点: 标准版形状模型 (1.1B 参数) 和纹理模型 (1.3B 参数) 提供最佳生成质量。同样提供 Turbo 和 Fast 加速版本。
Hunyuan3D-Delight
模型可用于进一步提升图像细节或调整光照效果。
用户可以根据自己的硬件条件、对速度和质量的要求,灵活选择合适的模型组合。
🤗 快速上手 Hunyuan3D 2.0
Hunyuan3D 2.0 支持 Macos、Windows 和 Linux 系统。你可以通过以下几种方式来使用它:
- 1. 代码调用: 直接在 Python 代码中集成和使用。
- 2. Gradio 应用: 在本地运行一个 Web UI 界面进行交互式操作。
- 3. API 服务器: 部署一个 API 服务,方便其他程序调用。
- 4. Blender 插件: 在 Blender 软件中直接使用 Hunyuan3D 的功能。
- 5. 官方网站: 无需本地安装,直接在线体验。
步骤 1: 安装依赖
首先,请确保你已经根据你的系统和 CUDA 版本从 PyTorch 官网[13] 安装了 PyTorch。
然后,安装其他必要的依赖库:
# 克隆仓库 (如果还没做)
# git clone https://github.com/Tencent/Hunyuan3D-2.git
# cd Hunyuan3D-2
# 安装基础依赖
pip install -r requirements.txt
pip install -e .
# 安装纹理生成相关的定制化 CUDA 算子 (需要编译环境)
# 进入 custom_rasterizer 目录并安装
cd hy3dgen/texgen/custom_rasterizer
python3 setup.py install
# 返回项目根目录
cd ../../..
# 进入 differentiable_renderer 目录并安装
cd hy3dgen/texgen/differentiable_renderer
python3 setup.py install
# 返回项目根目录 (如果需要)
# cd ../../..
注意:编译 CUDA 算子可能需要相应的编译工具链(如 GCC/G++, MSVC)和 CUDA Toolkit。
方式 1: 代码使用 (Code Usage)
Hunyuan3D 2.0 设计了类似 Hugging Face diffusers
库的 API 接口,非常方便调用。
生成形状 (使用 Hunyuan3D-DiT):
from hy3dgen.shapegen import Hunyuan3DDiTFlowMatchingPipeline
import trimesh # 导入 trimesh 用于保存
# 加载预训练的形状生成管线 (这里以标准版为例)
# 你也可以选择 'tencent/Hunyuan3D-2mini' 或 'tencent/Hunyuan3D-2mv' 等
pipeline_shape = Hunyuan3DDiTFlowMatchingPipeline.from_pretrained(
'tencent/Hunyuan3D-2', # 模型仓库
subfolder='hunyuan3d-dit-v2-0' # 指定具体模型子目录
)
# 或者使用 Turbo 版本加速
# pipeline_shape = Hunyuan3DDiTFlowMatchingPipeline.from_pretrained(
# 'tencent/Hunyuan3D-2',
# subfolder='hunyuan3d-dit-v2-0-turbo'
# )
# 从图像生成网格 (输入图片路径)
# image 参数可以是本地路径,也可以是 PIL Image 对象
input_image_path = 'assets/demo.png' # 示例图片,请替换为你自己的图片路径
mesh_list = pipeline_shape(image=input_image_path)
# pipeline 返回的是一个包含 trimesh 对象的列表,通常只有一个
if mesh_list:
mesh = mesh_list[0]
print("形状生成成功!")
# 保存生成的网格模型为 GLB 文件 (推荐) 或 OBJ 文件
output_shape_path_glb = 'output_shape.glb'
output_shape_path_obj = 'output_shape.obj'
mesh.export(output_shape_path_glb)
# mesh.export(output_shape_path_obj) # OBJ 通常不包含顶点色,如果需要纹理,后续步骤会处理
print(f"网格已保存至 {output_shape_path_glb}")
else:
print("形状生成失败。")
输出的 mesh
是一个 Trimesh[14] 对象,你可以方便地将其保存为 .glb
, .obj
等常见 3D 文件格式。.glb
格式通常更受欢迎,因为它可以将几何、材质和纹理信息打包在单个文件中。
生成纹理 (使用 Hunyuan3D-Paint):
from hy3dgen.texgen import Hunyuan3DPaintPipeline
import trimesh # 假设上一步生成的 mesh 对象还在内存中
# 确保你已经有了一个网格对象 (mesh)
# 如果没有,可以先用上面的代码生成一个,或者加载一个现有的网格文件
# mesh = trimesh.load('path/to/your/mesh.obj') # 例如加载一个 OBJ 文件
if 'mesh' in locals() and mesh is not None: # 检查 mesh 是否已定义且有效
# 加载预训练的纹理生成管线
pipeline_paint = Hunyuan3DPaintPipeline.from_pretrained(
'tencent/Hunyuan3D-2', # 模型仓库
subfolder='hunyuan3d-paint-v2-0' # 指定纹理模型子目录
)
# 或者使用 Turbo 纹理模型加速
# pipeline_paint = Hunyuan3DPaintPipeline.from_pretrained(
# 'tencent/Hunyuan3D-2',
# subfolder='hunyuan3d-paint-v2-0-turbo'
# )
# 为网格生成纹理 (需要原始输入图像作为参考)
# mesh 参数需要是 Trimesh 对象
# image 参数同样可以是路径或 PIL Image 对象
textured_mesh = pipeline_paint(mesh=mesh, image=input_image_path)
if textured_mesh:
print("纹理生成成功!")
# 保存带纹理的网格模型 (GLB 格式会自动包含纹理)
output_textured_path_glb = 'output_textured.glb'
textured_mesh.export(output_textured_path_glb)
print(f"带纹理的网格已保存至 {output_textured_path_glb}")
else:
print("纹理生成失败。")
else:
print("无法进行纹理生成,因为没有有效的网格对象。请先生成或加载网格。")
这段代码会为之前生成的 mesh
对象添加纹理,同样需要原始的输入图像作为风格和内容的参考。最终得到的 textured_mesh
可以直接导出为包含纹理的 .glb
文件。
想要探索更高级的用法,例如 多视图图像生成 3D 或 为手绘/扫描的网格生成纹理?请查阅项目仓库中的 examples
文件夹,那里有更详细的示例代码。
**方式 2: Gradio 应用 (Gradio App)
如果你更喜欢图形化界面,可以在本地运行一个 Gradio 应用:
运行标准版本:
# 使用 Hunyuan3D-2mini 模型 (低显存模式)
python3 gradio_app.py --model_path tencent/Hunyuan3D-2mini --subfolder hunyuan3d-dit-v2-mini --texgen_model_path tencent/Hunyuan3D-2 --low_vram_mode
# 使用 Hunyuan3D-2mv (多视图) 模型 (低显存模式)
python3 gradio_app.py --model_path tencent/Hunyuan3D-2mv --subfolder hunyuan3d-dit-v2-mv --texgen_model_path tencent/Hunyuan3D-2 --low_vram_mode
# 使用 Hunyuan3D-2 (标准) 模型 (低显存模式)
python3 gradio_app.py --model_path tencent/Hunyuan3D-2 --subfolder hunyuan3d-dit-v2-0 --texgen_model_path tencent/Hunyuan3D-2 --low_vram_mode
运行 Turbo 加速版本:
# 使用 Hunyuan3D-2mini Turbo 模型 (低显存模式, 启用 FlashVDM 加速)
python3 gradio_app.py --model_path tencent/Hunyuan3D-2mini --subfolder hunyuan3d-dit-v2-mini-turbo --texgen_model_path tencent/Hunyuan3D-2 --low_vram_mode --enable_flashvdm
# 使用 Hunyuan3D-2mv Turbo 模型 (低显存模式, 启用 FlashVDM 加速)
python3 gradio_app.py --model_path tencent/Hunyuan3D-2mv --subfolder hunyuan3d-dit-v2-mv-turbo --texgen_model_path tencent/Hunyuan3D-2 --low_vram_mode --enable_flashvdm
# 使用 Hunyuan3D-2 Turbo 模型 (低显存模式, 启用 FlashVDM 加速)
python3 gradio_app.py --model_path tencent/Hunyuan3D-2 --subfolder hunyuan3d-dit-v2-0-turbo --texgen_model_path tencent/Hunyuan3D-2 --low_vram_mode --enable_flashvdm
- •
--model_path
和--subfolder
: 指定要加载的形状模型。 - •
--texgen_model_path
: 指定纹理模型所在的仓库 (通常是tencent/Hunyuan3D-2
,包含了 paint 模型)。 - •
--low_vram_mode
: 启用低显存优化。 - •
--enable_flashvdm
: 配合 Turbo 模型使用 FlashVDM 进一步加速。
运行后,在浏览器中打开指定的地址(通常是 http://127.0.0.1:7860
),即可看到操作界面,上传图片,点击生成。
方式 3: API 服务器 (API Server)
你可以将 Hunyuan3D 2.0 部署为一个本地 API 服务器,方便其他应用程序通过网络请求调用其功能,例如实现图像/文本到 3D 生成、为现有网格添加纹理等。
启动 API 服务器:
python api_server.py --host 0.0.0.0 --port 8080
- •
--host 0.0.0.0
: 允许局域网内其他设备访问。 - •
--port 8080
: 指定服务监听的端口号。
服务器启动后,你可以发送 POST 请求到相应的端点。以下是一个使用 curl
发送图像(进行 Base64 编码)生成无纹理 3D 模型的示例:
# 首先将你的图片编码为 Base64 字符串 (Linux/macOS 示例)
img_b64_str=$(base64 -i assets/demo.png)
# 或者使用 Python:
# import base64
# with open("assets/demo.png", "rb") as image_file:
# img_b64_str = base64.b64encode(image_file.read()).decode('utf-8')
# 发送 POST 请求到 /generate 端点
curl -X POST "http://localhost:8080/generate" \
-H "Content-Type: application/json" \
-d '{
"image": "'"$img_b64_str"'"
}' \
-o generated_model.glb # 将返回的 GLB 文件保存到本地
这个命令会将 assets/demo.png
图片发送到 API 服务器,请求生成 3D 模型,并将结果保存为 generated_model.glb
。查阅 api_server.py
代码可以了解更多可用的 API 端点和参数。
方式 4: Blender 插件 (Blender Addon)
对于 Blender 用户来说,这无疑是个好消息!Hunyuan3D 2.0 提供了 Blender 插件 (blender_addon.py
)。
使用前提: 你需要先在本地运行起 API 服务器(如方式 3 所述)。
安装与使用: 请遵循官方提供的教程(视频教程如下所示)来安装和配置插件。安装后,你可以在 Blender 内部直接调用 Hunyuan3D 2.0 的功能,将生成的模型无缝导入到你的 Blender 场景中。
(这是一个视频教程的演示链接,请在官方仓库查看具体内容)
这种方式极大地提高了工作流效率,让 3D 艺术家和设计师可以在熟悉的创作环境中利用 AI 的强大能力。
方式 5: 官方网站 (Official Site)
如果你不想进行任何本地安装和配置,最简单的方式就是访问官方在线体验平台:
Hunyuan3D Studio[15]
在这里,你可以直接上传图片,体验 Hunyuan3D 2.0 核心的图像到 3D 生成功能。这是快速感受其效果的最佳途径。
与同类项目的比较
目前,文本/图像到 3D 生成领域发展迅速,涌现了许多优秀的项目。相比之下,Hunyuan3D 2.0 展现了其独特优势:
- 1. 高分辨率与高质量纹理: 如性能评测所示,Hunyuan3D 2.0 在生成模型的几何细节和纹理质量方面表现突出,尤其是在生成高分辨率 (如 1K) 纹理贴图方面,其效果优于许多现有方案。
- 2. 强大的条件对齐能力: 模型能很好地理解和遵循输入图像的特征,生成的 3D 模型在形状、姿态和风格上与输入图像高度一致,这一点通过较高的 CLIP-score 和较低的 FID 分数得到了验证。
- 3. 灵活的两阶段架构: 将形状和纹理生成解耦,不仅降低了生成难度,也为用户提供了更大的灵活性。用户可以单独使用纹理生成模块为任何现有模型(包括手工建模、扫描模型等)进行 AI 纹理绘制,极大地扩展了应用场景。
- 4. 优化的模型版本: 提供了 Mini、MV(多视图)、Fast、Turbo 等多种模型变体,满足了不同硬件条件、不同输入类型(单图/多图)以及对生成速度的不同需求,使得技术更易于部署和应用。
- 5. 完善的工具链支持: 提供了代码、Gradio UI、API 服务、Blender 插件以及在线网站等多种使用方式,覆盖了从开发者集成到设计师直接使用的各种场景。
虽然一些开源项目(如 Luma AI 的 Genie、TripoSR 等)也在快速发展,提供了便捷的 3D 生成能力,而一些闭源商业软件可能在特定领域有深耕,但 Hunyuan3D 2.0 凭借其在高分辨率纹理生成、图像条件强对齐以及架构灵活性方面的综合优势,在当前的 3D AIGC 领域中占据了领先地位,特别是在追求高质量、高保真度 3D 资产生成的应用场景下极具竞争力。其性能指标在与顶级开源和闭源模型的对比中也证明了这一点。
总而言之,Hunyuan3D 2.0 不仅仅是一个强大的 3D 内容生成工具,更是一个推动 3D 创作民主化的重要里程碑。无论你是想快速将 2D 概念图转化为 3D 模型,为游戏或虚拟世界填充资产,还是探索 AI 辅助艺术创作的新边界,Hunyuan3D 2.0 都值得你深入了解和尝试。
引用链接
[1]
Download: huggingface.co/tencent/Hun…
[2]
Download: huggingface.co/tencent/Hun…
[3]
Download: huggingface.co/tencent/Hun…
[4]
Download: huggingface.co/tencent/Hun…
[5]
Download: huggingface.co/tencent/Hun…
[6]
Download: huggingface.co/tencent/Hun…
[7]
Download: huggingface.co/tencent/Hun…
[8]
Download: huggingface.co/tencent/Hun…
[9]
Download: huggingface.co/tencent/Hun…
[10]
Download: huggingface.co/tencent/Hun…
[11]
Download: huggingface.co/tencent/Hun…
[12]
Download: huggingface.co/tencent/Hun…
[13]
PyTorch 官网: pytorch.org/
[14]
Trimesh: trimesh.org/trimesh.htm…
[15]
Hunyuan3D Studio: 3d.hunyuan.tencent.com