Znn3bq.jpeg
²é¿´: 686  |  »Ø¸´: 3

jgj030106

Òø³æ (ÕýʽдÊÖ)

[ÇóÖú] matlabÖÐʵÏÖc-means¾ÛºÏ·ÖÀàËã·¨ ÒÑÓÐ2È˲ÎÓë

ÈçºÎÔÚmatlabÖÐʵÏÖc-means¾ÛºÏ·ÖÀàËã·¨£¬×îºÃ¸ø¸öÔ´´úÂ룬±ØÓÐÖØÐ»

·¢×ÔСľ³æAndroid¿Í»§¶Ë
»Ø¸´´ËÂ¥

» ÊÕ¼±¾ÌûµÄÌÔÌûר¼­ÍƼö

³ÌÐò

» ²ÂÄãϲ»¶

ı¶¨¶øºó¶¯
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

wrfei01

Òø³æ (СÓÐÃûÆø)

¡¾´ð°¸¡¿Ó¦Öú»ØÌû

¡ï ¡ï ¡ï ¡ï ¡ï
jgj030106: ½ð±Ò+5, ¡ïÓаïÖú 2017-01-11 08:06:39
CodeForgeµÄÕâ¸ö´úÂë»òÐí¿ÉÒÔ½â´ðÄãµÄÎÊÌ⣺http://www.codeforge.cn/article/289338
2Â¥2017-01-09 21:37:50
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

chenfeixue

гæ (³õÈëÎÄ̳)

¡¾´ð°¸¡¿Ó¦Öú»ØÌû

¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï
jgj030106: ½ð±Ò+10, ¡ï¡ï¡ïºÜÓаïÖú 2017-01-11 08:07:17
%%%%%%%%%%%%%%% 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: Àà±ðÊý£¬È±Ê¡ÖµÎª2
%      V: ³õʼ»¯¾ÛÀàÖÐÐÄ,ȱʡֵΪ[0 255]
%      M: ¼ÓȨָÊý,ȱʡֵΪ2
%      iter: µü´ú´ÎÊý,ȱʡֵΪ100
%      epsm: µü´úÍ£Ö¹ãÐÖµ,ȱʡֵΪ1.0e-2
% Output:
%      clusterResult: ¾ÛÀàÖÐÐĽá¹û
% Note:
%      CµÄÖµÒªÓëVµÄ³õʼ»¯¾ÛÀàÖÐÐĸöÊýÏàͬ

% É趨ȱʡֵ
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)
   
   
% ¼ÆËãÁ¥Êô¶Èº¯Êý(×¢ÒâÒªÌØÊ⿼ÂÇij¸öÏñËØµãºÍ¾ÛÀàÖÐÐÄÒ»ÑùµÄÇé¿ö)
    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('µü´ú´ÎÊý£ºiterTimes = ');
disp(cnt);
% end of FCM.m
3Â¥2017-01-11 01:03:01
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

15686007389

гæ (³õÈëÎÄ̳)

ÒýÓûØÌû:
2Â¥: Originally posted by wrfei01 at 2017-01-09 21:37:50
CodeForgeµÄÕâ¸ö´úÂë»òÐí¿ÉÒÔ½â´ðÄãµÄÎÊÌ⣺http://www.codeforge.cn/article/289338

Õâ¸öÊÇJavaµÄ

·¢×ÔСľ³æAndroid¿Í»§¶Ë
4Â¥2017-01-15 19:10:07
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ jgj030106 µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] 270Çóµ÷¼Á +14 ÑîÀÖ369 2026-04-11 14/700 2026-04-11 20:16 by À¶ÔÆË¼Óê
[¿¼ÑÐ] 300·ÖÇóµ÷¼Á £¨085501»úеר˶£¬±¾¿ÆÑï´ó£© +8 xu@841019 2026-04-11 8/400 2026-04-11 10:46 by qingpingzhu
[¿¼ÑÐ] 0854µ÷¼Á +8 950824he@ 2026-04-09 8/400 2026-04-11 10:11 by zhq0425
[¿¼ÑÐ] 346£¬¹¤¿ÆÇóµ÷¼Á +3 moser233 2026-04-09 3/150 2026-04-11 10:04 by zhq0425
[¿¼ÑÐ] 22408 327·ÖÇóµ÷¼Á +4 ÔÏ·çkon 2026-04-10 4/200 2026-04-11 09:51 by Öí»á·É
[¿¼ÑÐ] 342µç×ÓÐÅϢר˶Çóµ÷¼Á +9 ÄãÈÃÎÒÔõôÀóÖ¦ 2026-04-10 10/500 2026-04-11 08:33 by zhq0425
[¿¼ÑÐ] ÉúÎïѧ308Çóµ÷¼Á£¨Ò»Ö¾Ô¸»ª¶«Ê¦´ó£© +6 ÏàÐűػá¹ââÍòÕ 2026-04-10 6/300 2026-04-11 05:23 by zhuwenxu
[¿¼ÑÐ] µ÷¼Á »¯Ñ§ 307 +21 73372112 2026-04-09 23/1150 2026-04-10 23:53 by wj165256
[¿¼ÑÐ] 344Çóµ÷¼Á +7 ؼ·çѩҹ¹éÈËØ¼ 2026-04-09 7/350 2026-04-10 12:05 by pengliang8036
[¿¼ÑÐ] ²ÄÁϹ¤³Ì302·ÖÇóµ÷¼Á +18 zyxÉϰ¶£¡ 2026-04-04 18/900 2026-04-10 10:07 by 314126402
[¿¼ÑÐ] һ־Ը˫·Ç085400µç×ÓÐÅÏ¢344 Çóµ÷¼Á£¬¶Ô²ÄÁϺͻ¯Ñ§·½ÏòÒ²¸ÐÐËȤ +8 ÎÞÇéµÄСÑò 2026-04-09 9/450 2026-04-10 09:30 by ËÉ»¨¸×1201
[¿¼ÑÐ] ÉúÎïÓëÒ½Ò©273Çóµ÷¼Á +18 ÀóÌâÄÏǽ 2026-04-05 19/950 2026-04-10 08:14 by kangsm
[¿¼ÑÐ] ³õÊÔ·Ö332£¬Ò»Ö¾Ô¸±¨¿¼Î÷±±¹¤Òµ´óѧ£¬ +11 ¹ÊÈË?? 2026-04-09 11/550 2026-04-09 21:54 by JineShine
[¿¼ÑÐ] 278Çóµ÷¼Á +27 ·¶æÃÄÈ 2026-04-07 31/1550 2026-04-09 20:49 by zhouxiaoyu
[¿¼ÑÐ] ²ÄÁϹ¤³Ìµ÷¼Á +12 СÁõͬѧ߹߹ 2026-04-06 13/650 2026-04-09 17:07 by luoyongfeng
[¿¼ÑÐ] 085600²ÄÁÏÓ뻯¹¤£¬Çóµ÷¼Á +11 won_qii 2026-04-07 11/550 2026-04-09 17:03 by luoyongfeng
[¿¼ÑÐ] һ־Ը³¶«´óѧ071000ÉúÎïѧѧ˶³õÊÔ·ÖÊý276Çóµ÷¼Á +3 Ľ¾øcc 2026-04-09 3/150 2026-04-09 09:57 by liuhuiying09
[¿¼ÑÐ] 353Çóµ÷¼Á +8 Çç¿ÕÍòÀïair 2026-04-07 8/400 2026-04-09 00:18 by GouQ
[¿¼²©] ²ÄÁÏ·½Ïò¿¼²©£¬ÇóÍÆ¼ö +3 ÑÔÓïaaa 2026-04-05 4/200 2026-04-08 22:22 by nxgogo
[¿¼ÑÐ] 277¡¢Ñ§Ë¶£¬Çóµ÷¼Á ÊýÒ»104£¬ +11 Æ¿×ÓPZ 2026-04-07 12/600 2026-04-07 23:30 by Ò»Ö»ºÃ¹û×Ó?
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û