1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/OpenXRLab-xrnerf

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
installation.md 8.7 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 26.11.2024 08:06 d80819a

Установка

В этом файле мы приводим некоторые советы по установке XRNeRF.

Требования

  • Linux
  • Python 3.7+
  • PyTorch 1.10+ (необходимо)
  • CUDA 11.0+ (необходимо)
  • GCC 7.5+
  • build-essential: установите с помощью apt-get install -y build-essential git ninja-build ffmpeg libsm6 libxext6 libgl1
  • mmcv-full: установите, следуя инструкциям на сайте
  • Numpy
  • ffmpeg (предпочтительно версии 4.2)
  • opencv-python 3+: установите с помощью команды pip install opencv-python>=3
  • imageio: установите с помощью команды pip install imageio
  • scikit-image: установите с помощью команды pip install scikit-image
  • lpips: установите с помощью команды pip install lpips
  • trimesh: установите с помощью команды pip install trimesh
  • smplx: установите с помощью команды pip install smplx
  • spconv: установите подходящую библиотеку видения, соответствующую вашей библиотеке CUDA, например, pip install spconv-cu113
  • pytorch3d: установите с помощью команды pip install "git+https://github.com/facebookresearch/pytorch3d.git@stable"

Что касается требований к оборудованию: Для Instant-NGP требуется GPU-ARCH>=75, что означает, что для полной поддержки требуется как минимум RTX 20X0.

RTX 30X0 A100 RTX 20X0 TITAN V / V100 GTX 10X0 / TITAN Xp GTX 9X0 K80
86 80 75 70 61 52 37

Если вам не нужен Instant-NGP, spconv зависит от минимальной версии CUDA. Поэтому требуется как минимум CUDA 10.2.

Подготовка среды

a. Установите библиотеки разработки.

sudo apt install libgl-dev freeglut3-dev build-essential git ninja-build ffmpeg libsm6 libxext6 libgl1

b. Создайте виртуальную среду conda и активируйте её.

conda create -n xrnerf python=3.7 -y
conda activate xrnerf

c. Установите PyTorch и torchvision

  1. Проверьте таблицу соответствия версий PyTorch-CUDA на сайтах или в блоге.
  2. Найдите подходящую версию torch vision (>=1.10.0 и соответствующую вашему видению CUDA) на сайтах, таких как cu111/torch-1.10.0%2Bcu111-cp37-cp37m-linux_x86_64.whl, скачайте файл whl.
  3. Установите файл whl, например pip install torch-1.10.0+cu111-cp37-cp37m-linux_x86_64.whl.
  4. Проверьте сайт и установите указанную версию torchvision, например pip install torchvision==0.12.0.

d. Установите Другие Необходимые Пакеты Python

  • Вы можете использовать pip install requirements.txt для установки большинства необходимых пакетов. Если этот шаг успешен, вы должны перейти к шагам kilo-cuda и spconv, чтобы установить их вручную. Или вы можете пропустить этот шаг и следовать инструкциям по установке ниже.

  • pip install 'opencv-python>=3' yapf imageio scikit-image lpips trimesh smplx

  • Установите mmcv-full, следуя инструкциям. Установка

  • Установите spconv с помощью pip install, например: pip install spconv-cu111. Обратите внимание, что поддерживаются только указанные версии CUDA-Vision, следуя их установке (https://github.com/traveller59/spconv).

  • Установите pytorch3d с помощью: pip install "git+https://github.com/facebookresearch/pytorch3d.git@stable".

  • Установите kilo-cuda, следуя их инструкции по установке (https://github.com/creiser/kilonerf#option-b-build-cuda-extension-yourself) (необязательно, требуется только для kilo-nerf).

  • Установите tcnn с помощью: pip install git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch или следуя их инструкции по установке (https://github.com/NVlabs/tiny-cuda-nn#pytorch-extension) (необязательно, требуется только для instant-ngp).

e. Установка расширений

  • Создайте расширение cuda raymarch для поддержки instant-ngp, следуя инструкции (ngp_raymarch ../../extensions/ngp_raymarch/README.md).

  • Создайте расширение cuda mesh_grid для поддержки gnr, следуя инструкции (mesh_grid ../../extensions/mesh_grid/README.md).

d. Скачайте smpl_t_pose для поддержки GNR

Чтобы поддержать алгоритм GNR, вам нужно скачать папку smpl_t_pose из GNR (https://github.com/generalizable-neural-performer/gnr) и изменить basedata_cfg.t_pose_path в configs/gnr/gnr_genebody.py на соответствующее местоположение.

Другой вариант: Docker Image

Вам нужно настроить демон docker, чтобы включить поддержку gpu для docker-build (для установки расширений cuda).

sudo apt-get install nvidia-container-runtime -f -y
sudo cp -f docker/daemon.json /etc/docker
sudo systemctl restart docker

Подробнее см. здесь.

a. Создайте образ

Мы предоставляем Dockerfile для создания образа.

docker build -f ./docker/Dockerfile --rm -t xrnerf .

Важно: убедитесь, что вы установили nvidia-container-toolkit.

b. Создайте контейнер

Создайте контейнер с командой:

docker run --gpus all -it xrnerf /bin/bash

Скопируйте проект в контейнер docker на вашем компьютере.

# d287273af72e — это идентификатор контейнера, используйте «docker ps -a», чтобы найти его
docker cp ProjectPath/xrnerf d287273af72e:/workspace

Проверка

Чтобы проверить, правильно ли установлены XRNeRF и требуемая среда, мы можем запустить тесты Python.

coverage run --source xrnerf/models -m pytest -s test/models && coverage report -m

Обратите внимание, что перед этим необходимо установить coverage и pytest.

pip install coverage pytest -i https://pypi.tuna.tsinghua.edu.cn/simple

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/OpenXRLab-xrnerf.git
git@api.gitlife.ru:oschina-mirror/OpenXRLab-xrnerf.git
oschina-mirror
OpenXRLab-xrnerf
OpenXRLab-xrnerf
main