# Detection of Troughs and Notches in a PPG Signal

I'm working a project which tries to determine Blood Pressure from PPG signals.I'm trying to extract the features as shown below...

I'm having problem in finding the troughs and dicrotic notch for each cycle and also the cycle start and end duration. Are there any manual method methods which can be applied ( I'm a newbie to signal processing )thereby which we can extract the trough and notch location in each cycle ?

• i hadn't seen this question before. are you confident that the notch will always be there with a slight bump to the right of the notch? what if the derivative never quite reaches zero? then where to you want to mark the notch time to calculate the Peak to Notch Time? – robert bristow-johnson Oct 25 '18 at 18:41
• Some words of caution; you will almost never see the textbook waveform shown. There will be huge variations in subject-to-subject signal quality, and the SNR is often negative. If your task is to solve an academic problem, then perhaps you will be given a collection of ideal waveforms, but as a real-life task, this is very difficult – Bob Dec 19 '19 at 20:19

Have you tried finding where the derivative of your signal is 0 (or crosses between positive and negative values)?

Simple, approximate, derivative filters are the first difference:

$y[n] = x[n] - x[n-1]$

and the central difference:

$y[n] = x[n] - x[n-2]$

You'll have to compensate for filter delay when mapping the zero crossings of the derivative back to the local minima and maxima of the original signal. For the first difference, the output is delayed by about half a sample period, and for the central difference, the output is delayed about a sample period.

• It might work for clean signals but as soon as noise is added, this will likely fail. – Ben Dec 19 '19 at 20:18