1.视频编码标准
视频编码标准只是规定了编码码流的语法语义和解码器,只要求视频编码后的码流符合标准的语法结构,解码器就可以根据码流的语法语义进行正常解码。因此,符合某个视频编码标准的编码器是有很大自由度的,只要编码后的码流符合标准的规定即可。
码流中的数据的基本单元是语法元素,每个语法元素由若干比特组成,它表征了某个特定的物理意义(如预测类型、qp等)。视频编码标准的语法规定了各个语法元素的组织结构,语义阐述了语法元素的具体含义。视频编码标准规定了编码后码流的语法语义,也就阐述了从码流中提取语法元素并进行解释的方法,也就是解码的过程
2.HEVC简介
HEVC视频编码标准的编码框架仍采用传统的混合编码框架,包括预测、变换、量化、熵编码、环路滤波。但HEVC几乎在每个模块都引入了新的编码技术。增加了基于四叉树的块划分、35中帧内预测、帧间merge、AMVP技术、可变尺寸DCT变换、cabac、环路滤波增加了SAO等。
帧内预测:去除空间相关性。利用同一帧中的重构块预测当前块。具有35中预测模式。
帧间预测:去除时间相关性。利用已编码的帧作为当前帧的参考图像,来获得当前帧各个块的运动信息。包括了分层B帧预测结构,单向、双向预测。
变换量化:通过对残差数据进行变换量化以去除频域相关性,有损压缩。变换使图像从时域变换到频域,将能量集中到低频区域。量化减小图像编码的动态范围。变换和量化原理上属于两个独立的过程,但HEVC中,这两个过程相互结合,减少了计算复杂度。
去方块滤波:基于块的编码中,重构图像会出现块效应,去方块滤波可以消弱块效应,提高图像主观质量和压缩效率。
样点自适应补偿:SAO滤波处于方块滤波之后,通过解析去方块滤波后的像素的统计特性,为像素添加相应的偏移值,可以在一定程度上消弱振铃效应,提高图像主观质量和压缩效率。
熵编码:将编码控制数据、量化变换系数、帧内预测数据、运动数据等编码为二进制码流进行存储或传输。HEVC采用CABAC进行熵编码,引入并行处理框架,在速度、压缩和内存占用等方面有了大幅改善。
3.树形编码块
HEVC引入树形编码单元CTU,其尺寸由编码器指定(一般为64*64)。1个CTU=1个亮度CTB+2个色度CTB+相关语法元素。HEVC引入全新语法单元:CU、PU、TU。