Easy to use package to work with BVH (BioVision Hierarchy) files.
Project description
bvhTools is a Python library to work with BVH (Biovision Hierarchy) files. It enables to load, modify and write BVH files in very few lines of code. This project is being developed in the context of a phD, so the library contains many BVH operations that I need to make often.
๐ Functionalities
- ๐/โ๏ธ Reading and writing BVH files
- ๐ Performing Forward Kinematics
- ๐ค Manipulating animations (moving, rotating, mirroring)
- ๐คธ Resampling and editing animations
- ๐ช Slicing (dividing and joining)
- ๐ Editing the skeleton
- ๐ Viewing animations
- ๐ Calculating metrics
- ๐ Converting between angle representations
- ๐ Writing data to CSV files
- ๐ฅ๏ธ CLI interface functions
๐ Documentation
The documentation to use this library can be found here.
๐งฐ Installation
To install and use bvhTools, just install it with pip.
pip install bvhTools
The python package is still work in progress, so it may have some problems. In that case, you can open an issue or a pull request on GitHub.
If you find bvhTools useful, please give it a star! :)
๐บ๏ธ Roadmap
| Functionality | Status |
|---|---|
| Read / Write | ๐ข Completed |
| Forward Kinematics | ๐ข Completed |
| Basic visualization with matplotlib | ๐ข Completed |
| Slice / Join animations | ๐ข Completed |
| Rotate animations | ๐ข Completed |
| Move animations | ๐ข Completed |
| Skeleton Standing on floor | ๐ข Completed |
| Write to CSV | ๐ข Completed |
| Scale skeletons | ๐ข Completed |
| Remove limbs | ๐ข Completed |
| Print skeleton and motion summary | ๐ข Completed |
| Get hierarchy and joint information | ๐ข Completed |
| Metrics: speeds, accelerations, jerks | ๐ข Completed |
| Metrics: average speeds, accelerations, jerks | ๐ข Completed |
| Metrics: average pose | ๐ข Completed |
| Metrics: foot contact masks | ๐ข Completed |
| CLI functions for simple and fast editing | ๐ข Completed |
| Convert Scipy angles to 6D representation | ๐ข Completed |
| Resampling FPS (upsample, downsample by weighted average) | ๐ข Completed |
| Advanced visualization with raylib | ๐ข Completed |
| Mirror Skeletons | ๐ข Completed |
| Documentation | ๐ Continuous |
| Edit rest pose | ๐ฃ Planned |
| Metrics: spectral analysis and fast fourier transform | ๐ฃ Planned |
| Metrics: foot sliding masks | ๐ฃ Planned |
| Machine learning pipeline integration | ๐งโ๐ป Active |
| - ML pipeline: automatic dataset loading | ๐งโ๐ป Active |
| - ML pipeline: data normalization | ๐งโ๐ป Active |
| - ML pipeline: attaching labels | ๐งโ๐ป Active |
| - ML pipeline: attaching other data modalities | ๐ฃ Planned |
| - ML pipeline: windowing and lazy views | ๐งโ๐ป Active |
| - ML pipeline: data splits | ๐งโ๐ป Active |
| - ML pipeline: pytorch integration | ๐งโ๐ป Active |
| - ML pipeline: materializing datasets | ๐งโ๐ป Active |
Feel free to suggest more functionalities that you think might be helpful! Code contributions are also welcome!
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 Distribution
Built Distribution
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 bvhtools-1.6.0.tar.gz.
File metadata
- Download URL: bvhtools-1.6.0.tar.gz
- Upload date:
- Size: 7.9 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
840c67a4d94c4c4732d1a729eac0ba6b0cad7c334aed2773ea2ff15ffe64c144
|
|
| MD5 |
e51e48b9ef46e78adc66bc8d4648a798
|
|
| BLAKE2b-256 |
985fbc8f6c38893f89b46e30a163f1afda600f1bd35676032a3d75d815f606e4
|
File details
Details for the file bvhtools-1.6.0-py3-none-any.whl.
File metadata
- Download URL: bvhtools-1.6.0-py3-none-any.whl
- Upload date:
- Size: 31.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4f34c5403485741afd4535e004bd49f4983727f7530ce56b8bae1bf0f2fc92c8
|
|
| MD5 |
49ac8ed432a4a6c9e6cfb1e484603104
|
|
| BLAKE2b-256 |
7ebb84b48e27a75dd80e45bf285b9bec058b063cda45a6a07e70329a94ad74be
|