用于改进基于块的运动补偿的精度的方法

文档序号:7655107阅读:251来源:国知局
专利名称:用于改进基于块的运动补偿的精度的方法
技术领域
本发明包括在使用基于块的运动补偿通过运动矢量产生内插的视频场的类型的视频图象上变换单元中的基于块的运动补偿的改进方法。在把不正确的运动矢量分配给象素时,本发明的改进方法可以得出运动补偿的象素的精确的数值。
背景技术
运动视频图象由视频发射机以一系列帧或画面的形式来进行发送。每个帧或画面可被单独地编码,但以视频速率顺序地被显示。每个视频帧由两个视频场组成,一个奇视频场和一个偶视频场。更具体地,用字母“A”表示的单独的帧可以由用字母“Ao”表示的奇场和用字母“Ae”表示的偶场组成。
当捕获或记录视频序列时,可能捕获到帧或场。当同时捕获到视频帧的奇场或偶场时,画面被称为“顺序的”画面。通常不使用奇场和偶场来描述顺序的画面,而是使用各个视频帧(例如,帧A,帧B)来描述顺序的画面。大多数电影内容由顺序的画面组成。
当视频帧的奇场和偶场在不同的时间被捕获时,画面被称为“交错的”画面。这两个场并不被组合起来同时显示。每个场被单独地处理和显示。大多数电视内容由交错的画面组成。
为了在传输过程达到最大效率,不是每个场或帧都被发送。也就是,某些单独的场或帧被丢弃以及不发送。丢弃的场或帧由视频接收机从发送的场或帧中得到的信息中重新产生。
例如,丢弃的场或帧可以通过简单地重复先前的场或帧而被重新产生。替换地,如果显示被延时,则跟随在丢弃的场或帧后面的下一个场或帧可被使用来代替丢弃的场或帧。也有可能通过对在丢弃的场或帧的每侧的相邻的场或帧进行平均而代替丢弃的场或帧。
这些简单的方法有某些困难。即使在视频图象中描绘很小的运动时,通过重复先前的场或帧(或使用下一个场或帧)来代替丢弃的场或帧,也会造成被觉察的图象的颠簸。对场或帧进行平均,即使在视频图象中描绘中等的运动时,也会造成被觉察的图象的模糊。
重新产生丢弃的场或帧的熟知的方法是运动补偿内插。在运动补偿内插(也称为“双向预测”)时,具有低的时间分辨率(典型地是帧速率的一半至三分之一)的子信号被编码,以及通过对低分辨率信号的内插和附加上校正项,可得出全分辨率信号。需要通过内插而重建的信号可通过把校正项附加到过去和将来参考的组合上而被得出。
视频序列以各种格式存在。例如,高清晰度(HD)电视视频序列可以以18个不同的格式的任一种格式被显示。把视频序列从一个格式变换到另一个格式的处理过程被称为“扫描速率变换”。
扫描速率变换可被使用来减小电视图象中的图象闪烁。例如,欧洲电视视频标准规定50Hz的频率。也就是,视频场以每秒50场的速率被显示。这种电视视频速率对于阻止电视图象中引人注意的闪烁是不够的。为了减小图象闪烁,通过在视频图象中原先的场之间内插附加的场,电视视频速率可以增加到100Hz。
扫描速率变换技术可被使用来把24Hz电影变换成60Hz视频图象。扫描速率变换技术也可被使用来把30Hz高清晰度(HD)摄影机图象变换成60Hz视频图象。
对于扫描速率变换所需要的附加场可以通过仅仅重复原先的场而被得到。然而,优选的方法是使用通过运动补偿内插的从顺序的到交错的变换。
在技术上需要一种运动补偿的改进方法,以便能产生内插的场,从而提供鲜明的视频图象。具体地,在技术上需要一种在不正确的运动矢量被分配给象素时可以得到运动补偿的象素的精确数值的改进方法。
发明概要本发明被设计成可以使用于这样一种类型的视频图象上变换单元中,它使用运动补偿来通过使用运动矢量产生内插的场。本发明包括一种改进的运动补偿方法,它对于象素执行运动补偿,以及确定与象素有关的运动矢量是否正确。
如果运动矢量不正确,则方法把该象素数值设置为先前记录的象素数值。先前记录的象素数值是通过对于该象素计算在来自先前的帧的相应的运动补偿的象素的数值与来自下一个场的相应的运动补偿的象素的数值之间的差值而得到的。然后把该差值与门限值进行比较。如果差值小于门限值,则象素数值被设置为等于来自先前的帧的相应的运动补偿的象素的数值与来自下一个场的相应的运动补偿的象素的数值的平均值。
本发明的改进方法包括以下步骤(1)对于在n象素乘m象素的阵列内的象素计算在来自先前的帧的相应的运动补偿的象素的数值与来自下一个场的相应的运动补偿的象素的数值之间的差值,(2)把该差值与门限值进行比较,(3)如果差值小于门限值,则把在n象素乘m象素的所述阵列内的象素数值设置为等于来自先前的帧的相应的运动补偿的象素的数值与来自下一个场的相应的运动补偿的象素的数值的平均值,以及(4)记录在n象素乘m象素的所述阵列内的象素数值。
本发明的改进方法也包括以下步骤(1)对于在象素决内的象素计算在来自先前的帧的相应的运动补偿的象素的数值与来自下一个场的相应的运动补偿的象素的数值之间的差值,(2)把该差值与门限值进行比较,(3)如果差值小于门限值,则把在象素块内的象素数值设置为等于来自先前的帧的相应的运动补偿的象素的数值与来自下一个场的相应的运动补偿的象素的数值的平均值,以及(4)如果差值不小于门限值,则把在象素决内的象素数值设置为等于当该象素被估值为在n象素乘m象素的阵列内的象素元素时先前对于该象素记录的数值。
本发明的主要目的是提供在使用运动补偿来通过运动矢量产生内插的视频场的这样一种类型的视频图象上变换单元中的运动补偿的上变换的改进方法。
本发明的附加目的是提供用于得到在一个被产生的场中所包括的运动补偿的象素的精确的数值的改进方法,所述被产生的场需要被内插在先前的帧与下一场之间。
本发明的另一个目的是提供用于得到运动补偿的象素的精确的数值的方法,它将通过确定与象素有关的运动矢量是否正确而提供在要被内插在先前的帧与下一个场之间的一个被产生的场中的鲜明的视频图象。
本发明的又一个目的是提供用于得到运动补偿的象素的精确的数值的方法,当与象素有关的运动矢量是不正确时它将通过提供精确的象素数值而提供在要被内插在先前的帧与下一个场之间的一个被产生的场中的鲜明的视频图象。
本发明的附加目的是提供用于确定要被使用来得到运动补偿的象素的精确的数值的门限值的方法,它将提供在要被内插在先前的帧与下一个场之间的一个被产生的场中的鲜明的视频图象。
上面相当广泛地列出了本发明的特性和技术优点,这样,本领域技术人员可以更好地了解以下的发明详细说明。此后将描述本发明的附加的特性和优点,它们形成本发明的权利要求的主题。本领域技术人员应当看到,他们可以容易地使用所揭示的概念和具体实施例作为基础,用于修正或设计用来实现本发明的同样的目的的其他结构。本领域技术人员也应当看到,这样的等价的结构在最广义的形式上并不背离本发明的精神和范围。
在进行发明详细说明之前,阐述在本专利文件中使用的某些单字和词组的定义可能是有利的术语“include(包括)”和“comprise(包括)”及其派生词是指不具有限制的包括;术语“or(或)”是包括,意思是和/或;词组“associated with(与有关)”和“associatedtherewith(与其有关)”及其派生词可以是指包括、被包括在内、与其关联、被包含在内、与其有联系、与其相耦合、可与其通信、与其合作、交织、并列、接近于、束缚于、具有、具有性质、等等;以及术语“controller(控制器)”,“processor(处理器)”,或“apparatus(设备)”是指控制至少一个运行的任何装置、系统、和系统的部件,这样的装置可以以硬件、固件或软件、或他们的至少两个的组合来实施。应当指出,与任何特定的控制器有关的功能可以被集中或分散,是本地地或远程地。对于某些单字和词组的定义被提供在本专利文件全文中,本领域技术人员应当看到,在许多情形下(如果不是大多数情形),这样的定义适应用对这样定义的单字和词组的先前的以及将来的使用中。
附图简述为了更全面地了解本发明及其优点,现在结合附图参考以下的说明,其中相同的数字表示相同的事物,其中


图1是利用本发明的改进方法的示例性高清晰度(HD)的顺序到交错变换器的方框图,图2显示视频信号的一系列输入顺序的帧;图3显示视频信号的一系列输出交错的帧;图4显示视频信号的先前的帧A,表示在时间T用于显示的五个象素;图5显示视频信号的下一个场B,表示在时间T+1用于显示的一个相应组的五个象素;图6显示视频信号的一个被产生的场C,表示在中间时间T+1/2用于显示的、通过运动补偿产生的相应的组的五个象素;图7显示一组9个象素块(在每个块中包含16个象素),其中第一组象素描绘沿第一方向运动的第一目标,以及第二组象素描绘沿第二方向运动的第二目标;图8显示在本发明的基于块的运动补偿方法中使用的三乘三象素块,用来得出在三乘三象素块内的一组9个象素的数值;图9显示图8所示的三乘三象素块被叠加到图7所示的一组9个象素块;图10是显示本发明的改进方法的第一部分的流程图;以及图11是显示本发明的改进方法的第二部分的流程图。
发明详细描述下面讨论的图1到11以及在本专利文件中为了描述本发明的原理而阐述的各种实施例仅仅是用作为说明,而无论如何不应当被看作为限制本发明的范围。在下面的有利的实施例的说明中,本发明的改进方法是结合高清晰度(HD)顺序到交错变换器被使用的。
本发明包括基于块的运动补偿的改进方法,它在不正确的运动矢量被分配给象素时通过得到运动补偿的象素的精确的数值而选择适当的运动补偿的象素。重要的是认识到,本发明的方法并不限于在HD顺序到交错变换器中使用。本领域技术人员将容易看到,本发明的原理也可以成功地应用于可把运动补偿技术应用到视频信号的任何类型的电子设备。在下面的说明中,HD顺序到交错变换器作为其中可以利用本发明的改进方法的设备的一个项目的例子而被描述。
图1显示高清晰度(HD)顺序到交错变换器100。HD顺序到交错变换器100接收来自SD输入110的标准清晰度(SD)视频信号或接收来自HD输入120的HD视频信号。正如下面更详细地解释的,HD顺序到交错变换器100通过使用运动补偿技术把顺序的HD材料变换成交错的格式。
HD顺序到交错变换器100包括场和行速率变换器130。场和行速率变换器130包括SAA4992集成电路(有时,“场和行速率变换器集成电路”被称为FALCONIC)。SAA4992集成电路由Philips半导体公司在市场上销售。场和行速率变换器130能够对于SD尺寸的视频图象实现扫描速率变换。
如图1所示,场和行速率变换器130通过复用器140接收来自SD输入110的SD视频信号。如果加到HD顺序到交错变换器100的输入是SD输入,则SD视频图象只传送通过复用器140而直接到场和行速率变换器130。SD视频图象然后被输出到SD输出160。
HD顺序到交错变换器100接收来自HD输入120的HD视频信号。如果加到HD顺序到交错变换器100的输入是HD输入,则HD视频图象必须被预滤波和被下采样为SD尺寸。这是在预滤波器和下采样器单元150中完成的。来自预滤波器和下采样器单元150的SD视频图象然后被发送到复用器140,以及被传送到场和行速率变换器130。
在预滤波器和下采样器单元150中的滤波器(未示出)是传统的低通滤波器,它被用来满足Nyquist(奈奎斯特)准则。滤波器可以包括一个11抽头的滤波器,它使用这样的滤波器抽头(1)0.015625,(2)0,(3)0.0703125,(4)0,(5)0.3046875,(6)0.5,(7)0.3046875,(8)0(9)0.0703125,(10)0,和(11)0.015625。
在HD视频图象被滤波后,它们根据以下条件以1或2或3的因子被下采样。(1)如果每行的象素数目大于1440和小于或等于2160,或(2)如果每帧的行数目大于1152和小于或等于1728,则下采样的因子被设置为等于3。(1)如果每行的象素数目大于720,或(2)如果每帧的行数目大于576,则下采样的因子被设置为等于2。如果上述的条件不满足,则视频图象是SD视频图象,以及不需要进行下采样。在这种情形下,下采样的因子被设置为等于1。预期大于2160象素乘1728象素的视频图象将需要4的下采样因子。在本文中,已知被使用的最大尺寸视频图象是1920象素乘1080象素。
在完成缩减处理过程后,SD尺寸视频图象被产生和被发送到场和行速率变换器130,以便用于运动估值。场和行速率变换器130产生用于下采样的SD尺寸视频图象的运动矢量。场和行速率变换器130的SAA4992集成电路支持运动矢量重叠模式。也就是,由场和行速率变换器130产生的运动矢量作为彩色数据被重叠在视频图象上。这种特性允许运动矢量直接从场和行速率变换器130读出。也就是,为了得出运动矢量,不需要附加的硬件或软件功能。
在得出SD运动矢量后,它们被发送到运动矢量后处理单元170。SD运动矢量在运动矢量后处理单元170中被换算成HD速度(即,幅度)。正如下面更全面地解释的,已换算的HD运动矢量然后被使用来从HD顺序的帧产生运动补偿的交错的HD场。
场和行速率变换器130的SAA4992集成电路起到高质量运动估值器的作用。因为场和行速率变换器130的SAA4992集成电路使用一个帧和一个场来执行运动估值,使用一个帧和一个场的同样的技术必须被使用于运动补偿。
如图2所示,输入包含顺序的帧A,B,C,D,E和F。如前所述,每个帧包含一个奇场和一个偶场。例如,帧“A”包含一个奇场“Ao”和一个偶场“Ae”。同样地,帧“B”包含一个奇场“Bo”和一个偶场“Be”。类似的奇场和偶场存在于其他输入的帧中。应用到输入帧(A,B,C,D,E和F)上的术语“顺序的”是指每个帧的奇场和偶场同时被取得,以及被组合在一起形成它们各自的帧。
如图3所示,输出视频信号在格式上是交错的。输出的奇场“Ao”从输入帧“A”被取得。输出的偶场“ABe”是通过对帧“A”和对输入序列的奇场“Bo”执行运动补偿而得到的。同样地,输出的奇场“Bo”从输入帧“B”被取得。输出的偶场“BCe”是通过对帧“B”和对输入序列的奇场“Co”执行运动补偿而得到的。图3所示的其余的交错的输出视频信号可类似地得到。在这种情形下,暂时丢失的场通过使用(1)先前的帧,和(2)下一个帧,和(3)运动矢量而被产生。
来自场和行速率变换器130的运动矢量按照被应用到预滤波器和下采样器单元150中的HD输入的下采样因子(DSF)而被换算。例如,假设mvx(i,j)和mxy(i,j)分别是在xy方向上的运动矢量,它们是从场和行速率变换器130得到的。于是,在运动矢量后处理单元170中产生的HD运动矢量将是mvxHD[(DSF)i,(DSF)j]=(DSF)mvx(i,j)(1)mvyHD[(DSF)i,(DSF)j]=(DSF)mvy(i,j)(2)可以看到,不仅运动矢量的速度(即,幅度)被换算,而且运动矢量的位置也被换算。这意味着,如果在SD视频图象中,运动矢量可应用到2乘2(2x2)的块,则在HD中它可应用到(DSF乘2)乘(DSF乘2)的块。换句话说,它可应用到(2 DSF)乘(2 DSF)的块。所以,如果下采样因子是2(DSF=2),则在SD中对于2乘2(2×2)的块的运动矢量可应用到在HD中4乘4(4×4)的块。
从场和行速率变换器130得出的运动矢量可以精确到象素的四分之一(0.25)。如果运动矢量以2的因子被换算,则可以预期运动矢量将只精确到象素的一半(0.50)。这是因为2乘以四分之一等于一半(2×0.25=0.50)。不幸地,这个预期不能被满足,因为运动矢量并不是精确到象素的一半(0.50)。这是由于在预滤波器和下采样器单元150中执行的、对HD输入的滤波和下采样可以导致对图象的平滑化和对物体运动的平滑化。由于在滤波和下采样处理过程期间引入的平滑作用,半个象素精度不能可靠地达到。
这意味着,通过对围绕所讨论的象素的各个相邻象素执行简单的计算,不可能达到象素的四分之一(0.25)的精度。这也意味着,换算的运动矢量不一定是非常可靠的,特别是在视频图象的边缘处。
在给定一个帧、一个场、及其相关的运动矢量后,任务是把信息上变换到HD信号,而同时使得视频信号中失真和错误最小化。一个现有技术方法是把来自帧和场的运动补偿的象素进行平均。如果运动矢量是精确的,则这个方法工作得相当好。然而,如果运动矢量不精确,则对来自帧和场的运动补偿的象素的平均将产生图象模糊,这在视频图象的慢运动区域中是非常引人注意的。
平均来自帧和场的运动补偿的象素的现有技术方法可以通过使用在图4、图5、和图6上显示的三个图的例子来说明。图4显示视频信号的先前的帧A,它显示在时间T用于显示的五个象素(A1,A2,A3,A4和A5)。图5显示视频信号的下一个场B,它显示在时间T+1用于显示的相应的一组的五个象素(B1,B2,B3,B4和B5)。在表示式“T+1”中的单位“1”代表在先前的帧A与下一个场B之间的一个时间单位。图6显示视频信号的产生的场C,它显示在先前的帧A与下一个场B之间的中间时间T+1/2用于显示的、通过运动补偿产生的相应的一组的五个象素(C1,C2,C3,C4和C5)。在表示式“T+1/2”中的单位“1/2”代表在先前的帧A与所产生的场C之间的半个时间单位。
考虑在所产生的场中的象素C4。任务是找到和产生等于这个象素的适当的数值。在先前的帧A中的象素A4是相应于象素C4的、在先前的帧A中运动补偿的象素。在下一个场B中的象素B4是相应于象素C4的、在下一个场B中运动补偿的象素。现有技术平均方法把象素A4的数值附加到象素B4的数值上,以及把这些数值的和值除以2,从而得出象素C4的数值。
这个现有技术的平均方法被顺序地应用来把在先前的帧A中的每个象素与在下一个场B中它的相应的象素进行平均,以产生一个用于所产生的场C的平均的象素组。
相反,本发明的改进方法单独地考虑每个象素,以及确定与所考虑的象素有关的运动矢量是否正确。如果用于所考虑的象素的运动矢量是正确的,则对于该象素使用平均方法。如果用于所考虑的象素的运动矢量是不正确的,则不使用平均方法。作为替代,正如下面更充分地解释的,使用先前在运动补偿过程期间记录的、对于象素的更精确的数值。
在本发明的改进方法中,来自运动矢量后处理单元170的HD运动矢量被发送到HD上变换单元180。如图1所示,HD上变换单元180也被连接到HD输入120,以及它可以接收来自HD输入120的输入的HD视频信号。HD上变换单元180然后具有以下的数据(1)来自被适当地换算的SD视频图象的运动矢量,和(2)HD帧,和(3)HD场,和(4)运动补偿的场的因果区域(Causal region)。因果区域是运动补偿的场的一个区域,它是由其运动补偿数值已被计算出来的象素组成的。
如前所述,运动矢量的数值在总体的意义上是良好的,但它们没有精确到象素的一半(0.50)。运动矢量只可能精确到一个或两个象素。这意味着,当使用现有技术平均方法时,边缘将呈现模糊。为了避免使视频图象模糊,本发明的改进方法只在用于象素的运动矢量是很精确时才把帧运动补偿象素与场运动补偿象素进行平均。当用于象素的运动矢量不精确时,本发明的改进方法选择和使用象素的先前记录的数值。如果象素的象素数值没有被记录,则本发明的改进方法使用某些其他运动补偿方法来得到象素的数值。
本发明的改进方法可以结合使用在图7、图8、和图9上显示的三个图的例子来说明。图7显示一组144个象素被划分成9个块,每个块包含16个象素。每个块中的16个象素被排列成一个4乘4的阵列。空的圆圈代表第一组象素,它描绘从左到右运动的第一物体。画阴影线的圆圈代表第二组象素,它描绘从顶部到底部运动的第二物体。
在包含一个四乘四象素阵列的每个块的中心处,是一个代表块的运动矢量的箭头。块710、720、730、740、和770的每个包含表示从左到右的运动的运动矢量。块750、760、780、和790的每个包含表示从顶部到底部右的运动的运动矢量。块710、720、730、740,和770的每个只包含用空的圆圈代表的象素。块750、760、780、和790的每个包含用空的圆圈代表的象素以及某些用画阴影线的圆圈代表的象素。
在基于块的运动补偿中,通常,一个块包含代表视频图象中两个不同的物体的象素。而且,通常,两个不同的物体在沿不同的方向运动。理想地,在这样的块中每个不同的部分的运动的方向应当被分配以一个运动矢量。不幸地,情况并不是这样。运动矢量估值器只对于每个块选择一个运动矢量。通常(由大多数类型的运动矢量估值器)所选择的运动矢量是一个给出绝对值差值的最小和值的运动矢量。
由于只分配一个运动矢量给每个块,这就意味着有可能一个块内的某些象素具有正确的运动矢量以及同一个块内的某些象素具有不正确的运动矢量。例如,在块750的右下角的9个画阴影线的圆圈具有正确的(顶部到底部)运动矢量。块750的其余7个空的圆圈具有不正确的(顶部到底部)运动矢量。对于块750的其余7个空的圆圈的运动矢量是左到右运动矢量。所以,当对于决750执行基于块的运动补偿时,相应于空的圆圈的象素的运动矢量将是不正确的。同一个问题存在于块760和块780中。
本发明的改进方法通过单独地考虑每个象素和确定用于块的运动矢量对于所考虑的象素是否正确,从而纠正这个问题。例如,假设希望在先前的帧A与下一个场B之间插入一个被产生的场C。对于被产生的场C的象素,通常是通过把帧A的运动补偿的象素(用AMC表示)与下一个场B的运动补偿的象素(用BMC表示)进行平均而被产生的。如果对于单独的象素的运动矢量是正确的,则对于该象素的AMC数值与对于该象素的BMC数值将是非常接近相等的。在某些情形下,两个数值将是相等的。然而,如果对于单独的象素的运动矢量是不正确的,则对于该象素的AMC数值与对于该象素的BMC数值将不是非常接近相等的。AMC的数值与BMC的数值将是非常不同的。
将一个单独的象素的AMC和BMC的数值进行比较,可以给出一种确定一个具体的运动矢量对于所考虑的单独的象素是否正确的简单而可靠的方式。当确定了对于一个单独的象素的AMC和BMC的数值是非常不同(即,数值上不接近)时,就表示与该象素有关的运动矢量是不正确的。
在对单独的象素执行运动补偿的同时,本发明的改进方法保存大量附加的相邻的象素的数值。在图8所示的本发明的有利的实施例中,那些其数值已被保存的附加的相邻的象素位于三乘三阵列800中。在阵列800中的象素1(用三角形来标记)代表正在对其执行运动补偿的象素。在阵列800中的象素2,象素3,象素4,象素5,象素6,象素7,象素8,和象素9(用交叉符号标记)代表当对于象素1执行运动补偿时那些其数值被保存的附加的相邻象素。
三象素乘三象素阵列800的尺寸只是用作为说明的,无论如何不应当看作为限制本发明的范围。显然,本发明的改进方法可以结合具有不同于三象素乘三象素的其他尺寸的阵列被使用。本发明的运行的原理不限于阵列800的特定的尺寸。一般地,阵列800可以是一个n乘m阵列,其中n是象素的行数,以及m是象素的列数。
为了了解本发明的改进方法的运行,考虑阵列800的布局和使用。图9显示在图7所示的象素组中阵列800的布局。具体地,图9显示在块740和块750的一部分中阵列800的放置。可以看到,块740中所有的象素用空的圆圈代表。也可以看到,块740的运动矢量(从左到右)对于块740中的所有的象素是正确的。然而,在块750中,运动矢量(从顶部到底部)对于块750中的所有的象素(它们用空的圆圈代表)是不正确的。
当对于阵列800的象素1执行运动补偿时,把AMC(来自先前的帧A的相应的运动补偿的象素)的数值与BMC(来自下一个场B的相应的运动补偿的象素)的数值进行比较。如果这两个数值之间的差值(即,AMC的数值减去BMC的数值)小于预定的门限值,则内插的象素数值(对于在产生的场C中的相应的象素1)将等于AMC和BMC的数值的平均值。该方法把AMC和BMC的数值进行相加,以及把这些数值的和值除以2,以得到对于在被产生的场C中内插的象素的一个数值。
适当的门限值可以通过使用这样的事实而被选择当相邻的象素之间的象素差值是10或更小时,是一个不太引人注意的差值。门限值可被选择为使得在AMC和BMC的两个数值之间的差值小于或等于10。这个门限值将确保内插的象素的数值将具有适当的视频图象质量。
如果这两个数值之间的差值(即,AMC的数值减去BMC的数值)大于预定的门限值,则内插的象素数值(对于在被产生的场C中的相应的象素1)将由另外的方法确定。
当对于阵列800的象素1执行运动补偿时,把阵列800的象素2到9的八个AMC(来自先前的帧A的运动补偿的象素)的数值记录在HD上变换单元180的存储器单元(未示出)中。阵列800的象素2到9的八个BMC(来自下一个场B的运动补偿的象素)的数值也被记录。在图9所示的事例中,阵列800的象素6和象素9相应于用画阴影线的圆圈代表的象素。
对于八个附加象素(即,象素2到象素9)中的每个象素,把AMC(来自先前的帧A的相应的运动补偿的象素)的数值与BMC(来自下一个场B的相应的运动补偿的象素)的数值进行比较。如果这两个数值之间的差值(即,AMC的数值减去BMC的数值)小于预定的门限值,则内插的象素数值(对于在被产生的场C中的相应的象素1)将等于AMC和BMC的数值的平均值。该方法把AMC和BMC的数值进行相加,以及把这些数值的和值除以2,从而得到对于在被产生的场C中内插的象素的数值。对于上述的理由,门限值可被选择为可使得AMC和BMC两个数值之间的差值小于或等于10。
如果对于特定的象素,这两个数值之间的差值(即,AMC的数值减去BMC的数值)大于预定的门限值,则没有任何数值记录在用于该象素位置的存储器内。
在上述的处理过程对于在如图所示的象素1的位置处的象素都完成后,处理过程对于块740的每个其他象素重复进行(以及象素信息被记录下来)。这是通过把阵列800的象素1顺序地定位在块740的每个其他象素上以及执行上述的方法而完成的。
运动补偿处理过程然后应用到块750中的象素。对块750中由空的圆圈代表的象素的AMC和BMC的数值的比较表明,它们具有不正确的运动矢量。这是由在AMC与BMC的数值之间的大的差值指示的。也就是,AMC和BMC的数值不是非常接近相等。
对于具有不正确的数值的象素(由于不正确的运动矢量而造成的),用于内插的象素的正确的数值可以从被存储在存储器中的先前的记录的数值得出。例如,在块750中的象素2,象素3,象素5,和象素8(以及块750中的阵列800外的三个其他的空的圆圈象素)具有不正确的数值,因为块的运动矢量是顶部到底部运动矢量。然而,较先得到的、对于象素2,象素3,象素5,和象素8的已记录的数值(如先前描述的)可以被使用来代替不正确的数值,以得出用于被产生的场C的、相应的象素的正确的内插数值。
如果对于特定的象素存储单元没有已记录的象素数值,则必须使用某些其他类型的运动补偿方法。
整个物体沿一个方向运动的事实是有用的。如果已知一个物体的一部分的运动方向,则同一个物体的其他部分的运动的方向也是已知的。已知一个物体的一部分的正确的方向,使得能够精确地内插丢失的象素。
由本发明的改进方法提供的象素数值可以消除由现有技术平均方法造成的视频图象中的许多模糊。由本发明的改进方法给出了鲜明地规定的运动补偿的视频图象。在要被选择的象素在视频图象运动期间位于被覆盖的(或未被覆盖的)物体的区域的情形下,由本发明的改进方法提供的象素值有助于选择两个象素选择方案中的更好的象素。这提高物体的被覆盖的(或未被覆盖的)区域的视频图象质量。
HD上变换单元180执行本发明的改进方法,以便选择适当的象素去组成一个被产生的场C。被产生的场C然后被插入(在时间T+1/2)在先前的帧A(在时间T)与下一个场B(在时间T+1)之间。内插处理过程被重复地应用,以便产生适当的输出交错场ABe,BCe,CDe,DEe,和EFe,如图3所示。HD上变换单元180的输出被发送到HD输出190。
图10是显示本发明的改进方法的第一部分的流程图。本发明的改进方法的第一部分的步骤总合在一起用参考数字1000表示。在第一步骤,n乘m阵列800中的第一象素被运动补偿。阵列800中的第一象素是一个其n值为1和m值为1的象素。在先前描述的例子中,n的最大值是3,以及m的最大值是3。然而,显然,n和m的数值可被选择为具有任何正整数值。
对于第一象素的AMC和BMC的差值是通过从AMC的数值中减去BMC的数值而被计算的(步骤1010)。然后,进行判决该差值是否小于门限值(判决步骤1020)。如果差值小于门限值,则在产生的场C中的第一象素的数值被设置为等于AMC和BMC的平均值(步骤1030)。在完成步骤1030后,控制进到步骤1070。
如果差值不小于门限值,则进行判决在用于第一象素的存储器中是否有已记录的数值(判决步骤1040)。如果在存储器中有已记录的数值,则在产生的场C中的第一象素的数值被设置为等于记录的数值(步骤1050)。在完成步骤1050后,控制进到步骤1070。如果在存储器中没有已记录的数值,则在产生的场C中的第一象素的数值通过使用另一个方法被确定(步骤1060)。在完成步骤1060后,控制进到步骤1070。
在完成步骤1030(或步骤1050或步骤1060)后,控制进到步骤1070,在其中计算阵列800中下一个象素的AMC和BMC的差值。从下一个象素的AMC的数值中减去下一个象素的BMC的数值(步骤1070)。然后,进行判决对于下一个象素的差值是否小于门限值(判决步骤1080)。如果差值小于门限值,则在被产生的场C中的第一象素的数值被设置为等于下一个象素的AMC和下一个象素的BMC的平均值(步骤1090)并记录在存储器中。在完成步骤1090后,控制进到判决步骤1095。
如果差值不小于门限值,对于在被产生的场C中的相应的象素没有数值被记录,以及控制进到判决步骤1095。判决步骤1095确定在阵列800中的最后的象素是否已被处理。如果最后的象素还没有被处理,则控制返回到步骤1070以及处理阵列800中下一个象素。如果在阵列800中的最后的象素已被处理,则本发明的改进方法的第一部分终结它的运行(结束步骤)。
本发明的改进方法的第一部分对阵列800中的象素执行运动补偿,以及保存位于阵列800内的附加的象素的正确的数值。当象素块(例如,块740)的每个象素被运动补偿时,本发明的改进方法的第一部分被重复执行。有关由改进方法的第一部分得到的象素数值的信息在改进方法的第二部分中被使用,这将在下面被描述。
图11是显示本发明的改进方法的第二部分的流程图。本发明的改进方法的第二部分的步骤合在一起用参考数字1100表示。改进方法的第二部分使用由改进方法的第一部分所记录的象素数值,以便提供在基于块的运动补偿的处理过程期间改进的精度。
在第一步骤,得到在象素块(例如,块750)中的第一象素(步骤1110)。对于该象素的AMC和BMC的差值是通过从AMC的数值中减去BMC的数值而被计算的(步骤1120)。然后,进行判决该差值是否小于门限值(判决步骤1130)。如果差值小于门限值,则在被产生的场C中的第一象素的数值被设置为等于AMC和BMC的平均值(步骤1140)。在完成步骤1140后,控制进到判决步骤1180。
如果在步骤1130的差值不小于门限值,则进行判决在存储器中是否有对于该象素的已记录的数值(判决步骤1150)。如果在存储器中没有对于该象素的已记录的数值,则控制进到步骤1170以及象素的数值通过使用另一个方法被确定。在完成步骤1170后,控制进到判决步骤1180。
如果在存储器中有对于该象素的已记录的数值,则象素的数值被设置为等于已记录的数值(步骤1160)。在完成步骤1160后,控制进到判决步骤1180。
判决步骤1180确定块中的最后的象素是否已被处理。如果最后的象素还没有被处理,则得到块的下一个象素(步骤1190)以及控制进到步骤1120,在其中处理下一个象素。如果块中的最后的象素已被处理,则本发明的改进方法的第二部分终结它的运行(结束步骤)。本发明的改进方法的第二部分可以按需要重复地被使用于每个随后的象素块。
本发明的改进方法是通过使用一个其中有两个不同的运动矢量的说明性例子被描述的。然而,显然,本发明的改进方法的原理并不限于两个运动矢量的情形,而是可一般地应用于任何数目(例如,两个,三个,四个或更多个)的运动矢量。
同样地,虽然本发明是对于高清晰度(HD)顺序到交错变换器的说明性例子被描述的,但本发明的改进方法的原理并不限于使用于特定的类型的设备。显然,本领域技术人员应当看到,他们可以在这里作出各种改变、替换和变换,而在最广泛的形式上不背离本发明的精神和范围。
权利要求
1.一种高清晰度顺序到交错变换器(100),包括高清晰度视频图象上变换单元(180),它使用运动补偿通过使用运动矢量来产生内插的场,其中所述高清晰度视频图象上变换单元(180)能够对于在n象素乘m象素的阵列(800)内的象素,计算在来自先前的帧的相应的运动补偿的象素(AMC)的数值与来自下一个场的相应的运动补偿的象素(BMC)的数值之间的差值;把所述差值与门限值进行比较;如果所述差值小于所述门限值,则把在n象素乘m象素的所述阵列(800)内的所述象素的数值设置为等于来自所述先前的帧的所述相应的运动补偿的象素(AMC)的数值与来自所述下一个场的所述相应的运动补偿的象素(BMC)的数值的平均值;以及记录在n象素乘m象素的所述阵列(800)内的所述象素的所述数值。
2.如权利要求1中要求的高清晰度顺序到交错变换器(100),其中所述高清晰度视频图象上变换单元(180)能够对于在n象素乘m象素的阵列(800)内多个象素中的每个象素,计算在来自先前的帧的相应的运动补偿的象素(AMC)的数值与来自下一个场的相应的运动补偿的象素(BMC)的数值之间的差值;把所述差值与门限值进行比较;如果所述差值小于所述门限值,则把在n象素乘m象素的所述阵列(800)内的所述多个象素中的每个象素的数值设置为等于来自所述先前的帧的所述相应的运动补偿的象素(AMC)的数值与来自所述下一个场的所述相应的运动补偿的象素(BMC)的数值的平均值;以及记录在n象素乘m象素的所述阵列(800)内的所述多个象素的所述数值。
3.如权利要求2中要求的高清晰度顺序到交错变换器(100),其中所述高清晰度视频图象上变换单元(180)能够对于在象素块(750)内的象素,计算在来自先前的帧的相应的运动补偿的象素(AMC)的数值与来自下一个场的相应的运动补偿的象素(BMC)的数值之间的差值;把所述差值与门限值进行比较;如果所述差值小于所述门限值,则把在象素块(750)内的象素的数值设置为等于来自所述先前的帧的所述相应的运动补偿的象素(AMC)的数值与来自所述下一个场的所述相应的运动补偿的象素(BMC)的数值的平均值;以及如果所述差值不小于所述门限值、和如果对于所述象素的已记录的数值先前被记录,则把在象素块(750)内的象素的数值设置为等于当所述象素作为在n象素乘m象素的所述阵列(800)内的象素单元被估值时对于所述象素先前被记录的数值。
4.如权利要求3中要求的高清晰度顺序到交错变换器(100),其中所述高清晰度视频图象上变换单元(180)能够对于在象素块(750)内多个象素中的每个象素,计算在来自先前的帧的相应的运动补偿的象素(AMC)的数值与来自下一个场的相应的运动补偿的象素(BMC)的数值之间的差值;把所述差值与门限值进行比较;如果所述差值小于所述门限值,则把在象素块(750)内的多个象素中的每个象素的数值设置为等于来自所述先前的帧的所述相应的运动补偿的象素(AMC)的数值与来自所述下一个场的所述相应的运动补偿的象素(BMC)的数值的平均值;以及如果所述差值不小于所述门限值、和如果对于所述象素的已记录的数值先前已被记录,则把在象素决(750)内的多个象素中的每个象素的数值设置为等于当所述多个象素中的每个象素作为在n象素乘m象素的所述阵列(800)内的象素单元被估值时对于所述多个象素中的每个象素的先前被记录的数值。
5.如权利要求4中要求的高清晰度顺序到交错变换器(100),其中所述所述门限值不大于10。
6.如权利要求1中要求的高清晰度顺序到交错变换器(100),其中所述高清晰度视频图象上变换单元(180)能够对于在n象素乘m象素的阵列(800)内多个象素中的第一象素执行运动补偿;确定对于不同于所述第一象素的、在n象素乘m象素的所述阵列(800)内所述多个象素的每个象素的象素数值;记录对于不同于所述第一象素的、在n象素乘m象素的所述阵列(800)内所述多个象素中的每个象素的所述象素数值;对于在象素块(750)中多个象素中的每个象素执行运动补偿;确定被分配给在所述象素块(750)中所述多个象素中的一个象素的运动矢量是否不正确的;当确定了被分配给所述象素的所述运动矢量是不正确时,得到对于所述象素的先前记录的象素数值;以及把所述象素的数值设置为等于对于所述象素的所述先前记录的象素数值,其中所述先前记录的象素数值是对于不同于所述第一象素的、在n象素乘m象素的所述阵列(800)内所述多个象素中的每个象素记录的所述象素数值之一。
7.一种高清晰度接收机,包括高清晰度顺序到交错变换器(100),该变换器(100)包括高清晰度视频图象上变换单元(180),它使用运动补偿来通过使用运动矢量产生内插的场,其中所述高清晰度视频图象上变换单元(180)能够对于在n象素乘m象素的阵列(800)内的象素,计算在来自先前的帧的相应的运动补偿的象素(AMC)的数值与来自下一个场的相应的运动补偿的象素(BMC)的数值之间的差值;把所述差值与门限值进行比较;如果所述差值小于所述门限值,则把在n象素乘m象素的所述阵列(800)内的所述象素的数值设置为等于来自所述先前的帧的所述相应的运动补偿的象素(AMC)的数值与所述下一个场的所述相应的运动补偿的象素(BMC)的数值的平均值;以及记录在n象素乘m象素的所述阵列(800)内的所述象素的所述数值。
8.如权利要求7中要求的高清晰度接收机,其中所述高清晰度视频图象上变换单元(180)能够对于在n象素乘m象素的阵列(800)内多个象素中的每个象素,计算在来自先前的帧的相应的运动补偿的象素(AMC)的数值与来自下一个场的相应的运动补偿的象素(BMC)的数值之间的差值;把所述差值与门限值进行比较;如果所述差值小于所述门限值,则把在n象素乘m象素的所述阵列(800)内的所述多个象素中的每个象素的数值设置为等于来自所述先前的帧的所述相应的运动补偿的象素(AMC)的数值与所述下一个场的所述相应的运动补偿的象素(BMC)的数值的平均值;以及记录在n象素乘m象素的所述阵列(800)内的所述多个象素的所述数值。
9.如权利要求8中要求的高清晰度接收机,其中所述高清晰度视频图象上变换单元(180)能够对于在象素块(750)内的象素,计算在来自先前的帧的相应的运动补偿的象素(AMC)的数值与来自下一个场的相应的运动补偿的象素(BMC)的数值之间的差值;把所述差值与门限值进行比较;如果所述差值小于所述门限值,则把在象素块(750)内的象素的数值设置为等于来自所述先前的帧的所述相应的运动补偿的象素(AMC)的数值与所述下一个场的所述相应的运动补偿的象素(BMC)的数值的平均值;以及如果所述差值不小于所述门限值、和如果对于所述象素的记录的数值先前已被记录,则把在象素块(750)内的象素的数值设置为等于当所述象素作为在n象素乘m象素的所述阵列(800)内的象素单元被估值时对于所述象素先前被记录的数值。
10.如权利要求9中要求的高清晰度接收机,其中所述高清晰度视频图象上变换单元(180)能够对于在象素块(750)内多个象素中的每个象素,计算在来自先前的帧的相应的运动补偿的象素(AMC)的数值与来自下一个场的相应的运动补偿的象素(BMC)的数值之间的差值;把所述差值与门限值进行比较;如果所述差值小于所述门限值,则把在象素块(750)内的多个象素中的每个象素的数值设置为等于来自所述先前的帧的所述相应的运动补偿的象素(AMC)的数值与所述下一个场的所述相应的运动补偿的象素(BMC)的数值的平均值;以及如果所述差值不小于所述门限值、和如果对于所述象素的记录的数值先前已被记录,则把在象素块(750)内的多个象素中的每个象素的数值设置为等于当所述多个象素中的每个象素作为在n象素乘m象素的所述阵列(800)内的象素单元被估值时对于所述多个象素中的每个象素先前被记录的数值。
11.如权利要求10中要求的高清晰度接收机,其中所述所述门限值不大于10。
12.如权利要求7中要求的高清晰度接收机,其中所述高清晰度视频图象上变换单元(180)能够对于在n象素乘m象素的阵列(800)内多个象素中的第一象素执行运动补偿;确定对于不同于所述第一象素的、在n象素乘m象素的所述阵列(800)内所述多个象素中的每个象素的象素数值;记录对于不同于所述第一象素的、在n象素乘m象素的所述阵列(800)内所述多个象素中的每个象素的所述象素数值;对于在象素块(750)中多个象素的每个象素执行运动补偿;确定被分配给在所述象素块(750)中所述多个象素中的一个象素的运动矢量是否不正确的;当确定了被分配给所述象素的所述运动矢量不正确时,得到对于所述象素的先前记录的象素数值;以及把所述象素的数值设置为等于对于所述象素的所述先前记录的象素数值,其中所述先前记录的象素数值是对于不同于所述第一象素的、在n象素乘m象素的所述阵列(800)内所述多个象素中的每个象素记录的所述象素数值之一。
13.一种信号,包括高清晰度顺序到交错变换器(100)的输出信号,该变换器(100)包括高清晰度视频图象上变换单元(180),它使用运动补偿通过使用运动矢量来产生内插的场,其中所述高清晰度视频图象上变换单元(180)能够对于在n象素乘m象素的阵列(800)内的象素,计算在来自先前的帧的相应的运动补偿的象素(AMC)的数值与来自下一个场的相应的运动补偿的象素(BMC)的数值之间的差值;把所述差值与门限值进行比较;如果所述差值小于所述门限值,则把在n象素乘m象素的所述阵列(800)内的所述象素的数值设置为等于来自所述先前的帧的所述相应的运动补偿的象素(AMC)的数值与所述下一个场的所述相应的运动补偿的象素(BMC)的数值的平均值;以及记录在n象素乘m象素的所述阵列(800)内的所述象素的所述数值。
14.一种在使用运动补偿通过使用运动矢量产生内插的场的那种类型的视频图象上变换单元中使用的运动补偿方法,包括以下步骤对于在n象素乘m象素的阵列内的象素,计算在来自先前的帧的相应的运动补偿的象素的数值与来自下一个场的相应的运动补偿的象素的数值之间的差值;把所述差值与门限值进行比较;如果所述差值小于所述门限值,则把在n象素乘m象素的所述阵列内的所述象素的数值设置为等于来自所述先前的帧的所述相应的运动补偿的象素的数值与所述下一个场的所述相应的运动补偿的象素的数值的平均值;以及记录在n象素乘m象素的所述阵列内的所述象素的所述数值。
15.一种在使用运动补偿通过使用运动矢量产生内插的场的那种类型的视频图象上变换单元中使用的运动补偿的方法,包括以下步骤对于象素执行运动补偿;以及确定被分配给所述象素的运动矢量是否不正确的。
16.如权利要求15中要求的方法,还包括以下步骤当确定了被分配给所述象素的所述运动矢量不正确时,得到对于所述象素的先前记录的象素数值;以及把所述象素的数值设置为等于对于所述象素的所述先前记录的象素数值。
17.如权利要求16中要求的方法,其中得到对于所述象素的先前记录的象素数值的步骤包括从存储器中得到对于所述象素的先前记录的象素数值,这个象素数值是通过一个包括以下步骤的方法被确定的当所述象素是在n象素乘m象素的阵列内的一个象素单元时,对于所述象素计算在来自先前的帧的相应的运动补偿的象素的数值与来自下一个场的相应的运动补偿的象素的数值之间的差值;把所述差值与门限值进行比较;如果所述差值小于所述门限值,则把在n象素乘m象素的所述阵列内的所述象素的数值设置为等于来自所述先前的帧的所述相应的运动补偿的象素的数值与所述下一个场的所述相应的运动补偿的象素的数值的平均值。
全文摘要
一种运动补偿的方法,被使用在视频图象上变换单元中,该视频图象上变换单元属于使用运动补偿来通过运动矢量产生内插的场的那种类型。该方法对于象素执行运动补偿以及确定被分配给所述象素的运动矢量是否正确。如果运动矢量不正确,方法把象素数值设置为先前记录的象素数值。先前记录的象素数值是通过对于象素计算在来自先前的帧的相应的运动补偿的象素的数值与来自下一个场的相应的运动补偿的象素的数值之间的差值而得到的。然后把该差值与门限值进行比较。如果差值小于所述门限值,则把象素的数值设置为等于来自先前的帧的相应的运动补偿的象素的数值与来自下一个场的相应的运动补偿的象素的数值的平均值。
文档编号H04N7/46GK1423902SQ01808091
公开日2003年6月11日 申请日期2001年12月11日 优先权日2000年12月15日
发明者N·R·丹特瓦拉 申请人:皇家菲利浦电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1