logo资料库

视频编码标准和H.264核心技术分析.pdf

第1页 / 共8页
第2页 / 共8页
第3页 / 共8页
第4页 / 共8页
第5页 / 共8页
第6页 / 共8页
第7页 / 共8页
第8页 / 共8页
资料共8页,全文预览结束
视频编码标准 H.264 的核心技术分析 【摘要】: H.264/AVC 建议是目前最新的视频压缩标准。本文首先简要介绍图像通信中,视频编码标准 H.261 和 H.263 建议的基本原理和主要特点。然后详细分析研究了 H.264 建议中的 关键技术,包括帧内帧间预测编码、去块效应滤波、可变块大小、多帧和亚像素运动估计、整数 DCT 变换以及新的熵编码等新技术。 【关键词】:H.264 视频编码 帧内预测 帧间预测 整数 DCT 变换 熵编码 0 前言 图像通信是近年来取得长足发展的现代通信技术,图像压缩的进步则是通信发展中的重要组成部分。国际标准建议 H.261 的问世,是对图像编码近 40 年研究成果的总结,解决了可视技术在 通信中的应用这一长期困扰人们的问题,覆盖了整个窄带 ISDN 上视听业务的图像编码,极大地推动了会议电视、电视电话等图像通讯方式的国际化和产业化。随后,ITU 在 H.261 建议的基 础上着手极低码率图像压缩的标准,制定了 H.263 建议,以及最新的 H.264/AVC。本文首先对 H.261 和 H.263 建议的基本原理进行阐述,然后对新标准 H.264/AVC 中的新技术进行说明, 最后再对 H.26x 系列标准进行总结。 1 H.261 建议的基本原理 每一个图像压缩标准的制定,都针对它最适合的应用目标。H.261 是最早定义的视频编码标准。它首次使用了运动补偿预测编码与 DCT 变换相结合的方法,其视频编码信号的传输速率 从 64kbps 到 1.92Mbps,故为 p×64K 视频编码器(p 取值在 1~31 之间)。H.261 主要应用于 ISDN 网上的视频会议系统,定位在电路交换网络系统。 H.261 编码器的原理如图 1 所示。 该建议主要采用 CIF 图像分辨率格式和 QCIF 分辨率格式, 以解决不同制式通信间的兼容问题。对于每一个帧间编码的宏块,H.261 采用运动补偿的帧间预测算法,消除电视图像时间 域上的相关性;对预测误差进行 DCT 变换以消除图像空间域上的相关性;然后自适应量化 DCT 系数,以充分利用人的视觉特性;接着进行熵编码,以实现统计匹配编码;最后采用输出缓 冲存储器,以平滑数码流,达到输出数码率保持恒定的目的。该建议的图像帧编码模式包括 I,P,B 三类。I 帧,采用帧内编码方式;P 帧,采用帧间编码方式,由 I 帧或前面的 P 帧进行运 数字时代-中国数字音视频网 http://www.ChinaAvs.com 由 数字时代-中国数字音视频网 http://www.ChinaAvs.com 搜集整理 版权归作者所有!
动补偿,再对误差估计进行编码;B 帧为双向内插帧不编码传输,而由 I 帧和 P 帧或者 P 帧与 PP 帧插值重建。H.261 不支持双向运动预测以及 GOP,每一个帧间编码帧是以它的前一个已 编码帧为参考帧。 H.261 标准的编码数据结构从高层到底层定义了四个层次,即帧层、片层、宏块层和块层。H.261 的运动估值补偿是以宏块为单位进行的。对某宏块是选择帧间还是帧内编码方式,首先需要 判断。若它与匹配宏块相关性强,则可采用帧间编码方式,反之,则采用帧内编码方式。 2 H.263 建议的基本原理 H.263 标准是在 H.261 标准的基础上建议的。它在低码率条件下,能够在不增加太多复杂度的情况下,获得更高的图像质量。原则上它只需要一半的带宽就可取得与 H.261 同样的视 频质量。目前,H.263 标准已经被各种可视电话终端协议广泛采用。 H.263 标准基本模式编码器的结构框图与 H.261 标准相似。同样,采用运动补偿预测减少图像的时间域冗余度;对运动补偿预测的残差场进行离散余弦变换(DCT)编码;利用变长编码(VCL) 对量化的 DCT 系数、运动矢量以及附加信息进行熵编码。 H.263 在 H.261 建议的基础上作了一定的改进。图像尺寸采用 QCIF 格式,引入了 sub-CIF 格式,也允许使用 CIF 格式。采用 8×8 的 DCT 变换,宏块统一使用同样的量化步长进行量化, 可以是一个宏块使用一个运动矢量,也可以是宏块的每个子块各使用一个运动矢量,因而,具有块运动补偿能力,改善了帧间预测。运动矢量的 x 向和 y 向都支持半像素精度,运动估计的搜 索窗大小被限制为[-16, +15.5],运动矢量进行差分预测编码传输。编码方式采用二维预测与 VLC 相结合的编码;类似 MPEG-1 标准,将所有的图像分为 P 帧和 BP 帧。 H.263 建议为保证在极低码率条件下获得较好的图像质量,在 H.261 混合编码的基础上,还采用了无限制的运动矢量模式、语法基算术编码模式、高级预测模式以及 PB-帧模式等编码技术。 在无限制的运动矢量模式中取消了作为基准的像素必须在编码图像区域内的限制。在高级预测模式中使用了重迭块运动补偿,而且还允许运动矢量穿过运动边界。在 PB-帧模式中,B 帧通过 前一译码 P 帧和当前的一个译码 P 帧进行双向预测重建,这样就提高了帧速率但并未明显增加比特数。以上三种方式主要是为了改善帧间预测。基于语法算术编码方式的采用是为了进一步 降低传输的比特率。在这种方式中,所有的变长码的编译码运算都用算术编译的运算来代替。提供这些高级编码模式,使得应用者可以在压缩性能和复杂度之间进行均衡和取舍。 3 H.264 标准的核心技术及其特点 H.264/AVC 是 ITU-T 和 ISO/IEC 联合制定的最新编码标准,它最先由 ITU-T 的 VCEG 于 1997 年提出,目标是提出一种更高性能(相对于当时的 H.263)的视频编码标准。 与先前的一些编码标准相比,H.264 标准继承了 H.263 和 MPEG1/2/4 视频标准协议的优点,但在结构上并没有变化,只是在各个主要的功能模块内部使用了一些先进的技术,提高了 编码效率。其主要表现在:编码不再是基于 8×8 的块进行,而是在 4×4 大小的快上,进行残差的变换编码。所采用的变换编码方式也不再是 DCT 变换,而是一种整数变换编码。采用了编码 效率更高的上下文自适应二进制算术编码(CABAC),同时与之相应的量化过程也有区别。H.264 标准具有算法简单易于实现、运算精度高且不溢出、运算速度快、占用内存小、消弱块效 应等优点,是一种更为实用有效的图像编码标准。 下面介绍 H.264/AVC 标准在先前标准之上的新技术。H.264 标准仍采用图像预测和变换编码相结合的编码结构,其编码器的基本结构如图 2 所示: 数字时代-中国数字音视频网 http://www.ChinaAvs.com 由 数字时代-中国数字音视频网 http://www.ChinaAvs.com 搜集整理 版权归作者所有!
编码器的工作过程可根据数据流分为前向通道和重建通道。输入帧 Fn 的编码,是对原始图像 16×16 像素的宏块进行编码。宏块编码分为帧内编码和帧间编码。在任何情况下,预测宏 块 P 都由重建帧获得。在帧内编码模式中,P 由当前帧中的已编码宏块经解码、重构预测获得,如上图中的 uF’n。在帧间编码模式下,P 由一个或多个参考帧经运动补偿预测获得,如 F’n-1。 以预测宏块 P 与当前宏块 Fn 的差值作为残差宏块 Dn,经变换、量化后得到一串变换参数 X。参数 X 需要进行两方面的处理,一是重排序和熵变换处理,整个过程没有反馈分量,故称为前 向通道;二是反量化和逆变换处理,产生宏块 D’n,然后与宏块 P 相加得到重构宏块 uF’n,再经过一系列处理得到重建的参考帧 F’n,用于下一帧的运动估计,因此称为重建通道。 3.1 帧内预测编码模式 在视频编码中,通常的方法是把整幅图像分为若干宏块,然后对每一个宏块进行编码。在编码时采用 Intra 或 Inter 两种模式。在 Intra 模式中通常直接对宏块进行 DCT 变换,对变换系 数进行熵编码。这样做在一定程度上消除了帧内的空间冗余度,但是由于 DCT 只是利用了宏块内部像素之间的相关性,而没有考虑相邻宏块间的相关性。H.264 引入了 Intra 预测的方法,利 用相邻宏块的相关性对待编码的宏块进行预测,对预测残差进行变换编码,以消除空间冗余。值得注意的是,以前的标准是在变换域中进行预测,而 H.264 是直接在空间域中进行预测。 3.2 帧间预测编码模式 H.264 在运动估计中采了许多新技术,主要包括可变块大小、多帧运动估计、亚像素精度的运动估计以及去块效应滤波等。 ⑴ 去块效应滤波 它的作用就是用来消除解码图像中的块效应。块效应产生的原因是各个宏块分别进行量化,这样在相邻宏块的交界处,因量化步长不同而导致原本很接近的像素值重构后产生了较大的 差异,形成明显的块边界。去块效应滤波是在 4×4 的块边界上滤波,使块边界趋于平滑。 ⑵ 可变块大小 块大小对运动估计的效果是有影响的。将宏块分割成不同尺寸的运动补偿子块称作树状结构运动补偿。宏块的分割和子宏块的分割各包括四种类型,如图 3 所示。较小的块可以使运动 数字时代-中国数字音视频网 http://www.ChinaAvs.com 由 数字时代-中国数字音视频网 http://www.ChinaAvs.com 搜集整理 版权归作者所有!
估计更精确,产生较小的运动残差,降低码率。在 H.264 建议的不同大小的块选择中,可以看出,一个宏块最多可以携带 16 个不同的运动矢量。配合多帧运动估计,同一宏块中的不同块还 可以使用不同的参考帧来进行预测。 图 3 运动补偿的宏块分割 顶端:宏块的分割 底端:宏块的子分割 ⑶ 多帧运动估计 与以前视频压缩标准中使用的单帧运动估计技术相比,H.264 使用的多帧运动估计具有更高的效率,更强的差错稳健性。所谓多帧运动估计是指使用一个或多个参考帧来估计运动矢量, 可以防止因某个帧出现错误而影响到后面的帧。但是,这种估计需要更大的内存,更高的运算复杂度。 ⑷亚像素精度的运动估计 在 H.264 中,运动估计的精度由 H.263 中的半像素提高到 像素,并且把 像素作为可选项。与半像素精度的运动估计一样, 像素精度的运动估计使用内插得到半像素和 像素位置的点。 在 H.264 的帧间预测编码中,仍可以继续采用三步搜索算法找出与当前宏块最匹配的块。在块匹配中,块的位移与块的中心或块中任何一点的位移是等价的。因此,块的位移可以理解 为中心点的位移。在三步算法中,搜索范围为 7,即在上一帧以当前子块为原点,将当前子块在其上下左右距离为 7 的范围内按一定规则移动,每移动到一个位置,取出同样大小的子块与当 前子块进行匹配计算。具体分为以下三步: ①以当前子块为中心,以 4 为步幅,将图 4 中标出的 9 个位置为中心的子块与当前子块进行匹配,求出最佳匹配的子块中心位置。 ②以①中求出的最佳子块为中心,例如,x=4,y=0,以 2 为步幅,将图中的 9 个位置为中心的子块与当前子块进行匹配,求出最佳匹配的子块中心位置。 ③以②中求出的最佳子块为中心,例如,x=4,y=0,以 1 为步幅,将图中的 9 个位置为中心的子块与当前子块进行匹配,求出最佳匹配的子块中心位置,它与当前子块中心的位置偏移量即 为估计的位移量。 数字时代-中国数字音视频网 http://www.ChinaAvs.com 由 数字时代-中国数字音视频网 http://www.ChinaAvs.com 搜集整理 版权归作者所有!
3.3 整数 DCT 变换 H.264 标准中使用 4×4 的整数 DCT 变换作为残差宏块的基本变换,这种变换的对象是经过运动补偿预测或者帧内预测后的包含残差数据的 4×4 块。这类变换是基于 DCT 变换,但又不 同于 DCT。 由于 DCT 变换是实数,量化时需对系数进行四舍五入,从而影响了运算的精度。同时,传统的 DCT 存在不匹配问题,产生参考帧的偏移,直接影响到重建图像的质量。 H.264 建议的整数 DCT 变换的所有操作都使用整数算法,变换的核心部分主要是加法和移位。在整个变换和量化的过程中,只执行 16bit 的整数算法和一次乘法操作。只要在 H.264 建 议基础上正确使用相应的反变化,编码器和解码器就不会出现不匹配现象。它的正反变换矩阵分别为 数字时代-中国数字音视频网 http://www.ChinaAvs.com 由 数字时代-中国数字音视频网 http://www.ChinaAvs.com 搜集整理 版权归作者所有!
其中的系数基本上都是整数,1/2 可以用移位代替。在变换中由于乘法均可由移位运算代替,因此,复杂度降低的同时,也解决了精度问题。 H.264 中的宏块大小为 16×16,对其中每个 4×4 大小的块进行上述 4×4 的 DCT 变换后,得到 16 个 4×4 的变换矩阵。为了进一步提高压缩效率,该建议还允许把每个 4×4 的变换矩阵 中的直流分量 DC,单独取出组成一新的 4×4 矩阵,对此矩阵进行 Hardamard 变换。宏块的数据传送顺序如图 5 所示。 数字时代-中国数字音视频网 http://www.ChinaAvs.com 由 数字时代-中国数字音视频网 http://www.ChinaAvs.com 搜集整理 版权归作者所有!
3.4 熵编码 H.264 建议同时采用了两种熵编码模式:基于上下文的二进制算术编码 CABAC,以及可变长编码 VLC。VLC 编码又包括基于上下文的自适应可变长编码 CAVLC。 CABAC 方式利用了算术编码的方法,一个符号可以用少于 1bit 来表示。根据无误码的假设条件下的试验所得的数据可知,在所有码率下,CABAC 的表现都强于 CAVLC。但是 CAVLC 的抗误码性要强于 CABAC,且运算的复杂度也远远低于 CABAC。因此,H.264 规定在 Baseline Profile 中采用 CAVLC,而在 Main Profile 中采用 CABAC 进行熵编码。 4 小结 与以往的视频编码标准相比,H.264 建议在其系统结构、运动估计和运动补偿、宏块的变换和量化以及熵编码等各方面都有明显的提高,具有更高的编码效率和更强的网络适应性。在相 同的图象质量下,H.264/AVC 的算法比以前的标准如 H.263 或 MPEG-4 节约了 50%左右的码率。H.264 的不同 Profile 既可以应用于实时通信,也可应用于对时延要求不高的其他应用中。 此外,该建议增加了 NAL 层,负责将编码器的输出码流适配到各种类型的网络中,从而对网络传输具有更好的支持功能。同时,它具有较强的抗误码特性,可适应丢包率高、干扰严重的无 数字时代-中国数字音视频网 http://www.ChinaAvs.com 由 数字时代-中国数字音视频网 http://www.ChinaAvs.com 搜集整理 版权归作者所有!
线信道中的视频传输。因此,H.264 支持不同网络资源下的分级编码传输,从而获得平稳的图像质量,能适应于不同网络中的视频传输,网络亲和性好。 在今天的 Internet,对多媒体服务的需求呈现快速增长的趋势。由于受无线网络有限的带宽资源和传输能力的限制,目前市场上最终用户大部分是按照流量付费的方式来使用无线网络数 据服务的,提高压缩效率是无线视频和多媒体应用的主要目标。 所以 H.264/ AVC 编码标准成为在多媒体信息服务(MMS)、包交换流服务(PSS)和会话应用方面最有竞争力的候选标准。同时, H.264/AVC 没有任何对所有权的限制,是一个公共的开放的标准。因此,增强了各个生产商在制造工艺中对低成本的竞争,使得产品价格迅速下降,让这项技术可以为更多的人服务。 参考文献 [1] 张旭东、卢国栋、冯健编著,《图像编码基础和小波压缩技术——原理、算法和标准》,清华大学出版社,2004 年。 [2] 田丽华编著,《编码理论》,西安电子科技大学出版社,2003 年。 [3] 秦岭、王煜坚、李东新、吴镇扬著,《视频编码标准 H.264 的主要技术特点及其应用前景》,微计算机应用,2004 年。 [4] “Advanced Video Coding”, Final Committee Draft, Document JVTF100, ITU-T Rec. H.264 / ISO/IEC 11496-10, December 2002 [5] “Advanced Video Coding”, Final Committee Draft, Document JVTG050,ITU-T Rec. H.264 / ISO/IEC 11496-10, March 2003 [6] “Advanced Video Coding”, Final Committee Draft, Document JVTE022, ITU-T Rec. H.264 / ISO/IEC 11496-10, September 2002 [7] A. Hallapuro and M. Karczewicz, “Low complexity transform and quantization – Part 1: Basic Implementation”, JVT document JVT-B038, February 2001 JVT Reference Software version 4.0, ftp://ftp.imtc-files.org/jvt-experts/reference_software/,March 2003 数字时代-中国数字音视频网 http://www.ChinaAvs.com 由 数字时代-中国数字音视频网 http://www.ChinaAvs.com 搜集整理 版权归作者所有!
分享到:
收藏