-
Notifications
You must be signed in to change notification settings - Fork 10
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
dbb775e
commit b0c6ad0
Showing
1 changed file
with
6 additions
and
10 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,7 @@ | ||
[![codecov](https://codecov.io/github/lina-usc/pylossless/branch/main/graph/badge.svg?token=SVAD8HTJNG)](https://codecov.io/github/lina-usc/pylossless) | ||
|
||
[![Documentation Status](https://readthedocs.org/projects/pylossless/badge/?version=latest)](https://pylossless.readthedocs.io/en/latest/?badge=latest) | ||
|
||
![logo](./docs/source/_static/logo_white.png) | ||
|
||
|
||
|
@@ -8,28 +10,22 @@ | |
This EEG processing pipeline is especially useful for the following scenarios: | ||
|
||
- You want to keep your EEG data in a continous state, allowing you the flexibility to epoch your data at a later stage. | ||
- You are part of a research team or community that shares a common dataset, and you want to ensure data processing happens only once, in a way that is useful to all collaborators. | ||
- You are part of a research team or community that shares a common dataset, and you want to process the data once in a way that can be used for multiple analyses. | ||
|
||
## Background and Purpose | ||
|
||
This project arose from a real-world use-case: We had a dataset of +1,500 infant EEG recordings from multiple studies. The event markers were inconsistent across recordings, and the EEG data were noisy. Multiple researchers needed to analyze the data, and we wanted to avoid a scenario where each person processed the data independently. We set out to orchestrate a single comprehensive effort to produce a clean version of the dataset, which each researcher could use for their own analysis. | ||
|
||
## The gist of the Lossless pipeline | ||
This project arose from the Elsabbagh Lab at McGill University. While working on a study of +1,500 infant EEG recordings from multiple studies, with inconsistent event markers across recordings, we needed a robust method to isolate artifacts in the EEG data, that could be applied once and re-used by all research team members. | ||
|
||
The Lossless pipeline was designed keep EEG recordings in their continuous nature. It _annotates_ bad channels, bad time periods, and artifactual independent components. The pipeline also provides a visual dashboard that displays the EEG recording, its respective ICA, and all the pipeline decisions. This allows the reviewer to quickly confirm that noisy sensors, time periods, and components were sufficiently identified by the pipeline on any given recording. With this tool, we were able to complete a thorough cleaning of the aforementioned 1,500 recording dataset. Individual researchers were then able purge the artifacts identified by the pipeline and epoch the data at the time of their own analysis. | ||
The Lossless pipeline was designed keep EEG recordings in their continuous state. It _annotates_ bad channels, bad time periods, and artifactual independent components. The pipeline also provides a visual dashboard that displays the EEG recording, its respective ICA, and all the pipeline decisions. This allowed the team to quickly confirm that noisy channels, time periods, and components were sufficiently identified by the pipeline on any given recording. Since the artifacts were annotated directly on the raw data, researchers could later apply these annotations and epoch/segment/filter their data as needed, at the time of their respective analysis (i.e. one researcher could create 10-second long epochs, and another could create 1-second long epochs, without needing to re-process the whole dataset). | ||
|
||
## 📘 Installation and usage instructions | ||
|
||
This package can be install from PyPI with | ||
```bash | ||
$ pip install pylossless | ||
``` | ||
|
||
The development version can be installed from GitHub with | ||
```bash | ||
$ git clone [email protected]:lina-usc/pylossless.git | ||
$ pip install --editable ./pylossless | ||
``` | ||
|
||
for an editable installation, or simply with | ||
```bash | ||
$ pip install git+https://github.com/lina-usc/pylossless.git | ||
|