CN108475113A - 使用姿态语言离散值的手部姿态的检测 - Google Patents
使用姿态语言离散值的手部姿态的检测 Download PDFInfo
- Publication number
- CN108475113A CN108475113A CN201680077619.XA CN201680077619A CN108475113A CN 108475113 A CN108475113 A CN 108475113A CN 201680077619 A CN201680077619 A CN 201680077619A CN 108475113 A CN108475113 A CN 108475113A
- Authority
- CN
- China
- Prior art keywords
- hand
- discrete
- data set
- gestures
- characteristic
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/0304—Detection arrangements using opto-electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2411—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/038—Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
- G06T7/248—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/107—Static hand or arm
- G06V40/113—Recognition of static hand signs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
- G06V40/28—Recognition of hand or arm movements, e.g. recognition of deaf sign language
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/038—Indexing scheme relating to G06F3/038
- G06F2203/0381—Multimodal input, i.e. interface arrangements enabling the user to issue commands by simultaneous use of input devices of different nature, e.g. voice plus gesture on digitizer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Psychiatry (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Social Psychology (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
一种用于检测用户的手部姿态的计算机实现的方法,包括:(a)接收每个表示手部姿态的顺序逻辑模型。顺序逻辑模型映射预定义手部姿势和运动,每个手部姿势和运动由手部特征记录表示,手部特征记录由离散手部值定义,每个离散手部值指示相应手部特征的状态。(b)接收运行时手部数据集的运行时序列,每个运行时手部数据集由离散手部值得分定义,离散手部值得分指示通过分析描绘移动手部的定时图像而推断的用户的移动手部的手部特征的当前状态。(c)在SSVM函数中提交运行时手部数据集和预定义手部特征记录以关于手部特征记录为运行时手部数据集生成估计项。(d)通过使用针对运行时手部数据集的估计项优化得分函数来估计哪个手部姿态与在定时图像中描绘的运行时序列最佳匹配。
Description
背景技术
随着计算机化环境的发展,人机界面(HMI)的使用显著增加。越来越需要更自然的人机用户界面(NUI)方法(诸如例如,语音和/或注视)以及更具体地手部姿态交互来替代和/或补充传统的HMI,诸如例如键盘、指示设备和/或触摸界面。这样做可以用于例如消除和/或减少对中介设备(诸如键盘和/或指示设备)的需求,支持免提交互,改善了(多个)残疾人群的可访问性和/或提供多模态交互环境。可能存在用于标识和/或识别(多个)手部姿态的当前解决方案,然而它们大多不成熟,准确度不足和/或高复杂度,同时需要高度计算资源用于广泛的计算机视觉处理和/或机器学习。这样的技术可能依赖于整个手部骨骼关节和/或复杂的机器学习算法来检测和/或分类手部姿态,这可能使得这种实现昂贵并且对于集成不具吸引力,从而阻碍了它们针对广泛用途被采用。
发明内容
根据本公开的一些实施例,提供了用于通过关于多个预定义手部姿态来分析描绘用户的(多个)手部的移动的一个或多个图像来估计一个或多个运行时手部数据集的运行时序列以将运行时序列标识为有效手部姿态来检测用户的手部姿态的系统和方法。贯穿本公开在下文中提到的预定义手部姿态是指模拟(多个)手部的相应手部姿态的预定义手部姿态表示。以相同的方式,贯穿本公开在下文中提到的手部姿态、手部姿势和/或手部运动的定义、创建、构造和/或生成是指分别模拟(多个)手部的相应手部姿态、姿势和运动的手部姿态、手部姿势和手部运动的表示的定义、创建、构造和/或生成。预定义手部姿态是使用离散值架构构造的,其中每个预定义手部姿态可以包括一个或多个手部姿势和/或手部运动。手部姿势和手部运动中的每个被表示为由离散手部值定义的预定义手部特征记录,每个离散手部值指示所描绘的手部的对应手部特征(特性)的状态,诸如例如各种手指和/或手部状态和/或动作。类似地,一个或多个运行时手部数据集中的每个可以包括每个由运行时手部数据集定义的一个或多个手部姿势和/或手部运动,运行时手部数据集包括一个或多个离散手部值得分,每个离散手部值得分指示对应手部特征的当前状态。通过量化一个或多个手部特征的连续值可以由离散手部值来表示连续值,以支持手部姿态检测过程的离散架构。一个或多个离散手部值得分通过分析描绘用户的手部的一个或多个图像来推断。每个运行时手部数据集与一个或多个预定义手部特征记录一起提交给一个或多个结构化支持向量机(SSVM)函数,以关于每个预定义手部特征记录来为运行时手部数据集生成多个估计项。然后,通过使用具有离散手部值得分和离散手部值的估计项来解析加权计算来标识最佳的预定义手部特征记录,运行时手部数据集可以被估计符合预定义手部特征记录之一。每个预定义手部姿态可选地由一个或多个顺序逻辑模型来定义,并且可以由记录(多个)手部姿势和/或(多个)手部运动之间的转换的有限状态机(FSM)来表示。用于标识最佳地描述所描述的运行时序列的最佳的预定义手部姿态的优化过程可以通过动态编程来完成,该动态编程在FSM内的一个或多个序列上使用一个或多个得分函数对预定义手部姿态FSM的顺序逻辑模型进行增强之后使用例如维特比解码。可选地,手部姿态检测不限于特定的预定义手部姿态,而是可以检测由手部姿势和/或手部运动构成的整个类别的手部姿态,其中手部姿势和/或手部运动是使用离散手部值架构构建的。
根据本公开的一些实施例,提供了用于检测多模态用户交互动作的系统和方法,多模态用户交互动作可以包括一个或多个动作,例如手部姿态、头部姿态、身体姿态、面部表情、注视方向、文本、语音和/或触觉输入。多模态动作的检测可以使用附接到一个或多个捕获设备的一个或多个计算机化设备来为用户执行。可以处理所捕获的多模态用户交互以标识一个或多个多模态动作并且可选地发起可以与所检测到的(多个)多模态动作相关联的一个或多个应用功能、动作、操作和/或命令。
通过估计与预定义手部姿态特征记录的离散手部值相比较的运行时手部数据集的离散手部值得分来检测如(多个)图像中描绘的用户的一个或多个手部姿态可以显著地减少运行时所需要的计算负载。检测过程被简化为在运行时手部数据集的多个离散手部值和在离散手部值的二进制表示上执行优化的那些预定义手部姿态上的优化过程。此外,由于处理离散手部值的检测过程的离散性质,对于每个手部特征,有限数目的可能值(例如,5、10和/或20)可以是有效的,避免了需要充分地表达手部骨骼,从而进一步减少了计算机视觉和建模资源。
除非另外定义,否则本文中使用的所有技术和/或科学术语具有与本领域普通技术人员通常理解的相同的含义。尽管在本公开的实施例的实践或测试中可以使用与本文中描述的方法和材料类似或等同的方法和材料,但是下面描述示例性的方法和/或材料。如果发生冲突,包括定义在内的专利说明书将控制。另外,这些材料、方法和示例仅是说明性的,并非意在限制。
附图说明
本文中仅通过举例的方式参考附图来描述本公开的一些实施例。现在具体参考附图详细说明,强调的是,所示出的细节是作为示例并且出于对本公开的实施例的说明性讨论的目的。就此而言,结合附图的描述使本领域技术人员清楚如何实践本公开的实施例。
在附图中:
图1是根据本公开的一些实施例的用于检测由(多个)图像描绘的手部姿态的示例性过程的流程图;
图2是根据本公开的一些实施例的示例性手部姿态的构建块的框图;
图3是根据本公开的一些实施例的将手部姿态顺序逻辑模型表示为手部运动和手部姿势的序列的示例性FSM的示意图;
图4是根据本公开的一些实施例的示例性手部姿势离散表示的示意图;
图5是根据本公开的一些实施例的示例性捏合手部姿势离散表示的示意图;
图6是根据本公开的一些实施例的示例性手部运动离散表示的示意图;
图7是根据本公开的一些实施例的示例性半圆基本手部运动离散表示的示意图;
图8是根据本公开的一些实施例的示例性弹弓手部姿态的构件块的框图;
图9是根据本公开的一些实施例的用于检测由(多个)图像描绘的手部姿态的示例性系统的示意图;
图10是根据本公开的一些实施例的示例性多模态动作的构件块的框图;
图11是根据本公开的一些实施例的定义多模态动作的多模态FSM的示意图;以及
图12是根据本公开的一些实施例的示例性多模态动作的示意图。
具体实施方式
根据本公开的一些实施例,提供了用于通过关于多个预定义手部姿态来分析描绘用户的(多个)手部的移动的一个或多个图像来估计一个或多个运行时手部数据集的运行时序列以将运行时序列标识为有效手部姿态来检测用户的手部姿态的系统和方法。由用户执行并且在一个或多个图像中描绘的手部姿态的检测基于离散架构,在离散架构中,离散手部值用作构建块以定义构成手部姿态的手部姿势和/或手部运动。每个手部姿态可以包括一个或多个手部姿势和/或手部运动,每个手部姿势和/或手部运动被表示为分别可以是手部姿势特征记录或手部动作特征记录的预定义手部特征记录。手部特征记录每个由独特的一组离散手部值定义,每个离散手部值指示所描绘的手部的多个手部特征(特性)(诸如例如,各种手指和/或手部状态和/或运动)中的对应的一个的状态。手部特征包括每个分别与一个或多个离散姿势值和离散运动值相关联的手部姿势特征和手部运动特征。每个预定义手部姿态可以表示为包括一个或多个手部姿势和/或手部运动的顺序逻辑模型,每个手部姿势和/或手部运动由手部特征记录表示,手部特征记录又通过多个离散手部值来定义。以相同的方式,分析捕获构成用户的手部移动的运行时序列的一个或多个运行时手部数据集的一个或多个图像中的每个图像,以将其标识为手部姿势或手部运动,并且进一步推断用于构建每个运行时手部数据集的一个或多个离散手部值。针对每个运行时手部数据集标识的离散手部值被称为离散手部值得分,并且可以包括离散姿势值或离散运动值,每个离散姿势值或离散运动值指示多个手部特征中的对应的一个的当前(运行时)值。通过量化一个或多个手部特征的连续值可以通过离散手部值来表示连续值,以支持手部姿态检测过程的离散架构。由于预定义手部姿势(表示)和/或手部运动(表示)以及运行时手部数据集通过多个离散手部值来定义,所以将运行时序列估计为预定义手部姿态之一基本上是一个优化问题,其中选择最佳地描述运行时序列的最佳预定义手部姿态。一个或多个运行时手部数据集中的每个与一个或多个预定义手部特征记录一起被提交给一个或多个SSVM函数,以关于每个预定义手部特征记录为运行时手部数据集生成多个估计项。估计项包括单例项和成对项。单例项定义每个运行时手部数据集与一个预定义手部特征记录之间的相关性。成对项定义每个运行时手部数据集与两个(当前的和先前的)预定义手部特征记录之间的相关性。然后,可以通过针对一个或多个运行时手部数据集中的每个解析最佳匹配的预定义手部特征记录来估计运行时序列符合预定义手部姿态之一。单例项和/或成对项可以通过模拟在每个运行时手部数据集的离散手部值得分上的预定义手部姿势和/或手部运动的离散手部值来生成。预定义手部特征记录可以表示为布尔公式,例如,合取范式(CNF)。一个或多个SSVM函数可以应用一个或多个参数函数来生成单例项和/或成对项。一个或多个SSVM函数可以离线训练以标识要与每个预定义手部特征记录相关联的最准确的估计项。定义一个或多个手部姿态的一个或多个顺序逻辑模型中的每个可以由FSM表示,其中每个手部特征记录(手部姿势或手部运动)是状态并且FSM记录在(多个)手部姿势和/或(多个)手部运动之间的转换。在发起优化过程之前,表示一个或多个预定义手部姿态的FSM可以在FSM内的序列上使用一个或多个得分函数来增强,以便允许有效且准确的优化,FSM内的一个或多个序列中的每个表示手部姿态。优化过程可以通过动态编程来执行,该动态编程可以利用例如使用所生成的单例项和/或成对项在一个或多个得分函数上进行的维特比解码。一旦完成,优化过程产生最佳地匹配在一个或多个图像中描绘的用户的手部的移动的运行时序列的最佳的预定义手部姿态。可选地,向每个估计项指派一个或多个权重以改善优化过程。一个或多个权重可以通过例如一个或多个SSVM函数来计算,该一个或多个SSVM函数可以被训练以为每个预定义手部特征记录选择最佳匹配权重。可选地,运行时手部数据集的运行时序列可以被估计为手部姿态的顺序逻辑模型,该手部姿态不是预定义的,而是可能使用每个指示对应的一个手部特征的值的离散架构离散手部值来构造。可选地,一个或多个SSVM函数专门用于将运行时序列标识为多个注册的手部姿态之一。一个或多个注册的手部姿态可以基于用户的活动的上下文来注册,例如,一个或多个预定义手部姿态可以被注册(关联)到特定应用。如果特定应用在运行时序列中描绘的用户手部移动的检测期间是活动的,则优化过程仅考虑所注册的手部姿态以选择与运行时序列最匹配的最佳手部姿态。
使用户手部姿态的检测基于离散架构可以显著地减少运行时计算负载,因为通过对多个离散手部值(预定义的)和呈现有限数目的可能值的离散手部值得分(运行时)采用优化过程来避免对整个手部骨骼进行建模的需求。此外,优化基于使用手部姿势和/或手部运动的二进制表示而生成的估计项,这进一步降低了计算的复杂性,因为与连续表示骨骼手部相比,二元计算需要相当少的处理资源。专用化一个或多个SSVM函数可以减少运行时的更多计算负载,因为在优化过程期间考虑有限数目的预定义手部姿态,使得优化过程变得更简单和更快。
根据本公开的一些实施例,提供了用于检测多模态用户交互动作的系统和方法,多模态用户交互动作包括一个或多个动作,例如手部姿态、头部姿态、身体姿态、面部表情、注视方向、文本、语音和/或触觉输入。多模态动作的检测可以使用一个或多个计算机化设备来为用户执行,计算机化设备例如是配备有和/或附接到一个或多个用户交互捕获设备的计算机、移动设备、计算机化机器和/或计算机化设备,用户交互捕获设备例如是成像设备、录音机、触觉接收设备、文本输入设备(诸如例如,键盘、数字笔、触摸板等)、触摸屏、数字表面和/或(多个)指示设备(诸如例如,鼠标、轨迹球、游戏控制器、操纵杆等)。可以处理所捕获的多模态用户交互以标识一个或多个多模态动作并且可选地发起可以与检测到的(多个)多模态动作相关联的一个或多个应用功能、动作、操作和/或命令。通过采用一种或多种检测技术来标识构成多模态动作的一个或多个用户动作(例如,文本输入解析、指示设备输入分析、语音分析、触觉输入分析并且具体地地手部姿态检测),可以在运行时期间分类和/或标识多模态动作。
在详细解释示例性实施例中的至少一个实施例之前,应当理解,本公开在其应用中不一定限于在以下描述中给出和/或在附图和/或示例中说明的组件和/或方法的构造和布置的细节。本公开能够具有其他实施例或者以各种方式实践或执行。
现在参考附图,图1是根据本公开的一些实施例的用于检测由(多个)图像描绘的手部姿态的示例性过程的流程图。示例性手部姿态检测过程100将在一个或多个图像中描绘的用户的手部的移动的检测过程呈现为预定义手部姿态。如110所示,示例性过程100开始于接收多个预定义手部姿态,每个预定义手部姿态被表示为顺序逻辑模型。每个顺序逻辑模型可以映射每个由多个手部特征记录中的独特的一个表示的一个或多个手部姿势和/或手部运动。手部特征记录可以是每个分别与手部姿势和手部运动相关联的手部姿势特征记录或手部运动特征记录。每个手部特征记录由多个离散手部值中的一个或多个来定义,每个离散手部值指示相应手部特征的状态,例如手掌的姿势、(多个)手指的姿势、手掌的运动和/或(多个)手指的运动。类似地,离散手部值可以是离散姿势值和/或离散运动值,每个离散姿势值和/或离散运动值指示可以是手部姿势特征和/或手部运动特征的对应手部特征的状态。
如120所示,接收包括多个运行时手部数据集中的一个或多个的运行时序列。每个运行时手部数据集由多个离散手部值得分定义,每个离散手部值得分指示用户的移动手部的相应手部特征的当前状态。多个离散手部值得分通过分析描绘用户的移动手部的多个图像中的一个或多个来推断和/或计算。
在进一步描述手部姿态检测过程100之前,理解用于定义手部姿态、手部姿势和/或手部运动的离散架构是很重要的。定义手部特征记录的离散手部特征以及定义运行时手部数据集的离散手部特征得分都是指与本文中呈现的相同的离散手部值。离散手部值可以是离散姿势值或离散运动值。通过量化一个或多个手部特征的连续值可以通过离散手部值来表示连续值,以支持手部姿态检测过程的离散架构。
现在参考图2,图2是根据本公开的一些实施例的示例性手部姿态的构建块的框图。图示200描绘了示例性手部姿态210的几种构造方案。手部姿态210可以通过一个或多个可能的构造来创建,例如:
(a)手部姿态210可以由手部姿势250构成。
(b)手部姿态210可以是两个手部姿势250的组合和/或序列。
(c)手部姿态210可以是手部姿势250和手部运动260的组合和/或序列。
(d)(第一)手部姿态210可以是第二手部姿态210和手部姿势250的组合和/或序列。第二手部姿态可以是与第一手部姿态相同的手部姿态,或者它可以是不同的手部姿态210。
(e)(第一)手部姿态210可以是第二手部姿态210和手部运动260的组合和/或序列。第二手部姿态210可以是与第一手部姿态相同的手部姿态,或者它可以是不同的手部姿态210。
手部姿态210可以通过上面的构造(d)和/或(e)的多次迭代来创建。每个手部姿态210被构造为由手部姿态序列201表示的独特组合和/或序列,该手部姿态序列201包括手部姿势250、手部运动260和/或手部姿态210中的一个或多个。每个手部姿态210以空闲状态280开始和结束,空闲状态280可以是标识手部姿态210的独特手部姿态序列201的开始和/或结束的虚拟状态。手部姿态序列201可以被认为是描述手部姿态210的顺序逻辑模型。
现在参考图3,图3是根据本公开的一些实施例的将手部姿态顺序逻辑模型表示为手部运动和手部姿势序列的示例性FSM的示意图。图示300描绘了可以表示手部姿态序列(诸如手部姿态序列201)的顺序逻辑模型的FSM 301。FSM 301开始于指示FSM 301的开始状态的开始点310。FSM 301可以包括一个或多个状态302A、302B、302C至302N。第一状态302A是可以描述表示手部姿态(诸如手部姿态210)的序列的开始的手部姿势(诸如手部姿势250)。后续状态302B、302C至302N中的每个可以是手部姿势250或诸如手部运动260等手部运动。FSM 301结束于FSM结束点320。开始点310和/或结束点320可以被定义为诸如空闲状态280等虚拟空闲状态。在手部姿态210的检测过程(诸如手部姿态检测过程100)期间,FSM301可以在FSM 301内的一个或多个序列上使用一个或多个得分函数来增强,以便允许处理与包括FSM 301中的每个序列的手部姿势250和/或手部运动260中的每个相比较的包括在描绘用户的移动手部的运行时序列中的一个或多个运行时手部数据集。每个手部姿势250和/或手部运动260由相应的手部姿势特征记录和手部运动特征记录来表示。使用FSM 301来表示每个与手部姿态210之一相关的多个手部姿态序列201中的每个允许显著地简化运行时手部数据集的运行时序列的估计,以在运行时使用通过在增强FSM 301的(多个)得分函数上应用例如维特比解码的动态编程将该运行时序列检测为预定义手部姿态(诸如手部姿态210)之一。
现在参考图4,图4是根据本公开的一些实施例的示例性手部姿势离散表示的示意图。图示400将示例性手部姿势250表示描绘为包括一个或多个手部姿势特征410、420、430和440的手部姿势特征记录251。在手部特征记录的一般化术语内引用的手部姿势特征记录251可以用离散姿势值411、421、431和/或441中的一个或多个来表示,每个离散姿势值指示手部姿势250中的相关联的手部姿势的相应的手部姿势特征410、420、430和/或440的状态(值)。由手部姿势特征记录251定义的相应的手部姿势特征410、420、430和440的一个或多个离散姿势值411、421、431和/或441的组合标识可以通过分析描绘用户的手部的移动的一个或多个图像来检测的手部姿势250中的特定姿势。一个或多个手部姿势特征410、420、430和/或440的连续值可以通过量化连续值由离散姿势值411、421、431和/或441来表示。手部姿势特征记录251可以被表示为例如特征向量、特征矩阵和/或特征表。手部姿势特征记录251可以包括以下示例性手部姿势特征中的一个或多个的值:
·手掌姿势特征——一个或多个手掌姿势特征410包括例如手部选择、手掌方向、手掌旋转和/或手部位置。手部选择可以标识哪只手是活动的,并且可以包括离散姿势值411,诸如例如右、左、两者和/或任何。手掌方向可以定义活动手部的手掌面对的方向,并且可以包括离散姿势值411,诸如例如左、右、上、下、向前和/或向后。手掌旋转可以定义活动手部的手掌的旋转状态,并且可以包括离散姿势值411,诸如例如左、右、上、下、向前和/或向后。手部位置可以标识活动手部在空间中的空间位置,并且可以包括离散姿势值411,诸如视场(FOV)的中心、FOV的右侧、FOV的左侧、FOV的顶部、FOV的底部、FOV的前方和/或FOV的后方。例如,其中FOV是监测用户的手部的移动的成像设备的可见空间。可选地,针对存在于FOV中的固定对象(例如,键盘和/或指示设备)来标识手部位置,使得手部位置可以由离散姿势值111定义,诸如例如键盘上方、键盘下方、键盘右侧和/或者键盘左侧。
·手指弯曲特征——针对每个手指而定义的一个或多个手指弯曲特征420。例如,手指特征420可以是可以包括离散姿势值421的弯曲和/或曲线状态,诸如例如由0、1和2表示的拉伸、折叠和/或打开。每个手指(拇指、食指、中指、无名指和/或小指)被指派一个或多个特定手指特征,例如{折叠}状态的{拇指、中指、无名指、小指}和{拉伸}状态的{食指}。
·手指接触条件特征——针对每个手指而定义一个或多个手指接触特征430。接触特征可以定义任何两个或更多个手指和/或触摸类型的触摸条件,并且可以包括离散姿势值431,诸如例如非触摸、指尖和/或全触摸。
·手指相对位置条件特征——针对每个手指而定义一个或多个手指相对位置特征440。每个手指相对位置条件特征440可以定义一个手指相对于另一手指的相对位置。手指相对位置特征440可以包括离散姿势值441,诸如例如一个或多个手指相对于另外的一个或多个手指位于左侧、右侧、上方、下方、向内、向外、前方和/或后方。
手部姿势250中的每个由可以是一个或多个离散姿势值411、421、431和/或441的组合和/或序列的手部姿势特征记录251中的独特的一个来定义,每个离散姿势值指示对应的手部姿势特征410、420、430和/或440的值。手部姿势特征记录251可以仅包括离散姿势值411、421、431和/或441中的一些(而不是全部),而没有包括的其他离散姿势值411、421、431和/或441是空闲的。例如,手部姿势特征记录251可以在手掌的方向未指定(例如,离散姿势值411)的同时定义手指的特定状态(例如,离散姿势值421、431和/或441)。在这种情况下,手部姿势250在手部朝向任何方向的情况下通过标识由手部姿势特征记录251定义的手指状态在运行时被检测。一个或多个手部姿势250的检测被简化,因为可以容易地标识离散姿势值411、421、431和/或441,因为针对手部姿势特征410、420、430和/或440中的每个存在有限的受限数目的可能状态,避免了对手部骨骼建模的需求,从而降低了计算机视觉处理的水平。手部姿势特征410、420、430和/或440的离散表示可以不仅限于离散值。一个或多个手部特征410、420、430和/或440的连续值可以通过量化连续值分别由离散姿势值411、421、431和/或441表示。例如,手掌旋转手掌姿势特征可以用8个离散运动值411——0°、45°、90°、135°、180°、225°、270°和315°来定义,以量化0°到360°的整个旋转范围。
现在参考图5,图5是根据本公开的一些实施例的示例性捏合手部姿势离散表示的示意图。图示500描绘了包括离散姿势值(诸如离散姿势值411、421、431和/或441)的捏合姿势特征记录251A的示例性捏合手部姿势250A表示,每个离散姿势值指示对应姿势特征(诸如姿势特征410、420、430和/或440)的值。通过图像捕获501可视化的捏合手部姿势250A由如下的多个离散姿势值411、421、431和441中的一些来定义:
·手部选择特征410A被指派离散姿势值411A以指示左手是活动的。
·手掌方向特征410B被指派离散姿势值411B以指示活动手部的手掌朝前。
·手指弯曲特征420A被指派离散姿势值421A和离散弯曲值421B以指示拇指和食指折叠。
·手指弯曲特征420B被指派离散姿势值421C和离散姿势值421D以指示中指、无名指和小指打开。
·手指接触条件特征430A被指派离散姿势值431A以指示拇指和食指在它们的指尖处触摸。
·手指相对位置特征440A被指派离散姿势值441A、离散姿势值441B和离散姿势值441C以指示食指位于拇指上方。
如上所见,捏合手部姿势250A由包括分别与姿势特征410A、410B、420A、420B、430A和440A相对应的离散姿势值411A、411B、421A、421B、421C、421D、431A、431B、441A、441B和441C的捏合特征姿势特征记录251A独特地定义。类似地,可以定义附加的手部姿势250。
现在参考图6,图6是根据本公开的一些实施例的示例性手部运动离散表示的示意图。图示600将多个示例性手部运动260表示中的每个描绘为手部运动特征记录261。在手部特征记录的一般化术语中被引用的手部运动特征记录261可以包括一个或多个手部运动特征610和620。手部运动特征610和620中的每个可以被指派指示手部运动260中的相关联的手部运动的相应手部运动特征610和/或620的状态(值)的一个或多个离散运动值611和/或621。通过量化连续值,一个或多个手部运动特征610和/或620的连续值可以由离散运动值611和/或621表示。手部运动特征记录261标识可以通过分析描绘用户的手部的移动的一个或多个图像来检测的手部和/或(多个)手指的特定运动。手部运动特征记录261可以被表示为例如特征向量、特征矩阵和/或特征表。手部运动特征记录261可以包括以下示例性手部运动特征中的一个或多个:
·运动属性特征——一个或多个运动属性特征610可以包括例如运动大小、运动速度和/或运动位置。运动大小可以标识运动的大小(范围),并且可以包括离散运动值611,诸如例如小、正常和/或大。运动速度可以定义运动的速度,并且可以包括离散运动值611,诸如例如慢、正常、快速和/或突然。运动位置可以标识执行运动的空间位置,并且可以包括离散运动值611,诸如例如FOV的中心、FOV的右侧、FOV的左侧、FOV的顶部、FOV的底部、FOV的前部和/或FOV的后部。可选地,手部位置相对于存在于FOV中的固定对象来标识,例如键盘和/或指示设备,使得手部位置可以包括离散运动值611,诸如例如键盘上方、键盘下方、键盘右侧和/或键盘左侧。
·运动脚本特征——一个或多个运动脚本特征620可以定义所执行的实际运动。运动脚本值620可以包括例如运动方向、运动开始点、运动结束点和/或预定义的曲线形状。运动方向特征620可以包括离散运动值621,诸如例如向上、向下、左到右、右到左、对角线向左向上、对角线向右向上、对角线向左向下、对角线向右向下、顺时针弧线向右向上、顺时针弧线向右向下、顺时针弧线向左向上、顺时针弧线向左向下、逆时针弧线向右向上、逆时针弧线向右向下、逆时针弧线向左向上和/或逆时针弧线向左向下。可选地,运动曲线形状可以包括例如at符号(@)、无穷符号(∞)、数字符号、字母符号等。可选地,附加的一个或多个曲线形状(例如,复选标记、帐单请求等)可以由手部运动特征记录261定义。每个运动脚本特征620被定义用于二维(2D)平面,然而每个运动脚本特征620可以被转置以描绘另一2D平面,例如X-Y、X-Z和/或Y-Z。可选地,运动脚本特征620使用3D图像数据表示格式来定义三维(3D)运动和/或曲线。
手部运动260中的每个由可以是一个或多个离散运动值611和/或621的组合和/或序列的手部运动特征记录261中的独特的一个来定义,每个离散运动值611和/或621指示对应的手部运动特征610和/或620的值。使用离散运动值621和/或621允许简单地检测手部运动260,因为存在要被分析和估计的有限数目的离散运动值611和/或621,避免了需要整个手部骨骼建模,从而降低了计算机视觉处理的水平。例如,被包括在手部运动属性特征610中的运动速度特征可以包括多达四个离散运动值611——慢、正常、快速和突然。类似地,可以定义附加的手部运动260。手部运动特征610和/或620的离散表示可以不仅限于离散值,一个或多个手部运动特征610和/或620的连续值可以通过量化连续值分别由离散运动值611和/或621表示。例如,运动速度运动属性特征可以用6个离散运动值611——5m/s(米/秒)、10m/s、15m/s、20m/s、25m/s和30m/s来定义,以量化0m/s至30m/s的正常人的手部的运动速度。
现在参考图7,图7是根据本公开的一些实施例的示例性半圆手部运动离散表示的示意图。图示700描绘了包括离散运动值(诸如离散运动值611和/或621)的左到右上部半圆运动特征记录261A的示例性左到右上部半圆手部运动260A构造,每个离散运动值611和/或621指示对应手部运动特征(诸如手部运动特征610和/或620)的值。通过图像捕获701A、701B和701C可视化的左到右上部半圆手部运动260A利用如下的多个离散运动值611和621中的一些来创建:
·运动大小特征610A被指派离散运动值611A以指示运动大小正常。
·运动速度特征610B被指派离散运动值611B以指示运动速度正常。
·运动位置特征610C被指派离散运动值611C以指示运动在键盘上方执行。
·第一运动脚本特征620A被指派离散运动值621A以指示由图像捕获701B呈现的顺时针弧线向左向上的运动形状。
·第二运动脚本特征620B被指派离散运动值621B以指示由图像捕获701C呈现的顺时针弧线向左向下的运动形状。
如上所见,左到右上部半圆运动260A由包括分别与手部运动特征610A、610B、610C、620A和620B相对应的离散运动值611A、611B、611C、621A和621B的左到右上部半圆运动特征记录261A独特地定义。类似地,可以定义附加的手部和/或(多个)手指运动。
现在参考图8,图8是根据本公开的一些实施例的示例性弹弓手部姿态的构建块的框图。图示800将示例性弹弓手部姿态210A离散表示描绘为诸如手部姿势250等多个手部姿势和诸如手部运动260等手部运动。通过图像捕获801A、801B、801C和801D被可视化的弹弓手部姿态210A由诸如虚拟空闲状态280等空闲状态、无捏合手部姿势250B、诸如捏合手部姿势250A等捏合手部姿势、缩回手部运动260B和诸如虚拟空闲状态280等结束空闲状态的组合和/或序列构造。弹弓手部姿态210A的序列如下:
·虚拟空闲状态280定义弹弓手部姿态210A的序列的开始状态和/或点。
·由手部姿势特征记录251B定义的无捏合手部姿势250B表示如图像捕获801A中描绘的无捏合动作。
·由手部姿势特征记录251A定义的捏合手部姿势250A,其中标识捏合动作,如图像捕获801B中所描绘的。
·由手部运动特征记录261B定义的缩回手部运动260A,其中手部向后移动,如图像捕获801C中所描绘的。
·由手部姿势特征记录251B定义的无捏合手部姿势250B表示捏合姿势被释放并且被标识为无捏合动作,如图像捕获801D中所描绘的。
·空闲状态280定义弹弓手部姿态210A的序列的结束状态和/或点。
如上所述的弹弓手部姿态210A的序列通过可以被认为是与弹弓手部姿态210A相关联的顺序逻辑模型的独特的弹弓手部姿态序列251A来表示。对于手部姿势250A、250B和手部运动260B中的每个,只有相关的离散姿势和/或运动值可以被定义。例如,针对无捏合姿势250B,无捏合手部姿势特征记录251B由手部选择离散姿势值411(左),手指弯曲离散姿势值421(拉伸)和手指接触离散姿势值431(未触摸)定义。与无捏合手部姿势250B与捏合手部姿势250A之间的区分无关的其他离散姿势值是空闲的并且未被指定。仅指定相关的离散姿势和/或运动值允许由不同的一个或多个用户在运行时执行的手部姿势250和/或手部运动260的表达的几个自由度。这表示一个或多个用户中的每个可以在运行时稍微不同地执行手部姿势250和/或手部运动260,然而它们仍然被检测为相同。
再次参考图1。如130所示,被包括在描绘用户的移动手部的所接收的运行时序列中的一个或多个运行时手部数据集连同多个预定义手部特征记录(手部姿势特征记录和/或手部运动特征记录)一起被提交给一个或多个SSVM函数。一个或多个SSVM函数生成多个估计项,多个估计项稍后用于将运行时序列估计为多个手部姿态(诸如手部姿态210)之一。
约定和符号:
1)xt∈Rd;x1:t=(x1,.....,xt)
xt被定义为特定运行时手部数据集在时间t的一组离散手部值得分,其中d个得分中的每个对应于特定手部特征,例如,食指指向向前、中指触摸拇指、无名指折叠等。为了简洁起见,用符号x1:t来描述(x1,.....,xt)。
2)yt∈Yt;y1:t=(y1,.....yt)
yt被定义为与作为在时间t有效的预定义手部姿态集Yt的一部分的特定手部姿态210相关联的一组预定义手部特征记录(手部姿势特征记录和/或手部运动特征记录)。
为了简洁起见,用符号y1:t来描述(y1,.....yt)。
估计项包括单例项和成对项。单例项涉及其中每个运行时手部数据集由有效的预定义手部特征记录的多个离散手部值来模拟的估计项(每个预定义手部特征记录定义被包括在有效手部姿态210中的手部姿势和/或手部运动中的一个)。单例项的计算在下面的公式1中表示。
公式1:
其中s(x1:t,yt)是一组单例项,Fs(x1:t,yt)是一组单例特征,并且ws是指派给每个单例特征的一组权重。该组单例项和该组权重w。可以使用一个或多个SSVM函数选择为相关联的一组预定义手部特征记录提供最佳准确度的单例项和权重通过训练会话来创建。
成对估计项涉及其中每个运行时手部数据集由有效的预定义手部特征记录中的当前预定义手部特征记录和先前预定义手部特征记录的多个离散手部值来模拟的估计项(每个有效的预定义手部特征记录定义被包括在有效手部姿态210中的手部姿势和/或手部运动之一)。成对项的计算在下面的公式2中表示。
公式2:
其中P(x1,T,yt-1,yt)是一组成对项,Fp(x1:t,yt-1,yt)是一组成对特征,并且wp是指派给每对成对特征的一组权重。该组成对项和该组权重wp可以使用一个或多个SSVM函数选择为相关联的一组预定义手部特征记录提供最佳准确度的成对项和权重通过训练会话来创建。
该组单例特征和该组成对特征通过模拟在运行时手部数据集的离散手部值得分上定义有效手部姿态210的手部特征记录的离散手部值来创建。离散手部值可以用布尔形式表示,例如“(食指向上“或”食指向右)“与”(无名指触摸拇指)”。在这个过程之后,整个手部特征记录由布尔表达式表示。布尔表达式可以允许高效和/或简单的模拟。布尔表示可以采用多种形式,但呈现最佳结果的布尔表示可以是例如CNF。CNF是其中每个布尔表达式可以表示为两个或更多个“或”运算符上的“与”运算符,例如,“(手掌向前“或”手掌向上“或”手掌向左)“与”(食指触摸拇指“或”中指触摸拇指)”的一种布尔表达式。模拟在运行时手部数据集的离散手部值得分上定义手部特征记录的离散手部值使用其中使用一个或多个参数来实现最佳模拟结果的多个参数函数中的一个或多个来执行。单例特征的生成在下面的公式3中给出。
公式3:
其中∝(xt,yt;ρ)是从中可以选择提供呈现最佳准确度的单例特征的参数函数的一组参数函数。设置的参数函数在运行时执行,因为为手部姿态检测过程100提供最佳准确结果的参数ρ可能未预先已知。每个单例特征的参数函数的执行可以使用一个或多个SSVM函数来执行。
类似地,成对特征的生成在下面的公式4中给出。
公式4:
其中β(xt,yt;σ)是从中选择提供呈现最佳准确度的成对特征的参数函数的一组参数函数。设置的参数函数在运行时执行,因为为手部姿态检测过程100提供最佳准确结果的参数可能未预先已知。每个成对特征的参数函数的执行可以使用一个或多个SSVM函数来执行。
如140所示,手部姿态检测过程100继续以执行使用所生成的估计项(单例项和/或成对项)来选择最适合包括一个或多个运行时手部数据集的运行时序列的预定义手部姿态210的一个或多个得分函数的优化。通过将得分函数应用于诸如FSM 301等FSM内的一个或多个序列来对得分函数进行优化,其中一个或多个序列中的每个对应于手部姿态210之一。得分函数在下面的公式5中表示。
公式5:
其中项表示最佳地匹配描绘在时间t的用户的移动手部的运行时序列的手部姿态210。优化可以通过动态编程来进行,该动态编程在FSM 301中的一个或多个序列上通过一个或多个得分函数对FSM 301进行增强之后在多个有效手部姿态210中的一个或多个中的每个的FSM(诸如FSM 301)上采用例如维特比解码。
可选地,时间t的该组有效手部姿态210包括一个或多个手部姿态210,该一个或多个手部姿态210不是预定义,而是包括可以使用离散手部值表示的一个或多个手部姿势(诸如手部姿势250)和/或手部运动(诸如手部运动260)。
可选地,一个或多个SSVM函数通过选择在时间t的该组有效的预定义手部姿态210来被专门化以仅包括一个或多个注册的手部姿态210。可以认为一个或多个注册的手部姿态210关于用户的运行时环境的上下文是有效的。上下文可以描述在时间t的一个或多个运行时执行参数和/或条件,诸如例如在时间t的活动应用、用户交互状态和/或用户可用的手部姿态210的限制。专门化一个或多个SSVM函数可以进一步加速优化过程以允许更快的手部姿态检测过程100。
现在参考图9,图9是根据本公开的一些实施例的用于检测由图像描绘的手部姿态的示例性系统的示意图。示例性系统900包括用于捕获用户950的移动手部的一个或多个图像的成像单元910、用于检测手部姿态(诸如由一个或多个捕获图像描绘的由用户950执行的手部姿态210)的一个或多个硬件处理器920、以及用于存储一个或多个预定义手部姿态顺序逻辑模型201(每个表示诸如手部姿态210等相应手部姿态)和/或一个或多个经训练的SSVM函数的存储介质430。成像单元910可以包括一个或多个成像设备,例如相机传感器、立体相机、深度相机和/或IR传感器。监测用户950的移动手部的成像单元910可以向处理器920传输被定时和同步的一个或多个捕获图像。一个或多个定时的捕获图像被分析以创建一个或多个运行时手部数据集的运行时序列,每个运行时手部数据集由从一个或多个定时的捕获图像推断的多个离散手部值得分中的一个或多个来定义。处理器920可以采用诸如手部姿态检测过程100等手部姿态检测过程来估计多个预定义手部姿态210(每个预定义手部姿态210由顺序逻辑模型201之一表示)中最佳地匹配由用户950执行的运行时姿势序列的最佳的一个预定义手部姿态210。可选地,系统900包括可以在针对SSVM执行而被优化的一个或多个硬件电路上执行SSVM函数的SSVM硬件单元925。SSVM硬件单元925可以高效且快速地执行手部姿态检测过程100的一个或多个SSVM函数,从而减少了处理器920的计算负载。可选地,SSVM硬件单元925被集成在一个或多个处理器920内。
根据本公开的一些实施例,提供了用于检测多模态用户交互动作的系统和方法。每个多模态动作可以包括一个或多个用户动作,例如,诸如手部姿态210等手部姿态、头部姿态、身体姿态、面部表情、注视方向、文本、语音和/或触觉输入。多模态动作的检测可以使用一个或多个计算机化设备来为用户执行,计算机化设备例如配备有和/或附接到一个或多个用户交互捕获设备的计算机、移动设备、计算机化机器和/或计算机化设备,用户交互捕获设备例如成像设备、录音机、触觉接收设备、文本输入设备(诸如例如,键盘、数字笔、触摸板等)、触摸屏、数字表面和/或指示设备(诸如例如,鼠标、轨迹球、游戏控制器、操纵杆等)。
可以处理所捕获的用户交互以标识一个或多个多模态动作。一旦标识出一个或多个多模态动作,可以发起一个或多个相关联的功能、动作、操作和/或命令。通过采用一种或多种检测技术以使用手部姿态检测过程100等手部姿态检测过程来标识构成多模态动作的一个或多个用户动作(例如,文本输入解析、指示设备输入分析、语音分析、触觉输入分析并且特别地是手部姿态检测),可以在运行时期间分类和/或标识多模态动作。
现在参考图10,图10是根据本公开的一些实施例的示例性多模态动作的构件块的框图。图示1000描绘了示例性多模态动作1010的若干构造方案。多模态动作1010可以被构造为一个或多个可能的构造,例如:
(a)多模态动作1010可以是手部姿态210和语音输入1020的组合和/或序列。
(b)多模态动作1010可以是语音输入1020和手部姿态210的组合和/或序列。
(c)多模态动作1010可以是手部姿态210和文本输入1030的组合和/或序列。
(d)多模态动作1010可以是文本输入1030和手部姿态210的组合和/或序列。
(e)多模态动作1010可以是手部姿态210和视觉元素选择1040的组合和/或序列。
(f)多模态动作1010可以是视觉元素选择1040和手部姿态210的组合和/或序列。
(g)多模态动作1010可以是手部姿态210和触觉输入1050的组合和/或序列。
(h)多模态动作1010可以是触觉输入1050和手部姿态210的组合和/或序列。
(i)多模态动作1010可以是另一多模态动作1010和手部姿态210之一的组合和/或序列。
(j)多模态动作1010可以是另一多模态动作1010和非姿态输入1060(例如,语音输入1020、文本输入1030、视觉元素选择1040和/或触觉输入1050)的组合和/或序列。
多模态动作1010可以包括上述构造(i)和/或(j)的多次迭代。每个多模态动作1010由多模态序列1011表示的独特组合和/或序列来定义,该多模态序列1011包括一个或多个多模态动作,例如,手部姿态210、语音输入1020、文本输入1030、视觉元素选择1040、触觉输入1050和/或多模态动作1010。每个多模态动作1010以空闲状态1080开始和结束,空闲状态1080是标识独特的多模态序列1011的开始和/或结束的虚拟状态。构成多模态序列1011的一个或多个多模态动作可以被定义为彼此顺序地和/或并行地发生。一个或多个手部姿态210和一个或多个非姿态输入1060可以彼此支持上下文,从而对多模态动作1010进行检测和/或分类,因为存在有效地匹配一个或多个用户动作的运行时多模态序列的更少的可能的手部姿态210和/或非姿态输入1060候选。例如,在多模态动作1010包括指定文本相关应用功能的语音输入(诸如语音输入1020)的情况下,在检测和/或分类期间可以仅考虑与文本操纵相关的手部姿态210。
现在参考图11,图11是根据本公开的一些实施例的定义多模态动作的多模态FSM的示意图。图示1100描绘了可以表示定义多模态动作(诸如多模态动作1010)的多模态序列(诸如多模态序列1011)的多模态FSM 1101。多模态FSM 1101可以表示一个或多个多模态动作,例如手部姿态(诸如手部姿态210)和/或非姿态输入(诸如非姿态输入1060)。多模态FSM1101开始于开始点1110,开始点1110可以是指示多模态FSM 1101的空闲状态的虚拟状态并且可以包括一个或多个状态1102A、1102B、1102C至1102N。状态1102A至1102N中的每个可以表示手部姿态210和/或非姿态输入1060中的一项。多模态FSM 1101结束于FSM结束点1120,FSM结束点1120标识多模态序列1011的完成,在该点处,检测和/或分类过程提供对检测到的多模态动作的估计。开始点1110和/或结束点1120可以通过诸如空闲状态1080等虚拟空闲状态来定义。可选地,多模态FSM状态1102A至1102N中的一个或多个之间的任何转换可以由系统和/或操作系统(OS)检测和记录,并且用于多个用途中的一个或多个,例如,当前活动应用的使用、其他一个或多个应用的使用和/或控制执行环境的OS的使用。可选地,通过包括状态1102A至1102N中的一个或多个的重复,划分成若干平行和/或顺序的路径,和/或组合两个或更多个多模态FSM1101和/或其部分,可以将多模态FSM 1101构造为复杂多模态动作,诸如多模态动作1010。被表示为多模态FSM 1101的多模态序列1011可以改进对一个或多个多模态动作1010的检测和/或分类。更具体地,被包括在多模态动作1010中的一个或多个手部姿态210的检测可以得到高度地提高,因为每个手部姿态210使用分立架构来构建。t个手部姿态210中的每个由手部特征记录(诸如手部特征记录)表示的手部姿态序列(诸如手部姿态序列201)来定义。由每个指示可以被容易地标识的对应的手部特征的有限数目的状态的离散手部值得分定义每个手部特征记录。检测、标识和/或分类可以得到简化,因为不需要用户应用来执行手部骨骼建模以进行手部姿态210的识别、标识和/或分类。此外,计算机学习和/或计算机视觉处理可以是由于由手部姿态检测过程100执行的离散架构而显著减小。
现在参考图12,图12是根据本公开的一些实施例的示例性多模态动作的示意图。图示1200描绘了3个多模态动作1010A、1010B和1010C,诸如多模态动作1010。多模态动作1010A、1010B和1010C中的每个由多模态序列(例如,多模态序列1011)定义,其中多模态序列1011A定义多模态动作1010A,多模态序列1011B定义多模态动作1010B,多模态序列1011C定义多模态动作1010C。多模态序列1011A、1011B和1011C中的每个开始和结束于分别标识多模态动作1010A、1010B和1010C的开始和结束的空闲状态,诸如空闲状态1080。
例如,在绘图工具应用中,多模态动作1010A与项目填充应用功能相关联。如图所示,多模态序列1011A包括3个多模态动作:项目视觉元素选择1040A、画笔手部姿态210B和颜色语音输入1020A。项目视觉元素选择1040A标识绘图工具应用的绘图区域中的项目。例如,项目视觉元素选择1040A可以使用例如触摸屏、数字表面和/或指示设备来检测例如作为项目的选择。画笔手部姿态210B标识画笔手部姿态,例如从左向右摆动张开的手,其与与由项目视觉元素选择1040A选择的项目相关的项目填充应用功能相关联。颜色语音输入1020A标识颜色,例如将用于填充由项目视觉元素选择1040A选择的项目的蓝色。多模态动作1010A的结果是由项目视觉元素选择1040A选择的项目被填充蓝色。
多模态动作1010B与例如文本编辑器应用中的文本编辑应用功能相关联。如图所示,多模态序列1011B包括2个多模态动作:选择手部姿态210C和文本输入1030A。选择手部姿态210C标识选择手部姿态,例如,通过例如文本编辑应用在呈现在屏幕上的文本上移动指示食指以选择需要编辑的文本位置。文本输入1030A在由选择手部姿态210C标识的位置插入新的和/或已修改的文本。多模态动作1010B的结果是通过选择手部姿态210C标识的文本使用由文本输入1030A接收的文本被更新。
多模态动作1010C使用例如文本消息收发应用与文本消息传输项目应用功能相关联。如图所示,多模态序列1011C包括4个多模态动作:文本消息手部姿态210D、联系人语音输入1020B、文本输入1030B和发送手部姿态210E。文本消息手部姿态210D(例如,进行涂鸦动作并且推动手离开)被检测并且发起文本消息收发应用。联系人语音输入1020B从文本消息收发应用的联系人列表中标识联系人。文本输入1030B将消息文本插入到消息中。发送手部姿态210E(例如,向右推动手)被检测并且发起消息到由联系人语音输入1020B标识的联系人的传输操作。
预计在专利权有效期期间,从本申请,将开发很多相关的DFE、HMI和/或NUI,并且术语DFE、HMI和/或NUI的范围旨在预先包括所有这些新技术。
术语“包括(comprises)”、“包括(comprising)”、“包括(includes)”、“包括(including)”、“具有(having)”及其共源词表示“包括但不限于”。
术语“由......组成”表示“包括并限于”。
术语“基本上由...组成”是指组合物、方法或结构可以包括附加成分、步骤和/或部分,但是只有当附加成分、步骤和/或部分不会实质上改变所要求保护的组合物、方法或结构的基本和新颖特征。
如本文中使用的,除非上下文另有明确规定,否则单数形式“一个(a)”、“一个(an)”和“该(the)”包括复数形式。例如,术语“手部姿态”或“至少手部姿态”可以包括单个手部姿势和/或双个手部姿态。
如本文中使用的,术语“方法”是指用于完成给定任务的方式、手段、技术和程序,包括但不限于已知的或者由化学、药理学、生物学、生物化学和医学领域的从业人员容易从已知的方式、手段、技术和程序发展的那些方式、手段、技术和程序。
根据本公开的一些实施例,提供了一种用于检测用户的手部姿态的计算机实现的方法,包括:
a)接收多个顺序逻辑模型,所述多个顺序逻辑模型中的每个顺序逻辑模型表示多个手部姿态中的一个手部姿态。所述顺序逻辑模型映射多个预定义手部姿势和预定义手部运动中的一项或多项。所述多个预定义手部姿势和手部运动中的每一项由多个预定义手部特征记录中的一个预定义手部特征记录表示,所述多个预定义手部特征记录由多个离散手部值中的一个或多个离散手部值定义,所述多个离散手部值中的每个离散手部值指示参考手部的多个手部特征中的一个手部特征的状态。
b)接收多个运行时手部数据集的运行时序列,所述多个运行时手部数据集中的每个运行时手部数据集由多个离散手部值得分定义,所述多个离散手部值得分中的每个离散手部值得分指示用户的移动手部的所述多个手部特征中的相应的一个手部特征的当前状态。所述多个离散手部值得分通过对在视觉上描绘所述移动手部的多个定时图像的分析来推断。
c)在一个或多个SSVM函数中提交所述多个运行时手部数据集和所述多个预定义手部特征记录以关于所述多个预定义手部特征记录来为所述多个运行时手部数据集中的每个运行时手部数据集生成多个估计项。
d)通过优化一个或多个得分函数来估计所述多个手部姿态中的哪个手部姿态与在所述多个定时图像中描绘的运行时序列最佳匹配,所述一个或多个得分函数使用所述运行时序列中的所述多个运行时手部数据集中的每个运行时手部数据集的估计项。
所述多个离散手部值中的每个离散手部值由布尔公式表示,所述布尔公式以合取范式(CNF)的形式定义。
所述一个或多个SSVM函数通过向所述多个运行时手部数据集中的每个运行时手部数据集应用多个参数函数以标识提供所述多个运行时手部数据集中的每个运行时手部数据集的最高检测准确度的一个或多个参数函数来生成所述多个估计项。所述多个参数函数中的每个参数函数模拟在所述多个离散手部值得分中的每个离散手部值得分上的所述多个离散手部值中的每个离散手部值。
所述一个或多个SSVM函数包括多个子函数,所述多个子函数中的每个子函数接收所述多个运行时手部数据集中的一个运行时手部数据集和所述多个手部特征记录中的一个手部特征记录作为输入。所述多个子函数中的每个子函数被指派权重,所述权重由所述SSVM函数在训练会话期间学习。
所述一个或多个SSVM函数包括多个子函数,所述多个子函数中的每个子函数接收所述多个运行时手部数据集中的一个运行时手部数据集和所述多个手部特征记录中的两个手部特征记录作为输入,所述两个手部特征记录表示以下各项中的当前项和先前项:在所述顺序逻辑模型内的所述多个手部姿势和/或手部运动。所述多个子函数中的每个子函数被指派有权重,所述权重由所述SSVM函数在训练会话期间学习。
可选地,所述顺序逻辑模型被表示为FSM。所述FSM的每个状态与所述多个预定义手部特征记录中的相应的一个预定义手部特征记录相关。所述FSM在所述优化之前使用所述一个或多个得分函数在所述FSM内的一个或多个序列上被增强。
可选地,所述一个或多个SSVM函数通过选择所述多个顺序逻辑模型中表示所述多个手部姿态中的上下文注册的手部姿态的一个或多个顺序逻辑模型来被专用化。
可选地,所述多个运行时手部数据集被估计为未预定义的多个手部姿势和/或手部运动中的一项。
可选地,所述检测包括多个多模态动作中的一个或多个多模态动作的检测。所述一个或多个多模态动作包括所述多个手部姿态中的一个或多个手部姿态和一个或多个非姿态用户交互。所述非姿态用户交互是包括以下各项的组的成员:文本输入、视觉元素选择、触觉输入和/或语音输入。
根据本公开的一些实施例,提供了一种用于检测用户的手部姿态的系统,所述系统包括存储多个预定义手部特征记录的存储装置;存储代码的存储器以及耦合到所述存储装置和所述存储器用于执行所述存储的代码的一个或多个处理器。所述代码包括:
a)用于接收多个顺序逻辑模型的代码指令,所述多个顺序逻辑模型中的每个顺序逻辑模型表示多个手部姿态中的一个手部姿态。所述顺序逻辑模型映射多个预定义手部姿势和预定义手部运动中的一项或多项。所述多个预定义手部姿势和手部运动中的每一项由多个预定义手部特征记录中的一个预定义手部特征记录表示,所述多个预定义手部特征记录由多个离散手部值中的一个或多个离散手部值定义,所述多个离散手部值中的每个离散手部值指示参考手部的多个手部特征中的一个手部特征的状态。
b)用于接收多个运行时手部数据集的运行时序列的代码指令,所述多个运行时手部数据集中的每个运行时手部数据集由多个离散手部值得分定义,所述多个离散手部值得分中的每个离散手部值得分指示用户的移动手部的所述多个手部特征中的相应的一个手部特征的当前状态。所述多个离散手部值得分通过对在视觉上描绘所述移动手部的多个定时图像的分析来推断。
c)用于在一个或多个SSVM函数中提交所述多个运行时手部数据集和所述多个预定义手部特征记录以关于所述多个预定义手部特征记录来为所述多个运行时手部数据集中的每个运行时手部数据集生成多个估计项的代码指令。
d)用于通过优化一个或多个得分函数来估计所述多个手部姿态中的哪个手部姿态与在所述多个定时图像中描绘的运行时序列最佳匹配的代码指令,所述一个或多个得分函数使用所述运行时序列中的所述多个运行时手部数据集中的每个运行时手部数据集的估计项。
根据本公开的一些实施例,提供了一种用于检测用户的手部姿态的软件程序产品,包括非暂态计算机可读存储介质和程序指令:
a)第一程序指令,用于接收多个顺序逻辑模型,所述多个顺序逻辑模型中的每个顺序逻辑模型表示多个手部姿态中的一个手部姿态。所述顺序逻辑模型映射多个预定义手部姿势和预定义手部运动中的一项或多项。所述多个预定义手部姿势和手部运动中的每一项由多个预定义手部特征记录中的一个预定义手部特征记录表示,所述多个预定义手部特征记录由多个离散手部值中的一个或多个离散手部值定义,所述多个离散手部值中的每个离散手部值指示参考手部的多个手部特征中的一个手部特征的状态。
b)第二程序指令,用于接收多个运行时手部数据集的运行时序列,所述多个运行时手部数据集中的每个运行时手部数据集由多个离散手部值得分定义,所述多个离散手部值得分中的每个离散手部值得分指示用户的移动手部的所述多个手部特征中的相应的一个手部特征的当前状态。所述多个离散手部值得分通过对在视觉上描绘所述移动手部的多个定时图像的分析来推断。
c)第三程序指令,用于在一个或多个SSVM函数中提交所述多个运行时手部数据集和所述多个预定义手部特征记录以关于所述多个预定义手部特征记录来为所述多个运行时手部数据集中的每个运行时手部数据集生成多个估计项。
d)第四程序指令,用于通过优化一个或多个得分函数来估计所述多个手部姿态中的哪个手部姿态与在所述多个定时图像中描绘的运行时序列最佳匹配,所述一个或多个得分函数使用所述运行时序列中的所述多个运行时手部数据集中的每个运行时手部数据集的估计项。
所述第一、第二、第三和第四程序指令由一个或多个计算机化处理器从所述非暂态计算机可读存储介质来执行。
可选地,所述软件程序产品的检测包括多个多模态动作中的一个或多个多模态动作的检测。所述一个或多个多模态动作包括所述多个手部姿态中的一个或多个手部姿态和一个或多个非姿态用户交互。所述非姿态用户交互是包括以下各项的组的成员:文本输入、视觉元素选择、触觉输入和/或语音输入。
为了清楚起见,在单独的实施例的上下文中描述的本文中描述的示例的某些特征也可以在单个实施例中组合提供。相反地,为了简洁起见,在单个实施例的上下文中描述的本文中描述的示例的各种特征也可以单独地或以任何合适的子组合提供,或者在本公开的任何其他描述的实施例中合适地提供。在各种实施例的上下文中描述的某些特征不被认为是那些实施例的基本特征,除非这个实施例在没有那些元件的情况下不起作用。
Claims (15)
1.一种用于检测用户的手部姿态的系统,包括:
存储装置,存储多个预定义手部特征记录;
存储器,存储代码;
至少一个处理器,被耦合到所述存储装置和所述存储器用于执行存储的所述代码,所述代码包括:
用于接收多个顺序逻辑模型的代码指令,所述多个顺序逻辑模型中的每个顺序逻辑模型表示多个手部姿态中的一个手部姿态,所述顺序逻辑模型映射多个预定义手部姿势和预定义手部运动中的至少一项,所述多个预定义手部姿势和手部运动中的每一项由多个预定义手部特征记录中的一个预定义手部特征记录表示,所述多个预定义手部特征记录由多个离散手部值中的至少一些离散手部值定义,所述多个离散手部值中的每个离散手部值指示参考手部的多个手部特征中的一个手部特征的状态;
用于接收多个运行时手部数据集的所述运行时序列的代码指令,所述多个运行时手部数据集中的每个运行时手部数据集包括多个离散手部值得分,所述多个离散手部值得分中的每个离散手部值得分指示用户的移动手部的所述多个手部特征中的相应的一个手部特征的当前状态,所述多个离散手部值得分通过对在视觉上描绘所述移动手部的多个定时图像的分析而被推断;
用于在至少一个结构化支持向量机(SSVM)函数中提交所述多个运行时手部数据集和所述多个预定义手部特征记录以关于所述多个预定义手部特征记录来为所述多个运行时手部数据集中的每个运行时手部数据集生成多个估计项的代码指令;以及
用于通过优化至少一个得分函数来估计所述多个手部姿态中的哪个手部姿态与在所述多个定时图像中描绘的序列最佳匹配的代码指令,所述至少一个得分函数使用用于所述运行时序列内的所述多个运行时手部数据集中的每个运行时手部数据集的估计项。
2.根据权利要求1所述的系统,其中所述多个离散手部值中的每个离散手部值由布尔公式表示,所述布尔公式以合取范式(CNF)的形式被定义。
3.根据权利要求1所述的系统,其中所述至少一个SSVM函数通过向所述多个运行时手部数据集中的每个运行时手部数据集应用多个参数函数,以标识提供针对所述多个运行时手部数据集中的每个运行时手部数据集的最高检测准确度的至少一个参数函数,来生成所述多个估计项,所述多个参数函数中的每个参数函数模拟在所述离散手部值得分中的每个离散手部值得分上的所述离散手部值中的每个离散手部值。
4.根据权利要求1所述的系统,其中所述至少一个SSVM函数包括多个子函数,所述多个子函数中的每个子函数接收所述多个运行时手部数据集中的一个运行时手部数据集和所述多个手部特征记录中的一个手部特征记录作为输入,所述多个子函数中的每个子函数被指派权重,所述权重由所述至少一个SSVM函数在训练会话期间被学习。
5.根据权利要求1所述的系统,其中所述至少一个SSVM函数包括多个子函数,所述多个子函数中的每个子函数接收所述多个运行时手部数据集中的一个运行时手部数据集和所述多个手部特征记录中的两个手部特征记录作为输入,所述两个手部特征记录表示以下项中的当前项和先前项:在所述顺序逻辑模型内的所述多个手部姿势和手部运动,所述多个子函数中的每个子函数被指派有权重,所述权重由所述至少一个SSVM函数在训练会话期间被学习。
6.根据权利要求1所述的系统,还包括所述顺序逻辑模型被表示为FSM,所述FSM的每个状态与所述多个预定义手部特征记录中的相应的一个预定义手部特征记录相关,所述FSM在所述优化中的所述提交之前使用所述至少一个得分函数在所述FSM内的至少一个序列上被增强。
7.根据权利要求1所述的系统,还包括所述至少一个SSVM函数通过选择所述多个顺序逻辑模型中表示上下文注册的手部姿态的至少一个顺序逻辑模型来被专用化。
8.根据权利要求1所述的系统,还包括所述检测包括多个多模态动作中的至少一个多模态动作的检测,所述至少一个多模态动作包括所述多个手部姿态中的至少一个手部姿态和至少一个非姿态用户交互,所述非姿态用户交互是包括以下项的群组的成员:文本输入、视觉元素选择、触觉输入和语音输入。
9.一种检测用户的手部姿态的计算机实现的方法,包括:
接收多个顺序逻辑模型,所述多个顺序逻辑模型中的每个顺序逻辑模型表示多个手部姿态中的一个手部姿态,所述顺序逻辑模型映射多个预定义手部姿势和预定义手部运动中的至少一项,所述多个预定义手部姿势和手部运动中的每一项由多个预定义手部特征记录中的一个预定义手部特征记录表示,所述多个预定义手部特征记录由多个离散手部值中的至少一些离散手部值定义,所述多个离散手部值中的每个离散手部值指示参考手部的多个手部特征中的一个手部特征的状态;
接收多个运行时手部数据集的运行时序列,所述多个运行时手部数据集中的每个运行时手部数据集由多个离散手部值得分定义,所述多个离散手部值得分中的每个离散手部值得分指示用户的移动手部的所述多个手部特征中的相应的一个手部特征的当前状态,所述多个离散手部值得分通过对在视觉上描绘所述移动手部的多个定时图像的分析而被推断;
在至少一个结构化支持向量机(SSVM)函数中提交所述多个运行时手部数据集和所述多个预定义手部特征记录,以关于所述多个预定义手部特征记录来为所述多个运行时手部数据集中的每个运行时手部数据集生成多个估计项;以及
使用计算机化处理器通过优化至少一个得分函数来估计所述多个手部姿态中的哪个手部姿态与在所述多个定时图像中描绘的所述运行时序列最佳匹配,所述至少一个得分函数使用用于所述运行时序列内的所述多个运行时手部数据集中的每个运行时手部数据集的估计项。
10.根据权利要求9所述的计算机实现的方法,其中所述至少一个SSVM函数通过向所述多个运行时手部数据集中的每个运行时手部数据集应用多个参数函数,以标识提供针对所述多个运行时手部数据集中的每个运行时手部数据集的最高检测准确度的至少一个参数函数,来生成所述多个估计项,所述多个参数函数中的每个参数函数模拟在所述多个离散手部值得分中的每个离散手部值得分上的所述多个离散手部值中的每个离散手部值。
11.根据权利要求9所述的计算机实现的方法,其中所述至少一个SSVM函数包括多个子函数,所述多个子函数中的每个子函数接收所述多个运行时手部数据集中的一个运行时手部数据集和所述多个手部特征记录中的一个手部特征记录作为输入,所述多个子函数中的每个子函数被指派权重,所述权重由所述至少一个SSVM函数在训练会话期间被学习。
12.根据权利要求9所述的计算机实现的方法,其中所述至少一个SSVM函数包括多个子函数,所述多个子函数中的每个子函数接收所述多个运行时手部数据集中的一个运行时手部数据集和所述多个手部特征记录中的两个手部特征记录作为输入,所述两个手部特征记录表示以下项中的当前项和先前项:在所述顺序逻辑模型内的所述多个手部姿势和手部运动,所述多个子函数中的每个子函数被指派有权重,所述权重由所述至少一个SSVM函数在训练会话期间被学习。
13.根据权利要求9所述的计算机实现的方法,还包括所述顺序逻辑模型被表示为有限状态机(FSM),所述FSM的每个状态与所述多个预定义手部特征记录中的相应的一个预定义手部特征记录相关,所述FSM在所述优化之前使用所述至少一个得分函数在所述FSM内的至少一个序列上被增强。
14.根据权利要求9所述的计算机实现的方法,还包括所述至少一个SSVM函数通过选择所述多个顺序逻辑模型中表示所述多个手部姿态中的上下文注册的手部姿态的至少一个顺序逻辑模型来被专用化。
15.根据权利要求9所述的计算机实现的方法,还包括所述检测包括多个多模态动作中的至少一个多模态动作的检测,所述至少一个多模态动作包括所述多个手部姿态中的至少一个手部姿态和至少一个非姿态用户交互,所述非姿态用户交互是包括以下项的群组的成员:文本输入、视觉元素选择、触觉输入和语音输入。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110375375.6A CN113093909A (zh) | 2015-12-31 | 2016-12-22 | 使用姿态语言离散值的手部姿态的检测 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/985,680 US10599919B2 (en) | 2015-12-31 | 2015-12-31 | Detection of hand gestures using gesture language discrete values |
US14/985,680 | 2015-12-31 | ||
PCT/US2016/068160 WO2017116922A1 (en) | 2015-12-31 | 2016-12-22 | Detection of hand gestures using gesture language discrete values |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110375375.6A Division CN113093909A (zh) | 2015-12-31 | 2016-12-22 | 使用姿态语言离散值的手部姿态的检测 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108475113A true CN108475113A (zh) | 2018-08-31 |
CN108475113B CN108475113B (zh) | 2021-04-27 |
Family
ID=57777750
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110375375.6A Pending CN113093909A (zh) | 2015-12-31 | 2016-12-22 | 使用姿态语言离散值的手部姿态的检测 |
CN201680077619.XA Active CN108475113B (zh) | 2015-12-31 | 2016-12-22 | 用于检测用户的手部姿态的方法、系统和介质 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110375375.6A Pending CN113093909A (zh) | 2015-12-31 | 2016-12-22 | 使用姿态语言离散值的手部姿态的检测 |
Country Status (4)
Country | Link |
---|---|
US (4) | US10599919B2 (zh) |
EP (1) | EP3398035B1 (zh) |
CN (2) | CN113093909A (zh) |
WO (1) | WO2017116922A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114625249A (zh) * | 2022-03-07 | 2022-06-14 | 清华大学 | 一种检测捏合释放动作的方法、装置及电子设备 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10962780B2 (en) * | 2015-10-26 | 2021-03-30 | Microsoft Technology Licensing, Llc | Remote rendering for virtual images |
US10599919B2 (en) * | 2015-12-31 | 2020-03-24 | Microsoft Technology Licensing, Llc | Detection of hand gestures using gesture language discrete values |
US11841920B1 (en) | 2016-02-17 | 2023-12-12 | Ultrahaptics IP Two Limited | Machine learning based gesture recognition |
US11714880B1 (en) * | 2016-02-17 | 2023-08-01 | Ultrahaptics IP Two Limited | Hand pose estimation for machine learning based gesture recognition |
US11854308B1 (en) | 2016-02-17 | 2023-12-26 | Ultrahaptics IP Two Limited | Hand initialization for machine learning based gesture recognition |
US10540015B2 (en) * | 2018-03-26 | 2020-01-21 | Chian Chiu Li | Presenting location related information and implementing a task based on gaze and voice detection |
US11195525B2 (en) * | 2018-06-13 | 2021-12-07 | Panasonic Intellectual Property Corporation Of America | Operation terminal, voice inputting method, and computer-readable recording medium |
TWI710973B (zh) * | 2018-08-10 | 2020-11-21 | 緯創資通股份有限公司 | 手勢識別方法、手勢識別模組及手勢識別系統 |
US11782522B1 (en) * | 2022-03-25 | 2023-10-10 | Huawei Technologies Co., Ltd. | Methods and systems for multimodal hand state prediction |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103530613A (zh) * | 2013-10-15 | 2014-01-22 | 无锡易视腾科技有限公司 | 一种基于单目视频序列的目标人手势交互方法 |
CN103577793A (zh) * | 2012-07-27 | 2014-02-12 | 中兴通讯股份有限公司 | 手势识别方法及装置 |
CN104317386A (zh) * | 2014-06-25 | 2015-01-28 | 西南科技大学 | 一种姿势序列有限状态机动作识别方法 |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6591146B1 (en) * | 1999-09-16 | 2003-07-08 | Hewlett-Packard Development Company L.C. | Method for learning switching linear dynamic system models from data |
GB2419433A (en) * | 2004-10-20 | 2006-04-26 | Glasgow School Of Art | Automated Gesture Recognition |
US9910497B2 (en) * | 2006-02-08 | 2018-03-06 | Oblong Industries, Inc. | Gestural control of autonomous and semi-autonomous systems |
US8180114B2 (en) * | 2006-07-13 | 2012-05-15 | Northrop Grumman Systems Corporation | Gesture recognition interface system with vertical display |
US8904312B2 (en) * | 2006-11-09 | 2014-12-02 | Navisense | Method and device for touchless signing and recognition |
US7904477B2 (en) * | 2006-12-13 | 2011-03-08 | Videomining Corporation | Object verification enabled network (OVEN) |
US8520906B1 (en) * | 2007-09-24 | 2013-08-27 | Videomining Corporation | Method and system for age estimation based on relative ages of pairwise facial images of people |
US8396247B2 (en) * | 2008-07-31 | 2013-03-12 | Microsoft Corporation | Recognizing actions of animate objects in video |
US8180766B2 (en) * | 2008-09-22 | 2012-05-15 | Microsoft Corporation | Bayesian video search reranking |
US8195669B2 (en) * | 2008-09-22 | 2012-06-05 | Microsoft Corporation | Optimizing ranking of documents using continuous conditional random fields |
US20100082617A1 (en) * | 2008-09-24 | 2010-04-01 | Microsoft Corporation | Pair-wise ranking model for information retrieval |
DE102008052928A1 (de) * | 2008-10-23 | 2010-05-06 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Vorrichtung, Verfahren und Computerprogramm zur Erkennung einer Geste in einem Bild, sowie Vorrichtung, Verfahren und Computerprogramm zur Steuerung eines Geräts |
US20100164986A1 (en) * | 2008-12-29 | 2010-07-01 | Microsoft Corporation | Dynamic Collage for Visualizing Large Photograph Collections |
US9069385B1 (en) * | 2009-01-08 | 2015-06-30 | Sprint Communications Company L.P. | Communicating physical gestures as compressed data streams |
US20100315266A1 (en) * | 2009-06-15 | 2010-12-16 | Microsoft Corporation | Predictive interfaces with usability constraints |
US8428368B2 (en) * | 2009-07-31 | 2013-04-23 | Echostar Technologies L.L.C. | Systems and methods for hand gesture control of an electronic device |
FR2950713A1 (fr) * | 2009-09-29 | 2011-04-01 | Movea Sa | Systeme et procede de reconnaissance de gestes |
US9619035B2 (en) * | 2011-03-04 | 2017-04-11 | Microsoft Technology Licensing, Llc | Gesture detection and recognition |
WO2013063767A1 (en) * | 2011-11-01 | 2013-05-10 | Intel Corporation | Dynamic gesture based short-range human-machine interaction |
US9755995B2 (en) * | 2012-11-20 | 2017-09-05 | Dropbox, Inc. | System and method for applying gesture input to digital content |
US8929600B2 (en) * | 2012-12-19 | 2015-01-06 | Microsoft Corporation | Action recognition based on depth maps |
US10976922B2 (en) * | 2013-02-17 | 2021-04-13 | Benjamin Firooz Ghassabian | Data entry systems |
US20150138078A1 (en) * | 2013-11-18 | 2015-05-21 | Eyal Krupka | Hand pose recognition using boosted look up tables |
US10866720B2 (en) * | 2014-02-27 | 2020-12-15 | Keyless Systems Ltd. | Data entry systems |
US9594427B2 (en) * | 2014-05-23 | 2017-03-14 | Microsoft Technology Licensing, Llc | Finger tracking |
US20160085958A1 (en) * | 2014-09-22 | 2016-03-24 | Intel Corporation | Methods and apparatus for multi-factor user authentication with two dimensional cameras |
US20170003746A1 (en) * | 2015-06-30 | 2017-01-05 | International Business Machines Corporation | Hand-gesture input |
US10599919B2 (en) * | 2015-12-31 | 2020-03-24 | Microsoft Technology Licensing, Llc | Detection of hand gestures using gesture language discrete values |
-
2015
- 2015-12-31 US US14/985,680 patent/US10599919B2/en active Active
-
2016
- 2016-12-22 WO PCT/US2016/068160 patent/WO2017116922A1/en active Application Filing
- 2016-12-22 EP EP16825671.7A patent/EP3398035B1/en active Active
- 2016-12-22 CN CN202110375375.6A patent/CN113093909A/zh active Pending
- 2016-12-22 CN CN201680077619.XA patent/CN108475113B/zh active Active
-
2020
- 2020-02-19 US US16/795,474 patent/US11410464B2/en active Active
-
2022
- 2022-07-05 US US17/858,047 patent/US20220343689A1/en not_active Abandoned
-
2023
- 2023-01-18 US US18/156,367 patent/US20230154238A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103577793A (zh) * | 2012-07-27 | 2014-02-12 | 中兴通讯股份有限公司 | 手势识别方法及装置 |
CN103530613A (zh) * | 2013-10-15 | 2014-01-22 | 无锡易视腾科技有限公司 | 一种基于单目视频序列的目标人手势交互方法 |
CN104317386A (zh) * | 2014-06-25 | 2015-01-28 | 西南科技大学 | 一种姿势序列有限状态机动作识别方法 |
Non-Patent Citations (3)
Title |
---|
CHEN-YU CHEN: "SVM-based State Transition Framework for Dynamical Human Behavior Identification", 《2009IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS,SPEECH AND SIGNAL PROCESSING》 * |
FRANCIS QUEK: ""Multimodal Human Discourse: Gesture and Speech"", 《ACM TRANSACTIONS ON COMPUTER-HUMAN INTERACTION》 * |
KENJI OKA: ""Real-time Tracking of Multiple Fingertips and Gesture Recognition for Augmented Desk Interface Systems"", 《PROCEEDINGS OF FIFTH IEEE INTERNATIONAL CONFERENCE ON AUTOMATIC FACE GESTURE RECOGNITION》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114625249A (zh) * | 2022-03-07 | 2022-06-14 | 清华大学 | 一种检测捏合释放动作的方法、装置及电子设备 |
CN114625249B (zh) * | 2022-03-07 | 2024-04-19 | 清华大学 | 一种检测捏合释放动作的方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
US20200184204A1 (en) | 2020-06-11 |
US20220343689A1 (en) | 2022-10-27 |
US20170193288A1 (en) | 2017-07-06 |
WO2017116922A1 (en) | 2017-07-06 |
CN113093909A (zh) | 2021-07-09 |
EP3398035A1 (en) | 2018-11-07 |
US11410464B2 (en) | 2022-08-09 |
EP3398035B1 (en) | 2021-07-21 |
US20230154238A1 (en) | 2023-05-18 |
US10599919B2 (en) | 2020-03-24 |
CN108475113B (zh) | 2021-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108475113A (zh) | 使用姿态语言离散值的手部姿态的检测 | |
US10139921B2 (en) | Electrical device for hand gestures detection | |
Trejo et al. | Recognition of yoga poses through an interactive system with kinect device | |
Yi et al. | Atk: Enabling ten-finger freehand typing in air based on 3d hand tracking data | |
CN106997236B (zh) | 基于多模态输入进行交互的方法和设备 | |
CN108052202A (zh) | 一种3d交互方法、装置、计算机设备及存储介质 | |
EP3519926A1 (en) | Method and system for gesture-based interactions | |
US9734435B2 (en) | Recognition of hand poses by classification using discrete values | |
CN103995610B (zh) | 从手持式计算机化设备的替代触摸板进行用户输入的方法 | |
Oz et al. | Recognition of finger spelling of American sign language with artificial neural network using position/orientation sensors and data glove | |
JP2017534135A (ja) | モバイル機器のバーチャルボールのシミュレーションおよびコントロールの方法 | |
Dong et al. | Touch-move-release: studies of surface and motion gestures for mobile augmented reality | |
US9978287B2 (en) | Systems and methods for improving tennis stroke recognition | |
US9870063B2 (en) | Multimodal interaction using a state machine and hand gestures discrete values | |
CN116051789A (zh) | 用于增强现实的方法、装置、设备和存储介质 | |
Thakar et al. | Hand gesture controlled gaming application | |
Chera et al. | Gesture ontology for informing service-oriented architecture | |
CN111625102A (zh) | 一种建筑物展示方法及装置 | |
TW202024949A (zh) | 跨語言資訊建構與處理方法及跨語言資訊系統 | |
Song et al. | HotGestures: Complementing command selection and use with delimiter-free gesture-based shortcuts in virtual reality | |
Ab Hamid | An Android Application for Facial Expression Recognition Using Deep Learning | |
Forson | Gesture Based Interaction: Leap Motion | |
CN116402922A (zh) | 数字人的动作控制方法、装置、电子设备和存储介质 | |
CN116434345A (zh) | 基于体感的太极运动匹配方法、系统、终端及存储介质 | |
Kasinathan et al. | A Gesture-based Recognition System for Augmented Reality |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |