資源簡介
親測可用!圖像模糊C均值聚類分割matlab代碼,聚類分割后顯示圖像。
僅需要自己修改讀圖路徑。

代碼片段和文件信息
IM=imread(‘D:\文件及下載相關(guān)\桌面\代碼?-?副本\代碼\Image\ALLgray\monarchNEW_heibaiedge.bmp‘);?
?
IM=IM(::1);?
figure(1)?
imshow(uint8(IM))?
[maxXmaxY]=size(IM);?
IM=double(IM);?
?
IMM=cat(4IMIMIMIM);?
%??????????????4???
cc1=7;?
cc2=70;?
cc3=180;?
cc4=240;?
ttFcm=0;?
while(ttFcm<15)?
????ttFcm=ttFcm+1;?
????c1=repmat(cc1maxXmaxY);?
????c2=repmat(cc2maxXmaxY);?
????c3=repmat(cc3maxXmaxY);?
????c4=repmat(cc4maxXmaxY);?
????c=cat(4c1c2c3c4);?
????ree=repmat(0.000001maxXmaxY);?
????ree1=cat(4reereereeree);?
????distance=IMM-c;?
????distance=distance.*distance+ree1;?
????daoshu=1./distance;?
????daoshu2=daoshu(::1)+daoshu(::2)+daoshu(::3)+daoshu(::4);?
????%??????????u?
????????distance1=distance(::1).*daoshu2;?
????????u1=1./distance1;?
????????distance2=distance(::2).*daoshu2;?
????????u2=1./distance2;?
????????distance3=distance(::3).*daoshu2;?
????????u3=1./distance3;?
????????distance4=distance(::4).*daoshu2;?
????????u4=1./distance4;?
????%???????????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));?
????????ccc4=sum(sum(u4.*u4.*IM))/sum(sum(u4.*u4));?
?????????
?????????
????tmpMatrix=[abs(cc1-ccc1)/cc1abs(cc2-ccc2)/cc2abs(cc3-ccc3)/cc3abs(cc4-ccc4)/cc4];?
?????
????????pp=cat(3u1u2u3u4);?
????????for?i=1:maxX?
????????????for?j=1:maxY?
????????????????if?max(pp(ij:))==u1(ij)?
????????????????????IX(ij)=1;?
????????????????elseif?max(pp(ij:))==u2(ij)?
????????????????????IX2(ij)=2;?
????????????????elseif?max(pp(ij:))==u3(ij)?
????????????????????IX2(ij)=3;?
????????????????else?
????????????????????IX2(ij)=4;?
????????????????end?
????????????end?
????????end?
?????%?н????????
????????if?max(tmpMatrix)<0.0001?
????????????break;?
????????else?
????????????cc1=ccc1;?
????????????cc2=ccc2;?
????????????cc3=ccc3;?
????????????cc4=ccc4;?
????????end?
??????for?i=1:maxX?
????????????for?j=1:maxY?
????????????????if?IX2(ij)==1?
????????????????????IMMM(ij)=240;?
????????????????elseif?IX2(ij)==3?
????????????????????IMMM(ij)=180;?
????????????????elseif?IX2(ij)==2??
????????????????????IMMM(ij)=70;?
????????????????else?
????????????????????IMMM(ij)=7;?
????????????????end?
????????????end?
????????end?
?????????
????????%?????ξ????????
????????figure(2);?
????????imshow(uint8(IMMM));?
end?
????for?i=1:maxX?
????????????for?j=1:maxY?
????????????????if?IX2(ij)==4?
????????????????????IMMM(ij)=240;?
????????????????elseif?IX2(ij)==3?
????????????????????IMMM(ij)=180;?
????????????????elseif?IX2(ij)==2??
????????????????????IMMM(ij)=70;?
????????????????else?
????????????????????IMMM(ij)=7;?
????????????????end?
????????????end?
????????end?
%?????????????
IMMM=uint8(IMMM);?
figure(3);?
imshow(IMMM);?
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件????????2938??2019-06-10?19:54??fcm2.m
評(píng)論
共有 條評(píng)論