NM000149: eeg dataset, 10 subjects#
BNCI 2019-001 Motor Imagery dataset for Spinal Cord Injury patients
Citation: Patrick Ofner, Andreas Schwarz, Joana Pereira, Daniela Wyss, Renate Wildburger, Gernot R. Müller-Putz (2019). BNCI 2019-001 Motor Imagery dataset for Spinal Cord Injury patients. 10.82901/nemar.nm000149
10-participant EEG dataset — BNCI 2019-001 Motor Imagery dataset for Spinal Cord Injury patients.
Quickstart#
Install
pip install eegdash
Access the data
from eegdash.dataset import NM000149
dataset = NM000149(cache_dir="./data")
# Get the raw object of the first recording
raw = dataset.datasets[0].raw
print(raw.info)
Filter by subject
dataset = NM000149(cache_dir="./data", subject="01")
Advanced query
dataset = NM000149(
cache_dir="./data",
query={"subject": {"$in": ["01", "02"]}},
)
Iterate recordings
for rec in dataset:
print(rec.subject, rec.raw.info['sfreq'])
If you use this dataset in your research, please cite the original authors.
BibTeX
@dataset{nm000149,
title = {BNCI 2019-001 Motor Imagery dataset for Spinal Cord Injury patients},
author = {Patrick Ofner and Andreas Schwarz and Joana Pereira and Daniela Wyss and Renate Wildburger and Gernot R. Müller-Putz},
doi = {10.82901/nemar.nm000149},
url = {https://doi.org/10.82901/nemar.nm000149},
}
About This Dataset#
BNCI 2019-001 Motor Imagery dataset for Spinal Cord Injury patients.
Schema: HED 8.4.0 | Browse: https://www.hedtags.org/hed-schema-browser
BNCI 2019-001 Motor Imagery dataset for Spinal Cord Injury patients
supination
View full README
BNCI 2019-001 Motor Imagery dataset for Spinal Cord Injury patients
supination
├─ Sensory-event, Experimental-stimulus, Visual-presentation
└─ Agent-action
└─ Imagine
├─ Turn
├─ Forearm
└─ Label/supination
pronation
├─ Sensory-event, Experimental-stimulus, Visual-presentation
└─ Agent-action
└─ Imagine
├─ Turn
├─ Forearm
└─ Label/pronation
hand_open
├─ Sensory-event, Experimental-stimulus, Visual-presentation
└─ Agent-action
└─ Imagine, Open, Hand
palmar_grasp
├─ Sensory-event, Experimental-stimulus, Visual-presentation
└─ Agent-action
└─ Imagine, Grasp, Hand
lateral_grasp
├─ Sensory-event, Experimental-stimulus, Visual-presentation
└─ Agent-action
└─ Imagine
├─ Grasp
├─ Hand
└─ Label/lateral
Paradigm-Specific Parameters
Detected paradigm: motor_imagery
Imagery tasks: hand_open, palmar_grasp, lateral_grasp, pronation, supination
Cue duration: 3.0 s
Imagery duration: 3.0 s
Data Structure
Trials: 360
Trials per class: hand_open=72, palmar_grasp=72, lateral_grasp=72, pronation=72, supination=72
Blocks per session: 9
Trials context: total per subject (72 trials per class)
Preprocessing
Data state: raw (GDF format)
Preprocessing applied: True
Steps: bandpass filter, notch filter, ICA, artifact rejection
Highpass filter: 0.01 Hz
Lowpass filter: 100 Hz
Bandpass filter: {‘low_cutoff_hz’: 0.01, ‘high_cutoff_hz’: 100.0}
Notch filter: [50] Hz
Filter type: Chebyshev
Filter order: 8
Artifact methods: ICA, visual inspection, abnormal joint probability, abnormal kurtosis
Re-reference: CAR
Notes: Noisy channels were visually inspected and removed. AFz was removed by default as it is sensitive to eye blinks and eye movements. ICA was performed on 0.3-70 Hz filtered signals using extended infomax. PCA dimensionality reduction retained 99% variance. Artifact-contaminated ICs (muscle and eye-related) were removed. Trials with values above/below ±100 μV, abnormal joint probabilities, or abnormal kurtosis (5x SD threshold) were rejected. Final analysis used 0.3-3 Hz bandpass filter.
Signal Processing
Classifiers: Shrinkage LDA, sLDA
Feature extraction: time-domain low-frequency signals, MRCPs, ICA
Frequency bands: analyzed=[0.3, 3.0] Hz
Spatial filters: CAR
Cross-Validation
Method: 10x10-fold
Folds: 10
Evaluation type: within_subject, cross_validation
Performance (Original Study)
Accuracy: 45.3%
Peak Accuracy 5Class: 45.3
Peak Latency 5Class S: 1.1
Confidence Interval Lower: 40.3
Confidence Interval Upper: 50.3
Chance Level 5Class: 20.0
Significance Level 5Class: 22.3
Peak Accuracy 3Class Subset: 53.0
Peak Latency 3Class Subset S: 1.0
Online Accuracy 2Class: 68.4
Online Tpr: 31.75
Online Fp Per Min: 3.4
BCI Application
Applications: neuroprosthetic, upper_limb_control, hand_grasp_control
Environment: indoor
Online feedback: True
Tags
Pathology: Spinal Cord Injury
Modality: Motor
Type: Motor
Documentation
Description: This dataset investigates whether attempted arm and hand movements in persons with spinal cord injury can be decoded from low-frequency EEG signals (MRCPs). The study includes offline 5-class classification and online proof-of-concept for self-paced movement detection.
DOI: 10.1038/s41598-019-43594-9
Associated paper DOI: 10.1038/s41598-019-43594-9
License: CC-BY-4.0
Investigators: Patrick Ofner, Andreas Schwarz, Joana Pereira, Daniela Wyss, Renate Wildburger, Gernot R. Müller-Putz
Senior author: Gernot R. Müller-Putz
Contact: gernot.mueller@tugraz.at
Institution: Graz University of Technology
Department: Institute of Neural Engineering, BCI-Lab
Address: Graz, Austria
Country: Austria
Repository: Zenodo
Data URL: https://doi.org/10.5281/zenodo.2222268
Publication year: 2019
Funding: European ICT Programme Project H2020-643955 ‘MoreGrasp’
Ethics approval: Ethics committee for the hospitals of the Austrian general accident insurance institution AUVA (approval number 3/2017)
Acknowledgements: This work is supported by the European ICT Programme Project H2020-643955 ‘MoreGrasp’.
Abstract
We show that persons with spinal cord injury (SCI) retain decodable neural correlates of attempted arm and hand movements. We investigated hand open, palmar grasp, lateral grasp, pronation, and supination in 10 persons with cervical SCI. Discriminative movement information was provided by the time-domain of low-frequency electroencephalography (EEG) signals. Based on these signals, we obtained a maximum average classification accuracy of 45% (chance level was 20%) with respect to the five investigated classes. Pattern analysis indicates central motor areas as the origin of the discriminative signals. Furthermore, we introduce a proof-of-concept to classify movement attempts online in a closed loop, and tested it on a person with cervical SCI. We achieved here a modest classification performance of 68.4% with respect to palmar grasp vs hand open (chance level 50%).
Methodology
10 participants with cervical SCI were recruited from a rehabilitation center (AUVA rehabilitation clinic, Tobelbad, Austria). Participants were aged 20-78 years with neurological level of injury C1-C7 and AIS scores A-D. They sat in wheelchairs and attempted/executed movements based on visual cues shown on screen. Each trial lasted 5 seconds with a fixation cross and beep at start, class cue displayed at 2 seconds. 9 runs with 40 trials per run were recorded (360 trials total, 72 per class). EEG was recorded from 61 electrodes using g.tec g.USBamps and g.GAMMAsys/g.LADYbird active electrode system at 256 Hz with 0.01-100 Hz bandpass and 50 Hz notch filter. Preprocessing included visual inspection, ICA artifact removal, trial rejection, and 0.3-3 Hz bandpass filtering. Classification used shrinkage LDA with 10x10 cross-validation. Online proof-of-concept used modified training paradigm with ready/go cues and 3-class classifier (hand open, palmar grasp, rest) with pre/post class detection logic.
References
Ofner, P. et al. (2019). Attempted arm and hand movements can be decoded from low-frequency EEG from persons with spinal cord injury. Scientific Reports, 9(1), 7134. https://doi.org/10.1038/s41598-019-43594-9 Notes .. versionadded:: 1.2.0 Appelhoff, S., Sanderson, M., Brooks, T., Vliet, M., Quentin, R., Holdgraf, C., Chaumon, M., Mikulan, E., Tavabi, K., Hochenberger, R., Welke, D., Brunner, C., Rockhill, A., Larson, E., Gramfort, A. and Jas, M. (2019). MNE-BIDS: Organizing electrophysiological data into the BIDS format and facilitating their analysis. Journal of Open Source Software 4: (1896). https://doi.org/10.21105/joss.01896 Pernet, C. R., Appelhoff, S., Gorgolewski, K. J., Flandin, G., Phillips, C., Delorme, A., Oostenveld, R. (2019). EEG-BIDS, an extension to the brain imaging data structure for electroencephalography. Scientific Data, 6, 103. https://doi.org/10.1038/s41597-019-0104-8 Generated by MOABB 1.5.0 (Mother of All BCI Benchmarks) NeuroTechX/moabb
Cohort#
Dataset Statistics#
Age distribution by gender (n=10, range 2018–2018 yr)
Channel counts: 61 ch (n=90 recordings)
Sampling frequencies: 256.0 Hz (n=90 recordings)
Total recording duration: 7 h 32 min
Signal · Electrodes & live trace#
Live trace viewer — sub-6 · ses-0 · task-imagery · run-3
Showing one representative recording out of
10 subjects and 90 recordings in this dataset.
Browse the full set on OpenNeuro;
drop any other _eeg.{set,edf,bdf,vhdr} file onto the
viewer (or pass ?eeg=<url>) to inspect it.
Electrode layout — EEG · 61 sensors — 61 channels
NEMAR Processing Statistics#
The plots below are generated by NEMAR’s automated EEG pipeline. The histogram shows pipeline success for data cleaning and ICA decomposition, the percentage of data frames and EEG channels retained after artefact removal, line noise per channel (RMS, dB), and the age/gender distribution of participants.
HED event descriptors word cloud
Manifest#
File Explorer#
Browse the BIDS file structure of this dataset. Records are fetched on demand from the EEGDash catalog the first time you open the explorer.
Full dataset metadata table
Dataset ID |
|
Title |
BNCI 2019-001 Motor Imagery dataset for Spinal Cord Injury patients |
Author (year) |
|
Canonical |
— |
Importable as |
|
Year |
2019 |
Authors |
Patrick Ofner, Andreas Schwarz, Joana Pereira, Daniela Wyss, Renate Wildburger, Gernot R. Müller-Putz |
License |
CC-BY-4.0 |
Citation / DOI |
|
Source links |
OpenNeuro | NeMAR | Source URL |
Copy-paste BibTeX
@dataset{nm000149,
title = {BNCI 2019-001 Motor Imagery dataset for Spinal Cord Injury patients},
author = {Patrick Ofner and Andreas Schwarz and Joana Pereira and Daniela Wyss and Renate Wildburger and Gernot R. Müller-Putz},
doi = {10.82901/nemar.nm000149},
url = {https://doi.org/10.82901/nemar.nm000149},
}
API Reference#
eegdash.datasetEEGDashDatasetNM000149 · Ofner2019eegdash/dataset/registry.py · [source ↗]- class eegdash.dataset.NM000149(cache_dir: str, query: dict | None = None, s3_bucket: str | None = None, **kwargs)[source]#
BNCI 2019-001 Motor Imagery dataset for Spinal Cord Injury patients
- Study:
nm000149(NeMAR)- Author (year):
Ofner2019- Canonical:
—
Also importable as:
NM000149,Ofner2019.Modality:
eeg; Experiment type:Motor; Subject type:Other. Subjects: 10; recordings: 90; tasks: 1.- Parameters:
cache_dir (str | Path) – Directory where data are cached locally.
query (dict | None) – Additional MongoDB-style filters to AND with the dataset selection. Must not contain the key
dataset.s3_bucket (str | None) – Base S3 bucket used to locate the data.
**kwargs (dict) – Additional keyword arguments forwarded to
EEGDashDataset.
- data_dir#
Local dataset cache directory (
cache_dir / dataset_id).- Type:
Path
Notes
Each item is a recording; recording-level metadata are available via
dataset.description.querysupports MongoDB-style filters on fields inALLOWED_QUERY_FIELDSand is combined with the dataset filter. Dataset-specific caveats are not provided in the summary metadata.References
OpenNeuro dataset: https://openneuro.org/datasets/nm000149 NeMAR dataset: https://nemar.org/dataexplorer/detail?dataset_id=nm000149 DOI: https://doi.org/10.82901/nemar.nm000149
Examples
>>> from eegdash.dataset import NM000149 >>> dataset = NM000149(cache_dir="./data") >>> recording = dataset[0] >>> raw = recording.load()
- __init__(cache_dir: str, query: dict | None = None, s3_bucket: str | None = None, **kwargs)[source]#
- save(path: str, overwrite: bool = False, offset: int = 0)[source]#
Save datasets to files by creating one subdirectory for each dataset:
path/ 0/ 0-raw.fif | 0-epo.fif description.json raw_preproc_kwargs.json (if raws were preprocessed) window_kwargs.json (if this is a windowed dataset) window_preproc_kwargs.json (if windows were preprocessed) target_name.json (if target_name is not None and dataset is raw) 1/ 1-raw.fif | 1-epo.fif description.json raw_preproc_kwargs.json (if raws were preprocessed) window_kwargs.json (if this is a windowed dataset) window_preproc_kwargs.json (if windows were preprocessed) target_name.json (if target_name is not None and dataset is raw)
- Parameters:
path (str) –
- Directory in which subdirectories are created to store
-raw.fif | -epo.fif and .json files to.
overwrite (bool) – Whether to delete old subdirectories that will be saved to in this call.
offset (int) – If provided, the integer is added to the id of the dataset in the concat. This is useful in the setting of very large datasets, where one dataset has to be processed and saved at a time to account for its original position.
BaseDataset from braindecode — windowed via create_windows_from_events.braindecodeDataLoader; supports parallel workers and on-the-fly augmentations.pytorchSwap any load_dataset(...) call for nm000149 to reproduce the tutorial on this dataset.
Citation
Patrick Ofner, Andreas Schwarz, Joana Pereira, Daniela Wyss, Renate Wildburger, … (2019). BNCI 2019-001 Motor Imagery dataset for Spinal Cord Injury patients. 10.82901/nemar.nm000149
Provenance
¹Contributed to nemar in BIDS format.
²Curated & ingested by the EEGDash catalog; see CITATION.cff for canonical reference.
³Persistent identifier: 10.82901/nemar.nm000149.
See Also#
eegdash.dataset.EEGDashDataseteegdash.dataset