李如春,林宇俊,施朝霞
(浙江工业大学 信息与工程学院,浙江 杭州 310023)
基于全局和局部残差复杂度的帧间模式选择
李如春,林宇俊,施朝霞
(浙江工业大学 信息与工程学院,浙江 杭州 310023)
摘要:针对H.264/AVC传统帧间模式选择算法的高复杂度,提出了一种适合各种视频分辨率格式的快速帧间模式选择算法.该算法基于全局残差复杂度(General residual complexity,GRC)和局部残差复杂度(Local residual complexity,LRC),通过GRC与QP来近似计算一个阈值,然后通过对局部残差复杂度跟该阈值比较来决定宏块的活跃度,再根据宏块的活跃度选出候选的帧间模式,由此进行率失真优化(Rate-distortion Optimization,RDO)计算,从而减少了不必要帧间模式的RDO计算,取得了较高的编码效率.实验结果表明,与JM18.4默认的帧间模式选择算法相比,该算法在峰值信噪比和码率基本不变的前提下,可以平均减少大约60%的帧间编码时间。
关键词:帧间模式选择;全局残差复杂度;局部残差复杂度;宏块活跃度
Inter-mode selection based on general and local residual complexity
LI Ruchun, LIN Yujun, SHI Zhaoxia
(College of Information Engineering, Zhejiang University of Technology, Hangzhou 310023, China)
Abstract:Considering the high complexity of traditional H.264/AVC inter-mode selection algorithm, this paper proposes a fast inter-mode selection algorithm for different video resolution. This algorithm is based on general residual complexity(GRC)and local residual complexity(LRC).The threshold is calculated approximately by GRC and QP and the LRC is compared with this threshold to determine the macro block activity. Then the candidate inter modes are selected according to the macro block activity and the rate distortion optimization (RDO) is calculated. It can reduce unnecessary RDO calculation in inter-mode and enhances a higher coding efficiency. Experimental results show that comparing with JM18.4 default inter-mode selection algorithm, this algorithm can reduce of 60% of its inter-frame coding time on average with the invariable peak signal noise ratio and coding rate。
Keywords:inter-mode selection; general residuals complexity; local residuals complexity; macro block activity
H.264/AVC标准[1]在选出各个宏块最优帧间模式之前,需要遍历每个宏块所有的帧间模式,对每个模式都采用率失真优化策略[2]进行计算,然后取具有最小率失真代价值(RDOcost)的帧间模式作为最佳帧间预测模式.因此,一个宏块的每种帧间模式都需要分别进行运动估计[3].对每个帧间候选模式都进行RDO代价计算,然后选择RDO代价最小的模式作为最优帧间编码模式,这种方法虽然精度最高,但同时复杂度极高,开销巨大,有待优化.传统的快速帧间模式选择算法,实现方式大致分为阈值法和预测法两大类.但要得到自适应的阈值往往需要对已编码码流进行一系列复杂分析,这在很大程度上增加了编码负荷;预测法通常需要对宏块信息进行变换和处理,提高了编码器对硬件的要求[4].由于最优块大小和残差之间具有高度相关性[5],根据宏块的残差可以预测最优块大小,因此,笔者提出基于全局和局部残差复杂度的快速帧间模式选择算法,该算法只需要对已编码码流进行简单分析,就可以有效提高编码速度,减小系统开销.从图像质量、编码时间等角度论证了提出算法的优越性。
1快速帧间模式选择算法
1.1算法优化的依据
H.264/AVC标准采用拉格朗日乘数计算每种模式的RDO代价,每个模式的代价[6]可以表示为
RDOcost=D(MODE)+λMODE×R(MODE)
(1)
式中:RDOcost为当前预测模式的率失真代价值,D(MODE)为重建块与原始块之间的量化差,R(MODE)为当前预测模式下编码所需比特数,λMODE为当前预测模式的拉格朗日乘数。
在使用公式(1)进行运动估计和模式选择时,变化的块大小可以减小预测的有效残差[7].观察发现最优块大小和残差之间有高度相关性.图1显示了一个残差帧.帧的每个部分选择了最佳分割尺寸,使传输信息量最小,并将选择的分割加到残差帧上.图1中可以看到:在平缓的区域(残差显示灰色)在编码时选用大的块;另一方面,含有多运动边界的区域(残差显示黑色或白色)在编码时采用较小的块。
根据上述观察结果,根据宏块的残差就可以预测最优块大小.如果用一个较大块进行运动估计时,所得到的残差较小,则此块大小可以被采用为最优模式.相反,如果用一个较大块进行运动估计时,所得到的残差较大,则需进一步划分块的大小,以获取最优模式[8]。
图1 残差帧Fig.1 The residual frame
1.2基于GRC和LRC的帧间模式选择算法理论分析
进行16×16宏块的运动估计之后,LRC作为当前宏块和其进行运动估计时参考宏块的绝对差和被计算出来,其中16×16宏块的LRC公式如下:
(2)
式中:c代表当前宏块;r代表16×16运动估计时的参考宏块;x,y代表宏块中像素水平和垂直位置.16×8,8×16宏块的LRC值只需相应将公式(2)中x,y取值分别变为8即可.宏块的活跃度根据LRC可以表示为
(3)
基于选中的宏块活跃度,为了决定最优模式,对应的候选帧间模式如表1所示.如果LRC小于等于T0,宏块活跃度为低,因此只需要对16×16这个帧间模式进行RDO计算;宏块活跃度中、宏块活跃度高对应的候选帧间模式按照表1依次类推.为了决定公式(3)中自适应的阈值T0和T1,GRC被定义为
(4)
式中:N和M分别为图像帧的高和宽;C为当前帧;R为显示次序上的前一帧参考帧。
表1根据宏块灵活度候选帧间模式的分类
Table 1The classification of candidate intermodes according to MB activity
宏块活跃度分类候选帧间模式低016×16中116×16,16×8,8×16高216×16,16×8,8×16,P8×8
阈值Ti被定义为
Ti=αi×μi
(5)
式中:i在{0,1}中取值;αi为图像质量和编码时间的权衡,经过大量的实验,选择α0=1.1,α1=1.5;μi实际上为参考帧相应宏块类型的LRC值的平均值,比如说μ0代表所有最优模式是16×16宏块LRC值的平均值,而μ1代表所有最优模式是16×16,16×8,8×16宏块LRC值的平均值,μ0,μ1具体定义如下:
μ0=Mean(∑LRC(Inter16×16)n-1)
(6)
μ1=Mean(∑LRC(Inter16×16+Inter16×
8+Inter8×16)n-1)
(7)
式中:μ0,μ1的值需要帧间模式选择后才能计算,而且模式较多计算繁琐,所以在此之前采用GRC和QP来近似得到Ti.通过多组视频序列实验取平均值得到图2结果,其代表根据不同的GRC值得到阈值Ti,i∈{0,1},图2(a~d)分别表示QP=24,28,32,36的结果。
图2 不同QP下GRC与阈值Ti关系曲线Fig.2 The relation curve of GRC and Ti by different QP
从图2可以观察到阈值可分为2段,比如在图2(a)中:GRC≤4和GRC>4.在GRC≤4中,Ti可以近似被看作常数,因为曲线斜率接近0.在GRC>4中,Ti接近一个线性方程.因此,Ti可以建模成为
(8)
式中:ai,bi,ci选取表2中的值;G的计算式[9]为
(9)
式中[x]定义为小于或等于x的最大整数。
表2 各个QP值下ai,bi,ci的值
通过对表2中8个QP值对应的阈值使用Matlab描点得到图3,观察到这些值近似可以表示
图3 按指数函数拟合近似曲线Fig.3 Approximate curve of exponential function fitting
为一个函数f(QP)=p×eq×QP,于是使用Matlab指数函数进行拟合,分别计算出p和q值,于是表2中的参数值ai,bi,ci,可表示为
(10)
1.3算法具体实现
算法的整体过程描述如下:
Step1根据式(4)计算当前帧的GRC。
Step2基于GRC,根据式(5,8~10)决定2个阈值T0和T1。
Step3进行16×16宏块的运动估计,然后根据式(2)对当前帧的每个16×16宏块进行LRC计算。
Step4基于16×16宏块的LRC、T0和T1,根据式(3)决定宏块的活跃度。
Step5基于得到的宏块活跃度从表1中决定当前宏块分类。
Step6根据分类对候选的帧间模式进行RDO计算得到RDO代价。
Step7最小RDO代价的帧间模式作为最优模式。
Step8如果当前宏块是当前帧的最后一个宏块,则跳转到步骤9.否则,跳转到步骤4进行下一块宏块的处理。
Step9如果当前帧是最后一帧,就结束编码过程.否则跳转到步骤1对下一帧进行处理。
2仿真实验
2.1实验数据准备
实验环境:Inter(R)Core(TM)I5-3320MCPU@ 2.60GHz;8GB内存;Windows8.1+JM18.4[10].JM配置参数如下:参考帧数目1,序列类型IPPP,编码帧数100,RDO优化ON,熵编码CABAC,QP=28,32,36,40,运动搜索方式UMHexagonS,其他采用默认配置。
选取QCIF,CIT,WQVGA,WVGA,720P,1080P不同格式的视频测试序列,QP从28,32,36,40选取,采用了亮度峰值信噪比的变化值△PSNR、输出码流码率变化百分比△Br和运动估计时间变化百分比△Ts这三个指标,对提出的算法和JM默认算法进行综合性能的比较。
2.2仿真结果
QCIF格式具有较大运动强度序列(Carphone)和较小运动强度序列(News)与JM18.4算法比较的率失真曲线,如图4(a)所示,CIF格式具有较大运动强度序列(Akiyo)和较小运动强度序列(Container)与JM18.4算法比较的率失真曲线,如图4(b)所示.对于QP从28,32,36,40选取具体测试结果取平均后如表3所示。
从表3看出:笔者算法和JM18.4默认的算法相比较,其峰值信噪比和输出码率变化不明显,但其帧间编码时间可以缩短60%左右.图4中,视频序列的率失真曲线基本重合.因此,在峰值信噪比和输出码率基本不变的前提下,笔者算法可以有效提高视频编码效率。
图4 视频序列率失真曲线Fig.4 RD curves of video sequenc
序列运动强度序列格式像素序列名称△PSNR/dB△Br/%△Ts/%较大QCIF176×144Carphone-0.080.12-62CIF352×288Akiyo-0.03-0.34-62WQVGA416×240BQSquare-0.010.52-56WVGA832×480BasketballDrill-0.020.41-59720P1280×720FourPeople-0.02-0.08-641080P1920×1080Kimono-0.05-0.51-67较小QCIF176×144News-0.04-0.15-59CIF352×288Container-0.03-0.46-61WQVGA416×240RaceHorses-0.041.46-63WVGA832×480BQMall-0.01-0.20-54720P1280×720KristenAndSara-0.030.25-671080P1920×1080ParkScene-0.020.28-64平均-0.030.11-62
3结论
提出了一种基于全局和局部残差复杂度的快速帧间模式选择算法,该算法基于GRC和LRC来决定宏块的活跃度,选择候选帧间模式的3个子集来代表不同宏块的活跃度,对于有效的QP变化,给LRC的阈值设计了自适应的值.相比传统算法,此算法在视频质量和码率基本不变的情况下,大大减少了编码时间,降低了系统开销。
参考文献:
[1]ISO/IEC. ISO/IEC 14496-10-2003 Information technology-coding of audio-visual objects-part 10: advanced video coding [S]. Geneva:ISO/IEC,2003。
[2]WIEGAND T, SCHWARZ H, JOCH A, et al. Rate-constrained coder control and comparison of video coding standards[J]. IEEE Transactions on Circuits and Systems for Video Technology,2003,13(7):688-703。
[3]任克强,张旭光,罗会兰.改进的H.264帧间模式选择算法[J].中国图象图形学报,2013,18(8):893-900。
[4]毕厚杰.新一代视频压缩编码标准—H.264/AVC[M].北京:人民邮电出版社,2005。
[5]ANTONIO O, KANNAN R. Rate-distortion methods for image and video compression[J]. IEEE Signal Processing Magazine,1998(11):23-50。
[6]张真.H.264视频编码算法研究[D].西安:西北工业大学,2007。
[7]WIEN M. Variable block-size transforms for H. 264/AVC[J]. IEEE Transactions on Circuits and Systems for Video Technology,2003,13(7):604-613。
[8]GARY J S, THOMAS W. Rate-distortion optimization for video compression[J]. IEEE Signal Processing Magazine,1998(11):74-90。
[9]SEONGWAN K, KYUNGMIN L, JAE H K, et al. Fast intermode decision algorithm based on general and local residual complexity in H. 264/AVC[J]. EURASIP Journal on Image and Video Processing,2013,30(5):12-23。
[10]ITU Telecommunication Standardization Sector. H. 264/AVC reference software:JM18. 4[EB/OL].[2014-08-08]. http://download. csdn. net/detail/jasonde2012/4902024。
(责任编辑:陈石平)
中图分类号:TN919.8
文献标志码:A
文章编号:1006-4303(2015)02-0222-05
作者简介:李如春(1968—),女,浙江青田人,副教授,研究方向为多媒体信号处理、信号检测和微电子技术等,E-mail:lrc@zjut.edu.cn。
基金项目:国家自然科学基金资助项目(61306090)
收稿日期:2014-11-19