H.264/AVC帧间预测快速模式选择优化算法
2021-03-10
来源:飒榕旅游知识分享网
第3O卷增刊1 2010年6月 计算机应用 Vo1.30 Supp1.1 Journal of Computer Appucations June 2010 文章编号:1001—9081(2010)S1—0188—03 H.264/AVC帧间预测快速模式选择优化算法 王欣欣,陆中成,程欣欣 (华东理工大学信息科学与工程学院,上海200237) (2007xinxin2007@163.com) 摘要:为了提高编码效率,H.264/AVC采用了许多新技术,多种分割模式是其重要技术,但全模式遍历法大大 增加了编码复杂度。为了减小H.264/AVC的编码算法复杂度,提出了一种快速的帧间模式选择算法。该算法采取 的主要方法包括:SKIP模式早期终止;利用空时相关性,在候选模式范围内采取自适应阈值早期终止技术;判断是否 跳过帧内模式。实验结果表明,与JM10.2相比,编码时间减少最大超过30%;与JⅥ’算法相比,编码时间减少最大超 过l0%,而码率和峰值信噪比基本不变。 关键词:H.264/AVC;帧间预测;预测模式选择;白适应闲值;率失真优化 中图分类号:TP391.41;TP919.8 文献标志码:A Optimization algorithm of fast mode decision for H.264/AVC inter-prediction WANG Xin-xin,LU Zhong—cheng,CHENG Xin—xin (College ofInformation Science and Engineering,East China University ofScience and Technology,Shanghai 200237,China) Abstract:H.264/AVC uses many advanced techniques to achieve superior performance.In these techniues.multqiple block size is an important part.However,searching all block sizes has remarkably increased the computational complexity.In order to reduce the complexity,this paper proposed a fast mode decision algorithm.The main techniques include:SKIP mode early termination;making use of space・temporal correlation to achieve candidate mode and then early termination by using adaptive threshold;skipping the intra mode search.The experimental results show that compared with JM10.2 and JⅥ。its maximum timesaving is more than 30%and 10%,respectively,without significant degradation of visual quality and increase in bit rate. Key words:H.264/AVC;inter-prediction;prediction mode decision;adaptive thresholding;RD-optimization 0 引言 新一代视频压缩标准H.264/AVC…是由MPEG和 VCGE共同建立的联合视频工作组(J、,T)制定的。该标准引 入了很多新技术,使其具有压缩效率高、网络亲和性等优势。 其中,时间域上的帧间预测是其重要的技术,它采用七种 大小不同的分割模式。H.264/AVC要完成对任一宏块的编 式作为编码模式。H.264采用拉格朗日方法求RDO,其中 RDO=D+A・R,式中:D为源宏块信号和重建宏块信号之间 的差别,使用差值平方和(Sum of Suared Diference,SSD)或 绝对误差和(Sum ofAbsolute Difference,SAD)或变换后再绝 对值求和(Sum of Absolute Tranformed Diference,SATD)加 以计算;A为拉格朗日乘子;R为熵编码后的比特数。H.264 在编码时需要对每一种可能的宏块模式进行运动搜索和率失 真优化计算,使得计算量急剧增加。 码模式选择,需要遍历所有模式,选择率失真代价最小的模式 作为该宏块的最终模式,但由于增加了编码复杂度,因此很难 实现实时的应用。因此,研究快速算法降低帧间预测的运算 复杂度具有重要的意义。 本文在统计分析的基础上,提出了一种新的快速帧间模 式选择算法。该算法充分利用SKIP模式早期终止以及空时 相关性等技术,在保证图像质量的前提下,提高了编码速度。 1 帧间预测的块模式选择 为了提高运动估计的准确度,H.264采用了7种块分割 模式分别是16×16、8 X16、16×8、8×8、8 x4、4×8、4×4。每 个分割的子块都有一个独立的运动补偿。图1直观显示了这 2 相关的帧间快速模式选择算法 目前,对帧问预测算法的研究和改进大致可以分为两类: 7种模式。除以上几种分割模式外,P帧编码还采用了直接拷 贝模式SKIP和帧内预测模式Intm 4×4、Intra 16×16。 第一类是减少候选模式个数;第二类是简化代价函数。其中, 简化代价函数,使代价的估算不够精确,因此绝大数文献都采 用前种方法。 2.1 基于图像的纹理复杂度 小块尺寸适合于细节较多的宏块区域,大块尺寸适合于 H.264采用率失真优化(Rate Distortion Optimization, RDO)来计算各种块模式的编码代价并将选择RDO最小的模 收稿日期:2009—09—22。 较平坦的区域。文献[2]提出利用离散余弦变换(Discrete 作者简介:王欣欣(1985一),女,河南济源人,硕士研究生,主要研究方向:视频压缩、多媒体;陆中成(1958一),男,上海人,副教授,主要 研究方向:电子及应用电子技术、视频压缩、多媒体;程欣欣(1983一),男,河南济源人,硕士研究生,主要研究方向:图像处理、模式识别。 增刊1 王欣欣等:H.264/AVC帧问预测快速模式选择优化算法 189 Cosine Transform,DCT)系数度量该块的能量而得到块的纹理 式为SKIP模式。其条件如下: 1)运动补偿块尺寸是16×16; 2)最佳参考帧是已重建的前一帧; 3)运动矢量为预测运动矢量; 复杂度。因其依靠AC系数总能量来判断宏块细节高低必须 对宏块进行额外的DCT。文献[3]根据能量守恒定律,提出 在时域计算该宏块的能量,而不需要进行DCT,节省大量时 间。 4)量化后的变换系数均为零。 3.2.2选择性的帧内模式检测 2.2基于特殊区域的检测 在自然视频序列中,存在着大量空间上均匀平坦或者时 域上静止和活动性很小的区域,这些区域一般采用较大的分 块模式如16×16。如果能够采取某些办法预测到这些区域 就可以避免许多小分块模式复杂的率失真代价计算,从而减 帧间编码利用的是时间相关性,而帧内编码利用的是空 间相关性。因此,如果时间相关性大于空间相关性,则跳过帧 内模式。文献[11]提出在进行完帧间模式检测后,利用由帧 间预测得到的编码当前宏块残余数据所需的平均最小比特数 少编码时间。 文献[4]提出基于统计阈值的方法来检测平坦和静止区 域。该算法减少了运算复杂度并保持了图像质量,但因其使 用了统计阈值,随着QP增加,其性能变得越来越差。 2.3基于模式优先权和误差表面单调性特征 文献[5]考查误差表面是否单调,若单调,则只需对代价 较小的两个模式间的模式进行检测。此外,文献还把运动估 计作为模式决定的一部分,把快速模式选择与快速运动估计 技术相结合。相对原来的参考软件编码,复杂度大大降低,可 达85%~90%;该算法不足之处:它是建立在“误差表面存在 单调性”这个假设上的。文献[6—8]均使用了这一观点。 2.4基于空时相关性 文献[9]提出利用空时相关性,使用相邻块的模式来构 成候选模式。因候选模式直接影响到编码图像的质量,候选 模式至关重要,文中采取了相应的措施加以补偿,在提高编码 速度的同时保证了图像质量。 2.5基于率失真代价的关系 文献[6—8]利用当前宏块的率失真代价.,。 与前一帧 里相同模式的率失真代价平均值-, 有很强的相关性。如 果J1 ≤.,一 ,则当前宏块属于大块模式,直接排除小块 模式。此外,同一宏块的不同模式的率失真代价的比率反映了 当前宏块的平坦、粗糙度,也可利用这一观点,进而选择相应 的模式。 2.6基于运动矢量大小进行模式选择 如果当前块的运动矢量很大,则选取小块模式;如果当前 块的运动矢量很小,则选取大块模式。 3本文的快速算法 3.1统计分析 宏块模式的选择与视频内容有很大的关系。由文献 [10]实验结果看出,各种模式采用的概率并不均等,且有一 定的规律性。P帧中宏块采用SKIP模式和帧间16×16模式 的比率最大,尤其是在运动相对平缓的视频序列中,如Akiyo、 Miss America;在运动较为剧烈或宏块处于目标物边界的序列 中,宏块更倾向于选择P 8×8模式,如Mobile、Coastguard。同 时发现采用帧内模式编码的宏块所占比率很小,而且帧内模 式预测比较复杂。因此对给定的宏块提前进行SKIP模式的 判断和是否进行帧内模式搜索的判断对提高编码速度是非常 有效的。 3.2本文所用算法 3.2.1早期SKIP模式判断 SKIP模式判决是基于16×16块进行的,其过程为:先对 宏块进行运动估计和参考帧预测,然后计算其率失真代价 (RDcost),当其同时满足以下条件时可判定宏块最佳编码模 AR和宏块平均边缘差值ABE来检验是否使用帧内模式进行 编码,如果AR足够小或者AR<K×ABE,则无需再进行帧内 模式的检测,选择当前RDcost最小的帧间模式作为最佳编码 模式即可。AR定义如下: 1 AR=壶(#bits oftexture data)×A 其中A=0.85×2 。 在定义ABE时,需考虑以下四种情况。 1)左边、上边宏块均不可用。 女Ⅱ果AR=0,贝0 I过I-.∑ 。..Lnt_.r∑Ⅲ,∑Ⅲ ..a 4×4、I.L_....Lnt ra 16×16;否贝Ⅱ ABE=0。 2)左边不可用、上边宏块可用。 SBE(SumofBoundaryError)= Yo ( + ,,,)一 ( +i,y一1)I]+ ‰(“+ ,cy)一UI ̄(ex+i,ey一1)I]+ Vod*(cx+i,cy)一 (c +i,cy一1)I] ABE 瓦1 sBE 3)左边可用、上边宏块均不可用。 SBE(SumofBoundaryError)= I y0由( + )一 ( 一1,,,+圳]+ [I Uo, ̄(ex,c,,+ )一 (c 一1,c,,+ )I]+ [I Vor ̄(cx,c,,+ )一v ̄(cx-1' + )1] ABE=- ̄2SBE 4)左边、上边宏块均可用。 SBE(SumofBounda rrDr) ∑I ( ,y+ )一 ( 一1,,,+圳+ ∑I ( + ,,,)一 ( +i,y一1)I+ (cx,cy+ )一UR ̄(ex一1,cy+ )J+ 0由(c + ,ey)一ORec(CX+i,cy一1)l+ 由(cx,cy+ )一VR,c(CX一1,cy+ )I+ 190 计算机应用 第30卷 7 ∑1i=0 .Vo ̄(cx,cy+ )一 ( 一1,cy+ ) ABE= BE 其中: , , 是当前待编码宏块的像素值; , , 是已重建块的数据;( ,y),( ,cy)分别代表亮度块、色 度块的左上角像素的坐标。 3.2.3视频序列的空时相关性 1)利用模式相关性选取候选模式。 当前宏块的编码模式以很大概率等同于已编码的相邻宏 块的编码模式,因此可根据这些相关信息,对当前编码模式进 行预测,缩小模式选择范围,减少编码时间。本文运用如图2 所示的相邻块的模式来预测当前宏块的模式。 图2相邻块 图2中,A、B、c、D、E分别为当前待编码宏块的左、上、右 上、左上、前一帧相同位置宏块。 2)利用白适应早期终止。 若当前模式的代价RDcost≤Tt,则这一模式即为最佳的 帧间编码模式。其中: =Min(RDcost_A,RDcost_B, RDcostC,RDcost_D,RDcost__E)。 RDcost_A,RDcost_B,RDcost_C,RDcost_D,RDcost E分别 表示相邻块所选编码模式的率失真代价。 3)进行修正。 候选模式直接影响到图像的质量,因此候选模式的选择极 其重要。有时相邻块的分割模式并不能正确反映当前宏块的 模式,此时运用模式相关性必然造成图像质量严重下降。在 此,可采取如下方式予以修正:如果当前模式的代价 RDcost≥ ,则进行全模式搜索。其中 =Max(RDcost_A, RDcost_B,RDcost_C,RDcost_D,RDcost_E)o 3.3本文帧间编码模式的算法说明 1)当当前宏块位于当前帧的第一行或第一列时,运用如 前所述的误差表面单调性这一理论来选择模式。 2)当当前宏块位于当前帧的右边缘时,仅使用相邻块A、 B、D、E的模式作为候选模式进行预测;T1、 的取值中去掉 RDcost_C项o 3)当相邻宏块全部可用时,使用相邻块A、B、c、D、E的 模式作为候选模式进行预测; 、 的取值如前所述。 4实验结果与分析 将本算法应用到JM10.2 测试模型中并在VC6.0平台 上进行实验。从编码时间、输出码率、平均峰值信噪比三方面 进行比较。实验环境是CPU为2.0GHz、内存为2GB的计算 机。实验参数:UseFME=0,RDO=2,EarlySkipEnable=1, SelectivelntraEnable=1,FrameRate=30.0,使用Hardarmard 变换,熵编码采用CAVLC,Transform 8×8Mode设置为0。编 码结构取IPPPP,每个序列取100帧。实验取慢速运动的 container、salesman;中速运动的highway、Foreman;快速运动的 coastguard;纹理极其复杂其物体横向运动的mobile,均为 QCIF格式。表中序号1、2、3分别代表时间、码率变化率、峰 值信噪比变化量。负值表示减小,正值表示增加。其中 PSNR=101g(255 /MSE),MSE=(4 x MSEr+MSE + MSE )/6。实验数据如表1—3所示。 表1 QP=20时相关算法的比较结果 表2 QP=28时相关算法的比较结果 表3 QP=36时相关算法的比较结果 表1~3中M、J、T分别表示本文算法、JM10.2、JvT “ 算 法。由表可知,本文方案相对于JM10.2编码时间减少最大 超过30%,和JVT相比,编码时间减少最大超10%,峰值信噪 比变化很小,对人的视觉来说几乎不影响图像质量,码率有少 量增加。 5 结语 本文提出了一种新的帧间预测模式选择算法。该算法充 (下转第194页) 194 计算机应用 第30卷 5 检测PCI总线网络接口卡实例 以常见的RTLS139网卡为例进行实验,分别是一块故障 网卡,一块正常工作网卡。用PCI总线设备的奇偶校验功能 来检测网卡能否正常工作。选择泰克TDS 3034示波器,其带 宽:300 MHz,即时取样速率/通道:2.5 GS/s。 测试方法:设置PCI总线时钟为33 MHz。通过程序向 PCI网卡进行写地址操作,并同时故意翻转PAR总线电平 图7故障PCI网卡SERR# ̄响应 (加74S04非门实现)造成奇偶校验错误,观察在通道中能否 探测到RTL8139网卡的SERR#信号产生。注意要把示波器 6结语 的触发模式设为边沿触发,下降沿触发,触发电平设为 引起PCI设备故障的原因很多,不同功能特性的PCI设 1.00V;示波器探针C1接¥3C2510A的PCICLK1引脚,c2接 备有着各自,的特性故障,本文所述检测技术主要检测判断 s3C2510A的PCISERR引脚。 PCI设备本身是否存在故障,对任何符合PCI总线规范的设 备具有通用性。 该检测技术可以定位PCI设备配置寄存器故障、奇偶校 验故障以及数据通道故障,不足之处就是由于它是通用检测 技术,无法精确定位PCI设备其他部位故障,但可以根据不同 功能的PCI设备,拓展它的检测范围和精度。 参考文献: 【1]何苏勤.具有PCI总线接口的通用嵌入式主板设计【J】.微计算 机信息,2006,22(14):92—95. 图6 PCI网卡产生SERR# ̄号 【2】张平,杨琳佳.PCI数据采集外围总线接口电路的设计【J】.重 通过图6可以看出,每进行一次写地址操作时,PCI总线 庆大学学报:自然科学版,2007,30(10):20—23. 【3】Xili ̄Inc.The real—PCI design guide versiort3.0【M】.XilinxInc, 网卡能自动探测到发送地址的奇偶校验错误,并随即产生 2000. SERR#系统错误信号以终止通信。当发送正确的奇偶校验地 【4】 李贵山,陈金鹏.PCI局部总线及其应用【M】.西安:西安电子 址信息时,如图7所示,SERR#信号不作出响应。证明PCI总 科技大学出版社,2003. 线设备能正常进行校验,可以初步认定它能正常工作。 【5】 SHANLEY T。ANDERSON D.PCI系统结构[M】.刘晖,冀然然, 而故障的RTLS139网卡,即使地址期奇偶校验是错误时 夏意军,译.4版.北京:电子工业出版社,2000. 也没有任何反应,图形与图7相同。因此可以断定该PCI设 【6]蒋豪.基于FPGA的PCI总线从接口IP核的设计与实现[D】. 镇江:江苏大学,2008. 备肯定出现硬件故障所致,故障点的定位可以进一步编写程 【7】 郑丽君.基于FPGA的PCI轴控制器的设计与实现【D】.沈阳:中 序测试,确定是芯片故障还是线路故障。 国科学院沈阳计算技术研究所,2008. (上接第190页) 分利用空时相关性,并引入SKIP早期终止和选择性跳过帧内 baseline and main profiles in the H.264 video coding s ̄ndard[J】. 模式。在保证编码质量的前提下,提高了编码速度,尤其对包 IEEE Transactions on Multimedia,2Oo6,8(6):1125—1134. 含有很多均匀或静止区域的序列更有效。 【7】 WANG HANLI,KWONG S,KOK C—W.An efifcient mode decision 参考文献: lagorithm ofr H.264/AVC encoding optimization[J】.IEEE Transac— 【1】 ITU—T Rec.H.264/ISo/IEC14496—10 AVC,Draft ITU—T recom・ tions on Muhimedia,2007,9(4):882—888. mendation and ifnal draft international standard of joint video speci— [8】HUANG HUAIBIN,HU DONG.An efficient fast inter mode deei- lfeations【S】。2003. sion algorithm ofr H.264/AVC【C】//2009 International Conference 【2】YU A C.Efifcient block—size selection algorithm for inter—frame cod— on Communications and Mobile Computing.【S.1.】:IEEE,2009: ing in H.264/MPEG-4 AVC【C】//2005 IEEE International Con— 161—165. ference on Acoustics,Speech,and Signal Processing(ICASSP). 【9】 WEI ZHENYU,NGAN K N.A fast macroblcek mode decision algo- 【S.1.】:IEEE Signal Processing Society,2004:169—172. rithm for H.264[C]//2006 IEEE Asia—Paciifc Conference oil Cir- 【3】 张淑芳,李华,侯玲,等.基于H.264的快速帧间模式选择算法 cults and Systems(APCCAS).Singapore:IEEE,2006:772-775. [J】.计算机应用研究,2008,25(1):283-287. [10】LIU PENGYU,JIA KEBIN,HE XU.A fast mode decision algo- [4】WU D,PAN F,LIM K P,et a1.Fast inter mode decision in irthm for Inter・fralTle in H.264/AVC[c]//2008 International Con— H.264/AVC video coding[J】.IEEE Transactions on Circuits and ferenee on Innovative Computing Information and Contro1.Washing- Systems for Video Technology,2005,15(6):953—958. ton,DC:IEEE Computer Society,2008:202—205. 【5】YIN P,TOURAPIS H—Y C,TOURAPISAM,et .Fastmode deci— [11]JEON B,IJEE J.Fast mode decision for H.264,JvT-J033【R】. sion and motion estimation for J、,T/H.264【c]//2o03 IEEE Intema- JVT of ISO/IEC MPEG&nU—T VCEG.2oo3. tional Conference on Image Processing.【S.1.】:IEEE,2003:853—856. [12]SI ̄HRINGK.H.264/AVC reference software【EB/OL].【20a7—02— 【6】 GRECOS C,YANG MINGYUAN.Fast mode prediction for the 10].h ̄p://iphome.hhi.de/suehring/tml/download/old_jm/.