基于混合块匹配的运动估计方法和用其转换帧速率的装置的制作方法

文档序号:7623266阅读:166来源:国知局
专利名称:基于混合块匹配的运动估计方法和用其转换帧速率的装置的制作方法
技术领域
与本发明相符的装置和方法涉及帧速率转换,并且尤其涉及基于使用重叠块的混合块匹配的运动估计。
背景技术
通常,个人计算机(PC)或高清晰度电视(HDTV)执行帧速率转换以与遵守各种广播标准,诸如逐行倒相(PAL)或国家电视制式委员会(NTSC)的节目相兼容。帧速率转换是改变每秒的帧数的行为。特别是,当帧速率增加时,必须内插新的帧。随着近来广播技术的进步,在根据诸如运动图像专家组(MPEG)和H.263的视频压缩标准来压缩视频数据之后执行帧速率转换。
在视频处理领域中,由于视频信号的高自相关性而使得其通常有冗余。数据压缩效率可以通过在数据压缩期间消除冗余来改善。这里,为了有效压缩时变的视频帧,必须消除时间轴方向上的冗余。换言之,通过用先前帧来代替示出无运动或示出微小运动的帧,就可以大大减少要被发送的数据量。运动估计(ME)是在先前帧中搜索块的行为,所述块是与当前帧中的块最相似的块。运动矢量(MV)指示块已经移动了多少。
现有的MV算法包括全搜索块匹配算法(FSBMAFull-Search BlockMatching A1gorithm)和快速搜索算法(FSAFast Search Algorithm)。
FSBMA包括将连续输入的视频分割成预定大小的像素块和确定与所分割的块的每一个最为相似的块在前一帧或后一帧中的位置来作为MV。换言之,在输入帧中的块和在与所述输入帧中的块最为相似的参考帧中的块之间的相对距离被称为MV。在基于块的运动估计中,平均绝对差(MAD)、均方差(MSE)、或绝对差值的和(SAD)通常被用来确定相邻块之间的相似性。这里,由于MAD不需要乘法,所以它只需要少量的计算,并且可以以硬件来容易地实现。因此,使用MAD的FSBMA估计在与参考帧相邻的帧中的块之中具有与该参考帧中的块的最小MAD的块,并获得在该参考帧中的块和所估计的块之间的运动矢量。
然而,尽管FSBMA是简单且理想精确的MV算法,但是它需要大量的计算,并因此而不适于实时编码。
同时,与FSBMA相比,FSA以精确度为代价大大减少了计算量,并适合于实时视频编码器(例如,视频电话、IMT-2000终端、视频会议系统等),其中视频质量相对较不重要。FSA的示例包括分级搜索块匹配算法(Hierarchical Search Block Matching Algorithm,HSBMA)、一像素贪婪搜索(One-Pixel Greedy Search,OPGS)、3步搜索(Three-Step Search,TSS)算法、菱形搜索算法(Diamond Search Algorithm)、4步搜索(Four-StepSearch,FSS)算法、和梯度搜索算法(Gradient Search Algorithm)。
这里,HSBMA具有高精确度且相对不太受运动量的影响,但是包括大量的计算和需要用于存储低分辨率帧的存储器。同时,对于长距离运动矢量和短距离运动矢量二者,HSBMA无差别地都需要大量的计算。
OPGS算法仅可以发现接近中心点(或起始点)的有效运动矢量,不能正确地收敛于局部最小点,在具有复杂运动的复杂图像中不能获得正确结果,和需要大量的计算以发现跨越长距离的运动矢量。

发明内容
本发明提供了一种基于混合块匹配进行运动估计的方法,其中在视频压缩系统中组合了修改后的全搜索算法和快速搜索算法,从而通过搜索全局最小点来执行快速搜索并提高压缩效率。
本发明还提供了一种使用基于混合块匹配进行运动估计的方法来转换帧速率的方法和装置。
根据本发明的一个方面,提供了一种在视频压缩系统中基于混合块匹配进行运动估计的方法。该方法包括将当前帧分割成块并对从所分割的块中采样的块执行全搜索算法;基于通过执行全搜索算法所获得的运动矢量(fMV),将通过线性内插所获得的运动矢量(iMV)分配给当前帧中未被采样的块;以及通过将通过线性内插所获得的运动矢量用作搜索起始点来执行快速搜索算法。
根据本发明的另一个方面,提供了一种用于转换帧速率的装置,该装置包括帧缓冲器、混合运动估计单元、和运动补偿内插单元。帧缓冲器逐帧存储输入视频。混合运动估计单元对在存储在帧缓冲器中的在当前帧中的块之中的被采样的块执行全搜索算法,基于通过全搜索所获得的运动矢量,将通过线性内插所获得的运动矢量分配给当前帧中未被采样的块,和通过将通过线性内插所获得的运动矢量用作搜索起始点来执行快速搜索算法。运动补偿内插单元基于由混合运动估计单元所估计的运动矢量,来产生要内插到帧之间的像素值。


通过参照附图详细描述本发明的示范性实施例,本发明的上述和其它方面将变得更加清楚,其中图1是说明了根据本发明的示范性实施例的、基于混合块匹配进行运动估计的方法的流程图;图2说明了图1的用于被采样的块的全搜索运动矢量估计;图3说明了图1的使用重叠块的运动估计;图4A说明了图1的由被采样的像素构成的运动估计(ME)块;图4B说明了运动补偿内插(MCI)块;图5说明了图1的使用双线性内插分配给未被采样的块的运动矢量;图6说明了图1的使用双线性内插计算的运动矢量;图7说明了图1的定义了任意块的搜索区域的相邻块;图8是图1的起始于分配给未被采样的块的运动矢量的快速搜索算法的概念图;和图9是根据本发明的示范性实施例的、用于转换帧速率的装置的框图。
具体实施例方式
图1是说明了根据本发明的示范性实施例的、基于混合块匹配进行运动估计的方法的流程图。
本发明利用了如下事实在两个时间上相邻的帧之间,当前帧中的块的运动矢量及其相邻块的运动矢量具有相同或相似的特性。
在第一操作110中,当前正被逐帧输入的视频信号被分割成块。然后,以预定间隔从所分割的块中采样特定块。因此,整个块被分割成经过全搜索的被采样的块和未经过全搜索的未被采样的块。
在操作120中,使用重叠块对当前帧中的被采样的块执行全搜索算法。参照图2,计算当前帧中被采样的块和参考帧的搜索区域中的参考块之间的MAD,并且将具有最小MAD的位置的坐标(x,y)确定为运动矢量。
例如,当给出第(n-1)帧Fn-1和第n帧Fn时,计算当前帧(Fn-1)中的块和先前帧(Fn)的搜索区域中的参考块之间的MAD,如等式1和2所示,并将具有最小MAD的块和当前帧(Fn-1)中的块之间的空间距离确定为运动矢量。首先,如下计算MADMAD(k,l)(χ,γ)=Σi=1N1Σj=1N2|fn-1(k+i+χ,l+j+y)-fn(k+i,l+j)|N1×N2]]>其中,n是指示时域中输入帧的顺序的变量,(i,j)是像素的空间坐标,(x,y)是两个匹配的块之间的距离,(k,1)是2个由N1×N2个像素构成的块的空间坐标,而N1和N2是两个匹配的块的每一个的水平和垂直维数。
如下获得在运动估计区域中具有最小MAD的块的运动矢量(χm,γm)(k,l)=argmin(χ,γ)∈S{MAD(k,l)(χ,γ)}]]>其中,S是用于运动估计的搜索范围,而(xm,ym)表示具有最小MAD的块的运动矢量。
此时,全搜索算法通常使用符合标准的块,象符合MPRG1/2的块,但是也可以使用如图3中所示的重叠块。
换言之,帧中的像素被分割成N1×N2个像素的运动补偿内插(MCI)块和M1×M2个像素的运动估计(ME)块,该ME块具有与MCI块相同的中心轴且比MCI块更大。例如,ME块大小可以是32×32,而MCI块大小可以是16×16。同时,M1×M2的ME块与其相邻的块(其位于M1×M2的ME块的左侧、右侧、上方和下方)水平间隔N1,而垂直间隔N2。因此,M1×M2的ME块与其相邻的块重叠。以1∶2或更低来二次采样ME块中的像素。
图4A说明了M1×M2的ME块,其中以1∶2来二次采样像素并且像素被分割成所选择的像素和未被选择的像素,而图4B说明了N1×N2的MCI块。因此,全搜索算法使用小于M1×M2的ME块的重叠MCI块,来对M1×M2的ME块执行运动估计。
因此,可以如下表示使用所采样的ME块的MAD
MAD(k,l)(χ,γ)=Σi=1[M1/a]Σj=1[M2/a]a2|fn-1(k+ai+x,l+aj+y)-fn(k+ai,l+a)|M1×M2]]>其中,α是用于采样ME块中的像素的采样系数,[M/α]是不大于M/α的最大整数,M1×M2是ME块的大小,而M1和M2被设置成大于等式1的N1和N2。
下面,在操作130中,使用如图5中所示的通过全搜索所获得的运动矢量fMV,将通过双线性内插所获得的运动矢量iMV分配给当前帧中未被采样的块。使用事实在两个时间上相邻的帧之间,当前帧中的块的运动矢量及其相邻块的运动矢量具有相同或相似的特性,可以如下表示图6中的未被采样的块的双线性内插iMV=(1-β)[(1-α)fMV1+αfMV2]+β[(1-α)fMV3+αfMV4].............(4),其中,fMV1-4指示4个最近的块的运动矢量,其是通过全搜索而获得的,而α和β是在fMV和iMV之间的水平和垂直有理数常数。
在操作140中,通过将通过双线性内插而获得的运动矢量iMV用作搜索起始点来执行快速搜索算法。同时,可以使用精细搜索算法(fine searchalgorithm)来代替快速搜索算法,所述精细搜索算法通过在例如±2或±4范围的小范围内执行全搜索来估计运动矢量。快速搜索算法的示例包括HSBMA、OPGS、TSS算法、菱形算法、FSS算法、和梯度搜索算法。
此时,参照通过全搜索算法而获得的、与对应块最接近的相邻块的运动矢量或者对应块的相邻块的运动矢量,来可变地确定快速搜索的搜索区域。换言之,如图7中所示,其坐标是(i,j)的ME块的搜索起始点iMM(i,j)是给定的初始值。基于该给定的初始值,通过下列方法之一,使用相邻块的运动矢量来确定搜索区域(SA)1)SA=MAX{|fMV(α)-iMV(i,j)|,|fMV(b)-iMV(i,j)|,|fMV(c)-iMV(i,j)|,|fMV(d)-iMV(i,j)|}其中,fMV(a)至fMV(d)指示在早期阶段中获得的块iMV(i,j)的相邻块的运动矢量。
2)SA=MAX{|iMV1-iMV(i,j)|,|iMV2-iMV(i,j)|,|iMV3-iMV(i,j)|,|iMV4-iMV(i,j)|},其中,iMV1至iMV4指示位于块iMV(i,j)的左侧、左上侧、上方和右上侧的块的运动矢量。
如图8中所示,执行快速搜索算法以确定当前块中的目标块和参考帧中的块匹配的位置。例如,使用当前帧中的块的、通过双线性内插所获得的运动矢量iMV来作为搜索起始点,来搜索参考帧中的搜索区域的局部最小点。然后,如果发现局部最小点,则停止搜索,并且将局部最小点的位置确定为当前帧中的该块的运动矢量。
图9是根据本发明的示范性实施例的、用于通过使用基于混合块匹配进行运动估计的方法来转换帧速率的装置的框图。
图9的帧速率转换器包括第一帧缓冲器910、帧延迟单元920、第二帧缓冲器930、混合运动估计单元940、和运动补偿内插(MCI)单元950。混合运动估计单元940包括块采样单元942、全搜索算法单元944、运动矢量分配单元946、和快速搜索算法单元948。
参照图5,第一帧缓冲器910逐帧存储输入视频信号。例如,第n帧的视频信号被存储在第一帧缓冲器910中。在帧延迟单元920中被延迟了一帧的视频信号被存储在第二帧缓冲器930中。例如,第(n-1)帧被存储在第二帧缓冲器930中。
混合运动估计单元940使用第n帧和第(n-1)帧之间的混合搜索算法来提取所有可能的块的运动矢量。换言之,块采样单元942采样第n帧中的一些块。全搜索算法单元944通过在第n帧的被采样的块和第(n-1)帧的块之间执行全搜索算法来估计运动矢量fMV。运动矢量分配单元946基于由全搜索算法单元944获得的运动矢量fMV来执行双线性内插,并将通过双线性内插所获得的运动矢量iMV分配给未被采样的块。快速搜索算法单元948通过将分配给未被采样的块的运动矢量iMV用作为搜索起始点,来执行快速搜索算法。
MCI单元950通过将由混合运动估计单元940估计的运动矢量fMV和iMV应用于存储在第一帧缓冲器910和第二帧缓冲器930中的第n帧和第(n-1)帧的块来执行运动补偿,并且基于所估计的运动矢量fMV和iMV和在第n帧和第(n-1)帧之间匹配的块的像素值来产生要内插到第n帧和第(n-1)帧之间的像素值。
如上所述,根据本发明,通过组合修改后的全搜索算法和快速搜索算法,可能通过搜索全局最小点来执行快速搜索和改善压缩效率。特别地,通过使用修改后的全搜索算法,减少了初始运动估计的量并且可以提高运动估计的实际性能。同样,通过使用快速搜索算法中的修改后的搜索区域,可以提高搜索速度。
同时,本发明还可以被实现为计算机可读记录介质上的计算机可读代码。计算机可读记录介质是任何可以存储其后能够被计算机系统读取的数据的数据存储设备。计算机可读记录介质的示例包括只读存储器(ROM)、随机存取存储器(RAM)、CD-ROM、磁带、软盘、光学数据存储设备和载波。计算机可读记录介质还可以经由连接计算机系统的网络而被分发,从而计算机可读代码以分散的方式被存储和执行。
虽然参照本发明的示例性实施例具体示出和描述了本发明,但是本领域技术人员应当理解在不背离由所附权利要求所限定的本发明的精神和范围的情况下,可以在形式和细节上做出各种改变。
本申请要求于2004年9月18日提交给韩国知识产权局的、韩国专利申请第10-2004-0074823号的优先权,这里引用其整个公开内容作为参考。
权利要求
1.一种用于在视频压缩系统中基于混合块匹配进行运动估计的方法,该方法包括将当前帧分割成多个块并对所述多个块的被采样的块执行全搜索算法;基于通过执行全搜索算法所获得的运动矢量(fMV),将通过线性内插所获得的运动矢量(iMV)分配给当前帧中多个块的未被采样的块;以及通过将通过线性内插所获得的运动矢量用作搜索起始点来执行快速搜索算法。
2.如权利要求1所述的方法,其中全搜索算法的执行包括计算当前帧中被采样的块和参考帧的搜索区域中的参考块之间的平均绝对差(MAD),并确定具有最小MAD的位置的坐标(x,y)为运动矢量。
3.如权利要求1所述的方法,其中在全搜索算法的执行中,当前帧中被采样的块具有M1×M2个像素的大小,并与具有N1×N2个像素的大小的运动补偿内插(MCI)块重叠,M1×M2个像素的被采样的块中的像素被采样,并且M1和M2大于N1和N2。
4.如权利要求1所述的方法,其中如下表示通过线性内插所获得的运动矢量iMV=(1-β)[(1-α)fMV1+αfMV2]+β[(1-α)fMV3+ααfMV4]其中,fMV1-4指示通过全搜索所获得的4个最近的块的运动矢量,而α和β是通过线性内插所获得的运动矢量(iMV)和通过全搜索所获得的运动矢量(fMV)之间的水平和垂直有理数常数。
5.如权利要求5所述的方法,其中参照与对应块最接近的相邻块的运动矢量,来可变地确定快速搜索算法的搜索区域。
6.如权利要求5所述的方法,其中搜索区域(SA)由下式给出SA=MAX{|fMV(a)-iMV(i,j)|,|fMV(b)-iMV(i,j)|,|fMV(c)-iMV(i,j)|,|fMV(d)-iMV(i,j)|},其中,(i,j)是像素的空间坐标,iMV(i,j)是块中通过线性内插所获得的运动矢量,而fMV(a)至fMV(d)是通过对块的相邻块执行全搜索算法所获得的运动矢量。
7.如权利要求5所述的方法,其中搜索区域(SA)由下式给出SA=MAX{|iMV1-iMV(i,j)|,|iMV2-iMV(i,j)|,|iMV3-iMV(i,j)|,|iMV4-iMV(i,j)|},其中,(i,j)是像素的空间坐标,iMV1至iMV4是块的相邻块的运动矢量。
8.如权利要求1所述的方法,其中快速搜索算法的执行包括使用通过对当前帧中的块进行线性内插所获得的运动矢量来作为搜索起始点,来搜索参考帧的搜索区域中的局部最小点;如果发现局部最小点,则停止搜索;以及将局部最小点确定为当前帧中的该块的运动矢量。
9.一种用于转换帧速率的方法,该方法包括将当前帧分割成多个块并对所述多个块的被采样的块执行全搜索算法;基于通过执行全搜索算法所获得的运动矢量(iMV),将通过线性内插所获得的运动矢量(fMV)分配给当前帧中多个块的未被采样的块;通过将通过线性内插所获得的运动矢量(iMV)用作搜索起始点来执行快速搜索算法;以及基于通过快速搜索算法所估计的运动矢量和在第n帧和第(n-1)帧之间匹配的块的像素值,来生成要内插到第n帧和第(n-1)帧之间的像素值。
10.一种用于转换帧速率的装置,该装置包括帧缓冲器,用于逐帧存储输入视频;混合运动估计单元,用于对在存储在帧缓冲器中的当前帧中的多个块的被采样的块执行全搜索算法,基于通过全搜索算法所获得的运动矢量,将通过线性内插所获得的运动矢量分配给当前帧中多个块的未被采样的块,和通过将通过线性内插所获得的运动矢量用作搜索起始点来执行快速搜索算法;以及运动补偿内插单元,用于基于由混合运动估计单元所估计的运动矢量,来产生要内插到帧之间的像素值。
11.如权利要求10所述的装置,其中所述混合运动估计单元包括块采样单元,用于采样当前帧中一些块;全搜索算法单元,用于通过在由块采样单元采样的当前帧的被采样的块和先前帧中的块之间执行全搜索算法来估计运动矢量;运动矢量分配单元,用于基于由全搜索算法单元所获得的运动矢量,将通过线性内插所获得的运动矢量分配给未被采样的块;以及快速搜索算法单元,用于通过将分配给未被采样的块的运动矢量用作为搜索起始点,来执行快速搜索算法。
全文摘要
本发明提供了一种在视频编码器中基于使用重叠块的混合块匹配的运动估计方法,以及一种使用该方法来转换帧速率的装置。该方法包括将当前帧分割成块并对从所分割的块中采样的块执行全搜索算法;基于通过全搜索所获得的运动矢量(iMV),将通过线性内插所获得的运动矢量(fMV)分配给当前帧中未被采样的块;以及通过将通过线性内插所获得的运动矢量用作搜索起始点来执行快速搜索算法。
文档编号H04N7/26GK1750657SQ20051009904
公开日2006年3月22日 申请日期2005年9月5日 优先权日2004年9月18日
发明者河泰铉, 金载石 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1