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.1.2-cp313-cp313-win_amd64.whl (4.1 MB view details)

Uploaded CPython 3.13Windows x86-64

moveck_bridge_btk-2025.1.2-cp313-cp313-macosx_13_0_x86_64.whl (5.7 MB view details)

Uploaded CPython 3.13macOS 13.0+ x86-64

moveck_bridge_btk-2025.1.2-cp313-cp313-macosx_13_0_arm64.whl (5.3 MB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

moveck_bridge_btk-2025.1.2-cp312-cp312-win_amd64.whl (4.1 MB view details)

Uploaded CPython 3.12Windows x86-64

moveck_bridge_btk-2025.1.2-cp312-cp312-macosx_13_0_x86_64.whl (5.7 MB view details)

Uploaded CPython 3.12macOS 13.0+ x86-64

moveck_bridge_btk-2025.1.2-cp312-cp312-macosx_13_0_arm64.whl (5.3 MB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

moveck_bridge_btk-2025.1.2-cp311-cp311-win_amd64.whl (4.1 MB view details)

Uploaded CPython 3.11Windows x86-64

moveck_bridge_btk-2025.1.2-cp311-cp311-macosx_13_0_x86_64.whl (5.7 MB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

moveck_bridge_btk-2025.1.2-cp311-cp311-macosx_13_0_arm64.whl (5.3 MB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

moveck_bridge_btk-2025.1.2-cp310-cp310-win_amd64.whl (4.1 MB view details)

Uploaded CPython 3.10Windows x86-64

moveck_bridge_btk-2025.1.2-cp310-cp310-macosx_13_0_x86_64.whl (5.7 MB view details)

Uploaded CPython 3.10macOS 13.0+ x86-64

moveck_bridge_btk-2025.1.2-cp310-cp310-macosx_13_0_arm64.whl (5.3 MB view details)

Uploaded CPython 3.10macOS 13.0+ ARM64

moveck_bridge_btk-2025.1.2-cp39-cp39-win_amd64.whl (4.1 MB view details)

Uploaded CPython 3.9Windows x86-64

moveck_bridge_btk-2025.1.2-cp39-cp39-macosx_13_0_x86_64.whl (5.7 MB view details)

Uploaded CPython 3.9macOS 13.0+ x86-64

moveck_bridge_btk-2025.1.2-cp39-cp39-macosx_13_0_arm64.whl (5.3 MB view details)

Uploaded CPython 3.9macOS 13.0+ ARM64

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.1.2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 969469c8b35417029a43b58cd2661715fa3804a92e8922be69c32b7e624b95a3
MD5 fcfe49a7ac858ac3506ff92579a7139a
BLAKE2b-256 ad3d1dbfee504988b8c78ebfb140de34e1d8599c074798011f1bc0c2e98a5947

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.1.2-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 aa2feffd551760091456d36e2f22126d2a7ec7e20026a8876672d3c88ae1a337
MD5 5cb575fa3be75644200f26bd524fccad
BLAKE2b-256 9572446f2a8053ae60c7150db1cf3f2a303857be9cb34e1367ef5c4b76dab6e8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.1.2-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 62877e7958b9e9180036f471321869e73867a22668ec7bec0ca060641f96b37c
MD5 ffb1ee011e8c3f679e024ae94d376e31
BLAKE2b-256 11c70f2ce6ff17fbed5f9b33b128cdd7dd355262d055e96843b2247625441cd3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.1.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 c08d3b0b434b14abffda8eb3baf405629f44c8c9a1b47613c1bd084aba0abc92
MD5 43784af2abc39b86aa91702baacfc5dd
BLAKE2b-256 0bfc56994836c2d1e94de5089d42591841e257326a156679748b9acaece10a91

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.1.2-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 8a06a5fb1d478f7c92926e95561a35c1b69b973333b2e4833286421045dc601a
MD5 e4d5b12bbbe3e56a9f72725e3714fcb5
BLAKE2b-256 9654d94cecfbaa488e3b2f12bcaba6da7b2f75c592a48dd6dc9b48b8a7c94eeb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.1.2-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 dcd004cd0b2f2a15c660f7218d6f3ac84bd515377818d94850bf86e6cc130949
MD5 1625153971a431ffc0ccfdd2e9666f4c
BLAKE2b-256 cf17ecf2cc71f59691a455238d362b5f339428f9d33692cfe591551ff2406ad3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.1.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 7172358812bed2ce5a4b87b07d6baac08acf164ef94757f6ad781eb422d9f111
MD5 13020088245d774e985d21be5effaf58
BLAKE2b-256 c9cd0502040ccf3f401f5054e625bcc9986f36dce9bd7f370027a02cdb11a4be

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.1.2-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 7fb00e3173534dd0863a078469b77463517d6a479ef2a9f299ac86d30ae26931
MD5 82f40311693b6bce2b8301c6597d5597
BLAKE2b-256 6cdfc8c4928ed3233756f676b90b850c12a9f53f14966d2e75af8b7ffd4b9b67

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.1.2-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 0221d504f181c6b682ca5828831a2ca56455cbbe20acf68f1a92073de158732f
MD5 323f6428298040004d2ff90807c195cd
BLAKE2b-256 b73a650dafdb4f3d53f419d8381ec38c3396e099d2e6f4a94831ddd7ac2408a4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.1.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f4ddc833db704462eecf84dc44d21ea85e6d46e3a91f62b2c27ddd4530cc7ae2
MD5 7c9c8ff96e2ee950b107d76484cd3d23
BLAKE2b-256 a5bee0eaa9285a86001215e72f0b8df4ff14826280f44efbd8ed89626c079c95

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.1.2-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 a1cc7f5e296673e1307d55a33d0b07a52a11044d19191b605c09822503fd2025
MD5 04efa6fad40e231b8336d80a6f75eecb
BLAKE2b-256 8b0ba0678855fdab02cadb8b9acfcc3e910a42af47fc1fb553a7b27d77c7e3ce

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.1.2-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 3901c05433a9d4b5a83330fb2d9217502d2c5c4e7494b225b79cc87225245b2c
MD5 dea072c58991bf941ace01b7ecc18475
BLAKE2b-256 f86d3eda17abf8e31930d5d4968b032e1b23748230e899c9c053ed00f24c6f01

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.1.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 4f21325d19cca913920654dd66dd5085ce17ee5059db1aba66c04695e147e455
MD5 96432cf484205e970e5c1e16e2881935
BLAKE2b-256 113b83126725a4f805cc5f7aa5a901f07b3dd7376fe3f7cd9b45278f13ff2e13

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.1.2-cp39-cp39-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 edcb615bde7cf080f70f270829653fbe8827bb60d496e8a5740de5fc2b766e13
MD5 a6b7064ebccdbd1e51f4751366cdf522
BLAKE2b-256 ecc982ba7be996b07607d8794558bdb4ccc0d57001b4e4cc9a924f9b88cd01bc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for moveck_bridge_btk-2025.1.2-cp39-cp39-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 d16a3a3886ef7d3fe88fcda5c2c01e7b002c2df9a3fc82b257d8bf25eba89b02
MD5 55ed09eb1bb1d6eb10120c78e75b59f6
BLAKE2b-256 a28b300d0b853a2afdb984d91bef3bba54367cef2179c8dc75384ab0fff9daed

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