A library providing foundational algorithms for human kinematic motion and numerical optimization solvers to apply human motion in various applications (core package without Torch C++ extensions)
Project description
Momentum
Momentum provides foundational algorithms for human kinematic motion and numerical optimization solvers to apply human motion in various applications.
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-forge • prefix.dev • PyPI
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:
- 📘 Python Getting Started - Installation, building from source, troubleshooting
- 📗 C++ Getting Started - Full build instructions, FBX support, examples
📖 Documentation
Visit our documentation website for comprehensive guides, examples, and API references:
- 🐍 Python API Reference - Complete Python API documentation
- ⚙️ C++ API Reference - Complete C++ API documentation
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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pymomentum_core-0.1.113.post0-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: pymomentum_core-0.1.113.post0-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 90.6 MB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6892d6ee46d6f907069788bd03aba39d3ba89e6417c7a35839214ab3063f43b8
|
|
| MD5 |
6f287ee3fa5aa829ab903cbb980303b6
|
|
| BLAKE2b-256 |
04208b916a6a18cf03f015cf62a208da0f1fb035ee45834b72418f48df052e53
|
Provenance
The following attestation bundles were made for pymomentum_core-0.1.113.post0-cp313-cp313-win_amd64.whl:
Publisher:
publish_to_pypi.yml on facebookresearch/momentum
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pymomentum_core-0.1.113.post0-cp313-cp313-win_amd64.whl -
Subject digest:
6892d6ee46d6f907069788bd03aba39d3ba89e6417c7a35839214ab3063f43b8 - Sigstore transparency entry: 2105210140
- Sigstore integration time:
-
Permalink:
facebookresearch/momentum@8569ded270d6ab0ffee634166dc3a28be59cadcb -
Branch / Tag:
refs/tags/v0.1.113 - Owner: https://github.com/facebookresearch
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_to_pypi.yml@8569ded270d6ab0ffee634166dc3a28be59cadcb -
Trigger Event:
push
-
Statement type:
File details
Details for the file pymomentum_core-0.1.113.post0-cp313-cp313-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: pymomentum_core-0.1.113.post0-cp313-cp313-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 42.0 MB
- Tags: CPython 3.13, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
54d133b6ed43530879ae134212335fb3ff9403927edb19fdcf5628e80bf53b35
|
|
| MD5 |
ff5fb1766fb9c06edaf1dfa1266192c0
|
|
| BLAKE2b-256 |
a3e823ae4565fc7d9ade4dab39100ff90db5cda89cb597fda6ae613b65978606
|
Provenance
The following attestation bundles were made for pymomentum_core-0.1.113.post0-cp313-cp313-manylinux_2_28_x86_64.whl:
Publisher:
publish_to_pypi.yml on facebookresearch/momentum
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pymomentum_core-0.1.113.post0-cp313-cp313-manylinux_2_28_x86_64.whl -
Subject digest:
54d133b6ed43530879ae134212335fb3ff9403927edb19fdcf5628e80bf53b35 - Sigstore transparency entry: 2105209421
- Sigstore integration time:
-
Permalink:
facebookresearch/momentum@8569ded270d6ab0ffee634166dc3a28be59cadcb -
Branch / Tag:
refs/tags/v0.1.113 - Owner: https://github.com/facebookresearch
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_to_pypi.yml@8569ded270d6ab0ffee634166dc3a28be59cadcb -
Trigger Event:
push
-
Statement type:
File details
Details for the file pymomentum_core-0.1.113.post0-cp313-cp313-macosx_14_0_arm64.whl.
File metadata
- Download URL: pymomentum_core-0.1.113.post0-cp313-cp313-macosx_14_0_arm64.whl
- Upload date:
- Size: 23.4 MB
- Tags: CPython 3.13, macOS 14.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0adc21e69fbf2ad1b8f433fad4b33f8aec8c90ce11dcbef212933f04b8f0da26
|
|
| MD5 |
0a86d7e06ef88ef961c85eda0442c10f
|
|
| BLAKE2b-256 |
67dfc55ae2dab003a071ba2af045ba5fd44633d7dd6cfa9e1a061614b4b0b123
|
Provenance
The following attestation bundles were made for pymomentum_core-0.1.113.post0-cp313-cp313-macosx_14_0_arm64.whl:
Publisher:
publish_to_pypi.yml on facebookresearch/momentum
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pymomentum_core-0.1.113.post0-cp313-cp313-macosx_14_0_arm64.whl -
Subject digest:
0adc21e69fbf2ad1b8f433fad4b33f8aec8c90ce11dcbef212933f04b8f0da26 - Sigstore transparency entry: 2105210370
- Sigstore integration time:
-
Permalink:
facebookresearch/momentum@8569ded270d6ab0ffee634166dc3a28be59cadcb -
Branch / Tag:
refs/tags/v0.1.113 - Owner: https://github.com/facebookresearch
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_to_pypi.yml@8569ded270d6ab0ffee634166dc3a28be59cadcb -
Trigger Event:
push
-
Statement type:
File details
Details for the file pymomentum_core-0.1.113.post0-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: pymomentum_core-0.1.113.post0-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 90.6 MB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7f2a0e83966182d3bfb173a98eb908f6de0901639c75417452f8b96cb08d5101
|
|
| MD5 |
867522bf706c636ef612dbbb308f3a48
|
|
| BLAKE2b-256 |
b3a59ab5bf2343513229bd94f0ad1bb355c9e8d0ffcc5505ff69d8f307af1934
|
Provenance
The following attestation bundles were made for pymomentum_core-0.1.113.post0-cp312-cp312-win_amd64.whl:
Publisher:
publish_to_pypi.yml on facebookresearch/momentum
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pymomentum_core-0.1.113.post0-cp312-cp312-win_amd64.whl -
Subject digest:
7f2a0e83966182d3bfb173a98eb908f6de0901639c75417452f8b96cb08d5101 - Sigstore transparency entry: 2105209589
- Sigstore integration time:
-
Permalink:
facebookresearch/momentum@8569ded270d6ab0ffee634166dc3a28be59cadcb -
Branch / Tag:
refs/tags/v0.1.113 - Owner: https://github.com/facebookresearch
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_to_pypi.yml@8569ded270d6ab0ffee634166dc3a28be59cadcb -
Trigger Event:
push
-
Statement type:
File details
Details for the file pymomentum_core-0.1.113.post0-cp312-cp312-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: pymomentum_core-0.1.113.post0-cp312-cp312-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 42.0 MB
- Tags: CPython 3.12, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
484a677931b9c9983588da77349f58c7baf3993b207bdb4f80e85fd411757ad6
|
|
| MD5 |
e642797004c201442b047a567d1f7df8
|
|
| BLAKE2b-256 |
2caaaa8b5555bd10cae04610cf77200f83f08306ec7585d8b63e54c9624a076d
|
Provenance
The following attestation bundles were made for pymomentum_core-0.1.113.post0-cp312-cp312-manylinux_2_28_x86_64.whl:
Publisher:
publish_to_pypi.yml on facebookresearch/momentum
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pymomentum_core-0.1.113.post0-cp312-cp312-manylinux_2_28_x86_64.whl -
Subject digest:
484a677931b9c9983588da77349f58c7baf3993b207bdb4f80e85fd411757ad6 - Sigstore transparency entry: 2105210518
- Sigstore integration time:
-
Permalink:
facebookresearch/momentum@8569ded270d6ab0ffee634166dc3a28be59cadcb -
Branch / Tag:
refs/tags/v0.1.113 - Owner: https://github.com/facebookresearch
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_to_pypi.yml@8569ded270d6ab0ffee634166dc3a28be59cadcb -
Trigger Event:
push
-
Statement type:
File details
Details for the file pymomentum_core-0.1.113.post0-cp312-cp312-macosx_14_0_arm64.whl.
File metadata
- Download URL: pymomentum_core-0.1.113.post0-cp312-cp312-macosx_14_0_arm64.whl
- Upload date:
- Size: 23.4 MB
- Tags: CPython 3.12, macOS 14.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7594884ab19583bbec2398d0f58a1bff47022e84a8b0809c7250aef61874a6c5
|
|
| MD5 |
7402f11f93f545ec10bc8819dd2f9789
|
|
| BLAKE2b-256 |
216dfa9888e72bc4af20b634f2ee36ef8085a6702b58a58197c2370f5ebccd3c
|
Provenance
The following attestation bundles were made for pymomentum_core-0.1.113.post0-cp312-cp312-macosx_14_0_arm64.whl:
Publisher:
publish_to_pypi.yml on facebookresearch/momentum
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pymomentum_core-0.1.113.post0-cp312-cp312-macosx_14_0_arm64.whl -
Subject digest:
7594884ab19583bbec2398d0f58a1bff47022e84a8b0809c7250aef61874a6c5 - Sigstore transparency entry: 2105209893
- Sigstore integration time:
-
Permalink:
facebookresearch/momentum@8569ded270d6ab0ffee634166dc3a28be59cadcb -
Branch / Tag:
refs/tags/v0.1.113 - Owner: https://github.com/facebookresearch
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_to_pypi.yml@8569ded270d6ab0ffee634166dc3a28be59cadcb -
Trigger Event:
push
-
Statement type: