《数字电视原理》课件-第4章 信源编码原理_第1页
《数字电视原理》课件-第4章 信源编码原理_第2页
《数字电视原理》课件-第4章 信源编码原理_第3页
《数字电视原理》课件-第4章 信源编码原理_第4页
《数字电视原理》课件-第4章 信源编码原理_第5页
已阅读5页,还剩167页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2第4章信源编码原理了解人耳的听觉感知特性,理解听觉阈值、临界频带、听觉掩蔽效应的概念。掌握感知音频编码的基本原理,透彻理解子带编码的基本思想。了解图像和视频编码技术的发展历程,熟悉视频编码的各种方法。重点掌握Huffman编码、算术编码、预测编码和DCT变换编码的基本原理。掌握运动估计和运动补偿预测编码的基本原理。本章学习目标4.1数字音频编码的基本原理4.2数字视频编码概述4.3熵编码4.4预测编码4.5变换编码第4章信源编码原理

例:计算1分钟双声道、16bit量化精度、44.1kHz采样频率声音的不压缩的数据量是多少?1秒钟声音文件的数据量(不压缩):4.1.1数字音频压缩的必要性和可能性4.1数字音频编码的基本原理从信息保持的角度讲,只有当信源本身具有冗余度,才能对其进行压缩。信号一部分可由另一部分重建或可用另外表达形式简单说明,称为信号有冗余。音频信号存在着多种形式的冗余。时域冗余频域冗余听觉冗余去除冗余实现压缩编码。4.1数字音频编码的基本原理音频信号的时域冗余幅度分布的非均匀性小幅度样本出现的频率高样值之间的相关性当采样频率为8kHz时,相邻样本间的相关系数大于0.85;周期之间的相关性在特定瞬间,某段声音往往只是总频带300~3400Hz的少数几个频率分量在起作用象某些振荡波一样,在周期与周期之间存在一定的相关性基音之间的相关性男声基音周期为5~20ms,而典型的浊音持续100ms静止系数(话音间隙)全双工话路的典型效率约为40%(静止系数为0.6)长时自相关性如几十秒内的相关性‘1’‘2’例:语音信号的时域冗余基音周期(音调周期)一个单音‘1’例:语音信号的时域冗余从频域考察音频信号的功率谱密度:非均匀的长时间功率谱密度长时间功率谱呈现强烈的非平坦性,高频能量较低时域上相邻样本相关。语音特有的短时功率谱密度语音的短时功率谱,在某些频率出现峰值(该频率称为共振峰频率),在另外一些频率上出现谷值。出现共振峰的频率不止一个,最主要的是前两个,决定了不同的语音特征。整个谱也随频率增加而递减。功率谱的细节以基音频率为基础,形成高次谐波结构。音频信号的频域冗余音频信号的短时功率谱浊音清音音频信号的频域冗余人耳的听觉感知机理人耳的听觉具有掩蔽效应(MaskingEffect),利用掩蔽效应来掩盖量化失真人耳对音频信号的幅度、频率的分辨能力是有限的人耳对不同频段声音的敏感程度不同,通常对低频比对高频更敏感人耳对语音信号的相位不敏感凡是人耳感觉不到的成分,即对人耳辨别声音的强度、音调、方位没有贡献的成分,称为与听觉无关的“不相关”

(Irrelevance)部分,都可视为是冗余的,可以将它们压缩掉。音频信号的听觉冗余数字音频压缩编码的目的

数字音频压缩编码的目的,是在保证重构声音质量一定的前提下,以尽量少的比特数来表征音频信息,或者是在给定的数码率下,使得解码恢复出的重构声音的质量尽可能高。4.1数字音频编码的基本原理4.1.2人耳的听觉感知特性人耳对不同强度、不同频率声音的听觉范围称为可听域。在人耳的可听域范围内,声音听觉心理的主观感受主要有响度、音调、音色等特征和掩蔽效应、高频定位等特性。响度:与声波振动的幅度有关音调:取决于声波的基音频率音色:由声波的的频谱成分决定人耳的掩蔽效应是心理声学的基础,是感知音频编码的理论依据。4.1数字音频编码的基本原理对于空气介质,当没有声波时,空气处在平衡状态,其静压强一般等于大气压。当有声波传播时,介质各部分能产生压缩和膨胀的周期性变化。压缩时压强增加,大于静压强,这时压强差为正;膨胀时压强减小,小于静压强,这时压强差为负。声压4.1.2人耳的听觉感知特性声压是指声波传播时介质中心的压强与无声波传播时的静压强之差。一般用P表示,单位是帕(Pa)。声压的大小反映了声音振动的强弱,同时也决定了声波的幅度大小。声压与大气压相比是极其微弱的,正常人能听到的最弱声音约为2×10-5Pa,称为参考声压。声压4.1.2人耳的听觉感知特性声压4.1.2人耳的听觉感知特性人耳主观感受的响度并不是正比于声压的绝对值,而是大体上正比于声压的对数值。在声学中还用声压级(或声强)来描述声波的强弱。声压级用符号SPL表示,单位为dB(分贝),定义如下:

式中,P为声压有效值;Pref为参考声压,一般取Pa,这个数值是人耳所能听到的1kHz声音的最低声压值,低于这一声压,人耳就无法觉察出声波的存在了。声压级

4.1.2人耳的听觉感知特性响度:是人耳对声音强弱的主观感觉程度。在客观的度量中,声音的强弱是由声波的振幅(声压)决定的。但响度与声波的振幅并不完全一致。响度不仅取决于振幅的大小,还取决于频率的高低。响度用符号N表示,单位是宋(sone)。国际上规定,频率为1kHz的纯音在声压级为40dB时的响度为1宋(sone)。大量统计表明,一般人耳对声压的变化感觉是,声压级每增加10dB,响度增加1倍,所以,响度与声压级有如下关系:4.1.2人耳的听觉感知特性响度级:人耳对声音强弱的主观感觉还可以用响度级来表示。响度级的单位为方(phon)。响度/sone1248163264128256声压级/dB405060708090100110120响度级/phon405060708090100110120声压级与响度、响度级的关系规定1kHz纯音声压级的分贝数定义为响度级的数值。响度级为40方时,响度为1宋,响度级每增加10方,响度增加1倍。4.1.2人耳的听觉感知特性由于响度是指人耳对声音强弱的一种主观感觉,因此,当听到其他任何频率的纯音同声压级为40dB的1kHz的纯音一样响时,虽然其他频率的声压级不是40dB,但也定义为40phon。

等响度曲线4.1.2人耳的听觉感知特性听阈与痛阈听阈:当声音减弱到人耳刚刚可以听见时,此时的声音强度称为最小可听阈值,简称为“听阈”或“闻阈”。一般以1kHz纯音为准进行测量,人耳刚能听到的声压级为0dB(通常大于0.3dB即有感受)。痛阈:当声音增强到使人耳感到疼痛时,这个听觉阈值称为“痛阈”。仍以1kHz纯音为准来进行测量,使人耳感到疼痛时的声压级约达到130~140dB左右。4.1.2人耳的听觉感知特性人耳的可听域4.1.2人耳的听觉感知特性一个较强声音(掩蔽音)的存在掩蔽了另一个较弱声音(被掩蔽音)的现象。掩蔽程度与两个声音的相关性有密切联系。分为频域掩蔽效应和时域掩蔽效应。较弱的听不见的声音可以舍弃!而不必进行编码,这是数字音频压缩编码的生理基础之一。4.1.2人耳的听觉感知特性听觉掩蔽效应

被掩蔽音单独存在时的听阈分贝值,或者说在安静环境中能被人耳听到的纯音的最小值称为绝对听阈。在掩蔽情况下,提高被掩蔽音的强度,使人耳能够听见时的听阈称为掩蔽阈值(或称掩蔽门限),被掩蔽音必须提高的分贝值称为掩蔽量(或称阈移)。

4.1.2人耳的听觉感知特性听觉掩蔽效应

同时发出的两个声音,一个较弱的信号被另一个相近频率的较强信号的声音所掩蔽。又称同时掩蔽。两个声音频率相同时,掩蔽效应最明显在高频端,随着两者频率偏离,掩蔽效果缓慢减弱在低频端,随着两者频率偏离,掩蔽效应急剧减小4.1.2人耳的听觉感知特性频域掩蔽频域掩蔽示意图

4.1.2人耳的听觉感知特性在时间上相邻的声音之间存在的掩蔽现象。也称异时掩蔽。前掩蔽:掩蔽效应发生在掩蔽音开始之前的某段时间后掩蔽:掩蔽效应发生在掩蔽音结束之后的某段时间4.1.2人耳的听觉感知特性时域掩蔽感知编码(PerceptualCoding)是利用人耳听觉的心理声学特性(包括频域掩蔽和时域掩蔽),人耳对音频信号的幅度、频率和时间的分辨能力是有限的,凡是人耳感觉不到的成分都不进行编码和传送;对感觉到的部分进行编码时,也允许有较大的量化失真,只要这个失真是在人耳感觉不到的听域以下即可。感知编码是建立在人类听觉系统的心理声学基础上的,只记录那些能够被人耳感觉到的声音,从而达到压缩数据量的目的。感知编码的理论基础是基于人耳的可听域、临界频带和掩蔽效应。

4.1.3音频感知编码原理音频感知编码器的基本结构

4.1.3音频感知编码原理PCM,DPCM都是不对输入信号频带做任何分割的前提下,在时域中进行的处理,这类编码方式称为整带时域编码。子带编码首先使用带通滤波器组将输入信号分割成几个不同的子带信号,再对这些子带信号分别进行频谱平移,然后分别对每个子带中的音频信号采用单独的量化、编码方案(可用PCM、APCM和ADPCM等)。这类编码方式称为频域编码。4.1.3音频感知编码原理子带编码(SBC)子带编码原理4.1.3音频感知编码原理4.1.3音频感知编码原理子带编码原理如果对不同的子带合理分配比特数,就可能分别控制各子带的量化电平数目以及相应的重建信号的量化误差,使误差谱的形状适应人耳听觉特性,得到更好的主观听觉质量。由于语音的基音和共振峰主要集中在低频段,所以对低频段采用较多的比特数来表示样值,而高频段则采用较少的比特数。各个子带内的量化噪声相互独立,可以避免输入电平较低的子带信号被其他子带的量化噪声所淹没。4.1.3音频感知编码原理子带编码的主要优点

1976年子带编码技术首次被美国贝尔实验室的R.E.Crochiere等人应用于话音编码。

MUSICAM(MaskingpatternadaptedUniversalSubbandIntegratedCodingAndMultiplexing,掩蔽型自适应通用子带综合编码和复用)编码方案,已被MPEG采纳作为宽带、高质量的音频压缩编码标准。4.1.3音频感知编码原理4.1数字音频编码的基本原理4.2数字视频编码概述4.3熵编码4.4预测编码4.5变换编码第4章信源编码原理4.2.1数字视频压缩的必要性和可能性数据压缩的理论基础是信息论。从信息论的角度来看,压缩就是去掉数据中的冗余,即保留不确定的信息,去掉确定的信息(可推知的),也就是用一种更接近信息本质的描述来代替原有冗余的描述。在一般的图像和视频数据中,主要存在以下几种形式的冗余。空间冗余:也称为空域冗余,是一种与像素间相关性直接联系的数据冗余。

例:图像中包含许多规则物体,它们的亮度、饱和度及颜色可能都一样,因此,图像在空间上具有很强的相关性。例如Lenna图像的脸部和肩部。4.2.1数字视频压缩的必要性和可能性时间冗余:也称为时域冗余,它是针对视频序列图像而言的。

视频序列每秒有25~30帧图像,相邻帧之间的时间间隔很小;同时实际生活中的运动物体具有运动一致性,使得视频序列图像之间有很强的相关性。

4.2.1数字视频压缩的必要性和可能性t+1t时间冗余空间冗余4.2.1数字视频压缩的必要性和可能性统计冗余

信源熵:如果将信源所有可能事件的信息量进行平均,就得到了信源熵(entropy)。熵就是平均信息量。

当xj等概率时,H(X)最大。当xj

非等概率时,H(X)不是最大,就存在冗余。

采用可变长编码技术,对出现概率大的符号用短码字表示,对出现概率小的符号用长码字表示,则可去除符号冗余,从而节约码字,这就是熵编码的思想。4.2.1数字视频压缩的必要性和可能性结构冗余:在有些图像的部分区域内有着很相似的纹理结构,或是图像的各个部分之间存在着某种关系,例如自相似性等,这些都是结构冗余的表现。

分形图像编码的基本思想就是利用了结构的自相似性。4.2.1数字视频压缩的必要性和可能性分形图像4.2.1数字视频压缩的必要性和可能性知识冗余:在某些特定的应用场合,编码对象中包含的信息与某些先验的基本知识有关。例如:人脸的图像有同样的结构:嘴的上方有鼻子,鼻子上方有眼睛,鼻子在中线上……

可以利用这些先验知识为编码对象建立模型。通过提取模型参数,对参数进行编码而不是对图像像素值直接进行编码,可以达到非常高的压缩比。这是模型基编码(或称知识基编码、语义基编码)的基本思想。4.2.1数字视频压缩的必要性和可能性人眼的视觉冗余

视觉冗余度是相对于人眼的视觉特性而言的。压缩视觉冗余的核心思想是去掉那些相对人眼而言是看不到的或可有可无的图像数据。对视觉冗余的压缩通常反映在各种具体的压缩编码过程中。4.2.1数字视频压缩的必要性和可能性1948年提出电视信号的数字化,人们开始了对图像压缩编码的研究工作。1952年哈夫曼给出最优变长码的构造方法。4.2.2数字视频编码技术的进展预测编码1952年,贝尔实验室的奥利弗等人开始研究线性预测编码理论1958年,格雷哈姆用计算机模拟法研究图像的DPCM方法1966年,奥尼尔通过理论分析和计算模拟比较了PCM和DPCM对电视信号进行编码传输的性能20世纪70年代开始进行了帧间预测编码的研究20世纪80年代初开始对作运动补偿预测所用的运动估值进行研究4.2.2数字视频编码技术的进展变换编码首先讨论了包括K-L(Karhunen-Loeve)变换、傅立叶变换等正交变换1968年安德鲁斯等人采用二维离散傅立叶变换(2D-DFT)提出了变换编码此后相继出现了沃尔什-哈达玛(Walsh-Hadamard)变换、斜(Slant)变换、K-L变换、离散余弦变换(DCT)等4.2.2数字视频编码技术的进展子带编码1976年美国贝尔系统的克劳切等人提出了话音的子带编码。1985年奥尼尔将子带编码引入到图像编码。4.2.2数字视频编码技术的进展算术编码1960年,P.Elias提出了算术编码的概念。1976年,R.Pasco和J.Rissanen分别用定长的寄存器实现了有限精度的算术编码。1979年Rissanen和G.G.Langdon一起将算术编码系统化,并于1981年实现了二进制编码。1987年Witten等人发表了一个实用的算术编码程序,即CACM87(后被ITU-T的H.263视频压缩标准采用)。同期,IBM公司发表了著名的Q-编码器(后被JPEG建议的扩展系统和JBIG二值图像压缩标准采用)。4.2.2数字视频编码技术的进展基于模型编码1983年瑞典的Forchheimer和Fahlander提出了基于模型编码(Model-BasedCoding)的思想。4.2.2数字视频编码技术的进展小波变换编码1986年,Meyer在理论上证明了一维小波函数的存在。1987年Mallat提出了多尺度分析的思想及多分辨率分析的概念,提出了相应的快速小波算法——Mallat算法,并把它有效地应用于图像分解和重构。1989年,小波变换开始用于多分辨率图像描述。4.2.2数字视频编码技术的进展分层可分级编码20世纪90年代中后期,Internet迅猛发展,移动通信也迅速在全球普及,因此人们开始有了在网络上传输视频和图像的愿望。在网络上传输视频和图像等多媒体信息除了要解决误码问题之外,最大的挑战在于用户可以获得的带宽在不停地变化。为了适应网络带宽的变化,提出了分层(layered)、可分级(scalable)编码的思想。4.2.2数字视频编码技术的进展1950差分预测编码调制隔行编码B帧P帧场景自适应编码块运动估计DCT

宏块混合编码哈夫曼编码变换编码运动矢量预测视频对象基于对象的可分级编码容错一般的B帧高级的去块效应虑波基于位平面的可伸缩编码高精度运动补偿基于上下文的算术编码2014多视点编码分布式编码1999~1985专利可免费使用专利可免费使用4.2.2数字视频编码技术的进展压缩编码技术无损编码有损编码哈夫曼编码游程编码算术编码有损预测编码

变换编码

其他编码4.2.2数字视频编码技术的进展无失真编码

无失真编码又称无损编码、信息保持编码、熵编码。熵编码是纯粹基于信号统计特性的一种编码方法,它利用信源概率分布的不均匀性,通过变长编码来减少信源数据冗余,解码后还原的数据与压缩编码前的原始数据完全相同而不引入任何失真。

无失真编码的压缩比较低,可达到的最高压缩比受到信源熵的理论限制,一般为2∶1到5∶1。最常用的无失真编码方法有哈夫曼(Huffman)编码、算术编码和游程编码(Run-LengthEncoding,RLE)等。4.2.2数字视频编码技术的进展限失真编码

限失真编码也称有损编码、非信息保持编码、熵压缩编码。

限失真编码方法利用了人类视觉的感知特性,允许压缩过程中损失一部分信息,虽然在解码时不能完全恢复原始数据,但是如果把失真控制在视觉阈值以下或控制在可容忍的限度内,则不影响人们对图像的理解,却换来了高压缩比。在限失真编码中,允许的失真愈大,则可达到的压缩比愈高。

常见的限失真编码方法有:预测编码、变换编码、矢量量化、基于模型的编码等。4.2.2数字视频编码技术的进展4.1数字音频编码的基本原理4.2数字视频编码概述4.3熵编码4.4预测编码4.5变换编码第4章信源编码原理4.3熵编码

熵编码的基本原理就是去除图像信源在空间和时间上的相关性,去除图像信源像素值的概率分布不均匀性,使编码码字的平均码长接近信源的熵而不产生失真。由于这种编码完全基于图像的统计特性,因此,有时也称其为统计编码。哈夫曼(Huffman)编码算术编码游程编码(Run-LengthEncoding,RLE)

哈夫曼(Huffman)于1952年提出一种编码方法,完全依据符号出现概率来构造异字头(前缀)的平均长度最短的码字,有时称之为最佳编码。哈夫曼编码是一种可变长度编码(VariableLengthCoding,VLC),各符号与码字一一对应,是一种分组码。4.3.1哈夫曼编码

Huffman编码过程(1)

把信源符号按概率大小顺序排列,并设法按逆次序分配码字的长度。在分配码字的长度时,首先将出现概率最小的两个符号的概率相加,合成一个概率;第二步把这个合成概率看成是一个新组合符号的概率,重复上述操作,直到最后只剩下两个符号的概率为止。4.3.1哈夫曼编码

完成以上概率相加顺序排列后,再反过来逐步向前进行编码,每一步有两个分支,各赋予一个二进制码,可以对概率大的编码赋予0,概率小的编码赋予1。反之,也可以对概率大的编码赋予1,概率小的编码赋予0。

Huffman编码过程(2)4.3.1哈夫曼编码

Huffman编码举例编码过程cbafe7/225/224/222/2210f=01e=11a=10b=001c=0001d=0000d1/223/226/2222/2213/229/223/2210101010aaaa

bbb

cc

d

eeeee

fffffff输入S1S2S3S4S5S6输入概率0.40.30.10.10.060.04

Huffman编码举例输入S1S2S3S4S5S6输入概率0.40.30.10.10.060.04第一步0.40.30.10.10.1

Huffman编码举例输入S1S2S3S4S5S6输入概率0.40.30.10.10.060.04第一步0.40.30.10.10.1第二步0.40.30.20.1

Huffman编码举例输入S1S2S3S4S5S6输入概率0.40.30.10.10.060.04第一步0.40.30.10.10.1第二步0.40.30.20.1第三步0.40.30.3

Huffman编码举例输入S1S2S3S4S5S6输入概率0.40.30.10.10.060.04第一步0.40.30.10.10.1第二步0.40.30.20.1第三步0.40.30.3第四步0.60.4

Huffman编码举例输入S1S2S3S4S5S6输入概率0.40.30.10.10.060.04第一步0.40.30.10.10.1第二步0.40.30.20.1第三步0.40.30.3第四步0.60.40101010101

Huffman编码举例输入S1S2S3S4S5S6输入概率0.40.30.10.10.060.04第一步0.40.30.10.10.1第二步0.40.30.20.1第三步0.40.30.3第四步0.60.40101010101S1=1

Huffman编码举例输入S1S2S3S4S5S6输入概率0.40.30.10.10.060.04第一步0.40.30.10.10.1第二步0.40.30.20.1第三步0.40.30.3第四步0.60.40101010101S2=00

Huffman编码举例输入S1S2S3S4S5S6输入概率0.40.30.10.10.060.04第一步0.40.30.10.10.1第二步0.40.30.20.1第三步0.40.30.3第四步0.60.40101010101S3=011

Huffman编码举例输入S1S2S3S4S5S6输入概率0.40.30.10.10.060.04第一步0.40.30.10.10.1第二步0.40.30.20.1第三步0.40.30.3第四步0.60.40101010101S4=0100

Huffman编码举例输入S1S2S3S4S5S6输入概率0.40.30.10.10.060.04第一步0.40.30.10.10.1第二步0.40.30.20.1第三步0.40.30.3第四步0.60.40101010101S5=01010

Huffman编码举例输入S1S2S3S4S5S6输入概率0.40.30.10.10.060.04第一步0.40.30.10.10.1第二步0.40.30.20.1第三步0.40.30.3第四步0.60.40101010101S6=01011

Huffman编码举例例:信源有四个符号:

Xa1a2a3a41/21/41/81/8信源熵:Huffman(二进制编码)a1a2a3a4010110111

平均码长:Iav=(1/2)

1+(1/4)

2+(1/8)

6=1.75bit/字符编码效率:

=1.75/1.75=100%

编码冗余:R=0a11/2a21/4a31/8a41/800011/211/410101101114个符号的等长码:

B=log24=2bita1a2a3a400011011L=2

编码效率:

=H(X)/L=1.75/2=87.5%Huffman编码举例:原信源输出序列:a1

a2a1a3a2

a1a1

a4…..

编码后的序列:01001101000111...Huffman码解码Huffman码是非歧义的,在解码过程中,对某个码字的解释是唯一的。原信源输出序列:a1a2a1a3a2a1a1a4…..,编码后的序列:01001101000111...当接收端收到码流01001101000111……时,按照码表,以0开头的码字只有0,因此,解出第1个符号为a1;去掉已解码的0后,码流剩下1001101000111,以1开头,第2比特是0,因此,码字是10,因此,解出第2个符号为a2;……..顺着码树解码,树根→树干→树枝→树叶00010a110a211110a3111a4码树结构00010a110a2110a3111a411哈夫曼编码的特点哈夫曼编码的算法是确定的,但编出的码并非是唯一的。由于哈夫曼编码的依据是信源符号的概率分布,故其编码效率取决于信源的统计特性。哈夫曼码没有错误保护功能。哈夫曼码是可变长度码,码字字长参差不齐,输出码率是变化的。因此,对于恒定码率信道,需要增加输出缓存器来平滑。对信源进行哈夫曼编码后,形成了一个哈夫曼编码表,解码时,必须参照这一哈夫编码表才能正确解码。4.3.1哈夫曼编码4.3.1哈夫曼编码从理论上分析,采用哈夫曼编码可以获得最佳信源字符编码效果;实际应用中,由于信源字符出现的概率并非满足2的负幂次方,因此往往无法达到理论上的编码效率和压缩比。4.3.2算术编码设字符序列{x,y}对应的概率为{1/3,2/3},Nx和Ny分别表示字符x和y的最佳码长,则根据信息论有:

4.3.2算术编码字符x、y的最佳码长分别为1.58bit和0.588bit;这表明,要获得最佳编码效果,需要采用小数码字长度,这是不可能实现的;即采用哈夫曼方法对{x,y}的码字分别为0和1,也就是两个符号信息的编码长度都为1。对于出现概率大的字符y并未能赋予较短的码字;实际编码效果往往不能达到理论效率;为提高编码效率,Elias等人提出了算术编码算法。4.3.2算术编码

算术编码是一种非分组编码,它用一个浮点数值表示整个信源符号序列。算术编码将被编码的信源符号序列表示成实数半开区间[0,1)中的一个数值间隔。这个间隔随着信源符号序列中每一个信源符号的加入逐步减小,每次减小的程度取决于当前加入的信源符号的先验概率。4.3.2算术编码符号序列S3S3S2S4……为例S1S2S3S4S1S2S3S4S1S2S3S401/83/87/81.000.0010.0110.1111.00.0110.1110.01110.10010.1101在算术编码中通常采用二进制分数表示概率,每个符号所对应的概率区间都是半开区间,即该区间包括左端点,而不包括右端点,如S1对应[0,0.001),S2

对应[0.001,0.01)等。4.3.2算术编码算术编码基本法则两个参量:编码点(指针所指处)C和区间宽度A。初始状态编码点(指针所指处)C=0

区间宽度A=1.0新编码点C=原编码点C+原区间A×Pi

新区间A=原区间A×pi序列S3S3S2S4……的编码过程:第1个符号(S3):C=0+1×.011=.011

A=1×.1=.1

第2个符号(S3):C=.011+.1×.011=.1001

A=.1×.1=.01第3个符号(S2):C=.1001+.01×.001=.10011A=.01×.01=.0001第4个符号(S4):C=.10011+.0001×.111=.1010011(输出的码字)

A=.0001×.001=.0000001符号Si

对应的累积概率符号Si

对应的概率最后区间的一个数输出算术编码-解码算法解码采取与编码过程相反的步骤把接收到的码字串指向其对应的子区间,得到此子区间对应的符号,即为解码后的符号。即从码字串中减去已解码符号的子区间的左端点的数值(累积概率),并将差值除以该子区间的宽度(概率值),得到新的码字串。上述例子当收到字码串(.1010011)时,其指向子区间[.011,.111],对应于S3,因此,得到第1个符号为S3。新码字串:(.1010011-.011)÷(.1)=0.100011,新码字串仍然指向子区间[.011,.111],因此,第2个符号仍为S3。其它符号依次类推游程编码,也称行程编码或游程(行程)长度编码(RunLengthEncoding,RLE)游程:具有相同灰度值的像素序列。游程长度:灰度值相同的相邻像素的数目。游程编码思想:去除像素冗余。用游程的灰度和游程的长度代替游程本身。例:设重复次数为iC,重复像素值为iP

编码为:iPiCiPiCiPiC

编码前:aaaaaaabbbbbbcccccccc

编码后:a7b6c84.3.3游程编码由于一幅图像中有许多颜色相同的图块,用一整数对存储一个像素的颜色值及相同颜色像素的数目(长度)。例如:(G,L)

长度颜色值编码时采用从左到右,从上到下的排列,每当遇到一串相同数据时就用该数据及重复次数代替原来的数据串。000000003333333333222222222226666666111111111111111111111111555555555555888888888888888888555555555555553333222222222222222222(0,8)(3,10)(2,11)(6,7)(1,18)(1,6)(5,12)(8,18)(5,14)(3,4)(2,18)18*7的像素颜色仅用11对数据4.3.3游程编码4.1数字音频编码的基本原理4.2数字视频编码概述4.3熵编码4.4预测编码4.5变换编码第4章信源编码原理4.4预测编码

预测编码的基本原理就是利用图像数据的相关性,利用已传输的像素值对当前需要传输的像素值进行预测,然后对当前像素的实际值与预测值的差值(即预测误差)进行编码传输,而不是对当前像素值本身进行编码传输,以去除图像数据中的空间相关冗余或时间相关冗余。预测编码:根据某一模型,利用信号以往的样本值对新样本值进行预测,对预测误差进行编码。对于相关性较强的信号,如果建立合适的模型,预测误差的幅值将远远小于原始信号,从而可以用较少的量化级对其误差信号进行量化,得到较大的数据压缩效果。4.4.1帧内预测编码问题:能否精确地预测数据源输出?答案:否数据源是不确定的几乎没有一个实际的系统能找到可以精确预测输出的模型能找到的最优预测模型是以某种最小误差意义下的预测模型。4.4.1帧内预测编码对于静止图像,由于相邻像素具有很强的相关性,这样当前像素的灰度(颜色)值可用前面已经出现的像素值进行预测,得到一个预测值,对实际值与预测值的差值进行编码,4.4.1帧内预测编码4.4.1帧内预测编码1.DPCM系统的基本原理

DPCM(DifferentialPulseCodeModulation,差分脉冲编码调制)DPCM工作原理源信号

预测信号误差信号量化量化产生的误差

4.4.1帧内预测编码DPCM工作原理

理想系统重建信号信号的重建误差=量化误差当解码器能精确地获得预测信号时4.4.1帧内预测编码

实际系统重建信号

当解码器不能精确地获得预测信号时4.4.1帧内预测编码

实际重建信号

信号重建误差=量化误差+累计误差4.4.1帧内预测编码2.预测模型

设时刻之前的样本值与预测值之间的关系呈现某种函数形式线性预测编码器非线性预测编码器4.4.1帧内预测编码

在图像数据压缩中,常用如下几种线性预测方案:前值预测,即一维预测,即采用同一扫描行中前面已知的若干个样值来预测。二维预测,即不但用同一扫描行中的前面几个样值,而且还要用以前几行扫描行中样值来预测。

4.4.1帧内预测编码(1)(2)最优线性预测a1,a2,a3为预测系数a1,a2,a3为最佳线性预测系数可以证明,若图像符合平稳的马尔可夫过程,则可以直接用相关系数来确定预测系数最优线性预测4.4.2帧间预测编码序列图像在时间上的冗余情况可分为如下几种:对于静止不动的场景,当前帧和前一帧的图像内容是完全相同的。对于运动的物体,只要知道其运动规律,就可以从前一帧图像推算出它在当前帧中的位置。摄像机对着场景的横向移动、焦距变化等操作会引起整个图像的平移、放大或缩小。对于这种情况,只要摄像机的运动规律和镜头改变的参数已知,图像随时间所产生的变化也是可以推算出来的。

帧间预测的依据:图像序列在时间轴方向的相关性;物体的背景或物体的一部分相对不变或变化缓慢;人类的视觉特性:人类的视觉对静止图像有较高的空间分辨率,但是可以减少传输帧数来降低时间轴分辨率,未传输的帧可以通过计算补出来;对运动图像分辨率低,可以对这一部分图像降低清晰度。4.4.2帧间预测编码为什么进行运动补偿预测?对于活动图像编码,帧间预测是主要的手段;基本帧间预测方法对于存在大量静止区域或缓变区域的图像,预测效果不错;对于活动的物体,预测效果不理想;对于一些发生运动的图像进行预测编码,采用运动补偿预测的方法。4.4.2帧间预测编码运动补偿预测

4.4.2帧间预测编码运动补偿预测的基本原理:自然场景的视频图像只有其中的部分区域在运动,同一场景相邻的两帧图像之间差异也不会太大,编码器无需将视频序列中每帧图像的所有信息都进行编码后传输给解码器端,只要将当前帧中目标的运动信息告知解码器端,解码器可根据运动信息和前一帧图像内容来更新当前帧图像,获得当前帧的真实数据。(可有效降低编码所需数据量)从序列图像中提取有关物体运动的信息的过程——运动估计(如何快速、有效的获得足够精度的运动矢量);把前一帧相应的运动部分信息根据运动矢量补偿过来的过程——运动补偿(MotionCompensation,MC)。4.4.2帧间预测编码

运动估计——将当前帧活动图像分为若干局部结构(像素块),检测出每个局部结构在前一帧图像中的位置,从而可以估计出这个结构的位移。即对运动物体从前一帧到当前帧位移的方向和像素数作出估计,也就是求出运动矢量。

运动补偿——根据求出的运动矢量,找到当前帧的像素(或像素块)是从前一帧的哪个位置移动过来的,从而得到当前帧像素(或像素块)的预测值。4.4.2帧间预测编码运动估计与运动补偿预测编码步骤:分割图像为若干局部结构——划分静止和运动区域;最简单方法:分块运动估计——对每一个运动物体进行位移估计;运动补偿——由位移估计建立同一运动物体在不同帧空间位置对应关系,建立预测关系;对于运动补偿后的位移帧差信号、运动矢量进行编码传输。4.4.2帧间预测编码

对当前子块进行运动估计,就是找在前一帧图像中哪一个子块和当前子块最相似,估计它的位移矢量。4.4.2帧间预测编码运动估计方法:像素递归法:根据像素间亮度的变化和梯度,通过递归修正的方法来估计每个像素的运动矢量。接收端在与发送端同样的条件下,用与发送端相同的方法进行运动估值。像素递归法估计精度高,可以满足运动补偿帧内插的要求。但接收端较复杂,不利于一发多收(如数字电视广播等)的应用。块匹配算法:块匹配算法对当前帧图像的每一子块,在前一帧(第K-1帧)的一定范围内搜索最优匹配,并认为本图像子块就是从前一帧最优匹配块位置处平移过来的。块匹配算法虽然作了一定假设(假设位于同一图像子块内的所有像素都作相同的运动,且只作平移运动),但满足了计算复杂度和实时实现的要求。4.4.2帧间预测编码块匹配算法(BMA):4.4.2帧间预测编码运动矢量的算法框图4.4.2帧间预测编码运动补偿效果Frame1Frame2Residual(WithoutMotionCompensation)Residual(MotionCompensation)方块大小的选取

块大时,一个方块可能包含多个作不同运动的物体,块内各像素作相同平移运动的假设难以成立,影响估计精度。

若块太小,则估计精度容易受噪声干扰的影响,不够可靠,而且传送运动矢量所需的附加比特数过多,不利于数据压缩。 一般都用16×16像素的块作为匹配单元。块匹配算法(BMA)最优匹配准则绝对差均值(MAD,MeanAbsoluteDifference)最小准则

均方误差(MSE,MeanSquaredError)最小准则归一化互相关函数最大准则

块匹配算法(BMA)最优匹配点的搜索方法穷尽搜索(fullsearch,也称全搜索)快速搜索:其算法共同之处在于它们把使准则函数(例如,MAD)趋于极小的方向视同为最小失真方向,并假定准则函数在偏离最小失真方向时是单调递增的,即认为它在整个搜索区内是(i,j)的单极点函数,有唯一的极小值,而快速搜索是从任一猜测点开始沿最小失真方向进行的。分级搜索:先通过对原始图像滤波和亚采样得到一个图像序列的低分辨率表示,再对所得低分辨率图像进行全搜索。由于分辨率降低,使得搜索次数成倍减少,这一步可以称为粗搜索。然后,再以低分辨率图像搜索的结果作为下一步细搜索的起始点。经过粗、细两级搜索,便得到了最终的运动矢量估值。块匹配算法(BMA)BMA常用搜索算法——三步搜索法:BMA常用搜索算法——二维对数搜索法:在视频帧序列中设置参照帧,且第1帧总是参照帧。对于当前的编码帧,首先在该帧的前一帧和/或后一帧(参照帧)中寻找与该帧的一个图像方块最优匹配的图像方块。如果找到这样的最优匹配块,则进行下列计算:计算当前块的像素值与参照帧中最优匹配块(称参照块)的像素值之间的差值,即预测误差;计算当前块相对于参照块在水平(x)和垂直(y)两个方向上的位移,即运动矢量。如果找不到最优匹配块,则必须进行帧内编码,即对当前块的像素样本值进行编码传输。

运动补偿帧间预测编码过程帧间预测编码原理图单向运动补偿预测:只使用前参照帧或后参照帧中的一个来进行预测。双向运动补偿预测:使用前、后两个帧作为参照帧来计算各块的运动矢量,最后只选用与具有最小匹配误差的参照帧相关的运动矢量值。插值运动补偿预测:取前参照帧预测值与后参照帧预测值的平均值。这时,需要对两个运动矢量分别进行编码传输。运动补偿帧间预测类型双向预测B帧的压缩编码原理4.1数字音频编码的基本原理4.2数字视频编码概述4.3熵编码4.4预测编码4.5变换编码第4章信源编码原理预测编码希望通过对信源建模尽可能精确地预测数据,然后对预测误差进行编码。变换编码的思路:将原始数据从时间域或者空间域“变换”到另一个更为紧凑表示、适合于压缩的变换域(通常为频域),从而得到比预测编码更高效率的数据表示(压缩)。预测编码消除相关性的能力有限,变换编码是一种更高效的压缩编码。4.5.1变换编码的基本原理

变换编码的基本原理是将空域中的图像信号,变换到另外一些正交空间中去,用变换系数来表示原始图像,并对变换系数进行编码。一般来说在变换域里描述要比在空域简单,因为图像的相关性明显下降。尽管变换本身并不带来数据压缩,但变换图像的能量大部分只集中于少数几个变换系数上,采用量化和熵编码则可以有效地压缩图像的编码比特率。4.5.1变换编码的基本原理如何去除图像数据中的冗余,实现数据压缩?变换编码:通过正交变换,将空间域的原始数据(像素值)“变换”为频域的变换系数,以实现更为紧凑的表示,有利于达到去除空间相关性(冗余)实现数据压缩的目的。4.5.1变换编码的基本原理

图像信息经过变换处理,相邻像元之间的相关性明显下降,有利于图像的编码压缩。图像频谱中的变换系数,表示图像在不同空间频率上的相对幅度,而且某一空间频率所包含的信息来自整个图像,频谱能量主要集中在低频部分,谱能量随频率的增加而迅速下降。再次,变换编码受噪声干扰的影响较小。图象的变换编码,随着数字信号处理技术的发展,特别是快速变换的算法和大规模集成电路(LSI)的出现,使它具有实际应用的可能。变换编码的特点变换编码不直接对空间域图像数据进行编码,而是首先将空间域图像数据映射变换到另一个正交向量空间(变换域),得到一组变换系数,然后对这些变换系数进行量化和编码。变换编码系统通常包括正交变换、变换系数选择和量化编码3个模块。为了保证平稳性和相关性,同时也为了减少运算量,在变换编码中,一般在发送端的编码器中,先将一帧图像划分成若干个N×N像素的图像块,然后对每个图像块逐一进行变换编码,最后将各个图像块的编码比特流复合后再传输。在接收端,对收到的变换系数进行相应的逆变换,再恢复成图像数据。4.5.1变换编码的基本原理(1)图像分块,用一个可逆线性变换(如傅立叶变换)把图像映射到变换系数集合。(2)对该系数集合进行量化和编码。对于大多数图像,重要系数的数量是比较少,且图像失真较小。(3)在接收端对接收到的码流进行解码,分离出各变换系数,且对舍去的系数用“0”来代替,然后求反变换,恢复各图像子块。变换编码的基本步骤4.5.1变换编码的基本原理正交变换本身并不能压缩数据,它只把信号映射到另一个域,但由于变换后,能量集中在变换域中的少数变换系数上,变换系数之间的相关性明显降低,为在变换域里进行有效的压缩创造了有利条件。对于变换系数,采用符合人的视觉系统特征的量化方式,大多数高频系数在量化后会很小或者为零,量化后的变换系数矩阵变成了一个稀疏矩阵。选择适当的扫描方式将二维矩阵表示的系数表示为一维向量,使得一维向量表示的系数具有零系数连续出现的特点,这样通过游程编码可以得到进一步的压缩,从而实现图像数据压缩。4.5.1变换编码的基本原理4.5.2

基于DCT的图像编码图象块DCT系数已量化的DCT系数重建图象块4.5.2

基于DCT的图像编码8×8二维DCT变换8×8二维DCT反变换当时,当u、v为其他值时4.5.2

基于DCT的图像编码

8×8二维DCT反变换的变换核函数为

按u,v分别展开后得到64个8×8像素的图像块组,称为基图像。4.5.2

基于DCT的图像编码8×8二维DCT变换基图像4×4二维DCT变换基图像DCT变换系数的量化量化是一个多对一的映射,它是造成编解码重建图像失真的主要根源。将DCT系数矩阵中的每个元素F(u,v)除以量化步长(台阶)S(u,v)后,进行四舍五入运算。4.5.2

基于DCT的图像编码DCT变换系数的量化由于人眼对低频变换系数(图像像素值变化缓慢部分)比高频变换系数(细节部分)更敏感,所以,对低频变换系数(特别是直流系数)进行细量化(量化步长/台阶小),对高频变换系数进行粗量化。4.5.2

基于DCT的图像编码DCT变换系数的量化每个DCT变换系数都有一个相应的量化步长S(u,v)

,这些量化步长构成了量化矩阵(量化表)。由于人眼对亮度信号比对色差信号更敏感,因此分别使用两种不同的量化矩阵。4.5.2

基于DCT的图像编码JPEG标准中亮度DCT系数的量化步长16111016244051611212141926586055141316244057695614172229518780621822375668109103772435556481104113924964788710312112010172929598112100103994.5.2

基于DCT的图像编码JPEG标准中色度DCT系数的量化步长171824479999999918212666999999992426569999999999476699999999999999999999999999999999999999999999999999999999999999999999999999994.5.2

基于DCT的图像编码Zig-Zag(或称“Z”字形,“之”字形)扫描

DC直流系数AC01交流系数扫描开始交流系数扫描结束AC07AC70AC77变换系数熵编码4.5.2

基于DCT的图像编码直流分量(DC):相邻图像子块的直流分量(图像子块的平均样值)也存在着相关性,所以对DC的量化系数用DPCM编码较合适,即对当前块和前一块的DC系数的差值进行编码。交流分量(AC):把数值为0的连续长度(即0游长)和非0值结合起来构成一个事件(Run,Level),然后再对事件(Run,Level)进行熵编码。

变换系数熵编码4.5.2

基于DCT的图像编码8×8亮度子块DCT第一步:DCT变换

4.5.2

基于DCT的图像编码经DCT后,变换系数的能量集中于低频变换系数上。第二步:量化。将DCT系数矩阵[F(u,v)]中的每个元素与量化步长矩阵[S(u,v)]中的对应元素相除后,进行四舍五入运算。4.5.2

基于DCT的图像编码161110162440516112121419265860551413162440576956141722295187806218223756681091037724355564811041139249647887103121120101729295981121001039916111016244051611212141926586055141316244057695614172229518780621822375668109103772435556481104113924964788710312112010172929598112100

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论