How to calculate the entropy of a grayscale image.

4 ビュー (過去 30 日間)
Ishara Nipuni
Ishara Nipuni 2018 年 11 月 23 日
コメント済み: Walter Roberson 2018 年 12 月 28 日
Hi can you help me to calculate the entropy of a grayscale image using Matlab? Here I've shown below the code that I tried. The code was working but I got the value of the entropy of my image as 'NaN'. So, please help me to find the entropy value of a grayscale image correctly.
I = imread('152.bmp');
x = entropy(I);
%functionH = MyEntropy(x);
imshow(x);
figure()
[Height,Width] = size(x);
[m,Binsx]=imhist(x);
m = m/(Height*Width);
sprintf('the sum of the histogram value is = %g',sum(m));
figure,plot(Binsx,m,'k')
xlabel('pixel value'),ylabel('relative count')
H = sum(-m.*log2(m));
sprintf('the entropy of the image is = %g',H)
  7 件のコメント
Anurag ch
Anurag ch 2018 年 12 月 28 日
sir,can you give me the correct definition of normalization
Walter Roberson
Walter Roberson 2018 年 12 月 28 日
1. Statistics: Standardization of data obtained from different sources at different periods, through peer review or comparison against the objectives of data collection.

サインインしてコメントする。

採用された回答

Miriam
Miriam 2018 年 11 月 23 日
Hi Ishara,
It looks like you are trying to find the height, width, and histogram using the entropy value you found. Maybe try:
[Height,Width] = size(I);
[m,Binsx] = imhist(I);
  3 件のコメント
Miriam
Miriam 2018 年 11 月 25 日
I'm not sure I understand. The entropy of your image is a single number, what do you want to plot?
Image Analyst
Image Analyst 2018 年 11 月 25 日
There is an entropyfilt() that finds the entropy in a sliding window. Why do you think you want entropy anyway? What's the use case?

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeHistograms についてさらに検索

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by