Scripts para realizar renderização distribuída de objetos Objaverse no Blender em muitas GPUs e processos.
Testamos os scripts de renderização apenas em máquinas Ubuntu que possuem GPUs NVIDIA.
Se você tiver algum problema, abra um problema! :)
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 >
Isso renderizará as imagens no diretório views
.
No script scripts/distributed.py
, usamos Wandb para registrar os resultados da renderização. Você pode criar uma conta gratuita e definir a variável de ambiente WANDB_API_KEY
como sua chave de API.
Também usamos AWS S3 para fazer upload das imagens renderizadas. Você pode criar uma conta gratuita e definir as variáveis de ambiente AWS_ACCESS_KEY_ID
e AWS_SECRET_ACCESS_KEY
com suas credenciais.
Objaverse é um projeto de código aberto desenvolvido pela equipe PRIOR do Allen Institute for AI (AI2). AI2 é um instituto sem fins lucrativos com a missão de contribuir para a humanidade através de pesquisa e engenharia de IA de alto impacto.