Skip to main content

PyTorch3D is FAIR's library of reusable components for deep Learning with 3D data.

Project description

CircleCI Anaconda-Server Badge

Introduction

PyTorch3D provides efficient, reusable components for 3D Computer Vision research with PyTorch.

Key features include:

  • Data structure for storing and manipulating triangle meshes
  • Efficient operations on triangle meshes (projective transformations, graph convolution, sampling, loss functions)
  • A differentiable mesh renderer
  • Implicitron, see its README, a framework for new-view synthesis via implicit representations. (blog post)

PyTorch3D is designed to integrate smoothly with deep learning methods for predicting and manipulating 3D data. For this reason, all operators in PyTorch3D:

  • Are implemented using PyTorch tensors
  • Can handle minibatches of hetereogenous data
  • Can be differentiated
  • Can utilize GPUs for acceleration

Within FAIR, PyTorch3D has been used to power research projects such as Mesh R-CNN.

See our blog post to see more demos and learn about PyTorch3D.

Installation

For detailed instructions refer to INSTALL.md.

License

PyTorch3D is released under the BSD License.

Tutorials

Get started with PyTorch3D by trying one of the tutorial notebooks.

Deform a sphere mesh to dolphin Bundle adjustment
Render textured meshes Camera position optimization
Render textured pointclouds Fit a mesh with texture
Render DensePose data Load & Render ShapeNet data
Fit Textured Volume Fit A Simple Neural Radiance Field
Fit Textured Volume in Implicitron Implicitron Config System

Documentation

Learn more about the API by reading the PyTorch3D documentation.

We also have deep dive notes on several API components:

Overview Video

We have created a short (~14 min) video tutorial providing an overview of the PyTorch3D codebase including several code examples. Click on the image below to watch the video on YouTube:

Development

We welcome new contributions to PyTorch3D and we will be actively maintaining this library! Please refer to CONTRIBUTING.md for full instructions on how to run the code, tests and linter, and submit your pull requests.

Development and Compatibility

  • main branch: actively developed, without any guarantee, Anything can be broken at any time
    • REMARK: this includes nightly builds which are built from main
    • HINT: the commit history can help locate regressions or changes
  • backward-compatibility between releases: no guarantee. Best efforts to communicate breaking changes and facilitate migration of code or data (incl. models).

Contributors

PyTorch3D is written and maintained by the Facebook AI Research Computer Vision Team.

In alphabetical order:

  • Amitav Baruah
  • Steve Branson
  • Krzysztof Chalupka
  • Jiali Duan
  • Luya Gao
  • Georgia Gkioxari
  • Taylor Gordon
  • Justin Johnson
  • Patrick Labatut
  • Christoph Lassner
  • Wan-Yen Lo
  • David Novotny
  • Nikhila Ravi
  • Jeremy Reizenstein
  • Dave Schnizlein
  • Roman Shapovalov
  • Olivia Wiles

Citation

If you find PyTorch3D useful in your research, please cite our tech report:

@article{ravi2020pytorch3d,
    author = {Nikhila Ravi and Jeremy Reizenstein and David Novotny and Taylor Gordon
                  and Wan-Yen Lo and Justin Johnson and Georgia Gkioxari},
    title = {Accelerating 3D Deep Learning with PyTorch3D},
    journal = {arXiv:2007.08501},
    year = {2020},
}

If you are using the pulsar backend for sphere-rendering (the PulsarPointRenderer or pytorch3d.renderer.points.pulsar.Renderer), please cite the tech report:

@article{lassner2020pulsar,
    author = {Christoph Lassner and Michael Zollh\"ofer},
    title = {Pulsar: Efficient Sphere-based Neural Rendering},
    journal = {arXiv:2004.07484},
    year = {2020},
}

News

Please see below for a timeline of the codebase updates in reverse chronological order. We are sharing updates on the releases as well as research projects which are built with PyTorch3D. The changelogs for the releases are available under Releases, and the builds can be installed using conda as per the instructions in INSTALL.md.

[Oct 31st 2023]: PyTorch3D v0.7.5 released.

[May 10th 2023]: PyTorch3D v0.7.4 released.

[Apr 5th 2023]: PyTorch3D v0.7.3 released.

[Dec 19th 2022]: PyTorch3D v0.7.2 released.

[Oct 23rd 2022]: PyTorch3D v0.7.1 released.

[Aug 10th 2022]: PyTorch3D v0.7.0 released with Implicitron and MeshRasterizerOpenGL.

[Apr 28th 2022]: PyTorch3D v0.6.2 released

[Dec 16th 2021]: PyTorch3D v0.6.1 released

[Oct 6th 2021]: PyTorch3D v0.6.0 released

[Aug 5th 2021]: PyTorch3D v0.5.0 released

[Feb 9th 2021]: PyTorch3D v0.4.0 released with support for implicit functions, volume rendering and a reimplementation of NeRF.

[November 2nd 2020]: PyTorch3D v0.3.0 released, integrating the pulsar backend.

[Aug 28th 2020]: PyTorch3D v0.2.5 released

[July 17th 2020]: PyTorch3D tech report published on ArXiv: https://arxiv.org/abs/2007.08501

[April 24th 2020]: PyTorch3D v0.2.0 released

[March 25th 2020]: SynSin codebase released using PyTorch3D: https://github.com/facebookresearch/synsin

[March 8th 2020]: PyTorch3D v0.1.1 bug fix release

[Jan 23rd 2020]: PyTorch3D v0.1.0 released. Mesh R-CNN codebase released: https://github.com/facebookresearch/meshrcnn

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

easypytorch3d-0.7.9.tar.gz (748.8 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

easypytorch3d-0.7.9-cp314-cp314-manylinux_2_28_x86_64.whl (70.3 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64

easypytorch3d-0.7.9-cp314-cp314-manylinux_2_28_aarch64.whl (70.0 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ ARM64

easypytorch3d-0.7.9-cp314-cp314-macosx_11_0_arm64.whl (937.4 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

easypytorch3d-0.7.9-cp313-cp313-manylinux_2_28_x86_64.whl (70.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

easypytorch3d-0.7.9-cp313-cp313-manylinux_2_28_aarch64.whl (70.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

easypytorch3d-0.7.9-cp313-cp313-macosx_11_0_arm64.whl (938.2 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

easypytorch3d-0.7.9-cp312-cp312-manylinux_2_28_x86_64.whl (70.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

easypytorch3d-0.7.9-cp312-cp312-manylinux_2_28_aarch64.whl (69.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

easypytorch3d-0.7.9-cp312-cp312-macosx_11_0_arm64.whl (938.1 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

easypytorch3d-0.7.9-cp311-cp311-manylinux_2_28_x86_64.whl (70.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

easypytorch3d-0.7.9-cp311-cp311-manylinux_2_28_aarch64.whl (69.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

easypytorch3d-0.7.9-cp311-cp311-macosx_11_0_arm64.whl (936.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

easypytorch3d-0.7.9-cp310-cp310-manylinux_2_28_x86_64.whl (70.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

easypytorch3d-0.7.9-cp310-cp310-manylinux_2_28_aarch64.whl (69.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

easypytorch3d-0.7.9-cp310-cp310-macosx_11_0_arm64.whl (934.4 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file easypytorch3d-0.7.9.tar.gz.

File metadata

  • Download URL: easypytorch3d-0.7.9.tar.gz
  • Upload date:
  • Size: 748.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for easypytorch3d-0.7.9.tar.gz
Algorithm Hash digest
SHA256 7d24de34ab147a513a12fc596977bea0b44fd66857a0cdb1f1bab72666680b8a
MD5 f2a8ee082204225485caa753854e702b
BLAKE2b-256 6a0ccd330dba4849f479fdc6380eae485305176774f769af7e20b47b2cf51e91

See more details on using hashes here.

Provenance

The following attestation bundles were made for easypytorch3d-0.7.9.tar.gz:

Publisher: wheels.yml on johnnynunez/pytorch3d

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file easypytorch3d-0.7.9-cp314-cp314-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for easypytorch3d-0.7.9-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1114a66a95c5f7ab40fd3a335d34346fafdcb997591e7f0c3433771b50e2c09b
MD5 4682d0bfd9493a493df1c0cebcdb7180
BLAKE2b-256 a5b592fcf7f2b8f71b7b1b2da7ebdcdfc1c4d590eafa40930df73187d29c4e8c

See more details on using hashes here.

Provenance

The following attestation bundles were made for easypytorch3d-0.7.9-cp314-cp314-manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on johnnynunez/pytorch3d

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file easypytorch3d-0.7.9-cp314-cp314-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for easypytorch3d-0.7.9-cp314-cp314-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f29bcd6fe44ce8f2ed2fe035e7a92a199143e685413c2d250878efed35037450
MD5 61bd238796daa886e048ee9c1da62f77
BLAKE2b-256 9fffe136209b4a7880398e73fe5445958bf7c1fab1088366d3e4e987c9e4423a

See more details on using hashes here.

Provenance

The following attestation bundles were made for easypytorch3d-0.7.9-cp314-cp314-manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on johnnynunez/pytorch3d

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file easypytorch3d-0.7.9-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for easypytorch3d-0.7.9-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1a8ead7d1325922068ed0dcadb441fc5d07e5ab701f52d1dee9c6f125cf7b4b7
MD5 c439366981a90e6d5bba19edcd09e034
BLAKE2b-256 0661c956b3e57a6819199dc9a89ed6f865de61826f168cb86c35602735a41584

See more details on using hashes here.

Provenance

The following attestation bundles were made for easypytorch3d-0.7.9-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: wheels.yml on johnnynunez/pytorch3d

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file easypytorch3d-0.7.9-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for easypytorch3d-0.7.9-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 47c293deff77d76cdc858b4c90b9a6c8bcacd07d3b8ea2373ae46835b40492dc
MD5 f489ad15a31a7180599d3b81262dfc96
BLAKE2b-256 4869d3a878b66342cc65fff0c1da75bddb77063a2ec62c19130059e29c7df575

See more details on using hashes here.

Provenance

The following attestation bundles were made for easypytorch3d-0.7.9-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on johnnynunez/pytorch3d

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file easypytorch3d-0.7.9-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for easypytorch3d-0.7.9-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 861ecef5155cb09f734b6819f7d286f879d87ba347a390337189ab6c2e172f3c
MD5 2378815a7d29eae9c956d20c7ddccc37
BLAKE2b-256 38a37598d516c9de7e7a53fa4a2baf810dc59abed2830ce67b072658e11a311e

See more details on using hashes here.

Provenance

The following attestation bundles were made for easypytorch3d-0.7.9-cp313-cp313-manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on johnnynunez/pytorch3d

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file easypytorch3d-0.7.9-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for easypytorch3d-0.7.9-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 37cebe739a56ff9441abea3edda3ed6dcc5d9d0fea1a2d60def3ca5d8e51d897
MD5 51e08964f03c9d7ebee094cf692404da
BLAKE2b-256 3996390533ad70c8f9b41b497990b3bb2c6a6a448e82aae7b0557275dece383f

See more details on using hashes here.

Provenance

The following attestation bundles were made for easypytorch3d-0.7.9-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: wheels.yml on johnnynunez/pytorch3d

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file easypytorch3d-0.7.9-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for easypytorch3d-0.7.9-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3f4bd76ddab71747752c0ba1f895387657c295f90d48e765e34eedc4aa064623
MD5 290457afb024a63d0bf752467b768a07
BLAKE2b-256 f94414d18fe8b054274db99db665b509fa17cc773ecea8e5a14ef41e059469d2

See more details on using hashes here.

Provenance

The following attestation bundles were made for easypytorch3d-0.7.9-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on johnnynunez/pytorch3d

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file easypytorch3d-0.7.9-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for easypytorch3d-0.7.9-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9c8c2cf3ce3186f158ccc14a1929c1f1aa414faa55f359007bc5dd344d11c04c
MD5 1149f515052fcf90bf2fafb227037fb2
BLAKE2b-256 00c820dbe6a6627d16a831866992997e7737c6072521d303a2b567767cb086b4

See more details on using hashes here.

Provenance

The following attestation bundles were made for easypytorch3d-0.7.9-cp312-cp312-manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on johnnynunez/pytorch3d

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file easypytorch3d-0.7.9-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for easypytorch3d-0.7.9-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3d4037fce7d7322ce3da8266f6d5edce4e6d0d7e29fe38e9b263da8271855d35
MD5 50a12bdd26be656f50b50bb84e05a376
BLAKE2b-256 187cad2ad63481aebff519c69a54339216ce8508ef18b6f4f106270ca0502eff

See more details on using hashes here.

Provenance

The following attestation bundles were made for easypytorch3d-0.7.9-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: wheels.yml on johnnynunez/pytorch3d

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file easypytorch3d-0.7.9-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for easypytorch3d-0.7.9-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 27714df322af2148c40adc6d3a19b8d4b5a8fbc5605d057103f47c43a6d5130c
MD5 88a02bfd06c05cdfb09af631b937ef63
BLAKE2b-256 2f8e3e39a4321321cb5e59a270a665aacaac680073d50ff44d71428bde590a48

See more details on using hashes here.

Provenance

The following attestation bundles were made for easypytorch3d-0.7.9-cp311-cp311-manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on johnnynunez/pytorch3d

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file easypytorch3d-0.7.9-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for easypytorch3d-0.7.9-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 dc93d6abb63eba80c261970f241c02ce73ae254732bab3540eab63ebf56278e7
MD5 a4f890ebf33f3e0a77e935ed81eb9c8b
BLAKE2b-256 630129022e820cdaf50e3f20665697add85fe104c0f54285770a6bde3697580f

See more details on using hashes here.

Provenance

The following attestation bundles were made for easypytorch3d-0.7.9-cp311-cp311-manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on johnnynunez/pytorch3d

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file easypytorch3d-0.7.9-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for easypytorch3d-0.7.9-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5e47aa758c3a882ce4d96acc9a1c4a9f2a4ef70a4f7ad8a8e6644bb9640a572b
MD5 ebf1e89142657517a120fa40f9f537cf
BLAKE2b-256 cad18f075cd11edcde3bc1dd1d5eda2fa1cc5681d63b86c472a14a50c7491840

See more details on using hashes here.

Provenance

The following attestation bundles were made for easypytorch3d-0.7.9-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: wheels.yml on johnnynunez/pytorch3d

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file easypytorch3d-0.7.9-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for easypytorch3d-0.7.9-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e8ffa8c698f79a8c2f1dd53109fbfcfa7db2b39b2f05532a69f841012047ed0d
MD5 28cfa4dec0a492b1d2e0a95813ef5883
BLAKE2b-256 ed1ad522fa60b88888f03ea0d547c485381f6ee073c54c89ba9952ea9cfb92d7

See more details on using hashes here.

Provenance

The following attestation bundles were made for easypytorch3d-0.7.9-cp310-cp310-manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on johnnynunez/pytorch3d

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file easypytorch3d-0.7.9-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for easypytorch3d-0.7.9-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 96a3e7bef41ba4b33bb188da223e26f1194403d2f4902f05e85e1fa77d78cb73
MD5 b6edecaabd17805d46af6ca12ba5898d
BLAKE2b-256 2a34df190bb781d23097c344d57ede09e2e2e9e2e82e3bdc797aeda111ea3c22

See more details on using hashes here.

Provenance

The following attestation bundles were made for easypytorch3d-0.7.9-cp310-cp310-manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on johnnynunez/pytorch3d

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file easypytorch3d-0.7.9-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for easypytorch3d-0.7.9-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bf8bda567799d6ccc8ef0813bf2128ec6e1ae9d9e15a7b427140df61cf59305e
MD5 b0d53af5e4e3c5b154864629d5cc2abf
BLAKE2b-256 ffd68374ff56474cd25ac7c237715c49fe629fdde37326bbb7baa4f08ba68a88

See more details on using hashes here.

Provenance

The following attestation bundles were made for easypytorch3d-0.7.9-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: wheels.yml on johnnynunez/pytorch3d

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page