基于ArcGIS的DEM数据生成方法的研究与探讨
来源:杂志发表网时间:2015-12-21 所属栏目:计算机技术
摘 要:DEM数据是地形可视化表达和地形分析的基础。就目前DEM数据的类型、DEM数据生成的方法进行了研究和探讨,并在ArcGIS平台的基础上,构建了试验环境,初步实现了由高程数据生成格网DEM数据和TIN DEM数据的思路、方法与步骤。
关键词:DEM;等高线;格网;TIN;ArcObjects
引言
DEM是多学科交叉与渗透的高科技产物,已在测绘、资源与环境、灾害防治、国防等与地形分析有关的各个领域发挥着越来越大的作用,也在国防建设与国民生产中有很高的利用价值。
ArcGIS是美国ESRI公司开发的一套功能强大的GIS软件。ArcObjects是ArcGIS提供的一套开发组件库,可以开发出所需要的各种GIS功能,同时为用户提供了更大的开发自主性,它为用户提供了一套完整的生成DEM数据和进行各种DEM分析的对象库和接口,用户可以使用这些对象库和接口快速创建自己的应用软件系统。
现基于ArcObjects生成DEM数据的方法进行了初步的研究和探讨。
1 DEM数据的常见表现形式
DEM模型按照数据的表现形式主要分为两种:不规则三角网(Triangulated Irregular Network简称TIN,也称三角网DEM)和规则格网(简称GRID,也称格网DEM)。
1.1规则格网(GRID)格式DEM
GRID是以规则排列的正方形网格来表示地形表面。GRID数据结构简单,数据存储量小,还可压缩存储,适合于大规模的使用和管理。现在我们常说的DEM及大规模的DEM数据建设,主要是指这种形式,这里所称的数字高程模型DEM,也是指GRID。
栅格模型支持大量丰富的空间分析,比如空间一致性分析、邻近分析、离散度分析以及最低成本路径分析等,这些分析速度也比较快。
1.2不规则三角网(TIN)格式DEM
TIN采用离散数据点生成的连续的不重叠的不规则三角形网格来表示地形表面,在地形平坦的区域,三角形较少,而在地形复杂的区域,三角形较多。因此,TIN能较好地顾及地形地貌特征,逼真表示复杂地形的高低起伏变化,并且能够克服地形平坦区域的数据冗余。但TIN的数据结构复杂,数据量大,一般只适用于小范围大比例尺的高精度地形建模。
由于三角形在形状和大小方面有很大的灵活性,所以这种模型能较容易表示断裂线和地形起伏较大的区域。TIN模型还支持很多的表面分析,如计算高程、坡度、坡向、进行体积计算、创建剖面图等,因此TIN建模方法在地形表面建模中引起了越来越多的注意,在GIS中得到了普遍使用,已成为表面建模的主要方法之一。
在ArcGIS中主要提供了RASTER和TIN两个类型的数据,它们分别对应GRID数据和TIN数据。在ArcGIS中的各种三维操作和三维分析功能都是基于这两种数据进行的。所以这里也主要研究和探讨基于网格(GRID)和基于不规则三角网(TIN)来生成DEM数据。
2 RASTER(GRID)数据的生成
在实际生产中,经常要利用等高线数据直接内插生成DEM数据,或者利用具有高程值的一定密度的离散点内插生成相应的DEM数据,从用户的角度出发,利用等高线数据直接内插生成DEM数据是一种经常采用的方法。
在实际应用中,通常有两种内插方法,一种是沿预定轴方向的等高线直接内插法,首先计算预定轴与相邻等高线的交点,然后利用这些交点通过基于点的内插方法完成内插的过程。另一种是沿内插点最陡坡度的内插,首先搜索相邻等高线上沿最陡坡度上的两点,然后根据这两点线性内插出格网结点的高程值。实际上,等高线内插的核心问题在于如何确定用于内插所需要的点。
在ArcObjects组件库中并没有提供直接由含有高程信息的等高线直接内插来生成GRID数据的方法,而是提供了利用具有高程值的离散点内插生成RASTER数据。我们可以利用间接的办法来实现:先将等高线数据生成TIN类型的DEM数据,然后再将TIN转换成RASTER数据。
实现思路和步骤:
(1)首先需要添加一个带有高程值的数据,作为生成RASTER的源数据;(2)通过从数据集中选择它的高程字段来创建一个FeatureClassDescriptor对象。该对象是一个从数据集中提取了高程字段新对象,作为进行内插操作的一个输入对象;(3)使用IRasterAnalysisEnvironment接口设置输出Raster网格的大小;(4)使用IInterpolationOp接口中的内插方法IDW进行内插操作;(5)生成并保存输出文件。
3 TIN数据的生成
等高线生成三角网主要有三种方法:等高线离散点直接生成TIN方法、将等高线作为特征线的方法、自动增加特征点及优化TIN的方法。
3.1等高线离散点直接生成TIN
首先将等高线上的点离散化,然后使用从不规则点生成TIN的方法生成TIN,这种方法并没有考虑等高线数据的特殊结构,会出现各种各样的问题,如:出现三角形的三个顶点都位于同一条等高线(即所谓的平三角形),或者三角形某一边穿过了等高线的情况,而这些情况按照TIN的特性来说都是不允许的。在实际应用中,这种算法很少直接使用。
3.2将等高线作为特征线的方法
将每一条等高线当作断裂线或结构线,对于三角形而言,至多只能从同一等高线取两个点,并且规定在这些线上不能有三角形生成。
3.3自动增加特征点及优化TIN的方法
这种方法的实质是将等高线离散化建立TIN,采用增加特征点的方式来消除TIN中的“平三角形”,并使用优化TIN的方式来消除不合理的三角形。
利用ArcObjects在生成DEM的方法上,TIN比Raster实现起来更容易一些,实现步骤如下:
(1)加载一个等高线数据集,用来生成TIN;(2)将该等高线数据集的空间引用设置为要创建TIN的空间引用;(3)利用ITinEdit接口中的InitNew方法生成TIN;(4)由于生成的TIN没有高程信息,还要利用ITinEdit接口中的AddFromFeatureClass方法添加高程信息到TIN中;(5)保存TIN数据。
结束语
DEM数据是GIS中进行地形可视化表达和地形分析的重要基础,而DEM数据生成方法的选择,直接决定了DEM数据生成的效率和质量,这里在对生成DEM数据的相关算法和技术研究的基础上,基于ArcGIS的ArcEngine二次开发平台,利用ArcObjects组件库提供的相关接口实现了DEM的生成,从实际效果来看,其数据的表现形式和精确度还是较令人满意的,当然,这还只是对DEM数据的生成方法进行了试验性的研究和探讨,真正要发挥DEM数据的作用,还需要结合具体的实际应用,进行结构和功能上的不断完善,尤其是在生成DEM数据的基础上进行各种相关的地形分析。
参考文献
[1]李志林,朱庆.数字高程模型[M].武汉:武汉大学出版社,2003.
[2]汤国安,刘学军,闾国年.数字高程模型及地学分析的原理与方法[M].北京:科学出版社,2005.
[3]邬伦等.地理信息系统原理、方法和应用[M].北京:科学出版社,2001.
作者简介:张禹,2004年毕业于中南大学地理信息系统专业,助理工程师,主要从事航测内业工作。
点此咨询学术顾问 快人一步得到答案