nerfstudio-project / nerfstudio

A collaboration friendly studio for NeRFs
https://docs.nerf.studio
Apache License 2.0
9.34k stars 1.26k forks source link

zip nerf is not working 360.gin file is missing #3270

Open sumanttyagi opened 3 months ago

sumanttyagi commented 3 months ago

as soon we start to train a model after processing an images with comlap.

below isssues are coming

ERROR:root:Path not found: /configs/360.gin
Traceback (most recent call last):
  File "C:\Users\sum11525\Anaconda3\envs\nerfstudio1\lib\runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "C:\Users\sum11525\Anaconda3\envs\nerfstudio1\lib\runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "C:\Users\sum11525\Anaconda3\envs\nerfstudio1\Scripts\ns-train.exe\__main__.py", line 7, in <module>
  File "C:\Users\sum11525\Anaconda3\envs\nerfstudio1\lib\site-packages\nerfstudio\scripts\train.py", line 262, in entrypoint
    main(
  File "C:\Users\sum11525\Anaconda3\envs\nerfstudio1\lib\site-packages\nerfstudio\scripts\train.py", line 247, in main
    launch(
  File "C:\Users\sum11525\Anaconda3\envs\nerfstudio1\lib\site-packages\nerfstudio\scripts\train.py", line 189, in launch    main_func(local_rank=0, world_size=world_size, config=config)
  File "C:\Users\sum11525\Anaconda3\envs\nerfstudio1\lib\site-packages\nerfstudio\scripts\train.py", line 99, in train_loop
    trainer.setup()
  File "C:\Users\sum11525\Anaconda3\envs\nerfstudio1\lib\site-packages\nerfstudio\engine\trainer.py", line 153, in setup    self.pipeline = self.config.pipeline.setup(
  File "C:\Users\sum11525\Anaconda3\envs\nerfstudio1\lib\site-packages\nerfstudio\configs\base_config.py", line 54, in setup
    return self._target(self, **kwargs)
  File "C:\Users\sum11525\Anaconda3\envs\nerfstudio1\lib\site-packages\zipnerf_ns\zipnerf_pipeline.py", line 63, in __init__
    self._model = config.model.setup(
  File "C:\Users\sum11525\Anaconda3\envs\nerfstudio1\lib\site-packages\nerfstudio\configs\base_config.py", line 54, in setup
    return self._target(self, **kwargs)
  File "C:\Users\sum11525\Anaconda3\envs\nerfstudio1\lib\site-packages\nerfstudio\models\base_model.py", line 85, in __init__
    self.populate_modules()  # populate the modules
  File "C:\Users\sum11525\Anaconda3\envs\nerfstudio1\lib\site-packages\zipnerf_ns\zipnerf_model.py", line 56, in populate_modules
    gin.parse_config_files_and_bindings(gin_files, None)
  File "C:\Users\sum11525\Anaconda3\envs\nerfstudio1\lib\site-packages\gin\config.py", line 2497, in parse_config_files_and_bindings
    includes_and_imports = parse_config_file(config_file, skip_unknown)
  File "C:\Users\sum11525\Anaconda3\envs\nerfstudio1\lib\site-packages\gin\config.py", line 2457, in parse_config_file
    raise IOError(err_str.format(config_file, prefixes))
OSError: Unable to open file: /configs/360.gin. Searched config paths: [''].
sumanttyagi commented 3 months ago

this issue was reported earlier no enhancement or fix is provided till now -https://github.com/nerfstudio-project/nerfstudio/issues/2923

ichsan2895 commented 3 months ago

this issue was reported earlier no enhancement or fix is provided till now -https://github.com/nerfstudio-project/nerfstudio/issues/2923

Have you try this way? It works with Linux. I never test on Windows

pip install nerfstudio==1.0.3
pip install git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch

git clone https://github.com/SuLvXiangXin/zipnerf-pytorch.git
cd zipnerf-pytorch
pip install ./extensions/cuda
pip install torch-scatter -f https://data.pyg.org/whl/torch-2.0.0+${CUDA}.html

pip install -e . 
ns-install-cli

Then you will able to run this command

ns-train zipnerf nerfstudio-data --data path/to/your/data
sumanttyagi commented 3 months ago

@ichsan2895 Please check wil running pip install ./extensions/cuda

Processing ./extensions/cuda
  Preparing metadata (setup.py) ... done
Building wheels for collected packages: cuda-backend
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> See above for output.

  note: This error originates from a subprocess, and is likely not a problem with pip.
  Building wheel for cuda-backend (setup.py) ... error
  ERROR: Failed building wheel for cuda-backend
  Running setup.py clean for cuda-backend
Failed to build cuda-backend
ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (cuda-backend)
koktavy commented 2 months ago

@sumanttyagi I ran into that error during Zipnerf install, and was able to resolve that error by setting the C++ version:

set NVCC_APPEND_FLAGS=-std=c++17

But trying to install torch-scatter broke my installation, possibly because of torch 2.0 (in)compatibility.

I still have the /configs/360.gin error.

koktavy commented 2 months ago

Ah, I was able to provide the 360.gin file manually and start training!

It's looking for /configs/360.gin relative to the command directory. So if you're running your command from the root folder of nerfstudio like I am, create the configs folder in nerfstudio. We'll see how the training goes 🤞

Next step for me will be to run the Reality Capture poses through Zip NeRF instead of the COLMAP pose data, if possible.

sumanttyagi commented 2 months ago

@koktavy

sumanttyagi commented 2 months ago
koktavy commented 2 months ago

I agree, it should be included, something is not right.

After training "finished" the results did not converge. I'm not familiar with the GIN file and what the parameters control, I was hoping it would be set to ideal defaults.

With the env created are you able to train successfully or you have the same error?

sumanttyagi commented 1 month ago

@koktavy not working please revisit the code