推导缩放的运动向量的方法、装置和计算机可读媒介与流程

文档序号:11292576阅读:286来源:国知局
推导缩放的运动向量的方法、装置和计算机可读媒介与流程

本发明是有关于视频编码,且特别地,本发明是有关于高效视频编码(high-efficiencyvideocoding,以下简称hevc)中以增加的有效缩放比来缩放候选运动向量以推导运动向量预测子(motionvectorpredictor,以下简称mvp)。



背景技术:

高效视频编码(high-efficiencyvideocoding,hevc)是由视频编码联合组(jointcollaborativeteamonvideocoding,以下简称jct-vc)开发的一种新的国际编码标准。hevc是基于混合型分块运动补偿的类余弦变换的变换编码架构(hybridblock-basedmotion-compensateddct-liketransformcodingarchitecture)。其用于压缩的基本单元是一个2n×2n的方块,被称为编码单元(codingunit,以下简称cu),且每一个cu皆可被递归地分割为4个更小的cu,直到产生预设的最小尺寸。每一个cu可包含一个或多个预测单元(predictionunits,以下简称pu)。pu的尺寸可以是2n×2n、2n×n、2n×nu、2n×nd、n×2n、nl×2n、nr×2n、或者n×n,其中2n×n、2n×nu、2n×nd以及n×2n、nl×2n、nr×2n分别对应于具有对称或不对称pu尺寸分割的2n×2n尺寸pu的水平和垂直划分。

为进一步增强hevc中运动向量编码的编码效率,基于运动向量竞争的机制被用于从既定运动向量预测子(motionvectorpredictor,以下简称mvp)候选项集合中选择一个运动向量预测子(mvp),所述mvp集合包含空间及时间mvp。在hevc测试模型版本3.0(hevctestmodelversion3.0,以下简称hm-3.0)中,包含帧间(inter)、跳过(skip)以及合并(merge)三种帧间预测模式。所述帧间模式是利用可与mvp一起使用的传输的运动向量差(motionvectordifference,以下简称mvd)来执行运动补偿预测,以推导运动向量(motionvectors,以下简称mv)。而跳过及合并模式则利用运动推理方法(mv=mvp+mvd,其中mvd为0)以从空间相邻块(空间候选项)或位于同位图像(co-locatedpicture)中的时间块(时间候选项)来获取运动信息。上述同位图像为列表0(list0)或列表1(list1)中的第一参考图像,并于条带头(sliceheader)中表示。

当pu在跳过或者合并模式下编码时,除了所选候选项的索引之外,并不传输任何运动信息。至于跳过的pu(skippu),则连残差信号(residualsignal)也可以省略。对于hm-3.0中的帧间模式来说,先进运动向量预测(advancedmotionvectorprediction,以下简称amvp)机制被用于从包含两个空间mvp以及一个时间mvp的amvp候选项集合中选择一个mvp。此处的mvp是指运动向量预测子(motionvectorpredictor)或者运动向量预测(motionvectorprediction)。而对于hm-3.0中的合并和跳过模式来说,合并机制则被用于从包含四个空间mvp及一个时间mvp的合并候选项集合中选择一个mvp。

对于帧间模式来说,参考图像索引被明确地传输到解码器。随后,可从用于既定参考图像索引的候选项集合中选择mvp。图1是依据hm-3.0用于帧间模式的mvp候选项集合的示意图,其中mvp候选项集合包含两个空间mvp和一个时间mvp:

1、左侧预测子(来自a0及a1的第一可用mv);

2、顶部预测子(来自b0、b1及bn+1的第一可用mv);以及

3、时间预测子(来自tbr及tctr的第一可用mv)。

上述时间预测子是从同位图像中的块(tbr或tctr)中推导出来的,而所述的同位图像则是列表0或列表1中的第一参考图像。与所述时间预测子(mvp)相关的块可具有两个mv:一个mv来自列表0,一个mv来自列表1。所述时间mvp则依据下述规则从来自列表0或列表1的mv推导出来:

1、穿过(cross)当前图像的mv首先被选中;以及

2、若两个mv皆穿过或皆不穿过当前图像,则具有与当前列表相同的参考列表的mv被选中。

在hm-3.0中,若特定块是在合并模式下被编码,则mvp索引会被传送以表明mvp候选项集合中的哪一mvp被用于此欲被合并的块。为遵循运动信息共享的精神,每一合并的pu(mergedpu)可重用被选候选项的mv、预测方向以及参考图像索引。请注意,若被选的mvp为时间mvp,则参考图形索引总是被设定为第一参考图像。图2是依据hm-3.0用于合并模式的mvp候选项集合的示意图,其中mvp候选项集合包含四个空间mvp和一个时间mvp:

1、左侧预测子(am);

2、顶部预测子(bn);

3、时间预测子(来自tbr及tctr的第一可用mv);

4、右上方预测子(b0);以及

5、左下方预测子(a0)。

在hm-3.0中,为了避免出现空的候选项集合,帧间模式和合并模式都采用了一种程序(process)。当在帧间或合并模式下未推测出候选项时,此程序可以将具有0值的mv作为候选项添加至候选项集合。

基于率失真优化(rate-distortionoptimization,以下简称rdo)决策,编码器可从用于帧间、跳过、或合并模式的既定mvp列表中选择一个最终mvp,并在移除列表中的冗余mvp之后将所选mvp的索引传输至解码器。然而,由于时间mvp包含在mvp列表中,因此任何传输错误都可能导致解码器端的解析错误(parsingerror),同时这种错误可能会传播(propagate)。当先前图像的mv未被正确解码时,将会出现编码器端的mvp列表与解码器端的mvp列表失配的状况。从而,后续mv的解码也可能受到影响,且此状况可能会在后续的多个图像中存在。

在hm-4.0中,为了解决与hm-3.0中合并/amvp相关的解析问题,其使用了固定的mvp列表尺寸(fixedmvplistsize)以解耦(decouple)mvp列表架构与mvp索引解析。此外,为了补偿因固定的mvp列表尺寸导致的编码性能损失,额外的mvp被分配给mvp列表中的空位。在此程序中,合并索引是利用截断的一元码来编码,其具有等于或者小于5的固定长度,而amvp索引则是利用等于或者小于2的固定长度来编码。

hm-4.0的另一个变化是mvp位置的统一。如图3所示,合并及跳过皆使用相同的位置。对于hm-4.0中的合并模式来说,多达四个空间mvp可从a0、a1、b0和b1中推导出来,且一个时间mvp可从tbr或tctr中推导出来。对于时间mvp来说,tbr首先被使用。若tbr不可用,则使用tctr来替代。若四个空间mvp中有任何一个不可用,则块位置b2被使用以推导mvp来作为替代。在四个空间mvp和一个时间mvp推导程序之后,执行移除冗余mvp的程序。在冗余mvp移除之后,若可用的mvp数量小于5,则三种类型的额外mvp被推导出来并添加至mvp列表中。

在用于空间及时间mvp的推导中,mvp可与指向作为目标参考图像的相同参考图像的mv一并推导。另一方面,mvp可从指向不同参考图像的候选mv中推导出来。图4是基于与空间相邻候选块相关的各种类型的运动向量来推导空间mvp的范例的示意图,其中所述候选块包含空间相邻块a0、a1、b0、b1和b2,以及时间同位块tbr或tctr。圆圈中的数字代表用于从各自的候选项中决定mvp的搜寻顺序。所述搜寻的最高优先级对应于指向既定参考列表中目标参考图像的mv。所述搜寻的第二高优先级对应于指向另一参考列表中目标参考图像的mv。所述搜寻的第三和第四优先级则分别对应于指向既定参考列表和其他参考列表中其他参考图像的mv。在图4的特定范例中,运动向量1和2的可用性可以一并检查,而运动向量3和4的可用性可一并检查。运动向量1和2的可用性先从候选块a0到a1检查,再从b0到b2检查。若不存在任何mv,则所述搜寻在所有块中检查运动向量3和4的可用性。当mvp是从指向不同参考图像的mv或者用于同位图像的mv中推导出时,所述mv需要被缩放以考虑不同的图像距离。图4所示的用于mvp推导的搜寻类型范例并非本发明的限制。举例来说,每一个块中运动向量1至4的可用性可一并检查。在另一范例中,运动向量1可按顺序先从a0到a1、再从b0到b2检查。若没有任何mv存在,则此搜寻可先从a0到a1、再从b0到b2检查运动向量2。若仍未得出mvp,则此程序会继续对运动向量3和运动向量4执行。

在空间和时间mvp的推导过程中,需要除法运算来缩放运动向量。缩放因子可基于图像距离比(picturedistanceratio)而计算出来。举例来说,mvp可基于同位块的mv推导出来。图像距离缩放因子distscalefactor可根据下式计算:

其中poccurr和pocref分别代表当前图像的图像顺序计数(pictureordercounts,以下简称poc)和目标参考图像的图像顺序数值(poc),而poctemp和poctemp_ref则分别代表同位图像的poc和同位块的mv指向的参考图像的poc。虽然此处是以使用同位块的mv为例说明图像距离缩放因子的推导,然而,空间相邻块的mv也可被用于推导mvp,且对应的图像距离缩放因子的推导也可类似地说明。

在依据hm-4.0的实作中,当前图像和目标参考图像之间的poc距离,以及同位图像和同位块的mv指向的参考图像之间的poc距离,可首先被约束至一个既定范围,即:

diffpoccurr=clip(-128,127,poccurr-pocref),

diffpoctemp=clip(-128,127,poctemp-poctemp_ref).

接着,可依据下式来计算缩放因子:

distscalefactor=clip(-1024,1023,(diffpoccurr×x+32)>>6)(3)

而缩放mvp则可通过将mv与距离缩放因子相乘得到,即:

scaledmv=sign(distscalefactor×mv)×

((|distscalefactor×mv|+127)>>8)(4)

依公式(1)中形式的图像缩放因子需要除法运算,其硬件实施较为复杂,或者基于实作的软件需要消耗更多的cpu时间。基于hm-4.0的实施例的精髓在于利用乘数因子(公式(2)中的214)自左乘(pre-multiply)距离比,以使距离比变成整数。在公式(2)中,偏置项|diffpoctemp/2|被添加至214以照顾具有舍入(rounding)的数据转换。类似地,偏置32和127被添加至公式(3)和(4)以用于数据转换。所述乘数因子可利用简单的右移位操作进行补偿。由于缩放mv(scaledmv)的计算不需要任何除法运算,因此,与公式(2)-(4)相关的实施例是一种较佳的实施方式。

在hm-4.0,如公式(3)所示,缩放因子(distscalefactor)被截断至范围[-1024,1023]。如公式(4)所示,缩放因子被右移位8位,其意味着有效缩放范围被限制在[-4,4)。li等人揭露了一种用于低延迟编码系统以提升编码效率的参考图像选择方法(“encodingoptimizationtoimprovecodingefficiencyforlowdelaycases”,li等人,itu-tsg16wp3及iso/iecjtc1/sc29/wg11视频编码联合组第6次会议:torino,it,2011年7月14-22日,档案编号:jctvc-f701)。依据li等人的方法,最近的(nearest)一个图像和三个高品质图像(具有低qp的图像)作为参考图像被用于低延迟的情形。图5是用于低延迟系统的参考图像配置范例的示意图,其中图像10为当前图像,图像9为最近的图像,以及图像0、4和8为三个高品质参考图像。块525对应于当前块,而块515则对应于相邻块。相邻块515有一个相关的mv510,其被用于推导当前块525的当前mv520的mvp。与当前mv相关的图像距离为6,而与候选mv相关的图像距离为1。因此,此实施例中的图像缩放因子为6,其超过可支持的缩放因子范围。从而,对应某些应用来说,有效缩放范围[-4,4]变得不足。

因此,需要开发一种机制来增加用于mv缩放的有效缩放比,而结合了增加的缩放因子的系统亦可提升其自身性能。



技术实现要素:

本发明提出一种推导缩放的运动向量的方法,用于基于与候选块相关的候选运动向量来推导当前块的缩放的运动向量,该方法包含:决定对应于该当前块的当前图像与该当前块的当前运动向量指向的目标参考图像之间的第一图像距离;决定对应于该候选块的候选图像与该候选块的该候选运动向量指向的候选参考图像之间的第二图像距离;决定预缩放距离部分,其中该预缩放距离部分具有有关于将预缩放因子除以该第二图像距离的第一值,该预缩放因子对应2k,且k为正整数;通过将有关于该第一图像距离和该预缩放距离部分的乘法结果右移位q位,决定中间缩放因子,其中q为正整数;通过将该中间缩放因子截断至介于-p与(p-1)之间的范围,获取最终缩放因子,其中p为大于1024的正整数;以及基于该候选运动向量和该最终缩放因子产生该缩放的运动向量,其中,k和q分别被设定为14和6。

本发明另一实施例提供一种推导缩放的运动向量的装置,用于基于与候选块相关的候选运动向量来推导当前块的缩放的运动向量,该装置包含一个或多个电路用来:决定对应于该当前块的当前图像与该当前块的当前运动向量指向的目标参考图像之间的第一图像距离;决定对应于该候选块的候选图像与该候选块的该候选运动向量指向的候选参考图像之间的第二图像距离;决定预缩放距离部分,其中该预缩放距离部分具有有关于将预缩放因子除以该第二图像距离的第一值,该预缩放因子对应2k,且k为正整数;通过将有关于该第一图像距离和该预缩放距离部分的乘法结果右移位q位,决定中间缩放因子,其中q为正整数;通过将该中间缩放因子截断至介于-p与(p-1)之间的范围,获取最终缩放因子,其中p为大于1024的正整数;以及基于该候选运动向量和该最终缩放因子产生该缩放的运动向量,其中,k和q分别被设定为14和6。

本发明另一实施例提供一种非暂存性计算机可读媒介,存储有计算机可执行程序,当该计算机可执行程序被执行时,引起解码器进行以下步骤:决定对应于当前块的当前图像与该当前块的当前运动向量指向的目标参考图像之间的第一图像距离;决定对应于候选块的候选图像与该候选块的候选运动向量指向的候选参考图像之间的第二图像距离;决定预缩放距离部分,其中该预缩放距离部分具有有关于将预缩放因子除以该第二图像距离的第一值,该预缩放因子对应2k,且k为正整数;通过将有关于该第一图像距离和该预缩放距离部分的乘法结果右移位q位,决定中间缩放因子,其中q为正整数;通过将该中间缩放因子截断至介于-p与(p-1)之间的范围,获取最终缩放因子,其中p为大于1024的正整数;以及基于该候选运动向量和该最终缩放因子产生该缩放的运动向量,其中,k和q分别被设定为14和6。

通过利用本发明,可增加用于运动向量缩放的有效缩放比,进而提升整合增加后有效缩放比的相关系统的性能。

附图说明

图1是基于hm-3.0中先进运动向量预测(amvp)的、用于推导帧间模式的mvp候选项集合的相邻块的配置范例的示意图。

图2是hm-3.0中用于推导跳过及合并模式的mvp候选项集合的相邻块的配置范例的示意图。

图3是hm-4.0中用于推导amvp/合并模式的mvp候选项集合的相邻块的配置范例的示意图。

图4是hm-4.0中先进运动向量预测(amvp)的mvp列表的搜寻顺序范例的示意图。

图5是低延迟编码系统中参考帧配置范例的示意图。

图6是整合了本发明实施例的系统的流程图范例的示意图,其中有效缩放比增加至超出-4至4的范围。

具体实施方式

如前文所述,有效缩放因子的范围对于某些视频编码系统来说是不足的,例如使用一个最近图像和三个最高品质图像的低延迟系统。为了克服与mvp推导相关的缩放因子的范围不足的问题,本发明的实施例增加了有效缩放范围。整合了本发明实施例的系统具有[-8,8)、[-16,16)或者[-32,32)的有效缩放范围,以适应具有较长时间距离的参考图像。

在依据hm-4.0的运动向量预测子(mvp)推导中,当mvp自指向不同参考图像的mv得出时,mv被缩放至目标参考图像以作为最终的mvp。在mv的缩放过程中,缩放因子由下述方程式(5)来定义:

scalingfactor=(poccurr–pocref)/(poccol–poccol_ref)=tb/td,(5)

其中,td为同位图像与同位图像的mv指向的参考图像之间的poc距离,而tb为当前图像与目标参考图像之间的poc距离。用于基于空间相邻块的mvp推导的缩放因子可以很容易计算出来。在hm-4.0中,缩放因子依据下列方程式计算:

x=(214+|td/2|)/td,以及(6)

scalingfactor=clip(-1024,1023,(tb×x+32)>>6)(7)

随后,缩放的mv可由下述方程式得出:

scaledmv=sign(scalingfactor×mv)×((abs(scalingfactor×mv)+127))>>8)(8)

通过将方程式(7)的截断值增加至2048、4096或者8192,依据本发明的实施例可增加有效缩放比。举例来说,对方程式(7)可做出如下改变:

scalingfactor=clip(-2048,2047,(tb×x+32)>>6),(9)

scalingfactor=clip(-4096,4095,(tb×x+32)>>6),或者(10)

scalingfactor=clip(-8192,8191,(tb×x+32)>>6)(11)

从而,有效缩放范围可分别增加至[-8,8)、[-16,16)或者[-32,32)。

上述与图像距离缩放相关的无除法运算(divisionfreeoperation)是通过数值x来达成的,数值x是由(1/td)与214相乘得到,如方程式(6)所示。随后在方程式(7)所示的scalingfactor的推导中,乘数214可利用右移位6位来补偿,而在方程式(8)所示的缩放的mv的推导中,则利用右移位8位来补偿。虽然方程式(7)和(8)中分别利用了右移位6位和8位,但也可以利用其他配置。举例来说,可在方程式(7)和(8)中利用右移位7位和右移位7位来分别替代右移位6位和8位。在此实施例中,scalingfactor的推导是基于(tb×x)右移位7位来替代右移位6位,从而scalingfactor的最后数值被因子2缩小。从而,截断范围也被因子2缩小。在此实施例中,方程式(9)-(11)中的截断值分别变为1024、2048以及4096。从而,方程式(6)可被一般化为下述方程式:

ix=(2k+|td/2|)/td,以及(12)

其中k为整数,且k=q+m。q和m都是整数,其中q对应距离缩放因子distscalefactor推导过程中的右移位,而m则对应于缩放的mvscaled_mv_xy推导过程中的右移位。distscalefactor和scaled_mv_xy可推导如下:

distscalefactor=clip(-p,(p-1),(tb*ix+(1<<(q-1)))>>q),以及(13)

scaled_mv_xy=(distscalefactor*mv_xy+(1<<(m-1))–1+(((distscalefactor*mv_xy)<0)?1:0))>>m(14)

其中p是与所需截断范围相关的整数,且p大于1024。举例来说,p可对应于2048、4096、或者8192,且q和m可分别对应于6和8。

图6是整合了本发明实施例的系统的流程图范例的示意图。首先,在步骤610中,决定对应于当前块的当前图像与当前块的当前运动向量指向的目标参考图像之间的第一图像距离。在步骤620中,决定对应于候选块的候选图像与候选块的候选mv指向的候选参考图像之间的第二图像距离。在步骤630中,决定对应于第一距离值与第二距离值之比的距离比。所述第一距离值与第一图像距离有关,而所述第二距离值则与第二图像距离有关。随后,在步骤640中,基于候选mv并依据所述距离比来产生缩放的mv,其中缩放的mv具有介于-m与n之间的有效缩放比,而m和n皆为大于4的正整数。在某些实施例中,m和n的值可以是8、16或者32。图6中的流程图仅为了说明具有增加的有效缩放比的运动向量缩放的范例,本领域的技术人员亦可通过重排步骤顺序、分割一或多个步骤、或整合一或多个步骤来实施本发明。

步骤630中的距离比可通过第一缩放因子和第二缩放因子计算得出,其中第一缩放因子与步骤610中决定的第一距离值有关,而第二缩放因子与步骤620中决定第二距离值有关。接着,通过将一乘积值截断至介于-p与(p-1)之间的范围来产生第一缩放因子,其中所述乘积值有关于通过将第一距离值与第二缩放因子相乘得到的第一组分以及将所述第一组分右移位6位,而p则大于1024。所述缩放的mv有关于通过将候选mv与第一缩放因子相乘得到的第二组分以及将第二组分右移位8位。

以上描述是为了使本领域的技术人员能够以上文中的特定实施方式及其需求来实现本发明。然而,本领域的技术人员应可对其进行各种变型与修饰,而本发明的基本精神也可以应用至其他实施例中。因此,本发明并非以所述特定实施例为限,而应以符合本发明宗旨及新特征的最广的范围为界。在上述详细描述中,阐述各种特定细节是为了便于对本发明有全面的了解,然而,本领域的技术人员应可理解,本发明也可在不限定这些具体细节中的一部分或者全部的情况下得以实施。

上述的根据本发明的实施例可以不同硬件、软件代码、或两者的结合来实施。举例来说,依据本发明的一个实施例,其可以是用来实施所述方法的、整合至视频压缩芯片中的电路,或是整合至视频压缩软件中的程序代码。依据本发明的另一个实施例,其也可以是数字信号处理器(digitalsignalprocessor,dsp)上执行的、用来实施所述方法的程序代码。本发明亦可包含由计算机处理器、dsp、微处理器、或现场可编程门阵列(fieldprogrammablegatearray,fpga)执行的一系列功能。通过执行定义了本发明实施例特定方法的机器可读软件代码或固件代码,这些处理器可被设置为执行依据本发明的特定任务。所述软件代码或固件代码可通过不同的编程语言及不同格式/样式来开发。所述软件代码亦可符合不同的目标平台。然而,执行与本发明相应的任务的、具有不同代码格式、样式及语言的软件代码,以及其他方式形成的代码都应包含在本发明的范围内。

在不脱离本发明的精神及基本特征的前提下,本发明亦可用其他特定形式来实施。以上所述的实施例仅仅是为了说明本发明,并非本发明的限制。本发明的范围当所附的权利要求为准,凡依本发明权利要求所做的均等变化与修饰,皆应属本发明的涵盖范围。

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