A collaboration friendly studio for NeRFs
- This fork has
ns-process-data splatfacto
- This fork uses all images for training. But, eval images is splitted by
fraction
orinterval
. Default settings isfraction
. Eval images is 0,1 of all images.
It mimics python3 convert.py -s /path/to/input/folder
from Original Inria 3DGS
- original
ns-process-data images
make "images" in output folder become smaller despite has same resolution, it hurts quality. - It uses
exhausive_matcher
instead ofvocab_tree_matcher
inns-process-data images
- it uses hyperparameter of
ba_global_function_tolerance = 0.000001
- It uses
colmap image_undistorter
I got extra quality boost, about 0.3 - 0,7 dB in PSNR evaluation of all images. I have tested it on different dataset.
- The original
convert.py
gives result ofcolmap
format which does not havetransforms.json
andsparse_pc.json
. This implementation creates that files so it compatible with NerfstudioDataparser. - The original
convert.py
usesmagick command
for resizing images. This repo usesOpenCV
for resizing images.
It mimics INRIA 3DGS which uses all images for training data.
Yes, thats okay for me. Overfitting is not problem because we don't generate entirely new scene. But we must maximize the existing scene quality.
It increases from 28,7 dB to 29,2 dB PSNR (extra 0,5 dB) for apartement eyeful tower 1k JPEGs
dataset. Another dataset is not yet tested. Hopefully in short of time.
Yes it will be biased since eval images already leaks into training dataset. But this repo is intended for END USER which does not care about PSNR, SSIM, etc. They care only the end product.
If you resume the training from original nerfstudio's checkpoint = No, it will be error because different count of training dataset.
If you train from ns-process-data images/videos/odm/realitycapture/metashape
etc from original nerfstudio = Yes, it is compatible
# make sure you uninstall the previous gsplat and nerfstudio
pip uninstall gsplat nerfstudio
# install it from pip
pip install git+https://github.com/nerfstudio-project/[email protected]
pip install git+https://github.com/ichsan2895/[email protected]
Tested on Torch 2.0.1+cu118
and Python 3.10
in Ubuntu 22.04 LTS