CN105593786B - 对象位置确定 - Google Patents

对象位置确定 Download PDF

Info

Publication number
CN105593786B
CN105593786B CN201380080121.5A CN201380080121A CN105593786B CN 105593786 B CN105593786 B CN 105593786B CN 201380080121 A CN201380080121 A CN 201380080121A CN 105593786 B CN105593786 B CN 105593786B
Authority
CN
China
Prior art keywords
light source
equipment
display
illumination
camera
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.)
Active
Application number
CN201380080121.5A
Other languages
English (en)
Other versions
CN105593786A (zh
Inventor
J.N.斯维特泽
A.格鲁内-耶普森
P.维纳
L.M.克泽尔曼
S.S.贝茨曼
C.罗哈斯
高木晶弘
C.贾彦
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
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN105593786A publication Critical patent/CN105593786A/zh
Application granted granted Critical
Publication of CN105593786B publication Critical patent/CN105593786B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/14Measuring arrangements characterised by the use of optical techniques for measuring distance or clearance between spaced objects or spaced apertures
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01VGEOPHYSICS; GRAVITATIONAL MEASUREMENTS; DETECTING MASSES OR OBJECTS; TAGS
    • G01V8/00Prospecting or detecting by optical means
    • G01V8/10Detecting, e.g. by using light barriers
    • G01V8/20Detecting, e.g. by using light barriers using multiple transmitters or receivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1684Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
    • G06F1/1686Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being an integrated camera
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1684Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
    • G06F1/169Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being an integrated pointing device, e.g. trackball in the palm rest area, mini-joystick integrated between keyboard keys, touch pads or touch stripes
    • 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/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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors

Abstract

在实施例中,描述了用于人机交互的设备、方法和存储介质。在实施例中,设备可包含一个或多个光源和相机。通过由相机捕获图像,计算装置可检测三维(3D)交互区域(在其内跟踪用户的对象的位置)内用户的对象的位置。设备可利用多个光源,这些光源可布置在距显示器的不同距离,并且可在不同于图像捕获方向的方向照明对象。设备可选择性地照明各个光源,以便于在朝显示器的方向的对象检测。相机也可与选择性照明同步地捕获图像。可描述并要求保护其它实施例。

Description

对象位置确定
技术领域
本公开涉及数据处理领域,具体地说,涉及与人机交互关联的设备、方法和系统。
背景技术
本文提供的背景描述是为了一般性地呈现本公开的上下文。除非在本文中另有指示,否则在这部分描述的资料不是本申请中权利要求书的现有技术,并且不通过包含在这部分中而被承认为现有技术。
人机交互在传统上已经归类为经由用户与一个或多个输入装置(诸如鼠标、键盘、跟踪球、触摸板等)的物理交互的用户控制。鼠标等实质上已经变成人机交互的必要条件。虽然用户与鼠标等的交互对于用户可能已经变得有点根深蒂固,但交互绝不是自然的或直观的。
附图说明
实施例通过结合附图的如下详细描述将容易理解。为了便于此描述,相似的附图标记标明相似的结构元件。在附图的各图中作为示例而非限制图示了实施例。
图1a和1b是按照各种实施例用于支持人机交互的计算装置的示例。
图2是按照各种实施例由支持人机交互的装置捕获的示例图像。
图3是图示按照各种实施例支持自由触摸交互的计算装置的一个或多个组件的框图。
图4 图示了按照各种实施例用于识别人机交互的示例过程。
图5是按照各种实施例用于控制支持人机交互的装置的照明的示例过程。
图6图示了按照各种实施例用于标识指尖位置的示例过程。
图7图示了按照各种实施例适合于实施本公开各个方面的示例计算环境。
图8图示了按照各种实施例具有配置成使设备能够实施本公开各个方面的指令的示例存储介质。
具体实施方式
描述了用于人机交互的方法、计算机可读存储介质和设备。在实施例中,设备可包含一个或多个光源和相机。通过由相机捕获图像,诸如由一个或多个光源照明,计算装置可在三维(3D)交互区域(在其内跟踪用户的各个对象)内检测用户的对象(例如指尖或其它定点装置,诸如触控笔)的位置。通过跟踪各个对象,实施例也可便于跟踪对象移动的移动 。3D区域的示例可包含显示屏前面的3D区域,显示屏可包含在设备中。该设备还可包含与一个或多个光源和相机耦合并配置成基于由相机捕获的一个或多个图像来确定对象位置的位置确定模块。相机可被布置在设备中,使得它在正交于由显示器定义的平面的方向捕获图像,从而捕获可相对于显示器的位置和方位最优地定大小的图像。
为了支持在朝显示屏的方向(例如在图像捕获的方向)的对象的检测,设备可利用多个光源。这多个光源可布置在设备中距显示器不同距离处,并且可配置成在不同于图像捕获方向的方向照明对象。此外,设备可包含配置成选择性地照明各个光源以便于检测在朝屏幕的方向的对象的照明确定模块。相机可进一步配置成与选择性照明同步地捕获图像,使得捕获的图像可包含仅由多个光源中的一个光源照明的对象的图像。通过比较这些同步的图像,可在多个轴确定对象的位置。为了便于理解,将用户的对象的位置的确定简单地提及为用户指尖位置的确定。然而,如本文所描述的,实施例不限于此。本公开的实施例可确定用户其它身体部位(诸如例如手指和手)以及其它对象(诸如笔和触控笔)的位置。
在如下详细描述中,参考形成其一部分的附图,其中通篇相似的附图标记标明相似的部分,并且其中作为图示,示出了可实施的实施例。要理解到,可利用其它实施例,并且可进行结构或逻辑改变,不脱离本公开的范围。因此,如下详细描述并不被视为限制意义,并且实施例的范围由所附权利要求书以及它们的等同物定义。
各种操作以最有助于理解所要求权利的主题的方式依次描述为多个分立动作或操作。然而,描述的次序不应该被视为暗示这些操作一定是次序相关的。具体地说,这些操作可以不按呈现的次序执行。所描述的操作可按与所描述的实施例不同的次序执行。可执行各种附加操作和/或在附加实施例中可省略所描述的操作。
为了本公开的目的,短语“A和/或B”意思是(A)、(B)或(A 和 B)。为了本公开的目的,短语“A、B和/或C”意思是(A)、(B)、(C)、(A和B)、(A和C)、(B和C)或(A、B和C)。描述可使用“在一个实施例中”或“在实施例中”的短语,它们可各指的是相同或不同实施例中的一个或多个实施例。而且,相对于本公开实施例所使用的术语“包括”、“包含”、“具有”等是同义词。
现在参考图1a和1b,按照各种实施例,图示了用于支持人机交互的计算环境100的示例。如图1a所图示的,计算环境100可包含计算装置102。在各种实施例中,计算装置102可包含便携式计算装置(诸如膝上型计算机或平板电脑)或其它计算装置(诸如台式计算机)。在各种实施例中,计算装置102可包含显示器116以及键盘110。
计算装置102可包含一个或多个相机,诸如相机104。在各种实施例中,相机104可配置成捕获在图像捕获角112内侧的图像。在实施例中,相机104可位于计算装置102中,使得图像捕获角112包围基本上正交于由显示器116定义的平面的图像捕获方向113。在一些实施例中,相机104可贴近显示器116定位。例如,在一些实施例中,相机104可位于显示器116下面(例如在显示器116的底部与键盘110之间)。通过靠近显示器104定位相机,相机104可更好地配置成捕获比相机104的其它布置相对于显示器更鲁棒的图像捕获角。然而,在各种实施例中,由于显示器116相对于键盘110(或计算装置102的其它部分)的角度可能不固定,因此相机110可配置成使得其垂直视野足够大以捕获在屏幕角度范围上的指尖或其它对象的图像。在一些实施例中,相机104可在一个或多个方位或位置是可调整的,诸如考虑变化的操作条件,诸如显示器116的不同用户存在或不同角度。
计算装置102还可包含一个或多个光源106;这些光源106可由计算装置用于照明指尖或其它对象(诸如触控笔),使得相机104可更好地捕获指尖的图像。在各种实施例中,这些光源106可包含用于发射光的各种结构,诸如例如一个或多个发光二极管(LED)。在各种实施例中,光源106可配置成发射用于照明的不可见光。例如,一个或多个光源106可发射来自电磁波谱的近红外部分的光。在一些实施例中,光源106可配置成发射在~800nm与~950nm之间范围内的光。此范围在电磁波谱的可见部分以外,并且其中更高功率的LED在市场上可买到。在此类实施例中,相机104可配置有滤波器,诸如放置在相机104的传感器前面的滤波器。滤波器可基本上阻挡除了一个或多个光源106提供的照明波谱内的光波长之外的光波长。在实施例中,使用滤波器可减少由相机106捕获的图像中的干扰背景光;用这种方式,仅可捕获希望被跟踪的那些对象(诸如手指)的图像。在一些实施例中,因为一些数字传感器(诸如硅互补金属氧化物半导体或硅CMOS)具有实质上阻断~1000nm以上波长的固有光谱响应,因此低通滤波器可用于背景减少。在其它实施例中,除长通滤波器之外或代替长通滤波器,可使用带通滤波器。在一些实施例中,可使用相机104可具有敏感性的其它波长范围(通常是~400nm到~1000nm)。例如,可见光(~400nm到~700nm) 可被用作到用户的可视反馈或在操作期间用作引导。
除了滤光之外,在各种实施例中,还可采用其它技术减少各种背景信号源。例如,相机104可配置成在图像捕获期间利用减少的曝光时间。此外,由一个或多个光源106提供的照明可在持续时间上匹配和/或同步到图像捕获曝光时间(诸如通过使LED闪动或脉动)以降低对未照明对象的敏感度。在一些实施例中,一个或多个光源106的峰值功率可被增大以补偿减少的曝光时间。在一些实施例中,相机104可包含图像传感器,图像传感器包含全局(与卷帘相对)快门以便于可变曝光和/或闪动操作。
在实施例中,还可通过设置用于检测的阈值级别来增强背景减少,其中将从捕获的图像中省略在阈值以下的任何传感器信号。在各种实施例中,可在硬件级(诸如在光检测之前或期间)或软件级(在检测之后)执行此类阈值的使用。在实施例中,基于硬件的阈值使用可使用具有可动态调整的人工“黑色电平控制”的传感器实现。除了通用背景减少,例如可使用动态阈值调整,以当用户移动到交互区域内时,维持近似恒定图像大小。
在实施例中,动态控制检测的像素区域(即“开窗”)是可用于增强性能的另一技术。通过将所处理图像中的像素的数量减少到仅是感兴趣的那些,可实现更高的帧速率和/或降低的图像处理。基于CMOS的图像传感器可允许此类开窗功能,其可用在跟踪其图像配置成传感器一个区域的更简单对象(例如跟踪单根手指)时。
现在参考图2,图示了由相机104捕获的示例图像200。可以指出,图像在由x轴和y轴定义的平面中,并且从而可被视为捕获z轴的一个或多个切片,如本文所描述的。图像200可包含指尖的一个或多个图像,诸如指尖图像210,其可由计算装置102识别。下面论述指尖识别的具体实施例。在各种实施例中,指尖图像210的中心点215可被标识为被用作可由计算装置102确定的指尖位置的一部分。下面还描述了指尖位置确定的具体实施例。
返回图1的示例,在各种实施例中,多个相机104可包含在计算装置102中以便确定有关对象位置的附加或甚至冗余的信息,而不是使用单个相机104。例如,在几个配置上可采取两相机布置。在一个实施例中,在两个相机104彼此紧接着定位的立体视觉配置中,两个相机104可彼此毗邻放置。在各种实施例中,这个配置可提供附加信息,诸如更准确的深度(z轴)确定。在另一实施例中,第二相机可放置成与主要跟踪相机成一角度(例如正交)(例如使得第二相机的图像捕获方向与来自光源106的照明方向平行)。在一些实施例中,除了提供有关所跟踪手指的更多位置信息之外,此类布置可减轻与跟踪多个对象关联的阻塞的困难。
在实施例中,一个或多个光源106和相机104可互补布置,使得该组合可更好地实现指尖(和/或触控笔)位置的确定,如本文所描述的。例如,如在此描绘的,一个或多个光源106可配置在键盘110内,使得从那发射的光114可向上投射以与相机104的图像捕获角112相交。在各种实施例中,由光源106从下面发射的光可更好地布置成从放置在源附近的各种对象反射或散射,部分反射光可由跟踪相机检测到。照明区被定义为空间体积,其中存在充分的光可用于从对象(诸如手指)反射或散射,并且由相机检测到。相机也具有由其水平和垂直视野(FOV)定义的特性区,其定义了它能检测到的空间体积。它是照明区与相机检测区之间的交叠,其定义了系统的有效操作范围或3D交互区域。
在各种实施例中,相机104的图像捕获角112与由一个或多个光源106发射的光114的相交可创建三维(3D)交互区域108,在其内可检测到用户一个或多个指尖的一个或多个位置。在实施例中,光源106和/或相机104可配置成最大化图像捕获角112与光114的交叠,并且从而创建更大的3D交互区域108。在各种实施例中,这个指尖位置确定可便于手指和/或手位置的检测,并且通过连续跟踪,由此便于跟踪在3D交互区域108中用户的手指和/或手移动。在一些实施例中,虽然相机104可聚焦在3D交互区域108处或附近,但在其它实施例中,相机104可聚焦在不同部分。例如,相机104可配置成操作在“散焦”条件,其中相机104配置成聚焦在3D交互区域108前面或后面的对象上。在此类布置中,虽然捕获的图像与其它聚焦距离相比较可能模糊,但此配置可有助于距离确定或分辨,或提供更鲁棒的操作。
在实施例中,3D交互区域108可位于键盘110上面,以更好地便于用户与计算装置102的更容易的交互。在一些实施例中,3D交互区域108可位于计算装置102顶上附近,以键盘上面为中心并在距显示器116的5到10cm内,以便提供这种便利。交互区域可基本上匹配用户的手/手指自然移动的范围。在实施例中,这些移动通常可在每个x、y和z维度跨越几厘米的体积(例如10x5x5cm、5x3x3cm等)。然而,在一些实施例中,光源106可定位成使得3D交互区域108放置得更靠近键盘110底部,诸如在触控板位置附近(例如距显示器116有~15-20cm)。在其它实施例中,光源106可嵌入在外部键盘100中,与计算装置102分开,或者在单独模块中。在一些实施例中,当3D交互区域定位得更远离相机104时,相机104可配置成利用较窄视野,或者可包含附加光学器件(例如可调整缩放镜头)以调整或优化相机104的视野。
在实施例中,光源106可配置成使得照明光在交互区域内在x-z平面上相对空间均匀。在各种实施例中,可使用不同方法实现期望均匀性。在一些实施例中,光源106可包含放置在键盘110内或毗邻键盘110的各个LED的一维或二维阵列。在各种实施例中,LED的数量和间距可取决于各种各样的系统因子,诸如但不限于:从每个LED发射的总光功率、LED发射角(例如所发射光的角分布)、3D交互区域108的最大高度(y)(例如,期望跟踪照明源上面多远)、距跟踪发生的相机的最大距离(z)和/或相机的敏感性。在备选实施例中,可利用附加射束形成光学元件来分布可用光。在各种实施例中,此类射束形成光学元件可包含透镜、镜子、光栅、漫射器以及对形成光空间分布已知的其它光学元件。
在各种实施例中,为了降低一个或多个光源106的功率消耗,计算装置可配置成仅利用在任何给定时间都影响对象照明的光源106的部分。例如,如果跟踪手指到3D交互区域108的具体侧,则可仅照明光源(或其部分)。例如当正在跟踪跨越3D交互区域108的相对小部分的单个对象时,可执行这个选择性照明。
附加地,如图1a中所图示的,一个或多个光源106可定位成使得它们在距显示器116的各种距离处(例如沿z轴)。例如,如图1b所图示的,在各种实施例中,一个或多个光源106(诸如IR发射LED的线性阵列)可位于键盘110的行之间。在各种实施例中,通过在距显示器116不同距离处利用多个光源106,计算装置102可配置成更好地促进在z轴中手指位置的确定。例如,在各种实施例中,计算装置102可配置成选择性地控制各个光源106的照明。这些选择性照明又可与相机104的图像捕获同步。通过捕获在各种深度的指尖图像,计算装置102可便于确定在z轴中的更精确位置。此类确定可用于检测姿势。例如,在一个实施例中,由更远离相机104的光源106照明的指尖(或其它对象)可被解释为向计算装置102呈现“悬停”或“鼠标移动”指示。相比之下,由更靠近的光源照明的手指(或其它对象)可被解释为向计算装置102呈现“触摸输入”或“鼠标向下”输入。
在实施例中,沿LED的x轴的跨距可近似匹配于3D交互区域的对应期望跨距,以便于跨3D交互区域的相对均匀照明。在一些实施例中,此跨距可以是5-15cm。在实施例中,LED阵列可定位在3D交互区域108的z轴的中心附近,在各种实施例中,其可以在键盘110的顶上、中心附近或者在底下。在各种实施例中,光源106可由盖覆盖,该盖基本上透过从光源106发射的光但阻挡对人眼可见的光,使得光源106不会使使用键盘110的用户分心。
然而,在一些实施例中,计算装置102可配置成定义在z轴方向较窄的3D交互区域。在此类情况下,与计算装置102的交互可呈现出更多二维(x-y)性质,并且可表现得实质上像“远程触摸屏”,具有较少的距离敏感性。此类布置可为用户提供更受限的操作空间,但可有助于背景分辨,并允许降低功耗。在一些实施例中,为了产生在x轴与z轴之间不对称的照明,可使用不同技术。例如,可使用小发射角度(例如<50度)LED,并将它们沿x轴相对紧密地放置在一起,以确保在x轴中相对均匀照明。在备选实施例中,可使用更宽角的LED,沿x轴相隔得更远,但一个或多个单独的圆柱形光学元件放置在LED阵列上面以部分对准在z维发射的光。在其它实施例中,为此目的也可使用定制非对称LED源,并且也可使用其它光学漫射方法,并且也可使用装置改进照明的空间均匀性。此外,在各种实施例中,除直线(x轴)或矩形(x轴和z轴)照明源,计算装置102可利用其它几何图形。例如,在一个实施例中,具有非常小z轴范围的占主优势的直线光源可具有照明进一步沿z轴延伸的一个区。在一些实施例中,这个延伸的区可被用作为特定功能(诸如缩放或选择/点击)预留的3D交互区域的部分。在实施例中,延伸的区可通过使用更宽的发射角 LED或通过在z维物理延伸源或通过其它技术实现。在各种实施例中,由光源106提供的光114创建了照明区,其可包含T形、L形、十字形或某种其它几何图形(取决于预期的使用)。
在实施例中,由一个或多个光源106发射的光114可配置成强调或加亮3D交互区域内的指尖位置,并且因此可便于由计算装置102确定指尖位置。可参考标记的x、y、z轴确定此类位置。在各种实施例中,一个或多个指尖位置可被映射到在其上可放置光标或其它屏幕图标的显示器116上的位置。在实施例中,计算装置102可配置成将用户的动作(诸如用户指尖的位置)与显示器116上的位置指示器(诸如光标)的对应位置相关。在实施例中,可便于所显示内容的鼠标样光标控制和导航。在此类实施例中,用户可能能够将在显示器116上再现的光标移动到显示器116上期望对象附近的期望位置,并且能够做可引起计算装置102在对象上执行用户控制动作的姿势。在一些实施例中,可跟踪多个手指(或其它对象)。多个手指跟踪可用于诸如在触控板或触摸屏界面上共有的“捏夹缩放”或上下/左右滚动的功能。下面可描述具体位置确定技术。
在实施例中,并且如上面所描述的,可以确定非手指对象(诸如笔或触控笔)的位置。例如,在一些实施例中,用户可将比或触控笔保持在3D交互区域内,并在自由空间操控笔或触控笔,同时跟踪笔或触控笔的笔尖,并且其位置映射到显示器116上的对应位置。在一些实施例中,笔或触控笔的笔尖可包含对由一个或多个光源106发射的光具有高度反射性(或吸收性)以便增强相对于背景图像的分辨力的材料。在其它实施例中,主动发射标志器(例如IR LED)可附到笔或触控笔上以帮助图像捕获。在各种实施例中,计算装置102此外可配置成除了检测笔或触控笔的笔尖,还通过分析图像的各种属性(诸如形状、纵横比或方位)来检测笔或触控笔的方位。在使用附到笔或触控笔的多个标志器的一些实施例中,标志器图像的相对空间位置可用于确定笔或触控笔的方位。例如,在一些实施例中,三个标志器可附到笔或触控笔,使得至少一个标志器驻留在与其它两个标志器基本上不同的z坐标。三个标志器的此类使用可允许检测笔或触控笔的三个位置和三个方位自由度。
虽然计算装置102的图示实施例在单个组装件中包含显示器116、相机104、一个或多个光源106和键盘110,但在其它实施例中可使用其它布置。例如,在一些实施例中,配置成便于确定手指位置的计算装置102的一个或多个部分(诸如相机104、光源106)可包含在可拆卸组装件中。此组装件可包含其它组件,诸如使用户的手和/或有线或无线连接倚靠到计算装置102的平台。在一些实施例中,此类可拆卸组装件可包含触控板和/或触敏表面,其例如可用于选择(即鼠标点击)或激活定点机制。
现在参考图3,按照各种实施例图示了图示支持自由触摸交互的计算装置102的一个或多个组件的框图。虽然在图3中为了描述目的图示了具体模块,但在各种实施例中,这些模块可被组合、分成附加模块和/或整体省略。在各种实施例中,计算装置102还可包含照明控制模块360。在各种实施例中,照明控制模块360可配置成选择性地控制由一个或多个光源106提供的照明,如本文所描述的。因此,在各种实施例中,照明控制模块可配置成控制照明的各个方面,包含但不限于:照明时间、照明持续时间、从一个或多个光源106发射的光的闪动、亮度、频率、照明的光源106的选择、可在具体时间照明的光源106部分的选择等。
在各种实施例中,计算装置102还可包含位置确定模块380。在各种实施例中,位置确定模块380可配置成识别由相机104捕获的图像当中的一个或多个指尖的图像(诸如图2的图像210),并确定所识别指尖的一个或多个位置。在各种实施例中,位置确定模块380可配置成确定3D交互区域108内的位置。在各种实施例中,位置确定模块可配置成确定x-y平面中的一个或多个位置(即,不参考距显示器116的距离),或者确定x轴、y轴和z轴内的位置。本文描述了确定指尖和其它对象的位置的具体实施例。计算装置102还可包含动作执行模块390。在各种实施例中,动作执行模块390可配置成基于由位置确定模块380确定的位置来执行姿势或手位置识别。动作执行模块390还可配置成基于所识别的姿势或手位置确定一个或多个用户期望的动作,并相应地控制计算装置102(或另一装置)。计算装置102可包括可包含编程成执行它们相应功能的可编程电子处理电路(例如微控制器、微处理器、FPGA)、设计成执行它们相应功能的专用逻辑电路(例如ASIC)或它们的任何组合的模块。
图4图示了按照各种实施例用于识别人机交互的示例过程400。虽然图4图示了过程400的具体示例操作,但在各种实施例中,过程400可包含附加操作,省略所图示的操作和/或组合所图示的操作。在各种实施例中,过程400可由计算装置102的一个或多个实体执行。在各种实施例中,过程400可重复一次或多次,使得诸如可为了跟踪目的确定指尖(或其它对象)的多个位置。
过程可开始于操作410,其中计算装置102,并且具体地说是照明控制模块360,可控制由一个或多个光源106产生的照明。下面参考图5的过程500描述照明控制的具体示例。接下来,在操作420,相机104可捕获指尖的一个或多个图像。如上面所论述的,在各种实施例中,由相机104捕获的图像可同步到与一个或多个光源104的照明同时发生的捕获,诸如当照明控制模块360使光源104闪动时。在各种实施例中,在操作420,相机104可捕获滤波的图像,如本文所描述的。
接下来,在操作430,计算装置102,并且具体地说是位置确定模块380,可确定由相机104捕获其图像的指尖(或其它对象)的一个或多个位置。下面参考图6的过程600描述位置确定的具体示例。
接下来,在操作440,计算装置,并且具体地说是动作执行模块309,可基于指尖(或其它对象)的位置执行动作。在各种实施例中,这些动作可基于在3D交互区域108内进行的一个或多个手位置、手姿势、对象位置、对象姿势或其它输入的识别。在各种实施例中,除了基于传统鼠标的姿势,在操作440,动作执行模块可配置成执行与基于触摸的界面一起使用的动作,其中已经集成了触摸和姿势输入。例如,可促进诸如刷屏、滚动和捏夹缩放的活动。
此外,在操作440,除了其用作输入装置,动作执行模块390可配置成测量用户的生物计量特性,诸如手指(或手)震颤。对个体可能相对唯一的此类特性通过确定在短暂的一段时间内所有或部分用户的手指的位置(例如,检测特定抖动运动作为登录到PC或激活光标的要求),可用作安全或认证机制。在其它实施例中,在操作440,动作执行模块390可配置成利用唯一签名或指纹分析,连同手指抖动,作为基于生物计量的安全措施。
在操作440之后,过程然后可在410再次重复,诸如例如捕获指尖或其它对象的位置的改变。
图5是按照各种实施例用于控制支持人机交互的装置的照明的示例过程。过程500可包含图4过程400的操作410的实现。在各种实施例中,通过操作过程500,照明控制模块360可确定应该选择性地照明一个或多个光源106中的哪个光源,以及是否应该选择性地照明那些光源的任何具体区域,以及在提供实际照明之前是否应该对照明进行任何具体修改。虽然图5图示了过程500的具体示例操作,但在各种实施例中,过程500可包含附加操作,省略所图示的操作和/或组合所图示的操作。在各种实施例中,过程500可由计算装置102的照明控制模块360执行。
过程可开始于操作520,其中照明控制模块 360可确定其位置被确定的指尖的最近的x和/或z坐标信息。在各种实施例中,这可以是由过程500的先前执行确定的具体x和/或z坐标。在其它实施例中,例如可基于指尖图像的大小、指尖图像的位置或其它信息来估计最近的x和/或z坐标信息。
接下来,在操作530,照明控制模块360可确定接下来照明哪个光源106。在各种实施例中,此确定可基于采样率。从而,照明控制模块360可在操作530确定在根据光源的样本率确定的时段内哪个光源或哪些光源尚未被照明,并且可选择那个光源或那些光源。例如,如果已经确定指尖(或其它对象)在更靠近显示器116的z坐标,则可在增大的时段内以增大的速率和/或用增大的亮度照明更靠近的光源106,并且可在减小的时段内以减小的速率和/或用减小的亮度照明更远的光源。通过对照,如果已经确定指尖在远离显示器116的z坐标,则可在减小的时段内以减小的速率和/或用其减小的亮度照明更靠近的光源,和/或可在增大的时段内以增大的速率和/或用增大的亮度照明更远的光源。可能要注意,通过增大或减小各种光源106的照明速率,而不是简单地完全关闭光源,计算装置102可更好地配置成,诸如通过将相机104的图像捕获与光源106的照明同步,而当指尖进入更靠近的区域时跟踪它们。
在其它实施例中,光源106可彼此协调一致地照明,以便提供更详细信息。例如,如果使用多个光源106,则可基于指尖图像的相对亮度或大小来确定z坐标信息。从而,在一些实施例中,光源106的打开或关闭可不考虑彼此,并且在操作530,照明控制模块360可确定要照明的多个光源。
接下来,在操作540,照明控制模块360可确定是否要照明所确定光源106的任何具体区域(诸如当计算装置102仅确定在具体区域中的位置时),或者如果期望其它修改(诸如亮度、持续时间或频率修改)的话。此类修改的具体示例在上面描述。接下来,在操作550,照明控制模块360可照明所确定的光源或多个光源,服从在操作540确定的修改。在操作560,照明控制模块360然后可存储照明哪个光源或哪些光源的以及被执行的任何具体修改的指示。这些指示可由位置确定模块380用于促进它们的功能。过程然后可结束。
图6图示了按照各种实施例用于标识指尖位置的示例过程。过程600可包含图4过程400的操作430的实现。虽然图6图示了过程600的具体示例操作,但在各种实施例中,过程600可包含附加操作,省略所图示的操作和/或组合所图示的操作。在各种实施例中,过程600可由计算装置102的位置确定模块380执行。
过程可开始于操作610,在此位置确定模块 380可标识由相机104捕获的图像中的指尖(或其它对象)图像。在各种实施例中,位置确定模块380可通过标识由相机104捕获的图像中的较低亮度区域围绕的一个或多个高亮度部分来标识指尖图像。在各种实施例中,可假定这些图像是在3D交互区域108中的指尖或其它对象,因为凭借一个或多个光源106照明,并且因为假定背景图像被很大程度滤出或以别的方式省略。使用一个或多个阈值可便于分辨图像的高亮度部分和较低亮度部分,并且从而改进指尖检测。阈值在图像传感器200内可以是恒定的,或者在传感器200内可作为x、y坐标的函数变化。例如,在一些实施例中,可采用相对于y坐标减小的阈值,使得当用户在交互区域108内抬高和降低他/她手指时,所检测的指尖图像的大小可保持基本上恒定。可采用在x和z中的可变阈值(即,手指到相机的距离)的类似使用。
接下来,在操作620,位置确定模块380可标识所标识指尖图像的x和y坐标。具体地说,在各种实施例中,位置确定模块380可确定可使用在操作610标识的高亮度区域的中心来表示指尖图像在x-y平面的位置。例如参考回图2,指尖图像210的中心点215的坐标可被标识为指尖图像本身的坐标。
在各种实施例中,可使用不同方法确定对象中心坐标。例如,对于相对平滑的图像或者发现存在更少高亮度像素的图像。位置确定模块380可假定对象的“中心”是对象图像内具有最高亮度像素的对象部分。然而,在许多情况下,对象的图像可包括许多像素,并且图像可以不是平滑或对称的。
在各种实施例中,可能期望的是,通过基于图像中附加像素的确定来使用对象中心的更准确测量。此外,在各种实施例中,位置确定模块380可配置成标识图像的多像素中心。多像素中心的此类标识在坐标标识和位置确定期间可允许子像素分解、增强的准确性以及增大的鲁棒性。例如,在一些实施例中,位置确定模块380可配置成测量图像的最大和最小x值和y值的均值,以实现图像中心的近似测量。在一些实施例中,此类测量可局限于6个像素;在其它实施例中,可使用其它像素。
在其它实施例中,位置确定模块380可配置成执行用于坐标标识的图像像素的加权平均。在一些实施例中,位置确定模块380可通过诸如所照明像素的数量(例如每行的跨越长度)或每个像素的实际亮度值等因子对各个像素坐标加权。在一些实施例中,通过使用子像素内插可实现与像素的一小部分一样小的分辨率。在其它实施例中,位置确定模块380可配置成在多个帧上对坐标值求平均,诸如通过保有过去坐标值的缓冲器并将那些值与目前标识的坐标相比较。此外,在各种实施例中,位置确定模块380可配置成在坐标标识之前执行对指尖图像的一个或多个滤波过程(例如Kalman、FIR等)。在备选实施例中,代替阈值或除此之外,可使用其它传感器和/或照明参数来帮助指尖检测。例如,当手指在交互区域内移动时,可调整照明亮度,使得所检测指尖图像的大小保持基本上恒定。类似地,可使用传感器增益和/或曝光值用于相同目的。
接下里,在操作620,位置确定模块380可将所标识的x和y坐标定标成显示器上的对应坐标,诸如在此可放置光标或执行某种其它功能。在各种实施例中,位置确定模块380可配置成使用每个坐标维度的定标因子和偏移来定标所标识的坐标。在各种实施例中,位置确定模块380可配置成用各种方式根据期望的交互类型确定定标因子和偏移。例如,对于从传感器到屏幕的直接定标,指尖图像的x、y坐标可直接映射到屏幕上的对应位置。在备选实施例中,屏幕位置可被映射到x或y坐标的范围的一部分,使得屏幕有效地驻留在图像传感器的边界内。此外,图像到屏幕坐标的映射可能相对x或y不是恒定的,以考虑到相机113的交互区域108轴与定点轴之间的相对斜角。位置确定模块380可配置成引入偏移(如果必要的话)以补偿相机的FOV与照明区之间的对准变化或改变。例如,如果相对于键盘的屏幕角度被改变,则可引入在y轴的偏移以考虑屏幕的新倾斜角。
在备选实施例中,在操作630,位置确定模块380可配置成执行所标识的x坐标和y坐标与不涉及样本定标因子和偏移的屏幕上的坐标之间的相对映射。在此类实施例中,屏幕坐标(在此可能出现光标)可基于3D交互区域108中的指尖(或其它对象)的相对移动。在此类实施例中,屏幕光标可根据所跟踪对象当活动时的移动而从其当前位置移动到新位置,但无需位置确定模块380在任何给定时间都利用相应坐标之间的直接关系。
接下来,在操作640,位置确定模块380可配置成确定指尖图像的距离或z坐标。在各种实施例中,这个确定的坐标诸如可由动作执行模块390用于执行各种输入功能。例如,z坐标可指示屏幕上的图标或菜单项目的选择(例如鼠标点击或拖/放)、基本导航(例如放大/缩小)或可受益于沿z轴手指移动的其它交互。在一些实施例中,在操作630,位置确定模块380可配置成使用图像大小的估计来确定与图像大小逆相关的z坐标。在其它实施例中,代替图像大小或除图像大小之外,可使用图像亮度。
在各种实施例中,在操作640,可选地可通过比较由在距显示器116不同距离的光源106所照明而捕获的指尖的多个图像的比较来确定z坐标。从而,例如,如果在由第一光源106照明但未由第二光源106照明而捕获的图像中发现了指尖图像,则位置确定模块380可以确定指尖的z坐标在两个光源106的位置之间。位置确定模块380的这个确定可通过照明控制模块360记录的指示促进,该指示对于具体捕获的图像而言,可指示在捕获图像的时间照明哪些光源106。
在一些实施例中,位置确定模块380可基于方向或从每一个光源106发射的光114的知识确定这落在位置之间的哪里。从而,如果光在随着y坐标增大而大小增大的圆锥形横截面中发射,则位置确定模块380可使用这个光发射模式的知识来确定在不同y坐标的光114的各个边界,并且相应地计算z坐标。在操作640之后,然后过程可结束。
现在参考图7,按照各种实施例图示了适合于实施本公开各个方面(包含图4-6的过程)的示例计算机。如所示,计算机700可包含一个或多个处理器或处理器核702以及系统存储器704。为了此申请的目的,包含权利要求书,术语“处理器”和“处理器核”可视为同义词,除非上下文明确另有要求。此外,计算机700可包含大容量存储装置706(诸如磁盘、硬驱、光盘只读存储器(CD-ROM)等等)、输入/输出装置708(诸如显示器、键盘、光标控制、遥控器、游戏控制器、图像捕获装置等等)和通信接口710(诸如网络接口卡、调制解调器、红外接收器、无线电接收器(例如蓝牙)等等)。元件可经由系统总线712彼此耦合,系统总线712可表示一个或多个总线。在多总线的情况下,它们可由一个或多个总线桥(未示出)桥接。
这些元件中的每个元件都可执行本领域已知的常规功能。具体地说,可采用系统存储器704和大容量存储装置706存储实现与计算装置102关联的操作(例如与指尖位置确定关联的操作)的编程指令的工作拷贝和永久拷贝,在本文中统称为计算逻辑722。各种元件可由处理器702支持的汇编指令或可被编译成此类指令的高级语言(诸如例如C语言)实现。
编程指令的永久拷贝可在工厂或在现场例如通过分布介质(未示出)诸如光盘(CD)或通过通信接口710(从分布服务器(未示出))被放入永久存储装置706中。也就是说,具有代理程序实现的一个或多个分布介质可用于分布代理并对各种计算装置编程。
这些元件710-712的数量、能力和/或容量可改变。它们的构成是另外已知的,并且因而将不进一步描述。
图8图示了按照各种实施例具有配置成实施与计算装置102关联的所有操作或所选择操作(例如早先描述的与内容访问控制关联的操作)的指令的示例至少一个计算机可读存储介质802。如所图示的,至少一个计算机可读存储介质802可包含若干编程指令804。编程指令804可配置成使装置(例如计算机700和/或计算装置102)能够响应于编程指令的执行而例如执行图4-6过程的各种操作,例如但不限于执行帧对准的确定而执行的各种操作。在备选实施例中,编程指令804相反可布置在多个至少一个计算机可读存储介质802上。
参考回图7,对于一个实施例,至少一个处理器702可与具有配置成实施图4-6的过程的方面的计算逻辑722的存储器一起封装。对于一个实施例,至少一个处理器702可与具有配置成实施图4-6的过程的方面的计算逻辑722的存储器封装在一起以形成系统级封装(SiP)。对于一个实施例,至少一个处理器702可集成在具有配置成实施图4-6的过程的方面的计算逻辑722的存储器的同一管芯上。对于一个实施例,至少一个处理器702可与具有配置成实施图4-6的过程的方面的计算逻辑722的存储器封装在一起以形成片上系统(SoC)。对于至少一个实施例,SoC例如但不限于可用在计算平板上。
已经描述了本公开的各种实施例。这些模式包含但不限于在以下段落中描述的那些。
示例1包含用于支持人机交互的设备。所述设备包含:显示器,其中所述显示器定义平面;一个或多个光源,用于照明放置在所述显示器前面的用户的对象;相机,用于捕获所述照明的对象的一个或多个图像,其中所述相机在基本正交于所述显示器的所述平面的图像捕获方向捕获图像;以及位置确定模块,与所述相机耦合以基于所述捕获的图像确定定义在所述显示器前面的三维(3D)交互区域中的所述对象的一个或多个位置。
示例2包含示例1的设备,其中所述光源使用选择的波长范围内的光来照明;并且所述相机包含滤波器以基本上阻挡不在所述选择的波长范围内的光。
示例3包含示例2的设备,其中所述选择的波长范围包含红外光的波长范围。
示例4包含示例1的设备,其中所述光源被布置在所述设备中,使得所述光源在不同于所述图像捕获方向的照明方向发射光。
示例5包含示例4的设备,其中所述照明方向是垂直方向。
示例6包含示例1的设备,其中所述一个或多个光源包含位于距所述显示器不同距离的多个光源。
示例7包含示例6的设备,其中所述设备进一步包含键盘,所述键盘包含多个键行,并且在所述键盘的键行之间布置了一个或多个光源。
示例8包含示例6的设备,进一步包含:与所述多个光源和所述相机耦合的照明控制模块,用于选择性地操作所述多个光源中的各个光源以便于检测基本上沿由所述图像捕获方向定义的轴定位的对象。
示例9包含示例8的设备,其中所述相机与所述多个光源中的各个光源的选择性操作同步地捕获图像。
示例10包含示例8的设备,其中所述照明控制模块选择性地操作所述一个或多个光源中的部分。
示例11包含示例6的设备,其中所述位置确定模块基于由所述相机捕获的并与所述多个光源中的各个光源的照明同步的一个或多个图像来确定基本上沿由所述图像捕获方向定义的轴的一个或多个对象的位置。
示例12包含示例1的设备,其中所述设备包含一个或多个附加相机以捕获照明的对象的一个或多个图像。
示例13包含示例12的设备,其中,附加相机中的一个或多个在基本上不正交于显示器平面的一个或多个图像捕获方向捕获图像。
示例14可包含示例1-13中任一示例的设备,其中所述对象包含用户的指尖。
示例15包含用于支持与包含定义平面的显示器的计算装置的人机交互的方法。所述方法包含:由所述计算装置的一个或多个光源照明放置在所述显示器前面的用户的对象;由所述计算装置的相机在基本上正交于所述显示器平面的图像捕获方向捕获所述照明的对象的一个或多个图像;以及由所述计算装置基于所述捕获图像确定定义在所述显示器前面的三维(3D)交互区域中的所述对象的一个或多个位置。
示例16包含示例15的方法,其中照明包含使用在选择的波长范围内的光来照明,并且捕获一个或多个图像包含使用滤波器以基本上阻挡不在所述选择的波长范围内的光来捕获所述一个或多个图像。
示例17包含示例16的方法,其中使用在选择的波长范围内的光来照明包含使用红外光的波长范围照明。
示例18包含示例15的方法,其中照明包含在不同于所述图像捕获方向的照明方向发射光。
示例19包含示例18的方法,其中照明包含在垂直方向照明。
示例20包含示例15的方法,其中照明包含从在距所述显示器不同距离的所述一个或多个光源发射光。
示例21包含示例20的方法,其中所述计算装置包括键盘,所述键盘包含多个键行,并且从在距所述显示器不同距离的所述一个或多个光源发射光包含从在所述键盘的键行之间的所述一个或多个光源发射光。
示例22包含示例20的方法,其中照明包含选择性地操作所述多个光源中的各个光源以便于检测基本上沿由所述图像捕获方向定义的轴定位的对象。
示例23包含示例22的方法,其中捕获一个或多个图像包含与所述多个光源中的各个光源的选择性操作同步地捕获图像。
示例24包含示例22的方法,其中选择性地操作各个光源包含选择性地操作一个或多个光源中的部分。
示例25包含示例20的方法,其中确定一个或多个对象的位置包含基于由所述相机捕获的并与所述多个光源中的各个光源的照明同步的一个或多个图像来确定基本上沿由所述图像捕获方向定义的轴的一个或多个对象的位置。
示例26包含示例15的方法,其中捕获一个或多个图像包含使用一个或多个附加相机捕获一个或多个图像。
示例27包含示例26的方法,其中使用附加相机捕获一个或多个图像包含在基本上不正交于显示器平面的一个或多个图像捕获方向捕获图像。
示例28包含示例15-27中任一示例的方法,其中捕获一个或多个图像包含捕获指尖的一个或多个图像。
示例29包含一个或多个计算机可读介质,所述介质包含计算机可执行指令,所述指令配置成响应于在包含定义平面的显示器的计算装置上的执行而使计算装置支持人机交互。所述指令使计算装置:照明放置在所述显示部件前面的用户的对象;在基本上正交于所述显示器平面的图像捕获方向捕获所述照明的对象的一个或多个图像;以及基于所述捕获图像确定定义在所述显示器前面的三维(3D)交互区域中的所述对象的一个或多个位置。
示例30包含示例29的计算机可读介质,其中照明包含使用在选择的波长范围内的光来照明,并且捕获一个或多个图像包含使用滤波器以基本上阻挡不在所述选择的波长范围内的光来捕获所述一个或多个图像。
示例31包含示例30的计算机可读介质,其中使用在选择的波长范围内的光来照明包含使用红外光的波长范围照明。
示例32包含示例29的计算机可读介质,其中照明包含在不同于所述图像捕获方向的照明方向发射光。
示例33包含示例32的计算机可读介质,其中照明包含在垂直方向照明。
示例34包含示例29的计算机可读介质,其中照明包含从在距所述显示器不同距离的所述一个或多个光源发射光。
示例35包含示例34的计算机可读介质,其中所述计算装置包括键盘,所述键盘包含多个键行,并且从在距所述显示器不同距离的所述一个或多个光源发射光包含从在所述键盘的键行之间的所述一个或多个光源发射光。
示例36包含示例34的计算机可读介质,其中照明包含选择性地操作所述多个光源中的各个光源以便于检测基本上沿由所述图像捕获方向定义的轴定位的对象。
示例37包含示例36的计算机可读介质,其中捕获一个或多个图像包含与所述多个光源中的各个光源的选择性操作同步地捕获图像。
示例38包含示例36的计算机可读介质,其中选择性地操作各个光源包含选择性地操作一个或多个光源中的部分。
示例39包含示例34的计算机可读介质,其中确定一个或多个对象的位置包含基于由所述相机捕获的并与所述多个光源中的各个光源的照明同步的一个或多个图像来确定基本上沿由所述图像捕获方向定义的轴的一个或多个对象的位置。
示例40包含示例29的计算机可读介质,其中捕获一个或多个图像包含使用一个或多个附加相机捕获一个或多个图像。
示例41包含示例40的计算机可读介质,其中使用附加相机捕获一个或多个图像包含在基本上不正交于显示器平面的一个或多个图像捕获方向捕获图像。
示例42包含示例29-41中任一示例的计算机可读介质,其中捕获一个或多个图像包含捕获指尖的一个或多个图像。
示例43包含用于支持与包含定义平面的显示部件的计算装置的人机交互的设备。所述设备包含:用于照明放置在所述显示器前面的用户的对象的部件;用于在基本上正交于所述显示器平面的图像捕获方向捕获所述照明的对象的一个或多个图像的部件;以及用于基于所述捕获图像确定定义在所述显示部件前面的三维(3D)交互区域中的所述对象的一个或多个位置的部件。
示例44包含示例43的设备,其中用于照明的部件包含用于使用在选择的波长范围内的光来照明的部件,并且用于捕获一个或多个图像的部件包含用于使用滤波器以基本上阻挡不在所述选择的波长范围内的光来捕获所述一个或多个图像的部件。
示例45包含示例44的设备,其中用于使用在选择的波长范围内的光来照明的部件包含用于使用红外光的波长范围照明的部件。
示例46包含示例43的设备,其中用于照明的部件包含用于在不同于所述图像捕获方向的照明方向发射光的部件。
示例47包含示例46的设备,其中用于照明的部件包含用于在垂直方向照明的部件。
示例48包含示例43的设备,其中用于照明的部件包含用于在距显示部件的不同距离发射光的部件。
示例49包含示例48的设备,其中所述设备包括键盘,所述键盘包含多个键行,并且用于在距显示部件的不同距离发射光的部件包含用于在键盘的键行之间发射光的部件。
示例50包含示例48的设备,其中用于照明的部件包含多个光源部件和用于选择性地操作多个光源部件中的各个光源部件以便于检测基本上沿由图像捕获方向定义的轴定位的对象的部件。
示例51包含示例50的设备,其中用于捕获一个或多个图像的部件包含用于与多个光源部件中的各个光源部件的选择性操作同步地捕获图像的部件。
示例52包含示例50的设备,其中用于选择性地操作各个光源部件的部件包含用于选择性地操作一个或多个光源部件中的部分的部件。
示例53包含示例50的设备,其中用于确定一个或多个对象的位置的部件包含用于基于由相机捕获的并与多个光源部件中的各个光源部件的照明同步的一个或多个图像来确定基本上沿由图像捕获方向定义的轴的一个或多个对象的位置的部件。
示例54包含示例53的设备,其中用于捕获一个或多个图像的部件包含用于使用一个或多个相机捕获一个或多个图像的部件。
示例55包含示例54的设备,其中用于使用附加相机捕获一个或多个图像的部件包含用于在基本上不正交于显示部件平面的一个或多个图像捕获方向捕获图像的部件。
示例56包含示例43-55中任一示例的设备,其中用于捕获一个或多个图像的部件包含用于捕获指尖的一个或多个图像的部件。
用于执行上述技术的计算机可读介质(包含至少一个计算机可读介质)、方法、设备、系统和装置是本文公开的实施例的说明性示例。附加地,上述交互中的其它装置可配置成执行各种公开技术。
尽管为了描述目的本文已经图示和描述了某些实施例,但计算成实现相同目的的各种各样替换和/或等效实施例或实现可代替所示出和描述的实施例,而不脱离本公开的范围。本申请打算涵盖本文讨论的实施例的任何改编或变型。因此,意图明显是,本文描述的实施例仅由权利要求书限制。
虽然本公开叙述了“一”或“第一”元件或其等同物,但此类公开包含一个或多个此类元件,既不要求也不排除两个或更多此类元件。另外,所标识元件的序数指示(例如第一、第二或第三)用于区分这些元件,并不指示或暗示所需数量或所限制数量的此类元件,它们也不指示此类元件的具体位置或次序,除非另有明确声明。

Claims (23)

1.一种用于支持人机交互的设备,所述设备包括:
显示器,其中所述显示器定义平面;
多个光源,在第一方向位于距所述显示器的不同距离处并且用于照明放置在所述显示器前面的用户的对象,其中所述多个光源的照明被选择性地控制以促进在所述第一方向中所述用户的对象位置的确定;
相机,用于捕获所照明的对象的一个或多个图像,其中所述相机在作为图像捕获方向并且基本正交于所述显示器的所述平面的第二方向捕获图像;以及
位置确定模块,其与所述相机耦合以基于所捕获的图像确定定义在所述显示器前面的三维(3D)交互区域中的所述对象的一个或多个位置。
2.如权利要求1所述的设备,其中:
所述光源使用选择的波长范围内的光来照明;并且
所述相机包括滤波器以基本上阻挡不在所述选择的波长范围内的光。
3.如权利要求2所述的设备,其中所述选择的波长范围包括红外光的波长范围。
4.如权利要求1所述的设备,其中所述光源被布置在所述设备中,使得所述光源在不同于所述图像捕获方向的照明方向发射光。
5.如权利要求4所述的设备,其中所述照明方向是垂直方向。
6.如权利要求1所述的设备,其中:
所述设备进一步包括键盘,所述键盘包含多个键行;以及
所述多个光源布置在所述键盘的键行之间。
7.如权利要求1所述的设备,进一步包括:与所述多个光源和所述相机耦合的照明控制模块,用于选择性地操作所述多个光源中的各个光源以便于检测基本上沿由所述图像捕获方向定义的轴定位的对象。
8.如权利要求7所述的设备,其中所述相机与所述多个光源中的各个光源的选择性操作同步地捕获图像。
9.如权利要求7所述的设备,其中所述照明控制模块选择性地操作所述多个光源中的部分。
10.如权利要求1所述的设备,其中所述位置确定模块基于由所述相机捕获的并与所述多个光源中的各个光源的照明同步的一个或多个图像来确定基本上沿由所述图像捕获方向定义的轴的一个或多个对象的位置。
11.如权利要求1-10中任一项所述的设备,其中所述对象包括所述用户的指尖。
12.一种用于支持与包括定义平面的显示器的计算装置的人机交互的方法,所述方法包括:
由所述计算装置的多个光源照明放置在所述显示器前面的用户的对象,包括选择性地控制所述多个光源以促进在第一方向中所述用户的对象位置的确定,所述多个光源在所述第一方向位于距所述显示器的不同距离处;
由所述计算装置的相机在作为图像捕获方向并且基本上正交于所述显示器的第二方向捕获所照明的对象的一个或多个图像;以及
由所述计算装置基于所捕获图像确定定义在所述显示器前面的三维(3D)交互区域中的所述对象的一个或多个位置。
13.如权利要求12所述的方法,其中:
照明包括使用选择的波长范围内的光来照明;以及
捕获一个或多个图像包括使用滤波器以基本上阻挡不在所述选择的波长范围内的光来捕获所述一个或多个图像。
14.如权利要求12所述的方法,其中照明包括在不同于所述图像捕获方向的照明方向发射光。
15.如权利要求12所述的方法,其中:
所述计算装置包括键盘,所述键盘具有多个键行;并且
照明包括从在所述键盘的键行之间的所述多个光源发射光。
16.如权利要求12所述的方法,其中照明包括选择性地操作所述多个光源中的各个光源以便于检测基本上沿由所述图像捕获方向定义的轴定位的对象。
17.如权利要求16所述的方法,其中捕获一个或多个图像包括与所述多个光源中的各个光源的选择性操作同步地捕获图像。
18.一种用于支持人机交互的设备,所述设备包括:
用于向用户显示文本和/或图形的显示部件,用于显示文本和/或图形的所述部件定义平面;
用于通过在第一方向位于距所述显示部件的不同距离处的多个光源来照明放置在所述显示部件前面的用户的对象的部件,其中所述多个光源的照明被选择性地控制以促进在所述第一方向中所述用户的对象位置的确定;
用于在作为图像捕获方向并且基本上正交于所述显示部件的第二方向捕获所照明的对象的一个或多个图像的部件;以及
用于基于所捕获图像确定定义在所述显示部件前面的三维(3D)交互区域中的所述对象的一个或多个位置的部件。
19.如权利要求18所述的设备,其中用于使用选择的波长范围内的光来照明的部件包括用于使用红外光的波长范围来照明的部件。
20.如权利要求18所述的设备,其中用于照明的部件包括用于从在距所述显示器不同距离的所述多个光源发射光的部件。
21.如权利要求20所述的设备,其中:
所述设备包括键盘,所述键盘包括多个键行;并且
用于在距所述显示部件不同距离发射光的部件包括用于在所述键盘的键行之间发射光的部件。
22.如权利要求20所述的设备,其中用于确定对象的一个或多个位置的部件包括用于基于由用于捕获一个或多个图像的所述部件捕获的并与所述多个光源中的各个光源的照明同步的一个或多个图像来确定基本上沿由所述图像捕获方向定义的轴的一个或多个对象的位置的部件。
23.一个或多个计算机可读介质,包含计算机可执行指令,所述指令配置成响应于在包括定义平面的显示器的计算装置上的执行而通过使所述计算装置执行如权利要求12-17中的任一项所述的方法来使所述计算装置支持人机交互。
CN201380080121.5A 2013-11-07 2013-11-07 对象位置确定 Active CN105593786B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2013/068892 WO2015069252A1 (en) 2013-11-07 2013-11-07 Object position determination

Publications (2)

Publication Number Publication Date
CN105593786A CN105593786A (zh) 2016-05-18
CN105593786B true CN105593786B (zh) 2019-08-30

Family

ID=53041864

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380080121.5A Active CN105593786B (zh) 2013-11-07 2013-11-07 对象位置确定

Country Status (3)

Country Link
US (1) US9494415B2 (zh)
CN (1) CN105593786B (zh)
WO (1) WO2015069252A1 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2872967B1 (en) * 2012-07-13 2018-11-21 Sony Depthsensing Solutions SA/NV Method and system for detecting hand-related parameters for human-to-computer gesture-based interaction
US10489912B1 (en) * 2013-12-20 2019-11-26 Amazon Technologies, Inc. Automated rectification of stereo cameras
EP2891950B1 (en) 2014-01-07 2018-08-15 Sony Depthsensing Solutions Human-to-computer natural three-dimensional hand gesture based navigation method
EP2993645B1 (en) * 2014-09-02 2019-05-08 Nintendo Co., Ltd. Image processing program, information processing system, information processing apparatus, and image processing method
US10168838B2 (en) * 2014-09-30 2019-01-01 Hewlett-Packard Development Company, L.P. Displaying an object indicator
AU2016315938B2 (en) * 2015-08-31 2022-02-24 Cape Analytics, Inc. Systems and methods for analyzing remote sensing imagery
US9977887B2 (en) * 2015-09-17 2018-05-22 Sony Mobile Communications Inc. Electronic device and method for validation of a trusted user
KR102406327B1 (ko) 2016-02-02 2022-06-10 삼성전자주식회사 출력 장치를 제어하는 방법 및 장치
WO2018194547A1 (en) * 2017-04-17 2018-10-25 Hewlett-Packard Development Company, L.P. Camera system housing
US10621746B2 (en) * 2017-11-07 2020-04-14 Symbol Technologies, Llc Methods and apparatus for rapidly dimensioning an object
US11902737B2 (en) * 2019-01-09 2024-02-13 Hangzhou Taro Positioning Technology Co., Ltd. Directional sound capture using image-based object tracking
US11367265B2 (en) 2020-10-15 2022-06-21 Cape Analytics, Inc. Method and system for automated debris detection
US11875413B2 (en) 2021-07-06 2024-01-16 Cape Analytics, Inc. System and method for property condition analysis
WO2023141192A1 (en) 2022-01-19 2023-07-27 Cape Analytics, Inc. System and method for object analysis

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103329519A (zh) * 2011-03-31 2013-09-25 株式会社尼康 图像显示装置及物体检测装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9513744B2 (en) * 1994-08-15 2016-12-06 Apple Inc. Control systems employing novel physical controls and touch screens
US7834855B2 (en) * 2004-08-25 2010-11-16 Apple Inc. Wide touchpad on a portable computer
US20080122799A1 (en) * 2001-02-22 2008-05-29 Pryor Timothy R Human interfaces for vehicles, homes, and other applications
US20080088587A1 (en) 2001-02-22 2008-04-17 Timothy Pryor Compact rtd instrument panels and computer interfaces
US7159766B2 (en) 2004-01-20 2007-01-09 Standard Microsystems Corporation Peripheral device feature allowing processors to enter a low power state
TW200601067A (en) * 2004-06-21 2006-01-01 Inventec Corp Interactive method of electronic apparatus
US7797398B2 (en) 2005-09-20 2010-09-14 Brother Kogyo Kabushiki Kaisha Communication system, and peripheral device having trigger generating device and computer program product that monitors whether a trigger has been generated
WO2008068612A1 (en) 2006-12-08 2008-06-12 Marvell World Trade Ltd. System and method for peripheral device communications
US20080231835A1 (en) * 2007-03-23 2008-09-25 Keigo Iizuka Divergence ratio distance mapping camera
US8134556B2 (en) * 2007-05-30 2012-03-13 Elsberg Nathan Method and apparatus for real-time 3D viewer with ray trace on demand
US8547327B2 (en) * 2009-10-07 2013-10-01 Qualcomm Incorporated Proximity object tracker
US9213440B2 (en) * 2010-07-27 2015-12-15 Hewlett-Packard Development Company L.P. System and method for remote touch detection
US9529424B2 (en) 2010-11-05 2016-12-27 Microsoft Technology Licensing, Llc Augmented reality with direct user interaction
KR101816721B1 (ko) * 2011-01-18 2018-01-10 삼성전자주식회사 센싱 모듈, gui 제어 장치 및 방법
US8521942B2 (en) 2011-03-21 2013-08-27 Microsoft Corporation HID over simple peripheral buses
JP5148021B1 (ja) 2012-03-28 2013-02-20 三菱電機株式会社 変換装置、周辺装置およびプログラマブルコントローラ
WO2014018836A1 (en) * 2012-07-26 2014-01-30 Leap Motion, Inc. Object detection and tracking

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103329519A (zh) * 2011-03-31 2013-09-25 株式会社尼康 图像显示装置及物体检测装置

Also Published As

Publication number Publication date
US9494415B2 (en) 2016-11-15
CN105593786A (zh) 2016-05-18
WO2015069252A1 (en) 2015-05-14
US20150131852A1 (en) 2015-05-14

Similar Documents

Publication Publication Date Title
CN105593786B (zh) 对象位置确定
US10999494B2 (en) Adjusting motion capture based on the distance between tracked objects
KR101851264B1 (ko) 가상 멀티터치 마우스와 스타일러스 장치를 위한 시스템 및 그 방법
US20170345218A1 (en) Systems and method of interacting with a virtual object
US8818040B2 (en) Enhanced input using flashing electromagnetic radiation
JP5950130B2 (ja) カメラ式マルチタッチ相互作用装置、システム及び方法
WO2012124730A1 (ja) 検出装置、入力装置、プロジェクタ、及び電子機器
US8971565B2 (en) Human interface electronic device
US20220129066A1 (en) Lightweight and low power cross reality device with high temporal resolution
JP5740822B2 (ja) 情報処理装置、情報処理方法およびプログラム
WO2013035554A1 (ja) 入力体の動き検出方法およびそれを用いた入力デバイス
JP2015526927A (ja) カメラ・パラメータのコンテキスト駆動型調整
US8786576B2 (en) Three-dimensional space touch apparatus using multiple infrared cameras
CN104145276A (zh) 用于通过光学成像进行的对象检测和表征的增强对比度
JP2011524034A (ja) 対話型入力装置と、該装置のための照明組み立て品
CN105917292A (zh) 利用多个光源和传感器的眼睛注视检测
JP2016009396A (ja) 入力装置
KR101385263B1 (ko) 가상 키보드를 위한 시스템 및 방법
KR20190027081A (ko) 전자 장치, 그 제어 방법 및 컴퓨터 판독가능 기록 매체
JP6032319B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP2011186537A (ja) 情報処理装置、情報処理方法およびプログラム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant