Cognitive state recognition based on raw EEG data

Working with OpenViBE signal processing scenarios and doing scenario/BCI design
Post Reply
Posts: 1
Joined: Tue Jul 03, 2018 1:48 pm

Cognitive state recognition based on raw EEG data

Post by yannis »

Hello all

I have a dataset containing raw EEG data from multiple participants. I would like to use openViBe to recognise their mental state doe the whole session. Is possible to do this using OpenVibe? I know I can do Frequency based analysis of the EEG data but I am not sure if classification is possible. If yes, can someone guide me on how to achieve this? To be more specific EmotivePro ( recently introduced a version of their software which does performance analysis and export a timestamp csv file showing the performance of users for the entire session. It accurately recognises the following mental states:

1) Stress
2) Engagement
3) Interest
4) Excitement
5) Focus
6)| Relaxation

Ideally I would like OpenVibe to accurately recognise all of the above states. However, I would be happy even with half of the states. When I did my experiment with emotivPro it did not have these features. I really do not want to repeat the study to get what I want out of the data.

Many thanks

Posts: 775
Joined: Tue Dec 04, 2012 3:53 pm
Location: INRIA Rennes, FRANCE

Re: Cognitive state recognition based on raw EEG data

Post by jtlindgren »


openvibe does not have premade classifiers for different mental states or conditions, as according to mainstream understanding, the signal processing (classifier) requires changes for different conditions as well (or to figure them out automatically -- hard). For example, the change of user, used electrodes, electrode positions, and changes in the EEG patterns over time (brain nonstationarity) require adaptive models. Some work towards this and calibration-free classification is happening in the research field.

When using Openvibe, we have a typical machine learning workflow. Due to the data characteristics changing in the EEG use case, the model(s) are often fitted for each particular session separately. Of course nothing prevents from trying to use a model from a previous session.

So the usual workflow for classifying 'cognitive states' is as follows,

1) design scenario to collect data from the user per condition (instructions etc)
2) design signal filtering, feature extraction, choose learning algorithm in a DSP pipeline
3) collect data related to the different conditions using 1
4) train a multiclass classifier using DSP from 2 and data from 3
5) use built model from 4 to classify new data

OpenViBE contains several examples (motor imagery, ssvep etc) where steps 1 and 2 have been done using the graphical language in Designer (and some C++ based modules), and user can try 3-5 "out of box".

The software can naturally simulate the steps 3-5 using prerecorded data.

Accuracy again depends on the data and the DSP/models used etc etc.


Post Reply