How to compute histograms of 10 bins and to use only its last 5 bins?

1 view (last 30 days)
I need to compute histogram of 10 bins of an rgb image and use only its last 5 bins. Can anyone help me with the matlab code for this.

Answers (1)

Image Analyst
Image Analyst on 4 May 2014
Edited: Image Analyst on 4 May 2014
What are you taking the histogram of? Of each color channel independently? Like:
% Extract the individual red, green, and blue color channels.
redChannel = rgbImage(:, :, 1);
greenChannel = rgbImage(:, :, 2);
blueChannel = rgbImage(:, :, 3);
% Get histograms for each color channel:
[countsR, grayLevelsR] = imhist(redChannel, 10);
[countsG, grayLevelsG] = imhist(greenChannel, 10);
[countsB, grayLevelsB] = imhist(blueChannel, 10);
To use only the last 5 bins, you just use indexes from 6 to 10 in countsR, countsG, or countsB.
  5 Comments
Image Analyst
Image Analyst on 4 May 2014
I told you how in my answer. The method you proposed is basically the histogram of all channels lumped together with even weighting, which like I said is not used very much. Usually there is a weight applied so that the green channel is more, which you can do by applying the function rgb2gray to your image before taking the histogram of it. Of course it's the histogram of the gray scale version of the image.
Attached is a demo to take the RGB Histogram of images in a folder.

Sign in to comment.

Tags

Community Treasure Hunt

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

Start Hunting!