规则网DEM的地形特征提取和空间分析
(1) 提取规则网DEM的山顶点、山谷点、马鞍点、山脊线、山谷线。
(2) 利用规则网DEM,提取河网线,并进行流域分析。
博客粘贴不了图片,相关图片请参考以下链接:
离散点插值形成规则网DEM、离散点三角化成TIN网、规则网与TIN网互转、规则网追踪等值线、三维可视化、各类插值效果对比资源-CSDN文库
2.1 提取山顶点、山谷点
Step1:添加DEM.tif数据,在工具箱中打开Spatial Analyst->邻域分析->焦点统计,根据需要设置邻域分析的类型为矩形,邻域的大小为30×30,统计类型为平均值(MEAN),则可得到一个邻域为30×30的矩形的平均值数据层,记为FocalSt_tif1。
图2.1 山顶点焦点统计
Step2:使用地图代数->栅格计算器,输入如图2.2所示公式,求焦点统计后的DEM与原始值之差,计算结果如图2.3所示。
图2.2 计算焦点统计后的数据与原始数据之差
图2.3 计算结果(绿色点为栅格山顶点)
Step3:如图2.4,打开Spatial Analyst->重分类->重分类,输入上一步差值结果,将原值为0的部分设为NoData,原值为1的设为1,得到栅格山顶点图。
图2.4 重分类
Step4:如图2.5,打开转换工具->栅格转点,输入上一步重分类结果,将栅格转为点要素,结果如图2.6所示。
图2.5 栅格转点
图2.6 山顶点要素
Step5:如图2.7,打开Spatial Analyst->提取分析->值提取至点,将原始栅格里的高程值提取到对应点要素属性上,结果如图2.8所示,可根据实际情况手动删除不符合实际的山顶点。
图2.7 值提取至点
图2.8 山顶点属性
Step6:右击上一步输出结果,选择属性->标注,如图2.9,勾选标注此图层的要素,标注字段设置为RASTERVALU,单击确定,结果如图3.10所示。
图2.9 设置标注
图2.10 山顶点展示
Step7:山谷点的提取同山顶点,只不过在步骤1的焦点分析中需要将统计类型更改为最小值(MINIMUM),得到一个邻域为30×30的矩形的最小值数据层,记为FocalSt_tif2。,如图2.11,其他步骤同2-6;最终结果如图2.12所示。
图2.11 山谷点焦点统计
图2.12 山顶点、山谷点展示(红色为山顶点,蓝色为山谷点)
技术路线如下:
- 提取正地形、负地形
Step1:如图2.13,在工具箱中打开Spatial Analyst->邻域分析->焦点统计,设置统计类型为平均值(MEAN),得到一个邻域为15×15的矩形的平均值数据层,记为FocalSt_tif3。
图2.13 焦点统计
Step2:使用地图代数->栅格计算器,输入如图2.14所示公式,将原始DEM减去平均值DEM,并进行条件判断将大于等于0的区域赋值为1,小于0的区域赋值为0,计算得到的正地形结果如图2.15所示。
图2.14 计算正地形
图2.15 正地形
Step3:使用地图代数->栅格计算器,输入如图2.16所示公式,将原始DEM减去平均值DEM,并进行条件判断将小于等于0的区域赋值为1,大于0的区域赋值为0,计算得到的负地形结果如图2.17所示。
图2.16 计算负地形
图2.17 负地形
(2)提取山脊线
Step1:如图2.18,打开Spatial Analyst->水文分析->填洼,输入原始DEM数据,选择将所有洼地全部填充,所以不需要计算洼地深度,Z limit为默认值。
图2.18 填洼
Step2:如图2.19,打开Spatial Analyst->水文分析->流向,输入填洼后的表面栅格数据,实现基于无洼地的水流方向计算,计算得到的流向栅格如图2.20所示。
图2.19 计算流向
图2.20 流向栅格
Step3:如图2.21,打开Spatial Analyst->水文分析->流量,输入流向栅格数据,实现汇流累积量的计算,计算得到的流量栅格如图2.22所示。
图2.21 计算流量
图2.22 流量栅格
Step4:使用地图代数->栅格计算器,输入如图2.23所示公式,提取汇流累积量为零值的区域ridgeline,如图2.24所示。
图2.23 计算汇流累积量为0区域
图2.24 汇流累积量零值区域
Step5:由于上一步提取到的数据中有很多不是山脊线,所以需要对该数据进行光滑处理。如图2.25,打开Spatial Analyst->邻域分析->焦点统计,设置以3×3窗口做平均值计算,处理结果如图2.26所示。
图2.25 焦点统计
图2.26 光滑处理后的数据
Step6:如图2.27,右击焦点统计后的数据,选择属性->符号系统->已分类,设置类别数为2,将光滑处理后的数据二值化,结果如图2.28所示。
图2.27 分级处理
图2.28 二值化结果
Step7:如图2.29,打开Spatial Analyst->表面分析->等值线,根据图像情况设置等间距为50,生成等值线验证判断山脊线位置,如图2.30和图2.31所示。
图2.29 追踪等值线
图2.30 全局等值线
图2.31 局部等值线
Step8:如图2.32,打开Spatial Analys->表面分析->山体阴影,输入原始栅格数据,生成山体阴影,如图2.33所示;辅助判断山脊线位置,如图2.34所示。
图2.32 生成山体阴影
图2.33 山体阴影
图2.34 叠加验证
Step9:如图2.35,右击焦点统计后的数据,选择属性->符号系统->已分类->已分类,以等高线图和山体阴影图判断山脊线位置,调整分级临界点,最终确定分界阈值为0.253583843,分级结果如图2.36所示。
图2.35 调整分级临界点
图2.36 分级结果
Step10:如图2.37,将光滑处理后的数据二值化,接近1的部分赋值为1,其余部分赋值为0,,结果如图2.38所示。
图2.37 重分类
图2.38 重分类结果
Step11:如图2.39,使用地图代数->栅格计算器,将重分类后的数据与正地形数据相乘,,以此消除存在于负地形区域中的错误山脊线,结果如图2.40所示。
图2.39 计算山脊线
图2.40 提取的山脊线
Step12:如图2.41,选择重分类,将属性值不为1的赋值为NoData,获得最终山脊线,如图2.42所示。
图2.41 重分类
图2.42 最终山脊线
(3)提取山谷线
Step1:选择Spatial Analyst->地图代数->栅格计算器,输入如图2.43的计算公式,其中近似为原始DEM数据最高高程值,获取如图2.44的反地形。
图2.43 计算反地形
图2.44 反地形
Step2-Step12:如图2.45到图2.50,步骤同(2)中的步骤2到步骤12,不过步骤2填洼时输入的数据为反地形数据,而不是原始数据;步骤9中的分界阈值调为0.35833078,最终提取到的山谷线如图2.51所示。
图2.45 填洼结果
图2.46 流向栅格
图2.47 流量栅格
图2.48 汇流累积量零值区域
图2.49 光滑处理
图2.50 重分级结果
图2.50 提取的山谷线
图2.50 最终山谷线
如图2.51,使用栅格计算器将提取的山脊线乘以提取的山谷线;重分类0赋NODATA;打开转换->由栅格转出->栅格转点,输入重分类数据;最终提取的马鞍点如图2.52所示。
图2.51 计算马鞍点
图2.52 最终马鞍点
2.4 流域分析
Step1:在2.2(2)的步骤3的基础上进行,使用处理后得到的流量栅格数据,输入如图2.53中的表达式,计算出流量大于等于1000的区域;如图2.54进行重分类;提取出的河网如图2.55所示。
图2.53 计算河网
图2.54 重分类
图2.55 河网栅格数据
Step2:打开Spatial Analyst->水文分析->栅格河网矢量化,输入河网栅格数据和流向栅格数据,单击确定运行结果如图2.57所示。
图2.56 栅格河网矢量化
图2.57 矢量河网数据
Step:3:如图2.58,打开制图工具->制图综合->平滑线,设置平滑容差为10米,平滑线结果如图2.59所示。
图2.58 平滑线
图2.59 平滑线结果
Step5:如图2.60,打开Spatial Analyst->水文分析->河网分级,输入相关栅格数据,分级结果如图2.61所示。
图2.60 河网分级
图2.61 河网分级结果
Step6:如图2.62,打开Spatial Analyst->水文分析->河网链接,输入相关栅格数据,链接结果如图2.63所示。
图2.62 河网链接
图2.63 河网链接结果