EEGdashNeMARNM000139
Iss. 139 · 9 subjects · 108 recordings · CC-BY-ND-4.0
Dataset Brief · BNCI 2014-001 Motor Imagery dataset

NM000139: eeg dataset, 9 subjects#

BNCI 2014-001 Motor Imagery dataset

Citation: Michael Tangermann, Klaus-Robert Müller, Ad Aertsen, Niels Birbaumer, Christoph Braun, Clemens Brunner, Robert Leeb, Carsten Mehring, Kai J. Miller, Gernot R. Müller-Putz, Guido Nolte, Gert Pfurtscheller, Hubert Preissl, Gerwin Schalk, Alois Schlögl, Carmen Vidaurre, Stephan Waldert, Benjamin Blankertz (2019). BNCI 2014-001 Motor Imagery dataset. 10.82901/nemar.nm000139

9-participant EEG dataset — BNCI 2014-001 Motor Imagery dataset.

EEG · 22 ch250 HzBIDS 1.9.0Task · imagery2 sessionsHealthyMultisensoryMotor
Layer 01Study
What was asked
Hypothesis, independent & dependent variables, paradigm, cohort, and the editorial caveats around what the recordings can and cannot answer.
Layer 02Signal · BIDS
What was recorded
Sidecars, channels & electrodes, coordinate system, event semantics, and quality stats from the NEMAR pipeline when available.
Layer 03Training · ML
What you can train on
Recommended access modes — MNE Raw, braindecode windows, PyTorch DataLoader — plus the targets the metadata makes addressable.
§ 01Access · Get started

Quickstart#

Install

pip install eegdash

Access the data

from eegdash.dataset import NM000139

dataset = NM000139(cache_dir="./data")
# Get the raw object of the first recording
raw = dataset.datasets[0].raw
print(raw.info)

Filter by subject

dataset = NM000139(cache_dir="./data", subject="01")

Advanced query

dataset = NM000139(
    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{nm000139,
  title = {BNCI 2014-001 Motor Imagery dataset},
  author = {Michael Tangermann and Klaus-Robert Müller and Ad Aertsen and Niels Birbaumer and Christoph Braun and Clemens Brunner and Robert Leeb and Carsten Mehring and Kai J. Miller and Gernot R. Müller-Putz and Guido Nolte and Gert Pfurtscheller and Hubert Preissl and Gerwin Schalk and Alois Schlögl and Carmen Vidaurre and Stephan Waldert and Benjamin Blankertz},
  doi = {10.82901/nemar.nm000139},
  url = {https://doi.org/10.82901/nemar.nm000139},
}
§ 02Study · The README

About This Dataset#

BNCI 2014-001 Motor Imagery dataset.

Schema: HED 8.4.0 | Browse: https://www.hedtags.org/hed-schema-browser

DOI

BNCI 2014-001 Motor Imagery dataset

left_hand

View full README

DOI

BNCI 2014-001 Motor Imagery dataset

left_hand
     ├─ Sensory-event
     │  ├─ Experimental-stimulus
     │  ├─ Visual-presentation
     │  └─ Leftward, Arrow
     └─ Agent-action
        └─ Imagine
           ├─ Move
           └─ Left, Hand

right_hand
     ├─ Sensory-event
     │  ├─ Experimental-stimulus
     │  ├─ Visual-presentation
     │  └─ Rightward, Arrow
     └─ Agent-action
        └─ Imagine
           ├─ Move
           └─ Right, Hand

feet
     ├─ Sensory-event
     │  ├─ Experimental-stimulus
     │  ├─ Visual-presentation
     │  └─ Downward, Arrow
     └─ Agent-action
        └─ Imagine, Move, Foot

tongue
├─ Sensory-event
│  ├─ Experimental-stimulus
│  ├─ Visual-presentation
│  └─ Upward, Arrow
└─ Agent-action
   └─ Imagine, Move, Tongue

Paradigm-Specific Parameters

  • Detected paradigm: motor_imagery

  • Imagery tasks: left_hand, right_hand, foot

  • Cue duration: 4.0 s

  • Imagery duration: 4.0 s

Data Structure

  • Trials: {‘training’: 200, ‘test’: 240}

  • Blocks per session: 6

  • Trials context: per subject (2 training runs + 4 test runs)

Preprocessing

  • Data state: minimally preprocessed (bandpass and notch filtered)

  • Preprocessing applied: True

  • Steps: bandpass filtering

  • Highpass filter: 0.05 Hz

  • Lowpass filter: 200 Hz

  • Bandpass filter: {‘low_cutoff_hz’: 0.05, ‘high_cutoff_hz’: 200.0}

  • Filter type: analog

  • Re-reference: none

  • Downsampled to: 100.0 Hz

  • Notes: Data provided in two versions: original at 1000 Hz and downsampled to 100 Hz (with Chebyshev Type II filter order 10, stop band ripple 50 dB, stop band edge 49 Hz)

Signal Processing

  • Classifiers: LDA, SVM, Neural Network, Naive Bayes, RBF Neural Network

  • Feature extraction: CSP, FBCSP, Bandpower, ERD, ERS

  • Frequency bands: mu=[8, 12] Hz; beta=[16, 24] Hz

Cross-Validation

  • Method: train-test split

  • Evaluation type: within_session

Performance (Original Study)

  • Mse: 0.382

BCI Application

  • Applications: cursor_control, communication

  • Environment: laboratory

  • Online feedback: False

Tags

  • Pathology: Healthy

  • Modality: Motor

  • Type: Motor

Documentation

  • Description: Review of the BCI competition IV - Data set 1: Asynchronous Motor Imagery

  • DOI: 10.3389/fnins.2012.00055

  • License: CC-BY-ND-4.0

  • Investigators: Michael Tangermann, Klaus-Robert Müller, Ad Aertsen, Niels Birbaumer, Christoph Braun, Clemens Brunner, Robert Leeb, Carsten Mehring, Kai J. Miller, Gernot R. Müller-Putz, Guido Nolte, Gert Pfurtscheller, Hubert Preissl, Gerwin Schalk, Alois Schlögl, Carmen Vidaurre, Stephan Waldert, Benjamin Blankertz

  • Senior author: Michael Tangermann

  • Contact: michael.tangermann@tu-berlin.de

  • Institution: Berlin Institute of Technology

  • Department: Machine Learning Laboratory

  • Address: FR 6-9, Franklinstr. 28/29, 10587 Berlin, Germany

  • Country: AT

  • Repository: BNCI Horizon

  • Data URL: http://www.bbci.de/competition/iv/

  • Publication year: 2012

  • Keywords: brain-computer interface, BCI, competition

References

Tangermann, M., Muller, K.R., Aertsen, A., Birbaumer, N., Braun, C., Brunner, C., Leeb, R., Mehring, C., Miller, K.J., Mueller-Putz, G. and Nolte, G., 2012. Review of the BCI competition IV. Frontiers in neuroscience, 6, p.55.

Notes .. note:: BNCI2014_001 was previously named BNCI2014001. BNCI2014001 will be removed in version 1.1. .. versionadded:: 0.4.0 This is one of the most widely used motor imagery datasets in BCI research, commonly referred to as “BCI Competition IV Dataset 2a”. It serves as a standard benchmark for 4-class motor imagery classification algorithms.

The dataset is particularly useful for: - Multi-class motor imagery classification (4 classes) - Transfer learning studies (9 subjects, 2 sessions each) - Cross-session variability analysis

See Also BNCI2014_004 : BCI Competition 2008 2-class motor imagery (Dataset B) BNCI2003_004 : BCI Competition III 2-class motor imagery Examples

>> from moabb.datasets import BNCI2014_001 >>> dataset = BNCI2014_001() >>> dataset.subject_list [1, 2, 3, 4, 5, 6, 7, 8, 9]

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.4.3 (Mother of All BCI Benchmarks) NeuroTechX/moabb

§ 03Cohort · Participants

Cohort#

Dataset Statistics#

Age distribution by gender (n=9, range 17–26 yr, mean 23.1 yr)

152025
Female · 4Male · 5

Sex composition

9
subjects
Female
4
Male
5
F : M ratio
0.80 : 1
44% female · n = 9 subjects with reported sex.
HandednessRight · 9

Channel counts: 22 ch (n=108 recordings)

Sampling frequencies: 250.0 Hz (n=108 recordings)

Total recording duration: 11 h 36 min

§ 04Signal · Electrodes & trace

Signal · Electrodes & live trace#

Fig. 01 Signal & montage 22 ch · EEG · 250 Hz · 9 subjects, 108 recordings
Live trace viewer — sub-6 · ses-0train · task-imagery · run-4

Showing one representative recording out of 9 subjects and 108 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 · 22 sensors — 22 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 HED event descriptors word cloud — NM000139
§ 05Manifest · BIDS tree

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.

Recordings
Files
Subjects
Modalities
Click to load file structure…
Full dataset metadata table

Dataset ID

NM000139

Title

BNCI 2014-001 Motor Imagery dataset

Author (year)

Tangermann2014

Canonical

Importable as

NM000139, Tangermann2014

Year

2019

Authors

Michael Tangermann, Klaus-Robert Müller, Ad Aertsen, Niels Birbaumer, Christoph Braun, Clemens Brunner, Robert Leeb, Carsten Mehring, Kai J. Miller, Gernot R. Müller-Putz, Guido Nolte, Gert Pfurtscheller, Hubert Preissl, Gerwin Schalk, Alois Schlögl, Carmen Vidaurre, Stephan Waldert, Benjamin Blankertz

License

CC-BY-ND-4.0

Citation / DOI

10.82901/nemar.nm000139

Source links

OpenNeuro | NeMAR | Source URL

Copy-paste BibTeX
@dataset{nm000139,
  title = {BNCI 2014-001 Motor Imagery dataset},
  author = {Michael Tangermann and Klaus-Robert Müller and Ad Aertsen and Niels Birbaumer and Christoph Braun and Clemens Brunner and Robert Leeb and Carsten Mehring and Kai J. Miller and Gernot R. Müller-Putz and Guido Nolte and Gert Pfurtscheller and Hubert Preissl and Gerwin Schalk and Alois Schlögl and Carmen Vidaurre and Stephan Waldert and Benjamin Blankertz},
  doi = {10.82901/nemar.nm000139},
  url = {https://doi.org/10.82901/nemar.nm000139},
}
§ 06API · Programmatic access

API Reference#

Signature
eegdash.dataset
class
eegdash.dataset.NM000139(cache_dir, query=None, s3_bucket=None, **kwargs)
Bases: EEGDashDataset
Author (year)Tangermann2014
Canonical
Importable asNM000139 · Tangermann2014
Sourceeegdash/dataset/registry.py · [source ↗]
class eegdash.dataset.NM000139(cache_dir: str, query: dict | None = None, s3_bucket: str | None = None, **kwargs)[source]#

BNCI 2014-001 Motor Imagery dataset

Study:

nm000139 (NeMAR)

Author (year):

Tangermann2014

Canonical:

Also importable as: NM000139, Tangermann2014.

Modality: eeg; Experiment type: Motor; Subject type: Healthy. Subjects: 9; recordings: 108; 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

query#

Merged query with the dataset filter applied.

Type:

dict

records#

Metadata records used to build the dataset, if pre-fetched.

Type:

list[dict] | None

Notes

Each item is a recording; recording-level metadata are available via dataset.description. query supports MongoDB-style filters on fields in ALLOWED_QUERY_FIELDS and is combined with the dataset filter. Dataset-specific caveats are not provided in the summary metadata.

References

OpenNeuro dataset: https://openneuro.org/datasets/nm000139 NeMAR dataset: https://nemar.org/dataexplorer/detail?dataset_id=nm000139 DOI: https://doi.org/10.82901/nemar.nm000139

Examples

>>> from eegdash.dataset import NM000139
>>> dataset = NM000139(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.

Access modesMNE → braindecode → PyTorch → ML
.rawMNE Raw object — standard tools (filter, epoch, ICA, plot_psd).mne
DataLoaderWraps the windowed dataset into a PyTorch DataLoader; supports parallel workers and on-the-fly augmentations.pytorch
Zarr cacheOptional braindecode Zarr mirror for fast resume; persisted to cache_dir.zarr
Hugging FaceNo per-dataset mirror published yet — browse the EEGDash org listing for sibling datasets. See the datasets loader API.huggingface
Croissant 1.0Machine-readable JSON-LD descriptorNM000139.croissant.json (MLCommons schema, ingestible by PyTorch / TensorFlow / JAX).mlcommons
Examples using EEGDashcurated · start here

Swap any load_dataset(...) call for nm000139 to reproduce the tutorial on this dataset.

Citation

Michael Tangermann, Klaus-Robert Müller, Ad Aertsen, Niels Birbaumer, Christoph Braun, … (2019). BNCI 2014-001 Motor Imagery dataset. 10.82901/nemar.nm000139

Provenance

¹Contributed to nemar in BIDS format.

²Curated & ingested by the EEGDash catalog; see CITATION.cff for canonical reference.

³Persistent identifier: 10.82901/nemar.nm000139.

BIDS
BIDS 1.9.0
Sidecars
events · events.json · channels · eeg.json
Provenance
CC-BY-ND-4.0 · 10.82901/nemar.nm000139
Machine-readable
Mirrors

See Also#