栅格数据结构及编码
- 格式:ppt
- 大小:604.50 KB
- 文档页数:31
空间数据的结构与编码在当今数字化的时代,空间数据成为了我们理解和处理地理信息的重要基石。
空间数据不仅在地理科学、城市规划、环境保护等领域发挥着关键作用,也在日常生活中的导航、地图应用等方面为我们提供了极大的便利。
而要有效地处理和利用空间数据,就离不开对其结构和编码的深入理解。
空间数据,简单来说,就是描述地理空间中对象的位置、形状、大小等特征的数据。
它可以是点、线、面等几何对象,也可以是与这些对象相关的属性信息,比如一个城市的人口数量、建筑物的高度等。
为了能够高效地存储、管理和处理这些复杂多样的空间数据,我们需要对其进行合理的结构设计和编码。
空间数据的结构可以分为矢量数据结构和栅格数据结构两大类。
矢量数据结构将空间对象表示为点、线、面等几何元素,并通过坐标来精确描述其位置和形状。
例如,一条河流可以用一系列连接的线段来表示,每个线段的端点都有明确的坐标。
矢量数据结构的优点在于数据精度高、存储空间小,并且能够方便地进行几何变换和空间分析。
比如,我们可以很容易地计算两个矢量对象之间的距离、面积等。
然而,矢量数据结构在处理大面积的连续数据(如地形)时,可能会比较复杂。
栅格数据结构则将地理空间划分为规则的网格单元,每个单元对应一个特定的值。
比如,在一张卫星图像中,每个像素就是一个栅格单元。
栅格数据结构的优点是处理简单、易于与遥感数据结合,适用于对大面积连续现象的模拟和分析。
但它的缺点是数据量较大,精度相对较低,且在进行几何操作时可能会产生锯齿状的边缘。
除了上述两种主要的数据结构,还有一些混合结构,如矢栅一体化结构,结合了矢量和栅格数据结构的优点,以满足不同应用场景的需求。
接下来,让我们谈谈空间数据的编码。
编码是将空间数据转换为计算机能够理解和处理的形式的过程。
常见的编码方式包括拓扑编码、坐标编码、块编码等。
拓扑编码通过记录空间对象之间的拓扑关系(如相邻、包含等),来减少数据的冗余并提高空间分析的效率。
例如,在一个道路网络中,我们只需要记录每个路段的起点和终点以及它们之间的连接关系,而不需要重复存储每个点的坐标。
•栅格数据编码方法分为两大类:1直接栅格编码2压缩编码方法a链码b游程长度编码c块码d 四叉树直接编码就是将栅格数据看作一个数据矩阵,逐行(或逐列)逐个记录代码,可以每行都从左到右逐个象元进行记录,也可以奇数行地从左到右而偶数行地从右向左记录,为了特定目的还可采用其他特殊的顺序栅格数据编码方法直接栅格编码:•将栅格数据看作一个数据矩阵,逐行记录代码数据。
A A A AA BB B A ABB A A B B•1)每行都从左到右记录;AAAAABBBAABBAABB•2)奇数行从左到右,偶数行从右到左;•栅格数据量大,格网数多,由于地理数据往往有较强的相关性,即相邻象元的值往往是相同的。
所以,出现了各种栅格数据压缩方法。
•压缩编码的目的就是用尽可能少的数据量记录尽可能多的信息,其类型分为•信息无损编码•编码过程中没有任何信息损失,通过解码操作可以完全恢复原来的信息•信息有损编码•为了提高编码效率,最大限度地压缩数据,在压缩过程中损失一部分相对不太重要的信息,解码时这部分难以恢复1、行程编码(游程编码):将原始栅格阵列中属性值相同的连续若干个栅格单元映射为一个游程。
游程的结构为(A,P) 整数对。
块码是游程长度编码扩展到二维的情况,采用方形区域作为记录单元,每个记录单元包括相邻的若干栅格,数据结构由初始位置(行、列号)和半径,再加上记录单位的代码组成。
采用方形区域作为记录单元,每个记录单元包括相邻的若干栅格。
将栅格数据(线状地物面域边界)表示为矢量链的记录)首先定义一个3x3窗口,中间栅格的走向有8种可能,并将这8种可能0~7进行编码。
•2)记下地物属性码和起点行、列后,进行追踪,得到矢量链.其基本分割方法是将一幅栅格地图或图像等分为四部分。
逐块检查其栅格属性值(或灰度)。
如果某个子区的所有栅格值都具有相同的值。
则这个子区就不再继续分割,否则还要把这个子区再分割成四个子区。
这样依次地分割,直到每个子块都只含有相同的属性值或灰度为止。
栅格数据详解目录一简介二栅格结构的数据组织方法三栅格数据的获取途径与原则四栅格结构的编码方法一简介1基本知识栅格数据是按网格单元的行与列排列、具有不同灰度或颜色的阵列数据。
栅格结构是大小相等分布均匀、紧密相连的像元(网格单元)阵列来表示空间地物或现象分布的数据组织。
是最简单、最直观的空间数据结构,它将地球表面划分为大小、均匀、紧密相邻的网格阵列。
每一个单元(象素)的位置由它的行列号定义,所表示的实体位置隐含在栅格行列位置中,数据组织中的每个数据表示地物或现象的非几何属性或指向其属性的指针。
对于栅格结构:点实体由一个栅格像元来表示;线实体由一定方向上连接成串的相邻栅格像元表示;面实体(区域)由具有相同属性的相邻栅格像元的块集合来表示。
2栅格结构的特点数据直接记录属性的指针或属性本身,而其所在位置则根据行列号转换成相应的坐标给出。
也就是说,定位是根据数据在数据集合中的位置得到的。
如图1(a)所示,数据1表示属性或编号位的一个点,其位置由所在的第3行、第5列得到。
因为栅格结构是按一定的规则排列的,因此所表示的实体位置很容易隐含在网格文件的存储结构中。
在网格文件中每个代码本身明确地代表了实体的属性或属性编码,如果为属性编码,则该编码可作为指向实体属性表的指针。
图1(a)中表示了代码分别为1,3,6的实体,图1(b)表示了一条代码为8的线实体,图1(c)表示了3个代码分别为4,7,9的面实体。
(a)点(b)线(c)区域000000000080000044447777000000000008000044444777000010000000800044449977000000000000080000499977000300000000080000099977000000000000080000099999000006000008800000009999000000000000000000000999图1二栅格结构的数据组织方法栅格地图数据栅格结构是用有限的网格逼近某个图形,因此用栅格数据表示的地表是不连续的,是近似离散的数据。
GIS学习之栅格数据栅格数据⽤⼀个规则格⽹来描述与每⼀个格⽹单元位置相对应的空间现象特征的位置和取值。
在概念上,空间现象的变化由格⽹单元值的变化来反映。
地理信息系统中许多数据都⽤栅格格式来表⽰。
栅格数据在许多⽅⾯是⽮量数据的补充,将两种数据相结合是GIS项⽬的⼀个普遍特征。
⼀、栅格数据模型要素:栅格数据模型在GIS中也被称为格⽹(Grid)、栅格地图、表⾯覆盖(Surface Cover)或影像。
格⽹由⾏、列、格⽹单元组成。
⾏、列由格⽹左上⾓起始。
在⼆维坐标系统中,⾏作为y坐标、列作为x坐标。
在这点上与纬度作为y坐标、经度作为x坐标有点类似。
栅格数据⽤单个格⽹单元代表点、⽤⼀系列相邻格⽹单元代表线、邻接格⽹的集合代表⾯。
格⽹中的每⼀个格⽹单元有⼀个值,整型或浮点型。
整型格⽹单元值通常代表类别数据。
⽐如,⼟地类型常⽤1代表城市⽤地、2代表林地等。
浮点型格⽹单元值常表⽰连续数据,⽐如,降⽔量模型可能有20、15、12、23等降⽔量值。
浮点型格⽹⽐整型格⽹需要更多的计算机存储资源,这是涉及⼤范围的GIS项⽬必须考虑的⼀个重要因素。
⽽且,浮点型⽹格的数据查询与显⽰应该基于12.0~19.0这样的值域,⽽⾮单个值。
由于栅格数据模型的分辨率受其格⽹单元⼤⼩的影响,因此在表⽰空间要素的精确位置上存在缺点。
在算法上,格⽹可视为⾏与列的矩阵,其单元值为⼆维数组,对数据进⾏操作、集合和分析较⽮量数据容易。
⼆、栅格数据类型:1.卫星影像:遥感卫星影像是⽤栅格格式记录的。
卫星影像像元值代表从地球表⾯反射或发射的光能。
通过分析像元值,影像处理系统可从卫星影像中提取各种专题,如⼟地利⽤、⽔⽂、⽔质、侵蚀⼟壤⾯积等。
2.数字⾼程模型:数字⾼程模型(DEM)由等间隔海拔数据的排列组成。
DEM以点为基础,但也容易通过将海拔⾼度点置于格⽹单元中⼼的⽅法转换成栅格数据。
3.数字正射影像图(DOQ):是⼀种由航⽚或其他遥感数据制备⽽得到的数字化影像,其中由照相机镜头倾斜和地形起伏引起的位移已被消除。
栅格数据结构栅格数据结构:1-介绍1-1 栅格数据结构是一种用于存储和处理离散数据的数据结构。
它将数据划分为一个个均匀的小单元,即栅格单元,由此构成了一个栅格。
1-2 栅格数据结构广泛应用于地理信息系统(GIS)领域,可以用来表示地理空间数据,如地形、气象、土地利用等。
2-栅格单元2-1 栅格单元是栅格数据结构的最小单元,类似于像素(Pixel)。
2-2 每个栅格单元具有唯一的标识符,通常用行列索引或坐标表示。
2-3 栅格单元可以包含一个或多个属性值,用于表示不同的数据类型。
3-栅格数据集3-1 栅格数据集是指由多个栅格单元组成的数据集合。
3-2 栅格数据集可以有不同的数据类型,如整型、浮点型、字符型等。
3-3 栅格数据集可以表示连续数据(如高程)和离散数据(如土地类型)。
4-栅格操作4-1 创建栅格数据集:可以通过采样、插值、转换等方式创建栅格数据集。
4-2 查询栅格数据:可以通过栅格单元的标识符或属性值进行查询。
4-3 分析栅格数据:可以进行统计、分类、空间分析等操作。
4-4 可视化栅格数据:可以将栅格数据集绘制成图像或动画。
5-栅格数据存储格式5-1 常见的栅格数据存储格式包括GeoTIFF、NetCDF、HDF 等。
5-2 栅格数据存储格式通常包括头文件和数据文件两部分。
5-3 头文件包含了栅格数据的元信息,如分辨率、坐标系统等。
5-4 数据文件包含了栅格数据的实际数值。
6-栅格数据处理软件6-1 常见的栅格数据处理软件有ArcGIS、QGIS、ENVI等。
6-2 这些软件通常提供了丰富的栅格操作功能和分析工具。
6-3 开源软件如GDAL、GRASS也提供了栅格数据处理的功能。
7-栅格数据的应用7-1 地理信息系统:栅格数据结构是地理信息系统中最常用的数据结构之一。
7-2 自然资源管理:栅格数据可以用于研究地表覆盖、土地利用、气象等。
7-3 环境模拟:栅格数据可以用于模拟地形、水文过程、气候变化等。
栅格数据(RasterData )是由正方形或者矩形栅格点组成,每个栅格点或者像素的位置由栅格所在的行列号来定义,所对应的数值为栅格所要表达的内容的属性值。
栅格数据-概念栅格数据结构实际就是像元阵列,每个像元由行列确定它的位置。
H值表示属性或编码为H 的一个点,其位置由所在的第六行,第九列作交叉而得到。
由于栅格结构是按一定的规则排列的,所表示的实体位置很容易隐含在网络文件的存储结构中。
在后面讲述栅格结构编码时可以看到每个存储单元的行列位置可方便地根据其在文件中的记录位置得到,且行列坐标可以很容易地转为其它坐标系下的坐标。
在网络文件中每个代码本身明确地代表了实体的属性或属性的编码。
点实体在栅格数据中表示为一个像元;线实体则表示为在一定方向上连接成串的相邻像元集合;面实体由聚集在一起的相邻像元结合表示。
这种数据结构很适合计算机处理,因为行列像元阵列非常容易存储、维护和显示。
用栅格数据表示的地表是不连续的,是量化和近似离散的数据,这就意味着地表一定面积内(像元地面分辨率范围内)地理数据的近似性,例如平均值、主成分值或按某种规则在像元内提取的值等。
另一方面,栅格数据的比例尺就是栅格大小与地表相应单元大小之比。
像元大小相对于所表示的面积较大时,对长度、面积等的度量有较大影响。
这种影响除对像元的取舍外,还与计算长度、面积的方法有关。
栅格数据-结构 栅格数据栅格数据栅格结构是最简单最直接的空间数据结构,是指将地球表面划分为大小均匀紧密相邻的网格阵列,每个网格作为一个象元或象素由行、列定义,并包含一个代码表示该象素的属性类型或量值,或仅仅包括指向其属性记录的指针。
因此,栅格结构是以规则的阵列来表示空间地物或现象分布的数据组织,组织中的每个数据表示地物或现象的非几何属性特征。
特点:1、属性明显,定位隐含,即数据直接记录属性本身,而所在的位置则根据行列号转换为相应的坐标,即定位是根据数据在数据集中的位置得到的,在栅格结构中,点用一个栅格单元表示;线状地物用沿线走向的一组相邻栅格单元表示,每个栅格单元最多只有两个相邻单元在线上;2、面或区域用记有区域属性的相邻栅格单元的集合表示,每个栅格单元可有多于两个的相邻单元同属一个区域。
第三讲空间数据结构之栅格数据一:㈠基本概念1:数据结构:指数据组织的形式,是适合于计算机存储、管理和处理的数据逻辑结构2:空间数据结构:地理实体的空间排列方式和相互关系的抽象描述,即地理实体的数据本身的组织方法3:描述内容:地理要素和地理现象,包括空间位置、拓朴关系和属性三个方面4:空间数据结构类型:矢量结构和栅格结构㈡:矢量/栅格数据的显示特点1、栅格数据①显式表示:栅格中的一系列像元(点),为使计算机认识这些像元描述的是某一物体而不是其它物体②显示特点:属性明显,位置隐含2、矢量数据①隐式显示:由一系列定义了始点和终点的线及某种连接关系来描述,线的始点和终点坐标定义为一条表示地物对象形式的矢量②显示特点:属性隐含,位置明显二:栅格数据结构:栅格数据主要编码内容1. 栅格数据的表示①栅格数据结构就是像元阵列的有效组织方法/规范,每个像元的行列号确定位置,用像元值表示空间对象的类型、等级等特征②每个栅格单元只能存在一个值3. 栅格表征地学对象的规则三:栅格数据结构:数据组织方式四:栅格数据结构:栅格数据编码方法1:引子①无论如何取值,在计算机中,如果矩阵的每个元素用一个双字节表示,则一个图层的全栅格数据所需要的存储空间为m(行) ×n(列) ×2(字节)②因此,栅格数据的压缩是栅格数据结构要解决的重要任务2:为何进行压缩编码①当前计算和存储资源是有限的②随着科学技术的进步,数据的时、空分辨率在逐步提升③通过有效的编码方式对相同数据进行存储改良3:压缩编码过程应遵循的原则①编码方法必须是有效的②编码过程必须是可逆—信息的有损和无损之需求③编码方法应能或至少不降低对数据的访问速度4:栅格数据编码方法⑴栅格矩阵法①Raster数据是二维表面上地理数据的离散量化值,对某层而言,pixel值组成像元阵列(即二维数组),其中行、列号表示它的位置。
②在计算机内是一个4*4阶的矩阵。
但在外部设备上,通常是以左上角开始逐行逐列存贮。
栅格数据结构及编码在地理信息系统、计算机图形学以及许多其他领域中,栅格数据结构是一种非常重要的表示和存储数据的方式。
简单来说,栅格数据就像是我们常见的像素图,把一个区域划分成一个个小格子,每个格子里都有相应的数据值。
栅格数据结构的基本概念很好理解。
想象一下,我们有一张地图,要把它数字化存储在计算机里。
如果用栅格的方式,就会把这张地图划分成一个个均匀的小方格,就像棋盘一样。
每个小方格对应着地图上的一个区域,里面记录着这个区域的某种属性信息,比如海拔高度、土地利用类型、温度等等。
栅格数据结构有很多优点。
首先,它的结构简单,处理起来相对容易。
对于计算机来说,处理一个个整齐排列的小格子要比处理复杂的不规则图形省事多了。
其次,它很适合用于表示连续变化的现象,比如地形的起伏、温度的分布等。
再者,许多现有的图像处理技术和算法都可以直接应用于栅格数据,这为数据的分析和处理提供了很大的便利。
但是,栅格数据结构也不是完美的,它也有一些缺点。
比如,由于栅格的大小是固定的,可能会导致数据的精度损失。
如果栅格划分得太粗,就可能无法准确地表示一些细节;如果划分得太细,数据量又会变得非常大,处理和存储都成问题。
另外,栅格数据对于边界和形状的描述往往不够精确,可能会出现锯齿状的边缘。
接下来,我们说一说栅格数据的编码方式。
常见的栅格数据编码方法有直接编码、行程编码、链式编码和四叉树编码等。
直接编码是最简单粗暴的一种方式,就是直接把每个栅格单元的值依次存储起来。
这种方法简单直观,但是数据量很大,特别是当栅格数据中有很多相同值的单元时,会造成大量的冗余。
行程编码则是针对直接编码的冗余问题进行改进的一种方法。
它不是记录每个栅格单元的值,而是记录相同值的连续栅格单元的数量和值。
比如说,有一连串的 5 个值都是 10 的栅格单元,行程编码就会记录“5,10”,这样就大大减少了数据量。
链式编码主要用于描述栅格数据的边界。
它通过记录边界上栅格单元的方向来表示边界。
栅格数据存储压缩编码方法(3)、块式编码(4)、四叉树编码(1)、链式编码:由某一原点开始并按某些基本方向确定的单位矢量链。
基本方向可定义为:东=0,南=3,西=2,北=1等,还应确定某一点为原点。
(2)、行程编码:只在各行(或列)数据的代码发生变化时依次记录该代码以及相同代码重复的个数,即按(属性值,重复个数)编码(3)、块式编码:块式编码是将行程编码扩大到二维的情况,把多边形范围划分成由像元组成的正方形,然后对各个正方形进行编码。
(4)、四叉树编码而块状结构则用四叉树来描述,将图像区域按四个大小相同的象限四等分,每个象限又可根据一定规则判断是否继续等分为次一层的四个象限,无论分割到哪一层象限,只要子象限上仅含一种属性代码或符合既定要求的少数几种属性时,则停止继续分割。
否则就一直分割到单个像元为止。
而块状结构则用四叉树来描述。
按照象限递归分割的原则所分图像区域的栅格阵列应为2n2n(n为分割的层数)的形式。
下面就着重介绍四叉树编码。
直接栅格编码是最简单最直观而又非常重要的一种栅格结构编码方法,通常称这种编码为图像文件或栅格文件。
直接编码就是将栅格数据看作一个数据矩阵,逐行(或逐列)逐个记录代码,可以每行都从左到右逐象元记录,也可奇数行从左到右,而偶数行由右向左记录,为了特定目的还可采用其它特殊的顺序,右图直接编码可表示为矩阵:四叉树编码又称为四分树、四元树编码。
它是一种更有效地压编数据的方法。
它将2n2n像元阵列的区域,逐步分解为包含单一类型的方形区域,最小的方形区域为一个栅格像元。
图像区域划分的原则是将区域分为大小相同的象限,而每一个象限又可根据一定规则判断是否继续等分为次一层的四个象限。
其终止判据是,不管是哪一层上的象限,只要划分到仅代表一种地物或符合既定要求的几种地物时,则不再继续划分否则一直分到单个栅格像元为止。
所谓四叉树结构,即把整个2n2n像元组成的阵列当作树的根结点,n为极限分割次数,n+1为四分树的最大高度或最大层数。
栅格数据结构栅格结构是以规则的阵列来表示空间地物或现象分布的数据组织,组织中的每个数据表示地物或现象的非几何属性特征。
栅格结构的显著特点:属性明显,定位隐含,即数据直接记录属性的指针或数据本身,而所在位置则根据行列号转换为相应的坐标。
栅格数据的编码方法:直接栅格编码,就是将栅格数据看作一个数据矩阵,逐行(或逐列)逐个记录代码;压缩编码,包括链码(弗里曼链码)比较适合存储图形数据;游程长度编码通过记录行或列上相邻若干属性相同点的代码来实现;块码是有成长度编码扩展到二维的情况,采用方形区域为记录单元;四叉树编码是最有效的栅格数据压缩编码方法之一,还能提高图形操作效率,具有可变的分辨率。
矢量数据结构矢量数据结构是通过记录坐标的方式尽可能精确地表示点、线和多边形等地理实体,坐标空间设为连续,允许任意位置、长度和面积的精确定义。
矢量结构的显著特点:定位明显,属性隐含。
矢量数据的编码方法:对于点实体和线实体,直接记录空间信息和属性信息;对于多边形地物,有坐标序列法、树状索引编码法和拓扑结构编码法。
坐标序列法是由多边形边界的x,y坐标对集合及说明信息组成,是最简单的一种多边形矢量编码法,文件结构简单,但多边形边界被存储两次产生数据冗余,而且缺少邻域信息;树状索引编码法是将所有边界点进行数字化,顺序存储坐标对,由点索引与边界线号相联系,以线索引与各多边形相联系,形成树状索引结构,消除了相邻多边形边界数据冗余问题;拓扑结构编码法是通过建立一个完整的拓扑关系结构,彻底解决邻域和岛状信息处理问题的方法,但增加了算法的复杂性和数据库的大小。
矢量栅格数据的比较矢量数据的优缺点:优点为数据结构紧凑、冗余度低,有利于网络和检索分析,图形显示质量好、精度高;缺点为数据结构复杂,多边形叠加分析比较困难。
栅格数据的优缺点:优点为数据结构简单,便于空间分析和地表模拟,现势性较强;缺点为数据量大,投影转换比较复杂。
两者比较:栅格数据操作总的来说容易实现,矢量数据操作则比较复杂;栅格结构是矢量结构在某种程度上的一种近似,对于同一地物达到于矢量数据相同的精度需要更大量的数据;在坐标位置搜索、计算多边形形状面积等方面栅格结构更为有效,而且易于遥感相结合,易于信息共享;矢量结构对于拓扑关系的搜索则更为高效,网络信息只有用矢量才能完全描述,而且精度较高。