how does the function findpeaks work in matlab?
10 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I use the function findpeaks to detect peak in a vector,it worked as i expected,but I want to understand how does it work,and what the principle it use.
n=0:1:10;
x = [25 8 15 5 6 10 10 3 1 20 7];
[k,v]=findpeaks(x);
plot(n,x,'b');grid;hold on
plot(n(k),v,'r.');
Can anyone can help me?I will be very appreciate for your kindness.
0 comentarios
Respuestas (2)
Rik
el 3 de Mayo de 2017
pks = findpeaks(data) returns a vector with the local maxima (peaks) of the input signal vector, data. A local peak is a data sample that is either larger than its two neighboring samples or is equal to Inf. Non- Inf signal endpoints are excluded. If a peak is flat, the function returns only the point with the lowest index.
So that's how it works.
2 comentarios
Jan
el 3 de Mayo de 2017
@yawen: It seems like you noticed, that the code is not readable. Please edit your comment and use the "{} Code" button for a proper formatting. Thanks.
yawen kang
el 3 de Mayo de 2017
3 comentarios
Adam
el 3 de Mayo de 2017
What is the relevance of that code anyway? It doesn't even include a call to findpeaks!
Rik
el 3 de Mayo de 2017
Skimming this code, it looks like it aims to replicate findpeaks, although this version doesn't return the first index of a plateau, but the middle.
Ver también
Categorías
Más información sobre 描述性统计量 en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!