CN104737102B - 用于多维输入的导航方法 - Google Patents

用于多维输入的导航方法 Download PDF

Info

Publication number
CN104737102B
CN104737102B CN201380010931.3A CN201380010931A CN104737102B CN 104737102 B CN104737102 B CN 104737102B CN 201380010931 A CN201380010931 A CN 201380010931A CN 104737102 B CN104737102 B CN 104737102B
Authority
CN
China
Prior art keywords
computing
feature
user
movement
variable
Prior art date
Application number
CN201380010931.3A
Other languages
English (en)
Other versions
CN104737102A (zh
Inventor
道格拉斯-马修·布姆斯
帕拉格·K.·加格
乔纳森·D.·莫里森
Original Assignee
亚马逊技术公司
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 to US13/404,213 priority Critical patent/US9423877B2/en
Priority to US13/404,213 priority
Application filed by 亚马逊技术公司 filed Critical 亚马逊技术公司
Priority to PCT/US2013/026828 priority patent/WO2013126386A1/en
Publication of CN104737102A publication Critical patent/CN104737102A/zh
Application granted granted Critical
Publication of CN104737102B publication Critical patent/CN104737102B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04812Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance interaction techniques based on cursor appearance or behaviour being affected by the presence of displayed objects, e.g. visual feedback during interaction with elements of a graphical user interface through change in cursor appearance, constraint movement or attraction/repulsion with respect to a displayed object
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object or an image, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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/04886Interaction 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 by partitioning the screen or tablet into independently controllable areas, e.g. virtual keyboards, menus

Abstract

可通过提供锁定或减小非期望方向上的运动的影响的机构来改善到计算装置的多维手势输入。在一个实例中,用户可在二维中导航,然后通过第三维度上的运动提供选择动作。如果分析所述手势的计算装置能够检测到所述选择动作,那么所述装置可限制对应第三维度以外的运动以保证执行适当的选择动作。各种阈值、值或运动可用来为了如本文讨论的任何适当目的限制一个或多个轴上的运动。

Description

用于多维输入的导航方法
背景
人们正逐渐使用便携式电子装置来执行多种任务。由于多种任务增加,因此增加以新的且有帮助的方式与这些装置交互的期望。一种这样的交互方法涉及在装置的可检测范围内作出手势或具体运动。例如,用户可在某个方向上移动手或手臂以提供输入给装置。不幸的是,诸如不同的水平和垂直运动的某些运动并不是人类用户所固有的。尤其由于人类的手指、手和手臂每个附接在单一各自枢转点处(这通常导致随着用户运动而引起一定量的旋转),所以输入将通常存在一定的漂移或角度。取决于诸如装置的分辨率或灵敏度的因素,这样的非线性或其它这样的偏离量可导致将不准确或不可确定的输入提供给装置。
附图简述
将参考附图描述根据本公开的各个实施方案,其中:
图1示出了用户提供基于运动的输入给根据各个实施方案的电子装置的实例;
图2(a)和图2(b)示出了示例性程序,用户通过所述程序能够提供二维或三维运动以指定元件来进行选择且使用沿单一维度的运动以选择根据各个实施方案的所述元件;
图3(a)、图3(b)和图3(c)示出了用于确定可根据各个实施方案使用的特征的位置的基于照相机的方法;
图4(a)、图4(b)和图4(c)示出了用户在尝试选择根据各个实施方案的界面对象时可能作出的例示性固有运动;
图5(a)、图5(b)、图5(c)、图5(d)、图5(e)和图5(f)示出了可用来根据各个实施方案确定接受和/或处理的输入方向的数量的示例性运动阈值或准则;
图6示出了用于接受沿可根据各个实施方案使用的适当数量的方向的输入的示例性程序;
图7示出了可根据各个实施方案使用的示例性计算装置;
图8示出了诸如图7中示出的计算装置的组件的示例性配置;和
图9示出了其中可实施各个实施方案的示例性环境。
详述
根据本公开内容的各个实施方案的系统和方法可以克服常规方法中具有的前述和其它缺点中的一个或多个以提供输入给电子装置。特定地说,各个实施方案使用户能够使用在相距装置的某个距离处执行的运动或手势来提供各种类型的输入给电子装置。在至少一些实施方案中,用户能够在计算装置的一个或多个照相机的视野内执行手势和其它这样的运动。照相机可捕获可被分析来定位和跟踪用来执行手势的至少一个用户特征或对象的图像信息。计算装置可使用已识别的手势来确定要提供的输入,诸如要选择的字符、要进行的导航等等。
根据各个实施方案的方法可通过考虑由于固有的人类运动和其它这样的因素产生的漂移或非期望变化来改善基于运动或手势的输入的准确度。通常可执行两个或三个维度的手势,但是由于人体的机能,用户将通常不会以精确方式执行手势。各个实施方案可尝试确定不同类型的动作或手势(使用相对于装置运动沿一个轴或方向的运动而执行),诸如选择动作。即使用户可能在执行这些动作时使用其它方向上的运动,装置仍然可锁定或限制一个或多个其它方向上的运动量以尝试改善期望输入的准确度。为了如本文别处讨论且建议的任何适当目的,这样的方法可用于任何维度、轴、平面、方向或其组合。如果装置相对于用户特征或其它这样的对象移动,那么也可使用这样的方法。
下文关于各个实施方案展示各个其它应用程序、程序和使用。
如讨论的,各种方法使用户能够通过运动或手势输入提供输入给装置。例如,图1示出了示例性情况100,其中用户102能够通过在计算装置104的至少一个照相机106或传感器的视野108内移动特征(诸如用户的指尖110)来提供输入给计算装置104。虽然这个实例中的装置是便携式计算装置(诸如智能电话、平板电脑或个人数据助手),但是应了解任何适当的计算或电子装置可利用各个实施方案的各个方面,因为其可以包括个人计算机、机顶盒、智能电视机、视频游戏系统等等。在这个实例中,计算装置包括单一照相机,其被操作来捕获用户的指尖110的图像和/或视频且分析所述特征随时间变化的相对位置和/或运动以尝试确定用户打算提供给装置的输入。然而,应了解,类似于或不同于根据各个实施方案的装置的位置中可存在额外照相机或替代传感器或元件。可使用任何适当的算法分析图像以识别和/或定位感兴趣的特征以及跟踪随时间变化的所述特征。例如,2008年12月10日提交且标题是“Movement Recognition as Input Mechanism”的同在申请中的第12/332,049号美国专利申请中可找到由已捕获的图像信息跟踪特征的实例,所述申请是以引用的方式并入本文。
通过能够跟踪特征或对象相对于装置的运动,所述装置可使用户能够与(例如)显示在装置上的界面交互,且选择显示或以其它方式呈现为所述界面的部分的一个或多个对象。例如,在图2(a)的情况200中,用户能够在虚拟平面中相对于装置移动用户的手206(诸如在水平和垂直方向上相对于装置的显示屏装置移动用户的手206)以使虚拟光标208移动跨过显示在计算装置上的虚拟小键盘204。光标208由于所述特征相对于装置移动而可随着用户的手、手指或其它这样的特征移动,以使用户能够在不实际接触装置的情况下控制光标。虽然这个实例中使用光标和键盘,但是应了解,任何适当的界面元件可使用本文在各个实施方案的范围内讨论的方法。
当用户想要选择界面对象(诸如虚拟小键盘204上的字母或字符)时,用户可使用所跟踪的特征执行选择动作。在图2(b)的示例性情况220中,这个选择动作包括朝装置移动特征,无论是通过移动用户的整只手206或使用用户的指尖作出“推”的运动。装置能够区分沿正交于装置的显示屏的轴的这个运动(本文称作z运动)和平行于显示屏的平面中的运动以移动光标(本文称作x/y运动)。z运动然后可用来对装置指示:将选择当前指示的界面对象。应了解,在至少一些实施方案中,x/y运动无须在平行于显示屏的平面中,且在各个实施方案的范围内可允许至少一定的倾角或角度。
如提及,根据各个实施方案的方法可捕获并分析图像信息或其它传感器数据以确定诸如用户的特征的相对距离和/或位置的信息,所述信息能够提供(或辅助提供)这样的输入。例如,图3(a)、图3(b)和图3(c)示出了可根据各个实施方案使用的一种示例性方法,其用于确定用户的至少一个特征的相对方向和/或位置。在这个实例中,可通过监控用户的指尖304相对于装置的位置提供输入给计算装置302。在一些实施方案中,可使用单一照相机以捕获包括用户的指尖的图像信息,其中可在两个维度中由图像中指尖的位置和由图像中指尖的相对大小确定的距离来确定相对位置。在其它实施方案中,可使用距离检测器或其它这样的传感器来提供距离信息。已示出的计算装置302在这个实例中反而包括位于装置上且具有足够的分离的至少两个不同图像捕获元件306、308使得装置可使用立体成像(或另一种这样的方法)来在三个维度中确定一个或多个特征相对于装置的相对位置。虽然在这个实例中示出了装置的顶部和底部附近的两个照相机,但是应了解,在各个实施方案的范围内,装置上的各个其它位置处可存在相同或不同类型的额外或替代成像元件。照相机可包括全彩色照相机、红外线照相机、灰度照相机等等。此外,应了解,除非另有说明,否则诸如“顶部”和“上部”的术语是用于澄清解释且不旨在需要具体定向。
在这个实例中,上部照相机306能够看见用户的指尖304,前提是所述特征在上部照相机306的视野310内且上部照相机与所述特征之间不存在障碍。如果在计算装置上执行(或以其它方式与计算装置通信)的软件能够确定诸如照相机的角度视野、当前正捕获信息的缩放等级的信息和任何其它这样的相关信息,那么软件可确定指尖相对于上部照相机的大概方向314。如果只基于一个照相机的相对方向确定输入,那么大概方向314可能足以提供适当的输入,且无需第二照相机或传感器等等。在一些实施方案中,诸如超声波检测、特征大小分析、通过主动照明进行的亮度分析的方法或其它这样的距离测量方法也可用来辅助位置确定。
在这个实例中,第二照相机用来辅助位置确定以及通过立体成像实现距离确定。图3(a)中的底部照相机308还能够使指尖304成像,前提是所述特征至少部分在底部照相机308的视野312内。使用类似于上文描述的程序的程序,适当的软件可分析由底部照相机捕获的图像信息以确定用户指尖的大概方向316。在至少一些实施方案中,可通过查看相距图像的中心(或其它)点的距离和比较所述距离与照相机的视野的角度测量来确定方向。例如,所捕获的图像中间的特征有可能在各自捕获元件的正前方。如果所述特征正好是在图像的边缘处,那么所述特征有可能与正交于捕获元件的图像平面的矢量相距45度角。边缘与中心之间的位置对应于将为本领域一般技术人员所明白且本领域中已知用于立体成像的中间角度。一旦针对给定特征确定来自至少两个图像捕获元件的方向矢量,可确定所述矢量的交点,其对应于各自特征的三个维度中的大概相对位置。
进一步示出这种示例性方法,图3(b)和图3(c)示出了示例性图像320、340,其可能是使用图3(a)的照相机306、308捕获的指尖的图像。在这个实例中,图3(b)示出了可使用图3(a)中的上部照相机306捕获的示例性图像320。一个或多个图像分析算法可用来分析图像以执行模式识别、形状识别或另一这样的程序以识别感兴趣的特征,诸如用户的指尖、拇指、手或其它这样的特征。用来识别图像中的特征的方法(可以包括特征检测、脸部特征提取、特征识别、立体视觉探测、字符识别、属性估计或径向基函数(RBF)分析方法)在本领域中众所周知且本文将不会详细描述。当识别特征(这里是用户的手322)时,确定至少一个感兴趣的点324(这里是用户的食指的指尖)。如上文讨论,软件可使用这个点的位置和关于照相机的信息以确定指尖的相对方向。类似方法可搭配由如图3(c)中示出的底部照相机308捕获的图像340使用,其中定位手342且确定对应点344的方向。如图3(b)和图3(c)中示出,特征的相对位置至少部分由于照相机的分离而可能存在偏差。此外,由于感兴趣的特征的三个维度中的实际位置,可能存在偏差。通过寻找方向矢量的交点以确定三个维度中指尖的位置,可确定对应输入在确定的准确度等级内。如果需要较高准确度,那么各个实施方案中可使用较高解析度和/或额外元件。此外,在各个实施方案的范围内还可使用用于确定三个维度中的相对位置的任何其它立体或类似方法。
如讨论的,图像信息可用来跟踪用户相对于计算装置的特征,以使用户能够提供输入给计算装置。用户将通常相对于装置在一个、两个或三个维度中移动,且在至少一些实施方案中,可执行选择运动、动作或手势以选择特定图形元件。在至少一些情况下,这个选择动作可包括向前按压手指以虚拟地“推”或“按压”物品。类似手势也可用于其它目的,诸如其中用户向前按压手指以放大到屏幕区域中或以其它方式执行沿z方向的动作。图4(a)示出了示例性情况400,其示出了这个动作。在这个实例中,用户先前已在x/y方向上移动手指(如关于图2(a)讨论的)以使光标408移动到显示在计算装置上的虚拟键盘406的所希望的字符。当光标被示为位于所希望的字符上方时,例如用户可执行选择运动以(诸如)朝装置移动用户的手402的指尖。从装置的视角来看,用户应在z方向上沿示出的目标矢量410提供实质上朝装置的运动。
不幸的是,人体的结构和固有的人类运动的类型不会随意使其产生这种运动。例如,图4(b)示出了示例性情况420,其中从用户的视角来看,用户的手402的指尖的位置已“向前”移动。然而,如可知,手指附接在用作枢转点的指关节处的事实使指尖除了向前移动以外还向下移动。从计算装置的视角来看,此时指尖可被视为沿不同矢量422进行选择,因为x/y方向上的横向位置已改变。在这种x/y移动期间,光标可被确定也横向移动,这可造成用户意外地选择不正确的字符和/或造成装置不正确地解译所述运动从而选择不正确的字母。图4(c)示出了类似示例性情况440,其中用户通过移动用户的手402来向前移动指尖。如可知,手腕和/或手肘的枢转点使指尖作出类似x/y运动使得计算装置可能将选择动作解译为对应于不同于所期望的矢量410的矢量442或所述两个矢量之间任何矢量。
然而,应了解,x/y方向上也可能出现类似问题。例如,用户想要使用所述用户的手作出与左右翻页运动将通常由于人类枢转点和固有运动而在轨道中具有至少某个等级的弧度。类似地,用户想要通过作出向上运动用手向上翻页将通常还具有一定的z分量。因此,用户难以提供输入,当所述输入旨在具有主要沿一个或两个轴的运动但是固有运动可具有两个或三个轴上的分量时计算装置可准确地解译所述输入。
此外,当用户在看除了朝向作出手势的特征或分析手势的装置以外的方向时,可能更加难以控制用户执行精确手势的能力。例如,用户可能在和房间中的另一个人说话时提供手势输入给装置,其中用户注视所述另一个人而不是所述装置或手势。类似地,用户可能在提供手势输入给第一装置(诸如用户膝盖上的平板电脑或智能电话)时在注视第二装置(诸如电视机或监控器)。在一些情况下,第一装置可用来确定手势输入并提供输入数据给第二装置。也可出现其它这样的情况。当用户在注视别处时,用户可趋向于对检测装置作出的手势比用户在注视装置或手势时作出的手势的角度更大或精度至少更小,这可进一步影响装置确定正确输入或用户正确地执行所期望的手势的能力。
根据各个实施方案的系统和方法可通过使装置“锁定”或以其它方式限制用户作出的各种手势或其它运动期间的某些运动轴来提供改善了的基于手势或运动的输入。例如,装置可确定用户何时作出选择手势,且可将所检测的运动限制在选择手势的轴。可酌情设置或调整各个阈值、灵敏度或限制以改善手势解译和/或输入确定的准确度。
例如,图5(a)示出了可根据各个实施方案使用的示例性运动解译方法500。在这个实例中,用户使用诸如用户的手指502的特征以从显示在计算装置504上的虚拟小键盘选择字符。为了使虚拟光标或其它指示符移动“跨过”屏幕,用户可在实质上平行于显示屏的平面的平面中移动用户的手指(例如,诸如由移动矢量506示出)。可至少部分基于原始距离(如由装置检测或估计)来确定这个平面或矢量到用户的手指的距离。当用户想要选择字符时,用户将朝装置移动所述手指(或另一手指)以虚拟地“敲击”所述字符键。为了被识别为选择动作或手势,在这个实例中用户必须使手指向前移动最小的量。因此,所述移动量可被设定为相距所述装置的阈值508距离,用户必须在所述距离内移动手指以执行选择动作。如果用户没有在所述阈值距离内移动手指,那么z的任何变动可被解译为由用户在x/y平面中移动手指(或另一这样的动作)而引起的距离的固有变动。
当用户在所述选择阈值距离内移动手指(或其它已跟踪的特征)时,移动可被呈现为选择动作。此外,为了改善输入的准确度,在这个实施方案中,装置可被配置来在所述特征在所述选择阈值距离内行进时只考虑z方向移动。这种方法防止用户的手指在选择动作期间不小心在x/y移动从而选择不正确的字符。x/y的中的位置可被锁定,直到特征行进所述阈值508为止或在z方向开始时便锁定x/y的中的位置,因为这可依赖于所缓冲的位置数据或其它这样的信息。例如,图5(b)示出了示例性情况510,其中用户的手指512在选择阈值内行进。可知,除了z方向上的移动以外,x/y方向上也存在一定的移动。在至少一个实施方案中,装置可在开始选择运动时跟踪手势所处的位置,且可使用所述x/y坐标以进行选择运动。在一些实施方案中,反而可调整x/y运动的灵敏度使得所述方向上的运动仍是可能的,但是在选择阈值内部改变输入x/y位置需要更大的运动量。
图5(c)示出了另一示例性情况520,其中可用z方向上的运动量限制x/y方向上的移动。在这个实例中,装置允许z方向上存在与x/y方向上的移动量成比例的变动量。例如,用户可能想要在跟随移动矢量522时移动光标,但是x/y移动量允许最多角度θ的z方向移动(例如,10度至20度),从而产生相对距离阈值524。因此,如果用户具有极小的x/y移动,那么z中的任何小的移动可能足以呈现为选择动作,此时可如本文别处讨论般锁定或限制x/y中的输入的变化。随着x/y中的移动量增加,呈现为选择动作的z中的移动量因此增加。因此,如图5(d)中示出,在手指开始运动、跨过距离阈值之处的x/y中的选择位置或另一这样的位置的情况下手指到第一手指位置532的移动将不会呈现为选择输入,但是手指到第二手指位置534的移动将呈现为选择输入。
图5(e)示出了另一示例性方法540,其中除非x/y方向上至少存在阈值移动量542,否则运动输入可被锁定为z方向。因此,手指向前移动将被视为只沿z方向移动,前提是x/y位置保持在阈值542内。所述阈值以外的任何移动可被视为两个或三个维度中的输入。例如,在图5(f)中,手指位置544在阈值以外移动,使得运动没有被解译为选择动作。
应了解,各个实施方案的范围内也可使用各种其它类型的阈值或限制,且所述阈值可施加于任何方向上或沿任何适当的轴的移动。此外,这些阈值的位置和/或值还可随着诸如用户、装置、应用等等而变化。在一些实施方案中,阈值可能是固定距离或比例距离,而在其它实施方案中阈值可基于诸如用户距离、当前状态下的精确度等等的因素而变化。此外,在一些实施方案汇总,用户可手动设置或调整阈值,而在其它实施方案中阈值被自动确定或生成为校准程序的部分。在各个实施方案的范围内也可使用各种其它方法。
运动输入的锁定或限制可被执行为检测硬件的部分、分析软件的部分或在任何其它适当的位置下执行。还可以各个不同等级(诸如应用程序级、API级或操作系统级)实施各个方面。例如,已检测到选择动作的手势传感器可能忽略x/y中的移动或只报告z中的移动。确定选择动作的算法可能只分析z数据直到选择动作结束或发生另一这样的动作为止。在一些实施方案中,应用程序可能接受并缓冲全部三个维度中的数据,但是将沿一个或多个轴的输入锁定或限制在某些运动或动作上。如果数据被缓冲,那么存在额外优点:如果装置随后确定运动并不是选择动作的部分,那么可分析数据,或输入应不以其它方式被锁定或限制。在各个实施方案的范围内也可使用各种其它方法。
图6示出了用于使用可根据各个实施方案使用的手势和/或运动输入提供输入给计算装置的示例性程序600。应了解,对于本文讨论的任何程序,除非另有说明,否则各个实施方案的范围内可以类似或替代次序或并行执行额外、更少或替代步骤。在这个实例中,在计算装置上激活602特征跟踪。所述跟踪可由用户手动激活或响应于应用程序、激活、启动或其它这样的动作而自动激活。此外,程序跟踪的特征可由用户、供应商或其它这样的实体指定或调整,且可包括任何适当的特征,诸如指尖、手、拇指、手肘或其它这样的特征。在至少一些实施方案中,诸如可通过使用光传感器或分析所捕获的图像信息的强度来确定是否有足够的照明用于图像捕获和分析。在至少一些实施方案中,照明不充足的确定可造成装置上激活一种或多种类型的照明。在至少一些实施方案中,这可包括激活被定位来照明尝试捕获图像信息的至少一个照相机的视野内的特征的一个或多个白色光LED。如本文别处讨论,也可使用其它类型的照明,诸如有用于分离前景中的特征和图像的背景中的对象的红外线(IR)辐射。例如,2011年8月4日提交且标题是“Overcoming Motion Effects inGesture Recognition”的同在申请的第13/198,008号美国专利申请中可找到使用IR辐射来辅助定位用户的特征的实例,所述申请以引用方式并入本文。
在所述程序期间,一个或多个选定照相机或手势传感器可捕获如本文别处讨论的图像信息。选定照相机可具有包括显示元件前面的区域或装置的其它指定区域中的至少部分的视野,使得照相机可在与所述元件交互时使特征成像。在各个实施方案中可能是一系列静态图像或一串视频信息的所捕获的图像信息可被分析来尝试确定或定位604受监控的至少一个特征的相对位置,诸如用户的可看见的手的食指指尖的相对位置。如本文别处讨论,各种图像识别、轮廓匹配、颜色匹配或其它这样的方法可用来由所捕获的图像信息识别感兴趣的特征。一旦定位特征且确定其相对距离,可监控606所述特征随时间变化的运动,诸如以确定用户是否正执行指示提供输入的动作。
如讨论的,至少一个阈值或其它这样的衡量或准则可用来确定接受或确定输入的轴的数量。在运动的监控期间,装置可确定608运动是否满足关于所提供的输入的某个阈值、落在所述某个阈值内、以外或以其它方式达到或超过所述某个阈值。如果运动被确定在阈值以外,那么装置可在至少两个维度中实现610输入。在这个实例中,如果运动被确定落在阈值内部,那么输入可被减小612至少一个维度。如讨论的,这可涉及锁定或限制一个或多个方向上的运动以改善输入的准确度。对于某些运动,输入可能被有效地约束为某个方向或平面等等。由于运动关于阈值而改变,所以也可调整维度输入。
虽然本文讨论的许多实例涉及文字输入和元件选择,但是应了解各种其它用途也可获利于本文讨论的方法。例如,用户可使用运动和手势输入来导航、玩游戏、画图或其它这样的目的。当用户作出某个动作或运动时,装置可有效地锁定输入的一个或多个方向以改善输入的准确度。此外或替代地,关于上文讨论的阈值,其它动作或手势可用来辅助确定何时锁定输入的一个或多个方向。例如,用户可使用用户的手作出某个手势或形状,诸如使手指和拇指在一起或作出另一具体的手势。在其它实施方案中,速度可用来尝试确定何时锁定其它轴。例如,z中的选择动作可被确定为相对较快,而z中由于位置漂移出现的变动可能相对较慢,使得z中的动作必须具有至少最小速度以呈现为选择动作。在一些实施方案中,只有当特征相对于显示器上的可选择对象定位或位于其中锁定有意义或提供优势的其它位置时才发生锁定。某些上下文也可用来确定何时锁定输入,诸如当用户在打字和画图、翻页和翻动时等等。在至少一些实施方案中,当锁定输入时,界面可示出图标或其它指示符使得用户可知道装置将如何解译移动。
模式或手势识别算法也可内置智力以辅助确定如何解译运动。例如,模式识别可具有“自动校正”类型的特征,其中假设确信度或置信度等等的量最小,可能以字母(所述字母与键盘上的另一字母相邻)结尾的单词可能自动地被确定是所期望的输入。用于处理模式匹配中的小偏差以及执行文字输入的自动校正的各种方法在本领域中众所周知且因而将不会在本文加以详细讨论。
如提及,可使用各种方法来尝试定位和跟踪随时间变化的具体特征。一种这样的方法在数码相机(静态或视频)的情况下使用环境光成像以捕获图像以供分析。然而,在至少一些实例中,环境光图像可包括多个不同对象的信息,且因此分析可能是处理器和时间密集型的。例如,图像分析算法可能必须区分手和图像中的各个其它对象,且将必须识别所述手作为手而不论手的定向为何。这种方法可需要例如形状或轮廓匹配,这可能仍然是相对处理器密集的。较小处理器密集型方法可涉及在分析之前分离手和背景。
在至少一些实施方案中,发光二极管(LED)或其它照明源可被触发来在短时段内产生照明,在短时段内图像捕获元件将要捕获图像信息。LED可更多地照明比相距远处的其它元件相对极为接近装置的特征,使得图像的背景部分可能实质上是黑暗的(或取决于实施方式)。在一个实例中,在至少一个照相机或传感器的图像捕获的时间期间激活(例如,闪烁或选通)LED或其它照明源。如果用户的手相对接近装置,那么所述手将在图像中表现为相对明亮。因此,背景图像将会相对(不是几乎完全)表现为黑暗。在至少一些实施方案中,这种方法可尤其有利于红外线(IR)成像。这样的图像可能更加容易分析,因为手已经有效地与背景分离,且因此可能更加容易通过各个图像来跟踪。此外,要分析图像的较小部分以尝试确定用于跟踪的相关特征。在其中检测时间较短的实施方案中,通过闪烁至少一些实施方案中的LED所汲取的功率相对较小,即使LED本身可能每个单位时间相对高耗电也是如此。
这种方法在明亮或黑暗状况下可能均有效。在至少一些实施方案中可使用光传感器来确定何时至少部分由于照明担忧而需要照明。在其它实施方案中,装置可查看诸如在当前状况下处理图像以确定何时使LED脉动或选通所需要的时间量的因素。在其它实施方案中,当电池上剩余至少最小量的电荷(之后LED可能不会发光,除非用户或应用程序等等进行指导)时,装置可使用脉动照明。在一些实施方案中,照明和在短的检测时间内使用手势传感器捕获信息所需要的功率量可能小于在不照明的情况下使用滚动快门照相机捕获环境光图像所需要的功率量。
在一些实施方案中,计算装置可使用一个或多个运动确定元件(诸如电子陀螺仪)以尝试辅助位置确定。例如,装置的旋转可使图像中表示的对象出现迅速移位,这可能比位置跟踪算法可处理的移位更快。在图像捕获期间通过确定装置的移动,可消除装置移动的影响以为所跟踪的用户特征提供更加准确的三维位置信息。
图7示出了可用来执行根据本文讨论和建议的各个实施方案的方法的示例性计算装置700。在这个实例中,装置具有四个图像捕获元件704、706、712、714,其位于与显示元件702相同的装置的侧上的各个位置处,使装置能够在典型的操作期间捕获关于装置的用户的图像信息,其中用户至少部分在显示元件前面。在这个实例中,每个捕获元件是能够捕获可见和/或红外(IR)光谱内的图像信息的照相机,且在至少一些实施方案中可在可见操作模式与IR操作模式之间选择。然而,应了解在其它实施方案中可存在类似或替代类型的较少或额外元件,且可搭配各种装置使用照相机、红外线检测器、手势传感器和其它这样的元件的组合。
在这个实例中,包括光传感器708,其可用来确定要捕获的对象的一般方向上的光量;和如本文别处讨论的至少一个照明元件710(诸如白色发光二极管(LED)或红外线(IR)发射器),其用于在例如由光传感器确定的周围光不足或捕获到反射的IR辐射时在特定的方向范围中提供照明。装置可具有使用户能够通过在一个或多个位置处施加压力提供“压缩”输入给所述装置的材料和/或组件。装置盒还可包括使用户能够通过沿所述装置盒的部分滑动手指或其它对象提供输入的触敏材料。如根据本文包括的教学和建议应明白,在各个实施方案的范围内还可使用各个其它元件和元件组件。
为了提供本文描述的各种功能,图8示出了计算装置800的基本组件的示例性集合,诸如关于图7描述的装置700。在这个实例中,装置包括用于执行可存储在至少一个存储器装置或元件804中的指令的至少一个中央处理器802。如本领域一般技术人员将明白,装置可包括许多类型的存储器、数据存储装置或非暂时计算机可读存储介质,诸如由处理器802执行的程序指令的第一数据存储装置,相同或单独的存储装置可用于图像或数据,可抽换式存储器可用于和其它装置共享信息等等。装置通常将包括某种类型的显示元件806,诸如触摸屏、电子墨水(e-ink)、有机发光二极管(OLED)或液晶显示器(LCD),但是诸如便携式媒体播放器的装置可经由其它工具(诸如通过音频扬声器)传达信息。在至少一些实施方案中,显示屏使用例如电容式或电阻式触摸技术提供基于触摸或滑动的输入。
如讨论的,在许多实施方案中,装置将包括至少一个图像捕获元件808,诸如能够使装置附近的用户、人或对象成像的一个或多个照相机。图像捕获元件可包括或至少部分基于任何适当的技术,诸如具有已确定的分辨率、焦距范围、可见区域和捕获速率的CCD或CMOS图像捕获元件。图像捕获元件还可包括被操作来捕获用于确定用户的手势或运动的图像信息的至少一个IR传感器或检测器。示例性装置包括至少运动确定组件810,诸如用于确定装置的运动以辅助输入确定的电子陀螺仪。装置还可包括至少一个照明元件812,因为其可包括用于提供照明的一个或多个光源(例如,白光LED、IR发射器或闪光灯)和/或用于检测环境光或强度等等的一个或多个光传感器或检测器。
示例性装置可包括能够从用户接收常规输入的至少一个额外输入装置。这样的常规输入可包括例如按钮、触摸板、触摸屏、方向盘、操纵杆、键盘、鼠标、轨迹球、键盘或任何其它这样的装置或元件,因而用户可输入命令到装置。在一些实施方案中,这些I/O装置甚至还可由无线红外线或蓝牙或其它链路来连接。然而,在一些实施方案中,这样的装置可能根本不包括任何按钮且可只通过视觉(例如,手势)和音频(例如,说话)命令的组合来控制使得用户可在不需要接触装置的情况下来控制所述装置。
如讨论的,在各种环境中可根据所描述的实施方案实施不同方法。例如,图9示出了用于实施根据各个实施方案的各个方面的环境900的实例。如将明白,虽然为了解释目的而使用基于网页的环境,但是也可以酌情使用不同环境来实施各个实施方案。所述系统包括电子客户端装置902,其可包括被操作来通过适当的网络904发送和接收请求、消息或信息并将信息返回传达到装置的用户的任何适当的装置。这样的客户端装置的实例包括个人计算机、手机、手持式消息传递装置、膝上型计算机、机顶盒、个人数字助手、电子书阅读器等等。网络可包括任何适当的网络,包括内部网、互联网、手机网络、局域网或任何其它这样的网络或其组合。用于这样的系统的组件可至少部分取决于所选择的网络和/或环境的类型。用于经由这样的网络进行通信的协议和组件众所周知且将不会在本文详细讨论。通过网络进行的通信可经由有线或无线连接和其组合而启用。在这个实例中,网络包括互联网,因为所述环境包括用于接收请求且响应于接收请求而提供内容的网页服务器906,但是对于其它网络,如本领域一般技术人员将明白,可使用提供类似目的的替代装置。
说明性环境包括至少一个应用程序服务器908和数据存储区910。应了解,可存在多个应用程序服务器、应用程序层或其它元件、程序或组件,其可以被链接或以其它方式配置,其可交互以执行诸如从适当的数据存储区获得数据的任务。如本文使用,术语“数据存储区”是指能够存储、访问和检索数据的任何装置或装置组合,其可包括任何标准、分布式或集群式环境中的任何组合和数量的数据服务器、数据库、数据存储装置和数据存储介质。应用程序服务器908可包括任何适当的硬件和软件,其用于与数据存储区910集成以必要时执行客户端装置的一个或多个应用程序的多个方面并处理应用程序的大部分数据访问和商业逻辑。应用程序服务器协同数据存储区提供访问控制服务且能够产生诸如被传送到用户的文字、图形、音频和/或视频的内容,这可以由网页服务器906以HTML、XML或这个实例中的另一适当的结构化语言来提供给于用户。可由网页服务器906处理全部请求和响应的处理以及客户端装置902与应用程序服务器908之间的内容传递。应了解,网页和应用程序服务器不一定需要且只是示例性组件,因为本文讨论的结构化代码可在如本文别处讨论的适当的装置或主机上执行。
数据存储区910可包括多个单独数据表、数据库或用于存储与特定方面有关的数据的其它数据存储机构和介质。例如,已示出的数据存储区包括用于存储可用来提供生产方的内容912的内容(例如,生产数据)和用户信息916的机构。数据存储区还被示为包括用于存储日志或会话数据914的机构。应了解,可存在可需要存储在数据存储区中的许多其它方面,诸如可酌情存储在上文列出的机构中的任何一个或数据存储区910中的额外机构中的页面图像信息和访问权信息。数据存储区910可通过与其相关联的逻辑来操作以从应用程序服务器908接收指令并响应于接收指令而获得、更新或以其它方式处理数据。在一个实例中,用户可提交对某个类型的物品的搜索请求。在这种情况下,数据存储区可访问用户信息来验证用户的身份且可访问类别细节信息以获得关于所述类型的物品的信息。所述信息然后可以诸如网页上列出的用户能够经由用户装置902上的浏览器进行查看的结果传回到用户。可在浏览器的专用页面或窗口中查看感兴趣的特定物品的信息。
每个服务器通常将包括操作系统,其提供用于所述服务器的一般管理和操作的可执行程序指令,且通常将包括存储当由服务器的处理器执行时允许服务器执行其希望的功能的指令的计算机可读介质。用于服务器的操作系统和一般功能的适当实施方式众所周知或商业上可用且容易由本领域一般技术人员尤其根据本文的揭示内容来实施。
一个实施方案中的环境是使用经由通信链路、使用一个或多个计算机网络或直接连接进行互连的多个计算机系统和组件的分布式计算环境。然而,本领域一般技术人员将明白,这样的系统可同样在具有图9中示出的更少或更多数量的组件的系统中充分地操作。因此,图9中的系统900的描绘应被视为本质上具有说明性且不限于本公开的范围。
各个实施方案还可在多种操作环境中实施,在一些情况下操作环境可包括一个或多个用户计算机或计算装置,其可用来操作任何数量的应用程序。用户或客户端装置可包括任何数量的通用个人计算机,诸如运行标准操作系统的台式计算机或膝上型计算机以及运行移动软件且能够支持多个联网和消息传递协议的手机、无线和手持式装置。这样的系统还可包括为了诸如研发和数据库管理的目的运行多种商用操作系统和其它已知应用程序中的多个工作站中的任何一个。这些装置还可包括其它电子装置,诸如虚拟终端机、瘦客户端、游戏系统和能够经由网络进行通信的其它装置。
大部分实施方案使用将为本领域一般技术人员所熟悉的用来支持使用任何多种商用协议(诸如TCP/IP、OSI、FTP、UPnP、NFS、CIFS和可路由协议组)进行的通信的至少一个网络。网络可能是(例如)局域网、广域网、虚拟专用网、互联网、内部网、外部网、公共交换电话网、红外线网络、无线网络和其任何组合。
在使用网页服务器的实施方案中,网页服务器可运行任何多个服务器或中间层应用程序中的任何一个,包括HTTP服务器、FTP服务器、CGI服务器、数据服务器、Java服务器和商业应用程序服务器。服务器还可以能够诸如通过执行一个或多个网页应用程序来执行来自用户装置的响应请求中的程序或脚本,所述一个或多个网页应用程序可以被实施为以任何程序设计语言(诸如C、C#或C++或任何脚本语言,诸如Perl、Python或TCL以及组合)编写的一个或多个脚本或程序。服务器还可以包括数据库服务器,包括(不限于)可购自的所述服务器。
环境可包括如上文讨论的多种数据存储区和其它存储器和存储介质。这些可驻留在多个位置中,诸如计算机中的一个或多个的本地(和/或驻留在计算机中的一个或多个中)或远离跨网络的任何或全部计算机的存储介质上。在特定的一组实施方案中,信息可以驻留在为本领域一般技术人员所熟悉的存储区域网(SAN)中。类似地,用于执行属于计算机、服务器或其它网络装置的功能的任何必要文件可以酌情存储在本地和/或远方。如果系统包括计算机化装置,那么每个这样的装置可包括可以经由总线电连接的硬件元件,所述元件包括(例如)至少一个中央处理单元(CPU)、至少一个输入装置(例如,鼠标、键盘、控制器、触敏显示元件或键盘)和至少一个输出装置(例如,显示装置、打印机或扬声器)。这样的系统还可以包括一个或多个存储装置,诸如磁盘驱动器、光学存储装置和固态存储装置,诸如随机访问存储器(RAM)或只读存储器(ROM)以及可抽换式介质装置、存储卡、闪存卡等等。
这样的装置还可包括计算机可读存储介质读取器、通信装置(例如,调制解调器、网卡(无线或有线)、红外线通信装置)和如上所述的工作存储器。计算机可读存储介质读取器可连接或被配置来接收计算机可读存储介质(其表示远程、本地、固定和/或可抽换式存储装置)以及用于暂时和/或更永久地包括、存储、传输和检索计算机可读信息的存储介质。系统和各个装置还通常将包括多个软件应用程序、模块、服务或位于至少一个工作存储器装置内的其它元件,包括操作系统和诸如客户端应用程序或网页浏览器的应用程序。应明白,替代实施方案可以具有来自上述变动的多个变动。例如,还可使用定制硬件和/或可在硬件、软件(包括便携式软件,诸如小应用程序)或其两者中实施特定元件。此外,可以采用到其它计算装置的连接,诸如网络输入/输出装置。
用于包括代码或代码部分的存储介质和非暂时计算机可读介质可包括本领域中已知或使用的任何适当的介质,包括存储介质和通信介质,诸如(但不限于)以任何方法或技术实施来存储和/或传输信息(诸如计算机可读指令、数据结构、程序模块或其它数据)的易失性和非易失性、可抽换式和不可抽换式介质,包括RAM、ROM、EEPROM、快闪存储器或其它存储器技术、CD-ROM、数字通用光盘(DVD)或其它光学存储器、磁带盒、磁带、磁盘存储装置或其它磁性存储装置或可用来存储所希望的信息且可由系统装置访问的任何其它介质。基于本文提供的发明内容和教学,本领域一般技术人员将明白实施各个实施方案的其它方式和/或方法。
说明书和附图因此被视为说明性而不是限制意义。然而,将明白在不背离如权利要求陈述的发明的广泛精神和范围的情况下可作出各种修改和改变。
条款
1.一种启用至计算装置的输入的计算机实施方法,其包括:
在计算装置的显示屏上显示键盘;
使用所述计算装置的照相机捕获图像信息;
使用所述计算装置的处理器分析所述图像信息以确定用户的指尖相对于所述电子装置的位置;
更新显示在所述计算装置的所述显示屏上的光标的当前位置,所述光标被配置来在两个维度中移动跨过所述键盘,所述移动对应于所述用户的所述指尖在相对于所述显示屏的平面中的移动;
由所述已捕获的图像信息且使用所述处理器检测所述指尖朝所述显示屏的运动;且
如果所述指尖朝所述显示屏的位置的变化量至少满足选择阈值:
那么锁定所述光标的所述当前位置使得所述位置在所述指尖朝所述显示屏的所述运动期间不会发生改变;且
由于所述指尖朝所述显示屏的所述运动位于所确定的位置处,所以使所述键盘的字符在所述光标下被选择作为在所述计算装置上执行的应用程序的输入。
2.根据条款1所述的计算机实施方法,其还包括:
使所述光标的所述当前位置能够在所述指尖朝所述显示屏的运动量没有至少满足所述确定的选择阈值时继续更新。
3.根据条款1所述的计算机实施方法,其还包括:
在所述选择运动期间存储所述指尖的已检测运动,其中在所述选择运动的开始点处所述指尖在所述平面中的确定位置在选择所述字符时用作所述光标的所述当前位置。
4.根据条款1所述的计算机实施方法,其中所述选择阈值专用于所述用户或所述应用程序中的至少一个。
5.一种启用计算装置的输入的计算机实施方法,其包括:
使用所述计算装置的照相机捕获图像信息;
由所捕获的图像信息确定用户的特征相对于所述计算装置的位置,所述位置是以至少两个维度来确定;
检测由所述用户执行的预定动作;和
响应于检测到所述预定动作,限制提供给在所述计算装置上执行的应用程序的输入位置在至少一个维度中的变化量。
6.根据条款5所述的计算机实施方法,其中所述特征的所述位置能够以三个维度来确定且限制所述输入位置的变化量包括将所述变化量限制到一个或两个维度。
7.根据条款5所述的计算机实施方法,其中限制所述输入位置的所述变化量包括当所述用户正在执行所述预定动作时以至少一个维度锁定所述输入位置。
8.根据条款5所述的计算机实施方法,其中限制所述输入位置的所述变化量包括由于所述特征在至少一个维度中的对应移动而降低所述输入位置沿所述至少一个维度的变化量。
9.根据条款5所述的计算机实施方法,其中所述预定动作包括下列各项中的至少一个:用户移动所述特征经过选择阈值、以预定形状塑形所述特征、执行预定手势或发出预定命令。
10.根据条款5所述的计算机实施方法,其中所述预定动作可被自定义用于所述用户。
11.根据条款5所述的计算机实施方法,其中所述特征是下列各项中的一个:用户的手、头部、手指或拇指或者由所述用户握住的对象。
12.根据条款5所述的计算机实施方法,其还包括:
存储位置数据同时限制所述变化量,当确定检测到所述预定动作出现错误时能够使用所述位置数据。
13.根据条款5所述的计算机实施方法,其中确定多个特征的所述位置,且其中当检测到对应于所述特征的预定动作时在至少一个维度中限制提供用于所述多个特征中的至少一个的所述输入位置的所述变化量。
14.根据条款5所述的计算机实施方法,其中所述特征的所述确定位置的变化对应于所述特征或所述计算装置中的至少一个的移动。
15.根据条款5所述的计算机实施方法,其中确定所述特征的所述位置包括从所述电子装置发射红外线光且检测从所述特征反射回来的红外线光。
16.根据条款5所述的计算机实施方法,其还包括:
使用至少一个光传感器确定所述计算装置附近的光量;和
当所述光量低于最小光阈值时激活所述计算装置的至少一个照明元件。
17.根据条款5所述的计算机实施方法,其还包括:
在所述位置的所述确定期间使用所述计算装置的运动传感器确定所述计算装置的运动量;和
在确定所述特征的所述位置的变化时考虑所述计算装置的所述运动。
18.一种计算装置,其包括:
装置处理器;
照相机;和
存储器装置,其包括可被操作来由所述处理器执行以执行一组动作的指令,所述指令使所述计算装置能够:
使用所述计算装置的所述照相机捕获图像信息;
由所捕获的图像信息确定用户的特征相对于所述计算装置的位置,所述位置是以至少两个维度来确定;
检测由所述用户执行的预定动作;和
响应于检测到所述预定动作,限制相对于所述特征的实际位置的变化在至少一个维度中对应于所述特征相对于所述计算装置的所确定位置的位置数据的变化量。
19.根据条款18所述的计算装置,其中所述特征的所述位置能够以三个维度来确定,且限制所述位置数据的变化量包括将所述变化量限制到一个或两个维度或当所述用户正在执行所述预定动作时以至少一个维度锁定所述位置数据。
20.根据条款18所述的计算装置,其中所述预定动作包括下列各项中的至少一个:用户移动所述特征经过选择阈值、以预定形状塑形所述特征、执行预定手势或发出预定命令。
21.根据条款18所述的计算装置,其中确定多个特征的所述位置,且其中当检测到对应于所述特征的预定动作时在至少一个维度中限制所述多个特征中的至少一个的所述位置数据的所述变化量。
22.一种非暂时计算机可读存储介质,其储存当由计算装置的至少一个处理器执行时使所述计算装置进行下列各项的指令:
使用所述计算装置的照相机捕获图像信息;
由所捕获的图像信息确定用户的特征相对于所述计算装置的位置,所述位置是以至少两个维度来确定;
检测由所述用户执行的预定动作;和
响应于检测到所述预定动作,限制相对于所述特征的实际位置的变化在至少一个维度中的所述特征的位置输入数据的变化量。
23.根据条款22所述的非暂时计算机可读存储介质,其中所述指令在执行时还使所述计算装置:
存储位置数据同时限制所述变化量,当确定检测到所述预定动作出现错误时能够使用所述位置数据。
24.根据条款22所述的非暂时计算机可读存储介质,其中所述指令在执行时还使所述计算装置:
使用至少一个光传感器确定所述计算装置附近的光量;和
当所述光量低于最小光阈值时激活所述计算装置的至少一个照明元件。
25.根据条款22所述的非暂时计算机可读存储介质,其中所述指令在执行时还使所述计算装置:
在所述位置的所述确定期间使用所述计算装置的运动传感器确定所述计算装置的运动量;和
在确定所述特征的所述位置的变化时考虑所述计算装置的所述运动。

Claims (15)

1.一种启用计算装置的输入的计算机实施方法,其包括:
使用所述计算装置的照相机捕获图像信息;
由所捕获的图像信息确定用户的特征相对于所述计算装置的位置,所述位置是以至少两个维度来确定;
依照确定的所述特征的位置,在所述计算装置的显示器上的两个维度中移动虚拟光标;
确定所述特征在平行于所述计算装置所在平面的平面中的位置的变化量;
检测由所述用户执行的预定动作;
为由所述用户执行的所述预定动作确定选择阈值,所述选择阈值为相距所述计算装置的阈值距离,所述用户必须在所述阈值距离内移动所述特征的位置以执行选择动作,并且所述选择阈值与所述特征在平行于所述计算装置所在平面的平面中的位置的变化量成比例;以及
响应于确定所述预定动作与所述用户移动所述特征越过所述选择阈值相对应,限制提供给在所述计算装置上执行的应用程序的所述虚拟光标在至少一个维度中的位置的变化量。
2.根据权利要求1所述的计算机实施方法,其中所述特征的所述位置能够以三个维度来确定且限制所述虚拟光标的变化量包括将所述变化量限制到一个或两个维度。
3.根据权利要求1所述的计算机实施方法,其中限制所述虚拟光标的所述变化量包括当所述用户正在执行所述预定动作时以至少一个维度锁定所述虚拟光标。
4.根据权利要求1所述的计算机实施方法,其中限制所述虚拟光标的所述变化量包括由于所述特征在至少一个维度中的对应移动而降低所述虚拟光标沿所述至少一个维度的变化量。
5.根据权利要求1所述的计算机实施方法,其中所述预定动作还包括下列各项中的至少一个:以预定形状塑形所述特征、执行预定手势或发出预定命令。
6.根据权利要求1所述的计算机实施方法,其中所述特征是用户的手、用户的头部或者由所述用户握住的对象中的一者的至少一部分。
7.根据权利要求1所述的计算机实施方法,其还包括:
存储位置数据同时限制所述变化量,当确定检测到所述预定动作出现错误时能够使用所述位置数据。
8.根据权利要求1所述的计算机实施方法,其中确定多个特征的所述位置,且其中当检测到对应于所述特征的预定动作时在至少一个维度中限制提供用于所述多个特征中的至少一个的所述虚拟光标的所述变化量。
9.根据权利要求1所述的计算机实施方法,其中所述特征的所述确定位置的变化对应于所述特征或所述计算装置中的至少一个的移动。
10.根据权利要求1所述的计算机实施方法,其还包括:
使用至少一个光传感器确定所述计算装置附近的光量;和
当所述光量低于最小光阈值时激活所述计算装置的至少一个照明元件。
11.根据权利要求1所述的计算机实施方法,其还包括:
在所述位置的所述确定期间使用所述计算装置的运动传感器确定所述计算装置的运动量;和
在确定所述特征的所述位置的变化时考虑所述计算装置的所述运动。
12.一种计算装置,其包括:
装置处理器;
照相机;和
存储器装置,其包括可被操作来由所述处理器执行以执行一组动作的指令,所述指令使所述计算装置能够:
使用所述计算装置的所述照相机捕获图像信息;
由所捕获的图像信息确定用户的特征相对于所述计算装置的位置,所述位置是以至少两个维度来确定;
依照确定的所述特征的位置,在所述计算装置的显示器上的两个维度中移动虚拟光标;
确定所述特征在平行于所述计算装置所在平面的平面中的位置的变化量;
检测由所述用户执行的预定动作;
为由所述用户执行的所述预定动作确定选择阈值,所述选择阈值为相距所述计算装置的阈值距离,所述用户必须在所述阈值距离内移动所述特征的位置以执行选择动作,并且所述选择阈值与所述特征在平行于所述计算装置所在平面的平面中的位置的变化量成比例;以及
响应于确定所述预定动作与所述用户移动所述特征越过所述选择阈值相对应,限制相对于所述特征的实际位置的变化在至少一个维度中对应于所述特征相对于所述计算装置的所确定位置的所述虚拟光标的位置的变化量。
13.根据权利要求12所述的计算装置,其中所述特征的所述位置能够以三个维度来确定,且限制所述虚拟光标的位置的变化量包括将所述变化量限制到一个或两个维度或当所述用户正在执行所述预定动作时以至少一个维度锁定所述虚拟光标的位置。
14.根据权利要求12所述的计算装置,其中所述预定动作还包括下列各项中的至少一个:以预定形状塑形所述特征、执行预定手势或发出预定命令。
15.根据权利要求12所述的计算装置,其中确定多个特征的位置,且其中当检测到对应于所述多个特征中的一个特征的预定动作时,在至少一个维度中限制所述虚拟光标的位置的变化量。
CN201380010931.3A 2012-02-24 2013-02-20 用于多维输入的导航方法 CN104737102B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US13/404,213 US9423877B2 (en) 2012-02-24 2012-02-24 Navigation approaches for multi-dimensional input
US13/404,213 2012-02-24
PCT/US2013/026828 WO2013126386A1 (en) 2012-02-24 2013-02-20 Navigation approaches for multi-dimensional input

Publications (2)

Publication Number Publication Date
CN104737102A CN104737102A (zh) 2015-06-24
CN104737102B true CN104737102B (zh) 2019-03-12

Family

ID=49002279

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380010931.3A CN104737102B (zh) 2012-02-24 2013-02-20 用于多维输入的导航方法

Country Status (5)

Country Link
US (2) US9423877B2 (zh)
EP (1) EP2817694B1 (zh)
JP (1) JP6129879B2 (zh)
CN (1) CN104737102B (zh)
WO (1) WO2013126386A1 (zh)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8675847B2 (en) 2007-01-03 2014-03-18 Cisco Technology, Inc. Scalable conference bridge
WO2012144666A1 (en) * 2011-04-19 2012-10-26 Lg Electronics Inc. Display device and control method therof
US9423877B2 (en) 2012-02-24 2016-08-23 Amazon Technologies, Inc. Navigation approaches for multi-dimensional input
US20130239041A1 (en) * 2012-03-06 2013-09-12 Sony Corporation Gesture control techniques for use with displayed virtual keyboards
US8943411B1 (en) * 2012-03-06 2015-01-27 Amdocs Software Systems Limited System, method, and computer program for displaying controls to a user
TWI463371B (zh) * 2012-06-20 2014-12-01 Pixart Imaging Inc 手勢偵測裝置以及根據速度判斷連續手勢的方法
US9360932B1 (en) * 2012-08-29 2016-06-07 Intellect Motion Llc. Systems and methods for virtually displaying real movements of objects in a 3D-space by means of 2D-video capture
US8826382B2 (en) * 2012-09-14 2014-09-02 Apple Inc. Antibot mechanisms optimized for mobile computing
KR101956073B1 (ko) * 2012-12-20 2019-03-08 삼성전자주식회사 시각적 인디케이터를 이용하여 사용자 인터페이스를 제공하는 3차원 입체 영상 표시 장치 및 그 장치를 이용한 방법
US9342230B2 (en) * 2013-03-13 2016-05-17 Microsoft Technology Licensing, Llc Natural user interface scrolling and targeting
TW201510772A (zh) * 2013-09-09 2015-03-16 Novatek Microelectronics Corp 手勢判斷方法及電子裝置
CN104469256B (zh) 2013-09-22 2019-04-23 思科技术公司 沉浸式和交互式的视频会议房间环境
US20150286391A1 (en) * 2014-04-08 2015-10-08 Olio Devices, Inc. System and method for smart watch navigation
US9372543B2 (en) * 2013-12-16 2016-06-21 Dell Products, L.P. Presentation interface in a virtual collaboration session
JP6277786B2 (ja) * 2014-03-11 2018-02-14 トヨタ自動車株式会社 車両用操作装置
DE202014103215U1 (de) 2014-07-11 2014-09-30 Christian Stroetmann Elektronisches, visuelles Gerät, das eine flexible beziehungsweise biegbare Vorrichtung zur optischen Signalisierung von veränderlichen Informationen, ein flexibles beziehungsweise biegbares Gehäuse mit mindestens einem Gelenk/Scharnier und ein Regel-/Steuerungssystem besitzt
US10291597B2 (en) 2014-08-14 2019-05-14 Cisco Technology, Inc. Sharing resources across multiple devices in online meetings
US10542126B2 (en) 2014-12-22 2020-01-21 Cisco Technology, Inc. Offline virtual participation in an online conference meeting
CN104596510A (zh) * 2014-12-23 2015-05-06 深圳市金立通信设备有限公司 一种终端
US20170017311A1 (en) * 2014-12-26 2017-01-19 Nikon Corporation Detection device and program
KR20170100411A (ko) * 2014-12-26 2017-09-04 가부시키가이샤 니콘 검출 장치, 전자 기기, 검출 방법 및 프로그램
US9955140B2 (en) * 2015-03-11 2018-04-24 Microsoft Technology Licensing, Llc Distinguishing foreground and background with inframed imaging
US9948786B2 (en) 2015-04-17 2018-04-17 Cisco Technology, Inc. Handling conferences using highly-distributed agents
US10291762B2 (en) 2015-12-04 2019-05-14 Cisco Technology, Inc. Docking station for mobile computing devices
US20170206055A1 (en) * 2016-01-19 2017-07-20 Apple Inc. Realtime audio effects control
US10574609B2 (en) 2016-06-29 2020-02-25 Cisco Technology, Inc. Chat room access control
EP3267289B1 (en) * 2016-07-05 2019-02-27 Ricoh Company, Ltd. Information processing apparatus, position information generation method, and information processing system
US10592867B2 (en) 2016-11-11 2020-03-17 Cisco Technology, Inc. In-meeting graphical user interface display using calendar information and system
US10516707B2 (en) 2016-12-15 2019-12-24 Cisco Technology, Inc. Initiating a conferencing meeting using a conference room device
US10515117B2 (en) 2017-02-14 2019-12-24 Cisco Technology, Inc. Generating and reviewing motion metadata
US9942519B1 (en) 2017-02-21 2018-04-10 Cisco Technology, Inc. Technologies for following participants in a video conference
US10440073B2 (en) 2017-04-11 2019-10-08 Cisco Technology, Inc. User interface for proximity based teleconference transfer
US10375125B2 (en) 2017-04-27 2019-08-06 Cisco Technology, Inc. Automatically joining devices to a video conference
US10404481B2 (en) 2017-06-06 2019-09-03 Cisco Technology, Inc. Unauthorized participant detection in multiparty conferencing by comparing a reference hash value received from a key management server with a generated roster hash value
US10375474B2 (en) 2017-06-12 2019-08-06 Cisco Technology, Inc. Hybrid horn microphone
US10477148B2 (en) 2017-06-23 2019-11-12 Cisco Technology, Inc. Speaker anticipation
US10516709B2 (en) 2017-06-29 2019-12-24 Cisco Technology, Inc. Files automatically shared at conference initiation
US10706391B2 (en) 2017-07-13 2020-07-07 Cisco Technology, Inc. Protecting scheduled meeting in physical room
US10091348B1 (en) 2017-07-25 2018-10-02 Cisco Technology, Inc. Predictive model for voice/video over IP calls
US10771621B2 (en) 2017-10-31 2020-09-08 Cisco Technology, Inc. Acoustic echo cancellation based sub band domain active speaker detection for audio and video conferencing applications

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101763172A (zh) * 2008-12-25 2010-06-30 索尼株式会社 输入装置、手持式装置和控制方法
CN102239460A (zh) * 2008-11-20 2011-11-09 亚马逊技术股份有限公司 作为输入机制的动作识别
CN102262438A (zh) * 2010-05-18 2011-11-30 微软公司 用于操纵用户界面的姿势和姿势识别
EP2394718A2 (en) * 2010-06-11 2011-12-14 NAMCO BANDAI Games Inc. Image generation system, image generation method, and information storage medium for video games

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5594469A (en) 1995-02-21 1997-01-14 Mitsubishi Electric Information Technology Center America Inc. Hand gesture machine control system
US5790114A (en) 1996-10-04 1998-08-04 Microtouch Systems, Inc. Electronic whiteboard with multi-functional user interface
JP3792907B2 (ja) 1998-08-06 2006-07-05 株式会社竹中工務店 ハンドポインティング装置
US20020126090A1 (en) * 2001-01-18 2002-09-12 International Business Machines Corporation Navigating and selecting a portion of a screen by utilizing a state of an object as viewed by a camera
JP2004246814A (ja) 2003-02-17 2004-09-02 Takenaka Komuten Co Ltd 指示動作認識装置
US20050212753A1 (en) 2004-03-23 2005-09-29 Marvit David L Motion controlled remote controller
US8681098B2 (en) 2008-04-24 2014-03-25 Oblong Industries, Inc. Detecting, representing, and interpreting three-space input: gestural continuum subsuming freespace, proximal, and surface-contact modes
US7728825B2 (en) * 2005-03-22 2010-06-01 Microsoft Corporation Targeting in a stylus-based user interface
US7697836B2 (en) 2006-10-25 2010-04-13 Zoran Corporation Control of artificial lighting of a scene to reduce effects of motion in the scene on an image being acquired
WO2009062153A1 (en) 2007-11-09 2009-05-14 Wms Gaming Inc. Interaction with 3d space in a gaming system
US8344998B2 (en) * 2008-02-01 2013-01-01 Wimm Labs, Inc. Gesture-based power management of a wearable portable electronic device with display
JP2011525283A (ja) 2008-06-18 2011-09-15 オブロング・インダストリーズ・インコーポレーテッド 車両インターフェース用ジェスチャ基準制御システム
KR101537596B1 (ko) * 2008-10-15 2015-07-20 엘지전자 주식회사 이동 단말기 및 이것의 터치 인식 방법
KR101021440B1 (ko) * 2008-11-14 2011-03-15 한국표준과학연구원 터치입력장치, 이를 이용한 휴대기기 및 그 제어방법
WO2010103482A2 (en) 2009-03-13 2010-09-16 Primesense Ltd. Enhanced 3d interfacing for remote devices
US8619029B2 (en) * 2009-05-22 2013-12-31 Motorola Mobility Llc Electronic device with sensing assembly and method for interpreting consecutive gestures
US20110099476A1 (en) 2009-10-23 2011-04-28 Microsoft Corporation Decorating a display environment
US10357714B2 (en) * 2009-10-27 2019-07-23 Harmonix Music Systems, Inc. Gesture-based user interface for navigating a menu
US8457353B2 (en) * 2010-05-18 2013-06-04 Microsoft Corporation Gestures and gesture modifiers for manipulating a user-interface
US20110304541A1 (en) 2010-06-11 2011-12-15 Navneet Dalal Method and system for detecting gestures
US9423877B2 (en) 2012-02-24 2016-08-23 Amazon Technologies, Inc. Navigation approaches for multi-dimensional input

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102239460A (zh) * 2008-11-20 2011-11-09 亚马逊技术股份有限公司 作为输入机制的动作识别
CN101763172A (zh) * 2008-12-25 2010-06-30 索尼株式会社 输入装置、手持式装置和控制方法
CN102262438A (zh) * 2010-05-18 2011-11-30 微软公司 用于操纵用户界面的姿势和姿势识别
EP2394718A2 (en) * 2010-06-11 2011-12-14 NAMCO BANDAI Games Inc. Image generation system, image generation method, and information storage medium for video games

Also Published As

Publication number Publication date
JP2015510648A (ja) 2015-04-09
US20130222246A1 (en) 2013-08-29
US9423877B2 (en) 2016-08-23
EP2817694A1 (en) 2014-12-31
EP2817694A4 (en) 2015-10-21
JP6129879B2 (ja) 2017-05-17
WO2013126386A1 (en) 2013-08-29
US9746934B2 (en) 2017-08-29
CN104737102A (zh) 2015-06-24
EP2817694B1 (en) 2018-04-11
US20160370871A1 (en) 2016-12-22

Similar Documents

Publication Publication Date Title
US9881026B2 (en) Method and apparatus for identifying input features for later recognition
US10203765B2 (en) Interactive input system and method
US20180218205A1 (en) Adaptive tracking system for spatial input devices
US9390340B2 (en) Image-based character recognition
US9213447B2 (en) Data projection device
CN104995581B (zh) 电子设备的手势检测管理
CN105683882B (zh) 等待时间测量与测试系统和方法
AU2014382730B2 (en) Method and device for detecting a touch between a first object and a second object
US8933882B2 (en) User centric interface for interaction with visual display that recognizes user intentions
US20170024017A1 (en) Gesture processing
US9304583B2 (en) Movement recognition as input mechanism
US20190004611A1 (en) Systems and methods of direct pointing detection for interaction with a digital device
US9600078B2 (en) Method and system enabling natural user interface gestures with an electronic system
US9063577B2 (en) User input using proximity sensing
US9244545B2 (en) Touch and stylus discrimination and rejection for contact sensitive computing devices
US9459694B2 (en) Cursor movement device
US9916514B2 (en) Text recognition driven functionality
US8923562B2 (en) Three-dimensional interactive device and operation method thereof
Sato et al. Fast tracking of hands and fingertips in infrared images for augmented desk interface
US8830189B2 (en) Device and method for monitoring the object's behavior
US10551930B2 (en) System and method for executing a process using accelerometer signals
US20180356896A1 (en) Systems and methods for proximity sensor and image sensor based gesture detection
US9384551B2 (en) Automatic rectification of stereo imaging cameras
KR101652535B1 (ko) 차량 인터페이스를 위한 제스처 기반 제어 시스템
US8681127B2 (en) Touch discrimination

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