图像的熵


21

信息/物理学理论上计算图像熵的最正确方法是什么?我现在不在乎计算效率-理论上我希望它尽可能正确。

让我们从灰度图像开始。一种直观的方法是将图像视为像素包,然后计算 ,其中是灰度级的数量,是与灰度级相关的概率。K p k k

H=kpklog2(pk)
Kpkk

这个定义有两个问题:

  1. 它适用于一个频段(即灰度级),但是应该如何以一种统计正确的方式将其扩展到多个频段?例如,对于2个频段,一个人应该基于基于并因此基于PMF 吗?如果一个具有多个( >> 2)波段,则,这似乎是错误的。P X 1 = X 1X 2 = X 2P X 1 = X 1X = X 1 / Ñ ħ 中号X(X1,X2)P(X1=x1,X2=x2)BP(X1=x1,...,XB=xB)1/NBHMAX
  2. 不考虑空间信息。例如,下面的图像(John Loomis的监护人)具有相同的,尽管显然它们没有传达相同的信息。H

在此处输入图片说明在此处输入图片说明

是否有人愿意解释或提出建议,或让我参考有关该主题的一些不错的参考资料?我主要对第二个问题(即空间信息)的理论上正确的方法感兴趣。


2
我认为您应该查看markov
seanv507 '16

1
也是灰度共现矩阵
seanv507 '16

@ seanv507,是的。我现在正在研究无向图形模型或马尔可夫随机场。我知道更多后会回发。
达沃·乔西波维奇

Answers:


17

“计算图像熵的最信息/物理学理论上正确的方法是什么?”

一个很好的及时问题。

与普遍的看法相反,确实有可能为图像定义一个直观(和理论上)的自然信息熵。

考虑下图:

在此处输入图片说明

我们可以看到,差分图像的直方图更加紧凑,因此其Shannon信息熵更低。因此,我们可以通过使用二阶香农熵(即从差分数据得出的熵)来获得较低的冗余度。如果我们可以将该思想各向同性地扩展到2D,那么我们可以期望获得对图像信息熵的良好估计。

梯度的二维直方图允许2D扩展。

我们可以将论据形式化,实际上,这是最近完成的。简要介绍一下:

简单定义(例如参见MATLAB的图像熵定义)忽略空间结构的观察至关重要。要了解发生了什么,值得简要回到一维案例。众所周知,使用信号的直方图来计算其Shannon信息/熵会忽略时间或空间结构,并且对信号的固有可压缩性或冗余性的估计会很差。该解决方案已在Shannon的经典著作中提供;使用信号的二阶属性,即转移概率。1971年的观察(Rice&Plaunt)认为光栅扫描中像素值的最佳预测值是前一像素的值会立即导致差分预测值和二阶Shannon熵,这些熵与简单的压缩思想(例如行程编码)对齐。这些想法在80年代后期得到了完善,产生了一些仍在使用的经典无损图像(差分)编码技术(PNG,无损JPG,GIF,无损JPG2000),而小波和DCT仅用于有损编码。

现在移至2D;研究人员发现,在不引入方向依赖性的情况下,很难将香农的思想扩展到更高的维度。直观上,我们可以期望图像的香农信息熵与图像的方向无关。我们还期望具有复杂空间结构的图像(如发问者的随机噪声示例)比具有简单空间结构的图像(如发问者的平滑灰度示例)具有更高的信息熵。事实证明,很难将Shannon的思想从1D扩展到2D的原因是Shannon的原始公式中存在(单侧)不对称性,从而阻止了2D中的对称(各向同性)公式。一维不对称性得到纠正后,二维扩展即可轻松自然地进行。

切入正题(有兴趣的读者可以在https://arxiv.org/abs/1609.01117的arXiv预印本中查看详细的论述),其中图像熵是根据梯度的2D直方图(梯度概率密度函数)计算的。

首先,通过对图像x和y导数的估计值进行分箱来计算2D pdf。这类似于用于生成一维更常见强度直方图的合并操作。可以通过在水平和垂直方向上计算的2像素有限差异来估算导数。对于NxN个正方形图像f(x,y),我们计算偏导数fx的NxN值和fy的NxN值。我们扫描差分图像,然后对每个像素使用(fx,fy)在目标(2D pdf)数组中定位一个离散的bin,然后将其递增1。我们对所有NxN像素重复。必须将生成的2d pdf进行归一化以具有整体单位概率(通过除以NxN即可实现)。2D pdf现在可以用于下一阶段了。

从2D梯度pdf计算2D Shannon信息熵很简单。香农(Shannon)的经典对数求和公式直接适用,但有一半的关键因数来自梯度图像的特殊带限采样考虑因素(有关详细信息,请参见arXiv论文)。与估计2D熵或无损压缩的其他(更多冗余)方法相比,半因子使计算的2D熵甚至更低。

对不起,我还没有在这里写下必要的方程式,但是所有内容都可以在预印本中找到。计算是直接的(非迭代),并且计算复杂度为NxN阶(像素数)。最终计算出的Shannon信息熵与旋转无关,并且精确地对应于以非冗余梯度表示形式对图像进行编码所需的位数。

顺便说一下,在原始问题中,新的2D熵测度预测了(直观上令人愉悦的)熵,其中随机图像的像素为8位,平滑梯度图像的像素为0.000位。


1
有趣的工作。现在,Razlighi在本文中对几种熵算法进行了比较 。我不知道您会如何比较,尤其是在他在那里使用的合成图像上。可能值得调查。
达沃·乔西波维奇

感谢您提及Razlighi的论文。关键的测试结果如图2所示。我相信我的2D熵度量将具有相关性为0.0的单位归一化熵,然后对于相关性为1.0降至接近零归一化熵。我没有真正计算出这些值,但是它直接从我的arXiv预印本第3.2节中得出,因为高相关性对应于低频谱带宽,因此熵也较低。
基兰·拉金

我喜欢这种方法。对我来说似乎很直观。在计算熵之前计算梯度的附加步骤似乎是直观地对空间信息进行编码。我试着玩,并计算出它与Python 在这里。但是我很难从您的论文中复制出腐蚀性(参见代码,最后一个例子)。我只能用花车繁殖它们!这是因为,即使使用16位,对于我的测试图像,即使使用16位,直方图的梯度也只有[-6,6],梯度为[-6,6]。
mxmlnkn

你的论文曾经发表过吗?您或其他人继续工作吗?
Andrei

Matlab示例代码会很棒。
Pedro77

8

没有,这完全取决于上下文和您的先前信息。熵有许多解释,例如“顺序的度量”或“信息的度量”,但是除了查看这些解释之外,您还可以查看其实际含义。熵只是表达系统状态数的一种方式。状态多的系统具有较高的熵,状态少的系统具有较低的熵。

您和您链接到的文章-指出两个图像具有相同的熵。这对我来说是不正确的。

该文章正确地计算出了熵。

H=kpklog2(pk)

对于第一个图像,任何像素都可以具有任何灰度值,

pk=1M=2n

因此,熵为:

H=-ķpķØG2pķ=-ķ2-ñØG22-ñ=-ØG22-ñ=ñ

但是,第二张图像并非如此。

熵仍然可以计算为:

H=-ķpķØG2pķ

但是您不能简单地说,因为当您发现是一个值时,您知道是相同的值。p1p2p3p4pmanypķ=1个中号=2-ñp1个p2p3p4p一种ñÿ

因此,两个图像不具有相同的熵。

听起来反常是熵取决于您如何看待问题。但是,您可能从压缩中知道它。文件的最大压缩由Shannon的源编码定理确定,该定理设定了压缩算法可以对文件进行多好的压缩的上限。此限制取决于文件的熵。所有现代压缩程序都将压缩接近此限制的文件。

但是,如果您知道该文件是音频文件,则可以使用FLAC而不是某些通用压缩器对其进行压缩。FLAC是无损的,因此可以保留所有信息。FLAC无法绕开Shannon的源编码定理,即数学运算,但它可以通过减小文件熵的方式查看文件,从而进行更好的压缩。

相同地,当我看第二张图像时,我发现像素是按灰度值排序的,因此它对我的熵与具有随机噪声的图像的熵不同。


我认为OP知道是否这样做-他正在要求包括空间信息的概率模型
seanv507 16/09/16

@ seanv507我重新阅读了问题。我不确定是否同意你的看法。我相信OP正在寻找不存在的东西。
bottiger

H

@bottiger FLAC无法减少音频文件的熵,因为按照定义,这将是有损压缩。它通过消除冗余来实现压缩。
Paul Uszak '16

说经典的熵公式仅在像素值完全独立的情况下才是正确的,也许是正确的?
Volperossa

2

本质上,的概念类似于“与宏观状态一致的微观状态的数量”。

p[一世H]一世p[H一世]

H一世


1

H=-ķpķØG2pķ

不要在工作实践中,原因很简单,它几乎不可能确定PK。您认为可以做到,就像您考虑灰度级的数量一样。PK不是那样。Pk是灰度的所有可能组合。因此,您必须考虑像素的1,2,3 ...组合来创建多维概率树。如果您读过Shannon的著作,您会发现他对普通英语的计算是考虑到3个字母的树深。然后,如果没有计算机,它将变得笨拙。

您用语句2证明了这一点。这就是为什么您的熵计算对两幅图像返回相同水平的熵的原因,即使一个图像显然比另一个图像的顺序少。

熵计算中也没有这种空间分布的概念。如果存在,则还必须对时间分布的样本计算不同的熵。对于11维数据阵列,您将做什么?用于信息熵;它以字节为单位。

只需使用压缩算法压缩图像即可。它将输出以字节为单位的熵估计值。它将对任何图像或几乎任何其他可以数字化的内容(例如音乐或莎士比亚戏剧)执行此操作。

所以。您的随机映像大约包含114 KB,订购的映像大约包含2.2 KB。这就是您所期望的,但是您已经知道这种情况,因为您看到的图像文件大小就是这个大小。我将压缩大小减少了33%,以便将来可以改进压缩算法。随着改善曲线逐渐渐渐接近真正的基础价值,我看不到他们会进一步改善。

PS出于兴趣,莎士比亚通过这种技术计算出的一生中仅产生1 MB的熵。虽然大多数都还不错。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.