how to find the peaks between the local maxima and local minima
10 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
abdullah felfel
le 1 Juil 2022
Commenté : abdullah felfel
le 2 Juil 2022
hi, can someone help figure out how to find the peaks that are placed in between the peaks and valleys?
here is the code i used to find the maxima and minima using the first derivative of my pzpg singal
[pks , locs] = findpeaks(ndy,'MinPeakProminence',0.4);
[npks , nlocs] = findpeaks(-ndy,'MinPeakProminence',0.4);
figure(14)
plot(T(locs), pks,'x')
hold on;
plot(T(nlocs), -npks,'o')
shg
hold on;
plot(T ,ndy);title ('local maxima, notch and minima');xlabel('time');ylabel('amplitude')
what im trying to do next is to find the peaks between the maxima (X) and the minima (O)
0 commentaires
Réponse acceptée
Image Analyst
le 1 Juil 2022
Try getting rid of minpeakprominence so that you find all peaks.
5 commentaires
Image Analyst
le 1 Juil 2022
Find all the peaks and then delete the peaks that have a value more than 0.6:
% First find all peaks
[peakValues, indexesOfPeakValues] = findpeaks(ndy);
% Find out which peaks have a peak value less than 0.6.
goodPeaks = peaksValues < 0.6;
% Get the times at those peak indexes.
tPeaks = T(indexesOfPeakValues);
% Now keep only the good ones.
peakValues = peakValues(goodPeaks);
% Extract the same indexes from our time vector.
tPeaks = tPeaks(goodPeaks);
If you have any more questions, then attach your data and code to read it in with the paperclip icon after you read this:
Plus de réponses (0)
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!