用于视频图像数据中的基于行的运动补偿的方法、装置和系统的制作方法

文档序号:7940140阅读:199来源:国知局
专利名称:用于视频图像数据中的基于行的运动补偿的方法、装置和系统的制作方法
技术领域
本发明涉及一种用于视频图像数据中基于行的运动估计和基于行的运动补偿的 方法、装置和系统。本发明还涉及一种包括实现所述方法的程序代码的计算机程序产品和 包括所述计算机程序的数据载体。
背景技术
根据本发明的方法、装置和系统被配置为通过基于行的运动估计和补偿来计算 视频图像数据的经插值的图像数据,检测并处理作为执行基于行的运动补偿的结果而获得 的经插值的图像数据中的错误。本发明实现了 芯片内部存储器的高效使用;能够实现基 于行的运动估计和补偿的组件、设备和/或模块的高效交互;以及对作为执行基于行的运 动补偿的结果而获得的经插值的图像数据进行处理,其中,显著地并同时以高效方式提高 了要可视化的结果图像数据的质量。下文中,将关于对视频处理装置(如具有行存储设备的微处理器或微控制器)内 的用于基于行的运动估计和运动补偿的视频信号进行的处理来描述本发明及其潜在问题, 而应当注意,本发明不限于该应用,而还可以用于其他视频处理装置。基于100/120HZ帧率甚至更高帧率的电视机的市场倡导要求开发可靠的场/帧率 上转换(FRU)技术来移除画面中的伪像,如大面积闪烁和线条闪烁。对要在显示器上显示 的缺失图像场进行插值而不执行对连续图像场中的运动目标的运动估计和补偿的标准FRU 方法,在许多应用中是令人满意的,特别是在图像的较好的质量和上述伪像的减少的方面 尤其如此。然而,许多画面包含引起所谓的运动抖动的运动目标,如人、字幕等。参照图1更好地理解该问题,其中,假设原始图像场(即,发送和接收到的图像场) 中的运动目标(白方块)的运动轨迹是直线的。如果缺失场/帧是由通过上述标准FRU方 法(即,没有运动估计和补偿)插值产生的,则插值后的场中的运动目标(黑灰方块)的运 动不在观察者预期的位置上(虚方块)。这样的伪像是可见的并引入模糊效应,特别是快速 运动目标的模糊效应。典型地,这些模糊效应显著地降低了所显示图像的质量。为了避免这样的模糊效应并减少伪像,提出了多种运动估计和运动补偿(或简称 MEMC)的方法。该MEMC提供了,对接收到的图像场内的运动部分或目标的检测,然后根据所 估计的运动通过对所估计的场中的缺失目标或部分进行插值来对缺失场进行插值。图2示意性示出了两个连续图像场之间运动目标的位置的改变。在两个连续接收 的图像场/帧之间,运动目标将已改变了它们的位置,例如位置A中先前场/帧T中的目标 M0随后在当前场/帧T+1中位于位置B。这表明,从先前场/帧T至当前场/帧T+1存在 运动。连续图像场/帧中目标的这种运动可以由所谓的运动矢量表示。运动矢量AB表示 从先前场T中的位置A至当前场/帧T+1中的位置B的目标M0的运动。该运动矢量AB典 型地具有水平和垂直矢量分量。从先前场T中的点A开始并将该运动矢量AB应用于目标 M0,然后将目标M0平移到当前场/帧T+1中的位置B。必须通过考虑运动目标M0的相应位置A、B,对先前场T和当前场T+1插值来计算必须进行插值的缺失场/帧T+1/2 中的目标 M0的缺失位置I。如果目标M0在先前场/帧和当前场/帧之间没有改变其位置,例如,如 果A和B是相同的,则通过将A平移运动矢量|AB |/2来获得缺失场中位置I。这样,利用位 于正确位置的运动目标插值出缺失场T+1/2,从而有效地避免模糊效应。理论上,对于场的每个像素,必须计算相应的运动矢量。然而,这将增加所需的计 算量,从而存储器需求巨大。为了降低该巨大的计算量和存储器工作,基本上存在两种不同 的方法第一种方法采用所谓的基于块的MEMC。该第一种方法假设图像中的目标的尺寸始 终大于单个像素的尺寸。因此,将图像场划分成若干图像块。对于MEMC,仅针对每个块计算
一个运动矢量。第二种方法采用所谓的基于行的MEMC。在该第二种方法中,算法基于场的单行或 该行的一部分的减少的视频输入数据集合。本发明是基于该第二种MEMC方法。在当前基于行的MEMC系统中,通常将图像数据存储在本地缓冲器或芯片存储器 (所谓的行存储器)中,这需要相当大的带宽。许多当前MEMC系统(如Gerard de Haan在 EP 765 571 B1和US 6,034,734中描述的实现方式)应用高速缓存存储器(例如,二维缓 冲器)来降低带宽要求并存储图像的子集。运动补偿设备或模块在应用运动矢量时从该高 速缓存中取出视频图像数据。典型地,在MEMC系统中,该高速缓存覆盖运动矢量的整个搜 索范围。通常,高速缓存由大量所谓行存储器组成。这导致相当大量的存储器,例如,720像 素宽和24行(具有关联的[-12-+12]最大垂直矢量范围)。包括大量单行存储器的这种高 速缓存需要仅MEMC数据缓冲所需的大型存储器。因此,处理器内的存储器部分覆盖相对大 的芯片面积。常用的MEMC算法补偿沿着两个方向的运动,即,沿着水平方向和垂直方向的运 动。对于该操作,存储器的存取是随机可行的,对于硬件应用,这需要针对不同时间输入数 据流的视频处理器内的足够的嵌入式芯片存储器。如上已经概括的,该嵌入式芯片存储器 的大小完全取决于针对目标运动的搜索范围(即,搜索区域),其中,运动估计可以匹配两 个时间位置中的类似视频模式,并像素每帧或每场为单位导出运动的速度。然而,该匹配处理并非始终以理想方式工作,这是由于需要确定所测量的运动矢 量的质量的方法。因此,对于其他时间输入视频信号的内部存储而言,需要附加存储器资 源。然而,这增加了嵌入式存储器的量,甚至还导致芯片面积的增加,这是由于对于集成电 路而言,芯片内部存储器主要确定芯片面积。因此,该芯片变得越来越贵。特别地,在主流 市场部分(如对于现代等离子和IXD电视),这些附加成本典型地形成了针对MEMC实现方 式的限制因素。因此,本发明基于提供一种对芯片内部资源的更高效地使用的目标,特别是关于 运动估计和运动补偿对芯片内部存储器的更高效地使用,其中,同时提高结果图像数据的质量。

发明内容
该目标可以通过以下方式来实现一种包括根据权利要求1的特征的、用于视频 图像数据中的基于行的运动估计和基于行的运动补偿的方法;一种包括根据权利要求15的特征的、用于视频图像数据中的基于行的运动估计和基于行的运动补偿的装 置;一种包 括权利要求30的特征的电视机;一种包括根据权利要求31的特征的计算机程序产品;一 种包括根据权利要求33的特征的数据载体;和/或一种包括根据权利要求34的特征的、用 于视频图像数据中的基于行的运动估计和基于行的运动补偿的系统。本发明的其他实施例还具有相应的从属权利要求。本发明的目的是通过特别针对运动画面的连续场/帧中的运动估计和补偿后的 场/帧率上转换、用于视频图像数据中的基于行的运动估计和基于行的运动补偿的方法来 实现的,该方法包括以下步骤_通过执行基于行的运动估计,来提供用于当前场/帧的图像数据中的基于行的 运动补偿的运动矢量集合;-通过使用所提供的运动矢量集合来对当前场/帧的图像数据进行插值,来执行 基于行的运动补偿;_作为执行基于行的运动补偿的结果,提供当前场/帧的图像数据的插值后的图 像数据;以及_如果根据来自运动矢量集合、被指示为对于基于行的运动补偿不可靠的运动矢 量对区域中的至少一个像素进行了插值,则对当前场/帧的插值后的图像数据的区域进行 模糊化。本发明的一个基本思想是基于以下结论对于主流市场部分,性能从而搜索范围 受限于自然捕捉场景中最可能的水平运动的出现。因此,本发明描述了仅沿水平方向操作 的运动估计和运动补偿(基于行的运动估计和运动补偿)。由于根据本发明仅需要视频图 像数据的逐行存储,这提供了减少芯片嵌入式存储器的可能性。当执行基于行的图像处理 时,根据本发明仅沿水平方向执行以上提供的步骤。因此,当仅沿水平方向对图像数据进 行处理时(沿垂直方向的图像数据的处理不是强制的),也可以显著改进被配置为执行以 上步骤的组件、模块或设备的运行时间,其中,确保甚至同时提高运动估计和补偿结果的质 量。此外,本发明提供了一种处理插值后的视频数据中的伪像的高效和有效的方式, 其中,同样沿水平方向执行该伪像处理,具体地,通过对插值后的图像数据的伪像区域进行 自适应模糊来执行该伪像处理。根据本发明的实施例,模糊化包括对至少一个像素的抑制。如果区域的两个像素是根据来自运动矢量集合、被指示为对于基于行的运动补偿 不可靠的运动矢量进行插值的,并且如果所述运动矢量与来自运动矢量集合、被指示为对 于基于行的运动补偿可靠的另一运动矢量相交,则根据本发明的实施例,模糊化包括将两 个像素之间的像素和这两个像素组合成一个统一区域。此外,如果区域由根据来自运动矢量集合、被指示为对于基于行的运动补偿不可 靠的运动矢量而插值出的区域的多于两个的相邻像素组成,则根据本发明的实施例,模糊 化包括通过将第一组两个像素插入在区域之前并通过将第二组两个像素插入到区域之后 来扩展区域,其中,第一组两个像素和第二组两个像素与被指示为对于基于行的运动补偿 不可靠的运动矢量的像素相对应。根据本发明的实施例,将中值滤波器用于基于行的运动补偿。
根据本发明的另一实施例,中值滤波器使用在已经补偿的相邻像素处针对基于行 的运动补偿提供的运动矢量、在要补偿的相邻像素处针对基于行的运动补偿提供的运动矢 量、以及针对当前正在补偿的当前场/帧的图像数据的当前像 素提供的当前运动矢量作为 输入。根据本发明的实施例,基于行的运动补偿是关于亮度值和色度值中的至少一个来 执行的。根据本发明的实施例,使用包括当前场/帧的图像数据的行存储器来沿着水平方 向执行基于行的运动估计。该行存储器可以被配置为,使得该行存储器具有一个视频行的 大小或至少具有输入的或实际处理的视频图像数据的大小。根据本发明的实施例,在从当前帧/场的图像数据获取的相应像素处,针对基于 行的运动补偿,提供运动矢量集合的每个运动矢量。根据本发明的另一实施例,从包括当前场/帧的图像数据的行存储器中获取相应像素。根据本发明的实施例,其中,使用包括先前场/帧的图像数据的行存储器来沿水 平方向执行基于行的运动估计。该行存储器被配置为,使得该行存储器具有一个视频行的 大小或至少具有输入的或实际处理的视频图像数据的大小。根据本发明的实施例,使用包括当前场/帧的图像数据的行存储器来沿水平方向 执行基于行的运动补偿。根据本发明的实施例,通过执行基于行的运动估计来提供运动矢量集合包括-选择要用于基于行的运动补偿的运动矢量;-检测所选运动矢量的质量值,其中,该质量值指示所选运动矢量对于基于行的运 动补偿是否可靠;以及-将所选运动矢量添加至运动矢量集合。质量值指示,所选运动矢量表征运动的实际方向和图像数据中目标的实际速度的 效果如何。如果参数(运动的实际方向和目标的实际速度)中的一个不满足,则当使用所 选矢量补偿图像数据时会在插值后的图像数据中出现伪像。因此,这样的矢量对于基于行 的运动补偿是不可靠的并且表示不良矢量。这里,选择了对于基于行的运动补偿不可靠的 矢量的不同原因可能是例如,目标的呈现和遮挡、目标的长度和/或方向的突然改变、当 选择运动矢量时超出搜索范围。根据本发明的实施例,通过执行基于行的运动估计提供运动矢量集合包括-如果所检测的质量值指示所选运动矢量对于基于行的运动补偿不可靠,从在基 于行的运动估计中使用的当前行之上的行中搜索另一运动矢量;-检测另一运动矢量的另一质量值,其中,该另一质量值指示另一运动矢量对于基 于行的运动补偿是否可靠;以及-如果另一质量值指示另一运动矢量对于运动补偿是可靠的,则用另一运动矢量 替换所选运动矢量。根据该实施例,确保可靠运动矢量被用于运动补偿。如果将所选运动矢量标识为 不良,即,不可靠,则考虑下一环境,并在图像数据中关于该下一环境执行针对可靠运动矢 量的另一搜索。如果能够找到可靠矢量,执行替换。否则,如果无法找到或选择可靠运动矢量,则执行上述和以下详细说明的模糊化。通过特别针对运动画面的连续场/帧中的运动估计和补偿后的场/帧率上转换、 用于视频图像数据中的基于行的运动估计和基于行的运动补偿的装置来实现上述目标,其 中所述装置包括-被配置为通过执行基于行的运动估计来提供用于当前场/帧的图像数据中的基 于行的运动补偿的运动矢量集合的模块、设备或组件;-被配置为通过根据所提供的运动矢量集合对当前场/帧的图像数据进行插值来 执行基于行的运动补偿的模块、设备或组件;-被配置为在执行基于行的运动补偿之后获得当前场/帧的图像数据的插值后的 图像数据的模块、设备或组件;-被配置为如果根据来自运动矢量集合、被指示为对于基于行的运动补偿不可靠 的运动矢量对区域的至少一个像素进行了插值则对当前场/帧的插值后的图像数据的区 域进行模糊化的模块、设备或组件。如上所述,本发明描述了仅沿水平方向操作的运动估计和运动补偿(基于行的运 动估计和补偿)。因此,以上提供的装置的模块、设备或组件被配置为当执行基于行的图像 处理时沿水平方向对视频图像数据进行处理。这样,由于根据本发明仅需要视频图像数据 的逐行存储,可以显著减少用于存储图像数据的装置所需的资源。此外,由于仅沿水平方 向对图像数据进行处理(沿垂直方向的图像数据处理不是强制的),通过本发明可以显著 改进该装置的模块、设备或组件的运行时间,因此还可以显著改进装置本身的运行时间。此 外,尽管仅沿一个方向对图像数据进行处理,但是确保了并同时甚至提高了运动估计和补 偿结果的质量。根据本发明的实施例,被配置为对当前场/帧的插值后的图像数据的区域进行模 糊化模块、设备或组件被配置为抑制至少一个像素。如果区域的两个像素是根据来自运动矢量集合、被指示为对于基于行的运动补偿 不可靠的运动矢量进行插值的,并且如果所述运动矢量与来自运动矢量集合、被指示为对 于基于行的运动补偿可靠的另一运动矢量相交,则根据本发明的实施例,被配置为对当前 场/帧的插值后的图像数据的区域进行模糊化的模块、设备或组件被配置为将两个像素之 间的像素和两个像素组合成一个统一区域。此外,如果区域由根据来自运动矢量集合、被指示为对于基于行的运动补偿不可 靠的运动矢量而插值出的所述区域的多于两个的相邻像素组成,则根据本发明的实施例, 被配置为对当前场/帧的插值后的图像数据的区域进行模糊化的模块、设备或组件被配置 为通过将第一组两个像素插入在区域之前并通过将第二组两个像素插入到区域之后来扩 展区域,其中,第一组两个像素和第二组两个像素与被指示为对于基于行的运动补偿不可 靠的运动矢量的像素相对应。根据本发明的另一实施例,被配置为执行基于行的运动补偿的模块、设备或组件 被配置为将中值滤波器用于基于行的运动补偿。根据本发明的另一实施例,中值滤波器被配置为使用在已经补偿的相邻像素处针 对基于行的运动补偿提供的运动矢量、在要补偿的相邻像素处针对基于行的运动补偿提供 的运动矢量、以及针对当前正在补偿的当前场/帧的图像数据的当前像素提供的当前运动矢量作为输入。根据本发明的实施例,被配置为执行基于行的运动补偿的模块、设备或组件被配 置为关于亮度值和色度值中的至少一个来执行基于行的运动补偿。根据本发明的实施例,所述装置包括第一行存储器,被配置为存储当前场/帧的 图像数据,其中,使用第一行存储器沿水平方向执行基于行的运动估计。该第一行存储器可 以被配置为,使得其具有一个视频行的大小或至少具有输入的或实际处理的视频图像数据 的大小。根据本发明的实施例,被配置为提供运动矢量集合的模块、设备或组件被配置为, 在从当前场/帧的图像数据中获取的相应像素处提供运动矢量集合中的每个运动矢量。根据本发明的实施例,从第一行存储器中获取相应像素。根据本发明的实施例,使用第一行存储器沿水平方向执行基于行的运动补偿。根据本发明的另一实施例,该装置包括第二行存储器,被配置为存储先前场/帧 的图像数据。该第二行存储器可以被配置为,使得其具有一个视频行的大小或至少具有输 入的或实际处理的视频图像数据的大小。根据本发明的实施例,该装置包括包括上方行的运动矢量在内的第三行存储器, 其中,已经由先前执行的针对上方行的基于行的运动估计提供了上方行的运动矢量。同样, 第三行存储器被配置为,使得其具有一个视频行的大小或至少具有输入的或实际处理的视 频图像数据的大小。根据本发明的实施例,被配置为提供运动矢量集合的模块、设备或组件被配置 为-选择要用于基于行的运动补偿的运动矢量;-检测所选运动矢量的质量值,其中,该质量值指示所选运动矢量对于基于行的运 动补偿是否可靠;以及-将所选运动矢量添加至运动矢量集合。根据本发明的实施例,被配置为提供运动矢量集合的模块、设备或组件被配置 为-如果所检测的质量值指示所选运动矢量对于基于行的运动补偿不可靠,从在基 于行的运动估计中使用的当前行之上的行中搜索另一运动矢量;-检测另一运动矢量的另一质量值,其中,该另一质量值指示另一运动矢量对于基 于行的运动补偿是否可靠;以及-如果另一质量值指示另一运动矢量对于运动补偿是可靠的,则用另一运动矢量 替换所选运动矢量。这里,必须注意,根据本发明,该装置被配置为执行上述和以下更详细地说明的方 法步骤。因此,该装置提供被配置为执行相应方法步骤的模块、设备或组件,其中,根据本发 明,严格划分所需模块、设备或组件是不必要的。根据本发明,该装置关于其模块、设备或组 件的可变设计是可能的。因此,例如,当执行运动估计和运动补偿时,可以提供两个分离的 模块、设备或组件——一个模块、设备或组件被配置为执行运动估计,另一模块、设备或组 件被配置为执行运动补偿。然而,根据本发明还可以提供被配置为同时执行运动补偿和运 动估计的一个模块。
同样,可以通过包括上述和以下更详细地说明的装置在内的电视机来实现本发明 的目的。此外,还可以通过包括代码的计算机程序产品来实现以上提供的目的,所述代码 被配置为实现上述和以下更详细地说明的方法。根据本发明的实施例,计算机程序可以包含在数据载体上。此外,可以通过包括计算机程序产品的数据载体来实现以上提供的本发明的目 的。此外,可以通过特别针对运动画面的连续场/帧中的运动估计和补偿后的场/帧 率上转换、用于视频图像数据中的基于行的运动估计和基于行的运动补偿的系统来实现本 发明的目的,其中,该系统包括-被配置为通过执行基于行的运动估计来提供用于当前场/帧的图像数据中的基 于行的运动补偿的运动矢量集合的模块、设备或组件;-被配置为通过根据所提供的运动矢量集合对当前场/帧的图像数据进行插值来 执行基于行的运动补偿并且作为执行基于行的运动补偿的结果提供当前场/帧的图像数 据的插值后的图像数据的模块、设备或组件;-被配置为如果根据来自运动矢量集合、被指示为对于基于行的运动补偿不可靠 的运动矢量对区域的至少一个像素进行了插值则对当前场/帧的插值后的图像数据的区 域进行模糊化的模块、设备或组件。必须注意,对于该系统,与装置(上述和以下更详细说明的)原理相同的原理是适 用的。一般而言,系统被配置为执行用于视频图像数据中的基于行的运动估计和基于行的 运动补偿的方法,从而包括被配置为执行所述方法的步骤的适当的模块、设备或组件。根据本发明的实施例,系统包括被配置为存储当前场/帧的图像数据的第一行存 储器,其中,使用第一行存储器沿水平方向执行基于行的运动估计。该第一行存储器被配置 为,使得其具有一个视频行的大小或至少具有输入的或实际处理的视频图像数据的大小。根据另一实施例,使用第一行存储器沿水平方向执行基于行的运动补偿。根据本发明的实施例,系统包括被配置为存储先前场/帧的图像数据的第二行存 储器。该第二行存储器被配置为,使得其具有一个视频行的大小或至少具有输入的或实际 处理的视频图像数据的大小。根据本发明的另一实施例,系统包括第三行存储器,该第三行存储器包括上方行 的运动矢量,其中,已经由先前执行的针对上方行的基于行的运动估计提供了上方行的运 动矢量。根据本发明的实施例,第三行存储器可以被配置为,使得其具有一个视频行的大小 或至少具有输入的或实际处理的视频图像数据的大小。如上所述,本发明是基于以下结论对于主流市场部分,性能从而搜索范围受限于 自然捕捉场景中最可能的水平运动的出现。由于根据本发明仅需要视频图像数据的逐行存 储,这提供了减少芯片嵌入式存储器的可能性。因此,芯片嵌入式存储器例如可以减少为仅 一对行存储器。这里,针对先前运动轨迹使用一个单行存储器并且针对当前运动轨迹使用 一个单行存储器作为搜索范围足以实现本发明。这样,使用本发明实现了芯片嵌入式存储 器的显著减少。此外,所提出的方法实现了运动估计和运动补偿的快速执行,其中,同时提 高了结果视频图像的质量(尽管,仅沿一个方向进行处理)。
本发明还描述了一种运动估计和运动补偿的方法,该方法仅沿水平方向操作并因 此能够实现使用单行缓冲存储器(所谓行存储器)的运动估计和运动补偿操作。在视频信号处理中,通常在已经存取了先前和当前运动轨迹的其他应用(例如, 所谓去隔行器应用或时间噪声降低应用)中使用行存储器。根据本发明,在这些应用中使 用的所用行存储器现在附加地还用于运动估计和运动补偿操作。通过使用这些现有行存储 器,不必进一步为存储器总线增加存储器带宽。因此,该解决方案提供了通过向现有视频处 理系统添加最小的存储器或在最优情况下不添加存储器来完成运动估计和运动补偿操作 的可能性。根据本发明的、用于运动估计和运动补偿的方法可以在先前和当前场或帧的行存 储器上进行操作。这有利地实现了硅面积减小和成本节省的实现方式。补偿执行受限于沿一个方向的运动,特别是仅沿水平方向的运动,这是由于自然 场景中的大多数运动具有该趋势。通过使用视频信号处理系统中现有的行存储器,存储器 带宽保持不变。另一优点在于,许多错误减少方法降低了伪像的可见性。根据本发明,能够有效地 识别和处理在执行基于行地运动估计和补偿之后所获得的插值后的图像数据中产生的伪 像。具体地,根据本发明所执行的(行)区域的模糊化实现了对插值后的图像数据的显著 改善,并可以同时以快速有效的方式执行。以下,为了简明起见,将在对本发明及其实施例进行更详细说明的多数情况下使 用术语运动补偿和运动估计。必须注意,在这些情况下指基于行的运动估计和基于行的运 动补偿。


为了更完全地理解本发明及其优点,现在结合附图参照以下描述。以下使用在附 图中示意性示出的示例实施例更详细地说明本发明,在附图中图1示出了标准(即,非运动补偿的)FRU方法的结果;图2示出了两个连续接收到的图像场之间运动目标的位置变化;图3A、B通过当前帧和相应先前帧示出了基于行的运动估计的运动估计原理;图4示出了根据本发明的基于行的MEMC系统的第一实施例的框图;图5示出了示意根据本发明实施例的运动估计的匹配处理的示例;图6示出了根据本发明实施例的提供运动矢量直方图的基本原理;图7示出了示意根据本发明实施例的用于检测不可靠矢量的过程的流程图;图8示出了示意根据本发明实施例的用于不良矢量替换和错误隐藏的搜索过程 的流程图;图9通过三个例证(A)-(C)分别示出了根据本发明实施例的伪像隐藏或自适应模 糊;图10示出了示意根据本发明的基于行的运动估计的实施例的框图;图11示出了示意使用自适应伪像隐藏的根据本发明的基于行的运动补偿的实施 例的框图;图12示出了使用被分配给同样用于运动估计设备或模块的去隔行器设备或模块
13的行存储器的、根据本发明的基于行的MEMC的第二实施例的框图。在所有附图中,除非另外明确说明,相同或至少具有相同功能的元件、特征和信号 被提供了相同的参考符号、描述和缩写。
具体实施例方式在本发明的以下描述中,首先提供运动估计和运动补偿的简短概述。MEMC方法主要由两部分组成,运动估计和运动补偿方法。运动估计执行对运动的 测量,并导出以像素每画面(即,场或帧)为单位的显示区域的速度。同样运动方向将由正 号或负号来指示。这些所测量的运动信息以运动矢量的形式来描述。运动矢量用于运动补 偿,以在精确的时间位置对画面进行插值,并避免所谓的抖动效应和/或所谓的运动模糊 效应。图3A、3B通过当前画面(场或帧)10(n)和相应的先前画面ll(n_l)示出了基于 行的运动估计的运动估计原理。根据时间位置,将运动矢量12、13按其长度分成两个部分, 其中,第一矢量部分12指向先前画面11,第二矢量部分13指向当前画面10。为了插值当 前和先前画面10、11之间的缺失画面14(n-l/2),考虑来自两个时间画面10、11的像素15 来进行补偿。在基于行的MEMC中,在相同时刻仅使用相同行16内的像素15,并且仅针对场 或帧的单行16执行MEMC。对于这种类型的MEMC,将当前画面10的像素15与先前画面11 的相应像素15进行比较以估计和补偿缺失画面14的相应像素15。图4示出了根据本发明的基于行的MEMC系统的框图。MEMC系统由参考数字20 表示。MEMC系统20包括输入端子21、总线22、两个行存储器23、24、运动估计元设备或模 块25、运动补偿设备或模块26、以及输出端子27。假设,总线22是外部总线,特别是外部 存储器总线22。然而,还可能的是,总线22是内部总线22。在输入侧,总线22连接至外部 存储器设备或模块28,如SDRAM、DDR-RAM等。将要在面板29 (如等离子或IXD面板或CRT 屏幕)中显示的图像数据存储在该外部存储器28中。经由输入端子21和存储器总线22, 将该图像数据X1、X1’传送至两个行存储器23、24。根据本发明的一实施例,仅需要两个行 存储器23、24,而第一行存储器23用于对先前画面的图像数据XI进行缓冲,另一存储器24 用于对当前画面的图像数据XI’进行存储。然而,应当清楚的是,还可以提供更多数目的行 存储器。本专利申请中所使用的行存储器23、24指示了大小为帧或场的一个视频行或至 少小于输入视频信号流或实际处理视频信号流的嵌入式存储器。场表示包括奇或偶数行的 视频图像或画面。帧表示由一幅画面的完整视频信息组成的视频图像,即,由奇数行的场和 偶数行的相应场构成的视频图像。行表示一个视频画面的场内的整个水平行或该行的至少 一部分。行存储器23、24在它们的输出侧均耦合至运动估计设备或模块25和运动补偿设 备或模块26。这使得能够将在行存储器23、24中存储的图像数据X1、X1’分别传送至运动 估计设备或模块25和运动补偿设备或模块26。在图4中,与运动估计设备或模块25相对 应的数据信号由X2、X2’表示,并且与运动补偿设备或模块26相对应的数据信号由X3、X3’表不。运动估计设备或模块25通过采用匹配处理,由存储在行存储器23、24中的图像数
14据X2、X2’产生运动矢量信号X4。将该矢量信号X4传送至运动补偿设备或模块26。运动 补偿设备或模块26使用存储在行存储器23、24中的图像数据X3、X3’并将矢量数据X4应 用于该图像数据X3、X3’来执行运动补偿。在输出端子27处,运动补偿设备或模块27提供 包括针对运动补偿后的画面的信息在内的视频信号X5。经由输出端子27将该视频信号X5 传送至显示器29,如IXD面板29等。关于图5,下文中将更详细地描述运动估计设备或模块25的操作为了运动估计,采用匹配处理来选择最适于给定数量的像素30的相应像素序列 32。为了该选择,从当前帧32的行存储器24中获取应当针对其确定运动的中心像素31周 围的当前帧的行的给定数量的像素30。下文中,该给定量的像素30被表示为像素序列30。 在本实施例中,像素序列30包括9个单个像素33。应当理解,该序列还可以包括更多或更 少数量的像素33。为了选择,将像素33的亮度简档用作匹配参数。亮度是沿给定方向的光强的密度 的光度测量。它描述了通过特定面积或从该特定面积发出或落在给定立体角内的光量。因 此,亮度是运动画面帧中亮度的光度测量。如果亮度为高,则画面亮,如果亮度为低则该画 面暗。因此,亮度是画面的黑白部分。该亮度简档用于从先前帧35中找出与当前帧32的9像素序列30最符合的9像 素序列34。在图5的实施例中,将当前帧32的9像素序列30的亮度简档与先前帧35的 若干相应的9像素序列34的亮度简档进行比较。为了导出真实的运动,9像素序列30将 沿着水平方向36在搜索范围上移动。假设显示出(与当前帧32的9像素序列30的)最 佳亮度简档匹配的先前帧35的9像素序列34是正确的像素序列。然后,将这些像素序列 30、34用于计算运动矢量。该搜索范围的典型值包括,例如64个像素(+31...-32)。然而,还可以使用少于 64个像素;然而,该比较的结果质量逐渐下降。另一方面,还可以使用多于64个像素。则 选择结果的质量提高,然而,这需要更多的计算量。因此,典型地,采用在选择结果的最佳质 量与同时地最小计算量之间提供最优化的折衷。在优选实施例中,针对每个所选运动矢量37,以上述方式来执行单个匹配处理。通 过为每个像素序列30分配质量等级和/或失败等级来执行该匹配处理。然后,将质量等级 和/或失败等级分配给经历匹配处理的那些像素序列30中的每一个。选择具有最高质量 等级和/或最低失败等级的那些像素序列30作为最可能的像素序列。然后,将这些像素序 列30用于计算针对水平运动的运动矢量。典型地,但非必要地,将SAD方法(SAD =绝对差 的和)和/或ADRC(自适应动态范围编码)方法用于亮度和/或色度值的比较。根据本发明的该实施例,可以将预选的运动矢量样本用于运动估计。假设场景中目标的运动是逐帧/场恒定的,并且目标大于像素序列(例如,上述9 个像素),则如果针对亮度简档的匹配检查预选的运动矢量37(所谓的运动矢量样本37)的 集合38,则可以更高效地执行匹配处理(参见图5)。例如,可以从邻近像素获取一个所选 运动矢量37。如果将已经估计的运动矢量存储在特别针对不同运动矢量样本设计的矢量存 储器中,则可以从先前行获取第二所选运动矢量。指示目标没有运动的零矢量典型地是最常用的运动矢量样本之一。使用该零矢 量,以便于更高效地检测未示出运动的画面内的区域。原则上,将要考虑的预选运动矢量37的数量完全取决于期望的运动矢量质量类型。为了建立运动估计处理,并遵循与恒定运动的偏离,出于测试操作目的,可能需要 特定预选运动矢量的变化。根据本发明的该实施例,当执行运动估计时考虑所选运动矢量 的变化。这表明对于预选运动矢量样本,将加上或减去特定量的运动。这可以通过向这些 运动矢量应用具有不同运动速度量值的变化来实现。所测试的实现方式在先前确定的运动 矢量上,在交替更新+/-1像素和+/_4像素的奇像素和偶像素之间进行检查。根据需要或 根据提出的需求,对变化的选择是可调整和可变的,并且对变化的选择取决于输入视频信 号的分辨率。对于基于行的运动估计,运动矢量针对场景中的真实运动快速收敛将是非常有利 的。因此,针对帧或场的第一行以不同方式处理对所测试的运动矢量的选择。对于帧或场 的第一行,由于需要进行测试的第一行之上的行不存在,因此无法以正常方式进行测试。在 每个场的第一行中,为正常测试上方行的运动矢量的所选运动矢量加载例如根据三角函数 逐像素变化的矢量值。三角函数在可调整的最小值和可调整的最大值之间振荡。出于该目 的,还可以采用其他规则振荡函数(例如锯齿函数、正弦函数等)来确定第一行的运动矢 量。在优选实施例中,匹配处理将失败值分配至每个所测试的运动矢量。在另一实施 例中,该值还可以是质量值。还可以评估失败值和质量值用于匹配处理。优选地,将绝对差 的和(SAD)用作失败值或至少用于导出失败值。理想地,为了找到最优运动矢量,需要失败 值为零。然而,典型地,失败值不同于零。因此,然后,选择与最低失败值相对应的运动矢量 作为表示局部场景中目标运动的最可能的运动矢量。在优选实施例中,使用取决于不同运动矢量的矢量衰减的阻尼值。这里,利用矢量 阻尼来执行矢量选择的衰减。这使得能够以相等失败值控制运动矢量和/或为运动矢量选 择处理提供特定方向。此外,有利地,将不同运动矢量存储在矢量存储器中。然后,从矢量存储器取出这 些运动矢量(如果需要),用于其他处理和/或用于后继像素的运动估计。运动估计处理形成递归过程。因此,该矢量存储器的大小主要取决于匹配处理的 期望质量等级。在一个实施例中,所测试的实现方式仅包括矢量存储器的一行。在该矢量 存储器中,将交替存储每隔一个的运动矢量,使得对来自上方的所测量的运动矢量的存取 是可能的。在优选实施例中,计算运动矢量直方图以便创建高度可靠并均勻的运动矢量场。 该矢量直方图允许多数矢量排序导出实际场景中最多和较少使用的运动矢量。这样,通过 提供矢量直方图,可以实现鲁棒性提高。图6示出了示例,以示意提供运动矢量直方图的基本原理。图6示出了提供运动 矢量直方图的矢量直方图发生器40。在图6中的实施例中,矢量直方图发生器40包括由 +1递增设备或模块42控制的切换设备或模块41。切换设备或模块41 一方面受运动矢量 信息43控制,另一方面受递增设备或模块42的控制,该递增设备或模块42在出现下个相 同的运动矢量43的情况下将切换设备或模块41转换至计数设备或模块45的下个输入端 子。包括不同计数器单元44的计数设备或模块45对每个运动矢量的出现进行计数,并针 对每次运动矢量的出现将计数器加1。排序设备或模块46 (例如包括简单的比较装置)耦
16合至计数设备或模块45的不同计数器单元44的输出端子。该排序设备或模块46选择最 常用的运动矢量并应用该运动矢量用于估计确定。然后,将该最常用的运动矢量存储在运 动矢量直方图存储器47中。可以针对整个帧或场或仅针对帧或场的部分,完成运动矢量直方图的提供。将画 面分成水平条纹,并且为每个条纹返回最常用的矢量是非常高效的。在最优选实施例中,可 以以非常可靠的方式来检测画面内的滚动新闻条信息。在特定情况下,运动估计将不传递可靠运动矢量。特别对于垂直运动以及对于遮 盖和无遮盖区域,匹配处理有时不提供对当前和先前行的可靠存取。然而,不可靠的运动矢 量导致补偿处理的相对较大的、非期望的差异。根据本发明的实施例,执行不可靠矢量的检 测。图7示出了流程图的示例,以示意根据本发明实施例的、对不可靠矢量进行检测 的过程。在该检测过程中,将先前帧或场中的矢量补偿后的亮度像素值50与矢量补偿后的 当前帧或场的亮度像素值51进行比较52。如果该差值52远超过可调整的阈值53,则选择 当前运动矢量作为不良矢量54。否则,假设该矢量是可靠矢量55。对该不良矢量54进行 标记,并将矢量存储器的MSB比特设置为1。此时,MSB比特指示该矢量是否用于进一步估 计处理。因此,MSB比特指示对于运动补偿该矢量是可靠还是不可靠。根据本发明的实施例,分别执行不良矢量或对于运动补偿不可靠的矢量的替换, 以提高MEMC的结果。图8示出了流程图的示例,以示意根据该实施例的用于不良矢量替换 和错误隐藏的搜索过程。在该搜索过程中,以特殊的方式来处理不良运动矢量以避免引入 伪像。在出现不良矢量的情况下,将从针对例如上方行的运动矢量的存储器中取出可靠矢 量。因此,优选地,在该搜索过程中仅使用那些没有被标记为不可靠的运动矢量(参见以上 关于图7提供的描述)。该搜索过程例如起始于搜索范围的最外边界,以便找到周围区域的可靠矢量。首 先,接收到关于选择用于运动估计的运动矢量的信号60,其中,该信号指示考虑良好矢量 或可靠矢量还是考虑不良矢量或不可靠矢量。因此,在步骤61中,检查运动估计处理是否 已经找到或检测到不良或良好矢量。为此,可以使用运动估计处理中针对运动矢量所检 测的、并指示所选运动矢量对于运动补偿是否可靠的质量值或等级。如果不良矢量信号 60(从而,质量值或等级)分别指示61良好矢量或可靠矢量,则该运动矢量用于进一步处理 62 (进一步的运动估计处理),如果需要,还用于运动补偿。否则,启动新搜索过程63,以使 用先前估计处理的结果来选择运动矢量。具体地,如上所述,可以从在运动估计中使用的当 前行之上的行中搜索另一运动矢量。同样,对于该另一或新运动矢量,可以如上所述对相应 的质量值或等级进行检测(具体见图7的描述)。在步骤64中,检查由搜索过程63选择的 新运动矢量。如果步骤64中的检查示出针对新运动矢量而检测到的质量值或等级指示新运 动矢量是可靠矢量(或相应地,良好矢量),则在步骤65中使用新运动矢量来替换在步骤 61中发现的不良或不可靠的运动矢量。在用新的并且可靠的矢量替换不良矢量之后,然后 将该可靠矢量用于运动补偿处理。然而,如果步骤64中的检查示出针对新运动矢量而检测到的质量值或等级指示 新运动矢量不是可靠矢量(或相应地,不良矢量),则在步骤66中检查是否达到搜索范围的末端。如果在步骤66达到搜索范围的末端,则将如下更详细描述的,对输出信号进行模糊 处理67 (从而,自适应模糊67)。如果在步骤66还没有达到搜索范围的末端,则搜索过程返 回至步骤63。图9分别通过三个例证(A)-(C)示出了根据本发明实施例的伪像隐藏或自适应模 糊。具体地,根据本发明的该实施例,分别在伪像隐藏或自适应模糊中使用自适应错误区域 扩展和错误尖峰抑制。
如参考图8所指出的,同样当执行不良矢量替换时,由运动估计所检测到的运动 矢量集合能够包括不良或不可靠运动矢量。这些剩余的不可靠或不良矢量不得不使用在运 动补偿中,并导致插值后的画面中的伪像。根据本实施例,可以通过对包括伪像的插值后的 画面的区域进行模糊化来覆盖这些伪像。为了进行高效的伪像隐藏,必须从单个尖峰中清 除这样的错误区域。以下,术语尖峰将被用于根据被指示为不可靠或不良的运动矢量通过 运动补偿插值出的、插值后的画面中的像素。根据本发明,将抑制单个尖峰。将与单个可靠矢量相交的双尖峰组合为一个区域。此外,根据本实施例,在该第一次清除之后,将利用位于不良错误区域之前和之后 的不良矢量的两个附加像素来扩展剩余错误区域。该操作确保模糊滤波器的正当表现。模 糊滤波器仅水平操作。一般而言,在图9(A)_(C)中,点表示使用由运动估计选择和提供的运动矢量执行 运动补偿之后所获得的一行插值后的图像数据,其中,这些点中的每个点表示插值后的图 像数据的像素。此外,图9(A)-(C)中提供的每个箭头起始于插值后的图像数据行中的点或 像素,并通向虚线的错误行,这些箭头指示分别使用不良或不可靠的运动矢量导出或插值 出的相应像素,并且表示尖峰。在图9(A)中,提供三个尖峰71、72、73。尖峰71是单个尖峰,并且根据本实施例, 当对插值后的图像数据的相应错误区域进行模糊化时对该尖峰71进行抑制。在图9(A)的 右侧示出了该模糊步骤的结果,其中仅留下了尖峰72、73。在图9(B)中,通过将像素74、75、76组合成一个统一区域来执行包括尖峰74、76 在内的错误区域中的模糊化。根据图9(B)中提供的情况,两个尖峰74、76与来自运动矢量 集合的、被指示为对于运动补偿可靠的运动矢量相交。该可靠矢量已经被用于像素75的插 值。根据本实施例,在模糊化期间,将两个尖峰74、76和位于两个尖峰74、76之间的像素75 组合成一个统一区域77。在图9(B)右侧示出了该模糊步骤的结果。如图9(A)和9(B)的示例所示,在对插值后的图像数据进行第一次清除之后,根据 本实施例通过在不良错误区域之后和之后的不良矢量的两个附加像素来扩展剩余错误区 域。在图9(C)中,提供包括三个相邻尖峰在内的错误区域78。这里,在该行插入后数据中, 通过将第一组两个像素70插入在区域78之前并通过将第二组两个像素70插入在区域78 之后来扩展该错误区域78。在图9(C)的右侧示出了该模糊步骤的结果,其中,该行插值后 的图像数据包括无差错相邻像素79、插入的像素70、错误区域78、插入的像素70、和无差 错相邻像素79。这样,沿水平方向执行显著提高了数据的可视化质量的高效并且有效的伪像隐藏。应当理解,上述数字数据仅是示意性的,并且适于最佳地提供最优模糊效果。
18
图10示出了示意如上所述并在图4所示的运动估计设备或模块25中实现的根据 本发明的基于行的运动估计的实施例的框图。运动估计设备或模块25包括匹配设备或模块80、成本/质量功能设备或模块 81、以及矢量选择器设备或模块82,这些设备或模块以串联的方式布置在运动估计设备或 模块25的输入侧83和运动估计设备或模块25的输出侧84之间,其中,在运动估计设备或 模块25的输入侧83,提供存储在两个行存储器23、24中的图像数据信号XI、X1’,运动矢量 信号X4出现在运动估计设备或模块25的输出侧84。在设备或模块元件80-82中,实现关 于图5描述的匹配处理和矢量选择。运动估计设备或模块25还包括一方面连接至输入侧83另一方面连接至输出侧84 的矢量质量设备或模块85。矢量质量设备或模块85由图像数据信号XI、XI’和运动矢量 信号X4产生包括矢量质量的信息在内的质量信号X6。运动估计设备或模块25还包括以串联的方式布置在输出侧84和匹配设备或模块 80之间的反馈路径中的矢量直方图设备或模块86和矢量多数设备或模块87。这里,在设 备或模块元件86、87中,产生矢量直方图来提供关于图6示出和描述的实际场景中最多和 较少使用的矢量的排序。因此,元件86、87与图6的矢量直方图发生器40相对应。运动估计设备或模块25还可以包括另一行存储器88来存储运动矢量数据X4和 /或针对矢量质量的数据X6。运动估计设备或模块25还包括矢量样本设备或模块89。该矢量样本设备或模块 89还可以被布置在反馈路径中,并在其输入侧与行存储器88、矢量多数设备或模块87连 接,并有利地与另一设备或模块90连接。该另一设备或模块90通过使用具有特定幅度的 特殊信号(例如,正弦信号、锯齿信号等)来执行运动矢量样本的改变。然后,该特定信号 被用于帧或场的第一行的测试和/或匹配处理和/或更新处理。然而,还可以随机更新帧 或场的不同行。在矢量样本设备或模块89的输出侧,矢量样本设备或模块89在其输出侧 连接至匹配设备或模块80。运动估计设备或模块25还包括垂直运动估计设备或模块91。对于垂直运动,上述 一维运动估计算法不能补偿沿垂直方向的运动。然而,垂直运动的出现可以被用于通过将 画面分成不同的区域来导出针对每个区域的垂直运动,以减少画面的相同区域中的补偿。 在这种情况下,将对相同画面的不同区域中的行的亮度值进行求和,并针对该画面的每一 行单独存储相同画面的不同区域中的行的亮度值。这导致了针对相同画面的不同区域的累 积的垂直简档。然后,将整个画面划分成较小的区域,来导出针对这些区域中的每一个的垂 直运动。在垂直运动估计设备或模块91中执行该垂直运动估计处理,垂直运动估计设备或 模块91连接至输入侧83并在其输出侧提供基于部分的垂直运动索引X7。因此,如上所述的垂直ME可以与水平MEMC无关地执行也可以与水平MEMC组合地 来执行,其中,可以分别根据特定情况或存在的运动来执行组合。此外,这样的方法允许实 现垂直ME,垂直ME不需要大量的附加存储器容量来分析连续帧的数据,而需要大量的附加 存储器容量是现有技术的大多数方法的情况。运动估计设备或模块25还包括矢量阻尼设备或模块92。在该阻尼设备或模块92 中,如上所述的阻尼值可以被用于对矢量样本设备或模块89的矢量样本进行阻尼,并向矢 量选择器82提供阻尼后的矢量样本。
下文中,将关于图11更详细地描述在图4的运动补偿设备或模块26中执行的运 动补偿处理。图11示出了示意使用如上所述的自适应伪像隐藏的根据本发明的基于行的 运动补偿的实施例的框图。运动补偿设备或模块26包括补偿设备或模块100,补偿设备或模块100根据由运 动估计设备或模块25估计的运动矢量X4执行时间运动插值。在优选实施例中,补偿设备 或模块100包括中值滤波器,该中值滤波器使用矢量补偿后的先前行、矢量补偿后的当前 行和未补偿的先前行的亮度值作为输入数据。附加地,同样可以补偿色度值。根据矢量质量,将在矢量存储器的局部区域中从上方行搜索到被指示为可靠矢量 的替换矢量。如果找不到可靠矢量,则将以上关于图9(A)-(C)提出的自适应模糊用于覆盖 该伪像。运动补偿设备或模块26还包括垂直运动控制设备或模块101,该垂直运动控制设 备或模块101将控制信号X8提供给补偿设备或模块100,以便同样将垂直运动的信息并入 补偿设备或模块100。运动补偿设备或模块26还包括不良矢量修正设备或模块102。基于由运动估计设 备或模块25提供的信息X4、X6,不良矢量修正设备或模块102对如上关于图8和9示出和 描述的不良矢量进行修正。然后,这些与修正后的不良矢量有关的信息X9(与控制信号X8 一同)被用于执行补偿设备或模块100内的运动补偿。然后,补偿设备或模块100在其输 出侧产生运动补偿后的图像数据信号X10。运动补偿设备或模块26还包括自适应模糊设备或模块103。基于运动补偿后的图 像数据信号X10和由不良矢量修正设备或模块102产生的模糊控制信号,该自适应模糊设 备或模块103执行如关于图8和9所描述的自适应模糊。自适应模糊设备或模块103产生 可能与图4的图像信号X5相对应的自适应模糊后的图像数据信号X5’。图12示出了使用被分配至同样用于运动估计设备或模块的去隔行器设备或模块 的行存储器的、根据本发明的基于行的MEMC系统的第二实施例的框图。与图4中的第一实施例不同,去隔行器设备或模块113被布置在行存储器110、 111、112和运动补偿设备或模块26之间。去隔行器设备或模块113典型地用于将由视频数 据流表示的场转换成随后同样由另一视频数据流表示的完整帧。基于存储器、用于视频处理的片上解决方案具有现有的内部行缓冲器 110-112(所谓的行存储器110-112),该内部行缓冲器110-112承载来自先前和当前场或帧 的视频数据。这些行缓冲器110-112可以位于例如自适应操作运动的时间噪声降低或去隔 行单元113内。利用所提出的基于行的MEMC,这些行缓冲器附加地可以重新用于运动估计。 为此并且为了降低来自影片源的运动抖动伪像,使用下拉(pull-down)模式的指示当前插 值序列的影片检测器。行缓冲器选择器根据先前和当前视频输入信号将视频信号数据传送 至运动估计设备或模块。该技术允许将现有的存储器资源同样用于运动估计,也可以防止 用于时间上转换处理的附加带宽。因此,针对运动估计和运动补偿的芯片面积可以降低为 最小。去隔行器设备或模块113使用3个行存储器110、111、112,这三个行存储器在它 们的输入侧耦合至存储器总线22并且在它们的输出侧提供行数据。可以在去隔行器设备 或模块内对由行存储器110、111、112提供的该行数据进行处理,然后将该行数据提供给运动补偿设备或模块26。根据本发明,这些行存储器110、111、112附加地还用于运动估计设 备或模块25。为此,系统20附加地包括选择器设备或模块114,其中将影片序列X0提供给 该选择器设备或模块114。然后,经由存储器总线22将该影片序列X0存储在外部存储器 28中,并可以通过行存储器110、111和112从该外部存储器28读出该影片序列X0。对于 IMC操作,存储在去隔行器设备或模块113的行存储器110、111、112中的该数据还可以用于 MEMC。为此,然后,同样将存储在行存储器110、111、112中的数据提供给运动估计设备或模 块25和运动补偿设备26。尽管以上已经示出并描述了本发明的实施例和应用,但对于本领域技术人员显而 易见的是,在不背离这里描述的本发明的构思的前提下,更多修正(除了以上所述)是可能 的。因此,本发明仅受限于所附权利要求的精神。因此,以上详细描述应当视为示意性的而 非限制性的,并且应当理解以下权利要求包括在意在限定本发明的精神和范围的这些权利 要求中描述的所有等同物。以上描述并不意在否定要求保护的本发明的范围也不意在否定 其任何等同物。还应当注意,应当将上述实施例、示例和数字数据理解为仅是示例性的。这表明在 MEMC系统中可以实现附加系统元件和功能单元以及操作方法和标准。此外,必须注意,实 现本发明的实现方式并以上说明的模块、组件或元件可以被配置为作为系统和装置的一部
分。
参考列表
10当前画面(帧或场)
11先前画面(帧或场)
12第一矢量部分
13第二矢量部分
14缺失画面
15像素
16单行
XI先前画面的图像数据
XI,当前画面的图像数据
X2数据信号
X2’数据信号
X3图像数据
X3’图像数据
X4矢量信号
X5视频信号
20MEMC系统
21输入端子
22总线
23行存储器
24行存储器
25运动估计设备或模块
21
26运动补偿设备或模块27输出端子28外部存储器29显示器30给定数量的像素31中心像素32像素序列339个单个像素349像素序列35先前帧36水平方向37所选运动矢量38 (预选)所选运动矢量的集合40矢量直方图发生器41切换设备或模块42递增设备或模块43下个相同运动矢量44计数器单元45计数设备或模块46排序设备或模块47运动矢量直方图存储器50亮度像素值51亮度像素值52 差值53可调整的阈值54不良或不可靠矢量55可靠矢量56不良矢量标记60 信号61检查步骤62进一步处理63搜索处理64检查步骤65替换步骤66检查步骤67模糊步骤68 返回70插入的像素71 尖峰
72 尖峰73 尖峰74 尖峰75 尖峰76 尖峰77统一区域78相邻尖峰79相邻像素X6质量信号X7垂直运动索引80匹配设备或模块81成本/质量函数设备或模块
82矢量选择器设备或模块83输入侧84输出侧85矢量质量设备或模块86 元件87 元件88行存储器89矢量样本设备或模块90另一设备或模块91垂直运动估计设备或模块X8控制信号X9 信息100补偿设备或模块101垂直运动控制设备或模块102不良矢量修正设备或模块103自适应模糊设备或模块110去隔行器设备或模块111行存储器112行存储器113行存储器114选择器设备或模块
权利要求
一种特别针对运动画面的连续场/帧中的运动估计和补偿后的场/帧率上转换、用于视频图像数据中的基于行的运动估计和基于行的运动补偿的方法,所述方法包括以下步骤-通过执行基于行的运动估计(25),来提供用于当前场/帧(10)的图像数据中的基于行的运动补偿(26)的运动矢量集合;-通过使用所提供的运动矢量集合来对当前场/帧(10)的图像数据进行插值,来执行基于行的运动补偿(26);-作为执行基于行的运动补偿(26)的结果,提供当前场/帧(10)的图像数据的插值后的图像数据;以及-如果根据来自运动矢量集合、被指示为对于基于行的运动补偿(26)不可靠的运动矢量对区域中的至少一个像素(71-76)进行了插值,则对当前场/帧(10)的插值后的图像数据的区域进行模糊化(67)。
2.根据权利要求1所述的方法,其中,模糊化(67)包括对至少一个像素(71)的抑制。
3.根据前述权利要求中至少一项所述的方法,其中,如果区域的两个像素(74、76)是 根据来自运动矢量集合、被指示为对于基于行的运动补偿(26)不可靠的运动矢量进行插 值的,并且如果所述运动矢量与来自运动矢量集合、被指示为对于基于行的运动补偿(26) 可靠的另一运动矢量相交,则模糊化(67)包括将两个像素(74、76)之间的像素(75)和两 个像素(74、76)组合成一个统一区域(77)。
4.根据前述权利要求中至少一项所述的方法,其中,如果区域(78)由根据来自运动矢 量集合、被指示为对于基于行的运动补偿(26)不可靠的运动矢量而插值出的区域的多于 两个的相邻像素组成,则模糊化(67)包括通过将第一组两个像素(70)插入在区域(78) 之前并通过将第二组两个像素(70)插入到所述区域之后来扩展所述区域,其中,第一组两 个像素(70)和第二组两个像素(70)与被指示为对于基于行的运动补偿(26)不可靠的运 动矢量的像素相对应。
5.根据前述权利要求中至少一项所述的方法,其中,中值滤波器被用于基于行的运动 补偿(26)。
6.根据权利要求5所述的方法,其中,所述中值滤波器使用在已经补偿的相邻像素处 针对基于行的运动补偿(26)提供的运动矢量、在要补偿的相邻像素处针对基于行的运动 补偿(26)提供的运动矢量、以及针对当前正在补偿的当前场/帧(10)的图像数据的当前 像素提供的当前运动矢量作为输入。
7.根据前述权利要求中至少一项所述的方法,其中,基于行的运动补偿(26)是关于亮 度值和色度值中的至少一个来执行的。
8.根据前述权利要求中至少一项所述的方法,其中,使用包括当前场/帧(10)的图像 数据(X’ )的行存储器(24)来沿着水平方向执行基于行的运动估计(25)。
9.根据前述权利要求中至少一项所述的方法,其中,在从当前帧/场(10)的图像数 据获取的相应像素(31)处,针对基于行的运动补偿(26),提供运动矢量集合的每个运动矢 量。
10.根据权利要求8和9中至少一项所述的方法,其中,从包括当前场/帧(10)的图像 数据(X’ )的行存储器(24)中获取所述相应像素。
11.根据前述权利要求中至少一项所述的方法,其中,使用包括先前场/帧(11)的图像 数据(XI)的行存储器(23)来沿水平方向执行基于行的运动估计(25)。
12.根据前述权利要求中至少一项所述的方法,其中,使用包括当前场/帧(10)的图像 数据(X’ )的行存储器(24)来沿水平方向执行基于行的运动补偿(26)。
13.根据前述权利要求中至少一项所述的方法,其中,通过执行基于行的运动估计 (25)提供运动矢量集合包括-选择要用于基于行的运动补偿(26)的运动矢量;-检测所选运动矢量的质量值,其中,所述质量值指示所选运动矢量对于基于行的运动 补偿(26)是否可靠;以及-将所选运动矢量添加至运动矢量集合。
14.根据前述权利要求中至少一项所述的方法,其中,通过执行基于行的运动估计 (25)提供运动矢量集合包括_如果所检测的质量值指示所选运动矢量对于基于行的运动补偿(26)不可靠,则从在 基于行的运动估计(25)中使用的当前行之上的行中搜索(63)另一运动矢量;-检测另一运动矢量的另一质量值,其中,该另一质量值指示另一运动矢量对于基于行 的运动补偿(26)是否可靠;以及_如果另一质量值指示另一运动矢量对于运动补偿(26)是可靠的,则用另一运动矢量 替换(65)所选运动矢量。
15.一种特别针对运动画面的连续场/帧中的运动估计和补偿后的场/帧率上转换、用 于视频图像数据的基于行的运动估计(25)和基于行的运动补偿(26)的装置,其中所述装 置包括-被配置为通过执行基于行的运动估计(25)来提供用于当前场/帧(10)的图像数据 中的基于行的运动补偿(26)的运动矢量集合的模块;-被配置为通过根据所提供的运动矢量集合对当前场/帧(10)的图像数据进行插值 来执行基于行的运动补偿(26)并且作为执行基于行的运动补偿(26)的结果提供当前场/ 帧(10)的图像数据的插值后的图像数据的模块;-被配置为如果根据来自运动矢量集合、被指示为对于基于行的运动补偿(26)不可靠 的运动矢量对区域的至少一个像素(71-76)进行了插值则对当前场/帧(10)的插值后的 图像数据的区域进行模糊化(67)的模块。
16.根据权利要求15所述的装置,其中,被配置为对当前场/帧(10)的插值后的图像 数据的区域进行模糊化的模块被配置为,抑制至少一个像素(71)。
17.根据权利要求15或16所述的装置,其中,如果区域的两个像素(74、76)是根据来 自运动矢量集合、被指示为对于基于行的运动补偿(26)不可靠的运动矢量进行插值的,并 且如果所述运动矢量与来自运动矢量集合、被指示为对于基于行的运动补偿(26)可靠的 另一运动矢量相交,则被配置为对当前场/帧(10)的插值后的图像数据的区域进行模糊化 (67)的模块被配置为将两个像素(74、76)之间的像素(75)和两个像素(74、76)组合成一 个统一区域(77)。
18.根据前述权利要求15至17中至少一项所述的装置,其中,如果区域(78)由根据 来自运动矢量集合、被指示为对于基于行的运动补偿(26)不可靠的运动矢量而插值出的区域的多于两个的相邻像素组成,则被配置为对当前场/帧(10)的插值后的图像数据的区 域进行模糊(67)的模块通过将第一组两个像素(70)插入在区域(78)之前并通过将第二 组两个像素(70)插入到区域(78)之后来扩展所述区域,其中,第一组两个像素(70)和第 二组两个像素(70)与被指示为对于基于行的运动补偿(26)不可靠的运动矢量的像素相对应。
19.根据权利要求15至18中至少一项所述的装置,其中,被配置为执行基于行的运动 补偿(26)的模块被配置为,使用中值滤波器进行基于行的运动补偿(26)。
20.根据权利要求19所述的装置,其中,所述中值滤波器被配置为,使用在已经补偿的 相邻像素处针对基于行的运动补偿(26)提供的运动矢量、在要补偿的相邻像素处针对基 于行的运动补偿(26)提供的运动矢量、以及针对当前正在补偿的当前场/帧(10)的图像 数据的当前像素提供的当前运动矢量作为输入。
21.根据权利要求15至20中至少一项所述的装置,其中,被配置为执行基于行的运 动补偿(26)的模块被配置为,关于亮度值和色度值中至少一个来执行基于行的运动补偿 (26)。
22.根据权利要求15至21中至少一项所述的装置,其中,所述装置包括第一行存储 器(24),被配置为存储当前场/帧(10)的图像数据(X’),其中,使用第一行存储器(24)沿 水平方向执行基于行的运动估计(25)。
23.根据前述权利要求至少一项所述的装置,其中,被配置为提供运动矢量集合的模块 被配置为,在从当前场/帧(10)的图像数据中获取的相应像素(31)处提供运动矢量集合 的每个运动矢量。
24.根据权利要求22和23中至少一项所述的装置,其中,从第一行存储器(24)中获取 相应像素(31)。
25.根据权利要求22至24中至少一项所述的装置,其中,使用第一行存储器(24)沿水 平方向执行基于行的运动补偿(26)。
26.根据权利要求16所述的装置,其中,所述装置包括第二行存储器(23),被配置为 存储先前场/帧(11)的图像数据(XI)。
27.根据权利要求15至26中至少一项所述的装置,其中,所述装置包括第三行存储 器(88),包括上方行的运动矢量,其中,已经由先前执行的针对上方行的基于行的运动估计 (25)提供了上方行的运动矢量。
28.根据权利要求15至27中至少一项所述的装置,其中,被配置为提供运动矢量集合 的模块被配置为-选择要用于基于行的运动补偿(26)的运动矢量;-检测所选运动矢量的质量值,其中,该质量值指示所选运动矢量对于基于行的运动补 偿(26)是否可靠;以及-将所选运动矢量添加至运动矢量集合。
29.根据权利要求15至28中至少一项所述的装置,其中,被配置为提供运动矢量集合 的模块被配置为_如果所检测的质量值指示所选运动矢量对于基于行的运动补偿(26)不可靠,则从在 基于行的运动估计(25)中使用的当前行之上的行中搜索(63)另一运动矢量;-检测另一运动矢量的另一质量值,其中,该另一质量值指示另一运动矢量对于基于行 的运动补偿(26)是否可靠;以及_如果另一质量值指示另一运动矢量对于运动补偿(26)是可靠的,则用另一运动矢量 替换(65)所选运动矢量。
30.一种包括根据前述权利要求15至29中至少一项所述的装置的电视机。
31.一种包括代码的计算机程序产品,所述代码被配置为实现根据权利要求1至14中 至少一项所述方法。
32.一种根据权利要求31所述的计算机程序产品,其中,所述计算机程序包含在数据 载体上。
33.一种包括根据权利要求30所述的计算机程序产品的数据载体。
34.一种特别针对运动画面的连续场/帧中的运动估计和补偿后的场/帧率上转换、 用于视频图像数据中的基于行的运动估计(25)和基于行的运动补偿(26)的系统(20),其 中,该系统包括-被配置为通过执行基于行的运动估计(25)来提供用于当前场/帧(10)的图像数据 中的基于行的运动补偿(26)的运动矢量集合的模块(25);-被配置为通过根据所提供的运动矢量集合对当前场/帧(10)的图像数据进行插值 来执行基于行的运动补偿(26)并且作为执行基于行的运动补偿(26)的结果提供当前场/ 帧(10)的图像数据的插值后的图像数据的模块(26);-被配置为如果根据来自运动矢量集合、被指示为对于基于行的运动补偿(26)不可靠 的运动矢量对区域的至少一个像素(71-76)进行了插值则对当前场/帧(10)的插值后的 图像数据的区域进行模糊化(67)的模块。
35.根据权利要求34所述的系统,其中,所述系统包括第一行存储器(24),被配置为 存储当前场/帧(10)的图像数据(XI’),其中,使用第一行存储器(24)沿水平方向执行基 于行的运动估计(25)。
36.根据权利要求35所述的系统,其中,使用第一行存储器(24)沿水平方向执行基于 行的运动补偿(26)。
37.根据权利要求34至36中至少一项所述的系统,其中,所述系统包括第二行存储 器(23),被配置为存储先前场/帧(11)的图像数据(XI)。
38.根据权利要求34至37中至少一项所述的系统,其中,所述系统包括第三行存储 器(88),包括上方行的运动矢量,其中,已经由先前执行的针对上方行的基于行的运动估计 (25)提供了上方行的运动矢量。
全文摘要
本发明涉及视频图像数据中的基于行的运动估计和补偿。具体地,通过执行基于行的运动估计,提供用于基于行的运动补偿的运动矢量集合。使用所提供的运动矢量集合,通过对当前场/帧中的图像数据进行插值来执行基于行的运动补偿,其中,作为执行基于行的运动补偿的结果提供当前场/帧的图像数据的插值后的图像数据。然后,检查当前场/帧的插值后的图像数据的区域是否包括根据来自运动矢量集合、被指示为对于基于行的运动补偿不可靠的运动矢量进行了插值的区域中的至少一个像素。如果是,根据本发明,执行相应区域的模糊化。
文档编号H04N5/44GK101836441SQ200880106112
公开日2010年9月15日 申请日期2008年8月22日 优先权日2007年9月10日
发明者福尔克尔·布卢姆 申请人:Nxp股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1