资源简介
matlab模糊聚类算法进行图像分割的源程序
代码片段和文件信息
clear all%清除workspace中的所有变量
I=imread(‘cameraman.tif‘);%读入图像文件
figure(1);
imshow(I);title(‘原图像‘); %显示原来的图像
count=imhist(I); %灰度频率
[mn]=size(I);%测矩阵的大小
h=count/(m*n)%求灰度级数
V1=zeros(2); %确定对称矩阵A
V2=zeros(2);
U1=zeros(2256); %设定分区矩阵U
m1=2; %确定加权指数m
V1(1)=20; %初始化聚类中心V,C=2
V1(2)=250;
l=length(h)
I=double(I);%转换变量的类型
diedai=1;
while (diedai==1)
for i=1:l %修改迭代过程中的分区矩阵
if (i-V1(1))^2>0.01&(i-V1(2))^2>0.01
tep1=(i-V1(1))^2;
tep2=(i-V1(2))^2;
U1(1i)=1.0/(1+(tep1/tep2)^(1.0/(m1-1)));
U1(2i)=1.0/(1+(tep2/tep1)^(1.0/(m1-1)));
else
if (i-V1(1))^2<0.01
U1(1i)=1.0;
else
U1(2i)=0.0;
end
if (i-V1(2))^2<0.01
U1(1i)=0.0;
else
- 上一篇:彩色图像分割MATLAB
- 下一篇:中点画线法matlab代码
评论
共有 条评论