All Projects → DevinHillenius → brain-powered

DevinHillenius / brain-powered

Licence: other
With the Brain Powered honourscourse at the UvA we aimed to control a drone using brain signals, measured by means of EEG, only.

Programming Languages

python
139335 projects - #7 most used programming language
matlab
3953 projects

Projects that are alternatives of or similar to brain-powered

EEG-Motor-Imagery-Classification-CNNs-TensorFlow
EEG Motor Imagery Tasks Classification (by Channels) via Convolutional Neural Networks (CNNs) based on TensorFlow
Stars: ✭ 125 (+861.54%)
Mutual labels:  eeg, eeg-analysis, eeg-classification
AttnSleep
[IEEE TNSRE] "An Attention-based Deep Learning Approach for Sleep Stage Classification with Single-Channel EEG"
Stars: ✭ 76 (+484.62%)
Mutual labels:  eeg, eeg-classification
EEGReader
EEG Reader is an Android mobile application, which reads EEG signal from NeuroSky mobile device connected to smartphone via Bluetooth.
Stars: ✭ 36 (+176.92%)
Mutual labels:  eeg, bci
Deep-Learning-for-BCI
Resources for Book: Deep Learning for EEG-based Brain-Computer Interface: Representations, Algorithms and Applications
Stars: ✭ 63 (+384.62%)
Mutual labels:  eeg, bci
EEGEdu
Interactive Brain Playground - Browser based tutorials on EEG with webbluetooth and muse
Stars: ✭ 91 (+600%)
Mutual labels:  eeg, bci
eeg-gcnn
Resources for the paper titled "EEG-GCNN: Augmenting Electroencephalogram-based Neurological Disease Diagnosis using a Domain-guided Graph Convolutional Neural Network". Accepted for publication (with an oral spotlight!) at ML4H Workshop, NeurIPS 2020.
Stars: ✭ 50 (+284.62%)
Mutual labels:  eeg, eeg-classification
ganglion-ble
Web Bluetooth client for the Ganglion brain-computer interface by OpenBCI
Stars: ✭ 27 (+107.69%)
Mutual labels:  eeg, bci
EEGwithRaspberryPI
Open-Source board for converting RaspberryPI to Brain-computer interface
Stars: ✭ 402 (+2992.31%)
Mutual labels:  eeg, bci
neurosky-android-sdk
Android SDK for the NeuroSky MindWave Mobile Brainwave Sensing Headset
Stars: ✭ 39 (+200%)
Mutual labels:  eeg, bci
eeg-rsenet
Motor Imagery EEG Signal Classification Using Random Subspace Ensemble Network
Stars: ✭ 24 (+84.62%)
Mutual labels:  eeg, eeg-classification
eeguana
A package for manipulating EEG data in R.
Stars: ✭ 16 (+23.08%)
Mutual labels:  eeg, eeg-analysis
ewtpy
Empirical wavelet transform (EWT) in Python
Stars: ✭ 52 (+300%)
Mutual labels:  eeg-classification
drone-manifest
Drone plugin to push Docker manifests
Stars: ✭ 14 (+7.69%)
Mutual labels:  drone
ufomap
UFOMap: An Efficient Probabilistic 3D Mapping Framework That Embraces the Unknown
Stars: ✭ 117 (+800%)
Mutual labels:  drone
gogs drone docker
For the better CI as well as CD using gogs and drone base on Docker
Stars: ✭ 72 (+453.85%)
Mutual labels:  drone
EEG convolutional neural net
A convolutional neural network developed in python using the Keras machine learning framework used to categorize brain signal based on what a user was looking at when the EEG data was collected.
Stars: ✭ 20 (+53.85%)
Mutual labels:  eeg
pybv
A lightweight I/O utility for the BrainVision data format, written in Python.
Stars: ✭ 18 (+38.46%)
Mutual labels:  eeg
eeg-explorer
Visual EEG readings from the Muse EEG Headset
Stars: ✭ 35 (+169.23%)
Mutual labels:  eeg
drone-gcloud-helm
Drone 0.5 plugin to create and deploy Helm charts for Kubernetes in Google Cloud.
Stars: ✭ 13 (+0%)
Mutual labels:  drone
yakut
Simple CLI tool for diagnostics and debugging of Cyphal networks
Stars: ✭ 29 (+123.08%)
Mutual labels:  drone

Brain Powered

Requirements

Besided python 3, these modules are required and can be installed using the command pip3 install -r requirements.txt when inside the project root folder.

Brain Powered Python Script

The eeg.py script allows users to visualise the powers of EEG signals using scatterplots.

Usage

The folders containing the signals can be selected using the -f or --folder option (see Examples). The sample rate can be adjusted using the -s or --sample_rate flag, it is 256 by default (see Examples). The frequency band is 8Hz to 13Hz by default and can be adjusted as well, using the -b or --band flag. Again, see the Example section for its usage.

Data organization

We organised our EEG data in the following way. The root folder data is divided in multiple folders, each containing all the data about a particular individual. The folders of the individuals are divided into multiple folders each containing a single motor imagery movement, such as imagining moving hand or feet. Inside these motor imagery movement folders are two files, c1.mat and c2.mat. These are the channels of the actions and contain all records of that particular action. c1.mat and c2.mat are required to be present in the selected folders when using the eeg.py script. This data can be found on a private repository and is not available to the public.

data\
    personA
    personB
    personC\
        foot-right-cond
        hand-left-base
        hand-left-cond
        hand-right-cond\
            c1.mat
            c2.mat

Examples

# Sample rate is 256 and band is 8 to 13 by default
./eeg.py --folder data/hand-left-cond data/foot-right-cond/
# Using 3 different actions, a different sample rate and a different band
./eeg.py --folder data/hand-left-cond data/hand-right-cond data/foot-right-cond/ --sample_rate 512 --band 3 8
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].