多媒体数据压缩华南理工大学计算机科学与工程学院沃焱woyan@scut.edu.cn基本内容第一篇数据编码基础概论信源的数字化与压缩系统评价信息理论基础与无损编码预测编码和变换编码第二篇静态图像压缩技术图象信号的基本知识JPEG压缩标准小波变换编码的基本方法JPEG2000压缩标准第三篇视频图象编码标准概要MPEG简介MPEG-2标准的视频部分MPEG-4、MPEG-7标准简介参考书籍:视频压缩与音频编码技术精英科技编著中国电力出版社2001图像编码基础和小波压缩技术——原理、算法和标准张旭东等编著清华大学出版社2004数据压缩原理与应用(第二版)DavidSalomon著电子工业出版社2003数据压缩(第二版),吴乐南,电子工业出版社,2005网站:参考文献根据各章所列多媒体数据压缩简介第一章概论1.1什么是数据压缩?1.2多媒体数据压缩的必要性及基本途径1.3数据压缩编码的分类1.4多媒体数据压缩的应用和标准1.1什么是数据压缩?信源编码:主要解决有效性问题。通过压缩、扰乱、加密处理,力求用最少的数码传递最大的信息量,使信号更适宜传输。数字传输系统模型:信源信源编码信道编码调制传输通道解调信宿信源解码信道解码信道编码:主要解决可靠性问题。即尽量使处理过的信号在传输过程中不出错,并能自动检错和纠错。数据压缩的定义信号空间的几种形式是相互关联的:物理空间=F(时间*带宽)只要采用某种方法来减少某一种信号空间都能压缩。所谓的数据压缩就是以最少的数码表示信源所发的信号,减少容纳给定消息集合或数据采样集合的信号空间。所谓的信号空间即被压缩的对象,它是指:1)物理空间,如存储器和光盘等数据存储介质。2)时间区间,如传输给定消息集合所需的时间;3)频带区域:如传输给定消息集合所要求的带宽等。例如视频信号:*有效尺寸为320×240的窗口中,以25帧/秒的速度播放1分钟的视频信号(颜色数为24bit),其数据量为:320×240×24×25×60÷8=345,600,000B*一张600MB的光盘最多能存储不超过2分钟的视频。1.2多媒体数据压缩的必要性及基本途径1.2.1多媒体数据压缩的必要性多媒体技术所处理的对象包括图像、视频和声音等多种媒体。它们的数据量非常大。数字音频格式频带(Hz)取样频率(KHz)样本精度(bit)声道数原始码率(Kb/s)电话200~340088164调幅广播50~700011.025161176.4调频广播20-1500022.03162705.6CD20~2000044.11621411.2数字录音带DAT20~20000481621536分钟数字音频信号需要的存储空间1多媒体信源引起了“数据爆炸”。如果不进行数据压缩传输和存储都难以实用化。对多媒体数据进行压缩是非常必要的!1.2.2数据压缩的条件与途径数据压缩“历史悠久”,已经发展了近70年,但直到20世纪80年代以后才不断涌现出适合各种应用场合的编码和压缩算法。数据能够进行压缩的两个原因:(1)数据冗余度音频信号和视频信号等原始数据通常存在很多用处不大的空间,空间越多,数据的“冗余度”也越大。通过数据的压缩,将把这些不用的空间去掉。(2)人类不敏感因素人耳对某些频率的音频信号不敏感,有无这些频率的音频,在听觉上影响不大,在数据压缩时,就可去掉这些不敏感的成分,以使减少数据量。人眼也存在“视觉掩盖效应”,即对亮度比较敏感,而对边缘的强烈变化不敏感;并且对彩色细节的分辨能力远比亮度细节的分辨能力低。数据压缩途径——消除冗余数据的冗余性数据之所以能够压缩是基本原始信源的数据存在着很大的冗余度。一般来说,多媒体数据中存在以下种类的数据冗余。1.空间冗余空间冗余是静态图像中存在的最主要的一种数据冗余。同一景物表面上采样点的颜色之间往往存在着空间连贯性,但是基于离散像素采样来表示物体颜色的方式通常没有利用这种连贯性。例如:图像中有一片连续的区域,其像素为相同的颜色,空间冗余产生。2.时间冗余这是序列图像(电视图像、动画)和言语数据中所经常包含的冗余。图像序列中的两幅相邻的图像,后一幅图像与前一幅图像之间有较大的相关性,这反映为时间冗余。同理,在言语中,由于人在说话时发音的音频是一连续的渐变过程,而不是一个完全在时间上独立的过程,因而存在时间冗余。3.信息熵冗余信息熵是信息论中用于度量信息量的一个概念。指一组数据所携带的信息量。解除不确定性的多少,可以作为信息的度量。不确定性——概率一个系统越是有序,信息熵就越小;反之,一个系统越是混乱,信息熵就越大。信息熵可以说是系统有序化程度的一个度量。信息熵冗余是数据所携带信息量少于数据本身而反映出的数据冗余。第一种编码方式第二种编码方式平均编码长度平均编码长度存在熵冗余4.结构冗余5.知识冗余有许多图像的理解与某些基础知识有相当大的相关性。例如,人脸的图像有固定的结构,嘴的上方有鼻子,鼻子的上方有眼睛,鼻子位于正面图像的中线上等等。这类规律性的结构可由先验知识和背景知识得到,我们称此类冗余为知识冗余。6.认知(视觉听觉)冗余人类视觉系统对于图像场的任何变化,并不是都能感知的。例如,对于图像的编码和解码处理时,由于压缩或量化截断引入了噪声而使图像发生了一些变化,如果这些变化不能为视觉所感知,则仍认为图像足够好。事实上人类视觉系统一般的分辨能力约为26灰度等级,而一般图像量化采用28灰度等级,这类冗余我们称为视觉冗余。对于听觉,也存在类似的冗余。数据压缩的途径——消除冗余数据压缩就是去掉信号数据的冗余性。数据压缩常常又称为数据信源编码,或简称为数据编码。与此对应,数据压缩的逆过程称为数据解压缩,也称为数据信源解码,或简称为数据解码。1.3数据压缩编码的分类1.3.1压缩和解压缩过程数据压缩的典型操作包括预准备、处理、量化和编码等过程,图给出了它们的操作序列。数据可以是静止图像、视频和音频数据等。数据压缩的主要步骤(1)预准备包括模数转换和生成适当的数据表达信息。一幅图像分割成8x8像素的块,每一像素以固定的数据位表达。(2)处理实际上是使用复杂算法压缩处理的第一个步骤。从时域到频域的变换可以用离散余弦变换(DCT,DiscreteCosineTransform)。在活动视频压缩中,对帧间每个8x8块采用运动矢量编码。(3)量化量化过程对上一步骤产生的结果进行处理,该过程定义了从实数到整数映射方法。这一处理过程导致精度的降低。(4)熵编码熵编码通常是最后一步。它对序列数据流进行无损压缩。例如,数据流中一零值序列可以通过定义零值本身和后面的重复个数来进行压缩。“处理”和“量化”可以在反馈环中交互地重复多次。解压缩是压缩的逆过程,特定的编码器和解码器以不同的方法构成。在对称应用中(如对话应用),编码和解码代价应基本相同;在非对称应用中,解码过程比编码过程耗费的代价要小,这种技术用于以下情形:(1)压缩的过程仅一次,采样的时间不限;(2)解压缩经常用到并需要迅速完成。例如,一个音频-视频电子教材仅需要生成一次,但它可以被许多学生使用。因此,它需要多次被解码。在这种情况中,实时解码成为基本要求,而编码则不需要实时完成。这种非对称处理可以用来提高多媒体的质量。1.3.2数据压缩技术的分类按压缩过程的可逆性进行分类,可分无损压缩和有损压缩。无损压缩是指使用压缩后的数据进行重构(或者叫做还原,解压缩),重构后的数据与原来的数据完全相同;无损压缩用于要求重构的信号与原始信号完全一致的场合。有损压缩是指使用压缩后的数据进行重构,重构后的数据与原来的数据有所不同,但不影响人对原始资料表达的信息造成误解。有损压缩适用于重构信号不一定非要和原始信号完全相同的场合。根据压缩的原理可以分类:预测编码利用空间中相邻数据的相关性来预测未来点的数据。差分脉冲编码调制和自适应差分脉冲编码调制。变换编码将图象时域信号变换到频域空间上处理。时域空间有强相关的信号,反映在频域上是某些特定的区域内能量常被集中在一起,从而实现压缩。如正交变换、离散余弦变换、离散付立叶变换和Walsh-Hadamard变换。量化和矢量量化编码为了使整体量化失真最小,就必须依照统计的概率分布设计最优的量化器。信息熵编码根据信息熵原理,让出现概率大的用短的码字表达,反之用长的码字表示。最常见的方法有Huffman编码、Shannon编码以及算术编码。子带编码使用带通滤波器组将信号频带分割成若干个子频带,然后分别处理。模型编码编码时首先将图像中边界、轮廓、纹理等结构特征找出来,保存这些参数信息。解码时根据结构和参数信息进行合成,恢复出原图像。具体方法有轮廓编码、域分割编码、分析合成编码、识别合成编码、基于知识的编码、分形编码等。压缩比高恢复后的失真小压缩算法要简单、速度快压缩能否用硬件实现1.3.3数据压缩技术实现的衡量标准1.4多媒体数据压缩的应用及标准数据压缩技术的研究已有六十多年,可分为两类:1)基于冗余度的压缩技术,第一代压缩方法基于信息论的理论,它采用一般信号方法来消除数据中的冗余。它着眼于信源的统计特性,而不关心数据的具体内容,也很少考虑人类的特性;80年成熟,有国际标准,有应用。国际标准有:JPEGMPEG1H.261H.262(MPEG2)H.2632)基于人类视觉特性技术,第二代压缩方法该方法依赖人的听觉和视觉特性来研究。用物体的集合来表示图象,而不是用像素。有国际标准,但少应用。如MPEG4,JPEG200等1.4.1压缩编码研究史1938年里夫斯(Reeves)、1946年德劳雷恩(E.m.Delorain)以及贝尔公司的卡特勒(C.C.Cutler)分别发明了脉冲编码调制(PulseCodeModulation,PCM)、增量调制(DeltaModulation,∆М)以及差分脉冲编码调制(DifferentialPCM,DPCM)。1948年提出电视信号数字化后,就开始了图像压缩编码的研究工作。1948年香农(C.E.Shannon)在其经典论文“通信的数学原理”中首次提到信息率失真函数概念,1959年又进一步确立了率失真理论,从而奠定了信源编码的理论基础。1952年霍夫曼(D.A.Huffman)给出最优变长码的构造方法。同年贝尔实验室的奥利弗(B.M.Oliver)等人开始研究线性预测编码理论;1958年格雷哈姆(Graham)用计算机模拟法研究图像的DPCM编码方法;1966年奥尼尔(J.B.O’Neal)对比分析了DPCM和PCM,对电视信号传输进行了理论分析和计算机模拟,并提出了用于电视的实验数据,又于1969年进行了线性预测的实验。20世纪60年代,科学家们也开始探索比预测编码效率更高的编码方法。人们首先讨论了包括KL变换、傅立叶变换等正交变换。1968年安德鲁斯(H.C.Andrews)等人采用二维离散傅立叶变换(2D-DFT)提出了变换编码。此后相继出现了沃尔什-哈达玛(Walsh-Hadamard)变换、斜变换(Slant变换,由Enomoto和Shibata引入)、K-L变换、离散余弦变换(DCT)等。1976年美国贝尔系统的克劳切(R.E.Crochjiere)等人引入了语音的子带编码,1985年奥尼尔(S.D.O’Neil)将子带编码推广到对图像的编码。1983年瑞典的Forchheimer和Fahlander提出了基于模型图像编码(Model-BasedCoding)。1986年,Meyer在理论上证明了一维小波函数的存在,创造性地构造出具有一定衰减特性的小波函数。1987年Mallat提出了多尺度分析的思想及多分辨率分析的概念,成功地统一了在此之前各种具体小波的构造方法,提出了相应的快速小波算法——Mallat算法,并把它有效地应用于