采用平均峰值信噪比改进twopass码率控制的方法技术

技术编号:36873901 阅读:11 留言:0更新日期:2023-03-15 20:19
本发明专利技术公开了一种采用平均峰值信噪比改进two pass码率控制的方法,包括以下步骤:设置目标总比特数TB,开始two pass的第1次编码,获取码流,编码结束后,统计视频总帧数N、各帧的PSNR、QP、Bits,并将各帧的PSNR分别标记为psnr(1),psnr(2),

【技术实现步骤摘要】
采用平均峰值信噪比改进two pass码率控制的方法


[0001]本专利技术属于视频编码
,具体涉及一种采用平均峰值信噪比改进two pass码率控制的方法。

技术介绍

[0002]视频技术已经广泛地应用于移动终端、网络直播、家庭影院和远程监控等领域,视频分辨率也逐步从标清(Standard Definition,SD)向高清(High Definition,HD)、超高清(Ultra High

Definition,UHD)进行转变,当前国际常用的视频编解码标准有H.264、H.265/HEVC以及国内的AVS、AVS+、AVS2等。
[0003]码率控制属于视频编码的一个重要环节,参见图1,它通过获取视频信源特性(如运动剧烈程度、图像纹理复杂度等)和可用网络带宽来计算视频中每一帧图像和该图像中的各个区域应该分配的比特数,并利用RQ模型计算QP(Quantitative parameters,量化参数),并进行编码,使输出的码流符合信道的传输,同时使输出的视频质量尽可能好。其中RQ模型计算量化参数的方式为:
[0004][0005]其中Bits为当前帧可用的比特数;SATD为当前帧的残差变换绝对值之和,用来衡量当前帧的复杂度;a、b、c为模型参数;如果某帧的可用比特数越大,其QP值则越小,量化失真便越小,该帧的编码质量就越好。
[0006]通常视频编码方法只会编1次,但是由于视频每帧的复杂度都不一样,各帧需要的比特数不一样,编码失真程度也不一样。为了提升视频质量,参见图2,two pass码率控制方法被应用到离线视频编码中,该方法编码2次,第1次编码将视频所有的帧编码一次,并统计出各帧的复杂度、SATD,QP和比特数,基于第1次编码的各帧信息,对于复杂度大的帧分配越多的码率,对于复杂度小的帧则分配较少的码率,并计算出各帧QP,再进行第2次编码。现有two pass码率控制方法虽然能够使视频的复杂场景质量有所改善,但是它把简单场景的质量拉低且下拉幅度可能很大,会影响人眼视觉感受,尤其是对于平坦帧,如果分配的码率不够高则很容易出现块效应,最终导致视频各帧质量参差不齐。

技术实现思路

[0007]鉴于以上存在的问题,本专利技术提供一种采用平均峰值信噪比改进two pass码率控制的方法,使各帧之间的PSNR波动较小,提升视频质量的稳定性。
[0008]为解决上述技术问题,本专利技术采用如下的技术方案:
[0009]一种采用平均峰值信噪比改进two pass码率控制的方法,包括以下步骤:
[0010]设置目标总比特数TB,开始two pass的第1次编码,获取码流,编码结束后,统计视频总帧数N、各帧的PSNR、QP、Bits,并将各帧的PSNR分别标记为psnr(1),psnr(2),......,psnr(N),并求出它们的平均值记为psnr_avg,将各帧的QP分别标记为qp(1),qp
(2),......,qp(N),将各帧的Bits分别标记为bits(1),bits(2),......,bits(N);
[0011]开始two pass的第2次编码,根据目标总比特数TB和第1次编码收集的信息,计算各帧的实际QP值,并对各帧进行编码从而获取最终码流。
[0012]优选地,计算各帧的实际QP值包括:
[0013]以psnr_avg为每帧的目标PSNR,根据各帧PSNR和目标PSNR之间的差距,计算各帧需要调整的QP幅度;定义第i帧的第一目标QP为:
[0014]qp_tg1(i)=qp(i)+A
×
(psnr(i)

psnr_avg)
[0015]其中A为调整系数,
[0016]将各帧的第一目标QP分别标记为qp_tg1(1),qp_tg1(2),......,qp_tg1(N);
[0017]定义第一目标QP对应的调整因子为t,t为一个在(

51~51)范围之内的整数,定义各帧的第二目标QP分别为qp_tg1(1)+t,qp_tg1(2)+t,......,qp_tg1(N)+t,此时对应的总比特数bitsc(t)计算公式为:
[0018][0019]依次求出bitsc(1),bitsc(2),......,bitsc(M),并在其中选出与目标总比特数TB大小最接近的值,该值所对应的t即为最优QP调整因子,令k等于该最优QP调整因子,求出各帧的实际QP分别为qp_tg1(1)+k,qp_tg1(2)+k,......,qp_tg1(N)+k。
[0020]优选地,调整系数A的计算方式如下:
[0021][0022]其中avg_qp_h1为第一次编码中第1,2,......,帧的平均QP值;avg_qp_h2为第一次编码中第......,N帧的平均QP值;avg_psnr_h1为第一次编码中第1,2,......,帧的平均PSNR值;avg_psnr_h2为第一次编码中第帧的平均PSNR值;avg_psnr_h2为第一次编码中第N帧的平均PSNR值。
[0023]优选地,avg_qp_h1的计算方式如下:
[0024][0025]优选地,avg_qp_h2的计算方式如下:
[0026][0027]优选地,avg_psnr_h1的计算方式如下:
[0028][0029]优选地,avg_psnr_h2的计算方式如下:
[0030][0031]采用本专利技术具有如下的有益效果:针对现有two pass码率控制存在的问题,以第1次编码的PSNR结果来调节第2次编码各帧的目标比特数,本专利技术方法先统计出第1次编码中所有帧的PSNR,求出其平均PSNR,以平均PSNR为第2次编码时的目标PSNR,以此调整各帧的QP,从而使第2次编码时各帧之间的PSNR波动较小,提升视频质量的稳定性。
附图说明
[0032]图1为码率控制流程图;
[0033]图2为two pass码率控制算法流程图。
[0034]图3为本专利技术实施例的采用平均峰值信噪比改进two pass码率控制的方法的步骤流程图。
具体实施方式
[0035]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0036]参见图3,所示为本专利技术实施例的采用平均峰值信噪比改进two pass码率控制的方法的步骤流程图,包括以下步骤:
[0037]设置目标总比特数TB,开始two pass的第1次编码,获取码流,编码结束后,统计视频总帧数N、各帧的PSNR、QP、Bits,并将各帧的PSNR分别标记为psnr(1),psnr(2),......,psnr(N),并求出它们的平均值记为psnr_av本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种采用平均峰值信噪比改进two pass码率控制的方法,其特征在于,包括以下步骤:设置目标总比特数TB,开始two pass的第1次编码,获取码流,编码结束后,统计视频总帧数N、各帧的PSNR、QP、Bits,并将各帧的PSNR分别标记为psnr(1),psnr(2),......,psnr(N),并求出它们的平均值记为psnr_avg,将各帧的QP分别标记为qp(1),qp(2),......,qp(N),将各帧的Bits分别标记为bits(1),bits(2),......,bits(N);开始two pass的第2次编码,根据目标总比特数TB和第1次编码收集的信息,计算各帧的实际QP值,并对各帧进行编码从而获取最终码流。2.如权利要求1所述的采用平均峰值信噪比改进two pass码率控制的方法,其特征在于,计算各帧的实际QP值包括:以psnr_avg为每帧的目标PSNR,根据各帧PSNR和目标PSNR之间的差距,计算各帧需要调整的QP幅度;定义第i帧的第一目标QP为:qp_tg1(i)=qp(i)+A
×
(psnr(i)

psnr_avg)其中A为调整系数,将各帧的第一目标QP分别标记为qp_tg1(1),qp_tg1(2),......,qp_tg1(N);定义第一目标QP对应的调整因子为t,t为一个在(

51~51)范围之内的整数,定义各帧的第二目标QP分别为qp_tg1(1)+t,qp_tg1(2)+t,......,qp_tg...

【专利技术属性】
技术研发人员:廖义李日谢亚光李佳伟傅一丹
申请(专利权)人:杭州当虹科技股份有限公司
类型:发明
国别省市:

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

1