Skip to main content

A package for decomposing multi-channel intramuscular and surface EMG signals into individual motor unit activity based off the blind source algorithm described in Francesco Negro et al 2016 J. Neural Eng. 13 026027.

Project description

EMGdecomPy

ci-cd Documentation Status codecov

A package for decomposing multi-channel intramuscular and surface EMG signals into individual motor unit activity based off the blind source algorithm described in Negro et al. (2016).

Proposal and Final Report

To generate the proposal and final report locally, ensure that you have R version 4.1.2 or above installed, as well as the RStudio IDE. Then install the necessary dependencies with the following commands:

Rscript -e 'install.packages("rmarkdown", repos="http://cran.us.r-project.org")'
Rscript -e 'install.packages("tinytex", repos="http://cran.us.r-project.org")'
Rscript -e 'tinytex::install_tinytex()'
Rscript -e 'install.packages("bookdown", repos="http://cran.us.r-project.org")'

Proposal

Our project proposal can be found here.

To generate the proposal locally, run the following command from the root directory after cloning EMGdecomPy:

Rscript -e "rmarkdown::render('docs/proposal/proposal.Rmd')"

Alternatively, if the above doesn't work, install Docker. While Docker is running, run the following command from the root directory after cloning EMGdecomPy:

docker run --platform linux/amd64 --rm -v /$(pwd):/home/emgdecompy danfke/pandoc-r-bookdown Rscript -e "rmarkdown::render('home/emgdecompy/docs/proposal/proposal.Rmd')"

Final Report

Our final report can be found here.

To generate the final report locally, run the following command from the root directory after cloning EMGdecomPy:

Rscript -e "rmarkdown::render('docs/final-report/final-report.Rmd')"

Alternatively, if the above doesn't work, install Docker. While Docker is running, run the following command from the root directory after cloning EMGdecomPy:

docker run --platform linux/amd64 --rm -v /$(pwd):/home/emgdecompy danfke/pandoc-r-bookdown Rscript -e "rmarkdown::render('home/emgdecompy/docs/final-report/final-report.Rmd')"

Installation

EMGdecomPy is compatible with Python versions 3.9 to 3.11.

pip install emgdecompy

Usage

After installing emgdecompy, refer to the EMGdecomPy workflow notebook for an example on how to use the package, from loading in the data to visualizing the decomposition results.

Contributing

Interested in contributing? Check out the contributing guidelines. Please note that this project is released with a Code of Conduct. By contributing to this project, you agree to abide by its terms.

License

EMGdecomPy was created by Daniel King, Jasmine Ortega, Rada Rudyak, and Rowan Sivanandam. It is licensed under the terms of the GPLv3 license.

Credits

EMGdecomPy was created with cookiecutter and the py-pkgs-cookiecutter template.

The blind source separation algorithm in this package was based off of Negro et al. (2016).

The data used for validation was obtained from Hug et al. (2021).

Guilherme Ricioli was consulted for his work on semg-decomposition.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

emgdecompy-0.6.0.tar.gz (30.3 kB view hashes)

Uploaded Source

Built Distribution

emgdecompy-0.6.0-py3-none-any.whl (30.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page