- 02 Apr, 2020 1 commit
-
-
David Novotny authored
Summary: Umeyama estimates a rigid motion between two sets of corresponding points. Benchmark output for `bm_points_alignment` ``` Arguments key: [<allow_reflection>_<batch_size>_<dim>_<estimate_scale>_<n_points>_<use_pointclouds>] Benchmark Avg Time(μs) Peak Time(μs) Iterations -------------------------------------------------------------------------------- CorrespodingPointsAlignment_True_1_3_True_100_False 7382 9833 68 CorrespodingPointsAlignment_True_1_3_True_10000_False 8183 10500 62 CorrespodingPointsAlignment_True_1_3_False_100_False 7301 9263 69 CorrespodingPointsAlignment_True_1_3_False_10000_False 7945 9746 64 CorrespodingPointsAlignment_True_1_20_True_100_False 13706 41623 37 CorrespodingPointsAlignment_True_1_20_True_10000_False 11044 33766 46 CorrespodingPointsAlignment_True_1_20_False_100_False 9908 28791 51 CorrespodingPointsAlignment_True_1_20_False_10000_False 9523 18680 53 CorrespodingPointsAlignment_True_10_3_True_100_False 29585 32026 17 CorrespodingPointsAlignment_True_10_3_True_10000_False 29626 36324 18 CorrespodingPointsAlignment_True_10_3_False_100_False 26013 29253 20 CorrespodingPointsAlignment_True_10_3_False_10000_False 25000 33820 20 CorrespodingPointsAlignment_True_10_20_True_100_False 40955 41592 13 CorrespodingPointsAlignment_True_10_20_True_10000_False 42087 42393 12 CorrespodingPointsAlignment_True_10_20_False_100_False 39863 40381 13 CorrespodingPointsAlignment_True_10_20_False_10000_False 40813 41699 13 CorrespodingPointsAlignment_True_100_3_True_100_False 183146 194745 3 CorrespodingPointsAlignment_True_100_3_True_10000_False 213789 231466 3 CorrespodingPointsAlignment_True_100_3_False_100_False 177805 180796 3 CorrespodingPointsAlignment_True_100_3_False_10000_False 184963 185695 3 CorrespodingPointsAlignment_True_100_20_True_100_False 347181 347325 2 CorrespodingPointsAlignment_True_100_20_True_10000_False 363259 363613 2 CorrespodingPointsAlignment_True_100_20_False_100_False 351769 352496 2 CorrespodingPointsAlignment_True_100_20_False_10000_False 375629 379818 2 CorrespodingPointsAlignment_False_1_3_True_100_False 11155 13770 45 CorrespodingPointsAlignment_False_1_3_True_10000_False 10743 13938 47 CorrespodingPointsAlignment_False_1_3_False_100_False 9578 11511 53 CorrespodingPointsAlignment_False_1_3_False_10000_False 9549 11984 53 CorrespodingPointsAlignment_False_1_20_True_100_False 13809 14183 37 CorrespodingPointsAlignment_False_1_20_True_10000_False 14084 15082 36 CorrespodingPointsAlignment_False_1_20_False_100_False 12765 14177 40 CorrespodingPointsAlignment_False_1_20_False_10000_False 12811 13096 40 CorrespodingPointsAlignment_False_10_3_True_100_False 28823 39384 18 CorrespodingPointsAlignment_False_10_3_True_10000_False 27135 27525 19 CorrespodingPointsAlignment_False_10_3_False_100_False 26236 28980 20 CorrespodingPointsAlignment_False_10_3_False_10000_False 42324 45123 12 CorrespodingPointsAlignment_False_10_20_True_100_False 723902 723902 1 CorrespodingPointsAlignment_False_10_20_True_10000_False 220007 252886 3 CorrespodingPointsAlignment_False_10_20_False_100_False 55593 71636 9 CorrespodingPointsAlignment_False_10_20_False_10000_False 44419 71861 12 CorrespodingPointsAlignment_False_100_3_True_100_False 184768 185199 3 CorrespodingPointsAlignment_False_100_3_True_10000_False 198657 213868 3 CorrespodingPointsAlignment_False_100_3_False_100_False 224598 309645 3 CorrespodingPointsAlignment_False_100_3_False_10000_False 197863 202002 3 CorrespodingPointsAlignment_False_100_20_True_100_False 293484 309459 2 CorrespodingPointsAlignment_False_100_20_True_10000_False 327253 366644 2 CorrespodingPointsAlignment_False_100_20_False_100_False 420793 422194 2 CorrespodingPointsAlignment_False_100_20_False_10000_False 462634 485542 2 CorrespodingPointsAlignment_True_1_3_True_100_True 7664 9909 66 CorrespodingPointsAlignment_True_1_3_True_10000_True 7190 8366 70 CorrespodingPointsAlignment_True_1_3_False_100_True 6549 8316 77 CorrespodingPointsAlignment_True_1_3_False_10000_True 6534 7710 77 CorrespodingPointsAlignment_True_10_3_True_100_True 29052 32940 18 CorrespodingPointsAlignment_True_10_3_True_10000_True 30526 33453 17 CorrespodingPointsAlignment_True_10_3_False_100_True 28708 32993 18 CorrespodingPointsAlignment_True_10_3_False_10000_True 30630 35973 17 CorrespodingPointsAlignment_True_100_3_True_100_True 264909 320820 3 CorrespodingPointsAlignment_True_100_3_True_10000_True 310902 322604 2 CorrespodingPointsAlignment_True_100_3_False_100_True 246832 250634 3 CorrespodingPointsAlignment_True_100_3_False_10000_True 276006 289061 2 CorrespodingPointsAlignment_False_1_3_True_100_True 11421 13757 44 CorrespodingPointsAlignment_False_1_3_True_10000_True 11199 12532 45 CorrespodingPointsAlignment_False_1_3_False_100_True 11474 15841 44 CorrespodingPointsAlignment_False_1_3_False_10000_True 10384 13188 49 CorrespodingPointsAlignment_False_10_3_True_100_True 36599 47340 14 CorrespodingPointsAlignment_False_10_3_True_10000_True 40702 50754 13 CorrespodingPointsAlignment_False_10_3_False_100_True 41277 52149 13 CorrespodingPointsAlignment_False_10_3_False_10000_True 34286 37091 15 CorrespodingPointsAlignment_False_100_3_True_100_True 254991 258578 2 CorrespodingPointsAlignment_False_100_3_True_10000_True 257999 261285 2 CorrespodingPointsAlignment_False_100_3_False_100_True 247511 248693 3 CorrespodingPointsAlignment_False_100_3_False_10000_True 251807 263865 3 ``` Reviewed By: gkioxari Differential Revision: D19808389 fbshipit-source-id: 83305a58627d2fc5dcaf3c3015132d8148f28c29
-
- 01 Apr, 2020 2 commits
-
-
Patrick Labatut authored
Summary: Do not create output files with invalid inputs to `save_{obj,ply}()`. Reviewed By: bottler Differential Revision: D20720282 fbshipit-source-id: 3b611a10da6f6eecacab2a1900bf16f89e2000aa -
Patrick Labatut authored
Summary: Similar to D20392526, PLY files without vertices or faces should be allowed: - a PLY with only vertices can represent a point cloud - a PLY without any vertex or face is just empty - a PLY with faces referencing inexistent vertices has invalid data Reviewed By: gkioxari Differential Revision: D20400330 fbshipit-source-id: 35a5f072603fd221f382c7faad5f37c3e0b49bb1
-
- 30 Mar, 2020 2 commits
-
-
Jeremy Reizenstein authored
Summary: rename join_meshes to join_meshes_as_batch. Reviewed By: nikhilaravi Differential Revision: D20671293 fbshipit-source-id: e84d6a67d6c1ec28fb5e52d4607db8e92561a4cd
-
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 5 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
-