How can I identify the amplitude peaks from an FFT?

3 views (last 30 days)
The code that I did shows the audio with FFT, now I'm trying to make a function that counts the number of significant frequencies of the chart:
I still don't have much experience with MATLAB, so I need some help to identify these peaks with a code

Accepted Answer

Chris on 23 Nov 2021
Edited: Chris on 23 Nov 2021
You can use findpeaks, probably with some additional parameters. For instance, if the plotted signal is P:
Z = findpeaks(P,'MinPeakHeight',5);
numPeaks = numel(Z);
See the findpeaks documentation if you need to supply additional criteria as to what counts as a peak.
If you call the function without assigning it to an output, the function will create a plot like you've posted.

More Answers (0)


Community Treasure Hunt

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

Start Hunting!

Translated by