Apache License 2.0

项目介绍

hustvl/GaussianDreamer 是一个托管在 GitHub 上的开源项目,主要使用 Python 编写,采用 Apache License 2.0 许可证,目前获得 832 个 Star、48 次 Fork。

仓库全名
hustvl/GaussianDreamer
开源许可证
Apache License 2.0
Star 数
832
Fork 数
48
未关闭 Issue
18

README 摘要

GaussianDreamer: Fast Generation from Text to 3D Gaussians by Bridging 2D and 3D Diffusion Models (CVPR 2024) Project Page | arxiv Paper GaussianDreamer: Fast Generation from Text to 3D Gaussians by Bridging 2D and 3D Diffusion Models Taoran Yi 1 , Jiemin Fang 2‡ , Junjie Wang 2 , Guanjun Wu 3 , Lingxi Xie 2 , Xiaopeng Zhang 2 ,Wenyu Liu 1 , Qi Tian 2 , Xinggang Wang 1‡✉ 1 School of EIC, HUST   2 Huawei Inc…

完整内容见 GitHub 原始 README 或本页 。

常见问题

GaussianDreamer 用什么语言开发?

主要使用 Python 编写,采用 Apache License 2.0 许可证,目前有 832 个 Star。

GaussianDreamer 可以免费商用吗?

仓库采用 Apache License 2.0 许可证,可免费使用与修改,商业使用请遵守许可证条款(例如保留版权声明与许可声明)。

如何获取 GaussianDreamer 的源码?

可以直接克隆仓库:git clone https://github.com/hustvl/GaussianDreamer.git,默认分支为 main;安装与运行步骤见仓库 README。

GaussianDreamer 最近还在维护吗?

仓库最近一次更新为 2025年1月13日,当前有 18 个未关闭 Issue;Star 数为 832,可作为社区活跃度的参考。

关于

[CVPR 2024] GaussianDreamer: Fast Generation from Text to 3D Gaussians by Bridging 2D and 3D Diffusion Models

描述取自 GitHub 官方 API,中文内容由 GitRead 中文社区 编辑团队整理。

简要分析

热度分
940
价值分
513
活跃状态
活跃

语言占比

C
C++
CMake
Cuda
Python
Shell

README

block

GaussianDreamer: Fast Generation from Text to 3D Gaussians by Bridging 2D and 3D Diffusion Models (CVPR 2024)

Project Page | arxiv Paper

GaussianDreamer: Fast Generation from Text to 3D Gaussians by Bridging 2D and 3D Diffusion Models

Taoran Yi1, Jiemin Fang2‡, Junjie Wang2, Guanjun Wu3, Lingxi Xie2,
Xiaopeng Zhang2,Wenyu Liu1, Qi Tian2 , Xinggang Wang1‡✉

1School of EIC, HUST  2Huawei Inc.   3School of CS, HUST  

‡Project lead. ✉Corresponding author.

block In recent times, the generation of 3D assets from text prompts has shown impressive results. Both 2D and 3D diffusion models can help generate decent 3D objects based on prompts. 3D diffusion models have good 3D consistency, but their quality and generalization are limited as trainable 3D data is expensive and hard to obtain. 2D diffusion models enjoy strong abilities of generalization and fine generation, but 3D consistency is hard to guarantee. This paper attempts to bridge the power from the two types of diffusion models via the recent explicit and efficient 3D Gaussian splatting representation. A fast 3D object generation framework, named as GaussianDreamer, is proposed, where the 3D diffusion model provides priors for initialization and the 2D diffusion model enriches the geometry and appearance. Operations of noisy point growing and color perturbation are introduced to enhance the initialized Gaussians. Our GaussianDreamer can generate a high-quality 3D instance or 3D avatar within 15 minutes on one GPU, much faster than previous methods, while the generated instances can be directly rendered in real time. block

🦾 Updates

  • 1/13/2025: We have released the code of GaussianDreamerPro. Have a try!
  • 6/26/2024: We have released GaussianDreamerPro with highly enhanced quality which can be seamlessly integrated into animation/simulation pipelines🚀.
  • 5/14/2024: We update the results of our method on T3Bench, refer to arxiv paper for details.
  • 3/8/2024: We also provide a GaussianDreamer extension for threestudio. Thanks for the contribution of Xinhua Cheng.
  • 2/27/2024: Accepted by CVPR 2024.
  • 12/6/2023: Update arxiv paper.
  • 11/27/2023: Update colab and huggingface demo.
  • 11/27/2023: Release the results initialized using point clouds with ground. And now we support importing the generated 3D assets into the Unity game engine with the help of UnityGaussianSplatting. See the Project Page for details.
  • 10/24/2023: Release the results initialized using SMPL. See the Project Page for details.
  • 10/21/2023: Fixed some installation issues, thanks to Sikuang Li, Tawfik Boujeh, and ashawkey. You can view the detailed information in branch diff.
  • 10/16/2023: The rough code has been released, and there may still be some issues. Please feel free to raise issues.

😀 Demo

Huggingface demo:

Colab demo: Open In Colab (Thanks camenduru.)

🚀 Get Started

Installation Install 3D Gaussian Splatting and Shap-E as fellow:

pip install torch==2.0.1+cu117 torchvision==0.15.2+cu117 torchaudio==2.0.2 --index-url https://download.pytorch.org/whl/cu117
pip install ninja
pip install -r requirements.txt

git clone https://github.com/hustvl/GaussianDreamer.git 
cd GaussianDreamer

pip install ./gaussiansplatting/submodules/diff-gaussian-rasterization
pip install ./gaussiansplatting/submodules/simple-knn

git clone https://github.com/openai/shap-e.git
cd shap-e
pip install -e .

Download finetuned Shap-E by Cap3D, and put it in ./load

Quickstart

Text-to-3D Generation

python launch.py --config configs/gaussiandreamer-sd.yaml --train --gpu 0 system.prompt_processor.prompt="a fox"

# if you want to import the generated 3D assets into the Unity game engine.
python launch.py --config configs/gaussiandreamer-sd.yaml --train --gpu 0 system.prompt_processor.prompt="a fox" system.sh_degree=3 

Text-to-Avatar Generation

python launch.py --config configs/gaussiandreamer-sd.yaml --train --gpu 0 system.prompt_processor.prompt="Spiderman stands with open arms" system.load_type=1

# if you want to import the generated 3D assets into the Unity game engine.
python launch.py --config configs/gaussiandreamer-sd.yaml --train --gpu 0 system.prompt_processor.prompt="Spiderman stands with open arms" system.load_type=1 system.sh_degree=3 

Application

Import the generated 3D assets into the Unity game engine to become materials for games and designs with the help of UnityGaussianSplatting. block

🏁 Evaluation

We evaluate our model using the ViT similarity and T3Bench, and the results are as follows.

ViT similarity

Methods ViT-L/14 $\uparrow$ ViT-bigG-14 $\uparrow$ Generation Time $\downarrow$
Shap-E 20.51 32.21 6 seconds
DreamFusion 23.60 37.46 1.5 hours
ProlificDreamer 27.39 42.98 10 hours
Instant3D 26.87 41.77 20 seconds
Ours 27.23 $\pm$ 0.06 41.88 $\pm$ 0.04 15 minutes

T3Bench

Methods Time Single Obj. Single w/ Surr. Multi Obj. Average
SJC – 24.7 19.8 11.7 18.7
DreamFusion 6 hours 24.4 24.6 16.1 21.7
Fantasia3D 6 hours 26.4 27.0 18.5 24.0
LatentNeRF 15 minutes 33.1 30.6 20.6 28.1
Magic3D 5.3 hours 37.0 35.4 25.7 32.7
ProlificDreamer 10 hours 49.4 44.8 35.8 43.3
Ours 15 minutes 54.0 48.6 34.5 45.7

📑 Citation

If you find this repository/work helpful in your research, welcome to cite the paper and give a ⭐. Some source code of ours is borrowed from Threestudio, 3DGS, depth-diff-gaussian-rasterization. We sincerely appreciate the excellent works of these authors.

@inproceedings{yi2023gaussiandreamer,
  title={GaussianDreamer: Fast Generation from Text to 3D Gaussians by Bridging 2D and 3D Diffusion Models},
  author={Yi, Taoran and Fang, Jiemin and Wang, Junjie and Wu, Guanjun and Xie, Lingxi and Zhang, Xiaopeng and Liu, Wenyu and Tian, Qi and Wang, Xinggang},
  year = {2024},
  booktitle = {CVPR}
}

评论

暂无评论