运动补偿方法

文档序号:7754005阅读:693来源:国知局
专利名称:运动补偿方法
技术领域
本发明涉及将子像素内插到参考画面和根据内插参考画面进行运动补偿的运动 补偿方法。
背景技术
运动画面广泛地使用在从视频电话和视频会议到DVD和数字电视的日益增多的 应用领域中。当发送运动画面时,必须通过有限的可用频带宽度的常规传输信道发送大量 的数据。为了通过有限的信道带宽发送数字数据,不可避免地要压缩或减小传输数据的量。为了允许在任何给定应用的不同制造商设计的系统之间能够交互操作,开发了压 缩视频数据量的视频编码标准。遵循这些标准的大多数的编码方法包括以下主要步骤(1)将每个视频帧分割成像素块,以便能够在块级别上进行视频帧的处理;(2)通过对每个块的视频数据进行变换、量化和熵编码,减小视频帧内的空间冗 余;(3)利用连续帧的块之间的时间依赖关系,以便仅发送连续帧之间的不同部分。连续帧之间的块的时间依赖关系是通过采用运动估算和补偿技术确定的。对于任 何给定块,在编码和发送帧之前进行搜索,以确定编码装置和解码装置为预测块的图像数 据而使用的运动向量。图1中示出了一种视频编码装置的示例配置。所示的用参考号900总体代表的 视频编码装置包括变换/量化单元920,用于通过将空间图像数据变换到频域并量化变换 的图像数据来输出量化变换系数QC ;熵编码单元990,用于对量化变换系数QC进行熵编码 (可变长度编码)并输出比特流BS ;和视频缓存器(未示出),用于使具有可变比特率的压 缩视频数据应用于可以具有固定比特率的传输信道。图1中所示的编码装置通过仅发送连续场或帧之间的差异而使用了 DPCM(差分脉 码调制)。减法器910通过接收被编码为输入信号IS的视频数据,并从中减去由预测信号 PS指示的在前图像而得到这些差异。在前图像是通过对在前编码图像解码而得到的。这 是通过结合在视频编码装置900中的解码装置完成的。解码装置以相反的方式执行编码 步骤。更具体地讲,解码装置包括逆量化/变换单元930,和加法器935,用于将解码差异 (差分解码信号DSS)加到在前解码的画面(预测信号PS)以产生要在解码侧获得的图像。在运动补偿DPCM中,根据对当前和在前图像之间的运动的估算,从在前帧或场的 图像数据中预测当前帧或场。这种估算的运动可以根据代表在前和当前图像之间的像素的 位移的2-维运动向量来描述。通常,运动估算是在一块接一块的基础上执行的。图2中示 出了将当前图像分割成多个块的示例。在运动估算期间,将当前帧的一个块与在前帧中的块比较,直到确定一个最佳匹配。根据比较结果,可以对当前帧估算整个块的帧间位移向量。为此目的,将运动估算单元 970与包括在解码路径中的对应运动补偿单元960 —同结合在编码装置中。图1的视频编码装置900执行如下的操作。将输入信号IS指示的给定视频图像 分割成多个小块,通常表示为“宏块(macro blocks)。例如,图2中所示的视频图像被分割 成多个宏块,每个宏块通常具有16x16像素的尺寸。当仅通过减小图像内的空间冗余来对图像的视频数据进行编码时,将产生的帧称 为I-画面。一般是通过将变换直接应用于帧的宏块而对I-画面进行编码。由于没有采用 时间信息来减小数据量,所以I-画面尺寸比较大。为了利用连续图像之间存在的时间冗余,根据运动估算和补偿来执行连续场或帧 之间的预测编码。当运动估算中一个被选择的参考帧是在前编码帧时,将这个要编码的帧 称为P-画面。在这两种情况下,选择一个在前编码帧和一个未来帧作为参考帧,把这个要 编码的帧称为B-画面。尽管是基于一个16x16宏块来说明运动补偿的,但可以使用多个不同块尺寸执行 运动估算和补偿。可以为具有4x4,4x8,8x4,8x8,8x16,16x8,或16x16像素的块确定各个运 动向量。小运动补偿块的提供改善了处理细微运动细节的能力。根据运动估算操作的结果,运动补偿操作根据确定的运动向量提供预测。然后,在 变换/量化单元920中,将包含在从预测块得到的预测错误块中的信息变换成变换系数。通 常,使用2-维DCT(离散余弦变换)。量化得到的变换系数,并最终在熵编码单元990中进 行熵编码(VLC)。解码装置接收发送的压缩视频数据的比特流BS,并根据接收的数据再现编码视频 图像的序列。解码装置的配置对应于包括在图1中所示的编码装置中的解码装置的配置。 因此,省略了对解码装置的配置的详细说明。为了改进运动补偿的精度,广泛使用参考帧的子像素精度。例如,在MPEG-2格式 中使用了 1/2子像素精度运动补偿。为了进一步提高运动向量精度和编码效率,在专利文献EP 1073276中建议使用 1/3和1/6子像素向量精度。通过在运动估算和补偿中使用内插滤波器而产生1/8子像素位移,可以进一步提 高运动向量精度和编码效率。但是,这样的子像素分辨率要求较高的计算复杂性,特别是, 需要具有高达25比特长度的计算寄存器。这种复杂实现可以基于一种两步法。在第一步中,使用8-抽头滤波器计算1/4子 像素图像。在第二步中,利用双线性滤波根据1/4子像素图像获得1/8子像素图像。产生具有1/4子像素精度的滤波操作包括水平和后续垂直滤波的步骤。水平内插 可以根据以下公式⑴至⑶执行= -3 A4+12 B4-37 C4+229 D4+71 E4_21 F4+6 G4_l H4. (1)h2 = -3 A4+12 B4_39 C4+158 D4+158 E4_39 F4+12 G4_3 H4. (2)= -1 A4+6 B4-21 C4+71 D4+229 E4_37 F4+12 G4_3 H4. (3)在以上公式中,h至h3代表1/4子像素值,AX_HX代表原始全像素像素值,即,来自 原始图像的像素。应用于上述AX_HX的系数是以执行信号处理来防止发生由上抽样造成成像的方
7式,也就是说,消除通过内插产生的不需要的高频分量的方式而设定的。图3中示出了水平滤波。根据原始像素210的像素值执行8-抽头滤波,并且计算 三个中间像素220的像素值,以获得水平方向上的1/4子像素精度。在水平滤波完成之后,对得到的垂直方向上具有全像素精度和水平方向上具有 1/4子像素精度的图像数据进行垂直滤波。为此目的,使用以下具有与上述水平滤波器的系 数对应的系数的公式⑷至(6)。Vl = -3 Di+12 D2-37 D3+229 D4+71 D「21 D6+6 D7_l D8. . . (4)v2 = -3 Di+12 D2-39 D3+158 D4+158 D5_39 D6+12 D7_3 D8. . . (5)v3 = -1 Di+6 D2-21 D3+71 D4+229 D「37 D6+12 D7_3 D8. . . (6)在以上公式中,Vl至 代表计算的垂直1/4子像素值,01,02,03,04,05,06,07和08 代表全像素分辨率像素,即,原始像素210的像素值。如同上述情况一样,应用于化的系数是以执行信号处理来防止通过上抽样发生成 像的方式,也就是说,消除通过内插产生的不需要的高频分量的方式而设置的。得到的像素值具有高达25比特的长度。为了获得落入预先定义的允许像素值范 围内的每个像素值的图像数据,如图所示地对计算结果进行下移位和舍入。下面的公式(7) 示出了像素值Vl的示例情况
‘( 256^v, = v +- 16 ...(7)
V 2 >在此,Vl代表从水平和垂直滤波得到的像素值,而v/代表下移位的像素值。将下 移位的像素值进一步限制到0至255的范围。图4中示出了垂直滤波。在垂直滤波过程中得到的像素230的像素值完成了以原 始像素d4,D5,E4和E5之间的滤波示例的为例而示出的子像素阵列。在完成了 1/4子像素图像之后,通过对1/4子像素分辨率进行双线性滤波来计算 1/8子像素帧。以这种方式,产生每个1/4分辨率像素之间的中间像素。在两个步骤中应用双线性滤波,并且在图5和图6中以示例的方式示出。从1/4 子像素分辨率开始,图5示出了水平和垂直滤波的应用。为此目的,从各个相邻像素值计算 出一个平均值,以获得1/8子像素分辨率的中间像素值。当对这个处理使用二进制表示时, 可以使用下面的公式(8)。注意公式(8)中的“>>1”代表1-比特下移位。A = (B+C+l) >> 1. . . (8)用图6中所示的对角线滤波计算要内插的其余1/8子像素值。这种方式的一个特 别的优点是,在双线性滤波中,最大可能地使来源于多个滤波的子像素值的数量最小。为此 目的,优选的是,仅把内插像素中直接从原始像素值210得到的那些像素值纳入考虑。也就 是说,那些得到的像素值是位于原始像素之间的内插像素的像素值。当附加地考虑到子像素阵列的中心像素240的时候,可以从其计算出所有的中间 像素值,也就是说,从原始像素210的像素值和从原始像素值得出的中间像素值计算出所 有中间像素值。附加1/8子像素值的计算操作分别基于1/4子像素分辨率值中的两个。在 图6中通过相应的箭头示出了中间像素值的计算所考虑的单个像素值。每个箭头示出了根 据其计算两个像素的每个中间像素值的像素的两个像素值。根据考虑用于内插的像素的距 离,使用了下面的公式(9)和(10)
D = (E+F+l) >> 1. . . (9)G = (3H+I+2) >> 1. . . (10)在上面的公式中,D和G代表图6中所示的新的中间像素值,E、F、H和I代表从 1/4分辨率图像得到的像素值。上述公式中“1”和“2”的附加值仅用于正确地舍入计算结^ o但是,在1/4子像素内插的滤波处理中,上述现有技术的运动补偿方法需要记录 25比特的长操作值。这造成这种内插方法的一个特别的不利因素,即,需要长的寄存器,从 而导致高的硬件复杂性和计算量。本发明是要克服这种缺陷。本发明的目的是要提供一种能够减小操作工作负担和 简化硬件配置的运动补偿方法。

发明内容
为了达到上述目的,本发明的运动补偿方法包括将子像素内插到参考画面中; 和根据经内插的参考画面执行运动补偿,在所述方法中,所述内插包括通过将系数与包括 在所述参考画面中的像素的像素值相乘,计算作为子像素的子像素值的基准的基准值的第 一计算步骤;和在计算其它子像素的子像素值中,不是直接使用所述基准值,而是通过舍入 第一计算步骤中计算的所述基准值获得所述子像素的子像素值的第一舍入步骤;和运动补 偿的执行包括根据具有带有对应地得到的子像素值的内插子像素的所述参考画面来执行 运动补偿。例如,在现有技术的方法中,在计算其它子像素的子像素值中,直接使用已经计算 出的子像素的基准值。但是,在本发明中,将第一计算步骤中计算出的子像素的基准值舍 入,而不是直接在计算其它子像素值的子像素值中使用。因此,即使在使用舍入的基准值计 算其它子像素的子像素值的情况下,也可以比现有方式更大地减少计算中使用的比特数。 结果是,能够减轻操作工作负担和简化硬件配置。此外,在本发明的第一方面中,在运动补偿方法中,第一计算步骤可以包括计算要 在第一方向内插的子像素的基准值,并且第一舍入步骤可以包括通过舍入第一计算步骤中 计算的基准值得出要在第一方向内插的子像素的子像素值。此时,在本发明的第二方面中, 在运动补偿方法中,内插可以进一步包括利用在第一舍入步骤中得出的子像素的子像素 值计算要在与第一方向不同的第二方向内插的子像素的基准值的第二计算步骤;和通过舍 入在第二计算步骤中计算的基准值得出要在第二方向内插的子像素的子像素值的第二舍 入步骤。以这种方式,在计算要在第一方向和第二方向内插的子像素的子像素值的过程 中,可以将计算中使用的比特数从,例如,现有方法中需要的25比特减少到16比特。此外,在本发明的第四方面中,在运动补偿方法中,第一计算步骤可以包括当把 第一方向上排列的像素的八个像素值分别表示为A,B, C,D,E,F,G和H,并且三个四分之一 子像素值分别表示为h2和h3时,利用下面的公式计算三个四分之一子像素的基准值= -1 A+3 B-10 C+59 D+18 E-6 F+1 G-0 H ;h2 = -1 A+4 B-10 C+39 D+39 E-10 F+4 G_1 H ;禾口h3 = -0 A+l B-6 C+18 D+59 E-10 F+3 G_1 H。
9
在这里,在本发明的第五方面中,在运动补偿方法中,第二计算步骤可以包括当 第二方向中排列的像素的八个像素值分别表示为Dp D2,D3,D4,D5,D6,D7和D8,并且三个四 分之一子像素值分别表示为Vl,v2和v3时,利用下面的公式计算三个四分之一子像素的基 准值Vl = -3 Di+12 D2-37 D3+229 D4+71 D「21 D6+6 D7_l D8 ;v2 = -3 Di+12 D2-39 D3+158 D4+158 D「39 D6+12 D7_3 D8 ;禾口v3 = -1 Di+6 D2-21 D3+71 D4+229 D「37 D6+12 D7_3 D8。以这种方式,计算子像素的子像素值中使用的系数小于现有技术中使用的系数。 这使得能够进一步减少计算子像素值中使用的比特数。此外,在本发明的第四方面中,所述运动补偿方法可以进一步包括,通过对具有带 有对应得出的子像素值的内插子像素的参考画面施加双线性滤波而提高子像素精度的双 线性滤波。以这种方式,子像素精度的提高使得能够在画面编码处理和画面解码处理过程中 防止画面质量降低。应当指出,本发明可以作为一种运动补偿方法、一种运动估算方法、一种利用运动 补偿方法的运动画面编码方法和运动画面解码方法、使计算机执行各个方法的这些步骤的 程序、存储程序的记录介质、和执行根据这些方法的操作的装置来实现。有关本申请的技术背景的进一步的信息2004年7月13日提交的EP申请No. 04016437. 8中披露的,包括说明书、附图和权 利要求在内的全部内容,结合在此作为参考。


从以下结合示出了本发明的一种特定的实施方式的附图的说明中,可以清楚地了 解本发明的这些和其它目的、优点和特征。在附图中图1是显示运动画面编码装置的结构的方框图;图2是如何将视频图像分割成块的说明图;图3是计算水平方向上1/4子像素精度的水平滤波的说明图;图4是计算垂直方向上1/4子像素精度的垂直滤波的说明图;图5是计算1/8子像素精度的水平和垂直滤波的说明图;图6是计算1/8子像素精度的对角线方向上的双线性滤波的说明图;图7是显示本发明实施方式中的运动画面编码装置的配置的方框图;图8是显示实施方式中由运动画面编码装置执行的运动补偿操作的流程图;图9是说明本发明中第一图像编码结果与利用现有技术的方法得到的另一个图 像的编码结果之间的差别的比较曲线图;图10是说明本发明中第二图像的编码结果与利用现有技术的方法得到的另一个 图像的编码结果之间的差别的比较曲线图;图11是显示本发明实施方式中运动画面解码装置的结构的方框图;和图12是有关实施方式的变化的内插方法的说明图。
具体实施例方式以下参考

本发明实施方式中的运动画面编码装置和运动画面解码装置。在视频编码中,通过在预测编码中应用运动估算和运动补偿来提高编码效率。通 过减小编码的图像数据与预测图像数据之间存在的差异,可以改善运动估算和运动补偿。 特别是,1/8子像素运动向量精度可以进一步提高编码效率。本发明改进了运动估算和补偿,而不需要相应地增加硬件的复杂性和计算量。这 是由于本发明允许仅把中间计算结果的16-比特精度用于此目的。图7是显示本实施方式中运动画面编码装置的配置的方框图。这个运动画面编码装置100包括减法器110 ;变换/量化单元120 ;逆量化/逆 变换单元130 ;加法器135 ;解块滤波器137 ;存储器140 ; 16-比特操作内插滤波器150 ;运 动补偿/预测单元160 ;运动估算单元170 ;和熵编码单元190。减法器110从指示运动画面的输入信号IS中减去预测信号PS,并把差值输出到变 换/量化单元120。变换/量化单元120获得来自减法器110的差值,并且利用差值执行频率变换(例 如,DCT变换)和量化的编码处理。此后,变换/量化单元120将作为处理结果的量化变换 系数QC输出到熵编码单元190和逆量化/逆变换单元130。逆量化/逆变换单元130利用从变换/量化单元120输出的量化变换系数QC执 行逆量化和逆DCT变换的解码处理。此后,逆量化/逆变换单元130将作为处理结果的差 分解码信号DDS输出到加法器135。加法器135将差分解码信号DDS加到从运动补偿预测单元160得到的预测信号 PS,并将作为结果得到的画面输出到解块滤波器137。解块滤波器137去除从加法器135输出的画面中的块失真,并将没有块失真的画 面作为参考画面存储在存储器140中。16-比特操作内插滤波器150从存储器140提取参考画面,并对参考画面的1/8进 行子像素内插。运动估算单元170根据输入信号IS指示的画面和对其利用16-比特操作内插滤 波器150执行了 1/8子像素内插的参考画面来估算运动向量。此后,运动估算单元170将 指示检测的运动向量的运动数据MD输出到运动补偿/预测单元160和熵编码单元190。运动补偿/预测单元160根据运动数据MD指示的运动向量和利用16-比特操作 内插滤波器150对其进行了 1/8子像素内插的参考画面来执行运动补偿。以这种方式,运 动补偿/预测单元160预测输入信号IS指示的当前画面,并将指示预测画面的预测信号PS 输出到减法器110。熵编码单元190对变换/量化单元120输出的量化变换系数QC和运动估算单元 170输出的运动数据MD进行熵编码,并输出结果作为比特流BS。在像这样的实施方式中,运动画面编码装置100具有包括16-比特操作内插滤波 器150的特征。换句话说,本实施方式中的运动补偿方法具有通过这个16-比特操作内插 滤波器,利用1/8子像素内插执行运动补偿的特征。应当注意,在本实施方式的运动画面编码装置100中,除了 16-比特操作内插滤波 器150之外的各个功能单元与包括在上述现有运动画面编码装置中的相应功能单元具有相同的功能。16-比特操作内插滤波器150利用除了现有技术的方法之外的方法来计算1/4子 像素值,然后,如同现有技术方法中的情况一样,利用1/4子像素值计算1/8子像素值。以 下详细说明这种16-比特操作内插滤波器150如何计算1/4子像素值的方法。利用一种两步过程来获得1/8像素精度。在包括两个内插步骤的第一阶段中,依 次使用水平和垂直滤波。为了在水平方向上内插1/4子像素值,采用了下面的公式(11)至 (13)= -1 Ah+3 Bh-10 Ch+59 Dh+18 Eh_6 Fh+1 Gh_0 Hh. (11)h2 = -1 Ah+4 Bh-10 Ch+39 Dh+39 Eh_10 Fh+4 Gh_l Hh. (12)h3 = -0 Ah+1 Bh-6 Ch+18 Dh+59 Eh_10 Fh+3 Gh_l Hh. (13)在上面的公式中,h至h3代表要内插的1/4子像素值,AX_HX代表原始全像素像素 值。在这里,在本实施方式中,适当地设置AX_HX的相应系数,以便消除像现有技术方 法中那样通过内插产生的不需要的高频分量。更具体地讲,在编码和解码处理中画面质量 不会降低的条件下,将系数设置到小于现有技术中的系数。也就是说,本实施方式中的相应 系数被设置为成比例地小于现有技术的公式(1)至(3)的相应系数。在完成水平滤波之后,通过下移位舍入计算的值。例如,利用下面的公式(14)舍 入、的中间值。h、= (/z, + — 6 ...(14)
V 二 J在这里,、代表从水平滤波得到的内插像素值,和h/代表对应的下移位像素值。 对从水平滤波产生的所有内插像素值应用对应的处理。应该指出公式(14)中的“>>6” 代表6-比特下移位。在第一阶段的第二步骤中,在垂直方向上也获得水平地提高的子像素精度。为此 目的,使用一个垂直滤波。在前执行的下移位操作提供在垂直滤波步骤中没有任何中间计 算超过16-比特精度。如同下面的公式(15)至(17)中所示的那样,利用滤波系数执行垂 直滤波。其中公式(15)至(17)对应于水平滤波情况中的公式(11)至(13)。Vl = -1 DV_3+3 DV_2-10 D^+59 Dv+18 Dv+1-6 Dv+2+l Dv+3_0 Dv+4. (15)v2 = -1 Dv_3+4 Dv_2-10 D^+39 Dv+39 Dv+1-10 Dv+2+4 Dv+3_1 Dv+4. (16)v3 = -0 Dv_3+1 Dv_2-6 D^+18 Dv+59 Dv+1_10 Dv+2+3 Dv+3_1 Dv+4. (17)在这里,Vl至v3代表垂直方向上的1/4子像素值,Dv_3,Dv_2,,Dv,Dv+1,Dv+2,Dv+3和 Dv+4代表垂直方向上的全像素像素。也就是说,全像素像素是来自图3的像素210和220。在这里,如同上面Ax-Hx的对应系数的情况一样,本实施方式中Dx (Dv_3至Dv+4)的相 应系数被设置为成比例地小于现有技术的公式(4)至(6)中的相应系数。利用下面的仅作为Vl的示例情况示出的公式(18),对来自垂直滤波的计算结果, 即,像素值230,进行下移位v, =〔、+*)>>6...(18)在下移位操作过程中,通过将值26/2 = 64/2加到内插像素值完成舍入。
12
尽管在上面的说明中,连同对应的下移位操作一起,首先使用了水平滤波,其次使 用了垂直滤波,但是本领域的技术人员应当知道,水平和垂直操作可以互换并取得相同的 结果。因此,可以在水平滤波之前执行垂直滤波。限制(clip)最终得到的具有1/4子像素精度的子像素值,以便落入到0与255之 间的范围内。如同结合图5和图6说明的那样,使得到的1/4子像素值经受双线性滤波,以便获 得1/8子像素分辨率。下面的实施例示出了本发明的处理不需要任何超过16-比特精度的中间像素值 的寄存器。假设像素值落入0与255之间的范围,当把下面的公式(19)用于计算中间像素值 h2时,水平8-抽头滤波过程中产生最大可能值h2 = -1. 0+4 255+(-10) 0+39 255+39 255+(-10) 0+4 255-1 0. . . (19)h2 = 21930 <32768 = 215 => \5bit + \bit{sign)...(20)以这种方法,本实施方式可以消除在1/4子像素值的计算处理中对执行超过16比 特的计算的需要。如下面公式(21)所示,将产生的像素值下移位
f似、21930 +二 >>6 = 343...(21) V 2)将下移位操作的结果限制到0至255的范围。如上所示,在滤波操作过程中所需要的最大可能值的像素精度不超过16-比特。 尽管上述操作实施例是仅对水平方向计算的,但是对应的系数也用于垂直滤波,因此,垂直 滤波也有相同的优点。上述实施例仅涉及1/4子像素分辨率计算。产生1/8子像素分辨率的双线性滤波 仅需要10-比特的最大精度。因此,16-比特的最大精度足以用来执行本发明的所有计算。 因此,可以用简单的方式改善数据运动画面的运动估算,运动补偿,和编码和解码。图8是显示本实施方式中运动画面编码装置100执行的运动补偿操作的流程图。首先,运动画面编码装置100的16-比特操作内插滤波器150计算从存储器140 提取的参考画面的水平方向的1/4子像素值(作为子像素值的基准的基准值)(S100)。然 后,16-比特操作内插滤波器150对步骤100中得到的像素值进行下移位,并且舍入所述像 素值(步骤102)。接下来,16-比特操作内插滤波器150使用步骤102中舍入的像素值计算垂直方向 的1/4子像素值(步骤104)。然后,16-比特操作内插滤波器150对步骤104中得到的像 素值进行下移位,并舍入所述像素值(步骤106)。通过步骤100到步骤106的操作,将参考画面的1/4子像素内插到水平方向和垂
直方向。当内插1/4子像素时,16-比特操作内插滤波器150如同现有技术的情况一样,利 用内插1/4子像素通过执行双线性滤波来计算1/8子像素,也就是说,16-比特操作内插滤 波器150将参考画面的像素精度从1/4子像素精度提高到1/8子像素精度(步骤108)。通过16-比特操作内插滤波器150如此执行的步骤100到步骤108,产生了带有内插1/8子像素值的参考画面。此后,运动补偿/预测单元160利用带有内插1/8子像素的参考画面执行运动补 偿,并输出指示结果的预测信号PS (步骤110)。为了演示在应用本发明时能够取得的与现有的内插操作类似的结果,将本发明的 算法提供到H.264/MPEG编码器处理软件(JM4.2)中。在图9和图10中,通过指示对于感 知的画面质量的影响的速率失真曲线,示出了计算结果。两个图的差别仅是由于使用了不 同的图像序列作为实施例。通过在X-轴上的比特率和Y-轴上代表引起失真的测量的峰值信号与噪声比 (PSNR),示出了图9和图10中的速率失真曲线。图9和图10显示了,尽管JM4. 2算法需要较长的寄存器,与现有技术的JM4. 2算 法(1/8像素25-比特)相比,1/8子像素滤波器的16-比特实现(1/8像素16-比特)没有 导致图像质量下降。此外,本发明的方法实际上比1/4子像素20-比特编码(1/4-像素20 比特)执行的更好。图11是显示本发明的实施方式中运动画面解码装置的配置的方框图。该运动画面解码装置300包括熵解码单元310 ;逆量化/逆变换单元320 ;加法 器330 ;解块滤波器340 ;存储器350,和运动补偿单元360。熵解码单元310获得从运动画面编码装置100输出的比特流BS,并对比特流进行 熵解码处理。结果是,熵解码单元310将量化变换系数QC输出到逆量化/逆变换单元320, 并将指示运动向量的运动数据MD输出到运动补偿单元360。逆量化/逆变换单元320利用量化变换系数QC执行逆量化和逆DCT变换的解码 处理。然后,逆量化/逆变换单元320将作为处理结果的差分解码信号DDS输出到加法器 330。加法器330将差分解码信号DDS加到从运动补偿单元360得到的预测信号PS,并 将产生的画面输出到解块滤波器340。解块滤波器340除去从加法器330输出的画面中的块失真,并将没有块失真的画 面存储到存储器350。从存储器350提取解码画面作为输出信号OS。运动补偿单元360包括16_比特操作内插滤波器361,用于提取存储在存储器 350中的画面作为参考画面和对参考画面执行1/8子像素内插;和运动补偿预测单元361, 用于预测当前画面。这个运动补偿预测单元361根据运动数据MD指示的运动向量和利用 16-比特操作内插滤波器361对其执行了 1/8子像素内插的参考画面来执行运动补偿。以 这种方式,运动补偿/预测单元361预测当前画面,并将指示预测画面的预测信号PS输出 到加法器330。如同运动画面编码装置100的情况一样,这种运动画面解码装置300也具有包括 16-比特操作内插滤波器361的特征。这个16-比特操作内插滤波器361与运动画面编码 装置100的16-比特操作内插滤波器150具有相同的功能。因此,利用这个运动画面解码 装置300,可以减小操作工作负担和简化硬件配置,而不用在计算像素值的过程中使用超过 16比特的像素值。总之,本发明通过仅使用一种简化的硬件配置和较小的计算量,提供了改进的运 动估算和补偿。这是通过在获得1/4子像素分辨率图像时,使用特殊的滤波器系数和附加的下移位操作而取得的。因此,可以利用更简单的硬件配置取得更有效的编码和解码。(变化)以下说明本实施方式中用于内插1/4子像素值的方法的一种变化。在上述实施方式中,用下面的方式执行两步内插在水平方向内插1/4子像素值; 然后,在垂直方向内插其它1/4子像素值。但是,在这种变化中,可以执行一个单步内插来 取代两步内插,这个单步内插可以与通过在水平方向和垂直方向的两个方向上的内插取得 相同的效果。也就是说,这种变化的16-比特操作内插滤波器150具有二维滤波器的功能。图12是有关本实施方式的改变的内插方法的说明图。在图12中,白色圆圈示出了参考画面中存在的全像素单元的像素,并且将处于 水平位置h和垂直位置ν的像素的像素值表示为Ph, v。此外,二维滤波器的抽头的数量是 36 (在水平方面和垂直方向上都是6)。在这种情况下,16-比特操作内插滤波器150利用下面的公式(22)计算要内插的 子像素的像素值Phviij (i,j = 0至3,不包括“i = 0和j = 0”)。在这里Cij (m,η)是滤波 器系数(m,η = -2至3),并且一般根据要内插的像素的位置(i,j)而改变。此后,将如此 计算的子像素值下移位。
3 权利要求
一种运动补偿方法,包括将子像素内插到参考画面中;和根据内插的参考画面执行运动补偿,其中所述内插包括第一计算步骤,通过将系数与包括在所述参考画面中的像素的像素值相乘来计算作为子像素的子像素值基准的基准值;和第一舍入步骤,在计算其它子像素的子像素值的过程中,通过舍入所述第一计算步骤中计算的所述基准值,而不是直接利用所述基准值,来得出所述子像素的所述子像素值,和所述运动补偿的执行包括根据具有带有相应得出的子像素值的所述内插子像素的参考画面来执行运动补偿。
2.根据权利要求1所述的运动补偿方法,其中所述第一计算步骤包括计算要在第一方向内插的子像素的基准值,和 所述第一舍入步骤包括通过舍入在所述第一计算步骤中计算的所述基准值来得出要 在第一方向内插的所述子像素的子像素值。
3.根据权利要求2所述的运动补偿方法, 其中所述内插进一步包括第二计算步骤,利用在所述第一舍入步骤中得出的所述子像素的所述子像素值,计算 要在与所述第一方向不同的第二方向内插的子像素的基准值;和第二舍入步骤,通过舍入在所述第二计算步骤中计算的所述基准值,得出要在所述第 二方向内插的所述子像素的所述子像素值。
4.根据权利要求3所述的运动补偿方法,其中所述第一计算步骤包括计算在所述第二方向排列的四分之一子像素的三个基准 值,和所述第二计算步骤包括计算在所述第二方向排列的四分之一子像素的三个基准值。
5.根据权利要求4所述的运动补偿方法,其中所述第一计算步骤包括,当把排列在所述第一方向的像素的八个像素值分别表示 为A,B, C,D,E,F,G和H,并且把三个四分之一子像素值分别表示为h1; h2,和h3时,利用以 下的公式计算所述三个四分之一子像素的所述基准值hi = -1 · A+3 · B-IO · C+59 · D+18 · E_6 · F+l · G-O · H ; h2 = -1 · A+4 · B-IO · C+39 · D+39 · E-IO · F+4 · G_1 · H ;禾口 h3 = -0 · A+l · B-6 · C+18 · D+59 · E-IO · F+3 · G-I · H。
6.根据权利要求5所述的运动补偿方法,其中所述第二计算步骤包括当把排列在第二方向的像素的八个像素值分别表示为D1, D2, D3, D4, D5, D6, D7和D8,并且把所述三个四分之一子像素值分别表示为V1, V2和V3时,利用 以下公式计算三个四分之一子像素的所述基准值V1 = -3 · Di+12 · D2-37 · D3+229 · D4+71 · D5_21 · D6+6 · D7-I · D8 ; v2 = -3 · Di+12 · D2-39 · D3+158 · D4+158 · D5_39 · D6+12 · D7_3 · D8 ;禾口 V3 = -1 · Di+6 · D2-21 · D3+71 · D4+229 · D5_37 · D6+12 · D7_3 · D80
7.根据权利要求6所述的运动补偿方法,其中所述第一计算步骤包括计算要在水平方向内插的所述子像素的基准值,所述水平 方向被确定为所述第一方向,和所述第二计算步骤包括计算要在垂直方向内插的所述子像素的基准值,所述垂直方向 被确定为所述第二方向。
8.根据权利要求4所述的运动补偿方法,进一步包括双线性滤波,通过对具有带有相应得出的子像素值的所述内插子像素的所述参考画面 进行双线性滤波而提高子像素精度。
9.根据权利要求8所述的运动补偿方法,其中所述双线性滤波包括将所述参考画面的所述子像素精度从四分之一子像素精度 提高到八分之一子像素精度。
10.根据权利要求1所述的运动补偿方法,其中所述第一舍入步骤包括借助下移位来舍入所述子像素的所述基准值。
11.根据权利要求1所述的运动补偿方法,其中所述第一计算步骤包括,通过将系数与包括在所述参考画面中的像素的像素值相 乘,计算应当排列在水平方向和垂直方向的子像素的基准值。
12.—种运动估算方法,包括 将子像素内插到参考画面中;和 根据内插参考画面执行运动估算, 其中所述内插包括计算步骤,通过将系数与包括在所述参考画面中的像素的像素值相乘来计算作为子像 素的子像素值基准的基准值;和舍入步骤,在计算其它子像素的子像素值的过程中,通过舍入所述计算步骤中计算的 所述基准值,而不是直接利用所述基准值,来得出所述子像素的所述子像素值,和 所述运动估算的执行包括根据具有带有相应得出的子像素值的内插子像素的所述参考画面来执行运动估算。
13.一种运动画面编码方法,包括 获得要编码的画面;将子像素内插到参考画面中; 根据内插参考画面执行运动补偿;和 根据所述参考画面对画面进行编码, 其中所述内插包括计算步骤,通过将系数与包括在所述参考画面中的像素的像素值相乘来计算作为子像 素的子像素值基准的基准值;和舍入步骤,在计算其它子像素的子像素值的过程中,通过舍入所述计算步骤中计算的 所述基准值,而不是直接利用所述基准值,来得出所述子像素的所述子像素值,和 所述运动补偿的执行包括根据具有带有相应得出的子像素值的内插子像素的所述参考画面来对所述画面执行 运动补偿,和所述编码包括对于在所述画面获得中得到的要编码的画面与已经在所述运动补偿的执行中执行了 运动补偿的所述参考画面之间的差值进行编码。
14.一种运动画面解码方法,包括获得从编码一个画面与另一个画面之间的差值而产生的差分画面;将子像素内插到参考画面中;根据内插参考画面执行运动补偿;和根据一个参考画面编码的画面进行解码,其中所述内插包括计算步骤,通过将系数与包括在所述参考画面中的像素的像素值相乘来计算作为子像 素的子像素值基准的基准值;和舍入步骤,在计算其它子像素的子像素值的过程中,通过舍入所述计算步骤中计算的 所述基准值,而不是直接利用所述基准值,来得出所述子像素的所述子像素值,和 所述运动补偿的执行包括根据具有带有相应得出的子像素值的内插子像素的所述参考画面来对所述画面执行 运动补偿,和所述解码包括对在所述差分画面获得中得到的所述差分画面进行解码,和把解码的差分画面加到已 经在所述运动补偿的执行中执行了运动补偿的参考画面。
15.一种运动补偿装置,包括内插单元,用于将子像素内插到参考画面中;和 运动补偿单元,用于根据内插参考画面执行运动补偿, 其中所述内插单元包括计算单元,通过将系数与包括在所述参考画面中的像素的像素值相乘来计算作为子像 素的子像素值基准的基准值;和舍入单元,用于在计算其它子像素的子像素值的过程中,通过舍入所述计算单元计算 的所述基准值,而不是直接利用所述基准值,来得出所述子像素的所述子像素值,和所述运动补偿单元,根据具有带有相应地得出的子像素值的内插子像素的所述参考画 面来对所述画面执行运动补偿。
16.一种运动估算装置,包括内插单元,用于将像素内插到参考画面中;和 运动估算单元,用于根据内插参考画面执行运动补偿, 其中所述内插单元包括计算单元,通过将系数与包括在所述参考画面中的像素的像素值相乘来计算作为子像 素的子像素值基准的基准值;和舍入单元,用于在计算其它子像素的子像素值的过程中,通过舍入所述计算单元计算 的所述基准值,而不是直接利用所述基准值,来得出所述子像素的所述子像素值,和所述运动估算单元,根据具有带有相应地得出的子像素值的内插子像素的所述参考画 面来执行运动补偿。
17.一种运动画面编码装置,包括画面获得单元,用于获得要编码的画面; 内插单元,用于将子像素内插到参考画面中; 运动补偿单元,根据内插参考画面来执行运动补偿;和 编码单元,用于根据参考画面来对画面进行编码, 其中所述内插单元包括计算单元,通过将系数与包括在所述参考画面中的像素的像素值相乘来计算作为子像 素的子像素值基准的基准值;和舍入单元,用于在计算其它子像素的子像素值的过程中,通过舍入所述计算单元计算 的所述基准值,而不是直接利用所述基准值,来得出所述子像素的所述子像素值,所述运动补偿单元,根据具有带有相应地得到的子像素值的内插子像素的所述参考画 面来对画面执行运动补偿,和所述编码单元,对通过所述画面单元获得得到的要编码的画面与已经由所述运动补偿 单元执行了运动补偿的所述参考画面之间的差值进行编码。
18.一种运动画面解码装置,包括差分画面获得单元,用于获得从编码一个画面与另一个画面之间的差值而产生的差分 画面;内插单元,用于把子像素内插到参考画面中; 运动补偿单元,用于根据内插参考画面执行运动补偿;和 解码单元,用于根据参考画面对编码画面进行解码, 其中所述内插单元包括计算单元,通过将系数与包括在所述参考画面中的像素的像素值相乘来计算作为子像 素的子像素值基准的基准值;和舍入单元,在计算其它子像素的子像素值的过程中,通过舍入所述计算单元计算的所 述基准值,而不是直接利用所述基准值,来得出所述子像素的所述子像素值,所述运动补偿单元,根据具有带有相应地得到的子像素值的内插子像素的所述参考画 面来对画面执行运动补偿,和所述解码单元,对所述差分画面获得单元得到差分画面进行解码,和把解码的差分画 面加到已经由所述运动补偿单元进行运动补偿的所述参考画面。
19.一种运动补偿程序,用于使计算机执行将子像素内插到参考画面中并根据内插参 考画面执行运动补偿,其中所述内插包括计算步骤,通过将系数与包括在所述参考画面中的像素的像素值相乘来计算作为子像 素的子像素值基准的基准值;和舍入步骤,在计算其它子像素的子像素值的过程中,舍入所述计算步骤中计算的所述 子像素的所述子基准值,而不是直接利用所述基准值, 和所述运动补偿的执行包括根据具有带有相应地得到的子像素值的内插子像素的所述参考画面来对画面执行运 动补偿。
全文摘要
一种能够实现减轻操作工作负担和简化硬件配置的运动补偿方法包括内插,具有(i)通过将系数与包括在参考画面中的像素的像素值相乘来计算子像素值的基准值的第一计算步骤(S100),和(ii)在计算其它子像素的子像素值的过程中,通过舍入所述计算步骤计算的基准值,而不是直接利用基准值,来得出子像素的子像素值的第一舍入步骤(S102);和具有带有得出的子像素值的内插子像素的参考画面的运动补偿(S110)。
文档编号H04N7/36GK101945290SQ20101022462
公开日2011年1月12日 申请日期2005年7月6日 优先权日2004年7月13日
发明者托马斯·威第, 斯蒂芬·威特曼, 近藤敏志 申请人:松下电器产业株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1