用于编码和解码运动矢量的方法和装置的制作方法

文档序号:7965547阅读:296来源:国知局
专利名称:用于编码和解码运动矢量的方法和装置的制作方法
技术领域
本发明涉及一种用于编码和解码运动矢量的方法和装置。尤其,本发明涉及一种用于编码和解码参考多个图像计算的运动矢量的方法和装置。
背景技术
依据MPEG-1和MPEG-2编码标准,参考前一图像的P-图像编码或参考前一和后一图像的B-图像编码适用于编码当前图像,且基于编码类型执行运动补偿。而且,为提高编码效率,采用相邻块运动矢量执行预编码以反映相邻块运动矢量之间的关系,而不是直接编码当前块本身的运动矢量。
有时,用在预编码中的相邻块运动矢量可不参考与当前块运动矢量所参考的相同图像。如果这样的话,通常排除参考与预测编码处理不同的参考图像的相邻块运动矢量,因为基于不同参考图像所获得的运动矢量用于预测编码中将会降低编码效率。然而,在排除参考与预测编码处理不同的参考图像的相邻块运动矢量情况下,不能有效反映相邻块运动矢量间的关系,而且因此,运动矢量的编码效率相应降低。在图像包括更多参考不同参考图像的块情况下,以上问题将严重得多。

发明内容
本发明提供了一种用于编码和解码运动矢量的方法和装置,其中即使当运动矢量参考不同参考图像时,也能非常有效地执行预测编码。
本发明的另一目的是提供一种用于编码和解码运动矢量的方法和装置,其中可通过参考不同参考图像调整至少一些运动矢量从而提高编码效率。
一种依据本发明用于编码运动矢量的方法,包括(a)预测与当前块类型一致的运动矢量,并在多个与当前块邻接的相邻块之中获得关于具有与当前块不同类型的运动矢量的相邻块的预测运动矢量;(b)从相邻块运动矢量和预测运动矢量中计算与当前块类型一致的运动矢量的代表值;(c)计算在所计算的代表值与当前块的运动矢量之间的差值;以及(d)编码所计算的差值。
一种依据本发明用于编码运动矢量的装置,包括运动矢量预测器,用于预测与当前块类型一致的运动矢量,并在多个与当前块邻接的相邻块之中产生关于具有与当前块不同类型的运动矢量的相邻块的预测运动矢量,且从用于相邻块运动矢量和预测运动矢量中计算与当前块类型一致的运动矢量的代表值,而且计算在所计算的代表值与当前块的运动矢量之间的差值;以及一用于编码所计算差值的运动矢量编码器。
依据本发明,当当前块的运动矢量为一前向运动矢量MVf且相邻块的运动矢量为一后向运动矢量MVb时,运动矢量预测器优选地依据以下等式计算一预测前向运动矢量MVf(预测)作为预测运动矢量 其中d1为相邻块所属当前图像与相邻块参考的前一图像之间的距离,且d2为相邻块参考的后一图像与相邻块参考的前一图像之间的距离。
依据本发明,当当前块的运动矢量为一后向运动矢量MVb且相邻块的运动矢量为一前向运动矢量MVf时,运动矢量预测器优选地依据以下等式计算一预测后向运动矢量MVb(预测)作为预测运动矢量 其中d1为相邻块所属当前图像与相邻块参考的前一图像之间的距离,且d2为相邻块参考的后一图像与相邻块参考的前一图像之间的距离。
而且,依据本发明,运动矢量预测器优选地依据以下等式计算一预测值PMV_X作为代表值PMV_X=median(MVf_A,MVf_B,MVf_C)或median(MVb_A,MVb_B,MVb_C)其中MVf_A、MVf_B、MVf_C、MVb_A、MVb_B和MVb_C为相邻块运动矢量的分量,其中MVf_A为左块的前向运动矢量,MVf_B为上块的前向运动矢量,MVf_C为上右块的前向运动矢量,MVb_A为左块的后向运动矢量,MVb_B为上块的后向运动矢量,MVb_C为上右块的后向运动矢量,以上之一为预测运动矢量。
同时,一种依据本发明用于解码运动矢量的方法,包括(a)预测与当前块类型一致的运动矢量,并在多个与当前块邻接的相邻块之中获得关于具有与当前块不同类型的运动矢量的相邻块的预测运动矢量;(b)从相邻块运动矢量和预测运动矢量中计算与当前块类型一致的运动矢量的代表值;并且(c)通过所计算的代表值加一解码差值计算当前块的运动矢量。
依据本发明,一预测前向运动矢量MVf(预测)优选地被作为预测运动矢量计算,当当前块的运动矢量为一前向运动矢量MVf且相邻块的运动矢量为一后向运动矢量MVb,依据以下等式计算 其中t1是在相邻块所属的当前图像与相邻块参考的前一图像之间的时间差,且t2是在相邻块参考的后一图像与相邻块参考的前一图像之间的时间差。
依据本发明,一预测后向运动矢量MVb(预测)优选地被作为预测运动矢量计算,当当前块的运动矢量为一后向运动矢量MVb且相邻块的运动矢量为一前向运动矢量MVf,依据以下等式计算 其中t1是在相邻块所属的当前图像与相邻块参考的前一图像之间的时间差,且t2是在相邻块参考的后一图像与相邻块参考的前一图像之间的时间差。
依据本发明,一预测前向运动矢量MVf(预测)优选地被作为预测运动矢量计算,当当前块的运动矢量为一前向运动矢量MVf且相邻块的运动矢量为一后向运动矢量MVb,依据以下等式计算 其中d1为相邻块所属当前图像与相邻块参考的前一图像之间的距离,且d2为相邻块参考的后一图像与相邻块参考的前一图像之间的距离。
依据本发明,一预测后向运动矢量MVb(预测)优选地被作为预测运动矢量计算,当当前块的运动矢量为一后向运动矢量MVb且相邻块的运动矢量为一前向运动矢量MVf,依据以下等式 其中d1为相邻块所属当前图像与相邻块参考的前一图像之间的距离,且d2为相邻块参考的后一图像与相邻块参考的前一图像之间的距离。
而且,依据本发明,解码方法的步骤(b)优选地包括计算用于依据以下等式解码为代表值的预测值PMV_X的步骤PMV_X=median(MVf_A,MVf_B,MVf_C)或median(MVb_A,MVb_B,MVb_C)其中MVf_A、MVf_B、MVf_C、MVb_A、MVb_B和MVb_C为相邻块运动矢量的分量,其中MVf_A为左块的前向运动矢量,MVf_B为上块的前向运动矢量,MVf_C为上右块的前向运动矢量,MVb_A为左块的后向运动矢量,MVb_B为上块的后向运动矢量,且MVb_C为上右块的后向运动矢量,且以上之一均为预测运动矢量。
同时,依据本发明用于解码运动矢量的装置包括一运动矢量解码器,用于解码一差值;以及一运动矢量预测补偿器,预测与当前块类型一致的运动矢量并在多个与当前块邻接的相邻块之中获得关于具有与当前块不同类型的运动矢量的相邻块的预测运动矢量,计算相邻块运动矢量和预测运动矢量中与当前块类型一致的运动矢量的代表值,并且通过所计算的代表值加一解码差值计算当前块的运动矢量。
依据本发明,运动矢量预测补偿器优选地将一预测前向运动矢量MVf(预测)作为预测运动矢量计算,当当前块的运动矢量为一前向运动矢量MVf且相邻块的运动矢量为一后向运动矢量MVb,依据以下等式 其中t1是在相邻块所属的当前图像与相邻块参考的前一图像之间的时间差,且t2是在相邻块参考的后一图像与相邻块参考的前一图像之间的时间差。
依据本发明,运动矢量预测补偿器优选地将一预测后向运动矢量MVb(预测)作为预测运动矢量计算,当当前块的运动矢量为一后向运动矢量MVb且相邻块的运动矢量为一前向运动矢量MVf,依据以下等式 其中t1是在相邻块所属的当前图像与相邻块参考的前一图像之间的时间差,且t2是在相邻块参考的后一图像与相邻块参考的前一图像之间的时间差。
依据本发明,运动矢量预测补偿器优选地将一预测前向运动矢量MVf(预测)作为预测运动矢量计算,当当前块的运动矢量为一前向运动矢量MVf且相邻块的运动矢量为一后向运动矢量MVb,依据以下等式
其中d1为相邻块所属当前图像与相邻块参考的前一图像之间的距离,且d2为相邻块参考的后一图像与相邻块参考的前一图像之间的距离。
依据本发明,运动矢量预测补偿器优选地将一预测后向运动矢量MVb(预测)作为预测运动矢量计算,当当前块的运动矢量为一后向运动矢量MVb且相邻块的运动矢量为一前向运动矢量MVf,依据以下等式 其中d1为相邻块所属当前图像与相邻块参考的前一图像之间的距离,且d2为相邻块参考的后一图像与相邻块参考的前一图像之间的距离。
而且,本发明的目的可通过记录在计算机可读信息记录介质上的执行上述编码或解码方法的程序代码来实现。


本发明的以上和其他方面以及优点在以下参照附图对优选实施例进行详述中将更为明显,其中图1是依据本发明优选实施例的运动矢量编码装置的方框图;图2是依据本发明优选实施例的包括如图1运动矢量编码装置的图像数据编码装置的方框图;图3表示输入图像数据的例子;图4是依据本发明优选实施例的运动矢量解码装置的方框图;图5是依据本发明优选实施例的包括如图4运动矢量解码装置的图像数据解码装置的方框图;图6表示依据本发明优选实施例的多参考方法;图7表示依据本发明优选实施例的构建运动补偿单元的运动补偿块;图8表示依据本发明的优选实施例用于获得预测运动矢量的方法;图9表示用于获得预测运动矢量的方法;图10表示用于获得预测运动矢量的另一方法;以及图11表示用于获得关于矩形运动补偿块的预测运动矢量的方法。
具体实施例方式
依据本发明优选实施例的用于编码运动矢量的装置如图1的框图所示。如图1,用于编码运动矢量的编码装置70包括运动矢量预测器701和运动矢量编码器702。当接收到多块的运动矢量时,运动矢量预测器701估计与当前块类型一致的运动矢量并在多个与当前块邻接的相邻块之中产生关于具有与当前块不同类型的运动矢量的相邻块的预测运动矢量,且计算相邻块运动矢量和预测运动矢量中与当前块类型一致的运动矢量的代表值,而且,然后,计算在所计算的代表值与当前块的运动矢量之间的差值。运动矢量编码器702编码运动矢量预测器701所提供的差值。在本发明的优选实施例中,运动矢量编码器702将微分值编码为差值。
图2是依据本发明优选实施例的包括如图1运动矢量编码装置的图像数据编码装置的方框图。如图2,包括多参考方法的类型的图像数据编码装置包括编码控制器100、第一源编码器200和第二源编码器700。而且,所述图像数据编码装置包括源解码器300、存储器400、运动补偿器500和运动预测器600。
如图3所示输入图像数据由照相机沿时间轴提供的多个帧组成或由将多个帧分为预定大小所获得的块组成。每帧为通过顺序扫描所获得的顺序扫描帧,或隔行扫描半帧或隔行扫描所获得的帧。因此,如下所述的图像数据表示具有顺序扫描帧、隔行扫描帧、半帧或块的格式的图像。
当输入图像时,基于依据输入图像特征或用户所想要的操作是否对输入图像执行运动补偿,编码控制器100确定编码类型,即,编码内部类型或编码之间类型, 并向第一开关S1输出相应控制信号。为了运动补偿,由于需要前一和后一输入图像,接通第一开关S1。假如不需要运动补偿,由于不需要前一和后一输入图像,断开第一开关S1。假如接通第一开关S1,在输入图像和前一图像之间的微分图像数据被提供给第一源编码器200。假如第一开关S1断开,输入图像数据被提供给第一源编码器200。
第一源编码器200依据预定量化处理量化通过变换输入图像数据所获得的变换系数,并产生N×M数据,以上为包括量化变换系数的二维数据。所采用的变换的例子为离散余弦变换(DCT)。依据预定量化步骤或小波变换执行量化。
第一源编码器200所接收并编码的输入图像数据可用作后一或前一输入图像数据的运动补偿的参考数据。因此,此已编码输入图像数据被与第一源解码器200反向处理数据的第一源解码器300反向量化和反向变换,然后被存储在存储器400中。假如从第一源解码器300中输出的数据为微分图像数据,编码控制器100接通第二开关S2,因此微分图像数据被加入到运动补偿器500的输出中,然后被存储在存储器400中。
运动预测器600将输入图像数据与存储在存储器400中的数据进行比较,并检索最接近当前所提供的输入图像数据的数据。在将所检索的数据与当前所提供的输入图像数据进行比较之后,运动预测器600输出运动矢量(MV)。参考至少一图像获得运动矢量。也就是说,可参考多个先前和/或随后的图像产生运动矢量。当运动矢量被提供给存储器400时,存储器400输出相应数据到运动补偿器500。基于从存储器400所提供的数据,运动补偿器500响应当前已编码图像数据产生补偿值。
第二源编码器700从第一源编码器200接收量化变换系数且从运动预测器600接收运动矢量信息,并编码和输出编码类型信息、量化信息和从编码控制器100接收的其它解码所需信息,最后输出一位流。
依据本发明的运动矢量编码装置70被包括在第二源编码器700内。因此,依据本发明用于编码运动矢量的方法由第二源编码器700实现。依据MPEG-4编码标准或H.263编码标准,源编码器700利用相邻块的运动矢量执行预测编码而不是直接编码当前块本身的运动矢量,这样可反映相邻块运动矢量之间的关系并提高了编码效率。
图4是依据本发明的优选实施例的运动矢量解码装置方框图。如图4,运动矢量解码装置130包括运动矢量解码器131和运动矢量预测补偿器132。运动矢量解码器131接收并将一已编码运动矢量差值解码以重构差值。为从重构的差值获得源运动矢量,应获得已用于差值计算的预测值然后将其加入所述差值。为此,运动矢量预测补偿器132估计与当前块类型一致的运动矢量并在多个与当前块邻接的相邻块之中产生关于具有与当前块不同类型的运动矢量的相邻块的预测运动矢量,并计算相邻块运动矢量和预测运动矢量中与当前块类型一致的运动矢量的代表值,然后通过加入由运动矢量解码器131重构的所计算差值代表值计算当前块的运动矢量。
运动矢量解码装置130实现一种依据本发明用于解码运动矢量的方法。依据MPEG-4编码标准或H.263编码标准,运动矢量解码装置130利用相邻块的运动矢量实现预测解码而不是直接解码当前块本身的运动矢量,这样可反映相邻块运动矢量之间的关系并提高了编码效率。
图5是依据本发明的优选实施例的包括如图4运动矢量解码装置的图像数据解码装置方框图。如图5,图像数据解码装置包括用于多路分解一位流的多路分解器110、第二源解码器710和第一源解码器210。而且,依据本发明,图像数据解码装置包括用于解码编码类型信息的编码类型信息解码器120和用于解码运动矢量的运动矢量解码器130。
多路分解器110将位流多路分解为熵编码和量化变换系数、运动矢量信息、编码类型信息等等。第二源解码器710熵解码已编码变换系数并输出量化变换系数。第一源解码器210源解码量化变换系数。也就是,第一源解码器210与第一源编码器200反向处理数据。例如,假如第一源编码器200执行离散余弦变换(DCT),则第一源解码器210执行反向离散余弦变换(IDCT)。因此,图像数据被重构。已重构的图像数据被存储在用于运动补偿的存储器410中。
编码类型信息解码器120鉴别编码类型。假如编码类型为需要运动补偿的之间类型,编码类型信息解码器120接通第三开关S30,这样由运动补偿器510提供的运动补偿值被加入到第一源解码器210提供的数据中从而产生恢复的图像数据。运动矢量解码器130表明由从运动矢量信息中获得的运动矢量指示的一个位置,且运动补偿器510从运动矢量指示的参考图像数据中产生运动补偿值。运动矢量编码器130在其操作和结构上与如图4所示的运动矢量解码装置130类似,在此不再详述。
图6表示依据本发明的优选实施例的多参考方法。如图6,图像I0是未参考其它图像而获得的内部图像,图像B1、B2等均为参考两个不同图像所获得的双预测图像,且图像P4、P8等为只参考内部图像所获得的预测图像。箭头表示编码所需的图像相关性。尤其,图像B2从属于图像I0和P4,图像B1从属于图像I0、P4和B2,而且图像B3从属于图像I0、P4、B1和B2。因此,当显示顺序为I0、B1、B2、B3、P4等等时,传输顺序则为I0、P4、B2、B1、B3等。如上所述,如图1的运动矢量编码装置参考多图像产生双预测图像。也就是说,至少以一种模式产生依据本发明的编码和解码方法中的运动矢量,此模式包括在前预测、后预测、双向预测和直接预测模式之间的一双预测模式。在双预测模式中,两不同参考图像均为先前图像或均为随后图像。
依据本发明的优选实施例图7表示构成运动补偿单元的运动矢量补偿块。如图7,图像包括多个运动补偿块。依据本发明的实施例,运动补偿块包括16×16宏块(MB)和水平分割16×16宏块所获得的16×8块、垂直分割16×16宏块所获得的8×16块、水平和垂直分割16×16宏块所获得的8×8块、再水平或垂直分割8×8宏块所获得的8×4或4×8块以及再水平和垂直分割8×8宏块所获得的4×4块。
依据本发明的运动矢量编码方法采用微分脉冲编码调制,编码与当前块邻接的相邻块的代表值,例如,在本发明的优选实施例中的中值,与当前块的运动矢量MV_X之间的差值。尤其,假如与当前块X邻接的相邻块左块A、上块B和上右块C的运动矢量分别被定义为MV_A、MV_B和MV_C,依据以下等式计算作为用于编码微分矢量的预测值的预测运动矢量PMV_X和作为采用预测值的微分值的微分矢量DMV_XPMV_X=median(MV_A,MV_B,MV_C)DMV_X=MV_X-PMV_X ...(1)对每个分量值,即分别对x分量和y分量值,进行计算。同时,左块A为包括与当前块X第一行相邻且在其最左边象素的左边的象素的块,上块B为包括与当前块X第一行相邻且在其最左边象素的上面的象素的块,而且上右块C为包括与当前块X第一行相邻且在其最右边象素的上右面的象素的块。
依据本发明的运动矢量解码方法在解码方法之后,此解码方法获得已解码差值MVD_X并通过将相邻块代表值,例如在本发明的优选实施例中的中值,加入当前块中从而获得当前块的运动矢量MV_X。尤其,假如与当前块X相邻的左块A、上块B和上右块C的运动矢量分别被定义为MV_A、MV_B和MV_C,依据以下等式计算作为用于解码的预测值的预测运动矢量PMV_X和通过将已解码差值MVD_X加入预测运动矢量PMV_X从而获得的运动矢量MV_XPMV_X=median(MV_A,MV_B,MV_C)MV_X=DMV_X+PMV_X...(2)分别对每个分量值,即对x分量和y分量值,进行计算。
依据如上所述的编码和解码方法获得运动矢量也存在例外情况,以下逻辑可用于此例外情况。
首先,在相邻块A、B、C和D位于图像或切片外时,可采用以下逻辑。需注意的是切片为具有一开始代码的一系列数据行的最小单元。切片具有预定长度且由一宏块组成。而且,切片不会跨越几个图像,而只在图像中。
1)假如块A和D位于图像或切片外,则MV_A=MV_D=0且块A和D具有与当前块X不同的参考图像。
2)假如块B、C和D均位于图像或切片外,则MV_B=MV_C=MV_A且在取中值的情况下,MV_A应为当前块X的预测运动矢量PMV_X。
3)假如块C位于图像或切片外,则块C被块D取代。块D在当前块X的上左方,包括与当前块X第一行相邻且在其最左边象素的上面的象素。
其次,在相邻块为内部编码,即相邻块A、B、C和D之中有内部编码块的情况下,内部编码块的运动矢量为0且有不同参考图像。
再次,在相邻块有与当前块不同的参考图像时,依据本发明的方法获得预测运动矢量,然后此预测运动矢量被用于获取中值。也就是说,假如参与预测编码的当前块和相邻块具有不同类型的运动矢量,依据本发明的方法获得与当前块类型一致的预测运动矢量,然后通过在如上所述的等式(1)和(2)中代入预测运动矢量从而获得中值。
依据本发明的优选实施例图8表示用于获取预测运动矢量的方法。如图8,当前块X具有前向运动矢量MVf_X,且相邻块A和D分别具有与当前块X类型一致的前向运动矢量MVf_A和MVf_D。然而,相邻块B具有与当前块X类型不同的后向运动矢量MVb_B,而且块C包括前向运动矢量MVf_C和后向运动矢量MVb_C。
假如在编码和解码中包括不同种运动矢量,则具有与当前块不同类型的运动矢量将降低编码和解码效率,因此可依据等式(1)和(2)获得关于具有与当前块X类型一致的运动矢量的中值。在这方面,由于相邻块B不具有与当前块类型一致的运动矢量,应首先获得用于相邻块B的预测运动矢量。也就是说,应首先预测与当前块X类型一致的前向运动矢量。
图9表示一种用于获取预测运动矢量的方法。如图9,可从以下等式获取作为相邻块的预测运动矢量的预测前向运动矢量MVf(预测)或预测后向运动矢量MVb(预测) 其中距离_A为包括相应相邻块的当前图像所参考的参考图像1和2之间的距离,且距离_B为包括相应相邻块的当前图像和参考图像1之间的距离。在本发明的实施例中,参考图像1为当前图像的前一图像且参考图像2为后一图像。
图10表示另一种获取预测运动矢量的方法。如图10,作为相邻块的预测运动矢量的预测前向运动矢量MVf(预测)或预测后向运动矢量MVb(预测)可由以下等式获得
其中TR_A为包括相应相邻块的当前图像所参考的参考图像1和2之间的时间差,且TR_B为包括相应相邻块的当前图像和参考图像1之间的时间差。此时间差可从计数器值TR,即指示图像显示顺序的时间参考,中获得。
同时,依据本发明的运动矢量编码方法对双预测图像尤其有效。以下将对双预测图像进行更详细地描述。
双预测图像不限制必须采用时间上的先前和随后图像执行运动补偿。因此,双预测图像中所包括的当前块运动矢量在时间或方向上独立。也就是说,由于参考多个图像获得双预测图像,当前块和相邻块最可能具有不同种运动矢量。然而,包括在双预测图像中的当前块运动矢量无论相邻块运动矢量的类型均可依据本发明的编码和解码方法进行编码和解码。
由于双预测图像具有四个运动补偿模式,因此具有四个运动矢量,包括前向运动矢量MVf、后向运动矢量MVb、双预测运动矢量MVf和MVb以及直接运动矢量。当无需传送运动矢量信息至发射机级从而不需要编码或解码直接运动矢量,其余运动矢量必须使用从相邻块的运动矢量获得的预测运动矢量PMV作为预测图像进行编码和解码。
由于如上所述包括在双预测图像中的当前块运动矢量在时间或方向上独立,无论当前块的运动矢量是前向或后向均无须分类在特定时间或方向上。而且,双预测运动矢量无须分类在特定时间或方向上且无需包括基于特定时间或特定位置的先前和随后分量。
为获得预测运动矢量PMV,MVf和MVb利用与相邻块类型一致的运动矢量。也就是说,MVf只在获取预测运动矢量时利用相邻MVf’s,而且MVb只利用外围MVf’s。然而,由于双预测运动矢量包括MVf和MVb,双预测运动矢量的MVf和MVb利用相应类型的运动矢量。因此,当预测运动矢量PMV必须由编码或解码双预测图像的运动矢量来获取时,类型一致的运动矢量可依据如图9和10所述方法进行预测,其中相邻块的运动矢量的类型不同。
再如图7,当MVf_X=(1,2)、MVf_A=(4,2)、MVb_B=(-1,-1)、MVf_C=(0,3)和MVb_C=(-1,-2)时,由于MVb_B是与当前块不同类型的运动矢量,必须排除MVb_B=(-1,-1)且代替以(0,0)从而依据常规方法获得中值。因此,中值为(0,3),且微分值DMV_X为(1,-1)。然而,依据本发明,预测值(1,1)用于代替MVb_B=(-1,-1)。因此,中值变为(1,1)且微分值DMV_X变为(0,1)。
同时,运动补偿块可以是矩形。由于在此矩形运动补偿块的情况下可预测运动矢量的方向,预测运动矢量必须以与采用三个相邻块运动矢量的中值作为预测运动矢量不同的方法获得。
图11表示一种用于获得关于矩形运动补偿块的预测运动矢量的方法。如图11,在运动补偿块为8×16块时,左相邻块的运动矢量被用作块①的预测运动矢量,且上右相邻块的运动矢量被用作块②的预测运动矢量。
在运动补偿块为16×8块时,上相邻块的运动矢量被用作块③的预测运动矢量,且左相邻块的运动矢量被用作块④的预测运动矢量。
在运动补偿块为8×4块时,利用先前块的中值获得块⑤的预测运动矢量,且左相邻块的运动矢量被用作块⑥的预测运动矢量。
在运动补偿块为4×8块时,利用先前块的中值获得块⑦的预测运动矢量,且上相邻块的运动矢量被用作块⑧的预测运动矢量。
然而,假如由预测运动矢量所确定的运动矢量的参考图像与当前块的不同,则使用现有的中值。在其他例外情况下,使用如上所述的中值预测。
如上所述的编码方法和解码方法可包括在计算机程序中。本发明所属技术领域的计算机编程员可以很容易导出代码或代码段来构建此计算机程序。而且,此程序可存储在计算机可读信息记录介质上,且可被读出并实现编码方法和解码方法。所述计算机可读信息记录介质包括磁记录介质、光记录介质和载波介质。
如上所述,依据本发明,通过以下方法编码和解码运动矢量相对于具有与当前块不同类型的运动矢量的相邻块,预测与当前块类型一致的运动矢量;基于预测获取中值;编码基于中值所获得的微分值;并通过将已解码微分值加中值来获取当前块的运动矢量,其中此中值是相对于具有与当前块类型不一致运动矢量的相邻块基于与当前块类型一致的运动矢量预测而获得的。这样,可提高编码和解码效率。
也就是说,在编码和解码当前块的运动矢量中采用相邻块的运动矢量的代表值,即在本发明优选实施例中的中值,是基于相邻块运动类似的假设。因此,依据本发明的编码和解码方法,可以解决从预测编码处理中排除参照不同参考图像的相邻块的运动矢量和没有充分反映相邻块运动矢量之间的关系的传统问题。而且,即使当运动矢量参考不同参考图像时,通过获得类型一致的预测运动矢量并反映用于获得代表值,例如中值的预测运动矢量也可以提高编码和解码效率。
虽然已参照优选实施例对本发明进行了特别展示及详细描述,本领域普通技术人员将会理解在不脱离本发明所附权利要求的精神和范围的情况下可对本发明在形式和细节上进行各种变化。
权利要求
1.用于编码运动矢量的方法,包括(a)预测与当前块类型一致的运动矢量并在多个与当前块邻接的相邻块之中获得关于具有与当前块不同类型的运动矢量的相邻块的预测运动矢量;(b)计算相邻块运动矢量和预测运动矢量中与当前块类型一致的运动矢量的代表值;(c)计算在所计算的代表值与当前块的运动矢量之间的差值;并且(d)编码所计算的差值。
2.根据权利要求1所述的编码方法,其中多个相邻块包括当前块的左、上、上右的块。
3.根据权利要求2所述的编码方法,其中左块为包括与当前块第一行相邻且在其最左边象素的左边的象素的块,上块为包括与相邻且在其最左边象素的上面的象素的块,而且上右块为包括与当前块第一行相邻且在其最右边象素的上右面的象素的块。
4.用于编码运动矢量的装置,包括运动矢量预测器,预测与当前块类型一致的运动矢量并在多个与当前块邻接的相邻块之中产生关于具有与当前块不同类型的运动矢量的相邻块的预测运动矢量,且从相邻块运动矢量和预测运动矢量中计算与当前块类型一致的运动矢量的代表值,并计算在所计算的代表值与当前块的运动矢量之间的差值;以及运动矢量编码器,用于编码所计算的差值。
5.根据权利要求4所述的编码装置,其中当当前块的运动矢量为前向运动矢量MVf且相邻块的运动矢量为后向运动矢量MVb时,所述运动矢量预测器依据以下等式计算预测前向运动矢量MVf(预测)作为预测运动矢量 其中d1为相邻块所属当前图像与相邻块参考的前一图像之间的距离,且d2为相邻块参考的后一图像与相邻块参考的前一图像之间的距离。
6.根据权利要求4所述的编码装置,其中当当前块的运动矢量为后向运动矢量MVb且相邻块的运动矢量为前向运动矢量MVf时,所述运动矢量预测器依据以下等式计算预测后向运动矢量MVb(预测)作为预测运动矢量 其中d1为相邻块所属当前图像与相邻块参考的前一图像之间的距离,且d2为相邻块参考的后一图像与相邻块参考的前一图像之间的距离。
7.根据权利要求4所述的编码装置,其中所述运动矢量预测器依据以下等式计算预测值PMV_X作为代表值PMV_X=median(MVf_A,MVf_B,MVf_C)或median(MVb_A,MVb_B,MVb_C)其中MVf_A、MVf_B、MVf_C、MVb_A、MVb_B和MVb_C为相邻块运动矢量的分量,其中MVf_A为左块的前向运动矢量,MVf_B为上块的前向运动矢量,MVf_C为上右块的前向运动矢量,MVb_A为左块的后向运动矢量,MVb_B为上块的后向运动矢量,MVb_C为上右块的后向运动矢量,这些矢量之一为预测运动矢量。
8.根据权利要求7的编码装置,其中所述运动矢量预测器计算所计算的代表值与当前块的运动矢量之间的微分值。
9.根据权利要求8的编码装置,其中所述运动矢量预测器编码微分值。
10.用于解码运动矢量的方法,包括(a)预测与当前块类型一致的运动矢量并在多个与当前块邻接的相邻块之中获得关于具有与当前块不同类型的运动矢量的相邻块的预测运动矢量;(b)计算相邻块运动矢量和预测运动矢量中与当前块类型一致的运动矢量的代表值;并且(c)通过所计算的代表值加一解码差值计算当前块的运动矢量。
11.根据权利要求10所述的解码方法,其中多个相邻块包括当前块的左、上、上右的块。
12.根据权利要求11所述的解码方法,其中左块为包括与当前块第一行相邻且在其最左边象素的左边的象素的块,上块为包括与当前块第一行相邻且在其最左边象素的上面的象素的块,而且上右块为包括与相邻且在其最右边象素的上右面的象素的块。
13.根据权利要求10所述的解码方法,其中代表值为中值。
14.根据权利要求10所述的解码方法,其中当当前块的运动矢量为前向运动矢量MVf且相邻块的运动矢量为后向运动矢量MVb时,预测前向运动矢量MVf(预测)被作为预测运动矢量计算,依据以下等式计算 其中t1是在相邻块所属的当前图像与相邻块参考的前一图像之间的时间差,且t2是在相邻块参考的后一图像与相邻块参考的前一图像之间的时间差。
15.根据权利要求10所述的解码方法,其中当当前块的运动矢量为后向运动矢量MVb且相邻块的运动矢量为前向运动矢量MVf时,预测后向运动矢量MVb(预测)被作为预测运动矢量计算,依据以下等式计算 其中t1是在相邻块所属的当前图像与相邻块参考的前一图像之间的时间差,且t2是在相邻块参考的后一图像与相邻块参考的前一图像之间的时间差。
16.根据权利要求10的解码方法,其中当当前块的运动矢量为前向运动矢量MVf且相邻块的运动矢量为后向运动矢量MVb时,预测前向运动矢量MVf(预测)被作为预测运动矢量计算,依据以下等式计算 其中d1为相邻块所属当前图像与相邻块参考的前一图像之间的距离,且d2为相邻块参考的后一图像与相邻块参考的前一图像之间的距离。
17.根据权利要求10所述的解码方法,其中当当前块的运动矢量为后向运动矢量MVb且相邻块的运动矢量为前向运动矢量MVf时,预测后向运动矢量MVb(预测)被作为预测运动矢量计算,依据以下等式计算 其中d1为相邻块所属当前图像与相邻块参考的前一图像之间的距离,且d2为相邻块参考的后一图像与相邻块参考的前一图像之间的距离。
18.根据权利要求10所述的解码方法,其中步骤(b)包括计算用于依据以下等式解码为代表值的预测值PMV_X的步骤PMV_X=median(MVf_A,MVf_B,MVf_C)或median(MVb_A,MVb_B,MVb_C)其中MVf_A、MVf_B、MVf_C、MVb_A、MVb_B和MVb_C为相邻块运动矢量的分量,其中MVf_A为左块的前向运动矢量,MVf_B为上块的前向运动矢量,MVf_C为上右块的前向运动矢量,MVb_A为左块的后向运动矢量,MVb_B为上块的后向运动矢量,且MVb_C为上右块的后向运动矢量,且以上之一为预测运动矢量。
19.根据权利要求10所述的解码方法,其中步骤(c)包括加入在代表值和当前块的运动矢量之间的微分值。
20.用于解码运动矢量的装置,包括运动矢量解码器,用于解码差值;以及运动矢量预测补偿器,预测与当前块类型一致的运动矢量并在多个与当前块邻接的相邻块之中获得关于具有与当前块不同类型的运动矢量的相邻块的预测运动矢量,计算相邻块运动矢量和预测运动矢量中与当前块类型一致的运动矢量的代表值,并且通过所计算的代表值加解码差值计算当前块的运动矢量。
21.根据权利要求20所述的解码装置,其中多个相邻块包括当前块的左、上、上右的块。
22.根据权利要求21的解码装置,其中左块为包括与当前块第一行相邻且在其最左边象素的左边的象素的块,上块为包括与当前块第一行相邻且在其最左边象素的上面的象素的块,而且上右块为包括相邻且在其最右边象素的上右面的象素的块。
23.根据权利要求20所述的解码装置,其中代表值为中值。
24.根据权利要求20的解码装置,其中当当前块的运动矢量为前向运动矢量MVf且相邻块的运动矢量为一后向运动矢量MVb时,所述运动矢量预测补偿器将预测前向运动矢量MVf(预测)作为预测运动矢量计算,依据以下等式计算 其中t1是在相邻块所属的当前图像与相邻块参考的前一图像之间的时间差,且t2是在相邻块参考的后一图像与相邻块参考的前一图像之间的时间差。
25.根据权利要求20所述的解码装置,其中当当前块的运动矢量为后向运动矢量MVb且相邻块的运动矢量为前向运动矢量MVf,所述运动矢量预测补偿器将预测后向运动矢量MVb(预测)作为预测运动矢量计算,依据以下等式计算 其中t1是在相邻块所属的当前图像与相邻块参考的前一图像之间的时间差,且t2是在相邻块参考的后一图像与相邻块参考的前一图像之间的时间差。
26.根据权利要求20的解码装置,其中当当前块的运动矢量为前向运动矢量MVf且相邻块的运动矢量为后向运动矢量MVb时,所述运动矢量预测补偿器将预测前向运动矢量MVf(预测)作为预测运动矢量计算,依据以下等式计算 其中d1为相邻块所属当前图像与相邻块参考的前一图像之间的距离,且d2为相邻块参考的后一图像与相邻块参考的前一图像之间的距离。
27.根据权利要求20的解码装置,其中当当前块的运动矢量为后向运动矢量MVb且相邻块的运动矢量为前向运动矢量MVf时,所述运动矢量预测补偿器将预测后向运动矢量MVb(预测)作为预测运动矢量计算,依据以下等式计算 其中d1为相邻块所属当前图像与相邻块参考的前一图像之间的距离,且d2为相邻块参考的后一图像与相邻块参考的前一图像之间的距离。
28.根据权利要求20的解码装置,其中所述运动矢量预测补偿器依据以下等式计算预测值PMV_X作为代表值用于解码PMV_X=median(MVf_A,MVf_B,MVf_C)或median(MVb_A,MVb_B,MVb_C)其中MVf_A、MVf_B、MVf_C、MVb_A、MVb_B和MVb_C为相邻块运动矢量的分量,其中MVf_A为左块的前向运动矢量,MVf_B为上块的前向运动矢量,MVf_C为上右块的前向运动矢量,MVb_A为左块的后向运动矢量,MVb_B为上块的后向运动矢量,MVb_C为上右块的后向运动矢量,这些矢量之一为预测运动矢量。
全文摘要
公开了一种用于编码和解码运动矢量的方法和装置。通过如下步骤编码运动矢量(a)预测与当前块类型一致的运动矢量并在多个与当前块邻接的相邻块之中获得关于具有与当前块不同类型的运动矢量的相邻块的预测运动矢量;(b)计算相邻块运动矢量和预测运动矢量中与当前块类型一致的运动矢量的代表值;(c)计算在所计算的代表值与当前块的运动矢量之间的差值;以及(d)编码所计算的差值。即使当运动矢量参考不同参考图像时,运动矢量也可更有效地编码。
文档编号H04N7/36GK1497981SQ0315801
公开日2004年5月19日 申请日期2003年7月16日 优先权日2002年7月16日
发明者崔雄一, 全炳宇 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1