1. 22 Sep, 2022 3 commits
    • Jeremy Reizenstein's avatar
      make expand_args_fields optional · d6a197be
      Jeremy Reizenstein authored
      Summary: Call expand_args_field when instantiating an object.
      
      Reviewed By: shapovalov
      
      Differential Revision: D39541931
      
      fbshipit-source-id: de8e1038927ff0112463394412d5d8c26c4a1e17
      d6a197be
    • Jeremy Reizenstein's avatar
      foreach optimizers · 209c160a
      Jeremy Reizenstein authored
      Summary: Allow using the new `foreach` option on optimizers.
      
      Reviewed By: shapovalov
      
      Differential Revision: D39694843
      
      fbshipit-source-id: 97109c245b669bc6edff0f246893f95b7ae71f90
      209c160a
    • Darijan Gudelj's avatar
      arbitrary shape input to voxel_grids · db3c12ab
      Darijan Gudelj authored
      Summary: Add the ability to process arbitrary point shapes `[n_grids, ..., 3]` instead of  only `[n_grids, n_points, 3]`.
      
      Reviewed By: bottler
      
      Differential Revision: D39574373
      
      fbshipit-source-id: 0a9ecafe9ea58cd8f909644de43a1185ecf934f4
      db3c12ab
  2. 21 Sep, 2022 2 commits
    • Michaël Ramamonjisoa's avatar
      include TexturesUV in IO.save_mesh(x.obj) · 6ae6ff9c
      Michaël Ramamonjisoa authored
      Summary:
      Added export of UV textures to IO.save_mesh in Pytorch3d
      MeshObjFormat now passes verts_uv, faces_uv, and texture_map as input to save_obj
      
      TODO: check if TexturesUV.verts_uv_list or TexturesUV.verts_uv_padded() should be passed to save_obj
      
      IO.save_mesh(obj_file, meshes, decimal_places=2) should be IO().save_mesh(obj_file, meshes, decimal_places=2)
      
      Reviewed By: bottler
      
      Differential Revision: D39617441
      
      fbshipit-source-id: 4628b7f26f70e38c65f235852b990c8edb0ded23
      6ae6ff9c
    • Jeremy Reizenstein's avatar
      Avoid raysampler dict · 305cf32f
      Jeremy Reizenstein authored
      Summary:
      A significant speedup (e.g. >2% of a forward pass).
      
      Move NDCMultinomialRaysampler parts of AbstractMaskRaySampler to members instead of living in a dict. The dict was hiding them from the nn.Module system so their _xy_grid members were remaining on the CPU. Therefore they were being copied to the GPU in every forward pass.
      
      (We couldn't easily use a ModuleDict here because the enum keys are not strs.)
      
      Reviewed By: shapovalov
      
      Differential Revision: D39668589
      
      fbshipit-source-id: 719b88e4a08fd7263a284e0ab38189e666bd7e3a
      305cf32f
  3. 15 Sep, 2022 1 commit
    • Jeremy Reizenstein's avatar
      small fixes to config · da7fe285
      Jeremy Reizenstein authored
      Summary:
      - indicate location of OmegaConf.structured failures
      - split the data gathering from enable_get_default_args to ease experimenting with it.
      - comment fixes.
      - nicer error when a_class_type has weird type.
      
      Reviewed By: kjchalup
      
      Differential Revision: D39434447
      
      fbshipit-source-id: b80c7941547ca450e848038ef5be95b7ebbe8f3e
      da7fe285
  4. 08 Sep, 2022 2 commits
  5. 07 Sep, 2022 2 commits
    • Jeremy Reizenstein's avatar
      trainer test completion · 34ad77b8
      Jeremy Reizenstein authored
      Summary: allow TESTIT to complete properly
      
      Reviewed By: kjchalup
      
      Differential Revision: D39280546
      
      fbshipit-source-id: 38fe69988a736e32dbe78d1d05e6d8421353854a
      34ad77b8
    • Jeremy Reizenstein's avatar
      hydra fix · 90b758f7
      Jeremy Reizenstein authored
      Summary: Workaround for oddity with new hydra.
      
      Reviewed By: davnov134
      
      Differential Revision: D39280639
      
      fbshipit-source-id: 76e91947f633589945446db93cf2dbc259642f8a
      90b758f7
  6. 06 Sep, 2022 4 commits
  7. 05 Sep, 2022 3 commits
    • Matthias Treder's avatar
      stratified_sampling argument: set default to None (#1324) · 438c194e
      Matthias Treder authored
      Summary:
      The self._stratified_sampling attribute is always overridden unless stratified_sampling is explicitly set to None. However, the desired default behavior is that the value of self._stratified_sampling is used unless the argument stratified_sampling is set to True/False. Changing the default to None achieves this
      
      Pull Request resolved: https://github.com/facebookresearch/pytorch3d/pull/1324
      
      Reviewed By: bottler
      
      Differential Revision: D39259775
      
      Pulled By: davnov134
      
      fbshipit-source-id: e01bb747ac80c812eb27bf22e67f5e14f29acadd
      438c194e
    • Darijan Gudelj's avatar
      stats object counting time wrong · dd58ded7
      Darijan Gudelj authored
      Summary: On each call of the stats.update the object calculates current average iteration time by getting time elapsed from the time_start and then dividing it by the current number of steps. It saves the result to AverageMeter object which when queried returns the average of things saved, so the time is averaged twice which biases it towards the start value (which is often larger).
      
      Reviewed By: kjchalup
      
      Differential Revision: D39206989
      
      fbshipit-source-id: ccab5233d7aaca1ac4fd626fb329b83c7c0d6af9
      dd58ded7
    • Darijan Gudelj's avatar
      raybundle input to ImplicitFunctions -> api unification · 72c3a0eb
      Darijan Gudelj authored
      Summary: Currently some implicit functions in implicitron take a raybundle, others take ray_points_world. raybundle is what they really need. However, the raybundle is going to become a bit more flexible later, as it will contain different numbers of rays for each camera.
      
      Reviewed By: bottler
      
      Differential Revision: D39173751
      
      fbshipit-source-id: ebc038e426d22e831e67a18ba64655d8a61e1eb9
      72c3a0eb
  8. 03 Sep, 2022 1 commit
  9. 02 Sep, 2022 1 commit
  10. 01 Sep, 2022 2 commits
  11. 31 Aug, 2022 6 commits
  12. 30 Aug, 2022 1 commit
    • David Novotny's avatar
      CO3Dv2 trainer configs · 1163eaab
      David Novotny authored
      Summary:
      Adds yaml configs to train selected methods on CO3Dv2.
      
      Few more updates:
      1) moved some fields to base classes so that we can check is_multisequence in experiment.py
      2) skip loading all train cameras for multisequence datasets, without this, co3d-fewview is untrainable
      3) fix bug in json index dataset provider v2
      
      Reviewed By: kjchalup
      
      Differential Revision: D38952755
      
      fbshipit-source-id: 3edac6fc8e20775aa70400bd73a0e6d52b091e0c
      1163eaab
  13. 28 Aug, 2022 2 commits
    • Jiali Duan's avatar
      Benchmark Cameras · 03562d87
      Jiali Duan authored
      Summary: Address comments to add benchmarkings for cameras and the new fisheye cameras. The dependency functions in test_cameras have been updated in Diff 1. The following two snapshots show benchmarking results.
      
      Reviewed By: kjchalup
      
      Differential Revision: D38991914
      
      fbshipit-source-id: 51fe9bb7237543e4ee112c9f5068a4cf12a9d482
      03562d87
    • Jiali Duan's avatar
      Fisheye Camera for PyTorch3D · 2283c292
      Jiali Duan authored
      Summary:
      1. A Fisheye camera model that generalizes pinhole camera by considering distortions (i.e. radial, tangential and thin-prism distortions).
      
      2. Added tests against perspective cameras when distortions are off and Aria data points when distortions are on.
      
      3. Address comments to test unhandled shapes between points and transforms. Added tests for __FIELDS, shape broadcasts, cuda etc.
      
      4. Address earlier comments for code efficiency (e.g., adopted torch.norm; torch.solve for matrix inverse; removed inplace operations; unnecessary clone; expand in place of repeat etc).
      
      Reviewed By: jcjohnson
      
      Differential Revision: D38407094
      
      fbshipit-source-id: a3ab48c85c496ac87af692d5d461bb3fc2a2db13
      2283c292
  14. 26 Aug, 2022 2 commits
    • Darijan Gudelj's avatar
      MultiPassEmissionAbsorptionRenderer · 4711d12a
      Darijan Gudelj authored
      Summary: I think there is a typo here could not find any MultiPassEARenderer just MultiPassEmissionAbsorptionRenderer?
      
      Reviewed By: bottler
      
      Differential Revision: D39056641
      
      fbshipit-source-id: 4dd0b123fc795a0083a957786c032e23dc5abac9
      4711d12a
    • Darijan Gudelj's avatar
      Decoding functions · e7c609f1
      Darijan Gudelj authored
      Summary: Added replacable decoding functions which will be applied after the voxel grid to get color and density
      
      Reviewed By: bottler
      
      Differential Revision: D38829763
      
      fbshipit-source-id: f21ce206c1c19548206ea2ce97d7ebea3de30a23
      e7c609f1
  15. 25 Aug, 2022 1 commit
    • Darijan Gudelj's avatar
      VoxelGridModule · 24f5f4a3
      Darijan Gudelj authored
      Summary: Simple wrapper around voxel grids to make them a module
      
      Reviewed By: bottler
      
      Differential Revision: D38829762
      
      fbshipit-source-id: dfee85088fa3c65e396cc7d3bf7ebaaffaadb646
      24f5f4a3
  16. 23 Aug, 2022 7 commits