Grendel-GS 使用教程

Grendel-GS 使用教程

Grendel-GS Ongoing research training gaussian splatting at scale by distributed system Grendel-GS 项目地址: https://gitcode.com/gh_mirrors/gr/Grendel-GS

1. 项目介绍

Grendel-GS 是一个分布式系统下 3D Gaussian Splatting 训练的实现。该项目旨在帮助 3DGS 利用分布式系统支持实现其扩展性,类似于当前大型语言模型依赖的分布式系统。通过使用 Grendel,您的 3DGS 训练可以利用多个 GPU 的能力,实现显著更快的训练速度,支持 GPU 内存中更多的 Gaussian,并最终允许重构更大区域、更高分辨率的场景以获得更好的 PSNR。Grendel-GS 保留了原始算法,使其成为任何 Gaussian Splatting 工作流程或应用中原始 3DGS 实现的直接和安全替代。

2. 项目快速启动

环境准备

确保您的机器上安装了 Conda、与 CUDA 兼容的 GPU 和 CUDA 环境。然后安装以下必要的包:

  • PyTorch
  • Torchvision
  • Plyfile
  • tqdm

确保 PyTorch 版本 >= 1.10 以支持分布式训练的 torchrun。最后,编译并安装两个依赖的 CUDA 仓库 diff-gaussian-rasterizationsimple-knn,它们包含用于渲染等的自定义 CUDA 核心。

使用以下命令创建环境:

conda env create --file environment.yml
conda activate gaussian_splatting

克隆仓库

由于仓库包含子模块,请使用以下命令克隆:

git clone git@github.com:nyu-systems/Grendel-GS.git --recursive

单 GPU 训练

对于单 GPU 非分布式训练,且批量大小为 1 的情况:

python train.py -s <path to COLMAP dataset> --eval

分布式训练

对于 4 GPU 分布式训练,且批量大小为 4 的情况:

torchrun --standalone --nnodes=1 --nproc-per-node=4 train.py --bsz 4 -s <path to COLMAP dataset> --eval

3. 应用案例和最佳实践

  • 案例一:使用 Grendel-GS 在 4K 场景下训练 Mega-NeRF Rubble,支持超过 4000 万个 Gaussian,而不会出现内存溢出。
  • 案例二:在仅 45 秒内将 Temple&Tanks Truck 场景训练至 PSNR 23.79(基于 7000 张图像)。

4. 典型生态项目

目前,Grendel-GS 是一个独立的开源项目,它基于原始的 3DGS 实现进行扩展。其生态项目可能包括:

  • 其他基于 Gaussian Splatting 的渲染和训练项目。
  • 利用 Grendel-GS 进行扩展的定制化 CUDA 核心开发。
  • 针对特定应用场景优化的 Grendel-GS 集成。

以上是 Grendel-GS 的基本使用教程,希望对您有所帮助。

Grendel-GS Ongoing research training gaussian splatting at scale by distributed system Grendel-GS 项目地址: https://gitcode.com/gh_mirrors/gr/Grendel-GS

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

葛月渊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值