水文分析是DEM数据应用的一个重要方面。利用DEM生成的集水流域和水流网络,成为大多数地表水文分析模型的主要输入数据。表面水文分析模型应用于研究与地表水流有关的各种自然现象如洪水水位及泛滥情况,或者划定受污染源影响的地区,以及预测当某一地区的地貌改变时对整个地区将造成的影响等,应用在城市与区域规划、农业及森林、交通道路等许多领域。
基于DEM的地表水文分析的主要内容是利用水文分析工具提取地表水流径流模型的水流方向、汇流累积量、水流长度、河流网络(包括河流网络的分级等)以及对研究区的流域进行分割等。通过对这些基本水文因子的提取和基本水文分析,可以在DEM表面之上再现水流的流动过程,最终完成水文分析过程。
本例采用上杭县域DEM数据来演示水文分析与流域划分的过程。
▷ 步骤1:无洼地DEM数据的生成。
DEM被认为是比较光滑的地形表面的模拟,但是由于内插的原因以及一些真实地形(如河流湖泊、喀斯特地貌)的存在,使得DEM表面存在着一些凹陷的区域。那么这些区域在进行地表水流模拟时,由于低高程栅格的存在,使得在进行水流流向计算时可能会得到不合理的或错误的水流方向,因此,在进行水流方向的计算之前,应该首先对原始DEM数据进行洼地填充,得到无洼地的DEM。
洼地填充的基本过程是先利用水流方向数据计算出原始DEM数据的洼地区域,并计算其洼地深度,然后依据洼地深度设定填充阈值进行洼地填充。我们在前面山脊线、山谷线、鞍部点的提取过程中已经进行过类似的操作,但没有使用填充阈值,而是选择对全部洼地进行填充。
首先,基于xianyudem数据进行水流方向的提取,生成水流方向文件flowdir(过程同前面的3.3.4,不再赘述)。
然后,点击ArcToolbox中的“Spatial Analyst工具”—“水文分析”—“汇”,弹出“汇”对话框(图3-36)。定义“输入流向栅格数据”为flowdir;定义“输出栅格”文件路径(shiyan03文件夹下)和文件名称(sink)。点击“确定”按钮,执行汇命令,进行洼地提取。
图3-36 “汇”对话框
洼地区域是水流方向不合理的地方,可以通过水流方向来判断哪些地方是洼地,然后再对洼地进行填充。但并不是所有的洼地区域都是由于数据的误差造成的,有很多洼地区域也是地表形态的真实反映。因此,在进行洼地填充之前,必须计算洼地深度,判断哪些地区是由于数据误差造成的洼地而哪些地区又是真实的地表形态,然后在进行洼地填充的过程中,设置合理的填充阈值。
图3-37 “分水岭”对话框
其次,点击ArcToolbox中的“Spatial Analyst工具”—“水文分析”—“分水岭”,弹出“分水岭”对话框(图3-37)。定义“输入流向栅格数据”为flowdir;定义“输入栅格数据或要素倾泻点数据”为sink;定义“输出栅格”文件路径(shiyan03文件夹下)和文件名称(sinkarea)。点击“确定”按钮,执行分水岭命令,用来计算洼地的贡献区域。
图3-38 “分区统计”对话框
再次,计算每个洼地所形成的贡献区域的最低高程。点击ArcToolbox中的“Spatial Analyst工具”—“区域分析”—“分区统计”,弹出“分区统计”对话框(图3-38)。定义“输入栅格数据或要素区域数据”为sinkarea;定义“输入赋值栅格”为xianyudem;定义“输出栅格”为zonalminmum;定义“统计类型”为最小值(MINIMUM)。点击“确定”按钮,执行分区统计命令。
然后,计算每个洼地贡献区域出口的最低高程即洼地出水口高程。点击“Spatial Analyst工具”—“区域分析”—“区域填充”,弹出“区域填充”对话框(图3-39)。定义“输入区域栅格数据”为sinkarea;定义“输入权重栅格数据”为xianyudem;定义“输出栅格”为zonalmax。点击“确定”按钮,执行区域填充命令。
最后,使用“栅格计算器”计算洼地深度。在“栅格计算器”对话框中(图3-40),定义“地图代数表达式”为“zonalmax”-“zonalminimum”;定义“输出栅格”路径(shiyan03)与文件名称(sinkdep)。点击“确定”按钮,执行栅格计算命令。
图3-39 “区域填充”对话框
图3-40 “栅格计算器”对话框
经过以上步骤,可以得到所有洼地贡献区域的洼地深度。通过对规划研究区地形的分析,可以确定出哪些是由数据误差而产生的洼地,哪些洼地区域又是真实地表形态的反映,从而根据洼地深度来设置合理的填充阈值,使得生成的无洼地DEM更准确的反映地表形态。
最后,使用“Spatial Analyst工具”—“水文分析”—“填洼”工具进行洼地填充,生成无洼地的DEM。在“填洼”对话框中(图3-41),定义“输入表面栅格数据”为xianyudem;定义“输出表面栅格”为filldem;根据sinkdep的计算结果,定义“Z限制”为15m。点击“确定”按钮,执行填洼命令。
洼地填充的过程是一个反复的过程。当一个洼地区域被填平之后,这个区域与附近区域再进行洼地计算,可能又会形成新的洼地,所以洼地填充是一个不断反复的过程,直到最后所有的洼地都被填平,新的洼地不再产生为止。
图3-41 “填洼”对话框
▷ 步骤2:汇流累积量的计算。
在地表径流模拟过程中,汇流累积量是基于水流方向数据计算而来的。对每一个栅格来说,其汇流累积量的大小代表着其上游有多少个栅格的水流方向最终汇流经过该栅格,汇流累积的数值越大,该区域越易形成地表径流。
具体计算过程如下:
首先,使用经过填洼处理的DEM(filldem)进行水流方向的分析,得到的水流方向文件命名为flowdirfill。
然后,使用“水文分析”中的“流量”工具进行汇流累积量的计算。在“流量”对话框中,定义“输入流向栅格数据”文件为flowdirfill;并在“输出蓄积栅格数据”中定义输出文件的路径(shiyan03文件夹下)和名称(flowaccfill)。“输入权重栅格数据(可选)”和“输出数据类型(可选)”均采用默认设置。点击“确定”按钮,执行流量计算命令。
▷ 步骤3:水流长度的计算。
水流长度通常是指在地面上一点沿水流方向到其流向起点(终点)间的最大地面距离在水平面上的投影长度。水流长度是影响水土流失强度的重要因子之一,当其他条件相同时,水力侵蚀的强度依据坡的长度来决定,坡面越长,汇聚的流量越大,其侵蚀力就越强,水流长度直接影响地面径流的速度,从而影响对地面土壤的侵蚀力。
水流长度的提取方式主要有两种,顺流计算和朔流计算。顺流计算是计算地面上每一点沿水流方向到该点所在流域出水口最大地面距离的水平投影;朔流计算是计算地面上每一点沿水流方向到其流向起点间的最大地面距离的水平投影。
具体操作过程如下:
首先,点击“Spatial Analyst工具”—“水文分析”—“水流长度”,弹出“水流长度”对话框(图3-42)。定义“输入流向栅格数据”为flowdirfill;定义“输出栅格”为flowdown;选择“测量方向”为DOWNSTREAM(顺流计算)。
图3-42 “水流长度”对话框
然后,点击“确定”按钮,计算水流长度。
使用同样工具,选择“测量方向”为Upstream(朔流计算),定义“输出栅格”为flowup,计算得到水流长度。
▷ 步骤4:河网的提取。
目前常用的河网提取方法是采用地表径流漫流模型计算:首先是在无洼地DEM上利用最大坡降的方法得到每一个栅格的水流方向;然后利用水流方向栅格数据计算出每一个栅格在水流方向上累积的栅格数,即汇流累积量,所得到的汇流累积量则代表在一个栅格位置上有多少个栅格的水流方向流经该栅格;假设每一个栅格处携带一份水流,那么栅格的汇流累积量则代表着该栅格的水流量。基于上述思想,当汇流量达到一定值的时候,就会产生地表水流,那么所有那些汇流量大于那个临界数值的栅格就是潜在的水流路径,由这些水流路径构成的网络,就是河网。
在前面的沟谷网络的提取中已经介绍过河网的提取过程,即通过阈值设定获取栅格河网,然后转换成矢量河网,并进行编辑修改等,这里不再赘述,仅说明汇流累积量阈值设定的注意事项。(www.xing528.com)
阈值的设定在河网的提取过程中很重要,直接影响到河网的提取结果。阈值的设定应遵循科学、合理的原则。首先应该考虑到研究的对象,研究对象中的沟谷的最小级别,不同级别的沟谷所对应的不同的阈值;其次考虑到研究区域的状况,不同的研究区域相同级别的沟谷需要的阈值也不同。所以,在设定阈值时,应对研究区域和研究对象进行充分分析,通过不断的实验和利用现有地形图等其他数据辅助检验的方法来确定能满足研究需要并且符合研究区域地形地貌条件的合适的阈值。本例中汇流累积量阈值设定为1 000,得到的栅格河网文件名称为hewang。
▷ 步骤5:河网链接信息的提取。
使用“Spatial Analyst工具”—“水文分析”—“河流链接”工具可以提取河流的链接信息。“河流链接”工具能够记录河网的结构信息,例如每条弧段连接着两个作为出水点或汇合点的结点,或者连接着作为出水点的结点和河网起始点。因此,使用“河流链接”工具能够得到每一个河网弧段的起始点和终止点,也可以得到该汇水区域的出水点。这些出水点具有很重要的水文作用,对于水量预测、水土流失强度分析等研究具有重要意义。同时,这些出水口点的确定,也为进一步的流域划分与分割准备了数据。
具体操作步骤为:
首先,打开“河流链接”对话框(图3-43),定义“输入河流栅格数据”为hewang,“输入流向栅格数据”为flowdirfill,“输出栅格”为streamlink。
然后,点击“确定”按钮,执行河流链接命令。
图3-43 “河流链接”对话框
▷ 步骤6:河网分级。
河网分级是对一个线性河流网络进行分级别的数字标识。在地貌学中,对河流的分级是根据河流的流量、形态等因素进行的。而基于DEM提取的河网的分支具有一定的水文意义。利用地表径流模拟的思想,不同级别的河网首先是它们所代表的汇流累积量不同,级别越高的河网,其汇流累积量也越大,那么在水文研究中,这些河网往往是主流,而那些级别较低的河网则是支流。
在ArcGIS的水文分析中,提供两种常用的河网分级方法:Strahler分级和Shreve分级。对于Strahler分级来说,它是将所有河网弧段中没有支流河网弧段分为1级,两个1级河网弧段汇流成的河网弧段为2级,如此下去分别为3级、4级,一直到河网出水口。在这种分级中,当且仅当同级别的两条河网弧段汇流成一条河网弧段时,该弧段级别才会增加,对于那些低级弧段汇入高级弧段的情况,高级弧段的级别不会改变,这也是比较常用的一种河网分级方法。对于Shreve分级而言,其1级河网的定义与Strahler分级是相同的,所不同的是以后的分级,两条1级河网弧段汇流而成的河网弧段为2级河网弧段,那么对于以后更高级别的河网弧段,其级别的定义是由其汇入河网弧段的级别之和,如图3-44所示,一条3级河网弧段和一条4级河网弧段汇流而成的新的河网弧段的级别就是7级,那么这种河网分级到最后出水口的位置时,其河网的级别数刚好是该河网中所有的1级河网弧段的个数。
图3-44 Strahler河网分级和Shreve河网分级
河网分级的具体操作过程为:
首先,点击“Spatial Analyst工具”—“水文分析”—“河网分级”,弹出“河网分级”对话框(图3-45)。
图3-45 “河网分级”对话框
然后,定义“输入河流栅格数据”为hewang,“输入流向栅格数据”为flowdirfill,“输出栅格”为fenjistra;“河网分级方法(可选)”栏中提供Strahler分级和Shreve分级两种方法,默认为Strahler分级方法,本例选择默认设置。
最后,点击“确定”按钮,执行河网分级命令。
▷ 步骤7:流域划分。
流域(Watershed)又称集水区域,是指流经其中的水流和其他物质从一个公共的出水口排出从而形成一个集中的排水区域。用来描述流域的还有流域盆地(Basin)、集水盆地(Catchment)或水流区域(Contributing Area)。流域数据显示了区域内每个流域汇水面积的大小。汇水面积是指从某个出水口(或点)流出的河流的总面积。出水口(或点)即流域内水流的出口,是整个流域的最低处。流域间的分界线即为分水岭。
任何一个天然的河网,都是由大小不等的、各种各样的水系所组成,而每一条水系都有自己的特征,自己的汇水范围(流域面积),较大的流域往往是由若干较小的流域联合组成。
流域划分的具体操作步骤为:
首先,使用“Spatial Analyst工具”—“水文分析”—“盆域分析”工具,进行流域盆地的获取。
在“盆域分析”对话框中(图3-46),定义“输入流向栅格数据”为flowdirfill,“输出栅格”为basin。再点击“确定”按钮,执行盆域分析命令,得到流域盆地栅格数据。
图3-46 “盆域分析”对话框
为了使计算结果更容易理解,可以将前面计算出的河网数据在同一视图窗口中打开,进行辅助分析(图3-47)。可以看到,所有流域盆地的出水口都在研究区域的边界上。使用流域盆地分析,可以将感兴趣的流域划分出来。
图3-47 “盆域分析”计算结果(叠置了河网数据)
图3-48 “捕捉倾泻点”对话框
然后,使用“Spatial Analyst工具”—“水文分析”—“捕捉倾泻点”工具(图3-48),进行流域出水口的获取。
经过上一步得到的流域盆地是一个比较大的流域盆地,在很多的水文分析中,还需要基于更小的流域单元进行分析,那么就需要使用流域分割将这些流域从这些大的流域中分解出来。流域分割首先要确定小级别流域的出水口位置,小级别流域出水口的位置可以使用“捕捉倾泻点”工具寻找。它的思想是利用一个记录着point的点栅格数据,在这个数据层中,那些属性值存在的点作为潜在的出水点,在该点位置上在指定距离内在汇流累积量的数据层上搜索那些具有较高汇流累积量栅格点的位置,这些搜索到的栅格点就是小级别流域的出水点。当然,也可以利用已有的出水点的矢量数据。如果没有出水点的栅格或矢量数据,可以使用基于河网数据生成的streamlink数据作为汇水区的出水口数据。因为streamlink数据中隐含着河网中每一条河网弧段的联结信息,包括弧段的起点和终点等,相对而言,弧段的终点就是该汇水区域的出水口所在位置。
本例中直接使用“河网链接”工具获取的streamlink数据作为汇水区的出水口数据。
最后,使用“Spatial Analyst工具”—“水文分析”—“分水岭”工具(图3-49),进行集水流域的获取。其基本思路为先确定一个出水点,也就是该集水区的最低点,然后结合水流方向数据,分析搜索出该出水点上游所有流过该出水口的栅格,直到所有的该集水区的栅格都确定了位置,也就是搜索到流域的边界,分水岭的位置。
具体操作步骤为:
图3-49 “分水岭”对话框
在“分水岭”对话框中(图3-49),定义“输入流向栅格数据”为flowdirfill,“输入栅格数据或要素倾泻点数据”为streamlink,“输出栅格”数据为fenshuiling;然后,点击“确定”按钮,执行分水岭命令,得到集水流域。
为了更好的表现流域的分割效果,可以加载前面得到的流域盆地和河网数据(图3-50)。由结果可见,通过streamlink作为流域的出水口数据所得到的集水区域是每一条河网弧段的集水区域,也就是要研究的最小沟谷的集水区域,它将一个大的流域盆地按照河网弧段将其分为一个个小的集水盆地。
图3-50 “分水岭”工具计算结果(分水岭与集水流域)
另外,基于水文分析还可获取规划研究区的重要生态涵养区(用户可以在研究区海拔高、坡度大、地形起伏较大、林地覆盖较好的区域设置生态涵养区,维持水土,涵养水源)和水质保持区(在一些主要河流上游的某些集水区域设立水质保持区,净化水质,维持生物多样性)的空间分布图,进而用于生态环境敏感性分析和建设用地适宜性分析。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。