# Entropy of an image

76 views (last 30 days)
Paolo Piazza on 26 Jun 2020
Commented: ammu v on 26 Jul 2021
Hi everyone, I am new to MATLAB and I am trying to calculate and analyze the entropy of a set of images. Sometimes however, I need to crop only a certain area of a picture in order to calculate the entropy of that specific area (see attached file). The question is: does the size of an image bias the entropy value? If yes, is it possible to solve this problem?
PS: I wanted to calculate the entropy of RGB pictures but I never found the code for that

Madhav Thakker on 21 Aug 2020
Hi,
Entropy for a grayscale image is calculated as the sum(p.*log2(p)), where p contains the normalized histogram counts returned from imhist. If the resized image does not change the histogram of the original image, there shouldn’t be any change in the entropy value as well.
There is no inbuilt function to calculate entropy of RGB Images. You can refer this answer for some ways to calculate entropy of colored images. https://in.mathworks.com/matlabcentral/answers/261930-how-to-calculate-entropy-of-colored-image
Entropy documentation for better understanding - https://in.mathworks.com/help/images/ref/entropy.html
Hope this helps.
ammu v on 25 Jul 2021
this answer give a full picture.. for eg:we have to find tumor entropy, its a subject dependent size.will there be nfluence of size on entropy?

Image Analyst on 25 Jul 2021
@ammu v, to compute the entropy of just a region of interest in an image you first have to define a binary image (mask) that is the region of interest, for example the tumor. Then you can use entropyfilt() on the whole image.
entropyImage = entropyfilt(grayImage);
Then get the mean in the masked region
ammu v on 26 Jul 2021
Thnakyou for the answer. If i have an iamge of size 120*120, and another of size 150*150, will there be infulence of size in the entropy calculation

### Community Treasure Hunt

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

Start Hunting!

Translated by