can u please tell me how to write the number of unique hues included in an in matlab?

3 views (last 30 days)
i have written a code
image = imread('filename');
figure, imshow(image);
hsv_image = rgb2hsv(image);
i = hsv_image(:,:,2)>0.2.* (hsv_image(:,:,3)>0.15 .* hsv_image(:,:,3)<0.95);
figure
hist(i,20);
and further i would like to know how to do this in matlab.
Suppose Q is the maximum value of the histogram. Let the
hue count be the number of bins with values greater than c ⋅Q ,
q = maximum value in histogram
N = {i | H(i) > cq}
here C= 0.1.
plz help me......

Accepted Answer

Image Analyst
Image Analyst on 3 Oct 2013
I don't know what you're doing by calculating i. What's the point of that? To get the number of unique hues, you can use the unique() function.
hsv = rgb2hsv(rgbImage);
hueImage = hsv(:,:,1);
numberOfUniqueHues = unique(hueImage)
  7 Comments
mohammed
mohammed on 4 Oct 2013
thanks for replay.. actually i want to write a program for.
f = # of{ i | h( i) > c ⋅Q }
The number of pixels that belong to the most frequent hue is calculated as:
f = max{h (i)}
The hue contrast can be calculated as :
f = max(|| I(i) – I(j)||) ,
i, j ∈ {k | h (k) > c ⋅Q }
where I(i) is the center hue of the ith bin in the hue histogram. The distance metric • refers to the arc-length distance on the hue wheel.
but i am unable to understand how to formulate in matlab....... plz help me......

Sign in to comment.

More Answers (1)

Walter Roberson
Walter Roberson on 3 Oct 2013
h = hist(hsv_image(i), 20);
q = max(h);

Categories

Find more on Data Distribution Plots in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!