# k均值聚类 matlab

• a4_831355
了解作者
• matlab
开发工具
• 409.5KB
文件大小
• rar
文件格式
• 0
收藏次数
• VIP专享
资源类型
• 0
下载次数
• 2022-02-23 10:38
上传日期
matlab 中 k均值聚类 从其他地方k来得 里面有图 句子有解释
k均值聚类 matlab
• L5.bmp
65.1KB
• L6.bmp
65.1KB
• L7.bmp
65.1KB
• L1.bmp
65.1KB
• L2.bmp
65.1KB
• L4.bmp
65.1KB
• L3.bmp
65.1KB
• shiyan.m
2.6KB

% K-mean方法聚类 clear all; %%%%%%%%%%%%读入7幅遥感图像数据%%%%%%%%%%%%%%%%%% b(1,:,:)=imread('L1.bmp'); b(2,:,:)=imread('L2.bmp'); b(3,:,:)=imread('L3.bmp'); b(4,:,:)=imread('L4.bmp'); b(5,:,:)=imread('L5.bmp'); b(6,:,:)=imread('L6.bmp'); b(7,:,:)=imread('L7.bmp'); b=double(b); %转换为双精度类型% [temp,M,N]=size(b); N1=[10 20 20 10 10 15 10]';N2=[20 30 20 100 120 60 50]';N3=[80 80 80 200 180 80 110]'; %由图像选取初始分类中心% number1=0;number2=0;number3=0; %计量各类中象素点个数标志符% %设定迭代终止条件（若接近收敛则终止计算）% T=zeros(M,N); %T为判断分类标志符% e_new=10;e_old=20;times=0; %判断收敛程度的变量% format long; while(abs(e_old-e_new)>0.00001) times=times+1 e_new e_old=e_new; e_new=0; for i=1:M for j=1:N %%%%%%%%%%%%%%%%%%%%%%%%%判定各点归类%%%%%%%%%%%%%%%%%%%%%%%%%% d1=sum((b(:,i,j)-N1).^2); %计算各点与各初始分类中心之间的距离% d2=sum((b(:,i,j)-N2).^2); d3=sum((b(:,i,j)-N3).^2); min_d=min([d1,d2,d3]); %由K-mean算法判定各点所属的类别% if (d1==min_d) T(i,j)=1; number1=number1+1; elseif (d2==min_d) T(i,j)=2; number2=number2+1; elseif (d3==min_d) T(i,j)=3; number3=number3+1; end e_new=e_new+sqrt(min_d); %计算迭代终止条件% end end N1=N1*0;N2=N2*0;N3=N3*0; %调聚类中心% e_new=e_new/M/N; %%%%%%%%%%%%%%%%%%%%%%调整各聚类的中心%%%%%%%%%%%%%%%%%%%%%%%%% for i=1:M for j=1:N if (T(i,j)==1) N1=N1+b(:,i,j); elseif (T(i,j)==2) N2=N2+b(:,i,j); elseif (T(i,j)==3) N3=N3+b(:,i,j); end end end N1=N1/number1; number1=0; N2=N2/number2; number2=0; N3=N3/number3; number3=0; end result=zeros(M,N,3); % 进行上彩色，RGB彩图 for i=1:M for j=1:N % R分量 G分量 B分量 if (T(i,j)==1) result(i,j,1)=135;result(i,j,2)=206; result(i,j,3)=250; %LightSkyBlue% elseif(T(i,j)==2) result(i,j,1)=255;result(i,j,2)=236; result(i,j,3)=139; %LightGoldenrod1% elseif(T(i,j)==3) result(i,j,1)=244;result(i,j,2)=164;result(i,j,3)=96; %SandyBrown% end end end result=uint8(result); figure; imshow(result); %显示处理以后上彩色的结果图% imwrite(result,'result.bmp');

相关推荐
• Matlab合集
冈萨雷斯数字图像处理MATLAB版.中文版+数字图像处理第二版中文版（冈萨雷斯）+MATLAB-R2014a完全自学一本通+MATLAB R2016a完全自学一本通 素材文件+[模式识别与智能计算：MATLAB技术实现(第2版)].杨淑莹.扫描版
• MATLAB教程
MATLAB教程MATLAB教程MATLAB教程MATLAB教程MATLAB教程MATLAB教程
• MATLAB
MATLAB 该项目是在matlab上完成的，涉及创建和移动宇宙飞船和机器人。 太空飞船和机器人是使用Matlab中的简单几何形状创建的，并通过连续变换矩阵进行移动。 这个项目教我如何使用变换矩阵（旋转，平移等）的概念...
• MATLAB基础
一本学习matlab的一本好书
• MATLAB编译器
基于MATLAB 2018b版本介绍MATLAB编译器。介绍如何利用编译器将MATLAB代码编译为独立应用程序或组件，并在没有安装MATLAB的计算机上进行部署。
• matlabruntime
通过奇点容器运行您的matlab项目 可以在没有MATLAB的容器中运行matlab代码。 为此，我们首先需要通过Matlab编译器在本地构建相应的Matlab代码的独立应用程序，然后使用具有Matlab运行时（ 的容器）运行该应用程序 ）...
• matlab实现
matlab实现 matlab实现matlab实现matlab实现matlab实现
• matlab 教程
matlab 信号处理资料，里面包含信号处理pdf文档，一些杂乱的程序和命令等
• matlab教程
matlab教程，PPT格式，包含 matlab基本知识、matlab入门、matlab作图、线性规划、无约束优化、非线性规划、统计工具箱、差值、微分方程等多项知识点，并且每个知识点独立成为PPT，内还含有matlab信号处理详解等文档...
• matlab简介
1.MATLAB 开发环境 1.1 MATLAB 的视窗环境 进入MATLAB之后，会看到一个视窗MATLAB Command Window称为指令视窗，它是你键入指令的地方同时 MATLAB也将计算结果显示在此。 1.2 简易计算 我们先从MATLAB的...