利用 ArcGIS 水文分析工具提取河网的操作
DEM 包含有多种信息,ArcToolBox 提供了利用 DEM 提取河网的方法,但是操作比较烦琐(帮助可
参看 Hydrologic analysis sample applications),今天结合我自己的使用将心得写出来与大家分享。提取
河网首先要有栅格 DEM,可以利用等高线数据转换获得。在此基础上,要经过洼地填平、水流方向计算、
水流积聚计算和河网矢量转化这几个不步骤。
1.洼地填平
DEM 洼地(水流积聚地)有真是洼地和数据精度不够高所造成的洼地。洼地填平的主要作用是避免 DEM
的精度不够高所产生的(假的)水流积聚地。洼地填平使用 ArctoolBox->Spatial Analysis
Tools->Hydrology->Fill 工具。
2.水流方向计算
水流方向计算就可以使用上一步所生成的 DEM 为源数据了(如果使用未经洼地填平处理的数据,可能会
造成精度下降)。这里主要使用 ArctoolBox->Spatial Analysis Tools->Flow Direction 工具。输入的 DEM
采用第一步的 Fill1_exam1
3.水流积聚计算
这里主要使用 ArctoolBox->Spatial Analysis Tools->Flow Accumulation 工具流向。栅格数据就是第二步所
获得的数据(FlowDir_fill1)。可以看到,生成的水流积聚栅格已经可以看到所产生的河网了。现在所需要
做的就是把这些河网栅格提取出来。可以把产生的河网的支流的象素值作为阀值来提取河网栅格。
4.提取河网栅格
使用 spatial analyst 中的栅格计算器,将所有大于河网栅格阀值的象素全部提取出来。至于这个阀值是多
少因具体情况而定。通常是要大于积聚计算后得到栅格的最低河流象素值。这里采用的是 500 这个值。最
后生成只有 0、1 值的栅格数据。其中 1 表示是河网,0 是非河网。
5.生成河网矢量
这里主要使用 ArctoolBox->Spatial Analysis Tools->Stream to Feature 工具.Input Stream raster 为第四步
只有 0、1 值的河网栅格。流向栅格使用第二步所生成的栅格数据。
6.矢量河网处理
由于 Stream to Feature 工具.将所有栅格象素均转为矢量线段。所以要进行处理,方法是利用属性查询的
方法把所有 GRID_CODE 为 1 的全部选择出来。导出就得到了由 dem 所生成的河网矢量。
7.处理结果
最后,得到的河网如下图所示。但是由于是栅格转换而来。生成的河网并不是连续的矢量。可以根据需要做
简单的处理。