预备知识:http://blog.csdn.net/danialxiaoe/article/details/44804477
ESP2下载链接 —— https://download.csdn.net/download/liujinli0712/10359988
参考文献:基于多层次分割的遥感影像面向对象森林分类_马浩然
http://nvsm.cnki.net/kns/detail/detail.aspx?FileName=1014318922.nh&DbName=CMFD2014
以上链接里所含内容本文尽量不再重复,这里只对容易困扰大家的操作细节进行个人经验的介绍,有误之处,欢迎指教。
按第1个链接流程安装好ESP插件并在ProcessTree中添加了ESP算法后,可以参考此文做如下工作。
一、ESP2参数的介绍
首先打开ESP算法面板,可以看到很多参数。接下来一一说明各参数作用及设置思路。
(1)Select map:本次计算的对象图层,默认为main.
(2)Use of Hierarchy(0=no;1=yes):是否使用多层次流程,不使用为0,使用为1,默认为1.
(3)Hierarchy:TopDown=0 or Bottom…=1:自上而下参数为0,自下而上参数为1,默认为1.
(4)Starting scale_Level 1:第1层分割起始尺度,默认为1.
(5)Step size_Level 1:第1层分割尺度的增长步长,默认为1.
(6)Starting scale_Level 2:第2层分割起始尺度,默认为1.
(7)Step size_Level 2:第2层分割尺度的增长步长,默认为10.
(8)Starting scale_Level 3:第3层分割起始尺度,默认为1.
(9)Step size_Level 3:第3层分割尺度的增长步长,默认为100.
(10)Shape(between0.1 and 0.9):形状因子,默认为0.1.
(11)Compactness(between0.1 and 0.9):紧致度因子,默认为0.5.
(12)Produce LV Graph(0=不生成;1=生成):生成LV图,默认为0.
(13)Number of loops:循环次数,默认为100次.
其它参数默认。
二、最优分割尺度的确定
算法面板中需要用到的形状因子和紧致度因子需要个人提前知道,可以做实验大致确定,思路是控制变量找最优。先随意选一个分割尺度,再控制住形状因子去找最优的紧致度因子,然后控制住紧致度因子再找最优的形状因子,这一步操作使用多尺度分割工具完成,无难度。最后就是控制住形状因子和紧致度因子来找核心的最优尺度(Scale)。
在使用ESP的过程中,疑问最多的地方就是原博文中的折线图是如何生成的以及哪些值才是最佳尺度。
再啰嗦一下原理:ESP工具通过计算不同分割尺度参数下影像对象同质性的局部变化(Localvariance,LV)的变化率值ROC-LV(rates of change of LV)来指示对象分割效果最佳参数。当LV的变化率值最大即出现峰值时,该点对应的分割尺度即为最佳分割尺度,一般来说,ESP计算得到的最优分割尺度并非只有一个,这是由于几个最优分割尺度是针对影像内不同地物得出的。
一些论文里出现了ROC-LV折线图,其生成的关键是参数(12)Produce LV Graph(0=不生成;1=生成):生成LV图,默认的0即不生成。其它参数自己决定就好。
我们把这个参数从0改成1后,才会在影像路径下生成一个名叫Hierarchy_BU的txt文件,只有将这个文件输入ESP插件工具,方可看到折线图及峰值。
将txt文件输入Chart工具并计算变化率值,可看到如下结果,图中可清晰地看出峰值的存在。在找到峰值以后,可直接用峰值对应的分割尺度做多尺度分割实验,寻找每种地物对应的最优尺度,省去了遍历尺度进行实验的不便。
具体地,在折线图上右击,可勾选Show point value工具,点选峰值以查看其对应尺度。
注意:有的同学设置ESP2算法后,虽然跑出了txt文件,但在Chart工具中计算后,未看到峰值,而是平滑的或陡峭的曲线。这种情况很常见,个人感觉是各层分割的起始尺度设置不合适引起的,不必烦恼,可以从20开始尝试,20、50、80,不怎么复杂就能试出起始尺度为多少时才会出峰值。另外,为了节约时间,还建议大家用小块地物相对丰富的研究区影像做实验,核心是因为大块影像和小块影像的最优尺度结果是相同的,亲测。