前言:
如今咱们对“蚁群算法图像处理代码怎么写”大体比较重视,你们都想要剖析一些“蚁群算法图像处理代码怎么写”的相关资讯。那么小编同时在网络上收集了一些有关“蚁群算法图像处理代码怎么写””的相关文章,希望咱们能喜欢,你们快快来了解一下吧!0 引言
图像分割是图像分析中一个核心技术,是计算机视觉研究中最重要的研究内容。目前常用的图像分割方法有:阈值法、边缘检测法、区域分割法、聚类分析法和基于特定理论的图像分割方法[1]。其中聚类分析法能够以像素样本之间的相似性准则来衡量分类结果,目前应用最广的是由Bezkek提出的模糊C均值聚类算法(Fuzzy C-Means,FCM)[2]。FCM聚类算法可以有效地解决图像中存在的不确定性和模糊性等问题,具有实现简单和无监督的特点。然而,目前常用的FCM聚类算法仍有亟待解决的问题:(1)FCM聚类算法对初始聚类中心或隶属度矩阵具有较强的依赖性,搜索中极易陷入局部最优解;(2)FCM聚类算法抗噪性能较差,算法的鲁棒性不强;(3)该算法基于逐点像素进行图像分类,数据样本较多时运算量大,且只利用了图像的灰度信息而忽略了像素的空间特征,导致算法收敛速度慢。基于此,文献[3]结合直方图信息,降低了数据样本计算量。文献[4]根据灰度和空间信息的相似性度量,对图像的细节信息有一定的保留。文献[5]利用蚁群算法的全局优化能力,避免FCM算法陷入局部极值。然而,对于受不同类型和不同程度噪声影响的大规模像素样本,上述改进算法对噪声的鲁棒性较弱,算法的实时性较差。
针对上述问题,本文提出一种基于蚁群和自适应滤波的模糊聚类图像分割方法。该算法首先利用改进的蚁群算法对图像进行初次分割;然后采用自适应中值滤波,对不同类型和不同程度噪声自适应地调整滤波性能,提高该算法的鲁棒性;最后用图像的直方图特征空间优化FCM算法的目标函数,减少数据运算量,加快收敛速度,提高分割精度。
1 传统FCM算法概述
假设图像样本数据集X={x1,x2,…,xn},n是图像像素个数,将图像划分为c类。FCM聚类算法以图像像素和聚类中心间的加权相似性测度,对目标函数进行迭代优化以获得最优聚类结果[6]。其目标函数[7]为:
其约束条件为:
其中,uij是样本点xj属于第i类的隶属度值,dij=||xj-vi||2是样本点xj与聚类中心vi的欧式空间距离,m是模糊加权指数。为了使目标函数J最小,利用拉格朗日数乘法得到隶属度uij和聚类中心vi分别为:
在迭代过程中,由于传统FCM采用下降算法,受初始聚类中心或隶属度矩阵的影响,需预设聚类类别数,这导致易收敛到局部极值,且当样本数目较多、图像噪声较大时,会影响分割的实时性。
2 基于蚁群和自适应的FCM的图像分割
2.1 蚁群算法的初始聚类中心设置
蚁群算法[8]具有较强的正反馈能力、全局性以及易于与其他算法融合等优点,尤其是其分布式并行计算机制以及优化模糊聚类的特点,能弥补FCM算法随机选取初始聚类中心的不足。本文首先利用蚁群算法,对图像进行初次分割,并得到初始聚类中心,作为FCM的初始参数。由于蚁群算法中,图像的每个像素都要与其余像素进行路径选择概率和距离计算,导致搜索进程慢。因此,本文将图像的每个像素设为由灰度、梯度和邻域表示的三维向量,以此向量表示单个蚂蚁。因为像素能在灰度值上明显区分目标和背景,梯度可以反映像素灰度值在边界或噪声点处的突变情况,邻域能体现出噪声的特点[9]。并设置对应的蚁群初始聚类中心特征,选取灰度直方图的峰值点作为聚类中心的灰度特征,像素梯度值0和图像最大梯度列的均值作为聚类中心的梯度特征,并根据像素梯度值设置聚类中心的邻域特征。在此基础上,直接计算蚂蚁像素与聚类中心的路径选择概率和距离,以减少蚂蚁搜寻的盲目性,降低计算量,加快聚类进程。
2.2 蚁群算法的聚类初值设置
对于原始图像X,将其每一个像素X={X|xi=(xi1,xi2,…,xim),i=1,2,…,N,N=m×n}作为单个蚂蚁,蚂蚁需聚集到j个聚类中心Cj,Xi到Cj的加权欧式距离为:
其中,m是蚂蚁像素的维数,P是权重因子,根据像素各分量对聚类的影响程度设定。
设r为聚类半径,蚂蚁像素Xi到聚类中心Cj的路径上的信息素为:
蚂蚁像素Xi选择聚类中心Cj的概率为:
其中,S∈{Xs|dsj≤r,s=1,2,…,N}表示分布在聚类中心Cj内数据的集合。?琢和?茁分别是影响因子,代表蚂蚁聚类过程中信息素和启发引导函数对路径选择的影响。根据相关研究[10],在此设置ij为启发式引导函数,反映像素与聚类中心的相似度。由于存在像素与聚类中心距离为零的情况,为了保证引导函数不为无穷大,防止算法过早收敛,本文在引导函数公式的分母加上1,表示为:
在蚂蚁搜寻过程中,计算转移概率Pij,选取最大转移概率Pmax并标记对应的蚂蚁Xi,将Xi归并到Xj邻域Cj内,并更新信息素ij(t+1)。考虑到蚂蚁在路径上产生的信息素增量存在动态蒸发的情况,本文采用一种新的信息素更新公式:
其中,是信息蒸发因素,ij(t)是本次循环路径上信息素的增量。更新聚类中心为:
计算各类的类间距,若类间距小于阈值e,则将两类合并后更新聚类中心。若迭代次数达到上限,则转到式(8),否则输出聚类中心vj和聚类个数c。
2.3 基于自适应直方图优化的FCM
传统FCM算法易受噪声干扰,分割数据样本为图像逐点像素,其特征为灰度,导致样本数目大,且样本数目会随图像大小的增大而增多,从而影响图像分割的实时性。针对以上不足,本文利用自适应直方图优化的FCM图像分割算法,以实现最优的分割结果。
自适应中值滤波器[11]具有保留图像边界和图像高频部分的特点,本文采用自适应中值滤波,根据噪声类型和噪声程度,自适应地调整滤波窗口的尺寸,降低图像噪声干扰,提高分割质量。设Wxy为像素点(i,j)滤波窗口,Iij为像素点(i,j)的灰度,Imin为Wxy中的最小灰度值,Imax为Wxy中的最大灰度值,Imed为Wxy中的灰度中值,Wmax为最大滤波窗口,W0为初始滤波窗口。自适应中值滤波算法步骤如下:
(1)若Imin<Imed<Imax,则表示Imed不是噪声点,转到步骤(2),否则转步骤(3)。
(2)若Imin<Iij<Imax,则表示Iij不是噪声点,直接输出Iij,否则输出Imed。
(3)增加滤波窗口Wxy尺寸,若Wxy≤Wmax,则重复步骤(1),否则输出Iij。
在此基础上,将图像从像素空间映射到其灰度直方图特征空间,得到各灰度级出现的概率H(j),则直方图FCM[12]的目标函数为:
其中,L为灰度级,取值范围为0~255,则待分类的图像样本集为X={0,1,…,L-1}。以此大幅度减少分类样本数目,只有灰度级0~255个,并且样本数目不会随图像尺寸的增大而改变,提高了算法的收敛速度。在此基础上,利用拉格朗日乘子法得出隶属度函数更新机制为:
聚类中心的更新公式优化为:
本文算法流程归纳如下:
(1)输入图像,根据蚁群聚类算法寻找初始聚类类别数和初始聚类中心。
(2)设置自适应中值滤波初始滤波窗口大小,设置直方图优化的FCM聚类算法的类别数和初始聚类中心、误差阈值?着、模糊指数m、迭代次数iter。
(3)根据式(12)更新隶属度uij。
(4)根据式(13)更新聚类中心vi。
(5)计算聚类中心误差,若||V(i+1)-V(i)||<?着,则算法结束;否则t=t+1,并返回步骤(2)继续执行算法。
3 实验结果与分析
为了评价算法的分割效率,本文选用分辨率为405×405的lena灰度图,对标准FCM算法和ACOAFCM算法在不同类型和不同程度噪声下进行验证。本文实验的测试硬件为主频2.67 GHz、内存2GB的PC,测试平台为Windows XP操作系统,测试环境为MATLAB 7.10。实验设置的蚁群算法参数为r=100,滤波窗口大取3×3,直方图优化FCM参数为m=2,?着=10-5,c=2。实验分割结果如图1所示。
在图1所示的图像分割结果中,从(a2)、(a3)中可看出,当无噪声时,引入改进的蚁群信息素机制,使得ACOAFCM聚类效果更明显,人物与后方背景有明显的区分,脸部轮廓分割更清晰,头发下端的细节好于标准FCM的分割结果。从(b2)、(b3)中可见,当添加高斯噪声时,标准FCM算法分割效果不明显且遗留较多噪声;而引入自适应中值滤波的ACOAFCM算法分割结果中,虽然因高斯噪声本身的特点,存在局部噪声点,但仍保留了目标的边界和高频部分,整体分割效果与标准FCM相比有很大改善。从(c2)、(c3)中可知,当添加更高程度的椒盐噪声时,标准FCM分割结果中蝴蝶和花丛背景无明显区分;而ACOAFCM算法根据噪声类型自适应调整滤波性能,不仅能克服噪声干扰,避免算法陷入局部极优值,而且保留了蝴蝶的细节部分,保持了较好的分割精度。从(b)和(c)可以看出,本文算法对不同噪声和不同程度的噪声都有较强的鲁棒性。
为了定量评价分割的有效性和实时性,本文采用评价指标:划分系数VPC和划分熵VPE,分别表示聚类程度和聚类结构,划分系数VPC越大、划分熵VPE越小,则模糊聚类分割效果越好。比较结果如表1所示,可见ACOAFCM算法对于抑制噪声的指标值明显优于标准FCM算法。此外,从表1收敛时间看出,由于改进的蚁群算法快速地提供了最优初始聚类中心,且直方图特征优化了FCM算法,减少了样本集,ACOAFCM算法的速度明显加快。
4 结束语
本文提出了一种基于蚁群和直方图的模糊聚类图像分割算法,将蚁群算法与自适应直方图优化的FCM算法相结合。利用蚁群算法的鲁棒性、全局寻优性和进化模糊聚类的优点,得到FCM算法初始化的聚类中心,有效地解决了模糊聚类算法易陷入局部最优解、对初始聚类中心依赖的问题。采用自适应中值滤波,能够自适应地根据噪声类型和强度调整滤波性能,增强FCM算法的鲁棒性。引入图像的直方图特征空间优化FCM算法的目标函数,减少图像样本数目,降低了运算量。实验结果表明,本文的算法与传统的FCM算法相比,加快了图像聚类收敛速度,提高了图像分割精度。
参考文献
[1] 沙秋夫,刘海宾,何希勤,等.基于邻域的模糊C-均值图像分割算法[J].计算机应用研究,2007,24(12):379-385.
[2] BEZDEK J C,HATHAWAY R J.Convergence and theory forfuzzy C-means clustering:counter examples and repa[J].IEEETransactions Pattern Analysis and Machine Intellig-ence,1987,17(5):873-877.
[3] TIAN M L,YANG J M.Pre-processing of froth image of coal flotation based on weighted fuzzy C-means clustering by one-dimensional histogram[J].IEEE International Con-ference on Computing,Measurement,Control and Sensor Network,2012,10(32):396-400.
[4] STELIOS K,VASSILIOS C.A robust fuzzy local informationC-Means clustering algorithm[J].IEEE Transction on Image Processing,2010,19(5):1328-1337.
[5] KARNAN D M,GOPAL N N.Hybrid markov random field with parallel ant colony optimization and fuzzy C-means forMRI brain image segmentation[J].IEEE International Conference on Computational Intelligence and Computing Research,2010,30(12):1-4.
[6] 张翡,范虹.基于模糊C均值聚类的医学图像分割研究[J].计算机工程与应用,2014,50(4):144-151.
[7] 陈志飞,时宏伟.基于均值漂移和模糊C均值聚类的图像分割算法[J].计算机应用与软件,2013,30(11):14-17.
[8] 李积英,党建武.量子蚁群聚类模糊算法在图像分割中的应用[J].光电工程,2013,40(1):126-131.
[9] ZHANG W J,LIU L,HAN Y H.An image segmentation approach based on ant colony algorithm[J].IEEE Interna-tional Congress on Image and Signal Processing,2010,30(15):1313-1315.
[10] 杨立才,赵莉娜,吴晓晴.基于蚁群算法的模糊C均值聚类医学图像分割[J].山东大学学报:工学版,2007,37(3):51-54.
[11] JIANG J F,JING S.An effective adaptive median filter algorithm for removing salt & pepper noise in images[J].IEEE Photonics and Optoelectronic,2010,18(4):244-248.
[12] ZHOU S Y,XIE W L,GUO C X.A modified color imagesegmentation method based on FCM and region merging[C].2011 International Conference on Multimedia Technology(ICMT),2011:3810-3813.
标签: #蚁群算法图像处理代码怎么写