h265(HEVC)编解码相关技术概述

  • 格式:docx
  • 大小:1.76 MB
  • 文档页数:14

H265(HEVC Heigh Efficiency Video Coding)介绍

1 概要

H.265(高效率视频编码(HEVC))是现行“H.264/MPEG-4 AVC”标准于2003年实现标准化以来时隔10年推出的新标准,将成为支撑未来十年的影像服务和产品的视频压缩技术。其特点是,支持1080p以上的4K×2K和8K×4K分辨率,将视频压缩率提高至H.264的约2倍。也就是说,能以原来一半的编码速度发送相同画质的视频。例如,按照20Mbit/秒发送的H.264格式视频内容,在相同画质的条件下用HEVC格式只需10Mbit/秒的速度。

1.1 H.265发展背景

H.264虽然是一个划时代的数字视频压缩标准,但是随着数字视频产业链的高速发展,H.264的局限性逐步显现,并且由于H.264标准核心压缩算法的完全固化,并不能够通过调整或扩充来更好地满足当前高清数字视频应用。

视频应用向以下几个方面发展的趋势愈加明显:

(1)高清晰度(Higher Definition):数字视频的应用格式从720P向1080P全面升级,在一些视频应用领域甚至出现了4K*2K、8K*4K的数字视频格式

(2)高帧率(Higher frame rate):数字视频帧率从30fps向60fps、120fps甚至240fps的应用场景升级

(3)高压缩率(Higher Compression rate):传输带宽和存储空间一直是视频应用中最为关键的资源,因此,在有限的空间和管道中获得最佳的视频体验一直是用户的不懈追求。

由于数字视频应用在发展中面临上述趋势,如果继续采用H.264编码就出现如下一些局限性:

(1)宏块个数的爆发式增长,会导致用于编码宏块的预测模式、运动矢量、参考帧索引和量化级等宏块级参数信息所占用的码字过多,用于编码残差部分的码字明显减少。即:单个宏块所表示的图像内容的信息大大减少,导致4*4或8*8块变换后的低频率相似程度也大大提高,会出现大量的冗余

(2)分辨率的大幅增加,表示同一个运动的运动矢量的幅值将大大增加,H.264中采用一个运动矢量预测值,对运动矢量差编码使用的是哥伦布指数编码,该编码方式的特点是数值越小使用的比特数越少。因此,随着运动矢量幅值的大幅增加,H.264中用来对运动矢量进行预测以及编码的方法压缩率将逐渐降低。

(3)并行度比较低

H.264的一些关键算法,例如采用CAVLC和CABAC两种基于上下文的熵编码方法、deblock滤波等都要求串行编码,并行度比较低。针对GPU/DSP/FPGA/ASIC等这种并行化程序非常的CPU,H.264的这种串行化处理越来越成为制约运算性能的瓶颈。

基于以上视频应用的发展趋势和H.264的局限性,面向更高清晰度、更高帧率、更高压缩率的高效视频编码标准(High Efficiency Video Coding)HEVC(H.265协议标准应运而生。

HEVC的核心目标:在H.264/AVC high profile的基础上,保证相同视频质量的前提下,视频流的码率减少50%。在提高压缩效率的同时,允许编码端适当提高复杂度

HEVC的编码框架:沿用H.263的混合编码框架,即用帧间和帧内预测编码消除时间域和空间域的相关性,对残差进行变换编码以消除空间相关性,熵编码消除统计上的冗余度。HEVC在混合编码框架内,着力研究新的编码工具或技术,提高视频压缩效率

HEVC的技术创新:基于大尺寸四叉树结构的分割技术,多角度帧内预测技术,运动估计融合技术,高精度运动补偿技术,自适应环路滤波技术以及基于语义的熵编码技术。

通信和广电行业的人士对HEVC的高压缩率寄予了厚望。

1.2 发展历程

早在2004年,ITU-T视频编码专家组(VCEG)开始研究新技术以便创建一个新的视频压缩标准。在2004年10月,H.264/ AVC小组对潜在的各种技术进行了调查。2005年1月VCEG的会议上,VCEG开始指定某些主题为“关键技术”作进一步研究。2005年成立软件代码库称为Key Technical Areas (KTA)用来评估这些新的“关键技术。KTA的软件是在联合模型(JM)基础上由MPEG和VCEG的视频组联合开发的,项目名称暂定为H.265和H.NGVC(Next-generation Video Coding),此项目在2010年最终演化为由VCEG和MPEG合资项目也叫做

按照NGVC的初步要求,在维持视觉HEVC(High efficiency video coding)。质量相同的情况下,比特率较H.264/MPEG-4 AVC的高中档(high profile),计算复杂度维持在比特率较H.264/MPEG-4 AVC的高中档的1/2至3倍之间。 “H.265” 只是作为 “高性能视频编码(HEVC)”一个昵称。2009年7月,实验结果表明比特率相较于H.264/AVC High Profile平均降低20%左右,这些结果促使MPEG与VCEG合作发起的新的标准化工作。

2010年1月,VCEG和MPEG开始发起视频压缩技术正式提案。相关技术由视频编码联合组(Joint Collaborative Team on Video Coding (JCT-VC))审议和评估,其合作小组第一次会议于2010年4月召开大会,一共有27个完整的提案。评价结果表明,一些提案在许多测试用例可以达到只用一半的比特率并维持H.264/AVC相同的视觉质量。在这次会议上,联合项目名改称为高效率的视频编码(HEVC),并且JCT-VC小组把相关技术集成到一个的软件代码库(HM)和标准文本草案规范,并进行进一步实验,以评估各项功能。

2012年2月10日,在美国圣何塞召开了第99届MPEG会议。MPEG组织和ITU-T组织对JCT-VC的工作表示满意,准备于2013年1月,同时在ISO/IEC和ITU-T发布HEVC标准的最终版本。

2013年1月26号,HEVC正式成为国际标准。

标准时间点:

2010年1月,ITU-T VCEG(Video Coding Experts Group)和ISO/IEC MPEG(Moving Picture

Experts Group)联合成立JCT-VC(Joint Collaborative Team on Video Coding)联合组织,统一制定下一代编码标准:HEVC(High efficiency video coding)。 2012.2:委员会草案(标准草案完成稿);HEVC委员会草案获得通过。

2012.7:HEVC国际标准草案获得通过

2013.1:国际标准最终获得通过

1.3 应用领域

以前,伴随每次视频压缩技术的进化,多种影像服务和产品都会纷纷亮相(图1)。1995年实现标准化的MPEG-2得到了DVD和数字电视等领域采用,大幅扩大了视频压缩技术的应用范围。MPEG-4在1998年实现标准化后,立即应用到了移动和互联网视频服务领域。伴随视频压缩技术的升级,各种影像服务和产品随之登场。2013年以后,随着HEVC的进步,

4K及8K电视及网络全高清影像服务也纷纷出现。箭头指示的是各服务和产品主要采用的压缩技术。

图1:视频压缩技术及对应的影像服务和产品的历史

图2:HEVC的应用示例

HEVC的应用示意图如图2所示。在广播电视、网络视频服务、电影院及公共大屏幕(Public

Viewing)等众多领域,4K×2K和8K×4K视频发送将变得更容易实现。个人电脑及智能手机等信息终端自不用说,平板电视、摄像机及数码相机等AV产品也会支持HEVC。

不仅是这些既有市场,HEVC还有可能在今后有望增长的新市场上大显身手。例如,影像监控系统就是其中之一。影像监控系统最近几年在快速从原来的模拟摄像头组合VTR的方式,向经由IP网络发送、存储和浏览数码摄像头拍摄的视频的方法过度。为提高安全性,需要增加摄像头数量、提高影像的精细度,而与此同时,确保网络频带和存储容量增加。估计HEVC将作为解决这些课题的措施而得到采用。

1.4 优缺点

优点:

1、高压缩率

1)在视频质量相同的条件下,较H.264平均减少50%的码流,可以节省下大量的网络带宽及存储空间

2)在同码流条件下提供更加高质量的视频

2、支持8192x4320分辨率

缺点:

1、HEVC使用到的技术和算法较前两代标准H.264和MPEG-2更为复杂,视频流在压缩过程中需要经过更多的选择和运算。

2、HEVC不支持大多数硬件,通常需要效率更高,更多的处理器来辅助,这意味着,如果有一个固件需要更新,而编解码器却跟不上升级速度的话,那么我们的电视机顶盒和蓝光播放机是无法播放HEVC编码内容的,需要等待解决方案出现后才能继续使用。

2 编解码技术

通过帧间预测编码和帧内预测编码消除时域空域的相关性;通过对预测残差的变换编码消除时间上的相关性;通过熵编码消除比特分配造成的编码冗余。但

2.1 H.265编码框架及编码单元结构

与H.263以来的视频编码标准一样,HEVC的设计沿用了经典的基于块的混合视频编码框架。框架主要包括,帧内预测(intra prediction)、帧间预测(inter prediction)、转换 (transform)、量化(quantization)、去区块滤波器(deblocking filter)、熵编码(entropy coding)等模块,但在HEVC编码架构中,整体被分为了三个基本单位,分别是:编码单位(coding unit,CU)、预测单位(predict unit,PU) 和转换单位(transform unit,TU )。

视频编码的基本流程为:将视频序列的每一帧划分为固定大小的宏块,通常为16×16像素的亮度分量及2个8×8像素的色度分量(对于4?誜2?誜0格式视频),之后以宏块为单位进行编码。对视频序列的第一帧及场景切换帧或者随机读取帧采用I帧编码方式,I帧编码只利用当前帧内的像素作空间预测,类似于JPEG图像编码方式。其大致过程为,利用帧内先前已经编码块中的像素对当前块内的像素值作出预测(对应图中的帧内预测模块),将预测值与原始视频信号作差运算得到预测残差,再对预测残差进行变换、量化及熵编码形成编码码流。对其余帧采用帧间编码方式,包括前向预测P帧和双向预测B帧,帧间编码是对当前帧内的块在先前已编码帧中寻找最相似块(运动估计)作为当前块的预测值(运动补偿),之后如I帧的编码过程对预测残差进行编码。编码器中还内含一个解码器,如图1中青绿色部分所示。内嵌解码器模拟解码过程,以获得解码重构图像,作为编码下一帧或下一块的预测参考。解码步骤包括对变换量化后的系数进行反量化、反变换,得到预测残差,之后预测残