一种运动矢量预测方法及装置的制作方法

文档序号:7665944阅读:108来源:国知局
专利名称:一种运动矢量预测方法及装置的制作方法
技术领域
本发明涉及视频编码技术领域,具体涉及一种运动矢量预测方法及装置。
背景技术
在视频编码标准中,运动矢量预测采用空域相关法,即利用当前帧中 的已编码块的运动矢量作为参考,通过中值预测准则得到当前块的预测运动 矢量。
图l给出了现有的采用空域相关法预测运动矢量的示意图,如图l所示, 其中,Curr为要编码的当前块,A、 B、 C、 D为当前帧中已编码的块,且A 为Curr的左块,B为Curr的上块,C为Curr的左上块,D为Curr的右上块。 A、 B、 C、 D与Curr的相关性从高到低依次为B、 A、 D、 C。
图2给出了现有的利用空域相关法预测Curr的运动矢量的流程图,如 图2所示,其具体步骤如下
步骤201:判断A、 B、 D是否都可用,若是,执行步骤202,否则,执 行步骤203。
通常当一个块满足以下两种情况之一时,认为该块不可用
一、 该块采用帧内预测编码得到。
二、 该块不存在,如该块与Curr不在同一条带(Slice)内,或者该 块超出帧的边界。
步骤202:将A、 B、 D的运动矢量的中值作为Curr的预测运动矢量, 本流程结束。
步骤203:判断是否A、 B可用、D不可用,若是,执行步骤204;否
则,执行步骤207。
步骤204:判断C是否可用,若是,执行步骤205;否则,执行步骤206。 步骤205:将A、 B、 C的运动矢量的中值作为Curr的预测运动矢量,
本流程结束。
步骤206:将零矢量作为C的运动矢量,然后将A、 B、 C的运动矢量 的中值作为Curr的预测运动矢量,本流程结束。
步骤207:判断是否A、 B之一可用,若是,执行步骤208;否则,执 行步骤209。
步骤208:将可用的A或者B的运动矢量作为Curr的预测运动矢量, 本流程结束。
步骤209:判断是否A、 B都不可用、D可用,若是,执行步骤210;
否则,执行步骤211。
步骤210:将D的运动矢量作为Curr的预测运动矢量,本流程结束。 步骤211:确定A、 B、 D都不可用,则将零矢量作为Curr的预测运动矢量。
现有的采用空域相关法预测运动矢量的缺点是,当A、 B有一个不可用 时,会使得对Curr的运动矢量预测的可靠性降低,这是因为A、 B是与 Curr相关性最高的块,当A、 B都可用时,对Curr的运动矢量的预测是最 可靠的,只要A、 B之一不可用,对Curr的运动矢量的预测的可靠性就会 降低。

发明内容
本发明提供一种运动矢量预测方法及装置,以提高运动矢量预测的可靠性。
本发明的技术方案是这样实现的 一种运动矢量预测方法,该方法包括
当^r测到当前块的上块、左块不可用,而当前块的上二块、左二块可用时,
根据当前块的上二块、左二块确定当前块的预测运动矢量,
所述当前块的上二块即当前块的上块的上块,所述当前块的左二块即当前 块的左块的左块。
所述根据当前块的上二块、左二块确定当前块的预测运动矢量包括 判断当前块的右上块是否可用,若是,将当前块的上二块、左二块、右
上块的运动矢量的中值作为当前块的预测运动矢量;否则,将当前块的上二
块、左二块的运动矢量的均值作为当前块的预测运动矢量。
所述方法进一步包括当检测到当前块的上块、左块、右上块都可用时,
将当前块的上块、左块、右上块的运动矢量的中值作为当前块的预测运动矢量。
所述方法进一步包括当当前块的上块、左块都可用而右上块不可用时, 将当前块的上块、左块的运动矢量的均值作为当前块的预测运动矢量。
所述方法进一步包括当当前块的上块、左块之一可用时,将可用的上 块或左块的运动矢量作为当前块的预测运动矢量。
所述方法进一步包括当当前块的上块、左块、上二块、左二块都不可 用、右上块可用时,将右上块的运动矢量作为当前块的预测运动矢量。
所述方法进一步包括当当前块的上块、左块、右上块、上二块、左二 块都不可用时,将零矢量作为当前块的预测运动矢量。
所述方法进一步包括当当前块的上块、左块、右上块、上二块、左二 块都不可用时,将在参考帧中所处位置与当前块在当前帧中所处位置相同的 块的运动矢量作为当前块的预测运动矢量。
一种运动矢量预测装置,该装置包括
块运动矢量存储模块,存储当前帧中的块的运动矢量;
运动矢量确定模块,当检测到当前块的上块、左块不可用,而当前块的 上二块、左二块可用时,根据从块运动矢量存储模块获取的当前块的上二块、 左二块的运动矢量,确定当前块的预测运动矢量。
所述运动矢量确定模块包括
块可用检测模块,检测当前块的上块、左块、上二块、左二块、右上块、
是否可用,将检测结果发送给确定模块;
确定模块,接收所述检测结果,若该检测结果指示上块、左块不可用、 上二块、左二块可用、同时右上块可用,则将从块运动矢量存储模块获取的 当前块的上二块、左二块、右上块的运动矢量的中值作为当前块的预测运动 矢量;若该检测结果指示上块、左块不可用、上二块、左二块可用、同时右 上块不可用,则将从块运动矢量存储模块获取的当前块的上二块、左二块的 运动矢量的均值作为当前块的预测运动矢量。
所述确定模块进一步包括,用于在检测结果指示当前块的上块、左块、 右上块都可用时,将从块运动矢量存储模块获取的当前块的上块、左块、右 上块的运动矢量的中值作为当前块的预测运动矢量的子模块。
所述确定模块进一步包括,用于在检测结果指示当前块的上块、左块都 可用而右上块不可用时,将从块运动矢量存储模块获取的当前块的上块、左 块的运动矢量的均值作为当前块的预测运动矢量的子模块。
所述确定模块进一步包括,用于在检测到当前块的上块、左块之一可用 时,将从块运动矢量存储模块获取的可用的上块或左块的运动矢量作为当前 块的预测运动矢量的子模块。
所述确定模块进一步包括,用于在检测到当前块的上块、左块、上二块、 左二块都不可用、右上块可用时,将右上块的运动矢量作为当前块的预测运 动矢量的子模块。
所述确定模块进一步包括,用于在检测到当前块的上块、左块、右上块、 上二块、左二块都不可用时,将零矢量作为当前块的预测运动矢量的子模块。
所述确定模块进一步包括,用于在检测到当前块的上块、左块、右上块、 上二块、左二块都不可用时,将从块运动矢量存储模块获取的、在参考帧中 所处位置与当前块在当前帧中所处位置相同的块的运动矢量作为当前块的 预测运动矢量的子模块。
与现有技术相比,本发明当检测到当前块的上块、左块不可用,而当前
块的上二块、左二块可用时,根据当前块的上二块、左二块确定当前块的预 测运动矢量,提高了运动矢量预测的可靠性。


图1为现有的采用空域相关法预测运动失量的示意图; 图2为现有的采用空域相关法预测运动矢量的流程图; 图3为本发明实施例提供的预测运动矢量的流程图; 图4为本发明实施例提供的帧中的块的空域相关性的示意图; 图5为本发明实施例进行运动矢量预测所采用的块的示意图; 图6为本发明实施例提供的参考帧中的块与当前块的时域相关性的示 意图7为本发明实施例提供的运动矢量预测装置的结构组成图。
具体实施例方式
下面结合附图及具体实施例对本发明再作进 一 步详细的说明。 图3为本发明实施例提供的预测运动矢量的流程图,如图3所示,其具 体步骤如下
步骤301:将A D按照与Curr的相关性从高到低进行排序,得到B、 A、 D、 C。
其中,Curr为当前块,A为Curr的左块,B为Curr的上块,C为Curr 的左上块,D为Curr的右上块。
图4为采用现有技术得到的帧中的块的空域相关性示意图,如图4所示, 其中,A、 B、 C、 D块中的前一个数字为该块的运动矢量的水平分量与Curr 的水平分量的相关系数,后一个数字为该块的运动矢量的垂直分量与Curr 的垂直分量的相关系数。如块A的运动矢量的水平分量与Curr的水平分 量的相关系数为0.488,块A的垂直分量与Curr的垂直分量的相关系数为 0.487。相关系数越大表示相关性越强,可以看出A D与Curr的相关性从
高到低依次为B、 A、 D、 C。
步骤302:判断A、 B、 D是否都可用,若是,执行步骤303;否则,执 行步骤304。
步骤303:将A、 B、 D的运动矢量的中值作为Curr的预测运动矢量, 本流程结束。
运动矢量由水平分量和垂直分量组成,将A、 B、 D的运动矢量的中值 作为Curr的预测运动矢量即取A、 B、 D的运动矢量的水平分量的中值作 为Cmr的运动矢量的水平分量,取A、 B、 D的运动矢量的垂直分量的中值 作为Curr的运动矢量的垂直分量。
例如A的运动矢量为(al,a2) 、 B的运动矢量为(W力2) 、 C的运 动矢量为(cl,c2),且al〉W〉cl, c2>fl2〉62,则Curr的预测运动矢量为 (M,fl2)。
步骤304:判断是否A、 B可用、D不可用,若是,执行步骤305;否 则,执行步骤306。
步骤305:将A、 B的运动矢量的均值作为Curr的预测运动矢量,本流 程结束。
将A、 B的运动矢量的均值作为Curr的预测运动矢量即取A、 B的运 动矢量的水平分量的均值作为Curr的运动矢量的水平分量,取A、 B的运 动矢量的垂直分量的均值作为Curr的运动矢量的垂直分量。
例如A的运动矢量为(fll,"2) 、 B的运动矢量为(Z)l力2),则Curr
的预测运动矢量为(^1,^±^)。
2 2
步骤306:判断是否A、 B都不可用、E、 F可用,若是,执行步骤307; 否则,执行步骤310。
图5给出了本发明实施例进行运动矢量预测所采用的编码块的示意图, 如图5所示,其中,E为A的左块也可称为Curr的左二块,F为B的上块 也可称为Curr的上二块。
步骤307:判断D是否可用,若是,执行步骤308;否则,执行步骤309。 步骤308:将E、 F、 D的运动矢量的中值作为Curr的预测运动矢量, 本流程结束。
步骤309:将E、 F的运动矢量的均值作为Curr的预测运动矢量,本流 程结束。
步骤310.'判断是否A、 B之一可用,若是,执行步骤311;否则,执 行步骤312。
步骤311:将可用的A或者B的运动矢量作为Curr的预测运动矢量, 本流程结束。
步骤312:判断是否A、 B、 E、 F都不可用、D可用,若是,执行步骤 313;否则,执行步骤314。
步骤313:将D的运动矢量作为Curr的预测运动矢量,本流程结束。
步骤314:判断是否A、 B、 D、 E、 F都不可用、G可用,若是,执行 步骤315;否则,执行步骤316。
图6为采用现有技术得到的参考帧中的块与当前块Curr的时域相关性 的示意图,如图6所示,M、 I、 N、 H、 G、 J、 L、 K、 O为参考帧中的块, 其中,块G在参考帧中的位置与Curr在当前帧中的位置相同。每个块中的 第一个数字为该块与Curr的相关系数,可以看出,G与Curr的相关性最高。
步骤315:将G的运动矢量作为Curr的预测运动矢量,本流程结束。
步骤316:将零矢量作为Curr的预测运动矢量。
在实际应用中,若只采用空域相关法预测运动失量,则在A、 B、 D、 E、 F都不可用时,将零矢量作为Curr的预测运动矢量。
图7为本发明实施例提供的运动矢量预测装置的结构组成图,如图7所 示,其主要包括块运动矢量存储模块71和运动矢量确定模块72,其中
块运动矢量存储模块71:存储当前帧中的块的运动矢量。
运动矢量确定模块72:当检测到当前块Curr的上块B、左块A不可用,
而当前块的上二块F、左二块E可用时,根据从块运动矢量存储模块71获
取的F、 E的运动矢量,确定Curr的预测运动矢量。
运动矢量确定模块72可以包括块可用检测模块721和确定模块722, 各模块的功能如下
块可用检测模块721: 4全测块A、 B、 D、 E、 F、 G是否可用,将4企测 结果发送给确定模块722。
G为参考帧中所处位置与Curr在当前帧中所处位置相同的块。
确定模块722:接收块可用检测模块721发来的检测结果,若该检测结 果指示A、 B不可用、E、 F可用、同时D可用,则将从块运动矢量存储模 块71获取的块D、 E、 F的运动矢量的中值作为Curr的预测运动矢量;若 该;险测结果指示A、 B不可用、E、 F可用、同时D不可用,则将/人块运动 矢量存储模块71获取的块E、 F的运动矢量的均值作为Curr的预测运动矢 量。
在实际应用中,确定模块722可以进一步包括,用于在检测结果指示块
A、 B、 D都可用时,将从块运动矢量存储模块71获取的A、 B、 D的运动 矢量的中值作为Curr的预测运动矢量的子模块。
在实际应用中,确定模块722还可以进一步包括,用于在检测结果指示 块A、 B都可用而D不可用时,将从块运动矢量存储模块71获取的A、 B 的运动矢量的均值作为Curr的预测运动矢量的子模块。
在实际应用中,确定模块722还可以进一步包括,用于在检测到块A、 B之一可用时,将从块运动矢量存储模块71获取的可用的A或B的运动矢 量作为Curr的预测运动矢量的子模块。
在实际应用中,确定才莫块722还可以进一步包括,用于在^r测到块A、
B、 E、 F都不可用、D可用时,将D的运动矢量作为Curr的预测运动矢量 的子模块。
在实际应用中,确定模块722还可以进一步包括,用于在只采用空域相 关法预测运动矢量时,若检测到块A、 B、 D、 E、 F都不可用时,将零矢量 作为Curr的预测运动矢量的子模块。
在实际应用中,确定才莫块722还可以进一步包括,用于在只采用空、时 域相关结合法预测运动矢量时,若4全测到块A、 B、 D、 E、 F都不可用时, 将从块运动矢量存储模块71获取的、在参考帧中所处位置与Curr在当前帧 中所处位置相同的块G的运动矢量作为Curr的预测运动矢量的子模块。
/人上述实施例可以看出,当A、 B块都不可用、而E、 F块可用时,可 以以E、 F块代替A、 B块来预测Curr的运动矢量,由于E是与A相关性最 高的块、F是与B相关性最高的块,因此,会提高运动矢量预测的可靠性。 例如在A、 B、 D都不可用时,仍然可以以E、 F的运动矢量的均值作为 Curr的预测运动矢量;而现有技术中,当A、 B、 D都不可用时,直接以零 矢量作为Cmr的预测运动矢量,显然,在这种情况下,本发明实施例会提 高运动矢量预测的准确度。
以上所述仅为本发明的过程及方法实施例,并不用以限制本发明,凡在 本发明的精神和原则之内所做的任何修改、等同替换、改进等,均应包含在 本发明的保护范围之内。
权利要求
1、一种运动矢量预测方法,其特征在于,该方法包括当检测到当前块的上块、左块不可用,而当前块的上二块、左二块可用时,根据当前块的上二块、左二块确定当前块的预测运动矢量,所述当前块的上二块即当前块的上块的上块,所述当前块的左二块即当前块的左块的左块。
2、 如权利要求l所述的方法,其特征在于,所述根据当前块的上二块、 左二块确定当前块的预测运动矢量包括判断当前块的右上块是否可用,若是,将当前块的上二块、左二块、右 上块的运动矢量的中值作为当前块的预测运动矢量;否则,将当前块的上二 块、左二块的运动矢量的均值作为当前块的预测运动矢量。
3、 如权利要求1所述的方法,其特征在于,所述方法进一步包括当 检测到当前块的上块、左块、右上块都可用时,将当前块的上块、左块、右 上块的运动矢量的中值作为当前块的预测运动矢量。
4、 如权利要求1所述的方法,其特征在于,所述方法进一步包括当 当前块的上块、左块都可用而右上块不可用时,将当前块的上块、左块的运 动矢量的均值作为当前块的预测运动矢量。
5、 如权利要求1所述的方法,其特征在于,所述方法进一步包括当 当前块的上块、左块之一可用时,将可用的上块或左块的运动矢量作为当前 块的预测运动矢量。
6、 如权利要求l所述的方法,其特征在于,所述方法进一步包括当 当前块的上块、左块、上二块、左二块都不可用、右上块可用时,将右上块 的运动矢量作为当前块的预测运动矢量。
7、 如权利要求l所述的方法,其特征在于,所述方法进一步包括当 当前块的上块、左块、右上块、上二块、左二块都不可用时,将零矢量作为 当前块的预测运动矢量。
8、 如权利要求1所述的方法,其特征在于,所述方法进一步包括当 当前块的上块、左块、右上块、上二块、左二块都不可用时,将在参考帧中 所处位置与当前块在当前帧中所处位置相同的块的运动矢量作为当前块的 预测运动矢量。
9、 一种运动矢量预测装置,其特征在于,该装置包括 块运动矢量存储模块,存储当前帧中的块的运动矢量; 运动矢量确定模块,当检测到当前块的上块、左块不可用,而当前块的上二块、左二块可用时,根据从块运动矢量存储模块获取的当前块的上二块、 左二块的运动矢量,确定当前块的预测运动矢量。
10、 如权利要求9所述的装置,其特征在于,所述运动矢量确定模块包括块可用检测模块,检测当前块的上块、左块、上二块、左二块、右上块、 是否可用,将检测结果发送给确定模块;确定模块,接收所述检测结果,若该检测结果指示上块、左块不可用、 上二块、左二块可用、同时右上块可用,则将从块运动矢量存储模块获取的 当前块的上二块、左二块、右上块的运动矢量的中值作为当前块的预测运动 矢量;若该检测结果指示上块、左块不可用、上二块、左二块可用、同时右 上块不可用,则将从块运动矢量存储模块获取的当前块的上二块、左二块的 运动矢量的均值作为当前块的预测运动矢量。
11、 如权利要求10所述的装置,其特征在于,所述确定模块进一步包 括,用于在检测结果指示当前块的上块、左块、右上块都可用时,将从块运 动矢量存储模块获取的当前块的上块、左块、右上块的运动矢量的中值作为 当前块的预测运动矢量的子模块。
12、 如权利要求10所述的装置,其特征在于,所述确定模块进一步包 括,用于在检测结果指示当前块的上块、左块都可用而右上块不可用时,将 从块运动矢量存储模块获取的当前块的上块、左块的运动矢量的均值作为当 前块的预测运动矢量的子模块。
13、 如权利要求10所述的装置,其特征在于,所述确定模块进一步包 括,用于在检测到当前块的上块、左块之一可用时,将从块运动矢量存储模 块获取的可用的上块或左块的运动矢量作为当前块的预测运动矢量的子模 块。
14、 如权利要求10所述的装置,其特征在于,所述确定模块进一步包 括,用于在检测到当前块的上块、左块、上二块、左二块都不可用、右上块 可用时,将右上块的运动矢量作为当前块的预测运动矢量的子模块。
15、 如权利要求10所述的装置,其特征在于,所述确定模块进一步包 括,用于在检测到当前块的上块、左块、右上块、上二块、左二块都不可用 时,将零矢量作为当前块的预测运动矢量的子模块。
16、 如权利要求10所述的装置,其特征在于,所述确定模块进一步包 括,用于在检测到当前块的上块、左块、右上块、上二块、左二块都不可用 时,将从块运动矢量存储模块获取的、在参考帧中所处位置与当前块在当前 帧中所处位置相同的块的运动矢量作为当前块的预测运动矢量的子模块。
全文摘要
本发明公开了一种运动矢量预测方法及装置。方法包括当检测到当前块的上块、左块不可用,而当前块的上二块、左二块可用时,根据当前块的上二块、左二块确定当前块的预测运动矢量,所述当前块的上二块即当前块的上块的上块,所述当前块的左二块即当前块的左块的左块。本发明提高了运动矢量预测的可靠性。
文档编号H04N7/32GK101188766SQ20071017981
公开日2008年5月28日 申请日期2007年12月18日 优先权日2007年12月18日
发明者季鹏飞 申请人:北京中星微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1