第10章 多媒体数据压缩与编码

155
1 第 10 第 第第 第第第第第第第 第第 第第第第第第第第第第第第第第第 第第第 第第第 体、、、 第第第 第第第第第第第第第第第第第第第第第第第第第 85 %。 第第第 第第第第第第第第第第第第第第第第第第第第第第第 体传 第 第第第第第 PC 第第第第第第第第第第第第第第第第第第第第第第第 第第 第第 第第第第第第第第第第第第第第第第第第 第第第第第第第 第第第第第第 体。, 第第第第第第第第第第 第第第第第第第第第第第第第第第第第第第第第 第第第 。, 第第第第第第第第第第第第第第第 第第第第第第第第第第第第第 第第第第第第 ,。 第第第第第第第第第第第第第第第第第第第第第第

description

第10章 多媒体数据压缩与编码. 多媒体计算机要处理的信息主要有文字、声音、图形、图像等。其中需要处理的图形与图像信息约占总信息量的85%。 对多媒体信息进行压缩的目的是减小存储容量和降低数据传输率,使得现有的 PC 机的指标与性能达到能够处理声音与图像信息的要求,这是多媒体计算机硬件支撑平台所必须具备的功能。在这个过程中,声音与图像信息都需要进行压缩处理。但其中矛盾最突出和最困难的是图像信息压缩,这是因为数字化后图像信息数据量非常大,使得存储与处理都十分困难。数据压缩技术的重要作用在图像信息的压缩方面表现得尤为明显。. 10.1 数据压缩编码技术概述 - PowerPoint PPT Presentation

Transcript of 第10章 多媒体数据压缩与编码

Page 1: 第10章 多媒体数据压缩与编码

1

第 10 章 多媒体数据压缩与编码 多媒体计算机要处理的信息主要有文字、声音、图形、图像等。其中需要处理的图形与图像信息约占总信息量的 85 %。 对多媒体信息进行压缩的目的是减小存储容量和降低数据传输率,使得现有的 PC 机的指标与性能达到能够处理声音与图像信息的要求,这是多媒体计算机硬件支撑平台所必须具备的功能。在这个过程中,声音与图像信息都需要进行压缩处理。但其中矛盾最突出和最困难的是图像信息压缩,这是因为数字化后图像信息数据量非常大,使得存储与处理都十分困难。数据压缩技术的重要作用在图像信息的压缩方面表现得尤为明显。

Page 2: 第10章 多媒体数据压缩与编码

2

10.1 数据压缩编码技术概述10.1.1 信息的度量 讨论数据压缩,就要涉及现代科学领域的一个重要分支—信息论。信息论有关信息熵的概念对数据压缩有着重要的指导意义,它一方面给出了数据压缩的理论极限,另一方面又指明了数据压缩的技术途径。 信息论的创始人香农 (C.E Shannon) 在他的著名论文《通信的数学理论》中,从研究通信系统传输的实质出发,对信息作了科学定义,进行了定性和定量的描述。 香农认为:信息是有秩序的量度,是人们对事物了解的不确定性的消除或减少。信息是对组织程度的一种测度,信息能使物质系统有序性增强,减少破坏、混乱和噪音。

Page 3: 第10章 多媒体数据压缩与编码

3

香农提出:信息的传播过程是“信源” ( 信息的发送者 ) 把要提供的信息经过“信道”传递给“信宿” ( 信息的接收者 ) ,信宿接收这些经过“译码” ( 即解释符号 ) 的信息符号的过程。并由此建立了通信系统模型。 我们从一则消息中获得了信息,但获得的信息有多少呢?量度信息多少的测度就是信息量。信息的度量反映了人们对于信息的定量认识。 根据香农有关信息的定义,信息如何测度呢?显然,信息量与不确定性消除程度有关。消除多少不确定性,就获得多少信息量。用数学语言来讲,不确定就是随机性。不确定性的大小可以直观地看成是事先猜测某随机事件是否发生的难易程度。

Page 4: 第10章 多媒体数据压缩与编码

4

按照香农的定义,信息量的度量公式可描述为:

先验概率后验概率logI

它实际上就是后验概率和先验概率之比。在信道无干扰情况下,由信源传来的消息告诉信宿某事件已经发生,则某事件必然发生了。按照概率的定义,对于确定发生的必然事件,其概率为 1 。这时公式的后验概率为 1 。

(10.1)

Page 5: 第10章 多媒体数据压缩与编码

5

假设 Pi是第 i个消息出现的先验概率,则第 i个消息的信息量为:

ii

i PP

I log1log (10.2)

Page 6: 第10章 多媒体数据压缩与编码

6

第 i个消息可能有 n种状态,那么输出这个消息的总信息量的期望值(即平均信息量)为:

n

iii PPH

1

log

借用热力学的名词,把 H叫做熵。它代表接收一个符号所获得的平均信息量。熵是在平均意义上表征信源总体特性的一个物理量。公式 (10.3) 中,对数的底数理论上可取任何数。当底数为 2时,信息的计量单位为比特 (bit) ,即二进制单位。 以上就是香农关于信息的度量。通常也称为概率信息。它是一个科学的定义,有明确的数学模型和定量计算。

(10.3)

Page 7: 第10章 多媒体数据压缩与编码

7

香农公式与日常用语中信息的含义一致。如,设某一事件是在预料中一定会发生的必然事件,若该事件果然发生了,收信者将不会得到任何信息。因为根据公式 (10.2), Pi=1 ,得 :

01log1log i

i PI

11log i

i PI

反之,若某一事件发生的概率很小,即猜测它是否发生的不确定性很大,一旦这个事件发生了,收信者会觉得很意外,感到获得信息量很大。根据公式 (10.2) ,因为 Pi<<1( 表示概率远小于 1) ,故得:

(10.4)

(10.5)

Page 8: 第10章 多媒体数据压缩与编码

8

只有当事件发生与不发生的概率相同时,其信息量才达到最大。香农的信息度量公式排除了对信息的主观含意。根据上述公式,同样一个消息对任何一个收信者来说,所得到的信息量都是一样的。

Page 9: 第10章 多媒体数据压缩与编码

9

10.1.2 信息的压缩 压缩编码的理论基础是信息论。香农把信息定义为熵的减少。即,信息可定义为用来消除不确定性的东西。从信息论的角度来看,压缩就是去掉信息中的冗余,即保留不确定的信息,去除确定的信息,也就是用一种更接近信息本质的描述来代替原有冗余的描述。所以,将香农的信息论观点运用到图像信息的压缩,所要解决的问题就是如何将图像信息压缩到最小,但仍携有足够信息以保证能复制出与原图近似的图像。

Page 10: 第10章 多媒体数据压缩与编码

10

图像信息之所以能进行压缩是因为其本身通常存在很大冗余,以视频连续画面为例,每一帧画面由若干个像素组成,因为动态图像通常反映一个连续的过程,相邻帧之间存在很大相关性,从一幅画面到下一幅画面,背景与前景可以没有太多的变化。这些相似的信息为数据压缩提供了基础。另一原因是人的视觉和听觉对某些信号 ( 如颜色,声音 ) 不敏感,致使信息被压缩之后还不知不觉,也不致对压缩后的信息产生误解。正因如此,可在允许保真度的条件下压缩待存储的图像数据,以节省存储空间,图像传输时也大大减少信道的容量,光盘技术和数据压缩技术的发展为各种形式数据的存储和传输提供了技术保证。 CPU 性能不断提高也为数据压缩提供了有利条件。

Page 11: 第10章 多媒体数据压缩与编码

11

10.1.3 有损压缩与无损压缩 多媒体数据压缩分为有损压缩和无损压缩。 无损压缩算法是为保留原始多媒体对象 (包括图像、语音和视频 )而设计的。无损压缩中,数据在压缩过程中不会改变或损失,解压缩产生的数据是对原始对象的完整复制。当图像冗余度很少 (同类像素重复性很小 )时,无损压缩技术得不到可接受的结果。 有损压缩会造成一些信息的损失,关键问题是看这种损失对图像质量带来的影响。只要这种损失被限制在允许范围内,有损压缩就是可接受的。有损压缩技术主要应用领域是在影像节目、可视电话会议和多媒体网络这样的由音频、彩色图像和视频组成的多媒体应用中。

Page 12: 第10章 多媒体数据压缩与编码

12

10.1.4 对称压缩和不对称压缩 压缩技术的基本方式有两种:即对称压缩和不对称压缩。在对称压缩中,压缩算法和解压缩算法是一样的。是一种可逆操作。对称压缩的优点在于双方都以同一种速度进行操作,例如视频会议这种实时传递的系统便采用对称压缩技术。发送方将实况视频信号用某种算法加以压缩,然后通过通信介质进行传输。接收端收到信号后,再使用同样的算法按逆运算解压缩,使图像解码后重现。 不对称压缩,是指压缩和解压缩的运算速率是不相同的。例如 VCD 的制作与播放便是典型的不对称压缩。在制作 VCD时,将一部电影压缩到 VCD盘片上可能需要花费十几个小时或更多时间,而播放 VCD时,为保证视频的流畅,其解压缩的速度却很快。

Page 13: 第10章 多媒体数据压缩与编码

13

10.1.5 影响数据压缩的几个要素 一个好的压缩方法对多媒体信息的存储和传输是至关重要的,影响压缩性能的主要指标有: 压缩比 对压缩前后的文件大小和数据量进行比较,作为压缩率的衡量指标。人们普遍希望压缩的倍数越高越好,压缩的速度越快越好。但同时人们又希望确保数据压缩的精度,即解压缩的数据和原来的数据最好没有差别,没有数据损失。然而追求压缩比率和追求精度往往是矛盾的,因此就需要在这两者之间权衡取舍。

Page 14: 第10章 多媒体数据压缩与编码

14

图像质量 图像的清晰程度反映出图像的质量。有损压缩可获得较大压缩比,但压缩比过高,还原后的图像质量可能降低。图像质量的评估常采用客观和主观评估两种方法。 客观评估是通过一种具体算法来统计多媒体数据压缩结果的损失。如采用纯误差测度,即原始图像与恢复图像之间的简单数学统计。尽管这种方法将误差量化表达,但并不能反映观察者对误差的视觉感知。 主观评估基于人的视觉感知,因为观察者作为最终视觉信宿,他们能对恢复图像的质量作出直观的判断。方法之一是进行主观测试,让观察者通过观测一系列恢复图像,并与原图像进行比较,再根据损伤的可见程度进行评级,以判断哪种压缩方法的失真少。

Page 15: 第10章 多媒体数据压缩与编码

15

传统的客观评价方法由于只对恢复图像和原始图像的纯误差做数学统计,难以反映图像的视觉差别。如果能在客观评估中引入简单的视觉模型,或者误差的结构特性,便能导致与主观测试更符合的结果。主观评估的好处就是使人一目了然,但是主观评判的结果往往和客观评判并不是一一对应的,有的结果相差很大。然而这种方法容易受观察者背景知识、观测动机、观测环境等等因素的限制和影响。所以,在图像处理技术和压缩编码技术飞速发展的今天,能够准确地对图像质量进行主观评估的客观评估(即数学算法)是亟待解决的难题。

Page 16: 第10章 多媒体数据压缩与编码

16

压缩与解压缩的速度 压缩和解压缩的速度是压缩系统的两项单独的性能度量。在有些应用中,压缩和解压缩都需要实时进行,如电视会议的图像传输。在有些应用中,压缩可以用非实时压缩,而只要解压缩是实时的,如多媒体 CD-ROM 的节目制作。从目前开发的压缩技术来看,一般压缩的计算量比解压缩要大。 压缩速度不仅与采用的压缩方法有关,而且与快速算法的计算量有关,若在算法上有较大突破,无疑将对多媒体的开发与应用产生很大影响。

Page 17: 第10章 多媒体数据压缩与编码

17

执行的硬件与软件 采用什么样的硬件与软件去执行压缩 /解压缩,与采用压缩方案和算法的复杂程度有着密切的关系。设计精巧的简单算法可以在简单的硬件上执行,且执行速度很快。而设计复杂的算法需要在功能强大的软硬件支持下才能运行。但仅靠算法来提高压缩 /解压缩的速度还是有限的。在多数情况下,不得不依靠硬件本身提供的功能去完成,例如采用专用多媒体处理芯片。因此在压缩 /解压缩系统中,速度和硬件之间的选择显得十分重要。

Page 18: 第10章 多媒体数据压缩与编码

18

10.1.6 图像编码技术的发展 经典编码技术 1948 年, Oliver 提出了第一个编码理论——脉冲编码调制 PCM(Pulse Coding Modulation);同年,

Shannon 的经典论文——“通信的数学原理”首次提出并建立了信息率失真函数概念; 1959年, Shannon 进一步确立了码率失真理论,奠定了信息编码的理论基础。 编码方法主要有预测编码、变换编码和统计编码,也称为三大经典编码方法。经典编码技术又称为“第一代”编码技术。

Page 19: 第10章 多媒体数据压缩与编码

19

“ 第一代”视频(图像)编码技术是非常优秀的纹理编码方案,它们能够在中等压缩率的情况下,提供非常好的图像质量,但在非常低的位率情况下,无法为一般的序列提供令人满意的质量。 20世纪 80年代初,“第一代”编码技术达到了顶峰,这类技术去除客观和视觉冗余信息的能力已接近极限。究其原因是由于这些技术都没有利用图像的结构特点,因此它们也就只能以像素或块作为编码对象,另外,这些技术在设计编码器时也没有考虑人类视觉系统的特性。

Page 20: 第10章 多媒体数据压缩与编码

20

“ 第二代”编码方法 “ ”第一代 编码技术以信息论和数字信号处理技术为理论基础,旨在去除图像数据中的线性相关性。其压缩比不高,大约在 10∶1 “ ”左右。为了克服 第一代 视频(图像)编码技术的局限性, Kunt等人于 1985“ ” “ ”年提出 第二代 视频(图像)编码技术。 第二代 编码技术不局限于信息论的框架,而是充分利用人的视

“ ”觉生理、心理和图像信源的各种特征,实现从 波形“ ”编码到 模型 编码的转变,以便获得更高压缩比。其压缩比在 30:1至 70:1 “ ”之间。 第二代 编码方法主要有:基于分形的编码、基于模型的编码、基于区域分割的编码和基于神经网络的编码等。

Page 21: 第10章 多媒体数据压缩与编码

21

“ 第二代”编码方法充分利用了计算机图形学、计算机视觉、人工智能与模式识别等相关学科的研究成果,为视频压缩编码开拓出了广阔前景。但由于“第二代”编码方法增加了分析的难度,所以大大增加了实现的复杂性。从当前发展情况看,“第二代”编码方法仍处于深入研究阶段。如,分形法由于图像分割、迭代函数系统代码的获得非常困难,因而实现起来时间长,算法非常复杂。模型法则仅限于人头肩像等基本的视频上,进一步的发展有赖于新的数学方法和其他相关学科的发展。神经网络的工作机理至今仍不清楚,硬件研制不成功,所以在视频编码中的应用研究进展缓慢,目前多与其他方法结合使用。但由于巨大压缩性能潜力,人们正致力于这些新方法研究之中。

Page 22: 第10章 多媒体数据压缩与编码

22

近来,出现了充分利用人类视觉特性的“多分辨率编码”方法,如子带编码和基于小波变换的编码。这类方法使用不同类型的一维或二维线性数字滤波器,对视频进行整体分解,然后根据人类视觉特性对不同频段的数据进行粗细不同的量化处理,以达到更好的压缩效果。这类方法原理上仍属于线性处理,属于“波形”编码,可归入经典编码方法,但它们又充分利用了人类视觉系统特性,因此可被看作是“第一代”编码技术向“第二代”编码技术的过渡。 用信息熵 H来评价压缩编码在压缩编码中,信息熵 H可用于用熵衡量压缩方法的效果,如果信号序列经压缩后,熵 H不变,则表明信息量没有下降,这种压缩方法是无损的编码方法,所以无损编码又称为熵 (不变 )编码。

Page 23: 第10章 多媒体数据压缩与编码

23

用熵衡量压缩是否为最佳码 如以 N表示编码器输出码字的平均码长, 则当: N>>H(X)时,有冗余,不是最佳,有进一步压缩的潜力; N<H(X) 不可能; N稍大于 H(X)时是最佳码。熵值是平均码长N的下限。

10.1.7 图像编码技术的标准化 图像编码的研究内容是图像数据压缩,其主要应用领域是图像信息通信和存储。当需要对所传输或存储的图像信息进行高比率压缩时,必须采取复杂的图像编码技术。但是,如果没有一个共同的标准,不同系统间不能兼容。除非每一编码方法的各个细节完全相同,否则各系统间的联结十分困难。

Page 24: 第10章 多媒体数据压缩与编码

24

鉴于这一情况, 20世纪 90年代后,国际电信联盟ITU 、国际标准化组织 ISO 和国际电工委员会 IEC在全世界范围内积极工作,制定了一系列静止和活动图像编码的国际标准,现已批准的主要有: JPEG标准、 MPEG 标准、 H.261 标准等。这些标准和建议是在相应领域工作的各国专家合作研究的成果和经验总结。由于这些国际标准的出现,图像编码尤其是视频图像编码压缩技术得到了飞速发展。目前,按照这些标准做的硬件、软件产品和专用集成电路在市场上大量涌现,对现代图像通信的迅速发展及开拓图像编码新应用领域 ( 如多媒体通信、数字高清晰度电视传输等 ) 发挥了重要作用。随着研究不断深入,还将有新的数据压缩编码标准不断推出。

Page 25: 第10章 多媒体数据压缩与编码

25

图 10.1 是图像压缩编码分类的一般方法

图 10.1 图像压缩编码分类的一般方法

Page 26: 第10章 多媒体数据压缩与编码

26

10.2 预测编码 10.2.1 预测编码的基本概念 预测编码是数据压缩理论的一个重要分支,它是根据离散信号之间存在着一定的相关性,利用前面的一个或多个信号对下一信号进行预测,然后对实际值和预测值的差进行编码。就图像压缩而言,预测编码可分为帧内预测和帧间预测两种类型。

Page 27: 第10章 多媒体数据压缩与编码

27

帧内预测编码反映了同一帧图像内,相邻像素点之间的空间相关性较强,因而任何一个像素点的亮度值,均可由它相邻的已被编码的像素点的编码值来进行预测。如果能够准确地预测作为时间函数的数据源的下一个输出将是什么,或者数据源可以准确地被一个数据模型表示,则可以准确地预测数据,然而,实际信号源是不可能满足这两个条件的,因此,只能用一个预测器,预测下一个样值,允许它有些误差。通常使用的误差函数是均方误差(mse):

])ˆ[( 200 SSEmse

Page 28: 第10章 多媒体数据压缩与编码

28

其中: E是数学期望; So 是下一样值的实际值; ̂So 是下一样值的预测值。 若预测根据某一预测模型进行,且模型表达足够好,则只需存储或传输某些起始像素点和模型参数就可以代表整个一幅图像了。这时只要编码很少的数据量,这是极端理想的情况。实际上预测不会百分之百准确,此时可将预测的误差值( 实际值与预测值之差值 ) 存储或传输,一般来讲,误差值要比实际值小得多,这样在同等条件下,就可减少数据编码的比特数,从而也减少了存储和传输的数据量,实现了数据的压缩。

Page 29: 第10章 多媒体数据压缩与编码

29

帧内预测编码典型的压缩方法有差分脉冲编码调制 DPCM和自适应差分脉冲编码调制 ADPCM等,它们比较适合图像与声音数据的压缩。因为这些媒体的数据均由采样得到,相邻采样值之间的差值都不太大,可用较少的比特数表示差值。 预测器是 DPCM的核心,预测器越好,能使差值越小,数据压缩就越多,预测器可采用线性预测或非线性预测,通常采用线性预测作为预测器的设计。

Page 30: 第10章 多媒体数据压缩与编码

30

在MPEG 压缩标准中还采用了帧间预测编码。这是由于运动图像各帧之间有很强的时间相关性。例如,在电视图像传送中,相邻帧的时间间隔只有 1/30秒,大多数像素的亮度信号在帧间的变化是不大的,利用帧间预测编码技术就可减少帧序列内图像信号的冗余度。此外,电视图像的相邻帧间的内容在一般情况下(除场景切换外)实际上没有太大变化,所以相邻帧间有较大相关性,这种相关性称为时域相关性。运动补偿的目地就是要将这种时域相关性尽可能地去除。

Page 31: 第10章 多媒体数据压缩与编码

31

10.2.2 差分脉冲编码 -DPCM

差分脉冲编码调制 DPCM与 PCM 不同,它编码的不是采样样本值,而是样本值及其预测值的差分,即量化的是已知的样本值与预测值之间的差值。 DPCM 是从过去的几个采样值的线性组合来预测推断现在的采样值,进而用实际采样值与预测采样值之差(称作预测误差)及线性预测系数进行编码,从而达到信息压缩的一种方法。

Page 32: 第10章 多媒体数据压缩与编码

32

差分脉冲编码调制的概念如图 10.2 。差分信号 是离散输入信号 和预测器输出的估算值 之差。注意 是对是 预测值,而不是过去样本的实际值。 DPCM 系统实际上就是对这个差值 进行量化编码,用来补偿过去编码中产生的量化误差。它实际上是一个负反馈系统,采用这种结构可以避免量化误差的积累。

)(kd )(kS

)1( kSe)1( kSe )(kS

)(kd

Page 33: 第10章 多媒体数据压缩与编码

33

图 10.2 DPCM工作原理方框图

Page 34: 第10章 多媒体数据压缩与编码

34

重构信号 是由逆量化器产生的量化差分信号 ,与对过去样本信号的估算值 求和得到。以作为预测器确定下一个信号估算值的输入信号。由于在发送端和接收端都使用相同的逆量化器和预测器,所以收发两端可从同一个传送信号 获得相同的量化差分信号 和重构信号 。

)(kS r)(kd q

)1( kSe

)(kS r

)(kI)(kd q

Page 35: 第10章 多媒体数据压缩与编码

35

若预测误差不经量化精确地传到接收端,可无失真地复原原始 PCM 信号。但主观实验表明,对于人眼观看的电视图像来讲,预测误差没必要绝对精确地传到接收方,可以对它再经过一次量化,适当降低精确度,从而获得进一步的码率压缩。这样,虽然由于量化误差的引入造成图像一定程度失真,但若把量化误差限制到主观视觉不能察觉的程度,并不影响图像主观质量。所以,量化器是利用主观视觉特点,挖掘压缩潜力的工具。

Page 36: 第10章 多媒体数据压缩与编码

36

10.2.3 自适应差分脉冲编码 -ADPCM ADPCM 是自适应量化和自适应预测方法的总称。ADPCM 是在 DPCM 方法上的进一步改进,通过调整量化步长,对不同频段所设置的量化字长不同,使数据得到进一步的压缩。

Page 37: 第10章 多媒体数据压缩与编码

37

自适应量化是使量化间隔大小的变化自动地适应输入信号大小变化。它根据信号分布不均匀的特点,使系统具有随输入信号变化而改变量化区间大小,以保持输入量化器的信号基本均匀的能力。自适应量化必须具有对输入信号的幅值进行估计的能力,有了估值才能确定相应的改变量。若估值在信号的输入端进行,称前馈自适应;若在量化输出端进行,称反馈自适应。 预测参数的最佳化依赖于信源的统计特性,而按DPCM采用固定的预测参数往往得不到好的性能。自适应预测不是对输入信号幅度绝对值进行编码,而是对样本之间的差值进行编码。差值不是简单地用样本的绝对值之差,而是通过预测技术使求出的预测值与实际值的均方差尽可能地小 (如图 10.3)。

Page 38: 第10章 多媒体数据压缩与编码

38

图 10.3 ADPCM 编码框图

Page 39: 第10章 多媒体数据压缩与编码

39

10.3 变换编码10.3.1 变换编码的基本方法 变换编码先对信号进行某种函数变换,从信号的一种表示空间变换到信号的另一种表示空间,然后在变换后的域上,对变换后的信号进行编码,其过程如图 10.4所示。

图 10.4 变换编码的工作过程

Page 40: 第10章 多媒体数据压缩与编码

40

变换编码的基本方法是将数字图像分成一定大小的子图像块,用某种正交变换对子像块进行变换,得到变换域中的系数矩阵,然后选用其中的主要系数进行量化编码,由于在变换域中信号的能量比较集中,例如图像信号的能量主要集中在低频部分,若只对主要的低频分量进行编码并作合理的比特分配,则可大大压缩数据量。

Page 41: 第10章 多媒体数据压缩与编码

41

变换编码不是直接对原图像信号压缩编码,而是首先将图像信号进行某种函数变换,从一种信号(空间 ) 映射 (变换 ) 到另一个域中,产生一组变换系数,然后对这些系数量化、编码、传输。在空间上具有强相关性的信号、反映在频域上,是某些特定的区域内能量常常被集中在一起,或是变换系数矩阵的分布具有规律性。我们可利用这些规律,在不同的频域上分配不同的量化比特数,从而达到压缩数据的目的。

Page 42: 第10章 多媒体数据压缩与编码

42

我们知道 ,模拟图像经采样后 ,成为离散化的亮度值。假如把整幅图像一次进行变换 ,则运算比较复杂 ,所需时间较长。通常把图像在水平方向和垂直方向上分为若干子区 , 以子区为单位进行变换。每个子区通常有 8×8个像素点,每个子区的全部像素值构成一个空间域矩阵。

Page 43: 第10章 多媒体数据压缩与编码

43

变换编码是一种有损编码方法,采用不同的变换方式,压缩的数据量和压缩速度都不一样。典型的变换编码有离散余弦变换、 KL变换以及近来流行的小波变换等。实践证明,无论对单色图像、彩色图像、静态图像还是运动图像,变换编码都是非常有效的方法,变换编码抗干扰性较好,有比预测编码更高的压缩比,其缺点是易于产生方块效应。

Page 44: 第10章 多媒体数据压缩与编码

44

10.3.2 变换编码的数学表示 离散变换可以用矩阵表示,设信源序列是一个 n行 k 列的矩阵 X ,例如,对一幅图像进行扫描,从上到下共 n行 ,从左到右取 k个样值。这样形成 n个 k 维的采样向量序列 (x1,x2,…,xn) ,其中, xi=(xi1,xi2,…xik) 是一个 k 维向量。

Page 45: 第10章 多媒体数据压缩与编码

45

这 n个向量构成 n行 k 列的矩阵 X, xij 表示第 i行第 j个样值。假设采用一维变换,设变换后输出序列为 Y ,变换矩阵为 A ,则它们之间的关系是: Y=AX 如果所采取的变换为正交变换,变换矩阵为正交变换矩阵,即 ATA=A-1A=I ,其中 AT为 A 的转置矩阵, T-1为 T的逆矩阵, I为单位矩阵,那么: X=ATY 在接收端用变换矩阵的转置矩阵 AT 与接收序列 Y 相乘便可恢复源序列 X。

公式的意义在于:在变换中,空间域中能量全部转移到变换域中。在反变换中,变换域的能量又能全部转移到空间域中。

Page 46: 第10章 多媒体数据压缩与编码

46

经过变换之后,变换域中总能量不变,但能量将会重新分布。在空间域中,能量分布具有一定的随机性。由于图像有一定的相关性,变换域中能量在大部分情况下,集中于零空间频率或低空间频率对应的变换系数,从而使具有相关性图像的相关性减少。同时由于能量集中于零空间频率和低空间频率所对应的变换域矩阵元素中,我们对这些元素分配较多的比特数,而对能量较少的元素分配较少的比特数或不分配比特数,由于相关性的减少,变换域中分配的总比特数可以比原图像的总比特数少,这样就可以使图像所需传送的比特数减少,达到压缩的目的。

Page 47: 第10章 多媒体数据压缩与编码

47

10.3.3 离散余弦变换 离散余弦变换 DCT(Discrete Cosine Transformation) 具有运算速度快、易于实现等优点,它的快速算法已可由专用芯片来实现,因而被广泛采用。离散余弦变换方法研究较早,技术成熟,图像压缩实践证明 DCT 是许多图像的最佳变换,它允许将 88图像的空间表达式转换为频率域,只需要少量的数据点来表示图像。另外, DCT 算法的性能很好,可以进行高效的运算,因此使它在硬件和软件中都容易实现。目前国际上已经制订了基于离散余弦变换的静止图像压缩标准 JPEG 和运动图像压缩标准MPEG。

Page 48: 第10章 多媒体数据压缩与编码

48

DCT 压缩过程中最关键的步骤是一个称为 DCT 的数学变换。 DCT 和著名的快速傅立叶变换 (FFT)属于同一类数学运算,这类变换的基本运算是将信号从一种表达形式变成另一种表达形式,并且这种变换过程是可逆的,即在两个变换过程中除开舍入误差和截断误差,本质是无损失的。 DCT变换过程相当复杂,对其原理的理解很大程度上取决于对数学理论知识的了解。这里我们不讨论深奥的数学概念,只通过举例说明这个问题。 源图像在进行 DCT变换之前,首先把源图像划分为若干个 8×8像素的子块,然后对 8×8像素块逐一进行 DCT(如图 10.5)变换。例如,如果源图像为 640480的分辨率 (即由 640480像素组成 ),则划分后的图像将包含 8060这样多的子块。

Page 49: 第10章 多媒体数据压缩与编码

49

图 10.5 JPEG将源图像划分为若干个子块,每个子块包含 8×8个像素

Page 50: 第10章 多媒体数据压缩与编码

50

现在我们来理解在 DCT 处理前后数据发生了哪些变化。图像一般可以用灰度 ( 或彩色 ) 来表示,为讨论问题方便,我们取图像中一个被放大了的 8×8个像素的子块作为示例,如图 10.6 所示。假设每个像素的灰度值 ( 或颜色值 ) 用 8比特来表示,那么共有 256个灰度等级 ( 或 256种颜色 ) 。这样,我们可以定义一个 8行×8列的二维数组来表示图像子块中各像素的灰度值和颜色值。于是可得到二维数组矩阵。 不失一般性,如果图像是真彩色图像,即每个像素的颜色值需用 24 比特表示,需要用 3个 8行×8列的数组来表示这个子块。每一个数组表示其中一个 8比特组合的像素值。离散余弦变换作用于每一个数组。

Page 51: 第10章 多媒体数据压缩与编码

51

一个被放大的 8×8个像素的子块表示图像灰度 ( 或颜色 ) 的矩阵 经过离散余弦变换后的频率系数矩阵 T

图 10.6 一个 8×8 个像素的子块的 DCT变换

Page 52: 第10章 多媒体数据压缩与编码

52

进行离散余弦变换,要用到如下公式:

Njy

NixyxPjCiC

NNjiT

N

x

N

y 2)12(cos

2)12(cos),()()(2),(

1

0

1

0

0,,2

1)(),( jijCiC 当

1)(),( jCiC

其中,否则,

Page 53: 第10章 多媒体数据压缩与编码

53

公式表明: DCT 对一个 8×8的矩阵P进行处理,得到一个 8×8的频率系数矩阵。不解释这个公式是怎么来的,它的物理意义是:这个变换的基本运算是将信号从一种表达形式 (空间域,即图像的像素值 )变成另一种等同的表达形式 (频率域,即频率系数 ) ,并且这种变换过程是可逆的。数组 T中每个元素称为变换系数,这些系数都有明确的物理意义:如当i=0,j=0时, P[0][0] 的值称为 DC 系数,它与数组P的平均值有关。 T 矩阵的其余的值称为 AC 系数。随着 i和 j值的增加,相应系数分别代表逐步增加的水平空间频率分量和垂直空间频率分量的大小。

Page 54: 第10章 多媒体数据压缩与编码

54

从矩阵中可以看出有一个倾向:随着元素离 DC 系数越来越远,它的值就越来越小。这意味着通过DCT 来处理数据,已将图像的表示集结到输出矩阵的左上角的系数,这个系数就比其他系数携带了更多关于图像的有用信息,同时 DCT矩阵的右下部分系数几乎不包含有用信息。由于计算机屏幕上的大多数图像都由低频信息构成,因此这一点是很有意义的。这样,系数越来越小,而且对描述图像越来越不重要。所以说 DCT 确定了图像的一部分信息,这些信息可被“扔掉”并且不会对图像的质量带来严重影响。在图像未进行变换前要实现这一点是难以想象的,当图像在空间域描述时要找出哪些像素对图像的全貌是重要的,而哪些是不重要的则相当困难。

Page 55: 第10章 多媒体数据压缩与编码

55

如果离散余弦变换是不可逆运算 ( 即从 DCT 系数中恢复原始像素信息 ) ,那么这种变换是毫无意义的,事实上,有一个逆离散余弦变换 (IDCT)公式能够将频率域的数据重新转换为像素值:

Njy

NixjiTjCiC

NNyxP

N

i

N

j 2)12(cos

2)12(cos),()()(2),(

1

0

1

0

Page 56: 第10章 多媒体数据压缩与编码

56

DCT(IDCT) 算法的计算量比较大 ( 从程序中可以看出,是一个循环的嵌套结构 ) 。如对一幅较高精度的真彩色图像使用 JPEG 压缩时,大约要进行上亿次运算操作,这对实现 JPEG 压缩、编码的软件、硬件设备产品提出了较高的要求。早期的 JPEG 压缩多数做成专用的压缩卡,以专用的高速 CPU芯片实现压缩处理,现在通用的计算机 CPU速度不断提高的情况下, JPEG 压缩也可以用软件来实现。

Page 57: 第10章 多媒体数据压缩与编码

57

DCT 的优点很多,主要表现为: 已证明 DCT 是许多图像的最佳变换 ; DCT 可以将 N×N图像的空间域转换为频率域,只需少量的数据点表示图像; DCT产生的系数很容易被量化,以获得好的块压缩; DCT 算法的性能很好,可以进行高效的运算,因此它在硬件和软件中都容易实现; DCT 算法是对称的,逆 DCT 算法可用来解压缩图像。

Page 58: 第10章 多媒体数据压缩与编码

58

10.3.4 K-L变换 K-L变换 (Karhunen-Loeve)亦称主要成份变换,是一个离散变换。 K-L变换从图像统计特性出发,用一组不相关的系数来表示连续信号,实现正交变换。 K-L 使矢量信号的各个分量互不相关,因而在均方误差准则下,它是失真最小的一种变换,故称作最佳变换。 如果图像信号是一个平稳随机过程, K-L变换的效率最高。通过 K-L变换之后,所有的系数都是不相关的,并且数值较大的方差仅存于少数系数中,这样就有可能在允许的失真度下,把图像数据压缩到最小。

Page 59: 第10章 多媒体数据压缩与编码

59

虽然 K-L变换是最佳正交变换方法,但是由于它没有通用的变换矩阵,因此对于每一个图像数据都要计算相应的变换矩阵,其计算量相当大,很难满足实时处理的要求。所以实际中较少用 K-L变换对图像数据进行压缩。

Page 60: 第10章 多媒体数据压缩与编码

60

10.3.5 小波变换 今天的影像压缩中,动态影像压缩一般采用MPEG 算法,静止影像压缩多采用 JPEG 算法。 MPEG和 JPEG均基于 DCT 。使用 DCT 进行影像压缩的缺陷在于影像的细节、精细信息损失较多,人工处理的痕迹较明显。一种名叫小波压缩的压缩算法引起了人们的注意。

Page 61: 第10章 多媒体数据压缩与编码

61

小波分析方法最早是 1910年 Harr 提出的小“波”规范正交基的概念。到 20世纪 80年代, Stromberg证明了小波函数的存在性, 1984年法国地球物理学家Morlet 在分析地震波的局部性质时,发现传统的付立叶 (Fourier)变换难以达到要求,因而引入小波概念于信号分析中。 1987 年,Mallat将计算机视觉领域内的多尺度分析的思路引入到小波分析中,小波函数的构造以及信号按小波变换的分解与重构,其相应的算法 (称为 Mallat 算法 ) 有效地应用于图像分析与重构。

Page 62: 第10章 多媒体数据压缩与编码

62

近年来,小波变换 (Wavelet Transformation)倍受科学技术界的重视,它不仅在数学上已形成一个新的分支,而且在应用上 ( 如信号处理、图像压缩、模式识别以及众多的非线性科学领域 )被认为是继离散余弦变换之后的一种最具潜力的变换编码技术。由于小波变换具有 Fourier变换所没有的时频特性及多分辨率分析,以及它的快速算法 (Mallat 算法 ) 并不逊色于快速 Fourier变换,因而小波变换一经出现,立即引起了人们的关注,成为当前最为热门的一个研究方向。

Page 63: 第10章 多媒体数据压缩与编码

63

小波变换对图像的压缩类似于离散余弦变换,即都是对图像进行变换,由时域变换到频域,然后再量化,编码,输出。不同之处在于小波变换是对整幅图像进行变换,而不是先对图像进行小区域分割。另外在量化技术上也是采用不同的方法。离散余弦变换是采用一种与人类视觉相匹配的矢量量化表,而小波变换则没有这样的量化表,它主要依据变换后各级分辨率之间的自相似的特点,采用逐级逼近技术实现减少数据存储的目的。

Page 64: 第10章 多媒体数据压缩与编码

64

利用小波变换技术实现对图像、视频及声音的压缩可以取得极好压缩效果。小波压缩的速度很快,而且其还原的影像质量也更为精细 ( 如图10.7)。MPEG 最高压缩比率约为 200∶1 ,对比之下,小波压缩算法对动态影像的压缩比率为480∶1 ,而对静止影像画面的压缩比率也高达 300∶1 以上。小波压缩算法的出现,促进了包括Internet上的视频点播、更高容量和更高画质的CDROM影视节目的创作、交互式电视、图书检索和异地远程视讯会议的发展。

Page 65: 第10章 多媒体数据压缩与编码

65

源图像 小波压缩后重构的图像(压缩比 : 22:1)

图 10.7 小波变换的压缩效果

Page 66: 第10章 多媒体数据压缩与编码

66

基于小波压缩技术的良好性能,美国生产 DSP的著名厂商 Analog Devices公司,已开始提供支持小波压缩的编码 /解码芯片。 Intel公司更是利用小波压缩算法重新设计了它的 Indeo视频交互系统。在新的 Indeo视频交互系统中,舍弃了原来的压缩技术,而采用了更加复杂的基于小波压缩的算法。

Page 67: 第10章 多媒体数据压缩与编码

67

综上所述,由于小波变换继承了 Fourier 分析的优点,同时又克服它的许多缺点,所以它在静态和动态图像压缩领域得到广泛的应用,并且已经成为某些图像压缩国际标准 (如MPEG-4) 的重要环节。当然,像其他变换编码一样,在压缩比特别高的时候,小波变换压缩量化后的重建图像也会产生几何畸变。 由于小波分析克服了 Fourier分析的许多弱点,因此它不仅可以用于图像压缩,还可以用于许多其他领域,如信号分析、静态图像识别、计算机视觉、声音压缩与合成、视频图像分析、 CT成像、地震勘探和分形力学等领域。总之,可以说凡能用 Fourier分析的地方,都可以进行小波分析。小波分析应用前景十分广阔。

Page 68: 第10章 多媒体数据压缩与编码

68

当前,关于小波变换图像压缩算法的研究和应用都十分活跃。国外一些公司将这种技术用于Internet环境中的图像数据传输,提供商业化的服务,对于缓解网络带宽不足、加快图像信息传播速度起到了很好的推进作用。图文资料数字化必然会产生大量的图像数据 ,对于高比率图像压缩算法的需求尤为迫切。作为一种优秀的图像压缩算法,小波变换在这一领域具有非常好的应用前景,也应该能够发挥关键性的作用 .

Page 69: 第10章 多媒体数据压缩与编码

69

10.4 统计编码 预测编码和变换编码是根据去除相关性的原理达到压缩数据的目的。数据之所以能够压缩,主要是由于信源发出的信息序列是有记忆的,元素之间存在相关性,去掉它们之间的相关性之后,数据才被压缩的。那么,相互独立的、无相关性的消息序列构成的无记忆信源能否进行压缩呢?我们知道,信源的熵 H(X)只有在信源符号出现的概率相等时,才达到它的最大值,即使信源符号之间无相关性,只要它们出现的概率不等,那么其熵 H(x) 必然小于最大值,即有冗余信息的存在。既然有冗余度存在,当然对这样的信源也能够采用一定的方法进行压缩。

Page 70: 第10章 多媒体数据压缩与编码

70

统计编码就是根据消息出现概率的分布特性而进行的压缩编码,它有别于预测编码和变换编码。这种编码的宗旨在于,在消息和码字之间找到明确的一一对应关系,以便在恢复时能够准确无误地再现出来,或者至少是极相似地找到相当的对应关系,并把这种失真或不对应概率限制到可容忍的范围内。但不管什么途径,它们总是要使平均码长或码率压低到最低限度。

Page 71: 第10章 多媒体数据压缩与编码

71

统计编码主要针对无记忆信源(是指信源在不同时刻发出的符号之间是无依赖的,彼此统计独立的),根据信息码字出现概率的分布特征而进行压缩编码,寻找概率与码字长度间的最优匹配。统计编码又可分为定长码和变长码。给单个符号或者定长符号组赋相同长度的码字,这就是所谓的定长编码。如果根据符号出现概率的不同赋予长短不一的码字,这是变长编码 (VLC) 方案。 常用的统计编码有 huffman编码、算术编码和行程编码三种。

Page 72: 第10章 多媒体数据压缩与编码

72

10.4.1 哈夫曼 (Huffman) 编码 大多数存储数字的信息编码系统都采用位数固定的定长码,即使用相同位数对数据进行编码。如常用的ASCII 码,用 8位二进制数表示一个英文字符。正象一篇文章中,每个字符出现的频度是不同的。有些字符出现的频率高,有些字符出现的频率低。同样,在一幅图像中,有些图像数据出现的频率高,有些图像数据出现的频率低。如果对出现频率高的数据用较少的比特数来表示,出现频率低的数据用较多的比特数来表示,这样从总的效果看还是节省了存储空间。采用这种办法对数据进行编码时,代码的位数不固定,这种码称为变长码。这种编码思想首先由香农提出,哈夫曼对它提出了改进,用这种方法得到的编码称为哈夫曼码。

Page 73: 第10章 多媒体数据压缩与编码

73

哈夫曼压缩算法的编码思想如下: ⑴将信源符号按概率递减顺序排列; ⑵把两个最小的概率加起来,作为新符号的概率; ⑶重复步骤⑴与⑵,直到概率和等于 1 为止; ⑷完成上述步骤后,再沿路径返回进行编码。寻找从每一信源符号到概率为 1 处的路径,每层有两个分支,分别赋予 0 和 1( 对概率大的赋予编码 0 ,概率小的赋予编码 1 ,反之亦可,但同一过程中赋值的方法必须一致 ) ,从而得到每个符号的编码。 哈夫曼编码示例如图 10.8 所示

Page 74: 第10章 多媒体数据压缩与编码

74

信源 概率 哈夫曼码a1 0.25 01 a2 0.20 11a3 0.18 000a4 0.13 100a5 0.10 101a6 0.09 0010a7 0.05 0011

1

0

0

0 1

0

0

1

1

0

1

0.23

0.14

0.32

0.43

0.57

1

1

图 10.8 哈夫曼编码过程

Page 75: 第10章 多媒体数据压缩与编码

75

对信源进行编码后,形成了一个哈夫曼编码表。在信源的存储与传输过程中必须首先存储或传输哈夫曼编码表。解码时,必须参照这个表才能正确译码。 使用哈夫曼编码方法,要精确地统计出每个信源出现的概率,如果没有这个精确统计最终的编码文件就不会太小。所以哈夫曼方法通常要进行两次扫描:第一遍扫描产生统计结果,第二遍扫描完成编码。

Page 76: 第10章 多媒体数据压缩与编码

76

10.4.2 行程编码 现实中有许多这样的图像,在一幅图像中具有许多颜色相同的图块。在这些图块中,许多行上都具有相同的颜色,或者在一行上有许多连续的像素都具有相同的颜色值。在这种情况下就不需要存储每一个像素的颜色值,而仅仅存储一个像素的颜色值,以及具有相同颜色的像素数目即可,或者存储一个像素的颜色值,以及具有相同颜色值的行数。这种压缩编码称为行程长度编码,用RLE(Run Length Encoding) 表示,具有相同颜色并且是连续的像素数目称为行程长度。

Page 77: 第10章 多媒体数据压缩与编码

77

RLE 所能获得的压缩比有多大,主要取决于图像本身的特点。如果图像中具有相同颜色的图像块越大,图像块数目越少,则获得的压缩比就越高。反之,压缩比就越小。译码时按照与编码时采用的相同规则进行,还原后得到的数据与压缩前的数据完全相同,由此可见, RLE 是一种无损压缩技术。

Page 78: 第10章 多媒体数据压缩与编码

78

RLE 编码方法特别适用于由计算机生成的图像,对于减少图像文件的存储空间非常有效。许多图形文件和视频文件,如 .BMP, .TIF 等都使用了这种压缩。然而, RLE 对颜色丰富的自然图像就显得力不从心。因为在彩色图像中,同一行上具有相同颜色的连续像素往往很少,而连续几行都具有相同颜色值的情况就更少。如果仍用 RLE 编码方法,不仅不能压缩图像,反而使原来的图像数据变得更大。但这并不是说 RLE 编码方案不能用于自然图像的压缩,而是不能单纯使用 RLE 一种编码方法,需要和其他的压缩编码技术联合使用。

Page 79: 第10章 多媒体数据压缩与编码

79

10.4.3 算术编码 算术编码是 Rissomen 提出的一种编码方法,它把信源集合映射到 [0,1]区间之间的一个小区间,用这个小区间里的一个实数表示此信源符号。在不知信源统计的情况下,只要能监视一小段时间内码符号出现的频度,不管是平稳的还是非平稳的信号,编成的码率总能趋近于信源熵值。虽然比 Huffman 编码复杂,但它不需要传送像Huffman 码的码表,具有可构造性,即可以使用迭代方法每次处理一个数据符号且只有算术运算,同时算术编码还有自适应能力的优点,所以是一种很有前途的编码方法,在国际标准 JPEG扩展系统中,建议使用算术编码。

Page 80: 第10章 多媒体数据压缩与编码

80

算术编码可以是静态的或者自适应的。在静态算术编码中,信源符号的概率是固定的。在自适应算术编码中,信源符号的概率根据编码时符号出现的频繁程度动态地进行修改,在编码期间估算信源符号概率的过程叫做建模。需要开发动态算术编码的原因是因为事先知道精确的信源概率是很难的,而且是不切实际的。当压缩消息时,我们不能期待一个算术编码器获得最大的效率,所能做的最有效的方法是在编码过程中估算概率。因此动态建模就成为确定编码器压缩效率的关键。

Page 81: 第10章 多媒体数据压缩与编码

81

符号 00 01 10 11

概率 0.1 0.4 0.2 0.3初始编码间隔 [0, 0.1) [0.1, 0.5) [0.5, 0.7) [0.7, 1)

Page 82: 第10章 多媒体数据压缩与编码

82

10.4.4 关于统计编码模型 要压缩一条信息,首先要分析清楚信息中每个符号出现的概率。不同的压缩程序通过不同的方法确定符号的出现概率,对符号的概率计算得越准确,也就越容易得到好的压缩效果。在压缩程序中,用来处理输入信息,计算符号的概率并决定输出哪个或哪些代码的模块叫做模型。

Page 83: 第10章 多媒体数据压缩与编码

83

因为对信息中字符的出现概率通常难以估计以至于有各种不同的压缩模型。当然,我们可以预先扫描文件中的所有字符,统计出每个字符出现的概率,这种方法在压缩术语里叫做“静态统计模型”。但是,不同的文件中,字符有不同的分布概率,我们要么先花上大量的时间统计我们要压缩的所有文件中的字符概率,要么为每一个单独的文件保存一份概率表以备解压缩时需要。问题是,不但扫描文件要消耗大量时间,保存一份概率表也使压缩后的文件增大了不少。所以,实际应用中,“静态统计模型”应用的很少。

Page 84: 第10章 多媒体数据压缩与编码

84

真正的压缩程序中使用的大多是一种叫“自适应模型”的模型。可以认为自适应模型是一台具有学习功能的自动机。它在信息被输入之前对信息内容一无所知并假定每个字符的出现概率均等,随着字符不断被输入和编码,统计并记录已经出现过的字符的概率并将这些概率应用于对后续字符的编码。也就是说,自适应模型在压缩开始时压缩效果并不理想,但随着压缩的进行,他会越来越接近字符概率的准确值,并达到理想的压缩效果。自适应模型还可以适应输入信息中字符分布的突然变化,可以适应不同的文件中的字符分布而不需要保存概率表。

Page 85: 第10章 多媒体数据压缩与编码

85

Huffman编码、算术编码可以采用自适应模型,根据已经编码的符号频率决定下一个符号的编码。这时,我们无需为解压缩预先保存任何信息,整个编码是在压缩和解压缩过程中动态创建的,而且自适应编码由于其符号频率是根据信息内容的变化动态得到的,更符合符号的局部分布规律,因此在压缩效果上比静态模型好许多。但是,采用自适应模型必须考虑编码表的动态特性,即编码表必须可以随时更新以适应符号频率的变化。

Page 86: 第10章 多媒体数据压缩与编码

86

10.5 其他编码10.5.1 LZW 编码 1977 年,两位以色列教授发明 Lempel-Zev 压缩技术,介绍了查找冗余字符串和将此字符串用较短的符号标记替代的技术,并作了实验。 1985年,美国的 Wekch将此技术实用化,取得了 LZW专利。 哈夫曼编码要求事先编写出一本码簿,但在许多情况下并不知道或无法取得被压缩数据的统计特性。 LZW 是基于“词典编码”的另一种编码方案。其基本思想是用符号代替一串字符,这一串字符可是有意义的,也可是无意义的。用 8位代码表示的图像数据组合起来的一串字符很难说代表什么意义。因此,在词典编码中仅仅把字符串看成是一个号码,而不管它代表什么意思。

Page 87: 第10章 多媒体数据压缩与编码

87

图像数据实际上也是由字符串组成的,在对一幅图像数据进行编码之前首先设置一个编码码表,这个码表可以是已知的 256个字符组成的码表,表的每一栏可看成是由单个字符组成的字符串,并且给每一栏都编一个号码。 在编码图像数据过程中,每读一个字符 (即图像数据 ),就与以前读入的字符串拼接成一个新的字符串,并且查看码表中是否已经有相同的字符串,如果有就用这个字符串的号码来代替这一个字符,如果没有,则把这个新的字符串放到码表中,并且给它编上一个新的号码。编码就变成一边生成码表一边增添新字符串的号码。在数据存储或传输时,只存储或传输号码,而不存储和传输码表本身。在译码时,按照编码时的规则一边生成码表一边还原图像数据。

Page 88: 第10章 多媒体数据压缩与编码

88

LZW 压缩编码也是一种无损压缩编码,目前已经把这种压缩技术成功地集成到 Windows 系统中,用于压缩硬盘上的数据。现在市场上流行的许多图像处理软件都采用了 LZW 算法,用于减少图像所需要的存储空间。 10.5.2 分形编码 分形最早是由 IBM 研究中心的数学家 Benoit

Mandelbrot 于 1967 年在研究海岸线长度时提出来的。海岸线的长度实际上是不确定的,因为其长度取决于测量的尺度。随着尺度的减小,量到的弯曲越多,海岸线将越长。 Mandelbrot 把这种图形叫作分形 (fraction) ,意味不规则。

Page 89: 第10章 多媒体数据压缩与编码

89

分形编码与分形几何相关。什么是分形几何?通俗一点说就是研究无限复杂但具有一定意义下的自相似图形和结构的几何学。什么是自相似呢?例如一棵苍天大树与它自身上的树枝及树枝上的枝杈,在形状上没大的区别,大树与树枝这种关系在几何形状上称之为自相似关系;我们再拿来一片树叶,仔细观察一下叶脉,它们也具备这种性质。这些例子在我们的身边到处可见。分形几何揭示了世界的本质,分形几何是真正描述大自然的几何学。

Page 90: 第10章 多媒体数据压缩与编码

90

分形几何不同于传统的欧氏几何之处在于它更适于描绘自然界复杂的、具有无穷细节的自然景物。如绚丽多姿的云彩,层峦起伏的山脉,弯曲绵延的海岸线等。它的两大工具即是自相似原理及分数维。自相似可以把复杂的景物用极其简单的规则来描述,分数维则用来刻画该物的复杂程度。如一条平直的直线,它的维数是 1;而对于复杂的曲线,它的维数却是介于 12之间的分数维,如果 1.2维或 1.3维等。

Page 91: 第10章 多媒体数据压缩与编码

91

分形编码正是利用了分形几何中自相似的原理来实现的。首先对图像进行分块,然后再去寻找各块之间的相似性,这里相似性的描述主要是依靠仿射变换来确定的,一旦找到了每块的仿射变换,于是就保存下这个仿射变换的系数,由于每块的数据量远大于仿射变换的系数,因而图像得以大幅度的压缩。 10多年来 ,虽然分形图像编码和解码不断改进 ,但仍不够成熟 , 压缩比不够高 ,压缩效果还不十分理想 ,在当前图像压缩编码中还不能占据主导地位。国际标准MPEG-4中已经把小波变换列了进去 ,但分形不在其中。静态图像压缩标准 JPEG2000是完全使用小波的图像编码方法 ,也没有把分形列进去。但我们应该看到分形图像压缩方法的优势和巨大潜力。

Page 92: 第10章 多媒体数据压缩与编码

92

10.5.3 矢量量化编码 矢量量化编码利用相邻图像数据间的高度相关性,将输入图像数据序列分组,每一组m个数据构成一个m维矢量,一起进行编码,即一次量化多个点。根据香农率失真理论,对于无记忆信源,矢量量化编码总是优于标量量化编码。

Page 93: 第10章 多媒体数据压缩与编码

93

编码前,先通过大量样本的训练或学习或自组织特征映射神经网络方法,得到一系列的标准图像模式,每一个图像模式就称为码字或码矢,这些码字或码矢合在一起称为码书,码书实际上就是数据库。输入图像块按照一定的方式形成一个输入矢量。编码时用这个输入矢量与码书中的所有码字计算距离,找到距离最近的码字,即找到最佳匹配图像块。输出其索引 ( 地址 ) 作为编码结果。解码过程与之相反,根据编码结果中的索引从码书中找到索引对应的码字 (该码书必须与编码时使用的码书一致 ) ,构成解码结果。由此可知,矢量量化编码是有损编码。

Page 94: 第10章 多媒体数据压缩与编码

94

10.5.4 子带编码 子带编码技术是一种高质量、高压缩比的图像编码方法。它早已在语音信号压缩编码中获得广泛应用。其基本依据是,语音和图像信号可以划分为不同的频域段,人眼对不同频域段的敏感程度不同。例如图像信号的主要能量集中在低频区域,它反映图像的平均亮度,而细节、边缘信息则集中在高频区域。子带编码的基本思想是利用一滤波器组,通过重复卷积的方法,经取样将输入信号分解为高频分量和低频分量,然后分别对高频和低频分量进行量化和编码。解码时,高频分量和低频分量经过插值和共轭滤波器而合成原信号。进行子带编码的一个关键问题,是如何设计共轭滤波器组,除去混叠频谱分量。

Page 95: 第10章 多媒体数据压缩与编码

95

10.6 静态图像压缩标准 JPEG JPEG(Joint Photographera Experts Group)是一个通用的静态图像压缩标准。该标准制定了有损压缩和无损压缩的编码方案。这个标准适用范围很广,既可用于灰度图像,又可用于彩色图像。如多媒体 CD-ROM ,彩色图像传真,图文档案管理等。

10.6.1 JPEG 概述 JPEG 算法是一种适用于连续色调、多级灰度、静止图像的数字图像压缩编码方法。也是国际上彩色、灰度、静止图像的第一个国际标准。是一个适用范围广泛的通用标准。它不仅适用于静止图像的压缩,电视图像序列的帧内图像的压缩编码,也常采用JPEG 压缩方法。

Page 96: 第10章 多媒体数据压缩与编码

96

JPEG 的目的是为了给出一个适用于连续色调图像的压缩方法,使之满足以下要求: 达到或接近当前压缩比与图形保真度的技术水平,能覆盖一个较宽的图形质量等级范围,能达到“很好”或“极好”的评估,与原始图像相比,人的视觉难以区分。 能适用于任何种类连续色调图像,且长宽比都不受限制,同时也不受限于景物内容、图形复杂程度和统计特性。 计算的复杂性是可控制的,其软件可在各种 CPU上完成,算法也可用硬件实现。

Page 97: 第10章 多媒体数据压缩与编码

97

JPEG 算法的基础是离散余弦变换和哈夫曼变换,它是一种有损压缩。试验表明,经压缩 25 倍还原后的彩色图像与原图相比,对非行家来说很难加以区别 。在损失某些图像信息的情况下, JPEG 可以把图像压缩比提的更高。例如当把 30:1 的压缩比用于一个全彩色的图像帧时,要求的图像存储空间就从 1000K降至 33K ,而数据传输率则降至每秒 1MB ,这就降到了目前大多数存储设备可以处理的范围内了。JPEG压缩分四个步骤实现: 颜色模式转换及采样;DCT变换; 量化; 编码;

Page 98: 第10章 多媒体数据压缩与编码

98

JPEG 的编码过程与译码过程如图 10.9和 10.10 所示

图 10.9 JPEG 的编码步骤

图 10.10 JPEG 的解码步骤

Page 99: 第10章 多媒体数据压缩与编码

99

10.6.2 颜色模式转换及采样 RGB色彩模型是我们最常用的表示颜色的方式。JPEG采用的是 YCbCr色彩系统。这里 Y 代表亮度, Cb和 Cr 则代表色度、饱和度。 JPEG 的图片使用 YCrCb 颜色模型 , 而不是 RGB颜色模型,其中的一个主要理由是人类的眼晴对低频的数据比对高频的数据具有更高的敏感度,同样,人眼对亮度的改变也比对色彩的改变要敏感得多,也就是说 Y 成份的数据是比较重要的。既然 Cb 成份和 Cr 成份的数据比较相对不重要,就可以只取部分数据来处理。以增加压缩的比例。

Page 100: 第10章 多媒体数据压缩与编码

100

JPEG 通常有两种采样方式: 4:1:1 和 4:2:2,它们所代表的意义是 Y、 Cb和 Cr三个成份的数据取样比例。例如在 4:2:2 采样方式中,采用 RGB 模型 , 4个点需要 43=12字节 (想一想为什么是43) ,而在 YcrCb 模型中仅需要 4+2=6字节

Page 101: 第10章 多媒体数据压缩与编码

101

想要用 JPEG基本压缩法处理全彩色图像,得先把 RGB颜色模式图像数据,转换为 YCbCr颜色模式的数据。通过下列计算公式可完成数据转换:Y=0.2990R+0.5870G+0.1140B Cb=-0.1687R-0.3313G+0.5000B+128Cr=0.5000R-0.4187G-0.0813B+ 128

10.6.3 DCT变换 DCT变换(如图 10.11所示)这里进一步讨论 DCT变换前后的空间域矩阵( P矩阵)和频率域矩阵( T矩阵)中数值的物理意义及其联系。

Page 102: 第10章 多媒体数据压缩与编码

102

P矩阵 DCT变换 T矩阵

图 10.11 DCT变换是将空间矩阵P变换为频率矩阵 T

Page 103: 第10章 多媒体数据压缩与编码

103

DCT变换时,输入的图像数据是单个分量的样本数据,它把整幅图分成许多子块,每个子块是一个 8×8样本矩阵。当图像数据分成一个 88 矩阵后,还必须将每个数值减去 128,然后一 一代入 DCT变换公式中,即可达到 DCT变换的目的。图像数据值必须减去 128,是因为 DCT转换公式所接受的数字范围是在 -128到 +127之间。在逆向离散余弦变换后,对重构图像中的每个样本值数据要加上 128。编码时将源图像 8×8样本块矩阵 P中的无符号整数值变成有符号的整数,送给 DCT进行变换,得到 64个 DCT系数矩阵 T。矩阵 T中的数值可以认为对应于 64点输入信号中包含的空间频率的幅度。矩阵 T中左上角的系数为 DC系数,其余的为 AC系数。

Page 104: 第10章 多媒体数据压缩与编码

104

这里面有什么玄机呢 ? 假设所有 P矩阵中所有的值都是一样的。这将对应一幅只包含一种颜色没有任何变化的图像。这时候所有的 AC 系数对应余弦函数的和,它们将相互消去,于是所有的 AC 系数都为 0 。如果 P值中有一点小小的变化,则对应一幅颜色均匀变化而不太精细的图像。在这种情况下,矩阵T将包含许多值为 0的 AC 系数。那将有很多但不是全部的 AC 系数为 0 。如果 P值中有很大的变化,它表示一幅小范围内颜色变化剧烈的图像,或实际上表示一幅有许多精密细节的图像。这时的 AC 系数值为 0 的将很少,或者都不为零。 一般而言,如果像素值作为其位置的函数变化越快,越不均匀,则 AC系数对应越大的数值。另外,有更多的空间频率较高的值不为零。总的来说, AC系数本质上是像素变化的一种尺度。因此,精细的图像要比色彩变化很少的图像难压缩。

Page 105: 第10章 多媒体数据压缩与编码

105

10.6.3 量化量化过程

DCT变换的作用是使空间域的能量重新分布,降低图像的相关性。 DCT变换本身并不能达到数据压缩的作用,而要实现图像压缩,就要选择适当的比特分配方案和量化方法。量化的作用是在保证主观图像质量的前提下,丢掉那些对视觉效果影响不大的信息。量化是一种降低精度的过程,所以是有损的。

Page 106: 第10章 多媒体数据压缩与编码

106

8×8的图像块经过 DCT变换后,其低频分量都集中在左上角,高频分量分布在右下角 (DCT变换实际上是空间域的低通滤波器 ) 。由于该低频分量包含了图像的主要信息 ( 如亮度 ) ,而高频与之相比,就不那么重要了,所以我们可以忽略高频分量,从而达到压缩的目的。如何将高频分量去掉,这就要用到量化,它是产生信息损失的根源 ( 如图 10.12) 。这里的量化操作,就是将某一个值除以量化表中对应的值。由于量化表左上角的值较小,右上角的值较大,这样就起到了保持低频分量,抑制高频分量的目的。

Page 107: 第10章 多媒体数据压缩与编码

107

图 10.12 经量化后,源图像(左)与 IDCT运算后得到的图像(右)会产生一定的失真,失真程度视量化等级而定

Page 108: 第10章 多媒体数据压缩与编码

108

JPEG 标准中采用线性均匀量化器,量化过程为对 64个DCT 系数除以量化步长并取整,量化步长由量化表( 量化矩阵 )决定。量化的计算公式十分简单: 量化值 (i ,j )=(T(i ,j )/量化矩阵 (i ,j ))

由公式可见,当量化值较大时,可保证所有较高频率的分量实际上都将被四舍五入为0。仅在高频系数很大时才将其编码为非0,但这种情况很少出现。 在解码过程中,逆量化公式为: T(i ,j )=量化值 (i ,j )量化矩阵 (i ,j )

不难看出,当使用大的量化值时,在逆量化过程中所用的DCT输出会有大的误差,幸运的是逆量化过程中高频分量的误差不会对图像的质量有严重影响。有许多方案可用来选择量化矩阵中的元素值。

Page 109: 第10章 多媒体数据压缩与编码

109

JPEG推荐的量化表 JPEG使用的颜色是 YCrCb 格式。 Y 分量代表了亮度信息, CrCb 分量代表了色差信息。相比而言, Y分量更重要些。我们可以对 Y 采用细量化,对 YCrCb 采用粗量化,可进一步提高压缩比。所以量化表通常有两张,一张是针对 Y 的,一张是针对 YCrCb 的。 JPEG基本算法包括一套量化表,它是从广泛的实验法中得出的。表 10-3和 10-4分别给出了 JPEG标准所推荐的亮度量化表和色度量化表。量化表中元素为 1-255之间的任意整数,其值规定了所对应 DCT系统的步长。当频率系数经过量化后,将频率系数由浮点数转变为整数,这才便于执行最后的编码。不过,经过量化阶段后,所有数据只保留整数近似值,也就再度损失了一些数据内容。

Page 110: 第10章 多媒体数据压缩与编码

110

16 11 10 16 24 40 51 6112 12 14 19 26 58 60 5514 13 16 24 40 57 69 5614 17 22 29 51 87 80 6218 22 37 56 68 109 103 7724 35 55 64 81 104 113 9249 64 78 87 103 121 120 10172 92 95 98 112 100 103 99

17 18 24 47 99 99 99 9918 21 26 66 99 99 99 9924 26 56 99 99 99 99 9947 66 99 99 99 99 99 9999 99 99 99 99 99 99 9999 99 99 99 99 99 99 9999 99 99 99 99 99 99 9999 99 99 99 99 99 99 99

表 10-3 亮度量化表 表 10-4 色度量化表

Page 111: 第10章 多媒体数据压缩与编码

111

量化表的优化 用户可根据人类视觉和压缩图像类型的特点对量化表进行优化,并作为编码器的一个输入。显然有许多方案可用来选择量化矩阵中元素值。一般用两种实验方法检测不同量化方案,一种是测量输入图像和已解压图像间的数学误差,第二种是用人眼去判断解压后效果。但后者并非总是与误差水平内的数学差异完全一致。在运行时选择量化矩阵的好处是在使用 DCT来压缩图像时控制图像的质量很容易。通过给较大的DCT系数选择特别高的量化步长可获得很好的压缩率,但图像质量很差;通过慎重选择小的量化步长,压缩率不是很好,但图像的质量会很好。这样用户有很大的灵活性,从而可根据所想象的要求存储能力来选择图像的质量。

Page 112: 第10章 多媒体数据压缩与编码

112

10.6.4 编码 JPEG 压缩算法的最后部分是对量化后的图像进行编码。由三步组成: 直流系数( DC)的编码 因为图像中相邻块之间有很强相关性, JPEG 标准对

DC 系数采用 DPCM 编码 (差分编码 ) 方法,即对相邻的 8×8像素块之间的 DC 系数的差值进行编码。经过DCT变换后,低频分量集中在左上角,其中 T(0, 0)( 即第 1 行第 1 列元素 ) 代表了 DC 系数,即 8×8子块的平均值。由于两个相邻的 8×8子块的 DC 系数相差很小,所以对其采用差分编码 DPCM ,可提高压缩比,即对相邻的子块 DC 系数的差值进行编码。这个差值可用公式表示为:

1 iii DCDCDC

Page 113: 第10章 多媒体数据压缩与编码

113

交流系数( AC)编码与 Z 形扫描 T 矩阵有 63个元素是交流 (AC) 系数,可采用行程编码进行压缩。需要考虑的问题是:这 63个系数应该按照怎么样的顺序排列?为了保证低频分量先出现,高频分量后出现,这 63个元素采用了“之”字型 (Zig-Zag)排列方法,称之为 Z 形扫描。 Z 型扫描算法能够实现高效压缩的原因之一是经过量化后,大量的DCT矩阵元素被截成0。而且零值通常是从左上角开始沿对角线方向分布的。由于这么多0值,对0的处理与对其他数的处理不大相同,采用行程编码算法( RLE)沿 Z 型路径可有效地累积图像中0的个数,所以这种编码压缩效率非常高。 Z 型扫描过程如图 10.13。

Page 114: 第10章 多媒体数据压缩与编码

114

图 10.13 Z 字型扫描过程

Page 115: 第10章 多媒体数据压缩与编码

115

63个 AC 系数行程编码的码字用两个字节表示,如图 10.14 所示。

图 10.14 AC 系数行成编码

Page 116: 第10章 多媒体数据压缩与编码

116

熵编码 为了进一步达到压缩数据的目的,需要对 DC码和 AC行程编码的码字再作基于统计特性的熵编码( entropy coding)。 JPEG建议使用两种熵编码方法:哈夫曼编码和自适应二进制算术编码。熵编码可分成两步进行,首先把 DC码行程码字转换成中间符号序列,然后给这些符号赋以变长码字。这个过程比较繁琐,具体实现细节可阅读附参考资料。 JPEG 压缩对比如图 10.15 所示

Page 117: 第10章 多媒体数据压缩与编码

117

源图像质量 ( 文件容量 38384 bytes )

高 质 量 压 缩 ( 文 件 容 量 11331 bytes )

中等质量压缩 ( 文件容量 6968 bytes )

低质量 ( 文件容量为 3687 bytes)图 10.15 JPEG 压缩效果对比

Page 118: 第10章 多媒体数据压缩与编码

118

10.6.5 新一代静态图像压缩标准 (JPEG2000) JPEG 所具有的优良品质,使它获得极大成功。然而,随着多媒体应用领域的激增,传统 JPEG 压缩技术也显示出许多不足,无法满足人们对多媒体图像资料的要求。离散余弦变换将图像压缩为 8×8 的小块,然后依次放入文件中,这种算法靠丢弃频率信息实现压缩,因而图像的压缩率越高,频率信息被丢弃的越多。在极端情况下, JPEG 图像只保留了反映图像外貌的基本信息,精细的图像细节都损失了。 JPEG2000 与传统 JPEG 最大的不同,在于它放弃了 JPEG 所采用的以离散余弦变换为主的区块编码方式,而改为以小波转换 (Wavelet transform) 为主的解析编码方式。

Page 119: 第10章 多媒体数据压缩与编码

119

JPEG2000 主要有以下特点: 高压缩率

JPEG2000压缩性能比 JPEG提高了 30%~ 50%,也就是说,在同样的图像质量下, JPEG2000可以使图像文件的大小比 JPEG图像文件小 30%~50%。同时,使用 JPEG2000的系统稳定性好,运行平稳,抗干扰性好,易于操作。 同时支持有损和无损压缩

JPEG只支持有损压缩,而 JPEG2000 能支持无损压缩。在实际应用中,诸如卫星遥感图像、医学图像、文物照片等重要的图像都非常适合于采用 JPEG2000 压缩。

Page 120: 第10章 多媒体数据压缩与编码

120

实现了渐进传输渐进传输 (Progressive Transmission)是指先传输图像的轮廓,然后逐步传输数据,不断提高图像质量,让图像由朦胧到清晰,而不必像现在的 JPEG那样,由上到下慢慢显示,这在网络传输中有重大意义。 “ ”支持 感兴趣区域 用户可指定图像上感兴趣区域 (Region of Interest)的压缩质量,还可选择指定的部分先解压缩,从而使重点突出。这种方法优点在于它结合了接收方对压缩的主观需求,实现了交互式压缩。 JPEG2000的压缩比在 JPEG的基础上可再提高 10%至 30% 。由于

JPEG2000采用的是小波变换算法,它所产生的压缩图像比 JPEG图像更细腻、更逼真。而它所采用的新的文件格式也更利于对图像进行数字化处理。

Page 121: 第10章 多媒体数据压缩与编码

121

10.7 运动图像压缩标准MPEGMPEG(Motion Picture Experts Group)是运动图像专家小组的英文缩写。这是一个为视频压缩开发制造与平台独立标准的全球性组织。MPEG的活动始于 1988年,其目标是建立一个标准的草案。 JPEG和MPEG都是在 ISO领导下的专家小组,其成员也有很大的交叠。 JPEG的目标集中于静止图像压缩,而MPEG的目标是针对活动图像的数据压缩,但静止图像与活动图像由密切关系。MPEG标准主要有MPEG-1、MPEG-

2、MPEG-4 、 MPEG-7和MPEG-21等。

Page 122: 第10章 多媒体数据压缩与编码

122

MPEG 的第一个成果MPEG-1 于 1992年推出。这成了欧洲 VCD 的基础。由于有限的 352×288 像素分辨率, MPEG-1只适用于家庭环境,而且从现在的眼光看来,其获得的视频质量及数据率相当低。 MPEG-2 于 1995推出,而且主要基于 MPEG-1 。最大为 720×576 的像素以及更高的分辨率大大提高了视频质量。 最新的格式称为 MPEG-4 ,这是由 MPEG 小组在 1999年 12月刚刚发布的。 MPEG-7 为多媒体内容描述接口标准,其标准正在形成中。从MPEG组织成立至今,其任务和方向都发生了很多变化。MPEG-1、MPEG-2和MPEG-4已经是成熟的编码标准,现在的热点主要集中在MPEG-7

和 MPEG-21上。

Page 123: 第10章 多媒体数据压缩与编码

123

10.7.1 MPEG-1 MPEG-1 的标准号为 ISO/IEC 11172 ,标准名称为“信息技术—用于数据速率高达大约 1.5 Mbit/s 的数字存储媒体的电视图像和伴音编码”( Information technology — Coding of moving pictures and associated audio for digital storage media at up to about 1.5 Mbit/s)。MPEG-1 标准 1992年公布,用于传输 1.5Mbps 数据传输率的数字存储媒体运动图像及其伴音的编码。其任务是在一种可接受的质量下,把视频和伴音信号压缩到速率大约为 1.5Mb/s 或更高的单一的 MPEG 数据流。 MPEG-1标准是一个通用标准,既考虑了应用要求,又独立于应用之上。该标准包括MPEG视频、 MPEG 音频和 MPEG 系统三部分。

Page 124: 第10章 多媒体数据压缩与编码

124

MPEG-1视频压缩算法必须有与存储相适应的性质,即能够随机访问、快进/快退、检索、倒放,同时需要音像同步、一定的容错能力、延时控制、可编辑性及灵活的视频窗口格式,这与多媒体技术所要求的交互性相适应,也构成了MPEG-1视频压缩算法的特点。

Page 125: 第10章 多媒体数据压缩与编码

125

在通信网络方面, MPEG-1 标准可适应多种网络,如 ISDN、 LAN 等通信网络,广泛应用于网络上的图像传输。在媒体存储方面,采用 MPEG-1 标准编码的数据可存储在光盘、数字录音带、硬盘、可写磁光盘等媒体中。其中应用最广泛的应属 VCD光盘。 VCD采用 MPEG-1 压缩标准,将图像压缩 25~ 200倍,声音压缩 65 倍,并以数字方式加以记录,可播放长达 74分。 VCD 具有288 线的垂直解象率,图像质量略优于 VHS录象带,且依据 MPEG 编码方式。 VCD 能按节目索引、时间等进行检索,可立即找到用户想要的节目段落的起点。

Page 126: 第10章 多媒体数据压缩与编码

126

10.7.2 MPEG-2 MPEG-2 标准号为 ISO/IEC 13818 ,标准名称为“信息技术 — 电视图像和伴音信息的通用编码(Information technology — Generic coding of moving pictures and associated audio information )”。MPEG-2 标准从 1990年开始研究, 1995年正式成为标准。它是一个直接与数字电视广播有关的高质量图像和声音编码标准。 MPEG-2 可以说是 MPEG-1 的扩充,因为它们的基本编码算法都相同。但 MPEG-2 增加了许多 MPEG-1 所没有的功能,例如增加了隔行扫描电视的编码,提供了位速率的可变性能 (scalability) 功能。MPEG-2 主要针对高清晰度电视 (HDTV) 所需要的视频及伴音信号,与 MPEG-1兼容。 MPEG-2 标准包括对高品质广播视频的相应定义,面向高频带宽度的广播应用。

Page 127: 第10章 多媒体数据压缩与编码

127

MPEG-1和MPEG-2 的基本原则相同,实现细节不同:MPEG-2采用了场处理方式,而MPEG-1只采用了帧处理方式。 MPEG-2视频编码的基本技术与 MPEG-1 不同之处在于 MPEG- 2 有帧和场两种图,预测也分为帧预测和场预测, MPEG-2可对隔行视频源数据进行直接编码,而MPEG-1则不行。可以认为 MPEG-2附加了一些特征、帧格式和编码选项,是 MPEG-1 的超集。MPEG-2 标准将图像分为五个配置( Profiles)和四个等级 (levels) ,由档次和等级组成的组合共有 20 种。其中 11 种组合已达成共识,形成技术规范,用于从低端的电视会议/可视电话到高端的高清晰度电视等不同场合。目前, DVD采用了用于数字视盘和数字电视卫星直播的技术规范,以 1~ 10Mb/s 可变速率进行图像和声音的传输处理,速率大小依据图像复杂程度与声音数据的多少而改变,平均速度为 4.69Mb/ s。 DVD采用MPEG-2 标准,这为与高清晰度电视 HDTV 接轨打下了基础。

Page 128: 第10章 多媒体数据压缩与编码

128

10.7.3 MPEG-4 继成功定义 MPEG-1和MPEG-2之后, MPEG的专家们于 1999 年又推出新的 ISO/IEC 标准MPEG-4。MPEG-4 是目前视频压缩技术的最新发展水平。实际上,数字化电视、交互式图形应用 (如 PC游戏、虚拟环境 )及WWW(万维网)这三个领域的成功促进了 MPEG-4 的诞生。 MPEG-4旨在为视音频数据的通信、存取与管理提供一个灵活的框架与一套开放的编码工具。这些工具将支持大量的应用功能 (新的和传统的 ) 。尤为引人注目的是, MPEG-4 提供的多种视音频 (自然的与合成的 ) 的编码模式使图像或视音频中对象的存取大为便利。这种视频、音频对象的存取,常被称作基于内容的存取。基于内容的检索是它的一种特殊形式。

Page 129: 第10章 多媒体数据压缩与编码

129

MPEG1与MPEG2 最主要的目标是通过数据压缩技术,实现数字音频、视频数据的有效存储和传输。因此,它们所处理的是音频及基于“矩形帧”的视频信息,而其交互功能也仅仅是局限在音频及矩形帧层次上。 MPEG-4 标准支持基于内容的交互功能,以音视频对象 AVO(Audiovisual Object)的形式对AV场景进行描述,这些 AVO 在空间及时间上有一定的关联,分析后,可对 AV场景进行分层描述。因此,MPEG-4 提供了一种崭新的交互方式-基于内容的交互( Content-based Interactivity)

Page 130: 第10章 多媒体数据压缩与编码

130

在视频编码方面, MPEG-4与现有标准相比也有了重要突破。传统图像编码方法依据信源编码理论的框架,将图像作为随机信号,利用其随机特性来达到压缩的目的。这种方法本身未能考虑信息获取者的主观意义与主观特性,未能考虑事件本身的特性如具体含义、重要性以及后果等等。 MPEG-4 的目标在于采用现代图像编码方法,利用人眼的视觉特性,抓住图像信息传输的本质,从轮廓-纹理的思路出发,支持基于视觉内容的交互功能。而实现基于内容交互功能的关键在于基于视频对象的编码,为此 MPEG-4引人了视频会晤 VS 、视频对象 VO 、视频对象层 VOL 及视频对象面 VOP 等概念。

Page 131: 第10章 多媒体数据压缩与编码

131

MPEG-4 支持的应用包括:因特网多媒体;交互式视频游戏;实时可视通信,交互式存储媒体应用 ( 如光盘、 DVD) ,广播电视,演播室技术及电视后期制作,多媒体邮件,移动通信条件下的多媒体应用,远程视频监控等。 用于最新视频格式MPEG-4的应用情况举不胜举:如,现在可以在家用 PC上将DVD转换为MPEG-4格式,然后在笔记本电脑上播放 (无需 DVD-ROM驱动器 )。声频信号能够以MPEG-4压缩通过 Internet “ ”实现 声频点播 。这种数字声频传播之所以能实现是因为它只需约 16kbit/s的宽带。这种情况与视频服务及 2D 或 3D 对象动画相似,这些服务与动画能以不同数据率通过 Internet同时传送。最新的移动无线标准 UMTS也基于MPEG-4压缩技术。在较低数据率及较高视频质量下,MPEG-4使得数码视频市场发生了变革。MPEG-4比MPEG-1与MPEG-2有更好的压缩运算规则。但其序列的编码需要更强的计算能 力。

Page 132: 第10章 多媒体数据压缩与编码

132

10.7.4 MPEG-7 MPEG-7 的目标 今天我们接触到的视听多媒体信息越来越多,而要使用这些信息首先就要定位这些信息。要在日益增长的大量潜在的有用信息中进行这种定位变得越来越困难,这一挑战使人们急需寻找一种能在各种多媒体信息中快速定位有用信息的方法。 MPEG-7 则针对这一需求,提出了相应的解决办法。

MPEG-7 作为 MPEG家庭中的新成员,正式名称叫作“多媒体内容描述接口”,它为各种类型的多媒体信息规定一种标准化的描述,这种描述与多媒体信息的内容本身一起,支持用户对感兴趣的各种 "资料 "进行快速检索。 MPEG-7并不针对某种特殊应用,相反它的标准化的要素将支持尽可能广泛的应用。 MPEG-7 的功能与其他 MPEG 标准互为补充。 MPEG-1 、 MPEG-2和MPEG-4 是内容本身的表示,而MPEG-7 是有关内容的信息。

Page 133: 第10章 多媒体数据压缩与编码

133

MPEG-7 的目标是根据信息抽象层次,提供描述多媒体材料的方法以便表示不同层次用户对信息的需求。以视觉内容为例,较低抽象层包括形状、尺寸、纹理、颜色、运动 (轨道 ) 和位置的描述。对于音频的较低抽象层包括音调、调式、音速、音速变化、音响空间位置。最高层将给出语义信息:如“这是一个场景:一个鸭子正躲藏在树后并有一个汽车正在幕后通过。”中间抽象层也可能存在。抽象层与提取特征的方式有关:许多低层特征能以完全自动的方式提取,而高层特征需要更多交互作用。 MPEG-7还允许依据视觉描述的查询去检索声音数据,反之亦然。MPEG-7的目标支持多种音频和视觉的描述,包括自由文本、 N维时空结构、统计信息、客观属性、主观属性、生产属性和组合信息。对于视觉信息,描述将包括颜色、视觉对象、纹理、草图、形状、体积、空间关系、运动及变形等。

Page 134: 第10章 多媒体数据压缩与编码

134

MPEG-7 的应用领域 音视数据库的存储和检索;广播媒体的选择(广播、电视节目); 因特网上的个性化新闻服务; 智能多媒体; 教育领域的应用; 远程购物; 社会和文化服务;调查服务; 遥感; 监视; 生物医学应用; 建筑、不动产及内部设计等。

Page 135: 第10章 多媒体数据压缩与编码

135

原则上,任何类型的 AV素材可通过任何类型的查询材料来检索,如, AV素材可以通过视频、音乐、语言等来查询,通过搜索引擎来匹配查询数据和MPEG-7 的音视描述。下面给出几个查询例子:音乐:在键盘上弹几个音符就能得到包含(或近似)要求曲调的音乐作品列表,或以某种方式匹配音符的图像,例如,从情感方面。 图形:在屏幕上画几条线就能得到类似图形、标识、表意文字(符号)等的一组图像。 图像:定义物体,包括颜色插补或纹理,就会得到一些例子,从中你可以选择感兴趣的物体来组成图像。 运动:对一组给定的物体,描述在物体之间的运动和关系,就会得到实现所描述的时空关系的动画列表。

Page 136: 第10章 多媒体数据压缩与编码

136

电影拍摄剧本(剧情说明):对给定的内容,描述出动作就会得到发生类似动作的电影拍摄剧本(剧情说明)列表。 嗓音:通过摘选一段世界级著名歌唱家的嗓音,就能得到有关本人情况的列表,包括履历、正在演唱的视频片段等。 MPEG-7 不仅仅用于多媒体信息的检索,更能广泛地用于其他与多媒体信息内容管理相关的领域。许多的应用和应用领域将从 MPEG-7 标准中获得好处。在MPEG-7推荐的应用中实际上蕴涵了许多值得研究的课题。

Page 137: 第10章 多媒体数据压缩与编码

137

10.8 MPEG-1 的实现过程10.8.1 概述 MPEG-1 标准分视频、音频和视频音频同步 3 部分。

MPEG-1压缩的核心是视频,为满足高压缩比和随机访问要求,它采用了一系列技术以获得高压缩比: 对高度与色差信号进行采样,减少数据量;采用运动补偿技术减少帧间冗余度 做二维 DCT变换去除空间相关性 对 DCT 分量进行量化,舍去不重要的信息,将量化后 DCT 分量按照频率重新排序

将 DCT 分量进行变字长编码 对每数据块的直流分量 (DC) 进行预测差分编码

Page 138: 第10章 多媒体数据压缩与编码

138

10.8.2 MPEG-1 图像的类型MPEG-1 由三种类型的图像组成 ( 如图 10.16) :

图 10.16 MPEG 定义的三种帧类型

Page 139: 第10章 多媒体数据压缩与编码

139

I图 (帧内图 Intra Picture) 是对整幅图像采用 JPEG 编码的图像,它是一个独立帧,其信息由自身画面决定,不需参照其他画面而产生,它是 P 图和 B 图的参考图。P图 (前向预测帧 Predicted Picture), 它参照前一幅 I或 P 图像做运动补偿编码。 B 图像 (双向预测 Bidirectional Prediction) ,它参照前一幅和后一幅 I或 P 图像做双向运动补偿编码。 I帧图像采用帧内编码方式,即只利用了单帧图像内的空间相关性,没利用时间相关性。由于 I帧不依赖其他帧,所以是随机存取的入点,是解码的基准帧。 I帧主要用于接收机的初始化和信道的获取以及节目的切换和插入, I帧图像压缩倍数相对较低。 I帧周期性出现在图像序列中,出现频率可由编码器选择。

Page 140: 第10章 多媒体数据压缩与编码

140

P帧和 B帧图像采用帧间编码方式,即同时利用了空间和时间上的相关性。 P帧图像只采用前向时间预测,可以提高压缩效率和图像质量。 P帧图像中可以包含帧内编码的部分,即 P帧中的每一个宏块可以是前向预测,也可以是帧内编码。 B帧图像采用双向时间预测,可以大大提高压缩倍数。值得注意的是,由于 B帧图像采用了未来帧作为参考,因此 MPEG-1编码码流中图像帧的传输顺序和显示顺序是不同的。

Page 141: 第10章 多媒体数据压缩与编码

141

从压缩的程度来看, I 图的压缩率最小;由于P 图只存储当前帧和参考帧的误差信号,因此 P图得到了较大的压缩;而 B 图的压缩率是最大的,这也使得 B帧不能作为预测基准的原因。

Page 142: 第10章 多媒体数据压缩与编码

142

10.8.3 MPEG 的帧序列 MPEG 获得较大压缩率的方法是消除连续帧中的时间冗余。通常无论你在视频上看到如何激烈的动作,两幅连续帧之间的差别总是很小的。 JPEG只压缩一幅单独图像的信息, MPEG 必须处理时间冗余。从根本上讲,这种属于差分编码的技术首先在发送端发送一个基本帧,然后比较后续帧的区别进行编码,压缩后加以传送。接收端能根据第一个基本帧和接收到的差值重建所有的帧。 把这种思想加以扩展就是 MPEG 所做的工作,当然, MPEG 要比这复杂。计算当前帧与前一个帧的差别来处理那些在人的视野中移动的图形非常有效,因为那些图形就在前一个帧中。但它不适用于那些不在前一个帧中的图像。比如说,一个全新的情景就不能这样压缩。新老情景间的差别很大,这时很可能不得不发送新的场景。

Page 143: 第10章 多媒体数据压缩与编码

143

由此带来的一些问题。第一个问题是不同的帧类型出现在一个帧序列中应按什么形式排列。首先要保证 I帧必须在任何帧序列中周期性出现,这是因为差分编码计算适用于帧之间差别极小的情况,但与一个固定帧差别很小的情况总是局限在相对较短的一段时间内,如果出现新的物体,随后情景就会发生改变。这种情况涉及那些藏在某些移动体后面的物体。例如当一个人在一个场景中移动时,前一帧中原本藏在人后面的物体会出现在后续的帧中。让 I帧周期性地出现确保差异是相对于最近的情景进行计算的,它能消除错误的传播。 图 10.16显示了一个典型的MPEG帧序列。两个 I帧之间夹着四个 B帧和一个单独的 P帧。一般而言, B帧的数量会有变化,而在两组 B帧之间通常只有一个 P帧。 P帧基本上是与前一个 I帧的差值,而 B帧是最近的 I帧和 P帧的插人帧。所以,前面的两个 B帧就是第一个 I帧和 P帧的插人帧。后面的两个 B帧就是最后的 I帧和 P帧的插入帧。

Page 144: 第10章 多媒体数据压缩与编码

144

另一个问题是怎样从其他帧重建 P帧和 B帧。一个合理的问题是,如何根据还未收到的帧来插人B帧呢?答案是图 10.17 显示的是播放时看到的帧次序,而不是传送的帧的次序。 P帧在最初的两个B帧前面传送,而第二个 I帧在最后的两个 B帧前面传送。然后 P帧和两个 I帧可以被缓存起来,这样接下来收到的 B帧就可以在观看端进行解码。

图 10.17 典型的 MPEG帧序列 I帧 B帧 B帧 P帧 B帧 B帧 P帧

Page 145: 第10章 多媒体数据压缩与编码

145

10.8.4 宏块 获得高速压缩的关键是去掉尽可能多的冗余,在静止图像压缩方面, MPEG和 JPEG 算法几乎是一样的。首先把图像转换成 YUV空间。 Y 分量被划分成 1616的小块, U及 V 分量被划分成 88 ;然后,把 1616 亮度块再划分成 4个 88 块,这样 88 块就可以进行 DCT变换。由一个 1616像素的亮度信息和两个 88像素的色度信息组成的块称为宏块 ( 如图 10.18) ,一幅静态图像就是由许多这样的宏块组成。对于分辨率为 352240的NTSC制式的一幅图像,有 2215=330 个宏块组成。对于分辨率是 352288的 PAL制式的一幅图像,有 2218=396个宏块组成。

Page 146: 第10章 多媒体数据压缩与编码

146

图 10.18 宏块的组成

Page 147: 第10章 多媒体数据压缩与编码

147

10.8.5 运动补偿 运动补偿算法是当前视频图像压缩技术中使用最普遍的方法之一。帧序列的相邻画面之间的运动部分具有连续性,即当前画面上的图像可以看成是前面画面某时刻画面的位移,位移的幅度值和方向在画面各处可以不同。 运动补偿工作于宏块一级,主要是消除预测图与插补图在时间上的冗余以提高压缩比。运动补偿是一种预测,它不是对每个像素预测,而是以 1616图像块为单位的预测。运动补偿把当前子块认为是前面某个时刻图像块的位移,块位移 (运动矢量 ) 的内容包括运动方向和运动幅度。

Page 148: 第10章 多媒体数据压缩与编码

148

以 P 图来讲,它是把 I 图中的“准宏块”复制过来,拼成的一幅图。称为“准宏块”,是由于它的边界不是 I 图中的 1616 的宏块,它是 I 图中的一个类似块,这一个复制过程称为“运动”。由于 P是 I 的将来,故称为“前向预测”。但把一个类似块复制过来后,与真正的 P 图不吻合,需要修正,这个过程是 MPEG 中所谓的运动补偿。经“补偿”后, P 图与原来没压缩的图像相差无几 ( 如图 10.19) 。 1616的运动矢量块是预测误差,它必须进行编码、传送、供解码恢复图像时使用。不同区域宏块的运动矢量,可有不同的选择,运动矢量的选择范围是基于帧间图像的时间分辨率,和块内图像的时间分辨率,以及帧序列图像的性质而选定。例如,当两个 1616宏块所包含的画面内容在传送中完全静止不动,那么宏块的运动矢量为零(宏块的坐标没有改变)。

Page 149: 第10章 多媒体数据压缩与编码

149

图 10.19 宏预测与运动补偿示意图

Page 150: 第10章 多媒体数据压缩与编码

150

对于每个 16×16宏块的运动信息与其相邻块之间可作不同的编码处理。采用宏块运动补偿方法,可减少电视图像帧间完整图像传送帧数,去除冗余信息,获得高压缩比和良好重建图像质量的压缩效果。

Page 151: 第10章 多媒体数据压缩与编码

151

10.9 H.261与 H.263 H.261视频编码标准是 CCITT(国际电报电话咨询委员会)的建议,这个建议支持实时动态图像的压缩编解码,应用目标是可视电话和电视会议。 H.261又称 P×64 标准,其中 P是一个可变参数,取值范围是 130 ,所以 H.261 的最低传输速度是 64Kb/s, H.261视频编码标准与 MPEG 标准之间有明显的相似性,它们的区别在于, P×64 的目标是为了适应各种信道容量的数据传输,信道能力不同则调整参数,并提供交互控制;而MPEG 的目的是要在狭窄频带上实现高质量的图像和高保真度声音的传递。

Page 152: 第10章 多媒体数据压缩与编码

152

H.261 的视频编码算法是采用的混合编码方法,是基于 DCT(离散余弦变换 ) 的编码方法和带有运动预测的 DPCM(差分脉冲编码调制)预测编码方法的混合。它利用视频信号帧间的相关性,可以获得较大压缩率。 H.261视频压缩算法的核心是运动估值预测和 DCT编码,其许多技术 (包括视频数据格式、运动估算与补偿、 DCT变换、量化和熵编码 ) 都被后来的 MPEG-1和MPEG-2 所借鉴和采用。

Page 153: 第10章 多媒体数据压缩与编码

153

H.263是 ITU-T 关于低于 64kb/s速率的窄带通道视频编码建议,目的是能在现有电话网上传输活动图像。由于 H.263 面向低速信道,所以必须在帧频和图像失真之间作出选择。 H.263 是在 H.261 建议的基础上发展起来的,其信源编码算法仍是帧间预测 /DCT 混合编码, H.263与 H.261 不同的是,它采用半象素的分辨率进行运动补偿,而且, H.263还提供了 4种可协商选择的编码方法:无限制范围的运动矢量、基于语法的算法编码方法、先进预测和 PB帧。 H.263 建议草案于 1995年 11月完成。 虽然在低比特率、低分辨率的应用中 H.263 有其优点,但也有一定局限性。对此,最近 ITU-T对 H.263进行了修改,提出了 H.263+ 建议。 H.263+ 建议增加了许多新技术,以扩大建议的应用范围,提高重建图像的主观质量以及加强对编码比特率的控制。

Page 154: 第10章 多媒体数据压缩与编码

154

小结 数据压缩编码技术概述预测编码变换编码 统计编码 其他编码静态图像他所标准 JPEG运动图像压缩标准MPEG MPEG-1 的实现过程 H.261与 H.263

Page 155: 第10章 多媒体数据压缩与编码

155

作业P254