第三次作业
2.利用程序huff_enc和huff_dec进行以下操作(在每种情况下,利用由被压缩图像生成的码本)。
(a)对Sena、Sensin和Omaha图像进行编码。
|
文件名 |
源文件大小 |
压缩后文件 |
压缩比 |
|
SENA |
64.0KB |
56.1KB |
87.66% |
|
SINAN |
64.0KB |
60.2KB |
94.06% |
|
OMAHA |
64.0KB |
57.0KB |
89.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)计算这个信源的熵。
H(x)=-0.15log0.15-0.04log0.04-0.26log0.26-0.05log0.05-0.50log0.50=2.368bit
(b)求这个信源的霍夫曼码。
霍夫曼编码:

a1=110 a2=1111 a3=10 a4=1110 a5=0
(c)求(b)中代码的平均长度及其冗余度。
代码平均长度:L=3*0.15+4*0.04+2*0.26+4*0.05+1*0.5
=1.83bit
冗余:V=1-N
=1-(H/L*100%)
=1-(1.818/1.83*100%)
=0.0066
3.为什么压缩领域中的编码方法总和二叉树联系在一起呢?
答:为了使用不固定的码长表示单个字符,编码必须符合“前缀编码”的要求,即较短的编码决不能是较长编码的前缀。要构造符合这一要求的二进制编码体系,二叉树是最理想的选择。
浙公网安备 33010602011771号