CN102141838B - 基于视觉的身份跟踪 - Google Patents

基于视觉的身份跟踪 Download PDF

Info

Publication number
CN102141838B
CN102141838B CN201110037227XA CN201110037227A CN102141838B CN 102141838 B CN102141838 B CN 102141838B CN 201110037227X A CN201110037227X A CN 201110037227XA CN 201110037227 A CN201110037227 A CN 201110037227A CN 102141838 B CN102141838 B CN 102141838B
Authority
CN
China
Prior art keywords
people
player
signature
game
registration
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
CN201110037227XA
Other languages
English (en)
Other versions
CN102141838A (zh
Inventor
T·莱瓦德
M·S·德尼斯
李劲宇
危夷晨
孙剑
C·L·米克霍夫
T·M·基奥萨巴卞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN102141838A publication Critical patent/CN102141838A/zh
Application granted granted Critical
Publication of CN102141838B publication Critical patent/CN102141838B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • A63F13/428Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle involving motion or position input signals, e.g. signals representing the rotation of an input controller or a player's arm motions sensed by accelerometers or gyroscopes
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/65Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
    • A63F13/655Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition by importing photos, e.g. of the player
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/79Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/85Providing additional services to players
    • A63F13/87Communicating with other players during game play, e.g. by e-mail or chat
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F9/00Games not otherwise provided for
    • A63F9/24Electric games; Games using electronic circuits not otherwise provided for
    • 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/1087Features 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 comprising photodetecting means, e.g. a camera
    • 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/1087Features 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 comprising photodetecting means, e.g. a camera
    • A63F2300/1093Features 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 comprising photodetecting means, e.g. a camera using visible light
    • 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/50Features 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 details of game servers
    • A63F2300/55Details of game data or player data management
    • A63F2300/5546Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history
    • A63F2300/5553Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history user representation in the game field, e.g. avatar
    • 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
    • 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/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6607Methods for processing data by generating or executing the game program for rendering three dimensional images for animating game characters, e.g. skeleton kinematics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions

Abstract

一种视频游戏系统(或其他数据处理系统)可以在视觉上标识进入该系统的视野的人并确定该人先前是否正与该系统进行交互。在一个实施方式中,该系统确立阈值,对玩家进行登记,执行该视频游戏(或其他应用程序),包括基于登记来与玩家的子集进行交互,确定一个人已变得可在该系统的视野中检测,自动地确定该人是否是登记玩家之一,如果确定该人是登记玩家之一则将该人映射到登记玩家并基于该映射来与该人进行交互,以及如果确定该人不是登记玩家之一则向该人分配新标识并基于该新标识来与该人进行交互。

Description

基于视觉的身份跟踪
技术领域
本发明涉及身份跟踪。
背景技术
诸如计算机游戏、多媒体应用程序等的许多计算应用程序使用控制命令来允许用户操纵游戏角色或应用程序的其他方面。通常,此类控制命令使用例如控制器、遥控器、键盘、鼠标等来输入。不幸的是,这些控制命令可能是难以学习的,由此造成了用户和这些游戏或应用程序之间的障碍。此外,这些控制命令可能与这些控制命令所用于的实际游戏动作或其他应用程序动作不同,从而减少了用户的体验。例如,使得游戏角色旋转棒球拍的游戏控制器可能不与旋转棒球拍的实际动作相对应。
一个解决方案是使用利用视觉和/或深度图像来跟踪用户或其他物体在场景中的运动的视频游戏系统。所跟踪的运动随后被用来更新应用程序。因此,用户可以通过使用该用户身体的移动和/或物体绕该用户的移动而非(或作为补充)使用控制器、遥控器、键盘、鼠标等来操纵游戏角色或该应用程序的其他方面。这样的系统的一个挑战是在用户移入、移出和移回到该系统的视野中时对谁在玩游戏进行跟踪。
发明内容
公开了一种系统(例如,视频游戏系统或其他类型的数据处理系统),该系统可以在玩家进入该系统的视野时标识并跟踪这些玩家。例如,在一个人进入视频游戏系统的视野时(例如,进入房间或以其他方式不再被遮挡),该系统确定该人是否是已与该游戏进行交互的玩家之一。如果是,则该系统将该人映射到所标识的已与该游戏进行交互的玩家,以使该人可以继续与该游戏进行交互(例如,控制化身或对象)。
一个实施方式包括执行基于计算机的应用程序,包括与一组登记玩家的子集进行交互,确定一个人(他不是当前与该基于计算机的应用程序进行交互的该组登记玩家的该子集中的一个人)是否变得可在游戏空间中检测,将该人自动地标识为该组登记玩家中的特定登记玩家,将该人映射到该特定登记玩家,以及基于该映射来与该人进行交互。
一个实施方式包括到监视器的接口、传感器系统以及与该接口和传感器系统进行通信的一个或多个处理器。该一个或多个处理器确立阈值,将玩家登记到视频游戏中,执行该视频游戏,包括基于登记来与玩家的子集进行交互,确定一个人已变得可在该视频游戏的游戏空间中检测,自动地确定该人是否是登记玩家之一,如果确定该人是登记玩家之一则将该人映射到登记玩家并基于该映射来在该视频游戏中与该人进行交互,以及如果确定该人不是登记玩家之一则向该人分配新标识并基于该新标识来在该视频游戏中与该人进行交互。
一个实施方式包括接收来自一个或多个传感器的与当前未同应用程序进行交互的第一实体有关的视觉数据和深度数据,基于该视觉数据和深度数据创建指示该第一实体的外观的一组视觉签名(signature),将该组视觉签名与应用程序中登记的实体的所存储的签名进行比较,确定所述视觉签名是否与应用程序中登记的任何实体的所存储的签名相对应,并且如果确定所述视觉签名与应用程序中登记的特定实体的所存储的签名相对应则将该第一实体映射到所述特定实体。该映射允许第一实体与该应用程序进行交互。
提供本“发明内容”是为了以简化的形式介绍将在以下“具体实施方式”中进一步描述的一些概念。本“发明内容”并非旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。此外,所要求保护的主题不限于解决在本发明的任一部分中提及的任何或所有缺点的实现。
附图说明
图1A和1B示出了其中用户在玩游戏的跟踪系统的示例实施方式。
图2示出可用作跟踪系统的一部分的捕捉设备的示例实施方式。
图3示出可被用来跟踪运动并基于所跟踪的运动来更新应用程序的计算系统的示例实施方式。
图4示出可被用来跟踪运动并基于所跟踪的运动来更新应用程序的计算系统的另一示例实施方式。
图5是描述用于操作可执行本文描述的基于视觉的身份跟踪的数据处理系统(例如,视频游戏系统)的过程的一个实施方式的流程图。
图6是描述用于确定进入视野的玩家是否是登记的玩家的过程的一个实施方式的流程图。
图7是描述用于创建新的基于视觉的签名的过程的一个实施方式的流程图。
图8是描述用于比较基于视觉的签名的过程的一个实施方式的流程图。
图9是描述用于创建脸部的签名的过程的一个实施方式的流程图。
图10描绘骨架的示例。
图11示出具有两个边界框的脸部。
图12是描述用于创建衣服的签名的过程的一个实施方式的流程图。
图13是描述用于创建身高的签名的过程的一个实施方式的流程图。
图14是描述用于比较脸部的签名的过程的一个实施方式的流程图。
图15描绘用于对比较结果进行分类的阈值。
图16是描述用于比较衣服的签名的过程的一个实施方式的流程图。
图17是描述用于比较身高的签名的过程的一个实施方式的流程图。
图18是描绘将一组签名与身份进行匹配的示例的表。
图19是描述用于将一组签名与一身份进行匹配的过程的一个实施方式的流程图。
图20是描述用于创建和/或细化在比较签名时所使用的阈值的过程的一个实施方式的流程图。
图21是描述用于改进被用来创建签名的数据的过程的一个实施方式的流程图。
具体实施方式
公开了一种视频游戏系统(或其他数据处理系统),该系统可在视觉上标识进入该系统的视野(例如,进入房间或以其他方式不再被遮挡)的人是否是先前已经与该系统进行交互的玩家。在一个实施方式中,该系统创建指示进入视野的人的外观的一组视觉签名并确定这些视觉签名是否与已登记到该系统的实体中的任何一个的所存储的签名相对应。如果该人的视觉签名与某一已登记实体相匹配,则该人将被映射到该实体并将基于所映射的实体与该系统进行交互。例如,如果控制视频游戏中的化身A的人离开房间并随后返回该房间,则在返回时,该系统将识别出该人是操作化身A的先前玩家并将继续允许该人控制化身A。
在一个实施方式中,视频游戏系统(或其他数据处理系统)使用深度图像和/或视觉图像来跟踪玩家和物体。该跟踪随后被用来更新应用程序(例如,视频游戏)。因此,用户可以通过使用用户身体的移动和/或物体绕用户的移动而非(或作为补充)使用控制器、遥控器、键盘、鼠标等来操纵游戏角色或应用程序的其他方面。例如,视频游戏系统将基于物体的新位置来更新图像在视频中显示的位置或基于用户的运动来更新化身。如果用户走出房间(或在游戏/应用程序期间被以其他方式遮挡)并随后走回房间(或不再被遮挡),则系统会将用户自动地标识为先前玩游戏(或与应用程序进行交互)的实体并按照先前映射继续交互。
虽然以下示例包括视频游戏系统,但本文描述的技术也适用于其他类型的数据处理系统和/或其他类型的应用程序。
图1A和1B示出了其中用户18在玩拳击游戏的系统10的示例实施方式。在一示例实施方式中,系统10可被用来识别、分析和/或跟踪人类目标,如跟踪系统10范围内的用户18或其他物体。
如图1A所示,跟踪系统10可包括计算系统12。计算系统12可以是计算机、游戏系统或控制台等等。根据一示例实施方式,计算系统12可包括硬件组件和/或软件组件,从而使得计算系统12可用于执行诸如游戏应用程序、非游戏应用程序等的应用程序。在一个实施方式中,计算系统12可包括可执行存储在用于执行本文描述的过程的处理器可读存储设备上的指令的诸如标准化处理器、专用处理器、微处理器等处理器。
如图1A所示,跟踪系统10还可包括捕捉设备20。捕捉设备20可以是,例如可用于在视觉上监视诸如用户18的一个或多个用户从而可以捕捉、分析并跟踪一个或多个用户所执行的姿势和/或移动,来执行应用程序中的一个或多个控制命令或动作和/或动画化化身或屏上角色的照相机,下面将更详细地描述。
根据一个实施方式,跟踪系统10可连接到可向诸如用户18等的用户提供游戏或应用程序视觉形象和/或音频的视听设备16,如电视机、监视器、高清电视机(HDTV)等。例如,计算系统12可包括诸如图形卡等视频适配器和/或诸如声卡等音频适配器,这些适配器可提供与游戏应用程序、非游戏应用程序等相关联的视听信号。视听设备16可从计算系统12接收视听信号,然后可向用户18输出与视听信号相关联的游戏或应用程序视觉形象和/或音频。根据一个实施方式,视听设备16可经由例如,S-视频电缆、同轴电缆、HDMI电缆、DVI电缆、VGA电缆、构件式视频电缆等连接到计算系统12。
如图1A和1B所示,跟踪系统10可用于识别、分析和/或跟踪诸如用户18等的人类目标。例如,可使用捕捉设备20来跟踪用户18,从而可以捕捉用户18的姿势和/或移动来动画化化身或屏上角色,和/或可将用户18的姿势和/或移动解释为可用于影响计算环境12所执行的应用程序的控制命令。因此,根据一个实施方式,用户18可移动他的或她的身体来控制应用程序和/或动画化化身或屏上角色。
在图1A和1B中描绘的示例中,在计算系统12上执行的应用程序可以是用户18正在玩的拳击游戏。例如,计算系统12可使用视听设备16来向用户18提供拳击对手38的视觉表示。计算系统12还可使用视听设备16来提供用户18可通过他的或她的移动来控制的玩家化身40的视觉表示。例如,如图1B所示,用户18可在物理空间中挥重拳来使得玩家化身40在游戏空间中挥重拳。因此,根据一示例实施方式,计算系统12和捕捉设备20识别并分析物理空间中用户18的重拳从而使得该重拳可被解释为对游戏空间中的玩家化身40的游戏控制和/或该重拳的运动可用于动画化游戏空间中的玩家化身40。
用户18的其他移动也可被解释为其他控制命令或动作,和/或用于动画化玩家化身,如上下快速摆动、闪避、滑步、封堵、用拳猛击或挥动各种不同的有力重拳的控制命令。此外,某些移动可被解释为可对应于除控制玩家化身40之外的动作的控制命令。例如,在一个实施方式中,玩家可使用移动来结束、暂停或保存游戏、选择级别、查看高分、与朋友交流等。根据另一实施方式,玩家可使用移动来从主用户界面选择游戏或其他应用程序。因此,在示例实施方式中,用户18的全范围运动可以用任何合适的方式来获得、使用并分析以与应用程序进行交互。
在各示例实施方式中,诸如用户18等的人类目标可持有一物体。在这些实施方式中,电子游戏的用户可手持该物体,以使得玩家和物体的运动可被用来调整和/或控制游戏的参数。例如,可以跟踪并利用手持球拍的玩家的运动来控制电子运动游戏中的屏上球拍。在另一示例实施方式中,可以跟踪并利用手持物体的玩家的运动来控制电子格斗游戏中的屏上武器。用户没有手持的物体也可被跟踪,如该用户(或一不同用户)扔出、推出或滚出的物体或自推进的物体。除拳击之外,也可实现其他游戏。
根据其他示例实施方式,跟踪系统10还可用于将目标移动解释为游戏领域之外的操作系统和/或应用程序控制命令。例如,事实上操作系统和/或应用程序的任何可控方面可由诸如用户18等目标的移动来控制。
图2示出可在跟踪系统10中使用的捕捉设备20的示例实施方式。根据一示例实施方式,捕捉设备20可被配置成捕捉带有包括深度图像的深度信息的视频,深度信息可包括经由任何合适的技术——包括例如飞行时间、结构化光、立体图像等——的深度值。根据一实施方式,捕捉设备20可将深度信息组织为“Z层”,即可与从深度相机沿其视线延伸的Z轴垂直的层。
如图2所示,捕捉设备20可包括图像照相机组件22。根据一示例实施方式,图像照相机组件22可以是可捕捉场景的深度图像的深度照相机。深度图像可包括所捕捉的场景的二维(2-D)像素区域,其中2-D像素区域中的每一像素可表示深度值,诸如例如以厘米、毫米等计的、所捕捉的场景中的物体距相机的距离。
如图2所示,根据一示例实施方式,图像照相机组件22可包括可用于捕捉场景的深度图像的红外(IR)光组件24、三维(3-D)照相机26、和RGB照相机28。例如,在飞行时间分析中,捕捉设备20的IR光组件24可将红外光发射到场景上,然后可使用传感器(未示出),使用例如3-D照相机26和/或RGB照相机28,来检测来自场景中的一个或多个目标和物体的表面的反向散射光。在某些实施方式中,可以使用脉冲式红外光,从而可以测量出射光脉冲与相应的入射光脉冲之间的时间并将其用于确定从捕捉设备20到场景中的目标或物体上的特定位置的物理距离。另外,在其他示例实施方式中,可将入射光波的相位与出射光波的相位进行比较来确定相移。然后可以使用相移来确定从捕捉设备到物体或目标上的特定位置的距离。
根据另一示例实施方式,可使用飞行时间分析,通过经由包括例如快门式光脉冲成像等各种技术来分析反射光束随时间的强度,来间接地确定从捕捉设备20到目标或物体上的特定位置的物理距离。
在另一示例实施方式中,捕捉设备20可使用结构化光来捕捉深度信息。在这样的分析中,图案化光(即,被显示为诸如网格图案、条纹图案等已知图案或不同图案的光)可经由例如IR光组件24被投影到场景上。在撞击到场景中的一个或多个目标或物体的表面时,作为响应,图案可变形。图案的这种变形可由例如3-D相机26和/或RGB相机28(和/或其他传感器)来捕捉,然后可被分析以确定从捕捉设备到目标或物体上的特定位置的物理距离。在一些实现中,IR光组件24与照相机24和26分开,使得可以使用三角测量来确定自照相机24和26的距离。在一些实现中,捕捉设备20将包括传感IR光的专用IR传感器或具有IR滤波器的传感器。
根据另一实施方式,捕捉设备20可包括两个或更多物理上分开的照相机,这些照相机可从不同角度查看场景以获得视觉立体数据,视觉立体数据可被解析以生成深度信息。其他类型的深度图像传感器也可被用来创建深度图像。
捕捉设备20还可包括话筒30。话筒30可包括可接收声音并将其转换成电信号的变换器或传感器。根据一个实施方式,话筒30可用于减少目标识别、分析和跟踪系统10中的捕捉设备20与计算系统12之间的反馈。另外,话筒30可用于接收也可由用户提供的音频信号,以控制可由计算系统12执行的诸如游戏应用程序、非游戏应用程序等应用程序。
在一示例实施方式中,捕捉设备20还可包括可与图像照相机组件22进行通信的处理器32。处理器32可包括可执行指令的标准处理器、专用处理器、微处理器等,这些指令包括用于接收深度图像、生成适当的数据格式(例如,帧)并将该数据传送到计算系统12的指令。
捕捉设备20还可包括存储器组件34,存储器组件34可存储由处理器32执行的指令、3-D照相机和/或RGB照相机所捕捉的图像或图像的帧、或任何其他合适的信息、图像等等。根据一示例实施方式,存储器组件34可包括随机存取存储器(RAM)、只读存储器(ROM)、高速缓存、闪存、硬盘、或任何其他合适的存储组件。如图2所示,在一个实施方式中,存储器组件34可以是与图像捕捉组件22和处理器32进行通信的单独的组件。根据另一实施方式,存储器组件34可被集成到处理器32和/或图像捕捉组件22中。
如图2所示,捕捉设备20可经由通信链路36与计算系统12进行通信。通信链路36可以是包括例如USB连接、火线连接、以太网电缆连接等的有线连接和/或诸如无线802.11b、802.11g、802.11a或802.11n连接等无线连接。根据一个实施方式,计算系统12可经由通信链路36向捕捉设备20提供可用于确定例如何时捕捉场景的时钟。另外,捕捉设备20将由例如3-D照相机26和/或RGB照相机28捕捉的深度信息和视觉(例如,RGB)图像经由通信链路36提供给计算系统12。在一个实施方式中,深度图像和视觉图像以每秒30帧的速率传送。计算系统12然后可使用该模型、深度信息、以及所捕捉的图像来例如控制诸如游戏或文字处理程序等的应用程序和/或动画化化身或屏上人物。
计算系统12包括深度图像处理和骨架跟踪192、视觉标识和跟踪194以及应用程序196。深度图像处理和骨架跟踪192使用深度图像来跟踪诸如用户和其他物体等物体的运动。为帮助对物体进行跟踪,深度图像处理和骨架跟踪192使用姿势库和结构数据来跟踪骨架。结构数据包括关于可被跟踪的物体的结构信息。例如,可以存储人类的骨架模型以帮助理解用户的移动并识别身体部分。还可以存储关于动画物体的结构信息以帮助识别这些物体并帮助理解移动。姿势库可包括姿势过滤器集合,每一姿势过滤器包括和骨架模型可执行(在用户移动时)的姿势有关的信息。可将由照相机26、28和捕捉设备20捕捉的骨架模型形式的数据以及与其相关联的移动与姿势库中的姿势过滤器进行比较来标识用户(如骨架模型所表示的)何时执行了一个或多个姿势。那些姿势可与应用程序的各种控制命令相关联。来自捕捉设备20的视觉图像也可被用来帮助进行跟踪。
视觉标识和跟踪模块194与深度图像处理和骨架跟踪192以及应用程序196进行通信。如下所述,视觉标识和跟踪模块194在视觉上标识进入系统的视野的人是否是先前已经与系统进行交互的玩家。视觉标识和跟踪模块194会将该信息报告给应用程序196。
应用程序196可以是视频游戏、生产力应用程序等。在一个实施方式中,深度图像处理和骨架跟踪192会将检测到的每一物体的标识以及物体对于每一帧的位置报告给应用程序196。应用程序196将使用该信息来更新化身或其他图像在显示器中的位置或移动。
图3示出一计算系统的示例实施方式,该计算系统可以是图1A-2中示出的被用来跟踪运动和/或动画化(或以其他方式更新)应用程序所显示的化身或其他屏上对象的计算系统12。上面参考图1A-2所描述的诸如计算系统12这样的计算系统可以是诸如游戏控制台这样的多媒体控制台100。如图3所示,多媒体控制台100具有含有1级高速缓存102、2级高速缓存104和闪存ROM(只读存储器)106的中央处理单元(CPU)101。1级高速缓存102和2级高速缓存104临时存储数据并因此减少存储器访问周期数,由此改进处理速度和吞吐量。CPU 101可以设置成具有一个以上的核,以及由此的附加的1级和2级高速缓存102和104。闪存ROM 106可存储在多媒体控制台100通电时在引导进程初始阶段加载的可执行代码。
图形处理单元(GPU)108和视频编码器/视频编解码器(编码器/解码器)114形成用于高速、高分辨率图形处理的视频处理流水线。数据经由总线从图形处理单元108输送到视频编码器/视频编解码器114。视频处理流水线将数据输出到A/V(音频/视频)端口140以传输到电视机或其他显示器。存储器控制器110连接到GPU 108以方便处理器访问各种类型的存储器112,诸如但不局限于RAM(随机存取存储器)。
多媒体控制台100包括较佳地在模块118上实现的I/O控制器120、系统管理控制器122、音频处理单元123、网络接口控制器124、第一USB主控制器126、第二USB控制器128和前面板I/O子部件130。USB控制器126和128用作外围控制器142(1)-142(2)、无线适配器148、和外部存储器设备146(例如闪存、外部CD/DVD ROM驱动器、可移动介质等)的主机。网络接口124和/或无线适配器148提供对网络(例如,因特网、家庭网络等)的接入并且可以是包括以太网卡、调制解调器、蓝牙模块、电缆调制解调器等的各种不同的有线和无线适配器组件中任何一种。
提供系统存储器143来存储在引导进程期间加载的应用程序数据。提供了媒体驱动器144且其可包括DVD/CD驱动器、蓝光驱动器、硬盘驱动器、或其他可移动媒体驱动器等。媒体驱动器144对于多媒体控制台100可以内置或外置的。应用程序数据可经由媒体驱动器144访问,以由多媒体控制台100执行、回放等。媒体驱动器144经由诸如串行ATA总线或其他高速连接(例如IEEE 1394)等总线连接到I/O控制器120。
系统管理控制器122提供涉及确保多媒体控制台100的可用性的各种服务功能。音频处理单元123和音频编解码器132形成具有高保真度和立体声处理的对应的音频处理流水线。音频数据经由通信链路在音频处理单元123与音频编解码器132之间传输。音频处理流水线将数据输出到A/V端口140以供外置音频播放器或具有音频能力的设备再现。
前面板I/O子部件130支持暴露在多媒体控制台100的外表面上的电源按钮150和弹出按钮152以及任何LED(发光二极管)或其他指示器的功能。系统供电模块136向多媒体控制台100的组件供电。风扇138冷却多媒体控制台100内的电路。
CPU 101、GPU 108、存储器控制器110、和多媒体控制台100内的各个其它组件经由一条或多条总线互连,包括串行和并行总线、存储器总线、外围总线、和使用各种总线架构中任一种的处理器或局部总线。作为示例,这种架构可以包括外围部件互连(PCI)总线、PCI-Express总线等。
当多媒体控制台100通电时,应用程序数据可从系统存储器143加载到存储器112和/或高速缓存102、104中并在CPU 101上执行。应用可呈现在导航到多媒体控制台100上可用的不同媒体类型时提供一致的用户体验的图形用户界面。在操作中,媒体驱动器144中包含的应用和/或其他媒体可从媒体驱动器144启动或播放,以向多媒体控制台100提供附加功能。
多媒体控制台100可通过将该系统简单地连接到电视机或其他显示器而作为独立系统来操作。在该独立模式中,多媒体控制台100允许一个或多个用户与该系统交互、看电影、或听音乐。然而,随着通过网络接口124或无线适配器148可用的宽带连接的集成,多媒体控制台100还可作为较大网络社区中的参与者来操作。
当多媒体控制台100通电时,可以保留设定量的硬件资源以供多媒体控制台操作系统作系统使用。这些资源可以包括存储器保留(例如,16MB)、CPU和GPU周期(例如,5%)、网络带宽(例如,8kbs)等。因为这些资源是在系统引导时保留的,所以所保留的资源对应用而言是不存在的。
具体地,存储器保留较佳地足够大,以包含启动内核、并发系统应用和驱动程序。CPU保留较佳地为恒定,使得若所保留的CPU用量不被系统应用使用,则空闲线程将消耗任何未使用的周期。
对于GPU保留,通过使用GPU中断来显示由系统应用生成的轻量消息(例如,弹出窗口),以调度代码来将弹出窗口呈现为覆盖图。覆盖图所需的存储器量取决于覆盖区域大小,并且覆盖图较佳地与屏幕分辨率成比例缩放。在并发系统应用使用完整用户界面的情况下,优选使用独立于应用分辨率的分辨率。定标器可用于设置该分辨率,从而无需改变频率,也就不会引起TV重新同步。
在多媒体控制台100引导且系统资源被保留之后,就执行并发系统应用来提供系统功能。系统功能被封装在一组在上述所保留的系统资源中执行的系统应用中。操作系统内核标识是系统应用线程而非游戏应用线程的线程。系统应用优选地被调度为在预定时间并以预定时间间隔在CPU 101上运行,以便为应用提供一致的系统资源视图。进行调度是为了把由在控制台上运行的游戏应用所引起的高速缓存分裂最小化。
当并发系统应用需要音频时,则由于时间敏感性而异步调度音频处理给游戏应用。多媒体控制台应用管理器(如下所述)在系统应用活动时控制游戏应用的音频水平(例如,静音、衰减)。
输入设备(例如,控制器142(1)和142(2))由游戏应用和系统应用共享。输入设备不是所保留的资源,但却在系统应用和游戏应用之间切换以使其各自具有设备的焦点。应用管理器较佳地控制输入流的切换,而无需知晓游戏应用的知识,并且驱动程序维持有关焦点切换的状态信息。照相机26、28和捕捉设备20可经由USB控制器126或其他接口来定义控制台100的附加输入设备。
图4示出可被用来实现图1A-2中示出的计算系统12的计算系统的另一示例实施方式220,计算系统12被用来跟踪运动和/或动画化(或以其他方式更新)应用程序所显示的化身或其他屏上对象。计算系统环境220只是合适的计算系统的一个示例,并且不旨在对所公开的主题的使用范围或功能提出任何限制。也不应该将计算系统220解释为对示例性操作系统220中示出的任一组件或其组合有任何依赖性或要求。在某些实施方式中,所描绘的各种计算元素可包括被配置成实例化本公开的具体方面的电路。例如,本公开中使用的术语电路可包括被配置成执行固件或开关的功能的专用硬件组件。在其他示例实施方式中,术语电路可包括由软件指令配置的实施可用于执行功能的逻辑的通用处理单元、存储器等。在电路包括硬件与软件组合的示例实施方式中,实现者可编写实施逻辑的源代码且该源代码可被编译成可由通用处理单元处理的机器可读代码。因为本领域技术人员可以明白现有技术已经进化到硬件、软件或硬件/软件组合之间几乎没有差别的地步,因而选择硬件或是软件来实现具体功能是留给实现者的设计选择。更具体地,本领域技术人员可以明白软件进程可被变换成等价的硬件结构,而硬件结构本身可被变换成等价的软件进程。因此,对于硬件实现还是软件实现的选择是设计选择之一并留给实现者。
计算系统220包括计算机241,计算机241通常包括各种计算机可读介质。计算机可读介质可以是能由计算机241访问的任何可用介质,而且包含易失性和非易失性介质、可移动和不可移动介质。系统存储器222包括易失性和/或非易失性存储器形式的计算机存储介质,如只读存储器(ROM)223和随机存取存储器(RAM)260。基本输入/输出系统224(BIOS)包括如在启动时帮助在计算机241内的元件之间传输信息的基本例程,它通常储存在ROM 223中。RAM 260通常包含处理单元259可以立即访问和/或目前正在操作的数据和/或程序模块。作为示例而非限制,图4示出了操作系统225、应用程序226、其他程序模块227和程序数据228。
计算机241还可以包括其他可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图4示出了对不可移动、非易失性磁介质进行读写的硬盘驱动器238,对可移动、非易失性磁盘254进行读写的磁盘驱动器239,以及对诸如CD ROM或其他光学介质等可移动、非易失性光盘253进行读写的光盘驱动器240。可以在示例性操作环境中使用的其他可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于,磁带盒、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等等。硬盘驱动器238通常由诸如接口234等不可移动存储器接口连接至系统总线221,磁盘驱动器239和光盘驱动器240通常由诸如接口235等可移动存储器接口连接至系统总线221。
以上描述和在图4中示出的驱动器及其相关联的计算机存储介质为计算机241提供对计算机可读指令、数据结构、程序模块和其他数据的存储。例如,在图4中,硬盘驱动器238被示为存储操作系统258、应用程序257、其他程序模块256和程序数据255。注意,这些组件可以与操作系统225、应用程序226、其他程序模块227和程序数据228相同,也可以与它们不同。操作系统258、应用程序257、其他程序模块256和程序数据255在这里被标注了不同的标号是为了说明至少它们是不同的副本。用户可以通过输入设备,诸如键盘251和定点设备252——通常被称为鼠标、跟踪球或触摸垫——向计算机241输入命令和信息。其他输入设备(未示出)可以包括麦克风、游戏杆、游戏手柄、碟形卫星天线、扫描仪等等。这些和其他输入设备通常由耦合至系统总线的用户输入接口236连接至处理单元259,但也可以由其他接口和总线结构,诸如并行端口、游戏端口或通用串行总线(USB)连接。照相机26、28和捕捉设备20可经由用户输入接口236来定义控制台100的附加输入设备。监视器242或其他类型的显示设备也经由接口,诸如视频接口232连接至系统总线221。除监视器以外,计算机也可以包括其他外围输出设备,诸如扬声器244和打印机243,它们可以通过输出外围接口233连接。捕捉设备20可经由输出外围接口233、网络接口237或其他接口连接到计算系统220。
计算机241可使用至一个或多个远程计算机,如远程计算机246的逻辑连接在网络化环境中操作。远程计算机246可以是个人计算机、服务器、路由器、网络PC、对等设备或其他常见网络节点,且通常包括上文相对于计算机241描述的许多或所有元件,但在图4中只示出了存储器存储设备247。图中所示逻辑连接包括局域网(LAN)245和广域网(WAN)249,但也可以包括其他网络。这样的联网环境在办公室、企业范围计算机网络、内联网和因特网中是常见的。
当在LAN联网环境中使用时,计算机241通过网络接口或适配器237连接至LAN 245。当在WAN联网环境中使用时,计算机241通常包括调制解调器250或用于通过诸如因特网等WAN 249建立通信的其他装置。调制解调器250可以是内置或外置的,它可以经由用户输入接口236或其他适当的机制连接至系统总线221。在网络化环境中,关于计算机241所描述的程序模块或其部分可被储存在远程存储器存储设备中。作为示例而非局限,图4示出应用程序248驻留在存储器设备247上。可以理解,所示的网络连接是示例性的,且可以使用在计算机之间建立通信链路的其他手段。
如上所述,捕捉设备20向计算系统12提供RGB图像(或其他格式或色彩空间的视觉图像)和深度图像。深度图像可以是多个观测到的像素,其中每个观测到的像素具有观测到的深度值。例如,深度图像可包括所捕捉的场景的二维(2-D)像素区域,其中2-D像素区域中的每一像素可具有深度值,如所捕捉的场景中的对象距捕捉设备的距离。
系统将使用RGB图像和深度图像来跟踪玩家的移动。跟踪的示例可以在2009年10月21日提交的美国专利申请12/603,437“Pose Tracking Pipeline(姿势跟踪流水线)”中找到,其整体通过引用结合于此。也可使用用于跟踪的其他方法。一旦系统确定玩家正在进行的运动,系统将使用这些检测到的运动来控制视频游戏或其他应用程序。例如,玩家的运动可被用来控制视频游戏中的化身和/或对象。
在玩视频游戏或与应用程序进行交互时,一个人(即用户)可以离开系统的视野。例如,该人可以走出房间或被遮挡。随后,该人可以重新进入系统的视野。例如,该人可以走回进入房间或不再被遮挡。在该人进入系统的视野时,系统将自动地标识出该人先前正在玩游戏(或以其他方式与应用程序进行交互)并将该人映射到当时正与该游戏进行交互的玩家。以此方式,该人可以重掌对该人的化身的控制或以其他方式继续与该游戏/应用程序进行交互。
图5是描述操作图1-4的系统以便标识进入系统的视野(游戏的游戏空间)的人并将其映射到已有玩家/用户的一个实施方式的流程图。
图5的过程包括在视觉上标识并跟踪玩家以确定变得对该系统可见的玩家是否与已有的登记玩家相匹配。为了作出这些确定,使用一组阈值来执行视觉标识。这些阈值的更多细节在以下讨论。在图5的步骤300中,确立用于进行比较的阈值。这些阈值可以通过实验和仿真来确立。初始阈值可以在制造之前创建并与系统的初始版本一起装载。在另一实施方式中,这些阈值是由系统在操作期间动态地创建的。用于确立阈值的更多细节将在以下讨论。
在步骤302,系统将对玩家进行登记。例如,在玩视频游戏时,系统可以询问用户有多少玩家将玩该游戏。在用户用玩家数量作出响应后,系统将请求每一玩家标识他们自己。在一个实施方式中,将请求每一玩家通过站在系统前面来标识自己,以便可以从该玩家的多个角度获得深度图像和视觉图像。例如。可以请求玩家站在照相机前面,转身,并摆出各种姿势。在系统获得了标识该人所必需的数据之后,将向该人提供唯一标识并且该唯一标识可被分配给游戏/应用程序中的化身或对象。
在图5的步骤304中,系统将与玩家进行交互。例如,可以玩一个或多个视频游戏或其他应用程序(例如,应用程序196)。
在一个实施方式中,本文讨论的视觉标识是通过创建并比较视觉签名来执行的。关于视觉签名的更多细节将在以下提供。在步骤304的一个实施方式中,系统动态地创建和/或更新签名并存储这些经更新的或所创建的签名。
在图5的步骤306,系统确定现在可在游戏空间中检测到新人。例如,在传感器系统20的视野内,一个或多个玩家(他们当前不可见或不可检测到)变得可检测到。例如,一个人可走进传感器20所处的房间。或者,一个人可走进其中传感器负载20可检测到该人的房间的一部分。另一示例是先前向传感器20遮挡的人不再向传感器20遮挡。
在步骤308,系统自动地确定该新人是否是已登记在当前活动的视频游戏/应用程序中的已有玩家。如果确定该新人是已经登记在当前应用程序/游戏中的已有玩家(步骤310),则在步骤312,该新玩家被映射到该已有玩家。如果确定该新人不是已登记在游戏/应用程序中的已有玩家(步骤310),则系统为该玩家创建新标识,向该玩家分配该新标识,并将对于应用程序的该新玩家(具有该新标识)报告给应用程序/游戏(应用程序196)。在步骤312之后和在步骤314之后,过程在步骤304继续。在一个实施方式中,步骤308-312由视觉标识和跟踪模块194执行。
注意,图5还示出了细化阈值的步骤136。步骤316没有连接到任何特定其他步骤的原因是因为步骤316可在任何时间发生。基于系统所拥有的数据,系统可以决定动态地更新这些阈值中的任一个。阈值和更新的更多细节将在以下提供。
图6是描述用于自动地确定新玩家是否是已登记在视频游戏/应用程序中的已有玩家的过程的一个实施方式的流程图。例如,图6的过程是图5的步骤308的一个示例实现。在图6的步骤350中,系统为被检测到进入游戏空间的人创建新签名。如何创建签名以及结构签名的更多细节在以下提供。在步骤352,系统将进入游戏空间的新人的新签名与已登记在视频游戏/应用程序中的已有玩家的已有签名进行比较。基于比较,系统将创建分数。在步骤354,系统会尝试基于来自步骤352的分数来将该新人与已有登记玩家之一进行匹配。如果存在匹配(步骤356),则该过程将在步骤358返回匹配的玩家的标识。如果不存在匹配(步骤356),则图6的过程将返回“没有匹配”。步骤350-356的更多细节在以下提供。
图7是描述用于自动地为进入游戏空间的新人创建新签名的过程的一个实施方式的流程图。例如,图7的过程是图6的步骤350的一个示例实现。在该实施方式中,系统将使用三组签名来标识一个人。第一组一个或多个签名涉及人脸,第二组一个或多个签名涉及该人穿着的衣服,并且第三组一个或多个签名涉及该人的身高。在一个实施方式中,这三组签名中的每一组都是基于深度图像和视觉图像的。在其他实施方式中,签名可以只基于视觉图像。在其他实施方式中,这些签名中的一些将基于深度图像和视觉图像的组合,而其他签名将仅仅基于视觉图像。在又一实施方式中,所有这些签名(或签名的子集)可以全部基于深度图像。在又一实施方式中,可以使用红外图像来创建一个或多个签名。
在图7的步骤380中,系统为刚被检测到进入游戏空间的人(参见图5的步骤306)创建新脸部签名。在步骤382,系统为该人穿着的衣服创建一个或多个色彩签名。在步骤384,系统为该人的身高创建签名。步骤380-384中的每一步骤的更多细节在以下提供。
图8是描述比较这三组签名的过程的一个实施方式的流程图。例如,图8的过程是图6的步骤352的实现的一个示例。在图8的步骤390,将在步骤380中创建的脸部签名与登记在当前应用程序/视频游戏中的已有玩家中的每一个的脸部签名进行比较。每一比较将产生反映这些签名彼此匹配得有多近的分数。在步骤392,将被检测到进入游戏空间的人的衣服的一个或多个签名与登记在当前应用程序/视频游戏中的已有玩家的各衣服签名进行比较。在一个实施方式中,创建反映所创建的进入游戏空间的新人的所有衣服签名与每一登记玩家的签名中的每一个的比较的单个分数。在步骤394,将被检测到进入游戏空间的人的身高签名与登记在当前应用程序/视频游戏中的每一个玩家的身高签名进行比较。每一登记玩家的分数是基于该比较来创建的。在一个实施方式中,在图8中描绘的过程的结尾,登记在当前应用程序/视频游戏中的每一玩家将具有三个分数:脸部签名的比较分数、衣服签名的比较分数以及身高签名的比较分数。在一个实施方式中,图6、7和8的过程由计算系统12自动地执行。
图9是描述用于创建脸部签名的过程的一个实施方式的流程图。即,图9是执行图7的步骤380的一个示例实现。在步骤400,系统确定用于获取脸部签名的条件是否是合适的。例如,系统确定该人是否面向照相机以使得可以看到脸部。另外,系统可以检查适当的光照条件或脸部的遮挡。
如果条件是不合适的(步骤402),则在重现的不合适的条件下拍摄了足够帧之后,系统将向应用程序(例如,视频游戏)通知条件是不合适的(例如,“脸被挡住”、“没有面向照相机”等)。如以下更详细地解释的,在步骤403,系统将尝试补救该问题。例如,游戏可以通过某一类型的通知(例如,文本通知或指示玩家如何校正条件的游戏角色,例如“请看着屏幕”)或通过请求玩家做出将有效地改善条件的动作(向屏幕的边缘“扔球”以使得玩家会尝试击中该球并且因而不再遮住他的脸)来显式地使玩家校正这些条件。如果该问题可被修复,则过程在步骤406继续(以下讨论)。如果该问题不能修复,则此时不创建签名。
如果条件是合适的(步骤402),则系统将使用深度图像跟踪该人的骨架来估计脸部的位置。可以使用许多方法来使用深度图像跟踪人的骨架。使用深度图像跟踪骨架的一个实施方式在2009年10月21日提交的Craig等人发明的美国专利申请12/603,437“Pose Tracking Pipeline(姿势跟踪流水线)”(此后称为‘437申请’)中提供,该专利申请整体通过引用结合于此。‘437申请’的过程包括获取深度图像,对数据进行降采样,移除和/或平滑高方差噪声数据,标识并移除背景,以及将前景像素中的每一个分配给身体的不同部分。基于这些步骤,系统将使一模型适合该数据并创建骨架。该骨架将包括一组接合点和这些接合点之间的连接。图10示出具有15个接合点(j0、j1、j2、j3、j4、j5、j6、j7、j8、j9、j10、j11、j12、j13、j14以及j15)的示例骨架。接合点中的每一个表示骨架中的该骨架可以在x、y、z方向上枢转的位置或身体上关注的位置。步骤406包括使用骨架来估计脸部的位置。例如,接合点j0可以与头部的中心相对应。基于知道j0在哪里,系统可以估计脸部应当在哪里。这一估计将是保守的,使得可以确定足够大以保证脸部被包括在框中的边界框。例如,图11示出人类躯干的顶部具有包围脸部的边界框450。这一边界框450是来自步骤406的脸部位置的估计的示例。
在步骤407,RGB像素(或其他色彩空间像素)被转换成与脸部相对应的视觉图像部分的视觉图像中的亮度值。在一个实施方式中,亮度值是0到255(或另一数值范围)之间的灰度值。在步骤408,系统将通过标识眼睛和鼻子并创建更紧地框住脸上的眼睛和鼻子的框来细化脸部估计。图11示出作为步骤408的结果的框452,这是更紧地框住眼睛和鼻子的框。可以执行许多脸部检测方法来实现步骤408的过程。可以使用的一个示例过程是本领域公知的Viola-Jones方法。
如上所述,传感器20将检测视觉图像和深度图像。视觉图像可以与深度图像进行相关,使得深度图像中的每一像素将与视觉图像中的像素相对应。因此,当在深度图像中确定了脸部时,系统将知道脸部在视觉图像中的位置。在步骤410,系统可以使用视觉图像(或深度图像)来标识眼睛和鼻子的确切位置。在步骤412,系统将基于在步骤410中标识的眼睛来对齐用户的脸部。为了匹配签名,脸部正确地对齐以使签名相似是重要的。因此,系统将提前确定参考对齐。在检测到不处于该参考对齐中的脸部时,步骤412将重新对齐该图像中的脸部以与参考对齐的对齐进行匹配。在一些实施方式中,系统将具有多个参考对齐并在不同的参考对齐中创建多个脸部签名。在一个实施方式中,只使用一个对齐来创建签名并执行比较。
在步骤416,系统将创建脸部的多维向量。该向量中的每一维度对应于脸部中的一像素。所以如果框452包括400个像素,则该向量具有400个元素。在一个实施方式中,在步骤412,该框对齐,使得该框具有48x42个像素(总共2016个像素),使得步骤416中的多维向量包括2016个值。在一些实施方式中,脸部的数据可被降采样。在步骤418,将多维向量转换到PCA空间成为具有30个系数的向量(例如,30维向量)。PCA(主向量分析)是本领域的公知过程。然而,也可以使用用于转换向量的其他过程。另外,在一些实施方式中,步骤418可被跳过。作为步骤418的结果的30维向量是脸部的签名。然而,也可以使用用于签名的其他格式。
图12是描述用于创建一个或多个衣服签名的过程的一个实施方式的流程图。图12的过程是步骤382的一个示例实现。在步骤500,系统检查以确保条件适合于创建衣服签名。例如,系统可以确定光照是否充足,人的衣服是否未被遮挡,以及人是否处在基于衣服来确定签名的正确姿势。如果条件不适于创建一个或多个签名(步骤502),则在步骤503,系统尝试修复问题(如上所述并在以下更详细地描述)。如果该问题可被修复(步骤504),则在步骤506继续签名生成过程。如果该问题不能修复(步骤504),则此时不创建签名(步骤507)。
如果条件适于创建签名(步骤502),则在步骤506,系统将存储传感器20感测到的骨架的当前位置。例如,系统可以存储骨架处于何处的三维坐标。或者,系统可以将骨架分类成处于传感器20的视野内的一组区域之一中。
在一个实施方式中,衣服签名基于色彩并且系统将创建被跟踪的人的身体的不同部分的多个衣服签名。被跟踪的人的身体的不同部分中的与一签名相对应的每一个部分在下文中被称为目标。在一个实施方式中,系统将创建两个目标的签名。目标的一个示例是玩家的裤子,以j9、j10、j12、j13和/或j15为中心。目标的另一示例是玩家的衬衫,以j8为中心。这两个目标由骨架的接合点j8和j9表示(参见图10)。在其他实施方式中,可以有超过两个目标或少于两个目标。
在图12的步骤508中,系统将访问第一目标的深度值和位置。步骤508包括系统确定第一目标(例如裤子或接合点j9、j10、j12、j13和/或j15)的深度值和x、y位置。在步骤510,系统将标识第一目标附近的像素。在使用上述骨架的实施方式中,系统会将接合点中的一个或多个标识为第一目标,并且步骤510将相对于位置和深度来选择第一目标附近的像素。在一个示例中,系统将使用一个范围,使得系统会挑选视觉图像中的处于x、y位置范围内的像素,并随后选择这些像素的处于距在步骤508中选择的接合点的深度值范围内的子集。在步骤512,将该组像素量化。在一些系统中,可以有数百万种色彩组合。步骤512包括降低分辨率,以使得所有色彩被分类到一小组256种色彩,使得每一像素具有从0到255的一个色彩值而非具有三个色彩值。在一个实施方式中,RGB值还可在量化之前或期间被转换成HSV值。步骤512还包括构建该组像素的柱状图。在一个示例中,柱状图将包括沿x轴的256个值,每一个值属于256种色彩之一,并且y轴标识每一色彩值的像素的数量。步骤512实际上不需要构建可见图表,而是需要构建表示柱状图的数据结构。
在步骤514,系统将访问第二目标(例如,衬衫)的深度值和位置(屏幕上的x、y)。在步骤516,系统将在视觉图像中标识第二目标附近的并且处于距在步骤514中选择的位置的深度阈值量之内的像素。在步骤518,将该组像素量化并构建柱状图。在使用超过两个目标的实施方式中,可以对附加目标重复步骤514、516和518。
在步骤520,系统将沿骨架查找具有唯一色彩的一个或多个子区域。例如,系统将使用骨架来标识视觉图像中的属于该人的像素。该系统随后将查找相对于该图像的其余部分具有唯一色彩的一个或多个像素子区域。子区域的一个示例是T恤衫上的徽标。如果系统找出具有唯一色彩的像素子区域,则在步骤522,标识靠近子区域的中心并且和子区域的中心有相类似的深度值的像素。在步骤524,记录并存储该子区域在三维空间和骨架上的位置。在步骤526,将该组像素量化并构建柱状图。在一些实施方式中,如果系统不能找出衣服的这样的特殊区域,则跳过步骤520-526。
此时,该系统具有多达三个柱状图:第一柱状图属于第一目标,第二柱状图属于第二目标,且第三柱状图属于在步骤520中标识的子区域。在步骤528,系统使用K-均值聚类来从柱状图计算一个或多个签名。K均值聚类返回聚类中心,该聚类中有多少像素以及该聚类的边缘距该聚类的中心有多远。
在一个实施方式中,系统为第一目标、第二目标以及具有唯一色彩的子区域生成单独的签名。在这样的实施方式中,对于每一柱状图分开执行K-均值聚类。对于每一柱状图的K-均值聚类的结果包括每一柱状图的15个值,表示一签名。
在另一实施方式中,系统为第一目标、第二目标以及具有唯一色彩的子区域生成一个组合签名。在这样的实施方式中,对于每一柱状图的K-均值聚类的结果包括这三个柱状图的15个值,表示一个签名。在另一实施方式中,系统为第一目标、第二目标生成一个组合签名,并为具有唯一色彩的子区域创建第二签名。
图13是描述用于创建身高签名的过程的一个实施方式的流程图。图13的过程是图7的步骤384的一个示例实现。在图13的步骤550,系统确定条件是否适于创建身高签名。例如,如果用户的头不可见,则条件不适于确定身高签名。如果条件不适于创建身高签名(步骤552),则在步骤558,系统尝试修复该问题(如上所述并在以下更详细地描述)。如果该问题可被修复,则在步骤554继续签名生成过程。如果该问题不能修复,则此时不创建签名(步骤562)。
如果条件合适(步骤552),则在步骤554,存储骨架的位置。在一个实施方式中,步骤554包括存储在创建身高签名时玩家的三维位置。在比较签名时这将被用来内插,如下所述。
在图13的步骤556中,系统将访问第一目标的深度和位置。在一个实施方式中,系统将确定该用户的头的三维位置。用于确定用户的头的三维位置的一个手段是使用图10的骨架的接合点j0。该骨架将包括该接合点的三维位置。该系统将具有用于将j0的三维位置转换到人头的顶部的数学公式。只要这一估计是稳定的,则它对这些目的而言是有效的。在另一实施方式中,系统可以在视觉上标识头顶,在视觉上标识脚底(或地面),并使用深度来计算身高。用于确定身高的其他实施方式也是合适的。图13的以上实施方式的结果包括两个值:身高值和骨架在传感器20的视野中的位置。
图14是描述用于将新脸部签名与已登记到当前视频游戏或应用程序的已有玩家中的每一个的适当的脸部签名进行比较的过程的一个实施方式的流程图。图14的过程是图8的步骤390的一个示例实现。在步骤600,系统访问下一玩家ID的签名。如上所述,登记在应用程序/游戏中的每一玩家都分配了玩家ID。在步骤600,访问要考虑的下一玩家ID。例如,如果在图14的过程的当前实例中首次执行步骤600,则系统将访问第一登记玩家的签名。在步骤602,系统将使用L1度量来计算进入游戏空间的人的新创建的脸部签名与正在考虑的当前ID的所访问的签名之间的匹配分数。L1度量的结果是多维向量的对应系数中的每一个之间的绝对差的总和。如果给定ID具有超过一个存储的脸部签名,则在步骤604,系统选择当前ID的最佳签名。例如,系统可以选择具有最低L1度量的签名或与同新玩家的定向最接近的脸部定向相关联的签名。
将得自在步骤604中选择的签名的L1度量的总和与两个阈值进行比较。例如,图15示出具有两个阈值的总和的范围:肯定与未知之间的阈值650;以及未知与否定之间的阈值652。如果绝对差的总和小于阈值650,则刚进入游戏空间的人与当前考虑的登记玩家之间存在肯定匹配。即,系统设想新脸部签名与该登记玩家的所存储的脸部签名相匹配。如果总和等于0,则这两个签名完全匹配。如果差的总和大于阈值652,则存在否定匹配,意味着被检测到刚进入游戏空间的人的新创建的脸部签名与当前考虑的登记玩家的这一特定所存储的脸部签名不相匹配。如果来自L1度量的差的总和大于阈值650但小于阈值652,则本技术不知道是否存在匹配。
回头查看图14的步骤606,系统确定正在考虑的特定签名相对于被检测到刚进入游戏空间的人的新创建的脸部签名是具有肯定匹配(步骤608)、未知匹配(步骤610)还是否定匹配(步骤612)。在将当前访问的玩家ID的当前访问的脸部签名进行了分类之后,在步骤626,系统确定是否存在更多的要考虑的登记玩家(并且因此存在更多的登记玩家ID)。如果否,则图14的过程完成。如果存在更多的登记玩家要考虑(例如,要考虑更多的登记玩家),则该过程循环回步骤600并考虑下一登记玩家ID,并且该过程如上所述地继续。
图16是描述用于比较衣服签名的过程的一个实施方式的流程图。图16的过程是图8的步骤392的一个示例实现。在图16的步骤660,访问一组登记玩家的下一登记玩家ID(参见上文针对步骤600的讨论)。在步骤662,系统将访问该玩家ID的所有衣服签名并随后通过位置来过滤它们。回头查看图12,在创建签名时,系统确定并存储在创建该衣服签名时进入游戏空间的新玩家的位置。在一个实施方式中,对于每一登记玩家,将存在多组签名。每一组签名将与游戏空间中的不同位置相对应。构想了游戏空间可具有不同的光照或其他环境因素。环境中的这些变化可影响签名。因此,系统可为不同的位置保持单独的一组衣服签名。步骤662包括过滤特定玩家ID的签名以标识在距离上最接近刚进入游戏空间的玩家的位置的一组一个或多个签名。在步骤664,系统将计算刚进入游戏空间的人的特定签名与在步骤662中访问的对应签名之间的earth mover(堆土机)距离。如果在步骤662只访问了一个衣服签名,则只计算一个earth mover距离。如果步骤662访问了衬衫的签名和裤子的签名,则步骤664将计算正在考虑的ID的衬衫签名与刚进入游戏空间的人之间的earth mover距离,以及正在考虑的ID的裤子签名与刚进入游戏空间的人之间的earth mover距离。如果步骤662还访问了正在考虑的ID的衣服的子区域的签名并且刚进入游戏空间的人的衣服的子区域的签名存在,则计算第三earth mover距离。在一些实施方式中,在比较裤子和衬衫签名的过程中,不将正在考虑的ID的衣服的子区域的签名与刚进入游戏空间的人的衣服的子区域的签名进行比较。
在步骤666,将earth mover距离与两个阈值进行比较(参见图15)。基于该比较,系统将比较分类成肯定、未知、或否定。在步骤668,确定步骤666的比较中的任一个是否具有否定结果。如果是,则正在考虑的ID的总分数是否定的(步骤670)。如果步骤666的比较中没有一个具有否定结果,则在步骤672,确定步骤666中的任一个是否具有肯定结果。如果是,则正在考虑的ID的总分数是肯定的(步骤674)。如果步骤666的比较中没有一个具有肯定结果,则正在考虑的ID的总分数是未知的(步骤676)。
在步骤670、674和676之后,该过程在步骤678处继续。在步骤678,系统确定是否存在尚未被评估的任何另外的登记玩家(登记玩家的玩家ID)。如果没有更多登记玩家要考虑,则图16的过程完成。如果有更多登记玩家要考虑,则该过程循环回步骤660并且系统考虑下一登记玩家。
在一个实施方式中,针对衬衫和裤子签名来执行图16的过程,并且是与针对同唯一色彩的子区域相关联的签名分开执行的。
图17是描述用于比较身高签名的过程的一个实施方式的流程图。图17的过程是图8的步骤394的一个示例实现。对于每一登记玩家,步骤700的过程执行一次。在图17的步骤700,系统将访问刚进入游戏空间的新人的深度值。该深度值是基于骨架的(图10)。如参考图13所述,在确定身高值时,在确定身高值时骨架的位置也被存储。
在步骤702,基于正在考虑的登记玩家的所存储的身高签名,使用在步骤700访问的深度值来内插该人的身高。构想了该系统将为登记玩家中的每一个创建多个身高值数据点。身高值可以变化,例如由于照相机倾斜、从加速计类设备评估地面-法线或重力时的误差,或其他原因。例如,当玩家在传感器前在房间的不同部分四处走动时,将记录多个身高值。对于每一身高值,系统将记录该玩家的所确定的身高和该玩家的深度。基于这两段信息,系统可使一曲线或函数符合该数据,以创建最佳地最小化误差而同时表征身高数据的数学函数。在步骤702,使用进入游戏空间的人的骨架的深度值来内插来自最佳地最小化误差而同时表征特定登记玩家的身高数据的曲线或函数的身高值。
在步骤704,将来自702的内插的身高值与使用图13的过程计算得到的身高值进行比较。将该差与两个阈值(参见图15)进行比较以确定比较结果是肯定标识(步骤708)、未知标识(步骤710)还是否定标识(步骤712)。图17的过程对于登记玩家中的每一个来重复,因此,使用图13的方法新创建的签名被使用图17的过程来与登记玩家中的每一个进行比较。
在执行了图8的过程之后(例如,使用图14、16和17的过程),系统现在具有相对于进入游戏空间的新人与每一登记玩家的脸部、衣服和身高的肯定、否定、或未知分数。因此,如果有四个登记玩家,则存在12个分数。图18是示出对于四个登记玩家执行图8的过程而得到的一组示例分数的表。
该系统将应用一组规则以将登记玩家之一与进入游戏空间的新人进行匹配。在一个实施方式中,系统将应用以下三个规则:
1.对匹配的登记玩家的响应只可以是肯定或未知,不会是否定;
2.对于匹配的登记玩家一定存在至少一个肯定响应;以及
3.首先通过脸,其次通过衣服,并且第三通过身高来进行过滤。在每一级,只有一个候选可以是肯定的,否则所有肯定都被当作未知。
在一个实施方式中,脸部比较将优先于其他比较,因为想要允许在玩家决定在游戏期间通过脱下或穿上一层衣服或以其他方式改变衣服来改变他/她的衣服色彩的情况下进行重新标识。在一个实现中,对脸部比较的更大强调只在仅有单个脸部肯定并且该脸部分数足够好(可能需要比肯定阈值更好)的情况下才适用。在一个实施方式中,衣服的子区域的分数(参见图12的步骤520)可以在衣服的签名之后并在上述第三规则中的身高签名之前单独比较(如果可用)。
在将这些规则应用于图18的数据时,系统通过比较脸部分数来开始。因为脸部分数中的两个是肯定的,所有它们两者被当作“未知”。登记玩家#2的脸部分数是否定,所以不考虑登记玩家2。其次,比较衣服分数,这排除了登记玩家3和4。登记玩家1的身高分数是肯定的并且登记玩家是唯一没有被排除的候选;因此系统确定进入游戏空间的新人与登记玩家#1相匹配。系统会将进入游戏空间的这一新人分配到登记玩家1。进一步,进入游戏空间的这一新人将控制可由登记玩家1来控制的化身或对象。在具有衣服的子区域的单独分数的一个实施方式中(参见图12的步骤520),图18的表将包括用于子区域分数的另一行。
图19是描述用于基于使用图7的过程来创建并使用图8的过程来与登记玩家进行比较以创建分数的签名,来确定进入游戏空间的新人与登记玩家中的哪一个(如果有的话)相对应的过程的一个实施方式的流程图。图19的过程是图6的步骤354的一个实施方式并且是上述三个规则的示例实现。
在图19的步骤800中,系统将访问脸部分数。例如,回头查看图18,系统访问玩家1的肯定分数、玩家2的否定分数、玩家3的肯定分数以及玩家4的未知分数。在步骤802,系统将排除具有否定脸部分数的所有登记玩家。如果对具有否定脸部分数的所有登记玩家的排除造成空候选集合,则系统将在早期因没有匹配而终止。在步骤804,系统确定有多少脸部分数是肯定的。如果只有一个肯定分数,则在步骤806,系统将断定具有肯定分数的ID是刚进入游戏空间的玩家的匹配。系统随后不检查衣服分数和身高。这样的方法允许在玩家脱掉或穿上一件衣服的情况下进行匹配。例如,如果玩家脱下毛衣,则在脸部分数是肯定的情况下该玩家仍然能够匹配。在另一实施方式中,如果脸部分数是强肯定的,则系统随后不检查衣服分数和身高分数;然而,如果脸部分数是较弱肯定,则系统随后检查衣服分数和身高分数。
回头查看步骤804,如果确定肯定分数的数量大于1,则在步骤814,现在将所有肯定都看作未知,并且该过程继续至步骤812。如果肯定匹配的数量(步骤804)是0,则在步骤812中,系统将访问衣服分数。
在访问了衣服分数之后,在步骤816,系统将排除具有否定衣服分数的所有登记玩家。如果对具有否定衣服分数的所有登记玩家的排除造成空候选集合,则系统将因没有匹配而早期终止。在步骤818,系统将确定衣服的肯定分数的数量。如果肯定分数的数量正好是1,则在步骤820,系统确定具有肯定分数的特定登记玩家是否具有身高否定分数。如果该特定登记玩家不具有任何否定分数,则在步骤822,将该特定登记玩家与刚进入游戏空间的人相匹配。如果特定登记玩家确实具有否定分数,则在步骤824,排除该特定登记玩家并且该过程在步骤826继续。如果在步骤818确定的肯定分数的数量大于1,则在步骤828,系统将衣服的所有肯定分数都看作未知并且该过程在步骤826继续。如果确定在步骤818中的肯定匹配的数量是0,则在步骤826中,系统将访问身高分数。
在步骤830,排除具有身高的否定身高分数的任何登记ID。如果对具有否定身高分数的所有登记玩家的排除造成空候选集合,则系统将因没有匹配而终止。在步骤832,系统确定身高的肯定分数的数量。如果正好有一个肯定分数,则该登记玩家是刚进入游戏空间的人的匹配登记玩家(步骤834);否则,没有匹配(步骤836)。因此,在图19的过程的结尾,或者系统将返回与刚进入游戏空间的人相匹配的登记玩家的ID,或者系统将返回“没有匹配”。
在具有衣服的子区域的单独分数的一个实施方式中(图12的步骤520),可以修改图19的过程,以使得在步骤826之前系统将比较衣服的子区域的分数(如果可用)。如果有任何否定分数,则这些ID将被排除。如果有超过一个肯定,则它们将被当作未知。如果只有一个肯定,则在该ID的身高分数不是否定的情况下该ID将是匹配。如果没有作出匹配,则系统将在步骤826继续。
如以上参考图5所讨论的,如果没有确定匹配,则该系统会向该玩家分配新ID并且应用程序将决定对该新玩家做些什么。如果执行图19的过程的系统返回已有登记玩家的ID,则进入游戏空间的新人将被映射到该匹配登记玩家的ID(图5的步骤312)并随后该人将作为已有的登记玩家来与视频游戏/应用程序进行交互。例如,进入游戏空间的新人将能够控制游戏中的已有玩家的化身以与游戏/应用程序中的对象或其他实体进行交互。
回头查看图5,步骤316包括细化(例如,动态地更新)上述阈值(参见例如图15)。图20是描述用于细化这些阈值的一个实施方式的流程图。即,图20的过程是步骤316的实现的一个示例。在图20的步骤880,系统将获得来自多个登记玩家的数据。例如,在一段时间内,系统将使用上述过程来创建许多玩家的脸部、衣服、以及身高签名。在步骤882,系统将比较同一登记玩家的各签名。即,对于每一登记玩家,系统将比较该登记玩家的所有脸部签名,比较该登记玩家的所有衣服签名并随后比较该登记玩家的所有身高签名。然而,比较被限于只比较重叠签名。该系统尝试确定每一特定登记玩家的数据的偏差。例如,可以计算标准差(或其他度量)。在步骤884,系统比较不同登记玩家的签名并确定登记玩家之间的偏差数据。例如,可以计算标准差(或其他度量)。基于该偏差数据,在步骤888,系统确定未知和否定匹配之间的阈值652。在一个实施方式中,系统可以在执行视频游戏/应用程序时使用登记玩家来获得该数据。在另一实施方式中,系统可以在不播放视频游戏时通过请求玩家在特定位置摆姿势来获得该数据。在步骤888,将比较所有登记玩家的所有偏差(参见步骤882)以确定肯定和未知之间的阈值650,以使得登记玩家的签名中的全部或大多数都被看作肯定匹配。
图20的过程也可以在制造该系统之前在实验室中或在仿真中执行,以执行图5的步骤300,这包括确立阈值的初始集合。虽然这一数据将不基于特定家庭用户的输入,但这是可在图5的步骤316中动态地更新的很好起点。
在创建图20的过程的签名或其他时或响应于不适于创建签名的条件,视觉标识和跟踪模块194可以向应用程序196提供指导(参见图12)以改进所收集的并用于签名的数据。图21是描述用于改进被收集来创建签名的数据的过程的一个实施方式的流程图。图21的过程响应于应用程序196请求帮助获得签名(步骤900)来开始,该系统因为条件不合适(步骤902)(如上所述)或其他原因而不能够获得签名。在图21的步骤904,在进行签名创建的考虑下,系统将使用一个或多个深度图像和/或视觉图像来尝试标识骨架的所有身体部分。如果身体部分中的任一部分被遮挡(步骤906),则在步骤908报告该遮挡。在步骤910,系统尝试标识脸部特征(例如,眼睛、鼻子、嘴巴)。基于标识,在步骤912,系统确定该人是否正面向照相机。如果该人没有面向照相机,则在步骤914,系统将报告该人没有看着照相机。
在步骤916,系统将基于从深度图像返回的骨架来观察该人的姿势。如果该人没有站直,则在920中报告该姿势问题。在步骤922,感测光照条件。例如,系统确定光照是否太亮或太暗。如果光照不合适,则在步骤926报告光照问题。在步骤928,系统确定骨架的横向位置是否有问题。例如,如果人太靠近房间的边缘或已知有问题的任何位置,则可以在步骤932报告该信息。在步骤934,系统确定该人的深度。如果该人太深或太近(步骤936),则在步骤940报告该人的深度的问题。在步骤942,系统将基于在步骤908、914、920、926、932以及940中报告的所有问题来生成报告。作为步骤942的一部分,这一报告被发送到应用程序196。在步骤944,应用程序196接收报告并指导玩家以便在游戏/应用程序的上下文内以非侵入性的方式来校正问题。例如,系统可以使一对象在视频游戏中移动以使玩家改变位置、姿势等,以便校正所报告的问题。注意,如果系统尝试在没有来自应用程序的显式请求的情况下标识或收集玩家的更多签名,则在条件不适于创建签名的情况下系统将安静地失败以便不干扰游戏。
回头查看图5,步骤302包括将玩家登记在应用程序/游戏中。在一个实施方式中,系统将请求用户输入玩家的数量并随后顺序地请求每一玩家标识他们自己。对于每一玩家,系统将请求该玩家在各个位置作出各种姿势以生成上述必要的签名。因为光照可能取决于玩家在房间中的位置而变化,所以一个实施方式包括在多个位置捕捉玩家的衣服的多个图像以创建不同位置的多个签名并基于玩家的世界空间位置来索引它们。可以使用用于桶装(bucket)并替换已有签名的类似方法。该签名可包括世界空间位置。该组签名被基于与每一样本相关联的世界空间位置的邻近度来划分并被编组成各个桶。新签名被存储在与同它的位置最接近的签名相关联的桶中。或者,新签名替换与同它的位置最接近的签名相关联的桶中的已有签名。在一个实施方式中,新签名替换具有到所有已有样本的最短距离总和的旧签名。
在对实体进行登记时,一种示例技术包括在各个定向上获得脸部的多个快照。一种方法包括细化所支持的脸部定向(脸部法线)的圆锥。在该圆锥内,系统定义优选定向的离散集合,这些定向在中心周围密集并且沿圆锥的边缘变得稀疏。一旦系统获得了新脸部签名,则系统将使用各种试探法来决定脸部是否足够好并且完全可见(例如,骨架位置和示例标记是两个这样的实施方式)。如果是,则系统计算脸部法线并找出脸部定向的离散集合中的最接近的项。在一个实施方式中,如果系统没有该定向的快照则只添加新的标准化快照。然而,如果给定一些打分度量,新脸部签名更好,则另一可能的实施方式可以支持替换已有快照。
用于对身份进行登记并获得多个脸部签名的另一实施方式包括保持固定数量的脸部签名来对身份进行登记并在骨架跟踪期间收集这些脸部样本。在新脸部样本可用时,它替换具有到所有已有样本的最短距离总和(在PCA空间中测量)的旧样本。以此方式,系统获得尽可能远离的一组样本;因此,横跨该身份的大型和完整的脸部空间。
在另一实施方式中,如果游戏/应用程序在该游戏或应用程序开始之前一次性对玩家进行登记,系统可以保持获取在传感器的前面的各玩家的样本。在该游戏/应用程序标识出它想要对特定玩家进行登记时,该玩家的数据已经被存储了。该系统可以采取彼此最远的K个数据值的集合以提供数据样本的良好集合。
尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。相反,上述具体特征和动作是作为实现权利要求的示例形式公开的。本发明的范围由所附的权利要求进行限定。

Claims (11)

1.一种配置一组登记玩家与基于计算机的应用程序之间的交互的方法,包括:
执行所述基于计算机的应用程序(304),包括与所述一组登记玩家的子集进行交互;
确定一个人已经变得可在游戏空间中检测(306),该人不是所述一组登记玩家的当前与所述基于计算机的应用程序进行交互的子集中的一个;将所述人自动地标识为所述一组登记玩家中的特定登记玩家(308),其中所述自动地标识包括:
接收来自一个或多个传感器的视觉数据或视觉图像和深度数据或深度图像;
基于所述视觉数据或视觉图像和深度数据或深度图像来创建指示所述人的外观的一组视觉签名;以及
确定所述视觉签名是否与所述一组登记玩家中的任一个的所存储的签名相对应;以及
将所述人映射到所述特定登记玩家(312)并基于所述映射来与所述人进行交互(304)。
2.如权利要求1所述的方法,其特征在于,还包括:
感测所述人的视觉数据;以及
感测所述人的深度数据,自动地将所述人标识为特定登记玩家是基于所述视觉数据和深度数据的。
3.如权利要求1所述的方法,其特征在于,还包括:
确立阈值,所述阈值是在自动地将所述人标识为所述特定登记玩家时使用的;以及
在执行所述基于计算机的应用程序时并基于该执行来动态地更新所述阈值。
4.如权利要求1所述的方法,其特征在于:
所述创建视觉签名包括创建所述人的脸部的外观的签名,创建所述人的衣服的外观的签名以及创建所述人的身高的签名。
5.如权利要求4所述的方法,其特征在于,所述确定所述视觉签名是否与所述一组登记玩家中的任一个的所存储的签名相对应包括:
(a)确定所述人的脸部的外观的签名是否与所述一组登记玩家中的任一个的脸部的所存储的签名相对应;
(b)确定所述人的衣服的外观的签名是否与所述一组登记玩家中的任一个的衣服的所存储的签名相对应;
(c)确定所述人的身高的签名是否与所述一组登记玩家中的任一个的身高的所存储的签名相对应;以及
基于步骤(a)、(b)和(c)来作出关于所述人是否是所述特定登记玩家的合计决定。
6.如权利要求1所述的方法,其特征在于:
所述基于计算机的应用程序是视频游戏;
确定不存在足以标识所述人的数据;
响应于确定不存在足以标识所述人的数据,作为所述视频游戏的一部分来请求所述人执行特定动作;以及
响应于所述特定动作来获取足够的数据。
7.一种由视频游戏装置实现的方法,其中所述视频游戏装置包括到监视器(140,232)的接口、传感器系统(20)以及与所述接口和所述传感器系统进行通信的一个或多个处理器(101,108,110,231,259),所述方法包括:
所述一个或多个处理器确立阈值;
所述一个或多个处理器将玩家登记到视频游戏中;
所述一个或多个处理器执行所述视频游戏,包括基于所述登记来与所述玩家的子集进行交互;
所述一个或多个处理器确定一个人已变得可在所述视频游戏的游戏空间中检测;
所述一个或多个处理器通过在视觉上标识所述人来自动地确定该人是否是所述登记玩家之一,包括:
所述传感器系统感测所述人的视觉数据和所述人的深度数据,所述一个或多个处理器基于所述视觉数据和所述深度数据来确定所述人是否是所述登记玩家之一;
如果确定该人是所述登记玩家之一,则所述一个或多个处理器将该人映射到登记玩家并基于所述映射来在所述视频游戏中与该人进行交互;以及
如果确定该人不是所述登记玩家之一,则所述一个或多个处理器向该人分配新标识并基于该新标识来在所述视频游戏中与该人进行交互。
8.如权利要求7所述的方法,所述自动地确定包括:
所述一个或多个处理器创建所述人的视觉签名并使用所述阈值来将所述人的视觉签名与所述登记玩家的所存储的视觉签名进行比较;以及
在执行所述视频游戏时并基于对所述视频游戏的执行,所述一个或多个处理器动态地更新所述阈值。
9.如权利要求7所述的方法,所述自动地确定包括:
所述一个或多个处理器创建所述人的视觉签名并使用所述阈值来将所述人的视觉签名与所述登记玩家的所存储的视觉签名进行比较;以及
所述视觉签名中的至少一个是使用来自所述传感器系统的深度数据来创建的。
10.如权利要求7所述的方法,所述自动地确定包括:
所述一个或多个处理器创建所述人的视觉签名并使用所述阈值来将所述人的视觉签名与所述登记玩家的所存储的视觉签名进行比较;以及
所述视觉签名包括所述人的脸部的外观的视觉签名,所述人的衣服的外观的视觉签名以及所述人的身高的视觉签名。
11.如权利要求7所述的方法,其特征在于,还包括:
所述一个或多个处理器通过基于所述人的移动控制所述视频游戏中的化身来基于所述新标识与所述人在所述视频游戏中进行交互。
CN201110037227XA 2010-01-29 2011-01-28 基于视觉的身份跟踪 Active CN102141838B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/696,282 2010-01-29
US12/696,282 US8864581B2 (en) 2010-01-29 2010-01-29 Visual based identitiy tracking

Publications (2)

Publication Number Publication Date
CN102141838A CN102141838A (zh) 2011-08-03
CN102141838B true CN102141838B (zh) 2013-11-27

Family

ID=44342132

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110037227XA Active CN102141838B (zh) 2010-01-29 2011-01-28 基于视觉的身份跟踪

Country Status (2)

Country Link
US (3) US8864581B2 (zh)
CN (1) CN102141838B (zh)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8939831B2 (en) 2001-03-08 2015-01-27 Brian M. Dugan Systems and methods for improving fitness equipment and exercise
US20020160883A1 (en) 2001-03-08 2002-10-31 Dugan Brian M. System and method for improving fitness equipment and exercise
US11826652B2 (en) 2006-01-04 2023-11-28 Dugan Health, Llc Systems and methods for improving fitness equipment and exercise
US8781568B2 (en) 2006-06-23 2014-07-15 Brian M. Dugan Systems and methods for heart rate monitoring, data transmission, and use
US8976007B2 (en) 2008-08-09 2015-03-10 Brian M. Dugan Systems and methods for providing biofeedback information to a cellular telephone and for using such information
US8454437B2 (en) 2009-07-17 2013-06-04 Brian M. Dugan Systems and methods for portable exergaming
US8864581B2 (en) * 2010-01-29 2014-10-21 Microsoft Corporation Visual based identitiy tracking
RU2587425C2 (ru) * 2010-09-14 2016-06-20 Дайнэмик Диджитл Депс Рисерч Пти Лтд Способ получения карты глубины изображения повышенного качества
US20120253489A1 (en) 2011-03-28 2012-10-04 Dugan Brian M Systems and methods for fitness and video games
US9533228B2 (en) 2011-03-28 2017-01-03 Brian M. Dugan Systems and methods for fitness and video games
US9610506B2 (en) 2011-03-28 2017-04-04 Brian M. Dugan Systems and methods for fitness and video games
US8824749B2 (en) * 2011-04-05 2014-09-02 Microsoft Corporation Biometric recognition
US8947226B2 (en) 2011-06-03 2015-02-03 Brian M. Dugan Bands for measuring biometric information
KR101283262B1 (ko) 2011-10-21 2013-07-11 한양대학교 산학협력단 영상 처리 방법 및 장치
JP2013101526A (ja) * 2011-11-09 2013-05-23 Sony Corp 情報処理装置、表示制御方法、およびプログラム
US9164579B2 (en) * 2011-11-15 2015-10-20 Lg Electronics Inc. Electronic device for granting authority based on context awareness information
US9628843B2 (en) * 2011-11-21 2017-04-18 Microsoft Technology Licensing, Llc Methods for controlling electronic devices using gestures
US8684821B2 (en) * 2011-12-19 2014-04-01 Empire Technology Development Llc Pause and resume schemes for gesture-based game
US9448636B2 (en) 2012-04-18 2016-09-20 Arb Labs Inc. Identifying gestures using gesture data compressed by PCA, principal joint variable analysis, and compressed feature matrices
US9798457B2 (en) * 2012-06-01 2017-10-24 Microsoft Technology Licensing, Llc Synchronization of media interactions using context
US9381427B2 (en) 2012-06-01 2016-07-05 Microsoft Technology Licensing, Llc Generic companion-messaging between media platforms
US9971882B2 (en) * 2012-09-24 2018-05-15 Qatar Foundation System and method for multimedia content protection on cloud infrastructures
US9516271B2 (en) * 2012-10-31 2016-12-06 Microsoft Technology Licensing, Llc Auto-adjusting content size rendered on a display
US10185960B2 (en) 2014-07-11 2019-01-22 Google Llc Hands-free transactions verified by location
US20160012423A1 (en) 2014-07-11 2016-01-14 Google Inc. Hands-free transactions with voice recognition
WO2016042039A1 (en) * 2014-09-16 2016-03-24 Foundation For Research And Technology - Hellas (Forth) Gesture recognition apparatuses, methods and systems for human-machine interaction
US10262655B2 (en) * 2014-11-03 2019-04-16 Microsoft Technology Licensing, Llc Augmentation of key phrase user recognition
US10397220B2 (en) 2015-04-30 2019-08-27 Google Llc Facial profile password to modify user account data for hands-free transactions
US9619803B2 (en) 2015-04-30 2017-04-11 Google Inc. Identifying consumers in a transaction via facial recognition
US10733587B2 (en) 2015-04-30 2020-08-04 Google Llc Identifying consumers via facial recognition to provide services
CN108780477B (zh) * 2016-03-01 2022-10-21 谷歌有限责任公司 用于免手操交易的面部简档修改
KR20190034292A (ko) 2016-07-31 2019-04-01 구글 엘엘씨 자동 핸즈프리 서비스 요청
JP6598748B2 (ja) * 2016-08-26 2019-10-30 任天堂株式会社 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法
US11062304B2 (en) 2016-10-20 2021-07-13 Google Llc Offline user identification
WO2018222232A1 (en) 2017-05-31 2018-12-06 Google Llc Providing hands-free data for interactions
CN107665238B (zh) * 2017-08-24 2021-10-22 北京搜狗科技发展有限公司 图片处理方法和装置、用于图片处理的装置
US10511808B2 (en) * 2018-04-10 2019-12-17 Facebook, Inc. Automated cinematic decisions based on descriptive models
CN109784226B (zh) * 2018-12-28 2020-12-15 深圳云天励飞技术有限公司 人脸抓拍方法及相关装置
US11580815B2 (en) * 2019-03-14 2023-02-14 Nant Holdings Ip, Llc Avatar-based sports betting
US11589094B2 (en) * 2019-07-22 2023-02-21 At&T Intellectual Property I, L.P. System and method for recommending media content based on actual viewers
CN111027483A (zh) * 2019-12-10 2020-04-17 西南石油大学 一种基于hsv颜色空间处理的后厨人员着装检测方法
CN111192221B (zh) * 2020-01-07 2024-04-16 中南大学 基于深度卷积生成对抗网络的铝电解火眼图像修补方法
CN115999156B (zh) * 2023-03-24 2023-06-30 深圳游禧科技有限公司 角色控制方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5616078A (en) * 1993-12-28 1997-04-01 Konami Co., Ltd. Motion-controlled video entertainment system
CN1996205A (zh) * 2006-01-05 2007-07-11 财团法人工业技术研究院 动态动作捕捉与周边装置互动的方法与系统
US7272243B2 (en) * 2001-12-31 2007-09-18 Microsoft Corporation Machine vision system and method for estimating and tracking facial pose

Family Cites Families (196)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4288078A (en) * 1979-11-20 1981-09-08 Lugo Julio I Game apparatus
US4695953A (en) 1983-08-25 1987-09-22 Blair Preston E TV animation interactively controlled by the viewer
US4630910A (en) 1984-02-16 1986-12-23 Robotic Vision Systems, Inc. Method of measuring in three-dimensions at high speed
US4627620A (en) 1984-12-26 1986-12-09 Yang John P Electronic athlete trainer for improving skills in reflex, speed and accuracy
US4645458A (en) 1985-04-15 1987-02-24 Harald Phillip Athletic evaluation and training apparatus
US4702475A (en) 1985-08-16 1987-10-27 Innovating Training Products, Inc. Sports technique and reaction training system
US4843568A (en) 1986-04-11 1989-06-27 Krueger Myron W Real time perception of and response to the actions of an unencumbered participant/user
US4711543A (en) 1986-04-14 1987-12-08 Blair Preston E TV animation interactively controlled by the viewer
US4796997A (en) 1986-05-27 1989-01-10 Synthetic Vision Systems, Inc. Method and system for high-speed, 3-D imaging of an object at a vision station
US5184295A (en) 1986-05-30 1993-02-02 Mann Ralph V System and method for teaching physical skills
US4751642A (en) 1986-08-29 1988-06-14 Silva John M Interactive sports simulation system with physiological sensing and psychological conditioning
US4809065A (en) 1986-12-01 1989-02-28 Kabushiki Kaisha Toshiba Interactive system and related method for displaying data to produce a three-dimensional image of an object
US4817950A (en) 1987-05-08 1989-04-04 Goo Paul E Video game control unit and attitude sensor
US5239464A (en) 1988-08-04 1993-08-24 Blair Preston E Interactive video system providing repeated switching of multiple tracks of actions sequences
US5239463A (en) 1988-08-04 1993-08-24 Blair Preston E Method and apparatus for player interaction with animated characters and objects
US4901362A (en) 1988-08-08 1990-02-13 Raytheon Company Method of recognizing patterns
US4893183A (en) 1988-08-11 1990-01-09 Carnegie-Mellon University Robotic vision system
JPH02199526A (ja) 1988-10-14 1990-08-07 David G Capper 制御インターフェース装置
US4925189A (en) 1989-01-13 1990-05-15 Braeunig Thomas F Body-mounted video game exercise device
US5229756A (en) 1989-02-07 1993-07-20 Yamaha Corporation Image control apparatus
US5469740A (en) 1989-07-14 1995-11-28 Impulse Technology, Inc. Interactive video testing and training system
JPH03103822U (zh) 1990-02-13 1991-10-29
US5101444A (en) 1990-05-18 1992-03-31 Panacea, Inc. Method and apparatus for high speed object location
US5148154A (en) 1990-12-04 1992-09-15 Sony Corporation Of America Multi-dimensional user interface
US5534917A (en) 1991-05-09 1996-07-09 Very Vivid, Inc. Video image based control system
US5417210A (en) 1992-05-27 1995-05-23 International Business Machines Corporation System and method for augmentation of endoscopic surgery
US5295491A (en) 1991-09-26 1994-03-22 Sam Technology, Inc. Non-invasive human neurocognitive performance capability testing method and system
US6054991A (en) 1991-12-02 2000-04-25 Texas Instruments Incorporated Method of modeling player position and movement in a virtual reality system
EP0590101B1 (en) 1991-12-03 1999-06-23 French Sportech Corporation Interactive video testing and training system
US5875108A (en) 1991-12-23 1999-02-23 Hoffberg; Steven M. Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
JPH07325934A (ja) 1992-07-10 1995-12-12 Walt Disney Co:The 仮想世界に向上したグラフィックスを提供する方法および装置
US5999908A (en) 1992-08-06 1999-12-07 Abelow; Daniel H. Customer-based product design module
US5320538A (en) 1992-09-23 1994-06-14 Hughes Training, Inc. Interactive aircraft training system and method
IT1257294B (it) 1992-11-20 1996-01-12 Dispositivo atto a rilevare la configurazione di un'unita' fisiologicadistale,da utilizzarsi in particolare come interfaccia avanzata per macchine e calcolatori.
US5495576A (en) 1993-01-11 1996-02-27 Ritchey; Kurtis J. Panoramic image based virtual reality/telepresence audio-visual system and method
US5690582A (en) 1993-02-02 1997-11-25 Tectrix Fitness Equipment, Inc. Interactive exercise apparatus
JP2799126B2 (ja) 1993-03-26 1998-09-17 株式会社ナムコ ビデオゲーム装置及びゲーム用入力装置
US5405152A (en) 1993-06-08 1995-04-11 The Walt Disney Company Method and apparatus for an interactive video game with physical feedback
US5454043A (en) 1993-07-30 1995-09-26 Mitsubishi Electric Research Laboratories, Inc. Dynamic and static hand gesture recognition through low-level image analysis
US5423554A (en) 1993-09-24 1995-06-13 Metamedia Ventures, Inc. Virtual reality game method and apparatus
US5980256A (en) 1993-10-29 1999-11-09 Carmein; David E. E. Virtual reality system with enhanced sensory apparatus
JP3419050B2 (ja) 1993-11-19 2003-06-23 株式会社日立製作所 入力装置
US5347306A (en) 1993-12-17 1994-09-13 Mitsubishi Electric Research Laboratories, Inc. Animated electronic meeting place
US5577981A (en) 1994-01-19 1996-11-26 Jarvik; Robert Virtual reality exercise machine and computer controlled video system
US5580249A (en) 1994-02-14 1996-12-03 Sarcos Group Apparatus for simulating mobility of a human
US5597309A (en) 1994-03-28 1997-01-28 Riess; Thomas Method and apparatus for treatment of gait problems associated with parkinson's disease
US5385519A (en) 1994-04-19 1995-01-31 Hsu; Chi-Hsueh Running machine
US5524637A (en) 1994-06-29 1996-06-11 Erickson; Jon W. Interactive system for measuring physiological exertion
JPH0844490A (ja) 1994-07-28 1996-02-16 Matsushita Electric Ind Co Ltd インターフェイス装置
US5563988A (en) 1994-08-01 1996-10-08 Massachusetts Institute Of Technology Method and system for facilitating wireless, full-body, real-time user interaction with a digitally represented visual environment
US6714665B1 (en) 1994-09-02 2004-03-30 Sarnoff Corporation Fully automated iris recognition system utilizing wide and narrow fields of view
US5516105A (en) 1994-10-06 1996-05-14 Exergame, Inc. Acceleration activated joystick
US5638300A (en) 1994-12-05 1997-06-10 Johnson; Lee E. Golf swing analysis system
JPH08161292A (ja) 1994-12-09 1996-06-21 Matsushita Electric Ind Co Ltd 混雑度検知方法およびそのシステム
US5594469A (en) 1995-02-21 1997-01-14 Mitsubishi Electric Information Technology Center America Inc. Hand gesture machine control system
US5682229A (en) 1995-04-14 1997-10-28 Schwartz Electro-Optics, Inc. Laser range camera
US6205231B1 (en) 1995-05-10 2001-03-20 Identive Corporation Object identification in a moving video image
US5913727A (en) 1995-06-02 1999-06-22 Ahdoot; Ned Interactive movement and contact simulation game
US6229913B1 (en) 1995-06-07 2001-05-08 The Trustees Of Columbia University In The City Of New York Apparatus and methods for determining the three-dimensional shape of an object using active illumination and relative blurring in two-images due to defocus
US5682196A (en) 1995-06-22 1997-10-28 Actv, Inc. Three-dimensional (3D) video presentation system providing interactive 3D presentation with personalized audio responses for multiple viewers
US5702323A (en) 1995-07-26 1997-12-30 Poulton; Craig K. Electronic exercise enhancer
US6098458A (en) 1995-11-06 2000-08-08 Impulse Technology, Ltd. Testing and training system for assessing movement and agility skills without a confining field
US6073489A (en) 1995-11-06 2000-06-13 French; Barry J. Testing and training system for assessing the ability of a player to complete a task
US6430997B1 (en) 1995-11-06 2002-08-13 Trazer Technologies, Inc. System and method for tracking and assessing movement skills in multidimensional space
US6308565B1 (en) 1995-11-06 2001-10-30 Impulse Technology Ltd. System and method for tracking and assessing movement skills in multidimensional space
US6176782B1 (en) 1997-12-22 2001-01-23 Philips Electronics North America Corp. Motion-based command generation technology
US5933125A (en) 1995-11-27 1999-08-03 Cae Electronics, Ltd. Method and apparatus for reducing instability in the display of a virtual environment
US5641288A (en) 1996-01-11 1997-06-24 Zaenglein, Jr.; William G. Shooting simulating process and training device using a virtual reality display screen
EP0958002A4 (en) 1996-05-08 2001-03-28 Real Vision Corp REAL-TIME SIMULATION USING POSITION DETECTION
US6173066B1 (en) 1996-05-21 2001-01-09 Cybernet Systems Corporation Pose determination and tracking by matching 3D objects to a 2D sensor
US5989157A (en) 1996-08-06 1999-11-23 Walton; Charles A. Exercising system with electronic inertial game playing
CN1168057C (zh) 1996-08-14 2004-09-22 挪拉赫梅特·挪利斯拉莫维奇·拉都包夫 追踪并显示使用者在空间的位置与取向的方法,向使用者展示虚拟环境的方法以及实现这些方法的系统
JP3064928B2 (ja) 1996-09-20 2000-07-12 日本電気株式会社 被写体抽出方式
US6184926B1 (en) * 1996-11-26 2001-02-06 Ncr Corporation System and method for detecting a human face in uncontrolled environments
EP0849697B1 (en) 1996-12-20 2003-02-12 Hitachi Europe Limited A hand gesture recognition system and method
US6009210A (en) 1997-03-05 1999-12-28 Digital Equipment Corporation Hands-free interface to a virtual reality environment using head tracking
US6100896A (en) 1997-03-24 2000-08-08 Mitsubishi Electric Information Technology Center America, Inc. System for designing graphical multi-participant environments
US5877803A (en) 1997-04-07 1999-03-02 Tritech Mircoelectronics International, Ltd. 3-D image detector
US6215898B1 (en) 1997-04-15 2001-04-10 Interval Research Corporation Data processing system and method
JP3077745B2 (ja) 1997-07-31 2000-08-14 日本電気株式会社 データ処理方法および装置、情報記憶媒体
US6188777B1 (en) 1997-08-01 2001-02-13 Interval Research Corporation Method and apparatus for personnel detection and tracking
US6720949B1 (en) 1997-08-22 2004-04-13 Timothy R. Pryor Man machine interfaces and applications
US6142876A (en) * 1997-08-22 2000-11-07 Cumbers; Blake Player tracking and identification system
US6289112B1 (en) 1997-08-22 2001-09-11 International Business Machines Corporation System and method for determining block direction in fingerprint images
AUPO894497A0 (en) 1997-09-02 1997-09-25 Xenotech Research Pty Ltd Image processing method and apparatus
EP0905644A3 (en) 1997-09-26 2004-02-25 Matsushita Electric Industrial Co., Ltd. Hand gesture recognizing device
US6137896A (en) * 1997-10-07 2000-10-24 National Research Council Of Canada Method of recognizing faces using range images
US6141463A (en) 1997-10-10 2000-10-31 Electric Planet Interactive Method and system for estimating jointed-figure configurations
US6101289A (en) 1997-10-15 2000-08-08 Electric Planet, Inc. Method and apparatus for unencumbered capture of an object
US6384819B1 (en) 1997-10-15 2002-05-07 Electric Planet, Inc. System and method for generating an animatable character
US6130677A (en) 1997-10-15 2000-10-10 Electric Planet, Inc. Interactive computer vision system
AU1099899A (en) 1997-10-15 1999-05-03 Electric Planet, Inc. Method and apparatus for performing a clean background subtraction
US6072494A (en) 1997-10-15 2000-06-06 Electric Planet, Inc. Method and apparatus for real-time gesture recognition
US6181343B1 (en) 1997-12-23 2001-01-30 Philips Electronics North America Corp. System and method for permitting three-dimensional navigation through a virtual reality environment using camera-based gesture inputs
JP2002516121A (ja) 1998-03-03 2002-06-04 アリーナ, インコーポレイテッド 多次元空間における運動技術を追跡し、そして評価するためのシステムおよび方法
US6159100A (en) 1998-04-23 2000-12-12 Smith; Michael D. Virtual reality game
US6077201A (en) 1998-06-12 2000-06-20 Cheng; Chau-Yang Exercise bicycle
US7121946B2 (en) 1998-08-10 2006-10-17 Cybernet Systems Corporation Real-time head tracking system for computer games and other applications
US7036094B1 (en) 1998-08-10 2006-04-25 Cybernet Systems Corporation Behavior recognition system
US6950534B2 (en) 1998-08-10 2005-09-27 Cybernet Systems Corporation Gesture-controlled interfaces for self-service machines and other applications
US20010008561A1 (en) 1999-08-10 2001-07-19 Paul George V. Real-time object tracking system
US6681031B2 (en) 1998-08-10 2004-01-20 Cybernet Systems Corporation Gesture-controlled interfaces for self-service machines and other applications
US6801637B2 (en) 1999-08-10 2004-10-05 Cybernet Systems Corporation Optical body tracker
IL126284A (en) 1998-09-17 2002-12-01 Netmor Ltd System and method for three dimensional positioning and tracking
EP0991011B1 (en) 1998-09-28 2007-07-25 Matsushita Electric Industrial Co., Ltd. Method and device for segmenting hand gestures
AU1930700A (en) 1998-12-04 2000-06-26 Interval Research Corporation Background estimation and segmentation based on range and color
US6147678A (en) 1998-12-09 2000-11-14 Lucent Technologies Inc. Video hand image-three-dimensional computer interface with multiple degrees of freedom
WO2000036372A1 (en) 1998-12-16 2000-06-22 3Dv Systems, Ltd. Self gating photosurface
US6570555B1 (en) 1998-12-30 2003-05-27 Fuji Xerox Co., Ltd. Method and apparatus for embodied conversational characters with multimodal input/output in an interface device
US6363160B1 (en) 1999-01-22 2002-03-26 Intel Corporation Interface using pattern recognition and tracking
US7003134B1 (en) 1999-03-08 2006-02-21 Vulcan Patents Llc Three dimensional object pose estimation which employs dense depth information
US6299308B1 (en) 1999-04-02 2001-10-09 Cybernet Systems Corporation Low-cost non-imaging eye tracker system for computer control
US6503195B1 (en) 1999-05-24 2003-01-07 University Of North Carolina At Chapel Hill Methods and systems for real-time structured light depth extraction and endoscope using real-time structured light depth extraction
US6476834B1 (en) 1999-05-28 2002-11-05 International Business Machines Corporation Dynamic creation of selectable items on surfaces
US6873723B1 (en) 1999-06-30 2005-03-29 Intel Corporation Segmenting three-dimensional video images using stereo
US6738066B1 (en) * 1999-07-30 2004-05-18 Electric Plant, Inc. System, method and article of manufacture for detecting collisions between video images generated by a camera and an object depicted on a display
US7113918B1 (en) 1999-08-01 2006-09-26 Electric Planet, Inc. Method for video enabled electronic commerce
US7050606B2 (en) 1999-08-10 2006-05-23 Cybernet Systems Corporation Tracking and gesture recognition system particularly suited to vehicular control applications
US6674877B1 (en) 2000-02-03 2004-01-06 Microsoft Corporation System and method for visually tracking occluded objects in real time
US6663491B2 (en) 2000-02-18 2003-12-16 Namco Ltd. Game apparatus, storage medium and computer program that adjust tempo of sound
US6633294B1 (en) 2000-03-09 2003-10-14 Seth Rosenthal Method and apparatus for using captured high density motion for animation
EP1152261A1 (en) 2000-04-28 2001-11-07 CSEM Centre Suisse d'Electronique et de Microtechnique SA Device and method for spatially resolved photodetection and demodulation of modulated electromagnetic waves
US6640202B1 (en) 2000-05-25 2003-10-28 International Business Machines Corporation Elastic sensor mesh system for 3-dimensional measurement, mapping and kinematics applications
US6731799B1 (en) 2000-06-01 2004-05-04 University Of Washington Object segmentation with background extraction and moving boundary techniques
US6788809B1 (en) 2000-06-30 2004-09-07 Intel Corporation System and method for gesture recognition in three dimensions using stereo imaging and color vision
US7227526B2 (en) 2000-07-24 2007-06-05 Gesturetek, Inc. Video-based image control system
US7058204B2 (en) 2000-10-03 2006-06-06 Gesturetek, Inc. Multiple camera control system
US7039676B1 (en) 2000-10-31 2006-05-02 International Business Machines Corporation Using video image analysis to automatically transmit gestures over a network in a chat or instant messaging session
US6539931B2 (en) 2001-04-16 2003-04-01 Koninklijke Philips Electronics N.V. Ball throwing assistant
US8035612B2 (en) 2002-05-28 2011-10-11 Intellectual Ventures Holding 67 Llc Self-contained interactive video display system
US7259747B2 (en) 2001-06-05 2007-08-21 Reactrix Systems, Inc. Interactive video display system
JP3420221B2 (ja) 2001-06-29 2003-06-23 株式会社コナミコンピュータエンタテインメント東京 ゲーム装置及びプログラム
US6896618B2 (en) * 2001-09-20 2005-05-24 Igt Point of play registration on a gaming machine
US6937742B2 (en) 2001-09-28 2005-08-30 Bellsouth Intellectual Property Corporation Gesture activated home appliance
US7221809B2 (en) * 2001-12-17 2007-05-22 Genex Technologies, Inc. Face recognition system and method
WO2003060846A2 (en) * 2001-12-21 2003-07-24 Cias, Inc. Combination casino table game imaging system for automatically recognizing the faces of players -- as well as terrorists and other undesirables -- and for recognizing wagered gaming chips
AU2003219926A1 (en) * 2002-02-26 2003-09-09 Canesta, Inc. Method and apparatus for recognizing objects
US7203356B2 (en) * 2002-04-11 2007-04-10 Canesta, Inc. Subject segmentation and tracking using 3D sensing technology for video compression in multimedia applications
EP1497160B2 (de) 2002-04-19 2010-07-21 IEE INTERNATIONAL ELECTRONICS & ENGINEERING S.A. Sicherheitsvorrichtung für ein fahrzeug
US6853739B2 (en) * 2002-05-15 2005-02-08 Bio Com, Llc Identity verification system
US7170492B2 (en) 2002-05-28 2007-01-30 Reactrix Systems, Inc. Interactive video display system
US7710391B2 (en) 2002-05-28 2010-05-04 Matthew Bell Processing an image utilizing a spatially varying pattern
US7348963B2 (en) 2002-05-28 2008-03-25 Reactrix Systems, Inc. Interactive video display system
US7489812B2 (en) 2002-06-07 2009-02-10 Dynamic Digital Depth Research Pty Ltd. Conversion and encoding techniques
US7227976B1 (en) * 2002-07-08 2007-06-05 Videomining Corporation Method and system for real-time facial image enhancement
US20040037450A1 (en) * 2002-08-22 2004-02-26 Bradski Gary R. Method, apparatus and system for using computer vision to identify facial characteristics
US7559834B1 (en) 2002-12-02 2009-07-14 Microsoft Corporation Dynamic join/exit of players during play of console-based video game
US7576727B2 (en) 2002-12-13 2009-08-18 Matthew Bell Interactive directed light/sound system
JP4235729B2 (ja) 2003-02-03 2009-03-11 国立大学法人静岡大学 距離画像センサ
US7218320B2 (en) 2003-03-13 2007-05-15 Sony Corporation System and method for capturing facial and body motion
EP1477924B1 (en) 2003-03-31 2007-05-02 HONDA MOTOR CO., Ltd. Gesture recognition apparatus, method and program
US8072470B2 (en) 2003-05-29 2011-12-06 Sony Computer Entertainment Inc. System and method for providing a real-time three-dimensional interactive environment
WO2004107266A1 (en) 2003-05-29 2004-12-09 Honda Motor Co., Ltd. Visual tracking using depth data
EP3196805A3 (en) 2003-06-12 2017-11-01 Honda Motor Co., Ltd. Target orientation estimation using depth sensing
WO2005041579A2 (en) 2003-10-24 2005-05-06 Reactrix Systems, Inc. Method and system for processing captured image information in an interactive video display system
US7614955B2 (en) * 2004-03-01 2009-11-10 Microsoft Corporation Method for online game matchmaking using play style information
US7379563B2 (en) 2004-04-15 2008-05-27 Gesturetek, Inc. Tracking bimanual movements
US7308112B2 (en) 2004-05-14 2007-12-11 Honda Motor Co., Ltd. Sign based human-machine interaction
JP4005061B2 (ja) * 2004-06-30 2007-11-07 株式会社ソニー・コンピュータエンタテインメント 情報処理装置、プログラム、および、情報処理装置におけるオブジェクト制御方法
US7508990B2 (en) * 2004-07-30 2009-03-24 Euclid Discoveries, Llc Apparatus and method for processing video data
US7704135B2 (en) 2004-08-23 2010-04-27 Harrison Jr Shelton E Integrated game system, method, and device
KR20060070280A (ko) 2004-12-20 2006-06-23 한국전자통신연구원 손 제스처 인식을 이용한 사용자 인터페이스 장치 및 그방법
EP1849123A2 (en) 2005-01-07 2007-10-31 GestureTek, Inc. Optical flow based tilt sensor
EP2487624B1 (en) 2005-01-07 2020-02-19 Qualcomm Incorporated(1/3) Detecting and tracking objects in images
WO2006074310A2 (en) 2005-01-07 2006-07-13 Gesturetek, Inc. Creating 3d images of objects by illuminating with infrared patterns
US7526101B2 (en) 2005-01-24 2009-04-28 Mitsubishi Electric Research Laboratories, Inc. Tracking objects in videos with adaptive classifiers
KR100960577B1 (ko) 2005-02-08 2010-06-03 오블롱 인더스트리즈, 인크 제스처 기반의 제어 시스템을 위한 시스템 및 방법
US7317836B2 (en) 2005-03-17 2008-01-08 Honda Motor Co., Ltd. Pose estimation based on critical point analysis
IL168035A (en) * 2005-04-14 2011-09-27 Rafael Advanced Defense Sys Normalization of face for identification and registration
CN103257684B (zh) 2005-05-17 2017-06-09 高通股份有限公司 方向敏感的信号输出方法及装置
DE602005010696D1 (de) 2005-08-12 2008-12-11 Mesa Imaging Ag Hochempfindliches, schnelles Pixel für Anwendung in einem Bildsensor
US20080026838A1 (en) 2005-08-22 2008-01-31 Dunstan James E Multi-player non-role-playing virtual world games: method for two-way interaction between participants and multi-player virtual world games
US7450736B2 (en) 2005-10-28 2008-11-11 Honda Motor Co., Ltd. Monocular tracking of 3D human motion with a coordinated mixture of factor analyzers
US20100201512A1 (en) * 2006-01-09 2010-08-12 Harold Dan Stirling Apparatus, systems, and methods for evaluating body movements
WO2008007471A1 (fr) 2006-07-10 2008-01-17 Kyoto University Procédé de suivi d'un marcheur et dispositif de suivi d'un marcheur
US7701439B2 (en) 2006-07-13 2010-04-20 Northrop Grumman Corporation Gesture recognition simulation system and method
JP5395323B2 (ja) 2006-09-29 2014-01-22 ブレインビジョン株式会社 固体撮像素子
US8351646B2 (en) 2006-12-21 2013-01-08 Honda Motor Co., Ltd. Human pose estimation and tracking using label assignment
US7412077B2 (en) 2006-12-29 2008-08-12 Motorola, Inc. Apparatus and methods for head pose estimation and head gesture detection
US7729530B2 (en) 2007-03-03 2010-06-01 Sergey Antonov Method and apparatus for 3-D data input to a personal computer with a multimedia oriented operating system
US8711102B2 (en) 2007-06-15 2014-04-29 Microsoft Corporation Graphical communication user interface with graphical position user input mechanism for selecting a display image
US7852262B2 (en) 2007-08-16 2010-12-14 Cybernet Systems Corporation Wireless mobile indoor/outdoor tracking system
GB2452512B (en) * 2007-09-05 2012-02-29 Sony Corp Apparatus and method of object tracking
CN101842810B (zh) 2007-10-30 2012-09-26 惠普开发有限公司 具有协作姿态检测的交互式显示系统
US20090221368A1 (en) 2007-11-28 2009-09-03 Ailive Inc., Method and system for creating a shared game space for a networked game
GB2455316B (en) 2007-12-04 2012-08-15 Sony Corp Image processing apparatus and method
US20090186693A1 (en) 2007-12-26 2009-07-23 Edge Of Reality, Ltd. Interactive video game display method, apparatus, and/or system for object interaction
CN101254344B (zh) 2008-04-18 2010-06-16 李刚 场地方位与显示屏点阵按比例相对应的游戏装置和方法
US8682028B2 (en) * 2009-01-30 2014-03-25 Microsoft Corporation Visual target tracking
US8588465B2 (en) * 2009-01-30 2013-11-19 Microsoft Corporation Visual target tracking
US8295546B2 (en) * 2009-01-30 2012-10-23 Microsoft Corporation Pose tracking pipeline
US8565476B2 (en) * 2009-01-30 2013-10-22 Microsoft Corporation Visual target tracking
US8577085B2 (en) * 2009-01-30 2013-11-05 Microsoft Corporation Visual target tracking
US8267781B2 (en) * 2009-01-30 2012-09-18 Microsoft Corporation Visual target tracking
US20110150271A1 (en) * 2009-12-18 2011-06-23 Microsoft Corporation Motion detection using depth images
US8864581B2 (en) 2010-01-29 2014-10-21 Microsoft Corporation Visual based identitiy tracking

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5616078A (en) * 1993-12-28 1997-04-01 Konami Co., Ltd. Motion-controlled video entertainment system
US7272243B2 (en) * 2001-12-31 2007-09-18 Microsoft Corporation Machine vision system and method for estimating and tracking facial pose
CN1996205A (zh) * 2006-01-05 2007-07-11 财团法人工业技术研究院 动态动作捕捉与周边装置互动的方法与系统

Also Published As

Publication number Publication date
US20120165097A1 (en) 2012-06-28
US20150038230A1 (en) 2015-02-05
US20110190055A1 (en) 2011-08-04
CN102141838A (zh) 2011-08-03
US8926431B2 (en) 2015-01-06
US9278287B2 (en) 2016-03-08
US8864581B2 (en) 2014-10-21

Similar Documents

Publication Publication Date Title
CN102141838B (zh) 基于视觉的身份跟踪
CN102448562B (zh) 用于跟踪模型的系统和方法
CN102576466B (zh) 用于跟踪模型的系统和方法
CN102135798B (zh) 仿生学运动
CN102262440B (zh) 多模态性别识别
CN102087738B (zh) 用于为目标跟踪处理图像的系统和方法
CN102549619B (zh) 人类跟踪系统
CN102576463B (zh) 用于移除图像的背景的系统和方法
CN102301398B (zh) 用于捕捉场景的深度信息的设备、方法和系统
CN102413885B (zh) 用于对运动捕捉应用模型跟踪的系统和方法
CN102129293B (zh) 在运动捕捉系统中跟踪用户组
CN102184009B (zh) 跟踪系统中的手位置后处理精炼
US9069381B2 (en) Interacting with a computer based application
CN102665838B (zh) 用于确定和跟踪目标的肢端的方法和系统
CN102253712B (zh) 用于共享信息的识别系统
CN105073210B (zh) 使用深度图像的用户身体角度、曲率和平均末端位置提取
CN102609954B (zh) 对人类目标跟踪的确认分析
CN102448563B (zh) 用于处理场景的深度信息的方法和设备
CN102129551B (zh) 基于关节跳过的姿势检测
CN102596340B (zh) 用于将动画或运动应用到角色的系统和方法
CN102222431B (zh) 用于翻译手语的计算机实现的方法
US20130077820A1 (en) Machine learning gesture detection
US20130287257A1 (en) Foreground subject detection
CN102681657A (zh) 交互式内容创建
CN105144240A (zh) 使用深度图像的用户质心和质量分布提取

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150506

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

Effective date of registration: 20150506

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.