53 Commits
Author SHA1 Message Date
Brent Yi d6bb8bd8e5 Fix use_appearance_embedding for instant-ngp (#1999)
* Attempt fixes for instant-ngp

* Run `ns-dev-test`

* Remove NGP field implementation

* Test nerfacto field instead of ngp field

* Black
2023-07-01 18:54:27 +00:00
Jonáš KulhánekandBrent Yi 9584fa9b39 Add pre-commit (#1949)
* Add pre-commit

* Add pre-commit to docs

---------

Co-authored-by: Brent Yi <yibrenth@gmail.com>
2023-05-18 07:13:58 -07:00
Matthew TancikandBrent Yi 2b0831b6d4 Final typing fixes + add Pyright to CI (#1944)
* 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>
2023-05-18 02:25:34 -07:00
Brent YiandMatt Tancik d542646c72 Switch to ruff (#1939)
* `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>
2023-05-17 10:08:14 -07:00
Matthew Tancik 6c3106004d Update contributing docs (#1926) 2023-05-16 00:06:43 -07:00
Matthew Tancik 72a14b0b22 Move scripts folder into nerfstudio (#1897)
move scripts folder into nerfstudio
2023-05-09 16:44:21 -07:00
Jonáš Kulhánek 1147fe4d5c Make VanillaDataManager generic (#1868)
* Make VanillaDataManager generic

* Remove removed classes from docs

* Simplify generic datamanager

* Simplify code

* Add serialization tests
2023-05-06 09:54:52 -07:00
6a7c8820b8 Viewer backend refactor (#1702)
* Copy in `viser` communication infrastructure

* Update background image

* Add build directory to fix viser HTTP server
May want to remove these later

* Copy in `viser` communication infrastructure

* Update background image

* Pass dataset vis using viser

* initial impl of ViewerParameter

* idk what i did but brent and matt know

* Suppress eslint typescript warnings

* implement ViewerElement base class, then ViewerButton, ViewerSlider, etc

* client -> server message setup

* multi folder stuff

* Stream controls over viser

* import

* add types to viewer_param.py

* Move another message to viser

* Update folder color

* Use non throttled messages

* multiple folders works

* Cleanup, more porting

* starting impl of control panel in viser

* More porting

* scenebox to viser

* Cleanup

* Fix render updates

* More cleanup, docs, typing

* start control_panel.py

* set_hidden logic but not merged in

* control_panel replicates behavior of existing control panel (visually), except for setting the list of output options. not yet integrated with viewer_utils.py for logic flow. also implemented set_disabled and set_hidden in javscript/ViewerElement side

* Remove some original leva components

* add some train util logic, attempt set_value, doesn't work on javascript side fully yet (value updates but not slider visually

* bye zmq

* missing call to decoder

* 'gui_set' works properly, control panel now replicates behavior of original

* remove print

* Fix status viewer message

* More cleanup

* support set_options in dropdown

* hiding buttons works correctly

* fix set_options, switch from cur_value to get_value()

* Fix slowdown

* output options

* colormap logic converted

* add handle to cb_hook

* fix some lambda bugs

* cleanup

* Save checkpoint logic readded

* Cleanup and minor fixes

* snappier ui

* Refactoring

* Fix state update bugs

* Bug fixes

* Write less to redux

* added comments to reducer code

* Render state machine (#1727)

* state machine works, but train step throttling not implemented

* more step logic, cleanup

* remove random try catcH

* mutex logic for render

* Update lock logic

* types and docs

* added some state machine logic to help rerenders

* merge

---------

Co-authored-by: Justin <justin.g.kerr@gmail.com>

* Refactor and cleanup

* More cleanup and docs

* docstring to gui_utils

* docstrings, rename viewer_param.py to viewer_elements.py

* Fix viewer, remove bridge stuff

* Render on connect

* Fix lint errors

* More eslint fixes

* render_freq logic

* better rerender logic for crop

* More cleanup

* Purge

* Cleanup

* Lint fixes

* Fix cache

* better parsing logic

* Fix infinite test

* More cleanup

* typo

* Update webdocs

* Update docs

* rerender on custom hooks

* add more docs

* Use shared utilities in `viser.infra`

* rework callback to use elements instead of handles

* Fix ESlint errors

* change naming of handle to element, add setter for value

* cleanup

---------

Co-authored-by: Matt Tancik <mattt4001@gmail.com>
Co-authored-by: Justin <justin.g.kerr@gmail.com>
Co-authored-by: Ethan Weber <eweb0124@gmail.com>
Co-authored-by: Matthew Tancik <tancik@berkeley.edu>
2023-04-14 14:53:10 -07:00
Matthew Tancik 2e777e4577 Update dataparser docs (#1698)
* Update dataparser docs

* Add missing files
2023-04-04 18:30:52 -07:00
Matthew Tancik 4e6c52c8fd Update sphinx docs (#1695) 2023-04-04 11:08:09 -07:00
Matthew Tancik df0f3205f4 Add ns-viewer docs (#1450) 2023-02-18 19:03:46 -08:00
Mason McGough 92636c3434 Docs fix (#1244)
* Add the following fixes to documentation:

* Fix trailing backslash in “Use docker image” section
* Replace escaped backslash with double-escaped backslash (see Sphinx issue: https://github.com/sphinx-doc/sphinx/issues/6730)
* Close backtick in `contributing.md`
* Add “run” to instructions for “Render Video”
* Remove unnecessary “,” in “Render Video”
* Correct “before preceding” to “before proceeding”
* Correct “viewpoinrts” to “viewpoints”
* Add missing “.” in “Process data”
* Specify “bash” for code blocks (for consistency with other blocks in the page)
* Fix code block in `viewer_quickstart.rst` (”Copy to clipboard” widget now works)
* Fix some code formatting issues in `export_geometry.md`

* Correct "harmoincs" to "harmonics" in docs.
2023-01-17 09:28:20 -08:00
matsurenandMatthew Tancik 408ab709ec Fix typo (#1231)
* Fix typo COLAMP->COLMAP

* Fix more typo

Co-authored-by: Matthew Tancik <tancik@berkeley.edu>
2023-01-16 12:12:55 -08:00
Martin Piala 09e1008069 Fix Discord link in the docs (#1143)
fix discord link
2022-12-18 10:48:49 -08:00
RandomPrototypesandRandomPrototypes 740cdebbb5 WIP : support for hloc toolbox (superpoint, superglue, netvlad,...) (#1026)
* basic support for hloc (includes netvlad, super point, superglue in colmap), just a first test, not ready yet

* add exhaustive match option for hloc

* add command line option to choose the type of feature, matcher,...

* make hloc an optional dependency, update doc, and small bug fixes

* fix missing imports

* fix warnings, pylint,...

* fix overwrite previous commits

* fix import order from isort

* move find_tool_feature_matcher_combination to process_data_utils, add type hints and Args/Returns doc

* error message when no valid combination of sfm tool, feature type, and matcher

Co-authored-by: RandomPrototypes <delmotte_ar@yahoo.fr>
2022-12-03 22:45:48 -08:00
Matthew Tancik d4119d4086 Add exporting docs (#940) 2022-11-10 22:01:21 -08:00
Nikhil Mohan 1a24f3e58c Refactor Data Pipeline (#896)
* add none check

* black formatting

* cleanup

* cleanup

* fix tests

* remove new line

* init

* toy example working

* semantic nerf working

* simplify pixel samplers

* cleanup + fix tests

* comments

* fix tests

* fix tests
2022-11-06 07:40:43 -08:00
Matthew Tancik ec901c893d Add support for insta360 data (#781)
* Add support for insta360 data

* Update docs

* Revert unrelated changes

* remove cropping on normal videos

* Address comments
2022-10-15 22:25:21 -07:00
Ethan Weber f14fbb9153 Add script filenames to CLI docs (#758)
better docs
2022-10-11 14:26:42 -07:00
evonneng 917d02c695 adding viewer video + other doc related updates (#688) 2022-10-05 02:59:59 -07:00
Jake Austin a95bb2d611 Pushing more introduction docs (#683)
* Pushing more introduction docs
2022-10-05 01:50:49 -07:00
Matthew Tancik e01206f728 Update cli docs (#674) 2022-10-04 22:11:02 -07:00
Matthew Tancik ce8985aeb6 cli improvements to download script (#668) 2022-10-04 21:00:21 -07:00
Matthew Tancik 0b3909918a Update cli docs (#663) 2022-10-04 17:43:03 -07:00
Matthew Tancik 21f58252c1 remove tensorf model (#660)
* remove tensorf model

* lint
2022-10-04 16:39:47 -07:00
evonneng 50b9ee83a1 added config docs (#644)
* added config docs

* fixed first_nerf
2022-10-04 01:02:26 -07:00
evonneng 5e56e7b229 update quickstart + readme (#641)
* updated quickstart and readme

* damn ctrl c on macs
2022-10-03 22:38:43 -07:00
Ethan Weber 05ba4b6b00 semantic nerfw (#640)
transients not working right now
2022-10-03 20:36:32 -07:00
evonneng 968959bdc9 quickstart updates + (other nits+links added to repo) (#633)
* small changes

* rewrite quickstart + readme

* fixed all licensing headers

* nits
2022-10-03 16:01:16 -07:00
Matthew Tancik 37907698f2 update cli docs for process-data (#617)
* update cli docs for process-data

* Update recs

* fix toml
2022-10-02 18:09:57 -07:00
Ethan Weber c20fed83bb moving around files (#616)
moved around files
2022-10-02 16:54:34 -07:00
Ethan Weber e13d401b16 restructure codebase pre release (#602)
* moving a lot

* building
2022-10-01 16:36:25 -07:00
Matthew Tancik 5fac867502 Misc viewer cleanup (#591)
* Misc viewer cleanup

* fix lint
2022-09-30 10:32:44 -07:00
Matthew Tancik 1f83ad03db Rename to nerfstudio (#589) 2022-09-29 23:42:15 -07:00
Matthew Tancik 046b5c216b Misc cleanup (#494)
* misc cleanup

* Fix dependencies
2022-09-20 09:14:37 -07:00
evonneng d50c71ac43 update docstrings and random cleanups (#387)
* fixing docstrings and small nits; up to fileds

* finished adding and fixing docstrings
2022-09-10 23:09:44 -07:00
evonneng 56113e6c75 [WIP] dataloading cleanup (#332)
* testing; need to merge

* fixing wrong base file in models/base

* pushed input parser into datasets class to abstract away fetching data in dataloader

* slight name chage and all

* nits

* added dataparser

* added licnese
2022-09-06 13:54:35 -07:00
Ethan Weber c46ff4f75f torch==1.12 and requirements.txt update (#302)
* cleaning up requirements.txt and adding versions

* need to update github actions, docs, and make optional dependencies work

* updated documentation

* set directory

* new functorch version

* updated caching

* fixed hash
2022-09-02 10:25:37 -07:00
evonneng b0f6d75cdf refactored dataset names + multi-gpu running (#321)
* refactored dataset names + multi-gpu running

* update comments + docs
2022-09-01 18:22:11 -07:00
Matthew Tancik f910836b8c Cleanup (#325)
cleanup
2022-09-01 12:36:54 -07:00
Ethan WeberandJake Austin 0b042be956 Pipeline v2 (#258)
* Model class done, pipeline class still needs more visualization stuffs

* Renaming the BaseDataContainer to DataloaderOutputs and adding documentation

* Pushing more documentation, removing some trivial functions

* Updating dict typing

* Removing config dicts for collider

* Passing tests

* Pushing shell new dataloader

* Saving work, need to fix NGP model's get_loss_dict and Pipeline

* V1 of the ngp pipeline should be done. Need train script and debugging

* Updating with latest instant-ngp code

* Syntax updates from latest ngp graph code

* Linter, removing unneeded code in new NGP graph code

* Style

* Should be good now. Linter is happy and the code is verbatum current instant-ngp

* Everything done except novel view testing code

* Fixing some nitpicks

* Debugging dataloader

* merged master

* WOP. integrating pipeline with configs and notebook demo

* removing model folder

* a lot of name changing from Graph to Model

* in progress... changing trainer to use pipeline... broken right now

* pipeline code runs

* switched to val dataset

* makes run_eval.py work

* updated configs for pipeline change

* fixing test_run_train script

* fixing black and linting

* fix docs

* small updates to trainer

Co-authored-by: Jake Austin <jake-austin@berkeley.edu>
2022-08-10 14:59:45 -07:00
Matthew Tancik a957e8c501 Move datasets to classes (#227) 2022-07-28 18:41:39 -07:00
Matthew Tancik 828365ad30 Update documentation guides (#208) 2022-07-26 16:07:45 -07:00
Matthew Tancik 6dc704c551 Rename repo to nerfactory (#204)
* Rename to nerfactory

* Fix missing files
2022-07-25 13:52:20 -07:00
Matt Tancik d86e10b725 Restructure docs 2022-07-12 12:02:28 -07:00
Matthew Tancik d0f0f8da2d Add interval loss (#92)
Implement interval loss that was proposed in mipnerf-360.
2022-07-06 17:27:19 -07:00
Matt Tancik 711f69fe24 Add TensorDataclass 2022-07-04 16:19:48 -07:00
Matthew Tancik 304a759e85 Tancik/scene contraction (#70)
Contract the scene to a sphere of radius 2. This is the same contraction used in MipNeRF 360.
Add mipnerf 360 graph and config. It currently doesn't contain the other advancements made in the paper (sample proposal network, regularizers)
2022-06-29 18:28:21 -07:00
Ethan Weber 6deb452825 initial dataset documentation (#36)
* initial dataset documentation

* data docs

* fixed repo name

* removed file

* fixed instruction

* adding bash
2022-06-09 13:30:08 -07:00
Matt Tancik 35deb34515 Update docs. 2022-06-09 10:29:59 -07:00