掌桥专利:专业的专利平台
掌桥专利
首页

视频编码方法、装置、存储介质及电子设备

文献发布时间:2023-06-19 09:32:16


视频编码方法、装置、存储介质及电子设备

技术领域

本公开涉及互联网技术领域,尤其涉及一种视频编码方法、视频编码装置、电子设备及计算机可读存储介质。

背景技术

视频的图像数据由视频编码器基于特定数据压缩标准(例如,运动图像专家组(MPEG)标准)被编码,然后被存储在记录介质中或者以比特流的形式通过通信信道被发送。

根据能够再现和存储高分辨率或高质量图像内容的硬件的开发和发布,对用于有效地对高分辨率或高质量图像内容进行编码或解码的编解码器的需求日益增加。近来,已经实现了用于有效地压缩高分辨率或高质量图像内容的方法。

在相关技术的视频编码装置(例如,HM编码器、X265编码器)中,在进行预测模式选择时,会计算使用预测模式后的残差块的残差代价,选择然后选择代价最小的预测模式作为最佳预测模式,从而实现高压缩效率。在相关技术中,除了率失真代价(使用均方差和(SSE)+lambda×R)方法之外,在某些指定的率失真优化(RDO)过程中还使用基于WHT(沃尔什哈达玛变换,Walsh-Hadamard Transformation)的变换差绝对值总和(SATD)和头信息码率组成的快速率失真代价(SATD+lambda’*Rheader)来选择最优编码参数,例如选择最佳帧内预测模式、帧间分像素运动搜索等。然而,对于尺寸较大的残差块,计算SATD的运算量仍然是不小的负担。因此,需要一种在保证模式选择准确度的情况下简化SATD的计算量的方法,以简化编码器计算的复杂度,提高视频编码的效率。

发明内容

本公开提供一种编码方法、编码装置和计算机可读存储介质,以至少解决相关技术中的降低编码器的计算复杂度的问题,也可不解决任何上述问题。

根据本公开的实施例的第一方面,提供了一种视频编码方法,包括:

获取与将被编码的当前块对应的残差块;

对当前块的残差块进行变换处理以确定残差块的变换系数矩阵的特定区域矩阵;

根据所述特定区域矩阵的变换差绝对值求和(SATD)的值来确定针对当前块的预测模式。

在一种可能实现方式中,确定残差块的变换系数矩阵的左上角矩阵。

在一种可能的实现方式中,确定残差块的变换系数矩阵的左上角矩阵可包括:

通过针对所述左上角矩阵简化蝶形变换来计算所述左上角矩阵。

在一种可能的实现方式中,通过针对所述左上角矩阵简化蝶形变换来计算所述左上角矩阵的步骤可包括:在蝶形变换的各层变换运算操作中省略与计算所述左上角矩阵的元素不相关的运算操作。

在一种可能的实现方式中,确定左上角矩阵可包括:

根据所述左上角矩阵的边长对变换矩阵进行简化;

生成与简化的变换矩阵对应的残差块向量;

使用简化的变换矩阵和生成的残差块向量执行蝶形变换。

在一种可能的实现方式中,根据所述左上角矩阵的边长对变换矩阵进行简化可包括:根据所述左上角矩阵的边长m选择变换矩阵的前m个向量,将所述前m个向量的每个向量等分为m组,根据所述前m个向量的每个组中的元素的代表值生成m×m的简化矩阵;

生成与简化的变换矩阵对应的残差块向量可包括:将残差块的每个向量等分为m组,对每个向量分组求和以生成m维的残差块向量;

其中,使用简化的变换矩阵和生成的残差块向量执行蝶形变换可使用m×m的简化矩阵和m维的残差块向量执行m基底的蝶形变换。

根据本公开实施例的第二方面,提供一种视频编码装置,包括:

残差确定模块,被配置为获取与将被编码的当前块对应的残差块;

变换处理模块,对当前块的残差块进行变换处理以确定残差块的变换系数矩阵的左上角矩阵;

预测模式确定模块,根据所述左上角矩阵的变换差绝对值求和(SATD)的值来确定针对当前块的预测模式。

在一种可能的实现方式中,变换处理模块被配置为确定残差块的变换系数矩阵的左上角矩阵。

在一种可能的实现方式中,变换处理模块可被配置为通过针对所述左上角矩阵简化蝶形变换来计算所述左上角矩阵。

在一种可能的实现方式中,变换处理模块可被配置为在蝶形变换的各层变换运算操作中省略与计算所述左上角矩阵的元素不相关的运算操作。

在一种可能的实现方式中,变换处理模块可被配置为根据所述左上角矩阵的边长对变换矩阵进行简化,生成与简化的变换矩阵对应的残差块向量,使用简化的变换矩阵和生成的残差块向量执行蝶形变换。

在一种可能的实现方式中,变换处理模块可被配置为通过以下操作来简化变换矩阵:根据所述左上角矩阵的边长m选择变换矩阵的前m个向量,将所述前m个向量的每个向量等分为m组,根据所述前m个向量的每个组中的元素的代表值生成m×m的简化矩阵;

在一种可能的实现方式中,变换处理模块还可被配置为通过以下操作生成与简化的变换矩阵对应的残差块向量:将残差块的每个向量等分为m组,对每个向量分组求和以生成m维的残差向量;

在一种可能的实现方式中,变换处理模块还可被配置为使用m×m的简化矩阵和m维的残差块向量执行m基底的蝶形变换。

根据本公开的实施例的第三方面,提供了一种电子设备,包括:

至少一个处理器;

至少一个存储计算机可执行指令的存储器,

其中,所述计算机可执行指令在被所述至少一个处理器运行时,促使所述至少一个处理器执行如下的视频编码方法:

获取与将被编码的当前块对应的残差块;

对当前块的残差块进行变换处理以确定残差块的变换系数矩阵的左上角矩阵;

根据所述左上角矩阵的变换差绝对值求和(SATD)的值来确定针对当前块的预测模式。

根据本公开的实施例的第四方面,提供了一种存储介质,当所述存储介质中的指令由视频编码装置/电子设备/服务器的处理器执行时,使得视频编码装置/电子设备/服务器能够执行如下所述的视频编码方法:

获取与将被编码的当前块对应的残差块;

对当前块的残差块进行变换处理以确定残差块的变换系数矩阵的左上角矩阵;

根据所述左上角矩阵的变换差绝对值求和(SATD)的值来确定针对当前块的预测模式。

根据本公开的实施例的第四方面,一种计算机程序产品,其特征在于所述计算机程序产品中的指令被电子设备中的至少一个处理器运行以执行如下所述的视频编码方法:

获取与将被编码的当前块对应的残差块;

对当前块的残差块进行变换处理以确定残差块的变换系数矩阵的左上角矩阵;

根据所述左上角矩阵的变换差绝对值求和(SATD)的值来确定针对当前块的预测模式。

本公开的实施例提供的技术方案至少带来以下有益效果:通过简化编码中的SATD计算量来简化编码器的计算复杂度,从而提高编码效率。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。

图1是根据一示例性实施例示出的一种视频编码框架的示意图。

图2是根据一示例性实施例示出的一种视频编码方法的流程图。

图3是根据一示例性实施例示出的通过简化的蝶形变换计算变换后的系数矩阵的左上角矩阵的示意图。

图4是根据一示例性实施例示出的使用简化的残差块和变换矩阵来计算变换后的系数矩阵的左上角矩阵的示意图。

图5示出在计算残差块的SATD时采用如图3所示的简化的蝶形变换以及图4所示的简化的残差块和变换矩阵的加法运算次数与其他矩阵运算的加法次数的对比的表格。

图6是根据一示例性实施例示出的一种视频编码装置的框图。

图7是根据一示例性实施例示出的一种用于视频编码的电子设备的示意图。

图8是根据一示例性实施例示出的另一种用于视频编码的电子设备的示意图。

具体实施方式

为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。

需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

在此需要说明的是,在本公开中出现的“若干项之中的至少一项”均表示包含“该若干项中的任意一项”、“该若干项中的任意多项的组合”、“该若干项的全体”这三类并列的情况。例如“包括A和B之中的至少一个”即包括如下三种并列的情况:(1)包括A;(2)包括B;(3)包括A和B。又例如“执行步骤一和步骤二之中的至少一个”,即表示如下三种并列的情况:(1)执行步骤一;(2)执行步骤二;(3)执行步骤一和步骤二。

在对本公开的实施例进行详细说明以前,先对本公开的实施例可能涉及到的一些术语或缩略语进行说明。

当前编码块:也可以称为当前块,指的是当前的视频帧(即,当前帧)中将被编码的块。可通过对当前帧进行分层划分而得到多个编码单元,当前编码块可以是划分得到的编码单元中的一个块。

帧间预测:利用一组连续图像间的时间冗余度进行图像压缩。即,利用视频中各帧之间的时间相关性,通过对已经编码的参考图像中的块进行运动补偿来对当前图像中的块进行预测。

帧内预测:利用图像的空间冗余性来进行图像压缩,参考当前帧中已经编码的部分对当前块进行预测。

残差块:当前块的预测值与当前块的真实值之间的残差形成的块。

沃尔什哈达玛变换(WHT):沃尔什函数是一组矩形波,其取值为1和-1,非常便于计算机运算。沃尔什函数有三种排列或编号方式,以哈达玛排列最便于快速计算。采用哈达玛排列的沃尔什函数进行的变换称为沃尔什-哈达玛变换,简称WHT。任意一个大小为n×n的残差块X

下面将参照附图来详细说明根据本公开的示例性实施例的视频编码方法和装置。

图1是根据一示例性实施例示出的一种视频编码框架的示意图。

第一步,对于任一帧图像,将该帧图像分割为至少一个编码单元。

第二步,将该帧图像输入到编码器中进行编码预测,该过程主要利用视频数据的空间相关性和时间相关性,采用帧内预测或帧间预测去除每个编码单元中将被编码的块的时空域冗余信息,得到每个块在参考帧中的匹配块。

第三步,将匹配块和相应的编码块相减,得到残差块,并对残差块分别进行变换和量化处理,得到量化后的变换系数。这里,变换可包括离散余弦变换(DCT)、快速傅里叶变换(FFT)等。量化处理为数字信号处理领域一种常用的技术,是指将信号的连续取值(或者大量可能的离散取值)近似为有限多个(或较少的)离散值的过程。量化处理主要应用于从连续信号到数字信号的转换中,连续信号经过采样成为离散信号,离散信号经过量化即成为数字信号。

第四步,将量化后的变换系数进行熵编码,得到码流中的一部分并输出。

第五步,将量化后的变换系数进行反量化处理和反变换,得到重构残差块,进而将重构残差块与预测块相加,得到重建图像。

第六步,将重建图像经过DB(Deblocking Filter,去块滤波)和SAO(SampleAdaptive Offset,自适应像素补偿)处理后,加入到参考帧队列中,并作为下一帧图像的理论参考帧。通过循环执行上述第一步至第六步使得视频图像能够逐帧地编码。

根据本公开的示例性实施例,在第二步中进行预测模式的选择时,可根据残差块在不同的预测模式下的率失真代价来选择预测模式。率失真代价的计算可包括关于变换差绝对值总和(SATD)的运算。根据本公开的示例性实施例,通过简化SATD运算中加法的复杂度,可降低编码计算的复杂度,从而降低编码计算成本,提高编码速度并降低编码器的能耗。下面将参照图2来说明根据本公开的示例性实施例的视频编码方法。

图2是根据本公开示例性实施例示出的视频编码方法的流程图。

首先,在步骤S201,获取与将被编码的当前块对应的残差块。根据本公开的示例性实施例,可通过帧间预测或帧内预测来获得与将被编码的块(当前块)对应的预测块,并将当前块与获得的预测块相减而得到残差块。在本公开的示例性实施例中,残差块可以表示为任意一个大小为n×n的矩阵X

接下来,在步骤S203,对当前块的残差块进行变换处理以确定残差块的变换系数矩阵的特定区域矩阵。

如上所述,可获得残差块X

在以上等式中,c

可选地,根据本公开的实施例,可通过针对变换系数矩阵的左上角矩阵简化蝶形变换来计算残差块X

可选地,根据本公开的另一实施例,可通过针对残差块和变换矩阵进行预处理以生成与左上角矩阵对应的简化的残差块和简化的变换矩阵,并使用简化的残差块和简化的变换矩阵来计算残差块X

然后,在步骤S205,根据计算出的残差块的变换系数矩阵的左上角矩阵的SATD值来选择用于对当前块编码的预测模式。例如,可选择与具有最小的SATD值的帧内预测方向的帧内预测模式作为将要用于帧内预测的模式。

根据本公开的上述实施例的编码方法可以在保证模式选择准确度几乎不变的情况下,简化SATD的计算量。将本方案应用到编码器中时,可以简化编码器计算复杂度。

下面将参照图3来说明根据本公开的实施例的通过简化的蝶形变换计算变换后的系数矩阵的左上角矩阵的过程。在图3的说明中,以计算16×16的C

图3是根据本公开的一示例性实施例示出的通过简化的蝶形变换计算变换后的系数矩阵的左上角矩阵的过程的示意图。

蝶形变换是利用变换矩阵的对称性、周期性来简化矩阵变换的运算量的一种变换方式。对于n×n的残差块X

残差块X

例如,如图3所示,未简化的蝶形变换从左到右分为4层,每层均为16次加法计算操作。根据本公开的实施例的蝶形变换的计算过程在第一层和第二层中加法计算量仍然保持不变为16次;在第三层中,如301~303所示的箭头所指示的加法运算被取消,因此加法计算量减少为16/2=8次;相应地,在第四层中,加法计算量为16/4=4次。这样,简化后的蝶形变换的总共的加法运算为(16+16+8+4)×(16+4)=880次。又例如,当n=32,m=8时,即,针对32×32的残差块确定其SATD变换系数矩阵的左上角的8×8矩阵时,蝶形变换分为5层,第一层、第二层、第三层的加法运算量保持不变为32次,第四层的加法运算量为16次,第五层的加法运算量为8次,总共的加法次数为(32+32+32+16+8)×(32+8)=4800次。

如上所述,可针对蝶形变换的每一层检查与左上角矩阵相关的运算操作并省略不相关的加法运算,从而可对蝶形变换进行简化。

图4是根据本公开的一示例性实施例示出的使用简化的残差块和变换矩阵来计算变换后的系数矩阵的左上角矩阵的示意图。

在图4中,同样以n=16,m=4作为示例进行说明,但本领域的技术人员应理解这仅是示例,根据本公开的另一示例性实施例的简化的蝶形变换的方法可应用于其它的情况,例如,n=32,m=8等等。

如图4所示,可针对变换系数矩阵的左上角矩阵来简化变换矩阵和残差块,从而可使用最小基底的蝶形变换来计算得到左上角矩阵的每个元素。

具体地,可根据左上角矩阵的边长(即,m值)对变换矩阵进行简化,生成与简化的变换矩阵相应的残差块向量,并使用简化的变换矩阵和生成的残差块向量执行基于边长数量的基底的蝶形变换。下面针对n=16,m=4的示例进行详细说明。

首先,在步骤1,可通过合并变换矩阵的元素来生成与左上角矩阵的边长对应的简化变换矩阵。可根据左上角矩阵的边长m选择变换矩阵的前m个向量,将所述前m个向量的每个向量等分为m组,根据所述前m个向量的每个组中的元素的代表值生成m×m的简化变换矩阵。由于SWHT变换矩阵的特性,每个向量分组中的各个元素值相等,也就是说,每个分组的元素的值均为1或者-1,所以可使用每个分组中的任意元素的值作为代表值来简化变换矩阵。例如,当n=16,m=4时,对于变换矩阵H

接下来,在步骤2,对残差块向量分组进行求和以得到对应的分组求和后的残差。可将残差块的每个向量等分为m组,对每个向量分组求和以生成m维的残差向量。例如,在图4中,取16×16大小残差块X

然后,在步骤3,使用简化的变换矩阵对分组求和后的残差向量进行基于左上角矩阵边长的蝶形变换以得到残差块的左上角的变换系数矩阵。如图4所示,可使用简化的变换矩阵H

在如上所述完成了针对所有e

以计算n=16的大小残差块X

如上所述,可通过简化变换矩阵并相应地对残差块进行分组求和来减少需要的蝶形变换的基底数量,可以大幅度减少运算操作次数。

图5是示出在计算残差块的左上角矩阵时采用如图3所示的简化的蝶形变换以及如图4所示的简化的变换矩阵和残差块的加法运算次数与其他的矩阵运算的加法次数的对比的表格。从图5可以看出,在输入的残差块为n×n的情况下,常规矩阵计算和未简化的蝶形变换的加法次数分别为2n

图5示出了在较大尺寸的正方形残差块(n=16、32)以及长方形残差块(u、v=16、32)的情况下采用常规矩阵计算、未简化蝶形变换、分解变换以及根据本公开的示例性实施例的简化的蝶形变换所需要的加法次数的值。可以看出,采用如图3的简化蝶形变换和图4的简化的残差块和变换矩阵可以大幅度地减少加法运算的次数,从而提高了编码计算的效率,降低了编码器的能耗。

图6是根据本公开的示例性实施例示出的编码装置的框图。

如图6所示,该编码装置包括残差获取模块601、变换处理模块603和预测模式确定模块605。

残差获取模块601被配置为获取与将被编码的当前块对应的残差块。根据本公开的示例性实施例,残差获取模块601可被配置为使用帧间预测或帧内预测来获得与将被编码的块(当前块)对应的预测块,并将获得的预测块与当前块相减而得到残差块。

变换处理模块603被配置为通过对残差获取模块601生成的残差块进行变换处理以确定残差块的变换系数矩阵的特定区域矩阵。

例如,如上所述,变换处理模块603可通过等式

c

根据本公开的实施例,变换处理模块603可通过简化的蝶形变换来计算残差块的变换系数矩阵的左上角矩阵。根据本公开的一示例性实施例,变换处理模块603可通过省略蝶形变换中对于计算变换系数矩阵C

根据本公开的另一实施例,变换处理模块603可通过针对变换矩阵和残差块进行预处理以生成与左上角矩阵对应的简化的残差块和简化的变换矩阵,并使用简化的残差块和简化的变换矩阵来计算残差块X

根据本公开的另一示例性实施例,变换处理模块603可根据左上角矩阵的边长(即,m值)对变换矩阵进行简化,生成与简化的变换矩阵相应的残差块向量,并使用简化的变换矩阵和生成的残差块向量执行基于边长数量的基底的蝶形变换来简化蝶形变换。变换处理模块603可根据左上角矩阵的边长m选择变换矩阵的前m个向量,将所述前m个向量的每个向量等分为m组,根据所述前m个向量的每个组中的元素的代表值生成m×m的简化矩阵。变换处理模块603可被配置为将残差块的每个向量等分为m组,对每个向量分组求和以生成m维的残差向量,并使用m×m的简化矩阵和m维的残差块向量执行m基底的蝶形变换。

以上已经参照图3和图4对简化的蝶形变换以及简化的残差块和变换矩阵进行了说明,在此不再重复说明。

根据本公开的实施例,预测模式确定模式605可根据变换处理模块603计算出的残差块的变换系数矩阵的左上角矩阵的SATD值来选择用于对当前块编码的预测模式。例如,在帧内预测中,可选择与具有最小的SATD值的帧内预测方向对应的帧内预测模式作为将要用于帧内预测的模式。

根据本公开的实施例的编码装置可通过仅计算残差块的变换系数矩阵的左上角来简化SATD值的运算过程次数来减少计算SATD值过程中的运算量。特别地,通过针对变换系数矩阵的左上角对蝶形变换进行简化,可大幅度减少加法运算的次数,提高编码效率,降低编码器的能耗。

图7是示出根据本公开的示例性实施例的一种用于视频编码的电子设备的结构框图。该电子设备700例如可以是:智能手机、平板电脑、MP3播放器(Moving Picture ExpertsGroup Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving PictureExperts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。电子设备700还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。

通常,电子设备700包括有:处理器701和存储器702。

处理器701可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器701可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(FieldProgrammable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器701也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器701可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器701还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。

存储器702可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器702还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器702中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器701所执行以实现本公开的如图3所示的方法实施例提供的视频编码方法。

在一些实施例中,电子设备700还可选包括有:外围设备接口703和至少一个外围设备。处理器701、存储器702和外围设备接口703之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口703相连。具体地,外围设备包括:射频电路704、触摸显示屏705、摄像头706、音频电路707、定位组件708和电源709中的至少一种。

外围设备接口703可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器701和存储器702。在一些实施例中,处理器701、存储器702和外围设备接口703被集成在同一芯片或电路板上;在一些其他实施例中,处理器701、存储器702和外围设备接口703中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。

射频电路704用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路704通过电磁信号与通信网络以及其他通信设备进行通信。射频电路704将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路704包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路704可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路704还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本公开对此不加以限定。

显示屏705用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏705是触摸显示屏时,显示屏705还具有采集在显示屏705的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器701进行处理。此时,显示屏705还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏705可以为一个,设置在电子设备700的前面板;在另一些实施例中,显示屏705可以为至少两个,分别设置在终端700的不同表面或呈折叠设计;在再一些实施例中,显示屏705可以是柔性显示屏,设置在终端700的弯曲表面上或折叠面上。甚至,显示屏705还可以设置成非矩形的不规则图形,也即异形屏。显示屏705可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。

摄像头组件706用于采集图像或视频。可选地,摄像头组件706包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件706还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。

音频电路707可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器701进行处理,或者输入至射频电路704以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端700的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器701或射频电路704的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路707还可以包括耳机插孔。

定位组件708用于定位电子设备700的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件708可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。

电源709用于为电子设备700中的各个组件进行供电。电源709可以是交流电、直流电、一次性电池或可充电电池。当电源709包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。

在一些实施例中,电子设备700还包括有一个或多个传感器710。该一个或多个传感器710包括但不限于:加速度传感器711、陀螺仪传感器712、压力传感器713、指纹传感器714、光学传感器715以及接近传感器716。

加速度传感器711可以检测以终端700建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器711可以用于检测重力加速度在三个坐标轴上的分量。处理器701可以根据加速度传感器711采集的重力加速度信号,控制触摸显示屏705以横向视图或纵向视图进行用户界面的显示。加速度传感器711还可以用于游戏或者用户的运动数据的采集。

陀螺仪传感器712可以检测终端700的机体方向及转动角度,陀螺仪传感器712可以与加速度传感器711协同采集用户对终端700的3D动作。处理器701根据陀螺仪传感器712采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。

压力传感器713可以设置在终端700的侧边框和/或触摸显示屏705的下层。当压力传感器713设置在终端700的侧边框时,可以检测用户对终端700的握持信号,由处理器701根据压力传感器713采集的握持信号进行左右手识别或快捷操作。当压力传感器713设置在触摸显示屏705的下层时,由处理器701根据用户对触摸显示屏705的压力操作,实现对UI上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。

指纹传感器714用于采集用户的指纹,由处理器701根据指纹传感器714采集到的指纹识别用户的身份,或者,由指纹传感器714根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器701授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器714可以被设置电子设备700的正面、背面或侧面。当电子设备700上设置有物理按键或厂商Logo时,指纹传感器714可以与物理按键或厂商Logo集成在一起。

光学传感器715用于采集环境光强度。在一个实施例中,处理器701可以根据光学传感器715采集的环境光强度,控制触摸显示屏705的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏705的显示亮度;当环境光强度较低时,调低触摸显示屏705的显示亮度。在另一个实施例中,处理器701还可以根据光学传感器715采集的环境光强度,动态调整摄像头组件706的拍摄参数。

接近传感器716,也称距离传感器,通常设置在电子设备700的前面板。接近传感器716用于采集用户与电子设备700的正面之间的距离。在一个实施例中,当接近传感器716检测到用户与终端700的正面之间的距离逐渐变小时,由处理器701控制触摸显示屏705从亮屏状态切换为息屏状态;当接近传感器716检测到用户与电子设备700的正面之间的距离逐渐变大时,由处理器701控制触摸显示屏705从息屏状态切换为亮屏状态。

本领域技术人员可以理解,图7中示出的结构并不构成对电子设备700的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。

图8所示为另一种电子设备800的结构框图。例如,电子设备800可以被提供为一服务器。参照图8,电子设备800包括一个或多个处理处理器810以及存储器820。存储器820可以包括用于执行以上的编码方法的一个或一个以上的程序。电子设备800还可以包括一个电源组件830被配置为执行电子设备800的电源管理,一个有线或无线网络接口840被配置为将电子设备900连接到网络,和一个输入输出(I/O)接口850。电子设备800可以操作基于存储在存储器820的操作系统,例如Windows ServerTM、Mac OS XTM、UnixTM、LinuxTM、FreeBSDTM或类似。

根据本公开的实施例,还可提供一种存储指令的计算机可读存储介质,其中,当指令被至少一个处理器运行时,促使至少一个处理器执行根据本公开的视频编码方法。这里的计算机可读存储介质的示例包括:只读存储器(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)卡)、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘以及任何其他装置,所述任何其他装置被配置为以非暂时性方式存储计算机程序以及任何相关联的数据、数据文件和数据结构并将所述计算机程序以及任何相关联的数据、数据文件和数据结构提供给处理器或计算机使得处理器或计算机能执行所述计算机程序。上述计算机可读存储介质中的计算机程序可在诸如客户端、主机、代理装置、服务器等计算机设备中部署的环境中运行,此外,在一个示例中,计算机程序以及任何相关联的数据、数据文件和数据结构分布在联网的计算机系统上,使得计算机程序以及任何相关联的数据、数据文件和数据结构通过一个或多个处理器或计算机以分布式方式存储、访问和执行。

根据本公开的实施例中,还可提供一种计算机程序产品,该计算机程序产品中的指令可由计算机设备的处理器执行以完成上述方法。

根据本公开的视频编码方法、装置以及电子设备、计算机可读存储介质可减少在编码过程中计算率失真代价的运算数量,从而可以提高编码效率,降低编码器能耗。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

相关技术
  • 视频编码方法、视频编码装置、电子设备及存储介质
  • 视频编码方法、视频解码方法、存储介质以及电子设备
技术分类

06120112203972