Commit Graph
46 Commits
Author SHA1 Message Date
Pablo Vela ddfa463f4d NeuS Implementation (#1444)
* add initial method configs and data manager

* add neus scheduler

* add initial surface model and neus

* add Neus ray sampler

* add sdf field

* move scale/shift calc to math utils

* add debug and fix sdf_dataset typo

* update vscode neus debug

* fix dataset and get initial working version

* add magic number from original repo

* black fixes

* clean up get weights/transmittance from alphas

* clean up typos in sdf datamanager

* type annotations on neus scheduler and remove unused params

* clean up and annotate sdf field along w/ other fixes

* more clean up

* remove unnessary directions norm

* resolve comments

* update neus scheduler to follow refactor

* fix linter errors

* fix some typos

* remove get_weights_from_alpha

* more comment fixes

* more linter error fixes

* clean up and add comments

* more little fixes for types/comments

* more comments

* rename NeuS Scheduler to DelayedScheduler

* rename DelayedScheduler to CosineDecayScheduler
2023-03-12 16:01:18 -04:00
Sacha Lewin 6912e7cde9 Fix crash when having no eval dataset and not using the viewer (#1537)
Fixed crash when no eval imgs on wandb/tensorboard
2023-03-01 15:02:41 -08:00
Matthew Tancik bfaf11cd72 Remove dataparser dependency (#1529) 2023-02-27 18:32:40 -08:00
Jonáš Kulhánek 955497fcb2 Add weight-decay option to RAdam optimizer (#1525) 2023-02-27 09:21:00 -08:00
Saurav Maheshkar 0b87c43d0d feat(engine): improve type hints (#1509)
* feat(engine): improve type hints

* fix: add pylint ignore statement

* fix: order imports as per isort

* fix: update Optimizer setup return type

* feat: add new TORCH_DEVICE type
2023-02-25 16:33:43 -08:00
Matthew Tancik 27eb33f491 Enable viewer with eval (#1474) 2023-02-22 10:21:55 -08:00
Matthew Tancik 0d336a181e Update exponential scheduler (#1468) 2023-02-21 16:09:38 -08:00
Matthew Tancik f3a34bbf95 Refactor schedulers (#1466)
* Refactor schedulers

* lint

* lint
2023-02-21 12:51:51 -08:00
NCJ 92cadf5ce4 Fix Multiple Typos (#1376)
fix multiple typos
2023-02-08 10:33:23 -08:00
Jonáš Kulhánek 6136745d75 Fix ns-train help (#1370) 2023-02-07 09:49:09 -08:00
hturki d547279a92 add option to log training gradients (#1334) 2023-02-02 09:48:45 -08:00
Matthew Tancik db83068fcd Update optimizer docstrings (#1333) 2023-02-01 15:15:08 -08:00
hturki 48ec36e53f Add support for gradient clipping (#1331)
implement optional gradient clipping
2023-02-01 14:55:07 -08:00
William Shen bc65639edf Fix total train time metric logging (#1284) 2023-01-24 13:28:00 -08:00
Terrance Wang 73bffe058f Fix tensorf chkpt loading (#1266)
* setting tensorf default from wandb to viewer

* adding functionality to adjust model depending on the step of the checkpoint that is loaded

* cleaning code

* bug fix

* fixing style
2023-01-20 12:00:51 -08:00
Rohan Mathur fef6b861be Camera path (#1251)
* added eta to base config

* added code to save camera paths to dated name in data folder

* updated camera path name customization

* removed unnecessary comments

* added new version to viewer package.json

* more clean up and also I left a print statement in

* fixed validation message
2023-01-19 14:41:05 -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
Jake Austin 3ffee522e0 TrainerConfig inherit from InstantiateConfig (#1175)
Making TrainerConfig an InstantiateConfig so it can be swapped in and out with different methods. Also made the TrainerConfig a subclass of ExperimentConfig (which was changed from a printableconfig to an instantiateconfig), since we were already instantiating the Trainer class with the ExperimentConfig

Removed the "config" field from the TrainerCallbackAttributes struct to eliminate circular dependencies when types are checked.

Minor scripts and docs changes to accommodate the update to the config struct, meaning the flags that were associated with the TrainerConfig were moved up to the top level of the config.
2022-12-27 18:19:34 -10:00
Nikhil Mohan 98f13cbed4 Fix circular imports (#1115)
* wip

* remove bad changes

* update dmeo

* cleanup

* change name

* cleanup
2022-12-13 10:09:31 -08:00
Matthew Tancik b41ce8060a Save out dataparser transforms (#1105)
* Save out dataparser transforms

* Make missing folder
2022-12-11 13:02:50 -08:00
Matthew Tancik fff1fee686 Cleanup train cli logs (#1037) 2022-11-27 21:51:43 -08:00
Matthew Tancik 6baf31dc9a Fix python 3.7 support (#959) 2022-11-15 09:51:23 -08:00
Nikhil Mohan b5c34f0154 Add 'inference' mode to pipeline (#956)
* cleanup test mode

* cleanup eval loading

* change default

* cleanup

* cleanup

* comment
2022-11-14 16:56:36 +00:00
Matthew Tancik 50f9895f1a Add flag to kill training when complete (#948) 2022-11-11 11:38:36 -08:00
Matthew Tancik 49e89365bc Add training finished statement (#914) 2022-11-06 22:55:50 -08:00
Matthew Tancik 71601f304f Start viewer with more accurate speed calculation (#899)
Start viewer with more accurate speed calc
2022-11-04 17:30:29 -07:00
Thomas Wang d9f6426e0d Check main thread when always rendering. (#865)
Check main thread
2022-11-01 00:45:20 +01:00
Thomas Wang b088e230f6 Viewer visualization crashes when using DDP (#863)
Setup viewer only in rank 0
2022-10-31 09:30:55 -07:00
Ethan Weber 6f4fb506e2 Multi-gpu improvements (#799)
* initial commit

* minor changes

* small changes

* ddp seems to be working

* remove commented out code
2022-10-20 01:11:40 -07:00
Ethan WeberandEthan Weber d71c05f256 Google Colab support with viewer (#747)
* allows bridge server to run on a different machine

* added script

* update version

* starting docs

* update docs and scripts

* ngrok support

* use tcp

* moving webrtc outside bridge server. wop

* lazy commit

* lazy commit

* running code. webrtc not working

* lazy commit

* better logic for webrtc connection

* cleanup

* todo comment

* working webrtc

* removed logging

* fixing black

* fix eslint

* fix python version

* fix readme

* misc cleanup

* small docs fix

Co-authored-by: Ethan Weber <ethanweber@Ethans-MacBook-Pro.local>
2022-10-14 15:05:28 -07:00
2150bad0e4 Reducing flicker artifacts for nerfacto method (#750)
* pose opt default nerfacto.

* added SO3 cam pose optimization which is slightly faster (~2.2m/iter) than BARF

* added occupancy grid with placeholder until nerfacc is updated to query density from it

* added occupancy grid sampling as the level 0 in proposal hierarchy, relies on nerfacc 0.1.7 (on pypi)

* merge main

* merge main

* minor changes to sampling

* adjusted sample number

* refactor occ grid stuff, settle on decent params

* nograd proposal sampling

* param tweaks

* varying resolution proposal networks

* params

* merged main

* optimizer update

* remove occ grid

* remove double nerfacto samples

* set single jitter to true

* remove pdb

* more changes

* fix method defaults

* fix pylint

* remove occupancy fn

Co-authored-by: akristoffersen <akristoffersen@berkeley.edu>
Co-authored-by: Justin Kerr <justin.g.kerr@gmail.com>
2022-10-11 14:21:00 -07:00
Ethan Weber 23828b7ad8 Improving checkpoint logic (#757)
* working on checkpoint logic

* fixed checkpointing logic
2022-10-11 14:06:30 -07:00
evonneng 0506de65cd fixed --start-train flag (#741)
* wip; fixing --start-train flag

* fixed no rendering
2022-10-10 09:42:15 -07:00
Ethan Weber 45e5b528e5 fix optimizer dict (#729)
* bump version

* optimizer doc fix

* Update conf.py

* Update pyproject.toml
2022-10-07 11:42:36 -07:00
Ethan Weber ee94f23f83 turn on camera opt by default (#727)
* camera opt by default

* fix tests
2022-10-07 11:21:21 -07:00
cac177717f Pose optimization (#721)
* pose opt default nerfacto.

* added SO3 cam pose optimization which is slightly faster (~2.2m/iter) than BARF

* integrating record3d

* fix linting errors

* fix save checkpoint logic

* added record3d data

* workaround to avoid flag

* moved dict

* black

* record3d docs

* re-add typing to exp_map.

* Pose optimization refactor

* Fix camera optimizer param group logic

* Update docs + comments

* Update docs, shorten names

* Appease pylint

* repeat -> tile, apply missing name change

* Fix optimizer as scheduler bug

* Fix test

Co-authored-by: akristoffersen <akristoffersen@berkeley.edu>
Co-authored-by: Justin Kerr <justin.g.kerr@gmail.com>
Co-authored-by: Brent Yi <yibrenth@gmail.com>
2022-10-07 10:11:33 -07:00
Ethan Weber 2531242d1d integrating record3d and fix checkpoint delete issue (#722)
* integrating record3d

* fix save checkpoint logic

* added record3d data
2022-10-07 00:34:51 -07:00
Ethan Weber eaa16e535a max number of iterations logic (#699)
* update max iters

* deal with max iters
2022-10-06 13:07:37 -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
Ethan Weber 75866f3a8f use literal instead of list for --vis (#628)
use literal instead of list
2022-10-03 09:58:42 -07:00
Alexander Kristoffersen 60bf31844f Camera Extrinsics Optimization (#610)
* init commit.

* cleanup.

* docstring cleanup.
2022-10-02 17:56:25 -07:00
Ethan Weber c20fed83bb moving around files (#616)
moved around files
2022-10-02 16:54:34 -07:00
evonneng 50d9aa1341 small fixes (#581)
* small fix

* oom error

* created model wrapper; make DDP working again; todo need to check if it works with viewer

* working with multigpu now
2022-10-02 13:54:13 -07:00
Jake Austin 3489e992b0 Datamanager fields typing (#609) 2022-10-02 12:24:05 -07:00
Ethan Weber e13d401b16 restructure codebase pre release (#602)
* moving a lot

* building
2022-10-01 16:36:25 -07:00
Matthew Tancik 1f83ad03db Rename to nerfstudio (#589) 2022-09-29 23:42:15 -07:00