一种改进的H.264帧内预测模式选择算法
2014-07-18唐浩漾王曙光
唐浩漾, 王曙光
(西安邮电大学 自动化学院, 陕西 西安 710121)
一种改进的H.264帧内预测模式选择算法
唐浩漾, 王曙光
(西安邮电大学 自动化学院, 陕西 西安 710121)
针对H.264帧内预测模式选择中失真估计不准确和计算量大的问题,提出一种改进的H.264帧内预测模式选择算法。该算法首先对像素的递归失真估计方法进行改进,较为准确地估计了多种帧内预测模式下的预测失真,然后利用相邻块预测模式的相关性预先筛除部分预测模式,降低了H.264中帧内预测的复杂度。与 JM 参考软件的对比结果表明,该优化算法能在保证很好的图像质量的同时,将帧内预测模式选择的时间减少60%以上,有效地提高了视频图像的编码效率和视觉质量。
视频编码;H.264/AVC;帧内预测;率失真优化
H.264/AVC是由ISO和ITU组建的联合视频组(JVT)推出的新一代视频压缩标准[1]。为了实现更高的编码效率,H.264/AVC标准采用了很多新的编码技术,如多模式的帧内预测、宏块的灵活划分、增强的运动估计、改进的去块效应滤波器等,但这些技术也使得视频编码的复杂度急剧上升[2]。
率失真优化技术是H.264/AVC中的核心技术之一,H.264/AVC以全搜索的方式进行帧内预测,通过选择率失真代价最小的模式作为最优编码模式,较好地取得了码率和失真之间的平衡[3]。在H.264/AVC的率失真优化(Rate-distortion Optimization, RDO)帧内预测模式选择中,采用绝对误差和(Sum of Absolute Difference, SAD)作为失真的判决函数,但SAD仅反映时域的差异,不能有效反映传输过程和解码器端可能引起的失真[4-5]。递归优化的像素估计方法(Recursive Optimal Per-pixel Estimate, ROPE)是一种基于像素的递归估计算法,其将视频传输失真分为由量化引起的编码失真和网络丢包产生的传输失真[6],本文根据H.264/AVC的多模式帧内预测对ROPE方法进行改进,较为准确地计算出多种帧内预测模式的失真,改进了H.264/AVC帧内预测的率失真性能。
H.264/AVC支持的帧内预测模式较多,为了确定一个宏块的帧内预测模式,需要执行592种率失真代价(Rate-Distortion Cost, RD_Cost)的计算,导致帧内预测的复杂度很大[7]。为了降低编码复杂度,本文在RDO模式选择之前筛除部分编码性能不佳的模式,减少率失真代价的计算数量,降低编码复杂度。
1 H.264/AVC的帧内预测模式
H.264/AVC利用相邻宏块的空间相关性来进行帧内预测编码。对于一个给定的宏块,首先利用相邻的周围宏块对此宏块进行预测,然后对实际宏块和预测宏块的对应像素差值做变换编码,从而减少Intra帧的编码数据量[8]。如图1所示,把16×16亮度宏块划分成16个4×4的子块,4×4预测块的像素a~p可以由已经编码并重建像素采样点(A~H, I~L, M)预测。
图1 帧内预测的各像素点分布
按照图像的不同纹理特征,H.264/AVC将一幅Intra帧图像划分为不同大小的块。对于亮度分量,H.264/AVC对含有较多空域细节信息的宏块采用4×4预测,有9种预测模式,而对于较平坦的区域采用16×16的预测模式,有4种预测模式;对于色度分量,预测是对整个8×8块进行的,有4种预测模式[9]。图2为Intra4×4帧内预测的9种模式预测方式,包括一种DC模式和8种方向预测模式。
图2 Intra4×4帧内预测模式
在帧内预测模式选择过程中,H.264/AVC计算所有帧内预测模式的率失真优化代价函数,以选出整个宏块的最优预测模式。最优预测模式选择过程中用到的RDO代价函数定义为
Jmode(M|λmode)=SAD(M)+λmodeRM,
(1)
其中M为候选的编码模式,λmode为用于模式选择的拉格朗日乘子,λmotion=0.85×Q2,Q为宏块量化参数,RM为码流位数,是在给定的模式和量化参数条件下编码残差数据及其他有关信息的总比特数之和。SAD(M)为编码模式M的失真度估计,其值为一个编码块的原始采样s(x,y)和预测样点p(s,y)差值d(x,y)的绝对值之和,即
。
(2)
2 帧内预测模式的失真估计
ROPE算法作为一种像素域的递归估计算法,能较为准确地计算出解码器端整像素精度的每个像素失真度期望[10]。但ROPE算法并没有考虑帧内不同预测模式的差异,不适合H.264/AVC标准,本文首先对ROPE算法进行改进,估计H.264中不同帧内预测模式下的预测失真。
(3)
(4)
皇帝拍拍她的手背:“那就好。”皇帝指一指身后,“朕听说你不适,就忍不住来了,正好也催促太医过来,给你仔细瞧瞧。”
(5)
(6)
(7)
(8)
(9)
(10)
(11)
图3 H.264/AVC编解码过程示意图
3 帧内4×4块预测模式快速选择
Intra帧图像存在着相同或相近的纹理方向,其相邻块的预测模式往往会相同。利用这一特性,在进行帧内4×4模式选择时,首先利用帧内预测的最有可能模式(most probable mode,MPM)进行编码模式的预判断,以缩小预测模式选择的范围。
H.264中Intra4×4帧内预测的最有可能模式MPM定义为当前4×4块的左、上相邻块采用的最小编号的预测模式,不存在左或上相邻块的边界块则以DC模式作为其MPM[7]。
设定±22.5°范围预测模式偏差为相似性帧内预测,近似为有相同的MPM。表1为当前4×4块与左、上相邻4×4块的MPM相似性,它们的预测模式偏差在±22.5°范围内。首先判断当前块与相邻4×4块的MPM分布差异
mode_4×4intra(i)≈
mode_4×4intra(i,neighbor)。
(12)
步骤1 计算当前预测块和其左、上相邻块的MPM。
步骤2 判断其MPM是否满足式(12)的判决条件。如果满足,计算当前块和其相邻块的MPM的RD_Cost,选择具有最小代价的模式为RD_Cost1,否则直接执行步骤3。
步骤3 计算方向性最强的4个预测方向:模式0、模式1、模式3、模式4分别代表水平、垂直、两个对角线方向的预测,方向性最强,计算模式0、1、3和4的RD_Cost,选择具有最小代价的模式为RD_Cost2。
步骤4 比较第2、第3步中计算出的率失真代价,选取具有最小率失真代价的模式作为当前帧内4×4块的预测模式。
表1 Intra4×4最有可能预测模式的相似性关系
4 仿真结果与分析
在H.264/AVC标准的测试模型JM16.2[11]中实现改进算法,并与JM16.2参考软件中的全搜索帧内模式选择算法,文献[12]中快速帧内模式选择算法SDD,文献[13]中快速帧内模式选择算法DES进行实验对比。
实验采用3个具有代表性的CIF格式的标准测试序列Foreman,News和Football。3个序列具有不同的运动程度和纹理特性,每个序列编码100帧。实验中,使用了基于上下文的自适应二进制算术编码(CABAC),采样格式为4∶2∶0,采用率失真优化,实验只做帧内编码,将所有的编码帧都设置为I帧。实验条件如表2所示。
表2 JM16.2编码参数设置
实验评价指标包括平均PSNR差异ΔPSNR,码率变化率ΔBitrate、编码时间降低百分比ΔTime,它们分别表示快速算法相对JM16.2全搜索算法的编码性能变化,采用JVT参考文件中的Bjontrgaard方法[14]可对它们进行计算,即
ΔPSNR=RPSNR_fast-RPSNR_JM,
ΔBitrate=BBitrate_fast-BBitrate_JM,
表3详细比较了3个测试序列采用全I帧编码时,各种帧内模式选择方法在不同量化参数下的综合性能比较。
表3 各种帧内模式选择算法综合性能比较
从表3可以看出,改进算法相比JM16.2中的全搜索算法,在平均损失0.045 dB的PSNR或增加1.186%码率的情况下,能减少约63%的编码时间。由于文献[12-13]中的快速帧内模式选择方法失真估计仍然采用JM参考模型中的失真估计方法,限制了RDO模式选择的准确性,编码性能不如本文算法。文献[12]减少了率失真优化模式选择中候选模式的数量,对各序列编码时间与本文方法更接近,文献[13]检测到无方向相似性时退化为全搜索方式,其编码性能与本文算法更接近,但编码时间更长。
图4比较了当QP=32时News.cif序列在各种快速模式选择算法下的R-D曲线和编码时间对比。从图中可以看出,改进算法在编码时间上明显优于两种对比方法,在率失真性能方面也有改善,尤其是在中低码率时这种改进更加明显。
(a) R-D曲线
(b) 编码时间
5 结束语
利用H.264/AVC中帧内预测的多模式划分特点,准确估计了H.264多模式下的帧内预测失真,并将该失真测度模型应用于H.264/AVC的RDO帧内预测模式选择中,结合帧内预测模式的邻域空间相关性,减少了率失真代价的计算数量,提高了算法的编码性能。实验结果表明,提出的帧内预测模式改进算法,与JM16.2中的全搜索方式相比,具有基本相同的平均PSNR值,但能减少约60%的编码时间,具有较好的重建图像质量和更高的编码效率。
[1] 田小平,田永召.面向交互应用的HEVC编码性能分析[J]. 西安邮电大学学报, 2014, 19(3):6-11.
[2] Kumar S, Xu L Y, Mandal M K, et al. Error resiliency schemes in H.264/AVC standard[J]. Elsevier J.of Visual Communication and Image Representation, 2006, 17(2):570-576.
[3] Zhang Zhishou, Sun Qibin, Wong W C,et al. Rate-Distortion-Authentication Optimized streaming of authenticated Video[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2007, 17(5):544-557.
[4] Li Xiang, Oertel N, Hutter A, et al. Laplace distribution based lagrangian rate distortion optimization for hybrid video coding[J]. IEEE Transactions on Circuits and System for Video Technology, 2009, 19(2): 193-205.
[5] 唐浩漾,王曙光,赵洪钢.基于率失真优化的H.264参考帧选择算法[J].西安邮电大学学报,2014,19(4):31-35.
[6] Leontaris A, Cosman P C. Video compression for lossy packet networks with mode switching and dual-frame buffer[J]. IEEE Transactions on Image Process, 2004, 13(7): 885-897.
[7] 宋云,沈燕飞,龙际珍,等. 基于方向梯度的H.264帧内预测模式选择算法[J].计算机学报,2013,36(8):1757-1764.
[8] Asheri H, Rabiee H, Pourdamghani N, et al. Multi-directional spatial error concealment using adaptive edge thresholding[J]. IEEE Trans on Consumer Electronics, 2012, 58(3):880-885.
[9] 唐浩漾,王文庆,王曙光. 基于像素递归失真估计的率失真优化模式选择算法[J].西北大学学报:自然科学版,2014, 44(1):51-56.
[10] Leontaris A, Cosman P C. Video compression for lossy packet networks with mode switching and dual-frame buffer[J].IEEE Transactions on Image Process, 2004, 13(7): 885-897.
[11] Joint Video Team. H.264/AVC reference software JM16.2[CP/OL].(2011-01-06)[2014-02-09] http://iphome.hhi.de/suehring/tml/download/old_jm/
[12] Wang Jia Ching,Wang Jhing Fa, Yang Jhing Fa,et al. A fast mode decision algorithm for and its VLSL design for H.264 intra-prediction[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2007, 17(10):1414-1422.
[13] Tsai A C, Wang J F, Yang J F, et al. Effective subblock- based and pixed-based fast direction detections for H.264 intra prediction[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2008, 18(7):975-982.
[14] Bjontegaard G. calculation of average PSNR differences between RD-curves.[EL/OL].(2001-04-01)[2014-02-09] http://wftp3.itu.int/av-arch/video-site/0104_Aus/VCEG-M33.doc
[责任编辑:祝剑]
An improved intra-frame prediction mode selection algorithm for H.264
TANG Haoyang, WANG Shuguang
(School of Automation, Xi’an University of Posts and Telecommunications, Xi’an 710121, China)
To improve the distortion estimation accuracy and simplify the computational complexity of intra-frame prediction mode selection for H.264, an improved Intra-frame prediction mode selection algorithm is proposed. A recursive optimal per-pixel estimate algorithm is modified to estimate the reconstructed distortion for various intra modes of H.264/AVC. The correlation between neighboring blocks and neighboring direction prediction mode is then used to predict the intra-frame mode, which efficiently skip some unlikely prediction modes and reduce the complexity of intra-frame prediction mode selection. Compared with the mode selection algorithm in H.264 reference software, the improved algorithm can save more than 60% of the encoding time with a negligible coding performance loss. Experimental results show that the proposed algorithm can achieve better coding efficiency and image quality.
video coding, H.264/AVC, intra prediction, rate-distortion optimization
10.13682/j.issn.2095-6533.2014.05.009
2014-06-24
陕西省自然科学基金资助项目(2012JM8022, 2011JM8003);陕西省教育厅专项科研基金资助项目(12JK0540)
唐浩漾(1975-),男,博士,讲师,从事视频处理与多媒体通信研究。E-mail: tanghaoyang@xupt.edu.cn 王曙光(1972-),男,硕士,副教授,从事控制工程与多智能体研究。E-mail: wangshuguang@xupt.edu.cn
TN 919
A
2095-6533(2014)05-0046-05