用于增强现实的自动化参考框架校准的制作方法

文档序号:6517368阅读:192来源:国知局
用于增强现实的自动化参考框架校准的制作方法
【专利摘要】本发明涉及用于增强现实的自动化参考框架校准。说明了增强现实(100)的自动化参考框架校准的一个或多个系统、方法、例程和/或技术。一个或多个系统、方法、例程和/或技术可允许增强现实(AR)系统(100)的校准,例如,通过自动校准虚拟物体和/或摄像机(102)的参考框架。一个示例性校准例程和/或技术可确定和/或计算从虚拟物体(112)的参考框架(例如,CAD模型)到与跟踪系统(108)相关联的坐标框架(204)的映射或变换。另一示例性校准例程和/或技术可确定和/或计算从摄像机(102)镜头参考框架到由跟踪系统(108)确定的整个摄像机(102)的参考框架的映射或变换。这些例程和/或技术可校准AR系统(100)以提供虚拟内容和真实场景的现场摄像机(102)视图之间的快速、精确对准。
【专利说明】用于增强现实的自动化参考框架校准
【技术领域】
[0001]本公开涉及增强现实,并且更具体地涉及用于增强现实的自动化参考框架校准(automated frame of reference calibration)的一个或多个系统、方法、例程和/或技术。
【背景技术】
[0002]增强现实(AR)通过叠加虚拟物体或介质到真实世界视图中而增强或增加真实世界视图的感知,例如,现场视频(live video)馈送。增强现实允许与真实世界有关的人工或模拟信息及其在真实世界视图上重叠的物体。增强现实与用人工或模拟视图代替真实世界视图的虚拟现实(VR)有关但不同。增强现实已经在各种应用中使用,如娱乐、视频游戏、体育和手机应用。
[0003]如本申请的其余部分中所阐述的和参照附图,通过此类系统与本发明的一些方面的比较,常规和传统方法的进一步的局限性和缺点对于本领域的技术人员来说将是显而易见的。

【发明内容】

[0004]本公开描述了用于增强现实的自动化参考框架校准的一个或多个系统、方法、例程和/或技术。一个或多个系统、方法、例程和/或技术可以允许增强现实(AR)系统的简单和快速校准,例如,通过自动校准虚拟物体和/或摄像机的参考框架。
[0005]本公开的一个或多个实施例描述了用于增强现实的方法,例如,由具有至少一个处理器的数据处理系统执行的方法。该方法可包括接收或建立与物体跟踪系统相关联的跟踪系统坐标框架。所述跟踪系统坐标框架可以与真实三维空间对准。所述跟踪系统可以跟踪真实物体和摄像机在真实三维空间中的位置和取向。该方法可包括从所述跟踪系统接收所述真实物体的第一真实物体参考框架。第一真实物体参考框架可表示所述真实物体相对于所述跟踪系统坐标框架的位置和取向。该方法可包括确定用于所述真实物体的第二真实物体参考框架。所述第二真实物体参考框架可表示所述真实物体相对于所述跟踪系统坐标框架的位置和取向。该方法可包括接收用于虚拟物体的第一虚拟物体参考框架。所述虚拟物体可以在所述真实物体后建模。所述第一虚拟物体参考框架可以与所述跟踪系统坐标框架无关。该方法可包括确定用于所述虚拟物体的第二虚拟物体参考框架。该方法可包括确定用于所述虚拟物体的第二虚拟物体参考框架。所述第二虚拟物体参考框架可表示所述虚拟物体相对于所述跟踪系统坐标框架的位置和取向。该方法可包括确定所述第一虚拟物体参考框架和所述跟踪系统坐标框架之间的虚拟物体映射。该方法可包括显示增强场景,该增强场景包括所述真实三维空间的视图、所述真实物体的视图和一个或多个重叠的虚拟项目。所述虚拟物体映射可以用来放置所述一个或多个重叠的虚拟项目在所述增强场景中,以便所述一个或多个虚拟项目与所述真实物体对准。
[0006]本公开的一个或多个实施例描述了用于增强现实的方法,例如,由具有至少一个处理器的数据处理系统执行的方法。该方法可包括接收或建立与物体跟踪系统相关联的跟踪系统坐标框架。所述跟踪系统坐标框架可以与真实三维空间对准。所述跟踪系统可以跟踪捕获真实三维空间的摄像机/照相机和印刷标记器(printed marker)在所述真实三维空间内的位置和取向。该方法可包括从所述跟踪系统接收所述摄像机的摄像机参考框架。所述摄像机参考框架可表示所述摄像机相对于所述跟踪系统坐标框架的位置和取向。该方法可包括接收或建立与所述印刷标记器相关联的印刷标记器坐标框架。所述印刷标记器坐标框架可以与所述真实三维空间对准。所述印刷标记器坐标框架可以与所述跟踪系统坐标框架对准。该方法可包括确定所述摄像机镜头的摄像机镜头参考框架。所述摄像机镜头参考框架可表示所述摄像机镜头相对于所述印刷标记器坐标框架的位置和取向。该方法可包括确定所述摄像机参考框架和所述摄像机镜头参考框架之间的摄像机镜头映射。该方法可包括显示增强场景,该增强场景包括所述真实三维空间的视图和一个或多个虚拟项目。所述摄像机镜头映射可以用来改变所述增强场景中的所述一个或多个虚拟项目或使其失真。
[0007]本公开的一个或多个实施例描述了系统。该系统可包括捕获包括真实物体的真实三维空间的视图的摄像机。该系统可包括跟踪所述真实物体和所述摄像机在真实三维空间内的位置和取向的跟踪系统。所述跟踪系统可经配置建立与所述跟踪系统相关联的跟踪系统坐标框架,并且所述跟踪系统坐标框架可以与所述真实三维空间对准。该系统可包括连接到所述摄像机和所述跟踪系统的计算机,并且所述计算机可包括一个或多个存储器单元。所述计算机可以配置有虚拟建模器。所述虚拟建模器可经配置从所述跟踪系统接收真实物体的第一真实物体参考框架,其中所述第一真实物体参考框架可表示所述真实物体相对于所述跟踪系统坐标框架的位置和取向。所述虚拟建模器可进一步配置为计算所述真实物体的第二真实物体参考框架,其中所述第二真实物体参考框架可表示所述真实物体相对于所述跟踪系统坐标框架的位置和取向。所述虚拟建模器可进一步配置为从所述一个或多个存储器单元接收虚拟物体的第一虚拟物体参考框架,其中所述虚拟物体可以在所述真实物体后建模,并且其中所述第一虚拟物体参考框架可与所述跟踪系统坐标框架无关。所述虚拟建模器可进一步配置为计算所述虚拟物体的第二虚拟物体参考框架,其中所述第二虚拟物体参考框架可表示所述虚拟物体相对于所述跟踪系统坐标框架的位置和取向。所述虚拟建模器可进一步配置为计算所述第一虚拟物体参考框架和所述跟踪系统坐标框架之间的虚拟物体映射。所述虚拟建模器可进一步配置为生成并在所述一个或多个存储器单元中存储增强场景,该增强场景包括所述真实三维空间的视图、所述真实物体的视图和一个或多个重叠虚拟项目。所述虚拟物体映射可以用来放置所述一个或多个重叠虚拟项目在所述增强场景中,以便所述一个或多个虚拟项目与所述真实物体对准。
[0008]本公开的一个或多个实施例描述了数据处理系统,其包括存储计算机代码的一个或多个存储器单元和连接到所述一个或多个存储器单元的一个或多个处理器单元。所述一个或多个处理器单元可以执行存储在所述一个或多个存储器单元内的计算机代码,以接收或建立与物体跟踪系统相关联的跟踪系统坐标框架。所述跟踪系统坐标框架可以与真实的三维空间对准。所述跟踪系统可以跟踪捕获真实三维空间的摄像机和印刷标记器在所述真实三维空间内的位置和取向。所述一个或多个处理器单元可以执行存储在所述一个或多个存储器单元内的计算机代码,以从所述跟踪系统接收所述摄像机的摄像机参考框架。所述摄像机参考框架可表示所述摄像机相对于所述跟踪系统坐标框架的位置和取向。所述一个或多个处理器单元可以执行存储在所述一个或多个存储器单元内的计算机代码,以接收或建立与所述印刷标记器相关联的印刷标记器坐标框架。所述印刷标记器坐标框架可以与所述真实三维空间对准,并且所述印刷标记器坐标框架可以与所述跟踪系统坐标框架对准。所述一个或多个处理器单元可以执行存储在所述一个或多个存储器单元内的计算机代码,以确定所述摄像机镜头的摄像机镜头参考框架。所述摄像机镜头参考框架可表示所述摄像机镜头相对于所述印刷标记器坐标框架的位置和取向。所述一个或多个处理器单元可以执行存储在所述一个或多个存储器单元内的计算机代码,以确定所述摄像机参考框架和所述摄像机镜头参考框架之间的摄像机镜头映射。所述一个或多个处理器单元可以执行存储在所述一个或多个存储器单元内的计算机代码,以显示包括所述真实三维空间的视图和一个或多个虚拟项目的增强场景。所述摄像机镜头映射可以用来改变所述增强场景中的所述一个或多个虚拟项目或使其失真。
[0009]从下列说明和附图中,将更充分地理解本公开的这些和其他优点、方面和新颖特征以及其说明性实施例的细节。应该理解的是,前面的一般性描述仅是所要求保护的本公开的示例性和解释性描述,而非限制性描述。
【专利附图】

【附图说明】
[0010]下列公开中描述了若干特征和优点,其中通过使用下列附图作为示例而说明了若干实施例。
[0011]图1描述了根据本公开的一个或多个实施例示出增强现实(AR)系统的示例装置、组件、软件和交互的方框图,其中本文所讨论的自动化参考框架校准技术在这样的AR系统中会是有用的。
[0012]图2描述了根据本公开的一个或多个实施例示出示例性校准技术的方框图。
[0013]图3根据本公开的一个或多个实施例描述了由跟踪系统为了各种原因使用的工具或棒(wand)的图示。
[0014]图4A根据本公开的一个或多个实施例描述了具有连接到或放置在所述真实物体上的多个跟踪标记器的示例性真实物体的图示。
[0015]图4B根据本公开的一个或多个实施例描述了跟踪系统如何可以创建和放置真实物体的表示的图示。
[0016]图5根据本公开的一个或多个实施例描述了虚拟建模软件如何可以建立真实物体的新参考框架的图示。
[0017]图6根据本公开的一个或多个实施例描述了虚拟建模软件如何可以建立虚拟物体的新参考框架的图示。
[0018]图7描述了根据本公开的一个或多个实施例示出示例性校准技术的方框图。
[0019]图8A根据本公开的一个或多个实施例描述了示例性摄像机和摄像机框架的图
/Jn ο
[0020]图SB根据本公开的一个或多个实施例描述了跟踪系统如何可以创建和放置摄像机的表示的图示。
[0021]图SC根据本公开的一个或多个实施例描述了具有集成摄像机的示例平板计算机的图示。[0022]图9A和9B描述了印刷标记器如何可以允许摄像机镜头的参考框架的确定的图
/Jn ο
[0023]图1OA描述了可以根据本公开的一个或多个实施例生产的示例性增强场景的图
/Jn ο
[0024]图1OB描述了可以根据本公开的一个或多个实施例生产的示例性增强场景的图
/Jn ο
[0025]图11描述了根据本公开的一个或多个实施例示出用于增强现实的自动化参考框架校准的方法中的示例步骤的流程图。
[0026]图12描述了根据本公开的一个或多个实施例示出用于增强现实的自动化参考框架校准的方法中的示例步骤的流程图。
[0027]图13描述了可以用来实施本公开的一个或多个实施例的示例性数据处理系统的方框图。
【具体实施方式】
[0028]在各种AR系统中,跟踪系统可以用来跟踪摄像机和各种真实世界物体在三维空间中的位置和取向。例如,跟踪系统可以跟踪摄像机和该摄像机正在查看/捕获的一台机器。各种AR系统可以尝试创建包括由所述摄像机捕获的真实世界场景(包括各种真实世界物体)和重叠虚拟介质和/或物体的增强场景。为了创建所述增强场景,所述跟踪系统可以建立虚拟坐标框架,并可以跟踪或“放置”所述真实世界物体在此坐标框架中的表示。各种AR系统可以尝试“放置”各种虚拟物体(例如,CAD模型/物体)在所述坐标框架中,以便创建增强场景。虚拟物体/模型可以具有其自己的默认或任意参考框架(例如,三维位置和取向),并且因此,为了放置虚拟物体在所述跟踪系统的坐标框架中,必须确定所述跟踪系统的坐标框架和所述虚拟物体参考框架之间的映射或变换。此外,如果所述摄像机(例如,捕获真实世界的摄像机)移动,则AR系统可以尝试改变所述虚拟物体的视图。为了精确地做到这一点,AR系统可能需要跟踪所述摄像机镜头的位置和取向。然而,跟踪系统可以仅跟踪整个摄像机的位置和取向。各种软件程序(例如,结合其他部件)可以用来确定坐标框架中的所述摄像机镜头的参考框架,但是这些镜头软件程序可以跟踪在由所述镜头软件程序建立的坐标框架中的镜头。因此,为了放置所述摄像机镜头在所述跟踪系统的坐标框架中,必须确定所述跟踪系统的坐标框架和所述镜头参考框架之间的映射或变换。确定这些映射和/或变换(例如,所述虚拟物体和/或所述摄像机镜头的映射和/或变换)可以称为AR系统校准或校准的参考框架。
[0029]应该理解的是,术语“坐标框架”、“参考的框架”、“参考框架”和“位姿(pose)”可以在本公开中使用,并且可以密切相关。术语“坐标框架”可以指三维空间的三维表示,其中所述坐标框架包括三个平面或轴(例如,X轴、Y轴、Z轴)和一个原点(例如其中所述三个轴相交的点)。术语“参考的框架”或“参考框架”可以指例如在坐标框架中的物体或点的三维位置和三维取向。物体的参考框架可包括该物体的原点(例如,近似的质量中心)和该物体的取向(例如,相对于该物体建立的三个轴)。术语“位姿”是“位置和取向”的简称,并且可以指物体在三维空间中的三维位置(例如,X、Y、Z坐标)和三维取向(例如,滚动、俯仰、偏航)。[0030]各种AR系统可以通过手动或反复试验/试错法(trial-and-eiror)过程执行AR系统校准,例如,相对于所述跟踪系统坐标框架近似所述虚拟模型和/或所述摄像机镜头的参考框架,并且然后测试该增强场景来确定所述近似是否良好。例如,技术人员可以简单地查看所述增强场景中重叠的虚拟物体,并且从各种摄像机位置和取向作出关于它们是否出现在其正确位置中的确定。这个手动校准过程可以需要十二个参数的操纵,例如虚拟物体的六个参数(例如,Χ、y、z坐标和滚动、俯仰、偏航)和摄像机镜头的六个参数(例如,Χ、y、Z坐标和滚动、俯仰、偏航)。这个过程可能费用高昂和/或是时间密集的,例如,需要许多小时(例如,8小时以上)来完成。即使当所述手动校准过程完成时,仍然未必得到精确的解决方案/校准。例如,从一个摄像机位姿表现为恰当安置的虚拟物体可能从不同位姿未表现为被恰当安置。虚拟物体放置的小错误可以导致较大真实世界物体上的大错误。此外,每次所述AR系统被设置在新环境中或为了新真实物体或摄像机设置时,所述AR系统必须手动校准。
[0031]本公开描述了增强现实的自动化参考框架校准的一个或多个系统、方法、例程和/或技术。一个或多个系统、方法、例程和/或技术可以允许增强现实(AR)系统的简单快速校准,例如,通过自动校准虚拟物体和/或摄像机的参考框架。一个或多个系统、方法、例程和/或技术可以允许所述AR系统在相对短的时间量(例如,小于15分钟)内设置在新环境中或在新真实物体(例如,一台机器)上,并且可以允许重叠虚拟内容与真实世界场景的精确对准。如果所述AR系统被用来指导技术人员进行精确的任务(例如,在精确位置钻小孔),则虚拟内容的精确对准可能是至关重要的。一个或多个系统、方法、例程和/或技术可以确定和/或计算各种参考框架(例如,所述跟踪系统的坐标框架、虚拟物体的参考框架和摄像机镜头的参考框架)之间的映射或变换。本公开可描述两个主要校准例程和/或技术。所述第一校准例程和/或技术可以确定和/或计算虚拟物体的参考框架(例如,CAD模型)和与所述跟踪系统相关联的坐标框架之间的映射或变换。所述第二校准例程和/或技术可以确定和/或计算摄像机镜头的参考框架和由跟踪系统确定的整个摄像机的参考框架之间的映射或变换。这些例程和/或技术可以校准AR系统,以提供虚拟内容和真实场景的现场摄像机视图之间的快速、精确对准。
[0032]图1描述了根据本公开的一个或多个实施例示出了增强现实(AR)系统100的示例装置、组件、软件和交互的方框图,其中本文所讨论的自动化参考框架校准技术在这样的AR系统中会是有用的。AR系统100可包括可捕获和/或串流真实世界场景的现场视频馈送的摄像机102。所述真实世界场景可包括一个或多个真实物体,例如,真实物体(R0)104。R0104可以是各种物体中的一个,例如,工具、一台机器、大型卫星、控制箱、控制面板或其他各种物体。所述摄像机102可以与计算机106通信,其中所述计算机可以解释和/或处理自与由所述摄像机捕获的真实世界场景和/或物体相关的所述摄像机发送的信息(例如,现场串流视频)。
[0033]所述AR系统100可包括跟踪系统108。所述跟踪系统108可跟踪所述真实物体104和所述摄像机102的“位姿”(在三维空间内的位置和取向),并可以(例如,实时)串流此信息到计算机(例如,计算机106)或其他组件。所述跟踪系统108可包括各种组件,例如,若干跟踪标记器、感测所述跟踪标记器的若干感测装置和可以运行关联的跟踪系统软件的基础计算(base computing)装置。在一个示例中,每个标记器可以是具有经设计反射特定的光波长的反射涂层的小球体(例如,IOmm球体)。在此示例中,所述标记器可以放置在真实世界空间内各种位置中和/或各种物体上,以便所述跟踪系统108可以跟踪三维空间内的特定点和/或物体的位置和/或取向。例如,多个(例如,三个或更多个)跟踪标记器可以放置在所述真实物体104上,并且多个(例如,三个或更多个)跟踪标记器可以放置在所述摄像机102上。
[0034]所述跟踪系统108的感测装置可以是经设计检测所述跟踪标记器在三维空间内的位置的摄像机。例如,每个摄像机可以是经设计检测来自各种跟踪标记器(例如,放置在所述摄像机102和所述真实物体104上的跟踪标记器)的反射的红外摄像机。所述各种感测装置(例如,红外摄像机)可以放置在和/或安装在所述三维空间周围的各种位置处,例如,多个(例如,八个或更多)摄像机可以安装在房间或实验室的墙壁上,例如,安装在一个布置中,以便感兴趣的三维空间被各种摄像机的视野范围充分地覆盖。所述跟踪系统108的各种感测装置可以与基础计算装置通信(例如,通过实时通信链路,如以太网、WiFi等),其中所述基础计算装置可以运行关联的跟踪系统软件。所述跟踪系统软件可以处理来自所述各种感测装置的数据。所述跟踪系统108可以与计算机106通信(例如,通过实时通信链路,如以太网、WiFi等)。所述计算机可以是与所述摄像机102通信的计算机。在一些实施例中,所述跟踪系统108的基础计算装置可以是与计算机106相同的计算装置。
[0035]在一些实施例中,所述摄像机102可以集成到计算机106内。在一些示例中,计算机106可以是移动装置,例如,平板计算机、智能手机、PDA等。作为一个具体的示例,计算机106可以是具有集成摄像机的平板计算机(参见作为一示例的图7C)。具有集成摄像机的移动装置可以给用户提供移动的灵活性和自由度。例如,用户可以查看包括真实物体(例如,一台真实的机器)的增强场景,并且用户可以绕所述真实物体走动,从而查看所述真实物体的不同部分和/或角度。此外,用户可以在帮助用户执行任务的桌面的屏幕上看到虚拟内容,例如,虚拟内容可包括可以指导用户如何在所述真实物体上工作或使用所述真实物体工作的指令、箭头、硬件、工具等。此示例中的平板计算机(例如,计算机106)可包括所述虚拟建模软件110。此示例中的平板计算机可以与所述跟踪系统108 (例如,所述跟踪系统的基础计算装置)通信(例如,通过实时通信链路,如以太网、WiFi等)。
[0036]计算机106可包括虚拟建模软件110。所述虚拟建模软件可以访问或加载各种虚拟物体,例如,虚拟物体(VO) 112。可以各种已知方式中的一种方式创建和设计虚拟物体(例如,V0112),从而创建虚拟和/或计算机辅助设计(CAD)物体和/或模型。通过使用CAD软件,例如,使用基于矢量的图形等来描述物体(例如,在真实世界物体后建模的物体)的软件,可以创建虚拟/CAD物体/模型。虚拟/CAD物体/模型可以是详细说明真实世界物体的各种三维特征的三维物体。虚拟物体112可以是所述真实物体104的虚拟表示。计算机106可以访问或加载除表示真实世界空间内的真实物体的虚拟物体以外的其他各种虚拟物体。作为一个示例,真实物体104可以是一台机器,并且虚拟物体112可以是同一台机器的虚拟表示。此外,其他虚拟物体可以在真实世界空间中没有对应物,例如,虚拟物体可以表示假设性的螺钉、工具、电线和示出技术人员如何与所述真实物体104交互的类似物。
[0037]所述虚拟建模软件110可以接收来自所述跟踪系统108 (例如,由所述跟踪系统、所述摄像机102的参考框架和真实物体104的参考框架建立的坐标系)的数据(例如,串流实时数据)。所述虚拟建模软件110可以执行本文所描述的各种例程、技术等,以创建增强场景(例如,增强场景114),例如,由通过虚拟物体增强和/或重叠的摄像机102捕获的所述真实世界空间的实时视图。所述虚拟建模软件110可以执行如本文所描述的各种校准例程和/或技术,以对准虚拟物体和摄像机镜头的坐标框架和参考框架到与所述跟踪系统相关联的坐标框架。一旦校准完成,则所述虚拟建模软件110可以保持各种虚拟物体和现场真实世界场景之间的相关性和/或对准。所述计算机106可包括显示器116或与显示器116通信,该显示器116可以显示所述增强场景114给用户。所述虚拟建模软件110可以产生示出放置在现场视频馈送上的虚拟物体的(在显示器116上显示的)增强场景114。例如,根据摄像机102相对于真实物体104的位姿和/或真实物体104的位姿,所述虚拟建模软件110可以适当地使所述增强场景中的虚拟物体变形(例如,改变三维位置、三维取向和/或三维尺寸)。例如,如果所述摄像机102进一步移动远离真实物体104,则所述增强场景中的一个或多个虚拟物体可能收缩。作为另一示例,如果摄像机102移动得更靠近真实物体104,则一个或多个虚拟物体将放大。作为另一示例,如果摄像机102以相对于真实物体104的角度移动,则一个或多个虚拟物体将适当地旋转。
[0038]图2描述了根据本公开的一个或多个实施例示出示例性校准技术的方框图。更具体地,图2示出了可以用来确定和/或计算虚拟物体(例如,添加到增强场景的虚拟物体)的参考框架和与所述跟踪系统相关联的参考框架之间的映射或变换的自动化参考框架校准技术。如可以在图2中看出的,跟踪系统202 (例如,类似于图1的跟踪系统108)可以建立坐标框架204,例如,作为由技术人员执行的跟踪系统设置的一部分。所述跟踪系统的坐标框架可包括三个轴(例如,X轴、Y轴、Z轴)和其中所述三个轴相交的原点。所述跟踪系统可以“放置”或关联坐标框架的原点与真实世界三维空间内的特定点,并可以相对于所述真实世界三维空间取向所述坐标框架。所述跟踪系统可以利用工具或棒建立其坐标框架,例如,类似于图3中所示的棒300的棒。参考图3,所述棒300可以类似于字母“T”,并且可以包括可以指明第一轴(例如,X轴)的第一延伸构件(例如,构件302)和可以包括可指明第二轴(例如,Z轴)的第二延伸构件(例如,构件304)。所述棒300也可以指明在所述第一构件302/第一轴和所述第二构件304/第二轴相交的点306处的原点。第三虚轴(例如,Y轴)可以延伸通过原点306。作为一个示例,所述棒300可以安置在房间或实验室的地板上,并且所述跟踪机器可以通过检测所述棒和/或连接到所述棒的跟踪标记器(例如,跟踪标记器308、310、312、314、316)而建立其坐标框架。所述跟踪系统可以建立与由所述棒300指明的所述原点和轴相关联的虚拟原点和三个虚拟轴。一旦所述跟踪系统的坐标系建立,所述跟踪系统就可以跟踪房间或实验室内的真实物体(例如,配备有三个或更多个跟踪标记器),并且确定其在坐标框架内的位姿,并且确定所述物体相对于所述三个轴的取向。
[0039]再次参考图2,所述跟踪系统202可以确定真实物体的参考框架206。换句话说,所述跟踪系统202可以跟踪所述真实物体。例如,所述真实物体可以类似于图1的真实物体104。所述真实物体(RO)可以是各种物体中的一个,例如,工具、一台机器、大型卫星、控制箱、控制面板或各种其他物体。图4A示出了真实物体400即钻头磨锐机工具的示例。为了所述跟踪系统跟踪所述真实物体400 (即,确定真实物体400的参考框架),多个(例如,三个或更多个)跟踪标记器(例如,跟踪标记器402、404、406)可以连接到或安置在所述真实物体400上。为了适当地跟踪,所述跟踪标记器可能必须适当地安置在所述真实物体400上,例如,以非共线、非对称布置方式安置。如果三个或更多个点位于单条直线上,则它们被认为是共线的。因此,跟踪标记器的非共线布置是指所述跟踪标记器经布置以便所述标记器不全位于一条直线上。为了适当的跟踪,至少三个非共线跟踪标记器可以放置在所述真实物体上。多于三个的跟踪标记器可以放置在所述真实物体上,例如,以提高计算的可靠性和/或精确性,例如,在所述跟踪标记器中的一个标记器的视图被遮挡的情况下。
[0040]所述跟踪系统(例如,包括多个红外摄像机)可以检测所述跟踪标记器并创建和放置所述真实物体的表示在由所述跟踪系统建立的坐标框架中。图4B示出了跟踪系统如何可以创建和放置真实物体的表示的图示。所述跟踪系统可以检测所述跟踪标记器(例如,标记器402、404、406及或许图4A中未示出的更多标记器)的位置,并可以创建和放置分别与所述跟踪标记器相关联的各点(例如,点452、454、456和458)在所述跟踪系统的坐标框架中。从这些点(例如,点452、454、456和458),所述跟踪系统可以确定原点(例如,点460)和用于所述真实物体的表示的取向(参见围绕点460的立方体和取向线)。所述原点可以通过计算所述点452、454、456和458的质心(例如,质量中心)确定。可以设置所述取向,以匹配(或关于)所述跟踪系统的坐标系的取向。一旦所述跟踪系统确定所述真实物体(RO)的参考框架(例如,与所述跟踪系统坐标框架相关联的原点/位置和取向),则所述跟踪系统可以串流关于所述真实物体的位姿的信息到所述虚拟建模软件。当所述真实物体可以移动和/或旋转时,关于所述真实物体的串流位姿信息可以实时更新。
[0041]再次参考图2,所述虚拟建模软件210可以为所述真实物体(RO)建立新的参考框架212。例如,所述虚拟建模软件210可能类似于图1的虚拟建模软件110。所述虚拟建模软件210可以使用与和所述跟踪系统相关联的坐标框架相同的坐标框架。所述新RO参考框架212可以指定所述真实物体上不同的(当与所述RO参考框架206比较时)参考点并且可以确定和/或计算出不同的原点。建立新的RO参考框架可以允许所述虚拟建模软件选择所述真实物体上的参考点,所述参考点是与和所述真实物体相关联的虚拟物体(例如CAD模型)上的参考点相同(或非常接近)的参考点。
[0042]图5示出了所述虚拟建模软件如何可以为真实物体(例如,真实物体500)建立新的参考框架的图示。多个参考点(例如,点502、504、506)可以标示在所述真实物体500上。这些参考点可以例如由技术人员通过使用工具或棒(例如,类似于图3的棒300的棒)加以标示。所述工具或棒可以由所述跟踪系统跟踪,例如,在相对于彼此的连接到所述棒的跟踪标记器之间的位置可以由所述跟踪系统确定,从而允许精确的点收集。所述虚拟建模软件可以使用关于所述棒位置的来自所述跟踪系统的数据来记录所述真实物体上的参考点。作为一个示例,所述虚拟建模软件可以将所述棒上的点识别为“指针”(例如,所述棒的延伸构件的顶端)。技术人员可以使所述指针触摸所述真实物体上的各点(例如,点502、504、506),并且通过所述棒和所述跟踪系统,所述虚拟建模软件可以捕获或记录这些点并将它们放置在与所述跟踪系统相关联的坐标框架中。为了确定所述新的参考框架,所述参考点可能必须被适当地放置在所述真实物体500上,例如,以非共线布置方式放置。至少三个非共线参考点可以放置在所述真实物体上。多于三个的参考点可以放置在所述真实物体上,例如,以提高计算的可靠性和/或精确性。从这些参考点(例如,点502、504、506),所述虚拟建模软件可以确定原点(例如,点508)和所述真实物体的取向(参见从点508延伸的轴线)。所述原点可以通过计算所述点502、504、506的质心(例如,质量中心)确定。所述真实物体的取向可以通过放置从所述原点延伸的两个轴(例如,X轴、Z轴)在由点502、504、506创建的平面内而确定。
[0043]再次参考图2,一旦所述新RO参考框架212建立起来,则所述虚拟建模软件210就可以计算由所述跟踪系统确定的在所述新RO参考框架212和所述RO参考框架206之间的
平移和/或旋转差。
[0044]参考图2,所述虚拟建模软件210可以访问或加载各种虚拟物体,例如,预先设计的CAD模型。所述虚拟建模软件210可以放置所述虚拟物体在与所述跟踪系统相关联的坐标框架中,但是所述AR系统可能需要在适当放置之前进行校准。虚拟物体(例如,CAD模型)可能具有其自己的参考框架(例如,原点和三个取向轴),例如,当设计所述虚拟物体时指定。可能会出现这种情况(例如,对于特定环境),即,所述虚拟建模软件引用的所有虚拟物体可以共享相同的参考框架(例如,VO参考框架214)。为了放置虚拟物体在与所述跟踪系统相关联的坐标框架中,所述虚拟建模软件210可以确定所述虚拟物体的VO参考框架统214和与所述跟踪系统相关联的坐标框架204之间的映射或变换。为了校准所述AR系统(例如,确定所述映射或变换),所述虚拟建模软件210可以使用对应于所述AR系统的摄像机(例如,图1中的摄像机102)正在捕获的真实物体(例如,图1的真实物体104)的虚拟物体(例如,图1的虚拟物体112)。这个虚拟物体可以具有VO参考框架214。
[0045]所述虚拟建模软件210可以为所述真实虚拟物体建立新的VO参考框架216。所述虚拟建模软件210可以使用与和所述跟踪系统相关联的坐标框架相同的坐标框架。当与VO参考框架214比较时,所述新的VO参考框架216可以具有不同的原点和取向。建立新的VO参考框架可以允许所述虚拟建模软件选择所述虚拟物体上的参考点,其中所述参考点是与相对于对应的真实物体所标示的(如上面所解释的)参考点相同(或非常接近)的参考点,并且可以允许所述新的RO参考框架212和所述新的VO参考框架216之间的对准(大致参考点218)。(与所述真实物体相关联的)所述新的RO参考框架212和(与所述虚拟物体相关联的)所述新的VO参考框架216之间的对准可以例如通过选择所述真实物体和所述虚拟物体上的相同参考点和通过执行每个的相同原点和取向计算而实现。
[0046]图6示出了所述虚拟建模软件如何可以为所述虚拟物体(例如,虚拟物体600)建立新的VO参考框架的图示。注意,为了校准的目的,虚拟物体600可以是在所述AR系统的摄像机正在捕获的关联的真实物体(例如,图5的真实物体500)后建模的虚拟物体。可以在所述虚拟物体600上选择多个参考点(例如,点602、604、606)。这些参考点可以对应于(例如与其在同一相对位置)经选择、标示和/或记录以创建所述新的RO参考框架的参考点(参见图5和相关讨论)。与所述RO参考框架确定一样,确定所述VO参考框架的参考点可以是非共线的布置,并且可以在所述虚拟物体上选择至少三个非共线的参考点。从这些参考点(例如,点602、604、606),所述虚拟建模软件可以确定原点(例如,点608)和所述虚拟物体的取向(参见从点608延伸的轴线)。所述原点可以通过计算所述点602、604、606的质心(例如,质量中心)确定。所述虚拟物体的取向可以通过放置从所述原点延伸的两个轴(例如,X轴、Z轴)在由点602、604、606创建的平面内而确定。
[0047]再次参考图2,一旦所述新的VO参考框架216建立起来,则所述虚拟建模软件210可以计算与所述虚拟物体相关联的所述新的VO参考框架216和所述VO参考框架214之间的平移和/或旋转差。
[0048]如上面所解释的,可能需要在三维空间内的关联的真实物体后建模的虚拟物体来校准所述AR系统,例如,以确定可以与所述新的RO参考框架212对准的新的VO参考框架216。然而,一旦校准完成,则应该理解的是,其他各种虚拟物体可以(例如,通过所述虚拟建模软件)放置到与所述跟踪系统相关联的坐标框架内。参考图2,可以看出这个放置为什么运作。为了将虚拟物体放置到与所述跟踪系统相关联的坐标框架内,必须确定所述虚拟物体参考框架214 (例如,原点和取向)和与所述跟踪系统相关联的坐标框架204之间的映射或变换(例如,图2中所示的M4变换)。在所述校准过程完成之前,所述M4变换可能是未知的。如上面所解释的,所述校准过程可以确定与所述M4变换有关的其他各种映射或变换。如图2中所示,所述校准过程可以确定Ml变换(即,其中所述跟踪系统将所跟踪的真实物体放置在其坐标框架中)、M2变换(即,所述RO参考框架206和所述新的RO参考框架212之间的平移和旋转差)和M3变换(即,所述VO参考框架214和所述新的VO参考框架216之间的平移和旋转差)。一旦所述M1、M2和M3变换是已知的,则可以计算所述M4变换。一旦所述M4变换是已知的,则各种虚拟物体可以放置在与所述跟踪系统相关联的坐标框架中。此外,当来自所述跟踪系统的信息(例如,所述真实物体的位姿)串流到所述虚拟建模软件时,如果Ml变换发生改变(即,所述真实物体在三维空间内的位姿),则所述M4变换可以例如实时更新。在这方面,虚拟物体可以重叠在真实世界场景上,并且例如,当所述场景内的关联的真实物体移动时,所述虚拟物体的外观可以适当地发生改变。
[0049]以下说明一个示例性技术,以计算M4变换,如图2中所示。图2中所示的各种变换(Ml、M2、M3、M4)可以各自都表示为变换矩阵,例如,如三维计算机图形中通常使用的4 X 4变换矩阵。所述Ml变换可以表示为下面的等式I中示出的变换矩阵。所述M2变换可以表示为下面的等式2中示出的变换矩阵。所述M3变换可以表示为下面的等式3中示出的变换矩阵。
[0050]
【权利要求】
1.一种用于增强现实(100)的方法,所述方法由具有至少一个处理器的数据处理系统执行,所述方法包括: 接收或建立与物体跟踪系统(108)相关联的跟踪系统坐标框架(204), 其中所述跟踪系统坐标框架(204)与真实三维空间对准,和 其中所述跟踪系统(108)跟踪捕获真实三维空间的摄像机(102)和印刷标记器(906)在所述真实三维空间内的位置和取向; 从所述跟踪系统(108)接收用于所述摄像机(102)的摄像机参考框架, 其中所述摄像机参考框架表示所述摄像机(102)相对于所述跟踪系统坐标框架(204)的位置和取向; 接收或建立与所述印刷标记器(906)相关联的印刷标记器坐标框架(204), 其中所述印刷标记器坐标框架(204)与所述真实三维空间对准,和 其中所述印刷标记器坐标框架(204)与所述跟踪系统(108)坐标框架(204)对准; 确定所述摄像机镜头的摄像机(102)镜头参考框架, 其中所述摄像机镜头参考框架表示所述摄像机(102)镜头相对于所述印刷标记器坐标框架(204)的位置和取向 ; 确定在所述摄像机(102)参考框架和所述摄像机(102)镜头参考框架之间的摄像机镜头映射;和 显示包括所述真实三维空间的视图和一个或更多个虚拟项目的增强场景(114), 其中所述摄像机(102)镜头映射用来改变所述增强场景(114)中的所述一个或更多个虚拟项目或使其失真。
2.根据权利要求1所述的方法,其中确定所述摄像机(102)镜头参考框架包括由与所述印刷标记器(906)相关联的软件程序接收摄像机(102)镜头位置和取向信息。
3.根据权利要求1所述的方法,其中对准所述印刷标记器坐标框架(204)与所述跟踪系统坐标框架(204)包括放置所述印刷标记器(906)在所述真实三维空间内的位置和取向,以便: 与所述印刷标记器(906)相关联的原点位于与和所述跟踪系统(108)相关联的原点大致相同的所述三维空间内的位置;和 与所述印刷标记器(906)相关联的三个轴在所述三维空间内大致对准与所述跟踪系统(108)相关联的三个轴。
4.根据权利要求1所述的方法,其中确定所述摄像机(102)镜头映射包括: 接收或确定表示第一真实物体参考框架(212)的第一变换矩阵; 确定表示所述摄像机(102)镜头参考框架和所述印刷标记器坐标框架(204)之间的位置和取向的差异的第二变换矩阵; 计算表示所述摄像机(102)镜头映射的第三变换矩阵, 其中所述第三变换矩阵表示所述摄像机参考框架和所述摄像机镜头参考框架之间的位置和取向的差异,和 其中所述第三变换矩阵是通过执行所述第一变换矩阵和第二变换矩阵之间或所述第二变换矩阵和第一变换矩阵之间的矩阵除法而计算的。
5.根据权利要求1所述的方法,其中使用所述摄像机(102)镜头映射来改变所述增强场景(114)中的一个或更多个重叠虚拟项目或使其失真包括: 通过使用第一虚拟项目参考框架(216)放置第一重叠虚拟项目在所述增强场景(114)中, 其中所述第一虚拟项目参考框架(216)与所述跟踪系统坐标框架(204)有关; 从所述跟踪系统(108)接收关于所述摄像机(102)的位置和取向的实时信息; 参考所述虚拟物体(112)映射而变换,从而基于所述实时信息更新所述摄像机(102)镜头参考框架;和 基于更新的摄像机(102)镜头参考框架,通过改变所述一个或更多个重叠虚拟项目或使其失真来更新所述增强场景(114)。
6.根据权利要求1所述的方法,其中改变所述增强场景(114)中的所述一个或更多个重叠虚拟项目或使其失真包括收缩所述重叠虚拟项目,以响应于所述摄像机(102)进一步移动远离所述三维空间内的真实物体(104)。
7.根据权利要求1所述的方法,其中改变所述增强场景(114)中的所述一个或更多个重叠虚拟项目或使其失真包括放大所述重叠虚拟项目,以响应于所述摄像机(102)移动得更靠近所述三维空间内的真实物体(104)。
8.根据权利要求1所述的方法,其中改变所述增强场景(114)中的所述一个或更多个重叠虚拟项目或使其失真包括旋转所述重叠虚拟项目,以响应于所述摄像机(102)以相对于所述三维空间内的真实物体(104)的角度移动。`
9.一种系统,包括: 摄像机(102),其捕获包括真实物体(104)的真实三维空间的视图; 跟踪系统(108),其跟踪所述真实物体(104)和所述摄像机(102)在真实三维空间内的位置和取向,其中所述跟踪系统(108)配置为建立与所述跟踪系统(108)相关联的跟踪系统坐标框架(204),其中所述跟踪系统坐标框架(204)与所述真实三维空间对准;和 计算机(106),其连接到所述摄像机(102)和所述跟踪系统(108),所述计算机(106)具有一个或更多个存储器单元,所述计算机(106)配置为具有虚拟建模器, 其中所述虚拟建模器配置为从所述跟踪系统(108)接收用于所述真实物体(104)的第一真实物体参考框架,其中所述第一真实物体参考框架(212)表示所述真实物体(104)相对于所述跟踪系统坐标框架(204)的位置和取向; 其中所述虚拟建模器进一步配置为计算用于所述真实物体(104)的第二真实物体参考框架(212),其中所述第二真实物体参考框架(212)表示所述真实物体相对于所述跟踪系统坐标框架(204)的位置和取向; 其中所述虚拟建模器进一步配置为自所述一个或更多个存储器单元接收用于虚拟物体(112)的第一虚拟物体参考框架(216),其中所述虚拟物体(112)在所述真实物体(104)后建模,并且其中所述第一虚拟物体参考框架(216)与所述跟踪系统坐标框架(204)无关;其中所述虚拟建模器进一步配置为计算用于所述虚拟物体(112)的第二虚拟物体参考框架(216),其中所述第二虚拟物体参考框架(216)表示所述虚拟物体(112)相对于所述跟踪系统坐标框架(204)的位置和取向; 其中所述虚拟建模器进一步配置为计算所述第一虚拟物体参考框架(216)和所述跟踪系统坐标框架(204)之间的虚拟物体(112)映射;和其中所述虚拟建模器进一步配置为在所述一个或更多个存储器单元中生成和存储包括所述真实三维空间的视图、所述真实物体(104)的视图和一个或更多个重叠虚拟项目的增强场景(114),其中所述虚拟物体(112)映射用来放置所述一个或更多个重叠虚拟项目在所述增强场景(114)中,以便所述一个或更多个虚拟项目与所述真实物体(104)对准。
10.根据权利要求9所述的系统,其进一步包括连接到所述计算机(106)的显示器,其中所述虚拟建模器进一步配置为将所述增强场景(114)传送到所述显示器,并且其中所述显示器配置为向用户示出所述增强场景(114)。
11.根据权利要求9所述的系统,其中使用所述虚拟物体(112)映射以放置所述一个或更多个重叠虚拟项目在所述增强场景(114)中包括: 接收用于第一重叠虚拟项目的第一虚拟项目参考框架(216), 其中所述第一虚拟项目参考框架(216)与所述跟踪系统坐标框架(204)无关; 参考所述虚拟物体(112)映射,从而将所述第一虚拟项目参考框架(216)变换到与所述跟踪系统坐标框架(204)有关的变换后的参考框架;和 通过使用所述变换参考框架而将所述第一重叠虚拟项目放置在所述增强场景(114)中。
12.根据权利要求9所述的系统,其中所述虚拟建模器进一步配置为: 从所述跟踪系统(108)接收关于所述真实物体(104)的位置和取向的实时信息; 基于所述实时信息更新所述虚拟物体(112)映射;和 通过更新所述一个或更多个`重叠虚拟项目的放置以便所述一个或更多个虚拟项目保持与所述真实物体对准而更新所述增强场景(114)。
【文档编号】G06T17/00GK103793936SQ201310529549
【公开日】2014年5月14日 申请日期:2013年10月31日 优先权日:2012年10月31日
【发明者】P·R·戴维斯, D·K·李 申请人:波音公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1