CN104798104A - 使用标记区域对视频流的手势预处理 - Google Patents

使用标记区域对视频流的手势预处理 Download PDF

Info

Publication number
CN104798104A
CN104798104A CN201380059289.8A CN201380059289A CN104798104A CN 104798104 A CN104798104 A CN 104798104A CN 201380059289 A CN201380059289 A CN 201380059289A CN 104798104 A CN104798104 A CN 104798104A
Authority
CN
China
Prior art keywords
stage
gesture
pixel
camera
skin
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
Application number
CN201380059289.8A
Other languages
English (en)
Other versions
CN104798104B (zh
Inventor
J·伯尔
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/713,849 external-priority patent/US8805017B2/en
Application filed by Intel Corp filed Critical Intel Corp
Priority to CN201810777013.8A priority Critical patent/CN108958487B8/zh
Priority to CN201710311113.7A priority patent/CN107272883B/zh
Publication of CN104798104A publication Critical patent/CN104798104A/zh
Application granted granted Critical
Publication of CN104798104B publication Critical patent/CN104798104B/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/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • 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/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 OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/96Management of image or video recognition tasks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/162Detection; Localisation; Normalisation using pixel segmentation or colour matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/28Recognition of hand or arm movements, e.g. recognition of deaf sign language

Abstract

公开了用于通过采用阶梯状的及分布式管线步骤而对视频流进行处理以降低平台功率的技术,其中,选择性地执行CPU密集型处理。所述技术特别适用于基于手部的导航手势处理。在一个示例性事例中,例如,所述技术在计算机系统中实现,其中初始阈值检测(图像扰动)以及选择性地用户存在(手部图像)处理组件接近所述系统的相机或在所述相机内,并且所述相机位于系统的主显示器内或者接近所述显示器。在一些事例中,处于标记区域外的多在个处理阶段之间的图像处理及像素信息传输被抑制。在一些实施例中,所述标记区域与鼠标垫或指定的桌面区或用户输入设备(例如,键盘)对齐。由系统所评估的像素可被限制在所述标记区域的子集中。

Description

使用标记区域对视频流的手势预处理
相关申请
本申请是2012年12月13日提交的、名称为“Gesture Pre-Processing ofVideo stream to Reduce Platform Power”的美国专利申请No.13/713849的连续部分。此外,本申请与2013年3月13日提交的、名称为“GesturePre-Processing of Video Stream Using Skintone Detection”的美国专利申请No.13/801111有关。这些申请中的每一个均通过引用整体并入本文。
背景技术
对于终端用户,大多数的计算机用途是将所述终端用户连接到因特网,这是通过浏览接口进行的。常见用途及活动包括例如基于搜索引擎的浏览、电子邮件(email)、社交网络、内容消费(例如,浏览新闻及视频)、内容分享(例如,照片、音乐等)、在线购物和采买、以及地图和定向等等。这些常见的因特网用途通常需要某种形式的基于用户的导航,例如通常使用鼠标或触摸板及关键词完成。
为了改善用户导航体验,已经产生了基于手势的导航技术。特别地,用户手的移动可通过所谓的网络摄影机记录下来并转换成指针的移动。典型的基于手势的导航应用结合网络摄影机进行操作,其能够模仿通常使用常规的鼠标或触摸板来执行的动作:点击、双击、拖拽及滚动。用户也可利用头部的移动来控制计算机或以其它方式实施导航。存在两种用于使用相机实现人体手势的基本方法:使用具有所谓的标记的物体的手势(其中,标记被设置在与相机传感器交互的视野内),以及无标记手势(例如,无标记的手部手势)。无标记手势技术可使用三维或3D相机(具有Z深度)来实现,这通常用于观察约3至5米(m)范围的距离,或使用二维或2D相机(根据2D信息而解释3D运动)实现,这通常用于观察约0.5米(m)范围的距离。
诸如台式计算机或工作站、膝上型计算机或平板计算机、或游戏机等的计算环境中的图形处理通常需要大量复杂的操作。这些操作包括例如关于确保图像被适当并及时地被渲染以及关于手势识别的操作。在这些操作的情况下出现很多重要的问题。
附图说明
图1a用图形示出了根据本文所披露的技术的实施例的,用于执行对视频流的手势预处理以降低平台功耗的阶梯状的分布式流程。
图1b示出了根据实施例的图1a中的阶梯状的分布式流程的流程图。
图2a示出了根据本文所披露的技术的实施例的,被配置为用于执行对视频流的阶梯状的分布式手势预处理以降低平台功耗的系统的框图。
图2b示出了根据实施例的来自图2a所示系统的不同阶段的控制和数据流。
图2c示出了根据本文所披露的技术的实施例的,在给定特定的计算系统设置的情况下针对每个流程的典型CPU利用率,并由此表明通过使用对视频流的阶梯状的分布式手势预处理可具有的改善潜力。
图2d示出了根据本文所披露的技术的实施例的,用于肤色阈值检测以降低平台功耗的示例性方法。
图2e示出了根据本文所披露的技术的另一实施例的,用于肤色阈值检测以降低平台功耗的示例性方法。
图3a示出了根据本文所披露的技术的实施例的,被配置为用于执行对视频流的阶梯状的分布式手势预处理以降低平台功耗的计算系统的示例性使用事例。
图3b-e每个都示出了根据本文所披露的技术的实施例的用于相机及GP电路的各个示例性配置。
图4示出了根据本文所披露的技术的实施例的,被配置为用于执行对视频流的阶梯状的分布式手势预处理以降低平台功耗的计算系统的框图。
图5示出了根据本文所披露的技术的另一实施例的,被配置为用于执行对视频流的阶梯状的分布式手势预处理以降低平台功耗的计算系统的框图。
图6示出了根据本文所披露的技术的另一实施例的,被配置为用于执行对视频流的阶梯状的分布式手势预处理以降低平台功耗的计算系统的框图。
图7示出了根据本文所披露的技术的实施例的,可减少多少平台功耗的示例。
图8示出了根据本文所披露的技术的另一实施例的,被配置为用于执行对视频流的阶梯状的分布式手势预处理以降低平台功耗的应用程序接口(API)的框图。
图9a-b每个都示出了根据本文所披露的技术的实施例的,用于控制计算机系统的手势视频处理系统视野内的示例性标记区域。
图9c示出了根据本文所披露的技术的实施例的,用于对目标存在的标记的检测阈值的方法。
图10a-f示出了根据本文所披露的技术的实施例的,可在控制计算系统中使用的示例性手势。
图11a-f示出了根据本文所披露的技术的实施例的,手势视频处理系统如何对视野内部的给定手势针对六轴移动机而进行分析。
图12示出了根据本文所披露的技术的实施例的用于分析手势视频的方法。
图13示出了根据本文所披露的技术的实施例配置的媒体系统。
图14示出了根据本文所披露的技术的实施例配置的移动计算系统。
具体实施方式
所披露的技术用于通过采用阶梯状的及分布式管线来处理视频流以减少平台功率,其中选择性地执行CPU密集型处理。根据一些实施例,所述技术特别适用于对视频流的基于手部的导航手势的高效处理。所述流程的阶梯状的及分布式本质允许在图像处理之前将图像数据从给定的相机传输至存储器所需的功率减少。在一个示例性事例中,例如,所述技术在用户计算系统中实现,其中初始阈值检测(图像扰动)以及可选的用户存在(手部图像)处理组件靠近所述系统的相机或在所述相机内部,并且所述相机位于系统的主显示器内部或者靠近所述显示器。在一些实施例中,为了进一步帮助减少功耗,多个处理阶段中的至少一些之间的位于标记区域外部的图像处理及像素信息传达被消除或以其它方式被抑制。所述标记区域可以是给定视野的子集,并且在一些示例性事例中,所述标记区域与鼠标垫或指定的桌面区或用户输入设备(例如,键盘)对齐,其中所述标记区域由鼠标垫、桌面区、输入设备的周边(perimeter)进行界定。为了进一步节省处理功率,其中所述标记区域由所述鼠标垫、桌面区、输入设备的周边进行界定。为了进一步节省处理功率,由所述系统评估的多个像素可被限定在所述标记区域的子集内。在其它示例中,所述标记区域为给定视野的用户可配置子集。计算系统可以是例如具有在系统内部和/或外部的显示器和相机的任何移动或固定的计算机系统。
总体概述
如上所述,在图像处理情景中,尤其是关于手势识别,出现了很多重要的问题。例如,执行典型的2D及3D视频图像处理以用于手势识别的工作负荷消耗了相当大的输入/输出(I/O)功率,并使中央处理单元(CPU)利用率达和平台散热设计功率(有时被称为TDP)预算到最大。在以下应用中这些问题更为恶化:相机一直开启并提供图像以供处理,并且因此即便在可视图像内没有发生任何相关情况仍然耗电。例如,捕获图像信息并将其推送至CPU以进行处理很容易地消耗超过10瓦的功率,即便是对于简单的手势或其它在运算上简单的任务。大部分图像处理工作负荷通常涉及在计算上更加复杂的任务,并在或接近最大可用视频处理功率进行操作,其天然地受到CPU利用率及功率预算的限制。因此,图像处理应用可能消耗全部可用的CPU周期,不给其它应用留下可用的CPU处理能力或留下不足的CPU处理能力。相机本身的功率是在图像处理之前将图像数据从相机传输至存储器所需的视频捕获功率(包括平台控制器集线器、CPU及存储器功率)的相对小的部分。图像处理算法有效地受这些因素本身的自我限制,并且如果其可用则将消耗更多的功率。例如,典型算法帧速率自限制为每秒15帧(FPS),当使用更高的FPS时则获得更佳的识别。因此,视频图像处理可能消耗最大平台功率,即便是在并无关注像(例如,手势等)要被分析时。
因此,并且根据本文所披露的技术的实施例,披露了用于针对处理视频流来降低平台功耗的技术。虽然所述技术可用于处理任何类型的视频内容,但根据一些实施例,所述技术特别适用于对视频流的基于手部的导航手势的高效处理。本文也提供了一些示例性手部手势。所述技术可以以阶梯状的及分布式的方式实现,从而可显著降低在图像处理之前将图像数据从给定相机传输至存储器所需的功率。在一个示例性事例中,例如,所述技术在用户计算机系统中实现,其中,预处理组件系靠近系统的相机或位于系统的相机内部,而相机位于系统的主显示器内部或靠近所述显示器。计算机系统可以是例如膝上型计算机或笔记本计算机(其中显示器为盖型显示器)、或是台式计算机或工作站计算机或游戏机(其中显示器为外部显示器)、或是平板计算机或智能手机(其中显示器为计算机系统的用户接口及壳体的内部部分)。显示器可以是例如LCD或CRT、或触摸屏显示器,并且可与计算装置(例如,平板计算机、膝上型计算机、移动电话)集成或位于计算装置(例如,台式计算机、膝上型计算机或平板计算机)的外部。所述相机可以是例如单个2D相机或网络摄影机,尽管可以使用任何适当的相机技术,(这包括3D相机或所谓的立体相机对),并且可与计算装置和/或显示器集成或在计算装置和/或显示器外部。
根据一个示例性实施例,预处理组件包括阈值检测阶段(stage)、目标存在阶段、细分阶段、手部解析器阶段以及手势识别阶段。所述阈值检测阶段通常被配置为确定视频帧是否为有效地空。如果所述帧并非空或者已经以有意义的方式从上一帧发生改变,则处理过渡至目标存在阶段,该阶段被配置为找出目标像素色彩,特别是其色彩与肤色的特性相匹配的像素。如果找到的足够多的肤色像素以提示可能存在手指,则处理过渡至细分阶段,该阶段被配置为将关注像素与非关注像素进行分离,并且因而该阶段可以作为自适应性肤色检测阶段(肤色/非肤色边缘检测)。在一个示例性配置中,该阶段将彩色视频帧变换成可被编码为单色或灰度图像的斑块图像(image of blobs)。斑块用于表示肤色像素的区。根据一些示例性实施例,该阶段还被配置为使用侵蚀及膨胀变形方法来校正相机噪声及灯光差异,并平滑这些斑块。
所述手部解析器阶段被配置为对由细分阶段所产生的斑块数据执行空间解释,并尝试将斑块数据映射至人体解剖几何。根据实施例,相关性选择很大程度上取决于与执行导航手势的人的相机视角相关的使用事例及假设。根据情境,有时只需要边缘数据,有时需要填充的斑块数据,并且有时需要有关节手模型。如将理解的,取决于被成像的身体部分的复杂度,解剖学上特定的解析可能难以概括,并因而难以将其输入到固定功能的解决方案中。然而,在这种使用事例中,例如通过分析手部斑块的边缘,可在手部解析器阶段检测到手指。例如,手部解析器阶段可被配置为比较边缘的斜率以识别尖峰(指尖)的位置。根据一些示例性实施例,从手部斑块内可定位拇指及食指,而拇指及食指可用作针对手势识别任务的目标。根据一个示例性实施例,可由手部解析器阶段所检测的一个特定的示例性手势为基于椭圆形(ovoid)的手势,例如当用户的手的拇指与食指彼此接触,或类似的手势但末端打开使得拇指及食指不相接触。手势识别阶段被配置为对由手部解析器阶段所生成的解剖/手部数据执行时间解释。例如,如果所述手势识别阶段用于检测相当于鼠标的操作,则可寻找用户的指尖和/或手的位置变化。在一个这样的示例性事例中,基于椭圆形的手势可用于模仿鼠标移动以及点击与释放动作(单击、双击等)。这些手势可在标记区域内进行分析。
注意,这五个预处理阶段并非全部都需要靠近计算系统的相机或位于该相机内部。也并非全部都需要在计算系统的显示器内或靠近该显示器来实现功率节省。如根据本公开将理解的,例如,如果仅阈值检测阶段和目标存在阶段在接近显示器的相机传感器中实现,而其余阶段在CPU中实现(例如,作为将依次讨论的手势API的一部分),这一实施例仍将实现显著的功率节省。此外,不同的使用模型可指示不同的实施方式策略。例如,可能期望具有两个种模式操作:用于因特网导航(涉及相对低复杂度手势的更为随性的用途)的2D模型,以及用于更为密集的应用(例如,可涉及相对高复杂度手势的CAD操控、Photoshop)的3D模型。在这些实施例中,2D模型可完全在相机传感器中执行(代价是相机成本增大),而3D模型可在相机传感器中执行前两个或三个阶段,并随后将原始图像数据传送至手势API,以供由计算系统的CPU来执行手势处理步骤(或将原始图像数据传送至特定的软件应用上)。在2D及3D两个模型中,均可实现功率节省,特别是在相机的视野(FOV)内没有任何关注内容时。
在一些实施例中,各个阶梯状的及分布式预处理组件与计算机系统的逻辑连接被实现为手势应用程序接口(以下称作“手势API”)。根据一些实施例,手势API可被表现为例如扩展的通用串行总线人机接口(USB HID)类别的设备。一般而言,所述手势API有效地公开(expose)来自多个预处理阶段(阈值检测阶段、目标存在阶段、细分阶段、手部解析器阶段以及手势识别阶段)的信息,从而如果需要的话,这些信息可由计算系统的其它部件利用。在一些实施例中,所述API可进一步被编程为或以其它方式被配置为包括安全/隐私策略,以便避免来由自视频流的不安全信息访问计算系统的CPU或其它资源。
如根据本文公开将理解的,本文所提供的手势预处理视频流技术可用于任何数量的应用,包括改善基于手部手势的因特网导航以及基于手部手势的计算机导航。所述技术能够应用的一个特定这种应用为在约半米距离处使用2D相机的无标记手势识别。然而,如果需要的话,该技术可应用于包括基于3D的应用的许多其它应用。许多实用模式将根据本公开而显而易见,例如在桌上或用户的膝上或公园长椅上的笔记本计算机或上网本,在家或办公室的具有一个或多个外部显示器的台式计算机或笔记本计算机或上网本,在工作/小隔间环境中的台式计算机或笔记本计算机或上网本,在咖啡厅桌台上的笔记本计算机或上网本,在会议室桌面上的笔记本计算机或上网本,在飞机托盘上的笔记本计算机或上网本,以及网吧(例如,具有一个或多个外部显示器的台式计算机),等等。
如将根据本公开进一步理解的,用于在计算系统内的视频处理任务的功耗理想上应当与对来自计算系统的相机传感器的原始图像数据的进行抽取的功耗级别相当。换句话说,原始图像数据消耗极低的电力,确定图像阈值消耗的电力递增,检测存在则消耗更多的电力等。为此,根据实施例,预处理组件有效地实施了阶梯状的或累进式序列的操作,其中在该过程中的各个阶段消耗递增的电力以在该视频流的图像内产生更高级别的相关信息或意义。然而,需要注意,一些实施例可能具有一些中间阶段,其比后续阶段使用更多电力,并且本公开并非旨在局限于展示了任何特定功耗过程的阶段。例如,在一些实施例中,细分阶段在运算上比其它四个阶段的组合更为密集。总的来说,预处理组件可以共同地并且有效地分析原始(未经压缩的)视频流或该视频流的子集,以确定在该视频流的图像内的意义或相关性。所述预处理组件可在例如硬件(例如,寄存器传输语言例如Verilog或VHDL、或其它门极级逻辑或特制半导体)、或软件/固件(例如,在微控制器中执行的微码)中实现。
系统架构
图1a用图形示出了根据本文所披露的技术的实施例的,用于执行对视频流的手势预处理以降低平台功耗的阶梯状的分布式流程。由图可知,可在分布式性能基元(primitive)与计算系统的CPU之间有效地划分为五个不同的数据抽取层级。这些层级包括原始数据、检测阈值(thresholding)、存在、命令以及识别。由图进一步可知,与这些数据抽取的执行层级中的每一个相关联的处理可在(或接近)相机中、或在图形处理单元(GPU)硬件加速中、或在CPU上执行的应用软件中执行。
原始数据可以是例如编码的视频流或原始图像流。原始数据通常是指未经压缩的图像数据,然而编码的视频流通常已被压缩。压缩算法通常用于使大量数据适于通过低带宽通信信道,并且这通常是在相机传感器硅芯片内完成的。数据压缩通常降低图像的保真度并使得图像处理更加困难。在检测阈值层级,可完成检测阈值以检测图像中的扰动,以便粗略地识别用户动作的存在。例如,这种粗略的识别将检测从没有用户存在的数据帧流到有用户存在的数据帧流的过渡,如由用户的移动(视频内容)和/或用户的语音(音频内容)所指示的。由这一示例性实施例可知,原始数据层级和检测阈值层级中的每一个层级均可在相机内或接近相机进行处理。
一旦在检测阈值层级做出这种粗略的识别,则可在存在层级识别内容中特定用户特征的存在。例如,所述特定用户特征可包括用户的脸部和/或手部。由更进一步参考图1a中描绘的示例性实施例可知,在某些情况下,这一特定层级的处理可在相机内或接近相机执行,或者在其它情况下由GPU执行为加速的处理,这取决于所涉及的图像分析的复杂度(例如,脸部分析可比手部分析更为复杂)。
一旦对存在于内容流中的特定用户特征做出精准识别,则通常在命令层级可针对做出的手势而评估所述用户特征。例如,通常可针对命令状的手势(例如打手势或转头)来评估脸部和/或手部动作。由进一步参考图1a描绘的示例性实施例可知,这一特定层级的处理可由GPU执行为加速的处理。在一些情况下,GPU可例如与CPU协同放置,或可经由总线结构可操作地耦合至CPU。在后一种情况中,GPU可与CPU位于同一主板上,或可在该主板外部(例如,在可操作地耦合至主板的专用图形处理卡上,或经由通信端口可操作地耦合至计算系统的外部图形处理设备)。
一旦识别出命令状的手势,则可在识别层级针对特定指令而评估该手势。所述命令可以是例如用于导引用户正在执行的在线购物流程的用户导航命令。例如,关于视频内容,基于脸部的手势可服从于脸部识别,和/或基于手部的手势可服从于分析以识别符合美式手语(American SignLanguage,ASL)的手势,从而识别给定的指令。如进一步参考图1a描绘的示例性实施例可知,这一特定层级的处理可由在CPU上执行的应用软件来执行。
图1b示出了根据实施例的图1a中的阶梯状的分布式流程的流程图。由这一示例性实施例可知,视频相机用于在给定的计算机设置上生成用户手部动作的原始图像数据。在其它实施例中,待处理的视频内容可包括用户的脸部动作。根据本文所披露的可以理解,与内容的类型无关,本文所提供的用于预处理媒体内容的阶梯状的及分布式技术可以类似方式等同地应用。
流程开始于从传感器接收原始图像数据流,所述传感器可包括一个或多个相机。如果使用多于一个相机,如本文所讨论的,则每个视频流可相应地被处理。在检测阈值层级,分析视频流以检测视频流中的扰动。在一个示例性实施例中,如果当前视频帧与前一视频帧的差异大于10%,则可发出检测信号。阈值可从一个实施例中到下一个实施例是不同的(例如,5%或以上,或50%或以上等),并且可被设定为如所期望的给定因素,例如针对给定计算系统(使用事例)设置所观察的特定环境,以及对所述环境/系统的变化所期望的敏感程度。如果未超过预先确定的粗阈值,则流程继续接收并监视原始图像数据。然而,如果超过了所述粗阈值,则所述流程在存在层级继续检测图像中的用户手部。在一些实施例中,如之前所解释的,在检测阈值层级和存在层级的预处理可在相机电路中执行,或可以在专用电路中执行,该专用电路被配置为可接近相机设置并在相对短距离上(例如,少于0.1米,例如0.05米或以下,或经由总线结构或其它合适的通信端口直接耦合到相机壳体)可操作地与所述相机耦合,使得IO功率相对于如果将来自相机的全部图像内容提供给在CPU上执行的应用软件所使用的IO功率是减少的。如将会了解的,本文公开并非旨在局限于在所述专用电路与所述给定相机传感器之间的任何特定距离的范围;相反,本文所提出的使用阶梯状的分布式预处理方案的概念可在任何数量的配置中实现。如果图像并不包括任何可被识别为用户手部的内容,则流程继续接收并监视原始图像数据。
然而,如果图像确实包括可被识别为用户手部的内容,则流程继续进行,或者另外朝向命令层级继续,以将所成像的手部映射至与已知手部手势相关联的有关节的手部的模型。在一些这种示例性实施例中,将所成像的手部与多个这种模型进行比较,并且针对每个模式确定相似度分数。所述流程在命令层级继续,以确定所述图像是否包括做出已知手势的手部。在一些这样的情况下,例如,产生最高相似度分数的模型可被识别为匹配。在其它情况下,所遇到的具有超过预设阈值的相似度分数的第一模型可被识别为匹配(从而并非需要测试全部模模型)。如之前所解释的,在一些实施例中,该命令层级预处理可被执行为GPU加速的处理。如果在命令层级确定图像不包括做出已知手势的手部,则流程返回存在层级,以便继续对视频流继续分析来确定图像中是否存在用户手部。根据本公开将会理解的是,命令层级可将其发现(例如,无斑块数据)通知存在层级,使得存在层级的处理将以经训练的方式进行。
然而,如果在命令层级确定图像确实包括做出已知手势的手部,则流程继续将手势数据传递给应用软件,以用于在识别层级进行处理。如之前所解释的,所述处理层级倾向于是CPU密集型的。在这一示例性中需进一步注意的是,手势数据经由USB HID API(手势API)向上传递通过堆栈。该API将依次参考图8进行讨论。如进一步将理解的,命令层级的确定可足以确切地识别已知的手部手势,并且无需执行随后的在基于CPU的识别层级的处理,从而更进一步节省关于基于CPU的功耗。
因此,通过在相机内或相机附近执行至少一些程度的对视频流的手势预处理,实质上能够减少功耗,这对移动计算设备(例如,膝上型计算机、上网本、平板计算机、智能手机等)是特别有用的。这是因为,总体上,大部分视频处理涉及可在被配置为并被放置用于减少IO动作及CPU工作负荷的分布式电路中执行的相对低复杂度的处理,而涉及较高复杂度的处理的其余部分可作为原始数据而传递至GPU以进行加速的处理和/或传递至CPU中的驱动程序(应用软件)以进行处理。从这个意义上来说,本文所提供的技术通过使用在相机及GPU内(或附近)运行的专用分布式性能基元或硬件功能来减少对在通用CPU核心中执行的基于软件的算法的需要。
图2a示出了根据本文所披露的技术的实施例的,被配置为用于执行对视频流的阶梯状的分布式手势预处理以降低平台功耗的系统的框图。由图可知,所述系统为被配置有多个分布式组件(在本示例性事例中为5个)的手势处理管线。在这一示例性实施例中,所述组件中的两个,即阈值检测阶段和目标存在阶段,被实现为位于相机内部或其附近的手势预处理(GP)电路。如将根据本公开理解的是,如果GP电路实际上直接集成在相机电路内或离相机足够接近,则所述GP电路可被认为是与所述相机协同放置,只要所述GP电路足够接近相机传感器从而减少IO功率和CPU处理时间,或者比CPU更靠近相机。另一组件,即细分阶段为GPU加速的。另外两个组件,即手部解析器阶段及手势识别阶段在计算系统的CPU执行。在这一示例性实施例中,这两个阶段可用于基于椭圆形的手势处理,如将依次参考图9a至12进行讨论的。根据本公开,关于这一阶梯状的及分布式架构的变型是显而易见的,其中,任何这种阶梯状的及分布式架构允许对活动和空闲的功率情境进行优化。具体来说,与相机及GPU协同放置的视频处理组件是有效地更具固定功能的,因而与传统的CPU相比,解决相同计算问题需要更少的功率。
如本文所使用的,“GP电路”是被配置为执行图2a所示五个阶段中的一个或多个阶段的集成电路,所述集成电路在提供待分析的视频流的相机内实现,或者所述集成电路被实现为专用电路,如上所述的,该专用电路被配置为通过相对短的连接而与所述相机直接耦合(例如,以便与将全部视频从相机传递至基于CPU的驱动程序的传统技术相比,可减少IO功耗及CPU周期)。协同放置的GP电路及相机中的每一个均可集成在显示器内部,或在显示器外部,或一些适合的组合。例如,在一些特定的示例性实施例中,所述GP电路可在移动计算设备(例如,膝上型计算机、上网本等)的铰链显示器盖内实现并且接近同样嵌入在该盖内的相机电路。在其它这种基于盖的显示器事例中,所述GP电路可直接在嵌入式相机其自身内实现。在其它示例性事例中,所述GP电路可直接在外部相机内实现,所述相机被配置为可例如与计算系统(例如,台式计算机、膝上型计算机等)的基于盖的或外部显示器卡接(clip)或以其它方式可操作地耦合。在其它示例性事例中,所述GP电路可在分立封装中实现,并被配置为可操作地与这样的外部相机耦合。在其它示例中,所述GP电路可嵌入到外部显示器的壳体内并接近同样嵌入到所述显示器内的相机电路。在其它这种示例性外部显示器的事例中,所述GP电路可直接在嵌入式相机其自身内实现。如将根据本公开将理解的,GP电路与相机电路间之间的集成或靠近程度越高,则可实现相机与GP电路图像处理子系统之间的IO功率的减少越多。
阈值检测阶段是所述管线中的第一阶段,并被配置为粗略地确定视频帧是否为有效空。如果当前视频帧与前一帧足够相似,则该帧被视为是空的。根据一个这种实施例,这例如可使用实现了针对每个帧而将亮度通道进行求和和比较的简单算法的低功耗硅芯片来实现。如果视频使用RGB色彩空间,则绿色成分在其位置中被取代,这是因为YUV像素的大部分亮度成分被包含在RGB像素的绿成分中。如果当前与之前之间的变化量高于给定的阈值,则这将触发移动至下个阶段。否则,空帧不被传递至下个阶段,这在用户不做手势时有助于管理电力。在一些实施例中,阈值检测阶段只检测在标记区域内的像素,所述标记区域为成像系统的总视野的子集,而在所述标记区域外的像素被关闭或被以其它方式忽略。所述标记区域例如可由用户的键盘或鼠标垫或在视野内的一些其它可检测区(其为供用户提供手部手势的逻辑位置)的周边加以界定。在一些这样的实施例中,用户区可以是用户可配置的(例如,通过用给定系统的视野来划定给定区,并调整/配置所述相机电路以通过关闭在所述区域外部的像素而在特定处理阶段期间只成像该被划定的区域)。在又一实施例中,只有在作为标记区域的子集的检测阈值事件区域内的像素可被阈值检测阶段分析。如将根据本公开理解的是,只允许由阈值检测阶段分析相当小的检测区节省了处理功,并可成为对用户存在的可靠预测器,尤其是给定的基于键盘的标记区域或在预期手势期间被用户的手直觉地突破(breach)的其它这种区。如将进一步理解,使用横跨基于用户键盘的标记区域的检测阈值事件区域可用于进一步减少处理功率,并用于进一步消除伪正阈值事件(例如,当用户可能突破基于键盘的标记区域的掌托(palm rest)并不是要做出手势时,则用户将不太可能突破跨A-GH-L键的检测阈值事件区域或基于键盘的标记区域,除非意图进入做手势周期)。
根据实施例,目标存在阶段被配置为实现用于找出目标像素色彩的相对低复杂度的方法。在某些事例中,这一阶段寻找其色彩与肤色特性匹配的像素。与肤色相匹配可在例如被配置为将RGB(或YUV)数据流转换成HSV像素的硅芯片中执行。人类肤色在色度(hue)中占据相当有限范围,这允许快速、低功耗的固定功能转换和比较。需要注意的是,目标存在阶段不需要针对前一帧的任何数据储存或信息。如果在扫描线中找到足够的肤色像素以表示可能存在一根手指,则处理过渡至下个阶段。否则,没有目标存在的帧或数量不足的肤色像素将不被传递至下个阶段,这在用户不执行手势时有助于管理电力。正如之前关于阈值检测阶段所解释的,目标存在阶段可被配置为仅分析在指定标记区域(例如,基于键盘的标记区域)内的像素或所述标记区域的检测阈值事件区域(例如A-GH-L键或基于键盘的标记区域)内的像素,并且该讨论在此同样适用。在其它实施例中,如将依次进行讨论的,可采用简化的肤色检测流程。
根据实施例,细分阶段被配置为接收来自目标存在阶段的目标存在帧,并区分关注像素与非关注像素。在一个示例性事例中,这一阶段实现自适应性肤色检测算法,该算法将彩色视频帧转换成可被编码成单色或灰度图像的斑块图像。例如,以灰度图像为例,非零像素可用于表示斑块的像素,而黑像素指示非斑块像素。事实上,斑块用于表示肤色像素的区。自适应性肤色检测基于帧数据而使皮肤色度的下限及上限适应。除了使用侵蚀及膨胀变形法来平滑对象外,这也消除了因相机噪声及灯光所引起的分散像素。已知的,变形法是基于形状而处理数字图像的数学方法。膨胀变形通常是指扩大或填充目标对象的操作。侵蚀变形涉及类似方法,但其在图像背景而不是对象上进行操作。如将根据本公开理解的,许多GPU具有用于细分阶段的优化实施方式的指令。
根据实施例,手部解析器阶段被配置为执行对斑块数据的空间解释。在一个特定示例性事例中,根据所评估的目标手势,该阶段试图将斑块数据映射至人体解剖几何,例如人手模型或人体模型。如将根据本公开理解的,手部解析器阶段试图将斑块数据与人体部分/姿势相关联的方式很大程度上取决于使用事例和相机的对人的视角周围的假设。斑块被解释的方式也有差异。在一些示例性情况中,只利用边缘可足以确定人体几何。在其它情形中,填充的斑块更为合适。在一些事例中,来自细分阶段的斑块数据可需要额外处理以去除对正确解析斑块有害的斑块上的可视伪影,手部解析器阶段可被配置为去除这些伪影。在被配置为观看用户的手部的相机的事例中,可通过分析手部斑块的边缘来检测手指。比较在不同边缘取样点处的斜率,可表示尖峰(例如,指尖)的位置。对这些尖峰状的斑块(就各个像素的间距及斜率而言)的进一步分析可揭示所述指尖被附接到指干。如果需要,这一阶段可尝试明确示出整个人手,包括全部五个指尖的位置。在一些情况下,检测单个手指就足够了。从这个意义上讲,使用模型确定所需分析的量。如前文所指示的,解剖上特定的解析(例如,手部解析)难以一般化,并且因此难以将其置入固定功能硅芯片中。因此,在一些实施例中,手部解析器阶段由CPU执行。根据示例性实施例,可由手部解析器阶段检测的一个特定示例性手部手势是基于椭圆形的手势,例如当用户的手的拇指与食指接触结合在一起(类似OK的手势,但另外三个手指更加攒在一起位于食指后方),或者是类似的手势但末端打开使得拇指与食指不相接触。图10a-f及11a-f示出了这种闭合的及部分闭合的基于椭圆形的手势的事例,并将依次讨论。
根据实施例,手势识别阶段被配置为执行对解剖/手部数据(从手部解析器阶段接收到的斑块数据)的时间解释。例如,如果所述阶段用于分析鼠标或触摸板的操作,则可寻找一个或多个指尖位置的改变。在一个这种示例性事例中,基于椭圆形的手部手势可用于模拟鼠标移动以及点击与释放动作(单击、双击等),如将参考图10a-f及11a-f描述。如图9a或9b所示,这些手势可在标记区域内进行分析。在一些情况下,原始相机图像中的移动模糊可使得手部解析器阶段难以明确示出人体解剖结构。在这些情况下,手势识别阶段可利用关于使用事例的假设来改善手势解释的可靠性。例如,如果手部解析器阶段在一个帧中成功地检测到一根完整的手指,但在下个帧中只能确定指尖的位置(例如,无法确认指尖附接到“合适的”手指),则所述手势识别阶段可假设下个帧中的手指为同一根手指。
总的来说,细分阶段、手部解析器阶段以及手势识别阶段可被配置为向阈值检测阶段或目标存在阶段发送反馈。例如,并且可由图2a的示例性实施例可知,如果手部解析器阶段实际上找到可能为一只手的一个足够大的斑块,则可发送信号给阈值检测阶段,以将前一帧的亮度/绿计数器重置为零,从而迫使下一帧指示该帧为非空帧。例如,在一个特定的示例性实施例中,这种类型的信号发送可通过在GP电路的阈值检测阶段硅芯片上的单个引脚/导线来实现,其可从驱动程序进行控制。另外,根据另一实施例,也可通过USB来完成。这有助于防止下述情形:非移动的手部使得阈值检测阶段认为该手为静态背景的一部分。另一示例性反馈回路情形是当检测到一个足够大的斑块时(如图2a中所描绘的并被标记为目标存在-数据流),迫使系统将数据从相机直接发送至细分阶段,而不将数据发送至阈值检测阶段及目标存在阶段。这一类型的行为可通过移除不必要的阈值相关的处理而改善功率。然而,需要注意的是,虽然这种反馈机制可提供进一步的优化程度,但并非在所有实施例中都是必需的。例如,如果这些技术的实施方式是成本过于昂贵的,则例如替代的解决方案是每一两秒退回到目标存在阶段以检验目标是否连续存在。在这种情况下,为此付出的代价是丢失一个价值为手势命令数据的帧。
图2b描述了根据实施例的来自图2a的系统的不同阶段的控制和数据流。针对根据一个示例性实施例所提出的划分,GP电路可被配置有阈值检测阶段及目标存在阶段,并可进一步被配置为用于控制数据复用并决定是否传递上行流(用于细分)以唤醒该系统。根据一些这种实施例,利用这种应需传递数据的方式,可实现平台功率的显著节省,并且仅在需要被唤醒时才唤醒计算系统。
由图可知,来自起始帧的原始数据被提供给阈值状态,阈值状态被配置为针对关注区域,检测给定帧与前一帧相比的变化。如果不满足变化阈值,则可减少FPS,并且流程继续以监视帧的原始数据。根据一些实施例,如果满足所述阈值,则原始数据被传递至目标存在状态,目标存在状态被配置为在关注色度范围内寻找目标存在。可例如使用由各个样本所收集的实验性数据来确定色度范围。在其它实施例中,色度范围可被确定为测量给定用户的肤色的初始设置或调整流程的一部分。根据本公开(例如,图2d及2e),许多其它示例性肤色检测流程将是显而易见的。在任何这样的情况下,如果没找到合适的目标,则控制可被向回提供给阈值状态。在一些实施例中,阈值状态及目标存在状态可有效地组合成一个状态。否则,如上所述如果以给定帧速率(例如,默认速率或在该控制回路中改善的速率)找到合适的目标,则控制被传递给细分处理状态,细分处理状态执行自适应性肤色检测。还需要注意的是,如上所述,在一些实施例中,在一些情况下例如当检测到一个足够大的斑块时(如图2b中所描绘的并被标记为在处理状态期间的数据/控制流),系统可将原始数据从相机直接发送给细分处理状态,而无需将原始数据传递至阈值状态及目标存在状态。
在任何这样的情况下,细分处理状态被配置为执行自适应性肤色检测以将图像细分。在一些实施例中,使用变形法可消除噪声并平滑图像。自适应性皮肤图像信息被提供给手部解析器状态,手部解析器状态被配置为将斑块数据映射至人体解剖几何,在该示例中例如为人手模型。如果手部解析器状态无法确认给定斑块与手部相关联,则控制被回送给目标存在状态(未检测到斑块)。然而,如果手部解析器状态确认给定斑块与手部相关联,则控制被递给手势识别状态(找到斑块)。然后,手势识别状态针对特定命令来分析手部数据,例如由用户提供的导航命令。当对该分析得出结论时,针对该帧的流程完成,并且接着可相应地控制在计算系统上执行的给定应用程序。
图2c示出了可在GP电路上实现的五个流程中的每一个的典型CPU利用率,其中给定特定设置包括2-2.66GHz CPU以及提供640x480像素帧视频数据的USB相机。由图可知,细分占用了最大的利用率并具有较少的迭代重复变化,其是可被加速的良好候选者。根据实施例,GPU加速的自适应性肤色检测算法将有助于改善系统的整体性能及功率效率。由于工作负荷可在CPU/GPU之间共享,这也将确保数据帧被处理而没有任何帧丢弃。典型最差情况的手部解析器利用率出现在当找到较大的并具有较长周长的斑块时。根据一些示例性实施例,如本文所描述的将处理进行划分(例如,其中,阈值检测及目标存分布在USB相机内或在USB相机附近,并且细分是经GPU加速的)后,总CPU利用率将低于10%。
简化的肤色阈值检测
如将根据本公开理解的,多个改进可用于进一步减少功耗。例如,一个示例性实施例允许简化的肤色阈值检测以减少在目标存在阶段的预处理期间的平台功率。通常来说,肤色检测通常在非RGB色彩空间内进行(例如,HSV、YUV、或YCbCr),并且因此需要在这些色彩空间之间的色彩空间转换。根据实施例,人类肤色检测占用色度的有限的范围,这允许快速、低功耗的固定功能转换和比较。通常来说,如果在扫描线内找到足够的肤色有色像素以表示可能存在手指或手,则处理可过渡至下个阶段,即细分阶段。然而,需要注意的是,在初始检测阈值阶段(在由阈值检测阶段检测到扰动之后)肤色检测根本不需要色彩空间转换或任何像素数据增强。相反,并且根据实施例,相机传感器的原始RGB数据可通过ADD函数运算,从而可独立地将在标记区域内的期望区域/像素扫描线/等像素流的R、G及B值进行求和,并且系统可进一步被配置为随时间来检测求和后的色彩值(积分)的粗略差异。例如,当这些求和后的值中出现某个百分比的变化时(这表示肤色与背景-键盘色的比值发生变化),则阈值事件已发生,并且流程可过渡至下个阶段(细分阶段)。与之前所讨论的使用色度的肤色检测技术类似,使用RGB肤色检测的该技术不需要来自前一视频图像帧的任何数据储存或信息,原因在于处理后的视频流数据可被丢弃。单个寄存器可用于储存阈值(例如,扫描线中的肤色百分比或比值必须被超过以触发检测阈值事件)。因此,可通过比较肤色色值与背景色值(例如,键盘颜色)来实现针对该阈值评估的简单性及功率减少。这种方式的简单在于涉及比较肤色与非肤色,而非比较非肤色与某些任意色彩的差异。
图2d示出了根据实施例的用于肤色阈值检测以降低平台功耗的示例性方法。如将根据本公开将理解的,能够实现功耗的减少,原因在于所述算法能够容易地在例如相机(或GP电路)内的RTL或软件中实现,以便不涉及CPU处理周期。由图可知,在这一示例性实施例中,使用在单个像素扫描线(例如,跨键盘的A-GH-L键)内的肤色检测而执行目标存在的检测阈值,而目标的评估可在整个标记区域(例如,键盘)上执行。所述方法包括将阈值事件区域(例如,沿着A-GH-L键或在其上的扫描线或部分扫描线或像素)内的像素流的R、G以及B值进行求和。
所述方法继续,以确定是否已检测到检测阈值事件区域内的肤色扰动(通过将求和后的R-G-B值与给定阈值进行比较)。如果所述比较指示未检测到肤色扰动,则所述流程继续以寻找针对每一个连续的帧的检测阈值事件区域的有限像素区内的一个肤色扰动。然而,如果已在给定帧的检测阈值事件区域内检测到肤色扰动,则所述方法继续来发送指示目标存在的中断,并执行手势预处理(在一些实施例中,其可包括通过细分阶段、手部解析器阶段及手势识别阶段的处理)和/或任何其它手势处理任务。针对每一个后续帧,所述方法包括使用如前所述的基于色度的技术来确定标记区域是否存在肤色像素,并且如果存在,则继续对帧的处理。响应于在给定帧内未检测到肤色,所述方法继续来发送指示目标不再存在的中断,并停止任何进一步的手势预处理和/或手势处理任务。此时,所述方法通过将检测阈值事件区域的R-G-B值求和以检查肤色与背景键盘颜色的比值是否发生变化,而有效地重复并继续针对肤色扰动而监视后续帧的检测阈值事件区域。
图2e示出了根据另一实施例的用于肤色阈值检测以降低平台功耗的示例性方法。能进一步改善利用参考图2d所讨论的用基于RGB的肤色检测算法所实现的功率节省。具体而言,肤色的色度(及亮度)由绿色主要控制。因此,来自扫描线(或其它适合的检测阈值事件区域)的对绿像素的测试可用于更快速且更加功率有效地提供相同信息。无需色彩空间转换或肤色映射/比较,而仅需要操作绿像素。因此,色彩空间信息可减少三分之二(例如,相机可关断(power down)红像素和蓝像素)。如之前所提到的,可选择键盘颜色以强调肤色与键盘的色差。因此,通过将来自单色(绿色)视频流内的原始像素数据进行求和,可实现简化的肤色阈值检测,以在手势识别预处理期间降低平台功耗。要注意的是,在一些情况下,色彩空间信息可减少75%,原因在于每个像素通常被设计有Rx1、Gx2以及Bx1传感器,因此相机供应商可留下Gx1操作而关断像素Rx1、Gx1、Bx1中的其它色彩传感器。因此,在本文所披露的技术的一些实施例中,阈值检测及肤色检测(阈值检测阶段及目标存在阶段)可减少为单个的求和/检测功能,该单个的求和/检测功能作用在来自检测阈值事件区域(例如,单个/部分扫描线或单个像素)内的有限像素集合的绿色像素数据的极低频宽视频流上。如虚线框所述,图2d中示出了这一替代实施例。当检测到肤色时,相机可重新使未使用的像素及像素-色彩-传感器通电,使得系统可过渡至下个阶段或处理(例如,细分阶段)。根据一些实施例,这种初级肤色检测功能可被扩展以例如使用手部手势来提供低功率用户唤醒事件。在一个这种实施例中,当处于搁置/待机或其它低功率模式中时,整个计算机系统中的全部其它系统可被关断,而极低功耗肤色检测阈值算法可被配置为等候来自用户的手部手势的唤醒事件。给定所述用户的对从待机唤醒的时间预期,相机的(或GP电路的)检测阈值决策可以极慢每秒帧数(FPS)图像(例如,1-4FPS,相比于相机传感器中通常可用的30+FPS)做出,这将更进一步减少功率。
如之前参考图2d的示例性方法所说明的,图2e中的方法也能被实现为例如在相机(或GP电路)的RTL或软件内实现的算法。由图可知,在这一示例性实施例中,目标存在的检测阈值是使用在单个像素扫描线(例如,跨键盘的A-GH-L键)内的肤色检测来执行的,而对目标的评估可在整个标记区域(例如,键盘)上进行。所述方法包括仅将检测阈值事件区域内(例如,沿着A-GH-L键或在其上的扫描线或部分扫描线或像素)的像素流的绿像素值进行求和。所述方法继续来确定在所述检测阈值事件区域内是否检测到肤色扰动(通过将求和后的绿像素值与给定阈值进行比较)。如果所述比较指示未检测到肤色扰动,则所述流程继续以针对每个后续的帧而寻找检测阈值事件区域的有限像素区内的肤色扰动。然而,如果在给定帧的检测阈值事件区域内已检测到肤色扰动,则所述方法继续来发送指示目标存在的中断,并执行手势预处理(在一些实施例中,其可包括通过细分阶段、手部解析器阶段及手势识别阶段的处理)和/或任何其它手势处理任务。针对每个后续的帧,所述方法包括使用如前所述的基于色度的技术来确定标记区域是否存在肤色像素,并且如果存在,则继续对帧的处理。响应于在给定帧内未检测到肤色,所述方法继续来发送指示目标不再存在的中断,并停止任何进一步的手势预处理和/或手势处理任务。此时,所述方法通过仅将阈值事件区域内的绿像素值(而排除红和蓝像素)进行求和以检查肤色与背景键盘颜色的比值是否发生变化,而有效地重复并继续针对肤色扰动而监视后续帧的检测阈值事件区域。
示例性使用事例及系统配置
图3a示出了根据实施例的,被配置为用于执行对视频流的阶梯状的分布式手势预处理以降低平台功耗的计算系统的示例性使用事例。由图可知,用户正以常见或通常的方式坐在计算系统前方。本示例的计算系统呈现为具有外部显示器的台式布置,但也可以理解的是,其可以是任意适合的计算机系统,例如,使用基于盖的显示器的膝上型计算机或上网本或其它这样的移动计算设备,或使用外部显示器的移动计算设备,或触摸屏设备,例如平板计算机或智能手机。
在任何这些情况下,本示例性实施例的系统进一步被配置有相机及GP电路。相机可用于例如捕获用户手势,例如手部手势。在图3a所描绘的示例性事例中,相机及GP电路被嵌入到显示器顶部,以便提供这样的视野:包括用户手部将使用例如计算机系统的键盘、鼠标、触摸屏、或其它这样的输入设备而活动的区。然而,需要注意,给定如本文所描述的系统的手势解释能力,用户不需要实际上接触这些输入设备。相反,用户可仅在视野内的指定用户输入区内移动他或她的手部,以便如本文所描述的,使用基于手部的手势与计算机系统有效地通信。图3b-e示出了相机及GP电路的各个示例性布置。
图3b示出了示例性事例,其中GP电路被集成到或包含在相机的成像集成电路(硅芯片或其它)内,以通过消除相机传感器与图像处理功能中的至少一些之间的IO功率而进一步降低平台功率。在这一示例性事例中(以及图3c-3e所示的示例性事例),所述GP电路至少包括阈值检测电路及目标存在电路,并且如果需要的话,还可以包括本文所提供的手势预处理电路中的其它部分。图3c示出了另一示例性事例,其中相机及GP电路被彼此分离地实现,但仍彼此接近并通过相对短的通信总线而可操作地耦合,其中,在这一示例性实施例中该总线为USB总线。如将理解的,可使用任意数量的其它适合的通信端口及总线结构。图3d示出了另一示例性事例,其中,GP电路被集成到或包含在相机的成像集成电路内,并且所述相机被嵌入到显示器内。图3e示出了另一示例性事例,其中,相机被嵌入到显示器内,并且GP电路被配置成独立的装置,其被配置为可操作地与所述设备的USB端口耦合,以便提供对嵌入到其中的相机的访问。在如图3a-e所示的任何这种示例性事例中,所述显示器可以是例如外部显示器、触摸屏显示器、或基于盖的显示器。
图4示出了根据实施例的,被配置为用于执行对视频流的阶梯状的分布式手势预处理以降低平台功耗的计算系统的框图。由图可知,本实施例具有膝上型计算机的典型形状因子,并包括通过铰链可操作地耦合至显示器部分的基板部分。例如,示器可具有触屏能力,但也可以是LED显示器。通常,所示架构及功能中的大部分可利用所期望的传统或定制的技术来实现与对频内容的分阶段和布式手势预处理相关的架构及功能除外,后者根据本文所披露的技术的实施例来实现,并将依次进行描述。
在这一示例性事例中,GP电路被包含在显示器电路的传感器数据处理块中,传感器数据处理块通过相应的移动行业处理器接口相机串行接口(mobile industry processor interface-camera serial interface,MIPI-CSI)可操作地耦合至两个集成相机。一个相机聚焦在第一用户输入区以便捕获用户手势,而另一相机聚焦在第二用户输入区以便拍摄用户头部和脸部手势。如将理解的,手部GP电路被配置有阈值检测阶段及目标存在阶段,以用于用户手势的处理,并且头部脸部GP电路被配置有阈值检测阶段及目标存在阶段,以用于用户头部和/或脸部手势的处理。因此,在这一示例性事例中,GP电路可有效地分成两个姿势特定的块。在其它示例性实施例中,如果需要的话,一个相机可结合机械透镜组件使用,该机械透镜组件有效地允许单个相机能够捕获两个目标用户输入区。在这种情况下,GP电路可被实施为能够处理所涉及的各种手势类型中的每一个的单个块。
如将理解的,GP电路可以类似的方式分别针对手部及头部脸部而实现。如之前说明的,与解剖学目标无关,GP电路的阈值检测阶段可用利用门极级逻辑或其它特制半导体来实现,所述门极级逻辑或其它特制半导体被配置为例如将针对每一帧的亮度信道进行求和和比较,并且如果当前帧与前一帧的变化量高于给定阈值(例如,>3%变化,或>5%变化,或>10%变化),则可生成用户检测信号,从而触发将原始数据传递至目标存在阶段。否则,无变化帧或空帧有效地抑制这种检测信号,从而在无手势时间期间节电。以类似方式并与解剖学目标无关,目标存在阶段GP电路可用门极级逻辑或其它特制半导体来实现,所述门极级逻辑或其它特制半导体被配置为例如将RGB(或YUV)数据流扫描线转换成HSV像素,并将其中所表示的像素色度值与相对有限的肤色色度范围进行比较。在其它实施例中,目标存在阶段GP电路可用门极级逻辑或其它特制半导体来实现,所述门极级逻辑或其它特制半导体被配置为将像素值进行求和,如之前参考图2d-e所述。如果在扫描线中找到肤色像素以表示可能存在手指或脸部,则处理过渡至细分阶段。否则,不存在目标或肤色像素数量不足的帧不被发送至下个阶段或被抑制,以便在无手势时间期间节电。在其它实施例中,目标存在阶段可在GPU中实现,给定其功能的并行本质(例如,针对给定扫描线内的每个像素的对色度的并行分析)。然而,在这种情况下,如将理解的,将图像数据从相机传输至GPU通常具有更高的IO功率成本。尽管如此,使用GPU仍避免了在驱动程序层级处理图像数据所必须的相关联的CPU周期。
如有时所这样做的,在这一示例性实施例中的细分阶段与CPU协同放置,但如之前所述,其它实施例可利用与CPU通信的分离的GPU。根据一个示例性实施例,所述细分阶段被配置为将其接收到的彩色视频的每个帧变换成斑块图像,其中非零像素表示斑块像素,并且黑像素指示非斑块像素。在这种情况下,例如斑块可用于表示肤色像素的区。在这个意义上说,细分阶段适用于或另外更清晰地界定在给定帧内的基于肤色色度的斑块边界,从而有效地将给定图像的复杂度减少为二进制布置(斑块及非斑块)。这种基于扫描线的处理任务遵从并行处理,使得所述细分阶段成为GPU实施的理想候选者。
在其它实施例中,可以以类似于目标存在阶段的方式,在具有门极级逻辑或其它特制半导体的GP电路中实现所述细分阶段。然而,界定斑块数据的边界通常可需要处理更大量的扫描线,这可能增加目标存在阶段的复杂度。然而,可例如通过使用适合于目标解剖学特征及合理程度的插值的假设而抵消该复杂度。例如,假设做出和平手语的手是目标解剖学特征,则处理手图像的三或四条扫描线。第一扫描线示出例如横跨和平手语的“V”字型部分上部的非肤色像素(三组)及肤色像素(二组)的交替组。第二扫描线类似地示出例如横跨和平手语的V字型部分下部的非肤色像素(三组)及肤色像素(二组)的交替组,但两个肤色像素部分之间的非肤色像素部分的长度较短。第三扫描线可示出横跨手主体部分的非肤色像素(二组)及肤色像素(一组)的交替组,并且第四扫描线可示出横跨手腕部的非肤色像素(二组)及肤色像素(一组)的交替组,其中手主体部分的肤色像素组比手腕部的肤色像素组更长。因此,如果例如这些三或四条扫描线的特性可使用基于逻辑的比较加以确认,则可插值或以其它方式估计与介于中间的(intervening)扫描线相关联的手部数据,并可相应地分配整个肤色斑块的边界。如将理解的,类似的处理可用于检测全部闭合的椭圆形及部分闭合的椭圆形,例如如图10a-c及11a-f(全部闭合)及图10d-f(部分闭合)中的示例性手势所示出的。在一些这种实施例中,并且如将关于图9a-b所讨论的,图像处理可被约束到标记区域,例如用户的键盘(图9a)或鼠标垫(图9b),在这样的区域上很可能在计算机/因特网导航情境下做出这样的手势,其中由目标存在阶段处理的用于界定斑块数据边界的一个或多个扫描线,可在横向通过键盘中央的检测阈值均等区域处进行设定。
手部解析器阶段以及手势识别阶段可由基板中的CPU执行作为应用驱动程序的一部分,但如本文所描述的仅在被之前的阶段激活时。再一次,根据一些实施例,这一处理可交替地在GPU或甚至在GP电路中执行。为此,预处理功能的集成到GPU和/或GP电路的程度可基于例如成本效益分析,所述分析(一方面)平衡这一集成的费用/成本与(另一方面)功耗及CPU周期的节省。如将根据本公开将理解的,通过在所述GP电路中实现阈值检测阶段及目标存在阶段,在GPU中实现细分阶段,并且允许手部解析器阶段及手势识别阶段在CPU上执行,可实现以相对低成本的显著节省。进一步集成到所述GP电路的成本可能并不合理或不是所期望的,但本文所披露的并非旨在如此受限。
进一步参考图4,SRAM高速缓存存储器可用于储存与对视频的高效处理相关联的参数,并且可采用其它任何适合类型的存储器技术实施。例如,在一些实施例中,存储器可用于储存通常包括在由用户所提供的手势的帧内的坐标。这些坐标例如可基于实验分析随着时间建立和/或改善或可由用户配置。这些坐标例如也可根据在相机视野内的标记区域相对位置的改变而定期改善或以其它方式更新。在任何情况下,这些坐标可由所述GP电路(以及其它组件,如果需要的话)使用以有效地进一步减少图像处理负荷。在这个意义上,可分析视频流的子集。存储器也可包括与特定用户设置相关联的肤色范围。这一数据例如可基于实验分析随着时间建立和/或改善或可由用户配置。如将理解的,许多其它类型的信息及数据可储存在存储器中。
性能基元是可被提供以支持所述GP电路功能的可选组件,并且其可在硬件和/或软件中实现。适合于处理手势视频的性能基元的示例可以是例如矩阵乘法或求和模块。另一个示例性功能可以是将图像从空间域转换成频域以便于处理的傅里叶变换模块。在更通用的意义上,可在性能基元中实现由基于CPU的驱动程序处理所使用的任何图像处理工具,以辅助分布式预处理功能。可选的隐私和安全模块可被配置为提供保护免遭恶意行为,并可被实现为实施一个或多个安全策略,例如与可信任设备处理环境相关联的策略。例如,隐私和安全策略模块可实施诸如基于用户的策略(例如,一些用户可能不想启用相机)以及基于平台的策略(例如,只有可信任平台模块(TPM)设备可经由USB端口而连接至平台控制器集线器(PCH))等策略。
图4所示的其它显示器及基板组件可如通常完成的那样来实现或另外如期望的方式来实现。图5示出了根据另一实施例的,被配置为用于执行对视频流的阶梯状的分布式手势预处理以降低平台功耗的上网本计算系统的框图。由图可知,所示系统的显示器部分与图4所示的膝上型计算机系统的显示器部分类似,上述的相关说明同样适用于此。基板部分也相似,但是考虑到其是上网本配置,因此被稍微不同地进行配置。因此,CPU可以是例如适用于上网本、迷你台式机及其它这种低功率微型计算机系统的AtomTM CPU或其它这种处理器。如前所述,GPU可与CPU协同放置或另外可操作地与CPU耦合。
图6根据另一实施例的,具有外部显示器并且被配置为用于执行对视频流的阶梯状的分布式手势预处理以降低平台功耗的计算系统的框图。所述计算机系统可以是例如台式或膝上型(依赖电池电力运转的固定或非固定)计算机。由图可知,所述系统的显示器及基板部分可与图4及5所示的系统的显示器/基板部分类似,上述的相关说明同样适用于此。可使用许多个其它计算机系统架构和配置,本公开并非旨在局限于任何一个特定架构和配置。
图7指示了根据实施例的,通过将视频预处理从核心/非核心移出并移入到相机模块中而实现的节电。总的功率变化量为高于平台的待机功率所消耗的电力。如将根据本公开将理解的,当图像中不存在任何内容时,可实质上减少用于视频操作的CPU C0%占用。如进一步将了解的,虽然将图像处理从核心移至非核心节省约1.4瓦功率(源自减少的CPU周期),但当在相机传感器本身内执行预处理(例如,阈值检测状态和目标存在状态)时,可额外节约3.6瓦的功率,从而消除I/O功率。
例如,可用于因特网导航的示例性手势通常依赖粗粒度手势(例如,上/下滚动、下一/前一页、双击等),其中单个细粒度的手势通常用于鼠标移动。仅当输入特定文本信息时须在键盘上打字。典型的文字类别包括URL、用户名称、密码、搜寻字(包括街名等)。在许多情形中,极少需要或不需移动鼠标。因此,手势的简单性进一步允许手势识别在相机本身内作为分布式处理而被实现。
手势API
图8示出了根据本文所披露的技术的另一实施例的,被配置为用于执行对视频流的阶梯状的分布式手势预处理以降低平台功耗的应用程序接口(API)的框图。在这一示例性事例中,手势API是在本特定系统上可用的一个或多个API(传感器API、上下文API)。原始传感器数据通过传感器API进行处理,手势API预处理原始传感器数据并公开来自阈值检测及目标存在状态(存在及阈值数据)、以及来自细分阶段、手部解析器阶段、和/或手势识别阶段的信息(手势数据),而与所述运算是否在相机传感器内/附近、或在所述CPU/主存储器上运行的软件驱动程序中执行无关。如将进一步了解的,所述手势API可包括隐私和安全策略,例如基于用户的策略(例如,一些用户可能不想启用相机)以及基于平台的策略(例如,仅可信任平台模块(TPM)设备可通过USB端口而连接至平台控制器集线器(PCH))。如上所说明的,所述手势API预处理原始视频,并呈现扩展的USB HID类别的设备。在这种情况下,原始数据不受影响并且被呈现为标准USB视频类别设备。
手势API可被编程或以其它方式被配置为将状态信息传达给相机里的手势设备端点,例如包含用户输入区的像素(例如,如图3a所示,键盘/鼠标区域)。外部显示器的相机的步骤与笔记本计算机的集成显示器相机的步骤相同。在一个示例性事例中,所述过程包括:将键盘放置在视频流的视野中;以关注像素(虚拟标记)的形式将键盘信息传达给相机/GP电路;在相机传感器/GP电路内开始手势预处理工作;根据需要更新键盘位置;以及经由手势API将手势处理信息呈现给平台。在多显示器或多键盘系统中,用户可指示哪个显示器或键盘是主要的。在此可使用任何数量的适合的选择。
以如上所说明的,由手势API所解释的手势可用于增加其它补充的输入形态,例如由键盘和/或鼠标所接收的用户输入。各种搜寻引擎目前包含有许多用户可使用而作为快捷方式的鼠标/触摸手势,以改善它们的浏览体验。用户可启用/禁用特定的快捷方式,并根据需要增加新的定制的快捷方式。这种系统的一个缺点(除了缺乏标准化之外)是所有快捷方式共同相到潜在的过多数量的要被使用的手势,引起心理上的困惑而不可避免地妨碍其广泛应用。根据一个实施例,提供一种相对简单且简洁的基于手势的命令列表,其可根据需要而修正/扩展。由于大多数勤奋的用户可能希望扩展手势列表,并且大多数用户可能希望针对例如在其收藏夹中列出的网址而增加个人化的手势,因此可能期望一些可编程性。通常大多数用户经常一遍又一遍地重复相同的网页(例如,Google、Gmail、Facebook等)。将这一系列键盘/鼠标命令减少到单个手势(或手势的简短系列)可改善使用的容易程度并加快用户的页面切换时间。
此外,可考虑一些手势所要求的“中性返回”。“中性返回”为当不执行手势时手的统计平均位置。例如,手掌在掌托上休息,而手指放置在下列键上:Q-E-R-G-空格键-空格键-H-U-I-P。中性返回是将手放回中性位置(例如,在执行一个手势之后并且在开始下个手势之前)。在大部多数计算机系统使用模型中,将双手保持在中性位置。所期望的是最小化粗略手势,在手势期间让手掌留在同一物理位置。由于图像处理算法忽略在所述相机视野外的全部视觉活动,因此这简化了图像处理。
如将根据本公开将理解的,图8所示的其它组件及特征之前已关于图4-6而讨论了,或者另外可按照通常方式来实现。
用于2D下细粒度手势识别的标记区域
如上所说明的,手势识别阶段可被配置为执行对由手部解析器阶段所生成的解剖/手部数据的时间解释。例如,如果手势识别阶段用于检测相当于鼠标的操作,则其可寻找用户的指尖和/或手的位置变化。在一些实施例中,可使用用于在视频流的视野内创建虚拟标记的技术来执行手势识别,以减少在手势预处理期间的平台功耗。在一个这样的实施例中,标记区域包括视频流图像内的用户的键盘或者另外与视频流图像内的用户的键盘对齐。可消除在标记区域外的对像素信息的图像处理及计算机系统内部通信,以便降低处理负荷。在进一步的实施例中,所评估的像素数量可减至这一标记区域的子集,所述子集可以例如小至像素扫描线、部分像素扫描线或单个像素。
为此,并且如上所说明的,参照阈值检测阶段及目标存在阶段,图9a示出了用于控制计算机系统的手势视频处理系统视野内的示例性标记区域。由图可知,在相机的视频图像内的标记区域以实线指示,该区域大致上相对应于用户的键盘周边以及在所述标记区域内的检查阈值事件区域(水平通过键盘的中间区的虚线,大致上相对应于A-GH-L键)。在通过阈值检测阶段及目标存在阶段做初步评估中,可在所述检测阈值事件区域中进行一次或多次通过(例如,扫描线或部分扫描线或甚至一个像素)。目标标记区域外的像素可被忽略,并且在一些实施例中,在这些初始阶段期间在检测阈值事件区域外的像素可被忽略。如将理解的,检测阈值事件区域可位于标记区域内的其它区中,例如接近键盘的空格键,原因在于用户手部不太可能从最顶部的像素(例如,功能键)突破所述标记区域的平面。虽然示出了外部键盘单元,但其它实施例可使用集成键盘,例如与被配置为可对接物理外部键盘或以其它方式使用物理外部键盘的膝上型计算机或上网本计算机、或平板计算机相关联的集成键盘。如上所说明的,用户的手相对于计算机统的键盘的位置是计算机使用动作的很好的指示,并且来自该区的手势对用户来说是直观过程。
一旦被启用(例如,在阈值检测阶段确定视频流的当前帧是否与所述视频流的前一帧有足够差异,以及目标存在阶段确定当前帧包括肤色像素之后),随后的图像处理阶段可容易地识别键盘的标记区域并搜寻这一区域内的手。检测阈值事件可由在相机观察图像内的标记区域内的手的存来确定,并且所述事件可由例如在标记区域内(或在检测阈值事件区域内)出现的足够大的可视扰动来定义。图像中所反映的在标记区域外的动作(包括可能被误解释为手势的错误的指示)被忽略。例如,并且根据一些实施例,显示器与键盘倾向于在长时间内相对于彼此位于固定位置(对膝上型计算机或笔记本计算机配置来说尤其是这样,但也可应用到具有外部键盘的台式设置),因此在相机传感器的可视图像中的键盘标记的相对位置也倾向于相对固定。因此,根据一些实施例,图像处理可将特定的关注像素(例如,对应于所述标记区域或所述标记区域子集的那些像素,例如对应于检测阈值事件区域的那些像素)下载到相机传感器内(或本文中所各处描述的GP电路中)的图像预处理子系统中,并且相机传感器可对在目标标记区域外的其它像素断电从而节电。类似地,当向CPU传送像素以用于手势识别任务(手部解析器阶段及手势识别阶段)时,在该标记区域外的像素信息是不相关的,并且不需要传送至CPU,这进一步节电。注意,无需在键盘上使用物理“标记”,这是因为所有供应商、文化及年龄群通常都使用极为一致的工业设计制作来制作键盘,并且因而易与人手区分开。例如,键盘通常是单色的,这简化了肤色检测工作,因为键盘被(或者可以被)制作成与肤色有高度差异。
在一些使用基于键盘的标记区域的实施例中,经标记的键盘区域将会需要定期将更新传递至GP电路(例如,相机传感器),这是因为显示器-键盘的相对位置可能改变(基于用户活动、膝上型计算机盖角度的移动、外部键盘的移动等),这因此修改了相机的视野图像中的所期望的像素区域,从而修改了所述图像内的键盘标记位置。视频图形阵列(VGA)技术为大多数图像处理形式提供足够的像素分辨率以供手势识别。如将根据本公开将理解的,虽然高清晰度相机在平台上已变得更为标准的,但额外的图像分辨率对于监视手势来说不是必要的。相反,并且根据本文所披露的技术的实施例,通过给关注的目标标记区域加窗(windowing),手势图像处理系统可被配置为给最少数量的像素供电以准确地捕获手势,而更高清晰度图像分辨率所需的任何额外像素可被断电以节省IO的功耗及运算任务的功耗。
因此,通过做出关于用户的手将如何与标记区域进行互动的判断,可显著地减少功耗。为此,根据一个实施例的目标是减少在预处理的每个阶段将被评估的像素的数量减少到最小值,以保存电池寿命。例如,当评估包括例如单个的与空格键对齐的像素的扫描线的检测阈值事件区域时,可做出与哪些像素适合进行评估有关的判断。例如,在一些这种情况下,由于将双手置于空格键的两侧的用户的物理人体测量学,所以用户的手部太可能突破空格键本身上方的平面。更概括地来说,做出关于用户与标记区域及检测阈值事件区域进行的互动的判断可将所评估的像素数量减小到标记区域的子集,该子集可以小至像素扫描线、部分像素扫描线或单个像素。当检测阈值事件发生时,阈值检测阶段可将该事件报告给系统和/或可向图像处理阶段的下个阶段(由目标存在阶段进行的检测肤色)传递控制。以类似的方式,当发生肤色检测时,目标存在阶段将该事件报告给系统和/或可向图像处理阶段的下个阶段(由细分阶段进行的适应性肤色检测)传递控制。
注意,根据一些实施例,在操作期间系统可使用多个标记定义。例如,用于检测阈值和/或目标存在检测的标记区域可小于用于斑块识别或用于手部手势识别的标记区域。在一些示例性事例中,标记区域可包括键盘及键盘的掌托。然而,为了发起手势(即,为了发送检测阈值事件),手须打破在A-GH-L键轴线上方的对齐的水平面,如图9a所示。
在另一示例性实施例中,如图9b所述,标记区域可以是鼠标垫或指定的桌面区。根据本公开,其它这种标记区域将显而易见,例如其它输入设备(例如,触控板、触摸屏)或指定的区。在又一其它实施例中,标记区域可在内部指定,其中系统被配置为可自动地排除视野的周边区域。在一些这种实施例中,所排出的视野周边除的厚度是用户可配置的。通过这种方式,用户可有效地将其系统调整为所期望的用户设置。如将根据本文公开理解的,根据实施例,这些标记区域及检测阈值事件区域的使用可用于辅助利用单个2D相机及肤色检测算法来执行用于对计算机或因特网导航的低成本、低功率、细粒度手势识别的技术。在一些实施例中,所述技术可扩展以使能3D对象操控。
用于对目标存在进行标记的检测阈值方法
图9c示出了根据实施例的用于对目标存在进行标记的检测阈值的方法。所述方法可以硬件或软件或其组合来实现,并且在一个示例性实施例中,其由五个预处理阶段执行,如本文描述的,这些阶段可采用阶梯状的及分布的方式执行。标记区域可以是例如用户的键盘,并且检测阈值事件区域可横跨该键盘的一部分。在一个特定的示例性实施例中,对目标存在进行检测阈值是使用横跨A-GH-L键(检测阈值事件区域)的像素-扫描线进行的,而随后的目标的评估是在整个标记区域上方进行。然而,根据本公开,许多变化和实施例将显而易见,并且本文所提供的标记的分析技术可以任何适合的方式实现。
所述方法包括确定是否已经在检测阈值事件区域内检测到扰动。如果没有,则流程继续以在每个后续帧的检测阈值事件区域的有限像素区内寻找扰动。然而,如果在给定帧内已经在检测阈值事件区域内检测到扰动,则所述方法继续来发送指示目标存在的中断,从而使得处理可进行到下一阶段,在这一示例中,所述下一阶段涉及肤色检测。具体来说,取决于处理的阶段,所述方法继续来确定在标记区域或在监测阈值事件区域中是否已经检测到肤色。例如,在一个示例中,如果处理刚从阈值检测阶段过渡到目标存在阶段,则只针对肤色而分析检测阈值事件区域内的像素,并且如果在目标存在阶段发出用户存在的信号之后处理后续帧,则可针对肤色像素而扫描整个标记区域。
在任何这种情况下,如果确定了目标标记区域中不存在任何肤色像素,则所述方法继续来发送指示目标不存在的中断,并停止任何进一步的手势预处理和/或手势处理任务。此时,如前文所说明的,所述方法有效地重置并继续针对扰动而监视后续帧的检测阈值事件区域。然而,如果确定在标记区域的子集中存在肤色像素,则所述方法继续进行手势预处理,在一些实施例中,该手势预处理可包括通过细分阶段、手部解析器阶段及手势识别阶段进行的处理和/或任何其它手势处理任务。
对于每个后续帧,针对肤色像素而评估整个标记区域,并且继续针对每个帧进行手势预处理/处理,直到确定在所述目标标记区域中不存在任何肤色像素为止。此时,如前文所述,所述方法继续发送指示目标不存在的中断,并停止任何进一步的手势预处理和/或手势处理任务,并且接着继续针对扰动而监视后续帧的检测阈值事件区域,如上所说明的。根据需要,该流程可重复进行。
细粒度基于椭圆形的手部手势
如上所说明对的,相对简单的手部手势可用于计算机或因特网导航,并且仅具有单个细粒度手势要求,即模仿鼠标移动及活动。可使用任何数量的适合的手势来模拟常用于导航的鼠标按钮的按压与释放。例如,并且根据实施例,可用于指示鼠标按钮按压的一个手势涉及用拇指与食指形成椭圆形,如图10a所示。由图可知,在用户的拇指与食指之间可识别出键盘颜色的椭圆形。所述椭圆形(其可由具有基于键盘的标记视野的视频手势处理系统检测到)可用作指示鼠标按钮正在被按下。根据实施例,如图10b所示,当所述椭圆形被打破(通过将拇指与食指分开)时,指示鼠标按钮被释放。
利用这两个简单的手部手势,当针对非肤色键盘-背景色进行评估时,图像处理算法(例如,在手势识别阶段的那些算法)可被编程或另外被配置为检测肤色形状。例如,在鼠标按钮被按下期间(存在椭圆形),由手势识别阶段执行的手势处理可被配置为追踪椭圆形的X-Y移动,使用椭圆形中心来确定X-Y光标移动,从而来模拟鼠标的光标移动。在这一示例性事例中,可通过键盘的X-Y轴而在可视图像内定义X-Y轴。在一个特定示例性实施例中,使用±1.5像素的肤色/非肤色边缘检测,并发现这足以准确地沿X-Y轴追踪椭圆形中心。如将根据本公开将理解的,取决于所期望的准确度,可不同地配置其它实施例。
可用的另一鼠标功能为鼠标双击,其可被识别为拇指与其余四个手指快速增量分离(incremental separation),其延伸略微超过拇指和食指的中性位置。特别地,这一鼠标双击手势可如图10d-f所示执行,其中初始中性位置如图10d所示,接着是拇指与其余四个手指快速增量分离,如图10e所示,接着回到中性位置,如图10f所示,其中从初始中性位置过渡至分离位置有1至2秒的延迟,并且随后从分离位置回到至初始中性位置有另外的1至2秒的延迟。这些特定的实施例使得能够维持相对于手斑块的中心的接近完整的椭圆形(本文中有时也被称为部分闭合的椭圆形)。如将根据本公开将理解的,其它适合的手势也是可能。
扩展到3D对象操控
目前可用的手势识别技术大多聚焦在3D Z-深度相机,这是由这些解决方案提供置于相机的视野内的对象的更好的空间分辨率这一观念所驱使的。然而,这需要巨大量的运算能力并消耗电池电力。此外,存在多个可用的解决方案,其试图将2D相机图像映射至有关节的手部模型,并接着
通过解释手部模型的关节结合的相对运动来感知手势。但这些解决方案可以是相当复杂的。
因此,并且根据实施例,本文所提供的基于椭圆形的、使用2D相机而针对因特网及计算机导航进行细粒度手势控制的技术,可方便地扩展至3D空间中的对象操控。如上参考图10a-f所说明的,用户的手在相机的图像内创建椭圆形的非肤色元素,可针对X-Y光标移动而在时间上分析该椭圆形的非肤色元素。如将根据本公开将理解的,当用户通过六个运动轴(X-Y-Z以及俯仰-滚动-偏转)移动他/她的手时,椭圆形形状比例以可预测的方式发生变化。根据实施例,当用户通过六个运动轴而移动时,可通过评估所述椭圆形周围的肤色的比例而获得额外信息。
例如,并且参考图11a-f,针对滚动(图11d)及俯仰(图11e)手部移动的图像显示了在这些特定手部移动期间,第3/4/5个手指如何更多或更少的可见,但在X(图11a)及Y(图11b)及Z(图11c)及偏转(图11f)手部移动期间,它们的比例是相当类似的。另一细微的但仍可被检测的并因此仍可操作的区别在于与手势的向下部分相比,Z运动手势倾向于在所述手势的向上部分中显示出较多的指甲。类似地,与手势的其余部分相比,偏转运动手势倾向于在所述手势的一部分中显示处手指的正面(head-on)视角。与本文所讨论的可利用中心追踪的2D X-Y光标移动不同,对手部的3D追踪还必须考虑手部及腕部的更复杂的关节活动。例如,简单的横向X运动,实际上可包括垂直Y移动部分及滚动移动部分。在典型的3D处理下,这些需要被校正以便仅给出用户的所期望的X分量。
椭圆形手势方法
图12示出了根据实施例的用于分析手势视频的方法。所述方法可在硬件或软件或其组合中实现,并且在一个示例性实施例中,其通过如上所述的手部解析器阶段及手势识别阶段执行,根据一些实施例,其可在主机计算系统的CPU上执行。例如,在一些这样的实施例中,手部解析器阶段可被配置为使用由细分阶段所产生的对斑块数据的空间解释而做出关于在肤色区域内是否存在椭圆状的非肤色区做出初始确定。如果存在,则处理进行至手势识别阶段,这一阶段可被配置为执行对斑块数据的时间解释来查看视频的一帧到视频的下一帧的变化。然而,根据本公开,多个变型及实施例将显然易见,并且本文所提供的手势分析技术可在任何适合的模块或模块组中实现。
由图可知,所述方法包括确定是否已经在肤色区域内检测到完全闭合的非肤色区域(椭圆形)。记得手部解析器阶段可被配置为执行对斑块数据的空间解释,并且斑块像素(例如,非零或“灰”像素)能够容易地与非斑块像素(例如,黑像素)进行区别。如果在肤色区域内并没有检测到非肤色区域椭圆形,则处理继续寻找非肤色区域椭圆形。如图2a所示,此时处理可返回至目标存在阶段。
当通过手部解析器阶段(或其它模块/阶段)在给定帧的肤色区域内检测到非肤色椭圆形时,所述方法继续来关于X-Y对齐的键盘标记区域而定义椭圆形的中心及其它相关标记。关于标记的示例包括例如皮肤皱纹、关节红肿、指节数、静脉、毛发、及人手部的其它这种典型的可识别特征。如将理解的,知晓椭圆形中心的位置使得能够做出其它测量来评估所述手势的进一步的细节(包括在六个运动轴中任意一个上的移动)。
所述方法继续来测量在这一初始帧内捕获到的椭圆形周围的肤色厚度。如将理解的,注意当提及图12中的第一帧时并不一定表示视频流的第一帧,而是表示其中已在肤色区域内检测到非肤色椭圆形的视频流的第一帧。无论如何,这些厚度的测量随后可用于进一步评估在视频流的一个或多个后续帧中捕获到的手势的性质。例如,在这一特定的实施例中,所述方法继续,通过估计椭圆形的中心、标记及周围的肤色厚度在维度及角度方面相对于X-Y平面的变化来分析下一帧。如上所说明的,例如可通过评估图11a-f所描绘的特征而测量这些变化,所述特征将在所述六轴上的手部移动有效地特征化。除了在X-Y平面内追踪椭圆形中心的移动以及测量关于非肤色椭圆形的肤色的厚度之外,可采用任何数量的特征识别技术来进一步提高评估的稳健性(例如,与偏转移动相关联的在横向上的指节识别与追踪;与Z移动相关联的在纵向上的指甲识别及追踪)。至于测量肤色厚度,需要注意的是例如在偏转或俯仰移动中所述椭圆形左侧的肤色厚度随着偏转的开始而有显著改变。
参考图12进一步可知,所述方法可用于提供2D分析(其中对X-Y位移进行估计(基于在X-Y运动中所估计的变化)),或用于提供3D分析(其中对6轴位移进行估计(具有在X-Y-Z及滚动-俯仰-偏转运动中所估计的变化))。随后,所述方法继续将计算所得的位移估计值传送给主机处理器(例如,图形处理系统的CPU)。根据在这一示例性事例中由键盘的标记区域所提供的限制,可以相对有效的方式完成这些位移的计算。
所述方法继续前进至下一帧,并确定在所述肤色区域内的完全闭合的非肤色椭圆形是否仍然完好。如果是,则针对下一帧进行重复处理,以进一步评估所述手势如何从前一帧的手势进行了进展,并且任何相关位移可基于相对于两轴(用于2D处理)或六轴(用于3D处理)的移动来计算并被传送给主机处理器,然后所述主机处理器对所接收的导航指令动作(例如,点击浏览器返回钮或收藏夹链接;选择超链接;打开下拉选单,最小化窗口,启动浏览器应用等)。
然而,如果确定在肤色区域内的完全闭合的非肤色椭圆形不再完好(由于用户已通过将拇指与食指分离而打开所述椭圆形,例如鼠标按钮的释放),则所述方法继续进行,以停止向CPU传送位移估计,并继续针在肤色区域内的新非肤色椭圆形的存在而监控后续帧,并相应地重复所述处理。
根据本文所公开的,多种变化将是显而易见的。例如,所述方法可等同地6应用于检测在肤色区域内的部分非肤色椭圆形(例如图10d-10f所示)以用于处理鼠标双击。进一步需要注意的是,假设用户有两只手,也可解释在相机图像中两个相对应的不同的椭圆形非肤色元素(左手、右手)的交互。这种双手处理可例如用于增益应用及其它高阶应用,然而基本计算机及因特网导航手势可只使用单手进行。
示例性系统
图13示出了根据一些实施例的,可执行本文所描述的对视频内容的阶梯状的与分布式手势预处理的示例性系统1300。在一些实施例中,系统1300可以是媒体系统,尽管系统1300并不限于该上下文。例如,系统1300可以并入到个人计算机(PC)、膝上型计算机、超级膝上型计算机、平板计算机、触控板、便携式计算机、手持式计算机、掌上型计算机、个人数字助理(PDA)、蜂窝电话、组合蜂窝电话/PDA、电视、智能设备(例如,智能电话、智能平板计算机或智能电视)、移动互联网设备(MID)、消息设备、数据通信设备等。
在一些实施例中,系统1300包括耦合到显示器1320的平台1302。平台1302可以从诸如内容服务设备1330或内容分发设备1340或其它类似内容源的内容设备接收内容。导航控制器1350包括一个或多个导航功能,其可用于与例如平台902和/或显示器920进行交互,以便补充用户所做出的导航手势(例如,如本文所描述的,完整和部分基于椭圆形的手势)。在下文中更具体地描述这些组件中的每个。
在一些实施例中,平台1302可以包括芯片组1305、处理器1310、存储器1312、存储设备1314、图形子系统1315、应用程序1316和/或无线电设备1318的任意组合。芯片组1305可以在处理器1310、存储器1312、存储设备1314、图形子系统1315、应用程序1316和/或无线电设备1318之间提供相互通信(intercommunication)。例如,芯片组1305可以包括能够提供与存储设备1314的相互通信的存储设备适配器(未示出)。
处理器1310可以被实现为复杂指令集计算机(CISC)处理器或精简指令集计算机(RISC)处理器、x86指令集兼容处理器、多核处理器或任何其它微处理器或中央处理单元。在实施例中,处理器1310可以包括双核处理器、双核移动处理器等。存储器1312可以被实现为易失性存储器设备,例如但不限于,随机存取存储器(RAM)、动态随机存取存储器(DRAM)、或静态RAM(SRAM)。存储设备1314可以被实现为非易失性存储设备,例如但不限于,磁盘驱动器、光盘驱动器、磁带驱动器、内部存储设备、附接存储设备、闪速存储器、电池供电的SDRAM(同步DRAM)、和/或网络可访问存储设备。在实施例中,例如,当包括多个硬盘驱动器时,存储设备1314可以包括提高对有价值的数字媒介的存储性能增强保护的技术。
图形子系统1315可以执行对诸如静态或视频这样的图像的处理以供显示。例如,图形子系统1315可以是图形处理单元(GPU)110或可视处理单元(VPU)。模拟或数字接口可以用于将图形子系统1315和显示器1320通信地耦合。例如,该接口可以是高清晰度多媒体接口、显示接口、无线HDMI、和/或无线HD兼容技术中的任意一种。图形子系统1315可以被集成到处理器1310或芯片组1305中。图形子系统1315可以是耦合到芯片组1305的独立的卡。本文所描述的阶梯状的及分布式图形和/或视频处理技术可在各种硬件架构中实现(例如,在近处相机的相机硅芯片中的GP电路)。在又一实施例中,包括分布式预处理阶段中的一部分(例如,手部解析器及手势识别)的图形和/或视频功能可通过具有多核处理器的通用处理器来实现。在其它情况下,可使用协同放置的或分离的GPU处理器(例如,细分阶段)。
无线电设备1318可以包括能够使用各种合适的无线通信技术来发射并接收信号的一个或多个无线电设备。这种技术可以涉及跨一个或多个无线网络的通信。示例性无线网络包括(但不限于)无线局域网(WLAN)、无线个域网(WPAN)、无线城域网(WMAN)、蜂窝网络、和卫星网络。在跨这种网络的通信中,无线电设备1318可以根据任意版本的一个或多个适用标准而进行操作。
在一些实施例中,显示器1320可包括任何类型的电视型监视器或显示器。显示器1320可包括,例如液晶显示器屏(LCD)、电泳显示器(EPD)或液体纸显示器、平板显示器、触摸屏显示器、类似电视的装置和/或电视。显示器1320可以是数字和/或模拟的。在一些实施例中,显示器1320可以是全息或三维显示器。另外,显示器1320可以是可接收视觉投影的透明表面。这种投影可传送各种形式的信息、图像和/或对象。例如,这种投影可以是用于移动增强现实(MAR)应用的视觉覆盖。在一个或多个软件应用程序1316的控制下,平台1302可将用户界面1322显示在显示器1320上。
在一些实施例中,内容服务设备1330可以由任何国家、国际和/或独立的服务托管,并且因此可以通过例如互联网访问平台1302。内容服务设备1330可以耦合到平台1302和/或显示器1320。平台1302和/或内容服务设备1330可以耦合到网络1360,以便向网络1360和从网络1306传送媒体信息(例如,发送和/或接收)。内容分发设备1340也可以耦合到平台1302和/或显示器1320。在实施例中,内容服务设备1330可以包括有线电视盒、个人计算机、网络、电话、互联网使能的设备或能够递送数字信息和/或内容的装置、以及能够在内容提供者和平台1302和/显示器1320之间通过网络1360或直接单向或双向传送内容的其它类似装置。应该理解的是,内容可通过网络1360向和从系统1300中的组件与内容提供者中的任何一个被单向和/或双向地传送。内容的示例可以包括任何媒体信息,包含例如视频、音乐、医疗和游戏信息等。
内容服务设备1330接收诸如有线电视节目(包括媒体信息、数字信息和/或其它内容)的内容。内容提供者的示例可以包括任何有线或卫星电视或广播电台或互联网内容提供者。所提供的示例并不意味着限制本发明的实施例。在一些实施例中,平台1302可以从具有一个或多个导航特征的导航控制器1350接收控制信号。控制器1350的导航特征可用于例如与用户界面1322进行交互。在一些实施例中,导航控制器1350可以是指示装置,其可以是允许用户将空间(例如,连续的和多维的)数据输入到计算机中的计算机硬件组件(具体地说,人机接口设备)。如将理解的是,本文所描述的导航手势可用作这种导航控制器1350的替代物,或用于加强这种用户输入模形态。因此,如将根据本公开将理解的,本文关于导航控制器1350的多种公开可等同地应用于这种导航手势(但相对于手势输入,针对控制器1350的输入的处理途径不同)。许多系统,例如图形用户界面(GUI)、电视以及监视器允许用户使用身体姿势来控制计算机或电视以及向计算机或电视提供数据。
控制器1350的导航特征的移动可以通过显示器上的指针、光标、聚焦环,或其它视觉指示器的移动而反映到显示器(例如,显示器1320)上。例如,在软件应用程序1316的控制下,位于导航控制器1350上的导航特征可被映射成例如用户界面1322上显示的虚拟导航特征。在一些实施例中,控制器1350可以不是单独的组件,而是集成到平台1302和/或显示器1320中。然而,实施例并不局限于这些元件,或本文所示出的或所描述的上下文中的情况。
在实施例中,例如当被启用时,驱动程序(未示出)可以包括使用户能够在系统初始化后,通过触摸按钮可以即时开启和关闭平台1302(像开启和关闭电视一样)的技术。当平台被“关闭”时,程序逻辑可以允许平台1302将内容串流(stream)到媒体适配器或其它内容服务设备1330或内容分发设备1340。此外,例如,芯片组1305可以包括支持例如5.1环绕立体声和/或高清7.1环绕立体声的硬件和/或软件。驱动程序可以包括用于集成显卡平台的图形驱动程序。在实施例中,图形驱动程序可以包括外设部件互连标准(PCI)快速图形卡。
在各种实施例中,系统1300中所示的任何一个或多个组件可以是集成的。例如,平台1302和内容服务设备1330可以是集成的,或者平台1302和内容分发设备1340可以是集成的,或者平台1302、内容服务设备1330和内容分发设备1340可以是集成的。在各个实施例中,平台1302和显示器1320可以是一个集成单元。例如,显示器1320和内容服务设备1330可以是集成的,或者显示器1320和内容分发设备1340可以是集成的。这些实施例并不意味着限制本发明。
在各种实施例中,系统1300可以被实现为无线系统、有线系统、或两者的组合。当被实现为无线系统时,系统1300可以包括适于在无线共享介质上通信的组件和接口,例如一个或多个天线、发射器、接收器、收发器、放大器、滤波器、控制逻辑等。无线共享介质的示例可以包括无线频谱的一部分,例如,RF频谱等。当被实现为有线系统时,系统1300可以包括适于在有线通信介质上通信的组件和接口,例如输入/输出(I/O)适配器、将I/O适配器与相应的有线通信介质连接起来的物理连接器、网络接口卡(NIC)、盘控制器、视频控制器、音频控制器等。有线通信介质的示例可以包括导线、电缆、金属引线、印刷电路板(PCB)、背板、交换光纤、半导体材料、双绞线、同轴电缆、光纤等。
平台1302可以建立一个或多个逻辑或物理信道来传送信息。该信息可以包括媒体信息和控制信息。媒体信息可以指表示针对用户的内容的任何数据。内容的示例可以包括,例如来自于语音对话、视频会议、流视频、电子邮件消息、语音邮件消息、字母数字符号、图形、图像、视频、文本等的数据。来自于语音对话的数据可以是例如语音信息、静默时段、背景噪声、舒适噪声、音调等。控制信息可以指表示针对自动系统的命令、指令或控制字的任何数据。例如,控制信息可以用于通过系统而路由媒体信息,或指示节点来以预先确定的方式处理媒体信息。然而,实施例并不限于这些元件或图13所示或所描述的上下文。
如上所述,可以以变换的物理样式或形状因子而实施系统1300。图14示出了在其中可以实施系统1300的小的形状因子设备1400的实施例。在一些实施例中,设备1400可以被实现为具有无线功能的移动计算设备。例如,移动计算设备可以指具有处理系统和移动电压源或电源(例如,一个或多个电池)的任何设备。
如上所述,移动计算设备的示例可以包括个人计算机(PC)、膝上型计算机、超级膝上型计算机、平板计算机、触控板、便携式计算机、手持式计算机、掌上型计算机、个人数字助理(PDA)、蜂窝电话、组合蜂窝电话/PDA、电视、智能设备(例如,智能电话、智能平板计算机或智能电视)、移动互联网设备(MID)、消息设备、数据通信设备等。
移动计算设备的示例还可以包括被布置为由人穿戴的计算机,例如腕上计算机、手指计算机、戒指计算机、眼镜计算机、腰带扣计算机、鞋计算机、衣服计算机、以及其它可穿戴计算机。在实施例中,例如,移动计算设备可以被实现为能够执行计算机应用程序以及语音通信和/或数据通信的智能电话。尽管可以通过示例的方式用被实现为智能电话的移动计算设备来描述一些实施例,但是可以理解的是,也可以使用其它无线移动计算设备来实现其它实施例。实施例并不限于该上下文。
如图14所示,设备1400可包括壳体1402、显示器1404、输入/输出(I/O)设备1406、以及天线1408。设备1400还可以包括导航特征1412。显示器1404可以包括用于显示适合于移动计算设备的信息的任何合适的显示单元。I/O设备1406可以包括用于将信息输入到移动计算设备中的任何合适的I/O设备。I/O设备1406的示例可以包括字母数字键盘、数字小键盘、触摸板、输入键、按钮、开关、摇臂开关、麦克风、扬声器、语音识别设备和软件等。还可以通过麦克风的方式将信息输入到设备1400。可以由语音识别设备将该信息数字化。实施例并不限于该上下文。
可以使用硬件元件、软件元件或两者的组合来实现各个实施例。硬件元件的示例可以包括处理器、微处理器、电路、电路元件(例如,晶体管、电阻器、电容器、电感器等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、逻辑门、寄存器、半导体设备、芯片、微芯片、芯片组等。软件的示例可以包括软件组件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、函数、方法、过程、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号、或其任意组合。确定是否使用硬件元件和/或软件元件来实现实施例可以根据以下任意数量的因素而变化,例如所期望的计算速率、功率电平、耐热性、处理周期预算、输入数据速率、输出数据速率、存储资源、数据总线速度和其它设计或性能约束。
一些实施例例如可使用可储存指令或指令集的机器可读介质或物体来实现,如果所述指令或指令集由机器执行,使得所述机器执行根据一些实施例的方法和/或操作。这种机器例如可包括任何适合的处理平台、计算平台、计算设备、处理设备、计算系统、处理系统、计算机、处理器等,并可使用任何适合的硬件与软件的组合来实现。所述机器可读介质或物体例如可包括任何适合类型的非瞬时性存储器单元、存储器设备、存储器制品、存储器介质、储存设备、储存制品、储存介质和/或储存单元,例如,存储器、可移动或不可移动介质、可擦除或不可擦除介质、可写入或可重新写入介质、数字或模拟介质、硬盘、软盘、光盘-只读存储器(CD-ROM)、可刻录光盘(CD-R)、可重新写入光盘(CD-RW)、光盘、磁性介质、磁光介质、可移动存储卡或盘、各种类型的数字多功能盘(DVD)、磁带、卡带等。指令可包括使用任何适合高级、低级、面向对象、可视、汇编和/或解释编程语言实现的任何适合类型的可执行的代码。
进一步的示例性实施例
以下示例关于进一步的实施例,通过这些实施例,多种置换和配置将显而易见。
示例1为一种用于处理原始视频流的系统,包括:阈值检测阶段,被配置为确定所述视频流的当前帧是否与所述视频流的前一帧充分不同,并且响应于所述当前帧不与所述前一帧充分不同,所述阈值检测阶段进一步被配置为停止由后续阶段对所述当前帧的进一步处理;目标存在阶段,其被配置为确定所述当前帧是否包含肤色像素,并且响应于所述当前帧不包含肤色像素,所述目标存在阶段进一步被配置为停止由后续阶段对所述当前帧的进一步处理;以及手势处理阶段,其被配置为对由所述阈值检测阶段和所述目标存在阶段所传递的帧内的图像数据执行空间解释和时间解释中的至少一个。
示例2包括示例1的主题,其中,对处于标记区域外的像素信息的图像处理及传送被消除或以其它方式被抑制。
示例3包括示例2的主题,其中,所述标记区域是给定视野的子集。
示例4包括示例2的主题,其中,所述标记区域与用户输入设备对齐。在一些这种情况下,所述标记区域由用户输入设备的周边所界定。
示例5包括示例4的主题,其中,所述用户输入设备为键盘。在一些这种情况下,所述标记区域由键盘的周边所界定。
示例6包括示例2的主题,其中,所述标记区域与鼠标垫对齐。在一些这种情况下,所述标记区域由鼠标垫的周边所界定。
示例7包括示例2-6中任意一个的主题,其中,由所述系统评估的多个像素是所述标记区域的子集。
示例8包括示例7的主题,其中,所述子集是像素扫描线和部分像素扫描线中的一个。
示例9包括示例7的主题,其中,所述子集为单个像素。
示例10包括示例1-9中任意一个的主题,其中,对处于所述标记区域外的像素信息的图像处理及传送被消除或以其它方式被抑制,并且所述标记区域是给定视野的用户可配置的子集。
示例11包括示例1-10中任意一个的主题,其中,所述手势处理阶段进一步被配置为仅对在给定视野的标记区域内的图像数据进行空间解释和时间解释中的至少一个。
示例12包括示例11的主题,其中,所述标记区域与用户输入设备、或鼠标垫、或桌面区对齐。在一些这种情况下,所述标记区域由所述键盘、所述鼠标垫或所述桌面的周边所界定。
示例13包括示例12的主题,其中,对处于所述标记区域外的像素信息的图像处理及传送被消除或以其它方式被抑制。
示例14包括示例13的主题,其中,所评估的多个像素是所述标记区域的子集。
示例15包括示例1-14中任意一个的主题,其中,所述阈值检测阶段被配置为将当前帧的亮度通道与前一帧的亮度通道进行求和和比较,如果当前帧与前一帧之间的差值高于给定的阈值,则所述当前帧的数据被传递至目标存在阶段以用于进一步处理。
示例16包括示例1-15中任意一个的主题,其中,实施目标存在阶段被配置为将当前帧的数据转换成一个或多个HSV像素,并且如果找到足够数量的肤色像素,则将所述当前帧的数据传递给下一处理阶段。
示例17包括示例16的主题,其中,所述下一处理阶段是细分阶段,所述细分阶段被配置为区分关注像素与非关注像素,其中关注像素被表示为斑块,而所述非关注像素由非斑块表示。
示例18包括示例17的主题,其中所述细分阶段被配置为可消除以下中的至少一个:因相机噪声和/或光线所导致的分散像素,和/或使用侵蚀及膨胀变形法处理成像数据。
示例19包括示例17或18的主题,其中所述细分阶段在图形处理单元(GPU)中实现。
示例20包括示例17-19中任意一个的主题,其中,所述手势处理阶段包括解析器阶段,所述解析器阶段被配置为执行对从细分阶段接收到的斑块数据的空间解释。
示例21包括示例20的主题,其中,所述解析器阶段被配置为通过将所述斑块数据映射至目标人体解剖几何形状的模型而进行空间解释。
示例22包括示例21的主题,其中所述目标人体解剖几何形状为手。
示例23包括示例20-22中任意一个的主题,其中,所述解析器阶段被配置为进行对所述斑块数据的空间解释以识别在肤色区域内的非肤色椭圆状的区的存在。
示例24包括示例23的主题,其中,在肤色区域内的非肤色椭圆状的区为完全闭合或部分闭合中的一个。
示例25包括示例20-24中任意一个的主题,其中所述手势处理阶段系进一步包括手势识别阶段,所述手势识别阶段被配置为执行对从所述解析器阶段接收到的斑块数据的时间解释。
示例26包括示例25的主题,其中所述细分阶段、所述解析器阶段和/或所述手势识别阶段中的至少一个被配置为向所述阈值检测阶段和/或所述目标存在阶段中的至少一个发送反馈。
示例27包括示例25及26的主题,其中,所述阈值检测阶段及所述目标存在阶段中的至少一个在相机内或接近所述相机实现,所述相机被设置在第一位置并具有包括用户输入区的视野,并且所述细分阶段、所述解析器阶段及所述手势识别阶段位于与所述第一位置不同的一个或多个位置。
示例28包括示例17-27中任意一个的主题,其中所述细分阶段在图形处理单元中实现,并且所述解析器阶段及所述手势识别阶段通过应用软件实现。
示例29包括示例1-28中任意一个的主题,其中所述阈值检测阶段及所述目标存在阶段在显示器中实现。
在示例30中,示例1-29中任意一个的主题可选择性地包括应用程序接口(API),以用于将所述阶段中的一个或多个可操作地耦合至计算平台,所述系统被配置为在所述计算平台中进行操作。
示例31a包括示例30的主题,其中所述API被呈现为可扩展的通用串行总线人机接口(USB HID)类别的设备。
示例31b包括示例30或31a的主题,其中所述API包括安全/隐私策略。
示例32包括一种成像装置,所述成像装置包括实施例1至31b中任意一个的主题以及可操作地耦合至系统的相机。
示例33包括示例32的主题,其中,所述阈值检测阶段及所述目标存在阶段中的至少一个在所述相机的传感器电路中实现。
示例34包括显示器,所述显示器包括示例1至31b中任意一个的主题。
示例35包括示例34的主题,其中,所述阈值检测阶段及所述目标存在阶段中的至少一个在集成到所述显示器内的相机的传感器电路内实现。
示例36包括一种使用原始视频流的计算机导航方法,包括:在第一处理阶段,确定所述视频流的当前帧是否与所述视频流的前一帧充分不同,并且响应于所述当前帧不与所述前一帧充分不同,停止由后续阶段对所述当前帧的进一步处理;在第二处理阶段,确定当前帧是否包含肤色像素,并且响应于所述当前帧不包含肤色像素,停止由后续阶段对所述当前帧的进一步处理;在第三处理阶段,从所述当前帧接收数据并区分关注像素与非关注像素,其中,所述关注像素被表示为斑块,而所述非关注像素由非斑块表示;在第四处理阶段,通过将从所述第三处理阶段接收到的斑块数据映射至人手几何形状,对所述斑块数据执行空间解释;在第五处理阶段,对从所述第四处理阶段接收到的斑块数据执行时间解释,以识别用户导航手势;并且基于所述用户导航手势来导引计算系统;其其中,所述处理阶段以阶梯状的及分布式布置而配置,并且对处于标记区域外的像素信息的图像处理及传送被消除或以其它方式被抑制。
示例37包括示例36的主题,其中所述标记区域为给定视野的子集。
示例38包括示例36-37中任意一个的主题,其中,由至少一个所述处理阶段评估的像素数量为所述标记区域的子集。
示例39包括示例38的主题,其中,所述标记区域的所述子集为像素扫描线、部分像素扫描线、或单一像素中的一个。
示例40包括示例36-39中任意一个的主题,其中,所述标记区域与键盘或鼠标垫或桌面区对齐。在一些这种情况下,所述标记区域由所述键盘、鼠标垫或桌面区的周边所界定。
示例41包括示例36-39中任意一个的主题,其中,所述标记区域为给定视野的用户可配置的子集。
示例42是用指令来编码的非瞬时性计算机可读介质或计算机程序产品,当所述指令由一个或多个处理器执行时,使得使用原始视频流来执行一种导航方法。所述方法例如可包括示例36-41中任意一个的主题,或如示例1-35中描述的任一项计算机可实现的功能。
为了说明及描述的目的公开了前述示例性实施例的描述。该描述并非旨在排它的或将本文所公开的局限于所披露的精确形式。根据本文所公开的许多改进及变型是可能的。目的在于并不由本详细描述限制本公开的范围,相反由所附的权利要求来限制本公开的范围。要求享有本申请优先权的将来所提出的申请可以不同方式来请求所公开的主题,并可大致包括如在本文中多处披露的或以其它方式示出的一个或多个限制的任何集合。

Claims (25)

1.一种用于处理原始视频流的系统,包括:
阈值检测阶段,其被配置为确定所述视频流的当前帧是否与所述视频流的前一帧充分不同,并且响应于所述当前帧不与所述前一帧充分不同,所述阈值检测阶段进一步被配置为停止由后续阶段对所述当前帧的进一步处理;
目标存在阶段,其被配置为确定所述当前帧是否包含肤色像素,并且响应于所述当前帧不包含肤色像素,所述目标存在阶段进一步被配置为停止由后续阶段对所述当前帧的进一步处理;以及
手势处理阶段,其被配置为对由所述阈值检测阶段和所述目标存在阶段所传递的帧内的图像数据执行空间解释和时间解释中的至少一个。
2.根据权利要求1所述的系统,其中,对处于标记区域外的像素信息的图像处理及传送被消除,并且所述标记区域是给定视野的子集。
3.根据权利要求2所述的系统,其中,所述标记区域与用户输入设备、或鼠标垫、或桌面区对齐。
4.根据权利要求2所述的系统,其中,所述标记区域与键盘对齐,并由所述键盘的周边所界定。
5.根据权利要求2所述的系统,其中,所述标记区域与鼠标垫对齐,并由所述鼠标垫的周边所界定。
6.根据权利要求2所述的系统,其中,由所述系统评估的多个像素是所述标记区域的子集。
7.根据权利要求6所述的系统,其中,所述子集是像素扫描线、部分像素扫描线、和单个像素中的一个。
8.根据权利要求1所述的系统,其中,对处于所述标记区域外的像素信息的图像处理及传送被消除,并且所述标记区域是给定视野的用户可配置的子集。
9.根据权利要求1-8中的任意一项所述的系统,其中,所述手势处理阶段进一步被配置为仅对在给定视野的标记区域内的图像数据进行空间解释和时间解释中的至少一个。
10.根据权利要求1-8中的任意一项所述的系统,其中,所述目标存在阶段被配置为将所述当前帧的数据转换成一个或多个HSV像素,并且如果找到足够数量的肤色像素,则将所述当前帧的数据传递给细分阶段,所述细分阶段被配置为区分关注像素与非关注像素,其中,关注像素被表示为斑块,而非关注像素由非斑块表示。
11.根据权利要求10所述的系统,其中,所述细分阶段在图形处理单元(GPU)中实现。
12.根据权利要求10所述的系统,其中,所述手势处理阶段包括解析器阶段,所述解析器阶段被配置为对从所述细分阶段接收到的斑块数据执行空间解释。
13.根据权利要求12所述的系统,其中,所述解析器阶段被配置为对所述斑块数据执行空间解释以识别在肤色区域内的非肤色椭圆状的区的存在,并且其中,在肤色区域内的所述非肤色椭圆状的区是完全闭合的或部分闭合的其中之一。
14.根据权利要求12所述的系统,其中,所述手势处理阶段进一步包括手势识别阶段,所述手势识别阶段被配置为对从所述解析器阶段接收到的斑块数据执行时间解释。
15.根据权利要求14所述的系统,其中,所述阈值检测阶段和所述目标存在阶段中的至少一个是在相机内或接近所述相机而实现的,所述相机能够设置在第一位置处并具有包括用户输入区的视野,并且所述细分阶段、所述解析器阶段及所述手势识别阶段位于与所述第一位置不同的一个或多个位置。
16.根据权利要求14所述的系统,其中,所述细分阶段是在图形处理单元中实现的,并且所述解析器阶段及所述手势识别阶段是由应用软件实现的。
17.根据权利要求1-8中的任意一项所述的系统,进一步包括应用程序接口(API),以用于将所述阶段中的一个或多个可操作地耦合至计算平台,所述系统被配置为在所述计算平台中进行操作。
18.一种成像设备,包括权利要求1-8中的任意一项所述的系统以及可操作地耦合至所述系统的相机,其中,所述阈值检测阶段和所述目标存在阶段中的至少一个是在所述相机的传感器电路内实现的。
19.一种显示器,包括权利要求1-8中的任意一项所述的系统,其中,所述阈值检测阶段和所述目标存在阶段中的至少一个是在集成在所述显示器内的相机的传感器电路内实现的。
20.一种使用原始视频流的计算机导航方法,包括:
在第一处理阶段,确定所述视频流的当前帧是否与所述视频流的前一帧充分不同,并且响应于所述当前帧不与所述前一帧充分不同,停止由后续阶段对所述当前帧的进一步处理;
在第二处理阶段,确定所述当前帧是否包含肤色像素,并且响应于所述当前帧不包含肤色像素,停止由后续阶段对所述当前帧的进一步处理;
在第三处理阶段,接收来自所述当前帧的数据并区分关注像素与非关注像素,其中,关注像素被表示为斑块,而非关注像素由非斑块表示;
在第四处理阶段,通过将从所述第三处理阶段接收到的斑块数据映射至人手几何形状,对所述斑块数据执行空间解释;
在第五处理阶段,对从所述第四处理阶段接收到的斑块数据执行时间解释,以识别用户导航手势;并且
基于所述用户导航手势来导引计算系统;
其中,所述处理阶段以阶梯状的且分布式的布置而配置,并且对处于标记区域外的像素信息的图像处理及传送被消除。
21.根据权利要求20所述的方法,其中,所述标记区域是给定视野的子集,并且与键盘、或鼠标垫、或桌面区对齐,并且由至少一个所述处理阶段评估的多个像素是所述标记区域的子集。
22.一种用指令来编码的非瞬时性计算机可读介质,当所述指令由一个或多个处理器执行时,使得使用原始视频流来执行一种导航方法,所述方法包括:
在第一处理阶段,确定所述视频流的当前帧是否与所述视频流的前一帧充分不同,并且响应于所述当前帧不与所述前一帧充分不同,停止由后续阶段对所述当前帧的进一步处理;
在第二处理阶段,确定所述当前帧是否包含肤色像素,并且响应于所述当前帧不包含肤色像素,停止由后续阶段对所述当前帧的进一步处理;
在第三处理阶段,接收来自所述当前帧的数据并区分关注像素与非关注像素,其中,关注像素被表示为斑块,而非关注像素由非斑块表示;
在第四处理阶段,通过将从所述第三处理阶段接收到的斑块数据映射至人手几何形状,对所述斑块数据执行空间解释;
在第五处理阶段,对从所述第四处理阶段接收到的斑块数据执行时间解释,以识别用户导航手势;并且
基于所述用户导航手势来导引计算系统;
其中,对处于标记区域外的像素信息的图像处理及传送被消除。
23.根据权利要求22所述的计算机可读介质,其中,所述标记区域是给定视野的子集,并且与键盘对齐并由所述键盘的周边界定。
24.根据权利要求23所述的计算机可读介质,其中,由至少一个所述处理阶段评估的多个像素是所述标记区域的子集。
25.根据权利要求22所述的计算机可读介质,其中,所述标记区域是给定视野的用户可配置的子集。
CN201380059289.8A 2012-12-13 2013-12-10 使用标记区域对视频流的手势预处理 Active CN104798104B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810777013.8A CN108958487B8 (zh) 2012-12-13 2013-12-10 使用标记区域对视频流的手势预处理
CN201710311113.7A CN107272883B (zh) 2012-12-13 2013-12-10 使用标记区域对视频流的手势预处理

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US13/713,849 2012-12-13
US13/713,849 US8805017B2 (en) 2012-12-13 2012-12-13 Gesture pre-processing of video stream to reduce platform power
US13/800,910 US8761448B1 (en) 2012-12-13 2013-03-13 Gesture pre-processing of video stream using a markered region
US13/800,910 2013-03-13
PCT/US2013/074135 WO2014093347A1 (en) 2012-12-13 2013-12-10 Gesture pre-processing of video stream using a markered region

Related Child Applications (2)

Application Number Title Priority Date Filing Date
CN201810777013.8A Division CN108958487B8 (zh) 2012-12-13 2013-12-10 使用标记区域对视频流的手势预处理
CN201710311113.7A Division CN107272883B (zh) 2012-12-13 2013-12-10 使用标记区域对视频流的手势预处理

Publications (2)

Publication Number Publication Date
CN104798104A true CN104798104A (zh) 2015-07-22
CN104798104B CN104798104B (zh) 2018-08-21

Family

ID=50930283

Family Applications (3)

Application Number Title Priority Date Filing Date
CN201380059289.8A Active CN104798104B (zh) 2012-12-13 2013-12-10 使用标记区域对视频流的手势预处理
CN201810777013.8A Active CN108958487B8 (zh) 2012-12-13 2013-12-10 使用标记区域对视频流的手势预处理
CN201710311113.7A Active CN107272883B (zh) 2012-12-13 2013-12-10 使用标记区域对视频流的手势预处理

Family Applications After (2)

Application Number Title Priority Date Filing Date
CN201810777013.8A Active CN108958487B8 (zh) 2012-12-13 2013-12-10 使用标记区域对视频流的手势预处理
CN201710311113.7A Active CN107272883B (zh) 2012-12-13 2013-12-10 使用标记区域对视频流的手势预处理

Country Status (5)

Country Link
US (4) US8761448B1 (zh)
EP (2) EP2932471A4 (zh)
CN (3) CN104798104B (zh)
TW (1) TWI498772B (zh)
WO (1) WO2014093347A1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105678211A (zh) * 2015-12-03 2016-06-15 广西理工职业技术学院 一种人体动态特征的智能识别系统
CN107688389A (zh) * 2017-08-25 2018-02-13 北京金恒博远科技股份有限公司 Vr抓取动作的优化方法及装置
CN109588063A (zh) * 2016-06-28 2019-04-05 英特尔公司 嵌入姿势的视频
CN109923501A (zh) * 2016-11-01 2019-06-21 香港科技大学 用于设备交互的空中手指指向检测
CN110178368A (zh) * 2017-01-31 2019-08-27 惠普发展公司,有限责任合伙企业 基于所接收的信息的视频变焦控制
CN110337027A (zh) * 2019-07-11 2019-10-15 北京字节跳动网络技术有限公司 视频生成方法、装置及电子设备
CN109074469B (zh) * 2016-04-18 2021-08-24 讯宝科技有限责任公司 条形码扫描和确定尺寸

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11493998B2 (en) * 2012-01-17 2022-11-08 Ultrahaptics IP Two Limited Systems and methods for machine control
US10691219B2 (en) * 2012-01-17 2020-06-23 Ultrahaptics IP Two Limited Systems and methods for machine control
US8761448B1 (en) 2012-12-13 2014-06-24 Intel Corporation Gesture pre-processing of video stream using a markered region
US9104240B2 (en) 2013-01-09 2015-08-11 Intel Corporation Gesture pre-processing of video stream with hold-off period to reduce platform power
US9292103B2 (en) 2013-03-13 2016-03-22 Intel Corporation Gesture pre-processing of video stream using skintone detection
US9702977B2 (en) 2013-03-15 2017-07-11 Leap Motion, Inc. Determining positional information of an object in space
EP2824913A1 (en) * 2013-07-09 2015-01-14 Alcatel Lucent A method for generating an immersive video of a plurality of persons
US9857971B2 (en) * 2013-12-02 2018-01-02 Industrial Technology Research Institute System and method for receiving user input and program storage medium thereof
KR102209354B1 (ko) * 2014-06-20 2021-01-29 엘지전자 주식회사 영상 표시 기기 및 그의 동작 방법
US10127428B2 (en) * 2014-08-26 2018-11-13 Gingy Technology Inc. Fingerprint identification method and fingerprint identification device
WO2017070274A1 (en) * 2015-10-22 2017-04-27 Covidien Lp Systems and methods for amplifying changes in a region of interest in a surgical environment
US10048769B2 (en) * 2015-11-18 2018-08-14 Ted Selker Three-dimensional computer-aided-design system user interface
CN109640795A (zh) * 2016-07-07 2019-04-16 瑞纳蔚瑧钟表股份公司 用于测量和显示与人的身体活动有联系的数据的方法和系统
CN116109467A (zh) 2016-11-16 2023-05-12 奇跃公司 具有降低功率渲染的混合现实系统
US10586379B2 (en) 2017-03-08 2020-03-10 Ebay Inc. Integration of 3D models
US11320887B2 (en) * 2017-07-06 2022-05-03 Hewlett-Packard Development Company, L.P. Controlling operations of cameras based on power state transitions
US10403046B2 (en) * 2017-10-20 2019-09-03 Raytheon Company Field of view (FOV) and key code limited augmented reality to enforce data capture and transmission compliance
US11675617B2 (en) 2018-03-21 2023-06-13 Toshiba Global Commerce Solutions Holdings Corporation Sensor-enabled prioritization of processing task requests in an environment
TWI749236B (zh) 2018-05-31 2021-12-11 元太科技工業股份有限公司 電泳顯示器系統及開發方法
CN113330478B (zh) * 2019-01-18 2022-07-05 奇跃公司 一种在虚拟、增强或混合现实系统中的方法
US10990840B2 (en) * 2019-03-15 2021-04-27 Scenera, Inc. Configuring data pipelines with image understanding
CN111935488B (zh) * 2019-05-13 2022-10-28 阿里巴巴集团控股有限公司 数据处理方法、信息显示方法、装置、服务器及终端设备
US11048922B2 (en) * 2019-05-24 2021-06-29 Intel Corporation Gesture detection using color segmentation
CN112241670B (zh) * 2019-07-18 2024-03-01 杭州海康威视数字技术股份有限公司 图像处理方法及装置
US11792499B2 (en) 2021-10-21 2023-10-17 Raytheon Company Time-delay to enforce data capture and transmission compliance in real and near real time video
US11696011B2 (en) 2021-10-21 2023-07-04 Raytheon Company Predictive field-of-view (FOV) and cueing to enforce data capture and transmission compliance in real and near real time video
WO2023154045A1 (en) * 2022-02-09 2023-08-17 Innopeak Technology, Inc. Real-time 3d hand data collection and marking
US11700448B1 (en) 2022-04-29 2023-07-11 Raytheon Company Computer/human generation, validation and use of a ground truth map to enforce data capture and transmission compliance in real and near real time video of a local scene

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040189720A1 (en) * 2003-03-25 2004-09-30 Wilson Andrew D. Architecture for controlling a computer using hand gestures
CN101359367A (zh) * 2008-09-11 2009-02-04 西安理工大学 一种基于四边形骨架结构的静态手势特征描述方法
CN102081918A (zh) * 2010-09-28 2011-06-01 北京大学深圳研究生院 一种视频图像显示控制方法及视频图像显示器
US20110221666A1 (en) * 2009-11-24 2011-09-15 Not Yet Assigned Methods and Apparatus For Gesture Recognition Mode Control
US20110299774A1 (en) * 2008-04-22 2011-12-08 Corey Mason Manders Method and system for detecting and tracking hands in an image
US20120069168A1 (en) * 2010-09-17 2012-03-22 Sony Corporation Gesture recognition system for tv control
US20120093360A1 (en) * 2010-10-19 2012-04-19 Anbumani Subramanian Hand gesture recognition
US20120262486A1 (en) * 2011-04-15 2012-10-18 Sony Computer Entertainment Europe Limited System and method of user interaction for augmented reality

Family Cites Families (83)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4724543A (en) * 1985-09-10 1988-02-09 Beckman Research Institute, City Of Hope Method and apparatus for automatic digital image analysis
GB9019538D0 (en) * 1990-09-07 1990-10-24 Philips Electronic Associated Tracking a moving object
JPH06503695A (ja) * 1991-10-07 1994-04-21 イーストマン コダック カンパニー 映画製作用の特殊効果ジョブの構成要素を配列するための合成インタフェース
US5877897A (en) * 1993-02-26 1999-03-02 Donnelly Corporation Automatic rearview mirror, vehicle lighting control and vehicle interior monitoring system using a photosensor array
JP3823333B2 (ja) * 1995-02-21 2006-09-20 株式会社日立製作所 動画像の変化点検出方法、動画像の変化点検出装置、動画像の変化点検出システム
JPH0954883A (ja) * 1995-08-11 1997-02-25 Toshiba Corp 既知物体の進入検出方法およびその進入検出装置
US5715325A (en) * 1995-08-30 1998-02-03 Siemens Corporate Research, Inc. Apparatus and method for detecting a face in a video image
US6115482A (en) * 1996-02-13 2000-09-05 Ascent Technology, Inc. Voice-output reading system with gesture-based navigation
US5912721A (en) * 1996-03-13 1999-06-15 Kabushiki Kaisha Toshiba Gaze detection apparatus and its method as well as information display apparatus
US5892856A (en) * 1996-12-23 1999-04-06 Intel Corporation Method of presence detection using video input
US6236736B1 (en) * 1997-02-07 2001-05-22 Ncr Corporation Method and apparatus for detecting movement patterns at a self-service checkout terminal
US6445409B1 (en) * 1997-05-14 2002-09-03 Hitachi Denshi Kabushiki Kaisha Method of distinguishing a moving object and apparatus of tracking and monitoring a moving object
US6067125A (en) * 1997-05-15 2000-05-23 Minerva Systems Structure and method for film grain noise reduction
US7196720B2 (en) * 1998-03-06 2007-03-27 Intel Corporation Method and apparatus for powering on an electronic device with a video camera that detects motion
US6301370B1 (en) * 1998-04-13 2001-10-09 Eyematic Interfaces, Inc. Face recognition from video images
US6404900B1 (en) * 1998-06-22 2002-06-11 Sharp Laboratories Of America, Inc. Method for robust human face tracking in presence of multiple persons
JP3828349B2 (ja) * 2000-09-27 2006-10-04 株式会社日立製作所 移動体検出測定方法、その装置および移動体検出測定プログラムを記録した記録媒体
US7242421B2 (en) * 2000-11-10 2007-07-10 Perceptive Network Technologies, Inc. Methods of establishing a communications link using perceptual sensing of a user's presence
US20020085738A1 (en) * 2000-12-28 2002-07-04 Peters Geoffrey W. Controlling a processor-based system by detecting flesh colors
FR2820927B1 (fr) * 2001-02-15 2003-04-11 Thomson Multimedia Sa Procede et dispositif de detection de fiabilite d'un champ de vecteurs mouvement
US7181081B2 (en) * 2001-05-04 2007-02-20 Legend Films Inc. Image sequence enhancement system and method
US7027054B1 (en) 2002-08-14 2006-04-11 Avaworks, Incorporated Do-it-yourself photo realistic talking head creation system and method
US7274387B2 (en) * 2002-10-15 2007-09-25 Digicomp Research Corporation Automatic intrusion detection system for perimeter defense
US8745541B2 (en) * 2003-03-25 2014-06-03 Microsoft Corporation Architecture for controlling a computer using hand gestures
JP4401727B2 (ja) 2003-09-30 2010-01-20 キヤノン株式会社 画像表示装置及び方法
EP1671216B1 (en) * 2003-10-09 2016-12-07 Honda Motor Co., Ltd. Moving object detection using low illumination depth capable computer vision
AU2004233453B2 (en) * 2003-12-03 2011-02-17 Envysion, Inc. Recording a sequence of images
NZ536913A (en) * 2003-12-03 2006-09-29 Safehouse Internat Inc Displaying graphical output representing the topographical relationship of detectors and their alert status
JP4227561B2 (ja) 2004-06-03 2009-02-18 キヤノン株式会社 画像処理方法、画像処理装置
US7436981B2 (en) * 2005-01-28 2008-10-14 Euclid Discoveries, Llc Apparatus and method for processing video data
US8724891B2 (en) * 2004-08-31 2014-05-13 Ramot At Tel-Aviv University Ltd. Apparatus and methods for the detection of abnormal motion in a video stream
US7796827B2 (en) * 2004-11-30 2010-09-14 Hewlett-Packard Development Company, L.P. Face enhancement in a digital video
US9760214B2 (en) * 2005-02-23 2017-09-12 Zienon, Llc Method and apparatus for data entry input
US7996771B2 (en) * 2005-06-17 2011-08-09 Fuji Xerox Co., Ltd. Methods and interfaces for event timeline and logs of video streams
WO2007033352A2 (en) * 2005-09-12 2007-03-22 3Vr Security, Inc. Storage of video analysis data for real-time alerting and forensic analysis
US8019170B2 (en) * 2005-10-05 2011-09-13 Qualcomm, Incorporated Video frame motion-based automatic region-of-interest detection
CN101341494B (zh) 2005-10-05 2013-03-06 高通股份有限公司 基于视频帧运动的自动关注区检测
KR101006668B1 (ko) 2005-12-28 2011-01-10 후지쯔 가부시끼가이샤 Tv 전화 기능의 촬영 화상 처리 절환 장치
US7634108B2 (en) * 2006-02-14 2009-12-15 Microsoft Corp. Automated face enhancement
JP4618166B2 (ja) * 2006-03-07 2011-01-26 ソニー株式会社 画像処理装置、画像処理方法、およびプログラム
KR100776801B1 (ko) * 2006-07-19 2007-11-19 한국전자통신연구원 화상 처리 시스템에서의 제스처 인식 장치 및 방법
CN101536032A (zh) * 2006-11-02 2009-09-16 皇家飞利浦电子股份有限公司 图像识别的装置及方法
US7971156B2 (en) * 2007-01-12 2011-06-28 International Business Machines Corporation Controlling resource access based on user gesturing in a 3D captured image stream of the user
US7831063B2 (en) * 2007-02-19 2010-11-09 Laughlin Richard H Small event detector in presence of clutter
TWI377055B (en) 2007-08-10 2012-11-21 Ind Tech Res Inst Interactive rehabilitation method and system for upper and lower extremities
JP4492697B2 (ja) * 2007-12-28 2010-06-30 カシオ計算機株式会社 撮像装置、及び、プログラム
US8284249B2 (en) * 2008-03-25 2012-10-09 International Business Machines Corporation Real time processing of video frames for triggering an alert
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
US9904845B2 (en) * 2009-02-25 2018-02-27 Honda Motor Co., Ltd. Body feature detection and human pose estimation using inner distance shape contexts
CN101551732A (zh) 2009-03-24 2009-10-07 上海水晶石信息技术有限公司 带有交互功能的增强现实的方法及其系统
WO2010113929A1 (ja) * 2009-03-31 2010-10-07 日本電気株式会社 追尾対象判定装置、追尾対象判定方法、および追尾対象判定プログラム
US20100295782A1 (en) * 2009-05-21 2010-11-25 Yehuda Binder System and method for control based on face ore hand gesture detection
US9417700B2 (en) 2009-05-21 2016-08-16 Edge3 Technologies Gesture recognition systems and related methods
US8428368B2 (en) 2009-07-31 2013-04-23 Echostar Technologies L.L.C. Systems and methods for hand gesture control of an electronic device
TW201113819A (en) * 2009-10-13 2011-04-16 Tatung Co Embedded device capable real-time recognizing the unspecific gesture and its recognizing method
US8625973B2 (en) * 2009-10-30 2014-01-07 Verint Systems, Inc. Method and apparatus for operating a video system
US8405736B2 (en) 2010-04-07 2013-03-26 Apple Inc. Face detection using orientation sensor data
US8379098B2 (en) * 2010-04-21 2013-02-19 Apple Inc. Real time video process control using gestures
US8594482B2 (en) * 2010-05-13 2013-11-26 International Business Machines Corporation Auditing video analytics through essence generation
US20110304541A1 (en) * 2010-06-11 2011-12-15 Navneet Dalal Method and system for detecting gestures
KR101167784B1 (ko) 2010-07-09 2012-07-25 성균관대학교산학협력단 단말기의 후면부 손가락 움직임에 따른 포인터 인식 방법 및 제어 명령어 인식 방법
US8792722B2 (en) 2010-08-02 2014-07-29 Sony Corporation Hand gesture detection
CN101917626A (zh) * 2010-08-20 2010-12-15 浙江大学 一种基于自适应冗余片嵌入的容错性视频转码方法
WO2012030869A2 (en) * 2010-08-30 2012-03-08 Apple Inc. Multi-image face-based image processing
US8817087B2 (en) 2010-11-01 2014-08-26 Robert Bosch Gmbh Robust video-based handwriting and gesture recognition for in-car applications
WO2012139242A1 (en) 2011-04-11 2012-10-18 Intel Corporation Personalized program selection system and method
JP2011165204A (ja) * 2011-04-19 2011-08-25 Fujifilm Corp 顔検出方法およびこれを用いた撮影装置
CN102184021B (zh) 2011-05-27 2013-06-12 华南理工大学 一种基于手写输入和指尖鼠标的电视人机交互方法
CN102270348B (zh) * 2011-08-23 2013-08-07 中国科学院自动化研究所 基于视频流的对变形手势进行跟踪的方法
US8811675B2 (en) * 2012-03-30 2014-08-19 MindTree Limited Circular object identification system
US8855369B2 (en) * 2012-06-22 2014-10-07 Microsoft Corporation Self learning face recognition using depth based tracking for database generation and update
US8885885B2 (en) * 2012-10-05 2014-11-11 International Business Machines Corporation Multi-cue object association
US20140157209A1 (en) * 2012-12-03 2014-06-05 Google Inc. System and method for detecting gestures
US8761448B1 (en) * 2012-12-13 2014-06-24 Intel Corporation Gesture pre-processing of video stream using a markered region
US8805017B2 (en) * 2012-12-13 2014-08-12 Intel Corporation Gesture pre-processing of video stream to reduce platform power
US9104240B2 (en) * 2013-01-09 2015-08-11 Intel Corporation Gesture pre-processing of video stream with hold-off period to reduce platform power
US9036866B2 (en) * 2013-01-28 2015-05-19 Alliance For Sustainable Energy, Llc Image-based occupancy sensor
US9129155B2 (en) * 2013-01-30 2015-09-08 Aquifi, Inc. Systems and methods for initializing motion tracking of human hands using template matching within bounded regions determined using a depth map
US9158381B2 (en) * 2013-02-25 2015-10-13 Honda Motor Co., Ltd. Multi-resolution gesture recognition
US9292103B2 (en) * 2013-03-13 2016-03-22 Intel Corporation Gesture pre-processing of video stream using skintone detection
KR101480750B1 (ko) * 2014-06-26 2015-01-12 (주)유디피 모션 검출 장치 및 방법
US9245187B1 (en) * 2014-07-07 2016-01-26 Geo Semiconductor Inc. System and method for robust motion detection
US20160073029A1 (en) * 2014-09-07 2016-03-10 Guy MARKOVITZ Method and system for creating a video

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040189720A1 (en) * 2003-03-25 2004-09-30 Wilson Andrew D. Architecture for controlling a computer using hand gestures
US20110299774A1 (en) * 2008-04-22 2011-12-08 Corey Mason Manders Method and system for detecting and tracking hands in an image
CN101359367A (zh) * 2008-09-11 2009-02-04 西安理工大学 一种基于四边形骨架结构的静态手势特征描述方法
US20110221666A1 (en) * 2009-11-24 2011-09-15 Not Yet Assigned Methods and Apparatus For Gesture Recognition Mode Control
US20120069168A1 (en) * 2010-09-17 2012-03-22 Sony Corporation Gesture recognition system for tv control
CN102081918A (zh) * 2010-09-28 2011-06-01 北京大学深圳研究生院 一种视频图像显示控制方法及视频图像显示器
US20120093360A1 (en) * 2010-10-19 2012-04-19 Anbumani Subramanian Hand gesture recognition
US20120262486A1 (en) * 2011-04-15 2012-10-18 Sony Computer Entertainment Europe Limited System and method of user interaction for augmented reality

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
CHEN F S ET AL.: "Hand gesture recognition using a real-time tracking method and hidden Markov models", 《IMAGE AND VISION COMPUTING》 *
HONEYWELL: "Camera-Based VMD Configuration for Honeywell IP Cameras and MAXPRO NVRs Application Note", 《HTTP:HONEYWELLVIDEO.COM/DOCUMENTS/800-12166-A_VMD_CONFIGURATION_APP_NOTE.PDF》 *
KRUEGLE, HERMAN: "CCTV Surveillance: Video Practices and Technology (2)", 《BUTTERWORTH-HEINEMANN》 *
孙莉红 等: "基于肤色评价的人手定位与跟踪", 《武汉工业学院学报》 *
田巍 等: "基于HSV色彩空间的自适应肤色检测", 《计算机工程与应用》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105678211A (zh) * 2015-12-03 2016-06-15 广西理工职业技术学院 一种人体动态特征的智能识别系统
CN109074469B (zh) * 2016-04-18 2021-08-24 讯宝科技有限责任公司 条形码扫描和确定尺寸
CN109588063A (zh) * 2016-06-28 2019-04-05 英特尔公司 嵌入姿势的视频
CN109923501A (zh) * 2016-11-01 2019-06-21 香港科技大学 用于设备交互的空中手指指向检测
CN110178368A (zh) * 2017-01-31 2019-08-27 惠普发展公司,有限责任合伙企业 基于所接收的信息的视频变焦控制
CN110178368B (zh) * 2017-01-31 2021-12-14 惠普发展公司,有限责任合伙企业 基于所接收的信息的视频变焦控制
CN107688389A (zh) * 2017-08-25 2018-02-13 北京金恒博远科技股份有限公司 Vr抓取动作的优化方法及装置
CN107688389B (zh) * 2017-08-25 2021-08-13 北京金恒博远科技股份有限公司 Vr抓取动作的优化方法及装置
CN110337027A (zh) * 2019-07-11 2019-10-15 北京字节跳动网络技术有限公司 视频生成方法、装置及电子设备

Also Published As

Publication number Publication date
CN107272883B (zh) 2021-03-23
CN107272883A (zh) 2017-10-20
CN104798104B (zh) 2018-08-21
TWI498772B (zh) 2015-09-01
US9720507B2 (en) 2017-08-01
CN108958487A (zh) 2018-12-07
EP2932471A4 (en) 2016-10-26
WO2014093347A1 (en) 2014-06-19
EP3217359A1 (en) 2017-09-13
US20140168084A1 (en) 2014-06-19
US8761448B1 (en) 2014-06-24
US20150015480A1 (en) 2015-01-15
CN108958487B (zh) 2023-04-14
US10146322B2 (en) 2018-12-04
TW201435652A (zh) 2014-09-16
EP2932471A1 (en) 2015-10-21
US20180314340A1 (en) 2018-11-01
CN108958487B8 (zh) 2023-06-23
US10261596B2 (en) 2019-04-16
US20170205893A1 (en) 2017-07-20

Similar Documents

Publication Publication Date Title
CN104798104B (zh) 使用标记区域对视频流的手势预处理
CN104050443B (zh) 使用肤色检测的视频流的姿势预处理
CN103916647B (zh) 采用拖延期的视频流的姿势预处理来减少平台功率
US8805017B2 (en) Gesture pre-processing of video stream to reduce platform power
Betancourt et al. The evolution of first person vision methods: A survey
US10671841B2 (en) Attribute state classification
Teng et al. A hand gesture recognition system based on local linear embedding
CN110135497B (zh) 模型训练的方法、面部动作单元强度估计的方法及装置
CN112101329B (zh) 一种基于视频的文本识别方法、模型训练的方法及装置
CN111797867A (zh) 系统资源优化方法、装置、存储介质及电子设备
Suresh et al. Virtual Mouse Implementation using Color Pointer Detection
CN111274946A (zh) 一种人脸识别方法和系统及设备
Shukla et al. Looking through your smartphone screen to steal your pin using a 3d camera
CN116360603A (zh) 基于时序信号匹配的交互方法、设备、介质及程序产品
CN117725244A (zh) 数据搜索方法、装置、介质及设备
CN115209197A (zh) 一种图像处理方法、装置及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant