Skip to main content

Momentum

CI Windows CI macOS CI Ubuntu Publish Website PyPI Wheels

Momentum provides foundational algorithms for human kinematic motion and numerical optimization solvers to apply human motion in various applications.

Forward and Inverse Kinematics with Interpretable Parameterization RGBD Body Tracking Solver Monocular RGB Body Tracking Solver

Quick Start

Installation

Pre-built binaries are available for Windows, macOS, and Linux:

Install full conda/pixi packages -- recommended

# Install full python package from pixi, including modules with cpp torch dependencies
pixi add pymomentum

# Install full python package from conda, including modules with cpp torch dependencies
conda install -c conda-forge pymomentum

# Install cpp momentum package from pixi, including modules with cpp torch dependencies
pixi add momentum-cpp

# Install cpp momentum package from conda, including modules with cpp torch dependencies
conda install -c conda-forge momentum-cpp

Install PyPI wheels -- these are experimental ⚠️

# Install core package with NumPy/SciPy and PyTorch dependencies, but no Torch C++ extension modules
pip install pymomentum-core

# Install core package with optional visualization helpers
pip install "pymomentum-core[viser,rerun]"

# Install full package including diff_geometry and differentiable solver modules, linked against CPU PyTorch
pip install pymomentum-cpu

# Install full package including diff_geometry and differentiable solver modules, linked against CUDA PyTorch
pip install "torch>=2.8,<2.9" --index-url https://download.pytorch.org/whl/cu129
pip install pymomentum-gpu

Conda/Pixi currently publish the full PyMomentum package. Use the PyPI core package (since release v0.1.111) when you need a Python install without the Torch C++ extension dependency.

Install exactly one PyPI package for a given environment. The pymomentum-core package includes the NumPy/SciPy modules geometry, solver2, marker_tracking, axel, camera, and renderer, plus the torch-backed Python helper modules torch. The pymomentum-cpu and pymomentum-gpu packages provide differentiable optimization modules diff_geometry and solver, but they must match a supported PyTorch C++ ABI and therefore have stricter PyTorch version constraints.

⚠️ PyPI support is experimental. For the most stable experience, we recommend using Conda or Pixi.

📦 Browse packages: conda-forgeprefix.devPyPI

Building from Source

git clone https://github.com/facebookresearch/momentum
cd momentum
pixi run build      # Builds C++ library and Python bindings
pixi run test       # Runs tests
pixi run hello_world  # Runs example

For detailed instructions, see the comprehensive guides on our website:

📖 Documentation

Visit our documentation website for comprehensive guides, examples, and API references:

Contributing

Check our contributing guide to learn about how to contribute to the project.

License

Momentum is licensed under the MIT License. A copy of the license can be found here.

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

pymomentum_gpu-0.1.114.post0-cp313-cp313-win_amd64.whl (92.3 MB view details)

Uploaded CPython 3.13Windows x86-64

pymomentum_gpu-0.1.114.post0-cp313-cp313-manylinux_2_28_x86_64.whl (43.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

pymomentum_gpu-0.1.114.post0-cp312-cp312-win_amd64.whl (92.3 MB view details)

Uploaded CPython 3.12Windows x86-64

pymomentum_gpu-0.1.114.post0-cp312-cp312-manylinux_2_28_x86_64.whl (43.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

File details

Details for the file pymomentum_gpu-0.1.114.post0-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for pymomentum_gpu-0.1.114.post0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 e71aae243bd969abd1fe7f4849b433697cefa71f0e8cffefca3a302c2831921b
MD5 f3ac9e7422da17ac47fa9f4551be0cb8
BLAKE2b-256 e7368bfb71a80896e8921de3e2de3b8a6542dfbca00038a48cb09be21988261c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymomentum_gpu-0.1.114.post0-cp313-cp313-win_amd64.whl:

Publisher: publish_to_pypi.yml on facebookresearch/momentum

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

File details

Details for the file pymomentum_gpu-0.1.114.post0-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pymomentum_gpu-0.1.114.post0-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 eb90c7e32ad5228d50a70268d653777ff807af29dbbf0c1f2bd08b4784b7639f
MD5 19d45a02bc4403ed35395f9dff53f78f
BLAKE2b-256 191cd9f774e076b97253b6263f106430ff3817164023ac1f606b26b29fd1e18f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymomentum_gpu-0.1.114.post0-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: publish_to_pypi.yml on facebookresearch/momentum

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

File details

Details for the file pymomentum_gpu-0.1.114.post0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pymomentum_gpu-0.1.114.post0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 9880bfb15099d7005008dc55bef016a09d32ba00e51f25ff0c7c846a7401b599
MD5 9f8930175c2b7ac5af218214b28b2d51
BLAKE2b-256 c47ac75592d13c23ee2933070ff81a02830398fa36dfe877cf1982f9c02f76ca

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymomentum_gpu-0.1.114.post0-cp312-cp312-win_amd64.whl:

Publisher: publish_to_pypi.yml on facebookresearch/momentum

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

File details

Details for the file pymomentum_gpu-0.1.114.post0-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pymomentum_gpu-0.1.114.post0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 92a323b15cc19abbf58fd0d49a0f4aa9e7433aafd5131f9b81a6c4856f96dbc8
MD5 a1c91d430483c7b523607e9c7ea36a7b
BLAKE2b-256 715b82dd3f0700caaab83db2997f6a7d9534dbbc200162014825639f36a5e309

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymomentum_gpu-0.1.114.post0-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: publish_to_pypi.yml on facebookresearch/momentum

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