🚀 [ECCV 2024] VFusion3D:從視頻擴散模型中學習可擴展的3D生成模型
VFusion3D是一個大型前饋3D生成模型,它使用少量3D數據和大量合成多視圖數據進行訓練。該工作首次探索了可擴展的3D生成/重建模型,是邁向3D基礎模型的重要一步。
項目頁面,論文鏈接
VFusion3D:從視頻擴散模型中學習可擴展的3D生成模型
韓俊霖,菲利普斯·科基諾斯,菲利普·托爾
GenAI,Meta和牛津大學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)
- 默認(平面):默認情況下,VFusion3D輸出平面,非常適合進一步的3D操作。
- 導出網格:如果你需要3D網格,只需將
export_mesh
設置為True
,你將得到一個.obj
文件。你還可以通過調整mesh_size
參數來自定義網格分辨率。
- 導出視頻:如果你想要一個3D視頻,將
export_video
設置為True
,你將獲得一個從多個角度渲染的精美視頻。你可以調整render_size
和fps
來優化視頻效果。
查看我們的演示應用,看看VFusion3D的實際效果!🤗
✨ 主要特性
🔍 最新消息
📊 結果與比較
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許可協議,但項目的部分內容遵循不同的許可條款:OpenLRM整體遵循Apache License 2.0,而某些組件遵循NVIDIA的專有許可協議。
- VFusion3D的模型權重也遵循CC - BY - NC許可協議。