gpt4 book ai didi

matlab - 熵函数的使用

转载 作者:太空宇宙 更新时间:2023-11-03 20:31:32 26 4
gpt4 key购买 nike

我试图在 MATLAB 中找到某个概率分布的熵。对于 p,我尝试做

E = -sum(p .* log2(p))

Echeck = entropy(p)

E和Echeck不应该一样吗?

关于熵的 matlab 帮助确实说熵定义为 -sum(p.*log2(p))其中 p 包含从 imhist 返回的直方图计数。而且熵将逻辑以外的任何类转换为 uint8 以进行直方图计数计算,因为它实际上是在尝试计算灰度图像的熵,因此希望像素值是离散的。所以我想出于我的目的使用此功能是不正确的?有更好的选择吗?

最佳答案

我用open entropy查了一下代码,有一行:

if ~islogical(I)
I = im2uint8(I);
end
p = imhist(I(:));

这意味着输入被转换为 uint8,然后函数计算输入直方图的熵,而不是输入本身。

这解释了差异。

关于matlab - 熵函数的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9013964/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com