用于针对媒体编码进行分数像素内插滤波的方法和装置的制造方法

文档序号:10557426阅读:431来源:国知局
用于针对媒体编码进行分数像素内插滤波的方法和装置的制造方法
【专利摘要】披露了用于针对媒体编码进行分数像素内插滤波的方法、装置和制品。所披露的一种示例方法涉及将有限脉冲响应(FIR)滤波器应用于源信号的样本以便生成值阵列。在应用该FIR滤波器之后,将无限脉冲响应(IIR)滤波器应用于所述值阵列以便生成分数像素内插值。所述分数像素内插值可以存储在编码视频数据结构中或者可以输出至显示界面。
【专利说明】用于针对媒体编码进行分数像素内插滤波的方法和装置
本披露领域
[0001]本披露总体上涉及媒体编码器,并且更具体地涉及用于针对媒体编码进行分数像素内插滤波的方法、装置和制品。
背景
[0002]通常,使用当以特定速度被依序演示时按时间组织以便创建电影的多个有序静止图片帧来形成视频或视频程序。视频制作、视频传输和视频呈现通常涉及对包括静止图片帧(例如视频帧)在内的视频信息进行编码和/或解码。例如,可以对视频信息进行编码以便提升视频呈现的视觉质量和/或对视频信息进行压缩以使用更少的存储空间和/或减少到观看者的传输时间。示例视频编码标准包括例如H.263、运动图像专家组(“MPEG” )标准、
H.264、VC-1 等。
[0003]可使用不同的帧速率(例如7帧/每秒、15帧/每秒、30帧/每秒等)和不同的像素分辨率来生成视频。在任何情况下,处理(例如编码或解码)视频通常需要处理相对大量的数据。及时地处理这种大量的信息同时保持较高视频质量和准确性会要求相当量的处理能力。在一些情况下,专用的视频系统用于对视频信息进行编码和/或解码。在其他情况下,具有通用处理器和/或提升的视频处理能力(例如视频处理器)的通用的或多用途计算机用于对视频信息进行编码和/或解码。
[0004]有些视频编码或解码设备包含被设计为对运动信息进行编码和解码(其中具有最小损失或无损失)的运动估计和运动补偿部分。如在许多视频编码标准中所指定的,当更少的位用于对运动信息的编码时,视频处理设备的一些运动估计和运动补偿部分包括上采样器以提高经编码或解码的视频的质量。通常,上采样器是运动估计和运动补偿过程的耗时部分。
附图简要描述
[0005]图1是示出在此所披露的在示例有限脉冲响应(FIR)滤波器后接无限脉冲响应(IIR)滤波器(FIR/IIR级联)技术相对于现有技术滤波器技术的示例性能测量的图。
[0006]图2描绘了可以用于视频编码器和/或视频解码器中的示例装置。
[0007]图3展示了图2的示例装置的示例上采样器。
[0008]图4是示出在此所披露的示例与现有技术之间进行的示例媒体处理性能的比较的图形。
[0009]图5是表示示例机器可读指令的流程图,所述机器可读指令可以被执行以实现图2和图3的示例上采样器,从而首先应用FIR滤波器、后接因果无限脉冲响应(IIR)滤波器并且然后是反因果IIR滤波器。
[0010]图6是表示示例机器可读指令的流程图,所述机器可读指令可以被执行以便实现图2和图3的示例上采样器,从而首先应用FIR滤波器后接反因果IIR滤波器并且然后是因果IIR滤波器。
[0011]图7是示例处理器系统的框图,所述处理器系统可以执行图4和/或图5的指令以便实现图3的上采样器和/或图2的装置。
[0012]图8展示了如何对样本进行因果IIR滤波和反因果IIR滤波的示例。
【具体实施方式】
[0013]在此所披露的示例可以用于在媒体编码中进行分数像素内插滤波。例如,结合视频编码中的运动估计和运动补偿信息,所披露的示例可以用于生成分数像素内插值。在此所披露的示例使能实现在运动估计或运动补偿过程中使用更少时间同时实现在经编码或解码的视频质量的忽略不计或较少的损失的上采样器。在此所披露的示例涉及可以用于粗略估计H.264/AVC半像素滤波器的低复杂度分数半像素内插滤波方案,因而使能在视频编码操作过程中进行快速运动估计。H.264/AVC(高级视频编码)是国际电信联盟(ITU)的视频编码标准。在此所披露的示例相比使用无限脉冲响应(IIR)滤波器后接使用定点运算的有限脉冲响应(FIR)滤波器(IIR/FIR级联)的现有技术提高了内插滤波的精度。例如,在此所披露的示例可以用于更准确地以压缩格式表示原始视频信息。
[0014]此外,由于使用在此所披露的示例可达到的相对较高的编码准确度(例如经压缩的视频与原始视频类似的程度),因此所披露的这种示例还可以用作自洽内插滤波器以用于运动补偿。内插滤波器用于重新创建在编码视频中无法明确发现的信息(例如像素数据或分数像素数据)。例如,如果以更低的采样率对视频进行最初的采样,在上采样过程中可以使用内插滤波器以便在视频是使用更高的采样率最初创建的情况下对原本存在于原始视频中的数据进行内插和估计。这种内插可以用于例如将720x480分辨率(480i或480p)的视频信号上采样为1440x960分辨率的视频。
[0015]自洽滤波器是同样用于运动估计和运动补偿的滤波器。运动估计和运动补偿用于符合众多视频编解码标准的混合架构。仅对编码器侧进行运动估计,并且对编码器侧和解码器侧进行运动补偿。如果解码器符合像H.264/AVC的标准,则使用标准滤波器进行运动补偿。在一些实例中,可以使用其他内插滤波器进行运动估计。在现有技术中,不太复杂的内插滤波器用于运动估计以便减少编码时间。然而,不太复杂常常意味着不太准确,并且这种使用不太复杂的内插滤波器常常会导致有问题的、低质量的结果。不像现有技术,在此所披露的示例滤波器技术相对于现有技术可以用于生成非常准确的结果。此外,结合任何合适的编解码器标准(除了 H.264/AVC标准之外或代替此标准),在此所披露的示例可以用于实现编解码器的运动估计部分和运动补偿部分。在一些示例中,在此所披露的示例可以仅用于编解码器的运动补偿部分,因为其是对H.264/AVC内插滤波器的非常接近的近似,而无需完全实现更加运算密集的H.264/AVC内插滤波器。
[0016]在此所披露的示例包括4抽头有限脉冲响应(FIR)滤波器后接无限脉冲响应(IIR)滤波器技术以及2抽头FIR滤波器后接IIR滤波器技术。在此所披露的这两种类型的技术(例如示例4抽头FIR后接IIR滤波器技术,以及示例2抽头FIR滤波器后接IIR滤波器技术)涉及首先对输入数据应用FIR滤波器,并且随后对来自FIR滤波器的所产生的输出进行IIR滤波过程。FIR滤波器是具有有限持续时间的脉冲响应(例如基于称为脉冲的简单输入信号的输出)的滤波器,意味着在FIR滤波器的初始响应或输出之后,输出最终随时间推移稳定至零(例如,在有限时间量内输出稳定至零KFIR滤波器有时用在媒体解码应用中以便实现内插滤波器从而对媒体信号源的数据进行上采样。IIR滤波器是具有随时间推移继续为非零的脉冲响应的滤波器(例如在有限时间量内并不稳定至零)。在此所披露的示例中,首先应用FIR滤波器,并且在FIR滤波器之后应用IIR滤波器。如在此所披露的首先使用FIR滤波器并且其次使用IIR滤波器的示例FIR/IIR级联滤波器技术消除或减少了发生在现有技术IIR/FIR级联滤波器技术中的中间计算的人工位深度增加的可能发生。在此所披露的示例可消除或减少这种中间计算中的人工位深度增加,同时产生和现有技术一样或比现有技术更好的结果并且同时使用相同的或更少的计算操作。虽然在此结合视频编码(例如视频压缩/解压缩)披露了示例,但是在此所披露的示例可以结合众多其他类型的媒体编码(包括例如先前在IIR/FIR级联中所涉及的静止图像处理、声音处理和/或任何其他信号处理)中的任何一种使用。
[0017]使用定点运算实现在此所披露的示例。在此所披露的示例FIR滤波器被实现为信号样本的有限加权和,其中,权重是整数f(0)......f(M),并且信号样本也是整数。使用基于例如以下所述的函数15至函数22的两次递归带通实现在此所披露的示例IIR滤波器。在此所披露的示例中,用有理数极点(或乘法器)P=(_K)/L来实现IIR滤波器,其中,K和L为带符号整数,并且所有计算都是以定点运算进行的。在一些示例中,使用整数运算来应用在此所披露的FIR滤波器,并且FIR滤波器的系数之和是等于l/(l-p)的有理数的整数分母的倍数(例如有理数 1/(1-Ρ)的整数分母=1/(1-(_K/L)) = 1/((K+L)/L)=L/(K+L))。换言之,FIR滤波器的系数之和是(K+L)的倍数。在此所披露的示例FIR滤波器具有其整数系数的整数和。在此所披露的示例中,FIR滤波器的整数系数是在FIR滤波器之后所应用的IIR滤波器的极值(P)的整数(K+L)倍。FIR滤波器的整数系数的示例整数和可以写为f(0)+f(l) +...+f
(M) = (K+L)*A1*A2*......*Ai,其中(*)是整数倍并且所有数Al......Ai都是整数。这种整数系数的整数和性质允许减少计算过程中内插的像素的舍入误差。
[0018]在此所披露的示例4抽头FIR滤波器后接IIR滤波器技术涉及:(I)使用具有均是2的幂数的系数值[I,8,8,1]的4抽头FIR滤波器,这允许使用更少的移位运算和加法运算来实现FIR滤波器,而无需使用乘法运算;(2)使用两个四项初始化以便准备数据用于进行IIR滤波过程;以及(3)应用具有极值-1/2的IIR滤波器。在此所披露的示例2抽头FIR滤波器后接IIR滤波技术涉及:(I)使用具有系数值[25,25]的2抽头FIR滤波器;(2)使用两个二项初始化以便准备数据用于进行IIR滤波过程;以及(3)应用具有极值-1/4的IIR滤波器。在所展示的示例中,极值是用在以下所描述的递归函数15至22中的乘法器。例如,在函数15和16中,极值(例如乘法器)是-1/2,并且被实现为减法,并且以逐位右移I位(例如函数15的c[j]-=(c[j_l]>>l))。在函数19和20中,极值(例如乘法器)是-1/4,并且被实现为逐位右移2位(例如函数19的c[j]-=(c[j-l]>>2))。虽然在此结合4抽头和2抽头FIR滤波器披露了示例,但是在此所披露的示例可以结合具有任何其他数量的抽头的FIR滤波器并结合使用定点运算实现的任何合适的IIR滤波器来使用。
[0019]假定一次乘法运算具有常规时间度量3、一次加法运算具有度量I并且逐位移位运算具有度量I,那么在此所披露的这两种类型的滤波技术(例如示例4抽头FIR滤波器后接IIR滤波器技术以及示例2抽头FIR滤波器后接IIR滤波器技术)使用每像素比现有技术
H.264/AVC 6抽头内插滤波器更少的和/或更快的运算。因而,在此所披露的示例在运动估计之后提供了较好的结果,从而在视频编码或解码过程中提供更快的处理。具体地,可以使用在此所披露的示例滤波技术来实现视频编码过程的运动估计,以便生成比使用现有技术FIR滤波器(诸如具有系数[_1,5,5,-1]的4抽头FIR滤波器)所得到的那些结果相对更好的结果。在一些示例中,就BD率而言,使用在此所披露的示例4抽头FIR滤波器类型的技术提供平均优于现有技术[_1,5,5,-1]系数4抽头FIR滤波器-0.15%的平均可实现增益。在一些示例中,就BD率而言,使用在此所披露的示例2抽头FIR滤波器类型的技术提供平均优于现有技术[-1,5,5,-1]系数4抽头FIR滤波器-0.05%的平均可实现增益。(BD率被称为Bjontegaard失真率(Bjontegaard Distort1n-rate) (BD率))测量,并且是公知的用于对媒体编码中的位率性能进行测量的度量。这些可实现的增益是基于测试的低分辨率的视频序列,达到多达0.63%的压缩增益。在这种测试的视频序列中,对尺寸4x4、8x8和16x16的块进行滤波,由于更大的区域受到更少来自边界(例如宏块之间的边界)的影响,大多数小块由AVC编码器来处理,从而使得可在更大的内插区域达到相对更好的性能。虽然可以每像素使用两次MUL(乘法)和五次ADD(加法或减法)运算来实现现有技术6抽头半像素滤波器(例如具有常规时间度量11的七次运算)并且现有技术4抽头FIR半像素滤波器每像素使用一次MUL和三次ADD运算(例如具有常规时间度量6的四次运算),在此所披露的具有极值-1/2的IIR级联的示例4抽头FIR滤波器技术每像素使用三次SH(移位)和五次ADD运算(例如具有常规时间度量8的八次运算),并且在此披露的具有极值-1/2的IIR级联的示例2抽头FIR滤波器技术每像素使用一次MUL、两次SH和三次ADD运算(即具有常规时间度量8的六次运算)。因而,在此所披露的示例提供了相同或更好的性能,同时每像素需要比现有技术6抽头H.264/AVC滤波器更少的和/或更快的运算。
[0020]图1示出了示例累计BD率(以百分率表示)的图100,该图展示了这样的比较:示出在相同视频序列的相同数量帧的基础上,在此所披露的具有系数[I,8,8,I]示例4抽头FIR滤波器后接具有极值-1/2的IIR滤波技术以及在此所披露的具有系数[25,25]的示例2抽头FIR滤波器后接具有极值-1/4的IIR滤波技术的示例性能如何优于对6抽头H.264/AVC滤波器的现有技术4抽头[_1,5,5,-1]滤波器接近的性能。在图1所展示的示例中,零线曲线102表示对6抽头FIR滤波器的现有技术4抽头FIR滤波器接近的性能。4抽头FIR滤波器性能线曲线104表示在此所披露的具有系数[I,8,8,1]的示例4抽头FIR滤波器后接具有极值-1/2的IIR滤波技术的性能。2抽头FIR滤波器性能线曲线106表示在此所披露的具有系数[25,25]的示例2抽头FIR滤波器后接具有极值-1/4的IIR滤波技术的性能。在图1的示例图100中,更低值为更好。这样,在此所披露的这两种类型的滤波技术(由4抽头FIR滤波器性能线曲线104表示的示例4抽头FIR滤波器后接IIR滤波器技术以及由2抽头FIR滤波器性能线曲线106表示的示例2抽头FIR滤波器后接IIR滤波器技术)很快超过了对6抽头FIR滤波器的现有技术4抽头FIR滤波器接近的性能。
[0021]此外,由于在此所披露的示例优于现有技术方案的相对提高的性能,在此所披露的示例还可以用于实现自洽半像素内插滤波器以用于未被现有视频编码标准覆盖的运动补偿。例如,在此所披露的滤波技术还可以用于进行对下降至长度为四的短信号的像素内插(例如,内插出四个像素)。
[0022]在此披露了示例方法、装置和包括指令的计算机可读存储介质,用于首先将FIR滤波器应用于源信号的样本从而生成值阵列、并且在应用FIR滤波器之后随后将IIR滤波器应用于阵列中的每一个值从而产生分数像素内插值。所披露的一些这种示例可以用在视频编码过程和/或视频解码过程中。例如,分数像素内插值可以在视频编码过程中被存储在编码视频数据结构(例如用于存储经压缩的视频的文件)中和/或在混合视频编码器的预测过程中用作预测信号或预测数据。在一些示例中,来自前一帧的预测数据用于对未来帧进行编码。可替代地,分数像素内插值可以被输出至显示界面以用于在视频解码过程中显示解码视频。
[0023]在一些示例中,FIR滤波器是具有系数值[1,8,8,1]的4抽头FIR滤波器后接具有极值-1/2的IIR滤波。可替代地,在一些示例中,FIR滤波器是具有系数值[25,25]的2抽头FIR滤波器后接具有极值-1/4的IIR滤波。在一些示例中,分数像素内插值是半像素内插值。在一些示例中,应用FIR滤波器和IIR滤波器涉及在使用半像素滤波器的H.264/AVC编码器中应用FIR滤波器和IIR滤波器以便进行运动估计和/或对视频进行上采样。
[0024]在所披露的一些示例中,用有理数极点(P)实现IIR滤波器。在这种示例中,(P)等于(_K)/L,并且K和L为带符号整数。在一些这种示例中,使用整数运算来应用FIR滤波器,并且FIR滤波器的系数之和是(K+L)的倍数。在一些示例中,将FIR滤波器应用于源信号的样本涉及应用具有是2的幂数的系数值的FIR滤波器。
[0025]在所披露的一些示例中,应用IIR滤波器涉及首先将因果IIR滤波器应用于阵列中的每一个值以便生成第二值的第二阵列,并且在应用因果IIR滤波器之后,随后将反因果IIR滤波器应用于第二值的第二阵列以便生成分数像素内插值。在所披露的一些这种示例中,通过将源信号样本中的四个源信号样本具有权重[34,51,13,-2]的加权和应用于具有极值-1/2的因果IIR滤波器通带的边界条件并且将源信号样本中的四个源信号样本具有权重[36,52,12,-1]的加权和应用于具有极值-1/2的反因果IIR滤波器通带的边界条件来初始化IIR滤波器。可替代地,在所披露的一些这种示例中,通过将源信号样本中的两个源信号样本具有权重[19,20]的加权和应用于具有极值-1/4的因果IIR滤波器通带的边界条件并且将源信号样本中的两个源信号样本具有权重[20,19]的加权和应用于具有极值-1/4的反因果IIR滤波器通带的边界条件来初始化IIR滤波器。可替代地,在所披露的一些这种示例中,通过将源信号样本中的三个源信号样本具有权重[11,30,-1]的加权和应用于具有极值-1/4的因果IIR滤波器通带的边界条件并且将源信号样本中的三个源信号样本具有权重[_1,30,11]的加权和应用于具有极值-1/4的反因果IIR滤波器通带的边界条件来初始化IIR滤波器。
[0026]可替代地,在所披露的一些示例中,应用IIR滤波器涉及首先将反因果IIR滤波器应用于阵列中的每一个值以便生成第二值的第二阵列,并且在应用反因果IIR滤波器之后,随后将因果IIR滤波器应用于第二值的第二阵列以便生成分数像素内插值。在所披露的一些这种示例中,通过将源信号样本中的四个源信号样本具有权重[44,58,11,-1]的加权和应用于具有极值-1/2的反因果IIR滤波器通带的边界条件并且将源信号样本中的四个源信号样本具有权重[-2,13,51,34]的加权和应用于具有极值-1/2的因果IIR滤波器通带的边界条件来初始化IIR滤波器。可替代地,在所披露的一些这种示例中,通过将源信号样本中的两个源信号样本具有权重[20,22]的加权和应用于具有极值-1/4的反因果IIR滤波器通带的边界条件并且将源信号样本中的两个源信号样本具有权重[21,19]的加权和应用于具有极值-1/4的因果IIR滤波器通带的边界条件来初始化IIR滤波器。可替代地,在所披露的一些这种示例中,通过将源信号样本中的三个源信号样本具有权重[11,30,-1 ]的加权和应用于具有极值-1/4的反因果IIR滤波器通带的边界条件并且将源信号样本中的三个源信号样本具有权重[_1,30,11]的加权和应用于具有极值-1/4的因果IIR滤波器通带的边界条件来初始化IIR滤波器。
[0027]图2描绘了根据本披露的教导所构建的示例装置200。图2的示例装置200可以用在例如视频编码器和/或视频解码器中。示例装置200可以用于进行分数像素内插以便结合运动估计和运动补偿信息对源信号进行上采样。图2的示例装置200包括运动信息生成器202、上采样器204和重构器206。所展示的示例的运动信息生成器202对源信号样本208进行处理以便基于视频编码标准生成运动信息。所展示的示例的源信号样本208是形成视频的一个或多个帧的像素。在所展示的示例中,运动信息生成器202基于H.264/AVC视频编码标准生成运动估计和运动补偿信息。然而,可以根据任何其他合适的视频编码标准实现运动信息生成器202。
[0028]在所展示的示例中,运动信息生成器202将所生成的运动信息作为表示像素信息(例如源信号样本208)和运动矢量分量的运动补充的源信号样本210提供给上采样器204。如以下结合图3更详细描述的,所展示的示例的上采样器204对运动补充的源信号样本210进行像素内插。在所展示的示例中,上采样器204对运动补充的源信号样本210进行像素内插以便创建附加像素从而增加输出视频数据的尺寸和分辨率。当所展示的示例的上采样器204内插像素时,上采样器204还将来自运动信息生成器202的运动估计或运动补偿信息应用于内插的像素,从而使得跨由源信号样本208所表示的原始像素和由上采样器204所产生的内插的像素均匀地应用运动估计或运动补偿。
[0029]在所展示的示例中,上采样器204向重构器206提供接收自运动信息生成器202的运动补充的源信号样本210以及分数像素内插值212。在所展示的示例中,分数像素内插值212是基于源信号样本208和运动补充的源信号样本210的经上采样的值。所展示的示例的分数像素内插值212是半像素内插值。然而,可以进行任何其他像素尺寸内插。在所展示的示例中,重构器206对运动补充的源信号样本210和分数像素内插值212进行像素级别运算。在一些示例中,重构器206进行帧间和/或帧内运算以便基于视频编码标准(例如H.264/AVC标准)生成经编码和/或解码的视频数据214。例如,如果装置200用于对视频数据进行编码,则编码视频数据214(例如运动补充的信号样本210和分数像素内插值212)被存储在数据结构中(例如存储视频文件的文件)或用作预测器,使用该预测器在位流中对剩余数据进行计算和编码。可替代地,如果装置200用于对视频数据进行解码,则解码视频数据214(例如运动补充的信号样本210和分数像素内插值212)被提供给显示界面以显示解码视频或者用作预测数据,解码残差被添加至该预测数据,并且所述和(例如组合的运动补充的信号样本210和分数像素内插值212)被处理且最终被显示。
[°03°]图3展示了图2的示例装置200的示例上采样器204的示例实现方式。所展示的示例的上采样器204接收运动补充的源信号样本210(例如源信号样本208和运动矢量分量),并对运动补充的源信号样本210进行IIR滤波之后的FIR滤波以便生成分数像素内插值212。所展示的示例的上采样器204可以被配置成用于进行在此所披露的示例4抽头FIR滤波器后接IIR滤波技术,所述技术涉及:(I)使用具有均是2的幂数的系数值[I,8,8,1]的4抽头FIR滤波器;(2)使用两个四项初始化以便准备数据用于进行IIR滤波过程;并且(3)应用具有极值-1/2的IIR滤波器。另外或可替代地,所展示的示例的上采样器204可以被配置成用于进行在此所披露的示例2抽头FIR滤波后接IIR滤波技术,所述技术涉及:(I)使用具有系数值[25,25]的2抽头FIR滤波器;(2)使用两个二项初始化以便准备数据用于进行IIR滤波过程;并且(3)应用具有极值-1/4的IIR滤波器。
[0031]在所展示的示例中,上采样器204设置有FIR滤波器302、IIR滤波初始化器306和
IIR滤波器308。在所展示的示例中,运动补充的源信号样本210包括源信号pS[-l......N+
2](例如图2的源信号样本208)的N+3个样本(例如像素),其中(N)是所期望的具有1/2像素(例如1/2像素)准确性的输出样本的数量。所展示的示例的FIR滤波器302被配置成用于将FIR滤波器应用于运动补充的源信号样本210以便生成值集合或值阵列c[l......N]。
[0032]对于在此所披露的示例4抽头FIR滤波器后接IIR滤波技术,FIR滤波器302被实现以便通过应用采用以下函数I具有系数值[I,8,8,I]的4抽头滤波器生成值阵列C[1......N]的这(N)个值。
函数I
for(j = 0; j<N; j++)c[j+l] = (pS[j-l]+pS[j+2]) + ((pS[j]+p[j+l])<<3)0
[0033]对于在此所披露的示例2抽头FIR滤波器后接IIR滤波技术,FIR滤波器302被实现以便通过应用采用以下函数2具有系数值[25,25]的2抽头滤波器生成值阵列c[l......N]
的这(N)值。
函数2
for( j = 0; j<N; j++)c[ j+l] = (pS[ j]+pS[ j+l])*25o
[0034]在通过使用或者采用以上函数I的4抽头FIR滤波器技术或者采用以上函数2的2抽头FIR滤波器技术使用FIR滤波器302生成值阵列c[ 1......N]之后,所展示的示例的IIR滤波初始化器306进行初始化以准备应用因果IIR滤波器和反因果IIR滤波器。在所展示的示例中,IIR滤波初始化器306进行初始化以便创建边界条件。也就是,因为IIR滤波器的响应具有无限持续时间(例如IIR滤波器的响应或输出永不稳定至零),所以IIR滤波初始化器306创建边界条件从而使得可以针对相应的有限持续时间(例如边界条件)得到所展示的示例的IIR滤波器308的有意义输出。在此所披露的示例IIR滤波初始化技术被配置成用于获得高度准确的分数像素内插值212,以用于高质量媒体编码,同时需要相对少的生成分数像素内插值212的数学和处理计算。
[0035]在所展示的示例中,由IIR滤波初始化器306进行的初始化不依赖于源长度。同样是在所展示的示例中,IIR滤波初始化器306可以被配置成用于针对在此所披露的示例4抽头FIR滤波器后接IIR滤波技术和/或在此所披露的2抽头FIR滤波器后接IIR滤波技术进行初始化。对于4抽头FIR滤波器后接IIR滤波技术和2抽头FIR滤波器后接IIR滤波技术两者,可通过首先应用因果IIR滤波器接着应用反因果IIR滤波器进行IIR滤波。可替代地,可通过首先应用反因果IIR滤波器接着应用因果IIR滤波器来进行IIR滤波。因果和反因果IIR滤波的顺序可以被适配成适应不同实现方式的需要。图8展示了如何对样本进行因果IIR和反因果I IR滤波的示例。典型地从左向右(例如指数从具有更少量辅助样本的一侧开始)将因果I IR滤波器应用在图8中由箭头802所指示的输入值集合或样本集合(例如值阵列c
[1......N])上,并且典型地从右向左(例如指数从具有更多辅助样本的一侧开始)将反因果IIR滤波器应用在图8中由箭头804所指示的输入值集合或样本集合(例如值阵列c
[1......N)上。然而,应用因果和反因果IIR滤波器的方向可以被反转以便适应不同实现方式的需要。所展示的示例的IIR滤波初始化器306的输出是值集合或值阵列c[0]、c[N+l]。
[0036]对于在此所披露的示例4抽头FIR滤波器后接IIR滤波技术,当在应用反因果IIR滤波器之前应用因果IIR滤波器时,由IIR滤波初始化器306进行的边界条件初始化是基于以下函数3和函数4的。也就是,当首先应用因果IIR滤波器并其次应用反因果IIR滤波器时,IIR滤波初始化器306采用以下示例函数3来初始化因果IIR滤波器的边界条件,并且采用以下示例函数4来初始化反因果IIR滤波器的边界条件。
函数3
C[0] = (34*pS[-l]+51*pS[0]+13*pS[l]-2*pS[2])>>3函数4
C[N+l] = (36*pS[N-l]+52*pS[N]+12*pS[N+l]-l*pS[N+2])>>3
[0037]可替代地,结合在此所披露的示例4抽头FIR滤波器后接IIR滤波技术,当首先应用反因果IIR滤波器并随后应用因果IIR滤波器时,IIR滤波初始化器306基于以下函数5和函数6初始化边界条件。也就是,当首先应用反因果IIR滤波器并其次应用因果IIR滤波器时,示例IIR滤波初始化器306采用以下示例函数5初始化因果IIR滤波器的边界条件并且采用以下示例函数6初始化反因果IIR滤波器的边界条件。
函数5
C[0] = (44*pS[-l]+58*pS[0]+ll*pS[l]-l*pS[2])>>3函数6
c[N+l] = (-2*pS[N-l]+13*pS[N]+51*pS[N+l]-34*pS[N+2])>>3
[0038]对于在此所披露的示例2抽头FIR滤波器后接IIR滤波技术,IIR滤波初始化器306可以针对反射边界条件和/或非反射边界条件进行边界条件初始化。在此所披露的展示示例中,反射边界条件是在其中IIR滤波器308的脉冲响应(例如输出)在由边界条件定义的脉冲响应的边界处被反射的边界条件。在此所披露的展示示例中,非反射边界条件是允许IIR滤波器308的脉冲响应(例如输出)离开(例如无反射地)由边界条件定义的脉冲响应的边界的边界条件。
[0039]对于在此所披露的示例2抽头FIR滤波器后接IIR滤波技术,当在反因果IIR滤波器之前应用因果IIR滤波器时,IIR滤波初始化器306可以被配置成用于基于以下函数7和函数8初始化反射边界条件。也就是,当首先应用因果IIR滤波器并其次应用反因果IIR滤波器时,示例IIR滤波初始化器306采用以下示例函数7来初始化因果IIR滤波器的反射边界条件并且采用以下示例函数8来初始化反因果IIR滤波器的反射边界条件。
函数7
c[0] = 19*pS[-l]+20*pS[0]
函数8
c[N+l]=20*pS[N+l]+19*pS[N+2]
[0040]当在反因果IIR滤波器之前应用因果IIR滤波器时,为了生成在此所披露的示例2抽头FIR滤波器后接IIR滤波技术的非反射边界条件,IIR滤波初始化器306可以被配置成用于基于以下函数9和函数10初始化非反射边界条件。也就是,当首先应用因果IIR滤波器并其次应用反因果IIR滤波器时,示例IIR滤波初始化器306采用以下示例函数9来初始化因果IIR滤波器的非反射边界条件并且采用以下示例函数10来初始化反因果IIR滤波器的非反射边界条件。
函数9c[0]=H*pS[-l]+30*pS[0]-pS[l]
函数10
c[N+l]=-pS[N]+30*pS[N+l]+ll*pS[+2]
[0041]替代性地,当结合在此所披露的示例2抽头FIR滤波器后接IIR滤波技术首先应用反因果IIR滤波器并随后应用因果IIR滤波器时,IIR滤波初始化器306基于以下函数11和函数12初始化反射边界条件。也就是,当首先应用反因果IIR滤波器并其次应用因果IIR滤波器时,示例IIR滤波初始化器306采用以下示例函数11来初始化因果IIR滤波器的反射边界条件并且采用以下示例函数12来初始化反因果IIR滤波器的反射边界条件。
函数11
c[0]=20*pS[-l]+22*pS[0]
函数12
c[N+l]=21*pS[N+l]+19*pS[N+2]
[0042]当在反因果IIR滤波器之后应用因果IIR滤波器时,为了生成在此所披露的示例2抽头FIR滤波器后接IIR滤波技术的非反射边界条件,IIR滤波初始化器306可以被配置成用于基于以下函数13和函数14初始化非反射边界条件。也就是,当首先应用反因果IIR滤波器并其次应用因果IIR滤波器时,示例IIR滤波初始化器306采用以下示例函数13来初始化因果IIR滤波器的非反射边界条件并且采用以下示例函数14来初始化反因果IIR滤波器的非反射边界条件。
函数13
c[0] = ll*pS[-l]+30*pS[0]-pS[l]
函数14
c[N+l]=-pS[N]+30*pS[N+l]+ll*pS[N+2]
[0043]在一些示例中,IIR滤波初始化器306可以使用加权技术来初始化4抽头FIR滤波器后接IIR滤波器和/或2抽头FIR滤波器后接IIR滤波器的边界条件。例如,IIR滤波初始化器306可以如下所述的通过将加权和与边界条件相乘来将不同的加权和应用于边界条件。当首先应用因果IIR滤波器并且其次应用反因果IIR滤波器时,IIR滤波初始化器306可以将四个源信号样本的具有权重[34,51,13,-2]的加权和应用于具有极值-1/2的因果IIR滤波器的边界条件,并且将四个源信号样本的具有权重[36,52,12,-1]的加权和应用于具有极值-1/2的反因果IIR滤波器的边界条件。可替代地,当首先应用因果IIR滤波器并且其次应用反因果IIR滤波器时,IIR滤波初始化器306可以将两个源信号样本的具有权重[19,20]的加权和应用于具有极值-1/4的因果IIR滤波器的边界条件,并且将两个源信号样本的具有权重[20,19]的加权和应用于具有极值-1/4的反因果IIR滤波器的边界条件。可替代地,当首先应用因果IIR滤波器并且其次应用反因果IIR滤波器时,IIR滤波初始化器306可以将三个源信号样本的具有权重[11,30,-1]的加权和应用于具有极值-1/4的因果IIR滤波器的边界条件,并且将三个源信号样本的具有权重[_1,30,11]的加权和应用于具有极值-1/4的反因果IIR滤波器的边界条件。
[0044]当首先应用反因果IIR滤波器并且其次应用因果IIR滤波器时,IIR滤波初始化器306可以将四个源信号样本的具有权重[44,58,11,-1]的加权和应用于具有极值-1/2的反因果IIR滤波器的边界条件,并且将四个源信号样本的具有权重[_2,13,51,34]的加权和应用于具有极值-1/2的因果IIR滤波器的边界条件。可替代地,当首先应用反因果IIR滤波器并且其次应用因果IIR滤波器时,IIR滤波初始化器306可以将两个源信号样本的具有权重[20,22]的加权和应用于具有极值-1/4的反因果IIR滤波器的边界条件,并且将两个源信号样本的具有权重[21,19]的加权和应用于具有极值-1/4的因果IIR滤波器的边界条件。可替代地,当首先应用反因果IIR滤波器并且其次应用因果IIR滤波器时,IIR滤波初始化器306可以将三个源信号样本的具有权重[11,30,-1]的加权和应用于具有极值-1/4的反因果IIR滤波器的边界条件,并且将三个源信号样本的具有权重[-1,30,11 ]的加权和应用于具有极值-1/4的因果IIR滤波器的边界条件。
[0045]所展示的示例的IIR滤波初始化器306的输出是值集合或值阵列c[0]、c[N+l],IIR滤波初始化器306向IIR滤波器308提供该值集合或值阵列。如上所述,对于4抽头FIR滤波器后接IIR滤波技术和2抽头FIR滤波器后接IIR滤波技术两者,由IIR滤波器308应用因果和反因果IIR滤波器的顺序可以改变以便适应不同实现方式的具体需求。当首先应用因果IIR滤波器并且其次应用反因果IIR滤波器时,IIR滤波器308使用以下函数15来针对4抽头FIR滤波器技术应用具有极值-1/2的因果IIR滤波器,接着使用以下函数16来应用反因果IIR滤波器。
函数15
for(j = l; j<N+2; j++)c[ j]- = c[ j-1 ] > > I);
函数16
For( j=N; j>0; j—)
{
c[j]-=([j+l]>>l);
pD[j-l]=c[j]>>3;
}
[0046]在所展示的示例中,函数15的输入是由IIR滤波初始化器306和FIR滤波器302生成的值阵列c[0......N+1],并且函数15的输出是值集合或值阵列c[l......N+1]。这样,函数
16的输入是由函数15生成的值阵列c[l......N+1] ο
[0047]当首先应用反因果IIR滤波器并且其次应用因果IIR滤波器时,IIR滤波器308使用以下函数17来针对4抽头FIR滤波器技术应用具有极值-1/2的反因果IIR滤波器,接着使用以下函数18来应用因果IIR滤波器。
函数17
For( j=N; j>=0; j—)c[ j]-=(c[ j+l]>>l);
函数18
For(j = l; j<=N; j++)
{
c[j]-=(c[j-l]>>l);
pD[j-l]=c[j]>>3;
}
[0048]在所展示的示例中,函数17的输入是由IIR滤波初始化器306和FIR滤波器302生成的值阵列c[0......N+1],并且函数17的输出是值集合或值阵列c[0......N]。这样,函数18的输入是由函数17生成的值阵列c[0......N]。
[0049]当首先应用因果IIR滤波器并且其次应用反因果IIR滤波器时,IIR滤波器308使用以下函数19来针对2抽头FIR滤波器技术应用具有极值-1/4的因果IIR滤波器,接着使用以下函数20来应用反因果IIR滤波器。
函数19
For( j = l; j<N+2; j++)c[ j]-=(c[ j-l]>>2);
函数20
for( j=N; j>0; j—)
{
c[j]-=(c[j+l]>>2);
pD[j-l]=c[j]>>5;
}
[0050]在所展示的示例中,函数19的输入是由IIR滤波初始化器306和FIR滤波器302生成的值阵列c[0......N+I],并且函数19的输出是值集合或值阵列c[l......N+1]。这样,函数
20的输入是由函数19生成的值阵列c[l......N+1] ο
[0051]当首先应用反因果IIR滤波器并且其次应用因果IIR滤波器时,IIR滤波器308使用以下函数21来针对2抽头FIR滤波器技术应用具有极值-1/4的反因果IIR滤波器,接着使用以下函数22来应用因果IIR滤波器。
函数21
for( j=N; j>=0; j—)c[ j]-=(c[ j+l]>>2);
函数22
for(j = l; j<=N; j++)
{
c[j]-=(c[j-l]>>2);
Pd[j-l]=c[j]>>5;
[0052]在所展示的示例中,函数21的输入是由IIR滤波初始化器306和FIR滤波器302生成的值阵列c[0......N+1],并且函数21的输出是值集合或值阵列c[0......N]。这样,函数22
的输入是由函数21生成的值阵列c [ 0......N]。
[0053]所展示的示例的IIR滤波器308的输出(pD[0...N])是分数像素内插值212(例如目的信号)的集合。在所展示的示例中,分数像素内插值212是半像素值。然而,在此所披露的技术可以用于基于其他分数像素尺寸生成内插值。
[0054]虽然在图3中展示了实现图2的上采样器204的示例方式,可以以任何其他方式对图3中所展示的元素、过程和/或设备中的一项或多项进行组合、分割、重新安排、省略、消除和/或实现。进一步地,图3中的示例FIR滤波器302、示例IIR滤波初始化器306、示例IIR滤波器308和/或更一般地示例上采样器204可以通过硬件、软件、固件和/或硬件、软件和/或固件的任何组合来实现。因而,例如,示例FIR滤波器302、示例I IR滤波初始化器306、示例I IR滤波器308和/或更一般地示例上采样器204中的任何一项可由一个或多个电路、可编程处理器、专用集成电路(ASIC)、可编程逻辑设备(PLD)和/或现场可编程逻辑设备(FPLD)等来实现。当阅读此专利的用于覆盖纯软件和/或固件实现方式的任何装置或系统权利要求时,示例FIR滤波器302、示例IIR滤波初始化器306和/或示例IIR滤波器308中的至少一项在此被明确定义为包括存储软件和/或固件的有形计算机可读存储设备或存储盘,诸如存储器、数字多功能盘(DVD)、致密盘(CD)、蓝光碟等。更进一步地,图3的示例上采样器204可以包括一个或多个元素、过程和/或设备(除了在图3中所展示的那些之外或代替那些)、和/或可以包括多于所展示的元素、过程和设备中的任何一项或其全部。
[0055]通过首先应用FIR滤波器且其次进行IIR滤波并且通过使用基于以上所述的边界条件初始化的扩展位深度,在此所披露的示例相比使用IIR/FIR级联的现有技术提高了内插滤波的精度。通过应用使用整数系数的FIR滤波器(诸如具有系数值[I,8,8,I]的4抽头FIR滤波器和/或具有系数值[25,25]的2抽头FIR滤波器),增加了信号的位深度并且在IIR滤波器的后续应用之后的舍入误差基本上减少了。例如,当针对具有扩展位深度的源信号(例如图1的源信号样本208)应用后续IIR滤波器时,非受控舍入误差相对低于使用现有技术IIR/FIR级联技术所产生的舍入误差。
[0056]在此所披露的示例的优势通过事实:双重无限托普利兹矩阵(其中可以呈现IIR和FIR滤波器)正在进行交换;并且通过事实:使用整数系数实现的FIR滤波器提供具有不断增加的位深度的输出信号而在数学上得到证明。因而,假设滤波器被应用于足够长的数据,则可以用与在现有技术IIR/FIR级联技术中相同的乘法器来进行在此所披露的FIR/IIR级联技术的FIR滤波器和后续IIR滤波器,而不会导致在现有技术IIR/FIR滤波技术中出现的中间计算的人工位深度增加。在此所披露的示例FIR/IIR级联技术基本上减少或消除了中间计算的人工位深度增加。虽然在此所披露的示例涉及使用4抽头和2抽头FIR滤波器,但是结合具有任何其他数量的抽头的FIR滤波器并结合使用定点运算实现的任何合适的IIR滤波器,可以使用在此所披露的示例。
[0057]图4是示出了对在此所披露的FIR/IIR级联示例(例如FIR/IIR级联402)与现有技术IIR/FIR级联技术(例如现有技术IIR/FIR级联404)之间的示例媒体处理性能进行比较的图400。在图400中示出的示例性能比较是基于采样的龙格函数,该龙格函数是用于评价内插技术的性能的常规测试。在所展示的示例中,图400示出了现有技术IIR/FIR级联404(用额外的2位位深度增加来实现)以及具有用于定点运算中的IIR和FIR部分的相同乘法器的所披露的FIR/IIR级联进行的内插的绝对误差。在图400中示出的性能区域足够远离测试函数的边界,从而使得图400可就舍入误差的影响而不是与用于IIR滤波的不准确边界设置相关联的误差示出所强调的视图。如果舍入误差被消除,FIR/IIR级联402和现有技术IIR/FIR级联404将在图400上给出相同的值和点,并且因而将互相彼此重叠或相一致。然而,由现有技术IIR/FIR级联404所产生的更高舍入误差的影响造成了使用在此所披露的示例的FIR/IIR级联402与现有技术IIR/FIR级联404之间的可测量的性能差异,因为FIR/IIR级联402的舍入误差相对低于现有技术IIR/FIR级联404的舍入误差。
[0058]图5是表示示例机器可读指令的流程图,所述机器可读指令可以被执行以实现图2和图3的示例上采样器204,从而首先应用FIR滤波器、后接因果无限脉冲响应(IIR)滤波器并且然后是反因果IIR滤波器。图6是表示示例机器可读指令的流程图,所述机器可读指令可以被执行以便实现图3和图2的示例上采样器,从而首先应用FIR滤波器后接反因果IIR滤波器并且然后是因果IIR滤波器。在这些示例中,机器可读指令包括用于由处理器(诸如以下结合图7所讨论的在示例处理器平台700中示出的处理器712)来执行的程序。程序可以体现在被存储在有形计算机可读存储介质(诸如CD-ROM、软盘、硬盘驱动器、DVD、蓝光碟或与处理器712相关联的存储器)上的软件,但是程序的全部和/或其部分可以可替代地由设备而不是处理器712来执行和/或体现在固件或专用硬件中。进一步地,尽管参考在图5和图6中所展示的流程图对示例程序进行了描述,但是可以可替代地使用实现示例上采样器204的许多其他方法。例如,可以改变块的执行顺序和/或可以改变、消除或组合所描述的一些块。
[0059]如以上所提及的,可以使用存储在有形计算机可读存储介质(诸如硬盘驱动器、闪存存储器、只读存储器(R0M)、致密盘(CD)、数字多功能盘(DVD)、缓存器、随机存取存储器(RAM)和/或任何其他存储设备或存储盘)上的经编码的指令(例如计算机和/或机器可读指令)来实现图5和图6的示例过程,在该计算机可读存储介质中可对信息进行任何时长(例如扩展的时间段、永久地、简单实例、暂时缓存和/或信息的缓存)的存储。如在此所使用的,术语有形计算机可读存储介质被明确定义为包括任何类型的计算机可读存储介质设备和/或存储盘并且排除传播的信号。如在此所使用的,术语“有形计算机可读存储介质”和“有形机器可读存储介质”可互换使用。另外或可替代地,可以使用存储在非瞬态计算机和/或机器可读介质(诸如硬盘驱动器、闪存存储器、只读存储器、CD、DVD、缓存、随机存取存储器和/或任何其他存储设备或存储盘)上的经编码的指令(例如计算机和/或机器可读指令)来实现图5和图6的示例过程,在该计算机或机器可读介质中可对信息进行任何时长(例如扩展的时间段、永久地、简单实例、暂时缓存和/或信息的缓存)的存储。如在此所使用的,术语非瞬态计算机可读介质被明确定义为包括任何类型的计算机可读设备或盘并且排除传播的信号。如在此所使用的,当短语“至少”在权利要求的前序部分中用作过渡术语时,其以与术语“包括(comprising)”是开放式一样的方式是开放式的。
[0060]图5的示例程序涉及应用FIR滤波器后接IIR滤波过程。图5的IIR滤波过程涉及首先应用因果IIR滤波器并且其次使用反因果IIR滤波器。图5的示例程序开始于块502,在该块处,上采样器204(图2和图3)接收运动补充的源信号样本2KLFIR滤波器302(图3)应用FIR滤波器(块504)。例如,FIR滤波器302可以采用以上示例函数I来应用具有系数值[I,8,8,1]的4抽头FIR滤波器。可替代地,FIR滤波器302可以采用以上示例函数2来应用具有系数值[25,25]的2抽头FIR滤波器。
[0061 ] IIR滤波初始化器306 (图3)初始化后续IIR滤波器(块506)的边界条件。例如,当在块504处应用4抽头FIR滤波器时,IIR滤波初始化器306可采用以上示例函数3在块506处初始化因果IIR滤波器的边界条件,并且可采用以上示例函数4也在块506处初始化反因果IIR滤波器的边界条件。当在块504处应用2抽头FIR滤波器时,IIR滤波初始化器306可初始化如以上结合图3所述的反射边界条件或非反射边界条件。例如,在块506处,IIR滤波初始化器306可采用以上示例函数7初始化因果IIR滤波器的反射边界条件并且可采用以上示例函数8初始化反因果IIR滤波器的反射边界条件。可替代地,在块506处,IIR滤波初始化器306可采用以上示例函数9初始化因果IIR滤波器的非反射边界条件并且可采用以上示例函数10初始化反因果IIR滤波器的非反射边界条件。
[0062]在一些示例中,IIR滤波初始化器306可以在应用IIR滤波器之前的任何时间初始化后续IIR滤波器的边界条件。因而,所展示的示例的块506的初始化操作可以于在块508和块510处应用IIR滤波器之前的任何时间进行。例如,所展示的示例的块506的初始化操作可以在FIR滤波器在块504处被应用之前进行。
[0063]示例FIR滤波器308(图3)应用因果IIR滤波器(块508)。例如,当在块504处应用4抽头滤波器时,示例IIR滤波器308结合在块506处生成的边界条件采用以上示例函数15以便将因果IIR滤波器应用于由FIR滤波器302在块504处生成的值。可替代地,当在块504处应用2抽头滤波器时,示例IIR滤波器308结合在块506处生成的边界条件采用以上示例函数19以便将因果IIR滤波器应用于由FIR滤波器302在块504处生成的值。
[0064]在块508处首先应用因果IIR滤波器之后,示例IIR滤波器308随后在块510处应用反因果IIR滤波器。例如,当在块504处应用4抽头滤波器时,示例IIR滤波器308结合在块506处生成的边界条件采用以上示例函数16以便将反因果IIR滤波器应用于由FIR滤波器302在块504处生成的值。可替代地,当在块504处应用2抽头滤波器时,示例IIR滤波器308结合在块506处生成的边界条件采用以上示例函数20以便将反因果IIR滤波器应用于由FIR滤波器302在块504处生成的值。在图5的所展示的示例中,块510的反因果IIR滤波器生成图2和图3的分数像素内插值212。在一些示例中,处理器(例如处理器712)可以在视频编码过程中将分数像素内插值212存储在编码视频数据结构中(例如在存储器714、716、713和/或728中的一个或多个存储器中)和/或在混合视频编码器的预测过程中将分数像素内插值212用作预测信号或预测数据。可替代地,处理器可以将分数像素内插值212输出至显示界面以用于在视频解码过程中显示解码视频。然后结束图5的示例过程。
[0065]图6的示例程序涉及应用FIR滤波器后接IIR滤波过程。图6的IIR滤波过程涉及首先应用反因果IIR滤波器并且其次使用因果IIR滤波器。图6的示例程序开始于块602,在该块处,上采样器204(图2和图3)接收运动补充的源信号样本2KLFIR滤波器302(图3)应用FIR滤波器(块604)。例如,FIR滤波器302可以采用以上示例函数I来应用具有系数值[I,8,8,1]的4抽头FIR滤波器。可替代地,FIR滤波器302可以采用以上示例函数2来应用具有系数值[25,25]的2抽头FIR滤波器。
[0066]IIR滤波初始化器306 (图3)初始化后续IIR滤波器(块606)的边界条件。例如,当在块604处应用4抽头FIR滤波器时,IIR滤波初始化器306可采用以上示例函数5在块606处初始化因果IIR滤波器的边界条件,并且可采用以上示例函数6也在块606处初始化反因果IIR滤波器的边界条件。当在块604处应用2抽头FIR滤波器时,IIR滤波初始化器306可初始化如以上结合图3所述的反射边界条件或非反射边界条件。例如,在块606处,IIR滤波初始化器306可采用以上示例函数11初始化因果IIR滤波器的反射边界条件并且可采用以上示例函数12初始化反因果IIR滤波器的反射边界条件。可替代地,在块606处,IIR滤波初始化器306可采用以上示例函数13初始化因果IIR滤波器的非反射边界条件并且可采用以上示例函数14初始化反因果IIR滤波器的非反射边界条件。
[0067]在一些示例中,IIR滤波初始化器306可以在应用IIR滤波器之前的任何时间初始化后续IIR滤波器的边界条件。因而,所展示的示例的块606的初始化操作可以在IIR滤波器在块608和块610处被应用之前的任何时间进行。例如,所展示的示例的块606的初始化操作可以在FIR滤波器在块604处被应用之前进行。
[0068]示例FIR滤波器308(图3)应用反因果IIR滤波器(块608)。例如,当在块604处应用4抽头滤波器时,示例IIR滤波器308结合在块606处生成的边界条件采用以上示例函数17以便将反因果IIR滤波器应用于由FIR滤波器302在块604处生成的值。可替代地,当在块604处应用2抽头滤波器时,示例IIR滤波器308结合在块606处生成的边界条件采用以上示例函数21以便将反因果IIR滤波器应用于由FIR滤波器302在块604处生成的值。
[0069]在块608处首先应用反因果IIR滤波器之后,示例IIR滤波器308随后在块610处应用因果IIR滤波器。例如,当在块604处应用4抽头滤波器时,示例IIR滤波器308结合在块606处生成的边界条件采用以上示例函数18以便将因果IIR滤波器应用于由FIR滤波器302在块604处生成的值。可替代地,当在块604处应用2抽头滤波器时,示例IIR滤波器308结合在块606处生成的边界条件采用以上示例函数22以便将因果IIR滤波器应用于由FIR滤波器302在块604处生成的值。在图6的所展示的示例中,块610的因果IIR滤波器生成图2和图3的分数像素内插值212。在一些示例中,处理器(例如处理器712)可以在视频编码过程中将分数像素内插值212存储在编码视频数据结构中(例如在存储器714、716、713和/或728中的一个或多个存储器中)和/或在混合视频编码器的预测过程中将分数像素内插值212用作预测信号或预测数据。可替代地,处理器可以将分数像素内插值212输出至显示界面以用于在视频解码过程中显示解码视频。然后结束图6的示例过程。
[0070]图7是示例处理器平台700的框图,所述处理器平台能够执行图5和图6的指令以便实现图2和图3的上采样器205。处理器平台700可以是例如服务器、个人计算机、移动设备(例如手机、智能电话、平板计算机(诸如iPad?))、个人数字助理(PDA)、互联网设施、DVD播放器、CD播放器、数字视频记录器、蓝光播放器、游戏机、个人视频记录器、机顶盒或任何其他类型的计算设备。
[0071]所展示的示例的处理器平台700包括处理器712。所展示的示例的处理器712是硬件。例如,处理器712可由来自任何所期望的家族或制造商的一个或多个集成电路、逻辑电路、微处理器或控制器来实现。
[0072]所展示的示例的处理器712包括本地存储器713(例如缓存)。所展示的示例的处理器712经由总线718与包括易失性存储器714和非易失性存储器716在内的主存储器进行通信。易失性存储器714可以由同步动态随机存取存储器(SDRAM)、动态随机存取存储器(DRAM)、RAMBUS动态随机存取存储器(RDRAM)和/或任何其他类型的随机存取存储器设备来实现。非易失性存储器716可以通过闪存存储器和/或任何其他所期望的类型的存储器设备来实现。由存储器控制器来控制主存储器714、716的接入。
[0073]所展示的示例的处理器平台700还包括接口电路720。接口电路720可以由任何类型的接口标准(诸如以太网接口、通用串行总线(USB)和/或PCI总线接口来实现。
[0074]在所展示的示例中,一个或多个输入设备722连接至接口电路720。输入设备722准许用户将数据和命令输入到处理器712中。输入设备可由例如音频传感器、麦克风、照相机(静物或视频)、键盘、按键、鼠标、触摸屏、轨迹板、轨迹球、等距点和/或语音识别系统来实现。
[0075]—个或多个输出设备724也连接至所展示的示例的接口电路720。输出设备724可由例如显示设备(例如发光二极管(LED)、有机发光二极管(0LED)、液晶显示器、阴极射线管显示器(CRT)、触摸屏、触觉输出设备、发光二极管(LED)、打印机和/或扬声器)来实现。因而,所展示的示例的接口电路720典型地包括图形驱动卡。
[0076]所展示的示例的接口电路720还包括通信设备(诸如发射器、接收器、收发器、调制解调器和/或网络接口卡)以便经由网络726(例如以太网连接、数字用户线(DSL)、电话线、同轴电缆、蜂窝电话系统等)促进与外部机器(例如任何种类的计算设备)的数据交换。
[0077]所展示的示例的处理器平台700还包括用于存储软件和/或数据的一个或多个大容量存储设备728。这种大容量存储设备728的示例包括软盘驱动器、硬盘驱动器、致密盘驱动器、蓝光碟驱动器、RAID系统和数字多功能盘(DVD)驱动器。
[0078]图5和图6的示例机器可读指令可以作为经编码的指令732存储在大容量存储设备728中、在易失性存储器714中、在非易失性存储器716中和/或存储在诸如CD或DVD的可移除的有形的计算机可读存储介质上。
[0079]虽然在此已经描述了某些示例方法、装置和制品,但是本专利的覆盖范围不限于此。相反,本专利覆盖完全落入本专利的权利要求书的范围内的所有方法、装置和制品。
【主权项】
1.一种方法,包括: 将有限脉冲响应(FIR)滤波器应用于源信号的样本以便生成值的阵列; 在应用所述FIR滤波器之后,将无限脉冲响应(IIR)滤波器应用于所述值的所述阵列以便生成分数像素内插值;以及 以下各项中的至少一项:将所述分数像素内插值存储在编码视频数据结构中、将所述分数像素内插值输出至显示界面、或将所述分数像素内插值用作预测数据以便对未来帧进行编码。2.如权利要求1所述的方法,其中,应用所述IIR滤波器包括: 将因果IIR滤波器应用于所述值的阵列以便生成第二值的第二阵列;以及在应用所述因果IIR滤波器之后,将反因果IIR滤波器应用于所述第二值的所述第二阵列以便生成所述分数像素内插值。3.如权利要求2所述的方法,进一步包括通过以下方式初始化所述IIR滤波器: 将所述源信号样本中的四个源信号样本的具有权重[34,51,13,-2]的加权和应用于具有极值-1/2的所述因果IIR滤波器通带的边界条件;以及 将所述源信号样本中的四个源信号样本的具有权重[36,52,12,-1]的加权和应用于具有极值-1/2的所述反因果IIR滤波器通带的边界条件。4.如权利要求2所述的方法,进一步包括通过以下方式初始化所述IIR滤波器: 将所述源信号样本中的两个源信号样本的具有权重[19,20]的加权和应用于具有极值-1/4的所述因果IIR滤波器通带的边界条件;并且 将所述源信号样本中的两个源信号样本的具有权重[20,19]的加权和应用于具有极值-1/4的所述反因果IIR滤波器通带的边界条件。5.如权利要求2所述的方法,进一步包括通过以下方式初始化所述IIR滤波器: 将所述源信号样本中的三个源信号样本的具有权重[11,30,-1 ]的加权和应用于具有极值-1/4的所述因果IIR滤波器通带的边界条件;并且 将所述源信号样本中的三个源信号样本的具有权重[_1,30,11]的加权和应用于具有极值-1/4的所述反因果IIR滤波器通带的边界条件。6.如权利要求1所述的方法,其中,应用所述IIR滤波器包括: 将反因果IIR滤波器应用于所述值的阵列以便生成所述第二值的第二阵列;并且在应用所述反因果IIR滤波器之后,将所述因果IIR滤波器应用于第二值的所述第二阵列以便生成所述分数像素内插值。7.如权利要求6所述的方法,进一步包括通过以下方式初始化所述IIR滤波器: 将所述源信号样本中的四个源信号样本的具有权重[44,58,11,-1]的加权和应用于具有极值-1/2的所述反因果IIR滤波器通带的所述边界条件;并且 将所述源信号样本中的四个源信号样本的具有权重[_2,13,51,34]的加权和应用于具有极值-1/2的所述因果IIR滤波器通带的所述边界条件。8.如权利要求6所述的方法,进一步包括通过以下方式初始化所述IIR滤波器: 将所述源信号样本中的两个源信号样本的具有权重[20,22]的加权和应用于具有极值-1/4的所述反因果IIR滤波器通带的边界条件;并且 将所述源信号样本中的两个源信号样本的具有权重[21,19]的加权和应用于具有极值-1/4的所述因果IIR滤波器通带的边界条件。9.如权利要求6所述的方法,进一步包括通过以下方式初始化所述IIR滤波器: 将所述源信号样本中的三个源信号样本的具有权重[11,30,-1 ]的加权和应用于具有极值-1/4的所述反因果IIR滤波器通带的边界条件;并且 将所述源信号样本中的三个源信号样本的具有权重[_1,30,11]的加权和应用于具有极值-1/4的所述因果IIR滤波器通带的边界条件。10.如权利要求1所述的方法,其中,将所述FIR滤波器应用于所述源信号的所述样本包括应用具有系数值[I,8,8,1]的4抽头FIR滤波器,并且其中,应用所述IIR滤波器包括应用具有极值-1/2的IIR滤波器。11.如权利要求1所述的方法,其中,将所述FIR滤波器应用于所述源信号的所述样本包括应用具有系数值[25,25]的2抽头FIR滤波器,并且其中,应用所述IIR滤波器包括应用具有极值-1/4的IIR滤波器。12.如权利要求1所述的方法,其中,所述分数像素内插值是半像素内插值。13.如权利要求1所述的方法,其中,应用所述FIR滤波器和所述IIR滤波器包括在使用半像素滤波器的H.264/高级视频编码编码器中应用所述FIR滤波器和所述IIR滤波器以便进行对视频的上采样。14.如权利要求1所述的方法,其中,用有理数极点(P)实现所述IIR滤波器,(P)等于(_K) /L,并且K和L为带符号整数。15.如权利要求14所述的方法,其中,使用整数运算来应用所述FIR滤波器,并且所述FIR滤波器的系数之和是(K+L)的倍数。16.如权利要求1所述的方法,其中,将所述FIR滤波器应用于所述源信号的所述样本包括应用具有是2的幂的系数值的所述FIR滤波器。17.—种装置,包括 有限脉冲响应(FIR)滤波器,所述有限脉冲响应滤波器用于对源信号的样本进行处理以便生成值的阵列; 无限脉冲响应(IIR)滤波器,所述无限脉冲响应滤波器用于在应用所述FIR滤波器之后对所述值的所述阵列进行处理以便生成分数像素内插值;以及 处理器,所述处理器用于以下各项中的至少一项:将所述分数像素内插值存储在编码视频数据结构中或者将所述分数像素内插值输出至显示界面。18.如权利要求17所述的装置,其中,所述IIR滤波器用于通过以下方式对所述阵列的每一个值进行处理: 将因果IIR滤波器应用于所述值的阵列以便生成第二值的第二阵列;以及 在应用所述因果IIR滤波器之后,将反因果IIR滤波器应用于所述第二值的所述第二阵列以便生成所述分数像素内插值。19.如权利要求18所述的装置,进一步包括用于通过以下方式初始化所述IIR滤波器的IIR滤波初始化器: 将所述源信号样本中的四个源信号样本的具有权重[34,51,13,-2]的加权和应用于具有极值-1/2的所述因果IIR滤波器通带的边界条件;并且 将所述源信号样本中的四个源信号样本的具有权重[36,52,12,-1]的加权和应用于具有极值-1/2的所述反因果IIR滤波器通带的边界条件。20.如权利要求18所述的装置,进一步包括用于通过以下方式初始化所述IIR滤波器的IIR滤波初始化器: 将所述源信号样本中的两个源信号样本的具有权重[19,20]的加权和应用于具有极值-1/4的所述因果IIR滤波器通带的边界条件;以及 将所述源信号样本中的两个源信号样本的具有权重[20,19]的加权和应用于具有极值-1/4的所述反因果IIR滤波器通带的边界条件。21.如权利要求18所述的装置,进一步包括用于通过以下方式初始化所述IIR滤波器的IIR滤波初始化器: 将所述源信号样本中的三个源信号样本的具有权重[11,30,-1 ]的加权和应用于具有极值-1/4的所述因果IIR滤波器通带的边界条件;以及 将所述源信号样本中的三个源信号样本的具有权重[_1,30,11]的加权和应用于具有极值-1/4的所述反因果IIR滤波器通带的边界条件。22.如权利要求17所述的装置,其中,所述IIR滤波器用于通过以下方式对所述阵列的每一个所述值进行处理: 将反因果IIR滤波器应用于所述值的阵列以便生成第二值的第二阵列;并且 在应用所述反因果IIR滤波器之后,将所述因果IIR滤波器应用于所述第二值的所述第二阵列以便生成所述分数像素内插值。23.如权利要求22所述的装置,进一步包括用于通过以下方式初始化所述IIR滤波器的IIR滤波初始化器: 将所述源信号样本中的四个源信号样本的具有权重[44,58,11,-1]的加权和应用于具有极值-1/2的所述反因果IIR滤波器通带的所述边界条件;并且 将所述源信号样本中的四个源信号样本的具有权重[_2,13,51,34]的加权和应用于具有极值-1/2的所述因果IIR滤波器通带的所述边界条件。24.如权利要求22所述的装置,进一步包括用于通过以下方式初始化所述IIR滤波器的IIR滤波初始化器: 将所述源信号样本中的两个源信号样本的具有权重[20,22]的加权和应用于具有极值-1/4的所述反因果IIR滤波器通带的边界条件;以及 将所述源信号样本中的两个源信号样本的具有权重[21,19]的加权和应用于具有极值-1/4的所述因果IIR滤波器通带的边界条件。25.如权利要求22所述的装置,进一步包括用于通过以下方式初始化所述IIR滤波器的IIR滤波初始化器: 将所述源信号样本中的三个源信号样本的具有权重[11,30,-1 ]的加权和应用于具有极值-1/4的所述反因果IIR滤波器通带的边界条件;以及 将所述源信号样本中的三个源信号样本的具有权重[_1,30,11]的加权和应用于具有极值-1/4的所述因果IIR滤波器通带的边界条件。26.如权利要求17所述的装置,其中,所述FIR滤波器用于通过应用具有系数值[I,8,8,I]的4抽头FIR滤波器对所述源信号的所述样本进行处理,并且其中,所述IIR滤波器是具有极值-1/2的IIR滤波器。27.如权利要求17所述的装置,其中,所述FIR滤波器用于通过应用具有系数值[25,25]的2抽头FIR滤波器对所述源信号的所述样本进行处理,并且其中,所述IIR滤波器是具有极值-1/4的IIR滤波器。28.如权利要求17所述的装置,其中,所述分数像素内插值是半像素内插值。29.如权利要求17所述的装置,其中,所述FIR滤波器和所述IIR滤波器用于在使用半像素滤波器的H.264/高级视频编码编码器中操作以便进行对视频的上采样。30.如权利要求17所述的装置,其中,用有理数极点(P)实现所述IIR滤波器,(P)等于(-K) /L,并且K和L为带符号整数。31.如权利要求30所述的装置,其中,使用整数运算应用所述FIR滤波器,并且所述FIR滤波器的系数之和是(K+L)的倍数。32.如权利要求17所述的装置,其中,所述FIR滤波器将以是2的幂的系数值而被应用。33.—种计算机可读存储介质,包括多条指令,这些指令当被执行时致使机器至少进行: 将有限脉冲响应(FIR)滤波器应用于源信号的样本以便生成值的阵列; 在应用所述FIR滤波器之后,将无限脉冲响应(IIR)滤波器应用于所述值的阵列以便生成分数像素内插值;以及 以下各项中的至少一项:将所述分数像素内插值存储在编码视频数据结构中或者将所述分数像素内插值输出至显示界面。34.如权利要求33所述的计算机可读存储介质,其中,所述指令致使所述机器通过以下方式应用所述IIR滤波器: 将因果IIR滤波器应用于所述值阵列以便生成第二值的第二阵列;并且 在应用所述因果IIR滤波器之后,将反因果IIR滤波器应用于所述第二值的所述第二阵列以便生成所述分数像素内插值。35.如权利要求34所述的计算机可读存储介质,其中,所述指令用于致使所述机器通过以下方式初始化所述IIR滤波器: 将所述源信号样本中的四个源信号样本的具有权重[34,51,13,-2]的加权和应用于具有极值-1/2的所述因果IIR滤波器通带的边界条件;并且 将所述源信号样本中的四个源信号样本的具有权重[36,52,12,-1]的加权和应用于具有极值-1/2的所述反因果IIR滤波器通带的边界条件。36.如权利要求34所述的计算机可读存储介质,其中,所述指令用于致使所述机器通过以下方式初始化所述IIR滤波器: 将所述源信号样本中的两个源信号样本的具有权重[19,20]的加权和应用于具有极值-1/4的所述因果IIR滤波器通带的边界条件;以及 将所述源信号样本中的两个源信号样本的具有权重[20,19]的加权和应用于具有极值-1/4的所述反因果IIR滤波器通带的边界条件。37.如权利要求34所述的计算机可读存储介质,其中,所述指令用于致使所述机器通过以下方式初始化所述IIR滤波器: 将所述源信号样本中的三个源信号样本的具有权重[11,30,-1 ]的加权和应用于具有极值-1/4的所述因果IIR滤波器通带的边界条件;以及 将所述源信号样本中的三个源信号样本的具有权重[_1,30,11]的加权和应用于具有极值-1/4的所述反因果IIR滤波器通带的边界条件。38.如权利要求33所述的计算机可读存储介质,其中,所述指令致使所述机器通过以下方式应用所述IIR滤波器: 将反因果IIR滤波器应用于所述值的阵列以便生成所述第二值的第二阵列;并且 在应用所述反因果IIR滤波器之后,将所述因果IIR滤波器应用于第二值的所述第二阵列以便生成所述分数像素内插值。39.如权利要求38所述的计算机可读存储介质,其中,所述指令用于致使所述机器通过以下方式初始化所述IIR滤波器: 将所述源信号样本中的四个源信号样本的具有权重[44,58,11,-1]的加权和应用于具有极值-1/2的所述反因果IIR滤波器通带的所述边界条件;以及 将所述源信号样本中的四个源信号样本的具有权重[_2,13,51,34]的加权和应用于具有极值-1/2的所述因果IIR滤波器通带的所述边界条件。40.如权利要求38所述的计算机可读存储介质,其中,所述指令用于致使所述机器通过以下方式初始化所述IIR滤波器: 将所述源信号样本中的两个源信号样本的具有权重[20,22]的加权和应用于具有极值-1/4的所述反因果IIR滤波器通带的边界条件;以及 将所述源信号样本中的两个源信号样本的具有权重[21,19]的加权和应用于具有极值-1/4的所述因果IIR滤波器通带的边界条件。41.如权利要求38所述的计算机可读存储介质,其中,所述指令用于致使所述机器通过以下方式初始化所述IIR滤波器: 将所述源信号样本中的三个源信号样本的具有权重[11,30,-1 ]的加权和应用于具有极值-1/4的所述反因果IIR滤波器通带的边界条件;以及 将所述源信号样本中的三个源信号样本的具有权重[_1,30,11]的加权和应用于具有极值-1/4的所述因果IIR滤波器通带的边界条件。42.如权利要求33所述的计算机可读存储介质,其中,所述指令致使所述机器通过应用具有系数值[I,8,8,1]的4抽头FIR滤波器来将所述FIR滤波器应用于所述源信号的所述样本,并且其中,应用所述IIR滤波器包括应用具有极值-1/2的IIR滤波器。43.如权利要求33所述的计算机可读存储介质,其中,所述指令致使所述机器通过应用具有系数值[25,25]的2抽头FIR滤波器将所述FIR滤波器应用于所述源信号的所述样本,并且其中,应用所述IIR滤波器包括应用具有极值-1/4的IIR滤波器。44.如权利要求33所述的计算机可读存储介质,其中,所述分数像素内插值是半像素内插值。45.如权利要求33所述的计算机可读存储介质,其中,所述指令致使所述机器通过在使用半像素滤波器的H.264/高级视频编码编码器中应用所述FIR滤波器和所述IIR滤波器来应用所述FIR滤波器和所述IIR滤波器以便进行对视频的上采样。46.如权利要求33所述的计算机可读存储介质,其中,所述指令致使所述机器用有理数极点(P)来实现所述IIR滤波器,(P)等于(_K)/L,并且K和L为带符号整数。47.如权利要求46所述的计算机可读存储介质,其中,所述指令致使所述机器使用整数运算来应用所述FIR滤波器,并且所述FIR滤波器的系数之和是(K+L)的倍数。48.如权利要求33所述的计算机可读存储介质,其中,所述指令致使所述机器通过应用具有是2的幂的系数值的所述FIR滤波器来将所述FIR滤波器应用于所述源信号样本。
【文档编号】H04N19/80GK105917652SQ201480073110
【公开日】2016年8月31日
【申请日】2014年2月13日
【发明人】N·施尔雅克霍夫
【申请人】英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1