• 大小: 223KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-01-09
  • 语言: Matlab
  • 标签: Kmeans  

资源简介

基于Kmeans聚类的图像分割算法,适合初学者学习。分较少

资源截图

代码片段和文件信息

function [mumask]=kmeans(imak)
%   功能:运用k-means算法对图像进行分割
%   输入: ima-输入的灰度图像           k-分类数
%   输出:  mu-均值类向量                mask-分类后的图像
ima=double(ima);
copy=ima;         
ima=ima(:);
mi=min(ima);      
ima=ima-mi+1;     
s=length(ima);
% 计算图像灰度直方图
m=max(ima)+1;
h=zeros(1m);
hc=zeros(1m);
for i=1:s
  if(ima(i)>0) h(ima(i))=h(ima(i))+1;end;
end
ind=find(h);
hl=length(ind);
% 初始化质心
mu=(1:k)*m/(k+1);
% start process
while(true)
  oldmu=mu;
  % 现有的分类  
  for i=1:hl
      c=abs(ind(i)-mu);
      cc=find(c==min(c));
      hc(ind(i))=cc(1);
  end
  %重新计算均值  
  for i=1:k 
      a=find(hc==i);
      mu(i)=sum(a.*h(a))/sum(h(a));
  end
  if(mu==oldmu) break;end;
  end
% calculate mask
s=size(copy);
mask=zeros(s);
for i=1:s(1)
for j=1:s(2)
  c=abs(co

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        947  2018-03-05 19:55  基于K-means聚类算法的图像分割的MATLAB实现\基于K-means聚类算法的图像分割的MATLAB实现\kmeans.m

     文件        138  2018-03-05 20:31  基于K-means聚类算法的图像分割的MATLAB实现\基于K-means聚类算法的图像分割的MATLAB实现\kmeans_1.m

     文件     252889  2011-07-03 11:54  基于K-means聚类算法的图像分割的MATLAB实现\基于K-means聚类算法的图像分割的MATLAB实现\xiangrikui.jpg

     目录          0  2019-06-18 09:26  基于K-means聚类算法的图像分割的MATLAB实现\基于K-means聚类算法的图像分割的MATLAB实现

     目录          0  2019-06-18 09:26  基于K-means聚类算法的图像分割的MATLAB实现

----------- ---------  ---------- -----  ----

               253974                    5


评论

共有 条评论