Skip to content

LaSEEB/deepQRS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

deepQRS

An automatic QRS detection algorithm using Deep Learning in MATLAB. It uses an LSTM model to predict the positions of the R peaks in an ECG. This is an adaptation of the detect method in the file correct.py of the Python library NeuXus: https://github.com/LaSEEB/NeuXus/blob/master/neuxus/nodes/correct.py.

To use it, call deepQRS as:

marks = deepQRS(ecg,W,stride=50);

  • ecg: ecg vector, sampled at 250 Hz.
  • W: struct with the weights and biases of the model;
  • stride: number of points to jump between predictions.

As deepQRS slides a prediction window throughout the ecg, it is suitable to be used online by being called repeatedly.

Check example.m for a demonstration on how to use it!

PS. Based on the data I have used, I can see that deepQRS detects most R peaks correctly, except for some that seem perfectly normal and somewhat periodically spaced. I am not sure why this happens (it might be a small bug). Therefore, I recommend using interactiveQRS after, to confirm the results and mark the missing R peaks:

[Github] https://github.com/LaSEEB/interactiveQRS

[Mathworks file exchange] https://www.mathworks.com/matlabcentral/fileexchange/126884-interactiveqrs

About

An automatic QRS detection algorithm using Deep Learning in MATLAB

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages