资源预览内容
第1页 / 共295页
第2页 / 共295页
第3页 / 共295页
第4页 / 共295页
第5页 / 共295页
第6页 / 共295页
第7页 / 共295页
第8页 / 共295页
第9页 / 共295页
第10页 / 共295页
亲,该文档总共295页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第四章第四章 视频信息压缩与处理视频信息压缩与处理第四章第四章 视频信息压缩与处理视频信息压缩与处理本章主要内容本章主要内容图像信号的相关特点图像信号的相关特点图像处理方法图像处理方法各种实用编码各种实用编码常见的图像压缩编码标准常见的图像压缩编码标准 图像信号的相关特点图像信号的相关特点 通常一幅图像中的各像素之间存在一定的相通常一幅图像中的各像素之间存在一定的相关性。关性。 在活动图像中,由于两幅相邻图像之间的时在活动图像中,由于两幅相邻图像之间的时间间隔很短,因此这两幅图像信息中包含大量间间隔很短,因此这两幅图像信息中包含大量相关信息。相关信息。 这些就是图像信息中的冗余。这些就是图像信息中的冗余。 图像信号的相关特点图像信号的相关特点 多媒体数据压缩的目的就是要去除图像信多媒体数据压缩的目的就是要去除图像信息中的大量冗余,同时又能保证图像的质量。息中的大量冗余,同时又能保证图像的质量。 一般针对不同类型的冗余信息,采取不同的一般针对不同类型的冗余信息,采取不同的压缩方法。压缩方法。图像信息中存在的冗余分类图像信息中存在的冗余分类 1 1 1 1 空间冗余空间冗余空间冗余空间冗余 规则物体的物理相关性规则物体的物理相关性规则物体的物理相关性规则物体的物理相关性2 2 2 2 时间冗余时间冗余时间冗余时间冗余 视频与动画画面间的相关性视频与动画画面间的相关性视频与动画画面间的相关性视频与动画画面间的相关性3 3 3 3 统计冗余统计冗余统计冗余统计冗余 具有空间冗余和时间冗余具有空间冗余和时间冗余具有空间冗余和时间冗余具有空间冗余和时间冗余6 6 6 6 视觉冗余视觉冗余视觉冗余视觉冗余 视觉、听觉敏感度和非线性感觉视觉、听觉敏感度和非线性感觉视觉、听觉敏感度和非线性感觉视觉、听觉敏感度和非线性感觉7 7 7 7 知识冗余知识冗余知识冗余知识冗余 凭借经验识别凭借经验识别凭借经验识别凭借经验识别4 4 4 4 结构冗余结构冗余结构冗余结构冗余 规则纹理、相互重叠的结构表面规则纹理、相互重叠的结构表面规则纹理、相互重叠的结构表面规则纹理、相互重叠的结构表面 5 5 5 5 信息熵冗余信息熵冗余信息熵冗余信息熵冗余 编码冗余,数据与携带的信息编码冗余,数据与携带的信息编码冗余,数据与携带的信息编码冗余,数据与携带的信息1011 0001 11001011 0001 11001011 0001 11001011 0001 11000101 1010 10100101 1010 10101011 11001011 11000101 1111 10100101 1111 10102 22424色色色色2 28 8色色色色 1. 1.空间冗余空间冗余空间冗余是在图像数据中经常存在的一种冗余。空间冗余是在图像数据中经常存在的一种冗余。 在任何一幅图像中在任何一幅图像中: 均有许多灰度或颜色都均有许多灰度或颜色都相同的邻近像素相同的邻近像素组成的组成的局部区域局部区域,它们之间具有空间上的,它们之间具有空间上的强相关性,在图像中就强相关性,在图像中就表现为空间冗余。表现为空间冗余。 1. 1.空间冗余空间冗余 颜色相同的区域颜色相同的区域 对空间冗余的压缩方法就是把这种对空间冗余的压缩方法就是把这种颜色都颜色都相相同的邻近像素组成的同的邻近像素组成的局部区域局部区域当作一个整体,当作一个整体,用极少的数据量来表示它,从而节省了存储空用极少的数据量来表示它,从而节省了存储空间。间。 这种压缩方法叫这种压缩方法叫空间压缩空间压缩或或帧内压缩帧内压缩。时间冗余时间冗余:视频信号和动画:视频信号和动画是基是基于时间轴的一组于时间轴的一组连续画面连续画面。 由于活动图像序列中的任意两幅相邻由于活动图像序列中的任意两幅相邻的图像之间的时间间隔很短,因此两幅图像中存的图像之间的时间间隔很短,因此两幅图像中存在大量的相关信息在大量的相关信息 时间冗余时间冗余 相邻帧包含相同的背景和移动物体,只不过移相邻帧包含相同的背景和移动物体,只不过移动物体所在的空间位置略有不同动物体所在的空间位置略有不同 活动图像中的两幅相邻的图像有较大的相关活动图像中的两幅相邻的图像有较大的相关性,这反映为性,这反映为时间冗余时间冗余。 在前一幅图像的基础上,只需改变少量的数在前一幅图像的基础上,只需改变少量的数据,便可以表示出后一幅图像,达到数据压缩据,便可以表示出后一幅图像,达到数据压缩的目的。的目的。 这种压缩对活动图像往往能得到很高的压缩比,这种压缩对活动图像往往能得到很高的压缩比,这也称为这也称为时间压缩时间压缩或或帧间压缩帧间压缩。3. 3.统计冗余统计冗余 空间冗余和时间冗余是将图像信号看作为随空间冗余和时间冗余是将图像信号看作为随机信号时所反映出的统计特征,因此有时把这机信号时所反映出的统计特征,因此有时把这两种冗余称为两种冗余称为统计冗余统计冗余。 4. 4.信息熵冗余信息熵冗余信息熵是针对数据的信息量而言的,它代表信息熵是针对数据的信息量而言的,它代表从图像信息源中发出的一个符号的平均信息量从图像信息源中发出的一个符号的平均信息量设某种编码的平均码长单位(符号)的设某种编码的平均码长单位(符号)的数据量数据量为为式中,式中, 为分配给第为分配给第 符号的比特数,即符号的比特数,即二进制位数二进制位数 由于实际中很难估算各符号出现的概率,我由于实际中很难估算各符号出现的概率,我们一般认为它们是等概率的,所以每个符号比们一般认为它们是等概率的,所以每个符号比特数相同。特数相同。 这种编码的符号的数据量这种编码的符号的数据量L L为最大。为最大。 但实际各符号出现的概率并不相同。但实际各符号出现的概率并不相同。 这样所得的这样所得的L L必然大于实际的信源熵必然大于实际的信源熵H H,由此,由此带来的冗余我们称为带来的冗余我们称为信息熵冗余信息熵冗余或或编码冗余编码冗余。 总结总结: 数据中通常包含很大的冗余,数据的大小与所数据中通常包含很大的冗余,数据的大小与所携带的信息量的关系由下式给出:携带的信息量的关系由下式给出: L=H+R L=H+R H H:信源熵(信息量:信源熵(信息量/ /符号,代表最小比特数)、符号,代表最小比特数)、 L L:数据量(平均码长单位,即符号实际的比特:数据量(平均码长单位,即符号实际的比特数)数) R R:冗余量(即信息冗余量):冗余量(即信息冗余量) R=L-HR=L-H5. 5.结构冗余结构冗余 有些图像从整体上看存在着非常强的纹理结构。有些图像从整体上看存在着非常强的纹理结构。 下图为草席图像。下图为草席图像。是一种是一种规则有序排列的图形规则有序排列的图形,我们称它在结构上存在冗余我们称它在结构上存在冗余 。是一种结构冗余。是一种结构冗余。规则有序排列的图形规则有序排列的图形6. 6.知识冗余知识冗余 有些图像的理解与某些知识有相当大的相关有些图像的理解与某些知识有相当大的相关性。性。 比如人脸的图像有固定的结构:比如人脸的图像有固定的结构: 嘴的上方有鼻子、鼻子的上方有双眼睛,鼻嘴的上方有鼻子、鼻子的上方有双眼睛,鼻子位于正脸图像的中线上等等子位于正脸图像的中线上等等 这类规律的结构可由先验知识和背景知识得这类规律的结构可由先验知识和背景知识得到,因此这类信息对一般人来说就是冗余信息。到,因此这类信息对一般人来说就是冗余信息。这就是知识冗余。这就是知识冗余。7. 7.视觉冗余视觉冗余 由于人眼的视觉特性有所限制,人类的视觉由于人眼的视觉特性有所限制,人类的视觉系统不能对图像画面的任何变化都能感觉到。系统不能对图像画面的任何变化都能感觉到。 举例:举例: 人眼视觉系统的一般分辨率为人眼视觉系统的一般分辨率为6464灰度等级灰度等级, ,而而一般图像的量化采用的是一般图像的量化采用的是256256的灰度等级。的灰度等级。 这种差别就是视觉冗余。这种差别就是视觉冗余。 视频压缩编码方法及其分类视频压缩编码方法及其分类 图像压缩的基本目标就是减小数据量。图像压缩的基本目标就是减小数据量。 至于图像压缩到什么程度而又没有明显的失真至于图像压缩到什么程度而又没有明显的失真, ,则取决于图像数据的冗余度。则取决于图像数据的冗余度。所有的这些冗余所有的这些冗余度都可以被除去而不会引起显著的信息损失。度都可以被除去而不会引起显著的信息损失。空间冗余空间冗余和和时间冗余时间冗余是图像信号最常见的冗余是图像信号最常见的冗余。压缩编码分类压缩编码分类1. 1.按恢复的图像性质划分按恢复的图像性质划分 按恢复的图像性质按恢复的图像性质, ,数字图像压缩方法可以分为两数字图像压缩方法可以分为两种种: 无损压缩编码无损压缩编码 有损压缩编码有损压缩编码 压缩编码分类压缩编码分类 无损压缩编码无损压缩编码: 也称为熵编码、可逆编码或无失真编码。也称为熵编码、可逆编码或无失真编码。 当系统采用此方法进行数据压缩时当系统采用此方法进行数据压缩时, ,在接收端所在接收端所获得的解码与原图像完全相同获得的解码与原图像完全相同。 无损压缩不能提供较高的压缩比。无损压缩不能提供较高的压缩比。 一般在一般在2:12:15:15:1。 压缩编码分类压缩编码分类 有损编码有损编码: 也称为不可逆编码、熵压缩编码或失真编码。也称为不可逆编码、熵压缩编码或失真编码。 由于压缩了熵,会减少信息而不能再恢复。由于压缩了熵,会减少信息而不能再恢复。 这种压缩编码具有较高的压缩比。这种压缩编码具有较高的压缩比。 最大可达几百比一。最大可达几百比一。压缩编码分类压缩编码分类2. 2.按压缩方法的原理划分按压缩方法的原理划分 按压缩原理划分按压缩原理划分, ,数字图像压缩方法可以分为以数字图像压缩方法可以分为以下几种编码下几种编码: : 预测编码预测编码 变换编码变换编码 标量量化和矢量量化编码标量量化和矢量量化编码 信息熵编码信息熵编码 子带编码子带编码 结构编码结构编码 模型编码模型编码图图像像压压缩缩编编码码无无损损压压缩缩有有损损压压缩缩霍夫曼编码霍夫曼编码行程编码行程编码算术编码算术编码L-Z编码编码预测编码预测编码:量化量化编码编码:模型编码模型编码:混合编码混合编码:变换编码变换编码:DPCM;运动补偿;运动补偿DCT;子带编码;子带编码分形编码;分形编码;知识知识基编码基编码JPEG;MPEG;H.26X编码编码采样编码;矢量量化编码采样编码;矢量量化编码图像压缩算法分类图像压缩算法分类压缩编码分类压缩编码分类(1 1)预测编码:)预测编码: 其典型的压缩方法有其典型的压缩方法有DPCMDPCM和和ADPCM.ADPCM.它们比它们比较适合于图像数据的压缩。较适合于图像数据的压缩。 它主要是减少图像数据在它主要是减少图像数据在空间上空间上和和时间上时间上的相的相关性,从而达到数据压缩的目的,但这是一种关性,从而达到数据压缩的目的,但这是一种有失真的压缩方法。有失真的压缩方法。 压缩编码分类压缩编码分类(2 2)变换编码:)变换编码: 它是将图像它是将图像时域信号时域信号转换到转换到变换域变换域(系数空(系数空间、频域)上进行处理。间、频域)上进行处理。 在实际编码中,常常利用图像的统计特性和在实际编码中,常常利用图像的统计特性和人眼的视觉特性,只是选择部分变换系数来进人眼的视觉特性,只是选择部分变换系数来进行信息传输,因此恢复的图像中将存在一定的行信息传输,因此恢复的图像中将存在一定的失真。失真。 常用的正交变换有:离散傅氏变换常用的正交变换有:离散傅氏变换DFTDFT、离、离散余弦变换散余弦变换DCTDCT、离散正弦变换、离散正弦变换DSTDST和和K-LK-L变换。变换。压缩编码分类压缩编码分类(3 3)标量量化和矢量量化编码:)标量量化和矢量量化编码: 标量量化指传统的量化,是将具有无限电平标量量化指传统的量化,是将具有无限电平的点样值,用有限电平数表示的方法,是一个的点样值,用有限电平数表示的方法,是一个样点、一个样点地进行量化编码样点、一个样点地进行量化编码。 这里量化器的设计是一个很关键的步骤。这里量化器的设计是一个很关键的步骤。 压缩编码分类压缩编码分类(3 3)标量量化和矢量量化编码:)标量量化和矢量量化编码: 矢量编码是相对标量量化而提出的矢量编码是相对标量量化而提出的。 矢量编码中一次可以量化多个样点矢量编码中一次可以量化多个样点。 矢量量化也是一种有损压缩编码。矢量量化也是一种有损压缩编码。压缩编码分类压缩编码分类(4 4)信息熵编码:)信息熵编码: 信息熵编码是一种基于图像统计特性的编码信息熵编码是一种基于图像统计特性的编码方法。方法。 是一种无损压缩编码方法。是一种无损压缩编码方法。 压缩编码分类压缩编码分类(4 4)信息熵编码:)信息熵编码: 它是根据信息熵的原理它是根据信息熵的原理: 用最短的位数表示出现概率大的信息,而出现用最短的位数表示出现概率大的信息,而出现概率较小的信息则用较长的位数来表示,以此概率较小的信息则用较长的位数来表示,以此达到压缩数据的目的。达到压缩数据的目的。 常见的熵编码有常见的熵编码有哈夫曼编码哈夫曼编码、游程编码游程编码和和算术算术编码编码。压缩编码分类压缩编码分类(5 5)子带编码:)子带编码: 在子带编码中,首先将图像数据转换到频在子带编码中,首先将图像数据转换到频域,然后按频率分成若干子带,对每个子带用域,然后按频率分成若干子带,对每个子带用不同的编码器进行抽样、量化和编码,并将各不同的编码器进行抽样、量化和编码,并将各子带输出数据合成为数据码流,从而获得压缩子带输出数据合成为数据码流,从而获得压缩数据。数据。 压缩编码分类压缩编码分类(6 6)结构编码:)结构编码: 结构编码也称为第二代编码。结构编码也称为第二代编码。 编码时首先求出图像中的边界、轮廓、纹理编码时首先求出图像中的边界、轮廓、纹理等结构特征参数,然后保存这些参数信息,进等结构特征参数,然后保存这些参数信息,进行编码。行编码。 在解码时则根据这些结构和参数信息进行图在解码时则根据这些结构和参数信息进行图像合成,从而恢复出原图像。像合成,从而恢复出原图像。压缩编码分类压缩编码分类(7 7)模型编码:)模型编码: 这是一种基于知识的编码。这是一种基于知识的编码。 利用人们对自然知识的了解而形成一个规则利用人们对自然知识的了解而形成一个规则库,将人脸变化等特征用一系列参数来进行描库,将人脸变化等特征用一系列参数来进行描述。述。 利用参数再加上模型就可以实现人脸的图像利用参数再加上模型就可以实现人脸的图像编码和解码,达到压缩图像数据的目的。编码和解码,达到压缩图像数据的目的。数据压缩技术的性能指标数据压缩技术的性能指标 1 1、压缩比、压缩比用来定义压缩性能。指压缩过程中输入数据用来定义压缩性能。指压缩过程中输入数据量与输出数据量之比。量与输出数据量之比。 设原图像的平均码长为设原图像的平均码长为Lc,Lc, 压缩后图像的平均码压缩后图像的平均码长为长为L L,则压缩比,则压缩比C C为为压缩比越大,说明数据压缩的程度越高。压缩比越大,说明数据压缩的程度越高。 冗余度冗余度和和编码效率编码效率也是衡量信源特性以及编解码也是衡量信源特性以及编解码设备性能的重要指标,定义如下:设备性能的重要指标,定义如下:冗余度冗余度: :指冗余量在信息量中占的比例指冗余量在信息量中占的比例 L L为平均码字长度为平均码字长度 H(X) H(X)为信源熵。为信源熵。编码效率编码效率:指信息量在数据量中占的比例:指信息量在数据量中占的比例 数据压缩技术的性能指标数据压缩技术的性能指标2 2、重现质量:、重现质量: 恢复效果要好,要尽可能地恢复原始数据。恢复效果要好,要尽可能地恢复原始数据。 3 3、压缩和解压缩速度、压缩和解压缩速度无损图像压缩编码方法无损图像压缩编码方法 无失真(无损)图像压缩编码就是指图像经无失真(无损)图像压缩编码就是指图像经过压缩、编码后恢复出的图像与原图像完全一过压缩、编码后恢复出的图像与原图像完全一样样, ,没有任何失真。没有任何失真。 无失真压缩编码无失真压缩编码-熵熵编码编码。 广泛应用于文本数据和特殊应用场合的图广泛应用于文本数据和特殊应用场合的图像数据(指纹图像、医学图像、卫星图像等)像数据(指纹图像、医学图像、卫星图像等)的压缩。的压缩。无损图像压缩编码方法无损图像压缩编码方法 香农信息论认为香农信息论认为, ,信源中或多或少地含有自信源中或多或少地含有自然冗余度。然冗余度。 这些冗余度既来自于信源本身的相关性这些冗余度既来自于信源本身的相关性, ,又来又来自于信源概率分布的不均匀性中。自于信源概率分布的不均匀性中。 只要找到去除相关性或改变概率分布不均匀只要找到去除相关性或改变概率分布不均匀性的方法和手段性的方法和手段, ,也就找到了信息熵编码的方法。也就找到了信息熵编码的方法。 无损图像压缩编码方法无损图像压缩编码方法 例如例如: 在图像中存在着空间上的相关性在图像中存在着空间上的相关性 对运动图像而言存在着帧与帧之间在时间上的相对运动图像而言存在着帧与帧之间在时间上的相关性。关性。 这些都说明这些都说明存在着存在着颜色颜色的概率分布的不均匀性的概率分布的不均匀性。 无损图像压缩编码方法无损图像压缩编码方法 信息熵编码所要解决的问题:信息熵编码所要解决的问题: 如何利用信息熵理论(香农信息论)减少数如何利用信息熵理论(香农信息论)减少数据在传输和存储时的冗余度据在传输和存储时的冗余度。香农信息论香农信息论 香农信息论认为:香农信息论认为: 信源所含有的信息熵就是进行无失真编码的信源所含有的信息熵就是进行无失真编码的理论极限。理论极限。 香农信息论香农信息论 低于此极限的无失真编码方法是找不到的低于此极限的无失真编码方法是找不到的, ,而只要不低于此极限而只要不低于此极限, ,那就总能找到某种适宜的那就总能找到某种适宜的编码方法任意的逼近信息熵。编码方法任意的逼近信息熵。 熵编码的目的就是要使编码后的图像熵编码的目的就是要使编码后的图像平均码字平均码字长度(比特数)长度(比特数)L L近可能接近这个近可能接近这个信息熵信息熵H(x)H(x) 无损图像压缩编码方法无损图像压缩编码方法根据:根据: L=H+R L=H+R H H:信源熵(信息量:信源熵(信息量/ /符号,代表符号的最小比特符号,代表符号的最小比特数)、数)、 L L:数据量(每个符号实际平均的比特数,也称:数据量(每个符号实际平均的比特数,也称码字长度码字长度) R R:冗余量(即信息冗余量):冗余量(即信息冗余量) R=L-HR=L-H 无损数据压缩的本质:通过减少冗余量无损数据压缩的本质:通过减少冗余量R R,减少,减少数据量数据量L L,使之接近,使之接近H H。无损图像压缩编码方法无损图像压缩编码方法 无损图像压缩编码方法由于其中并没有考虑人无损图像压缩编码方法由于其中并没有考虑人眼的视觉特性眼的视觉特性, ,因此其所能达到的压缩比非常有因此其所能达到的压缩比非常有限。限。 常用的无失真图像压缩编码有:常用的无失真图像压缩编码有: 哈夫曼编码哈夫曼编码 游程编码(行程编码)游程编码(行程编码) 算术编码算术编码 无损图像压缩编码方法无损图像压缩编码方法 在实际应用中在实际应用中, ,常将游程编码与哈夫曼编码结常将游程编码与哈夫曼编码结合起来使用合起来使用, ,例如在例如在H.261H.261、JPEGJPEG、MPEGMPEG等国际等国际标准中正是采用此种编码技术。标准中正是采用此种编码技术。 而在而在H.263H.263等国际标准中则采用算术编码技术。等国际标准中则采用算术编码技术。哈夫曼编码哈夫曼编码 哈夫曼哈夫曼(Huffman)(Huffman)编码方法于编码方法于19521952年问世年问世, ,迄今为迄今为止仍经久不衰止仍经久不衰, ,广泛应用于各种数据压缩技术中广泛应用于各种数据压缩技术中, ,且仍不失为熵编码中的最佳编码方法。且仍不失为熵编码中的最佳编码方法。主要编码思路:主要编码思路: 对对出现频率较大出现频率较大的符号用的符号用较短的码较短的码来表示,来表示, 而对于而对于出现频率较小出现频率较小的符号则用的符号则用较长的码较长的码来表来表示。示。 这样的编码结果所获得的平均码字长度最短。这样的编码结果所获得的平均码字长度最短。哈夫曼编码哈夫曼编码 哈夫曼编码的码长是变化的,即可变长编码哈夫曼编码的码长是变化的,即可变长编码(VLC),(VLC),而且哈夫曼编码通常被称为最优码。而且哈夫曼编码通常被称为最优码。 最优的含义是:最优的含义是: 对于给定的符号集和概率模型,找不到任何其对于给定的符号集和概率模型,找不到任何其它整数码比哈夫曼编码有更短的码长。它整数码比哈夫曼编码有更短的码长。 整数码整数码:指每个符号所对应的码字的位数都是指每个符号所对应的码字的位数都是整数。整数。哈夫曼编码哈夫曼编码具体编码过程:具体编码过程: 1 1、排序:按符号出现的概率从大到小进行排、排序:按符号出现的概率从大到小进行排列。列。 2 2、赋值:对排在最后的两个符号进行赋值,、赋值:对排在最后的两个符号进行赋值,概率大的赋概率大的赋“1”“1”,概率小的赋,概率小的赋“0”“0”。或相反。或相反。 3 3、合并:将上述最后的两个符号出现的概率、合并:将上述最后的两个符号出现的概率相加合成一个概率。相加合成一个概率。 哈夫曼编码哈夫曼编码4 4、重新排序:将合成后的概率与其它符号概率、重新排序:将合成后的概率与其它符号概率一起进行重新排序(从大到小)。然后重复步一起进行重新排序(从大到小)。然后重复步骤骤2 2、3 3的内容,直至概率相加为的内容,直至概率相加为1 1为止。为止。5 5、码字分配:从最后一步开始反向进行码字分、码字分配:从最后一步开始反向进行码字分配。从而形成一个码字。配。从而形成一个码字。哈夫曼编码的基本原理哈夫曼编码的基本原理例:例: aaaaaaaa bbbbbb cccc d d eeeeeeeeee ffffffffffffff 4 3 4 3 2 1 5 2 1 5 7 7 如果不进行特殊的编码,用字符方式如果不进行特殊的编码,用字符方式(ASCIIASCII码)传送,每个字符码)传送,每个字符8 8位,需要的数位,需要的数据量为:据量为: 22*8=22*8=176176 bit bit 哈夫曼编码的基本原理哈夫曼编码的基本原理cbafe10f=11 e=01 a=00 b=101 c=1001 d=1000d10101010哈夫曼编码哈夫曼编码哈夫曼编码的基本原理哈夫曼编码的基本原理 aaaaaaaa bbbbbb cccc d d eeeeeeeeee ffffffffffffff 4 3 2 1 5 7 4 3 2 1 5 7按照哈夫曼编码的原理进行编码:按照哈夫曼编码的原理进行编码: a=00 b=101 c=1001 d=1000 e=01 f=11 a=00 b=101 c=1001 d=1000 e=01 f=11需要的数据量为需要的数据量为 4* 4*2 2+3*+3*3 3+2*+2*4 4+1*+1*4 4+5*+5*2 2+7*+7*2 2= =5353bitbit比比22*8=176bit 22*8=176bit 少了少了123123bitbit平均编码长度平均编码长度L L为为哈夫曼编码的基本原理哈夫曼编码的基本原理例例 设信号源为设信号源为X= X= 、a a、e e、I I、m m、t t、c c、h h、rr。若传送一个字符串若传送一个字符串“I am a teacherI am a teacher”,对应的概,对应的概率为率为p=p=0.220.22、0.220.22、0.140.14、0.070.07、0.070.07、0.070.07、0.070.07、0.070.07、0.070.07, , 试给出该信源的霍夫曼编码方案。试给出该信源的霍夫曼编码方案。并计算压缩比并计算压缩比C C、冗余度、冗余度R R和编码效率。和编码效率。 = =0101 a= a=0000 e= e=111111 I= I=11011101 m= m=11001100 t= t=10111011 c= c=10101010 h= h=10011001 r= r=10001000 出现出现3 3次,次,a a出现出现3 3次,次,e e出现出现2 2次,其它的各出现次,其它的各出现1 1次。次。 共需要共需要3*3*2 2+3*+3*2 2+2*+2*3 3+6*+6*4 4= =4242bitbit分析分析: : 若传送一个字符串若传送一个字符串“I am a teacher”“I am a teacher”,共,共1414个字个字符,其中包括符,其中包括9 9个不同的字符。个不同的字符。(1 1)若使用自然编码(等长二进制编码),该字)若使用自然编码(等长二进制编码),该字符串中有符串中有9 9个不同的符号,至少需要个不同的符号,至少需要4 4位二进制位二进制才能表示,这样传送该字符串也要才能表示,这样传送该字符串也要5656位。位。(2 2)HuffmanHuffman编码只需要编码只需要4242位位,平均编码长度为,平均编码长度为2.982.98。平均码字长度公式为:平均码字长度公式为:求压缩比、冗余度和编码效率求压缩比、冗余度和编码效率: : 压缩比压缩比C C: 14 14个字符,需个字符,需4 4位二进制数位二进制数 Lc=4 Lc=4 C=Lc/L=4/2.98= C=Lc/L=4/2.98= 1.34 :11.34 :1 冗余度冗余度R R=(L-H)/H=(2.98-2.97)/2.97=0.34%=(L-H)/H=(2.98-2.97)/2.97=0.34%编码效率编码效率哈夫曼编码哈夫曼编码例:某信源符号及其对应的概率如下:例:某信源符号及其对应的概率如下: a1 a2 a3 a4 a5 a6 a1 a2 a3 a4 a5 a6 0.4 0.2 0.12 0.15 0.1 0.03 0.4 0.2 0.12 0.15 0.1 0.03请完成哈夫曼编码,并计算压缩比、冗余度和编码请完成哈夫曼编码,并计算压缩比、冗余度和编码效率。效率。哈夫曼编码哈夫曼编码例:某信源符号及其对应的概率如下:例:某信源符号及其对应的概率如下: a1a1 a2a2 a3a3 a4a4 a5a5 a6a6 a7a7 a8a80.40 0.0.40 0.0404 0.1 0.1 0.07 0.06 0. 0.1 0.1 0.07 0.06 0.1818 0.04 0.04请完成哈夫曼编码,并计算压缩比、冗余度和编码请完成哈夫曼编码,并计算压缩比、冗余度和编码效率。效率。a1:a1: 0 0 a2:a2: 1 11101100 0 a3:a3: 100 100 a4:a4: 1111 1111 a5:a5: 1011 1011 a6:a6: 1010 1010 a7:a7: 1 11101101 1 a8:a8: 110 110哈夫曼编码哈夫曼编码 特点:特点: (1 1)虽然哈夫曼码长可变虽然哈夫曼码长可变, ,但却不需要另附同步但却不需要另附同步码。码。 (2 2) 通信双方只要均拥有预先编写的解释各种通信双方只要均拥有预先编写的解释各种代码意义的代码意义的词典词典( (即即码本码本), ),即可根据即可根据码本码本逐码译出。逐码译出。哈夫曼编码哈夫曼编码哈夫曼编码有几个问题值得注意哈夫曼编码有几个问题值得注意: :一、哈夫曼码没有错误保护功能。一、哈夫曼码没有错误保护功能。 如果码串中有错如果码串中有错, ,哪怕仅仅是哪怕仅仅是1 1位出错位出错, ,不但该码不但该码本身将会译错本身将会译错, ,更糟糕的是对后面的影响更糟糕的是对后面的影响, ,一错就一错就是一串是一串, ,一般称这种现象为错误传播。一般称这种现象为错误传播。 哈夫曼编码哈夫曼编码二、二、不可调用中间的内容不可调用中间的内容 哈夫曼码是可变长度码,因此很难随意查找哈夫曼码是可变长度码,因此很难随意查找或调用压缩文件中间的内容,然后再译码或调用压缩文件中间的内容,然后再译码; ;三、接收端需保存一个与发送端相同的霍夫曼码表三、接收端需保存一个与发送端相同的霍夫曼码表 哈夫曼码还是得到广泛应用哈夫曼码还是得到广泛应用, ,哈夫曼编码毕竟属哈夫曼编码毕竟属于最佳编码方法。于最佳编码方法。游程编码游程编码RLCRLC 游程编码(行程编码)游程编码(行程编码)RLCRLC(RLE)RLE)是一种非是一种非常简单的数据压缩编码形式。它在某些场合是常简单的数据压缩编码形式。它在某些场合是非常有效的一种无损压缩编码方法。非常有效的一种无损压缩编码方法。 游程编码游程编码RLCRLC 游程编码编码原则游程编码编码原则: : 连续重复的数据值序列(或称为连续重复的数据值序列(或称为“流流”)用一)用一个重复次数和单个数据值来代替。个重复次数和单个数据值来代替。比如:得到的字符串为比如:得到的字符串为AAAAAAAAABCDDDDDDDDAAABCDDDDDDDDD DBBBBBBBBBBBBBBBB 可压缩为可压缩为*6*6ABCABC*9*9D D*8*8B B 颜色相同的区域颜色相同的区域游程编码游程编码RLCRLC 不需要存储每一个像素的颜色值,而仅存不需要存储每一个像素的颜色值,而仅存储一个像素的颜色值以及具有相同颜色的像素储一个像素的颜色值以及具有相同颜色的像素数目。数目。 或者存储一个像素的颜色值,以及具有相同颜或者存储一个像素的颜色值,以及具有相同颜色值的行数。色值的行数。 这种压缩编码称为这种压缩编码称为游程编码游程编码或或行程编码行程编码。游程编码游程编码RLCRLC 游程编码多用于游程编码多用于黑白黑白图像图像或图形或图形的压缩。的压缩。 具有相同具有相同灰度等级灰度等级的连续的像素数目称为的连续的像素数目称为游游程程长度长度RLRL。 图像中具有相同灰度的图像块越大越多,压缩图像中具有相同灰度的图像块越大越多,压缩的效果就越好。的效果就越好。 宽度:宽度:263 263 宽度:宽度:263263 高度:高度:300 300 高度:高度:300 300 灰度灰度:4 4 灰度灰度:8 8 游程编码游程编码RLCRLC RLCRLC特点:特点: 编码简单直观,编码编码简单直观,编码/ /解码速度快解码速度快,只需要简只需要简单地复制字符若干遍即可以了。单地复制字符若干遍即可以了。 BMPBMP、TIFFTIFF、AVIAVI等格式文件的压缩均采用此方等格式文件的压缩均采用此方法。在法。在PDFPDF文件格式中也得到应用文件格式中也得到应用。 存在着不同的实现技术和文件格式。存在着不同的实现技术和文件格式。游程编码游程编码RLCRLC的构成的构成在在RLCRLC中用中用3 3个字节表示一个字符串:个字节表示一个字符串:由一个指示符、一个重复次数字节和一个被重复的由一个指示符、一个重复次数字节和一个被重复的字符构成的字符构成的3 3字节码字节码 思考:思考:RL RL ? ? 时,数据压缩才用意义时,数据压缩才用意义3游程编码游程编码RLCRLC方法方法例如例如: :字符串字符串 RTAAAASDEEEEERTAAAASDEEEEE经经RLERLE压缩后为:压缩后为: RT*4ASD*5E RT*4ASD*5E “*4A” “*4A” 代替了代替了“AAAA”“AAAA” “*5E” “*5E” 代替代替“EEEEE”“EEEEE” 指示符采用特殊字符指示符采用特殊字符* *: 指出一个指出一个RLCRLC编码的开始,后面的数字表示重编码的开始,后面的数字表示重复的次数,数字后的单个字符是被重复的字符。复的次数,数字后的单个字符是被重复的字符。游程编码游程编码RLCRLC方法方法例例: : 设有数据设有数据“AAAAAAA ABBBBCCCCCBBBBCCCCCCCCCDAAAAAADAAAAAA”试计算该数据的行程编码。试计算该数据的行程编码。解:解:A A重复重复4 4次,次,B B重复重复4 4次,次,C C重复重复7 7次,次,D D不重复,不重复,A A重复重复6 6次,次, RLC RLC数据流为:数据流为:“# #4 4A#4B#A#4B#7 7CD#6ACD#6A”,其中,其中# #为指示符。总共占用为指示符。总共占用1313个字节,而源数据占用个字节,而源数据占用2222个字节。个字节。游程编码游程编码也可以也可以不用指示符不用指示符: : 重复与否相同对待,相应的重复与否相同对待,相应的RLCRLC为为“3A4B5C1D6A3A4B5C1D6A”占用占用1010个字节。个字节。游程编码游程编码RLCRLC方法方法 例:例: aaaaaaaa bbbbbb cccc d d eeeeeeeeee ffffffffffffff ( (共共22*8=176 bit)22*8=176 bit) 4a3b2c1d5e7f 4a3b2c1d5e7f ( (共共12*8=96 bit)12*8=96 bit) 压缩率为:压缩率为:176/96=1.83:1176/96=1.83:1游程编码游程编码 游程编码的压缩率不高,但编码、解码的速度游程编码的压缩率不高,但编码、解码的速度快,仍被得到广泛的应用。快,仍被得到广泛的应用。 特别是在特别是在变换编码变换编码后再进行后再进行游程编码游程编码,有很好的,有很好的效果。在效果。在图像图像数据压缩标准数据压缩标准( (JPEGJPEG) )中扮演重要中扮演重要角色。角色。 算术编码算术编码 算术编码产生于算术编码产生于2020世纪世纪6060年代初年代初, ,在图像数在图像数据压缩标准中算术编码扮演了重要的角色。能据压缩标准中算术编码扮演了重要的角色。能有效地压缩信源冗余度,属于熵编码的一种。有效地压缩信源冗余度,属于熵编码的一种。 该方法实现较为复杂,常与其它有损压缩编该方法实现较为复杂,常与其它有损压缩编码结合使用,在码结合使用,在视频视频数据压缩标准数据压缩标准( (如如H.263H.263) )中中扮演重要角色。扮演重要角色。 算术编码算术编码 算术编码与哈夫曼编码一样,也是对概率较大算术编码与哈夫曼编码一样,也是对概率较大的符号采用短码,对概率较小的符号采用长码。的符号采用短码,对概率较小的符号采用长码。 它突破了哈夫曼编码每个符号只能按整数比特它突破了哈夫曼编码每个符号只能按整数比特来逼近信源熵的限制来逼近信源熵的限制: : 每个符号的平均编码长度可以按每个符号的平均编码长度可以按小数比特小数比特来逼来逼近信源熵。近信源熵。算术编码基本思想算术编码基本思想 算术编码不是将单个信源符号映射成一个码算术编码不是将单个信源符号映射成一个码字。字。 而是把而是把整个信源整个信源表示为实数线上的表示为实数线上的0 0到到1 1之间的之间的一个区间,其长度等于该一个区间,其长度等于该信源信源的概率。的概率。 再在该区间内选择一个代表性的小数,转化再在该区间内选择一个代表性的小数,转化为二进制作为实际的编码输出。为二进制作为实际的编码输出。算术编码基本步骤算术编码基本步骤 将编码的消息表示成实数将编码的消息表示成实数0 0和和1 1之间的一之间的一个区间。个区间。 消息序列中的每个元素都要用来缩短这个消息序列中的每个元素都要用来缩短这个区间。区间。 消息序列中元素越多,所得到的区间就越小,消息序列中元素越多,所得到的区间就越小,当区间变小时,表示这一区间所需的二进制位当区间变小时,表示这一区间所需的二进制位就越多。就越多。 消息结束时就最后所得到区间的下边界值表消息结束时就最后所得到区间的下边界值表示该消息。示该消息。 给定符号序列的算术编码步骤如下:给定符号序列的算术编码步骤如下: (1 1)初始化:初始化: 编码器开始时将编码器开始时将“当前区间当前区间” ” 设置为一。设置为一。 为为0 0,1) 1) (2 2)按消息(按消息(符号序列符号序列)中符号的顺序:)中符号的顺序: 对每一符号,编码器按步骤对每一符号,编码器按步骤(a a)和和(b b)重复进重复进行处理行处理 给定符号序列的算术编码步骤如下:给定符号序列的算术编码步骤如下: (a a)编码器将编码器将“当前区间当前区间”分为分为子区间子区间,每一,每一个符号分配一个子区间。一个子区间的大小与个符号分配一个子区间。一个子区间的大小与符号的概率成比例。符号的概率成比例。(b b)对应于一个确切发生的符号,编码器选择对应于一个确切发生的符号,编码器选择其子区间,并使它成为其子区间,并使它成为新的新的“当前区间当前区间”。 这也称为重新归一化。这也称为重新归一化。给定符号序列的算术编码步骤如下:给定符号序列的算术编码步骤如下: (3 3)最后一个符号对应有最后输出的)最后一个符号对应有最后输出的“当前区间当前区间” ” 。 最后输出的最后输出的“当前区间当前区间”的下边界就是该给定的的下边界就是该给定的整个符号序列的算术编码。整个符号序列的算术编码。算术编码方法算术编码方法算算术术编编码码用用到到两两个个基基本本的的参参数数:符符号号的的概概率率和和它它的累积概率。的累积概率。累积概率(累积概率(下下边界值):边界值): 设信源符号集为设信源符号集为 A=A=a a0 0, , a a1 1, , a a2 2, , , a am-1m-1 相应的概率为相应的概率为Pi Pi, i=0 i=0, 1 1, 2 2, , m-1 m-1。 各符号的累积概率各符号的累积概率P Pr r为为: :a a0 0的的累累积积概概率率为为0 0, a a1 1的的累累积积概概率率为为P P0 0 , a a2 2的的累累积积概率为概率为 P P0 0 + P + P1 1算术编码示例:算术编码示例: 符号符号 S1 S1、 S2 S2、 S3 S3、 S4 S4 十进制概率十进制概率 1/8 1/4 1/2 1/8 1/8 1/4 1/2 1/8 二进制概率二进制概率P Pi i 0.001 0.01 0.1 0.001 0.001 0.01 0.1 0.001 累积概率累积概率P Pr r 0 0.001 0.011 0.1110 0.001 0.011 0.111 0 1/8 3/8 0 1/8 3/8 7/8 7/8 1 1 0 0.001 0.011 0.111 0 0.001 0.011 0.111 1 1 现在以符号序列:现在以符号序列:s3s3 s3s3 s2s2 s4 s4 为例来解释编码过程为例来解释编码过程算术编码的基本法则归纳如下算术编码的基本法则归纳如下: :(1) (1) 初始状态初始状态 区间起始点区间起始点C=0C=0, , 区间宽度区间宽度A=1.0A=1.0。(2)(2)新区间起点新区间起点C C= =原起点原起点C+C+原区间宽度原区间宽度AAP Pr r, , 新区间宽度新区间宽度A A= =原区间宽度原区间宽度AAPi Pi 其中其中P Pr r为所编符号为所编符号si si对应的对应的累积概率累积概率 Pi Pi为所编符号为所编符号si si对应的对应的概率概率。对序列对序列s3s3 s3s3 s2s2 s4s4 进行编码的过程如下进行编码的过程如下: :初始起点初始起点C=0 C=0 初始区间宽度初始区间宽度A=1A=1第第1 1个符号个符号s3s3: :新区间起点:新区间起点: C C=0+1=0+10.0110.011=0.011=0.011新区间宽度新区间宽度: A A=1=10.10.1=0.1 =0.1 区间终点为区间终点为0.1110.111新的新的当前区间当前区间范围为:范围为:0.011-0.011-0.1110.111第第2 2个符号个符号s3s3: : 新区间起点:新区间起点: C C =0.011+0.10.011=0.1001 =0.011+0.10.011=0.1001新区间宽度新区间宽度: A A=0.1=0.10.10.1=0.01 =0.01 区间终点区间终点0.11010.1101新的新的当前区间当前区间为:为:0.1001-0.1001- -0.11010.1101 第第3 3个符号个符号s2s2: : 新区间起点:新区间起点:C C=0.1001+0.01=0.1001+0.010.0010.001=0.10011=0.10011新区间宽度:新区间宽度: A A=0.01=0.010.010.01=0.0001 =0.0001 新的新的当前区间当前区间为:为:0.10011-0.10011- -0.101010.10101 第第4 4个符号个符号s4:s4: 新区间起点:新区间起点:C C = 0.10011+0.0001= 0.10011+0.00010.1110.111= = 0.10100110.1010011新区间宽度:新区间宽度:A A = 0.0001 = 0.00010.0010.001 = 0.0000001= 0.0000001取最后符号的当前区间的下边界作为序列的算术编取最后符号的当前区间的下边界作为序列的算术编码码所以最终编完的码字是所以最终编完的码字是 0.1010011 0.1010011算数编码的代码长度算数编码的代码长度L L为多少?为多少?根据信源熵:根据信源熵:得出,算数编码的代码长度得出,算数编码的代码长度L L: N N 代表出现的符号数量代表出现的符号数量 代表代表大于大于X X的的最小最小整数。整数。 代码取其值小数点后的代码取其值小数点后的L L位。若有尾数,就进位位。若有尾数,就进位到第到第L L位。位。如:如: 则取则取 L= L=3 3 如果最后符号的下边界为如果最后符号的下边界为0.101100010.10110001 取:取:c=0.11c=0.110 0 传输的二进制代码序列是传输的二进制代码序列是11110 0刚才例题最终编完的码字刚才例题最终编完的码字0.10100110.1010011传输传输s3s3 s3s3 s2s2 s4s4共共4 4个符号,得个符号,得取取7 7位位所以传输的码流为所以传输的码流为10100111010011压缩率为:压缩率为:42/7=8/7=1.14:142/7=8/7=1.14:1算术编码解码过程算术编码解码过程 在解码器中在解码器中, ,当收到码字串当收到码字串0.1010.10100001111时时, , 这个码字串指向子区间这个码字串指向子区间0.011,0.011, 0.111)0.111), , 解出的第一个符号应为解出的第一个符号应为s3s3 0 0.001 0.011 0 0.001 0.011 0.111 0.111 1.01.0 算术编码解码过程算术编码解码过程 之后之后采取与编码过程相反的步骤:采取与编码过程相反的步骤: 即即:从码字串中减去从码字串中减去已解符号已解符号的的累积概率累积概率, ,并将并将差差值值除以除以概率值概率值, ,则得到新码字串。则得到新码字串。 (0.10100111(0.10100111- -0.011)0.011)(0.1)=(0.1)=0.1000110.100011。 新码字串仍落在新码字串仍落在0.011,0.111)0.011,0.111)区间之内区间之内, , 解出的第解出的第2 2个符号仍为个符号仍为s3s3。 后面的过程以此类推后面的过程以此类推 0 0.001 0 0.001 0.011 0.011 0.111 0.111 1.0 1.0 (0.100011-0.0110.100011-0.011)/0.1=0.01011/0.1=0.01011 0.010110.01011在在0.0010.001,0.0110.011)所以是所以是s2s2区间区间 解出的第解出的第3 3个符号为个符号为s2s2第四步:第四步:(0.01011-0.0010.01011-0.001)/0.01=0.111/0.01=0.111因为因为0.1110.111在在0.1110.111,1.01.0)是)是s4s4区间区间解出的第解出的第4 4个符号为个符号为s4s4所以(所以(0.111-0.1110.111-0.111)/0.001=0/0.001=0 即:即:s3 s3 s2 s4s3 s3 s2 s4 解码完毕!解码完毕! 0 0.001 0.011 0 0.001 0.011 0.111 0.111 1.0 1.0例:假设信源符号为例:假设信源符号为AA,B B,C C,DD,这些符号,这些符号的概率分别为的概率分别为 0.1 0.1,0.40.4,0.20.2,0.3 0.3 , 根据这些概率可把间隔根据这些概率可把间隔0 0,1 1)分成)分成4 4个子间个子间0 0,0.10.1)、)、0.10.1,0.50.5)、)、0.50.5,0.70.7)、)、 0.7 0.7,1 1),),其中其中x x,y y)表示半开放间隔,即包含)表示半开放间隔,即包含x x不包含不包含y y。二进制消息序列的输入为:二进制消息序列的输入为:C A D A C D B C A D A C D B 。 编码编码:首先输入的符号是首先输入的符号是C C:新区间起点:新区间起点: C C=0+1=0+10.50.5=0.5=0.5新区间宽度:新区间宽度: A A=1=10.20.2=0.2 =0.2 区间终点区间终点: : 0.5+0.2=0.70.5+0.2=0.7新的当前区间范围为:新的当前区间范围为:0.5-0.5- -0.70.7二进制消息序列的输入为:二进制消息序列的输入为:C A D A C D B C A D A C D B 。 新的当前区间范围为:新的当前区间范围为:0.5-0.70.5-0.7 新区间宽度:新区间宽度: A A=1=10.20.2=0.2 =0.2 第第2 2个符号个符号A: A: 新区间起点:新区间起点:C C=0.5+0.2=0.5+0.20 0=0.5=0.5新区间宽度:新区间宽度: A A=0.2=0.20.10.1=0.02 =0.02 终点:终点:0.5+0.02=0.520.5+0.02=0.52新的当前区间为:新的当前区间为:0.5-0.5- -0.520.52二进制消息序列的输入为:二进制消息序列的输入为:C A D A C D B C A D A C D B 。 当前区间为:当前区间为:0.5-0.5- -0.520.52新区间宽度:新区间宽度: A A=0.2=0.20.10.1=0.02 =0.02 第第3 3个符号个符号D: D: 新区间起点:新区间起点:C C=0.5+0.02=0.5+0.020.70.7=0.514=0.514新区间宽度:新区间宽度: A A=0.02=0.020.30.3=0.006 =0.006 终点:终点:0.514+0.006=0.520.514+0.006=0.52新的当前区间为:新的当前区间为:0.514-0.514- -0.520.52二进制消息序列的输入为:二进制消息序列的输入为:C A D A C D B C A D A C D B 。当前区间为:当前区间为:0.514-0.514- -0.520.52新区间宽度:新区间宽度: A A=0.02=0.020.30.3=0.006 =0.006 第第4 4个符号个符号A: A: 新区间起点:新区间起点:C C=0.514+0.006=0.514+0.0060 0=0.514=0.514新区间宽度:新区间宽度:A A=0.006=0.0060.10.1=0.0006 =0.0006 终点:终点: 0.514+0.0006=0.5146 0.514+0.0006=0.5146新的当前区间为:新的当前区间为:0.514-0.514- - 0.51460.5146二进制消息序列的输入为:二进制消息序列的输入为:C A D A C D B C A D A C D B 。新的当前区间为:新的当前区间为:0.514-0.514- - 0.51460.5146新区间宽度:新区间宽度:A A=0.006=0.0060.10.1=0.0006 =0.0006 第第5 5个符号个符号C: C: 新区间起点:新区间起点:C C=0.514+0.0006=0.514+0.00060.50.5=0.5143=0.5143新区间宽度:新区间宽度: A A=0.0006=0.00060.20.2=0.00012 =0.00012 终点:终点:0.5140.5143 3+0.000+0.0001212=0.514=0.5144242新的当前区间为:新的当前区间为:0.5143-0.5143- -0.514420.51442二进制消息序列的输入为:二进制消息序列的输入为:C A D A C D B C A D A C D B 。新的当前区间为:新的当前区间为:0.5143-0.5143- -0.514420.51442新区间宽度:新区间宽度: A A=0.0006=0.00060.20.2=0.00012 =0.00012 第第6 6个符号个符号D:D: 新区间起点:新区间起点:C C=0.5143+0.00012=0.5143+0.000120.70.7=0.514384=0.514384新区间宽度:新区间宽度: A A=0.00012=0.000120.30.3=0.000036 =0.000036 终点:终点:0.5140.514384384+0.000+0.000036036=0.514=0.5144242新的当前区间为:新的当前区间为:0.514384-0.514384- -0.514420.51442二进制消息序列的输入为:二进制消息序列的输入为:C A D A C D B C A D A C D B 。新的当前区间为:新的当前区间为:0.514384-0.514384- -0.514420.51442新区间宽度:新区间宽度: A A=0.00012=0.000120.30.3=0.000036 =0.000036 第第7 7个符号个符号B:B: 新区间起点:新区间起点:C C=0.514384+0.000036=0.514384+0.0000360.10.1=0.5143876=0.5143876新区间宽度:新区间宽度: A A=0.000036=0.0000360.40.4=0.0000144 =0.0000144 新的当前区间为:新的当前区间为:0.5143876-0.5144020.5143876-0.514402最终编完的码字是最终编完的码字是 0.5143876 0.5143876根据根据传输传输CADACDBCADACDB,共,共7 7个符号个符号 取取1313位位 最终编完的码字是最终编完的码字是 0.51438760.5143876 变换的二进制为变换的二进制为0.100000111010110.10000011101011 所以传输的码流为所以传输的码流为10000011101101000001110110 压缩率为:压缩率为:14/13=1.1:114/13=1.1:1 假设信源符号为假设信源符号为 A A, B B, C C, D D,符号的概率分别为符号的概率分别为 0.1 0.1, 0.4 0.4, 0.2 0.2, 0.3 0.3 ,传输数据序列为传输数据序列为:B B C C B B D D A A,求算术编码及其编码效率。求算术编码及其编码效率。 AA, B B, C C, D D,概率概率 0.1 0.1, 0.4 0.4, 0.2 0.2, 0.3 0.3 , A A, B B, C C, D D概率概率 0.1 0.1 0.4 0.4 0.2 0.2 0.3 0.3累积概率累积概率 0 0 0.1 0.1 0.5 0.5 0.7 0.7传输数据序列为传输数据序列为:B B C C B B D D A AB: B: C=C= 0 + 10.1=0.1 0 + 10.1=0.1 A A=10.4=0.4 =10.4=0.4 C:C: C C = 0.1+ 0.4 0.5= 0.3 = 0.1+ 0.4 0.5= 0.3 A=0.40.2= 0.08 A=0.40.2= 0.08 B:B: C C = 0.3 + 0.080.1 = 0.308 = 0.3 + 0.080.1 = 0.308 A A = 0.08 0.4 = 0.032 = 0.08 0.4 = 0.032 D:D: C C = 0.308 + 0.032 0.7 = 0.3304= 0.308 + 0.032 0.7 = 0.3304 A A = 0.032 0.7 = 0.0096 = 0.032 0.7 = 0.0096 A:A: C C = 0.3304 + 0.0096 0 = 0.3304 = 0.3304 + 0.0096 0 = 0.3304 A A = 0.0096 0.1 = 0.00096 = 0.0096 0.1 = 0.00096 输出:输出:0.3304 0.3304 换为二进制数,取的位数为:换为二进制数,取的位数为: 所以最终输出为:所以最终输出为:0101010010 0101010010 编码效率为:编码效率为:算术编码算术编码 算术编码算术编码的优点的优点: 渐近最佳性渐近最佳性- 当当序序列列无无限限增增长长时时,平平均均码码长长将将渐渐近近地地等等于于序序列的信源熵值列的信源熵值. . 算术编码具有比哈夫曼编码更好的压缩率算术编码具有比哈夫曼编码更好的压缩率 算术编码算术编码在算术编码中有几个问题需要注意:在算术编码中有几个问题需要注意: 一、算术编码器对整个消息只产生一个码字,一、算术编码器对整个消息只产生一个码字,这个码字是在间隔这个码字是在间隔0 0,1 1中的一个实数,因此译中的一个实数,因此译码器在接受到表示这个实数的所有位之前不能码器在接受到表示这个实数的所有位之前不能进行译码。进行译码。二、算术编码也是一种对错误很敏感的编码方二、算术编码也是一种对错误很敏感的编码方法,如果有一位发生错误就会导致整个消息译法,如果有一位发生错误就会导致整个消息译错。错。 4.4 4.4 限失真图像压缩编码方法限失真图像压缩编码方法 在有损图像编码方法中,允许有一定的失真在有损图像编码方法中,允许有一定的失真存在,压缩了信源熵,提高压缩比。存在,压缩了信源熵,提高压缩比。 有损压缩经常压缩图像和视频等。有损压缩经常压缩图像和视频等。 在这一节,我们讨论常用的一些在这一节,我们讨论常用的一些图像信号的图像信号的有损有损压缩技术。压缩技术。 有损图像压缩编码有损图像压缩编码预测编码预测编码 预测编码主要是减少预测编码主要是减少图像图像在在时间上时间上和和空间上空间上的相关性。的相关性。 有损图像压缩编码有损图像压缩编码预测编码预测编码 预测编码就是用已经传输的样本值对当前预测编码就是用已经传输的样本值对当前的样本值进行预测,然后对实际的样本值与预的样本值进行预测,然后对实际的样本值与预测值的测值的差值(预测误差)差值(预测误差)进行编码处理和传输。进行编码处理和传输。 预测编码预测编码预测编码分为两类:预测编码分为两类:帧内预测帧内预测:预测可以在一帧图像内进行预测可以在一帧图像内进行。 针对一幅图像的空间冗余针对一幅图像的空间冗余帧间预测帧间预测:预测在多帧图像之间进行。:预测在多帧图像之间进行。 针对活动图像的时间冗余针对活动图像的时间冗余 预测编码预测编码帧内预测帧内预测 帧内预测编码是针对一幅图像,减少其空间上帧内预测编码是针对一幅图像,减少其空间上的相关性来实现数据压缩的。的相关性来实现数据压缩的。 通常采用差分脉冲编码调制通常采用差分脉冲编码调制(DPCM)(DPCM)来实现来实现。图中图中x x( (n n) )为采样的图像数据,为采样的图像数据, 为为x x( (n n) )的预测值,的预测值, 是实际值和预测值的差值,是实际值和预测值的差值, 是是d d( (n n) )的量化值,量化的过程会引入量化噪的量化值,量化的过程会引入量化噪声。声。 是引入量化误差的是引入量化误差的x x( (n n) )。差分脉冲编码调制差分脉冲编码调制(DPCM)(DPCM) 在图像信号中应用在图像信号中应用DPCMDPCM时,用作预测的像素时,用作预测的像素和被预测的像素可以在同一行,也可以在不同和被预测的像素可以在同一行,也可以在不同行(同一帧),分别称为:行(同一帧),分别称为:一维预测:一维预测: 用作预测的样值都与被预测的样值用作预测的样值都与被预测的样值在在同一行内。同一行内。二维预测:二维预测:用作预测的样值位于相邻的不同行上。用作预测的样值位于相邻的不同行上。 用作预测的样值均与被预测的样值在同一行内用作预测的样值均与被预测的样值在同一行内( (如如x1,x2x1,x2与与X)X), ,称为一维预测称为一维预测; ; 用作预测的样值位于相邻的不同行上时用作预测的样值位于相邻的不同行上时( (如如x1,x2x1,x2,x3,x4x3,x4与与X X) )则称为二维预测。则称为二维预测。被预测像素被预测像素 一维预测利用了像素之间在水平方向上的相关性。一维预测利用了像素之间在水平方向上的相关性。 一阶的一维预测值为一阶的一维预测值为 : 黑电平黑电平 预测误差大预测误差大 五阶的五阶的二维预测二维预测的预测值的预测值: 差分脉冲编码差分脉冲编码调调制制(DPCM)(DPCM) 优点优点: 算法简单,容易硬件实现算法简单,容易硬件实现 缺点缺点: 对信道噪声很敏感,会产生误差扩散。对信道噪声很敏感,会产生误差扩散。 压缩率比较低。压缩率比较低。预测编码预测编码帧间预测编码帧间预测编码 帧间预测编码帧间预测编码是利用视频图像帧间的相关是利用视频图像帧间的相关性,即时间相关性,来达到图像压缩的目的。性,即时间相关性,来达到图像压缩的目的。 广泛用于普通电视、会议电视、视频电话、广泛用于普通电视、会议电视、视频电话、高清晰度电视的压缩编码。高清晰度电视的压缩编码。 动态图像以每秒动态图像以每秒25 (30)25 (30)帧播放,在如帧播放,在如此短的时间内,画面通常不会有大的变化;此短的时间内,画面通常不会有大的变化; 在画面中变化的只是运动的部分,静止的在画面中变化的只是运动的部分,静止的部分往往占有较大的面积;部分往往占有较大的面积; 即使是运动的部分,也多为简单的平移即使是运动的部分,也多为简单的平移活动图像预测编码活动图像预测编码帧间预测编码帧间预测编码帧间预测:帧间预测: 不直接传送当前帧的像素值不直接传送当前帧的像素值x x,而是传送,而是传送x x和其前和其前一帧或后一帧的对应像素一帧或后一帧的对应像素x x之间的差值之间的差值e=x-xe=x-x。活动图像预测编码活动图像预测编码帧间预测编码帧间预测编码 估估计计出出云云朵朵运运动动的的方方向向和和速速度度(位位移移矢矢量量),可可以以从从云云朵朵在在k-1k-1帧帧的的位位置置推推算算出出它它在在k k帧帧中中的的位置来,而背景图像仍以前一帧的背景代替。位置来,而背景图像仍以前一帧的背景代替。 预测误差小。预测误差小。 k-1 k-1帧帧 k k帧帧背景区背景区活动物体活动物体活动图像预测编码活动图像预测编码帧间预测编码帧间预测编码活动图像帧间预测编码分为两种:活动图像帧间预测编码分为两种:一、具有运动补偿的帧间预测一、具有运动补偿的帧间预测二、帧间内插二、帧间内插具有运动补偿的帧间预测具有运动补偿的帧间预测 对运动区域进行预测对运动区域进行预测: 首先要估计出运动物体的运动矢量首先要估计出运动物体的运动矢量D D 然后再根据运动矢量进行补偿,然后再根据运动矢量进行补偿, 即找出物体在即找出物体在下下一帧的区域位置。一帧的区域位置。 具有运动补偿的帧间预测具有运动补偿的帧间预测 将考虑了运动物体位移将考虑了运动物体位移矢量矢量D D的的k-1k-1帧图像帧图像作为作为k k帧的预测值,预测误差帧的预测值,预测误差会会变小,从而可以变小,从而可以达到更高的数据压缩比。这种预测方法称为具达到更高的数据压缩比。这种预测方法称为具有运动补偿的帧间预测。有运动补偿的帧间预测。 在帧间预测中引入运动补偿的目的在帧间预测中引入运动补偿的目的: 减少预测误差,提高编码效率。减少预测误差,提高编码效率。 具有运动补偿的帧间预测编码是视频压缩具有运动补偿的帧间预测编码是视频压缩的关键技术之一。的关键技术之一。 它包括以下几个步骤:它包括以下几个步骤: 一、图像划分:一、图像划分: 将图像分解成相对静止的背景和若干个运动将图像分解成相对静止的背景和若干个运动的物体,各个物体可能有不同的位移,但构的物体,各个物体可能有不同的位移,但构成每个物体的所有像素的位移相同。成每个物体的所有像素的位移相同。 二、二、 运动检测与估值:运动检测与估值: 对每一个运动物体进行运动估值,得到每对每一个运动物体进行运动估值,得到每个物体的运动位移矢量个物体的运动位移矢量D D 三、运动补偿:三、运动补偿: 利用位移矢量利用位移矢量D D计算经运动补偿后的预测值计算经运动补偿后的预测值 四、预测编码:四、预测编码: 对实际值与运动补偿预测值的差值(预测对实际值与运动补偿预测值的差值(预测误差)进行量化、编码、传输。误差)进行量化、编码、传输。 具有运动补偿的帧间预测具有运动补偿的帧间预测运动估值运动估值 提取位移矢量提取位移矢量D D t t时刻运动物体的像素值(亮度,彩色)时刻运动物体的像素值(亮度,彩色)b bt t可以用可以用在此之前在此之前 时间的像素值时间的像素值b bt-t-来表示。这两个像素来表示。这两个像素点坐标值之差被称为位移矢量点坐标值之差被称为位移矢量D D: b bt t(z)=z)= b bt-t-(z-(z- D)D) 上式表示,上式表示,t t时刻时刻z z位置位置的像的像素素是是t-t-时刻时刻z-Dz-D位置位置的的像像素素 时间时间运动运动了矢量了矢量D D后后的结果。的结果。运动补偿运动补偿运动估值运动估值通常采用的运动矢量估值方法主要分为两大通常采用的运动矢量估值方法主要分为两大类:类: 像素递归法像素递归法PRAPRA 块匹配法块匹配法BMABMA像素递归法像素递归法PRAPRA :精度高:精度高 算法复杂算法复杂 运动估值运动估值块匹配法块匹配法SMASMA 原理:原理: 它将图像划分为许多它将图像划分为许多NNNN像素的子块,像素的子块,每块看成是一个物体。并认为子块内所有像素每块看成是一个物体。并认为子块内所有像素的位移量是相同的,这意味着将每个子块视为的位移量是相同的,这意味着将每个子块视为一个一个“运动物体运动物体”。 目前实用的目前实用的活动图像活动图像压缩标准中压缩标准中( (如如H.261H.261、MPEGMPEG等等) )都选择都选择16161616或或8888大小的图像子块。大小的图像子块。 运动估值运动估值块匹配法块匹配法SMASMA 原理:原理: 对于当前的图像帧中的某一子块对于当前的图像帧中的某一子块B B,如果,如果在另一时间帧中可以找到与其最为相似的子块在另一时间帧中可以找到与其最为相似的子块B*B*,称为,称为匹配块匹配块(最相似块),并认为该子块(最相似块),并认为该子块B B是匹配块是匹配块B*B*位移后得到的结果。位移后得到的结果。 通过通过B B和和B*B*的坐标位置便可以确定位移矢量的坐标位置便可以确定位移矢量D D。 块匹配法块匹配法BMABMA精度低于精度低于像素递归法像素递归法PRAPRA, 但其位移跟踪能力强(不低于但其位移跟踪能力强(不低于6 67 7像素像素/ /帧),帧), 实实现现简简单单,尤尤其其适适合合于于物物体体作作平平移移运运动动,因因此此应用很广泛。应用很广泛。 它它在在活活动动图图像像压压缩缩标标准准H.261H.261、 H.263H.263、 MPEG-1MPEG-1、 MPEG-2MPEG-2及及 MPEG-4MPEG-4等等国国际际标标准准中中都都被采用。被采用。具有运动补偿的帧间预测具有运动补偿的帧间预测具有运动补偿的帧间预测分为三种预测方式:具有运动补偿的帧间预测分为三种预测方式:l前向预测前向预测l后向预测后向预测l双向预测双向预测具有运动补偿的帧间预测具有运动补偿的帧间预测l前向预测:前向预测: 帧间预测方法是由第帧间预测方法是由第k-1k-1帧来预测第帧来预测第k k帧图像帧图像的预测方式的预测方式, ,这种方式就是这种方式就是前向预测前向预测。l后向预测:后向预测: 如果待预测的子块是在第如果待预测的子块是在第k k帧,而搜索区处于帧,而搜索区处于第第k k+1+1帧。也就是从后续的帧。也就是从后续的k k+1+1帧图像预测帧图像预测之之前前的的第第k k帧图像帧图像, ,这种预测方法称为这种预测方法称为后向预测后向预测。l双双向预测:向预测:预测误差小预测误差小, ,传输的数据率低。传输的数据率低。压缩比大压缩比大l双双向预测:向预测: 对于对于k k帧中的子块帧中的子块, ,先从先从k-1k-1帧中找到它的最佳帧中找到它的最佳匹配块匹配块, ,从而得到该子块从从而得到该子块从k-1k-1到到k k帧的位移矢量帧的位移矢量Dl,Dl, 再利用后向预测得到它从再利用后向预测得到它从k+1k+1到到k k帧的位移矢量帧的位移矢量D2,D2, 二者的平均值作为二者的平均值作为k k帧子块的预测值。帧子块的预测值。 进一步降低预测误差。进一步降低预测误差。帧间预测帧间预测双向预测双向预测 双向预测所付出的代价是:双向预测所付出的代价是: 对每一个子块需要传送对每一个子块需要传送2 2个位移矢量个位移矢量D1D1、D2D2给给收端收端, ,而且而且k k帧的恢复必须等到接收到帧的恢复必须等到接收到k+1k+1帧之后帧之后才能进行。才能进行。 解码运算的帧顺序是解码运算的帧顺序是:k-1k-1帧、帧、k+1k+1帧、帧、k k帧帧 而图像显示的顺序是而图像显示的顺序是k-1k-1、k k、k+1k+1。 要保持显示的连续性要保持显示的连续性, ,需要多引需要多引入入1 1帧的延时。帧的延时。帧间预测帧间预测活动图像帧间内插活动图像帧间内插 在在具有运动补偿的具有运动补偿的帧间预测帧间预测编码系统中编码系统中,图图像的传输帧率并没有变化,仍与编码前的帧率像的传输帧率并没有变化,仍与编码前的帧率一样。一样。帧间预测帧间预测活动图像帧间内插活动图像帧间内插 在某些应用场合如:在某些应用场合如: 可视电话、视频会议可视电话、视频会议 活动很慢的图像,对图像传输帧率的要求可适活动很慢的图像,对图像传输帧率的要求可适当降低当降低,可以少传一些帧。可以少传一些帧。 活动图像的帧间内插活动图像的帧间内插 对于静止图像或活动很慢的图像,可以少对于静止图像或活动很慢的图像,可以少传一些帧,如进行隔帧传输。传一些帧,如进行隔帧传输。 未传输的帧,可以利用接收端的帧存储器中未传输的帧,可以利用接收端的帧存储器中前一帧的数据作为该帧数据,以防止帧频下降前一帧的数据作为该帧数据,以防止帧频下降引起图像的闪烁和动作不连续。引起图像的闪烁和动作不连续。 广泛应用于视频电话、视频会议系统中。广泛应用于视频电话、视频会议系统中。 其图像帧速率一般为其图像帧速率一般为1-151-15帧帧/ /秒。秒。活动图像的帧间内插活动图像的帧间内插 存在的问题:存在的问题: 当图像中存在运动物体时当图像中存在运动物体时, ,出出来来的结果与真的结果与真实运动轨迹存在误差实运动轨迹存在误差, ,从视觉效果来看,即存在从视觉效果来看,即存在图像模糊现象。图像模糊现象。 具有运动补偿具有运动补偿的帧间内插的帧间内插 即要确定运动物体在丢弃帧中的位置即要确定运动物体在丢弃帧中的位置 估计出该物体的运动方向和速度估计出该物体的运动方向和速度-位移矢量位移矢量D D。 这种方法可以有效的降低图像模糊现象。这种方法可以有效的降低图像模糊现象。 具有运动补偿具有运动补偿的帧间内插的帧间内插 具有运动补偿的帧间内插和帧间预测都具有运动补偿的帧间内插和帧间预测都需要进行运动估值需要进行运动估值. . 但二者的目的以及运动估值不准确所带来的影但二者的目的以及运动估值不准确所带来的影响不相同。响不相同。帧间内插运动补偿帧间内插运动补偿与与帧间预测的运动补偿帧间预测的运动补偿区别区别 ?帧间预测的运动估值帧间预测的运动估值 在帧间预测中引入运动补偿的目的是为了减少在帧间预测中引入运动补偿的目的是为了减少预测误差,从而提高编码效率。预测误差,从而提高编码效率。 运动估值的不准确会使预测误差加大,从而运动估值的不准确会使预测误差加大,从而使传输的数据率上升。压缩率下降。使传输的数据率上升。压缩率下降。 接收端根据此位移矢量和预测误差进行解码接收端根据此位移矢量和预测误差进行解码并不会引起图像质量下降。并不会引起图像质量下降。帧间预测的运动估值多采用帧间预测的运动估值多采用块匹配法块匹配法。帧间内插的运动估值帧间内插的运动估值 在帧间内插中引入运动补偿的目的,是使恢在帧间内插中引入运动补偿的目的,是使恢复的内插帧中的运动物体不致因为内插而引起复的内插帧中的运动物体不致因为内插而引起图像质量太大的下降,导致图像模糊现象。图像质量太大的下降,导致图像模糊现象。 帧间内插的运动估值帧间内插的运动估值 帧间内插中的位移矢量估值一般要对运动区帧间内插中的位移矢量估值一般要对运动区的每一个像素进行,而不是对一个子块;否则的每一个像素进行,而不是对一个子块;否则帧间内插同样会引起运动物体边界的模糊现象。帧间内插同样会引起运动物体边界的模糊现象。 因此在帧间内插的运动估值较多使用能够给因此在帧间内插的运动估值较多使用能够给出单个像素位移矢量的出单个像素位移矢量的像素递归法像素递归法。限失真图像压缩编码限失真图像压缩编码变换编码变换编码 如果对图像数据进行某种形式的正交变换如果对图像数据进行某种形式的正交变换, ,并对变换后的数据进行编码并对变换后的数据进行编码, ,从而达到数据压缩从而达到数据压缩的目的的目的, ,这就是变换编码。这就是变换编码。 变换编码是一种有效的图像压缩方法变换编码是一种有效的图像压缩方法, ,它是所它是所有有损压缩国际标准的基础。有有损压缩国际标准的基础。变换编码变换编码 变换编码不直接对原图像信号压缩编码变换编码不直接对原图像信号压缩编码, ,而首先而首先将图像信号从将图像信号从空间域(或时间域)空间域(或时间域)映射到另一映射到另一个域个域变换域(或频率域)变换域(或频率域)中。中。 产生一组变换系数。产生一组变换系数。 然后对这些系数进行量化、编码、传输。然后对这些系数进行量化、编码、传输。 变换编码变换编码 预测编码是在空间域(或时间域)内进行的。预测编码是在空间域(或时间域)内进行的。 变换编码则是在变换编码则是在变换域(或频率域)内进行的。变换域(或频率域)内进行的。变换编码变换编码 在在变换域(或频率域)变换域(或频率域): : 能量主要集中在低频部分能量主要集中在低频部分 变换后的变换系数之间的相关性大大降低。变换后的变换系数之间的相关性大大降低。 变换编码变换编码 图像变换编码一般图像变换编码一般利用了利用了视觉心理编码。视觉心理编码。一、一、分块分块: 目的减小运算量。目的减小运算量。 将原始图像分成将原始图像分成“若干个子像块若干个子像块”,”,然后对每然后对每个子像块进行变换。个子像块进行变换。 一般子图像块的大小选为一般子图像块的大小选为8888或或16161616。变换编码变换编码 对图像进行子块划分的另一个好处是对图像进行子块划分的另一个好处是: : 可以将传输误差所造成的图像损伤限制在子图可以将传输误差所造成的图像损伤限制在子图像的范围之内像的范围之内, ,从而避免误码的扩散。从而避免误码的扩散。变换编码变换编码二二视觉心理编码视觉心理编码 对每一个变换系数或主要的变换系数进行量化对每一个变换系数或主要的变换系数进行量化和编码。和编码。 量化特性和编码的比特数是由人的视觉特性确定量化特性和编码的比特数是由人的视觉特性确定的。的。人眼对不同频率分量的敏感程度是不同的人眼对不同频率分量的敏感程度是不同的变换编码变换编码二、二、视觉心理编码视觉心理编码 对不同频率系数采用不同的量化台阶,以进对不同频率系数采用不同的量化台阶,以进一步提高压缩比:一步提高压缩比: 低频系数采用的量化台阶小,编码的比特多;低频系数采用的量化台阶小,编码的比特多;高频系数采用的量化台阶大,编码的比特少。高频系数采用的量化台阶大,编码的比特少。变换编码变换编码 变换编码的基本思路:变换编码的基本思路: 在编码时略去某些能量很小的高频分量,在编码时略去某些能量很小的高频分量,或在量化时对能量较小的分量分配较少的比特或在量化时对能量较小的分量分配较少的比特数,以降低码率。数,以降低码率。 在接收端经解码、反量化后得到带有一定在接收端经解码、反量化后得到带有一定量化量化失真失真的变换系数的变换系数, ,再经反变换就可恢复图像信号。再经反变换就可恢复图像信号。 变换编码也是一种有损压缩编码。变换编码也是一种有损压缩编码。基本原理基本原理子块子块 1子块子块 2子块子块 n.正变换正变换滤波滤波量化量化编编码码信道信道解解码码逆变换逆变换综合综合拼接拼接源图像(发送)源图像(发送)恢复图像(接收)恢复图像(接收)变换编码变换编码系统原理图系统原理图正交正交变换的类型变换的类型 变换编码中的关键技术在于变换编码中的关键技术在于正交变换。正交变换。 正交变换的变换核正交变换的变换核( (变换矩阵变换矩阵) )是可逆的是可逆的, ,且逆矩阵且逆矩阵与转置矩阵相等与转置矩阵相等, ,能够保证解码运算有解且运算能够保证解码运算有解且运算方便。方便。 所以变换编码总是选用正交变换来做。所以变换编码总是选用正交变换来做。 正交变换的种类:正交变换的种类:傅氏变换傅氏变换沃尔什变换沃尔什变换哈尔变换哈尔变换离散余弦变换离散余弦变换离散正弦变换离散正弦变换K-LK-L变换变换小波变换小波变换离散余弦变换离散余弦变换(DCT)(DCT)正变换:变换系数正变换:变换系数逆变换:逆变换: f f(x,y)(x,y)实质上是实质上是8888像素的空间图像(像素的空间图像(6464个个抽样值),抽样值),DCTDCT将其变换成将其变换成6464个正交基信号,个正交基信号,是是f(x,y)f(x,y)的的6464个个DCTDCT系数。系数。F(F(u u, ,v v) )可以表示为可以表示为 DCTDCT变换可以看成是一个谐波分析器,把变换可以看成是一个谐波分析器,把f(x,y)f(x,y)分解成为分解成为6464个正交的信号,分别代表着个正交的信号,分别代表着6464种不同种不同频率成分。频率成分。 DCTDCT系数即基信号振幅系数即基信号振幅 方阵中的每个数值不再表示信号在像素点的振方阵中的每个数值不再表示信号在像素点的振幅幅, ,而是表示一个而是表示一个DCTDCT系数。系数。 能量集中在少数几个低频系数上。能量集中在少数几个低频系数上。可忽略可忽略 图像信号的能量都集中在低频成分中。图像信号的能量都集中在低频成分中。 中频和高频的系数会很小或者为中频和高频的系数会很小或者为0 0值。值。 离散余弦变换把信号的能量聚集在最小的空间频离散余弦变换把信号的能量聚集在最小的空间频率内了。率内了。 DCTDCT系数矩阵系数矩阵 低頻低頻中頻中頻高頻高頻DC离散余弦变换离散余弦变换(DCT)(DCT) 总结总结: 在数据压缩过程中把中间频率和高频的系数忽在数据压缩过程中把中间频率和高频的系数忽略略, ,而只保留低频的系数。这样就可以大大减少而只保留低频的系数。这样就可以大大减少数据量数据量, ,实现数据压缩。实现数据压缩。DCTDCT变换编码变换编码过程过程DCT变换变换DCTDCT逆变换逆变换原图像原图像除以量化矩阵除以量化矩阵取整取整1 1)编码过程:)编码过程:2 2)解码过程:)解码过程:压缩图像压缩图像乘以量化矩阵乘以量化矩阵取整取整压缩压缩图像图像解压解压图像图像量化量化DCTDCT变换编码变换编码- -量化量化 DCTDCT变换输出的数据变换输出的数据F(u,v)F(u,v)还必须进行量化处理。还必须进行量化处理。 注意:注意: 在量化之前在量化之前, ,并没有发生数据丢失。并没有发生数据丢失。 如果这时将图像以如果这时将图像以DCTDCT系数形式传送或保存系数形式传送或保存, ,然后再逆向变换然后再逆向变换, ,原始图像可以准确地再现。原始图像可以准确地再现。 是无损变换。是无损变换。 DCTDCT变换编码变换编码- -量化量化 量化的目的:量化的目的: 减少减少DCTDCT系数的幅值,增加系数的零值个数,系数的幅值,增加系数的零值个数,来压缩数据。来压缩数据。 “量化处理量化处理”是压缩编码过程中图像信息产是压缩编码过程中图像信息产生失真的主要原因。生失真的主要原因。DCTDCT变换编码变换编码- -量化量化量化:采用均匀量化。量化:采用均匀量化。 但每个系数的量化台阶不同。但每个系数的量化台阶不同。量化方法:量化方法: 用一个预定义的值去除每个用一个预定义的值去除每个DCTDCT系数来对其标系数来对其标准化。准化。 这些预定义的值称为量化步长。即量化这些预定义的值称为量化步长。即量化台阶。台阶。 事先存放在一个称为量化步长表的事先存放在一个称为量化步长表的8888方块中。方块中。 也称之为也称之为“量化矩阵量化矩阵”“”“量化步长表量化步长表”DCTDCT变换编码变换编码- -量化量化例:例:原图像为:原图像为:DCTDCT变换变换除以量化矩阵,取整除以量化矩阵,取整DCTDCT变换编码变换编码- -量化量化 人眼对亮度信号比对色差信号更敏感,因此使人眼对亮度信号比对色差信号更敏感,因此使用了两种量化表:用了两种量化表: 亮度量化步长表亮度量化步长表 色差量化步长表色差量化步长表JPEGJPEG标准所推荐的亮度量化表标准所推荐的亮度量化表JPEGJPEG标准所推荐的色度量化步长表标准所推荐的色度量化步长表DCTDCT变换编码变换编码过程过程DCT变换变换DCTDCT逆变换逆变换原图像原图像除以量化矩阵除以量化矩阵取整取整1 1)编码过程:)编码过程:2 2)解码过程:)解码过程:压缩图像压缩图像乘以量化矩阵乘以量化矩阵取整取整压缩压缩图像图像解压解压图像图像熵编码熵编码DCTDCT变换编码变换编码- -压缩编码压缩编码 为实现进一步的压缩,经过处理后的系数再进为实现进一步的压缩,经过处理后的系数再进行行熵编码熵编码。 编码前首先要进行系数扫描:编码前首先要进行系数扫描:目的是将矩阵的二维系数展开成一维序列输出。目的是将矩阵的二维系数展开成一维序列输出。DCTDCT变换编码变换编码- -系数扫描方式系数扫描方式DCTDCT变换后,信号能量主要集中在直流和低变换后,信号能量主要集中在直流和低频区。频区。该区位于矩阵的左上角部分。该区位于矩阵的左上角部分。“Z”“Z”字形扫描路径字形扫描路径将二维系数展开成一维序列输将二维系数展开成一维序列输出出。在在DCTDCT系数中包含了直流系数中包含了直流系数系数DCDC和交流系数和交流系数ACAC 它们的编码方法是不同的。它们的编码方法是不同的。DCTDCT变换编码变换编码- -压缩编码压缩编码 直流系数的编码方法:直流系数的编码方法:直流系数存在两个特点:直流系数存在两个特点: 一是系数的数值比较大一是系数的数值比较大 二是相邻子图像块中的直流系数间存在较大相关二是相邻子图像块中的直流系数间存在较大相关性性, ,变化不大。变化不大。 进行单独编码进行单独编码, ,对各子块的直流系数进行对各子块的直流系数进行DPCMDPCM编编码码( (差分脉冲编码差分脉冲编码) ) 对相邻图像块之间量化对相邻图像块之间量化DCDC系数的差值系数的差值进行编码进行编码 。DCTDCT变换编码变换编码- -压缩编码压缩编码交流系数的压缩编码:交流系数的压缩编码: 最最适于进行什么编码?适于进行什么编码? 游程编码游程编码RLCRLC。 交流系数的压缩编码交流系数的压缩编码DCTDCT变换编码变换编码- -压缩编码压缩编码 DPCMDPCM编码后的直流编码后的直流DCDC系数和游程编码系数和游程编码RLCRLC后的交流后的交流ACAC系数系数还还可以使用熵编码作进一步的可以使用熵编码作进一步的压缩。压缩。如:如: 在在JPEGJPEG有损压缩算法中,使用霍夫曼编码器来有损压缩算法中,使用霍夫曼编码器来减少熵。减少熵。DCTDCT变换及压缩编码过程变换及压缩编码过程4.74.7图像压缩编码标准图像压缩编码标准 活动图像压缩标准活动图像压缩标准: : H H系列标准和系列标准和MPEGMPEG系列标准系列标准 静止图像压缩标准静止图像压缩标准: : JBIGJBIG(联合二值图像专家组)和(联合二值图像专家组)和JPEGJPEG标准标准静止图像压缩编码标准静止图像压缩编码标准JPEGJPEG JPEG(Joint Photographic Experts Group)JPEG(Joint Photographic Experts Group),即联合图像专家组,是一个由即联合图像专家组,是一个由ISOISO和和ITUITU两个组两个组织机构联合组成的一个图像专家小组,负责制织机构联合组成的一个图像专家小组,负责制定定静止的数字图像数据压缩编码标准静止的数字图像数据压缩编码标准,这个专,这个专家组开发的算法称为家组开发的算法称为JPEGJPEG算法,并且成为国际算法,并且成为国际上通用的标准,因此又称为上通用的标准,因此又称为JPEGJPEG标准。标准。 静止图像压缩编码标准静止图像压缩编码标准JPEGJPEG在在JPEGJPEG算法中,共包含四种运行模式:算法中,共包含四种运行模式: 1. 1.无损压缩编码模式无损压缩编码模式2. 2.基于基于DCTDCT的顺序编码模式的顺序编码模式3. 3.基于基于DCTDCT的累进编码模式的累进编码模式4. 4.基于基于DCTDCT的分层编码模式的分层编码模式第第一种是基于一种是基于DPCMDPCM的无损压缩算法。的无损压缩算法。 另外三种是基于离散余弦变换另外三种是基于离散余弦变换(DCT)(DCT)和和HuffmanHuffman编编码的有损压缩算法码的有损压缩算法, , 通常压缩通常压缩20-5020-50倍。倍。JPEGJPEG的运行模式的运行模式1. 1.无损压缩编码模式:无损压缩编码模式: 保证准确恢复数字图像的所有样本数据保证准确恢复数字图像的所有样本数据, ,与与原数字图像相比不会产生任何失真。原数字图像相比不会产生任何失真。 压缩比为压缩比为2 2:1 12. 2.基于基于DCTDCT的顺序编码模式:的顺序编码模式: 以以DCTDCT变换为基础变换为基础. .按照从左到右、从上到下按照从左到右、从上到下的顺序对原图像数据进行压缩编码。图像还原的顺序对原图像数据进行压缩编码。图像还原时时, ,也是按照上述顺序进行。也是按照上述顺序进行。JPEGJPEG的运行模式的运行模式3. 3.基于基于DCTDCT的累进编码模式:的累进编码模式: 以以DCTDCT变换为基础变换为基础, ,但使用了但使用了多次扫描的方法多次扫描的方法对图像数据进行编码对图像数据进行编码, ,以由粗到细逐步累加方式以由粗到细逐步累加方式进行。进行。 解码时解码时, ,在屏幕上可以先看到图像的大致面貌在屏幕上可以先看到图像的大致面貌, ,然后逐步细化直到全部还原出来为止。然后逐步细化直到全部还原出来为止。JPEGJPEG的运行模式的运行模式 4. 4.基于基于DCTDCT的分层编码模式:的分层编码模式: 它以多种分辨率进行图像编码。它以多种分辨率进行图像编码。 先从低分辨率开始先从低分辨率开始, ,逐步提高分辨率直到与原图逐步提高分辨率直到与原图像分辨率相同为止。像分辨率相同为止。 解码时,重建图像的过程也是如此解码时,重建图像的过程也是如此, ,效果与基于效果与基于DCTDCT的累进编码模式类似的累进编码模式类似, ,但处理更复杂但处理更复杂, ,压缩比压缩比可更高一些。可更高一些。 适应不同情况应用。适应不同情况应用。静止图像压缩编码标准静止图像压缩编码标准JPEGJPEG JPEGJPEG标准包含两种基本的压缩算法:标准包含两种基本的压缩算法: 一种是采用基于一种是采用基于DPCMDPCM的无损压缩算法。的无损压缩算法。 一种是基于离散余弦变换一种是基于离散余弦变换DCTDCT的有损压缩算法的有损压缩算法JPEGJPEG编码编码DPCMDPCM无损压缩编码模式无损压缩编码模式 1. 1.无损压缩编码无损压缩编码 JPEGJPEG选选用用差分脉冲编码(差分脉冲编码(DPCMDPCM)作为无损)作为无损压缩编码的方法。压缩编码的方法。 不带量化器的不带量化器的DPCMDPCM线性预测编码,属于无失真线性预测编码,属于无失真编码;编码; 带有量化器的带有量化器的DPCMDPCM线性预测编码,属于有失线性预测编码,属于有失真编码。真编码。预测方式有预测方式有8 8种种。 包括一维预测和二维预测包括一维预测和二维预测JPEGJPEG编码编码DPCMDPCM无损压缩算法无损压缩算法 JPEGJPEG编码编码DPCMDPCM无损压缩算法特点:无损压缩算法特点: 这种方法简单、易于实现,重现的图像质量好。这种方法简单、易于实现,重现的图像质量好。 但是压缩率低。但是压缩率低。 压缩比大约为压缩比大约为2 2:1 1。JPEGJPEG编码编码DTCDTC有损压缩算法有损压缩算法JPEGJPEG基于基于DCTDCT(离散余弦变换)的有损编码算法(离散余弦变换)的有损编码算法框图:框图:采样采样器器块块准准备备DCTDCT变换变换哈夫哈夫曼曼编码编码行程行程编码编码量化量化量化量化步长步长表表熵熵编码表编码表J JPEGPEG有损压缩编码算法的主要计算步骤如下:有损压缩编码算法的主要计算步骤如下:(JPEGJPEG第二种模式:基于第二种模式:基于DCTDCT的顺序编码模式)的顺序编码模式)一、块准备:将一帧图像分成一、块准备:将一帧图像分成8888的数据块。的数据块。 块准备的目的是完成图像分解。将一帧图像块准备的目的是完成图像分解。将一帧图像分成分成8888的数据块。满足的数据块。满足DCTDCT变换的要求。变换的要求。 假设一幅彩色图像假设一幅彩色图像640480640480用用YUVYUV模型表示,大小模型表示,大小为为480480行,每行行,每行640640像素。像素。 采用的图像抽样格式为采用的图像抽样格式为4:1:14:1:1。 Y Y分量就是一个分量就是一个640480640480的数值矩阵,的数值矩阵,每个色差分量是一个每个色差分量是一个320240320240的数值矩阵。的数值矩阵。 亮度数据块亮度数据块48004800个个 两个两个12001200的色差块的色差块从上至下,从左至右将块一个一个送往从上至下,从左至右将块一个一个送往DCTDCT变换器。变换器。 二、正向离散余弦变换二、正向离散余弦变换(FDCT)(FDCT):把空间域表示的:把空间域表示的像素矩阵变换成频率域表示的系数矩阵。像素矩阵变换成频率域表示的系数矩阵。 注意:注意: 在变换前先将系数从无符号数转换到带正负号数,在变换前先将系数从无符号数转换到带正负号数,即把范围为即把范围为0 0,255255的整数映射为的整数映射为128128,127127范围内的整数。范围内的整数。 即从每个像素减去即从每个像素减去128128。然后再进行。然后再进行FDCTFDCT变换。变换。 JPEGJPEG编码编码DTCDTC有损压缩算法有损压缩算法JPEGJPEG编码编码DTCDTC有损压缩算法有损压缩算法三、量化:三、量化: 使用量化步长表对使用量化步长表对DCTDCT系数进行均匀系数进行均匀量化。量化。 JPEGJPEG采用线性均匀量化器,将采用线性均匀量化器,将6464个个DCTDCT系数系数分别除以它们各自相应的量化步长,四舍五入分别除以它们各自相应的量化步长,四舍五入取整数。取整数。 JPEGJPEG标准所推荐的亮度量化表标准所推荐的亮度量化表JPEGJPEG标准所推荐的色度量化步长表标准所推荐的色度量化步长表JPEGJPEG编码编码DTCDTC有损压缩算法有损压缩算法四、四、Z Z字形扫描排序。将系数按频率顺序从二维序字形扫描排序。将系数按频率顺序从二维序列变成一维序列。列变成一维序列。 五、五、使用使用DPCMDPCM对直流系数对直流系数(DC)(DC)进行编码。进行编码。 使用游程编码使用游程编码(RLE)(RLE)对交流系数对交流系数(AC)(AC)进行编码。进行编码。 六、熵编码:使用霍夫曼六、熵编码:使用霍夫曼( (可变字长编码可变字长编码VLC)VLC)对量对量化系数进行化系数进行进一步压缩进一步压缩编码。编码。JPEGJPEG有损压缩编码算法的主要计算步骤如下:有损压缩编码算法的主要计算步骤如下:一、块准备一、块准备: :将一帧图像分成将一帧图像分成8888的数据块的数据块,完成完成图像分解。图像分解。二、正向离散余弦变换二、正向离散余弦变换(FDCT)(FDCT):把空间域表示的:把空间域表示的像素矩阵变换成频率域表示的系数矩阵。像素矩阵变换成频率域表示的系数矩阵。变换变换前先将前先将像素值减去像素值减去128128。 三、量化:三、量化: 根据根据量化步长表量化步长表,将将6464个个DCTDCT系数系数分别除以相应的量化步长,四舍五入取整数。分别除以相应的量化步长,四舍五入取整数。 JPEGJPEG有损压缩编码算法的主要计算步骤如下:有损压缩编码算法的主要计算步骤如下:四、四、Z Z字形扫描排序字形扫描排序, ,将系数按频率顺序从二维序将系数按频率顺序从二维序列变成一维序列。列变成一维序列。 五、五、使用使用DPCMDPCM对直流系数对直流系数(DC)(DC)进行编码。进行编码。 使用游程编码使用游程编码(RL(RLC C) )对交流系数对交流系数(AC)(AC)进行编码。进行编码。 六、熵编码:使用六、熵编码:使用哈哈夫曼夫曼(VLC)VLC)对量化系数编码。对量化系数编码。 静止图像编码静止图像编码JPEGJPEG累进编码累进编码模式模式3. 3.基于基于DCTDCT的累进编码模式:的累进编码模式: 累进编码模式的含义是首先在低速下传送一累进编码模式的含义是首先在低速下传送一幅粗糙的图像,然后再逐步求精。幅粗糙的图像,然后再逐步求精。 在累进编码模式中,每个图像分量的编码要在累进编码模式中,每个图像分量的编码要经过多次扫描才完成。经过多次扫描才完成。 每次扫描都仅传输其中部分每次扫描都仅传输其中部分DCTDCT系数。系数。静止图像编码静止图像编码JPEGJPEG累进编码累进编码模式模式 第一次扫描后第一次扫描后, ,所编码传输的图像只是一个粗造所编码传输的图像只是一个粗造的图像的图像, ,接收端根据接收的信息所重建的图像质接收端根据接收的信息所重建的图像质量很低量很低, ,但尚可识别。但尚可识别。静止图像编码静止图像编码JPEGJPEG累进编码累进编码模式模式 在随后的扫描中在随后的扫描中, ,再传送增加的信息(再传送增加的信息(DCTDCT系系数)。接收端将根据所接收的信息数)。接收端将根据所接收的信息, ,在首幅图像在首幅图像的基础上添加所接收的细节信息。的基础上添加所接收的细节信息。 静止图像编码静止图像编码JPEGJPEG累进编码累进编码模式模式累进编码显示累进编码显示 ( (a) a)第第1 1遍,轮廓极不分明遍,轮廓极不分明 (b)(b)第第2 2遍,轮廓不分明遍,轮廓不分明 (c)(c)第第3 3遍,轮廓分明遍,轮廓分明 静止图像编码静止图像编码JPEGJPEG累进编码累进编码模式模式 采用累进编码操作模式的系统结构与顺序模采用累进编码操作模式的系统结构与顺序模式基本相同。式基本相同。 只是在量化器与熵编码之间应增加一个缓冲只是在量化器与熵编码之间应增加一个缓冲存储器存储器, ,来存放一幅图像已经量化的全部来存放一幅图像已经量化的全部DCTDCT系系数。数。 系统便可以多次对缓冲器中存储的系统便可以多次对缓冲器中存储的DCTDCT系数系数进行扫描进行扫描, ,并分批进行熵编码。并分批进行熵编码。静止图像编码静止图像编码JPEGJPEG编码模式编码模式累进编码的显示和顺序编码的显示效果是不同的累进编码的显示和顺序编码的显示效果是不同的顺序编码:顺序编码:累进编码:累进编码:静止图像编码静止图像编码JPEGJPEG分层编码分层编码模式模式 它以它以多种分辨率多种分辨率进行图像编码进行图像编码, ,先从低分辨率先从低分辨率开始开始, ,逐步提高分辨率直到达到用户要求(或与逐步提高分辨率直到达到用户要求(或与原图像分辨率相同)为止。原图像分辨率相同)为止。 解码时,重建图像的过程也是如此解码时,重建图像的过程也是如此, ,效果与基于效果与基于DCTDCT的累进编码模式类似。的累进编码模式类似。 压缩比可更高一些。压缩比可更高一些。静止图像编码静止图像编码JPEGJPEG编码编码JPEGJPEG对自然景色图像按对自然景色图像按Y:U:V=4:2:2Y:U:V=4:2:2格式标准,即格式标准,即16b/16b/像素量化,其处理结果如下:像素量化,其处理结果如下:(1)(1)压缩到压缩到0.15b/0.15b/像素像素: :压缩比为压缩比为100:1,100:1,图像可以识别。图像可以识别。(2)0.25b/(2)0.25b/像素像素: :压缩比为压缩比为64:1,64:1,图像较好,满足多数应图像较好,满足多数应用用(3)0.75b/(3)0.75b/像素像素: :压缩比为压缩比为20:120:1,图像很好,图像很好, ,满足大多数满足大多数应用应用(4)1.5b/(4)1.5b/像素像素: :压缩比为压缩比为10:110:1,图像优秀,图像优秀, ,难于与原图难于与原图像区别像区别, ,足以满足绝大多数应用足以满足绝大多数应用(5)2.0b/(5)2.0b/像素像素: :压缩比为压缩比为8:18:1,近乎完美,近乎完美, ,满足几乎全部满足几乎全部的应用的应用静止图像编码静止图像编码JPEGJPEG编码编码视频图像压缩编码标准视频图像压缩编码标准 数字视频图像的压缩编码标准有着广泛的应用。数字视频图像的压缩编码标准有着广泛的应用。 典型的应用有:可视电话、视频会议、数字视典型的应用有:可视电话、视频会议、数字视频广播、视频邮件、视频游戏以及视频形式的频广播、视频邮件、视频游戏以及视频形式的教育和娱乐等等。教育和娱乐等等。 这些应用按照其视频质量划分,大致可分为这些应用按照其视频质量划分,大致可分为三类:三类:高质量视频高质量视频中等质量视频中等质量视频低质量视频低质量视频视频图像的种类视频图像的种类高质量视频:高质量视频: 是指那些画面较大、帧速率大于或等于是指那些画面较大、帧速率大于或等于2525帧帧/ /秒秒的彩色视频图像。的彩色视频图像。 通常可采用通常可采用ITU-R 601ITU-R 601视频格式视频格式 或高清晰度电视格式或高清晰度电视格式 主要应用于具有广播质量的数字电视或高清晰度主要应用于具有广播质量的数字电视或高清晰度电视之中。电视之中。视频图像的种类视频图像的种类中等质量视频:中等质量视频: 中等画面,帧速率在中等画面,帧速率在25-3025-30帧帧/ /秒之间的彩色视频图秒之间的彩色视频图像像 通常采用通常采用公用中分辨率视频格式公用中分辨率视频格式CIFCIF( (公用中间格公用中间格式式CIFCIF) )或或 ITU-R 601ITU-R 601视频格式视频格式 适用于电视会议、远程教育或远程医疗。适用于电视会议、远程教育或远程医疗。视频图像的种类视频图像的种类低质量视频:低质量视频:画面较小,帧速率在画面较小,帧速率在5-105-10帧帧/ /秒之间的视频图像。秒之间的视频图像。 经常使用经常使用QCIFQCIF或或CIFCIF格式格式 典型的应用是可视电话、网络游戏和视频邮件等。典型的应用是可视电话、网络游戏和视频邮件等。 视频图像的种类视频图像的种类不同质量的视频信号不同质量的视频信号 它们的帧频以及适用的格式不同。它们的帧频以及适用的格式不同。数字视频格式数字视频格式 活动视频流的比特率活动视频流的比特率活动视频定量要求活动视频定量要求视频信息压缩编码标准视频信息压缩编码标准一、一、H.26XH.26X系列信息压缩编码标准系列信息压缩编码标准 ITU-TITU-T制定的视频压缩编码标准。制定的视频压缩编码标准。 具有较高的编码效率和低比特率等优点具有较高的编码效率和低比特率等优点 广泛应用于视频通信的各个领域。广泛应用于视频通信的各个领域。 视频信息压缩编码标准视频信息压缩编码标准一、一、H.26XH.26X系列信息压缩编码标准系列信息压缩编码标准 1 1、H.261H.261是国际上第一个针对动态图像并得到广泛承是国际上第一个针对动态图像并得到广泛承认的视频压缩标准。认的视频压缩标准。 其后出现的其后出现的MPEGMPEG系列标准、系列标准、H.262H.262以及以及H.263H.263等数字视频压缩标准的核心都是等数字视频压缩标准的核心都是H.261H.261。 主要应用于电视会议和可视电话等方面。主要应用于电视会议和可视电话等方面。H.261H.261标准标准 H.261 H.261标准的正式名称为:标准的正式名称为:“P64kb/sP64kb/s(P=1-30)(P=1-30)视听业务的视频编码解码器视听业务的视频编码解码器” 该标准于该标准于19901990年年1212月获得正式通过。月获得正式通过。 该标准适用于在该标准适用于在ISDNISDN上以上以P64kb/sP64kb/s速率开展速率开展视频视频会议会议和和可视电话可视电话业务。业务。 建议使用的视频比特率介于建议使用的视频比特率介于40kb/s40kb/s2Mb/s 2Mb/s H.261H.261标准标准 在在H.261H.261标准中标准中ITU-TITU-T采用采用公用中间格式公用中间格式CIFCIF(352288352288)和和1/41/4公用中间格式公用中间格式Q QCIF CIF (176144176144),作为可视电,作为可视电话和视频会议的视频格式。话和视频会议的视频格式。 CIFCIF和和QCIFQCIF格式的选择,取决于信道能力格式的选择,取决于信道能力H.261H.261标准标准 公用中公用中间间格式格式CIFCIF (352288352288) 1/41/4公用中公用中间间格式格式QCIFQCIF (176144176144) 以以29.9729.97帧帧/ /秒,传送秒,传送CIFCIF和和QCIFQCIF格式的未压缩图格式的未压缩图像的比特率分别为像的比特率分别为36.45Mb/s36.45Mb/s、9.115Mb/s9.115Mb/s 。 用用ISDNISDN信道传输这些视频信号需要大幅度降低信道传输这些视频信号需要大幅度降低比特率。比特率。 H.261H.261标准标准 当当P=1P=1或或2 2时,时, 只支持只支持1/41/4公用中间格式公用中间格式QCIFQCIF一般用于窄带电视电话或准静止图一般用于窄带电视电话或准静止图像传送。像传送。 待处理的图像以每秒待处理的图像以每秒1010帧的比率压缩。帧的比率压缩。 QCIF QCIF需要的压缩比约为需要的压缩比约为47.5:147.5:1。 H.261H.261标准标准 当声音和图像同时传送时要合理分配码率当声音和图像同时传送时要合理分配码率 如:如:64kb/s64kb/s中中 40kb/s 40kb/s给图像,给图像,16kb/s16kb/s给声音。给声音。 当当P P大于大于6 6时,支持时,支持公用中间格式公用中间格式CIFCIF 主要是电视会议应用。主要是电视会议应用。H.261H.261工作原理工作原理H.261H.261标准的视频编码器原理框图:由帧间预测、标准的视频编码器原理框图:由帧间预测、帧内帧内DCTDCT变换和量化组成。变换和量化组成。H.261H.261工作原理工作原理 H.261H.261视频编码器融和了两种编码方法:视频编码器融和了两种编码方法: 基于基于DCTDCT的编码方法的编码方法 带运动补偿的带运动补偿的DPCMDPCM预测编码方法预测编码方法H.261H.261工作原理工作原理第一幅图像:第一幅图像: 帧内变换编码帧内变换编码 采用采用DCTDCT变换编码变换编码 对图像序列中的第一幅图像采用帧内对图像序列中的第一幅图像采用帧内DCTDCT变换编变换编码。码。 H.261H.261工作原理工作原理帧内编码:帧内编码: 双向选择开关同时接上路双向选择开关同时接上路 输入信号直接进行输入信号直接进行DCTDCT变换。变换。H.261H.261工作原理工作原理 变换及量化:变换及量化: 在该变换过程中采用了在该变换过程中采用了8888子块来完成运算子块来完成运算, ,然然后各后各DCTDCT系数送至量化单元系数送至量化单元. . 量化步长由编码控制器控制。量化步长由编码控制器控制。 H.261H.261工作原理工作原理第二幅图像及之后:第二幅图像及之后: 帧间预测编码:帧间预测编码: 采用采用DPCMDPCM预测编码与预测编码与DCTDCT编码混合方法。编码混合方法。 H.261H.261工作原理工作原理 当双向选择开关同时接下路时,当双向选择开关同时接下路时,输入信号将与输入信号将与预测信号相减预测信号相减, ,从而获得预测误差。从而获得预测误差。 然后对然后对预测误差预测误差进行进行DCTDCT变换变换, ,再对再对DCTDCT变换系变换系数进行量化输出。数进行量化输出。编码器是帧间预测与编码器是帧间预测与DCTDCT组成的混合编码器。组成的混合编码器。这时称编码器工作于这时称编码器工作于帧间编码模式帧间编码模式。具有运动补偿的预测值经过环形滤波器具有运动补偿的预测值经过环形滤波器, ,滤除高频噪声,滤除高频噪声,再与输入数据信号相减再与输入数据信号相减, ,由此得到预测误差。由此得到预测误差。预测误差再预测误差再DCTDCT变换,量化、变换,量化、VLCVLC编码输出编码输出H.261H.261工作原理工作原理注意:注意: 在在H.261H.261编码器中编码器中, ,有个传送与否标志:有个传送与否标志: 意思是说:并不是总对带运动补偿的帧间预测意思是说:并不是总对带运动补偿的帧间预测DCTDCT进行编码进行编码, ,它是根据一定的判断标准来决定它是根据一定的判断标准来决定是否传送是否传送DCT 88DCT 88像素块信息。像素块信息。 例如例如: 当运动补偿的帧间预测误差很小时当运动补偿的帧间预测误差很小时, ,使得使得DCTDCT系数量化后全为零系数量化后全为零, ,这样可不传此信息。这样可不传此信息。H.261H.261工作原理工作原理注意:注意: 帧间帧间/ /帧内标志:帧内标志: 对于传送块而言对于传送块而言, ,它又可分为帧间编码传送块它又可分为帧间编码传送块和帧内编码传送块两种。和帧内编码传送块两种。 为了减少误码扩散给系统带来的影响为了减少误码扩散给系统带来的影响, ,最多只能最多只能连续进行连续进行132132次次帧间编码帧间编码, ,其后必须进行一次帧内其后必须进行一次帧内编码。编码。H.261H.261标准的数据结构标准的数据结构在在ITU-TITU-T建议的视频编码中,建议的视频编码中,CIFCIF格式和格式和QCIFQCIF格式格式被划分成一个多层次的块结构。被划分成一个多层次的块结构。 在在H.261H.261标准中采用层次化的数据结构,它包括四标准中采用层次化的数据结构,它包括四层。层。自上而下:自上而下:图像图像(P)(P)层(帧层)层(帧层)块组块组(GOB)(GOB)层层宏块宏块(MB)(MB)层层像素块像素块(B)(B)层层 这种复杂的层次块结构,主要用于高压缩比的视这种复杂的层次块结构,主要用于高压缩比的视频编码中。频编码中。H.261H.261工作原理工作原理下面以一帧下面以一帧CIFCIF格式格式(352288352288)的图像为例来进的图像为例来进行说明行说明: : 一帧一帧CIFCIF格式的图像格式的图像P P :(352288352288)由由1212个块组个块组GOB GOB 构成。每个块组构成。每个块组GOBGOB (1764817648) 每个每个GOBGOB又包含又包含3333个宏块个宏块(MB)(MB) 每个宏块(每个宏块(16161616) 一一个个MBMB是由是由6 6个块个块(B)(B)构成:构成: 包含包含4 4个个像素亮度块像素亮度块B B(8888)和)和2 2个个像素色度像素色度B B块块(8888)组成组成。每个像素块每个像素块(B)(B)是由是由8888个像素组成的方阵。个像素组成的方阵。H.261H.261数据结构数据结构H.261H.261数据结构数据结构H.261H.261数据结构为数据结构为: :1. 1.图像图像(P)(P)层:层: 每幅图像的数据由帧首和每幅图像的数据由帧首和1212个个块组块组(GOB)(GOB)构成。构成。其中帧首包括一个其中帧首包括一个2020比特帧起始码和其他标志比特帧起始码和其他标志信息信息: :如帧数、如帧数、视频格式视频格式(CIF/QCIF)(CIF/QCIF)等。等。H.261H.261数据结构数据结构2. 2.块组块组(GOB)(GOB)层:层: 是由是由GOBGOB首和首和3333个宏块个宏块MBMB构成构成, ,其中其中GOBGOB首中包含首中包含: :1616比特块组编号、比特块组编号、块组量化步长等标志信号。块组量化步长等标志信号。H.261H.261数据结构数据结构3. 3.宏块宏块(MB)(MB)层:层: 是由宏块首和其后面的是由宏块首和其后面的6 6个数据块个数据块B B构成。构成。MBMB首包括:首包括:宏块地址、宏块地址、信息类型、信息类型、运动矢量数据等信息。运动矢量数据等信息。 H.261H.261数据结构数据结构在在H.261H.261中,中,1616 MB1616 MB宏块宏块是作运动估值的基本单是作运动估值的基本单位。位。 系统是针对每个系统是针对每个MBMB进行带运动补偿的帧间预测。进行带运动补偿的帧间预测。 解码器按每一宏块接收一个位移矢量,将此位解码器按每一宏块接收一个位移矢量,将此位移矢量用于该宏块的四个亮度块和两个色度块移矢量用于该宏块的四个亮度块和两个色度块进行运动补偿。进行运动补偿。即对该宏块进行运动矢量水平和垂直的位移。即对该宏块进行运动矢量水平和垂直的位移。H.261H.261数据结构数据结构4. 4.像素块像素块(B)(B)层:层: 是由是由DCTDCT系数和块结束符系数和块结束符(EOB)(EOB)组成。组成。 DCT DCT系数采用二维变长编码系数采用二维变长编码VLCVLC进行编码。进行编码。 块结束符块结束符EOBEOB用来标明一个块的结束。用来标明一个块的结束。 每块包含每块包含88 6488 64个数据。个数据。 88 B 88 B是作是作DCTDCT的基本单位。的基本单位。H.263H.263标准标准 H.263H.263标准在标准在19961996年出版,是一个替换年出版,是一个替换H.261H.261的的ITU-TITU-T标准。标准。 早期的早期的H.263H.263标准被设计是标准被设计是一种甚低码率通信一种甚低码率通信的视频编码方案。的视频编码方案。 所谓甚低码率视频编码技术是指压缩编码后的所谓甚低码率视频编码技术是指压缩编码后的码率低于码率低于64kbit/s64kbit/s的各种压缩编码方案的各种压缩编码方案。 应用范围更为广泛。可用于应用范围更为广泛。可用于PSTNPSTN公用电话网公用电话网上的可视电话、多媒体电子信箱、移动的可视上的可视电话、多媒体电子信箱、移动的可视通信等。通信等。H.263H.263标准标准如:如:可视电话信号经过可视电话信号经过H.263H.263压缩再经压缩再经V.34V.34调制后调制后可在可在PSTNPSTN网中传送,网中传送, 码率可以压缩到码率可以压缩到28.8kb/s28.8kb/s。 其中活动图像为其中活动图像为20kb/s20kb/s左右。左右。 后来做了更正后来做了更正 H.263H.263作为作为ITU-TITU-T标准标准H.320H.320系列(推荐用于在传系列(推荐用于在传统统PSTNPSTN电话网络上通过电话网络上通过V.34V.34调制解调器的实时调制解调器的实时声音、数据和视频的传送声音、数据和视频的传送) ) 的一部分,的一部分,H.263H.263可可以适用于很宽的码率范围(不只是低码率应用)。以适用于很宽的码率范围(不只是低码率应用)。H.263H.263标准标准 在图像压缩效率方面,在图像压缩效率方面,H.263H.263是今天可用的最是今天可用的最好的技术之一。好的技术之一。 该标准提供与该标准提供与H.261H.261同样的质量,但是码率减少同样的质量,但是码率减少一半。一半。 它是以它是以H.261H.261为基础,其编码原理和数据结构都为基础,其编码原理和数据结构都与与H.261H.261相似,采用相似,采用H.261H.261的混合编码器。的混合编码器。 其中,其中,DCTDCT变换、量化器的类型,以及对变换、量化器的类型,以及对DCTDCT的的量化系数的二维量化系数的二维VLCVLC与与H.261H.261是一致的。是一致的。 但有改进和修改,进一步改善了性能和增加误差但有改进和修改,进一步改善了性能和增加误差校正。校正。H.263H.263标准标准与与H.261H.261标准主要存在下列区别:标准主要存在下列区别: H.263 H.263能够支持更多图像格式(不同的分辨率)能够支持更多图像格式(不同的分辨率)H.263H.263建议的两种运动估值建议的两种运动估值提高数据压缩效率提高数据压缩效率H.263H.263标准标准 H.263H.263能够支持更多图像格式(不同的分辨率)能够支持更多图像格式(不同的分辨率) H.261H.261仅支持仅支持CIFCIF和和QCIFQCIF两种标准图像数据格式两种标准图像数据格式 H.263H.263不仅可以支持不仅可以支持CIFCIF和和QCIFQCIF标准图像数据格式标准图像数据格式, ,还可以支持更多原始图像数据格式。还可以支持更多原始图像数据格式。 如:如:S-QCIF(1289629.97)S-QCIF(1289629.97)、或更大的输入格式:或更大的输入格式:4CIF4CIF(704576704576)16CIF16CIF(1408115214081152)等。)等。H.263 H.263 图像格式图像格式H.263H.263标准标准H.263H.263建议的两种运动估值建议的两种运动估值H.261H.261标准要求对标准要求对16161616像素的宏块进行运动像素的宏块进行运动估值估值. . 而在而在H.263H.263标准中,不仅可以用标准中,不仅可以用16161616像素宏块像素宏块MBMB为单位进行运动估值。为单位进行运动估值。 同时还可以根据需要采用同时还可以根据需要采用8888像素块像素块B B进行运动进行运动估值。估值。 即宏块的即宏块的4 4个子块个子块B B各使用一个位移矢量。各使用一个位移矢量。提高数据压缩效率。提高数据压缩效率。从四个方面着手:从四个方面着手: 一、一、H.263H.263标准中没有对每秒帧数进行限制标准中没有对每秒帧数进行限制, ,这样这样可以通过减小帧数来达到数据压缩的目的。可以通过减小帧数来达到数据压缩的目的。 二、精减了部分附加信息以提高编码效率。二、精减了部分附加信息以提高编码效率。 三、三、H.263H.263改进了运动估值的方法。改进了运动估值的方法。 在在H.261H.261中对运动矢量采用中对运动矢量采用前向预测前向预测与与VLCVLC相结相结合的编码合的编码, , 而在而在H.263H.263中则采用更复杂的中则采用更复杂的双向预测双向预测与与VLCVLC相相结合的编码方式。从而提高了预测质量。结合的编码方式。从而提高了预测质量。 H.263H.263与与MPEG-1MPEG-1标准类似标准类似 将所有的图像分为将所有的图像分为P P帧和帧和BPBP帧。帧。 B B帧是双向预测帧,和它后面紧随的帧是双向预测帧,和它后面紧随的P P帧组成一个帧组成一个单元单元BPBP帧。帧。 H.263H.263压缩编码方法压缩编码方法PBPB帧模式帧模式在在H.263H.263中,增设了一种编码模式中,增设了一种编码模式PBPB帧模式。帧模式。一个一个PBPB帧单元包含了两帧:帧单元包含了两帧:P P帧和帧和B B帧。帧。PBPB帧的名称是从帧的名称是从MPEGMPEG标准那里借用来的。标准那里借用来的。在在MPEGMPEG中,图像分为三类:中,图像分为三类:I I帧,即帧内编码的帧;帧,即帧内编码的帧;P P帧,即前向预测编码得到的帧;帧,即前向预测编码得到的帧;B B帧,即双向预测编码的帧。帧,即双向预测编码的帧。H.263H.263压缩编码方法压缩编码方法 BPBP帧中的帧中的P P帧是经前一个帧是经前一个P P帧预测所得到的帧预测所得到的, ,而而B B帧则是经前一个帧则是经前一个P P帧和本帧和本BPBP帧单元中的帧单元中的P P帧通帧通过双向预测所得的结果。过双向预测所得的结果。 四、采用算术编码来进一步提高压缩比。四、采用算术编码来进一步提高压缩比。 在在H.261H.261中建议采用的可变长编码是哈夫曼编码。中建议采用的可变长编码是哈夫曼编码。 每一个符号必须事先按一定概率统计,编成相应的每一个符号必须事先按一定概率统计,编成相应的固定长度,是整数个比特数。固定长度,是整数个比特数。 在在H.263H.263中所有的变长编中所有的变长编/ /解码过程均采用解码过程均采用算术编码算术编码, ,将这种固定长度比特数的限制去掉,将这种固定长度比特数的限制去掉,将会进一步降低码率,编码效率得以进一步提将会进一步降低码率,编码效率得以进一步提高。高。H.263H.263压缩编码方法压缩编码方法 BPBP帧中,帧中,P P帧运动矢量的估值和一般的帧运动矢量的估值和一般的P P帧一帧一样,没有什么特别之处。样,没有什么特别之处。 但但B B帧则有所不同帧则有所不同,B,B帧的预测需要两个方向运动矢帧的预测需要两个方向运动矢量,即前向运动矢量和后向运动矢量。量,即前向运动矢量和后向运动矢量。 分别用:分别用:前向运动矢量前向运动矢量后向运动矢量后向运动矢量前向运动矢量和后向运动矢量的平均矢量前向运动矢量和后向运动矢量的平均矢量进行运动补偿,得到三项预测误差。进行运动补偿,得到三项预测误差。取其中最小者作为取其中最小者作为B B帧的预测误差进行编码。帧的预测误差进行编码。减小了预测误差,提高了压缩比。减小了预测误差,提高了压缩比。MPEG-XMPEG-X系列系列 MPEGMPEG是活动图像专家组的简称。它的工作是活动图像专家组的简称。它的工作不仅局限于活动图像编码不仅局限于活动图像编码, ,还把伴音与图像的压还把伴音与图像的压缩联系在一起。缩联系在一起。 MPEGMPEG的主要任务是给用于的主要任务是给用于数字存储媒体数字存储媒体、电视电视广播广播和和通信通信的活动图像和伴音制定一系列的编码的活动图像和伴音制定一系列的编码方法。方法。 专家组先后制定了专家组先后制定了MPEG-1MPEG-1、MEPG-2MEPG-2和和MPEG-4MPEG-4等等标准标准, ,并正在制定并正在制定MPEG-7MPEG-7和和MPEG-21MPEG-21等标准。等标准。MPEG-XMPEG-X系列系列 MPEG-XMPEG-X是一组由是一组由IECIEC和和ISOISO制定发布的视频、音制定发布的视频、音频、数据的压缩标准。频、数据的压缩标准。提供的压缩比可以高达提供的压缩比可以高达200:1,200:1,同时图像的质量也非同时图像的质量也非常高。常高。 MPEG MPEG系列标准已成为国际上影响最大的多媒体系列标准已成为国际上影响最大的多媒体技术标准。技术标准。 对数字电视、视听消费电子、多媒体通信等信息对数字电视、视听消费电子、多媒体通信等信息产业的发展产生了巨大而深远的影响。产业的发展产生了巨大而深远的影响。MPEG-XMPEG-X系列系列它具有它具有3 3方面优势方面优势: :作为国际标准,具有很好的兼容性。作为国际标准,具有很好的兼容性。能够比其他压缩编码算法提供更高的压缩比。能够比其他压缩编码算法提供更高的压缩比。能够保证提供高压缩比的同时能够保证提供高压缩比的同时, ,保证图像质量。保证图像质量。 MPEGMPEG编码卡编码卡 MPEG-1MPEG-1是是19931993年年8 8月正式通过的技术标准月正式通过的技术标准, , 其全称为其全称为“适用于约适用于约1.5Mbit/s1.5Mbit/s以下数字存储媒体以下数字存储媒体的运动图像及伴音的编码的运动图像及伴音的编码”。 它处理的是它处理的是标准图像交换格式(源输入格式)标准图像交换格式(源输入格式)SIFSIF的电视的电视: : 即即NTSCNTSC制为制为352352像素像素240240行行/ /帧帧3030帧帧/ /秒秒. . PAL PAL制为制为352352像素像素288288行行/ /帧帧2525帧帧/ /秒秒. . 压缩的输出速率定义在压缩的输出速率定义在1.5 Mb/s1.5 Mb/s以下。以下。 MPEG-1MPEG-1 该标准是为满足该标准是为满足存储媒体应用存储媒体应用的运动图像及其的运动图像及其伴音的压缩、解压缩以及编码描述的国际标准。伴音的压缩、解压缩以及编码描述的国际标准。 其码率为其码率为1.21.21.5Mb/s,1.5Mb/s,图像质量为图像质量为200200多线。多线。主要用于主要用于VCDVCD、光盘、计算机磁盘存储、数码相、光盘、计算机磁盘存储、数码相机以及数字摄像机等。机以及数字摄像机等。 VCDVCDVCDVCD是一种全动态、全屏播放的视频标准。它的是一种全动态、全屏播放的视频标准。它的格式可分为三种:格式可分为三种:分辨率为分辨率为352x240352x240像素,像素,29.9729.97帧帧/ /秒(适合秒(适合NTSCNTSC制式电视播放)制式电视播放)分辨率为分辨率为352x240352x240像素,像素,23.97623.976帧帧/ /秒秒 分辨率为分辨率为352x288352x288像素,像素,2525帧帧/ /秒(适合秒(适合PALPAL制式电视播放)制式电视播放)整体来说分辨率大约是对应电视制式分辨率的整体来说分辨率大约是对应电视制式分辨率的四分之一。四分之一。 VCDVCDV VCDCD的视频采用的视频采用MPEG-1MPEG-1压缩编码压缩编码. . 声音格式采用声音格式采用MPEG-1 Layer2(MP2)MPEG-1 Layer2(MP2)编码。编码。码率分别为视频码率分别为视频1.15Mb/s1.15Mb/s,音频,音频224kb/s224kb/s。 整个视频质量和整个视频质量和VHSVHS录像带相当。录像带相当。MPEG-1MPEG-1标准具有以下特点标准具有以下特点: :(1)(1)经经MPEG-1MPEG-1压缩编码后存储在介质上的视频及压缩编码后存储在介质上的视频及伴音信息可以随机存取伴音信息可以随机存取(2)(2)对视频及伴音可以快速正向或反向进行搜索对视频及伴音可以快速正向或反向进行搜索, ,并能实现反向演播并能实现反向演播(3)(3)视频和音频信息能够准确同步。视频和音频信息能够准确同步。(4)(4)编码编码/ /解码延时较低解码延时较低, ,满足实时性的要求。满足实时性的要求。(5)(5)视频及伴音具有可编辑性。视频及伴音具有可编辑性。(6)(6)对视频信息的格式对视频信息的格式( (空间分辨率、时间分辨率空间分辨率、时间分辨率) )有很大灵活性。有很大灵活性。(7)(7)实现成本适中,编解码器可用少量芯片实现。实现成本适中,编解码器可用少量芯片实现。MPEG-2MPEG-2 MPEG-2MPEG-2是是19941994年年1111月发布的月发布的“活动图像及其活动图像及其伴音通用编码伴音通用编码”标准。标准。该标准可以应用于该标准可以应用于2.048Mb/s2.048Mb/s60Mb/s60Mb/s的各种速率的各种速率和各种分辨率的应用场合之中。和各种分辨率的应用场合之中。压缩比为压缩比为4040:1 1要应用于要应用于: :数字卫星电视数字卫星电视、高清晰度电视广播高清晰度电视广播、数数字视盘字视盘DVDDVDMPEG-2MPEG-2 MPEG-2MPEG-2视频质量看齐视频质量看齐PALPAL或或NTSCNTSC的广播级的广播级质量,最常见的质量,最常见的MPEG-2MPEG-2产品是产品是DVD DVD ,重要在,重要在于引导传统的电视机和电视广播系统往数码方于引导传统的电视机和电视广播系统往数码方向发展。向发展。 对应的文件扩展名一般为对应的文件扩展名一般为VOBVOB、MPGMPG。MPEG-2MPEG-2 MPEG-2MPEG-2在在PALPAL制式下的分辨率可达制式下的分辨率可达720576720576, 在在NTSCNTSC制式下的分辨率可达制式下的分辨率可达720480720480, MPEG-2MPEG-2还可提供广播级的视频和还可提供广播级的视频和CDCD级的音质级的音质 MPEG-2MPEG-2的音频编码可提供左右中声道以及两个的音频编码可提供左右中声道以及两个环绕声道,以及一个重低音声道和多达环绕声道,以及一个重低音声道和多达7 7个伴音个伴音声道。声道。MPEG-1MPEG-1原理原理MPEG-1MPEG-1标准由三部分组成:标准由三部分组成:系统部分:系统部分:描述了几种伴音和图像压缩数据的描述了几种伴音和图像压缩数据的复用以及加入同步信号后的整个系统。复用以及加入同步信号后的整个系统。视频部分:视频部分:主要规定了图像压缩编码方法主要规定了图像压缩编码方法音频部分:音频部分:主要规定了数字伴音压缩编码主要规定了数字伴音压缩编码 MPEG-1 MPEG-1标准的基本任务就是将视频与其伴音统标准的基本任务就是将视频与其伴音统一起来进行数据压缩,使其码率可以压缩到一起来进行数据压缩,使其码率可以压缩到1.5Mbit/s1.5Mbit/s左右,同时保持视、音频的同步关系。左右,同时保持视、音频的同步关系。MPEG-1MPEG-1原理原理MPEG-1MPEG-1视频部分:视频部分: 与与H.261H.261相似相似,MPEG-1,MPEG-1标准也采用带运动补偿的标准也采用带运动补偿的帧间预测帧间预测DCTDCT变换和变字长编码变换和变字长编码VLCVLC技术相结合的技术相结合的混合编码方式。混合编码方式。 但但MPEG-1MPEG-1在在H.261H.261的基础上进行了重大的改进。的基础上进行了重大的改进。MPEG-1MPEG-1原理原理 输入视频格式输入视频格式 MPEG-1 MPEG-1视频编码器要求其输入视频信号应为逐视频编码器要求其输入视频信号应为逐行扫描的标准图像格式(源输入格式)行扫描的标准图像格式(源输入格式)SIFSIF格式格式(352240352240)或)或 (352288352288) 。 如果输入视频信号采用其他格式如果输入视频信号采用其他格式, ,如如CIFCIF、QCIFQCIF或或ITU-R 601ITU-R 601 , ,则必须转换成则必须转换成SIFSIF格式才能作为格式才能作为MPEG-1MPEG-1的输入。的输入。MPEG-1MPEG-1原理原理 预测与运动补偿预测与运动补偿 与与H.261H.261相同相同,MPEG-1,MPEG-1也采用帧间预测和帧内也采用帧间预测和帧内DCTDCT变换相结合的压缩编码方案。变换相结合的压缩编码方案。 为了满足高压缩比和随机存取两个要求,为了满足高压缩比和随机存取两个要求, MPEG-1MPEG-1采用画面分组及在组内用预测和插补进行采用画面分组及在组内用预测和插补进行帧间编码的技术。帧间编码的技术。MPEG-1MPEG-1原理原理 MPEG-1MPEG-1将一系列视频画面按一定的帧数分成将一系列视频画面按一定的帧数分成组,每组画面有三种类型。分别是:组,每组画面有三种类型。分别是: I I图像帧图像帧 P P图像帧图像帧 B B图像帧图像帧MPEG-1MPEG-1原理原理I I图像帧:图像帧:是一种帧内编码图像帧。是一种帧内编码图像帧。 它是利用一帧图像中的像素信息它是利用一帧图像中的像素信息, ,去除其空间冗去除其空间冗余度,达到数据压缩的目的。余度,达到数据压缩的目的。 采用与静止图像采用与静止图像JPEGJPEG相同的压缩方法处理,全相同的压缩方法处理,全部信息都必须进行传送,并作为以后随机存取部信息都必须进行传送,并作为以后随机存取的存取点。的存取点。P P图像帧:是一种预测编码图像帧。图像帧:是一种预测编码图像帧。 它是利用前一个它是利用前一个I I图像帧或图像帧或P P图像帧图像帧, ,采用运动补偿采用运动补偿的帧间预测的方法进行编码。的帧间预测的方法进行编码。 只对只对预测误差信息预测误差信息进行编码传送进行编码传送. .该图像帧可以为后续的该图像帧可以为后续的P P帧或帧或B B帧进行图像编码时帧进行图像编码时提供参考提供参考。B B图像帧:是一种双向预测编码图像帧。图像帧:是一种双向预测编码图像帧。 它是利用其前面和后面的图像帧它是利用其前面和后面的图像帧(I (I帧或帧或P P帧帧) )进行进行带运动补偿的双向预测编码而得到的。带运动补偿的双向预测编码而得到的。 B B帧相当于插补图像帧,用前面和后面的画面进帧相当于插补图像帧,用前面和后面的画面进行插值处理而得到。行插值处理而得到。它它本身不作为参考使用本身不作为参考使用, ,所以不需要进行传送所以不需要进行传送, ,但需但需传送两个运动补偿信息。使传送两个运动补偿信息。使压缩率进一步降低。压缩率进一步降低。此课件下载可自行编辑修改,供参考!感谢您的支持,我们努力做得更好!
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号