资源简介
c均值聚类的matlab程序,里面含有源程序,图片,算法介绍,还包括一份报告,详细介绍了算法的过程,希望读者都能看懂。

代码片段和文件信息
function[IX2]=fcm(IM);
%IM是输入的原图象
%IX2是分类结果
[maxXmaxY]=size(IM);
IMM=cat(3IMIMIM);
%初始化聚类中心(3类)
cc1=8;
cc2=100;
cc3=200;
ttFcm=0;
while(ttFcm<15)
ttFcm=ttFcm+1;
c1=repmat(cc1maxXmaxY);
c2=repmat(cc2maxXmaxY);
c3=repmat(cc3maxXmaxY);
c=cat(3c1c2c3);
ree=repmat(0.000001maxXmaxY);
ree1=cat(3reereeree);
distance=IMM-c;
distance=distance.*distance+ree1;
daoShu=1./distance;
daoShu2=daoShu(;;1)+daoShu(;;2)+daoShu(;;3);
%计算隶属度u
distance1=distance(;;1).*daoShu2;
u1=1./distance1;
distance1=distance(;;2).*daoShu2;
u2=1./distance2;
distance1=distance(;;3).*daoShu2;
u3=1./distance3;
%计算聚类中心z
ccc1=sum(sum(u1.*u1.*IM))/sum(sum(u1.*u1));
ccc2=sum(sum(u2.*u2.*IM))/sum(sum(u2.*u2));
ccc3=sum(sum(u3.*u3.*IM))/sum(sum(u3.*u3));
tmpMatrix=[abs(cc1-ccc1)/cc1abs(cc2-ccc2)/cc2abs(cc3-ccc3)/cc3];
pp=cat(3u1u2u3);
for i=1:maxX
for j=1:maxY
if max(pp(ij))==u1(ij)
IX2(ij)=1;
elseif max(pp(ij:))==u2(ij)
IX2(ij)=2;
else
IX2(ij)=3;
end
end
end
%判断结束条件
if max(tmpMatrix)<0.0001
break;
else
cc1=ccc1;
cc2=ccc2;
cc3=ccc3;
end
for i=1:maxX
for j=1:maxY
if IX2(ij)==3
IMMM(ij)=240;
elseif IX2(ij)==2
IMMM(ij)=130;
else
IMMM(ij)=20;
end
end
end
%显示每次聚类分割结果
figure(1);
imshow(uint8(IMMM));
end
for i=1:maxX
for j=1:maxY
if IX2(ij)==3
IMMM(ij)=240;
elseif IX2(ij)==2
IMMM(ij)=130;
else
IMMM(ij)=20;
end
end
end
%显示最终分类结果
IMMM=uint8(IMMM);
figure(2);
imshow(IMMM);
end
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 263222 2007-12-19 09:48 实验1\1998.09.bmp
文件 2083 2010-03-31 18:17 实验1\fcm.m
文件 2195 2010-03-31 19:30 实验1\fcm3.m
文件 2630 2010-03-31 19:46 实验1\fcm4.asv
文件 2629 2010-04-13 16:52 实验1\fcm4.m
文件 81765 2010-03-31 20:15 实验1\fig.fig
文件 419837 2010-03-31 20:15 实验1\fig3.fig
文件 81784 2010-03-31 20:15 实验1\figure2.fig
文件 975 2010-03-31 14:59 实验1\shang.m
文件 1029 2010-03-31 18:18 实验1\shiyanyi2.m
文件 157025 2009-06-03 08:22 实验1\vvvvv.JPG
文件 907776 2010-06-15 12:01 实验1\实验1报告.doc
目录 0 2010-06-15 12:01 实验1
----------- --------- ---------- ----- ----
1922950 13
- 上一篇:图像加密算法实现 matlab
- 下一篇:surf的matlab实现
相关资源
- matlab_OFDM调制解调(来自剑桥大学)
- Matlab路面裂缝识别69319
- 高灵敏度GPS接收机MATLAB仿真,附捕获
- 基于MATLAB的质点弹道计算与外弹道优
- 阵列天线的matlab仿真
- MATLAB 经典程序源代码大全
- MATLAB小波软阈值去噪代码33473
- 天线阵的波束形成在MATLAB仿真程序及
- 非线性SVM算法-matlab实现
- 《MATLAB 智能算法超级学习手册》-程序
- 组合导航matlab程序
- 读取txt文件内容matlab代码实现
- Matlab实现基于相关的模板匹配程序
- matlab优化工具箱讲解
- 基于MATLAB的快速傅里叶变换
- 光纤传输中的分布傅立叶算法matlab实
- 基于matlab的图像处理源程序
- matlab 椭圆拟合程序
- 算术编码解码matlab源代码
- optical_flow 光流法 matlab 实现程序
- 引导图像滤波器 Matlab实现
- 分形几何中一些经典图形的Matlab画法
- OFDM系统MATLAB仿真代码
- SVM工具箱(matlab中运行)
- 图像小波变换MatLab源代码
- LU分解的MATLAB实现
- 冈萨雷斯数字图像处理matlab版(第三
- 替代数据法的matlab程序
- 用matlab实现的多站定位系统性能仿真
- 通过不同方法进行粗糙集属性约简m
评论
共有 条评论