admin 管理员组文章数量: 1086019
2024年4月24日发(作者:正切三角函数公式大全)
栅格压缩编码和常见文件压缩方法的异同
一、关于栅格数据压缩编码
栅格数据是按网格单元的行与列排列、具有不同灰度或颜色的阵列数据。每一个单元
(象素)的位置由它的行列号定义,所表示的实体位置隐含在栅格行列位置中,数据组织
中的每个数据表示地物或现象的非几何属性或指向其属性的指针。一个优秀的压缩数据编
码方案是:在最大限度减少计算机运算时间的基点上进行最大幅度的压缩。在栅格文件中,
每个栅格只能赋予一个唯一的属性值,所以属性个数的总数是栅格文件的行数乘以列数的
积,而为了保证精度,栅格单元分得一般都很小,这样需要存储的数据量就相当大了。通
常一个栅格文件的栅格单元数以万计。但许多栅格单元与相邻的栅格单元都具有相同的值,
因此使用了各式各样的数据编码技术与压缩编码技术。其栅格数据存储压缩编码方法主要
有:直接编码、链式编码、游程编码、块式编码、四叉树编码。
(1)直接栅格编码::是最简单最直观而又非常重要的一种栅格结构编码方法,通常
称这种编码为图像文件或栅格文件。直接栅格编码是将栅格数据看作一个数据短阵,逐行
或逐列逐个记录代码。可每行从左到右逐个记录,也可奇数行从左到右,偶数行从右到左
记录,为特定目的也可采用其它特殊顺序。通常称这种编码的图像文件为栅格文件,这种
网格文件直观性强,但无法采用任何种压缩编码方法。图2.1 (c)的栅格编码为:4,4,4,
4,7,7,7,7;4,4,4,4,4,7,7,7;4,4,4,4,9,9,7,7;0,0,4,9,
9,9,7,7;0,0,0,9,9,9,7,7;0,0,0,9,9,9,9,9;0,0,0,0,9,
9,9,9;0,0,0,0,0,9,9,9。可用程序设计语言按顺序文件或随机文件记录这些
数据。(2)链式编码:由某一原点开始并按某些基本方向确定的单位矢量链。基本方向可
定义为:东=0,南=3,西=2,北=1等,还应确定某一点为原点。其特点:对多边形的
表示具有很强的数据压缩能力;具有一定的运算功能,如面积和周长计算等;叠置运算如
组合、相交等则很难实施,有效地压缩了栅格数据,尤其对多边形的表示最为显著,比较
适于存储图形数据。但对边界做合并和插入等修改编辑工作很难实施,而且对局部修改要
改变整体结构,效率较低。
(3)游程编码:只在各行(或列)数据的代码发生变化时依次记录该代码以及相同代
码重复的个数,即按(属性值,重复个数)编码。游程用一对数字表达,其中,第一个值
表示游程长度,第二个值表示游程属性值。每一个新行都以一个新的游程开始。表达游程
长度的位数取决于栅格区域的列数,游程属性值则取决于栅格区域属性的最大类别数(分
类的级别数)。通常用两个字节表示游程长度(行数可达65536),一个字节表示游程属性
值(256级)。
(4)块式编码:块式编码是将行程编码扩大到二维的情况,把多边形范围划分成由像
元组成的正方形,然后对各个正方形进行编码。特点:块式编码是将行程编码扩大到二维
的情况;一个多边形所能包含的正方形越大,多边形的边界越简单,块式编码的效果就越
好;多边形之间求并及求交方便;探测多边形的延伸特征较容易。
(5)四叉树编码而块状结构则用四叉树来描述,将图像区域按四个大小相同的象限四
等分,每个象限又可根据一定规则判断是否继续等分为次一层的四个象限,无论分割到哪
一层象限,只要子象限上仅含一种属性代码或符合既定要求的少数几种属性时,则停止继
续分割。否则就一直分割到单个像元为止。而块状结构则用四叉树来描述。按照象限递归
分割的原则所分图像区域的栅格阵列应为2n×2n(n为分割的层数)的形式。四叉树编码
又称为四分树、四元树编码。它是一种更有效地压编数据的方法。它将2n×2n像元阵列的
区域,逐步分解为包含单一类型的方形区域,最小的方形区域为一个栅格像元。图像区域
划分的原则是将区域分为大小相同的象限,而每一个象限又可根据一定规则判断是否继续
等分为次一层的四个象限。其终止判据是,不管是哪一层上的象限,只要划分到仅代表一
版权声明:本文标题:栅格压缩编码和常见文件压缩方法的异同2 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/p/1713944205a658871.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论