资源描述:
《c语言算术编码报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划c语言算术编码报告 实验报告书 信息论与编码实验算术编解码1 课程名称:实验名称: 2 3 4 5 基于Matlab的算术编码的研究 摘要 算术编码属信源编码信源编码又分为离散编码和连续编码,算术编码也属于离散编码。本文对算术编码的编码理论和译码理论做了详细的分析,并根据理论知识在Matlab中搭建算术编码的系统,实现了对算术编码的整个过程的重现。算术编码所需参数很少,不像哈弗
2、曼编码那样需要一个很大的码表以及大的存储来存储计算过程的计算值。但是算术编码的计算复杂性相对较大。关键词:算术编码、Matlab 1、课题研究背景及意义目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 在一个压缩系统中,无论是有损压缩还是无损压缩,编码往往是必须的环节。算术编码在数据压缩中,提供了一种有效去除冗余度的
3、机制,是一种到目前为止编码效率最高的统计熵编码方法,它比著名的Huffman编码效率提高10%左右,但是由于其编码复杂性和实现技术的限制以及一些专利权的限制,所以并不像Huffman编码那样应用广泛。国外对算术编码的研究较多,取得了许多重要的应用,但大多都有专利保护,如JPEG,JPEGXX,JBIG中均采用了算术编码;国内的研究相对较少,应用不是很广泛,至今了解的人还不是很多。 其实在Shannon最早提出信息论后不久,Elias就提出了基本的算术编码的想法,1987年Witten等人在文献中提出了算术
4、编码在数据压缩方面的应用,指出其比Huffman编码具有更好的压缩效率,它能够在不要求概率分布形式的情况下表现出良好的性质,这使得算术编码在数据压缩方面得到广泛应用及研究。但是另一方面,包括Huffman编码在内的早期编码模式都是采用固定的码字来表示每一个需要编码的符号,而从加密的角度来看这些算法都是使用简单的字母替换,即用一个符号或字符串替换另一个符号或字符串,所以都很容易被破解,不能提供真正意义上的数据安全。相反,算术编码并不是采用固定码字来表示每个符号,它的压缩模式是将一段消息用一个[0,1)的真子集
5、来表示,而这个区间被初始化为[0,1),并且每编码一个符号区间就缩小一次。使每一个新区间都能唯一地表示一段消息。它可以根据所使用的模型,保证用一段无限逼近信息熵的比特数来传输消息。目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 2、算术编码基本思想 2.1算术编码基本思想 算术编码是60年代提出提出一种编码概念,
6、一直到1976年才有其实用技术的相关介绍,它的基本原理是:将待编码的信息数据看作是多个符号组成的符号 序列,将被编码信息数据的符号序列表示成实数0和1之间的一个间隔。无论信息有多长,其输出仅仅是一个数,而且是一个介于0和1之间的二进制小数。信息越长,编码表示它的间隔越小,表示这一间隔所需的二进制位越多。例如算术编码对某条信息的符号序列输出为,那么它表示小数,也即十进制数。 算术编码用到的两个基本参数:符号的概率和它的编码间隔。 信源符号的概率决定压缩编码的效率,也决定编码过程中信源符号的间隔,而这些间
7、隔包含在0到1之间,编码过程中的间隔决定符号压缩后的输出。 给定事件序列的算术编码步骤如下: 编码器在开始时将“当前间隔”[L,H]设置为[0,1]; 对每一个事件编码器按步骤和进行处理: 编码键当前间隔分为子间隔每一个事件一个;目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 一个子间隔的大小与下一个将出现的
8、事件的概率成比例,编码器选择的子间隔对应于下一个确切发生的事件,并使它成为新的当前间隔。 最后输出的“当前间隔”的下边界就是给定事件序列的算术编码。在传输任何信息之前的信息完整范围是[0,1],当一个符号被处理时,这一范围就依据分配给这一符号的那部分变窄。初始的区间是[0,1],区间长度为1,区间上限为1,下限为0。依据下列公式得到新的区间: Lnew?L?R?Li0公式2-1 Hnew?L?R?Hi0公式