当前位置: 首页 > 专利查询>上海大学专利>正文

一种基于并行编码结构的码率控制方法技术

技术编号:19751991 阅读:23 留言:0更新日期:2018-12-12 05:53
本发明专利技术公开了一种基于并行编码结构的码率控制方法。其具体步骤是:1)、在编码前将原始帧作为参考帧计算出各帧的绝对差值和SAD,由当前帧的预测编码比特数和当前帧的SAD值计算出当前帧的初始量化宽度QP0;2)、对当前帧进行预编码,利用的是WPP编码方式,先预编码前10%的宏块,每编码完Wb/10个宏块就对coeff值进行一次更新并预测QP,更新次数为Hb次;3)、预编码后,由更新后的coeff值求得新的QP值,对当前帧重新进行第二次编码,每编码Wb个宏块更新一次coeff值并预测每行宏块数的QP,进行实际编码。由coeff值预测的QP的范围是[QP0‑4,QP0+4];4)、利用更新后的coeff值,SAD以及QP值,预测当前帧剩余部分的比特数,并更新当前帧的缓冲区;5)、对并行编码的各帧,执行上述步骤1)~4)。

【技术实现步骤摘要】
一种基于并行编码结构的码率控制方法
本专利技术涉及图像/视频编码
,具体地说是涉及一种基于并行编码结构的码率控制方法。
技术介绍
高清/超高清编码技术的出现,极大地提高了人们的视觉体验,因此得到广泛的应用。与此同时,编码复杂度的增加和对实时性的要求为编码器的实现提出极大的挑战,并行编码技术是解决高复杂度,实时编码的有效方法,因此成为国内外学者的研究重点。在视频并行编码中,有不同的帧类型,分别是I、B、P帧,每帧需要的比特数不一样;I帧作为参考帧,需要的比特数要多一点,而P帧最少。编码时先确定好每帧分配的比特数,再将每一帧的比特数分配到此帧的宏块中去。每个宏块的目标比特数与视频内容直接相关,如背景区域待编码的残差较大,其分配的码率应较少;而细节较多和运动比较剧烈的区域待编码的残差较大,其分配的码率应较大。传统的帧内码控方法存在的计算量大和实时编码速度跟不上的问题。
技术实现思路
针对现有技术存在的缺陷,本专利技术的目的在于提供一种基于并行编码结构的码率控制方法。实验表明,本方法在减少计算量的同时保证了编码精度,能达到较好的性能。为达到上述目的,本专利技术的构思是:基于并行编码框架实现帧内宏块级的码率控制,利用波前并行处理(WPP)编码方式,编码前将原始帧作参考帧计算出当前帧的绝对误差和(SAD),再利用已计算的SAD动态预测当前帧的比特。对当前帧先预编码前10%的宏块数,每10%的行宏块数更新一次宏块的复杂度系数coffe,保证coeff的更新次数不变,从而保证了编码的精度;预编码完成后,由更新后的coeff预测出QP,重新编码。根据上述构思,本专利技术采用的技术方案如下:一种基于并行编码结构的码率控制方法,具体步骤如下:1)、由当前帧的预测编码比特数和当前帧的SAD值计算出当前帧的初始量化宽度QP0;2)、对当前帧进行预编码,利用的是WPP编码方式,先预编码前10%的宏块,每编码完Wb/10个宏块就对coeff值进行一次更新并预测QP,更新次数为Hb次;3)、预编码后,由更新后的coeff值求得新的QP,对当前帧重新进行第二次编码,每编码Wb个宏块更新一次coeff值并预测每行宏块数的QP,进行实际编码,由coeff值预测的QP的范围是[QP0-4,QP0+4];4)、利用更新后的coeff值,SAD值以及QP值,预测当前帧剩余部分的比特数,并更新当前帧的缓冲区;5)、对并行编码的各帧,执行上述步骤1)~4)。本专利技术与现有技术相比,具有如下显而易见的突出实质性特点和显著技术进步:1)利用WPP并行编码方式,通过对前10%宏块的预编码,在保证更新次数不变的情况下更新coeff,提高了coeff的精度,保证编码精度,解决了并行编码码率控制的难题。2)在保证图像质量的基础上,减小计算量从而大大提高了编码速度,解决了实时编码速度跟不上的问题。附图说明图1是本专利技术一种基于并行编码结构的码率控制方法的流程图。图2是本专利技术步骤1)中采用的并行编码框架。图3是本专利技术步骤2),3)中采用的WPP编码方式。图4是给出的6种高清YUV序列在三种方法下的帧率(fps)值表格。图5是6种YUV高清测试序列在三种方法下的帧率(fps)值对比曲线图。图6是给出的6种YUV高清序列在三种方法下的PSNR(dB)值表格。图7是6种YUV高清测试序列的Y分量在三种方法下的PSNR(dB)值对比曲线图。图8是三种方法下leaf序列的VBV缓冲情况。图9是三种方法下volleyball序列的VBV缓冲情况。具体实施方式下面结合附图对本专利技术的实施例作进一步详细说明。如图1所示,一种基于并行编码结构的码率控制方法,具体步骤如下:1)、由当前帧的预测编码比特数和当前帧的SAD值计算出当前帧的初始量化宽度QP0。1-1)、基于建立的并行编码框架,如图2所示,在整像素并行运动估计模块中,以原始帧作为参考帧计算出当前并行编码各帧的绝对差值和SAD,其值如下式(1)计算:式中:A代表像素区域;Sk[x,y]为视频图像在[x,y]位置的像素值;Pk[x,y]为根据事先设定方法及参考图像对Sk[x,y]的预测值;1-2)、利用公式(1)中得到的当前帧的SAD来预测每帧分配的比特数,并行编码各帧的编码比特动态更新过程如下式(2)计算:式中:Bits为当前帧的预测比特数;SADf和QPf已在并行运动模块中计算得出,分别表示当前编码帧所有宏块的SAD值和QP值,coeff是复杂度系数,主要用于帧内宏块级码率控制;1-3)、根据当前帧的预测编码比特数Bits和当前帧的SAD,由式(3)得到当前帧的初始QP值:式中:Bits为当前帧的预测比特数;SADMB表示前一行宏块数的SAD值,已在并行运动估计模块计算得出。2)、对当前帧进行预编码,利用的是WPP编码方式,如图3所示,对当前帧先预编码前10%的宏块,每编码完Wb/10个宏块就对coeff值进行一次更新并预测QP,更新次数为Hb次。2-1)、复杂度系数coeff由式(4)计算给出:其中QP'和SAD'分别表示前一行宏块的平均QP和SAD值;bits表示前一行宏块实际的编码比特数;count为更新次数;2-2)、count和coeff使用衰减系数进行更新,如式(5)和(6)所示:count”=count'×decay+1(5)coeff”=coeff'×decay+coeff(6)式中:count”和coeff”表示更新后的值;count′和coeff′表示更新前的值;decay表示衰减因子;2-3)、由上式(3)预测QP值,更新了Hb次,保证coeff的更新次数和传统方法相同,提高了coeff的精度,保证编码精度。3)、预编码后,由更新后的coeff值求得新的QP,对当前帧重新进行第二次编码,每编码Wb个宏块更新一次coeff值并预测每行宏块数的QP,进行实际编码,由coeff值预测的QP的范围是[QP0-4,QP0+4]。3-1)、由更新后的coeff值根据上式(2)求得新的QP值进行第二次编码,初始QP记为QP0;3-2)、每编码Wb个宏块更新一次coeff,由上式(3)预测每行宏块的QP值,每行更新后的QP的范围是[QP0-4,QP0+4],完成实时编码。4)、利用更新后的coeff值,SAD值以及QP值,预测当前帧剩余部分的比特数,并更新当前帧的缓冲区。5)、对并行编码的各帧,执行上述步骤1)~4)。本实施例通过仿真实验来评估本专利技术所提出的基于并行编码结构的码率控制方法。机器配置为XeonE5-2690v3,2CPU48核2.6Ghz,选取了广电总局广播科学规划院6个1920x1280的高清序列作为测试序列:parterre,dial,basketball,volleyball,leaf,birdcage。通过测试高清视频序列在传统两种帧内码控方法和本专利技术提出的方法下的PSNR、帧率和VBV缓冲区情况对比说明了本专利技术的可行性。图3给出了WPP并行编码方式的原理图;波前并行处理编码方式是HEVC针对并行编码提出来的,速度快,并行度高,但是码率控制问题难以处理。在该模式中,每一帧被划分为几行最大编码单元(LCUs)。由于每个最大编码单元的编码都需要依赖这个LCU的左、上、左上、右上的邻块的信息,所以在WPP并行本文档来自技高网...

【技术保护点】
1.一种基于并行编码结构的码率控制方法,其特征在于,具体步骤如下:1)、由当前帧的预测编码比特数和当前帧的SAD值计算出当前帧的初始量化宽度QP0;2)、对当前帧进行预编码,利用的是WPP编码方式,先预编码前10%的宏块,每编码完Wb/10个宏块就对coeff值进行一次更新并预测QP,更新次数为Hb次;3)、预编码后,由更新后的coeff值求得新的QP,对当前帧重新进行第二次编码,每编码Wb个宏块更新一次coeff值并预测每行宏块数的QP,进行实际编码,由coeff值预测的QP的范围是[QP0‑4,QP0+4];4)、利用更新后的coeff值,SAD值以及QP值,预测当前帧剩余部分的比特数,并更新当前帧的缓冲区;5)、对并行编码的各帧,执行上述步骤1)~4)。

【技术特征摘要】
1.一种基于并行编码结构的码率控制方法,其特征在于,具体步骤如下:1)、由当前帧的预测编码比特数和当前帧的SAD值计算出当前帧的初始量化宽度QP0;2)、对当前帧进行预编码,利用的是WPP编码方式,先预编码前10%的宏块,每编码完Wb/10个宏块就对coeff值进行一次更新并预测QP,更新次数为Hb次;3)、预编码后,由更新后的coeff值求得新的QP,对当前帧重新进行第二次编码,每编码Wb个宏块更新一次coeff值并预测每行宏块数的QP,进行实际编码,由coeff值预测的QP的范围是[QP0-4,QP0+4];4)、利用更新后的coeff值,SAD值以及QP值,预测当前帧剩余部分的比特数,并更新当前帧的缓冲区;5)、对并行编码的各帧,执行上述步骤1)~4)。2.根据权利要求1所述的一种基于并行编码结构的码率控制方法,其特征在于,所述步骤1)中的获取当前帧的初始量化宽度QP0的具体步骤如下:1-1)、基于建立的并行编码框架,在整像素并行运动估计模块中,以原始帧作为参考帧计算出当前并行编码各帧的绝对差值和SAD,其值如下式(1)计算:式中:A代表像素区域;Sk[x,y]为视频图像在[x,y]位置的像素值;Pk[x,y]为根据事先设定方法及参考图像对Sk[x,y]的预测值;1-2)、利用公式(1)中得到的当前帧的SAD来预测每帧分配的比特数,并行编码各帧的编码比特动态更新过程如下式(2)计算:式中:Bits为当前帧的预测比特数;SADf和QPf已在并行运动模块中计算得出,分别表示当前编码帧所有宏块的SAD值和QP值,coeff是复杂度系数,主要用于帧内宏块级码率控制...

【专利技术属性】
技术研发人员:李国平罗玲佳王国中赵海武滕国伟
申请(专利权)人:上海大学
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1