许可协议: cc-by-nc-2.0
任务标签: 图像转3D
[ECCV 2024] VFusion3D:从视频扩散模型中学习可扩展的3D生成模型
项目主页 | 论文链接
VFusion3D是一个大型前馈式3D生成模型,通过少量3D数据和大量合成多视角数据进行训练。这是首个探索可扩展3D生成/重建模型的研究,为构建3D基础模型迈出了重要一步。
VFusion3D:从视频扩散模型中学习可扩展的3D生成模型
韩俊林、Filippos Kokkinos、Philip Torr
Meta GenAI团队与牛津大学TVG实验室
欧洲计算机视觉会议(ECCV), 2024
最新动态
快速开始
使用VFusion3D非常简单!🤗 以下是Hugging Face平台的使用指南:
安装依赖项(可选)
根据需求可选择安装网格生成或视频渲染功能包:
!pip --quiet install imageio[ffmpeg] PyMCubes trimesh rembg[gpu,cli] kiui
直接加载模型
import torch
from transformers import AutoModel, AutoProcessor
model = AutoModel.from_pretrained("jadechoghari/vfusion3d", trust_remote_code=True)
processor = AutoProcessor.from_pretrained("jadechoghari/vfusion3d")
import requests
from PIL import Image
from io import BytesIO
image_url = 'https://sm.ign.com/ign_nordic/cover/a/avatar-gen/avatar-generations_prsz.jpg'
response = requests.get(image_url)
image = Image.open(BytesIO(response.content))
image, source_camera = processor(image)
output_planes = model(image, source_camera)
print("平面维度:", output_planes.shape)
output_planes, mesh_path = model(image, source_camera, export_mesh=True)
print("平面维度:", output_planes.shape)
print("网格保存路径:", mesh_path)
output_planes, video_path = model(image, source_camera, export_video=True)
print("平面维度:", output_planes.shape)
print("视频保存路径:", video_path)
- 默认模式(平面输出):直接输出适用于3D操作的平面数据
- 网格导出:设置
export_mesh=True
可生成.obj格式网格文件,通过mesh_size
参数调节精度
- 视频渲染:设置
export_video=True
可生成多视角渲染视频,支持render_size
和fps
参数调节
欢迎体验我们的演示应用!🤗
效果对比
3D生成效果
用户调研结果
致谢
引用
如果本工作对您有帮助,请引用:
@article{han2024vfusion3d,
title={VFusion3D: Learning Scalable 3D Generative Models from Video Diffusion Models},
author={Junlin Han and Filippos Kokkinos and Philip Torr},
journal={European Conference on Computer Vision (ECCV)},
year={2024}
}
许可证
- VFusion3D主体采用CC-BY-NC协议,部分组件采用Apache 2.0许可证,部分模块受NVIDIA专有许可保护
- 模型权重同样遵循CC-BY-NC许可协议