Detect and remove the artifacts in PPG signal via MATLAB

16 views (last 30 days)
Hi,
There is the sample PPG data file, and there are 100 different PPG signals' data.
The sample frequency is about 30 Hz.
When I choose the 85th signal, the wavefrom is looked like this.
Obviously, the motion artifacts is between 200 sec to 500 sec.
I want to design a MATLAB code for detect whether the artfacts are and remove them.
Could anyone tell me how to do that?
I want to separate the whole waveform into different waveforms. Basicially, one waveform is for one period of PPG.
Then, to find the maximum and minimum points and calculate the difference. The parts with a great difference shall be the artifacts.
Could anyone tell how to do that via MATLAB code?
Thanks
  3 Comments
Leo David
Leo David on 22 Nov 2020
My idea is the local maximal and local minimal for each period or pulse shall be lower or similar.
I know "findpeaks" function, but not know how to find which one is the maximal or mininal.
Could you tell me how to do that?
I am also not sure what the good PPG signal's performance is? like the difference between maximal and minimal.

Sign in to comment.

Answers (0)

Community Treasure Hunt

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

Start Hunting!