CN116418986A - 基于avs的可变码率控制方法及装置 - Google Patents

基于avs的可变码率控制方法及装置 Download PDF

Info

Publication number
CN116418986A
CN116418986A CN202111649781.3A CN202111649781A CN116418986A CN 116418986 A CN116418986 A CN 116418986A CN 202111649781 A CN202111649781 A CN 202111649781A CN 116418986 A CN116418986 A CN 116418986A
Authority
CN
China
Prior art keywords
frame
encoded
image group
ith image
coded
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111649781.3A
Other languages
English (en)
Inventor
徐振华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN202111649781.3A priority Critical patent/CN116418986A/zh
Publication of CN116418986A publication Critical patent/CN116418986A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/142Detection of scene cut or scene change
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/177Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a group of pictures [GOP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明提供了基于AVS的可变码率控制方法及装置,涉及视频编码技术领域。方法包括:确定视频序列中第i个图像组的目标比特数;确定第i个图像组中,待编码帧相邻的前一已编码帧的场景切换因子;基于第i个图像组中,待编码帧相邻的前一已编码帧的场景切换因子、第i个图像组的目标比特数、待编码帧相邻的前一已编码帧的编码比特数、第i个图像组中已编码的比特数、第i个图像组中已编码的码流的实际码率、帧率,调整第i个图像组中,编码待编码帧之前剩余的目标比特数;确定第i个图像组中,待编码帧的目标比特数。本申请与场景贴合度更高,针对运动剧烈、场景切换频繁、纹理比较复杂的视频序列适应性好,且编码复杂度低。

Description

基于AVS的可变码率控制方法及装置
技术领域
本发明涉及视频编码技术领域,特别是涉及一种基于AVS的可变码率控制方法及装置、电子设备、可读存储介质。
背景技术
码率控制具体是在如何给定的信道传输速率下,得到更好的稳定的图像质量以及有效的提高网络带宽资源。
码率控制主要分为:恒定码率(constant bit rate,CBR)控制和可变码率(variable bit rate,VBR)控制。CBR对于场景频换切换和运动剧烈的视频序列适应性较差。VBR具体是通过降低一部分画面质量减小其码率,来补偿另一部分画面对带宽的额外需求,可以提高传输和存储媒体的资源利用率,但是CBR码率控制法运算复杂度较高。现有的AVS(Audio Video coding Standard,数字音视频编解码技术标准)针对场景频繁切换的情况,也不能提供平稳的视频输出,且复杂度较高。
发明内容
本发明提供一种基于AVS的可变码率控制方法及装置、电子设备、可读存储介质,旨在解决针对场景频繁切换的视频序列,现有的码率控制方法不能获得平稳的视频输出,且码率控制复杂度较高的问题。
本发明的第一方面,提供一种基于AVS的可变码率控制方法,所述方法包括:
确定视频序列中第i个图像组的目标比特数;所述i为待编码的图像组在所述视频序列中的图像组序号;
在待编码帧为:第i个图像组中第一个I帧、第一个P帧之外的帧的情况下,基于所述第i个图像组中,待编码帧相邻的前一已编码帧的峰值信噪比、所述视频序列中已编码的所有P帧的峰值信噪比平均值、所述第i个图像组中,所述待编码帧前的各个已编码帧的峰值信噪比,确定所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子;
基于所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子、所述第i个图像组的目标比特数、所述待编码帧相邻的前一已编码帧的编码比特数、所述第i个图像组中已编码的比特数、所述第i个图像组中已编码的码流的实际码率、帧率,调整所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数;
基于所述第i个图像组中,所述待编码帧相邻的前一已编码帧的相对复杂度,所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数,确定所述第i个图像组中,所述待编码帧的目标比特数。
在相同的码率下,当编码复杂度低,运动平缓的帧时,峰值信噪比会比较大,当编码复杂度高,运动剧烈的帧时,峰值信噪比会比较小,当发生场景切换时,峰值信噪比会发生突变。本发明实施例中,基于第i个图像组中,待编码帧相邻的前一已编码帧的峰值信噪比、视频序列中已编码的所有P帧的峰值信噪比平均值、第i个图像组中,待编码帧前的各个已编码帧的峰值信噪比,能够准确确定第i个图像组中,待编码帧相邻的前一已编码帧的场景切换因子,不仅能有效的检测出场景切换,而且还能判断是从相对简单的场景切换到复杂的场景还是相对复杂的场景切换到相对简单的场景。基于待编码帧相邻的前一已编码帧的场景切换因子,动态调整的第i个图像组中,编码该待编码帧之前剩余的目标比特数的过程,针对由简单到复杂的场景,增大剩余的目标比特数,针对由复杂到简单的场景,减小剩余目标比特数,与场景贴合度更高,尤其是针对运动剧烈、场景切换频繁、纹理比较复杂的视频序列具有更好的适应性。待编码帧相邻的前一已编码帧的相对复杂度,能够较为准确地反应待编码帧的复杂程度,在为第i个图像组中,待编码帧的目标比特数的过程中,进一步参考了待编码帧相邻的前一已编码帧的相对复杂度,由此为该待编码帧确定的目标比特数,与该待编码帧的复杂度、该目标编码帧的场景切换程度均更为贴合,使得图像质量更加平缓,特别是针对场景频繁切换、纹理比较复杂的视频具有更好的编码效果,同时编码复杂度大大降低,由该目标比特数对该待编码帧编码,不仅能够有很高的保真度,而且可以有效提高网络带宽资源的利用率,实时性较好。
可选的,所述基于所述第i个图像组中,待编码帧相邻的前一已编码帧的峰值信噪比、所述视频序列中已编码的所有P帧的峰值信噪比平均值、所述第i个图像组中,所述待编码帧前的各个已编码帧的峰值信噪比,确定所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子,包括:
采用下述公式,确定所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子PCj
PCj=a×PSNR_Ratio1j+b×PSNR_Ratio2j
其中,a为第一预设系数,b为第二预设系数,
Figure BDA0003444609630000031
PSNRj为所述第i个图像组中,所述待编码帧相邻的前一已编码帧的峰值信噪比,PSNR_avg所述视频序列中已编码的所有P帧的峰值信噪比平均值,/>
Figure BDA0003444609630000032
PSNRd为所述第i个图像组中,所述待编码帧前的第d个已编码帧的峰值信噪比,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧在所述第i个图像组中的帧序号。
可选的,所述基于所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子、所述第i个图像组的目标比特数、所述待编码帧相邻的前一已编码帧的编码比特数、所述第i个图像组中已编码的比特数、所述第i个图像组中已编码的码流的实际码率、帧率,调整所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数,包括:
采用如下公式调整所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数R′r
Figure BDA0003444609630000033
其中,PCj为所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子,Rr等于所述第i个图像组的目标比特数,减去所述第i个图像组中已编码的比特数的差值;Bj为所述待编码帧相邻的前一已编码帧的编码比特数,Ract为所述视频序列中已编码的码流的实际码率,c为第三预设系数,d为第四预设系数,Fr为帧率,TH1为第一预设阈值,TH2为第二预设阈值,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧在所述第i个图像组中的帧序号。
可选的,所述基于所述第i个图像组中,所述待编码帧相邻的前一已编码帧的相对复杂度,所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数,确定所述第i个图像组中,所述待编码帧的目标比特数,包括:
采用如下公式,确定所述第i个图像组中,所述待编码帧的目标比特数Tr
Figure BDA0003444609630000041
其中,R′r为所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数,Nr为所述第i个图像组中,当前剩余的未编码的P帧的数目,FCj为所述第i个图像组中,所述待编码帧相邻的前一已编码帧对应的帧层目标码率调整因子,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧在所述第i个图像组中的帧序号。
可选的,采用如下公式,确定所述第i个图像组中,所述待编码帧相邻的前一已编码帧对应的帧层目标码率调整因子FCj
Figure BDA0003444609630000042
其中,T0为第一预设值,T1为第二预设值;T2为第三预设值;T3为第四预设值,p和q均为预设常数;MADratio,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧的相对复杂度,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧在所述第i个图像组中的帧序号;
Figure BDA0003444609630000051
MADj-1为所述第i个图像组中,所述待编码帧相邻的前第二个已编码帧的相对复杂度,MADAf为所述第i个图像组中,已编码的第f个P帧的相对复杂度。
可选的,所述确定视频序列中第i个图像组的目标比特数,包括:
在i=1的情况下,将视频序列中第1个图像组的目标比特数,确定为预设比特数;
在i>1的情况下,采用如下公式,确定视频序列中第i个图像组的目标比特数RGOP_i′:
RGOP_i′=RGOP_i×φ(ki,l)
其中,
Figure BDA0003444609630000052
Ravg为所述视频序列中,所有图像组的目标平均码率,N为所述视频序列中,图像组的总个数,Fr为帧率,φ(ki,l)为第i个图像组的调整因子,ki为第i个图像组的复杂度因子,l为码流平衡因子。
可选的,采用如下公式,确定所述第i个图像组的复杂度因子ki
Figure BDA0003444609630000053
其中,
Figure BDA0003444609630000054
e为第五预设系数,CGOP_i_est为预测得到的第i个图像组中所有P帧的平均复杂度,/>
Figure BDA0003444609630000055
CGOP_i-1为第i-1个图像组中所有P帧的平均复杂度,CGOP_avg为所述视频序列中已编码的所有P帧的平均复杂度;
码流平衡因子l的计算公式为:
l=med(-1,m×(Ract/Ravg-1),1)
其中,med(.)为取中间值函数;m为第六预设系数,Ract为所述视频序列中已编码的码流的实际码率,Ravg为所述视频序列中,所有图像组的目标平均码率。
可选的,所述方法还包括:
将视频序列的每一个图像组中的第一个I帧的量化参数、和视频序列的第一个图像组中的第一个P帧的量化参数,均设定为预设量化参数。
本发明的第二方面,提供一种基于AVS的可变码率控制装置,所述装置包括:
图像组的目标比特数确定模块,用于确定视频序列中第i个图像组的目标比特数;所述i为待编码的图像组在所述视频序列中的图像组序号;
场景切换因子确定模块,用于在待编码帧为:第i个图像组中第一个I帧、第一个P帧之外的帧的情况下,基于所述第i个图像组中,待编码帧相邻的前一已编码帧的峰值信噪比、所述视频序列中已编码的所有P帧的峰值信噪比平均值、所述第i个图像组中,所述待编码帧前的各个已编码帧的峰值信噪比,确定所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子;
剩余目标比特数调整模块,用于基于所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子、所述第i个图像组的目标比特数、所述待编码帧相邻的前一已编码帧的编码比特数、所述第i个图像组中已编码的比特数、所述第i个图像组中已编码的码流的实际码率、帧率,调整所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数;
待编码帧的比特数确定模块,用于基于所述第i个图像组中,所述待编码帧相邻的前一已编码帧的相对复杂度,所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数,确定所述第i个图像组中,所述待编码帧的目标比特数。
可选的,所述场景切换因子确定模块,包括:
切换因子确定单元,用于采用下述公式,确定所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子PCj
PCj=a×PSNR_Ratio1j+b×PSNR_Ratio2j
其中,a为第一预设系数,b为第二预设系数,
Figure BDA0003444609630000071
PSNRj为所述第i个图像组中,所述待编码帧相邻的前一已编码帧的峰值信噪比,PSNR_avg所述视频序列中已编码的所有P帧的峰值信噪比平均值,/>
Figure BDA0003444609630000072
PSNRd为所述第i个图像组中,所述待编码帧前的第d个已编码帧的峰值信噪比,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧在所述第i个图像组中的帧序号。
可选的,所述剩余目标比特数调整模块,包括:
剩余目标比特数调整单元,用于采用如下公式调整所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数R′r
Figure BDA0003444609630000073
其中,PCj为所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子,Rr等于所述第i个图像组的目标比特数,减去所述第i个图像组中已编码的比特数的差值;Bj为所述待编码帧相邻的前一已编码帧的编码比特数,Ract为所述视频序列中已编码的码流的实际码率,c为第三预设系数,d为第四预设系数,Fr为帧率,TH1为第一预设阈值,TH2为第二预设阈值,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧在所述第i个图像组中的帧序号。
可选的,所述待编码帧的比特数确定模块,包括:
待编码帧的比特数确定单元,用于采用如下公式,确定所述第i个图像组中,所述待编码帧的目标比特数Tr
Figure BDA0003444609630000074
其中,R′r为所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数,Nr为所述第i个图像组中,当前剩余的未编码的P帧的数目,FCj为所述第i个图像组中,所述待编码帧相邻的前一已编码帧对应的帧层目标码率调整因子,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧在所述第i个图像组中的帧序号。
可选的,所述待编码帧的比特数确定单元,包括:帧层目标码率调整因子确定子单元,所述帧层目标码率调整因子确定子单元,用于采用如下公式,确定所述第i个图像组中,所述待编码帧相邻的前一已编码帧对应的帧层目标码率调整因子FCj
Figure BDA0003444609630000081
其中,T0为第一预设值,T1为第二预设值;T2为第三预设值;T3为第四预设值,p和q均为预设常数;MADratio,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧的相对复杂度,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧在所述第i个图像组中的帧序号;
Figure BDA0003444609630000082
MADj-1为所述第i个图像组中,所述待编码帧相邻的前第二个已编码帧的相对复杂度,MADAf为所述第i个图像组中,已编码的第f个P帧的相对复杂度。
可选的,所述图像组的目标比特数确定模块,包括:
图像组的目标比特数第一确定单元,用于在i=1的情况下,将视频序列中第1个图像组的目标比特数,确定为预设比特数;
图像组的目标比特数第二确定单元,用于在i>1的情况下,采用如下公式,确定视频序列中第i个图像组的目标比特数RGOP_i′:
RGOP_i′=RGOP_i×φ(ki,l)
其中,
Figure BDA0003444609630000091
Ravg为所述视频序列中,所有图像组的目标平均码率,N为所述视频序列中,图像组的总个数,Fr为帧率,φ(ki,l)为第i个图像组的调整因子,ki为第i个图像组的复杂度因子,l为码流平衡因子。
可选的,所述图像组的目标比特数第二确定单元,包括:图像组的复杂度因子确定子单元,所述图像组的复杂度因子确定子单元用于采用如下公式,确定所述第i个图像组的复杂度因子ki
Figure BDA0003444609630000092
其中,
Figure BDA0003444609630000093
e为第五预设系数,CGOP_i_est为预测得到的第i个图像组中所有P帧的平均复杂度,/>
Figure BDA0003444609630000094
CGOP_i-1为第i-1个图像组中所有P帧的平均复杂度,CGOP_avg为所述视频序列中已编码的所有P帧的平均复杂度;
码流平衡因子l的计算公式为:
l=med(-1,m×(Ract/Ravg-1),1)
其中,med(.)为取中间值函数;m为第六预设系数,Ract为所述视频序列中已编码的码流的实际码率,Ravg为所述视频序列中,所有图像组的目标平均码率。
可选的,所述装置还包括:
量化参数确定模块,用于将视频序列的每一个图像组中的第一个I帧的量化参数、和视频序列的第一个图像组中的第一个P帧的量化参数,均设定为预设量化参数。
本发明的第三方面,提供一种电子设备,所述电子设备包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现任一前述的基于AVS的可变码率控制方法的步骤。
本发明的第四方面,提供一种可读存储介质,所述可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现任一前述的基于AVS的可变码率控制方法的步骤。
上述基于AVS的可变码率控制装置、电子设备、可读存储介质与前述基于AVS的可变码率控制方法,具有相同或相似的有益效果,为了避免重复,此处不再赘述。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1示出了本发明实施例中的一种基于AVS的可变码率控制方法的步骤流程图;
图2示出了本发明实施例的一种基于AVS的可变码率控制方法的步骤示意图;
图3示出了本发明实施例中的一种基于AVS的可变码率控制装置的结构框图;
图4示出了本发明实施例中的另一种基于AVS的可变码率控制装置的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1示出了本发明实施例中的一种基于AVS的可变码率控制方法的步骤流程图。参照图1所示,该基于AVS的可变码率控制方法包括如下步骤:
步骤101,确定视频序列中第i个图像组的目标比特数;所述i为待编码的图像组在所述视频序列中的图像组序号。
本发明实施例中,视频序列可以包含有至少一个图像组(Group of Pictures,GOP)。下文中所称GOP就是图像组。对视频序列包含的GOP的数量不作具体限定。待编码的GOP为即将开始编码的GOP。i为待编码的GOP在视频序列中的GOP序号,i的取值范围小于或等于视频序列所包含的GOP的总个数。下文所称的i的定义均参照此处定义。例如,若视频序列有3个GOP,待编码的GOP为该视频序列中的第1个GOP,则,此处的i即为1。
第i个图像组的目标比特数为第i个图像组初步设定的比特数。确定视频序列中第i个图像组的目标比特数的过程中,可以参考带宽、第i个图像组的实际情况等,对具体设置方式此处不作限定。
可选的,在i=1的情况下,将视频序列中第1个图像组的目标比特数,确定为预设比特数,该预设比特数可以小于或等于最大网络带宽。关于该预设比特数的实际取值不作具体限定。
i>1,就是视频序列中除了第一个图像组之外的各个图像组。例如,针对前述例子,若视频序列有3个GOP,i>1,就是该视频序列的第2个GOP、第3个GOP。
可选的,在i>1的情况下,采用如下公式,确定视频序列中第i个图像组的目标比特数RGOP_i′:
RGOP_i′=RGOP_i×φ(ki,l)
其中,
Figure BDA0003444609630000111
Ravg为该视频序列中,所有图像组的目标平均码率。N为该视频序列中,图像组的总个数,例如,前述例子,若视频序列有3个GOP,则N=3。Fr为帧率,φ(ki,l)为第i个图像组的调整因子,ki为第i个图像组的复杂度因子,l为码流平衡因子。
第i个图像组的调整因子φ(ki,l)可以采用如下公式确定:
Figure BDA0003444609630000121
其中,
Figure BDA0003444609630000122
e为第五预设系数,e主要是为了调整复杂度因子过大的情况,e的取值可以是0.1-0.9,例如,e可以取0.5。CGOP_i_est为预测得到的第i个图像组中所有P帧的平均复杂度。/>
Figure BDA0003444609630000123
Figure BDA0003444609630000124
CGOP_i-1为第i-1个图像组中所有P帧的平均复杂度,CGOP_avg为该视频序列中已编码的所有P帧的平均复杂度;码流平衡因子l的计算公式为:
l=med(-1,m×(Ract/Ravg-1),1)
其中,med(.)为取中间值函数;m为第六预设系数,m主要是为了码率控制准确和图像质量平滑,码率的波动是有限制的,通常码率波动范围是10%,因此,m的取值可以为10。Ract为该视频序列中已编码的码流的实际码率,Ravg为该视频序列中,所有图像组的目标平均码率。
例如,若为视频序列中第2个GOP的目标比特数RGOP_2′的过程中,i就取2。CGOP_i-1即为第1个图像组中所有P帧的平均复杂度。此时,仅对该视频序列中的第一个GOP编码了,则,CGOP_avg为该视频序列中第一个GOP已编码的所有P帧的平均复杂度。
在i>1的情况下,由上述公式能够更为准确的确定视频序列中第i个图像组的目标比特数RGOP_i′。
步骤102,在待编码帧为:第i个图像组中第一个I帧、第一个P帧之外的帧的情况下,基于所述第i个图像组中,待编码帧相邻的前一已编码帧的峰值信噪比、所述视频序列中已编码的所有P帧的峰值信噪比平均值、所述第i个图像组中,所述待编码帧前的各个已编码帧的峰值信噪比,确定所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子。
每个图像组的第一个帧为I帧,在对第i个图像组中第一个I帧、第一个P帧之外的帧进行码率控制的过程中,基于第i个图像组中,待编码帧相邻的前一已编码帧的峰值信噪比、该视频序列中已编码的所有P帧的峰值信噪比平均值、第i个图像组中,待编码帧前的各个已编码帧的峰值信噪比,确定第i个图像组中,该待编码帧相邻的前一已编码帧的场景切换因子。就是说在对第i个图像组中第一个I帧、第一个P帧之外的帧进行码率控制的过程中,基于上述参数,确定第i个图像组该帧相邻的前一个已编码帧的场景切换因子。待编码帧相邻的前一已编码帧的场景切换因子,不仅能有效的检测出场景切换,而且还能判断是从相对简单的场景切换到复杂的场景还是相对复杂的场景切换到相对简单的场景。如,场景切换因子较大,则,从相对简单的场景切换到复杂的场景,场景切换因子较小,则,从相对复杂的场景切换到相对简单的场景。相邻的前一个已编码帧,与该待编码帧相邻,且比待编码该帧更靠近第i个图像组中第一个I帧。
例如,针对前述例子,若视频序列中每个GOP的帧结构均为IPPP,则,针对第1个GOP的第2个P帧进行码率控制的过程中,待编码帧即为第1个GOP的第2个P帧,待编码帧相邻的前一已编码帧即为第1个GOP的第1个P帧。该视频序列中已编码的所有P帧就是:第1个GOP的第1个P帧。该视频序列中已编码的所有P帧的峰值信噪比平均值,也就是第1个GOP中已编码的第1个P帧的峰值信噪比。第1个GOP中,待编码帧前的各个已编码帧的峰值信噪比,就是第1个GOP的已编码的第1个I帧的峰值信噪比、第1个GOP中已编码的第1个P帧的峰值信噪比。则,基于第1个GOP中,第1个已编码的P帧的峰值信噪比、第1个GOP中已编码的第1个I帧的峰值信噪比、第1个GOP中已编码的第1个P帧的峰值信噪比,确定第1个GOP中,已编码的第一个P帧的场景切换因子。
在相同的码率下,当编码复杂度低,运动平缓的帧时,峰值信噪比会比较大,当编码复杂度高,运动剧烈的帧时,峰值信噪比会比较小,当发生场景切换时,峰值信噪比会发生突变。本发明实施例中,基于第i个图像组中,待编码帧相邻的前一已编码帧的峰值信噪比、视频序列中已编码的所有P帧的峰值信噪比平均值、第i个图像组中,待编码帧前的各个已编码帧的峰值信噪比,能够准确确定第i个图像组中,待编码帧相邻的前一已编码帧的场景切换因子,不仅能有效的检测出场景切换,而且还能判断是从相对简单的场景切换到复杂的场景还是相对复杂的场景切换到相对简单的场景。
可选的,可以采用下述公式,确定第i个图像组中,待编码帧相邻的前一已编码帧的场景切换因子PCj
PCj=a×PSNR_Ratio1j+b×PSNR_Ratio2j
其中,a为第一预设系数,b为第二预设系数,a+b=1,a、b均为权重因子,与待编码帧距离越近,对待编码帧的预测可能更为准确,因此,一般情况下a≥b,如,a的取值可以为0.8-0.9,
Figure BDA0003444609630000141
PSNRj为所述第i个图像组中,待编码帧相邻的前一已编码帧的峰值信噪比,PSNR_avg视频序列中已编码的所有P帧的峰值信噪比平均值,
Figure BDA0003444609630000142
PSNRd为第i个图像组中,该待编码帧前的第d个已编码帧的峰值信噪比,d的取值从1到j。j为第i个图像组中,该待编码帧相邻的前一已编码帧在第i个图像组中的帧序号。下文说称的j,均与此处的定义相同。在相同的码率下,当编码复杂度低,运动平缓的帧时,峰值信噪比会比较大,当编码复杂度高,运动剧烈的帧时,峰值信噪比会比较小,当发生场景切换时,峰值信噪比会发生突变。由上述公式确定的第i个图像组中,待编码帧相邻的前一已编码帧的场景切换因子PCj,能够准确反应场景切换的具体情况。
例如,针对上述例子,若视频序列中每个GOP的帧结构均为IPPP,则,针对第1个GOP的第2个P帧进行码率控制的过程中,该待编码帧相邻的前一已编码帧即为:第1个GOP的第1个P帧,j为第1个GOP的第1个P帧在该第1个GOP中的帧序号,j即为2。PSNRj为第1个GOP中已编码的第1个P帧的峰值信噪比。第1个GOP中,该待编码帧前的第d个已编码帧,分别为:第1个GOP中,第1个I帧和第一个P帧。PSNRd分别为第1个GOP中,已编码的第1个I帧的峰值信噪比、已编码的第1个P帧的峰值信噪比。
步骤103,基于所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子、所述第i个图像组的目标比特数、所述待编码帧相邻的前一已编码帧的编码比特数、所述第i个图像组中已编码的比特数、所述第i个图像组中已编码的码流的实际码率、帧率,调整所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数。
在待编码帧为:第i个图像组中第一个I帧、第一个P帧之外的帧的情况下,基于第i个图像组中,待编码帧相邻的前一已编码帧的场景切换因子、第i个图像组的目标比特数、待编码帧相邻的前一已编码帧的编码比特数、第i个图像组中已编码的比特数、第i个图像组中已编码的码流的实际码率、帧率,确定第i个图像组中,编码该待编码帧之前剩余的目标比特数。该步骤具体是,针对由简单到复杂的场景,增大剩余的目标比特数,针对由复杂到简单的场景,减小剩余目标比特数,使得剩余的目标比特数与场景贴合度更高,尤其是针对运动剧烈、场景切换频繁、纹理比较复杂的视频序列具有更好的适应性。
可选的,步骤103中,采用如下公式调整第i个图像组中,编码待编码帧之前剩余的目标比特数R′r
Figure BDA0003444609630000151
其中,PCj为第i个图像组中,待编码帧相邻的前一已编码帧的场景切换因子,Rr等于第i个图像组的目标比特数,减去第i个图像组中已编码的比特数的差值。Bj为该待编码帧相邻的前一已编码帧的编码比特数,Ract为该视频序列中已编码的码流的实际码率,c为第三预设系数,d为第四预设系数,Fr为帧率,TH1为第一预设阈值,TH2为第二预设阈值。通常情况下,TH1取值为1.1-1.2,TH2取值为0.8-0.9,PCj>TH1表示该待编码帧相邻的前一已编码帧预测的场景从复杂向简单变化的程度剧烈,因此为该待编码帧分配更少的比特数。PCj<TH2表示该待编码帧相邻的前一已编码帧预测的场景从简单向复杂变化的程度剧烈,因此为该待编码帧分配更多的比特数。TH2≤PCj≤TH1表示场景切换可能比较平缓。由此为该待编码帧确定的目标比特数,与该待编码帧的复杂度、该目标编码帧的场景切换程度均更为贴合,使得图像质量更加平缓,特别是针对场景频繁切换的视频具有更好的编码效果,同时编码复杂度大大降低,由该目标比特数对该待编码帧编码,不仅能够有很高的保真度,而且可以有效提高网络带宽资源的利用率。c、d均为调整系数,通常情况下,c的取值可以为0.8,d的取值可以为1.2。
例如,针对前述例子,若视频序列中每个GOP的帧结构均为IPPP,则,针对第1个GOP的第2个P帧进行码率控制的过程中,该待编码帧相邻的前一已编码帧即为:第1个GOP的第1个P帧,j为第1个GOP的第1个P帧在该第1个GOP中的帧序号,j即为2。PCj为第1个GOP的第1个P帧的场景切换因子。第i个图像组中已编码的比特数即为:第1个GOP的第1个I帧的编码比特数、第1个P帧的编码比特数。视频序列中已编码的码流的实际码率为:第1个GOP中第1个I帧、第1个P帧的码流的实际码率。Rr等于第1个GOP的目标比特数,减去第1个GOP的第1个I帧的编码比特数、再减去第1个P帧的编码比特数的差值。Bj为第1个GOP的第1个P帧的编码比特数。Ract为第1个GOP中第1个I帧、第1个P帧的码流的实际码率。
步骤104,基于所述第i个图像组中,所述待编码帧相邻的前一已编码帧的相对复杂度,所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数,确定所述第i个图像组中,所述待编码帧的目标比特数。
在待编码帧为:第i个图像组中第一个I帧、第一个P帧之外的帧的情况下,基于第i个图像组中,该待编码帧相邻的前一已编码帧的相对复杂度,第i个图像组中,编码该待编码帧之前剩余的目标比特数,确定第i个图像组中,该待编码帧的目标比特数。待编码帧相邻的前一已编码帧的相对复杂度,能够较为准确地反应待编码帧的复杂程度,在为第i个图像组中,待编码帧的目标比特数的过程中,进一步参考了待编码帧相邻的前一已编码帧的相对复杂度,由此为该待编码帧确定的目标比特数,与该待编码帧的复杂度、该目标编码帧的场景切换程度均更为贴合,使得图像质量更加平缓,特别是针对场景频繁切换的视频具有更好的编码效果,同时编码复杂度大大降低,由该目标比特数对该待编码帧编码,不仅能够有很高的保真度,而且可以有效提高网络带宽资源的利用率。
可选的,采用如下公式,确定所述第i个图像组中,所述待编码帧的目标比特数Tr
Figure BDA0003444609630000171
其中,R′r为第i个图像组中,编码该待编码帧之前剩余的目标比特数,Nr为第i个图像组中,当前剩余的未编码的P帧的数目,FCj为第i个图像组中,该待编码帧相邻的前一已编码帧对应的帧层目标码率调整因子。
例如,针对上述例子,若视频序列中每个GOP的帧结构均为IPPP,则,针对第1个GOP的第2个P帧进行码率控制的过程中,该待编码帧相邻的前一已编码帧即为:第1个GOP的第1个P帧,j为第1个GOP的第1个P帧在该第1个GOP中的帧序号,j即为2。Tr为第1个GOP的第2个P帧的目标比特数。R′r为1个GOP中,编码第2个P帧之前剩余的目标比特数。第1个GOP中,当前剩余的未编码的P帧即为第2个P帧和第3个P帧,则,Nr为2。FCj为第1个GOP中,已编码第1个P帧对应的帧层目标码率调整因子。
可选的,采用如下公式,确定第i个图像组中,该待编码帧相邻的前一已编码帧对应的帧层目标码率调整因子FCj
Figure BDA0003444609630000172
其中,T0为第一预设值,T1为第二预设值;T2为第三预设值;T3为第四预设值,p和q均为预设常数;MADratio,j为第i个图像组中,该待编码帧相邻的前一已编码帧的相对复杂度;
Figure BDA0003444609630000173
MADj-1为第i个图像组中,该待编码帧相邻的前第二个已编码帧的相对复杂度,MADAf为所述第i个图像组中,已编码的第f个P帧的相对复杂度。相邻的前一已编码帧与相邻的前第二个已编码帧相邻,且比相邻的前第二个已编码帧更靠近第i个图像组的第1个I帧。其中,T0取值可以为2.0,T1取值可以为1.1,T2取值可以为1.0,T3取值可以为0.8,p取值为1.6-1.9,例如,p可以为1.7,q取值为0.8-1,例如,q可以为0.95。T0、T1、T2、T3、p、q在上述取值范围内,确定的待编码帧相邻的前一已编码帧对应的帧层目标码率调整因子FCj较为准确,对待编码帧的预测也较为准确。
可选的,该方法还可以包括如下步骤:将视频序列的每一个图像组中的第一个I帧的量化参数、和视频序列的第一个图像组中的第一个P帧的量化参数,均设定为预设量化参数。该预设量化参数需要与最大网络带宽相适应。如,该预设量化参数的取值范围可以为20-30。
图2示出了本发明实施例的一种基于AVS的可变码率控制方法的步骤示意图。下面结合例子,对本申请作进一步解释说明:
若视频序列有3个GOP,每个GOP的帧结构均为IPPP,参照图2所示,对该视频序列进行码率控制或视频编码的过程如下:S1,将视频序列中第1个GOP的目标比特数,确定为预设比特数。该预设比特数可以小于或等于最大网络带宽。S2,将视频序列中,第一个GOP中的第一个I帧、第一个P帧的量化参数,均设定为预设量化参数。S3,针对第1个GOP的第2个P帧,确定第一个GOP中已编码的第1个P帧的场景切换因子PCj,然后确定第一个GOP中,编码第2个P帧之前剩余的目标比特数R′r,接着确定第一个GOP中,第2个P帧的目标比特数Tr,完成对第1个GOP的第2个P帧的编码。S4,针对第1个GOP的第3个P帧,确定第一个GOP中已编码的第2个P帧的场景切换因子PCj,然后确定第一个GOP中,编码第3个P帧之前剩余的目标比特数R′r,接着确定第一个GOP中,第3个P帧的目标比特数Tr,完成对第1个GOP的第3个P帧的编码,也就完成了对第1个GOP的编码。
S5,针对第2个GOP,确定第2个GOP的目标比特数RGOP_i′。S6,将第2个GOP中的第1个I帧和第1个P帧的量化参数,均设定为前述的步骤S2中的预设量化参数。S7,针对第2个GOP的第2个P帧,确定第2个GOP中已编码的第1个P帧的场景切换因子PCj,然后确定第2个GOP中,编码第2个P帧之前剩余的目标比特数R′r,接着确定第2个GOP中,第2个P帧的目标比特数Tr,完成对第2个GOP的第2个P帧的编码。S8,针对第2个GOP的第3个P帧,确定第2个GOP中已编码的第2个P帧的场景切换因子PCj,然后确定第2个GOP中,编码第3个P帧之前剩余的目标比特数R′r,接着确定第2个GOP中,第3个P帧的目标比特数Tr,完成对第2个GOP的第3个P帧的编码,也就完成了对第2个GOP的编码。
S9,针对第3个GOP,先确定第3个GOP的目标比特数RGOP_i′。S10,将第3个GOP中的第1个I帧和第1个P帧的量化参数,均设定为前述的步骤S2中的预设量化参数。S11,针对第3个GOP的第2个P帧,确定第3个GOP中已编码的第1个P帧的场景切换因子PCj,然后确定第3个GOP中,编码第2个P帧之前剩余的目标比特数R′r,接着确定第3个GOP中,第2个P帧的目标比特数Tr,完成对第3个GOP的第2个P帧的编码。S12,针对第3个GOP的第3个P帧,确定第3个GOP中已编码的第2个P帧的场景切换因子PCj,然后确定第3个GOP中,编码第3个P帧之前剩余的目标比特数R′r,接着确定第3个GOP中,第3个P帧的目标比特数Tr,完成对第3个GOP的第3个P帧的编码,也就完成了对第3个GOP的编码,至此完成了对该视频序列的编码。
在相同的码率下,当编码复杂度低,运动平缓的帧时,峰值信噪比会比较大,当编码复杂度高,运动剧烈的帧时,峰值信噪比会比较小,当发生场景切换时,峰值信噪比会发生突变。本发明实施例中,基于第i个图像组中,待编码帧相邻的前一已编码帧的峰值信噪比、视频序列中已编码的所有P帧的峰值信噪比平均值、第i个图像组中,待编码帧前的各个已编码帧的峰值信噪比,能够准确确定第i个图像组中,待编码帧相邻的前一已编码帧的场景切换因子,不仅能有效的检测出场景切换,而且还能判断是从相对简单的场景切换到复杂的场景还是相对复杂的场景切换到相对简单的场景,基于待编码帧相邻的前一已编码帧的场景切换因子,动态调整的第i个图像组中,编码该待编码帧之前剩余的目标比特数的过程,针对由简单到复杂的场景,增大剩余的目标比特数,针对由复杂到简单的场景,减小剩余目标比特数,与场景贴合度更高,尤其是针对运动剧烈、场景切换频繁、纹理比较复杂的视频序列具有更好的适应性。待编码帧相邻的前一已编码帧的相对复杂度,能够较为准确地反应待编码帧的复杂程度,在为第i个图像组中,待编码帧的目标比特数的过程中,进一步参考了待编码帧相邻的前一已编码帧的相对复杂度,由此为该待编码帧确定的目标比特数,与该待编码帧的复杂度、该目标编码帧的场景切换程度均更为贴合,使得图像质量更加平缓,特别是针对场景频繁切换、纹理比较复杂的视频具有更好的编码效果,且,相对于现有技术中,进行复杂的线性回归分析而言,本发明实施例仅是简单的加减乘除运算,编码复杂度大大降低,由该目标比特数对该待编码帧编码,不仅能够有很高的保真度,而且可以有效提高网络带宽资源的利用率,且实时性较好。
本发明实施例,一方面,对云服务商视频云等有较好的应用场景,特别是适用于那些对带宽不太限制,但是对质量有很高要求的场景,适合对延时不敏感的点播,录播或者视频存储系统。另一方面,本发明实施例还特别适合运动场景较为复杂的视频,如交通视频、运动比赛视频、电影视频等,也可以保持很高的清晰度且输出质量比较稳定。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定都是本发明实施例所必须的。
图3示出了本发明实施例中的一种基于AVS的可变码率控制装置的结构框图。参照图3所示,本发明实施例还提供一种基于AVS的可变码率控制装置,所述装置包括:
图像组的目标比特数确定模块301,用于确定视频序列中第i个图像组的目标比特数;所述i为待编码的图像组在所述视频序列中的图像组序号;
场景切换因子确定模块302,用于在待编码帧为:第i个图像组中第一个I帧、第一个P帧之外的帧的情况下,基于所述第i个图像组中,待编码帧相邻的前一已编码帧的峰值信噪比、所述视频序列中已编码的所有P帧的峰值信噪比平均值、所述第i个图像组中,所述待编码帧前的各个已编码帧的峰值信噪比,确定所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子;
剩余目标比特数调整模块303,用于基于所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子、所述第i个图像组的目标比特数、所述待编码帧相邻的前一已编码帧的编码比特数、所述第i个图像组中已编码的比特数、所述第i个图像组中已编码的码流的实际码率、帧率,调整所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数;
待编码帧的比特数确定模块304,用于基于所述第i个图像组中,所述待编码帧相邻的前一已编码帧的相对复杂度,所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数,确定所述第i个图像组中,所述待编码帧的目标比特数。
图4示出了本发明实施例中的另一种基于AVS的可变码率控制装置的结构框图。可选的,所述场景切换因子确定模块302,可以包括:
切换因子确定单元3021,用于采用下述公式,确定所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子PCj
PCj=a×PSNR_Ratio1j+b×PSNR_Ratio2j
其中,a为第一预设系数,b为第二预设系数,
Figure BDA0003444609630000211
PSNRj为所述第i个图像组中,所述待编码帧相邻的前一已编码帧的峰值信噪比,PSNR_avg所述视频序列中已编码的所有P帧的峰值信噪比平均值,/>
Figure BDA0003444609630000212
PSNRd为所述第i个图像组中,所述待编码帧前的第d个已编码帧的峰值信噪比,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧在所述第i个图像组中的帧序号。
可选的,所述剩余目标比特数调整模块303,可以包括:
剩余目标比特数调整单元3031,用于采用如下公式调整所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数R′r
Figure BDA0003444609630000221
其中,PCj为所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子,Rr等于所述第i个图像组的目标比特数,减去所述第i个图像组中已编码的比特数的差值;Bj为所述待编码帧相邻的前一已编码帧的编码比特数,Ract为所述视频序列中已编码的码流的实际码率,c为第三预设系数,d为第四预设系数,Fr为帧率,TH1为第一预设阈值,TH2为第二预设阈值。
可选的,所述待编码帧的比特数确定模块304,可以包括:
待编码帧的比特数确定单元3041,用于采用如下公式,确定所述第i个图像组中,所述待编码帧的目标比特数Tr
Figure BDA0003444609630000222
其中,R′r为所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数,Nr为所述第i个图像组中,当前剩余的未编码的P帧的数目,FCj为所述第i个图像组中,所述待编码帧相邻的前一已编码帧对应的帧层目标码率调整因子。
可选的,所述待编码帧的比特数确定单元3041,包括:帧层目标码率调整因子确定子单元,所述帧层目标码率调整因子确定子单元,用于采用如下公式,确定所述第i个图像组中,所述待编码帧相邻的前一已编码帧对应的帧层目标码率调整因子FCj
Figure BDA0003444609630000231
其中,T0为第一预设值,T1为第二预设值;T2为第三预设值;T3为第四预设值,p和q均为常数;MADratio,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧的相对复杂度;
Figure BDA0003444609630000232
MADj-1为所述第i个图像组中,所述待编码帧相邻的前第二个已编码帧的相对复杂度,MADAf为所述第i个图像组中,已编码的第f个P帧的相对复杂度。
可选的,所述图像组的目标比特数确定模块301,可以包括:
图像组的目标比特数第一确定单元3011,用于在i=1的情况下,将视频序列中第1个图像组的目标比特数,确定为预设比特数;
图像组的目标比特数第二确定单元3012,用于在i>1的情况下,采用如下公式,确定视频序列中第i个图像组的目标比特数RGOP_i′:
RGOP_i′=RGOP_i×φ(ki,l)
其中,
Figure BDA0003444609630000233
Ravg为所述视频序列中,所有图像组的目标平均码率,N为所述视频序列中,图像组的总个数,Fr为帧率,φ(ki,l)为第i个图像组的调整因子,ki为第i个图像组的复杂度因子,l为码流平衡因子。/>
可选的,所述图像组的目标比特数第二确定单元3012,可以包括:图像组的复杂度因子确定子单元,所述图像组的复杂度因子确定子单元用于采用如下公式,确定所述第i个图像组的复杂度因子ki
Figure BDA0003444609630000241
其中,
Figure BDA0003444609630000242
e为第五预设系数,CGOP_i_est为预测得到的第i个图像组中所有P帧的平均复杂度,/>
Figure BDA0003444609630000243
CGOP_i-1为第i-1个图像组中所有P帧的平均复杂度,CGOP_avg为所述视频序列中已编码的所有P帧的平均复杂度;
码流平衡因子l的计算公式为:
l=med(-1,m×(Ract/Ravg-1),1)
其中,med(.)为取中间值函数;m为第六预设系数,Ract为所述视频序列中已编码的码流的实际码率,Ravg为所述视频序列中,所有图像组的目标平均码率。第六预设系数f可以使得实际平均码率和目标平均码率的偏差不超过10%。
可选的,所述装置还包括:
量化参数确定模块,用于将视频序列的每一个图像组中的第一个I帧的量化参数、和视频序列的第一个图像组中的第一个P帧的量化参数,均设定为预设量化参数。
本发明实施例提供的基于AVS的可变码率控制装置能够实现图1、图2的方法实施例中各个步骤,并能够达到相应的有益效果,为避免重复,这里不再赘述。
本发明实施例还提供一种电子设备,电子设备包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现任一前述的基于AVS的可变码率控制方法的步骤。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
本发明实施例还提供一种可读存储介质,所述可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现任一前述的基于AVS的可变码率控制方法的步骤。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定都是本申请实施例所必须的。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。

Claims (18)

1.一种基于AVS的可变码率控制方法,其特征在于,所述方法包括:
确定视频序列中第i个图像组的目标比特数;所述i为待编码的图像组在所述视频序列中的图像组序号;
在待编码帧为:第i个图像组中第一个I帧、第一个P帧之外的帧的情况下,基于所述第i个图像组中,待编码帧相邻的前一已编码帧的峰值信噪比、所述视频序列中已编码的所有P帧的峰值信噪比平均值、所述第i个图像组中,所述待编码帧前的各个已编码帧的峰值信噪比,确定所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子;
基于所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子、所述第i个图像组的目标比特数、所述待编码帧相邻的前一已编码帧的编码比特数、所述第i个图像组中已编码的比特数、所述第i个图像组中已编码的码流的实际码率、帧率,调整所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数;
基于所述第i个图像组中,所述待编码帧相邻的前一已编码帧的相对复杂度,所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数,确定所述第i个图像组中,所述待编码帧的目标比特数。
2.根据权利要求1所述的基于AVS的可变码率控制方法,其特征在于,所述基于所述第i个图像组中,待编码帧相邻的前一已编码帧的峰值信噪比、所述视频序列中已编码的所有P帧的峰值信噪比平均值、所述第i个图像组中,所述待编码帧前的各个已编码帧的峰值信噪比,确定所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子,包括:
采用下述公式,确定所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子PCj
PCj=a×PSNR_Ratio1j+b×PSNR_Ratio2j
其中,a为第一预设系数,b为第二预设系数,
Figure FDA0003444609620000011
PSNRj为所述第i个图像组中,所述待编码帧相邻的前一已编码帧的峰值信噪比,PSNR_avg所述视频序列中已编码的所有P帧的峰值信噪比平均值,/>
Figure FDA0003444609620000021
PSNRd为所述第i个图像组中,所述待编码帧前的第d个已编码帧的峰值信噪比,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧在所述第i个图像组中的帧序号。
3.根据权利要求1所述的基于AVS的可变码率控制方法,其特征在于,所述基于所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子、所述第i个图像组的目标比特数、所述待编码帧相邻的前一已编码帧的编码比特数、所述第i个图像组中已编码的比特数、所述第i个图像组中已编码的码流的实际码率、帧率,调整所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数,包括:
采用如下公式调整所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数R′r
Figure FDA0003444609620000022
其中,PCj为所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子,Rr等于所述第i个图像组的目标比特数,减去所述第i个图像组中已编码的比特数的差值;Bj为所述待编码帧相邻的前一已编码帧的编码比特数,Ract为所述视频序列中已编码的码流的实际码率,c为第三预设系数,d为第四预设系数,Fr为帧率,TH1为第一预设阈值,TH2为第二预设阈值,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧在所述第i个图像组中的帧序号。
4.根据权利要求1所述的基于AVS的可变码率控制方法,其特征在于,所述基于所述第i个图像组中,所述待编码帧相邻的前一已编码帧的相对复杂度,所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数,确定所述第i个图像组中,所述待编码帧的目标比特数,包括:
采用如下公式,确定所述第i个图像组中,所述待编码帧的目标比特数Tr
Figure FDA0003444609620000031
其中,R′r为所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数,Nr为所述第i个图像组中,当前剩余的未编码的P帧的数目,FCj为所述第i个图像组中,所述待编码帧相邻的前一已编码帧对应的帧层目标码率调整因子,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧在所述第i个图像组中的帧序号。
5.根据权利要求4所述的基于AVS的可变码率控制方法,其特征在于,采用如下公式,确定所述第i个图像组中,所述待编码帧相邻的前一已编码帧对应的帧层目标码率调整因子FCj
Figure FDA0003444609620000032
其中,T0为第一预设值,T1为第二预设值;T2为第三预设值;T3为第四预设值,p和q均为预设常数;MADratio,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧的相对复杂度,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧在所述第i个图像组中的帧序号;
Figure FDA0003444609620000033
MADj-1为所述第i个图像组中,所述待编码帧相邻的前第二个已编码帧的相对复杂度,MADAf为所述第i个图像组中,已编码的第f个P帧的相对复杂度。
6.根据权利要求1-5中任一所述的基于AVS的可变码率控制方法,其特征在于,所述确定视频序列中第i个图像组的目标比特数,包括:
在i=1的情况下,将视频序列中第1个图像组的目标比特数,确定为预设比特数;
在i>1的情况下,采用如下公式,确定视频序列中第i个图像组的目标比特数RGOP_i′:
RGOP_i′=RGOP_i×φ(ki,l)
其中,
Figure FDA0003444609620000041
Ravg为所述视频序列中,所有图像组的目标平均码率,N为所述视频序列中,图像组的总个数,Fr为帧率,φ(ki,l)为第i个图像组的调整因子,ki为第i个图像组的复杂度因子,l为码流平衡因子。
7.根据权利要求6所述的基于AVS的可变码率控制方法,其特征在于,采用如下公式,确定所述第i个图像组的复杂度因子ki
Figure FDA0003444609620000042
其中,
Figure FDA0003444609620000043
e为第五预设系数,CGOP_i_est为预测得到的第i个图像组中所有P帧的平均复杂度,/>
Figure FDA0003444609620000044
CGOP_i-1为第i-1个图像组中所有P帧的平均复杂度,CGOP_avg为所述视频序列中已编码的所有P帧的平均复杂度;
码流平衡因子l的计算公式为:
l=med(-1,m×(Ract/Ravg-1),1)
其中,med(.)为取中间值函数;m为第六预设系数,Ract为所述视频序列中已编码的码流的实际码率,Ravg为所述视频序列中,所有图像组的目标平均码率。
8.根据权利要求1-5中任一所述的基于AVS的可变码率控制方法,其特征在于,所述方法还包括:
将视频序列的每一个图像组中的第一个I帧的量化参数、和视频序列的第一个图像组中的第一个P帧的量化参数,均设定为预设量化参数。
9.一种基于AVS的可变码率控制装置,其特征在于,所述装置包括:
图像组的目标比特数确定模块,用于确定视频序列中第i个图像组的目标比特数;所述i为待编码的图像组在所述视频序列中的图像组序号;
场景切换因子确定模块,用于在待编码帧为:第i个图像组中第一个I帧、第一个P帧之外的帧的情况下,基于所述第i个图像组中,待编码帧相邻的前一已编码帧的峰值信噪比、所述视频序列中已编码的所有P帧的峰值信噪比平均值、所述第i个图像组中,所述待编码帧前的各个已编码帧的峰值信噪比,确定所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子;
剩余目标比特数调整模块,用于基于所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子、所述第i个图像组的目标比特数、所述待编码帧相邻的前一已编码帧的编码比特数、所述第i个图像组中已编码的比特数、所述第i个图像组中已编码的码流的实际码率、帧率,调整所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数;
待编码帧的比特数确定模块,用于基于所述第i个图像组中,所述待编码帧相邻的前一已编码帧的相对复杂度,所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数,确定所述第i个图像组中,所述待编码帧的目标比特数。
10.根据权利要求9所述的基于AVS的可变码率控制装置,其特征在于,所述场景切换因子确定模块,包括:
切换因子确定单元,用于采用下述公式,确定所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子PCj
PCj=a×PSNR_Ratio1j+b×PSNR_Ratio2j
其中,a为第一预设系数,b为第二预设系数,
Figure FDA0003444609620000051
PSNRj为所述第i个图像组中,所述待编码帧相邻的前一已编码帧的峰值信噪比,PSNR_avg所述视频序列中已编码的所有P帧的峰值信噪比平均值,/>
Figure FDA0003444609620000052
PSNRd为所述第i个图像组中,所述待编码帧前的第d个已编码帧的峰值信噪比,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧在所述第i个图像组中的帧序号。
11.根据权利要求9所述的基于AVS的可变码率控制装置,其特征在于,所述剩余目标比特数调整模块,包括:
剩余目标比特数调整单元,用于采用如下公式调整所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数R′r
Figure FDA0003444609620000061
其中,PCj为所述第i个图像组中,所述待编码帧相邻的前一已编码帧的场景切换因子,Rr等于所述第i个图像组的目标比特数,减去所述第i个图像组中已编码的比特数的差值;Bj为所述待编码帧相邻的前一已编码帧的编码比特数,Ract为所述视频序列中已编码的码流的实际码率,c为第三预设系数,d为第四预设系数,Fr为帧率,TH1为第一预设阈值,TH2为第二预设阈值,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧在所述第i个图像组中的帧序号。
12.根据权利要求9所述的基于AVS的可变码率控制装置,其特征在于,所述待编码帧的比特数确定模块,包括:
待编码帧的比特数确定单元,用于采用如下公式,确定所述第i个图像组中,所述待编码帧的目标比特数Tr
Figure FDA0003444609620000062
其中,R′r为所述第i个图像组中,编码所述待编码帧之前剩余的目标比特数,Nr为所述第i个图像组中,当前剩余的未编码的P帧的数目,FCj为所述第i个图像组中,所述待编码帧相邻的前一已编码帧对应的帧层目标码率调整因子,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧在所述第i个图像组中的帧序号。
13.根据权利要求12所述的基于AVS的可变码率控制装置,其特征在于,所述待编码帧的比特数确定单元,包括:帧层目标码率调整因子确定子单元,所述帧层目标码率调整因子确定子单元,用于采用如下公式,确定所述第i个图像组中,所述待编码帧相邻的前一已编码帧对应的帧层目标码率调整因子FCj
Figure FDA0003444609620000071
其中,T0为第一预设值,T1为第二预设值;T2为第三预设值;T3为第四预设值,p和q均为预设常数;MADratio,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧的相对复杂度,j为所述第i个图像组中,所述待编码帧相邻的前一已编码帧在所述第i个图像组中的帧序号;
Figure FDA0003444609620000072
MADj-1为所述第i个图像组中,所述待编码帧相邻的前第二个已编码帧的相对复杂度,MADAf为所述第i个图像组中,已编码的第f个P帧的相对复杂度。
14.根据权利要求9-13中任一所述的基于AVS的可变码率控制装置,其特征在于,所述图像组的目标比特数确定模块,包括:
图像组的目标比特数第一确定单元,用于在i=1的情况下,将视频序列中第1个图像组的目标比特数,确定为预设比特数;
图像组的目标比特数第二确定单元,用于在i>1的情况下,采用如下公式,确定视频序列中第i个图像组的目标比特数RGOP_i′:
RGOP_i′=RGOP_i×φ(ki,l)
其中,
Figure FDA0003444609620000073
Ravg为所述视频序列中,所有图像组的目标平均码率,N为所述视频序列中,图像组的总个数,Fr为帧率,φ(ki,l)为第i个图像组的调整因子,ki为第i个图像组的复杂度因子,l为码流平衡因子。
15.根据权利要求14所述的基于AVS的可变码率控制装置,其特征在于,所述图像组的目标比特数第二确定单元,包括:图像组的复杂度因子确定子单元,所述图像组的复杂度因子确定子单元用于采用如下公式,确定所述第i个图像组的复杂度因子ki
Figure FDA0003444609620000081
其中,
Figure FDA0003444609620000082
e为第五预设系数,CGOP_i_est为预测得到的第i个图像组中所有P帧的平均复杂度,/>
Figure FDA0003444609620000083
CGOP_i-1为第i-1个图像组中所有P帧的平均复杂度,CGOP_avg为所述视频序列中已编码的所有P帧的平均复杂度;
码流平衡因子l的计算公式为:
l=med(-1,m×(Ract/Ravg-1),1)
其中,med(.)为取中间值函数;m为第六预设系数,Ract为所述视频序列中已编码的码流的实际码率,Ravg为所述视频序列中,所有图像组的目标平均码率。
16.根据权利要求9-13中任一所述的基于AVS的可变码率控制装置,其特征在于,所述装置还包括:
量化参数确定模块,用于将视频序列的每一个图像组中的第一个I帧的量化参数、和视频序列的第一个图像组中的第一个P帧的量化参数,均设定为预设量化参数。
17.一种电子设备,其特征在于,所述电子设备包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现权利要求1-8中任一所述的基于AVS的可变码率控制方法的步骤。
18.一种可读存储介质,其特征在于,所述可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现权利要求1-8中任一所述的基于AVS的可变码率控制方法的步骤。
CN202111649781.3A 2021-12-29 2021-12-29 基于avs的可变码率控制方法及装置 Pending CN116418986A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111649781.3A CN116418986A (zh) 2021-12-29 2021-12-29 基于avs的可变码率控制方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111649781.3A CN116418986A (zh) 2021-12-29 2021-12-29 基于avs的可变码率控制方法及装置

Publications (1)

Publication Number Publication Date
CN116418986A true CN116418986A (zh) 2023-07-11

Family

ID=87054929

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111649781.3A Pending CN116418986A (zh) 2021-12-29 2021-12-29 基于avs的可变码率控制方法及装置

Country Status (1)

Country Link
CN (1) CN116418986A (zh)

Similar Documents

Publication Publication Date Title
JP7012747B2 (ja) ビデオフレーム符号化方法、端末、および記憶媒体
CN109862359B (zh) 基于分层b帧的码率控制方法、装置和电子设备
RU2402885C2 (ru) Классификация контента для обработки мультимедийных данных
CN107846590B (zh) 一种视频编码的方法和视频编码器
KR101104654B1 (ko) 품질 제어된 인코딩을 위한 방법 및 시스템
US9883214B2 (en) Efficient approach to dynamic frame size and frame rate adaptation
CA2672339C (en) An improved video rate control for video coding standards
US9826260B2 (en) Video encoding device and video encoding method
US9686557B2 (en) Quantizer parameter determination for video encoder rate control
EP1639801B1 (en) Multipass video rate control to match sliding window channel constraints
US20100266047A1 (en) Image coding apparatus and image coding method
CN101171844A (zh) 视频速率控制中的上下文自适应带宽调整
JP2005538606A (ja) ビデオシーケンスのレートを制御する方法及び装置並びにビデオ符号化装置
US20130251031A1 (en) Method for bit rate control within a scalable video coding system and system therefor
US9560386B2 (en) Pyramid vector quantization for video coding
WO2002096120A1 (en) Bit rate control for video compression
CN101184239A (zh) 一种恒定码率的控制方法
De Vito et al. PSNR control for GOP-level constant quality in H. 264 video coding
KR100498332B1 (ko) 비디오 트랜스코더의 적응적 비트율 제어장치 및 방법
CN116418986A (zh) 基于avs的可变码率控制方法及装置
Mys et al. Decoder-driven mode decision in a block-based distributed video codec
US7801214B2 (en) Method and apparatus for controlling encoding rate and quantization scales
Yunus et al. A rate control model of MPEG-4 encoder for video transmission over Wireless Sensor Network
JPH09261638A (ja) 画像符号化装置
Kobayashi et al. A real-time 4K HEVC multi-channel encoding system with content-aware bitrate control

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination