模式识别第二次实验
学号:20121001873
班学号:07512213姓名:吴泽光
指导老师:马丽
中国地质大学(武汉)机械与电子信息学院2015年4月
1
f题目:基于kmea
s算法的遥感图像分类
实验目标:1掌握Kmea
s算法原理2用MATLAB实现kmea
s算法,并进行结果分析实验内容:1采用zy3sample数据(4004004),该数据包含4个类别:土地;农作物植被;大棚;道路。2关于初始聚类中心的选择,如果是采用随机选择方法,那么至少随机选择3次,并进行结果比较。(注意:道路占有的像素很少,所以随机选择4个聚类中心的话,很可能选择不到这种地物。可以思考该如何解决这个问题?可以简单的先从带有标签的CMap(也就是自己做的ROI保存的图像)中选择,也就是当选择的4个聚类中心都正确的分别属于一类地物的话,看看kmea
s算法的结果,是否比在整个图像中随机选择要好。)3关于迭代终止条件。可以参考下面的一种方法:(1)设置一个阈值,当前后两次聚类中心的差别小于这个阈值的时候,停止迭代。(2)设置一个阈值,当前后两次聚类中所包含的点的数目变化小于这个阈值的时候,停止迭代。(3)设置最多迭代次数,也就是不管迭代有没有收敛,只要达到这个迭代次数就停止。4关于距离度量方法,可以选用欧氏距离,光谱角距离(提供代码),如果两个都选择,那么比较一下聚类效果哪个好,或者也可以查资料采用其他更好的方法。5画出整个图像的聚类结果,每种类别采用一种彩色ujuj(提供ColorTable和画图代码)。
基本要求:1每位同学必须掌握kmea
算法的原理,以及会用MATLAB把算法实现,对图像进行分类。发挥部分:1关于初始聚类中心的选择,进行方法的比较和思考。2关于距离度量方法,进行方法的比较和思考。3实验的目的就是得到更好的聚类效果,不管采用什么方法,只要达到这个目的就可以。试验过程:1,kmea
s算法原理:Kmea
s算法是很典型的基于距离的聚类算法,采用距离作为相似性的评价指标,即认为两个对象的距离越近,其相似度就越大。该算法认为簇是由距离靠近的对象组成的,因此把得到紧凑且独立的簇作为最终目标。算法过程如下:1从N个数据中随机选取K个点作为类心2)对剩余的每个数据点测量其到每个类心的距离,并把它归到最近的类心的类3)重新计算已经得到的各个类的类心4)迭代2~3步直至新的类心与原类心相等或小于指定阈值,算法结束
2
f2,算法代码:1首先选择每个类的平均值作为每个类的类心,类心迭代5次:读遥感数据,r