购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.3.1 H.26x标准

ITU-T关于视频编码的标准H.261/2/3/4,包括新的HEVC(H.265),称为H.26x系列标准。其中具有里程碑意义的第一个实用化视频国际标准H.261在前面已有介绍,H.262标准等同于MPEG-2的视频部分,因此这两个标准这里就不再重复。

1.H.263标准

ITU-T于1996年公布了用于低码率的视频编码标准H.263。该标准中采用H.261的混合编码方式,但不包括信道编码部分。在信源编码器中,DCT、量化器、Z字形扫描和二维VLC等处理与H.261建议是一致的。ITU-T的H.263工作组根据不同的应用需要,对H.263增加了许多高级功能附加项,形成H.263+(1998年)、H.263++(2000年)等,增加的高级选项达二十多项。

2.H.264/AVC标准

H.264/AVC是ITU-T的VCEG(视频编码专家组)和ISO/IEC的MPEG(活动图像编码专家组)的联合视频组(Joint Video Team,JVT)开发的新一代数字视频编码标准,它既是ITU-T的H.264,又是ISO/IEC的MPEG-4的第10 部分——AVC。如图1.10所示,H.264/AVC和以前的标准一样,也是帧间预测加变换的混合编码模式,但在多模式运动估计、整数变换、统一VLC编码以及分层编码语法等方面都有它的独到之处。因此,H.264/AVC算法具有很的高编码效率,目前也得到了广泛的应用。

H.264/AVC的编码效率大约是H.263(或MPEG-2)的一倍。必须说明的是,优越性能的获得不是没有代价的,其代价是计算复杂度的大大增加,据估计,编码的计算复杂度大约相当于H.263的3倍,解码复杂度大约相当于H.263的2倍。

img

图1.10 H.264/AVC编码结构框图

下面着重介绍H.264/AVC的几项关键技术。

(1)分层设计。H.264的算法在概念上可以分为两层:视频编码层(Video Coding Layer,VCL),负责高效的视频内容表示;网络提取层(Network Abstraction Layer,NAL),负责以网络所要求的恰当的方式对数据进行打包和传送。这样,高编码效率和网络友好性的任务分别由VCL和NAL来完成。

(2)帧内预测。H.264的帧内编码模式采用帧内空间预测方法。对于每个4×4块,被预测的像素可用当前块的左上角的17个最接近的先前已编码像素的不同加权和(有的权值可为0)来表示。显然,这种帧内预测不是在时间域上,而是在空间域上进行的,可以除去相邻块之间的空间冗余度,取得更为有效的压缩。

(3)多帧参考和多模式运动估计。H.264支持1/4或1/8像素精度的运动矢量。所谓多模式是指在H.264的运动估计中,一个宏块(MB)可以按图1.11被分为不同的子块,形成7种不同模式的块尺寸。这种多模式的灵活和细致的划分,更切合图像中实际运动物体的形状,提高了运动估计的精确程度。在H.264中,允许编码器存储多于一帧的先前帧用于运动估计,这就是所谓的多帧参考技术,如2帧或3帧刚刚编码好的参考帧。对每个目标宏块,编码器可在多帧中选择能给出最好的预测帧,并为每一个宏块指示是哪一帧被用于预测的。

(4)整数变换。H.264与先前的标准相似,对残差采用基于块的变换编码,但变换是整数操作而不是实数运算,其过程和DCT基本相似。变换的单位是4×4块,而不是以往常用的8×8块。由于用于变换块的尺寸的缩小,运动物体的划分更精确,因此不但变换计算量比较小,而且在运动物体边缘处的衔接误差也大为减小。为了使小尺寸块的变换方式对图像中较大面积的平滑区域不产生块之间的灰度差异,还对帧内宏块亮度数据的16个4×4块的DC系数进行第二次4×4块的变换,对色度数据的4个4×4块的DC系数进行2×2块的变换。

img

图1.11 多模式宏块的类型

(5)自适应熵编码。H.264中熵编码有两种方法,一种是对所有待编码的符号采用内容自适应变长编码(Context-based Adaptive VLC,CAVLC),另一种是采用内容自适应的二进制算术编码(Context-based Adaptive Binary Arithmetic Coding,CABAC)。CABAC是可选项,其编码性能比CAVLC稍好,但计算复杂度也较高。CAVLC中的VLC使用一个长度无限的码字集,设计结构非常有规则,用相同的码表可以对不同的对象进行编码。这种方法编码规则简单,解码器也很容易识别码字的前缀,而且在发生比特错误时能快速获得重同步。

(6)差错控制。H.264 中包含了用于差错消除的工具,增加压缩视频在误码、丢包多发环境(如移动信道或IP信道)中传输的健壮性。例如,为了抵御传输差错,H.264视频流中的时间同步通过采用帧内图像刷新来完成,空间同步由条结构编码(Slice Structured Coding)来支持;同时,为了便于误码以后的再同步,在一幅图像的视频数据中还提供了一定的重同步点;此外,还有数据分段、灵活宏块排序(Flexible Macroblock Ordering,FMO)、任意条带排列(Arbitrary Slice Ordering,ASO)和误码掩盖(Error Concealment)等措施,以保证视频的服务质量。 0qId8C/skainI2rGXF0rwwJQ9y0FcOsWay1A9M9hbOSxdPD07GufCVWZ4XvNTKxE

点击中间区域
呼出菜单
上一章
目录
下一章
×