首页> 中国专利> 数字重制2D和3D运动画面以呈现提高的视觉质量的方法和系统

数字重制2D和3D运动画面以呈现提高的视觉质量的方法和系统

摘要

本发明涉及一种用于呈现具有提高的感知分辨率和视觉质量的运动画面的方法和系统。实现了在空间上和时间上提高感知分辨率。空间分辨率提高使用基于时间的方法和基于学习的方法创建图像细节。时间分辨率提高创建能使运动图像以更高帧速率显示的合成的新图像帧。使用支持比原始运动画面所需的帧速率和或显示分辨率更高的帧速率和/或更高显示分辨率的投影系统或显示设备来呈现数字增强的运动画面。

著录项

  • 公开/公告号CN101375315A

    专利类型发明专利

  • 公开/公告日2009-02-25

    原文格式PDF

  • 申请/专利权人 图象公司;

    申请/专利号CN200780003734.3

  • 发明设计人 周子衡;保罗·朱迪肯斯;叶剑平;

    申请日2007-01-29

  • 分类号G06T13/00;G06T15/70;G06T5/00;H04N13/00;H04N5/262;

  • 代理机构北京康信知识产权代理有限责任公司;

  • 代理人余刚

  • 地址 加拿大安大略

  • 入库时间 2023-12-17 21:27:57

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-03-18

    授权

    授权

  • 2009-04-22

    实质审查的生效

    实质审查的生效

  • 2009-02-25

    公开

    公开

说明书

相关申请的交叉参考

本申请要求于2006年1月27日提交的标题为“Methods andSystems for Digitally Re-mastering of 2D and 3D Motion Pictures forExhibition with Enhanced Visual Quality”的美国临时专利申请第60/762,964号的优先权,其全部内容通过引证结合于此。

技术领域

本发明大体涉及用于增强运动画面的方法和系统,更具体地,涉及提高运动画面的分辨率和质量。

背景技术

运动画面由以较快的帧速率向观看者显示的图像帧序列组成。感知的图像分辨率是运动画面的显示质量的关键指标,它是空间分辨率和时间分辨率相结合的结果。空间分辨率衡量可由观众感知的每个图像帧内的细节等级,并且其由显示系统的质量和运动画面内容的质量确定。运动画面的时间分辨率衡量运动画面序列的运动平滑度等级,并且其由显示运动画面图像的帧速率确定。对于电影放映,传统运动画面的标准帧速率是24fps(帧每秒)。然而,存在大量帧速率更高的运动画面格式。在美国专利申请第2002/0149696号中大体上描述了以更高帧速率数字地呈现运动画面的实例,作为将运动画面进行临时插值以达到更高的帧速率以便能够以原始的帧速率或更高的帧速率数字地呈现运动画面的方法。帧速率内插方法将依赖于运动矢量分析,例如,柯达的Cineon系统中使用的分析。然而,这种系统没有准备对整个运动画面进行数字重制或为电影应用或需要相对高的视觉和声音质量的大格式电影应用产生可接受的图像质量。例如,此系统不提供伪像(artifact)修复或足够的处理速度以满足双历(day and date)的发布时间表。

这种高帧速率运动画面格式的其他实例包括Showscan(60fps)、ToDD-AO(30fps)和(48fps)。是15-perf/70mm胶片格式,其以48fps的帧速率获取并显示运动画面。第一部电影Momentum由加拿大国家电影局(NFB)制作并于1992年在西班牙的塞维利亚的EXP092首映。随后,于1993年在第135届SMPTE技术讨论会上展示了对技术的研究。该研究表明,与使用24fps的帧速率的标准格式相比,通过提高清晰度和锐度、降低胶片颗粒噪声以及几乎消除了如频闪(strobing)和运动模糊的运动伪像来显著增强了图像真实度。该研究进一步表明,即使对于静止镜头,感知图像分辨率也“比标准(格式)大很多”。该研究提供了通过增大帧速率而提高时间分辨率可以改善感知图像分辨率的证据。稍后可由两个其他基于48fps胶片的投影格式的试验作品来证实相似的分辨率改善效果。这些格式中的一种是称作MaxiVision的3-Perf/35mm格式,另一种是由Super Vista提供的称作SuperDimension-70(SDS-70)的5-Perf/70mm格式。

在过去的十年中,较少的运动画面被以高于24fps的帧速率来制作和呈现。存在防止以更高帧速率制作基于胶片的运动画面的经济和技术两方面的限制。在制作方面,以更高帧速率进行拍摄会增加胶片成本和制作成本。由于使用更高帧速率而减少了曝光时间,所以在装置方面需要有更多的照明设备,这使得制作成本增加。在呈现方面,以更高帧速率进行投影大大增加了电影放映机的复杂度和成本以及电影拷贝(film print)的成本。由于这些限制,IMAXHD和其他提出的更高帧速率的胶片格式对于主流运动画面制作都不是经济上可行的。

数字投影技术的改进使得可以经济地以更高帧速率呈现运动画面。由数字电影创导公司(DCI)近期公布的数字影院系统规范包括48fps作为投影选择。然而,以48fps制作运动画面的成本仍比较高。一种解决方案是通过将图像转换到更高帧速率来提高运动画面的时间分辨率。帧速率转换方法实际上基于原始图像帧来创建数字地合成的图像帧。在过去的几十年中,针对运动画面和视频格式转换开发了多种帧速率转换方法。这些方法的范围从简单的帧(场)重复、帧(场)平均到诸如运动补偿帧插值的更加复杂的方法。运动补偿(MC)方法分析相邻图像帧间的图像元素的运动并基于所估计的运动信息来创建新的合成帧与其他方法相比。MC方法通常产生更平滑的运动。

典型的MC方法具有运动估计器,其计算图像帧的每个图像元素相对于相邻帧的运动。图像元素可被定义为用于描述对象的单个像素、n×m个像素的块或像素组。通常使用单个运动矢量来表示图像元素从当前帧到将来帧的运动方向和强度。有时,使用一对运动矢量来表示图像元素从当前帧到将来帧以及从将来帧返回到当前帧的运动。这被称作双向运动估计。运动矢量可能不足以描述用于描述对象的一组像素的运动,这是因为从当前帧到将来帧对象的形状也可能变化。在这种情况下,还将与运动矢量一起包括一些物体形状变形的数学描述形式。在过去十年里,提出了用于视频格式转换的多种MC方法。那些方法中的大多数方法可利用少量人为干预或无需人为干预而完全自动进行。然而,那些方法都不能产生运动画面应用所需的足够的图像质量。

已经提出了一些用于将运动画面转换为场速率为每秒50/60场的视频格式的算法。通常,这些应用需要从标准3:2下拉法到基于运动补偿的帧速率转换(MCFRC)算法的全自动算法。MCFRC算法可产生较好的图像质量和更平滑的运动,但是其也产生由于运动估计误差而导致的其他伪像。MCFRC算法大体上包括三类:(1)基于块的方法;(2)基于对象的方法;以及(3)基于像素的方法。可使用与MPEG和H.264/AVC编解码器中的运动估计算法类似的普通的基于块的运动估计算法来实现该基于块的方法。与其他方法相比,基于对象的方法可以产生更少的伪像,但通常不太稳定。在美国专利第6,625,333号中大体上公开了改进的基于对象的MCFRC算法的实例。基于像素的方法通常计算量很大。

帧速率转换方法还用于创建特殊视觉效果(VFX),例如,创建慢动作、快动作或可变动作序列,这些特殊视觉效果在制作运动画面、广告和视频时频繁使用。可用于这种VFX应用的商业软件工具的实例包括由Realviz提供的ReTimer软件和由Algolith提供的TimeWarp软件。Retimer提供了创建数字的“慢动作”或可变动作的能力并使用户能够编辑速率曲线和运动矢量场以达到期望的结果。一些这种商业软件工具使用MC方法的一些形式。例如,在ReTimer之后的MC算法基于块图像元素,而在TimeWarp之后的算法基于对象图像元素,例如,由加拿大通信研究中心(CRC)开发以及在美国专利第6,625,333中描述的那些算法。然而,这种商业软件工具未被设计用于自动计算,它们依赖于人类用户通过GUI交互地提供用户输入。此外,这些软件工具会由于诸如遮挡和运动估计误差的问题而不可避免地产生不可接受的伪像,而它们没有提供有效的工具和方法来解决那些问题。虽然由熟练的人类用户通过手工修复可以修复所产生的伪像,但此过程是相当费力、昂贵且耗时的。

增加每个图像帧的空间分辨率也可以改善运动画面的感知分辨率。拍摄在35mm底片上的传统运动画面的空间分辨率被限制为约每毫米80个周期、或者对于1.85投影格式为约每画面高度1800行。由于标准胶片冲洗(film lab)处理产生的调制传递函数(MTF)的损失,发行的电影拷贝的空间分辨率降低到约每画面高度875行或更低。

数字影院技术的进步消除了MTF损失的一些主要来源,特别是来自标准胶片冲洗处理中的那些损失,使得可以显示具有比通常发行的电影拷贝更高的感知分辨率的运动画面。DCI数字影院系统规范推荐数字运动画面以2K或4K格式显示。2K数字格式理论上能够支持不大于每画面高度1080行的空间分辨率,而4K数字格式可支持不大于每画面高度2160行的空间分辨率。然而,除非运动画面图像内容的质量能够与数字影院系统的空间分辨率相匹配,否则不能保证数字电影显示的质量。因为运动画面制作和后期制作过程的各个阶段(包括拍摄、扫描、VFX和数据压缩)的MTF退化,所得到的运动画面的图像内容可具有比数字投影机能够支持的空间分辨率低得多的空间分辨率。

为了产生高质量的电影体验,尤其当运动画面要在大格局电影院中放映时,改善运动画面的图像内容的空间分辨率是一个大挑战。典型的大格局影院(例如,剧场)具有80英尺高的屏幕。与在传统影院中相比,在这种剧场中,观众坐得离屏幕更近。在这种剧场中向观众传递满意的视觉体验需要显著提高诸如感知分辨率的图像质量。即使当应用了这种增强方法时,很难为了按时发布改进的运动画面而在较短的时间窗内完成所有所需的处理。

发明内容

本发明的某些方面和实施例提供了用于数字重制运动画面以达到提高的感知分辨率和视觉图像质量的方法。通过空间分辨率的提高和时间分辨率的提高可以增强运动画面的各图像。空间分辨率的提高可以通过结合“基于运动”和“基于学习”的空间分辨率提高方法来实现。时间分辨率可通过利用相对精确的运动估计方法为每个运动画面序列中的每个像素计算运动矢量来得到。设计某些方法,以利用有限的人为干扰以高度自动的方式来实现。本发明的一些方面可以利用一个或多个基于处理的设备的系统来实现。

本发明的某些方法和系统可应用于二维(2D)和/或三维(3D)运动画面。2D运动画面是图像帧序列,其可由摄影机拍摄或利用计算机制图每次获取一帧。根据本发明的一些实施例的增强方法对数字数据执行处理。因此,如果运动画面已以诸如源母带(sourcemaster)文件的数字格式存在,则图像数据可直接用于增强处理中。可以在增强处理之前对除数字之外的格式的运动画面进行转换。例如,如果运动画面在胶片上,则可以将其数字化,以通过胶片扫描器将其转换为数字数据。

基于立体视觉的原理,3D运动画面产生了运动和深度的错觉。3D运动画面由两个图像帧序列组成,一个序列表示来自于左眼的视图以及另一序列表示来自于右眼的视图。这两个序列通常被称为左眼(L)图像和右眼(R)图像。可以合成L图像和R图像,以使来自每个序列的一帧在给定时刻从左眼和右眼的视点拍摄一个动作,并且它们形成被称做L-R图像对的图像对。本发明的一些实施例可应用于2D和3D运动画面数据,这是因为可将L和R图像作为两个单独的图像序列来进行处理。本发明的其他实施例将不同的增强处理应用于3D运动画面数据,例如,使用来自一个眼睛图像的信息(例如L)以改进另一眼睛图像(例如R)的处理结果。

本发明的一些实施例提供了一种使用3D运动画面数据来增强2D运动画面序列的方法。例如,可以创建L图像序列或R图像序列来用于输出,但L和R图像之间的相互关系可用于增强图像序列。

根据一些实施例的数字重制处理的一个应用(例如,空间分辨率提高处理和时间分辨率提高处理)是增强24fps的传统运动画面以使其以48fps以上的帧速率进行显示。另一应用是允许以更低的帧速率(例如,12fps)拍摄运动画面,以增加数据存储设备或胶片卷的拍摄时间。可以通过公开的数字重制处理的实施例将所得到的图像提高到24fps的正常帧速率或更高帧速率。对于本领域的技术人员,本发明的其他类似应用应是显而易见的。

本发明的实施例提供了用于通过满足运动画面发行进度需求的空间分辨率提高和时间分辨率提高来提高运动画面的感知分辨率的方法和系统。

附图说明

当参考附图阅读以下详细描述时,将会更好地理解本发明的这些和其它的特征、方面、以及优点,其中:

图1是根据本发明的一个实施例的用于数字重制运动画面的流程图。

图2是根据本发明的一个实施例的用于数字重制2D运动画面的流程图。

图3是根据本发明的一个实施例的用于数字重制3D运动画面的流程图。

图4是根据本发明的一个实施例的用于数字重制运动画面的系统的布置图。

图5是根据本发明的一个实施例的在用于数字重制运动画面的系统中的数据的流程图。

图6是根据本发明的一个实施例的用于增强运动画面图像数据的时间分辨率提高处理的流程图。

具体实施方式

图1示出了用于增强运动画面图像序列的处理10的一个实施例。处理10开始于接收运动画面图像序列,该图像序列可以是2D或3D运动画面的胶片格式12或者2D或3D运动画面的数字源母带14。如果运动画面是2D或3D运动画面胶片格式12,则使用胶片扫描处理16来进行扫描。如果运动画面是数字源母带2D或3D运动画面14,则可直接使用数据或使用格式转换18将其转换为另一种数字格式。

在胶片扫描16或格式转换18之后,运动画面序列数据包括图像序列或帧。然后,通过数字重制处理20来增强图像序列。数字重制处理20可以包括空间分辨率提高方法22和时间分辨率提高方法24,以下将更详细地描述其实施例。空间分辨率提高方法22可以通过图像分析来创建图像帧中缺少的图像细节。可使用两种不同的空间分辨率提高方法以达到期望的性能。一种方法可以是基于运动的方法,其中,通过分析图像元素的运动从附近相邻的图像帧中“偷取”附加的图像细节。第二种方法是基于学习的方法,其中,基于之前学习的知识通过分析图像特征空间来“创建”附加的图像细节。

时间分辨率提高方法24可通过经帧插值增加合成的新图像帧以增加时间采样率或帧速率而改进感知分辨率。时间分辨率提高方法24包括MCFRC方法,其相对精确且稳定。时间方法24还适于解决遮挡。

在一些数字重制处理中,运动画面图像数据被分成称作镜头(shot)的更小片段。镜头分割处理可使用编辑信息,其在运动画面的最终分割被认可之后是可用的。利用编辑信息,图像数据可被分成多个镜头,并且可以针对每个镜头单独地进行数字处理。在数字重制之后,由于在每个镜头中增加的帧数而需要修改编辑信息28。利用修改后的编辑信息30,可将增强的镜头片段以正确的顺序放在一起。例如,在增强运动画面数据之后,进行确认处理26,其根据音轨32来使数据同步。然后,将确认后的增强图像数据转换为标准的数字源母带格式34,其可以与原始的源母带格式类似但具有增大的帧速率。然后,基于数字源母带文件34,可以制作数字发行母带文件36,以在剧场进行显示38或者进一步制作成其他的发行格式(包括视频和广播)。也可以结合音频32来创建数字发行母带文件36。可以在创建数字发行母带文件36时应用数据压缩,以符合发行平台的存储和带宽的要求。

运动画面图像的感知分辨率和视觉质量的提高对于能够真正提供更高的图像分辨率和视觉质量的大格局影院的运动画面的放映来说尤其重要。为此,来自增强运动画面的帧具有比传统影院所需像素分辨率更高的像素分辨率。将源母带转换为用于传统影院的发行母带可能需要降低帧像素分辨率。还可以数字重制原始的音频文件,以支持大格局影院所需的更高的音频质量标准。也可以将数字发行母带文件录制回到胶片以进行发行。

图2至图3示出了创建具有增强特性的数字发行母带文件的处理流程。图2示出了用于增强2D运动画面图像的处理,而图3示出了用于增强3D运动画面图像的处理。

图2至图3所示的处理开始于接收2D或3D运动画面图像序列作为图像数据输入102。该2D或3D图像序列为数字格式,或者在图像数据为非数字格式(例如,在赛璐珞胶片上)的情况下使用数字化处理将其转换为数字数据。

然后,使用场景分割处理104来划分数字2D或3D运动图像序列。例如,可以将图像序列划分成多个镜头,其中,每个镜头均是代表连续动作的图像帧序列。场景分割104帮助为优选地对具有连续动作的图像帧序列执行的增强准备图像帧序列。可以通过检测图像帧特性的突然改变来自动执行场景分割104。这种特性的实例包括颜色、密度、直方图、结构和运动。如果使用自动场景分割104,则可以将整个运动画面数据处理为连续序列。

在本发明的一些实施例中,作为编辑结果,运动画面已被分为多个镜头,并且被称作编辑判定列表(EDL)文件的镜头列表是可用的。EDL记录了关于每个镜头的准确信息,包括表示每个镜头的开始和结束的时间码数据或帧数数据。EDL可用于引导场景分割处理104。

空间分辨率提高

在场景分割104之后,通过空间分辨率提高处理来增强运动画面图像序列。图2示出了可应用于2D图像序列的空间分辨率提高处理106,而图3示出了可应用于3D图像序列的空间分辨率提高处理206。如下所述,可不同地应用空间分辨率提高处理106、206,但二者都可以包括基于运动的方法和基于学习的方法。

基于运动的空间分辨率提高

基于运动的方法108、208可基于运动分析来提高图像序列的空间分辨率。基于运动的方法108、208可包括三个普通步骤:(1)运动估计;(2)运动场调节;和(3)细节恢复。运动估计可基于分级运动模式,其中,每个图像帧都由多层金字塔式数据结构表示。每个金字塔式数据结构都可以代表特定层的图像细节。在每个金字塔层处,可使用可变大小的块匹配算法从滑动时间窗内的所有帧来计算每个像素的运动估计。利用诸如高频特征、平滑度和质量测量值的约束来调节产生的运动场。每个运动估计都被分配了一个可靠性测量值。可以考虑调节任何具有低可靠性测量值的像素,以降低估计误差。通过基于所计算的运动估计将每个相邻帧映射到当前帧来构造一组合成帧。在一些实施例中,通过在时间窗内合成帧的合适时间插值来恢复图像细节。可使用单通、多通、或迭代处理来执行时间滤波。可如由基于处理器的设备(例如,智能控制器)控制的自动分布式计算系统来实现基于运动的空间分辨率提高方法108、208。基于运动的方法在序列号为19/474,780的美国专利申请中进行了详细地描述。

对于3D运动画面序列,基于运动的空间分辨率方法208可单独应用于L和R图像序列。此外,可使用L和R图像对的像素之间的相关性(例如,通过估计L和R图像序列之间的视差)进一步改进空间分辨率。这种估计可包括视差估计、视差图调节和细节恢复。视差估计开始于校正两个图像序列之间的水平偏差(misalignment)。对于一幅图像(例如,L图像)中的每个像素,定位在另一图像(例如,R图像)中的匹配像素。可在水平方向上以限定公差进行匹配,以调节可能没有消除的剩余的垂直偏差。可以忽略未找到匹配的像素。可在两个方向上进行视差匹配以改善产生的视差图的精确性。为每个L/R图像对生成视差图。可通过使用与在运动调节中使用的那些约束类似的约束去除局部异常来进一步改进视差图。然后,利用视差图生成合成的R图像来将其映射到L图像,以改进其空间分辨率,生成合成的L图像并将其映射到R图像,以改进其空间分辨率。

由上述处理产生的运动估计包括多个分辨率运动矢量场,其可以被储存并用作后续的时间分辨率提高处理的初始运动估计140。

基于学习的空间分辨率提高

基于运动的空间分辨率提高方法108可有效地用于具有相对可预测运动的图像序列。对于具有比较复杂的运动的图像,细节增强的影响随着运动估计精确度变差而减小。在图2至图3所示的实施例中,基于学习的方法110、210可用于使图像的每个像素与预选的具有更高分辨率的图像图案的库相匹配以及用根据匹配的更高分辨率图案计算得到的值来代替该像素。可以使用包括图像细节等级比原始运动画面图像更高的一组所选样本图像来生成更高分辨率的图案。该更高分辨率图案的库是高分辨率的码本,并且每个图案通过码字来描述。

基于学习的空间分辨率110可执行以下步骤来提高原始图像序列的空间分辨率。使每个原始图像序列变大以达到预期的更高的分辨率。然后,将匹配处理应用于放大图像的每个像素,以在预设的码本中找到匹配码字。如果发现匹配,则由与匹配码字相关联的更高分辨率图像的图案的中心像素来代替该像素。在对放大图像的每个像素重复了以上处理之后,所得到的增强图像可能需要另外通过时间滤波处理以确保与其他增强图像帧的时间一致。此匹配处理可扩展到放大图像的像素块。例如,每个像素块都与一个码字相匹配,并且通过变换由匹配的更高分辨率图案代替。可应用混合处理以减少块之间的空间中断。同样也可以应用时间滤波处理以确保时间一致。

类似的基于学习的空间分辨率提高处理210可应用于3D运动画面。例如,L和R图像可共享相同的码本。针对每只眼睛分别执行分辨率的提高。可以使用在基于运动的分辨率提高阶段中产生的视差图来应用滤波处理,以去除在所得到的L和R图像之间的不一致。

以下描述码本生成处理的一个实施方式。首先,将所有更高分辨率的图像图案缩小为相同像素分辨率的运动画面图像,以使其共有相同的图像细节等级。通过傅立叶频谱分析来测量图像细节等级。然后,将缩小的图像图案放大到运动画面将以其进行显示的更高像素分辨率。所得到的图案形成具有更高分辨率的图像图案的对,其根据更高分辨率的图像图案而产生。放大处理可增加图像像素数而并不产生附加的图像细节。可对所有的图像图案对应用训练处理,以为来自周围像素的每个像素从每个图像图案对中计算并提取大量的图像特征。可以通过固定数量的数据字节或字来描述具有更高的图像细节等级的图像特征。从每个图像对中搜集的所有特征形成数据集或码字。可将原理分析处理用于去除冗余的特征属性来减小码字的长度。然后,将码字收集到数据库或码本中并保存在数据存储器中。在一些实施例中,初始码本的大小和内容取决于所选图像图案的大小和内容。聚类(clustering)分析可应用于码本以减小码本大小。簇分析对具有相似图像图案的像素进行分组。

时间分辨率的提高

空间分辨率提高处理110、210的输出被应用于时间分辨率提高处理112、212。时间分辨率提高处理112、212可以通过增加显示帧速率来增大感知分辨率。因为原始图像具有固定的帧速率,所以需要基于原始图像帧来合成新的图像帧以实现帧速率的增大。在本发明的一些实施例中,时间分辨率提高处理112、212可以包括预处理、全局运动估计、局部运动估计、半运动矢量生成、帧插值、以及利用时间一致性检验进行的伪像修复。基于以下参考图2-3和图6描述的MCFRC方法的实施例计算的高质量运动估计来生成合成帧。

预处理

首先,对图像序列进行预处理114。预处理114可用于从图像帧中计算出边缘掩码图和颜色分割图。例如并参考图6,可通过边缘检测算法602(例如,Canny边缘检测器)从图像的每个帧生成边缘掩码图612。然后,通过颜色分割算法604(例如,Meanshift或Watershed)从每个帧中生成颜色分割图614。对于3D运动画面,为每只眼睛生成单独的边缘掩码图612和颜色分割图614。

全局运动估计

然后,利用全局运动估计处理116计算在相邻帧之间的全局运动。全局运动估计116可用于实现相对精确的局部运动估计。近似但正确的全局运动估计116可用于进行局部运动估计算法的普通第一估计。使用全局运动估计116,可利用相机运动和深度信息来计算图像背景的运动。如果深度信息对于例如2D或3D图像序列不可用,则可将全局运动近似地建模为三维平面变换,其是三维透视投影变换的简化版本并且在计算中不需要深度信息。这里示出了在该方法中使用的三维平面变换的实例:

x=a1x+a2y+a3a7x+a8y+1---(1)

y=a4x+a5y+a6a7x+a8y+1

其中,(x,y)和(x’,y’)是来自两个相邻帧的一对匹配特征点的位置。基于随机追踪的特征点通过配合在方程式(1)中的三维平面模型来确定系数a1,a2,...,a8。基于标准2×2梯度交叉相关矩阵来计算特征点。

G=SxxSxySxySyy---(2)

Sxx=∑fx2

Syy=∑fy2

Sxy=∑fxfy

其中,fx和fy表示局部水平和垂直梯度,在每个像素周围的小局部区域(3×3,5×5等)上计算总和。可通过多种方法提取特征点。一种方法是计算矩阵G的最小本征值,其是Kanada-Lucas Tomasi(KLT)特征检测器的基础。另一种方法是基于矩阵G计算最大角强度测量值,其是另一种已知的Harris角检测器的基础。另一种方法是计算以下值PEG、QEG和θEG,其从矩阵G获得:

PEG=(Sxx-Syy)2+4Sxy2(Sxx+Syy)2+σEG4---(3)

QEG=4(SxxSyy-Sxy2)(Sxx+Syy)2+σEG4

θEG=arctan(Sxx-Syy-(Sxx-Syy)2+4Sxy2-2Sxy)

值PEG表示局部边缘尺度,其可用于产生边缘掩码值。值QEG表示局部梯度改变的响应,其可用于通过计算其局部最大值来定位特征点。在具有局部最大值的像素之中,真正的特征点并不远,并且可通过计算值θEG(表示局部梯度的方向)和能量测量值V并查找局部最大值的位置来对其定位:

V=Σ02πf(θEG)---(4)

其中

f(θEG)=1L(θEG)ΣL(θEG)yfx-xfyx2+y2---(5)

L(θEG)是从中心像素到局部区域边界的投影长度。由于局部区域通常是矩形,所以此值根据角度值而变化。一般使用N个定向角,并且通常将N设置为16或更大。通过以上方法提取的特征点需要在相邻帧之间匹配成对。对于当前帧中的特征点,其与下一帧中的特征点相匹配以形成一对,它们具有最高的相关值。

一旦特征点被配对,就可以通过从这两个帧中随机地选择至少四个相应的特征对来计算用于在任意两个相邻帧之间对全局运动进行建模的三维平面变换(1)的系数,每一对均产生两个线性方程,例如:

xy1000-xx-yx000xy1-xy-yya1a2a3a4a5a6a7a8=xy---(6)

所选取的4个特征对产生八个线性方程,从而可以解出系数a1,a2,...,a8。可对所有的特征对测试所得到的三维平面变换,并且保存该变换和内围层(inlier)的数量以稍后进行使用。然后,随机选取接着的四对特征点以及计算并保存三维平面变换。重复此过程足够多次。在所有重复估计的所有三维平面变换之中,选出具有最大数量内围层的平面变换作为初始估计。内围层用于使用标准最小二乘法估计第二个三维平面变换。重复这个步骤直到内围层的数量变得稳定。所得到的三维平面变换是在这两个帧之间的主要全局运动的估计。如果存在其他主要全局运动,则能够以相同方式从剩余的未分类特征点计算这些全局运动。此算法所需的计算取决于特征对的数量,而不依赖于图像帧大小。

相邻帧之间的最主要的运动通常是背景运动,其通常由相机运动导致。然而,如果对象足够大且移动足够快,则前景对象的运动可能成为主要运动。然而,在多数情况下,基于相邻帧之中内围层的运动和百分比的相似性,可从主要运动中选出背景运动。

对于3D图像序列,针对每只眼睛执行单独的全局运动估计。在L图像和R图像之间的立体视差相对较小的情况下,可针对两只眼睛执行单独的全局运动估计。

局部运动估计

然后,可基于从基于运动的空间分辨率提高处理108、208接收到的边缘掩码图612、颜色分割图614、全局运动估计116、以及初始运动估计140来应用诸如局部运动估计118、218的局部运动估计处理。局部运动估计118、218可包括基于金字塔式投票的算法。该基于金字塔式投票的算法能够基于所得到的局部运动矢量来合成新的帧。新的帧可与空间增强的图像帧相结合,以达到期望的帧速率。

在图像序列增强期间,基于金字塔式投票的算法能够进一步使误差最小化。特定的局部运动估计算法通常对某一类型的运动是最佳化,而不能对其他类型的运动保持精确。在本发明的一些实施例中,使用多种局部运动估计方法,以及采用投票处理来确定最好的估计和最小的误差。在那些方法的一些中,来自先前的基于运动的空间分辨率提高的运动估计被用作为初始估计。

在本发明的一个实施例中,使用了多达四种局部运动估计算法或方法。这四种算法中的一种是块匹配方法。该块匹配方法包括将两个相邻图像帧划分为多个小块。在一个帧中,将其全局运动用作初始假设并计算每个块的平均像素位移。确定第二个帧中的起始块,搜索在起始块附近的所有块,以基于块匹配误差的最小值找到最佳匹配。然后,为第一帧块中的每个像素分配运动矢量,这等同于将来自第一帧的块移动向第二帧中的最佳匹配块。

第二种局部运动估计算法是特征传播方法。该特征传播方法估计特征点的运动并且将结果传播至整个图像帧的其余像素。可以使用为全局运动估计提取的多个特征点对。去除所有具有低相关值和大初始运动估计的特征对。在剩余的特征对之中,还可以去除具有双重对应的那些特征对。剩余的特征点被认为是精确的并且可用作种子对。基于种子对的运动矢量,应用传播算法以将该运动传播至更多的像素。在一些实施例中,记录了来自之前分析的像素状态以帮助加快该处理。然后,基于颜色分割图来填充缺少的矢量。

第三种局部运动估计算法是利用控制点和Lorenzo函数的改进的光流(optical flow)算法。该控制点被限定在格栅中,以及Lorenzo函数用于代替标准均方差(MSE)来控制误差。该方法为下一帧的每个像素计算水平和垂直梯度,确定控制点的结构和分布,以及计算每个像素对于其相关控制点的权重。由每个像素的运动矢量的初始假设开始,为控制点计算运动矢量修改。基于该控制点计算所有像素的运动矢量修改。利用Lorenzo函数计算能量消耗函数(运动跟踪误差)。如果改变值较小,则该方法停止,否则重复计算直到改变值较小或达到最大重复次数。

第四种局部运动估计算法是与多个块尺寸相匹配的完整块。在这种方法中,两个帧之间的初始运动估计被用作基于像素的查找的起始点,该基于像素的查找利用使用局部中心矩计算得到的块相关值。对于当前帧中的每个像素,基于最高相关值在下一帧中找到匹配像素。对于多种不同块尺寸重复此过程,从而为每个像素的每种块大小产生多个运动矢量。

图像帧中的每个像素可具有前向运动矢量和后向运动矢量。前者通过从下一帧中查找匹配像素来估计,后者通过从前一帧中以相反方向查找来估计。所讨论的所有算法都适用于每个方向,从而产生多个前向运动矢量和多个后向运动矢量。

投票处理用于为每个像素从前向和后向运动矢量中选出最精确的运动矢量。在本发明的一个实施例中,投票由以下方案组成,其中每一个都针对二个图像帧的某一部分。方案#1是利用边缘差值来选择运动矢量,边缘差值是基于之先前生成的边缘掩码来计算。对于与一定的块尺寸相关联的每个运动矢量,通过将块内周围像素的绝对边缘差相加,然后除以块的绝对边缘值来计算归一化的边缘差。选择具有足够小的归一化边缘差值的运动矢量,并将该运动矢量分配给像素。如果多于一个运动矢量具有足够小的归一化边缘差,则选择使用最大块尺寸而获得的运动矢量。利用在相应的精确掩码中的相对较高的精度值来标记所选的像素。

如果方案#1没有找到运动矢量,则下一方案#2用于通过相干检查来选择运动矢量。在本方案中,尝试基于足够小的匹配误差为具有前向运动矢量的每个像素在下一帧中找到具有相应后向矢量的相应像素以组成一对。如果找到一对,则运动矢量对被分配给两个像素并且利用所得到的精确掩码中较高的精度值来对它们进行标记。

如果方案#2失败,则使用下一投票方案(方案#3),其也基于前向-后向检查。当基于前向运动矢量将像素投影到下一帧时分析相应的后向运动矢量。如果后向运动矢量具有较低的精度值,则利用具有相反方向的前向运动矢量来代替该后向运动矢量,这是因为前向运动矢量具有较高的精度值。从而,改变了在精确掩码中的精度值。

如果方案#3没有产生运动矢量,则使用下一方案#4,以基于最小像素色差来选择运动矢量。如果找到这种运动矢量,则利用精确掩码中较低的精度值来标记相应的像素。

对于剩余的像素,颜色分割图用于计算之前在相同分割区域中找到的所有运动矢量的平均值。然后,将平均运动矢量用作参考,选择即接近于参考运动矢量又具有最小像素匹配误差的运动矢量。最后的这种投票方法是方案#5。

尽管公开了五种投票方案,但本领域技术人员应当意识到可提出其他投票方案并将其添加到该方法中,其目的在于为每个帧的每个像素产生具有最高可能精度的一对前向和后向运动矢量。

在用于3D运动画面的局部运动估计处理218中,可单独地从L图像或R图像估计运动矢量。然而,由于在L图像和R图像之间存在高相关性,所以来自一只眼睛的运动估计可被用作第二只眼睛的精确的初始运动估计。在本发明的一个实施例中,从L图像获得的运动矢量被用作R图像的基于金字塔式投票的运动估计处理的初始运动估计。这可以改善R图像的运动矢量的精度并降低L图像和R图像之间的不一致性。

在多层金字塔式结构中的基于投票的局部运动估计可以是比较有效且精确的,在该金字塔式结构中,上层图像数据表示图像数据的低质量版本,而最低层(0层)表示图像数据的最精细细节。通过对每个帧逐步进行低通滤波和二次采样来生成图像序列的这种金字塔表示。在之前论述的基于运动的空间分辨率提高方法108、208中实现类似的金字塔表示,其也产生多层运动估计。

根据本发明的一些实施例的基于金字塔式投票的局部运动估计方法608能在每个金字塔层实现。例如,参考图6,在每层处为每个帧生成边缘掩码图612、颜色分割图614和全局运动估计116。基于全局运动估计,通过变形处理606使下一帧的所有数据(图像数据、边缘掩码图612和颜色分割图614)被变形为当前帧,以在每个金字塔层处创建变形数据。

上述所有的投票方案都可稍加或不加修改地应用于所有金字塔层。例如,可扩展方案#2以对由多于一种的方法产生的多个运动矢量的相干性进行检查。在每个金字塔层,如果来自不同方法的至少两个运动矢量都具有非常小的匹配误差,则选择由具有较高精度的方法所产生的运动矢量或确定这些矢量的平均值,从而更新在对应的精确掩码618中的精度值。

对于高于层0的任意金字塔层,运动矢量和精确掩码都可通过使用双线性插值法来逐步改进,以作为下一金字塔层的初始假设。精确掩码值618被用作插值中的权重,以使在插值中具有高精度值的运动矢量将比具有较低精度的运动矢量具有更大的权重。

对于金字塔层0,考虑到像素遮挡,需要被调整运动矢量。通过使用后向运动矢量将来自第二图像帧的像素投影到第一图像帧来创建中间掩码。然后,此掩码被扩大以生成第一图像帧的可追踪掩码。那些不能够从第二图像追溯回第一图像的像素被认为是遮挡像素。对于遮挡像素,利用基于颜色分割的平均来调整其运动矢量。在相反方向上(从第二图像帧回到第一图像帧)重复此步骤。如果应用变形处理606,则通过逆变形处理610使所得到的双向运动矢量616和精确掩码618变形回到正常。

金字塔式结构提供选择局部运动估计方法性能的可能性,其范围从最大精度(在所有金字塔层使用所有多种方法)到最大效率(在0层使用一种方法)。称作“标记”624的4位二进制字被用于标记所选方法的组合。例如,具有值1010的标记624可表示选择了方法#2和方法#4而没有选择方法#1和方法#3。通过选择更多种方法实现了更精确的结果,但同时增加了计算成本。在上层,可使用更多的方法。结果,在上层实现了较高的精度而没有大量增加计算成本。如果上层运动估计是高度精确的,则也可以改善下层运动估计的精度,使得下层需要较少的方法。

在针对3D运动画面的局部运动估计处理218中,可从基于运动的分辨率提高阶段获得L和R图像的金字塔式表示,并分别在L图像和R图像中执行与基于金字塔式投票的局部运动估计608相类似的基于投票的运动估计方法。然而,因为在L图像和R图像之间存在较强的相关性,所以来自一只眼睛的运动估计可用作第二只眼睛的精确的初始运动估计。从L图像获得的运动矢量也可以用作R图像的基于金字塔式投票的运动估计处理的初始运动估计。

半运动矢量生成

然后,将半运动矢量生成处理120应用于图像序列,以通过以基于期望的帧速率的时间间隔合成新的帧来将此图像序列转换为更高的帧速率。基于双向运动矢量616和精确掩码618创建半运动矢量620,以表示像素从现有帧到合成帧或其他帧的移动。这里,术语“半”用以表示合成帧的时间间隔是在两个原始图像帧之间的某处,而其不限制合成帧是精确地在两个原始图像帧之间的一半处被创建。以类似的方式,对应于合成帧的时间间隔同样创建半精确掩码622,其可以稍后在帧插值中使用。

半运动矢量生成120通常假设合成帧在第一图像帧和第二图像帧之间的时间间隔处被创建。然而,当帧速率大于两倍并且在两个图像帧之间创建多于一个的合成帧时,可使用半运动矢量生成120。通过基于前向或后向运动矢量将现有帧的所有像素都投射到合成帧来创建合成帧。例如,称作“半前向运动矢量”的新的前向运动矢量被从第一帧分配到合成帧,还从合成帧分配到第二帧。类似地,称作“半后向运动矢量”的新的后向运动矢量被从第二帧分配到合成帧以及从合成帧分配到第一帧。如果合成帧中的像素具有半前向运动矢量和半后向运动矢量,则它被认为是精确的,从而在对应于合成帧的半精确掩码中被标记。如果存在一个半运动矢量620,则该像素被认为是遮挡像素并同样在半精确掩码622中被标记。如果像素既没有半前向运动矢量也没有半后向运动矢量,则它被认为是不精确的,从而在半精确掩码中被标记。通过求相邻精确像素的半运动矢量的平均值来估计缺少的半运动矢量。所得到的半精确掩码可被用于在后续的处理阶段中定位潜在伪像像素。

帧插值

然后,使用半运动矢量620和半精确掩码622来执行帧插值122。在本发明的优选实施例中,帧插值122使用两个相邻图像的金字塔式表示及其精确掩码618。

通常,将帧插值122应用于在第一图像帧和第二图像帧之间创建合成帧。首先,以相同的金字塔式结构创建空白合成帧。帧插值的任务是使每个金字塔层的合成帧的每个像素填充有正确的颜色值。从在特定层的合成帧中的目标像素位置处开始,对在第一帧和第二帧中在相同位置和相同层处的像素值进行比较。如果它们的值足够接近,则将平均色分配给在合成帧中的相同位置的像素。此像素也被标记为精确。

如果不能发现色匹配,则利用对应的半运动矢量将合成帧中的目标像素投影到第一帧和第二帧,并获得来自每个帧的一个颜色值。如果这两个颜色值足够接近,则计算这两个颜色值的平均值并将其分配给目标像素。此外,该像素被标记为精确。如果这两个颜色值不足够接近,则从其大多数邻近像素中选择其颜色值共享的一个投影像素,并将该像素标记为遮挡像素。

如果目标像素具有一个半运动矢量(半前向运动矢量或半后向运动矢量),则该像素被分配有利用可用的半运动矢量投影的像素的颜色值。该像素被标记为遮挡像素。

如果目标像素没有半运动矢量,则在更高的金字塔层处在一组像素内查找精确的像素。一旦找到,就向该目标像素分配从这些精确像素的双线性插值中获得的颜色值。如果在邻域内没有找到精确像素,则逐渐扩大像素组的半径,直到其至少包括一些精确像素,并且向目标像素分配这些精确像素的双线性插值。

帧插值122处理能够从两个现有图像帧中创建合成图像帧。对整个图像序列重复此处理,直到达到期望的帧速率。得到了包括现有图像帧和合成图像帧的时间上增强的图像序列。根据期望的帧速率,不是所有现有图像帧都可以保留在所得到的增强图像序列中。例如,为了将标准24fps的运动画面序列转换为48fps输出帧速率,可在每对相邻的图像帧之间创建合成帧。因此,所得到的增强图像序列的近一半的图像帧都是合成帧。在输出帧速率不是正好为原始帧速率的倍数的其他情况下,增强图像序列的更高百分比(达到100%)的图像帧都将是合成图像帧。

时间增强的运动画面当以更高帧速率显示时能够与原始音轨同步。将需要在图像序列的最后的现有帧之后添加一个或多个附加合成帧以辅助同步。通常根据最后的图像帧来创建这些合成的结束帧。存在多种根据单个图像帧创建合成帧的方法。一种方法是创建两个帧。第二种方法是生成从图像帧到合成帧的半前向运动矢量并填充合成帧的所有像素。

基于多于两个的帧的帧插值方法能够大量减少时间不一致伪像。通常,长度为2M+1个帧的时间窗用于限定用于生成合成帧的图像帧的范围。窗的长度可根据图像序列中的运动而改变。小的窗长度用于快速运动序列,而相对大的窗长度用于缓慢运动序列。

在在合成帧之前的一帧和每个先前帧之间,以及在合成帧之后的一帧和每个将来帧之间进行运动估计。可在每对帧之间使用相同的基于金字塔式投票的运动估计方法,并且该方法生成前向运动矢量和后向运动矢量。

使用与先前公开的方法相同的方法,在合成帧与时间窗内的每个其他图像帧之间生成半运动矢量620。合成帧的像素值可通过对存在的所有投影像素进行加权平均来计算。

对于包括快速运动的图像序列,由于使用上述方法计算得到的运动估计精确度较差,所以提高时间分辨率变得更具挑战性。本发明的一些实施例提供了用于处理快速运动的场景的分层方法155。分层方法155将图像分割成不同的运动层以及对在相同层中共享相似运动的图像元素进行分组。

由先前的方法估计出的半运动矢量620可用于运动分割。每个原始图像帧被分成多个小块。由仿射运动模型来估计表示每个块的运动,该仿射运动模型是基于块的所有像素的运动矢量通过最小二乘法计算得到的。计算拟合误差以评价该运动模型是好的拟合还是差的拟合。对于所有好的拟合块,收集它们的仿射运动参数。应用聚类算法以将仿射运动模型聚集为表示整个图像中的主要运动的少量的类。

根据主要运动类,将每个像素基于其运动矢量映射到最近的运动类中。然后,属于相同运动类的所有像素被组合成段。如果分割的区域太小,则可将其与较大的邻近段合并。如果两个段具有相似的仿射运动,则可将它们合并成一个区域。如果区域具有的仿射运动模型拟合误差太大以至于不能保持为一个区域,则可以将它分成两个区域,每一个区域都具有不同的仿射运动模型。重复此分割处理,直到各区域变得稳定或达到最大重复次数。

为包括所有像素的分割索引的每个帧创建最终运动分割掩码。此分割掩码限定每个帧的图像像素的层结构。

包括运动分割掩码和仿射运动模型参数的运动分割结果可用作分割下一帧的初始估计。根据初始估计,重复与之前描述的处理相同的处理,直到下一帧被分割。重复该处理直到为所有原始图像创建了运动分割掩码。

可根据原始帧的运动分割掩码使用“与”或“或”运算来插入合成帧的运动分割掩码。在每一层内,计算出该层的全局运动单应矩阵以及在应用金字塔式运动跟踪之前基于全局运动单应矩阵将每个帧弯曲变形到其相邻帧。最终,使用跟踪的运动矢量在每层处通过进行插值来产生新的分层图像。

基于运动分割掩码,通过合成所有分层图像来创建新的合成图像帧。

与分层方法155相比,帧插值方法122可被认为是单层方法。在分层方法中将全局运动估计应用于每个层,使得所得到的运动矢量相对精确。分层方法可减少在边缘和遮挡区域中产生的伪像。

通过时间一致性检查的伪像修复

任何可见的伪像都可以通过配备有自动遮挡检测和遮挡填充能力的时间一致性检查124、224来修复。合成帧可包括伪像像素,最明显的伪像是与其相邻帧(包括原始图像帧)不一致的那些像素。时间一致性检查124、224可通过检验时间一致性来自动识别并修复时间上不一致的伪像。

合成帧的伪像像素是之前处理中生成的相应半精确掩码中除那些被标记为“精确”之外的任何像素。那些伪像像素可通过其在时间窗内的“可见度”来进一步分组。如果伪像像素可使用半运动矢量投影到另一帧上并具有足够小的匹配误差,则该伪像图像在可从该帧“看见”的情况下为“可见的”。

伪像像素可通过其可见度来分组。例如,第一组包括从时间窗内的多数帧可见的像素。第二组可包括从该窗内少于50%的过去帧可见的那些像素。第三组包括从时间窗内少于50%的将来帧可见的那些像素。可将第一组的伪像像素认为是非遮挡像素,而可将另两组认为是遮挡像素。半精确掩码可用于对伪像像素进行分组。可自动去除识别出的伪像像素。

时间上不一致的伪像像素产生最令人不快的伪像。虽然可通过熟练用户交互地利用传统上色、克隆或合成软件工具来修复这些伪像,但是此过程是耗时且费力的。本发明公开了用于修复时间上不一致的伪像的更有效的方法。

半精确掩码622可用于对伪像像素进行分组。对于第一组的像素,利用时间窗内的过去帧和将来帧中的像素的投影像素来计算像素匹配误差。如果某一帧的匹配误差明显大于其他帧的匹配误差,则将该像素标记为伪像像素。对于第二组的像素,利用其在将来帧中的投影像素来检查像素匹配误差。如果某一帧的匹配误差明显大于其他帧的匹配误差,则将该像素标记为伪像像素。对于第三组的像素,对时间窗内的过去帧进行时间一致性检验,并且如果匹配误差大,则将该像素标记为伪像像素。对于所有识别出的伪像像素,通过利用在相应过去帧和/或将来帧中的所有投影像素的平均颜色值自动代替该像素来执行修复。

3D运动画面的伪像修复处理224能够根据L图像和R图像之间的不一致性来修复伪像,并且可以通过检查L-R一致性来识别这些伪像。例如,将立体匹配处理应用于每个L-R图像对,并且可以估计深度信息。在时间上插入所得到的深度图,以创建合成帧的深度图。利用所插入的深度图,检查在合成的L图像和R图像中的像素,以及对不一致的像素进行标记,并使用来自另一只眼睛或直接来自同一只眼睛的其他帧的相应像素对其进行修复。

通过例如合并不同版本的像素,可进一步减少或交互地去除从之前的时间一致性检查124、224中残存下来的伪像像素。在不同标记下创建不同版本的像素,并将其合并以减少伪像。在GUI环境下,用户可以检查不同版本的增强图像序列,并选择最好的版本或将多个所选版本合并到一起以产生包括更少伪像的新的版本。

如以下更详细描述的,还可以通过用户交互126(例如,提供对在具有允许用户修复数据的计算机可执行代码的基于处理器的设备上的数据进行访问)来修复伪像。

质量控制

质量控制(QC)128、228是这样的处理:经训练的操作人员视觉上检测增强图像序列,以确定所得到的质量是否是可接受的。如图4所示,可在QC站420上执行QC处理128、228。例如,QC站420可以是配备有高质量显示系统、足够大的磁盘存储器、和允许操作者执行QC检查所需的所有功能的软件的工作站。显示系统可以是2D显示系统或立体的3D显示系统,或者是支持2D和3D的系统。一旦完成了所需的处理,就通过由智能控制器(IC)406作为主机的中央服务器将增强图像序列发送至QC站420,并且跟踪软件告知操作者哪个序列可用于QC检查。如果操作者识别出伪像,他或她可以将问题的类型通过提供必要的用户输入的QC软件报告回给IC 406。然后,基于操作者的输入通过调整重新处理该序列,这可能需要通过自动处理使用一组新的参数来重新处理某些帧或者可能需要使用不同的伪像去除方法由操作人员来重新处理某些帧。经重新处理的图像数据被IC 406带回至QC站420以进一步进行检查。重复此过程直到所得到的质量被认为是可接受的,然后完成该处理。操作者可通知IC 406该序列是可接受的,然后该图像数据准备输出。

完成并接受的图像序列可以是诸如IC 406的中央服务器上的一系列文件。这些文件具有标准化的文件格式并用作所重制的运动画面的源母带文件。根据运动画面的输出130、230或发行,将源母带文件转换为用于影院发行的发行母带文件。发行母带文件的格式可以取决于剧场中采用的发行显示平台。对于标准化的数字电影发行,发行母带文件可直接用于进行显示。对于其他非标准化数字发行,可将发行母带文件转换为适合显示的数字文件格式。对于基于胶片的显示,可以将发行母带文件(或源母带文件)记录成用于电影拷贝发行为的适当胶片格式。在数字领域中存在可将源母带文件转换为发行母带文件的多种文件类型和压缩方案。在一般的发行过程中,必须将发行母带文件写到磁带或外部存储器中,以将其运送到影院或用于存档。IC可基于用户建立的优先级方案来安排文件格式转换所需的工作。优先级方案的实例可为以优先级排列出现在主要运动画面放映之前的某些序列,例如,电影预告片。通过IC来追踪用于每个电影放映的特定发行母带格式、使用的压缩方案和优先级方案,使得每个运动画面发行的位置和状况对于整个制作来说是已知的。

数字重制方法可被实现为高度自动化的制作计算系统。图4示出了被实现为两个子系统的组合而计算系统400的一个实施例:主要支持需要用户交互的应用的前端系统402和能够完全自动化的后端系统404。两个子系统都使用网络化的软件和硬件的组合。都通过在服务器上的中央软件实体或智能控制器(IC)406来监控和控制硬件和软件。

后端子系统404包括IC 406、中央数据存储器408、和形成渲染农场的很多分布式渲染客户机410a-n。在后端子系统中数据输入/输出415与IC 406相关联,以提供到用于加载诸如软件的计算机可执行代码的IC 406的访问以及配置IC 406。后端子系统404也可包括集群交换机414a-n和主干交换机417以控制在整个网络上的数据流。渲染农场可以具有任何适当数量的渲染客户机410a-n。可在后端子系统404中执行多数计算任务,这些任务可以包括:自动化的场景分割、基于运动的空间分辨率提高、基于学习的空间分辨率提高、以及时间分辨率提高的大多数任务。IC 406执行各种控制和跟踪功能。多个端口监控程序在此服务器上运行,从而连续监控工作或所需的更新并独立地执行它们。

IC能够执行在三个主要领域的功能:

·监控物理硬件和数据,跟踪所有正使用和可用的系统资源;

·响应于来自用户的查询,提供实时报告;以及

·当需要动作且系统资源可用时,对数据进行处理。

IC 406可在内部表示用于产品的执行过或正执行的所有数据和处理的状态。所有运行中的处理(为自动机器任务或手动操作者的动作)都将其进展和状态报告回该IC 406。其监控用于最新可用数据和已被处理并可准备用于磁带备份的数据的中央数据存储器408。可查询IC 406以获得精确的实时信息,作为产品或单个镜头的进展。

可利用对IC 406进行访问的网络由任何机器远程访问IC 406信息。例如,本地前端工作站412a-n或者外部计算机或通信设备能够通过互联网与IC 406进行远程通信。所访问的信息是能够达到一定安全等级并可对每个个体进行访问的用户指定的。通过固定的报告或允许用户创建其自己的报告的私有‘查询构建器’来报告该信息。它们能够控制结果的搜索标准,还可以设定他们希望向匹配对象返回什么信息。

IC 406能够跟踪三个一般级别的处理:帧、镜头、以及产品。

跟踪帧级别的属性的实例包括:

·用于运行对帧的各种处理的渲染客户机;

·处理完成状况,例如,等待运行、已完成、以及正在运行;

·处理发生或对每个帧进行查询的次数;以及

·帧大小、文件类型、和位深度。

跟踪镜头级别的属性的实例包括:

·已对镜头执行的或需要对镜头执行的处理;

·镜头信息,即,长度、外部制作者或公司可能称呼镜头的其他名称、描述、以及当被记录时在胶片上的键码;

·参数集,特别针对这些处理;

·批准者请求对镜头的跟踪和监控变化;

·处理镜头的用户标识;

·对镜头的任何阶段或处理的完成次数;

·版本控制—用户注册和退出;

·传送信息;以及

·电影记录信息,例如次数和所使用的记录器。

跟踪产品层的属性的实例包括:

·传送信息;

·分配给用户的工作;

·用户过去完成的工作;以及

·产品统计,例如,完成百分比、估计的完成次数、以及多个版本镜头的频率。

IC 406还负责运行应用于数据的所有处理。当系统资源变得可用时,IC 406优选地基于需要和资源以最佳方式将处理分配给多个分布式渲染客户机410a-n。每个渲染客户机410a-n一旦被指示要运行作业,则负责从中央数据存储器408中获取(pull)它需要的所有图像数据,对每个帧执行所需的操作,以及将增强图像数据放回到在控制器数据存储器408的临时位置处。对于分配给多个渲染客户机410a-n的作业,IC 406将来自渲染客户机410a-n的经渲染的各段组合成连续镜头。IC 406还检验在镜头中偶然缺少的帧或不完整帧的组合数据的完整性。如果发现有缺少的帧或不完整的帧,则IC 406向相同的渲染客户机发送请求,以重新渲染那些帧。IC 406和渲染客户机410a-n之间的通信对于渲染效率来说至关重要。

IC 406跟踪每个渲染客户机410a-n的当前状态并持续地监控可用的处理器。在渲染客户机410a-n可能失效的情况下,IC 406提高修复的警戒状态。它将任务重新路由至给其他可用的渲染客户机410a-n来处理。诊断处理确保在传送期间没有数据丢失。如果IC 406经历了失效,则故障之前的系统状态被保存。在本发明的一个实施例中,IC 406通过取消在渲染客户机410a-n上运行的所有处理来重启,并将任务重新分配给每个渲染客户机410a-n。在另一实施例中,IC 406调查渲染客户机410a-n的状态,找到其当前状态并重新开始控制。这是一种较复杂的重启方案,但不需要重新渲染数据。

在本发明的一个实施例中,IC 406包括下列软件构件:

调度程序-监控对数据运行所需的处理。它基于预定的负载平衡方案来管理渲染作业分发,并将作业分配给特定的渲染客户机410a-n。如果有多个可用的候选,则IC 406检查渲染客户机集群之中的网络流量负载分布,并从具有最低流量负载的一个集群(或多个集群)中选择一个渲染客户机(或多个渲染客户机)410a-n。对于队列中的每个作业,IC 406将该作业分配给单个渲染客户机410a-n,特别是在队列中等待的作业数比可用的渲染客户机数多时,或者IC 406可将该作业分配给多个渲染客户机410a-n,特别是当需要尽快完成作业时。

自动运行-监控对于处理可用的数据。通常通过处理来收集数据,并且对数据运行命令。在开始制作时,动作或处理被设置为对任意数量的镜头(或所有的电影镜头)运行。由于我们的处理是自身设置的,即,它们智能地分析数据以独立地获得最佳的设置和参数,所以无需人的交互。然后,自动运行监控用于使数据变得可用的物理硬件和网络。一旦所有构件都可用,则其向调度程序提交请求以对特定数据运行处理。这优化了工作流程,从而在准备处理数据与运行所需处理之间没有浪费时间。

文件安装-监控完整的并在另一物理位置中或以另一格式需要的数据。通常在制作期间,要求数据可以不同的格式利用。文件安装端口监控程序监控任意不同版本或所需格式的文件及其状态。如果需要,其将数据处理成需要的格式并将其物理地传送到其他位置。这具有一些有益的应用。首先,它通过在最短的时间内获得在所有需要的位置和以所有格式可用的数据来优化工作流程。其也可以用于在整个系统上创建智能高速缓存,以改善网络性能并加速用户交互。这种实例是IC 406知道用户在第二天将处理哪个数据以及将使用哪个前端工作站。代理服务器版本的数据在非高峰时间被本地地传送到工作站以使用户能立即对其进行使用并在更忙碌时避免资源的使用。

磁带写入程序—监控需要备份到磁带并写入磁带的最终数据。端口监控程序与IC 406的其他元件持续地接触,所以当数据被需要且对于磁带备份可用时可意识到。它能独立地将数据写入磁带并将磁带名称的相关信息和写入次数报告回中央数据库。

前端子系统402可包括多个计算机工作站412a-n和多个QC站420a-n,其中的每一个都能被操作者或技术人员操纵。前端子系统还可以包括网络交换机421,用于控制和辅助通过网络的数据流。工作站412a-n是标准的台式计算机,并且运行客户软件和商业可购得的应用程序的组合。在前端子系统402处执行的计算任务包括在场景分割时EDL信息的输入、空间和时间分辨率提高处理中的质量控制、以及伪像修复。

运行在前端机器上的所有应用都通过网络连接来连接到后端控制软件。所作的任何改变或更新都被报告回后端处理,其中,存储每个镜头和整个产品的状态。此通信的实例包括数据的退出和再次注册、对数据的人工手动任务的完成等。前端机器的操作者也可以明确地查询IC 406以获得关于产品的处理和状态的信息。

前端工作站412a-n提供的一个软件应用程序主要是用于伪像修复的工具。操作人员可以主要强调问题区域并使用多种方法来去除伪像。这些方法包括:

·利用来自相同帧或者来自该序列的另一帧的信息进行人工上色;

·使用空间分析和/或时间分析进行自动上色以去除不需要的结果;以及

·组合人工上色和智能地提供合适的数据以供操作者进行上色的自动分析,从而去除伪像。

图5中示出了在前端和后端子系统之间的典型运动画面重制产品的图像数据流。整个工作流程如下。

可以将场景编辑信息、编辑描述列表(EDL)文件输入到IC中。这使得‘自动运行’能够将来自原始产品的输入数字帧映射为将在整个系统上运行的离散的单个镜头。例如,输入的数字数据可以是从胶片中扫描的一系列编号文件(例如,frame.0001.cin,frame.0002.cin...)或者可以是来自数字颜色分级处理的任意命名的文件,其中,存在很多不同类型的文件前缀和编号方案。

用于此产品的IC开始监控准备执行任务的系统。例如,该IC可以获知数据和系统资源是否可用于运行重制处理以及是否需要移动或设法重新格式化数据。

在安装处理之后,在步骤510中,将来自源产品的图像数据提供给中央数据存储器,其中,通过IC可查看该中央数据存储器。该数据可以诸如磁带格式、磁盘驱动器或阵列的多种方式直接从扫描器输出等处得到。

在步骤515中,IC注意到数据为可用的并查阅为该特定产品输入的的编辑信息。如果一些需要的数据分组在磁盘上是完整的,(来自镜头的所有帧),则基于编辑信息将源数据分割成称作镜头的类似帧的分组。一旦原始数据被分成完整的镜头,IC就对用于重制的镜头进行排队(被认为是‘作业’),以使其在分布式处理器上运行。‘调度程序’观察所排队的作业以进行处理,从而在渲染客户机中分割镜头。这意味着获取镜头并对其进行划分以在不同的远程处理器上分条(in pieces)单独运行。

在步骤520中,远程处理器或渲染客户机接收它们的作业并返回它们正在开始处理的报告。它们将所需的镜头数据(例如,已分配给它们的来自于镜头范围的帧)复制到它们的本地驱动器。渲染客户机能够自动分析数据以确定运行的最好程序以及对这些处理的最佳设置。一旦完成,渲染客户机以那个数据的最佳设置来运行所需的处理。

在步骤525中,渲染客户机将完成的数据传送回服务器并向IC报告它们已经结束了处理以及分配给该IC的帧范围准备好进入工作流程的下一步骤。它们还向IC报告它们可用于更多的工作。

可选地,分析处理独立于执行处理。例如,首先,在渲染客户机上运行通过IC排队的分析作业并且将其结果传回IC。然后,从这一点开始,利用由分析建立的参数对实际处理进行排队,然后IC将重制处理分离并将其分配给远程处理器。这可在一次分析每个镜头、交替进行子镜头参数调整中增加效率和一致性,从而在镜头内存在较大改变的情况下还可以得到较精确的结果。

在步骤530中,IC将重制帧的预览数据传送到用于质量确保和检查的前端质量控制工作站(QC站)。在系统的后端发生了所有工作和数据流到此点。在此点处工作被传递到前端。IC通知用户或系统管理员存在等待被浏览的数据。经训练的质量控制操作者浏览数据并具有基于他们的发现的少量选择。然后,通常他们必须通过在他们估计数据所使用的前端软件内设置镜头状态来告诉IC他们的决定。

在步骤532中,操作者通知IC数据被精确地处理并是完整的而因此被验收,或者确定数据需要进行附加的自动化处理以及所需的重新处理特性。

如果指示进行附加处理,则在步骤535中,镜头再次排队等待分析和处理,其中,由IC将操作者的建议翻译为用于自动分析的参数改变(influence)。此作页被给予更高的优先级以使其更早和更快地运行,以在整个工作流程中不会导致项目流程中的瓶颈。这两个确定将镜头的控制传递回工作流程的后端。第三个确定将控制保留在前端中。

如果没有指示进行附加处理,则在步骤550中,将数据设置为移动到存储器中,例如,磁带备份、磁盘备份、胶片记录、数字投影母带制作或任何种类的终端显示操作。然后,系统可以通过例如数据I/O设备来输出数据。

在步骤538中,操作者能够确定镜头需要一些前端,残留伪像的用户辅助定影。然后,IC将数据传送至必要的本地前端工作站,用于镜头的用户辅助修复。IC将任何标记用于人工伪像修复的数据分配给可用的修复操作者,这类似于它将工作分配给远程处理器或渲染客户机。可由操作人员通过或将镜头分割成遍布很多人的多个工作来加快完成或最大程度地使用空闲工作站来实现相同的工作流程最优化。

在步骤540中,修复操作者处理分配给他们的工作,当完成时将它们交回至IC服务器。

在步骤542中,可将数据认为被操作人员‘验收’或在步骤545中,可将数据循环返回用于进一步的质量保证和检查的前端QC站。

在步骤550中,IC观看完成的工作以及对已分割在多个工作站上的任何镜头进行组装。一旦一组完整的帧或镜头已经完成了所有处理并被认可,则IC监控与所需运送相比的完整数据并将满足标准的任意数据传送至最终阶段。这可包括诸如用于运送的磁带或磁盘备份、胶片记录、数字显示或任意数量的显示终端处理的处理。

概要

本发明的上述实施例的以上描述仅出于说明和阐述的目的,其包括优选实施例,并不用于详尽描述或将本发明限定为所公开的确切形式。对于本领域的技术人员来说,在不背离本发明的精神和范围的情况下,各种修改和改变将是显而易见的。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号