视频编码标准简介

文章转自:http://www.cnblogs.com/CoderTian/p/8261727.html

1.视频编码发展简史

1988 年CCITT 通过了“p×64Kbps(p=1,2,3,4,5,,,,30) ”视像编码标准 H.261 建议, 被称为视频压缩编码的一个里程碑。从此, ITU-T、 ISO 等公布的基于波形的一系列视频编码标准的编码方法都是基于 H.261 中的混合编码方法。

1986 年,ISO 和 CCITT 成立了联合图像专家组(JPEG,Joint Photographic Experts Group),研究连续色调静止图像压缩算法国际标准, 1992 年 7 月通过了 JPEG 标准。

1988 年 ISO/IEC 信息技术联合委员会成立了活动图像专家组(MPEG, Moving PictureExpert Group)。 1991 年公布了 MPEG-1 视频编码标准,主要应用于家用VCD 的视频压缩; 1994 年 11 月,公布了 MPEG-2 标准,用于数字视频广播(DVB)。

1995 年, ITU-T 推出 H.263 标准,用于低于 64 Kbps 的低码率视频传输,如 PSTN 信道中可视会议、多媒体通信等。 1984 年和 2000 年又分别公布了 H.263+、 H.263++等标准。

1999 年 12 月份, ISO/IEC 通过了“视听对象的编码标准”——MPEG4,它除了定义视频压缩编码标准外,还强调了多媒体通信的交互性和灵活性。

2003 年 3 月, ITU-T 和 ISO/IEC 正式公布了 H.264 视频压缩标准,不仅显著提高了压缩比,而且具有良好的网络亲和性,加强了对 IP 网、移动网的误码和丢包的处理。

2.H.261标准

2.1.图像格式

H.261 用于视频通信,会产生多个国家的互通困难的问题,不同国家采用不同的彩电制式,不可能直接互通。 H.261 采用一种公共中间格式(CIF, Common Intermediate Format),不论何种彩色格式,发送方先把自己国家的彩电制式转换成 CIF 格式,经 H.261 编码后再由CIF 格式转换到接收方彩电制式。

CIF图像格式

采用 CIF 及 QCIF 格式时,视频信号的结构采用图所示的图像、块组(GOB,
group of block)、宏块(MB, macroblock)、块(B, block)四级结构。每帧 CIF 图像由 2 个
GOB组成,每个 GOB 由 33 个 MB 组成,每个 MB 由 4 个亮度块和 1 个 Cr 块及 1 个 Cb 块组成,每个块(B)又由
8×8 像素构成。一帧 QCIF 图像由 3 个 GOB 组成。

2.2. H.261视频编码器

视频信源编码器用于视频信号的码率压缩,主要采用混合编码方法;视频复合编码器将每帧图像数据编排成四层结构,并通过熵编码对视频数据进一步压缩输出。传输缓冲器和码率控制器用于保证输出码流尽可能稳定。传输编码器则用于视频数据的误码检测和纠正。解码器各部分功能与编码器相反。

H.261信源编码器框图如下所示,输入以MB(宏块)为单位

针对四层的视频数据结构,视频复合编码器对量化后的视频数据进行变长编码(直流系数用定长编码),并插入一些辅助数据(如帧首、块组首、宏块首等),得到复合编码图像数据结构,如下图所示

  • 帧层,帧首包括帧起始码(PSC)、帧计数码(TR)、帧类型信息码(PTYPE)及备用插入信息码等;
  • 块组层,块组首包括块组起始码(GBSC)、块组编号码(GN)、块组量化步长(GQOANT)、备用插入信息等;
  • 宏块层,由 6 个块组成,包括 4 个亮度块和两个色度块。宏块首包括宏块地址码(MBA)、宏块类型码(MTYPE)、宏块量化步长码(MQUANT)、运动矢量数据(MVD)、编码模式(CBP)等, CBP 说明各块中数据数;
  • 块层,各块(8×8)的 DCT 系数按图 4.5 所示的 Zig-Zag(之字形)扫描,将像素排成一维序列并进行熵编码(变长编码),每块结束时用 EoB 结束符作为块结束

为使输出码率基本恒定,可采用缓冲器控制并调整帧亚速率、改变量化步长等等

解码器框图

3. H.263标准

3.1.图像格式

H.263共有5种图像格式

3.2. H.263视频信源编码算法

H.263 的视频信源编码框图与 H.261 相同,信源编码方法也类似,不同的是 H.263 输入有多种格式,输出为 H.263 码流。

为了适应低码率传输要求,并进一步提高图像质量, H.263+、 H.263++做了不少改进,增加了若干选项,现选择主要技术介绍如下:

(1)运动矢量, H.263 中 1 个 MB 可以使用 1 个运动矢量表示,也可以 4 个 8×8 块各使用 1 个运动矢量表示,提高运动估计精确性和压缩比。(H.261 规定每个 MB 使用 1 个运动矢量。)

(2)半像素预测, H.263 为进一步提高压缩比,采用半像素预测,而 H.261 采用整像素预测,预测精度明显低于 H.263。

(3)二维预测, H.263 采用二维预测, H.261 采用一维预测。

(4)非限制的运动矢量模式(选项), H.263 的运动矢量范围允许指向图像帧之外。

(5)基于句法的算术编码(选项),显著降低码率,但复杂度比哈夫曼编码高。

(6)高级预测模式(选项), H.263 除可以采用每个 8×8 块 1 个运动矢量,每个 16×16宏块 4 个运动矢量外,还采用 OBMC 运动补偿方式,以减少方块效应。

(7) PB 帧模式(选项), PB 帧由 1 个 P 帧和 1 个 B 帧组成。 P 帧由前一帧预测而得。B 帧由双向(前向和后向)预测而得,分别用前向 MV、后向 MV、前后向 MV 平均进行运动补偿得 3 个预测误差,取其最小者作为 B 帧的预测误差进行编码。

4.MPEG-1标准

MPEG-1标准有如下功能:

(1) 视频压缩编码,压缩后码率在 1.5Mbps,可用于视频传输和视频存储;编码前必须将视频图像转换成逐行扫描图像。

(2)录像机的正放、图像冻结快进、快退和慢放功能以及随机存储功能。

4.1.图像格式

MPEG-1 定义了三种图像类型: I、 P、 B 图像。 I
图像即帧内(Intra)图像,采用帧内编码,不参考其它图像,但可作为其它类型图像的参考帧。 P
图像即预测(Predicted)图像,采用帧间编码,参考前一幅 I 或 P 图像,用作运动补偿。 B 图像即双向预测(Bi-
predicted)图像,参考前后两个方向图像。 I、 P、 B 图像之间的显示顺序如下图所示

双向预测编码可解决“暴露”问题, 即某物体在前一帧未显示出来,但在后一帧却“暴露”出来,双向预测能更准确地找出运动矢量,并只有在视频存储、 VOD 等非实时通信及数字广播电视中应用。 会议电视、可视电话等实时通信中不宜应用 B 图像,因为实时通信后一帧处在当前帧之后,当前帧编码时它尚未出现。

4.2.编码结构

MPEG-1 编码结构类似 H.261,也采用分层结构,但有所不同,MPEG-1 多出片层(切片或 slice 层),用于防止误码在一帧内地扩散。

MPEG-1编码器和 H.261 并无多大区别,但需考虑双向预测编码和解码。解码时先将恢复图像存在缓存中,以显示顺序显示。

5.MPEG-2标准

MPEG-2 标准包括系统、视频、音频及符合性(检验和测试视音频及系统码流) 4 个文件。

5.1.MPEG-2编码复用系统

MPEG-2
码流分为三层,即基本流(ES, elementary bit stream)、包基本码流(PES, packetelementary
stream)和复用后的传送码流(TS, transport stream)、节目码流(PS, programstream)。其编码复用系统结构如下图所示。

  • ES:由视频压缩编码后的视频基本码流(Video ES)和音频压缩编码后的音频基本码流(Audio ES)组成。
  • PES:把视音频 ES 分别打包,长度可变,最长为 216 字节。 
  • TS、 PS:若干个节目的 PES 复用后输出为传输流 TS 和节目流 PS,分别用于传输和存储。

5.2.档次和级别

MPEG-2 按不同的压缩比分成五个档次,按视频清晰度分为四个级别

5.3.MPEG-2视频编解码器

MPEG-2 编解码器结构与 H.261 区别不大

5.4.ES码流结构

ES 码流采用图像序列(PS)、图像组(GOP)、图像(P)、片(slice)、宏块(MB)、块(B)六层结构。

(1)图像序列层,图像序列包括若干 GOP,序列头包含起始码和序列参数,如档次、级别、彩色图像格式、帧场选择等等;

(2)图像组层,图像组包含若干幅图像,组头包含起始码、 GOP 标志等,如视频磁带记录器时间、控制码、 B 帧处理码等;

(3)图像层,一幅图像包含若干片,头信息中有起始码、 P 标志,如时间、参考帧号、图像类型、 MV、分级等;

(4)片层,片是最小的同步单位,包含若干宏块,片头中有起始码、片地址、量化步长等;

(5)宏块层,宏块由 4 个 8×8 亮度块和 2 个色度块组成,宏块头包括宏块地址、宏块类型、运动矢量等。

5.5.基于帧或场的DCT变换

MPEG-2 可用于逐行扫描图像也可用于隔行扫描图像。对逐行扫描图像,可按行分割成块,基于块进行 DCT 变换。对逐行扫描图像,一帧由两场组成,于是就有基于帧的分割和基于场的分割两种宏块结构

  • 同一帧内的各邻近行之间空间相关性比同一场内各邻近行之间的相关性要强。因此基于帧的 DCT 编码适用于相对静止或慢运动的景物。
  • 同一场内各邻近行之间时间相关性比同一帧内各邻近行之间的时间相关性要强(因为同一帧内当前行的下一行要等到一场扫描完后才出现在当前行之下,时间相关性弱),基于场的 DCT 编码适用于运动大的景物。
  • 根据帧的行间相关系数和场的行间相关系数可判定采用帧分割还是场分割进行编码。

6.JPEG标准

1991 年 3 月 ISO/IEC 正式通过了静止图像压缩编码标准,称为 JPEG 建议。 JPEG 标准分为基本系统、扩展系统和信息保持系统三个部分。基本系统提供对顺序扫描静止图像的高效有损编码,输入图像精度为 8bit/像素。

6.1.编码框图

6.2.数据交换格式

熵编码后得到变长度的码流。为便于数据的交换, JPEG 规定了统一的压缩后数据交换格式

第一行: SOI 表示图像数据开始; EOI 为一帧图像结束,各占两个字节。

第二行:表/杂项中放置量化表、哈夫曼表;帧首包括编码方法、取样精度、量化系数、源图像行数、每行取样数等; DNL 重新定义帧内的行数。

第三行:扫描首说明扫描起始信息、分量图像号码、参数、熵编码表选择(ECS); RST为重新开始标志。

第四行:为熵编码区, MCV 为最小编码单元,包括 4 个亮度块, 1 个 Cr 块和 1 个 Cb块。

原文地址:https://www.cnblogs.com/legendsun/p/9042994.html

时间: 2024-10-04 09:35:18

视频编码标准简介的相关文章

(转)视频编码标准汇总及比较

MPEG-1 类型:Audio&Video 制定者:MPEG(Moving Picture Expert Group) 所需频宽:2Mbps 特性:对动作不激烈的视频信号可获得较好的图像质量,但当动作激烈时,图像就会产生马赛克现象.它没有定义用于额外数据流进行编对码的格式,因此这种技术不能广泛推广.它主要用于家用VCD,它需要的存储空间比较大. 优点:对动作不激烈的视频信号可获得较好的图像质量. 缺点:当动作激烈时,图像就会产生马赛克现象.它没有定义用于额外数据流进行编对码的格式,因此这种技术不

VP9 vs H.265——下一代视频编码标准的王道之争

目前下一代主流的视频编码标准有 ITU-T VCEG 推出来的 H.265 和 Google 推出 VP9 . H.265 在 H.264 的基础上保留其中的部分技术,并对相关技术加以改进研发而成.新技术主要通过提升压缩效率.鲁棒性,提高错误恢复能力,减少实时时延.减少信道获取时间等方面,让视频编码达到效率更高.同时 H.265 可以实现利用 1~2Mbps 传输速度传送 720P 普通高清音视频. VP9 是由 Google 开发的开放式.无版权费的视频编码标准,在开发初期曾经被命名为 Nex

视频编解码学习之四:视频处理及编码标准

1.视频处理 在视频压缩前后,对视频图像质量增强的操作 视频编解码系统输出的图像主观质量不仅与压缩算法的性能有关,还受视频处理的影响 压缩之前对视频的处理称作预处理(Pre-processing) 压缩之后对视频的处理称作后处理(Post-processing) 2. 预处理 预处理的目的 为了减少原图像受到的损害,保持原图像的重要特征,使原图像能被高效的压缩 噪声污染 光照差 抖动 为了进行视频格式转换 去隔行 空间缩放 帧率转换 去噪声处理 去隔行(Deinterlace) 隔行扫描的视频图

四:视频处理及编码标准

第10章 视频处理 1.视频处理 在视频压缩前后,对视频图像质量增强的操作 视频编解码系统输出的图像主观质量不仅与压缩算法的性能有关,还受视频处理的影响 压缩之前对视频的处理称作预处理(Pre-processing) 压缩之后对视频的处理称作后处理(Post-processing) 2. 预处理 预处理的目的 为了减少原图像受到的损害,保持原图像的重要特征,使原图像能被高效的压缩 噪声污染 光照差 抖动 为了进行视频格式转换 去隔行 空间缩放 帧率转换 去噪声处理 去隔行(Deinterlace

转 常见视频编码方式以及封装格式

常见视频编码方式以及封装格式 常见视频编码方式 所谓视频编码方式就是指通过特定的压缩技术,将某个视频格式的文件转换成另一种视频格式文件的方式.视频流传输中最为重要的编解码标准有国际电联的H.261.H.263.H.264.H.265,运动静止图像专家组的M-JPEG和国际标准化组织运动图像专家组的MPEG系列标准,此外在互联网上被广泛应用的还有Real-Networks的RealVideo.微软公司的WMV以及Apple公司的QuickTime等. AVI AVI 是 Audio Video I

视频编码与封装方式详解

http://blog.csdn.net/attilax/article/details/5807047 1.    编码方式和封装格式    1 2.    视频编码标准两大系统    2 MPEG-1. 2 MPEG-2. 3 MPEG-3. 3 MPEG-4. 3 ITU-T. 4 WMV.. 4 3.    常用视频编码方式有Xvid( 4 4.    常见存储封装格式    6 5.    几种常见的转换格式设置    7 6.    无损视频编码    9 1.   编码方式和封装格

Atitit 视频编码与动画原理attilax总结

1.1. 第一步:实现有损图像压缩和解压1 1.2. 接着将其量化,所谓量化,就是信号采样的步长,1 1.3. 第二步:实现宏块误差计算2 1.4. 那么所谓运动预测编码,其实就是P帧的生成过程3 1.5. 第五步:实现GOP生成3 要彻底理解视频编码原理,看书都是虚的,需要实际动手,实现一个简单的视频编码器: 知识准备:基本图像处理知识,信号的时域和频域问题,熟练掌握傅立叶正反变换,一维.二维傅立叶变换,以及其变种,dct变换,快速dct变换. 1.1. 第一步:实现有损图像压缩和解压 参考

音视频编码基础知识

本文转载自 http://blog.csdn.net/ljzcom/article/details/7336258 ,如有需要,请移步查看. Technorati 标签: 音视频 编码 基础知识 --------------------------------分割线开始----------------------------------------------- 编解码学习笔记(一):基本概念 媒体业务是网络的主要业务之间.尤其移动互联网业务的兴起,在运营商和应用开发商中,媒体业务份量极重,其中

H.264/ACC音视频编码流的RTP/RTSP传输实现(1)

目标: 实现一个用于H.264/ACC音视频编码流的RTP/RTSP传输的简单服务器,主要通过此过程学习基于RTP的NAL.ADTS码流封装技术和基于RTSP的视频交互控制技术.完整系统应该包括服务器和客户端两个部分,其中服务器负责接收客户端请求.封包以及发送音视频数据,客户端负责发送请求和接收视频数据.分别在Windows平台上和Android平台上进行网络传输实体测试,通过客户端网络流抓包和播放器播放对系统进行进一步验证. 简介: 随着互联网和移动通信的飞速发展,H.264凭借其突出的编码效