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

视频编码方法及装置与流程

2022-03-23 09:13:40 来源:中国专利 TAG:


1.本公开涉及视频编解码领域,尤其涉及一种视频编码方法及装置。


背景技术:

2.视频编码标准中使用率失真优化方法对视频进行编码。相关技术中,使用基于视频多方法评估融合(video multimethod assessment fusion,vmaf)的方法进行率失真优化,通过得到vmaf分数和误差平方和(sum of square error,sse)之间的相关系数,然后将该相关系数应用到率失真代价的计算中,进而通过率失真代价对视频进行编码。但是,这种方法会使得该相关系数的数量级过小,且对于拟合效果不好的编码树单元(coding tree unit,ctu)也未处理。


技术实现要素:

3.本公开提供一种视频编码方法及装置,以至少解决上述相关技术中的问题,也可不解决任何上述问题。本公开的技术方案如下:
4.根据本公开实施例的第一方面,提供一种视频编码方法,包括:确定预编码帧内的每一编码树单元ctu的第一相关系数,其中,所述第一相关系数表征ctu级别的第一客观评价指标与第二客观评价指标之间的相关性,所述预编码帧是预编码视频中的任一帧;根据每一ctu的第一相关系数和预设阈值,确定第一类ctu和第二类ctu;根据所述第二类ctu的第一相关系数,得到所述预编码帧的第二相关系数,其中,所述第二相关系数表征帧级别的第一客观评价指标与第二客观评价指标之间的相关性;根据所述预编码帧的第二相关系数,调整所述第一类ctu的第一相关系数;基于所述每一ctu的第一相关系数和所述预编码帧的第二相关系数,得到所述每一ctu的率失真代价;根据所述率失真代价,对所述预编码帧进行编码。
5.可选地,所述确定预编码帧内的每一编码树单元ctu的第一相关系数,包括:获取预编码视频的恒定速率因子crf列表;根据crf列表,对所述每一ctu进行编码,得到所述每一ctu的第一相关系数。
6.可选地,所述获取预编码视频的恒定速率因子crf列表,包括:获取所述预编码视频的初始crf列表,其中,所述初始crf列表中的至少一个crf以数值从小到大的顺序依次排列;在所述初始crf列表中确定初始基准crf;根据所述初始基准crf,在所述初始crf列表中确定第一子集;从所述第一子集中确定基准crf;根据所述基准crf,获取所述crf列表。
7.可选地,所述从所述第一子集中确定基准crf,包括:顺次使用所述第一子集中的crf进行编码得到所述预编码视频中的每一帧的第一客观评价指标,判断所述预编码视频中的帧的第一客观评价指标是否满足预定条件,其中,若超过预设数量的帧的第一客观评价指标处于第一预设数值区间,则确定所述预定条件被满足;将满足所述预定条件时使用的crf作为基准crf。
8.可选地,所述将满足所述预定条件时使用的crf作为基准crf,包括:若使用所述第
一子集中的多个crf进行编码均满足所述预定条件,则将第一个满足所述预定条件时使用的crf作为基准crf。
9.可选地,所述将满足所述预定条件时使用的crf作为基准crf,包括:若使用所述第一子集中的所有crf进行编码均不满足所述预定条件,则将所述第一子集中的最后一个crf作为基准crf。
10.可选地,所述根据所述基准crf,获取所述crf列表,包括:在所述初始crf列表中,获取第二预设数值区间内的所有crf,其中,所述第二预设数值区间根据所述基准crf和第一预设值的差值以及所述基准crf和第二预设值的和值确定;根据所述第二预设数值区间内的所有crf,得到所述crf列表,其中,所述crf列表包括所述基准crf和至少一个常规crf。
11.可选地,所述根据crf列表,对所述每一ctu进行编码,得到所述每一ctu的第一相关系数,包括:根据所述基准crf,对所述每一ctu进行编码,得到所述每一ctu的基准第一客观评价指标和基准第二客观评价指标;根据所述至少一个常规crf,对所述每一ctu进行编码,得到所述每一ctu的至少一个常规第一客观评价指标和至少一个常规第二客观评价指标;根据所述基准第一客观评价指标、所述基准第二客观评价指标、所述至少一个常规第一客观评价指标和所述至少一个常规第二客观评价指标,通过最小二乘法得到所述每一ctu的第一相关系数。
12.可选地,所述确定预编码帧内的每一编码树单元ctu的第一相关系数,包括:根据所述预编码帧内的每一ctu的第一特征信息,通过高斯模糊计算得到每一ctu的基准第一客观评价指标、基准第二客观评价指标、至少一个常规第一客观评价指标和至少一个常规第二客观评价指标;根据所述基准第一客观评价指标、所述基准第二客观评价指标、所述至少一个常规第一客观评价指标和所述至少一个常规第二客观评价指标,通过最小二乘法得到所述每一ctu的第一相关系数。
13.可选地,所述根据所述预编码帧的第二相关系数,调整所述第一类ctu的第一相关系数,包括:将所述第一类ctu的第一相关系数的数值均调整为所述预编码帧的第二相关系数的数值。
14.可选地,在所述基于所述每一ctu的第一相关系数和所述预编码帧的第二相关系数,得到所述每一ctu的率失真代价之前,还包括:将所述每一ctu的第一相关系数和所述预编码帧的第二相关系数调整到第三预设数值区间。
15.可选地,所述基于所述每一ctu的第一相关系数和所述预编码帧的第二相关系数,得到所述每一ctu的率失真代价,包括:计算所述每一ctu的第一相关系数和所述预编码帧的第二相关系数的比值;基于所述比值计算所述率失真代价。
16.根据本公开实施例的第二方面,提供一种视频编码装置,包括:第一确定单元,被配置为:确定预编码帧内的每一编码树单元ctu的第一相关系数,其中,所述第一相关系数表征ctu级别的第一客观评价指标与第二客观评价指标之间的相关性,所述预编码帧是预编码视频中的任一帧;分类单元,被配置为:根据每一ctu的第一相关系数和预设阈值,确定第一类ctu和第二类ctu;第二确定单元,被配置为:根据所述第二类ctu的第一相关系数,得到所述预编码帧的第二相关系数,其中,所述第二相关系数表征帧级别的第一客观评价指标与第二客观评价指标之间的相关性;第一调整单元,被配置为:根据所述预编码帧的第二相关系数,调整所述第一类ctu的第一相关系数;代价计算单元,被配置为:基于所述每一
ctu的第一相关系数和所述预编码帧的第二相关系数,得到所述每一ctu的率失真代价;编码单元,被配置为:根据所述率失真代价,对所述预编码帧进行编码。
17.可选地,第一确定单元被配置为:获取预编码视频的恒定速率因子crf列表;根据crf列表,对所述每一ctu进行编码,得到所述每一ctu的第一相关系数。
18.可选地,第一确定单元被配置为:获取所述预编码视频的初始crf列表,其中,所述初始crf列表中的至少一个crf以数值从小到大的顺序依次排列;在所述初始crf列表中确定初始基准crf;根据所述初始基准crf,在所述初始crf列表中确定第一子集;从所述第一子集中确定基准crf;根据所述基准crf,获取所述crf列表。
19.可选地,第一确定单元被配置为:顺次使用所述第一子集中的crf进行编码得到所述预编码视频中的每一帧的第一客观评价指标,判断所述预编码视频中的帧的第一客观评价指标是否满足预定条件,其中,若超过预设数量的帧的第一客观评价指标处于第一预设数值区间,则确定所述预定条件被满足;将满足所述预定条件时使用的crf作为基准crf。
20.可选地,第一确定单元被配置为:若使用所述第一子集中的多个crf进行编码均满足所述预定条件,则将第一个满足所述预定条件时使用的crf作为基准crf。
21.可选地,第一确定单元被配置为:若使用所述第一子集中的所有crf进行编码均不满足所述预定条件,则将所述第一子集中的最后一个crf作为基准crf。
22.可选地,第一确定单元被配置为:在所述初始crf列表中,获取第二预设数值区间内的所有crf,其中,所述第二预设数值区间根据所述基准crf和第一预设值的差值以及所述基准crf和第二预设值的和值确定;根据所述第二预设数值区间内的所有crf,得到所述crf列表,其中,所述crf列表包括所述基准crf和至少一个常规crf。
23.可选地,第一确定单元被配置为:根据所述基准crf,对所述每一ctu进行编码,得到所述每一ctu的基准第一客观评价指标和基准第二客观评价指标;根据所述至少一个常规crf,对所述每一ctu进行编码,得到所述每一ctu的至少一个常规第一客观评价指标和至少一个常规第二客观评价指标;根据所述基准第一客观评价指标、所述基准第二客观评价指标、所述至少一个常规第一客观评价指标和所述至少一个常规第二客观评价指标,通过最小二乘法得到所述每一ctu的第一相关系数。
24.可选地,第一确定单元被配置为:根据所述预编码帧内的每一ctu的第一特征信息,通过高斯模糊计算得到每一ctu的基准第一客观评价指标、基准第二客观评价指标、至少一个常规第一客观评价指标和至少一个常规第二客观评价指标;根据所述基准第一客观评价指标、所述基准第二客观评价指标、所述至少一个常规第一客观评价指标和所述至少一个常规第二客观评价指标,通过最小二乘法得到所述每一ctu的第一相关系数。
25.可选地,第一调整单元被配置为:将所述第一类ctu的第一相关系数的数值均调整为所述预编码帧的第二相关系数的数值。
26.可选地,还包括第二调整单元,被配置为:将所述每一ctu的第一相关系数和所述预编码帧的第二相关系数调整到第三预设数值区间。
27.可选地,代价计算单元被配置为:计算所述每一ctu的第一相关系数和所述预编码帧的第二相关系数的比值;基于所述比值计算所述率失真代价。
28.根据本公开实施例的第三方面,提供一种电子设备,包括:至少一个处理器;至少一个存储计算机可执行指令的存储器,其中,所述计算机可执行指令在被所述至少一个处
理器运行时,促使所述至少一个处理器执行根据本公开的视频编码方法。
29.根据本公开实施例的第四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令被至少一个处理器运行时,促使所述至少一个处理器执行根据本公开的视频编码方法。
30.根据本公开实施例的第五方面,提供一种计算机程序产品,包括计算机指令,所述计算机指令被至少一个处理器执行时实现根据本公开的视频编码方法。
31.本公开的实施例提供的技术方案至少带来以下有益效果:
32.根据本公开的视频编码方法及装置,可将ctu进行分类,然后可基于分类后的ctu对第一相关系数进行调整,再计算率失真代价,能够在率失真代价的计算中考虑到拟合效果不好的ctu,使得计算结果更加准确。
33.另外,根据本公开的视频编码方法及装置,能够自适应调整基准,以更合适的crf列表进行第一相关系数的计算拟合,缓解了因基准选择不当而导致的vmaf一直为100,且第一相关系数拟合不好的问题。
34.另外,根据本公开的视频编码方法及装置,可将第一相关系数和第二相关系数调整到第三预设数值区间,防止了因各相关系数过大或过小而影响编码效果的问题,缓解了相关技术中的相关系数的数量级过小导致的收益较小的问题,提高了率失真优化的收益。
35.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
36.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
37.图1是根据一示例性实施例示出的一种视频编码方法的流程图。
38.图2是根据一示例性实施例示出的通过最小二乘法拟合第一相关系数的示意图。
39.图3是根据一示例性实施例示出的一种视频编码装置的框图。
40.图4是根据一示例性实施例的电子设备400的框图。
具体实施方式
41.为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
42.需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
43.在此需要说明的是,在本公开中出现的“若干项之中的至少一项”均表示包含“该若干项中的任意一项”、“该若干项中的任意多项的组合”、“该若干项的全体”这三类并列的情况。例如“包括a和b之中的至少一个”即包括如下三种并列的情况:(1)包括a;(2)包括b;
(3)包括a和b。又例如“执行步骤一和步骤二之中的至少一个”,即表示如下三种并列的情况:(1)执行步骤一;(2)执行步骤二;(3)执行步骤一和步骤二。
44.视频编码标准中使用率失真优化技术对视频进行编码。率失真优化技术需要对失真代价进行计算,目前广泛应用的计算方式为基于sse进行计算。但是以sse对失真进行度量和主观质量相差较大。vmaf是目前主流的客观视频质量评估算法。但是由于vmaf只能整帧进行计算,无法对每个ctu进行计算,难以应用到视频编码的率失真代价计算当中。
45.基于此,相关技术中首先使用分块的局部拟合的方法研究了vmaf和sse的相关性,通过逐块计算得到每个ctu的

vmaf和

sse的相关系数,再将相关系数进行处理离线应用到编码流程中。
46.首先对视频采用多个不同的量化参数(quantization parameter,qp)进行编码,将qp=25作为基准qp,基准qp的预编码结果为基准重建,其余qp的预编码结果为常规重建。该方法则通过建立vmaf失真和sse的关系进行率失真代价计算。
47.例如,可通过下式(1)和(2)可以建立起基准/常规重建的v(vb/vr)的偏差(δv)与sse的近似线性关系:
48.v=100-vmaf
ꢀꢀꢀꢀ
(1)
[0049]vr
=vb δv,δv≈ki*sse
i,r
ꢀꢀꢀꢀ
(2)
[0050]
其中,v为vmaf失真,vmaf为vmaf分数,vr为常规重建的vmaf失真,vb为基准重建的vmaf失真,δv为vr和vb的偏差,ki为相关系数。
[0051]
相关系数建立了帧级感知失真和块级传统失真之间的联系,会在后续被用于率失真优化,进而通过率失真代价对视频进行编码。通过假设δv由各编码块独立产生,各编码块的相关系数可以用下面的替换方法得到:推导第i个块的相关系数时,只有基准重建的对应块被常规重建中的同位置块替换,产生一个临时帧。此时,vr就是该临时帧的v,进而根据vb和sse得到对应的相关系数。通过对同一位置ctu的多次替换计算每个ctu的

vmaf和

sse,使用最小二乘法进行线性拟合,求出二者的相关系数(比值)。将拟合出的相关系数应用到率失真优化过程中:首先对拟合的相关系数进行数据处理,将相关系数为负数和0的值去除掉,并通过清洗后的相关系数计算出帧级别的λ和ctu级别的k,进行率失真代价的计算。
[0052]
但是,这种方法会使得该相关系数的数量级过小,在10的-5次方到10的-10次方之间,将相关系数直接应用到率失真代价的计算中会由于数量级相差较大,使得收益较小,且对于拟合效果不好的ctu也未处理。并且,ctu在不同码率段的相关系数不同,对所有ctu使用相同的基准会存在vmaf一直为100的问题。
[0053]
为了解决上述相关技术中存在的问题,本公开提出一种视频编码方法及装置,可将ctu进行分类,然后可基于分类后的ctu对第一相关系数进行调整,再计算率失真代价,能够在率失真代价的计算中考虑到拟合效果不好的ctu,使得计算结果更加准确。
[0054]
下面,将参照图1至图4来详细描述根据本公开的视频编码方法及装置。
[0055]
图1是根据一示例性实施例示出的一种视频编码方法的流程图。参照图1,在步骤101,可确定预编码帧内的每一编码树单元ctu的第一相关系数,其中,第一相关系数表征ctu级别的第一客观评价指标与第二客观评价指标之间的相关性,预编码帧是预编码视频中的任一帧。
[0056]
根据本公开的示例性实施例,第一客观评价指标可以是vmaf,第二客观评价指标可以是sse。
[0057]
根据本公开的示例性实施例,首先可获取预编码视频的恒定速率因子(constant rate factor,crf)列表。然后可根据crf列表,对每一ctu进行编码,得到每一ctu的第一相关系数。
[0058]
根据本公开的示例性实施例,对于获取预编码视频的恒定速率因子crf列表,首先可获取预编码视频的初始crf列表,其中,初始crf列表中的至少一个crf以数值从小到大的顺序依次排列。然后可在初始crf列表中确定初始基准crf。接下来可根据初始基准crf,在初始crf列表中确定第一子集。接着可从第一子集中确定基准crf。最后可根据基准crf,获取crf列表。需要说明的是,第一子集包括初始基准crf以及初始基准crf之后的预设个数的crf。
[0059]
根据本公开的示例性实施例,对于从第一子集中确定基准crf,首先可顺次使用第一子集中的crf进行编码得到预编码视频中的每一帧的第一客观评价指标,判断预编码视频中的帧的第一客观评价指标是否满足预定条件,其中,若超过预设数量的帧的第一客观评价指标处于第一预设数值区间,则确定预定条件被满足。然后可将满足预定条件时使用的crf作为基准crf。
[0060]
这里,若使用第一子集中的多个crf进行编码均满足预定条件,则将第一个满足预定条件时使用的crf作为基准crf。若使用第一子集中的所有crf进行编码均不满足预定条件,则将第一子集中的最后一个crf作为基准crf。
[0061]
根据本公开的示例性实施例,对于根据基准crf,获取crf列表,首先可在初始crf列表中,获取第二预设数值区间内的所有crf,其中,第二预设数值区间根据基准crf和第一预设值的差值以及基准crf和第二预设值的和值确定。然后可根据第二预设数值区间内的所有crf,得到crf列表,其中,crf列表包括基准crf和至少一个常规crf。
[0062]
例如,首先可获取预编码视频的初始crf列表{17,19,21,23,25,27,29,31,33,35}。然后可在初始crf列表中确定初始基准crf=25。接下来可根据初始基准crf,在初始crf列表中确定第一子集{25,27,29}。然后可顺次使用第一子集中的crf进行编码得到预编码视频中的每一帧的vmaf,判断预编码视频中的帧的vmaf是否满足预定条件,其中,若超过90%的帧的vmaf处于[85,99],则确定预定条件被满足。接下来可将满足预定条件时使用的crf作为基准crf。这里,若使用第一子集中的多个crf进行编码均满足预定条件,则将第一个满足预定条件时使用的crf作为基准crf。若使用第一子集中的所有crf进行编码均不满足预定条件,则将第一子集中的最后一个crf即crf=29作为基准crf。然后可在初始crf列表中,获取[29-6,29 6]内的所有crf。最后可根据[29-6,29 6]内的所有crf,得到crf列表{23,25,27,29,31,33,35}。
[0063]
根据本公开的示例性实施例,可在不超过第一预设数量的帧的第一客观评价指标处于第四预设数值区间,确定预定条件被满足,其中,第一预设数量可以是预编码视频中10%的帧,第四预设数值区间可以为(99,100]。
[0064]
根据本公开的示例性实施例,首先可根据基准crf,对每一ctu进行编码,得到每一ctu的基准第一客观评价指标和基准第二客观评价指标。然后可根据至少一个常规crf,对每一ctu进行编码,得到每一ctu的至少一个常规第一客观评价指标和至少一个常规第二客
观评价指标。最后可根据基准第一客观评价指标、基准第二客观评价指标、至少一个常规第一客观评价指标和至少一个常规第二客观评价指标,通过最小二乘法得到每一ctu的第一相关系数。
[0065]
例如,首先可根据基准crf,对每一ctu进行编码,得到每一ctu的基准vmaf和基准sse。然后可根据至少一个常规crf,对每一ctu进行编码,得到每一ctu的至少一个常规vmaf和至少一个常规sse。最后可根据基准vmaf、基准sse、至少一个常规vmaf和至少一个常规sse,通过最小二乘法得到每一ctu的第一相关系数。
[0066]
根据本公开的示例性实施例,可计算基准vmaf和至少一个常规vmaf中的每一常规vmaf之间的δvmaf,以及,基准sse和至少一个常规sse中的每一常规sse之间的δsse。
[0067]
例如,通过最小二乘法得到每一ctu的第一相关系数可被表示为下式(3)和(4):
[0068][0069][0070]
其中,为第i个ctu的第一相关系数。
[0071]
根据本公开的示例性实施例,可通过预编码帧内的每一ctu的第一特征信息,通过高斯模糊计算得到每一ctu的第一相关系数。第一特征信息可包括,但不限于,yuv信息。
[0072]
例如,首先可根据预编码帧内的每一ctu的第一特征信息,通过高斯模糊计算得到每一ctu的基准第一客观评价指标、基准第二客观评价指标、至少一个常规第一客观评价指标和至少一个常规第二客观评价指标。然后可根据基准第一客观评价指标、基准第二客观评价指标、至少一个常规第一客观评价指标和至少一个常规第二客观评价指标,通过最小二乘法得到每一ctu的第一相关系数。
[0073]
根据本公开的示例性实施例,首先可获取预编码帧的每一ctu的第二特征信息。然后可将预编码帧的每一ctu的第二特征信息输入系数预测模型中,得到预编码帧的每一ctu的第一相关系数。第二特征信息可以是y分量的像素值、方差、边缘信息、梯度信息和运动信息中的任一种。
[0074]
这里,可通过多个视频的多个ctu的第二特征信息,和多个ctu的第一相关系数真实值为训练数据集对未训练的系数预测模型进行训练,系数预测模型可以是卷积神经网络cnn,第一相关系数真实值的计算方式参考式(3)和(4)。
[0075]
在步骤102,可根据每一ctu的第一相关系数和预设阈值,确定第一类ctu和第二类ctu。
[0076]
根据本公开的示例性实施例,可将第一相关系数小于或者等于预设阈值的ctu确认为第一类ctu,将第一相关系数大于预设阈值的ctu确认为第二类ctu。这里,预设阈值可设置为0。例如,第一类ctu的第一相关系数小于或者等于0,第二类ctu的第一相关系数大于0。
[0077]
图2是根据一示例性实施例示出的通过最小二乘法拟合第一相关系数的示意图。参考图2,子图(a)(b)和(c)均为示例性的ctu的拟合第一相关系数的示意图,子图(a)(b)和(c)的横坐标均为δvmaf,子图(a)(b)和(c)的纵坐标均为δsse。在子图(a)中,第一相关系数为小于或者等于0,拟合效果很差。在子图(b)中,第一相关系数为8.33e-07,第一相关系
数较小(小于或者等于每一ctu的第一相关系数的均值的一半),拟合效果较好。在子图(c)中,第一相关系数为1.26e-05,第一相关系数较大(大于每一ctu的第一相关系数的均值的一半),拟合效果较好。可将(a)代表的ctu确定为第一类ctu,可将(b)和(c)代表的ctu确定为第二类ctu。
[0078]
在步骤103,可根据第二类ctu的第一相关系数,得到预编码帧的第二相关系数,其中,第二相关系数表征帧级别的第一客观评价指标与第二客观评价指标之间的相关性。
[0079]
根据本公开的示例性实施例,可根据第二类ctu的第一相关系数和第二类ctu的个数,得到预编码帧的第二相关系数。
[0080]
例如,可通过下式(5)和(6)得到预编码帧的第二相关系数:
[0081][0082][0083]
其中,k为预编码帧的第二相关系数,为第i个ctu的第一相关系数,e代表第二类ctu的集合,|e|为第二类ctu的个数。
[0084]
在步骤104,可根据预编码帧的第二相关系数,调整第一类ctu的第一相关系数。
[0085]
根据本公开的示例性实施例,可将第一类ctu的第一相关系数的数值均调整为预编码帧的第二相关系数的数值。
[0086]
在步骤105,可基于每一ctu的第一相关系数和预编码帧的第二相关系数,得到每一ctu的率失真代价。
[0087]
根据本公开的示例性实施例,可在基于每一ctu的第一相关系数和预编码帧的第二相关系数,得到每一ctu的率失真代价之前,将每一ctu的第一相关系数和预编码帧的第二相关系数调整(clip)到第三预设数值区间。例如,第三预设数值区间可以是[0.5,3]。
[0088]
根据本公开的示例性实施例,首先可计算每一ctu的第一相关系数和预编码帧的第二相关系数的比值。然后可基于比值计算率失真代价。
[0089]
根据本公开的示例性实施例,可根据比值、每一ctu的sse、编码参数和每一ctu的码率,计算率失真代价。
[0090]
例如,率失真代价的计算公式为下式(7):
[0091][0092]
其中,rdcost为率失真代价,为第i个ctu的比值,ssei为第i个ctu的sse,为编码参数,ri为第i个ctu的码率。
[0093]
在步骤106,可根据率失真代价,对预编码帧进行编码。
[0094]
根据本公开的示例性实施例,可对预编码视频中的每一帧均执行如图1所示的流程,完成预编码视频的编码。
[0095]
图3是根据一示例性实施例示出的一种视频编码装置的框图。参考图3,视频编码装置300包括第一确定单元301、分类单元302、第二确定单元303、第一调整单元304、代价计算单元305和编码单元306。
[0096]
第一确定单元301,可确定预编码帧内的每一编码树单元ctu的第一相关系数,其
中,第一相关系数表征ctu级别的第一客观评价指标与第二客观评价指标之间的相关性,预编码帧是预编码视频中的任一帧。
[0097]
根据本公开的示例性实施例,第一客观评价指标可以是vmaf,第二客观评价指标可以是sse。
[0098]
根据本公开的示例性实施例,首先第一确定单元301可获取预编码视频的恒定速率因子(constant rate factor,crf)列表。然后第一确定单元301可根据crf列表,对每一ctu进行编码,得到每一ctu的第一相关系数。
[0099]
根据本公开的示例性实施例,首先第一确定单元301可获取预编码视频的初始crf列表,其中,初始crf列表中的至少一个crf以数值从小到大的顺序依次排列。然后第一确定单元301可在初始crf列表中确定初始基准crf。接下来第一确定单元301可根据初始基准crf,在初始crf列表中确定第一子集。接着第一确定单元301可从第一子集中确定基准crf。最后第一确定单元301可根据基准crf,获取crf列表。需要说明的是,第一子集包括初始基准crf以及初始基准crf之后的预设个数的crf。
[0100]
根据本公开的示例性实施例,首先第一确定单元301可顺次使用第一子集中的crf进行编码得到预编码视频中的每一帧的第一客观评价指标,判断预编码视频中的帧的第一客观评价指标是否满足预定条件,其中,若超过预设数量的帧的第一客观评价指标处于第一预设数值区间,则确定预定条件被满足。然后第一确定单元301可将满足预定条件时使用的crf作为基准crf。
[0101]
这里,若使用第一子集中的多个crf进行编码均满足预定条件,则第一确定单元301可将第一个满足预定条件时使用的crf作为基准crf。若使用第一子集中的所有crf进行编码均不满足预定条件,则第一确定单元301可将第一子集中的最后一个crf作为基准crf。
[0102]
根据本公开的示例性实施例,首先第一确定单元301可在初始crf列表中,获取第二预设数值区间内的所有crf,其中,第二预设数值区间根据基准crf和第一预设值的差值以及基准crf和第二预设值的和值确定。然后第一确定单元301可根据第二预设数值区间内的所有crf,得到crf列表,其中,crf列表包括基准crf和至少一个常规crf。
[0103]
例如,首先第一确定单元301可获取预编码视频的初始crf列表{17,19,21,23,25,27,29,31,33,35}。然后第一确定单元301可在初始crf列表中确定初始基准crf=25。接下来第一确定单元301可根据初始基准crf,在初始crf列表中确定第一子集{25,27,29}。然后第一确定单元301可顺次使用第一子集中的crf进行编码得到预编码视频中的每一帧的vmaf,判断预编码视频中的帧的vmaf是否满足预定条件,其中,若超过90%的帧的vmaf处于[85,99],则确定预定条件被满足。接下来第一确定单元301可将满足预定条件时使用的crf作为基准crf。这里,若使用第一子集中的多个crf进行编码均满足预定条件,则第一确定单元301将第一个满足预定条件时使用的crf作为基准crf。若使用第一子集中的所有crf进行编码均不满足预定条件,则第一确定单元301将第一子集中的最后一个crf即crf=29作为基准crf。然后第一确定单元301可在初始crf列表中,获取[29-6,29 6]内的所有crf。最后第一确定单元301可根据[29-6,29 6]内的所有crf,得到crf列表{23,25,27,29,31,33,35}。
[0104]
根据本公开的示例性实施例,第一确定单元301可在不超过第一预设数量的帧的第一客观评价指标处于第四预设数值区间,确定预定条件被满足,其中,第一预设数量可以
是预编码视频中10%的帧,第四预设数值区间可以为(99,100]。
[0105]
根据本公开的示例性实施例,首先第一确定单元301可根据基准crf,对每一ctu进行编码,得到每一ctu的基准第一客观评价指标和基准第二客观评价指标。然后第一确定单元301可根据至少一个常规crf,对每一ctu进行编码,得到每一ctu的至少一个常规第一客观评价指标和至少一个常规第二客观评价指标。最后第一确定单元301可根据基准第一客观评价指标、基准第二客观评价指标、至少一个常规第一客观评价指标和至少一个常规第二客观评价指标,通过最小二乘法得到每一ctu的第一相关系数。
[0106]
例如,首先第一确定单元301可根据基准crf,对每一ctu进行编码,得到每一ctu的基准vmaf和基准sse。然后第一确定单元301可根据至少一个常规crf,对每一ctu进行编码,得到每一ctu的至少一个常规vmaf和至少一个常规sse。最后第一确定单元301可根据基准vmaf、基准sse、至少一个常规vmaf和至少一个常规sse,通过最小二乘法得到每一ctu的第一相关系数。
[0107]
根据本公开的示例性实施例,第一确定单元301可计算基准vmaf和至少一个常规vmaf中的每一常规vmaf之间的δvmaf,以及,基准sse和至少一个常规sse中的每一常规sse之间的δsse。
[0108]
例如,通过最小二乘法得到每一ctu的第一相关系数可被表示为上式(3)和(4)。
[0109]
根据本公开的示例性实施例,第一确定单元301可通过预编码帧内的每一ctu的第一特征信息,通过高斯模糊计算得到每一ctu的第一相关系数。第一特征信息可包括,但不限于,yuv信息。
[0110]
例如,首先第一确定单元301可根据预编码帧内的每一ctu的第一特征信息,通过高斯模糊计算得到每一ctu的基准第一客观评价指标、基准第二客观评价指标、至少一个常规第一客观评价指标和至少一个常规第二客观评价指标。然后第一确定单元301可根据基准第一客观评价指标、基准第二客观评价指标、至少一个常规第一客观评价指标和至少一个常规第二客观评价指标,通过最小二乘法得到每一ctu的第一相关系数。
[0111]
根据本公开的示例性实施例,首先第一确定单元301可获取预编码帧的每一ctu的第二特征信息。然后第一确定单元301可将预编码帧的每一ctu的第二特征信息输入系数预测模型中,得到预编码帧的每一ctu的第一相关系数。第二特征信息可以是y分量的像素值、方差、边缘信息、梯度信息和运动信息中的任一种。
[0112]
分类单元302,可根据每一ctu的第一相关系数和预设阈值,确定第一类ctu和第二类ctu。
[0113]
根据本公开的示例性实施例,分类单元302可将第一相关系数小于或者等于预设阈值的ctu确认为第一类ctu,分类单元302可将第一相关系数大于预设阈值的ctu确认为第二类ctu。这里,预设阈值可设置为0。例如,第一类ctu的第一相关系数小于或者等于0,第二类ctu的第一相关系数大于0。
[0114]
第二确定单元303,可根据第二类ctu的第一相关系数,得到预编码帧的第二相关系数,其中,第二相关系数表征帧级别的第一客观评价指标与第二客观评价指标之间的相关性。
[0115]
根据本公开的示例性实施例,第二确定单元303可根据第二类ctu的第一相关系数和第二类ctu的个数,得到预编码帧的第二相关系数。
[0116]
例如,可通过上式(5)和(6)得到预编码帧的第二相关系数:
[0117]
第一调整单元304可根据预编码帧的第二相关系数,调整第一类ctu的第一相关系数。
[0118]
根据本公开的示例性实施例,第一调整单元304可将第一类ctu的第一相关系数的数值均调整为预编码帧的第二相关系数的数值。
[0119]
代价计算单元305可基于每一ctu的第一相关系数和预编码帧的第二相关系数,得到每一ctu的率失真代价。
[0120]
根据本公开的示例性实施例,首先代价计算单元305可计算每一ctu的第一相关系数和预编码帧的第二相关系数的比值。然后代价计算单元305可基于比值计算率失真代价。
[0121]
根据本公开的示例性实施例,代价计算单元305可根据比值、每一ctu的sse、编码参数和每一ctu的码率,计算率失真代价。
[0122]
例如,率失真代价的计算公式为上式(7)。
[0123]
根据本公开的示例性实施例,还包括第二调整单元,可将每一ctu的第一相关系数和预编码帧的第二相关系数调整(clip)到第三预设数值区间。例如,第三预设数值区间可以是[0.5,3]。
[0124]
具体来说,第二调整单元可在代价计算单元305执行之前,将每一ctu的第一相关系数和预编码帧的第二相关系数调整(clip)到第三预设数值区间。
[0125]
编码单元306可根据率失真代价,对预编码帧进行编码。
[0126]
图4是根据一示例性实施例的电子设备400的框图。
[0127]
参照图4,电子设备400包括至少一个存储器401和至少一个处理器402,所述至少一个存储器401中存储有计算机可执行指令集合,当计算机可执行指令集合被至少一个处理器402执行时,执行根据本公开的示例性实施例的视频编码方法。
[0128]
作为示例,电子设备400可以是pc计算机、平板装置、个人数字助理、智能手机、或其他能够执行上述指令集合的装置。这里,电子设备400并非必须是单个的电子设备,还可以是任何能够单独或联合执行上述指令(或指令集)的装置或电路的集合体。电子设备400还可以是集成控制系统或系统管理器的一部分,或者可被配置为与本地或远程(例如,经由无线传输)以接口互联的便携式电子设备。
[0129]
在电子设备400中,处理器402可包括中央处理器(cpu)、图形处理器(gpu)、可编程逻辑装置、专用处理器系统、微控制器或微处理器。作为示例而非限制,处理器还可包括模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。
[0130]
处理器402可运行存储在存储器401中的指令或代码,其中,存储器401还可以存储数据。指令和数据还可经由网络接口装置而通过网络被发送和接收,其中,网络接口装置可采用任何已知的传输协议。
[0131]
存储器401可与处理器402集成为一体,例如,将ram或闪存布置在集成电路微处理器等之内。此外,存储器401可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库系统可使用的其他存储装置。存储器401和处理器402可在操作上进行耦合,或者可例如通过i/o端口、网络连接等互相通信,使得处理器402能够读取存储在存储器中的文件。
[0132]
此外,电子设备400还可包括视频显示器(诸如,液晶显示器)和用户交互接口(诸如,键盘、鼠标、触摸输入装置等)。电子设备400的所有组件可经由总线和/或网络而彼此连
接。
[0133]
根据本公开的示例性实施例,还可提供一种存储指令的计算机可读存储介质,其中,当指令被至少一个处理器运行时,促使至少一个处理器执行根据本公开的示例性实施例的视频编码方法。这里的计算机可读存储介质的示例包括:只读存储器(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)卡)、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘以及任何其他装置,所述任何其他装置被配置为以非暂时性方式存储计算机程序以及任何相关联的数据、数据文件和数据结构并将所述计算机程序以及任何相关联的数据、数据文件和数据结构提供给处理器或计算机使得处理器或计算机能执行所述计算机程序。上述计算机可读存储介质中的计算机程序可在诸如客户端、主机、代理装置、服务器等计算机设备中部署的环境中运行,此外,在一个示例中,计算机程序以及任何相关联的数据、数据文件和数据结构分布在联网的计算机系统上,使得计算机程序以及任何相关联的数据、数据文件和数据结构通过一个或多个处理器或计算机以分布式方式存储、访问和执行。
[0134]
根据本公开的示例性实施例,还可提供一种计算机程序产品,该计算机程序产品中的指令可由计算机设备的处理器执行以完成根据本公开的示例性实施例的视频编码方法。
[0135]
根据本公开的视频编码方法及装置,可将ctu进行分类,然后可基于分类后的ctu对第一相关系数进行调整,再计算率失真代价,能够在率失真代价的计算中考虑到拟合效果不好的ctu,使得计算结果更加准确。
[0136]
另外,根据本公开的视频编码方法及装置,能够自适应调整基准,以更合适的crf列表进行第一相关系数的计算拟合,缓解了因基准选择不当而导致的vmaf一直为100,且第一相关系数拟合不好的问题。
[0137]
另外,根据本公开的视频编码方法及装置,可将第一相关系数和第二相关系数调整到第三预设数值区间,防止了因各相关系数过大或过小而影响编码效果的问题,缓解了相关技术中的相关系数的数量级过小导致的收益较小的问题,提高了率失真优化的收益。
[0138]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本技术旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
[0139]
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
再多了解一些

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

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

相关文献