├── .gitignore ├── LICENSE.txt ├── README.md ├── ablation_pbr_losses.sh ├── code ├── configs │ ├── config_dtu_pbrnerf.json │ ├── config_dtu_volsdf.json │ ├── config_dtu_volsdf_ngp.json │ ├── config_hdr_volsdf_ngp.json │ ├── config_synthetic_data.json │ ├── config_synthetic_data_brdf_weighted_specular_loss.json │ ├── config_synthetic_data_energy_cons_loss.json │ ├── config_synthetic_data_neilfpp.json │ ├── config_synthetic_data_neilfpp_no_lambertian.json │ └── config_synthetic_data_pbrnerf_neilfpp.json ├── dataset │ └── dataset.py ├── evaluation │ └── evaluate.py ├── model │ ├── density.py │ ├── embedder.py │ ├── geo_fixmesh.py │ ├── geo_volsdf.py │ ├── loss.py │ ├── neilf_brdf.py │ ├── nn_arch.py │ └── ray_sampling.py ├── pyrt │ ├── CMakeLists.txt │ ├── CUDABuffer.h │ ├── LaunchParams.h │ ├── SampleRenderer.cpp │ ├── SampleRenderer.h │ ├── common │ │ ├── 3rdParty │ │ │ ├── ply.cpp │ │ │ ├── ply.h │ │ │ ├── stb_image.h │ │ │ ├── stb_image_write.h │ │ │ └── tiny_obj_loader.h │ │ └── gdt │ │ │ ├── CMakeLists.txt │ │ │ ├── cmake │ │ │ ├── FindOptiX.cmake │ │ │ ├── FindTBB.cmake │ │ │ ├── configure_build_type.cmake │ │ │ ├── configure_glut.cmake │ │ │ ├── configure_optix.cmake │ │ │ └── configure_tbb.cmake │ │ │ └── gdt │ │ │ ├── gdt.cpp │ │ │ ├── gdt.h │ │ │ ├── math │ │ │ ├── AffineSpace.h │ │ │ ├── LinearSpace.h │ │ │ ├── Quaternion.h │ │ │ ├── box.h │ │ │ ├── constants.h │ │ │ ├── fixedpoint.h │ │ │ ├── vec.h │ │ │ └── vec │ │ │ │ ├── compare.h │ │ │ │ ├── functors.h │ │ │ │ └── rotate.h │ │ │ └── random │ │ │ └── random.h │ ├── devicePrograms.cu │ ├── optix.cpp │ ├── optix7.h │ └── pyrt.cpp ├── training │ └── train.py └── utils │ ├── general.py │ ├── geometry.py │ └── io.py ├── docs ├── pbrnerf_arch_diagram.png └── pbrnerf_pbr_losses.png ├── setup_conda.sh ├── setup_dataset.sh ├── setup_pip.sh ├── sota_dtu.sh ├── sota_neilfpp.sh ├── sweep_pbrnerf_dtu.sh ├── sweep_pbrnerf_neilfpp.sh ├── train_energy_cons_loss.sh ├── train_ndf_weighted_specular_loss.sh ├── train_neilfpp.sh ├── train_neilfpp_dtu.sh ├── train_neilfpp_dtu_ngp.sh ├── train_neilfpp_no_lambertian.sh ├── train_pbrnerf_dtu.sh └── train_pbrnerf_neilfpp.sh /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | __pycache__ 3 | -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/LICENSE.txt -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/README.md -------------------------------------------------------------------------------- /ablation_pbr_losses.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/ablation_pbr_losses.sh -------------------------------------------------------------------------------- /code/configs/config_dtu_pbrnerf.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/configs/config_dtu_pbrnerf.json -------------------------------------------------------------------------------- /code/configs/config_dtu_volsdf.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/configs/config_dtu_volsdf.json -------------------------------------------------------------------------------- /code/configs/config_dtu_volsdf_ngp.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/configs/config_dtu_volsdf_ngp.json -------------------------------------------------------------------------------- /code/configs/config_hdr_volsdf_ngp.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/configs/config_hdr_volsdf_ngp.json -------------------------------------------------------------------------------- /code/configs/config_synthetic_data.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/configs/config_synthetic_data.json -------------------------------------------------------------------------------- /code/configs/config_synthetic_data_brdf_weighted_specular_loss.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/configs/config_synthetic_data_brdf_weighted_specular_loss.json -------------------------------------------------------------------------------- /code/configs/config_synthetic_data_energy_cons_loss.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/configs/config_synthetic_data_energy_cons_loss.json -------------------------------------------------------------------------------- /code/configs/config_synthetic_data_neilfpp.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/configs/config_synthetic_data_neilfpp.json -------------------------------------------------------------------------------- /code/configs/config_synthetic_data_neilfpp_no_lambertian.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/configs/config_synthetic_data_neilfpp_no_lambertian.json -------------------------------------------------------------------------------- /code/configs/config_synthetic_data_pbrnerf_neilfpp.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/configs/config_synthetic_data_pbrnerf_neilfpp.json -------------------------------------------------------------------------------- /code/dataset/dataset.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/dataset/dataset.py -------------------------------------------------------------------------------- /code/evaluation/evaluate.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/evaluation/evaluate.py -------------------------------------------------------------------------------- /code/model/density.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/model/density.py -------------------------------------------------------------------------------- /code/model/embedder.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/model/embedder.py -------------------------------------------------------------------------------- /code/model/geo_fixmesh.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/model/geo_fixmesh.py -------------------------------------------------------------------------------- /code/model/geo_volsdf.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/model/geo_volsdf.py -------------------------------------------------------------------------------- /code/model/loss.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/model/loss.py -------------------------------------------------------------------------------- /code/model/neilf_brdf.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/model/neilf_brdf.py -------------------------------------------------------------------------------- /code/model/nn_arch.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/model/nn_arch.py -------------------------------------------------------------------------------- /code/model/ray_sampling.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/model/ray_sampling.py -------------------------------------------------------------------------------- /code/pyrt/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/CMakeLists.txt -------------------------------------------------------------------------------- /code/pyrt/CUDABuffer.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/CUDABuffer.h -------------------------------------------------------------------------------- /code/pyrt/LaunchParams.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/LaunchParams.h -------------------------------------------------------------------------------- /code/pyrt/SampleRenderer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/SampleRenderer.cpp -------------------------------------------------------------------------------- /code/pyrt/SampleRenderer.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/SampleRenderer.h -------------------------------------------------------------------------------- /code/pyrt/common/3rdParty/ply.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/3rdParty/ply.cpp -------------------------------------------------------------------------------- /code/pyrt/common/3rdParty/ply.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/3rdParty/ply.h -------------------------------------------------------------------------------- /code/pyrt/common/3rdParty/stb_image.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/3rdParty/stb_image.h -------------------------------------------------------------------------------- /code/pyrt/common/3rdParty/stb_image_write.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/3rdParty/stb_image_write.h -------------------------------------------------------------------------------- /code/pyrt/common/3rdParty/tiny_obj_loader.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/3rdParty/tiny_obj_loader.h -------------------------------------------------------------------------------- /code/pyrt/common/gdt/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/gdt/CMakeLists.txt -------------------------------------------------------------------------------- /code/pyrt/common/gdt/cmake/FindOptiX.cmake: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/gdt/cmake/FindOptiX.cmake -------------------------------------------------------------------------------- /code/pyrt/common/gdt/cmake/FindTBB.cmake: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/gdt/cmake/FindTBB.cmake -------------------------------------------------------------------------------- /code/pyrt/common/gdt/cmake/configure_build_type.cmake: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/gdt/cmake/configure_build_type.cmake -------------------------------------------------------------------------------- /code/pyrt/common/gdt/cmake/configure_glut.cmake: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/gdt/cmake/configure_glut.cmake -------------------------------------------------------------------------------- /code/pyrt/common/gdt/cmake/configure_optix.cmake: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/gdt/cmake/configure_optix.cmake -------------------------------------------------------------------------------- /code/pyrt/common/gdt/cmake/configure_tbb.cmake: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/gdt/cmake/configure_tbb.cmake -------------------------------------------------------------------------------- /code/pyrt/common/gdt/gdt/gdt.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/gdt/gdt/gdt.cpp -------------------------------------------------------------------------------- /code/pyrt/common/gdt/gdt/gdt.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/gdt/gdt/gdt.h -------------------------------------------------------------------------------- /code/pyrt/common/gdt/gdt/math/AffineSpace.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/gdt/gdt/math/AffineSpace.h -------------------------------------------------------------------------------- /code/pyrt/common/gdt/gdt/math/LinearSpace.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/gdt/gdt/math/LinearSpace.h -------------------------------------------------------------------------------- /code/pyrt/common/gdt/gdt/math/Quaternion.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/gdt/gdt/math/Quaternion.h -------------------------------------------------------------------------------- /code/pyrt/common/gdt/gdt/math/box.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/gdt/gdt/math/box.h -------------------------------------------------------------------------------- /code/pyrt/common/gdt/gdt/math/constants.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/gdt/gdt/math/constants.h -------------------------------------------------------------------------------- /code/pyrt/common/gdt/gdt/math/fixedpoint.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/gdt/gdt/math/fixedpoint.h -------------------------------------------------------------------------------- /code/pyrt/common/gdt/gdt/math/vec.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/gdt/gdt/math/vec.h -------------------------------------------------------------------------------- /code/pyrt/common/gdt/gdt/math/vec/compare.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/gdt/gdt/math/vec/compare.h -------------------------------------------------------------------------------- /code/pyrt/common/gdt/gdt/math/vec/functors.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/gdt/gdt/math/vec/functors.h -------------------------------------------------------------------------------- /code/pyrt/common/gdt/gdt/math/vec/rotate.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/gdt/gdt/math/vec/rotate.h -------------------------------------------------------------------------------- /code/pyrt/common/gdt/gdt/random/random.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/common/gdt/gdt/random/random.h -------------------------------------------------------------------------------- /code/pyrt/devicePrograms.cu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/devicePrograms.cu -------------------------------------------------------------------------------- /code/pyrt/optix.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/optix.cpp -------------------------------------------------------------------------------- /code/pyrt/optix7.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/optix7.h -------------------------------------------------------------------------------- /code/pyrt/pyrt.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/pyrt/pyrt.cpp -------------------------------------------------------------------------------- /code/training/train.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/training/train.py -------------------------------------------------------------------------------- /code/utils/general.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/utils/general.py -------------------------------------------------------------------------------- /code/utils/geometry.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/utils/geometry.py -------------------------------------------------------------------------------- /code/utils/io.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/code/utils/io.py -------------------------------------------------------------------------------- /docs/pbrnerf_arch_diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/docs/pbrnerf_arch_diagram.png -------------------------------------------------------------------------------- /docs/pbrnerf_pbr_losses.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/docs/pbrnerf_pbr_losses.png -------------------------------------------------------------------------------- /setup_conda.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/setup_conda.sh -------------------------------------------------------------------------------- /setup_dataset.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/setup_dataset.sh -------------------------------------------------------------------------------- /setup_pip.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/setup_pip.sh -------------------------------------------------------------------------------- /sota_dtu.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/sota_dtu.sh -------------------------------------------------------------------------------- /sota_neilfpp.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/sota_neilfpp.sh -------------------------------------------------------------------------------- /sweep_pbrnerf_dtu.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/sweep_pbrnerf_dtu.sh -------------------------------------------------------------------------------- /sweep_pbrnerf_neilfpp.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/sweep_pbrnerf_neilfpp.sh -------------------------------------------------------------------------------- /train_energy_cons_loss.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/train_energy_cons_loss.sh -------------------------------------------------------------------------------- /train_ndf_weighted_specular_loss.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/train_ndf_weighted_specular_loss.sh -------------------------------------------------------------------------------- /train_neilfpp.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/train_neilfpp.sh -------------------------------------------------------------------------------- /train_neilfpp_dtu.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/train_neilfpp_dtu.sh -------------------------------------------------------------------------------- /train_neilfpp_dtu_ngp.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/train_neilfpp_dtu_ngp.sh -------------------------------------------------------------------------------- /train_neilfpp_no_lambertian.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/train_neilfpp_no_lambertian.sh -------------------------------------------------------------------------------- /train_pbrnerf_dtu.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/train_pbrnerf_dtu.sh -------------------------------------------------------------------------------- /train_pbrnerf_neilfpp.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s3anwu/pbrnerf/HEAD/train_pbrnerf_neilfpp.sh --------------------------------------------------------------------------------