CN106062673A - 使用姿势来控制基于计算的设备 - Google Patents

使用姿势来控制基于计算的设备 Download PDF

Info

Publication number
CN106062673A
CN106062673A CN201580010739.3A CN201580010739A CN106062673A CN 106062673 A CN106062673 A CN 106062673A CN 201580010739 A CN201580010739 A CN 201580010739A CN 106062673 A CN106062673 A CN 106062673A
Authority
CN
China
Prior art keywords
equipment
posture
image
user
painting canvas
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.)
Pending
Application number
CN201580010739.3A
Other languages
English (en)
Inventor
H·特贝尔
M·尼尔松
R·瓦芬
J·皮恩丁
A·克里米尼西
I·穆纳辛哈
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN106062673A publication Critical patent/CN106062673A/zh
Pending legal-status Critical Current

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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/012Head tracking input arrangements
    • 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/002Specific input/output arrangements not covered by G06F3/01 - G06F3/16
    • G06F3/005Input arrangements through a video camera
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/141Systems for two-way working between two video terminals, e.g. videophone
    • H04N7/147Communication arrangements, e.g. identifying the communication as a video-communication, intermediate storage of the signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems
    • 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/16Sound input; Sound output
    • G06F3/165Management of the audio stream, e.g. setting of volume, audio stream path

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

用于基于在摄像头的预先确定的范围内做出的姿势来控制基于计算的设备的系统和方法,其中,预先确定的范围是摄像头的视域的子集。在预先确定的范围以外做出的任何姿势都被忽略,并且不导致基于计算的设备执行任何动作。在一些示例中,姿势用于控制在视频会议会话中实现的绘图画布。在这些示例中,单个摄像头可以用于生成视频会议用户的图像,所述图像用于检测预先确定的范围内的姿势,并向视频会议会话的其它各方提供用户的可视图像。

Description

使用姿势来控制基于计算的设备
背景技术
在过去的几十年已经对自然用户接口(NUI)进行了大量研究。NUI包括的新的基于姿势的接口,其使用接触或非接触式交互或整个身体来实现与计算设备的丰富交互。在传统的NUI系统中,一个或多个摄像头用于捕捉用户的图像,以便检测和跟踪用户的身体部分(例如,手、手指)来识别由检测到的身体部分执行的姿势。任何检测到的姿势然后可以用于控制计算设备。
下文描述的实施例不限于解决用于控制计算设备的已知系统的任何或全部缺点的实现。
发明内容
下面给出了对本公开内容的简化的概括以便向读者提供基本理解。该发明内容不是本公开内容的详尽概述,并且其不标识本说明书的关键/重要元素或描绘本说明书的范围。其唯一目的是用简化的形式呈现本文中公开的概念的选择,作为稍后给出的更详细说明的前序。
用于基于在摄像头的预先确定的范围内做出的姿势来控制基于计算的设备的系统和方法,其中,预先确定的范围是捕摄像头的视域的子集。在预先确定的范围以外做出的任何姿势都被忽略,并且不导致基于计算的设备执行任何动作。在一些示例中,姿势用于控制在视频会议会话中实现的绘图画布。在这些示例中,单个摄像头可以用于生成视频会议用户的图像,其用于检测预先确定的范围内的姿势,并向视频会议会话的其它各方提供用户的可视图像。
由于通过参考结合附图考虑的以下具体实施方式,许多附带特征变得更好理解,因此许多附带特征将更加容易领会。
附图说明
根据考虑到附图阅读的以下具体实施方式将更好地理解本说明书,在附图中:
图1是用于使用姿势来控制基于计算的设备的系统的示意图;
图2是示例捕捉设备和图1的示例基于计算的设备的框图;
图3是图1的预先确定的范围的示意图;
图4是用于使用图1的系统来检测姿势的示例方法的流程图;
图5是虚拟画布的示意图;
图6是用于生成可以使用图1的系统的输出来控制的虚拟画布的示例
基于计算的设备框图;
图7是示出了图5的虚拟画布的位置的一系列示意图;
图8是示出了出现在用户显示器上的图5的虚拟画布的一系列示意图;
图9是示出了图5的虚拟画布上的绘图元素的生成的一系列示意图;
图10是示出了图5的虚拟画布上的凝聚效果的一系列示意图;
图11是示出了图5的虚拟画布上的亲吻效果的一系列示意图;以及
图12是可以在其中实现控制系统和/或方法的实施例的示例性的基于
计算的设备的框图。
相同的参考标号用于表示附图中相同的部件。
具体实施方式
结合附图在下文中提供的具体实施方式旨在作为所给出示例的描述,而不是旨在表示可以构造或使用所给出的示例的唯一形式。该描述阐述了示例的功能和用于构造和操作示例的步骤的序列。然而,相同或等效的功能和序列可以由不同的示例实现。
如上所述,在传统的NUI系统中,一个或多个摄像头用于捕捉用户的图像,以便检测和跟踪用户的身体部分(例如,手、手指)来识别由检测到的身体部分执行的姿势。任何检测到的姿势然后可以用于控制计算设备。然而,这样的系统可能检测到摄像头的视域中的其它对象,这些对象可能被误解为使用者的身体部分,这可能导致检测到错误的姿势。这在视频会议系统中尤其是问题,在所述视频会议系统中,用户或视频会议的一方的身后可能发生摄像头视域内的动作,或者用户他/她本身可能正在做出不意在被用作姿势输入的动作(如使用计算设备的触摸屏)。该动作可能(a)被错误地识别为可以导致计算设备执行并非有意的命令的姿势输入;并且(b)浪费用于确定和跟踪是不相关输入的对象的资源。因此,需要控制针对相关对象分析的区域。
本文中描述的是用于使用仅在捕捉设备的预先确定的范围(即,三维量)内执行的姿势来控制基于计算的设备的系统和方法,其中,预先确定的范围是捕捉设备的视域的子集。本文中使用术语子集来意指项目的一部分,并且并不包括整个项目。系统从捕捉设备接收场景的图像流,其分析该图像流来识别预先确定的范围内的场景中的对象。一旦系统确定了预先确定的范围内的对象,其跟踪这些对象以确定预先确定的范围内的对象的位置和/或运动并且识别由这些对象执行的任何姿势。所确定的位置和识别出的姿势然后可用于控制基于计算的设备。
在位置和姿势信息可以用于控制视频会议应用的情况下。具体而言,可以使用位置和姿势信息来控制视频会议应用内的绘图画布。在这些情况下,捕捉设备可以包括用于生成用户的单个图像流的单个摄像头。该单个图像流可以用于(a)识别对象和检测姿势;以及(b)向视频会议的其它各方提供用户的可视图像。
如上所述,通过限制可以做出姿势的区域,降低了可能导致基于计算的设备执行并非有意的命令的错误识别的姿势的数量(因此使得姿势识别更加鲁棒);并且资源不被浪费用于识别和跟踪不是相关输入的对象。
虽然给出的示例在本文中描述和示出为在视频会议系统中实现,但本文中描述的系统是作为示例而非限制提供的。本领域技术人员将明白:给出的示例适用于各种不同系统中的应用。
现在参考图1,图1示出了用于使用捕捉设备102的视域内的预先确定的范围中执行的姿势来控制基于计算的设备104的示例系统100。
图1中示出的基于计算的设备104是具有单独的处理器组件106和显示屏幕108的传统的桌面式计算机;然而,本文中描述的方法和系统可以同样应用于基于计算的设备104,其中,处理器组件106和显示屏幕108诸如在膝上型计算机和平板计算机中那样集成在一起。
捕捉设备102生成场景的图像,该图像由捕捉设备102或基于计算的设备104来解释或分析,以便检测在捕捉设备102的视域内的预先确定的范围中做出的姿势。参考图3更加详细地描述了预先确定的范围。预先确定的范围中检测到的姿势然后可以用于控制基于计算的设备104的操作。虽然图1的系统100包括单个捕捉设备102,但本文中描述的方法和原理可以同样应用于具有多个捕捉设备102的控制系统。
在图1中,捕捉设备102安装在显示屏幕108的顶部,并指向用户110。然而,在其它示例中,捕捉设备102可以嵌入到环境中的任何其它合适的对象中或安装于其上(例如,在显示屏幕108之内)。
在操作中,可以使用由捕捉设备102生成的图像来跟踪对象(例如,用户的面部或手),以便对象的位置和运动可以由捕捉设备102或基于计算的设备104解释为执行可以用于控制由基于计算的设备104执行或在基于计算的设备104上显示的应用的姿势。
系统100还可以包括在基于计算的设备104通信中允许用户通过传统手段来控制基于计算的设备104的其它输入设备,诸如,键盘或鼠标。
现在参考图2,图2示出了可以用于图1的系统100的捕捉设备102的示意图。捕捉设备102包括用于捕捉场景的图像的至少一个成像传感器202。成像传感器202可以是被配置为捕捉场景的深度信息的深度摄像头。深度信息可以是包括深度值(即,与和深度摄像头与位于该图像元素处的项目或对象之间的距离相关的深度图像的每个图像元素(例如,像素)相关联的值)的深度图像的形式。
可以使用任何合适的技术(包括例如,渡越时间、结构化光线、立体图像等等)来获得深度信息。
捕捉到的深度图像可以包括捕捉到的场景的2维(2-D)区域,其中,该2-D区域中的每个图像元素代表来自成像传感器202的捕捉到的场景中的对象的诸如长度或距离的深度值。
在一些情况下,成像传感器202可以是两个或更多个物理上分隔开的摄像头的形式,其从不同的角度观看场景,以便获得可以被解析以生成深度信息的视觉立体数据。
捕捉设备102还可以包括被布置为以深度信息可以由成像传感器202认定的方式来照射场景的发射器204。
捕捉设备102还可以包括至少一个处理器206,其与成像传感器202(例如,深度摄像头)和发射器204(如果存在)通信。处理器206可以是通用微处理器或专用信号/图像处理器。处理器206被布置为:执行用于控制成像传感器202和发射器204(如果存在)的指令来捕捉包括深度信息或包括可用于生成深度信息的信息在内的图像信息。如同下文更加详细描述的,处理器206可以可选地被布置为:执行对这些图像和信号的处理。
捕捉设备102还可以包括:被布置为存储用于由处理器206执行的指令、由成像传感器202捕捉的图像或帧或任何合适的信息、图像等等的存储器208。在一些示例中,存储器208可以包括随机存取存储器(RAM)、只读存储器(ROM)、高速缓存器、闪存器、磁盘或任何其它合适的存储组件。存储器208可以是与处理器206通信的单独组件或集成到处理器206中。
捕捉设备102还可以包括与处理器206通信的输出接口210。输出接口210被布置为:经由通信链路向基于计算的设备104提供数据。通信链路可以是,例如,有线连接(例如,USBTM、FirewireTM、EthernetTM或类似物)和/或无线连接(例如,WiFiTM、BluetoothTM或类似物)。在其它示例中,输出接口210可以与一个或多个通信网络(例如,互联网)对接,并经由这些网络向基于计算的设备104提供数据。
基于计算的设备104可以包括:被配置为执行与对象跟踪和/或姿势识别相关的一种或多种功能的对象跟踪和姿势识别引擎212。参考图4描述了可以由对象跟踪和姿势识别引擎212执行的示例功能。例如,对象跟踪和姿势识别引擎212可以被配置为:识别图像中的某些对象(例如,用户的面部、手和/或手指)。一旦识别出了对象,姿势识别引擎212使用与形成对象的图像元素相关联的深度信息来确定对象是否在捕捉设备102的预先确定的范围中。如果确定对象在预先确定的范围中,则跟踪对象来确定对象的位置和/或运动,并且确定姿势是否由对象做出或执行。如果确定对象不在预先确定的范围中,那么不跟踪对象并且不检测姿势。因此,预先确定的范围以外的对象不导致姿势将由对象跟踪和姿势识别引擎212输出,即使姿势是由对象做出或执行的。
应用软件214也可以在基于计算的设备104上执行,并使用对象跟踪和姿势识别引擎212的输出(例如,预先确定的范围中的对象的位置以及在预先确定的范围中执行的任何检测到的姿势)来对其进行控制。例如,在一些情况下,应用软件214可以是可以使用由预先确定的范围中的用户做出的姿势来控制的视频会议应用。具体而言,在一些示例中,对象跟踪和姿势识别引擎212的输出可以用于控制视频会议会话中使用的绘图画布。将参考图5至图11更加详细地对其进行描述。
现在参考图3,图3示出了由图1的系统100使用的预先确定的范围。捕捉设备102具有视域(FOV)302,其是捕捉设备102可见的场景的区域。在图3中,FOV 302是线条301与303之间的区域。通常,当捕捉设备102生成图像时,其包括FOV 302之内的所有项目或对象的表示。如上所述,图1的系统100用于检测FOV 302内的预先确定的范围304之内的对象以及在上述范围中执行的姿势。
预先确定的范围304是与捕捉设备102分隔开(即,不相邻或远离)FOV 302的子集或部分。在一些情况下,预先确定的范围304是三维量。例如,预先确定的范围304可以是由两个距离d1和d2定义的三维量,其中,d1是距离捕捉设备102的第一距离,而d2是距离捕捉设备的第二距离,其中,d1小于d2。在这些示例中,预先确定的范围304包括与捕捉设备102的距离在d1与d2之间的任何东西。
在一些示例中,预先确定的范围304是固定、硬编码或预先定义的(例如,d1和d2硬编码在应用中)。在其它示例中,预先确定的范围304可以是动态选择的。例如,在一些情况下,用户可以执行校准程序,其被设计为选择适当的预先确定的范围。在其它情况下,系统100可以被配置为:基于例如用户的头的位置来自动选择合适的预先确定的范围。
如图3中所示,在一些情况下,d1和d2可以是固定或动态选择的,以便预先确定的范围304是用户110与捕捉设备102之间的中距。在对象跟踪和姿势识别引擎212的输出用于控制视频会议应用(如同下面更详细描述的)的绘图画布的情况下,将预先确定的范围304定义为用户110与捕捉设备102之间的中距允许系统忽略并非意为控制姿势的(例如,靠近用户身体的动作)用户的动作以及意在与基于计算的设备104进行另一种方式的交互的用户的动作(例如,通过与触摸屏进行交互)。例如,这会允许用户(i)进行交互来与和基于计算的设备104相关联的触摸屏进行交互,以便在不造成绘图画布的改变的情况下控制视频会议应用的一些方面(例如,结束或开始呼叫);以及(ii)使用预先确定的范围304中做出的姿势来编辑绘图画布中的绘图。
预先确定的范围304对于基于计算的设备104上运行的所有应用来说可以是相同的,或者对于不同的应用可以是不同的。作为示例,由约为0.1m的第一距离d1和约为0.4m的第二距离d2限定的预先确定的范围304已经证明对于一些应用(如视频会议应用)很有效。
现在参考图4,图4示出了方法400,其可以由图2的对象跟踪和姿势识别引擎212执行用于检测在预先确定的范围304中做出的姿势。在框402处,对象跟踪和姿势识别引擎212从捕捉设备102接收场景的图像流(例如,视频流)。图像流包括深度信息或可以从其获得深度信息的信息。例如,可以使用由本申请人在与本申请同日提交的,题为“DEPTH SENSINGUSING AN RGB CAMERA”的美国专利申请中概述的方法,从RGB图像流获得深度信息。
如“DEPTH SENSING USING AN RGB CAMERA”专利申请中所描述的,可以通过向经训练的机器学习组件应用RGB图像以产生深度图来从RGB图像获得深度信息。深度图包括表示由RGB图像中的图像元素表示的表面与RGB摄像头之间的绝对距离或真实世界距离的RGB图像的每个图像元素的深度值。
在一些示例中,经训练的机器学习组件可以包括一个或多个使用RGB图像和相应的地面实况深度图的配对训练的随机决策林。可以根据真实物理设置(例如,使用RGB摄像头和深度摄像头)生成RGB图像和深度图的配对。还可以,或者替换地,使用计算机图形技术来合成生成RGB图像和深度图的配对。在其它示例中,可以使用其它合适的机器学习组件,诸如但不限于:深神经网络、支持向量回归元和高斯(Gaussian)过程回归元。
一旦接收到图像流,方法400前进到框404。
在框404处,对象跟踪和姿势识别引擎212对图像流进行分析,以便检测场景内的对象。在一些情况下,对象跟踪和姿势识别引擎212可以被配置为:仅检测预先定义的列表的对象,如用户的面部、手和/或手指。可以使用任何已知的用于检测图像中的对象的方法,诸如但不限于:相关或机器学习方法(例如,决策林)。一旦跟踪和姿势识别引擎212在图像流中检测到对象,则方法400前进到框406。
在框406处,对象跟踪和姿势识别引擎212确定在框404中识别出的对象或一些对象是否在FOV 302的预先确定的范围304内。在一些情况下,如果与对象相关联的图像元素具有特定范围中的深度值(例如,d1<深度值<d2),则对象跟踪和姿势识别引擎212可以确定该对象在预先确定的范围304内。在一些情况下,对象跟踪和姿势识别引擎212可以被配置为:将与形成识别出的对象的图像元素相关联的深度值的平均值和均值与最大和最小深度值(d2和d1)进行比较。如上所述,与图像元素相关联的深度值可以由捕捉设备102(例如,在捕捉设备102是深度摄像头的情况下)生成,或者可以由捕捉设备生成的图像信息生成(例如,根据使用上述DEPTH SENSING USING AN RGB IMAGE(使用RGB图像的深度感测)方法的RGB图像的R、G、B值)。
如果确定识别出的对象中的至少一个对象在预先确定的范围304内,则方法400前进到框408。然而,如果识别出的对象中没有对象在预先确定的范围304内,则方法400回到框402。
在框408处,对象跟踪和姿势识别引擎212跟踪预先确定的范围304中的对象来确定它们的位置和/或形状,以便识别由对象做出的姿势。在一些情况下,对象跟踪和姿势识别引擎212监测在框404和406中识别出的对象,以便分配可用于识别姿势的对象状态和部件标签。例如,对象跟踪和姿势识别引擎212可以被配置为:识别对象的部件(例如,对于手来说,对象跟踪和姿势识别引擎212可以被配置为:为手的每个图像元素分配识别例如手掌、手指和/或拇指的部件标签),以及对象的状态或位置(例如,对于手来说,对象跟踪和姿势识别引擎212可以被配置为:为手的每个图像元素分配识别手是打开/闭合;手掌朝上/朝下和/或在指示/没有指示的状态标签)。在这些情况下,状态和/或部件标签可由手工定义或使用机器学习来学到。然后,方法400前进到框410。
在框410处,对象跟踪和姿势识别引擎212确定识别出的对象中是否有任何对象已经执行或做出了姿势的预先确定的集合中的一种姿势。在向跟踪的对象分配了状态和/或状态标签的情况下,检测对象执行或做出了姿势的预先确定的集合中的一种姿势可以包括:确定对象在多个顺序图像上是否具有一系列部件/状态组合。在其它情况下,检测对象执行或做出了某个姿势可以基于对象的运动的量。例如,当对象跟踪和姿势识别引擎212确定对象(例如,用户的手指)已经停止移动或具有很小的运动时,可以检测到下笔姿势(即,开始绘制姿势);而当对象跟踪和姿势识别引擎检测到对象(例如,用户的手指)已经从捕捉设备102快速移开时,可以检测到提笔姿势(即,停止绘制姿势)。
如果已经确定对象中的至少一个对象已经执行或做出了姿势的预先确定的集合中的姿势中的一种,那么方法400前进到框412,在框412处,输出对象的位置和检测到的姿势。然后可以将检测到的姿势传递到另一个应用,该应用使用该姿势来控制该应用的操作。例如,检测到的姿势可用于控制视频会议应用和/或操作系统的操作。然而,在确定了没有对象执行或做出预先确定的姿势中的一种姿势的情况下,方法400然后前进到框414,在框414处仅输出对象的位置。在输出了位置和/或检测到的姿势之后,方法400回到框406。
在一些情况下,对象跟踪和姿势识别引擎212可以仅输出姿势信息。这可以用于知道姿势在预先确定的范围304内的哪里执行并不相关的应用。在一些情况下,对象跟踪和姿势识别引擎212可以被配置为还输出对象的检测到的运动。在其它情况下(如上所述),运动信息可以用于检测姿势是否已经做出并且因此并入姿势输出。
在一些情况下,一旦对象跟踪和姿势识别引擎212在预先确定的范围304中检测到对象,对象跟踪和姿势识别引擎212可以确定对象进入预先确定的范围304的速度。如果初始进入速度在第一预先确定的阈值之上,则一旦预先确定的范围中识别出的对象的速度下降到第二预先确定的阈值以下,则对象跟踪和姿势识别引擎212可以仅识别和/或输出由所述对象做出的姿势。因此,由以较快的速度进入预先确定的范围的对象做出的任何姿势被忽略,并且不用于控制基于计算的设备,直到该对象慢下来。
虽然描述了方法400以某种顺序执行该方法的方面,但在其它示例中,可以以另一种合适的顺序来执行该方法的方面。例如,在一些情况下,对象跟踪和姿势检测引擎212可以被配置为:首先分析深度信息,并且仅分析由捕捉设备102生成的图像的、具有在预先确定的范围内的深度(即,具有在特定范围内的深度值(例如,d1<深度值<d2))的那些图像元素,以便识别对象和由那些对象做出的姿势。
执行方法400的方面的顺序可以基于系统100中使用的硬件。例如,如果捕捉设备102包括生成深度图的深度摄像头,则系统100可以设计为:丢弃在预先确定的范围304以外的图像的图像元素,然后仅对预先确定的范围304内的那些图像元素执行跟踪和姿势识别。或者,如果捕捉设备102包括生成可以从其获得深度信息的RGB图像的RGB摄像头,则系统100可以被配置为:首先分析RGB图像来识别对象和由识别出的对象做出的姿势,并且然后对识别出的对象执行深度阈值化。在这些情况下,识别出的对象的特性(例如,检测到的手、手指或面部的大小)可以用于辅助确定对象的深度。
在一些情况下,由上述方法和系统输出的位置和姿势信息用于控制允许用户创建绘图元素的虚拟和透明绘图画布。现在参考图5,图5示出了可由上述方法和系统输出的姿势控制的虚拟透明画布502。因为绘图画布502是透明的,因此可以在其上覆盖另一个图像或视频流504。这允许用户创建在其它图像或视频流504前方或在其之上显示的绘图元素和其它图像效果。
在虚拟透明绘图画布502用于视频会议系统或应用的情况下,虚拟透明绘图画布502可以显示在下列各项的前方:接收的图像或视频流(即,视频会议应用的另一方的图像或视频流)、发送的图像或视频流(即,用户的图像或视频流)、接收或发送的图像或视频流的一部分、或者接收和发送的图像二者。在这些情况下,绘图画布502可以被配置为:模拟可由一方或一方以上控制和/或修改的视频会议的各方之间的真实物理窗口。在一些情况下,捕捉设备102包括用于捕捉用户的单个图像流的单个摄像头。单个图像流用于检测预先确定的范围中的对象和姿势,以及向视频会议的其它各方提供用户的图像。
在一些情况下,虚拟透明绘图画布502可以包括:使用户明白绘图画布502活跃或当前正在被显示的边界或类似物506。在绘图画布502被配置为模拟真实物理窗口的情况下,可以例如,呈现边界502以便类似于物理玻璃窗的边缘。边界502可以另外或者替换地被配置为类似于结霜。
虚拟透明绘图画布502还可以包括允许用户从绘图工具中选择和/或激活绘图工具的绘图工具条508。例如,绘图工具条508可以允许用户从多个形状、颜色、线条粗细、操作工具等等中进行选择。绘图工具条508可以永久出现在绘图画布502上,或者可以在接收某些输入(例如,姿势)时激活和/或解除激活。将参考图9更加详细地描述这样的绘图工具条508的使用。
现在参考图6,图6示出了被配置为使用上述姿势识别系统和方法来控制视频会议系统或应用中的透明绘图画布502的示例基于计算的设备104。在该示例中,基于计算的设备104包括图2的对象跟踪和姿势识别引擎212,其可以被配置为执行用于分析从捕捉设备102接收的图像以识别由捕捉设备102的FOV 302的预先确定的范围304中的用户110做出的姿势的图4的方法400。在该示例中,对象跟踪和姿势识别引擎212可以被配置为:识别和跟踪用户110的面部、手和/或手指,以识别由用户的面部、手和/或手指做出的姿势。
如上所述,在一些情况下,由对象跟踪和姿势识别引擎212用来检测姿势的同一个图像流还用于向视频会议的其它各方提供用户110的图像。在这些情况下,可以向视频编码器602提供由捕捉设备102生成的图像流。视频编码器602使用合适的视频编解码对接收的图像进行编码,然后经由例如数据通信网络向其它各方/各方发送经编码的图像。进行接收的基于计算的设备对接收的编码图像进行解码,并向接收方显示经解码的图像。向视频会议的其它各方发送的用户110的图像在本文中被称为发送的图像。
虚拟绘图画布内容管理器604接收对象跟踪和姿势识别引擎212的输出,并且基于所接收的对象位置和姿势信息来确定应该在绘图画布502上执行什么动作(如果有的话)。例如,内容管理器604可以保持跟踪绘图画布502的状态,并将接收的对象位置和姿势信息与绘图画布502的状态进行比较,以便确定从对象跟踪和姿势识别引擎212接收的对象位置和姿势信息是否导致在绘图画布上执行动作。如果内容管理器604确定应该在绘图画布502上执行动作,则内容管理器604向虚拟绘图画布生成器606发送事件以便实现动作,以及向事件编码器608发送事件用于对事件进行编码和向视频会议的其它各方发送经编码的事件,以便动作也可以在其它各方的显示器上实现。事件可以包括下列各项中的一个或多个:姿势名称、对象(例如,手、面部、手指)三维(3D)位置和/或角度、向下投影到2D图像上的相应的位置和角度、2D和3D运动信息、强度(例如,嘴张开的程度)、时间戳、置信值(指示其被检测的良好的程度)。
在绘图画布502可由视频会议的任意方修改的情况下,虚拟绘图画布内容管理器604还可以经由事件解码器610从视频会议的其它用户/方接收事件信息。事件解码器610从视频会议的其它各方中的一方接收经编码的事件,对接收的事件进行解码,并向内容管理器604提供经解码的事件。在这些情况下,事件信息可以包括允许事件与接收机端处的视频同步的时间戳信息。
虚拟绘图画布生成器606接收由捕捉设备102生成的用户的图像、视频会议的其它方/各方的图像、以及由内容管理器604生成的事件信息,并使用该信息来生成向用户显示的完整的图像。完整的图像包括呈现的绘图画布,其并入或实现由从内容管理器604接收的事件识别的,与其它方/各方的图像或视频流(即,接收的图像或视频流)和/或用户的图像(即,发送的图像或视频流)合并的动作。然后可以向显示屏幕108提供完整的图像用于对用户110显示。
尽管图6的示例基于计算机的设备被配置为:使用与用于发送各方的图像(例如,视频)的信道分开的单独的发送和接收事件信道,在视频会议的各方之间发送绘图画布事件以激活绘图画布的变化,但在其它示例中,基于计算机的设备可以被配置为:将事件信息嵌入视频信道(即,用于发送和接收视频会议的各方的图像的信道)中。在这些示例中的任何示例中,向视频会议的所有各方发送描述要在绘图画布上执行的动作的事件信息,并且由该方的本地设备来呈现或生成并入或实现特定动作的绘图画布。
在其它示例中,绘图画布502可由进行发送的基于计算机的设备来生成,并且然后作为单独的经编码的图像发送到其它各方。在其它示例中,完整输出图像可由进行发送的基于计算机的设备来生成,并且然后作为整体图像发送到其它各方。在这些示例中,进行发送的基于计算机的设备基于其从内容管理器604接收的事件信息来生成或呈现绘图画布,并且将生成或呈现的绘图画布与所发送的图像和/或所接收的图像进行合并以生成完整的输出图像,并向视频会议的其它各方发送该完整的输出图像。在这些示例中的任何一个示例中,在各方之间不发送事件信息,而是在各方之间发送呈现的绘图画布或呈现的完整图像。这些示例可能更适合用于非协作式绘图(例如,当仅有一个用户能够控制绘图画布时),因为创建并入由一个以上的用户做出的改变的单个实时绘图画布是困难的。
虽然图6示出了在与用户110相关联的本地基于计算机的设备上实现的姿势检测和图像处理,但在其它示例中,本文中描述的过程中的一个或多个过程可由云服务执行。然而,在这样的情况下,会仅向云服务提供经编码的图像(即,视频)而不是由捕捉设备102生成的原始图像(例如,视频),这可能降低图像处理和呈现的质量。
在一些情况下,图6的基于计算的设备还可以包括接收表示由置于用户附近的麦克风检测到的音频的音频信号的声音检测引擎(未示出)。声音检测引擎分析接收到的音频信号来检测预先确定的声音。如果声音检测引擎检测到预先确定的声音中的一种声音,则其向内容管理器604输出标识检测到的声音的信息。内容管理器可以使用标识检测到的声音的信息来(a)单独基于该信息来控制基于计算的设备;和/或(b)基于该信息和从对象跟踪和姿势识别引擎212接收的信息来控制基于计算的设备。例如,内容管理器可以使用声音信息来帮助决定鉴于从对象跟踪和姿势识别引擎212接收到的信息,是否应该在绘图画布中做出动作。
如上所述,两方或更多方之间的视频会议通常包括至少两个视频或图像流。第一视频或图像流提供用户110的图像或视频。第一视频或图像流在本文中将也被称为发送的图像或视频流。第一视频或图像流由用户本地的图像捕捉设备102生成,并且从用户的基于计算的设备发送到其它各方的计算设备,以便其它各方能看见用户的图像或视频。
第二视频或图像流提供视频会议的另一方的图像或视频。第二视频或图像流由该方本地的图像捕捉设备生成,并从该方本地的基于计算的设备发送到用户的基于计算的设备。向用户显示第二视频,以便用户能看到另一方的图像。针对视频会议的每个远程方可以有一个第二视频或图像流。第二视频在本文中将也被称为接收的图像或视频流。
可以在发送和接收的图像或视频流中的一个或多个流的前方呈现绘图画布502。现在参考图7,图7示出了绘图画布502相对于接收和发送的图像或视频流702和704的示例位置。在一些情况下,如图7A中所示,仅向用户呈现接收的图像或视频流702,并且在整个接收的图像或视频流702的前方呈现绘图画布502。
在其它情况下,如图7B-7C中所示,向用户示出接收的图像或视频流702和发送的图像或视频流704。在这些情况下,可以在下列各项中呈现绘图画布502:仅在接收的视频或图像流702前方(未示出);在整个发送的视频或图像流704(图7B)前方;在接收的图像或视频流702和发送的图像或视频流704二者前方(图7C);在接收的图像或视频流702的部分的前方(图7D);或者在发送的图像或视频流704的部分的前方(未示出)。虽然图7B至7D示出了呈现的视频流702和704以便在接收的视频的右上角看到发送的视频或图像流704,但可以用另一种合适的方式向用户呈现视频流702和704(例如,并排地)。在发送的视频或图像流704的前方示出绘图画布502的情况下,由绘图画布502产生的效果可以与在物理镜子上绘图和/或与物理镜子进行交互类似。
在一些情况下,当绘图画布502首先由用户110激活时,绘图画布502可以是动画的(例如,其可以被配置为从一个边缘滑动到位)以便向用户表示绘图画布502已经被激活。这在示出绘图画布502显示从图像504的底部滑动到位的图8中示出。在其它情况下,其它的动画可用于表示绘图画布502的激活。在一些情况下,当绘图画布解除激活时,可以使用类似或相关的动画。例如,绘图画布可以被配置为:一旦其被用户解除激活,其显示为从一个边缘(例如,底部边缘)划出。绘图画布502可由预先确定的范围304中的用户做出的姿势或由任何其它用户输入(例如,键盘/鼠标输入)来激活和/或解除激活。
一旦绘图画布502被激活,用户可以使用姿势来向绘图画布502添加绘图元素,或者编辑绘图画布502上的绘图元素。在一些情况下,用户可以通过做出开始的绘图姿势和/或通过其它输入手段提供这样的姿势,通过表示他们希望开始自由形式的绘图,能够添加自由形式的绘图元素。例如,用户可以通过以下操作来表示他们希望开始自由形式的绘图:按压键盘上的某个键(例如,空格键);在预先确定的范围302中做出姿势来按压或选择绘图画布的元素(例如,选择绘图工具条中的元素);发出简短独特的声音(如点击);开始发出拉长的独特的声音(例如,模仿喷绘气枪的“psssh”声音);在预先确定的范围302中做出敲击姿势;或者它们的任意组合。
一旦用户表示了他们希望开始自由形式的绘图,他们可以使用其手指来绘制形状。系统将跟踪用户的手指(或手指的一部分(例如,指尖))并复制用户的手指在绘图画布502上做出的形状。
系统可以向用户提供他们的手指相对于绘图画布的当前位置的反馈。特定反馈可以基于绘图画布与发送和接收的图像或视频流之间的关系。如图7B中所示,在绘图画布502呈现在发送的图像或视频流704之上的情况下,然后向用户的反馈可以是用户的手指在绘图画布上的显示。这允许输出显示用作允许用户观看他/她自己的表情和动作的镜子。
然而,如图7A和7C中所示,在绘图画布502呈现在接收的图像或视频流702之上的情况下,系统可以被配置为:通过使用光标或其它对象可视地指示用户的手指相对于绘图画布502的当前位置。或者,用户的手指的当前位置可以示为向接收到的图像或视频流702的半透明反射。为了实现该半透明反射,系统可以被配置为:对属于用户的手指的接收的图像的图像元素进行分割,并且使呈现的反射关注这些图像元素。或者,反射的透明度可以基于到指尖绘图位置的距离。例如,透明度可以随着到指尖绘图位置的距离而增加。在这些情况下,当在接收的图像或视频流702之上呈现绘图画布时,用户可以在与绘图画布相同的窗口中看到另一方的反应和表情。
在声音由用户生成的同时通过对拉长的独特声音(例如,喷绘气枪的“psssh”声音)做出拉长的独特声音改变而用户发起了绘图的情况下,可以改变具有即时效果的绘图的特性。例如,拉长的独特声音的音调/音高和/或音量可以由用户改变。在该示例中,声音改变可以影响当时屏幕上所呈现的喷涂的颜色、尺寸或不透明度。具体而言,增加所生成的拉长的声音的音量可以产生与移动喷雾罐更靠近正在被喷涂的表面的等效或类似的改变的喷涂效果。
一旦用户结束了生成其自由形式的绘图,他们可以通过做出结束绘图姿势和/或通过其它输入手段提供这样的指示来表示自由形式的绘图的结束。例如,用户可以通过以下操作来表示他们希望结束自由形式的绘图:按压键盘上的某个键(例如,空格键);在预先确定的范围304中做出姿势来按压或选择绘图画布的元素(例如,选择绘图工具条中的元素);发出简短独特的声音(如点击);结束拉长的独特的声音(例如,喷漆气枪的“psssh”声音);在预先确定的范围304中做出抬起其手指的姿势;或者它们的任意组合。
在一些情况下,用户还能够向绘图画布502添加预先绘制的形状。预先绘制的形状可以从菜单、工具栏或通过在预先确定的范围中做出预先确定的姿势和/或经由其它输入手段(例如,按压键盘上的键,或发出特定声音)提供某个输入来激活的其它选择工具选择。从激活的选择工具中的选择可以通过在预先确定的范围中执行预先确定的姿势和/或经由其它输入手段提供某个输入来类似地做出。预先绘制的形状可以包括诸如圆形、矩形和三角形的基本几何形状和/或更加复杂的形状。
在一些情况下,用户可以在绘图元素在绘图画布502中被创建或添加到绘图画布502之前和/或之后对绘图元素(例如,自由形式的绘图或预先绘制的形状)的特征(例如,颜色,线条粗细)进行调整。例如,特征可以从菜单、工具栏或通过在预先确定的范围中做出预先确定的姿势和/或经由其它输入手段(例如,按压键盘上的键,或发出特定声音)提供某个输入来激活的其它选择工具中选择。从激活的选择工具中的选择可以通过在预先确定的范围中执行预先确定的姿势和/或经由其它输入手段提供某个输入来类似地做出。允许绘图元素的特征的调整的选择工具可以是与用于向绘图画布502添加预先绘制的形状的选择工具相同或不同的选择工具。
在一些情况下,用户可能能够通过在预先确定的范围中执行某些姿势来操作绘图画布502内的绘图元素或绘图画布502本身。例如,用户可以能够通过在绘图元素处做出指点姿势然后将其手指移动到绘图元素的新的位置来移动绘图元素(例如,自由形式的绘图或预先绘制的形状)。用户还可以能够通过分别在预先确定的范围内执行挤压姿势或扩张姿势来放大或缩小绘图画布502的某个区域。用户还可以通过在预先确定的范围内执行抓取或指点姿势来展开或滚动绘图画布502的内容。在一些情况下,绘图画布502可以在概念上大于在其中显示绘图画布后面的图像或视频流的窗口(例如,在其中显示接收的图像或视频流702的窗口)的限制。在这些情况下,诸如缩放和展开的操作姿势可用于确定当前显示的是绘图画布502的哪个部分。
替换地或此外,用户可以能够通过从菜单、工具栏或通过在预先确定的范围中做出预先确定的姿势和/或经由其它输入手段(例如,按压键盘上的键,或发出特定声音)提供某个输入来激活的其它选择工具中选择操纵工具来操纵(例如,移动、缩放、展开或滚动)绘图元素或绘图画布502。从激活的选择工具中的选择可以通过在预先确定的范围中执行预先确定的姿势和/或经由其它输入手段提供某个输入来类似地做出。
在一些情况下,用户可以能够通过在绘图元素的全部或部分上方挥动他们的手来去除绘图画布502中的绘图元素(例如,自由形式的绘图或预先绘制的形状)的全部或部分。
在图9中示出了添加和编辑绘图画布502上的绘图元素的示例。具体而言,图9A示出了添加到了绘图画布502的自由形式的绘图元素(例如,太阳)902;图9B示出了添加到绘图画布502的预先绘制的对象(例如,矩形)904;并且图9C示出了被移动到绘图画布502中的不同位置之后的预先绘制的对象904。
在绘图画布502被设计为用作视频会议各方之间的窗口的情况下,系统可以被配置为:当用户110在预先确定的范围304中做出某些姿势时在绘图画布502上产生类似窗口的效果。参考图10和图11描述了示例效果。具体而言,图10示出了凝聚效果。图10A示出了置于图像或视频504之上的绘图画布502。如上所述,图像或视频504可以是接收的图像或视频或者发送的图像或视频。当用户发起某些姿势,例如,他们在预先确定的范围304内用他们的嘴和/或面部做出吹气姿势时,系统可以被配置为:在绘图画布(图10B)上呈现半透明的凝聚的云1002。吹气的方向和力度可以用于控制凝聚1002的位置和强度。在一些示例中,凝聚还可以或者替换地由其它姿势触发,如用户执行将其手掌置于绘图画布502上的姿势。在凝聚由这样的姿势触发的情况下,凝聚可以具有围绕用户手的轮廓的形状的形式。
在一些情况下,凝聚1002可以为用户提供临时绘图区域。例如,用户可以能够通过在预先确定的范围304内做出的姿势来以与用户可以用其手指在真实窗户上的凝聚中绘制形状类似的方式在凝聚中进行绘制。例如,如图10C中所示,用户可以用其手指绘制某个形状(例如,心形),这导致形状(例如,心形)1004绘制在凝聚中(即,去除了凝聚1002的一部分以显露该形状)。形状1004可以呈现在凝聚1002中,以便其看起来像是由用户在实际的凝聚中绘制的。
系统可以被配置为:呈现凝聚1002使其显示为以真实的凝聚的方式逐渐褪去。图10D示出了部分褪去之后凝聚1002和凝聚中的对象(例如,心形)1004。系统可以被配置为:在预先确定的时间段内逐渐褪去凝聚1002和其中的任何形状1004。预先确定的时间段可以是固定的,或者可以是动态选择的。例如,在一些情况下,预先确定的时间段可以基于吹气的估计力度。在其它情况下,预先确定的时间段可以基于外部温度和/或湿度。外部温度和/或湿度信息可以是已知的,或者可以是使用关于用户的位置的信息来获得的。
图11示出了另一个示例类似窗口的效果。具体而言,图11示出了亲吻效果。图11A示出了置于图像或视频504之上的绘图画布502。如上所述,图像或视频504可以是接收的图像或视频或者发送的图像或视频。当用户发起某些姿势,例如,他们在预先确定的范围304内用他们的嘴和/或面部做出亲吻姿势时,系统可以被配置为:在绘图画布502(图11B)上呈现嘴唇的图像1102。例如,嘴唇的图像可以呈现为看起来像口红或湿气(例如,凝聚)。
在绘图画布502被设计为用作视频会议各方之间的窗口的情况下,系统可以被配置为:实现下列效果中的一种或多种效果以增强真实窗口的效果。
具体而言,系统可以被配置为:响应于在预先确定的范围中做出的某些姿势来产生某些声音,以便进一步模拟真实窗口。例如,在一些情况下,系统可以被配置为:当系统在预先确定的范围中检测到敲击姿势或叩击姿势时,生成敲击声或叩击声。
系统还可以被配置为:通过在绘图画布502中呈现静态或动态半透明反射来增强效果。例如,系统可以被配置为:将用户的半透明反射呈现在绘图画布502上。在这些示例中,系统可以被配置为:当呈现反射时,关注明亮、高对比度的细节,以便不模糊绘图画布502后面的图像或视频504。
系统还可以被配置为:使用用户的面部的位置来控制在绘图画布502后面显示的图像或视频流504(例如,接收的图像或视频流702)与绘图画布502之间的小的位置视差偏移。例如,用户的面部可以使用跟踪和姿势识别引擎212来跟踪,并用于调整绘图画布502与绘图画布后面的图像或视频流504之间的感知到的三维距离。这创造了绘图画布502的位置或方向似乎随着用户移动其面部来发生变化的效果。当其它用户正在绘图画布502上进行绘图时,作为另一个用户的手指与绘图元素之间的距离的偏移是可见的。为了避免这种效果,在用户正在绘图画布502上进行绘图的同时可以重置偏移。
系统还可以允许用户记录、保存和/或再使用绘图画布的内容。例如,系统可以允许用户进行下列各项操作中的一项或多项:记录所呈现的视频流(包括用户图像结合所呈现的绘图画布的视频流,或者仅包括所呈现的绘图画布的视频流);打印绘图画布中的内容的静止图像(具有或不具有背景图像);将绘图画布的静止图像保存为视频通信摘要或工件的一部分;将绘图画布中的内容缩放和封装成个性化卡片并发送到另一个用户;将绘图画布502中的内容显示到非透明背景上,并且复制绘图画布502中的内容以在其它应用中再使用。
图12示出了可以实现为任何形式的计算和/或电子设备,并且本文中描述的系统和方法的实施例可以在其中实现的示例性基于计算的设备104的各个组件。
基于计算的设备104包括一个或多个处理器1202,处理器1202可以是微处理器、控制器或用于处理计算机可执行指令以控制设备的操作,以便检测由用户做出的手势,并基于检测到的姿势来控制设备的操作的任何其它合适类型的处理器。在一些示例中,例如,在使用片上系统架构的情况下,处理器1202可以包括在硬件(而不是软件或固件)中实现控制基于计算的设备的方法的一部分的一个或多个固定功能块(也被称为加速器)。可以在基于计算的设备处提供包括操作系统1204的平台软件或任何其它合适的平台软件,以便能够在设备上执行应用软件214。
可以使用由基于计算的设备104可访问的任何计算机可读介质来提供计算机可执行指令。计算机可读介质可以包括,例如,计算机存储介质(如存储器1206)和通信介质。计算机存储介质(如存储器1206)包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括但不限于:RAM、ROM、EPROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光学存储、磁带盒、磁带、磁盘存储或其它磁存储设备、或者可用于存储用于由基于计算的设备访问的信息的任何其它非传输介质。与此相反,通信介质可以体现计算机可读指令、数据结构、程序模块或调制数据信号中的其它数据(如载波波形)或其它传输机制。如本文中定义的,计算机存储介质不包括通信介质。因此,本质上,计算机存储介质不应该被解释为传播信号本身。所传播的信号可以存在于计算机存储介质中,但所传播的信号本质上不是计算机存储介质的示例。虽然计算机存储介质(存储器1206)示为在基于计算的设备104之内,但将理解的是:存储可以是分布式的或位于远程位置的和经由网络或其它通信链路(例如,使用通信接口1208)访问的。
基于计算的设备104还包括输入/输出控制器1210,其被布置为:向可能与基于计算的设备104分离或集成的显示设备108(图1)输出显示信息。显示信息可以提供图形用户接口。输入/输出控制器1210还被配置为:接收和处理来自一个或多个设备(如用户输入设备(例如,鼠标、键盘、摄像头、麦克风或其它传感器))的输入。在一些示例中,用户输入设备可以检测语音输入、用户姿势或其它用户动作,并且可以提供自然用户接口(NUI)。在实施例中,如果显示设备108是触摸敏感显示设备,则显示设备108还可以用作用户输入设备。输入/输出控制器1210还可以向显示设备以外的设备(例如,本地连接的打印设备(图12中未示出))输出数据。
输入/输出控制器1210、显示设备108以及可选地用户输入设备可以包括NUI技术,其使得用户能够以自然的方式与基于计算的设备进行交互,不受由诸如鼠标、键盘、遥控器等等的输入设备施加的人为约束。可以提供的NUI技术的示例包括但不限于依赖于下列各项的那些技术:语音和/或语言识别、触摸和/或手写笔识别(触摸敏感显示器)、屏幕上和邻近屏幕的姿势识别、空中姿势、头眼跟踪、语音和语言、视觉、触觉、姿势和机器智能。可以使用的NUI技术的其它示例包括:意图和目标理解系统、使用深度摄像头(诸如立体摄像头系统、红外摄像头系统、RGB摄像头系统和这些的组合)的运动姿势检测系统,使用加速计/陀螺仪的运动姿势检测、面部识别、3D显示、头、眼和注视跟踪、融入式增强现实和虚拟现实系统,以及用于使用电场传感电极(EEG和相关方法)来感测大脑活动的技术。
替换地或此外,本文中描述的功能至少部分地可以由一个或多个硬件逻辑组件来执行。举例而非限制性地,可使用的硬件逻辑组件的示例性类型包括:现场可编程门阵列(FPGA)、程序专用集成电路(ASIC)、程序专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑器件(CPLD)和图形处理单元(GPU)。
术语‘计算机’或‘基于计算的设备’在本文中用于指代具有处理能力以便其可以执行指令的任何设备。本领域技术人员将认识到:这样的处理能力被并入许多不同的设备,并且因此,术语‘计算机’和‘基于计算的设备’分别包括PC、服务器、移动电话(包括智能电话)、平板计算机、机顶盒、媒体播放器、游戏控制台、个人数字助理以及大量其它设备。
本文中描述的方法可以由有形存储介质中机器可读形式的软件来执行,例如,当程序在计算机上运行并且在计算机程序可以在计算机可读介质上体现的情况下,适用于执行本文中描述的方法中的任意方法的所有步骤的包括计算机程序代码单元的计算机程序的形式。有形存储介质的示例包括计算机存储设备,其包括诸如磁盘、拇指驱动器、存储器等的计算机可读介质,并且不包括传播的信号。传播的信号可以存在于有形存储介质中,但所传播的信号本质上不是有形存储介质的示例。软件可适用于在串行处理器或并行处理器上执行,以便方法步骤可以以任何合适的顺序或同时执行。
这确认了软件可以是有价值的、可单独交易的商品。意在包括运行在“哑的”或标准硬件上或控制“哑的”或标准硬件的软件来执行所期望的功能。还意在包括“描述”或限定硬件的配置的软件(如HDL(硬件描述语言)软件),用于设计硅芯片,或用于配置通用可编程芯片来执行所期望的功能。
本领域技术人员将认识到:用于存储程序指令的存储设备可以分布在整个网络中。例如,远程计算机可以存储描述为软件的过程的示例。本地或终端计算机可以访问远程计算机,并下载部分或所有软件来运行程序。或者,本地计算机可以根据需要来下载软件,或者执行本地终端处的一些软件指令以及远程计算机(或计算机网络)处的一些软件。本领域技术人员还将认识到:通过使用本领域技术人员已知的传统技术,软件指令的所有或部分可以由诸如DSP、可编程逻辑阵列等的专用电路来执行。
如本领域技术人员将理解的:可以在不失去所寻求的效果的前提下,扩展或改变本文中给出的任何范围或设备的值。
虽然以特定于结构特征和/或方法动作的语言对发明主题进行了描述,但应当理解的是:所附权利要求书中定义的发明主题并不一定受限于上述具体特征或动作。而是上述具体特征或动作作为实现权利要求书的示例形式而公开的。
将理解的是:上述益处和优点可以涉及一个实施例或者可以涉及若干实施例。实施例不局限于解决所述问题中的任何或所有问题的那些实施例或者具有所述益处和优点中的任何或所有益处和优点的那些实施例。还将理解的是:提及“某个”项目指的是那些项目中的一个或多个。
本文中描述的方法的步骤可以用任何合适的次序来执行,或者在适当的情况下同时执行。另外,在不脱离本文中描述的发明主题的精神和范围的前提下,可以从这些方法中的任何方法中删除各个模块。上述示例中的任何示例的各个方面可以与所描述的其它示例中的任何示例的方面组合,以便在不失去所寻求的效果的前提下形成其它示例。
术语‘包括’在本文中用于意指包括方法模块或所确定的元素,但这些模块或元素不包括排他性列表和可以包含额外模块或元素的方法或装置。
将理解的是:上述描述是仅通过示例的方式给出的,并且本领域技术人员可以做出各种修改。上述说明、示例和数据提供了对结构和示例性实施例的使用的完整描述。虽然已经在上文中以某种具体程度或参考一个或多个个体实施例对各个实施例进行了描述,但本领域技术人员可以在不脱离本说明书的精神或范围的前提下对所公开的实施例做出许多改变。

Claims (10)

1.一种控制基于计算的设备的方法,所述方法包括:
在处理器处接收来自捕捉设备的场景的图像流;
分析所述图像流来识别所述捕捉设备的预先确定的范围内的所述场景中的一个或多个对象,所述预先确定的范围是所述捕捉设备的视域的子集,所述子集与所述捕捉设备分隔开;
跟踪一个或多个识别出的对象来识别由所述一个或多个识别出的对象执行的一个或多个姿势;以及
使用所述一个或多个识别出的姿势来控制所述基于计算的设备。
2.根据权利要求1所述的方法,其中,所述一个或多个识别出的姿势用于控制在所述基于计算的设备上运行的视频会议应用。
3.根据权利要求1所述的方法,其中,所述预先确定的范围是三维量。
4.根据权利要求3所述的方法,其中,所述三维量不是矩形。
5.根据权利要求1所述的方法,其中,所述一个或多个识别出的姿势用于控制下列两项或下列两项中的一项:在所述基于计算的设备上运行的绘图应用;
在所述基于计算的设备上运行的操作系统。
6.根据权利要求5所述的方法,还包括:接收音频流;分析所述音频流来识别一个或多个预先确定的声音;以及使用所述一个或多个识别出的姿势和一个或多个识别出的声音来控制所述绘图应用。
7.根据权利要求6所述的方法,其中,所述一个或多个预先确定的声音用于发起所述绘图应用中的绘图。
8.根据权利要求5所述的方法,其中,所述一个或多个对象包括用户的面部,并且对所述用户的面部的跟踪实现对吹气姿势的识别。
9.根据权利要求1所述的方法,还包括:确定特定识别出的对象进入所述预先确定的范围的速度;以及响应于确定进入速度超过第一预先确定的阈值,忽略由所述特定识别出的对象执行的任何姿势,直到所述特定识别出的对象的所述速度下降到第二预先确定的阈值以下为止。
10.一种用于处理图像流的系统,所述系统包括:被配置用于以下操作的基于计算的设备:
接收来自捕捉设备的场景的图像流;
分析所述图像流来识别所述捕捉设备的预先确定的范围内的所述场景中的一个或多个对象,所述预先确定的范围是所述捕捉设备的视域的子集,所述子集与所述捕捉设备分隔开;
跟踪一个或多个识别出的对象来识别由所述一个或多个识别出的对象执行的一个或多个姿势;以及
使用所述一个或多个识别出的姿势来控制所述基于计算的设备。
CN201580010739.3A 2014-02-28 2015-02-26 使用姿势来控制基于计算的设备 Pending CN106062673A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
GB1403586.9A GB2524473A (en) 2014-02-28 2014-02-28 Controlling a computing-based device using gestures
GB1403586.9 2014-02-28
US14/242,649 2014-04-01
US14/242,649 US20150248167A1 (en) 2014-02-28 2014-04-01 Controlling a computing-based device using gestures
PCT/US2015/017623 WO2015130867A2 (en) 2014-02-28 2015-02-26 Controlling a computing-based device using gestures

Publications (1)

Publication Number Publication Date
CN106062673A true CN106062673A (zh) 2016-10-26

Family

ID=50490594

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580010739.3A Pending CN106062673A (zh) 2014-02-28 2015-02-26 使用姿势来控制基于计算的设备

Country Status (6)

Country Link
US (2) US20150248167A1 (zh)
EP (1) EP3111300A2 (zh)
CN (1) CN106062673A (zh)
GB (1) GB2524473A (zh)
TW (1) TW201539305A (zh)
WO (1) WO2015130867A2 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114785977A (zh) * 2021-02-05 2022-07-22 联想(新加坡)私人有限公司 使用计算机视觉控制视频数据内容
WO2024160105A1 (zh) * 2023-02-01 2024-08-08 北京字跳网络技术有限公司 交互方法、装置、电子设备和存储介质

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012068713A (ja) * 2010-09-21 2012-04-05 Sony Corp 情報処理装置、および情報処理方法
WO2015180124A1 (zh) * 2014-05-30 2015-12-03 华为技术有限公司 终端设备显示方法和终端设备
US9773155B2 (en) * 2014-10-14 2017-09-26 Microsoft Technology Licensing, Llc Depth from time of flight camera
GB201419441D0 (en) * 2014-10-31 2014-12-17 Microsoft Corp Modifying video call data
US10191553B2 (en) * 2015-03-12 2019-01-29 Dell Products, L.P. User interaction with information handling systems using physical objects
US11194398B2 (en) * 2015-09-26 2021-12-07 Intel Corporation Technologies for adaptive rendering using 3D sensors
EP3395066B1 (en) * 2015-12-25 2022-08-03 BOE Technology Group Co., Ltd. Depth map generation apparatus, method and non-transitory computer-readable medium therefor
US9609230B1 (en) 2015-12-30 2017-03-28 Google Inc. Using a display as a light source
CN105812865A (zh) * 2016-03-14 2016-07-27 联想(北京)有限公司 一种信息处理方法及电子设备
US20170293363A1 (en) * 2016-04-07 2017-10-12 Jeffrey Shawn McLaughlin System And Methods For Eye Gaze Triggered Control Of Appliance By Hand Gesture
US10525355B2 (en) 2016-11-01 2020-01-07 Htc Corporation Method, device, and non-transitory computer readable storage medium for interaction to event in virtual space
US11723579B2 (en) 2017-09-19 2023-08-15 Neuroenhancement Lab, LLC Method and apparatus for neuroenhancement
CN107831896B (zh) * 2017-11-07 2021-06-25 Oppo广东移动通信有限公司 音频信息播放方法、装置、存储介质及电子设备
CN107888845B (zh) * 2017-11-14 2022-10-21 腾讯数码(天津)有限公司 一种视频图像处理方法、装置及终端
US11717686B2 (en) 2017-12-04 2023-08-08 Neuroenhancement Lab, LLC Method and apparatus for neuroenhancement to facilitate learning and performance
EP3731749A4 (en) 2017-12-31 2022-07-27 Neuroenhancement Lab, LLC NEURO-ACTIVATION SYSTEM AND METHOD FOR ENHANCING EMOTIONAL RESPONSE
US11189379B2 (en) * 2018-03-06 2021-11-30 Digital Surgery Limited Methods and systems for using multiple data structures to process surgical data
US10990226B2 (en) 2018-03-08 2021-04-27 International Business Machines Corporation Inputting information using a virtual canvas
CN110324554B (zh) * 2018-03-28 2021-08-13 北京富纳特创新科技有限公司 视频通信装置及方法
US11364361B2 (en) 2018-04-20 2022-06-21 Neuroenhancement Lab, LLC System and method for inducing sleep by transplanting mental states
US11416077B2 (en) * 2018-07-19 2022-08-16 Infineon Technologies Ag Gesture detection system and method using a radar sensor
US10554921B1 (en) 2018-08-06 2020-02-04 Microsoft Technology Licensing, Llc Gaze-correct video conferencing systems and methods
EP3849410A4 (en) 2018-09-14 2022-11-02 Neuroenhancement Lab, LLC SLEEP ENHANCEMENT SYSTEM AND METHOD
US12026304B2 (en) 2019-03-27 2024-07-02 Intel Corporation Smart display panel apparatus and related methods
US11379016B2 (en) 2019-05-23 2022-07-05 Intel Corporation Methods and apparatus to operate closed-lid portable computers
US11786694B2 (en) 2019-05-24 2023-10-17 NeuroLight, Inc. Device, method, and app for facilitating sleep
US11543873B2 (en) 2019-09-27 2023-01-03 Intel Corporation Wake-on-touch display screen devices and related methods
US11733761B2 (en) 2019-11-11 2023-08-22 Intel Corporation Methods and apparatus to manage power and performance of computing devices based on user presence
US11809535B2 (en) 2019-12-23 2023-11-07 Intel Corporation Systems and methods for multi-modal user device authentication
US11360528B2 (en) 2019-12-27 2022-06-14 Intel Corporation Apparatus and methods for thermal management of electronic user devices based on user activity
TWI747294B (zh) * 2020-05-21 2021-11-21 光時代科技有限公司 遠端建構虛擬場景的系統、方法及非暫存性電腦可讀取記錄媒體
US11893161B2 (en) * 2020-06-01 2024-02-06 National Institute Of Advanced Industrial Science And Technology Gesture recognition based on user proximity to a camera
TWI776491B (zh) * 2020-06-03 2022-09-01 仁寶電腦工業股份有限公司 具有輔助照明功能的電子裝置及其操作方法
US11704626B2 (en) * 2021-07-09 2023-07-18 Prezi, Inc. Relocation of content item to motion picture sequences at multiple devices
US20230109787A1 (en) * 2021-09-24 2023-04-13 Apple Inc. Wide angle video conference
CN114327064A (zh) * 2021-12-29 2022-04-12 北京淳中科技股份有限公司 一种基于手势控制的标绘方法、系统、设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090183125A1 (en) * 2008-01-14 2009-07-16 Prime Sense Ltd. Three-dimensional user interface
US20110080490A1 (en) * 2009-10-07 2011-04-07 Gesturetek, Inc. Proximity object tracker
CN102445986A (zh) * 2010-09-21 2012-05-09 索尼公司 信息处理设备以及信息处理方法
CN102520793A (zh) * 2011-11-30 2012-06-27 苏州奇可思信息科技有限公司 基于手势识别的会议演示交互方法
CN102577368A (zh) * 2009-04-16 2012-07-11 惠普开发有限公司 在虚拟协同系统中传送视觉表示
US20130141630A1 (en) * 2011-12-01 2013-06-06 Sony Corporation Optimal blur matching selection for depth estimation

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5704836A (en) * 1995-03-23 1998-01-06 Perception Systems, Inc. Motion-based command generation technology
US7227526B2 (en) * 2000-07-24 2007-06-05 Gesturetek, Inc. Video-based image control system
US7348963B2 (en) * 2002-05-28 2008-03-25 Reactrix Systems, Inc. Interactive video display system
US8745541B2 (en) * 2003-03-25 2014-06-03 Microsoft Corporation Architecture for controlling a computer using hand gestures
US8537111B2 (en) * 2006-02-08 2013-09-17 Oblong Industries, Inc. Control system for navigating a principal dimension of a data space
JP5430572B2 (ja) * 2007-09-14 2014-03-05 インテレクチュアル ベンチャーズ ホールディング 67 エルエルシー ジェスチャベースのユーザインタラクションの処理
US8482626B2 (en) * 2009-04-07 2013-07-09 Mediatek Inc. Digital camera and image capturing method
US9377857B2 (en) * 2009-05-01 2016-06-28 Microsoft Technology Licensing, Llc Show body position
US9400548B2 (en) * 2009-10-19 2016-07-26 Microsoft Technology Licensing, Llc Gesture personalization and profile roaming
US8659658B2 (en) * 2010-02-09 2014-02-25 Microsoft Corporation Physical interaction zone for gesture-based user interfaces
KR20110123933A (ko) * 2010-05-10 2011-11-16 삼성전자주식회사 휴대단말의 기능 제공 방법 및 장치
US10409851B2 (en) * 2011-01-31 2019-09-10 Microsoft Technology Licensing, Llc Gesture-based search
US8698873B2 (en) * 2011-03-07 2014-04-15 Ricoh Company, Ltd. Video conferencing with shared drawing
US20140049465A1 (en) * 2011-03-28 2014-02-20 Jamie Douglas Tremaine Gesture operated control for medical information systems
US9100544B2 (en) * 2012-06-11 2015-08-04 Intel Corporation Providing spontaneous connection and interaction between local and remote interaction devices
US20140002357A1 (en) * 2012-06-28 2014-01-02 Kopin Corporation Enabling and Disabling Features of a Headset Computer Based on Real-Time Image Analysis
CN104143075A (zh) * 2013-05-08 2014-11-12 光宝科技股份有限公司 应用于电子装置的手势判断方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090183125A1 (en) * 2008-01-14 2009-07-16 Prime Sense Ltd. Three-dimensional user interface
CN102577368A (zh) * 2009-04-16 2012-07-11 惠普开发有限公司 在虚拟协同系统中传送视觉表示
US20110080490A1 (en) * 2009-10-07 2011-04-07 Gesturetek, Inc. Proximity object tracker
CN102445986A (zh) * 2010-09-21 2012-05-09 索尼公司 信息处理设备以及信息处理方法
CN102520793A (zh) * 2011-11-30 2012-06-27 苏州奇可思信息科技有限公司 基于手势识别的会议演示交互方法
US20130141630A1 (en) * 2011-12-01 2013-06-06 Sony Corporation Optimal blur matching selection for depth estimation

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114785977A (zh) * 2021-02-05 2022-07-22 联想(新加坡)私人有限公司 使用计算机视觉控制视频数据内容
WO2024160105A1 (zh) * 2023-02-01 2024-08-08 北京字跳网络技术有限公司 交互方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
US20180224948A1 (en) 2018-08-09
US20150248167A1 (en) 2015-09-03
TW201539305A (zh) 2015-10-16
EP3111300A2 (en) 2017-01-04
WO2015130867A3 (en) 2015-11-12
WO2015130867A2 (en) 2015-09-03
GB2524473A (en) 2015-09-30
GB201403586D0 (en) 2014-04-16

Similar Documents

Publication Publication Date Title
CN106062673A (zh) 使用姿势来控制基于计算的设备
US10866632B2 (en) Interaction engine for creating a realistic experience in virtual reality/augmented reality environments
US20240168602A1 (en) Throwable interface for augmented reality and virtual reality environments
US11392212B2 (en) Systems and methods of creating a realistic displacement of a virtual object in virtual reality/augmented reality environments
Sharp et al. Accurate, robust, and flexible real-time hand tracking
CN104508709B (zh) 使用人体对对象进行动画化
CN105637564B (zh) 产生未知对象的扩增现实内容
Liang et al. Ar in hand: Egocentric palm pose tracking and gesture recognition for augmented reality applications
KR101306221B1 (ko) 3차원 사용자 아바타를 이용한 동영상 제작장치 및 방법
US20130335318A1 (en) Method and apparatus for doing hand and face gesture recognition using 3d sensors and hardware non-linear classifiers
CN107111746A (zh) 根据原始飞行时间图像的模型拟合
CN107291221B (zh) 基于自然手势的跨屏幕自适应精度调整方法及装置
WO2014068550A1 (en) Method and apparatus for developing and playing natural user interface applications
CN103501869A (zh) 手动和基于相机的游戏控制
CN103501868A (zh) 对分开的计算机游戏元素的控制
US11714880B1 (en) Hand pose estimation for machine learning based gesture recognition
US11854308B1 (en) Hand initialization for machine learning based gesture recognition
US20170124762A1 (en) Virtual reality method and system for text manipulation
CN106293099A (zh) 手势识别方法及系统
CN105683868A (zh) 用于空间交互中的额外模态的面部跟踪
Şen et al. A novel gesture-based interface for a VR simulation: Re-discovering Vrouw Maria
Chu et al. A Kinect-based handwritten digit recognition for TV remote controller
US20240061546A1 (en) Implementing contactless interactions with displayed digital content
US20240061496A1 (en) Implementing contactless interactions with displayed digital content
Hsu et al. A multimedia presentation system using a 3D gesture interface in museums

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20161026