⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mpegl和mpeg2数字视频编码标准.txt

📁 大量Delphi开发资料
💻 TXT
📖 第 1 页 / 共 3 页
字号:

        二十年来,人们已对变换编码进行了大量的研究,它已成为用 于静止画面编码和视频编码的一种非常流行的压缩方法。变换编码 的目的在于去掉帧内或帧间误差图像内容的相关性,对变换系数进 行编码,不是对画面的原始像素进行编码。为此,输入画面被分成 不连接的b像素的画面块(即N×N像素)。以一个线性、可分离的 和单元前向变换为基础,本变换可表示为一个矩阵操作,采用一个N×N变换矩阵A,采获取N×N变换系数C。 C=AbAt 这里AT表示变换矩阵A的一种移项式。注意:这种变换是可逆的, 原因是,采用线性和可分离的反向变换,可以再现原始的N×N个 b像素的画面块. b=AtCa 利用许多可能的方法,应用于较小的由8×8像素组成的画面 块的离散余弦变换(DCT)已成为一种最佳的变换,用于静止画面 和视频编码。事实上,由于基于DCT的方法具有较高的抗相关性 能,并能获得快速DCT算法,适用于实时应用,已在大多数画面 和视频编码标准中加以使用。VLSI技术的运行速率适合较广泛的 视频应用范围,故已商业化。 变换编码的主要目的是使尽量多的变换系数足够的小,使它仍 无效(从统计和主观测量角度来看)。同时,应尽量减小系数之间 的统计相关性,目的在于减少对剩余系数进行编码所需的比特数 量。 图3示出了帧内DCT系数8×8像素块的方差(能量),这里是 以图1中已讨论过的简单的统计模式设想为基础的。此处,每一个 系数的方差,表示了系数(大量帧的乎均值)的可变性。与方差大 的系数相比,方差小的系数在画面像素块再现时意义就不大了。如 图3中所示,一般来说,为了获得画面像素块的有用的近似再现, 只要将少量DCT系数传送给接收机就行。然而,那些最高有效位 DCT系数集中在左上角(低DCT系数),面随着距离的增加,系数 的有效牲就逐步下降。这意味着:与较低位的系数相比,较高位的 DCT系数在画面像素块再现时的重要性就差一些。采用运动补偿预测,DCT变换的结果是,使DCT定义域中的时间DPCM信号实现 筒单的再现—这实质上继承了这种相似的统计相关性,如以DCT 定义域中的这个DPCM信号来再现图2中的帧内信号(虽然能量有 所减少)—这就是为什么为了使帧间压缩获得成功MPEG算法要采用DCT编码的原因 图3图示了DCT系数的方差分布情况,典型地计算了大量的画 面块而获得的平均值。DCT系数方差计算是以图1中的统计模式为 基础的。U和V分别该8×8块中水平和垂直画面变换域变量。大 多数总方差集中在DCDC了系数周围(U=0,v=0) DCT跟离散傅里叶变换很接近,而认识到以下这点是重要的, 即可以对DCT系数加以频率说明,使其更接近于DFTo在画面块 内,低位的Dcr系数与较低的空间频率有关而高位的DCT系数 与较高的频率有关。这一特性在MPEG编码方案中被加以应用,以 便去除画面数据中所包含的主观冗余度,这一切是以人类视觉系统 标准为基础的。由于跟较高空间频率有关的再现误差比较,观众对 较低空间频率的再现误差更加敏感,故在给定比特率情况后,为了 要改进解码画面的视觉质量往往根据视觉(感觉量化)对系数进 行频率自适应加权(量化) 上述两种技术—时间运动补偿预测和变换域编码—的结 合,被认为是MPEG编码标准的关键点 MPEG算法的第三个特 点是这两种技术的处理是较小的画面块(典型情况是:在16×16 像素上进行运动补偿,在8×8像素上进行DCT编码)。由于这个原 因,MPEG编码算法通常又叫作基于画面块的DPCM/DCT混合算法.
MPEG-1:一个通用标准-一个应用于数字存储媒体 
(最高速率达1.5Mb/s)的活动图像和伴音的编码标准

       由MPEG—1开发出来的视频压缩技术的应用范围很广,包 括从CD—ROM上的交互系统,到电信网络上的视频传送 MPEG1视频编码标准被认为是一个通用标准。为了支持多种应用, 可有用户来规定多种多样的输人参数,包括灵活的图像尺寸和帧 频。MPEG推荐了一组系统规定的参数:每一个MPEG—l兼容解码器至少必须能够支持视频源参数,最佳可达电视标准:包括每行 最小应有720个像素,每个图像起码应有576行,每秒最少不低于 30帧,及最低比特率为1.86Mb/s,标准视频输入应包括非隔行扫 描视频图像格式。应该指出:但并不是说,MPEGl的应用就限制 于这一系统规定的参数组。 根据JPiG和H。261活动,已开发出MPEG—l视频算法。当 时的想法是:尽量保持与CCITT H.261标准的共同性,这样,支 持两个标准的做法就似乎可能。当然,MPEGl主要目标在于多媒 体CD—ROM的应用,这里需要由编码器和解码器支持的附加函数 牲。由MPEGl提供的重要特性包括:基于帧的视频随机存取,通 过压缩比特流的快进/快退搜索,视频的反向重放,及压缩比特流 的编辑能力。 

(A)基本的MPEG—1帧间编码方案

       基本MPEGl(及MPEG2)视频压缩技术的基础为:宏模块结 构、运动补偿及宏模块的有条件再补给。如图49所示,MPEG—1 编码算法以帧内编码模式(I图像)对视频序列的第一帧进行编码。 每一个下一帧采用帧间预测法(P图像)进行编码——仅仅采用来 自前面最近的已编码I或P帧的数据,来进行预测,MPEG—l算 法对基于画面块视频序列的帧加以处理。视频序列中的每一个彩色 输入帧被分割成多个非重迭的“宏模块”,如图4b所示。每一个宏 模块包含4个亮度块(Y1,Y2,Y3,Y4)及两个色度块(U,V), 每个宏模块的尺寸为8*8像素,这些数据块来自于亮度带和共址 的色度带。在Y:U:V亮度与色度像素之间的取样比为4:1:1 以最近的前帧为基础,采用运动补偿预测法来对P图像加以编 码。每一帧被分割成不连接的“宏模块”(MB)。 图4b对于每一个宏模块,对有关4个亮度块(Y 3,Y2,Y3, Y4)和两个彩色决(U,V)的信总均加以编码。每个包含8×8个 像素。 基本的混合型DPCM/DCT MPEGl编码器和解码器结构的方 块图示于图5之中。视频序列第1帧(I图像)以帧内(INTRA) 模式加以编码不参照任何一个过去帧或未来帧。在编码器处,DCT 被加到每一个8×8亮度块和色度块上,在DC了输出之后,该64个 DCT系数中的每一个系数被均匀量化(Q),在宏模块中被用来对 DCT系数进行量化的量化器步长,传送给接收机。‘量化之后,最低 位DO系数(DC系数)的处理方法跟保留(remaining)系数 (AC系数)的处理方法是不一样的,DC系数表示分量模块的平均 亮度,可用微分DC预测法对DC系数加以编码。保留DCT系数及 它们位置的非零量化器值被Z字形扫描,并采用可变长度编码 (VLC)表对其进行扫描宽度嫡编码。 图5一个基本混合型DC了/DPCM 编码器和解码器结构的方决图 图6中表示出了系数Z字形扫描的概念。因为要利用系数将这 个两维的画面信号变换成一个单维的比特流,故在量化DCT域二 维信号扫描之后,进行的是可变长度码—字分配工序。并沿着扫描 行和两个连续非零系数之间的距离(行程),对这些非零AC系数量 化器值(长度)加以检测。采用仅传送—个VLC码字的方法,对 每一个连续(行程、长度)对进行编码,Z字形扫描的目的在于: 在跟踪高频系数之前先去跟踪低频DCT系数(包含最大的能量) 图6在8×8块内,已量化DCT系数的Z字形扫描。仅仅对非 零量化DCT系数加以编码。图中指出了非零DCT系数可能的位置 Z字形扫描的做法要想做到按系数的有效性去跟踪DCT系数 参看图3,最低位的DCT系数(0,0)包含了这些决中的最大部分 的能量,这些能量集中在较低位的DCT系数周围 解码器执行反向操作,首先从比特流中提取可变长度编码字 (VLD)并加以解码,以便为每一个画面块获取非零DCT系数的位 置和量化器值。随着一个画面块所有非零DCT系数的再现(Q) 及随后获得的反DCT(DCT—1),就得到量化块像素值。通过对整 个比特流的处理,就对所有的画面块进行了解码,并加以了再现。 为了对P图像进行编码,前面的I图像的第N—l帧,存储在 设置在编码器和解码器内的帧存储器中。在宏模块中执行运动补偿 (MC)—对于即将进行编码的那个宏模块,在第N帧与第N—1 帧之间,仅对一个运动矢量进行估算。这些运动矢量被编码及传送 至接收机。运动补偿预测误差是这样计算的:即在带有前帧运动飘 移对应物的宏模块中减去一个像素。然后是将8×8DCT加入到包 含在该宏模块内的每一个8×8块中,接着是对DCT系数进行量化 (Q),并进行扫描宽度编码和炳编码(VLC)o这里需用一个视频缓 冲器;以确保编码器能产生一个常量的目标比特率输出。对于帧内 每一个宏模块来讲,量化步进(SZ)是可以调整的,以便获得给定 的目标比特率,并避免缓冲器出现溢流和下溢现象。 解码器采用反向处理,以便在接收机中再生第N帧的一个宏模 块。对包含在视频解码器缓冲器(VB)中的可变长度字(VLD) 进行解码之后,就能再现(Q和DCT—1操作)预测误差像素值。 来自包含在帧存储器(FS)中的前第N—1曲的运动补偿像素,被 加入到预测误差之中,以恢复第N帧的那一宏模块。 在图7a一图7d中9采用了一个典型的测试序列,描述了采用 运动补偿预测编码视频的好处,而该预测是以MPEG编码器中的前 第N—1再现帧为依据的。用7a示出在N时间上将要进行编码的一 个帧,图7b示出了在N—1时间上的再现帧,其存储在设置在编码器和解码器中的帧存储器(FS)内。采用编码器运动估算方法已对 图7b中所示的块运动矢量(mv,参照图2)加以估算,并能预测第 N帧中每个宏模块的平移运动的位移(参照第N—1帧)。图7b出 示了这个纯帧差信号(第N帧减去第N—1帧),若在编码过程根本 不采用运动补偿预测,那么就能获得这个帧差信号——即假定所有 运动矢量为零。图7d出示了:当采用图7b的运动矢量来进行预测 时的运动补偿帧差信号。很明显,跟图7c中的纯帧差编码相比,采 用运动补偿,大大减缩了这个将要被编码的残差信号。 图7:(a)在N时间上将要被编码的帧:(b)在P4—1时间上 的帧,用来预测第N帧的内容(注意:四面中所示的运动矢量,并 不是存储在编码器和解码器内的再现画面的一部分;(c)没采用运 动补偿所获取的预测误差画面——假设所有的运动矢量均为零; (d)若采用运动补偿预测,将要进行编码的预测误差画面.
(B)条件再补给 

         MPEG1编码算法所支持有一个基本特点是,如需要时(即与 前帧同一个宏模块相:比,宏模块内容已有变更时),可以在解码器 中更新宏模块的信息(条件宏模块再补给)在较低比特率要实行 规频序列的有效编码的关键,是选择合适的预测模式,以实现条件 再补给,MPEG标准主要区分有三种不同的宏模块编码类型(MB 类型): 跳跃MB:来自前帧的预测,运动矢量为零。根本无宏模块信息被进行编码,及被传送至接收机。 帧间MB:根据前帧,采用运动补偿预测。传送MB类型及MB 地址;如需要,也传送运动矢量、DCT系数及量化步长。 帧内MB:根本不采用来自前帧的预测(仅仅采用帧内预测) 仅仅向接收机传送MB类型、MB地址、DCT系数及量化步长 

(C)特殊的存储媒体功能 

为了从存储媒体中存取视频,MPEG1视频压缩算法设计成能 支持一些重要功能,如随机存取有及快进(FF)和快倒(FR)重 放等功能。考虑到对存储媒体的需求比及进一步探索运动补偿和运 动内描的优越性,由MPEGl引入B图像(双向预测测/双向内扫图 像)概念。这一概念示于图8,对象为视频序列中的一组连接图像。 图像有三种类型:帧内图像(I图像)编码时,不参照视频序列中 的其它图像,已在图4中介绍过,I图像允许存取点进行随机存取, 并对比特流进行FF/FR功能,不过只能进行低压缩。帧内预测图 像(P图像)编码时要参照挨差最近的前一个已编码的I图像或P 图像,通常采用运动补偿,以提高编码效率。由于通常用P图像作 为参照物来预测未来帧或过去帧,故P图像不提供用于随机存取或 编辑的合适的存取点。双向预测/内描的图像(B图像)备用过去帧 和未来帧作为参照物。为了实现高压缩,可以依据挨得最近的过 去、未来的P图像或I,图像,来实施运动补偿。B图像本身永不会 当作参照物来加以使用。 图8在MPEGl视频序列中所采用的I图像(I)、P图像(P) 和B图像(B),依据两个最近的已编码帧(I图像或P图像)采用 运动补偿预测,可以对B图像进行编码。为了适应不同应用的需 求,视频序列内图像编码类型的安排具有灵活性。图中指出了预测 的方向。 使用者在安排视频序列中的图像类型时具有很大的灵活性,以 适应各种不同应用的需求。作为总的原则,仅仅采用I图像(IIIIII.....)编码的视频序列,具有最好的随机存取、FF/FR和编辑功 能,但只能实现低压缩。已编码的,带有一个常规修正的I图像及 无B图像的序列(即IPPPPPPIPPP......),能实现中度压缩,具 有一定程度的随机存取及FF/FR功能。所有这三种图像类型的结 合,如图8中所示(1BBPBBPBBIBBP......),能做到高压缩,具有 较好的随机存取和FF/FR功能,但大大增加了编码延迟时间。这 一延迟也许在一些应用场合是不允许的,如视频电话、视频会议 .

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -