问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

ArcGIS使用DEM数据划定汇水区具体步骤过程

创作时间:
作者:
@小白创作中心

ArcGIS使用DEM数据划定汇水区具体步骤过程

引用
CSDN
1.
https://blog.csdn.net/Button2018/article/details/125928760

本文详细介绍了使用ArcGIS软件进行水文分析,特别是基于DEM数据划定汇水区的具体步骤。文章内容包括前言、实验数据说明、操作步骤简要概括、具体操作步骤和总结等部分。文章结构清晰,步骤详尽,配有相关图片说明,具有较高的实用性和参考价值。

1 前言

  1. 本文主要记录了使用ArcGIS水文分析过程划分基于地形的集水区过程,主要参照了李远祥专家有关于水文分析的博客内容。经过初步的成功实验后,特记录了整个步骤流程。

  2. 在今天(2024.02.04)偶然发现了一个数据集(HydroSheds),该数据集包括了海拔、流向和流量累积等网格地图,以及由这些派生的次级矢量地图产品,如:具有属性信息的集水区、河流和湖泊。(这是官网的说明,我没有具体使用过。)

1.1 实验数据

  1. DEM数据:等高线数据或DEM数据,本人利用的是来自地理空间数据云的30米DEM数据。对于等高线数据,也可以参照李远祥专家在ArcGIS水文分析实战教程(3)DEM数据准备中所述方法进行DEM数据预处理。

  2. 研究区边界:本文所用到的研究区边界下载自阿里云平台,并使用mapshaper生成带空间属性的区域边界。

  3. 实验设备:操作软件为 ArcGIS 10.8.1

1.2 操作步骤简要概括

  1. 按研究区边界裁剪DEM
  2. 流向初提取
  3. 寻找汇
  4. 计算Z值限制
  5. 精确填洼
  6. 流向分析
  7. 流量统计
  8. 利用条件函数进行流量划分
  9. 河流分级
  10. 河流链接
  11. 栅格河网矢量化
  12. 绘制倾泻点
  13. 栅格流域提取
  14. 栅格流域转矢量面要素

2 具体操作步骤

2.1 按研究区边界裁剪DEM


网上有诸多教程,此步骤省略  

2.2 流向初提取

输入裁剪后的DEM数据,输出流向数据,并且命名为FlowDir_0

从流向提取结果中发现其栅格值是一组连续值,即不符合D8算法,因此可确定该DEM中存在汇。

2.3 寻找汇

输入流向数据FlowDir_0,输出汇栅格,并命名为Sink_FlowDir0

2.4 计算Z值限制

(1) 使用【分水岭】(即【集水区】)工具为每个汇创建汇流区域栅格

输入流向数据FlowDir_0、汇点数据Sink_FlowDir0,输出汇流区域栅格,并命名为Watersh_Sink0

(2) 使用【分区统计】在每个汇的分水岭中创建最小高程的栅格

输入汇流区域栅格Watersh_Sink0、区域字段为VALUE、裁剪后的DEM数据、统计类型为MINIMUM,输出每个汇分水岭的最小高程栅格,并命名为sink_min

(3) 使用【区域填充】在每个汇的分水岭中创建最大高程的栅格

输入汇流区域栅格Watersh_Sink0、裁剪后的DEM数据、输出每个汇分水岭的最大高程栅格,并命名为sink_max

(4) 使用【栅格计算器】计算Z值

输入“sink_max” - “sink_min”,输出Z值,并命名为Z

计算完成后可得到一组Z值如下:

其中,最小值为0,最大值为8

2.5 精确填洼

使用【填洼】工具,输入原始裁剪后的DEM,Z值取为上一步骤计算结果中的最大值(8),并进行加1(即为9);

输出填洼后的DEM,并命名为dem_fill

2.6 流向分析

输入填洼后的DEM数据dem_fill,输出流向数据,并且命名为FlowDir_1

如果填洼成功,则此处的流向计算结果应该是一组关于2的0到7次幂的离散值,即:

(1) 否则即填洼失败,需要再次重复步骤2~步骤5,其中DEM数据使用上一次填洼后的DEM数据即dem_fill;

(2) 本文也是进行了1次重复寻找汇以及计算Z值,最终才输出无洼DEM (dem_fill_1)

2.7 流量统计

输入流向数据FlowDir_1,输出流量栅格数据,并命名为FlowAcc

2.8 利用条件函数进行流量划分

流量划分的目的是确定地标径流能汇聚成河流的最小蓄积栅格,以R表示;其中R值的确定公式为:

R = W / ( X × Y ),其中

W,为划分的集水区的汇水面积;

X、Y为DEM的最小单元格尺寸,如我这里用的说是30米分辨率的DEM,则X、Y都为30

操作为:

使用【条件函数】工具,输入流量数据FlowAcc,表达式为VALUE>=R,条件为true时选择流量数据FlowAcc,输出筛选栅格,并命名Con_1000

在本例中,取划分的集水区的汇水面积为0.9㎞²,(即900000m²),则取R=1000

若划分的汇水面积过小,即R,对于小研究区域来说,则提取到的河网数据少,从而使得研究意义降低,因此要选取恰当的R

2.9 河网分级

输入流量划分后的结果Con_1000,以及流向栅格数据FlowDir_2,输出河网分级结果StreamO_1000

2.10 河流链接

输入流量划分后的结果Con_1000,以及流量栅格数据FlowDir_2,输出河流链接结果StreamL_1000

2.11 栅格河网矢量化

(1) 使用【栅格河网矢量化】工具对分级后的河网进行矢量化操作;

输入分级后和河流数据StreamO_1000、流量数据FlowDir_2,输出河网折线要素,并命名StreamT_Con_1000.shp

(2) 打开矢量化结果StreamT_Con_1000.shp的图层属性,选择符号系统——数量——分级色彩,其中字段值选项选择‘grid_code’,色带可自行选择,其他项为默认值

(3) 在标注选项卡中进行如下相应设置

(4) 生成河流的数字化方向

从目录中再次选择矢量化结果加入操作图层中,并对该线要素进行符号设置:

以上步骤操作结果如下:

2.12 绘制倾泻点

使用【要素折点转点】工具来捕捉其线段的终点,即倾泻点的位置;

该工具位于【数据管理】–【要素】–【要素折点转点】;

输入要素为矢量河网数据StreamT_Con_1000,点类型为END,数据输出记作FeatureVert_1000.shp

2.13 栅格流域提取

选择【集水区】工具,输入流向栅格数据FlowDir_2、河流链接数据StreamL_1000,倾泻点字段值VALUE,输出流域栅格watersh_1000

2.14 栅格流域转矢量面要素

使用【栅格转面】工具,(【转换工具】→【由栅格转出】→【栅格转面】),将流域栅格转矢量面要素。

输入流域栅格数据watersh_1000、字段值选择VALUE,输出流域矢量面数据,记作RasterT_1000.shp

对矢量化结果进行相关显示处理

最终结果为:

3 总结

在流量划分中,最小蓄积栅格R的确定影响着最终的集水区划分结果,本实验做了4组不同的比较,其结果如下:

(1) R值选取为100时:

(2) R值选取为500时:

(3) R值选取为1000时:

(4) 不进行流量划分,即河网分级、河流链接使用原始流量统计结果时:

由以上结果可知,是否进行流量划分,以及R值选取的大小都影响着最终结果。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号