数据压缩浅述
数据压缩是指在不丢失信息的前提下,缩减数据量以减少存储空间,提高其传输、存
储和处理效率的一种技术方法。
或按照一定的算法对数据进行重新组织,减少数据的
冗余和存储的空间。
数据压缩包括有损压缩和无损压缩。
例如,如果我们将“compression”编码为“comp”那么这篇文章可以用较少的数据
位表示。
一种流行的压缩实例是许多计算机都在使用的ZIP 文件格式,它不仅仅提供
了压缩的功能,而且还作为归档工具(Archiver)使用,能够将许多文件存储到同一个文件中。
无损压缩算法通常利用了统计冗余,这样就能更加简练地、但仍然是完整地表示发送
方的数据。
如果允许一定程度的保真度损失,那么还可以实现进一步的压缩。
例如,人们看图画
或者电视画面的时候可能并不会注意到一些细节并不完善。
同样,两个音频录音采样
序列可能听起来一样,但实际上并不完全一样。
有损压缩算法在带来微小差别的情况
下使用较少的位数表示图像、视频或者音频。
一些机制是可逆的,这样就可以恢复原始的数据,这种机制称为无损数据压缩;另外
一些机制为了实现更高的压缩率允许一定程度的数据损失,这种机制称为有损数据压缩。
事实上,多媒体信息存在许多数据冗余。
例如,一幅图像中的静止建筑背景、蓝天和
绿地,其中许多像素是相同的如果逐点存储,就会浪费许多空间,这称为空间冗余。
又如,在电视和动画的相邻序列中,只有运动物体有少许变化,仅存储差异部分即可,这称为时间冗余。
此外还有结构冗余、视觉冗余等,这就为数据压缩提供了条件。
总之,压缩的理论基础是信息论。
从信息的角度来看,压缩就是去除掉信息中的冗余,即去除掉确定的或可推知的信息,而保留不确定的信息,也就是用一种更接近信息本
质的描述来代替原有的冗余的描述,这个本质的东西就是信息量。
许多无损数据压缩系统都可以看作是四步模型,有损数据压缩系统通常包含更多的步骤,例如它包括预测、频率变换以及量化。
?
无损压缩是指使用压缩后的数据进行重构(或者叫做还原,解压缩),重构后的数据与
原来的数据完全相同;无损压缩用于要求重构的信号与原始信号完全一致的场合。
一
个很常见的例子是磁盘文件的压缩。
根据目前的技术水平,无损压缩算法一般可以把
普通文件的数据压缩到原来的1/2~1/4。
一些常用的无损压缩算法有霍夫曼(Huffman)算法和LZW(Lenpel-Ziv & Welch)压缩算法。
有损压缩是指使用压缩后的数据进行重构,重构后的数据与原来的数据有所不同,但不影响人对原始资料表达的信息造成误解。
有损压缩适用于重构信号不一定非要和原始信号完全相同的场合。
例如,图像和声音的压缩就可以采用有损压缩,因为其中包含的数据往往多于我们的视觉系统和听觉系统所能接收的信息,丢掉一些数据而不至于对声音或者图像所表达的意思产生误解,但可大大提高压缩比。