几种图像压缩算法

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

4 预测编码
❖ 预测编码用于图像编码时与声音的压缩编码很 类似,它也是根据过去已编码的像素(也称为参 考像素)来预测当前的像素值(称为预测值), 然后对当前的像素值与预测值之差进行编码,这 就是差分编码(DPCM)。这种编码是利用图像 本身的相关性及视觉的差值灵敏度特性,差值大 时,可以粗量化。图像编码用地较多的是二维预 测,如图3.6所示。
❖ 将5个字符按其概率大小排序,然后把 最小的两项的概率值相加,归并成新的一 项。然后再选最小的两项合并,一直重复 作到只剩最后一项为止。本例实现过程参 见图3.4。
❖ 下面再来构造霍夫曼编码树。这是一 棵二叉树,我们从图3.5中的右方开始向左 取值,根结点概率为1.0,以下左分枝取概 率小的项,右分枝取概率大的项。对于归 并项,按此规则一直分解到最右方为止。 如图3.5所示为构造好的霍夫曼编码树。
❖ 数学上可以证明,符号序列{ si }的任 何一种编码方案,其平均码长必定大于 或等于H。也就是说,H是该符号序列的 理想最小平均码长。平均码长越接近H, 我们说该编码方案越好。
❖ 数学上还可以证明,在可变字长编码 中,对于出现概率大的符号编码成短字长 的编码,对于概率小的符号,编以较长的 字长编码。如果码字长严格按照所对应符 号的出现概率的大小逆序列排列,则平均 码长一定小于其他任何符号顺序方式,即 这是一种最接近于熵值的“最佳编码”。
1. 图像数据压缩方法的分类
❖ 数据压缩的任务在不影响或少影响图像 质量的前提下,尽量设法减少图像数据中 的数据量。其首要任务是设法去掉各种冗 余的数据。
❖ 数据压缩实际是一个编码的过程,即 将原始数据进行编码压缩。数据解压缩是 数据压缩的逆过程,即将经过压缩的数据 还原成原始数据。因此数据压缩方法也称 编码方法。
❖ 如图3.5所示,我们给每个左分枝标以0, 给每个右分枝标以1,则从根结点至每个叶结点 的路径即为该叶结点代表字符的编码。如图3.5 右方所示。
❖ 本例中熵的值为2.09,编码的平均码长为 2.15,非常接近。
❖ 霍夫曼编码的优点是简单易行,缺点是解 码时必须知道所使用的码表,这给存储和通信 带来不便。另一个缺点是它依赖于原始数据的 概率,这在实际应用中受到许多限制。
❖00 N:表示从当前位置起,图像数据存在连续N个不 同的值(存放于N/2个字节中)
行程编码原理
❖在给定的图像数据中寻找连续重复的数值, 然后用两个字符值取代这些连续值
❖“aaabbbbccccddd”=>”3a4b4c3d” ❖处理包含大量重复信息时可以得到很好的
压缩效率,但在连续重复数据少时效果差 ❖PCX图像文件的RLE压缩算法
❖ 霍夫曼编码是实现上述最佳编码的一 种算法。下面看一个示例。
❖ 大部分数字信息的编码都是采用定 长编码。意即采用相同的位数对数据进行 编码。如常用的ASCII就是定长编码,它 用7位二进制数来表示每一个字符。但是 实际上在文章中每个字符出现的概率并不 相等。我们现在假设有a,b,c,d,e 5 个字符。其出现概率分别为 0.12,0.40,0.15, 0.08,0.25。用以下方法 来求得其霍夫曼编码。
❖ LZW算法中,首先建立一个字符串表,把每一个 第一次出现的字符串放入串表中,并用一个数字 来表示,这个数字与此字符串在串表中的位置有 关,并将这个数字存入压缩文件中,如果这个字 符串再次出现时,即可用表示它的数字来代替, 并将这个数字存入文件中。压缩完成后将串表丢 弃。如"print" 字符串,如果在压缩时用266表示, 只要再次出现,均用266表示,并将"print"字符串 存入串表中,在图象解码时遇到数字266,即可 从串表中查出266所代表的字符串"print",在解压 缩时,串表可以根据压缩数据重新生成。
❖ 评价压缩方法的优劣主要从以下3个 方面来衡量。
❖ (1)压缩比:压缩比指原始图像经 A/D转换后未经压缩所产生的数据量与经压 缩所产生的数据量之比。
❖ (2)图像质量:还原出来的图像质量 比原始图像有多大失真,一般采用人的视 觉效果和信噪比两个方法。前者是通过人 在两米内观察所作的评价,后者通过仪器 测量。
❖ 下面介绍几种常用的压缩方法。
2 霍夫曼编码
❖ 霍夫曼编码是无损编码的一种,是一种 基于统计特性的可变字长的编码方法。属 于无损编码的还有行程编码、算术编码等。 下面来看霍夫曼编码。
❖ 设被编码的符号如下。 ❖ s1,s2,s3,…,sn ❖ 它们出现的概率分别为: ❖ p1,p2,p3,…,pn ❖ 假设采用不等字长编码,每个符号的 码长分别为: ❖ m1,m2,m3,…,mn
LZW压缩算法
LZW压缩算法是一种新颖的压缩方法,由 Lemple-Ziv-Welch 三人共同创造,用他们 的名字命名。它采用了一种先进的串表压 缩,将每个第一次出现的串放在一个串表 中,用一个数字来表示串,压缩文件只存 贮数字,则不存贮串,从而使图象文件的 压缩效率得到较大的提高。奇妙的是,不 管是在压缩还是在解压缩的过程中都能正 确的建立这个串表,压缩或解压缩完成后, 这个串表又被丢弃。
3.行程长度编码
❖ 编码实例(16色bmp数据):
5个
பைடு நூலகம்
第一行:24 24 24 30 60 40 09 22…46…46
第二行:64 65 67 88 88 88 88 … 90 78
❖00 00:表示该行图像数据已结束
❖00 01:表示整个图像结束
❖00 02:用来转义后面两个字节,即表示其后的两个字 节分别表示下一个像素从当前位置开始的水平与垂直 位移
❖ (3)实现难度:即实现压缩及还原算 法的难易程度,亦即完成压缩所需要的时 间与空间开销或硬件实现的复杂性。 ❖ 压缩的方法主要有以下几种(见图 3.3)。
❖ 无损编码可以完全恢复原始图像而不 引入失真,它利用数据的统计特性来进行 数据压缩,解压缩后的还原图像与原始图 像完全一致。有损编码不能完全恢复原始 数据,而是利用人的视觉特性使解压缩后 的图像和原来一样。把上述方法结合起来 即为混合方法。
相关文档
最新文档