CN105007493B - 基于运动搜索窗的匹配搜索方法和系统 - Google Patents

基于运动搜索窗的匹配搜索方法和系统 Download PDF

Info

Publication number
CN105007493B
CN105007493B CN201510425530.5A CN201510425530A CN105007493B CN 105007493 B CN105007493 B CN 105007493B CN 201510425530 A CN201510425530 A CN 201510425530A CN 105007493 B CN105007493 B CN 105007493B
Authority
CN
China
Prior art keywords
point
search
motion
search window
motion search
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.)
Active
Application number
CN201510425530.5A
Other languages
English (en)
Other versions
CN105007493A (zh
Inventor
陈家大
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.)
Zhuhai Jieli Technology Co Ltd
Original Assignee
Zhuhai Jieli Technology Co Ltd
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 Zhuhai Jieli Technology Co Ltd filed Critical Zhuhai Jieli Technology Co Ltd
Priority to CN201510425530.5A priority Critical patent/CN105007493B/zh
Publication of CN105007493A publication Critical patent/CN105007493A/zh
Application granted granted Critical
Publication of CN105007493B publication Critical patent/CN105007493B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明公开一种基于运动搜索窗的匹配搜索方法和系统,上述方法包括:针对当前帧的当前宏块,建立第一预设大小的运动搜索窗;计算各个初始迭代候选点的匹配代价,并将匹配代价最小的初始迭代候选点作为初始迭代点;通过初始迭代点在运动搜索框中确定出匹配搜索的目标位置;其中,各个初始迭代候选点包括:当前宏块、与当前宏块的运动向量预测值对应的点、与当前宏块相邻的已编码宏块以及运动搜索窗的中心位置对应的点。上述系统包括运动搜索窗建立模块、初始迭代点计算模块和目标位置确定模块。上述方法和系统使得匹配搜索不会只在当前宏块附近进行,且还能够保证所需带宽在可控的范围内。

Description

基于运动搜索窗的匹配搜索方法和系统
技术领域
本发明涉及视频编码技术领域,尤其涉及一种基于运动搜索窗的匹配搜索方法和系统。
背景技术
基于时域的相似性原理,不同帧相近区域的块的相似度较高。所以,编码器在处理当前帧的某个宏块时,访问参考帧的某个区域,找到最匹配的宏块,通过编码参考帧与当前帧对应区域的差异,来达到降低码率的目标。由于无法确定最匹配的区域的位置,所以需要在预估的较大的一个邻域中搜索匹配宏块。我们把这个邻域称为MSW(Motion SearchWindow,运动搜索窗),一般参考帧的尺寸较大,通常存放在编码器外部DRAM(DynamicRandom Access Memory,动态随机存取存储器)中,而在编码器内置一块MSW大小的SRAM(Static Random Access Memory,静态随机存储器),作为参考帧对应MSW的备份,加快编码器后续宏块匹配运算的效率。因此在宏块匹配过程中,就不可避免产生DRAM带宽的消耗。据统计,运动搜索过程是视频编码器运算量和带宽消耗最大的步骤。
按照DRAM带宽开销的情况来区分运动估计的方法,目前主要可分为两种,第一种方法是固定区域搜索法,即在参考帧的当前编码位置的一个固定大小的邻域中,搜索当前编码宏块的最匹配宏块。该方法的优点是带宽消耗固定可控,速度快,实现简单;缺点是搜索范围不灵活,对于运动剧烈场景的压缩效果较差。另一种方法是动态运动窗口法,即在当前宏块开始编码前,根据一些先验信息,提前确定一个参考帧的搜索范围,再在该范围中搜索匹配宏块。这种方法搜索范围较灵活,对运动剧烈的场景效果好于第一种方法,但缺点是每个宏块对应的搜索区域不同,导致带宽消耗不可控。
发明内容
基于此,有必要提供一种带宽的消耗可控的基于运动搜索窗的匹配搜索方法。
一种基于运动搜索窗的匹配搜索方法,包括以下步骤:
针对当前帧的当前宏块,建立第一预设大小的运动搜索窗;
计算各个初始迭代候选点的匹配代价,并将匹配代价最小的所述初始迭代候选点作为初始迭代点;
通过所述初始迭代点在所述运动搜索框中确定出匹配搜索的目标位置;
其中,各个所述初始迭代候选点包括:所述当前宏块、与所述当前宏块的运动向量预测值对应的点、与所述当前宏块相邻的已编码宏块以及所述运动搜索窗的中心位置对应的点。
在其中一个实施例中,所述运动搜索窗的移动方向为当前帧的水平方向,所述基于运动搜索窗的匹配搜索方法还包括:根据所述当前宏块的运动向量预测值确定所述运动搜索窗的移动步长。
在其中一个实施例中,所述根据所述当前宏块的运动向量预测值确定所述运动搜索窗的移动步长的方法为:
建立以所述当前宏块的运动向量预测值所对应的点为中心的第二预设大小的搜索区;
将所述运动搜索窗向右移动16个像素后,判断所述搜索区的点与所述运动搜索窗的位置关系:若所述搜索区的点全部位于所述运动搜索窗的内部,则所述运动搜索窗的移动步长为16;若所述搜索区的最左侧的点位于所述运动搜索窗的外部,则所述运动搜索窗的移动步长为零;若所述搜索区的最右侧的点位于所述运动搜索窗的外部,则所述运动搜索窗的移动步长为32;
其中,所述当前宏块的运动向量预测值为根据与所述当前宏块相邻的已编码宏块的运动向量计算得出的。
在其中一个实施例中,所述通过所述初始迭代点在所述运动搜索框中确定出匹配搜索的目标位置步骤包括:
将所述初始迭代点作为第一搜索模板的中心,计算所述第一搜索模板中的各个点的匹配代价;所述第一搜索模板中的各个点包括所述初始迭代点和以所述初始迭代点为中心并呈田字形对称位于所述初始迭代点周围的八个点,且所述第一搜索模板的各个点中于横轴或竖轴方向上相邻的点之间间隔第一预设距离;
将所述第一搜索模板中的匹配代价最小的点作为第二搜索模板的中心,计算所述第二搜索模板中的各个点的匹配代价;所述第二搜索模板中的各个点包括所述第一搜索模板中的匹配代价最小的点和以所述第一搜索模板中的匹配代价最小的点为中心呈田字形对称位于所述第一搜索模板中的匹配代价最小的点周围的八个点,且所述第二搜索模板的各个点中于横轴或竖轴方向上相邻的点之间间隔第二预设距离;
将所述第二搜索模板中的匹配代价最小的点作为第三搜索模板的中心,计算所述第三搜索模板中的各个点的匹配代价,将所述第三搜索模板中的匹配代价最小的点作为所述目标位置;所述第三搜索模板中的各个点包括所述第二搜索模板中的匹配代价最小的点和以所述第二搜索模板中的匹配代价最小的点为中心呈田字形对称位于所述第二搜索模板中的匹配代价最小的点周围的八个点,且所述第三搜索模板的各个点中于横轴或竖轴方向上相邻的点之间间隔第三预设距离。
在其中一个实施例中,若所述第一搜索模板中的第一位置的点不在所述运动搜索框内,则用所述运动搜索框中的第一替代点替代所述第一搜索模板中的第一位置的点;其中,所述第一替代点为所述运动搜索框中与所述第一搜索模板中的第一位置的点之间的欧氏距离最小的点;
若所述第二搜索模板中的第二位置的点不在所述运动搜索框内,则用所述运动搜索框中的第二替代点替代所述第二搜索模板中的第二位置的点;其中,所述第二替代点为所述运动搜索框中与所述第二搜索模板中的第二位置的点之间的欧氏距离最小的点;
若所述第三搜索模板中的第三位置的点不在所述运动搜索框内,则用所述运动搜索框中的第三替代点替代所述第三搜索模板中的第三位置的点;其中,所述第三替代点为所述运动搜索框中与所述第三搜索模板中的第三位置的点之间的欧氏距离最小的点。
在其中一个实施例中,所述运动搜索窗包括亮度运动搜索窗和色度运动搜索窗,所述亮度运动搜索窗的中心与所述色度运动搜索窗的中心重合,所述色度运动搜索窗的长度和宽度均为所述亮度运动搜索窗的长度和宽度的一半。
本发明还提出一种基于运动搜索窗的匹配搜索系统,包括运动搜索窗建立模块、初始迭代点计算模块和目标位置确定模块;
所述运动搜索窗建立模块,被配置以针对当前帧的当前宏块,建立第一预设大小的运动搜索窗;
所述初始迭代点计算模块,被配置以计算各个初始迭代候选点的匹配代价,并将匹配代价最小的所述初始迭代候选点作为初始迭代点;
所述目标位置确定模块,被配置以通过所述初始迭代点在所述运动搜索框中确定出匹配搜索的目标位置;
其中,各个所述初始迭代候选点包括:所述当前宏块、与所述当前宏块的运动向量预测值对应的点、与所述当前宏块相邻的已编码宏块以及所述搜索窗的中心位置对应的点。
在其中一个实施例中,所述运动搜索窗的移动方向为当前帧的水平方向,所述基于运动搜索窗的匹配搜索系统还包括移动步长计算模块,所述移动步长计算模块,被配置以根据所述当前宏块的运动向量预测值确定所述运动搜索窗的移动步长。
在其中一个实施例中,所述移动步长计算模块根据所述当前宏块的运动向量预测值确定所述运动搜索窗的移动步长的方法为:
建立以所述当前宏块的运动向量预测值所对应的点为中心的第二预设大小的搜索区;
将所述运动搜索窗向右移动16个像素后,判断所述搜索区的点与所述运动搜索窗的位置关系:若所述搜索区的点全部位于所述运动搜索窗的内部,则所述运动搜索窗的移动步长为16;若所述搜索区的最左侧的点位于所述运动搜索窗的外部,则所述运动搜索窗的移动步长为零;若所述搜索区的最右侧的点位于所述运动搜索窗的外部,则所述运动搜索窗的移动步长为32;
其中,所述当前宏块的运动向量预测值为根据与所述当前宏块相邻的已编码宏块的运动向量计算得出的。
在其中一个实施例中,所述目标位置确定模块通过所述初始迭代点在所述运动搜索框中确定出匹配搜索的目标位置的方法为:
将所述初始迭代点作为第一搜索模板的中心,计算所述第一搜索模板中的各个点的匹配代价;所述第一搜索模板中的各个点包括所述初始迭代点和以所述初始迭代点为中心并呈田字形对称位于所述初始迭代点四周的八个点,且所述第一搜索模板的各个点中于横轴或竖轴方向上相邻的点之间间隔第一预设距离;
将所述第一搜索模板中的匹配代价最小的点作为第二搜索模板的中心,计算所述第二搜索模板中的各个点的匹配代价;所述第二搜索模板中的各个点包括所述第一搜索模板中的匹配代价最小的点和以所述第一搜索模板中的匹配代价最小的点为中心呈田字形对称位于所述第一搜索模板中的匹配代价最小的点四周的八个点,且所述第二搜索模板的各个点中于横轴或竖轴方向上相邻的点之间间隔第二预设距离;
将所述第二搜索模板中的匹配代价最小的点作为第三搜索模板的中心,计算所述第三搜索模板中的各个点的匹配代价,将所述第三搜索模板中的匹配代价最小的点作为所述目标位置;所述第三搜索模板中的各个点包括所述第二搜索模板中的匹配代价最小的点和以所述第二搜索模板中的匹配代价最小的点为中心呈田字形对称位于所述第二搜索模板中的匹配代价最小的点四周的八个点,且所述第三搜索模板的各个点中于横轴或竖轴方向上相邻的点之间间隔第三预设距离。
在其中一个实施例中,所述目标位置确定模块还被配置为:
若所述第一搜索模板中的第一位置的点不在所述运动搜索框内,则用所述运动搜索框中的第一替代点替代所述第一搜索模板中的第一位置的点;其中,所述第一替代点为所述运动搜索框中与所述第一搜索模板中的第一位置的点之间的欧氏距离最小的点;
若所述第二搜索模板中的第二位置的点不在所述运动搜索框内,则用所述运动搜索框中的第二替代点替代所述第二搜索模板中的第二位置的点;其中,所述第二替代点为所述运动搜索框中与所述第二搜索模板中的第二位置的点之间的欧氏距离最小的点;
若所述第三搜索模板中的第三位置的点不在所述运动搜索框内,则用所述运动搜索框中的第三替代点替代所述第三搜索模板中的第三位置的点;其中,所述第三替代点为所述运动搜索框中与所述第三搜索模板中的第三位置的点之间的欧氏距离最小的点。
在其中一个实施例中,所述运动搜索窗包括亮度运动搜索窗和色度运动搜索窗,所述亮度运动搜索窗的中心与所述色度运动搜索窗的中心重合,所述亮度运动搜索窗的长度和宽度均为所述色度运动搜索窗的长度和宽度的一半。
上述基于运动搜索窗的匹配搜索方法和系统,建立第一预设大小的运动搜索窗后,将匹配代价最小的初始迭代候选点作为初始迭代点,并通过初始迭代点在运动搜索框中确定出匹配搜索的目标位置,使得匹配搜索不会只在当前宏块附近,且还能够保证所需带宽在可控的范围内。
附图说明
图1为本发明基于运动搜索窗的匹配搜索方法一个实施例的流程图;
图2为本发明基于运动搜索窗的匹配搜索方法一个实施例中根据当前宏块的运动向量预测值确定运动搜索窗的移动步长的流程图;
图3为本发明基于运动搜索窗的匹配搜索方法一个实施例中通过初始迭代点在运动搜索框中确定出匹配搜索的目标位置的流程图;
图4为本发明基于运动搜索窗的匹配搜索系统一个实施例的结构示意图;
图5为本发明一个实施例中运动搜索窗移动步长为16的判定示意图;
图6为本发明一个实施例中运动搜索窗移动步长为零的判定示意图;
图7为本发明一个实施例中运动搜索窗移动步长为32的判定示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下结合附图对本发明基于运动搜索窗的匹配搜索方法和系统的具体实施方式进行说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参见图1,一个实施例中,本发明基于运动搜索窗的匹配搜索方法包括以下步骤:
S100,针对当前帧的当前宏块,建立第一预设大小的运动搜索窗。
可以理解的,视频编码的顺序是按照宏块的光栅扫描顺序进行的,因此在编码一个宏块行的过程中,运动搜索窗的位置实际上也应沿着水平方向有对应的移动。即在编码下一个宏块时,上一个宏块的运动搜索窗所覆盖的范围与下一个宏块的运动搜索窗所覆盖的范围可能有较大重复。本实施例中,运动搜索窗的大小尺寸为大于等于48*48,即第一预设大小为大于等于48*48。且运动搜索窗在移动过程中,大小尺寸保持不变。一般的,运动搜索窗在每个宏块行的开始位置重新初始化,初始化后的位置以每个宏块行的第一个宏块为中心。
一个实施例中,运动搜索窗的移动方向为当前帧的水平方向。可以理解的,将运动搜索窗的移动方向设置成当前帧的水平方向,能够较小整个搜索过程对带宽的消耗,将整个搜索过程对带宽的消耗保持在一个可控的范围内。本发明基于运动搜索窗的匹配搜索方法还可以包括:根据当前宏块的运动向量预测值确定运动搜索窗的移动步长。
参见图2,一个实施例中,根据当前宏块的运动向量预测值确定运动搜索窗的移动步长的方法包括以下步骤:
S110,建立以当前宏块的运动向量预测值所对应的点为中心的第二预设大小的搜索区。
其中,当前宏块的运动向量预测值为根据与当前宏块相邻的已编码宏块的运动向量计算得出的。本实施例中,与当前宏块相邻的已编码宏块可以包括当前宏块左侧的宏块、当前宏块上侧的宏块、当前宏块右上侧的宏块和当前宏块左上侧的宏块。具体的,若当前宏块是宏块行的第一个宏块,运动搜索窗的位置以第一个宏块为中心;否则,计算当前宏块的运动向量预测值,将以计算得出的当前宏块的运动向量预测值为中心的第二预设大小的区域作为搜索区。若与当前宏块相邻的已编码宏块均不存在,则定义当前宏块的运动向量预测值为(0,0)。
本实施例中,搜索区的大小为48*48,即第二预设大小为48*48。
当前宏块的运动向量预测值的具体计算方法可参照H.264的运动向量预测值的计算方法,在此不再详述。
S120,将运动搜索窗向右移动16个像素后,判断搜索区的点与运动搜索窗的位置关系:若搜索区的点全部位于运动搜索窗的内部,则运动搜索窗的移动步长为16;若搜索区的最左侧的点位于运动搜索窗的外部,则运动搜索窗的移动步长为零;若搜索区的最右侧的点位于运动搜索窗的外部,则运动搜索窗的移动步长为32。
参见图5,下侧面积较小的实线区域为搜索区,面积较大的实线区域为未移动前的运动搜索窗,虚线区域为移动16个像素后的运动搜索窗。将运动搜索窗向右移动16个像素后,搜索区的点全部落在运动搜索窗的内部,因此运动搜索窗的移动步长为16。
参见图6,左下侧的面积较小的实线区域为搜索区,面积较大的实线区域为未移动前的运动搜索窗,虚线区域为移动16个像素后的运动搜索窗。将运动搜索窗向右移动16个像素后,搜索区的最左侧的点落在运动搜索窗的外部,因此运动搜索窗的移动步长为零。
参见图7,右下侧的面积较小的实线区域为搜索区,面积较大的实线区域为未移动前的运动搜索窗,虚线区域为移动16个像素后的运动搜索窗。将运动搜索窗向右移动16个像素后,搜索区的最右侧的点落在运动搜索窗的外部,因此运动搜索窗的移动步长为32。
本实施例中,运动搜索窗只做水平向右移动,移动的步长只有0、16和32三种情况,从而进一步减小对带宽的消耗。需要说明的是,若运动搜索窗移动到图像的右边界,则不再移动,直到编码新的宏块行,再重复运动搜索窗在本宏块行的移动动作。
采用上述根据当前宏块的运动向量预测值确定运动搜索窗的移动步长的方法,可以将运动搜索窗的水平移动控制在一个固定的偏移量中,从而减小带宽的消耗。例如,运动搜索窗的大小为112*80,当移动步长为零时,运动搜索窗的缓冲保持不变;当移动步长为16时,运动搜索窗移动的部分为16*80,而其他部分与未移动前的移动搜索窗的部分区域重复,因此,只需从参考帧加载16*80大小区域的数据即可;同理,当移动步长为32时,只需从参考帧加载32*80大小区域的数据即可。
另外,本实施例中的运动搜索窗包括亮度运动搜索窗和色度运动搜索窗。其中,亮度运动搜索窗的中心与色度运动搜索窗的中心重合,且色度运动搜索窗的长度和宽度均为亮度运动搜索窗的长度和宽度的一半。
S200,计算各个初始迭代候选点的匹配代价,并将匹配代价最小的初始迭代候选点作为初始迭代点。
其中,各个初始迭代候选点包括:当前宏块、与当前宏块的运动向量预测值对应的点、与当前宏块相邻的已编码宏块以及搜索窗的中心位置对应的点。本实施例中,与当前宏块相邻的已编码宏块可以包括当前宏块左侧的宏块、当前宏块上侧的宏块、当前宏块右上侧的宏块和当前宏块左上侧的宏块。另外,在计算各个初始迭代候选点的匹配代价的时候,若与当前宏块相邻的已编码宏块中的某个宏块的运动向量不存在,则可以定义该宏块的匹配代价为无限大。
计算出各个初始迭代候选点的匹配代价后,对各初始迭代候选点的匹配代价进行大小比较,将匹配代价最小的初始迭代候选点作为初始迭代点,并执行步骤S300。
S300,通过初始迭代点在运动搜索框中确定出匹配搜索的目标位置。
参见图3,一个实施例中,步骤S300可以包括以下步骤:
S310,将初始迭代点作为第一搜索模板的中心,计算第一搜索模板中的各个点的匹配代价。
其中,第一搜索模板中的各个点包括初始迭代点和以初始迭代点为中心并呈田字形对称位于初始迭代点周围的八个点。且第一搜索模板的各个点中于横轴或竖轴方向上相邻的点之间间隔第一预设距离。本实施例中,第一预设距离可以为8个像素。
例如,若定义初始迭代点的坐标为(0,0),则另外八个点的坐标为(0,8)、(8,8)、(8,0)、(8,-8)、(0,-8)、(-8,-8)、(-8,0)和(-8,8)。第一搜索模板就是由初始迭代点和以初始迭代点为中心并呈田字形对称位于初始迭代点周围的八个点构成的。计算本步骤中上述9个点的匹配代价,对计算出的匹配代价进行大小比较,然后将匹配代价最小的点作为第二搜索模板的中心。
优选的,若第一搜索模板中的第一位置的点不在运动搜索框内,则用运动搜索框中的第一替代点替代第一搜索模板中的第一位置的点,计算第一替代点的匹配代价。其中,第一替代点为运动搜索框中与第一搜索模板中的第一位置的点之间的欧氏距离最小的点。第一搜索模板中的第一位置的点为本步骤中上述9个点中的点。
需要说明的是,本实施例中,第一位置的点指代本步骤中上述9个点中的不在运动搜索窗内的点,因此第一位置的点可以指代本步骤中上述9个点中的一个以上的点,而第一替代点也对应为运动搜索框中的一个以上的点,且第一位置的点与第一替代点一一对应。例如,第一搜索模板中有三个点不在运动搜索窗内部,即第一位置的点为三个,则第一替代点的个数也为三个,每个第一替代点与该三个点中的一个点对应。
S320,将第一搜索模板中的匹配代价最小的点作为第二搜索模板的中心,计算第二搜索模板中的各个点的匹配代价。
其中,第二搜索模板中的各个点包括第一搜索模板中的匹配代价最小的点和以第一搜索模板中的匹配代价最小的点为中心并呈田字形对称位于第一搜索模板中的匹配代价最小的点周围的八个点。且第二搜索模板的各个点中于横轴或竖轴方向上相邻的点之间间隔第二预设距离。本实施例中,第二预设距离可以为3个像素。
例如,若定义第一搜索模板中的匹配代价最小的点的坐标为(0,0),则另外八个点的坐标为(0,3)、(3,3)、(3,0)、(3,-3)、(0,-3)、(-3,-3)、(-3,0)和(-3,3)。第二搜索模板就是由本步骤的上述9个点构成的。计算本步骤中上述9个点的匹配代价,对计算出的匹配代价进行大小比较,然后将匹配代价最小的点作为第三搜索模板的中心。
优选的,若第二搜索模板中的第二位置的点不在运动搜索框内,则用运动搜索框中的第二替代点替代第二搜索模板中的第二位置的点,计算第二替代点的匹配代价。其中,第二替代点为运动搜索框中与第二搜索模板中的第二位置的点之间的欧氏距离最小的点。第二搜索模板中的第二位置的点为本步骤中上述9个点中的点。
需要说明的是,本实施例中,第二位置的点指代本步骤中上述9个点中的不在运动搜索窗内的点,因此第二位置的点可以指代本步骤中上述9个点中的一个以上的点,而第二替代点也对应为运动搜索框中的一个以上的点,且第二位置的点与第二替代点一一对应。例如,第二搜索模板中有三个点不在运动搜索窗内部,即第二位置的点为三个,则第二替代点的个数也为三个,每个第二替代点与该三个点中的一个点对应。
S330,将第二搜索模板中的匹配代价最小的点作为第三搜索模板的中心,计算第三搜索模板中的各个点的匹配代价,将第三搜索模板中的匹配代价最小的点作为目标位置。
其中,第三搜索模板中的各个点包括第二搜索模板中的匹配代价最小的点和以第二搜索模板中的匹配代价最小的点为中心并呈田字形对称位于第二搜索模板中的匹配代价最小的点周围的八个点。且第三搜索模板的各个点中于横轴或竖轴方向上相邻的点之间间隔第三预设距离。本实施例中,第三预设距离可以为1个像素。
例如,若定义第一搜索模板中的匹配代价最小的点的坐标为(0,0),则另外八个点的坐标为(0,1)、(1,1)、(1,0)、(1,-1)、(0,-1)、(-1,-1)、(-1,0)和(-1,1)。第三搜索模板就是由本步骤的上述9个点构成的。计算本步骤中上述9个点的匹配代价,对计算出的匹配代价进行大小比较,然后将匹配代价最小的点作为匹配搜索的目标位置。
优选的,若第三搜索模板中的第三位置的点不在运动搜索框内,则用运动搜索框中的第三替代点替代第三搜索模板中的第三位置的点,计算第三替代点的匹配代价。其中,第三替代点为运动搜索框中与第三搜索模板中的第三位置的点之间的欧氏距离最小的点。第三搜索模板中的第三位置的点为本步骤中上述9个点中的点。
需要说明的是,本实施例中,第三位置的点指代本步骤中上述9个点中的不在运动搜索窗内的点,因此第三位置的点可以指代本步骤中上述9个点中的一个以上的点,而第三替代点也对应为运动搜索框中的一个以上的点,且第三位置的点与第上替代点一一对应。例如,第三搜索模板中有三个点不在运动搜索窗内部,即第三位置的点为三个,则第三替代点的个数也为三个,每个第三替代点与该三个点中的一个点对应。
上述三个搜索模板的相邻两个点的间隔分别为8、3和1,因此采用上述三个模板能够搜索到运动搜索窗中的每一个点。可以理解的,在其他实施例中,还可以采用其他方法通过初始迭代点在运动搜索框中确定出匹配搜索的目标位置,例如四步搜索法、菱形搜索法等。对于采用其他方法通过初始迭代点在运动搜索框中确定出匹配搜索的目标位置的过程,在此不再详述。
上述基于运动搜索窗的匹配搜索方法,建立第一预设大小的运动搜索窗后,将匹配代价最小的初始迭代候选点作为初始迭代点,并通过初始迭代点在运动搜索框中确定出匹配搜索的目标位置,使得匹配搜索不会只在当前宏块附近,且还能够保证所需带宽在可控的范围内。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
基于同一发明构思,本发明实施例提供一种基于运动搜索窗的匹配搜索系统,由于此系统解决问题的原理与前述一种基于运动搜索窗的匹配搜索方法相似,因此,该系统的实施可以按照前述方法的具体步骤实现,重复之处不再赘述。
参见图4,一个实施例中,本发明基于运动搜索窗的匹配搜索系统包括运动搜索窗建立模块100、初始迭代点计算模块200和目标位置确定模块300。
运动搜索窗建立模块100,被配置以针对当前帧的当前宏块,建立第一预设大小的运动搜索窗。
可以理解的,视频编码的顺序是按照宏块的光栅扫描顺序进行的,因此在编码一个宏块行的过程中,运动搜索窗的位置实际上也应沿着水平方向有对应的移动。即在编码下一个宏块时,上一个宏块的运动搜索窗所覆盖的范围与下一个宏块的运动搜索窗所覆盖的范围可能有较大重复。本实施例中,运动搜索窗的大小尺寸为大于等于48*48,即第一预设大小为大于等于48*48。且运动搜索窗在移动过程中,大小尺寸保持不变。一般的,运动搜索窗在每个宏块行的开始位置重新初始化,初始化后的位置以每个宏块行的第一个宏块为中心。
一个实施例中,运动搜索窗的移动方向为当前帧的水平方向。可以理解的,将运动搜索窗的移动方向设置成当前帧的水平方向,能够较小整个搜索过程对带宽的消耗,将整个搜索过程对带宽的消耗保持在一个可控的范围内。本发明基于运动搜索窗的匹配搜索系统还可以包括移动步长计算模块400。移动步长计算模块400,被配置以根据当前宏块的运动向量预测值确定运动搜索窗的移动步长。
优选的,移动步长计算模块400根据当前宏块的运动向量预测值确定运动搜索窗的移动步长的方法可以包括以下过程:
首先,建立以当前宏块的运动向量预测值所对应的点为中心的第二预设大小的搜索区。
其中,当前宏块的运动向量预测值为根据与当前宏块相邻的已编码宏块的运动向量计算得出的。本实施例中,与当前宏块相邻的已编码宏块可以包括当前宏块左侧的宏块、当前宏块上侧的宏块、当前宏块右上侧的宏块和当前宏块左上侧的宏块。具体的,若当前宏块是宏块行的第一个宏块,运动搜索窗的位置以第一个宏块为中心;否则,计算当前宏块的运动向量预测值,将以计算得出的当前宏块的运动向量预测值为中心的第二预设大小的区域作为搜索区。若与当前宏块相邻的已编码宏块均不存在,则定义当前宏块的运动向量预测值为(0,0)。
本实施例中,搜索区的大小为48*48,即第二预设大小为48*48。
当前宏块的运动向量预测值的具体计算方法可参照H.264的运动向量预测值的计算方法,在此不再详述。
然后,将运动搜索窗向右移动16个像素后,判断搜索区的点与运动搜索窗的位置关系:若搜索区的点全部位于运动搜索窗的内部,则运动搜索窗的移动步长为16;若搜索区的最左侧的点位于运动搜索窗的外部,则运动搜索窗的移动步长为零;若搜索区的最右侧的点位于运动搜索窗的外部,则运动搜索窗的移动步长为32。
参见图5,下侧面积较小的实线区域为搜索区,面积较大的实线区域为未移动前的运动搜索窗,虚线区域为移动16个像素后的运动搜索窗。将运动搜索窗向右移动16个像素后,搜索区的点全部落在运动搜索窗的内部,因此运动搜索窗的移动步长为16。
参见图6,左下侧的面积较小的实线区域为搜索区,面积较大的实线区域为未移动前的运动搜索窗,虚线区域为移动16个像素后的运动搜索窗。将运动搜索窗向右移动16个像素后,搜索区的最左侧的点落在运动搜索窗的外部,因此运动搜索窗的移动步长为零。
参见图7,右下侧的面积较小的实线区域为搜索区,面积较大的实线区域为未移动前的运动搜索窗,虚线区域为移动16个像素后的运动搜索窗。将运动搜索窗向右移动16个像素后,搜索区的最右侧的点落在运动搜索窗的外部,因此运动搜索窗的移动步长为32。
本实施例中,运动搜索窗只做水平向右移动,移动的步长只有0、16和32三种情况,从而进一步减小对带宽的消耗。需要说明的是,若运动搜索窗移动到图像的右边界,则不再移动,直到编码新的宏块行,再重复运动搜索窗在本宏块行的移动动作。
采用上述根据当前宏块的运动向量预测值确定运动搜索窗的移动步长的方法,可以将运动搜索窗的水平移动控制在一个固定的偏移量中,从而减小带宽的消耗。例如,运动搜索窗的大小为112*80,当移动步长为零时,运动搜索窗的缓冲保持不变;当移动步长为16时,运动搜索窗移动的部分为16*80,而其他部分与未移动前的移动搜索窗的部分区域重复,因此,只需从参考帧加载16*80大小区域的数据即可;同理,当移动步长为32时,只需从参考帧加载32*80大小区域的数据即可。
另外,本实施例中的运动搜索窗包括亮度运动搜索窗和色度运动搜索窗。其中,亮度运动搜索窗的中心与色度运动搜索窗的中心重合,且色度运动搜索窗的长度和宽度均为亮度运动搜索窗的长度和宽度的一半。
初始迭代点计算模块200,被配置以计算各个初始迭代候选点的匹配代价,并将匹配代价最小的初始迭代候选点作为初始迭代点。
其中,各个初始迭代候选点包括:当前宏块、与当前宏块的运动向量预测值对应的点、与当前宏块相邻的已编码宏块以及搜索窗的中心位置对应的点。本实施例中,与当前宏块相邻的已编码宏块可以包括当前宏块左侧的宏块、当前宏块上侧的宏块、当前宏块右上侧的宏块和当前宏块左上侧的宏块。另外,在计算各个初始迭代候选点的匹配代价的时候,若与当前宏块相邻的已编码宏块中的某个宏块的运动向量不存在,则可以定义该宏块的匹配代价为无限大。
计算出各个初始迭代候选点的匹配代价后,对各初始迭代候选点的匹配代价进行大小比较,将匹配代价最小的初始迭代候选点作为初始迭代点。
目标位置确定模块300,被配置以通过初始迭代点在运动搜索框中确定出匹配搜索的目标位置。
优选的,一个实施例中,目标位置确定模块300通过初始迭代点在运动搜索框中确定出匹配搜索的目标位置的方法可以包括以下过程:
首先,将初始迭代点作为第一搜索模板的中心,计算第一搜索模板中的各个点的匹配代价。
其中,第一搜索模板中的各个点包括初始迭代点和以初始迭代点为中心并呈田字形对称位于初始迭代点周围的八个点。且第一搜索模板的各个点中于横轴或竖轴方向上相邻的点之间间隔第一预设距离。本实施例中,第一预设距离可以为8个像素。
例如,若定义初始迭代点的坐标为(0,0),则另外八个点的坐标为(0,8)、(8,8)、(8,0)、(8,-8)、(0,-8)、(-8,-8)、(-8,0)和(-8,8)。第一搜索模板就是由初始迭代点和以初始迭代点为中心并呈田字形对称位于初始迭代点周围的八个点构成的。计算本步骤中上述9个点的匹配代价,对计算出的匹配代价进行大小比较,然后将匹配代价最小的点作为第二搜索模板的中心。
优选的,若第一搜索模板中的第一位置的点不在运动搜索框内,则用运动搜索框中的第一替代点替代第一搜索模板中的第一位置的点,计算第一替代点的匹配代价。其中,第一替代点为运动搜索框中与第一搜索模板中的第一位置的点之间的欧氏距离最小的点。第一搜索模板中的第一位置的点为本步骤中上述9个点中的点。
需要说明的是,本实施例中,第一位置的点指代本步骤中上述9个点中的不在运动搜索窗内的点,因此第一位置的点可以指代本步骤中上述9个点中的一个以上的点,而第一替代点也对应为运动搜索框中的一个以上的点,且第一位置的点与第一替代点一一对应。例如,第一搜索模板中有三个点不在运动搜索窗内部,即第一位置的点为三个,则第一替代点的个数也为三个,每个第一替代点与该三个点中的一个点对应。
然后,将第一搜索模板中的匹配代价最小的点作为第二搜索模板的中心,计算第二搜索模板中的各个点的匹配代价。
其中,第二搜索模板中的各个点包括第一搜索模板中的匹配代价最小的点和以第一搜索模板中的匹配代价最小的点为中心并呈田字形对称位于第一搜索模板中的匹配代价最小的点周围的八个点。且第二搜索模板的各个点中于横轴或竖轴方向上相邻的点之间间隔第二预设距离。本实施例中,第二预设距离可以为3个像素。
例如,若定义第一搜索模板中的匹配代价最小的点的坐标为(0,0),则另外八个点的坐标为(0,3)、(3,3)、(3,0)、(3,-3)、(0,-3)、(-3,-3)、(-3,0)和(-3,3)。第二搜索模板就是由本步骤的上述9个点构成的。计算本步骤中上述9个点的匹配代价,对计算出的匹配代价进行大小比较,然后将匹配代价最小的点作为第三搜索模板的中心。
优选的,若第二搜索模板中的第二位置的点不在运动搜索框内,则用运动搜索框中的第二替代点替代第二搜索模板中的第二位置的点,计算第二替代点的匹配代价。其中,第二替代点为运动搜索框中与第二搜索模板中的第二位置的点之间的欧氏距离最小的点。第二搜索模板中的第二位置的点为本步骤中上述9个点中的点。
需要说明的是,本实施例中,第二位置的点指代本步骤中上述9个点中的不在运动搜索窗内的点,因此第二位置的点可以指代本步骤中上述9个点中的一个以上的点,而第二替代点也对应为运动搜索框中的一个以上的点,且第二位置的点与第二替代点一一对应。例如,第二搜索模板中有三个点不在运动搜索窗内部,即第二位置的点为三个,则第二替代点的个数也为三个,每个第二替代点与该三个点中的一个点对应。
最后,将第二搜索模板中的匹配代价最小的点作为第三搜索模板的中心,计算第三搜索模板中的各个点的匹配代价,将第三搜索模板中的匹配代价最小的点作为目标位置。
其中,第三搜索模板中的各个点包括第二搜索模板中的匹配代价最小的点和以第二搜索模板中的匹配代价最小的点为中心并呈田字形对称位于第二搜索模板中的匹配代价最小的点周围的八个点。且第三搜索模板的各个点中于横轴或竖轴方向上相邻的点之间间隔第三预设距离。本实施例中,第三预设距离可以为1个像素。
例如,若定义第一搜索模板中的匹配代价最小的点的坐标为(0,0),则另外八个点的坐标为(0,1)、(1,1)、(1,0)、(1,-1)、(0,-1)、(-1,-1)、(-1,0)和(-1,1)。第三搜索模板就是由本步骤的上述9个点构成的。计算本步骤中上述9个点的匹配代价,对计算出的匹配代价进行大小比较,然后将匹配代价最小的点作为匹配搜索的目标位置。
优选的,若第三搜索模板中的第三位置的点不在运动搜索框内,则用运动搜索框中的第三替代点替代第三搜索模板中的第三位置的点,计算第三替代点的匹配代价。其中,第三替代点为运动搜索框中与第三搜索模板中的第三位置的点之间的欧氏距离最小的点。第三搜索模板中的第三位置的点为本步骤中上述9个点中的点。
需要说明的是,本实施例中,第一位置的点指代本步骤中上述9个点中的不在运动搜索窗内的点,因此第三位置的点可以指代本步骤中上述9个点中的一个以上的点,而第三替代点也对应为运动搜索框中的一个以上的点,且第三位置的点与第上替代点一一对应。例如,第三搜索模板中有三个点不在运动搜索窗内部,即第三位置的点为三个,则第三替代点的个数也为三个,每个第三替代点与该三个点中的一个点对应。
上述三个搜索模板的相邻两个点的间隔分别为8、3和1,因此采用上述三个模板能够搜索到运动搜索窗中的每一个点。可以理解的,在其他实施例中,还可以采用其他方法通过初始迭代点在运动搜索框中确定出匹配搜索的目标位置,例如四步搜索法、菱形搜索法等。对于采用其他方法通过初始迭代点在运动搜索框中确定出匹配搜索的目标位置的过程,在此不再详述。
上述基于运动搜索窗的匹配搜索系统,建立第一预设大小的运动搜索窗后,将匹配代价最小的初始迭代候选点作为初始迭代点,并通过初始迭代点在运动搜索框中确定出匹配搜索的目标位置,使得匹配搜索不会只在当前宏块附近,且还能够保证所需带宽在可控的范围内。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种基于运动搜索窗的匹配搜索方法,其特征在于,包括以下步骤:
针对当前帧的当前宏块,建立第一预设大小的运动搜索窗;
计算各个初始迭代候选点的匹配代价,并将匹配代价最小的所述初始迭代候选点作为初始迭代点;
通过所述初始迭代点在所述运动搜索窗中确定出匹配搜索的目标位置;
其中,各个所述初始迭代候选点包括:所述当前宏块、与所述当前宏块的运动向量预测值对应的点、与所述当前宏块相邻的已编码宏块以及所述运动搜索窗的中心位置对应的点;
通过所述初始迭代点在所述运动搜索窗中确定出匹配搜索的目标位置,包括:
将所述初始迭代点作为第一搜索模板的中心,计算所述第一搜索模板中的各个点的匹配代价;
将所述第一搜索模板中的匹配代价最小的点作为第二搜索模板的中心,计算所述第二搜索模板中的各个点的匹配代价;
将所述第二搜索模板中的匹配代价最小的点作为第三搜索模板的中心,计算所述第三搜索模板中的各个点的匹配代价,将所述第三搜索模板中的匹配代价最小的点作为所述目标位置;
所述运动搜索窗的移动方向为当前帧的水平方向,所述基于运动搜索窗的匹配搜索方法还包括:根据所述当前宏块的运动向量预测值确定所述运动搜索窗的移动步长。
2.根据权利要求1所述的基于运动搜索窗的匹配搜索方法,其特征在于,所述根据所述当前宏块的运动向量预测值确定所述运动搜索窗的移动步长的方法为:
建立以所述当前宏块的运动向量预测值所对应的点为中心的第二预设大小的搜索区;
将所述运动搜索窗向右移动16个像素后,判断所述搜索区的点与所述运动搜索窗的位置关系:若所述搜索区的点全部位于所述运动搜索窗的内部,则所述运动搜索窗的移动步长为16;若所述搜索区的最左侧的点位于所述运动搜索窗的外部,则所述运动搜索窗的移动步长为零;若所述搜索区的最右侧的点位于所述运动搜索窗的外部,则所述运动搜索窗的移动步长为32;
其中,所述当前宏块的运动向量预测值为根据与所述当前宏块相邻的已编码宏块的运动向量计算得出的。
3.根据权利要求1所述的基于运动搜索窗的匹配搜索方法,其特征在于,
所述第一搜索模板中的各个点包括所述初始迭代点和以所述初始迭代点为中心并呈田字形对称位于所述初始迭代点周围的八个点,且所述第一搜索模板的各个点中于横轴或竖轴方向上相邻的点之间间隔第一预设距离;
所述第二搜索模板中的各个点包括所述第一搜索模板中的匹配代价最小的点和以所述第一搜索模板中的匹配代价最小的点为中心呈田字形对称位于所述第一搜索模板中的匹配代价最小的点周围的八个点,且所述第二搜索模板的各个点中于横轴或竖轴方向上相邻的点之间间隔第二预设距离;
所述第三搜索模板中的各个点包括所述第二搜索模板中的匹配代价最小的点和以所述第二搜索模板中的匹配代价最小的点为中心呈田字形对称位于所述第二搜索模板中的匹配代价最小的点周围的八个点,且所述第三搜索模板的各个点中于横轴或竖轴方向上相邻的点之间间隔第三预设距离。
4.根据权利要求3所述的基于运动搜索窗的匹配搜索方法,其特征在于,若所述第一搜索模板中的第一位置的点不在所述运动搜索窗内,则用所述运动搜索窗中的第一替代点替代所述第一搜索模板中的第一位置的点;其中,所述第一替代点为所述运动搜索窗中与所述第一搜索模板中的第一位置的点之间的欧氏距离最小的点,第一位置的点为所述第一搜索模板中的各个点中的点;
若所述第二搜索模板中的第二位置的点不在所述运动搜索窗内,则用所述运动搜索窗中的第二替代点替代所述第二搜索模板中的第二位置的点;其中,所述第二替代点为所述运动搜索窗中与所述第二搜索模板中的第二位置的点之间的欧氏距离最小的点,第二位置的点为所述第二搜索模板中各个点中的点;
若所述第三搜索模板中的第三位置的点不在所述运动搜索窗内,则用所述运动搜索窗中的第三替代点替代所述第三搜索模板中的第三位置的点;其中,所述第三替代点为所述运动搜索窗中与所述第三搜索模板中的第三位置的点之间的欧氏距离最小的点,第三位置的点为所述第三搜索模板中各个点中的点。
5.根据权利要求1至4任意一项所述的基于运动搜索窗的匹配搜索方法,其特征在于,所述运动搜索窗包括亮度运动搜索窗和色度运动搜索窗,所述亮度运动搜索窗的中心与所述色度运动搜索窗的中心重合,所述色度运动搜索窗的长度和宽度均为所述亮度运动搜索窗的长度和宽度的一半。
6.一种基于运动搜索窗的匹配搜索系统,其特征在于,包括运动搜索窗建立模块、初始迭代点计算模块和目标位置确定模块;
所述运动搜索窗建立模块,被配置以针对当前帧的当前宏块,建立第一预设大小的运动搜索窗;
所述初始迭代点计算模块,被配置以计算各个初始迭代候选点的匹配代价,并将匹配代价最小的所述初始迭代候选点作为初始迭代点;
所述目标位置确定模块,被配置以通过所述初始迭代点在所述运动搜索窗中确定出匹配搜索的目标位置;
其中,各个所述初始迭代候选点包括:所述当前宏块、与所述当前宏块的运动向量预测值对应的点、与所述当前宏块相邻的已编码宏块以及所述搜索窗的中心位置对应的点;
所述目标位置确定模块,被配置以通过所述初始迭代点在所述运动搜索窗中确定出匹配搜索的目标位置,包括:
将所述初始迭代点作为第一搜索模板的中心,计算所述第一搜索模板中的各个点的匹配代价;
将所述第一搜索模板中的匹配代价最小的点作为第二搜索模板的中心,计算所述第二搜索模板中的各个点的匹配代价;
将所述第二搜索模板中的匹配代价最小的点作为第三搜索模板的中心,计算所述第三搜索模板中的各个点的匹配代价,将所述第三搜索模板中的匹配代价最小的点作为所述目标位置;
所述运动搜索窗的移动方向为当前帧的水平方向,所述基于运动搜索窗的匹配搜索系统还包括移动步长计算模块,所述移动步长计算模块,被配置以根据所述当前宏块的运动向量预测值确定所述运动搜索窗的移动步长。
7.根据权利要求6所述的基于运动搜索窗的匹配搜索系统,其特征在于,所述移动步长计算模块根据所述当前宏块的运动向量预测值确定所述运动搜索窗的移动步长的方法为:
建立以所述当前宏块的运动向量预测值所对应的点为中心的第二预设大小的搜索区;
将所述运动搜索窗向右移动16个像素后,判断所述搜索区的点与所述运动搜索窗的位置关系:若所述搜索区的点全部位于所述运动搜索窗的内部,则所述运动搜索窗的移动步长为16;若所述搜索区的最左侧的点位于所述运动搜索窗的外部,则所述运动搜索窗的移动步长为零;若所述搜索区的最右侧的点位于所述运动搜索窗的外部,则所述运动搜索窗的移动步长为32;
其中,所述当前宏块的运动向量预测值为根据与所述当前宏块相邻的已编码宏块的运动向量计算得出的。
8.根据权利要求6所述的基于运动搜索窗的匹配搜索系统,其特征在于,所述第一搜索模板中的各个点包括所述初始迭代点和以所述初始迭代点为中心并呈田字形对称位于所述初始迭代点四周的八个点,且所述第一搜索模板的各个点中于横轴或竖轴方向上相邻的点之间间隔第一预设距离;
所述第二搜索模板中的各个点包括所述第一搜索模板中的匹配代价最小的点和以所述第一搜索模板中的匹配代价最小的点为中心呈田字形对称位于所述第一搜索模板中的匹配代价最小的点四周的八个点,且所述第二搜索模板的各个点中于横轴或竖轴方向上相邻的点之间间隔第二预设距离;
所述第三搜索模板中的各个点包括所述第二搜索模板中的匹配代价最小的点和以所述第二搜索模板中的匹配代价最小的点为中心呈田字形对称位于所述第二搜索模板中的匹配代价最小的点四周的八个点,且所述第三搜索模板的各个点中于横轴或竖轴方向上相邻的点之间间隔第三预设距离。
9.根据权利要求8所述的基于运动搜索窗的匹配搜索系统,其特征在于,所述目标位置确定模块还被配置为:
若所述第一搜索模板中的第一位置的点不在所述运动搜索窗内,则用所述运动搜索窗中的第一替代点替代所述第一搜索模板中的第一位置的点;其中,所述第一替代点为所述运动搜索窗中与所述第一搜索模板中的第一位置的点之间的欧氏距离最小的点,第一位置的点为所述第一搜索模板中的各个点中的点;
若所述第二搜索模板中的第二位置的点不在所述运动搜索窗内,则用所述运动搜索窗中的第二替代点替代所述第二搜索模板中的第二位置的点;其中,所述第二替代点为所述运动搜索窗中与所述第二搜索模板中的第二位置的点之间的欧氏距离最小的点,第二位置的点为所述第二搜索模板中各个点中的点;
若所述第三搜索模板中的第三位置的点不在所述运动搜索窗内,则用所述运动搜索窗中的第三替代点替代所述第三搜索模板中的第三位置的点;其中,所述第三替代点为所述运动搜索窗中与所述第三搜索模板中的第三位置的点之间的欧氏距离最小的点,第三位置的点为所述第三搜索模板中各个点中的点。
10.根据权利要求6至9任意一项所述的基于运动搜索窗的匹配搜索系统,其特征在于,所述运动搜索窗包括亮度运动搜索窗和色度运动搜索窗,所述亮度运动搜索窗的中心与所述色度运动搜索窗的中心重合,所述亮度运动搜索窗的长度和宽度均为所述色度运动搜索窗的长度和宽度的一半。
CN201510425530.5A 2015-07-17 2015-07-17 基于运动搜索窗的匹配搜索方法和系统 Active CN105007493B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510425530.5A CN105007493B (zh) 2015-07-17 2015-07-17 基于运动搜索窗的匹配搜索方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510425530.5A CN105007493B (zh) 2015-07-17 2015-07-17 基于运动搜索窗的匹配搜索方法和系统

Publications (2)

Publication Number Publication Date
CN105007493A CN105007493A (zh) 2015-10-28
CN105007493B true CN105007493B (zh) 2018-06-29

Family

ID=54379981

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510425530.5A Active CN105007493B (zh) 2015-07-17 2015-07-17 基于运动搜索窗的匹配搜索方法和系统

Country Status (1)

Country Link
CN (1) CN105007493B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110351565B (zh) * 2018-04-02 2021-08-03 浙江大学 一种参考区域运动矢量导出方法及装置
CN112738517B (zh) * 2019-10-14 2022-03-01 珠海格力电器股份有限公司 运动估计搜索方法、装置、设备及存储介质
CN113365081B (zh) * 2021-05-27 2023-02-07 深圳市杰理微电子科技有限公司 视频编码中运动估计优化方法与装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69409816T2 (de) * 1993-09-08 1998-08-13 Thomson Multimedia Sa Verfahren und vorrichtung zur bewegungsschätzung mittels blockzusammenpassung
US6049362A (en) * 1996-02-14 2000-04-11 International Business Machines Corporation Dual prime motion estimation system and method
CN101090502A (zh) * 2006-06-13 2007-12-19 中兴通讯股份有限公司 预测质量可控的快速运动估值方法
CN102143364A (zh) * 2011-04-19 2011-08-03 浙江大学 一种基于遗传搜索和模板匹配的运动估计方法
CN104469380A (zh) * 2014-12-25 2015-03-25 中国电子科技集团公司第四十一研究所 基于h.264/avc标准的视频图像预测搜索方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009505477A (ja) * 2005-08-12 2009-02-05 エヌエックスピー ビー ヴィ ディジタル画像安定化のための方法及びシステム
US7852940B2 (en) * 2005-10-20 2010-12-14 Qualcomm Incorporated Scalable motion estimation for video encoding
CN101600108B (zh) * 2009-06-26 2011-02-02 北京工业大学 一种多视点视频编码中的运动和视差联合估计方法
CN102075760B (zh) * 2010-10-27 2012-11-21 无锡中星微电子有限公司 快速运动估计方法及装置
CN103841427B (zh) * 2012-11-27 2016-12-21 炬芯(珠海)科技有限公司 一种搜索窗的滑动方法及其装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69409816T2 (de) * 1993-09-08 1998-08-13 Thomson Multimedia Sa Verfahren und vorrichtung zur bewegungsschätzung mittels blockzusammenpassung
US6049362A (en) * 1996-02-14 2000-04-11 International Business Machines Corporation Dual prime motion estimation system and method
CN101090502A (zh) * 2006-06-13 2007-12-19 中兴通讯股份有限公司 预测质量可控的快速运动估值方法
CN102143364A (zh) * 2011-04-19 2011-08-03 浙江大学 一种基于遗传搜索和模板匹配的运动估计方法
CN104469380A (zh) * 2014-12-25 2015-03-25 中国电子科技集团公司第四十一研究所 基于h.264/avc标准的视频图像预测搜索方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
A Predictive and Pattern Based PSO Approach for Motion Estimation in Video Coding;J. D. Jijil Britto, et al;《Communications and Signal Processing(ICCSP), 2014 International Conference》;20140405;第1573-1574页 *

Also Published As

Publication number Publication date
CN105007493A (zh) 2015-10-28

Similar Documents

Publication Publication Date Title
US11902563B2 (en) Encoding and decoding method and device, encoder side apparatus and decoder side apparatus
CN104702955B (zh) 屏幕视频的预测编码的方法与系统
CN101431675B (zh) 一种像素运动估计方法和装置
CN105007493B (zh) 基于运动搜索窗的匹配搜索方法和系统
CN103188496A (zh) 基于运动矢量分布预测的快速运动估计视频编码方法
CN102291581B (zh) 支持帧场自适应运动估计的实现方法
CN105100807A (zh) 一种基于运动矢量后处理的帧率提升方法
CN101605262B (zh) 可变块尺寸运动预测方法和装置
CN105791824B (zh) 基于边缘点密度的屏幕内容编码预测模式快速选择方法
EP3376768A1 (en) Image processing device, decoding method, intra-frame decoder, method of decoding intra-frame and intra-frame encoder
CN109660800A (zh) 运动估计方法、装置、电子设备及计算机可读存储介质
Li et al. Context-adaptive fast motion estimation of HEVC
CN107360419A (zh) 一种基于透视模型的运动前视视频帧间预测编码方法
CN105516726A (zh) 视频编码的运动补偿匹配方法和系统
CN103338377A (zh) 用于确定运动估计中最优运动矢量的方法
CN102647598A (zh) 基于极大极小mv差值的h.264帧间模式优化方法
CN101888546A (zh) 一种运动估计的方法及装置
CN102088610B (zh) 视频编解码器及运动估计方法
CN100401779C (zh) 用于分级运动估计的方法
JP2016063358A (ja) 符号化回路、符号化方法
JP7334272B2 (ja) コーデック方法、デバイス及びその機器
CN109951713B (zh) 一种用于视频去隔行的运动估计补偿电路及方法
TWI401970B (zh) 在多媒體系統晶片設計中的低電量且高效率的快速移動評估超大型積體電路
CN103841427B (zh) 一种搜索窗的滑动方法及其装置
US20210233280A1 (en) Encoding device control method and device, and storage medium

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 519085 Guangdong city of Zhuhai province Jida West Road No. 107 Building 9 Building (1-4)

Applicant after: Zhuhai jelee Polytron Technologies Inc

Address before: 519085 Guangdong city of Zhuhai province Jida West Road No. 107 Building 9 Building

Applicant before: Zhuhai Jieli Technology Co., Ltd.

COR Change of bibliographic data
GR01 Patent grant
GR01 Patent grant
CP02 Change in the address of a patent holder
CP02 Change in the address of a patent holder

Address after: 519000 No. 333, Kexing Road, Xiangzhou District, Zhuhai City, Guangdong Province

Patentee after: ZHUHAI JIELI TECHNOLOGY Co.,Ltd.

Address before: Floor 1-107, building 904, ShiJiHua Road, Zhuhai City, Guangdong Province

Patentee before: ZHUHAI JIELI TECHNOLOGY Co.,Ltd.