CN101689244B - 用于紧凑设备的基于相机的用户输入 - Google Patents

用于紧凑设备的基于相机的用户输入 Download PDF

Info

Publication number
CN101689244B
CN101689244B CN200880023087.7A CN200880023087A CN101689244B CN 101689244 B CN101689244 B CN 101689244B CN 200880023087 A CN200880023087 A CN 200880023087A CN 101689244 B CN101689244 B CN 101689244B
Authority
CN
China
Prior art keywords
finger
image
user
hand
orientation
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
CN200880023087.7A
Other languages
English (en)
Other versions
CN101689244A (zh
Inventor
埃文·希尔德雷思
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN101689244A publication Critical patent/CN101689244A/zh
Application granted granted Critical
Publication of CN101689244B publication Critical patent/CN101689244B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/1626Constructional details or arrangements for portable computers with a single-body enclosure integrating a flat display, e.g. Personal Digital Assistants [PDAs]
    • 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/107Static hand or arm
    • 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
    • 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/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0485Scrolling or panning
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1068Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted to detect the point of contact of the player on a surface, e.g. floor mat, touch pad
    • A63F2300/1075Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted to detect the point of contact of the player on a surface, e.g. floor mat, touch pad using a touch screen
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/6045Methods for processing data by generating or executing the game program for mapping control signals received from the input arrangement into game commands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04806Zoom, i.e. interaction techniques or interactors for controlling the zooming operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/02Constructional features of telephone sets
    • H04M1/23Construction or mounting of dials or of equivalent devices; Means for facilitating the use thereof
    • H04M1/236Construction or mounting of dials or of equivalent devices; Means for facilitating the use thereof including keys on side or rear faces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72427User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality for supporting games or graphical animations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/52Details of telephonic subscriber devices including functional features of a camera

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)
  • Computer Hardware Design (AREA)
  • Multimedia (AREA)
  • User Interface Of Digital Computer (AREA)
  • Position Input By Displaying (AREA)
  • Telephone Function (AREA)

Abstract

使用相机来检测诸如用户手指的对象的位置和/或取向作为用于提供用户输入的方法,例如用于滚过数据、控制光标位置、以及基于用户手指的位置提供输入以控制视频游戏。可以把输入提供给手持设备,包括例如,蜂窝电话、视频游戏系统、便携式音乐(MP3)播放器、便携式视频播放器、个人数据助理(PDA)、音频/视频设备遥控器和消费型数码相机,或者其他类型的设备。

Description

用于紧凑设备的基于相机的用户输入
相关申请的交叉引用
本申请要求2007年5月4日递交的美国临时专利申请No.60/916,063的权益,通过引用将该申请完全结合于此。
技术领域
本公开一般涉及用户输入,并且至少一种特定配置涉及利用相机检测用户指尖的位置作为提供用户输入的机制。
背景技术
包括蜂窝电话的手持设备可以包括一个或更多用于用户输入的机制,例如小键盘、控制杆、或者滚动轮。一些手持设备使用光学传感器来模拟(emulate)控制杆功能,并且一些手持设备包括触敏(touch-sensitive)显示屏。用于手持设备的输入机制典型地限于二维的控制。
发明内容
本公开一般涉及用户输入,并且至少一个特定配置涉及利用相机检测用户指尖的位置作为提供用户输入的机制的新颖方法。
根据一个一般的实施方式,使用相机来检测例如用户的手指的对象的位置和/或取向作为用于提供用户输入的方法,例如用于滚过(scroll through)数据、控制光标位置和基于用户的手指位置提供输入以控制视频游戏。把输入提供给手持设备,包括例如蜂窝电话、视频游戏系统、便携式音乐(MP3)播放器、便携式视频播放器、个人数据助理(PDA)、音频/视频设备遥控器和消费型数码相机,或者其他类型的设备。手持设备可以包括相机,所以为了实施用于提供用户输入的系统,可以不要求额外的硬件。
根据另一个一般实施方式,一种方法包括:使用手指的解剖模型在与电子设备进行交互的用户的手的图像中检测用户的手的手指的取向。所述方法还可以包括把所检测的取向映射到控制输入,并基于所述控制输入控制应用程序(application)。
实施方式可用包括一个或更多的下列特征。例如,所述方法还可以包括在与电子设备进行交互的用户的手的图像中检测用户的手的手指的位置,其中,可以基于所检测的位置映射控制输入。控制输入可以在虚拟环境中定义对应于手指的所检测的位置和所检测的取向的位置和取向。所述方法可以包括:控制虚拟环境中的虚拟对象移动到虚拟环境中对应于手指的所检测的位置和所检测的取向的位置和取向;以及,在虚拟环境中对应于手指的所检测的位置和所检测的取向的位置和取向表现虚拟对象的显示。
使用手指的解剖模型在与电子设备进行交互的用户的手的图像中检测用户的手的手指的取向可以包括:识别对应于指尖的手指的第一部分,识别对应于手指根部的手指的第二部分,计算手指的第一部分和手指的第二部分之间的向量,以及,基于所述向量确定手指的取向。所述方法还可以包括获取手指的图像,并对所述图像进行边缘处理。此外,所述方法可以包括沿着具有基本垂直于手指的取向的扫描线分割所述图像。
在某些实施方式中,所述方法还可以包括检测手指周围的轮廓。可以通过计算所述图像内的图像密度的梯度,并识别所述图像密度的梯度中的局部最小和局部最大中的至少一个来检测手指周围的轮廓。所述方法可以包括识别所述图像对应于手指皮肤中的褶皱的区域,并且在所述图像内检测手指时忽略所述图像对应于手指皮肤中的所述褶皱的被识别区域。
在某些例子中,所述方法可以包括在所述图像中基于对象的尺寸、对象的形状以及该对象是否和所述图像的边界相交选择作为手指的对象。所述方法还可以包括使用在平行于所述电子设备的显示器的平面中取向的手指的解剖模型检测手指的取向,所述解剖模型是从手指的根部延伸到手指的指尖的手指模型。
根据另一个一般实施方式,一种设备包括:图像检测器,被配置成使用手指的解剖模型在与电子设备进行交互的用户的手的图像中检测所述用户的手的手指的取向。所述设备还可以包括处理器,该处理器被配置成把所检测的取向映射到控制输入,并基于所述控制输入控制应用程序。所述图像检测器可以被配置在移动电话、便携式视频游戏系统、便携式音乐播放器、个人数据助理、遥控器或者数码相机中。
根据另一个一般实施方式,一种存储计算机程序产品的计算机可读介质。所述计算机程序产品包括指令,所述指令当被执行时工作以使计算机执行操作。所述操作包括使用手指的解剖模型在与电子设备进行交互的用户的手的图像中检测所述用户的手的手指的取向。所述操作还可以包括把所检测的取向映射到控制输入,并基于所述控制输入控制应用程序。
根据另一个一般实施方式,一种方法包括:访问与电子设备进行交互的用户的手的图像,并且基于对象的尺寸、对象的形状以及该对象是否和所述图像的边界相交,在所述图像中识别作为所述用户的手的手指的对象。所述方法还可以包括确定在所述图像中被识别为所述用户的手的手指的所述对象的位置,把所检测的位置映射到控制输入,并基于所述控制输入控制应用程序。
实施方式可以包括一个或更多的下列特征。例如,所述方法可以包括基于具有对应于手指的解剖模型的拉长形状的对象,在所述图像中识别作为所述用户的手的手指的对象。所述方法还可以包括基于在平行于所述电子设备的显示器的平面中取向的手指的解剖模型,在所述图像中识别作为所述用户的手的手指的对象。所述解剖模型可以是从手指的根部延伸到手指的指尖的手指模型。
在某些实施方式中,所述方法可以包括把所检测的位置映射到显示区域中对应于手指的所检测的位置的位置,并把所显示的指示符移动到所述显示区域中对应于手指的所检测的位置的位置。所述方法还可以包括识别在所显示的用户界面中对应于手指的所检测的位置的位置处的输入控制,并确定和被识别的输入控制相关联的操作。基于所述控制输入控制所述应用程序可以包括执行和被识别的输入控制相关联的操作。
在某些例子中,所述方法可以包括确定所述图像中手指的宽度,并基于所确定的宽度,估计手指相对于捕获所述图像的相机的深度位置。在这些例子中,可以基于所估计的深度位置映射所述控制输入。所述方法还可以包括检测手指的对应于指尖的部分,并确定所述位置为手指的对应于指尖的部分的质心。
所述方法可以包括在所述图像内定义图像区域以使所述图像区域的边界与所述图像的边界分隔开所预期的指尖宽度的至少一半的距离,其中,可以在所定义的图像区域内检测手指的位置。当在所述图像区域外部检测到指尖时,该指尖的位置可以被映射到所述图像区域的边界上的位置。
根据另一个一般实施方式,一种设备包括相机,该相机被配置成捕获与电子设备进行交互的用户的手的图像。所述设备还可以包括处理器,该处理器被配置成访问与电子设备进行交互的用户的手的图像,并基于对象的尺寸、对象的形状以及该对象是否和所述图像的边界相交,在所述图像中识别作为所述用户的手的手指的对象。所述处理器还被配置成确定在所述图像中被识别为所述用户的手的手指的所述对象的位置,把所检测的位置映射到控制输入,并基于所述控制输入控制应用程序。
根据另一个一般实施方式,一种存储计算机程序产品的计算机可读介质。所述计算机程序产品包含指令,所述指令当被执行时工作以使计算机执行操作。所述操作包括访问与电子设备进行交互的用户的手的图像,并基于对象的尺寸、对象的形状以及该对象是否和所述图像的边界相交,在所述图像中识别作为所述用户的手的手指的对象。所述操作还包括确定在所述图像中被识别为所述用户的手的手指的对象的位置,把所检测的位置映射到控制输入,并基于所述控制输入控制应用程序。
在附图和下面的描述中给出了一个或更多实施方式的细节。从所述描述和附图,本公开的其他的潜在特征和优点将会清楚。
附图说明
图1是展示检测用户指尖的位置作为用于提供用户输入的方法的情境图。
图2示出了示范性手持设备。
图3A示出了包括面朝着观察手持设备的显示器的用户的相机的另一个示范性手持设备。
图3B示出了包括从观察手持设备的显示器的用户转开(facing away)的相机的另一个示范性手持设备。
图4示出了用于向设备提供用户输入的用户手指的位置的例子。
图5是示出把检测到的手指位置和/或取向映射到控制输入并基于所述控制输入控制应用程序的过程的流程图。
图6是利用相机检测用户的指尖的位置作为用于提供用户输入的方法的过程的流程图。
图7A示出了手指从底部图像边缘进入视场(field of view)的例子。
图7B示出了手指在相机的视场内成角度出现的例子。
图8A示出了沿着扫描线的像素密度的例子。
图8B示出了通过边缘检测过程计算的梯度大小(magnitude)的例子。
图9A示出了链接的段的例子。
图9B示出了被识别为手指的链接的段的集合的例子。
图9C示出了代表手指的部分的子集的例子。
图9D示出了手指的宽度测量的例子。
图10A示出了在相机图像内定义的图像区域的例子。
图10B示出了被定位成使得指尖位置在图像区域外部的手指的例子。
图11A示出了把图像区域映射到显示区域的例子。
图11B示出了指示符位置直接和手指位置相关的例子。
图12示出了在显示屏幕上显示的应用程序的用户界面的例子。
图13A示出了在显示屏幕上显示的游戏的显示图像的例子。
图13B示出了包括主视角(first-person view)的手指控制射击游戏的例子。
图13C示出了包括第三人视角(third-person view)的手指控制射击游戏的例子。
相同的参考符号在各个附图中指示相同的元素。
具体实施方式
根据一个实施方式,使用相机来检测例如用户指尖的对象的位置作为用于提供用户输入的方法。例如,检测用户指尖的位置可用于滚过数据、控制光标位置和基于用户的指尖位置提供输入以控制视频游戏。还可以检测额外的信息,例如手指的取向。输入被提供给手持(或其他)设备,包括例如,蜂窝电话、视频游戏系统、便携式音乐(MP3)播放器、便携式视频播放器、个人数据助理(PDA)、音频/视频设备遥控器,和消费型数码相机,或者其他类型的设备。手持设备可以包括相机(camera),所以为了实施用于提供用户输入的系统,可以不要求额外的硬件。
图1是展示检测用户指尖的位置作为用于提供用户输入的方法的情景图。手持设备101(下面更详细地描述)包括显示器103,显示器103显示在手持设备101上运行的应用程序或者操作系统的输出。用户使用用户的手指201向手持设备101提供用户输入。如图所示,应用程序是格斗(melee combat)游戏,并且使用把手指位置和取向映射到虚拟对象120(例如一把剑)的表示(representation)的用户输入方法来实现控制该游戏。
例如,用户的手指201的移动111被映射到游戏内的虚拟对象120(例如剑或其他的武器)的移动112。在这个例子中,游戏使用三维计算机图形技术显示虚拟对象120的表示,因而虚拟对象120具有在虚拟体(virtual volume)内的位置和取向。在图像区域或者三维图像区域内的指根位置被映射到虚拟体内的虚拟对象根部位置,并且手指取向被映射到虚拟体内的虚拟对象取向。至此,虚拟对象120的位置和取向对应于用户手指201的位置和取向,所以用户的手指201映射到了虚拟对象120。
使用这种映射,用户例如向右挥动其手指201向游戏提供用户输入以使剑120向右砍。用户也可以使其手指201在和代表显示器103的前表面的平面平行的平面中取向,使用户的指尖指向垂直于显示器103的最高边缘的方向。用户手指201的这种取向使得剑120在虚拟环境中出现在和代表显示器103的前表面的平面平行的平面中,剑120的尖端指向垂直于显示器103的最高边缘的方向。如果用户在保持着取向的同时向上移动其手指201(即沿着垂直于显示器103的最高边缘的方向),则用户输入被提供给游戏,使剑120在显示器中以对应于用户手指201的方式向上刺。
类似地,如果用户在保持着取向的同时向着显示器移动其手指201,则剑120保持对应于用户手指201的取向,并在虚拟环境中沿着进入显示器中的方向行进。如果用户在保持着取向的同时从显示器移动开其手指201,则剑120保持对应于用户手指201的取向,并在虚拟环境中沿着离开显示器的方向行进。就这样,用户手指201的位置的变化映射到虚拟环境中虚拟对象(即剑)120的位置的变化,所述虚拟对象(即剑)120的位置的变化由显示器103上的虚拟对象120的显示中的变化代表。
在某些例子中,用户可以改变用户手指201的取向以改变剑120在虚拟环境中的取向。例如,用户可以倾斜其手指201以使剑120在虚拟环境中倾斜。剑120可以在虚拟环境中倾斜特定的度数,所述度数直接地或者成比例地对应于用户倾斜其手指201的度数。这样,用户手指201的取向的变化映射到虚拟环境中虚拟对象(即剑)120的取向的变化,所述虚拟对象(即剑)120的取向的变化由显示器103中虚拟对象120的显示中的变化代表。
对用户手指201的位置和取向的变化都可以被映射到虚拟环境中剑120的位置和取向。例如,用户可以向着显示器倾斜或者转动其手指201以便通过以对应于用户的手指201的移动的方式(例如以对应于向着显示器倾斜或者转动用户的手指201的方式)倾斜或者转动剑120,使剑120在虚拟环境中沿进入显示器的方向砍。用户也可以把其手指201指向显示器,并在把其手指201指向显示器的同时向着显示器移动其手指201。这种移动可以使剑120沿着进入显示器中的方向刺。在某些例子中,深度感测相机(例如立体相机或者飞行时间(time-of-flight)相机)可被用来检测用户的手指201距相机的距离。
应用程序(即格斗游戏)把虚拟环境(例如虚拟体)内的虚拟对象120的位置和取向与虚拟环境内的其他虚拟对象进行比较,以控制游戏进行。基于所述比较,应用程序(即格斗游戏)确定虚拟对象120是否与虚拟目标对象(例如虚拟人物、另一个虚拟武器、目标等)相交(intersect)。虚拟目标对象也可以被表现在显示器上。在显示器上显示虚拟目标对象允许用户向着或向虚拟目标对象移动其手指201,以使虚拟对象120在虚拟环境中以对应的方式移动,并因而与虚拟目标对象相交。把用户的手指201的位置和取向映射到虚拟对象120的位置和取向允许用户使用其手指201控制格斗游戏。
参考图2,手持设备101包括相机102和为应用程序提供视觉显示的显示器103(例如LCD屏幕)。手持设备101还可以包括按钮104或者小键盘105。内部的处理器被配置成从相机102、按钮104和/或小键盘105接受输入,并基于所述输入执行功能或者操作,并在显示器103上表现图像。
相交102是捕获图像的设备。例如,相机102可以是数码相机、数码摄像机,或者任何其他类型的捕获图像的设备。设备101可以包括一个或更多相机。相机102可以捕获与应用程序进行交互的物理对象的图像。例如,相机102可以捕获在相机102的视场内与应用程序物理地进行交互的用户的手指或者指尖的图像。
相机102还可以包括照明手指201的发射器(emitter),所以相机可以在低环境光中检测手指。发射器可以产生红外光,并且相机102可以对红外光敏感。或者,发射器可以产生可见光(例如白光),并且相机102可以对可见光敏感。代替发射器,显示屏幕103可以发射光以便可以在低环境光中检测手指201。
相机102也可以是深度感测相机(depth sensing camera)。例如,相机102可以是包括多个传感器的立体相机,以便从不同的视点获取手指201的图像。相机102能够通过比较每个视点的图像来感测深度,或者,该设备可以通过在每个视点中检测手指201并比较手指位置来计算深度。在另一个例子中,相机102可以是飞行时间相机,其包括发射光脉冲的发射器和能够测量光脉冲被感测到的时间的传感器。飞行时间相机能够通过比较光脉冲被发射的时间和被感测的时间、从而测量光所占路径的长度来感测深度。
显示器103向用户表现可以包括文本或者图像的视觉显示。视觉显示可以指示关于设备101的状态的信息,或者为诸如游戏的应用程序或者其他在设备101上执行的应用程序提供视觉界面(visual interface)。显示器103也可以显示图形、图像或者文本,其包含用于所描述的实施方式中的软件应用程序以及操作设备101所需的操作系统程序的用户界面。
按钮104是用户可以用来向设备101提供输入命令的输入控制按钮。按钮104可以对应于基于在显示器103上表现的界面改变或者不改变的特定功能。按钮104可用来激活使用户能够基于在由相机102拍摄的图像中捕获的用户手指的移动向设备101提供输入的输入控制程序。例如,用户手指的移动可以在按钮104被按下时被映射到用户输入,而在按钮104未被按下时可以被忽略。使用按钮104来控制用户输入程序的激活可以防止用户手指的偶然移动(例如当用户从其口袋或者包中取出设备101时)被映射到用户输入。按钮104的激活也可以控制相机102捕获图像,并控制处理器执行在把用户手指的移动映射到用户输入时使用的其他过程。
设备101的用户使用小键盘105输入命令和数据来操作和控制操作系统程序以及应用程序。小键盘105包括用户可以激活以向设备101提供输入的一组一个或更多按钮或者压力激活的开关。小键盘105可以使用户能够把文本数据和用户命令输入设备101中。
处理器(未示出)可以从按钮104和小键盘105接受输入,并可以分析由相机102捕获的图像以便把用户手指的移动映射到用户输入命令。处理器可以基于用户输入执行功能或者操作,并且可以在适当时响应于用户输入在显示器103上表现显示。处理器可以执行在手持设备101上运行的应用程序和操作系统程序。手持设备101可以包括多个处理器(或者其他控制电路),并且可以包括存储应用程序、操作系统、用户输入程序以及由应用程序、操作系统和用户输入程序使用的数据的存储器(或者其他计算机可读存储介质)。
尽管在图2中设备101被示出为移动设备,但是在进一步的方面中,设备101可以包括个人计算机(PC)或者游戏系统、膝上型电脑、手持或平板计算机、个人数据助理(“PDA”)或者例如计算机键盘或者遥控器的其他类型的嵌入式系统的部件。设备101也可以是便携式音乐播放器、寻呼机或者其他的通信设备,或者用于游戏、通信和/或数据组织的手持或便携式电子设备。
参考图3A,在一个一般实施方式中,手持设备101包括面朝着观察手持设备101的显示器的用户的相机102。在这个实施方式中,用户将其手指201保持在手持设备101上方,在相机102前面较短的距离,以便向手持设备101提供用户输入。相机102可以被定位成使得相机的视场覆盖显示器前面的区域。用户也使用其手指202来操纵按钮104。
参考图3B,在另一个一般实施方式中,手持设备101包括从观察手持设备101的显示器的用户转开的相机102。在这个实施方式中,用户将其手指201保持在手持设备101下面,在相机102后面较短的距离,以便向手持设备101提供用户输入。如图所示,相机102的暴露部分(exposed portion)在手持设备101的后侧,并且不被看到。用户也使用其手指202来操纵按钮104。尽管图3A和图3B示出了两个示范性相机结构,但是在其他的实施方式中,相机也可以被设置在手持设备的任何表面或者侧面上。
在图3A和图3B中所示的实施方式中,用户通过在相机102成像的区域内移动手指201来与手持设备101进行交互。此外,用户可以通过使用拇指202或者另一个手指来按按钮104或者小键盘105的按键来与手持设备101进行交互。
可以以各种方式握持和/或操作设备。例如,用户可以用第一只手握持设备,同时使用第二只手的手指来指点。在另一个例子中,用户可以用用来握持设备的同一只手的手指来指点。在又一个例子中,设备可以是静态的(例如搁在桌子上),并且用户可以用任一手指指点。
图4示出了向设备提供用户输入的用户手指201的位置的例子。例如,用户保持手指201以使指尖401处于相机的视场402内。用户的指尖401可以是距相机102二到十厘米的距离(尽管也可以使用更小或者更大的距离)。相机102可以是通常用于拍摄照片或者视频的类型或者结构,并且如果手指201是离焦的(out of focus),其仍可用来提供用户输入。具体来说,如下面更全面地描述的那样,处理器分析相机图像以便分割手指201的图像。处理器在分割相机图像之后计算指尖401的取向和位置。
图5是示出把检测到的手指位置和/或取向映射到控制输入并基于控制输入控制应用程序的过程500的流程图。为了方便,执行所述过程时引用了针对图2到图4描述的具体部件。但是,类似的方法学可以应用在其他实施方式中,其中,使用不同的部件来限定系统的结构,或者,其中功能被在图2到图4所示的部件间不同地分布。
设备101的处理器在与电子设备进行交互的用户的手的图像中检测用户的手的手指的位置和/或取向(510)。例如,处理器205可以处理或者分析一个或更多访问的图像,以便在所访问的图像中检测用户的手指。在这个例子中,处理器可以通过把所访问的图像中的特征与图像中的手指的典型特征(例如手指的解剖模型)进行比较来检测手指,或者,可以通过检测所访问的图像中的运动来检测手指。所述处理器也可以基于所访问图像的皮肤颜色分析来检测手指,或者,可以通过把包括一个或更多手指的当前图像与背景模型进行比较以检测在当前图像和背景模型之间的差别来检测手指。处理器205可以使用任何类型的技术在单个图像内或者多个图像的集合内检测手指。
在一个或更多图像中检测手指以后,处理器分析所述一个或更多图像的一部分以确定所检测的手指的位置和/或取向。处理器可以基于在检测到手指的相机的视场内的区域来确定手指的位置,并且处理器可以基于相机的视场内的手指的角度来确定手指的取向。处理器可以在二维或者三维中确定手指的位置。当在三维中确定手指的位置时,处理器可以基于手指的尺寸估计手指距相机的距离,或者可以处理从立体或者飞行时间相机捕获的包括深度信息的图像。类似地,处理器可以在二维空间或者三维空间中确定手指的取向。在检测手指的位置和取向时,处理器可以计算代表在三维空间中所检测的手指的位置和取向的向量。
处理器把所检测的位置和/或取向映射到控制输入(520)。处理器可以基于在检测位置和/或取向时表现的显示,把所检测的手指的位置和/或取向映射到控制输入。例如,处理器可以把手指的位置和/或取向与在所显示的用户界面中表现的物件的位置和/或取向进行比较。基于所述比较,处理器可以把手指的所检测的位置和/或取向映射到和所显示的界面控制(例如所显示的对应于手指的位置和/或取向的界面控制)相关联的特定命令或操作。
处理器也可以把所检测的位置和/或取向映射到在用户界面中显示的对象的位置和/或取向。例如,处理器可以把所检测的位置和/或取向映射到在用户界面中显示的光标(例如鼠标光标)的位置和/或取向。这样,用户的手指的移动可以被映射到光标在用户界面中的移动,使用户能够使用光标控制应用程序。
处理器也可以把所检测的位置和/或取向映射到虚拟环境中的虚拟对象的位置和/或取向。例如,如上面针对图1所述,处理器可以把所检测的位置和/或取向映射到虚拟环境中的虚拟对象(例如格斗游戏中的武器),以使虚拟环境中的虚拟对象的位置和/或取向对应于所检测的位置和/或取向。
处理器还可以基于由所检测的位置和/或取向代表的手势(gesture),把所检测的位置和/或取向映射到控制输入。处理器可以分析所检测的手指的移动(例如改变位置和/或取向),以确定用户是否做出了与控制输入相关的手势。例如,处理器可以把所检测的手指的移动与一组认识的(recognized)手势进行比较,基于所述比较检测所认识的手势的做出,并把移动(例如手指位置和/或取向)映射到和所认识的手势相关联的控制输入。在一个例子中,用户可以在相机前面按照字母“Z”的形状移动其手指来提供将设备101关闭或者使设备101进入休眠模式的输入。
处理器基于控制输入控制应用程序(530)。例如,处理器可以执行对应于控制输入的应用程序中的操作或者命令。处理器可以基于控制输入选择所显示的界面控制,或者,可以基于控制输入控制所显示的对象(例如,光标或者虚拟对象)。控制输入可以和数据处理应用程序、游戏、操作系统、媒体应用程序、设备控制应用程序,或者任何其他类型的应用程序中的命令或者操作相关。
图6是示出利用相机来检测用户的指尖的位置和/或取向作为用于提供用户输入的方法的过程600的流程图。如上针对标号510所描述的,过程600可以用于基于图像检测手指的位置和/或取向。为了方便,执行所述过程时引用了针对图2到图4描述的具体部件。但是,类似的方法学可以应用在其他实施方式中,其中,使用不同的部件来限定系统的结构,或者,其中功能被在图2到图4所示的部件间不同地分布。
手持设备101的处理器从相机102获取相机图像(610),并对相机图像进行边缘处理(620),以检测手指的轮廓。使用该轮廓,处理器分割相机图像(630)以便识别手指。处理器基于所识别的手指计算指示手指的位置和/或取向的信息(640)。
在某些实施方式中,设备(例如相机102)捕获彩色格式的图像,在所述彩色格式中,彩色通道(color channels)被打包(packed)(例如,16比特字包含5比特红色、6比特绿色和5比特蓝色)。在一个示范性实施方式中,获取相机图像(610)包括把相机图像转换为对于后续处理更为有效和方便的彩色格式。例如,处理器可以把彩色格式转换为8比特灰阶(grayscale)或者24比特RGB彩色。
在其他的实施方式中,由于手指接近相机,手指出现模糊,因此,图像中的高频成分可能不归因于手指。在这种情况下,获取相机图像(610)还包括向图像施加低通滤波器。施加低通滤波器可以去除比归因于手指的频率成分更高的频率成分,并且可以减小副边缘(ancillary edges)的大小和信号噪声的影响。
在进一步的实施方式中,设备(例如相机102)以比所描述的过程要求的更高的分辨率捕获图像。在这种情况下,获取相机图像(610)可以包括抽取(decimating)图像。抽取的方法可以包括合并(binning),藉此,被抽取的像素值被作为区域内多个像素值的平均来计算。合并过程可以减小信号噪声的影响,因为在多个像素的区域内平均噪声成分倾向于具有比该区域内单个像素的噪声成分更低的大小。可以使用子采样或者其他的抽取方法。
边缘检测过程(620)检测手指周围的轮廓。边缘检测过程计算每一个像素处图像密度的梯度。处理器可以在边缘检测过程中使用索贝尔(Sobel)操作。索贝尔操作把一对内核与原始图像卷积来确定梯度的水平和垂直分量。下面在等式1A和1B中示出了这些内核计算:
G X = - 1 0 + 1 - 2 0 + 2 - 1 0 + 1 * A - - - ( 1 A )
G Y = + 1 + 2 + 1 0 0 0 - 1 - 2 - 1 * A - - - ( 1 B )
在等式1A和1B中,A是相机图像,并且Gx和Gy是水平和垂直梯度分量。水平和垂直分量被组合。组合结果计算为平方分量的总和的平方根,在下面等式1C中示出:
G = G X 2 + G Y 2 - - - ( 1 C )
可以使用更为有效的近似。使用近似可以使通常在手持设备上采用的处理器能够执行必要的计算。在近似中,组合结果计算为水平和垂直分量的绝对值的总和,在下面等式1D中示出:
G=a×|GX|+b×|GY|                            (1D)
此外,水平和垂直分量可以和预先定义的标量a和b相乘。标量a可以大于或不大于标量b。在某些实施方式中,标量a可以大于标量b,所以系统可以对手指的侧面比对皮肤的褶皱更加敏感。可以使用其他的边缘检测方法替代索贝尔操作。
作为手指接近相机的结果,手指在相机图像中可能显得模糊。形成手指的轮廓的梯度可能跨越几个像素的宽度。手指内的特征,例如皮肤褶皱、角质层和手指甲也可能形成边缘,但是模糊可以减小那些梯度的大小。
在分割过程的实施方式中(630),相机图像可以按具有取向的扫描线处理。所述取向被选择成基本垂直于手指,以使每一个扫描线代表手指的一个横截面。取向可以预先确定或者不预先确定。例如,取向可以基于设备101内的相机102的取向和预期用户握持设备的通常取向。
图7A示出了手指201从底部图像边缘701进入视场402,所以手指取向702显得基本垂直的例子。在这个例子中,扫描线703被定义为像素的水平行。定义了间隔一个像素的多个平行的扫描线。
图7B示出了手指201在相机的视场402内显得成角度的例子。在这个例子中,扫描线705被定义垂直于手指取向704。定义了大致间隔一个像素的多个平行的扫描线。
如图7B中所示,在扫描线取向成角度的例子中,处理器在边缘处理之前旋转相机图像。旋转处理旋转图像数据,以使扫描线呈现为被旋转的图像缓冲区(image buffer)内水平的像素行。在被旋转的图像缓冲区中,扫描线上的像素可以具有连续的存储器地址,所以不使用变换。
在如图7B中所示,在扫描线取向成角度的其他实施方式中,分割过程在访问扫描线的像素的梯度结果时使用变换。在像素值被访问时,可以计算扫描线上的像素的存储器地址。在计算上,变换可能比或不比旋转图像更有效率。
图8A示出了沿着扫描线(例如图7A的扫描线703)的像素的强度的例子,并且图8B示出了由边缘检索过程计算的梯度大小的例子。在手指的任一侧的边缘被标记为801和802。作为手指接近相机的结果,手指可以在相机图像中显得模糊,这使得边缘的斜率显得缓和,如图8B中所示。
在分割相机图像时(630),处理器识别局部最大,并在局部最大的点分割扫描线。局部最大被识别为作为803识别的、以所述局部最大为中心的区域内的最大值,并且其值比周围值至少大出被识别为804的阈值。扫描线段(segments)被链接形成图数据结构(graph data structure)。如果段重叠,则段被链接到相邻扫描线的段。
图9A示出了链接的段的例子,其中水平线代表段,而垂直线代表链接。在这个例子中,背景内的特征也可能形成边缘。在形成包括被链接的段的图数据结构以后,该图数据结构可以被修剪。在一个例子中,手指周围的边缘是不完整的,从而扫描线段包括手指的一部分和背景的一部分。通过修剪连接子集的那些段,被相对较少段(相对于例如区域的尺寸)链接的图的子集(例如,区域)可以被解除链接(un-linked)。
选择链接的段的集合作为手指。选择标准包括尺寸、形状,以及和预期手指进入图像(例如如图7A中所示,在底部图像边缘701)的相机图像(或被转动的图像)的边界的相交。尺寸标准把像素计数和预先定义的范围进行比较。形状标准把宽度和高度的比率和预先定义的范围进行比较。边界相交标准确定链接的段的集合是否包括预先选择的扫描线的段。
选择标准可以代表手指的解剖模型,并且手指的解剖模型可以和链接的段的集合进行比较,以确定链接的段的集合是否是手指。解剖模型可以包括定义相机图像中的手指的典型属性的信息,例如手指的典型尺寸和典型形状。由解剖模型定义的手指的典型形状可以反映从手指根部到手指尖的延伸的手指的拉长形状。解剖模型还可以包括皮肤纹理特征,例如指纹(fingerprints)预期的褶皱和预期的区域。手指的解剖模型可以代表整个手指,并且包括例如手指关节、手指和手的连接、手指甲、皮肤颜色等的特征。
解剖模型还可以涉及以与设备进行交互的用户保持手指的方式取向的手指。例如,在用户通过将其手指保持在平行于设备的显示器的平面中与设备进行交互的实施方式中,解剖模型可以代表在平行于设备的显示器的平面中取向的手指的解剖模型。把解剖模型以与设备进行交互的用户保持手指的方式来取向可以有助于在与设备进行交互的图像中检测手指。
在某些实施方式中,可以使用具有变化的特性的手指的多个解剖模型。例如,不同尺寸的解剖模型(例如成年人和儿童模型)或者不同性别模型(例如男性和女性模型)可被用来确定链接的段的集合是否是手指。具体来说,多个解剖模型中的每一个均可以和链接的段的集合进行比较,直到找到匹配为止,或者所有的模型已经被使用,并且确定链接的段的集合不是手指为止。使用多个解剖模型可以实现更为大量用户的手指的检测。
在与设备进行交互时,用户可以保持其手指处于相对于设备不同的取向。如果与设备进行交互的用户手指的取向不和解剖模型相匹配,则可能不能正确地检测用户的手指。因此,具有变化的取向的手指的解剖模型可被用来帮助在较宽的取向范围上检测手指。把链接的段的集合与具有变化的取向的解剖模型进行比较也可以用于确定用户的手指的取向,所述取向可以被映射到控制输入。
在某些结构中,可以使用手指登记过程把特定手指向特定设备进行登记(register)。例如,用户可以向设备提供识别信息并控制设备捕获用户手指的一个或更多图像。设备可以从所述一个或更多被捕获的图像产生对应于用户的手指的解剖模型,并把为用户的手指产生的解剖模型与识别所述用户的信息相关联地存储。当随后用户使用该设备并提供了识别信息(或者以其他方式被该设备识别)时,该设备使用为用户的手指产生的解剖模型检测与该设备进行交互的用户手指的位置和/或取向。使用专为特定用户的手指产生的解剖模型可以有助于检测该用户的手指。
图9B示出了被识别为手指的链接的段的集合的例子。在手指轮廓周围的所有位置可能不都检测到边缘。例如,在901所指示的手指的轮廓的位置不包括检测到的边缘。结果,在902识别的段可以被修剪(例如,可以去除由虚线指示的部分)。在手指内检测到边缘。例如,在903识别的边缘是由指关节处的皮肤褶皱导致的,而在904识别的边缘是由手指甲或者角质层导致的。被链接的段的路径绕过这些特征。
处理器从所选择的链接的段的集合计算手指的位置和/或取向信息。选择靠近集合末端的段(例如在图9B中由905指示的段)作为代表指尖的子集。选择靠近集合末端的段(例如在图9B中由906指示的段)作为代表手指根部的子集的一部分。代表指尖或者手指根部的段的子集包括了在最远段的预先确定数量的扫描线内的段。
图9C示出了代表手指的一部分的子集的例子。选择靠近集合末端的段的子集来代表指尖。例如,子集907代表指尖。靠近集合末端的段被选作代表手指根部的子集的一部分。例如,子集908代表手指的根部。
处理器把指尖位置909计算为被识别的指尖部分(例如子集)907的质心。可以使用浮点精度或者浮点的定点模拟来计算质心。处理器把根部位置910计算为被识别的手指根部部分(例如子集)908的质心。可以使用浮点精度或者浮点的定点模拟来计算质心。浮点精度或者浮点的定点模拟允许以比相机图像更高的分辨率(或者,在图像被抽取的情况下,比被抽取的相机图像更高的分辨率)计算/估计质心。因此,使用浮点精度或者浮点的定点模拟可以通过允许边缘过程620和分割过程630处理较低分辨率图像来减小处理功耗要求。处理功率要求的减小可适于典型的手持设备的处理器能力。
处理器把手指取向911计算为从根部位置910到指尖位置909形成的向量。在另一个实施方式中,处理器计算手指的矩(moments)(例如被修剪的所选择链接段的集合)以确定手指取向。作为选择,可以计算额外的特性,例如手指的平均宽度。
参考图9D,靠近指尖和手指根部,垂直于手指取向911测量手指的宽度。从指尖位置和根部位置之间的手指取向向量上的点测量指尖宽度913。例如,在位于距指尖预先确定的距离的点912处测量指尖宽度913。选择预先确定的距离以避免指尖的弯曲并避免手指的指甲部分。避免手指的指甲部分可能是有益的,因为对手指的那个部分的分割可能不那么准确。从指尖位置和根部位置之间的手指取向向量的点测量手指根部宽度915。例如,在位于距图像底部预先确定的距离的点914处(例如预先确定的扫描线)测量手指根部宽度915。
作为选择,可以使用手指宽度测量估计三维位置和取向。例如,指尖宽度913和手指根部宽度915可以和手指的解剖模型的对应宽度进行比较以估计手指的深度尺寸(例如,距相机的距离)。指尖宽度913依赖于指尖距相机的距离。测量的指尖宽度可以被反向映射到距离。例如,大量值的指尖宽度被映射到较短距离,并且小量值的指尖宽度被映射到较远距离。所计算的距离被包括作为指尖位置坐标的分量。同样地,手指根部宽度915被映射到手指根部距离,并被包括在手指根部位置坐标中。手指取向被计算为从手指根部位置到指尖位置形成的向量,包括被映射的距相机的指尖距离和被映射的距相机的手指根部距离坐标分量。所描述的分割过程可以被优化,以便在计算上有效率,并且可适于典型的手持设备的处理器能力。
在分割(630)的另一个实施方式中,使用分水岭变换(Watershedtransformation)处理相机图像。边缘(例如梯度大小)被解析以识别局部最小。针对每一个局部最小定义一个区域。每一个区域被扩展,以包括具有小于或等于一个值的大小的相连接的像素。针对增加的值重复这个过程,直到区域集合被扩展成包括图像的所有像素。区域可以合并以形成更大的区域。基于和上面描述的类似的标准(例如尺寸、形状,以及在预期手指进入图像的情况下与相机图像的边界的相交)选择区域作为手指。和上面描述的类似,从所选择的区域计算手指的位置和取向信息。
可以应用分水岭变换的各种实施方式。所选择的分水岭变换的实施方式可以依赖于设备的处理能力。例如,分水岭变换的计算较不密集的实施方式可用于具有有限的处理能力的设备。此外,获取图像可以包括抽取图像(如上所述)以便减小分水岭变换的处理要求。
其他的方法可用于处理相机图像。例如,可以使用Condensation或“条件密度传播”(Conditional Density Propagation)过程。例如,可以利用已知的手指分割数据初始化Condensation过程。此后,当手指移动时,Condensation过程预测连续的视频帧或者相机图像中的手指分割。Condensation过程的每一次迭代均执行选择、预测和测量。选择使用参数化采样产生用于评估的潜在状态集合。预测使用动态模型估计目标的状态如何变化。测量把预测的状态和实际像素数据进行比较。Condensation过程在追踪混乱背景中的目标时特别稳健,并且可能对手持设备有用,因为每视频帧迭代的数量和每一次迭代中采样的像素的数量可以根据手指设备的处理器能力调整。卡尔曼滤波(Kalman Filtering)是可用于处理相机图像的另一个过程。
指尖位置坐标空间被变换成对应于显示器103以便在用户的手指移动和显示器103之间提供直观的映射。在相机朝着用户的实施方式中,如图3A所示,变换包括镜像变换。在这个实施方式中,相机从后侧观察手指,并且用户从前侧观察手指和显示器,所以把坐标系统镜像允许相机对手指的观察对应于用户对手指和显示器的观察。在扫描线取向成角度的实施方式中,如图7B中所示,变换包括旋转与扫描线取向的角度相反的角度。在相机102的取向和显示器103的取向不同的实施方式中,变换校正了取向上的差别。
参考10A,在相机图像1002内定义了图像区域1001。处理器可以定义图像区域1001,并在基于所述图像检测手指的位置和/或取向时处理图像区域1001,如上面针对数字510所述。
在指尖位置坐标空间变换包括旋转的实施方式中,图像区域1001被相对于相机图像1002旋转。图像区域1001被定义为使得指尖位置1007可以移动到图像区域1001内的所有位置,包括区域的边界。例如,如距离1003、1004、1005和1006所指示,距相机图像1002的边界的最小距离是预期的指尖宽度的一半。这个例子导致了指尖位置1007可以移动到图像区域1001内的所有位置的图像区域1001,因为指尖位置在指尖的中心中,并且指尖位置和指尖边缘之间的指尖的部分大约是指尖宽度的一半。此外,在手指的根部,选择从相机图像1002的边界到图像区域1001的距离1006以满足手指选择标准。
图10B示出了手指定位使得指尖位置1008在图像区域1001外部的例子。在这个例子中,指尖位置1008被映射到图像区域1001的边界上的最近位置1009。
图11A示出了把图像区域1001映射到显示区域1101的例子,显示区域1101是显示器103的一部分。把图像区域1001映射到显示区域1101可用于把所检测的位置和/或取向映射到控制输入,如上面针对数字520所述。显示区域1101可以包括整个显示器103或者显示器103的一部分。例如,显示区域1101可以包括显示器103的活动区域,状态条除外。相对于图像区域1001的指尖位置1007被映射到相对于显示区域1101的指示符位置1102。
图11B示出了指示符位置1102直接和手指位置相关的例子。对于在平行于显示器的平面上的手指位置,手指位置和指示符位置之间存在一对一相关。手指201的移动1103被映射到指示符位置1102的类似移动1104。例如,如果用户把手指放在第一指尖位置,则导致第一指示符位置。如果用户把其手指移动到第二指尖位置,则导致第二指示符位置。在这个例子中,如果用户移动其手指所以其返回第一指尖位置,则指示符也将返回第一指示符位置。用户可发现这比控制杆更直观。例如,控制杆向指示符位置施加速度,以使指示符位置以间接方式和控制杆的状态相关。
在另一个实施方式中,图像区域是三维区域,并且指尖位置包括代表所计算的距相机的距离的分量。例如,如上所述,使用手指的宽度测量计算代表所计算的距相机的距离的分量。定义三维图像区域以使指尖位置能够移动到所定义空间内的所有位置。
在一个例子中,指尖靠近相机,并且相机具有一个有限的范围,在该范围中,相机在平行于显示器的平面内对指尖移动成像(例如小的移动可以导致指尖跑到相机的视场外)。在这个例子中,区域边界被定义成包括距相机的一系列距离,其中,相机的视场不限制相机对阈值以下的指尖成像的区域。
三维图像区域被映射到三维显示区域。三维显示区域是虚拟体的一部分,并被使用三维计算机图形表现技术表现到显示器103。
在某些结构中,相对于三维图像区域的指尖位置被映射到相对于三维虚拟体的指示符位置。指示符位置直接和手指的位置相关。在手指位置和指示符位置之间存在一对一相关。手指的移动被映射到虚拟体内指示符位置的类似移动。例如,如果用户把手指放在第一指尖位置,则导致虚拟体中的第一指示符位置。如果用户把手指移动到第二指尖位置,则导致虚拟体中的第二指示符位置。在这个例子中,如果用户移动手指所以其返回第一指尖位置,则指示符也将返回虚拟体中的第一指示符位置。第二指示符位置在虚拟体中的高度、宽度和深度尺寸上可以和第一指示符位置不同。
图12绘出了在显示屏103上显示的应用程序用户界面的例子。显示区域1101被示出,并且在对应于指尖位置的指示符位置1102,显示光标图像1202被作为指示符。显示图像显示屏上对象,包括具有和个人计算机、手持设备或任何其他类型的电子设备上的那些类似的外观和功能的图标1203、滚动条1204、菜单1205和按钮(未示出)。基于位置指示符的控制功能和个人计算机上的鼠标光标类似。
用户通过定位其指尖以使指示符位置在屏上对象的界限内,并点击按钮104或者小键盘105的按键来激活屏上对象。用户通过定位其指尖以使指示符位置在屏上对象的界限内,按下并保持按钮104或者小键盘105的按键,移动其指尖以使指示符位置移动,并释放按钮104或者小键盘105的按键来拖动屏上对象。
在另一个实施方式中,用户通过定位其指尖以使指示符位置在屏上对象的界限内并做出手势来激活屏上对象。所述手势可以是移动指尖更靠近相机,其中,在小于预先定义的时限的持续时间上,距离减小了大于预先定义的阈值的量。如上所述,使用指尖宽度计算指尖的距离。使用开始所述手势时的指示符位置来确定输入,因为用户在做出所述手势的同时可能非有意地改变指示符位置。
检测手势的过程的实施方式包括把所计算的指尖距离(或者指尖尺寸/宽度)存储在缓冲区中。数据被存储在环形数组(circular array)数据结构中,藉此新的数据样本代替了最老的数据样本。数据样本指尖距离(或者尺寸/宽度)被与当前指尖距离(或者尺寸/宽度)比较,以确定所述数据样本指尖距离(或者尺寸/宽度)是否比当前指尖距离(或者尺寸/宽度)更靠近了超过预先定义的阈值距离的距离。
在另一个实施方式中,所描述的技术适于使用户能够滚过所显示的列表。例如,列表包括多个等级。在所述列表是联系人列表(例如地址和电话号码)的实施方式中,第一等级包括字母表字母的列表,第二等级包括归档在字母下的名字的列表,并且第三等级包括联系人的信息。在所述列表是歌曲列表(例如音乐)的实施方式中,第一等级包括艺术家列表,第二等级包括专辑列表(例如由艺术家创作的专辑),第三等级包括歌曲列表(例如专辑上包括的歌曲),并且第四等级包括歌曲。
在列表是时间和日期的列表(例如日历)的实施方式中,第一等级包括月的列表,第二等级包括天(例如一月内的天)的列表,第三等级包括时间(例如一天内的时间),并且第四等级包括在一时间的信息(例如约会)。在另一个实施方式中,其中所述列表是时间和日期的列表(例如日历),第一等级包括星期的列表,第二等级包括天(例如一星期内的天)的列表,第三等级包括时间(例如一天内的时间),并且第四等级包括在一时间的信息(例如约会)。
图像区域1001内的指尖位置1007的水平分量控制对列表的等级的选择。图像区域1001被划分为对应于等级的许多列。应用程序被配置成根据指尖位置位于的列显示信息。用户通过把其指尖向左或向右移动在等级之间切换。设备可以显示动画或者播放声音向用户指示等级的变化。
在等级(level)内,项目的列表被显示,其中项目指示符按列排列。项目指示符可以包括文本和/或图标。图像区域1001内的指尖位置1007被映射到项目指示符排列的界限,并与项目指示符排列的界限内的项目指示符位置比较。在对应于指尖位置的位置处的项目指示符被表现成指示其被选择。例如,可以用交替的颜色(突出显示)表现项目指示符,或者,当项目指示符对应于指尖位置时,可以用较大尺寸表现该项目指示符。其他的项目指示符可以移动以便为所述较大尺寸让出地方。设备也可以播放声音向用户指示选择的变化。
在某些实施方式中,指尖距相机的距离控制对列表的等级的选择。预先定义的距离范围由许多个等级划分。应用程序根据对应于指尖距相机的距离的等级显示信息。用户通过移动其指尖更靠近或远离相机在等级之间切换。设备也可以显示动画或者播放声音向用户指示等级的变化。定义三维图像区域并且三维图像区域的距离分量被划分为层。
在等级内,其中排列了项目指示符的项目列表被显示。项目指示符可以按列、行、网格,或者成行成列地,或者任意的布置排列,项目指示符可以包括文本或者图标。图像区域1001内的指尖位置1007被映射到项目指示符排列的界限,并与项目指示符排列的界限内的项目指示符位置比较。在对应于指尖位置的位置处的项目指示符被表现以指示其被选择。例如,可以用交替的颜色(突出显示)表现项目指示符,或者,当项目指示符对应于指尖位置时,可以用较大尺寸表现该项目指示符。其他的项目指示符可以移动以便为所述较大尺寸让出地方。设备也可以播放声音向用户指示选择的变化
在某些排列中,用户可以通过改变用户手指的取向来改变等级。用户通过在平行于显示器103的平面内旋转用户手指来改变等级。用户可以通过把其手指定位在平行于显示器103的平面中并使其手指取向指着朝着九点钟方向来选择第一等级。然后,用户可以通过旋转其手指以便指着朝着十二点钟方向选择第二等级,然后通过旋转其手指以指着朝着三点钟方向来选择第三等级。
此外,在某些例子中,用户通过沿着进入显示器103方向改变用户手指的取向或者角度。在这些例子中,用户通过朝着显示器103旋转用户的手指改变等级。用户通过保持用户手指的取向并保持着所述取向改变用户手指的位置在特定等级内选择项目。
在图像区域被划分为行和列,或者三维图像区域被划分为行、列和层的实施方式中,可以动态地调整划分以使包括指尖的划分被放大。放大包括指尖的划分可以减小用户在试图切换行或列时非有意地切换层的可能性,或者在试图切换行时非有意地切换列的可能性。
参考图13A,在显示器103上显示了游戏。手指201的移动1301被映射到游戏内的移动1302。在这个实施方式中,所描述的技术适于使用户能够控制射击游戏。例如,指尖位置被映射到瞄准功能。在手指控制的射击游戏的实施方式中,相对于图像区域的指尖位置被映射到相对于显示区域的靶位置。
图13B描绘了包括主视角的手指控制的射击游戏的例子。显示区域1101被示出,并且瞄准图像1303(例如十字瞄准线)在对应于指尖位置的指示符位置1102被显示为指示符。靶图像1304也被显示。用户可以移动其手指以便把瞄准图像1303定位在靶图像1304上。
用户可以按按钮104或者小键盘105上的按键来激活射击功能。在另一个实施方式中,用户可以做出手势来激活射击功能。可以如上所述做出并检测所述手势。
手指控制的射击游戏可以表现主视角,例如如图13B中所示。用户也能够改变虚拟环境内的视角。如果用户移动其手指以使指示符位置1102在显示区域1101的左部分中的子区域1305内移动,则视角向左滚动(或者旋转)。如果用户移动其手指以使指示符位置1102在显示区域1101的右部分中的子区域1306内移动,则视角向右滚动(或者旋转)。类似地,如果用户移动其手指以使指示符位置1102在显示区域1101的上部分中的子区域(未示出)内移动,则游戏向上滚动(或者旋转),并且,如果用户移动其手指以使指示符位置1102在显示区域1101的下部分中的子区域(未示出)内移动,则游戏向上滚动(或者旋转)。如果用户移动其手指以使指尖距相机的距离比预先定义的阈值更近,则游戏向前移动(或者放大)。如果用户移动其手指以使指尖距相机的距离比预先定义的阈值更远,则游戏向后移动(或者缩小)。
在另一个实施方式中,在具有主视角的手指控制的射击游戏中,用户通过按按钮104、小键盘105上的按键、方向板或者控制杆改变虚拟环境内的视角。
在又一个实施方式中,在手指控制的射击游戏中,手指位置控制虚拟环境内的视角。在这个实施方式中,瞄准图像可以是静态的,或者被自动功能控制。在一个例子中,速度被计算为图像区域(或者三维图像区域)内指尖位置相对于图像区域(或者三维图像区域)内的中心位置的差。在另一个例子中,速度被计算为图像区域(或者三维图像区域)内指尖位置相对于中心在图像区域(或者三维图像区域)内的子区域的边界上的最靠近部分的差,其中,子区域代表“死区”。速度的水平分量被施加到虚拟环境内的视点(viewpoint),以使虚拟环境的视角被水平地旋转(或滚动)。速度的垂直分量被施加到虚拟环境内的视点,以使虚拟环境的视角被垂直地旋转(或者滚动)。速度的距离分量被施加于虚拟环境内的视点,以使虚拟视点的位置在虚拟环境中沿着当前前视轨迹(forward looking trajectory)平移(或者缩放)。
图13C示出了包括第三人视角的手指控制的射击游戏的例子。在这个例子中,在显示器103上表现玩家图像1307。以使武器弹道(weapon trajectory)1309对准指示符位置1102的取向表现武器图像1308。当用户移动其手指时,武器图像1308和武器弹道1309跟踪指示符位置1102。在某些结构中,武器弹道1309对应于用户用其手指指着的方向,所以改变用户手指的取向改变了武器弹道1309。
在另一个实施方式中,在具有第三人视角的手指控制的射击游戏中,用户通过按按钮104、小键盘105上的按键、方向板或者控制杆移动玩家图像1307。手指控制的射击游戏可以采用各种形式。靶图像1304和玩家图像1307可以代表例如宇宙飞船、车辆、士兵、异形、怪物、卡通人物、猎人和猎物,等等。
在另一个实施方式中,提供了用于在图像上滚动和缩放的用户输入技术。图像可以包括相片、地图,或者任何其他类型的图像。可以显示地图,其中,比例尺确定了被表现的细节的等级。例如,“缩小的”地图显示城市的位置,并且“放大的”地图显示各个街道。
缩放图像(例如改变比例尺)的过程使用手指距相机的距离来控制比例尺或者图像的“缩放”。在手持被保持在设备上方的系统的实施方式中,靠近相机的距离对应于大比例尺(即被放大),而远离相机的距离对应于小比例尺(即被缩小)。
在手指被保持在设备下方的系统的实施方式中,如图3B所示,靠近相机的距离可以对应于小比例尺(即被缩小),而远离相机的距离可以对应于大比例尺(即被放大)。在另一方面,靠近相机的距离可以对应于大比例尺(即被缩小),而远离相机的距离可以对应于小比例尺(即被缩小)。用户可以选择优选的配置,并且所述优选的配置可以为用户应用。
在把手指距相机的距离映射成控制图像的比例尺或者“缩放”的实施方式中,三维图像区域的距离分量被映射到图像的尺寸(或者“缩放”)范围。相对于三维图像区域的指尖位置的距离分量被映射到相对于图像的尺寸(或者“缩放”)范围的图像尺寸(或者“缩放”)。
在另一个实施方式中,使用手指位置滚动(或者“摇动”)图像实现滚动图像的过程。图像区域1001内的指尖位置被映射到表现到显示器103的图像的显示区域位置。移动手指以使表现到显示器103的图像的显示区域移动,从而滚动或者“摇动”该图像。
在又一个实施方式中,滚动和缩放图像的过程把图像区域1001映射到图像内的范围,其中,图像内的可滚动范围依赖于缩放等级。例如,用户在平行于显示器的平面中移动手指以便滚过整个图像,并且,一旦期望的图像部分被集中在显示器上,在用户沿着垂直于显示器的方向移动手指来“放大”。一旦“放大”,用户在平行于显示器的平面中移动手指以便滚过图像的一部分。对于小比例尺(即被缩小),可滚动范围被定义成包括整个图像,所以通过滚动图像,图像的所有部分都被显示。对于大比例尺(即被放大),可滚动范围被定义成包括一部分图像,所以图像被缩放的部分可以被精确地滚动。可滚动范围可以和比例尺成线性比例。
在另一个实施方式中,提供了用于在虚拟环境内导航的用户输入技术。虚拟环境可以是游戏的一部分,包括但不限于上面所讨论的游戏类型。应用程序或者游戏使用计算机图形技术把虚拟环境表现到显示器。
在虚拟环境内导航允许在虚拟三维空间内移动,并且系统提供控制在虚拟三维空间内导航的用户输入。例如,速度被计算为图像区域(或者三维图像区域)内指尖位置相对于图像区域(或者三维图像区域)内的中心位置的差。在另一个例子中,速度被计算为图像区域(或者三维图像区域)内指尖位置相对于中心在图像区域(或者三维图像区域)内的子区域的边界上的最靠近部分的差,其中,子区域代表“死区”。在计算过速度以后,该速度的水平分量被施加到虚拟环境内的视点,以使虚拟环境的视角被水平地旋转(或滚动)。速度的垂直分量被施加到虚拟环境内的视点,以使虚拟环境的视角被垂直地旋转(或者滚动)。速度的距离分量被施加于虚拟环境内的视点,以使虚拟视点的位置在虚拟环境中沿着当前前视轨迹平移(或者缩放)。
在另一个实施方式中,提供了用于使用户能够定位和旋转虚拟对象的用户输入技术。在这个实施方式中,应用程序或者游戏使用计算机图形技术把虚拟环境表现到显示器。例如,用户通过在平行于显示器的平面中移动手指旋转虚拟对象。在这个例子中,图像区域1001被映射到旋转范围,并且图像区域内的指尖位置被映射到旋转范围内的角度。在另一个例子中,用户通过沿着垂直于显示器的方向移动手指“放大”和“缩小”。在这个例子中,指尖距相机的距离被映射到虚拟对象的比例尺。
在除了上述那些以外的应用程序和游戏中,可以使用跟踪手指位置和取向的方法。此外,所描述的提供用户输入的技术可在包括相机或者其他成像设备的任何设备中使用。
实施方式可以包括例如过程、设备或用于执行过程的设备。例如,实施方式可以包括一个或更多被配置成执行一个或更多过程的设备。设备可以包括例如分立或者集成的硬件、固件和软件。设备可以包括例如计算设备或者其他的计算或处理设备,特别是假如被编程为执行一个或更多所描述的过程及其变体。这些计算或处理设备可以包括例如处理器、集成电路、可编程逻辑器件、个人计算机、个人数字助理、游戏设备、蜂窝电话、计算器和包含软件应用程序的设备。
实施方式也可以具体实施在包括一个或更多计算机可读介质的设备中,所述计算机可读介质具有用于实现一个或更多过程的指令。所述计算机可读介质可以包括例如存储设备、存储器和编码或者传送指令的格式化电磁波。计算机可读介质还可以包括例如各种非易失或易失存储器结构,例如硬盘、快闪存储器、随机访问存储器、只读存储器和紧制盘。指令可以存储在例如硬件、固件、软件和电磁波中。
因此,计算设备可以代表被编程为执行所描述的实施方式的计算设备的实施方式,并且存储设备可以代表存储用于实现所描述的实施方式的指令的计算机可读介质。
已经描述了许多实施方式。尽管如此,将会理解,可以做出各种修改。因此,其他的实施方式在下列权利要求的范围内。

Claims (20)

1.一种用于从图像检测输入的方法,包括:
通过将从用户的手的图像确定的一组经链接的段与手指的至少一个解剖模型相比较,来确定所述一组经链接的段是否是所述用户的手的手指或不是手指;和
在确定所述一组经链接的段是所述用户的所述手指的情况下:
使用手指的所述至少一个解剖模型在与电子设备进行交互的所述用户的手的所述图像中检测所述用户的手的所述手指的取向,其中所述解剖模型包括用于比较从所述用户的手的所述图像中所确定的经链接的段的信息;
把所检测的取向映射到控制输入;和
基于所述控制输入通过执行对应于所述控制输入的命令或操作来控制应用程序,
其中使用手指的所述至少一个解剖模型在与所述电子设备进行交互的所述用户的手的所述图像中检测所述用户的手的所述手指的取向包括:
识别所述图像的对应于手指皮肤中褶皱的区域,和
当在所述图像中检测手指时忽略所识别的所述图像的对应于所述手指皮肤中所述褶皱的区域。
2.如权利要求1所述的方法,还包括:在确定所述一组经链接的段是所述用户的所述手指的情况下,在与所述电子设备进行交互的用户的手的图像中检测用户的手的手指的位置,其中,基于所检测的位置映射所述控制输入。
3.如权利要求2所述的方法,其中:
所述控制输入定义了虚拟环境中对应于手指的所检测的位置和所检测的取向的位置和取向;并且
基于所述控制输入控制所述应用程序包括:
控制所述虚拟环境中的虚拟对象移动到所述虚拟环境中对应于手指的所检测的位置和所检测的取向的位置和取向;和
在所述虚拟环境中对应于手指的所检测的位置和所检测的取向的位置和取向表现所述虚拟对象的显示。
4.如权利要求1所述的方法,其中,使用手指的解剖模型在与电子设备进行交互的用户的手的图像中检测用户的手的手指的取向包括:识别对应于指尖的手指的第一部分,识别对应于手指根部的手指的第二部分,计算手指的第一部分和手指的第二部分之间的向量,并基于所述向量确定手指的取向。
5.如权利要求1所述的方法,其中,使用手指的解剖模型在与电子设备进行交互的用户的手的图像中检测用户的手的手指的取向包括:
获取手指的图像,和
对所述图像进行边缘处理。
6.如权利要求5所述的方法,还包括:
沿着具有垂直于手指的取向的扫描线分割所述图像;
基于所述边缘处理来链接段;和
基于所链接的段的集合与所述手指的解剖模型的比较,选择所链接的段的集合作为所述手指。
7.如权利要求1所述的方法,还包括检测手指周围的轮廓。
8.如权利要求7所述的方法,其中,通过计算所述图像中图像密度的梯度,并识别所述图像密度的梯度中局部最小和局部最大中的至少一个来检测手指周围的轮廓。
9.如权利要求1所述的方法,其中,使用手指的解剖模型在与电子设备进行交互的用户的手的图像中检测用户的手的手指的取向包括:基于对象的尺寸、对象的形状以及该对象是否和所述图像的边界相交来在所述图像中选择作为手指的对象。
10.如权利要求1所述的方法,其中,使用解剖模型检测手指的取向包括:使用在平行于所述电子设备的显示器的平面中取向的手指的解剖模型来检测手指的取向,所述解剖模型是从手指的根部延伸到手指的指尖的手指模型。
11.一种用于从图像检测输入的系统,包括:
用于通过将从用户的手的图像确定的一组经链接的段与手指的至少一个解剖模型相比较,以确定所述一组经链接的段是否是所述用户的手的手指或不是手指的装置;
用于在确定所述一组经链接的段是所述用户的所述手指的情况下使用手指的所述至少一个解剖模型在与电子设备进行交互的所述用户的手的所述图像中检测所述用户的手的所述手指的取向的装置,其中所述解剖模型包括用于比较从所述用户的手的所述图像中所确定的经链接的段的信息;
用于把所检测的取向映射到控制输入的装置;和
用于基于所述控制输入通过执行对应于所述控制输入的命令或操作来控制应用程序的装置,
其中所述用于使用手指的所述至少一个解剖模型在与所述电子设备进行交互的所述用户的手的所述图像中检测所述用户的手的所述手指的取向的装置包括:
用于识别所述图像的对应于手指皮肤中褶皱的区域的装置,和
用于当在所述图像中检测手指时忽略所识别的所述图像的对应于所述手指皮肤中所述褶皱的区域的装置。
12.一种用于从图像检测输入的方法,包括:
访问与电子设备进行交互的用户的手的图像;
检测所述图像中的一组经链接的段;
基于对象的尺寸是否是对应于手指的解剖模型的典型尺寸、对象的形状是否是对应于所述手指的解剖模型的拉长形状、所述一组经链接的段的比较是否与所述手指的解剖模型相匹配、以及该对象是否和所述图像的边界相交,在所述图像中识别作为用户的手的手指的对象,所述相交对应于进入所述图像的所述手指;
使用所述手指的解剖模型在与电子设备进行交互的所述用户的手的所述图像中检测所述用户的手的所述手指的取向;
确定在所述图像中被识别为用户的手的手指的对象的位置;
把所检测的位置映射到控制输入;和
基于所述控制输入通过执行对应于所述控制输入的命令或操作来控制应用程序,
其中使用所述手指的所述解剖模型在与所述电子设备进行交互的所述用户的手的所述图像中检测所述用户的手的所述手指的取向包括:
识别所述图像的对应于手指皮肤中褶皱的区域,和
当在所述图像中检测手指时忽略所识别的所述图像的对应于所述手指皮肤中所述褶皱的区域。
13.如权利要求12所述的方法,其中,在所述图像中识别作为用户的手的手指的对象包括:基于在平行于所述电子设备的显示器的平面中取向的所述手指的解剖模型,在所述图像中识别作为用户的手的手指的对象,所述解剖模型是从手指的根部延伸到手指的指尖的手指模型。
14.如权利要求12所述的方法,其中:
把所检测的位置映射到控制输入包括:把所检测的位置映射到显示区域中对应于手指的所检测的位置的位置;和
基于所述控制输入控制应用程序包括:把所显示的指示符移动到所述显示区域中对应于手指的所检测的位置的位置。
15.如权利要求12所述的方法,其中:
把所检测的位置映射到控制输入包括:识别在所显示的用户界面中对应于手指的所检测的位置的位置处的输入控制,并确定和所识别的输入控制相关联的操作;和
基于所述控制输入控制应用程序包括:执行和所识别的输入控制相关联的操作。
16.如权利要求12所述的方法,其中:
确定在所述图像中被识别为用户的手的手指的对象的位置包括:
确定所述图像中手指的宽度;和
基于所确定的宽度,估计手指相对于捕获所述图像的相机的深度位置;和
基于所估计的深度位置映射所述控制输入。
17.如权利要求12所述的方法,其中,确定在所述图像中被识别为用户的手的手指的对象的位置包括:检测对应于指尖的手指部分,并确定作为所述对应于指尖的手指部分的质心的位置。
18.如权利要求12所述的方法,还包括在所述图像中定义图像区域,以使所述图像区域的边界与所述图像的边界分隔开至少所预期的指尖宽度的一半的距离,其中,在所定义的图像区域内检测手指的位置。
19.如权利要求18所述的方法,其中,当在所述图像区域外检测到指尖时,所述指尖的位置被映射到所述图像区域的边界上的位置。
20.一种用于从图像检测输入的系统,包括:
用于访问与电子设备进行交互的用户的手的图像的装置;
用于检测所述图像中的一组经链接的段的装置;
用于基于对象的尺寸是否是对应于手指的解剖模型的典型尺寸、对象的形状是否是对应于所述手指的解剖模型的拉长形状、所述一组经链接的段的比较是否与所述手指的解剖模型相匹配、以及该对象是否和所述图像的边界相交,在所述图像中识别作为用户的手的手指的对象的装置,所述相交对应于进入所述图像的所述手指;
用于使用所述手指的解剖模型在与所述电子设备进行交互的所述用户的手的所述图像中检测所述用户的手的所述手指的取向的装置;
用于确定在所述图像中被识别为用户的手的手指的对象的位置的装置;
用于把所检测的位置映射到控制输入的装置;和
用于基于所述控制输入通过执行对应于所述控制输入的命令或操作来控制应用程序的装置,
其中所述用于使用所述手指的所述解剖模型在与所述设备进行交互的所述用户的手的所述图像中检测所述用户的手的所述手指的取向的装置包括:
用于识别所述图像的对应于手指皮肤中褶皱的区域的装置,和
用于当在所述图像中检测手指时忽略所识别的所述图像的对应于所述手指皮肤中所述褶皱的区域的装置。
CN200880023087.7A 2007-05-04 2008-05-02 用于紧凑设备的基于相机的用户输入 Active CN101689244B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US91606307P 2007-05-04 2007-05-04
US60/916,063 2007-05-04
PCT/US2008/062456 WO2008137708A1 (en) 2007-05-04 2008-05-02 Camera-based user input for compact devices

Publications (2)

Publication Number Publication Date
CN101689244A CN101689244A (zh) 2010-03-31
CN101689244B true CN101689244B (zh) 2015-07-22

Family

ID=39939568

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200880023087.7A Active CN101689244B (zh) 2007-05-04 2008-05-02 用于紧凑设备的基于相机的用户输入

Country Status (5)

Country Link
US (1) US8472665B2 (zh)
EP (1) EP2153377A4 (zh)
JP (1) JP5453246B2 (zh)
CN (1) CN101689244B (zh)
WO (1) WO2008137708A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107621881A (zh) * 2017-09-29 2018-01-23 歌尔科技有限公司 虚拟内容控制方法及控制设备

Families Citing this family (226)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9195344B2 (en) * 2002-12-10 2015-11-24 Neonode Inc. Optical surface using a reflected image for determining three-dimensional position information
EP1851750A4 (en) * 2005-02-08 2010-08-25 Oblong Ind Inc SYSTEM AND METHOD FOR CONTROL SYSTEM BASED ON GESTURES
US8537112B2 (en) * 2006-02-08 2013-09-17 Oblong Industries, Inc. Control system for navigating a principal dimension of a data space
US9075441B2 (en) * 2006-02-08 2015-07-07 Oblong Industries, Inc. Gesture based control using three-dimensional information extracted over an extended depth of field
US8537111B2 (en) 2006-02-08 2013-09-17 Oblong Industries, Inc. Control system for navigating a principal dimension of a data space
US8531396B2 (en) * 2006-02-08 2013-09-10 Oblong Industries, Inc. Control system for navigating a principal dimension of a data space
US9910497B2 (en) * 2006-02-08 2018-03-06 Oblong Industries, Inc. Gestural control of autonomous and semi-autonomous systems
US9823747B2 (en) 2006-02-08 2017-11-21 Oblong Industries, Inc. Spatial, multi-modal control device for use with spatial operating system
US8370383B2 (en) 2006-02-08 2013-02-05 Oblong Industries, Inc. Multi-process interactive systems and methods
CN101689152B (zh) * 2007-04-24 2016-10-05 奥布隆工业有限公司 多进程间数据共享以及交互操作和交叉网络执行方法
CN101689244B (zh) * 2007-05-04 2015-07-22 高通股份有限公司 用于紧凑设备的基于相机的用户输入
US8678896B2 (en) 2007-06-14 2014-03-25 Harmonix Music Systems, Inc. Systems and methods for asynchronous band interaction in a rhythm action game
US8690670B2 (en) 2007-06-14 2014-04-08 Harmonix Music Systems, Inc. Systems and methods for simulating a rock band experience
US8726194B2 (en) 2007-07-27 2014-05-13 Qualcomm Incorporated Item selection using enhanced control
US8077143B2 (en) 2007-09-27 2011-12-13 Microsoft Corporation Motion based display management
WO2009128064A2 (en) * 2008-04-14 2009-10-22 Pointgrab Ltd. Vision based pointing device emulation
US9495013B2 (en) 2008-04-24 2016-11-15 Oblong Industries, Inc. Multi-modal gestural interface
US9684380B2 (en) 2009-04-02 2017-06-20 Oblong Industries, Inc. Operating environment with gestural control and multiple client devices, displays, and users
US10642364B2 (en) 2009-04-02 2020-05-05 Oblong Industries, Inc. Processing tracking and recognition data in gestural recognition systems
US9952673B2 (en) 2009-04-02 2018-04-24 Oblong Industries, Inc. Operating environment comprising multiple client devices, multiple displays, multiple users, and gestural control
US9740922B2 (en) 2008-04-24 2017-08-22 Oblong Industries, Inc. Adaptive tracking system for spatial input devices
US8723795B2 (en) 2008-04-24 2014-05-13 Oblong Industries, Inc. Detecting, representing, and interpreting three-space input: gestural continuum subsuming freespace, proximal, and surface-contact modes
US9740293B2 (en) 2009-04-02 2017-08-22 Oblong Industries, Inc. Operating environment with gestural control and multiple client devices, displays, and users
US8160564B1 (en) * 2008-06-10 2012-04-17 Sprint Communications Company L.P. Remote control of computing device applications using mobile device
JP2011525283A (ja) * 2008-06-18 2011-09-15 オブロング・インダストリーズ・インコーポレーテッド 車両インターフェース用ジェスチャ基準制御システム
WO2010006054A1 (en) 2008-07-08 2010-01-14 Harmonix Music Systems, Inc. Systems and methods for simulating a rock and band experience
JP4609543B2 (ja) * 2008-07-25 2011-01-12 ソニー株式会社 情報処理装置及び情報処理方法
US8351979B2 (en) * 2008-08-21 2013-01-08 Apple Inc. Camera as input interface
KR20100039017A (ko) * 2008-10-07 2010-04-15 한국전자통신연구원 메뉴 마크업 언어를 이용한 원격 제어 장치
WO2010042953A1 (en) * 2008-10-10 2010-04-15 Gesturetek, Inc. Single camera tracker
KR100975869B1 (ko) * 2008-10-17 2010-08-13 삼성모바일디스플레이주식회사 터치 포인트 검출 방법 및 장치
US10086262B1 (en) 2008-11-12 2018-10-02 David G. Capper Video motion capture for wireless gaming
US9383814B1 (en) 2008-11-12 2016-07-05 David G. Capper Plug and play wireless video game
US9586135B1 (en) 2008-11-12 2017-03-07 David G. Capper Video motion capture for wireless gaming
US20100138797A1 (en) * 2008-12-01 2010-06-03 Sony Ericsson Mobile Communications Ab Portable electronic device with split vision content sharing control and method
US20110279475A1 (en) * 2008-12-24 2011-11-17 Sony Computer Entertainment Inc. Image processing device and image processing method
US8289288B2 (en) * 2009-01-15 2012-10-16 Microsoft Corporation Virtual object adjustment via physical object detection
KR101119325B1 (ko) * 2009-01-22 2012-03-06 삼성전자주식회사 휴대 단말기
US20100188337A1 (en) * 2009-01-28 2010-07-29 W.W. Grainger, Inc. Computer mouse providing a touchless input interface
JP4771183B2 (ja) * 2009-01-30 2011-09-14 株式会社デンソー 操作装置
US8624962B2 (en) * 2009-02-02 2014-01-07 Ydreams—Informatica, S.A. Ydreams Systems and methods for simulating three-dimensional virtual interactions from two-dimensional camera images
US8517834B2 (en) * 2009-02-17 2013-08-27 Softkinetic Studios Sa Computer videogame system with body position detector that requires user to assume various body positions
KR101016095B1 (ko) * 2009-02-20 2011-02-17 성균관대학교산학협력단 이진영상들 및 하프변환을 이용한 영상 배경 변화량 검출 장치 및 방법
JP2010210490A (ja) * 2009-03-11 2010-09-24 Ricoh Co Ltd 移動計測装置及び方法、並びにプログラム
US10824238B2 (en) 2009-04-02 2020-11-03 Oblong Industries, Inc. Operating environment with gestural control and multiple client devices, displays, and users
US9317128B2 (en) 2009-04-02 2016-04-19 Oblong Industries, Inc. Remote devices used in a markerless installation of a spatial operating environment incorporating gestural control
CN102422306B (zh) * 2009-04-08 2015-09-09 高通股份有限公司 增强型手持式屏幕感测指针
JP5182202B2 (ja) * 2009-04-14 2013-04-17 ソニー株式会社 情報処理装置、情報処理方法及び情報処理プログラム
US20100271303A1 (en) * 2009-04-27 2010-10-28 Shoei-Lai Chen Non-contact mouse apparatus and method for operating the same
US20100271297A1 (en) * 2009-04-27 2010-10-28 Shoei-Lai Chen Non-contact touchpad apparatus and method for operating the same
US8465366B2 (en) 2009-05-29 2013-06-18 Harmonix Music Systems, Inc. Biasing a musical performance input to a part
US8449360B2 (en) 2009-05-29 2013-05-28 Harmonix Music Systems, Inc. Displaying song lyrics and vocal cues
US20100309197A1 (en) * 2009-06-08 2010-12-09 Nvidia Corporation Interaction of stereoscopic objects with physical objects in viewing area
US20100315413A1 (en) * 2009-06-16 2010-12-16 Microsoft Corporation Surface Computer User Interaction
JP5402322B2 (ja) * 2009-07-02 2014-01-29 ソニー株式会社 情報処理装置および情報処理方法
US8388151B2 (en) * 2009-07-23 2013-03-05 Kenneth J. Huebner Object aware, transformable projection system
JP5230558B2 (ja) * 2009-08-05 2013-07-10 株式会社エルモ社 資料提示装置
JP5552772B2 (ja) * 2009-08-26 2014-07-16 ソニー株式会社 情報処理装置、情報処理方法およびコンピュータプログラム
US8438503B2 (en) * 2009-09-02 2013-05-07 Universal Electronics Inc. System and method for enhanced command input
KR101648339B1 (ko) * 2009-09-24 2016-08-17 삼성전자주식회사 휴대용 단말기에서 영상인식 및 센서를 이용한 서비스 제공 방법 및 장치
US20110074675A1 (en) * 2009-09-29 2011-03-31 Nokia Corporation Method and apparatus for initiating a feature based at least in part on the tracked movement
KR101613529B1 (ko) * 2009-10-07 2016-04-19 엘지이노텍 주식회사 카메라 모듈
GB2474536B (en) 2009-10-13 2011-11-02 Pointgrab Ltd Computer vision gesture based control of a device
US9933852B2 (en) 2009-10-14 2018-04-03 Oblong Industries, Inc. Multi-process interactive systems and methods
US9971807B2 (en) 2009-10-14 2018-05-15 Oblong Industries, Inc. Multi-process interactive systems and methods
US10357714B2 (en) 2009-10-27 2019-07-23 Harmonix Music Systems, Inc. Gesture-based user interface for navigating a menu
US9981193B2 (en) 2009-10-27 2018-05-29 Harmonix Music Systems, Inc. Movement based recognition and evaluation
US8255006B1 (en) * 2009-11-10 2012-08-28 Fusionone, Inc. Event dependent notification system and method
US20110199387A1 (en) * 2009-11-24 2011-08-18 John David Newton Activating Features on an Imaging Device Based on Manipulations
US8325136B2 (en) 2009-12-01 2012-12-04 Raytheon Company Computer display pointer device for a display
KR101092722B1 (ko) * 2009-12-02 2011-12-09 현대자동차주식회사 차량의 멀티미디어 시스템 조작용 사용자 인터페이스 장치
WO2011069151A2 (en) * 2009-12-04 2011-06-09 Next Holdings Limited Sensor methods and systems for position detection
US8421635B2 (en) * 2009-12-10 2013-04-16 Wei-Ting Liu Patient bed
KR20110074017A (ko) * 2009-12-24 2011-06-30 삼성전자주식회사 멀티미디어 기기 및 그 동작 제어 방법
KR20110076458A (ko) * 2009-12-29 2011-07-06 엘지전자 주식회사 디스플레이 장치 및 그 제어방법
US9344753B2 (en) * 2009-12-30 2016-05-17 Crytek Gmbh Mobile input and sensor device for a computer-controlled video entertainment system
US20120297341A1 (en) * 2010-02-16 2012-11-22 Screenovate Technologies Ltd. Modified Operating Systems Allowing Mobile Devices To Accommodate IO Devices More Convenient Than Their Own Inherent IO Devices And Methods For Generating Such Systems
US8550908B2 (en) 2010-03-16 2013-10-08 Harmonix Music Systems, Inc. Simulating musical instruments
BR112012026354A8 (pt) * 2010-04-13 2018-05-08 Nokia Corp aparelho, método, programa de computador e interface de usuário
US20110254939A1 (en) * 2010-04-16 2011-10-20 Tatiana Pavlovna Kadantseva Detecting User Input Provided To A Projected User Interface
US9358456B1 (en) 2010-06-11 2016-06-07 Harmonix Music Systems, Inc. Dance competition game
EP2579955B1 (en) 2010-06-11 2020-07-08 Harmonix Music Systems, Inc. Dance game and tutorial
US8562403B2 (en) 2010-06-11 2013-10-22 Harmonix Music Systems, Inc. Prompting a player of a dance game
KR101699298B1 (ko) * 2010-06-30 2017-01-24 엘지전자 주식회사 이동 단말기 및 이동 단말기의 제어 방법
US9024166B2 (en) 2010-09-09 2015-05-05 Harmonix Music Systems, Inc. Preventing subtractive track separation
EP2428870A1 (en) * 2010-09-13 2012-03-14 Samsung Electronics Co., Ltd. Device and method for controlling gesture for mobile device
US8890803B2 (en) 2010-09-13 2014-11-18 Samsung Electronics Co., Ltd. Gesture control system
JP5597087B2 (ja) * 2010-10-04 2014-10-01 パナソニック株式会社 仮想物体操作装置
US8610831B2 (en) 2010-10-12 2013-12-17 Nokia Corporation Method and apparatus for determining motion
US9952671B2 (en) 2010-10-12 2018-04-24 Nokia Technologies Oy Method and apparatus for determining motion
KR101646616B1 (ko) * 2010-11-30 2016-08-12 삼성전자주식회사 객체 제어 장치 및 방법
JP2012115414A (ja) * 2010-11-30 2012-06-21 Nintendo Co Ltd ゲーム装置、ゲームを提供する方法、ゲームプログラム、および、ゲームシステム
KR101799270B1 (ko) * 2010-12-29 2017-11-21 엘지전자 주식회사 이동 단말기 및 이것의 터치 인식 방법
DE102011002577A1 (de) 2011-01-12 2012-07-12 3Vi Gmbh Fernsteuerungseinrichtung zur Steuerung einer Vorrichtung anhand eines beweglichen Objektes sowie Schnittstellen-Modul zur Kommunikation zwischen Modulen einer derartigen Fernsteuerungseinrichtung oder zwischen einem der Module und einer externen Vorrichtung
US9170606B2 (en) * 2011-01-31 2015-10-27 Panasonic Intellectual Property Management Co., Ltd. Information processing device, processing control method, program, and recording medium
CN103347437B (zh) 2011-02-09 2016-06-08 苹果公司 3d映射环境中的凝视检测
US10025388B2 (en) * 2011-02-10 2018-07-17 Continental Automotive Systems, Inc. Touchless human machine interface
GB201103346D0 (en) * 2011-02-28 2011-04-13 Dev Ltd Improvements in or relating to optical navigation devices
US9104239B2 (en) * 2011-03-09 2015-08-11 Lg Electronics Inc. Display device and method for controlling gesture functions using different depth ranges
US9189068B2 (en) * 2011-03-14 2015-11-17 Lg Electronics Inc. Apparatus and a method for gesture recognition
CN102681754B (zh) * 2011-03-16 2016-03-30 联想(北京)有限公司 信息处理设备和信息处理方法
JP5779923B2 (ja) * 2011-03-17 2015-09-16 ソニー株式会社 情報処理装置、情報処理方法およびコンピュータプログラム
US8928589B2 (en) * 2011-04-20 2015-01-06 Qualcomm Incorporated Virtual keyboards and methods of providing the same
US11048333B2 (en) * 2011-06-23 2021-06-29 Intel Corporation System and method for close-range movement tracking
KR101189633B1 (ko) * 2011-08-22 2012-10-10 성균관대학교산학협력단 손가락 움직임에 따른 포인터 제어명령어 인식 방법 및 손가락 움직임에 따라 포인터를 제어하는 모바일 단말
JP2014211661A (ja) * 2011-08-29 2014-11-13 シャープ株式会社 検出装置、検出方法および検出プログラム
US8678927B2 (en) 2011-10-04 2014-03-25 Microsoft Corporation Game controller on mobile touch-enabled devices
US20130088429A1 (en) * 2011-10-05 2013-04-11 Pantech Co., Ltd. Apparatus and method for recognizing user input
GB2509651B (en) * 2011-10-11 2015-07-08 Ibm Object designation method, device and computer program
CN102426480A (zh) * 2011-11-03 2012-04-25 康佳集团股份有限公司 一种人机交互系统及其实时手势跟踪处理方法
CN103108197A (zh) 2011-11-14 2013-05-15 辉达公司 一种用于3d视频无线显示的优先级压缩方法和系统
US9628843B2 (en) * 2011-11-21 2017-04-18 Microsoft Technology Licensing, Llc Methods for controlling electronic devices using gestures
US8959604B2 (en) 2011-11-25 2015-02-17 Synchronoss Technologies, Inc. System and method of verifying a number of a mobile terminal
US9274597B1 (en) * 2011-12-20 2016-03-01 Amazon Technologies, Inc. Tracking head position for rendering content
US9931154B2 (en) 2012-01-11 2018-04-03 Biosense Webster (Israel), Ltd. Touch free operation of ablator workstation by use of depth sensors
US9625993B2 (en) * 2012-01-11 2017-04-18 Biosense Webster (Israel) Ltd. Touch free operation of devices by use of depth sensors
US20130188825A1 (en) * 2012-01-19 2013-07-25 Utechzone Co., Ltd. Image recognition-based startup method
US9829715B2 (en) 2012-01-23 2017-11-28 Nvidia Corporation Eyewear device for transmitting signal and communication method thereof
US20130194173A1 (en) * 2012-02-01 2013-08-01 Ingeonix Corporation Touch free control of electronic systems and associated methods
EP2624116B1 (en) 2012-02-03 2017-09-06 EchoStar Technologies L.L.C. Display zoom controlled by proximity detection
JP2013171529A (ja) * 2012-02-22 2013-09-02 Shimane Prefecture 操作入力装置、操作判定方法およびプログラム
CN107665042B (zh) 2012-03-26 2021-05-07 苹果公司 增强的虚拟触摸板和触摸屏
KR20130109817A (ko) 2012-03-28 2013-10-08 삼성전자주식회사 손가락 패턴을 이용한 손 모양 인식 장치 및 방법
CN102662577B (zh) * 2012-03-29 2016-08-10 华为终端有限公司 一种基于三维显示的光标操作方法及移动终端
US9477303B2 (en) 2012-04-09 2016-10-25 Intel Corporation System and method for combining three-dimensional tracking with a three-dimensional display for a user interface
DE102012206850A1 (de) * 2012-04-25 2013-10-31 Robert Bosch Gmbh Telekommunikationsgerät mit einer Projektionseinrichtung und Verfahren zum Betrieb eines Telekommunikationsgeräts mit einer Projektionseinrichtung
US8938124B2 (en) 2012-05-10 2015-01-20 Pointgrab Ltd. Computer vision based tracking of a hand
US9747306B2 (en) * 2012-05-25 2017-08-29 Atheer, Inc. Method and apparatus for identifying input features for later recognition
US9400575B1 (en) 2012-06-20 2016-07-26 Amazon Technologies, Inc. Finger detection for element selection
US9213436B2 (en) 2012-06-20 2015-12-15 Amazon Technologies, Inc. Fingertip location for gesture input
JP5852928B2 (ja) * 2012-06-27 2016-02-03 株式会社オプティム 所作入力装置、所作入力方法及びプログラム
US9195310B2 (en) * 2012-07-09 2015-11-24 Samsung Electronics Co., Ltd. Camera cursor system
US20140022171A1 (en) * 2012-07-19 2014-01-23 Omek Interactive, Ltd. System and method for controlling an external system using a remote device with a depth sensor
KR20140019950A (ko) * 2012-08-07 2014-02-18 성균관대학교산학협력단 단말기의 모노 카메라에 입력된 손가락 영상을 이용한 3차원 좌표 생성 방법 및 모노 카메라에 입력된 손가락 영상을 이용하여 3차원 좌표를 생성하는 이동 단말기
CN103576848B (zh) * 2012-08-09 2016-07-13 腾讯科技(深圳)有限公司 手势操作方法和手势操作装置
US20140062864A1 (en) * 2012-09-03 2014-03-06 Samsung Electronics Co., Ltd. Method and apparatus for extracting three-dimensional distance information from recognition target
US9578224B2 (en) 2012-09-10 2017-02-21 Nvidia Corporation System and method for enhanced monoimaging
JP2014059803A (ja) * 2012-09-19 2014-04-03 Alps Electric Co Ltd 入力装置
US9898183B1 (en) * 2012-09-19 2018-02-20 Amazon Technologies, Inc. Motions for object rendering and selection
US20140085245A1 (en) * 2012-09-21 2014-03-27 Amazon Technologies, Inc. Display integrated camera array
US20140088402A1 (en) 2012-09-25 2014-03-27 Innovative Therapies, Inc. Wound measurement on smart phones
US9690384B1 (en) * 2012-09-26 2017-06-27 Amazon Technologies, Inc. Fingertip location determinations for gesture input
US9310895B2 (en) * 2012-10-12 2016-04-12 Microsoft Technology Licensing, Llc Touchless input
DE102012219736A1 (de) * 2012-10-29 2014-04-30 Bayerische Motoren Werke Aktiengesellschaft Verfahren und Vorrichtung zum Betreiben einer Eingabevorrichtung
US10423214B2 (en) 2012-11-20 2019-09-24 Samsung Electronics Company, Ltd Delegating processing from wearable electronic device
US10551928B2 (en) 2012-11-20 2020-02-04 Samsung Electronics Company, Ltd. GUI transitions on wearable electronic device
US9477313B2 (en) 2012-11-20 2016-10-25 Samsung Electronics Co., Ltd. User gesture input to wearable electronic device involving outward-facing sensor of device
US10185416B2 (en) * 2012-11-20 2019-01-22 Samsung Electronics Co., Ltd. User gesture input to wearable electronic device involving movement of device
US11157436B2 (en) 2012-11-20 2021-10-26 Samsung Electronics Company, Ltd. Services associated with wearable electronic device
US9030446B2 (en) * 2012-11-20 2015-05-12 Samsung Electronics Co., Ltd. Placement of optical sensor on wearable electronic device
US11237719B2 (en) 2012-11-20 2022-02-01 Samsung Electronics Company, Ltd. Controlling remote electronic device with wearable electronic device
US8994827B2 (en) 2012-11-20 2015-03-31 Samsung Electronics Co., Ltd Wearable electronic device
US11372536B2 (en) 2012-11-20 2022-06-28 Samsung Electronics Company, Ltd. Transition and interaction model for wearable electronic device
US20140152566A1 (en) * 2012-12-05 2014-06-05 Brent A. Safer Apparatus and methods for image/sensory processing to control computer operations
KR101416749B1 (ko) * 2012-12-13 2014-07-08 주식회사 케이티 Tv 재생 장치 및 방법
KR101956073B1 (ko) * 2012-12-20 2019-03-08 삼성전자주식회사 시각적 인디케이터를 이용하여 사용자 인터페이스를 제공하는 3차원 입체 영상 표시 장치 및 그 장치를 이용한 방법
EP2749996B1 (en) * 2012-12-28 2018-05-30 Sony Mobile Communications Inc. Electronic device and method for improving accuracy of location determination of a user input on a touch panel
US20140189579A1 (en) * 2013-01-02 2014-07-03 Zrro Technologies (2009) Ltd. System and method for controlling zooming and/or scrolling
US10295826B2 (en) * 2013-02-19 2019-05-21 Mirama Service Inc. Shape recognition device, shape recognition program, and shape recognition method
CN104049872B (zh) * 2013-03-13 2018-01-05 本田技研工业株式会社 利用指向的信息查询
US9122916B2 (en) * 2013-03-14 2015-09-01 Honda Motor Co., Ltd. Three dimensional fingertip tracking
US20140282224A1 (en) * 2013-03-15 2014-09-18 Qualcomm Incorporated Detection of a scrolling gesture
KR20130088104A (ko) * 2013-04-09 2013-08-07 삼성전자주식회사 비접촉 방식의 인터페이스를 제공하기 위한 휴대 장치 및 방법
KR102056316B1 (ko) * 2013-05-03 2020-01-22 삼성전자주식회사 터치 스크린 동작 방법 및 그 전자 장치
US9829984B2 (en) 2013-05-23 2017-11-28 Fastvdo Llc Motion-assisted visual language for human computer interfaces
CN103279188A (zh) * 2013-05-29 2013-09-04 山东大学 一种基于Kinect无接触性操作控制PPT的方法
US20140368434A1 (en) * 2013-06-13 2014-12-18 Microsoft Corporation Generation of text by way of a touchless interface
CN103365596A (zh) * 2013-07-01 2013-10-23 天脉聚源(北京)传媒科技有限公司 一种控制虚拟世界的方法及装置
TWI505135B (zh) * 2013-08-20 2015-10-21 Utechzone Co Ltd 顯示畫面的控制系統、輸入裝置及控制方法
US9400553B2 (en) 2013-10-11 2016-07-26 Microsoft Technology Licensing, Llc User interface programmatic scaling
US9412012B2 (en) 2013-10-16 2016-08-09 Qualcomm Incorporated Z-axis determination in a 2D gesture system
US10048762B2 (en) * 2013-11-05 2018-08-14 Intuit Inc. Remote control of a desktop application via a mobile device
TWI536206B (zh) * 2013-11-05 2016-06-01 緯創資通股份有限公司 操作體的定位方法及裝置以及深度判定方法及裝置
US20150160819A1 (en) * 2013-12-06 2015-06-11 Microsoft Corporation Crane Gesture
TWI554852B (zh) * 2014-01-22 2016-10-21 巨擘科技股份有限公司 腕錶的調時方法和系統
US10935788B2 (en) 2014-01-24 2021-03-02 Nvidia Corporation Hybrid virtual 3D rendering approach to stereovision
US9436872B2 (en) * 2014-02-24 2016-09-06 Hong Kong Applied Science and Technology Research Institute Company Limited System and method for detecting and tracking multiple parts of an object
US10691332B2 (en) 2014-02-28 2020-06-23 Samsung Electronics Company, Ltd. Text input on an interactive display
US9990046B2 (en) 2014-03-17 2018-06-05 Oblong Industries, Inc. Visual collaboration interface
WO2015145212A1 (en) * 2014-03-27 2015-10-01 Sony Corporation Image creation combining base image and repositioned object from a sequence of images
JP6303772B2 (ja) * 2014-04-25 2018-04-04 富士通株式会社 入力制御装置、制御方法および制御プログラム
WO2015178824A1 (en) * 2014-05-23 2015-11-26 Ascom Sweden Ab A mobile communication device adapted for touch free interaction
KR20150137452A (ko) * 2014-05-29 2015-12-09 삼성전자주식회사 디스플레이 장치 제어 방법 및 이를 위한 원격 제어 장치
JP2015230496A (ja) * 2014-06-03 2015-12-21 シャープ株式会社 電子機器
JP6361332B2 (ja) * 2014-07-04 2018-07-25 富士通株式会社 ジェスチャ認識装置およびジェスチャ認識プログラム
US9419971B2 (en) * 2014-07-08 2016-08-16 International Business Machines Corporation Securely unlocking a device using a combination of hold placement and gesture
JP6643825B2 (ja) * 2014-08-25 2020-02-12 キヤノン株式会社 装置及び方法
US10310675B2 (en) * 2014-08-25 2019-06-04 Canon Kabushiki Kaisha User interface apparatus and control method
JP6519074B2 (ja) * 2014-09-08 2019-05-29 任天堂株式会社 電子機器
US10015402B2 (en) 2014-09-08 2018-07-03 Nintendo Co., Ltd. Electronic apparatus
JP6684042B2 (ja) * 2014-09-08 2020-04-22 任天堂株式会社 電子機器
US20180101277A9 (en) * 2014-09-24 2018-04-12 Evan John Kaye Skin Touchpad
CN105635776B (zh) * 2014-11-06 2019-03-01 深圳Tcl新技术有限公司 虚拟操作界面遥控控制方法及系统
US20170371833A1 (en) * 2014-12-15 2017-12-28 Malik BOULANAACHE Calculator
KR101683189B1 (ko) * 2015-02-09 2016-12-06 선문대학교산학협력단 깊이 영상에서 가장자리 쌍 기반의 객체 검출 방법
JP6528193B2 (ja) * 2015-02-10 2019-06-12 任天堂株式会社 電子機器
JP6534011B2 (ja) * 2015-02-10 2019-06-26 任天堂株式会社 情報処理装置、情報処理プログラム、情報処理システム、および、情報処理方法
JP6573457B2 (ja) * 2015-02-10 2019-09-11 任天堂株式会社 情報処理システム
JP6519075B2 (ja) * 2015-02-10 2019-05-29 任天堂株式会社 情報処理装置、情報処理プログラム、情報処理システム、および、情報処理方法
CN104796750A (zh) * 2015-04-20 2015-07-22 京东方科技集团股份有限公司 遥控器、遥控显示系统
US10649536B2 (en) * 2015-11-24 2020-05-12 Intel Corporation Determination of hand dimensions for hand and gesture recognition with a computing interface
US9906981B2 (en) 2016-02-25 2018-02-27 Nvidia Corporation Method and system for dynamic regulation and control of Wi-Fi scans
DE102016003072A1 (de) * 2016-03-12 2017-09-14 Audi Ag Bedienvorrichtung und Verfahren zum Erfassen einer Benutzerauswahl zumindest einer Bedienfuktion der Bedienvorrichtung
CA3020813C (en) * 2016-04-14 2019-05-14 Nissan Motor Co., Ltd. Mobile body surroundings display method and mobile body surroundings display apparatus
US20190294263A1 (en) * 2016-05-30 2019-09-26 Sony Corporation Information processing device, information processing method, and program
US10102423B2 (en) 2016-06-30 2018-10-16 Snap Inc. Object modeling and replacement in a video stream
US10529302B2 (en) 2016-07-07 2020-01-07 Oblong Industries, Inc. Spatially mediated augmentations of and interactions among distinct devices and applications via extended pixel manifold
US9958951B1 (en) * 2016-09-12 2018-05-01 Meta Company System and method for providing views of virtual content in an augmented reality environment
JP7092382B2 (ja) * 2017-01-06 2022-06-28 フォトニケア,インコーポレイテッド 自己配向型画像化装置およびその使用方法
JP6275891B1 (ja) * 2017-01-27 2018-02-07 株式会社コロプラ 仮想空間を介して通信するための方法、当該方法をコンピュータに実行させるためのプログラム、および当該プログラムを実行するための情報処理装置
CN109558000B (zh) * 2017-09-26 2021-01-22 京东方科技集团股份有限公司 一种人机交互方法及电子设备
WO2019152013A1 (en) * 2018-01-31 2019-08-08 Hewlett-Packard Development Company, L.P. Operating user interfaces
JP7017675B2 (ja) * 2018-02-15 2022-02-09 有限会社ワタナベエレクトロニクス 非接触入力システム、方法およびプログラム
EP3570164B1 (de) * 2018-05-14 2023-04-26 Schneider Electric Industries SAS Verfahren und system zum generieren einer mobilen applikation aus einer desktop-anwendung
US10682572B2 (en) * 2018-07-25 2020-06-16 Cameron Wilson Video game reticle
US20200167005A1 (en) * 2018-11-28 2020-05-28 Seiko Epson Corporation Recognition device and recognition method
CN110998600B (zh) * 2019-03-07 2021-07-16 深圳市汇顶科技股份有限公司 光学掌纹感测的方法和系统
CN110263751B (zh) * 2019-06-27 2021-07-06 Oppo广东移动通信有限公司 指纹识别方法及相关产品
CN112394811B (zh) * 2019-08-19 2023-12-08 华为技术有限公司 一种隔空手势的交互方法及电子设备
CN112114732B (zh) * 2020-09-18 2022-03-25 歌尔科技有限公司 屏幕内容的放大方法、设备及计算机可读存储介质
US11409411B1 (en) 2021-03-12 2022-08-09 Topgolf International, Inc. Single finger user interface camera control
JP7561686B2 (ja) 2021-05-27 2024-10-04 憲司 岡田 携帯情報端末装置及びそのプログラム
JP7163526B1 (ja) 2021-07-20 2022-10-31 株式会社あかつき 情報処理システム、プログラム及び情報処理方法
JP7052128B1 (ja) 2021-07-20 2022-04-11 株式会社あかつき 情報処理システム、プログラム及び情報処理方法
JP7286857B2 (ja) * 2021-07-20 2023-06-05 株式会社あかつき 情報処理システム、プログラム及び情報処理方法
JP7286856B2 (ja) * 2022-03-30 2023-06-05 株式会社あかつき 情報処理システム、プログラム及び情報処理方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5827942A (en) * 1997-10-16 1998-10-27 Wisconsin Alumni Research Foundation System and method for testing imaging performance of ultrasound scanners and other medical imagers
US6204852B1 (en) * 1998-12-09 2001-03-20 Lucent Technologies Inc. Video hand image three-dimensional computer interface
CN1694056A (zh) * 2004-05-06 2005-11-09 阿尔派株式会社 操作输入装置及操作输入方法

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5164992A (en) * 1990-11-01 1992-11-17 Massachusetts Institute Of Technology Face recognition system
US5534917A (en) * 1991-05-09 1996-07-09 Very Vivid, Inc. Video image based control system
US5168531A (en) * 1991-06-27 1992-12-01 Digital Equipment Corporation Real-time recognition of pointing information from video
US5454043A (en) * 1993-07-30 1995-09-26 Mitsubishi Electric Research Laboratories, Inc. Dynamic and static hand gesture recognition through low-level image analysis
US6115482A (en) * 1996-02-13 2000-09-05 Ascent Technology, Inc. Voice-output reading system with gesture-based navigation
JP3521187B2 (ja) 1996-10-18 2004-04-19 株式会社東芝 固体撮像装置
US6526156B1 (en) * 1997-01-10 2003-02-25 Xerox Corporation Apparatus and method for identifying and tracking objects with view-based representations
US6252598B1 (en) * 1997-07-03 2001-06-26 Lucent Technologies Inc. Video hand image computer interface
US6289112B1 (en) * 1997-08-22 2001-09-11 International Business Machines Corporation System and method for determining block direction in fingerprint images
JP3795647B2 (ja) * 1997-10-29 2006-07-12 株式会社竹中工務店 ハンドポインティング装置
US6147678A (en) * 1998-12-09 2000-11-14 Lucent Technologies Inc. Video hand image-three-dimensional computer interface with multiple degrees of freedom
JP2000187551A (ja) * 1998-12-21 2000-07-04 Tadaaki Rikihisa 入力装置
JP2001100906A (ja) * 1999-09-30 2001-04-13 Suzuki Motor Corp 三次元データ表示装置
US7227526B2 (en) * 2000-07-24 2007-06-05 Gesturetek, Inc. Video-based image control system
JP2002049455A (ja) * 2000-08-03 2002-02-15 Sanyo Electric Co Ltd 入力インタフェース装置、及び該装置を具備する携帯情報装置
US7058204B2 (en) * 2000-10-03 2006-06-06 Gesturetek, Inc. Multiple camera control system
US6774889B1 (en) * 2000-10-24 2004-08-10 Microsoft Corporation System and method for transforming an ordinary computer monitor screen into a touch screen
KR100408518B1 (ko) * 2001-04-12 2003-12-06 삼성전자주식회사 컴퓨터용 전자펜 데이타 입력장치 및 좌표 측정 방법
US6594616B2 (en) * 2001-06-18 2003-07-15 Microsoft Corporation System and method for providing a mobile input device
US7340077B2 (en) * 2002-02-15 2008-03-04 Canesta, Inc. Gesture recognition system using depth perceptive sensors
JP4136422B2 (ja) * 2002-03-29 2008-08-20 トヨタ自動車株式会社 着座乗員体重検知装置
JP3863809B2 (ja) * 2002-05-28 2006-12-27 独立行政法人科学技術振興機構 手の画像認識による入力システム
KR20040000954A (ko) * 2002-06-26 2004-01-07 삼성전자주식회사 이동통신단말기에 있어서 지문인식 방향 선택 방법
US7665041B2 (en) * 2003-03-25 2010-02-16 Microsoft Corporation Architecture for controlling a computer using hand gestures
KR100543701B1 (ko) 2003-06-17 2006-01-20 삼성전자주식회사 공간형 입력 장치 및 방법
US7982751B2 (en) * 2003-07-11 2011-07-19 The University Of North Carolina Methods and systems for controlling a computer using a video image and for combining the video image with a computer desktop
CN1290061C (zh) 2003-07-23 2006-12-13 西北工业大学 一种利用显著边缘进行图像检索的方法
CN100573548C (zh) * 2004-04-15 2009-12-23 格斯图尔泰克股份有限公司 跟踪双手运动的方法和设备
US7432917B2 (en) * 2004-06-16 2008-10-07 Microsoft Corporation Calibration of an interactive display system
US7454039B2 (en) * 2004-07-12 2008-11-18 The Board Of Trustees Of The University Of Illinois Method of performing shape localization
JP4351599B2 (ja) * 2004-09-03 2009-10-28 パナソニック株式会社 入力装置
US7379566B2 (en) * 2005-01-07 2008-05-27 Gesturetek, Inc. Optical flow based tilt sensor
CN101198964A (zh) * 2005-01-07 2008-06-11 格斯图尔泰克股份有限公司 使用红外图案照射创建对象的三维图像
US7853041B2 (en) * 2005-01-07 2010-12-14 Gesturetek, Inc. Detecting and tracking objects in images
US8144118B2 (en) * 2005-01-21 2012-03-27 Qualcomm Incorporated Motion-based tracking
JP2006285370A (ja) 2005-03-31 2006-10-19 Mitsubishi Fuso Truck & Bus Corp ハンドパターンスイッチ装置及びハンドパターン操作方法
RU2007146172A (ru) * 2005-05-17 2009-06-27 Гестуретэк, Инк. (Us) Вывод сигнала, чувствительный к ориентации
US8086971B2 (en) * 2006-06-28 2011-12-27 Nokia Corporation Apparatus, methods and computer program products providing finger-based and hand-based gesture commands for portable electronic device applications
US8032472B2 (en) * 2007-04-04 2011-10-04 Tuen Solutions Limited Liability Company Intelligent agent for distributed services for mobile devices
CN101689244B (zh) * 2007-05-04 2015-07-22 高通股份有限公司 用于紧凑设备的基于相机的用户输入
US8208692B2 (en) * 2009-01-15 2012-06-26 The Hong Kong Polytechnic University Method and system for identifying a person using their finger-joint print
US8154529B2 (en) * 2009-05-14 2012-04-10 Atmel Corporation Two-dimensional touch sensors
US8462134B2 (en) * 2009-06-29 2013-06-11 Autodesk, Inc. Multi-finger mouse emulation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5827942A (en) * 1997-10-16 1998-10-27 Wisconsin Alumni Research Foundation System and method for testing imaging performance of ultrasound scanners and other medical imagers
US6204852B1 (en) * 1998-12-09 2001-03-20 Lucent Technologies Inc. Video hand image three-dimensional computer interface
CN1694056A (zh) * 2004-05-06 2005-11-09 阿尔派株式会社 操作输入装置及操作输入方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107621881A (zh) * 2017-09-29 2018-01-23 歌尔科技有限公司 虚拟内容控制方法及控制设备

Also Published As

Publication number Publication date
EP2153377A1 (en) 2010-02-17
US20080273755A1 (en) 2008-11-06
JP5453246B2 (ja) 2014-03-26
US8472665B2 (en) 2013-06-25
CN101689244A (zh) 2010-03-31
JP2010526391A (ja) 2010-07-29
WO2008137708A1 (en) 2008-11-13
EP2153377A4 (en) 2017-05-31

Similar Documents

Publication Publication Date Title
CN101689244B (zh) 用于紧凑设备的基于相机的用户输入
KR100790896B1 (ko) 촬상부의 움직임을 이용한 어플리케이션의 제어 방법 및장치
US8169414B2 (en) Control of electronic games via finger angle using a high dimensional touchpad (HDTP) touch user interface
US8854433B1 (en) Method and system enabling natural user interface gestures with an electronic system
US8345014B2 (en) Control of the operating system on a computing device via finger angle using a high dimensional touchpad (HDTP) touch user interface
KR101481880B1 (ko) 휴대용 실감형 상호작용을 위한 시스템
EP2903256B1 (en) Image processing device, image processing method and program
CN108245888A (zh) 虚拟对象控制方法、装置及计算机设备
US20100328351A1 (en) User interface
CN102915112A (zh) 用于近距离动作跟踪的系统和方法
US9535493B2 (en) Apparatus, method, computer program and user interface
US20120319945A1 (en) System and method for reporting data in a computer vision system
WO2013016104A1 (en) Specifying values by occluding a pattern on a target
US20190266798A1 (en) Apparatus and method for performing real object detection and control using a virtual reality head mounted display system
CN110215706B (zh) 虚拟对象的位置确定方法、装置、终端及存储介质
JP6534011B2 (ja) 情報処理装置、情報処理プログラム、情報処理システム、および、情報処理方法
WO2010041557A1 (ja) 表示装置、表示方法、情報記録媒体、ならびに、プログラム
JP6519075B2 (ja) 情報処理装置、情報処理プログラム、情報処理システム、および、情報処理方法
CN104732570B (zh) 一种图像生成方法及装置
US10379639B2 (en) Single-hand, full-screen interaction on a mobile device
CN111258413A (zh) 虚拟对象的控制方法和装置
CN113055599A (zh) 摄像头的切换方法、装置、电子设备和可读存储介质
JP6514416B2 (ja) 画像表示装置、画像表示方法、及び画像表示プログラム
Pekin Camera-based 3D interaction for handheld devices

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: QUALCOMM INC.

Free format text: FORMER OWNER: GESTURE TEK INC.

Effective date: 20120118

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20120118

Address after: American California

Applicant after: Qualcomm Inc.

Address before: American California

Applicant before: Gesturetek Inc.

C14 Grant of patent or utility model
GR01 Patent grant