发明内容
本发明所要解决的技术问题是提供一种块匹配中动态调整搜索窗大小的方法和装置,能够在保证匹配的精确度的前提下,减少计算量。
为了解决上述问题,本发明公开了一种动态调整搜索窗大小的方法,包括:
计算当前帧和参考帧的帧间相关系数;所述帧间相关系数为当前帧各点像素值之和与参考帧各点像素值之和的差的绝对值;
当所求得的帧间相关系数在第一预置阈值范围之内时,将搜索窗的大小减小为M1×N1;其中,所述搜索窗的初始大小为M0×N0;M1<M0,N1<N0。
优选的,所述方法还包括:
针对当前帧中待搜索的目标块,计算所述目标块像素的块内相关系数;所述块内相关系数为目标块上的每一点像素与各点像素算术平均值的差的绝对值之和;
当所求得的块内相关系数在第二预置阈值范围之内时,将搜索窗的大小减小为M2×N2;M2<M0,N2<N0。
优选的,所述第一预置阈值范围为:小于2A;其中,A为当前帧像素的个数。
优选的,依据帧间相关系数减小搜索窗的大小,具体为:
当所述帧间相关系数在大于等于A小于2A范围内时,M1在大于等于M0/2小于M0的范围内等比例取值,N1在大于等于N0/2小于N0的范围内等比例取值;
当所述帧间相关系数在大于等于A/2小于A范围内时,M1在大于等于5小于M0/2的范围内等比例取值,N1在大于等于5小于N0/2的范围内等比例取值;
其中,依据帧间相关系数搜索窗的大小最小调整为5×5;M1和N1取值为正整数。
优选的,所述第二预置阈值范围为小于2B;其中,B为目标块像素的个数。
优选的,依据块内相关系数减小搜索窗的大小,具体为:
当所述块内相关系数在大于等于B小于2B范围内时,M2在大于等于M/2小于M的范围内等比例取值,N2在大于等于N/2小于N的范围内等比例取值;
当所述块内相关系数在大于等于B/2小于B范围内时,M2在大于等于5小于M/2的范围内等比例取值,N2在大于等于5小于N/2的范围内等比例取值;
其中,依据帧间相关系数搜索窗的大小减小时,M取值为M1;依据帧间相关系数搜索窗的大小未做调整时,M取值为M0;依据块内相关系数搜索窗的大小最小调整为5×5;M2和N2取值为正整数。
进一步,本发明还公开了一种动态调整搜索窗大小的装置,包括:
帧间相关系数计算单元,用于计算当前帧和参考帧的帧间相关系数;所述帧间相关系数为当前帧各点像素值之和与参考帧各点像素值之和的差的绝对值;
第一搜索窗调整单元,用于当所求得的帧间相关系数在第一预置阈值范围之内时,将搜索窗的大小减小为M1×N1;其中,所述搜索窗的初始大小为M0×N0;M1<M0,N1<N0。
优选的,所述装置还包括:
块内相关系数计算单元,用于针对当前帧中待搜索的目标块,计算所述目标块像素的块内相关系数;所述块内相关系数为目标块上的每一点像素与各点像素算术平均值的差的绝对值之和;
第二搜索窗调整单元,用于当所求得的块内相关系数在第二预置阈值范围之内时,将搜索窗的大小减小为M2×N2;M2<M0,N2<N0。
优选的,所述第一预置阈值范围为:小于2A;其中,A为当前帧像素的个数。
优选的,所述第一搜索窗调整单元依据帧间相关系数减小搜索窗的大小,具体为:
当所述帧间相关系数在大于等于A小于2A范围内时,M1在大于等于M0/2小于M0的范围内等比例取值,N1在大于等于N0/2小于N0的范围内等比例取值;
当所述帧间相关系数在大于等于A/2小于A范围内时,M1在大于等于5小于M0/2的范围内等比例取值,N1在大于等于5小于N0/2的范围内等比例取值;
其中,依据帧间相关系数搜索窗的大小最小调整为5×5;M1和N1取值为正整数。
优选的,所述第二预置阈值范围为小于2B;其中,B为目标块像素的个数。
优选的,所述第二搜索窗调整单元依据块内相关系数减小搜索窗的大小,具体为:
当所述块内相关系数在大于等于B小于2B范围内时,M2在大于等于M/2小于M的范围内等比例取值,N2在大于等于N/2小于N的范围内等比例取值;
当所述块内相关系数在大于等于B/2小于B范围内时,M2在大于等于5小于M/2的范围内等比例取值,N2在大于等于5小于N/2的范围内等比例取值;
其中,依据帧间相关系数搜索窗的大小减小时,M取值为M1;依据帧间相关系数搜索窗的大小未做调整时,M取值为M0;依据块内相关系数搜索窗的大小最小调整为5×5;M2和N2取值为正整数。
此外,本发明还公开了一种块匹配方法,包括:
计算当前帧和参考帧的帧间相关系数;所述帧间相关系数为当前帧各点像素值之和与参考帧各点像素值之和的差的绝对值;
当所求得的帧间相关系数在第一预置阈值范围之内时,将搜索窗的大小减小为M1×N1;其中,所述搜索窗的初始大小为M0×N0;M1<M0,N1<N0;
在参考帧中的搜索窗内,搜索当前帧中待搜索的目标块的匹配块。
优选的,搜索匹配块之前,所述方法还包括:
针对当前帧中待搜索的目标块,计算所述目标块像素的块内相关系数;所述块内相关系数为目标块上的每一点像素与各点像素算术平均值的差的绝对值之和;
当所求得的块内相关系数在第二预置阈值范围之内时,将搜索窗的大小减小为M2×N2;M2<M0,N2<N0。
优选的,所述第一预置阈值范围为:小于2A;其中,A为当前帧像素的个数。
优选的,所述第二预置阈值范围为小于2B;其中,B为目标块像素的个数。
优选的,所述搜索当前帧中待搜索的目标块的匹配块,具体为:
按照预置规则选取搜索窗中的各个块,计算目标块与搜索窗中块的像素差的绝对值之和,将计算得到最小值的块作为目标块的匹配块。
进一步,本发明还公开了一种块匹配装置,包括:
帧间相关系数计算单元,用于计算当前帧和参考帧的帧间相关系数;所述帧间相关系数为当前帧各点像素值之和与参考帧各点像素值之和的差的绝对值;
第一搜索窗调整单元,用于当所求得的帧间相关系数在第一预置阈值范围之内时,将搜索窗的大小减小为M1×N1;其中,所述搜索窗的初始大小为M0×N0;M1<M0,N1<N0;
匹配块搜索单元,用于在参考帧中的搜索窗内,搜索当前帧中待搜索的目标块的匹配块。
优选的,所述装置还包括:
块内相关系数计算单元,用于针对当前帧中待搜索的目标块,计算所述目标块像素的块内相关系数;所述块内相关系数为目标块上的每一点像素与各点像素算术平均值的差的绝对值之和;
第二搜索窗调整单元,用于当所求得的块内相关系数在第二预置阈值范围之内时,将搜索窗的大小减小为M2×N2;M2<M0,N2<N0。
优选的,所述第一预置阈值范围为:小于2A;其中,A为当前帧像素的个数。
优选的,所述第二预置阈值范围为小于2B;其中,B为目标块像素的个数。
优选的,所述匹配块搜索单元搜索当前帧中待搜索的目标块的匹配块,具体为:
按照预置规则选取搜索窗中的各个块,计算目标块与搜索窗中块的像素差的绝对值之和,将计算得到最小值的块作为目标块的匹配块。
与现有技术相比,本发明具有以下优点:
本发明通过计算当前帧和参考帧的帧间相关系数(即当前帧各点像素值之和与参考帧各点像素值之和的差的绝对值),当所求得的帧间相关系数在第一预置阈值范围之内时,则减小搜索窗的大小。本发明提出的方法,依据两帧图像内容的相关性,来确定合适的搜索窗的大小,能够在块匹配算法保证准确度的前提下,减少所需匹配的点,减少了计算的复杂度。
进一步,通过目标块的块内相关系数作为进一步调整搜索窗大小的依据,即计算目标块上的各点像素与像素算术平均值的差的绝对值之和;当所求得的块内相关系数在第二预置阈值范围之内时,则减小搜索窗的大小。由于考虑了目标块本身的自我相关性,因此调整结果更加准确,进一步减少了块匹配的计算量,提高了块匹配的速度。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明的核心构思之一在于,提出了一种动态调整搜索窗大小的方法,通过计算当前帧和参考帧的相关度(即帧间相关系数),和预置的阈值范围进行比较,当帧间相关系数在该范围内时,则减小搜索窗的大小。则本发明在块匹配算法保证准确度的前提下,减少所需匹配的点,减少了计算的复杂度。
参照图1,示出了本发明一种动态调整搜索窗大小的方法实施例一的流程图,其特征在于,包括:
步骤101,计算当前帧和参考帧的帧间相关系数;所述帧间相关系数为当前帧各点像素值之和与参考帧各点像素值之和的差的绝对值;
需要进行编码压缩的帧图像为当前帧,所述参考帧在时间上可以超前或者滞后于当前帧,当参考帧在当前帧之前时,块匹配应用于前向运动估计,当参考帧在当前帧之后时,块匹配应用于后向运动估计。在一般的视频编码与压缩中,选取的参考帧为当前帧的前一帧图像。
本步骤的主要目的是衡量两帧图像的内容相关性,获得两帧图像之间的相似程度,从而依据相似程度确定块匹配算法所使用的搜索窗口的大小。本发明提出的相似度评估方法是计算当前帧和参考帧像素的帧间相关系数。具体的,所述当前帧和参考帧的帧间相关系数为:当前帧各点像素值之和与参考帧像素各点像素值之和的差的绝对值,其反应了当前帧和参考帧像素的绝对误差,所述误差越小,则说明两幅图像的内容越接近。如下所示,为帧间相关系数E的计算公式:
其中,参考帧(也同当前帧)图像的宽为w个像素;参考帧(也同当前帧)图像的高度为h个像素;i取值范围为0~w,为像素的横坐标;j取值范围为0~h,为像素的纵坐标;Pij为在当前帧图像上坐标位置(i,j)处的像素值,Qij为在参考帧图像上坐标位置(i,j)处的像素值。
步骤102,当所求得的帧间相关系数在第一预置阈值范围之内时,将搜索窗的大小减小为M1×N1;其中,所述搜索窗的初始大小为M0×N0;M1<M0,N1<N0。
在块匹配算法中,搜索窗的大小直接影响了匹配结果。通常,两幅图像的相似程度大,则应该计算主要的相关像素而不考虑过多的周边像素,否则周边的噪音可能会影响块匹配算法中相关匹配系数的准确度量,所以应该选用较小的搜索窗。反之,如果两幅图像的运动差异较大,则应该选用较大的搜索窗,这样可以尽量多的考虑到周边像素,从而获取最为相似的匹配点。
为了减小计算复杂度,搜索窗应该尽量小,但是小到一定值以后,就有可能根本改变目标块与搜索窗中块的相关性。与此同时,为了尽量准确地获取像素之间的相互关系,需要保证搜索窗足够大,但这样又会因为图像噪音和本身不相关的像素的加入而导致根本改变目标块与搜索窗中块的相关性。所以应该判断当前帧图像和参考帧的相似程度,得到图像内容的大致相关关系,从而确定合适的搜索窗的大小,做到有目的的计算与匹配。通常,两个幅图像的差异越小,则搜索窗应该减小。
可以理解的是,在做调整之前,需要预先定义一个原始的搜索窗的大小,确保搜索窗不至于过大而增加计算量;同时,确保搜索窗不至于过小而导致减小待搜索的块与目标块的相关性。所述搜索窗的初始大小为M0×N0,搜索窗区域为:在当前目标块的左边扩大M0个像素、右边扩大M0个像素、上方扩大N0个像素、下方扩大N0个像素所围成的区域。可以设定M0和N0取值不等,例如,搜索窗的初始大小为16×8、或者8×16。一般的,设定M0和N0取值相等。通常,对于大些的图像,如1280×720的图像,搜索窗的初始大小定为32×32;对于小些的图像,如176×144的图像,搜索窗的初始大小定为16×16。
一般的,所述当前帧中待搜索的目标块的大小为:16×16、16×8、8×16、8×8、8×4、4×8或者4×4。例如,所选取目标块的大小为16×16像素的宏块,其搜索窗的大小为16×16。则当判断所求得的帧间相关系数在第一预置阈值范围之内,将搜索窗的大小减小为M1×N1,所述第一预置阈值范围是经过对大量视频数据的统计分析求得,具有普遍适应性意义。可以设定M1和N1的取值相等,或者M1和N1的取值不等。例如,搜索窗由16×16减小为:8×8、16×8、8×16或者其他范围大小。
如图2所示,为本发明一种动态调整搜索窗大小的方法实施例一的示意图;其中,图2(a)中示出了当前帧中的目标块,该目标块为16×16大小;图2(b)给出了参考帧中的未调整的搜索窗的大小示意,其大小为32×32;图2(c)给出了参考帧中的减小后的搜索窗的大小示意,调整后的大小为16×16。
需要说明的是,由于本发明的目的是减少块匹配算法中的复杂度,因此,则调整过程中,搜索窗的大小或者不变、或者减小,但是不会增大搜索窗。
本发明实施例一,通过计算当前帧和参考帧图像的帧间相关系数,根据和第一预置阈值范围进行比较,来判断是否减小搜索窗的大小,能够在块匹配算法保证准确度的前提下,减少所需匹配的点,减少了计算的复杂度。
参照图3,示出了本发明一种动态调整搜索窗大小的方法实施例二的流程图,包括:
步骤301,计算当前帧和参考帧的帧间相关系数;所述帧间相关系数为当前帧各点像素值之和与参考帧各点像素值之和的差的绝对值;
步骤302,判断所求得的帧间相关系数是否在第一预置阈值范围之内;若是,则执行步骤303之后执行步骤304;若否,则搜索窗的大小不做调整,直接执行步骤304;
步骤303,减小搜索窗的大小;
在本发明的一个优选实施例中,所述第一预置阈值范围为:小于2A;其中,A为当前帧(同参考帧)像素的个数。则帧间相关系数E大于等于2A时,搜索窗的大小不变;小于2A时,搜索窗减小。
进一步,依据帧间相关系数减小搜索窗的大小,具体为:
当所述帧间相关系数在大于等于A小于2A范围内时,M1在大于等于M0/2小于M0的范围内等比例取值,N1在大于等于N0/2小于N0的范围内等比例取值;当所述帧间相关系数在大于等于A/2小于A范围内时,M1在大于等于5小于M0/2的范围内等比例取值,N1在大于等于5小于N0/2的范围内等比例取值;其中,依据帧间相关系数E搜索窗的大小最小调整为5×5;M1和N1取值为正整数。即:
A≤E<2A时,M0/2≤M1<M0;N0/2≤N1<N0;
A/2≤E<A时,5≤M1<M0/2;5≤N1<N0/2;
也就是说E等于整帧像素个数时,搜索窗的M1、N1取值减半;E等于整帧像素个数除以2时,搜索窗为5×5;如果E是其它值,则根据与整帧像素个数之间的比值,对搜索窗进行等比例缩小。需要说明的是,等比例缩小时,M1和N1的取值始终为整数,如果计算出来的结果不是正整数数,那么就取最接近的值。则E取值在某一范围内,M1和N1固定不变。例如,A≤E<2A时,搜索窗的大小只能在8×8、9×9、10×10、11×11、12×12、13×13、14×14中取值。
需要说明的是,当M0/2≤5时,M1取值为5;当N0/2≤5时,N1取值为5。此外,搜索窗最小调整是5×5,则当E<A/2时,搜索窗大小总是为5×5。保证在搜索窗内,匹配块搜索的精确性,不至于搜索窗过小,使得最为匹配的块位于搜索窗之外。
步骤304,针对当前帧中待搜索的目标块,计算所述目标块像素的块内相关系数;所述块内相关系数为目标块上的每一点像素与各点像素算术平均值的差的绝对值之和;
在本发明实施例二中,在取得搜索窗的大小之前,还需要做一个精确调整的过程。因为上述步骤中,通过第一次的预处理仅对两帧图像之间作了一个粗略的计算和估计,没有考虑其他影响因素,诸如目标块本身的自我相关性等。所以,本发明实施例二通过目标块的块内相关系数作为评价目标块本身相关性的主要指标。具体的,所述块内相关系数MSE为目标块上的各点像素与像素算术平均值的差的绝对值之和。通常,MSE的大小反应了目标块本身的像素差异程度,MSE越小,说明目标块的差异程度越小,那么搜索窗的大小应该相应减小。如下所示,为块内相关系数MSE的计算公式:
其中,目标块的宽为m个像素;目标块的高度为h个像素;i取值范围为0~m,为像素的横坐标;j取值范围为0~n,为像素的纵坐标;P’ij为在当前帧的目标块上坐标位置(i,j)处的像素值;为目标块上各点像素的算数平均值。
步骤305,判断所求得的块内相关系数是否在第二预置阈值范围之内;若是,则执行步骤306;若否,则搜索窗的大小不做调整;
步骤306,减小搜索窗的大小。
在本发明的优选实施例中,所述第二预置阈值范围为小于2B;其中,B为目标块像素的个数,则块内相关系数MSE大于等于2B时,搜索窗的大小不变;小于2B时,搜索窗减小。具体的,B=m×n,例如对于一个16×16的块,B的取值为256。
进一步,依据块内相关系数减小搜索窗的大小,具体为:
当所述块内相关系数在大于等于B小于2B范围内时,M1在大于等于M/2小于M的范围内等比例取值,N在大于等于N/2小于N的范围内等比例取值;当所述帧间相关系数在大于等于A/2小于A范围内时,M1在大于等于5小于M/2的范围内等比例取值,N在大于等于5小于N/2的范围内等比例取值;其中,依据帧间相关系数搜索窗的大小减小时,M取值为M1;依据帧间相关系数搜索窗的大小未做调整时,M取值为M0;依据块内相关系数搜索窗的大小最小调整为5×5;M2和N2取值为正整数。即:
B≤MSE<2B时,M/2≤M2<M;N/2≤N2<N;
B/2≤MSE<B时,5≤M2<M/2;5≤N2<N/2;
M=M0或者M1;N=N0或者N1。
也就是说,如果通过第一次的帧间相关系数的判断,减小了搜索窗的大小时,则基于上次减小的搜索窗再次进行缩小调整;如果通过第一次帧间相关系数的判断,搜索窗的大小未变化时,则在初始搜索窗的基础上进行缩小调整。
例如,通过步骤302的判断,搜索窗由32×32减小为24×24;则再次进行过步骤305的判断,假设MSE=3B/2,则M2=3M1/4=18;N2=3N1/4=18,搜索窗由24×24再次减小为18×18。如图4所示,为本发明一种动态调整搜索窗大小的方法实施例二的示意图;其中,图4(a)中示出了当前帧中的目标块的大小,该目标块为16×16;图4(b)给出了参考帧中的搜索窗的初始大小示意,其大小为16×16;图4(c)给出了依据帧间相关系数减小后的搜索窗的大小示意,其大小为12×12;图4(d)给出了依据块内相关系数最终得到的搜索窗的大小示意,其大小为9×9。
又如,通过步骤302的判断,搜索窗未作变化;则再次进行过步骤305的判断,假设MSE=3B/2,则M2=3M0/4=12;N2=3N0/4=12,搜索窗最后减小为12×12。
需要说明的是,当M/2≤5时,M2取值为5;当N/2≤5时,N2取值为5。与通过计算帧间相关系数减小搜索窗相同的是,通过计算块内相关系数得到的搜索窗最小也是5×5。当MSE<B/2时,搜索窗大小总是为5×5。以保证在搜索窗内,匹配块搜索的精确性,不至于搜索窗过小,使得最为匹配的块位于搜索窗之外。
上述实施例中给出了搜索窗的宽和高同时缩小的优选示例,可以理解的是,搜索窗的大小有多种减小方法,本发明在此不做限定,例如,在具体实施时,可以只减小搜索窗的宽(高不变)或者搜索窗的高(宽不变)。例如,搜索窗由16×16减小为16×8、或者8×16等。
通过本发明实施例二,通过依次计算帧间相关系数和块内相关系数,对搜索窗进行调整,由于考虑了目标块本身的自我相关性,因此调整结果更加准确。
参照图5,示出了本发明一种动态调整搜索窗大小的装置实施例的结构图,包括:
帧间相关系数计算单元501,用于计算当前帧和参考帧的帧间相关系数;所述帧间相关系数为当前帧各点像素值之和与参考帧各点像素值之和的差的绝对值;
第一搜索窗调整单元502,用于当所求得的帧间相关系数在第一预置阈值范围之内时,将搜索窗的大小减小为M1×N1;其中,所述搜索窗的初始大小为M0×N0;M1<M0,N1<N0。
优选的,所述第一预置阈值范围为:小于2A;其中,A为当前帧像素的个数。
进一步,所述第一搜索窗调整单元依据帧间相关系数减小搜索窗的大小,具体为:
当所述帧间相关系数在大于等于A小于2A范围内时,M1在大于等于M0/2小于M0的范围内等比例取值,N1在大于等于N0/2小于N0的范围内等比例取值;当所述帧间相关系数在大于等于A/2小于A范围内时,M1在大于等于5小于M0/2的范围内等比例取值,N1在大于等于5小于N0/2的范围内等比例取值;其中,依据帧间相关系数搜索窗的大小最小调整为5×5;M1和N1取值为正整数。
如图5所示,在本发明的优选实施例中,考虑到目标块本身的自我相关性,所述装置还包括:
块内相关系数计算单元503,用于针对当前帧中待搜索的目标块,计算所述目标块像素的块内相关系数;所述块内相关系数为目标块上的每一点像素与各点像素算术平均值的差的绝对值之和;
第二搜索窗调整单元504,用于当所求得的块内相关系数在第二预置阈值范围之内时,将搜索窗的大小减小为M2×N2;M2<M0,N2<N0。
优选的,所述第二预置阈值范围为小于2B;其中,B为目标块像素的个数。
进一步,所述第二搜索窗调整单元依据块内相关系数减小搜索窗的大小,具体为:
当所述块内相关系数在大于等于B小于2B范围内时,M2在大于等于M/2小于M的范围内等比例取值,N2在大于等于N/2小于N的范围内等比例取值;当所述块内相关系数在大于等于B/2小于B范围内时,M2在大于等于5小于M/2的范围内等比例取值,N2在大于等于5小于N/2的范围内等比例取值;其中,依据帧间相关系数搜索窗的大小减小时,M取值为M1;依据帧间相关系数搜索窗的大小未做调整时,M取值为M0;依据块内相关系数搜索窗的大小最小调整为5×5;M2和N2取值为正整数。
参照图6,为本发明一种块匹配方法实施例一的流程图,包括:
步骤601,计算当前帧和参考帧的帧间相关系数;所述帧间相关系数为当前帧各点像素值之和与参考帧各点像素值之和的差的绝对值;
步骤602,当所求得的帧间相关系数在第一预置阈值范围之内时,将搜索窗的大小减小为M1×N1;其中,所述搜索窗的初始大小为M0×N0;M1<M0,N1<N0;
步骤603,在参考帧中的搜索窗内,搜索当前帧中待搜索的目标块的匹配块。
优选的,所述第一预置阈值范围为:小于2A;其中,A为当前帧像素的个数。
进一步,依据帧间相关系数减小搜索窗的大小,具体为:
当所述帧间相关系数在大于等于A小于2A范围内时,M1在大于等于M0/2小于M0的范围内等比例取值,N1在大于等于N0/2小于N0的范围内等比例取值;当所述帧间相关系数在大于等于A/2小于A范围内时,M1在大于等于5小于M0/2的范围内等比例取值,N1在大于等于5小于N0/2的范围内等比例取值;其中,依据帧间相关系数搜索窗的大小最小调整为5×5;M1和N1取值为正整数。
参照图7,为本发明一种块匹配方法实施例二的流程图,相比于上述实施例,本实施例考虑了目标块的自我相关性,使调整结果更加准确,所述方法包括:
步骤701,计算当前帧和参考帧的帧间相关系数;所述帧间相关系数为当前帧各点像素值之和与参考帧各点像素值之和的差的绝对值;
步骤702,当所求得的帧间相关系数在第一预置阈值范围之内时,将搜索窗的大小减小为M1×N1;其中,所述搜索窗的初始大小为M0×N0;M1<M0,N1<N0;
步骤703,针对当前帧中待搜索的目标块,计算所述目标块像素的块内相关系数;所述块内相关系数为目标块上的每一点像素与各点像素算术平均值的差的绝对值之和;
优选的,所述第二预置阈值范围为小于2B;其中,B为目标块像素的个数。
进一步,依据块内相关系数减小搜索窗的大小,具体为:
当所述块内相关系数在大于等于B小于2B范围内时,M2在大于等于M/2小于M的范围内等比例取值,N2在大于等于N/2小于N的范围内等比例取值;当所述块内相关系数在大于等于B/2小于B范围内时,M2在大于等于5小于M/2的范围内等比例取值,N2在大于等于5小于N/2的范围内等比例取值;其中,依据帧间相关系数搜索窗的大小减小时,M取值为M1;依据帧间相关系数搜索窗的大小未做调整时,M取值为M0;依据块内相关系数搜索窗的大小最小调整为5×5;M2和N2取值为正整数。
步骤704,当所求得的块内相关系数在第二预置阈值范围之内时,将搜索窗的大小减小为M2×N2;M2<M0,N2<N0;
步骤705,在参考帧中的搜索窗内,搜索当前帧中待搜索的目标块的匹配块。
进一步,所述搜索当前帧中待搜索的目标块的匹配块,具体为:按照预置规则选取搜索窗中的各个块,计算目标块与搜索窗中块的像素差的绝对值之和,将计算得到最小值的块作为目标块的匹配块;其中,可以依次选取搜索窗中的每个块,进行全部搜索,也可以按照特定算法选取搜索窗中的某些特定块,进行部分搜索;则目标块与搜索窗中块的像素差的绝对值之和SAD表示为:
其中,Q(x,y)为搜索窗中块上各点的像素值;P(x,y)为当前帧的目标块上各点的像素值;每一次像素差的计算坐标(x,y)在目标块和搜索窗中块的对应位置处取值;当SDA最小时,对应搜索窗中的块与目标块的匹配误差最小,将该块作为目标块的匹配块。
参照图8,示出了本发明一种块匹配装置实施例的结构图,包括:
帧间相关系数计算单元801,用于计算当前帧和参考帧的帧间相关系数;所述帧间相关系数为当前帧各点像素值之和与参考帧各点像素值之和的差的绝对值;
第一搜索窗调整单元802,用于当所求得的帧间相关系数在第一预置阈值范围之内时,将搜索窗的大小减小为M1×N1;其中,所述搜索窗的初始大小为M0×N0;M1<M0,N1<N0;
匹配块搜索单元803,用于在参考帧中的搜索窗内,搜索当前帧中待搜索的目标块的匹配块。
优选的,所述第一预置阈值范围为:小于2A;其中,A为当前帧像素的个数。
进一步,依据帧间相关系数减小搜索窗的大小,具体为:
当所述帧间相关系数在大于等于A小于2A范围内时,M1在大于等于M0/2小于M0的范围内等比例取值,N1在大于等于N0/2小于N0的范围内等比例取值;当所述帧间相关系数在大于等于A/2小于A范围内时,M1在大于等于5小于M0/2的范围内等比例取值,N1在大于等于5小于N0/2的范围内等比例取值;其中,依据帧间相关系数搜索窗的大小最小调整为5×5;M1和N1取值为正整数。
在本发明的一个优选实施例中,如图8所示,所述装置还包括:
块内相关系数计算单元804,用于针对当前帧中待搜索的目标块,计算所述目标块像素的块内相关系数;所述块内相关系数为目标块上的每一点像素与各点像素算术平均值的差的绝对值之和;
第二搜索窗调整单元805,用于当所求得的块内相关系数在第二预置阈值范围之内时,将搜索窗的大小减小为M2×N2;M2<M0,N2<N0。
优选的,所述第二预置阈值范围为小于2B;其中,B为目标块像素的个数。
进一步,依据块内相关系数减小搜索窗的大小,具体为:
当所述块内相关系数在大于等于B小于2B范围内时,M2在大于等于M/2小于M的范围内等比例取值,N2在大于等于N/2小于N的范围内等比例取值;当所述块内相关系数在大于等于B/2小于B范围内时,M2在大于等于5小于M/2的范围内等比例取值,N2在大于等于5小于N/2的范围内等比例取值;其中,依据帧间相关系数搜索窗的大小减小时,M取值为M1;依据帧间相关系数搜索窗的大小未做调整时,M取值为M0;依据块内相关系数搜索窗的大小最小调整为5×5;M2和N2取值为正整数。
具体的,所述匹配块搜索单元搜索当前帧中待搜索的目标块的匹配块,具体为:按照预置规则选取搜索窗中的各个块,计算目标块与搜索窗中块的像素差的绝对值之和,将计算得到最小值的块作为目标块的匹配块。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上对本发明所提供的一种动态调整搜索窗的方法及其装置,以及一种块匹配方法及其装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。