R peak detection of ecg and ppg

16 visualizzazioni (ultimi 30 giorni)
Keerthi G
Keerthi G il 21 Feb 2020
Commentato: Umar il 28 Giu 2024
i have got both ppg and ecg signal... i am now struggling to detect the r peak and compare the r peak of ecg signal with ppg signal to calculate PTT... can anyone have idea about it....it will be more helpful for mr if you shared your ideas.thank you..
  1 Commento
Umar
Umar il 28 Giu 2024
Hi Keerthi,
One common approach is to use the Pan-Tompkins algorithm for ECG R-peak detection. For PPG signals, you can apply peak detection algorithms like findpeaks or peakdet to identify peaks.
Here is a simple example in Matlab to detect R peaks in ECG signals using the Pan-Tompkins algorithm:
% Load ECG signal
ecg_signal = load('ecg_signal.mat');
% Apply Pan-Tompkins algorithm for R-peak detection
r_peaks = pan_tompkins(ecg_signal);
% Plot ECG signal with detected R peaks
plot(ecg_signal); hold on; plot(r_peaks, ecg_signal(r_peaks), 'ro', 'MarkerSize', 10); xlabel('Samples'); ylabel('Amplitude'); title('ECG Signal with Detected R Peaks'); legend('ECG Signal', 'R Peaks');
For PPG signal processing, you can adapt similar peak detection methods. Once you have the R peaks from both signals, you can compare their timings to calculate the Pulse Transit Time (PTT) as the time delay between the R peaks in ECG and PPG signals.
Hope this helps answer your question.

Accedi per commentare.

Risposte (1)

Samatha Aleti
Samatha Aleti il 24 Feb 2020
Hi,
Refer the following MATLAB documentation page on “R Wave detection in the ECG”:
You may also refer the MATLAB File Exchange function available:

Community Treasure Hunt

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

Start Hunting!

Translated by