用于时间预测的联合亚像素插值滤波器的制造方法

文档序号:7990913阅读:215来源:国知局
用于时间预测的联合亚像素插值滤波器的制造方法
【专利摘要】一种方法确定在对用于视频内容的时间预测处理的亚像元值进行插值时使用的多个插值滤波器。基于用于两个参考块的亚像元偏移量来设计多个插值滤波器。该方法对于单位视频内容确定关于第一参考块的第一亚像元偏移量,并且对于所述单位视频内容确定关于第二参考块的第二亚像元偏移量。确定插值滤波器集合,以对在用于单位视频内容的时间预测处理中使用的亚像元像素值集合进行插值。插值滤波器集合被设计用于第一亚像元偏移量和第二亚像元偏移量,并且被用于对关于第一参考块的第一亚像元像素值和关于第二参考块的第二亚像元值进行插值。
【专利说明】用于时间预测的联合亚像素插值滤波器
[0001]相关申请的交叉引用
[0002]本申请要求以下申请的优先权:
[0003]于2011年7月 I 日提交的关于“Method for Mult1-Hypothesis Joint Sub-PixelInterpolation Filters for Motion Compensation” 的美国临时申请 N0.61/504,139 ;
[0004]于2011 年 7 月 11 日提交的关于 “4tap, 5tap and6tap Mult-Hypothesis JointSub-pixel Interpolation Filters for Motion Compensation” 的美国临时申请N0.61/506,586 ;
[0005]于2011 年9 月 16 日提交的关于 “6tap and8tap Mult1-Hypothesis JointSub-pixel Interpolation Filters for Motion Compensation” 的美国临时申请N0.61/535,941 ;
[0006]于2011 年 9 月 22 日提交的关于“Combined6tap and8tap Mult1-HypothesisPartially Joint Sub-pixel Interpolation Filters for Motion Compensation,,的美国临时申请 N0.61/538,107 ;
[0007]于2011 年 9 月 26 日提交的关于 “Mult1-Hypothesis Joint Sub-pixelInterpolation Filters with DC-Gain Constraint for Motion Compensation”的美国临时申请 N0.61/539,420 ;
[0008]于2011 年 11 月 9 日提交的关于 “Sub-pixel Motion CompensationInterpolation Based on the Number of Predictor blocks” 的美国临时申请N0.61/557,422,其全部内容通过引用结合于此。
【背景技术】
[0009]高效视频编码(HEVC)是基于块的混合空间和时间预测编码方案。类似于诸如运动图像专家组(MPEG)-l、MPEG-2和MPEG-4的其他视频编码标准,HEVC支持诸如I图片的帧内图片和诸如B图片的帧间图片。在HEVC中,P和B图片被合并为可以用作参考块的一般B图片。
[0010]在不参考任何其他图片的情况下,对帧内图片编码。从而,仅空间预测被允许用于帧内图片内的编码单元(CU)/预测单元(PU)。然而,帧间图片支持帧内预测和帧间预测。帧间图片中的CU/PU可以在空间上或时间上被预测编码。时间预测编码可以参考先前被编码的块。
[0011]时间运动预测是增加编码效率并且提供高压缩的有效方法。HEVC使用用于运动预测的平移模型。根据平移模型,从参考块中的对应块,生成用于当前图片中的给定块的预测信号。通过运动矢量给出参考块的坐标,运动矢量描述将被添加到当前块的坐标/从当前块的坐标减去的沿着水平(X)和垂直(y)方向的平移运动。解码器需要运动矢量来解码压缩视频。
[0012]参考块中的像素被用作预测。在一个示例中,运动可以在整数像素中被捕捉。然而,不是所有对象都以整数像素间隔移动(还被称为象元(pel))。例如,由于对象运动与采样网格完全不相关,有时相比于全像元运动,对象运动更像是亚像元(分数)运动。从而,HEVC允许运动矢量具有亚像元准确度。
[0013]为了估计和补偿亚像元位移,通过插值处理生成这些亚像元位置上的图像信号。在HEVC中,使用有限冲激响应(FIR)滤波器,执行亚像元插值。通常,滤波器可以具有8个抽头,以确定用于亚像元位置的亚像元值,诸如,半像元和四分之一像元位置。插值滤波器的抽头利用系数值给整数像素加权,以生成亚像元信号。不同系数可以产生在信号失真和噪声方面不同的压缩性能。
[0014]HEVC对于每个参考块基于关于该参考块的亚像元位置的选择,来使用用于运动估计的特定插值滤波器。在双向预测中,可以使用两个参考块来预测当前块。在列表O中找到一个参考块,并且在列表I中找到另一个参考块。如果亚像元位置的选择是关于列表O的半像元移位,则将半像元插值滤波器应用至列表O中的参考块。而且,如果亚像元位置的选择是关于列表I的四分之一像元移位,则四分之一像元插值滤波器被确定用于列表I。即便关于列表I的亚像元位置诸如改变为半像元移位,也将相同的半像元插值滤波器应用至列表O中的参考块。

【发明内容】

[0015]在一个实施例中,提供一种用于编码或解码视频内容的方法。该方法确定在对用于视频内容的时间预测处理的亚像元值进行插值时使用的多个插值滤波器。基于关于两个参考块的亚像元偏移量来设计多个插值滤波器。然后,该方法能够对于单位视频内容确定关于第一参考块的第一亚像元偏移量,并且对于单位视频内容确定关于第二参考块的第二亚像元偏移量。确定插值滤波器集合,以对在用于单位视频内容的时间预测处理中使用的亚像元像素值集合进行插值。该插值滤波器集合被设计用于第一亚像元偏移量和第二亚像兀偏移量,并且被用于对关于第一参考块的第一亚像兀像素值和关于第二参考块的第二亚像元值进行插值。
[0016]在一个实施例中,一种装置被配置成编码或解码视频内容。该装置包括:一个或多个计算机处理器;以及包括指令的计算机可读存储介质,当被执行时,指令控制一个或多个计算机处理器被配置用于:确定在对用于视频内容的时间预测处理的亚像元值进行插值时使用的多个插值滤波器,其中,基于关于两个参考块的亚像元偏移量来设计多个插值滤波器;对于单位视频内容确定关于第一参考块的第一亚像兀偏移量;对于单位视频内容确定关于第二参考块的第二亚像元偏移量;以及确定插值滤波器集合,以对在用于单位视频内容的时间预测处理中使用的亚像元像素值集合进行插值,其中,该插值滤波器集合被设计用于第一亚像元偏移量和第二亚像元偏移量,并且被用于对关于第一参考块的第一亚像元像素值和关于第二参考块的第二亚像元值进行插值。
[0017]在一个实施例中,提供包括用于编码或解码视频内容的指令的非暂时性计算机可读存储介质,当被执行时,指令控制计算机系统被配置用于:确定在对用于视频内容的时间预测处理的亚像元值进行插值时使用的多个插值滤波器,其中,基于关于两个参考块的亚像元偏移量来设计多个插值滤波器;对于单位视频内容确定关于第一参考块的第一亚像元偏移量;对于单位视频内容确定关于第二参考块的第二亚像元偏移量;以及确定插值滤波器集合,以对在用于单位视频内容的时间预测处理中使用的亚像元像素值集合进行插值,其中,该插值滤波器集合被设计用于第一亚像元偏移量和第二亚像元偏移量,并且被用于对关于第一参考块的第一亚像元像素值和关于第二参考块的第二亚像元值进行插值。
[0018]以下具体描述和附图提供本发明的特性和优点的更详细理解。
【专利附图】

【附图说明】
[0019]图1描绘根据一个实施例的用于编码和解码视频内容的系统的示例。
[0020]图2描绘根据一个实施例的用于编码或解码视频内容的方法的简化流程图。
[0021]图3描绘根据一个实施例的示出用于插值滤波器106的偏移量的示例。
[0022]图4A描绘根据一个实施例的用于基于一个或多个参考提供时间预测的编码器的示例。
[0023]图4B描绘根据一个实施例的用于基于一个或多个参考提供时间预测的解码器的示例。
【具体实施方式】
[0024]在此描述了用于视频压缩系统的技术。在以下说明书中,为了解释的目的,阐述了大量示例和特定详情,以提供本发明的实施例的彻底理解。由权利要求限定的特定实施例可以单独或与以下描述的其他特征结合地包括在这些示例中的一些或所有特征,并且可以进一步包括在此描述的特征和概念的修改和等价物。
[0025]概沭
[0026]图1描绘根据一个实施例的用于编码和解码视频内容的系统100的示例。系统100包括以下更详细地描述的编码器102和解码器104。编码器102和解码器104通过运动估计和运动补偿来执行时间预测。运动估计是对于当前单位视频确定运动矢量(MV)的处理。运动补偿将运动矢量应用至正被编码或解码的当前单元。例如,时间预测在参考块上搜索对于当前预测单元(PU)的最佳匹配预测。参考块可以指任何单位视频内容,诸如,块、图片或帧。通过运动矢量和相关联的参考块或图片ID描述最佳匹配预测。而且,B图片中的PU可以具有达两个运动矢量。
[0027]时间预测允许分数(亚像元)图片准确度。使用亚像元预测,这是因为在两个时间场合(当前和参考块的捕捉时间)期间的运动可以对应于像素坐标中的亚像元位置,并且对应于每个亚像元位置的不同预测数据的生成允许调节预测信号以更好地匹配当前中的信号的可能性。
[0028]插值滤波器106被设计成是线性相位,具有单位增益。要求恒定(单位)增益和线性相位特性,以确保插值滤波器106不使信号失真。然而,可能不能对于所有频率具有恒定单位增益或理想线性相移。从而,插值滤波器106被设计成具有最佳线性相位滤波器,该最佳线性相位滤波器具有合适的相位斜率,或者尽可能平坦且宽的、最接近的单位相位响应的群延迟。对于给定亚像元位置(例如,给定分数相位偏移量),频率响应的“平坦度”和“宽度”之间的不同权衡导致不同的亚像元插值滤波器106。例如,对于自然图像,信号的大部分集中在低频和中频,并且通常优选具有在低频和中频中尽可能平坦而高频可以具有更多波动的插值滤波器106。当考虑噪声消除时,插值滤波器106可以优选地衰减噪声显著的频率。通常,噪声的形状取决于图片内容和压缩量。例如,对于低量化机制的压缩噪声可以更平坦。在一个实施例中,为了在信号失真和噪声消除之间进行调整,可以优选地仅衰减噪声功率大于信号功率的频率。
[0029]插值滤波器106包括抽头,抽头利用系数值对全像元像素值加权,系数值被用于确定对于不同亚像元像素位置的亚像元像素值。当使用不同插值滤波器106时,插值滤波器可以对于系数使用不同值,和/或使用不同数量的抽头。
[0030]特定实施例基于来自多个参考块的联合亚像元位置信息来设计插值滤波器106。例如,对于当前预测块,可以使用(来自一个或两个图片的)两个参考块执行双向预测。两个参考块可从列表O和列表1得到。而且,可以使用多于两个参考块。列表O可以与第一参考块相关联,并且列表1可以与第二参考块相关联。然后,使用关于列表O和列表1的亚像元位置,来确定用于两个参考块的插值滤波器106。 [0031]在一个示例中,如果第一参考块是垂直定位的3.5个像素,则运动矢量可以是3个整数像素和半个像素。而且,第二参考块可以是垂直的1.25个像素,其是一个整数像素和四分之一个像素。从而,如上所述,插值滤波器106需要被用于对关于第一参考块的半像元运动进行插值和关于第二参考块的四分之一像元运动进行插值。通常,半像元插值滤波器被用于第一参考块,并且四分之一像元插值滤波器被用于第二参考块,而不管其他参考块在哪个亚像元位置处。然而,特定实施例确定被设计用于关于第一参考块的半像元运动和关于第二参考块的四分之一像元运动的插值滤波器106。即,插值滤波器106被设计成考虑两个参考块的亚像元运动。
[0032]插值滤波器106可能需要被设计用于每个列表的每种组合。例如,列表O可以具有被设计用于每种组合的插值滤波器106的第一集合,并且列表1可以具有被设计用于每种组合的插值滤波器106的第二集合。例如,以下提供用于列表O和列表1的插值滤波器106的系数的示例:
[0033]对于列表O
[0034]^(0,0) = (0,0,64,0,0,0}
[0035]hi (0,1) = {6, -4,68, -3,4, -5}
[0036]4(0,2) = (9,-6,68,-6,4,-2}
[0037]^(0,3) = (6, -7,67, -5,4, -1}
[0038]^(1,0) = (-3, -6,53,22,-11,7}
[0039]h^l, 1) = {2, -9,56,19, -6,2}
[0040]^(1,2) = (18, -20,65,11,4, —9}
[0041]^(1,3) = (6, -14,60,17,_3,—3}
[0042]^(2,0) = (-2, -12,41,41,-10,3}
[0043]^(2,1) = (-11, -3,33,48,-22,14}
[0044]^(2,2) = (2, -10,39,40, -10,3}
[0045]^(2,3) = (14, -22,48,31,_5,-10}
[0046]^(3,0) = (0, -9,24,55, -6,0}
[0047]^(3,1) = (-2, -2,16,60, -15,8}
[0048]^(3,2) = (-9,4,11,66, -17,17}
[0049]^(3,3) = (2, -7,19,56, -8,2}[0050]对于列表1
[0051]h2 (0,0) = (0,0,64,0,0,0}
[0052]h2(0,1) = (-3, -6,53,22,-11,7}
[0053]h2(0,2) = (-2, -12,41,41,-10,3}
[0054]h2(0,3) = {0,-9,24,55,-6,0}
[0055]h2(l,0) = {6,_4,68,_3,4,-5}
[0056]h2(l,1) = {2,-8,56,19,_7,2}
[0057]h2(l,2) = (-11, -3,33,48,-22,14}
[0058]h2(l,3) = (-2, -2,16,60,-15,8}
[0059]h2(2,0) = {9,-6,68,-6,4,-2} [0060]h2(2,1) = (18, -20,65,11,4, —9}
[0061]h2(2,2) = {3,-10,40,39, -10,2}
[0062]h2(2,3) = {_9,4,11,66,-17,17}
[0063]h2(3,0) = {6,_7,67,_5,4,-1}
[0064]h2(3,1) = {6,-14,60,17,-3,-3}
[0065]h2(3,2) = (14, -22,48,31, —5,-10}
[0066]h2 (3,3) = {2,-6,19,56,-9,2}
[0067]在以上插值滤波器设计中,对于每个X和y方向存在四个亚像元值。例如,该值可以是O:用于没有亚像元运动修正,1:用于四分之一像元运动修正,2:用于半像元运动修正,以及3:用于3/4像元运动修正。以上,对于第一参考块,如果第一参考块正在使用半像元运动修正,并且例如来自列表O的第二参考块正在使用四分之一像元运动修正,则使用插值滤波器H1 (2,1)。另外,对于列表1,使用插值滤波器H2 (2,1)。基于关于两个参考块的亚像元位置,联合设计这些插值滤波器106。以上示例示出具有6个抽头的复杂度的联合设计插值滤波器集合的示例。
[0068]以下示出用于基于第一参考块和第二参考块确定最佳插值滤波器106的计算。对于PU的双向预测,来自列表O和列表1的两个参考块可用。而且,每个参考块指示分别用于列表O和列表1预测的CI1和^2的亚像素相移。而且,进行简单求平均,以生成用于当前PU的预测的参考信号。在求平均发生之前用于参考块的预处理的滤波器的选择由H1 (ω)和Η2(ω)指示。
[0069]如果当前中的信号是S(co),并且两个参考块中的两个信号是P1(Co)和Ρ2(ω),可以假设以下:
【权利要求】
1.一种用于编码或解码视频内容的方法,所述方法包括: 确定在对用于视频内容的时间预测处理的亚像元值进行插值时使用的多个插值滤波器,其中,基于关于两个参考块的亚像元偏移量来设计所述多个插值滤波器; 通过计算设备,对于单位视频内容确定关于第一参考块的第一亚像元偏移量; 通过所述计算设备,对于所述单位视频内容确定关于第二参考块的第二亚像元偏移量; 通过所述计算设备,确定插值滤波器集合,以对在用于所述单位视频内容的所述时间预测处理中使用的亚像元像素值集合进行插值,其中,所述插值滤波器集合被设计用于所述第一亚像元偏移量和所述第二亚像元偏移量,并且被用于对关于所述第一参考块的第一亚像元像素值和关于所述第二参考块的第二亚像元值进行插值。
2.根据权利要求1所述的方法,其中,确定所述插值滤波器集合包括: 确定用于所述第一参考块的第一插值滤波器,基于所述第一亚像兀偏移量和所述第二亚像元偏移量来设计所述第一插值滤波器;以及 确定用于所述第二参考块的第二插值滤波器,基于所述第一亚像元偏移量和所述第二亚像元偏移量来设计所述第二插值滤波器。
3.根据权利要求2所述的方法,其中: 所述多个插值滤波器包括被用于与所述第一参考块相关联的第一列表的第一部分插值滤波器, 所述多个插值滤波器包括被用于与所述第二参考块相关联的第二列表的第二部分插值滤波器,以及 所述第一插值滤波器选自所述第一部分插值滤波器,并且所述第二插值滤波器选自所述第二部分插值滤波器。
4.根据权利要求1所述的方法,其中,所述多个插值滤波器被设计用于关于所述第一参考块和所述第二参考块的亚像元偏移量的所有组合。
5.根据权利要求1所述的方法,其中,确定所述插值滤波器集合包括: 确定用于所述第一参考块的第一插值滤波器,所述第一插值滤波器被设计有第一延迟以覆盖第一部分像素值;以及 确定用于所述第二参考块的第二插值滤波器,所述第二插值滤波器被设计有第二延迟以覆盖第二部分像素值, 其中,所述第一部分像素值不同于所述第二部分像素值。
6.根据权利要求5所述的方法,其中: 所述第一插值滤波器和所述第二插值滤波器包括第一数量的抽头;以及 由于所述第一延迟和所述第二延迟,所述第一插值滤波器和所述第二插值滤波器覆盖大于所述第一数量的抽头的像素区域。
7.根据权利要求6所述的方法,其中,被覆盖的区域等效于使用具有不同于所述第一数量的抽头的第二数量的抽头的插值滤波器。
8.根据权利要求1所述的方法,其中,当所述第一亚像元偏移量或所述第二亚像元偏移量中的一个不存在相移时,使用单向预测来对所述第一亚像元偏移量或所述第二亚像元偏移量中具有相移的一个进行插值。
9.根据权利要求8所述的方法,其中: 用于单向预测和双向预测的插值滤波器包括在所述多个滤波器中,以及 使用单向预测的插值滤波器与使用双向预测的插值滤波器包括不同数量的抽头。
10.根据权利要求1所述的方法,其中,对于所述插值滤波器集合中的每对插值滤波器,直流(DC)增益的总和是固定的。
11.根据权利要求1所述的方法,其中,对于所述插值滤波器集合中的每个插值滤波器,直流(DC)增益是固定的。
12.一种被配置成编码或解码视频内容的装置,所述装置包括: 一个或多个计算机处理器;以及 包括指令的计算机可读存储介质,所述指令在被执行时控制所述一个或多个计算机处理器被配置用于: 确定在对用于视频内容的时间预测处理的亚像元值进行插值时使用的多个插值滤波器,其中,基于关于两个参考块的亚像元偏移量来设计所述多个插值滤波器; 对于单位视频内容确定关于第一参考块的第一亚像元偏移量; 对于所述单位视频内容确定关于第二参考块的第二亚像元偏移量;以及确定插值滤波器集合,以对在用于所述单位视频内容的所述时间预测处理中使用的亚像元像素值集合进行插值,其中,所述插值滤波器集合被设计用于所述第一亚像元偏移量和所述第二亚像元偏移量,并且被用于对关于所述第一参考块的第一亚像元像素值和关于所述第二参考块的第二亚像元值进行插值。
13.根据权利要求12所述的装置,其中,确定所述插值滤波器集合包括: 确定用于所述第一参考块的第一插值滤波器,基于所述第一亚像兀偏移量和所述第二亚像元偏移量来设计所述第一插值滤波器;以及 确定用于所述第二参考块的第二插值滤波器,基于所述第一亚像元偏移量和所述第二亚像元偏移量来设计所述第二插值滤波器。
14.根据权利要求13所述的装置,其中: 所述多个插值滤波器包括被用于与所述第一参考块相关联的第一列表的第一部分插值滤波器, 所述多个插值滤波器包括被用于与所述第二参考块相关联的第二列表的第二部分插值滤波器,以及 所述第一插值滤波器选自所述第一部分插值滤波器,并且所述第二插值滤波器选自所述第二部分插值滤波器。
15.根据权利要求12所述的装置,其中,所述多个插值滤波器被设计用于关于所述第一参考块和所述第二参考块的亚像元偏移量的所有组合。
16.根据权利要求12所述的装置,其中,确定所述插值滤波器集合包括: 确定用于所述第一参考块的第一插值滤波器,所述第一插值滤波器被设计有第一延迟以覆盖第一部分像素值;以及 确定用于所述第二参考块的第二插值滤波器,所述第二插值滤波器被设计有第二延迟以覆盖第二部分像素值, 其中,所述第一部分像素值不同于所述第二部分像素值。
17.根据权利要求16所述的装置,其中: 所述第一插值滤波器和所述第二插值滤波器包括第一数量的抽头;以及 由于所述第一延迟和所述第二延迟,所述第一插值滤波器和所述第二插值滤波器覆盖大于所述第一数量的抽头的像素区域。
18.根据权利要求17所述的装置,其中,当不使用延迟时,被覆盖的区域等效于使用具有第二数量的抽头的插值滤波器。
19.根据权利要求12所述的装置,其中,当所述第一亚像元偏移量或所述第二亚像元偏移量中的一个不具有相移时,使用单向预测来对所述第一亚像元偏移量或所述第二亚像元偏移量中具有相移的一个进行插值。
20.一种非暂时性计算机可读存储介质,包括用于编码或解码视频内容的指令,所述指令在被执行时控制计算机系统可操作用于: 确定在对用于视频内容的时间预测处理的亚像元值进行插值时使用的多个插值滤波器,其中,基于关于两个参考块的亚像元偏移量来设计所述多个插值滤波器; 对于单位视频内容确定关于第一参考块的第一亚像元偏移量; 对于所述单位视频内容确定关于第二参考块的第二亚像元偏移量;以及 确定插值滤波器集合,以对在用于所述单位视频内容的所述时间预测处理中使用的亚像元像素值集合进行插值,其中,所述插值滤波器集合被设计用于所述第一亚像元偏移量和所述第二亚像元偏移量,并且被用于对关于所述第一参考块的第一亚像元像素值和关于所述第二参考块的第二亚像元值进`行插值。
【文档编号】H04N19/80GK103650506SQ201280033120
【公开日】2014年3月19日 申请日期:2012年7月2日 优先权日:2011年7月1日
【发明者】库亚·米鲁, 娄健, 方雪, 克里特·帕努索波内, 王利民, 大卫·M·贝隆 申请人:摩托罗拉移动有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1