- 30 Mar, 2020 1 commit
-
-
Jeremy Reizenstein authored
Summary: Flowing of compositing comments Reviewed By: nikhilaravi Differential Revision: D20556707 fbshipit-source-id: 4abdc85e4f65abd41c4a890b6895bc5e95b4576b
-
- 29 Mar, 2020 3 commits
-
-
Patrick Labatut authored
Summary: Address black + isort fbsource linter warnings from D20558374 (previous diff) Reviewed By: nikhilaravi Differential Revision: D20558373 fbshipit-source-id: d3607de4a01fb24c0d5269634563a7914bddf1c8
-
Patrick Labatut authored
Summary: Enable `black` + `isort` (via `pyfmt`) i.e. `BLACK` fbsource linter. NOTE: the `BLACK` fbsource linter (and `black` itself) is (by design) ***not*** configurable. This forces aligning the existing options used by the tools invoked in `dev/linter.sh` (for 3rd party developers) with `BLACK` fbsource linting. Without this reconciliation, the different linters (used internally or by 3rd party developers) would simply conflict with each other resulting in artificial back-and-forth changes (for instance line width which `BLACK` forces to 88 characters). Reviewed By: nikhilaravi Differential Revision: D20558374 fbshipit-source-id: 614fa00664f8eb9d2de7438c29b807dfbf36ad20
-
Jeremy Reizenstein authored
Summary: Run linter after recent changes. Fix long comment in knn.h which clang-format has reflowed badly. Add crude test that code doesn't call deprecated `.type()` or `.data()`. Reviewed By: nikhilaravi Differential Revision: D20692935 fbshipit-source-id: 28ce0308adae79a870cb41a810b7cf8744f41ab8
-
- 28 Mar, 2020 1 commit
-
-
Patrick Labatut authored
Summary: OBJ files without vertices or faces should be allowed: - an OBJ with only vertices can represent a point cloud - an OBJ without any vertex or face is just empty - an OBJ with faces referencing inexistent vertices has invalid data Reviewed By: gkioxari Differential Revision: D20392526 fbshipit-source-id: e72c846ff1e5787fb11d527af3fefa261f9eb0ee
-
- 26 Mar, 2020 4 commits
-
-
Justin Johnson authored
Summary: Implements K-Nearest Neighbors with C++ and CUDA versions. KNN in CUDA is highly nontrivial. I've implemented a few different versions of the kernel, and we heuristically dispatch to different kernels based on the problem size. Some of the kernels rely on template specialization on either D or K, so we use template metaprogramming to compile specialized versions for ranges of D and K. These kernels are up to 3x faster than our existing 1-nearest-neighbor kernels, so we should also consider swapping out `nn_points_idx` to use these kernels in the backend. I've been working mostly on the CUDA kernels, and haven't converged on the correct Python API. I still want to benchmark against FAISS to see how far away we are from their performance. Reviewed By: bottler Differential Revision: D19729286 fbshipit-source-id: 608ffbb7030c21fe4008f330522f4890f0c3c21a
-
Nikhila Ravi authored
Summary: Small website fix. Reviewed By: bottler Differential Revision: D20672621 fbshipit-source-id: b787e626f732a8abdd92c29e5e4e8bbe27bc7e2f
-
Jeremy Reizenstein authored
Summary: Replace `tensor.type().is_cuda()` with the preferred `tensor.is_cuda()`. Replace `AT_DISPATCH_FLOATING_TYPES(tensor.type(), ...` with `AT_DISPATCH_FLOATING_TYPES(tensor.scalar_type(), ...`. These avoid deprecation warnings in future pytorch. Reviewed By: nikhilaravi Differential Revision: D20646565 fbshipit-source-id: 1a0c15978c871af816b1dd7d4a7ea78242abd95e
-
Jeremy Reizenstein authored
Summary: replace `data()` with preferred `data_ptr()`, avoiding some deprecation warnings in future pytorch. Reviewed By: nikhilaravi Differential Revision: D20645738 fbshipit-source-id: 8f6e02d292729b804fa2a66f94dd0517bbaf7887
-
- 24 Mar, 2020 1 commit
-
-
Jeremy Reizenstein authored
Summary: CPU-only builds should be fixed by this change Reviewed By: nikhilaravi Differential Revision: D20598014 fbshipit-source-id: df098ec4c6c93d38515172805fe57cac7463c506
-
- 23 Mar, 2020 2 commits
-
-
Jeremy Reizenstein authored
Summary: use assertClose in some tests, which enforces shape equality. Fixes some small problems, including graph_conv on an empty graph. Reviewed By: nikhilaravi Differential Revision: D20556912 fbshipit-source-id: 60a61eafe3c03ce0f6c9c1a842685708fb10ac5b
-
Jeremy Reizenstein authored
Summary: By accident I think, we have been nudging people to install python 3.6. Using 3.8 is fine. Reviewed By: nikhilaravi Differential Revision: D20597240 fbshipit-source-id: 7fb778f1b84746db28b6eef763564af5c5fffcd7
-
- 22 Mar, 2020 1 commit
-
-
Georgia Gkioxari authored
Summary: Run `/dev/linter.sh` to fix linting Reviewed By: nikhilaravi Differential Revision: D20584037 fbshipit-source-id: 69e45b33d22e3d54b6d37c3c35580bb3e9dc50a5
-
- 21 Mar, 2020 1 commit
-
-
Nikhila Ravi authored
Summary: Add a note about the difference between naive and coarse-to-fine rasterization to all the rendering tutorials. Update the render pointclouds tutorial to wget the data file. Reviewed By: gkioxari Differential Revision: D20575257 fbshipit-source-id: a2806b9452438f97cb754f87e011c6e32e2545e4
-
- 20 Mar, 2020 1 commit
-
-
Georgia Gkioxari authored
Summary: Replace view with reshape, add check for nans before mesh sampling Reviewed By: nikhilaravi Differential Revision: D20548456 fbshipit-source-id: c4e1b88e033ecb8f0f3a8f3a33a04ce13a5b5043
-
- 19 Mar, 2020 1 commit
-
-
Olivia authored
Summary: Code for accumulating points in the z-buffer in three ways: 1. weighted sum 2. normalised weighted sum 3. alpha compositing Pull Request resolved: https://github.com/fairinternal/pytorch3d/pull/4 Reviewed By: nikhilaravi Differential Revision: D20522422 Pulled By: gkioxari fbshipit-source-id: 5023baa05f15e338f3821ef08f5552c2dcbfc06c
-
- 18 Mar, 2020 4 commits
-
-
Patrick Labatut authored
Summary: Add pattern linter for PyTorch3D and SlowFast, this will suggest typo fixes whenever the wrong case is accidentally used. Reviewed By: wanyenlo Differential Revision: D20498696 fbshipit-source-id: 1a3f4702bd0dbe06e81d0f301b3ea38ea62e7885
-
Georgia Gkioxari authored
Re-sync with internal repository
-
Nikhila Ravi authored
-
Dave Greenwood authored
Summary: Create extrinsic parameters from eye point. Create the rotation and translation from an eye point, look-at point and up vector. see: https://www.khronos.org/registry/OpenGL-Refpages/gl2.1/xhtml/gluLookAt.xml It is arguably easier to initialise a camera position as a point in the world rather than an angle. Pull Request resolved: https://github.com/facebookresearch/pytorch3d/pull/65 Reviewed By: bottler Differential Revision: D20419652 Pulled By: nikhilaravi fbshipit-source-id: 9caa1330860bb8bde1fb5c3864ed4cde836a5d19
-
- 17 Mar, 2020 4 commits
-
-
Patrick Labatut authored
Summary: Enable spelling linter for Markdown, reStructuredText and IPython notebooks under `fbcode/vision/fair`. Apply suggested fixes. Reviewed By: ppwwyyxx Differential Revision: D20495298 fbshipit-source-id: 95310c7b51f9fa68ba2aa34ecc39a874da36a75c
-
Nikhila Ravi authored
Summary: A few small website updates: - changed the tutorials to point to the `stable` tag on github so we don't have to update the website each time we want to run them! - changed the colab button - re ran notebook cells to update the images for textured meshes Once these fixes are landed I can build and publish the website. Reviewed By: bottler Differential Revision: D20484836 fbshipit-source-id: 603a05e752f631c60d1a3abb9adeb1b9b451ab98
-
Patrick Labatut authored
Summary: Use a consistent case for PyTorch3D (matching the logo...): replace all occurrences of PyTorch3d with PyTorch3D across the codebase (including documentation and notebooks) Reviewed By: wanyenlo, gkioxari Differential Revision: D20427546 fbshipit-source-id: 8c7697f51434c51e99b7fe271935932c72a1d9b9
-
Nikhila Ravi authored
Summary: Fix errors raised by issue on GitHub - extending mesh textures + rendering with Gourad and Phong shaders. https://github.com/facebookresearch/pytorch3d/issues/97 Reviewed By: gkioxari Differential Revision: D20319610 fbshipit-source-id: d1c692ff0b9397a77a9b829c5c731790de70c09f
-
- 16 Mar, 2020 2 commits
-
-
Jeremy Reizenstein authored
Summary: D20426113 made a mistake, in that it added a dev tag to all conda builds. This makes the simplest fix, which is to never have the dev tag. Reviewed By: nikhilaravi Differential Revision: D20468541 fbshipit-source-id: adc71b58d59356834d33f65a75cf8ba84359bc74
-
Jeremy Reizenstein authored
Summary: Ensure copyright header consistency and translation unit name uniqueness. Reviewed By: nikhilaravi Differential Revision: D20438802 fbshipit-source-id: 9820cfe4c6efab016a0a8589dfa24bb526692f83
-
- 15 Mar, 2020 1 commit
-
-
Nikhila Ravi authored
Summary: Added a padded to packed utils function which takes either split sizes or a padding value to remove padded elements from a tensor. Reviewed By: gkioxari Differential Revision: D20454238 fbshipit-source-id: 180b807ff44c74c4ee9d5c1ac3b5c4a9b4be57c7
-
- 13 Mar, 2020 4 commits
-
-
Jeremy Reizenstein authored
Summary: This isn't the whole task, but it gets the version number into far fewer places. The doc / website are separate. Reviewed By: nikhilaravi Differential Revision: D20426113 fbshipit-source-id: 5810d1eca58b443fcd5f46991dc2f0f26adedbd8
-
Jeremy Reizenstein authored
Summary: Comments were describing squared distance as absolute distance in a few places. Reviewed By: nikhilaravi Differential Revision: D20426020 fbshipit-source-id: 009946867c4a98f61f5ce7158542d41e22bf8346
-
Patrick Labatut authored
Summary: Add more complex mesh I/O benchmarks: simple yet non-trivial procedural donut mesh Reviewed By: nikhilaravi Differential Revision: D20390726 fbshipit-source-id: b28b7e3a7f1720823c6bd24faabf688bb0127b7d
-
Patrick Labatut authored
Summary: Add utility function to tesselate a torus, to be used in more complex mesh I/O benchmarks Reviewed By: bottler Differential Revision: D20390724 fbshipit-source-id: 882bbbe9cac81cf340a34495b9aa66e3c1ddeebc
-
- 12 Mar, 2020 6 commits
-
-
Patrick Labatut authored
Summary: Use more realistic number of vertices / faces in benchmarks: in typical meshes, |F| ~ 2 |V| (follows from Euler formula + triangles as faces) Reviewed By: nikhilaravi Differential Revision: D20390722 fbshipit-source-id: d615e5810d6f4521391963b2573497c08a58db80
-
Patrick Labatut authored
Summary: Rename mesh I/O benchmarking methods: always (re-)create file-like object and directly return a lambda Reviewed By: nikhilaravi Differential Revision: D20390723 fbshipit-source-id: b45236360869cccdf3d5458a0aafb3ebe269babe
-
Patrick Labatut authored
Summary: Rename mesh I/O benchmarks and associated methods: - add `simple` qualifier (benchmark on more realistic mesh data to be added later) - align naming between OBJ and PLY - prefix with `bm_` to make the benchmarking purpose clear(er) Reviewed By: nikhilaravi Differential Revision: D20390764 fbshipit-source-id: 7714520abfcfe1125067f3c52f7ce19bca359574
-
Patrick Labatut authored
Summary: The shebang line `#!<path to interpreter>` is only required for Python scripts, so remove it on source files for class or function definitions. Additionally explicitly mark as executable the actual Python scripts in the codebase. Reviewed By: nikhilaravi Differential Revision: D20095778 fbshipit-source-id: d312599fba485e978a243292f88a180d71e1b55a
-
Nikhila Ravi authored
Summary: Applying the changes added for mesh rasterization to ensure that +Y is up and +X is left so that the coordinate system is right handed. Also updated the diagram in the docs to indicate that (0,0) is in the top left hand corner. Reviewed By: gkioxari Differential Revision: D20394849 fbshipit-source-id: cfb7c79090eb1f55ad38b92327a74a70a8dc541e
-
Nikhila Ravi authored
Summary: Update the point cloud rasterizer to: - use the pointcloud datastructure (rebased on top of D19791851.) - support rasterization of heterogeneous point clouds in the same way as with Meshes. The main changes to the API will be as follows: - The input to `rasterize_points` will be a `Pointclouds` object instead of a tensor. This will be easy to update e.g. ``` points = torch.randn(N, P, 3) idx2, zbuf2, dists2 = rasterize_points(points, image_size, radius, points_per_pixel) points = torch.randn(N, P, 3) pointclouds = Pointclouds(points=points) idx2, zbuf2, dists2 = rasterize_points(pointclouds, image_size, radius, points_per_pixel) ``` - The indices output from rasterization will now refer to points in `poinclouds.points_packed()`. This may require some changes to the functions which consume the outputs of rasterization if they were previously assuming that the indices ranged from 0 to P where P is the number of points in each pointcloud. Making this change now so that Olivia can update her PR accordingly. Reviewed By: gkioxari Differential Revision: D20088651 fbshipit-source-id: 833ed659909712bcbbb6a50e2ec0189839f0413a
-
- 11 Mar, 2020 2 commits
-
-
Roman Shapovalov authored
Summary: When the error occurs, another exception is thrown when tensor shape is passed to the % formatting. I have found all entries for `msg %` and fixed potential failures Reviewed By: nikhilaravi Differential Revision: D20386511 fbshipit-source-id: c05413eb4867cab1ddc9615dffbd0ebd3adfcaf9
-
Jeremy Reizenstein authored
Summary: Make Meshes.__getitem__ carry texture information to the new mesh. Reviewed By: gkioxari Differential Revision: D20283976 fbshipit-source-id: d9ee0580c11ac5b4384df9d8158a07e6eb8d00fe
-
- 09 Mar, 2020 1 commit
-
-
Jeremy Reizenstein authored
Reviewed By: nikhilaravi Differential Revision: D20218481 fbshipit-source-id: b153282cc30ad75de970c89ae64526b6be62ee95
-