- 18 May, 2022 1 commit
-
-
Jeremy Reizenstein authored
Summary: Make ResNetFeatureExtractor be an implementation of FeatureExtractorBase. Reviewed By: davnov134 Differential Revision: D35433098 fbshipit-source-id: 0664a9166a88e150231cfe2eceba017ae55aed3a
-
- 17 May, 2022 5 commits
-
-
Jeremy Reizenstein authored
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
-
Jeremy Reizenstein authored
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
-
Krzysztof Chalupka authored
Summary: A small refactor, originally intended for use with the splatter. Reviewed By: bottler Differential Revision: D36210393 fbshipit-source-id: b3372f7cc7690ee45dd3059b2d4be1c8dfa63180
-
Krzysztof Chalupka authored
Summary: We'll need non-flipped screen coords in splatter. Reviewed By: bottler Differential Revision: D36337027 fbshipit-source-id: 897f88e8854bab215d2d0e502b25d15526ee86f1
-
Krzysztof Chalupka authored
Summary: The splatter can re-use pixel coords computed by the shader. Reviewed By: bottler Differential Revision: D36332530 fbshipit-source-id: b28e7abe22cca4f48b4108ad397aafc0f1347901
-
- 16 May, 2022 2 commits
-
-
Roman Shapovalov authored
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
-
Jeremy Reizenstein authored
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
-
- 15 May, 2022 1 commit
-
-
John Reese authored
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
-
- 13 May, 2022 2 commits
-
-
Jeremy Reizenstein authored
Summary: Stronger typing for these functions Reviewed By: shapovalov Differential Revision: D36170489 fbshipit-source-id: a2104b29dbbbcfcf91ae1d076cd6b0e3d2030c0b
-
Jeremy Reizenstein authored
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
-
- 12 May, 2022 5 commits
-
-
David Novotny authored
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
-
David Novotny authored
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
-
David Novotny authored
Summary: Implements a ViewPooler that groups ViewSampler and FeatureAggregator. Reviewed By: shapovalov Differential Revision: D35852367 fbshipit-source-id: c1bcaf5a1f826ff94efce53aa5836121ad9c50ec
-
John Reese authored
Summary: Applies the black-fbsource codemod with the new build of pyfmt. paintitblack Reviewed By: lisroach Differential Revision: D36324783 fbshipit-source-id: 280c09e88257e5e569ab729691165d8dedd767bc
-
Krzysztof Chalupka authored
Summary: Add a capability to detach all detachable tensors in Fragments. Reviewed By: bottler Differential Revision: D35918133 fbshipit-source-id: 03b5d4491a3a6791b0a7bc9119f26c1a7aa43196
-
- 10 May, 2022 1 commit
-
-
Pyre Bot Jr authored
Differential Revision: D36269817 fbshipit-source-id: 47b8a77747e8297af3731fd0a388d4c5432dc1ff
-
- 09 May, 2022 2 commits
-
-
Roman Shapovalov authored
Summary: To avoid model_zoo, we need to make GenericModel pluggable. I also align creation APIs for convenience. Reviewed By: bottler, davnov134 Differential Revision: D35933093 fbshipit-source-id: 8228926528eb41a795fbfbe32304b8019197e2b1
-
David Novotny authored
Summary: GenericModel crashes in case the `aux` field of any Renderer is populated. This is because the `rendered.aux` is unpacked to ViewMetrics.forward whose signature does not contain **kwargs. Hence, the contents of `aux` are unknown to forward's signature resulting in a crash. Reviewed By: bottler Differential Revision: D36166118 fbshipit-source-id: 906a067ea02a3648a69667422466451bc219ebf6
-
- 06 May, 2022 3 commits
-
-
Krzysztof Chalupka authored
Reviewed By: bottler Differential Revision: D36148049 fbshipit-source-id: 87ca3ea8d5b5a315418cc597b36fd0a1dffb1e00
-
Jeremy Reizenstein authored
Summary: Create a test runner for the eval_demo code. Debugging this is useful for understanding datasets. Introduces an environment variable INTERACTIVE_TESTING for ignoring tests which are not intended for use in regular test runs. Reviewed By: shapovalov Differential Revision: D35964016 fbshipit-source-id: ab0f93aff66b6cfeca942b14466cf81f7feb2224
-
Jeremy Reizenstein authored
Summary: the pytorch3d.compat.lstsq function needs a 2D rhs. Reviewed By: patricklabatut Differential Revision: D36195826 fbshipit-source-id: 9dbafea2057035cc04973f56729dc97b47dcac83
-
- 04 May, 2022 1 commit
-
-
Pyre Bot Jr authored
Differential Revision: D36120486 fbshipit-source-id: bddbf47957f4476f826ad20c2d6e146c98ee73e1
-
- 28 Apr, 2022 1 commit
-
-
Jeremy Reizenstein authored
Summary: Update PyTorch3D version number Differential Revision: D35980555 fbshipit-source-id: 637ccd33eef22d909985d2fce3958c78f3d0d551
-
- 27 Apr, 2022 1 commit
-
-
Krzysztof Chalupka authored
Summary: Most of the shaders copypaste exactly the same code into `__init__` and `to`. I will be adding a new shader in the next diff, so let's make it a bit easier. Reviewed By: bottler Differential Revision: D35767884 fbshipit-source-id: 0057e3e2ae3be4eaa49ae7e2bf3e4176953dde9d
-
- 26 Apr, 2022 3 commits
-
-
Jeremy Reizenstein authored
Summary: Move from isort to usort now that usort supports sorting within lines. Reviewed By: patricklabatut Differential Revision: D35893280 fbshipit-source-id: 621c1cd285199d785408504430ee0bdf8683b21e
-
Jeremy Reizenstein authored
Summary: New function to check if a renderer needs the object mask. Reviewed By: davnov134 Differential Revision: D35254009 fbshipit-source-id: 4c99e8a1c0f6641d910eb32bfd6cfae9d3463d50
-
Jeremy Reizenstein authored
Summary: Make method for SDF's use of object mask more general, so that a renderer can be given per-pixel values. Reviewed By: shapovalov Differential Revision: D35247412 fbshipit-source-id: 6aeccb1d0b5f1265a3f692a1453407a07e51a33c
-
- 13 Apr, 2022 3 commits
-
-
Tim Hatch authored
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: bottler Differential Revision: D35553814 fbshipit-source-id: be49bdb6a4c25264ff8d4db3a601f18736d17be1
-
Jeremy Reizenstein authored
Summary: D35513897 (https://github.com/facebookresearch/pytorch3d/commit/4b94649f7b7de4ce3a0597c5a17a7596928ad20b) was a pyre infer job which got some things wrong. Correct by adding the correct types, so these things shouldn't need worrying about again. Reviewed By: patricklabatut Differential Revision: D35546144 fbshipit-source-id: 89f6ea2b67be27aa0b0b14afff4347cccf23feb7
-
Jeremy Reizenstein authored
Summary: Add option to not rescale the features, giving more control. https://github.com/facebookresearch/pytorch3d/issues/1137 Reviewed By: nikhilaravi Differential Revision: D35219577 fbshipit-source-id: cbbb643b91b71bc908cedc6dac0f63f6d1355c85
-
- 12 Apr, 2022 2 commits
-
-
Pyre Bot Jr authored
Differential Revision: D35590813 fbshipit-source-id: 0f35d7193f839a41f3cac18bf20236b815368f19
-
Krzysztof Chalupka authored
Summary: In order to simplify the interface, we disallow passing None as vertex/face lists to textures.submeshes. This function would only ever get called from within meshes.submeshes where we can provide both arguments, even if they're not necessary for a specific submesh type. Reviewed By: bottler Differential Revision: D35581161 fbshipit-source-id: aeab99308a319b144e141ca85ca7515f855116da
-
- 11 Apr, 2022 3 commits
-
-
Krzysztof Chalupka authored
Summary: Add submeshing capability for meshes with TexturesVertex. Reviewed By: bottler Differential Revision: D35448534 fbshipit-source-id: 6d16a31a5bfb24ce122cf3c300a7616bc58353d1
-
Krzysztof Chalupka authored
Summary: Copypasting the docstring: ``` Split a mesh into submeshes, defined by face indices of the original Meshes object. Args: face_indices: Let the original mesh have verts_list() of length N. Can be either - List of length N. The n-th element is a list of length num_submeshes_n (empty lists are allowed). Each element of the n-th sublist is a LongTensor of length num_faces. - List of length N. The n-th element is a possibly empty padded LongTensor of shape (num_submeshes_n, max_num_faces). Returns: Meshes object with selected submeshes. The submesh tensors are cloned. Currently submeshing only works with no textures or with the TexturesVertex texture. Example: Take a Meshes object `cubes` with 4 meshes, each a translated cube. Then: * len(cubes) is 4, len(cubes.verts_list()) is 4, len(cubes.faces_list()) is 4, * [cube_verts.size for cube_verts in cubes.verts_list()] is [8, 8, 8, 8], * [cube_faces.size for cube_faces in cubes.faces_list()] if [6, 6, 6, 6], Now let front_facet, top_and_bottom, all_facets be LongTensors of sizes (2), (4), and (12), each picking up a number of facets of a cube by specifying the appropriate triangular faces. Then let `subcubes = cubes.submeshes([[front_facet, top_and_bottom], [], [all_facets], []])`. * len(subcubes) is 3. * subcubes[0] is the front facet of the cube contained in cubes[0]. * subcubes[1] is a mesh containing the (disconnected) top and bottom facets of cubes[0]. * subcubes[2] is a clone of cubes[2]. * There are no submeshes of cubes[1] and cubes[3] in subcubes. * subcubes[0] and subcubes[1] are not watertight. subcubes[2] is. ``` Reviewed By: bottler Differential Revision: D35440657 fbshipit-source-id: 8a6d2d300ce226b5b9eb440688528b5e795195a1 -
Krzysztof Chalupka authored
Summary: The default behavior of Meshes (with verts=None, faces=None) throws an exception: ``` meshes = Meshes() > ValueError: Verts and Faces must be either a list or a tensor with shape (batch_size, N, 3) where N is either the maximum number of verts or faces respectively. ``` Instead, let's default to an empty mesh, following e.g. PyTorch: ``` empty_tensor = torch.FloatTensor() > torch.tensor([]) ``` this change is backwards-compatible (you can still init with verts=[], faces=[]). Reviewed By: bottler, nikhilaravi Differential Revision: D35443453 fbshipit-source-id: d638a8fef49a089bf0da6dd2201727b94ceb21ec
-
- 10 Apr, 2022 1 commit
-
-
Georgia Gkioxari authored
Summary: Added L1 norm for KNN and chamfer op * The norm is now specified with a variable `norm` which can only be 1 or 2 Reviewed By: bottler Differential Revision: D35419637 fbshipit-source-id: 77813fec650b30c28342af90d5ed02c89133e136
-
- 09 Apr, 2022 1 commit
-
-
Pyre Bot Jr authored
Reviewed By: shannonzhu Differential Revision: D35513897 fbshipit-source-id: 1ca12671df1bd6608a7dce9193c145d5985c0b45
-
- 07 Apr, 2022 1 commit
-
-
Pyre Bot Jr authored
Differential Revision: D35455033 fbshipit-source-id: c4fe9577edd7beb9c40be1cb387f125d53a6a577
-
- 06 Apr, 2022 1 commit
-
-
Jeremy Reizenstein authored
Summary: A new type of auto-expanded member of a Configurable: something of type Optional[X] where X is a Configurable. This works like X but its construction is controlled by a boolean membername_enabled. Reviewed By: davnov134 Differential Revision: D35368269 fbshipit-source-id: 7e0c8a3e8c4930b0aa942fa1b325ce65336ebd5f
-