分享

gis原理八

 桦芊树图书馆 2011-11-15

§2.4 矢量栅格一体化数据结构

    由于矢量是面向目标组织数据,而栅格结构是面向空间分布组织数据的,它们互为优势,适用面不同。目前,有的GIS软件同时支持这两种格式,并能实现二者之间的相互转换,但这需要多的内存和处理时间,为此需要寻求一种能同时具有矢量和栅格两种特性的一体化数据结构。

、矢量、栅格数据结构的优缺点

    将矢量、栅格数据结构进行比较,指出它们各自的优缺点。

二、矢栅一体化的概念

    介绍矢栅一体化数据结构的基本思想和概念

三、三个约定和细分格网法

    为了便于数据结构的设计和提供表达精度,需要先作点、线、面的约定和利用细分格网法。

四、矢栅一体化数据结构的设计

    阐述点、线、面和复杂地物的矢栅一体化设计的具体数据结构。

一、矢量、栅格数据结构的优缺点

    矢量数据结构可具体分为点、线、面,可以构成现实世界中各种复杂的实体,当问题可描述成线或边界时,特别有效。矢量数据的结构紧凑,冗余度低,并具有空间实体的拓扑信息,容易定义和操作单个空间实体,便于网络分析。矢量数据的输出质量好、精度高。

    矢量数据结构的复杂性,导致了操作和算法的复杂化,作为一种基于线和边界的编码方法,不能有效地支持影像代数运算,如不能有效地进行点集的集合运算(如叠加),运算效率低而复杂。由于矢量数据结构的存贮比较复杂,导致空间实体的查询十分费时,需要逐点、逐线、逐面地查询。矢量数据和栅格表示的影像数据不能直接运算(如联合查询和空间分析),交互时必须进行矢量和栅格转换。矢量数据与DEM(数字高程模型)的交互是通过等高线来实现的,不能与DEM直接进行联合空间分析。

    栅格数据结构是通过空间点的密集而规则的排列表示整体的空间现象的。其数据结构简单,定位存取性能好,可以与影像和DEM数据进行联合空间分析,数据共享容易实现,对栅格数据的操作比较容易。

    栅格数据的数据量与格网间距的平方成反比,较高的几何精度的代价是数据量的极大增加。因为只使用行和列来作为空间实体的位置标识,故难以获取空间实体的拓扑信息,难以进行网络分析等操作。栅格数据结构不是面向实体的,各种实体往往是叠加在一起反映出来的,因而难以识别和分离。对点实体的识别需要采用匹配技术,对线实体的识别需采用边缘检测技术,对面实体的识别则需采用影像分类技术,这些技术不仅费时,而且不能保证完全正确。

    通过以上的分析可以看出,矢量数据结构和栅格数据结构的优缺点是互补的(图2-4-1),为了有效地实现GIS中的各项功能(如与遥感数据的结合,有效的空间分析等)需要同时使用两种数据结构,并在GIS中实现两种数据结构的高效转换。

    在GIS建立过程中,应根据应用目的和应用特点、可能获得的数据精度以及地理信息系统软件和硬件配置情况,选择合适的数据结构。一般来讲,栅格结构可用于大范围小比例尺的自然资源、环境、农林业等区域问题的研究。矢量结构用于城市分区或详细规划、土地管理、公用事业管理等方面的应用。

二、矢栅一体化的概念

    对于面状地物,矢量数据用边界表达的方法将其定义为多边形的边界和一内部点,多边形的中间区域是空洞。而在基于栅格的GIS中,一般用元子空间充填表达的方法将多边形内任一点都直接与某一个或某一类地物联系。显然,后者是一种数据直接表达目标的理想方式。对线状目标,以往人们仅用矢量方法表示。

    事实上,如果将矢量方法表示的线状地物也用元子空间充填表达的话,就能将矢量和栅格的概念辨证统一起来,进而发展矢量栅格一体化的数据结构。假设在对一个线状目标数字化采集时,恰好在路径所经过的栅格内部获得了取样点,这样的取样数据就具有矢量和栅格双重性质。一方面,它保留了矢量的全部性质,以目标为单元直接聚集所有的位置信息,并能建立拓扑关系;另一方面,它建立了栅格与地物的关系,即路径上的任一点都直接与目标建立了联系。

    因此,可采用填满线状目标路径和充填面状目标空间的表达方法作为一体化数据结构的基础。

    每个线状目标除记录原始取样点外,还记录路径所通过的栅格;

    每个面状地物除记录它的多边形周边以外,还包括中间的面域栅格。

    无论是点状地物、线状地物、还是面状地物均采用面向目标的描述方法,因而它可以完全保持矢量的特性,而元子空间充填表达建立了位置与地物的联系,使之具有栅格的性质。这就是一体化数据结构的基本概念(图2-4-2)。从原理上说,这是一种以矢量的方式来组织栅格数据的数据结构。

三、三个约定和细分格网法

(一)三个约定

    为了设计点、线、面状地物具体的一体化数据结构,首先作如下约定:

    1、地面上的点状地物是地球表面上的点,它仅有空间位置,没有形状和面积,在计算机内部仅有一个位置数据。

    2、地面上的线状地物是地球表面的空间曲线,它有形状但没有面积,它在平面上的投影是一连续不间断的直线或曲线,在计算机内部需要用一组元子填满整个路径。

    3、地面上的面状地物是地球表面的空间曲面,并具有形状和面积,它在平面上的投影是由边界包围的紧致空间和一组填满路径的元子表达的边界组成。

(二)细分格网法

    由于一体化数据结构是基于栅格的,表达目标的精度必然受栅格尺寸的限制。可利用细分格网法提高点、线(包括面状地物边界)数据的表达精度,使一体化数据结构的精度达到或接近矢量表达精度。

    如图2-4-3所示,在有点、线通过的基本格网内再细分成256×256细格网(精度要求低时,可细分为16×16个细格网)。为了与整体空间数据库的数据格式一致,基本格网和细格网均采用十进制线性四叉树编码,将采样点和线性目标与基本格网的交点用两个Morton码表示(简称M码)。前一M1表示该点(采样点或附加的交叉点)所在基本格网的地址码,后者M2 表示该点对应的细分格网的Morton码,亦即将一对X,Y坐标用两个Morton码代替。例如X=210.00,Y=172.32,可转换为M1 =275,M2=2690。

    这种方法可将栅格数据的表达精度提高256倍,而存贮量仅在有点、线通过的格网上增加两个字节(当细分为16×16格网时,存贮量仅增加一个字节,精度提高16倍)。

四、矢栅一体化数据结构的设计

    线性四叉树编码、三个约定和多级格网法为建立矢栅一体化的数据结构奠定了基础。线性四叉树是基本数据格式,三个约定设计点、线、面数据结构的基本依据,细分格网法保证足够精度。

1、点状地物和结点的数据结构    

    根据基本对点状地物的约定,点仅有位置、没有形状和面积,不必将点状地物作为一个覆盖层分解为四叉树,只要将点的坐标转化为地址码M1 和M2 ,而不管整个构形是否为四叉树。这种结构简单灵活,便于点的插入和删除,还能处理一个栅格内包含多个点状目标的情况。

    所有的点状地物以及弧段之间的结点数据用一个文件表示,其结构见表2-4-1。可见,这种结构几乎与矢量结构完全一致。

2、线状地物的数据结构

    一般认为用四叉树表达线状地物是困难的。但采用元子填满整条路径的方法,它的数据结构将变得十分简单。根据对线状地物的约定,线状地物有形状但没有面积,没有面积意味着线状地物和点状地物一样不必用一个完全的覆盖层分解四叉树,而只要用一串数据表达每个线状地物的路径即可,表达一条路径就是要将该线状地物经过的所有栅格的地址全部记录下来。一个线状地物可能有几条弧段组成,所以应先建立一个弧段数据文件,如表2-4-2所示。

    表2-4-2中的起结点号和终结点号是该弧段的两个端点,它们与表2-4-1联接可建立弧段与结点间的拓扑关系。表2-4-2中的中间点串不仅包含了原始采样点(已转换成用M1、M2表示),而且包含了该弧段路径通过的所有格网边的交点,它所包含的码填满了整条路径。为了充分表达线性地物在地表的空间特性,增加高程Z分量。一条线性地物是在崎岖的地面上通过的,只有记录该曲线通过的DEM格网边上的交点的坐标和高程值才能较好地表达它的空间形状和长度。

    虽然这种数据结构比单纯的矢量结构增加了一定的存储量,但它解决了线状地物的四叉树表达问题,使它与点状、面状地物一起建立统一的基于线性四叉树编码的数据结构体系。这对于点状地物与线状地物相交,线状地物之间的相交,以及线状地物与面状地物相交的查询问题变得相当简便和快速。

    有了弧段数据文件,线状地物的数据结构仅是它的集合表示,如表2-4-3。

3、面状地物的数据结构

    根据对面状地物的约定,一个面状地物应记录边界和边界所包围的整个面域。其中边界由弧段组成,它同样引用表2-4-2中的弧段信息。面域信息则由线性四叉树或二维行程编码表示。

    同一区域的各类不同地物可形成多个覆盖层,例如建筑物、耕地、湖泊等可形成一个覆盖层,土地利用类型、土壤类型又可形成另外两个覆盖层。这里规定每个覆盖层都是单值的,即每个栅格内仅有一个面状地物的属性值。每个覆盖层可用一棵四叉树或一个二维行程编码来表示。为了建立面向地物的数据结构,做这样的修改,二维行程编码中的属性值可以是叶结点的属性值,也可以是指向该地物的下一个子块的循环指针。即用循环指针将同属于一个目标的叶结点链接起来,形成面向地物的结构。

 

    图2-4-4是链接情况,表2-4-4、表2-4-5是对应的二维行程编码、带指针的二维行程码。表2-4-5中的循环指针指向该地物下一个子块的地址码,并在最后指向该地物本身。这样,只要进入第一块就可以顺着指针直接提取该地物的所有子块,从而避免像栅格数据那样为查询某一个目标需遍历整个矩阵,大大提高了查询速度。

    对于面状地物的边界栅格,采用面积占优法确定公共格网值,如果要求更精确地进行面积计算或叠置运算,可进一步引用弧段的边界信息。

    面状地物的数据结构包括表2-4-2的弧段文件、表5的带指针二维行程表和表2-4-6的面文件。

    这种数据结构是面向地物的,具有矢量的特点。通过面状地物的标识号可以找到它的边界弧段并顺着指针提取所有的中间面块。同时它又具有栅格的全部特性,二维行程本身就是面向位置的结构,表2-4-5中的Morton码表达了位置的相互关系,前后M码之差隐含了该子块的大小。给出任意一点的位置都可在表2-4-5中顺着指针找到面状地物的标识号确定是哪一个地物。

4、复杂地物的数据结构

    由几个或几种点、线、面状简单地物组成的地物称为复杂地物。例如将一条公路上的中心线、交通灯、立交桥等组合为一个复杂地物,用一个标识号表示。复杂地物的数据结构如表4-4-7所示。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多