一种编解码方法、装置及其设备制造方法及图纸

技术编号:27692599 阅读:25 留言:0更新日期:2021-03-17 04:52
本申请提供一种编解码方法、装置及其设备,该方法包括:若当前块的特征信息满足特定条件,则根据所述当前块的第一原始运动矢量确定所述当前块对应的第一参考块,根据所述当前块的第二原始运动矢量确定所述当前块对应的第二参考块;根据所述第一参考块的第一像素值和所述第二参考块的第二像素值,对第一原始运动矢量和第二原始运动矢量进行调整,得到所述第一原始运动矢量对应的第一目标运动矢量和所述第二原始运动矢量对应的第二目标运动矢量;根据所述第一目标运动矢量和所述第二目标运动矢量对所述当前块进行编码或者解码。通过本申请的技术方案,可以提高编码性能。

【技术实现步骤摘要】
一种编解码方法、装置及其设备
本申请涉及编解码
,尤其涉及一种编解码方法、装置及其设备。
技术介绍
为了达到节约空间的目的,视频图像都是经过编码后才传输的,完整的视频编码方法可以包括预测、变换、量化、熵编码、滤波等过程。其中,预测编码包括帧内编码和帧间编码,帧间编码是利用视频时间域的相关性,使用邻近已编码图像的像素预测当前图像的像素,以达到有效去除视频时域冗余的目的。在帧间编码中,可以使用运动矢量(MotionVector,MV)表示当前帧视频图像的当前图像块与参考帧视频图像的参考图像块之间的相对位移。例如,当前帧的视频图像A与参考帧的视频图像B存在很强的时域相关性,在需要传输视频图像A的图像块A1(当前图像块)时,则可以在视频图像B中进行运动搜索,找到与图像块A1最匹配的图像块B1(即参考图像块),并确定图像块A1与图像块B1之间的相对位移,该相对位移也就是图像块A1的运动矢量。编码端可以将运动矢量发送给解码端,不是将图像块A1发送给解码端,解码端可以根据运动矢量和图像块B1得到图像块A1。显然,由于运动矢量占用的比特数小于图像块A1占用的比特数,因此,上述方式可以节约大量比特。在传统方式中,在当前块是单向块时,获得当前块的运动矢量(后续称为原始运动矢量)后,可以对原始运动矢量进行调整,并基于调整后的运动矢量进行编码/解码,从而提高编码性能。但是,在当前块是双向块时,获得当前块的第一原始运动矢量和第二原始运动矢量后,如何对第一原始运动矢量和第二原始运动矢量进行调整,目前并没有合理的解决方案,也就是说,针对双向块的场景,存在预测质量不高,预测错误等问题,从而导致编码性能较差。
技术实现思路
本申请提供了一种编解码方法、装置及其设备,可以提高编码性能。本申请提供一种编解码方法,所述方法包括:若当前块的特征信息满足特定条件,则根据所述当前块的第一原始运动矢量确定所述当前块对应的第一参考块,根据所述当前块的第二原始运动矢量确定所述当前块对应的第二参考块;根据所述第一参考块的第一像素值和所述第二参考块的第二像素值,对第一原始运动矢量和第二原始运动矢量进行调整,得到所述第一原始运动矢量对应的第一目标运动矢量和所述第二原始运动矢量对应的第二目标运动矢量;根据所述第一目标运动矢量和所述第二目标运动矢量对所述当前块进行编码或者解码。本申请提供一种编解码装置,所述装置包括:确定模块,用于若当前块的特征信息满足特定条件,则根据所述当前块的第一原始运动矢量确定所述当前块对应的第一参考块,根据所述当前块的第二原始运动矢量确定所述当前块对应的第二参考块;处理模块,用于根据所述第一参考块的第一像素值和所述第二参考块的第二像素值,对第一原始运动矢量和第二原始运动矢量进行调整,得到所述第一原始运动矢量对应的第一目标运动矢量和所述第二原始运动矢量对应的第二目标运动矢量;编解码模块,用于根据所述第一目标运动矢量和所述第二目标运动矢量对所述当前块进行编码或者解码。本申请提供一种编码端设备,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;所述处理器用于执行机器可执行指令,以实现如下步骤:若当前块的特征信息满足特定条件,则根据所述当前块的第一原始运动矢量确定所述当前块对应的第一参考块,根据所述当前块的第二原始运动矢量确定所述当前块对应的第二参考块;根据所述第一参考块的第一像素值和所述第二参考块的第二像素值,对第一原始运动矢量和第二原始运动矢量进行调整,得到所述第一原始运动矢量对应的第一目标运动矢量和所述第二原始运动矢量对应的第二目标运动矢量;根据所述第一目标运动矢量和所述第二目标运动矢量对所述当前块进行编码。本申请提供一种解码端设备,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;所述处理器用于执行机器可执行指令,以实现如下步骤:若当前块的特征信息满足特定条件,则根据所述当前块的第一原始运动矢量确定所述当前块对应的第一参考块,根据所述当前块的第二原始运动矢量确定所述当前块对应的第二参考块;根据所述第一参考块的第一像素值和所述第二参考块的第二像素值,对第一原始运动矢量和第二原始运动矢量进行调整,得到所述第一原始运动矢量对应的第一目标运动矢量和所述第二原始运动矢量对应的第二目标运动矢量;根据所述第一目标运动矢量和所述第二目标运动矢量对所述当前块进行解码。由以上技术方案可见,本申请实施例中,可以根据第一原始运动矢量和第二原始运动矢量确定当前块的第一目标运动矢量和第二目标运动矢量,并根据第一目标运动矢量和第二目标运动矢量对当前块进行编码或者解码,而不是直接根据第一原始运动矢量和第二原始运动矢量对当前块进行编码或者解码,从而解决预测质量不高,预测错误等问题,并提高编码性能和编码效率。附图说明为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其他的附图。图1A是本申请一种实施方式中的插值的示意图;图1B是本申请一种实施方式中的视频编码框架的示意图;图2是本申请一种实施方式中的编解码方法的流程图;图3是本申请一种实施方式中的编解码方法的流程图;图4是本申请一种实施方式中的编解码方法的流程图;图5是本申请一种实施方式中的参考像素的示意图;图6是本申请一种实施方式中的运动矢量迭代的示意图;图7A-图7E是本申请一种实施方式中的候选点的顺序示意图;图8是本申请一种实施方式中的当前块的空域参考的示意图;图9是本申请一种实施方式中的编解码装置的结构图;图10是本申请一种实施方式中的解码端设备的硬件结构图;图11是本申请一种实施方式中的编码端设备的硬件结构图。具体实施方式在本申请实施例使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本申请实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。本申请实施例中提出一种编解码方法,可以涉及如下概念:帧内预测与帧间预测(intrapredictionandinterprediction)技术:帧内预测是指,利用视频空间域的相关性,使用当前图像本文档来自技高网
...

【技术保护点】
1.一种解码方法,其特征在于,若当前块的特征信息满足特定条件,则允许所述当前块启用运动矢量调整模式,所述特征信息包括以下至少一种:当前块对应的运动信息预测模式;当前块对应的运动信息属性;当前块的尺寸信息;/n在所述当前块启用运动矢量调整模式时,所述当前块包括至少一个子块,根据所述至少一个子块的预测值确定所述当前块的预测值;其中,针对任一所述子块,所述方法包括:/n根据所述当前块的第一原始运动矢量确定所述子块对应的第一参考块,根据所述当前块的第二原始运动矢量确定所述子块对应的第二参考块;其中,所述第一参考块和所述第二参考块是基于亮度分量确定出的亮度预测块;其中,所述根据所述当前块的第一原始运动矢量确定所述子块对应的第一参考块,根据所述当前块的第二原始运动矢量确定所述子块对应的第二参考块,包括:根据所述第一原始运动矢量和所述当前块的第一参考帧,按照双线性插值的方式确定所述第一参考块;根据所述第二原始运动矢量和所述当前块的第二参考帧,按照双线性插值的方式确定所述第二参考块;其中,所述第一参考块的尺寸与所述第二参考块的尺寸相同,所述第一参考块的宽度值基于所述子块的宽度值与搜索范围确定,所述第一参考块的高度值基于所述子块的高度值与搜索范围确定;/n根据所述第一参考块的像素值和所述第二参考块的像素值,对所述第一原始运动矢量和所述第二原始运动矢量进行调整,得到所述第一原始运动矢量对应的第一目标运动矢量和所述第二原始运动矢量对应的第二目标运动矢量;/n根据所述第一目标运动矢量确定所述子块对应的第三参考块,并根据所述第二目标运动矢量确定所述子块对应的第四参考块;/n根据所述第三参考块的像素值和所述第四参考块的像素值进行加权,得到所述子块的预测值。/n...

【技术特征摘要】
1.一种解码方法,其特征在于,若当前块的特征信息满足特定条件,则允许所述当前块启用运动矢量调整模式,所述特征信息包括以下至少一种:当前块对应的运动信息预测模式;当前块对应的运动信息属性;当前块的尺寸信息;
在所述当前块启用运动矢量调整模式时,所述当前块包括至少一个子块,根据所述至少一个子块的预测值确定所述当前块的预测值;其中,针对任一所述子块,所述方法包括:
根据所述当前块的第一原始运动矢量确定所述子块对应的第一参考块,根据所述当前块的第二原始运动矢量确定所述子块对应的第二参考块;其中,所述第一参考块和所述第二参考块是基于亮度分量确定出的亮度预测块;其中,所述根据所述当前块的第一原始运动矢量确定所述子块对应的第一参考块,根据所述当前块的第二原始运动矢量确定所述子块对应的第二参考块,包括:根据所述第一原始运动矢量和所述当前块的第一参考帧,按照双线性插值的方式确定所述第一参考块;根据所述第二原始运动矢量和所述当前块的第二参考帧,按照双线性插值的方式确定所述第二参考块;其中,所述第一参考块的尺寸与所述第二参考块的尺寸相同,所述第一参考块的宽度值基于所述子块的宽度值与搜索范围确定,所述第一参考块的高度值基于所述子块的高度值与搜索范围确定;
根据所述第一参考块的像素值和所述第二参考块的像素值,对所述第一原始运动矢量和所述第二原始运动矢量进行调整,得到所述第一原始运动矢量对应的第一目标运动矢量和所述第二原始运动矢量对应的第二目标运动矢量;
根据所述第一目标运动矢量确定所述子块对应的第三参考块,并根据所述第二目标运动矢量确定所述子块对应的第四参考块;
根据所述第三参考块的像素值和所述第四参考块的像素值进行加权,得到所述子块的预测值。


2.根据权利要求1所述的方法,其特征在于,所述根据所述第三参考块的像素值和所述第四参考块的像素值进行加权,得到所述子块的预测值,包括:
根据所述第三参考块的像素值、所述第三参考块的像素值对应的第一权重、所述第四参考块的像素值以及所述第四参考块的像素值对应的第二权重进行加权处理,得到所述子块的预测值;其中,所述第一权重与所述第二权重相同。


3.根据权利要求1所述的方法,其特征在于,根据所述第一目标运动矢量确定所述子块对应的第三参考块,并根据所述第二目标运动矢量确定所述子块对应的第四参考块,包括:
基于所述第一目标运动矢量,从第一参考帧中确定所述子块对应的第五参考块,对所述第五参考块中的像素值进行插值,得到所述第三参考块;其中,所述第五参考块的宽度大于所述子块的宽度,所述第五参考块的高度大于所述子块的高度;
基于所述第二目标运动矢量,从第二参考帧中确定所述子块对应的第六参考块,对所述第六参考块中的像素值进行插值,得到所述第四参考块;其中,所述第六参考块的宽度大于所述子块的宽度,所述第六参考块的高度大于所述子块的高度。


4.根据权利要求1所述的方法,其特征在于,根据所述第一目标运动矢量确定所述子块对应的第三参考块,并根据所述第二目标运动矢量确定所述子块对应的第四参考块,包括:
基于所述第一目标运动矢量,从第一参考帧中确定所述子块对应的第七参考块,利用所述第七参考块中的像素值构造第八参考块,并对所述第八参考块中的像素值进行插值,得到所述第三参考块;其中,所述第七参考块的宽度等于所述子块的宽度,所述第七参考块的高度等于所述子块的高度;所述第八参考块的宽度大于所述子块的宽度,所述第八参考块的高度大于所述子块的高度;
基于所述第二目标运动矢量,从第二参考帧中确定所述子块对应的第九参考块,利用所述第九参考块中的像素值构造第十参考块,并对所述第十参考块中的像素值进行插值,得到所述第四参考块;其中,所述第九参考块的宽度等于所述子块的宽度,所述第九参考块的高度等于所述子块的高度;所述第十参考块的宽度大于所述子块的宽度,所述第十参考块的高度大于所述子块的高度。


5.根据权利要求1-4任一项所述的方法,其特征在于,
所述第三参考块是采用抽头数为8的插值滤波器进行插值得到,所述第四参考块是采用抽头数为8的插值滤波器进行插值得到。


6.根据权利要求1-5任一项所述的方法,其特征在于,
当所述当前块包括一个子块时,所述子块为当前块本身。


7.一种编码方法,其特征在于,若当前块的特征信息满足特定条件,则允许所述当前块启用运动矢量调整模式,所述特征信息包括以下至少一种:当前块对应的运动信息预测模式;当前块对应的运动信息属性;当前块的尺寸信息;
在所述当前块启用运动矢量调整模式时,所述当前块包括至少一个子块,根据所述至少一个子块的预测值确定所述当前块的预测值;其中,针对任一所述子块,所述方法包括:
根据所述当前块的第一原始运动矢量确定所述子块对应的第一参考块,根据所述当前块的第二原始运动矢量确定所述子块对应的第二参考块;其中,所述第一参考块和所述第二参考块是基于亮度分量确定出的亮度预测块;其中,所述根据所述当前块的第一原始运动矢量确定所述子块对应的第一参考块,根据所述当前块的第二原始运动矢量确定所述子块对应的第二参考块,包括:根据所述第一原始运动矢量和所述当前块的第一参考帧,按照双线性插值的方式确定所述第一参考块;根据所述第二原始运动矢量和所述当前块的第二参考帧,按照双线性插值的方式确定所述第二参考块;其中,所述第一参考块的尺寸与所述第二参考块的尺寸相同,所述第一参考块的宽度值基于所述子块的宽度值与搜索范围确定,所述第一参考块的高度值基于所述子块的高度值与搜索范围确定;
根据所述第一参考块的像素值和所述第二参考块的像素值,对所述第一原始运动矢量和所述第二原始运动矢量进行调整,得到所述第一原始运动矢量对应的第一目标运动矢量和所述第二原始运动矢量对应的第二目标运动矢量;
根据所述第一目标运动矢量确定所述子块对应的第三参考块,并根据所述第二目标运动矢量确定所述子块对应的第四参考块;
根据所述第三参考块的像素值和所述第四参考块的像素值进行加权,得到所述子块的预测值。


8.一种解码端设备,其特征在于,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;
所述处理器用于执行机器可执行指令,以实现如下步骤:若当前块的特征信息满足特定条件,则允许所述当前块启用运动矢量调整模式,所述特征信息包括以下至少一种:当前块对应的运动信息预测模式;当前块对应的运动信息属性;当前块的尺寸信息;
在所述当前块启用运动矢量调整模式时,所述当前块包括至少一个子块,根据所述至少一个子块的预测值确定所述当前块的预测值;其中,针对任一所述子块,
所述处理器执行机器可执行指令时还实现如下步骤:
根据所述当前块的第一原始运动矢量确定所述子块对应的第一参考块,根据所述当前块的第二原始运动矢量确定所述子块对应的第二参考块;其中,所述第一参考块和所述第二参考块是基于亮度分量确定出的亮度预测块;所述处理器根据所述当前块的第一原始运动矢量确定所述子块对应的第一参考块,根据所述当前块的第二原始运动矢量确定所述子块对应的第二参考块时具体用于:根据所述第一原始运动矢量和所述当前块的第一参考帧,按照双线性插值的方式确定所述第一参考块;根据所述第二原始运动矢量和所述当前块的第二参考帧,按照双线性插值的方式确定所述第二参考块;其中,所述第一参考块的尺寸与所述第二参考块的尺寸相同,所述第一参考块的宽度值基于所述子块的宽度值与搜索范围确定,所述第一参考块的高度值基于所述子块的高度值与搜索范围确定;
根据所述第一参考块的像素值和所述第二参考块的像素值,对所述第一原始运动矢量和所述第二原始运动矢量进行调整,得到所述第一原始运动矢量对应的第一目标运动矢量和所述第二原始运动矢量对应的第二目标运动矢量;
根据所述第一目标运动矢量确定所述子块对应的第三参考块,并根据所述第二目标运动矢量确定所述子块对应的第四参考块;
根据所述第三参考块的像素值和所述第四参考块的像素值进行加权,得到所述子块的预测值。


9.根据权利要求8所述的解码端设备,其特征在于,所述处理器根据所述第三参考块的像素值和所述第四参考块的像素值进行加权,得到所述子块的预测值时具体用于:
根据所述第三参考块的像素值、所述第三参考块的像素值对应的第一权重、所述第四参考块的像素值以及所述第四参考块的像素值对应的第二权重进行加权处理,得到所述子块的预测值;其中,所述第一权重与所述第二权重相同。


10.根据权利要求8所述的解码端设备,其特征在于,所述处理器根据所述第一目标运动矢量确定所述子块对应的第三参考块,并根据所述第二目标运动矢量确定所述子块对应的第四参考块时具体用于:
基于所述第一目标运动矢量,从第一参考帧中确定所述子块对应的第五参考块,对所述第五参考块中的像素值进行插值,得到所述第三参考块;其中,所述第五参考块的宽度大于所述子块的宽度,所述第五参考块的高度大于所述子块的高度;
基于所述第二目标运动矢量,从第二参考帧中确定所述子块对应的第六参考块,对所述第六参考块中的像素值进行插值,得到所述第四参考块;其中,所述第六参考块的宽度大于所述子块的宽度,所述第六参考块的高度大于所述子块的高度。


11.根据权利要求8所述的解码端设备,其特征在于,所述处理器根据所述第一目标运动矢量确定所述子块对应的第三参考块,并根据所述第二目标运动矢量确定所述子块对应的第四参考块时具体用于:
基于所述第一目标运动矢量,从第一参考帧中确定所述子块对应的第七参考块,利用所述第七参考块中的像素值构造第八参考块,并对所述第八参考块中的像素值进行插值,得到所述第三参考块;其中,所述第七参考块的宽度等于所述子块的宽度,所述第七参考块的高度...

【专利技术属性】
技术研发人员:陈方栋
申请(专利权)人:杭州海康威视数字技术股份有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1