山脊山谷线的提取

更新时间:2024-05-15 13:41:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

山脊山谷线的提取

1.背景: 作为地形特征线的山脊线、山谷线对地形、地貌具有一定的控制作用。它们与山顶点、谷底点以及鞍部点等一起构成了地形起伏变化的骨架结构。同时由于山脊线具有分水性,山谷线具有合水特征,使得它们在地形分析中具有特殊的意义。 2.目的: 了解基于DEM水文分析方法提取山脊线和山谷线的原理,掌握水流方向、汇流累积提取原理及方法。 3.要求: 利用ArcGIS水文分析模块提取出样区的山脊线和山谷线。 4.数据: 25米分辨率的DEM数据,区域面积约140平方公里。 5.算法思想: 山脊线和山谷线的提取实质上是分水线和汇水线的提取。因此,可以利用水文分析的方法进行提取。 对于山脊线而言,由于它同时也是分水线,而分水线的性质即为水流的起源点。所以,通过地表径流模拟计算之后,这些栅格的水流方向都应该只具有流出方向而不存在流入方向,及栅格的汇流累计为0.因此通过对0值的提取,就可得到分水线,即山脊线。 对山谷线而言,可以利用反地形计算。即利用一个较大的数值减去原始DEM数据,得到与原始DEM地形相反的地形数据,使得原始的DEM中的山脊变成反地形的山谷,而原始DEM中的山谷在反地形中就变成了山脊。再利用山脊线的提取方法就可以实现山谷线的提取。但是此方法提取出的山脊和山谷位置有些偏差,可以利用正、负地形加以纠正。 6.操作步骤:

(1)正负地形的提取。

1)在ArcMap中加载样区的原始DEM数据。

2)加载SpatialAnalyst模块,单击SpatialAnalyst模块的下拉箭头,单击Neighborhood Statistics菜单工具,利用邻域分析的方法以11*11的窗口计算平均值,计算结果命名为meandem

3)单击SpatialAnalyst中的RasterCalculator命令,对原始DEM数据域邻域分析之后的数据meandem做减法运算。

4)对运算结果进行两次重分类(Reclassify命令),分级界限为0.一次将大于0的区域赋值为1(即正地形),小于0的区域赋值为0,命名为zhengdixing,如图所示。另一次将小于0的区域属性值赋值为1(即负地形),大于0的区域赋值为0,命名为fudixing,如图所示。

(2)山脊线的提取。

1)在ArcMap中加载样区的原始DEM数据,如图所示。启动ArcTOOLbox展开AnalysisTools工具箱,打开Hydrology工具集。

2)洼地填充:

双击Hydrology工具集中的Fill工具,进行原始DEM的洼地填充,在Input Surface raster文本框中选择原始DEM数据集dem,将输出数据命名为filldem,Z limit取默认值,即填充所有洼地。 3)无洼地的水流方向的计算:双击Hydrology工具集中的FlowDirection工具,在Input surface raster文本框中选择填充过的无洼地的DEM数据集filldem,设置输出文件名为flowdirfill。

4)汇流累计的计算:双击Hydrology工具集中的FlowAccumulation工具,选择flowdirfill作为输入的水流方向数据,输出数据命名为flowccl。

5)汇流累计量为零值的提取:单击SpatialAnalyst模块的下拉箭头,单击RasterCalculation命令,打开栅格计算对话框,在文本框中填写公式:

6)在ArcMAP中打开facc0,会发现有很多地方并不是山脊线,因此需对此数据作如下处理:利用邻域分析的方法,对facc0进行3*3的邻域分析,求均值,使数据变得光滑,处理后的数据命名为neiborfacc0

7)单击SpatialAnalyst模块中的SurfaceAnalysis中的Contour和Hillshade命令,分别生成原始DEM的等值线图ctour和晕渲图hillshade

8)在neiborfacc0数据上单击右键,选择Properties命令,进入Symbology选项卡,进行重新分级,将数据分为两级,这时需要不断调整分级临界点,并以等值线图和晕渲图作为辅助判断。属性值越接近于1的栅格余越有可能是山脊线的位置,最终确定的分界阈值为0.5541

9)将进行过二值化的neiborfacc0进行重新分类为reneibor,将属性值接近于1的那一类的属性值赋值为1,其余的赋值为0

10)利用SpatialAnlyst菜单下的RasterCalculator将重分类后的reneibor数据与正地形数据zhengdixing相乘,消除了那些存在于负地形区域中的错误的山脊线,然后将计算结果进行重分类,所有属性值不为1的栅格值赋为NO DATA,即得到了山脊线。

(3)山谷线的提取:

1)选择SpatialAnalyst下的RasterCalculator,打开栅格计算对话框,在文本框中填写反地形的计算公式:fandem=Abs(dem-2000)单击evaluation按钮,得到与原始DEM地形完全相反的反地形数据。得到反地形数据后,山谷线的提取步骤和山谷线的提取相同,最终利用重分类方法将结果二值化处理。这里不需要对反地形DEM进行洼地填充。

2)利用SpatialAnalyst菜单下的RasterCalculator将重分类后的数据与负地形数据相乘,消除那些存在于正地形区域中错误的山谷线,然后计算结果进行重分类,所有属性不为1的栅格属性值赋为nodata,即获得山谷线,如图所示。

(3)山谷线的提取:

1)选择SpatialAnalyst下的RasterCalculator,打开栅格计算对话框,在文本框中填写反地形的计算公式:fandem=Abs(dem-2000)单击evaluation按钮,得到与原始DEM地形完全相反的反地形数据。得到反地形数据后,山谷线的提取步骤和山谷线的提取相同,最终利用重分类方法将结果二值化处理。这里不需要对反地形DEM进行洼地填充。

2)利用SpatialAnalyst菜单下的RasterCalculator将重分类后的数据与负地形数据相乘,消除那些存在于正地形区域中错误的山谷线,然后计算结果进行重分类,所有属性不为1的栅格属性值赋为nodata,即获得山谷线,如图所示。

本文来源:https://www.bwwdw.com/article/oks7.html

Top