-
模式识别实验报告
学生姓名:
王晨曦
班
学
号:
075113-08
指导老师:
马丽
中国地
质大学
(
武汉
)
机械与电子信息学院
2014
年
6
月
基于<
/p>
kNN
算法的遥感图像分类
实验目标:
1.
< br>掌握
KNN
算法原理
2.
用
MATLAB
实现
kNN
算法,并进行结果分析
实验内容:
1.
采用
zy3sample
数据(
< br>400*400*4
)
,该数据分为
4
个类别:土地;农作物
/
植
p>
被;大棚;道路。有余力的同学最好再使用
INP
< br>高光谱数据
(
数据全称:
Ind
iana
Indian Pines
,大小
< br>145*145*200)
进行分类。
2.
随机在所有带标记的数据中(
也就是你自己做的
ROI
)选择
tra
in
和
test
数据
< br>(比例自己定,
可以
50%train
< br>数据,
50%test
数据,
也
可以
30%train
数据
70%te
st
数据
,
或者其他比例;可以尝试不
同
train
数据数目下,分类效果的差别)
< br>【提供
随机选择数据的代码】
,然后进行
kNN
分类。随机选择
10
次
,然后求平均结果
(以及标准差)作为最终对算法的评价。
3.
利用所有或者部分带标记的数
据作为
train
数据,对整个图像进行分类,得到
整个图像的分类结果图。
【提供
ColorTab
le
和画出分类图像的代码】
4.
关于
K
值的选择,可以选择为
1,3,5,7,9,11
等。有余力的
同学,分别用这
6
种
K
的取值进行
kNN
算法,
得到
每种
K
值下的总体分类精度
OA
,
然后进行比较
(
p
lot
画出不同
K
值下的
OA
变化曲线,或者给出表格,写出每种
K
值下的
OA
)
。
5.
关于距离
度量的选择,可以采用欧氏距离或者光谱角距离(提供代码;
zy3
数
据应该欧式距离更好,
INP
数
据应该
SAM
更好,因为
INP
是高光谱数据,
zy3
只
有
4
个波段是多光谱数据。
SAM
对高光谱数据的效果更好)
,有余力的同学,这
两种距离都采用,然后做比较,或者尝试其他可能更有效的距离度量方式。
数据介绍:
1.
调用
multibandread
函数从二进制文件中读取
多波段数据。
2.
用
reshape
函数,重置图像的行数列数。
p>
4.
用
find
函
数查找各个类别对应的样本。
5.
用
plot
函数画出所有类别的平均光谱。
5.
用
imagesc
函数画出所有类别的协方差矩阵。
实验结果与分析:
-
-
-
-
-
-
-
-
-
上一篇:国内外爆炸力学仿真软件研究现状及发展趋势
下一篇:浅谈超分子化学的应用及前景展望