How to count the number of extrema of image's histogram

2 vues (au cours des 30 derniers jours)
HongTu Nguyen
HongTu Nguyen le 18 Sep 2011
Hi everyone, Please give me some suggest the ways to count the number of extrema of image's histogram. Thank a lot! Nice weekend for all! HongTu

Réponse acceptée

bym
bym le 18 Sep 2011
im = imread('pout.tif');
[counts ,x]=imhist(im);
counts(x > 200)

Plus de réponses (1)

HongTu Nguyen
HongTu Nguyen le 19 Sep 2011
@proecsm: Thanks for your suggestion!
Sorry, my question is not clear. I mean that I want to guess the number of objects in image. Here is my thought:
  • I have a histogram of image: [counts x] = imhist(image);
  • I want to find its all local maxima from counts corresponding with indices from x into array.
-> is there any function for it?
Thanks.
  3 commentaires
HongTu Nguyen
HongTu Nguyen le 21 Sep 2011
Many thanks for your comment.
Yes, I saw blobsdemo. But I just want to guess how many object based on histogram. I'm learning about image segmentation. I use the eigenvectors to partion image, and then use k-means to group similar partions. So, I need to know how many the general objects. Then I choose histogram to guess that. But I don't know how to find local maxima of histogram.
Image Analyst
Image Analyst le 21 Sep 2011
You can't estimate the number of foreground objects in your image from the image's histogram unless you know the areas of the objects in your image. For example if your foreground (objects) are brighter than thresholdValue and the size of the objects is objectArea, then you can estimate the number of objects like this:
numberOfObjects = round(sum(pixelCounts(thresholdValue:end)) / objectArea);

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by