欢迎来到天天文库
浏览记录
ID:25342046
大小:185.00 KB
页数:8页
时间:2018-11-19
《h.264的码率控制策略》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、h.264的码率控制策略本文详细讨论了H.264编码标准的码率控制结构,与MPEG-2的TM5模型进行了比较;并对JVT-G012提出的流量往返控制模型进行了探讨;最后对H.264码率控制提出了一些改进意见。 关键词:H.264码率控制VBRCBR一、引言 到目前为止,视频编码标准通常采用去除时空域相关性的帧内/帧间预测、离散余弦变换量化和熵编码技术,以达到较高的编码效率。对视频通信而言,由于通信信道带宽有限,需对视频编码码率进行控制,来保证编码码流的顺利传输和信道带宽的充分利用。针对不同的应用场合,学者们提出了多种码率控制(Rat
2、eControl)策略。其中,实时编码码率控制方法主要有两种:用先前宏块编码产生的比特数来预测当前宏块编码产生比特数,或者通过视频编码率失真函数来预测当前宏块编码产生的比特数。 码率控制算法[1]就是动态调整编码器参数,得到目标比特数。它为视频序列中的图像组GOP、图像或者子图像分配一定的比特。现有的码率控制算法主要是通过调整离散余弦变换的量化参数大小输出目标码率。实际上,量化参数(QP)反映了空间细节压缩情况,如QP小,大部分的细节都会被保留;QP增大,一些细节丢失,码率降低,但图像失真加强和质量下降。也就是说,QP和比特率成反比的关系,而且
3、随着视频源复杂度的提高,这种反比关系会更明显。 码率控制有两种模式: VBR和CBR,即可变比特控制和固定比特控制。VBR模式是一种开环处理,输入为视频源和一个QP值。由于实际视频序列中的图像复杂度是不断变化的,细节多少、运动快慢等等,比特率也相应变化,不稳定。CBR模式是一种闭环处理,输入为视频源和目标比特。它根据对源复杂度估计、解码缓冲的大小及网络带宽估计动态调整QP,得到符合要求的码率。二、H.264码率控制结构 作为新一代的视频压缩编码标准,H.264对多编码模式、编码参数自适应选择、上下文自适应熵编码、多参考帧
4、的灵活选择、高精度预测、去方块滤波以及抗误码能力等方面进行了精雕细刻,采取了一系列切合实际的技术措施,大大提高了编码效率和网络自适应能力。 但H.264标准草案并没有很好地研究RC,主要精力放在了编码码流及解码方法上。它将QP同时用于码率控制算法和率失真优化,导致了蛋鸡悖论:为了计算当前帧中宏块的RDO,需利用当前帧或宏块的MAD预测每个宏块的QP,而每个当前帧或宏块的MAD只有在RDO后才能计算出。 H.264码率控制方法的提案主要有两个[2]:JVT-F086中MPEG-2TM5改进版本及JVT-G012中提出用流量往返模型来分
5、配每个基本单元目标比特数,并在宏块层编码采用二次率失真函数计算量化参数的算法。JVT-G012还比较了这两种算法,认为其算法优于F086算法。 本节主要介绍H.264的码率控制结构,并与MPEG-2的控制模型相比较。 H.264码率控制的主要部分类似于其他RC方案[1]。图2只是一个概念性的结构,并不是其软件的实际反映,如P帧和B帧需分别处理,一些估计是前面值的平均等等。*1.码率量化模型Rate-QuantizationModel* RC算法的核心是一个定量的描述QP、实际比特率和编码复杂度代理的关系的模型。比特率和复
6、杂度与残差有关,QP只能影响变换残差信息的细节,对包含头信息、预测数据、运动矢量信息的比特流没有直接影响。预测误差的平均残差绝对值(MeanAverageDifference,MAD)被引用,用来估计复杂度。*2.复杂度估计ComplexityEstimation* MAD是预测器精度和帧内预测情形下临近图像时间相似度的逆操作。MAD可以在对当前图像编码完以后进行估计,但是,在QP选择以后再编码一次,负荷太重。相反可以假设MAD随图像变化而变化,可根据前一图像的实际值估计而得。但该假设在场景切换时失效。*3.QP限制QP-Limiter*
7、 闭环控制系统须能够保证稳定性和视觉变化最小。对一些复杂度快速改变的序列,QP变化显著,须设置以码率限制器来限制图像的QP变化不超过±2。*4.虚拟缓存模型VirtualBufferModel* 解码器都有一个缓存来平滑码率变换和数据的到达时间。相应编码器产生的比特流须满足解码器的限制,所以用一个虚拟缓存模型来仿真实际解码器的满度。 虚拟缓存满度的改变即编码成流的总比特数的差异。缓存满度的下届为0,上界为缓存容量。用户需根据解码器支持的级别设置缓存容量和初始值。*5.QP初始化QPInitializer* QP须在视频
8、序列的开始初始化,并人为输入初值,但更好的方法是根据每个像素的比特
此文档下载收益归作者所有