How to find the maximum peaks from histogram ?

3 views (last 30 days)
How can i find the maximum peaks from a histogram. I have tried findpeaks() function but it is giving large number of peak values.
Here image1 is the histogram of an image where in image2 i have pointed the peaks which are the maximum peaks. how can i find only the maximum peaks ?
  1 Comment
Adam
Adam on 23 Oct 2015
findpeaks has plenty of options you can set to limit the number of peaks. It also returns both the peak values and their locations allowing you to filter them yourself based on an amplitude threshold if that is what you want.
You have to define what you want to count as a 'peak' though. The thresholds you can pass to findpeaks account for many of these.

Sign in to comment.

Accepted Answer

Image Analyst
Image Analyst on 23 Oct 2015
If you have the Statistics and Machine Learning Toolbox, you can use ksdensity() to get a smoother estimate of the pdf, then use findpeaks() on that. Or if you have the Signal Processing Toolbox, run the hist through sgolayfilt() to get a smoothed histogram, then run findpeaks on that.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!