The repository contains the code release for paper: Pre-NeRF
We highly recommend to use the docker image in /docker. Please make sure that your installation is a GPU friendly.
DATA_DIR=path/to/the/scene/directory
docker run -v $(pwd):/workspace \
-v /path/to/360_v2_nk:/workspace/360_v2_nk \
--gpus all --shm-size 24G --name prenerf --rm -it \
--entrypoint bash -d prenerf/prenerf:latest \
single_scene_processing.sh $DATA_DIRIf you want to run the scripts instead of downloading the data. You can do the following:
bash rsync.sh Then, you need to run our multi_scene_processing.sh
bash multi_scene_processing.sh n5k360Or for a single scene
bash single_scene_processing.sh n5k360/dish_1550705786Each scene should be as one or more videos in a directory. For example
n5k360l/
├── dish_1550705786 (scene 1)
│ ├── camera_A.h264
│ ├── camera_B.h264
│ ├── camera_C.h264
│ └── camera_D.h264
├── dish_1550705888 (scene 2)
│ ├── camera_A.h264
│ ├── camera_B.h264
│ ├── camera_C.h264
│ └── camera_D.h264
└── dish_1550705939 (scene 3)
├── camera_A.h264
├── camera_B.h264
├── camera_C.h264
└── camera_D.h264
Or if you have the scene as images, each scene folder should have images folder
n5k360/dish_1550704903/
└── images
├── 0001.png
├── 0002.png
├── 0003.png
├── 0004.png
├── ...
├── 0063.png
└── 0064.png
[We] used GNU Parallel, it also shows a better utilisation for the
multiprocessing on the GPU. However, the extending it takes 1-2hrs of preparing data.
Code: GNU General Public License v3.0 (see LICENSE), except for the third-party code below, which remains under the terms of its authors:
colmap2nerf.py, from NVIDIA's instant-ngp (scripts/colmap2nerf.py), which keeps its NVIDIA copyright notice and is governed by the NVIDIA Source Code License (non-commercial use). Helper functions taken from the same script (for exampleclosest_point_2_lines) also appear inllff2nerf.py.blur_fft/follows the FFT blur detector of the PyImageSearch tutorial "OpenCV Fast Fourier Transform (FFT) for blur detection in images and video streams" (A. Rosebrock, 2020).- The git submodules (LLFF, COLMAP, Nutrition5k, pixel-perfect-sfm, Hierarchical-Localization, detectron2) are separate projects under their own licences.
Data and models: the N5k360 dataset, the evaluation dataset and the pre-trained models are released under the Creative Commons Attribution-NonCommercial 4.0 International licence (CC BY-NC 4.0). You may share and adapt them for any non-commercial purpose, including research and teaching, provided you give appropriate credit. N5k360 is derived from Nutrition5k (Thames et al., CVPR 2021), released by Google under CC BY 4.0; please credit Nutrition5k as well when you use N5k360.
If you use this code or the N5k360 dataset, please cite the paper:
@inproceedings{almughrabi2025enriching,
title = {Enriching Unbounded Appearances for Neural Radiance Fields},
author = {AlMughrabi, Ahmad and Haroon, Umair and Marques, Ricardo and Radeva, Petia},
booktitle = {Pattern Recognition and Image Analysis (IbPRIA 2025)},
series = {Lecture Notes in Computer Science},
volume = {15937},
pages = {80--96},
publisher = {Springer},
year = {2026},
doi = {10.1007/978-3-031-99565-1_7}
}
An earlier version is available as a preprint:
@misc{almughrabi2023prenerf,
title={Pre-NeRF 360: Enriching Unbounded Appearances for Neural Radiance Fields},
author={Ahmad AlMughrabi and Umair Haroon and Ricardo Marques and Petia Radeva},
year={2023},
eprint={2303.12234},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
If you have any questions about the code, the N5k360 dataset or the paper, please email the authors or open an issue.