zoukankan      html  css  js  c++  java
  • 第二次作业

     参考书《数据压缩导论(第4版)》Page 66

    2.利用程序huff_enc和huff_dnc进行以下操作

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

    所给资料code截图:

    由code可得到如下表:

    文件名 源文件大小(KB) 压缩后大小(KB) 压缩比
    Sena 64KB 57KB 89.06%
    Sensin 64KB 61KB 95.31%
    Omaha 64KB 58KB 90.62%

    (b)编写一段程序,得到相邻像素之差,然后利用huffman对差值图像进行编码。

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

                  =0.411+0.186+0.505+0.216+0.50

                  =1.818 bit

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

                        a1:010

                        a2:0111

                        a3:00

                        a4:0110

                        a5:1

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

                         

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

                                   =1.83 bit

                       冗余度l-H

                                   =1.83-1.818

                                   =0.012 bit

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

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

                 (1)按照概率的大小顺序将信号源符号排列。

                  (2)将出现概率最小的进行相加,并对其中的一个赋“1”,另一个赋“0”(可自定义),相加得到的结果再次按照这种方式与其它的比较进行相加,最后得到概率相加为1结束。

                     

           (b)最小方差过程。

                P(a4)=0.35

                P(a2)=0.3

                P(a3)=0.25

                P(a1)=0.1

                A={a1, a2, a3, a4,}={001,001,00,1}

                H=-(0.1* log2*0.1+0.3* log2*0.3+0.25* log2*0.25+0.35* log2*0.35)

                  =0.568bits/symbol

                平均码长:

                 L=0.1*3+0.3*3+0.25*2+0.35*1

                   =1.85bits/symbol

                  冗余:

                  L-H=1.282bits/symbol

                      最小方差:

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

                          =1.337

     参考书《数据压缩导论(第4版)》Page 30

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

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

         EARTH的一阶熵:

        OMAHA的一阶熵:

     

      BERK的一阶熵:

     

    SENA.IMG的一阶熵

    SENSIN.IMG的一阶熵

    GABE.RAW的一阶熵

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

      GABE.RAW的一阶熵的为

    GABE.RAW的二阶熵:

    对比GABE文件的一阶熵和二阶熵得出,二阶熵比一阶熵要小。

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

       GABE.RAW差熵

    对比(b)中文件 GABE.RAW的一阶熵和二阶熵,可以发现差熵比一阶熵与二阶熵都要大。

  • 相关阅读:
    移动开发基础(二)touch事件
    js的性能优化
    理解Java的Class.forName()方法
    Linux 串口读写(一)
    PreparedStatement是如何大幅度提高性能的
    简单图像匹配(转)
    共享内存
    Oracle ORA12505, TNS:listener does not currently know of SID given in connect descriptor 解决
    Top Half & Bottom Half
    vue 插件 使用 Echarts 创建图表 (转)
  • 原文地址:https://www.cnblogs.com/luodandan/p/4784764.html
Copyright © 2011-2022 走看看