All Projects → omimo → Pymo

omimo / Pymo

Licence: mit
A library for machine learning research on motion capture data

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Pymo

Android Socialbuttons
A library for easily implementing social login/share buttons
Stars: ✭ 145 (-3.33%)
Mutual labels:  library
Amazing Swift Ui 2019
23 Amazing iOS UI Libraries written in Swift for the Past Year (v.2019)
Stars: ✭ 147 (-2%)
Mutual labels:  library
Graphlib
Simple but powerful graph library for Rust
Stars: ✭ 148 (-1.33%)
Mutual labels:  library
Python Machine Learning Book
The "Python Machine Learning (1st edition)" book code repository and info resource
Stars: ✭ 11,428 (+7518.67%)
Mutual labels:  scikit-learn
Jeelizfacefilter
Javascript/WebGL lightweight face tracking library designed for augmented reality webcam filters. Features : multiple faces detection, rotation, mouth opening. Various integration examples are provided (Three.js, Babylon.js, FaceSwap, Canvas2D, CSS3D...).
Stars: ✭ 2,042 (+1261.33%)
Mutual labels:  library
Dash Svm
Interactive SVM Explorer, using Dash and scikit-learn
Stars: ✭ 147 (-2%)
Mutual labels:  scikit-learn
Libcloud
Apache Libcloud is a Python library which hides differences between different cloud provider APIs and allows you to manage different cloud resources through a unified and easy to use API
Stars: ✭ 1,815 (+1110%)
Mutual labels:  library
Libwire
User space threading (aka coroutines) library for C resembling GoLang and goroutines
Stars: ✭ 149 (-0.67%)
Mutual labels:  library
M2cgen
Transform ML models into a native code (Java, C, Python, Go, JavaScript, Visual Basic, C#, R, PowerShell, PHP, Dart, Haskell, Ruby, F#, Rust) with zero dependencies
Stars: ✭ 1,962 (+1208%)
Mutual labels:  scikit-learn
Vivid
a JavaScript library which is built to easily customize and use the SVG Icons with a blaze.
Stars: ✭ 1,797 (+1098%)
Mutual labels:  library
Cordova Plugin Console
[DEPRECATED] Apache Cordova Plugin console
Stars: ✭ 145 (-3.33%)
Mutual labels:  library
Libnmea
Lightweight C library for parsing NMEA 0183 sentences
Stars: ✭ 146 (-2.67%)
Mutual labels:  library
Esp32 epaper example
Full featured ePaper library for ESP32 with demo application
Stars: ✭ 147 (-2%)
Mutual labels:  library
Blazorise
Blazorise is a component library built on top of Blazor with support for CSS frameworks like Bootstrap, Bulma, AntDesign, and Material.
Stars: ✭ 2,103 (+1302%)
Mutual labels:  library
Msvsearch
Material Search View
Stars: ✭ 148 (-1.33%)
Mutual labels:  library
Image Comparison
Published on Maven Central and jCenter Java Library that compares 2 images with the same sizes and shows the differences visually by drawing rectangles. Some parts of the image can be excluded from the comparison. Can be used for automation qa tests.
Stars: ✭ 145 (-3.33%)
Mutual labels:  library
Streaming
r/freemediaheckyeah
Stars: ✭ 147 (-2%)
Mutual labels:  library
Swipelayout
A library what allows you to execute a swipe for the android platform
Stars: ✭ 150 (+0%)
Mutual labels:  library
Arduino Libs
Arduino Libs & Examples: ADS1147, ADS7846, DAC8760, DS1307, RV8523, MCP2515, WS2812, S65-Display, MI0283QT-2/-9/-11, HX8347D, ILI9341, SSD1331
Stars: ✭ 148 (-1.33%)
Mutual labels:  library
Kingly
Zero-cost state-machine library for robust, testable and portable user interfaces (most machines compile ~1-2KB)
Stars: ✭ 147 (-2%)
Mutual labels:  library

PyMO

A library for using motion capture data for machine learning

This library is currently highly experimental and everything is subject to change :)

Roadmap

  • Mocap Data Parsers and Writers
  • Common mocap pre-processing algorithms
  • Feature extraction library
  • Visualization tools

Current Features

Read BVH Files

from pymo.parsers import BVHParser

parser = BVHParser()

parsed_data = parser.parse('demos/data/AV_8Walk_Meredith_HVHA_Rep1.bvh')

Get Skeleton Info

from pymo.viz_tools import *

print_skel(parsed_data)

Will print the skeleton hierarchy:

- Hips (None)
| | - RightUpLeg (Hips)
| | - RightLeg (RightUpLeg)
| | - RightFoot (RightLeg)
| | - RightToeBase (RightFoot)
| | - RightToeBase_Nub (RightToeBase)
| - LeftUpLeg (Hips)
| - LeftLeg (LeftUpLeg)
| - LeftFoot (LeftLeg)
| - LeftToeBase (LeftFoot)
| - LeftToeBase_Nub (LeftToeBase)
- Spine (Hips)
| | - RightShoulder (Spine)
| | - RightArm (RightShoulder)
| | - RightForeArm (RightArm)
| | - RightHand (RightForeArm)
| | | - RightHand_End (RightHand)
| | | - RightHand_End_Nub (RightHand_End)
| | - RightHandThumb1 (RightHand)
| | - RightHandThumb1_Nub (RightHandThumb1)
| - LeftShoulder (Spine)
| - LeftArm (LeftShoulder)
| - LeftForeArm (LeftArm)
| - LeftHand (LeftForeArm)
| | - LeftHand_End (LeftHand)
| | - LeftHand_End_Nub (LeftHand_End)
| - LeftHandThumb1 (LeftHand)
| - LeftHandThumb1_Nub (LeftHandThumb1)
- Head (Spine)
- Head_Nub (Head)

scikit-learn Pipeline API

from pymo.preprocessing import *
from sklearn.pipeline import Pipeline

data_pipe = Pipeline([
    ('param', MocapParameterizer('position')),
    ('rcpn', RootCentricPositionNormalizer()),
    ('delta', RootTransformer('abdolute_translation_deltas')),
    ('const', ConstantsRemover()),
    ('np', Numpyfier()),
    ('down', DownSampler(2)),
    ('stdscale', ListStandardScaler())
])

piped_data = data_pipe.fit_transform([parsed_data])

Convert to Positions

mp = MocapParameterizer('position')

positions = mp.fit_transform([parsed_data])

Visualize a single 2D Frame

draw_stickfigure(positions[0], frame=10)

2D Skeleton Viz

Animate in 3D (inside a Jupyter Notebook)

nb_play_mocap(positions[0], 'pos', 
              scale=2, camera_z=800, frame_time=1/120, 
              base_url='pymo/mocapplayer/playBuffer.html')

Mocap Player

Foot/Ground Contact Detector

from pymo.features import *

plot_foot_up_down(positions[0], 'RightFoot_Yposition')

Foot Contact

signal = create_foot_contact_signal(positions[0], 'RightFoot_Yposition')
plt.figure(figsize=(12,5))
plt.plot(signal, 'r')
plt.plot(positions[0].values['RightFoot_Yposition'].values, 'g')

Foot Contact Signal

Feedback, Bugs, and Questions

For any questions, feedback, and bug reports, please use the Github Issues.

Credits

Created by Omid Alemi

License

This code is available under the MIT license.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].