浏览:2442008-06-21 13:57   来自刚刚      :

第四章 空间数据的处理    

 本章概述通过前面的课程,我们学习了GIS的数据源、数据结构、数据模型、数据编码、数据质量控制等等有关GIS数据的基本知识。由于数据获取方法的不同和对数据用途的不同要求,我们所采集的GIS数据往往存在问题、错误或者不符合用途要求的情况,这些数据必须通过数据处理才能达到应用的要求。本章将介绍空间数据处理的基本内容、途径和算法。

§4.1 矢量数据拓扑关系的自动建立

    矢量数据拓扑关系在空间数据的查询与分析中非常重要,矢量数据拓扑关系自动建立的算法是GIS中的关键算法之一,这里介绍其实现的基本步骤和要点。

§4.2 矢量数据的图形编辑

    图形编辑是纠正数据采集错误的重要手段,其基本的功能要求是:具有友好的人机界面;具有对几何数据和属性编码的修改功能;具有分层显示和窗口功能。图形编辑的关键是点、线、面的捕捉。

§4.3 空间数据的坐标变换

    图形编辑只能消除数字化产生的明显误差,而图纸变形产生的误差难以改正,因此要进行几何纠正。几何纠正常用的有高次变换、二次变换和仿射变换。

§4.4 空间数据的压缩处理

    矢量数据压缩的目的是删除冗余数据,减少数据的存贮量,节省存贮空间,加快后继处理的速度。矢量方法有道格拉斯——普克法(Douglas—Peucker)、垂距法、光栏法、并对几种方法进行比较。栅格数据的压缩包括直接栅格编码、游程长度(行程)编码、四叉树编码。

§4.5 空间数据的结构变换

    介绍矢量——栅格转换和栅格——矢量转换。矢量─栅格转换有线的栅格化方法、和面(多边形)的栅格化方法。 线的栅格化方法包括DDA法(数字微分分析法)、Bresenham算法。 面(多边形)的栅格化方法包括内部点扩散法、扫描法、和边填充算法。栅格数据到矢量数据转换的一般过程可描述为:二值化、二值图像的预处理、细化、追踪、拓扑化。

§4.6 空间数据的插值方法

    在已观测点的区域内估算未观测点的数据的过程称为内插;在已观测点的区域外估算未观测点的数据的过程称为外推。常用的内插方法有:边界内插、趋势面分析、局部内插、移动平均法。

§4.7 图像数据的处理方法

    一幅图像经过生成、复制、扫描、传输、变换后,由于多种因素的影响,图像的质量不能满足要求,这时就需要进行图像增强处理。图像增强的目的是改善图像的效果,以更适应人眼的观察或计算机的处理。基本的图像增强方法有:灰度级的修整、空域处理、频域处理。

§4.8 空间数据的更新处理

    GIS的生命力将最终取决于其空间数据库的现势性,遥感数据是GIS的重要信息源和数据更新的手段。全球卫星定位系统(GPS)作为一种新型的定位数据的采集和更新手段,具有高精度、高效益、全天候、低成本、高灵活性、实时性等特有的优势,因而在GIS中具有重要的应用价值。

您可能还想看前贴GIS原理学习(一)】【GIS原理学习(二)】【GIS原理学习(三)】【GIS原理学习(四)】【GIS原理学习(五)】【GIS原理学习(六)】【GIS原理学习(七)】【GIS原理学习(八)】【GIS原理学习(九)】【GIS原理学习(十)】【GIS原理学习(十一)】【GIS原理学习(十二)】【GIS原理学习(十三)】【GIS原理学习(十四)】【GIS原理学习(十五)】【GIS原理学习(十六)】【GIS原理学习(十七)】【GIS原理学习(十八)】【GIS原理学习(十九)】【GIS原理学习(二十)

§4.4 空间数据的压缩处理

    GIS系统中空间数据量是非常大的,要提高处理速度必须进行数据压缩,在满足质量的前提下提供优质、高效的功能。

一、矢量数据的压缩

    矢量数据压缩的目的是删除冗余数据,减少数据的存贮量,节省存贮空间,加快后继处理的速度。矢量数据的压缩方法常用的有道格拉斯——普克法、垂距法、光栏法。对几种方法进行了比较。

二、栅格数据的压缩

    直接栅格编码是将栅格数据看作一个数据矩阵,逐行(或逐列)记录代码.这种记录栅格数据的文件常称为栅格文件,且常在文件头中存有该栅格数据的长和宽,其特点是处理方便,但没有压缩。游程长度编码,区域越大,数据的相关性越强,则压缩越大。其特点是,压缩效率较高,叠加、合并等运算简单,编码和解码运算快。

一、矢量数据的压缩

    矢量数据压缩的目的是删除冗余数据,减少数据的存贮量,节省存贮空间,加快后继处理的速度。下面介绍几种常用的矢量数据的压缩算法,以及它们之间的异同点。

图4-4-1 道格拉斯——普克法示意图

1、道格拉斯——普克法(Douglas—Peucker)

    基本思路是(图4-4-1):对每一条曲线的首末点虚连一条直线,求所有点与直线的距离,并找出最大距离值dmax,用dmax与限差D相比:
    若dmax<D,这条曲线上的中间点全部舍去;
    若dmax≥D,保留dmax对应的坐标点,并以该点为界,把曲线分为两部分,对这两部分重复使用该方法。

2、垂距法

    垂距法的基本思路是(图4-4-2):每次顺序取曲线上的三个点,计算中间点与其它两点连线的垂线距离d,并与限差D比较。若d<D,则中间点去掉;若d≥D,则中间点保留。然后顺序取下三个点继续处理,直到这条线结束。


(1)                                              (2) 


                             

(3)                                              (4)

图4-4-2 垂距法示意图


图4-4-3 光栏法原理图示

3、光栏法

    光栏法的基本思想是(图4-4-3):定义一个扇形区域,通过判断曲线上的点在扇形外还是在扇形内,确定保留还是舍去。设曲线上的点列为{pi},i=1,2,…,n,光栏口经为d,可根据压缩量的大小自己定义,则光栏法的实施步骤可描述为:

    1°、连接p1和p2点,过p2点作一条垂直于p1p2的直线,在该垂线上取两点a1和a2,使a1p2=a2p2=d/2,此时a1和a2为“光栏”边界点,p1与a1、p1与a2的连线为以p1为顶点的扇形的两条边,这就定义了一个扇形(这个扇形的口朝向曲线的前进方向,边长是任意的)。通过p1并在扇形内的所有直线都具有这种性质,即p1p2上各点到这些直线的垂距都不大于d/2。

    2°、若p3点在扇形内,则舍去p2点。然后连接p1和p3,过p3作p1p1的垂线,该垂线与前面定义的扇形边交于c1和c2。在垂线上找到b1和b2点,使p3b1=p3b2=d/2,若b1或b2点((图4-4-3中为b2点)落在原扇形外面,则用c1或c2取代(图4-4-3中由c2取代b2)。此时用p1b1和p1c2定义一个新的扇形,这当然是口径(b1c2)缩小了的“光栏”。

    3°、检查下一节点,若该点在新扇形内,则重复第(2)步;直到发现有一个节点在最新定义的扇形外为止。

    4°、当发现在扇形外的节点,如图4-4-3中的p4,此时保留p3点,以p3作为新起点,重复1°~3°。如此继续下去,直到整个点列检测完为止。所有被保留的节点(含首、末点),顺序地构成了简化后的新点列。

4、几种方法的比较

    如果某种矢量数据的压缩算法既能精确地表示数据,又能最大限度地淘汰不必要的点,那就是一种好的算法。具体可以依据简化后曲线的总长度、总面积、坐标平均值等与原始曲线的相应数据的对比来判别。

    通过分析可以发现,大多数情况下道格拉斯——普克法的压缩算法较好,但必须在对整条曲线数字化完成后才能进行,且计算量较大;光栏法的压缩算法也很好,并且可在数字化时实时处理,每次判断下一个数字化的点,且计算量较小;垂距法算法简单,速度快,但有时会将曲线的弯曲极值点p值去掉而失真。

二、栅格数据的压缩

1、直接栅格编码

   将栅格数据看作一个数据矩阵,逐行(或逐列)记录代码,可以每行都从左到右记录,也可以奇数行从左到右,偶数行从右到左。如图4-4-5的栅格数据可存储记录为:AAAAABBBAABBAABB。

A   A   A   A

A   B   B   B

A   A   B   B

A   A   B   B

图4-4-5

    这种记录栅格数据的文件常称为栅格文件,且常在文件头中存有该栅格数据的长和宽,即行数和列数和两方向的密度。这样,具体的像元值就可连续存储了。其特点是处理方便,但没有压缩。

2、游程长度(行程)编码

    地理数据往往有较强的相关性,也就是说相邻像元的值往往是相同的。游程长度编码的基本思想是:按行扫描,将相邻等值的像元合并,并记录代码的重复个数。对于图4-4-5,其编码为A4 A1 B3 A2 B2 A2 B2。若在行与行之间不间断地连续编码,则为A5 B3 A2 B2 A2 B2。

    对于游程长度编码,区域越大,数据的相关性越强,则压缩越大。其特点是,压缩效率较高,叠加、合并等运算简单,编码和解码运算快。

楼主

注册用户登录后才能回复,登录注册
> 返回“GIS开发”


其他话题

相关链接
1 18409