基于H.264AVC的码率控制算法研究

2016-12-14 08:00
黑龙江科学 2016年21期
关键词:码率控制算法编码

李 琳

(国网辽宁省电力有限公司营口供电公司,辽宁 营口 115000)



基于H.264AVC的码率控制算法研究

李 琳

(国网辽宁省电力有限公司营口供电公司,辽宁 营口 115000)

以H.264/AVC具体的视频编码理论为基础,研究了进行码率控制的主要技术和实际使用方法,阐述了H.264/AVC率失真优化产生的主要问题,同时做出具体研究。

H.264AVC;码率控制;分布;算法研究

1 H.264AVC视频编码基本理论

1.1 H.264编码主要构架

H.264和一般的视频编码有很大不同,H.264编码的压缩效率比以前的视频编码有很大提升,但H.264编码技术还是以传统预测混合编码方案来进行,特别是和H.26x视频编码标准非常相像。它主要利用帧内及时预测方式来进行优化结构里的冗余,利用运动补偿方式减少时间上面的冗余,然后经过变换编码降低频率区域的冗余,最终完全清理信源统计方面的冗余。这样视频压缩效率得到大幅度提升,同样的编码质量条件,H.264要比之前的H.263节省50%的视频码率,但仍有一些代价,即它计算的复杂程度要比H.263提高很多,通常情况下会增加3倍左右难度。

1.2 H.264视频编码主要技术

H.264在很多方面皆有较大进步,在编码效率和压缩效果这两方面尤为突出,这和很多新编码技术的使用有密切联系。H.264视频编码主要技术:帧内编码的预测,帧间编码的预测和整数量化。同时,这三个主要技术也是决定视频编码效果和质量好坏的标准和参照。

2 码率控制技术

2.1 制约输出码率的要素

A.图像的类型。进行视频编码的过程中,经常会使用到的编码图像帧有三种形式:I帧,P帧与B帧。绝大部分的视频压缩标准里面,不一样的编码形式帧在比特数上面会有很大不同。I帧使用帧内的编码模式,主要是使用图像内空间联系性做出压缩的编码。因为没有用视频的顺序相关性特征,I帧的压缩率相对于P帧与B帧,非常的小。P帧和B帧依照临近帧的时间性使用帧间的预测模式,这样会节省一些码流,可以在压缩效率上得到大幅提升。所以面对同样的视频图像,使用不一样的帧编码,相应输出的比特流也就不一样,影响码率波动主要的原因就是这个。

B.图像的内容。视频顺序里临近的帧有很强相关性,这就是帧和帧之间的预测可以形成很高压缩效率原因。但是如果视频顺序发生场景的改变时,临近的图像间在运动的内容复杂性上就会出现很大差别,而且这种差别会明显增大。要确保视频的图像质量,当前编码图像的帧一定要从帧的预测编码开始,进行切换到帧内预测的编码上才可以。因为编码的预测模式发生了改变,编码的比特流相应也要迅速增加。在现存的视频标准里面,运动搜索主要是以“块”作为基本单位开始。因为数据量有一些具体的限制,我们常在一定的搜寻范围下开始运动的搜索,若现在的宏块运动范围很大,就会出现比特流突然增加的现象。

C.变换的模式。现在各种不同的视频标准使用整数DCT进行变换。进行变换的原因是把视频信号分成视觉方面感觉重要性偏大的两个部分,一个是低频部分,另一个是高频部分,它可以有效降低视频数据的空间域相关性,最终获得集中能量的效果,这样就可很好的压缩视频编码。

D.量化具体视频参数。进行视频编码的过程中,量化处理通常和各种变换过程结合使用,目标就是除去图像一些残差的数据。通常情况是变换操作能够把图像能量重新取得集中,之后再利用量化保留对人眼比较敏感和兴奋的内容,去掉不是很重要的部分,就可获得图像压缩效果。因为图像失真主要在量化这个阶段发生,所以选择量化参数非常重要。量化参数和生成码率是与图像质量最有联系的两个因素。

2.2 码率控制视频编码的参数

编码器输出的码率需要进行控制,须重视质量与压缩效率保持平衡的关系,码率进行减少会影响质量,码率如果增加又可能降低压缩的效率。我们可以利用调整一些主要的编码参数来对视频编码进行控制。首先是预测模式。它主要有帧类型与预测块的相关尺寸。使用不一样的帧类型和预测模式,输出的码率和视频质量不一样。通常情况下,帧内预测的输出码率很高,视频质量很好。其次是编码帧。利用调整编码帧率让它和需要比特率进行匹配。因为帧率进行调整的方法主要是对视频信号时间上的冗余来说的,因此会用在单个图像的质量情况里。在此情景下,帧率需要进行保持,避免空间视频在细节上面的粗糙化。

2.3 视频码率控制性能的相关指标

视频图像经历了系统的编码以后,和以前的视频进行比较可明显看出发生一些失真现象。若图像失真不大,人眼在视觉主观上不容易进行感知。所以要想客观的评价处理过的图像质量,要计算峰值信噪比,这被很多学者认为是测试码率控制关键性能最好的方式,PSNR值越高说明图像的失真越小,相应的这个视频的质量就越好。峰值信噪比PSNR公式:

3 H.264AVC码率控制的改进

3.1 H.264码率控制算法的具体研究

H.264码率控制算法里有很多种类的技术,主要有自适应的基本单元层,流体的流量阻塞型,线性MAD模型等等。这几种技术的使用成功化解了传统的码率控制算法和H.264失真优化技术出现的矛盾,可以准确的把握输出的码率,将输出视频画面的质量进行大幅度的提高。现在来看适合于H.264码率控制算法的方案有JVT-F086,JVT-H017等。

帧层码率的控制。第一要务是要确定出P的比特率是多少,决定目标的缓冲区具体水平是怎样的。编码第一个P帧以后,可以获得目标的缓冲区初始水平值Tbl是:

Tbl(ni,2)=Bc(ni,2)

其中B(ni,2)是编码第一个P帧以后缓冲区具体的水平。这个P帧目标缓冲区的水平定义是:

3.2 以Cauchy分布码率的控制计算方法

对基本单元层来讲,当设置的基本单元只是一个宏块的时候,即是宏块层码率的控制了。对于H.264里面DCT系数全新的率失真特点,依照之前提出的改进Cauchy分布码率模型的分配方法就可以了。

3.2.1 宏块层码率的控制算法

需要减小研究复杂性,这一节的GOP结构使用了IPP模式。在进行宏块的码率分配以前,必须要对现在的宏块帧做出码率的平均合理分配。在编码T帧与GOP的P帧里面,使用固定量化的参数,其他的P帧依照目标的码率与视频信源实际的编码,对其余的宏块计算出最优量化的参数。如图1所示,具体步骤详看图中标注:

图1 宏块层码率的控制算法Fig.1 Control algorithm of macro block code rate

3.2.2 实验的探究分析和结论

需要评估及验证新的算法在编码性能上的可靠性,在JVT模型JM10.1上实现了以Cauchy分布宏块层码率的控制算法,同时和JM10.1使用的算法做出了对比实验。我们要参考JVT-6012模型的实验方法,I帧与第一个P帧再量化的参数方面进行的初始化数据分别是24,28 ,32,36,对这些序列做出量化的参数进行编码固定处理,可得出码率,将它当作后面的实验目标。剩下主要编码的具体参数在设置上可见表1。

表1 主要编码具体参数Tab.1 Concrete parameter of the main code

码率进行控制的目标是在有限带宽环境下,取得比较流畅和良好的视频画面质量,这不但要求编码这些帧的实际比特要和目标比特进行完美的匹配,同时还要求了每帧的图像都要有很高的峰值信噪比。所以为了可以正确的对算法的性能做出客观的比较,笔者在不一样的目标码率下做出测试,利用码率的预测平均误差Eb与平均的峰值信噪反映视频输出的码流在控制精度上和图像质量上。

4 结语

对于带宽受到限制的使用环境,一定要利用合理的码率控制逐渐缓解视频码流的波动,让编码输出的比特率可以较好适应网络的带宽,使编码的质量得到具体改善。

[1] 刘峰.视频图像编码技术及国际标准[M].北京:北京邮电大学出版社,2016.

[2] 钟玉琢,沈洪,吕小星.多媒体技术及其应用[M].北京:机械工业出版社,2015.

[3] 虞露.AVS一视频技术概述[J].中国多媒体视讯,2016,(09):25.

[4] 张静,张春田.视频传输中的码率控制技术[J].电路与系统学报,2016,(04):55-57.

[5] 袁武,林守勋,牛振东.H.264/AVC码率控制优化算法[J].计算机学报,2015,(05):63-65.

Research on rate control algorithm based on H.264AVC

LI Lin

(State Grid Yingkou Power Supply Company, Liaoning Electric Power Company, Yingkou 115000, China)

Based on the video coding theory of H.264/AVC, the main techniques and practical application methods of rate control are studied. The main problems of H.264/AVC rate distortion are discussed, and the concrete research is made in this paper.

H.264AVC; Rate control; Distribution; Algorithm research

2016-08-29

李琳(1984-),女,硕士,工程师。

TN

A

猜你喜欢
码率控制算法编码
基于SAR-SIFT和快速稀疏编码的合成孔径雷达图像配准
一种基于HEVC 和AVC 改进的码率控制算法
基于FPGA的多码率卷积编码器设计与实现
《全元诗》未编码疑难字考辨十五则
纺织机械手专利瞄准控制算法
子带编码在图像压缩编码中的应用
Genome and healthcare
基于状态机的视频码率自适应算法
基于ARM+FPGA的模块化同步控制算法研究
基于航迹差和航向差的航迹自动控制算法