基于K-Means聚类的兰花品种自动识别系统
项目介绍
本项目实现了一个完整的兰花品种自动识别系统,采用经典的K-Means聚类算法对兰花特征数据进行无监督分类。系统通过计算样本间的欧氏距离,将150个兰花样本基于萼片长度、萼片宽度、花瓣长度、花瓣宽度四个特征自动划分为k个类别。该算法通过迭代优化质心位置,实现类内样本相似度最大化、类间相似度最小化的目标,并提供了完整的聚类评估和可视化分析功能。
功能特性
- 核心算法:实现标准K-Means聚类算法,支持欧氏距离计算和质心迭代优化
- 灵活参数:可自定义聚类数量k值、最大迭代次数和初始质心选择策略
- 完整流程:包含数据预处理、聚类执行、结果评估和可视化全流程
- 多维可视化:提供聚类结果的2D/3D散点图展示,支持不同特征组合的可视化分析
- 质量评估:自动计算轮廓系数、类内距离和等聚类质量指标
- 过程监控:记录每次迭代的质心变化和距离收敛情况,便于算法调试分析
使用方法
输入参数说明
- k值:指定期望的聚类数量(正整数)
- 兰花数据集:包含150个样本,每个样本具有4个特征维度(萼片长度、萼片宽度、花瓣长度、花瓣宽度)
- 最大迭代次数:算法停止条件,默认设置为100次
- 初始质心选择:支持随机初始化或用户指定初始质心坐标
输出结果
- 聚类标签:每个样本对应的聚类编号(1×150向量)
- 质心坐标:最终得到的k个聚类中心点坐标(k×4矩阵)
- 迭代记录:详细的迭代过程数据,包括质心变化轨迹和距离收敛情况
- 可视化图表:聚类结果的二维/三维散点图展示
- 评估指标:轮廓系数、类内距离和等聚类质量评估结果
系统要求
- MATLAB R2018b或更高版本
- 需要安装Statistics and Machine Learning Toolbox
- 推荐内存4GB以上,用于处理可视化渲染
文件说明
主程序文件整合了数据加载与预处理、聚类参数配置、K-Means算法核心逻辑执行、聚类结果可视化展示以及聚类质量评估等关键功能模块,构成了完整的兰花品种自动识别流程。