用于在 Blender 中跨多个 GPU 和进程执行 Objaverse 对象的分布式渲染的脚本。
我们仅在具有 NVIDIA GPU 的 Ubuntu 计算机上测试了渲染脚本。
如果您遇到任何问题,请提出问题! :)
wget https://download.blender.org/release/Blender3.2/blender-3.2.2-linux-x64.tar.xz
tar -xf blender-3.2.2-linux-x64.tar.xz
rm blender-3.2.2-linux-x64.tar.xz
# this is needed to download urls in blender
# https://github.com/python-poetry/poetry/issues/5117#issuecomment-1058747106
sudo update-ca-certificates --fresh
export SSL_CERT_DIR=/etc/ssl/certs
pip install -r requirements.txt
sudo apt-get install xserver-xorg
sudo python3 scripts/start_xserver.py start
python3 scripts/download_objaverse.py --start_i 0 --end_i 100
python3 scripts/distributed.py
--num_gpus < NUM_GPUs >
--workers_per_gpu < WORKERS_PER_GPU >
--input_models_path < INPUT_MODELS_PATH >
然后,这会将图像渲染到views
目录中。
在scripts/distributed.py
脚本中,我们使用Wandb来记录渲染结果。您可以创建一个免费帐户,然后将WANDB_API_KEY
环境变量设置为您的 API 密钥。
我们还使用 AWS S3 上传渲染的图像。您可以创建一个免费账户,然后将AWS_ACCESS_KEY_ID
和AWS_SECRET_ACCESS_KEY
环境变量设置为您的凭证。
Objaverse 是由艾伦人工智能研究所 (AI2) 的 PRIOR 团队构建的开源项目。 AI2 是一家非营利机构,其使命是通过高影响力的人工智能研究和工程为人类做出贡献。