专利名称:估算运动的方法
技术领域:
本发明涉及一种估算运动的方法,该方法特别适用于包括有场频变换的,例如将50Hz隔行扫描格式转换为75Hz逐行扫描格式的帧转换系统。本发明可应用于利用顺序帧的任何领域,特别是电视领域。
通过顺序帧中的块来估算运动是众所周知的,其目的是利用以这样确定的矢量来改进在频率转换系统中帧的插入。这种类型的系统描述在,例如,1995年3月31日申请者为Thomson Consumer Electronics(汤姆森家用电子)的欧洲专利申请文件95400721(D 94/1271)中。
估算运动有各种方法,包括块匹配方法,该方法涉及用在基准帧中相同尺寸的所有块和当前块比较。通过每次比较确定块之间的偏差,并通常通过比较给出的最小偏差来确定运动矢量。容易看出,有待计算的次数随基准帧的面积成比例地增加。为限制计算次数,人们知道,仅允许同降低尺寸后的检测窗口内的块进行比较。于是不但待计算的次数受到限制,运动矢量的最大幅度也受到了限制。根据统计,(在顺序帧中由快速运动产生的)大幅度矢量的数目在事实上是少的。
这样的措施可能不足以降低所需的比较次数。特别是在大量生产的家用产品方面,相应的集成电路的复杂性和面积有待尽量减小。在作为该方法的一种结果而获得的帧的主观质量和为达到此目的所需设备之间必须建立某种平衡。
专利申请EP-A-0648052(D 93/0621)也描述了用于确定是运动矢量的方法和装置。
本发明涉及由块来估算运动的方法,该方法包含在第1帧和第2帧之间确定第1运动矢量场的阶段,所述方法的特征在于,它还包含在所述第2帧和一第3帧之间确定第2运动矢量场的阶段,其中该第2场的每个矢量从由第1矢量场导出的候选矢量集之中选出,根据包含在第2和第3帧中的信息而作出该选择。
假设连续运动产生在同一顺序的若干连续帧中。当计算两个给定帧之间的矢量时,允许使用以前作用于其它帧的计算,特别是为计算新场而确定的最后矢量场。通过用以前计算的场来选择候选矢量,或者从该场中导出候选矢量,得到了良好的结果。这是相对于使用需要更多计算的详尽探索所得到的那些结果而言的。
为获得足够的精度和质量,利用无遗漏的块匹配的方法能计算出第1矢量场。如上所述,该方法要求许多计算,所以不用于所有帧,这样就相应降低了对存储器以计算次数为关键的能力的要求。
应理解,术语“帧”表示由两场组成的隔行扫描帧、逐行扫描帧、隔行扫描场,等等。
根据一特定实施例,为第1尺寸的块确定第1矢量场,而为小于或等于该第1尺寸的第2尺寸的块确定第2矢量场。
与现有技术相比较,追踪是时间上的,而不是空间上的为一对帧确定第2矢量场(“精细场”),该对帧不等同于用于确定第1场(“粗略场”)的那对帧。
根据一特定实施例,从候选矢量中选择一矢量的准则是最小偏差准则。
根据一特定实施例,当准备为时间上位于第2帧和第3帧之间的第4帧确定第2矢量场时,通过沿着一矢量将该第4帧的一给定块投影在第2和第3帧中间和通过对这两个投影之间的差进行估算来估算与第4帧的所述矢量和所述给定块相关的偏差。
在频率转换期间,运动估算被用于改进输出帧的插入。它们不必与输入帧在时间上吻合为改进该估算,在输出场的区域中从时间上估算偏差或误差就考虑到了这一事实。
根据一特定实施例,所述第4帧的一当前块的各个候选矢量被从第2矢量场的矢量中导出,该第2矢量场的矢量对应于当前组正交投影在第2帧上而产生的块,和/或从对应于相邻于该投影的各块的矢量中导出。
根据该特定实施例,当为不在时间上吻合的场计算一矢量场时,该相关于以前帧的当前块的位置确定了待考虑的候选矢量。
根据一特定实施例,对应于第2场的各块是对应于第1场的各块的水平或垂直条带,并且用于第2场的候选矢量包含所述投影的那个矢量,该矢量的该水平或垂直分量已修改了一个数字化步长。
根据一特定实施例,所述方法是以50Hz至75Hz帧频转换系统来执行的,第1矢量场在第1输入帧和第2输入帧之间确定,第2矢量场在第2输入帧和第3输入帧之间确定,第1输出帧同第1输入帧在时间上组合,第2输出帧在时间上位于第1和第2输入帧之间,第3输出帧在时间上位于第2和第3输入帧之间,第3矢量场在第2和第3输入帧之间被确定,用于该第3场的矢量的各候选矢量从第2场的矢量中导出,对应于该第3场的各块具有小于对应于第2场的各块的尺寸。
在50Hz帧转换为75Hz帧的系统中,每两个输入帧产生3个输出帧。根据该特定实施例,在第1和第2输入帧之间计算一矢量场。为了被用于第3输出帧的插入,它被细化两次,为了更新该第1矢量场,执行中间的细化,我们记得该第1矢量场已经从头两个输入帧中算出,而不是从第2和第3输入帧算出。用于第2矢量场的各块的尺寸在第1场的各块和第3场的各块的尺寸之间,第一场和第三场的各块具有插入所需的密度块。选择该第2块的尺寸从而第2场的密度使得将要进行的计算量在利用该方法的装置的容量范围之内。该第2和第3场在事实上应在该方法的半个周期期间进行计算。
根据一特定实施例,如果由分量已经被强制到零的一矢量所引入的偏差和在任何情况下由该矢量引入的偏差之间的差小于整个帧中的噪声的一估算值乘以一常系数,那么,该矢量的水平或垂直分量被强制到零如果Err(i,j)(0,v)-Err(i,j)(u,v)<Errminabs*threshold_x 则u=0如果fErr(i,j)(u,0)-Err(i,j)(u,v)<Errminabs*threshold_y 则v=0根据一特定实施例,在该帧中噪声的估算值是Errminabs=min{Errmin(i,j),(Errmax-Errmin)(i,j)}i=1,...,aj=1,...,b其a和b分别表示块在第1矢量场中帧的宽度和高度上的块数。
根据一特定实施例,如果由所述水平或垂直分量已经被强制到零的一矢量引入的偏差和由具有相同垂直和水平分量的一矢量引入的偏差之间的差在一行或一列上的总和低于帧噪音中的一估算值乘以一校正系数,那么将该矢量的水平或垂直分量强制到零-水平分量Σu[Err(i,j)(0,v)-Err(i,j)(u,v)]<Errminabs*threshold′_x]]>-垂直分量Σv[Err(i,j)(u,0)-Err(i,j)(u,v)]<Errminabs*threshold′_y.]]>本发明的其他特征和优点将会从附图及下文描述的非限定举例的描述中体现出来。
图1是本方法相对于时间轴的各输入和输出场;图2是利用根据本实施例的方法的装置方框图;图3是图2中该装置特定点处的各场的定时图;图4是包含周期性结构的一帧,以及能为这样的一帧产生运动矢量的举例;图5是与包含有矩阵最小误差的一给定运动矢量的一垂直分量相关联的一误差矩阵的一行的误差直方图;图6是在确定一帧运动矢量场中考虑到允许周期性块时所采用的方法;图7是两个低通滤波器;图8表示场1,2和2/3和表示相对于主块的一个子块/子块位置,该主块的矢量被选择作为该子块/子块的候选矢量;图9表示场1,2/3,和3以及表示相对于主块的一中间块的位置,该主块的矢量被选择作为候选矢量;图10(a)是为降低递归时间噪声由本方法所使用的非线性函数;图10(b)是为降低递归时间噪声的一滤波器的方框图;图11是用于场1插入的中值型空间和时间滤波器;图12描述的是同在该帧中存在周期性结构相关联的一问题;图13是用于场2插入的两个空间和时间滤波的实施例;图14是用于3插入的两个空间和时间滤波器的实施例;图15是图2所示装置在电影(film)方式期间的特定点处的场定时图;图16分别为视频场的正常操作方式,摄影场的正常操作方式和摄影场的特殊操作方式的场的三个时间关系图(a,b,c)。
本发明将参照将50Hz隔行扫描电视帧频转换为75Hz逐行扫描帧频的方法加以说明。
有关该方法其它方面的两个专利申请已在同一天提交。
约定一周期被定义为允许一输出场被显示的时间间隔,即1/75秒。一循环被定义为该算法的一整个循环所需的时间间隔,即3个周期或1/25秒。
该过程每3个输出场或每2个输入场作完全相同的重复。根据约定,第1输出场具有号数1,第2场具有号数2,等等。然而,由于过程是循环的,场1、4、7被等同地产生,它们被称为1型场。类似地,场2、5、8或场3、6、9也将分别等同地产生并分别称之为2型和3型场。
根据约定,输入场将参照它们所在的相对于输出场的位置来编号,这样,在时间上对应于一输出场的一输入场将有与该输出场相同的号码。位于两个输出场之间的一输入场将具有这两个场的号码例如,位于输出场2和3之间的一输入场将被称为场2/3。
图1描述了输入和输出场分别的位置。
输入场1包括在电视屏上显示的第1行,它已被认作为行0。该场从而是奇输入场,由行0、2、4,......624构成,偶场2/3将包括行1、3、5、......623。变量y表示在屏幕扫描方向从顶到底增加的行号。变量x被用于表示一象素的横坐标,它也在扫描方向上从左到右地增加,t表示标准化的时间,使得一个时间单位代表一个循环。场1位于时间0处,场2/3位于时间1/2处,和场4位于时间1处。
输出场包括所有行号,因为它们是逐行扫描场。在给定象素位置处的亮度信号由变量P(x,y,t)表示。
概略图示已描述的转换方法和实现该方法的装置的优点在于仅要求一单个场存储器。作出该项限制的原因是,该方法的目的是在大量生产的家用电器上实现。因此对设备来说生产成本的降低是一个重要的因素。
图2是实现本发明的装置的方框图,在下文中对每个单元加以详述。
该装置包括组织成FIFO的一随机存取存储器1,设置该随机存贮器1的意图是利用读的手段,将一场重复二次来使场频从50Hz增加到75Hz。该存储器1从而以50Hz频率接收输入场和以75Hz频率提供输出场。
该装置还包括含有两个滤波器的噪声降低电路2一主要用于降低脉冲噪声的空间滤波器和一递归时间滤波器。该空间滤波器接收从存储器1送出的场,然后将滤过波的场传输到时间滤波器。该时间滤波器还接收由以前处理过的场信息组成的称为投影场的场。时间滤波器操作将在下文详细描述。
经过时间滤波的场被存储在场存储器3中并传输到插入器4。插入器4在两个输入场之间插入以传递该装置的输出场。该插入器4从运动估算电路5接收运动矢量。在场存储器3中存储的场和在存储器1中读出的“当前”场之间估算该运动。在噪声降低期间利用相关于该运动估算的一确定的信息量。
图3包括相关于通过图2装置的各单元处理过的场的定时图。识别每个定时图的各字母对应于在图2的识别各单元之间连接关系的字母。
以锯齿形表示的场对应于该场的扫描。
第1定时图(I)对应于存储器1的输入场,即50Hz隔行扫描场,场1是奇数,场2/3是偶数,等等。
第2定时图(A)对应于存储器1的输出。该场以75Hz的速率被再次读出。场1(和场4,7,......)被读一次,在写结束之前开始读。场2/3(和场5/6,8/9......)被读两次。
第3定时图(G)表示场存储器3的输出。该存储器在它的输入场和它的输出场之间保持一场的时间偏移,以便能准确执行插入。为此,存储器不是简单地表现为一场的延迟,如果是这种情况,滤过波的场2/3会呈现在存储器的输入处和它的输出处。因此,在场存储器的输出处的是被重复两次的滤过波的场1。
第4定时图(B)表示对由运动估算器送到该装置的其余部分的信息进行计算的周期。在下文将进行详细描述,该运动估算器在一给定循环中的每个周期有不同表现。对于1型场,为宽块(称为主组)计算粗略的运动矢量(基准“MB”),而为该主块的子块的其它两场确定较精细的运动矢量(基准“SB”)。对子块的矢量的计算以主块的粗略矢量为基础。定时图中的基准“MB1//2/3”指明,例如,在场1和场2/3之间的“粗略”运动的估算周期。
第5定时图(C)涉及降噪电路的空间滤波器的输出。该滤波在从存储器1读出的场上直接运行。
第6定时图(D)表示通过降噪电路同空间滤波场作比较的投影场。
第7定时图(E)指明时间滤波器的输出,因此是插入器4和场存储器3的输入。
最后的定时图(F)指明插入器的输出,从而是该装置自身的输出。
运动估算器运动估算器通过多层次块比较处理来操作。该处理在两级中进行。该帧首先被划分为被确定运动的16*32象素的粗略块或主块,然后,这些主块被分为子块以便细化矢量场。
对通常含有足够信息以便描述在屏幕上目标运动的亮度信号执行估算。很明显还有可能利用色度信息或色度与亮度信息的组合去进行估算。
首先,用因子2在水平和垂直方向上执行输入场的二次采样。估算需求的计算次数从而除以4。然而,二次采样场将仅用于估算运动。输出场将从完整的场插入。
该二次采样明显地限制了运动矢量的分量为偶数值。在垂直方向上这不是问题,因为在广播期间,通过场的隔行扫描已经施加了抑制。
在二次采样期间,仅保留奇数行和偶数列。然而,帧的点将仍用迄今使用的坐标系统来标记,而禁止的象素不属于二次采样区域。
根据本实施例,在着手二次采样之前,一用于抑制空间高频率(在空间叠加的源)的低通滤波器将被提供给该场。为水平地实现这些,利用具有7个系数的三角窗口,例如,Phorizontal(x,y,t)=116[1234321]P(x-3,y,t)P(x-2,y,t)P(x-1,y,t)P(x,y,t)P(x+1,y,t)P(x+2,y,t)P(x+3,y,t)]]>其中Phorizontal(x,y,t)表示在象素位置(x,y)及时间t的水平滤波后的亮度。
在垂直方向上也执行滤波,仅奇数行被保留,这对应于输入场1的垂直插入行数和场2/3的输入行数。为了调和两个二次采样后的输入场的频谱内容,执行对输入场2/3的低通滤波Psub-sampled(x,y,12)=14Phorizontal(x,y-2,12)+2Phorizontal(x,y,12)+Phorizontal(x,y+2,12)]]>对于1型场,利用简单的垂直平均来产生奇数行Psub-sampled(x,y,o)12(Phorizontal(x,y-1,O)+Phorizontal(x,y+1,O))]]>函数Psub-sampled(x,y,o)和Psub-sampled(x,y,1/2)仅在偶数x和奇数y时被定义。为简化起见,二次采样的场由P′(x,y,t)表示,使用的滤波器在图7中示出。
如前所述,多层次估算处理在一循环的3个周期期间表现不同-对应于代表在场1和2/3之间运动的主块的矢量在周期1计算。
-对应于更精确代表场1和2/3之间运动的子块的矢量在周期2计算,是借助于在周期1确定的矢量的计算。
-对应于代表在场2/3和4之间运动的子块的矢量在周期3计算。在本情况下,用由对应于主块的更新的矢量值所组成的中间块的矢量来作计算。
在场1和2/3之间的粗略矢量场的确定该帧首先被分成32*16象素的主块。如对于标准采样频率来说,有效(active)帧的尺寸是720*576象素,从而每行有23个主块和每列有36个主块。
对于具有0和22之间的i以及0和35之间的j的标记(i,j)和根据定义属于输入场(时间上的最新场)、从而属于场2/3或等价场的一主块,一运动矢量(u,v)的误差由下式确定E(i,j)(u,v)=Σl=0,2,…,14k=0,2,4,…,30[P′Mx*i+kMy*j+l],t]-P′[Mx*j-uMy*j-v,t-1/2]]>其中Mx=32,主块横坐标尺寸,和My=16,主块纵坐标尺寸。
然后为每个主块计算误差矩阵该矩阵的每个单元对应于与可能的运动矢量有关的误差,即Err(i,j)=(E(i,j)(u,v)) 当u=-16,-14,...,14,16;v=-4,-2,0,2,4.
运动矢量的分量是偶数并且分别在-16和+16之间,以及-4和+4之间。考虑中的主块从而同一以前场的一检测窗口的块比较,该检测窗口位于相关于该以前场的主块的周围。从所有矢量中保留下来的那个矢量记录为(u′,v′)并对应于误差函数的最小值。
Errmin=min(E(i,j)(u,v))=Err(i,j)(u′,v′)当u=-16,-14,...,14,16和v=-4,-2,0,2,4通过一块接一块扫描和通过应用该检测到每个主块来计算整个帧的矢量场。
在计算该主块层次的矢量场期间还测定帧的噪声。为此计算一附加值,矩阵的最大误差Errmax=max(E(i,j)(u,v))当u=-16,-14,...,14,16;v=-4,-2,0,2,4Errmin表示两种噪声之和的估算值亮度信号的固有噪声和运动矢量数字化的噪声。事实上,如果已经算出的运动矢量对应于在帧中实际存在的运动,Errmin就是主块容量的两个等同面积中存在的亮度差的和从而这些差的单一来源是帧的噪声。
另外,如果由于这些可能的矢量的数字化而计算的矢量极差地代表该运动,那么,在该矢量上产生误差的分量将被加到以上的噪声中。Errmin太精确以致于不能确定帧的实际噪声。
因此定义第2估算器,即Errmax-Errmin。它也取决于帧的数字化噪声。在一均匀的区域上,最大误差和最小误差之间的差仅来源于帧噪声。如果数字化噪声高,即Errmin和Errmax二者都受影响,则希望该估算器对由差分消除的数字化噪声较不敏感。
还定义了两个估算器Errminabs和NoiseestErrminabs=min|Errmin(i,j),(Errmax-Errmin)(i,j)}i=0,...,22j=0,...,35Noiseest=min{Errmin(i,j )}i,j
对周期1计算值的校正根据一个变化例,当帧包含均匀区域时进行第1种校正。
在均匀区域,例如一块蓝天,误差矩阵近似常数,波动是由于存在着帧噪声。所以,根据本发明的处理而计算的矢量是不可预测的,可以导致对该处理的剩余部分有害的矢量场显著的不一致性,当存在这种不一致性时,就决定强制使对应的矢量为零。
该强制事实上是一个分量接一个分量提供的。事实上,如果在帧中考虑到一水平边界(例如,有蓝天作顶的悬崖),由于在矩阵的每一行上误差是常数,运动矢量的分量u不固定,所以将该分量强制到零。与此类似地处理垂直边界情况下的分量v。
根据本实施例,用于确定一矢量分量是否应强制到零的准则与上述计算的噪声电平相关。
如果Err(i,j)(0,v)-Err(i,j)(u,v)<Errminabs*threshold_x 则u=0如果Err(i,j)(u,0)-Err(i,j)(u,v)<Errminabs*threshold_y 则v=0threshold_X和thexhold_Y的值等于,例如2的倍数2,4,8,......。
用平常语言说,如果由零分量矢量引起的误差和由运动估算确定的矢量之间的差和在帧中预计的固有噪声为同一数量级,就进行校正。
根据一个变化例,用于确定一水平分量是否被强制到零的准则如下Σu[Err(i,j)(0,v)-Err(i,j)(u,v)]<Errminabs*threshold′_x]]>该准则允许误差矩阵的整个一行上误差之差有变化而不仅仅是仅根据矢量而得到的差值,其中该矢量的分量可能被强制到零。
检测到运动矢量分量的不确定性意味着,通过推断,检测到没有理由选择该分量可能值中的一个而不选择另一个。因此应该考察与这些值中的每一个值有关的误差,这等于考察该误差矩阵的整行。不确定性的检测是把噪声除外的。使用的准则如下相关于被强制到零的分量的矢量误差的差的平均值低于取决于噪声的一确定的阈值。这事实上是用于检验误差矩阵行的均匀性的准则。
用于垂直分量的准则类似地是Σv[Err(i,j)(u,0)-Err(i,j)(u,v)]<Errminabs*threshold′_y]]>按照本变化例强制到零使运动矢量垂直或水平分量的不确定性能在一精度范围内检测到,其中该精度范围绝对地随帧内噪声的增大而增大。
这只有在考虑到误差矩阵中包含最小值的整行(或整列)并考察该行(或该例)内的变化之后才能实现。
当帧含有周期性结构时也进行校正。
这种类型的结构所产生的问题已经在介绍中涉及。然而,图4和12可以弄清楚该问题,使得能更好地了解所面对的检测和校正。
图4中阴影块代表将被估算运动的块,然而,间断线的两块代表在误差矩阵中产生最小误差的基准帧中的两块。不正确的矢量将会在输出场的插入期间产生非常明显的缺陷。
这些缺陷用就近观察的图12描述,在这里,奇偶性相反的两场之间的块的真实运动是通过具有+2的水平分量的矢量给定的。如果运动矢量是零,图中右手部分描述的缺陷出现在隔行扫描期间。为明显表示该缺陷,该行的高度已被夸张。
在本实施例的上下文中我们将自我限制到水平周期性(例如,具有垂直条带的斑马),这是因为主块的尺寸和运动矢量的可能的垂直分量的范围使得这类误差不大可能在不垂直方向出现。垂直分量的范围太受限制以致于不允许有效的检测和校正。然而,本领域的技术人员很容易适应下文中所描述的校正特别是对垂直周期性的校正。
现在提出两个阶段这种类型误差的检测和然后的校正从误差矩阵Err中检测这种类型的缺陷,事实上,含有矩阵最小单元的行也含有将要解释的一个或多个第二最小量(值)。
首先,含有最小值的误差行(Row(u))将被从矩阵中提取(-16<=u=+16)。令umin作为Row(u)的最小值的符号。第二最小值被初步检测,特点是它是一局部最小值Row(u-1)>Row(u)and Row(u+1)>Row(u)仅仅保留能满足该准则的第二最小值中的最小的那个值。令usec_min为行ROW(u)中u的符号。位于umin和usec_min位置之间的第二最大值然后被检测。其特点是它是一局部最大值Row(u-1)<Row(u)和Row(u+1)<Row(u)仅仅保留能满足该准则的第二最大值中最大的那个值。usec_max为ROW(u)中u的符号。
图5中的直方图代表这样一种情况的特征举例。
第二最小值和绝对最小值以及第二最大值经两次附加试验以证实周期性结构的存在-两个最小值应在数值上靠近(C1),-它们和第二最大值之间的差值应当比当前的噪声电平显著(C2)。
应采取这些预防措施制止将斑马边界上的主块考虑为周期性的。事实上,主块能骑在斑马的边界上,一半属于动物,另一半是热带稀树草原。该块能给出一个误差最小值,但是该最小值大于与周期性相联系的最小值。
注意下列公式Errmin=Row(umin)Errmax=Row(umax)Err_sec_min=Row(usec_min)Err_sec_max=Row(usec_max)以下是强制条件(C1)Err_sec_min-Errmin<a*Errmax(C2)Err_sec_max-Err_sec_min>b*Errminabs(C3)Errmax>c*Errminabs根据当前的实例a=0.5b=2c=4验明所有条件的误差行将从与可能含有周期性结构的块有关的矩阵中送出。
根据一变化例,只有头两个条件被组合。
与该主块相关联的矢量然后被校正。
为此目的,仅考虑周期性的主块是不够的。参照绘制的斑马,可以想象,不包括在主块中的动物的整个部分被删去,获得的是具有垂直条的矩形。当寻求与这矩形对应的先前帧的部分时,将找到若干可能的有条带的矩形,不可能决定应考虑是哪一个。为进行这种选择,主块被逐渐扩大以便消除不确定性。该处理描述在图6中,其中的阴影块是该帧一行的周期性块。
在一给定行中,检测到周期性主块会指明已经找到了含有周期性结构的该帧的整个区域。该主块的运动矢量不是立即被保留。相反,对应于该块的误差矩阵被存储。
现在转到同一行上的下一主块。如果它也是周期性的,它的误差矩阵再次被存储。最后达到周期性结构的端部,即在本例中的斑马的右边缘。
令(i1,j1)是遇到的第1周期性主块的坐标和(i2,j2)是最后一个周期性主块的坐标。所有存储的矩阵一项一项地相加,获得一个矩阵,其分量是对于所有的u∈[-16,-14,......14,16]和对于所有的u∈[-4,......,4]Sum(u,v)=∑Err(i,j)(u,v)i=i1,i2j=j1如果基本算法已经提供给宽度为单个主块宽度的(i2-i1+1)倍的一主块,则会获得相同的误差矩阵。显然该误差矩阵有相同的大小。
该矩阵还不足以确定良好的运动矢量。应当考虑周期结构开始处和结束处的块。事实上,这些块一般都包含有运动中的周期性区域的边缘,从而允许除去在误差矩阵中包含的信息的不确定性。
在确定上述的矩阵之后,进行如下过程-在周期性结构的开始和结束处考虑两个主块的矢量。从每一个的和矩阵中提取相应误差。保留误差最小的那个矢量。
-如果该矢量并不对应着误差矩阵的该行的局部最小值,就选择误差矩阵的最小值并保留相应的矢量。
-最后,为了获得相邻周期块之间的垂直相关性,要验证直接在这行诸周期块上的诸块中的一个是否也是周期性的,如果是,则保留它的矢量,只要它对应于在该误差矩阵的行中的一最小值。
于是保留的矢量将是用于周期结构的所有块的那个矢量。
在确定矢量和可能进行第1种和/或第2种校正之后,所获得的矢量场是
->
MB(i,j)其中0≤i≤22和0≤j≤35矢量场空间分辨率的细化在周期2和3期间该处理的阶段被连续使用2次。
设法通过将矢量划为更小单位子块/子块(在本例中具有4*4象素的尺寸)使运动的特征更精细。这将使矢量场能更好地适应运动目标的边界。
根据本例,在一帧宽度中有180个子块/子块和在高度上有144个子块。
根据本实施例,与可能的运动矢量的整个范围相关的误差不是如对主块的操作那样全都重新计算,对于每个子块,是从主块矢量中选择候选矢量并确定每个候选矢量产生的误差。
在本例的上下文中,子块的候选矢量是最贴近该子块的4个主块的矢量。产生最小误差的矢量将归属于该子块。
使用与相邻主块(即,与包含考虑中的子块的块相邻的主块)有关的候选矢量使得精密确定运动目标的边缘因而精密确定均匀运动区域的边界成为可能。如果运动目标的边缘只是稍微伸入一主块,则为它确定的矢量将是指示背景的矢量而不是运动目标的矢量,因为该主块象素的大多数属于该背景,其运动可以不同于目标的运动。因此,目标的边界不能正确地被再构成。
另一方面,如果相邻主块的矢量也被考虑用于该目标的边缘的子块,那么这些子块的运动将被正确地估算,这是因为,相邻主块的至少一个主块将形成该考虑中的目标的一部分。
场2设法确定使在场1和2/3之间子块的亮度中的差是最小的矢量场。然而,将最终显示输出场2。因此,为改进精度,考虑将子块作为形成该场2的一部分。
对于场2的每个子块,以下述方法确定4个相邻的主块该子块在场2/3上正交投影(见图8)。4个最贴近的块按如下选择对于子块(i,j)(0<i<180,0<j<144),4个相关的主块是
如果imod 8<4 则i′=-1 否则 i′=1如果jmod 4<2 则j′=1 否则 j′=1Rel(i,j)(1)=MB(iv8,jv4)Rel(i,j)(2)=MB(iv8+i′,jv4)Rel(i,j)(3)=MB(iv8,jv4+j′)Rel(i,j)(4)=MB(iv8+i′,jv4+j′)其中a除以b的欧几里得除法的商表示为aVb,它的余数表示为amodb。
一旦已经选择候选矢量,它们应当互相比较。如上所述,子块形成了显示场的一部分。所以在探究中的主块的矢量要按比例换算。其2/3是原来计算的,其结果被取整。这样就获得了场1和场2之间的运动矢量。余下的矢量对应于场2和场2/3之间的运动。如果这两个矢量被分别称为后(rear)矢量的前(front)矢量,则有当m=1,2,3Rear(i,j)(m)=int(23,Rel(i,j)(m))]]>Front(i,j)(m)=Rel(i,j)(m)-Rear(i,j)(m)同这4个矢量相关的4个误差然后被计算当m=1,2,3,4Err(i,j)(m)=Σk=0,2l=0,2[P′Sx·i+kSy·j+l+Front(i,j)(m),12]-P′[Sx·i+kSy·j+l-Rear(i,j)(m),O]]]>其中Sx和Sy代表子块的以横坐标与纵坐标象素为单位的尺寸。
子块矢量将是给出最小误差的矢量。通过扫描所有的子块,获得表示为Raw(i,j)的矢量场。
根据一个变化例,场矢量的分量要经过中值滤波,以消除虚假值事实上,在子块中的小误差不如矢量的局部不一致性明显。
假设a=(1 0)·Raw(i-1,j);a′=(0 1)·Raw(i-1,j)b=(1 0)·Raw(i,j);b′=(0 1)·Raw(i,j)c=(1 0)·Raw(i+1,i);c′=(0 1)·Raw(i+1,j)
矢量场于是被写成SB2(i,j)=med(a,b,c)med(a′,b′,c′).]]>所以根据对一给定子块的上述计算的矢量和水平相邻子块的矢量,对该给定子块执行中值滤波。
这样获得了用于4*4子块的矢量场。
对于每个子块也定义了与所选矢量相关的误差。该误差是设置在每个运动矢量中的可信度的度量。该误差被写成Err2(i,j)=Σk=0,1,2,3l=0,2[P′Sx·i+kSy·j+l·Front(i,j)12]-P′[Sxi+kSyj+l-Rear(i,j),0]]]>场3如同对场2所作的一样,与在场2/3和4之间估算运动时,也在子块区域中为场3作矢量计算。然而,该计算不同于以前。事实上,根据本实施例,对于场2/3和4之间的主块不计算运动矢量,以便节约延迟线。事实是,如果必须为场3计算主块的矢量和相邻子块的矢量,则必须为一给定子块计算所有相邻主块的矢量,这会导致大约相应于在主块一行中包含的线数的延迟。
场3的各子块矢量是根据来自场1和2/3之间的主块的以前计算的矢量场来计算的。由于子块的矢量是根据不再反映实际运动的矢量来计算的,在迅速运动的情况下就形成了问题。
根据本实施例,涉及主块的信息通过为被称作中间块的块创造一矢量场来更新,该中间块的尺寸恰好在主块和子块的尺寸的中间。
根据本实施例,中间组具有的尺寸是每4线32象素它们具有主块的宽度和子块的高度。具有与这些中间块相关的平均空间分辨率的矢量场根据场2/3和4和根据为场1和2/3确定的主块的矢量场来计算。子组矢量场将由此在第2阶段导出。可以看到,如果场1和2/3之间确定的矢量场被取作为后选矢量的源,则仍将根据场2/3和4的信息来进行误差计算。
如同场2的子块那样,认为计算是对属于输出场,即场3的中间块进行的。如以前一样,加给中间块的运动矢量将被分解为两个矢量。这样,对于一矢量(u,v),前矢量和后矢量被确定如下Front-23(u,v)]]>Rear=(u,v)Front与中间块(i,j)的运动矢量(u,v)相关的误差被写成Errlntermediate(i,j)=Σk=0,2,.,30l=0,2P′[Mx·i+kSy·j+l+Front(i,j),12]-P′[Mx·i+kSy·j+k-Rear(i,j),1]]]>对于场3的给定中间块,与它对应的主块被确定它是正交投影在场3上含有该中间块的主块。
对于给定中间块(i,j)的一确定数目的候选矢量被确定为-对应于主块的矢量;-通过利用在正方向的一个数字化步长修改它的水平分量而从上述主块矢量中导出的矢量;-通过利用在负方向的一个数字化步长修改它的水平分量而从上述主块中导出的矢量;(在上或在下)最靠近中间块的主块的矢量;通过利用在正方向的一个数字化步长修改它的水平分量而从上述主块中导出的矢量;通过利用在负方向的一个数字化步长修改它的水平分量而从上述主块中导出的矢量。
因此根据本实施例,这6个候选矢量将是如果jmod4v2则j1否则j=-1RelIB(i,j)(1)=MB(i,jv4)RelIB(i,j)(2)=MB(i,jv4)+20]]>RelIB(i,j)(3)=MB(i,jv4)+-20]]>
RelIB(i,j)(4)=MB(i,jv4+j′)RelIB(i,j)(5)=MB(i,jv4+j′)+20]]>RelIB(i,j)(6)=MB(i,jv4+j′)+20]]>其中a除以b的欧几里得除法的商表示为avb,它的余数表示为amodb。
第2和第3矢量具有与第1矢量相同的垂直分量,其水平分量被修改。相类似,第5和第6矢量具有与第4矢量相同的垂直分量,其水平分量被修改。这种选择是由于中间块的尺寸仅有两线高度。如果选择具有较大垂直尺寸的中间块,那么要考虑垂直分量的校正。然而在这里每个中间块只有两线,可靠地确定垂直分量并从而校正它是困难的。
于是为每个中间块计算与6个矢量中的每一个相关的误差。为一中间块保留的来自6个候选矢量的矢量是给出最小误差的那个矢量。
根据一变化例,水平分量的校正被取消,这就在有噪帧的情况下避免了过分大的不连续。
最后获得由IB(i,j)表示的具有平均空间分辨率的矢量场。
场3的运动估算的最后阶段包括从具有中间块的矢量场确定子块层次的矢量场。子块明显属于它形成其一部分的中间块。根据本实施例,为每个子块确定两个候选矢量。第1候选矢量是该子块形成其一部分的中间块的那个矢量,而第2矢量是下文将要定义的相邻中间块的那个矢量。
对于具有坐标(i,j)的子块,这两个候选矢量是如果imod8<4则i′=1否则i′=1Rel(i,j)(1)=IB(iv8,jv4)Rel(i,j)(2)=IB(iv8+i′,jv4)该矢的计算如下当m=1,2Front(i,j)(m)=int(23·Rel(i,j)(m))]]>Rear(i,j)(m)=Rel(i,j)(m)-Front(i,j)(m)
该误差的计算如下Whenm=1,2Err(i,j)(m)=Σk=0,2l=0,2[P′[Sx·i+kSy·j+l-Front(i,j)(m),12]-P′[Sx·i+kSy·j+l-Rear(i,j)(m),0]]]>给出最小误差的那个矢量将被保留。
矢量场(SB3(i,j))也经受中值滤波,然后算出对应的误差场(Err3(i,j))。
噪声降低;噪声降低包括两阶段空间噪声的降低;运动补偿后的时间噪声的降低。
第1阶段利用单个场中包含的信息,而第2阶段利用若干连续场(在本例中为两场)中包含的信息。
下文描述亮度滤波。
在本实施例的上下文中,不认为色度的空间滤波是必须的,色度样本对于定向类型的中值间滤波而言互相距离太遥远以致于不具有方向。非常明显,特别是如果色度信息较密,特别是如果它的分辨率等于亮度的分辨率,那么也可对色度滤波。
通过考察其大小被色度二次采样的因子除(即对于输入格式4∶2∶2,在x横坐标方向除以2)的输入场,色度的时间滤波直接从亮度的时间滤波中导出。运动矢量的x分量也应当除以此同一因子。
空间噪声降低,噪声的空间降低是为了减少输入场的脉冲噪声。
根据本实施例,空间滤波是一定向中值滤波,它的优点是不降低帧前部和帧的精细结构,而简单的线性滤波或中值滤波不具有这种优点。
定向中值滤波在3个象素上进行“当前”象素以及位于穿过当前象素的同一直线上的两个相邻象素。从这些限制看,4个可能的滤波方向是水平、垂直和两个对角线。
使待考虑方向的选择与在同一方向的3象素之间存在的相关性有关。下表说明,当前象素(X22)被其相邻象素包围
水平方向(称为d1)通过象素X21,X22和X23;垂直方向(称为d2)通过象素X12,X22和X32;第1对角线方向(d3)通过象素X31,X22和X13;第2对角线方向(d4)通过象素X11,X22和X33。
与每个方向有关的相关系数被分别表示为c1至c4,滤波值分别表示为m1至m4。
根据d1c1=min(|x21-x22|,|x23-x22|)m1=med(x21,x22,x23)根据d2c2=min(|x12-x22|,|x32-x22|)m2=med(x12,x22,x32)根据d3c3=min(|x13-x22|,|x31-x22|)m3=med(x13,x22,x31)根据d4c4=min(|x11-x22|,|x33-x22|)m4=med(x11,x22,x33)相关系数最弱的那个方向将被保留。
其它相关函数也被选择。相类似,如果使用的窗口允许,滤波也能在多于3个象素或多于3个方向上进行。
经过运动补偿的时间噪声的降低;运动估算的实质优点在于它允许应用在运动中补偿的噪声降低处理。
干扰电视图像的噪声具有近似为零的统计期望值的这一假说被用作起始点,即若干幅图像的时间平均值趋于零。因此该噪声的高频分量通过实行该帧的低通时间滤波而被降低。
一已知的滤波方法执行一个象素接一个象素的递归数字滤波。该方法包含为每个象素存储一确定数量的样本和在这些存储值和当前象素之间应用递归方程式。这样就可为当前象素确定滤波值和更新存储值。递归方程式的选择和存储的项目数确定了滤波效果。
然而,对一系列电视图像的低通时间滤波的应用有一主要缺陷由于该滤波的特殊特性,它产生一尾随所有运动目标的拖尾,该现象类似于在有明显余辉阴极射线管上看到的现象。该效应在某些商用电视机上非常明显。
根据本实施例,当使用递归等式时,利用已经计算出的运动矢量来降低该效应。递归将不对静止坐标的象素进行而对由运动矢量平移的象素进行。换言之,目标的位移被跟踪,使得属于运动目标的相同点的各帧象素互相对应。
在本例的上下文中,利用单个场存贮器来对(空间滤波后的)输入场降低时间噪声,将利用具有最大精度的矢量场,即子块矢量场。这些矢量在开始时将根据存储的场和噪声来被降低的输入场加以计算。这样获得的矢量场将被用于降低输入场的噪声。在如此处理的输入场和存储的场之间执行插入。用于插入的该两场从而已经经历了噪声降低。
在本例的上下文中,使用单个场存储器对每个象素仅保留过去的一个单一样本。因此递归关系到两项“当前”象素和一存储的样本。
噪声降低分成以下环节与递归方程式相关的象素的匹配;递归方程式的应用。
输入场一个子块一个子块地进行象素匹配。输入场的子块的象素和由在存储场中相应运动矢量指定的子块象素进行匹配。因此该存储场根据运动矢量的场而被投影。
如果输入场的亮度由
来表示,包含在存储器中的噪声降低后的场的亮度由
表示,被投影的场的亮度由
表示,则对于场2/3,后者被与成,x∈{0,1,...,720}y∈{1,3,5,...,575}P^2/3[xy,12]=P~1[xy-SB2(i,j),0]]]>其中i=xmod4j=ymod4对于场4x∈{0,1,...,720}y∈{0,2,4,...,574}P^4[xy,1]=P~2/3[xy-SB3(i,j),12]]]>其中i=xmod4j=ymod4现在来确定和应用递归方程式,它与上述的
和
相关,并给出
假设一目标的外貌从一帧到另一帧几乎不变,开假设任何情况下相对于滤波时间常数是慢变的,则亮度差只是由于噪声的原因。所以在本实施例上下文中,使用的递归方程式是P~[xy,t]=P[xy,t]+f(P^[xy,t]-P[xy,t])]]>其中f是适配噪声的非线性函数,它来自使用具有递归滤波器图(图10(b))的图10(a)所示的非线性函数NL。该函数在它曲线的开始处有一线性部分对于在接收的帧和它的投影之间小的差别,校正值最大,并且对输出象素作线性插入,其中投影用因子为3/4,接收的象素用因子为1/4。如果差值增加,在帧中删除一实际突变的概率也增加,而如果偏差太大,接收的象素被保护直到完全不考虑估算。
根据本实施例,该函数被适配于在计算运动矢量时估算的噪声中的方差在待降低的噪声和待保存的信息之间的差异能被这样地确定。
NL从而被写成
NLR+-→RxαNL(x)∀0≤x≤1:NL(x)=min(34x,910x(x-1)2)]]>x>1NL(x)=0,当f是在R+上定义的R中的R的奇函数时f(x)=2sxMNL(x2sxM)]]>其中S是通过该算法而测得的噪声的典型偏移,XM是该函数NL的局部最大值。
我们将要置S=Noiseest根据该例的一变化例,当相对于帧噪声而言在运动矢量中的置信度太低时,时间噪声不被降低。
根据又一个变化例,在沿着运动矢量场投影之前执行存储场的空间滤波。事实上,由于运动估算之前执行的二次采样,运动矢量的精度和随之的投影精度是两个象素。利用线性低通滤波消除进一步的细节。测量已证实,低通滤波进一步降低噪声电平近2dB。
插入为每个将被插入的场尽可能精确地获得一矢量场之后,这些将被显示的场准备从该信息和输入场导出。不会指向相同的目标,这取于所考虑的场。
特别是,必须遵循下述方针-设法使适于每一场的各种插入过程保持一致性两个类型的插入之间的差太大,导致一个场和另一个场呈现的差别,这种差别每秒重复75次,产生的闪烁比待减少的闪烁还烦人。
-采取步骤来防止加在运动矢量上的误差或场的误差产生过于明显的干扰,其中运动矢量上的误差虽然不大但是充分集中,而场的误差是实际矢量场和由于数字化所测量出的场之间的差别。此外在帧中存在的噪声不应危及插入处理。
场/(亮度)的插入场1是特例,偶数行被原样取出,而奇数行必须重新组成。
场1象素的亮度由P1(x,y)表示,其中(0≤x≤719;0≤y≤575)。
根据本实施例,利用多种类型的插入去重组丢失的行-通过取平均值的垂直线性插入(纯空间滤波);在不动的区域中场1和3的隔行扫描(纯时间滤波);利用运动矢量的插入(空间和时间滤波)。
根据与矢量及与主块误差有关的准则来一个主块一个主块地作出插入类型的选择。
与场1主块相关的矢量就是与在场2/3中的同一位置的主块相关的矢量。虽然运动不是为场1的块而是为场2/3的块估算的,这些矢量仍被作为依据。事实上,如果我们离开运动目标的边缘而运动和如果运动是有规律的,那么通过在场1块上直接估算而获得的矢量会类似于为场2/3计算的矢量。
垂直线性插入(纯空间滤波)是当检测的运动矢量的置信度太低时使用的退却的(fallback)解决方案。该插入P,[(x,y)]=12(P[xy-1,0]+P[xy+1,0])]]>被用于本实施例。
垂直平均的缺点是会引起在对角线上呈现非常明显的“台阶”。此外它给出最多等于普通电视机的中等清晰度。最后,它必然引起线闪烁,因为不能以该方法插入场2和3。从而,如有可能,要设法避免使用垂直平均。
所使用的纯空间滤波使用在下文描述的空间和时间滤波器中。
如果与主块相关的运动矢量是零,那么就进行称为纯时间滤波的滤波,其特点是在一不同场中选择场1的丢失行。从而两场的行被隔行配置。被选择用于确定一主块的静止特征的准则就是运动估算中的误差对一阈值作比较,如果误差低于该阈值,该块被认为是静止的。事实上,如果该块只有一部分是静止的,其它部分将仍会造成明显误差。
该准则被写成MBError(i,j)<th reshold x noiseest而被插入的象素被写成
当y是偶数P1(x,y) P(x,y,0)当y是奇数P1(x,y)Pxy12]]>与用平均法的垂直类型插入比较,本类型的插入允许可以有双倍垂直清晰度并消除行闪烁。
如果运动矢量不是零,或如果运动矢量是零,但与上述定义的相关误差有关的准则未被满足,那么使用空间和时间滤波来进行插入。在本实施例的上下文中这是中值类型的滤波。
中值类型的滤波允许维持一个好的清晰度和允许照顾帧的前部,这与纯线性滤波相反。
图11描述了该类型的插入。在该图中,“X”表示将被插入的象素,圆圈表示场1的象素,三角表示场2/3的象素。
插入象素的值用两个阶段来确定在第1阶段中,确定对应于3个滤波的F1、F2和F3的3个值;F1产生位于将被插入的象素上面的象素(b1)和位于将被插入的象素下面的象素(b2)的平均值;F2给出b1、b2和场2/3的象素(b)值之间的中值,其中象素b对应于用适当运动矢量对场1待插入象素的平移。
F3给出象素(b)值的中间值和相邻于待插入象素的4个对角线,象素(a1,c1,a2,c2)的值之间的中值。
在第2阶段中,由3个滤波给出的3个值确定中间值。
令MB(i,j)是该待插入象素形成其一部分的主块的矢量。
假设vx=(1 0)MB(i,j)vy=(0 1)MB(i,j)当y主偶数时P1(x,y)=P[xy,0]]]>
当y是奇数时F1(x,y)=12(P[xy-1,0]+P[xy+1,0])]]>F2(x,y)=med3(P[xy-1,0];P[xy+1,0];P[x+vxy+vy,12])]]>F3(x,y)=med5(P[x-1y-1,0];P[x-1y+1,0];P[x+1y-1,0];P[x+1y+1,0];P[x+vxy+vy,12])]]>最后P1(x,y)=med3(F1(x,y)F2(x,y)F3(x,y))相关于象素的7个值的滤波器被这样构成,其中单一的一个象素不属于当前场。因此减少了由不良的运动估算造成的后果。
另外,清晰度将被很好地维持,并且通过在垂直和对角线方向作用的定向中间滤波,目标的轮廓得到很限地跟踪。
场2(亮度)的插入场2依据在子块区域中的矢量场而被插入。该场的所有象素应当被插入,因为该场不是如场1那样在时间上与输入场组合。
为一致性起见,用于场2的插入机构的特性类似于已经用于场1的那些机构。
因此我们一个子块一个子块地进行。
如场1那样,如果与一子块的运动矢量相关的误差很大,那就用已经对场1用过的空间和时间滤波器进行插入。然而,因为场2在时间上位于场1和场2/3之间,所以场1和2/3之间的运动矢量被分解为两个矢量,一个(前矢量)表示场1和场2之间的运动,另一个表示场2和场2/3之间的运动。这两个矢量的每一个都取其整数值。应该记起,在与场2子块相关的运动矢量的计算期间,曾经利用了将一运动矢量分解为相等的两个矢量的方法。在两种情况中以同一方式取整以避免误差的增加。
如果,(i,j)表示包含待插入象素的子块的坐标,则这些矢量被计算为Rear(i,j)=int[23·SB2(i,j)]]]>Front(i,j)=SB2(i,j)-Rear(i,j)
然后确定3个初始值(a,b,c)。取决于该将被插入的象素是位于偶行或是奇行,计算是不同的。
当y是偶数时,假设a=P[xy-1+Front(i,j),12]]]>b=P[xy-Rear(i,j),0]]]>c=P[xy+1+Front(i,j),12]]]>那么P2(x,y)=med3((2*a+b)3;med3(a,b,c);(2*c+b)3)]]>当y是奇数时,类似地假设a=P[xy-1-Rear(i,j),0]]]>b=P[xy+Front(i,j),12]]]>c=P[xy+1-Rear(i,j),0]]]>那么P2(x,y)=med3((a+2*b)3;med3(a,b,c);(c+2*b)3)]]>通过图13描述该滤波。
P2(x,y)是插入象素的值,它对应于3个值的中值两个线性滤波器和一个中值滤波器用a,b和c象素值滤波的结果。
两个线性滤波器用与象素a、b、c和待插入象素的相对位置相对应的加权系数来进行时间插入。应注意这是两个纯时间滤波器,即利用在输入场的每个中的单个象素来滤波。这就能避免垂直分辨率的损失。
中值滤波器也允许该产生的场维持良好的空间分辨率,然而,它也允许3个场的各种插入过程保持一定的一致性。
如果与子块相关的运动矢量是零,或如果矢量的置信度是高的(低误差),那么,插入将是如场1情况的纯时间插入类型场1和2/3的线被隔行扫描当y是偶数时P2′(x,y)=P(x,y,0)当y是奇数时P2′(x,y)=P(x,y,1/2)该象素的第2可能值,称为退却值。也被加以计算。该值对应于线性滤波,由Fallback2(x,y)表示,上述线性滤波非常严格地截断在涉及的两场上的空间高频率Fallback2(x,y)=116(1234321)[13P(x-3,y,0)P(x-2,y,0)P(x-1,y,0)P(x,y,0)P(x+1,y,0)P(x+2,y,0)P(x+3,y,0)+23P(x-3,y,12)P(x-2,y,12)P(x-1,y,12)P(x,y,12)P(x+1,y,12)P(x+2,y,12)P(x+3,y,12)]]]>起因于运动矢量的置信度也表示为Conf(x,y)=Error2(x,y)NBPixel]]>其中NBPixel表示在二次采样的子块中包含的象素数,Conf(x,y)表示带给一象素的误差。
从而插入象素的值P2(x,y)是P2(x,y)=med3(P′2(x,y)-Conf(x,y)Scale,Fallback(x,y),P′2(x,y)+Conf(x,y)Scale)]]>
值P2(x,y)等于运动补偿后的象素值,但是被夹入使得它与退却的象素值的差不能大于由校正系数除置信度的值。
场3(亮度)的插入。
该过程非常类似于场2使用的过程。场3是根据场2/3和4(即下一循环的场1)和根据子块SB3(i,j)的矢量而插入的。只是该插入系数和行的奇偶性的表现发生变化。
从而矢量可以被计算为Front(i,j)=int[23·SB3(i,j)]]]>Rear(i,j)=SB3(i,j)-Front(i,j)]]>这些点被计算如下当y是奇数时,假设a=P[xy-1+Front(i,j),1]]]>b=P[xy-Rear(i,j),21]]]>c=P[xy+1+Front(i,j),1]]]>那么P3(x,y)=med3((a+2*b)3;med3(a,b,c);(c+2*b)3)]]>当y是偶数时,类似地假设a=P[xy-1-Rear(i,j),12]]]>b=P[xy+Front(i,j),1]]]>c=P[xy+1-Rear(i,j),12]]]>那么P3(x,y)=med3((2*a+b)3;med3(a,b,c);(2*c+b)3)]]>
图14描述该滤波。
如果置信度非常高和矢量是零,那么将再次选择纯时间插入y是偶数P3(x,y)=P(x,y,1)y是奇数P3(x,y)=P(x,y,1/2)然后计算退却象素,Fallback3(x,y)=116(1234321)[23P(x-3,y,12)P(x-2.y,12)P(x-1,y,12)P(x,y,12)P(x+1,y,12)P(x+2,y,12)P(x+3,y,12)+13P(x-3,y,1)P(x-2,y,1)P(x-1,y,1)P(x,y,1)P(x+1,y,1)P(x+2,y,1)P(x+3,y,1)]]]>和运动矢量中的置信度,Conf(i,j)=Error3(i,j)NBpixel]]>最后,如果置信度低,当防止象素从原有象素值移动太远时,建立显示象素的值P3/out(i,j)=med(P′3(i,j)Conf(i,j)Scale,Fallback3(i,j),P′3(i,j)+Conf(i,j)Scale)]]>能看到,由于该算法是以场2插入为模型的,所以很好地保证了与上一场的插入连续性。然而,由于各子块的矢量是根据为上一输入场确定的主块而计算出来的,所以这些子块矢量有一时间偏差,它使得该场清晰度比上一输入场差,特别是在运动迅速变化的情况下。
色度处理色度插入受到的限制比对亮度插入的严格限制要宽松得多。事实上,人眼的分辨率要弱得多。此外,在无线电频率网络上称为4∶1∶1格式的用于传输的标准,包括为每4件亮度信息传输一件色度信息之后结束二次采样,在两行上使色度信息再次等于它自身。所用滤波器的容差大得多,因此,我们将满足于使用简化的滤波器。
所以色度插入算法直接从亮度插入算法外推,其中考虑到各场包含的水平象素少一半,因而将运动矢量的水平分量除2。
对于场1,在亮度中使用7输入象素的滤波器被限制到3输入象素。
假设vx=12(10).MB(i,j)]]>vy=(0 1)-MB(i,j)当y是偶数时P1(x,y)=P[xy,0]]]>就y是奇数时F1(x,y)=12(P[xy-1,0]+P[xy+1,0])]]>F2(x,y)=med3(P[xy-1,0];P[xy+1,0];P[x+vxy+vy,12])]]>F3(x,y)=P[x+vxy+vy,12]]]>最后P1(x,y)=med3(F1(x,y)F2(x,y)F3(x,y))对于场2和3来说,亮度的中值时间滤波器被保留,而退却滤波器被取消。在噪声降低时间滤波器中,水平滤波器被取消,因为否则它将空间频率滤波得太低。
电影模式电影模式的情况是,产生的视频序列不是625/50/2,而是625/25/1。该序列是这样一种格式,即输入是逐行的,该输入意味着在相应的同一瞬时每个输入帧包含两场。
产生的全部问题是,事实上,如果上述算法应用于这样的序列而不作修改,由于主块计算将发生在同一帧的两场之间和所有随后的估算都将只会产生零矢量,从而运动的估算将完全被抑制。因而,如果没有检测到运动,就不能进行时间插入或运动补偿。这是非常恼人的,因为当这样的序列被显示时,每个输入帧仅能在屏上重复3次。这将导致跳动。在任何包含运动的序列中特别不希望有这种跳动。
使该跳动效应能被可观地降低的一种简单而便宜的解决方案如下修改信息处理阶段,使得两个不同帧之间的运动能被检测和估算,从而使时间的插入成为可能。
因此,主运动的估算(主块阶段)应在偶场1和奇场2/3之间进行而不是在奇场1和偶场2/3之间。图15的定时图描述了这种特定的操作模式。
所有处理将被偏移一50Hz场,这意味着,在输出处,将被插入的行具有与正常处理的行相反的奇偶性。然而,滤波和运动估算将严格地作完全相同的操作。以下将被依次产生逐行场1,它使用主块的矢量场,与此同时,维持各输入行和用以上描述的7点空间和时间中值滤波器插入其它行;逐行场2,它使用由输入场1和2/3估算的子块矢量场的逐行场2。这里也使用上述的3点中值时间滤波器。换言之,系数1/2和1/2被用于代替通常加权系数2/3和1/3;这意味着,这样产生的场2处在输入场1和2/3之间等距离的位置上。系数自身的简单修改使已被处理的所有帧上的容易被识别和感知的跳动得到明显地降低。图16给出降低跳动的图示;最后,逐行场3,它正常地使用由中间块校正的子块的矢量场。事实上,由于场2/3和4是从同一帧送出,因而在这两场之间没有运动。从而强制该矢量以及该置信度到零就足够了以这种方法,以前描述的滤波器将纯粹地和简单地将两个输入场隔行交错以重新产生一完美的隔行帧。
总之,电影模式能在不修改滤波和运动估算机构的情况下被加以处理一旦检测到电影模式的存在,只要监视处理的阶段,场滤波器2的插入系数和场3的矢量和置信度就足够了。因此这样获得的对跳动的降低是便宜的。
权利要求
1.一种用块估算运动的方法,它包括在第1帧(1)和第2帧(2/3)之间确定运动(MB(i,j))的第1矢量场的阶段,所述方法的特征在于还包括在所述第2帧和一第3帧(4)之间确定运动(IB(i,j))的第2矢量场的阶段,其中所述第2场的每个矢量从由从所述第1矢量场导出的候选矢量集中选出,以及根据在所述第2和第3帧中包含的信息来作出所述选择。
2.根据权利要求1所述的方法,其特征在于,从候选矢量中选择矢量的准则是最小偏差(Err)准则。
3.根据权利要求1或2所述的方法,其特征在于,为第1尺寸的各块确定所述第1矢量场(MB(i,j))和为小于或等于所述第1尺寸的第2尺寸的各块确定所述第2矢量场(IB(i,j))。
4.根据权利要求3所述的方法,其特征在于,当准备为时间上位于所述第2帧(2/3)和第3帧(4)之间的第4帧(3)确定所述第2矢量场时,与一矢量和与该第4帧的一给定块有关的偏差通过沿着所述矢量将所述块投影在所述第2和第3帧中,及通过估算这两个投影之间的差来得到估算。
5.根据权利要求4所述的方法,其特征在于,为所述第4帧(3)的当前块候选的各矢量是从对应于当前块在第2帧上正交投影而产生的块的第2矢量场的矢量中导出,和/或从相邻于该投影的各块的矢量中导出。
6.根据权利要求5所述的方法,其特征在于,对应于所述第2场的各块是对应于所述第1场的各块的水平或垂直条带,还在于所述第2场的各候选矢量包括所述投影的那个矢量,其中所述投影的水平或垂直分量已经修改了一个数字化单元或步长。
7.根据前述权利要求中的一个权利要求所述的方法,其特征在于,所述方法在50Hz至75Hz帧频转换系统中实行,其中第1矢量场在第1输入帧(1)和第2输入帧(2/3)之间被确定,第2矢量场在第2输入帧(2/3)和第3输入帧(4)之间确定,第1输出帧在时间上与第1输入帧(1)组合,第2输出帧(2)在时间上位于第1和第2输入帧之间,第三输出帧(3)在时间上位于第二和第三输入帧之间,第3矢量场在第2和第3输入帧之间被确定,用于该第3场的矢量的各候选矢量从第2场的各矢量中导出,对应于该第3场的各块具有的尺寸小于对应于第2场的各块。
8.根据前述权利要求中的一个权利要求所述的方法,其特征在于,如果由已经被强制到零的所述分量的一矢量引入的偏差和在任何情况下由该矢量引入的偏差之间的差值低于在整个帧中噪声的一个估算值,那么所述矢量的水平或垂直分量被强制到零,其中所述估算值由一常系数相乘如果rr(i,j)(0,v)-Err(i,j)(u,v)<Errminabs*threshold_x则u=0如果rr(i,j)(u,0)-Err(i,j)(u,v)<Errminabs*threshold_y则v=0
9.根据权利要求1至7中的一个权利要求所述的方法,其特征在于,如果在由已经被强制到零的所述水平或垂直分量的一矢量所引入的偏差和由具有相同垂直或水平分量的矢量所引入的偏差之间的差在一行或一列上总和低于在该帧中噪声的一估算值乘以一校正系数,那么使所述矢量的水平或垂直分量强制到零-水平分量Σu[Err(i,j)(0,v)-Err(i,j)(u,v)]<Errminabs*threshold′_x]]>-垂直分量Σv[Err(i,j)(u,0)-Err(i,j)(u,v)]<Errminabs*threshold′_y]]>
10.根据权利要求8或9中的一个权利要求所述的方法,其特征在于,在帧中的噪声的所述估算值是Errminabs=min{Errmin(i,j),(Errmax-Errmin)(i,j)i=1,...,aj=1,...,b其中a和b分别表示在第1矢量场中帧宽度上的和帧高度上的块数。
全文摘要
本发明涉及一种用块来估算运动的方法,它包含在第1帧(1)和第2帧(2/3)之间确定运动(MB(i,j))的第1矢量场的阶段。所述方法的特征还包括在所述第2帧和第3帧(4)之间确定运动(IB(i,j))的第2矢量场的阶段,其中每个第2矢量场从由第1矢量场导出的候选矢量集之中选出,该选择的作出与在第2和第3帧中包含的信息有关。本发明特别应用于电视领域。
文档编号G06F17/17GK1168062SQ9612394
公开日1997年12月17日 申请日期1996年12月22日 优先权日1995年12月22日
发明者凯瑟琳·亨伯格 申请人:汤姆森多媒体公司