variable thresholding for peak detection in ecg signal

[qrspeaks,locs] = findpeaks(ecg signal,'MinPeakHeight',0.5,...
'MinPeakDistance',200);
I used the fixed threshold 0.5 for peak detection. But can anyone please help me to solve how to set variable threshold for finding peaks ?

Risposte (1)

I’m guessing that your signal has a wandering baseline, so MinPeakHeight is inconsistent with it. If that’s true, you can either use the highpass (or bandpass) functions and filter the signal to eliminate the wandering baseline, or experiment with MinPeakProminence to isolate the R-waves (that’s usually the objective).

3 Commenti

yes sir. But i have used bandpass and eliminated the wandering baseline, when i apply findpeaks() with the fixed threshold i miss some of R peaks. So adaptive threshold need to be applied. So can you help me to solve how to apply adaptive threshold. I would be a great help!
The findpeaks function does not allow adaptive thresholding.
Use MinPeakProminence instead, as I already advised.
yes sir but even if i use minpeakprominence i could not get the exact R peaks without setting adaptive thresholding. Can you tell how to detect R peaks with adaptive thresholding for various arrhythmia condition?

Accedi per commentare.

Richiesto:

il 3 Giu 2020

Commentato:

il 5 Giu 2020

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by