基于ArcGIS 10.0 的河道地形高程数据处理方法
基于ArcGIS 10.0 的河道地形高程数据处理方法
赵 焱 昆明船舶设备研究试验中心 云南昆明 650000
【文章摘要】
ArcGIS 作为地理信息系统平台的杰出代表,有着强大的地理处理功能。首先介绍了ArcGIS 10.0 地理信息系统平台和数字高程模型,介绍了ArcGIS 常用的桌面应用程序,描述了通过ArcGIS 10.0 对河道地形高程数据进行处理的流程,并以存有河道测量点X 坐标、Y 坐标、高程值的EXCEL 表格和数字高程模型作为数据源,结合实例对流程中的各个步骤进行了详细描述。通过河道测量数据函数法插值处理、数据读取和转换、空间分析工具中栅格计算器的使用等,实现了对河道地形高程数据的处理,给出了地形处理的结果并将其转换成标准的.dem 格式,以方便在其他软件中使用。该种地形高程数据处理方法简单易行,且能够在一定程度上降低水利工程测量工作的时间和成本。
【关键词】
ArcGIS ;全站仪;数字高程模型;栅格数据;矢量数据
中图分类号:TP319 文献标志码:A
0 引言
随着IT 技术的普及,地理信息的传播日益广泛,对社会经济生活的影响越来越突出。伴随着认知的深入,人们对地理信息质量的要求也越来越高。ArcGIS 作为目前最流行的地理信息系统平台软件, 主要用于创建和使用地图,编辑和管理地理数据,分析、共享和显示地理信息,并在一系列应用中使用地图和地理信息。
数字高程模型的出现是测绘技术的一大突破,用于地形测量中能够直观呈现立体的图形,其应用范围非常广,对于各种工程的计算和设计有着非常重要的作用。而数字高程模型中的高程地形数据往往需要根据实际测量情况进行处理和修正,本文介绍了一种通过ArcGIS 桌面应用程序对高程地形数据进行修改、以产生河道的方法。
1 ArcGIS 10.0 及数字高程地形简介
1.1 ArcGIS 10.0 简介
ArcGIS 10.0 是美国Esri 公司研发的构建于工业标准之上的无缝扩展的GIS 产品家族。作为一个可伸缩的GIS 平台, 它的产品线家族涉及桌面、服务器、移动和Web 应用等多个方面。
ArcGIS 桌面是一套完整的专业GIS 应用软件,它包含了一套带有用户界面的Windows 桌面应用程序,如ArcMap、ArcCatalog、ArcToolbox、ArcScene、ArcGlobe 等。它们通过对地理现象、事件及其关系进行可视化表达,构建特定的应用,可以实现任何从简单到复杂的GIS 任务,如制图、数据管理、数据编辑、地理分析、可视化和空间处理等。
1.2 数字高程模型简介
数字高程模型(Digital Elevation
Model), 简称DEM。它是用一组有序数值阵列形式表示地面高程的一种实体地面模型,是数字地形模型(Digital Terrain Model,简称DTM) 的一个分支,可以派生出其它各种地形特征值。二者描述的内容有所不同,DTM 描述的是包括高程在内的各种地貌因子,如坡向、坡度、坡度变化率等因子在内的线性和非线性组合的空间分布;DEM 描述的是零阶单纯的单项数字地貌模型,坡向、坡度、坡度变化率等地貌特性可以在DEM
的基础上派生。可通过直接从地面测量、摄影测量、从现有地形图上采集等方式建立DEM。
2 ArcGIS 河道地形高程数据处理的流程
ArcGIS 河道地形高程数据处理包括河道测量数据插值、读取,数据转换,栅格计算器处理,结果导出等多个方面,整个流程如图2-1 所示:
在上图中,河道测量数据为Excel 表格的形式,其中存有河道测量点的X 坐标、Y 坐标和高程值,处理流程描述如下:
1) 对河道测量数据作插值处理,使得测量点更密;
2) 通过ArcGIS 读取河道测量数据, 并将其导出为矢量数据;
3) 根据上述河道测量点矢量数据绘制河道轮廓,并将其转换为栅格数据;
4) 读取待处理的地形高程数据(.dem 形式),并将其转换为栅格数据;
5) 利用ArcToolbox 空间分析工具中的栅格计算器对河道轮廓栅格数据和地形高程数据(已转为栅格数据)进行处理。
6) 将地形高程数据处理的结果(栅格数据)导出为TIF 数据。
3 ArcGIS 河道地形高程数据处理的实现
上一节中简要介绍了ArcGIS 河道地形高程数据处理的流程,接下来对该流程中的各个步骤进行详细说明。
3.1 河道测量数据插值处理
全站仪是水利工程测量工作中非常常用的一种测量工具,具有操作方便、准确率高的特点,能够有效地降低测量难度[4]。通过全站仪可以对选取的河道测量点进行测量,通常以Excel 表格的形式保存测量点的X 坐标、Y 坐标和高程值。但是由于测量点选取过密会增加测量的时间和成本,选取太稀疏又会降低河道测量的精度。因此,测量结束后需要对测量数据进行插值处理。具体插值方法如下:根据已知点的X 坐标和Y 坐标,找出某段河道坐标的变化规律,计算出相应函数的系
数,如正弦函数、余弦函数、一次函数、二次函数等,然后用函数法进行插值。
3.2 河道测量数据读取
通过插值处理后,河道测量点已相对较密,更能精确的表示河道轮廓。接下来通过ArcGIS 读取Excel 表格中的河道测量数据,为了方便读取,表格中的每一列都应该有相应的列名。具体读取方法如下:
打开ArcMap,单击文件-> 添加数据-> 添加XY
数据, 在弹出的对话框中选择要添加的Excel 工作簿和工作表,指定X、Y 和Z 坐标字段,并选择输入坐标的坐标系为WGS84 坐标系。河道测量数据读取结果如图3-1 所示:
图3-1 河道测量数据读取结果
图3-1 中显示的是正弦函数法插值的河道数据读取部分结果。到此,已将Excel 河道测量点数据导入到ArcGIS 中, 但导入后的数据为只读事件的形式,需在内容列表中右键点击该事件,单击数据-> 导出数据,将其导出为点要素(矢量数据) 的形式。
3.3 河道轮廓绘制
上一小节中已成功读取了Excel 表格形式的河道测量数据,并将其导出为点要素。但实际生活中的河道并非一些离散的点,因此,需要将这些离散的点按照一定的顺序连接起来,以形成完整的河道轮廓。具体做法如下:
打开ArcCatalog,在目录树中单击一个文件夹(接下来新建的文件将存放在该文件夹下),点击文件-> 新建-> Shapefile,在弹出的对话框中输入新建文件的名称,选择其要素类型,可以是点、多点、折线、面、多面体,这里选择面,并定义其空间参考坐标系为WGS84 坐标系。
打开ArcMap,单击工具栏中的添加数据图标,打开新创建的Shapefile 面要素文件和3.2 小节中导出的河道测量点要素文件。单击工具栏中的编辑器-> 开始编辑,选择面要素文件,并根据点要素文件中的点绘制出一个封闭的面,点击工具栏中的编辑器-> 停止编辑,完成河道轮廓的绘制,如图3-2 所示:
图 3-2 河道轮廓绘制结果
3.4 数据转换
由于ArcGIS 栅格计算器不能对矢量数据进行操作,因此,需要将表示河道轮廓的面要素文件(矢量数据)转换为栅格数据。具体操作如下:打开ArcToolbox,单击转换工具-> 转为栅格-> 要素转栅格, 在弹出的对话框中选择输入要素,即预转换的要素文件,设置输出栅格的保存路径和名称,设置输出栅格数据集的象元大小,单击确定完成转换。
待处理的原始数据为地形高程数据(.dem 形式),同理,ArcGIS 无法识别该格式的数据,也无法使用栅格计算器对其进行处理,因此需将其转换为栅格数据。具体操作如下:打开ArcToolbox,单击转换工具-> 转为栅格->DEM 转栅格,在弹出的对话框中输入USGS DEM 文件,即待转换的地形高程数据文件,设置输出栅格的保存路径和名称,还可以根据需要设置输出数据类型(FLOAT 或INTEGER)和Z 因子,单击确定完成转换。
3.5 地形高程数据处理
ArcToolbox 空间分析工具中的栅格计算器可用于创建和执行地图代数表达式以输出一个新的栅格数据[5]。打开栅格计算器后,先创建地图代数表达式,可以使用系统提供的常用条件分析工具、数学工具、三角函数工具和逻辑判断工具,可以在图层和变量列表中选择要用在表达式中的栅格数据集,可以单击工具对话框中相应的按钮或通过键盘直接输入,将数值和数学运算符添加到表达式中。
通过河道测量数据读取和数据转换,已完成了地形处理数据源的准备。接下来可通过栅格计算器对转换后的地形高程数据进行处理。具体操作如下:打开ArcToolbox,点击空间分析工具--> 地图代数--> 栅格计算器,在弹出的对话框中创建如下地图代数表达式:
Con(IsNull("hedao_sg"),"yuanshi_
sg","yuanshi_sg" - 20)
上述表达式中使用了条件分析工具Con(,) 和逻辑判断工具IsNull(),其含义是: 判断表示河道轮廓的栅格数据集是否为空,若为空则取待处理的栅格数据集;若不为空,则待处理的栅格数据集中河道对应部分高程值下降20 米。其中,hedao_sg 表示河道轮廓的栅格数据集;yuanshi_sg 是由地形高程数据转换而成的待处理栅格数据集。
此外,还需要将环境中的处理范围设置为与原始栅格数据集相同,并根据需要设置栅格分析中的象元大小,最后设置输出栅格的路径和名称,点击确定完成地形高程数据的处理。处理前后在ArcGIS 中的对比结果如图3-3 和图3-4 所示:
图3-3 河道地形处理前
图3-4 河道地形处理后
ArcGIS 中打开的栅格数据集颜色不同则表示的高程值也不同,颜色越深则高程值越低,由图3-3 和图3-4 不难看出, 河道部分高程值已成功下降。
3.6 处理结果导出
地形高程数据在ArcGIS 中处理完毕后是栅格数据集的形式,为了方便在其他软件中使用处理结果,需将其导出并转换成标准的.dem 格式。具体操作如下:在内容列表中右键点击处理结果数据集,单击数据-> 导出数据,在弹出的对话框中根据需要对范围、空间参考、象元大小、压缩类型、导出位置、名称、格式等进行设置后点击保存,可将该栅格数据集导出为tif 格式,并在GlobalMapper 中打开查看其三维显示效果,如图3-5 所示:
图3-5 河道处理结果的三维显示效果
此外,还需要在GlobalMapper 软件中做相应的转换,将tif 格式的地形高程数据处理结果转换成标准的.dem 格式。
4 结语
本文简要介绍了ArcGIS 10.0 地理信息系统平台和数字高程模型,介绍了ArcMap、ArcToolbox 等常用的ArcGIS 桌面应用程序。此外,描述了通过ArcGIS 10.0 对河道地形高程数据进行处理的流程,并以存有河道测量点X 坐标、Y 坐标、高程值的EXCEL 表格和数字高程模型作为数据源,结合实例对流程中的各个步骤进行了详细描述。通过河道测量数据函数法插值处理、河道轮廓绘制、数据读取和转换、地形高程数据处理等步骤,本文实现了对河道地形高程数据的处理,给出了地形处理的结果并将其转换成标准的.dem 格式,以方便在其他软件中使用。该种地形高程数据处理方法简单易行,且能在一定程度上降低河道测量的时间和成本,能在水利工程测量工作和地形高程数据处理中发挥积极的作用。
【参考文献】
[1] 邢超, 李斌等.ArcGIS 学习指南— ArcToolbox[M]. 北京: 科学出版社,2010: 前言.
[2] 牟乃夏, 刘文宝, 王海银, 戴洪磊.ArcGIS10 地理信息系统教程——从初学到精通[M]. 北京: 测绘出版社,2012:3-5.
[3] 贾亚红, 白洁, 贾亚敬, 宇文海龙. 数字高程模型的制作及应用[J].
西部资源,2011,1:58-61.
[4] 胡跃进. 全站仪的误差分析及精度控制在水利工程测量中的研究[J]. 价值工程,2015,2:57-58.
[5] 栅格计算器[EB/OL].[
http://resources.arcgis.com/zh-cn/help/
main/10.2.
[6] 汤国安, 刘学军, 闾国年. 数字高程模型及地学分析的原理与方法[M]. 北京: 科学出版社,2005:2-6.
【作者简介】