F(k)=I*J*(P1-P2)* (P1-P2)/(256*256)
作为适应度函数对个体进行适应度计算。式中,F(k)为适应度函数;I为目标图像的像素数J为背景图像的像素数;S1 为目标图像的像素和,S2为背景图像的像素和。(函数源代码参见附录[四])
3) 选择::
与标准遗传算法略有不同,本例未采用轮盘赌方法进行选择操作,而是以Matlab中的高级函数select作为选择程序。在这种方法中,需要设定代沟,即整个种群在每一代中没有完全被复制,有部分剩余。本例设代沟GGAP=0.9,即每次遗传后子代数量为父代的90%。(函数源代码参见附录[五])。
4) 交叉:
在Matlab中使用高级函数recombin实现。即在当前种群中每次选取两个个体按设定的交叉概率(0.7)进行交叉操作,生成新的一代种群; (函数源代码参见附录[六])。
5) 变异:
在Matlab中使用函数mut实现。即根据一定的变异概率Pm,选取当前种群的每一行对应一个个体并用概率Pm变异每一个元素,从而形成新一代群体。(函数源代码参见附录[七])
6) 终止
本程序中选择指定代数(50代)作为寻优循环跳出的判断条件。判断跳出条件是否满足,若不满足,则以新生成的群体作为第一代群体,转到步骤3继续寻优,否则转到步骤7。
7) 将最后一代群体中适应度最大的个体作为最优结果,将其反编码(采用bs2rv函数),即为所求的最佳分割阈值。
6.3 实验结果与效果对比图为了验证算法的效果,选用一幅SHE的JPG图像进行实验,原始图像显示:
图6.1
原始图像
对上图进行灰度变化后的灰度图像如下:
图6.2
灰度图象
在对灰度图像转化为索引图像并将其数据类型转化为双精度型之后的图片如下:
图6.3
索引图像
此时,就可对上图进行基于遗传算法的最大类间方差分割法进行处理了。设定初始群体的数目N=40,交叉概率P c=0. 9,代沟为0.9,变异率为Pm采用默认值。最大迭代数G=50。实验结果及数据如下:
通过50次迭代寻优后,找到最优化阈值M=162:
图6.4
基于遗传算法的最大类间方差法分割后图像
图6.5
直方图双峰法分割后的图像
6.4实验结论本文所讨论的基于遗传算法的图像分割算法,采用标准遗传算法作为计算流程,但对其中的选择算子进行了改变,用高级选择函数select代替了传统的单一选择算子,使得在每次选择运算后所得的父辈更为健壮,更好的保持了第一代父辈的表现型,使得分割更加精确。通过设计变异概率,使得每次迭代遗传运算后,子代的表现型略有改变,从而更以获得最优的表现型(即最优阈值),减少了迭代寻优次数,降低了程序运行时间。同时考虑到过多迭代不利于降低程序运行时间,以及在寻优过程中的最佳值收敛问题,指定迭代次数为50次时即跳出整个程序,通过反编码求得最优阈值,并通过变量调用,直接应用于下面的分割程序,达到了整个算法的自动完成。
相对于灰度直方图双峰法,本方法对图像的先验信息要求不高,不需要像灰度直方图法那样,先通过获得图像的灰度直方图取得分割阈值后再对图像处理,整个程序的自动化程度高,且对于那些灰度直方图不呈双峰分布的图像,本算法程序一样可以处理,这就扩大了本算法程序的灵活性,从而更具有实际意义。而且,由于灰度直方图双峰法的阈值是通过人眼观察获得,其误差必然大于机器迭代运算所取得的最优阈值,而普通的阈值分割法,如ostu法,虽然实现了阈值的自动选择,但其运算时间与本算法相比偏长,实时性差于本算法。因此,在图像分割算法中,基于遗传算法的图像分割算法更优于其它传统的图像分割算法。
通过上述讨论,以及两种方法的处理结果图片的对比,基于遗传算法的最大类间方差法分割后图像与直方图双峰法分割后的图像像比,效果更明显,且无须事先测量图像的灰度直方图,更加灵活,更加精确。
其相关试验结论列于下表:
基于遗传算法的图象分割实验结论总表:
分割方法
自动化程度
阈值
灰度直方图
计算时间
分割结果
灰度直方图法
无法自动完成
——
基于遗传算法的Ostu法
高
阈值自动指定,阈值M=162,
短于普通Ostu法
普通Ostu法
高
阈值自动指定
偏长
参见参考文章[25]
参 考 文 献[1]张兆礼,赵春晖,梅晓丹.现代图像处理技术及MAThAB实现.北京:人民邮电出版社,2001.1
[2]陈传波,金先级.数字图像处理[M].北京:机械工业出版社,2004.
[3]夏德深,傅德胜等.现代图象处理技术与应用[M].南京:东南大学出版社,1997.
[4]章毓晋.图象工程(上册)图象处理和分析.北京:清华大学出版社,1999.
[5]王小平,曹立明.遗传算法理论、应用与软件实现.西安:西安交大出版社,2002.
[6]徐立中,数字图像的智能信息处理。北京:国防工业出版社,2001
[7]王耀南,李树涛,毛建旭,计算机图像处理与识别技术,北京:高等教育出版社,2001
[8]雷英杰,张善文,李绪武,周创明.MATLAB遗传算法工具箱及应用,西安:西安电子科技大学出版社
[9]何新贵.模糊知识处理的理论与计算,