# EEG processing toolbox
## Description
This software is released as part of the EU-funded research project [MAMEM](https://www.mamem.eu/) for supporting experimentation in EEG signals.
It follows a modular architecture that allows the fast execution of experiments of different configurations with minimal adjustments of the code. The experimental pipeline consists of the **Experimenter** class which acts as a wrapper of five more underlying parts;
- The **Session** object: Used for loading the dataset and segmenting the signal according to the periods that the SSVEP stimuli were presented during the experiment. The signal parts are also annotated with a label according to the stimulus frequency.
- The **Preprocessing** object: Includes methods for modifying the raw EEG signal.
- The **Feature Extraction** object: Performs feature extraction algorithms for extracting numerical features from the EEG signals.
- The **Feature Selection** object: Selects the most important features that were extracted in the previous step.
- The **Classification** object: Trains a classification model for predicting the label of unknown samples.
## Instructions
The usage of some classes of the framework is limited by the following requirements.
| Package | Class | Description |
| --- | --- | --- |
| preprocessing | FastICA | Requires the [FastICA](http://research.ics.aalto.fi/ica/fastica/code/dlcode.shtml) library
| aggregation | Vlad | Requires the [vlfeat](http://www.vlfeat.org/) library
| aggregation | Fisher | Requires the [vlfeat](http://www.vlfeat.org/) library
| featselection | FEAST | Requires the [FEAST](http://mloss.org/software/view/386/) library (download link is next to "Archive" somewhere in the middle of the page) and MIToolbox (included in the FEAST zip file) |
| classification | L1MCCA | Requires the [tensor] (http://www.sandia.gov/~tgkolda/TensorToolbox/index-2.6.html) toolbox|
| classification | LIBSVMFast | Requires the [libsvm](https://www.csie.ntu.edu.tw/~cjlin/libsvm/) library|
| classification | MLTboxMulticlass | Requires Matlab version r2015a or newer |
| classification | MLDA | Requires Matlab version r2014 or newer |
| classification | SMFA | Requires [SGE-SMFA] (https://github.com/amaronidis/SGE-SMFA) |
| util | LSLWrapper | Requires the [Labstreaminglayer](https://github.com/sccn/labstreaminglayer) library|
## Examples
Some examples are available that are based on the datasets that can be found below.
- **exampleCSP**, extract common spatial patterns in dataset III of [BCI competition II] (http://www.bbci.de/competition/ii/)
- **exampleCombiCCA**, SSVEP recognition using the CombinedCCA method from [2]. Based on this [dataset] (ftp://sccn.ucsd.edu/pub/cca_ssvep)
- **exampleDefault**, performs a simple experiment on Dataset I & II
- **exampleEPOCCCASVM**, SSVEP recognition using SVM on the CCA coefficients, based on Dataset III
- **exampleERRP**, recognition of error related potentials, based on the [dataset] (https://github.com/flowersteam/self_calibration_BCI_plosOne_2015) provided by [3]
- **exampleEarlyFusion**, demonstrates how to merge features extracted by different electrode channels, based on Dataset II.
- **exampleEpoc**, performs an experiment for the dataset that was recorded with an EPOC device (Dataset III)
- **exampleITCCA**, SSVEP recognition using the ITCCA method from [2]. Based on this [dataset] (ftp://sccn.ucsd.edu/pub/cca_ssvep)
- **exampleL1MCCA**, SSVEP recognition using the L1MCCA method from [2]. Based on this [dataset] (ftp://sccn.ucsd.edu/pub/cca_ssvep)
- **exampleLSL**, Online recognition of SSVEP signals using the [LSL library] (https://github.com/sccn/labstreaminglayer).
- **exampleLateFusion**, merging the output of different classifiers by majority voting, based on Dataset II.
- **exampleMotorPWelch**, classification of right/left hand motor imagery based on the dataset III of [BCI competition II] (http://www.bbci.de/competition/ii/)
- **exampleOptimal**, performs an experiment with the optimal settings for Dataset I & II
- **exampleSMFA**, SSVEP recognition with using SMFA [4]
## Datasets
| Title | Description | Download Link |
| --- | --- | --- |
|EEG SSVEP Dataset I | EEG signals with 256 channels captured from 11 subjects executing a SSVEP-based experimental protocol. **Five different frequencies (6.66, 7.50, 8.57, 10.00 and 12.00 Hz) presented in isolation** have been used for the visual stimulation. The EGI 300 Geodesic EEG System (GES 300), using a 256-channel HydroCel Geodesic Sensor Net (HCGSN) and a sampling rate of 250 Hz has been used for capturing the signals. | [Dataset I](https://dx.doi.org/10.6084/m9.figshare.2068677) |
|EEG SSVEP Dataset II | EEG signals with 256 channels captured from 11 subjects executing a SSVEP-based experimental protocol. **Five different frequencies (6.66, 7.50, 8.57, 10.00 and 12.00 Hz) presented simultaneously** have been used for the visual stimulation. The EGI 300 Geodesic EEG System (GES 300), using a 256-channel HydroCel Geodesic Sensor Net (HCGSN) and a sampling rate of 250 Hz has been used for capturing the signals. | [Dataset II](https://dx.doi.org/10.6084/m9.figshare.3153409) |
|EEG SSVEP Dataset III | EEG signals with 14 channels captured from 11 subjects executing a SSVEP-based experimental protocol. **Five different frequencies (6.66, 7.50, 8.57, 10.00 and 12.00 Hz) presented simultaneously** have been used for the visual stimulation, **and the Emotiv EPOC, using 14 wireless channels** has been used for capturing the signals. | [Dataset III](https://dx.doi.org/10.6084/m9.figshare.3413851) |
## References
[\[1\]](http://arxiv.org/abs/1602.00904) Vangelis P. Oikonomou, Georgios Liaros, Kostantinos Georgiadis, Elisavet Chatzilari, Katerina Adam, Spiros Nikolopoulos and Ioannis Kompatsiaris, "Comparative evaluation of state-of-the-art algorithms for SSVEP-based BCIs", Technical Report - eprint arXiv:1602.00904, February 2016
\[2\] M. Nakanishi, Y. Wang, Y.T. Wang, and T.P. Jung, “A comparison study of canonical correlation analysis based methods for detecting steady-state visual evoked potentials,” PLoS ONE, p. e0140703, October 2015.
\[3\] Iturrate, Iñaki, Jonathan Grizou, Jason Omedes, Pierre-Yves Oudeyer, Manuel Lopes, and Luis Montesano. "Exploiting task constraints for self-calibrated brain-machine interface control using error-related potentials." PloS one 10, no. 7 (2015): e0131491.
Harvard
\[4\] Maronidis, Anastasios, Anastasios Tefas, and Ioannis Pitas. "Subclass Marginal Fisher Analysis." In Computational Intelligence, 2015 IEEE Symposium Series on, pp. 1391-1398. IEEE, 2015.
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
matlab算法,工具源码,适合毕业设计、课程设计作业,所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答! matlab算法,工具源码,适合毕业设计、课程设计作业,所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答! matlab算法,工具源码,适合毕业设计、课程设计作业,所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答! matlab算法,工具源码,适合毕业设计、课程设计作业,所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答! matlab算法,工具源码,适合毕业设计、课程设计作业,所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答! matlab算法,工具源码,适合毕业设计、课程设计作业,所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随
资源推荐
资源详情
资源评论
收起资源包目录
毕业设计&课设-用于处理脑电图信号的Matlab代码。.zip (80个子文件)
matlab_code
exampleERRP.m 1KB
exampleLSL.m 4KB
exampleEPOCCCASVM.m 2KB
exampleEarlyFusion.m 2KB
exampleCombiCCA.m 2KB
exampleMotorPWelch.m 920B
exampleL1MCCA.m 1KB
exampleEpoc.m 2KB
exampleSMFA.m 4KB
exampleLateFusion.m 2KB
exampleITCCA.m 1KB
filters
filt_IIRElliptic.mat 2KB
epocfilter.mat 2KB
exampleERRPSSVEPDemo.m 1KB
exampleDefault.m 2KB
exampleCSP.m 1KB
+eegtoolkit
+classification
@SMFA
SMFA.m 5KB
@MaxChooser
MaxChooser.m 1KB
@MLR
MLR.m 3KB
@L1MCCA
L1MCCA.m 9KB
@CombiCCA
CombiCCA.m 8KB
@ITCCA
ITCCA.m 9KB
@LIBSVMFast
LIBSVMFast.m 5KB
@CSPFilterBankWrapper
CSPFilterBankWrapper.m 8KB
@SBLR
SBLR.m 3KB
@FusionClassifierWrapper
FusionClassifierWrapper.m 2KB
@MLTboxMulticlass
MLTboxMulticlass.m 4KB
@CSPWrapper
CSPWrapper.m 5KB
@LDA
LDA.m 2KB
@MLDA
MLDA.m 6KB
@MLTREE
MLTREE.m 6KB
@ClassifierBase
ClassifierBase.m 304B
@Adaboost
Adaboost.m 5KB
@LIBSVM
LIBSVM.m 4KB
+preprocessing
@SampleSelection
SampleSelection.m 4KB
@PreprocessingBase
PreprocessingBase.m 267B
@Rereferencing
Rereferencing.m 1KB
@FastICA
FastICA.m 1KB
@Windsorize
Windsorize.m 2KB
@DigitalFilter
DigitalFilter.m 1KB
@Amuse
Amuse.m 3KB
+featextraction
@MLR_Transf
MLR_Transf.m 2KB
@CCA
CCA.m 6KB
@STFT
STFT.m 4KB
@Goertzel
Goertzel.m 4KB
@DWT
DWT.m 5KB
@FFT
FFT.m 3KB
@L1MCCA
L1MCCA.m 745B
@PYAR
PYAR.m 3KB
@RawSignal
RawSignal.m 676B
@PWelchExperimental
PWelchExperimental.m 5KB
@ERRPFeatures
ERRPFeatures.m 1KB
@PWelch
PWelch.m 4KB
@PSDExtractionBase
PSDExtractionBase.m 268B
@FeatureExtractionBase
FeatureExtractionBase.m 2KB
+aggregation
@ChannelRatio
ChannelRatio.m 855B
@LateFusion
LateFusion.m 761B
@Fisher
Fisher.m 4KB
@AggregatorBase
AggregatorBase.m 270B
@ChannelConcat
ChannelConcat.m 849B
@VLAD
VLAD.m 3KB
@ChannelAveraging
ChannelAveraging.m 961B
+featselection
@FeatureSelectionBase
FeatureSelectionBase.m 431B
@PCA
PCA.m 1KB
@FEAST
FEAST.m 3KB
@SVD
SVD.m 1016B
+experiment
@ResultEvaluator
ResultEvaluator.m 3KB
@Experimenter
Experimenter.m 18KB
+services
@StressDetection
StressDetection.m 8KB
+util
load_xdf.m 41KB
@InstanceSet
InstanceSet.m 8KB
@ResultSet
ResultSet.m 2KB
@Trial
Trial.m 1KB
@FusionInstanceSet
FusionInstanceSet.m 1KB
@RawSignalSet
RawSignalSet.m 2KB
@LSLWrapper
LSLWrapper.m 17KB
@L1MCCAInstanceSet
L1MCCAInstanceSet.m 2KB
@Session
Session.m 22KB
exampleOptimal.m 2KB
README.md 6KB
共 80 条
- 1
资源评论
白话机器学习
- 粉丝: 9284
- 资源: 7681
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功