Awesome
Online SSVEP-based BCI using Riemannian Geometry
Description
An analysis of Riemannian geometry based methods for classfication in SSVEP-based BCI. The algorithms are tested on data available at https://github.com/sylvchev/dataset-ssvep-exoskeleton
Dependencies
- Matlab 7 or later versions
- Biosig toolbox: http://biosig.sourceforge.net/
- Barachant Covariance toolbox: https://github.com/alexandrebarachant/covariancetoolbox
Data
The code is tested on data available here. For for a quick run of the code, the data should be placed in the /data folder
Main files
plots.m
plot all figurestables.m
Draw main results tablesClassProb_3class.m
&ClassProb_4class.m
Online evaluation of class probabilities probability threshold used in online algorithm. For 3 classes and 4 classes (SSVEP classes + resting class) respectivelyoffline_basic_potato_3class.m
An offline analysis of the MDRD with and without riemannian potato applied for outliers removal. Classification on epoch taken from cue-onset t0. Only SSVEP classes are being usedoffline_opt_potato_3class
Similar to offline_basic_potato_3class.m, but epochs are taken from t0+2 seconline_cum_3class.m
&online_cum_4class.m
Implementation of the online algorithm not including the curve criterion. The classifier output is the class whose probability is beyond the probability threshold. For 3c lasses and 4 classes (SSVEP classes + resting class) respectivelyonline_curve_3class.m
&online_curve_4class.m
Implementation of the full online algorithm For 3c lasses and 4 classes (SSVEP classes + resting class) respectivelyonline_curve_potato_3class.m
&online_curve_potato_4class.m
Implementation of the full online algorithm. Training data filtered with Riemannian potato form ouliers removal. For 3c lasses and 4 classes (SSVEP classes + resting class) respectively.online_curve_tLen_3class.m
&online_curve_tLen_4class.m
Evaluation of the window size, a hyper-parameter in the online algorith. For 3c lasses and 4 classes (SSVEP classes + resting class) respectively 10.riemannian_classification_path.m
produces the path taken by covariance matrices during experiment and how they are being classified.
CCA files
Thiese files are in the CCA folder.
cca_Lin2007.m
Implementation of the CCA algorithm for SSVEP recognition proposed by Lin.Nakanishi2014.m
Implementation of the CCA-based algorithm proposed by Nakanishi.
References
- E. Kalunga, S. Chevallier, and Q. Barthelemy, Research Report: Using Riemannian geometry for SSVEP-based Brain Computer Interface, http://arxiv.org/pdf/1501.03227.pdf
- A. Barachant, S. Bonnet, M. Congedo, C. Jutten, Multiclass brain-computer interface classication by Riemannian geometry, TBME, 2010, 2927-2935
- Z. Lin, C. Zhang, W. Wu, X. Gao, Frequency recognition based on canonical correlation analysis for SSVEP-based BCIs, IEEE Transactions on Biomedical Engineering 53 (12) (2006) 2610–2614.
- M. Nakanishi, Y. Wang, Y.-T. Wang, Y. Mitsukura, T.-P. Jung, A high-speed brain speller using steady-state visual evoked potentials, International journal of neural systems 24 (06) (2014) 1450019.