24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1163  |  回复: 8

lu29019

铁虫 (小有名气)

[求助] 如何基于相对高差进行地类提取?已有2人参与

请问虫虫们:如何根据相对高差提取地类?
譬如,平坝区定义为“丘陵山地内,地势低平,起伏很小,范围较大,海拔一般较低,相对高差不超过20m的地貌区域。”在DEM中,有什么办法提取出平坝区域呢?
有没有神马软件里面有这个功能?
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lu29019

铁虫 (小有名气)

有木有神马算法能实现这个功能?
2楼2015-05-15 10:41:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

nivsop

木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
arcgis不可以吗?
3楼2015-05-15 14:18:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lu29019

铁虫 (小有名气)

引用回帖:
3楼: Originally posted by nivsop at 2015-05-15 14:18:36
arcgis不可以吗?

arcgis 用哪个工具?请具体赐教,谢谢。
4楼2015-05-15 14:23:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cruelhero

金虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
采用焦点统计功能,设定计算范围大小,进行计算。
5楼2015-05-15 16:25:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lu29019

铁虫 (小有名气)

引用回帖:
5楼: Originally posted by cruelhero at 2015-05-15 16:25:45
采用焦点统计功能,设定计算范围大小,进行计算。

大虫,请问:如果我现在要对某个镇进行 “相对高差小于20m” 的地类提取,具体要怎么做呀?
在GIS中文帮助(http://help.arcgis.com/zh-cn/arc ... /009z000000r7000000)中看了一阵还是云里雾里的,还请大虾指点哈!
6楼2015-05-15 17:07:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cruelhero

金虫 (正式写手)

【答案】应助回帖

★ ★
lu29019: 金币+2, 有帮助, 谢谢,让人有了一些想法! 2015-06-08 12:50:05
应用以下这个简单的公式可逐个像元地确定输出栅格中各个像元位置上的值:焦点范围 = 焦点最大值 – 焦点最小值
对焦点的一个邻域进行计算,最大值—最小值不就是高差了?
7楼2015-05-15 17:13:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

nivsop

木虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★
lu29019: 金币+8, ★★★很有帮助, 谢谢,不错的一种办法! 2015-06-08 12:49:34
关键看你这个相对高差是怎么定义的了,基于dem的地形因子有一个因子叫地形起伏度,其定义是邻域内高程最大的栅格值减去高程最小的栅格值,我想你说的相对高差应该就是这个意思。如果是这个意思的话就简单了,你只要基于arcgis提取地形起伏度,然后把地形起伏度小于20的提取出来就好了,这个提取可以用extract by attribute操作
8楼2015-05-15 19:23:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lu29019

铁虫 (小有名气)

引用回帖:
8楼: Originally posted by nivsop at 2015-05-15 19:23:29
关键看你这个相对高差是怎么定义的了,基于dem的地形因子有一个因子叫地形起伏度,其定义是邻域内高程最大的栅格值减去高程最小的栅格值,我想你说的相对高差应该就是这个意思。如果是这个意思的话就简单了,你只要 ...

接大虾的回复,我把具体的做法给贴上来哈。
地形起伏度是指在一个特定的区域内,最高点海拔高度与最低点海拔高度的差值。它是描述一个区域地形特征的一个宏观性的指标。从地形起伏度的定义可以看出,求地形起伏度的值,首先要求出一定范围内海拔高度的最大值和最小值,然后,对其求差值即可。地形起伏度最早源于前苏联科学院地理所提出的地形切割深度,地形起伏度现在成为划分地貌类型的一个重要指标。
地形起伏度的具体提取方法如下:
方法一:
1) 激活 DEM 数据, 在 Spatial Analysis下使用栅格邻域计算工具 Neighborhood Statistics 。设置 Statistic type 为最大值,邻域的类型为矩形(也可以为圆) ,邻域的大小为 11×11(这个值也可以根据自己的需要进行改变),则可得到一个邻域为 11×11的矩形的最大值层面,记为 A;
2) 重复 1、2,只是把 Statistic type 值设置为最小值,即可得到 DEM 数据的最小值层面,记为 B;
3) 在Spatial Analysis下使用栅格计算器Calculator,公式为[A]-[B],即可得到一个新层面,其每个栅格的值是以这个栅格为中心的确定邻域的地形起伏值。
方法二:
在ArcGIS的Spatial Analyst Tool下,采用Focal函数分别计算DEM的最大高程值和最小高程值,再将最大高程值和最小高程值进行差值运算。
方法三:
用Createfishnet工具做个要计算的大小范围的栅格,用Zonal statistics直接计算RANGE,即为地形起伏度。
9楼2015-06-11 10:33:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 lu29019 的主题更新
信息提示
请填处理意见