我了解到这是像素的随机性。但请帮助了解如何以数学方式计算这种随机性。以及不同的图像如何具有不同的熵。
最佳答案
您也可以直接从 img
计算香农熵.做就是了:
import skimage.measure
entropy = skimage.measure.shannon_entropy(img)
如果你想看看背后的数学:import numpy as np
marg = np.histogramdd(np.ravel(img), bins = 256)[0]/img.size
marg = list(filter(lambda p: p > 0, np.ravel(marg)))
entropy = -np.sum(np.multiply(marg, np.log2(marg)))
一、marg
是二维灰度图像的边缘分布img
. bins
对于 8 位图像,设置为 256。然后你需要过滤掉等于零的概率,最后对剩余元素求和 np.multiply(marg, np.log2(marg))
,由 Shannon's entropy 定义.
关于image-processing - 什么是图像的熵以及它是如何计算的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50313114/