• 大小: 2KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-06-12
  • 语言: Matlab
  • 标签: matlab  

资源简介

通过k均值算法对图像进行聚类运算,获得聚类图像

资源截图

代码片段和文件信息

function [mumask]=kmeans1(imak)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%   kmeans image segmentation
%
%   Input:
%          ima: grey color image
%          k: Number of classes
%   Output:
%          mu: vector of class means 
%          mask: clasification image mask
%
%   Author: Jose Vicente Manjon Herrera
%    Email: jmanjon@fis.upv.es
%     Date: 27-08-2005
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% check image
gpp=size(ima1);
for i=1:gpp
    for j=1:gpp
        ima(ij)=uint16(ima(ij));
    end
end
mask=ima;
ima=double(ima);
copy=ima;         % make a copy
ima=ima(:);       % vectorize ima 图像转成一个向量
mi=min(ima);      % deal with negative 求图像中的最小灰度值
ima=ima-mi+1;     % and zero values 图像所有值向下浮动至最小值为1

s=length(ima);    % 计算向量总元素数

% create image histogram

m=max(ima)+1;    %取最大像素值
h=zeros(1m);    %聚类前图像向量中各灰度出现的次数统计
hc=zeros(1m);   %聚类后图像向量所属类编号

for i=1:s
  if(ima(i)>0) 
      %bpp=

评论

共有 条评论