CN102792698A - 用于运动内插法的色度高精度运动滤波 - Google Patents

用于运动内插法的色度高精度运动滤波 Download PDF

Info

Publication number
CN102792698A
CN102792698A CN2011800127045A CN201180012704A CN102792698A CN 102792698 A CN102792698 A CN 102792698A CN 2011800127045 A CN2011800127045 A CN 2011800127045A CN 201180012704 A CN201180012704 A CN 201180012704A CN 102792698 A CN102792698 A CN 102792698A
Authority
CN
China
Prior art keywords
pixel position
interpolation filter
fraction pixel
motion vector
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2011800127045A
Other languages
English (en)
Other versions
CN102792698B (zh
Inventor
拉詹·L·乔希
陈培松
马尔塔·卡切维奇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN102792698A publication Critical patent/CN102792698A/zh
Application granted granted Critical
Publication of CN102792698B publication Critical patent/CN102792698B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/523Motion estimation or motion compensation with sub-pixel accuracy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Abstract

一种视频译码单元可经配置以通过再使用对应照度块的运动向量来对视频数据的色度块进行编码或解码。归因于色度块相对于对应照度块的下取样,运动向量针对色度块可具有比照度块的精度大的精度。所述视频译码单元可通过基于所述运动向量所指向的像素位置的位置而选择内插滤波器来内插参考色度块的值。举例来说,照度运动向量可具有四分之一像素精度,且色度运动向量可具有八分之一像素精度。可能存在与四分之一像素精度相关联的内插滤波器。所述视频译码单元可使用对应于所述像素位置或相邻像素位置的内插滤波器来内插所述运动向量所指向的所述像素位置的值。

Description

用于运动内插法的色度高精度运动滤波
本申请案主张2010年2月18日申请的第61/305,891号美国临时申请案的优先权,所述美国临时申请案的全部内容在此以引用的方式并入本文中。
技术领域
本发明涉及视频译码。
背景技术
数字视频能力可并入到广泛范围的装置中,包括数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或桌上型计算机、数字相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式电话或卫星无线电电话、视频会议装置及其类似者。数字视频装置实施视频压缩技术(例如,在由MPEG-2、MPEG-4、ITU-T H.263或ITU-T H.264/MPEG-4第10部分(高级视频编码(AVC))定义的标准及这些标准的扩展中描述的视频压缩技术)以更有效地发射及接收数字视频信息。
视频压缩技术执行空间预测及/或时间预测以减少或移除视频序列中固有的冗余。对于基于块的视频译码来说,可将一视频帧或片段分割成多个宏块。可进一步分割每一宏块。使用相对于相邻宏块的空间预测来对经帧内译码的(I)帧或片段中的宏块进行编码。经帧间译码的(P或B)帧或片段中的宏块可使用相对于同一帧或片段中的相邻宏块的空间预测或相对于其它参考帧的时间预测。
发明内容
大体来说,本发明描述用于色度视频数据的译码的技术。视频数据通常包括两种类型的数据:提供亮度信息的照度像素及提供色彩信息的色度像素。可执行相对于照度像素的运动估计过程以计算运动向量(照度运动向量),所述运动向量可接着再用于色度像素(色度运动向量)。归因于色度域中的子取样,色度像素的数目可为照度像素的一半。即,可将每一色度分量在行方向与列方向上进行下取样达二分之一。此外,照度运动向量可具有四分之一像素精度,这可使色度运动向量具有八分之一像素精度以便将照度运动向量再用于色度像素。本发明提供用于内插分数像素位置(例如,八分之一像素位置)的值以对色度块进行编码及解码的技术。本发明还提供用于产生内插滤波器以用于内插分数像素位置的值的技术。
在一个实例中,一种方法包括:基于视频数据的照度块的照度运动向量确定视频数据的色度块的色度运动向量,所述照度块对应于所述色度块,其中所述色度运动向量包含具有第一分数部分的水平分量及具有第二分数部分的垂直分量,其中所述照度运动向量具有第一精度,且其中所述色度运动向量具有大于或等于所述第一精度的第二精度;基于所述水平分量的所述第一分数部分及所述垂直分量的所述第二分数部分选择内插滤波器,其中选择所述内插滤波器包含从内插滤波器的集合选择所述内插滤波器,所述内插滤波器的集合中的每一者对应于所述照度运动向量的多个可能的分数像素位置中的一者;使用所述选定内插滤波器来内插由所述色度运动向量所识别的参考块的值;及使用所述参考块处理所述色度块。
在另一实例中,一种设备包括视频译码单元,所述视频译码单元经配置以:基于视频数据的照度块的照度运动向量确定视频数据的色度块的色度运动向量,所述照度块对应于所述色度块,其中所述色度运动向量包含具有第一分数部分的水平分量及具有第二分数部分的垂直分量,其中所述照度运动向量具有第一精度,且其中所述色度运动向量具有大于或等于所述第一精度的第二精度;基于所述水平分量的所述第一分数部分及所述垂直分量的所述第二分数部分选择内插滤波器,其中选择所述内插滤波器包含从内插滤波器的集合选择所述内插滤波器,所述内插滤波器的集合中的每一者对应于所述照度运动向量的多个可能的分数像素位置中的一者;使用所述选定内插滤波器来内插由所述色度运动向量所识别的参考块的值;及使用所述参考块处理所述色度块。
在另一实例中,一种设备包括:用于基于视频数据的照度块的照度运动向量确定视频数据的色度块的色度运动向量的装置,所述照度块对应于所述色度块,其中所述色度运动向量包含具有第一分数部分的水平分量及具有第二分数部分的垂直分量,其中所述照度运动向量具有第一精度,且其中所述色度运动向量具有大于或等于所述第一精度的第二精度;用于基于所述水平分量的所述第一分数部分及所述垂直分量的所述第二分数部分选择内插滤波器的装置,其中选择所述内插滤波器包含从内插滤波器的集合选择所述内插滤波器,所述内插滤波器的集合中的每一者对应于所述照度运动向量的多个可能的分数像素位置中的一者;用于使用所述选定内插滤波器来内插由所述色度运动向量所识别的参考块的值的装置;及用于使用所述参考块处理所述色度块的装置。
在另一实例中,一种计算机可读媒体(例如,计算机可读存储媒体)含有(例如,编码有)指令,所述指令使可编程处理器进行以下操作:基于视频数据的照度块的照度运动向量确定视频数据的色度块的色度运动向量,所述照度块对应于所述色度块,其中所述色度运动向量包含具有第一分数部分的水平分量及具有第二分数部分的垂直分量,其中所述照度运动向量具有第一精度,且其中所述色度运动向量具有大于或等于所述第一精度的第二精度;基于所述水平分量的所述第一分数部分及所述垂直分量的所述第二分数部分选择内插滤波器,其中选择所述内插滤波器包含从内插滤波器的集合选择所述内插滤波器,所述内插滤波器的集合中的每一者对应于所述照度运动向量的多个可能的分数像素位置中的一者;使用所述选定内插滤波器来内插由所述色度运动向量所识别的参考块的值;及使用所述参考块处理所述色度块。
在随附图式及下文的描述中阐述一个或一个以上实例的细节。其它特征、目标及优点将从所述描述及所述图式以及从权利要求书显而易见。
附图说明
图1为说明一实例视频编码及解码系统的框图,所述视频编码及解码系统可利用用于内插色度运动向量的分数像素位置的值的技术。
图2为说明可实施用于选择内插滤波器的技术的视频编码器的一实例的框图。
图3为说明对经编码的视频序列进行解码的视频解码器的一实例的框图。
图4为说明针对全像素位置的分数像素位置的概念图。
图5A到5C为说明照度块的像素位置及色度块的对应分数像素位置的概念图。
图6为说明用于内插分数像素位置的值以对色度块进行编码的一实例方法的流程图。
图7为说明用于内插分数像素位置的值以对色度块进行解码的一实例方法的流程图。
图8及9为说明用于选择用以计算水平分量与垂直分量两者的分量贡献的内插滤波器的方法的流程图。
图10为说明用于从现有上取样滤波器产生根据本发明的技术而使用的内插滤波器的一实例方法的流程图。
具体实施方式
大体来说,本发明描述用于色度视频数据的译码的技术。视频数据(例如,宏块)可包括两种类型的像素:与亮度有关的照度像素及与色彩有关的色度像素。对于数据块(例如,宏块),色度像素值的数目可能为照度像素值的一半。宏块可包括(例如)照度数据及色度数据。视频编码器可执行相对于宏块的照度像素的运动估计以计算照度运动向量。视频编码器可接着使用照度运动向量来产生指向所述宏块中的同一有关像素的色度运动向量。照度运动向量可能具有分数像素精度,例如,四分之一像素精度。
在宏块中,色度块的像素可相对于照度块的像素而下取样。此下取样可使色度运动向量指向具有比照度运动向量的精度大的精度的分数像素位置。即,为了使译码单元将照度运动向量再用作色度运动向量,色度运动向量可能需要具有比照度运动向量的精度大的精度。举例来说,如果照度运动向量具有四分之一像素精度,则色度运动向量可具有八分之一像素精度。在一些实例中,照度运动向量可具有八分之一像素精度。相应地,色度运动向量可具有十六分之一像素精度。然而,可将色度运动向量截断成八分之一像素精度。因此,色度运动向量可具有大于或等于照度运动向量的精度的精度。
一些视频编码器使用双线性内插法来内插参考色度块(即,色度运动向量所指向的色度块)的八分之一像素位置的值。虽然双线性内插法的速度快,但其具有较差的频率响应,此情形可导致预测误差增加。根据本发明的技术,视频编码器可经配置以基于运动向量的水平分量及垂直分量而选择在内插所述运动向量所指向的分数像素位置的值时使用的内插滤波器。
运动向量可具有水平分量及垂直分量。本发明使用“MVx”指代水平分量且使用“MVy”指代垂直分量,以使得根据{MVx,MVy}来定义运动向量。运动向量的水平分量及垂直分量可具有全部分及分数部分。分量的全部分可指代运动向量所对应的全像素位置,而分数部分可指代对应于全像素位置的分数位置。分数部分可对应于分数N/M,其中N<M。举例来说,如果运动向量的分量为23/8,则分量的全部分将为2,而分数部分将为3/8。当运动向量分量为负时,全像素位置可被选择为小于所述运动向量分量的最大整数。因此,作为一个实例,如果运动向量的分量为-23/8,则分量的全部分将为-3,而分数部分将为5/8。注意,在此状况下,分数部分不同于运动向量分量中所含的分数。一般来说,对于具有八分之一精度的色度向量,在假定运动向量为负的情况下,如果运动向量中所含的分数为N/8,则所述运动向量的分数部分将为(8-N)/8。因此,可将水平分量与垂直分量表达为具有适当分数的带分数。分数可为二进分数(dyadic fraction),即,分母为二的幂的分数。
本发明将水平分量的分数部分称作“mx”且将垂直分量的分数部分称作“my”。本发明将水平分量的全部分称作“FPx”且将垂直分量的全部分称作“FPy”。因此,可将水平分量MVx表达为FPx+mx,且可将垂直分量MVy表达为FPy+my
本发明的技术包括基于指代分数像素位置的运动向量的水平分量mx及垂直分量my而选择内插滤波器以用来内插所述分数像素位置的值。所述技术还包括针对照度像素的分数位置(例如,四分之一像素位置)的集合定义内插滤波器的集合。可将分数像素位置的值确定为针对水平分量及垂直分量所确定的值的贡献的组合。换句话说,可将分数像素位置的内插值-值(fractional_position(mx,my))-确定为针对分量的分数位置的集合所确定的值的组合。
如果一分量的分数部分等于全像素位置,则可确定所述分量的分数部分的值等于全像素位置的值。如果一分量的分数部分等于照度块的分数像素位置的集合中的一者,则可通过评估针对所述分数位置所定义的滤波器来确定所述分量的分数部分的值。在其它情况下,可将分量的分数部分的值确定为来自相邻分数像素位置的贡献的平均值。
作为一实例,假设照度运动向量具有四分之一像素精度且色度运动向量对应于相对于照度块而下取样达二分之一的色度块。于是所述照度运动向量的分量的可能的分数像素位置为0、1/4、1/2及3/4。在此实例中,根据本发明的技术,可针对所述1/4、1/2及3/4分数位置来定义滤波器。可将这些滤波器分别称作F1、F2及F3。可将这些滤波器描述为对应于可通过具有四分之一像素精度(即,与照度运动向量相同的精度)的运动向量来表达的分数位置。在此实例中,色度运动向量可另外指代分数像素位置1/8、3/8、5/8及7/8。这些分数像素位置可由具有八分之一像素精度的运动向量而非具有四分之一像素精度的运动向量所指代。
在此实例中,如果色度运动向量的分量具有等于零的分数部分,则所述分量的值等于由所述分量的全部分所指代的全像素位置。如果色度运动向量的分量具有等于1/4、1/2或3/4的分数部分,则所述分量的值等于通过执行F1、F2或F3中的相应一者所产生的值。在其它情况下,分量的值可为相邻分数位置的平均值。
举例来说,如果分量的分数部分为1/8,则所述分量的值为全像素位置的值与通过执行F1所产生的值的平均值。作为另一实例,如果分量的分数部分为3/8,则所述分量的值为通过执行F1所产生的值与通过执行F2所产生的值的平均值。作为又一实例,如果分量的分数部分为5/8,则所述分量的值为通过执行F2所产生的值与通过执行F3所产生的值的平均值。作为再一实例,如果分量的分数部分为7/8,则所述分量的值为通过执行F3所产生的值与相邻全像素位置(例如,FPn+1)的值的平均值。在此实例中,假定另一方向上的分数部分为零。
可对参考色度块中的每一像素使用此过程。参考色度块的分数像素位置的计算出的值可进一步用以计算正使用色度运动向量来编码的色度块的残余值。即,经编码的色度块可对应于色度残余值,所述色度残余值被计算为预测块(对应于参考帧的具有根据上述过程计算出的分数像素位置的值的块)与待编码的色度块之间的差。
解码器可接收对应于色度块的照度块的照度运动向量,使用所述照度运动向量来形成所述色度块的色度运动向量,且接着使用上述的同一内插过程来内插参考帧的分数像素位置的值。解码器可接着通过将色度块的残余值加到预测块而对色度块进行解码。可接着通过组合色度块与照度块以产生待显示的像素的照度及色度数据来呈现块。
上述过程包括从现有上取样滤波器针对照度块的分数像素位置的集合中的每一者定义内插滤波器。本发明的技术还提供用于定义这些内插滤波器的实例方法。一种实例方法可用以从单一上取样滤波器获得若干内插滤波器。考虑待上取样达4倍的一维信号x[n]。在此状况下,可通过在x[n]的每两个样本之间插入3个零而产生另一信号y[n]。此可导致混叠,可通过使用具有截止频率π/4的滤波器h[n]对y[n]进行低通滤波来消除混叠。假设所述滤波器为线性相位,具有以0为中心的(2M+1)个分接头,其中M可由用户配置。于是可将经滤波的信号s[n]写成:
s [ n ] = &Sigma; m = - M M h [ m ] y [ n + m ] .
在此实例中,将滤波操作表达为内积而非卷积运算。由于仅当n可被4除尽时,y[n]才为非零,所以在此实例中,对于每一n,针对特定n计算s[n]仅需要h[n]的系数的特定子集。可通过用4除n产生的余数(使用模算子“%”通过n%4表示)来确定所述子集。作为一实例,考虑M=11,使得h[n]具有23个分接头。于是当n等于1时(且类似地,当(n%4)等于1时),
s[1]=h[1-9]y[-8]+h[-5]y[-4]+h[-1]y[0]+h[3]y[4]+h[7]y[8]+h[11]y[12],
或,使用用对应x[n]值替换y[n]值的等效表达:
s[1]=h[-9]x[-2]+h[-5]x[-1]+h[-1]x[0]+h[3]x[1]+h[7]x[2]+h[11]x[3]。
因此,{h[-9],h[-5],h[-1],h[3],h[7],h[11]}可被视为用来获得1/4像素位置的内插值的6分接头滤波器。再次强调,在此实例中将滤波操作表示为内积运算而非常规卷积运算,否则将对上述滤波器进行时间反转。在此表达中,h[k]指代滤波器h的第k个系数,滤波器h具有2M+1个系数。类似地,可用于1/2像素位置及3/4像素位置的滤波器可分别为,
{h[-10],h[-6],h[-2],h[2],h[6],h[10]},及
{h[-11],h[-7],h[-3],h[1],h[5],h[9]}。
此实例方法可用于产生内插滤波器以便内插四分之一像素分数位置处的值。一般来说,对于精确度为1/N的分数像素内插法,可通过以下操作来应用类似技术:首先设计具有截止频率π/N的线性相位低通滤波器,及接着找出所述滤波器的对应于n%N的值的不同子集以产生针对不同分数像素位置m/N(0<=m<N)的滤波器。
在一些实例中,可进一步精炼通过以上的实例方法产生的滤波器。举例来说,对于每一滤波器,可确保系数的总和为一。这可避免引入内插值的DC偏置。作为另一实例,对于原始低通滤波器h[n],可确保h[0]=1且h[4n]=0,其中n不等于0。这可避免在滤波时影响x[n]的原始样本。
为了实施方案目的,可将滤波器系数表达为分数,其中所有系数均具有为2的幂的公分母。举例来说,公分母可为32。在执行滤波器时,可将滤波器系数乘以公分母(例如,32)且舍入到最接近的整数。可进行达±1的进一步调整以确保滤波器系数的总和为公分母(例如,32)。如果选择滤波器系数(不管公分母)以使得其总和为较高值,则实现较好内插的代价可为,针对中间滤波计算的位深度会增加。在一个实例实施方案中,选择总和为32的滤波器系数,使得对于具有为8位的输入位深度的视频序列,可以16位精度执行色度内插。
在一个实例实施中,使用以下滤波器系数:
h1={2,-5,28,9,-3,1};
h2={2,-6,20,20,-6,2};及
h3={1,-3,9,28,-5,2}。
对于IPPP配置及阶层式B配置,将这些滤波器用于色度分量内插法提供了位速率的改善(减少),针对在JCT-VC标准化努力中使用的测试序列的等效峰值信噪比,所述改善分别为1.46%及0.68%。
图1为说明一实例视频编码及解码系统10的框图,所述视频编码及解码系统10可利用用于内插色度运动向量的分数像素位置的值的技术。如图1中所展示,系统10包括源装置12,源装置12经由通信信道16将经编码的视频传输到目的地装置14。源装置12及目的地装置14可包含广泛范围的装置中的任一者。在一些状况下,源装置12及目的地装置14可包含无线通信装置,例如,无线手持机、所谓的蜂窝式或卫星无线电电话,或可经由通信信道16传送视频信息的任何无线装置,在此种状况下,通信信道16为无线的。
然而,涉及内插色度运动向量的分数像素位置的值的本发明的技术未必限于无线应用或设定。举例来说,这些技术可应用于空中电视广播、有线电视传输、卫星电视传输、因特网视频传输、编码于存储媒体上的经编码的数字视频,或其它情况。相应地,通信信道16可包含适于传输经编码的视频数据的无线或有线媒体的任何组合。
在图1的实例中,源装置12包括视频源18、视频编码器20、调制器/解调器(调制解调器)22及发射器24。目的地装置14包括接收器26、调制解调器28、视频解码器30及显示装置32。根据本发明,源装置12的视频编码器20及目的地装置14的视频解码器30可经配置以应用用于选择内插滤波器以用于内插参考帧的分数像素位置(例如,八分之一像素位置)的值以便对色度块进行编码或解码的技术。在其它实例中,源装置及目的地装置可包括其它组件或布置。举例来说,源装置12可从外部视频源18(例如,外部相机)接收视频数据。同样地,目的地装置14可与外部显示装置介接,而非包括集成式显示装置。
图1的所说明系统10仅为一个实例。用于选择内插滤波器以用于内插参考帧的分数像素位置的值以便对色度块进行编码或解码的技术可由任何数字视频编码及/或解码装置执行。尽管本发明的技术通常由视频编码装置执行,但所述技术也可由视频编码器/解码器(通常被称作“编解码器(CODEC)”)执行。视频编码器20及视频解码器30是可实施本发明的技术的视频译码单元的实例。可实施这些技术的视频译码单元的另一实例为视频编解码器。
源装置12及目的地装置14仅为这些译码装置的实例,其中源装置12产生用于传输到目的地装置14的经译码的视频数据。在一些实例中,装置12、14可以大体上对称的方式操作,使得装置12、14中的每一者均包括视频编码及解码组件。因此,系统10可支持视频装置12、14之间的单向或双向视频传输以(例如)用于视频串流传输、视频重放、视频广播或视频电话。
源装置12的视频源18可包括例如视频相机等视频俘获装置、含有先前俘获的视频的视频档案,及/或来自视频内容提供者的视频馈入。作为另一替代方案,视频源18可产生基于计算机图形的数据作为源视频,或产生实况视频、经归档视频及计算机产生的视频的组合。在一些状况下,如果视频源18为视频相机,则源装置12与目的地装置14可形成所谓的相机电话或视频电话。然而,如上文所提及,本发明中所描述的技术通常可适用于视频译码,且可应用于无线及/或有线应用。在每一种状况下,可通过视频编码器20对经俘获、预先俘获或计算机产生的视频进行编码。接着可通过调制解调器22根据通信标准来调制经编码的视频信息,且经由发射器24将其发射到目的地装置14。调制解调器22可包括各种混频器、滤波器、放大器或设计用于信号调制的其它组件。发射器24可包括设计用于发射数据的电路,包括放大器、滤波器及一个或一个以上天线。
目的地装置14的接收器26经由信道16接收信息,且调制解调器28解调所述信息。同样,视频编码过程可实施本文中所描述的技术中的一者或一者以上以选择内插滤波器用于内插参考帧的分数像素位置的值以便对色度块进行编码。经由信道16传送的信息可包括也由视频解码器30使用的由视频编码器20定义的语法信息,所述语法信息包括描述宏块及其它经译码的单元(例如,GOP)的特性及/或处理的语法元素。显示装置32向用户显示经解码的视频数据,且可包含多种显示装置中的任一者,例如,阴极射线管(CRT)、液晶显示器(LCD)、等离子体显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
在图1的实例中,通信信道16可包含任何无线或有线通信媒体,例如,射频(RF)频谱或一个或一个以上物理传输线,或无线媒体与有线媒体的任何组合。通信信道16可形成基于包的网络(例如,局域网、广域网或例如因特网的全球网络)的一部分。通信信道16通常表示用于将视频数据从源装置12传输到目的地装置14的任何合适通信媒体或不同通信媒体的集合,包括有线或无线媒体的任何合适组合。通信信道16可包括路由器、交换器、基站,或可用于促进从源装置12到目的地装置14的通信的任何其它设备。
视频编码器20及视频解码器30可根据例如ITU-T H.264标准(或者称作MPEG-4第10部分(高级视频译码(AVC))的视频压缩标准进行操作。然而,本发明的技术不限于任何特定译码标准。其它实例包括MPEG-2及ITU-T H.263。尽管图1中未展示,但在一些方面中,视频编码器20及视频解码器30可各自与音频编码器及解码器集成,且可包括适当的MUX-DEMUX单元或其它硬件及软件,以处置一共同数据串流或若干单独数据串流中的音频及视频两者的编码。如果适用,则MUX-DEMUX单元可符合ITU H.223多路复用器协议或例如用户数据报协议(UDP)等其它协议。
ITU-T H.264/MPEG-4(AVC)标准是作为被称为联合视频小组(JVT)的集体合作的产物由ITU-T视频译码专家组(VCEG)与ISO/IEC动画专家组(MPEG)一起制定的。在一些方面中,可将本发明中所描述的技术应用于大体上遵守H.264标准的装置。H.264标准描述于由ITU-T研究组于2005年3月发布的ITU-T推荐H.264“用于普通视听服务的高级视频译码(Advanced Video Coding for generic audiovisual services)”中,ITU-T推荐H.264可在本文中被称作H.264标准或H.264规范,或H.264/AVC标准或规范。联合视频小组(JVT)持续致力于扩展H.264/MPEG-4AVC。
视频编码器20及视频解码器30各自可实施为多种合适编码器电路中的任一者,例如,一个或一个以上微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或其任何组合。视频编码器20及视频解码器30中的每一者可包括于一个或一个以上编码器或解码器中,其中任一者可集成为相应相机、计算机、移动装置、订户装置、广播装置、机顶盒、服务器或其类似者中的组合式编码器/解码器(编解码器)的部分。
视频序列通常包括一系列视频帧。图片群组(GOP)通常包含一系列一个或一个以上视频帧。GOP可在GOP的标头、GOP的一个或一个以上帧的标头或别处包括语法数据,所述语法数据描述所述GOP中所包括的帧的数目。每一帧可包括描述所述相应帧的编码模式的帧语法数据。视频编码器20通常对个别视频帧内的视频块进行操作以便对视频数据进行编码。视频块可对应于宏块或宏块的分割区。视频块可具有固定或变化的大小,且可根据指定的译码标准在大小方面不同。每一视频帧可包括多个片段。每一片段可包括多个宏块,所述宏块可排列成若干分割区(也被称作子块)。
作为一实例,ITU-T H.264标准支持各种块大小(例如,针对明度(luma)分量的16乘16、8乘8或4乘4,及针对色度(chroma)分量的8×8)的帧内预测;以及各种块大小(例如,针对明度分量的16×16、16×8、8×16、8×8、8×4、4×8及4×4,及针对色度分量的相应按比例调整的大小)的帧间预测。在本发明中,“N×N”与“N乘N”可互换地使用以在垂直尺寸与水平尺寸方面指代块的像素尺寸,例如,16×16个像素或16乘16个像素。一般来说,16×16块将具有垂直方向上的16个像素(y=16)及水平方向上的16个像素(x=16)。同样地,N×N块通常具有垂直方向上的N个像素及水平方向上的N个像素,其中N表示非负整数值。块中的像素可按行及列排列。此外,块未必需要在水平方向上与在垂直方向上具有相同数目个像素。举例来说,块可包含N×M个像素,其中M未必等于N。虽然通常关于16×16块加以描述,但本发明的技术可应用于其它块大小,例如,32×32、64×64、16×32、32×16、32×64、64×32,或其它块大小。因此,本发明的技术可应用于大小大于16×16的宏块。
小于16乘16的块大小可被称作16乘16宏块的分割区。视频块可包含像素域中的像素数据的块,或(例如)在将变换(例如,离散余弦变换(DCT)、整数变换、小波变换或概念上类似的变换)应用于残余视频块数据之后的变换域中的变换系数的块,所述残余视频块数据表示经编码的视频块与预测性视频块之间的像素差。在一些状况下,视频块可包含变换域中的经量化的变换系数的块。
较小视频块可提供较好的分辨率,且可用于定位包括高层级细节的视频帧。一般来说,宏块及各种分割区(有时被称作子块)可被视为视频块。另外,片段可被视为多个视频块,例如,宏块及/或子块。每一片段可为视频帧的可独立解码的单元。或者,帧自身可为可解码单元,或帧的其它部分可被定义为可解码单元。术语“经译码的单元”或“译码单元”可指代视频帧的任何可独立解码的单元,例如,整个帧、帧的片段、图片群组(GOP)(也被称作序列),或根据适用的译码技术所定义的另一可独立解码的单元。
根据本发明的技术,视频编码器20可经配置以选择内插滤波器以用于内插参考帧的分数像素位置的值以便对色度块进行编码。举例来说,在视频编码器20对一宏块进行编码时,视频编码器20可首先使用帧间模式编码过程来对所述宏块的一个或一个以上照度块进行编码。此编码过程可产生照度块的一个或一个以上照度运动向量。视频编码器20可接着计算色度块的色度运动向量,所述色度块对应于所述照度运动向量中的一者的照度块。即,色度块可与同一宏块的照度块并置。
视频编码器20可经配置以:执行对照度块的运动搜索,且将通过所述运动搜索而产生的照度运动向量再用于色度块。照度运动向量通常指向参考块内的特定像素,例如,参考块的左上部像素。此外,照度运动向量可具有分数精度,例如,四分之一像素精度。在参考块中,照度像素对色度像素的比可能为4:1。即,在参考宏块中,色度块中的每一行与列中的像素可为并置的照度块的每一行与列中的像素的一半。
为了再使用照度运动向量来对色度块进行编码,视频编码器20可在色度块中使用与照度块中相等的数目个可能的像素位置(全像素位置或分数像素位置)。因此,与照度运动向量相比,色度运动向量可在每像素的分数像素位置的数目方面具有较大精度。这是由于在水平与垂直方向上在一半像素当中划分相等数目个像素位置。举例来说,如果照度运动向量具有四分之一像素精度,则色度运动向量可具有八分之一像素精度。一般来说,当照度向量具有为1/N的精度时,色度运动向量可具有为1/2N的精度。在一些实例中,可将色度运动向量截断成为1/N的精度。
在照度运动向量具有四分之一像素精度的实例中,视频编码器20可配置有三个内插滤波器,每一内插滤波器与色度块的分数四分之一像素位置(例如,像素的四分之一、四分之二及四分之三)中的一者相关联。视频编码器20可首先确定色度运动向量所指向的位置。所述位置可由各自具有全部分及分数部分的水平分量与垂直分量来定义。视频编码器20可经配置以基于水平分量与垂直分量的分数部分来选择内插滤波器。
一般来说,视频编码器20可基于对应于水平分量与垂直分量的水平贡献与垂直贡献的组合而计算运动向量所指向的位置的值。可首先计算所述分量中的一者,且接着可使用经类似定位的像素计算第二分量。举例来说,可首先计算水平分量,且接着可使用具有相同水平位置的在上方及下方的像素来计算运动向量所指向的位置的值。可首先内插在上方及下方的像素的值。
如果运动向量指向全像素位置(即,水平分量与垂直分量两者具有零值分数部分),则视频编码器20可直接使用所述全像素位置的值作为所述运动向量所指向的像素的值。另一方面,如果水平分量与垂直分量的分数部分中的任一者或两者为非零,则视频编码器20可内插所述运动向量所指向的位置的值。
在两个分量中的一者具有非零值分数部分而另一分量具有零值分数部分的状况下,视频编码器20可每像素仅内插一个值。特定来说,视频编码器20可使用全像素位置的值作为具有零值分数部分的分量的贡献。举例来说,如果水平分量具有零值分数部分,且垂直分量具有为四分之一的分数部分,则视频编码器20可内插垂直分量的值,使用水平分量的全像素位置的值,且组合这些值以计算运动向量所指向的位置的值。
如上文所提及,视频编码器20可配置有针对四分之一像素位置中的每一者的内插滤波器。在此实例中,假设这些滤波器为F1、F2及F3,其中F1对应于四分之一位置,F2对应于四分之二位置,且F3对应于四分之三位置。当一分量指向四分之一像素位置时,视频编码器20可使用对应于所述分量的分数部分的滤波器来计算所述分量的值。举例来说,如果垂直分量具有为四分之一的分数部分,则视频编码器20可使用滤波器F1计算垂直贡献。
在一分量指向八分之一像素位置时,视频编码器20可使用由相邻滤波器产生的值或相邻全像素值的平均值来计算所述分量的值。举例来说,如果水平分量具有为八分之一(1/8)的分数部分,则视频编码器20可将所述水平分量的值计算为全像素位置与由滤波器F1产生的值的平均值。作为另一实例,如果水平分量具有为八分之三(3/8)的分数部分,则视频编码器20可将所述水平分量的值计算为由滤波器F1产生的值与由滤波器F2产生的值的平均值。
特定来说,假设x对应于水平方向且y对应于垂直方向。假设(mx,my)表示具有八分之一像素精度的运动向量的分数像素部分。因此,在此实例中:mx,my  {0,1/8,1/4,3/8,1/2,5/8,3/4,7/8}。假设对应于(mx,my)=(0,0)的参考帧像素由P表示,且预测值由Q表示。针对mx及my,假设滤波器F1、F2及F3分别与1/4、1/2及3/4位置相关联。假设E8指代分母为八以使得分数表示不能进一步约分的八分之一像素位置的集合。即,假设E8={1/8,3/8,5/8,7/8}。假设E4指代四分之一像素位置及大于四分之一像素位置。即,假设E4={0,1/4,1/2,3/4}。
视频编码器20可首先考虑mx或my均不属于E8的状况(步骤1)。在此状况下,视频编码器20可如下内插Q的值。如果(mx,my)=(0,0),则Q=P(步骤1-1)。否则,如果mx=0(步骤1-2),则视频编码器20可通过针对垂直分量my的值应用适当内插滤波器F1、F2或F3来计算Q。举例来说,如果my=1/4,则视频编码器20可使用滤波器F1。类似地,如果my=0(步骤1-3),则视频编码器20可通过针对水平分量mx的值应用适当内插滤波器F1、F2或F3来计算Q。举例来说,如果mx=3/4,则视频编码器20可使用滤波器F3。最后,如果mx与my两者为非零(步骤1-4),则视频编码器20可基于my的值应用F1、F2或F3中的一者以产生对应于位置(0,my)的中间值(假定全像素位置为(0,0))。接着,取决于mx的值,视频编码器20可基于mx的值使用F1、F2或F3中的一者来计算(mx,my)的值。视频编码器20可首先内插(n,my)的值作为选定滤波器可指代的中间值。举例来说,对于六分接头滤波器,可首先内插n={-2,-1,0,1,2,3}(在其不容易获得的情况下)。在一些实例中,视频编码器20可经配置以首先在水平方向上进行内插且接下来在垂直方向上进行内插,而非按上述内插次序进行内插。
作为另一状况,如果mx或my属于E8(步骤2),则视频编码器20可如下计算预测值Q。如果mx E8且my E4(步骤2-1),则视频编码器20可首先使用F1、F2或F3中的适当一者计算对应于位置(0,my)的中间内插值Q1。视频编码器20可接着计算来自E4的最接近mx的两个值。假设这些值由mx0及mx1表示。视频编码器20可计算分别对应于(mx0,my)及(mx1,my)的中间值Q2及Q3。如果mx0=0,则可从Q1复制Q2。如果mx1=1,则可从下一水平像素的Q1复制Q2。视频编码器20可将Q计算为Q2与Q3的平均值。
作为一实例,考虑运动向量的分数部分为(3/8,1/4)。于是,视频编码器20可首先使用滤波器F1计算对应于(0,1/4)的Q1。接着,视频编码器20可分别使用滤波器F1及F2计算分别对应于(1/4,1/4)及(1/2,1/4)的Q2及Q3。最后,视频编码器20可对这两个值求平均值以得出Q。
相反,如果mx E4且my E8(步骤2-2),则视频编码器20可首先基于mx的值或从P所复制的值(在mx为零时)在水平方向上使用适当内插滤波器F1、F2或F3计算对应于位置(mx,0)的第一中间内插值Q1。接着,视频编码器20可计算来自E4的最接近my的两个值。假设这些值由my0及my1表示。接着,视频编码器20可在垂直方向上使用适当内插滤波器计算对应于(mx,my0)及(mx,my1)的内插值Q2及Q3。如果my0=0,则视频编码器20可从Q1复制Q2。类似地,如果my1=1,则视频编码器20可从对应于下一垂直像素的Q1复制Q3。接着,视频编码器20可通过对Q2与Q3求平均值而计算(mx,my)的内插值Q。
最后,存在mx E8且my E8的状况(步骤2-3)。在此状况下,视频编码器20可计算来自E4的最接近mx的两个值(表示为mx0及mx1)。类似地,视频编码器20可计算来自E4的最接近my的两个值(表示为my0及my1)。接着,针对四个位置(mx0,my0)、(mx0,my1)、(mx1,my0)、(mx1,my1)中的每一者,视频编码器20可以与mx或my均不属于E8的状况下类似的方式(即,类似于步骤1)计算中间值Q1、Q2、Q3及Q4。最后,视频编码器20可对所述中间内插值求平均值以计算(mx,my)的内插值Q。在其它实例中,视频编码器20可经配置以仅计算两个中间值而非四个中间值来得出最终内插值Q。举例来说,视频编码器20可经配置以仅计算对应于对角位置(mx0,my0)及(mx1,my1)或(mx0,my1)及(mx1,my0)的中间值且对所述中间值求平均值以获得Q的最终内插值。
所属领域的技术人员应认识到,当mx E4或my E8时,有可能直接导出在垂直方向上的八分之一像素精度像素位置,而非根据两个相邻的四分之一像素精度像素位置使用平均化来计算所述位置。由于滤波器F1、F2及F3具有相同长度,因此添加两个滤波器的系数会提供等效的八分之一像素位置滤波器(相当于缩放因子)。因此,如果色度运动向量指向3/8像素位置,则可以逐个位置的方式对F1及F2的滤波器系数求和以导出针对(0,3/8)位置的直接滤波器。因此,在此实例中,对应于3/8位置的滤波器为{4,-11,48,29,-9,3}。应注意,此滤波器的滤波器系数的总和为64。因此,需要适当调整在滤波之后的向右移位操作。假定对应于全像素位置的滤波器为{0,0,32,0,0,0}。此处,已假定F1、F2及F3具有6个分接头,且其总和为32。类似地,对应于下一全像素位置的滤波器为{0,0,0,32,0,0}。
如上文所描述,有可能设计七个滤波器,每一八分之一像素位置一个滤波器,而非从相邻四分之一像素位置滤波器导出八分之一像素位置滤波器。
可以整数算术执行本发明中所描述的滤波技术。为此,可针对视频编码器20修改上文所描述的步骤。为便于标记,添加下标I以表示在针对先前所描述的符号及运算的整数算术之后的结果。符号“<<”及“>>”分别指代向左移位操作及向右移位操作。又,在此实例中,假定原始像素的值的范围为[0,255]。在此实例中,可以32位精度执行整数算术。可使中间内插值维持在高精度,直到最后步骤为止,其中在最后步骤中可执行舍入、向右移位及截取。因此,基本概念为:无论何时应用滤波,均可将舍入、向右移位及截取延迟到平均化步骤(当对多个经滤波的像素求平均值时)之后,而非立即进行这些操作。
对于步骤1-1,没有必要进行改变。对于步骤1-2,视频编码器20可计算出Q=(QI+16)>>5。对于步骤1-3,视频编码器20可计算出Q=(QI+16)>>5。对于步骤1-4,视频编码器20可计算出Q=(QI+512)>>10。对于步骤2-1:如果my=0,则视频编码器20可计算出Q1I=P<<5;如果mx0=0,则Q2I=(Q21<<5);如果mx1=0,则Q3I=(Q31<<5)。又,对于步骤2-1,视频编码器20可最终将Q计算为最小值255及最大值(0,(Q2I+Q3I+1024)>>11)。对于步骤2-2:如果mx=0,则视频编码器20可计算出Q1I=P<<5;如果my0=0,则Q2I=(Q21<<5);如果my1=0,则Q3I=(Q31<<5)。又,对于步骤2-2,视频编码器20可最终将Q计算为最小值255及最大值(0,(Q2I+Q3I+1024)>>11)。
对于步骤2-3,Q1I、Q2I、Q3I及Q4I分别对应于(mx0,my0)及(mx1,my1)或(mx0,my1)及(mx1,my0)。可以与步骤1类似的方式计算这些值,只是不需应用最后的舍入、向右移位及截取步骤。接着,对于使用步骤1-1计算出的值,可将中间内插值向左移位10。对于使用步骤1-2及1-3计算出的值,可将中间内插值向左移位5。最后,视频编码器20可将Q计算为最小值255及最大值(0,(Q1I+Q2I+Q3I+Q4I+2048)>>12)。
在计算参考色度块的每一参考像素的值之后,视频编码器20可计算待编码的色度块的残余。举例来说,视频编码器20可计算待编码的色度块与经内插的参考块之间的差值。视频编码器20可使用各种差计算技术,例如,绝对差和(SAD)、平方差和(SSD)、平均绝对差(MAD)、均方差(MSD)或其它差计算技术。
在进行帧内预测性或帧间预测性译码以产生预测性数据及残余数据之后,且在进行任何变换(例如,在H.264/AVC中使用的4×4或8×8整数变换,或离散余弦变换DCT)以产生变换系数之后,可执行变换系数的量化。量化通常指代将变换系数量化以便可能减小用以表示所述系数的数据量的过程。量化过程可减小与所述系数中的一些或全部相关联的位深度。举例来说,在量化期间可将n位值下舍入到m位值,其中n大于m。
在量化之后,可(例如)根据内容适应性可变长度译码(CAVLC)、上下文适应性二进制算术译码(CABAC)或另一熵译码方法来执行经量化的数据的熵译码。经配置以用于熵译码的处理单元或另一处理单元可执行其它处理功能,例如,对经量化的系数进行零延伸长度译码及/或产生语法信息(例如,经译码块模式(CBP)值、宏块类型、译码模式、经译码单元(例如,帧、片段、宏块或序列)的最大宏块大小,或其类似者)。
视频解码器30可配置成以与视频编码器20类似的方式内插八分之一像素精度的色度运动向量的值。在内插参考色度块的值之后,视频解码器30可将所接收的残余值加到所述参考色度块以对色度进行解码。
视频编码器20及视频解码器30各自可在适用时实施为多种合适编码器或解码器电路中的任一者,例如,一个或一个以上微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑电路、软件、硬件、固件或其任何组合。视频编码器20及视频解码器30中的每一者可包括于一个或一个以上编码器或解码器中,其中任一者可集成为组合式视频编码器/解码器(编解码器)的部分。包括视频编码器20及/或视频解码器30的设备可包含集成电路、微处理器及/或无线通信装置(例如,蜂窝式电话)。
图2为说明可实施用于选择内插滤波器的技术的视频编码器20的一实例的框图。视频编码器20可执行视频帧内的块(包括宏块或者宏块的分割区或子分割区)的帧内及帧间译码。帧内译码依赖于空间预测以减少或移除给定视频帧内的视频的空间冗余。帧间译码依赖于时间预测以减少或移除视频序列的邻近帧内的视频的时间冗余。帧内模式(I模式)可指代若干基于空间的压缩模式中的任一者,且例如单向预测(P模式)或双向预测(B模式)等帧间模式可指代若干基于时间的压缩模式中的任一者。虽然在图2中描绘用于帧间模式编码的组件,但应理解,视频编码器20可进一步包括用于帧内模式编码的组件。然而,为简短及清晰起见,未说明这些组件。
如图2中所示,视频编码器20接收待编码的视频帧内的当前视频块。在图2的实例中,视频编码器20包括运动补偿单元44、运动估计单元42、参考帧存储装置64、求和器50、变换单元52、量化单元54,及熵译码单元56。为进行视频块重建构,视频编码器20还包括逆量化单元58、逆变换单元60,及求和器62。也可包括解块滤波器(图2中未展示)以对块边界进行滤波以从重建构的视频移除方块效应假影。必要时,解块滤波器将通常对求和器62的输出进行滤波。
在编码过程期间,视频编码器20接收待译码的视频帧或片段。可将帧或片段划分成多个视频块。运动估计单元42及运动补偿单元44执行所接收的视频块相对于一个或一个以上参考帧中的一个或一个以上块的帧间预测性译码,以提供时间压缩。帧内预测单元也可执行所接收的视频块相对于与待译码的块处于同一帧或片段中的一个或一个以上相邻块的帧内预测性译码,以提供空间压缩。
模式选择单元40可(例如)基于误差结果而选择帧内或帧间译码模式中的一者,且将所得的经帧内或帧间译码的块提供到求和器50以产生残余块数据且提供到求和器62以重建构经编码的块以用作参考帧。
运动估计单元42及运动补偿单元44可经高度集成,但出于概念性目的对其分别加以说明。运动估计是产生运动向量的过程,所述运动向量估计视频块的运动。举例来说,运动向量可指示预测性参考帧(或其它经译码的单元)内的预测性块相对于当前帧(或其它经译码的单元)内的正被译码的当前块的移位。预测性块是被发现与待译码的块在像素差方面紧密匹配的块,可通过绝对差和(SAD)、平方差和(SSD)或其它不同量度来确定所述像素差。运动向量也可指示宏块的分割区的移位。运动补偿可涉及基于通过运动估计所确定的运动向量而提取或产生预测性块。同样,在一些实例中,运动估计单元42及运动补偿单元44可在功能上集成。
运动估计单元42通过比较经帧间译码帧的视频块与参考帧存储装置64中的参考帧的视频块而计算所述视频块的运动向量。参考帧存储装置64可包含可实施于存储器(例如,随机存取存储器(RAM))中的参考帧缓冲器。运动补偿单元44也可内插参考帧(例如,I帧或P帧)的子整数像素。ITU H.264标准将参考帧称作“列表”。因此,存储于参考帧存储装置64中的数据也可被视为列表。运动估计单元42比较来自参考帧存储装置64的一个或一个以上参考帧(或列表)的块与当前帧(例如,P帧或B帧)的待编码块。当参考帧存储装置64中的参考帧包括子整数像素的值时,由运动估计单元42计算出的运动向量可指代参考帧的子整数像素位置。运动估计单元42将计算出的运动向量发送到熵译码单元56及运动补偿单元44。由运动向量识别的参考帧块可被称作预测性块。运动补偿单元44计算参考帧的预测性块的误差值。
运动补偿单元44可基于预测性块来计算预测数据。举例来说,运动补偿单元44可计算宏块的照度块与色度块两者的预测数据。运动补偿单元44可经配置以执行本发明的技术来计算用以形成色度预测块的参考块的子整数像素位置的值。视频编码器20通过从正被译码的原始视频块中减去来自运动补偿单元44的预测数据而形成残余视频块。求和器50表示执行此减法运算的一个或多个组件。变换单元52将变换(例如,离散余弦变换(DCT)或概念上类似的变换)应用于残余块,从而产生包含残余变换系数值的视频块。
变换单元52可执行概念上类似于DCT的其它变换,例如,由H.264标准定义的变换。也可使用小波变换、整数变换、子频带变换或其它类型的变换。在任何状况下,变换单元52将变换应用于残余块,从而产生残余变换系数的块。所述变换可将残余信息从像素值域转换到变换域(例如,频域)。量化单元54量化所述残余变换系数以进一步减小位速率。量化过程可减小与所述系数中的一些或全部相关联的位深度。可通过调整量化参数而修改量化程度。
在量化之后,熵译码单元56对经量化的变换系数进行熵编码。举例来说,熵译码单元56可执行内容适应性可变长度译码(CAVLC)、上下文适应性二进制算术译码(CABAC)或另一熵译码技术。在由熵译码单元56进行的熵译码之后,可将经编码的视频传输到另一装置或将其归档以供稍后传输或检索。在上下文适应性二进制算术译码的状况下,上下文可基于相邻宏块。
在一些状况下,视频编码器20的熵译码单元56或另一单元可配置成除了熵译码外还执行其它译码功能。举例来说,熵译码单元56可经配置以确定宏块及分割区的CBP值。又,在一些状况下,熵译码单元56可执行宏块或其分割区中的系数的延伸长度译码。特定来说,熵译码单元56可应用Z字型(zig-zag)扫描或其它扫描模式以扫描宏块或分割区中的变换系数,且编码若干串零以进行进一步压缩。熵译码单元56也可建构具有适当语法元素的标头信息以在经编码的视频位流中传输。
逆量化单元58及逆变换单元60分别应用逆量化及逆变换以在像素域中重建构残余块(例如)以便稍后用作参考块。运动补偿单元44可通过将残余块加到参考帧存储装置64的帧中的一者的预测性块来计算参考块。运动补偿单元44也可将一个或一个以上内插滤波器应用于经重建构的残余块以计算供运动估计中使用的子整数像素值。求和器62将经重建构的残余块加到由运动补偿单元44产生的经运动补偿的预测块以产生经重建构的视频块以便存储于参考帧存储装置64中。经重建构的视频块可由运动估计单元42及运动补偿单元44用作参考块来对后续视频帧中的块进行帧间译码。
图3为说明对经编码的视频序列进行解码的视频解码器30的一实例的框图。在图3的实例中,视频解码器30包括熵解码单元70、运动补偿单元72、帧内预测单元74、逆量化单元76、逆变换单元78、参考帧存储装置82及求和器80。在一些实例中,视频解码器30可执行与关于视频编码器20(图2)所描述的编码遍次大体上互逆的解码遍次。运动补偿单元72可基于从熵解码单元70所接收的运动向量而产生预测数据。
运动补偿单元72可使用在位流中所接收的运动向量来识别参考帧存储装置82中的参考帧中的预测块。运动补偿单元72也可经配置以执行本发明的技术来计算用以形成色度预测块的参考块的子整数像素位置的值。帧内预测单元74可使用在位流中所接收的帧内预测模式以从空间上邻近的块形成预测块。逆量化单元76逆量化(即,解量化(de-quantize))在位流中所提供且由熵解码单元70解码的经量化的块系数。逆量化过程可包括(例如)如H.264解码标准所定义的常规过程。逆量化过程也可包括使用由编码器50针对每一宏块计算出的量化参数QPY来确定量化程度,及(同样地)应被应用的逆量化的程度。
逆变换单元58将逆变换(例如,逆DCT、逆整数变换或概念上类似的逆变换过程)应用于变换系数以便在像素域中产生残余块。运动补偿单元72产生经运动补偿的块,可能基于内插滤波器而执行内插。将被用于具有子像素精度的运动估计的内插滤波器的识别符可包括于语法元素中。运动补偿单元72可使用如视频编码器20在视频块的编码期间所使用的内插滤波器来计算参考块的子整数像素的内插值。运动补偿单元72可根据所接收的语法信息确定视频编码器20所使用的内插滤波器,且使用所述内插滤波器来产生预测性块。
运动补偿单元72使用语法信息中的一些来确定以下各者:用以对经编码的视频序列的帧进行编码的宏块的大小、描述经编码的视频序列的帧的每一宏块如何被分割的分割信息、指示每一分割区如何被编码的模式、每一经帧间编码的宏块或分割区的一个或一个以上参考帧(或列表),及用以对经编码的视频序列进行解码的其它信息。
求和器80对残余块与由运动补偿单元72或帧内预测单元产生的对应预测块求和以形成经解码的块。必要时,也可应用解块滤波器来对经解码的块进行滤波以便移除方块效应假影。接着将经解码的视频块存储于参考帧存储装置82中,参考帧存储装置82提供用于后续运动补偿的参考块且还产生经解码的视频以用于在显示装置(例如,图1的显示装置32)上呈现。
图4为说明针对全像素位置的分数像素位置的概念图。特定来说,图4说明针对全像素(像素)100的分数像素位置。全像素100对应于半像素位置102A到102C(半像素102)、四分之一像素位置104A到104L(四分之一像素104)及八分之一像素位置106A到106AV(八分之一像素106)。指向这些位置中的一者的运动向量可具有水平分量与垂直分量,所述水平分量与垂直分量具有对应于全像素100的位置的全部分及具有八分之一像素精度的分数部分。
全像素位置处的像素100的值可包括于对应参考帧中。即,全像素位置处的像素100的值通常对应于参考帧中的像素的实际值,例如,在显示所述参考帧时最终所呈现并显示的值。可根据本发明的技术来内插半像素位置102、四分之一像素位置104及八分之一像素位置106(统称为分数像素位置)的值。
特定来说,可使用水平分量的分数部分及垂直分量的分数部分来定义分数位置。假设水平分数部分对应于mx,mx可选自{0,1/8,2/8,3/8,4/8,5/8,6/8,7/8}。假设垂直分数部分对应于my,my可选自{0,1/8,2/8,3/8,4/8,5/8,6/8,7/8}。滤波器F1可为与2/8(1/4)分数部分相关联的内插滤波器。滤波器F2可为与4/8(1/2)分数部分相关联的内插滤波器。滤波器F3可为与6/8(3/4)分数部分相关联的内插滤波器。针对水平分量与垂直分量两者,F1、F2及F3可基本上相同,只是针对水平分量的滤波器的参考像素行可正交于针对垂直分量的滤波器的参考像素行。
以下的表1概述用于基于具有八分之一像素精度的运动向量的一分量的分数部分来计算所述分量的贡献的技术。以下的表N涉及“相邻像素”,所述相邻像素是根据所述分量是水平分量还是垂直分量来定义。如果所述分量为水平分量,则相邻像素指代全像素100的右侧相邻像素。如果所述分量为垂直分量,则相邻像素指代全像素100的下方相邻像素。
表1
  分数部分   值
  0   全像素值(FPV)
  1/8   (FPV+F1)/2
  2/8   F1
  3/8   (F1+F2)/2
  4/8   F2
  5/8   (F2+F3)/2
  6/8   F3
  7/8   (F3+相邻像素的FPV)/2
以此方式,当运动向量的一分量指代可由具有照度运动向量的精度的运动向量来表达的分数像素位置时,视频编码器20可选择与所述分数像素位置相关联的内插滤波器来内插所述分量的贡献。相反,当所述分量指代不可由具有照度运动向量的精度的运动向量来表达但可由具有色度运动向量的精度的运动向量来表达的分数像素位置时,视频编码器20可选择针对紧邻的分数像素位置的一个或一个以上内插滤波器。
图5A到5C为说明对应的色度像素位置及照度像素位置的概念图。图5A到5C还说明如何可将照度运动向量再用于色度块。作为初步事项,图5A到5C说明像素位置的一个部分行。应理解,实际上,全像素位置可具有相关联的分数像素位置的矩形栅格。图5A到5C的实例既定说明本发明中所描述的概念,且并不既定作为分数色度像素位置与分数照度像素位置之间的对应的详尽列表。
图5A到5C说明照度块的像素位置,所述像素位置包括全照度像素位置110、半照度像素位置112、四分之一照度像素位置114A、114B及全照度像素位置116。全照度像素位置116可被视为全照度像素位置110的右侧相邻像素位置。
图5A到5C还说明色度块的对应像素位置,所述像素位置包括全色度像素位置120、半色度像素位置122、四分之一色度像素位置124及八分之一色度像素位置126A、126B。在此实例中,全色度像素120对应于全照度像素110。另外,在此实例中,色度块相对于照度块被下取样达二分之一。因此,半色度像素122对应于全照度像素116。类似地,四分之一色度像素124对应于半照度像素112,八分之一色度像素126A对应于四分之一照度像素114A,且八分之一色度像素126B对应于四分之一照度像素114B。
图5A说明指向全照度像素位置110的照度运动向量118A的一实例。视频译码单元(例如,视频编码器20或视频解码器30)在执行色度块的运动补偿时可再使用照度运动向量118A。相应地,归因于全色度像素120与全照度像素110之间的对应,色度运动向量128A可指向全色度像素120。色度运动向量128A所指向的像素的值可等于全色度像素120的值。因此,可将预测色度块中的每一像素设定成等于参考帧中的对应像素。
图5B说明指向半照度像素位置112的照度运动向量118B的一实例。色度运动向量128B接着指向四分之一色度像素位置124。视频译码单元可使用与四分之一色度像素位置124相关联的内插滤波器来内插四分之一色度像素位置124的值。
图5C说明指向四分之一照度像素位置114A的照度运动向量118C的一实例。而色度运动向量128C指向八分之一色度像素位置126A。视频译码单元可使用全色度像素位置120的值及与四分之一色度像素位置124相关联的内插滤波器(例如,滤波器F1)来内插四分之一色度像素位置124的值。视频译码单元可接着对全色度像素位置120的值与四分之一色度像素位置124的值求平均值以产生八分之一色度像素位置126A的值。
存在将甚至更高的精度用于照度运动向量(例如,1/8)的状况。在此状况下,可舍入(例如,截断)色度像素位置以使得其仍具有1/8像素精度。因此,即使色度运动向量与照度运动向量具有相等精度,仍可将本发明的技术应用于此色度像素位置以用于确定所述色度像素位置处的色度值。
图6为说明用于内插分数像素位置的值以对色度块进行编码的一实例方法的流程图。为说明目的,关于视频编码器20来描述图6的方法。然而,应理解,任何视频编码单元可经配置以执行与图6的方法类似的方法。
最初,视频编码器20可接收待编码的宏块(150)。在一些实例中,宏块可包括四个8×8像素照度块及两个8×8色度块。宏块可能正好有一个照度块接触到每个角,以使得四个照度块一起形成16×16照度像素块。两个色度块可彼此重叠且与四个照度块重叠。此外,色度块可相对于照度块经下取样,以使得色度块的四个角中的每一者接触到宏块的四个角中的每一者。视频编码器20可经配置以使用与关于图6所描述的技术类似的技术来对所述色度块中的任一者或两者的全部或一部分(例如,分割区)进行编码。
视频编码器20可以帧间编码模式来对宏块进行编码。因此,视频编码器20可执行关于一个或一个以上参考帧的运动搜索以确定参考帧中的与宏块类似的一块。此外,视频编码器20可执行相对于照度块中的一者的运动搜索(152)。视频编码器20可借此计算具有分数像素精度的照度运动向量。视频编码器20可经配置以在执行运动搜索时内插参考块的分数像素位置的值。视频编码器20可接着对照度块进行编码。
在对照度块进行编码之后,视频编码器20可再使用照度运动向量来确定参考帧的色度部分中的一位置,所述位置对应于所述照度运动向量所指向的位置。以此方式,视频编码器20可确定对应于照度运动向量的色度运动向量所指向的像素位置(154)。归因于色度像素相对于照度像素的下取样,色度运动向量的像素位置可具有比照度像素大的精度。举例来说,当照度运动向量具有四分之一像素精度时,色度运动向量可具有八分之一像素精度。
视频编码器20可接着使用由色度运动向量所识别的像素块来对色度块进行编码。当色度运动向量指向分数像素位置时,视频编码器20可内插参考帧中的由色度运动向量所识别的参考块的分数像素位置的值。色度运动向量的像素位置可具有一水平分量及一垂直分量,所述水平分量及所述垂直分量中的每一者可具有全部分及分数部分。视频编码器20可首先计算对参考块中的像素中的每一者的值的水平贡献(156)。
特定来说,视频编码器20可确定色度运动向量的水平分量是指向全像素位置还是分数像素位置。如果水平分量指向分数部分,则视频编码器20可基于所述分数部分而选择内插滤波器以用来内插来自所述水平分量的贡献。同样地,视频编码器20可计算垂直分量贡献(158)。视频编码器20可组合水平分量贡献与垂直分量贡献(160)。
视频编码器20可针对参考块的每一像素执行此过程。接着,视频编码器20可计算待编码的色度块的残余值(162)。即,视频编码器20可计算待编码的色度块与参考块之间的差。视频编码器20可接着编码并输出残余(164)。视频编码器20无需对色度运动向量进行编码,这是因为解码器在接收到色度块的经编码的残余块之后可再使用照度运动向量来对经编码的色度块进行解码。
图7为说明用于内插分数像素位置的值以对色度块进行解码的一实例方法的流程图。为说明目的,关于视频解码器30来描述图7的方法。然而,应理解,任何视频解码单元可经配置以执行与图7的方法类似的方法。
最初,视频解码器30可接收经编码的宏块(180)。特定来说,视频解码器30可接收已以帧间编码模式编码的宏块。因此,经编码的宏块可包括所述宏块的经编码的照度块及色度块的一个或一个以上照度运动向量及残余值。视频解码器30可首先对照度运动向量进行解码(182)。在对照度块进行解码之后,视频解码器30可对色度块进行解码。
首先,视频解码器30可识别参考帧的针对经编码的色度块的参考块。可将所述参考块识别为与针对经编码的照度块的参考块并置。即,视频解码器30可再使用照度运动向量来识别针对经编码的色度块的参考块。视频解码器30可接着根据本发明的技术来内插针对经编码的色度块的参考块的值。
视频解码器30可确定参考块中的像素的分数像素位置(184)。当色度运动向量指向分数像素位置时,视频解码器30可内插参考块的分数像素位置的值。色度运动向量的像素位置可具有一水平分量及一垂直分量,所述水平分量及所述垂直分量中的每一者可具有全部分及分数部分。视频解码器30可首先计算对参考块中的像素中的每一者的值的水平贡献(186)。
特定来说,视频解码器30可确定色度运动向量的水平分量是指向全像素位置还是分数像素位置。如果水平分量指向分数部分,则视频编码器20可基于所述分数部分而选择内插滤波器以用来内插来自所述水平分量的贡献。同样地,视频解码器30可计算垂直分量贡献(188)。视频解码器30可组合水平分量贡献与垂直分量贡献(190)。
视频解码器30可接着对色度块的残余值进行解码(192)。视频解码器30可接着组合经解码的残余值与上文计算出的参考块以对色度块进行解码(194)。以此方式,视频解码器30可使用经解码的残余值及参考块来对色度块进行解码。最终,显示装置32可呈现并显示经解码的色度块(196)。即,显示装置32(或目的地装置14的另一单元)可根据经解码的照度块确定所显示的像素的照度值且根据经解码的色度块确定所显示的像素的色彩值。显示装置32可将用照度及色度来表达的像素(YPbPr值)转换成红绿蓝(RGB)值,以便显示包括照度值及色度值的宏块。
图8及9为说明用于选择用以计算水平分量与垂直分量两者的分量贡献的内插滤波器的方法的流程图。特定来说,当色度运动向量的分量包括非零分数部分时,视频编码器、解码器、编解码器或其它视频处理单元可执行图8及9的方法以内插参考块的值。图8及9的实例是针对色度运动向量具有八分之一像素精度的情况。应理解,当运动向量具有大于八分之一像素精度的精度时,可应用类似方法来计算参考块的值。此外,关于视频编码器20来描述图8及9的实例。然而,应理解,可由视频解码器30或其它视频处理单元应用类似技术。图8及9的实例可大体上对应于图6的步骤156及158以及图7的步骤186及188。
最初,视频编码器20可确定运动向量的分量的分数部分(210)。假定在执行图6的方法时,分数部分为非零。如果实情为分数部分为零,则针对所述分量可使用全像素的值(或者,在已计算出另一分量的情况下可使用另一分量的值)。在图6的实例中,还假定在执行这些方法时,内插滤波器F1、F2及F3分别与四分之一分数像素位置、四分之二分数像素位置及四分之三分数像素位置相关联。
视频编码器20可首先确定所述分量的分数部分是否对应于三个四分之一像素位置中的一者。特定来说,视频编码器20可确定所述分量的分数部分是否对应于四分之一像素位置(212)。如果所述分量的分数部分对应于四分之一像素位置(212的“是”分支),则视频编码器20可基于通过执行滤波器F1而产生的值来确定来自所述分量的贡献(214)。另一方面,如果所述分量的分数部分不对应于四分之一像素位置(212的“否”分支),则视频编码器20可确定所述分量的分数部分是否对应于四分之二(或二分之一)像素位置(216)。如果所述分量的分数部分对应于四分之二(或二分之一)像素位置(216的“是”分支),则视频编码器20可基于通过执行滤波器F2而产生的值来确定来自所述分量的贡献(218)。另一方面,如果所述分量的分数部分不对应于四分之二(或二分之一)像素位置(216的“否”分支),则视频编码器20可确定所述分量的分数部分是否对应于四分之三像素位置(220)。如果所述分量的分数部分对应于四分之三像素位置(220的“是”分支),则视频编码器20可基于通过执行滤波器F3而产生的值来确定来自所述分量的贡献(222)。
然而,如果视频编码器20确定所述分量的分数部分不对应于三个四分之一像素位置中的一者,则视频编码器20可确定所述分量的分数部分是否对应于四个剩余的八分之一像素位置中的一者。特定来说,视频编码器20可确定所述分量的分数部分是否对应于八分之一像素位置(230)。如果所述分量的分数部分对应于八分之一像素位置(230的“是”分支),则视频编码器20可通过对全像素值与通过执行滤波器F1而产生的值求平均值而确定来自所述分量的贡献(232)。在一些实例中,视频编码器20可使用在全像素与正被评估的像素位置的交叉点处的位置的值(假定先前已计算出在交叉点处的此位置的值),而非使用全像素值。
另一方面,如果所述分量的分数部分不对应于八分之一像素位置(230的“否”分支),则视频编码器20可确定所述分量的分数部分是否对应于八分之三像素位置(234)。如果所述分量的分数部分对应于八分之三像素位置(234的“是”分支),则视频编码器20可通过对通过执行滤波器F1而产生的值与通过执行滤波器F2而产生的值求平均值而确定来自所述分量的贡献(236)。另一方面,如果分量的分数部分不对应于八分之三像素位置(234的“否”分支),则视频编码器20可确定所述分量的分数部分是否对应于八分之五像素位置(238)。如果所述分量的分数部分对应于八分之五像素位置(238的“是”分支),则视频编码器20可通过对通过执行滤波器F2而产生的值与通过执行滤波器F3而产生的值求平均值而确定来自所述分量的贡献(240)。
另一方面,如果分量的分数部分不对应于八分之五像素位置(238的“否”分支),即,当所述分量的分数部分对应于八分之七位置时,则视频编码器20可通过对通过执行滤波器F3而产生的值与下一全像素位置的值求平均值而确定来自所述分量的贡献(242)。在一些实例中,视频编码器20可使用在下一全像素与正被评估的像素位置的交叉点处的位置的值(假定先前已计算出在交叉点处的此位置的值),而非使用下一全像素的全像素值。
图10为说明用于从现有上取样滤波器产生根据本发明的技术而使用的内插滤波器的实例方法的流程图。举例来说,可使用图10的方法来设计与色度参考块的四分之一像素位置相关联的滤波器F1、F2及F3,对于所述色度参考块,色度运动向量可具有八分之一像素精度。虽然关于视频编码器20加以描述,但其它处理单元也可执行图10的方法。在视频编码器20执行此方法的一个实例中,视频编码器20可对每一滤波器的系数进行编码且将所述系数传输到视频解码器30。现有上取样滤波器在被应用于已知像素时应产生所述已知像素的值。
最初,视频编码器20可接收现有滤波器(250)。内插滤波器通常具有若干系数,所述系数也被称作“分接头(tap)”。视频编码器20可确定现有滤波器的分接头的数目(252)。可通过(2M+1)表达分接头的数目,其中所述分接头以0为中心,且M为非负整数。接着,视频编码器20可确定上取样因子(表达为N,非负整数)(254)。举例来说,为了从现有滤波器产生滤波器F1、F2及F3,上取样因子(N)为四。一般来说,上取样因子可指代:将与待产生的滤波器相关联的位置的数目加一。
视频编码器20可接着针对分数像素位置中的每一者选择现有滤波器的分接头的子集(256)。特定来说,假设i指代现有滤波器的特定系数。即,现有滤波器h包括系数M到M,以使得i具有范围[-M,M]。接着,针对分数像素位置x,如果(i+x)%N=0,则来自滤波器的i的系数包括于针对位置x的所产生的滤波器中。注意,可将模算子%定义为A%B=R,其中A与B为整数值,且R为小于B的非负整数值,以使得针对某一整数值C,A*C+R=B。因此,A%B产生的余数R值可与A%B产生的余数R值不同。
作为一实例,现有上取样滤波器h可具有23个系数(例如,M=11)且上取样因子可为4,以产生分别与四分之一像素位置、四分之二像素(或半像素)位置及四分之三像素位置相关联的三个滤波器。于是,与位置x=1(对应于四分之一像素位置)相关联的滤波器的系数的集合可包括{h[-9]、h[-5]、h[-1]、h[3]、h[7]、h[11]}。与位置x=2(对应于四分之二像素位置)相关联的滤波器的系数的集合可包括{h[-10]、h[-6]、h[-2]、h[2]、h[6]、h[10]},且与位置x=3(对应于四分之二像素位置)相关联的滤波器的系数的集合可包括{h[-11]、h[-7]、h[-3]、h[1]、h[5]、h[9]}。
在一个或一个以上实例中,所描述的功能可实施于硬件、软件、固件或其任何组合中。如果实施于软件中,则所述功能可作为一个或一个以上指令或代码而存储于计算机可读媒体上或经由计算机可读媒体而传输,且由基于硬件的处理单元执行。计算机可读媒体可包括对应于有形媒体的计算机可读存储媒体(例如,数据存储媒体)或通信媒体,通信媒体包括促进(例如)根据通信协议将计算机程序从一处传送到另一处的任何媒体。以此方式,计算机可读媒体通常可对应于(1)非暂时性有形计算机可读存储媒体或(2)例如信号或载波的通信媒体。数据存储媒体可为可由一个或一个以上计算机或一个或一个以上处理器存取以检索用于实施本发明中所描述的技术的指令、代码及/或数据结构的任何可用媒体。计算机程序产品可包括计算机可读媒体。
在一些实例中,可进一步精炼通过以上的实例方法产生的滤波器。举例来说,对于每一滤波器,可确保系数的总和为一。这可避免引入内插值的DC偏置。作为另一实例,对于原始低通滤波器h[n],可确保h[0]=1且h[N*n]=0,其中n不等于0。这可避免在滤波时影响x[n]的原始样本。
为了实施方案目的,可将滤波器系数表达为分数,其中所有系数均具有为2的幂的公分母。举例来说,公分母可为32。在执行滤波器时,可将滤波器系数乘以公分母(例如,32)且舍入成最接近的整数。可进行达±1的进一步调整以确保滤波器系数的总和为公分母(例如,32)。
应认识到,虽然关于“宏块”的编码来论述本文中所揭示的实施例,但本文中所论述的系统及方法适用于像素的任何合适分割,所述分割定义视频数据的单元。特定来说,术语“块”可指代将视频数据分割成用于处理及译码的单元的任何合适分割。
通过实例而非限制,这些计算机可读存储媒体可包含RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器,或可用以存储呈指令或数据结构的形式的所要程序代码且可由计算机存取的任何其它媒体。又,任何连接被适当地称为计算机可读媒体。举例来说,如果使用同轴电缆、光纤缆线、双绞线、数字订户线(DSL)或例如红外线、无线电及微波的无线技术而从网站、服务器或其它远程源传输指令,则同轴电缆、光纤缆线、双绞线、DSL或例如红外线、无线电及微波的无线技术包括于媒体的定义中。然而,应理解,计算机可读存储媒体及数据存储媒体不包括连接、载波、信号或其它瞬时媒体,而是改为针对非瞬时、非暂时性有形存储媒体。如本文中所使用,磁盘及光盘包括压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软性磁盘及蓝光光盘,其中磁盘通常以磁性方式再生数据,而光盘通过激光以光学方式再生数据。上述各者的组合也应包括于计算机可读媒体的范围内。
指令可由例如以下各者的一个或一个以上处理器执行:一个或一个以上数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路。相应地,如本文中所使用的术语“处理器”可指代前述结构或适于实施本文中所描述的技术的任何其它结构中的任一者。另外,在一些方面中,可将本文所描述的功能性提供于经配置以用于编码及解码的专用硬件及/或软件模块内,或并入于组合式编解码器中。也可将所述技术完全实施于一个或一个以上电路或逻辑元件中。
本发明的技术可实施于包括无线手持机、集成电路(IC)或一组IC(例如,芯片组)的广泛多种装置或设备中。本发明中描述各种组件、模块或单元以强调经配置以执行所揭示技术的装置的功能方面,但未必需要通过不同硬件单元实现。实情为,如上文所描述,各种单元可组合于编解码器硬件单元中或由交互操作的硬件单元(包括如上所述的一个或一个以上处理器)的集合结合合适的软件及/或固件来提供。
已描述各种实例。这些及其它实例在所附权利要求书的范围内。

Claims (55)

1.一种对视频数据进行译码的方法,所述方法包含:
基于视频数据的照度块的照度运动向量确定视频数据的色度块的色度运动向量,所述照度块对应于所述色度块,其中所述色度运动向量包含具有第一分数部分的水平分量及具有第二分数部分的垂直分量,其中所述照度运动向量具有第一精度,且其中所述色度运动向量具有大于或等于所述第一精度的第二精度;
基于所述水平分量的所述第一分数部分及所述垂直分量的所述第二分数部分选择内插滤波器,其中选择所述内插滤波器包含从内插滤波器集合中选择所述内插滤波器,所述内插滤波器集合中的每一内插滤波器对应于所述照度运动向量的多个可能的分数像素位置中的一者;
使用所述选定内插滤波器来内插由所述色度运动向量所识别的参考块的值;及
使用所述参考块处理所述色度块。
2.根据权利要求1所述的方法,其中所述照度运动向量具有四分之一像素精度,且其中所述色度运动向量具有八分之一像素精度。
3.根据权利要求1所述的方法,其中所述照度运动向量具有八分之一像素精度,且其中所述色度运动向量在截断十六分之一像素精度运动向量之后具有八分之一像素精度。
4.根据权利要求1所述的方法,其中选择所述内插滤波器包含:当所述第一分数部分可由具有所述第一精度的运动向量表达时,选择与对应于所述第一分数部分的分数像素位置相关联的内插滤波器。
5.根据权利要求1所述的方法,其中选择所述内插滤波器包含:当所述第一分数部分不可由具有所述第一精度的运动向量表达但可由具有所述第二精度的运动向量表达时,选择与同对应于所述第一分数部分的分数像素位置相邻的分数像素位置相关联的至少一个内插滤波器。
6.根据权利要求1所述的方法,其中选择所述内插滤波器包含:
识别由所述第一分数部分所识别的参考分数像素位置;
当第一内插滤波器与紧接在所述参考分数像素位置左侧的分数像素位置相关联时,选择所述第一内插滤波器;及
当第二内插滤波器与紧接在所述参考分数像素位置右侧的分数像素位置相关联时,选择所述第二内插滤波器。
7.根据权利要求6所述的方法,其中内插所述参考块的值包含:
当所述第一内插滤波器与紧接在所述参考分数像素位置左侧的所述分数像素位置相关联时,且当所述第二内插滤波器与紧接在所述参考分数像素位置右侧的所述分数像素位置相关联时,根据通过所述第一内插滤波器所产生的值与通过所述第二内插滤波器所产生的值来对针对所述参考分数像素位置的水平贡献值求平均值;
当所述第一内插滤波器与紧接在所述参考分数像素位置右侧的所述分数像素位置相关联时,且当紧接在所述参考分数像素位置左侧的分数像素位置与全像素位置垂直并置时,根据紧接在所述参考分数像素位置左侧的所述分数像素位置的值与通过所述第一内插滤波器所产生的值来对针对所述参考分数像素位置的所述水平贡献值求平均值;及
当所述第二内插滤波器与紧接在所述参考分数像素位置左侧的所述分数像素位置相关联时,且当紧接在所述参考分数像素位置右侧的分数像素位置与右侧相邻全像素位置垂直并置时,根据紧接在所述参考分数像素位置右侧的所述分数像素位置的值与通过所述第二内插滤波器所产生的值来对针对所述参考分数像素位置的所述水平贡献值求平均值。
8.根据权利要求7所述的方法,其进一步包含仅在对所述水平贡献值求平均值之后才执行舍入操作。
9.根据权利要求1所述的方法,其中选择所述内插滤波器包含:当所述第二分数部分可由具有所述第一精度的运动向量表达时,选择与对应于所述第二分数部分的分数像素位置相关联的内插滤波器。
10.根据权利要求1所述的方法,其中选择所述内插滤波器包含:当所述第二分数部分不可由具有所述第一精度的运动向量表达但可由具有所述第二精度的运动向量表达时,选择与同对应于所述第二分数部分的分数像素位置相邻的分数像素位置相关联的至少一个内插滤波器。
11.根据权利要求1所述的方法,其中选择所述内插滤波器包含:
识别由所述第二分数部分所识别的参考分数像素位置;
当第一内插滤波器与紧接在所述参考分数像素位置上方的分数像素位置相关联时,选择所述第一内插滤波器;及
当第二内插滤波器与紧接在所述参考分数像素位置下方的分数像素位置相关联时,选择所述第二内插滤波器。
12.根据权利要求11所述的方法,其中内插所述参考块的值包含:
当所述第一内插滤波器与紧接在所述参考分数像素位置上方的所述分数像素位置相关联时,且当所述第二内插滤波器与紧接在所述参考分数像素位置下方的所述分数像素位置相关联时,根据通过所述第一内插滤波器所产生的值与通过所述第二内插滤波器所产生的值来对针对所述参考分数像素位置的垂直贡献值求平均值;
当所述第一内插滤波器与紧接在所述参考分数像素位置下方的所述分数像素位置相关联时,且当紧接在所述参考分数像素位置上方的分数像素位置与全像素位置水平并置时,根据紧接在所述参考分数像素位置上方的所述分数像素位置的值与通过所述第一内插滤波器所产生的值来对针对所述参考分数像素位置的所述垂直贡献值求平均值;及
当所述第二内插滤波器与紧接在所述参考分数像素位置上方的所述分数像素位置相关联时,且当紧接在所述参考分数像素位置下方的分数像素位置与下方相邻全像素位置水平并置时,根据紧接在所述参考分数像素位置下方的所述分数像素位置的值与通过所述第二内插滤波器所产生的值来对针对所述参考分数像素位置的所述垂直贡献值求平均值。
13.根据权利要求12所述的方法,其进一步包含仅在对所述垂直贡献值求平均值之后才执行舍入操作。
14.根据权利要求1所述的方法,其进一步包含从现有上取样滤波器产生所述内插滤波器集合,以使得所述内插滤波器中的每一者与可由具有所述第一精度的运动向量所指代的分数像素位置相关联。
15.根据权利要求1所述的方法,
其中确定所述色度运动向量包含计算用来对包含所述色度块及所述照度块的宏块进行编码的所述照度运动向量,且
其中处理所述色度块包含:
基于所述色度块与所述参考块之间的差计算所述色度块的残余色度值;及输出所述残余色度值。
16.根据权利要求1所述的方法,
其中确定所述色度运动向量包含对包含所述色度块及所述照度块的经编码的宏块的所述照度运动向量进行解码,且
其中处理所述色度块包含:
对所述色度块的残余色度值进行解码;及
使用所述参考块及所述经解码的残余色度值来对所述色度块进行解码。
17.一种用于对视频数据进行译码的设备,所述设备包含视频译码单元,所述视频译码单元经配置以:
基于视频数据的照度块的照度运动向量确定视频数据的色度块的色度运动向量,所述照度块对应于所述色度块,其中所述色度运动向量包含具有第一分数部分的水平分量及具有第二分数部分的垂直分量,其中所述照度运动向量具有第一精度,且其中所述色度运动向量具有大于或等于所述第一精度的第二精度;
基于所述水平分量的所述第一分数部分及所述垂直分量的所述第二分数部分选择内插滤波器,其中选择所述内插滤波器包含从内插滤波器集合中选择所述内插滤波器,所述内插滤波器集合中的每一内插滤波器对应于所述照度运动向量的多个可能的分数像素位置中的一者;
使用所述选定内插滤波器来内插由所述色度运动向量所识别的参考块的值;及使用所述参考块处理所述色度块。
18.根据权利要求17所述的设备,其中所述照度运动向量具有四分之一像素精度,且其中所述色度运动向量具有八分之一像素精度。
19.根据权利要求17所述的设备,其中为了选择所述内插滤波器,所述视频译码单元经配置以:当所述第一分数部分可由具有所述第一精度的运动向量表达时,选择与对应于所述第一分数部分的分数像素位置相关联的内插滤波器。
20.根据权利要求17所述的设备,其中为了选择所述内插滤波器,所述视频译码单元经配置以:当所述第一分数部分不可由具有所述第一精度的运动向量表达但可由具有所述第二精度的运动向量表达时,选择与同对应于所述第一分数部分的分数像素位置相邻的分数像素位置相关联的至少一个内插滤波器。
21.根据权利要求17所述的设备,其中为了选择所述内插滤波器,所述视频译码单元经配置以:
识别由所述第一分数部分所识别的参考分数像素位置;
当第一内插滤波器与紧接在所述参考分数像素位置左侧的分数像素位置相关联时,选择所述第一内插滤波器;及
当第二内插滤波器与紧接在所述参考分数像素位置右侧的分数像素位置相关联时,选择所述第二内插滤波器。
22.根据权利要求21所述的设备,其中为了内插所述参考块的值,所述视频译码单元经配置以:
当所述第一内插滤波器与紧接在所述参考分数像素位置左侧的所述分数像素位置相关联时,且当所述第二内插滤波器与紧接在所述参考分数像素位置右侧的所述分数像素位置相关联时,根据通过所述第一内插滤波器所产生的值与通过所述第二内插滤波器所产生的值来对针对所述参考分数像素位置的水平贡献值求平均值;
当所述第一内插滤波器与紧接在所述参考分数像素位置右侧的所述分数像素位置相关联时,且当紧接在所述参考分数像素位置左侧的分数像素位置与全像素位置垂直并置时,根据紧接在所述参考分数像素位置左侧的所述分数像素位置的值与通过所述第一内插滤波器所产生的值来对针对所述参考分数像素位置的所述水平贡献值求平均值;及
当所述第二内插滤波器与紧接在所述参考分数像素位置左侧的所述分数像素位置相关联时,且当紧接在所述参考分数像素位置右侧的分数像素位置与右侧相邻全像素位置垂直并置时,根据紧接在所述参考分数像素位置右侧的所述分数像素位置的值与通过所述第二内插滤波器所产生的值来对针对所述参考分数像素位置的所述水平贡献值求平均值。
23.根据权利要求17所述的设备,其中为了选择所述内插滤波器,所述视频译码单元经配置以:当所述第二分数部分可由具有所述第一精度的运动向量表达时,选择与对应于所述第二分数部分的分数像素位置相关联的内插滤波器。
24.根据权利要求17所述的设备,其中为了选择所述内插滤波器,所述视频译码单元经配置以:当所述第二分数部分不可由具有所述第一精度的运动向量表达但可由具有所述第二精度的运动向量表达时,选择与同对应于所述第二分数部分的分数像素
位置相邻的分数像素位置相关联的至少一个内插滤波器。
25.根据权利要求17所述的设备,其中为了选择所述内插滤波器,所述视频译码单元经配置以:
识别由所述第二分数部分所识别的参考分数像素位置;
当第一内插滤波器与紧接在所述参考分数像素位置上方的分数像素位置相关联时,选择所述第一内插滤波器;及
当第二内插滤波器与紧接在所述参考分数像素位置下方的分数像素位置相关联时,选择所述第二内插滤波器。
26.根据权利要求25所述的设备,其中为了内插所述参考块的值,所述视频译码单元经配置以:
当所述第一内插滤波器与紧接在所述参考分数像素位置上方的所述分数像素位置相关联时,且当所述第二内插滤波器与紧接在所述参考分数像素位置下方的所述分数像素位置相关联时,根据通过所述第一内插滤波器所产生的值与通过所述第二内插滤波器所产生的值对针对所述参考分数像素位置的垂直贡献值求平均值;
当所述第一内插滤波器与紧接在所述参考分数像素位置下方的所述分数像素位置相关联时,且当紧接在所述参考分数像素位置上方的分数像素位置与全像素位置水平并置时,根据紧接在所述参考分数像素位置上方的所述分数像素位置的值与通过所述第一内插滤波器所产生的值来对针对所述参考分数像素位置的所述垂直贡献值求平均值;及
当所述第二内插滤波器与紧接在所述参考分数像素位置上方的所述分数像素位置相关联时,且当紧接在所述参考分数像素位置下方的分数像素位置与下方相邻全像素位置水平并置时,根据紧接在所述参考分数像素位置下方的所述分数像素位置的值与通过所述第二内插滤波器所产生的值来对针对所述参考分数像素位置的所述垂直贡献值求平均值。
27.根据权利要求17所述的设备,其中所述视频译码单元经配置以从现有上取样滤波器产生所述内插滤波器集合,以使得所述内插滤波器中的每一者与可由具有所述第一精度的运动向量所指代的分数像素位置相关联。
28.根据权利要求17所述的设备,其中为了处理所述色度块,所述视频译码单元经配置以:
基于所述色度块与所述参考块之间的差计算所述色度块的残余色度值;及输出所述残余色度值。
29.根据权利要求17所述的设备,其中为了处理所述色度块,所述视频译码单元经配置以:
根据所述参考块及所接收的残余色度值而重建构所述色度块。
30.一种用于对视频数据进行译码的设备,所述设备包含:
用于基于视频数据的照度块的照度运动向量确定视频数据的色度块的色度运动向量的装置,所述照度块对应于所述色度块,其中所述色度运动向量包含具有第一分数部分的水平分量及具有第二分数部分的垂直分量,其中所述照度运动向量具有第一精度,且其中所述色度运动向量具有大于或等于所述第一精度的第二精度;
用于基于所述水平分量的所述第一分数部分及所述垂直分量的所述第二分数部分选择内插滤波器的装置,其中选择所述内插滤波器包含从内插滤波器集合中选择所述内插滤波器,所述内插滤波器集合中的每一内插滤波器对应于所述照度运动向量的多个可能的分数像素位置中的一者;
用于使用所述选定内插滤波器来内插由所述色度运动向量所识别的参考块的值的装置;及
用于使用所述参考块处理所述色度块的装置。
31.根据权利要求30所述的设备,其中所述照度运动向量具有四分之一像素精度,且其中所述色度运动向量具有八分之一像素精度。
32.根据权利要求30所述的设备,其中所述用于选择所述内插滤波器的装置包含:用于当所述第一分数部分可由具有所述第一精度的运动向量表达时选择与对应于所述第一分数部分的分数像素位置相关联的内插滤波器的装置。
33.根据权利要求30所述的设备,其中所述用于选择所述内插滤波器的装置包含:用于当所述第一分数部分不可由具有所述第一精度的运动向量表达但可由具有所述第二精度的运动向量表达时选择与同对应于所述第一分数部分的分数像素位置相邻的分数像素位置相关联的至少一个内插滤波器的装置。
34.根据权利要求30所述的设备,其中所述用于选择所述内插滤波器的装置包含:
用于识别由所述第一分数部分所识别的参考分数像素位置的装置;
用于当第一内插滤波器与紧接在所述参考分数像素位置左侧的分数像素位置相关联时选择所述第一内插滤波器的装置;及
用于当第二内插滤波器与紧接在所述参考分数像素位置右侧的分数像素位置相关联时选择所述第二内插滤波器的装置。
35.根据权利要求34所述的设备,其中所述用于内插所述参考块的值的装置包含:
用于当所述第一内插滤波器与紧接在所述参考分数像素位置左侧的所述分数像素位置相关联时且当所述第二内插滤波器与紧接在所述参考分数像素位置右侧的所述分数像素位置相关联时根据通过所述第一内插滤波器所产生的值与通过所述第二内插滤波器所产生的值来对针对所述参考分数像素位置的水平贡献值求平均值的装置;
用于当所述第一内插滤波器与紧接在所述参考分数像素位置右侧的所述分数像素位置相关联时且当紧接在所述参考分数像素位置左侧的分数像素位置与全像素位置垂直并置时根据紧接在所述参考分数像素位置左侧的所述分数像素位置的值与通过所述第一内插滤波器所产生的值来对针对所述参考分数像素位置的所述水平贡献值求平均值的装置;及
用于当所述第二内插滤波器与紧接在所述参考分数像素位置左侧的所述分数像素位置相关联时且当紧接在所述参考分数像素位置右侧的分数像素位置与右侧相邻全像素位置垂直并置时,根据紧接在所述参考分数像素位置右侧的所述分数像素位置的值与通过所述第二内插滤波器所产生的值来对针对所述参考分数像素位置的所述水平贡献值求平均值的装置。
36.根据权利要求30所述的设备,其中所述用于选择所述内插滤波器的装置包含:用于当所述第二分数部分可由具有所述第一精度的运动向量表达时选择与对应于所述第二分数部分的分数像素位置相关联的内插滤波器的装置。
37.根据权利要求30所述的设备,其中所述用于选择所述内插滤波器的装置包含:用于当所述第二分数部分不可由具有所述第一精度的运动向量表达但可由具有所述第二精度的运动向量表达时选择与同对应于所述第二分数部分的分数像素位置相邻的分数像素位置相关联的至少一个内插滤波器的装置。
38.根据权利要求30所述的设备,其中所述用于选择所述内插滤波器的装置包含:
用于识别由所述第二分数部分所识别的参考分数像素位置的装置;
用于在第一内插滤波器与紧接在所述参考分数像素位置上方的分数像素位置相关联时选择所述第一内插滤波器的装置;及
用于在第二内插滤波器与紧接在所述参考分数像素位置下方的分数像素位置相关联时选择所述第二内插滤波器的装置。
39.根据权利要求38所述的设备,其中所述用于内插所述参考块的值的装置包含:
用于当所述第一内插滤波器与紧接在所述参考分数像素位置上方的所述分数像素位置相关联时且当所述第二内插滤波器与紧接在所述参考分数像素位置下方的所述分数像素位置相关联时根据通过所述第一内插滤波器所产生的值与通过所述第二内插滤波器所产生的值来对针对所述参考分数像素位置的垂直贡献值求平均值的装置;
用于当所述第一内插滤波器与紧接在所述参考分数像素位置下方的所述分数像素位置相关联时且当紧接在所述参考分数像素位置上方的分数像素位置与全像素位置水平并置时根据紧接在所述参考分数像素位置上方的所述分数像素位置的值与通过所述第一内插滤波器所产生的值来对针对所述参考分数像素位置的所述垂直贡献值求平均值的装置;及
用于当所述第二内插滤波器与紧接在所述参考分数像素位置上方的所述分数像素位置相关联时且当紧接在所述参考分数像素位置下方的分数像素位置与下方相邻全像素位置水平并置时根据紧接在所述参考分数像素位置下方的所述分数像素位置的值与通过所述第二内插滤波器所产生的值来对针对所述参考分数像素位置的所述垂直贡献值求平均值的装置。
40.根据权利要求30所述的设备,其进一步包含:用于从现有上取样滤波器产生所述内插滤波器集合以使得所述内插滤波器中的每一者与可由具有所述第一精度的运动向量所指代的分数像素位置相关联的装置。
41.根据权利要求30所述的设备,其中所述用于处理所述色度块的装置包含:
用于基于所述色度块与所述参考块之间的差计算所述色度块的残余色度值的装置;及
用于输出所述残余色度值的装置。
42.根据权利要求30所述的设备,其中所述用于处理所述色度块的装置包含:用于根据所述参考块及所接收的残余色度值而重建构所述色度块的装置。
43.一种包含计算机可读媒体的计算机程序产品,所述计算机可读媒体存储有指令,所述指令在执行时使处理器进行以下操作:
基于视频数据的照度块的照度运动向量确定视频数据的色度块的色度运动向量,所述照度块对应于所述色度块,其中所述色度运动向量包含具有第一分数部分的水平分量及具有第二分数部分的垂直分量,其中所述照度运动向量具有第一精度,且其中所述色度运动向量具有大于或等于所述第一精度的第二精度;
基于所述水平分量的所述第一分数部分及所述垂直分量的所述第二分数部分选择内插滤波器,其中选择所述内插滤波器包含从内插滤波器集合中选择所述内插滤波器,所述内插滤波器集合中的每一内插滤波器对应于所述照度运动向量的多个可能的分数像素位置中的一者;
使用所述选定内插滤波器来内插由所述色度运动向量所识别的参考块的值;及使用所述参考块处理所述色度块。
44.根据权利要求43所述的计算机程序产品,其中所述照度运动向量具有四分之一像素精度,且其中所述色度运动向量具有八分之一像素精度。
45.根据权利要求43所述的计算机程序产品,其中使所述处理器选择所述内插滤波器的所述指令包含使所述处理器进行如下操作的指令:当所述第一分数部分可由具有所述第一精度的运动向量表达时,选择与对应于所述第一分数部分的分数像素位置相关联的内插滤波器。
46.根据权利要求43所述的计算机程序产品,其中使所述处理器选择所述内插滤波器的所述指令包含使所述处理器进行如下操作的指令:当所述第一分数部分不可由具有所述第一精度的运动向量表达但可由具有所述第二精度的运动向量表达时,选择与同对应于所述第一分数部分的分数像素位置相邻的分数像素位置相关联的至少一个内插滤波器。
47.根据权利要求43所述的计算机程序产品,其中使所述处理器选择所述内插滤波器的所述指令包含使所述处理器进行以下操作的指令:
识别由所述第一分数部分所识别的参考分数像素位置;
当第一内插滤波器与紧接在所述参考分数像素位置左侧的分数像素位置相关联时,选择所述第一内插滤波器;及
当第二内插滤波器与紧接在所述参考分数像素位置右侧的分数像素位置相关联时,选择所述第二内插滤波器。
48.根据权利要求47所述的计算机程序产品,其中使所述处理器内插所述参考块的值的所述指令包含使所述处理器进行以下操作的指令:
当所述第一内插滤波器与紧接在所述参考分数像素位置左侧的所述分数像素位置相关联时,且当所述第二内插滤波器与紧接在所述参考分数像素位置右侧的所述分数像素位置相关联时,根据通过所述第一内插滤波器所产生的值与通过所述第二内插滤波器所产生的值来对针对所述参考分数像素位置的水平贡献值求平均值;
当所述第一内插滤波器与紧接在所述参考分数像素位置右侧的所述分数像素位置相关联时,且当紧接在所述参考分数像素位置左侧的分数像素位置与全像素位置垂直并置时,根据紧接在所述参考分数像素位置左侧的所述分数像素位置的值与通过所述第一内插滤波器所产生的值来对针对所述参考分数像素位置的所述水平贡献值求平均值;及
当所述第二内插滤波器与紧接在所述参考分数像素位置左侧的所述分数像素位置相关联时,且当紧接在所述参考分数像素位置右侧的分数像素位置与右侧相邻全像素位置垂直并置时,根据紧接在所述参考分数像素位置右侧的所述分数像素位置的值与通过所述第二内插滤波器所产生的值来对针对所述参考分数像素位置的所述水平贡献值求平均值。
49.根据权利要求43所述的计算机程序产品,其中使所述处理器选择所述内插滤波器的所述指令包含使所述处理器进行如下操作的指令:当所述第二分数部分可由具有所述第一精度的运动向量表达时,选择与对应于所述第二分数部分的分数像素位置相关联的内插滤波器。
50.根据权利要求43所述的计算机程序产品,其中使所述处理器选择所述内插滤波器的所述指令包含使所述处理器进行如下操作的指令:当所述第二分数部分不可由具有所述第一精度的运动向量表达但可由具有所述第二精度的运动向量表达时,选择与同对应于所述第二分数部分的分数像素位置相邻的分数像素位置相关联的至少一个内插滤波器。
51.根据权利要求43所述的计算机程序产品,其中使所述处理器选择所述内插滤波器的所述指令包含使所述处理器进行以下操作的指令:
识别由所述第二分数部分所识别的参考分数像素位置;
当第一内插滤波器与紧接在所述参考分数像素位置上方的分数像素位置相关联时,选择所述第一内插滤波器;及
当第二内插滤波器与紧接在所述参考分数像素位置下方的分数像素位置相关联时,选择所述第二内插滤波器。
52.根据权利要求51所述的计算机程序产品,其中使所述处理器内插所述参考块的值的所述指令包含使所述处理器进行以下操作的指令:
当所述第一内插滤波器与紧接在所述参考分数像素位置上方的所述分数像素位置相关联时,且当所述第二内插滤波器与紧接在所述参考分数像素位置下方的所述分数像素位置相关联时,根据通过所述第一内插滤波器所产生的值与通过所述第二内插滤波器所产生的值来对针对所述参考分数像素位置的垂直贡献值求平均值;
当所述第一内插滤波器与紧接在所述参考分数像素位置下方的所述分数像素位置相关联时,且当紧接在所述参考分数像素位置上方的分数像素位置与全像素位置水平并置时,根据紧接在所述参考分数像素位置上方的所述分数像素位置的值与通过所述第一内插滤波器所产生的值来对针对所述参考分数像素位置的所述垂直贡献值求平均值;及
当所述第二内插滤波器与紧接在所述参考分数像素位置上方的所述分数像素位置相关联时,且当紧接在所述参考分数像素位置下方的分数像素位置与下方相邻全像素位置水平并置时,根据紧接在所述参考分数像素位置下方的所述分数像素位置的值与通过所述第二内插滤波器所产生的值来对针对所述参考分数像素位置的所述垂直贡献值求平均值。
53.根据权利要求43所述的计算机程序产品,其进一步包含使所述处理器进行如下操作的指令:从现有上取样滤波器产生所述内插滤波器集合,以使得所述内插滤波器中的每一者与可由具有所述第一精度的运动向量所指代的分数像素位置相关联。
54.根据权利要求43所述的计算机程序产品,其中使所述处理器处理所述色度块的所述指令包含使所述处理器进行以下操作的指令:
基于所述色度块与所述参考块之间的差计算所述色度块的残余色度值;及输出所述残余色度值。
55.根据权利要求43所述的计算机程序产品,其中使所述处理器处理所述色度块的所述指令包含使所述处理器进行如下操作的指令:根据所述参考块及所接收的残余色度值而重建构所述色度块。
CN201180012704.5A 2010-02-18 2011-02-16 用于运动内插法的色度高精度运动滤波 Active CN102792698B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US30589110P 2010-02-18 2010-02-18
US61/305,891 2010-02-18
US13/011,634 US20110200108A1 (en) 2010-02-18 2011-01-21 Chrominance high precision motion filtering for motion interpolation
US13/011,634 2011-01-21
PCT/US2011/025122 WO2011103209A2 (en) 2010-02-18 2011-02-16 Chrominance high precision motion filtering for motion interpolation

Publications (2)

Publication Number Publication Date
CN102792698A true CN102792698A (zh) 2012-11-21
CN102792698B CN102792698B (zh) 2016-09-14

Family

ID=44369624

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180012704.5A Active CN102792698B (zh) 2010-02-18 2011-02-16 用于运动内插法的色度高精度运动滤波

Country Status (7)

Country Link
US (1) US20110200108A1 (zh)
EP (1) EP2537342A2 (zh)
JP (1) JP5646654B2 (zh)
KR (2) KR20120128691A (zh)
CN (1) CN102792698B (zh)
TW (1) TWI523494B (zh)
WO (1) WO2011103209A2 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105874797A (zh) * 2014-01-09 2016-08-17 高通股份有限公司 从预测性块的帧内预测
CN107211115A (zh) * 2015-01-15 2017-09-26 巴科股份有限公司 用于色度重构的方法和装置
CN109792524A (zh) * 2016-10-05 2019-05-21 高通股份有限公司 切换内插滤波器的系统及方法
WO2023131211A1 (en) * 2022-01-05 2023-07-13 Beijing Bytedance Network Technology Co., Ltd. Method, apparatus, and medium for video processing

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105635737B (zh) 2010-04-09 2019-03-15 Lg电子株式会社 处理视频数据的方法和装置
KR20130099242A (ko) 2011-01-07 2013-09-05 노키아 코포레이션 비디오 코딩의 움직임 예측
US20120230407A1 (en) 2011-03-11 2012-09-13 General Instrument Corporation Interpolation Filter Selection Using Prediction Index
US9264725B2 (en) 2011-06-24 2016-02-16 Google Inc. Selection of phase offsets for interpolation filters for motion compensation
US9319711B2 (en) 2011-07-01 2016-04-19 Google Technology Holdings LLC Joint sub-pixel interpolation filter for temporal prediction
US10536701B2 (en) 2011-07-01 2020-01-14 Qualcomm Incorporated Video coding using adaptive motion vector resolution
GB2501535A (en) * 2012-04-26 2013-10-30 Sony Corp Chrominance Processing in High Efficiency Video Codecs
US9307252B2 (en) * 2012-06-04 2016-04-05 City University Of Hong Kong View synthesis distortion model for multiview depth video coding
US9338452B2 (en) * 2012-07-09 2016-05-10 Qualcomm Incorporated Motion vector difference coding extension for enhancement layer
US20140078394A1 (en) * 2012-09-17 2014-03-20 General Instrument Corporation Selective use of chroma interpolation filters in luma interpolation process
US10205962B2 (en) 2013-03-15 2019-02-12 Raymond Zenkich System and method for non-uniform video coding
US20160037177A1 (en) * 2013-04-05 2016-02-04 Samsung Electronics Co., Ltd. Interlayer video encoding method and apparatus and interlayer video decoding method and apparatus for compensating luminance difference
US9774881B2 (en) 2014-01-08 2017-09-26 Microsoft Technology Licensing, Llc Representing motion vectors in an encoded bitstream
US9749642B2 (en) 2014-01-08 2017-08-29 Microsoft Technology Licensing, Llc Selection of motion vector precision
US10009622B1 (en) 2015-12-15 2018-06-26 Google Llc Video coding with degradation of residuals
KR102504876B1 (ko) * 2016-11-01 2023-02-28 삼성전자주식회사 부호화 방법 및 그 장치, 복호화 방법 및 그 장치
WO2018097590A1 (ko) * 2016-11-22 2018-05-31 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
EP3939275A4 (en) * 2019-03-11 2022-06-22 Telefonaktiebolaget Lm Ericsson (Publ) VIDEO ENCODING WITH GOP-BASED TEMPORAL FILTRATION
US11303892B2 (en) * 2020-01-23 2022-04-12 Qualcomm Incorporated Adaptive rounding for loop filters

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6529632B1 (en) * 1997-06-09 2003-03-04 Hitachi, Ltd. Image coding method
CN1456999A (zh) * 2002-04-10 2003-11-19 微软公司 色度运动矢量取整
US20070223581A1 (en) * 2004-04-21 2007-09-27 Masayasu Iguchi Motion Compensating Apparatus
CN101527847A (zh) * 2009-01-04 2009-09-09 炬力集成电路设计有限公司 运动补偿插值装置和方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6950469B2 (en) * 2001-09-17 2005-09-27 Nokia Corporation Method for sub-pixel value interpolation
US7305034B2 (en) * 2002-04-10 2007-12-04 Microsoft Corporation Rounding control for multi-stage interpolation
JP4144339B2 (ja) * 2002-11-29 2008-09-03 富士通株式会社 動画像符号化方法及び動画像複号化方法
US7391933B2 (en) * 2003-10-30 2008-06-24 Samsung Electronics Co., Ltd. Method and apparatus for image interpolation based on adaptive polyphase filters
US20050105621A1 (en) * 2003-11-04 2005-05-19 Ju Chi-Cheng Apparatus capable of performing both block-matching motion compensation and global motion compensation and method thereof
US7505636B2 (en) * 2004-03-04 2009-03-17 Broadcom Corporation System and method for two-pass interpolation for quarter-pel motion compensation
US8130827B2 (en) * 2004-08-13 2012-03-06 Samsung Electronics Co., Ltd. Method and apparatus for interpolating a reference pixel in an annular image and encoding/decoding an annular image
US7653132B2 (en) * 2004-12-21 2010-01-26 Stmicroelectronics, Inc. Method and system for fast implementation of subpixel interpolation
US8208564B2 (en) * 2005-06-24 2012-06-26 Ntt Docomo, Inc. Method and apparatus for video encoding and decoding using adaptive interpolation
CN1794821A (zh) * 2006-01-11 2006-06-28 浙江大学 可分级视频压缩中插值的方法与装置
KR101354659B1 (ko) * 2006-11-08 2014-01-28 삼성전자주식회사 멀티 코덱을 지원하는 움직임 보상 방법 및 장치
US8804831B2 (en) * 2008-04-10 2014-08-12 Qualcomm Incorporated Offsets at sub-pixel resolution

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6529632B1 (en) * 1997-06-09 2003-03-04 Hitachi, Ltd. Image coding method
CN1456999A (zh) * 2002-04-10 2003-11-19 微软公司 色度运动矢量取整
US20070223581A1 (en) * 2004-04-21 2007-09-27 Masayasu Iguchi Motion Compensating Apparatus
CN101527847A (zh) * 2009-01-04 2009-09-09 炬力集成电路设计有限公司 运动补偿插值装置和方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
A.TAMHANKAR等: "AN OVERVIEW OF H.264/MPEG-4 PART 10", 《EC-VIP-MC 2003, 4TH EURASIP CONFERENCE FOCUSED ON VIDEO/IMAGE PROCESSING AND MULTIMEDIA COMMUNICATIONS》, 5 July 2003 (2003-07-05) *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105874797A (zh) * 2014-01-09 2016-08-17 高通股份有限公司 从预测性块的帧内预测
CN105874797B (zh) * 2014-01-09 2018-12-14 高通股份有限公司 视频数据的编解码方法、装置、设备和存储媒体
CN107211115A (zh) * 2015-01-15 2017-09-26 巴科股份有限公司 用于色度重构的方法和装置
US10552876B2 (en) 2015-01-15 2020-02-04 Barco N.V. Method and apparatus for chroma reconstruction
CN109792524A (zh) * 2016-10-05 2019-05-21 高通股份有限公司 切换内插滤波器的系统及方法
CN109792524B (zh) * 2016-10-05 2023-04-04 高通股份有限公司 切换内插滤波器的系统及方法
WO2023131211A1 (en) * 2022-01-05 2023-07-13 Beijing Bytedance Network Technology Co., Ltd. Method, apparatus, and medium for video processing

Also Published As

Publication number Publication date
WO2011103209A3 (en) 2012-09-13
US20110200108A1 (en) 2011-08-18
KR20120128691A (ko) 2012-11-27
WO2011103209A2 (en) 2011-08-25
TWI523494B (zh) 2016-02-21
EP2537342A2 (en) 2012-12-26
KR20150020669A (ko) 2015-02-26
JP5646654B2 (ja) 2014-12-24
TW201204045A (en) 2012-01-16
CN102792698B (zh) 2016-09-14
JP2013520876A (ja) 2013-06-06

Similar Documents

Publication Publication Date Title
CN102792698A (zh) 用于运动内插法的色度高精度运动滤波
US20200296405A1 (en) Affine motion compensation refinement using optical flow
US11381819B2 (en) Chroma delta quantization parameter (QP) in video coding
CN105723707B (zh) 用于视频译码的色彩残差预测
CN103891293B (zh) 用于色度分量的自适应环路滤波的方法及设备
US9344722B2 (en) Scanning of prediction residuals in high efficiency video coding
US11234010B2 (en) Cross-component adaptive loop filtering for video coding
CN103404144B (zh) 视频译码中的经量化脉码调制
CN103004192B (zh) 用于视频译码中的固定点变换的可变局部位深增加的方法和装置
CN102783149B (zh) 用于视频译码的适应性运动分辨率
CN103703781B (zh) 使用自适应运动向量分辨率的视频译码
US11405619B2 (en) Geometric partition mode with simplified motion field storage and motion compensation in video coding
CN103238323A (zh) 在视频译码中基于视频块的扫描次序对块内的最后有效系数的位置进行译码
CN103597832A (zh) 用于使用相邻模式的视频译码的增强的帧内预测模式信令
CN103202016A (zh) 用于视频译码的自适应运动向量分辨率信令
US10904529B2 (en) Quantization group for video coding
CN103141100A (zh) 用于视频译码的帧内平滑滤波器
CN103238322A (zh) 在视频译码中单独地译码视频块的最后有效系数的位置
CN103190147A (zh) 用于视频译码的语法元素的联合译码
CN102763415A (zh) 起因于几何运动划分的平滑重叠区域
CN102845062A (zh) 用于几何运动分割的定点实施方案
US11310497B2 (en) Geometric partition mode with increased efficiency
US10897617B2 (en) Rounding of motion vectors for adaptive motion vector difference resolution and increased motion vector storage precision in video coding
CN104285446A (zh) 用于帧间译码或/帧内译码的候选块的可编程及可缩放搜索
CN113597761A (zh) 帧内预测方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1179083

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1179083

Country of ref document: HK