Giter Site home page Giter Site logo

sleep-staging-app's Introduction

sleep-staging-app (in progress)

A small Qt GUI application I made in Visual Studio in the process of studying C++ (and Visual Studio). The app predicts sleep stages for an individual polysomnographic recording, having analyzed a part of it.

Input

The app lets the user load polysomnographic recordings in EDF format. Currently it supports importing of SC* files from the publicly available Sleep-EDF Expanded Physionet database, alongside the associated annotations in .txt format. The app analyzes the Pz-Oz electroencephalographic (EEG) channel from the polysomnographic recording. The signal is segmented into 30-second epoch and each epoch has an associated annotation - one of the 6 stages of wakefulness/sleep according to the Rechtschaffen-Kales criteria (wakefulness, sleep stages 1, 2, 3, 4 and REM phase). The data is available at the Physionet ATM

Signal processing & machine learning

The user is first prompted to select the range of epochs to be analyzed. Currently the features available for extraction are related to the relative power spectral density of the four major EEG frequency bands (alpha, beta, delta and theta), as estimated with the Fast Fourier Transform (FFT). The app lets the user decide between two classifiers, the Linear Discriminant Analysis and a Support Vector Machine with a Gaussian Radial Basis Function kernel. Prior to training the machine learning algorithm, the user has to specify the percentage of data to be used for estimating the performance of the classifier.

Output

The application outputs the recall and precision for each of the 6 stages of wakefulness/sleep and overall accuracy.

Frameworks used

Qt framework

Libraries used

Armadillo, Boost, FFTW3, Sigpack, Shark

Screenshot

sleep staging app image

sleep-staging-app's People

Contributors

pfranjic avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.