使用神经数据改变应用状态的制作方法

文档序号:16366098发布日期:2018-12-22 08:26阅读:161来源:国知局
使用神经数据改变应用状态的制作方法

可以通过各种技术来采集神经数据。一种无创技术是脑电图描记法(eeg),其涉及沿着用户或者受检者的头皮放置电极来测量源自大脑的神经元内的离子电流的电压波动。eeg常常被使用在临床上下文中来监测睡眠模式或者诊断癫痫症。

一些计算机应用包括各种应用状态,其中相同的用户输入可操作以取决于当用户输入被接收时应用处于的特定应用状态而引起应用内的不同的功能。通过示例,“单击并拖动”输入的组合可操作以取决于输入被接收时应用的状态而执行一些3d建模软件内的各种不同的功能(例如,选择并且移动对象、旋转对象、在对象上画线、在应用上定义边缘、从对象挤压表面,等等)。

当用户期望执行与当前应用状态不关联的特定操作时,用户必须通过做出特定菜单选择或者通过以其他方式提供可操作以将应用改变到期望的应用状态的输入来从当前应用状态手动地改变到另一应用状态。

在此要求保护的主题不限于解决上文所描述的任何缺点或者仅在上文所描述的环境中操作的实施例。相反,该背景技术仅被提供以说明其中可以实践在此所描述的一些实施例的示例性技术区域。



技术实现要素:

本公开涉及被配置用于促进应用状态改变的计算机系统、方法和计算机存储介质。在一些实施例中,利用检测到的与特定应用状态的特定操作相关联的神经用户意图数据来执行状态改变,并且改变应用状态以便实现执行由用户意图的特定操作并且不要求用户手动地改变应用状态。在一些实施例中,应用状态自动地被改变以与由接收到的神经用户意图数据所确定的意图操作对齐。

一些实施例包括操作应用的计算机系统,应用被配置为改变状态并且当在第一状态中时响应于检测到特定姿态而执行第一操作并且当在第二状态中时响应于检测到特定姿态而执行第二操作。当在第一状态中时,计算机系统检测与第二操作相关联的神经用户意图数据。作为响应,计算系统将应用从第一状态改变到第二状态,实现执行意图的第二操作并且不要求用户输入手动地改变应用状态。

一些实施例涉及一种生成或者更新被配置为根据检测到的神经数据改变应用的状态的状态机的计算机系统。计算机系统将不同的应用操作的集合与应用状态的对应集合相关联。特定姿态使得应用基于对应的应用状态来执行操作集的特定操作。计算机系统检测当用户正执行特定姿态以致动第一操作时生成的第一神经用户意图数据,并且检测当用户正执行特定姿态以致动第二操作时生成的第二神经用户意图数据。计算机系统随后映射或者以其他方式在适当的存储的数据结构内将第一神经用户意图数据和第二神经用户意图数据与第一操作和第二操作分别地相关联。

一些实施例涉及一种通过检测当用户将应用改变到特定状态以便执行期望的特定操作时由用户所生成的第一神经用户意图数据并且通过检测在致动特定操作的姿态的执行期间由用户所生成的第二神经用户意图数据来生成或者更新状态机的计算机系统。计算机系统然后映射或者以其他方式在适当的存储的数据结构内将第一神经用户意图数据与特定应用状态相关联并且将第二神经用户意图数据与特定操作相关联。

提供本发明内容以引入以在具体实施方式中下面进一步描述的简化形式的概念的选择。本概述不旨在标识要求保护的主题的关键特征或基本特征,其也不旨在被用作辅助确定要求保护的主题的范围。

附加特征和优点将从下面的描述中被阐述并且部分地将从描述显而易见或者可以由本文中的教导的实践学习。可以借助于在所附的权利要求书中特别地指出的装置和组合实现和获得本发明的特征和优点。

附图说明

为了描述可以获得上文记载和其他优点和特征的方式,上文简要描述的主题的更特定描述将通过参考在附图中图示的特定实施例而被提供。理解这些附图描绘仅典型的实施例并且因此将不被认为是对范围的限制,通过使用附图利用附加的特殊性和细节将描述和解释实施例,其中:

图1图示了可以被用于使用神经用户意图数据改变应用的状态的计算机系统;

图2图示了用于使用神经用户意图数据改变应用的状态的示例性方法的流程图;

图3图示了用于生成或者管理状态机的示例性方法的流程图;

图4图示了用于生成或者管理状态机的示例性方法的流程图;

图5a至图5d图示了用于自动改变示例性应用的状态以实现执行如使用神经用户意图数据所确定的意图的应用操作的状态机的操作;以及

图6图示了使用神经用户意图数据明确地改变示例性应用的状态的状态机的操作。

具体实施方式

本公开涉及用于通过检测与特定应用状态的特定操作相关联的神经用户意图数据改变应用的状态并且用于改变应用状态以便实现执行由用户意图的特定操作的计算机系统、方法和计算机存储介质。

在一些实施例中,神经用户意图数据与根据应用的当前状态而引起应用操作集中间的不同应用操作的特定姿态相关联。在一些实施例中,应用状态响应于接收到的神经用户意图数据而被自动改变,并且与神经用户意图数据相关联的特定操作响应于接收到神经用户意图数据而被自动执行。

可以通过实现所公开的实施例的方面来实现各种技术效果和益处。例如,一些所公开的实施例可操作以促进用于具有多个状态的计算机应用的应用状态的有效选择和/或改变。这对于在其中相同或者相似的姿态将取决于不同的应用状态设置而选择性地引起不同的操作的执行的应用可以是特别地有益的。神经用户意图数据的使用可以帮助通过至少减少必须被录入并且被处理用于改变状态的手动输入的数目来促进不同的状态和/或功能的用户选择。

通过示例,所公开的实施例中的至少一些实施例实现具有多个状态的计算机应用的有效使用,特别地其中相同或者相似的姿态根据应用的特定状态设置引起不同的操作的执行。例如,在应用包括取决于应用的特定状态设置的单个姿态的动作的多个模式的情况下,先验计算机系统的用户被要求在状态设置之间手动地切换,以通常通过麻烦的菜单导航步骤来执行不同的期望的操作,即使操作通过相同的用户姿态而被致动。这延长使用应用执行期望的任务所花费的时间,因为用户被要求以访问菜单选项或者使用某个其他手动选择过程以在多个状态之间切换以允许期望的操作的序列被执行。相反,所公开的实施例提供更有效的系统并且提供增加的用户方便。

进一步地,在至少一些情况下,在不实现应用目前处于将不同的动作模式与执行的姿态相关联的状态的情况下,当用户利用引起特定操作的执行的意图来执行姿态时,会发生错误。用户将从而非故意地引起不期望的操作的执行。除添加到用户挫折之外,这样的过失要求附加的操作步骤来取消、减轻或者以其他方式固定操作错误,这添加了计算机系统处理要求和处理时间。

相反,所公开的实施例中的一个或多个实施例实现对于意图的应用状态的自动改变,使得甚至在不要求用户手动改变应用状态的情况下执行意图的操作。所公开的实施例因此可用于利用具有不同的状态的应用改进整体用户体验并且其响应于根据操作的不同模式的一个或多个姿态。错误减少可以减少用户挫折以及减少实现给定操作集所涉及的计算机处理量。进一步地,即使在其中用户小心并且错误最少的情况下,在此所公开的实施例可用于通过减少或者消除在不同的期望的操作之间的应用状态之间手动地切换的需要实现期望的结果所要求的时间和步骤总数。

如在此所使用的,术语“姿态(gesture)”包括由用户的一个或多个身体部分做出的移动和运动。在一些实施例中,姿态不需要实际上由用户物理地执行来给定功能效果。例如,在一些情况下,对应于物理姿态的神经用户意图数据当用户以被截肢者可能考虑移动截肢的肢体相同的方式考虑和/或聚焦于移动时而被生成。

在一些实施例中,在没有任何附加的输入硬件的伴随的情况下,执行姿态。这样的姿态包括例如手指挤压运动、手指或手滑动运动、指点姿态、头部运动(例如,头部的倾斜、转动或者点头)、肢体运动(手臂或腿的举起或放下、关节的弯曲或伸展、手或脚的旋转)、指头运动(例如,手指和/或脚趾运动)、面部运动(例如,微笑、皱眉、故意地眨眼)、全身运动(例如,蹲下、扭转躯干、弯腰、跳跃)、前述内容的组合或其他运动。

在备选实施例中,姿态结合一个或多个输入硬件部件而被执行。这样的姿态包括例如键盘笔划、触摸屏或触摸板滑动或点击、鼠标控制器点击、点击并拖动移动、滚轮转动移动、在游戏控制器上推动的按钮、旋转或者倾斜加速度计和/或使用一个或多个输入硬件执行的其他姿态。

在一些实例中,姿态限于单个独立动作。在其他实施例中,姿态包括上文所描述的多个姿态集合的组合。在这样的实例中,组合姿态将通常但是不必对应于多个相关功能的对应的集合(例如,选择、移动和合并组合)。在其他实施例中,组合姿态将仅对应于单个功能。

用于生成神经用户输入数据的神经信号可以使用eeg而被采集。补充或者取代eeg,其他实施例利用通过其他装置采集的神经数据,诸如脑磁图描记术(meg)、功能磁共振成像(fmri)或者用于采集基于上下文的神经数据的其他技术。在目前优选的实施例中,还使用无创eeg技术。然而,将理解到,本公开的范围还覆盖在其中描述/要求保护的eeg传感器利用meg、fmri和/或其他基于上下文的神经数据被替换和/或被补充的实施例。

在本描述中并且在权利要求中,术语“计算系统”或“计算机架构”宽泛地被定义为包括任何(一个或多个)单独或者分布式设备和/或(一个或多个)系统,其包括至少一个物理和有形处理器,以及能够在其上具有可以由(一个或多个)处理执行的计算机可执行指令的物理和有形存储器。

图1图示了被配置用于响应于接收到的神经用户意图数据来改变应用的状态的示例性计算机系统100。如所示,所图示的计算机系统100包括存储器102和至少一个处理器104。将理解到,虽然仅示出单个处理器104,然而,系统100还可以包括多个处理器。存储器102可以是物理存储器系统,其可以是易失性、非易失性或者二者的某种组合。术语“存储器”还可以在此被用于指代非易失性海量存储装置(诸如物理存储介质)。

所图示的实施例包括通过其用户向计算机系统100提供神经输入的eeg传感器120。计算机系统100可选地包括其他输入/输出硬件106,包括一个或多个键盘、鼠标控制、触摸屏、麦克风、扬声器、显示屏、轨迹球、滚轮等,以实现从用户接收信息并且用于将信息显示并且以其他方式传递给用户。

所图示的计算机系统100还包括能够在计算机系统100上操作的应用130。如所示出的,应用130包括若干不同的应用状态132a到132n(总称为状态132),以及若干应用操作134a到134n(总称为操作134)。应用操作134中的一个或多个与特定应用状态或者应用状态132的集合相关联,使得一个或多个应用操作134仅当应用处于相关联的应用状态时才是可操作的。

应用130可以是3d建模软件或者其他建模软件、视频游戏、虚拟现实或者增强现实模拟器、视听服务、文字处理器、电子表格应用、网络浏览器、数据库管理器、用于控制(例如,用于移动和操作机器人臂或者其他机器)机械工具和/或其他机器的应用,或者具有多个不同的应用状态并且能够执行不同的状态内的不同的操作的任何其他应用。

操作可以包括对象移动操作、建立操作、编辑操作、动画或者致动操作、数据输入或者输出操作、显示操作、音频操作、字符/对象运动或者控制操作、菜单操作、导航操作、处理操作、或者在应用130内可执行以调制输入或者输出、设置、响应(例如,视觉、听觉和/或机械响应)等的其他操作。虽然在该实施例中示出了单个示例性应用130,然而,将理解到,多个不同的应用还可以被包括和/或被添加到计算机系统100。

计算机系统100包括可执行模块或者可执行部件112和114。如在此所使用的,术语“可执行模块”或者“可执行组件”可以指代可以在计算系统上执行的软件对象、路由或者方法。在此所描述的不同的组件、模块、引擎和服务可以被实现为在计算系统上执行的对象或者过程(例如,分离的线程)。

所图示的计算机系统100包括通信信道108,其使得计算系统100能够与一个或多个分离的计算机系统通信。例如,计算机系统100可以是网络110的一部分,其可以被配置为例如局域网(“lan”)、广域网(“wan”)或者因特网。在一些实施例中,计算机系统100与由多个分离的计算机系统150a到150n所指示的分布式计算机系统150通信和/或是其一部分,计算机系统150a到150n中的每个计算机系统可以包含全部地或者部分地示出在系统100中的所公开的部件中的一个或多个,诸如存储器部件、应用部件中的一个或多个或者其他部件中的任一个。

图1中所图示的各种部件仅表示被配置用于生成实现根据接收到的用户意图数据改变应用状态的状态机的集成计算机系统的几个示例实现。其他实施例可以在附加的计算机系统中间不同地划分所描述的存储器/存储装置、模块、部件和/或功能。例如,在一些实施例中,训练模块112和状态机114被包括在不同的计算机系统和/或位置中,然而,在其他实施例中,他们被包括在如所图示的相同的独立计算机系统中。

在一些实施例中,跨分布式环境中的多个构成计算机系统来分布存储器部件和/或程序模块。在其他实施例中,存储器部件和程序模块被包括在单个集成计算机系统中。因此,在此所描述的系统和方法不旨在基于所描述的部件被定位和/或其功能被执行的特定位置而被限制。

根据所图示的实施例,存储器102被用于存储数据和记录,诸如所图示的神经用户意图数据102a、姿态库102b、应用操作库102c、应用状态库102d和训练简档102e。如下文更详细地解释的,本公开的一个或多个实施例被配置为接收神经用户意图数据102a(例如,如从传感器102接收到的),以及将用户意图数据102a与对应的应用操作102c和被用于致动应用操作102c的对应的姿态102b相关联。

在许多实例中,单个姿态将与根据姿态被执行时的应用状态区分的多个应用操作有关。因此,至少一些实施例将应用操作102c与应用状态102d相关联。在一些实例中,通过使用在此所描述的实施例做出的各种关联被存储在如所示的训练简档102e中。在其他实施例中,训练简档102e和/或在图1中所示的其他数据元素被存储在远程于计算机系统100的一个或多个位置处。例如,训练简档102e可以被存储在(在必要时)访问和应用训练简档102e的第三方服务器(例如,游戏服务器)处。

在一些实施例中,训练简档102e根据个体用户、个体用户组(例如,家庭简档)、个体应用和/或应用集而被分解以便例如实现基于神经信号生成中的个体差异形成更微调的简档。

所图示的计算机系统100包括训练模块112,其被配置为生成、更新和/或管理状态机114。状态机114被配置为从传感器120接收神经用户意图数据,以及将用户意图数据转译为用于根据接收到的神经用户意图数据改变应用130的应用状态的应用指令。

训练模块112被配置为检测神经用户意图数据并且将用户意图数据与对应的应用操作相关联。例如,在一些实现中,训练模块112结合训练应用或训练向导操作以提供一系列指令和/或提示,以通过用于特定应用或应用集的训练过程引导用户。在一个示例中,提示引导用户以当训练模块112监测由用户所生成的对应的神经数据时执行特定应用操作。备选地或者附加地,训练模块112当用户运行应用130时在背景中运行,其运行以监测应用活动和在应用130的正常使用期间由用户所生成的对应的神经信号。在使用期间,当用户执行致动特定对应的操作的姿态时,由用户所生成的神经签名与特定应用操作相关联。

虽然特定姿态可以致动多个不同的应用操作,如上文所描述的,与不同操作中的至少一些操作相关联的所生成的神经用户意图数据包括基于以下事实的可检测的差异:用户当根据用户在做姿态时知道的特定应用状态执行特定姿态时意图不同的效果。即使不同的操作依赖于用于致动的相同的基础姿态,对应于特定应用的所生成的用户意图数据从而提供用于在不同的应用操作期间区分的装置。通过将神经用户意图数据与应用操作相关联,并且通过将应用操作与在其内可操作的应用状态相关联,神经用户意图数据可用于将应用状态与用户的意图相对齐,以便执行正确和期望的应用操作。

在一些实施例中,训练模块112还被配置为解析应用130来确定依赖于共享基础姿态的各种应用操作134,以及将这些各种应用操作与在其内可操作的不同的应用状态132相关联。附加地或者备选地,与特定训练过程或者训练应用有关的姿态、操作和/或状态可以根据用户需要和偏好而进行用户选择。

在一些实施例中,训练模块112被配置为通过生成将神经数据与对应的意图的应用操作相关/映射生成一个或多个模型或者其他数据结构映射或者以其他方式将接收到的神经数据与对应的应用操作相关联。在一些实施例中,训练模块112包括提供滤波(例如,低和/或高带通滤波和/或德尔塔和伽玛eeg波的滤波)、伪影移除(例如,将与眨眼、哈欠、外部听觉或者视觉刺激相关联已知的共同eeg伪影的移除、或者与以意图的应用操作为基础的姿态无关的其他数据和运动),和/或接收到的神经数据102a中的一个或多个信号的其他处理。

映射可以包括对最佳拟合算法、或者任何其他统计或(一个或多个)相关映射算法的应用进行平均。在一些实施例中,训练模块112可操作以在接收到的神经数据上执行回归分析。例如,对于特定姿态的不同用户意图可以与对应的eeg信号的不同的波带(阿尔法、贝塔、伽玛、德尔塔)内的功率谱的不同的百分比有关(例如,如通过傅里叶分析所确定的),可以与相位和/或幅度同步的数量有关,和/或可以与对应的eeg信号的其他特征有关。

在优选的实施例中,训练模块112被配置为使用机器学习技术使接收到的eeg信号信息与对应的意图的应用操作相关,以便生成可以基于神经信号输入提供意图的应用操作作为输出的预测模型。

所图示的计算机系统100还包括状态机114,其被配置为将一个或多个相关/关联(例如,如被存储在训练简档102e中)应用到接收到的神经用户意图数据,以生成用于根据用户的预测意图控制应用130的状态的应用指令。在一些情况下,如在此所描述的训练过程被用于通过将应用操作134和应用状态132与神经用户意图数据102a相关联来创建或者更新状态机。状态机114可以随后从传感器120接收神经用户意图数据输入并且可以使用输入来确定对应于输入的用户意图操作(例如,根据在训练过程期间生成并且通过状态机应用的一个或多个回归模型和/或机器学习模型)。

在一些实施例中,状态机114甚至在缺少先验训练过程的情况下也是可操作的。例如,一些应用具有与已经创建相关联的状态机的应用的足够的相似性,以使能利用应用使用状态机而不需要在使用应用之前对新状态机的特定训练过程和/或生成。

附加地或者备选地,创建状态机包括从多个不同的用户获得神经数据并且建立从多个用户获得的神经数据的数据库。例如,在一些实施例中,计算机系统100实现从第三方或状态机服务下载(例如,通过网络110)用于特定应用的通用状态机。通用状态机包括例如通过针对多个用户的测量的eeg意图数据所生成的预测模型,同时用户执行上下文特定操作。在一些实施例中,可用于创建和/或更新状态机的eeg意图数据或其他神经用户意图数据包括来自已经包含存储的神经数据的数据库(例如,来自多个用户)的数据。

在一些实施例中,通用状态机提供立即的“即插即用”功能,这允许计算机系统在利用应用使用状态机之前放弃初始训练过程。可选地,计算机系统100使得用户能够修改或者微调通用状态机来生成被定制到个体或个体组的个体化或者定制状态机。另外,在不使用或者修改通用状态机的情况下,一些实施例实现从头创建状态机。

在优选的实施例中,状态机114被配置为改变应用的状态以实现在最小延时的情况下执行意图的操作。在至少一些情况下,状态机114操作以基本上实时改变应用状态,使得从用户的视角,在没有除在处理和应用特定应用中的状态改变中固有的延时之外的任何附加延时的情况下,应用执行状态改变。

在下面的描述中,参考由一个或多个计算系统执行的动作来描述实施例。如果这样的动作被实现在软件中,则执行动作的相关联的计算系统的一个或多个处理器响应于计算系统的(一个或多个)处理器已经执行在一个或多个计算机可读介质(例如,(一个或多个)硬件存储设备)上实现的计算机可执行指令来引导计算系统的操作。这样的操作的示例包含对数据的操纵。

计算机可执行指令(以及操纵的数据)可以被存储在计算机系统100的存储器102中,和/或在一个或多个分离的计算机系统部件中。计算机可执行指令可以被用于实现和/或实例化在此所公开的所有功能,包括参考图2到图4的流程图中的一个或多个所公开的功能。

图2是用于使用神经用户意图数据改变应用的状态的计算机实现的方法的流程图200。如所示出的,计算机系统操作被配置为改变状态并且还被配置为当在第一状态中操作时响应于检测到特定姿态而执行第一操作并且当在第二状态中操作时响应于检测到所述特定姿态而执行第二操作的应用(动作210)。通过示例,应用可以是字处理应用,并且操作可以是在文本的选择的复制之后的粘贴操作。在第一状态中,应用可以利用匹配目的地的格式来粘贴选择,然而在第二状态中,应用可以利用例如匹配源的格式来粘贴选择。

计算机系统随后当应用在第一状态中操作时检测用户输入,检测到的用户输入包括与第二操作的上下文中的特定姿态相关联的神经用户意图数据(动作220)。继续字处理应用示例,字处理应用可以被设定以利用目的地格式来粘贴选择,而计算机系统检测与如与利用源格式来粘贴选择的意图相关联的粘贴命令姿态(例如,ctrl+v键盘敲击)相关联的神经用户意图数据。

计算系统然后响应于检测到包括神经意图数据的用户输入来将应用从第一状态改变到第二状态(动作230)。例如,字处理应用从目的地格式化状态改变到源格式化状态以便在执行如由接收到的神经用户意图数据所指示的粘贴操作时与用户的意图对齐。

图3是用于创建和/或管理用于至少一个应用的状态机的计算机实现的方法的流程图300。如所示出的,计算机系统将应用操作的集合与应用状态的对应集合相关联,其中特定姿态使得应用基于对应的应用状态来执行操作的集合中的特定操作(动作310)。如由前述内容所描述的,并且如由下文详细描述的图示的示例所示,特定姿态可以取决于应用的特定状态而引起应用中的不同的操作的执行。

计算机系统还检测在操作以使得应用在当应用处于第一状态时执行第一操作的特定姿态的执行期间由用户所生成的第一神经用户意图数据(动作320),以及检测在操作以使得应用当应用处于第二状态时执行第二操作的特定姿态的执行期间由用户所生成的第二神经用户意图数据(动作330)。在增强现实游戏应用的示例中,计算机系统当用户正执行“空中点击”姿态以当游戏应用处于选择状态时选择对象(例如,全息图对象)的同时监测并且检测用户意图数据,并且当用户正执行相同的空中点击姿态以当应用处于动作/播放状态时激发虚拟弹丸的同时监测并且检测用户意图数据。

第一神经用户意图数据的检测可以结合训练应用或者向导执行和/或可以包括当应用被放到正常使用时用户意图数据的背景监测。继续游戏应用示例,训练练习可以被用于采集与对象选择操作和虚拟弹丸操作的不同的上下文中的空中点击姿态的执行相关联的足够的神经数据,以便能够建立或更新状态机以对分别地与不同的上下文相关联的用户的不同的神经签名进行区分。附加地或者备选地,当用户玩游戏以采集神经数据来建立和/或更新状态机时,训练程序可以在背景中运行。

计算机系统随后将第一神经用户意图数据与第一状态中的第一操作相关联并且将第二神经用户意图数据与第二状态中的第二操作相关联(动作340)。例如,与利用选择对象的意图执行的空中点击姿态相关联的神经数据与选择对象操作相关联,并且与利用射击弹丸的意图执行的空中点击姿态相关联的神经数据与射击弹丸操作相关联。因此,所得到的生成的状态机使得用户能够执行空中点击姿态以在不需要在选择状态与射击状态之间手动地切换的情况下,执行意图的对象选择或者弹丸射击操作,因为分别地相关联的神经用户意图数据使得应用自动地改变到适当的状态以使能执行意图的操作。

图4是用于创建和/或管理用于至少一个应用的状态机的备选计算机实现的方法的流程图400。如所示,计算机系统将应用操作的集合与应用状态的对应集合相关联,其中特定姿态使得应用基于对应的应用状态来执行操作的集合中的特定操作(动作410)。

计算机系统还检测用户发起特定应用状态的应用状态的改变期间由用户生成的第一神经用户意图数据,其中特定应用状态由应用要求以响应于特定姿态而执行特定操作(动作420),并且检测在操作以使得应用执行特定操作的特定姿态的执行期间由用户所生成的第二神经用户意图数据(动作430)。使用增强现实游戏应用示例的备选版本,计算机系统当用户手动地将游戏从对象选择状态改变到弹丸射击状态时监测并且检测用户意图数据,并且在用户已经改变游戏状态并且正执行空中点击姿态以射击虚拟弹丸之后监测并且检测用户意图数据。

计算机系统随后将第一神经用户意图数据与特定应用状态相关联并且将第二神经用户意图数据与特定操作相关联(动作440)。例如,与有意地将游戏状态改变到弹丸射击模式相关联的神经数据与弹丸射击游戏状态相关联,并且与利用射击弹丸的意图执行的空中点击姿态相关联的神经数据与射击弹丸操作相关联。

因此,所得到的生成的状态机使得用户能够使用神经用户意图数据控制应用的状态改变活动,以及所选择的应用状态内的对应的基于上下文的操作。在一些实施例中,例如,所生成的用户意图数据操作以当用户考虑和/或聚焦于做出状态改变时将应用改变到期望的状态,从而与手动地执行使得状态改变发生的姿态相反,生成致动神经意图数据。

以下示例图示了用于使用神经用户意图数据改变应用的状态的各种示例性实施例的操作和功能。在此所描述和在权利要求中记载的概念和特征的范围既不限于这些特定图示的示例,也不限于参考类型的应用。其他实施例包括应用、应用状态、应用操作和/或相关联的神经用户意图数据的不同的配置和组合。现在将提供一些附加的非限制性示例以进一步澄清这一点。

图5a至图5d图示了被配置为使用神经用户意图数据改变3d建模应用的状态的状态机的操作,作为基于特定姿态来执行期望的功能需要的隐含的用户请求。图5a至图5d图示了示出画布520内的3d对象510的用户界面500。界面500还包括指针550、显示当前应用状态的标签530和实现手动改变应用状态的下拉菜单540。3d应用是通过例如鼠标控制器、触摸屏、触摸板和/或其他输入设备可控制的。在备选示例中,3d建模应用是在虚拟现实或增强现实环境中可操作的,其中应用是通过用户手和手指姿态可控制的。虽然在该示例中图示了指针550,然而,应当理解其他实施例(特别地虚拟现实或增强现实应用和触摸屏应用),指针550可以被省略和/或利用手部或其他对象控制。

当应用处于“状态a”时,如在图5a中所示,单击并拖动姿态或者点击并拖动姿态执行如所图示的在拖动动作的方向上移动3d对象510的移动操作。当应用处于“状态b”时,如在图5b中所示,相同的单击并拖动姿态执行如所图示的旋转3d对象510的旋转操作。当应用处于“状态c”时,如在图5c中所示,相同的单击并拖动姿态执行延长如所图示的3d对象510的所选择的面或点的对象扩展操作。

图5d图示了自动改变3d建模应用的状态的状态机的操作。如所示,用户560被装备有传感器570,其被配置为在与界面500的相互作用期间感测和传输神经用户意图数据。在单击并拖动动作被执行之前,应用处于状态a,其将单击并拖动操作与移动操作相关联。然而,用户旨在执行扩展操作(如由思维泡泡580所示)。当用户执行单击并拖动动作时,状态机接收对应于意图的扩展操作的神经用户意图数据。作为响应,状态机操作以将应用改变到状态c以提供意图/期望的扩展操作的执行,而不要求用户手动地或明确地(通过菜单或单独的输入)改变应用状态。

图6图示了改变应用的状态的状态机的操作的备选模式。在该示例中,用户明确地改变应用状态,但是利用神经用户意图数据而不是手动控制这样做。继续示例性3d建模应用,用户660被装备有传感器670,其被配置为在与接口600的相互作用期间感测和传输神经用户意图数据。界面600包括画布内的3d对象610、显示当前应用状态的标签630以及实现在用户选择时手动改变状态的下拉菜单640。

初始地,应用处于状态a,其将单击并拖动动作与移动操作相关联。然而,用户660旨在执行扩展操作,其要求应用处于状态c。在执行单击并拖动操作之前,用户660知道应用状态需要被改变到状态c并且旨在将应用改变到状态c(如通过思维泡泡680所图示的)。作为结果,用户生成对应于用于将应用改变到状态c的状态改变操作的神经用户意图数据。作为响应,状态机操作以将应用状态改变到状态c(使用菜单690),在其之后用户660执行单击并拖动以执行扩展操作。

将理解到,从前述描述,各种类型的应用可以被配置为利用神经用户意图数据来控制状态改变(明确地)或者自动作为基于姿态和用户意图执行功能的隐含部分。这样的实施例可以被用于提供与现有系统相比的增加的用户方便和计算效率。

所公开的实施例可以包括或者利用包括计算机硬件(诸如例如一个或多个处理器和系统存储器)的专用或者通用计算机系统。本发明的范围内的实施例还包括用于携带或者存储计算机可执行指令和/或数据结构的物理和其他计算机可读介质。这样的计算机可读介质可以是可以由通用计算机系统或专用计算机系统访问的任何可用介质。存储计算机可执行指令和/或数据结构的计算机可读介质是计算机存储介质。携带计算机可执行指令和/或数据结构的计算机可读介质是传输介质。因此,以示例而非限制的方式,本发明的实施例可以包括至少两个不同地不同种类的计算机可读介质:存储介质和传输介质。

计算机存储介质是存储计算机可执行指令和/或数据结构的物理存储介质。物理存储介质包括计算机硬件,诸如ram、rom、eeprom、固态驱动器(“ssd”)、闪存、相变存储器(“pcm”)、光盘存储装置、磁盘存储装置或其他磁性存储设备、或者可以被用于以计算机可执行指令或数据结构的形式存储程序代码的任何其他(一个或多个)硬件存储设备,其可以由通用计算机系统或专用计算机系统访问和执行以实现本发明的所公开的功能。

传输介质可以包括可以被用于以计算机可执行指令或数据结构的形式携带程序代码并且可以由通用计算机系统或专用计算机系统访问的网络和/或数据链路。“网络”被定义为实现计算机系统和/或模块和/或其他电子设备之间的电子数据的传输的一个或多个数据链路。当信息通过网络或者另一通信连接(或者硬连线、无线或者硬连线或无线的组合)被传送或者被提供到计算机系统时,计算机系统可以将连接视为传输介质。上文的组合还应当被包括在计算机可读介质的范围内。

此外,在到达各种计算机系统组件时,以计算机可执行指令或数据结构的形式的程序代码装置可以从传输介质被自动传送到计算机存储介质(或反之亦然)。例如,通过网络或数据链路接收到的计算机可执行指令或数据结构可以被缓冲在网络接口模块(例如,“nic”)内的ram中,并且然后最终地被传送到计算机系统ram和/或计算机系统处的较少的易失性计算机存储介质(设备)。因此,应当理解,计算机存储介质(设备)可以被包括在还(或甚至主要地)利用传输介质的计算机系统组件中。

计算机可执行指令包括例如指令和数据,其当在一个或多个处理器处执行时,使得通用计算机系统、专用计算机系统或者专用处理设备执行特定功能或功能组。计算机可执行指令可以是例如二进制、中间格式指令(诸如汇编语言或甚至源代码)。

本领域的技术人员将理解到,本发明可以被实践在具有许多类型的计算机系统配置的网络计算环境中,包括个人计算机、台式计算机、膝上型计算机、消息处理器、手持式设备、多处理器系统、基于微处理器或可编程的消费者电子产品、网络pc、小型计算机、大型计算机、移动电话、pda、平板电脑、寻呼机、路由器、交换机、虚拟或增强现实头戴设备,等等。本发明还可以被实践在其中通过网络链接(或者通过硬连线数据链路、无线数据链路,或者通过硬连线数据链路和无线数据链路的组合)的本地计算系统和远程计算机系统二者执行任务的分布式系统环境中。如此,在分布式系统环境中,计算机系统可以包括多个构成计算机系统。在分布式系统环境中,程序模块可以被定位在本地存储器存储设备和远程存储器存储设备二者中。

本领域的技术人员还将理解到,可以在云计算环境中实践本发明。云计算环境可以是分布式的,虽然这不是要求的。当被分布时,云计算环境可以在国际上被分布在组织内和/或具有跨多个组织拥有的部件。在本描述和以下权利要求中,“云计算”被定义为用于实现对可配置的计算资源(例如,网络、服务器、存储装置、应用和服务)的共享池的按需网络访问的模型。“云计算”的定义不限于当适当地部署时可以从这样的模型获得的其他许多优点中的任一优点。

云计算模型可以包括各种特征(诸如例如按需自服务、宽网络访问、资源池化、迅速弹性、测量服务等)。云计算模型还可以以各种服务模型(诸如例如软件即服务(“sass”)、平台即服务(“paas”)和基础设施即服务(“iaas”))的形式出现。还可以使用不同的部署模型(诸如私有云、社区云、公共云、混合云等)部署云计算模型。

一些实施例(诸如云计算环境)可以包括系统,其包括各自能够运行一个或多个虚拟机的一个或多个主机。在操作期间,虚拟机模拟操作的计算系统,支持操作系统以及也许一个或多个其他应用。在一些实施例中,每个主机包括管理程序,其使用从虚拟机的视图提取的物理资源模拟用于虚拟机的虚拟资源。管理程序还提供了虚拟机之间的适当的隔离。因此,从任何给定虚拟机的视角,虽然虚拟机仅与物理资源的出现(例如,虚拟资源)进行对接,但是管理程序提供虚拟机与物理资源进行对接的错觉。物理资源的示例包括处理能力、存储器、磁盘空间、网络带宽、介质驱动器,等等。

在不脱离其精神或基本特性的情况下,可以以其他特定形式实现本发明。所描述的实施例将在所有方面中仅被认为是说明性而非限制性的。因此,本发明的范围由所附的权利要求书来指示,而不是由前述说明书。落在权利要求的等效物的意义和范围内的所有改变将被包含在其范围内。

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