欢迎来到天天文库
浏览记录
ID:23450747
大小:72.00 KB
页数:5页
时间:2018-11-07
《基于matlab环境下的k均值聚类算法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、基于Matlab环境下的K均值聚类算法谭军晖(湖北民族学院附属民大医院445000)摘要:为了将模式识别方法与图像处理技术相结合,掌握利用均值聚类算法进行图行处理,往往能得到比较好的处理结果,木文在matlab环境下,对有效图像点进行K均值聚类算法,与传统K近邻聚类方法比照,得出了比较好的实验效果。关键词:K均值聚类算法matlab图像引言k-means算法,也被称为k-平均或k-均值,是一种得到最广泛使用的聚类算法。它是将各个聚类子集内的所有数据样木的均值作为该聚类的代表点,算法的主要思想是通过迭代过程把数据集划分为不同的类别,使得评价聚类性能
2、的准则函数达到最优,从而使生成的每个聚类内紧凑,类间独立。1、K-均值聚类的分析K-均值聚类的目的是将数据拆成K个不同的群组,该算法的特点是运算结果受到所选择的聚类中心数目、初始位置、模式样木的几何性质以及读入次序的影响。具体的算法如下:1、在n维空间中随机生成K个中心点2、将每个数据项分配给与其距离最近的中心点。3、将中心点位置移动到所有分配给它的数据项的中心。如果中心点位置没有改变,则结朿算法,否则回到第二步。2、K均值聚类算法与K近邻算法的区别K近邻算法的基木思想是是使体积为数据的函数,而不是样木N的函数。K-最近邻也是一种用来进行预测的算
3、法。它的工作原理是接受一个用以进行数值预测的新数据项,然后将它与一组已经赋过值的数据项进行比较。算法会从中找出与待预测数据最为接近的K项,并且这K项苏求均值以得到最终的结果。优点:能利用复杂函数进行数值预测,又简单易懂,并i我们可以很容易在算法中实现查看用哪些近邻进行预测。缺点:每次进行预测,它都会使用所有的样本,这会导致效率的低下。因此,寻找缩放因子是一种很乏味的事情。3、K均值聚类法分为如下几个步骤一、初始化聚类中心1、根据具体问题,凭经验从样本集中选出C个比较合适的样本作为初始聚类中心。2、用前C个样本作为初始聚类中心。3、将全部样本随机地
4、分成C类,计算每类的样本均值,将样本均值作为初始聚类中心。二、初始聚类1、按就近原则将样本归入各聚类中心所代表的类中。2、取一样本,将其归入与其最近的聚类中心的那一类中,重新计算样本均值,更新聚类中心。然后取下一样本,重复操作,直至所有样本归入相应类中。三、判断聚类是否合理采用误差平方和准则函数判断聚类是否合理,不合理则修改分类。循环进行判断、修改直至达到算法终止条件。4、实验步骤及程序clcclearticRGB:imread(’test5.jpg1);img=rgb2gray(RGB);[m,n]=size(img);subplot(2,2,
5、l),imshow(img);titlesubplot(2,2,2),imhist(img);titleholdoff;img=double(img);fori=l:200cl⑴=25;c2⑴=125;c3(l)=200;%选择三个初始聚类中心r=abs(img-cl(i));g=abs(img-c2(i));b=abs(img-c3(i));%计算各像素灰度与聚类中心的距离r_g=r-g;g_b=g-b;r_b=r-b;n_r=find(r_g<=O&r_b<=O);%寻找最小的聚类中心n_g=find(r_g>O&a
6、mp;g_b<=O);%寻找中间的一个聚类中心n_b=find(g_b>O&r_b>O);%寻找最大的聚类中心i=i+l;cl(i}=sum(img(n_rn/length(n_r);%将所有低灰度求和取平均,作为下一个低灰度中心c2(i}=sum(img(n_gH/length(n_g);%将所有低灰度求和取平均,作为下一个中间灰度中心c3(i}=sum(img(n_b})/length(n_b};%将所有低灰度求和取平均,作为下一个高灰度中心dl(i)=abs(cl(i)-cl(i-l));d2(i)=abs(c2(
7、i)-c2(i-l));d3(i)=abs(c3(i)-c3(i-l));ifdl(i)<=0.001&&d2(i)<=0.001&&d3(i)<=0.001R=cl(i);G=c2(i);B=c3(i);k=i;break;endendRGBimg=uint8(img);img(find(img<R))=O;img(find(img>R&img<G))=128;img(find(img>G))=255;toesubplot(2,2,3),imshow(img);t
8、itlesubplot(2,2,4),imhist(img);title结论通过本次matlab环境实验下的K均值聚类分析,我们得出了如
此文档下载收益归作者所有