moabb.datasets.Cattan2019_VR#

class moabb.datasets.Cattan2019_VR(virtual_reality=False, screen_display=True)[source]#

Dataset of an EEG-based BCI experiment in Virtual Reality using P300.

PapersWithCode leaderboard: https://paperswithcode.com/dataset/cattan2019-vr-moabb-1

Dataset summary

#Subj

#Chan

#Trials / class

Trials length

Sampling rate

#Sessions

21

16

600 NT / 120 T

1s

512Hz

2

We describe the experimental procedures for a dataset that we have made publicly available at https://doi.org/10.5281/zenodo.2605204 in mat (Mathworks, Natick, USA) and csv formats [1]. This dataset contains electroencephalographic recordings on 21 subjects doing a visual P300 experiment on non-VR (PC display) and VR (virtual reality). The visual P300 is an event-related potential elicited by a visual stimulation, peaking 240-600 ms after stimulus onset. The experiment was designed in order to compare the use of a P300-based brain-computer interface on a PC and with a virtual reality headset, concerning the physiological, subjective and performance aspects. The brain-computer interface is based on electroencephalography (EEG). EEG data were recorded thanks to 16 electrodes. The virtual reality headset consisted of a passive head-mounted display, that is, a head-mounted display which does not include any electronics at the exception of a smartphone. A full description of the experiment is available at https://hal.archives-ouvertes.fr/hal-02078533.

See the example plot_vr_pc_p300_different_epoch_size to compare the performance between PC and VR.

Parameters
  • virtual_reality (bool (default False)) – if True, return runs corresponding to P300 experiment on virtual reality.

  • screen_display (bool (default True)) – if True, return runs corresponding to P300 experiment on personal computer.

Notes

Note

Cattan2019_VR was previously named VirtualReality. VirtualReality will be removed in version 1.1.

New in version 0.5.0.

References

1

G. Cattan, A. Andreev, P. L. C. Rodrigues, and M. Congedo (2019). Dataset of an EEG-based BCI experiment in Virtual Reality and on a Personal Computer. Research Report, GIPSA-lab; IHMTEK. https://doi.org/10.5281/zenodo.2605204

New in version 0.5.0.

data_path(subject, path=None, force_update=False, update_path=None, verbose=None)[source]#

Get path to local copy of a subject data.

Parameters
  • subject (int) – Number of subject to use

  • path (None | str) – Location of where to look for the data storing location. If None, the environment variable or config parameter MNE_DATASETS_(dataset)_PATH is used. If it doesn’t exist, the “~/mne_data” directory is used. If the dataset is not found under the given path, the data will be automatically downloaded to the specified folder.

  • force_update (bool) – Force update of the dataset even if a local copy exists.

  • update_path (bool | None Deprecated) – If True, set the MNE_DATASETS_(dataset)_PATH in mne-python config to the given path. If None, the user is prompted.

  • verbose (bool, str, int, or None) – If not None, override default verbose level (see mne.verbose()).

Returns

path – Local path to the given data file. This path is contained inside a list of length one, for compatibility.

Return type

list of str

get_block_repetition(paradigm, subjects, block_list, repetition_list)[source]#

Select data for all provided subjects, blocks and repetitions. Each subject has 12 blocks of 5 repetitions.

The returned data is a dictionary with the following structure:

data = {'subject_id' :
            {'session_id':
                {'run_id': raw}
            }
        }

See also

BaseDataset.get_data

Parameters
  • subjects (List of int) – List of subject number

  • block_list (List of int) – List of block number (from 0 to 11)

  • repetition_list (List of int) – List of repetition number inside a block (from 0 to 4)

Returns

data – dict containing the raw data

Return type

Dict

Examples using moabb.datasets.Cattan2019_VR#

Example of P300 classification with different epoch size.

sphx_glr_auto_examples_noplot_vr_pc_p300_different_epoch_size.py

Example of P300 classification with different epoch size.
Tutorial 5: Creating a dataset class

Tutorial 5: Creating a dataset class

Tutorial 5: Creating a dataset class