专利名称:将三维文本与三维内容组合的系统和方法
技术领域:
本发明涉及图像处理和显示系统,尤其涉及将三维(3D)方式的文本与相关联的3D内容组合的系统和方法。
背景技术:
近年来,已经越来越多地生产出像电影等那样的3D内容。预计这种趋势持续下去到可预见的将来。与其2D内容对应物类似,3D内容一般伴随着像字幕或隐藏式字幕那样的2D文本信息。但是,与在相同深度上显示2D内容的其2D内容对应物不同,3D内容一般显示在不同深度上以创建3D观看环境。由于3D内容显示在不同深度上,所以判定何时,何地,以及如何放置任何伴随文本信息都成问题。人们已经提出了将二维(2D)文本信息与它们的相关联3D内容结合在一起使用。虽然这样的技术似乎是直截了当的文本和内容加入方法,但就3D内容而言做不到将文本信息放置在预定或已知深度上的任何精确控制。另一种已知技术允许对于所有帧,将3D文本放置在像在TV平面中那样观看的固定深度上。从这个技术产生了若干问题。例如,如果考虑通过平行摄像机捕获3D内容,则所得TV画面将在无穷远处。这对于所有帧又使3D文本总是出现在内容场景的后面。为了调整3D内容中的文本的深度以便可以适当地观看,显然,必须测试内容的每个帧,以确定文本的深度是否如预期的可观看。这样的测试技术是耗时的,主观的和低效的。在通过引入全文并入本文中的标识为PCT/US2007/025947的共同待审、共同拥有专利申请中,不引起任何明显视觉疲劳地以避免妨碍内容中的3D效果的方式将3D文本加A 3D内容中。在这个引用的申请中,假定了每个图像的深度信息可经由相关联的深度图获得。在所引用申请中提出的方法调整任何插入文本的深度值以便与给定深度图的最大深度值匹配。这样的方法可能存在几方面缺陷。首先,包括在相关联的深度图中或是具有某种其他形式的深度信息可能无法从内容制作者那里获得。不管如何生成3D内容,深度信息的可用性首先取决于是否捕获了该信息,然后,如果的确可用,则取决于制作者是否愿意包括和共享那种信息。此外,除非在相同获取时间捕获了深度,深度信息一般难以从3D内容的左右视图中计算出来。左右视图通常是从利用两台摄像机捕获的主流3D内容中获得的。上述方法带来的另一个问题是对于每个帧一般将相关联的深度图缩放成固定范围。这样的缩放妨碍了对于所有帧以相同深度值精确放置3D文本信息的能力。除了上述现有技术带来的问题之外,目前已知的是,不存在不依靠任何辅助图像信息地只单独根据内容,以及像在后期制作,例如,一般在实时之外进行的离线操作期间,或在内容观看(例如,一般实时进行的在线操作)期间那样,在已经生成和封装了 3D内容和伴随文本信息之后的时间上,允许将3D文本信息放置在由3D内容和文本的制作者或甚至最终观看者判定的地点上的技术。
发明内容
现有技术的这些和其他缺点通过本发明的各种实施例从3D内容中确定视差信息,并将这样的视差信息与用户或制作者提供的一个或多个要求一起用于将3D方式的文本最佳地放置到相关联的3D内容中来解决。文本位置的确定可以像在线操作那样在到达图像内容流上实时地进行或像离线操作那样在整个图像内容上以非实时模式进行。视差信息包括跨越在3D图像中检测的所有相应特征的一组视差值和视差范围、所有被处理图像 内容的视差范围的交集、和示出所有被处理帧的共同视差范围的视差范围并集。这些要求的例子包括但不限于整个帧的预定视差值上的文本位置、整个帧的所选区域的预定视差值上的文本放置、避免遮挡内容和限制跨过图像的视差变化量以保持舒适观看体验的文本放置等。在本发明的一个实施例中,将文本与三维(3D)图像内容组合、其中所得图像能够通过3D显示设备来显示的方法,包括接收包括至少一个3D图像的3D图像内容和与至少一个3D图像相关联的文本两者,其中至少一个3D图像包括第一视图和第二视图;从至少一个3D图像中提取视差信息;在第一视图中确定文本的位置和在第二视图中确定文本的位置,其中相应3D图像的第二视图的位置相对于第一视图的位置偏移至少部分基于视差信息的量。
通过结合附图考虑如下详细描述可以容易地理解本发明的教导,在附图中图I描绘了依照本发明的实施例组合3D内容和相关联的文本的系统;图2描绘了依照本发明的实施例的几个不同图像例子的屏幕视差与感觉深度之间的关系;图3描绘了依照本发明的实施例离线确定用在与3D内容一起显示文本中的最佳视差值的方法的流程图;图4描绘了依照本发明的实施例在线确定用在与3D内容一起显示文本中的最佳视差值的方法的流程图;以及图5描绘了用在图3和图4中的特征对应和视差值确定的简化过程。应该明白,这些附图是为了例示本发明的概念,而未必是例示本发明的唯一可能配置。为了便于理解,在可能的情况下,使用相同标号表示这些图形共有的相同元件。
具体实施例方式本发明的实施例有利地提供了使用从3D内容中提取的视差信息将文本与三维(3D)内容组合的系统和方法。尽管主要在视频处理器和显示器环境的背景下描述本发明的实施例,但不应该把本发明的特定实施例视为限制本发明的范围。本领域的技术人员将懂得以及从本发明的教导中了解到,本发明的概念可以有利地应用在非限制性地像电视机、代码转换器、视频播放器、图像查看器、机顶盒或可用于将文本与3D内容组合的任何基于软件和/或基于硬件实现那样的几乎任何基于视频的处理环境中。应该明白,显示在这些图形中的元件可以以硬件、软件或它们的组合的各种形式实现。优选的是,这些元件在可以包括处理器、存储器和输入/输出接口的一个或多个适当编程通用设备上以硬件和软件的组合形式实现。显示在这些图形中的各种元件的功能可以通过使用专用硬件以及能够与适当软件相关联执行软件的硬件来提供。当由处理器提供时,这些功能可以由单个专用处理器,由单个共享处理器,或由其中一些可以共享的多个单独处理器提供。此外,术语“处理器”或“控制器”的显性使用不应该理解为专门指能够执行软件的硬件,而是可以隐性地包括但不限于数字信号处理器(“DSP”)硬件、存储软件的只读存储器(“ROM”)、随机访问存储器(“RAM”)和非易失性存储体。 在本发明的实现中也可以包括传统的和/或定制的其他硬件。例如,显示在图形中的任何开关都只是概念性的。它们的功能可以通过程序逻辑的运算,通过专用逻辑,通过程序控制和专用逻辑的交互,或甚至人工地实现,正如从上下文中更具体了解到的那样,特定的技术可由实现者选择。本领域的技术人员将懂得,本文所表示的方块图代表体现本发明的原理的例示性系统部件和/或电路的概念图。类似地,将懂得,任何流程图、流图、状态转变图、伪码等代表基本上可以表示在计算机可读媒体中,因此可以由计算机或处理器执行的各种进程,无论本文是否明确示出这样的计算机或处理器。最后,本文列举的所有例子和条件语言旨在帮助读者理解本发明的原理以及本发明人为促进现有技术的进步而贡献的概念。因此,本发明的原理应该理解为不限于或不局限于这样具体列举的例子和条件。二维(2D)视频中文本的使用是本领域的技术人员所熟知的。当前对三维(3D)视频和电影的当前兴趣引发了对将文本加入3D内容中的技术的需要。因此,需要优化文本到3D内容的插入,以便加入的文本不会妨碍3D内容中的3D效果以及当观看3D内容时给观众带来视觉上的愉悦的技术。按照本文公开的本发明的各种实施例的原理,文本信息与3D内容的组合可以离线或在线地进行。术语“离线”旨在包含像后期制作操作那样,在实时观看事件之外的时间进行的那些操作。术语“在线”旨在包含正在向,例如,用户显示内容时TV或内容播放器上的实时观看事件。在像后期制作阶段那样的离线处理中,包括本文本身、它的预期位置、和3D内容的图像差距(image disparity)或视差信息的3D本文信息通常可以事后在工作室中随着图像帧被处理而得到组装和/或确定。一般可适合离线处理的内容的例子包括电视游戏节目、电影的录像带或DVD、包括培训视频的企业录像带、经由电缆、卫星或互联网提供者提供的电影等。像与内容相关联的隐藏式字幕(closed caption)或元数据那样的文本信息可以存储在文件中,供以后像向用户显示内容那样的使用。
在像TV等上的实时观看事件期间的在线处理中,可以在显示相关联的内容之前生成3D文本信息。实时观看事件可以包括,例如,电视新闻节目、现场研讨会,和体育赛事。文本可从,例如,相关联的说明(caption)或字幕(subtitle)中获得,或可以经由脚本提供。可替代的是,文本可以实时生成。深度或差距信息不可从任何文件中获得,因此,在一个实施例中,为了实时地向观众显示,必须生成它以便完成文本与3D内容的适当组合。在加字幕或加说明的一个例子中,通常在计算机上创建字幕或说明的文本,然后使用时间码使它与视频内容同步。然后,在广播或分发事件之前将文本和视频内容转变成一个或多个文件。文本信息可以通过本领域的技术人员熟知的传统过程创建和分发。例如,一个传统过程牵涉到从脚本中创建文本文件。该文本文件包括三个值开始帧、结束帧、和跨越开始帧到结束帧以及包括结束帧的帧的文本。对于这个例子,然后在开始帧到结束帧的所有帧中重复文本。本发明的实施例针对与任何其他要求一起确定视差参数,以便针对相关联的视频帧定位文本在相关联的感觉深度值上的地点。
在本文的描述中,提及可以与3D内容组合的简单文本的文本信息。这些术语可以不会造成任何有意限制或丧失一般性和含义地与其他标识的变型一起可交换使用。应该懂得,至少存在两种类型可以依照本发明的实施例加入内容视频中的文本,即,字幕和说明。字幕一般是为听得见观众预备的,而说明通常是为耳聋的观众预备的。字幕可以将来自内容的对话翻译成不同语言,但字幕很少显示所有音频信息。说明意图包括来自内容的音频部分的所有信息。例如,说明示出内容中像“电话铃声”或“脚步”那样的声效,而字幕不包括或显示来自音频的那种信息。隐藏式字幕是隐藏在视频信号,没有特殊解码器看不见的说明。隐藏式字幕隐藏在,例如,视频信号的垂直消隐间隔(VBI)的第21行中。开放式字幕(open caption)是已经解码的说明,因此,它们已变成像电影中的字幕那样电影画面的组成部分。换句话说,开放式字幕是不能关闭的。术语“开放式字幕”也用于指利用字符发生器创建的字幕。图I描绘了依照本发明的实施例组合3D内容和相关联的文本的系统10。在图I中,扫描设备12是为了将像源于摄像机的电影负片那样的电影胶片(film print) 14扫描成像Cineon格式那样的数字模式或电影和电视工程师协会(SMPTE)数字画面交换(DPX)文件而提供的。扫描设备12可以包含像,例如,具有视频输出端的像Arri LocPio 那样将生成从电影胶片输出的视频的电视电影机(telecine)等。可替代的是,可以直接使用像已经在计算机可读格式的文件那样,来自后期制作过程或数字影院16的文件。计算机可读文件的潜在源是AVID 编辑器、DPX文件、D5磁带等。而且,例如,立体内容或2D图像形式的3D内容以及相关联的深度图可以由捕获设备18提供。包括字幕和说明文件的文本文件可以从脚本中创建并通过字幕管理器提供给系统。可以将扫描电影胶片、数字电影图像和/或3D内容以及文本文件输入后处理设备22,例如,计算机中。在本发明的一个实施例中,后处理设备22可以在各种已知计算机平台的任何一种上实现,这样的已知计算机平台含有像一个或多个中央处理单元(CPU)、像随机访问存储器(RAM)和/或只读存储器(ROM)那样的存储器24、和像键盘、光标控制设备(例如,鼠标或操纵杆)和显示设备那样的输入/输出(1/0)用户接口 26那样的硬件。该计算机平台还包括操作系统和微指令代码。依照本发明的可替代实施例,本文所述的各种过程和功能可以是微指令代码的一部分或者是经由操作系统执行的软件应用程序的一部分(或它们的组合)。另外,可以通过像并行端口、串行端口或通用串行总线(USB)那样的各种接口和总线结构将各种其他外围设备与计算机平台连接。这样其他外围设备的例子包括附加存储设备28和打印机30。打印机30可以用于打印像立体版本的电影那样,已经使用下面进一步描述的文本插入技术将文本插入一个或多个场景中的修改后版本的电影32。另外,可以生成修改后电影或视频的数字文件34,并提供给3D显示设备,因此,观众可以观看到3D内容和插入的文本。可替代的是,可以将数字文件34存储在存储设备28上。在图I的实施例中,软件程序包括如下面进一步详细讨论的将文本与3D内容组合的存储在存储器24中的文本处理模块38。存在许多管理和显示3D内容的内容格式和显示类型。这些包括立体、全息、和自动立体等。最常用的是需要有源或无源眼镜的立体显示器。使用,例如,柱状透镜(Lenticular)的自动立体显示器不需要眼镜,并且变得更可用于家庭娱乐和专业娱乐两者。这些显示器的许多显示器以2D+深度格式工作。在这种格式中,组合2D视频和深度信 息以产生3D效果。如今,三维(3D)图像以许多不同数字格式存在。一般说来,3D内容包括最初作为分开立体图像(或视图)生成的一对图像或视图。将懂得,术语“立体图像”和“立体视图”以及术语“图像”和“视图”每一个可以不会丧失含义地以及不会造成任何有意限制地可交换使用。可以编码这些图像的每一个。为了存储,分发或显示3D图像,将像左图像和右图像那样的两个立体图像的内容组合成单个图像帧,以便每个帧将代表整个3D图像,而不是使用每一个在它们自己的帧或文件中的两个分开立体图像。 如上所述,如果可以容易地计算深度,则易于插入3D字幕。但是,由于足够高密度的精确深度图在最好情况下计算起来也是既困难又费时,所以迫使用户尝试寻找确定文本信息在3D内容中的位置的可替代方法。按照本发明的原理,已经发现,屏幕视差信息是有用的,并且是将深度直接用于确定文本在3D内容中的位置的适当替代品。图2描绘了依照本发明的实施例的几个不同图像例子的屏幕视差与感觉深度之间的关系。在图2中,X1是左视图L中的一个点的位置,Xr是右视图R的相应点的位置,以及X是如观众所看到的感觉图像的位置。然后用d表示屏幕视差以及用Z表示感觉深度。在图2的左侧,图像X显示在与负视差一致的感觉深度Z上。在图2的右侧,图像X显示在与正视差一致的感觉深度Z上。如图2所示,如果将X1定义成左视图L中的一个点的投影图像,以及如果将\定义成右视图R的相同点的相应投影图像,则按照如下的方程一(I)定义屏幕视差d d=Xr的水平位置-X1的水平位置(I)在方程I的构造中,假设了产生左右视图L和R的两台摄像机以彼此之间具有一定程度水平间隔的并排配置排列着。这种并排配置也有意涵盖摄像机由于一台摄像机在另一台摄像机上面的它们垂直排列而展现垂直分开的状况。当摄像机以垂直或上下配置排列着时,则相应地改变方程,以便按照如下的方程二(2)定义屏幕视差d d=Xr的垂直位置-X1的垂直位置(2)在上面的方程(2)中,当d是正的(d>0)时,感觉图像位于屏幕的后面(S卩,在TV平面的后面),并且该条件是正视差之一;当d是零(=0)时,感觉图像位于屏幕上,并且该条件是无视差之一;以及当d是负的(〈O)时,感觉图像位于屏幕的前面,并且该条件是负视差之
O从实验性实践来看,似乎合理地作出屏幕视差d与感觉深度有关的结论。感觉深度是如图2所示观众观看3D内容时感觉的深度。感觉深度与真正深度有关但显然不同于真正深度。感觉深度一般具有与真正深度的深度排序大致相似的这样排序。但是,例如,作为摄像机的投影变换的结果使深度的量发生变化。为了理解这一点,假设如果一个帧中的A,B和C点展现如下真正深度的排序真正深度(A) >真正深度(B) >真正深度(C),则预计感觉深度的排序如下感觉深度(A) >感觉深度(B) >感觉深度(C)。 如上所解释,在从真正深度到感觉深度的变换中将不保持这些点之间的实际距离。预期在同一帧内会保持这些关系。但未必预计对于跨过不同帧的相同点A,B和C将保持这些关系。屏幕视差与真正深度之间的精确关系是复杂的,不容易确定。当左右视图由视轴平行的设备捕获时,发现屏幕视差与真正深度之间的关系基本是线性的。否则,当左右视图由视轴不平行的设备捕获时,诸如,当它们具有内八字(toed-in)关系时,发现屏幕视差与真正深度之间的关系基本是非线性的。从本文的实验性实践来看,发现与左右捕获设备的取向无关,屏幕视差与感觉深度之间的关系总是线性的。根据这种实验性实践,已经发现屏幕视差的绝对值越大(也就是说,屏幕视差的幅度越大),则感觉深度的绝对值就越大(离屏幕越离)。感觉深度是观众体验的深度。观众实际体验不到真正深度。根据这种认识,本文已经确定,可以和甚至优选地将屏幕视差,因此感觉深度用作依照本发明的原理确定在3D背景下放置文本的适当深度值的有效方式。图3描绘了依照本发明的实施例离线确定用在与3D内容一起显示文本中的最佳视差值的方法的流程图。如上所述,离线方法适合用在,例如,后期制作阶段中。图3的离线方法被描绘成具有两遍处理。第一遍处理每个帧以确定其某个视差信息。这个视差信息包括一组和一个范围的可能视差值和一个范围的共同视差值。第二遍使用与来自制作者或用户的一组一个或多个所希望要求组合的所收集视差信息为3D文本在3D内容中的最终位置选择满足制作者/用户要求的最佳视差值。一个要求一般提供文本放置要达到的条件。这些要求由制作者或用户或与内容相关联的其他个体提供。例如,可以要求将文本信息放置在预定视差值上,以便在所有帧中屏幕前面的感觉深度看起来几乎是固定的。这些要求的其它例子包括但不限于整个帧的预定视差值上的文本位置、整个帧的所选区域的预定视差值上的文本位置、避免遮挡内容和限制跨过图像的视差变化量以保持舒适观看体验的文本位置等。为了达到将文本放置在像最大感觉深度那样的预定值上的示范性要求,如下面的方程所更详细所示和所述,在观看的图像或图像组的极限内满足这个要求的最佳视差值是d=UDmin。当然,不同要求将导致选择不同视差值。设想,可以由制造者设置或甚至由用户设置一个或多个默认要求以便用在离线处理中。在本发明的可替代实施例中,上述的要求同样可应用于在线处理。
在描绘在图3中的方法中,第一遍包括步骤S31,S32和S33,而第二遍包括步骤S34,S35,S36,S37和S38。如图3所示,第一遍对帧进行处理以确定视差范围。第二遍对来自第一遍的视差信息进行处理以确定每个帧的最佳视差值。图3的方法从接收一对立体图像信息的步骤S31开始。通常,读入该步骤的立体对包括如上所述的左视图和右视图。在该方法中将该立体对定义成(L,R)对。然后该方法转到步骤S32。在步骤S32中,进行必要处理以便为每个当前帧计算,更新和保留包括P,DX,IntD和UD的数值的视差信息。这些变量以及它们的相关联的计算将在下面针对图5作更详细描述。P是为一个范围的帧内的每个帧中的每个所检测点保留视差信息的视差集。一般说来,如下面更详细讨论,设想该范围的帧除了当前帧之外,还包括一个或多个以前帧。但是,也设想,该范围的帧除了当前帧之外,还可以包括一个或多个以前帧和一个或多个随后帧。DX是为图像帧中的所有特征点保留从最小视差值到最大视差值的视差值P的范围的视差范围集。IntD是被处理帧的包括视差范围的交集。UD保留所有被处理帧的共同视差值。当·变量P,DX, IntD和UD的处理完成时,该方法转到步骤S33。设想,至少将计算的该组变量存储在存储器中,或存储在与该一个或几个图像文件相关联的文件中,或存储在与图像相同的文件中,当然,后一种情况要求以可与图像分开的方式将视差信息与辅助图像数据存储在一起。 在离线处理中,在一个实施例中,希望保留第一遍中P中的所有计算视差信息。当在本文的方法的第二遍中确定视差信息时,可能希望只利用P的一个小范围的视差集Pi来按照要求确定最佳视差。例如,当在第二遍中处理帧i时,可以将m个帧的视差值集用在第i帧的任一侧上,也就是说,从帧i-m到帧i+m来确定最佳视差值。m的值可以按希望的那样或大或小。在来自实验性实践的一个例子中,将m选择成像m=5那样的小正整数,以便降低对该组视差信息存储的影响。应该注意到,不只是在当前帧上计算视差信息的能力将不仅影响视差集P,而且将影响像视差范围集DX那样的其它视差彳目息。在步骤S33中,确定所有立体对(L,R)是否都得到处理。如果该判定被确定为“否”,则图3的方法返回到将接收另一个立体对以便加以处理的步骤S31。如果该判定被确定为“是”,则图3的方法转到步骤S34以便开始第二遍处理。在步骤S34中,再次处理立体对。与步骤S31 —样接收每个立体对。当接收到或读入一对时,则图3的方法转到步骤S35。在步骤S35中,从视差信息中以及从自,例如,用户或制作者接收的一个或多个要求中确定最佳视差值。最佳视差值通过分析视差信息以便尽可能接近地选择相互满足视差信息和要求的文本位置的视差值(即,包括在P,DX, IntD和UD的视差信息所代表的视差值中)来确定。下面将更详细地说明这个概念。在本发明的一个实施例中,可以将如上例所述的要求公式化成一般函数f,以便按照如下的方程三(3)找出相关联3D图像的文本放置的最佳视差值d=f (P, DX, IntD, UD)(3)也就是说,从取决于来自P,DX,IntD和UD的视差参数值的一些或所有视差信息的要求f(·)中计算最佳视差值d。从下面给出的视差信息的更详细描述中,将懂得要求函数的底层参数是P,因为其余参数DX,IntD和UD可以直接或间接地从P中计算出来。根据这种有关所有视差参数对P的最终依赖性的知识,可以按照如下的方程四(4)简化最佳视差值d的公式d=f (P)(4)当然,将明白,d的这个简单公式包含包括与特定要求所需一样多的从P中导出的参数的更严格表示。下面描述有关要求的若干例子以促进更好理解确定最佳视差值d,以便可以符合要求地将文本与相关联的3D图像放置在一起的方式。在来自实验性实践的一个例子中,将一个要求定义成对于整个或完整帧将文本放置在最大负视差上。对于这个例子,对于当前帧,将满足要求的最佳视差值确定为d=f (P) =UDmin。在来自实验性实践的另一个例子中,将一个要求定义成对于当前帧中的整个图像的所选区域将文本放置在最大负视差上。对于这个例子,然后在图像的限定区域R中将满足这个新要求的最佳视差值确定为d=f(P,R) =最大负视差。应该注意到,对于该要求,有必 要提供R作为附加参数。应该明白,确定的最佳视差值可能不是整个图像的最大负视差值。在来自实验性实践的又一个例子中,将一个要求定义成相对于图像内容将文本放置在不遮挡内容和将使文本的视差变化量保持小值的地点上。通过使视差变化量保持小值,可以为从一个图像到下一个图像阅读文本的观众保持合理的舒适水平。当实现要求f( )时,有必要使用来自许多帧的视差信息,以便在最佳视差值上的文本位置从一个帧到下一个帧的过渡将是平滑的,随着帧的变化给观众以愉悦的感觉。优选地,帧是连续帧。此外,在本发明的一个实施例中,可以将这些帧选择成以前帧与当前帧,或者随后帧与当前帧,或一组以前帧和当前帧两者与当前帧。对于这个例子,在这个要求下的所得最佳视差值未必对应于最大负视差。事实上,每个帧的最佳视差值可以小于当前帧中的最大负视差值(也就是说,大于最大负视差值的绝对值),以便保持文本位置从一个帧到下一个帧的平滑过渡。应该注意到,所确定的最佳视差值可能不是整个图像的最大负视差值。在完成了步骤S35之后,图3的方法转到步骤S36。在步骤S36中,将来自步骤S35的视差值存储起来和/或马上用于生成3D文本。可以将视差值d与图像一起存储,或在一个可替代实施例中,存储在伴随着图像的分开文件中。也可以与与图像相关联的文本文件一起存储。在任何情况下,在步骤S35中计算的视差值都最终用在3D文本的生成和放置中。还设想,可以存储来自步骤S35的最佳视差值d,然后传递给像TV那样用于生成3D文本的显示单元中。在来自实验性实践的一个例子中,当为左(右)视图建立了,例如,字幕或说明中的文本的位置时,则使用来自步骤S35的最佳视差值和左(右)视图中的文本的位置以使用上面给出的视差方程在其他视图中放置和生成3D文本是直截了当的。在本发明的各种实施例中,上面讨论的位置可以是视图中的绝对位置或相对于特定视图中的已知参考点确定的相对位置。例如,可以将相对位置选成视图的像左上角那样的特定角。在完成了步骤S36之后,图3的方法转到步骤S37。在步骤S37中,确定在第二遍中是否处理了所有立体对(L,R)。如果该判定被确定为“否”,则图3的方法返回到接收另一个立体对以便作第二遍处理的步骤S34。如果该判定被确定为“是”,则图3的方法进行到结束该过程的步骤S38。在图4中,示出了使用在线处理确定3D文本定位的示范性方法。在上面针对图3所述的离线处理方法中,假设了来自图像的所有数据都是可用的。这种假设提供了立刻对所有帧分别将该方法执行多遍的机会。对于在线处理,只有当接收到新图像帧并可用于处理时可以作出判定。与显示在图3中的离线处理方法相反,图4中的方法存储已经收集和确定的所有信息,然后根据现有的信息和要求对视差作出判定。本领域的技术人员将懂得,图4的方法可以应用于离线图像处理和3D文本定位。但是预计,图3的方法对于这样的离线处理,没有在图3中展示的过程那么有效。图4描绘了依照本发明的实施例在线确定用在与3D内容一起显示文本中的最佳视差值的方法的流程图。也就是说,图4的方法被显示成每个图像的单遍处理技术。图4的方法从接收和读图像信息的立体对(L,R)的步骤S41开始。如上所述,读入该步骤中的立体对通常包括如上所述的左视图和右视图。然后图4的方法进行到步骤S42。在步骤S42中,进行必要处理以便为每个当前帧计算,更新和保留包括P,DX,IntD和UD的数值的视差信息。步骤S42以与上述的步骤S32类似的方式操作。这些变量以及 它们的相关计算将在下面针对图5作更详细描述。当计算,更新和保留变量P,DX,IntD和UD的处理完成时,图4的方法进行到步骤S43。如上所述,设想,至少将计算的该组变量存储在存储器中,或存储在与该一个或几个图像文件相关联的文件中,或存储在与图像相同的文件中。在在线处理中,由于可能存储空间限制和潜在处理时间限制,在确定文本的最佳视差值时可能希望使用较少数量的帧。与所有以前和随后帧一般都可用的离线处理不同,对于当前帧的在线处理,通常可以只访问以前帧,因为当前帧之后的帧还没有被接收到。应该注意到,与该组视差值P有关的任何限制也将影响其余视差信息,因为DX,IntD和UD都是直接或间接从P和它的分量Pi中导出的。在步骤S43中,从视差信息中以及从自,例如,用户或制作者接收的一个或多个要求中确定最佳视差值。步骤S43以与上述的步骤S35类似的方式操作。上面针对图3的步骤S35已经描述了确定最佳视差值的示范性技术。然后图4的方法进行到步骤S44。在步骤S44中,然后使用在步骤S43中确定的视差值生成和定位像字幕或说明那样的3D文本以便与3D图像内容一起显示。然后图4的方法进行到步骤S45。在步骤S45中,确定所有立体对(L,R)是否都得到处理。如果该判定被确定为“否”,则图4的方法返回到接收另一个立体对以便加以处理的步骤S41。如果该判定被确定为“是”,则图4的方法进行到结束该过程的步骤S46。图5描绘了用在图3和图4中的方法的特征对应和视差值确定的简化过程。也就是说,图5示出了用在(L,R)对的处理中以便与来自接收图像本身的导出视差信息一起根据一种或多种提供的要求确定最佳视差值的示范性视差计算技术。图5的技术已经用在上面参考图3和4示出的方法描述的步骤中。在上面引用的相关申请,即,发明名称为“Method For Distinguishing A 3DImage From A 2D Image And For Identifying The Presence Of A 3D Image Format ByFeature Correspondence Determination (将3D图像与2D图像区分开以及通过特征对应确定识别3D图像格式的存在的方法)”的美国专利申请代理人案号TO090183中详细说明了显示在图5中的技术。图5的方法从接收图像信息的立体对(L,R)的步骤S51开始。通常,接收的立体对包括如上所述的左视图和右视图。另外,与图像信息(内容)一起接收视差信息DX,IntD和UD。在本发明的各种实施例中,可以将图5的方法初始化,以便将所有视差信息变量设置成像零那样的初始值。DX是视差集。交集是IntD以及并集是UD。DX包含至少当前帧和甚至一个或多个以前处理巾贞的视差范围。IntD包含所有被处理巾贞的视差范围,UD包含所有被处理帧的共同视差。在完成了步骤S51之后,图5的方法进行到步骤S52和S53。在步骤S52和S53中,在图像对(L,R)的分开视图中进行特征检测。将在步骤S52中从图像L检测的特征标识为FlHFli I i=l. . . nj,并且将在步骤S53中从图像R检测的所得特征标识为F2= {F2,1 i=l. . . n2},其中Ii1和n2是在每个各自图像中找到的特征的数量。在步骤S52和S53的每一个之后,图5的方法进行到步骤S54。基于特征对应的方法检测特征并建立所检测特征之间的一一对应。依照本发明的各种实施例,还设想,可以使用特征跟踪来取代上述和下述步骤中的特征检测和特征对应。在来自实验性实践的例子中,已经将KLT特征跟踪方法用在步骤S52和S53的执行中。这些技术在现有技术中是众所周知的,充分描述在下文引用的文献中。
在步骤S54中,在来自步骤S52的视图L中的所得特征Fl与来自步骤S53的视图R中的所得特征F2之间找出特征对应(匹配)。这个步骤中的特征对应或匹配过程一般除去一个图像中与另一个图像中的特征没有对应的那些特征。当从每个特征集Fl和F2中除去这些特征时,L中的新或剩余特征点可以按照如下的方程五(5)来表征NFl=(NFli) i=l. . . N},(5)以及R中的新或剩余特征点可以按照如下的方程六(6)表征NF2={NF2j i=l. . . N},(6)其中N是具有对应性的特征的总数。指定成(NFli, NF2i)的一对标识在L视图和R视图两者中找到的一对匹配特征点。特征对应和匹配被认为在现有技术中是众所周知的,本文将不作详细描述。本文通过引用并入和下文列出的几个参考文献公开了应用于图像特征的若干对应和选择技术。在完成了步骤S54之后,图5的方法进行到步骤S55。如上所述,设想可以使用特征跟踪来进行特征对应。在本发明的各种实施例中,已经将特征检测和特征对应计算用于如步骤S52,S53和S54所示寻找匹配特征。但是,如下所示,特征匹配或对应也可以实现成取而代之的特征跟踪。首先,计算L中的特征。然后,将在L中计算的特征用作R中的初始特征位置来跟踪R中的特征。最后,然后将R中跟踪的特征确定成与L中的特征相对应。要除去在R中跟踪丢失的特征。尽管在本发明方法的实验性实践中使用了 KLT跟踪方法,但本文的方法不采用特定特征匹配或对应算法作为优选技术,因为可以设想出许多特征匹配算法供本发明的方法使用。Bruce D. Lucas 和 Takeo Kanade 在技术论文(名称〃An Iterative ImageRegistration Technique with an Application to Stereo Vision",发表在 theInternational Joint Conference on Artificial Intelligence 第 674-679 页,1981)中和Carlo Tomasi 和Takeo Kanade在报告("Detection and Tracking of Point Features"在 Carnegie Mellon University Technical Report CMU-CS-91-132 公开在 1991 年 4 月)中都教导了像KLT跟踪方法那样的几种特征跟踪方法。David Lowe在论文(名称"Objectrecognition from local scale-invariant features' 公开在 the Proceedings of theinternational Conference on Computer Vision, 1999 年,第 1150-1157 页)中公开了已知为SIFT方法的点特征检测方法。A. Ardeshir Goshtasby在著作(名称为〃2_D and 3-Dimageregistration:for medical, remote sensing and industrial applications' 由Wiley-Interscience公开,2005,具体在特征选择的Chapter 3在42-63页以及在特征对应的Chapter 4,63-106页)中描述了可用在进行特征对应中的几种不同特征检测和匹配方法。这四个参考文献的教导通过引用明确地全文并入本文中。在步骤S55中,对于在(L,R)视图中识别的每对i,在对应特征对(NFlyNFZi)之间计算位置差。进行这种计算是为了确定图像的视差集P和视差范围DX。在这种计算中,将特征点NFli的位置定义成(xn,yil),将特征点NF2i的位置定义成(xi2,yi2)。在这个例子中,将位置选择成相对于两个图像中的公共点。在一个例子中,两个图像中的公共点可以选成视作原点的左上角。应该注意到,在本发明的各种实施例中,可以使用绝对位置而不是相对位置。此外,在本发明的各种实施例中,可以将图像中的其他地点用作公共参考点或原点。然后,可以将第i帧的屏幕视差Pi的集合确定为PiHPfxnjlj = I...N}。然后,可以利用每次P计算迭代地更新分别计算成Prnax和Pmin的最大值和最小值,以便
Pmax=Iiiax(Pi)和Pmin=Iiiin(Pi)。当对图像对中的所有特征都完成了这种计算时,图5的方法进行到步骤S56。可以单独为当前帧确定屏幕视差P的集合。还设想,可以在许多个帧i上确定屏幕视差P,其中i可以包括所希望个以前帧或所希望个以前和随后帧。对于离线处理,通常可以是后一种情况,因为所有帧一般都是可用的。在线处理可能不允许使用随后帧信息,因为在处理当前帧的时候,通常还没有接收到,或不能接收随后帧。包括在或可以包括在视差集P的计算中的帧的数量取决于每种单独实现。在离线处理中,存储空间一般不是限制性问题。因此,对于离线情况,可能希望像在所有可用帧上那样,在尽可能多的帧上确定P。在在线处理中,可能更多地限制存储空间,以及可能约束可用处理时间,以便保持适当在线或实时观看环境。因此,在在线处理中,可能希望在较少数量的帧上确定和保持视差信息集P。此刻,在步骤S56中,可以按如下更新和完成视差信息DX,IntD和UD的计算。将更新的视差范围DX确定为DX=(Pmin, Pmax)。变量DX和P差别很大。视差范围集DX通常被表示成一维阵列。对于每个帧i,存在表示成值集[HiinPi, HiaxPi]的视差范围DXi,其中Pi是帧i中的视差值。视差值集P通常被表示成二维阵列。Pi是帧i的每个特征点的视差值的阵列。Pij是帧i中的特征点j的视差值。这样,当存储P时,可能希望与它们的对应视差值一起保留每个帧的左(或右)图像中的特征点位置。然后,最小DX的交集IntDmin和最大DX的交集IntDmax可以按照如下的方程七
(7)和八(8)来表征IntDmin=max(IntDmin, Pmin) ;(7)IntDmax=min(IntDmax, Pmax)。(8)上面定义的计算使得可以用IntDmin的以前值和Pmin的当前值的最大者取代交集IntDmin的值。类似地,上面针对IntDmax定义的计算使得可以用IntDmax的以前值和Pmax的当前值的最小者取代交集IntDmax的值。这样,可以将IntD的值定义成IntD=(IntDmin, IntDmax)。
在相似类型的计算中,将UD定义成(UDmin, UDmax),其中,UDmin=min (UDmin, Pmin);以及UDmax=max(UDmax, Pmax)。上面定义的计算使得可以用UDmin的以前值和Pmin的当前值的最小者取代并集UDmin的值。类似地,上面针对UDmax定义的计算使得可以用UDmax的以前值或Pmax的当前值的最大者取代并集UDmax的值。在完成了步骤S54-S56中的计算时,将P,DX, IntD和UD的值存储起来供以后使用。在依照本发明的各种实施例中,这些值可以存储在处理器中的临时存储体中,或者,它们可以存储在像存储媒体或与图像帧相关联的文件那样的较永久形式中。随着使用这样视 差信息的标准不断演变,设想,甚至可以将视差信息存储在图像文本本身中。然后,图5的方法进行到从图5的方法退出的步骤S57。在上面的描述中,应该注意到,DX,IntD和UD的值如上所述,是直接或间接地从整个图像帧的视差集P中计算出来的。在本发明的各种实施例中,将文本放置在帧的3D图像中的最佳视差值的计算一般都有意使用即使不是全部也是大多数的参数P,DX,IntD和W。例如,当要求基于几乎整个图像时,则使用包括DX,IntD和UD的视差信息的一个子集来计算每个帧中的文本的最佳视差值可能就足够了,因此可希望使用包括DX,IntD和UD的视差信息的一个子集来计算每个帧中的文本的最佳视差值。另一方面,当要求只基于图像帧的一部分时,优选的是使用包括P,DX,IntD和UD的参数值的视差信息的整个集合。在本发明的各种实施例中,设想其他类型的要求将决定相对于3D图像适当放置文本所需的视差参数的集合。例如,预计应该将视差信息(P,DX,IntD和UD)的整个集合用于确定文本相对于相关联的3D图像的放置,以保证文本和图像的可见性,从而避免它们之间的遮挡。尽管对于每种实现和要求都可以将视差信息的整个集合用于文本放置,但依照本发明的各种实施例,至少可以部分将文本放置的每次确定所需的视差信息参数的数量和类型剪裁成实现和要求相关的。本文已经确定了定义和使用L和R视图的次序在特征检测和特征对应步骤中是不重要的。但是,当执行视差计算步骤时,保持图像的L和R视图的标识和次序是重要的。虽然已经描述了识别3D图像格式的方法和系统的各种实施例(旨在例示而非限制),但注意到,本领域的技术人员可以按照上面的教导作出修改和改变。因此,可以理解,可以对在本发明的范围和精神内公开的本发明的特定实施例作出改变。虽然上文针对本发明的各种实施例,但也可以不偏离本发明的基本范围地设想出本发明的其他和进一步实施例。
权利要求
1.一种将文本与三维(3D)图像内容组合的方法,其中所得图像能够被3D显示设备显示,该方法包含 接收包括至少一个3D图像的所述3D图像内容和与所述至少一个3D图像相关联的文本两者,其中所述至少一个3D图像包括第一视图和第二视图; 从所述至少一个3D图像中提取视差信息; 在所述第一视图中确定文本的位置;以及 在所述第二视图中确定文本的位置,其中相应3D图像的所述第二视图中的位置相对于所述第一视图中的位置偏移至少部分基于所述视差信息的量。
2.如权利要求I所述的方法,进一步包含 接收标识文本相对于3D图像内容的所希望位置的至少一个要求;以及其中所述第二视图中的文本的所述位置的所述偏移量也至少部分基于所述视差信息和 所述至少一个要求。
3.如权利要求I所述的方法,进一步包含 处理对于每个视图都含有定位在其中的文本的至少一个3D图像内容的所述第一和第二视图,以便将文本和相关3D图像内容的组合显示在所述3D显示设备上。
4.如权利要求2所述的方法,进一步包含 与从中提取的3D图像内容以及与3D图像内容有关的文本相关联地存储所述视差信肩、O
5.如权利要求4所述的方法,进一步包含 处理对于每个视图都含有定位在其中的文本的至少一个3D图像内容的所述第一和第二视图,以便将文本和相关3D图像内容的组合显示在所述3D显示设备上。
6.如权利要求2所述的方法,进一步包含 与从中提取的3D图像内容以及与3D图像内容有关的文本相关联地存储所述偏移量。
7.如权利要求6所述的方法,进一步包含 处理对于每个视图都含有定位在其中的文本的至少一个3D图像内容的所述第一和第二视图,以便将文本和相关3D图像内容的组合显示在所述3D显示设备上。
8.如权利要求2所述的方法,其中所述视差信息包含一组视差值(P)、视差范围集(DX)、视差值的交集(IntD)、和视差值的并集(UD)。
9.如权利要求8所述的方法,其中所述提取进一步包含 在所述3D图像内容的第一和第二视图中检测至少一对对应特征; 为至少一对对应特征提取所述视差值; 将该对对应特征的所提取视差信息与前一对对应特征的提取之后所得的现有视差信息相比较,以确定是否更新所述现有视差信息;以及 当确定有必要更新时,利用当前提取的视差信息的至少某个部分更新所述现有视差信息,以便用更新的视差信息取代现有的视差信息。
10.如权利要求2所述的方法,其中所述提取进一步包含 将来自所述至少一个3D图像内容的视差信息保留成现有视差信息; 从至少第二 3D图像内容中提取视差信息;以及 当确定有必要更新时,利用至少第二 3D图像内容的所提取视差信息的至少某个部分更新来自至少一个3D图像内容的现有视差信息,以便用更新的视差信息取代现有的视差信息。
11.如权利要求2所述的方法,进一步包含 与从中提取的3D图像内容以及与3D图像内容有关的文本相关联地存储所述第一视图中的文本的所述位置和所述第二视图中的文本的所述位置。
12.如权利要求8所述的方法,其中所述提取进一步包含 根据从当前图像中提取的视差信息和从一个或多个以前图像中提取的视差信息的组合确定所述视差息。
13.如权利要求8所述的方法,其中所述提取进一步包含 根据从当前图像中提取的视差信息、从一个或多个以前图像中提取的视差信息、和从一个或多个随后图像中提取的视差信息的组合确定所述视差信息。
14.如权利要求2所述的方法,其中所述至少一个要求是从由如下组成的组中选择的将所述文本放置在整个图像的预定视差值上;将所述文本放置在一个图像的所选区域的预定视差值上;以及将所述文本放置成避免遮挡所述内容和将相继视差值的变化量限制成小值。
15.一种将文本与三维(3D)图像内容组合的装置,其中所得图像能够被3D显示设备显示,该装置包含 接收包括至少一个3D图像的所述3D图像内容和与所述至少一个3D图像相关联的文本两者的部件,其中所述至少一个3D图像包括第一视图和第二视图; 从所述至少一个3D图像中提取视差信息的部件; 在所述第一视图中确定文本的位置的部件;以及 在所述第二视图中确定文本的位置的部件,其中相应3D图像的所述第二视图中的位置相对于所述第一视图中的位置偏移至少部分基于所述视差信息的量。
16.一种含有存储在其上的一个或多个可执行指令的机器可读媒体,所述可执行指令当被数字处理系统执行时,使该数字处理系统可以执行将文本与三维(3D)图像内容组合的方法,其中所得图像能够被3D显示设备显示,该方法包含 接收包括至少一个3D图像的所述3D图像内容和与所述至少一个3D图像相关联的文本两者,其中所述至少一个3D图像包括第一视图和第二视图; 从所述至少一个3D图像中提取视差信息; 在所述第一视图中确定文本的位置;以及 在所述第二视图中确定文本的位置,其中相应3D图像的所述第二视图中的位置相对于所述第一视图中的位置偏移至少部分基于所述视差信息的量。
全文摘要
一种方法和系统定义了通过从3D内容中确定视差信息,并将这样的视差信息与用户或制作者提供的一个或多个要求一起用于将3D方式的文本最佳地定位到相关联的3D内容中来将3D方式的文本最佳地定位到相关联的3D内容中。文本位置的确定可以像在线操作那样在到达图像内容流上实时地进行或像离线操作那样在整个图像内容上以非实时模式进行。
文档编号H04N13/00GK102792700SQ201080065403
公开日2012年11月21日 申请日期2010年1月13日 优先权日2010年1月13日
发明者张涛 申请人:汤姆森特许公司