MATLAB Answers

How to use built-in entropy function

27 views (last 30 days)
i would like to calculate entropy of an image using entropy function. when use this function like this
E = entropy(uint8(output_image)
i can see a value. But when i remove uint8, i see 0 as a result. type of output_image is double. Also when i try to calculate entropy like described in this link
E = -sum(histogram_of_output_image.*log2(histogram_of_output_image));
i see NAN (not a number) as a result


Image Analyst
Image Analyst on 24 Dec 2019
Make sure there are no zeros in your image.
Mustafa Uysal
Mustafa Uysal on 24 Dec 2019
But it can be zero in any image. Why it is a problem?

Sign in to comment.

Accepted Answer

Subhadeep Koley
Subhadeep Koley on 1 Feb 2020
Hi, Can you attach your "output_image" ? So that we can reproduce the issue.
Otherwise you can try the code below.
E = entropy(uint8(rescale(output_image, 0, 255)))

More Answers (0)

Translated by