打印本文 打印本文 关闭窗口 关闭窗口
图像分割的一些简单实现
作者:武汉SEO闵涛  文章来源:敏韬网  点击数1962  更新时间:2009/4/23 18:38:21  文章录入:mintao  责任编辑:mintao

        if intSize-intCount<>0 then

          u1:=(intTotalPels-intSumPels)/(intSize-intCount)

        else

          u1:=0;

 

        RlTempO:=w0*w1*(u0-u1)*(u0-u1);

        if RlTempO>RlMaxO then

        begin

          RlMaxO:=RlTempO;

          Result:=intCurrentLevel;

        end;

      end;

我们在测试中发现:大津法选取出来的阈值非常理想,对各种情况的表现都较为良好。虽然它在很多情况下都不是最佳的分割,但分割质量通常都有一定的保障,可以说是最稳定的分割。由上可知,大津算法是一种较为通用的分割算法。在它的思想的启迪下,人们进一步提出了多种类似的评估阈值的算法,具体可参加【5】、【6】等。

4.  灰度拉伸-一种改进的大津法

大津法得到了广泛的应用,但有人发现,大津法致命的缺陷是当目标物与背景灰度差不明显时,会出现无法忍受的大块黑色区域,甚至会丢失整幅图像的信息。为了解决这个问题,有人提出了灰度拉伸的增强大津法。这种方法的原理其实就是在大津法的基础上通过增加灰度的级数来增强前后景的灰度差,从而解决问题。灰度增加的方法是用原有的灰度级乘上同一个系数,从而扩大灰度的级数,特别地,当乘上的系数为1时,这就是大津法的原型,因此,大津法可以看做是这种方法的一个特例。

在实现中,我们实现了多种灰度拉伸,发现对不同的图像,当遇上不同的拉伸系数时,分割效果也相差甚远。

5.  Kirsh算子

在【4】中提出了基于Kirsh算子的分割方法,其思想为:对数字图像的每个像素i,考虑它的八个邻点的灰度值,以其中三个相邻点的加权和减去剩下五个邻点的加权和得到差值,令三个邻点绕该像素点不断移位,取此八个差值的最大值作为Kirsh算子。即:设Si为三邻点之和,Ti为五邻点之和,则Kirsh算子定义为K(i)=max{1,max〔5Si-3Ti〕}如取阈值THk,则当K(i)>THk时,像素i为阶跃边缘点。此外,【4】的作者认为:假设图像大小为H×W个像素点,其边缘点像素一般不会超过5×H个。基于这一假设,该文作者提出:(对一幅图像)用Kirsh算法,取某一较低的初始阈值THk(以保证目标和背景间灰度变化很小的图像边缘也能被取出),对于每个像素点i计算其Kirsh算子,如果K(i)>THk,则i为边缘点,边缘点数N(初始值为0)加1,一旦边缘点数超过5×H ,而i还小于整幅图像的像素数,说明阈值取得太低,致使许多不是边缘点的像素也被取出,因此需提高阈值。如此反复,即可获得分割图像所需的阈值。

但在实现中,本文作者发现,【4】中的叙述颇有值得探讨之处,如在H×W图像中,H和W之间的关系是完全对称的,两者之间如何抉择?此外,在求Kirsh算子K(i)=max{1,max〔5Si-3Ti〕}时也颇有疑虑之处,由其求得的结果分割图像效果并不明显。基于对称性和归一化的考虑,笔者把Kirsh算子改为:K(i)=max{1,max abs(5Si-3Ti) div 15 },并根据在实际运行中的效果,对W和H的选取为:if W>H then use 5*H else use 5*W。在实际应用中表明,修改后的分割质量显著提高。但与【4】文中作者声称的效果及其示例相比,仍有相当的距离,特别是它不能解决前后景对比不强烈时的分割情形。但当前后背景对比十分强烈且集中时,Kirsh算子法却会有十分突出的表现。参考文献

【1】       崔屹,数字图像处理技术与应用,电子工业出版社,1997

【2】       付忠良,图像阈值选取方法,计算机应用,2000

【3】       吴冰、秦志远,自动确定图像二值化最佳阈值的新方法,绘测学院学报,2000

【4】       曹莉华,图像边缘提取中的一种动态阈值获取法,小型微型计算机系统,1997

【5】       付忠良,基于图像差距度量的阈值选取方法,计算机研究与发展,2001

【6】       付忠良,一些新的图像阈值选取方法,计算机应用,2001

【7】       Kenneth.R.Castleman著,朱志刚等译,数字图像处理,电子工业出版社,1998

 

上一页  [1] [2] [3] 

打印本文 打印本文 关闭窗口 关闭窗口