栅格数据存储压缩编码方法

合集下载

栅格数据结构及编码..

栅格数据结构及编码..
0,1;4,2;0,5; 4,3;0,5; 4,4;8,1;0,3; 7,1;4,2;8,3;0,2; 7,1;4,1;8,5;0,1; 7,2;8,6; 7,5;8,3; 7 ,4;8,4;
(2)
压缩编码方法-块码
基本思想: 块式编码是将游程长度编码扩大到二维的情况,把多边形范围划分 成由像元组成的正方形,然后对各个正方形进行编码。块式编码的数据 结构由初始位置(行号,列号) 、半径和属性,再加上记录单元的代码 组成。如图:

字母:蔬菜类型、土地分区
a c
五、栅格数据组织方法
栅格数据以层的方 式来组织文件,在栅格 数据结构中,物体的空 间位置就用其在笛卡尔 平面网格中的行号和列 号坐标表示,物体的属 性用象元的取值表示, 每个象元在一个网格中 只能取值一次,同一象 元要表示多重属性的事 物就要用多个笛卡尔平 面网格,称为层。
重要性法 处理方法:根据栅格内不同地物的重要性,选取最重 要的地物类型决定相应的栅格单元代码 重要性法常用于具有特殊意义而面积较小的地理要素, 特别是点、线状地理要素,如城镇、交通枢纽、交通 线、河流水系等,在栅格中代码应尽量表示这些重要 地物 长度占优法 处理方法:以网格中线的大部分长度所对应的面 域的属性值来确定。
1 1 1 3
1 1 1 3
2 2 3 3
2 3 3 2
四、栅格数据的值

整数值:如土壤分类
1.7 1.8 2.0 2.0 1、 1.8 1.8 2.3 2.2 污染物浓度、 2.2 2.2 2.2 2.0 温度
a a
a a a c
b b c c
b c c b
2、块码 (BlockCodes)
0 4 4 0 0 0 0 0

栅格数据编码方式

栅格数据编码方式

栅格数据编码方式
栅格数据编码方式有以下几种:
1. RLE编码(Run-Length Encoding):该编码方式根据一定的规则将连续的像素点压缩成一个值和重复次数的对应关系。

2. Huffman编码:该编码方式利用频率统计原理,对每个像素值进行编码,使频率较高的像素值的编码位数较少,而频率较低的像素值的编码位数较多,从而达到压缩的目的。

3. LZW编码(Lempel-Ziv-Welch编码):该编码方式是一种基于字典的压缩方法,通过建立一个字典表,将重复出现的字符用一个短编码来代替,从而减小了数据的存储大小。

4. Delta编码:该编码方式将连续的像素点之间的差值进行编码,从而可在一定程度上减小数据的存储大小。

5. JPEG2000编码:该编码方式是一种基于小波变换的压缩方法,可将图像分解为多个分辨率层级,并对每个层级进行小波变换编码,以实现高效压缩和解压缩。

栅格数据结构及编码

栅格数据结构及编码

567
4
0
04477777 4 4 4 4 47 7 7 4 4 4 48 87 7 00488877 00888878 00088888 00008888 00000888
3
1
2
属性值为“4”的多边形:
( 4,1,2)0,1,0,3,3, 5,4,6,7
17
特点: 可以有效地压缩栅格数据,而且对于估算面积、长度、转折方
层2

层n
栅格数据文件 层1 多边形1 属性值
像元1坐标 …
像元n坐标 多边形N
层2

10
层n
六、栅格数据存储编码
1、直接栅格编码 当每个像元都有唯一一个属性值时,一层内的编码就需要
m行×n列×3(x,y和属性编码值)个存储单元。
栅格数据是二维表面上地理数据的离散量化值,每一层的象元值组成
像元阵列(即二维数组),其中行、列号表示它的位置。
例如影像:
AAAA
ABBB
ABBB
AAAB 在计算机内是一个4*4阶的矩阵。但在外部设备上,以左上角开始逐行 逐列存贮。如上例存贮顺序为:A A A A A B B B A A B B A A A B
11
2、压缩编码方法 目的:用尽可能小的数据量来记录尽可能多的信息。 方法:游程长度编码、链码、块码、四叉树编码。
❖ 以层为基础。每一层又以像元为序记录它的坐标和属性值。
❖ 以层为基础。但每一层内以多边形为序记录多边形的属性值和充 满多边形的各像元的坐标。
栅格数据文件
像元1 像元2
X坐标 Y坐标 层1属性值 层2属性值
… 层n属性值
… 像元n
栅格数据文件
层1 像元1 X,Y,属性值

栅格数据编码方法分为两大类

栅格数据编码方法分为两大类

•栅格数据编码方法分为两大类: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).行程编码(3).块式编码(4).四叉树编码(1).链式编码:由某一原点开始并按某些基本方向确定的单位矢量链。

基本方向可定义为:东=0,南=3,西=2,北=1等,还应确定某一点为原点。

(2).行程编码:只在各行(或列)数据的代码发生变化时依次记录该代码以及相同代码重复的个数,即按(属性值,重复个数)编码(3).块式编码:块式编码是将行程编码扩大到二维的情况,把多边形范围划分成由像元组成的正方形,然后对各个正方形进行编码。

(4).四叉树编码而块状结构则用四叉树来描述,将图像区域按四个大小相同的象限四等分,每个象限又可根据一定规则判断是否继续等分为次一层的四个象限,无论分割到哪一层象限,只要子象限上仅含一种属性代码或符合既定要求的少数几种属性时,则停止继续分割。

否则就一直分割到单个像元为止。

而块状结构则用四叉树来描述。

按照象限递归分割的原则所分图像区域的栅格阵列应为2n×2n(n为分割的层数)的形式。

下面就着重介绍四叉树编码。

四叉树编码又称为四分树、四元树编码。

它是一种更有效地压编数据的方法。

它将2n×2n像元阵列的区域,逐步分解为包含单一类型的方形区域,最小的方形区域为一个栅格像元。

图像区域划分的原则是将区域分为大小相同的象限,而每一个象限又可根据一定规则判断是否继续等分为次一层的四个象限。

其终止判据是,不管是哪一层上的象限,只要划分到仅代表一种地物或符合既定要求的几种地物时,则不再继续划分否则一直分到单个栅格像元为止。

所谓四叉树结构,即把整个2n×2n像元组成的阵列当作树的根结点,n为极限分割次数,n+1为四分树的最大高度或最大层数。

每个结点有分别代表西北、东北、西南、东南四个象限的四个分支。

四个分支中要么是树叶,要么是树叉。

树叉、树叶用方框表示,它说明该四分之一范围全属多边形范围(黑色)或全不属多边形范围(空心四方块),因此不再划分这些分枝;树用圆圈表示,它说明该四分之一范围内,部分在多边形内,另一部分在多边形外,因而继续划分,直到变成树叶为止。

栅格数据的主要编码方式

栅格数据的主要编码方式

栅格数据的主要编码方式什么是栅格数据编码方式?为什么需要栅格数据编码方式?栅格数据编码方式有哪些?如何选择合适的栅格数据编码方式?本文将逐一解答。

一、什么是栅格数据编码方式?栅格数据是一种用网格将空间分割成离散单元的空间数据,类似于棋盘。

每个单元格代表着空间中的一个像素值,这种像素值可以表示地表的不同属性,例如高程、温度、植被类型等。

栅格数据编码方式是将这些像素值以数字形式进行编码的过程,用来处理地理信息技术中所涉及的各种数据。

二、为什么需要栅格数据编码方式?栅格数据编码方式是在处理、操作和存储栅格数据时必不可少的过程。

它可以将栅格数据转化为计算机能够处理的数字格式,这样在进行数据分析、可视化和模型分析时,计算机可以快速地处理这些数据。

同时,栅格数据编码方式还可以大量减小栅格数据的存储空间,方便数据的共享和传输。

三、栅格数据编码方式有哪些?主要的栅格数据编码方式包括:1.无符号整数编码:在栅格数据中,每个像素值都表示为一个非负整数,通常采用二进制,而每个二进制位都可以表示一个唯一的像素值。

这种编码方式的数据大小较小,但是仅适用于无符号整数像素值。

2.有符号整数编码:有符号整数编码的范围很广,可以表示正数、负数和0,因此可以使用更多的像素值表示更多的信息,但是数据大小会相应地增加。

3.浮点数编码:这种编码方式可以表示非整数精细值,因此在处理地形、气象和海洋数据时非常有用。

浮点数编码的要点是数据精度,否则数据的近似值和处理结果将受到影响。

4.压缩编码:压缩编码的目的是将数据压缩到最小的尺寸,以便更好地存储和传输。

常见的压缩编码方案包括行程编码和差分编码。

5. RGB编码:基于颜色的编码方式,通常用于处理卫星影像和航空照片等真彩色或伪彩色的遥感数据。

四、如何选择合适的栅格数据编码方式?选择合适的栅格数据编码方式应该考虑以下因素:1.数据类型:选择哪种数据编码方式取决于数据类型,因为每个编码方式都有自己的优缺点。

栅格数据压缩编码和常见文件的压缩方法差异

栅格数据压缩编码和常见文件的压缩方法差异

栅格数据压缩编码和常见文件的压缩方法差异栅格数据压缩编码和常见文件的压缩方法具有很大的差异。

栅格数据在遥感和地理信息领域中广泛使用,包括遥感影像和列表等。

这些数据通常具有高分辨率,占用空间巨大,需要进行压缩以节省存储空间和传输带宽。

常见的文件压缩方法,如ZIP、RAR、GZIP等,对于栅格数据来说并不适用,需要使用专门的压缩编码方法。

栅格数据压缩编码方法通常分为有损压缩和无损压缩两种。

有损压缩会丢失一定程度的数据信息以减小文件大小,常见的有损压缩方法包括JPEG和JPEG2000。

而无损压缩则保留了所有数据信息,常见的无损压缩方法包括LZW、DEFLATE和LZ77等。

相比之下,常见文件的压缩方法通常采用的是无损压缩。

ZIP和RAR采用的是一种称为DEFLATE的压缩算法,可以将文件的数据压缩成更小的尺寸。

GZIP则是在DEFLATE基础上添加了头文件和尾文件,使得压缩文件可以被更好地识别和解压缩。

栅格数据压缩编码方法与常见文件压缩方法最大的区别在于,栅格数据需要考虑特殊的数据结构和特点。

例如,遥感影像通常是由像素点构成的,每个像素点包含多个波段的数据。

通过对波段之间的相关性进行利用,可以在保留数据信息的前提下实现数据压缩。

而常见文件则通常是由二进制数据组成,无法利用数据之间的相关性进行压缩。

因此,栅格数据的压缩编码方法需要在数据结构和数据特点的基础上进行设计和优化。

目前常见的栅格数据压缩编码方法包括Huffman编码、Arithmetic编码、RLE编码等。

这些编码方法也可以结合使用,以达到更好的压缩效果。

栅格数据编码

栅格数据编码

4、链式编码
• 链式编码又称费尔曼编码或边界编码。 • 链式编码将线状地物或区域边界表示为由某一
起始点和在某些基本方向上的单位矢量链组成。 • 单位矢量的长度为一个栅格单元,每个后续点
可能位于其前继点的8个基本方向之一。
链式编码方式
特征码 2 3
链式编码表
起点行 1 4
起点列 4 7
链码 454554 24465670221
• 行程编码分为:游程长度编码 游程终止编码
游程长度编码:(sk,lk) sk—栅格的属性值 lk —游程的连续长度
游程终止编码:(sk,lk) sk—栅格的属性值 lk —游程的终止列号
行程编码图及编码表
B
A
D
C
12 3 4 5 6 7 8
行程长度编码
行程终止编码
1 D A A B B B B B (D,1)(A,2)(B,5)
深度:是指处于四叉树的第几层上,由深度可
推知子区的大小。(一幅2n× 2n栅格阵列的图用四叉树
分割时,具有的最大深度为n,即可分为0,1,2,3,…,n 层。)
• 线性四叉树的编码方法:由上而下分割 自下而上合并
• 线性四叉树的编码形式:四进制编码 十进制编码
线性四叉树只存储每个结点的三个量,数 据量比常规四叉树大为减少,因而应用广 泛。
j (i

n 2
1, n;
j
1, n ) 2
P3

Pi,
j (i

n 2
1, n;
j

n 2
1, n)
• 如果要再分割下一层,其子象限分别为:
P00

Pi,
j (i 1, n ;
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

栅格数据存储压缩编码方法
栅格数据存储压缩编码方法主要有:(1).链式编码(2).行程编码(3).块式编码(4).四叉树编码
(1).链式编码:由某一原点开始并按某些基本方向确定的单位矢量链。

基本方向可定义为:东=0,南=3,西=2,北=1等,还应确定某一点为原点。

(2).行程编码:只在各行(或列)数据的代码发生变化时依次记录该代码以及相同代码重复的个数,即按(属性值,重复个数)编码
(3).块式编码:块式编码是将行程编码扩大到二维的情况,把多边形范围划分成由像元组成的正方形,然后对各个正方形进行编码。

(4).四叉树编码而块状结构则用四叉树来描述,将图像区域按四个大小相同的象限四等分,每个象限又可根据一定规则判断是否继续等分为次一层的四个象限,无论分割到哪一层象限,只要子象限上仅含一种属性代码或符合既定要求的少数几种属性时,则停止继续分割。

否则就一直分割到单个像元为止。

而块状结构则用四叉树来描述。

按照象限递归分割的原则所分图像区域的栅格阵列应为
2n×2n(n为分割的层数)的形式。

下面就着重介绍四叉树编码。

四叉树编码又称为四分树、四元树编码。

它是一种更有效地压编数据的方法。

它将2n×2n像元阵列的区域,逐步分解为包含单一类型的方形区域,最小的方形区域为一个栅格像元。

图像区域划分的原则是将区域分为大小相同的象限,而每一个象限又可根据一定规则判断是否继续等分为次一层的四个象限。

其终止判据是,不管是哪一层上的象限,只要划分到仅代表一种地物或符合既定要求的几种地物时,则不再继续划分否则一直分到单个栅格像元为止。

所谓四叉树结构,即把整个2n×2n像元组成的阵列当作树的根结点,n
为极限分割次数,n+1为四分树的最大高度或最大层数。

每个结点有分别代表西北、东北、西南、东南四个象限的四个分支。

四个分支中要么是树叶,要么是树叉。

树叉、树叶用方框表示,它说明该四分之一范围全属多边形范围(黑色)或全不属多边形范围(空心四方块),因此不再划分这些分枝;树用圆圈表示,它说明该四分之一范围内,部分在多边形内,另一部分在多边形外,因而继续划分,直到变成树叶为止。

为了在计算机中既能以最小的冗余存储与图像对应的四叉树,又能方便地完成各种图形操作,专家们已提出多种编码方式。

下面介绍美国马里兰大学地理信
息系统中采用的编码方式。

该方法记录每个终点(或叶子结点)的地址和值,值就是子区的代码,其中地址包括两个部分,共占有32位(二进制),最右边四位记录该叶子结点的深度,即处于四叉树的第几层上,有了深度可以推知子区的大小;地址由从根结点到该叶子结点的路径表示。

0,1,2,3分别表示NW、NE、SW、SE,从右边第五位开始2n字节记录这些方向。

如图3-9第10个结点深度为4,第一层处于SW象限记为1,第四层处于象限SE,记为3,表示为二进制为:
20位8位4位
0000 (00100001110100)
每层象限位置由二位二进制表示,共八位。

上述二进制换算成十进制整数为2164。

这样,记录了各个叶子的地址,再记上相应的代码值,就记录了整个图像,并可在此编码的基础上进行多种图像操作。

四叉树编码有许多优点:①容易而有效地计算多边形的数量特征。

②阵列各部分的分辨率是可变的,边界复杂部分四叉树较高,即分级多,分辨率也高,而不需表示的细节部分则分级少,分辨率低。

因而既可精确表示图形结构,又可减少存储量。

③栅格到四叉树及四叉树到简单栅格结构的转换比其它压缩方法容易。

④多边形中嵌套不同类型小多边形的表示较方便。

四叉树编码的最大缺点是,树状表示的变换不具有稳定性,相同形状和大小的多边形可能得出不同四叉树结构,故不利于形状分析和模式识别。

但因它允许多边形中嵌套多边形,即所谓“洞”的结构存在,使越来越多的地理信息系统工作者对四叉树结构很感兴趣。

上述这些压缩数据的方法应视图形的复杂情况合理选用,同时应在系统中备用相应的程序。

另外,用户的分析目的和分析方法也决定着压缩方法的选取。

姓名:陶承才
学号:05210220。

相关文档
最新文档