基于起始量化参数预测的码率控制优化算法

作者:葛俊;陈一民 刊名:计算机工程与设计 上传者:谢红

【摘要】为了提高H.264/AVC中码率控制算法起始量化参数预测的准确性,提出了一种起始量化参数的预测算法。通过分析视频图像编码前的参数信息和I帧复杂度的特征量,提出了初始量化参数(0)预测模型,并根据前一帧组的实际码率和量化参数对当前帧组(GOP)量化参数的影响,提出了一种新的帧组起始量化参数()预测模型,然后用提出模型对现有算法进行改进。实验结果表明,该算法能更为准确的预测起始量化参数,在低比特率情况下,对于视频图像的码率控制精度和率失真优化效果较H.264/AVC参考软件中所使用的JVT-G012码率控制算法有所提高,而且可以获得较高的平均峰值信噪比(PSNR)和稳定的重建图像质量。

全文阅读

0引言码率控制是视频传输中的一项关键技术,其主要任务就是有效地控制视频编码器,使其输出码流的大小满足传输信道实际带宽的限制,并且尽可能获得最优的解码图像,这点在低带宽或时变信道上的视频通信尤为重要。在最新的视频编码国际标准中H.264/AVC[1]中,码率控制算法比以前的H.263和MPEG-2等标准更加复杂和困难,因为量化参数被同时用于码率控制和率失真优化(RDO)从而导致了蛋鸡悖论[2]。具体来说,在H.264/AVC中,宏块的平均绝对误差(MAD)被用来确定量化参数;而另一方面,量化参数被用在RDO中进行模式判决和计算MAD(meanabsolutedifference),导致以往的经典码率控制方法已不适用。针对H.264有许多新的码率控制算法已经被提出,文献[2]采用了帧比特分配和二次R-D模式判别的思想,在宏块层进行码率控制,首先利用预测技术选择量化参数进行编码处理,然后根据编码效果决定是否需要调整量化参数再次进行编码处理,但存在比特分配不准确以及计算量过大等缺点。文献[3]同样采用了二次R-D模型来决定量化参数,并用线性MAD模型来预测当前帧MAD值来降低运算量。文献[4]采用流量往返模型来分配每个基本单元编码比特数,并在宏块层编码采用二次R-D模型计算量化参数。然而以上的几种算法主要目的都是为了解决蛋鸡悖论和码率分配问题,主要讨论了P帧的量化参数预测,并没有对起始量化参数(每个帧组(GOP)中初始I帧和相邻的第一个P帧)进行准确预测。而起始量化参数对整个GOP的实际生成码率影响较大。本文提出一种预测起始量化参数算法,本算法充分考虑前一GOP的码率对当前GOP的起始量化参数的影响,并利用编码前的参数信息以及I帧图像复杂度的特征量分析,精确预葛俊,陈一民:基于起始量化参数预测的码率控制优化算法2010,31(12)2797测起始量化参数,从而提高了码率控制的准确度和视频质量。1码率控制算法原理JVT-G012是最具代表性的,应用最广的H.264码率控制算法,它采用流量往返模型来分配编码比特数,在宏块层编码采用线性预测和二次R-D模型计算量化参数,并且由GOP层,帧层和基本单元层码率控制3部分组成。1.1GOP层码率控制GOP层码率控制的主要任务是根据信道可用带宽和缓存区的充满度计算每个GOP的目标比特数,并决定每个GOP的初始量化参数[3]。在第个GOP开始编码时,分配给它的总比特数为,0=,1*81,(1)式中:,第个GOP中第帧编码时的剩余比特数,,第个GOP的第j帧编码时的可用带宽,帧率,每个GOP中的帧个数,缓存大小,,第个GOP中的第帧编码后的缓存区充满度。因为带宽会随时间变化,即在非恒定带宽信道(VBR)上,在每帧编码之后需要按照式(2)进行更新[4],=,1+,,1,1(2)式中:,第个GOP中第帧编码产生的比特数。对于恒定带宽信道(CBR),因为,=,1,该式简化为,=,1,1(3)第一个GOP的初始量化参数0为预先定义的。而剩余GOP的初始量化参数按照式(4)计算得出=18,01,15(4)式中:前一GOP中所有P帧的量化参数之和,为前一GOP中所有P帧的个数。1.2帧层码率控制帧层码率控制的主要任务是根据已编码帧实际消耗的比特数来调整当前编码帧的目标比特数,进而调整帧的量化参数[5]。帧层码率控制分为编码前和编码后两个阶段。编码前阶段负责为编码帧计算目标比特数和计算量化参数。当前编码帧的目标比特数由目标缓存级别,帧率,可用带宽和剩余比特数决定。要预测当前编码帧的量化参数则需要得到当前帧的MAD值,根据线性预测模型可得

参考文献

引证文献

问答

我要提问