图像处理毕业设计.doc
北方民族大学学士学位论文 论文题目: H.264/AVC率失真优化技术研究 院(部)名 称: 电气信息工程学院 学 生 姓 名: 何 娇 娇 专 业: 信息工程 学 号: 指导教师姓名: 马 宏 兴 论文提交时间: 2010年5月18日 论文答辩时间: 2010年5月29日 学位授予时间: 2010 年 月 日 北方民族大学教务处摘 要H.264是ITU-T的VCEG(视频编码专家组)和ISO/IEC的MPEG(活动图像编码专家组)的联合视频组(JVT:joint video team)开发的一个新的数字视频编码标准,它既是ITU-T的H.264,又是ISO/IEC的MPEG-4的第10 部分。1998年1月份开始草案征集,1999年9月,完成第一个草案,2001年5月制定了其测试模式TML-8,2002年6月的 JVT第5次会议通过了H.264的FCD板。2003年3月正式发布。 率失真优化RDO(rate-distortion optimization)是视频标准的关键技术之一,决定着图像质量的好坏。本文基于视频标准H.264/AVC,对率失真优化技术进行了较为详细的介绍,分析了其运动估计和宏块编码模式的率失真优化,并对当前的率失真优化算法进行了总结,给出了测试模型JM7.6的率失真优化算法及改进算法。此外本文通过对H.264/AVC视频编码的实验观测,发现对多种测试序列来说,其P帧或者B帧的宏块类型,无论是在空间域还是时间域上,都具有极强的相关性。为更好地分析这种宏块类型的相关性,本文引入了MAD、MAFD来度量P、B帧的时、空域相关性,并根据实验,制定出了帧间宏块类型SKIP/DIRECT模式选择的准则。从验证模型JM7.6上的实验结果来看,在图像编码质量基本不变,视频编码比特没有太大增加的情况下,对变化不是很剧烈的视频序列,该种算法可减少约30%的编码时间,从而在标准的帧间预测视频编码方面弥补了原有算法的不足,提高了编码器的工作效率。关键词:H.264/AVC;宏块类型;率失真优化;运动估计;预测编码;帧间预测模式ABSTRACTH.264 is a new digital video coding standard developed by combining video group (JVT: joint video team) of the ITU-T's VCEG (Video Coding Experts Group) and ISO / IECs MPEG (Moving Picture Coding Experts Group) , it is both ITU-T's H.264, and also Section 10 of ISO / IEC for MPEG-4 . The draft began in January 1998 to solicit, ,the first draft was completed in September 1999, its test mode TML-8 was established in May 2001, 2002 months, the H.264 FCD board was adopted in the fifth JVT meeting in June 2002. It was officially launched in March 2003.The rate-distortion optimization is one of the key technologies in video coding standard, and it determines the final choice of the coding mode in video. In this paper , first the rate-distortion based on the H.264/AVC video standards is detailed introduced, and then its motion estimation and macroblock coding mode is analyzed, as well as the current rate-distortion optimization algorithm is summarized, finally rate-distortion optimization algorithm and its improved algorithm of the test model JM7.6 are given. whats more, In this thesis, it was clear that MB types of P frame or B frame all existed very strong relativity in temporal and spatial for various test sequences from the extensive experiment results of H.264/AVC. In order to more analyze the relativity of MB types, the mean absolute difference (MAD) and the mean of absolute frame difference (MAFD) are introduced to measure the relativity of MB types in P and B frame in temporal and spatial. And rules of MB types SKIP/DIRECT mode selection inter frames were set down according to the experiments. The extensive experimental results of validating model JM7.6 showed that algorithm reduced about 30 percent coding time for video sequences having no too much smart change under the instance of not only almost invariability of image coding quality also no more increase of video coding bit rate. Accordingly, the disadvantage of RDO algorithm was fetched up so that the work efficiency of encoder was improved effectively.Key words: H.264/AVC; Macroblock Type; RDO; Motion Estimation Predict Coding; Inter Predictive Mode目 录第1章 绪论61.1引言61.2视频压缩编码技术61.3视频编码标准发展概况71.4视频质量的评价81.6 论文研究的主要内容91.7论文内容组织安排10第2章 H.264/AVC视频标准112.1 H.264/AVC的产生及应用前景112.2 H.264/AVC的编解码框架122.3 H.264/AVC的关键技术132.3.1 VCL与NAL的分层设置132.3.2 帧/场编码的自适应选择132.3.3 帧内预测132.3.4 先进的帧间预测技术132.3.5 4×4整数变换和量化142.3.6 更先进的自适应熵编码152.3.7环路去块效应滤波器152.3.8 先进的差错恢复技术15第3章 率失真优化算法及改进163.1 视频编码的率失真思想163.2 H.264/AVC率失真优化算法173.2.1 理论分析173.2.2 拉格朗日系数 l 的确定193.2.3 运动估计的率失真优化193.2.4 宏块编码模式决定的率失真优化203.3 H.264/AVC率失真优化算法及改进情况213.3.1 JM7.6率失真优化算法213.3.2 各种改进率失真优化算法233.4结论与讨论24第4章 率失真优化算法及改进254.1帧间预测编码选择原理254.2 H.264/AVC帧间SKIP/DIRECT模式的快速选择算法274.2.1理论分析274.2.2算法设计354.2.3 模拟实验394.3小结42第五章 总结与展望43致 谢44参考文献45附录1:JM7.6参数设置47附录2:英文原文53附录3:中文译文60第1章 绪论1.1引言多媒体信息主要包括文字、声音、图像等内容,其中具有直观、形象、准确、高效和应用广泛等特点的运动图像(视频)是最重要的组成部分。这是因为视觉是人类获取信息最为重要的途径,外部世界丰富多彩的信息大部分是通过视觉感知的。据统计,人类通过视觉获取的信息占全部获取信息的601。但与文本、语音相比,未经压缩的数字视频几乎没有什么实用价值。从传输角度看:一路广播级的彩色数字电视,若按4: 4 :2的分量编码视频格式,用13.5/6.75/6.75 MHz频率采样,每像素(pixel)用8位编码,数码率为216Mbps;另外,一路高清晰度电视,数码率更高达1327Mbps2。这样的数据量,以今天的技术或在不久将来采用可接受价格的硬件而言,这样的数据率都是不现实的。可喜的是近二十多年来,经过世界众多的专家共同合作和刻苦钻研,多媒体数据压缩技术取得了巨大的发展。而且,数据压缩技术取得的科研成果已经越来越广泛地被应用于可视电话、视频会议、数码相机、数字化视频光盘(DVD)、数字高清晰度电视(HDTV: High Definition Television)等领域。尤其在网络通信技术高速发展的今天,对多媒体通信的需求越来越丰富。如此丰富的需求,为多媒体技术的发展提供了无穷的动力,同时从过去VCD、VOD(Video On Demand)、电影、电视、电子游戏、卡拉OK等领域中取得的成功,让全世界对多媒体技术的发展更加憧憬。1.2视频压缩编码技术视频除了在时域和空域上存在大量冗余外,还存在信息熵冗余(也称编码冗余)、结构冗余、知识冗余和视觉冗余等1。视频编码主要目的是在保证一定重构质量的前提下,以尽可能少的比特数来表征视频信息。整个处理过程的核心思想是去相关,即降低视频信息的冗余度,实现对视频的压缩。视频压缩编码是以Shannon信息论为基础的。一般而言,信源编码的方法按照压缩数据能否被准确恢复分为两大类:无损压缩和有损压缩。其中,无损压缩虽可以无失真的恢复原始数据,但是压缩效率十分有限。在实际应用中通常都是将二者结合使用,视频压缩编码也不例外。视频压缩主要的编码方法有以下几种:1、预测编码预测编码方法是较为实用且被广泛采用的一种压缩编码方法,其理论基础主要是现代统计学和控制论。原理是从相邻像素之间的相关性特点考虑,不是对一个像素直接编码,而是用同一帧(帧内预测编码)或相邻帧(帧间预测编码)中的像素值来进行预测,然后对预测残差进行量化、编码、传输。预测编码实际是利用了视频信息的时空域冗余。2、统计编码数据压缩技术的理论基础是信息论。根据香农信息论的原理,数据压缩的理论极限是信息熵,如果要求在编码过程中不丢失信息量,则要求保存信息熵。这种信息保持的编码就是熵编码。它是建立在随机过程的统计特性基础上的。3、变换编码变换编码通常是将空域相关的像素点映射到另一个矢量空间,使得图像的能量集中在低频区域,表示图像中缓慢变化的内容,而图像的边缘、细节的纹理等细节部分集中在变换域的高频区,然后对这些变换系数进行量化、编码处理。K-L变换是均方误差下的最佳正交变换,但实现困难。当图像相邻像素间的相关系数接近1时,K-L变换的基函数接近DCT变换的基函数。而且DCT存在快速算法34,易于硬件实现,因此被广泛应用于多种图像/视频编码国际标准中。1.3视频编码标准发展概况目前,全球主要有ITU-T (International Telecommunication Union- Telecommunication Standardization Sector) 和ISO/IEC (International Organization for Standardization/International Electrotechnical Commission)两个制定视频标准的国际组织。自H.261后,ITU-T相继发布了H.26x系列标准,而ISO/IEC则推出了MPEG-1、2、4等标准1。这些视频编码标准都是基于块的混合编码框架7如图1-1所示,具有非常类似的结构。基于块的混合视频编码系统是将图像分割为N×N的像素块,然后每个块相对独立的进行编码处理。“混合”的意思是每个块是联合运用运动补偿帧间预测和变换编码进行编码的。整个编码器利用帧间预测编码消除图像序列中的时域冗余,利用变换编码消除频域冗余,然后量化变换系数,熵编码,输出比特流。图1-1 基于块的混合视频编码器2003年ITU-T和ISO/IEC联合推出的H.264/AVC代表着当前视频编码技术的最高水平。另外,ISO/IEC倡导的MPEG-7,MPEG-21和我国的音视频国家标准AVS的视频部分尚未正式颁布。1.4视频质量的评价在进行视频处理时,人们还要面对如何度量视频失真这一重要问题,尽量使视频处理结果和人的视觉感受一致。总体来说,视频质量有两种评价方式8。1) 客观评价客观评价是用重建图像与原始图像的误差来衡量图像的重建质量,常用均方误差(MSE)和峰值信噪比(PSNR)来表示。均方误差定义为: (1-1)其中:M、N表示图像的宽和高,表示原始图像的像素值,表示重建图像的像素值。峰值信噪比定义为: (1-2)由上面两式可知PSNR与MSE是一一对应的,但在实际应用中,常以PSNR来衡量图像的重建质量。2)主观评价主观评价指的是评价者直接对视频进行观察,对所有评价者给出的分数进行加权平均,所得结果即为主观评价结果。这种评价结果虽然符合人们的视觉感受,却不能用数学模型对其加以描述,因此无法直接用于视频压缩编码过程中的质量评价与控制。另外,主观评价更容易受到如年龄、性格、教育程度、背景以及评价时的心情等个体因素的影响。为了便于公平合理地与其他研究成果进行比较,本论文仍然采用大家普遍使用的客观图象质量PSNR做为评判准则。1.6 论文研究的主要内容H.264/AVC视频标准算法JM7.6在帧间运动估计/补偿编码过程中共定义了包括SKIP/DIRECT模式在内的多种帧间编码模式,并采用率失真优化9全遍历策略来对这多种模式进行计算,最终选择最优的宏块模式,这就使得编码时的计算复杂度急剧增加。针对这一问题,人们对如何准确快速地对块预测模式做出选择进行了相关研究。其中最经典的算法为D.Wu,F.Pan等人提出的快速算法10,该算法是利用边缘检测对视频序列中的均质区域(Homogeneous Region)进行检测,用相邻帧之间的差值对静止区域(Stationary Region)进行检测,并对这些区域采用较大的宏块划分模式,达到对帧间宏块模式的进行快速选择的目的。还有一些快速算法,根据当前块的DCT系数计算该块的能量,从而得出块的纹理复杂度来对划分模式进行快速选择11;对原图像进行缩放,然后在原始图像与缩放图像之间建立映射,从而达到宏块模式快速的选择12;结合运动搜索预处理,得到块的预测残差,并对预测残差的纹理进行分析,根据分析结果对宏块划分尺寸做出快速的选择13;统计了多种QCIF测试序列的编码结果,发现不论图像类型是I、P还是B帧,图像编码的宏块类型在空间域都具有极强的相关性,并分别引入方差度量I帧宏块的空域复杂性,绝对差分和(SAD)度量P/B帧宏块的时域活动性,然后根据宏块的活动性或复杂性制定出宏块类型预测的准则来对当前的宏块模式进行预测14。对当前宏块的模式进行预测时,其阀值的取值为定值,但由于视频序列的复杂性,阈值取定值必然会造成较多的误判或者使得执行预测的宏块个数较少。在重复该实验时,发现相邻两帧的MAD,MAFD值在一定的范围里波动,并在某种程度上具有一定的规律性。本文根据这些实验结论,对帧间SKIP/DIRECT模式进行了快速检测。该算法通过计算一部分的编码模式,来减少计算的复杂性,从而达到节约时间的目的。1.7论文内容组织安排第一章介绍视频压缩编码技术,视频编码标准发展概况,视频质量的评价,以及论文研究的主要内容和论文结构。第二章阐述H.264/AVC的编解码工作框架,简要介绍该标准的关键技术。第三章基于视频标准H.264/AVC,对率失真优化技术进行了较为详细的介绍,分析了其运动估计和宏块编码模式的率失真优化,并对当前的率失真优化算法进行了总结,给出了测试模型JM7.6的率失真优化算法及改进算法。第四章着重介绍了H.264/AVC帧间预测技术,并在分析自然图像序列时,在空域相关性的基础上,对帧间SKIP/DIRECT模式进行了初步预测,提出了一种快速的帧间SKIP/DIRECT预测模式选择算法。第五章总结全文,并对本文的不足及下一步需要继续研究的工作提出展望。第2章 H.264/AVC视频标准2.1 H.264/AVC的发展1996年在初步完成H.263的制定工作后,ITU-T确定了近期(Near Term)和长期的(Long Term)两个工作目标。近期目标是进一步扩展和增加H.263的特色,增强低比特率编码能力,并产生了H.263的增强版,即H.263+,H.263+。长期目标是制定一种新的视频编码标准,以更好的质量、更高的压缩比支持视频会议等低比特率应用,由此产生了H.26L草案16。与此同时,ISO/IEC也在继续进行MPEG-4高级视频编码AVC(Advanced Video Coding)的研究。最近几年来,随着通信技术和电信市场的发展,基于IP的、融合互联网与电信网络的全新下一代网络(NGN)逐渐浮出,这为视频应用的发展创造优越的条件。但是,进一步提高视频压缩编码效率,在同样带宽的信道中传输更多路视频信号仍是一个亟待解决的技术难题,而且随着Internet和移动通信的迅猛发展,如何在IP和无线环境下提高抗误码能力,保证压缩后视频信号的服务质量(QoS),成为视频通信发展的另一关键技术难题。2001年,MPEG对H.26L草案进行了评估并认识到H.26L潜在的优越性,于是MPEG和VCEG组成了联合视频专家组(JVT:Joint Video Team),进一步完善H.26L模型,共同发展新的视频编码国际标准。新标准于2003年3月正式颁布17,官方名称分别为:ITU-T Rec. H.264和ISO/IEC MPEG-4 part 10 AVC(简称为H.264/AVC)。与以往视频标准相比,H.264/AVC虽未做出重大改进,但在多编码模式、编码参数自适应选择、上下文自适应熵编码、多参考帧的灵活选择、高精度预测、去方块滤波以及抗误码能力等方面进行了精雕细刻,采取了一系列的切合实际的技术措施,较好地实现了预定的两个主要目标:1)相对于H.263和MPEG-4,视频压缩比提高一倍,或节约50的码率,2)对网络特别是IP和无线网络具有良好的抗误码能力。 ITU-T在发展和制定H.264/AVC的前身H.26L时,主要是为甚低比特率编码提供一种高性能的编码国际标准,但随着MPEG的加入以及更多新技术的采纳,H.264/AVC以其卓越的压缩性能在电视、HDTV、卫星电视、存储媒体、无线多媒体应用等方面显示出了巨大的应用潜力。显然H.264/AVC这个新世纪制定的面向高质量到低比特率,从有线到无线各种应用的视频编码国际标准,有望成为新世纪最为成功的国际标准之一。2.2 H.264/AVC的编解码框架和以往的视频标准相同,H.264/AVC也是基于块匹配的混合编码框架:通过帧内/帧间预测和运动补偿来消除视频序列中的时空域冗余,经过变换编码消除频域冗余,因此,基本的功能模块,例如预测、变换、量化、熵编码都没有发生根本的变化。图2-1是H.264/AVC编码器结构,其中阴影部分为编码器内嵌的解码器。图2-1 H.264/AVC的编码器框图15然而,H.264/AVC为了在相同的编码框架下实现更高的视频压缩性能和更广泛的适应性,在各个模块中都引入了更先进的新技术,使各功能模块的实现细节发生了重要的改变,例如多方向的帧内预测、1/4像素精度的运动估计、多种块编码模式、多参考帧选择、去块效应环路滤波、自适应二进制算术编码等15。2.3 H.264/AVC的关键技术2.3.1 帧/场编码的自适应选择众所周知,每帧图像包含两场,一般帧中的邻近行空间相关性较强,场中的邻近行时间相关性较强,因此,帧编码可用于运动性较小或静止图像的编码,而场编码用于运动性较大的图像编码。H.264/AVC可以根据图像运动剧烈程度自适应地选择编码方式,即图像自适应帧/场编码。如果一帧图像包含一些混合区域,即有的区域是运动的,有的区域是相对静止或运动小的,则前一区域采用场模式编码,后一区域采用帧模式编码。帧/场编码的判决由同一帧的每一垂直宏块对(16×32 亮度区)做出,这种编码称为宏块自适应帧/场编码15。2.3.2 帧内预测帧内预测编码的基本原理是利用已解码重构的邻近块像素来实现对当前编码块的预测,对预测块和实际块的残差进行变换,量化,熵编码。为了提高帧内预测的质量,H.264/AVC提供三种帧内预测方式17:1)4×4亮度块帧内预测2)16×16亮度宏块帧内预测3)8×8色度宏块帧内预测并且为每一种预测方式提供多种预测模式。2.3.3 帧间预测技术1、多种块模式的帧间预测为了更为准确的描述宏块的运动细节,H.264/AVC定义了7中不同尺寸和形状的宏块分割17,如图2-6所示,一个16×16亮度块可以按以下四种方式划分:16×16,16×8,8×16,8×8;一个8×8的图像块可以分为:8×8,8×4,4×8,4×4。图2-6 帧间预测的宏块划分模式这种将宏块分割成多种块大小的运动补偿子块的方法称作树结构运动补偿。这种多模式的灵活和细致的划分,可以更好的实现运动隔离,大大提高运动估计的精确程度。2、1/4像素精度运动估计运动估计是利用视频图像的时域相关性,产生的运动矢量,尽可能准确地描述对象(块或宏块)的时域运动。因此运动矢量的精度越高,运动估计的残差越小,这样在降低码率的同时提高重建视频质量。3、多参考帧预测与过去标准中的单参考帧不同,H.264/AVC支持多参考帧预测。通过在多个参考帧中进行运动估计,寻找出当前编码块(或宏块)的最佳匹配。在一些特定的情况下,主要是快速的周期运动、快速的场景相互切换、物体存在遮蔽现象等,多参考帧的使用会有非常好的效果15。2.3.4 4×4整数变换和量化在H.264/AVC中,不但采用帧间预测编码,而且帧内编码也使用了预测技术,因此H.264/AVC对预测残差变换前后的误差更加敏感。变换带来的误差将会由帧内预测带给I帧其他宏块,从而为后续的P帧带来更大的误差。此外,8×8的块变换,降低了相邻块之间的相关性,容易产生令人讨厌的块效应。因此,H.264/AVC中使用了4×4的整数变换。这样变换和反变换都是整数运算,避免了浮点操作带来的四舍五入误差,使得变换与反变换准确匹配。2.3.5 更先进的自适应熵编码H.264/AVC提供两种自适应熵编码方法,即上下文自适应二进制算术编码(CABAC:Context-Adaptive Binary Arithmetic Coding)和上下文自适应可变长编码(CAVLC)。CABAC充分发挥了算术编码压缩效率高的特点,而且其基于上下文的特点使它可以充分利用不同视频流的统计特性和符号间的相关性,自适应调整不同符号(消息)出现的概率统计20。因此,CABAC的编码效率更高,与CAVLC比较,在相同图像质量下,编码电视信号使用前者将会使比特率减少1015,不过后者更为简单,易于实现。2.3.6环路去块效应滤波器对于H.264/AVC,首先它的压缩比远高于H.263,更容易导致强烈的块效应;其次,由于图像的空间相关性较小,帧内预测的使用非常容易产生块效应,最后帧内预测和帧间预测导致块效应产生积累,而且块效应产生的失真容易累积,使得图像主客观质量的下降21。为了缓解这个问题,H.264/AVC在反变换之后,图像重构前使用了环路去块效应滤波器。H.264/AVC把去方块效应滤波引入MC预测环路中,一举两得既能去除方块效应,又能保护图像的细节与边缘,很好地改善了图像的主、客观质量。2.3.7 先进的差错恢复技术差错恢复方法包括在编码器端采用具有抗差错的编码方式及在解码器端侦测到传输错误后采用的差错掩盖方法,这里,我们主要介绍前者。H.264/AVC继承了以前的一些常用方法:图片分割(slice,GOB),强制帧内编码更新,参考帧检测,数据分割等。另外,为了更好地提高抗误码能力,H.264/AVC引入了新的抗误码方法1517。 第3章 率失真优化算法3.1 率失真含义所谓率失真(distortion-rate),其实指的是图像失真度与编码码率二者之间的相互关系。其中的图像失真度,目前一般采用原始图像与编码重建图像之间的峰值性噪比PSNR来衡量,这个PSNR可以是亮度PSNR,也可以是亮度与色度PSNR的线性组合。一般最简单的情况下,采用亮度的PSNR(Y-PSNR)来作为主要衡量依据。其中所谓的峰值信号,即图像中像素的最大值(比方说像素亮度的最大值);其中所谓的噪声,指的是原始图像与重建图像中各像素值的均方差(差值的平方取均值);将两者一除,取其比值,再转换成分贝形式,即为PSNR。其中的编码码率,指的是选取不同编码参数、量化参数、预测模式时最终所需传输的运动矢量、参考帧编号、预测残差值等总体编码数据的多少。率失真优化:其一般目的就在于,在以尽可能小的编码码率下,获取的图像失真度尽可能的少,唯有如此,编码器的编码效率才是最高。当然,也不排除率失真优化的一些其他的特殊目的,比方说,在保证码率不过上限的情况下失真度最小、在保证失真度不过下限的情况下码率最小,等等率失真分析:指某种可合理选择编码/量化参数及预测模式、从而实现率失真优化的建模、优化、分析过程。在H.264的编码器中,一般均采用基于拉格朗日的优化算法来进行选取相应的编码参数及预测模式,从而达到编码控制及率失真优化的目的。率失真优化过程的算法及实现优化程度,将极大地影响编码器运行效率及配置要求,同时也极大地影响编码器编码效率和质量,因此是个非常重要的环节。3.2 H.264/AVC率失真优化算法3.2.1 率失真优化的理论基础根据率失真理论,每帧图像的编码模式选择问题可以归结为:在可选模式中选择最佳的模式,使得在限定码率下,失真最小。即假设XX1, X2, , XN表示当前帧所有宏块,M表示视频编码可选的编码模式集,如果用D(X,M)和R(X,M)分别表示当前帧在编码模式集M下的失真和编码比特数,RC为限定码率,那么当前帧率失真优化需满足在R(X,M)不超过RC时,D(X,M)达到最小值。为了决定出最优编码模式M,可采用拉格朗日乘子法写出J(X,M, l)的表达式,即J(X,M, l)=D(X,M)+ l*R(X,M),只要参数l可知,J(X,M, l)极值就可以决定出最优编码模式M,使得此时的编码失真D(X, M)就是在限率Rc下的最小失真。由于当前视频标准是基于宏块的编码结构,故当前帧的失真或码率可以由各个宏块的失真或比特数累加,因为单个宏块Xi在编码模式M下的比特数R(Xi, M)必须在其他所有宏块计算完毕才能获得,所以严格地讲,当前帧各宏块最佳编码模式的决定是相互依赖的。但是这将导致问题非常复杂,难于求解。为了将问题简化,忽略各宏块的码率对其他宏块的编码模式的影响,也就是假设各宏块的编码模式率失真优化决定是相对独立的16,由此,整帧的率失真优化转化为每个宏块的优化。对于单个宏块的率失真开销函数可以简化为求J(MODE, l)的最小值,其中MODE为当前宏块可选编码模式集,J(MODE, l)=D(MODE)+ l*R(MODE)。只要获得拉格朗日系数l,宏块编码模式的率失真优化就可以实现。根据大量的统计实验结果,得出参数l与量化步长Q2有着近似的线性关系2829,给出公式:l=0.85*Q2,其中QQP/2,QP为量化参数。由于H264/AVC编码参数的改变,对此做出了改进。目前H.264/AVC采用的l和量化参数QP关系式是30:1)如果编码时没有B帧,对于I帧和P帧则lMODE=0.85*2(QP-12)/3;2)如果编码时有B帧,对于I帧和P帧则lMODE,IP=0.68*2(QP-12)/3, 对于B帧则lMODE,B=0.68*2(QP-12)/3*max2.00,min4.00,(QP/6)。3.2.2 运动估计的率失真优化运动估计的率失真优化包括两方面的内容,一个是决定最佳运动向量;另一个是决定最佳参考帧及相应的运动信息。其中决定最佳参考帧及相应的运动信息,实施前提是多参考帧技术。首先,运动向量的优化,实现公式如下31: (3-18)其中表示运动估计所得到的运动向量,表示通过对相邻宏块预测得到的运动向量,为拉格朗日参数,表示运动向量差值编码所需比特数(采用universal variable length code (UVLC) table来估计),SA(T)D为失真度,计算公式为: (3-19)其中,s表示原始视频信号值,c表示实际编码的视频信号值,如果运动向量是小数精度,则失真度在Hadamard transform后采用SATD来度量。其次,决定最佳参考帧,实现公式如下:(3-20)其中表示选取参考帧编码所需的比特数(其值由UVLC table来估计),其他的参数和式3-19中对应。3.2.3宏块编码模式决定的率失真优化宏块编码模式决定的率失真优化算法基本原理:在可选的宏块类型中,遍历每种可用编码模式,计算出每种模式下的编码比特数,相应的重建图像失真度,根据公式31: (3-21)计算拉格朗日函数值J 即率失真开销,经过比较,选取最小值下的编码模式MODE做为宏块的最终编码模式。其中QP为宏块的量化参数,s, c 分别表示原始图像和重建图像的像素值,表示在特定QP和MODE下当前宏块的编码输出比特数, 表示图像失真度,计算公式为:(3-22)为拉格朗日系数,MODE为当前宏块可选的一种编码模式,针对不同图像类型,编码模式集分别为:I-frame: (3-23)P-frame: (3-24)B-frame: (3-25)另外,INTRA4×4有多种预测模式选择,率失真优化计算公式如下:(3-26)其中IMODE代表可选的多种预测模式,表示失真,表示编码输出比特数,包括帧内预测模式和DCT亮度系数所需比特数。3.3 JM7.6率失真优化算法综上所述,本节给出验证模型JM7.6宏块编码所采用的率失真优化算法详细步骤3132,图3-2给出H.264/AVC宏块编码的率失真优化算法详细流程。算法描述如下:Ø 第一步:参数初始化,确定宏块的量化参数QP及参考帧信息,依照当前编码图像类型,根据公式3-14、3-15、3-16、3-17计算拉格朗日参数, ;Ø 第二步:根据式3-26为当前宏块决定最佳INTRA4×4预测模式;Ø 第三步:通过计算SATD,最小值对应的预测模式为当前宏块最佳INTRA16×16预测模式;Ø 第四步:根据式3-18、3-20为当前宏块决定运动估计的最佳参考帧及相应运动信息;Ø 第五步:在第二,三,四步所得基础上,根据式3-21计算各种编码模式下的率失真开销J,选取最小值对应的编码模式做为当前宏块最佳的编码模式。Ø 第六步:当前宏块编码后续处理,准备下一宏块的编码。图3-2 H.264/AVC宏块编码率失真优化(RDO)算法流程示意图3.4结论与讨论率失真优化技术是当前图像视频处理中的一项十分活跃的技术,在H.264/AVC视频标准中,其应用虽然保证了图像的质量,节省了码率,但相应的,也会致使编码过程变得复杂,编码时间增加。针对这种情况,现有很多的改进的率失真优化算法,可在保证图像质量,码率不会有太大变化的情况下,节省编码时间,减少计算的复杂性。第4章 率失真优化算法的改进4.1帧间预测编码选择原理在H.264/AVC视频编码标准中,帧间预测编码是对P、B帧而言,其预测模式包括SKIP/DIRECT模式27在内的多种模式,具体见表4-1。表4-1P、B帧的编码模式集类别模式P帧INTR4×4,INTRA16×16,SKIP16×16, 16×8, 8×16, 8×8,8×4,4×8,4×4B帧INTR4×4,INTRA16×16,BIDIRECT,DIRECTFWD16×16, FWD 16×8, FWD 8×16, FWD 8×8,FWD 8×4, FWD 4×8, FWD 4×4BAK16×16, BAK 16×8, BAK 8×16, BAK 8×8,BAK 8×4, BAK 4×8, BAK 4×4H.264/AVC在进行帧间预测编码时,要对帧间宏块模式进行遍历计算,再使用率失真优化模型来计算当前宏块在各种划分模式下的率失真开销,如式(4-1),得到最佳的块划分模式,来提高压缩效率2426。其基本原理是:在可选的宏块类型中,遍历每种可用的编码模式,计算出每种模式下的编码比特数及相应的重建图像失真度。 (4-1)J 即率失真开销,QP为宏块的量化参数,s, c 分别表示原始图像和重建图像的像素值,表示在特定QP和MODE下当前宏块