GIS中矢量多边形网格化问题研究,本文主要内容关键词为:多边形论文,网格论文,矢量论文,GIS论文,此文献不代表本站观点,内容供学术参考,文章仅供参考阅读下载。
中图分类号:P208
文献标识码:A
文章编号:1672-0504(2004)01-0012-04
地理信息系统(GIS)是对与地理空间相关的信息进行有效管理与综合分析的计算机系统,GIS把各种与空间信息相关的技术与学科有机的融合在一起,并与不同数据源的空间与非空间数据相结合,通过空间操作与模型分析,提供对规划、管理、决策有用的信息产品[1,2]。目前,GIS已成为处理空间信息的标准方法。CIS的核心功能是空间分析,它特有的对地理空间信息特别是隐含信息的提取、表现和传输功能[3],是GIS区别于一般信息系统的主要功能特征。在进行CIS空间分析时,所获取的空间数据有相当大的一部分与一定的空间区域分布有关,对这些数据,多数GIS系统采用分层存储的方式进行处理,即将空间信息划分为众多专题图层(由于大多数区域单元的边界是不规则的,这些专题图层在数据结构上表现为不规则的矢量多边形),然后对这些专题图层进行相应的空间分析操作。但直接对这些不规则的矢量多边形区域进行各类空间分析操作并不容易,例如,区域叠加就是一类常见的空间分析操作,但由于矢量多边形的数据结构复杂,对矢量多边形区域进行叠加操作后常会出现“碎屑多边形”(Sliver polygon),虽然可采用一些算法(如设定一模糊容限)来消除它,但这会明显降低空间分析的精度。另外,对多个矢量多边形区域叠加后的结果也不易进行其它分析与量算。因此,在进行实际的空间分析时,常常需要将边界不规则的矢量多边形区域转换为边界较为规则的格网状区域(如正方形、三角形或矩形区域),再对这些格网状区域进行各种空间分析操作与属性运算。相比于不规则的矢量多边形区域,格网区域的数据结构简单,易于在其上进行各种空间分析操作(特别是区域叠加操作),并可及时更新数据,从而使信息具有较强的现势性。本文介绍将不规则矢量多边形区域网格化为规则的格网区域时出现的问题及解决办法,在分析现有网格化算法的基础上,阐明各类算法的优缺点及应用领域,以期能对实际的GIS空间分析起一定的指导作用。
1 矢量多边形网格化算法
从本质上来讲,矢量多边形区域网格化是一个从源区域(不规则的矢量多边形区域)到目标区域(规则的格网区域)的转换过程,这种转换不仅包括区域边界形状的改变,更重要的是它还包括源区域所包含的属性信息到目标区域的属性信息的转换。按照属性信息转换规则的差异,矢量多边形网格化有四类算法[3-6],即中心点归属法、面积占优法、重要性法和面积内插法。在矢量多边形网格化时,应使生成的格网区域尽量保持区域属性的真实性,最大限度保留或体现源区域所蕴含的属性信息。下面以一个简单的研究实例来说明各类算法的实现思想和应用范围。
如图1所示,研究区域按照自然地理边界可划分为三个多边形区域A、B、C,各区的属性信息见表1。现在需要将研究区域网格化为50×50m的格网状区域(图2)。不可避免地,网格化后得到的格网区域可能有落在多个源区域的情况(如图2中含阴影斜线的格网区域a、b、c)。那么,究竟该按照怎样的规则才能实现最大限度地合理推定这些格网区域上的属性值呢?
图1 源数据区域示意
Fig.1 Sketch map of the source data zones
图2 网格化后的区域示意
Fig.2 Sketch map of the gridding data zones
表1 源数据区域属性信息
Table 1 Attribute information of the source data zones
区域
面积()
人口总数(人)
人口密度(人/)
A 0.49
13502755.1
B 0.78
15401974.4
C 0.35
10703057.1
(1)中心点归属法是一种最为简单的属性判别方法,它将各个格网区域中心点所在的源区域的属性值作为整个格网区域(目标区域)的属性值。按照中心点归属法的规则,在图2中,网格a的中心点落在源区域B内,所以格网区域a的属性值与B同,即:面积为2500,人口密度为1974.4人/,人口总数为4.94人;网格b的中心点落在源区域C内,属性值与C同,即:面积为2500,人口密度为3057.1人/,人口总数为7.64人;网格c的中心点落在源区域A内,属性值与A同,即:面积为2500,人口密度为2755.1人/,人口总数为6.89人。一般而言,中心点归属法适用于具有连续分布特征的地理要素,如降水量分布、人口密度图等。在实际应用时,可能会有格网区域的中心点落在多个源区域的边界上而无法判别中心点位置归属的情况,这需要结合其他方法(如面积占优法、重要性法或者面积内插法)来确定,或者直接由分析者根据经验和需要来指定其属性值。
(2)面积占优法是指由在格网区域的组成中占面积比例最大的源区域的属性值来决定整个格网区域的属性值,它适用于分类较细、格网较小的情况。在图2中,按照面积占优法的规则,格网区域a和b的属性值不变;格网区域c属性值应为:面积2500,人口密度3057.1人/,人口总数7.64人。
(3)重要性法是指根据落在格网区域内不同源区域的重要性而选取最重要的源区域来决定该格网区域的属性值,它适用于具有特殊意义且面积较少的区域。如在图2中,若源区域A的社会经济发展水平远较源区域B、C为高,且需要重点考察源区域A内的人口分布情况(或其他相关的空间信息分布),则可按照重要性法将图2中的格网区域a、b、c的属性值都赋为与源区域A相同。
(4)上面的三种方法都是以一个源区域的属性值来决定目标区域(格网区域)的属性值,但事实上,目标区域往往是由多个源区域组成的,这就需要考虑它们的共同作用与影响。面积内插法可以有效的解决这个问题。所谓面积内插,是指按照源区域空间数据的分布特征与规律,采用一定的插值算法求取目标区域中的数据分布[7,8]。面积内插算法有多种,总体上可分为三类:面积权重内插法、基于表面模型的面积内插法、基于统计模型的面积内插法。
2 面积内插模型及相关算法
2.1 面积权重内插法
面积权重内插法是一种比较简单且相对直观的算法,它根据规则格网区域内各源区域所占面积的百分比来确定格网区域的属性数值[6,7]。应用面积权重内插法进行矢量多边形网格化的主要步骤如下:1)找出落在各个规则格网区域上的源区域;2)确定各个源区域与规则格网区域相交部分的面积,并计算其占格网区域面积的百分比;3)按照面积比例的多少来分配属性值。
Goodchild和Lam在文献[8]中深入阐述了面积权重内插的问题。认为数值型空间属性变量可分为两种最基本的类型[8]:和值变量(extensive变量)和均值变量(intensive变量)。在实际应用时,面积权重内插法针对不同类型的属性变量有不同的表现形式。某区域t内和值变量X的值等于组成该区域各子区域属性变量值()的总和,即:。显然,在图1所示的例子中,“人口总数”是和值变量,而“人口密度”则是均值变量。图3是从图2中抽取的局部区域的放大图,按照面积权重内插法的规则进行计算,求得格网区域a、b、c的属性值(表2);这显然与前文的中心点归属法、面积占优法或者重要性法的计算结果都不同。类似地,可以计算出图2中其它格网区域的属性值。
图3 研究区域局部放大图
Fig.3 The amplificatory map of partial zones
表2 使用面积权重内插法计算的属性信息
Table2 The attribute information calculated by Areal Weighting Interpolation Method
格网区域面积组成(%)
人口总数
人口密度
A
B
C
(人) (人/)
a 34.8 65.2
05.61
2246.1
b 40.8 2.4 56.8
7.27
2907.9
c 44.0
0
56.0
7.31
2924.2
2.2 基于表面模型的面积内插法
数字表面模型(DTM)是利用一个任意坐标场中大量选择的X、Y、Z的坐标点对连续表面的一个简单的统计表示[9]。DTM是从DEM的基础上发展起来的,但它比DEM的含义更为丰富,DTM包含了地形起伏和属性两个方面的含义,而且有时更主要的是指“属性”方面的含义。因此,可以使用基于表面模型的内插算法来进行矢量多边形网格化后属性值的插值计算。当前,基于DTM的内插已经有众多成熟的算法,按照内插的性质可分为整体内插和局部内插(又包括分块内插和逐点内插)两类[9],相应地,基于表面模型的面积内插也分为两类。
2.2.1 整体内插算法 整体内插算法又称全局光滑算法,它的插值函数由研究区域内所有采样点的属性值来确定,进而可利用这个插值函数进行全区域的特征拟合。常用的整体插值算法有多项式趋势面拟合、傅立叶分析、小波变换等[3,9]。应用整体插值算法计算矢量多边形网格化后区域属性值的基本步骤如下:1)对于属于和值变量的源区域的属性数据,需先转换为均值变量(如“人口总数”需先转换为“人口密度”);2)找出源区域的中心点,将属性数据连接到中心点上;3)使用一种整体内插算法(如多项式趋势面拟合等),将中心点的属性数据内插成网格表面;4)求出落在每个格网区域上的均值属性数据;5)如果需要求出和值变量属性数据,将均值变量数据乘以格网区域的面积即可得出。
整体内插算法易于理解,处理属性分布变化简单的区域时运算量小,采用低次多项式即可。但当属性分布复杂时,随着采样点的增多,插值函数会变得极不稳定,插值结果会出现难以控制的震荡现象。另外,在这种情况下还需要解高次的线性方程组,源区域中采样点位置或属性的微小变动都有可能导致高次多项式参数的极大变化,从而使高次多项式插值难以得到稳定解[9]。该算法在实现时还存在一些其他的问题,如源区域的中心点有可能落在区域之外,从而导致插值的结果与实际的空间分布差别较大。所以,整体内插算法虽然容易理解,却无法表达短尺度的、局部的复杂变化,其解的不稳定性也决定了该算法很少直接应用于空间插值,而是仅仅用于检测整个区域中不同于总趋势的最大偏离部分。
2.2.2 局部内插算法 局部内插算法只使用邻近的数据点来估计未知点的属性值,它可以保留局部细节在空间区域上的变化,因而获得广泛应用。局部内插的核心问题是邻近区域的确定。按照内插时邻近区域的几何形态(包括形状、大小、位置)是否可变,局部内插可分为分块内插和逐点内插[9]。分块内插将整个插值空间区域分成若干分块,对各个分块采用不同的函数,但分块范围在整个内插过程中一经确定则不能改变;逐点内插则无此限制,它以待插点为中心,定义一个局部函数来拟合周围的数据点,邻近区域的范围随待插值点位置的变化而变化。逐点内插虽然运算量较大,但灵活方便,且内插结果精度较高,所以应用广泛。常用的分块内插算法有:线性内插算法、双线性多项式内插算法、二元样条函数内插、多面函数法、最小二乘配置法等[3]。常用的逐点内插算法有:最近邻点法(Voronoi多边形法)、移动平均值法(距离倒数插值)、空间自协方差最佳插值法(克里金法)等[9]。基于局部内插算法进行矢量多边形网格化的基本步骤与整体内插算法类似,只是在第3)步中使用一种局部内插算法,此处不再赘述。
各种内插算法在不同的属性分布区域和源区域控制点不同的采样方式下会有不同的误差和精度。分块内插的主要问题是分块大小的确定。分块的大小应根据属性分布的复杂程度和源区域采样点的分布密度来确定,一般要求两个邻近的分块间要有一定的重叠,以保证两个分块间光滑连续的拼接。目前,还没有一种智能化或自适应的分块内插方法来确定分块的大小。逐点内插的计算量要比分块内插大,其关键问题是内插窗口域的确定,采用不同的内插窗口域将会严重影响内插的速度和精度。基于Voronoi多边形的逐点内插方法被认为是一种较好的局部内插算法。
2.3 基于统计模型的面积内插法
在现实世界中,很多空间属性信息的分布是遵循一定规律的,可采用一定的数学分布模型(如泊松分布、二项式分布或正态分布)来表达其空间变化特征[4,10]。显然,面积权重内插法和基于表面模型的面积内插算法都没有考虑这种数学分布模型的作用,因此,其插值结果可能会与实际的空间分布出入甚大。一种比较新的解决方案是将这些数学统计模型应用于面积内插,得到一个覆盖全区的通用函数,然后将这个函数应用于各个格网区域上,从而求得各格网区域的属性值。基于统计模型的面积内插算法利用附加的空间数据数学分布模型,采用随机的概念来处理面积内插的不确定性问题,从理论上讲应该具有更高的精度[5]。但是该方法在实践中难度较大,因为附加的空间数据数学分布模型的获取并不容易,而又有许多的实际数据很难判断其究竟该采用何种数学分布模型来描述,这大大限制了其应用的范围与发展前景。因此,目前还很少见到该算法在矢量多边形网格化中的实际应用。
3 结语
格网区域数据作为GIS中一类重要的数据组织方式,对GIS各种分析功能的应用与实现有着极为重要的意义。矢量多边形区域数据则是另一类被广泛应用的实际数据表现形式,矢量多边形区域数据到格网区域数据的转化方法决定了格网数据的精度,并影响后续空间分析结果的精度。因此,将不规则的矢量多边形区域转换为规则的格网区域时,应根据属性数据的分布特征与应用要求选用适当的算法。当前,在大多数GIS软件上都能实现中心点归属法、面积占优法、重要性法和面积权重内插法,Arc/Info的Grid模块更是实现了一些基于表面模型的面积内插算法,而基于统计模型的面积内插算法则应用较少,主要是因为该方法需要附加信息且非常复杂烦琐。需要指出的是,面积内插并不仅仅应用于矢量多边形区域网格化,它还有更为深广的应用。事实上,一切由源区域到目标区域(可能也为不规则的矢量多边形区域)的转换(这在GIS的空间分析中是极为常见的)都可以进行面积内插[11]。因此,更为全面彻底地研究各类面积内插算法的实现并评估其精度就无可避免的成为当前一个极为迫切的任务。
收稿日期:2003-07-23;修订日期:2003-10-18
标签:内插法论文; 空间分析论文; 空间数据论文; 空间插值论文; 矢量数据论文; 矢量运算论文; 线性内插法论文; 克里金插值论文; gis论文; gis技术论文;