K均值图像聚类(Matlab代码)

时间:2015-12-25 15:58:02

标签: matlab k-means image-segmentation

大家好,我可以帮助我使用K-Mean聚类来分割图像 我需要一个Hello,每个人都可以帮助我使用K-Mean聚类来分割图像 为此需要一个Matlab代码 我有一个'http://www.mathworks.com/matlabcentral/fileexchange/8379-kmeans-image-segmentation/',但我不知道如何使用它,请帮助我使用此代码或给我一些其他代码

我也以这种方式尝试过,但它对我不起作用

img=imread('cameraman.tif');
%imshow(img);
[mu,mask]=kmeans(img,3);
imshow(mask);

1 个答案:

答案 0 :(得分:1)

要执行代码,您需要统计和机器学习工具箱。以下是工作代码和2个,4个和8个集群的集群摄影师:

enter image description here

ab=imread('cameraman.tif');
ab = double(ab);

nrows = size(ab,1);
ncols = size(ab,2);
ab = reshape(ab,nrows*ncols,1);

nColors = 4;
% repeat the clustering 3 times to avoid local minima
[cluster_idx, cluster_center] = kmeans(ab,nColors,'distance','sqEuclidean', 'Replicates', 3);

pixel_labels = reshape(cluster_idx,nrows,ncols);
imshow(pixel_labels,[]);