• 数据压缩第一次作业


    1、 教材习题1-1,1-2,1-6,

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

                答:数据压缩是以最小的数码表示信源所发的信号,减少容纳给定消息集合或数据采样集合的信号空间,所谓的信号空间就是被压缩对象,也就是“我们要压缩什么”。

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

                 答:因为多媒体所处理的对象包括图像、视频和声音等多媒体的数据量非常大,如果不进行数据压缩传输和存储都难以实用化,而经过数据压缩可以将一些占用内存大

            的多媒体数据压缩成晓得文件内存,方便传递。

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

                 答:数据压缩技术从数据压缩算法分为两大类:有损压缩和无损压缩。

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

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

                 答:不同的文件类型压缩出来的比例不一样,doc,tet,sql数据库等文件的压缩比例非常大,但是像jpg,mp3等本身就是压缩格式的数字音频或者图片文件,压缩出来的比例就不太大。

     2)从一本通俗杂志中摘录几段文字,并删除所有不会影响理解的文字,实现压缩。例如在“This is the dog that belongs to my friend”中,删除“is”“the”“that”和“to”之后,仍然能传递相同意思。用被删除的单词数与原本的总单词数之比来衡量文本中的冗余度。用一本技术期刊中的文字来重复这一次实验,对于摘自不同来源的文字,我们能否就其冗余度做出定量论述?
    答:冗余度表示征源信息率的多于程度,是描述信源客观统计特性的一个物理量,也可以说是从多余的一个量。它不影响数据的完整,因为这一个多余量的存在,才能对其信源进行压缩,压缩后不会影响传递信息。冗余度越大,压缩潜力也就越大。信源=信息+冗余度。

    3、 参考书《数据压缩导论(第4版)》Page 30   3, 5, 7(a)

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

                    a)    p(a1)=p(a2)=p(a3)=p(a4)=1/4;

                          解    一阶熵为:

                                                  H=-4*(1/4)log2(1/4)=2bit/symbol

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

                         解    一阶熵为:

                                                  H=-{1/2log2(1/2)+(1/4)log2(1/4)+(1/8)log2(1/8)+(1/8)log2(1/8)}=1.75bit/symbol

                    c)  p(a1)=0.505,p(a2)=1/4,p(a3)=1/8,p(a4)=0.12.

                        解    一阶熵为:  
    H=-{0.505log2 0.505+(1/4)log2(1/4)+(1/8)log2(1/8)+0.12log2 0.12}=1.74bit/symbol

    (5)
    考虑以下序列:
    
    

                               ATGCTTAACGTGCTTAACCTGAAGCTTCCGCTGAAGAACCTG

    
    

                               CTGAACCCGCTTAAGCTTAAGCTGAACCTTCTGAACCTGCTT

    
    

                        (a)  根据此序列估计各概率值,并计算这一序列的一阶熵.

                    根据题意可得:

                          P(A)==1/4 、P(G)=4/21 、P(C)==2/7、P(T)=23/84

     

                    则这一序列的一阶熵为:

     

                                         -1/4*log2(1/4)-23/84*log2(23/84)-4/21*log2(4/21)-2/7*log2(2/7)

     

                                         =0.5+0.512+0.457+0.514

     

                                         =1.983(bit)

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

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

     

    #include<stdio.h>
    #include<stdlib.h>
    #include<time.h>
    int main()
    {
        int s,i,j;
        char w[100][100];
        srand(time(NULL));
        for(i=0;i<100;i++)
        {
            for(j=0;j<4;j++)
            {
                
                s=rand()%26;
                w[i][j]=s+'a';
            }
            w[i][4]='';
            if((i)%5==0)
            {
                printf("
    ");
            }
            printf("[%d]:%s   ",i+1,w[i]);
        }
        printf("
    ");
        return 0;
    }

    这些单词中只有2个有意义



  • 相关阅读:
    P1017 进制转换
    P1100 高低位交换
    P1469 找筷子
    P1866 编号
    SQL常用语句(T-SQL、PL/SQL)
    Proxyer内网穿透配置教程
    使用JS检测自定义协议是否存在
    C# 代码启动ClickOnce应用
    SQL Server 异地备份到远程共享文件夹异常处理
    发布ClickOnce应用程序步骤与URL传参应用
  • 原文地址:https://www.cnblogs.com/zxb93/p/4766105.html
Copyright © 2020-2023  润新知