Notice
Recent Posts
Recent Comments
Link
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Tags
more
Archives
Today
Total
관리 메뉴

Trikang

tetra-nerf 코드 빌드 환경 설정(cmake, OptiX, CGAL 5.5.2) 본문

공부/ML

tetra-nerf 코드 빌드 환경 설정(cmake, OptiX, CGAL 5.5.2)

Trikang 2024. 3. 2. 15:50

nerfstudio가 설치되어 있다고 가정

 

github 페이지의 Installation guide를 보면 아래와 같이 스크립트를 치면 된다고 하는데

git clone https://github.com/jkulhanek/tetra-nerf
cd tetra-nerf
cmake .
make 
pip install -e .

 

개발 세팅이 되어있는게 많지 않아 하나하나 설치했다.

 

cmake 설치

https://stackoverflow.com/questions/58787687/qt-5-12-failed-to-find-gl-gl-h-in-usr-include-libdrm

 

Qt 5.12: Failed to find "GL/gl.h" in "/usr/include/libdrm"

I have a freshly installed Ubuntu 18.04.3 system (NVIDIA) with only Qt SDK 5.12.5, build-essential, git, and CMake installed. I'm trying to build a Qt project by opening the main CMakeLists.txt in Qt

stackoverflow.com

 

sudo apt-get install libcgal-dev

sudo chmod +x NVIDIA-OptiX-SDK-7.6.0-linux64-x86_64-31894579.sh

OptiX 설치

나는 아래와 같이 /opt 디렉토리에 optix라는 이름으로 설치하는 형태로 진행하였다.

sudo mv NVIDIA-OptiX-SDK-7.6.0-linux64-x86_64 /opt
[sudo] password for user:

cd opt/
sudo mv NVIDIA-OptiX-SDK-7.6.0-linux64-x86_64 optix

 

 

그런데 깃허브 페이지에는 아래와 같이 설치하는 것을 안내하긴 한다.

 

그리고 아래와 같이 Tetra-NeRF를 최종적으로 설치하려고 했는데

git clone https://github.com/jkulhanek/tetra-nerf
cd tetra-nerf
cmake .
make 
pip install -e .

 

아래와 같은 문제가 또 발생했다.

 

CGAL 5.5.2 설치

cgal을 apt를 통해 설치하니 최신 버전으로 설치되는데, 이게 호환이 되지 않는 문제가 있는 것 같음. 그래서 기존에 이렇게 설치했던 패키지를 날렸다(기존에 최신 버전으로 설치한 게 있는 경우)

sudo apt-get --purge remove libcgal-dev

 

tetra-nerf github 이슈를 보니, CGAL 5.5.2를 써야되는 것 같더라(https://geeksrepos.com/jkulhanek/tetra-nerf/issues/10) wget을 이용해서 다운받았다.

wget https://github.com/CGAL/cgal/releases/download/v5.5.2/CGAL-5.5.2.tar.xz

 

이후에 아래와 같은 절차로 설치(https://doc.cgal.org/5.5.4/Manual/usage.html 참고)

tar xf CGAL-5.5.2.tar.xz
cd CGAL-5.5.2/
mkdir build
cd build/
cmake ..
sudo make install

 

다시 Tetra-NeRF 설치

그 이후에 다시 make 했더니 성공적으로 make가 진행되었다.

 

python -m tetranerf.scripts.process_images --path <data folder>
python -m tetranerf.scripts.triangulate --pointcloud <data folder>/sparse.ply --output <data folder>/sparse.th
ns-train tetra-nerf --pipeline.model.tetrahedra-path <data folder>/sparse.th minimal-parser --data <data folder>

<data folder> 예시: python -m tetranerf.scripts.process_images  --path datasets/processed/nerf_llff_fern

Comments