大规模多视图高斯模型
这是《LGM:用于高分辨率3D内容创建的大规模多视图高斯模型》的官方实现。
项目主页 | Arxiv | 模型权重 |
https://github.com/3DTopia/LGM/assets/25863658/cf64e489-29f3-4935-adba-e393a24c26e8
新闻
[2024.4.3] 感谢@yxymessi和@florinshen,我们修复了旋转归一化中的一个严重bug。我们使用正确的归一化微调了模型30个epoch,并上传了新的检查点。
Replicate演示:
感谢@camenduru!
安装
# 需要xformers! 请参考https://github.com/facebookresearch/xformers获取详细信息。
# 例如,我们使用torch 2.1.0 + cuda 11.8
pip install torch==2.1.0 torchvision==0.16.0 torchaudio==2.1.0 --index-url https://download.pytorch.org/whl/cu118
pip install -U xformers --index-url https://download.pytorch.org/whl/cu118
# 修改版高斯散射(+ 深度,alpha渲染)
git clone --recursive https://github.com/ashawkey/diff-gaussian-rasterization
pip install ./diff-gaussian-rasterization
# 用于网格提取
pip install git+https://github.com/NVlabs/nvdiffrast
# 其他依赖
pip install -r requirements.txt
预训练权重
我们的预训练权重可以从huggingface下载。
例如,下载fp16模型用于推理:
mkdir pretrained && cd pretrained
wget https://huggingface.co/ashawkey/LGM/resolve/main/model_fp16_fixrot.safetensors
cd ..
对于MVDream和ImageDream,我们使用diffusers实现。 它们的权重将自动下载。
推理
推理需要约10GB的GPU内存(加载所有imagedream、mvdream和我们的LGM)。
### 用于文本/图像到3D的gradio应用
python app.py big --resume pretrained/model_fp16.safetensors
### 测试
# --workspace: 保存输出的文件夹(*.ply和*.mp4)
# --test_path: 包含图像的文件夹路径,或单个图像的路径
python infer.py big --resume pretrained/model_fp16.safetensors --workspace workspace_test --test_path data_test
### 本地GUI可视化保存的ply
python gui.py big --output_size 800 --test_path workspace_test/saved.ply
### 网格转换
python convert.py big --test_path workspace_test/saved.ply
更多选项,请查看options。
训练
注意: 由于我们训练中使用的数据集基于AWS,无法直接在新环境中用于训练。 我们提供了必要的训练代码框架,请检查并修改数据集实现!
我们还在objaverse_filter中提供了用于训练LGM的Objaverse约80K子集。
# 调试训练
accelerate launch --config_file acc_configs/gpu1.yaml main.py big --workspace workspace_debug
# 训练(使用slurm进行多节点训练)
accelerate launch --config_file acc_configs/gpu8.yaml main.py big --workspace workspace
致谢
本工作建立在许多出色的研究工作和开源项目之上,非常感谢所有作者的分享!
引用
@article{tang2024lgm,
title={LGM: Large Multi-View Gaussian Model for High-Resolution 3D Content Creation},
author={Tang, Jiaxiang and Chen, Zhaoxi and Chen, Xiaokang and Wang, Tengfei and Zeng, Gang and Liu, Ziwei},
journal={arXiv preprint arXiv:2402.05054},
year={2024}
}