NeuroTechX / NeuroTechX/EEG-ExPy

Pre-processing pipeline for low density EEG system

Open
#79 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Python
Stars
575
Forks
153
Avg merge
6h 44m
Merged PRs (30d)
3

Description

The attached code proposes one prospective preprocessing pipeline that helps handle artifacts in EEG data collected using the Muse system. The text contains some additional preprocessing steps which I typically use when working with denser EEG systems but some of these steps are not applicable to Muse. The code will focus on the sections without an asterisk.

  1. Load the required libraries
  2. Load the EEG, chanlocs into EEGlab format
    ii) Downsample if needed
    iii) High Pass filter (0.1-2 Hz: Depending on noise level & study)

iv) *** H-infinity adaptive ocular artifact removal *** (Note: not applicable for Muse and not included)

v) Low pass filter (depending on the study)
vi) Remove Bad segments (Visually inspecting)
vii) Remove Bad channels (Visual Inspection with Muse)
Viii) Remove burst artifacts using ASR

ix) *** ICA cleaning *** (Note: not applicable for Muse and not included)
x) *** Interpolating removed channels *** (Note: not applicable for Muse and not included)

Additional Commands
xi) Notch filter (depending on the study)
xii) Common Average Reference (Note: After ICA or add averaged channel if doing before ICA to account for rank deficiency)
xiii) Multiple plots for sanity checks

Pre_processing_tutorial.zip

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the attached Pre_processing_tutorial.zip and map the non-asterisk steps—loading EEG and chanlocs, filtering, bad-segment and channel review, ASR, and sanity plots—to the repository’s Python entry points. Done means a runnable Muse-focused preprocessing pipeline that excludes the marked non-applicable steps and covers the listed optional operations.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
data
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.