4
0
mirror of https://github.com/nerfstudio-project/nerfstudio.git synced 2026-11-11 18:44:21 +08:00
Commit Graph

62 Commits

Author SHA1 Message Date
Matthew Tancik
d0f0f8da2d
Add interval loss (#92)
Implement interval loss that was proposed in mipnerf-360.
2022-07-06 17:27:19 -07:00
Ethan Weber
56661b5d9a
Viewer Dynamic Resolution Scaling (DRS) (#87)
* updated three.js version. only send camera information when it moves

* changing code back to updating camera constantly because packets seem to be lost

* interrupting function during rendering

* small linting fixes

* added logic for interrupting rendering + separted out visualizer logic from trainer

Co-authored-by: evonneng <evonne_ng@berkeley.edu>
2022-07-06 15:47:08 -07:00
Ethan Weber
bf13ed3cf3
Integrating WebRTC into viewer (#73)
* restructuring for webrtc integration

* some webrtc code but not working

* webrtc connects when muted

* the flag is real!

* updating camera in websocket bridge. moved webrtc to existing websocket connection instead of http request. need to change video track

* rudimentary adding real-time imaging

* added free TURN server so code works everywhere

* slow rendering works during training with the viewer

* fix tensor device and update default model save dir

* forgot to include trainer updates

* removing some code that isn't needed

* quick fix to bins. not the most accurate however

* cleaned up code and added some config logic

* black

* adding license

Co-authored-by: evonneng <evonne_ng@berkeley.edu>
2022-07-05 14:52:49 -07:00
Ethan Weber
fefbad2592
Fixed frustum device and updated model checkpoint defaults (#78)
* fix tensor device and update default model save dir

* removed viewer reference
2022-07-04 17:22:39 -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
Matt Tancik
73a2449bae Fix hydra bug 2022-06-25 18:43:10 -07:00
evonneng
ee4e6b24f4
Added structured config support (#58)
* added typed config; idealy would convert graph to typed too....

* added graph as config
2022-06-17 08:46:03 -07:00
evonneng
91ef54963c
refactoring configs; pulled network out of graph; created trainer heirarchy (#51)
* changed config graph structure

* removed network udner graphs; added new heirarchy trainer

* fixed callback in occupancy graph

* lint

* changed register callback to setter method
2022-06-15 09:06:43 -07:00
evonneng
f67dca6f5b
refactor moving setup functions to associated classes; cleanup eval and benchmark scripts (#48)
* refactor code to move graph/dataset setup to respective files

* consolidated eval and benchmark script

* moved setup optimizers to its own thing
2022-06-13 19:05:07 -07:00
Matt Tancik
3921839d1a Update config 2022-06-13 13:39:49 -07:00
Matt Tancik
cc79708df7 Cleanup mipnerf implementation 2022-06-09 17:26:58 -07:00
Ethan Weber
457788d689
dataloader logic, new folder structure, flatter configs (#26)
* renaming dataloader to data. adding some dataloader classes

* restructuring configs

* fixed instant ngp tcnn direction rescaling

* working through test cases

* black and lint and tests
2022-06-08 09:01:56 -07:00
Ethan Weber
146332cfb6
Refactoring (data loading, semantic-nerf/nerf-w fixes, ...) (#8)
* in progress. camera_indices broken

* faster dataloader. starting on pixel sampler logic

* imagesampler and pixelsampler

* lint and black

* continuing merge

* pytest working

* fixed docs

* docs

* minor changes
2022-06-02 14:58:46 -04:00
Matt Tancik
1a8ad9a763 Change name to pyrad 2022-05-31 14:15:06 -07:00
evonneng
fbcf3cb831
Eng/better configs (#113)
* update possible config setup

* finished porting remaning configs

* fix bugs

* change mattprot to radiance in config
2022-05-30 10:47:49 -07:00
Matt Tancik
b26408eb7a Adios mattport 2022-05-30 09:24:12 -07:00
Ethan Weber
3226a1c989
CPU usage improvement and minor changes (#108)
* cpu fixes, masking logic but commented out, nerfw and semanticnerf in progress

* pylint
2022-05-26 10:18:08 -04:00
Matt Tancik
4cccc9110d RAdam + background color fix 2022-05-24 11:28:05 -07:00
Ethan Weber
7d8beaaed4
Tiny-cuda-nn and fixed logic for instant-ngp (#102)
* correcting implementation for instant ngp

* instant ngp with tcnn

* black and pylint

* merged master
2022-05-23 12:05:41 -07:00
evonneng
2144fd1527
Enable stats tracker logging on full history (#91)
* added logger ability to log everything without erasing
2022-05-20 11:41:34 -07:00
evonneng
10d713f84b
Consolidate StatsTracker as LocalWriter; cleaned up functions to write (#88)
* removed stats tracker; consolidate writers into local writer

* basic revamp of stats tracker/writers
2022-05-20 08:51:45 -07:00
Ethan Weber
676beebb14
Setting near and far with scene bounds collider. Also LR schedules. (#74)
* some initial cuda code as I learn. using git to save progress.

* first cuda kernel for ray sampling that mostly works

* cleaning up code. working on lr. structs for scene bounds aabb

* added scene bounds collider code

* updated setup

* setup

* setup

* black

* including some files

* exporting env variable

* new file

* git workflows

* github actions

* github actions

* github actions

* removing env var
2022-05-16 14:03:19 -07:00
Ethan Weber
1c1a58c4e5
nerf-w and semantic-nerf initial implementations (#73)
* initial nerfw code

* nerfw should be implmented correctly now

* semantic nerf in progress. data loader is too slow and not clean right now

* added implementation of semantic nerf

* mend
2022-05-13 17:44:16 -07:00
evonneng
a555ef7eb4
cap history in calc avg of stats; tensorboard output to /tmp (#67)
* cap history in calc avg of stats

* fixed too many nested ifs
2022-05-10 16:55:16 -07:00
Matt Tancik
8c1e9d7f1a Better align with nerf 2022-05-10 10:18:20 -07:00
Ethan Weber
5fb3d14304
Fixed testing and added graph abstractions (#64)
* abstracted some test logic and actually using test images now

* moved logging from trainer to graph

* fixing dataset path

* refactored instant ngp code to use inheritance

* fixed my run_train

* fixed data path

* fixed data dir
2022-05-09 11:54:40 -07:00
evonneng
a498a6cc64
Standardized logging code to all global var; writers now accessible from all files (#62)
* added skeleton for terminal logger

* done skeleton terminal writer logic... todo: actual calls to the write classes

* moved lambda to top function

* added logic to support timing

* prettier printing

* prettier printing

* lint

* separated out timing and other stats variables. printing in dict format

* keeping logging history and wiping rest

* updated logic to calculate total times instead of average times

* made stats tracker configurable

* moved stats tracker and profiler to own class file; implemented basic functionality for profiler

* lint removing duplicate function

* update readme; moved around config variables

* profiler prints on sig kill

* merge

* standardized all logging to global variables
2022-05-06 21:55:33 -07:00
Ethan Weber
0b82c1188c
Colmap type of dataset (from "friends" project) (#56)
* code to process the friends data. need to add masking

* code to process the friends data. need to add masking

* black

* trying to fix black

* black fixed

* updating black version
2022-05-05 08:45:30 -07:00
Matt Tancik
fc282f8857 Add multiple color options 2022-05-04 15:47:54 -07:00
Matt Tancik
ba28d0cdb2 Add training with white backgrounds 2022-05-04 13:45:53 -07:00
evonneng
603c85ccd2 fixed error; changed pkg to file 2022-05-03 06:26:11 +00:00
evonneng
35145cb400 moved test config to own config dir; using default 2022-05-03 06:10:34 +00:00
Matt Tancik
a10eb5caef Add basic NGP encoder 2022-05-02 13:27:30 -07:00
evonneng
e874e856ec
changed test config file to inherit from default (#49)
* lint

* reconfigured modules in yaml

* added data module

* changed test config file
2022-04-29 16:18:30 -07:00
Ethan Weber
023e6a3f92 merging masters new config 2022-04-29 22:29:43 +00:00
Ethan Weber
92062418d6 Merge branch 'master' into ethan/apr29_cpu_and_multigpu 2022-04-29 22:10:51 +00:00
Ethan Weber
387ad93027 merging 2022-04-29 22:10:36 +00:00
evonneng
9004584026
added data/ config folder (#47)
* lint

* reconfigured modules in yaml

* added data module
2022-04-29 15:01:39 -07:00
evonneng
a93dace958
modularizing hydra config and setting defaults (#46)
* lint

* reconfigured modules in yaml
2022-04-29 14:39:43 -07:00
Ethan Weber
7b118750ec merged master into this 2022-04-29 21:37:10 +00:00
Ethan Weber
6b17ad51c6 cpu support and multi gpu progress 2022-04-29 21:29:13 +00:00
evonneng
86b1011ae1
Printing profile on sig kill. (#44)
* added skeleton for terminal logger

* done skeleton terminal writer logic... todo: actual calls to the write classes

* moved lambda to top function

* added logic to support timing

* prettier printing

* prettier printing

* lint

* separated out timing and other stats variables. printing in dict format

* keeping logging history and wiping rest

* updated logic to calculate total times instead of average times

* made stats tracker configurable

* moved stats tracker and profiler to own class file; implemented basic functionality for profiler

* lint removing duplicate function

* update readme; moved around config variables

* profiler prints on sig kill
2022-04-29 11:10:34 -07:00
evonneng
58f2622f4d added general testing, fixed up config, made writer general 2022-04-28 23:21:01 +00:00
evonneng
e5f436a18d update description in yaml 2022-04-28 22:09:00 +00:00
evonneng
609fcb04f6
Set up profiler and moved stats tracker to its own class; set up configurables for stats tracker and profiler (#42)
* added skeleton for terminal logger

* done skeleton terminal writer logic... todo: actual calls to the write classes

* moved lambda to top function

* added logic to support timing

* prettier printing

* prettier printing

* lint

* separated out timing and other stats variables. printing in dict format

* keeping logging history and wiping rest

* updated logic to calculate total times instead of average times

* made stats tracker configurable

* moved stats tracker and profiler to own class file; implemented basic functionality for profiler

* lint removing duplicate function
2022-04-28 15:04:00 -07:00
Ethan Weber
391803759e adding config 2022-04-23 17:37:13 +00:00
Ethan Weber
5099a4f7c5 resizing image 2022-04-22 18:19:39 +00:00
Ethan Weber
f090d9a001 training loop with tensorboard funs 2022-04-22 03:52:35 +00:00
Ethan Weber
cf7034f0d1 added test set (using training data for now) 2022-04-22 03:45:06 +00:00
Ethan Weber
b6f878f227 merge 2022-04-21 20:29:43 +00:00