栅格数据压缩编码
对栅格数据集,在SuperMap中可采用 DCT 编码,SGL 编码或未编码来存储。其中未编码是最简单最直观又非常重要的一种栅格结构编码方法,就是将栅格数据看作一个数据矩阵,逐行(或逐列)逐个记录像元值。这种存储方式未采用任何压缩方法,因而当栅格像素较多时,需要相当大的存储空间,而且随着空间分辨率的提高,存储空间成几何级数递增。由于影像空间域存在很强的相关性,经常相邻的像元具有相同的属性值,使用一定的压缩编码,可以大大节省栅格数据的存储空间。
- DCT(Discrete Cosine Transform),离散余弦编码,是一种广泛应用于图像压缩中的变换编码方法,这种方法在信息的压缩能力、重构图像质量、适应范围和算法复杂性等方面之间提供了一种很好的平衡,成为目前应用最广泛的图像压缩技术。其原理是通过变换降低图像原始空间域表示中存在的非常强的相关性,使信号更紧凑地表达。该方法有很高的压缩率和性能,但编码是有失真的。由于影像数据集一般不用来进行精确的分析,所以 DCT 编码方式是影像数据集存储的压缩编码方式。
- SGL(SuperMap Grid LZW),SuperMap自定义的一种压缩存储格式。其实质是改进的 LZW 编码方式。LZW 是一种广泛采用的字典压缩方法,其最早是用在文字数据的压缩方面。LZW的编码的原理是用代号来取代一段字符串,后续的相同的字符串就使用相同代号,所以该编码方式不仅可以对重复数据起到压缩作用,还可以对不重复数据进行压缩操作。SGL 对 LZW 进行了改进,是一种更高效的压缩存储方式。目前SuperMap中的对栅格数据集的压缩存储采用SGL的压缩编码方式,这是一种无损压缩。
当栅格数据导入到数据源中作为数据集时,以及三维模拟中生成DEM数据集,当前窗口保存为影像数据集等操作中,都可以选择和设定栅格数据集的压缩存储格式;栅格分析功能中生成的栅格数据集的编码方式,都默认采用未编码方式,不支持设置。
SuperMap 中不同类型的像素格式的影像对应的压缩编码类型如下表所示:
像素格式 | 压缩编码类型 |
1 位单色 | LZW 编码 |
4 位16色 | LZW 编码 |
8 位256色 | DCT 编码 |
16 位彩色 | DCT 编码 |
24 位真彩色 | DCT 编码 |
32 增强真彩色 | DCT 编码 |
64 位长整型 | 无编码 |
32 位浮点型 | 未编码 |
64 位双精度型 | SGL 编码 |