用于视频编码或解码的运动信息获取方法与装置与流程

文档序号:20013108发布日期:2020-02-22 04:43阅读:321来源:国知局
用于视频编码或解码的运动信息获取方法与装置与流程

版权申明

本专利文件披露的内容包含受版权保护的材料。该版权为版权所有人所有。版权所有人不反对任何人复制专利与商标局的官方记录和档案中所存在的该专利文件或者该专利披露。

本申请涉及视频编解码领域,并且更为具体地,涉及一种用于视频编码或解码的运动信息获取方法与装置。



背景技术:

为了实现并行编码器设计,运动估计区域(motionestimationregion,mer)的概念被引入编码标准中。待编码图像块被划分为多个mer,在每个mer内,与当前块在相同mer中的相邻块不会被用来构造当前块的merge候选列表。换言之,同一个mer内的图像块之间在构建merge候选列表时没有依赖性,因此,同一个mer内的所有图像块都可以并行构造merge候选列表,从而可以在同一个mer内实现并行编码。现有标准中,mer的形状为方形。

通常,视频编码都是基于图像块实现的,一个待编码图像块被划分为多个图像块进行编码。为了灵活、高效地表示视频场景中的不同纹理细节、运动变化的视频内容或视频对象,在高效率视频编码(highefficiencyvideocoding,hevc)标准中提出,一个待编码图像块可以通过四叉树(quadtrees,qt)的形式划分成多个编码单元(codingunit,cu)。目前正在制定的新一代视频编码标准中,cu的划分方式除了qt之外,新引入了二叉树(binarytree,bt),三叉树(ternarytree,tt),扩展四叉树(extendquadtree,eqt)等非qt划分方式。非qt划分方式的特点是,划分出的图像块的形状可以是矩形或其他非方形。

对于经过非qt划分方式划分得到的图像块,使用现有技术中的mer进行编码时,会出现同一个mer内各个图像块之间在运动估计时具有依赖性,从而无法mer内的并行编码。



技术实现要素:

本申请提供一种用于视频编码或解码的运动信息获取方法与装置,在图像块的划分方式包括非四叉树划分方式的情况下,也可以消除同一运动估计区域内各个图像块之间进行运动估计的依赖性,从而可以实现基于运动估计区域的并行编码或解码。

第一方面,提供一种用于视频编码或解码的运动信息获取方法,该方法包括:获取待处理图像块,所述待处理图像块经过四叉树划分与非四叉树划分而获得编码单元;根据所述待处理图像块的四叉树划分节点的划分信息及尺寸,确定所述待处理图像块的运动估计区域;根据所述运动估计区域,获得所述运动估计区域内的编码单元或解码单元的运动信息。

第二方面,提供一种视频处理装置,该视频处理装置包括:第一获取单元,用于获取待处理图像块,待处理图像块经过四叉树划分与非四叉树划分而获得编码单元;确定单元,用于根据待处理图像块的四叉树划分节点的划分信息及尺寸,确定待处理图像块的运动估计区域;第二获取单元5,用于根据运动估计区域,获得运动估计区域内的编码单元或解码单元的运动信息。

第三方面,提供一种视频处理装置,所述视频处理装置包括存储器和处理器,所述存储器用于存储指令,所述处理器用于执行所述存储器存储的指令,并且对所述存储器中存储的指令的执行使得所述处理器执行第一方面或第一方面的任一可能的实现方式中的方法。

第四方面,提供一种芯片,所述芯片包括处理模块与通信接口,所述处理模块用于控制所述通信接口与外部进行通信,所述处理模块还用于实现第一方面或第一方面的任一可能的实现方式中的方法。

第五方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被计算机执行时使得所述计算机实现第一方面或第一方面的任一可能的实现方式中的方法。

第六方面,提供一种包含指令的计算机程序产品,所述指令被计算机执行时使得所述计算机实现第一方面或第一方面的任一可能的实现方式中的方法。

因此,本申请提供的方案,通过根据四叉树划分节点的划分信息与尺寸确定运动估计区域,其中包括根据四叉树划分节点的尺寸确定运动估计区域的尺寸,可以消除同一个运动估计区域内各个图像块在运动估计时的相互依赖性,从而可以实现运动估计区域内的并行编码或解码。

附图说明

图1为运动估计区域(mer)的示意图。

图2为非qt划分方式的示意图。

图3为同一mer内的图像块之间无法消除运动估计的依赖性的示意图。

图4为本申请实施例提供的用于视频编码或解码的运动信息获取方法的示意性流程图。

图5为本申请实施例提供的视频处理装置的示意性框图。

图6为本申请实施例提供的视频处理装置的另一示意性框图。

具体实施方式

下面将结合附图,对本申请实施例中的技术方案进行描述。

除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请。

首先介绍本申请实施例涉及的相关技术及概念。

1、视频编/解码过程。

近年来,由于便携式设备、手持式设备以及可穿戴设备的盛行,视频的内容量不断增长。随着视频形式变得越来越复杂,视频的存储和传输变得越来越具有挑战性。为了减少视频存储和传输所占用的带宽,通常在编码端对视频数据进行编码压缩,在解码端进行解码。

目前,主流视频编码框架包括如下编码步骤:预测、变换、量化和熵编码。

预测的其目的在于,利用预测块信息去除当前待编码图像块的冗余信息。预测包括帧内预测和帧间预测两种类型。帧内预测是利用本帧图像的信息获得预测块数据。例如,帧内预测使用当前编码帧的空域信息用于消除冗余信息。帧间预测利用参考帧的信息获得预测块数据。例如,帧间预测可以使用与当前编码帧前后相邻的时域帧信息用于消除冗余信息。帧间预测的过程包括:首先,将待编码图像块划分成若干个子图像块;然后,针对每个子图像块,在参考帧中搜索与当前子图像块最匹配的图像块作为预测块;其后,将该子图像块与该预测块的相应像素值相减得到残差,并将得到的各子图像块对应的残差组合在一起,得到待编码图像块的残差。

变换的目的在于去除图像块的冗余信息。具体地,可以使用变换矩阵去除图像块的残差的相关性,即去除图像块的冗余信息,以便提高编码效率。图像块中数据块的变换通常采用二维变换,即将数据块的残差信息分别与一个变换矩阵及其转置矩阵相乘,相乘之后得到的是变换系数。

量化的目的在于,根据变化系数得到量化系数。具体地,根据量化参数对变换系数进行量化,得到对应的量化系数。

熵编码的目的在于,通过对量化系数进行熵编码,得到比特流。

编码端在完成图像编码后,会将熵编码得到的比特流及进行编码后的编码模式信息,如帧内预测模式、运动矢量信息等,进行存储或发送到解码端。

在解码端,获得熵编码比特流之后,首先,对该比特流进行熵解码,得到相应的残差;然后,根据解码得到的运动矢量或帧内预测等编码模式信息,获得预测图像块;最后,根据预测图像块与图像块的残差得到当前子图像块中各像素点的值。

2、预测

预测是主流视频编码框架中的重要模块,帧间预测通过运动补偿的方式来实现。对于一帧图像,先分成等大的编码区域(codingtreeunit,ctu),例如64x64、128x128大小。每个ctu可以进一步划分成方形或矩形的编码单元(codingunit,cu),每个cu在参考帧中(一般为时域附近的已重构帧)寻找最相似块作为当前cu的预测块。当前块与相似块之间的相对位移为运动矢量(motionvector,mv)。在参考帧中寻找相似块作为当前块的预测值的过程就是运动补偿。

在当前的视频编解码标准中,采用merge模式进行运动估计。merge模式包括,通过构建merge候选列表(mergecandidatelist),在参考帧中寻找相似块作为当前块的预测值。构建merge候选列表的过程会引入空域相邻块之间的依赖性。

在硬件实现时,空域相邻块的运动估计过程是并行执行或者至少是流水线执行以增加吞吐量。由于merge模式的运动估计方式会导致空域相邻块之间有依赖性,这使得空域相邻块的merge候选列表无法并行构建,称为并行编码器设计的一个瓶颈。

3、运动估计区域(motionestimationregion,mer)

为了实现并行编码器设计,mer的概念被引入编码标准中。待编码图像块(例如,ctu)被划分为多个mer,在每个mer内,与当前块在相同mer中的相邻块不会被用来构造当前块的merge候选列表。换言之,在当前块的merge候选列表构造时不使用与当前块在相同mer中的相邻块的运动信息。还可以表述为,同一个mer内的图像块之间在构建merge候选列表时没有依赖性,因此,同一个mer内的所有图像块都可以并行构造merge候选列表,从而可以在同一个mer内实现并行编码。如图1所示,一个待编码图像块划分为4个mer。第一个mer内包括图像块pu0和pu1,图像块pu0的所有可能的merge候选块都是可得的,因为这些merge候选块都在pu0所在的mer之外。第二个mer内包括图像块pu2至pu6,pu2至pu6的merge候选列表不能包含pu2至pu6的运动信息,以保证这个mer内的所有图像块的运动估计过程相互独立,可知,图1中的pu5图像块没有空域相邻的merge候选可用。目前视频标准中,mer是方形的。

4、图像的划分

传统的视频编码都是基于图像块实现的,考虑到高分辨率视频的自身特性,视频编码标准中引入了编码树单元(ctu)的概念,ctu的尺寸由编码器指定,例如,ctu的尺寸可以大于宏块的尺寸。为了灵活、高效地表示视频场景中的不同纹理细节、运动变化的视频内容或视频对象,在高效率视频编码(highefficiencyvideocoding,hevc)标准和数字音视频编解码技术标准avs中,一个ctu可以直接作为一个编码单元(cu),也可以进一步以四叉树(quadtrees,qt)的形式划分成多个小的cu。换言之,cu的大小是可变的。应理解,尺寸较大的cu可以使得平缓区域的编码效率大大提高,尺寸较小的cu能够很好的处理图像局部的细节,从而使得复杂图像的预测更准确。

目前正在制定的新一代视频编码标准中,cu的划分方式除了qt之外,新引入了二叉树(binarytree,bt),tt,eqcu划分方式,如图2所示。本文中将四叉树之外的划分方式bt、tt、eqcu统称为非qt划分方式。应理解,非qt划分方式可以使得对cu的划分更加灵活,更灵活多变的cu划分形状能够更好匹配视频的局部特征。

当cu的划分方式包括qt划分方式与非qt划分方式,在编码过程中,先根据四叉树结构划分ctu,再根据非qt划分方式继续划分四叉树的叶节点,非qt划分树的叶节点被称为cu。

需要说明的是,cu的划分方式决定图像块的编码顺序。例如,在图3中,最大图像块经过第一次非qt划分得到左图像块1(图3中a、b、c与d组成的图像块)与右图像块1(图3中e所示的图像块);左图像块1经过第二次非qt划分得到左图像块2(图3中a与b组成的图像块)与右图像块2(图3中c与d组成的图像块);左图像块2和右图像块2分别经过第三次非qt划分得到图像块a、b、c与d,至此,图3所示最大图像块经过多次非qt划分得到图像块a、b、c、d与e。上述的划分方式决定图像块a、b、c、d与e的编码顺序为a→b→c→d→e。

假设图3所示的最大图像块划分为4个mer(图3中虚线所示),图像块a和c位于同一个mer内,图像块b和d位于同一个mer内。按照mer的设计规则,图像块a和c不可以互相依赖,图像块b和d不可以互相依赖,图像块a和b可以互相依赖,图像块b和c可以互相依赖。假设,在构建图像块b的merge候选列表时将图像块a作为图像块b的merge候选块,即图像块b的编码依赖图像块a的编码。从编码顺序a→b→c→d→e可知,图像块c的编码应该需要依赖图像块a与图像块b的编码,由于mer的设计规则,图像块a和c不可以互相依赖,因此,图像块c只能依赖图像块b进行编码,前文已述,图像块b的编码依赖图像块a的编码,由此推出,图像块c的编码是依赖图像块a的编码的。在这种情形下,图像块c与图像块a之间无法消除依赖,因此,在包括图像块c与图像块a的mer内,无法实现图像块a和b的并行运动估计,从而无法实现图像块a和b的并行编码。

从图3所示可知,非qt划分方式可能会导致在mer内无法实现并行编码。

针对上述问题,本申请提出一种用于视频编码或解码的运动信息获取方法,可以在有非qt划分方式存在的情况下,有效实mer内的并行运动估计,从而实现mer内的并行编码。

本申请实施例中的待编码图像块,可以是h.265/高效率视讯编码(highefficiencyvideocoding,hevc)标准中的编码树单元(codingtreeunit,ctu),也可以是h.264/高阶视讯编码(advancedvideocoding,avc)标准中的宏区块(macroblock)或最大编码单元(largestcodingunit,lcu)。待编码图像块的大小可以是8×8像素~64×64像素。本申请实施例中的编码单元可以表示为cu(codingunit)。例如,当前编/解码标准中,编码单元的最小尺寸为4×4像素。

还应理解,本申请可以应用于符合国际视频编/解码标准h.264/高级视频编码(advancedvideocoding,avc),h.265/hevc,h.266/多功能视频编码(versatilevideocoding,vvc)和中国视频编码标准——信源编码标准(audiovideocodingstandard,avs)等的编/解码器。

如图4所示,本申请实施例提供一种用于视频编码或解码的运动信息获取方法400。该方法400可以由视频编码器或视频解码器执行。该方法400包括如下步骤。

410,获取待处理图像块,待处理图像块经过四叉树划分与非四叉树划分而获得编码单元。

本文中的待处理图像块可以为待编码图像块或待解码图像块。

以待编码图像为例。待编码图像块经过四叉树划分与非四叉树划分而获得编码单元,指的是待编码图像块先经过四叉树划分,而后再经过非四叉树划分,而获得编码单元。在一个示例中,非四叉树划分的根节点是四叉树划分的叶子节点。编码单元例如为前文描述的cu。

四叉树划分可以称为qt划分。非四叉树划分可以称为非qt划分。非qt划分可以为下列划分方式中的任一种:bt、tt与equ。非qt划分方式还可能有多种,只要划分出的图像块可能出现非方形图像块,都认为该划分方式是非qt划分。

420,根据待处理图像块的四叉树划分节点的划分信息及尺寸,确定待处理图像块的运动估计区域(motionestimationregion,mer)。

本文中的四叉树划分节点可以是待处理图像块的四叉树上的叶子节点,也可以是该四叉树上的中间节点,也可以是该四叉树上的根节点,在此不做限制。

作为示例,该四叉树划分节点也可以表述为该四叉树的当前划分节点。

四叉树划分节点的尺寸指的是该划分节点对应的图像块的像素值大小。例如,四叉树划分节点的尺寸为16×16像素。

四叉树划分节点的划分信息指的是,该四叉树划分节点是否再进行四叉树划分,换言之,该待处理图像块是否再进行四叉树划分。

作为一个示例,当四叉树划分节点的划分信息为,该待处理图像块不再进行四叉树划分,相当于,该四叉树划分节点为该待处理图像块的四叉树的叶子节点。

作为另一个示例,当四叉树划分节点的划分信息为,该待处理图像块仍然进行四叉树划分,相当于,该四叉树划分节点为该待处理图像块的四叉树的中间节点。

步骤420中的确定待处理图像块的运动估计区域,包括:确定该运动估计区域的尺寸;确定该运动估计区域覆盖哪些编码单元或解码单元。

例如,将该四叉树划分节点的尺寸作为该运动估计区域的尺寸。再例如,可以将四叉树划分节点的尺寸的正整数倍,确定为该运动估计区域的尺寸。

再例如,确定该运动估计区域覆盖该四叉树划分节点中包括的编码单元。

下文将详细描述步骤420。

430,根据运动估计区域,获得运动估计区域内的编码单元或解码单元的运动信息。

以待处理图像块为待编码图像块为例。在对待编码图像块的四叉树划分与非四叉树划分的流程中,非四叉树的根节点是四叉树的叶子节点。本申请实施例通过根据四叉树划分节点的尺寸确定运动估计区域,例如,设置运动估计区域的尺寸等于四叉树划分节点的尺寸,这样可以保证同一个非四叉树的根节点下的编码单元均在同一个运动估计区域内,这样可以消除如图3所示的同一个运动估计区域内各个图像块在运动估计时的相互依赖性,从而可以实现运动估计区域内的并行编码。

因此,本申请实施例,通过根据四叉树划分节点的划分信息与尺寸确定运动估计区域,其中包括根据四叉树划分节点的尺寸确定运动估计区域的尺寸,可以消除同一个运动估计区域内各个图像块在运动估计时的相互依赖性,从而可以实现运动估计区域内的并行编码或解码。

应理解,本申请提供的方案可以用于视频编码,也可以用于视频解码。

可选地,在一些实施例中,步骤430包括:根据运动估计区域外的编码或解码单元的运动信息,获得运动估计区域内的编码或解码单元的运动信息。

可选地,在一些实施例中,步骤430包括:根据运动估计区域外的编码或解码单元的运动信息,获得运动估计区域内的编码或解码单元的merge列表信息。

作为一个示例,本实施例中的merge列表信息可以为前文描述的merge候选列表。

本文中涉及的运动信息为以下一种或多种的组合:

运动矢量;

运动矢量差;

参考帧索引值;

编码或解码单元使用帧内或帧间预测模式;

编码或解码单元划分信息。

可选地,在一些实施例中,步骤420包括:根据四叉树划分节点的划分信息及尺寸,确定待处理图像块的运动估计区域的尺寸。

作为示例,将该四叉树划分节点的尺寸作为待处理图像块的运动估计区域的尺寸。

因此,本申请实施例,通过设置运动估计区域的尺寸等于该待待处理图像块的四叉树划分节点的尺寸,可以消除同一个运动估计区域内各个图像块在运动估计时的相互依赖性,从而可以实现运动估计区域内的并行编码或解码。

可以采用多种实现方式,根据四叉树划分节点的划分信息及尺寸,确定待处理图像块的运动估计区域的尺寸。

可选地,在一些实施例中,确定待处理图像块的运动估计区域的尺寸,包括:当四叉树划分节点为四叉树的叶子节点时,将四叉树划分节点的尺寸作为运动估计区域的尺寸。

有些情况下,四叉树的一部分叶子节点会通过非四叉树继续划分,即这部分叶子节点称为非死叉树的根节点,四叉树的另一部分叶子节点可能不再进行任何划分,例如不再进行非四叉树划分。

可选地,在一些实施例中,确定待处理图像块的运动估计区域的尺寸,包括:当四叉树划分节点为非四叉树的根节点时,将四叉树划分节点的尺寸作为运动估计区域的尺寸。

在一个示例中,当四叉树划分节点的划分信息表示待处理图像块不再进行四叉树划分时,将四叉树划分节点的尺寸作为运动估计区域的尺寸。

应理解,运动估计区域的尺寸的确定方式对于编码端和解码端来说都是知道的。例如,当编码端将该四叉树划分节点的尺寸作为运动估计区域的尺寸,解码端也是基于这样原则来确定运动估计区域的尺寸的。

因此,本申请实施例通过设置运动估计区域的尺寸等于四叉树的叶子节点的尺寸,可以消除同一个运动估计区域内各个图像块在运动估计时的相互依赖性,从而可以实现运动估计区域内的并行编码或解码。

可选地,在一些实施例中,确定待处理图像块的运动估计区域的尺寸,包括:当四叉树划分节点为四叉树的中间节点时,将四叉树划分节点的尺寸作为运动估计区域的尺寸。

在一个示例中,当四叉树划分节点的划分信息表示待处理图像块仍然进行四叉树划分时,将四叉树划分节点的尺寸作为运动估计区域的尺寸。

例如,将四叉树的预设分层深度上的中间节点的尺寸确定为运动估计区域的尺寸。应理解,预设分层深度对于编码端与解码端来说是知道的。

再例如,将四叉树上尺寸大于或等于预设值的中间节点的尺寸确定为运动估计区域的尺寸。应理解,该预设值对于编码端与解码端来说是知道的。

因此,本申请实施例通过设置运动估计区域的尺寸等于四叉树的中间节点的尺寸,可以消除同一个运动估计区域内各个图像块在运动估计时的相互依赖性,从而可以实现运动估计区域内的并行编码或解码。

可选地,在一些实施例中,确定待处理图像块的运动估计区域的尺寸,包括:当四叉树划分节点的尺寸大于或等于运动估计区域参考尺寸时,将运动估计区域参考尺寸作为运动估计区域的尺寸。

在一个示例中,四叉树划分节点的划分信息表示待处理图像块仍进行四叉树划分。

运动估计区域参考尺寸可以是也配置的,也可以是通过协议规定的。例如,运动估计区域参考尺寸为16×16像素。

例如,在待处理图像块的四叉树上的各个划分节点上遍历,当一个划分节点(中间节点或叶子节点)的尺寸大于或等于运动估计区域参考尺寸时,将该划分节点的尺寸确定为运动估计区域的尺寸。

可选地,在本实施例中,确定待处理图像块的运动估计区域的尺寸,包括:当四叉树划分节点的尺寸大于或等于运动估计区域参考尺寸,且四叉树划分节点的划分信息表示待处理图像块仍进行四叉树划分,该四叉树划分节点的下一层划分节点的尺寸小于运动估计区域参考尺寸时,将运动估计区域参考尺寸作为运动估计区域的尺寸。

在上述涉及运动估计区域参考尺寸的实施例中,运动估计区域参考尺寸可以是固定的,例如,预先设置好。

或者,在上述涉及运动估计区域参考尺寸的实施例中,运动估计区域参考尺寸还可以实时变化。例如根据具体需求进行改变。

例如,在针对ctu1时,认为采用大小为16×16像素的运动估计区域参考尺寸较为合理,则根据16×16像素的运动估计区域参考尺寸确定ctu1的mer的尺寸;在针对ctu2时,认为采用大小为32×32像素的运动估计区域参考尺寸较为合理,则根据32×32像素的运动估计区域参考尺寸确定ctu2的mer的尺寸。

前文已述,运动估计区域的尺寸的确定方式对于编码端和解码端来说都是知道的。在上述根据运动估计区域参考尺寸来确定运动估计区域的尺寸的实施例中,该运动估计区域参考尺寸对于编码端与解码端来说都是知道的。

若方法400的执行主体为编码器时,该运动信息获取方法400还包括:编码运动估计区域参考尺寸。

若方法400的执行主体为解码器时,该运动信息获取方法400还包括:解码获得运动估计区域参考尺寸。

可选地,在上述涉及运动估计区域参考尺寸的实施例中,如果执行主体是编码端,该方法还包括:编码端向解码端发送该运动估计区域参考尺寸。

可选地,在上述涉及运动估计区域参考尺寸的实施例中,该运动估计区域参考尺寸预配置在编码端与解码端,或者,该运动估计区域参考尺寸通过协议规定。

因此,本申请实施例,参考运动估计区域参考尺寸,将四叉树划分节点的尺寸作为运动估计区域的尺寸,可以消除同一个运动估计区域内各个图像块在运动估计时的相互依赖性,从而可以实现运动估计区域内的并行编码或解码。

可选地,在一些实施例中,确定待处理图像块的运动估计区域的尺寸,包括:当四叉树划分节点在四叉树上的划分深度等于预设划分深度时,将四叉树划分节点的尺寸作为运动估计区域的尺寸。

若方法400的执行主体为编码器时,该运动信息获取方法400还包括:编码预设划分深度。

若方法400的执行主体为解码器时,该运动信息获取方法400还包括:解码获得预设划分深度。

可选地,在本实施例中,该预设划分深度是预配置在编码端与解码端的,或者该预设划分深度通过协议规定。

可选地,在一些实施例中,确定待处理图像块的运动估计区域的尺寸,包括:当四叉树划分节点中包括的编码或解码单元的数量大于或等于与预设编码数量时,将四叉树划分节点的尺寸作为运动估计区域的尺寸。

应理解,当本方法的执行主体为编码器时,当四叉树划分节点中包括的编码单元的数量大于或等于与预设编码数量时,将四叉树划分节点的尺寸作为运动估计区域的尺寸。

当本方法的执行主体为解码器时,当四叉树划分节点中包括的解码单元的数量大于或等于与预设解码数量时,将四叉树划分节点的尺寸作为运动估计区域的尺寸。

可选地,在本实施例中,四叉树划分节点的划分信息表示待处理图像块仍进行四叉树划分,该四叉树划分节点的下一层划分节点中包括的编码或解码单元的数量小于预设编码或解码数量。

若方法400的执行主体为编码器时,该运动信息获取方法400还包括:编码预设编码数量。

若方法400的执行主体为解码器时,该运动信息获取方法400还包括:解码获得预设编码数量。

可选地,在本实施例中,该预设编码数量是预配置在编码端与解码端的,或者该预设编码数量通过协议规定。

本文中描述的各个实施例可以为独立的方案,也可以根据内在逻辑进行组合,这些方案都落入本申请的保护范围中。

上文描述了本申请方法实施例,下文描述本申请装置实施例。应理解,装置实施例的描述与方法实施例的描述相互对应,因此,未详细描述的部分可以参见前面方法实施例。

图5为本申请实施例提供的视频处理装置500的示意性框图。视频处理装置500用于实现上文方法实施例的方法。视频处理装置500包括:

第一获取单元510,用于获取待处理图像块,待处理图像块经过四叉树划分与非四叉树划分而获得编码单元。

确定单元520,用于根据待处理图像块的四叉树划分节点的划分信息及尺寸,确定待处理图像块的运动估计区域。

第二获取单元530,用于根据运动估计区域,获得运动估计区域内的编码单元或解码单元的运动信息。

因此,本申请实施例,通过根据四叉树划分节点的划分信息与尺寸确定运动估计区域,其中包括根据四叉树划分节点的尺寸确定运动估计区域的尺寸,可以消除同一个运动估计区域内各个图像块在运动估计时的相互依赖性,从而可以实现运动估计区域内的并行编码或解码。

应理解,视频处理装置500可以是编码装置,也可以是解码装置,还可以是具备编、解码功能的装置。

可选地,在一些实施例中,确定单元520用于,根据四叉树划分节点的划分信息及尺寸,确定待处理图像块的运动估计区域的尺寸。

可选地,在一些实施例中,确定单元520用于,当四叉树划分节点为四叉树的叶子节点时,将四叉树划分节点的尺寸作为运动估计区域的尺寸。

可选地,在一些实施例中,确定单元520用于,当四叉树划分节点为非四叉树的根节点时,将四叉树划分节点的尺寸作为运动估计区域的尺寸。

可选地,在一些实施例中,确定单元520用于,当四叉树划分节点为四叉树的中间节点时,将四叉树划分节点的尺寸作为运动估计区域的尺寸。

可选地,在一些实施例中,确定单元520用于,当四叉树划分节点的划分信息表示待处理图像块不再进行四叉树划分时,将四叉树划分节点的尺寸作为运动估计区域的尺寸。

可选地,在一些实施例中,确定单元520用于,当四叉树划分节点的尺寸大于或等于运动估计区域参考尺寸时,将运动估计区域参考尺寸作为运动估计区域的尺寸。

在本实施例中,作为示例,四叉树划分节点的划分信息表示待处理图像块仍进行四叉树划分。

可选地,在本实施例中,在待处理图像块的四叉树上,四叉树划分节点的下一层划分节点的尺寸小于运动估计区域参考尺寸。

若视频处理装置500为编码装置,则该装置500还包括:编码单元,用于编码运动估计区域参考尺寸。

若视频处理装置500为解码装置,则该装置500还包括:解码单元,用于解码获得运动估计区域参考尺寸。

可选地,在一些实施例中,确定单元520用于,当四叉树划分节点在四叉树上的划分深度等于预设划分深度时,将四叉树划分节点的尺寸作为运动估计区域的尺寸。

若视频处理装置500为编码装置,则该装置500还包括:编码单元,用于编码预设划分深度。

若视频处理装置500为解码装置,则该装置500还包括:解码单元,用于解码获得预设划分深度。

可选地,在一些实施例中,确定单元520用于,当四叉树划分节点中包括的编码单元或解码单元的数量大于或等于与预设编码数量时,将四叉树划分节点的尺寸作为运动估计区域的尺寸。

若视频处理装置500为编码装置,则该装置500还包括::编码单元,用于编码预设编码数量。

若视频处理装置500为解码装置,则该装置500还包括:解码单元,用于解码获得预设编码数量。

可选地,在一些实施例中,第二获取单元530用于,根据运动估计区域外的编码或解码单元的运动信息,获得运动估计区域内的编码或解码单元的运动信息。

可选地,在一些实施例中,第二获取单元530用于,根据运动估计区域外的编码或解码单元的运动信息,获得运动估计区域内的编码或解码单元的merge列表信息。

可选地,在一些实施例中,待处理图像块为待编码图像块或待解码图像块。

应理解,第一获取单元510、确定单元520与第二获取单元530均可以采用处理器或处理器相关电路来实现。

如图6所示,本申请实施例还提供一种视频处理装置600,该视频处理装置600包括处理器610,存储器620与收发器630,其中,存储器620中存储指令或程序,处理器610用于执行存储器620中存储的指令或程序。存储器620中存储的指令或程序被执行时,该处理器610用于执行上述方法实施例的方法。

应理解,视频处理装置600可以是编码装置,也可以是解码装置,还可以是具备编、解码功能的装置。

还应理解,本申请实施例提供的视频处理装置500或视频处理装置600可对应于上文方法实施例中的编码器,或本申请实施例提供的视频处理装置500或视频处理装置600可对应于上文方法实施例中的解码器。

本申请实施例还提供一种芯片,芯片包括处理模块与通信接口,处理模块用于控制通信接口与外部进行通信,处理模块还用于实现上文方法实施例的方法。

本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被计算机执行时使得计算机实现上文方法实施例的方法。

本申请实施例还提供第六方面,提供一种包含指令的计算机程序产品,指令被计算机执行时使得计算机实现上文方法实施例的方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其他任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digitalsubscriberline,dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(digitalvideodisc,dvd))、或者半导体介质(例如固态硬盘(solidstatedisk,ssd))等。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

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