一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

解码图像缓存区的管理方法和装置与流程

2022-03-19 22:14:37 来源:中国专利 TAG:


1.本公开涉及图像处理技术领域,更具体地说,涉及一种解码图像缓存区的管理方法和装置。


背景技术:

2.解码图像缓存区(decoded picture buffer,dpb)是视频编码系统中存放解码图像的缓存区。视频编码标准对dpb的大小做了限制,当dpb存放的图像数已达到所规定的大小时,需要从dpb中移出图像,才能存放新的解码图像。
3.相关技术中,按照先入先出的规则把dpb中某一解码图像移除,这种方法没有充分地考虑该解码图像对后续编码图像的影响,可能会把最重要的解码图像从dpb中移除,进而降低编码系统的压缩性能。


技术实现要素:

4.本公开提供一种解码图像缓存区的管理方法和装置,以至少解决上述相关技术中的问题,也可不解决任何上述问题。
5.根据本公开实施例的第一方面,提供一种解码图像缓存区的管理方法,包括:获取解码图像缓存区中的每一解码图像的编码信息;基于所述编码信息,得到对后续编码图像的代价最小的解码图像;将代价最小的解码图像从所述解码图像缓存区中移除。
6.可选地,所述基于所述编码信息,得到对后续编码图像的代价最小的解码图像,包括:基于所述编码信息,估计每一解码图像对后续编码图像的代价;根据所述每一解码图像对后续编码图像的代价,得到对后续编码图像的代价最小的解码图像。
7.可选地,所述编码信息包括以下项中的至少一项:图像组层级参数、量化参数、图像顺序计数、解码图像与后续编码图像的残差信息、解码图像与后续编码图像的运动信息以及基于解码图像进行编码的率失真。
8.可选地,所述编码信息包括图像组层级参数;其中,所述基于所述编码信息,估计每一解码图像对后续编码图像的代价,包括:获取每一解码图像所处图像组的图像组层级参数上限值与每一解码图像的图像组层级参数的第一差值;基于所述第一差值,估计每一解码图像对后续编码图像的代价,其中,所述第一差值越小,所述代价越小。
9.可选地,所述编码信息包括量化参数;其中,所述基于所述编码信息,估计每一解码图像对后续编码图像的代价,包括:基于所述量化参数,估计每一解码图像对后续编码图像的代价,其中,所述量化参数越大,所述代价越小。
10.可选地,所述编码信息包括图像顺序计数;其中,所述基于所述编码信息,估计每一解码图像对后续编码图像的代价,包括:获取每一解码图像的图像顺序计数与后续编码图像的图像顺序计数的第二差值;基于所述第二差值,估计每一解码图像对后续编码图像的代价,其中,所述第二差值越大,所述代价越小。
11.可选地,所述编码信息包括解码图像与后续编码图像的残差信息;其中,所述基于
所述编码信息,估计每一解码图像对后续编码图像的代价,包括:基于所述解码图像与后续编码图像的残差信息,估计每一解码图像对后续编码图像的代价,其中,所述解码图像与后续编码图像的残差信息越大,所述代价越小。
12.可选地,所述编码信息包括解码图像与后续编码图像的运动信息;其中,所述基于所述编码信息,估计每一解码图像对后续编码图像的代价,包括:获取每一解码图像的解码图像与后续编码图像的运动信息的离散指标参数,其中,所述离散指标参数为均值或方差;基于所述离散指标参数,估计每一解码图像对后续编码图像的代价,其中,所述离散指标参数越大,所述代价越小。
13.可选地,所述编码信息包括基于解码图像进行编码的率失真;其中,所述基于所述编码信息,估计每一解码图像对后续编码图像的代价,包括:基于所述基于解码图像进行编码的率失真,估计每一解码图像对后续编码图像的代价,其中,所述基于解码图像进行编码的率失真越大,所述代价越小。
14.可选地,所述编码信息包括图像组层级参数和图像顺序计数;其中,所述基于所述编码信息,得到对后续编码图像的代价最小的解码图像,包括:若存在图像组层级参数为所处图像组的上限值的解码图像,则将图像组层级参数为所处图像组的上限值的解码图像作为代价最小的解码图像;若不存在图像组层级参数为所处图像组的上限值的解码图像,则将图像组层级参数相同的解码图像划分为同一组,为每一组配置一个阈值,将每一组中图像顺序计数大于阈值的解码图像作为代价最小的解码图像。
15.可选地,还包括:判断所述解码图像缓存区中的解码图像是否已达到预定数量;在所述解码图像缓存区中的解码图像已达到预定数量的情况下,执行本公开的解码图像缓存区的管理方法。
16.根据本公开实施例的第二方面,提供一种解码图像缓存区的管理装置,包括:获取单元,被配置为:获取解码图像缓存区中的每一解码图像的编码信息;确定单元,被配置为:基于所述编码信息,得到对后续编码图像的代价最小的解码图像;移除单元,被配置为:将代价最小的解码图像从所述解码图像缓存区中移除。
17.可选地,确定单元被配置为:基于所述编码信息,估计每一解码图像对后续编码图像的代价;根据所述每一解码图像对后续编码图像的代价,得到对后续编码图像的代价最小的解码图像。
18.可选地,所述编码信息包括以下项中的至少一项:图像组层级参数、量化参数、图像顺序计数、解码图像与后续编码图像的残差信息、解码图像与后续编码图像的运动信息以及基于解码图像进行编码的率失真。
19.可选地,所述编码信息包括图像组层级参数;确定单元被配置为:获取每一解码图像所处图像组的图像组层级参数上限值与每一解码图像的图像组层级参数的第一差值;基于所述第一差值,估计每一解码图像对后续编码图像的代价,其中,所述第一差值越小,所述代价越小。
20.可选地,所述编码信息包括量化参数;确定单元被配置为:基于所述量化参数,估计每一解码图像对后续编码图像的代价,其中,所述量化参数越大,所述代价越小。
21.可选地,所述编码信息包括图像顺序计数;确定单元被配置为:获取每一解码图像的图像顺序计数与后续编码图像的图像顺序计数的第二差值;基于所述第二差值,估计每
一解码图像对后续编码图像的代价,其中,所述第二差值越大,所述代价越小。
22.可选地,所述编码信息包括解码图像与后续编码图像的残差信息;确定单元被配置为:基于所述解码图像与后续编码图像的残差信息,估计每一解码图像对后续编码图像的代价,其中,所述解码图像与后续编码图像的残差信息越大,所述代价越小。
23.可选地,所述编码信息包括解码图像与后续编码图像的运动信息;确定单元被配置为:获取每一解码图像的解码图像与后续编码图像的运动信息的离散指标参数,其中,所述离散指标参数为均值或方差;基于所述离散指标参数,估计每一解码图像对后续编码图像的代价,其中,所述离散指标参数越大,所述代价越小。
24.可选地,所述编码信息包括基于解码图像进行编码的率失真;确定单元被配置为:基于所述基于解码图像进行编码的率失真,估计每一解码图像对后续编码图像的代价,其中,所述基于解码图像进行编码的率失真越大,所述代价越小。
25.可选地,所述编码信息包括图像组层级参数和图像顺序计数;确定单元被配置为:若存在图像组层级参数为所处图像组的上限值的解码图像,则将图像组层级参数为所处图像组的上限值的解码图像作为代价最小的解码图像;若不存在图像组层级参数为所处图像组的上限值的解码图像,则将图像组层级参数相同的解码图像划分为同一组,为每一组配置一个阈值,将每一组中图像顺序计数大于阈值的解码图像作为代价最小的解码图像。
26.可选地,还包括判断单元,被配置为:判断所述解码图像缓存区中的解码图像是否已达到预定数量;其中,在所述解码图像缓存区中的解码图像已达到预定数量的情况下,所述获取单元、所述确定单元和所述移除单元执行如本公开的解码图像缓存区的管理装置中所述的操作。
27.根据本公开实施例的第三方面,提供一种电子设备,包括:至少一个处理器;至少一个存储计算机可执行指令的存储器,其中,所述计算机可执行指令在被所述至少一个处理器运行时,促使所述至少一个处理器执行根据本公开的解码图像缓存区的管理方法。
28.根据本公开实施例的第四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令被至少一个处理器运行时,促使所述至少一个处理器执行根据本公开的解码图像缓存区的管理方法。
29.根据本公开实施例的第五方面,提供一种计算机程序产品,包括计算机指令,所述计算机指令被至少一个处理器执行时实现根据本公开的解码图像缓存区的管理方法。
30.本公开的实施例提供的技术方案至少带来以下有益效果:
31.根据本公开的解码图像缓存区的管理方法和装置,通过编码信息得到代价最小的解码图像,从而将代价最小的解码图像移除,考虑了解码图像对于后续编码图像的影响,使得影响大的解码图像在dpb中存在的时间更长,使得编码系统具有更高的压缩性能。
32.另外,根据本公开的解码图像缓存区的管理方法和装置,能够使得代价大的解码图像在dpb中存在的时间延长,使得当前帧可以选择效果更好的解码图像作为它的参考帧,进而使得残差更小,能够取得更小的码率和更高的帧间预测的性能。
33.另外,根据本公开的解码图像缓存区的管理方法和装置,使用包括多项编码信息中的至少一项得到代价最小的解码图像,能够将代价估计得更加准确,提高编码系统的压缩性能。
34.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不
能限制本公开。
附图说明
35.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
36.图1是示出根据本公开的示例性实施例的解码图像缓存区的管理方法的流程图。
37.图2是示出根据本公开的示例性实施例的gop采用层次编码时的编码顺序和显示顺序及temporalid的示意图。
38.图3是示出根据本公开的示例性实施例的解码图像缓存区的管理装置的框图。
39.图4是根据本公开的示例性实施例的电子设备400的框图。
具体实施方式
40.为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
41.需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
42.在此需要说明的是,在本公开中出现的“若干项之中的至少一项”均表示包含“该若干项中的任意一项”、“该若干项中的任意多项的组合”、“该若干项的全体”这三类并列的情况。例如“包括a和b之中的至少一个”即包括如下三种并列的情况:(1)包括a;(2)包括b;(3)包括a和b。又例如“执行步骤一和步骤二之中的至少一个”,即表示如下三种并列的情况:(1)执行步骤一;(2)执行步骤二;(3)执行步骤一和步骤二。
43.解码图像缓存区(decoded picture buffer,dpb)是视频编码系统中存放解码图像的缓存区。dpb中保存的解码图像可以被后续编码图像用作参考图像。在编码系统中,dpb里的解码图像可以被标记为三种状态,分别是用于短期参考状态,用于长期参考状态和不被用于参考状态。如果dpb中的某一个解码图像被标记为不被用于参考状态,那么这个图像变成非参考图像,不能被作为后续编码图像的参考帧。被标记为不被用于参考状态的解码图像不能再被标记为用于短期参考状态或用于长期参考状态,将从dpb中移除。
44.在视频编码标准制定过程中,考虑到编解码器的实现成本,视频编码标准对dpb的大小做了限制,比如高效率视频编码(high efficiency video coding,hevc)标准所允许的最大dpb尺寸是16帧,即dpb最多只能存储16个解码图像。当dpb存放的图像数已达到所规定的大小时,需要从dpb中移除图像,才能存放新的解码图像。为了移除图像,需要选择解码图像标记为不被用于参考状态。
45.相关技术中,如hevc编码标准参考软件hm(hevc test model)和开源hevc编码器x265,以及通用视频编码(versatile video coding,vvc)标准参考软件vtm(vvc test model)和开源的vvc编码器vvenc(versatile video encoder)均按照先入先出的规则把
dpb中某一解码图像移除,即当dpb存放的图像数已达到所规定的大小时,这些编码器会把最先进入dpb的解码图像标记为不被用于参考状态。但是,这种方法没有充分地考虑该解码图像对后续编码图像的影响,可能会把最重要的解码图像从dpb中移除,进而降低编码系统的压缩性能。
46.为了解决上述相关技术中存在的问题,本公开提出一种解码图像缓存区的管理方法和装置,通过编码信息得到代价最小的解码图像,从而将代价最小的解码图像从dpb中移除,考虑了解码图像对于后续编码图像的影响,使得影响大的解码图像在dpb中存在的时间更长,使得编码系统具有更高的压缩性能。
47.下面,将参照图1至图4来详细描述根据本公开的解码图像缓存区的管理方法和装置。图1是示出根据本公开的示例性实施例的解码图像缓存区的管理方法的流程图。
48.根据本公开的示例性实施例,可在解码图像缓存区dpb中的解码图像达到该dpb所规定的解码图像个数上限的时候执行如图1所示的解码图像缓存区的管理方法。
49.参考图1,在步骤101,可获取解码图像缓存区中的每一解码图像的编码信息。
50.根据本公开的示例性实施例,编码信息可包括,但不限于,以下项中的至少一项:图像组层级参数temporalid、量化参数(quantization parameter,qp)、图像顺序计数(picture order count,poc)、解码图像与后续编码图像的残差信息、解码图像与后续编码图像的运动信息、基于解码图像进行编码的率失真rd cost以及进入dpb的顺序计数。
51.这里,temporalid可用于表示该解码图像在图像组(group of pictures,gop)中的层级,在编码系统中,视频被分割成gop,每个gop由一帧或多帧图像组成。每一gop中的temporalid都有对应的上限值。temporalid可通过二分法获取,通过二分法获取temporalid可表示为:以gop-16为例,poc=16的帧temporalid是0,poc=8的帧temporalid是1,poc=4的帧temporalid为2。dpb中可同时存在有不同gop的解码图像。poc可用于表示图像在视频中的显示顺序。qp和poc均可基于编码器获取,编码器可包括,但不限于,hm、vtm、vvenc和x265。后续编码图像可指代最近一帧待编码图像。解码图像与后续编码图像的运动信息可有多个,本公开的示例性实施例中可基于多个运动信息求离散指标,然后基于离散指标进行如代价估计的操作。解码图像与后续编码图像的运动信息以及解码图像与后续编码图像的残差信息均可基于编码器获取,编码器可包括,但不限于,x265。基于解码图像进行编码的率失真rd cost,是基于解码图像对后续编码图像进行两次编码的率失真,可用于表示解码图像与后续编码图像的真实编码信息,rd cost可通过码率和失真加权求和获得。
52.在步骤102,可基于编码信息,得到对后续编码图像的代价最小的解码图像。
53.在本公开的示例性实施例中,可用代价表征解码图像对后续编码图像进行编码的重要性,代价越大表示越重要,代价越小表示越不重要。
54.由上述步骤可知,编码信息可包括,但不限于,上述列举的多项参数中的至少一项。下面来具体描述编码信息包括上述列举的多项参数中的一项的情况。针对编码信息包括多项参数中的一项的情况,首先可基于编码信息,估计每一解码图像对后续编码图像的代价。然后可根据每一解码图像对后续编码图像的代价,得到对后续编码图像的代价最小的解码图像。
55.图2是示出根据本公开的示例性实施例的gop采用层次编码时的编码顺序和显示
顺序及temporalid的示意图。本公开的示例性实施例中的层次编码可参考图2,横坐标是poc的值,纵坐标是temporalid的值。其中fi表示编码顺序为i的图像。对于编码信息包括图像组层级参数temporalid的情况,即编码系统采用层次编码时,可获取每一解码图像所处图像组gop的temporalid上限值与每一解码图像的temporalid的第一差值;基于第一差值,估计每一解码图像对后续编码图像的代价,其中,第一差值越小,代价越小。例如,但不限于,可将第一差值作为每一解码图像对后续编码图像的代价。
56.本公开的示例性实施例可通过第一差值来表征解码图像对后续编码图像的代价。第一差值越大,代表temporalid越低。temporalid较低的图像可被用于预测temporalid较高的图像。temporalid较低的图像通常会使用较小的qp来编码,以保证具有较高的画质,能够更加准确地预测temporalid较高的图像。进而可知temporalid较低的解码图像对后续编码图像的压缩性能影响较大。因此,temporalid较低的解码图像具有较大的代价。基于此,本公开的示例性实施例中设置第一差值越小,代价越小。
57.对于编码信息包括量化参数qp的情况,可基于qp,估计每一解码图像对后续编码图像的代价,其中,qp越大,代价越小。例如,但不限于,可将qp的相反数作为每一解码图像对后续编码图像的代价。
58.对于编码信息包括图像顺序计数poc的情况,可获取每一解码图像的poc与后续编码图像的poc的第二差值;基于第二差值,估计每一解码图像对后续编码图像的代价,其中,第二差值越大,代价越小。其中,第二差值用于表征解码图像与后续编码图像的距离,第二差值越大距离越远,第二差值越小距离越近。例如,但不限于,可将第二差值的相反数作为每一解码图像对后续编码图像的代价。
59.对于编码信息包括解码图像与后续编码图像的残差信息的情况,可基于解码图像与后续编码图像的残差信息,估计每一解码图像对后续编码图像的代价,其中,解码图像与后续编码图像的残差信息越大,代价越小。例如,但不限于,可将解码图像与后续编码图像的残差信息的相反数作为每一解码图像对后续编码图像的代价。
60.对于编码信息包括解码图像与后续编码图像的运动信息的情况,可获取每一解码图像的解码图像与后续编码图像的运动信息的离散指标参数,其中,离散指标参数为均值或方差;基于离散指标参数,估计每一解码图像对后续编码图像的代价,其中,离散指标参数越大,代价越小。例如,但不限于,可将离散指标参数的相反数作为每一解码图像对后续编码图像的代价。
61.对于编码信息包括基于解码图像进行编码的率失真rd cost的情况,可基于该rd cost,估计每一解码图像对后续编码图像的代价,其中,rd cost越大,代价越小。例如,但不限于,可将rd cost的相反数作为每一解码图像对后续编码图像的代价。
62.根据本公开的示例性实施例,编码信息不仅可以包含有上述列举的各项中的一项的情况,还可以包含有上述列举的各项中的多项的情况。针对编码信息包含有上述列举的各项中的多项的情况,下面来具体描述步骤102,需要说明的是,以下描述的各种情况仅仅是示例性的,本公开不仅保护以下描述的各种情况,还保护基于编码信息的不同进行解码图像缓存区的管理的其他管理方法。
63.对于编码信息包括图像组层级参数temporalid和图像顺序计数poc的情况,若存在temporalid为所处图像组的上限值的解码图像,则可将temporalid为所处图像组的上限
值的解码图像作为代价最小的解码图像;若不存在temporalid为所处图像组的上限值的解码图像,则可将temporalid相同的解码图像划分为同一组,为每一组配置一个阈值,将每一组中poc大于阈值的解码图像作为代价最小的解码图像。
64.对于编码信息包括temporalid,以及,qp、poc、解码图像与后续编码图像的残差信息、解码图像与后续编码图像的运动信息、rd cost和进入dpb的顺序计数中的至少一种的情况,若存在temporalid为所处图像组的上限值的解码图像,则可将temporalid为所处图像组的上限值的解码图像作为代价最小的解码图像;若不存在temporalid为所处图像组的上限值的解码图像,则可将temporalid相同的解码图像划分为同一组,为每一组配置至少一个阈值。对于阈值的分配具体来说,可以是在每一组中为除temporalid之外的各编码信息各配置一个阈值。接下来可在每一组中,将相对应的编码信息和阈值作比较,若存在解码图像的各编码信息均大于对应的阈值,则将该解码图像作为代价最小的解码图像。
65.对于编码信息包括qp,以及,temporalid、poc、解码图像与后续编码图像的残差信息、解码图像与后续编码图像的运动信息、rd cost和进入dpb的顺序计数中的至少一种的情况,可将qp相同的解码图像划分为同一组,为每一组配置至少一个阈值。对于阈值的分配具体来说,可以是在每一组中为除qp之外的各编码信息各配置一个阈值。接下来可在每一组中,将相对应的编码信息和阈值作比较,若存在解码图像的各编码信息均大于对应的阈值,则将该解码图像作为代价最小的解码图像。
66.对于编码信息包括解码图像与后续编码图像的残差信息,以及,temporalid、qp、poc、解码图像与后续编码图像的运动信息、rd cost和进入dpb的顺序计数中的至少一种的情况,可将解码图像与后续编码图像的残差信息相同的解码图像划分为同一组,为每一组配置至少一个阈值。对于阈值的分配具体来说,可以是在每一组中为除解码图像与后续编码图像的残差信息之外的各编码信息各配置一个阈值。接下来可在每一组中,将相对应的编码信息和阈值作比较,若存在解码图像的各编码信息均大于对应的阈值,则将该解码图像作为代价最小的解码图像。
67.对于编码信息包括解码图像与后续编码图像的运动信息,以及,temporalid、qp、poc、解码图像与后续编码图像的残差信息、rd cost和进入dpb的顺序计数中的至少一种的情况,可将解码图像与后续编码图像的运动信息相同的解码图像划分为同一组,为每一组配置至少一个阈值。对于阈值的分配具体来说,可以是在每一组中为除解码图像与后续编码图像的运动信息之外的各编码信息各配置一个阈值。接下来可在每一组中,将相对应的编码信息和阈值作比较,若存在解码图像的各编码信息均大于对应的阈值,则将该解码图像作为代价最小的解码图像。
68.对于编码信息包括rd cost,以及,temporalid、qp、poc、解码图像与后续编码图像的残差信息、解码图像与后续编码图像的运动信息和进入dpb的顺序计数中的至少一种的情况,可将rd cost相同的解码图像划分为同一组,为每一组配置至少一个阈值。对于阈值的分配具体来说,可以是在每一组中为除rd cost之外的各编码信息各配置一个阈值。接下来可在每一组中,将相对应的编码信息和阈值作比较,若存在解码图像的各编码信息均大于对应的阈值,则将该解码图像作为代价最小的解码图像。
69.回到图1,在步骤103,可将代价最小的解码图像从解码图像缓存区中移除。
70.这里,将解码图像从解码图像缓存区移除可通过将解码图像标记为不被用于参考
状态来实现。也就是说,可先将代价最小的解码图像标记为不被用于参考状态,再将标记为不被用于参考状态的解码图像从解码图像缓存区中移除。代价最小的解码图像可以只有一个,也可以有多个。
71.根据本公开的示例性实施例,可判断解码图像缓存区中的解码图像是否已达到预定数量。在解码图像缓存区中的解码图像已达到预定数量的情况下,执行如步骤101至步骤103中的解码图像缓存区的管理方法。在这里,预定数量可以是dpb规定的存放解码图像的数量。
72.图3是示出根据本公开的示例性实施例的解码图像缓存区的管理装置的框图。参考图3,解码图像缓存区的管理装置300包括获取单元301、确定单元302和移除单元303。
73.获取单元301可获取解码图像缓存区中的每一解码图像的编码信息。
74.根据本公开的示例性实施例,编码信息可包括,但不限于,以下项中的至少一项:图像组层级参数temporalid、量化参数(quantization parameter,qp)、图像顺序计数(picture order count,poc)、解码图像与后续编码图像的残差信息、解码图像与后续编码图像的运动信息、基于解码图像进行编码的率失真rd cost以及进入dpb的顺序计数。
75.这里,temporalid可用于表示该解码图像在图像组(group of pictures,gop)中的层级,在编码系统中,视频被分割成gop,每个gop由一帧或多帧图像组成。每一gop中的temporalid都有对应的上限值。temporalid可通过二分法获取,通过二分法获取temporalid可表示为:以gop-16为例,poc=16的帧temporalid是0,poc=8的帧temporalid是1,poc=4的帧temporalid为2。dpb中可同时存在有不同gop的解码图像。poc可用于表示图像在视频中的显示顺序。qp和poc均可基于编码器获取,编码器可包括,但不限于,hm、vtm、vvenc和x265。后续编码图像可指代最近一帧待编码图像。解码图像与后续编码图像的运动信息可有多个,本公开的示例性实施例中可基于多个运动信息求离散指标,然后基于离散指标进行如代价估计的操作。解码图像与后续编码图像的运动信息以及解码图像与后续编码图像的残差信息均可基于编码器获取,编码器可包括,但不限于,x265。基于解码图像进行编码的率失真rd cost是基于解码图像对后续编码图像进行两次编码的率失真,可用于表示解码图像与后续编码图像的真实编码信息,基于解码图像进行编码的率失真rd cost可通过码率和失真加权求和获得。
76.确定单元302可基于编码信息,得到对后续编码图像的代价最小的解码图像。
77.在本公开的示例性实施例中,可用代价表征解码图像对后续编码图像进行编码的重要性,代价越大表示越重要,代价越小表示越不重要。编码信息可包括,但不限于,上述列举的多项参数中的至少一项。下面来具体描述编码信息包括上述列举的多项参数中的一项的情况。针对编码信息包括多项参数中的一项的情况,首先确定单元302可基于编码信息,估计每一解码图像对后续编码图像的代价。然后确定单元302可根据每一解码图像对后续编码图像的代价,得到对后续编码图像的代价最小的解码图像。
78.对于编码信息包括图像组层级参数temporalid的情况,即编码系统采用层次编码时,确定单元302可获取每一解码图像所处图像组gop的temporalid上限值与每一解码图像的temporalid的第一差值;基于第一差值,估计每一解码图像对后续编码图像的代价,其中,第一差值越小,代价越小。例如,但不限于,可将第一差值作为每一解码图像对后续编码图像的代价。
79.本公开的示例性实施例可通过第一差值来表征解码图像对后续编码图像的代价。第一差值越大,代表temporalid越低。temporalid较低的图像可被用于预测temporalid较高的图像。temporalid较低的图像通常会使用较小的qp来编码,以保证具有较高的画质,能够更加准确地预测temporalid较高的图像。进而可知temporalid较低的解码图像对后续编码图像的压缩性能影响较大。因此,temporalid较低的解码图像具有较大的代价。基于此,本公开的示例性实施例中设置第一差值越小,代价越小。
80.对于编码信息包括量化参数qp的情况,确定单元302可基于qp,估计每一解码图像对后续编码图像的代价,其中,qp越大,代价越小。例如,但不限于,可将qp的相反数作为每一解码图像对后续编码图像的代价。
81.对于编码信息包括图像顺序计数poc的情况,确定单元302可获取每一解码图像的poc与后续编码图像的poc的第二差值;基于第二差值,估计每一解码图像对后续编码图像的代价,其中,第二差值越大,代价越小。其中,第二差值用于表征解码图像与后续编码图像的距离,第二差值越大距离越远,第二差值越小距离越近。例如,但不限于,可将第二差值的相反数作为每一解码图像对后续编码图像的代价。
82.对于编码信息包括解码图像与后续编码图像的残差信息的情况,确定单元302可基于解码图像与后续编码图像的残差信息,估计每一解码图像对后续编码图像的代价,其中,解码图像与后续编码图像的残差信息越大,代价越小。例如,但不限于,可将解码图像与后续编码图像的残差信息的相反数作为每一解码图像对后续编码图像的代价。
83.对于编码信息包括解码图像与后续编码图像的运动信息的情况,确定单元302可获取每一解码图像的解码图像与后续编码图像的运动信息的离散指标参数,其中,离散指标参数为均值或方差;基于离散指标参数,估计每一解码图像对后续编码图像的代价,其中,离散指标参数越大,代价越小。例如,但不限于,可将离散指标参数的相反数作为每一解码图像对后续编码图像的代价。
84.对于编码信息包括基于解码图像进行编码的率失真rd cost的情况,确定单元302可基于该rd cost,估计每一解码图像对后续编码图像的代价,其中,rd cost越大,代价越小。例如,但不限于,可将rd cost的相反数作为每一解码图像对后续编码图像的代价。
85.根据本公开的示例性实施例,编码信息不仅可以包含有上述列举的各项中的一项的情况,还可以包含有上述列举的各项中的多项的情况。针对编码信息包含有上述列举的各项中的多项的情况,下面来具体描述确定单元302,需要说明的是,以下描述的各种情况仅仅是示例性的,本公开不仅保护以下描述的各种情况,还保护基于编码信息的不同进行解码图像缓存区的管理的其他管理装置。
86.对于编码信息包括图像组层级参数temporalid和图像顺序计数poc的情况,确定单元302被配置为:若存在temporalid为所处图像组的上限值的解码图像,则可将temporalid为所处图像组的上限值的解码图像作为代价最小的解码图像;若不存在temporalid为所处图像组的上限值的解码图像,则可将temporalid相同的解码图像划分为同一组,为每一组配置一个阈值,将每一组中poc大于阈值的解码图像作为代价最小的解码图像。
87.对于编码信息包括temporalid,以及,qp、poc、解码图像与后续编码图像的残差信息、解码图像与后续编码图像的运动信息、rd cost和进入dpb的顺序计数中的至少一种的
情况,确定单元302被配置为:若存在temporalid为所处图像组的上限值的解码图像,则可将temporalid为所处图像组的上限值的解码图像作为代价最小的解码图像;若不存在temporalid为所处图像组的上限值的解码图像,则可将temporalid相同的解码图像划分为同一组,为每一组配置至少一个阈值。对于阈值的分配具体来说,可以是在每一组中为除temporalid之外的各编码信息各配置一个阈值。接下来可在每一组中,将相对应的编码信息和阈值作比较,若存在解码图像的各编码信息均大于对应的阈值,则将该解码图像作为代价最小的解码图像。
88.对于编码信息包括qp,以及,temporalid、poc、解码图像与后续编码图像的残差信息、解码图像与后续编码图像的运动信息、rd cost和进入dpb的顺序计数中的至少一种的情况,确定单元302被配置为:可将qp相同的解码图像划分为同一组,为每一组配置至少一个阈值。对于阈值的分配具体来说,可以是在每一组中为除qp之外的各编码信息各配置一个阈值。接下来可在每一组中,将相对应的编码信息和阈值作比较,若存在解码图像的各编码信息均大于对应的阈值,则将该解码图像作为代价最小的解码图像。
89.对于编码信息包括解码图像与后续编码图像的残差信息,以及,temporalid、qp、poc、解码图像与后续编码图像的运动信息、rd cost和进入dpb的顺序计数中的至少一种的情况,确定单元302被配置为:可将解码图像与后续编码图像的残差信息相同的解码图像划分为同一组,为每一组配置至少一个阈值。对于阈值的分配具体来说,可以是在每一组中为除解码图像与后续编码图像的残差信息之外的各编码信息各配置一个阈值。接下来可在每一组中,将相对应的编码信息和阈值作比较,若存在解码图像的各编码信息均大于对应的阈值,则将该解码图像作为代价最小的解码图像。
90.对于编码信息包括解码图像与后续编码图像的运动信息,以及,temporalid、qp、poc、解码图像与后续编码图像的残差信息、rd cost和进入dpb的顺序计数中的至少一种的情况,确定单元302被配置为:可将解码图像与后续编码图像的运动信息相同的解码图像划分为同一组,为每一组配置至少一个阈值。对于阈值的分配具体来说,可以是在每一组中为除解码图像与后续编码图像的运动信息之外的各编码信息各配置一个阈值。接下来可在每一组中,将相对应的编码信息和阈值作比较,若存在解码图像的各编码信息均大于对应的阈值,则将该解码图像作为代价最小的解码图像。
91.对于编码信息包括rd cost,以及,temporalid、qp、poc、解码图像与后续编码图像的残差信息、解码图像与后续编码图像的运动信息和进入dpb的顺序计数中的至少一种的情况,确定单元302被配置为:可将rd cost相同的解码图像划分为同一组,为每一组配置至少一个阈值。对于阈值的分配具体来说,可以是在每一组中为除rd cost之外的各编码信息各配置一个阈值。接下来可在每一组中,将相对应的编码信息和阈值作比较,若存在解码图像的各编码信息均大于对应的阈值,则将该解码图像作为代价最小的解码图像。
92.回到图3,移除单元303可将代价最小的解码图像从解码图像缓存区中移除。
93.这里,将解码图像从解码图像缓存区移除可通过将解码图像标记为不被用于参考状态来实现。也就是说,可先将代价最小的解码图像标记为不被用于参考状态,再将标记为不被用于参考状态的解码图像从解码图像缓存区中移除。代价最小的解码图像可以只有一个,也可以有多个。
94.根据本公开的示例性实施例,还包括判断单元,判断单元可判断解码图像缓存区
中的解码图像是否已达到预定数量。在解码图像缓存区中的解码图像已达到预定数量的情况下,获取单元301、确定单元302和移除单元303执行如本公开的示例性实施例的解码图像缓存区的管理装置中所述的操作。在这里,预定数量可以是dpb规定的存放解码图像的数量。
95.图4是根据本公开的示例性实施例的电子设备400的框图。
96.参照图4,电子设备400包括至少一个存储器401和至少一个处理器402,所述至少一个存储器401中存储有计算机可执行指令集合,当计算机可执行指令集合被至少一个处理器402执行时,执行根据本公开的示例性实施例的解码图像缓存区的管理方法。
97.作为示例,电子设备400可以是pc计算机、平板装置、个人数字助理、智能手机、或其他能够执行上述指令集合的装置。这里,电子设备400并非必须是单个的电子设备,还可以是任何能够单独或联合执行上述指令(或指令集)的装置或电路的集合体。电子设备400还可以是集成控制系统或系统管理器的一部分,或者可被配置为与本地或远程(例如,经由无线传输)以接口互联的便携式电子设备。
98.在电子设备400中,处理器402可包括中央处理器(cpu)、图形处理器(gpu)、可编程逻辑装置、专用处理器系统、微控制器或微处理器。作为示例而非限制,处理器还可包括模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。
99.处理器402可运行存储在存储器401中的指令或代码,其中,存储器401还可以存储数据。指令和数据还可经由网络接口装置而通过网络被发送和接收,其中,网络接口装置可采用任何已知的传输协议。
100.存储器401可与处理器402集成为一体,例如,将ram或闪存布置在集成电路微处理器等之内。此外,存储器401可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库系统可使用的其他存储装置。存储器401和处理器402可在操作上进行耦合,或者可例如通过i/o端口、网络连接等互相通信,使得处理器402能够读取存储在存储器中的文件。
101.此外,电子设备400还可包括视频显示器(诸如,液晶显示器)和用户交互接口(诸如,键盘、鼠标、触摸输入装置等)。电子设备400的所有组件可经由总线和/或网络而彼此连接。
102.根据本公开的示例性实施例,还可提供一种存储指令的计算机可读存储介质,其中,当指令被至少一个处理器运行时,促使至少一个处理器执行根据本公开的解码图像缓存区的管理方法。这里的计算机可读存储介质的示例包括:只读存储器(rom)、随机存取可编程只读存储器(prom)、电可擦除可编程只读存储器(eeprom)、随机存取存储器(ram)、动态随机存取存储器(dram)、静态随机存取存储器(sram)、闪存、非易失性存储器、cd-rom、cd-r、cd r、cd-rw、cd rw、dvd-rom、dvd-r、dvd r、dvd-rw、dvd rw、dvd-ram、bd-rom、bd-r、bd-r lth、bd-re、蓝光或光盘存储器、硬盘驱动器(hdd)、固态硬盘(ssd)、卡式存储器(诸如,多媒体卡、安全数字(sd)卡或极速数字(xd)卡)、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘以及任何其他装置,所述任何其他装置被配置为以非暂时性方式存储计算机程序以及任何相关联的数据、数据文件和数据结构并将所述计算机程序以及任何相关联的数据、数据文件和数据结构提供给处理器或计算机使得处理器或计算机能执行所述计算机程序。上述计算机可读存储介质中的计算机程序可在诸如客户端、主机、代理装置、服务器等计算机设备中部署的环境中运行,此外,在一个示例中,计算机程序以及任何
相关联的数据、数据文件和数据结构分布在联网的计算机系统上,使得计算机程序以及任何相关联的数据、数据文件和数据结构通过一个或多个处理器或计算机以分布式方式存储、访问和执行。
103.根据本公开的示例性实施例,还可提供一种计算机程序产品,该计算机程序产品中的指令可由计算机设备的处理器执行以完成根据本公开的示例性实施例的解码图像缓存区的管理方法。
104.根据本公开的解码图像缓存区的管理方法和装置,通过编码信息得到代价最小的解码图像,从而将代价最小的解码图像移除,考虑了解码图像对于后续编码图像的影响,使得影响大的解码图像在dpb中存在的时间更长,使得编码系统具有更高的压缩性能。
105.另外,根据本公开的解码图像缓存区的管理方法和装置,能够使得代价大的解码图像在dpb中存在的时间延长,使得当前帧可以选择效果更好的解码图像作为它的参考帧,进而使得残差更小,能够取得更小的码率和更高的帧间预测的性能。
106.另外,根据本公开的解码图像缓存区的管理方法和装置,使用包括多项编码信息中的至少一项得到代价最小的解码图像,能够将代价估计得更加准确,提高编码系统的压缩性能。
107.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本技术旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
108.应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献