码迷,mamicode.com
首页 > 其他好文 > 详细

第三次作业

时间:2016-09-21 22:56:06      阅读:112      评论:0      收藏:0      [点我收藏+]

标签:

第一题:

2.利用程序huff_end和huff_dec进行以下操作

(a)对Sena,Sensin和Omaha图像进行编码

文件名 压缩前 压缩后 压缩比
Sena 64k 57k 89%
Sensin 64k 61k 95%
Omaha 64k 58k 90%

 

 

 

 

 

 

 

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(A) = -0.15*log20.15-0.04*log20.04-0.26*log20.26-0.05*log20.05-0.50*log20.50

               =0.15* 2.737+0.04*4.644+0.26*1.943+0.05*4.322+0.5*1

               =0.411+0.186+0.505+0.216+0.5

               =1.818(bits/symbol)   

(b)求这个信源的赫夫曼码

       a1:001

       a2:0000

       a3:01

       a4:0001

       a5:1

(c)求(b)中代码的平均长度及其冗余度

平均长度:L=0.15*3+0.04*4+0.26*2+0.05*4+0.5*1

                   =0.45+0.16+0.52+0.2+0.5

                   =1.83(bits/symbol)

       冗余度:L-H(A)=1.83-1.818=0.012(bits/symbol)

第二题:

思考:为什么压缩领域中编码方法总和二叉树联系在一起呢?

我们所了解的“前缀编码”中,为了使用不固定的码长表示单个字符,编码必须符合“前缀编码”的要求。

就是较短的编码绝对不能是较长编码的前缀。因此要构造符合要求的二进制编码体系,二叉树是最好的选择。 

第三题:

选作:试将“Shannon-Fano”编程实现。

 

第三次作业

标签:

原文地址:http://www.cnblogs.com/xiaxiaoxiao/p/5888210.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!