find local maxima without using findpeaks()

2 visualizaciones (últimos 30 días)
Alankrita Asthana
Alankrita Asthana el 27 de Feb. de 2018
Comentada: Andrei Bobrov el 28 de Feb. de 2018
hi. i have raw velocity data. i need to get the local maxima of that data in velocity vs time plot.findpeaks() needs a liscense, so is there any other function similar to findpeaks?
  1 comentario
Adam
Adam el 27 de Feb. de 2018
There are plenty of peak finding variants in the File Exchange for free. I can't vouch for the quality of any of them, but you can evaluate them for your usage.

Iniciar sesión para comentar.

Respuestas (2)

Star Strider
Star Strider el 27 de Feb. de 2018
If you have R2017b, use the islocalmax (link) function.

Andrei Bobrov
Andrei Bobrov el 27 de Feb. de 2018
Please use function diff.
for example:
a = rand(15,1);
t = diff(a);
lo = t > 0;
ii = strfind(lo(:)',[1,0]) + 1;
plot(a(:));
hold on
plot(ii(:),a(ii),'ro');
  1 comentario
Alankrita Asthana
Alankrita Asthana el 27 de Feb. de 2018
this function is detecting the minima also. the data has so many ripples so how can i find only one maxima out of so many ripples

Iniciar sesión para comentar.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by