运动估计系统中的外部矢量的制作方法

文档序号:7857462阅读:183来源:国知局
专利名称:运动估计系统中的外部矢量的制作方法
技术领域
本发明涉及一种用于在视频序列中使用的运动估计的方法和设备,并且,更具体地,涉及一种与从外部源引入候选运动矢量相关联的方法。
背景技术
在各种视频技术中使用运动估计·,并且许多用于运动估计的方法是公知的。在本文档中,出于说明的目的,将使用一种被称为基于区块的运动估计的常用方法。基于区块的运动估计通常从视频序列中取两个或更多个连续帧,并将它们细分成多个被称为区块或宏区块的区域。在运动搜索过程中,将帧中的每个区块中的像素数据与来自先前巾贞中的各个候选位置的像素数据进行比较。提供(give)最好的(best)匹配的候选者的相对位置提供了描述在所述区块位置处的场景中的运动的矢量。共同地,帧中的每个区块位置处的运动矢量的集合被称为所述帧的运动矢量场。视频序列通常包括视频数据的一系列非交错帧、或视频数据的一系列交错场。由携带显示器的交替行(alternate Iine)上的数据的场来生成交错序列,使得第一场将携带用于交替行的数据的,以及第二场将携带用于丢失行(missing line)的数据。从而场在时间和空间上间隔。序列中的每个交替场携带相同的空间位置处的数据。图I示出了匹配运动估计量的区块的典型示例。在所有的图中(包括图1),运动矢量显示为箭头的头部在所述矢量所对应的区块的中心处。帧被分成区块,以及先前帧中的对象101已经移到当前帧中的位置102。被叠加在当前帧上的对象的先前位置被显示为103。对区块而不是对象执行运动估计,其中当前帧中的像素区块与不是必须和区块对齐的先前帧中的区块大小的像素区域相匹配。例如,区块104由移动的对象102部分重叠,并且具有如在105处所示出的内容。对区块104的运动估计如果执行地很好,则会在先前帧中找到像素数据区域106,S卩,发现了良好的匹配,其中所述像素数据区域106也被看成包括105中所示的像素。向当前帧上叠加回来,匹配的像素数据区域位于107处。从而,由箭头108示出和区块104相关联的运动矢量。许多基于区块的运动估计量通过使用诸如绝对差(SAD)的和或平方差(MSD)的均值测试用于区块的运动矢量候选者的集合来选择其输出运动矢量,从而识别提供最低误差区块匹配的运动矢量。图2示出了当前帧中用于区块201的候选者评估过程,其中所述当前帧具有211中所示的像素内容。在该简单的示例系统中,考虑了三个运动矢量候选者206、207和208,该三个运动矢量候选者206、207和208对应于先前帧中的位置202、203和204处的候选像素数据区域。这些像素数据区域的像素内容可以分别在212、213和214中看到。显然,位置202处的像素数据提供对区块201的最好的匹配,从而应该被选作最好的匹配/最小差候选者。向当前帧上叠加回来,匹配的像素数据区域在205处,以及相关联的运动矢量为206。不同的系统具有不同的运动估计的需求。例如在视频编码器应用中,所述需求是要通过使用从来自序列的先前帧到参考像素数据的运动矢量来形成帧的最紧凑的表示。这些运动矢量通常专注于提供到像素数据的区块的“最接近匹配”(或最小剩余误差),以及同时产生的运动矢量通常表示场景中对象的实际运动,不需要这总是该情况。在其他应用中(诸如去隔行(de-interlace)或帧率转换),其中帧中的对象必须在其在源帧中的位置之间的中间位置处插入,更重要的是运动矢量表示场景中对象的“真实运动”,即使视频中的其他失真意味着那些矢量不是总给出像素数据的区块之间的最接近的匹配(或最小的剩余误差)。必要时通过在运动搜索期间对候选运动矢量施加合适的约束,结果可以被导向“最接近匹配”或“真实运动”。可以使用计算资源的完全不同的等级来生成运动估计和产生的矢量场。广播设备(broadcaster )使用的编码器或用于电影发行(distribution)的编码器例如可以贡献重要的计算资源或扩展的离线处理时间,以生成最高质量的矢量场。相反地,许多客户等级的视频管线,尤其是手持装置中的视频管线,必须实时操作并且在分配给运动估计的计算资源量(即,带宽、功率和时间)上具有显著的限制。因此,在这些系统中,应用穷举搜索和集中(intensive)优化过程是不切实际的,并且这通常导致次优运动矢量场产生。 一个在计算资源有限的环境中实现最高质量的运动矢量场的常用方法是识别并测试每个区块的运动矢量候选者的小集合。难点是在仍然保持在集合中包括一个或多个提供所需的接近的像素匹配或真实的运动匹配的矢量候选者的高可能性的同时识别矢量候选者的最小的可能的集合。改善候选运动矢量的集合允许测试较少的运动矢量(改善有效性),或增加接近的像素匹配或真实的运动匹配被发现的可能性(改善质量)。已知运动矢量与相邻区块中的矢量在空间和时间上高度相关,所以这些临近的矢量通常用作矢量候选者的运动估计量的集合的基础。伪随机元素也可以被合并到候选者中,以允许系统改善其匹配,或随着视频变化中的运动而适应。在区块具有不是简单地由其邻居预测的运动的情况下,矢量候选者的伪随机扰动通常可以预测运动中的变化。该方法对于缓慢改变矢量场很有用,但是不易于允许运动估计量在与存储在相邻区块中的运动矢量候选者显著不同的新的运动上快速地检测或收敛。依赖于伪随机性的系统可以随着时间向新的运动漂移,但是很可能陷入局部极小值,或者收敛地太慢从而运动等到了那个位置时再次改变。图3示出了传统的视频管线架构的简化示例。在该简化的架构中,解码区块310将压缩的输入比特流300解压成运动矢量312和剩余(residual) 311的集合。当被合并在图片生成器313中时,生成输出图像序列。该输出图像序列根据源的性质可以包括逐行(progressive)帧或交错场。交错场由去隔行器320转换成逐行帧。高质量的去隔行通常以本领域的技术人员公知的方式执行运动估计312,随后是图片生成322过程。可选择地,诸如字幕和/或用户界面之类的覆盖(overlay)可以通过首先识别覆盖像素的位置来被添加到视频序列上,从而生成覆盖掩码331,然后,在由覆盖掩码定义的区域中,在覆盖合成引擎332中合成覆盖的像素数据和原始视频像素数据。最终执行帧率转换340以将视频序列的输入帧率转换成显示器301所需的输出帧率。按照本领域的技术人员公知的方式,帧率转换通常需要运动估计341和图片生成342过程。根据图3中所示的简单的示例系统显而易见的是,多个运动估计过程和不是运动估计量的其他矢量源可以存在于通常的视频管线中。解码区块的运动矢量场312将找到通常使用视频管线外部的显著的计算资源来确定的最接近的匹配/最低误差的矢量。去隔行区块321中的运动估计必须使用场数据来确定真实运动矢量,而帧率转换区块341中的运动估计必须使用帧数据来确定真实运动矢量。对于覆盖掩码331还能够用已知的运动矢量(例如,静态或动画覆盖)来定义帧的区域。在这些位置的每个位置处执行运动估计似乎固然是很浪费的,建议可以通过使用管线中较早生成的运动矢量来改善在管线中较晚的运动估计量。传统的视频管线系统不倾向于再使用运动矢量,一部分是因为倾向于独立设计通常来自不同的供应商的单个区块(诸如解 码、去隔行、覆盖和帧率转换)。在这些不同的区块中,每个区块对于视频管线中其他区块的内部操作的不可见性不能做什么。更关键地,因为可用运动估计量的不同需求,视频管线系统不倾向于再使用来自管线中的别处的运动矢量。例如,在312处可用的运动矢量场将不具有运动矢量表示场景中的对象的真实运动的需求,从而成为去隔行运动估计量320和帧率转换运动估计量341两者的矢量候选者的潜在的较差源,其中所述运动矢量场包括被生成以识别最接近的匹配像素(或最低的剩余)的矢量。在去隔行运动估计量321和帧率转换运动估计量341两者都生成寻找场景中对象的真实运动的运动矢量场时,一者作用于场数据,一者作用于帧数据,从而引起虽相关但不同的运动矢量场。图4示出了如果传统的视频管线想要试图再使用来自管线中另一个运动估计量或来自外部源的运动矢量,该传统的视频管线所要面对的问题。分别从时间实例t=_l和t=0来显示来自视频序列的两个连续帧410和420。在这些帧中,位于411处的飞机以对角方式向右下方飞行穿过场景到位置421。同时整个背景(太阳412和天空413)在飞机后面向左平移(其中太阳移动到位置422,而天空移动到位置423)。用于这些帧的真实的运动矢量场显示为430,其中飞机411的真实运动由封闭头箭头运动矢量来显示,以及背景太阳412和天空413的真实运动由开放头箭头运动矢量来显示。相反具有表示的运动矢量场的所述真实运动矢量需要最接近的匹配像素440 (具有黑点所示的零运动矢量),所述表示的运动矢量场由运动估计量生成。当一些运动矢量碰巧和帧中的对象的真实运动相同或类似时,在生成的运动矢量场中有明显显著的差异。更具体地,天空区域413和423中细节的缺少以及太阳对象412和422的中心中细节的缺少,导致选择提供两个帧之间的非常好的像素匹配但是不表示对象的真实运动的运动矢量。还注意的是,典型的编码器认为一些矢量和其他矢量相比“太早”或“太便宜”编码。这也可能造成选择不必须是最好的像素匹配但是可以以更紧凑的形式来表示的运动矢量。例如,包括帧420中的飞机421的后部的区块424被包括帧410中的飞机411的前部的像素区域414匹配地足够好,从而选择较短的矢量,即使发现所述矢量不表示飞机的真实运动。各个运动矢量场的需求中的差异表示在传统的视频管线中的较晚阶段中其再次使用的重大危险。寻找对象的真实运动的运动估计量通常将像素匹配的质量包括为其矢量候选者评估过程的一部分。所以,包括具有非常好的像素匹配但不表示真实运动的运动矢量本身是很危险的,因为所述运动矢量可以使得矢量选择过程混乱。类似地,包括识别运动估计量中对象的真实运动的运动矢量候选者可能是很浪费的,其中所述运动估计量试图找到最接近的匹配(或最低的剩余),因为所述运动矢量候选者可以更好地用于找到局部最小值或测试可以以更紧凑的形式表示的矢量候选者。在使用运动矢量候选者的传统的视频管线中,包括来自外部源矢量场的运动矢量候选者的危险和低效性通常是很高的。一个一般的例外是本领域中的技术人员公知的代码转换器。在代码转换器中,通常知道解码区块中存在的运动矢量场将适于在随后的编码区块中使用。由于解码过程提供的运动矢量和编码过程所需的运动矢量具有相同的需求,一般解码器的运动矢量要由编码器直接使用而不需要进一步的运动估计。代码转换器是整个运动估计过程可以被视频管线中的区块集成所保存的特例。当解码器运动矢量适于在编码器中使用时,不存在直接使用它们的危险,不需要进一步的运动估计。在系统中不存在第二运动估计量意味着代码转换器应用在本发明的范围之外。

发明内容
当运动估计量的需求不同、以及在运动估计期间包括来自作为矢量候选者的任意运动矢量场的矢量的风险、妨碍其在传统视频管线中的作用时,可以看到在许多情况下,最接近的匹配(或最低的剩余)矢量将会和场景中对象的真实运动非常相似,反之亦然。精确识别对象的运动的矢量通常也将造成非常接近的像素匹配是合乎逻辑的-假设对象不是 明显失真或不是在帧之间封闭(occlude)。该主张的相反情况也可以是正确的,因为接近的像素匹配通常将会出现,因为所选的矢量接近场景中对象的真实运动。如果可以在没有将不好的运动矢量候选者引入到当前运动估计量的相关风险和低效性的情况下可以再使用矢量场,然后可以改善所有运动估计过程的效率和质量。而且,使用重要的计算资源和离线处理生成的高质量运动矢量场将显著增加计算资源有限的运动估计过程中的运动估计的质量。本发明的实施方式提供将候选运动矢量从视频管线中的其他矢量场源引入到运动估计量的有效方法。因而,可以引入通过传统的候选运动矢量生成技术不能获得的好的候选者,允许测试较少的运动矢量候选者(改善效率)或选择更好的运动矢量(改善质量)。根据本发明的一个方面,提供了一种用于视频图像序列中的运动估计的方法,该方法包括以下步骤a)将视频图像序列的每个场或帧细分成多个区块;b)对每个视频场或帧中的每个区块分配候选运动矢量的集合;c)对于当前视频场或帧中的每个区块,从分配给所述区块的候选运动矢量的集合中选择生成对先前视频场或帧中的区块最好的匹配的矢量;d)使用为每个区块所选择的矢量来形成用于当前的视频场或帧的运动矢量场;e)其中分配给区块的候选运动矢量的集合包括一个或多个从外部源矢量场得到的候选矢量;f)以及其中来自外部源的每个候选运动矢量被分配权重值,所述权重值向着或远离所述候选运动矢量的选择而偏离(bias)。根据本发明,还提供了一种用于序列或视频图像中的运动估计的设备,该设备包括用于将视频图像序列的每个场或帧细分成多个区块的装置;用于对每个视频场或帧中的每个区块分配候选运动矢量的集合的装置;用于对于当前视频场或帧中的每个区块,从分配给所述区块的候选运动矢量的集合中选择生成对先前视频场或帧中的区块的最好的匹配的矢量的装置;
用于使用为每个区块所选择的矢量来形成用于当前的视频场或帧的运动矢量场的装置;其中分配给区块的候选运动矢量的集合包括一个或多个从外部源矢量场得到的候选矢量,以及其中来自外部源的每个候选运动矢量被分配权重值,所述权重值向着或远离所述候选运动矢量的选择而偏离。


现在将参考附图并通过举例的方式详细描述本发明的优选实施方式,其中图I示出了典型的现有技术的区块匹配运动估计量;图2示出了区块匹配运动估计量如何通过比较相应的像素区块来从候选运动矢 量的集合中选择最好的运动矢量;图3示出了现有技术的传统的视频管线架构的简化示例;图4示出了假定相同的输入帧,由寻找场景(430)中对象的真实运动的运动估计量生成的运动矢量场,以及最接近的匹配区块(440);图5示出了被修改成包括来自外部源的矢量候选者的传统的视频管线示例架构;图6示出了改变运动矢量场的分辨率,包括生成向着或远离所述场中的运动矢量的选择而偏离的权重值以被之后的运动估计量使用;图7示出了从像素掩码生成运动矢量场,包括生成向着或远离所述场中的运动矢量的选择而偏离的权重值以被之后的运动估计量使用;图8示出了来自外部源的不可能的运动矢量的引入;图9是示出了具有权重项的运动矢量候选者评估的框图;以及图10是示出了在使用外部运动矢量候选源的示例系统中运动矢量候选者评估的框图。
具体实施例方式按照作用于非交错、或逐行视频信号上的运动估计系统来给出对本发明的实施方式的描述,其中视频包括一系列数据完整帧。一般还在交错视频上执行运动估计,其中视频包括一系列场。本发明的原理同样可应用于作用于非交错视频和交错视频两者上的运动估计量。因而,术语“场或帧”或者“视频场或帧”包括在交错视频信号和非交错视频信号两者上的运动估计。如果使用术语“帧”,其应该被解释为“场或帧”,也就是说,包括在非交错视频信号和交错视频信号上执行的两种运动估计。术语“当前”、“先前”和“下一个”是相对术语,并且简单地用来指示视频信号中帧或场的序列顺序。“先前”场或帧可以是早于“当前”场或帧的任意数目的帧;其不是必须紧接着在“当前”场或帧之前,虽然实际上通常是这种情况。“下一个”场或帧可以是晚于“当前”场或帧的任意数目的帧;其不是必须紧接着在“当前”场或帧之后,虽然实际上通常是这种情况。关于本发明的一个方面描述的特征也可以应用于本发明的其他方面。对于视频场或帧中的每个区块,基于区块的运动估计量的区块处理单元接收候选者运动矢量的集合,其中,必须从所述候选者运动矢量的集合中选择一个表示区块的运动矢量。运动估计量将当前帧中的每个区块的像素与先前帧中的像素数据区域进行比较,所述运动估计量的位置由等于每个候选者运动矢量的空间偏移(offset)量定义。这些像素数据区域不限制为和区块对齐。图2示出了矢量选择过程,其中使用诸如基于绝对差(SAD)的和或者均值平方差(MSD)的度量的度量以及通常合并其他权重项来比较对应于每个运动矢量候选者的区块区域。被选择来表示区块处的运动的矢量是候选运动矢量,所述候选运动矢量使用所选度量给出最好的分数(score)。找到好的匹配依赖于候选矢量的集合,所述候选矢量包括区块中存在的对象的真实运动矢量或造成好的区块匹配的候选者(取决于应用需求)。来自当前运动估计量的外部源的现有运动矢量场的生成和再使用被推荐为用于改善快速或改变的运动区域中的运动估计的质量并潜在地允许使用较少的运动矢量候选者的新颖途径。图5示出了先前在图3中所示的示例视频管线添加了数据路径的修改版本,所述数据路径允许通过视频管线中较晚的运动估计过程来将较早在视频管线中生成的外部运动矢量场用作运动矢量候选者。在该修改的视频管线中,通过新的数据路径550使得来自 解码区块512的运动矢量在解码区块外部可用,以再用作去隔行器的运动估计量521和帧率转换的运动估计量541中的运动矢量候选者。另外,图5示出了覆盖区块掩码531与帧率转换中的运动估计区块541之间的新的数据路径560的引入。该数据路径示出了系统能够使用来自图像数据源的运动矢量候选者,用于所述图像数据源的一些或全部运动矢量是已知的,但所述图像数据源没有被运动估计量生成。考虑静态、不透明覆盖的简单情况(例如,电影上的字幕文本,或通过电视机添加的用户界面窗口)。在这些情况中,可以将屏幕的清楚限定的区域识别为静态的。这可以通过在静态覆盖所包括的所有位置处存储矢量场中的零运动矢量来表示。在更复杂的示例中,覆盖可以在屏幕内移动,以及等于覆盖的运动的运动矢量而不是零运动矢量将被存储。显然,这些运动矢量表示好的运动矢量候选者,以在运动估计量中使用。通过在运动估计量中使用所述运动矢量候选者所提供的风险和益处在真实的世界情况中变得不太清楚。如果从覆盖掩码生成的矢量场的分辨率与运动估计量的分辨率不同,则覆盖的运动矢量可以不提供区块中大部分像素的真实运动或最接近(或最低的剩余)匹配。类似地,在一般情况下,其中生成的覆盖不完全不透明,覆盖掩码生成的矢量场的有效性可以取决于透明度等级或取决于覆盖的内容。举例来说,接近透明的覆盖不太可能是区块的主要可视的特征,并因此覆盖的运动矢量将不会充分描述区块中像素的主要运动。相反,对于包括区块的不透明覆盖,保证覆盖的运动矢量描述区块中存在的主要特征的运动矢量。本发明可以使用多个进一步的外部运动矢量场源。示例对于本领域的技术人员是公知的,并且该示例包括运动矢量源,诸如从英国专利申请No. GB2480422中所描述的计算机图形引擎以及从移动传感器(诸如适于视频记录装置的陀螺仪和加速计)所得到的矢量。很值得向当前运动估计量中使用的运动矢量候选者的集合中添加包括来自外部矢量源的运动矢量候选者。在许多情况中,可以使用大的计算功率和/或信息来生成了所述运动矢量,所述大的计算功率和/或信息在当前的运动估计量中不能获得,以及同样可以引入以另外方式不能获得的有用的运动矢量候选者。已经讨论了使用来自外部源的运动矢量中所包含的风险,以及所述风险先前意味着将所述矢量当做运动估计量中的候选者已不安全了。所以,使用将权重值从外部源分配到每个运动矢量候选者的方法。用于每个运动矢量候选者的权重值可以被合并到矢量选择过程所使用的度量中,从而向着或远离所述候选者的选择而偏移当前运动估计量。这样,当前运动估计量能够根据所述资源能够被确定为可靠的程度来改变其使用来自外部源的运动矢量的方式。在一些情况中,生成外部源运动矢量场的设备可能能够直接提供权重值。可替换地,可以由当前的运动估计量根据外部源来确定权重值。图6示出了根据外部源确定权重值的示例,所述权重值向着或远离来自外部源的候选运动矢量的选择来偏移 。在该示例中,使用来自外部源的高分辨率运动矢量场600,以将运动矢量候选者引入到以较低区块分辨率工作的运动估计量610。运动估计量的分辨率是区块区域中的差值所示的外部源矢量场的分辨率的一半。对于运动估计量610中的每个区块,可以从外部矢量场得到矢量,以用作所述区块的运动估计中的候选运动矢量。运动估计量中的像素的区块611可以看成对应于高分辨率外部运动矢量场中的区域601。区域601包括四个相同的运动矢量,其表示运动矢量是用于当前区块611的好的运动矢量候选者。由于601中的所有运动矢量具有相同的方向和幅度,611中的运动矢量候选者可以被分配强的权重值,所述强的权重值向着该运动矢量候选者的选择而偏移。类似地,运动估计量中的区块612可以被看成对应于高分辨率外部运动矢量场中的区域602。可用运动矢量中的三个可用运动矢量具有相同的大小和幅度,所以可能该主要的矢量将被用作区块612中的运动矢量候选者。该运动矢量候选者应该被分配权重值,所述权重值向着其选择而偏移。在该情况中,权重值应该不像先前分配给区块611中的运动矢量候选者的权重值那么强,因为在外部矢量场的区域602中存在与区域的主要运动不一致的运动矢量。用于像素的区块大小的区域613的可替换的方案被示出,其中所述像素的区块大小的区域613对应于高分辨率外部运动矢量场中的区域603。在该情况下,该外部运动矢量场的区域中的四个运动矢量全是不相同的,所以不能看到清楚的主要运动矢量用作区块613中的运动矢量候选者。在该情况下,应该选择远离任意运动矢量候选者的选择而偏移的权重值,所述运动矢量候选者可以从区域603得到。用来从外部矢量场得到运动矢量候选者和用来将权重值分配给所述候选者的方法是专用的。在一个实施方式中,其中运动矢量候选者必须从较高分辨率外部矢量场得到,通过选择最接近于对应于区块的区域中的均值矢量的运动矢量来得到候选者,在所述区块中将使用所述候选者。通过添加区域中每个矢量的X分量并除以矢量的数目来确定平均运动矢量的X分量。通过添加区域中每个矢量的y分量并除以矢量的数目来确定平均运动矢量的y分量。在可替换的实施方式中,直接将平均运动矢量用作区块的运动矢量候选者。用来确定每个运动矢量候选者的权重值的方法是专用的。在一个实施方式中,根据所选候选者与候选者所选自的矢量场的区域中的均值运动矢量之间的差值,来得出向着来自较高分辨率外部运动矢量场的候选者的选择而偏移的权重值,同时当没有可以被说成是区域中主要的一个矢量时,选取远离候选者的选择而偏移的权重值。在一个示例使用均值矢量的同时,本领域的技术人员可以理解,可以使用基于模态矢量的方法或各种其他类似的技术来获得类似的结果。图7示出了另一个示例,其中根据外部源来确定向着或远离来自外部源的候选运动矢量的选择而偏离的权重值。在该示例中,帧701包括静态字幕文本覆盖和相关联的像素分辨率覆盖掩码711,所述像素分辨率覆盖掩码711指示覆盖的范围。已知运动矢量在掩码内的所有位置处为零,因为已知字幕文本不会移动。在该情况下,外部源不指示用于掩码外区域的任何运动矢量。在视频处理管线中较后的阶段对相同帧702进行运动估计期间,可以预料到覆盖的运动矢量作为用于包括来自覆盖的像素的任何区块的运动矢量候选者将是有用的。示出了两个说明性的区块。区块721可以看成是包括来自覆盖的大量的像素,从而高分辨率矢量场中的相关的零矢量提供用于区块的好的运动矢量。从而可以以高度的可靠性来使用零矢量。在分配权重值中所使用的方法再一次是专用的,所述权重值向着或远离覆盖矢量的选择而偏移,然而对于该所进行的示例,公开了其中权重依赖于被覆盖掩码包括的区块中像素的比例的方法。因而,包括大量覆盖像素的区块721会包括具有向着覆盖矢量的选择而强烈偏移的权重的覆盖运动矢量候选者,然而包括少量覆盖像素的区块722将包括具有对着运动矢量候选者的选择而偏离的权重的覆盖运动矢量候选者。分配的权重还可以根据覆盖的不透明度修改,其中增大透明度的程度使得用于向着覆盖矢量的选择而偏离的权重值减小。
在本发明的进一步的实施方式中,权重值被分配给运动矢量的外部源,从而运动估计量向着或远离来自所述源的任何运动矢量候选者的选择而偏离。可以使用分配给整个外部矢量源的权重值,而不使用先前所述的权重值,或还使用先前所述的权重值,所述权重值为从外部源得到的每个运动矢量候选者单独得到。分配给整个外部矢量源的权重值可以认为是表示所述源提供合适的候选者给当前的运动估计量的信任程度。例如,试图确定真实运动的运动估计量将不会认为来自最接近的匹配运动估计量的候选矢量完全可靠,并且会对着其选择而偏离一定程度。在另一方面,同一个真实的运动估计量可能认为来自广播质量真实的运动估计量的候选矢量是特别可靠的,以及将向着其选择而偏离。而且,分配给外部源的权重值可以随着时间改变,其例如通过来自所述外部源的矢量证明作为运动估计量中的候选者有用的程度来确定。图8示出了其中外部源运动矢量的权重值被用来允许选择以其他方式被运动估计量丢弃的运动矢量候选者的示例。在时间实例t=-3和t=-2处,输入帧800和810分别使在840处示出的外部源矢量场和它们相关。由当前运动估计量生成的运动矢量场在870处示出。在所述两个源帧之间没有任何东西移动。在每个位置处外部源矢量场包括零矢量(由黑点表示),以及与由当前运动估计量生成的运动矢量场一致。该结果指示外部源矢量场提供好的运动矢量候选者,以由当前的运动矢量场使用,并因此分配有增加的权重,所述权重将来向着来自外部源的运动矢量候选者的选择而偏离。当在时间实例t=-l处下一帧820到来时,由外部源提供的运动矢量再一次证实是用于由当前的运动估计量所选的最好的运动矢量的好的匹配。这还增加了权重,所述权重向着来自外部源的运动矢量候选者的选择而偏离。当在时间实例t=0处下一帧830到来时,在先前帧中的位置801、811和821处保持着静止的阴影圆圈突然向上运动到当前帧中的位置831。许多基于区块的运动估计量将不能马上识别该运动。当前帧中到位置831的运动(对应于当前运动估计量中的区块891)不能由临近区块或先前的帧中的运动矢量预料到,并且运动的幅度太大了以至于不能由相邻区块矢量的简单的伪随机扰动发现。所以不可能得到正确的矢量作为现有技术的运动估计量中的候选者。在该示例中,外部源矢量场不包括区块861中的正确的运动矢量,也许通过在创建其矢量场期间可获得的另外的信息或通过计算上更复杂的搜索过程。通常,当来自外部源的运动矢量候选者与外部源矢量场860中和由当前运动估计量生成的运动矢量场870、880和890中的周围矢量明显不同时,所述候选者可能明显不利地认为是太危险或太低效而选择的。然而,在这种情况下,根据本发明中所公开的方法,在多个先前帧上改善了向着从外部源矢量场得到的运动矢量候选者的选择而强烈偏离。如果该偏离足够克服对着候选者的选择的其他偏离,则将在当前运动估计量的输出矢量场中的区块891处存储矢量。如果外部源矢量精确地预测了帧820与830之间的阴影圆圈的新的运动,则其允许选择好的运动矢量结果,所述好的运动矢量结果以其他方式将是不可获得的。在一些情况下,对于生成外部源运动矢量场的设备,提供用于其自己的矢量场的权重值是可能的,从而指示其中的运动矢量的合适性,以用作由当前运动估计量使用的运动矢量候选者。可替换地,可以由当前的运动估计量根据外部源确定用于运动矢量的外部源的权重值。·本发明公开了可以以多种方式中的一种方式通过当前的运动估计量为外部源确定用于运动矢量的外部源的权重值。所述方法中的一些基于由外部源提供的运动矢量与由当前的运动估计量生成的运动矢量之间的相似性程度来生成用于运动矢量的外部源的权重值。可以通过熵测量或通过本领域技术人员公知的其他方法,通过确定矢量是否具有相同的幅度和方向(通常具有根据应用确定的小量的允许偏差)来测量矢量之间的相似性。可以按照全局上通过帧的当前区块的所在地中的矢量相似性来定义矢量场相似性,或者所述矢量场相似性可以基于穿过先前的矢量场或当前帧中处理的矢量的当前历史的历史相似性。通常,如果来自外部源的运动矢量与由当前的运动估计量选择的运动矢量一致,则外部源是用于当前的运动估计量的运动矢量候选者的好的源。从而,可以认为外部源矢量是可信任的以及应该被评估,即使它们好像引入了一般因为违反了空间和时间一致性检验而被排除的运动矢量候选者。所述意外的运动矢量候选者可能是由于场景中的新的运动,所述新的运动被了解或已被外部源检测到。由外部矢量源引入的意外的运动矢量可以用来修改与外部源相关的权重并减少其将来被使用的可能性,所述外部矢量源被确定为用于当前的运动估计量的差的候选者。由外部矢量源引入的意外的运动矢量可以用来修改与外部源相关的权重并增加意外的运动矢量候选者将来被考虑的可能性,所述外部矢量源被确定为用于当前的运动估计量的好的候选者或者可能以其他方式被丢失的。图9是示出了用于运动矢量候选者评估的传统系统的示例的框图。候选者生成单元900使用本领域中公知的方法生成多个运动矢量候选者,诸如使用来自空间和时间上相邻的区块的矢量和使用伪随机变化。候选者生成产生候选者列表905,所述候选者列表905可以包括候选者矢量910的列表和权重值915的集合。评估来自列表的候选矢量,从而例如使用SAD计算920确定区块匹配的质量。成本计算区块925将SAD值与从对应于候选矢量的权重值915获得的项相结合,以生成度量,通过该度量确定矢量选择。系统能够例如通过对候选矢量列表910的内容的合适的控制和向每个候选矢量分配合适的权重915来向着“最接近的匹配”或向着“真实运动”引导运动估计过程。由于评估了运动矢量候选者,最好的矢量更新区块930将成本度量与先前候选者的成本度量进行比较,并更新最好的矢量存储935。在评估了候选者列表905中的每个矢量之后,最好的矢量和其相关的成本可以在输出940处获得。图10是实施本发明的系统的框图,其中从外部源能提供运动矢量候选者。在该示例中,示出了两个外部候选者源1000和1005。候选者列表被分成两个部分。内部部分1010包括候选运动矢量和由内部候选者生成单元1015生成的相应的权重。内部候选生成单元对应于图9中所示的候选者生成单元900。从外部源1000和1005得到列表1011的第二部分中的运动矢量候选者和权重。SAD计算、成本计算和最好的矢量更新区块和图9中所示那些的类似。
每个外部候选者源具有作为整体的相应的权重计算区块和与源相关的权重。例如,源1000具有权重1020和权重计算区块1030。源1005具有权重1025和权重计算区块1035。以外部候选者源1000为例,矢量被提供到权重计算区块1030。权重计算区块1030从源权重1020提取进一步的输入,并得到用于矢量的一个权重或多个权重。然后将矢量和相关的权重存储在候选者列表1011中。为每个矢量得到的权重可以受源权重1020影响,所述源权重反映源1000被信任的程度,以及所述权重还可以受单个矢量也许关于剩余的外部矢量场或由运动估计量生成的矢量的分析的影响。在另一个示例中,从外部候选者源(例如,1005)提供到权重计算区块1035的数据可以包括数据以及矢量候选者。当外部源能够进入不能以其他方式由运动估计量得到的信息时,这是合适的。例如,外部候选者源可以提供用于单个矢量的权重值、或者指示矢量预计要应用于的像素的掩码值。以和图9中所示的方式类似的方式,使用SAD计算、从SAD值和权重得到的成本计算、以及与最好的矢量的比较,来评估来自内部候选者列表1010和外部候选者列表1011的运动矢量候选者,从而以最低的总成本生成矢量的结果。源权重更新单元1040检查用于列表1011中每个矢量候选者的成本度量,以及所述候选者是否最终选作区块的最好的矢量。依赖于候选者的原始源的源权重1020或1025之后可以被更新,以反映所述特定的源被信任的程度,从而提供好的候选者。始终提供所选择的候选者、或者和所选择的候选者非常相似的的候选者的外部源将使其权重调整为使得其候选者被认为在将来是更有利的。相反,其候选者很少被选择的外部源将不被信任,以及所述候选者将来很少可能被使用。
权利要求
1.一种用于视频图像序列中的运动估计的方法,该方法包括以下步骤 a)将视频图像序列的每个场或帧细分成多个区块; b)对每个视频场或帧中的每个区块分配以候选运动矢量的集合; c)对于当前的视频场或帧中的每个区块,从分配给该区块的候选运动矢量的集合中选择生成对先前视频场或帧中的区块最好的匹配的矢量; d)使用为每个区块所选择的矢量形成用于所述当前的视频场或帧的运动矢量场; e)其中分配给区块的所述候选运动矢量的集合包括一个或多个从外部源矢量场得到的候选矢量; f)以及其中来自外部源的每个候选运动矢量被分配以权重值,所述权重值向着或远离该候选运动矢量的选择而偏离。
2.根据权利要求I所述的方法,其中外部源矢量场被分配以向着或远离来自所述外部源矢量场的所有候选运动矢量的选择而偏离的权重值。
3.根据权利要求I或2所述的方法,其中根据分配给所述候选运动矢量的权重值和根据分配给来自所述外部源的矢量场的权重值得到向着或远离来自外部源矢量场的候选运动矢量的选择而偏离的权重值。
4.根据权利要求I或3所述的方法,其中由所述外部源提供向着或远离所述候选运动矢量的选择而偏离的权重值。
5.根据权利要求I或3所述的方法,其中从所述外部源确定向着或远离所述候选运动矢量的选择而偏离的权重值。
6.根据权利要求5所述的方法,其中根据当前的视频场或帧中的区块中的像素的数量得到向着或远离所述候选运动矢量的选择而偏离的权重值,所述像素与在生成由所述外部源提供的运动矢量候选者中使用的像素共置。
7.根据权利要求2或3所述的方法,其中由所述外部源提供向着或远离来自所述外部源矢量场的候选运动矢量的选择而偏离的权重值。
8.根据权利要求2或3所述的方法,其中从所述外部源确定向着或远离来自所述外部源矢量场的候选运动矢量的选择而偏离的权重值。
9.根据权利要求I所述的方法,其中根据从为每个区块所选择的矢量而形成的矢量场与所述外部源矢量场的相似性得到向着或远离来自所述外部源的候选运动矢量的选择而偏离的权重值。
10.根据权利要求I所述的方法,其中根据从为每个区块所选择的矢量而形成的矢量场中的矢量区域与在所述外部源矢量场中的矢量的共置区域的相似性得到向着或远离来自所述外部源的候选运动矢量的选择而偏离的权重值。
11.根据权利要求I所述的方法,其中根据最近所选择的矢量的集合与在所述外部源矢量场中的共置矢量的相似性得到向着或远离来自所述外部源的候选运动矢量的选择而偏离的权重值。
12.根据权利要求9、10或11中任一项权利要求所述的方法,其中根据先前从为每个区块所选择的矢量而形成的矢量场与所述外部源矢量场的历史相似性来得到向着或远离来自所述外部源的候选运动矢量的选择而偏离的权重值。
13.根据权利要求9、10、11或12中任一项权利要求所述的方法,其中通过对所述场内的所述矢量的相似性的测量进行累加来确定矢量场的相似性,以及根据所述矢量的幅度和方向上的差值来得到矢量的相似性。
14.根据权利要求9、10、11或12中任一项权利要求所述的方法,其中通过熵测量来确定矢量场的相似性。
15.根据权利要求I所述的方法,其中在步骤le),从外部源得到的所述候选运动矢量是从所述系统中别处的运动估计量得到的。
16.根据权利要求I所述的方法,其中在步骤le),从外部源得到的所述候选运动矢量是从所述系统中别处的不是运动估计量的源得到的。
17.根据权利要求I或16所述的方法,其中在步骤le),从外部源得到的所述候选运动矢量是从由计算机图形引擎提供的矢量得到的。
18.根据权利要求I或16所述的方法,其中在步骤le),从外部源得到的所述候选运动矢量是从由覆盖合成引擎提供的矢量得到的。
19.根据权利要求I所述的方法,其中最好的匹配被定义为表示场景中的对象的真实运动的矢量。
20.根据权利要求I所述的方法,其中最好的匹配被定义为生成所述当前的视频场或帧与先前的视频场或帧中的像素数据的区域之间的最接近的匹配的矢量。
21.一种用于视频图像序列中的运动估计的设备,该设备包括 用于将视频图像序列的每个场或帧细分成多个区块的装置; 用于对每个视频场或帧中的每个区块分配以候选运动矢量的集合的装置; 用于对于当前的视频场或帧中的每个区块从分配给该区块的候选运动矢量的集合中选择生成对先前的视频场或帧中的区块最好的匹配的矢量的装置; 用于使用为每个区块所选择的矢量形成用于所述当前的视频场或帧的运动矢量场的装置; 其中分配给区块的所述候选运动矢量的集合包括一个或多个从外部源矢量场得到的候选矢量,以及其中来自所述外部源的每个候选运动矢量被分配以权重值,所述权重值向着或远离该候选运动矢量的选择而偏离。
22.根据权利要求21所述的设备,其中外部源矢量场被分配以向着或远离来自所述外部源矢量场的所有候选运动矢量的选择而偏离的权重值。
23.根据权利要求21或22所述的设备,其中根据分配给所述候选运动矢量的权重值和根据分配给来自所述外部源的矢量场的权重值得到向着或远离来自外部源矢量场的候选运动矢量的选择而偏离的权重值。
24.根据权利要求21或23所述的设备,其中由所述外部源提供向着或远离所述候选运动矢量的选择而偏离的权重值。
25.根据权利要求21或23所述的设备,其中从所述外部源确定向着或远离所述候选运动矢量的选择而偏离的权重值。
26.根据权利要求25所述的设备,其中根据当前的视频场或帧中的区块中的像素的数量得到向着或远离所述候选运动矢量的选择而偏离的权重值,所述像素与在生成由所述外部源提供的运动矢量候选者中使用的像素共置。
27.根据权利要求22或23所述的设备,其中由所述外部源提供向着或远离来自所述外部源矢量场的候选运动矢量的选择而偏离的权重值。
28.根据权利要求22或23所述的设备,其中从所述外部源确定向着或远离来自所述外部源矢量场的候选运动矢量的选择而偏离的权重值。
29.根据权利要求21所述的设备,其中根据从为每个区块所选择的矢量而形成的矢量场与所述外部源矢量场的相似性得到向着或远离来自所述外部源的候选运动矢量的选择而偏离的权重值。
30.根据权利要求21所述的设备,其中根据从为每个区块所选择的矢量而形成的矢量场中的矢量区域与在所述外部源矢量场中的矢量的共置区域的相似性得到向着或远离来自所述外部源的候选运动矢量的选择而偏离的权重值。
31.根据权利要求21所述的设备,其中根据最近所选择的矢量的集合与在所述外部源矢量场中的共置矢量的相似性得到向着或远离来自所述外部源的候选运动矢量的选择而偏离的权重值。
32.根据权利要求29、30或31中任一项权利要求所述的设备,其中根据先前从为每个区块所选择的矢量形成的矢量场与所述外部源矢量场的历史相似性来得到向着或远离来自所述外部源的候选运动矢量的选择而偏离的权重值。
33.根据权利要求29、30、31或32中任一项权利要求所述的设备,其中通过对所述场内的所述矢量的相似性的测量进行累加来确定矢量场的相似性,以及根据所述矢量的幅度和方向上的差值来得到矢量的相似性。
34.根据权利要求29、30、31或32中任一项权利要求所述的设备,其中通过熵测量来确定矢量场的相似性。
35.根据权利要求21所述的设备,其中在步骤le),从外部源得到的所述候选运动矢量是从所述系统中别处的运动估计量得到的。
36.根据权利要求21所述的设备,其中在步骤le),从外部源得到的所述候选运动矢量是从所述系统中别处的不是运动估计量的源得到的。
37.根据权利要求21或36所述的设备,其中在步骤le),从外部源得到的所述候选运动矢量是从由计算机图形引擎提供的矢量得到的。
38.根据权利要求21或36所述的设备,其中在步骤le),从外部源得到的所述候选运动矢量是从由覆盖合成引擎提供的矢量得到的。
39.根据权利要求21所述的设备,其中最好的匹配被定义为表示场景中的对象的真实运动的矢量。
40.根据权利要求21所述的设备,其中最好的匹配被定义为生成当前的视频场或帧与先前的视频场或帧中的像素数据的区域之间的最接近的匹配的矢量。
41.一种用于实质上如在此描述的视频图像序列中的运动估计的方法。
42.一种用于实质上如在此参考附图描述的视频图像序列中的运动估计的设备。
全文摘要
提供了一种用于视频图像序列中的运动估计的方法和设备。将视频图像序列中的每个场或帧细分成多个区块。对每个视频场或帧中的每个区块分配候选运动矢量的集合。从候选运动矢量的集合中生成对于先前的场或帧中的区块最好的匹配的矢量被分配给所述区块,从而使用所选择的矢量来形成用于当前的视频场或帧的运动矢量场。分配给区块的候选运动矢量的集合包括一个或多个从外部源矢量场得到的候选矢量,以及来自外部源矢量场的每个所述矢量被分配权重值,所述权重值向着或远离所述矢量的选择而偏离。
文档编号H04N7/26GK102917197SQ20121027804
公开日2013年2月6日 申请日期2012年8月6日 优先权日2011年8月4日
发明者S·菲什威克, S·莫费特 申请人:想象技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1