赵月  

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

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

文件名 压缩前 压缩后 压缩比
SENA  64KB  57KB  89.0%
SINAN  64KB  61KB  95.3%
OMAHA  64KB  58KB  90.6%

 

 

 

  

 

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=-ЕP(ai)logP(Ai)

=-( P(a1)log2P(a1)+P(a2)log2P(a2)+P(a3)log2P(a3)+P(a4)log2P(a4)+P(a5)log2P(a5) )

= -0.15log2 (0.15)-0.04log2 (0.04)-0.26log2 (0.26)-0.05log2 (0.05)-0.50log2 (0.50)

=0.41+0.19+0.51+0.22++0.50

=1.817(bits)

(b)求这个信源的霍夫曼编码。

解:

         所以:

         a1的霍夫曼编码为001

         a2的霍夫曼编码为0000

          a3的霍夫曼编码为01

          a4的霍夫曼编码为0001

          a5的霍夫曼编码为1

 

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

            平均码长:L=1*0.5+2*0.26+3*0.15+4*0.05+4*0.04=1.83(bits/symbol)

            冗余度:L-H=0.013(bits/symbol)

 

5.一个符号集A={a1,a2,a3,a4},其概率为P(a1)=0.1,P(a2)=0.3,P(a3)=0.25,P(a4)=0.35,使用以下过程找出一种霍夫曼码:

(a)本章概述的第一种过程;

答:(a)

        1.将每个符号出现的概率大小按照从小到大的顺序从上到下排列。

        2.将最小的两个符号的概率相加,并继续这一步骤,始终将较高的概率分支放在下部,得到新的概率。

        3.再将得到的这个新的概率放到剩下的符号的概率中进行比较重复步骤1、2,直到最后相加的概率为1。

        5.画出每个信源符号概率到1处的路径,记下沿路径的1和0。

        5.则从右到左就得到霍夫曼编码。

符号 编码
a1 000
a2 01
a3 001
a4 1

           

           

 

 

 平均码长:L=1*0.35+2*0.3+3*0.25+3*0.1=2

S2=0.1(3-2)2+0.3(2-2)2+0.25(3-2)2+0.35(1-2)2

         =0.70

            

(b)最小方差过程

符号 编码
a1 11
a2 01
a3 10
a4 00

 

 

 

 

 

 

      平均码长l=0.1*2+0.3*2+0.25*2+0.35*2=2

S2=0.1(2-2)2+0.3(2-2)2+0.25(2-2)2+0.35(2-2)2

         =0

(a)(b)相比较,最小方差树是第二种!

6. 在本书配套的数据集中有几个图像和语音文件。

       (a)编写一段程序,计算其中一些图像和语音文件的一阶熵。

 

文件名 一阶熵
SENA.IMG 6.834299
SENSIN.IMG 7.317944
OMAHA.IMG 6.942426
EARTH.IMG 4.770801
GABE.RAW 7.116338
BERK.RAW 7.151537
 test.txt  4.315677

       

 

 

 

 

 

 

 

(b)选择一个图像文件,并计算其二阶熵。试解释一阶熵和二阶熵之间的差别。

文件名 二阶熵
SENA.IMG  3.625204 
SENSIN.IMG  4.301673 
OMAHA.IMG  4.488626
EARTH.IMG  2.568358 
GABE.RAW  6.654578
BERK.RAW  6.705169
 test.txt  3.122731

     

 

 

 

 

 

 

 

 

通过这些图像的一阶熵、二阶熵表的对比,可以看出,二阶熵都比一阶熵小。

 (c)对于(b)中所用的图像文件,计算其相邻像素之差的熵。试解释你的发现。

        答:

文件名 差分熵
SENA.IMG  3.856899 
SENSIN.IMG  4.541547
OMAHA.IMG  6.286834
EARTH.IMG  3.962697 
GABE.RAW  8.978236
BERK.RAW  8.976150 
 test.txt  6.099982

 

 

 

 

 

 

 

 

图片的差分熵位于一阶熵和二阶熵之间。而RAW格式的文件的差分熵似乎都比一阶熵,二阶熵要大。

posted on 2015-09-16 15:59  赵月  阅读(110)  评论(0编辑  收藏  举报