finding the first, second and third maxima in the signal
Show older comments
Can someone please help me with the code for finding the signal peaks in the below figure .
I hae tried using for loops, and also MATLAB function findpeaks() . I am new to MATLAB and I am not sure if I am doing this correctly. Please help me.
5 Comments
Azzi Abdelmalek
on 29 May 2013
In your image, some peaks are ignored
Ricky
on 29 May 2013
Iain
on 29 May 2013
What is it about the peaks that tell you to NOT ignore them?
Azzi Abdelmalek
on 29 May 2013
And how can we do it by code? You should explain why some peaks are ignored, If there is no explanation it's impossible to do it by program.
Ricky
on 29 May 2013
Answers (1)
Azzi Abdelmalek
on 29 May 2013
0 votes
2 Comments
Ricky
on 29 May 2013
Azzi Abdelmalek
on 29 May 2013
[peaks,index]=findpeaks(y)
for k=1:numel(peaks)
ii=index(k);
jj=0;
if abs(y(ii)/y(ii-1))>=3 & abs(y(ii)/y(ii+1))>=3
jj=jj+1
real_peak(jj)=peaks(k)
index_peak(jj)=ii
end
end
Categories
Find more on Descriptive Statistics in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!