Commit Graph
1951 Commits
Author SHA1 Message Date
Otto Seiskari 5491df92d9 Export Splatfacto-optimized poses (#3116)
* Fix exported poses when Splatfacto pose optimization is enabled

Currently works correctly only with --eval-mode=all

* Make Splatfacto pose adjustments consistent with Nerfacto

Also allow exporting Nerfacto-optimized poses. Fixes #3073.
Second revision where the rotation and translation parts
are handled separately.
2024-05-29 10:08:54 -04:00
SerenitysmkandJ.Y 12f2e681a4 Fix: when --use-sfm-depth is enabled and the model is given by --colm… (#3172)
Fix: when --use-sfm-depth is enabled and the model is given by --colmap-model-path. It searches the wrong reconstruction directory

Co-authored-by: J.Y <132313008+jb-ye@users.noreply.github.com>
2024-05-28 15:08:20 -04:00
Siming He 67d9fd1933 NeRFtoGSandBack (#3150)
* add methods

* fix reference in index.md

* update description
2024-05-27 17:29:26 +03:00
Anthony ZhangandJ.Y 456930c213 Fixing resize_image and adding additional distortion check (#3162)
adding fixes for the runtime error on masking as well as distortion checking

Co-authored-by: J.Y <132313008+jb-ye@users.noreply.github.com>
2024-05-24 23:31:45 -04:00
5a341eac2c Fix "poster" dataset extraction (#3164)
Co-authored-by: Martin Mokry <martin-kokos@users.noreply.github.com>
Co-authored-by: maturk <30566358+maturk@users.noreply.github.com>
2024-05-24 15:12:44 +03:00
fe ee4c18a407 Add OpenNeRF method (ICLR'24 http://arxiv.org/abs/2404.03650) (#3167)
* Create opennerf.md

* Update opennerf.md

* Add OpenNeRF to method list

* Add OpenNeRF method
2024-05-24 15:05:48 +03:00
paolovic 742963e073 remove redundant code in full_images_datamanager.py (#3155)
remove redundant code
2024-05-22 12:51:19 -04:00
Pablo Velaandmaturk 8d5502db1a Add Pixi as an option for installation (#3130)
* pixi installation optiont

* chore: Update .gitignore to include /third_party and include pixi lock file

* feat: Update download and training commands for dozer data

The commit updates the download and training commands for the dozer data in the `pixi.toml` file. It renames the `download-sample-data` command to `download-dozer-data` and modifies the `train-example-splat` and `train-example-nerf` commands to include the dozer data as a dependency.

This makes it easy to run an example training for both nerfacto and splatfacto

* update to include range between 3.8 -3.10

* Add Pixi installation instructions to the installation.md file

---------

Co-authored-by: maturk <30566358+maturk@users.noreply.github.com>
2024-05-19 11:56:30 +03:00
Congrong Xu e6d780d2a0 Only import pycolmap in run_hloc (#3146)
* remove pycolmap import on windows

* only import when run hloc

* also for pixsfm

* fix
2024-05-15 11:33:46 -04:00
SwirtaBandJ.Y dd811f58bc Support OCI standard dockerfile (#2961)
* Update user creation process (non sudo)
Minor simplifications

* Keep default shell (sh) during build

* Add sudo privilages
Custom rules for sudo group
Comented lines for easy image modification

---------

Co-authored-by: J.Y <132313008+jb-ye@users.noreply.github.com>
2024-05-14 19:01:38 +00:00
George Tang ddcbb5c7f8 Fix legacy tensor construction (#3145) 2024-05-14 10:42:23 -07:00
J.Y e2a9793ba4 bump version to 1.1.0 (#3143) v1.1.0 2024-05-13 10:58:49 -07:00
Elias Watson e3ef9fb163 Clarify flag name in docs/nerfology/methods/splat.md (#3140)
Clarify full flag name
2024-05-13 08:55:35 +01:00
Feez2403 ffbd16a375 Fix edge case of depth colormap (#3139)
If the user sets near_plane as 0.0, the "or" will take the second term (float(torch.min(depth))) instead of using the 0.0 value.  We fix this by checking explicitely for a "None" variable
2024-05-11 21:38:13 -04:00
Leandro Passos 7ba02be8cf adding the link for the paper page and fixing image paths (#3132)
* bionerf markdown file
2024-05-09 16:02:48 +00:00
J.YandJianbo Ye a4c32ada52 Make RealityCapture csv/ply exports work! (#3131)
* support ply input file for ns-process-data realitycapture


Co-authored-by: Jianbo Ye <jianboye@amazon.com>
2024-05-09 08:58:03 -07:00
c17d1d7315 Add kwargs handling for patchpixelsampler patch size (#2622)
* Add kwargs handling for patchpixelsampler patch size

* Run black

---------

Co-authored-by: Justin Kerr <justin.g.kerr@gmail.com>
Co-authored-by: J.Y <132313008+jb-ye@users.noreply.github.com>
2024-05-08 10:45:58 -07:00
Leandro Passos 3d61d8cbdc Fixing typos and symbols in bionerf.md (#3126)
* bionerf markdown file

* method description in markdown file

* inserting bionerf in index file

* bionerf description

* fixing image paths

* including results on readme

* deleting last line from bionerfs page

* fixing typos in bionerf.md
2024-05-07 00:43:10 -07:00
Leandro Passos 9fe8e6c27c BioNeRF (#3125)
* bionerf markdown file

* method description in markdown file

* inserting bionerf in index file

* bionerf description

* fixing image paths

* including results on readme

* deleting last line from bionerfs page
2024-05-06 22:11:07 -07:00
Justin Kerr 3096f445b8 Add a pointcloud export from polycam to process-data (#3124)
* add a pointcloud export from polycam mesh to process-data

* bugfix
2024-05-06 14:40:05 -07:00
hturki f2a73804d4 fix nerfstudio collate function (#2965)
* fix nerfstudio collate function

* run ruff

* address PR feedback
2024-05-06 13:37:42 -04:00
49f5934ab3 Support splatfacto training for metashape exports (#3122)
* Added the possibility to import a metashape ply file

* FIxed double import and import order

* Ruff Format

* Ruff Format

* Ruff Format

* Ruff SUCKS

* make ply as an option and use applied_transform

* fix ruff

* fix bugs when ply doesn't exist

* fix bugs when ply doesn't exist

* no backtrace for ValueError

* hot fix

* Add return type

---------

Co-authored-by: simonbethke <simon.bethke@gmail.com>
Co-authored-by: Jianbo Ye <jianboye@amazon.com>
Co-authored-by: Brent Yi <yibrenth@gmail.com>
2024-05-01 21:24:33 -04:00
J.Y 3c4c3ae07e Fix #3064 and some minor changes (#3121) 2024-05-01 12:43:41 -07:00
e232227e31 metashape_utils: work with camera groups (#2626)
* metashape_utils: work with camera groups

* metashape_utils: console message when skipping a camera due to a missing image

---------

Co-authored-by: Frédéric Devernay <f-dy@users.noreply.github.com>
Co-authored-by: J.Y <132313008+jb-ye@users.noreply.github.com>
2024-04-30 20:25:59 +00:00
Carl Lindström 759fda8285 Fix bug in pixel sampler (#3103)
* Fix bug in pixel sampler

* Refactor code for distributing rays across images
2024-04-30 09:57:20 -04:00
b190874ef1 Use AbsGrad to get better results with less gaussians (#3113)
* Use AbsGrad to get better results with less gaussians

* some adjustment such that splatfacto-big don't go OOM

* use new gsplat version

---------

Co-authored-by: Jianbo Ye <jianboye@amazon.com>
Co-authored-by: Justin Kerr <justin.g.kerr@gmail.com>
2024-04-29 16:32:48 -04:00
Mathijs Henquet bc9328c7ff GaussianSplats export: allow uint8 in ply (#3111)
* GaussianSplats export: allow uint8 in ply

* Ruff formatting

* Add test and narrower typing

* Formatting

* Revert narrow typing, not supported by old python

* Fix typing for old pythons
2024-04-29 14:30:25 -04:00
Rohan MathurandJustin Kerr f046ceadf6 Adding cropping for gaussian splat exports (#3105)
* added bounding box to splat export params

Co-authored-by: Justin Kerr <justin.g.kerr@gmail.com>
2024-04-29 17:05:49 +00:00
Satvik SharmaandJustin Kerr 3f39546653 Adding lock for Viser Element callbacks (#3067)
* add callback lock, prepare for testing

Co-authored-by: Justin Kerr <justin.g.kerr@gmail.com>
2024-04-25 23:35:24 -07:00
dbergaandJianbo Ye db93476b6a Hloc fix for image_ids (camera per image) (#3081)
* changed run_hloc args to fill image_ids (added image_list and changed camera_mode to PER_IMAGE)

* added parameter same_camera on ns-process-data for multifocal cases in hloc. Also updated colmap_to_json to detect if there is one or several cameras per frame while keeping the camera type specifications

* ruff-formatted changes in colmap_utils.py

* use_single_camera_mode update args, including colmap_utils and hloc_utils

* changed multicamera warning's print to CONSOLE.print

* fix path typo console print

* rewritten use-single-camera-mode comment in ns-process-data

* (fix) inverted bool for colmap_utils

* change im_id to im_data.camera_id

---------

Co-authored-by: Jianbo Ye <jianboye@amazon.com>
2024-04-24 12:43:45 -04:00
J.YandJustin Kerr d9b022b25f Allow alpha transparency training for blender datasets input (#3088)
Allow alpha transparency training for rgba input

Co-authored-by: Justin Kerr <justin.g.kerr@gmail.com>
2024-04-19 18:03:55 +00:00
Congrong XuandBrent Yi eddf2d21b5 Changes for trainer.py to support the Gradio webui (#3046)
* changes for trainer to support webui

* Update trainer to support webui

* format

* add a seperated shutdown() function to stop training

* typo fix

* get rid of _stop_viewer_server()

* Update trainer.py

* organize import

---------

Co-authored-by: Brent Yi <yibrenth@gmail.com>
2024-04-19 00:37:50 +00:00
Justin Kerr 45d8bb79ea updates to apply_pca_colormap (#3086)
* improvements to pca_colormap: allow input pca matrix, optional ignore_zeros arg

* typo
2024-04-17 23:54:43 -07:00
Patrick Morgan babf57718c Fix call to detect ODM reconstruction file (#3018) 2024-04-12 21:23:47 +00:00
Justin Kerr a64026f8db shift principle points by .5 in undistortion (#3071)
* shift principle points by .5

* fix ordering

* add fisheye offset
2024-04-12 15:32:22 -04:00
Gunjan ChhablaniandBrent Yi c302cc5301 Add pointcloud loading for blender parser (#2902)
* Add pointcloud loading for blender parser

* Fix argument

* Fix docstring

* Fix metadata in dataparsers

* Add changes from review

* Avoid changing default behavior

* Apply `scale_factor` to loaded points

---------

Co-authored-by: Brent Yi <yibrenth@gmail.com>
2024-04-11 13:41:14 -07:00
hyperzy 03bdeff2ad Fixed Unexpectedly huge RAM consumption of parallel datamanager (#3060)
* Reduced the memory usage by caching image after the datamanager process starts
2024-04-11 18:56:37 +00:00
J.Y 4714ae75f7 write eval combined images for diagnostics (#3070) 2024-04-11 18:37:02 +00:00
Otto Seiskariandjh-surh eba72db22a Camera pose optimization for Splatfacto (#2891)
* Add pose optimization to Splatfacto

* Disable Splatfacto pose optimization by default

* Improve apply_to_camera for Gaussian Splatting pose optimization

Do not chain modifications to camera_to_worlds to improve
numerical stability and enable L2 rot/trans penalties.

* Add separate mean and max rot/trans metrics to camera-opt

* Tweak pose optimization hyperparameters

Parameters used in the Gaussian Splatting on the Move paper v1

* Unit test fix for new cameara_optimizer training metrics

* Adjust splatfacto-big camera pose optimization parameters

Same parameters as in normal Splatfacto

---------

Co-authored-by: jh-surh <jh.surh@bucketplace.net>
2024-04-11 14:23:17 -04:00
dbergaandBrent Yi 2d9bbe5091 fix exporter.py for FullImageDataManager and RandomCamerasDataManager (#3065)
* fix exporter.py for FullImageDataManager and RandomCamerasDataManager

* sort imports

* ruff

---------

Co-authored-by: Brent Yi <yibrenth@gmail.com>
2024-04-11 02:04:33 +00:00
Justin KerrandBrent Yi c381fc818d Fix custom elements nested under @property (#3066)
* patch custom elements bug

* Skip `cached_property`

* fomrat

* comment, type hint

---------

Co-authored-by: Brent Yi <yibrenth@gmail.com>
2024-04-10 18:59:20 -07:00
Saurav MaheshkarandBrent Yi d1fc2ee338 feat(ci): migrate to uv in CI (#3038)
* feat(ci): migrate to `uv` in CI

* feat(ci): drop upgrade strategy

* feat(ci): use `uv` in docs workflow

* fix(ci/doc): update sphinx build cmd

* fix(ci/doc): specify python path

* (experimental) simplify

* remove venv

* Revert line wrap change for doc.yml

---------

Co-authored-by: Brent Yi <yibrenth@gmail.com>
2024-04-08 15:46:00 -07:00
Sahil Jain 2b9171528b Fix config loading for Eyeful Tower dataset (#3054)
Add test_filenames to transforms.json generated by eyeful_tower.py
2024-04-08 17:04:20 +00:00
Ling JingandJing 26804f8124 Make colmapDataParser compatible with 360_v2 dataset format (#2860)
* added an option to colmapdataparser to round up the image size when downscaling

* add round mode and update ffmpeg command

* [fix] wrong variable order

* update format

---------

Co-authored-by: Jing <jing1ling@intel.com>
2024-04-08 12:07:21 -04:00
Jan-Niklas Dihlmann 911091ccb6 Added SIGNeRF to Nerfstudio methods (#3053)
* feat: signerf as nerfstudio method

* fix: formating issues and indexing
2024-04-08 07:17:56 -07:00
Gina Wu fba4aa9903 New Google Drive link for poster dataset (#3045)
Change poster dataset link
2024-04-04 21:36:29 -07:00
Brent Yi 3ac1b6bec7 Only load+undistort splatfacto images when they're used (#3043)
* Only load splatfacto dataset when it's used

* ruff

* typo fix

* Fix #2817; don't undistort for `ns-viewer --viewer.max-num-display-images 0`

* ruff
2024-04-04 23:25:04 +00:00
Chung Min KimandBrent Yi c572eb7f19 Refactor ScenePointerCallbacks for viser compatibility (#3036)
* Update to match viser pr

* Bump viser version

* `done` => `removed` in docs

* Update viewer_elements.py

* Fix

* Point function signature overload

* Update viewer_control.md

* type ignore on callback

---------

Co-authored-by: Brent Yi <yibrenth@gmail.com>
2024-04-02 23:42:15 -07:00
J.Y 5fbb4b0af8 bump version to 1.0.3 (#3035) v1.0.3 2024-04-02 13:42:39 -07:00
Zac Stewart 1b9dfe8bb3 Support COLMAP reconstructions with non-flat image dirs (#3006)
* Support COLMAP reconstructions with nested image dirs

The code was previously looking for the file.name, which drops all
directory information from the path. Instead, we want to get the file
path relative to the data dir, which will only drop parts of the path
above the data dir, allowing us to recurse into subdirectories within
the images dir

* Adhere to style guidelines

* Add testcase to cover image dirs with subdirs
2024-04-02 14:17:17 -04:00