• 第一次作业


    1-1   数据压缩的一个基本问题是“我们要压缩什么”,对此你是怎么理解的?

           我们要压缩的就是某信号集合所占的空域,时域和频域空间。

    1-2   数据压缩的另一个基本问题是“为什么进行压缩”,对此你又是怎么理解的?

           信息时代带来了“信息爆炸”。数据压缩的作用及其社会效益、经济效益将越来越明显,如果不进行数据压缩,无论传输或存储都很难实用化。而数据压缩就能较快的传输各种信源、在现有通信干线上开通更多的并行业务、降低发射功率和紧缩数据存储容量。

    1-6   数据压缩技术是如何分类的?

           根据有无失真编码分为可逆压缩和不可逆压缩。无失真、无差错编码的叫可逆压缩,有失真编码的就是不可逆压缩。

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

    1、     图片 压缩前是169kb  压缩后是165kb  压缩比是0.97          

             MP3音频   压缩前是 3.29MB   压缩后是3.26MB   压缩比是 0.99

    比较压缩比发现:压缩之前的文件比较大的话,压缩比就会比较大。

    2、  对于来自不同来源的文字,我们不能就其冗余度做出定量论述,因为有的文字重复出现的次数多,一些次数少。冗余度,通俗的讲就是数据的重复度。在一个数据集合中重复的数据称为数据冗余

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

    3、给定符号集A={a1,a2,a3,a4},求一下条件下的一阶熵:

    (a)P(a1)=P(a2)=P(a3)=P(a4)=1/4

    (b)P(a1)=1/2 , P(a2)=1/4 , P(a3)=P(a4)=1/8 

    (c)P(a1)=0.505 ,  P(a2)=1/4 , P(a3)=1/4 , P(a4)=0.12 

    答:(a)一阶熵为:

                H(X)=4*(1/4)*log24=2(bit)

        (b)一阶熵为:

                H(X)=1/2*log22+1/4*log24+2*(1/8)*log28=1.75(bit)

         (c)一阶熵为:

                H(X)=0.505*log2101/200+2*(1/4)*log24+0.12*log23/25=1.745(bit)

     5、考虑以下序列:

                    ATGCTTAACGTGCTTAACCTGAAGCTTCCGCTGAAGAACCTG

                    CTGAACCCGCTTAAGCTTAAGCTGAACCTTCTGAACCTGCTT

    (a)根据此序列估计各概率值,并计算这一序列的一阶、二阶、三阶和四阶熵。

    (b)根据这些熵,能否推断此序列具有什么样的结构?

    答:(a)共有84个字母,A出现21次,T出现23次,G出现16次,C出现24次,则

          p(A)=21/84=1/4

          P(T)=23/84

          P(G)=16/84=4/21

          p(C)=24/84=2/7

         一阶熵: H(X)=1/4*log24+23/84*log284/23+4/21*log221/4+2/7*log27/2=1.98(bit)

      (b)

    7、做一个实验,看看一个模型能够多么准确地描述一个信源。

     (a)编写一段程序,从包括26个字母的符号集{a,b,...,z}中随机选择字母,组成100个四字母单词,这些单词中有多少是有意义的?

     

    #include<stdio.h>
    #include<stdlib.h>
    #include<time.h>
    int main()
    {
    int i;
    char words;
    int m=0,n=0;
    for(m;m<=99;m++)
    {
    for(n;n<=3;n++)
    {
    i=rand()%25;
    words='a'+i;
    printf("%c",words);
    }
    printf(" ");
    n=0;
    }
    return 0;
    }

     

    其中有意义的单词有:

    roam   n.漫步,漫游;流浪

  • 相关阅读:
    You need to use a Theme.AppCompat theme
    Objective-C中nil与release的区别与用法
    objective-c中自己创建的对象为什么不能调用release
    NSString类的相关用法
    [Bug-IOS]
    中国有什么旅游社交网站吗?
    om.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException
    【剑指Offer学习】【面试题22:栈的压入、弹出序列】
    2-08. 用扑克牌计算24点(25) (ZJU_PAT 数学 枚举)
    在北京工作了两年,如今跳槽到了广州,社保公积金该怎样办理?
  • 原文地址:https://www.cnblogs.com/oujintao/p/4759885.html
Copyright © 2020-2023  润新知