体信息的数据压缩.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《体信息的数据压缩.ppt》由会员分享,可在线阅读,更多相关《体信息的数据压缩.ppt(46页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1.5 多媒体数据压缩技术1.5.1 多媒体数据的冗余类型1.5.2 数据压缩方法1.5.3 视频编码的国际标准1.5.1 多媒体数据的冗余类型图像数据表示中存在着大量的冗余,图像数据压缩技术就是利用图像数据的冗余性来减少图像数据量的方法。常见图像数据冗余类型如下:1.空间冗余2.时间冗余3.视觉冗余空间冗余一幅图像表面上各采样点的颜色之间往往存在着空间连贯性,基于离散像素采样来表示物体表面颜色的像素存储方式可利用空间连贯性,达到减少数据量的目的。例如,在静态图像中有一块表面颜色均匀的区域,在此区域中所有点的光强和色彩以及饱和度都是相同的,因此数据有很大的空间冗余。时间冗余运动图像一般为位于一
2、时间轴区间的一组连续画面,其中的相邻帧往往包含相同的背景和移动物体,只不过移动物体所在的空间位置略有不同,所以后一帧的数据与前一帧的数据有许多共同的地方,这种共同性是由于相邻帧记录了相邻时刻的同一场景画面,所以称为时间冗余。同理,语音数据中也存在着时间冗余。视觉冗余人类的视觉系统对图像场的敏感度是非均匀的。但是,在记录原始的图像数据时,通常假定视觉系统近似线性的和均匀的,对视觉敏感和不敏感的部分同等对待,从而产生比理想编码(即把视觉敏感和不敏感的部分区分开来的编码)更多的数据,这就是视觉冗余。数字压缩技术三个重要指标1、信息存储量之比 大2、压缩的算法 简单3、恢复效果 好1.5.2 数据压缩
3、方法压缩处理一般是由两个过程组成:一是编码过程,即将原始数据经过编码进行压缩,以便存储与传输;二是解码过程,此过程对编码数据进行解码,还原为可以使用的数据。数据压缩可分为两种类型:一种叫做无损压缩,另一种叫做有损压缩。无损压缩混合压缩有损压缩什么是熵什么是熵什么是熵什么是熵 数据压缩不仅起源于数据压缩不仅起源于 40 40 年代由年代由 Claude Shannon Claude Shannon 首创的信息论,而且其基本原理即信息究竟能被压缩首创的信息论,而且其基本原理即信息究竟能被压缩到多小,至今依然遵循信息论中的一条定理,这条定到多小,至今依然遵循信息论中的一条定理,这条定理借用了热力学中
4、的名词理借用了热力学中的名词“熵熵”(Entropy)”(Entropy)来表示一条来表示一条信息中真正需要编码的信息量:信息中真正需要编码的信息量:考虑用考虑用 0 0 和和 1 1 组成的二进制数码为含有组成的二进制数码为含有 n n 个符号的某个符号的某条信息编码,假设符号条信息编码,假设符号 Fn Fn 在整条信息中重复出现的概在整条信息中重复出现的概率为率为 Pn Pn,则该符号的熵也即表示该符号所需的位数位,则该符号的熵也即表示该符号所需的位数位为:为:En=-logEn=-log2 2(Pn)(Pn)整条信息的熵也即表示整条信息所需整条信息的熵也即表示整条信息所需的位数为:的位数
5、为:E=EnE=En举个例子,对下面这条只出现了举个例子,对下面这条只出现了 a b c a b c 三个字符的字符三个字符的字符串:串:aabbaccbaaaabbaccbaa字符串长度为字符串长度为 10 10,字符,字符 a b c a b c 分别出现了分别出现了 5 3 2 5 3 2 次,次,则则 a b c a b c 在信息中出现的概率分别为在信息中出现的概率分别为 0.5 0.3 0.2 0.5 0.3 0.2,他,他们的熵分别为:们的熵分别为:Ea=-logEa=-log2 2(0.5)=1Eb=-log(0.5)=1Eb=-log2 2(0.3)=1.737Ec=-(0.
6、3)=1.737Ec=-loglog2 2(0.2)=2.322(0.2)=2.322整条信息的熵也即表达整个字符串需整条信息的熵也即表达整个字符串需要的位数为:要的位数为:E=Ea*5+Eb*3+Ec*2=14.855 E=Ea*5+Eb*3+Ec*2=14.855 位位回想一下如果回想一下如果用计算机中常用的用计算机中常用的 ASCII ASCII 编码,表示上面的字符串我编码,表示上面的字符串我们需要整整们需要整整 80 80 位呢!现在知道信息为什么能被压缩而位呢!现在知道信息为什么能被压缩而不丢失原有的信息内容了吧。简单地讲,用较少的位不丢失原有的信息内容了吧。简单地讲,用较少的位数
7、表示较频繁出现的符号,这就是数据压缩的基本准数表示较频繁出现的符号,这就是数据压缩的基本准则。则。模型模型模型模型从上面的描述,我们明白,要压缩一条信息,首先要分析清楚信息中每从上面的描述,我们明白,要压缩一条信息,首先要分析清楚信息中每个符号出现的概率。不同的压缩程序通过不同的方法确定符号的出现概个符号出现的概率。不同的压缩程序通过不同的方法确定符号的出现概率,对符号的概率计算得越准确,也就越容易得到好的压缩效果。在压率,对符号的概率计算得越准确,也就越容易得到好的压缩效果。在压缩程序中,用来处理输入信息,计算符号的概率并决定输出哪个或哪些缩程序中,用来处理输入信息,计算符号的概率并决定输出
8、哪个或哪些代码的模块叫做模型。代码的模块叫做模型。难道对信息中字符的出现概率这么难以估计以至于有各种不同的压缩模难道对信息中字符的出现概率这么难以估计以至于有各种不同的压缩模型吗?对上面的字符串我们不是很容易就知道每个字符的概率了吗?不型吗?对上面的字符串我们不是很容易就知道每个字符的概率了吗?不过上面的字符串仅有过上面的字符串仅有 10 10 个字符长呀,那只是例子而已。考虑我们现实中个字符长呀,那只是例子而已。考虑我们现实中要压缩的文件,大多数可是有几十要压缩的文件,大多数可是有几十 K K 甚至几百甚至几百 K K 长,几长,几 M M 字节的文件不字节的文件不是也屡见不鲜吗?是也屡见不
9、鲜吗?是的,我们可以预先扫描文件中的所有字符,统计出每个字符出现的概是的,我们可以预先扫描文件中的所有字符,统计出每个字符出现的概率,这种方法在压缩术语里叫做率,这种方法在压缩术语里叫做“静态统计模型静态统计模型”。但是,不同的文件。但是,不同的文件中,字符有不同的分布概率,我们要么先花上大量的时间统计我们要压中,字符有不同的分布概率,我们要么先花上大量的时间统计我们要压缩的所有文件中的字符概率,要么为每一个单独的文件保存一份概率表缩的所有文件中的字符概率,要么为每一个单独的文件保存一份概率表以备解压缩时需要。糟糕的是,不但扫描文件要消耗大量时间,而且保以备解压缩时需要。糟糕的是,不但扫描文件
10、要消耗大量时间,而且保存一份概率表也使压缩后的文件增大了不少。所以,在实际应用中,存一份概率表也使压缩后的文件增大了不少。所以,在实际应用中,“静态统计模型静态统计模型”应用的很少。应用的很少。真正的压缩程序中使用的大多是一种叫真正的压缩程序中使用的大多是一种叫“自适应模自适应模型型”的东西。自适应模型可以说是一台具有学习功能的东西。自适应模型可以说是一台具有学习功能的自动机。他在信息被输入之前对信息内容一无所知的自动机。他在信息被输入之前对信息内容一无所知并假定每个字符的出现概率均等,随着字符不断被输并假定每个字符的出现概率均等,随着字符不断被输入和编码,他统计并纪录已经出现过的字符的概率并
11、入和编码,他统计并纪录已经出现过的字符的概率并将这些概率应用于对后续字符的编码。也就是说,自将这些概率应用于对后续字符的编码。也就是说,自适应模型在压缩开始时压缩效果并不理想,但随着压适应模型在压缩开始时压缩效果并不理想,但随着压缩的进行,他会越来越接近字符概率的准确值,并达缩的进行,他会越来越接近字符概率的准确值,并达到理想的压缩效果。自适应模型还可以适应输入信息到理想的压缩效果。自适应模型还可以适应输入信息中字符分布的突然变化,可以适应不同的文件中的字中字符分布的突然变化,可以适应不同的文件中的字符分布而不需要保存概率表。符分布而不需要保存概率表。编码编码通过模型,我们已经确定了对某一个符
12、号该用多少位二进制数进行编码。现在的问题是,如何设计一种编码方案,使其尽量精确地用模型计算出来的位数表示某个符号。最先被考虑的问题是,如果对 a 用 3 个二进制位就可以表示,而对 b 用 4 个二进制位就可以表示,那么,在解码时,面对一连串的二进制流,我怎么知道哪三个位是 a,哪四个位是 b 呢?所以,必须设计出一种编码方式,使得解码程序可以方便地分离每个字符的编码部分。于是有了一种叫“前缀编码”的技术。该技术的主导思想是,任何一个字符的编码,都不是另一个字符编码的前缀。反过来说就是,任何一个字符的编码,都不是由另一个字符的编码加上若干位 0 或 1 组成。看一下前缀编码的一个最简单的例子符
13、号 编码 A 0 B 10 C 110 D 1110 E 11110 有了上面的码表,你一定可以轻松地从下面这串二进制流中分辨出真正的信息内容了:DABBDCEAAB无损压缩无损压缩常用在原始数据的存档,如文本数据、程序以及珍贵的图片和图像等。其原理是统计压缩数据中的冗余(重复的数据)部分。常用的有:RLE(run length encoding)行程编码Huffman 编码算术编码LZW(lempel-ziv-welch)编码Shannon-Fano Shannon-Fano 编码编码编码编码讨论之前,我们假定要编码字符的出现概率已经由某讨论之前,我们假定要编码字符的出现概率已经由某一模型统
14、计出来,例如,对下面这串出现了五种字符一模型统计出来,例如,对下面这串出现了五种字符的信息的信息(40(40 个字符长个字符长):):cabcedeacacdeddaaabaababaaabbacdebaceadacabcedeacacdeddaaabaababaaabbacdebaceada 五五种字符的出现次数分别:种字符的出现次数分别:a-16a-16,b-7b-7,c-6c-6,d-6d-6,e-5e-5。Shannon-Fano Shannon-Fano 编码的核心仍然是构造二叉树,构造的编码的核心仍然是构造二叉树,构造的方式非常简单:方式非常简单:Shannon-Fano Shan
15、non-Fano 编码编码编码编码进入进入 Huffman Huffman 先生构造的神奇二叉树之前,我们先来先生构造的神奇二叉树之前,我们先来看一下它的前身,由看一下它的前身,由 Claude Shannon Claude Shannon 和和 R.M.Fano R.M.Fano 两两人提出的人提出的 Shannon-Fano Shannon-Fano 编码。编码。讨论之前,我们假定要编码字符的出现概率已经由某讨论之前,我们假定要编码字符的出现概率已经由某一模型统计出来,例如,对下面这串出现了五种字符一模型统计出来,例如,对下面这串出现了五种字符的信息的信息(40(40 个字符长个字符长):
16、):cabcedeacacdeddaaabaababaaabbacdebaceadacabcedeacacdeddaaabaababaaabbacdebaceada 五五种字符的出现次数分别:种字符的出现次数分别:a-16a-16,b-7b-7,c-6c-6,d-6d-6,e-5e-5。Shannon-Fano Shannon-Fano 编码的核心仍然是构造二叉树,构造的编码的核心仍然是构造二叉树,构造的方式非常简单:方式非常简单:1)将给定符号按照其频率从大到小排序。对上面的例子,应该得到:a-16 b-7 c-6 d-6 e-5 2)将序列分成上下两部分,使得上部频率总和尽可能接近下部频率
17、总和。我们有:a-16 b-7-c-6 d-6 e-5 3)我们把第二步中划分出的上部作为二叉树的左子树,记 0,下部作为二叉树的右子树,记 1。4)分别对左右子树重复 2 3 两步,直到所有的符号都成为二叉树的树叶为止。现在我们有如下的二叉树:根(root)0|1 +-+-+0|1 0|1 +-+-+-+-+|a b c|0|1 +-+-+|d e 于是我们得到了此信息的编码表:于是我们得到了此信息的编码表:a-00 b-01 c-10 d-110 e-111a-00 b-01 c-10 d-110 e-111 可以将例子中的信息编码为:可以将例子中的信息编码为:cabcedeacacded
18、daaabaababaaabbacdebaceada10 cabcedeacacdeddaaabaababaaabbacdebaceada10 00 01 10 00 01 10 111 110 111 00 10 00 10.111 110 111 00 10 00 10.码长共码长共 91 91 位。考虑用位。考虑用 ASCII ASCII 码表示上述信息需要码表示上述信息需要 8*40=240 8*40=240 位,我们确位,我们确实实现了数据压缩实实现了数据压缩Huffman Huffman 编码编码Huffman 编码构造二叉树的方法和 Shannon-Fano 正好相反,不是自上而
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信息 数据压缩
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内