图像信息熵

写论文时用到了利用图像信息熵去表达图像信息的相对复杂程度,这里转载一下那篇博客。
原文链接:
https://blog.csdn.net/qq404752007/article/details/51337773
图像处理大型科普—图像信息熵
哪里来的信息熵?
在很多图像处理的过程中,需要判别一个图像的清晰度,和图像分割结果的优劣,于是就引出了信息熵的概念,绝大多数时候,它都被用来作为评价图像的一个量化标准。

某度百科定义如下:

“信息熵这个词是C.E.香农从热力学中借用过来的。热力学中的热熵是表示分子状态混乱程度的物理量。香农用信息熵的概念来描述信源的不确定度。”

“熵被用来衡量一个随机变量出现的期望值。它代表了在被接收之前,信号传输过程中损失的信息量,又被称为信息熵”

计算信息熵的matlab代码:

function [res] = ImgEntropy(I)
%求图像熵值
%传入一张彩色图片的矩阵
%输出图片的图像熵值

I_gray = rgb2gray(I);
[ROW,COL] = size(I_gray);


%%
%新建一个size =256的矩阵,用于统计256个灰度值的出现次数
temp = zeros(256);
for i= 1:ROW

for j = 1:COL
%统计当前灰度出现的次数
temp(I_gray(i,j)+1)= temp(I_gray(i,j)+1)+1;

end
end

%%

res = 0.0 ; 
for  i = 1:256
%计算当前灰度值出现的概率
temp(i) = temp(i)/(ROW*COL);

%如果当前灰度值出现的次数不为0
if temp(i)~=0.0

res = res - temp(i) * (log(temp(i)) / log(2.0));
end
end
disp(res);
end

关于对信息熵的理解:
https://www.zhihu.com/question/22178202?sort=created

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
彩色图像信息是用来衡量彩色图像中像素值的不确定性或者信息量的指标。它可以用来评估图像的复杂度和纹理丰富程度。 在Matlab中,可以通过以下步骤计算彩色图像信息: 1. 读取彩色图像:使用imread函数读取彩色图像,并将其存储为一个三维矩阵,其中每个元素表示一个像素点的RGB值。 2. 转换为灰度图像:将彩色图像转换为灰度图像,可以使用rgb2gray函数。 3. 计算直方图:使用imhist函数计算灰度图像的直方图,得到每个灰度级别的像素数量。 4. 计算概率分布:将直方图中每个灰度级别的像素数量除以总像素数量,得到每个灰度级别的概率分布。 5. 计算信息:根据概率分布计算信息,可以使用以下公式: entropy = -sum(p .* log2(p)) 其中,p表示每个灰度级别的概率分布。 下面是一个示例代码: ```matlab % 读取彩色图像 image = imread('color_image.jpg'); % 转换为灰度图像 gray_image = rgb2gray(image); % 计算直方图 histogram = imhist(gray_image); % 计算概率分布 total_pixels = numel(gray_image); probability = histogram / total_pixels; % 计算信息 entropy = -sum(probability .* log2(probability)); ``` 请注意,这里的示例代码是基于将彩色图像转换为灰度图像来计算信息的方法。如果您想要计算彩色图像信息,可以将步骤2中的灰度图像替换为彩色图像,并相应地调整步骤3和步骤4中的计算。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值