EEG-Workflow-System

EEG Blocks Documentation

Documentation guide to all the pre-implemented EEG signal processing and classification blocks.

Table of Content

Data Provider

Offline Data Provider

Offline Data Provider block is for importing the .eeg extension files to the workflow. These EEG data files are total 3 in number:

Pre Processing

Channel Selection

Channel selection block as the name suggests is a block to select EEG data from some specific channels. This block takes the channel names as parameters.

Input: EEGData
Parameter: <Channels>
Output: EEGData

Channel Names

Channel names block will help to get you the list of channels and their names. This channel names will be required for channel selection block.

Input: EEGData
Parameter: <No Parameters>
Output: <No Outputs>

Filter

Filter block is nothing but a bandpass filter for all the channels in the EEG Data

Input: EEGData
Parameter: Low Cutoff Frequency, High Cutoff Frequency
Output: EEGData

Epoch Extraction

Epoch extraction block extracts epoch of marked events. Given pre and post-stimulus, epoch extraction generated frames of egg data around the particular marker.

Input: EEGData
Parameter: PreStimulus, PostStimulus, Baseline Correction Start, Baseline Correction end, Event id
Output: Epochs

Epoch Averaging

As the name suggests, it computes an average of all epochs in the instance, even if they correspond to different conditions.

Input: Epochs
Parameter: <No Parameter>
Output: Epochs

Event and Ids

Event and ids block will help to get you the list of event names and their corresponding ids. These ids will be required for the Epoch extraction selection block.

Input: EEGData
Parameter: <No Parameter>
Output: <No Output>

Feature Extraction

Wavelet Transform

Wavelet transform block uses discrete wavelet transform (DWT) for extracting features from EEG signal. DWT is used to decompose a filtered EEG signal into its frequency components and the statistical feature of the DWT coefficient are computed in time domain.

Input: Epochs
Parameter: <No Parameter>
Output: FeatureVector

Feature Labeling

Feature labeling block is to label the feature vectors in order to feed it to a neural network classifier. The block maps event ids to a specific class. You can combine mutiple event ids to same class and can also discard features corresponding to an event id.

Input: FeatureVector
Parameter: <List of event ids>
Output: FeatureVector

Classification

Neural Network Layer

Neural network layer block as the name suggest is the block defining a layer in the entire dense neural network.

Input: Model
Parameter: Number of Units, Activation Function, Dropout
Output: Model

Neural Network Classifier

Neural network classifier block takes in the layers and the feature vector in order to perform classification. Feature vector are considered as independent input and feeded to the dense layers to perform appropriate classification using labels assigned to each feature vector. Validation and trainig accuracy is displayed on the block.

Input: FeatureVector, Model
Parameter: Optimizer, Test Size, Number of Epochs, Number of classes
Output: Model

Save Model

Save model block creates a model file which can be downloaded for future use.

Input: Model
Parameter: <No Parameter>
Output: <No Output>

Visualization

EEG Plot

As the name suggest it’s a block that will plot all the selected channels of the EEG Data.

Input: EEGData
Parameter: <No Parameter>
Output: <No Output>

Epoch Plot

Epoch plot block will plot the signal obtained after averaging all the epochs.

Input: Epochs
Parameter: <No Parameter>
Output: <No Output>