第三次作业

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第三次作业相关的知识,希望对你有一定的参考价值。

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

 

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

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

以上是关于第三次作业的主要内容,如果未能解决你的问题,请参考以下文章

第三次作业

第三次作业

第三次作业

第三次作业

第三次作业

第三次作业