ENVI下基于决策树提取土地覆盖信息

0
分享 2016-06-25
基于知识的决策树分类是基于遥感影像数据及其他空间数据,通过专家经验总结、简单的数学统计和归纳方法等,获得分类规则并进行遥感分类。分类规则易于理解,分类过程也符合人的认知过程,最大的特点是利用的多源数据。
决策树分类主要的工作是获取规则,本文介绍使用CART算法获取规则,基于规则提取土地覆盖信息。下图是总体技术流程。


图:总体技术流程图
在获取规则过程中,由于计算量较大,我们选择一部分典型的区域作为实验区获取决策树。
1. 准备数据
本例使用环境小卫星CCD数据,已经过几何校正、工程区裁剪。这一步主要是构建多源数据集。数据集由蓝、绿、红、近红外四个波段、NDVI、ISODATA非监督分类结果、DEM。其中DEM使用30米的G-DEM,使用相同工程区矢量进行裁剪。
(1) 选择ENVI主菜单->Transform->NDVI,使用CCD数据计算NDVI。
(2) 选择ENVI主菜单->Classification->Unsupervised->IsoData,最大分类数量为10,迭代次数为10,选择路径输出分类结果。
(3) 选择ENVI主菜单->Layer Stacking,分别将蓝、绿、红、近红外四个波段、NDVI、ISODATA结果、DEM组合成一个7个波段的文件。
(4) 在波段列表中,打开Edit Header,将Band names修改为Band1、2、3、4,NDVI,ISODATA,DEM。
2. 获取规则
这里使用CART算法获取规则,首先安装ENVI下的CART扩展工具,下载地址:http://vdisk.weibo.com/s/lO3a2,将解压后的文件拷贝到ENVI安装目录下的Save_Add文件夹内,重新启动ENVI。
首先从影像中选择一部分区域作为获取规则的实验区,
(1) 在Display中显示影像,在Image视窗中单击Overlay->Region of Interest。在ROI Tool面板中,单击ROI_Type->Polygon,绘制一定大小的实验区,这个区域包含土地覆盖所有类型。
(2) 在ROI Tool面板中,选择File-> Subset data via ROIs,裁剪出实验区。
下面在实验区影像中选择一定数量的训练样本,利用训练样本获取专家知识规则。
(1) 在Display中显示裁剪的实验区影像,在Image视窗中单击Overlay->Region of Interest。在ROI Tool面板中,分别选择5个类型的训练样本(如下图),训练样本的可分离度在1.8以上。


图:训练样本
(2) 选择ENVI主菜单->Classification->Decision Tree->RuleGen ->Classifier,选择实验区影像。
(3) 选择决策树输出路径及文件名,单击OK执行。
注:由于此工具包基于4.4版本开发,在之后版本上运行完得到决策树文件之后会自动退出ENVI,不影响决策树规则文件的使用。


图:运行CART工具
(4) 选择ENVI主菜单->Classification->Decision Tree->Edit Existing Decision Tree,打开从实验区获取的决策树规则,如下图。
(5) 在ENVI Decision Tree面板中,选择Options->Execute,执行决策树。


图:决策树
(6) 对分类结果进行验证,类似选择训练样本,选择一部分ROI作为验证样本。选择主菜单->Classification->Post Classification->Confusion Matrix,计算精度验证混淆矩阵。
精度达到要求,规则的获取工作就完成了。
3. 土地覆盖信息提取
这一步是将获取的规则应用于整个图像。
(1) 选择ENVI主菜单->Classification->Decision Tree->Edit Existing Decision Tree,打开从实验区获取的决策树规则。
(2) 选择Options->Show Variable/File Pairings,单击第一列中的变量,全部替换为整个影像中对应的波段。
(3) 选择Options->Execute,执行决策树,得到最终的土地覆盖结果。


图:修改变量


图:土地覆盖
4. 分类后处理 分类后处理根据需求选择,包括更改类别颜色、分类统计分析、小斑点处理(类后处理)、栅矢转换、精度验证等操作。这里不一一叙述了。
文章来源:http://blog.sina.com.cn/s/blog_764b1e9d0100u3oz.html

0 个评论

要回复文章请先登录注册