当前位置:课程学习>>第四章 栅格数据模型>>电子教案>>知识点七
细化的算法很多,各有优缺点。经典的细化算法是通过3×3的像元组来确定如何细化。其基本原理是,在3×3的像元组中,凡是去掉后不会影响原栅格影像拓扑连通性的像元都应该去掉,反之,则应保留。3×3的像元共有28种情况,但经过旋转,去除相同情况,共有51种情况,其中只有一部分是可以将中心点剥去的,如图4-22中(1)、(2)是可剥去的,而(3)、(4)的中心点是不可剥去的。通过对每个像元点经过如此反复处理,最后可得到应保留的骨架像元。
图4-22 中心点删除
如果是对扫描后的地图图像进行细化处理,应符合下列基本要求:保持原线划的连续性;线宽只为一个像元;细划后的骨架应是原线划的中心线;保持图形的原有特征。
四、追踪
细化后的二值图像形成了骨架图,追踪就是把骨架转换为矢量图形的坐标序列。其基本步骤为:
(1)从左向右,从上向下搜索线划起始点,并记下坐标。
(2)朝该点的8个方向追踪点,若没有,则本条线的追踪结束,将(1)进行下条线的追踪;否则记下坐标。
(3)把搜索点移到新取的点上,转(2)。 需注意的是,已追踪点应作标记,防止重复追踪。
五、拓扑化
为了进行拓扑化,需找出线的端点和结点,以及孤立点。
孤立点:八邻域中没有为1的像元。如图4-23中(1)。
端点:八邻域中只有一个为1的像元。如图4-23中(2)。
结点:八邻域中有三个或三个以上为1的像元。如图4-23中(3)。
在追踪时加上这些信息后,就可形成结点和弧段,然后可用矢量数据的自动拓扑方法进行拓扑化。
图4-23 点的拓扑性判断
矢量数据结构和栅格数据结构的优缺点是互补的,为了有效地实现GIS中的各项功能(如与遥感数据的结合,有效的空间分析等),需要同时使用两种数据结构,并在GIS中实现两种数据结构的高效转换。矢栅一体化数据结构理论上是较为理想的,但这需要增加存储空间和处理时间。 一种更好的方法是建立同时具有矢量和栅格两种特性的一体化数据结构。
一、矢栅一体化数据结构的概念
对于面状地物,矢量数据用边界表达的方法将其定义为多边形的边界和一内部点,多边形的中间区域是空洞。而在基于栅格的GIS中,一般用元子空间充填表达的方法将多边形内任一点都直接与某一个或某一类地物联系。显然,后者是一种数据直接表达目标的理想方式。对线状目标,以往人们仅用矢量方法表示。事实上,如果将矢量方法表示的线状地物也用元子空间充填表达的话,就能将矢量和栅格的概念辨证统一起来,进而发展矢量栅格一体化的数据结构。假设在对一个线状目标数字化采集时,恰好在路径所经过的栅格内部获得了取样点,这样的取样数据就具有矢量和栅格双重性质。一方面,它保留了矢量的全部性质,以目标为单元直接聚集所有的位置信息,并能建立拓扑关系;另一方面,它建立了栅格与地物的关系,即路径上的任一点都直接与目标建立了联系。
因此,可采用填满线状目标路径和充填面状目标空间的表达方法作为一体化数据结构的基础,每个线状目标除记录原始取样点外,还记录路径所通过的栅格;每个面状地物除记录它的多边形周边以外,还包括中间的面域栅格。无论是点状地物、线状地物还是面状地物均采用面向目标的描述方法,因而它可以完全保持矢量的特性,而元子空间充填表达建立了位置与地物的联系。使之具有栅格的性质,这就是一体化数据结构的基本概念。从原理上说,这是一种以矢量的方式来组织栅格数据的数据结构。
二、三个约定和细分格网法
为了设计点、线、面状地物具体的一体化数据结构,首先作如下约定:
(1)地面上的点状地物是地球表面上的点,它仅有空间位置,没有形状和面积,在计算机内部仅有一个位置数据。
(2)地面上的线状地物是地球表面的空间曲线,它有形状但没有面积,它在平面上的投影是一连续不间断的直线或曲线,在计算机内部需要用一组元子填满整个路径。
(3)地面上的面状地物是地球表面的空间曲面,并具有形状和面积,它在平面上的投影是由边界包围的空间和一组填满路径的元子表达的边界组成。
由于一体化数据结构是基于栅格的,表达目标的精度必然受栅格尺寸的限制。可利用细分格网法提高点、线(包括面状地物边界)数据的表达精度,使一体化数据结构的精度达到或接近矢量表达精度。
如图4-24所示,在有点、线通过的基本格网内再细分成256*256个细格网(精度要求低时,可细分为个16*16细格网).为了与整体空间数据库的数据格式一致,基本格网和细格网均采用十进制线性四叉树编码,将采样点和线性目标与基本格网的交点用两个Morton码表示(简称M码)。前者M1 表示该点(采样点或附加的交叉点)所在基本格网的地址码, 后者M2表示该点对应的细分格网的Morton码,亦即将一对X、Y坐标用两个Morton码代替。例如X=210.00,Y=172.32,可转化为M1=275,M2=2690。
图4-24 细化栅格
这种方法可将栅格数据的表达精度提高256倍,而存储量仅在有点、线通过的格网上增加两个字节(当细分为16*16细格网,存储量仅增加一个字节,精度提高16倍)。