多媒体技术基础3版2章数据无损压缩.ppt
《多媒体技术基础3版2章数据无损压缩.ppt》由会员分享,可在线阅读,更多相关《多媒体技术基础3版2章数据无损压缩.ppt(72页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、多媒体技术基础3版2章数据无损压缩 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望2022年9月24日第2章 数据无损压缩2 of 72第第2章章 数据无损压缩目录数据无损压缩目录2.1 数据的冗余数据的冗余2.1.1 冗余概念2.1.2 决策量2.1.3 信息量2.1.4 熵2.1.5 数据冗余量2.2 统计编码2.2.1 香农-范诺编码2.2.2 霍夫曼编码2.2.3 算术编码2.3 RLE编码2.4 词典典编码2.4.1 词典编码的思想2.4.2 LZ77算
2、法2.4.3 LZSS算法2.4.4 LZ78算法2.4.5 LZW算法参考文献和站点参考文献和站点2022年9月24日第2章 数据无损压缩3 of 722.0 数据无损压缩概述数据无损压缩概述n数据可被数据可被压缩的依据的依据数据本身存在冗余听觉系统的敏感度有限视觉系统的敏感度有限n三种多媒体数据三种多媒体数据类型型文字(text)数据无损压缩n根据数据本身的冗余(Based on data redundancy)声音(audio)数据有损压缩n根据数据本身的冗余(Based on data redundancy)n根据人的听觉系统特性(Based on human hearing syst
3、em)图像(image)/视像(video)数据有损压缩n根据数据本身的冗余(Based on data redundancy)n根据人的视觉系统特性(Based on human visual system)2022年9月24日第2章 数据无损压缩4 of 722.0 数据无损压缩概述数据无损压缩概述(续续1)n数据无数据无损压缩的理的理论信息信息论(information theory)1948年创建的数学理论的一个分支学科,研究信息的编码、传输和存储该术语源于Claude Shannon(香农)发表的“A Mathematical Theory of Communication”论文题目
4、,提议用二进制数据对信息进行编码最初只应用于通信工程领域,后来扩展到包括计算在内的其他多个领域,如信息的存储、信息的检索等。在通信方面,主要研究数据量、传输速率、信道容量、传输正确率等问题。n数据无数据无损压缩的方法的方法霍夫曼编码(Huffman coding)算术编码(arithmetic coding)行程长度编码(run-length coding)词典编码(dictionary coding)2022年9月24日第2章 数据无损压缩5 of 722.0 数据无损压缩概述数据无损压缩概述(续续2)nThe Father of Information TheoryClaude Elwoo
5、d ShannonBorn:30 April 1916 in Gaylord,Michigan,USADied:24 Feb 2001 in Medford,Massachusetts,USAhttp:/www.bell- 数据无损压缩6 of 722.0 数据无损压缩概述数据无损压缩概述(续续3)nClaude Shannon The founding father of electronic communications age;American mathematical engineerIn 19361940,MIT:nMasters thesis,A symbolic analysis
6、 of relay and switching circuitsnDoctoral thesis:on theoretical geneticsIn 1948:nA mathematical theory of communication,landmark,climax(An important feature of Shannons theory:concept of entropy)2022年9月24日第2章 数据无损压缩7 of 722.1 数据的冗余数据的冗余n冗余概念冗余概念人为冗余n在信息处理系统中,使用两台计算机做同样的工作是提高系统可靠性的一种措施n在数据存储和传输中,为了检测
7、和恢复在数据存储或数据传输过程中出现的错误,根据使用的算法的要求,在数据存储或数据传输之前把额外的数据添加到用户数据中,这个额外的数据就是冗余数据视听冗余n由于人的视觉系统和听觉系统的局限性,在图像数据和声音数据中,有些数据确实是多余的,使用算法将其去掉后并不会丢失实质性的信息或含义,对理解数据表达的信息几乎没有影响数据冗余n不考虑数据来源时,单纯数据集中也可能存在多余的数据,去掉这些多余数据并不会丢失任何信息,这种冗余称为数据冗余,而且还可定量表达 2022年9月24日第2章 数据无损压缩8 of 722.1 数据的冗余数据的冗余(续续1)n决策量决策量(decision content)在
8、有限数目的互斥事件集合中,决策量是事件数的对数值在数学上表示为 H0=log(n)其中,n是事件数决策量的单位由对数的底数决定nSh(Shannon):用于以2为底的对数nNat(natural unit):用于以e为底的对数nHart(hartley):用于以10为底的对数2022年9月24日第2章 数据无损压缩9 of 722.1 数据的冗余数据的冗余(续续2)n信息量信息量(information content)具有确定概率事件的信息的定量度量在数学上定义为 其中,是事件出现的概率 举例:假设X=a,b,c是由3个事件构成的集合,p(a)=0.5,p(b)=0.25,p(b)=0.25
9、分别是事件a,b和c出现的概率,这些事件的信息量分别为,I(a)=log2(1/0.50)=1 sh I(b)=log2(1/0.25)=2 sh I(c)=log2(1/0.25)=2 sh一个等概率事件的集合,每个事件的信息量等于该集合的决策量2022年9月24日第2章 数据无损压缩10 of 722.1 数据的冗余数据的冗余(续续3)n熵(entropy)按照香农(Shannon)的理论,在有限的互斥和联合穷举事件的集合中,熵为事件的信息量的平均值,也称事件的平均信息量(mean information content)用数学表示为2022年9月24日第2章 数据无损压缩11 of 72
10、2.1 数据的冗余数据的冗余(续续4)n数据的冗余量数据的冗余量2022年9月24日第2章 数据无损压缩12 of 722.2 统计编码统计编码n统计编码给已知统计信息的符号分配代码的数据无损压缩方法n编码方法方法香农-范诺编码霍夫曼编码算术编码n编码特性特性香农-范诺编码和霍夫曼编码的原理相同,都是根据符号集中各个符号出现的频繁程度来编码,出现次数越多的符号,给它分配的代码位数越少算术编码使用0和1之间的实数的间隔长度代表概率大小,概率越大间隔越长,编码效率可接近于熵2022年9月24日第2章 数据无损压缩13 of 722.2.1 统计编码统计编码香农香农-范诺编码范诺编码n香香农-范范诺
11、编码(ShannonFano coding)在香农的源编码理论中,熵的大小表示非冗余的不可压缩的信息量在计算熵时,如果对数的底数用2,熵的单位就用“香农(Sh)”,也称“位(bit)”。“位”是1948年Shannon首次使用的术语。例如最早阐述和实现“从上到下”的熵编码方法的人是Shannon(1948年)和Fano(1949年),因此称为香农-范诺(Shannon-Fano)编码法2022年9月24日第2章 数据无损压缩14 of 722.2.1 香农香农-范诺编码范诺编码n香香农-范范诺编码举例例 有一幅40个像素组成的灰度图像,灰度共有5级,分别用符号A,B,C,D和E表示。40个像素
12、中出现灰度A的像素数有15个,出现灰度B的像素数有7个,出现灰度C的像素数有7个,其余情况见表2-1n(1)计算该图像可能获得的压缩比的理论值n(2)对5个符号进行编码n(3)计算该图像可能获得的压缩比的实际值表表2-1 符号在符号在图像中出像中出现的数目的数目符号ABCDE出现的次数157765出现的概率15/407/407/406/405/402022年9月24日第2章 数据无损压缩15 of 722.2.1 香农香农-范诺编码范诺编码(续续1)(1)压缩比的理比的理论值按照常规的编码方法,表示5个符号最少需要3位,如用000表示A,001表示B,100表示E,其余3个代码(101,110
13、,111)不用。这就意味每个像素用3位,编码这幅图像总共需要120位。按照香农理论,这幅图像的熵为这个数值表明,每个符号不需要用3位构成的代码表示,而用2.196位就可以,因此40个像素只需用87.84位就可以,因此在理论上,这幅图像的的压缩比为120:87.841.37:1,实际上就是3:2.1961.37 2022年9月24日第2章 数据无损压缩16 of 722.2.1 香农香农-范诺编码范诺编码(续续2)(2)符号编码符号编码对每个符号进行编码时采用“从上到下”的方法。首先按照符号出现的频度或概率排序,如A,B,C,D和E,见表2-2。然后使用递归方法分成两个部分,每一部分具有近似相同
14、的次数,如图2-1所示 2022年9月24日第2章 数据无损压缩17 of 722.2.1 香农香农-范诺编码范诺编码(续续3)(3)压缩比的实际值)压缩比的实际值按照这种方法进行编码需要的总位数为30+14+14+18+1591,实际的压缩比为120:911.32:1 图2-1 香农-范诺算法编码举例 2022年9月24日第2章 数据无损压缩18 of 722.2.2 统计编码统计编码霍夫曼编码霍夫曼编码n霍夫曼霍夫曼编码(Huffman coding)霍夫曼(D.A.Huffman)在1952年提出和描述的“从下到上”的熵编码方法根据给定数据集中各元素所出现的频率来压缩数据的一种统计压缩编
15、码方法。这些元素(如字母)出现的次数越多,其编码的位数就越少广泛用在JPEG,MPEG,H.26X等各种信息编码标准中2022年9月24日第2章 数据无损压缩19 of 722.2.2 霍夫曼编码 Case Study 1n霍夫曼霍夫曼编码举例例1现有一个由5个不同符号组成的30个符号的字符串:BABACACADADABBCBABEBEDDABEEEBB计算(1)该字符串的霍夫曼码(2)该字符串的熵(3)该字符串的平均码长(4)编码前后的压缩比2022年9月24日第2章 数据无损压缩20 of 722.2.2 霍夫曼编码 Case Study 1(续续1)符号出现的次数 log2(1/pi)分
16、配的代码需要的位数B101.585?A81.907?C33.322?D42.907?E52.585?合计30符号出符号出现的概率的概率2022年9月24日第2章 数据无损压缩21 of 722.2.2 霍夫曼编码霍夫曼编码 Case Study 1(续续2)(1)计算算该字符串的霍夫曼字符串的霍夫曼码步骤:按照符号出现概率大小的顺序对符号进行排序步骤:把概率最小的两个符号组成一个节点P1步骤:重复步骤,得到节点P2,P3,P4,PN,形成一棵树,其中的PN称为根节点步骤:从根节点PN开始到每个符号的树叶,从上到下 标上0(上枝)和1(下枝),至于哪个为1哪个为0则 无关紧要,但通常把概率大的标
17、成1,概率小的 标成0步骤:从根节点PN开始顺着树枝到每个叶子分别写出 每个符号的代码2022年9月24日第2章 数据无损压缩22 of 722.2.2 霍夫曼编码霍夫曼编码 Case Study 1(续续3)符号符号B(10)A(8)E(5)D(4)C(3)P1(7)P2(12)P3(18)P4(30)01101010代码代码B(11)A(10)E(00)D(011)C(010)2022年9月24日第2章 数据无损压缩23 of 722.2.2 霍夫曼编码霍夫曼编码 Case Study 1(续续4)符号出现的次数log2(1/pi)分配的代码需要的位数B101.5851120A81.907
18、1016C33.3220109D42.90701112E52.5850010合计301.06730个字符组成的字符串需要个字符组成的字符串需要67位位5个符号的代码2022年9月24日第2章 数据无损压缩24 of 722.2.2 霍夫曼编码霍夫曼编码 Case Study 1(续续5)(2)计算算该字符串的字符串的熵 其中,是事件 的集合,并满足H(S)=(8/30)log2(30/8)+(10/30)log2(30/10)+(3/30)log2(30/3)+(4/30)log2(30/4)+(5/30)log2(30/5)=30lg30 (8lg8 10lg10 3lg3 4 lg4 5
19、lg5)/(30log22)=(44.313624.5592)/9.0308 2.1874 (Sh)2022年9月24日第2章 数据无损压缩25 of 722.2.2 霍夫曼编码霍夫曼编码 Case Study 1(续续6)(3)计算算该字符串的平均字符串的平均码长平均码长:(28210333425)/30 2.233 位/符号 压缩比压缩比:90/67=1.34:1 平均码长:平均码长:67/30=2.233位位(4)计算编码前后的压缩比计算编码前后的压缩比n编码前:5个符号需3位,30个字符,需要90位n编码后:共67位2022年9月24日第2章 数据无损压缩26 of 722.2.2 霍
20、夫曼编码霍夫曼编码 Case Study 2n霍夫曼霍夫曼编码举例例2编码前nN=8 symbols:a,b,c,d,e,f,g,h,n3 bits per symbol(N=23=8)nP(a)=0.01,P(b)=0.02,P(c)=0.05,P(d)=0.09,P(e)=0.18,P(f)=0.2,P(g)=0.2,P(h)=0.25计算(1)该字符串的霍夫曼码(2)该字符串的熵(3)该字符串的平均码长(4)编码效率2022年9月24日第2章 数据无损压缩27 of 722.2.2 霍夫曼编码霍夫曼编码 Case Study 2(续续1)2022年9月24日第2章 数据无损压缩28 of
21、 722.2.2 霍夫曼编码霍夫曼编码 Case Study 2(续续2)Average length per symbol(before coding):(2)Entropy:(3)Average length per symbol(with Huffman coding):(4)Efficiency of the code:2022年9月24日第2章 数据无损压缩29 of 722.2.3 统计编码统计编码算术编码算术编码n算算术编码(arithmetic coding)给已知统计信息的符号分配代码的数据无损压缩技术基本思想是用0和1之间的一个数值范围表示输入流中的一个字符,而不是给输入流
22、中的每个字符分别指定一个码字实质上是为整个输入字符流分配一个“码字”,因此它的编码效率可接近于熵 2022年9月24日第2章 数据无损压缩30 of 722.2.3 算术编码举例算术编码举例n例例2.3(取自教材)(取自教材)假设信源符号为00,01,10,11,它们的概率分别为 0.1,0.4,0.2,0.3 对二进制消息序列10 00 11 00 10 11 01 进行算术编码2022年9月24日第2章 数据无损压缩31 of 722.2.3 算术编码举例算术编码举例(续续1)符号00011011概率0.10.40.20.3初始编码间隔0,0.1)0.1,0.5)0.5,0.7)0.7,1
23、表表2-4 例例2.3的信源符号概率和初始的信源符号概率和初始编码间隔隔 n初始化初始化根据信源符号的概率把间隔0,1)分成如表2-4所示的4个子间隔:0,0.1),0.1,0.5),0.5,0.7),0.7,1)。其中x,y)的表示半开放间隔,即包含x不包含y,x称为低边界或左边界,y称为高边界或右边界2022年9月24日第2章 数据无损压缩32 of 722.2.3 算术编码举例算术编码举例(续续2)n确定符号的确定符号的编码范范围编码时输入第1个符号是10,找到它的编码范围是0.5,0.7消息中第2个符号00的编码范围是0,0.1),它的间隔就取0.5,0.7)的第一个十分之一作为新间隔
24、0.5,0.52)编码第3个符号11时,取新间隔为0.514,0.52)编码第4个符号00时,取新间隔为0.514,0.5146)依此类推消息的编码输出可以是最后一个间隔中的任意数n整个整个编码过程如程如图2-3所示所示n编码和和译码的全的全过程分程分别见表表2-5和表和表2-6 2022年9月24日第2章 数据无损压缩33 of 722.2.3 算术编码举例算术编码举例(续续3)图2-3 例2.3的算术编码过程2022年9月24日第2章 数据无损压缩34 of 722.2.3 算术编码举例算术编码举例(续续4)2022年9月24日第2章 数据无损压缩35 of 722.2.3 算术编码举例算
25、术编码举例(续续5)2022年9月24日第2章 数据无损压缩36 of 722.3 RLE编码编码n行程长度编码(Run-Length Coding)一种无损压缩数据编码技术,它利用重复的数据单元有相同的数值这一特点对数据进行压缩。对相同的数值只编码一次,同时计算出相同值重复出现的次数。在JPEG,MPEG,H.261和H.263等压缩方法中,RLE用来对图像数据变换和量化后的系数进行编码例:假设有一幅灰度图像第n行的像素值如图2-5所示。用RLE编码方法得到的代码为:80315084180图2-5 RLE编码概念2022年9月24日第2章 数据无损压缩37 of 722.3 RLE编码编码(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 多媒体技术 基础 数据 无损 压缩
限制150内