1、数字高程模型数字高程模型DEM 表面分析n DEMDEM基本地形因子的计算方法基本地形因子的计算方法n 流域水文分析流域水文分析n 地形指数地形分类地形指数地形分类第一节、DEM基本地形因子计算地形分析分类地形分析分类基本地形因子计算基本地形因子计算复杂地形分析复杂地形分析地形分析地形分析坡度计算坡度计算。地形水文分析地形水文分析地形特征提取地形特征提取可视性分析可视性分析坡向计算坡向计算。粗糙度计算粗糙度计算属性定义所具有的水文意义高度(altitude)高程值(elevation)气候,植被类型,势能(potential energy)上坡高度(upslope height)上坡面的平均高
2、度势能(potential energy)坡向(aspect)坡面的方位(azimuth)日照,蒸散发,动植物分布和聚集度坡度(slope)倾斜度(gradient)坡面和地下水的流速,植被,地貌,土壤水份等上坡坡度(upslope slope)上坡面的平均坡度径流速率(runoff velocity)扩散坡度(dispersal slope)扩散区平均坡度土壤流失区流失率计算(rate of soil drainage)流域坡度(catchment slope)集水区平均坡度聚集时间(time of concentration)上坡面积(upslope area)较短等高面以上集水区面积径流
3、总量(runoff volume),稳定态径流率(steadystate runoff rate)扩散面积(dispersal area)坡面下较短等高面面积土壤流失速率(Soil drainage rate)流域面积(Catchment area)流域出口以上集水区面积径流总量(runoff volume)特定的集水区面积(specific catchment area)Upslope area per unit width of contour 径流量(runoff volume),稳定态径流率(steadystate runoff rate),土壤水份,地貌(geomorphology)
4、流路长度(flow path length)到流域内某点的水流流经距离侵蚀速率(erosion rate),产沙量(sediment yield),聚集时间(time of concentration)上坡长度(upslope length)到流域内某点的平均流路长度水流加速度的计算(flow acceleration),侵蚀速率(erosion rate)扩散长度(dispersal length)流域内某点到流域出口距离土壤流失区流失阻力(Impedence of soil drainage)流域长度(catchment length)从流域最高点到出口距离坡面流的散布(overland
5、flow attenuation)剖面曲率(Profile curvature)坡度剖面曲率水流加速度(flow acceleration),侵蚀/沉积速率(erosion/deposition rate)表面曲率(plan curvature)等高线曲率(Contour curvature)水流汇聚和发散(converging/diverging flow),土壤水份可从DEM数据中通过地形分析方法得到的一些主要地形属性(据I.D.MOORE 等)1、高程分级、高程分级(矢量化、概化矢量化、概化)l 高程影响地表物质和能量的分布;高程影响地表物质和能量的分布;l 等间距或不等间距划分为若干高
6、程等级,如用来区分等间距或不等间距划分为若干高程等级,如用来区分丘陵、低山、中山、高山等丘陵、低山、中山、高山等,划分地貌类型。,划分地貌类型。ArcGIS命令命令v LATTICEPOLY lookup_table z_factorv 转换栅格中的坡度、坡向、高程范围和边界成多边形转换栅格中的坡度、坡向、高程范围和边界成多边形 SLOPE 根据查找表中的坡度等级生成多边形;ASPECT 根据查找表中的坡向等级生成多边形;RANGE 根据查找表中的高程等级生成多边形;NODATA 根据栅格单元是否有值或空值来生成多边形;BOX 生成最小矩形区域包含输入格网中的所有栅格 EXTENT 按栅格的e
7、xtent生成单个矩形框;查找表查找表v lookup_table 包含分类范围和相关输出多边形代码包含分类范围和相关输出多边形代码v lookup item-PERCENT_SLOPE,DEGREE_SLOPE,ASPECT or RANGE作为作为lookup_table的索引字段的索引字段.类型可以为类型可以为I,B,F,Nv 例如例如PERCENT_SLOPESLOPE-CODEData ranges31 0.0 slope=352 3 slope=5103 5 slope=10254 10 slope=25405 25 slope=40606 40 slope=60807 60 sl
8、ope=802、平均高程、平均高程v 式中式中n的计算单元内栅格个数;的计算单元内栅格个数;v h(Pk)为第)为第k点的高程。点的高程。v ArcGISArcMpa下中查数据源,下中查数据源,Catelog下查元数据下查元数据v ArcGISworkstation使用使用Describe查找查找v 分区平均值使用分区平均值使用ZonalMean()获取获取nkkphnh1)(13、极值高程和高差、极值高程和高差minmaxmaxmaxhhhphMINhphMAXhkkv通过查原数据获得通过查原数据获得4、区域相对高程、区域相对高程设参考高程为设参考高程为hm,则各栅格点上相对高程为:,则各栅
9、格点上相对高程为:k=1,NArcGIS下使用下使用newdemdem-heght命令,其中命令,其中Height可以为常量可以为常量hmphphkkv Zonalmean、zonalmax、zonalmin、zongnalrangev 相对高差:相对于什么?相对高差:相对于什么?5 5、局部相对高差、局部相对高差v 格点面元是在格网格点面元是在格网DEM 的水平投影面上,以四个相邻格点的水平投影面上,以四个相邻格点(i,j),(i,j+1),(i+1,j+1),(i+1,j)为顶点的面积范围;为顶点的面积范围;v 格点面元的相对高差指在格点面元的四个格点中,最高点格点面元的相对高差指在格点面
10、元的四个格点中,最高点与最低点之差,按下式求算:与最低点之差,按下式求算:h=MAX(h00,h01,h02,h03)MIN(h00,h01,h02,h03)式中式中hij=(i,j=0,1)为四个格点的高程为四个格点的高程;ArcGIS-Grid的实现方法?的实现方法?Focalmax-Focalmin6、剖面(、剖面(Profile)v 用于检查和量测沿某条线的高度变化用于检查和量测沿某条线的高度变化v SURFACEPROFILE profile_info_table sample_distanceProfile from View1ElevationDistanceVertical e
11、xaggeration 2.4 X15570925.0708.827555082511001375783.8858.8空间数据模型ArcMap下剖面图生成下剖面图生成v 在在ArcMap中添加数据,然后在中添加数据,然后在3D Analyst工具条上选择该数据(图工具条上选择该数据(图9.35););v 使用使用Interpolate line工具创建线,以确定剖面线的起终点(图工具创建线,以确定剖面线的起终点(图9.36););v 使用使用Profile Graph工具生成剖面图(图工具生成剖面图(图9.37););v 在生成的剖面图标题栏上点击右键,选择属性(在生成的剖面图标题栏上点击右键
12、,选择属性(Properties)项,进)项,进行布局调整与编辑(图行布局调整与编辑(图9.38););计算曲面沿线长度vSURFACELENGTH z_factor sample_distance surface_length_itemv计算沿弧段的曲面长度计算沿弧段的曲面长度空间数据模型ArcGIS下表面长度计算下表面长度计算v选择输入表面(选择输入表面(input surface),其值将用,其值将用以进行插值生成三维线段);以进行插值生成三维线段);v选择包含二维线段的输入要素(选择包含二维线段的输入要素(Input Feature Class);v指定添加到要素属性表称,默认为指定添
13、加到要素属性表称,默认为SLength(可选项);(可选项);设定采样间距(设定采样间距(Sampling Distance)在表面上计算长度的步距,当输)在表面上计算长度的步距,当输入表面为入表面为TIN时,如前所述,默认采样间距时,如前所述,默认采样间距以以TIN表面上三角形边及结点与线段的交点表面上三角形边及结点与线段的交点自然分割;如为栅格表面,默认间距为栅格自然分割;如为栅格表面,默认间距为栅格尺寸大小。此项亦为可选项。尺寸大小。此项亦为可选项。v设置设置Z值转换系数,用于当平面单位与值转换系数,用于当平面单位与Z值单值单位不同时进行转换(可选)位不同时进行转换(可选)剖面积计算剖面
14、积计算v根据某穿越地形表面的线路,求该线路垂直剖面根据某穿越地形表面的线路,求该线路垂直剖面积;具体计算时先求得该线路与积;具体计算时先求得该线路与DEM 格网边的格网边的所有交点所有交点Pi(Xi,Yi,Zi),再按下面公式计算得到,再按下面公式计算得到:n 为交点数;Di,i+1 为Pi 与Pi+1 间距离。7、坡度和坡向、坡度和坡向 坡度和坡向是表示地表面在地面某一点处的倾斜程度和倾斜方位的一个量;它是一个矢量,既有大小又有方向。某个点的坡度是其数值等于地表曲面在该点的切平面与水平面夹角,某个点的坡向是指该切平面上沿最大倾斜方向矢量在水平面上的投影的方位角;坡度的表示坡度的表示 输出的坡
15、度网格单位为度或百分数。注意:坡度表示为0-90,0为代表水平面的情况,当坡度为90百分数为无贫大坡度坡向的计算坡度坡向的计算拟合曲面法拟合曲面法v坡度的计算方法有很多,经证明,拟合曲面法是坡度的计算方法有很多,经证明,拟合曲面法是解求坡度的最佳方法;解求坡度的最佳方法;一般采用二次曲面,使用一个3*3 窗口,每个窗口单元的中心有一高程点,坡度坡向的计算公式坡度坡向的计算公式坡度坡向的计算公式坡度坡向的计算公式例子例子(dz/dx)=(a+2d+g)-(c+2f+i)/(8*x_mesh_spacing)(dz/dy)=(a+2b+c)-(g+2h+i)/(8*y_mesh_spacing)r
16、ise_run=SQRT(SQR(dz/dx)+SQR(dz/dy)degree_slope=ATAN(rise_run)*57.29578 ESRIArcGIS中的中的SLOPE函数函数SLOPE(,DEGREE|PERCENTRISE)ArcGIS中的中的Aspect函数函数 ESRIASPECT()注意坡向的规定空间数据模型ArcMap下坡度的计算步骤下坡度的计算步骤1.选择用来生成坡度图选择用来生成坡度图的的TIN表面;表面;2.选择坡度单位(度选择坡度单位(度/Degree或百分数或百分数/Percent););3.设定高程转换系数设定高程转换系数(当输入数据所定义(当输入数据所定义
17、的空间参考具有高程的空间参考具有高程单位时,自动进行转单位时,自动进行转换计算);换计算);4.指定输出图的栅格单指定输出图的栅格单元大小;元大小;空间数据模型ArcMap下坡向的计算步骤下坡向的计算步骤v(1)选择输入表面数据(选择输入表面数据(Input surface):):v(2)指定输出栅格单元大小;指定输出栅格单元大小;8、Curvature地表曲率地表曲率v profile curvature:坡度方向的曲率,区别凸坡和凹坡,:坡度方向的曲率,区别凸坡和凹坡,剖面曲率影响水流的加速和减速,从而影响侵蚀和沉积过程。剖面曲率影响水流的加速和减速,从而影响侵蚀和沉积过程。v Plan
18、curvature:表示等高线方向的曲率,影响水流的聚集:表示等高线方向的曲率,影响水流的聚集和分散(和分散(Converging/diverging flow),剖面曲率的算法原理剖面曲率的算法原理v 待算格点面元的四个格点中,最高点与其对角点的连线称待算格点面元的四个格点中,最高点与其对角点的连线称为格点主轴,主轴两端点高程的平均值与格点面元平均高为格点主轴,主轴两端点高程的平均值与格点面元平均高程的比,称为格点面元凹凸系数(程的比,称为格点面元凹凸系数(CD):式中hmax 为最高格点高程,hmax 为最高格点的对角格点高程,h 为格点面元高程的平均值,当CD 为正时,格点面元的实际表面
19、为凸形坡,为负时为凹形坡;ArcGIS计算方法计算方法vCURVATURE(,out_profile_curve,out_plan_curve,out_slope,out_aspect)v正的曲率值表示凸坡,负值表示凹坡,正的曲率值表示凸坡,负值表示凹坡,0表示平表示平地地9 9、表面积计算表面积计算v即求算格网表面的面积即求算格网表面的面积 对于格网分解为两个三角形,然后求三角形的表面积,整个DEM的表面积为所有格网单元面积之和;对于TIN 则直接求三角形面积;求三角形面积使用每点的(x,y,z)值;表面积计算公式表面积计算公式具体的计算公式为具体的计算公式为:式中,Di 表示第i 对三角形
20、两顶点间的曲面距离,S 表示三角形的表面积,P 表面三角形的周长的一半1010、投影面积计算、投影面积计算投影面积指的是任意多边形在水平面上投影的面投影面积指的是任意多边形在水平面上投影的面积,可直接采用海伦公式进行计算,一种简单的积,可直接采用海伦公式进行计算,一种简单的方法是根据梯形法则,如一个多边形由顺序排列方法是根据梯形法则,如一个多边形由顺序排列的的N 个点个点(xi,yi,i=1,N)组成,并且第组成,并且第N 点点与第与第1 点相同,则水平投影面积计算公式如下,点相同,则水平投影面积计算公式如下,如果多边形顶点按顺时针方向排列,则计算的面如果多边形顶点按顺时针方向排列,则计算的面
21、积值为负,否则为正。积值为负,否则为正。11、地表粗糙度、地表粗糙度v反映某一面积单元内地势伏变化的复杂程度反映某一面积单元内地势伏变化的复杂程度v格点面元的粗糙度(格点面元的粗糙度(roughnessroughness)指格点面元所对)指格点面元所对应的应的DEM 上表面积与其水平投影面积之比上表面积与其水平投影面积之比,记为记为CZ:vCZ=S 表面积表面积/S 投影面积投影面积v当当CZ=1 时时,粗糙度最小,格点面元的实际表面粗糙度最小,格点面元的实际表面即为水平面即为水平面;1212、体积计算、体积计算DEM 的体积可由四棱柱和三棱柱的体积进行累加的体积可由四棱柱和三棱柱的体积进行累
22、加得到,四棱柱上表面可用抛物双曲面拟合,三棱柱得到,四棱柱上表面可用抛物双曲面拟合,三棱柱上表面可用斜平面拟合,下表面均为水平面或参考上表面可用斜平面拟合,下表面均为水平面或参考平面,计算公式分别为平面,计算公式分别为:其中其中S3 与与S4 分别是三棱柱与四棱柱的底面分别是三棱柱与四棱柱的底面积积体积计算的体积计算的ARCGIS命令命令VOLUMEbase-valueout-info-filez-factor输出结果:输出结果:NAMEWIDTH OUTPUTTYPEN.DEC TIN3232C-ZMIN412F3 ZMAX412F3 DATUM 412F3 AREA818F5 planim
23、etric平面面积 VOLUME818F5 UNITS3232C-ZUNITS 3232C-ZFACTOR412F3空间数据模型ArcMap下的步骤下的步骤1.选择输入表面(选择输入表面(Input Surface););2.设定参考平面的高程值;设定参考平面的高程值;3.选择计算参考平面之上的体积选择计算参考平面之上的体积还是之下的体积;还是之下的体积;4.设置高程转换系数,将高程坐设置高程转换系数,将高程坐标单位转换为平面坐标单位标单位转换为平面坐标单位(可选);(可选);5.根据需要,可选择根据需要,可选择Save/append statistics to text file 复选框,将
24、计算复选框,将计算结果保存到指定名称的文本文结果保存到指定名称的文本文件中;件中;6.进行运算(点击进行运算(点击Calsulate statistics按钮),结果将显按钮),结果将显示在按钮之下,同时写入上步示在按钮之下,同时写入上步所指定的文本文件中。所指定的文本文件中。7.如有需要,可重新设置参数,如有需要,可重新设置参数,然后重新计算。然后重新计算。14、挖方填方计算、挖方填方计算通过对两个输入曲面进行对比,计算出挖方区域和填方区域通过对两个输入曲面进行对比,计算出挖方区域和填方区域CUTFILL z-factor计算流程15、山体阴影、山体阴影v HILLSHADE azimuth
25、 altitude ALL|SHADE|SHADOW z_factorv Azimuth:太阳方位角:太阳方位角v Altitude:太阳高度角:太阳高度角 v SHADE 仅考虑仅考虑 local illumination angles;不考虑遮盖的不考虑遮盖的影响。输出范围在影响。输出范围在0 and 255,0 表示黑,表示黑,255表示亮表示亮.v SHADOW 输出为输出为0表示遮盖区,表示遮盖区,1表示非遮盖区表示非遮盖区Shade选项Shadow选项空间数据模型ArcMap下的操作下的操作1.选择用来计算阴影的表面(选择用来计算阴影的表面(input Surface););2.设
26、置太阳高度角和方位角设置太阳高度角和方位角3.设定高程转换系数;设定高程转换系数;4.指定输出栅格单元大小指定输出栅格单元大小5.指定输出路径及文件名。指定输出路径及文件名。地表辐照度地表辐照度v 计算辐照度需考虑日照条件(太阳赤纬、高度角、时角及计算辐照度需考虑日照条件(太阳赤纬、高度角、时角及大气状况)与坡面几何条件的相互关系。辐照度由下式决大气状况)与坡面几何条件的相互关系。辐照度由下式决定:定:v 式中,式中,大气透过率,与太阳高度和大气状况有关;大气透过率,与太阳高度和大气状况有关;Sc为为太阳常数;太阳常数;Sa为太阳高度角,可由球面三角公式求出;为太阳高度角,可由球面三角公式求出
27、;t是时角;是时角;a、b为坡面方程系数;为坡面方程系数;为坡度。为坡度。SatbtaSaScEsincossincossin空间数据模型ArcGIS下的计算下的计算16、生成等高线、生成等高线vTINCONTOURvLATTICECONTOUR17、视见分析v ARC/INFO中提供中提供3种方法做视见分析:种方法做视见分析:ARC中的VISIBILITYARCPLOT中的SURFACEVIEWSHEDARCPLOT中的SURFACEDRAPE1)、VISIBILITYv ARC:VISIBILITY POLY|GRID FREQUENCY|OBSERVERS -输入栅格,做视见分析 -输入
28、的图层,为点或线,定义观测点.POINT-中的点定义观测位置 LINE-线中的节点和拐点定义观测位置 POLY 输出结果为多边形 GRID 输出结果为栅格,每个栅格记录了被观测的次数(FREQUENCY option),或者对应的观测点编码(OBSERVERS option).视见分析的结果视见分析的结果2)、)、SURFACEVIEWSHEDv SURFACEVIEWSHED 在定义的视见分析环境下,该在定义的视见分析环境下,该命令高亮显示可视范围命令高亮显示可视范围 v SURFACEVIEWSHED 使用以下命令视见分析环境使用以下命令视见分析环境:SURFACEOBSERVER 设置观
29、测点位置 SURFACETARGET 设置目标点位置 SURFACEEXTENT 设置分析的范围 SURFACEVIEWFIELD 设置观测场(方位)(可选AUTO)SURFACERANGE 设置从观测点到曲面的距离限制 SURFACERESOLUTION 设置临时结果栅格的分辨率3)、)、SURFACEDRAPEv SURFACEDRAPE MESH FISHNET|DIAGONAL|ALONGX|ALONGY distance lookup_table|linesymbol_grid item v SURFACEDRAPE LOCATOR distance*v SURFACEDRAPE X
30、YZ z_valuev SURFACEDRAPE v 通过将对象叠置在曲面上,生成一个曲面视见范围,对象可以为线网孔、点或通过将对象叠置在曲面上,生成一个曲面视见范围,对象可以为线网孔、点或图形文件图形文件 MESH.叠置网孔线.LOCATOR.用于交互定位网孔线 XYZ.叠置点 GRAPHICSFILE.叠置图形 distance 网孔线之间的距离 v 在执行在执行SURFACEDRAPE 前,必须使用前,必须使用SURFACE 命令设置当前处理的曲面,命令设置当前处理的曲面,并且建立视见分析环境,然后再使用并且建立视见分析环境,然后再使用SURFACEDRAPE或或SURFACEVIEWS
31、HED命令命令空间数据模型ArcMap下的操作下的操作1.选择计算表面(选择计算表面(Input Surface););2.设定观察点(选择用做观设定观察点(选择用做观测点的要素图层);测点的要素图层);3.设定高程变换系数;设定高程变换系数;4.指定输出栅格单元大小;指定输出栅格单元大小;第二节、地表水再分配分析第二节、地表水再分配分析v 利用数字地形模型作为输入,通过确定栅格任意点上坡利用数字地形模型作为输入,通过确定栅格任意点上坡区域的贡献和下坡区的水流方向,勾画出水系并且对其区域的贡献和下坡区的水流方向,勾画出水系并且对其相关特征定量化。相关特征定量化。v 利用利用DEM生成的流域和水
32、系,是大多数水文分析的数生成的流域和水系,是大多数水文分析的数据源,可用于决定洪水淹没范围分析,进行流域渗透水据源,可用于决定洪水淹没范围分析,进行流域渗透水文的模拟研究。文的模拟研究。1、地表水再分配的基本过程、地表水再分配的基本过程v水系和流域的概念水系和流域的概念v水系连接的类型水系连接的类型v径流过程径流过程v洼地和峰的问题洼地和峰的问题1)、水系和流域的概念)、水系和流域的概念v 水系(水系(drainage system)为为水在地表流动并且流向出口的网络。水在地表流动并且流向出口的网络。v 流域(流域(drainage basin,watershed,basin,catchmen
33、t,)是地表水和其他)是地表水和其他物质流向统一出口点物质流向统一出口点(outlet,pour point)的区域。的区域。v 出口点为流域边界的最低点。出口点为流域边界的最低点。v 两个流域的边界被定义为分水岭两个流域的边界被定义为分水岭(drainage)2)、水系连接的类型)、水系连接的类型v 水系可以理解为树,出口点为树根,树干为河沟,河沟的交水系可以理解为树,出口点为树根,树干为河沟,河沟的交点被称为节点或交点(点被称为节点或交点(node or junction.)。)。v 连接两个内流的节点,或连接节点和出口点的河沟叫做内流连接两个内流的节点,或连接节点和出口点的河沟叫做内流连
34、接(连接(interior links.)。)。v 外连接(外连接(Exterior links)定义为树最外面的分支定义为树最外面的分支。3)、径流过程)、径流过程v 水流的方向取决于每个点的坡向;水流的方向取决于每个点的坡向;v 水流的能量取决于地表坡度,陡的坡度产生大的能量,水流的能量取决于地表坡度,陡的坡度产生大的能量,可以输送更多和更大的固体物质,并具有较大的侵蚀可以输送更多和更大的固体物质,并具有较大的侵蚀潜力;潜力;v 水平曲率用于区别斜坡是山脊或山沟,山脊和山沟分水平曲率用于区别斜坡是山脊或山沟,山脊和山沟分别导致水流的聚集和分散;别导致水流的聚集和分散;4)、洼地()、洼地(
35、sinks)和)和 峰(峰(peaks)v DEMS中的错误通常划分为洼地(中的错误通常划分为洼地(sinks)和)和 峰(峰(peaks)。洼地)。洼地(sinks)是比较高的邻域所包围的区域,洼地可以是自然形成的。峰)是比较高的邻域所包围的区域,洼地可以是自然形成的。峰(peaks)是被比较低的邻域所包围的地区,通常是自然地貌)是被比较低的邻域所包围的地区,通常是自然地貌。v 洼地的数量在低分辨率时较多。另外当珊格的数据格式采用整形时,在洼地的数量在低分辨率时较多。另外当珊格的数据格式采用整形时,在低高差的地区洼地数量也会增多。低高差的地区洼地数量也会增多。v 当计算流向时,洼地会产生不合
36、适的结果,在提取流向时剔除。当计算流向时,洼地会产生不合适的结果,在提取流向时剔除。v DEM可能包含明显的水平条带,这来源于生成可能包含明显的水平条带,这来源于生成dem时的系统取样误差,时的系统取样误差,这在平坦地表的整形珊格中非常明显。这在平坦地表的整形珊格中非常明显。2、流域河网、流域边界提取算法、流域河网、流域边界提取算法v 基于栅格的地形分析技术在水文学中的应用,一般采用了基于栅格的地形分析技术在水文学中的应用,一般采用了OCallaghan和和Mark的坡面流模拟方法,的坡面流模拟方法,Jense和和Domingue(1988)、)、Martz和和De Jong(1988)、)、
37、Garbrecht(1997)在此基础上做了改)在此基础上做了改进,这种算法一般称之为进,这种算法一般称之为D8(Deterministic eight-neighbours)算法;)算法;D8算法示例67 56 49 46 5053 44 37 37 4858 55 22 31 2461 47 21 16 1953 34 12 11 12 D8 D8 模型模型高程格网示例高程格网示例 格网流向模型格网流向模型水流聚集模型水流聚集模型算法流程图算法流程图DEMDEM预处理预处理填洼填洼生成流向模型生成流向模型生成水流聚集模型生成水流聚集模型确定上游集水阈值确定上游集水阈值生成流域河网生成流域河
38、网完成水文建模完成水文建模确定流域出口确定流域出口勾画流域边界勾画流域边界地形参数提取地形参数提取子流域分割子流域分割确定子流域出口确定子流域出口空间数据模型Arctooolbox_hydrovArcGIS9将水文分析中的地表将水文分析中的地表水流过程集合到水流过程集合到ArcToolbox里,如图里,如图11.1所示。主要包括所示。主要包括水流的地表模拟过程中的水流水流的地表模拟过程中的水流方向确定、洼地填平、水流累方向确定、洼地填平、水流累计矩阵的生成、沟谷网络的生计矩阵的生成、沟谷网络的生成以及流域的分割等。成以及流域的分割等。1)洼地的填充)洼地的填充v 洼地的出现可导致流向的计算错误
39、。在某些情况下,可能洼地的出现可导致流向的计算错误。在某些情况下,可能有合理的洼地存在,这就需要对当地的地形情况有较多了有合理的洼地存在,这就需要对当地的地形情况有较多了解,以辨别真的洼地和错误。解,以辨别真的洼地和错误。v 洼地和流向不确定的情况:(洼地和流向不确定的情况:(1)周围单元格的值高于处)周围单元格的值高于处理的单元格的值(理的单元格的值(2)两个单元格间的水流互相流动()两个单元格间的水流互相流动(3)单元格在多个方向上有同样的高差。单元格在多个方向上有同样的高差。v 要精确的表示流向,应该对洼地进行填充;要精确的表示流向,应该对洼地进行填充;v 洼地可以用洼地可以用Sink函
40、数定位,并进行填充。函数定位,并进行填充。空间数据模型填充洼地的过程填充洼地的过程计算洼地深度计算洼地深度1、利用、利用SINK函数识别洼地函数识别洼地Grid:sinks=sink(flowdir)2、利用、利用WATERSHED函数函数生成每个洼地代表的流域区生成每个洼地代表的流域区域域Grid:sink_areas=watershed(flowdir,sinks)填充洼地的过程填充洼地的过程计算洼地深度计算洼地深度3、生成每个洼地流域范围内的最低高程值栅格、生成每个洼地流域范围内的最低高程值栅格Grid:sink_min=zonalmin(sink_areas,elevation)4、将
41、洼地填充到沿洼地边界的最低高程值,使、将洼地填充到沿洼地边界的最低高程值,使水流能流出洼地。表示为水流能流出洼地。表示为Sink_maxGrid:sink_max=zonalfill(sink_areas,elevation)5、最低高程值网格减去最低高程值网格得到洼、最低高程值网格减去最低高程值网格得到洼地深度栅格地深度栅格Grid:sink_depth=sink_max-sink_min洼地深度的计算便于下述fill指令确定z_limit的取值填充洼地的过程填充洼地的过程填充填充vFILL SINK|PEAK z_limit out_dir_grid:表示连续曲面的网格:剔除洼地或山顶的输
42、出网格SINK|PEAK:表示洼地将被填充或山顶将被削去z_limit 洼地和其出口点的最大高差或山顶与其相邻最高单元格之间的高差。洼地深度大于这个值,则该洼地不被填充;如果山顶与其相邻最高单元格之间的高差大于这个值,则山顶不被移去。默认情况下时填充所有洼地或移去所有山顶,而不考虑深度。out_dir_grid 可选输出流向栅格2)Flow Directionv按流向选最大坡度的原理,计算每个单元格按流向选最大坡度的原理,计算每个单元格流向其邻域的方向(流出方向);流向其邻域的方向(流出方向);v如果到相邻栅格的坡度相同,则放大邻域以如果到相邻栅格的坡度相同,则放大邻域以选择最陡的方向选择最陡
43、的方向流向的规定ArcGIS流向命令流向命令Grid:flow_dir=flowdirection(elevation)注意流向编码3)Flow Accumulationv累积流表示流入该单元格的栅格数目;累积流表示流入该单元格的栅格数目;v高的累积流可用于生成水系网;高的累积流可用于生成水系网;v低的累积流表示局部的地形高区,可用于识别山脊;低的累积流表示局部的地形高区,可用于识别山脊;ArcGIS中累积流的计算中累积流的计算FLOWACCUMULATION函数计算流入每一个上坡方向的栅格累积值作为这个栅格的累积流。也可以考虑权重因子,比如降雨量;Grid:flow_acc=flowaccu
44、mulation(flow_dir,rainfall)4)流域河网的提取流域河网的提取v确定上游集水区面积阈值;确定上游集水区面积阈值;v标注集水量累计值大于阈值的格网;标注集水量累计值大于阈值的格网;v将得到的图形进行矢量化处理;将得到的图形进行矢量化处理;v通过阈值调整控制生成河网密度;通过阈值调整控制生成河网密度;水系网提取的ArcGISv 水系网可从水系网可从FLOWACCUMULATION函数中得到的结函数中得到的结果中勾画出来。通过使用地图代数表达式对累积流网格果中勾画出来。通过使用地图代数表达式对累积流网格设置阈值,可以勾画出水系网。设置阈值,可以勾画出水系网。v 例如例如,要生
45、成一个在无值背景上值要生成一个在无值背景上值1代表的水系网,可以代表的水系网,可以使用:使用:Grid:stream_net=con(flowacc 100,1)Grid:stream_net=setnull(flowacc 100,1)v 上述单元格取值大于上述单元格取值大于100的所有单元格被赋值为的所有单元格被赋值为1,其,其它单元格被赋值为无值它单元格被赋值为无值NODATA。5)水系网级别的划分v 水系定级是一种给水系网中的连接赋级别代码。目的是按水系的支流数水系定级是一种给水系网中的连接赋级别代码。目的是按水系的支流数识别和分类河谷类别。识别和分类河谷类别。v 水系的某些特征可以通
46、过其级别推断出来。例如,一级支流仅受坡面漫水系的某些特征可以通过其级别推断出来。例如,一级支流仅受坡面漫流的控制,它没有其它支流的水流贡献流的控制,它没有其它支流的水流贡献,它们极易受非点源污染的影响它们极易受非点源污染的影响.v Usage:STREAMORDER(,-STRAHLER|SHREVE)STRAHLER/SHREVEv STRAHLER外连接总被赋值为外连接总被赋值为1。但当同样级别的水系交叉时,水系级。但当同样级别的水系交叉时,水系级别增加。所以,两个第二级的水系交叉时,会生成第三级的水系。但当两别增加。所以,两个第二级的水系交叉时,会生成第三级的水系。但当两个不同级别的水系
47、交叉时,则不会产生水系别的增加,例如,第一和第二个不同级别的水系交叉时,则不会产生水系别的增加,例如,第一和第二级的水系交叉不会产生第三级的水系,而保持较高级别的水系等级。级的水系交叉不会产生第三级的水系,而保持较高级别的水系等级。v Shreve法计算水系网中的所有连接数,外法计算水系网中的所有连接数,外连接被赋值为连接被赋值为1,但对内连接,但对内连接其级别数是增加的。例如,两个一级支流交叉时会产生二级支流,而一级其级别数是增加的。例如,两个一级支流交叉时会产生二级支流,而一级支流和二级支流交叉时则生成三级支流。支流和二级支流交叉时则生成三级支流。6)水系矢量化STREAMLINE(,ou
48、t_item,weed)空间数据模型7)Flow_length空间数据模型8)Stream_link9)ArcGIS流域的划分流域的划分watersheds=watershed(flow_dir,pour_points)BASIN()ArcGIS中的流域命令中的流域命令v 将流向网格作为输入,可以利用将流向网格作为输入,可以利用WATERSHEDWATERSHED或或 BASIN BASIN 函数函数生成流域。生成流域。v Grid:watersheds=watershed(flow_dir,pour_pointsGrid:watersheds=watershed(flow_dir,pour_
49、points)v 对任意单元格可以勾画流域,在对任意单元格可以勾画流域,在WATERSHEDWATERSHED函数中可以利用函数中可以利用SELECTPOINTSELECTPOINT函数标记流域出口点函数标记流域出口点(pour points)pour points)。v Grid:watersheds=watershed(flow_dir,stream_linkGrid:watersheds=watershed(flow_dir,stream_link)空间数据模型流域盆地的划分流域盆地的划分Basinv算出所有算出所有外流区域外流区域小结:小结:ArcGIS中的处理流程中的处理流程空间数据
50、模型第三节、地形(地貌)分类第三节、地形(地貌)分类v地形位置指数地形位置指数空间数据模型Benthic Habitat Pilot Area,DMWR空间数据模型Fagatele Bay National Marine Sanctuary,2001 bathy空间数据模型Algorithm compares each cells elevation to the mean elevation of the surrounding cells in an annulus or ring.bpi=int(bathy-focalmean(bathy,annulus,irad,orad)+.5)-3