首页 > 其他 > 详细

第三次作业

时间:2016-09-25 00:52:50      阅读:189      评论:0      收藏:0      [点我收藏+]

2、利用程序huff_enc和huff_dec进行一下操作(在每种情况下,利用由被压缩图像生成的码本。)

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

    解:表格如下:

图像文件名 压缩前 压缩后 压缩比
   Sena 64.0kb 56.1kb 87.6%
   Sensin 64.0kb 60.2kb 94.1%
   Omaha 64.0kb 57.0kb 89.1%

 

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)  由题意可知:

                  H(A)=-0.15log20.15 -0.04log20.04 -0.26log20.26 -0.05log20.05 -0.50log20.50

                        =0.411+0.186+0.505+0.216+0.50

                        =1.818 (bit/字符)

         (b)  这个信源的霍夫曼码为:

                      技术分享       

             字母    a1        a2        a3       a4       a5

             概率  0.15      0.04     0.26    0.05     0.50

             码长   001      0000     01     0001      1

         (c)   平均长度:  l=0.15*3+0.04*4+0.26*2+0.05*4+0.50*1=1.83  (bits)

                冗余度=l-H(A)=1.83-1.818=0.012

 

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

       答:这里将结合前缀编码来说明。前缀编码,即在一个字符集中,任何一个字符的编码都不是另一个字符编码的前缀。所以,为了使用不固定的码长表示单个字符,编码必须符合“前缀编码”的要求,即较短的编码决不能是较长编码的前缀。而要构造符合这一要求的二进制编码体系,二叉树是最理想的选择。

第三次作业

原文:http://www.cnblogs.com/lyy909-/p/5888295.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!