首页 专题四 决策树分类

专题四 决策树分类

举报
开通vip

专题四 决策树分类专题四 决策树分类 1.1. 专题概述 本专题旨在向用户介绍ENVI决策树分类器(Decision Tree classifier)的功能。我们将使用Landsat 5 TM影像以及从USGS DEM中提取的一个DEM数据,该DEM为美国科罗拉多州(Colorado)Boulder地区的数字高程模型。运行决策树分类器,探究决策树的各种不同显示选项、删除决策树、修改使用决策树分类后影像的类别属性,以及进行其它多种操作。 · 本专题中使用的文件 光盘:《ENVI遥感影像处理专题与实践》附带光盘 #1 路径:envid...

专题四  决策树分类
专题四 决策树分类 1.1. 专题概述 本专题旨在向用户介绍ENVI决策树分类器(Decision Tree classifier)的功能。我们将使用Landsat 5 TM影像以及从USGS DEM中提取的一个DEM数据,该DEM为美国科罗拉多州(Colorado)Boulder地区的数字高程模型。运行决策树分类器,探究决策树的各种不同显示选项、删除决策树、修改使用决策树分类后影像的类别属性,以及进行其它多种操作。 · 本专题中使用的文件 光盘:《ENVI遥感影像处理专题与实践》附带光盘 #1 路径:envidata/decision 文件 描述 bouldr_tm.dat Landsat 5 TM影像 bouldr_tm.hdr ENVI相应的头文件 Boulder_dem.dat Colorado州Boulder地区USGS DEM的空间子集 Boulder_dem.hdr ENVI相应的头文件 1.2. 决策树简介 · 决策树的定义 单个决策树是一个典型的多级分类器,可以运用到单独一幅影像上,或者多幅叠置影像上。它由一系列的二叉决策树构成,这些决策树将用来确定每一个像素的所属正确类型。决策树能够基于数据集中任何可用的属性特征进行搭建。例如,有一幅高程影像,以及两幅不同时间采集的多光谱影像,那么这些影像中的任意一幅都能够对同一个决策树贡献决策。决策树中没有单个的决策能够将影像完全分割为不同的类别。事实上,每一个决策只是把数据分割为两个可能的类别或者两个类别的集合。 · ENVI中的决策树工具 ENVI中的决策树工具被设计用来执行决策规则,例如从许多优秀的统计软件中获取所需的规则,这些软件都提供了强大、灵活的决策树生成器。在遥感影像处理领域中,常用的两个算法为Salford Systems所设计的CART以及Insightful所设计的S-PLUS。ENVI的交互式决策树分析工具所用到的决策规则就是从上述软件中获得,决策规则中所包含的逻辑关系就能够被用来创建一个决策树分类器。 · 决策树的输入 在ENVI中,一幅影像,或者同一地区的影像集都能输入到决策树分类器中。如果影像带有地理坐标,那么即使这些影像所采用的地图投影方式和像素大小不同,ENVI也会在处理过程中,把它们自动叠置在一起。在ENVI中,决策树能够应用到多个数据集上。 在本专题中,我们所使用的决策树分类规则描述如下:第一步,将影像的像素分为两类:一类NDVI值大于0.3,另一类NDVI值小于或等于0.3。然后NDVI值高的那些像素再分为两类:一类坡度大于或等于20度,另一类坡度小于20度。接着坡度小的像素继续分为两类:阴坡和阳坡。而NDVI值高、坡度大于或等于20的像素就不再往下细分了。同样,NDVI值小于或等于0.3的那些像素也被分为两类:一类波段4的值小于20,另一类波段4的值大于或等于20。然而,波段4的值等于0的像素同波段4的值小于20的那些像素不是同一类的,此外波段1的值小于波段1的均值的那些像素同NDVI小于等于0.3的那些像素也不是同一类的,因此要对这些像素进一步的细分子类。 同样,该决策树也可以使用下列的准则进行描述: · 类1(Class 1):NDVI值大于0.3,坡度大于或等于20度 · 类2(Class 2):NDVI值大于0.3,坡度小于20度,阴坡 · 类3(Class 3):NDVI值大于0.3,坡度小于20度,阳坡 · 类4(Class 4):NDVI值小于或等于0.3,波段4的值大于或等于20 · 类5(Class 5):NDVI值小于或等于0.3,波段4的值小于20 · 类6(Class 6):波段4的值等于0 · 类7(Class 7):波段1的值小于波段1的均值 1.3. 使用ENVI的决策树工具 · 启动ENVI 启动前,请确保已正确安装ENVI。 · 要在UNIX或Macintosh OS X中启动ENVI,请在UNIX命令行中输入envi。 · 要在Windows系统中启动ENVI,请双击ENVI的图标。 · 打开并显示对决策树分类有贡献的影像 本专题所使用的影像为Landsat 5的TM影像的一个子集,它是科罗拉多州(Colorado)Boulder地区的影像。我们已经对该影像进行了校正,使其同10米分辨率的SPOT影像相匹配,所以现在该影像空间分辨率也为10米。我们也会用到USGS DEM数据的一个子集,该子集包括了Landsat子集所对应的区域。高程影像的像素大小同样是30米。所用的两幅影像采用了不同的投影方式,Landsat影像为State Plane,而DEM影像为UTM。 1. 打开一个影像文件,从ENVI主菜单中,选择File → Open Image File。Enter Data Filenames文件选择对话框出现在屏幕上。 2. 点击Open File按钮,选择《ENVI遥感影像处理专题与实践》附带光盘 #1 envidata目录中的decision子目录。同在其它应用操作中处理一样,从列表中选择bouldr_tm.dat文件,点击Open。影像中默认的波段就会加载到一个显示窗口,同时可用波段列表也会出现在屏幕上。 3. 从ENVI主菜单中,选择File → Open Image File。 4. 选择《ENVI遥感影像处理专题与实践》附带光盘 #1 envidata目录中的decision子目录。同在其它应用操作中处理一样,从列表中选择Boulder_dem.dat文件,点击Open。 5. 在可用波段列表中,选择Gray Scale单选按钮,然后点击Bouldr_dem.dat文件的Band 1。该DEM文件会在可用波段列表对话框中部的selected band区域中显示出来。 6. 在可用波段列表对话框的底部,点击Display #1按钮,并选择New Display。 7. 点击Load Band按钮,把该影像加载到一个新的显示窗口中。 8. 查看这些影像,它们将被输入到决策树中。在创建决策树之前,目视判读这些影像数据,对你会很有帮助。 9. 当完成这些操作后,从每个显示窗口的菜单栏中,选择File→Cancel,来关闭这两个显示窗口。 · 输入决策树规则 1. 选择Classification → Decision Tree → Build New Decision Tree,打开决策树工具。 决策树工具打开时就只有一个空的决策节点(decision node),在这个空的节点中输入任意的条件决策表达式,将该数据集的像素分为两组。 2. 第一个决策要基于Landsat影像。要定义这个决策,点击决策节点,当前这个节点被标注为Node 在随后出现的Edit Decision Properties对话框中,输入下面这个表达式: {ndvi} gt 0.3 这个决策告诉ENVI将像素分为两类,一类为绿色植被,另一类为非植被。NDVI是被普遍使用的植被指数,它是从多光谱影像的红波段和近红外波段计算出来的。决策树将逐像素地计算每个像素的NDVI植被指数,查找所有满足值大于0.3的像素。NDVI值大于0.3的像素应该含有部分绿色植被。 当执行决策树时,在处理过程中能计算许多变量的值。这些ENVI能自动计算的变量值包括坡度(slope)、aspect(坡向)、NDVI指数、主成分(principal components)、MNF成分、均值、标准差、最小或最大值、穗帽变换(tasseled cap transforms)等等。要了解关于这些变量的更多信息,请参见《ENVI遥感影像处理实用 手册 华为质量管理手册 下载焊接手册下载团建手册下载团建手册下载ld手册下载 》(ENVI User’s Guide)。 3. 在Name区域中输入NDVI > 0.3。这个文本信息将出现在决策树图形视图的决策节点上。点击OK按钮,注意到Node 1的名字被改变。 指定要应用决策表达式的文件 1. 在刚出现的Variables/Files Pairing对话框中,点击{ndvi}变量的名字。在随后出现的文件选择对话框中,选择bouldr_tm.dat影像。 这一步告诉决策树,当计算这个决策表达式时,NDVI值将会从bouldr_tm.dat影像中计算出来。 注意:由于不知道波长,ENVI将判断在NDVI计算中需要哪一个波段。如果影像在所选的头文件中没有包含波长信息,那么ENVI就会进行提示,以确定NDVI计算中所需的红波段和近红外波段。 输入附加的规则 现在这仅仅只是一个简单的决策树分类器。NDVI值大于0.3的像素将被分为白色类,NDVI值小于或等于0.3的像素将被分为黑色类。可以输入附加的决策规则来逐步形成一个更复杂的分类器。 1. 使用鼠标右键点击Class 1的节点,然后从弹出的快捷菜单中选择Add Children,来将NDVI值高的那类细分为子类。ENVI自动地在Class 1下创建两个新的类。 2. 点击空白的节点,并在Edit Decision Parameters对话框中,输入下面这个决策:{slope} lt 20。这个决策将根据坡面的陡峭程度,把NDVI值高的像素分为两类。 3. 在这个节点的Name区域,输入Slope < 20。然后点击OK。 4. 右键点击绿色的端元节点,它包括了NDVI值高,坡度低的那类像素,从弹出的快捷菜单中,选择Add Child。点击节点,并在Edit Decision Parameters对话框中,输入下列表达式:{aspect} lt 20 and {aspect} gt 340。这个决策将把NDVI值高、坡度小的那些像素,分为坡面北朝向的和坡面北朝向不显著的两类。 5. 在这个节点的Name区域,输入North,点击OK。 6. 右键点击黑色的端元节点,它包括了NDVI值低的那类像素,从弹出的快捷菜单中,选择Add Child。在Edit Decision Parameters对话框中,输入下列表达式:b4 lt 20。在波段4中,像素值小于20的像素主要为水体。 7. 在这个节点的Name区域,输入Low B4。点击OK。 · 执行决策树 将变量同文件匹配 现在已经生成了决策树,但是在它被执行前,所有决策树表达式中使用的变量必须同影像文件相匹配。 1. 使用60页“指定要应用决策表达式的文件”中所描述的办法,将下列变量同相应的文件或波段进行匹配。 {slope} = Boulder_dem.dat {aspect} = Boulder_dem.dat b4 = bouldr_tm.dat band 4 执行决策树 1. 要运行决策树分类,选择Options → Execute,或者在ENVI Decision Tree对话框的黑色背景区域,点击鼠标右键,选择Execute。 2. 在Decision Tree Execution Parameters对话框中,点击Bouldr_tm.dat影像,作为基准影像。其它影像的地图投影,像素大小和范围都将被调整,以匹配该基准影像。 3. 输入要输出的分类影像文件名,点击OK。 当决策树进行计算时,当前被用来分类的节点将被暂时性地赋为浅绿色。因此,就有可能看到一个节点到另一个节点的分类处理过程。当分类处理完成后,分类结果会自动地加载到一个新的显示窗口中。 查看决策树分类结果 在输出的决策树分类结果中,给定像素的颜色是由分类指定的端元节点的颜色确定的。例如,在决策树分类结果中的黄色像素就是在每个决策节点条件都是假(no)的那些像素的集合。所以,这些像素的NDVI值低,波段4的值高。这就意味着它们既不是水体也不是植被。 现在,已经执行了决策树,再来看一下决策树本身。默认的决策树并没有包括所有的应该显示出来的信息。 1. 在ENVI Decision Tree对话框的空白背景上,点击鼠标右键,从弹出的快捷菜单中,选择Zoom In。现在每个节点标签都会显示像素的个数以及所包含像素占总影像像素的百分比。 2. 在这种情况下,当决策树展开后,整个决策树可能不再适应窗口大小。使用鼠标左键,点击并拖曳窗口的一角,调整窗口的大小。 3. 将光标放置在每一个节点上,注意出现在ENVI Decision Tree对话框底部文本框中的节点信息。特别是在当决策树没有展开,没有显示节点详细信息时,这是另一个快速获取决策树中节点相关信息的有效方法。 · 修改决策树 添加新的决策 当执行完决策树分类并查看分类结果后,也许会发现其它决策规则可能会更有效些。例如,在这个决策树中,波段4的值小于20的那些像素中,某些像素是边缘像素,它们的值为0。因为它们的值小于20,所以它们是以蓝绿色显示出来的。但事实上造成了它们在波段4的值较低的原因是与其它蓝绿色的那些像素不同的。 1. 在波段4的值小于20的那些像素的端元节点上,点击右键,并从弹出的快捷菜单中,选择Add Children。点击节点,在Edit Decision Parameters对话框中,输入下列表达式:b4 eq 0。在Name文本框中,输入B4 = 0。 2. 在对话框背景处,点击右键,从快捷菜单中选择Execute,再次执行该决策树。现在,在输出的分类结果中,边缘像素就归为另一类了,但是红紫色的边缘看起来不太习惯。 改变类的颜色和名字 1. 点击红紫色的端元节点,显示Edit Class Properties对话框。点击V按钮(在UNIX操作系统下会是个向下的箭头),来显示颜色的列表,从中选择Black。在Name文本框中,输入Border。 2. 要将改变的颜色运用到决策树分类结果中,需要再次执行决策树。 边缘以黑色显示。 在决策表达式中使用波段索引 几个内置的决策树变量在决策表达式使用过程中,需要波段索引。 1. 在黄色端元节点上,点击鼠标右键,该节点包括了NDVI值低但是波段4的值高的那一类像素,从快捷菜单中,选择Add Children。点击节点,并在Edit Decision Parameters对话框中,输入下列表达式:b1 lt {mean[1]}。在Name文本框中,输入Low B1。点击OK。 该表达式将判断波段1的像素值是否小于波段1的均值。方括号中的“1”,指明在均值计算中将会使用到波段1。在ENVI决策树计算过程中的某些变量,包括均值计算,都必须同整个文件联系起来,而不是只与单个波段相联系。在这种情况下,必须在方括号中指定文件中的哪个波段要参与计算。 2. 在Variable/File Pairings对话框中,点击b1变量,在随后出现的文件选择对话框中,选择bouldr_tm.dat文件的Band 1,点击OK。 3. 在Variable/File Pairings对话框中,点击{mean}变量,选择bouldr_tm.dat文件,点击OK。现在,b1变量和{mean}变量都已经同Landsat影像的波段1相匹配。 4. 要将所做的修改运用到决策树分类结果中,需要再次执行决策树。现在,波段1的值较低的某些黄色像素的颜色就已变为红紫色。 修剪决策树(Prune the Decision Tree) 在使用决策树的过程中,经常需要测试某个指定的子节点是否对决策树的分类结果有效。ENVI的决策树工具提供了两种方法来移除已经添加了的子节点。使用Delete选项会从决策树中将子节点永久地移除,而使用Prune选项则是临时性地将它们从决策树中移除,可以在需要的时候再恢复它们,而不需重新定义决策规则或节点属性。 1. 在Low B1节点上,点击鼠标右键,从弹出的快捷菜单中,选择Prune Children。注意到,虽然还可以看到这些子节点,但是它们不再带有颜色,而且也没有连接到决策树上。这表明它们已经被修剪了,当执行决策树时,它们不会再被使用。 2. 右键点击Low B1节点,从快捷菜单中选择Restore Pruned Children。修剪和恢复子节点允许对带有和不带有特定子节点的决策树分类结果进行比较。 · 将保留树存为掩模(Save Tree Survivors to a Mask) 1. 在决策树中,右键点击红色节点,从快捷菜单中,选择Save Survivors to Mask。 这个选项将生成一个二值掩模影像。该类所包含的像素都被赋值为1,而其它不包含在这个类中的像素都被赋值为0。 2. 在随后出现的Output Survivors to Mask对话框中,输入保留树的输出掩模文件名,点击OK。生成的掩模影像列出在可用波段列表中。 3. 加载这个新的掩模影像到一个新的灰阶显示窗口中。注意到掩模影像中的白色像素都相应的为决策树分类影像中的红色像素。 注意:对于决策树中的每一个节点,save survivors to a mask这个选项都是可用的。所以可以为决策树中的每个节点都生成一个掩模。 · 保存所生成的决策树 有时可能需要保存生成的决策树,包括所有的变量和文件之间的匹配组合。保存过的决策树可以在以后的ENVI操作中恢复,重新调用。 1. 从决策树的视图窗口中,选择File → Save Tree。 2. 在随后出现的Save Decision Tree对话框中,输入要输出的决策树的文件名,点击OK。
本文档为【专题四 决策树分类】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_583062
暂无简介~
格式:doc
大小:62KB
软件:Word
页数:0
分类:互联网
上传时间:2013-06-03
浏览量:31