您的位置:首页 > 其它

【HEVC学习与研究】5.HEVC综述(第一部分)

2014-12-11 22:38 267 查看
1. 引言

HEVC是ITU-T VCEG和ISO/IEC MPEG联合组成的JCT-VC的最新研究成果,第一版计划将于2013年1月公布。下一步的扩展工作将主要集中于对高精度及彩色视频的支持、可分级视频编码3D立体多视点视频的编码方面。HEVC公布后在这两个组织中的命名分别为ITU-T Recommendation H.265和MPEG-H
Part 2 (ISO/IEC 23008-2)。

自产生以来,视频编码标准的发展基本上由这两个组织推动。这两个组织分别设计制定了H.261、H.263和MPEG-1和MPEG-4标准。二者联合制定的H.262/MPEG-2和H.264/MPEG-4 AVC得到了广泛应用并对人们的生活产生了重大影响。现在研究者继续努力,试图在未来几年的实际运算设备允许的前提下,进一步提高压缩效率同时增强其抗数据丢失等特性。

著名的H.264/MPEG-4 AVC是HEVC的直接前身,在高清数字电视、安防、网络流媒体领域得到广泛应用。然而对高清、超高清、3D视频应用日益增长的需求对视频编码提出了更高的要求。

HEVC基本上能完成H.264所有的应用,而且专注于两大方面:高清超高清视频和并行处理架构。而且HEVC的语法结构兼容性良好,基本可兼容各种应用。同之前的编码标准类似,HEVC标准仅仅规定了码流的结构和基本的解码方法,对编码的实现提供了极大的自由度。HEVC除了标准文档之外,还提供了参考软件、测试数据集合等多种资源。

本文的基本结构:第二节强调了HEVC的多种关键特性;第三节解释了HEVC的高层语法和编码数据的基本结构;第四节时编码标准的技术细节;第五节解释了HEVC的档、层和级;第六节讨论了标准化的进程。

2. 新编码标准的亮点

HEVC兼顾了多种设计目标,包括编码效率、传输系统易于集成和并行处理结构的实现。一下内容简述了实现这些目标的关键元素以及编码器生成有效视频码流的操作。具体细节参照第三、四节。

2.1 视频编码层

HEVC视频编码框架的结构同前代标准类似,也采用了帧内帧间预测、2D变换编码。算法运行过程如下:

每一帧图像分割为块状区域,分割方法传递至解码器;

视频序列和随机接入点后的第一帧图像只用帧内编码,对其他大部分数据,主要使用帧间时域预测编码。帧间编码中需确定参考帧以及运动矢量。在获得MV和预测模式的条件下,编解码器可做到编解码匹配。

帧内和帧间预测的残差数据进行线性空间变换,变换系数进行量化、熵编码并与预测信息一起传递。

编码器中亦包含解码环路,这样编解码器可以对后续数据提供一致的参考数据。也就是说,在编码器中,量化后的系数进行反量化、反变换、运动补偿、环路滤波器,生成与解码数据一致的解码数据存至缓存区中作为预测的参考数据。显示顺序和编码顺序的不一致使得编码和解码的顺序不一致。

HEVC只支持逐行扫描的视频数据,但可以选择是对两场分别编码还是将隔行扫描的一帧作为普通的一帧数据进行编码。

HEVC的部分特点

(1)树形编码单元和树形编码块:

之前的标准都采用宏块结构,而hevc采样点是树形编码单元Coding Tree Units,CTU。一个CTU包含一个亮度CTB,多个相应的色度CTB以及其他语法元素。亮度CTB的尺寸可能是16×16、32×32或者64×64,并且支持块的四叉树分解。

(2)编码单元和编码块:

CTU的四叉树结构指定了亮度和色度编码块Coding Blocks,CBs的大小和位置。对于亮度CBs,其尺寸最大可以达到亮度CTB的尺寸。一个亮度CB和两个色度CB加上附加的语法元素组成一个编码单元Coding Unit,CU。每一个CTU可能包含一个或多个CU,每个CU包含预测单元Prediction Units,PUs和变换单元Transform
Units,TUs。

(3)预测单元和预测块:

编码单元层确定图像是按帧内还是帧间进行编码。PU分割结构从CU开始,依据基本预测模式判定,亮度和色度CB可以进一步分割成亮度和色度PB,大小由64×64到4×4不等。

(4)变换单元和变换块:

残差数据用块的变换进行编码。变换块Transform Units,TUs也是从CU开始。整个亮度CB的残差可能整个是一个TU,也可能继续分割成多个TUs,色度模块与此类似。对4×4到32×32的残差数据,定义了类似DCT的整数变换。对4×4的亮度分量帧内预测,特别指定了一种基于DST的整数变换。

(5)运动矢量信息

采用了先进运动矢量预测(AMVP),包括由基于相邻PB和参考帧的数据得到更高可能性的候选数据。同时采用了MV合并的编码模式,允许MV由时空域相邻PB继承。相比H.264,改进了跳过和直接模式参考方法。

(6)运动补偿:

MV最高为1/4像素精度,并且采用了比H.264更先进的插值滤波器和多参考帧。可传送一个或两个运动矢量分别对应单向预测和双向预测。

(7)帧内预测:

临近的解码像素块的边界像素用于空间域的帧内预测的参考数据。HEVC的帧内预测支持33个预测方向和平面模式以及DC模式。

(8)量化控制:

采用均匀重建量化,量化矩阵支持不同尺寸的变换系数矩阵。

(9)熵编码:

HEVC采用了与H.264类似的CABAC,并在速度、压缩率以及上下文的存储需求方面做了优化。

(10)环路滤波器:

环路去块滤波器与H.264的环路滤波器类似,简化了判定和滤波处理过程,并更易于并行操作。

(11)采样自适应偏移:

在帧间预测环路的去块滤波器后,引入非线性幅值映射,用查询额外参数描述的表的方法更好地重建原始信号。

2.2 高层语法架构

HEVC的新设计特性增强了在多种应用和网络环境下操作的灵活性以及对数据损失的鲁棒性。H.264大部分高层语法架构得到保留,具体如下:

(1)参数集合:参数集合包含可在解码视频的不同区域分享的信息,为传递解码关键数据提供了高鲁棒机制。新的视频参数集(VPS)的概念对序列和图像参数的概念进行了增强。

(2)NAL基本语法结构:每个语法结构放入网络提取层单元这一逻辑数据包中。利用2字节的NAL单元头,容易识别携带数据的内容类型。

(3)条带:条带是可独立于当前帧的其他条带进行解码的数据结构,其熵编码、预测和残差信号重建均独立。其主要目的之一是在数据丢失情况下进行重新同步。在分组发送中,条带中的最大负载比特数常常受限,CTU的数量不定,为了在限制数据包大小的前提下将分组数量最小化。

(4)补充增强信息和视频可用性信息元数据:提供视频图像的定时、颜色空间解释、3D视频信息填充等信息。

2.3 并行解码语法和改进的条带结构

HEVC引入了三种新技术来增强并行处理能力和条带结构的封装性。

(1)Tiles:将图像分割为矩形区域的选项。其主要目的增强并行处理性能而非容错性。Tiles是图像中共享头信息编码但是可以独立解码的区域,并可在空间域作为图像的随机接入点。通常,每一个tile中包含的CTU的数目是接近于相等的。Tile提供了一种简单的并行处理模式,不需要复杂的线程同步。

(2)波前并行处理:该模式中,条带被分割成CTU的行。第一行按正常处理,第二行在第一行两个CTU完成后开始处理,第三行在第二行的两个CTU处理完成后开始处理,以此类推。通常该方法的压缩性能高于tiles。

(3)依赖性条带分割:允许依赖于某一特定波前入口点或者tile的数据在一个独立的NAL单元中携带传输。只有在其他条带的部分数据解码完成后,才能解码一个依赖性条带的波前入口点。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: