CN108924555A - 一种适用于视频切片的码率控制比特分配方法 - Google Patents

一种适用于视频切片的码率控制比特分配方法 Download PDF

Info

Publication number
CN108924555A
CN108924555A CN201810418031.7A CN201810418031A CN108924555A CN 108924555 A CN108924555 A CN 108924555A CN 201810418031 A CN201810418031 A CN 201810418031A CN 108924555 A CN108924555 A CN 108924555A
Authority
CN
China
Prior art keywords
video segment
rate control
frame
code rate
abr
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.)
Granted
Application number
CN201810418031.7A
Other languages
English (en)
Other versions
CN108924555B (zh
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.)
Shanghai Jiaotong University
Original Assignee
Shanghai Jiaotong University
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 Shanghai Jiaotong University filed Critical Shanghai Jiaotong University
Priority to CN201810418031.7A priority Critical patent/CN108924555B/zh
Publication of CN108924555A publication Critical patent/CN108924555A/zh
Application granted granted Critical
Publication of CN108924555B publication Critical patent/CN108924555B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/146Data rate or code amount at the encoder output
    • H04N19/149Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
    • 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/136Incoming video signal characteristics or properties
    • 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/167Position within a video image, e.g. region of interest [ROI]
    • 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/17Methods 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 an image region, e.g. an object
    • H04N19/172Methods 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 an image region, e.g. an object the region being a picture, frame or field
    • 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/17Methods 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 an image region, e.g. an object
    • H04N19/176Methods 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 an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明提供一种适用于视频切片的码率控制比特分配方法,其中:对于输入的视频切片,同时维护两个码率控制算法,即自适应比特率算法(ABR)和恒定比特率算法(CBR),两个码率控制算法分别为当前编码块提供了指导编码的码率。通过综合两种码率控制算法,并分析当前编码块在切片中的位置,指导当前编码块进行编码。本发明基于视频切片的应用场景,提出了新的基于视频切片的码率控制比特分配方法,该方法考虑在一个视频切片内部,帧间码率可以波动,但是切片与切片之间码率需要保持稳定的特性,充分利用CBR码率控制算法的码率平稳性和ABR码率控制算法的性能优越性,在保持视频切片内部编码性能的同时,控制切片编码码率的精准性。

Description

一种适用于视频切片的码率控制比特分配方法
技术领域
本发明涉及一种图像处理技术领域的方法,具体是一种适用于视频切片的码率控制比特分配方法。
背景技术
视频编码标准经过多年的发展,目前已经形成了比较成熟的基于块的混合编码框架。最新的HEVC高效视频编码标准已经开始商业应用。编码完成的视频一般通过网络传输到达客户端,OTT实时流式传输(Twitch,YouTube等公司使用)现在变得越来越流行。为了在不同网络条件下为媒体消费者提供更好的服务,编码器中的码率控制算法起着关键作用。在流式传输过程中,为了适应不同的下载带宽的客户,视频流以多比特率进行编码。为了适应网络波动,这些比特流被分割成固定周期的视频切片。理想情况下,每个切片的目标比特率等于用户的带宽乘以持续时间,以实现精确比特流切换的最佳性能。然而,自适应比特率算法(ABR)在实际编码器(如x265)中广泛使用的码率控制算法对视频切片的码率分配没有严格的限制。此外,大多数目前的码率控制研究都集中在降低编码失真或保持整个序列基于恒定比特率算法(CBR)的视频质量一致性,该算法在帧级比特分配中过于严格,损失了部分速率失真(RD)性能。因此,对于每个视频切片的精确码率控制,同时保持RD性能,需要一种适用于视频切片的码率控制方法。视频切片的码率控制的主要目标是在每个分段中实现目标比特率而不关心切片中的帧级比特率波动,同时拥有较好的编码性能。
目前没有发现同本发明类似技术的说明或报道,也尚未收集到国内外类似的资料。
发明内容
本发明针对现有视频编码中码率控制算法的缺陷,提供了一种适用于视频切片的码率控制比特分配方法。该方法结合CBR模型(HM参考软件中的R-λ模型)和ABR模型(x265编码器中的ABR模型)的优点,根据当前帧在视频切片中的位置,侧重使用不同模型提供的指导码率,该方法更加合理地结合了两种模型的优点,为视频切片的码率控制提供了一种合理的模型,使得编码后的码率在保持切片质量的前提下,降低切片与切片之间的码率波动。
为实现以上目的,本发明所述的适用于视频切片的码率控制比特分配方法,包括如下步骤:
S1,在编码当前帧之前,确定当前帧属于视频切片中的第几帧,即当前帧在视频切片中的位置,并确定视频切片的长度,即视频切片中的帧数;
S2,使用基于ABR模型下的码率控制比特分配方法,计算当前帧需要分配的比特数量,并根据比特数量得到当前帧级QP值QPx265-ABR
S3,使用基于CBR模型下的码率控制比特分配方法,计算当前帧需要分配的比特数量,并根据比特数量得到当前帧级QP值QPR-λ
S4,根据当前帧在视频切片中的位置以及视频切片中的帧数,将QP值QPx265-ABR和QPR-λ进行加权,得到最终的码率控制。
优选地,所述S2中,ABR模型下的码率控制比特分配方法采用ABR码率控制算法,ABR模型采用HEVC编码器x265中采用的ABR模型。
优选地,所述ABR码率控制算法,包括如下步骤:
S2.1,在编码当前帧之前,计算当前帧i的SATD(i);
S2.2,计算当前帧i的模糊复杂度blurred_complexity:
其中,cplxsum表示复杂度的总和,cplxcount表示加权累积帧数;cplxsum和cplxcount均为迭代变量,按照以下公式推导出来:
cplxsum(i+1)=cplxsum(i)×0.5+SATD(i)(2)
cplxcount(i+1)=cplxcount(i)×0.5+1(3)
S2.3,使用模糊复杂度计算当前帧i的qscale:
qscale(i)=blurred_complexity(i)(1-qcompress)(4)
其中,qcompress为常数0.6;
S2.4,对当前帧i的qscale进行多重校准,并通过溢出参数进行调整:
qscale′(i)=Pre_refine[qscale(i)]×overflow(5)
其中,qscale′(i)表示多重校准后的当前帧i的qscale,overflow表示编码到当前为止,编码码率的溢出值;所述编码码率的溢出值通过以下公式获取:
其中,total_bits表示所有编码帧的总编码比特,wanted_bits表示所有编码帧的总编码比特的总目标比特;abr_buffer表示与速率控制的缓冲区大小相关的动态值;
S2.4,从qscale′(i)计算QP值QPx265-ABR
其中,a=12,b=6,c=0.85,为经验性的数据。
优选地,所述S3中,使用基于CBR模型下的码率控制比特分配方法采用CBR码率控制算法,所述CBR模型采用HEVC参考软件HM中采用的R-λ码控模型。
优选地,所述CBR码率控制算法,包括如下步骤:
S3.1,确定帧级别的目标比特,由总目标比特分配给画面组之后的剩余比特数和每个帧的固定权重确定,如以下公式所示:
其中,TPicCurr表示当前帧的目标比特,TGOP表示当前GOP的目标比特,CodedGOP表示当前GOP已使用的比特数,∑NotcodedPicsωPic表示当前GOP未编码帧的总权重,ωPicCurr表示当前帧的权重;
S3.2,确定参数λ,通过公式(9)使用每像素比特数bpp以及α和β获得:
λ=α×bppβ(9)
其中,λ表示编码率失真优化中的拉格朗日乘子,α初始值为3.2003,β初始值为-1.367,bpp通过公式(10)获得:
其中,TPicCurr表示当前帧的目标比特,N表示帧中的像素数量;
得到λ之后,通过公式(11)导出QP值QPR-λ
QPR-λ=c1×lnλ+c2(11)
其中,c1和c2分别是4.2005和13.7122。
优选地,所述S4中,将QP值QPx265-ABR和QP值QPR-λ进行加权,生成最终的QP值QPProposed
QPProposed=α·QPR-λ+(1-α)·QPx265-ABR
其中,α表示QP值QPx265-ABR和QP值QPR-λ的权重,由当前帧在视频切片中的位置决定。
优选地,权重α按照以下公式确定:
其中,N表示视频切片中的帧数,i表示当前帧在视频切片中的帧序号,即当前帧在视频切片中的位置,m是一个介于1到N的常数。
优选地,对于视频切片中的前m帧,权重α线性地从1减小到0,在剩余的N-m帧,权重α线性地从0增加到1。
本发明提供的一种适用于视频切片的码率控制比特分配方法,其中:对于输入的视频切片,同时维护两个码率控制算法,即自适应比特率算法(ABR码率控制算法)和恒定比特率算法(CBR码率控制算法),两个码率控制算法分别为当前编码块提供了指导编码的码率。通过综合两种码率控制算法,并分析当前编码块(当前帧)在视频切片中的位置,指导当前编码块(当前帧)进行编码。本发明基于视频切片的应用场景,提出了新的基于视频切片的码率控制比特分配方法,该方法考虑在一个视频切片内部,帧间码率可以波动,但是切片与切片之间码率需要保持稳定的特性,充分利用CBR码率控制算法的码率平稳性和ABR码率控制算法的性能优越性,在保持视频切片内部编码性能的同时,控制切片编码码率的精准性。
与现有技术相比,本发明具有如下的有益效果:
本发明结合了CBR模型(CBR码率控制算法)和ABR模型(ABR码率控制算法)的优点,在切片的前半段侧重使用ABR模型,保持了视频质量,在切片的后半段侧重使用CBR模型,控制了视频切片的码率稳定,使得针对视频切片的应用场景,编码器在保持编码性能的前提下大大降低了切片与切片之间的码率波动。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1是本发明的基于视觉掩盖效应的码率控制比特分配方法的流程图;
图2(a)是720p、2Mbps码率下x265默认码率控制方法和提出的码率控制方法切片之间码率波动对比;
图2(b)是480p、1Mbps码率下x265默认码率控制方法和提出的码率控制方法切片之间码率波动对比;
图2(c)是360p、500kbps码率下x265默认码率控制方法和提出的码率控制方法切片之间码率波动对比;
图2(d)是240p、250kbps码率下x265默认码率控制方法和提出的码率控制方法切片之间码率波动对比。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。
实施例
本实施例提供了一种适用于视频切片的码率控制比特分配方法,包括如下步骤:
①在编码当前帧之前,确定当前帧属于视频切片中的第几帧(位置),并确定视频切片的长度(帧数)。
②使用基于ABR模型下的码率控制比特分配方法,计算当前帧需要分配的比特数量,并根据比特数量得到当前帧级QP值(QPx265-ABR)。
③使用基于CBR模型下的码率控制比特分配方法,计算当前帧需要分配的比特数量,并根据比特数量得到当前帧级QP值(QPR-λ)。
④根据②和③的结果和①的参数(位置即帧数),将当前帧按照ABR码率控制算法和CBR码率控制算法生成的QP值进行加权,用于最终的码率控制。
所述②和③中,为各个编码单元分配目标比特时,该编码器同时在维护了两个码控算法,包括ABR码率控制算法(简称ABR算法)和CBR码率控制算法(简称CBR算法)。其中ABR算法为最广泛应用的HEVC编码器x265中采用的ABR模型,而CBR算法是HEVC参考软件HM中采用的R-λ码控模型。
所述④中,将当前帧按照ABR算法生成的QP值QPx265-ABR和按照CBR算法生成的QP值QPR-λ进行加权时,生成最终的QP值QPProposed时,最终的QP由以下公式计算得到:
QPProposed=α×QPR-λ+(1-α)×QPx265-ABR
其中α由当前帧在视频切片中的位置决定,按照ABR算法生成的QP值和按照CBR算法生成的QP值的权重α按照以下公式确定:
其中N代表一个视频切片中的帧数,i表示当前帧在一个切片中的帧序号,m是一个介于1到N常数。
本实施例基于视频切片的应用场景,提出了新的基于视频切片的码率控制比特分配方法。该方法考虑充分利用了视频切片内部帧间码率可以波动,但是切片与切片之间码率需要保持稳定的特性,结合了CBR码率控制算法的码率平稳性和ABR码率控制算法的性能优越性,在保持视频切片内部编码性能的同时,控制切片编码码率的精准性。
下面对本实施例的技术方案进一步详细描述。
本实施例提供的一种适用于视频切片的码率控制比特分配方法,具体设计思路如下:
S1,在编码当前帧之前,确定当前帧属于视频切片中的第几帧(即当前帧在视频切片中所处的位置),并确定视频切片的长度(即视频切片的帧数)。
S2,使用基于ABR模型下的码率控制比特分配方法,计算当前帧需要分配的比特数量,并根据比特数量得到当前帧级QP值。
S3,使用基于CBR模型下的码率控制比特分配方法,计算当前帧需要分配的比特数量,并根据比特数量得到当前帧级QP值。
S4,根据S2和S3中得到的结果(即ABR模型下的当前帧级QP值和CBR模型下的当前帧级QP值)和S1中得到的参数(即当前帧在视频切片中所处的位置和视频切片的帧数),将ABR模型下的当前帧级QP值和CBR模型下的当前帧级QP值进行加权,用于最终的码率控制。
其中,S1是当前帧的一些信息获取(如当前帧在视频切片中所处的位置),S2和S3是根据x265编码器的ABR模型和HM编码器的CBR模型生成当前帧编码需要的QP值,S4是将两种模型生成的QP值根据当前帧的信息进行整合,生成新的QP值进行编码。
以下具体应用实例将上述方法应用到最新HEVC编码框架中,具体操作流程如图1所示。
下面先介绍x265编码器的ABR模型和HM编码器的CBR模型中计算帧级QP的过程,再介绍将两个模型的输出QP值整合方法以及比特分配过程。
1.ABR模型(x265编码器)
1)在编码帧之前计算当前帧(第i帧)的SATD(i)。
2)计算当前帧(第i帧)的模糊复杂度blurred_complexity:
其中,cplxsum表示复杂度的总和,cplxcount表示加权累积帧数。cplxsum和cplxcount都是迭代变量,可以按照以下公式推导出来:
cplxsum(i+1)=cplxsum(i)×0.5+SATD(i)(2)
cplxcount(i+1)=cplxcount(i)×0.5+1(3)
3)使用模糊复杂度计算当前帧(第i帧)的qscale:
qscale(i)=blurred_complexity(i)(1-qcompress)(4)
其中,qcompress是常数0.6。
为了使QP值更精确,当前帧(第i帧)的qscale后续要经过多重校准,其中最重要的一步是通过溢出参数进行调整:
qscale′(i)=Pre_refine[qscale(i)]×overflow(5)
其中,qscale′(i)表示多重校准后的当前帧(第i帧)的qscale,overflow表示编码到当前为止,编码码率的溢出值;该溢出值可以通过以下公式获取:
其中,total_bits表示所有编码帧的总编码比特,而wanted_bits是它们的总目标比特。参数abr_buffer是与速率控制的缓冲区大小相关的动态值。
4)从qscale′(i)计算QP值,即QPx265-ABR
其中,a=12,b=6和c=0.85,这是经验性的数据。最终,QP值用于后续编码。
2.CBR模型(HM编码器)
R-λ模型是用于HEVC的众所周知的速率控制模型,其具有比传统R-Q模型更好的性能。它用于HEVC参考软件(HM)中,用于CBR(恒定比特率)速率控制。λ是RDO中使用的R-D曲线的梯度。证明了码率(R)和λ参数在HEVC中高度相关,并且R-λ模型试图获得并维持它们之间的关系。基于R-λ模型的速率控制方法试图确保帧级别的比特率准确性。基于ABR和R-λ模型的CBR速率控制存在若干差异。在ABR中,比特率调整由所有已编码控制,不考虑未编码帧。而在基于R-λ模型的CBR中,帧级别的目标比特由总目标比特分配给GOP(画面组)之后的剩余比特数和每个帧的固定权重确定,如以下公式所示:
其中,TPicCurr表示当前帧的目标比特,TGOP表示当前GOP的目标比特,CodedGOP表示当前GOP已使用的比特数,∑NotcodedPicsωPic表示当前GOP未编码帧的总权重,ωPicCurr表示当前帧的权重;
参数λ可以通过公式(9)使用每像素比特数(bpp)以及α和β获得:
λ=α×bppβ(9)
其中,λ表示编码率失真优化中的拉格朗日乘子,α初始值为3.2003,β初始值为-1.367,bpp可以通过公式(10)获得:
其中,TPicCurr表示当前帧的目标比特,N表示帧中的像素数量;得到λ之后,可以通过公式(11)导出帧QP值,即QPR-λ
QPR-λ=c1×lnλ+c2(11)
其中,c1和c2分别是4.2005和13.7122。
3.模型整合方法
x265中的ABR算法和R-λ模型都不能在实现精确的视频切片码率控制的同时保持令人满意的RD性能。一方面,x265中的传统ABR算法在目标比特率周围产生全局平均比特率,而不会保证视频切片比特的稳定性。另一方面,基于R-λ模型的HEVC CBR码率控制在帧级别中具有相对精确的比特率,这在基于切片的视频编码中不是必需的。为了达到本发明的目的,本具体应用实例将传统的ABR算法和R-λ CBR模型相结合,增加了基于视频切片的码率控制算法优化。
首先,在一个编码过程中分别执行传统的ABR算法和R-λ模型CBR算法,并获得按照上述两种算法得到的量化参数QPx265-ABR和QPR-λ。这两个QP值用于联合决定当前帧的最终QP(QPProposed):
QPProposed=α×QPR-λ+(1-α)×QPx265-ABR(12)
其中,α为调节两种算法的权重,由以下公式确定:
其中,N代表一个视频切片中的帧数(即视频切片的长度),i表示当前帧在视频切片中的帧序号,m是一个介于1到N常数。对于视频切片中的前m帧,权重α线性地从1减小到0,在剩余的N-m帧,权重α线性地从0增加到1。通过这种方式,可以使得视频切片之间,码率控制的模型权重平滑过渡,可以避免α的突然变化。
4.实施条件与结果
本具体应用实例提出的适用于视频切片的码率控制比特分配方法基于x265-2.4版本,视频切片持续时间被设置为120帧(2秒)。公式(13)中的参数m为20。为了测试在场景变化下该方法的视频切片码率控制性能,实验部分选取了部分MJPEG Programs采用的测试序列,包括CSGO、EuroTruckSimulator2、GTAV和WITCHER3,将这些序列级联之后,进行降采样,并根据实际应用场景,对不同分辨率序列采用不同的码率进行实际测试。
表1所有测试序列的目标码率设置
x265-2.4编码器作为测试基准,本实验测试在x265编码器引入新的ABR+CBR联合码率控制模型替换默认的ABR模型之后,测试相对于原始码率控制模型的性能。提出模型和原始模型的视频切片码率波动情况如图2(a)至图2(d)所示,可以看出,相对于原始ABR码率控制算法,提出的联合码率控制算法能够比较稳定地控制切片的码率。使用公式(14)中的BitSAD来衡量视频切片编码码率精准性,以及编码码率的波动程度BitSAD:
BitSAD=∑|真实切片码率-该切片目标码率|(14)
测试结果如表2所示。
表2测试结果
根据实验结果,在整个视频序列PSNR和平均QP的变化可以忽略不计的前提下,所提出的算法实现了平均46%的比特率波动降低。
综上,本实施例基于视频切片的应用场景,提出了新的适用于视频切片的码率控制比特分配方法,该方法考虑在一个视频切片内部,帧与帧之间码率可以波动,但是切片与切片之间码率需要保持稳定的特性,充分结合了CBR码率控制算法的码率平稳性和ABR码率控制算法的性能优越性,在保持视频切片内部编码性能的同时,控制切片编码码率的精准性。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。

Claims (8)

1.一种适用于视频切片的码率控制比特分配方法,其特征在于:包括如下步骤:
S1,在编码当前帧之前,确定当前帧属于视频切片中的第几帧,即当前帧在视频切片中的位置,并确定视频切片的长度,即视频切片中的帧数;
S2,使用基于ABR模型下的码率控制比特分配方法,计算当前帧需要分配的比特数量,并根据比特数量得到当前帧级QP值QPx265-ABR
S3,使用基于CBR模型下的码率控制比特分配方法,计算当前帧需要分配的比特数量,并根据比特数量得到当前帧级QP值QPR-λ
S4,根据当前帧在视频切片中的位置以及视频切片中的帧数,将QP值QPx265-ABR和QPR-λ进行加权,得到最终的码率控制。
2.根据权利要求1所述的一种适用于视频切片的码率控制比特分配方法,其特征在于:所述S2中,ABR模型下的码率控制比特分配方法采用ABR码率控制算法,ABR模型采用HEVC编码器x265中采用的ABR模型。
3.根据权利要求2所述的一种适用于视频切片的码率控制比特分配方法,其特征在于:所述ABR码率控制算法,包括如下步骤:
S2.1,在编码当前帧之前,计算当前帧i的SATD(i);
S2.2,计算当前帧i的模糊复杂度blurred_complexity:
其中,cplxsum表示复杂度的总和,cplxcount表示加权累积帧数;cplxsum和cplxcount均为迭代变量,按照以下公式推导出来:
cplxsum(i+1)=cplxsum(i)×0.5+SATD(i)(2)
cplxcount(i+1)=cplxcount(i)×0.5+1(3)
S2.3,使用模糊复杂度计算当前帧i的qscale:
qscale(i)=blurred_complexity(i)(1-qcompress)(4)
其中,qcompress为常数0.6;
S2.4,对当前帧i的qscale进行多重校准,并通过溢出参数进行调整:
qscale′(i)=Pre_refine[qscale(i)]×overflow(5)
其中,qscale′(i)表示多重校准后的当前帧i的qscale,overflow表示编码到当前为止,编码码率的溢出值;所述编码码率的溢出值通过以下公式获取:
其中,total_bits表示所有编码帧的总编码比特,wanted_bits表示所有编码帧的总编码比特的总目标比特;abr_buffer表示与速率控制的缓冲区大小相关的动态值;
S2.4,从qscale′(i)计算QP值QPx265-ABR
其中,a=12,b=6,c=0.85,为经验性的数据。
4.根据权利要求1所述的一种适用于视频切片的码率控制比特分配方法,其特征在于:所述S3中,使用基于CBR模型下的码率控制比特分配方法采用CBR码率控制算法,所述CBR模型采用HEVC参考软件HM中采用的R-λ码控模型。
5.根据权利要求4所述的一种适用于视频切片的码率控制比特分配方法,其特征在于:所述CBR码率控制算法,包括如下步骤:
S3.1,确定帧级别的目标比特,由总目标比特分配给画面组之后的剩余比特数和每个帧的固定权重确定,如以下公式所示:
其中,TPicCurr表示当前帧的目标比特,TGOP表示当前GOP的目标比特,CodedGOP表示当前GOP已使用的比特数,∑NotcodedPicsωPic表示当前GOP未编码帧的总权重,ωPicCurr表示当前帧的权重;
S3.2,确定参数λ,通过公式(9)使用每像素比特数bpp以及α和β获得:
λ=α×bppβ(9)
其中,λ表示编码率失真优化中的拉格朗日乘子,α初始值为3.2003,β初始值为-1.367,bpp通过公式(10)获得:
其中,TPicCurr表示当前帧的目标比特,N表示帧中的像素数量;
得到λ之后,通过公式(11)导出QP值QPR-λ
QPR-λ=c1×lnλ+c2(11)
其中,c1和c2分别是4.2005和13.7122。
6.根据权利要求1所述的一种适用于视频切片的码率控制比特分配方法,其特征在于:所述S4中,将QP值QPx265-ABR和QP值QPR-λ进行加权,生成最终的QP值QPProposed
QPProposed=α·QPR-λ+(1-α)·QPx265-ABR
其中,α表示QP值QPx265-ABR和QP值QPR-λ的权重,由当前帧在视频切片中的位置决定。
7.根据权利要求6所述的一种适用于视频切片的码率控制比特分配方法,其特征在于:权重α按照以下公式确定:
其中,N表示视频切片中的帧数,i表示当前帧在视频切片中的帧序号,即当前帧在视频切片中的位置,m是一个介于1到N的常数。
8.根据权利要求7所述的一种适用于视频切片的码率控制比特分配方法,其特征在于:对于视频切片中的前m帧,权重α线性地从1减小到0,在剩余的N-m帧,权重α线性地从0增加到1。
CN201810418031.7A 2018-05-04 2018-05-04 一种适用于视频切片的码率控制比特分配方法 Active CN108924555B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810418031.7A CN108924555B (zh) 2018-05-04 2018-05-04 一种适用于视频切片的码率控制比特分配方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810418031.7A CN108924555B (zh) 2018-05-04 2018-05-04 一种适用于视频切片的码率控制比特分配方法

Publications (2)

Publication Number Publication Date
CN108924555A true CN108924555A (zh) 2018-11-30
CN108924555B CN108924555B (zh) 2019-12-27

Family

ID=64403881

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810418031.7A Active CN108924555B (zh) 2018-05-04 2018-05-04 一种适用于视频切片的码率控制比特分配方法

Country Status (1)

Country Link
CN (1) CN108924555B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111083483A (zh) * 2019-12-31 2020-04-28 北京奇艺世纪科技有限公司 一种视频编码码率确定方法、装置、电子设备及存储介质
CN111479113A (zh) * 2020-04-15 2020-07-31 腾讯科技(深圳)有限公司 码率控制方法和装置、存储介质和电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2227020A1 (en) * 2007-09-28 2010-09-08 Dolby Laboratories Licensing Corporation Video compression and transmission techniques
CN103975601A (zh) * 2011-10-17 2014-08-06 谷歌公司 视频编码的速率-失真-复杂性优化

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2227020A1 (en) * 2007-09-28 2010-09-08 Dolby Laboratories Licensing Corporation Video compression and transmission techniques
CN103975601A (zh) * 2011-10-17 2014-08-06 谷歌公司 视频编码的速率-失真-复杂性优化

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
林艺: "面向混合场景屏幕图像序列的H.264实时编码码率控制技术的设计与应用", 《上海交通大学硕士学位论文》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111083483A (zh) * 2019-12-31 2020-04-28 北京奇艺世纪科技有限公司 一种视频编码码率确定方法、装置、电子设备及存储介质
CN111479113A (zh) * 2020-04-15 2020-07-31 腾讯科技(深圳)有限公司 码率控制方法和装置、存储介质和电子设备
CN111479113B (zh) * 2020-04-15 2021-04-09 腾讯科技(深圳)有限公司 码率控制方法和装置、存储介质和电子设备

Also Published As

Publication number Publication date
CN108924555B (zh) 2019-12-27

Similar Documents

Publication Publication Date Title
US8565301B2 (en) Quasi-constant-quality rate control with look-ahead
JP5351040B2 (ja) 映像符号化規格に対応した映像レート制御の改善
US6731685B1 (en) Method and apparatus for determining a bit rate need parameter in a statistical multiplexer
DK2382784T3 (en) Video coding with multi-bit-rate using variable-bit-rate and dynamic resolution for adaptive video streaming
US6587508B1 (en) Apparatus, method and computer program product for transcoding a coded moving picture sequence
US8406297B2 (en) System and method for bit-allocation in video coding
KR101518358B1 (ko) 비디오 코딩에서 프레임 복잡성, 버퍼 레벨 및 인트라 프레임들의 위치를 이용하는 버퍼 기반의 비율 제어
US8355444B2 (en) Encoding of a plurality of information signals using a joint computing power
CN102630013B (zh) 基于场景切换的码率控制视频压缩方法和装置
CN108810545B (zh) 用于视频编码的方法、装置、计算机可读介质及电子设备
CN108200431B (zh) 一种视频编码码率控制帧层比特分配方法
Van der Auwera et al. Implications of smoothing on statistical multiplexing of H. 264/AVC and SVC video streams
EP2027727A1 (en) Method and apparatus for adaptively determining a bit budget for encoding video pictures
KR19990042668A (ko) 다중 비디오 전송을 위한 비디오 부호화 장치 및 방법
Wang et al. Bit allocation and constraints for joint coding of multiple video programs
US20050226321A1 (en) Method and system for two-pass video encoding using sliding windows
He et al. Linear rate control and optimum statistical multiplexing for H. 264 video broadcast
KR100841268B1 (ko) 비디오 데이터의 품질을 모니터링하기 위한 방법 및 디바이스, 및 비디오 데이터의 코딩용 시스템
Nguyen et al. An evaluation of tile selection methods for viewport-adaptive streaming of 360-degree video
CN108924555A (zh) 一种适用于视频切片的码率控制比特分配方法
Wang et al. Learning-based rate control for video-based point cloud compression
KR100588795B1 (ko) 부호화 장치 및 부호화 방법
Yang et al. A joint rate control scheme for H. 264 encoding of multiple video sequences
Wang et al. Rate control for MPEG transcoders
CA2392546C (en) Video transmission of multiple program signals with encoded bit rates determined by program complexity

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
GR01 Patent grant
GR01 Patent grant