标签:
参考书《数据压缩导论(第四版)》Page 66
2、 利用程序huff_enc和huff_dec进行以下操作(在每种情况下,利用由被压缩图像生成的码本)。
(a) 对Sena、Sensin和Omaha图像进行编码。
(b) 编写一段程序,得到相邻之差,然后利用huffman对差值图像进行编码。
(c) 使用adap_huff重复(a)和(b)。
答:(a)我对其代码进行编译后得到的结果如下:
文件名 | 压缩前大小 | 压缩后大小 | 压缩率 |
OMAHA.IMG | 64KB | 57KB | 1.12 |
SENA.IMG | 64KB | 56.1KB | 1.14 |
SINAN.IMG | 64KB | 60.2KB | 1.06 |
4、 一个信源从符号集A={a1, a2, a3, a4, a5}中选择字母,概率为P(a1)=0.15,P(a2)=0.04,P(a3)=0.26,P(a4)=0.05,P(a5)=0.50。
(a)计算这个信源的熵。
(b)求这个信源的霍夫曼码。
(c)求(b)中代码的平均长度及其冗余度。
答:(a)由于P(a1)=0.15,P(a2)=0.04,P(a3)=0.26,P(a4)=0.05,P(a5)=0.50,
则这个信源的熵为:-0.15*log20.15-0.04*log20.04-0.26*log20.26-0.05*log20.05-0.50*log20.50
= -0.15*(-2.74) -0.04*(-4.64) -0.26*(-1.94) -0.05*(-4.32) -0.50*(-1)
=0.411+0.1856+0.5044+0.216+0.5
=1.817(bit)
(b)
(c)
5、 一个符号集A={a1, a2, a3, a4,},其概率为P(a1)=0.1,P(a2)=0.3,P(a3)=0.25,P(a4)=0.35,使用以下过程找出一种霍夫曼码:
(a)本章概述的第一种过程:
(b)最小方差过程。
解释这两种霍夫曼码的区别。
答:
标签:
原文地址:http://www.cnblogs.com/zlyyl/p/4784904.html