基于最大熵的直方图阈值分割算法苏茂君1 陈锐1 马义德1*1兰州大学信息科学与工程学院,兰州 (730000)Email: ydma@摘 要:本文对图像阈值化分割算法进行了研究,提出了一种基于最大熵的直方图阈值分割算法,并通过几种常用的评价准则对本文算法和几种典型的图像分割算法进行了客观而定量的评价和比较,实验结果表明:基于最大熵的图像自动阈值选取分割算法分割效果良好,要优于常用的直方图分割算法。
关键词:图像分割 直方图 分割评价 信息熵1. 引 言图像的二值分割是数字图像处理中的一个很重要的研究领域。
图像的二值化在计算机图像处理技术中的应用非常广泛,可以应用于目标识别、图像分析、文本增强、字符识别、牌照识别等各种应用领域,因此对其进行深入研究具有很重要的实际意义。
图像的二值分割就是把一幅图像分成目标和背景两大类,传统的二值分割方法主要是根据目标和背景的灰度分布差异选取适当的阈值进行分割,因此如何来选取阈值是图像分割的关键问题。
本文中我们首先研究和分析了三种典型的图像阈值分割算法:直方图谷点阈值选取算法[1]、最大类间方差法(OSTU)[2]、基于灰度期望值的图像分割算法[3]。
并在此基础上,通过对常用直方图谷点阈值选取算法以及信息熵的研究,提出了一种基于最大熵的直方图阈值分割算法,该算法不依赖于人的主观参与,利用计算机自动选取最佳阈值。
为了将本文提出的图像分割算法与常用的经典分割算法进行比较,我们运用了几种典型的并且通用性较强的图像分割评价准则[4、5、8]:区域内部均匀性准则(UM),形状测度准则(SM)和区域对比度准则(GC),对不同分割算法下的分割结果进行了比较和评价,实验结果表明:本文提出的基于最大熵的自动图像阈值选取分割算法分割效果要明显优于传统基于直方图的阈值分割算法,分割效果良好。
2. 常用图像二值分割算法2.1直方图谷点阈值选取算法这是最简单的一种图像阈值分割算法,一般是根据图像的直方图来进行的。
基本原理是:如果图像的目标和背景区域的灰度差异较大,则该图像的灰度直方图包络线就呈现双峰一谷的曲线,那么选取两峰之间的谷值就可以作为阈值来分割图像的目标和背景[1]。
这种方法在图像的目标和背景之间的灰度差异较为明显时,可以取得良好的分割效果,通常可以满足我们的分割要求。
虽然由于该方法对图像直方图的特殊要求和依赖,使其在图像分割中具有一定的局限性,但其操作简单运算量低,因此也被经常使用。
2.2基于灰度期望值的图像分割算法在对随机变量的统计过程中,期望值是一个十分重要的统计特征,它反映了随机变量的平均取值,类似于物体的质量中心,因此从灰度“中心”进行分割应当是最佳的分割平衡点。
灰度图像的数学期望值[3]可以按下式计算得到: 1()Nthreshold n n n L P L µ==∑ (1)其中为图像的灰度级,为灰度级出现的概率。
n L ()n P L n L上式是一种基于全局的阈值分割法,分割效果要优于灰度差直方图法、微分直方图法以及非等同熵法[3],并且该算法的复杂度较低且处理速度较快。
2.3最大类间方差法(OSTU)最大类间方差法[2]也称大律法,其基本原理是:对一幅图像,记T为目标与背景的分割阈值,T的取值范围是从最小灰度值到最大灰度值;目标点数占图像像素点数的比例为,平均灰度为A W A µ;背景点数占图像像素点数的比例为, 平均灰度为B W B µ。
图像的总平均灰度为µ。
则两类间方差的计算公式为: 2σ22()()()A A B B T W W 2σµµµµ=−+− (2)即阈值T将图像分成目标和背景两部分,使得两类总方差取最大值的T即为最佳分割阈值。
因为方差是图像灰度分布均匀性的一种度量,方差越大说明构成图像的两部分差别越大,而部分目标错分为背景或部分背景错分为目标都会导致两部分差别变小,因此使类间方差最大的分割意味着错分概率最小)(T 2σ[ 6 ]。
大量实验结果表明OSTU算法对图像的分割质量通常都有一定的保障,对各种情况的表现都较为良好,可以说是比较好的一种分割算法。
3. 常用图像分割效果评价准则3.1 区域内部均匀性(Uniformity Measure)分割就是要把一个原始图像f(x,y)分成若干个内部具有相似特性的区域,所以可用分割图像中各区域内部均匀的程度来描述分割图像的质量。
如用Ri表示第i个区域,Ai表示其面积,则分割图像的均匀性测度[4]UM为: 2(,)(,)111{[(,)(,)i i n i x y R x y R iUM f x y f x y C A ∈∈=−−∑∑∑]} (3) C 为归一化系数,在二值图像中i 即为2,UM 的值越大,分割效果就越好,所用的算法性能也就越好。
3.2形状测度准则(Shape Measure)一个好的图像分割结果应该有一个好的目标轮廓,区域形状测度就是来衡量目标轮廓光滑程度的一个指标,其形状测度计算公式[4]为: (,)1()gn[(,)(,)](,)sgn[(,)]N x y SM t S f x y f x y x y f x y t C =−⋅∆⋅∑− (4) 其中,(,)N f x y 为邻域N(x,y)的灰度均值,t 为灰度阈值,∆(x,y)为广义梯度,C 为归一化因子,而。
{11()x x Sgn x ≥−<=003.3 区域对比度(Gray-Level Contrast)图像二值分割是按照目标和背景的灰度差异将图像分割成两个不同区域,如果这两部分区域的灰度分布特性差别比较大,也就是说灰度对比度较大,也可以推断出所用分割算法的性能优劣。
对于目标和背景这两个区域来说,如果它们各自的平均灰度分别为:fo和fb,则它们之间的灰度对比度计算公式[5]GC为:||()o b o bf f GC t f f −=+ (5) 由上述分析可知灰度对比GC 越大,则分割效果就越好。
4. 本文算法和实验结果讨论4.1 本文算法灰度直方图在图像分割技术中得到了广泛应用, 通常情况下, 当图像的目标和背景之间的灰度分布具有明显差别时,显示在直方图上大致就是两个峰值,通常选取较明显的波谷位置即可得到较佳的阈值。
但实际情况一般要比这复杂的多:首先由于图像的灰度分布往往不是很均匀,并且图像背景也很有可能受到噪声影响,从而使图像的直方图存在多个且不明显的谷值, 在这种情况下要得到合理的图像分割阈值是十分困难的;另外,常用的确定谷值的方法是先做直方图,然后人工找谷点,因为直方图往往参差不齐,很难找出理想的谷值。
众所周知,熵是图像统计特性的一种表现形式,反映了图像包含信息量的大小。
因为对于绝大多数图像来说,不管采用何种分割算法,一般分割后图像熵值越大,说明分割后从原图得到信息量越大,分割图像细节越丰富,因而总体分割效果也应越好[7]。
这一点进一步得到了我们实验的验证,如图1和图2所示:图1是lena 图像的灰度分布直方图,文中我们特意取了直方图中的七个明显的谷值作为分割阈值(见表1),图4是我们对lena 图像取上述阈值时所得到的对应的分割图像,图2是从不同阈值下的分割结果得到的“阈值—熵”关系曲线图,从图2和图4的对应关系中很容易得知,信息熵是一个上凸函数,并且当熵值较大时所对应的分割效果也较好,如:在T=110和134时熵值较大,曲线处于峰值附近,且他们所对应的分割效果如图4所示也优于其他几幅。
因此我们得出结论:熵值最大时所对应的阈值即可当作最佳阈值。
香农熵公式为:H S p p p p=−− (6)()1ln10ln0其中P1和P0分别表示分割图像二值输出为1和0的概率。
上式即为一幅图像分割后的二值序列中输出值为1和值为0的像素所含信息量的统计平均值。
T=54 T=105 T=110 T=134 T=149图4 lena图像在不同谷值处分割所得到的结果因此,我们对常用的直方图阈值选取算法进行了改进并提出了如下算法,算法流程图如图3所示:当图像的目标和背景对比并不是很强烈,并且存在多个不明显的波谷时,我们首先计算出图像的直方图,然后按照迭代算法(下文将讲到)求出其中所有的谷值,并取各个谷值作为阈值分别对图像进行分割,最后求出所有分割图像的信息熵,则所求熵值最大的一个谷值即可作为图像的最佳分割阈值。
本算法中谷值的迭代寻找过程为:在图1所示的直方图中每三个连续点为一组寻找一个最小值做为谷值,得到谷值序列P={p1,p2,p3……};在第二次迭代过程中,将P序列再按照第一次迭代过程所采用方法再求取谷值;继续迭代直到谷点个数较少为止,此时得到最终谷点序列PT,一般情况迭代三四次即可得到少数几个谷点。
4.2 实验结果我们将本文的改进算法与上文提到的几种典型图像分割算法进行了比较,图5是lena 图像在不同分割算法下的分割结果:(a)图是采用常用的直方图谷点阈值选取算法所得到的分割结果,选取的阈值是在直方图上人工寻找到的最佳谷值作为阈值,很明显由于lena图像的直方图(图1)是多峰的,很难人工找出最佳的分割阈值;而其他三幅分割结果从主观上看,分割效果都较好,差别不是很明显:(a)常用直方图谷点阈值分割 (b)最大熵阈值选取算法 (c)数学期望法 (c)OSTU图5 不同分割算法下得到的分割结果但为了从客观上对分割结果进行比较,我们采用了三种通用性较强的评价准则:区域内部均匀性准则(UM),形状测度准则(SM)和区域对比度准则(GC),对图5得到的四幅分割结果进行了客观和定量的评价,评价结果如表1所示:表1 不同算法下的分割结果比较区域均匀性形状参数区域对比度综合指标常用直方图谷点阈值分割0.9838 0.9149 0.3640 0.7542 最大熵直方图分割算法0.9862 0.8960 0.4267 0.7696 数学期望法0.9859 0.9014 0.4075 0.7649 OSTU 0.9862 0.8946 0.4338 0.7715由于一种图像分割评价准则是无法对分割结果做准确评价[8]的,因此我们综合三种评价准则得到了一个综合指标。
从上表实验中得到的综合指标数据可以看出,本文提出的最大熵阈值分割算法要优于常用的直方图阈值选取算法,并且分割结果要好于采用数学期望法得到的结果,这主要是由于数字图像处理是离散数值操作,在离散域里求取数学期望本质上就是求取了图像的灰度平均值,因此该方法本身具有自身的不足。
但与经典的OSTU分割算法相比,本文算法又有所不及,但本文所提的方法运算复杂度稍低,且运算时间较短。
5.结论本文通过对常用直方图分割算法的研究和改进,提出了一种基于最大熵的直方图阈值选取分割算法,该算法不仅能够自动获取最佳阈值,而且克服了因灰度分布复杂,灰度直方图呈现多峰以致难以获取最佳阈值的缺陷,实验取得了良好的分割效果。