Skip to main content

Moveck Bridge is the new Biomechanical ToolKit for Python3 with an improved API identical to the original one proposed for Matlab.

Project description

Moveck Bridge

Bridge proposes to reproduce the API of the Biomechanical-ToolKit (BTK) project as defined in its Matlab bindings and expose it to other programming languages like Python 3.

Releases

The latest releases are available on the GitHub website. You can find them on the Releases page.

Usage/Examples

Python

Verification

[!NOTE]
The first time you import the package, it may take a few seconds to load it. This is because the Python interpreter compiles it to bytecode first.

To test the success of the installation, you can evaluate the function btkGetVersion() into a Python interpreter. The result will be a string with the version of the package (e.g., 2024.0.0).

  • One way can be to run the following script python -c "from moveck_bridge_btk import btkGetVersion; print(btkGetVersion())".

  • Another way can be through an interactive console.

Features

Additions and improvements

  • The C3D reader was improved to get Rotation data type (Markerless!) with two new functions btkGetRotation and btkGetRotations.
  • Fix UTF-8 filename issues.
  • On a total of 111 functions listed in the original API, less than 10 are not planned to be implemented. Still, if this is a major issue, we will find a way to work on them.

Current Limitations

By design, some of the original functions are not yet supported. We would like to discuss with the community what should be done. You can open a Discussion for that and explain.

  • The functions related to analysis parameters are not yet supported as this information is currently removed from the official documentation of the C3D file format. We want to discuss with the community to determine the needs for those functions (btkAppendAnalysisParameter, btkClearAnalysis, btkGetAnalysis, btkRemoveAnalysisParameter).
  • Several functions related to the access and modification of events are not implemented because they were too close to the internal C3D structure (btkGetEventsValues, btkSetEventLabel, btkSetEventSubject, btkSetEventTime).
  • The function btkRemoveEvent is not yet implemented.
  • btkCloneAcquisition and btkCropAcquisition are not supported. There is no plan to implement them as we did not receive any feedback on their current usage.
  • btkEmulateC3Dserver is not available because it was a migration function for c3dserver’s users. Because c3dserver is not supported anymore. This function was not planned to be implemented.
  • btkSetMetaDataLabel is not yet implemented but is planned for version 2025.2.0.
  • btkTransformTDFToViconC3DFile is not implemented as we did not receive any feedback on its usage.

Breaking Changes

During the implementation of the functions and the porting to Python 3, several questions were asked about the way people used the original API and if all the functions should be implemented as-is. Feel free to open a Discussion if you think we did some wrong choices or you want improvements.

  • The access and modification for residuals' points is not supported. Instead, invalid data is set to NaN (Not a Number) instead of 0 directly in points' values. The functions btkGetMarkersResiduals, btkSetMarkersResiduals, btkGetPointsResiduals, btkSetPointResiduals, and btkSetPointsResiduals are not implemented. The parameters (inputs and outputs) of the functions btkAppendPoint, btkGetMarkers, btkGetPoint, and btkGetPoints were modified in consequence.
  • Metadata description is not supported as well as the lock/unlock feature. Thus, the functions btkSetMetaDataDescription and btkSetMetaDataUnlock are not implemented.
  • All variants of the functions with variadic arguments related to metadata (btkFindMetaData, btkGetMetaData, btkRemoveMetaData, btkSetMetaData, btkSetMetaDataDimensions, btkSetMetaDataFormat) are not implemented. Those variants were not used as the internal storage of the C3D format is only on two levels (group and parameters).

Documentation

API Documentation

[!NOTE]
This is a work-in-progress online documentation. We are working on another website which will contain more examples and adapted to work on mobile devices and tablets.

You can get access to the first draft of our online documentation for the Bridge API.

Contributing

Contributions are always welcome!

The motivation behind the original project Biomechanical ToolKit was to help the motion analysis community to have an easy way to work together through various and mixed data coming from different acquisition systems. The benefit was, and is still, for lots of users, to create multicentric research, work together on raw data instead of thinking how to aggregate their data. Arnaud Barré, author of the Biomechanical ToolKit project.

Still baked by Arnaud, through Moveck Bridge, this original motivation is still here. The team behind Moveck Bridge proposes to the community to centralize some of their discussions and issues in this repository. This will help to design new features together and help the community.

See Contributing.md for ways to get started.

Support

You can take a look into our contribution Contributing.md guide for ways to get started.

Issues

You can use the Issues page to report a crash, an unexpected behaviour or any improvement requests.

Discussions

In case you have questions, you want more details on the documentation API or more examples, you can use the Discussions page.

Related

Here are some related projects

Biomechanical ToolKit: The original project which is no longer maintained.

License

See the License.txt file available in the repository for more information.

Project details


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.

moveck_bridge_btk-2025.2.0-cp313-cp313-win_amd64.whl (3.8 MB view details)

Uploaded CPython 3.13Windows x86-64

moveck_bridge_btk-2025.2.0-cp313-cp313-macosx_13_0_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.13macOS 13.0+ x86-64

moveck_bridge_btk-2025.2.0-cp313-cp313-macosx_13_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

moveck_bridge_btk-2025.2.0-cp312-cp312-win_amd64.whl (3.8 MB view details)

Uploaded CPython 3.12Windows x86-64

moveck_bridge_btk-2025.2.0-cp312-cp312-macosx_13_0_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.12macOS 13.0+ x86-64

moveck_bridge_btk-2025.2.0-cp312-cp312-macosx_13_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

moveck_bridge_btk-2025.2.0-cp311-cp311-win_amd64.whl (3.8 MB view details)

Uploaded CPython 3.11Windows x86-64

moveck_bridge_btk-2025.2.0-cp311-cp311-macosx_13_0_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

moveck_bridge_btk-2025.2.0-cp311-cp311-macosx_13_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

moveck_bridge_btk-2025.2.0-cp310-cp310-win_amd64.whl (3.8 MB view details)

Uploaded CPython 3.10Windows x86-64

moveck_bridge_btk-2025.2.0-cp310-cp310-macosx_13_0_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.10macOS 13.0+ x86-64

moveck_bridge_btk-2025.2.0-cp310-cp310-macosx_13_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.10macOS 13.0+ ARM64

moveck_bridge_btk-2025.2.0-cp39-cp39-win_amd64.whl (3.8 MB view details)

Uploaded CPython 3.9Windows x86-64

moveck_bridge_btk-2025.2.0-cp39-cp39-macosx_13_0_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.9macOS 13.0+ x86-64

moveck_bridge_btk-2025.2.0-cp39-cp39-macosx_13_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.9macOS 13.0+ ARM64

File details

Details for the file moveck_bridge_btk-2025.2.0-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.2.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 bc2a6a29ada3fbc7220dbc3e9b0e24dc4c9866ebddc453e6f4d380521b154a29
MD5 4d9473db594c63eadd05554150940c14
BLAKE2b-256 d8289b30724a4492df30fc8413149dcc5fb7a05ce64b24c42253e43a3fddeec0

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.2.0-cp313-cp313-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.2.0-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 81ac3ff67c7faa169c88ca4964f56c77e2adca68cfa589479c73674a71ee3b98
MD5 dbbe22d297946037860602c47074f9cd
BLAKE2b-256 e1e35202d2497b279d8b0a873d148deeb8e40ff46a8af510b1d2365982bdb5ec

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.2.0-cp313-cp313-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.2.0-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 33d0de487cb32471201c4ae8ca526fa127272252fe3847fa82db4963634abd5b
MD5 b1b2672703966225b7f38b36eb29b19e
BLAKE2b-256 5a56284b1bd52150e0153f4f3ff83a51470f2957346c6da0e7789c7f59a0f480

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.2.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.2.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 cdf3e7fd1f22f35170c464f213be27a55e4ae4000a27539fa5c1e3b2c299608e
MD5 2a338307e9b6d35eb09449233ced1d3f
BLAKE2b-256 a363c6454e24a6023eb782587457e1259a4affa0faf30db6088da4a3a89e4669

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.2.0-cp312-cp312-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.2.0-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 5d765b0a84fa500371573952a1f5475afc8bf45216e4e7f28e7e993f3e633f60
MD5 177d0312b18b030f3ca03431a8bb402f
BLAKE2b-256 715a1d71c35220595a4204f68249c3226e86569867c6acb4e4ee20496d56ccef

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.2.0-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.2.0-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 8332442f9b9a5c70bcd079d140bbc7cd601ebdb1e40b046ad07f340be98ede04
MD5 588360a0d5c7d226bcb1b338fd789fb5
BLAKE2b-256 c5f6be4cd74efaea517f6075f56beaa919a3e07a9c0571b50dd7be46a30eef47

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.2.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.2.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 27c6261d140e76f790f9c56e703fbca50885162fbb2f43d2811c95389ecd583b
MD5 4889625b720c69778432ca8a1cfd865d
BLAKE2b-256 33b5c25acb187776800a17b598b9329abe7b6d0e399cd684bb52163ed6d370fe

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.2.0-cp311-cp311-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.2.0-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 5d165e9db59f65dfec542ad4bfc4baa8a3178607ce3f7844ed4c58d735e3e802
MD5 da9e8b3f323eeda3c9a4d9519b6c7e73
BLAKE2b-256 55ebd8032f922256fb0cc80eb97f6156b89b2bd4d4c0ede4f5a0fbd91b3141d9

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.2.0-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.2.0-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 cbf9f64e98dd4e6093404d80998f14305c4bb1ebaaee9388fd174fa66d255b26
MD5 ee2de0f13c11ce90918c57b1e32c3355
BLAKE2b-256 17902439febe94f598e5a06dff2729ccfe3bd9f89b35dc473783c11918cff39f

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.2.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.2.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 10c6212d541081fc7032e19405155a19be02089faf6d20858c922485a2207473
MD5 b0fd4b65f2bffb48c37fe3bc39a88e56
BLAKE2b-256 30c666d95d270c08e3a4012b636fcda4ecef2392a747e9c438869195068276e1

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.2.0-cp310-cp310-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.2.0-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 bda054249b9dbac75c8482096b140b2a6a547b0aee246d2eb0c76bd4bbccddc9
MD5 47a6c7868c15c0e460650af0593c37f3
BLAKE2b-256 5f37204c7fcbe4f252c9c4d3d91a3f0cdfbfdac82534dba6f1fc831ed9b8e65f

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.2.0-cp310-cp310-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.2.0-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 0a568f240dcbecc919ff07bcb12d25f203171ea4a9bbb82aec18eb87fd1363b6
MD5 976ca1e846e4191b93792ad7c6e3ade1
BLAKE2b-256 ed830771f741ececd648acf7e6bb0ca166768a9a426f1399ca98822922f2b59f

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.2.0-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.2.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 fa360023d9c7e115b72dabe05c2c115f152ed0b6c3a72b0137c75e55b43fd2a1
MD5 05fdc9f5b4f0cc5b643f9aa29cd8df9b
BLAKE2b-256 aa4ee3a3d133ffcfad7b224df56f2eb3d5271fb2fa41d8d6db5f97439ac92c83

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.2.0-cp39-cp39-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.2.0-cp39-cp39-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 5961da16f07c7db4c5538841adc462fbb4b41387c8650c58af9063e6ad78cf2a
MD5 71895395c6cc4bcec6ee314078403f99
BLAKE2b-256 87b16d7f433b5fa28f30c7b26e84a401e2d3c3b3c619e1c652d69520bd1dc87e

See more details on using hashes here.

File details

Details for the file moveck_bridge_btk-2025.2.0-cp39-cp39-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.2.0-cp39-cp39-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 d33f202c837e6a5daa17bce02b805c14c41f811ed551fc3b43395c808d7fe877
MD5 ab6c43568cb9a2f3be0473d779d10b8c
BLAKE2b-256 0843915872649e25ff83c4c7cda92ec1926eb09b8c22400588852995dfc6bd2f

See more details on using hashes here.

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