how can i find the three peak points of the histogram..

Risposte (3)

Adam
Adam il 12 Gen 2015
Modificato: Adam il 12 Gen 2015
doc findpeaks
if you have the Signal Processing Toolbox.
Although you don't say which histogram you are referring to.
If you don't have the Signal Processing toolbox you can search for find peaks or similar on Matlab Exchange for code that will do the same.

9 Commenti

i have a grayscale image's histogram and i m able to find the 1st peak point. now i have to find the 2nd and 3rd peak...
We know - you said that already. Please read this.
Incidentally, how do you find the first peak?
by writing this:
[pixelCounts, grayLevels] = imhist(b);
[maxCount, indexOfMax] = max(pixelCounts);
grayLevelAtMax = grayLevels(indexOfMax);
fprintf('max=%d',grayLevelAtMax);
That gives you the largest peak, not necessarily the first peak
that code which i posted is only giving me the largest peak.. but i want to know how to find the three peaks of the histogram... and i also wants the same for the lowest point.. plz help its very important for me.
Did you try his original suggestion of using findpeaks()? Why not?
actually i didn't getting how to apply that findpeaks()function.. if u provide me the right example or syntax then i will try..
The help page for findpeaks gives something like 7 or 8 examples. I haven't memorised the syntax so you might as well look at the examples yourself rather than me spend time doing it just to repeat them for you here!

Accedi per commentare.

sort the data in descending order & take first three values

3 Commenti

how can i sort the values of the histogram?? sry i don't know this as i m new to matlab.. plz help by giving by some example.
That won't give you peaks. Quite likely it will give you the largest peak and the two values either side of it.
that code what i posted is only giving me the largest peak.. but i want to know how to find the three peaks of the histogram... and i also wants the same for the lowest point.. plz help its very important for me.

Accedi per commentare.

you can save your histogram as a variable and then use the file (peak finder in matlab exchange file)

7 Commenti

can u give an example for that?
first have you finded the file in matlab files exchange
actually i m using the matlab version 2010. in that they are not showing any thing... plz help as i m new to matlab.. and need this function badly..
see the attached file ; all the best
and how can i find the three minimum points of the same histogram.???
mouh nyquist
mouh nyquist il 19 Gen 2015
Modificato: mouh nyquist il 19 Gen 2015
I think it is easy , you need to read a little :-)
You can use findpeaks() like Adam already told you, but you just have to invert your signal so that valleys now become peaks.
upsidedownSignal = max(signal) - signal;
theValleys = findpeaks(upsidedownSignal);
In the future, you can make this a lot faster and more effective if you attach your data so people have something to work with. See this link

Accedi per commentare.

Richiesto:

il 12 Gen 2015

Commentato:

il 19 Gen 2015

Community Treasure Hunt

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

Start Hunting!

Translated by