用于P帧图像量化步长的估计方法及装置与流程

文档序号:17483182发布日期:2019-04-20 06:35阅读:219来源:国知局
用于P帧图像量化步长的估计方法及装置与流程

本发明实施例涉及视频压缩技术领域,尤其涉及一种用于p帧图像量化步长的估计方法及装置。



背景技术:

随着互联网及数字多媒体技术的发展,视频应用已经成为互联网及数字多媒体领域的最大热点。视频应用中主要问题在于视频编解码,尤其是视频编码过程,需要将原图像通过编码处理,压缩为占用空间较小的编码图像以进行网络存储或者网络传输。

在编码过程中,如果对每个编码单元的量化参数(quantizationparameter,简称qp)进行固定取值,在码率受限应用场景下,实际编码产生码率会严重偏离目标码率,并且降低视频图像整体编码的质量。

因此,现在亟需一种用于p帧图像量化步长的估计方法及装置来解决上述问题。



技术实现要素:

针对现有技术存在的问题,本发明实施例提供一种用于p帧图像量化步长的估计方法及装置。

第一方面,本发明实施例提供了一种用于p帧图像量化步长的估计方法,包括:

对原始图像序列进行欠采样处理,得到欠采样图像序列;

对所述欠采样图像序列进行运动估计算法处理,得到所述欠采样图像序列中每一帧图像的第一运动预测代价值,并对所述第一运动预测代价值进行调整,得到调整后的第二运动预测代价值;

获取所述原始图像序列的p帧图像运动预测代价值和对应第一运动预测代价值之间的第一比值,并获取所述原始图像序列的b帧图像运动预测代价值和对应第一运动预测代价值之间的第二比值;

根据所述第一运动预测代价值、所述第二运动预测代价值、所述第一比值和所述第二比值,估算所述原始图像序列的p帧图像量化步长,以对原始图像进行编码。

第二方面,本发明实施例提供了一种用于p帧图像量化步长的估计装置,包括:

对原始图像序列进行欠采样处理,得到欠采样图像序列;

对所述欠采样图像序列进行运动估计算法处理,得到所述欠采样图像序列中每一帧图像的第一运动预测代价值,并对所述第一运动预测代价值进行调整,得到调整后的第二运动预测代价值;

获取所述原始图像序列的p帧图像运动预测代价值和对应第一运动预测代价值之间的第一比值,并获取所述原始图像序列的b帧图像运动预测代价值和对应第一运动预测代价值之间的第二比值;

根据所述第一运动预测代价值、所述第二运动预测代价值、所述第一比值和所述第二比值,估算所述原始图像序列的p帧图像量化步长,以对原始图像进行编码。

第三方面,本发明实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所提供的方法的步骤。

第四方面,本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所提供的方法的步骤。

本发明实施例提供的一种用于p帧图像量化步长的估计方法及装置,通过获取欠采样图像的运动预测代价,在目标码率下,估计p帧图像的量化步长,以用于视频编码,使得后续帧的编码质量以及码率的准确度提高,保证了视频图像整体编码的质量。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的用于p帧图像量化步长的估计方法的流程示意图;

图2为本发明实施例提供的用于p帧图像量化步长的估计装置的结构示意图;

图3为本发明实施例提供的电子设备结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在视频编码过程中,qp的大小直接影响到编码的质量及压缩效率,qp越大,编码图像与原图像的失真越大,编码的质量越差;qp越小,编码图像的编码码率越大,导致编码图像的占用空间越大,压缩效率越低。由于p帧图像量化步长影响后续帧的编码质量以及码率的准确度,因此,通过获取p帧图像量化步长,可以确定qp的基础量化参数,从而进行视频编码。然而,在场景切换处编码代价变化剧烈的情况下,现有技术难以通过以往帧的编码复杂度对p帧图像的量化步长进行估计。

图1为本发明实施例提供的用于p帧图像量化步长的估计方法的流程示意图,如图1所示,本发明实施例提供了一种用于p帧图像量化步长的估计方法,包括:

步骤101,对原始图像序列进行欠采样处理,得到欠采样图像序列;

步骤102,对所述欠采样图像序列进行运动估计算法处理,得到所述欠采样图像序列中每一帧图像的第一运动预测代价值,并对所述第一运动预测代价值进行调整,得到调整后的第二运动预测代价值;

步骤103,获取所述原始图像序列的p帧图像运动预测代价值和对应第一运动预测代价值之间的第一比值,并获取所述原始图像序列的b帧图像运动预测代价值和对应第一运动预测代价值之间的第二比值;

步骤104,根据所述第一运动预测代价值、所述第二运动预测代价值、所述第一比值和所述第二比值,估算所述原始图像序列的p帧图像量化步长,以对原始图像进行编码。

在本发明实施例中,首先通过步骤101,对原始图像序列进行欠采样处理,得到欠采样图像序列。具体地,待编码的原始图像构成的序列集合ps={pi|0≤i≤n},其中,pj为当前被编码p帧图像,p0为最近的前向p帧图像,因此,集合{pk|0<k<j}全部为b帧图像,即pj的前导b帧图像,集合ps中的其它图像为p帧或b帧的后续图像,并且这些后续帧的类型已确定。然后对集合ps进行4:1的欠采样处理,得到欠采样图像序列

通过步骤102,对所述欠采样图像序列进行运动估计算法处理,得到所述欠采样图像序列中每一帧图像的第一运动预测代价值,并对所述第一运动预测代价值进行调整,得到调整后的第二运动预测代价值。在本发明实施例中,将欠采样图像序列中每一帧图像划分成多个8x8像素的图像块,每个图像块表示为其中上标i表示当前块属于欠采样图像序列中的帧,下标m表示横坐标,下标n表示纵坐标。进一步地,对每个图像块进行运动预测,其中,p帧图像以其最近的前向p帧图像作为参考帧进行单向预测,b帧图像以其最近的前后p帧为参考帧进行双向预测,从而获取欠采样图像序列中每个图像块的运动预测代价值然后,通过cu-tree算法获取每个图像块的量化参数调整值为非正值。因此,得到每个图像块调整后的运动预测代价值进一步地,获取欠采样图像序列中每一帧的运动预测代价值,即第一运动预测代价值第二运动预测代价值

然后,通过步骤103,获取所述原始图像序列的p帧图像运动预测代价值和对应第一运动预测代价值之间的第一比值,并获取所述原始图像序列的b帧图像运动预测代价值和对应第一运动预测代价值之间的第二比值。在本发明实施例中,首先获取已知原始图像序列中的原始p帧图像运动预测代价值和原始b帧图像运动预测代价值,且原始p帧图像运动预测代价值和原始b帧图像运动预测代价值为真实值;然后,将原始p帧图像运动预测代价值与其对应的第一运动预测代价值之间的比例定义为θp,将原始b帧图像运动预测代价值与其对应的第一运动运动预测代价值之间的比例定义为θb,对应的公式为:

最后,通过步骤104,根据所述第一运动预测代价值、所述第二运动预测代价值、所述第一比值和所述第二比值,估算所述原始图像序列的p帧图像量化步长,以对原始图像进行编码。

在本发明实施例中,以待估计p帧图像所在的画面组进行说明,该画面组对应的序列集合为{pk|1≤k≤j},在集合序列中,pj为待估计p帧图像,其余为待估计p帧图像的前导b帧图像。根据p帧图像量化步长的估算公式:

其中,j表示第j个待估计p帧图像,k表示待估计p帧图像的第k个前导b帧图像,rc表示目标码率,fd表示一帧图像的播放时长,例如当帧率为50帧/秒,fd等于0.02,θp表示所述第一比值,θb表示所述第二比值,表示待估计p帧图像的第二运动预测代价值,表示待估计p帧图像的第一运动预测代价值,表示前导b帧图像的第二运动预测代价值,τ表示借贷强度变量,是在编码过程中实时更新的参数。

在本发明实施例中,在估算得到当前画面组的p帧图像量化步长之后,对借贷强度变量τ进行更新处理,公式为:

其中,分别表示上一个画面组中p帧图像的第一运动预测代价值和第二运动预测代价值,τt-1表示上一个画面组的借贷强度变量,δq表示调整步长,其正负符号等同于当前实际编码码率与目标码率之间偏差的正负符号。在得到p帧图像的量化步长之后,对p帧图像和对应的前导b帧图像进行编码处理。另外,在对当前画面组进行编码之后,将本次估计得到的p帧图像作为下一个画面组的待估计p帧图像的前向p帧图像,以对下一个p帧图像进行量化步长估计,从而对原始图像进行编码。

本发明实施例通过获取欠采样图像的运动预测代价,在目标码率下,估计p帧图像的量化步长,以用于视频编码,使得后续帧的编码质量以及码率的准确度提高,保证了视频图像整体编码的质量。

在上述实施例的基础上,在所述对原始图像序列进行欠采样处理,得到欠采样图像序列之前,所述方法还包括:

将所述原始图像序列分成多个画面组,每个画面组包括待估计p帧图像、前导b帧图像和前向p帧图像。

在本发明实施例中,在对在原始图像序列进行欠采样处理之前,将原始图像序列集合按图像序列顺序划分成多个画面组,每个画面组包括当前待估计p帧图像,当前待估计p帧图像的最近前向p帧图像和当前待估计p帧图像的前导b帧图像。在本发明实施例中,按照集合序列顺序,依次对画面组中的p帧图像进行量化步长估计,并将本次估计量化步长的p帧图像作为下一个画面组的前向p帧图像,以使得后续帧的编码质量提高。

在上述实施例的基础上,所述对所述欠采样图像序列进行运动估计算法处理,得到所述欠采样图像序列中每一帧图像的第一运动预测代价值,并对所述第一运动预测代价值进行调整,得到调整后的第二运动预测代价值,包括:

将所述欠采样图像序列中每一帧图像划分成多个8x8像素的图像块;

对所述图像块进行运动估计算法处理,得到所述图像块的第三运动预测代价值;

根据cu-tree算法获取所述图像块的量化参数调整值,以对所述第三运动预测代价值进行调整,得到第四运动预测代价值;

根据所述第三运动预测代价值得到所述第一运动预测代价值,根据所述第四运动预测代价值得到所述第二运动预测代价值。

在本发明实施例中,将欠采样图像序列中每一帧图像划分成多个8x8像素的图像块,每个图像块表示为其中上标i表示当前块属于欠采样图像序列中的帧,下标m表示横坐标,下标n表示纵坐标。进一步地,对每个图像块进行运动预测,其中,p帧图像以其最近的前向p帧图像作为参考帧进行单向预测,b帧图像以其最近的前后p帧为参考帧进行双向预测,从而获取欠采样图像序列中每个图像块的运动预测代价值然后,通过cu-tree算法获取每个图像块的量化参数调整值为非正值。因此,得到每个图像块调整后的运动预测代价值进一步地,获取欠采样图像序列中每一帧的运动预测代价值,即第一运动预测代价值第二运动预测代价值

在上述实施例的基础上,在所述根据所述第一运动预测代价值、所述第二运动预测代价值、所述第一比值和所述第二比值,估算所述原始图像序列的p帧图像量化步长,以对原始图像进行编码之后,所述方法还包括:

根据最优梯度下降法对所述第一比值和所述第二比值进行更新处理,以对后续p帧图像进行量化步长估计,其中,所述第一比值的更新公式为:

所述第二比值的更新公式:

其中,ct-1表示上一个画面组中p帧图像的原始图像运动预测代价值,表示上一个画面组中p帧图像的第一运动预测代价值,表示上一个画面组的第一比值,表示上一个画面组的第二比值,δ为正实数,表示调整步长。

在上述实施例的基础上,在所述根据所述第一运动预测代价值、所述第二运动预测代价值、所述第一比值和所述第二比值,估算所述原始图像序列的p帧图像量化步长之后,所述方法还包括:

根据p帧图像的量化步长得到基础量化参数;

根据每个编码单元的量化参数偏移量和基础量化参数之和,得到每个编码单元的编码量化参数,以对原始图像进行编码,所述量化参数偏移量根据cu-tree算法得到。

在本发明实施例中,视频编码的码率控制算法是通过调整基础编码单元的量化参数qp,而码率控制算法的优化目标是在指定的信道带宽下达到最小的率失真代价,对应的公式为:

s.t.∑ri(qpi)=rc;

其中,qpi是第i个编码单元(cui)的量化参数,di(qpi)和ri(qpi)分别表示为qpi下cui的失真和码率,λ为拉格朗日因子,rc为目标码率。在一个图像帧中,qpi最大值为基础量化参数qpmax,即:

qpmax=maxiqpi;

在本发明实施例中,通过p帧量化步长的估算公式计算得到的p帧图像的量化步长,即为基础量化参数qpmax所对应的量化步长。然后,根据cu-tree算法得到编码单元的量化参数偏移量δqpi,通过公式:

qpi=δqpi+qpmax;

得到编码单元的量化参数,以对原始图像进行编码,从而提高了编码质量。

图2为本发明实施例提供的用于p帧图像量化步长的估计装置的结构示意图,如图2所示,本发明实施例提供了一种用于p帧图像量化步长的估计装置,包括:欠采样模块201、第一处理模块202、第二处理模块203和量化步长估算模块204,其中,欠采样模块201用于对原始图像序列进行欠采样处理,得到欠采样图像序列;第一处理模块202用于对所述欠采样图像序列进行运动估计算法处理,得到所述欠采样图像序列中每一帧图像的第一运动预测代价值,并对所述第一运动预测代价值进行调整,得到调整后的第二运动预测代价值;第二处理模块203用于获取所述原始图像序列的p帧图像运动预测代价值和对应第一运动预测代价值之间的第一比值,并获取所述原始图像序列的b帧图像运动预测代价值和对应第一运动预测代价值之间的第二比值;量化步长估算模块204用于根据所述第一运动预测代价值、所述第二运动预测代价值、所述第一比值和所述第二比值,估算所述原始图像序列的p帧图像量化步长,以对原始图像进行编码。

本发明实施例提供的一种用于p帧图像量化步长的估计装置,通过获取欠采样图像的运动预测代价,在目标码率下,估计p帧图像的量化步长,以用于视频编码,使得后续帧的编码质量以及码率的准确度提高,保证了视频图像整体编码的质量。

在上述实施例的基础上,所述装置还包括:分组模块,用于将所述原始图像序列分成多个画面组,每个画面组包括待估计p帧图像、前导b帧图像和前向p帧图像。

在上述实施例的基础上,所述第一处理模块202包括:块拆分单元、块运动预测单元、块运动调整单元和图像运动预测单元,其中,块拆分单元用于将所述欠采样图像序列中每一帧图像划分成多个8x8像素的图像块;块运动预测单元用于对所述图像块进行运动估计算法处理,得到所述图像块的第三运动预测代价值;块运动调整单元用于根据cu-tree算法获取所述图像块的量化参数调整值,以对所述第三运动预测代价值进行调整,得到第四运动预测代价值;图像运动预测单元用于根据所述第三运动预测代价值得到所述第一运动预测代价值,根据所述第四运动预测代价值得到所述第二运动预测代价值。

本发明实施例提供的装置是用于执行上述各方法实施例的,具体流程和详细内容请参照上述实施例,此处不再赘述。

图3为本发明实施例提供的电子设备结构示意图,如图3所示,该电子设备可以包括:处理器(processor)301、通信接口(communicationsinterface)302、存储器(memory)303和通信总线304,其中,处理器301,通信接口302,存储器303通过通信总线304完成相互间的通信。处理器301可以调用存储器303中的逻辑指令,以执行如下方法:对原始图像序列进行欠采样处理,得到欠采样图像序列;对所述欠采样图像序列进行运动估计算法处理,得到所述欠采样图像序列中每一帧图像的第一运动预测代价值,并对所述第一运动预测代价值进行调整,得到调整后的第二运动预测代价值;获取所述原始图像序列的p帧图像运动预测代价值和对应第一运动预测代价值之间的第一比值,并获取所述原始图像序列的b帧图像运动预测代价值和对应第一运动预测代价值之间的第二比值;根据所述第一运动预测代价值、所述第二运动预测代价值、所述第一比值和所述第二比值,估算所述原始图像序列的p帧图像量化步长,以对原始图像进行编码。

此外,上述的存储器303中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

本发明实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:对原始图像序列进行欠采样处理,得到欠采样图像序列;对所述欠采样图像序列进行运动估计算法处理,得到所述欠采样图像序列中每一帧图像的第一运动预测代价值,并对所述第一运动预测代价值进行调整,得到调整后的第二运动预测代价值;获取所述原始图像序列的p帧图像运动预测代价值和对应第一运动预测代价值之间的第一比值,并获取所述原始图像序列的b帧图像运动预测代价值和对应第一运动预测代价值之间的第二比值;根据所述第一运动预测代价值、所述第二运动预测代价值、所述第一比值和所述第二比值,估算所述原始图像序列的p帧图像量化步长,以对原始图像进行编码。

本发明实施例提供一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储服务器指令,该计算机指令使计算机执行上述实施例所提供的用于p帧图像量化步长的估计方法,例如包括:对原始图像序列进行欠采样处理,得到欠采样图像序列;对所述欠采样图像序列进行运动估计算法处理,得到所述欠采样图像序列中每一帧图像的第一运动预测代价值,并对所述第一运动预测代价值进行调整,得到调整后的第二运动预测代价值;获取所述原始图像序列的p帧图像运动预测代价值和对应第一运动预测代价值之间的第一比值,并获取所述原始图像序列的b帧图像运动预测代价值和对应第一运动预测代价值之间的第二比值;根据所述第一运动预测代价值、所述第二运动预测代价值、所述第一比值和所述第二比值,估算所述原始图像序列的p帧图像量化步长,以对原始图像进行编码。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1