Pyomeca is a python library allowing you to carry out a complete biomechanical analysis; in a simple, logical and concise way.
See Pyomeca's documentation site.
Pyomeca implements specialized functionalities commonly used in biomechanics.
As an example, let's process the electromyographic data contained in this c3d file
.
You can follow along without installing anything by using our binder server:
from pyomeca import Analogs
data_path = "../tests/data/markers_analogs.c3d"
muscles = [
"Delt_ant",
"Delt_med",
"Delt_post",
"Supra",
"Infra",
"Subscap",
]
emg = Analogs.from_c3d(data_path, suffix_delimiter=".", usecols=muscles)
emg.plot(x="time", col="channel", col_wrap=3)
emg_processed = (
emg.meca.band_pass(freq=emg.rate, order=2, cutoff=[10, 425])
.meca.center()
.meca.abs()
.meca.low_pass(freq=emg.rate, order=4, cutoff=5)
.meca.normalize()
)
emg_processed.plot(x="time", col="channel", col_wrap=3)
import matplotlib.pyplot as plt
fig, axes = plt.subplots(ncols=2, figsize=(10, 4))
emg_processed.mean("channel").plot(ax=axes[0])
axes[0].set_title("Mean EMG activation")
emg_processed.plot.hist(ax=axes[1], bins=50)
axes[1].set_title("EMG activation distribution")
See the documentation for more details and examples.
c3d
, csv
, xlsx
,mat
, trc
, sto
, mot
)The following illustration shows all of pyomeca's public API. An interactive version is available in the documentation.
Pyomeca itself is a pure Python package, but its dependencies are not. The easiest way to get everything installed is to use conda.
To install pyomeca with its recommended dependencies using the conda command line tool:
conda install -c conda-forge pyomeca
Now that you have installed pyomeca, you should be able to import it:
import pyomeca
Pyomeca is designed to work well with other libraries that we have developed:
Pyomeca is Apache-licensed and the source code is available on GitHub. If any questions or issues come up as you use pyomeca, please get in touch via GitHub issues. We welcome any input, feedback, bug reports, and contributions.
Pyomeca is an open-source project created and supported by the S2M lab.