Artifact Subspace Reconstruction in Python.
Project description
ASRpy
Artifact Subspace Reconstruction for Python
Introduction
Artifact subspace reconstruction (ASR) is an automated, online,
component-based artifact removal method for removing transient or
large-amplitude artifacts in multi-channel EEG recordings (Kothe & Jung,
2016). This repository provides a Python implementation of the standard
ASR algorithm, similar to the original MATLAB implementation in EEGLab's
clean_rawdata
plugin.
As of now, this repository only implements the standard version of
the ASR algorithm. A valid version of the improved riemannian ASR
(Blum et al., 2019) might be added in the future.
This implementation aims to follow the original ASR algorithm as close as possible. Using the according parameters, it should be perfectly equivalent to the original implementation, except for a few imprecisions introduced by different solvers implemented in Python and MATLAB, e.g. when calculating the eigenspace. However, this implementation is based on python_meegkit. For an alternative implementation check their repository.
References
- Kothe, C. A. E., & Jung, T. P. (2016). U.S. Patent Application No. 14/895,440. https://patents.google.com/patent/US20160113587A1/en
- Blum, S., Jacobsen, N. S. J., Bleichner, M. G., & Debener, S. (2019). A Riemannian Modification of Artifact Subspace Reconstruction for EEG Artifact Handling. Frontiers in Human Neuroscience, 13. https://doi.org/10.3389/fnhum.2019.00141
Installation
You can install the latest ASRpy release using:
pip install asrpy
or install the current working version directly from GitHub, using:
pip install git+https://github.com/DiGyt/asrpy.git
Examples
ASRpy applies the Artifact Subspace Reconstruction method directly to MNE-Python's mne.io.Raw
objects. It's usage should be as simple as:
import asrpy
asr = asrpy.ASR(sfreq=raw.info["sfreq"], cutoff=20)
asr.fit(raw)
raw = asr.transform(raw)
To get started, we recommend going through the example notebook. You can simply run them via your internet browser (on Google Colab's hosted runtime) by clicking the button below.
Documentation
The ASRpy documentation is created using pdoc3 and GitHub Pages. Click on the link below to view the documentation.
In most Python IDEs, you can also read them by e.g. typing asrpy.ASR?
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
File details
Details for the file asrpy-0.0.3.tar.gz
.
File metadata
- Download URL: asrpy-0.0.3.tar.gz
- Upload date:
- Size: 18.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.9.17
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 58c2b381decde22c47e8b9ca79f2e7ad411fd7000f0c572d6ddaa450d93bbacd |
|
MD5 | 16acb98a1a4cfeb44ab0ec5f3fe4c93a |
|
BLAKE2b-256 | 850c943d415dd19ee223cc457ae9dc20e053244f01361aeca4fcc5aae66ffe52 |
File details
Details for the file asrpy-0.0.3-py3-none-any.whl
.
File metadata
- Download URL: asrpy-0.0.3-py3-none-any.whl
- Upload date:
- Size: 19.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.9.17
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 56d1b70ae6462b1d224116770a765cc8d1b1bcdad84b51c7a7622d29ee6941e2 |
|
MD5 | 341775e215099c3cfa266daf268d146b |
|
BLAKE2b-256 | 7f9ac0c2fd974fdfc7f777f4a7137751a0b0e3f257d5e5dfae500ead594ac26c |