视频编码中的运动矢量预测子或合并候选的推导方法与流程

文档序号:11456377阅读:305来源:国知局
视频编码中的运动矢量预测子或合并候选的推导方法与流程

交叉引用

本发明主张在2014年12月9日提出的申请号为62/089,352的美国临时专利申请的优先权。因此在全文中合并参考这些专利申请案。

本发明是有关于视频编码,特别是有关于视频编码中的运动矢量预测子或合并候选的推导。



背景技术:

数字视频编码标准的发展在过去十年中已经使得诸如智能电话,数字电视和数码相机之类的多媒体系统取得成功。在h.261,mpeg-1,mpeg-2,h.263,mpeg-4和h.264/avc的标准化活动之后,由于需要更大的图像分辨率、更高的帧速率和更好的视频质量,提高视频压缩性能的需求仍然很强。因此,继续努力开发新的视频编码技术以提高h.264/avc编码效率。hevc基于混合块的运动补偿变换编码架构。压缩的基本单位称为编码树单元(codingtreeunit,ctu)。每个ctu可以包含一个编码单元(codingunit,cu)或递归地分成四个较小的cu,直到达到预定的最小cu尺寸。每个cu(也称为叶cu)包含一个或多个预测单元(predictionunit,pu)和变换单元(transformunit,tu)树。

通常,ctu由一个亮度编码树块(codingtreeblock,ctb)和两个对应的色度ctb组成,cu由一个亮度编码块(codingblock,cb)和两个对应的色度cb组成,pu由一个亮度预测块(predictionblock,pb)和两个相应的色度pb,tu由一个亮度变换块(transformblock,tb)和两个相应的色度tb组成。然而,可能会发生异常,因为亮度和色度的最小tb尺寸为4x4(即,不允许使用2x2色度tb用于4:2:0颜色格式),并且每个帧内色度cb始终只有一个帧内色度pb,而不论在相应的帧内亮度cb中的帧内亮度pb的数目。

对于帧内cu,亮度cb可以被预测为一个pb,或者划分为四个亮度pb并且被预测为单独的pb。对于两个色度cb,每一个总是由一个色度pb预测。虽然每个亮度pb具有一个帧内亮度预测模式,但是两个色度pb共享一个帧内色度预测模式。此外,对于帧内cu,tb的尺寸被限制为不大于pb的尺寸。在每个pb中,应用帧内预测而自tb的相邻重建采样预测pb内的每个tb的采样。对于每个pb,除了33个定向帧内预测模式之外,还支持dc和平面模式来预测平坦区域和逐渐变化的区域。

对于每个帧间pu,可以选择包括帧间,跳过和合并的三种预测模式中的一个。一般来说,引入运动矢量竞争(motionvectorcompetition,mvc)方案来从包括空间和时间运动候选的给定候选集中选择运动候选。对运动估计的多重参考允许在两个可能的重建参考图片列表(即,列表0和列表1)中找到最佳参考。对于帧间模式,已经开发了高级运动矢量预测(advancedmotionvectorprediction,amvp),以基于编码的相邻块导出运动矢量预测候选。因此,帧间模式也称为amvp模式。对于帧间编码的cu,发送帧间预测指示符(即列表0,列表1或双向预测),参考索引,运动候选索引,运动矢量差(motionvectordifferences,mvd)和预测残差。对于跳跃模式和合并模式,仅传送合并索引,并且当前的pu从编码的合并索引参考的相邻pu继承帧间预测子,参考索引和运动矢量。在跳过已编码的cu的情况下,也省略了残差信号。量化,熵编码和去块滤波器(df)也在hevc的编码环路中。这三个模块的基本操作与h.264/avc中使用的相似。

采样自适应偏移(sampleadaptiveoffset,sao)是hevc中采用的新的环路滤波技术,其在去块滤波器(deblockingfilter,df)之后应用。sao旨在通过将解块的采样分类到不同的类别中,然后为每个类别的去块采样添加一个偏移量来减少采样失真。

在帧间预测中的竞争性的空间-时间运动候选

hevc中存在用于帧间预测的三种预测模式,包括帧间模式,跳过模式和合并模式。为了提高mv预测和mv编码的编码效率,应用运动矢量竞争(mvc)方案在包含空间和时间运动候选的给定候选列表中选择一个运动候选。mvc方案适用于所有三种模式。

对于帧间模式,发送帧间预测指示符以表示列表0预测,列表1预测或双预测。接下来,当存在多个参考图片时,传送一个或两个参考索引。发送索引以用于每个预测方向,以从候选列表中选择一个运动候选。如图1所示,帧间模式的候选列表包括两个空间运动候选和一个时间运动候选:

1.左侧候选(来自a0和a1的第一可用的候选),

2.上方候选(来自b0,b1和b2的第一可用的候选),以及

3.时间候选(来自tbr和tct的第一可用的候选)。

从左下方的块到左侧底部的块(即,从a0到a1)搜索左侧空间运动候选,并且第一可用的候选被选择以作为左侧候选。从右上方的块到左上方的块(即,b0,b1,然后b2)搜索顶部空间运动候选,并且第一可用的候选被选择以作为顶部候选。从位于参考图片中的块(tbr或tct)导出时间运动候选,该参考图片被称为时间并置图像(temporalcollocatedpicture)。通过在切片头(sliceheader)中发送一个标志来指定时间并置图像,以指定用作并置参考图片的参考图像列表和一个参考索引。在发送索引之后,发送一个或两个相应的运动矢量差(motionvectordifferences,mvd)。

对于跳过模式和合并模式,合并索引被发送以指示合并候选列表中的哪个候选者被使用。不发送帧间预测指示符(interpredictionindicator),参考索引或mvd。跳过或合并模式的每个pu重复使用帧间预测指示符,参考索引和所选候选的运动矢量。请注意,如果所选择的候选是时间运动候选,则参考索引总是设置为0。如图1所示,跳过模式和合并模式的合并候选列表包括四个空间运动候选和一个时间运动候选:

1.左侧底部候选(a1),

2.右侧顶部候选(b1),

3.右侧上方候选(b0),

4.左侧下方候选(a0),

5.左侧上方候选(b2),仅当上述空间候选不可用时才使用

6.时间候选(来自tbr和tct的中第一可用的候选)。

冗余删除和附加运动候选

对于帧间模式,跳过模式和合并模式,在导出空间运动候选之后,执行修剪处理以检查空间候选中的冗余。

在去除冗余或不可用的候选之后,可以在编码器侧和解码器侧动态地调整候选列表的尺寸,使得截短(truncated)的一元二进制化可以有益于索引的熵编码。虽然候选列表的动态尺寸可以提高编码增益,但它也引入了解析问题。当时间运动候选被包括在候选列表中并且如果先前图像的一个运动矢量不能被正确解码时,则可能发生编码器侧与解码器侧之间的候选列表的不匹配,这可能导致候选索引解析错误。这种解析错误可能传播,并对视频质量造成严重影响,因为当前图片的其余部分无法被正确解析或解码。此外,此解析错误可影响可能使用时间运动候选的后续帧间图像。因此,运动矢量的一个小的解码错误可能导致许多后续图像的解析失败。

在hevc中,为了解决所提到的解析问题,使用固定的候选列表尺寸来解耦候选列表构造和索引的解析。此外,为了补偿由固定列表尺寸引起的编码性能损失,附加候选被分配给候选列表中的空位置。在此过程中,索引以最大长度的截短的一元代码而编码。根据hevc,跳过模式和合并模式的切片头中发送最大长度,最大长度固定为2以用于帧间模式。

对于帧间模式,在推导和修剪两个空间运动候选和一个时间运动候选之后,添加零矢量运动候选以填充amvp候选列表中的空位置。对于跳过模式和合并模式,在四个空间运动候选和一个时间运动候选推导和修剪之后,如果可用候选的数量小于固定候选列表尺寸,则导出并添加附加候选以填充合并候选列表中的空位置。

使用两种类型的附加候选来填充合并候选列表:组合的双向预测(bi-predictive)运动候选和零矢量运动候选。通过根据预定义的顺序组合的两个原始运动候选来创建组合的双向预测运动候选。在添加组合的双向预测运动候选之后,如果合并候选列表仍然具有一个或多个空位置,则一个或多个零矢量运动候选被添加到剩余位置。

相对于传统的mvp方案,amvp方案已被证明可以提高编码效率,其中,传统的mvp方案可以是对应于相邻块的最后编码的运动矢量的单个候选。希望开发新的mvp方案以进一步提高帧间、合并、或跳过编码模式的性能。



技术实现要素:

本发明提供一种推导用于在帧间、或合并或跳过模式中编码的块的基于方向优先级的候选的方法和装置。根据一实施方式,与用于当前块的一个或多个先前编码块相关联的一个或多个运动矢量被确定。通过根据与运动矢量的预测方向相关联的优先级顺序搜索先前编码块来导出当前块的一个或多个基于方向优先级的候选。与具有第一预测方向的先前编码块相关联的运动矢量被选择为具有比具有第二预测方向的先前编码块相关联的运动矢量更高的优先级。推导的基于方向优先级的候选被插入到候选列表中。从候选列表中选择运动矢量预测子(mvp)、或合并/跳过候选,以在帧间、或者合并或跳过模式中对当前块进行编码。

在一个实施例中,基于方向优先级的候选是搜索范围内的第一可用双向候选。

先前编码的块可以包括当前块的顶部边界中的一个或多个顶部相邻块、当前块的左侧边界中的一个或多个左侧相邻块,或两者都是。基于方向优先级的候选可以包括从顶部相邻块导出的一个或多个基于顶部方向优先级的候选、从左侧相邻块导出的一个或多个基于左侧方向优先级的候选、或两者都是。例如,通过从右到左或从左到右搜索顶部相邻块来导出基于顶部方向优先级的候选。此外,搜索可以从交替的方式从中心顶部相邻块向两个顶端相邻块传送。在另一示例中,通过从上到下或从下到上搜索左侧相邻块来导出基于左侧方向优先级的候选。此外,搜索可以以交替方式从中心左侧相邻块至两个顶端相邻块。

基于方向优先级的候选可以包括从顶部相邻块导出的一个基于顶部方向优先级的候选和从左侧相邻块导出的一个基于左侧方向优先级的候选。顶部相邻块可以对应于当前块的中心顶部边界中的单个中心顶部相邻块,并且左侧相邻块可以对应于当前块的中心左侧边界中的单个中心左侧相邻块。

预测方向可以包括双向,列表0和列表1,并且与预测方向相关联的优先级顺序对应于双向最高优先级、列表0中间优先级、和列表-1最低优先级。

预测方向可以包括双向和单向,并且第一预测方向是双向,而第二预测方向是单向。

本发明的方法可以包括将一个或多个空间候选、一个或多个临时候选、或一个或多个空间候选和一个或多个临时候选插入到候选列表中。候选列表可以包括从当前块的一个或多个顶部相邻块导出的一个基于顶部方向优先级的候选,从当前块的一个或多个左侧相邻块导出的一个基于左侧方向优先级的候选,以及五个空间候选。候选列表可以进一步包括来自并置的四个时间候选。候选列表可以在将空间候选,时间候选或两者都插入候选列表之前,期间或之后被修剪以移除一个或多个冗余候选。

通过使用上下文自适应二进制算术编码(cabac),对候选列表的候选成员的候选索引进行编码。候选索引的每个二进制可以用每个二进制的自身可能的状态进行上下文编码。

附图说明

图1示出了用于导出高级运动矢量预测(amvp)或合并候选列表的空间和时间相邻块的示例。

图2示出了根据本发明的实施例的用于导出高级运动矢量预测(amvp)或合并候选列表的空间和时间相邻块的示例。

图3示出了根据本发明的实施例的从中心顶部相邻块和中心左侧相邻块的基于方向优先级的候选导出的示例。

图4示出了根据本发明的实施例的以交替方式按从中心左侧相邻块向两端块的搜索顺序搜索左侧边界中的左侧相邻块的基于方向优先级的候选导出的示例。

图5示出了根据本发明的实施例的以交替方式按从两端块向中心左侧相邻块的搜索顺序搜索左侧边界中的左侧相邻块的基于方向优先级的候选导出的示例。

图6示出了根据本发明的实施例的按从一端相邻块到另一端相邻块的搜索顺序搜索左侧边界中的左侧相邻块的基于方向优先级的候选导出的示例。

图7示出了根据本发明的实施例的用于导出基于方向优先级的候选的左边界中的左相邻块和顶部边界中的顶部相邻块的示例。

图8示出了根据本发明的实施例的包括用于帧间、合并、或跳过模式的基于方向优先级的候选导出的编码系统的示例性流程图。

具体实施方式

以下描述是实施本发明的最佳实施方式。此描述是为了说明本发明的一般原理,而不应被认为是限制本发明。本发明的范围应以权利要求书来确定。

虽然高级运动矢量预测(amvp)安排方案已经显示出提高了编码效率,但是本发明公开的方法和装置可进一步提高amvp方案的性能。然而,所公开的候选推导可以应用于需要推导运动矢量预测子(mvp)候选的其他视频编码应用。因此,在本发明中公开了基于方向优先级的方法来推导用于跳过,合并,直接和/或帧间模式的运动矢量预测子(mvp)或合并候选,以提高编码效率。

根据基于方向优先级的空间/时间合并候选(或mvp)的推导,从具有与预测方向相关的给定优先级的一个或多个块中搜索候选。预测方向是指帧间预测模式中的双向,列表0方向和列表1方向。本发明的动机基于这样的观察,即这些预测方向对编码性能可能具有不同的影响。例如,双向运动矢量可能导致更好的预测结果,因为它使用两个不同方向上(即,列表0方向和列表1方向)的两个参考块。如果这个第一选择不可用,那么将寻求下一个选择。例如,因为列表0候选在相同参考列表中,列表0候选可以被搜索作为下一个选择。示例性的推导过程被公开如下:

·在搜索范围内搜索最早的n个(n等于正整数)可用双向候选。一旦找到了最早的第一个到第n个可用的候选/mvp,该第一个到第n个可用的候选/mvp被用于导出合并候选(或mvp)。

·如果从先前步骤可以导出的候选者少于n个,则从搜索范围内的第一个可用的单向列表0候选中继续搜索n个候选的剩余数量的候选。一旦找到了最早的第一个到第n个可用的候选/mvp,该第一个到第n个可用的候选/mvp被用于导出合并候选(或mvp)。

·如果仍然可以从先前步骤导出的候选者少于n个,则从搜索范围内的第一个可用单向列表1候选中继续搜索n个候选的剩余数量的候选。一旦找到了最早的第一个到第n个可用的候选/mvp,该第一个到第n个可用的候选/mvp被用于导出合并候选(或mvp)。

在上述示例中,给定方向的优先级顺序是双向→列表0→列表1(即,双向对应于最高优先级,列表0对应于中间优先级,列表1对应于最低优先级优先)。然而,本发明不限于上述示例中所示的特定方向优先级顺序。其他方向优先顺序如双向→列表1→列表0,列表0→列表1→双向,或列表1→列表0→双向也可以使用。在另一个示例中,方向优先级顺序还可以取决于给定的目标参考列表,例如双向→给定目标参考列表→另一参考列表。

图2示出了根据本发明的实施例的基于方向优先级的空间候选推导的示例。mvp或合并候选的推导过程描述如下:

·从a1到an搜索n个左侧空间候选

-从a1到an搜索最早的n个(n等于正整数)可用的双向候选。一旦找到了最早的第一个到第n个可用的候选/mvp,它们被用于导出合并候选(或mvp)。

-如果从先前步骤可以导出的候选者少于n个,则从a1到an继续搜索来自第一可用的单向预测列表0候选中n个候选的剩余数量的候选。一旦找到了最早的第一个到第n个可用的候选/mvp,该第一个到第n个可用的候选/mvp被用于导出合并候选(或mvp)。

-如果从先前步骤可以导出的候选者仍然少于n个,则从a1到an继续搜索来自第一可用的单向预测列表1候选中n个候选的剩余数量的候选。一旦找到了最早的第一个到第n个可用的候选/mvp,该第一个到第n个可用的候选/mvp被用于导出合并候选(或mvp)。

·从b1到bm搜索n个顶部候选

-从b1到bm搜索最早的n个(n等于正整数)可用的双向候选。一旦找到了最早的第一个到第n个可用的候选/mvp,它们被用于导出合并候选(或mvp)。

-如果从先前步骤可以导出的候选者少于n个,则从b1到bm继续搜索来自第一可用的单向预测列表0候选中的n个候选的剩余数量的候选。一旦找到了最早的第一个到第n个可用的候选/mvp,该第一个到第n个可用的候选/mvp被用于导出合并候选(或mvp)。

-如果从先前步骤可以导出的候选者仍然少于n个,则从b1到bm继续搜索来自第一可用的单向预测列表1候选中的n个候选的剩余数量的候选。一旦找到了最早的第一个到第n个可用的候选/mvp,该第一个到第n个可用的候选/mvp被用于导出合并候选(或mvp)。

在上述示例中,n个左侧空间候选被指定为从a1到an的左侧块导出的基于方向优先级的候选。类似地,n个顶部空间候选被指定为从b1到bm的顶部块导出的基于方向优先级的候选。尽管在上述示例中当前块的顶边界(也称为“上边界”)中的空间相邻块b1,b2,...,bm和当前块的左侧边界中的空间相邻块a1,a2,...,an用于导出基于定向优先级的候选,来自对应时间参考图片中的空间相邻块和/或时间并置块的其他块也可以被使用。例如,仅使用顶部边界中的空间相邻块或者仅使用左边界中的空间相邻块来导出基于方向优先级的候选。尽管在上述示例中,顶部边界中的所有相邻块或左边界中的所有相邻块用于导出基于方向优先级的候选,但也可以使用部分相邻块。此外,空间相邻块可以在图2所示的空间相邻块之外选择。此外,在上述示例中,分别针对顶部边界中的相邻块和左边界中的相邻块导出各个基于方向优先级的候选。然而,也可以从顶部边界中的顶部相邻块和左侧边界中的左侧相邻块一同导出基于方向优先级的候选。

图3示出了本发明的另一个实施例,其中导出了两个新的空间候选,其中包括一个来自左侧边界的中心,另一个来自上方边界的中心。因此,空间候选和时间候选包括:

·5+2个空间候选(ac,bc,a1,a0,b1,b0,b2)和

·4个时间候选(h,tc,f,g)。

如上所示,两个附加候选者ac和bc可以插入候选列表的前两个位置。列表的尺寸可以是l,其中l是正整数(例如7)。来自{5+2个空间候选和4个时间候选}的前l个可用候选被包括在候选名单中。在插入候选人名单之前,期间或之后可以应用修剪过程,以便删除所有或部分冗余候选。如果列表中包含少于l个候选项,则可以插入默认候选。如果列表中有超过l个候选,则只会使用前l个候选。虽然在上述示例中将两个附加候选ac和bc插入候选列表的前两个位置,但是它们也可以插入列表中的任何位置。

在本发明的另一个实施例中,从左侧边界的中心和上方边界的中心的两个新的空间候选通过从各个中心开始搜索左边界和上方边界得到。例如,如图4所示,左空间候选的搜索顺序可以是(a3→a2→a4→a1)或(a2→a3→a1→a4)。换句话说,搜索顺序对应于从中心位置到两端的交替方式的搜索。例如,搜索顺序(a3→a2→a4→a1)对应于从中心位置(即a3)开始,向下搜索(即a2),向上搜索(即a4)并向下搜索(即a1)。

在本发明的另一个实施例中,从左侧边界的中心和上方边界的中心的两个新的空间候选通过根据基于方向优先级的候选推导来搜索左侧边界和上方边界而得到。然而,搜索顺序是从两端块到中间的交替方式。例如,如图5所示,左侧空间候选的搜索顺序为(a1→a4→a2→a3)或(a4→a1→a3→a2)。

在本发明的另一个实施例中,从左侧边界和上方边的两个新的空间候选通过根据基于方向优先级的候选推导来搜索起始的左边界和上述边界。然而,搜索顺序是从一个端块到另一个端块。例如,如图6所示,左侧空间候选的搜索顺序为(a1→a2→a3→a4)或(a4→a3→a2→a1)。

在与图3~图5相关联的上述实施例中,通过相邻块的搜索可以用于如前所述的基于方向优先级的候选推导。此外,虽然当前块的左侧边界中的相邻块用作示例以导出mvp/合并候选,但是顶部边界中的相邻块、或顶部边界和左侧边界中的相邻块可以被使用以用于导出mvp/合并候选人。同样,基于方向优先级的候选推导可以应用于这些相邻块。

在另一示例中,两个新的空间候选从左测边界和上方边界而被导出,其中搜索顺序从中心块开始到边界的两个端块,并且方向优先级顺序为双预测→列表0→列表1。然而,其他定向优先顺序也可以用于实施本发明。

在又一示例中,两个新的空间候选从左侧边界和上方边界而被导出,其中搜索顺序从a1到an或从b1到bm(如图2所示),并且方向优先级顺序为双预测→列表0→列表1。然而,其他定向优先顺序也可以用于实施本发明。

在另一示例中,两个新的空间候选从左侧边界和上方边界而被导出,其中搜索顺序从an开始到a1或从bm开始到b1,并且方向优先级顺序为双预测→列表0→列表1。然而,也可以使用其他定向优先级顺序来实施本发明。

为了提高编码效率,mvp索引或合并候选索引可以是已编码的上下文自适应二进制编码(context-adaptivebinaryarithmeticcoding,cabac),并且每个二进制(bin)以其自身可能的状态进行上下文编码。每个已编码的二进制(bin)都是独立地上下文自适应。作为示例,合并候选列表的尺寸是7,并且每个二进制是独立地上下文编码。

在本发明的另一个实施例中,从左侧边界导出n个(等于正整数)左空间mvp或合并候选,直到找到前n个可用候选。如图7所示,多个块之间的搜索顺序可以是以下之一:

1.(a(n+1)/2-1,a(n+1)/2,…,a1,an)

2.(a(n+1)/2-1,a(n+1)/2,…,a1,an,a0)

3.(a(n+1)/2,a(n+1)/2-1,…,an,a1)

4.(a(n+1)/2,a(n+1)/2-1,…,an,a1,a0)

5.(a1→…→an)

6.(a0,a1→…→an)

7.(an→…→a1)

8.(an→…→a0)

或者,可以从左侧边界导出n个(n等于正整数)左侧空间mvp或合并候选,直到找到具有给定优先级顺序的前n个可用候选。多个块之间的搜索顺序可以是以上描述的8个搜索顺序之一。根据本发明的多个搜索块内的空间mvp或合并候选搜索被描述如下:

·根据搜索顺序搜索多个块中的前n个(n等于正整数)可用的双向候选。一旦找到最早的第一个到第n个可用的候选,这些可用的候选被用于导出合并候选(或mvp)。

·如果从先前步骤导出的候选者仍然少于n个,则根据搜索顺序在多个块中继续搜索来自第一可用单向预测列表0候选中的n个候选的剩余数量的候选。一旦找到了最早的第一个到第n个可用的候选,该第一个到第n个可用的候选被用于导出合并候选(或mvp)。

·如果从先前步骤导出的候选者仍然少于n个,则根据搜索顺序在多个块中继续搜索来自第一可用单向预测列表1候选中的n个候选的剩余数量的候选。一旦找到了最早的第一个到第n个可用的候选,该第一个到第n个可用的候选被用于导出合并候选(或mvp)。

在另一个实施例中,从上方边界导出n个(n等于正整数)上方空间mvp或合并候选,直到找到最早的n个可用候选。如图7所示,多个块之间的搜索顺序可以是以下之一:

1.(b(m+1)/2-1,b(m+1)/2,…,b1,bm)

2.(b(m+1)/2-1,b(m+1)/2,…,b1,bm,b0)

3.(b(m+1)/2-1,b(m+1)/2,…,b1,bm,b0,bm+1)

4.(b(m+1)/2,b(m+1)/2-1,…,bm,b1)

5.(b(m+1)/2,b(m+1)/2-1,…,bm,b1,bm+1)

6.(b(m+1)/2,b(m+1)/2-1,…,bm,b1,b0)

7.(b(m+1)/2,b(m+1)/2-1,…,bm,b1,bm+1,b0)

8.(b1→…→bm)

9.(b0,b1→…→bm)

10.(bm→…→b1)

11.(bm→…→b0)

12.(b1→…→bm+1)

13.(b0,b1→…→bm+1)

14.(bm+1→…→b1)

15.(bm+1→…→b0)

在另一个实施例中,利用给定的优先级顺序,从上方边界导出n个(n等于正整数)上方空间mvp或合并候选,直到找到最早的n个可用候选。如图7所示,多个块之间的搜索顺序可以是以下之一:

1.(b(m+1)/2-1,b(m+1)/2,…,b1,bm)

2.(b(m+1)/2-1,b(m+1)/2,…,b1,bm,b0)

3.(b(m+1)/2-1,b(m+1)/2,…,b1,bm,b0,bm+1)

4.(b(m+1)/2,b(m+1)/2-1,…,bm,b1)

5.(b(m+1)/2,b(m+1)/2-1,…,bm,b1,bm+1)

6.(b(m+1)/2,b(m+1)/2-1,…,bm,b1,b0)

7.(b(m+1)/2,b(m+1)/2-1,…,bm,b1,bm+1,b0)

8.(b1→…→bm)

9.(b0,b1→…→bm)

10.(bm→…→b1)

11.(bm→…→b0)

12.(b1→…→bm+1)

13.(b0,b1→…→bm+1)

14.(bm+1→…→b1)

15.(bm+1→…→b0)

根据本发明的多个搜索块内的空间mvp或合并候选搜索的另一实施例描述如下:

·根据搜索顺序,在多个块中搜索前n个(n等于正整数)可用的双向候选。一旦找到第一个到第n个可用的候选者,该第一个到第n个可用的候选者被用于导出合并候选(或mvp)。

·如果从先前步骤导出的候选者仍然少于n个,则根据搜索顺序在多个块中继续搜索来自第一可用单向预测列表0候选中的n个候选的剩余数量的候选。一旦找到了最早的第一个到第n个可用的候选,该第一个到第n个可用的候选被用于导出合并候选(或mvp)。

·如果从先前步骤导出的候选者仍然少于n个,则根据搜索顺序在多个块中继续搜索来自第一可用单向预测列表1候选中的n个候选的剩余数量的候选。一旦找到了最早的第一个到第n个可用的候选,该第一个到第n个可用的候选被用于导出合并候选(或mvp)。

图8示出了根据本发明的实施例的包括用于帧间、合并、或跳过模式的基于方向优先级的候选推导的编码系统的示例性流程图。在步骤810中,系统确定与当前块的一个或多个先前编码的块相关联的一个或多个运动矢量。运动矢量可以在编码器侧导出或从解码器侧的比特流解析。然后,如步骤820所示,系统通过根据与运动矢量的预测方向相关联的优先级顺序搜索所述一个或多个先前编码的块来导出当前块的一个或多个基于方向优先级的候选。与具有第一预测方向的先前编码块相关的运动矢量被选择为比具有第二预测方向的与先前编码块相关的运动矢量更高的优先级。在步骤830中,一个或多个基于方向优先级的候选被插入到候选列表中。在步骤840中,在帧间、合并、或跳过模式中,自用于编码当前块的候选列表选择运动矢量预测子(mvp)或合并/跳过候选。

上述的流程图用于描述根据本发明实施方式的基于方向优先级的候选推导的示例。本领域技术人员可在不脱离本发明精神的前提下,修改、重排列、拆分、或组合各个步骤,以实现本发明。

在提供特定应用和其需求的情况下,以上描述使得本领域技术人员能够实现本发明。对本领域技术人员来说,各种修饰是清楚的,以及在此定义的基本原理可以应用与其他实施方式。因此,本发明并不限于描述的特定实施方式,而应与在此公开的原则和新颖性特征相一致的最广范围相符合。在上述详细描述中,为全面理解本发明,描述了各种特定细节。然而,本领域技术人员能够理解本发明可以实现。

以上描述的本发明的实施方式可在各种硬件、软件编码或两者组合中进行实施。例如,本发明的实施方式可为集成入视频压缩芯片的电路或集成入视频压缩软件以执行上述过程的程序代码。本发明的实施方式也可为在数据信号处理器(digitalsignalprocessor,dsp)中执行上述程序的程序代码。本发明也可涉及计算机处理器、数字信号处理器、微处理器或现场可编程门阵列(fieldprogrammablegatearray,fpga)执行的多种功能。可根据本发明配置上述处理器执行特定任务,其通过执行定义了本发明揭示的特定方法的机器可读软件代码或固件代码来完成。可将软件代码或固件代码发展为不同的程序语言与不同的格式或形式。也可为了不同的目标平台编译软件代码。然而,根据本发明执行任务的软件代码与其他类型配置代码的不同代码样式、类型与语言不脱离本发明的精神与范围。

在不脱离本发明精神或本质特征的情况下,可以其他特定形式实施本发明。描述示例被认为仅在所有方面进行说明并且不是限制性的。因此,本发明的范围由权利要求书指示,而非前面描述。所有在权利要求等同的方法与范围中的变化都属于本发明的涵盖范围。

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