nerfstudio
nerfstudio copied to clipboard
ns-render spiral fails with ´AttributeError: 'ParallelDataManager' object has no attribute 'eval_dataloader'.´
Describe the bug
When attempting to render a spiral using ns-render spiral it fails with the following error:
✅ Done loading checkpoint from outputs/nerfacto-big/nerfacto/2024-03-26_224100/nerfstudio_models/step-000099999.ckpt
Traceback (most recent call last):
File "/home/user/.local/bin/ns-render", line 8, in <module>
sys.exit(entrypoint())
File "/home/user/nerfstudio/nerfstudio/scripts/render.py", line 896, in entrypoint
tyro.cli(Commands).main()
File "/home/user/nerfstudio/nerfstudio/scripts/render.py", line 668, in main
camera_start, _ = pipeline.datamanager.eval_dataloader.get_camera(image_idx=0)
File "/home/user/.local/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1614, in __getattr__
raise AttributeError("'{}' object has no attribute '{}'".format(
AttributeError: 'ParallelDataManager' object has no attribute 'eval_dataloader'. Did you mean: 'eval_dataset'?
To Reproduce Steps to reproduce the behavior:
All commands were executed in Docker container built for CUDA_ARCHITECTURES=86 based on master branch as of 2024-03-26 (71de07163a9642016c9bde1d3705e3fb62babd69)
- Run
ns-processon polycam dataset - Do
nerfacto-bigtraining usingns-train nerfacto-big [... many options, names, ...] nerfstudio-data --train-split-fraction 1 --data /workspace/outputs/2024-03-25_polycam_statue_right_eye_Nordbad - Wait for training to complete
- Check result using
ns-viewer --load-config /workspace/outputs/nerfacto-big/nerfacto/2024-03-26_224100/config.yml(all good here) - Attempt to render spiral using
ns-render spiral --load-config /workspace/outputs/nerfacto-big/nerfacto/2024-03-26_224100/config.ymland get the following output (with error at end):========== == CUDA == ========== CUDA Version 11.8.0 Container image Copyright (c) 2016-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. This container image and its contents are governed by the NVIDIA Deep Learning Container License. By pulling and using the container, you accept the terms and conditions of this license: https://developer.nvidia.com/ngc/nvidia-deep-learning-container-license A copy of this license is made available in this container at /NGC-DL-CONTAINER-LICENSE for your convenience. [11:31:57] Auto image downscale factor of 1 nerfstudio_dataparser.py:484 Dataset is overriding orientation method to none nerfstudio_dataparser.py:232 Dataset is overriding orientation method to none nerfstudio_dataparser.py:232 Dataset is overriding orientation method to none nerfstudio_dataparser.py:232 Loading data batch ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 Started threads Loading latest checkpoint from load_dir ✅ Done loading checkpoint from outputs/nerfacto-big/nerfacto/2024-03-26_224100/nerfstudio_models/step-000099999.ckpt Traceback (most recent call last): File "/home/user/.local/bin/ns-render", line 8, in <module> sys.exit(entrypoint()) File "/home/user/nerfstudio/nerfstudio/scripts/render.py", line 896, in entrypoint tyro.cli(Commands).main() File "/home/user/nerfstudio/nerfstudio/scripts/render.py", line 668, in main camera_start, _ = pipeline.datamanager.eval_dataloader.get_camera(image_idx=0) File "/home/user/.local/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1614, in __getattr__ raise AttributeError("'{}' object has no attribute '{}'".format( AttributeError: 'ParallelDataManager' object has no attribute 'eval_dataloader'. Did you mean: 'eval_dataset'?
Expected behavior
- spiral video is rendered
Screenshots N/A
Additional context
- I saw other bug reports relating to spiral rendering (#2631, #2637) thugh they were closed as fixed via 8b85c44 which according to GitHub is part of the main branch I built.
- Manually defined paths for the camera seem to work as expected. Some keyframes added to the viewer gave me the following command which works fine:
ns-render camera-path --load-config outputs/nerfacto-big/nerfacto/2024-03-26_224100/config.yml --camera-path-filename /workspace/outputs/2024-03-25_polycam_statue_right_eye_Nordbad/camera_paths/manual_spiral_test1.json --output-path renders/2024-03-25_polycam_statue_right_eye_Nordbad/manual_spiral_test1.mp4
@mcallisterdavid has been looking into ns-render spiral issues!