基于物理模型的手势识别的制作方法

文档序号:6434927阅读:475来源:国知局
专利名称:基于物理模型的手势识别的制作方法
技术领域
一个实施例一般地是针对移动设备,尤其是用于移动设备的手势识别(gesture recognition)0
背景技术
用于计算机系统和其他设备的手势(gesture)识别,通常涉及经由数学算法来翻译人类手势。手势(gesture)可以源于任何身体动作或状态,但是通常源于面部或手部。已经探讨了很多使用照相机和计算机视觉算法来翻译符号语言。然而,姿势、步态和人类行为的辨别和识别还是手势识别技术的主题。一种类型的手势识别依赖于保持或另外操纵控制器或手持/移动设备的用户。这些控制器充当身体的延伸,使得做出手势时,一些它们的动作可以被软件方便地捕捉。鼠标手势就是一个这种示例,其中鼠标的动作与人手所画的符号相关。另一个示例是来自 Nintendo集团的可以学习加速度随时间的变化以呈现手势的Wii遥控。为了识别手势这些方法通常都进行加速计数据的统计分析或信号处理。然而,一个缺点是统计分析典型地针对单一类型的动作,诸如当使用控制器与视频高尔夫游戏交互时挥动高尔夫球杆时的动作。

发明内容
一个实施例是用于在移动设备上识别手势的手势识别系统。系统接收传感器数据以响应移动设备上感应到的手势。传感器数据包括力(force)或冲量(impulse)。力或冲量被施加到仿真物理对象,然后观察仿真物理对象的状态。基于至少观察到的仿真物理对象的状态,输入被提供给应用。


图1是根据本发明一个实施例的移动设备的立体图;图2是根据本发明一个实施例的手势识别系统的框图;图3是本发明一个实施例中仿真的示例物体的框图;图4根据一个实施例示出了球的仿真动作;图5是根据一个实施例经由例如手部动作/手势在空间中运动的移动设备的立体图;图6是根据一个实施例为了识别手势观察仿真物理对象的有限状态机或“观察者”的框图;图7根据一个实施例示出了包括两个门限值的容器中的仿真对象;图8是当与应用共同识别手势时根据一个实施例的手势识别模块的功能的流程图。
具体实施例方式为了增加功能并提供到应用的用户界面,一个实施例是加入手势识别的移动设备。该设备包括仿真物理系统(physical system)和具有由物理系统的观察所驱动的状态迁移的状态机。每个状态可对应于识别的手势,以及基于识别的手势可生成触觉效果 (haptic effect)0图1是根据本发明一个实施例的移动设备50的立体图。如所示,移动设备50是移动电话。然而,其他实施例中的设备50可以是包括便携数字助理(“PDA”)、便携媒体播放器、便携游戏设备等的任何类型的手持设备。设备50包括允许用户与设备50上运行的软件应用进行接口(interface)的用户界面(“UI”)60。设备50进一步包括下面进一步详细公开的手势识别系统(未示出),该系统允许用户使用手部55以诸如通过操纵设备50 的有意义的方式与设备50和UI 60交互。图2是根据本发明一个实施例的手势识别系统10的框图。系统10是图1的移动设备50的一部分,并且其提供手势识别功能。虽然作为单一系统来示出,但是系统10的功能可以作为分布式系统来实现。系统10包括总线12或其他用于沟通信息的通信机制,和耦合到总线12用于处理信息的处理器22。处理器22可能是任何类型的通用或专用处理器。 系统10进一步包括用于存储将由处理器22所运行的信息和指令的存储器14。存储器14 可以由随机访问存储器(“RAM”)、只读存储器(“ROM”)、诸如磁或光盘的静态存储器或任何其他类型的计算机可读介质的任何组合组成。计算机可读介质可能是处理器22可访问的任何可用介质,包括易失性和不易失性介质、可擦除和不可擦除介质以及通信介质。通信介质可包括诸如载波或其他传输机制的调制数据信号中的计算机可读指令、数据结构、程序模块或其他数据,以及包括任何信息发送介质。在一个实施例中,存储器14存储当被处理器22运行时提供功能的软件模块。模块包括在一个实施例中提供用于系统10的操作系统功能和设备50的其他功能的操作系统 15。模块进一步包括如下面更详细公开的识别用户手势的手势识别模块16。系统10将典型地包括一个或更多附加应用模块18以包括附加功能,诸如生成触觉效果的应用和与模块16交互的应用,使得识别的手势可以用作那些应用的输入。在实施例中从远程源传送和/或接收数据的系统10,进一步包括诸如网络接口卡的通信设备20,以提供诸如红外、无线、Wi-Fi或蜂窝网络通信的移动无线网络通信。在其他实施例中,通信设备20提供诸如以太网连接或调制解调器的有线网络连接。处理器22进一步经由总线12耦合到用于向用户显示图形表示或用户界面的诸如液晶显示器(“IXD”)的显示器对。显示器24可能是诸如触摸屏幕、配置为从处理器22 发送和接收信号的触摸感应输入设备,以及可能是多点触控触摸屏幕。系统10进一步包括一个或更多致动器26。处理器22可传送与触觉效果相关的触觉信号到依次输出触觉效果的致动器26。致动器沈可能是例如电动机、电磁致动器、 音图(voice coil)、线性共振致动器、压电致动器、形状记忆合金、电活性聚合物、螺线管 (solenoid)、质量偏心旋转电机(“ERM”)或线性共振致动器(“LRA”)。系统10进一步包括一个或更多传感器观。传感器观可包括加速计 (accelerometer)、陀螺仪、全球定位系统(“GPS”)传感器、触摸感应输入设备(例如,触摸屏幕、触摸板)、纹理手写笔(texture stylus)、图像传感器或一些其他类型传感器。传感器观可配置为检测加速度、倾角(inclination)、惯性(inertia)或地点(location)的变化。传感器观还可能包括地点传感器、旋转速度传感器、光线传感器、压力传感器、纹理传感器、照相机、麦克风或其他类型传感器。随着图1的移动设备50被用户移动作为手势的结果,传感器观将检测到这些运动,并基于至少部分设备50的运动而生成传感器信号。手势可包括加速计、陀螺仪或一些其他传感器测量到的三维手势。三维手势可包括旋转、轻击、猛击或另外移动整个设备50。在一个实施例中,手势识别系统10仿真(simulate)移动设备50的物理动作所扰动的物体,然后“观察者”追踪仿真物理对象的状态以确定手势。确定的手势可以作为输入提供到相关的软件应用,以及可以使软件生成触觉效果以向用户提供反馈来响应手势。 物理仿真可以是将要被识别的手势的模拟,并且取决于应用可以与一维世界中具有质量 (mass)的单一对象一样简单或更复杂。图3是本发明一个实施例中仿真的示例物体的框图。在该示例中,手势识别系统 10识别用于确定在UI 60中图形示出的诸如墙开关的“开关”是否是上/开或下/关的手势。在图3中所示的实施例中,仿真物理对象是管道或容器106中容纳的球102。球102限于箭头104所指示的上和下动作,就像球102被容纳在一个面上。球102任何时候都可以由其相对于χ轴的位置(“X”)和其速度(ν)或(χ, ν)表征。图4根据一个实施例示出了球102的仿真动作。当未施加力时,球102留在线105 所指示的容器106的中央。恒定背景力(constant background force)施加到球102,如势 (potential)函数U(x)的空间导数(spatial derivative)所表示的。在图4中所示的势中,容器106中央有零净(net)背景力。在仿真物理系统中,依照势U (χ)的斜率(slope), 向下方向中施加的扰动力使球102滑向容器106的底部。同样地,当在向上方向中施加力时,球102滑向容器106的顶部。施加的力可以作为势函数U(X)的导数d/dx表征,其是在每个χ上施加到物体102的力,其中χ是物体的空间位置。力可能是线性的,如在图4的示例中,或可能是周期流形(periodic manifold)(例如,如果χ是角度),任何其他函数U(x) 或函数U(x,p)的参数化家族(其中ρ是参数)。算法将捕捉手势的类型,在确定手势的类型中,背景力的说明是有帮助的。图5是根据一个实施例经由例如手部动作/手势在空间中运动的移动设备50的立体图。对于图3和4的示例,加速计沿着y轴(轴110)测量加速度,因为这是与使用手势以轻击UI 60中所示的开关开或关相关的方向。加速度由‘、/’表示。图6是根据一个实施例为了识别手势而观察仿真对象102的有限状态机600或 “观察者”的框图。在一个实施例中,图6的有限状态机600的功能和下面图8的流程图,由存储器或其他计算机可读或有形介质中存储的软件实现,并由处理器运行。在其他实施例中,功能可以由硬件(例如,通过专用集成电路(“ASIC”)、可编程门阵列(“PGA”)、现场可编程门阵列(“FPGA”)等的使用)或任何硬件和软件的组合来执行。图7根据一个实施例示出了包括两个门限χ值^up和&。m的容器106中的仿真对象102。门限χ值被状态机 600使用以确定仿真开关是上或下。在602中,物体102被初始化,使得位置x = 0和速度ν = 0。在604中,物体102的位置χ和速度ν被观察。在一个实施例中,下述伪码实现604的观察状态get sensor data ()convert sensors to forces ()apply forces to object ()time step physics ()if (collision),play haptic effectobserve physical state ()上述伪码从传感器28获得传感器数据,然后将传感器数据映射到仿真对象102上的力或冲量,其然后使用数字积分器(numerical integrator)(物理时间步长(time step physics))被仿真以计算物体的位置和速度轨迹。如果基于力,在容器106的末端物体102 碰撞,那么在一个实施例中提供冲突的指示的诸如振动的触觉效果将被生成。下面是上述伪码的功能一些示例实现。将传感器转换为力()在一个实施例中,通过比较加速度值与一系列不断增长的门限来将加速度值 映射到速度冲量。上述加速度是具体门限,但是下面下一个较高门限将生成仿真对象102的冲量(速度的不连续变化)。施加力到物体()在一个实施例中,使用牛顿运动原理将力添加到力之和中。
权利要求
1.一种具有指令存储其上的计算机可读介质,当所述指令被处理器运行时使所述处理器在移动设备上执行手势识别,所述手势识别包括生成仿真物理对象;接收传感器数据以响应所述移动设备上感应到的手势,所述传感器数据包括力或冲量;施加所述力或冲量到所述仿真物理对象; 观察所述仿真物理对象的状态以响应所述施加的力或冲量;和基于至少观察到的所述仿真物理对象的状态向应用提供输入。
2.根据权利要求1所述的计算机可读介质,其中到所述应用的输入包括与用户界面的交互。
3.根据权利要求2所述的计算机可读介质,其中所述用户界面显示基本类似于所述仿真物理对象的图形。
4.根据权利要求2所述的计算机可读介质,其中所述用户界面显示响应交互而修改的图形,其中所述图形包括按钮、滑块或滚动列表中至少一个。
5.根据权利要求1所述的计算机可读介质,其中所述应用生成触觉效果以响应所述输入。
6.根据权利要求5所述的计算机可读介质,其中所述触觉效果包括观察到的所述仿真物理对象的状态的反馈。
7.根据权利要求5所述的计算机可读介质,其中所述触觉效果包括所述仿真物理对象的物理状态的反馈。
8.根据权利要求5所述的计算机可读介质,其中所述触觉效果包括在所述移动设备上生成振动的致动器。
9.根据权利要求1所述的计算机可读介质,其中所述仿真物理对象是容器中的球并被限定在一维动作中。
10.根据权利要求1所述的计算机可读介质,其中所述力或冲量由加速计感应。
11.根据权利要求1所述的计算机可读介质,其中所述应用翻译观察到的状态作为识别的手势。
12.一种用于在移动设备上执行手势识别的计算机实现的方法,所述方法包括 生成仿真物理对象;接收传感器数据以响应所述移动设备上感应到的手势,所述传感器数据包括力或冲量;施加所述力或冲量到所述仿真物理对象; 观察所述仿真物理对象的状态以响应施加的力或冲量;和基于至少观察到的所述仿真物理对象的状态向应用提供输入。
13.根据权利要求12所述的计算机实现的方法,其中所述应用生成触觉效果以响应所述输入。
14.根据权利要求12所述的计算机实现的方法,其中所述仿真物理对象是容器中的球并被限定在一维动作中。
15.一种系统,包括处理器;耦合到所述处理器的存储器;和耦合到所述处理器用于感应所述系统上手势的传感器;和其中所述存储器存储指令,当所述指令被所述处理器运行时, 生成仿真物理对象;从所述传感器接收力以响应所述系统上的手势;施加所述力到所述仿真物理对象;观察所述仿真物理对象的状态以响应施加的力;和基于至少观察到的所述仿真物理对象的状态向应用提供输入。
16.根据权利要求15所述的系统,进一步包括 耦合到所述处理器的致动器;其中所述应用使所述致动器生成触觉效果以响应所述输入。
17.根据权利要求15所述的系统,其中所述仿真物理对象是容器中的球并被限定在一维动作中。
全文摘要
一种用于在移动设备上识别手势的手势识别系统,该系统接收传感器数据以响应移动设备上被感应的手势。传感器数据包括力或冲量。力或冲量被施加到仿真物理对象,然后仿真物理对象的状态被观察。基于至少观察的仿真物理对象的状态,向应用提供输入。
文档编号G06F3/041GK102446025SQ20111030238
公开日2012年5月9日 申请日期2011年10月8日 优先权日2010年10月5日
发明者克里斯托弗·J·乌尔里奇, 罗伯特·拉克鲁瓦 申请人:艾默生公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1