Summary: Copy code from NeRF for loading LLFF data and blender synthetic data, and create dataset objects for them
Reviewed By: shapovalov
Differential Revision: D35581039
fbshipit-source-id: af7a6f3e9a42499700693381b5b147c991f57e5d
Summary:
pyfmt now specifies a target Python version of 3.8 when formatting
with black. With this new config, black adds trailing commas to all
multiline function calls. This applies the new formatting as part
of rolling out the linttool-integration for pyfmt.
paintitblack
Reviewed By: zertosh, lisroach
Differential Revision: D37084377
fbshipit-source-id: 781a1b883a381a172e54d6e447137657977876b4
Summary: Make dataset type and args configurable on JsonIndexDatasetMapProvider.
Reviewed By: davnov134
Differential Revision: D36666705
fbshipit-source-id: 4d0a3781d9a956504f51f1c7134c04edf1eb2846
Summary: Changes to JsonIndexDataset to make it fit with OmegaConf.structured. Also match some default values to what the provider defaults to.
Reviewed By: davnov134
Differential Revision: D36666704
fbshipit-source-id: 65b059a1dbaa240ce85c3e8762b7c3db3b5a6e75
Summary: Allow a class to modify its subparts in get_default_args by defining the special function provide_config_hook.
Reviewed By: davnov134
Differential Revision: D36671081
fbshipit-source-id: 3e5b73880cb846c494a209c4479835f6352f45cf
Summary: Our tests fail (https://fburl.com/jmoqo9bz) because test_splatter_blend uses torch.tile, which is not supported in earlier torch versions. Replace it with tensor.extend.
Reviewed By: bottler
Differential Revision: D36796098
fbshipit-source-id: 38d5b40667f98f3163b33f44e53e96b858cfeba2
Summary: Fix divide by zero for empty pointcloud in chamfer. Also for empty batches. In process, needed to regularize num_points_per_cloud for empty batches.
Reviewed By: kjchalup
Differential Revision: D36311330
fbshipit-source-id: 3378ab738bee77ecc286f2110a5c8dc445960340
Summary: A few minor additions I didn't fit into the SplatterBlender diffs, as requested by reviewers.
Reviewed By: jcjohnson
Differential Revision: D36682437
fbshipit-source-id: 57af995e766dfd2674b3984a3ba00aef7ca7db80
Summary: The ImplicitronDataset class corresponds to JsonIndexDatasetMapProvider
Reviewed By: shapovalov
Differential Revision: D36661396
fbshipit-source-id: 80ca2ff81ef9ecc2e3d1f4e1cd14b6f66a7ec34d
Summary: test_viewpool was inactive so missed being fixed in D36547815 (2d1c6d5d93)
Reviewed By: kjchalup
Differential Revision: D36625587
fbshipit-source-id: e7224eadfa5581fe61f10f67d2221071783de04a
Summary:
Benchmarking. We only use num_faces=2 for splatter, because as far as I can see one would never need to use more. Pose optimization and mesh optimization experiments (see next two diffs) showed that Splatter with 2 faces beats Softmax with 50 and 100 faces in terms of accuracy.
Results: We're slower at 64px^2. At 128px and 256px, we're slower than Softmax+50faces, but faster than Softmax+100faces. We're also slower at 10 faces/pix, but expectation as well as results show that more then 2 faces shouldn't be necessary. See also more results in .https://fburl.com/gdoc/ttv7u7hp
Reviewed By: jcjohnson
Differential Revision: D36210575
fbshipit-source-id: c8de28c8a59ce5fe21a47263bd43d2757b15d123
Summary: Splatting shader. See code comments for details. Same API as SoftPhongShader.
Reviewed By: jcjohnson
Differential Revision: D36354301
fbshipit-source-id: 71ee37f7ff6bb9ce028ba42a65741424a427a92d
Summary: If you miss grid_sample in recent pytorch, it gives a warning, so stop doing this.
Reviewed By: kjchalup
Differential Revision: D36410619
fbshipit-source-id: 41dd4455298645c926f4d96c2084093b3f64ee2c
Summary: PLY with mixture of triangle and quadrilateral faces was failing.
Reviewed By: gkioxari
Differential Revision: D36592981
fbshipit-source-id: 5373edb2f38389ac646a75fd2e1fa7300eb8d054
Summary: Use small image size for test_all_gm_configs
Reviewed By: shapovalov
Differential Revision: D36511528
fbshipit-source-id: 2c65f518a4f23626850343a62d103f85abfabd88
Summary: replace dataset_zoo with a pluggable DatasetMapProvider. The logic is now in annotated_file_dataset_map_provider.
Reviewed By: shapovalov
Differential Revision: D36443965
fbshipit-source-id: 9087649802810055e150b2fbfcc3c197a761f28a
Summary: Separate ImplicitronDatasetBase and FrameData (to be used by all data sources) from ImplicitronDataset (which is specific).
Reviewed By: shapovalov
Differential Revision: D36413111
fbshipit-source-id: 3725744cde2e08baa11aff4048237ba10c7efbc6
Summary:
Move dataset_args and dataloader_args from ExperimentConfig into a new member called datasource so that it can contain replaceables.
Also add enum Task for task type.
Reviewed By: shapovalov
Differential Revision: D36201719
fbshipit-source-id: 47d6967bfea3b7b146b6bbd1572e0457c9365871
Summary: Make ResNetFeatureExtractor be an implementation of FeatureExtractorBase.
Reviewed By: davnov134
Differential Revision: D35433098
fbshipit-source-id: 0664a9166a88e150231cfe2eceba017ae55aed3a
Summary: skip checking the version of black because `black --version` looks different in different versions.
Reviewed By: kjchalup
Differential Revision: D36441262
fbshipit-source-id: a2d9a5cad4f5433909fb85bc9a584e91a2b72601
Summary: Allow extra data in a FrameAnnotation. Therefore allow Optional[T] systematically in _dataclass_from_dict
Reviewed By: davnov134
Differential Revision: D36442691
fbshipit-source-id: ba70f6491574c08b0d9c9acb63f35514d29de214
Summary: Fix recently observed case where enable_get_default_args was missing things declared as Optional[something mutable]=None.
Reviewed By: davnov134
Differential Revision: D36440492
fbshipit-source-id: 192ec07564c325b3b24ccc49b003788f67c63a3d
Summary: A small refactor, originally intended for use with the splatter.
Reviewed By: bottler
Differential Revision: D36210393
fbshipit-source-id: b3372f7cc7690ee45dd3059b2d4be1c8dfa63180
Summary: The splatter can re-use pixel coords computed by the shader.
Reviewed By: bottler
Differential Revision: D36332530
fbshipit-source-id: b28e7abe22cca4f48b4108ad397aafc0f1347901
Summary:
1. Typo in the dataset path in the config.
2. Typo in num_frames.
3. Pick sequence was cached before it was modified for single-sequence.
Reviewed By: bottler
Differential Revision: D36417329
fbshipit-source-id: 6dcd75583de510412e1ae58f63db04bb4447403e
Summary: Make create_x delegate to create_x_impl so that users can rely on create_x_impl in their overrides of create_x.
Reviewed By: shapovalov, davnov134
Differential Revision: D35929810
fbshipit-source-id: 80595894ee93346b881729995775876b016fc08e
Summary:
Applies new import merging and sorting from µsort v1.0.
When merging imports, µsort will make a best-effort to move associated
comments to match merged elements, but there are known limitations due to
the diynamic nature of Python and developer tooling. These changes should
not produce any dangerous runtime changes, but may require touch-ups to
satisfy linters and other tooling.
Note that µsort uses case-insensitive, lexicographical sorting, which
results in a different ordering compared to isort. This provides a more
consistent sorting order, matching the case-insensitive order used when
sorting import statements by module name, and ensures that "frog", "FROG",
and "Frog" always sort next to each other.
For details on µsort's sorting and merging semantics, see the user guide:
https://usort.readthedocs.io/en/stable/guide.html#sorting
Reviewed By: lisroach
Differential Revision: D36402260
fbshipit-source-id: 7cb52f09b740ccc580e61e6d1787d27381a8ce00
Summary: Fix doc and add a call to expand_args_fields for each implicit function.
Reviewed By: shapovalov
Differential Revision: D35929811
fbshipit-source-id: 8c3cfa56b8d8908fd2165614960e3d34b54717bb
Summary: Like vgg16 for lpips, internally we need resnet34 weights for coming feature extractor tests.
Reviewed By: davnov134
Differential Revision: D36349361
fbshipit-source-id: 1c33009c904766fcc15e7e31cd15d0f820c57354
Summary:
This converts raysamplers to ReplaceableBase so that users can hack their own raysampling impls.
Context: Andrea tried to implement TensoRF within implicitron but could not due to the need to implement his own raysampler.
Reviewed By: shapovalov
Differential Revision: D36016318
fbshipit-source-id: ef746f3365282bdfa9c15f7b371090a5aae7f8da
Summary: Uses the GenericRaymarcher only as an ABC and derives two common implementations - EA raymarcher and Cumsum raymarcher (from neural volumes)
Reviewed By: shapovalov
Differential Revision: D35927653
fbshipit-source-id: f7e6776e71f8a4e99eefc018a47f29ae769895ee
Summary: Implements a ViewPooler that groups ViewSampler and FeatureAggregator.
Reviewed By: shapovalov
Differential Revision: D35852367
fbshipit-source-id: c1bcaf5a1f826ff94efce53aa5836121ad9c50ec
Summary:
Applies the black-fbsource codemod with the new build of pyfmt.
paintitblack
Reviewed By: lisroach
Differential Revision: D36324783
fbshipit-source-id: 280c09e88257e5e569ab729691165d8dedd767bc
Summary: Add a capability to detach all detachable tensors in Fragments.
Reviewed By: bottler
Differential Revision: D35918133
fbshipit-source-id: 03b5d4491a3a6791b0a7bc9119f26c1a7aa43196
Summary: Tests all possible model configs in test_forward_pass.py
Reviewed By: shapovalov
Differential Revision: D35851507
fbshipit-source-id: 4860ee1d37cf17a2faab5fc14d4b2ba0b96c4b8b