相机投影系统中的延时降低的制作方法

文档序号:18922957发布日期:2019-10-19 03:45阅读:256来源:国知局
相机投影系统中的延时降低的制作方法

相机投影系统可以将图像叠加到如由人感知的对象上或者允许人与虚拟现实交互。例如,投影设备可以将图案叠加到对象上使得对象显现为在其表面上具有图案。在一些示例中,这些对象可以正沿着可预测的路径或半可预测的路径移动。在一些示例中,对象可以是与虚拟世界交互的人。



技术实现要素:

下文呈现了简化的发明内容以便提供对本文描述的一些方面的基本理解。本发明内容不是要求保护的主题的详尽概述。本发明内容不旨在标识要求保护的主题的关键或必要元素,也不旨在刻画要求保护的主体的范围。本发明内容的唯一目的是以简化的形式呈现要求保护的主题的一些概念,作为对稍后呈现的更详细的描述的前序。

实施例提供用于降低相机投影系统中的系统延时的影响的方法。该方法包括经由相机记录一个或多个移动对象的多个帧,一个或多个移动对象中的一个移动对象可以是目标对象。分析一个或多个移动对象的所记录的帧以确定目标对象的预测的路径。经由投影设备使用目标对象的预测的路径来将图像投影到目标对象上以补偿系统延时。经由相机记录目标对象和图像的多个帧。调节目标对象的预测的路径,直到在目标对象与图像之间的偏移低于预定阈值。将至少一个移动对象的预测的路径存储在移动存储设备中。

另一实施例提供包括多个指令的一个或多个计算机可读存储介质,多个指令当由处理器执行时使得处理器分析一个或多个移动对象的多个记录的帧以确定它们的路径。指令指引处理器创建移动存储设备,并将移动对象的至少一个移动存储在移动存储设备中。指令指引处理器执行在移动存储设备中的查找,以生成针对目标移动对象的半预测的路径。指令指引处理器使得交互式图像使用目标移动对象的半预测的路径与目标移动对象交互。指令指引处理器记录目标移动对象和交互式图像的多个帧。指令指引处理器确定在目标移动对象与图像的路径之间的偏移,并针对偏移调节交互式图像的投影。

另一实施例提供用于降低相机投影系统中的硬件延时的影响的系统。该系统包括:用于执行处理器可执行代码的处理器;相机;投影设备;以及存储设备,其存储处理器可执行代码。处理器可执行代码当由处理器执行时使得处理器分析移动对象的多个记录的帧以确定预测的路径,其中移动对象是要具有投影在其上的图像的目标对象。处理器可执行代码当由处理器执行时使得处理器经由投影设备基于目标对象的预测的路径来将图像投影到目标对象上。处理器可执行代码当由处理器执行时使得处理器经由相机记录目标对象和图像的多个帧。处理器可执行代码当由处理器执行时使得处理器基于偏移来调节针对目标对象的预测的路径。处理器可执行代码当由处理器执行时使得处理器基于调节的预测的路径来将图像投影到目标对象上。

附图说明

可以通过参照附图更好地理解下面的具体实施方式,附图包含所公开的主题的许多特征的具体示例。

图1是可以降低相机投影延时的影响的计算系统的示例的框图;

图2是用于降低针对具有可预测路径的对象的相机投影系统延时影响的示例方法的过程流程图;

图3是用于降低针对具有半可预测路径的对象的相机投影系统延时影响的示例方法的过程流程图;

图4是用于降低针对具有可预测路径和半可预测路径两者的对象的相机投影系统延时影响的示例方法的过程流程图;

图5是示出了可以被用于降低投影系统中的延时的影响的示例计算机可读存储介质的框图;以及,

图6是示出了不同水平的相机投影系统延时降低的示例的四张图片的集合。

具体实施方式

相机投影系统通常被用于将图像投影到对象的表面上或者结合虚拟现实系统一起使用以跟踪用户移动并将用户移动集成在虚拟体验内。在基于硬件的解决方案中,硬件系统内的总体延时引入迟滞影响,其中跟踪对象以具有叠加的图像或者虚拟存在的系统具有在结合物理移动对象来投影图像或者移动虚拟对象中的延迟响应。本文描述的实施例提供用于降低存在于相机投影(“pro-cam”)系统中的延时的方法和系统。

作为初步事项,附图中的一些附图描述在被称为功能、模块、特征、元件等的一个或多个结构部件的上下文中的概念。附图中示出的各种部件可以以任何方式来实现,例如通过软件、硬件(例如,分立逻辑部件等)、固件等、或这些实现方式的任何组合来实现。在一个实施例中,各种部件可以反映在实际的实现方式中对应的部件的使用。在其他实施例中,在附图中图示的任何单个部件可以由许多实际的部件来实现。在附图中对任何两个或更多个单独的部件的描绘可以反映由单个实际的部件执行的不同功能。下面讨论的图1提供关于可以被用于实现附图中示出的功能的一个系统的细节。

其他附图以流程图形式描述了概念。以这种形式,某些操作被描述为构成以某个顺序执行的不同的块。这样的实现方式是示例性的而非限制性的。本文描述的某些块可以被归并到一起并且在单个操作中来执行,某些块可以被分解成多个分量块,并且某些块可以以与本文图示的顺序不同的顺序(包括执行块的并行方式)来执行。流程图中示出的块可以由软件、硬件、固件、人工处理等或者这些实现方式的任何组合来实现。如本文中所使用的,硬件可以包括计算机系统、诸如专用集成电路(ASIC)等之类的分立逻辑部件、以及其任何组合。

关于术语,短语“被配置为”包含任何种类的结构部件可以被构建以执行标识的操作的任何方式。结构部件可以被配置为使用软件、硬件、固件等或其任何组合来执行操作。

术语“逻辑”包含用于执行任务的任何功能。例如,流程图中图示的每个操作对应于用于执行该操作的逻辑。操作可以使用软件、硬件、固件等或其任何组合来执行。

如本文中使用的,术语“部件”、“系统”、“客户机”等旨在是指计算机相关的实体、硬件、(例如,执行中的)软件、和/或固件、或其组合。例如,部件可以是运行在处理器上的过程、对象、可执行文件、程序、功能、库、子例程、和/或计算机、或者软件和硬件的组合。通过说明的方式,运行在服务器上的应用和服务器两者都可以为部件。一个或多个部件可以驻存在过程内,并且部件可以被局部化在一个计算机上和/或被分布在两个或更多个计算机之间。

如本文中使用的,术语“投影(projection)”或“投影(projecting)”旨在包括使用光将图像投影到物理表面上以及图像与增强现实设备内的其他图像的搭配。

另外,要求保护的主题可以使用标准编程和/或工程技术而被实现为方法、装置、或制品,以产生软件、固件、硬件、或其任何组合来控制计算机实现所公开的主题。如本文中所使用的术语“制品”旨在包含可由任何计算机可读设备或介质访问的计算机程序。

计算机可读存储介质可以包括但不限于磁存储设备(例如硬盘、软盘、以及磁带条、以及其他)、光盘(例如,紧凑盘(CD)、以及数字多用盘(DVD)、以及其他)、智能卡、以及闪存设备(例如,卡、棒、以及键驱动器、以及其他)。对比之下,计算机可读介质一般地(即不是存储介质)可以附加地包括诸如用于无线信号的传输介质等之类的通信介质。

图1是可以降低相机投影延时的影响的计算系统的示例的框图。计算系统100可以例如为虚拟现实设备、移动电话、膝上型电脑、台式电脑、或平板电脑、游戏系统、或相机投影系统、以及其他。相机投影系统可以包括增强现实设备和支持增强现实设备的任何适当类型的计算设备,例如移动设备、台式电脑、游戏系统等。计算系统100可以包括适于执行存储的指令的处理器102以及存储可由处理器102执行的指令的存储器设备104。处理器102可以为单核处理器、多核处理器、计算集群、或任何数量的其他配置。存储器设备104可以包括随机访问存储器、只读存储器、闪存、或任何其他适当的存储器系统。由处理器102执行的指令可以被用于降低由系统内的各种硬件部件引起的延时的影响。

处理器102可以通过系统总线106(例如NuBus等)连接到相机设备接口108,相机设备接口108适于将计算系统100连接到一个或多个相机设备110。相机设备110可以例如为网络摄像头、姿势识别输入设备、数码单反相机、或数码傻瓜相机、以及其他。相机设备110可以是计算系统100的内置部件,或者可以为在外部连接到计算系统100的设备。

处理器102还可以通过系统总线106被链接到投影接口112,投影接口112适于将计算系统100连接到投影设备114。投影设备114可以包括作为计算系统100的内置部件的半透明显示屏或投影仪。投影设备114还可以为虚拟现实头戴部件、一副数字眼镜或护目镜、以及具有在外部连接到计算系统100的半透明屏幕的其他设备。在一些示例中,投影设备114可以为连接到投影接口112的投影仪。在一些示例中,投影设备114可以为增强现实设备的一部分。

处理器102还可以通过系统总线106通过传感器接口116被链接到一个或多个传感器。在一些示例中,传感器可以被集成到投影设备中。在一些示例中,传感器可以在投影设备的外部。在一些示例中,传感器可以包括输入设备,诸如键盘、鼠标、游戏板等。网络接口卡(NIC)120还可以适于将计算系统100通过系统总线106连接到(未描绘出的)网络。在一些示例中,相机投影系统100可以通过网络连接到另一相机投影系统100。

存储设备122可以包括硬盘驱动器、光学驱动器、USB闪盘驱动器、驱动器阵列、或其任何组合。存储设备122可以包括跟踪模块124、内容模块126、预测模块128以及移动存储设备130。在一些实施例中,跟踪模块124可以跟踪至少一个移动对象的移动。例如,跟踪模块可以分析来自相机100的记录的帧的集合并确定帧内的对象的位置、速度和加速度。在一些示例中,跟踪模块124可以同时跟踪多个对象的路径。在一些示例中,跟踪模块124可以跟踪对象的移动。在一些示例中,移动可以是对象的路径的重复的区段。在一些示例中,这些移动可以包括在对象之间的重复的交互。例如,球可以由球拍击中。在一些示例中,这些移动可以包括在对象与图像之间的重复的交互。例如,球的图像可以由球拍击中。在一些实施例中,跟踪模块124可以跟踪投影设备114的移动。例如,跟踪模块124可以通过内置到投影接口112中的移动传感器118来跟踪投影设备114的移动。例如,移动传感器输入可以是来自内置到投影设备中的陀螺仪、加速度计或罗盘等的信息。

在一些实施例中,内容模块126可以包含交互式图像以与对象交互。在一些示例中,交互式图像可以是要使用投影设备114被投影到移动对象的表面上的图像。例如,投影设备114可以是将图像显示到移动对象上的投影仪。在一些示例中,图像可以通过将图像投影到半透明表面上与对象交互。例如,半透明表面可以是一副眼镜或护目镜等。在一些示例中,半透明表面可以处在增强现实头戴部件内。在一些示例中,内容模块126可以调节图像的外观使得图像可以被准确地投影到目标移动对象的表面或半透明表面上。

在一些实施例中,预测模块128可以自动地计算系统延时。例如,预测模块128可以使得投影设备114将测试图像投影到移动对象上,并且使得相机110捕获测试图像和移动对象的预定量的帧,以便计算系统延时。系统延时可以例如通过以下方式来计算:基于假定的延时的范围来投影图像并且计算在投影的中心与移动对象的所跟踪的中心之间的距离误差。例如,延时范围可以以毫秒、秒、或任何其他适当的时间度量来测量。在一些示例中,预测模块128可以在对相机投影系统进行供电时计算系统延时。在一些示例中,系统延时可以被连续地重新计算。

在一些实施例中,预测模块128可以计算针对对象的预测的路径。该预测的路径可以由预测模块128使用物理学定律来计算。例如,投影运动可以使用重力的加速度来计算,并且液体运动可以使用流体动力学定律来计算。在一些示例中,预测的路径可以使用卡尔曼(Kalman)滤波器来计算。在一些示例中,卡尔曼滤波器可以被用于解释传感器噪声和抛射式移动中的不确定性。例如,卡尔曼滤波器可以递归地并入如由跟踪模块124记录的对象的所有已知先前位置、速度和加速度,并且基于由于噪声引起的观察的加权的不确定性和由于实际路径与物理学定律的偏差引起的预测的加权的不确定性来预测未来的位置、速度和加速度。

在一些实施例中,预测模块128使用移动存储设备130。该移动存储设备130可以例如包含如由跟踪模块124记录的对象的位置、速度和加速度信息。在一些示例中,移动存储设备130可以由预测模块128用作查找表以降低由对象的路径与预测的路径的大的偏差引起的延时的影响。在一些实施例中,预测模块128可以基于目标对象与其交叉路径的其他对象的路径来生成针对目标对象的半预测的路径。例如,预测模块128可以确定与对象的当前位置相对应的移动存储设备130中的先前记录的位置。在一些示例中,直接位置比较可以通过在对象的最后位置与移动存储设备130中的先前位置之间的距离进行加权。例如,在最后三个位置与移动存储设备130中的先前三个位置之间的距离可以由预测模块128计算。如果距离低于预定义阈值,则该位置可以被用作开始值,从该开始值继续进行通过移动存储设备130以到达半预测的位置。如果距离满足预定义阈值,则预测模块128可以找到另一位置作为开始值,或等待跟踪模块将更多的对象移动添加到移动存储设备130。

在一些实施例中,预测模块128可以使用卡尔曼滤波器来确定对象的半预测的路径。在一些示例中,卡尔曼滤波器可以针对抛射式移动中的任何程度的不确定性而进行加权。例如,卡尔曼滤波器可以基于加速度中的观察到的偏差而被分配以加速度中的高不确定性。

在一些实施例中,移动存储设备130由跟踪模块124在对系统进行供电时创建。在一些实施例中,移动存储设备130可以在对系统断电之前被存储,以便允许对象移动的较大历史以获得改进的性能。

要理解,图1的框图不旨在指示计算系统100要包括图1中示出的所有部件。相反,计算系统100可以包括未图示在图1中的更少或附加的部件(例如,附加的应用、附加的模块、附加的存储器设备、附加的I/O设备等)。另外,跟踪模块124、内容模块126、或预测模块128中的功能中的任何功能可以被部分地或全部地实现在硬件中和/或处理器102中。例如,功能可以利用专用集成电路来实现、被逻辑实现在处理器102中、或者被实现在任何其他设备中。

图2是用于降低针对具有可预测路径的对象的相机投影系统延时影响的示例方法的过程流程图。方法200可以利用任何适当的计算设备(例如,图1的计算设备100)来实现。

在块202处,相机100可以记录一个或多个移动对象的多个帧,其中移动对象中的至少一个移动对象是要具有投影在其上的图像的目标对象。移动对象可以包括图像可以被投影到其上的、正根据可预测路径移动的任何物理对象。在一些示例中,对象可以正根据万有引力定律或流体动力学在运动中移动。例如,对象可以是已经被推入到空气中的球或者任何其他适当的对象。在一些示例中,对象可以正根据一些其他物理学定律来移动。在一些示例中,对象可以正跟随人体的运动学。

在块204处,跟踪模块124可以分析一个或多个移动对象的所记录的帧以确定目标对象的预测路径。在一些示例中,预测路径可以通过比较两个或更多个帧内的移动对象的位置来确定。例如,可以将一个对象的中心与另一帧中的相同对象的中心进行比较以确定对象的位置和速度。在一些示例中,跟踪模块124可以从所记录的帧确定可以作为相对于相机的位置的相对位置和每个对象的初始速度。在一些实施例中,卡尔曼滤波器可以被用于提供更准确的结果。卡尔曼滤波器可以利用观察到的位置来递归地更新预测的路径以增加预测路径的准确性。在一些示例中,可以基于对象的观察来更改卡尔曼滤波器的过程和观察噪声的值。在一些示例中,卡尔曼滤波器的预测值可以由于对象的路径的观察到的可预测性而被给予比较低的值。例如,在针对在时间t处的位置xt、速度vt以及加速度at、目标对象的位置的观察zt、xt-1给出的xt的值的预测x*t以及卡尔曼增益kx、kv、ka的下面的示例更新方程中,卡尔曼滤波器可以针对x*t(预测)值中的不确定性被给予相对低的值,其中“*”表示逐元素运算而其他操作是向量运算:

在一些示例中,卡尔曼滤波器可以利用针对特定类型的运动的预设计模型来拟合。例如,卡尔曼滤波器可以利用基于初始发射速度和释放角的抛射式运动模型来拟合。在一些示例中,移动模型可以基于根据某一物理学定律观察到的移动而被改变或与其他模型组合。

在块206处,内容模块126可以使得投影设备114使用目标对象的预测路径来将图像投影到目标对象上,以补偿预定系统延时。在一些示例中,可以在设备被打开之后但是在图像被显示之前,确定预定系统延时。例如,内容模块126可以使得测试图像被显示到移动对象上并记录若干帧以分析各种延时设置的偏移,直到达到局部最小值。然后系统可以将局部最小延时设置设置为预定系统延时设置。

在块208处,相机110可以记录目标对象和图像的多个帧。在一些示例中,多个帧可以被存储在移动存储设备130中。

在块210处,预测模块128可以调节目标对象的预测路径,直到在目标对象与图像之间的偏移低于预定阈值。在一些示例中,偏移是投影系统中的延时的影响,这导致图像被投影在与目标移动对象不同的位置处。在一些示例中,该偏移可以通过首先确定目标对象的中心和图像的中心来计算。在一些示例中,该偏移被输入到卡尔曼滤波器中以用于在确定该偏移是否满足预定阈值之前进行进一步处理。例如,如果对象显示可预测的路径,则卡尔曼滤波器可以结合基于物理学的模型工作。

在一些示例中,预测模块128可以基于块208的多个记录的帧来确定目标对象的预测路径是否是可预测的。在一些示例中,预测模块128可以基于从先前记录的帧获得的反馈来确定预测的路径是可靠的。然后预测模块128可以相应地调节卡尔曼滤波器中的不确定性。例如,如果预测不确定性是低的,则可以相应地调节方程(1)、(2)和(3)的预测不确定性变量x*t。如果观察噪声是高的,则可以相应地调节方程(1)、(2)和(3)的观察不确定性变量zt。例如,如果光水平波动并影响跟踪模块分析移动对象的能力,则观察不确定性可以是高的。对应的不确定性变量zt将针对该波动而被调节。

在一些示例中,预测模块128可以将卡尔曼滤波器应用到目标对象的预测的路径。然后内容模块126可以基于由经调节的卡尔曼滤波器创建的预测路径来开始将图像投影到目标对象上。

图2的过程流程图不旨在指示方法200的步骤要以任何特定顺序来执行,或者方法200的所有步骤要在每种情况下都被包含。另外,取决于特定应用,任何数量的附加的步骤可以被包含在方法200内。例如,预测模块128和跟踪模块124还可以生成要由内容模块126在对图像进行初始投影时使用的自动调谐的系统延时。例如,投影设备114可以以各种延时调节将测试图像显示到移动对象上,并且相机110可以捕获帧并将帧发送到跟踪模块124。然后跟踪模块可以确定局部最小值,延时影响以该局部最小值通过特定延时调节被最小化。然后该特定延时调节可以被用作用于系统使用的基本延时调节。

图3是用于降低针对具有半可预测的路径的对象的相机投影系统延时影响的示例方法的过程流程图。方法300可以利用任何适当的计算设备(诸如图1的计算设备100)或使用图5的示例计算机可读存储介质500来实现。

在框302处,跟踪模块124可以分析一个或多个移动对象的多个记录的帧以确定它们的路径。在一些示例中,分析帧可以涉及使用物理模型。在一些示例中,这可以涉及使用卡尔曼滤波器,如在方法200的块204中讨论的。在一些示例中,运动学运动模型可以与卡尔曼滤波器一起使用。例如,运动学运动模型可以利用诸如人类关节旋转限制之类的因素来改进对象路径预测。

在块304处,跟踪模块124可以创建移动存储设备130并将移动对象的特定移动存储在移动存储设备130中。在一些示例中,移动可以是被重复的对象路径的部分。在一些示例中,移动对象的路径可以被记录预定时间段,其中预定时间段可以为任何适当数量的秒或每秒的帧。例如,在以高频率执行的杂技移动的情况下,针对给定移动的时间量可以仅仅为三秒,或以每秒30帧的90帧。在一些示例中,对象路径可以被记录直到某个数量的移动被确定。在一些示例中,对象路径可以被连续地记录以使移动存储设备中的可用移动最大化。

在块306处,预测模块128可以处理路径以确定在相交的路径之间的任何相关性以生成半预测的路径。在一些示例中,可以基于特定人的运动来创建模型,并存储模型以用于稍后使用。例如,对象可以是挥动球棒的人。人的特定挥动移动可以被存储并稍后被用于当同一个人再次挥动时更准确地降低延时的影响。在一些示例中,可以针对特定对象和其可以与之交互的其他对象的移动来创建模型。例如,针对球的模型可以具有针对与球棒、网球拍、手等的交互而记录和存储的移动。

在块308处,内容模块126可以使得交互式图像使用目标移动对象的半预测的路径与目标移动对象交互。在一些示例中,交互式图像可以是到表面上的投影图像。例如,投影仪可以将笑脸投影到运动中的球上。在一些示例中,交互式图像可以是半透明表面上的投影。例如,交互式图像可以被示出在增强现实设备内,增强现实设备可以将交互式图像显示到半透明屏幕上,半透明屏幕允许目标移动对象与在其前方看到的图像交互。在一些示例中,内容模块126可以使用对象模型来创建半可预测的路径。例如,球的半可预测的路径可以基于包括尝试击中球的球拍的过去的挥动的模型。模型中的过去的挥动可以被用于当球拍在其路径的方向上被挥动时创建针对球的半可预测的路径。

在块310处,相机110可以记录目标移动对象和交互式图像的多个帧。在一些示例中,相机可以是连接到相机接口的一个或多个外部相机。在一些示例中,一个或多个相机可以被内部地适配到投影设备。例如,虚拟现实设备可以具有允许系统分析用户可以感知的图像的交互的相机机制。

在块312处,预测模块128可以确定在目标移动对象与图像之间的偏移并调节交互式图像的投影。在一些示例中,该偏移可以在目标移动对象的所确定的中心与交互式图像的中心之间来测量。在一些示例中,该偏移可以在卡尔曼滤波器中处理。

在块314处,预测模块128可以分析与投影设备的移动相关的传感输入,并针对投影设备的移动调节交互式图像的投影。在一些示例中,跟踪模块124可以从传感器118接收传感输入并且将该信息发送到预测模块128。然后预测模块128可以基于该移动信息来重新计算半预测的路径。然后内容模块126可以调节要被显示在投影设备114上的交互式图像。

图4是用于降低针对具有可预测的路径和半可预测的路径两者的对象的相机投影系统延时影响的示例方法的过程流程图。方法400可以利用任何适当的计算设备(诸如图1的计算设备100)来实现。

在块402处,跟踪模块124和预测模块128可以针对系统延时自动地调谐投影。在一些示例中,如以上块206中的,调谐可以通过使用不同的延时校正设置来将测试图像投影到移动对象上并找到局部最小值来完成。在一些示例中,系统延时可以是系统的总延时,系统包括任何外部附接的传感器118、投影设备114、以及相机110。

在块404处,相机可以记录至少一个移动对象的多个帧,其中移动对象中的至少一个移动对象是要与交互式图像交互的目标对象。在一些示例中,移动对象可以是球拍、或具有可预测的或半可预测的移动的任何其他对象。例如,目标移动对象可以是其可以与球的交互式图像交互的球拍。

在块406处,预测模块128可以分析至少一个移动对象的所记录的帧以确定目标对象路径是可预测的还是半可预测的。如在200和300的上述示例中,移动对象可以正在可预测的路径或半可预测的路径中移动。例如,在可预测的路径中移动的对象可以正根据某种物理学定律沿着一路径移动。在半可预测的路径中移动的对象可以是正由人的手臂挥动的球拍。

在块408处,如果目标对象路径是可预测的,内容模块126可以使得交互式图像使用目标对象的预测路径与目标对象交互。在一些示例中,预测模块可以确定针对目标对象要使用哪个预测的路径(如果有的话)。例如,如果目标对象正根据某种物理学定律而沿着可预测的路径移动,则预测模块可以选择使用基于物理学的适当模型的针对对象的预测路径。

在块410处,如果目标对象路径是半可预测的,内容模块126可以使得交互式图像使用目标对象的半可预测的路径与目标对象交互。在一些示例中,预测模块可以确定目标对象的路径在规律的时间间隔或位置处与另一对象的路径相交。在一些示例中,目标对象可以与交互式图像相交路径。例如,球的交互式图像可以由玩家在相同位置处通过球拍击中。预测模块可以使用球拍的过去的挥动作为用于确定在球拍被再一次挥动之后的球的交互式图像的路径的模型。

在块412处,预测模块128可以调节针对投影设备的移动的交互式图像。在一些示例中,交互式图像可以被显示在增强现实设备中。设备内的传感器118可以通过传感器接口116将信息发送到跟踪模块124。例如,如果人在穿戴增强现实设备的同时转动他们的头部,则诸如罗盘或陀螺仪之类的传感器可以感测该移动并将该信息发送到跟踪模块124。然后预测模块128可以将该信息发送到内容模块126以对交互式图像校正移动的感测到的量。

图5是示出了可以被用于降低投影系统中的延时的影响的示例计算机可读存储介质的框图。计算机可读存储介质500可以由处理器102通过计算机总线106访问。另外,计算机可读存储介质500可以包括指引处理器102执行当前方法的步骤的代码。具体地,计算机可读存储介质500可以包括跟踪模块124、内容模块126、以及预测模块128。在一些示例中,跟踪模块124可以跟踪对象的路径和移动并将移动存储在移动存储设备130中。在一些示例中,内容模块126可以包含要被叠加在对象上的或要被投影到半透明表面上的交互式图像。在一些示例中,内容模块可以调节交互式图像以恰当地将图像叠加在对象上。在一些示例中,预测模块128可以计算系统延时。在一些示例中,预测模块128可以计算系统延时。在一些示例中,预测模块128可以基于系统延时来创建针对对象的可预测的路径或半可预测的路径。在一些示例中,预测模型128可以使用卡尔曼滤波器和物理学模型来创建针对对象的可预测的路径或半可预测的路径。

要理解,取决于具体应用,未示出在图5中的任何数量的附加软件部件可以被包含在计算机可读存储介质500内。尽管已经以对结构特征和/或方法特定的语言描述了本主题,但是要理解在所附权利要求中限定的主题不必限于以上描述的具体结构特征或方法。相反,以上描述的具体结构特征和方法被公开作为实现权利要求的示例形式。

图6是示出了不同水平的相机投影系统延时降低的示例的四张图片的集合。在图6的示例中,目标球正由手被推入到空气中。在图片602中,系统延时存在,并且图像在球之后迟滞大约球的直径。在一些示例中,跟踪模块124可以分析由相机110记录的帧。在图片604中,延时降低系统100降低将图像投影在球上的延时大约33%。在图片604中,图像现在处在球的直径距离内。在一些示例中,预测模块128可以已经基于由于重力的加速度的物理学模型来确定针对球的预测的路径。内容模块126可以基于预测的路径和33%的延时降低设置来部分地调节图像。在图片606中,系统100降低延时大约66%。在一些示例中,内容模块126现在可以基于相同的预测的路径和66%的延时降低设置来调节图像。例如,图像现在几乎被显示到球上,然而,图像仍然被投影到球后面的墙上。在图片608中,系统100降低延时大约100%。在一些示例中,内容模块126可以基于相同的预测的路径和100%的延时降低设置来调节图像。在示例中,现在图像在球上,其中图像的少量部分仍然被投影到在球后面的墙上。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1