[Paper Review] EEGsig: an open-source machine learning-based toolbox for EEG signal processing
EEGsig is an open-source, MATLAB-based toolbox that integrates preprocessing, feature extraction, and machine learning classification for EEG signals into a single, user-friendly GUI. It enables physicians and non-experts to analyze EEG data without coding, achieving 97.5% classification accuracy using k-NN, SVM, and ANN on a mental task dataset, with real-time visualization of all processing stages across channels.
In the quest to realize a comprehensive EEG signal processing framework, in this paper, we demonstrate a toolbox and graphic user interface, EEGsig, for the full process of EEG signals. Our goal is to provide a comprehensive suite, free and open-source framework for EEG signal processing where the users especially physicians who do not have programming experience can focus on their practical requirements to speed up the medical projects. Developed on MATLAB software, we have aggregated all the three EEG signal processing steps, including preprocessing, feature extraction, and classification into EEGsig. In addition to a varied list of useful features, in EEGsig, we have implemented three popular classification algorithms (K-NN, SVM, and ANN) to assess the performance of the features. Our experimental results demonstrate that our novel framework for EEG signal processing attained excellent classification results and feature extraction robustness under different machine learning classifier algorithms. Besides, in EEGsig, for selecting the best feature extracted, all EEG signal channels can be visible simultaneously; thus, the effect of each task on the signal can be visible. We believe that our user-centered MATLAB package is an encouraging platform for novice users as well as offering the highest level of control to expert users
Motivation & Objective
- To develop a comprehensive, open-source EEG signal processing framework accessible to non-programmers, especially physicians.
- To integrate all three stages of EEG processing—preprocessing, feature extraction, and classification—into a single, unified toolbox.
- To enable simultaneous visualization of all EEG channels during processing to assess task-related signal changes.
- To evaluate the performance of multiple machine learning classifiers (k-NN, SVM, ANN) on extracted EEG features.
- To accelerate medical research by reducing the programming barrier in EEG signal analysis.
Proposed method
- The toolbox is built in MATLAB with a graphical user interface (GUI) to allow non-programmers to use the system without writing code.
- Preprocessing includes noise and artifact removal using a low-pass filter and independent component analysis (ICA).
- Feature extraction includes statistical parameters (mean, standard deviation, entropy), FFT, and power spectrum analysis of brain rhythms (delta, theta, alpha, beta, gamma).
- The classification module implements three machine learning algorithms: k-Nearest Neighbors (k-NN), Support Vector Machine (SVM), and Artificial Neural Network (ANN).
- All processing steps—preprocessing, feature extraction, and classification—are visualized simultaneously across all EEG channels in the GUI.
- The system supports loading labeled EEG data and outputs classification metrics such as accuracy, sensitivity, specificity, and confusion matrices.
Experimental results
Research questions
- RQ1Can a unified, open-source, GUI-based toolbox streamline the entire EEG signal processing pipeline for non-expert users?
- RQ2How does the integration of preprocessing, feature extraction, and classification in a single framework improve usability and performance?
- RQ3What is the classification accuracy of EEGsig when applied to a benchmark dataset of mental tasks?
- RQ4How effective is the simultaneous multi-channel visualization in identifying task-related signal changes?
- RQ5How do different machine learning classifiers (k-NN, SVM, ANN) perform on the same EEG feature set within the EEGsig framework?
Key findings
- EEGsig achieved 97.5% classification accuracy on a benchmark dataset of five mental tasks using a neural network classifier.
- The toolbox successfully removed noise and artifacts using a low-pass filter and ICA, improving signal quality.
- Simultaneous visualization of all EEG channels during preprocessing, feature extraction, and classification enabled users to observe task-specific signal changes in real time.
- The feature extraction module supported a wide range of features, including statistical, spectral (FFT, power spectrum), and rhythm-specific (alpha, theta) features.
- The GUI allowed users to interact with the system without writing MATLAB code, significantly lowering the barrier for non-programmers.
- The confusion matrix and performance metrics (sensitivity, specificity, accuracy) were automatically generated and visualized for all classifiers, especially for the ANN via MATLAB's Neural Network Toolbox.
Better researchstarts right now
From reading papers to final review, dramatically reduce your research time.
No credit card · Free plan available
This review was created by AI and reviewed by human editors.