ClimateNeRF环境配置

最近在学习这个,需要配置环境。总的来说挺好配的,但是有点问题,需要记录一下。

环境问题

  • 克隆仓库:

    1
    git clone --recursive https://github.com/y-u-a-n-l-i/Climate_NeRF.git

  • 创建环境:

    1
    conda create -n climatenerf python=3.8 和 conda activate climatenerf

  • 安装 torch 等:

    1
    pip install torch==1.11.0 torchvision==0.12.0 --extra-index-url https://download.pytorch.org/whl/cu113

  • 安装torch-scatter:

    1
    pip install torch-scatter -f https://data.pyg.org/whl/torch-1.11.0+cu113.html

  • 安装 cmake:

    1
    conda install cmake

  • 安装 nvcc:

    • 需要指定版本

      1
      conda install -c "nvidia/label/cuda-11.7.0" cuda-nvcc

    • 头文件:

      1
      conda install -c conda-forge cudatoolkit-dev

  • 安装 tinycudann 的 PyTorch extension:需要注意要根据这个

    来安装 float32 precision 的

  • 克隆 tinycudann:

    1
    git clone --recursive https://github.com/nvlabs/tiny-cuda-nn

  • cd tiny-cuda-nn

  • 这个地方由于服务器环境的原因 cmake 参数需要设置一下,同时在 gpu 节点上运行:

    1
    2
    cmake . -B build -DCMAKE_BUILD_TYPE=RelWithDebInfo -S . -G Ninja
    cmake --build build --config RelWithDebInfo -j

  • 安装 PyTorch extension:

    1
    2
    cd bindings/torch
    python setup.py install

  • 安装 mmsegmentation:GET STARTED: INSTALL AND RUN MMSEG

    • Install MMCV using MIM

      1
      2
      3
      pip install -U openmim
      mim install mmengine
      mim install "mmcv>=2.0.0"

    • Install MMSegmentation

      1
      pip install "mmsegmentation>=1.0.0"

    • 下载 segmentation model segformer_mit-b5_8xb1-160k_cityscapes-1024x1024 到合适的文件夹中:

      1
      mim download mmsegmentation --config segformer_mit-b5_8xb1-160k_cityscapes-1024x1024 --dest .

  • 安装 MTMT:

    1
    pip3 install --no-build-isolation git+https://github.com/lucasb-eyer/pydensecrf.git

    • 安装这个的时候出现了一些问题(如下图)。错误的原因是缺失 pydensecrf/eigen.cpp 这个文件。需要换用另一种方式下载 pydensecrf

      1
      conda install -c conda-forge pydensecrf

  • 下载 MTMT 的 checkpoint:Trained Model

  • 安装剩余的依赖:

    1
    pip install -r requirements.txt

    • 在这其中安装 cupy 的时候出错了。使用命令

      1
      pip install cupy-cuda113
      单独安装(要根据自己的 cuda 版本来),然后删掉 requirements.txt 中的 cupy 这一项

  • 安装 cuda extension:

    1
    pip install models/csrc

    注意需要 pip >= 22.1(照着流程来的话 pip 版本应该不会错),并且该安装要在 gpu 节点上进行

然后应该就可以运行了。跑个 training 试试看。

训练问题

  1. ftfy 和 regex

直接安装:pip install ftfypip install regex

  1. cuda 头文件(这个是在另一个服务器上发生的问题,也记录一下)

train 跑起来后出现了这样的错误,错误的原因是找不到 cuda 的某个头文件。这是由于作者把头文件路径写死了,但是我们的服务器环境路径不一样。

翻下 conda 环境,发现该头文件在这个路径:/home/haoq_lab/cse30013594/miniconda3/envs/climatenerf/include/math_functions.h

修改 ./datasets/stylize_tools/smooth_filter.py 文件

然后就能正常跑了。

参考资料