CN105324736B - 触摸式和非触摸式用户交互输入的技术 - Google Patents

触摸式和非触摸式用户交互输入的技术 Download PDF

Info

Publication number
CN105324736B
CN105324736B CN201480034487.3A CN201480034487A CN105324736B CN 105324736 B CN105324736 B CN 105324736B CN 201480034487 A CN201480034487 A CN 201480034487A CN 105324736 B CN105324736 B CN 105324736B
Authority
CN
China
Prior art keywords
virtual objects
touch
display
module
movement
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201480034487.3A
Other languages
English (en)
Other versions
CN105324736A (zh
Inventor
G·J·安德森
A·约舍尔
A·L·俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US13/948,683 external-priority patent/US9152306B2/en
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN105324736A publication Critical patent/CN105324736A/zh
Application granted granted Critical
Publication of CN105324736B publication Critical patent/CN105324736B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1637Details related to the display arrangement, including those related to the mounting of the display in the housing
    • G06F1/1643Details related to the display arrangement, including those related to the mounting of the display in the housing the display being associated to a digitizer, e.g. laptops that can be used as penpads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1637Details related to the display arrangement, including those related to the mounting of the display in the housing
    • G06F1/1647Details related to the display arrangement, including those related to the mounting of the display in the housing including at least an additional display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1684Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
    • G06F1/169Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being an integrated pointing device, e.g. trackball in the palm rest area, mini-joystick integrated between keyboard keys, touch pads or touch stripes
    • G06F1/1692Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being an integrated pointing device, e.g. trackball in the palm rest area, mini-joystick integrated between keyboard keys, touch pads or touch stripes the I/O peripheral being a secondary touch screen used as control interface, e.g. virtual buttons or sliders
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

各种实施例通常涉及一种方法和装置,其具有触摸屏模块,用于基于在显示器上表示的虚拟对象的第一位置处的一个或多个检测到的触摸输入,接收来自触摸屏传感器的第一输入数据。另外,超声模块可以基于与所述虚拟对象相关联的检测到的非触摸式运动,接收来自超声传感器的第二输入数据。基于所述第二输入数据,可以跟踪从第一位置沿着远离所述第一位置的方向到第二位置的所述检测到的非触摸式运动,并基于所述跟踪,所述检测到的非触摸式运动可被用来确定虚拟对象的第二位置。

Description

触摸式和非触摸式用户交互输入的技术
相关申请的交叉引用
本申请是2011年12月22日递交的、名称为“Virtual Links Between DifferentDisplays to Present a Single Virtual Object”的现有美国专利申请No.13/335,866以及2011年3月29日递交的、名称为“Continued Virtual Links Between Gestures andUser Interface Elements”的现有美国专利申请No.13/074,639的部分继续申请并要求其优先权,这两者的全部内容以引用的方式并入本文。
技术领域
概括地说,本文描述的实施例涉及检测在计算设备上的触摸式和非触摸式用户输入。具体地说,实施例涉及检测和处理触摸式和非触摸式输入以控制在一个或多个计算设备显示器上显示的虚拟对象。
背景技术
通常,计算输入模态包括使用空中姿势(air-gesture),其涉及用户移动其身体并将这种移动解释为用户命令或引起对应动作在显示器上发生。当前的空中姿势技术使用传感器(例如,在Nintendo遥控器中)或3D摄像机技术(例如在Microsoft的Microsoft中)来将身体运动近似为模态输入源。电视显示器是用于在图形环境下查看空中姿势模态输入的效果的典型反馈机构。还已知的是,集成的摄像机被设计用于收集视频输入用于姿势检测。软件可以执行对姿势输入的检测和初步解释。在电子游戏的上下文中,在显示屏上的触摸和拂掠(sweep)姿势将对象从一个平面(例如,手持控制台屏幕)移动到另一屏幕(例如,TV屏幕)已经成为可能。
发明内容
根据本发明的第一方面,提供一种用于检测运动的计算设备,包括:处理器部件;以及触摸屏模块,用于在所述处理器部件上执行,以基于在显示器上表示的虚拟对象的第一位置处的一个或多个检测到的触摸输入来接收来自触摸屏传感器的第一输入数据;超声输入模块,用于在所述处理器部件上执行,以基于与所述虚拟对象相关联的检测到的非触摸式运动来接收来自超声传感器的第二输入数据;以及虚拟对象跟踪器模块,用于在所述处理器部件上执行,以基于所述第二输入数据来跟踪从所述显示器上的所述第一位置沿着远离所述显示器的方向到第二位置的所述检测到的非触摸式运动。
根据本发明的第二方面,提供一种计算机实现的方法,包括:基于在显示器上表示的虚拟对象的第一位置处的一个或多个检测到的触摸输入,接收来自触摸屏传感器的第一输入数据;基于与所述虚拟对象相关联的检测到的非触摸式运动来接收来自超声传感器的第二输入数据;以及基于所述第二输入数据来跟踪从所述第一位置到第二位置的检测到的非触摸式运动,所述检测到的非触摸式运动从所述显示器上的所述第一位置沿着远离所述显示器的方向到第二位置。
根据本发明的第三方面,提供一种计算机实现的装置,包括:用于基于在显示器上表示的虚拟对象的第一位置处的一个或多个检测到的触摸输入来接收来自触摸屏传感器的第一输入数据的单元;用于基于与所述虚拟对象相关联的检测到的非触摸式运动来接收来自超声传感器的第二输入数据的单元;以及用于基于所述第二输入数据来跟踪从所述显示器上的所述第一位置沿着远离所述显示器的方向到第二位置的所述检测到的非触摸式运动的单元。
附图说明
本发明的实施例是通过示例而非限制进行图示的,在附图的图中相似的附图标记表示相似的元素。
图1A-1H示出了根据第一实施例的跨屏幕移动虚拟对象的过程。
图2A-2D示出了根据第二实施例的跨屏幕移动虚拟对象的过程。
图3A-3C示出了用于移动虚拟对象到显示屏幕的边圈(bezel)区域的过程。
图4A和4B示出了在图1A-1H或2A-2D中示出的第一显示和第二显示的实施例,包括功能模块。
图5A和5B示出了方法实施例的流程图。
图6示出了根据实施例的将虚拟对象从一个屏幕弹跳到另一个屏幕的过程。
图7示出了根据实施例的利用虚拟绑定(binding)将虚拟对象从一个屏幕弹跳到另一个屏幕的过程。
图8示出了根据实施例的利用虚拟绑定将虚拟对象从一个屏幕抛掷到另一个屏幕的过程。
图9示出了另一方法实施例的流程图。
图10示出了根据实施例的将虚拟对象掉落到屏幕上的侧视图。
图11示出了根据实施例的将虚拟对象掉落到屏幕上的顶视图。
图12示出了根据另一实施例的将虚拟对象掉落到屏幕上的顶视图。
图13示出了根据另一实施例的将虚拟对象掉落到屏幕上的顶视图。
图14示出了在显示器上控制多个虚拟对象的透视图。
图15示出了另一方法实施例的流程图。
图16示出了将虚拟对象从一个计算设备转移到另一计算设备的透视图。
图17示出了将虚拟对象从一个计算设备转移到一个或多个计算设备的透视图。
图18示出了第一计算架构的实施例。
具体实施方式
视觉反馈使得用户交互更加迷人。例如,游戏和其它使用可能涉及从屏幕的X-Y平面虚拟捡拾对象以及用姿势将对象掉落或投掷回屏幕。通过实现用户虚拟握持物(例如,在从触摸屏虚拟捡拾起它之后)的增强现实反射可以提高用户体验。进一步的视觉反馈和与用户姿势的交互可以提供甚至更迷人的体验。
能够在三维中检测人类运动的传感器技术在尺寸和价格方面继续收缩。因此,诸如智能电话、平板计算机和膝上型计算机的小形状因子设备日益成为涉及使用摄像机和超声传感器以检测用户姿势作为对利用移动平台的设备的模态输入的技术的平台。由于对触摸作出响应的移动显示器在移动设备上越来越普遍,所以实施例提出使空中姿势输入与用于电子设备的触摸姿势输入紧密配对,以便允许更通用的对象操纵。根据一个实施例,例如,利用移动检测器(例如,图像检测器和/或超声检测器)跟踪用户身体部分的空中移动,并且映射来自这种跟踪的输入数据以控制输入,从而将虚拟对象移动超过电子显示器和设备。显示器的例子可以包括能够呈现虚拟用户界面视图的任意输出设备,而不管是否在设备的屏幕上,或者是否从设备投影以在设备外部形成虚拟图像。这后一种场景的例子可以包括在墙壁上的投影显示。
实施例提供了可以利用各种输入设备实现的若干新颖的交互方法和姿势,所述输入设备例如触摸屏、3D摄像机和超声传感器。实施例还提出了跨设备姿势以用跨多个显示器和设备的新颖方式移动对象,例如跨在分离设备上实现的显示器。
根据一些实施例,设备包括用于从图像检测器和/或超声检测器接收输入数据的处理器,其中所述输入数据包括从跟踪与电子显示器的虚拟对象交互的用户身体部分的空中移动获得的数据。所述处理器可以将输入数据映射至控制输入,以将虚拟对象移动超过显示器和设备。例如,所述设备可以包括移动设备,诸如智能电话、平板计算机、膝上计算机或其它移动设备。处理器将输入数据映射至控制输入,以将虚拟对象移动超过电子显示器的视觉部分(例如,屏幕)。例如,处理器可以将输入数据映射至控制输入,以将虚拟对象从第一设备的第一显示器移动到第二设备的第二显示器,或者将虚拟对象移动到第一设备的虚拟空间(例如,边圈),等等。
根据一个实施例,输入数据被从图像检测器或超声检测器以及与显示器的屏幕耦合的触摸屏传感器馈送到处理器,以便允许将输入数据映射至控制数据,从而将虚拟对象移动超过显示器和设备。例如,触摸屏传感器可以允许在被移除或提升到超过显示器和设备之前,从显示器捏住虚拟对象。捏住姿势因而可以允许人控制对象,同时移除姿势可以允许人虚拟地将该对象从显示器移除。可选地,处理器可以将输入数据映射至控制输入,以创建虚拟对象的虚拟绑定,从而创建虚拟对象和用户身体部分之间的连接的视觉渲染。虚拟绑定可以包括视觉渲染(例如三维(3D)渲染)用户身体部分和被用户身体部分控制的虚拟对象之间的连接。例如,虚拟绑定可以被描绘为手指和被操纵的虚拟对象之间的3D虚拟系绳(tether)。虚拟绑定因此可以是动态屏幕图像,其图形地描绘了由用户身体部分虚拟控制的虚拟对象如何响应于用户移动该身体部分而行动。绑定的外观可以由持有虚拟对象的身体部分的角度和位置确定。
根据另一实施例,处理器可以将输入数据映射至控制输入,以将虚拟对象放置在第二电子设备的第二显示器上。空中移动可以包括相对于该第二显示器上的虚拟对象的目标位置,释放用户身体部分的运动。处理器还可以将输入数据映射至控制输入,以确定虚拟对象的惯性行为(一旦在第二显示器上)。在即时描述中,提及“用户身体部分”意指人类解剖学的任意部分,例如,手、手指、手掌指关节、脚、腿、眼睛、头等。另外,提及“用户手部”指的是包括人类手部的一些或全部,包括手的任意部分,例如手指、手掌、指关节等。
通过对本文所使用的符号和术语的一般参考,后续的详细描述可以以在计算机或计算机网络上执行的程序过程的形式来表示。这些过程描述和表示由本领域技术人员用于最有效地向本领域其他技术人员传达其工作的实质。
这里的过程通常被认为是导致期望结果的一系列自相合的操作。这些操作需要物理量的物理操纵。通常但不是必需地,这些量采用能够被存储、转移、组合、比较和操纵的电、磁或光信号的形式。有时证明方便的是,主要为了共同使用,将这些信号参考为位、值、元素、符号、字符、术语、数字等。然而,应该注意的是,所有这些和类似术语都与适当的物理量相关联,并仅是应用于这些量的方便标签。
此外,所执行的操纵通常以多个方式参考,例如添加或比较,其通常与人类操作员所执行的心理操作相关联。在本文所描述的形成一个或多个实施例的部分的任意操作中,人类操作员的这种能力是不必要的,或者在大部分情况下是不期望的。相反,所述操作是机器操作。用于执行各种实施例的操作的有用机器包括通用数字计算机或类似设备。
各种实施例还涉及用于执行这种操作的装置或系统。该装置可以专门构造用于所需目的,或者其可以包括由存储在计算机中的计算机程序来选择性激活或重新配置的通用计算机。本文所表示的过程并不与特定计算机或其它装置内在相关。可以与跟据本文的教导编写的程序一起使用各种通用机器,或者可以证明方便的是,构造更专用的装置来执行所要求的方法步骤。所要求的用于各种这些机器的结构可以从给出的描述中变得清晰。
结合图1A-1H、图2A-2D以及图3A-3C的例子描述实施例,其每一个与图4A和图4B结合。
参考图1A-1H、图2A-2D以及图3A-3C,现在将描述这些图之间的共同元素。在这些图中的每一个中,为了容易描述而将虚拟对象(VO)描绘为球,但是可以理解的是,VO可以具有任意适当的形状。VO例如可以包括图标、图片、图形表示或动画图形图示。VO例如可以包括标准摄像机输入所感测的对象的图形表示或用户可以选择的特性(例如,颜色)。VO还可以包括具有使其以特定方式动作的属性的游戏件,例如在游戏设定中的炸弹对箭。另外,VO可以包括单个VO或者多个VO。
在一些实施例中,VO可以是与文件、照片、视频文件、音乐文件、电子邮件、消息、应用、应用数据(例如,联系数据)和其它信息相关联的图形表示。如将在下文进一步讨论的,VO可以用于将一个或多个相关联文件、照片、视频文件、音乐文件、电子邮件或联系数据从第一设备转移或发送到第二设备。各种实施例并不局限于该方式;VO可以与可以从一个设备转移到另一设备的任意文件或数据相关联。
在所注意的图中还示出了两个设备D1和D2(但是D2可以在图3A-3C的实施例中是可选的)。在所示的实施例中,D1被描绘为智能电话设备,其包括显示器ED1,而D2被描绘为个人计算机,其包括显示器ED2。如图1A-1H、图2A-2D以及图3A-3C所示,D1和D2中的每一个都分别装备有图像检测器ID1和ID2。除了或替代D1和D2中的每一个,所述D1和D2中的每一个还可以分别装备有超声检测器UD1和UD2。在图1A-1H、图2A-2D以及图3A-3C中示出的各个部件在以下结合图4A和4B进一步被详细解释。
现在结合图1A-1H、图2A-2D以及图3A-3C参考图4A和4B,如图所示,D1和D2中的每一个可以合并姿势捕捉系统(GCS1和GCS2)。每个GCS可以包括一个或多个处理器,以便影响以下将描述的功能。D1和D2可以用相同或类似部件来实现,其每一个具有相同的标签并被用标签“1”或“2”指定。如本文所使用的,标签“1/2”可以指的是部分1、部分2、部分1和部分2、或者部分1或部分2。在一些实施例中,可以理解的是,所描述的与给定部分1相关联的结构、操作和例子可以平等地应用于相同名称的给定部分2。实施例并不局限于该上下文。
在如图所示的D1和D2的每一个中,存在有图像检测器ID1/ID2、超声检测器UD1/UD2以及一组捆绑的输入数据处理模块,其包括对象和姿势识别模块1/2、虚拟对象跟踪器模块1/2、对象速度和方向模块1/2以及虚拟对象行为模块1/2。在所示实施例中的每组捆绑的模块还包括相邻屏幕透视模块1/2和屏幕渲染模块1/2。相邻屏幕透视模块1/2可以包括设备接近度检测模块1/2。在一些实施例中,对象和姿势识别模块1/2可以包括超声对象和姿势识别模块1/2。以下将解释在每个GCS 1/2中的该组捆绑的模块中每个模块的贡献。对象和姿势识别模块1/2、超声对象和姿势识别模块1/2、虚拟对象跟踪器模块1/2、对象速度和方向模块1/2、虚拟对象行为模块1/2、相邻屏幕透视模块1/2以及屏幕渲染模块1/2、相邻屏幕透视模块1/2和设备接近度检测模块1/2可以表示硬件、软件、固件或其组合。
首先参考图像检测器ID 1/2,所述ID例如可以包括一个或多个三维(3D)深度感测摄像机,或者在视觉显示和外部边圈后面安装的光学检测阵列。例如,一个设备的边圈可以包括IR发射器和IR接收器,以允许对用户姿势的位置跟踪。ID例如可以适应于捕捉图像形式的用户身体部分的空中移动,并将这种输入数据馈送到对象和姿势识别模块1/2。
此外,计算设备D1/D2还可以包括超声检测器UD 1/2。所述超声检测器UD 1/2可以包括一个或多个超声传感器、发射器和接收器,以支持超声或超音运动检测。在各个实施例中,UD可以使用非连续或连续波超声信号,其从设备发射并由一个或多个检测器、传感器或麦克风接收到。超声波可以由发送器或扬声器发射,从对象(例如,用户的手)反射,并由一个或多个接收器、传感器或麦克风接收到。例如,超声发射器或扬声器可以发送适当编码的超声波信号。超声可以传播通过空气,并在用户的手位于反射检测区域内时从用户的手反射。反射的超声可以由位于计算设备周围的一个、两个、三个或更多个超声检测器或麦克风接收到。在一些实施例中,反射检测区域可以包括在显示器的几厘米内的检测到几英尺内的检测。例如,在一些实施例中,检测器可以检测检测器和显示器的10厘米内的运动以及多至离显示器20英尺内的运动。然而,各个实施例并不受限于这些例子,并且检测区域基于超声检测器的能力。
在各个实施例中,超声检测器UD可以位于设备壳体的边圈上或其内。此外,超声检测器UD可以位于任一侧(左、右、顶、或底)上或其内、壳体的前或后。例如,设备之一的底部前边圈可以包含扬声器和麦克风接收器以允许对用户姿势进行位置跟踪。UD例如可以适应于通过由麦克风测量用户的手的超声反射而捕捉用户身体部分的空中移动,并将这种输入数据馈送给对象和姿势识别模块1/2。
在一些实施例中,超声检测器UD 1/2可以与图像检测器ID 1/2一起工作,来帮助图像检测器ID可能未能检测到的运动检测。例如,一些摄像机可能受限于它们能检测到距离显示器多近的运动。这一限制可能基于摄像机的质量或摄像机在壳体内或其上的放置的角度。因此,可以创建“死区”,其中摄像机不能检测运动。超声检测可以补充图像检测器并提供在“死区”内的检测的更高粒度。如前所讨论的,超声检测器UD可以检测显示器几厘米内的运动。
此外,计算设备可以基于被检测对象、手、手指等距离显示器、检测器、壳体等的阈值距离,而在超声检测器UD和图像检测器ID之间切换。阈值距离可以基于超声检测器UD和图像检测器ID的能力。例如,超声检测器UD可能更适于检测距显示器10厘米处或更近的对象,而图像检测器ID可能更适于检测比10厘米更远距离处的对象。因此,当对象移动超过该阈值距离时,计算设备将从超声检测器切换到图像检测器,以检测运动和姿势。各个实施例并不限于该例子,并且可以由用户或基于检测设备的任意能力来确定所述阈值距离。此外,当对象移动更靠近显示器或检测器时,计算设备可以从图像检测器ID切换到超声检测器UD。
各个实施例并不局限于使用图像检测器ID和/或超声检测器UD来检测运动姿势。例如,在一些实施例中,射频检测器(RFD)可以用于检测运动和姿势。射频检测器可以通过测量从发送设备(例如,接入点、蜂窝基站或位于设备的壳体内或其上的发送器)发送的传输的RF信号的振幅和相位,而用于检测运动和姿势。通过接收设备(例如,射频接收器)接收发送的信号,并且将根据发送器和接收器的位置、姿势的大小和速度等,校准信号测量的行为,从而可以将后续的测量转换为识别对象和姿势。
对象和姿势识别模块可以适于识别和跟踪用户的手部和臂部姿势。这种模块可用于通过利用从图像检测器ID和/或超声检测器UD接收到的信息来识别手、手指、手指姿势、手部运动以及手相对于显示器的位置。例如,对象和姿势识别模块能够确定用户做出身体部分姿势以捡拾、掉落或投掷VO到ED1或ED2上,或者用户做出身体部分姿势以将VO移动到D1或D2的边圈。
在各个实施例中,对象和姿势识别模块可以包括超声对象和姿势识别模块1/2,用于处理从超声检测器UD接收到的信息。例如,超声对象和姿势识别模块1/2可以从UD接收指示用户用手或手指做出移动或释放VO的姿势的信息。超声对象和姿势识别模块可以接收超声信号,并调制该信号以与发射信号相关。可以基于发送和接收之间的差或飞行时间来确定信道脉冲响应。可以在一时间段多次确定脉冲响应以确定脉冲响应中的变化。这些变化可以用于通过比较随着时间的脉冲响应与在训练会话期间创建的姿势的库或存储的数据,而确定用户是否做出姿势或模式。例如,可以利用专门的过滤来过滤缓冲的脉冲响应图像,以提取可以与用户输入姿势的预先训练的模板库相匹配的特征。此外,回声响应模式也可以用于确定3D空间中的特定姿势。为了分析并匹配接收到的反射,实施例可以包括各种信号处理元件。这些信号处理元件可以从接收到的信道响应过滤出模式和特征,并使得这些特征与姿势相关。
虚拟对象跟踪器模块可以适于基于来自对象和姿势识别模块的输入来跟踪VO应该位于电子显示器(例如,ED1或ED2)附近的三维空间中的何处,以及用户的哪个身体部分持有VO。虚拟对象跟踪器模块1和虚拟对象跟踪器模块2例如都可以在VO从ED1移动向ED2时跟踪VO,并且它们可以跟踪用户的哪个身体部分持有该VO。跟踪持有VO的身体部分允许由身体部分的空中移动的一个或多个GCS进行的连续感知,并因此由一个或多个GCS进行最终感知VO是否被释放到ED1或ED2上,如以下将进一步解释的。另外,当用户身体部分可以与显示器交互以创建虚拟绑定时,虚拟对象跟踪器模块可以适应于随着身体部件在空中移动而跟踪这种绑定,这种跟踪可以与来自相邻屏幕透视模块的输入相关,其将在以下段落中描述。另外,当虚拟对象跟踪器模块确定持有VO的用户身体部分位于ED(例如,ED1)外时,并且没有额外的ED位于VO的轨迹中时,例如,虚拟对象跟踪器模块可以将输入直接发送给屏幕渲染模块,以示出包括周围环境的表示的地图视图。该地图视图是在可能未正常显示在显示器上的设备中保存的对象的虚拟表示,例如在边圈区域中保存的对象,并且能够从待观察的边圈区域虚拟拉出(例如,通过虚拟拉出靠近边圈区域的标记)。因此,当沿着平面操纵VO时,所述地图提供了视觉反馈,并且帮助用户当在虚拟空间中行进时,在超过物理ED或在多个ED之间的操纵期间,选择目的地目标。
可能包括设备接近度检测模块的相邻屏幕透视模块可以适应于确定一个显示器的屏幕相对于另一显示器的屏幕的角度,例如ED1的屏幕相对于ED2的屏幕的相对角度,例如,如果相邻屏幕透视模块是相邻屏幕透视模块1,并且如果相邻屏幕透视模块是相邻屏幕透视模块2则反之亦然。例如在图1A-1H和图2A-2D的实施例中,当D1是智能电话而D2是个人计算机时,D2中的相邻屏幕透视模块2可以适应于检测到D1的存在,并使用源自ED1的VO的图像的分析来确定D1的屏幕相对于D2的屏幕的角度。这种通过软件的对屏幕和显示区域的角度的检测可以检测从投影显示器发射的光的形状。投影显示器例如包括投影到墙壁或屏幕上的图像。检测附近屏幕的接近度以及从其投影的显示器的对应角度或方向的能力可以例如用红外发射器和接收器或者电磁或光电检测感测能力来实现。对于允许以触摸输入投影的显示的技术,当前存在的软件分析传入视频以确定投影显示的位置并校正通过以某角度显示引起的失真。
在实施例的情况下,使用加速计例如能够允许确定诸如D1的设备所呈角度,同时红外或超声能够允许确定设备D1关于在相邻设备D2上的传感器的方向。根据实施例,利用这种软件,相邻屏幕透视模块、D2可以确定D1的屏幕相对于其自己的屏幕坐标的坐标。因此,相邻屏幕透视模块可以确定哪些设备彼此附近,并进一步确定跨屏幕移动一个或多个VO的可能目标。相邻屏幕透视模块还可以提出用于目标屏幕上的VO的目标着陆或释放区域,例如当VO被从ED1移动到ED2时,以ED2上的影子的形式。
对象和速度以及方向模块可以适应于通过接收来自虚拟对象跟踪器模块的输入,来估计正被移动的VO的动态,例如其轨迹、速度(是线性还是有角度的)、动量(是线性还是有角度的)等。对象和速度以及方向模块还可以适应于例如通过估计虚拟绑定的拉伸程度来估计虚拟绑定(如果使用的话)的动态,并且一旦由用户身体部分释放则估计其动态行为。在后一情况下,对象和速度以及方向模块可以建立在跟踪用户与看起来要从屏幕中出来的3D图像的交互的现有软件和硬件上。例如,在麻省理工学院开发的原型技术中已经提出了结合双向(BiDi)屏幕的检测姿势。对象和速度以及方向模块还可以建立在使用图像运动、大小和角度改变来估计对象速度(例如,手和手指的速度)的现有模块上,这种模块当前用于游戏中,例如在利用Softkinetic Corporation的Softkinetic iisuTM SDK的游戏中。根据一个实施例,例如,这种软件可以用于补偿和/或确定VO的形状或将在下文定义的虚拟绑定的形状,根据源显示器相对于目标显示器和设备的角度和方向来校正虚拟图像的几何图形。
虚拟对象行为模块适应于从对象和速度以及方向模块接收输入,并将这种输入应用到正在显示器上示出的VO。因此,例如,对象和姿势识别系统将通过映射捕捉到的用户手部的移动而将来自图像检测器ID和/或超声检测器UD的输入解释为识别的移动,虚拟对象跟踪器模块将使VO的位置和移动与对象和姿势识别系统所识别出的移动相关联,对象和速度以及方向模块将捕捉VO移动的动态,并且虚拟对象行为模块将接收来自对象和速度以及方向模块的输入,以生成将引导VO的移动以对应于来自对象和速度以及方向模块的输入的数据。
屏幕渲染模块适应于从虚拟对象行为模块接收数据,并在诸如ED1或ED2的屏幕上以与这样的接收到的数据一致的方式,呈现VO和/或虚拟绑定。因此,来自虚拟对象行为模块的数据将确定例如VO和/或相关联的虚拟绑定的位置和动态,因此屏幕渲染模块将在ED上描绘VO和/或相关联的虚拟绑定。屏幕渲染模块还适应于从相邻屏幕透视模块接收数据,以在VO可以移动到与相邻屏幕透视模块相关联的设备的显示器上时,为VO描绘目标着陆区域。因此,例如,如果VO被从ED1移动到ED2,则相邻屏幕透视模块2可将数据发送到屏幕渲染模块2,从而以例如影子形式为跟踪用户手部移动的ED2上的VO暗示一个或多个目标着陆区域。
如图4A和4B的实施例进一步示出的,D1的GCS1还可以包括触摸屏系统1,例如传统的触摸屏系统,其可以包括触摸屏传感器TSS。来自TSS的数据可以被馈送到触摸屏模块中,其可以包括硬件、软件、固件或其组合。触摸屏模块可以从TSS取数据,例如,将用户手部在屏幕上的触摸姿势映射为VO的对应动态行为。触摸屏模块例如可以包括动量和惯性模块,其允许基于来自用户手部的输入的VO的各种时刻行为。根据实施例的触摸屏模块例如可以适应于解释用户相对于屏幕的某些手部交互,例如,捏住姿势,其可以由触摸屏模块解释为表示用户希望将VO从显示屏中提升,和/或开始生成与VO相关联的虚拟绑定,如以下结合图1A-1H和图2A-2D进行解释的。例如,为了区分缩放命令(其在当前触摸屏系统中通常涉及将手的拇指和食指移动靠近到一起,同时这些手指触摸正在讨论的屏幕)与捏住和提升命令(用于从屏幕捏住和提升VO),触摸屏模块将例如适应于在用户手部的拇指和食指比缩放姿势更靠近到一起时,将姿势解释为捏住和提升命令。
虽然图4A和4B所示的实施例描绘了每个设备合并图像检测器和超声检测器,以及用于将来自图像检测器和超声检测器的输入数据映射为控制输入的各种软件模块,但实施例并不局限于此。因此,例如,D1和D2可以适应于处理来自共享图像检测器或超声检测器(未示出)或来自共享图像处理系统(未示出)的输入数据,所述共享图像处理系统包括耦合到对象和姿势识别模块、虚拟对象跟踪器模块、对象速度和方向模块以及虚拟对象行为模块的图像检测器和超声检测器,例如,该处理系统在D1和D2之间共享,以将VO从ED1移动到ED2(图1A-1H以及图2A-2D)。另外,虽然图4A和4B将D1描绘为包括触摸屏系统,但实施例在其范围内包括在D1和D2两者内都并入或都不并入触摸屏系统。
首先参考图1A-1H和图4A和4B的例子,描绘了实施例,其中:(1)可以从属于第一电子设备D1的第一电子显示器ED1的屏幕获取虚拟对象(VO),其由用户的手部虚拟捡拾,被移动到更靠近属于第二电子设备D2的第二电子显示器ED2的屏幕的位置,然后被虚拟释放到后一屏幕上;以及(2)可以从ED2的屏幕获取VO,其被虚拟移动回ED1。可以借助额外的用户交互来增强以上所描述的例子。在本发明的一个例子中,用户虚拟地将虚拟对象从一个显示器弹跳到另一显示器。在图6中,持有虚拟对象613(由简单的点示出)的用户611已经将虚拟对象投掷向计算机或者其它设备的大显示器615。如虚拟对象的点线轨迹所示,虚拟对象首先从较小的第一显示器617弹跳开。所述较小的显示器可以是媒体播放器、智能电话、平板计算机、笔记本计算机或者台式或一体式机器的显示器。还可以使用专用游戏设备。虚拟对象撞击第一显示器并可以与主显示器上的显示对象交互。其还可以弹跳回第一显示器。上述装置允许生成和跟踪姿势、对象位置和虚拟对象交互的物理现象。
第二显示器615和第一显示器617被示出为放置在桌子621上。这一布置是便携式的且易于建立。对于本发明而言特定的支持并不重要。本文所讨论的原理可以应用于地板上或公园长椅上的设备,或者应用于娱乐室或影院室,其中第二显示器用于电视或投影仪而第一显示器是完整的台式计算机。多种台式和笔记本式计算机接受触摸输入,并可以用于或可装备有用于空中姿势和语音命令的摄像机和麦克风。第一显示器还可以是手持的,以允许与较大显示器进行交互,而无需任何桌子。
为了实现图6的交互,图4的虚拟对象跟踪器模块跟踪来自用户手部的虚拟对象到较小的第一显示器,并随后到一个或多个其它显示器。相邻屏幕透视模块确定虚拟对象的虚拟路径。这允许游戏提供虚拟的跨屏幕弹跳。用户可以投掷或者发射对象以从多个不同表面弹跳开。虚拟对象跟踪器模块确定对象的虚拟路径应该是在从第一显示器到第二显示器的轨迹中或者反之亦然。
在另一例子中,虚拟对象可以是利用虚拟绑定从一个屏幕发射到另一屏幕的抛射物。在图7中,用户711将手持设备717朝向较大显示器715。然后用户将虚拟对象抵靠虚拟绑定721拉回。虚拟对象被释放以虚拟地从第一显示器弹跳开并朝向大显示器715发射。在该例子中,第一显示器放置在桌子上,但是如图6,第一显示器可以是手持的,并且两个显示器的系统可以以多种不同方式配置。
两个显示器可以共享单个计算资源,或者可以都具有独立的计算资源并利用局域网或专用通信协议彼此通信。在一个例子中,第二计算系统支持第一显示器,例如智能电话处理器,其跟踪选择虚拟对象并将用户姿势输入以朝向第二显示器发射对象的操作的过程。在那时,第二计算系统然后将参数传递给支持第二显示器的第一计算系统。第二显示器然后呈现虚拟对象及其与第二显示器上和附近的真实和虚拟对象的交互。可以经由直接无线连接通过网络或以各种其它方式传递参数。在游戏环境中,对游戏的控制可以在设备之间传递,或者一个设备能够控制游戏同时另一设备仅用作用户输入设备,例如游戏控制器。从第一显示器发送的参数可以是用于基本变量的值,例如虚拟对象的位置和轨迹,以插入到驱动第一显示器的游戏软件中。
在图8所示的另一例子中,第一显示器817示出了虚拟绑定用户接口,在该情况下是弹弓的形式。这里,用户811拉回虚拟绑定821,并将第一显示器相对于第二显示器815定向。当释放虚拟绑定时,由用户手部隐藏的虚拟对象被朝向第二显示器发射。基于在虚拟绑定上的用户触摸姿势和两个显示器的相对位置确定虚拟对象的轨迹。图4A和4B的相邻屏幕透视模块确定两个屏幕的相对位置,并将该信息提供给对象速度和方向模块,从而可以由虚拟对象跟踪器模块跟踪轨迹。
如和图7的例子相比,其中借助在第一显示器上的弹跳发射虚拟对象并随后受到虚拟绑定的影响,在图7的例子中,虚拟对象实际被显示在显示器上并从所述视图发射。在图6、7和8所示的所有三个例子中,第一显示器的位置可以用作用于确定虚拟对象的轨迹的因素。在所有三个例子中,第一显示器可以显示用户的反射以增强用户接口的交互性的感测。
在所有三个例子中,用户可以选择将利用触摸屏发射的虚拟对象。在这些例子中虚拟对象表现为抛射物,并且不同的对象可以依赖于类型而展示不同的物理效果。抛射物可以是推进的,其可以具有阻力,可以由于其它虚拟力(例如,风、重力、虚拟拍或者虚拟枪等)而改变航线。可以通过从预先确定和预先编程的选择列表选择而执行针对虚拟对象的选择,或者可以由用户配置虚拟对象。
在一个例子中,用户扫描真实对象,然后在虚拟世界中使用该对象。所述对象可以是任意扫描的对象、动物或人,并可以是实际的或从图片或图中取出的。用户可以扫描附近的事物、附近的图片,或者访问先前拍摄的图片。用户然后可以被允许以物理和物理学属性配置新的虚拟对象,例如大小、质量、阻力等。
在一些实施例中,选择虚拟对象可以自动调用特定类型的虚拟绑定。虚拟绑定可以被自动激活或由用户依赖实现方式而激活。然后利用虚拟绑定发射所选择的抛射物。虚拟绑定可以用于表示弹弓、弹射器、投掷或抛掷臂,或者其它真实和想象的各种发射设备。
如在图1、2和3的例子中,并且在虚拟绑定场景中,用户可以使用语音命令来改变将被发射的对象的本质(颜色、种类、容量),或者改变其如何发射的本质,或者在发射对象之前和之后改变在显示器上显现的视图。可选地,次级姿势或眼部跟踪可以用于影响虚拟对象的目标和物理现象。所有这些输入在发射虚拟对象之前、期间或之后被接受和处理。这些效果可以全部由对象和姿势识别系统接收,并甚至由摄像机和麦克风接收,用于眼部跟踪、语音跟踪和注意力引导。
图6、7和8的例子在图9中显示为简化的过程流程。在901处,过程开始,并生成三维空间。该空间包括两个显示器以及任意其它真实或虚拟对象。两个显示器之间的三维关系被确定且被包含于所述空间中。可以利用与任一或两个显示器相关联的资源或与其它处理资源相关联的资源来做出所述确定。
在903处,选择虚拟对象以在虚拟3D空间中使用。可以基于在第一或第二显示器上呈现的虚拟对象的列表来选择虚拟对象。然后用户利用命令作出选择,以在发射对象之前选择虚拟对象。还可以通过基于在真实空间中观察对象而在显示器上呈现虚拟对象的选择而选择虚拟对象。这些对象可以是附近对象或先前观察的对象。所述系统可以生成至少一个观察的真实对象的表示,然后基于所述表示生成虚拟对象。所生成的虚拟对象然后可以表示为在第一显示器上虚拟对象的选择。在903处的操作是可选的,且可以由默认或预先确定的选择替代。
在905处,可以在显示器上可选地表示虚拟对象。这可以是虚拟对象的表示或者如上所述的虚拟位置离开屏幕的虚拟对象的影子。在907处,接收到发射命令以从第一显示器或离开第一显示器发射虚拟对象。命令可以是多种形式,包括触摸屏姿势(例如,在第一显示器上执行的触摸屏运动以从第一显示器发射虚拟对象)或空中姿势。所述姿势可以是投掷运动以在第一显示器处投掷虚拟对象。所述投掷运动可以在触摸屏上执行或在与第一显示器相关联的摄像机或超声传感器的视野内。由于对象是虚拟的,所以在虚拟对象的虚拟位置和姿势的位置之间存在空间关系。这可以用于在接收到发射命令之前表示在第一显示器上的虚拟对象,并用于在接收到发射命令之后表示在第一显示器上的虚拟对象。还可以在第一显示器上表示姿势,以及虚拟对象的视图和与姿势的空间关系。
在907处,可以在第一显示器上表现虚拟对象以及姿势。虽然该操作不是必要的,其可以提高发射虚拟对象的乐趣或准确性。
在911处,确定从第一显示器朝向第二显示器的虚拟对象的轨迹。该确定可以考虑:发射虚拟对象的用户姿势,在发射对象时与任意虚拟绑定的交互,对象的本质及其如何行进,以及对象发射至的3D空间的性质,例如虚拟路径或道路、天气、其它对象等。
在913处,可以从用户处接收到引导命令,以在虚拟对象的至第二显示器的路上引导虚拟对象。引导命令可以通过在屏幕上、在空中或者直接借助第一显示器(例如通过倾斜或摇晃显示器)执行姿势而被执行。应用引导命令来修改所确定的轨迹,并且所述引导命令可以包括转向、速度、加速度、倾斜、滚动以及偏航命令。在一个例子中,引导命令包括通过观察用户而确定的用户姿势。用户可以利用其脸部所指向的方向、其眼部所指向的方向以及用户语音的方向来进行命令。这些可以利用摄像机和麦克风而被确定。
在915处,在第二显示器上表示虚拟对象。这允许待从第一显示器发射的虚拟对象被发送给第二显示器,然后发送回第一显示器或另一显示器或者在第二显示器处停止行进。通过利用两个不同的显示器改善了用户的交互。
图10示出了用户的虚拟反射如何能用于增强用户与计算设备的交互的侧视图。然而,在图10的例子中,存在单个显示器,也可以借助如上所述的双屏幕例子来使用交互。
以下的第一例子示出了游戏概念“牛仔和金鱼”。在该游戏中,用户1011通过捏住屏幕并虚拟地将牛仔角色提升离开屏幕而选择牛仔角色。然后用户移动他的手到有利位置以将牛仔掉落到金鱼上。金鱼可以是移动目标,以增强游戏的难度。所显示的牛仔和金鱼可以是动画的,以做出各种移动和噪声来娱乐用户。该系统可以利用各种传感器在提升虚拟角色期间以及在其之后跟踪用户的手,所述传感器包括但不限于:触摸屏;具有嵌入式光电传感器的屏幕;一个或多个2D摄像机、3D摄像机以及超声传感器。
在图10中,用户提升牛仔离开放置在桌子1015上的显示器1013。与显示器相关联的传感器观察用户的移动,以创建游戏玩法。在图10中,用户的手被示出为持有虚拟对象,例如虚拟牛仔,并准备好朝向在屏幕上显示的对象来掉落、投掷、轻弹、击打或射击虚拟对象。同时,所有传感器和计算资源可以是平板计算机或智能电话1013的一部分,取代那些所示出的显示器,或者除了那些所示出的显示器外,可以使用外部传感器和处理资源。
在图11中,示出了图10的屏幕显示器。金鱼1021在鱼缸1019中游动。向用户1011呈现将在游戏中使用的不同角色(例如,不同的牛仔)的选择面板1017。在例如使用触摸屏姿势选择了角色之后,用户可以如图所示提升所选的角色离开屏幕,并随后试图将牛仔1025掉落到金鱼1021之一上。
当提升角色时,生成对应于所述角色的虚拟对象并可以在显示器上示出所述虚拟对象。所述显示器将虚拟对象表示为虚拟对象和用户的手的反射1023。这一反射表示为在鱼缸1019的顶部离开水的反射。为了提供更现实的效果,所述反射在鱼缸的边缘处结束。同样的原理可以应用于其它所显示的反射表面,例如玻璃、金属、其它类型的水表面、云等。类似地,将牛仔和金鱼提供为例子,任何各种其它角色和对象可以表现为选项,用来发射至任意其它类型的对象或角色。典型例子包括炸弹和潜艇、飞镖和目标、鸟和虫、或者任何各种不同想象军队和宇宙飞船目标。
利用传感器,屏幕能够显示用户手部的各种虚拟视图以及手虚拟包含的来自所述游戏的对象和角色。在牛仔和金鱼例子中,用户虚拟地持有牛仔,并看到显示持有牛仔的手的水中的反射。
可以将相同的技术应用于具有掉落到场景上的降落伞或伞的角色上。图12的例子示出了一种游戏,其中用户试图虚拟地将角色1225掉落到移动的公共汽车1223上。公共汽车移动跨过在河上的桥。水提供了在其上可能渲染反射的表面。掉落的角色利用伞作为降落伞飘落。如在先前的例子中,在图12的顶视图中,在水中虚拟地反射(持有角色的)手。基于所选的虚拟对象和用户的观察而呈现模块的屏幕生成用户和虚拟对象的反射1223。这允许用户看到在特定方向掉落或投掷角色的可能效果。还示出了用户的实际手1211作为参考,以查看手的反射1223在水中如何与所渲染的反射有关。
可以以任何各种不同方式创建虚拟反射。在一个例子中,可以实际地捕捉手作为图像,并且可以添加来自游戏的角色以创建复合图像。可以检测手并将其与传入的视觉领域区别开。然后将元素添加到所捕捉的图像中。在另一例子中,利用手的大致位置,系统能够显示与真实手的位置匹配的手模型。
在图13中表示该游戏的侧视图,其示出相同的用户作为在天空中持有角色的虚拟手1231。该视图可以呈现在第二屏幕上作为相同屏幕上的可选视图,或者作为具有图12的视图的拆分屏幕。可以借助未在这里显示的额外的和可选的显示器来增强用户交互。将示例显示器提供为例子,并且可以向用户呈现多个其它视图。在图12和13的显示器中,同时示出漂浮的多个释放的对象。
在另一实施例中,在另一屏幕处投掷对象之前,使用一个屏幕来创建、编辑和选择在一个屏幕上的对象或对象属性。用户能够编辑或建立触摸屏上的角色,然后通过用空中姿势捡拾和投掷向第二屏幕,或者通过利用触摸屏上的姿势以用姿势发射,将所述角色发射向另一显示器。此外,第一屏幕(例如,平板计算机)的方向和倾斜可以用于确定对象的目标。
参考图14,第一用户1411利用十字弓状的控制1413将角色从平板计算机1415发射到TV屏幕1417。另一用户1421利用另一平板计算机1425的触摸屏折叠纸飞机1423。然后第二用户将纸飞机发射向TV屏幕1417。多个玩家可以在竞争或合作游戏中制作并虚拟投掷对象。此外,在向主屏幕1417发射虚拟对象之后,玩家可以使用平板计算机作为控制器来在飞机在第二屏幕上飞行时调遣飞机。当图14聚焦于两个屏幕时,可以对这种游戏的各个版本使用三个或更多屏幕。此外,TV屏幕1417可以是任意类型的屏幕或显示器。
以上描述的实施例允许多个步骤的方法来支持利用触摸一个设备以编辑对象然后虚拟地将其发射到另一屏幕而玩的游戏。在一个实施例中,IR(红外)发射器和接收器组合或超声发射器和接收器可以用于检测用户的目标。在平板计算机中的加速计可以用于检测倾斜,以便确定所发射的对象的轨迹中的变化。替代地可以使用其它交互。例如,利用平板计算机作为方向盘以驱动在平板计算机上呈现的道路。
这种交互还可以与虚拟飞绳(fly)钓鱼交互一起使用。在这种情况下,用户可以定义竿并在较小的手持设备上定义飞绳。然后用户可以使用设备作为杆以将飞绳抛向较大屏幕。
上述例子将z轴姿势与x-y平面触摸屏交互集成,以创建、选择和编辑虚拟对象。在链接z轴姿势以输入到触摸屏期间,利用在屏幕上的增强现实反射提供反馈。触摸屏输入或空中姿势输入允许在附近显示器上选择和跟踪角色。然后角色可以用于生成在一个或多个屏幕上的增强现实表示。
利用触摸屏输入和z轴或者空中姿势作为输入,允许表示已经借助待显示的触摸屏选择的用户手部和任意虚拟对象或者角色。用户可以使用触摸屏选择对象,然后用姿势将所述对象向另一屏幕投掷。可能在不同设备上或在所有屏幕设备外部的与一个或多个屏幕相关联的摄像机和/或超声传感器跟踪投掷姿势或其它姿势。除了投掷或发射外,手持设备的倾斜还可以用于在对象移动朝向另一屏幕时控制该对象。
图15是组合到单个过程流程中的一些所描述技术的过程流程图。在1511处,过程开始,并且用户触摸屏幕以选择对象。可选地,键盘或控制器按钮可以用于选择对象。对象可以是诸如牛仔的角色或者诸如纸飞机的动画对象。
在1513处,当用户的手持有虚拟对象离开触摸屏时,系统跟踪用户的手。这可以利用附接到触摸屏或附接到任何各种其它设备的传感器来完成。在生成用户和虚拟对象的表示之后,系统然后可以显示持有虚拟对象的用户的手的表示。这一表示可以被表示为虚拟对象和用户的反射或替代视图。虽然以上例子示出了用户的手以及可能示出手臂,如果使用其它身体部分用于空中姿势,则可以替代地示出那些其它身体部分,例如脚用于足球游戏。
在1515处,用户执行释放或发射姿势以掉落虚拟对象或发射虚拟对象。以上提供了各种不同的例子,例如,投掷、击打或射击对象。可以使用虚拟绑定,并且可以将各种不同惯性和加速效果应用于虚拟对象。
在1517处,系统显示了在相关屏幕上一个或多个释放的对象的表示。这些的例子是如上所述的牛仔和伞状降落伞。在生成和显示了表示之后,过程可以返回到发射更多的虚拟对象。
在上述例子中,将虚拟对象描绘为用于玩游戏的游戏件。然而,各种实施例并不局限于此,并且如前所讨论的,虚拟对象VO可以是文件、照片文件、视频文件、音乐文件、电子邮件或联系数据的图形表示。此外,图形表示可以与可能发送到另一设备的特定文件、照片、视频文件、音乐文件、电子邮件或联系数据相关联。参考图16,虚拟对象可以是在显示器1617上将转移到第二设备的文件的图形表示。用户可以利用身体部分1611借助捏住姿势选择或捡拾与以上讨论的类似的虚拟对象。可以借助发送到第二设备的第二显示器1615的虚拟对象创建虚拟绑定1621。用户可以瞄准且释放虚拟对象朝向第二显示器1615,尤其是第二显示器1615的具体区域。如上所述,相邻屏幕透视2和相邻屏幕透视模块2可以协作以确定用于虚拟对象的特定着陆区域。第二显示器1615可以示出将文件转移或发送到的打开文件夹位置,并且可以显示虚拟对象将着陆在该打开文件夹位置的指示。用户可以然后释放虚拟对象,并且可以用类似以上讨论的方式在第二屏幕1615上渲染虚拟对象。另外,还可以将与虚拟对象相关联的信息或数据发送或转移到具有第二显示器1615的第二设备。可以经由任意有线或无线联网单元或连接,将该信息发送给第二设备。在另一例子中,用户可以利用虚拟对象以类似的方式发送电子邮件或联系数据。
图17示出了用于将虚拟对象从第一设备1717的显示器1721跨桌子1715发送到第二设备1719的第二显示器的另一实施例。如前所讨论的,由相邻屏幕透视模块和设备接近度检测模块可以检测到多于一个设备。第一设备1717可以检测其它设备,并可以确定其面的并将虚拟对象发送到的其它设备中的哪一个。如前所讨论的,相邻屏幕透视模块可以确定第一设备的显示屏相对于接收设备的显示屏的相对角度。例如,使用加速计可以允许确定第一设备1717(例如,发送设备)被保持的角度,同时红外或超声可以允许确定第一设备1717关于第二设备1719上的传感器的方向。然后该信息可以用于确定多个设备中的哪一个是目标或是接收设备。以类似的方式,其它设备可以通过利用加速计和传感器确定设备(接收/目标设备)中的哪一个是发送设备所面对的,以准备好接收虚拟对象。然后可以将虚拟对象转移或发送到第二设备1719,并在第二设备的屏幕上呈现。
现在参考图1A,在设备D1的ED1的屏幕上出现虚拟对象VO,在该实施例中所述设备D1包括如前所述的智能电话设备。在图1A中示出用户的手朝向VO移动,并将要捏住并提升VO离开ED1。接着参考图1B,所示出的用户的手捏住VO,以便通过触摸屏捏住姿势而在其拇指和指头之间虚拟地获取VO。图4A和4B的触摸屏传感器系统在此时可以是活动的,以感测和解释用户的手与ED1的屏幕之间的交互。接下来参考图1C,将用户的手描绘为仍旧虚拟地持有VO,将其移动到ED2的屏幕上的位置,也就是在笔记本显示器的屏幕上。至少从用户的手离开其相对于ED1的屏幕的接触位置时起,利用如上结合图4A和4B描述的GCS1和/或GCS2,ID1、ID2、UD1或UD2或所有检测器可以跟踪其与VO交互的空中移动。因此,到用户的手放置在笔记本显示器ED2上时,可以在ED1中在用户的手获取到VO的位置处显示VO的影子,并且VO的影子还可以显示在ED2中在VO实际被移动到ED2之前在ED2上VO的可选目标释放位置处。接下来参考图1D,示出用户的手在做捏住-释放姿势,这可以由ID2/UD2捕捉以便影响如图所示VO虚拟释放到ED2上。由于释放姿势,通过从ED1移动到ED2而将VO以及其下的属性和数据有效地从D1移动到D2。接下来参考图1E,示出用户的手放置在靠近ED2的屏幕,以便重新获取ED2上的VO。在图1E的描述中,用户的手做出空中捏住姿势,这可以由ID1/UD1或ID2/UD2捕捉作为相对于VO的获取姿势。接下来参考图1F,将用户的手描绘为仍然虚拟地持有VO,将VO移动到ED1的屏幕上的位置,也就是在智能电话显示器的屏幕上。到用户的手放置在笔记本显示器ED2上时,可以在ED2中在用户的手获取到VO的位置处示出VO的影子,VO的影子还可以显示在ED1中在VO实际被移动到ED1之前在ED1上的VO的可选目标释放位置处。接下来参考图1G,示出用户的手做出捏住-释放姿势,这可以由ID2/UD2捕捉以便如图所示影响VO虚拟释放到ED2上。由于释放姿势,通过从ED2移动到ED1而将VO以及其下的属性和数据有效地从D2移动回D1。接下来参考图1H,示出通过与D1相关联的GCS1(图4A/4B)的惯性能力,VO已经从其释放位置移动,这影响了基于用户的手释放姿势的动态和VO的虚拟属性的跨ED1的屏幕的VO的继续移动。遍及图1A-1H描绘的过程,结合图4A/4B描述的GCS1和GCS2可以是活动的,以跟踪用户的手部移动,从而影响超过给定显示器的VO的移动。
接下来参考图2A-2D,其描绘了另一实施例,其中,用户的手是有效的以创建在电子显示器上的虚拟绑定,这可以有效地将VO从显示器移动到另一显示器。如图2A所描绘的,用户的手可以在屏幕上捏住,例如在其角落处,并且如图2B所描绘的,用户的手然后可以将捏住的手指从ED1的屏幕移动回去,在此时虚拟绑定可以出现以如图所示从ED1的屏幕突出,通过3D进行增强。如图2B所示,并且如上所解释的,虚拟绑定可以包括在手指和被操纵的VO之间的3D虚拟系绳。因此,虚拟绑定可以提供相对于用户身体部分移动的运动存储器的模拟,这对于提供虚拟反馈给关于用户的移动的用户是关键的。例如,虚拟绑定可以以一个或多个虚拟系绳或虚拟壁的形式出现。虚拟绑定例如可以具体实现为十字弓或弹弓,或者具有可以被用于将对象从一个虚拟位置移动到另一虚拟位置的任何其它虚拟对象的形状。接下来参考图2C,用户可以用另一只手拦截虚拟绑定,例如通过相对于如图所示的虚拟绑定作出捏住姿势。这种与虚拟绑定的交互可以使得虚拟绑定弯曲,并因此例如当虚拟绑定朝向用户的另一只手伸展时将VO拉向其自己。因此,与虚拟绑定的交互可以引起虚拟绑定的特性的改变,例如其动态属性(动能、目标方向等)。接下来参考图2D,用户的另一只手被视为相对于虚拟绑定影响释放姿势,这在所示例子中使得VO根据其惯性属性现在出现在ED2上。遍及图2A-2D描绘的过程,结合图4A/4B描述的GCS1和GCS2可以是活动的以跟踪用户的手部移动,从而影响超过给定显示器的VO的移动。
接下来参考图3A-3C,其描绘了替代实施例,其中通过将VO移动到屏幕的边圈区域而将VO移动超过电子显示器。“边圈”在即时描述中意思是在显示器的边或边缘处的区域。在设备显示器上空间约束的情况下或为了其它原因,例如VO可以被移动到设备的边圈。首先参考图3A,如先前结合图1B描述的,通过ED1上的触摸屏捏住姿势,用户的手在拇指和手指之间虚拟地获取VO。接下来参考图3B,如图所示,用户的手可以用姿势表示捏住手指到超过ED1的屏幕的边圈区域。接下来,如图3C所示,用户的手可以如图所示在边圈区域作出捏住-释放姿势,这个姿势可以在D1的边圈区域中释放VO。然后标记M可以示出所述VO被放置在D1的边圈上的位置。遍及如图3A-3C所描绘的过程,与图4A/4B所示的GCS1类似的姿势捕捉系统可以是活动的,以跟踪用户的手部移动,从而影响超过ED1并且到所述边圈区域的VO的移动。
结合图1A-1H、图2A-2D以及图3A-3C的实施例,虽然仅描绘了某些具体的手部运动和姿势来影响对应的期望结果,但是实施例并不局限于此,并且在其范围内涵盖无论是通过手还是其它方式将姿势捕捉系统调整为适应任何可应用的姿势集合,以影响超过给定显示器的VO移动。例如,VO可以被撞击或轻弹向另一显示器,或者食指从拇指的轻弹例如可以表示希望VO的跨屏幕移动。在替代中,为了表示期望跨屏幕事件,用户能够首先通过姿势或触摸给定设备上的按钮而进入模式。注意的实施例还允许一旦将VO释放到新的显示器上(例如,通过被虚拟地飞溅或扁平化),将释放姿势的惯性属性转移到VO的行为,并且根据一个实施例,结合图4A/4B描述的这种姿势捕捉系统可以适应于允许这种VO(基于其惯性属性)与新屏幕上的其它对象交互。
另外,关于图2A-2D的实施例,没有必要用两只手控制虚拟绑定,并且实施例包含以任意其它方式操纵虚拟绑定,例如,通过单只手虚拟绑定可以进一步在3D中描绘或未描绘,并且例如可以利用不同于在图中描述的那些的姿势进行操纵,例如,通过摇晃手以检测虚拟绑定或用另一只手切割它们。此外,虚拟绑定和跨显示器移动可以根据用户不需触摸显示器的实施例而发生,例如通过用户的手的空中移动。
还应该注意的是,关于实施例,虽然图1A-1H、2A-2D和3A-3C所描述的实施例属于利用手姿势操纵VO,但实施例并不局限于此,可以在其范围内包括使用任意身体部分的移动来操纵VO,并还使用系绳到VO的不同部分的不同身体部分,例如通过虚拟绑定。身体部分可以包括身体的任意部分,例如手,脚、头、眼睛、腿、臂等。
接下来参考图5A,示出了方法实施例的流程图。根据图5A,方法500可以包括:在框510处,从图像检测器接收输入数据,所述输入数据包括从跟踪与电子显示器的虚拟对象交互的用户身体部分的空中移动获得的数据,并且在框520处,将输入数据映射为控制输入,以将虚拟对象移动超过显示器。
结合图5B,示出了用于第二方法实施例的流程图。根据图5B,方法550可以包括:在框552处,基于在显示器上显示的虚拟对象的第一位置处的一个或多个检测到的触摸输入,从触摸屏传感器接收第一输入数据。此外,在框554处,所述方法可以包括基于在远离显示器上的第一位置的方向上检测到的非触摸式运动,从超声传感器接收第二输入数据。最后,在框554处,所述方法可以包括基于第二输入数据,跟踪从第一位置到第二位置的检测到的非触摸式运动,并基于所述跟踪,确定虚拟对象的第二位置。
有利地,实施例允许姿势识别,例如通过组合触摸和空中姿势,以允许用户虚拟获取虚拟对象,并将其跨屏幕移动或移动到显示器的边圈区域。实施例还允许使用姿势识别以允许用户虚拟地从一个屏幕投掷或射击虚拟对象到另一个屏幕,可选地在新屏幕上的虚拟对象的动态行为中保存用户的释放移动的惯性属性。此外,有利地,实施例允许姿势识别,以允许用户通过经过虚拟绑定作出姿势而控制虚拟对象的行为,例如,尤其是在刚通过姿势将虚拟对象放置在屏幕上之后。虚拟绑定提供实时的虚拟反馈,以将认知过程和借助利用虚拟体验的图形仿真的物理对象操纵所体验的触觉期望链接在一起。例如,虚拟绑定有利地允许通过身体部分的移动操纵虚拟对象,例如,通过被移动、下推为扁平或放大,或者通过木偶线状控制进行操纵。此外,有利地,实施例允许同一用户上的多个点通过虚拟绑定(例如,虚拟绑定可以出现在屏幕上用于多个手指中的每一个,或者用于每只臂和每条腿,等等)被束缚到显示器上的各个元素。随后有利地可以借助用户上的多个点的协调姿势控制因此被束缚的虚拟对象。
根据一些实施例,用户可以有利地能够将虚拟对象从一个显示器弹跳到另一显示器。例如用户可以持有VO,并将其朝向显示器投掷。VO将从第一显示器弹跳开然后去到另一显示器,并可能返回第一显示器。已经描述的装置的实施例因此支持跟踪虚拟对象的姿势、位置和物理现象。在一些实施例的领域内,用户还可以将虚拟抛射物从一个屏幕发射到另一个屏幕。借助具有屏幕的手持设备,用户能够拉回VO,显示虚拟绑定,然后释放VO以虚拟地从用户持有的手持设备的屏幕弹跳开并朝向第二显示器。在这种系统中,用户能够借助触摸屏选择VO(所述选择可以自动移动到虚拟绑定以操纵VO,或者用户可以简单地拖曳VO,这取决于游戏)。利用虚拟绑定可以将所选的VO作为抛射物发射。在玩具有这种系统的游戏时,第一系统可以在某点跟踪游戏的进展,然后将参数(经由直接无线连接或通过网络)传递给第二设备,该第二设备然后从所述点捡起游戏。在虚拟绑定场景中,用户能够使用语音命令来改变将要发射的对象的本质(颜色、种类、容量)或者改变其如何发射的本质,或者改变当用户这样做时在显示器上出现的视图。可选地,例如眼睛跟踪的次级移动可以用于影响虚拟对象的目标和物理现象。根据一个选项,用户能够使用系统来扫描真实对象,然后在虚拟世界中将其用作VO。
图18示出适合于实现如前面描述的各种实施例的示例性计算架构1800的实施例。在一个实施例中,所述计算架构1800可以包括或者被实现为计算设备D1和D2的一部分。
如在本申请中使用的,术语“系统”和“部件”意指计算机相关实体,是硬件、硬件和软件的组合、软件、或执行中的软件,其示例由示例性计算架构1800提供。例如,部件可以是但不限于在处理器上运行的过程、处理器、硬盘驱动器、(光学和/或磁性存储介质的)多个存储驱动器、对象、可执行代码、执行线程、程序、和/或计算机。通过例证的方式,在服务器上运行的应用和服务器可以都是部件。一个或多个部件可存在于过程和/或执行线程内,且部件可本地化在一个计算机上和/或分布在两个或更多个计算机之间。此外,部件可通过各种类型的通信介质通信地耦合到彼此以协调操作。协调可涉及信息的单向或双向交换。例如,部件可能以通过通信介质传递的信号的形式传递信息。信息可被实现为分配到各种信号线的信号。在这样的分配中,每个消息是信号。然而,另外的实施例可以替代地使用数据消息。这样的数据消息可越过各种连接被发送。示例性连接包括并行接口、串行接口、以及总线接口。
计算架构1800包括各种公共计算元件,例如一个或多个处理器、多核处理器、协处理器、存储器单元、芯片组、控制器、外围设备、接口、振荡器、定时设备、视频卡、音频卡、多媒体输入/输出(I/O)部件、电源等。然而实施例并不限于由计算架构1800做出的实现。
如图18所示,计算架构1800包括处理单元1804、系统存储器1806和系统总线1808。处理单元1804可以是各种市场上可买到的处理器中的任一个。
系统总线1808提供系统部件的接口,包括但不限于系统存储器1806到处理单元1804。系统总线1808可以是多种总线架构中的任意一种,其可以进一步利用各种商业可获得的总线架构中的任一种互连到存储器总线(具有或不具有存储器控制器)、外围总线以及本地总线。接口适配器可以经由槽架构连接到系统总线1808。示例性槽架构可以包括但不限于:加速图形端口(AGP)、卡片总线、(扩展)工业标准架构((E)ISA)、微通道架构(MCA)。NuBus、外围部件互连(扩展)(PCI(X))、快速PCI,个人计算机存储器卡国际1800可以包括或实现各种制品。制品可以包括计算机可读存储介质用于存储逻辑。计算机可读存储介质的例子可以包括能够存储电子数据的任意有形介质,包括易失性存储器或非易失性存储器、可移除或不可移除存储器、可擦除或不可擦除存储器、可写或可重写存储器等。逻辑的例子可以包括利用任意适当类型的代码实现的可执行计算机程序指令,所述代码例如源代码、编译代码、翻译代码、可执行代码、静态代码、动态代码、面向对象代码、视觉代码等。实施例还可以至少部分地实现为包含于非暂时性计算机可读介质中或其上的指令,其可以由一个或多个处理器读取并执行以支持执行本文描述的操作。
系统存储器1806可包括具有一个或多个较高速存储器单元形式的各种类型的计算机可读存储介质,例如只读存储器(ROM)、随机存取存储器(RAM)、动态RAM(DRAM)、双数据率DRAM(DDRAM)、同步DRAM(SDRAM)、静态RAM(SRAM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪存、聚合物存储器例如铁电聚合物存储器、奥氏存储器、相变或铁电存储器、硅-氧化物-氮化物-氧化物-硅(SONOS)存储器、磁卡或光卡、诸如独立磁盘冗余阵列(RAID)驱动器的设备阵列、固态存储器设备(例如,USB存储器、固态驱动器(SSD)),和适合于存储信息的任何其它类型的存储介质。在图18所示的示出的实施例中,系统存储器1806可包括非易失性存储器1810和/或易失性存储器1812。基本输入/输出系统(BIOS)可存储在非易失性存储器1810中。
计算机1802可包括具有一个或多个较低速度存储器单元形式的各种类型的计算机可读存储介质,包括内部(或外部)硬盘驱动器(HDD)1814、从可移动磁盘1818读取或写到可移动磁盘1818的磁性软盘驱动器(FDD)1816、以及从可移动光盘1822(例如CD-ROM或DVD)读取或写到可移动光盘1822的光盘驱动器1820。HDD 1814、FDD 1816、光盘驱动器1820可分别通过HDD接口1824、FDD接口1826以及光学驱动器接口1828连接到系统总线1808。外部驱动器实现的HDD接口1824可包括通用串行总线(USB)和IEEE 1394接口技术中的至少一个或两个。
驱动器和相关联计算机可读介质提供数据、数据结构、计算机可执行指令等的易失性和/或非易失性存储。例如,多个程序模块可存储在驱动器和存储器单元1810、1812中,包括操作系统1830、一个或多个应用程序1832、其它程序模块1834、以及程序数据1836。在一个实施例中,一个或多个应用程序1832、其他程序模块1834、以及程序数据1836可以包括例如系统的各种应用和/或部件。
用户可通过一个或多个有线/无线输入设备(例如键盘1838)和指点设备(例如鼠标1840)将命令和信息输入到计算机1802中。其它输入设备可包括麦克风、红外(IR)遥控器、射频(RF)遥控器、游戏板、手写笔、读卡器、软件狗、指纹阅读器、手套、图形输入板、控制杆、键盘、视网膜阅读器、触摸屏(例如,电容性的、电阻性的等)、轨迹球、轨迹板、传感器、尖笔等。这些和其它输入设备通常通过耦合到系统总线1808的输入设备接口1842连接到处理单元1804,但是可以通过其它接口(例如,并行端口、IEEE 1394串行端口、游戏端口、USB端口、IR接口等)连接。
监视器1844或其它类型的显示设备也经由接口(例如视频适配器1846)连接到系统总线1808。监视器1844可以在计算机1802的内部或外部。除了监视器1844以外,计算机一般包括其它外围输出设备,例如扬声器、打印机等。
计算机1802可使用逻辑连接经由到一个或多个远程计算机(例如远程计算机1848)的有线和/或无线通信在联网环境中操作。远程计算机1848可以是工作站、服务器计算机、路由器、个人计算机、便携式计算机、基于微处理器的娱乐电器、对等设备或其它公共网络节点,且一般包括关于计算机1802描述的很多或所有元件,虽然为了简洁的目的,只示出存储器/存储设备1850。所描绘的逻辑连接包括到局域网(LAN)1852和/或较大的网络(例如广域网(WAN)1854)的有线/无线连接。这样的LAN和WAN联网环境在办公室和公司中是普遍的,且促进全企业计算机网络,例如内联网,所有这些网络都可连接到全球通信网络,例如互联网。
当在LAN联网环境中使用时,计算机1802通过有线和/或无线通信网络接口或适配器1856连接到LAN 1852。适配器1856可促进到LAN 1852的有线和/或无线通信,LAN 1852也可以包括布置在其上的无线接入点,用于与适配器1856的无线功能进行通信。
当在WAN联网环境中使用时,计算机1802可包括调制解调器1858,或在WAN 1854上连接到通信服务器,或具有用于通过WAN 1854(例如通过互联网方式)建立通信的其它单元。可以是内部或外部的且是有线和/或无线设备的调制解调器1858经由输入设备接口1842连接到系统总线1808。在联网环境中,关于计算机1802描绘的程序模块或其中部分可存储在远程存储器/存储设备1850中。将认识到,所示的网络连接是示例性的,且可使用建立计算机之间的通信链路的其它手段。
计算机1802可操作来与使用IEEE 802标准家族的有线和无线设备或实体进行通信,例如操作地布置成进行无线通信(例如IEEE 802.11空中调制技术)的无线设备。这包括至少Wi-Fi(或无线保真)、WiMax、以及BluetoothTM无线技术等。因此,通信可以如同常规网络一样是预先定义的结构或简单地是在至少两个设备之间的ad hoc通信。Wi-Fi网络使用被称为IEEE 802.11x(a、b、g、n等)的无线电技术来提供安全、可靠、快速的无线连接。Wi-Fi网络可用于将计算机连接到彼此、到互联网、以及到有线网络(其使用IEEE 802.3相关的介质和功能)。
如结合图1-18在先描述的计算设备的各种元件可以包括各种硬件元件、软件元件、或两者的组合。硬件元件的例子可以包括设备、逻辑设备、部件、处理器、微处理器、电路、处理器、电路元件(例如,晶体管、电阻器、电容器、电感器等)、集成电路、专用集成电路(ASIC)、可编程逻辑设备(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、存储器单元、逻辑门、寄存器、半导体设备、芯片、微芯片、芯片组等。软件元件的例子可以包括软件部件、程序、应用、计算机程序、应用程序、系统程序、软件开发程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、函数、方法、进程、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号、或其任意组合。然而,确定实施例是利用硬件元件和/或软件元件实现可以根据任意数量的因素而变化,例如,期望的计算速率、功率级别、耐热性、处理周期预算、输入数据速率、输出数据速率、存储器资源、数据总线速度和其它设计或性能约束,如给定实现方式所期望的。
详细的公开现在转向提供属于其它实施例的例子。以下提供的例子一到三十二(1-32)意图是示例性而非限制性的。
在第一个例子中,一种检测运动的计算设备,包括:处理器部件;触摸屏模块,用于在所述处理器部件上执行,以基于在显示器上表示的虚拟对象的第一位置处的一个或多个检测到的触摸输入,接收来自触摸屏传感器的第一输入数据;超声输入模块,用于在所述处理器部件上执行,以基于与所述虚拟对象相关联的检测到的非触摸式运动,接收来自超声传感器的第二输入数据;以及虚拟对象跟踪器模块,用于在所述处理器部件上执行,以基于所述第二输入数据,跟踪从所述显示器的第一位置沿着远离所述显示器的方向到第二位置的检测到的非触摸式运动。
在第二个例子中,一种检测运动的计算设备可以具有一个或多个触摸输入,其包括触摸姿势以选择所述虚拟对象,以及非触摸式运动包括定向运动以指示所述虚拟对象在不同于显示平面的平面上的移动。
在第三个例子中,一种检测运动的计算设备可以包括:对象和姿势识别模块,用于在所述处理器部件上执行,以基于所述第二输入数据来确定与所述非触摸式运动相关联的姿势。
在第四个例子中,一种检测运动的计算设备可以具有虚拟对象跟踪器模块,用于基于从所述对象和姿势识别模块接收到的信息来跟踪所述非触摸式运动,并基于所述信息来确定所述第二位置。
在第五个例子中,一种检测运动的计算设备可以包括虚拟对象跟踪器模块,用于基于所述第二输入数据和所述姿势,来确定所述虚拟对象在所述第二位置处被释放。
在第六个例子中,所述检测运动的计算设备可以包括对象速度和方向模块,用于在所述处理器部件上执行,以基于从所述虚拟对象跟踪器模块接收到的信息,来确定所述虚拟对象的轨迹和速度中的一个或多个。
在第七个例子中,所述检测运动的计算设备可以包括:虚拟对象行为模块,用于在处理器部件上执行,以基于从所述对象速度和方向模块接收到的信息检测所述虚拟对象到所述第二位置的移动。检测运动的计算设备还可以包括屏幕渲染模块,用于在所述处理器部件上执行,以将所述虚拟对象的渲染从与所述第一位置相关联的第一渲染改变到与所述第二位置相关联的第二渲染。
在第八个例子中,所述检测运动的计算设备可以包括超声传感器,用于检测在距离所述显示器10厘米或更近的距离处的运动。
在第九个例子中,一种装置可以包括壳体,用于容纳所述装置的一个或多个部件,所述壳体包括位于所述显示器周围的边圈以及布置在所述壳体的边圈内的超声传感器。
在第十个例子中,所述检测运动的计算设备可以包括虚拟对象,其可以包括以下中的至少一个:图像、应用、文件、照片、视频文件、电子邮件或联系数据。
在第十一个例子中,一种计算机实现的方法可以包括:基于在显示器上表示的虚拟对象的第一位置处的一个或多个检测到的触摸输入,接收来自触摸屏传感器的第一输入数据;基于与所述虚拟对象相关联的检测到的非触摸式运动,接收来自超声传感器的第二输入数据;以及基于所述第二输入数据,跟踪从所述第一位置到第二位置的检测到的非触摸式运动,所述检测到的非触摸式运动从所述显示器的第一位置沿着远离所述显示器的方向到第二位置。
在第十二个例子中,一种计算机实现的方法可以包括一个或多个触摸输入,其包括触摸姿势以选择所述虚拟对象,而所述非触摸式运动包括定向运动以指示所述虚拟对象在不同于显示平面的平面上的移动。
在第十三个例子中,一种计算机实现的方法可以包括:基于所述第二输入数据确定与非触摸式运动相关联的姿势。
在第十四个例子中,一种计算机实现的方法可以包括:基于从所述对象和姿势识别模块接收到的信息来跟踪所述非触摸式运动,并基于所述信息来确定所述第二位置。
在第十五个例子中,一种计算机实现的方法可以包括:基于所述第二输入数据和所述姿势,确定所述虚拟对象在所述第二位置处被释放。
在第十六个例子中,一种计算机实现的方法可以包括:基于从所述虚拟对象跟踪器模块接收到的信息,确定所述虚拟对象的轨迹和速度中的一个或多个。
在第十七个例子中,一种计算机实现的方法可以包括:基于从所述对象速度和方向模块接收到的信息,检测所述虚拟对象到所述第二位置的移动;以及将所述虚拟对象的渲染从与所述第一位置相关联的第一渲染改变到与所述第二位置相关联的第二渲染。
在第十八个例子中,一种物品可以包括含有多条指令的计算机可读存储介质,其中所述指令在被执行时使得处理电路能够被用于:基于在显示器上表示的虚拟对象的第一位置处的一个或多个检测到的触摸输入,接收来自触摸屏传感器的第一输入数据;基于与所述虚拟对象相关联的检测到的非触摸式运动,接收来自超声传感器的第二输入数据;基于所述第二输入数据,跟踪从所述第一位置沿着远离所述显示器的方向到第二位置的检测到的非触摸式运动。
在第十九个例子中,一种物品可以包括含有多条指令的计算机可读存储介质,其中所述指令在被执行时使得处理电路能够被用于:基于在显示器上表示的虚拟对象的第一位置处的一个或多个检测到的触摸输入,接收来自触摸屏传感器的第一输入数据;基于与所述虚拟对象相关联的检测到的非触摸式运动,接收来自超声传感器的第二输入数据;所述一个或多个触摸输入包括触摸姿势以选择所述虚拟对象,而所述非触摸式运动包括定向运动以指示所述虚拟对象在不同于显示平面的平面上的移动。
在第二十个例子中,一种物品可以包括含有多条指令的计算机可读存储介质,其中所述指令在被执行时使得处理电路能够被用于:基于所述第二输入数据来确定与所述非触摸式运动相关联的姿势。
在第二十一个例子中,一种物品可以包括含有多条指令的计算机可读存储介质,其中所述指令在被执行时使得处理电路能够被用于:基于从所述对象和姿势识别模块接收到的信息来跟踪所述非触摸式运动,并基于所述信息来确定所述第二位置。
在第二十二个例子中,一种物品可以包括含有多条指令的计算机可读存储介质,其中所述指令在被执行时使得处理电路能够被用于:基于所述第二输入数据和所述姿势,确定所述虚拟对象在所述第二位置处被释放。
在第二十三个例子中,一种物品可以包括含有多条指令的计算机可读存储介质,其中所述指令在被执行时使得处理电路能够被用于:基于从所述虚拟对象跟踪器模块接收到的信息,确定所述虚拟对象的轨迹和速度中的一个或多个。
在第二十四个例子中,一种物品可以包括含有多条指令的计算机可读存储介质,其中所述指令在被执行时使得处理电路能够被用于:基于从所述对象速度和方向模块接收到的信息,检测所述虚拟对象到所述第二位置的移动;以及将所述虚拟对象的渲染从与所述第一位置相关联的第一渲染改变到与所述第二位置相关联的第二渲染。
在第二十五个例子中,一种装置可以包括:用于基于在显示器上表示的虚拟对象的第一位置处的一个或多个检测到的触摸输入而接收来自触摸屏传感器的第一输入数据的单元;用于基于与所述虚拟对象相关联的检测到的非触摸式运动而接收来自超声传感器的第二输入数据的单元;以及用于基于所述第二输入数据而跟踪从所述显示器的第一位置沿着远离所述显示器的方向到第二位置的检测到的非触摸式运动的单元。
在第二十六个例子中,一种装置可以包括用于基于在显示器上表示的虚拟对象的第一位置处的一个或多个检测到的触摸输入而接收来自触摸屏传感器的第一输入数据的单元;用于基于与所述虚拟对象相关联的检测到的非触摸式运动而接收来自超声传感器的第二输入数据的单元;所述一个或多个触摸输入包括触摸姿势用来选择所述虚拟对象,而所述非触摸式运动包括定向运动以指示所述虚拟对象在不同于显示平面的平面上的移动。
在第二十七个例子中,一种装置可以包括:用于基于所述第二输入数据来确定与所述非触摸式运动相关联的姿势的单元。
在第二十八个例子中,一种装置可以包括:用于基于从所述对象和姿势识别模块接收到的信息来跟踪所述非触摸式运动并基于所述信息来确定所述第二位置的单元。
在第二十九个例子中,一种装置可以包括:用于基于所述第二输入数据和所述姿势来确定所述虚拟对象在所述第二位置处被释放的单元。
在第三十个例子中,一种装置可以包括:用于基于从所述虚拟对象跟踪器模块接收到的信息来确定所述虚拟对象的轨迹和速度中的一个或多个的单元。
在第三十一个例子中,一种装置可以包括:基于从所述对象速度和方向模块接收到的信息来检测所述虚拟对象到所述第二位置的移动的单元;以及
在第三十二个例子中,一种装置可以包括用于将所述虚拟对象的渲染从与所述第一位置相关联的第一渲染改变到与所述第二位置相关联的第二渲染的单元。
可以利用表达“一个实施例”或“实施例”以及其衍生词描述一些实施例。这些术语表示结合实施例描述的特定特征、结构或特性被包含于至少一个实施例中。在说明书各处出现的短语“在一个实施例中”不必全指同一实施例。此外,可以利用表达“耦合”和“连接”及其衍生词描述一些实施例。这些术语不必意图作为彼此的同义词。例如,可以利用术语“连接”和/或“耦合”来描述一些实施例,以表示两个或更多元件直接物理或电接触彼此。然而,术语“耦合”还可以表示两个或更多元件彼此不直接接触,但是彼此仍合作或交互。
需要强调的是,提供了本公开的摘要以允许读者快速确认技术公开的本质。可以理解的是,其并不用于解释或限制权利要求的范围或含义。另外,在上述具体实施方式中,可以看出为了使得公开顺畅,而将特种特征组合到单个实施例中。本公开的这种方法不应被解释为反映所要求保护的实施例需要比每个权利要求明确记叙的更多特征的意图。而是,如后续权利要求反应的,发明的主题存在于比单个公开实施例的所有特征少的特征。因此,后续权利要求由此并入具体实施方式中,每个权利要求独立作为单独的实施例。在随附权利要求中,术语“包括(including)”和“其中(in which)”分别用作相应术语“包括(comprising)”和“其中(wherein)”的简明英语的等价词。此外,术语“第一”、“第二”、“第三”等仅用作标记,并不意图对其目标施加数字要求。
上述内容包括公开架构的例子。当然,不可能描述每个想到的部件和/或方法的组合,但是本领域普通技术人员可以认识到多个其它组合和排列是可能的。因此,新颖的架构意图包括所有这些落入随附权利要求的精神和范围内的改变、修改和变化。

Claims (24)

1.一种用于检测运动的计算设备,包括:
处理器部件;以及
触摸屏模块,用于在所述处理器部件上执行,以基于在显示器上表示的虚拟对象的第一位置处的一个或多个检测到的触摸输入来接收来自触摸屏传感器的第一输入数据;
超声输入模块,用于在所述处理器部件上执行,以基于与所述虚拟对象相关联的检测到的非触摸式运动来接收来自超声传感器的第二输入数据;以及
虚拟对象跟踪器模块,用于在所述处理器部件上执行,以基于所述第二输入数据来跟踪从所述显示器上的所述第一位置沿着远离所述显示器的方向到第二位置的所述检测到的非触摸式运动。
2.如权利要求1所述的计算设备,所述一个或多个触摸输入包括触摸姿势,用来选择所述虚拟对象,而所述非触摸式运动包括定向运动,用来指示所述虚拟对象在不同于显示平面的平面上的移动。
3.如权利要求1所述的计算设备,包括:
对象和姿势识别模块,用于在所述处理器部件上执行,以基于所述第二输入数据来确定与所述非触摸式运动相关联的姿势。
4.如权利要求3所述的计算设备,所述虚拟对象跟踪器模块用于基于从所述对象和姿势识别模块接收到的信息来跟踪所述非触摸式运动,并基于所述信息来确定所述第二位置。
5.如权利要求4所述的计算设备,所述虚拟对象跟踪器模块用于基于所述第二输入数据和所述姿势来确定所述虚拟对象在所述第二位置处被释放。
6.如权利要求1所述的计算设备,包括对象速度和方向模块,用于在所述处理器部件上执行,以基于从所述虚拟对象跟踪器模块接收到的信息来确定所述虚拟对象的轨迹和速度中的一个或多个。
7.如权利要求6所述的计算设备,包括:
虚拟对象行为模块,用于在所述处理器部件上执行,以基于从所述对象速度和方向模块接收到的信息来检测所述虚拟对象到所述第二位置的移动;以及
屏幕渲染模块,用于在所述处理器部件上执行,以将所述虚拟对象的渲染从与所述第一位置相关联的第一渲染改变到与所述第二位置相关联的第二渲染。
8.如权利要求1所述的计算设备,所述超声传感器用于检测在距离所述显示器10厘米或更近距离处的运动。
9.如权利要求1所述的计算设备,包括:
壳体,用于容纳装置的一个或多个部件,所述壳体包括位于所述显示器周围的边圈以及布置在所述壳体的边圈内的所述超声传感器。
10.如权利要求1所述的计算设备,所述虚拟对象包括以下中的至少一个:图像、应用、文件、照片、视频文件、电子邮件或联系数据。
11.一种计算机实现的方法,包括:
基于在显示器上表示的虚拟对象的第一位置处的一个或多个检测到的触摸输入,接收来自触摸屏传感器的第一输入数据;
基于与所述虚拟对象相关联的检测到的非触摸式运动来接收来自超声传感器的第二输入数据;以及
基于所述第二输入数据来跟踪从所述第一位置到第二位置的检测到的非触摸式运动,所述检测到的非触摸式运动从所述显示器上的所述第一位置沿着远离所述显示器的方向到第二位置。
12.如权利要求11所述的方法,所述一个或多个触摸输入包括触摸姿势,用来选择所述虚拟对象,而所述非触摸式运动包括定向运动,用来指示所述虚拟对象在不同于显示平面的平面上的移动。
13.如权利要求11所述的方法,包括:
基于所述第二输入数据来确定与所述非触摸式运动相关联的姿势。
14.如权利要求13所述的方法,包括:
基于从所述对象和姿势识别模块接收到的信息来跟踪所述非触摸式运动,并基于所述信息来确定所述第二位置。
15.如权利要求14所述的方法,包括:
基于所述第二输入数据和所述姿势来确定所述虚拟对象在所述第二位置处被释放。
16.如权利要求11所述的方法,包括:
基于从所述虚拟对象跟踪器模块接收到的信息来确定所述虚拟对象的轨迹和速度中的一个或多个。
17.如权利要求16所述的方法,包括:
基于从对象速度和方向模块接收到的信息来检测所述虚拟对象到所述第二位置的移动;以及
将所述虚拟对象的渲染从与所述第一位置相关联的第一渲染改变到与所述第二位置相关联的第二渲染。
18.一种计算机实现的装置,包括:
用于基于在显示器上表示的虚拟对象的第一位置处的一个或多个检测到的触摸输入来接收来自触摸屏传感器的第一输入数据的单元;
用于基于与所述虚拟对象相关联的检测到的非触摸式运动来接收来自超声传感器的第二输入数据的单元;以及
用于基于所述第二输入数据来跟踪从所述显示器上的所述第一位置沿着远离所述显示器的方向到第二位置的所述检测到的非触摸式运动的单元。
19.如权利要求18所述的装置,所述一个或多个触摸输入包括触摸姿势,用来选择所述虚拟对象,而所述非触摸式运动包括定向运动,用来指示所述虚拟对象在不同于显示平面的平面上的移动。
20.如权利要求18所述的装置,包括:用于基于所述第二输入数据来确定与所述非触摸式运动相关联的姿势的单元。
21.如权利要求20所述的装置,包括:用于基于从所述对象和姿势识别模块接收到的信息来跟踪所述非触摸式运动,并基于所述信息来确定所述第二位置的单元。
22.如权利要求21所述的装置,包括:用于基于所述第二输入数据和所述姿势来确定所述虚拟对象在所述第二位置处被释放的单元。
23.如权利要求18所述的装置,包括:用于基于从所述虚拟对象跟踪器模块接收到的信息来确定所述虚拟对象的轨迹和速度中的一个或多个的单元。
24.如权利要求23所述的装置,包括:
用于基于从对象速度和方向模块接收到的信息来检测所述虚拟对象到所述第二位置的移动的单元;以及
用于将所述虚拟对象的渲染从与所述第一位置相关联的第一渲染改变到与所述第二位置相关联的第二渲染的单元。
CN201480034487.3A 2013-07-23 2014-07-23 触摸式和非触摸式用户交互输入的技术 Active CN105324736B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/948,683 2013-07-23
US13/948,683 US9152306B2 (en) 2011-03-29 2013-07-23 Techniques for touch and non-touch user interaction input
PCT/US2014/047814 WO2015013404A1 (en) 2013-07-23 2014-07-23 Techniques for touch and non-touch user interaction input

Publications (2)

Publication Number Publication Date
CN105324736A CN105324736A (zh) 2016-02-10
CN105324736B true CN105324736B (zh) 2018-09-11

Family

ID=52393810

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480034487.3A Active CN105324736B (zh) 2013-07-23 2014-07-23 触摸式和非触摸式用户交互输入的技术

Country Status (2)

Country Link
CN (1) CN105324736B (zh)
WO (1) WO2015013404A1 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10463954B2 (en) * 2016-03-07 2019-11-05 Microsoft Technology Licensing, Llc Mechanical center calibration of control sticks in user input devices
WO2018031621A1 (en) * 2016-08-11 2018-02-15 Magic Leap, Inc. Automatic placement of a virtual object in a three-dimensional space
WO2018234866A2 (en) * 2017-06-23 2018-12-27 Zyetric Virtual Reality Limited INCREASED INTERACTIVE REALITY OF ROLE PLAY IN SUBJECTIVE VIEW
US11126258B2 (en) * 2017-10-14 2021-09-21 Qualcomm Incorporated Managing and mapping multi-sided touch
US10556174B2 (en) 2017-10-25 2020-02-11 Microsoft Technology Licensing, Llc Calibration bias for control mechanisms in user input devices
CN108958475B (zh) * 2018-06-06 2023-05-02 创新先进技术有限公司 虚拟对象控制方法、装置及设备
US11073898B2 (en) * 2018-09-28 2021-07-27 Apple Inc. IMU for touch detection
US10970922B2 (en) * 2018-09-28 2021-04-06 Apple Inc. Generating a 3D model of a fingertip for visual touch detection
CN110448896A (zh) * 2018-10-10 2019-11-15 网易(杭州)网络有限公司 游戏中虚拟操作的控制方法、装置和移动终端
CN111610921A (zh) * 2019-02-26 2020-09-01 北京小米移动软件有限公司 手势识别方法及装置
CN112486621B (zh) * 2020-12-07 2022-05-06 广州朗国电子科技股份有限公司 一种基于io电平的横竖屏适配方法、设备及存储介质
CN114035759B (zh) * 2021-08-06 2023-12-22 重庆康佳光电科技有限公司 屏幕控制方法、控制终端、屏幕和计算机可读存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201239743A (en) * 2011-03-29 2012-10-01 Intel Corp Continued virtual links between gestures and user interface elements
CN102830795A (zh) * 2011-06-23 2012-12-19 艾利维公司 利用运动传感装置的远程控制

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6842401B2 (en) * 2000-04-06 2005-01-11 Teratech Corporation Sonar beamforming system
US20110169832A1 (en) * 2010-01-11 2011-07-14 Roy-G-Biv Corporation 3D Motion Interface Systems and Methods
US8410922B2 (en) * 2010-11-23 2013-04-02 The Watt Stopper Inc. Motion sensor with ultrasonic modulation
US8842495B2 (en) * 2011-09-23 2014-09-23 Rethink Robotics, Inc. Ultrasonic motion detection

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201239743A (en) * 2011-03-29 2012-10-01 Intel Corp Continued virtual links between gestures and user interface elements
CN102830795A (zh) * 2011-06-23 2012-12-19 艾利维公司 利用运动传感装置的远程控制

Also Published As

Publication number Publication date
WO2015013404A1 (en) 2015-01-29
CN105324736A (zh) 2016-02-10

Similar Documents

Publication Publication Date Title
CN105324736B (zh) 触摸式和非触摸式用户交互输入的技术
US9152306B2 (en) Techniques for touch and non-touch user interaction input
US9360933B2 (en) Virtual links between different displays to present a single virtual object
TWI546725B (zh) 於手勢和使用者介面元件間之延續虛擬連結技術
US9330478B2 (en) Augmented reality creation using a real scene
KR101574099B1 (ko) 다수의 장치에 걸친 증강 현실 표현
CN103501868B (zh) 用于对分开的计算机游戏元素的控制的方法和系统
US8957858B2 (en) Multi-platform motion-based computer interactions
US20220233956A1 (en) Program, method, and information terminal device
WO2018196552A1 (zh) 用于虚拟现实场景中的手型显示方法及装置
CN108958475A (zh) 虚拟对象控制方法、装置及设备
CN108355347B (zh) 交互控制方法、装置、电子设备及存储介质
CN106029187A (zh) 悬停敏感设备上的高级游戏结构
US8842120B2 (en) Physics rules based animation engine
US11049309B2 (en) Motion tracking and image recognition of hand gestures to animate a digital puppet, synchronized with recorded audio
JP2020028653A (ja) ゲームプログラム、方法、および情報処理装置
JP6404412B1 (ja) ゲームプログラム、方法、および情報処理装置
JP2019103815A (ja) ゲームプログラム、方法および情報処理装置
JP2019098163A (ja) ゲームプログラム、方法、および情報処理装置
US12029973B2 (en) Game program, game method, and information terminal device
JP6661595B2 (ja) ゲームプログラム、方法および情報処理装置
JP2018187360A (ja) ゲームプログラム、方法、および、情報処理装置
JP2018187078A (ja) ゲームプログラム、方法、および、情報処理装置
JP2019030674A (ja) ゲームプログラム、方法、および情報処理装置
JP2019034216A (ja) ゲームプログラム、方法および情報処理装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant