* nerfbusters dataparser
* nerfbuster dataparser and visualization of eval views
* resolved some errors from pyright
* enable ns-process-data to take two videos as input and use one for eval and the other for train
* resolve some pyright issues
* instead of data being a tuple, I added eval_data as another argument
* implemented train eval split for all cases
* implemented train eval split for all cases
* reverting equi changes
* reverting reality capture changes
* raise valueerror
* revert comment
* added split override code back to dataparser
* reverted one change
* using image border now
* adding docs
---------
Co-authored-by: Ethan Weber <eweb0124@gmail.com>
Use ns-process-data images --no-same-dimensions ... to handle images sets with different dimensions properly. (Fast downscaling assumes image dimensions are the same.)
* Merge video image extraction and downscaling
* Linting
* Fix extracting all frames, only apply vfr when thumnailing
* integrate downscale chains into image processing
* fast polycam upscale/downscale depth
* black
* black
* Update process_data_utils.py
Remove code change from other branch.
* use same suffix for downscale, don't force png
* black
---------
Co-authored-by: Sebastiaan Meijer <seb@stiaan.io>
* allow ns-process-data to use CR2 raw images
* Update process_data_utils.py
* black wants an extra newline
---------
Co-authored-by: Matias Turkulainen <30566358+maturk@users.noreply.github.com>
Changed the ValueError message when using a camera.xml that contains multiple sensors. Per-frame intrinsics can be defined, the previous message said that they were not supported.
* knocking out a couple
* Fix more errors
* Add pyright
* Remove some unnecessary cv2 type ignores, warning on missing imports
(for missing tinycudann)
* Minor annotation fixes
* Update docs
* Drop `None` from temporal distortion output
---------
Co-authored-by: Brent Yi <yibrenth@gmail.com>
* `isort` -> `ruff`
* `pylint` -> `ruff`
* Remove line
* More minor cleanup
* Better documentation for rules we are enabling
* Fix gitignore, run black
* vscode settings
---------
Co-authored-by: Matt Tancik <mattt4001@gmail.com>
* Bump minimum Python version to 3.8
* typing_extensions.Literal -> typing.Literal
* ns-dev-test
* typing_extensions.get_args => typing.get_args
* Format with older version of black
* Bump `black`
* Run black
* Document how to use equirectangular sensor with metashape
* equirectangular sensor is actually supported by nerfstudio!
* Update custom_dataset.md
* equirectangular: fix COLMAP workflow
* metashape_utils.py: black
---------
Co-authored-by: Frédéric Devernay <f-dy@users.noreply.github.com>
* Refactor of image and video dataset conversion
The classes to convert images and video to a NerfStudio
dataset are moved to the main repo and refactor:
* Code duplications are removed
* Import of the class is now done from nerfstudio package instead of
scripts
* Doc formatting nits
* Doc formatting
---------
Co-authored-by: Brent Yi <yibrenth@gmail.com>
* Exposed number of actual frames to extract for more transparency
* Fixed off-by-one error in calculation of frames to extract.
* Added math import
* Switched print statements to CONSOLE.print
---------
Co-authored-by: jackson-waschura <jwaschur@calpoly.edu>
* allow periods within filename, not only for file extension
* don't assume all images are the same resolution
* black reformatting
* Move variable resolution collate logic into vanilla datamanager
* good catch pylint
* now that vanilla supports variable resolution, remove VariableResDataManager
* remove comment
* CONSOLE.print
* avoid `IndexError: tensors used as indices must be long, byte or bool tensors`
* use large dataset parameters for phototourism
* improve metashape data import
- support multiple sensors
- support fisheye and equirectangular sensors
- support multiple components with transforms
- fix bug when image name has a '.' in it, excluding the prefix separator
* metashape_util: fix string formatting
---------
Co-authored-by: Frédéric Devernay <f-dy@users.noreply.github.com>
Co-authored-by: Matthew Tancik <tancik@berkeley.edu>
* removed insta360 and also updated equirect images docs to include cropping
* removed unused import
---------
Co-authored-by: Matthew Tancik <tancik@berkeley.edu>
* MinimalDataParser add options, allow Nerfstudio data format to specify test indices
* Switch from indices to filenames and add tests
* Fix #1581
* Fix changed interface
* changed percent-crop arg to crop-factor so it's more clear that it's a float
* added error if crop values are less than 0 or more than 1
* added value hint and changed error to console thing
* added imports
* fixed linter issues
* refixed linter issues
* started bottom crop functionality
* first draft of cropping
* cleaned up and debugged cropping equirectangular and re added mask stuff just without percent crop
* added nonequirectangular video crop
* added left right crop for equirectangular
* shortened equirect utils
* finished regular video cropping
* removed print, added underscores, changed type to List[float]
* started adding equirectangular to process_data
* was multiplying frame by 255 twice
* added equi2planar configs for the 3 presets
* fixed presets
* setup process data
* changed variable name and comment
* fixed middle preset
* removed third preset
* added progress bar and fixed video for equirectangular input
* fixed whitespace stuff
* added pyequilib dependencey
* Updated for JPG support for equirectangular image input
Updated process_data_utils for JPG support for equirectangular image input, since even though .jpg images worked, .JPG images (output from 360 camera software) were not working.
* changed file type matching
* added equirect utils
* added license header
* added docstring on equirect utils
* added heuristic for image size
* added heuristic for videos
* fixed linty stuff
* shortened code
* raised error if no ims in directory
* Updated ProcessVideo for fixing directories for equirectangular input
Updated the ProcessVideo for equirectangular input to make the image directory have the correct perspective projections. The original equirectangular images are copied into a temp_images folder which also holds the perspective projections. This folder is deleted once the perspective projections are copied into the process data images folder.
---------
Co-authored-by: cvachha <cyrus.vachha@yahoo.com>
Co-authored-by: cvachha <cvachha549@gmail.com>