資源描述:
《模糊C均值聚類算法分割彩色圖像.docx》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、實(shí)驗(yàn)九模糊C均值聚類算法分割彩色圖像XXXXXXXX一、實(shí)驗(yàn)?zāi)康恼莆漳:鼵聚類算法分割彩色圖像的基本原理和程序流程。二、實(shí)驗(yàn)設(shè)備微機(jī)三、實(shí)驗(yàn)原理設(shè):{xi,i=1,…,N}是N個(gè)樣本組成的樣本集合;c為預(yù)定的類別數(shù)目;mj(j=1,…,c)為每個(gè)聚類的中心;mj(xi)是第i個(gè)樣本對(duì)于第j類的隸屬度函數(shù)。用隸屬度函數(shù)定義的聚類損失函數(shù)可以寫(xiě)為:(1)式中,b>l,是一個(gè)可以控制聚類結(jié)果的模糊程度的常數(shù)。模糊C均值算法要求一個(gè)樣本對(duì)于各個(gè)聚類的隸屬度之和為1,即:(2)令Jf對(duì)mj(xi)和mj的偏導(dǎo)數(shù)為0,可得必要條件:(3)(4)用迭代方法求解以上兩式,就是模糊C均值
2、算法,其算法步驟如下:①設(shè)定聚類數(shù)目c和參數(shù)b;②初始化各個(gè)聚類中心mj;③重復(fù)下面的運(yùn)算,直到各個(gè)樣本的隸屬度值穩(wěn)定:ⅰ)用當(dāng)前的聚類中心按式(4)計(jì)算隸屬度函數(shù);ⅱ)用當(dāng)前的隸屬度函數(shù)按式(3)更新計(jì)算各類聚類中心。當(dāng)算法收斂時(shí),就得到了各類的聚類中心和各個(gè)樣本對(duì)于各類的隸屬度值,從而完成了模糊聚類劃分。如果需要,還可以將模糊聚類結(jié)果進(jìn)行去模糊化,即用一定規(guī)則把模糊聚類劃分轉(zhuǎn)化為確定性分類。四、實(shí)驗(yàn)內(nèi)容基于模糊C均值算法的彩色圖像分割五、實(shí)驗(yàn)代碼function[IX2]=fcm(IM);%IM是輸入的源圖像%IX2是分類結(jié)果IM=imread('wwwlt163c
3、om3.jpg');IM=IM(:,:,1);figure(1)imshow(uint8(IM))[maxX,maxY]=size(IM);IM=double(IM);IMM=cat(4,IM,IM,IM,IM);%初始化聚類中心(4類)cc1=7;cc2=70;cc3=180;cc4=240;ttFcm=0;while(ttFcm<15)ttFcm=ttFcm+1;c1=repmat(cc1,maxX,maxY);c2=repmat(cc2,maxX,maxY);c3=repmat(cc3,maxX,maxY);c4=repmat(cc4,maxX,maxY);c=c
4、at(4,c1,c2,c3,c4);ree=repmat(0.,maxX,maxY);ree1=cat(4,ree,ree,ree,ree);distance=IMM-c;distance=distance.*distance+ree1;daoshu=1./distance;daoshu2=daoshu(:,:,1)+daoshu(:,:,2)+daoshu(:,:,3)+daoshu(:,:,4);%計(jì)算隸屬度udistance1=distance(:,:,1).*daoshu2;u1=1./distance1;distance2=distance(:,:,2).*d
5、aoshu2;u2=1./distance2;distance3=distance(:,:,3).*daoshu2;u3=1./distance3;distance4=distance(:,:,4).*daoshu2;u4=1./distance4;%計(jì)算聚類中心zccc1=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))/
6、sum(sum(u4.*u4));tmpMatrix=[abs(cc1-ccc1)/cc1,abs(cc2-ccc2)/cc2,abs(cc3-ccc3)/cc3,abs(cc4-ccc4)/cc4];pp=cat(3,u1,u2,u3,u4);fori=1:maxXforj=1:maxYifmax(pp(i,j,:))==u1(i,j)IX(i,j)=1;elseifmax(pp(i,j,:))==u2(i,j)IX2(i,j)=2;elseifmax(pp(i,j,:))==u3(i,j)IX2(i,j)=3;elseIX2(i,j)=4;endendend%判結(jié)束
7、條件ifmax(tmpMatrix)<0.0001break;elsecc1=ccc1;cc2=ccc2;cc3=ccc3;cc4=ccc4;endfori=1:maxXforj=1:maxYifIX2(i,j)==1IMMM(i,j)=240;elseifIX2(i,j)==3IMMM(i,j)=180;elseifIX2(i,j)==2IMMM(i,j)=70;elseIMMM(i,j)=7;endendend%顯示每次聚類分割結(jié)果figure(2);imshow(uint8(IMMM));endfori=1:maxXforj=1:m