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

    作业一

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

    答:数据的压缩就是对数据冗余的压缩,我们要压缩占用比例过大,影响操作的事物。例如对时间的压缩,对空间的压缩,频域空间的压缩。

     

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

    答:数据压缩是因为数据存储空间有限,数据指数增长,进行压缩可以减少存储空间,提高传输、存储和处理效率。

     

    1.6 数据压缩技术是如何分类的?

    答:数据压缩技术分类:冗余度压缩(熵编码)和熵压缩,其中冗余度压缩(熵编码)又分为:统计编码   其他编码,熵压缩主要有两大类:特征抽取和量化

     

    2-1  用你的计算机上的压缩工具来压缩不同文件。研究原文件的大小和类型对于压缩文件与原文件大小之比的影响

    答:当文件类型不同时,如视频、文档、图片等不同类型的文件,压缩后的文件与源文件大小之比的影响是不同的,一般文本文档的压缩成都比图片的压缩要小,而影响对大的是视频。

     

    2-2  从一本通俗杂志中摘录几段文字,并删除所有不会影响理解的文字,实现压缩。例如,在“This is the dog that belongs to my friend”中,删除is、the、that和to之后,仍然能传递相同的意思。用被删除的单词数与原文本的总单词数之比来衡量文本中的冗余度。用一本技术期刊中的文字来重复这一试验。对于摘自不同来源的文字,我们能否就其冗余度做出定量论述?

    答:不能。冗余度是表征信源信息率的多余程度,是描述信源统计特性的一个物理量,我们不能对冗余度进行定量论述。在处理文本时,除了冗余外,还会有重复的情况,对于不同来源的文字信息,重复度是不一样的,情况不同处理方式也不同。

     

    作业二

    参考书《数据压缩导论(第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=(-log2(1/4))*(1/4)*4=2(bit).

          (b)H=-1/2log21/2-1/4*log21/4-2*1/8*log21/8 =1.75(bit).

      (c) H= -0.505*log20.505-1/4*log21/4-1/4*log21/4-0.12*log20.12=1.2967-0.12*log20.12(bit).

    5.考虑以下序列:

              ATGCTTACGTGCTTAACCTGAAGCTTCCGCTGAAGAACCTG

              CTGAACCCGCTTAAGCTGAACCTTCTGAAGCTTAACCTGCTT

    (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=-1/4*log2(1/4)-23/84*log2(23/84)-4/21*log2(4/21)-2/7*log2(2/7)=1.98.

     

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

     

     1 #include <stdio.h>
     2 #include<stdlib.h>
     3 #include <windows.h>
     4  
     5 int main() 
     6 {
     7  int m,n;
     8  for(m=0;m<100;m++)
     9  {
    10     for(n=0;n<4;n++) 
    11     { 
    12         putchar(rand()%2?65+rand()%26:97+rand()%26);
    13     }
    14     Sleep(1000);
    15     putchar(' ');
    16 }    
    17      return 0;
    18 }

     

     

     从运行的结果看出,这样得到的大多数单词都是无效的,没有意义。

     

  • 相关阅读:
    window.onresize绑定事件以及解绑事件
    jqGrid中select带可编辑的
    ROS(机器视觉)
    Python(time模块)
    Python(random模块)
    Python迭代器
    Python生成器
    Python装饰器(函数)
    ROS(URDF机器人建模)
    ROS基础
  • 原文地址:https://www.cnblogs.com/bojack/p/4766068.html
Copyright © 2011-2022 走看看