ENVI扩展工具:随机森林分类工具

工具说明

基于随机森林算法实现影像监督分类。源码来源于ENMAP-BOX v2.1.1并对其进行封装,方便在ENVI下使用。

ENMAP-BOX网站链接:http://www.enmap.org/enmapbox.html

工具引用

基于此工具进行科学研究,请引用:

van der Linden, S.; Rabe, A.; Held, M.; Jakimow, B.; Leitão, P.J.; Okujeni, A.; Schwieder, M.; Suess, S.; Hostert, P. The EnMAP-Box—A Toolbox and Application Programming Interface for EnMAP Data Processing. Remote Sens. 2015, 7, 11249-11266.

更新日志

2019-06-12

增加“Show RAM Msg”参数,默认为“Yes”,当样本较大,设置为“No”时,不再有以下信息提示。

2018-09-11

  • 增加输入数据判断
  • 增加输入数据判断消息提示
  • 增强进度条稳定性,修复进度条点击“Cancel”后不能正常显示问题

随机森林简介

作为新兴起的、高度灵活的一种机器学习算法,随机森林(Random Forest,RF)拥有广泛的应用前景。随机森林就是通过集成学习的思想将多棵树集成的一种算法,它的基本单元是决策树,而它的本质属于机器学习的一大分支—集成学习(Ensemble Learning)方法。从直观角度来解释,每棵决策树都是一个分类器,那么对于一个输入样本,N棵树会有N个分类结果。而随机森林集成了所有的分类投票结果,将投票次数最多的类别指定为最终的输出。

随机森林特点

随机森林是一种很灵活实用的方法,具有如下几个特点:

  • 在当前所有算法中,具有极好的准确率
  • 能够有效地运行在大数据集上
  • 能够处理具有高维特征的输入样本,而且不需要降维
  • 能够评估各个特征在分类问题上的重要性
  • 在生成过程中,能够获取到内部生成误差的一种无偏估计
  • 对于缺省值问题也能够获得很好得结果

实际上,随机森林的特点不只有这六点,它就相当于机器学习领域的Leatherman(多面手),你几乎可以把任何东西扔进去,它基本上都是可供使用的。在估计推断映射方面特别好用,以致都不需要像SVM那样做很多参数的调试

具体的随机森林介绍可以参见随机森林主页:https://www.stat.berkeley.edu/~breiman/RandomForests/cc_home.htm#inter

以上内容摘自:http://www.cnblogs.com/maybe2030/p/4585705.html

安装方法

方法1:使用 ENVI App Store 进行 ENVI 扩展工具的安装与管理。

App Store 下载地址:envi.geoscene.cn/appstore

方法2:手动下载 https://envi.geoscene.cn/appstore/ranfsafion

下载 zip 压缩包并解压,将得到的 extensions 和 custom_code 文件夹拷贝到如下 ENVI 安装路径,覆盖同名文件夹即可:

  • ENVI 5.3 - C:\Program Files\Exelis\ENVI53\

  • ENVI 5.4 及以上 - C:\Program Files\Harris\ENVI5x\

重启 ENVI 即可使用。

使用说明

一.启动

在Tool Box中,打开/Extensions/Random Forest Classification,工具界面如下图所示。

图 Random Forest分类工具参数面板

二.参数设置

Input Raster:待分类影像,有以下两个要求。

1)必须是ENVI标准格式数据(二进制文件+*.hdr头文件),若不满足,则会有以下提示(以*.tif为例):

2)在选择“Input Raster”时,不能进行空间、光谱裁剪或掩膜,否则会有以下提示:

Input Train ROIs:训练样本,格式为*.xml或者*.roi;可基于ROI工具构建。对于ENVI 5.3及5.3.1,在选择Input Train ROIs有可能弹出如下提示:

解决方法有两个:

1)启动工具前就将训练样本和与之关联的待分类影像在ENVI中打开;

2)在选择“Input Raster”时同时选中待分类影像和训练样本并打开。

Number of Trees:随机森林树的数量,值越大,构建耗时越长,反之用时越少。默认为100

Number of Features:特征数量,默认使用“Square Root”方法,即Number of Features=sqrt(nb);若选择“Log”方法,则Number of Features=log(nb)。其中nb为输入的待分类影像波段数

Min Node Samples:Minimum number of samples to stop splitting(……翻译不到位,请自行理解吧)

Min Impurity:Minimum impurity to stop splitting(……翻译不到位,请自行理解吧)

Display Result:是否在ENVI中显示分类结果,默认为“Yes”

Output Raster:分类结果输出路径 

三、RF分类示例

对于Random Forest分类参数,一般保持默认即可(RF的一大优势,即基本不需要调参即可获得良好的分类结果)。综上,笔者以一景Landsat-5 TM数据为例,在影像上均匀选取居民地、水体、休耕地、留茬耕地和绿植耕地样本,使用Random Forest分类工具默认参数进行监督分类,得到分类结果如下:

图 RF分类结果(左,分类结果;右,Landsat-5 TM标准假彩色显示)

posted @ 2022-06-20 14:51  ENVI-IDL技术殿堂  阅读(6117)  评论(1编辑  收藏  举报