在地理信息系统的空间数据结构中,栅格结构的编码方式主要有直接
栅格编码、链码、游程长度编码、块码、四叉树码等。
直接编码就是将栅格数据看作一个数据矩阵,逐行 (或逐列)逐个记
录代码,可以每行都从左到右逐个象元记录,也可以奇数行地从左到右而
偶数行地从右向左记录,为了特定目的还可采用其他特殊的顺序。
链码又称为弗里曼链码或边界链码,链码可以有效地压缩栅格数据,
而且对于估算面积、长度、转折方向的凹凸度等运算十分方便,比较适合
于存储图形数据。缺点是对边界进行合并和插入等修改编辑工作比较困
难,对局部的修改将改变整体结构,效率较低,而且由于链码以每个区域
为单位存储边界,相邻区域的边界将被重复存储而产生冗余。
游程长度编码是栅格数据压缩的重要编码方法,它的基本思路是:对
于一幅栅格图像,常常有行 (或列)方向上相邻的若干点具有相同的属性
代码,因而可采取某种方法压缩那些重复的记录内容。其方法有两种方
案,其中的一种编码方案是,只在各行 (或列)数据的代码发生变化时依
次记录该代码以及相同的代码重复的个数,从而实现数据的压缩。
? 373 ?块码是游程长度编码扩展到二维的情况,采用方形区域作为记录单元,
每个记录单元包括相邻的若干栅格,数据结构由初始位置 (行、列号)和半
径,再加上记录单位的代码组成。
四叉树又称四元树或四分树,是最有效的栅格数据压缩编码方法之
一,绝大部分图形操作和运算都可以直接在四叉树结构上实现,因此四叉
树编码既压缩了数据量,又可大大提高图形操作的效率。四叉树将整个图
像区逐步分解为一系列被单一类型区域内含的方形区域,最小的方形区域
为一个栅格象元。分割的原则是,将图像区域划分为四个大小相同的象
限,而每个象限又可根据一定规则判断是否继续等分为次一层的四个象
限,其终止判据是,不管是哪一层上的象限,只要划分到仅代表一种地物
或符合既定要求的少数几种地物时,则不再继续划分,否则一直划分到单
个栅格象元为止。四叉树通过树状结构记录这种划分,并通过这种四叉树
状结构实现查询、修改、量算等操作。