一种可变模式运动估计方法及可变模式运动估计装置的利记博彩app

文档序号:7946217阅读:282来源:国知局
专利名称:一种可变模式运动估计方法及可变模式运动估计装置的利记博彩app
技术领域
本发明涉及视频编码领域,尤其涉及一种可变模式运动估计方法及可 变模式运动估计装置。
背景技术
在视频编码中,视频序列相邻帧中存在着很大的时间冗余,而运动估 计和补偿技术可以有效的去除时间冗余,大幅度提高视频编码的效率。由 此可见运动估计是决定视频编码效率的一个重要因素,对运动估计方法的
研究也成为多年来^L频编码研究的重点。
其中,运动矢量预测则是运动估计的一种重要方式。MV(Motion Vector, 运动矢量)预测是计算运动矢量场的起始点。有效的预测运动矢量, 一方 面减少了运动估计的复杂度和计算量,另一方面也有利于去除时间数据冗 余,提高整个系统的^L频编码效率。
现有技术中最常见的运动估计方法是菱形搜索方法,其采用了两种搜 索模板,分别是有9个搜索点的LDSP (Large Diamond Search Pattern, 大模板)和有5个搜索点的SDSP (Small Diamond Search Pattern,小模 板),搜索时先用大冲莫板计算,当MBD (Minimum Block Distortion,最小 块误差)值最小点或者SAD (Sum of Absolute Difference,绝对差值和) 值最小点所处位置出现在模板中心点时,将LDSP换成SDSP,再进行匹配计 算,这时5个点中的MBD最小值点即为最优匹配点。
根据视频图像的运动特征,有90%以上的运动发生在水平方向和垂直方 向上,现有技术中采用LDSP和SDSP模板进行搜索时没有加强对水平方向 和垂直方向上搜索,在搜索过程中会搜索很多不必要的点,减少了搜索速度,降低了搜索效率。

发明内容
本发明提供了一种可变模式运动估计方法及可变模式运动估计装置, 其能提高搜索速度和效率。
本发明的技术方案是 一种可变模式运动估计方法,用于在执行运动 估计的处理过程中识别当前像素块的最佳运动矢量,包括步骤
步骤一、确定搜索起点;
步骤二、采用预定的大菱形模板进行搜索,计算该大菱形模板上的搜 索点处的SAD最小值,判断该SAD最小值与预定的SAD阈值大小,该预定 的SAD阈值大小由宏块的高度和宽度确定;如果大于,则执行步骤三;
步骤三、判断该SAD最小值点所处的位置,才艮据该SAD最小值点所处 位置,确定采用预定的水平菱形模板或垂直菱形模板或小菱形模板进行搜 索。
一种可变模式运动估计装置,用于在执行运动估计的处理过程中识别 当前像素块的最佳运动矢量,包括存储模块、起点预测模块、大模板搜 索模块、判断模块;
存储模块,用于预先存储大菱形模板、小菱形模板、水平菱形模板和 垂直菱形模板;
起点预测模块,用于确定搜索起点;
大模板搜索模块,在确定搜索起点后,从所述存储模块中提取所述大 菱形模板进行搜索,计算该大菱形模板上的搜索点处的SAD最小值,判断 该SAD最小值与预定的SAD阈值大小,该预定的SAD阈值大小由宏块的高 度和宽度确定;如果大于,则将该SAD最小值点所处位置发送给所述判断模块;
判断模块,用于判断该SAD最小值点所处位置,根据该SAD最小值点 所处位置,确定采用所述存储模块中的水平菱形模板或垂直菱形模板或小 菱形模板进行搜索。
本发明的可变模式运动估计方法和可变模式运动估计装置,在执行运 动估计的处理过程中识别当前像素块的最佳运动矢量时,根据搜索结果来 选择搜索模板,特别是增加了水平菱形模板和垂直菱形模板,加强了对水 平方向和垂直方向的搜索力度,由于90%以上的运动是发生在水平方向和垂 直方向,则在具有相同搜索精度的情况下采用本发明的运动估计方法,可 以比其他运动估计方法搜索更少的搜索点,从而具有更快的搜索速度,提 高了搜索效率,能更好的支持实时性强的^L频编码。


图i是本发明可变模式运动估计方法在一实施例中的流程图; 图2是本发明可变模式运动估计方法在一实施例中的流程图; 图3是本发明可变模式运动估计方法中大菱形模板的结构示意图; 图4是本发明可变模式运动估计方法中水平菱形模板的结构示意图; 图5是本发明可变模式运动估计方法中垂直菱形模板的结构示意图; 图6是本发明可变模式运动估计方法中小菱形模板的结构示意图; 图7是本发明可变^t式运动估计装置在一实施例中的结构原理框图; 图8是本发明可变模式运动估计装置在一实施例中的结构原理框图; 图9是本发明在一具体应用实施例中的示例图。
具体实施例方式
本发明的可变模式运动估计方法和可变模式运动估计装置,在执行运 动估计的处理过程中识别当前像素块的最佳运动矢量时,根据搜索结果来 选择搜索模板,特别是增加了水平菱形模板和垂直菱形模板,加强了对水
平方向和垂直方向的搜索力度,由于9oy。以上的运动是发生在水平方向和垂 直方向,则在具有相同搜索精度的情况下采用本发明的运动估计方法,可 以比其他运动估计方法搜索更少的搜索点,从而具有更快的搜索速度,能 更好的支持实时性强的视频编码。
下面结合附图和具体实施例对本发明做一详细的阐述。
本发明的可变模式运动估计方法,如图1,包括步骤
SlOl、确定搜索起点。可以根据运动矢量的变化情况来预测搜索起点。
在一实施例中,可以利用空间相关性,取已求出的当前帧的左、上、 右上邻块的运动矢量的中间值作为所述搜索起点;如,三矢量(xl, yl), (x2, y2), (x3, y3), middle (xl, x2, x3)为xl、 x2、 x3的中间值, middle (yl, y2, y3)为yl、 y2、 y3的中间{直,贝'J (middle (xl, x2, x3), middle (yl, y2, y3 ))为所求的矢量中间值,即为4叟索起点。
在一 实施例中,根据已求出的前一帧同位置块的运动矢量确定所述搜 索起点,前一帧同位置块可以为前一帧同位置的宏块,其中宏块是图像编 码的基本单位,视频编码不是以整帧图像来进行编码,而是将图像划分成 较小的宏块,然后对宏块进行编码。图像不同,宏块的划分一般也不同。
在一实施例中,也可以将原点作为所述搜索起点。
在一实施例中,利用宏块划分特点,根据与上层宏块相同的运动矢量 确定所述搜索起点。在一实施例中,利用空间相关性,根据已求出的前一 帧同位置块的运动矢量确定所述搜索起点。
85102、 采用预定的大菱形模板进行搜索,计算该大菱形模板上的搜索 点处的SAD最小值。大菱形模板是预先设定的,其形状如图3,由周围步长 为1的8个像素点与1个中心点构成.其a 9个控—索L采甩大菱形模 板进行搜索,计算该大菱形模板上的搜索点处的SAD最小值,是以原点为 大菱形模板中心点,在模板上的9个搜索点处分别计算SAD值。
5103、 判断该SAD最小值与预定的SAD阈值大小,该预定的SAD阔值 大小由宏块的高度和宽度确定;如果大于,则执行步骤SI04;否则,执行 步骤S108、确定该SAD最小值点所处位置为最佳运动矢量。
在一实施例中,预定的SAD阈值大小由宏块的高度和宽度确定,具体 为L=2mn,其中L为预定的SAD阈值,m为宏块的高度,n为宏块的宽度。
5104、 判断该SAD最小值点所处位置,根据该SAD最小值点所处位置 确定采用预定的水平菱形模板或垂直菱形模板或小菱形模板进行搜索;
在一具体实施例中,如果位于模板中心的水平方向,则执行步骤S105; 如果位于模板中心的垂直方向,则执行步骤S106;如果位于才莫板的中心点, 则执行步骤S107。所述水平方向为才莫板中心点的左方或右方;所述垂直方 向为模板中心点的上方或下方。
5105、 采用预定的水平菱形模板进行搜索,计算该水平菱形模板上的 搜索点处的SAD最小值,之后执行步骤S103。
水平菱形模板是预先设定的,其形状如图4,由水平方向上的两个三角 形与一中心点构成,每个三角形包括3个像素点,该水平菱形模板包括7 个搜索点。采用水平菱形模板进行搜索,计算该水平菱形模板上的搜索点 处的SAD最小值,是以原点为水平菱形模板的中心点,在模板上的7个搜 索点处分别计算SAD值。
5106、 采用预定的垂直菱形模板进行搜索,计算该垂直模板上的搜索 点的SAD最小值,之后执行步骤S103。该垂直菱形模板是预先设定的,其形状如图5,由垂直方向上的两个三 角形和一个中心点构成,每个三角形包括3个像素点,该垂直菱形模板包 括7个搜索点。采用垂直菱形模板进行搜索,计算该垂直模板上的搜索点 的SAD最小值,是以原点为垂直菱形模板中心点,在才莫板上的7个搜索点 处分别计算SAD值。
S107、采用预定的小菱形模板进行搜索,确定该小菱形模板上的搜索 点的SAD最小值,之后执行步骤S108。
该小菱形模板是预先设计好的,其形状如图6,由周围步长为1的4个 像素点和l个中心点构成,其包括5个搜索点。采用小菱形模板进行搜索, 确定该小菱形模板上的搜索点的SAD最小值,是以原点为小菱形模板中心 点,在模板上的5个搜索点分别计算SAD值,并找出SAD最小值。
本发明的可变模式运动估计方法,加强了对水平方向和垂直方向的搜 索力度,由于90%以上的运动是发生在水平方向和垂直方向,则在具有相同 搜索精度的情况下采用本发明的运动估计方法,可以比其他运动估计方法 搜索更少的搜索点,从而具有更快的搜索速度,能更好的支持实时性强的 4见频编石马。
在一实施例中,如图2,在步骤S101之后,步骤S102之前还可以包括 步骤S1010:计算所述搜索起点处的SAD最小值,判断该搜索起点处的SAD 最小值与所述预定的SAD阈值大小;如果大于,则执行步骤S102;否则, 结束搜索或执行步骤S108。这样,通过对搜索起点处的SAD值进行判断后, 再决定是否执行步骤S102,可以减少搜索时间,提高了搜索效率。
在一实施例中,步骤S103还可以包括步骤如果SAD最小值点所处位 置位于其他方向,其他方向包括模板中心的左上或左下或右上或右下,或 者位于模板上的搜索点处,则执行S102。本发明还揭示了 一种可变模式运动估计装置,用于在执行运动估计的
处理过程中识别当前像素块的最佳运动矢量,如图7,包括存储模块、起 点预测模块、大模板搜索模块、判断模块。
存储模块,用于预先存储有大菱形模板、小菱形模板、水平菱形模板 和垂直菱形模板。大菱形模板的形状如图3,由周围步长为1的8个像素点 与l个中心点构成,其包括9个搜索点。小菱形模板的形状如图6,由周围 步长为1的4个像素点和1个中心点构成,其包括5个搜索点。水平菱形 模板的形状如图4,由水平方向上的两个三角形与一中心点构成,每个三角 形包括3个像素点,该水平菱形模板包括7个搜索点。垂直菱形模板的形 状如图5,由垂直方向上的两个三角形和一个中心点构成,每个三角形包括 3个像素点,该垂直菱形模板包括7个搜索点。
起点预测模块,用于确定搜索起点。在一实施例中,根据已求出的前 一帧同位置块的运动矢量确定所述搜索起点,前一帧同位置块可以为前一 帧同位置的宏块,其中宏块是图像编码的基本单位,视频编码不是以整帧 图像来进行编码,而是将图像划分成较小的宏块,然后对宏块进行编码。 图像不同,宏块的划分一般也不同。在一实施例中,也可以将原点作为所 述搜索起点。在一实施例中,利用宏块划分特点,根据与上层宏块相同的 运动矢量确定所述搜索起点。在一实施例中,利用空间相关性,根据已求 出的前一帧同位置块的运动矢量确定所述搜索起点。
大模板搜索模块,在确定搜索起点后,从所述存储模块中提取所述大 菱形模板进行搜索,计算该大菱形模板上的搜索点处的SAD最小值,判断 该SAD最小值与预定的SAD阈值大小,该预定的SAD阔值大小由宏块的高 度和宽度确定;如果大于,则将该SAD最小值点所处位置发送给所述判断 模块;否则,确定该SAD最小值点所处位置为最佳运动矢量。提取所述大 菱形模板进行搜索,计算该大菱形模板上的搜索点处的SAD最小值,是以 原点为大菱形模板中心点,在模板上的9个搜索点处分别计算SAD值。在一实施例中,预定的SAD阈值大小由宏块的高度和宽度确定,具体为I^2mn, 其中L为预定的SAD阈值,m为宏块的高度,n为宏块的宽度。
判断模块,用于判断该SAD最小值点所处位置,根据该SAD最小值点 所处位置,从所述存储模块中提取所述水平菱形模板或垂直菱形模板或小 菱形模板进行搜索。
在一具体实施例中,如果位于模板中心的水平方向,则采用所述水平 菱形模板搜索,计算该水平菱形才莫板上的搜索点处的SAD最小值,判断该 SAD最小值与所述预定的SAD阈值大小,如果大于,则将该SAD最小值点所 处位置发送给所述判断模块;否则,确定该SAD最小值点所处位置为最佳 运动矢量。提取水平菱形模板进行搜索,计算该水平菱形模板上的搜索点 处的SAD最小值,是以原点为水平菱形模板的中心点,在模板上的7个搜 索点处分别计算SAD值。
如果位于模板中心的垂直方向,则采用所述垂直搜索模板进行搜索, 计算该垂直菱形模板上的搜索点处的SAD最小值,判断该SAD最小值与所 述预定的SAD阈值大小,如果大于,则将该SAD最小值点所处位置发送给 所述判断模块;否则,确定该SAD最小值点所处位置为最佳运动矢量。提 取所述垂直菱形模板进行搜索,计算该垂直菱形模板上的搜索点处的SAD 最小值,是以原点为垂直菱形模板中心点,在模板上的7个搜索点处分别 计算SAD值。
如果位于模板中心,则采用所述小菱形模板进行搜索,确定该小菱形 模板上的搜索点处的SAD最小值,确定该SAD最小值点所处位置为最佳运 动矢量。提取所述小菱形模板进行搜索,确定该小菱形模板上的搜索点处 的SAD最小值,是以原点为小菱形模板中心点,在才莫板上的5个搜索点分 别计算SAD值。
本发明的可变模式运动估计装置,加强了对水平方向和垂直方向的搜 索力度,由于90°/。以上的运动是发生在水平方向和垂直方向,则在具有相同搜索精度的情况下采用本发明的运动估计装置,可以搜索更少的搜索点, 从而具有更快的搜索速度,能更好的支持实时性强的视频编码。
在一实施例中,如图8,本发明可变^f莫式运动估计装置还包括计算处理
模块,连接在所述起点预测模块和所述大模板搜索模块之间,用于计算所
迷搜索起点处的SAD最小值,判断该搜索起点处的SAD最小值与预定的SAD 阈值大小;如果大于,则通知所述大模板搜索模块进行搜索。否则,通知 所述大模板搜索模块结束搜索或确定该搜索起点所处位置为最佳运动矢 量。这样,通过对搜索起点处的SAD值进行判断后,再决定是否通知大模 板搜索模块进行搜索,可以减少搜索时间,提高了搜索效率。
在一实施例中,所述判断模块,还用于在判断出SAD最小值点所处的 位置位于模板中心的左上或左下或右上或右下,或者位于模板上的搜索点 处时,通知所述大模板搜索模块搜索。
结合上述工作原理,下面阐述一个应用本发明可变才莫式运动估计方法 的具体实施例,如图9,包括步骤
第一步、它的预测搜索起点是在①的中心,采用大菱形模板进行搜索, 计算该大菱形模板上的9个搜索点处的SAD值,在大菱形模板上的9个搜 索点中,模板中心水平方向右侧的搜索点处的sad值最小;
第二步、由于SAD最小值点所处位置位于模板中心的水平方向,则采
用水平菱形模板进行水平方向搜索,搜索过的点不重复搜索,计算该水平 菱形模板上的各个搜索点处的SAD值,模板中心水平方向右侧的搜索点处 的sad值最小;
第三步、由于SAD最小值点所处位置位于模板中心的水平方向,则还 是釆用水平菱形模板进行水平方向搜索,计算该水平菱形模板上的7个搜 索点处的SAD值,确定才莫板中心右上侧的搜索点处的sad值最小;第四步、由于SAD最小值点所处位置位于模板中心右上,则以该搜索 点为中心进行大菱形模板搜索,搜索过的点不重复搜索,计算大菱形模板 上的各个搜索点处的SAD值,确定模板中心点的sad值最小;
第五步、由于SAD最小值点所处位置位于模板中心,则以模板中心为 中心进行小菱形模板搜索,计算小菱形模板上的各个搜索点的SAD值,确 定模板中心水平右侧的搜索点T处的sad值最小,确定该搜索点T为最佳 运动矢量。
以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任 何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含 在本发明的权利要求保护范围之内。
权利要求
1、一种可变模式运动估计方法,用于在执行运动估计的处理过程中识别当前像素块的最佳运动矢量,其特征在于,包括步骤步骤一、确定搜索起点;步骤二、采用预定的大菱形模板进行搜索,计算该大菱形模板上的搜索点处的SAD最小值,判断该SAD最小值与预定的SAD阈值大小,该预定的SAD阈值大小由宏块的高度和宽度确定;如果大于,则执行步骤三;步骤三、判断该SAD最小值点所处的位置,根据该SAD最小值点所处位置,确定采用预定的水平菱形模板或垂直菱形模板或小菱形模板进行搜索。
2、 根据权利要求1所述的可变模式运动估计方法,其特征在于在步骤 一之后,步骤二之前还包括步骤计算所述搜索起点处的SAD最小值,判断 该搜索起点处的SAD最小值与预定的SAD阔值大小;如果大于,则执行步骤
3、 根据权利要求1或2所述的可变模式运动估计方法,其特征在于步 骤一,具体为利用空间相关性,取已求出的当前帧的左、上、右上邻块的 运动矢量的中间值作为所述搜索起点;或将原点作为所述搜索起点;或利用 宏块划分特点,根据与上层宏块相同的运动矢量确定所述搜索起点;或利用 空间相关性,根据已求出的前一帧同位置块的运动矢量确定所述搜索起点。
4、 根据权利要求3所述的可变模式运动估计方法,其特征在于所述预 定的SAD阈值大小由所述宏块的高度和宽度确定,具体为L=2mn,其中L为 预定的SAD阈值,m为宏块的高度,n为宏块的宽度。
5、 根据权利要求1所述的可变模式运动估计方法,其特征在于所述预 步骤三进一步还包括如果SAD最小值点所处的位置位于模板中心的左上或 左下或右上或右下,或者位于模板上的搜索点处,则执行步骤二。
6、 根据权利要求1所述的可变模式运动估计方法,其特征在于根据该 SAD最小值点所处位置,确定采用预定的水平菱形》漠板或垂直菱形模板或小菱 形模板进行搜索,具体为在SAD最小值点所处位置位于模板中心的水平方向时,采用所述水平菱形模板进行搜索;在SAD最小值点所处位置位于模板 中心的垂直方向时,采用所述垂直菱形模板进行搜索;在SAD最小值点所处 位置位于模板中心时,采用所述小菱形模板进行搜索。
7、 一种可变模式运动估计装置,用于在执行运动估计的处理过程中识别 当前像素块的最佳运动矢量,其特征在于,包括存储模块、起点预测模块、 大模板搜索模块、判断模块;存储模块,用于预先存储大菱形模板、小菱形模板、水平菱形模板和垂 直菱形模板;起点预测模块,用于确定搜索起点;大模板搜索模块,在确定搜索起点后,从所述存储模块中提取所述大菱 形模板进行搜索,计算该大菱形模板上的搜索点处的SAD最小值,判断该SAD 最小值与预定的SAD阈值大小,该预定的SAD阔值大小由宏块的高度和宽度 确定;如果大于,则将该SAD最小值点所处位置发送给所述判断模块;判断模块,用于判断该SAD最小值点所处位置,根据该SAD最小值点所 处位置,确定从所述存储模块里提取水平菱形模板或垂直菱形模板或小菱形 模板进行搜索。
8、 根据权利要求7所述的可变模式运动估计装置,其特征在于还包括 计算处理模块,连接在所述起点预测模块和所述大模板搜索模块之间,用于 计算所述搜索起点处的SAD最小值,判断该搜索起点处的SAD最小值与预定 的SAD阈值大小;如果大于,则采用所述大模板搜索模块进行搜索。
9、 根据权利要求7或8所述的可变模式运动估计装置,其特征在于所 述起点预测模块确定所述搜索起点的步骤具体为利用空间相关性,取已求 出的当前帧的左、上、右上邻块的运动矢量的中间值作为所述搜索起点;或 将原点作为搜索起点;或利用宏块划分特点,根据与上层宏块相同的运动矢 量确定所述搜索起点;或利用空间相关性,根据已求出的前一帧同位置块的 运动矢量确定所述搜索起点。
10、 根据权利要求9所述的可变模式运动估计装置,其特征在于所述 预定的SAD阈值大小由所述宏块的高度和宽度确定,具体为L=2mn,其中L 为预定的SAD阈值,m为宏块的高度,n为宏块的宽度。
11、 根据权利要求7所述的可变模式运动估计装置,其特征在于所述 判断模块,还用于在判断出SAD最小值点所处的位置位于模板中心的左上、 左下、右上或右下,或者位于模板上的搜索点上时,通知所述大模板搜索模 块搜索。
12、 根据权利要求7所述的可变模式运动估计装置,其特征在于所述 判断模块根据该SAD最小值点所处位置,确定从所述存储模块里提取水平菱 形模板或垂直菱形模板或小菱形模板进行搜索,具体为在SAD最小值点所处位置位于模板中心的水平方向时,采用所述水平菱 形模板进行搜索;在SAD最小值点所处位置位于模板中心的垂直方向时,采 用所述垂直菱形模板进行搜索;在SAD最小值点所处位置位于模板中心时, 采用所述小菱形模板进行搜索。
全文摘要
本发明公开了一种可变模式运动估计方法及可变模式运动估计装置,用于在执行运动估计的处理过程中识别当前像素块的最佳运动矢量,该方法根据SAD最小值与预定的SAD阈值的大小关系来选择用大菱形模板、小菱形模板、水平菱形模板或垂直菱形模板搜索。本发明增加了水平菱形模板和垂直菱形模板,加强了对水平方向和垂直方向的搜索力度,由于90%以上的运动是发生在水平方向和垂直方向,则在具有相同搜索精度的情况下采用本发明的运动估计算法,可以比其他运动估计算法搜索更少的搜索点,从而具有更快的搜索速度,提高了搜索效率,能更好的支持实时性强的视频编码。
文档编号H04N7/26GK101511019SQ20091003788
公开日2009年8月19日 申请日期2009年3月13日 优先权日2009年3月13日
发明者石金川, 郑凤朝, 陈禄全 申请人:广东威创视讯科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1