1. 13 May, 2022 1 commit
  2. 12 May, 2022 3 commits
    • David Novotny's avatar
      Raysampler as pluggable · e767c4b5
      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
      e767c4b5
    • David Novotny's avatar
      ViewPooler class · 47d06c89
      David Novotny authored
      Summary: Implements a ViewPooler that groups ViewSampler and FeatureAggregator.
      
      Reviewed By: shapovalov
      
      Differential Revision: D35852367
      
      fbshipit-source-id: c1bcaf5a1f826ff94efce53aa5836121ad9c50ec
      47d06c89
    • John Reese's avatar
      formatting changes from black 22.3.0 · bef959c7
      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
      bef959c7
  3. 09 May, 2022 1 commit
  4. 13 Apr, 2022 1 commit
    • Tim Hatch's avatar
      apply import merging for fbcode/vision/fair (2 of 2) · 34bbb3ad
      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
      34bbb3ad
  5. 06 Apr, 2022 1 commit
  6. 31 Mar, 2022 1 commit
  7. 28 Mar, 2022 1 commit
    • Jeremy Reizenstein's avatar
      setup.py for implicitron_trainer · 0c3bed55
      Jeremy Reizenstein authored
      Summary: Enable `pytorch3d_implicitron_runner` executable
      
      Reviewed By: shapovalov
      
      Differential Revision: D34754902
      
      fbshipit-source-id: 213f3e9183e3f7dd7b4df16ad77d95fbc971d625
      0c3bed55
  8. 25 Mar, 2022 1 commit
    • Roman Shapovalov's avatar
      Return a typed structured config from default_args for callables · 645a47d0
      Roman Shapovalov authored
      Summary:
      Before the fix, running get_default_args(C: Callable) returns an unstructured DictConfig which causes Enums to be handled incorrectly. This is a fix.
      
      WIP update: Currently tests still fail whenever a function signature contains an untyped argument: This needs to be somehow fixed.
      
      Reviewed By: bottler
      
      Differential Revision: D34932124
      
      fbshipit-source-id: ecdc45c738633cfea5caa7480ba4f790ece931e8
      645a47d0
  9. 24 Mar, 2022 1 commit
  10. 21 Mar, 2022 1 commit
  11. 14 Feb, 2022 1 commit
    • Jeremy Reizenstein's avatar
      move LinearWithRepeat to pytorch3d · 2a1de3b6
      Jeremy Reizenstein authored
      Summary: Move this simple layer from the NeRF project into pytorch3d.
      
      Reviewed By: shapovalov
      
      Differential Revision: D34126972
      
      fbshipit-source-id: a9c6d6c3c1b662c1b844ea5d1b982007d4df83e6
      2a1de3b6
  12. 24 Jan, 2022 2 commits
    • Jeremy Reizenstein's avatar
      avoid deprecated raysamplers · 67778cae
      Jeremy Reizenstein authored
      Summary: Migrate away from NDCGridRaysampler and GridRaysampler to their more flexible replacements.
      
      Reviewed By: patricklabatut
      
      Differential Revision: D33281584
      
      fbshipit-source-id: 65f8702e700a32d38f7cd6bda3924bb1707a0633
      67778cae
    • Jeremy Reizenstein's avatar
      New raysamplers · 3eb42338
      Jeremy Reizenstein authored
      Summary: New MultinomialRaysampler succeeds GridRaysampler bringing masking and subsampling. Correspondingly, NDCMultinomialRaysampler succeeds NDCGridRaysampler.
      
      Reviewed By: nikhilaravi, shapovalov
      
      Differential Revision: D33256897
      
      fbshipit-source-id: cd80ec6f35b110d1d20a75c62f4e889ba8fa5d45
      3eb42338
  13. 04 Jan, 2022 1 commit
    • Jeremy Reizenstein's avatar
      Update license for company name · 9eeb456e
      Jeremy Reizenstein authored
      Summary: Update all FB license strings to the new format.
      
      Reviewed By: patricklabatut
      
      Differential Revision: D33403538
      
      fbshipit-source-id: 97a4596c5c888f3c54f44456dc07e718a387a02c
      9eeb456e
  14. 21 Dec, 2021 1 commit
    • Nikhila Ravi's avatar
      Update Harmonic embedding in NeRF · 52c71b88
      Nikhila Ravi authored
      Summary: Removed harmonic embedding function from projects/nerf and changed import to be from core pytorch3d.
      
      Reviewed By: patricklabatut
      
      Differential Revision: D33142358
      
      fbshipit-source-id: 3004247d50392dbd04ea72e9cd4bace0dc03606b
      52c71b88
  15. 11 Oct, 2021 1 commit
    • Jeremy Reizenstein's avatar
      remove PyTorch 1.5 builds · 53d99671
      Jeremy Reizenstein authored
      Summary: PyTorch 1.6.0 came out on 28 Jul 2020. Stop builds for 1.5.0 and 1.5.1. Also update the news section of the README for recent releases.
      
      Reviewed By: nikhilaravi
      
      Differential Revision: D31442830
      
      fbshipit-source-id: 20bdd8a07090776d0461240e71c6536d874615f6
      53d99671
  16. 09 Sep, 2021 1 commit
  17. 31 Aug, 2021 2 commits
    • Jeremy Reizenstein's avatar
      (breaking) image_size-agnostic GridRaySampler · 1b8d86a1
      Jeremy Reizenstein authored
      Summary:
      As suggested in #802. By not persisting the _xy_grid buffer, we can allow (in some cases) a model with one image_size to be loaded from a saved model which was trained at a different resolution.
      
      Also avoid persisting _frequencies in HarmonicEmbedding for similar reasons.
      
      BC-break: This will cause load_state_dict, in strict mode, to complain if you try to load an old model with the new code.
      
      Reviewed By: patricklabatut
      
      Differential Revision: D30349234
      
      fbshipit-source-id: d6061d1e51c9f79a78d61a9f732c9a5dfadbbb47
      1b8d86a1
    • Jeremy Reizenstein's avatar
      Use sample_pdf from PyTorch3D in NeRF · 12514463
      Jeremy Reizenstein authored
      Summary:
      Use PyTorch3D's new faster sample_pdf function instead of local Python implementation.
      
      Also clarify deps for the Python implementation.
      
      Reviewed By: gkioxari
      
      Differential Revision: D30512109
      
      fbshipit-source-id: 84cfdc00313fada37a6b29837de96f6a4646434f
      12514463
  18. 16 Aug, 2021 1 commit
    • Jeremy Reizenstein's avatar
      rename master branch to main · b0dd0c88
      Jeremy Reizenstein authored
      Summary: Change doc references to master branch to its new name main.
      
      Reviewed By: nikhilaravi
      
      Differential Revision: D30303018
      
      fbshipit-source-id: cfdbb207dfe3366de7e0ca759ed56f4b8dd894d1
      b0dd0c88
  19. 28 Jul, 2021 1 commit
  20. 26 Jun, 2021 1 commit
    • Patrick Labatut's avatar
      More type annotations · f593bfd3
      Patrick Labatut authored
      Summary: More type annotations: device, shaders, pluggable I/O, stats in NeRF project, cameras, textures, etc...
      
      Reviewed By: nikhilaravi
      
      Differential Revision: D29327396
      
      fbshipit-source-id: cdf0ceaaa010e22423088752688c8dd81f1acc3c
      f593bfd3
  21. 24 Jun, 2021 1 commit
    • Patrick Labatut's avatar
      Annotate dunder functions · 64289a49
      Patrick Labatut authored
      Summary: Annotate the (return type of the) following dunder functions across the codebase: `__init__()`, `__len__()`, `__getitem__()`
      
      Reviewed By: nikhilaravi
      
      Differential Revision: D29001801
      
      fbshipit-source-id: 928d9e1c417ffe01ab8c0445311287786e997c7c
      64289a49
  22. 22 Jun, 2021 1 commit
    • Patrick Labatut's avatar
      License lint codebase · af93f348
      Patrick Labatut authored
      Summary: License lint codebase
      
      Reviewed By: theschnitz
      
      Differential Revision: D29001799
      
      fbshipit-source-id: 5c59869911785b0181b1663bbf430bc8b7fb2909
      af93f348
  23. 08 Jun, 2021 2 commits
    • Jeremy Reizenstein's avatar
      NeRF training: avoid caching unused visualization data. · f00ef667
      Jeremy Reizenstein authored
      Summary: If we are not visualizing the training with visdom, then there are a couple of outputs of the coarse rendering step which are not small and are returned by the renderer but never used. We don't need to bother transferring them to the CPU.
      
      Reviewed By: nikhilaravi
      
      Differential Revision: D28939958
      
      fbshipit-source-id: 7e0d6681d6524f7fb57b6b20164580006120de80
      f00ef667
    • Patrick Labatut's avatar
      Remove explicit inheritance from object · d76c0072
      Patrick Labatut authored
      Summary:
      All classes implicitly inherit from `object` since Python 3, so remove unnecessary explicit inheritance.
      
      From the [official documentation](https://docs.python.org/3/library/functions.html#object):
      
      > `object` is a base for all classes.
      
      Reviewed By: nikhilaravi
      
      Differential Revision: D28942595
      
      fbshipit-source-id: 466c0d19d8a93a6263e7ad734c3e87160cfa6066
      d76c0072
  24. 02 Jun, 2021 3 commits
    • Jeremy Reizenstein's avatar
      cuda streams for color/density in NeRF · 280fed3c
      Jeremy Reizenstein authored
      Summary:
      Inside the implicit function, the color and density calculations are independent and time is saved by putting them on separate streams.
      
      (In fact, colors is slower than densities, and the raymarcher does some calculation with the densities before the colors. So theoretically we could go further and not join the streams together until the colors are actually needed. The code would be more complicated. But the profile suggests that the raymarcher is quick and so this wouldn't be expected to make a big difference.)
      
      In inference, this might increase memory usage, so it isn't an obvious win. That is why I have added a flag.
      
      Reviewed By: nikhilaravi
      
      Differential Revision: D28648549
      
      fbshipit-source-id: c087de80d8ccfce1dad3a13e71df2f305a36952e
      280fed3c
    • Jeremy Reizenstein's avatar
      Let harmonic embedding layer include input (NeRF) · f63e49d2
      Jeremy Reizenstein authored
      Summary: When harmonic embedding is used, we always cat its input onto its output before proceeding. Avoid an intermediate tensor by making the module do that for itself.
      
      Reviewed By: davnov134
      
      Differential Revision: D28185791
      
      fbshipit-source-id: 98d92c94a918dd42e16cdadcaac71dabbc7de5c3
      f63e49d2
    • Jeremy Reizenstein's avatar
      LinearWithRepeat layer for NeRF · ab73f8c3
      Jeremy Reizenstein authored
      Summary:
      Add custom layer to avoid repeating copied data for every ray position.
      
      This should also save time in the backward pass because there are fewer multiplies with the weights.
      
      Reviewed By: theschnitz
      
      Differential Revision: D28382412
      
      fbshipit-source-id: 1ba7356cd8520ebd598568ae503e47d31d3989eb
      ab73f8c3
  25. 13 May, 2021 1 commit
    • Jeremy Reizenstein's avatar
      gitignore for NeRF · c9dea621
      Jeremy Reizenstein authored
      Summary: Add gitignore file to ignore data and checkpoints in the NeRF project.
      
      Reviewed By: nikhilaravi
      
      Differential Revision: D28382413
      
      fbshipit-source-id: 747d69f4353a76a28acde8ba26a896cb2278f976
      c9dea621
  26. 28 Apr, 2021 1 commit
    • Jeremy Reizenstein's avatar
      use no_grad for sample_pdf in NeRF project · 097b0ef2
      Jeremy Reizenstein authored
      Summary: We don't use gradents of sample_pdf. Here we disable gradient calculation around calling it, instead of calling detach later. There's a theoretical speedup, but mainly this enables using sample_pdf implementations which don't support gradients.
      
      Reviewed By: nikhilaravi
      
      Differential Revision: D28057284
      
      fbshipit-source-id: 8a9d5e73f18b34e1e4291028008e02973023638d
      097b0ef2
  27. 14 Apr, 2021 1 commit
  28. 09 Apr, 2021 1 commit
    • Jeremy Reizenstein's avatar
      spelling · 124bb5e3
      Jeremy Reizenstein authored
      Summary: Collection of spelling things, mostly in docs / tutorials.
      
      Reviewed By: gkioxari
      
      Differential Revision: D26101323
      
      fbshipit-source-id: 652f62bc9d71a4ff872efa21141225e43191353a
      124bb5e3
  29. 11 Feb, 2021 1 commit
    • Jeremy Reizenstein's avatar
      test & compilation fixes · 5ac2f421
      Jeremy Reizenstein authored
      Summary:
      Fixes mostly related to the "main" build on circleci.
      -Avoid error to do with tuple copy from initializer_list which is `explicit` on old compiler.
      -Add better reporting to copyright test.
      -Move to PackedTensorAccessor64 from the deprecated PackedTensorAccessor
      -Avoid some warnings about mismatched comparisons.
      
      The "main" build is the only one that runs the test_build stuff. In that area
      -Fix my bad copyright fix D26275931 (https://github.com/facebookresearch/pytorch3d/commit/3463f418b8a3e3c3e6b6a20007b38eb71938ec7f) / 965c9c
      -Add test that all tutorials are valid json.
      
      Reviewed By: nikhilaravi
      
      Differential Revision: D26366466
      
      fbshipit-source-id: c4ab8b7e6647987069f7cb7144aa6ab7c24bcdac
      5ac2f421
  30. 05 Feb, 2021 1 commit
    • Jeremy Reizenstein's avatar
      Missing copyright · 3463f418
      Jeremy Reizenstein authored
      Summary: Fix missing copyright header in __init__.py file.
      
      Reviewed By: davnov134
      
      Differential Revision: D26275931
      
      fbshipit-source-id: 965c9cf17383aa27d35d549754ebd99ae7c25f47
      3463f418
  31. 03 Feb, 2021 1 commit
  32. 02 Feb, 2021 2 commits
    • David Novotny's avatar
      Readme · 51de308b
      David Novotny authored
      Summary: Adds the readme file.
      
      Reviewed By: nikhilaravi
      
      Differential Revision: D25684459
      
      fbshipit-source-id: f1aaa621a2a67c98d5fcfe33fe9bbfea8f95b537
      51de308b
    • David Novotny's avatar
      Testing script · 2628fb56
      David Novotny authored
      Summary: Implements the test script of NeRF.
      
      Reviewed By: nikhilaravi
      
      Differential Revision: D25684450
      
      fbshipit-source-id: 739169d9df706795814912bb9a15e2e65ac92df8
      2628fb56