信息论基础--数据压缩.ppt

上传人:za****8 文档编号:12858177 上传时间:2020-05-31 格式:PPT 页数:99 大小:1.47MB
返回 下载 相关 举报
信息论基础--数据压缩.ppt_第1页
第1页 / 共99页
信息论基础--数据压缩.ppt_第2页
第2页 / 共99页
信息论基础--数据压缩.ppt_第3页
第3页 / 共99页
点击查看更多>>
资源描述
1,第3章数据压缩和信源编码,最优码的实际构造!,2,数据压缩,“数据压缩”在汉英词典中的解释:datacompression(Amethodofreducingtheamountofmemoryrequiredtostoredatabyencodingitandminimizingredundancy.Compresseddatatakeslesstimetotransmit,butmorecomputationtimetorestoreittoitsoriginalformwhenneededforprocessing.),3,数据压缩-作用,通俗地说,就是用最少的数码来表示信号。其作用是:能较快地传输各种信号,如传真、Modem通信等;在现有的通信干线并行开通更多的多媒体业务,如各种增值业务;紧缩数据存储容量,如CDROM、VCD和DVD等;降低发信机功率,这对于多媒体移动通信系统尤为重要。由此看来,通信时间、传输带宽、存储空间甚至发射能量,都可能成为数据压缩的对象。,4,数据压缩-目的,一、可以节省空间。二、可以减少对带宽的占用。JPEG压缩编码技术的基本原理:JPEG专家组开发了两种基本的压缩算法,一种是采用以离散余弦变换(DCT-DiscreteCosineTransform)为基础的有损压缩算法,另一种是以空间线性预测技术(DPCM)为基础的无损压缩算法。现在应用得较多的是有损压缩算法。JPEG标准只处理单帧图像,而不必顾及到前后左右帧,将每帧图像作为基础进行处理,利用了空间压缩编码原理。,5,数据压缩-目的,一、可以节省空间。二、可以减少对带宽的占用。MPEG编码技术的基本原理:MPEG数字视频编码技术实质上是一种统计方法。在时间和空间方向上,视频列通常包含统计冗余度。MPEG压缩技术所依赖的基本统计特性为像素之间(interpel)的相关性,这里包含这样一个设想:即在各连续帧之间存在简单的相关性平移运动。,6,数据压缩-类型,有损压缩和无损压缩(图片格式)有损压缩有损压缩可以减少图像在内存和磁盘中占用的空间,在屏幕上观看图像时,不会发现它对图像的外观产生太大的不利影响。因为人的眼睛对光线比较敏感,光线对景物的作用比颜色的作用更为重要,这就是有损压缩技术的基本依据。有损压缩的特点是保持颜色的逐渐变化,删除图像中颜色的突然变化。生物学中的大量实验证明,人类大脑会利用与附近最接近的颜色来填补所丢失的颜色。,7,数据压缩-类型,有损压缩和无损压缩(图片格式)有损压缩例如,对于蓝色天空背景上的一朵白云,有损压缩的方法就是删除图像中景物边缘的某些颜色部分。当在屏幕上看这幅图时,大脑会利用在景物上看到的颜色填补所丢失的颜色部分。利用有损压缩技术,某些数据被有意地删除了,而被取消的数据也不再恢复。无可否认,利用有损压缩技术可以大大地压缩文件的数据,但是会影响图像质量。如果使用了有损压缩的图像仅在屏幕上显示,可能对图像质量影响不太大,至少对于人类眼睛的识别程度来说区别不大。可是,如果要把一幅经过有损压缩技术处理的图像用高分辨率打印机打印出来,那么图像质量就会有明显的受损痕迹。,8,数据压缩-类型,有损压缩和无损压缩(图片格式)无损压缩无损压缩的基本原理是相同的颜色信息只需保存一次。压缩图像的软件首先会确定图像中哪些区域是相同的,哪些是不同的。包括了重复数据的图像(如蓝天)就可以被压缩,只有蓝天的起始点和终结点需要被记录下来。但是蓝色可能还会有不同的深浅,天空有时也可能被树木、山峰或其他的对象掩盖,这些就需要另外记录。从本质上看,无损压缩的方法可以删除一些重复数据,大大减少要在磁盘上保存的图像尺寸。,9,数据压缩-类型,有损压缩和无损压缩(图片格式)无损压缩但是,无损压缩的方法并不能减少图像的内存占用量,这是因为,当从磁盘上读取图像时,软件又会把丢失的像素用适当的颜色信息填充进来。如果要减少图像占用内存的容量,就必须使用有损压缩方法。无损压缩方法的优点是能够比较好地保存图像的质量,但是相对来说这种方法的压缩率比较低。但是,如果需要把图像用高分辨率的打印机打印出来,最好还是使用无损压缩几乎所有的图像文件都采用各自简化的格式名作为文件扩展名。从扩展名就可知道这幅图像是按什么格式存储的,应该用什么样的软件去读写等等。,10,数据压缩-概要,在计算机科学和信息论中,数据压缩或者信源编码是按照特定的编码机制用比未经编码少的数据位元(或者其它信息相关的单位)表示信息的过程。例如,如果我们将“compression”编码为“comp”那么这篇文章可以用较少的数据位表示。一种流行的压缩实例是许多计算机都在使用的ZIP文件格式,它不仅仅提供了压缩的功能,而且还作为归档工具Archiver)使用,能够将许多文件存储到同一个文件中。,11,数据压缩-概要,对于任何形式的通信来说,只有当信息的发送方和接受方都能够理解编码机制的时候压缩数据通信才能够工作。例如,只有当接受方知道这篇文章需要用英语字符解释的时候这篇文章才有意义。同样,只有当接受方知道编码方法的时候他才能够理解压缩数据。一些压缩算法利用了这个特性,在压缩过程中对数据进行加密,例如利用密码加密,以保证只有得到授权的一方才能正确地得到数据。,12,数据压缩-概要,数据压缩能够实现是因为多数现实世界的数据都有统计冗余。例如,字母“e”在英语中比字母“z”更加常用,字母“q”后面是“z”的可能性非常小。无损压缩算法通常利用利用了统计冗余,这样就能更加简练地、但仍然是完整地表示发送方的数据。如果允许一定程度的保真度损失,那么还可以实现进一步的压缩。例如,人们看图画或者电视画面的时候可能并不会注意到一些细节并不完善。同样,两个音频录音采样序列可能听起来一样,但实际上并不完全一样。有损压缩算法在带来微小差别的情况下使用较少的位数表示图像、视频或者音频。,13,数据压缩-概要,由于可以帮助减少如硬盘空间与连接带宽这样的昂贵资源的消耗,所以压缩非常重要,然而压缩需要消耗信息处理资源,这也可能是费用昂贵的。所以数据压缩机制的设计需要在压缩能力、失真度、所需计算资源以及其它需要考虑的不同因素之间进行折衷。一些机制是可逆的,这样就可以恢复原始的数据,这种机制称为无损数据压缩;另外一些机制为了实现更高的压缩率允许一定程度的数据损失,这种机制称为有损数据压缩。,14,数据压缩-概要,然而,经常有一些文件不能被无损数据压缩算法压缩,实际上对于不含可以辨别样式的数据任何压缩算法都不能压缩。试图压缩已经经过压缩的数据通常得到的结果实际上是扩展数据,试图压缩经过加密的数据通常也会得到这种结果。实际上,有损数据压缩也会最终达到不能工作的地步。我们来举一个极端的例子,压缩算法每次去掉文件最后一个字节,那么经过这个算法不断的压缩直至文件变空,压缩算法将不能继续工作。,15,数据压缩-应用,一种非常简单的压缩方法是行程长度编码,这种方法使用数据及数据长度这样简单的编码代替同样的连续数据,这是无损数据压缩的一个实例。这种方法经常用于办公计算机以更好地利用磁盘空间、或者更好地利用计算机网络中的带宽。对于电子表格、文本、可执行文件等这样的符号数据来说,无损是一个非常关键的要求,因为除了一些有限的情况,大多数情况下即使是一个数据位的变化都是无法接受的。,16,数据压缩-应用,对于视频和音频数据,只要不损失数据的重要部分一定程度的质量下降是可以接受的。通过利用人类感知系统的局限,能够大幅度得节约存储空间并且得到的结果质量与原始数据质量相比并没有明显的差别。这些有损数据压缩方法通常需要在压缩速度、压缩数据大小以及质量损失这三者之间进行折衷。有损图像压缩用于数码相机中,大幅度地提高了存储能力,同时图像质量几乎没有降低。用于DVD的有损MPEG-2编解码视频压缩也实现了类似的功能。,17,数据压缩-应用,在有损音频压缩中,心理声学的方法用来去除信号中听不见或者很难听见的成分。人类语音的压缩经常使用更加专业的技术,因此人们有时也将“语音压缩”或者“语音编码”作为一个独立的研究领域与“音频压缩”区分开来。不同的音频和语音压缩标准都属于音频编解码范畴。例如语音压缩用于因特网电话,而音频压缩被用于CD翻录并且使用MP3播放器解码。,18,数据压缩-理论,压缩的理论基础是信息论(它与算法信息论密切相关)以及率失真理论,这个领域的研究工作主要是由ClaudeShannon奠定的,他在二十世纪四十年代末期及五十年代早期发表了这方面的基础性的论文。Doyle和Carlson在2000年写道数据压缩“是所有的工程领域最简单、最优美的设计理论之一”。密码学与编码理论也是密切相关的学科,数据压缩的思想与统计推断也有很深的渊源。,19,数据压缩-理论,许多无损数据压缩系统都可以看作是四步模型,有损数据压缩系统通常包含更多的步骤,例如它包括预测、频率变换以及量化。Lempel-Ziv(LZ)压缩方法是最流行的无损存储算法之一。DEFLATE是LZ的一个变体,它针对解压速度与压缩率进行了优化,虽然它的压缩速度可能非常缓慢,PKZIP、gzip以及PNG都在使用EFLATE。LZW(Lempel-Ziv-Welch)是Unisys的专利,直到2003年6月专利到期限,这种方法用于GIF图像。,20,数据压缩-理论,另外值得一提的是LZR(LZ-Renau)方法,它是Zip方法的基础。LZR方法使用基于表格的压缩模型,其中表格中的条目用重复的数据串替换。对于大多数的LZ方法来说,这个表格是从最初的输入数据动态生成的。这个表格经常采用霍夫曼编码维护(例如,SHRI、LZX)。目前一个性能良好基于LZ的编码机制是LZX,它用于微软公司的CAB格式。,21,数据压缩-理论,最好的压缩工具将概率模型预测结果用于算术编码。算术编码由JormaRissanen发明,并且由Witten、Neal以及Cleary将它转变成一个实用的方法。这种方法能够实现比众人皆知的哈夫曼算法更好的压缩,并且它本身非常适合于自适应数据压缩,自适应数据压缩的预测与上下文密切相关。算术编码已经用于二值图像压缩标准JBIG、文档压缩标准DejaVu。文本输入系统Dasher是一个逆算术编码器。,有效输入信息文本的界面,22,数据压缩和信源编码,3.1等长码3.2变长编码3.3哈夫曼码3.4算术码香农-费诺码3.5通用信源编码LZW算法习题三,23,数据压缩和信源编码,信源编码定理(定理2.4.1)设X1,X2为无记忆信源,服从共同分布p(x),则当码率时,存在码率为R的编码,使得当n时,误差码率Pe0.,最优码的存在性,24,数据压缩和信源编码,将信道编码和译码看成是信道的一部分,而突出信源编码;,25,数据压缩和信源编码,通过信源编码,用尽可能少的信道符号来表达信源,即对信源数据用最有效的表达方式表达,尽可能减少编码后的数据的剩余度;,26,数据压缩和信源编码,3.1等长码3.2变长编码3.3哈夫曼码3.4算术码香农-费诺码3.5通用信源编码LZW算法习题三,27,等长码,定义:设为信源字母表,=0,1,D-1为D进码元(码符号)集.映射f:nk(x1,xn)(u1,uk)等长编码;若k不唯一,则为变长编码.映射:kn称为相应的译码;称上述编码为D元码.,分组码,28,等长码,定义(续):f(xn)=uk称为码字,k为码长;R=k/nlogD称为f的编码速率,即码率;由f编出的所有码字的集合称为码字集:C=f(xn),xnn若任一码字只能被唯一译成所对应的信源符号序列,称这类编码为唯一可译码.,又称信源的信息率-信源编码后平均每个码元载荷的最大信息量,29,等长码,1.若进行二元等长编码,则码字长至少为2;从而:熵H(X)=1.75;码率R=k/nlogD=2H(X).,30,等长码,2.若进行二元不等长编码.变长编码的平均码长:L=p(i)l(i)=1.75;熵H(X)=1.75;码率R=L/nlogD=H(X).,31,数据压缩和信源编码,3.1等长码3.2变长编码3.3哈夫曼码3.4算术码香农-费诺码3.5通用信源编码LZW算法习题三,32,变长编码,该编码的平均码长L=1.5=R1010100每两个连续数字可以对应一个定长码。比如12-1001100,23-1101100注意,给定的编码方案里,上面两种情况下定长码均等长(例子中为长度为7)。这里,我们看到,如果要编码结果序列最短。就需要尽量多的使用第二个方案。,变长编码,50,这里有两种极限情况:比如ABECDDDEFG.FHE这样的字串只能按第一种方案进行,因为它没有连续数字出现.比如1234235345.32这样的字串,如果有偶数个数字的话,我们完全可以按第二种方案进行.那么既有字符,又有数字的情况,就有一个选择的问题,所以这里的问题就是我们如何识别可以使用第二个方案的字串。,变长编码,51,变长编码,52,变长信源编码问题就是求使得给定信源平均码长最小的唯一可译的变长码.但是满足Kraft不等式的码长集未必是最优的,即其平均码长未必是最小的!,变长编码,53,定理3.2.2(最优码码长的下界估计):随机变量X的任何D进即时码的平均码长L应满足,,变长编码,等号成立的充要条件,54,证明:记如果C是即时码,则根据Kraft不等式,有,变长编码,55,定义3.2.3相对冗余度作业:P751),变长编码,56,定理3.2.2(最优码码长的下界估计):随机变量X的任何D进即时码的平均码长L应满足,,变长编码,等号成立的充要条件,对于出现概率大的信息符号,编以短字长的码,对于出现概率小的信息符号编以长字长的码,如果码字长度严格按照符号概率的大小的相反顺序排列,则平均码字长一定小于按任何其他符号顺序排列方式得到的码字长度。,57,某地的A同学要给另外一方B同学传递信息,信息必须以二进制编码(即01编码)的方式传递.假设A传递给B的所有字符只有a,b,c,d四个,且不包含空格.一种显而易见的编码方法是:a-00;b-01;c-10;d-11;这样保证不会产生翻译错误的情况发生,而平均每个字符需要2个Bit的带宽.然而这种方法不是最优的;借助统计规律,就可以构造出保证不会产生错误,然而却能更省带宽的编码方式:,变长编码,58,给出一个例子:假设P(x=a)=1/2;P(x=b)=1/4;P(x=c)=1/8;P(x=d)=1/8;即对大量的信息作出统计后,发现a出现的频率最高,平均每两个字符中就出现一个a;b其次;c,d再次之.如此对a的编码进行缩水处理:a-1;b-01;c-001;d-000;这样仍然能保证不会译错,而且,平均每个字符需要1*1/2+2*1/4+3*1/8+3*1/8=7/4=1.75Bit这样就节省了宝贵的0.25Bit上述的编码方式称为Huffman编码,变长编码,59,数据压缩和信源编码,3.1等长码3.2变长编码3.3哈夫曼码3.4算术码香农-费诺码3.5通用信源编码LZW算法习题三,60,数据压缩和信源编码,哈夫曼编码/译码器。设计一个哈夫曼编码/译码器程序,对一个文本文件中的字符进行哈夫曼编码,生成编码文件(压缩文件,后缀.cod);反过来,可将一个压缩文件译码还原为一个文本文件(.txt)。,61,数据压缩和信源编码,步骤:(1)输入一个待压缩的文本文件名,统计文本文件中各字符的个数作为权值,生成哈夫曼树;(2)将文本文件利用哈夫曼树进行编码,生成压缩文件(后缀名cod)(3)输入一个待解压的压缩文件名称,并利用相应的哈夫曼树将编码序列译码;(4)显示指定的压缩文件和文本文件的内容。,62,数据压缩和信源编码,哈夫曼编码(HuffmanCoding)是可变长编码(VLC)的一种。Huffman于1952年提出一种编码方法,该方法完全依据字符出现概率来构造异字头的平均长度最短的码字,有时称之为最佳编码在计算机信息处理中,“哈夫曼编码”是一种一致性编码法(又称熵编码法),用于数据的无损耗压缩。这一术语是指使用一张特殊的编码表将源字符(例如某文件中的一个符号)进行编码。这张编码表的特殊之处在于,它是根据每一个源字符出现的估算概率而建立起来的(出现概率高的字符使用较短的编码,反之出现概率低的则使用较长的编码,这便使编码之后的字符串的平均期望长度降低,从而达到无损压缩数据的目的)。,63,数据压缩和信源编码,例如,在英文中,e的出现概率很高,而z的出现概率则最低。当利用哈夫曼编码对一篇英文进行压缩时,e极有可能用一个位(bit)来表示,而z则可能花去25个位(不是26)。用普通的表示方法时,每个英文字母均占用一个字节(byte),即8个位。二者相比,e使用了一般编码的1/8的长度,z则使用了3倍多。倘若我们能实现对于英文中各个字母出现概率的较准确的估算,就可以大幅度提高无损压缩的比例。,64,数据压缩和信源编码,哈夫曼压缩是个无损的压缩算法,一般用来压缩文本和程序文件。哈夫曼压缩属于可变代码长度算法一族。意思是个体符号(例如,文本文件中的字符)用一个特定长度的位序列替代。因此,在文件中出现频率高的符号,使用短的位序列,而那些很少出现的符号,则用较长的位序列。,65,一、二进制哈夫曼编码1.步骤(1)信源符号按概率分布大小,以递减次序排列;(2)取两个最小的概率,分别赋以“0”,“1”;然后把这两个概率值相加,作为新概率值与其他概率重新排序(3)按重排概率值,重复(2),直到概率和达到1为止(4)由后向前排列码序,即得哈夫曼编码,哈夫曼(Huffman)码,66,2.例题x10.4x20.2x30.2x40.1x50.1平均码长码方差12=E(li-L)2=p(xi)(li-L)2=1.36,X:p(x)(0.4,0.2,0.2,0.1,0.1),(合并后概率下放),哈夫曼(Huffman)码,01,1,000,0010,0011,67,方法一:合并后的新符号排在其它相同概率符号的后面;,哈夫曼(Huffman)码,68,3.上例00 x10.410 x20.211x30.2010 x40.1011x50.1,(合并后概率上放),哈夫曼(Huffman)码,69,3.上例00 x10.410 x20.211x30.2010 x40.1011x50.1平均码长结论码方差22=0.16两法平均码长相同,故信息率R、冗余度相同;但码方差不同,码方差小要好.,(合并后概率上放),哈夫曼(Huffman)码,70,方法二:合并后的新符号排在其它相同概率符号的前面.,哈夫曼(Huffman)码,71,两种编码的平均码长是一样的,都是2.2,那一种更好呢,我们可以计算一下平均码长的方差。,定义码字长度的方差2:,哈夫曼(Huffman)码,72,可见:第二种编码方法的码长方差要小许多。意味着第二种编码方法的码长变化较小,比较接近于平均码长。第一种方法编出的5个码字有4种不同的码长;第二种方法编出的码长只有两种不同的码长;显然,第二种编码方法更简单、更容易实现,所以更好。结论:在哈夫曼编码过程中,对缩减信源符号按概率由大到小的顺序重新排列时,应使合并后的新符号尽可能排在靠前的位置,这样可使合并后的新符号重复编码次数减少,使短码得到充分利用。,哈夫曼(Huffman)码,73,3.上例00 x10.410 x20.211x30.2010 x40.1011x50.1平均码长结论码方差22=0.16两法平均码长相同,故信息率R、冗余度相同;但码方差不同,码方差小要好.,(合并后概率上放),哈夫曼(Huffman)码,74,定理:在变长编码中,若各码字长度严格按照所对应符号出现概率的大小逆序排列,则其平均长度为最小。结论:霍夫曼编码方法,它完全依据字符出现概率来构造平均长度最短的异字头码字,有时称之为最佳编码。,哈夫曼(Huffman)码,75,应该指出的是,由霍夫曼编码过程编出的最佳码不是唯一的,但其平均码长是一样的,故不影响编码效率与数据压缩性能。此外,由于码长不等,还存在一个输入与输出的速率匹配问题。解决的办法是设置一定容量的缓冲寄存器。而随着微电子与计算技术的发展,霍夫曼编码已可做成单片IC,并成为许多国际标准中的主要技术内核之一。能够用较低的处理代价,来换取昂贵的通信开销,是完全值得的。,哈夫曼(Huffman)码,方差最小者最佳,76,应该指出的是,由霍夫曼编码过程编出的最佳码不是唯一的,但其平均码长是一样的,故不影响编码效率与数据压缩性能。此外,由于码长不等,还存在一个输入与输出的速率匹配问题。解决的办法是设置一定容量的缓冲寄存器。而随着微电子与计算技术的发展,霍夫曼编码已可做成单片IC,并成为许多国际标准中的主要技术内核之一。能够用较低的处理代价,来换取昂贵的通信开销,是完全值得的。,哈夫曼(Huffman)码,方差最小者最佳,77,哈夫曼(Huffman)码,4.例题X:p(x)(0.4,0.18,0.1,0.1,0.07,0.06,0.05,0.04),78,二、D进制哈夫曼编码1.编码步骤同二进制,但需注意两点:每次取最小的D个概率,分别赋以0,1,D-1;信源符号个数r必须满足:r=(D-1)+D.当r不满足时,在信源符号集中补充一些对应概率为0的符号.,哈夫曼(Huffman)码,79,2.例题,某离散无记忆信源符号集a1,a2,a3,a4,a5,a6,a7,a8,已知所对应的概率,试对其进行四元编码!,哈夫曼(Huffman)码,有误!,80,解:其中D=4.若取=2可得大于9但与9最接近的正整数10,因此在编码是加入一个零概率符号.对其进行四元编码:,哈夫曼(Huffman)码,81,哈夫曼(Huffman)码,82,哈夫曼码考虑了信源的统计特性,使经常出现的信源符号对应较短的码字,使信源的平均码长缩短,从而实现了对信源的压缩;哈夫曼码的编码方法都不惟一;哈夫曼码对信源的统计特性没有特殊要求,编码效率比较高,因此综合性较优.,哈夫曼(Huffman)码,83,Huffman码在具体实用时,设备较复杂.在编码器中需要增加缓冲寄存器,因为每个信源符号所对应的码符号长度不一,负责会造成输入和输出不能保持平衡.优点:提高编码效率;缺点:需要大量缓冲设备来存储这些变长码,然后再以恒定的码率进行传送;在传输的过程中如果出现了误码,容易引起错误扩散,所以要求有优质的信道。,哈夫曼(Huffman)码,84,作业:P768),哈夫曼(Huffman)码,85,哈夫曼码为设计最优的唯一可译变长码提供了一种有效的方法!对单义代码有:定理不是说单义代码的平均码长L不能大于上限,只是说小于上限的单义代码总是存在的。现在考虑信息论中的一个更好的上限:,哈夫曼(Huffman)码,86,定理(信源编码的基本定理).设:A一a1,a1,.,am;XKX=x1,x2,.,xn的延长;WKW=W1,W2,.,Wn的延长,其平均长度为l;P(wi)一P(xi),P(W)一IIP(Wi),i=1,,n;如果要求WK为单义代码,则,也叫做无失真编码的基本定理。它说明:如果我们把X延长后再对K元组(K为延长长度)进行编码,那么不必利用数据前后的关联,只要K足够大,则代表每消息单元X的平均符号个数l/K可以任意趋于下限。,哈夫曼(Huffman)码,87,它说明:如果我们把X延长后再对K元组(K为延长长度)进行编码,那么不必利用数据前后的关联,只要K足够大,则代表每消息单元X的平均符号个数l/K可以任意趋于下限。有了最佳编码方法,我们就可以举一个简单例子来说明L/K趋于下限的情况:,哈夫曼(Huffman)码,88,【例】只有两种灰度的传真机,其输出信号非“白”即“黑”,故可令X=x1.x2=白,黑至于它们的概率P(x1),P(x2)则视所传内容而定。假设对于某页文件,有P(x1)=0.9,P(x2)=0.3则当不考虑信号间的关联时,可求出该信源的一阶熵即编码下限为H(x)=一0.9log0.9一0.1log0.1=0.469(bit/pel),哈夫曼(Huffman)码,89,此时W=0,1,无论采用定长编码还是最佳编码,平均码长L1=1bit/pel,效率只有H(X)/L1=46.9%现在把X延长到X2,不利用信号前后的关联(或假定是离散无记忆信源),则由图所示X2的最佳编码,知W2=0,10,110,1lW2的平均长度L2=0.81+0.09*2+0.09*3+0.01*3=1.29bit/pel,哈夫曼(Huffman)码,90,哈夫曼(Huffman)码,91,W2的每一个元素代表两个消息单元,所以平均每一消息单元的符号(码元)个数是L2/2=0.645bit/pel显然已经比较靠近下限(0.469),编码效率则提高到H(X)/(L2/2)=0.469/0.645=72.7%,哈夫曼(Huffman)码,92,现在把X延长到X3,不利用信号前后的关联(或假定是离散无记忆信源),则由图所示X3的最佳编码的平均长度L3=1.598bit/pelL3/3=0.533bit/pelH(X)/(L3/3)=88.0%,哈夫曼(Huffman)码,93,哈夫曼(Huffman)码,94,毫无疑问,如果信号继续有关联可供利用的话,继续延长,会使下限变得更小。至此,信源编码在理论上已经相当完满地解决了。现在简单归纳如下:如果给定消息单元集合X、符号集合A和X的概率分布P(X),我们可以采用最佳编码,使代码W的平均长度L落在半区间H(X)/logM,H(X)/logM+1之内.如果把X延长至X,那么不必利用信号前后的关联意味着P(X)能直接从P(X)得到,就可以使代表一个消息单元的符号个数Lk/K任意接近下限H(X)/logM;,哈夫曼(Huffman)码,95,如果把X延长至X,那么不必利用信号前后的关联意味着P(X)能直接从P(X)得到,就可以使代表一个消息单元的符号个数Lk/K任意接近下限H(X)/logM;如果利用延长信号X的前后关联必须给出X的概率分布P(X),更可使下限减小.当然在具体实现时,还必须考虑到:如果将信号延长得过长,会使实际设备复杂到不合理的程度.,哈夫曼(Huffman)码,96,哈夫曼码也是译码的工具:,哈夫曼(Huffman)码,97,哈夫曼(Huffman)码,4.例题X:p(x)(0.4,0.18,0.1,0.1,0.07,0.06,0.05,0.04),98,哈夫曼(Huffman)码,4.例题X:p(x)(0.4,0.18,0.1,0.1,0.07,0.06,0.05,0.04),若接收的字符串是:00010100101100011,00010100101100011,00010100101100011,00010100101100011,99,数据压缩和信源编码,3.1等长码3.2变长编码3.3哈夫曼码3.4算术码香农-费诺码3.5通用信源编码LZW算法习题三,
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!