H.264着重在压缩的高效率和传输的高可靠性,其应用面十分广泛,具体说来,H.264支持三个不同档次:
1)基本档次:利用I片和P片支持帧内和帧间编码,支持利用基于上下文的自适应的变长编码进行的熵编码(CAVLC)。主要用于可视电话、会议电视、无线通信等实时视频通信;
2)主要档次:支持隔行视频,采用B片的帧间编码和采用加权预测的帧内编码;支持利用基于上下文的自适应的算术编码(CABAC)。主要用于数字广播电视与数字视频存储;
3)扩展档次:支持码流之间有效的切换(SP和SI片)、改进误码性能(数据分割),但不支持隔行视频和CABAC。
图2-2为H.264 各个档次具有的不同功能,可见扩展档次包括了基本档次的所有功能,而不能包括主要档次的。每一档次设置不同参数(如取样速率、图像尺寸、编码比特率等),得到编解码器性能不同的级。
图 2-2 H.264 档次
2.3 H.264编解码器框架
与之前的视频编码器一样,H.264编码器仍然采用变换与预测相结合的混合编码法,只不过各功能模块的细节有所不同。常用的H.264编码器与解码器的基本组成部分如图2-3以及图2-4所示。
图 2-3 H.264 编码器框图
在图2-3中,编码器输入源图像为YUV格式,将输入的图像与预测得到的图像进行求差获得图像的像素残差,并接着对残差进行整数变化、量化、之字排序以及熵编码,转换为串行比特流输出到文件或者网络缓存中。同时为了得到参考图像,编码器需要重建图像。编码器在像素残差量化后立即进行反量化、反整数变换以及去块效应滤波,从而得到重建图像并将其存入到参考帧缓冲区中。H.264的预测方式分为帧内预测以及帧间预测,其中帧内预测通过左边以及上边的重建宏块对当前宏块进行预测;而帧间预测则通过运动估计以及运动补偿从当前帧之前的图像以及后面的图像中搜索匹配块来对当前块进行预测。
图 2-4 H.264 解码器框图
H.264解码器相对于编码器来说要简单得多。从图2-4中可以看出,解码器的输入为H.264的标准压缩码流,输入码流经过熵解码、之字重排序、反量化以及反整数变换等处理,获得图像重建所需的像素残差;接着解码器通过帧内预测或者帧间预测获取当前图像的预测值,并与之前解码获得的像素残差求和,然后经过去块效应滤波得到重建图像。
2.4 帧内预测
H.264标准对I帧的编码利用了空间相关性来提高压缩效率。以前的标准只利用了一个宏块内部的相关性来进行压缩,忽视了宏块之间的相关性,所以帧内编码后的数据量仍然较大。为了能进一步利用空间相关性,H.264引入了帧内预测以提高压缩效率。简单的说,帧内预测编码就是用周围临近的像素值来预测当前的像素值,然后对预测误差进行编码。这种预测是基于块的,对于亮度分量(luma),块的大小可以在16×16和4×4之间选择。16×16块有4种预测模式,4×4块有9种预测模式;对于色度分量(chroma),预测是对整个8×8块进行的,有4种预测模式。除了DC预测外,其他每种预测模式对应不同方向上的预测。
2.4.1 4×4 亮度预测模式
亮度4×4预测把16×16的宏块划分成16个4×4的子块,每个子块用与其相邻的上面和左面已经编码并重建后的像素点来预测,如图2-5所示,子块的a, b,…p等像素的预测值通过相邻A, B,…,M等像素的值计算得到。
图 2-5 (a)利用像素A-Q对方块中a-p像素进行帧内4×4预测
- 上一篇:AT89C52单片机的电子万年历设计+硬件电路
- 下一篇:基于组态软件的汽车故障设置检测系统设计
-
-
-
-
-
-
-
NFC协议物理层的软件实现+文献综述
中国传统元素在游戏角色...
C++最短路径算法研究和程序设计
巴金《激流三部曲》高觉新的悲剧命运
g-C3N4光催化剂的制备和光催化性能研究
现代简约美式风格在室内家装中的运用
江苏省某高中学生体质现状的调查研究
上市公司股权结构对经营绩效的影响研究
高警觉工作人群的元情绪...
浅析中国古代宗法制度