Skip to content
This repository was archived by the owner on Mar 6, 2026. It is now read-only.

sfu-cmpt340/2024_1_project_17

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

88 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Emotion Classification Using EEG Data

The project is an application which is able to interpret 62-channel raw EEG data. It displays visual representations of the data: a heatmap of the brain activity and plots for each sensor on the brain. A pre-trained classification model then predicts the patient's emotion based on differential entropy features extracted from the data.

Important Links

Timesheet Slack channel Project report

Table of Contents

  1. Video Description and Demonstration

  2. Installation

  3. Project Reproduction

1. Video Description and Demonstration

demo.mp4

File Information

repository
├── src                          ## App source code (Python)
    ├── images                   ## Images for UX enhancement (work in progress)
    ├── important                ## Non-code files critical for the app's function
    ├── App.py                   ## Runs the app
    ├── de_psd_calculation.py    ## Extracts DE and PSD features from raw EEG data
    ├── feature_extraction.py    ## Extracts DE and PSD features with specific parameters
    ├── file_read.py             ## A collection of functions to read .mat and .npz files
    ├── graphing.py              ## Creates graphs of the EEG data
    ├── model.pkl                ## Trained model for prediction
    ├── predict.py               ## Predicts an emotion from raw EEG input data
    ├── test_model.py            ## Loads and tests a model
    ├── train_model.py           ## Loads DE features and trains a model
    ├── ui.py                    ## Displays the UI of the app
    ├── visualization.py         ## Creates the image that visualizes the sensors on the brain
├── LICENSE                      ## Licensing   
├── README.md                    ## You are here
├── 1_20160518_eeg1_2.mat        ## Sample data to test the app
├── requirements.txt             ## Requirements for running the app

2. Installation

Python version should be 3.9.5 or higher.

git clone https://github.com/sfu-cmpt340/2024_1_project_17.git
cd project17_code
pip3 install -r requirements.txt

3. Project Reproduction

Run the app from src using the code below. Once the app is running, click the upload data button and select the "1_20160518_eeg1_2.mat" file to load the sample data.

cd project17_code
cd src
python3 App.py

Data can be found at BCMI SEED-IV.

Request access to this dataset. Upload from the raw EEG data (stored in .mat files) to the app.

About

This is your first repository

Resources

License

Stars

0 stars

Watchers

3 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

Generated from sfu-cmpt340/template