| 4 | 1/1 | 返回列表 |
| 查看: 675 | 回復: 3 | |||
jgj030106銀蟲 (正式寫手)
|
[求助]
matlab中實現(xiàn)c-means聚合分類算法 已有2人參與
|
|
如何在matlab中實現(xiàn)c-means聚合分類算法,最好給個源代碼,必有重謝 發(fā)自小木蟲Android客戶端 |
程序 |

銀蟲 (小有名氣)
| CodeForge的這個代碼或許可以解答你的問題:http://www.codeforge.cn/article/289338 |
新蟲 (初入文壇)
|
%%%%%%%%%%%%%%% FCM算法分割圖像 %%%%%%%%%%%%%% %matlab function clusterResult = FCM(imagePath, C, V, M, iter, epsm) % 模糊C均值(FCM)聚類算法分割圖像 % clusterResult = FCM(imagePath, C, V, M, iter, epsm) % Example: clusterResult = FCM('E:\Image\lena.bmp') % clusterResult = FCM('E:\Image\lena.bmp',3,[0 127 255]) % Input: % imagePath: 圖像路徑 % C: 類別數(shù),缺省值為2 % V: 初始化聚類中心,缺省值為[0 255] % M: 加權指數(shù),缺省值為2 % iter: 迭代次數(shù),缺省值為100 % epsm: 迭代停止閾值,缺省值為1.0e-2 % Output: % clusterResult: 聚類中心結果 % Note: % C的值要與V的初始化聚類中心個數(shù)相同 % 設定缺省值 I= imread('1024.bmp'); if nargin < 6 epsm = 1.0e-2; end if nargin < 5 iter = 100; end if nargin < 4 M = 2; end if nargin < 3 [x,y,z]=impixel(I); V(1)=z(1); V(2)=z(2); V(3)=z(3); end if nargin < 2 C = 3; end % 讀入圖像及其信息 figure, imshow(I); title('原圖像'); [row col] = size(I); grayHist = imhist(I); % figure, imhist(I); % title('直方圖'); histProb = grayHist / (row * col); len = length(histProb); % tic % FCM迭代過程 cnt = 0; while(cnt < iter) % 計算隸屬度函數(shù)(注意要特殊考慮某個像素點和聚類中心一樣的情況) for i = 1 : len flag = 0; for j = 1 : C if i == V(j) U(j, i) = 1.0; if j == 1 U(j + 1 : C, i) = 0.0; elseif j == 3 U(1 : C - 1, i) = 0.0; elseif j == 2 U(1 : j - 1, i) = 0.0; U(j + 1 : C, i) = 0.0; end flag = 1; break; end end if flag == 0 u = (1.0 ./ ((i - V) .^ 2)) .^ (1.0 / (M - 1)); uSum = sum(u); U(1 : C, i) = u' / uSum; end end % 計算更新各類聚類中心 for j = 1 : C i = linspace(1, len, len); v = sum(histProb' .* i .* (U(j, .^ M));vSum = sum(histProb' .* (U(j, .^ M));if vSum == 0 clusterResult(j) = 0; else clusterResult(j) = v / vSum; end end % 計算誤差并判斷算法迭代是否停止 diff = sum((clusterResult - V) .^ 2); if diff <= epsm break; else V = clusterResult; end cnt = cnt + 1; end % toc % 分割圖像 for i = 1 : row for j = 1 : col temp = (double(I(i, j)) - clusterResult) .^ 2; [fmin pos] = min(temp); I(i, j) = pos * 255 / C; end end figure, imshow(uint8(I)); title('分類后的圖像'); imshow(uint8(I),'Colormap',hsv(255)); %disp('迭代次數(shù):iterTimes = '); disp(cnt); % end of FCM.m |
新蟲 (初入文壇)
| 4 | 1/1 | 返回列表 |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 321求調(diào)劑 +6 | 璞玉~~ 2026-03-25 | 7/350 |
|
|---|---|---|---|---|
|
[考研] 081200-11408-276學碩求調(diào)劑 +4 | 崔wj 2026-03-26 | 4/200 |
|
|
[考研] 085602 化工專碩 338分 求調(diào)劑 +12 | 路癡小琪 2026-03-27 | 12/600 |
|
|
[考研] 304求調(diào)劑 +6 | 曼殊2266 2026-03-27 | 6/300 |
|
|
[考研] 調(diào)劑求院校招收 +4 | 鶴鯨鴿 2026-03-28 | 4/200 |
|
|
[考研] 0703化學求調(diào)劑 +9 | 奶油草莓. 2026-03-22 | 10/500 |
|
|
[考研] 331環(huán)境科學與工程求調(diào)劑 +3 | 熠然好運氣 2026-03-27 | 3/150 |
|
|
[考研] 291求調(diào)劑 +7 | 孅華 2026-03-22 | 7/350 |
|
|
[考研] 材料與化工085600,總分304,本科有兩篇sci參與,求調(diào)劑 +10 | 幸運的醬醬 2026-03-22 | 12/600 |
|
|
[考研] 調(diào)劑推薦 +5 | 清酒714 2026-03-26 | 6/300 |
|
|
[考研] 材料求調(diào)劑 +5 | .m.. 2026-03-25 | 5/250 |
|
|
[考研] 一志愿北化求調(diào)劑 +3 | Jsman 2026-03-22 | 3/150 |
|
|
[考研] 調(diào)劑 +4 | 柚柚yoyo 2026-03-26 | 4/200 |
|
|
[考研] 0703化學求調(diào)劑 +3 | 丹青奶蓋 2026-03-26 | 5/250 |
|
|
[考研] 中國科學院深圳先進技術研究院-光纖傳感課題組招生-中國科學院大學、深圳理工大學聯(lián)培 +5 | YangTyu1 2026-03-26 | 5/250 |
|
|
[考研] 0854電子信息求調(diào)劑 +7 | α____ 2026-03-22 | 9/450 |
|
|
[考研] 材料調(diào)劑 +3 | iwinso 2026-03-23 | 3/150 |
|
|
[考研] 一志愿武理085500機械專業(yè)總分300求調(diào)劑 +3 | an10101 2026-03-24 | 7/350 |
|
|
[考研] 080500求調(diào)劑 +3 | zzzzfan 2026-03-24 | 3/150 |
|
|
[考研]
|
13659058978 2026-03-24 | 4/200 |
|