Clear Filters
Clear Filters

How can i calculate the entropy of the region of interest of an RGB image?

2 views (last 30 days)
I know how to calculate the entropy of an RGB image.First ,vectorize the image and finally use it as a parameter of the entropy() function.
image_vector = double(original_RGB_image(:));
entropy_of_the_image = entropy(image_vector);
But what should we do to calculate the entropy of the region of interest of image?
I know one approach.Somehow,convert it into a black-white image(white=1) and use the inverse of the black-white image as a parameter of the original RGB image.I think,then the background color will be black .But it doesnot work.The background(sourrounding) became blue(something like that) instead of black? what should i do? Here is my code...
a=imread('ISIC_0000001 w.jpg');
a=imresize(a,[300 300]);
mkr=a;
figure,
imshow(mkr);
im=rgb2gray(a);
level=graythresh(im);
a=im2bw(im,level);
figure,
imshow(a);
mkr(a)=nan;
figure,
imshow(mkr);

Accepted Answer

Image Analyst
Image Analyst on 19 Aug 2017
Edited: Image Analyst on 19 Aug 2017
You can do this:
entropyWithinMask = entropy(im(a));
You might also want to look at entropyfilt() for a spatial filter based on entropy.
  3 Comments
Walter Roberson
Walter Roberson on 20 Aug 2017
Edited: Walter Roberson on 20 Aug 2017
"Entropy is defined as
-sum(p.*log2(p))
where p contains the histogram counts returned from imhist."
This does not imply that an image with more colors has higher entropy: it depends on how the bins are distributed.
Sadia Iffat
Sadia Iffat on 20 Aug 2017
So,why entropy is used for image classification? How can i understand when i should measure entropy for the classification problem?

Sign in to comment.

More Answers (0)

Categories

Find more on Modify Image Colors in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!