摘要:将Boltzmann 原理引入数字信号领域,建立了序列的统计力学,提出了图像Boltzmann熵的概念。并将这种Boltzmann 熵与图像Shannon 熵进行系统的比较,得出如下结论:图像Boltzmann 熵本质上体现了像素的空间分布特征,天然用来衡量点集空间分布的混乱程度。
关键词: 图像;
序列Boltzmann 熵;宏观态分布;Shannon 信息熵0 Boltzmann 原理的引入Boltzmann 在文献[1]里提出了著名的Boltzmann 原理:
S = K lnΩ (1)这个原理大胆的将单一系统的熵与系统微观状态的数量联系起来。虽然在宏观热力学系统中我们无法直接验证这个原理,但它仍无可非议的成为了现代统计力学的基础之一。
宏观热力学系统微观状态数目的庞大性使我们不可能用式(1)来计算系统的熵。但是,在数字信号领域,每个信号的状态和数目则是足够少的,以至于我们可以毫不困难的引入Boltzmann 原理。
1 (0-1)序列的统计力学数字信号可以类比为一个热力学系统,信号的采样类似微观粒子,采样的取值类似于粒子的各种状态。这样数字信号就可以看做粒子的数目和状态都有限的热力学系统。下面来分1.1 理论基础给定一个包含p个1,q 个0 的(0-1)序列x(n),其中, p,q∈Z, p > 0, q ≥ 0,n = 1,2,??, N, p + q = N 。改变x(n)中0,1 的先后次序会使x(n)产生不同的排列方式。
定义1 (0-1)序列x(n)的可分辨的排列方式称为x(n)的微观态。
在这里应用量子统计的观点:序列中的1 和0 都是不可分辨的,任意交换两个1 或两个0 不会改变当前的微观状态。换个角度,x(n)代表了一系列的二进制数,这个数的不同取值对应不同的微观状态。由组合数学的基本原理易得,x(n)的微观状态总数为pCp q + 。
定义2 上述p 个1 被q 个0 分割成k 个连通部分( k > 0, k ≤ p,k ≤ q +1),称k 就是x(n)对应的宏观态,也叫做x(n)的系统状态。
宏观态是微观态的累积,序列x(n)在不同的微观态之间迁移时,序列的k也随之变化。
而且,每个k 值都对应若干的微观状态。在这里,我们要建立系统状态(宏观态)与微观态之间的桥梁。因此,本文提出如下定理。
定理1 记W( p,q, k)为以上(0-1)序列x(n)在系统状态k下对应的证:以上为题可以简化为:p 个1 被q 个0 分割成k 个连通部分,共有几种排列方式。
他可以划分为下面两个步骤:
i) p 个1 被分割成k 个部分,考虑到每个部分的先后顺序,总共有几种分割方法。
这个问题是一种有序剖分问题[2],称( ) k m ,m , ,m 1 2 ?? 为正整数p 的一个剖分,如果k m ,m , ,m 1 2 ?? 是正整数,且k p = m1 + m2 +??+ m 。这里,m (i 1,2, ,k) i = ?? 称为剖分中的项,k 称为剖分的项数。
如果把p拆分成k项(1 ≤ k ≤ p),可以看成把p个粒子放入k个格子里的问题。先将k个格子每个格子放入一个粒子,余下的问题就转换为将p ? k 个粒子放入k个格子中的问题了。
上述问题可以装换成如下图所示的排列问题:将格子(白色方框)和粒子(黑色圆点)排成一行,最左边固定一个格子,将余下的格子与粒子重新排列,将格子右边连续紧邻的所有粒子都看作放入格子中的粒子,最终问题就成了p ? k 个粒子和k ?1个格子全排列的问题。
ii) 上面k 个部分放置在q 个0 的周围,共有几种方法。
q 个0 总共能分出的q +1个位置,如下图白色方框所示:
□0□0□0□0……□0□我们从中选出k 个位置,则共有kq C +1种放法。定理3 说明了一个(0-1)序列的熵为非正数,当且仅当熵增长到最大时,取值为0。
下面我们用元胞自动机模型[3]来验证上述理论。建立一个100×100的格网,格网里有各占一半的黑白元胞分布而成,格网处于初始状态时网格的左半边全是黑元胞,右半边全是白元胞,自动机运行规则为:随机选择一元胞与周围四邻域中任意一个元胞交换位置。这样就模拟了一个经典的扩散过程,如图2 所示,(a)图是初始状态下的元胞分布,(b)图是变换了100000 次的元胞分布,(c)图是变换了300000 次的元胞分布,(d)图是变换了600000 次的元胞分布,(e)图是整个仿真过程中熵的变化。自动机经历的每个状态都可以按列存储为一个(0-1)序列(“1”代表黑,“0”代表白),序列熵也代表了自动机状态的熵。可以得出结论,序列的熵与扩散过程是完全对应的,我们也从侧面检验了Boltzmann原理的正确性。笔者对上述元胞自动机生成的粒子集进行大量仿真,发现一个日常认识中的误区。对于一个离散二元系统(简单的黑球白球混合),我们通常认为的最乱状态并非出现概率最大的状态。如图3 所示,一个由400 个黑色元胞和800 个白色元胞组成的自动机,在运行过程中经历的四个特殊状态。图(a)(b)中参数k 达到了最大,此时每个黑球都被白球隔离开,相当于黑球完全扩散开,也就是我们通常认为的最乱状态,而此时的序列熵远没有达到最大,换句话说,黑球完全扩散开的宏观态对应的概率相当的小,几乎不会出现;图(c)(d)中序列熵达到了最大,参数k 则只有最大时的一半,此时黑球和白球都有很多连续的小团块。
这预示着常见的扩散现象远没我们想象的简单,粒子混合时,完全分散开的情况是几乎不可能出现的,而最终的稳定态通常是各种粒子“大杂居小聚居”,这与我们的日常感觉是一致的。
2 图像的Boltzmann 熵在数字图像处理领域,我们通常用熵来体现图像的全局统计特性或者作为图像的特征评价函数。图像熵的种类非常多,最著名的要属直方图熵[4]和Frieden 熵[5],这两种熵虽然对图像的每个像素或所有灰度进行了统计,得到该图像所含的平均信息量,但是并没有考虑到像素的空间位置关系,丢失了图像的空间分布信息;Pnatt 定义的熵[6]和文献[7~8]定义的熵,考虑到相邻像素间的关系和图像空间分布信息的,利用图像点集的分散程度及局部浓度来获取图像的相关特征,但是不论理论还是计算都非常复杂。所有的这些熵都起源于Shannon信息熵,在数学形式上来说都是Shannon 信息熵的变形。
Boltzmann 熵和Shannon 熵虽然在本质上是一致的,但是在数学形式和理论依据上有极大的不同,本文尝试用Boltzmann 熵来建立一套全新的图像熵理论。数字图像可以看做是一个二维多元的序列,如果将其按bit 表示,则其本质上也是一个(0-1)序列,这样就可以用序列的Boltzmann 熵来表达图像,我们称之为图像的Boltzmann 熵。将图像按bit 方式计算虽然直接,但是计算量大,复杂度较高。对于一般数字图像,可以尝试用二值化和降维的方法来处理图像,将其转化为一维(0-1)序列。
2.1 二值图像的 Boltzmann 熵二值图像已经是(0-1)序列了,不需要二值化的过程,只需通过降维的方法就可以转变为一维(0-1)序列了。这种高位序列降维的过程被称为空间编码,空间编码是按照某种策略对图像的像素点进行组织。换句话说,就是将高维空间对象按一定编码函数映射到一维空间的过程。最常用的空间编码方法有:Zigzag 编码、Hilbert-Peano 编码、Morton 编码等[9]。
在实际应用中,我们通常将图像按行或按列排列为一维序列,这是空间编码的最简形式。
2.2 灰度图像的 Boltzmann 熵灰度图像相比二值图像要复杂的多。灰度图像是二维多元序列,要先二值化为二元序列,才能按照二值图像的方法进行降维处理。灰度图像二值化的处理方法很多,大致可分为两大类:全局阈值方法和局部比较方法。经典的全局阈值算法有:OTSU 法、P-Tile 法、最佳阈值法等[10-11];其中典型的局部比较方法有Kamel-Zhao 算法和Bernsen 算法等[12-14]。在这里提出一种基于梯度图像的二值化方法,这种方法简便易行,又能在二值化过程中能够最大限度地保留像素的空间分布信息,算法的步骤如下:
首先,计算梯度图象。定义原图像为f (x, y),则其梯度图象定义为最后,将G[ f (x, y)]作为阈值对梯度图象进行二值化。
图像熵作为图像特性的一个指标在数字图像处理领域经常得到应用。为了对比前面叙述的这几种熵,笔者进行了若干实验。试验的图像库包含227 幅不同的灰度图象,包括动物、建筑、自然景物等不同类型的图像。对直方图熵、Frieden 熵和本文的Boltzmann 熵进行详细的对比,发现Boltzmann 熵对图像分类的结果和人眼的主观感受是一致的。
3 图像 Boltzmann 熵的应用3.1 Boltzmann 熵在图像二值化上的应用图像二值化的目的是最大限度的将图象中感兴趣的部分保留下来,在很多情况下,也是进行图像分析、特征提取与模式识别之前的必要的图像预处理过程。这个看似简单的问题,在过去的四十年里受到国内外学者的广泛关注,产生了数以百计的阈值选取方法,但如同其他图像分割算法一样,没有一个现有方法对各种各样的图像都能得到令人满意的结果。在这里笔者提出用Boltzmann 熵作为判决准则图像二值化方法,并将其与经典的OTSU 法进行比较。
OTSU 算法可以说是自适应计算单阈值(用来转换灰度图像为二值图像)的简单高效方法。该方法是基于图像中目标和背景两类别的可分离性提出的,它假设图像中目标和背景构成的混合密度函数是由两个服从等方差正态分布的子分布构成。OTSU 方法以图像的灰度直方图为依据,以目标和背景的类间方差最大为阈值选取准则。由于图像的类间方差与阈值(各灰度级)在大部分区间都具有单调的函数关系,使得OTSU 分割结果在绝大部分情况下都是鲁棒的,因此该方法成为广泛流传的图像分割方法。
如前所述,我们可以不经任何预处理就直接计算二值图像的Boltzmann 熵,这就意味着在灰度图象二值化问题中,选取不同的灰度阈值就对应不同的Boltzmann 熵,因而可以将Boltzmann 熵作为衡量阈值的标准。试验发现,图像的Boltzmann 熵与阈值(各灰度级)之间在大部分区间也具有单调的函数关系,并且具有稳定的全局极小值。类似OTSU 方法,我们以Boltzmann 熵最小作为阈值选取准则构造一种新的二值化方法,这种新方法除了具有与OTSU 方法相当的鲁棒性之外,在有些情况下,还会得到更好的分割结果。
3.1 Boltzamann 熵在图像置乱度评价上的应用数字图像置乱技术作为数字图像加密的一种途径,可以用作信息隐蔽、数字水印图像植入,近年来一直是研究的热点。对于图像来说,图像置乱的效果越好,说明其加密性越好,隐蔽性越好,抗检测能力越高[15-18]。因此,对置乱程度的研究在信息加密隐藏领域有重要的理论和实际意义。
一般来说,置乱后图像相对于原始图像越“乱”,表明该置乱效果越好。这里的“乱”
是相对于原始图像的视觉效果,也就是置乱图像与原始图像相应位置的像素偏离程度。而图像Boltzmann 熵是正是衡量像素空间分布混乱程度的,天然适合于作置乱度评价。
在图像置乱过程中,图像的统计特征恒定,各个像素的灰度值不发生变化。由于图像的灰度均值在置乱后保持不变,因此我们可以简化计算Boltzmann 熵的二值化步骤,将图像灰度均值作为阈值求得二值化的图像。在此基础上,根据置乱前后数字图像Boltzamann 熵的变化,提出了一种置乱程的度量化公式。下面一行为矩阵变换),其前10 次置乱的置乱程度如表2 所示。其中0 次表示原始图像,相应的置乱程度应理解为图像本身具有的乱度。比较图6 和表2 不难发现,按(5)式计算的置乱程度与主观评价基本一致。这种置乱变换的置乱次数和置乱程度的关系如图7 所示,注意到矩阵变换和Arnold 置乱变换的周期同为为120,而且置乱程度具有明显的“半周期性”,不过Arnold 变换的“半周期性”比矩阵变换的明显的多。3.3 Boltzamann 熵在图像自动聚焦上的应用图像自动聚焦在图像处理许多领域里都有应用。如数码相机、遥感卫星、生产线检测等。
尤其涉及视觉测量的场合,需要借助计算机对物体的空间位置、形状轮廓等参数进行测量。
视觉测量的精确程度关系到整个系统的性能,而成像是否清晰,或者说被摄物体是否处于成像系统的焦平面上,是影响测量精度的一个关键问题。目前,许多学者在图像的自动聚焦及聚焦判别函数的选取等方面做了大量的研究工作,给出了一些判据和系统调焦策略。很多文献都利用图像的直方图熵(Shanonn 熵)作为聚焦评价函数,但是不同学者得到的评价准则不同。有人认为图像越清晰信息熵越大;而有人正好得出相反的结论[20-21]。
在这里用Boltzmann 熵作为图像清晰度评价函数,选则梯度图象二值化作为二值化方法。试验发现:图像越清晰Boltzmann 熵越小,图像越模糊Boltzmann 熵越大,为此我们将最小熵(最清晰)作为参考将所有熵归一化,得到图像清晰度的定义。经过大量的实验,发现Boltzamann 熵在图像调焦过程中得到的结果是一致的,即:图像调焦正确时,Boltzamann 熵最小,且越接近焦距,熵变化越快,远离焦距,熵变化越缓慢。而直方图熵得到的结果不一致,有的图像在正确对焦时直方图熵最大,有的图像在正确对焦时熵最小,还有的图像的直方图熵的极值不在图像最清晰时出现,甚至出现了双峰和多峰的情况。由此看来,利用直方图熵(Shannon 熵)作为调焦的评价函数是不够合理、准确的。
4 结论图像的 Boltzamann 熵从本质上来说是正是衡量像素空间分布的,Shannon 信息熵在处理这类问题时是无能为力的,将Boltzamann 熵作为数字图像处理中描述图像信息的函数,具有天然的优势;图像的Boltzamann 熵在计算过程中牵涉到图像二值化过程,在不同的应用中需要选取不同的二值化方法,计算相对繁杂;本文对这种新的图像熵在图像的分类、评价、测量等领域的应用进行初步的探讨,还有更广阔的应用有待于探索和发掘。
文章来自中国论文发表网,本站是专业的中国论文代写网,如需转载请保留一个链接:http://www.lunwen56.com/post/cat_12.html
原创文章如转载请注明:转载自『中国论文发表网』 http://www.lunwen56.com/

文章排行
相关文章:
野泉烟火白云间,坐饮香茶爱此山。岩下维舟不忍去,青溪流水暮潺潺。
发表评论: