KR102162373B1 - 주체와 객체의 연관 - Google Patents

주체와 객체의 연관 Download PDF

Info

Publication number
KR102162373B1
KR102162373B1 KR1020157013455A KR20157013455A KR102162373B1 KR 102162373 B1 KR102162373 B1 KR 102162373B1 KR 1020157013455 A KR1020157013455 A KR 1020157013455A KR 20157013455 A KR20157013455 A KR 20157013455A KR 102162373 B1 KR102162373 B1 KR 102162373B1
Authority
KR
South Korea
Prior art keywords
beacon
human subject
control device
controlling device
depth
Prior art date
Application number
KR1020157013455A
Other languages
English (en)
Other versions
KR20150086278A (ko
Inventor
비제이 바이야
톰머 레이반드
마크 프랫지
도슨 이
존 링크
브라이언 애슐리
브라이언 애슐리
앤드류 제시 밀루찌
Original Assignee
마이크로소프트 테크놀로지 라이센싱, 엘엘씨
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 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 filed Critical 마이크로소프트 테크놀로지 라이센싱, 엘엘씨
Publication of KR20150086278A publication Critical patent/KR20150086278A/ko
Application granted granted Critical
Publication of KR102162373B1 publication Critical patent/KR102162373B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • A63F13/06
    • 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
    • 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/20Input arrangements for video game devices
    • A63F13/23Input arrangements for video game devices for interfacing with the game device, e.g. specific interfaces between game controller and console
    • A63F13/235Input arrangements for video game devices for interfacing with the game device, e.g. specific interfaces between game controller and console using a wireless connection, e.g. infrared or piconet
    • 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/55Controlling game characters or game objects based on the game progress
    • A63F13/56Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • G06K9/78
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/75Determining position or orientation of objects or cameras using feature-based methods involving models
    • 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/1025Features 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 details of the interface with the game device, e.g. USB version detection
    • A63F2300/1031Features 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 details of the interface with the game device, e.g. USB version detection using a wireless connection, e.g. Bluetooth, infrared connections
    • 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/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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/04Indexing scheme for image data processing or generation, in general involving 3D image data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • User Interface Of Digital Computer (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Position Input By Displaying (AREA)

Abstract

방법은 깊이 카메라로부터 하나 이상의 깊이 이미지들을 수신하는 단계를 포함하며, 깊이 이미지들은 깊이 이미지들의 각각의 픽셀에 의해 이미지화된 표면의 깊이를 표시한다. 방법은 깊이 이미지들에 의해 이미지화된 인간 주체를 식별하는 단계, 및 하나 이상의 깊이 이미지들 내에서 제어 디바이스로부터 방출된 비콘을 인식하는 단계를 더 포함할 수 있다. 제어 디바이스의 위치는 삼차원으로 평가될 수 있고, 제어 디바이스는, 인간 주체에 대한 제어 디바이스의 근접성 또는 인간 주체에 관한 제어 디바이스의 다른 파라미터에 기초하여, 인간 주체와 연관될 수 있다.

Description

주체와 객체의 연관{ASSOCIATING AN OBJECT WITH A SUBJECT}
본 발명은 게임 제어기와 같은 제어 디바이스를 게임 플레이어 또는 다른 주체와 지능적으로 연관시키는 것에 관한 것이다.
특정 사용자와 제어 디바이스의 연관은 일반적으로, 제어 디바이스, 사용자, 및 컴퓨팅 시스템간의 다단계 상호작용을 수반한다. 이러한 연관은 또한 사용자가 제어 디바이스를 새로운 연관으로 업데이트할 것을 특별히 요청할 때 까지 유지될 수 있다.
본 명세서에서는 운영 환경 내에서 객체를 주체와 지능적으로 연관시키는 방법을 제공하는 실시예들이 개시된다. 예를 들어, 컴퓨팅 디바이스는 깊이 카메라(depth camera)로부터 하나 이상의 깊이 이미지들을 수신할 수 있으며, 이러한 깊이 이미지들은 깊이 이미지들의 각각의 픽셀에 의해 이미지화된 표면의 깊이를 표시한다. 컴퓨팅 디바이스는 깊이 이미지들을 활용하여 깊이 이미지들에 의해 이미지화된 인간 주체를 식별하고, 하나 이상의 깊이 이미지들 내에서 제어 디바이스로부터 방출된 비콘(beacon)을 인식할 수 있다. 컴퓨팅 디바이스는 제어 디바이스의 위치를 삼차원으로 평가하여 제어 디바이스의 상대적인 위치를 결정하고, 인간 주체에 대한 제어 디바이스의 근접성 및/또는 인간 주체에 관한 제어 디바이스의 임의의 다른 적절한 파라미터에 기초하여 제어 디바이스를 인간 주체와 연관시킬 수 있다.
본 요약은 아래의 상세한 설명에서 보다 상세하게 설명되는 개념들의 선택을 단순한 형태로 소개하기 위해 제공된 것이다. 본 요약은 청구된 발명내용의 중요한 특징들 또는 필수적인 특징들을 식별시키려는 의도는 없으며, 또한 청구된 발명내용의 범위를 제한시키려는 의도도 없다. 뿐만 아니라, 청구된 발명내용은 본 발명개시의 임의의 부분에서 언급된 단점들 모두 또는 그 일부를 해결하는 구현예들로 국한되지 않는다.
도 1은 본 발명개시의 실시예에 따른 하나 이상의 주체들 및 객체들과 컴퓨팅 시스템을 포함하는 환경의 비제한적인 예시를 개략적으로 도시한다.
도 2는 본 발명개시의 실시예에 따라 객체를 주체와 연관시키는 방법을 도시한다.
도 3은 본 발명개시의 실시예에 따른 골격 추적 파이프라인의 비제한적인 예시를 개략적으로 도시한다.
도 4는 본 발명개시의 실시예에 따라 제어 디바이스를 컴퓨팅 시스템에 결속시키는 방법을 도시한다.
도 5는 본 발명개시의 실시예에 따른 컴퓨팅 시스템과 둘 이상의 제어 디바이스들을 포함하는 환경에 대한 예시적인 통신 다이어그램을 개략적으로 도시한다.
도 6은 본 발명개시의 실시예에 따른 예시적인 컴퓨팅 시스템이다.
본 발명개시는 게임 제어기와 같은 제어 디바이스를 게임 플레이어 또는 다른 주체와 지능적으로 연관시키는 것에 관한 것이다. 제어 디바이스는 비콘을 방출시킬 수 있고, 컴퓨터는 이 비콘을 이용하여 제어 디바이스의 삼차원 위치를 결정할 수 있다. 하나 이상의 주체들의 삼차원 위치가 평가될 수 있고, 주체에 대한 제어 디바이스의 근접성 및/또는 주체에 관한 제어 디바이스의 임의의 다른 적절한 파라미터에 기초하여 제어 디바이스는 이러한 하나의 주체와 자동적으로 연관된다.
도 1은 컴퓨팅 시스템(102)과 제어 디바이스들(104, 106, 108, 109)을 포함한 예시적인 환경(100)을 도시한다. 환경(100)은 방으로서 나타내었지만, 환경(100)은 실내 및/또는 실외 환경들을 비롯한, 임의의 적절한 물리적 공간일 수 있다. 컴퓨팅 시스템(102)은 제어 디바이스들(104, 106, 108, 109)로부터의 입력을 수신하고/수신하거나 이 제어 디바이스들(104, 106, 108, 109)과 통신하도록 구성될 수 있다. 본 발명개시에 따른 제어 디바이스들은, 비제한적인 예시로서, 게임 제어기, 오디오 헤드폰 및/또는 헤드셋, 원격 제어, 음악 기기(예컨대, 기타, 드럼 등), 스티어링 휠 제어기, 비행스틱, 무기(예컨대, 검, 레이저 검, 권총, 소총, 사브르, 할베르트, 쌍절봉 등), 모바일 컴퓨팅 디바이스 등을 비롯한, 임의의 적절한 제어 디바이스를 포함할 수 있다. 예시된 실시예에서, 제어 디바이스들(104, 106, 108)은 게임 제어기의 형태를 취하며, 제어 디바이스(109)는 오디오 헤드셋의 형태를 취한다. 컴퓨팅 시스템(102)은 깊이 카메라(110)와 같은, 이미지화 디바이스를 포함할 수 있다. 예를 들어, 깊이 카메라(110)는 환경(100)을 이미지화하도록 구성된 하나 이상의 센서들, 렌즈 엘리먼트들, 및/또는 광원들을 포함할 수 있다. 깊이 카메라(110)는 비제한적인 예시로서, TOF(time-of-flight) 깊이 카메라 및/또는 구조화 광(structured light) 깊이 카메라를 비롯한, 임의의 적절한 깊이 이미지화 기술을 활용할 수 있다. 깊이 카메라(110)는 비제한적인 예시로서, 가시광 카메라 및/또는 하나 이상의 마이크로폰들을 비롯한, 추가적인 센서들을 포함할 수 있다. 깊이 카메라(110)는 깊이 이미지들을 생성하고 이 깊이 이미지들을 컴퓨팅 시스템(102)에 보낼 수 있다. 깊이 이미지들은 환경(100)의 하나 이상의 피처들에 관한 정보를 제공하기 위해 깊이 이미지들의 각각의 픽셀에 의해 이미지화된 표면의 깊이를 표시할 수 있다.
도 1에서 더욱 예시된 바와 같이, 환경(100)은 게임 플레이어(112) 및 게임 플레이어(114)와 같은 하나 이상의 인간 주체들과, 테이블(116)과 같은 하나 이상의 비인간 주체들을 포함할 수 있다. 몇몇의 실시예들에서, 게임 플레이어(112)와 같은, 하나 이상의 사용자들은 컴퓨팅 시스템(102)과 상호작용할 수 있다. 예를 들어, 컴퓨팅 시스템(102)은 디스플레이 디바이스(124)의 디스플레이(122)를 통해서와 같이, 임의의 적절한 방식으로 시각적 출력을 게임 플레이어(112)에 제공할 수 있다. 컴퓨팅 시스템(102)은 또한 제어 디바이스(109)의 오디오 헤드폰(126) 및/또는 디스플레이 디바이스(124)의 스피커와 같은, 하나 이상의 오디오 디바이스들을 통해서와 같이, 임의의 적절한 방식으로 오디오 출력을 게임 플레이어(112)에 제공할 수 있다.
게임 플레이어(112)는 제어 디바이스(104), 깊이 카메라(110), 제어 디바이스(109)의 마이크로폰(118) 및/또는 임의의 다른 적절한 사용자 입력 디바이스와 같은, 하나 이상의 사용자 입력 디바이스들을 통해 입력을 컴퓨팅 시스템(102)에 제공할 수 있다. 상술한 것들과 같은 사용자 입력 디바이스들은 비제한적인 예시로서, 유선 및/또는 무선 구성들을 비롯한 임의의 적절한 방식으로 컴퓨팅 시스템(102)과 통신할 수 있다. 예를 들어, 제어 디바이스는 무선주파수(RF) 통신 채널을 통해 보내지는 커맨드(command)들의 형태로 사용자 입력을 컴퓨팅 시스템(102)에 제공할 수 있다. 몇몇의 실시예들에서, 복수의 제어 디바이스들 및/또는 다른 객체들 각각은 특정 RF 채널을 통해 통신할 수 있고/있거나 특정 제어 디바이스를 다른 제어 디바이스로부터 구별시키기 위해 통신 동안에 고유 식별자를 제공할 수 있다.
제어 디바이스들 및/또는 다른 객체들은 또한 메시지 송신의 라운드 로빈(round-robin) 및/또는 타임 슬라이스 스케쥴링을 통해 서로 구별될 수 있다. 예를 들어, 다중 제어 디바이스들이 타임 슬롯을 할당받을 수 있으며, 이 타임 슬롯 동안 이 제어 디바이스들은 깜박거리거나 또는 그렇지않고 신호를 송신할 수 있다. 이에 응답하여, 컴퓨팅 시스템은 수신된 신호들의 시간 및/또는 순서를 결정하고 해당 신호의 발송처와 해당 시간 및/또는 순서값을 할당받은 제어 디바이스를 연관시킴으로써 각각의 제어 디바이스를 구별할 수 있다. 따라서, 컴퓨팅 시스템은 자신이 관찰하는 비콘을 탐지하고 이 비콘을, RF, 유선 케이블 등과 같은 다른 통신 매체를 통해 자신이 통신하는 객체와 연관시킬 수 있다.
제어 디바이스들, 사용자 입력/출력 디바이스들 등과 같은 객체들은 또한 비콘을 방출시킴으로써 컴퓨팅 시스템(102)과 상호작용하도록 구성될 수 있다. 예를 들어, 도 1에서 예시된 바와 같이, 제어 디바이스(106)는 비콘(128)을 방출할 수 있다. 비콘(128)은 비제한적인 예시로서 오디오 및/또는 광학 비콘을 비롯한, 임의의 적절한 비콘을 포함할 수 있다. 예를 들어, 비콘(128)은 적외선광 비콘, 가시광 비콘, 소나 비콘, 및/또는 임의의 적절한 전자기 신호를 포함할 수 있다. 몇몇의 실시예들에서, 비콘은 컴퓨팅 시스템으로부터의 요청 또는 기타의 메시지에 대응해서만 방출될 수 있다. 비콘(128)은 사용자 입력의 발송처 및/또는 객체의 위치를 결정하기 위해 이용될 수 있다. 사용자 입력의 발송처를 결정하는 것은 컴퓨팅 시스템(102)이 동적으로 조정가능한 사용자 경험을 제공할 수 있도록 해줄 수 있다. 예를 들어, 애플리케이션의 콘텐츠는 입력을 제공하는 특정 사용자에 기초하여 맞춤화될 수 있다. 몇몇의 실시예들에서, 애플리케이션의 콘텐츠는 제어 디바이스에 결부될 수 있다. 예를 들어, 오디오 헤드폰에 사운드를 제공하는 애플리케이션의 오디오 출력은 오디오 헤드폰의 위치에 기초하여 조정될 수 있다.
사용자 입력의 발송처를 식별하는 것은 또한 다중 사용자 입력 및/또는 제어 디바이스들간의 협력을 가능하게 할 수 있다. 예를 들어, 오디오 헤드셋에 제공되는 오디오 입력이 제어 디바이스에 제공되는 입력을 보충할 수 있도록 오디오 헤드셋은 제어 디바이스와 연관될 수 있다. 제스처 기반 커맨드들이 제어 디바이스에 제공된 입력을 보충할 수 있도록 제어 디바이스, 깊이 카메라, 및/또는 다른 적절한 제스처 탐지 디바이스에 의해 탐지된 제스처들이 또한 특정 제어 디바이스와 연관될 수 있다. 예를 들어, 컴퓨팅 시스템(102)은 제스처가 특정 사용자에 의해 수행되고/수행되거나, 특정 위치에서 수행되었다라고 결정하고, 결정된 사용자 및/또는 위치에 기초하여 해당 제스처를 제어 디바이스와 연관시킬 수 있다.
이에 따라, 멀티 사용자 환경에서, 게임 플레이어(112)와 같은 제1 사용자는 제어 디바이스(104)와 제어 디바이스(109)를 통해 입력을 제공할 수 있는 반면에, 게임 플레이어(114)와 같은 제2 사용자는 제어 디바이스(108)를 통해 입력을 제공한다. 각각의 제어 디바이스를 각각의 사용자와 연관시킴으로써, 컴퓨팅 시스템(102)은 멀티플레이어 게임 경험을 제공할 수 있다. 예를 들어, 제어 디바이스(104) 및/또는 제어 디바이스(109)에 의해 제공된 사용자 입력은 제1 플레이어 표현물(130)에 적용될 수 있고, 제어 디바이스(108)에 의해 제공된 사용자 입력은 제2 플레이어 표현물(132)에 적용될 수 있다. 마찬가지로, 제1 플레이어 표현물과 연관된 오디오는 제어 디바이스(109)의 헤드폰(126)과 관련된 것일 수 있는 반면에, 제2 플레이어 표현물과 연관된 오디오는 디스플레이 디바이스(124) 및/또는 다른 적절한 오디오 디바이스의 스피커와 관련된 것일 수 있다.
도 2는 본 발명개시의 실시예에 따라 객체를 주체와 연관시키는 예시적인 방법(200)을 도시한다. 방법(200)은 도 1의 컴퓨팅 시스템(102)과 같은, 컴퓨팅 시스템에 의해 수행될 수 있다. 단계(202)에서, 방법(200)은 깊이 카메라로부터 하나 이상의 깊이 이미지들을 수신하는 단계를 포함한다. 예를 들어, 컴퓨터 시스템(102)은 도 1의 깊이 카메라(110)로부터 깊이 이미지들을 수신할 수 있다. 몇몇의 실시예들에서, 컴퓨팅 시스템(102)은 적외선 신호들을 탐지하기 위해 적외선 센서를 포함할 수 있다. 이러한 실시예들에서, 컴퓨팅 시스템은 단계(202)에서 하나 이상의 깊이 이미지들을 수신하는 것 대신에, 또는 이에 더하여, 적외선 신호로부터 하나 이상의 적외선 이미지들을 수신할 수 있다. 추가적인 또는 대안적인 실시예들에서, 컴퓨팅 시스템은 가시광(예컨대, RGB) 카메라, 히트 맵(heat map), 및/또는 다른 적절한 이미지 소스 단독으로부터 또는 적외선 센서와 결합된 형태로부터 2차원 이미지들을 수신할 수 있다.
단계(204)에서, 방법(200)은 깊이 이미지들에 의해 이미지화된 주체를 식별하는 단계를 포함한다. 몇몇의 시나리오들에서, 주체는 도 1의 게임 플레이어(112)와 같은, 인간 주체이다. 몇몇의 시나리오들에서, 주체는 도 1의 테이블(116) 및/또는 제어 디바이스들(104, 106, 108, 및/또는 109)과 같은, 무생물 객체일 수 있다. 상술한 바와 같이 컴퓨팅 시스템이 적외선 센서를 포함하는 실시예들의 경우, 컴퓨팅 시스템은 적외선 이미지들에 의해 이미지화된 주체를 식별할 수 있다. 예를 들어, 컴퓨팅 시스템은 객체, 비콘, 및/또는 주체의 위치를 결정하기 위해 적외선 이미지의 각각의 픽셀의 적외선 반사도를 분석할 수 있다. 몇몇의 실시예들에서, 컴퓨팅 시스템은 적외선 센서를 활용하여 2차원 위치를 추적하고 결정하며, 깊이 카메라를 활용하여 2차원 위치에 대한 깊이값을 계산할 수 있다. 컴퓨팅 시스템은 본 발명개시의 범위로부터 이탈하지 않고서 객체, 비콘, 및/또는 주체의 위치를 결정하기 위해 사실상 임의의 유형의 전자기 정보를 분석할 수 있다.
인간 주체의 경우, 식별정보는 특정 개인에 특유적일 수 있다. 달리 말하면, 특정인의 아이덴티티가 식별될 수 있다. 예를 들어, 도 1의 컴퓨팅 시스템(102)은 게임 플레이어(112)를 "존(John)"인 것으로서 식별할 수 있으며, 여기서 "존"은 컴퓨팅 시스템(102)의 저장 머신 및/또는 데이터베이스 상에 국부적으로 및/또는 원격적으로 저장된 사용자 프로파일에 의해 기술될 수 있다. 사용자 프로파일은 비제한적인 예시로서 가상 골격 데이터, 얼굴 인식 데이터, 오디오 파라미터 등을 비롯한, 게임 플레이어를 식별하기 위한 임의의 적절한 정보를 포함할 수 있다. 사용자 프로파일은 국부적으로 저장될 수 있고/있거나 인터넷과 같은 네트워크를 통해 액세싱될 수 있다. 다른 경우들에서, 식별정보는 특정 개인에 특유적이지 않을 수 있다. 예를 들어, 도 1의 컴퓨팅 시스템(102)은, 게임 플레이어(112)를 임의의 다른 게임 플레이어로부터 구별하지 않고서 게임 플레이어(112)를 식별하고 추적할 수 있다.
몇몇의 실시예들에서, 컴퓨팅 시스템은 게임 플레이어를 직접적으로 식별하지 않고서 게임 플레이어를 다른 게임 플레이어들로부터 구별할 수 있다. 예를 들어, 도 1의 컴퓨팅 시스템(102)은, 게임 플레이어를 특정 사용자 프로파일에 결부시키지 않고서, 아래에서 보다 자세하게 설명될 얼굴 인식이나, 또는 임의의 다른 식별 기술을 수행할 수 있다. 활용되는 입력 메커니즘에 상관없이, 게임 플레이어에 의해 제공되는 입력이 특정 표현물에 제공이 되도록, 식별정보는 게임 플레이어를 컴퓨팅 시스템의 애플리케이션 및/또는 다른 콘텍스트 내의 특정 표현물과 연관시키기 위해 활용될 수 있다. 예를 들어, 게임 플레이어는 게임 내에서의 특정 캐릭터와 연관된 입력을 제공하면서 얼굴 인식을 통해 식별될 수 있다. 나중에, 게임 플레이어가 상이한 제어기와 같은, 상이한 입력 디바이스를 활용할지라도, 게임 플레이어에 의해 제공되는 입력은 특정 캐릭터와 연관될 수 있다.
단계(206)에서 표시된 바와 같이, 인간 주체를 식별하는 단계는 택일적 사항으로서 인간 주체를 가상 골격으로 모델링하는 단계를 포함할 수 있다. 골격 모델링은 택일적 사항으로서, 관찰된 주체의 특정 아이덴티티를 찾는데 이용될 수 있다. 예를 들어, 골격 모델을 통해 탐지된 하나 이상의 특징들(예컨대, 뼈 길이, 뼈 자세, 등)이 룩업 테이블 또는 기타의 데이터베이스 내에서 사용자 아이덴티티를 찾는데 이용될 수 있다. 이러한 모델링은 도 3을 참조하여 보다 자세하게 설명된다.
도 3은 깊이 분석 시스템의 단순화된 골격 추적 파이프라인(300)을 그래픽으로 도시한다. 설명의 간략화를 위해, 도 1의 컴퓨팅 시스템(102)을 참조하여 골격 추적 파이프라인(300)을 설명한다. 하지만, 골격 추적 파이프라인(300)은 본 발명개시의 범위로부터 벗어나지 않고서 임의의 적절한 컴퓨팅 시스템 상에서 구현될 수 있다. 뿐만 아니라, 골격 추적 파이프라인(300)과는 다른 골격 추적 파이프라인들이 본 발명개시의 범위로부터 벗어나지 않고서 이용될 수 있다.
도면부호 302에서, 도 3은 도 1의 깊이 카메라(110)와 같은, 깊이 카메라의 관점으로부터 도 1의 게임 플레이어(112)를 도시한다. 깊이 카메라(110)와 같은, 깊이 카메라는 게임 플레이어(112)와 같은, 인간 주체를 관찰하도록 구성된 하나 이상의 센서들을 포함할 수 있다. 깊이 카메라는 또한 제어 디바이스(104)와 같은, 제어 디바이스로부터 방출된 비콘(304)을 관찰할 수 있다. 예를 들어, 비콘(304)은 적외선광 비콘 및/또는 가시광 비콘과 같은, 광학 비콘을 포함할 수 있다.
도면부호 306에서, 도 3은 깊이 카메라(110)와 같은, 깊이 카메라에 의해 수집된 관찰 데이터의 개략 표현물(308)을 도시한다. 수집된 관찰 데이터의 유형들은 깊이 카메라에 포함된 센서들의 유형과 개수에 따라 달라질 것이다.
깊이 카메라는 깊이 카메라의 각각의 픽셀마다, 깊이 카메라에 대한 관찰된 장면 내에서의 표면의 깊이를 결정할 수 있다. 도 3은 깊이 카메라(110)의 DPixel[v,h]에 대해 관찰된 3차원 x/y/z 좌표들(310)을 개략적으로 도시한다. 이와 유사한 3차원 x/y/z 좌표들이 깊이 카메라의 모든 픽셀에 대해 기록될 수 있다. 모든 픽셀들에 대한 3차원 x/y/z 좌표들은 종합하여 깊이 맵을 구성한다. 3차원 x/y/z 좌표들은 본 발명개시의 범위로부터 벗어나지 않고서 임의의 적절한 방식으로 결정될 수 있다.
가시광 카메라는, 가시광 카메라의 각각의 픽셀마다, 하나 이상의 광 채널들(예컨대, 적색, 녹색, 청색, 그레이 스케일 등)에 대한 관찰된 장면 내에서의 표면의 상대적인 광 세기를 결정할 수 있다. 도 3은 깊이 카메라(110)의 가시광 카메라의 V-LPixel[v,h]에 대해 관찰된 적색/녹색/청색 값들(312)을 개략적으로 도시한다. 이와 유사한 적색/녹색/청색 값들이 가시광 카메라의 모든 픽셀에 대해 기록될 수 있다. 모든 픽셀들에 대한 적색/녹색/청색 값들은 종합하여 디지털 칼라 이미지를 구성한다. 적색/녹색/청색 값들은 본 발명개시의 범위로부터 벗어나지 않고서 임의의 적절한 방식으로 결정될 수 있다.
깊이 카메라와 가시광 카메라는 동일한 해상도를 가질 수 있지만, 이것은 필수적인 것은 아니다. 카메라들이 동일한 해상도를 갖든 또는 상이한 해상도를 갖든, 가시광 카메라의 픽셀들은 깊이 카메라의 픽셀들에 등록될 수 있다. 이러한 방식으로, 가시광 카메라와 깊이 카메라로부터의 등록된 픽셀들(예컨대, V-LPixel[v,h] 및 DPixel[v,h])을 고려함으로써 관찰된 장면의 각각의 부분에 대해 칼라 및 깊이 정보 둘 다가 결정될 수 있다.
도면부호 316에서 예시된 바와 같이, 관찰 데이터가 깊이 카메라에 의해 이미지화된 주변 객체들로부터 비콘을 명확하게 구별시키도록 비콘(304)이 구성될 수 있다. 예를 들어, 비콘(304)은 제어 디바이스(104)에 의해 방출된 비콘 패턴에 따라 배열된 일련의 백색 또는 밝은 픽셀들로서 관찰 데이터에 의해 표현된 적외선광 비콘을 포함할 수 있다.
하나 이상의 마이크로폰들은 관찰된 인간 주체 및/또는 다른 소스들로부터 나온 지향성 및/또는 비지향성 사운드를 결정할 수 있다. 도 3은 제어 디바이스(109)의 마이크로폰(118)과 같은, 마이크로폰에 의해 기록된 오디오 데이터(314)를 개략적으로 도시한다. 이러한 오디오 데이터는 본 발명개시의 범위로부터 벗어나지 않고서 임의의 적절한 방식으로 결정될 수 있다. 광 비콘 대신에, 제어 디바이스가 사운드 비콘을 생성하는 경우, 사운드 소스 로컬화가 또한 제어 디바이스를 찾고/찾거나 위치확인하는데 이용될 수 있다.
수집된 데이터는 비제한적인 예시로서, 깊이 카메라에 의해 이미지화된 모든 픽셀에 대한 3차원 x/y/z 좌표, 가시광 카메라에 의해 이미지화된 모든 픽셀에 대한 적색/녹색/청색 값들, 및/또는 시간 분해 디지털 오디오 데이터를 포함하는 하나 이상의 매트릭스를 비롯한, 사실상 임의의 적절한 데이터 구조(들)의 형태를 취할 수 있다. 도 3은 단일 프레임을 도시하지만, 인간 주체는 연속적으로(예컨대, 초당 30프레임) 관찰되고 모델링될 수 있다는 것을 이해해야 한다. 따라서, 이러한 각각의 관찰된 프레임마다 데이터가 수집될 수 있다. 수집된 데이터는 하나 이상의 애플리케이션 프로그래밍 인터페이스(Application Programming Interface; API)를 통해 이용가능해질 수 있고/있거나 후술하는 바와 같이 추가적으로 분석될 수 있다.
깊이 카메라 및/또는 협력 컴퓨팅 시스템은 택일적 사항으로서, 깊이 맵을 분석하여, 관찰된 깊이 맵에서의 타겟화되지 않은 엘리먼트들로부터 추적될 인간 주체들 및/또는 다른 타겟들을 구별할 수 있다. 깊이 맵의 각각의 픽셀은 특정 타겟 또는 타겟화되지 않은 엘리먼트를 이미지화한 해당 픽셀을 식별하는 플레이어 인덱스(318)를 할당받을 수 있다. 예로서, 제1 플레이어에 대응하는 픽셀들은 1과 같은 플레이어 인덱스를 할당받을 수 있고, 제2 플레이어에 대응하는 픽셀들은 2와 같은 플레이어 인덱스를 할당받을 수 있으며, 타겟 플레이어에 대응하지 않는 픽셀들은 0과 같은 플레이어 인덱스를 할당받을 수 있다. 이러한 플레이어 인덱스들은 본 발명개시의 범위로부터 벗어나지 않고서 임의의 적절한 방식으로 결정되고, 할당되고, 저장될 수 있다.
깊이 카메라 및/또는 협력 컴퓨팅 시스템은 택일적 사항으로서, 이러한 각각의 픽셀이 이미지화할 것 같은 해당 주체의 몸체의 일부분을 결정하기 위해, 인간 주체의 깊이 맵의 픽셀들을 추가적으로 분석할 수 있다. 인간 주체의 몸체 중 어느 일부분을 특정 픽셀이 이미지화할 것 같은지를 평가하기 위해 다양한 여러가지 몸체 일부분 할당 기술들이 이용될 수 있다. 적절한 플레이어 인덱스를 갖는 깊이 맵의 각각의 픽셀은 몸체 일부분 인덱스(320)을 할당받을 수 있다. 몸체 일부분 인덱스는 개별적인 식별자, 신뢰값, 및/또는 해당 픽셀이 이미지화할 것 같은 몸체 일부분, 또는 일부분들을 표시하는 몸체 일부분 확률 분포를 포함할 수 있다. 몸체 일부분 인덱스들은 본 발명개시의 범위로부터 벗어나지 않고서 임의의 적절한 방식으로 결정되고, 할당되고, 저장될 수 있다.
하나의 비제한적인 예시로서, 각각의 픽셀에 몸체 일부분 인덱스 및/또는 몸체 일부분 확률 분포를 할당하기 위해 머신 학습(machine-learning)이 이용될 수 있다. 머신 학습 접근법은 사전에 트레이닝된 공지된 포즈들의 콜렉션으로부터 학습된 정보를 이용하여 인간 주체를 분석한다. 달리 말하면, 지도(supervised) 트레이닝 단계 동안, 다양한 여러 포즈들을 취하고 있는 다양한 여러 사람들이 관찰되고, 인간 트레이너들은 관찰된 데이터에서 상이한 머신 학습 분류자들로 라벨링된 지상 검증 주석(ground truth annotation)을 제공한다. 관찰된 데이터와 주석은 입력들(예컨대, 추적 디바이스로부터의 관찰 데이터)을 희망하는 출력들(예컨대, 관련 픽셀들에 대한 몸체 일부분 인덱스들)에 매핑하는 하나 이상의 머신 학습 알고리즘들을 생성하는데 이용된다.
도면부호 322에서, 도 3은 게임 플레이어(112)의 머신 판독가능한 표현물로서 역할을 하는 가상 골격(324)의 개략 표현물을 도시한다. 가상 골격(324)은 20개의 가상 관절들 - 머리, 어께 중심, 척추, 힙 중심, 우측 어께, 우측 팔꿈치, 우측 손목, 우측 손, 좌측 어께, 좌측 팔꿈치, 좌측 손목, 좌측 손, 우측 힙, 우측 무릎, 우측 발목, 우측 발, 좌측 힙, 좌측 무릎, 좌측 발목, 좌측 발을 포함한다. 이 20개의 관절 가상 골격은 비제한적인 예시로서 제공된 것이다. 본 발명개시에 따른 가상 골격들은 사실상 임의의 개수의 관절들을 가질 수 있다.
다양한 골격 관절은 인간 주체의 실제 관절, 인간 주체의 몸체 일부분들의 중심점, 인간 주체의 사지(extremities)의 말단부들, 및/또는 인간 주체에 대한 직접적 해부학적 연결이 없는 포인트들에 대응할 수 있다. 각각의 관절은 적어도 세 개의 자유도(예컨대, x, y, z 세계 공간)를 가질 수 있다. 이에 따라, 가상 골격의 각각의 관절은 삼차원 위치로 정의될 수 있다. 예를 들어, 좌측 어께 가상 관절(326)은 x좌표 위치(328), y좌표 위치(330), 및 z좌표 위치(332)로 정의된다. 관절들의 위치는 임의의 적절한 기점에 대해서 정의될 수 있다. 일례로서, 깊이 카메라가 기점으로서 역할을 할 수 있으며, 모든 관절 위치들은 깊이 카메라에 대해서 정의된다. 관절들은 본 발명개시의 사상으로부터 벗어나지 않고서 임의의 적절한 방식으로 삼차원 위치로 정의될 수 있다.
각각의 관절의 삼차원 위치를 결정하기 위해 다양한 기술들이 이용될 수 있다. 인간 주체에 가깝게 모델링하는 하나 이상의 골격(들)을 유도해내기 위해 골격 맞춤 기술들은 깊이 정보, 색상 정보, 몸체 일부분 정보, 및/또는 사전 트레이닝된 해부학적 및 운동 정보를 이용할 수 있다. 하나의 비제한적인 예시로서, 각각의 골격 관절의 삼차원 위치를 찾기 위해 상술한 몸체 일부분 인덱스들이 이용될 수 있다.
하나 이상의 가상 관절들을 더욱 심화적으로 정의하기 위해 관절 배향이 이용될 수 있다. 관절 위치들은 관절들 사이에 이어져 있는 가상 뼈들과 관절들의 위치를 기술할 수 있는 반면에, 관절 배향들은 이러한 가상 뼈들과 관절들의 배향을 이들 각각의 위치들에서 기술할 수 있다. 예로서, 주어진 위치에 위치한 손이 위를 향하고 있는지 아니면 아래를 향하고 있는지를 기술하기 위해 손목 관절의 배향이 이용될 수 있다.
관절 배향들은, 예컨대, 하나 이상의 정규화된 삼차원 배향 벡터(들)로 인코딩될 수 있다. 배향 벡터(들)은 추적 디바이스 또는 다른 기준(예컨대, 다른 관절)에 대한 관절의 배향을 제공할 수 있다. 또한, 배향 벡터(들)은 세계 공간 좌표 시스템 또는 다른 적절한 좌표 시스템(예컨대, 다른 관절 좌표 시스템) 측면에서 정의될 수 있다. 관절 배향들은 또한 다른 수단을 통해 인코딩될 수 있다. 비제한적인 예시들로서, 관절 배향들을 인코딩하기 위해 사원수(quaternion) 및/또는 오일러 각(Euler angle)이 이용될 수 있다.
도 3은 좌측 어께 가상 관절(326)이 직교정규 배향 벡터들(334, 336, 338)로 정의되는 비제한적인 예시를 도시한다. 다른 실시예들에서, 관절 배향을 정의하기 위해 단일 배향 백터가 이용될 수 있다. 배향 벡터(들)은 본 발명개시의 범위로부터 벗어나지 않고서 임의의 적절한 방식으로 계산될 수 있다.
관절 위치들, 배향들, 및/또는 기타의 정보가 임의의 적절한 데이터 구조(들)로 인코딩될 수 있다. 또한, 임의의 특정 관절과 연관된 위치, 배향, 및/또는 다른 파라미터들이 하나 이상의 API들을 통해 이용가능해질 수 있다.
도 3에서 살펴볼 수 있는 바와 같이, 가상 골격(324)은 택일적 사항으로서 복수의 가상 뼈들(예컨대, 좌측 팔뚝 뼈(340))을 포함할 수 있다. 다양한 골격 뼈들이 하나의 골격 관절로부터 다른 골격 관절로 확장할 수 있고, 이 골격 뼈들은 인간 주체의 실제 뼈들, 팔다리, 또는 뼈들 및/또는 팔다리의 일부분들에 대응할 수 있다. 여기서 논의된 관절 배향들은 이러한 뼈들에 적용될 수 있다. 예를 들어, 팔꿈치 배향은 팔뚝 배향을 정의하기 위해 이용될 수 있다.
각각의 골격 엘리먼트와 연관된 값들(예컨대, 관절들 및/또는 뼈들의 상대적 위치들)을 특정 인간 주체에 대한 공지된 가상 골격값들과 비교함으로써 인간 주체를 식별하는데에 가상 골격이 이용될 수 있다. 예를 들어, 게임 플레이어는 이미지화될 수 있고 해당 플레이어와 연관된 가상 골격은 룩업 테이블에 저장될 수 있다. 그 후, 게임 플레이어가 이미지화되면, 생성된 가상 골격은 저장된 가상 골격과 비교되어질 수 있다. 예를 들어, 컴퓨팅 시스템은 아빠, 엄마, 아들, 및 딸을 비롯한 가족의 각각의 멤버에 대한 사용자 프로파일을, 가상 골격 크기 내림순으로 포함할 수 있다. 특정 사용자를 식별하고 해당 사용자와 연관된 프로파일을 선택하기 위해, 사용자의 가상 골격의 크기는 각각의 사용자 프로파일과 연관된 가상 골격의 크기와 비교되어질 수 있다.
몇몇의 실시예들에서, 가상 골격은 도면부호(342)로서 표시된 비콘(304)과 같은, 비콘 및/또는 객체의 위치를 게임 플레이어 상의 위치와 비교하기 위해 이용될 수 있다. 예를 들어, 도면부호(342)로서 표시된 비콘(304)의 위치는 비콘 근처의 이미지화된 표면들에 기초하여 결정될 수 있다. 이에 따라, 제어기를 나타내도록 이미지화된 표면은 탐지된 비콘과 연관된 하나 이상의 좌표들을 결정하는데 이용될 수 있다. 비콘의 위치를 결정할 때, 제어 디바이스가 게임 플레이어(112)와 연관될 수 있는지 여부를 결정하기 위해 가상 골격(324)의 손 또는 다른 관절에 대한 비콘(304)의 근접성 또는 제어 디바이스(104)의 공지된 위치가 분석될 수 있다. 게임 플레이어와 제어 디바이스의 연관은 도 2를 참조하여 아래에서 더욱 설명한다.
몇몇의 실시예들에서, 주체에 대한 제어 디바이스 및/또는 다른 객체의 연관은 주체에 관한 제어 디바이스의 적절한 파라미터에 기초하여 수행될 수 있다. 예를 들어, 게임 플레이어는 상이한 제어 디바이스들을 도 1의 환경(100)과 같은, 환경의 상이한 위치에 배치시킬 수 있다. 그런 후 게임 플레이어는 사용자 입력과 연관되어질 특정 제어 디바이스를 표시하는 제스처 또는 이와 다른 방식을 취할 수 있다. 따라서, 다른 주체가 제어 디바이스에 보다 근접해 있다고 하더라도, 제어 디바이스는 해당 주체의 제스처에 기초하여 주체와 연관되어질 수 있다. 하지만, 가상 골격은 본 발명개시의 범위로부터 벗어나지 않고서 추가적인 및/또는 대안적인 목적들로 이용될 수 있다는 것을 이해할 것이다.
도 2로 다시 돌아가서, 단계(208)에서 표시된 바와 같이, 인간 주체를 식별하는 것은 택일적 사항으로서 얼굴 인식을 포함할 수 있다. 예를 들어, 얼굴 인식 알고리즘들은 가시광 카메라로부터의 이미지들, 칼라 이미지들, 미가공 적외선 이미지들, 및/또는 깊이 이미지들에 적용될 수 있다. 얼굴 인식은 택일적 사항으로서 관찰된 주체의 특정 아이덴티티를 찾는데 이용될 수 있다. 예를 들어, 얼굴 인식을 통해 탐지된 하나 이상의 특징들(예컨대, 안구 분리도(eye separation), 안구 안구 입 삼각지대(eye-eye-mouth triangle), 등)이 룩업 테이블 또는 기타의 데이터베이스 내에서 사용자 아이덴티티를 찾는데 이용될 수 있다. 필요한 컴퓨팅 전력을 감소시키기 위해, 얼굴 인식을 위해 분석되는 이미지들의 일부분들은 도 3의 가상 골격(324)과 같은, 가상 골격의 머리 관절 주변의 영역으로 제한될 수 있다.
추가적으로, 단계(210)에서 표시된 바와 같이, 인간 주체를 식별하는 것은 택일적 사항으로서 음성 인식을 포함할 수 있다. 예를 들어, 오디오 입력은 도 1의 마이크로폰(118)과 같은 마이크로폰으로부터 수신될 수 있고, 주파수, 진폭, 호흡 패턴 등과 같은 오디오 입력과 연관된 파라미터들은 사용자를 식별하기 위해 분석될 수 있고/있거나 사용자와 연관된 오디오 파라미터들과 비교되어지고 룩업 테이블 또는 다른 데이터베이스에 저장될 수 있다.
단계(212)에서 표시된 바와 같이, 본 방법은 택일적 사항으로서 비콘을 방출할 것을 객체에게 요청하는 메시지를 출력하는 단계를 포함할 수 있다. 예를 들어, 도 1의 컴퓨팅 시스템(102)은, 컴퓨팅 시스템이 환경(100) 내에서의 제어 디바이스의 각각의 위치를 해결할 수 있도록, 하나 이상의 RF 주파수들을 통해, 제어 디바이스들(104, 106, 및/또는 108) 중 하나 이상이 비콘을 방출할 것을 요청할 수 있다. 몇몇의 실시예들에서, 컴퓨팅 시스템은 객체가 특정 비콘을 방출할 것을 요청할 수 있다. 예를 들어, 컴퓨팅 시스템(102)은 각각의 객체로부터 상이한 비콘을 요청하는 메시지를 각각의 객체에게 개별적으로 출력할 수 있다. 컴퓨팅 시스템(102)은 또한 상이한 시간들에서 동일한 비콘을 방출하기 위한 타임 슬라이스들을 제어 디바이스들에게 할당하기 위한 하나 이상의 메시지들을 출력할 수 있다. 마찬가지로, 컴퓨팅 시스템(102)은 컴퓨팅 시스템으로 하여금 시스템 자신이 관찰하는 비콘을 탐지하고 이 비콘을, RF, 유선 케이블 등과 같은 다른 통신 매체를 통해 시스템 자신이 통신하는 객체와 연관시킬 수 있게 할 임의의 다른 적절한 메시지들의 시퀀스를 출력할 수 있다. 추가적인 또는 대안적인 실시예들에서, 컴퓨팅 시스템(102)은 비콘을 방출할 것을 객체에게 요청하는 일반 메시지(이 메시지는 특정 객체에 보내지지는 않음)를 출력하고/출력하거나 브로드캐스트할 수 있다.
단계(214)에서 표시된 바와 같이, 방법(200)은 깊이 이미지들 및/또는 적외선 이미지들 중 하나 이상의 이미지들 내에서 객체로부터 방출된 비콘을 인식하는 단계를 포함한다. 비콘은 임의의 적절한 방식으로 깊이 이미지들 및/또는 적외선 이미지들 내에서 인식될 수 있다. 예를 들어, 도 3에서 도시된 바와 같이, 제어 디바이스(104)로부터의 비콘은 도면부호(308)에서 개략적으로 나타난 바와 같은, 관찰 데이터 내에서, 깊이 카메라에 의해 이미지화된 주변 엘리먼트들과는 구별가능한 밝은 지점(bright spot)(도면부호 316으로서 나타남)으로서 표현될 수 있다. 하나 이상의 비콘 파라미터들은 복수의 상이한 객체들로부터 제1 객체를 식별하고 구별하기 위해 분석될 수 있다. 이러한 파라미터들은 비제한적인 예시로서, 비콘의 세기, 패턴, 및/또는 주파수를 비롯한, 임의의 적절한 비콘 파라미터를 실질적으로 포함할 수 있다. 이 파라미터들은 하나 이상의 객체들 및 이 객체들과 연관된 하나 이상의 파라미터들을 포함하는 룩업 테이블에서 제1 객체를 찾기 위해 이용될 수 있다. 예를 들어, 제1 객체는 제2 객체에 의해 방출된 비콘과는 상이한 하나 이상의 파라미터들을 갖는 비콘을 방출할 수 있다. 추가적으로 또는 대안적으로, 타임 및/또는 순서 파라미터가 객체들간에 상이할 수 있도록 객체들은 타임 슬라이스 및/또는 순차적 방식으로 비콘들을 방출할 수 있다.
단계(216)에서 표시된 바와 같이, 방법(200)은 객체의 위치를 삼차원에서 평가하는 단계를 포함한다. 예를 들어, 도 1의 컴퓨팅 시스템(102)은 깊이 카메라(110)로부터의 픽셀 정보를 활용하여, 환경(100) 내에서의 제어 디바이스의 x, y, z 좌표들을 결정할 수 있다. 객체의 위치는 깊이 카메라(110)의 위치, 깊이 카메라(110)에 의해 이미지화된 주체, 및/또는 임의의 다른 적절한 기준점에 대해 상대적인 것일 수 있다. 몇몇의 실시예들에서, 제어 디바이스의 위치를 평가하는 단계는 깊이 이미지들 및/또는 적외선 이미지들 내에서 제어 디바이스를 식별하는 단계를 포함할 수 있고/있거나, 시간의 흐름에 걸쳐 제어 디바이스의 위치를 추적하여 추적된 위치로부터 제어 제스처들을 식별하고 해석하는 단계를 포함할 수 있다. 몇몇의 실시예들에서, 컴퓨팅 시스템이 제어기 위치를 계산할 수 있도록 하기 위해 다중 비콘들이 제어 디바이스 상의 공지된 위치들에서 방출될 수 있다. 몇몇의 비콘들이 센서로부터 가로막힌 경우에 추가적인 비콘들이 또한 리던던시를 추가한다. 예를 들어, 게임 플레이어의 손가락이 제어 디바이스 상의 비콘 방출기의 위치 위에 부주의하게 올려놓여질 수 있다.
방법(200)은 단계(218)로서 표시된 바와 같이, 인간 주체에 대한 제어 디바이스의 근접성에 기초하여 객체를 인간 주체와 연관시키는 단계를 더 포함한다. 예를 들어, 도 1의 제어 디바이스(104)는 게임 플레이어에 대한 제어 디바이스의 근접성으로 인해 게임 플레이어(112)와 연관되어질 수 있다. 반대로, 제어 디바이스(106)는 제어 디바이스(106)와 게임 플레이어들(112, 114)간의 거리로 인해, 게임 플레이어(112) 또는 게임 플레이어(114) 중 어느 누구와도 연관되어지지 않을 수 있다. 대신에, 제어 디바이스(106)는 테이블(116)과 연관되어질 수 있다. 근접성은 임의의 적절한 문턱값에 기초하여 결정될 수 있다.
몇몇의 실시예들에서, 객체의 위치는 인간 주체의 특정 부분의 위치와 비교되어질 수 있다. 단계(220)에서 표시된 바와 같이, 객체를 인간 주체와 연관시키는 것은 택일적 사항으로서 손관절 위치의 분석을 포함할 수 있다. 간단히, 도 3으로 되돌아가면, 가상 골격(324)의 손관절과 (예컨대, 방법(200)의 단계(216)에서 결정된) 제어 디바이스(104)의 위치간의 거리는 거리 문턱값과 비교되어질 수 있다. 손관절이 단계(220)에서 분석되지만, 관절 및/또는 일부분과 객체간의 거리를 결정하기 위해 사실상 가상 골격의 임의의 적절한 관절 및/또는 일부분이 분석되어질 수 있다는 것을 이해할 것이다. 몇몇의 실시예들에서, 객체가 인간 주체의 손관절의 문턱 거리 내에 있는 경우 객체는 인간 주체와 연관되어질 수 있다. 하지만, 객체와 손관절간의 거리가 문턱 거리를 초과한 경우 객체는 인간 주체와 연관되어지지 않을 수 있다. 몇몇의 실시예들에서, 전체적인 골격 추적 없이, 수평축을 따른 머리/얼굴 및 제어기의 위치가 연관을 결정하는데에 이용될 수 있다.
제어 디바이스를 인간 주체와 연관시키는 것은 가상 골격의 제스처 입력과 제어 디바이스의 제어 입력을 동일한 소스에 귀속시키는 것을 포함할 수 있다. 예를 들어, 이러한 연관은 사용자가 단일 플레이어 표현물을 제어하기 위해 여러 디바이스들을 활용하여 여러 유형의 사용자 입력을 제공할 수 있도록 해줄 수 있다. 객체와 인간 주체와의 연관은 추가적으로 또는 대안적으로, 인간 주체의 설정 프로파일을 객체에 의해 제어된 애플리케이션에 적용하는 것을 포함할 수 있다. 몇몇의 실시예들에서, 객체를 인간 주체와 연관시키는 것은 객체에 의해 제어된 애플리케이션을 통해 사용자 특유적 콘텐츠를 제시하는 것을 포함할 수 있다. 예를 들어, 사용자 특유적 콘텐츠는 게임 콘텐츠, 미디어 프로그래밍, 광고, 및/또는 인간 주체를 위해 선택된 임의의 적절한 콘텐츠일 수 있다. 몇몇의 실시예들에서, 객체의 연관은 객체를 하나의 사용자로부터 다른 사용자로 패스할 때 변경될 수 있다. 예를 들어, 연관은 객체에 가장 가까이에 있고/있거나 입력을 객체에 제공중에 있는 사용자에 기초하여 동적으로 업데이트될 수 있다.
제어 디바이스 또는 다른 객체는 또한 컴퓨팅 시스템과의 결속(binding) 동작을 수행하기 위해 비콘을 방출시킬 수 있다. 예를 들어, 도 1의 컴퓨팅 시스템(102)은 결속 동작이 성공적으로 완료될 때 까지 제어 디바이스(106)로부터 입력을 받아들이지 않을 수 있다. 본 명세서에 이용된 용어 "비결속"은 특정 컴퓨팅 시스템에 결속되지 않은 객체 및/또는 어떠한 컴퓨팅 시스템에도 결속되지 않은 객체를 가리킬 수 있다.
도 4는 컴퓨팅 시스템에서의 결속 동작을 수행하기 위한 방법(400)을 나타낸다. 단계(402)에서, 방법(400)은 택일적 사항으로서, 객체를 탐지하는 단계를 포함한다. 객체는 임의의 적절한 방법으로 컴퓨팅 시스템에 의해 탐지될 수 있다. 예를 들어, 도 1의 컴퓨팅 시스템(102)은 깊이 카메라(110)로부터 수신된 하나 이상의 깊이 이미지들에서 제어 디바이스(106)와 같은, 객체를 탐지할 수 있다. 추가적으로 또는 대안적으로, 컴퓨팅 시스템은, 비제한적인 예시로서, 광학 비콘, 오디오 비콘, RF 비콘 등을 비롯하여, 객체에 의해 방출된 비콘에 기초하여 객체를 탐지할 수 있다. 몇몇의 실시예들에서, 후술하는 바와 같이, 객체는 단계(406)에서 탐지될 수 있다.
단계(404)에서 표시된 바와 같이, 방법(400)은 객체가 컴퓨팅 시스템에 결속되어 있는지를 결정하는 단계를 포함한다. 예를 들어, 컴퓨팅 시스템은 객체를 식별할 수 있고, 식별된 객체가 컴퓨팅 시스템에 결속되어 있는지 여부를 결정할 수 있다. 몇몇의 실시예들에서, 컴퓨팅 시스템은, 단계(406)에서 탐지된 비콘과 같은, 객체에 의해 방출된 비콘에 기초하여 객체가 컴퓨팅 시스템에 결속되어 있는지 여부를 결정할 수 있다. 예를 들어, 컴퓨팅 시스템에 결속되어 있지 않은 제어 디바이스들은 비콘을 방출할 수 있고/있거나 비결속 상태를 광고하기 위해 특정 비콘을 방출할 수 있다. 그러므로, 객체가 비콘을 방출하고/방출하거나 특정 비콘을 방출한 경우, 컴퓨팅 시스템은 객체가 컴퓨팅 시스템에 결속되어 있지 않다라고 결정할 수 있다. 반대로, 객체가 비콘을 방출하지 않은 경우, 객체는 컴퓨팅 시스템에 결속되어 있다라고 결정될 수 있다. 객체가 컴퓨팅 시스템에 결속되어 있는 경우, 어떠한 결속 동작도 필요하지 않으며, 이에 따라, 본 방법은 방법(400)의 시작으로 복귀한다.
객체가 비결속되어 있는 것으로 결정되면, 방법(400)은 단계(406)로 진행하며, 이 단계에서 본 방법은 객체로부터 방출된 광학 비콘을 탐지하는 단계를 포함한다. 예를 들어, 도 1의 제어 디바이스(106)와 같은 객체는, 제어 디바이스가 컴퓨팅 시스템(102)에 결속되어 있지 않는 경우 변경 상태들에 응답하여, 광학 비콘을 자동적으로 방출할 수 있다. 변경 상태들은 비활성 상태로부터 활성 상태로의 변경을 포함할 수 있다. 예를 들어, 비활성 상태로부터 활성 상태로의 변경은 파워 오프 상태로부터 파워 온 상태로의 변경을 포함할 수 있다. 몇몇의 실시예들에서, 비활성 상태로부터 활성 상태로의 변경은 사용자에 의한 제어 디바이스와의 상호작용의 탐지의 결과로서 추가적으로 또는 대안적으로 수행될 수 있다. 상호작용의 탐지는 제어 디바이스의 제어 엘리먼트의 액추에이션의 탐지, 제어 디바이스의 센서로부터의 신호의 탐지를 포함할 수 있고/있거나, 임의의 다른 적절한 방법으로 수행될 수 있다. 예를 들어, 제어 디바이스(106)는, 사용자가 제어 디바이스(106)를 테이블(116)로부터 제거할 때, 비활성 상태로부터 활성 상태로 변경할 수 있다.
컴퓨팅 시스템은 상술한 것들과 유사한 방식으로 광학 비콘을 탐지할 수 있다. 예를 들어, 컴퓨팅 시스템은 가시광 카메라 및/또는 깊이 카메라로부터 수신된 하나 이상의 이미지들 및/또는 깊이 이미지들에서 광학 비콘을 인식할 수 있다. 몇몇의 실시예들에서, 컴퓨팅 시스템은 객체로부터 방출되는 적외선광 비콘을 탐지하기 위해 적외선 센서를, 및/또는 가시광 비콘을 탐지하기 위해 가시광 센서를 포함할 수 있다. 예를 들어, 깊이 카메라는 가시광을 필터링하여 특정 범위의 파장들을 갖는 적외선광이 적외선 센서에 의해 탐지될 수 있도록 하기 위해 적외선 센서 앞에 적외선 통과 필터를 포함할 수 있다. 이에 따라, 객체는 비콘이 깊이 카메라에 의해 탐지될 수 있도록 적외선 통과 필터에 정합된 파장을 갖는 비콘을 방출할 수 있다.
단계(408)에서 표시된 바와 같이, 방법(400)은 객체를 컴퓨팅 시스템에 결속시키는 단계를 포함한다. 예를 들어, 컴퓨팅 시스템은 광학 비콘 및/또는 비결속되어 있는 객체의 탐지시 객체를 컴퓨팅 시스템에 결속시키기 위해 결속 모드에 자동적으로 진입할 수 있다.
단계(410)에서 표시된 바와 같이, 객체를 컴퓨팅 시스템에 결속시키는 단계는 택일적 사항으로서 제어 디바이스의 아이덴티티를 증명하기 위해 핸드쉐이크(handshake) 동작을 수행하는 단계를 포함할 수 있다. 핸드쉐이크 동작은 사실상 임의의 적절한 방식으로 수행될 수 있다. 몇몇의 실시예들에서, 핸드쉐이크 동작을 수행하는 단계는 택일적 사항으로서 단계(412)에서 표시된 바와 같이, 특정 비콘 패턴에 대한 요청을 송신하는 단계를 포함할 수 있다. 예를 들어, 도 1의 컴퓨팅 시스템(102)은 특정 비콘 패턴을 방출하기 위한 요청을 제어 디바이스(106)에게 송신할 수 있다. 이러한 요청은 비제한적인 예시로서 제어 디바이스로부터 방출될 광학 신호들의 회수, 지속기간, 및/또는 주파수를 비롯한, 임의의 적절한 패턴을 식별할 수 있다. 제어 디바이스는 또한 특정 비콘을 방출하도록 독립적으로 제어될 수 있는 복수의 광원들을 포함할 수 있다. 따라서, 이러한 요청은, 제1 광원이 제2 광원과는 상이한 패턴을 방출하도록 요청되어질 수 있도록, 복수의 광원들 중의 하나 이상의 광원들에 대한 특정 비콘 패턴을 식별할 수 있다. 깊이 이미지들의 분석을 통해서와 같이, 요청된 비콘 패턴 및/또는 패턴들이 컴퓨팅 시스템에 의해 탐지되면, 컴퓨팅 시스템은 제어 디바이스의 위치를 식별하고/식별하거나 결정할 수 있다.
핸드쉐이크 동작을 수행하는 단계는 추가적으로 또는 대안적으로, 단계(414)에서 표시된 바와 같이, 객체와 연관된 식별자에 대한 요청을 송신하는 단계를 포함할 수 있다. 예를 들어, 도 1의 컴퓨팅 시스템(102)은 제어 디바이스(106)와 연관된 식별자에 대한 요청을 제어 디바이스(106)에게 송신할 수 있다. 제어 디바이스(106)에 대한 식별자를 수신하면, 컴퓨팅 시스템(102)은 제어 디바이스를 인증할 수 있고, 제어 디바이스를 컴퓨팅 시스템에 결속시킬 수 있다. 몇몇의 실시예들에서, 핸드쉐이크 동작의 완료시 객체를 결속시키기 위해, 컴퓨팅 시스템(102)은 고유 식별자를 객체에 할당할 수 있다. 객체를 컴퓨팅 시스템에 결속시키는 것은 비제한적인 예시로서 객체에 대한 식별자를 저장 머신 및/또는 데이터베이스에 저장하는 것을 비롯하여, 임의의 적절한 방식으로 수행될 수 있다.
도 5는 결속 동작 동안 도 1의 컴퓨팅 시스템(102)과 두 개의 제어 디바이스들간의 예시적인 통신들(500)을 나타낸다. 이러한 통신들은 택일적 사항으로서, 단계(502)에서, 컴퓨팅 시스템(102)이 제어 디바이스 A에게 비콘을 방출하기 위한 요청을 송신하는 것으로 시작할 수 있다. 이에 응답하여 또는 독립적으로, 단계(504)에서, 제어 디바이스 A는 비콘을 방출할 수 있다. 예를 들어, 컴퓨팅 시스템(102)은, 제어 디바이스가 비결속 상태에 있을 때, 제어 디바이스에게 요청을 송신하는 것이 불가능할 수 있다. 이에 따라, 단계(504)에서, 제어 디바이스 A는 컴퓨팅 시스템으로부터 요청을 수신하지 않고서 비결속 상태에 있을 때 비콘을 방출할 수 있다. 단계(504)에서 방출된 비콘은 제어 디바이스의 결속 요청 및/또는 결속 모드와 연관된 특정 비콘 패턴일 수 있다. 마찬가지로, 단계(506)에서 제어 디바이스 B가 비콘을 방출할 수 있다. 제어 디바이스 A 또는 제어 디바이스 B 중 어느 하나로부터의 비콘의 수신에 응답하여, 컴퓨팅 시스템(102)은, 제어 디바이스 A 및/또는 제어 디바이스 B를 결속시키기 위해 결속 모드에 진입할 수 있다(단계 507).
몇몇의 실시예들에서, 결속은 컴퓨팅 시스템이 임의의 커맨드들 또는 요청들을 제어 디바이스에게 제공하기 전에 발생할 수 있다. 예를 들어, 컴퓨팅 시스템(102)은 단계(504)에서 방출된 비콘의 수신시에 제어 디바이스 A와 자동적으로 결속할 수 있다. 추가적인 또는 대안적인 실시예들에서, 단계(508)에서, 컴퓨팅 시스템(102)은 특정 비콘 패턴을 제어 디바이스 A로부터 요청함으로써 핸드쉐이크 동작을 개시할 수 있다. 예를 들어, 컴퓨팅 시스템(102)은 제어 디바이스 A가 통신할 수 있을 때 이용하는 RF 채널을 결정하거나 또는 협상할 수 있다. 몇몇의 실시예들에서, 단계(504) 및/또는 단계(506)에서 방출된 비콘은 단계(508)에서 요청된 비콘과는 상이한 유형의 비콘일 수 있다. 예를 들어, 단계(504)에서 방출된 비콘은 적외선 비콘일 수 있는 반면에, 단계(508)에서 요청된 비콘은 RF 신호일 수 있다. 몇몇의 실시예들에서, RF 채널은 제어 디바이스 A에 특유적일 수 있다. 그런 후, 컴퓨팅 시스템(102)은 RF 채널을 통해 특정 비콘 패턴에 대한 요청을 송신함으로써 제어 디바이스 A를 구체적으로 어드레싱할 수 있다. 이에 응답하여, 제어 디바이스 A는 특정 비콘 패턴을 방출한다(단계 510). 제어 디바이스 A에 의해 방출된 비콘 패턴이 요청된 특정 비콘 패턴과 동일하고/동일하거나 요청된 특정 비콘 패턴의 문턱값 내에 있다는 것을 확인하면, 컴퓨팅 시스템(102)은 제어 디바이스 A를 결속시키고/결속시키거나 이전에 실행된 결속 동작을 확인하거나 또는 마무리할 수 있다. 예를 들어, 단계(512)에서 표시된 바와 같이, 컴퓨팅 시스템(102)은, 제어 디바이스 A를 결속시키기 위해, 제1 고유 ID를 제어 디바이스 A에 할당하여 이 제1 고유 ID를 제어 디바이스 A에게 송신할 수 있고/있거나, 이 제1 고유 ID를 저장할 수 있다. 결속시, 제어 디바이스 A와 컴퓨팅 시스템(102)은, 특정 RF 채널을 활용하는 것과 같이, 임의의 적절한 방식으로 서로 자유롭게 통신할 수 있다. 달리 말하면, 결속 동작이 수행되면 컴퓨팅 시스템(102)은 제어 디바이스 A가 커맨드들을 발행할 수 있도록 할 수 있다.
단계(514)에서 표시된 바와 같이, 컴퓨팅 시스템(102)은 또한 제어 디바이스 B가 특정 비콘 패턴을 방출할 것을 요청할 수 있다. 몇몇의 실시예들에서, 특정 비콘 패턴은 단계(508)에서 요청된 특정 비콘 패턴과 동일할 수 있지만, 다른 실시예들에서, 특정 비콘 패턴은 단계(508)에서 요청된 특정 비콘 패턴과는 상이할 수 있다. 예를 들어, 특정 비콘 패턴이 동일하면, 컴퓨팅 시스템은 제어 디바이스 A로부터 수신한 패턴을 제어 디바이스 B로부터 수신한 패턴과 구별시키기 위해 패턴에 시간값을 연관시킬 수 있다. 반대로, 특정 비콘 패턴이 각각의 제어 디바이스마다 상이하면, 컴퓨팅 시스템은 동일한 시간에 수신한 두 개의 비콘들을 구별할 수 있다. 단계(514)에서 요청이 보내진 후, 단계(516)에서 제어 디바이스 B는 요청되지 않은 패턴을 갖는 비콘을 방출할 수 있다. 예를 들어, 단계(514)에서 보내진 요청은 제어 디바이스 B를 향해 의도된 것일 수 있지만, 제어 디바이스 B는 이 요청을 수신하지 않을 수 있다. 그러므로, 제어 디바이스 B는 단계(514)에서 요청된 패턴과 상이한 패턴 및/또는 이 패턴의 유사성 문턱값 밖에 있는 패턴을 갖는 비콘을 방출할 수 있다. 이에 응답하여, 컴퓨팅 시스템(102)은 제어 디바이스 B와 신뢰성 있는 통신이 구축되지 않을 수 있고, 이에 따라 제어 디바이스 B를 결속하지 않을 수 있다라고 결정할 수 있다. 몇몇의 실시예들에서, 컴퓨팅 시스템(102)은 특정 비콘 패턴에 대한 다른 요청을 송신함으로써 제어 디바이스 B와의 결속을 다시 시도할 수 있다. 추가적인 또는 대안적인 실시예들에서, 컴퓨팅 시스템(102)은 문턱값을 초과하는 개수의 비콘들을 제어 디바이스 B로부터 수신한 후 제어 디바이스 B와 자동적으로 결속할 수 있다. 몇몇의 실시예들에서, 컴퓨팅 시스템(102)이 제어 디바이스 또는 다른 객체에 의해 방출된 비콘을 탐지시 즉시 이러한 제어 디바이스 또는 다른 객체와 결속하도록, 비콘들의 문턱값 개수는 1일 수 있다.
몇몇의 실시예들에서, 여기서 설명된 방법들 및 프로세스들은 하나 이상의 컴퓨팅 디바이스들의 컴퓨팅 시스템에 결부될 수 있다. 구체적으로, 이러한 방법들 및 프로세스들은 컴퓨터 응용 프로그램 또는 서비스, 응용 프로그램 인터페이스(application-programming interface; API), 라이브러리, 및/또는 다른 컴퓨터 프로그램 제품으로서 구현될 수 있다.
도 6은 상술된 방법들 및 프로세스들 중 하나 이상을 실행할 수 있는 컴퓨팅 시스템(600)의 비제한적인 실시예를 개략적으로 도시한다. 컴퓨팅 시스템(600)은 단순화된 형태로 도시된다. 컴퓨팅 시스템(600)은 하나 이상의 게이밍 콘솔, 개인 컴퓨터, 서버 컴퓨터, 태블릿 컴퓨터, 홈 엔터테인먼트 컴퓨터, 네트워크 컴퓨팅 디바이스, 모바일 컴퓨팅 디바이스, 모바일 통신 디바이스(예컨대, 스마트 폰), 및/또는 다른 컴퓨팅 디바이스의 형태를 취할 수 있다. 예를 들어, 컴퓨팅 시스템(600)은 도 1의 컴퓨팅 시스템(102)을 포함할 수 있다.
컴퓨팅 시스템(600)은 논리 머신(602) 및 저장 머신(604)을 포함한다. 컴퓨팅 시스템(600)은 택일적 사항으로서, 디스플레이 서브시스템(606), 입력 서브시스템(608), 통신 서브시스템(610), 및/또는 도 6에서는 미도시된 다른 컴포넌트들을 포함할 수 있다.
논리 머신(602)은 명령어들을 실행하도록 구성된 하나 이상의 물리적 디바이스들을 포함한다. 예를 들어, 논리 머신은 하나 이상의 애플리케이션, 서비스, 프로그램, 루틴, 라이브러리, 객체, 컴포넌트, 데이터 구조, 또는 다른 논리 구축물의 일부인 명령어들을 실행하도록 구성될 수 있다. 이러한 명령어들은 태스크를 수행하거나, 데이터 유형을 구현하거나, 하나 이상의 컴포넌트들의 상태를 변환시키거나, 기술적 효과를 아키빙하거나, 또는 이와 다르게 희망하는 결과에 도달하도록 구현될 수 있다.
논리 머신은 소프트웨어 명령어들을 실행하도록 구성된 하나 이상의 프로세서들을 포함할 수 있다. 추가적으로 또는 대안적으로, 논리 머신은 하드웨어 또는 펌웨어 명령어들을 실행하도록 구성된 하나 이상의 하드웨어 또는 펌웨어 논리 머신들을 포함할 수 있다. 논리 머신의 프로세서들은 단일 코어 또는 멀티 코어일 수 있고, 이들 상에서 실행되는 명령어들은 순차적 프로세싱, 병렬 프로세싱, 및/또는 분배형 프로세싱을 위해 구성될 수 있다. 논리 머신의 개별적인 컴포넌트들은 택일적 사항으로서, 통합 프로세싱을 위해 원격적으로 위치하고/위치하거나 구성될 수 있는, 두 개 이상의 별개의 디바이스들간에 분배될 수 있다. 논리 머신의 양태들은 클라우드 컴퓨팅 구성으로 구성된, 원격적으로 액세스가능한 네트워크화된 컴퓨팅 디바이스들에 의해 가상화되고 실행될 수 있다.
저장 머신(604)은 여기서 설명된 방법들 및 프로세스들을 구현하기 위해 논리 머신에 의해 실행가능한 명령어들을 홀딩하도록 구성된 하나 이상의 물리적 디바이스들을 포함한다. 예를 들어, 논리 머신(602)은 깊이 카메라(110)의 인터페이스와 같은 깊이 카메라 인터페이스, 및 저장 머신(604)과 동작가능하도록 통신할 수 있다. 이러한 방법들 및 프로세스들이 구현될 때, 저장 머신(604)의 상태는 예컨대 상이한 데이터를 홀딩하도록 변환될 수 있다.
저장 머신(604)은 착탈가능한 디바이스 및/또는 내장형 디바이스를 포함할 수 있다. 저장 머신(604)은 여러가지 중에서도, 광학 메모리(예컨대, CD, DVD, HD-DVD, 블루레이 디스크 등), 반도체 메모리(예컨대, RAM, EPROM, EEPROM 등), 및/또는 자기 메모리(예컨대, 하드 디스크 드라이브, 플로피 디스크 드라이브, 테잎 드라이브, MRAM 등)을 포함할 수 있다. 저장 머신(604)은 휘발성, 비휘발성, 동적, 정적, 판독/기록, 판독 전용, 랜덤 액세스, 순차적 액세스, 위치 어드레스가능, 파일 어드레스가능, 및/또는 콘텐츠 어드레스가능 디바이스들을 포함할 수 있다.
저장 머신(604)은 하나 이상의 물리적 디바이스들을 포함하는 것을 이해할 것이다. 하지만, 여기서 설명된 명령어들의 양태들은 대안적으로, 한정된 지속기간 동안 물리적 디바이스에 의해 홀딩되지 않는 통신 매체(예컨대, 전자기 신호, 광학 신호 등)에 의해 전파될 수 있다.
논리 머신(602)과 저장 머신(604)의 양태들은 하나 이상의 하드웨어 논리 컴포넌트들 내로 함께 통합될 수 있다. 이러한 하드웨어 논리 컴포넌트들은 예컨대, FPGA(field-programmable gate array), PASIC/ASIC(program application specific integrated circuit and application specific integrated circuit), PSSP/ASSP(program specific standard product and application specific standard product), SOC(system-on-a-chip), 및 CPLD(complex programmable logic device)를 포함할 수 있다.
디스플레이 서브시스템(606)이 포함되는 경우, 디스플레이 서브시스템(606)은 저장 머신(604)에 의해 홀딩된 데이터의 시각적 표현을 제시하기 위해 이용될 수 있다. 이러한 시각적 표현은 그래픽 사용자 인터페이스(graphical user interface; GUI)의 형태를 취할 수 있다. 여기서 설명된 방법들 및 프로세스들은 저장 머신에 의해 홀딩된 데이터를 변경시키고, 이에 따라 저장 머신의 상태를 변환시키므로, 디스플레이 서브시스템(606)의 상태도 이와 마찬가지로 기저 데이터에서의 변경들을 시각적으로 나타내도록 변환될 수 있다. 디스플레이 서브시스템(606)은 임의의 유형의 기술을 사실상 활용하는 하나 이상의 디스플레이 디바이스들을 포함할 수 있다. 이러한 디스플레이 디바이스들은 논리 머신(602) 및/또는 저장 머신(604)과 공유형 인클로저로 결합될 수 있거나, 또는 이러한 디스플레이 디바이스들은 주변 디스플레이 디바이스들일 수 있다. 예를 들어, 디스플레이 서브시스템(606)은 도 1의 디스플레이 디바이스(124)를 포함할 수 있다.
입력 서브시스템(608)이 포함되는 경우, 입력 서브시스템(608)은 키보드, 마우스, 터치 스크린, 마이크로폰, 또는 게임 제어기와 같은 하나 이상의 사용자 입력 디바이스들을 포함하거나 또는 이들과 인터페이싱할 수 있다. 예를 들어, 입력 서브시스템은 도 1의 제어 디바이스들(104, 106, 108, 및/또는 109)을 포함하거나 또는 이들과 인터페이싱할 수 있다. 몇몇의 실시예들에서, 입력 서브시스템은 선택형 자연 사용자 입력(natural user input; NUI) 컴포넌트들을 포함하거나 또는 이들과 인터페이싱할 수 있다. 이러한 컴포넌트들은 통합되거나 또는 주변장치일 수 있고, 입력 동작들의 변형 및/또는 프로세싱은 온 보드 또는 오프 보드로 처리될 수 있다. 예시적인 NUI 컴포넌트들은 구두 및/또는 음성 인식을 위한 마이크로폰; 머신 비젼 및/또는 제스처 인식을 위한 적외선, 색상, 입체, 및/또는 깊이 카메라; 모션 탐지 및/또는 의도 인식을 위한 머리 추적기, 안구 추적기, 가속도계, 및/또는 자이로스코프뿐만이 아니라, 두뇌 활동에 액세스하기 위한 전기장 감지 컴포넌트를 포함할 수 있다.
통신 서브시스템(610)이 포함되는 경우, 통신 서브시스템(610)은 컴퓨팅 시스템(600)을 하나 이상의 다른 컴퓨팅 디바이스들과 통신가능하게 결합시키도록 구성될 수 있다. 통신 서브시스템(610)은 하나 이상의 상이한 통신 프로토콜들과 호환가능한 유선 및/또는 무선 통신 디바이스들을 포함할 수 있다. 비제한적인 예시들로서, 통신 서브시스템은 무선 전화기 네트워크, 또는 유선 또는 무선 근거리 네트워크 또는 광대역 네트워크를 통한 통신을 위해 구성될 수 있다. 몇몇의 실시예들에서, 통신 서브시스템은 컴퓨팅 시스템(600)으로 하여금 인터넷과 같은 네트워크를 통해 다른 디바이스들과 메시지들을 주고받을 수 있게 할 수 있다.
여기서 설명된 구성들 및/또는 접근법들은 성질상 예시적인 것이며, 이러한 특정한 실시예들 또는 예시들은 수많은 변형들이 가능하기 때문에 한정적인 의미로 간주되어서는 안된다는 점을 이해할 것이다. 여기서 설명된 특정한 루틴들 또는 방법들은 임의의 개수의 프로세싱 전략들 중의 하나 이상을 나타낼 수 있다. 따라서, 예시되고/예시되거나 설명된 다양한 동작들은 예시되고/예시되거나 설명된 시퀀스로, 또는 다른 시퀀스로, 병렬로 수행될 수 있거나 또는 생략될 수 있다. 마찬가지로, 상술한 프로세스들의 순서는 변경될 수 있다.
본 발명개시의 발명내용은 여기서 개시된 다양한 프로세스들, 시스템들 및 구성들과, 다른 특징들, 기능들, 동작들, 및/또는 특성들의 모든 신규하고 비자명한 조합들 및 서브조합들뿐만이 아니라, 이들의 임의의 그리고 모든 등가물들을 포함한다.

Claims (19)

  1. 방법에 있어서,
    깊이 카메라(depth camera)로부터 하나 이상의 깊이 이미지 - 상기 깊이 이미지는 상기 깊이 이미지 각각의 픽셀에 의해 이미지화된 표면의 깊이를 표시함 - 를 수신하는 단계;
    손 관절과 머리 관절을 포함한 가상 골격으로 인간 주체(human subject)를 모델링하는 단계;
    상기 가상 골격에 의해 모델링된 상기 인간 주체의 신원(identity)을 결정하기 위해 상기 가상 골격의 상기 머리 관절을 둘러싼 영역으로 제한된 얼굴 인식을 수행하는 단계;
    상기 하나 이상의 깊이 이미지 내에서 제어 디바이스로부터 방출된 비콘(beacon)을 인식하는 단계;
    상기 방출된 비콘에 가장 가까이 있는 상기 손 관절을 삼차원으로 찾는 단계; 및
    상기 방출된 비콘에 가장 가까이 있는 상기 손 관절을 포함하는 상기 가상 골격에 의해 모델링된 상기 인간 주체의 신원을, 상기 비콘을 방출한 상기 제어 디바이스와 연관시키는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 방출된 비콘에 가장 가까이 있는 상기 손 관절을 찾는 단계는 상기 깊이 이미지 내에서 상기 제어 디바이스를 식별하는 단계를 포함한 것인 방법.
  3. 제1항에 있어서,
    상기 깊이 이미지는 TOF(time-of-flight) 깊이 카메라로부터 수신되고,
    상기 인간 주체에 대한 상기 제어 디바이스의 근접성에 기초하여 상기 제어 디바이스를 상기 인간 주체와 연관시키는 것은, 상기 인간 주체가 상기 제어 디바이스로부터 임계 거리 내에 있는 경우 상기 제어 디바이스를 상기 인간 주체와 연관시키며, 상기 인간 주체가 상기 제어 디바이스로부터 상기 임계 거리 밖에 있는 경우 상기 제어 디바이스를 상기 인간 주체와 연관시키지 않는 것을 포함한 것인 방법.
  4. 제1항에 있어서,
    상기 얼굴 인식을 수행하는 단계는 가시광 카메라에 의해 캡처된 이미지의 영역에 대해 얼굴 인식을 수행하는 단계를 포함하며, 상기 영역은 상기 머리 관절의 위치에 대응한 것인 방법.
  5. 제1항에 있어서,
    상기 제어 디바이스를 상기 인간 주체와 연관시키는 것은 상기 가상 골격의 제스처 입력과 상기 제어 디바이스의 제어 입력을 동일한 소스(source)에 귀속(attribute)시키는 것을 포함한 것인 방법.
  6. 제5항에 있어서,
    상기 제어 디바이스의 위치가 상기 가상 골격의 상기 손 관절로부터 임계 거리 내에 있는 경우, 상기 제어 디바이스는 상기 인간 주체와 연관되는 것인 방법.
  7. 제1항에 있어서,
    상기 비콘을 방출할 것을 상기 제어 디바이스에게 요청하는 메시지를 상기 제어 디바이스에게 출력하는 단계
    를 더 포함하는 방법.
  8. 제1항에 있어서,
    상기 비콘은 적외선광 신호인 것인 방법.
  9. 제1항에 있어서,
    상기 제어 디바이스는 게임 제어기(game controller)를 포함하고, 상기 인간 주체는 제1 인간 주체이고, 상기 방법은,
    제2 인간 주체의 위치를 평가하는 단계,
    상기 제어 디바이스에 대한 상기 제1 인간 주체의 근접성에 대해, 상기 제어 디바이스에 대한 상기 제2 인간 주체의 근접성을 비교하는 단계, 및
    상기 제어 디바이스에 대한 상기 제2 인간 주체의 상대적 근접성에 기초하여 상기 제어 디바이스를 상기 제2 인간 주체와 연관시키는 단계
    를 더 포함하는 방법.
  10. 제1항에 있어서,
    상기 제어 디바이스는 오디오 헤드폰을 포함한 것인 방법.
  11. 제10항에 있어서,
    상기 오디오 헤드폰에 사운드를 제공하는 애플리케이션의 오디오 출력을 상기 오디오 헤드폰의 위치에 기초하여 조정하는 단계
    를 더 포함하는 방법.
  12. 제1항에 있어서,
    상기 제어 디바이스를 상기 인간 주체와 연관시키는 단계는 상기 인간 주체의 설정 프로파일을 상기 제어 디바이스에 의해 제어되는 애플리케이션에 적용하는 단계를 포함한 것인 방법.
  13. 제1항에 있어서,
    상기 제어 디바이스는 원격 제어기(remote control)를 포함한 것인 방법.
  14. 제1항에 있어서,
    상기 제어 디바이스를 상기 인간 주체와 연관시키는 것은, 상기 제어 디바이스에 의해 제어되는 애플리케이션을 통해 사용자 특유적 콘텐츠를 제시(present)하는 단계를 포함하며, 상기 사용자 특유적 콘텐츠는 상기 인간 주체를 위해 선택된 것인 방법.
  15. 제1항에 있어서,
    시간의 흐름에 걸쳐 상기 제어 디바이스의 위치를 추적하고, 상기 추적된 위치로부터 제어 제스처를 해석하는 단계
    를 더 포함하는 방법.
  16. 방법에 있어서,
    제1 객체로부터 출력된 비콘을 인식하는 단계;
    상기 비콘에 가장 가까이 있는 손 관절을 찾는 단계;
    상기 손 관절과 머리 관절을 포함한 가상 골격으로 제1 주체를 모델링하는 단계 - 상기 손 관절과 상기 머리 관절은 서로 연결되어 있음 -;
    상기 가상 골격에 의해 모델링된 상기 제1 주체의 신원을 결정하기 위해 상기 가상 골격의 상기 머리 관절을 둘러싼 영역으로 제한된 얼굴 인식을 수행하는 단계; 및
    상기 비콘에 가장 가까이 있는 상기 손 관절을 포함하는 상기 가상 골격에 의해 모델링된 상기 제1 주체의 신원을, 상기 비콘을 출력한 상기 제1 객체와 연관시키는 단계
    를 포함하는 방법.
  17. 제16항에 있어서,
    복수의 상이한 객체들 중에서 상기 제1 객체를 식별하기 위해, 상기 비콘의 파라미터를 분석하는 단계
    를 더 포함하는 방법.
  18. 제16항에 있어서,
    제2 객체로부터의 비콘을 인식하는 단계;
    상기 제2 객체의 위치를 삼차원으로 평가하는 단계; 및
    제2 주체에 대한 상기 제2 객체의 근접성에 기초하여 상기 제2 객체를 상기 제2 주체와 연관시키는 단계
    를 더 포함하는 방법.
  19. 컴퓨터에 있어서,
    깊이 카메라로부터 깊이 이미지들을 수신하기 위한 깊이 카메라 인터페이스 - 상기 깊이 이미지들은 상기 깊이 이미지들의 각각의 픽셀에 의해 이미지화된 표면의 깊이를 표시함 -;
    상기 깊이 카메라 인터페이스와 동작가능하도록 통신하는 논리 머신; 및
    상기 논리 머신과 동작가능하도록 통신하며, 상기 논리 머신에 의해 실행가능한 명령어들을 저장한 저장 머신
    을 포함하고,
    상기 명령어들은,
    상기 깊이 카메라로부터 하나 이상의 깊이 이미지를 수신하고;
    손 관절과 머리 관절을 포함한 가상 골격으로 인간 주체를 모델링하고;
    상기 가상 골격에 의해 모델링된 상기 인간 주체의 신원을 결정하기 위해 상기 가상 골격의 상기 머리 관절을 둘러싼 영역으로 제한된 얼굴 인식을 수행하고;
    비콘을 방출할 것을 제어 디바이스에게 요청하는 메시지를 상기 제어 디바이스에게 출력하고;
    상기 하나 이상의 깊이 이미지 내에서 상기 제어 디바이스로부터 방출된 비콘을 인식하고;
    상기 방출된 비콘에 가장 가까이 있는 상기 손 관절을 삼차원으로 찾고;
    상기 방출된 비콘에 가장 가까이 있는 상기 손 관절을 포함하는 상기 가상 골격에 의해 모델링된 상기 인간 주체의 신원을, 상기 비콘을 방출한 상기 제어 디바이스와 연관시키도록 구성된 것인 컴퓨터.
KR1020157013455A 2012-11-16 2013-11-15 주체와 객체의 연관 KR102162373B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/679,931 2012-11-16
US13/679,931 US9571816B2 (en) 2012-11-16 2012-11-16 Associating an object with a subject
PCT/US2013/070378 WO2014078704A1 (en) 2012-11-16 2013-11-15 Associating an object with a subject

Publications (2)

Publication Number Publication Date
KR20150086278A KR20150086278A (ko) 2015-07-27
KR102162373B1 true KR102162373B1 (ko) 2020-10-06

Family

ID=49725352

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157013455A KR102162373B1 (ko) 2012-11-16 2013-11-15 주체와 객체의 연관

Country Status (6)

Country Link
US (1) US9571816B2 (ko)
EP (1) EP2920672B1 (ko)
JP (1) JP2015536507A (ko)
KR (1) KR102162373B1 (ko)
CN (1) CN104838338B (ko)
WO (1) WO2014078704A1 (ko)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9619036B2 (en) 2012-05-11 2017-04-11 Comcast Cable Communications, Llc System and methods for controlling a user experience
US9754154B2 (en) 2013-02-15 2017-09-05 Microsoft Technology Licensing, Llc Identification using depth-based head-detection data
CN103735268B (zh) * 2013-09-29 2015-11-25 沈阳东软医疗系统有限公司 一种体位检测方法及系统
US9355236B1 (en) * 2014-04-03 2016-05-31 Fuji Xerox Co., Ltd. System and method for biometric user authentication using 3D in-air hand gestures
CN104616284B (zh) * 2014-12-09 2017-08-25 中国科学院上海技术物理研究所 彩色深度相机的彩色图像到深度图像的像素级对准方法
US9804696B2 (en) * 2015-01-02 2017-10-31 Microsoft Technology Licensing, Llc User-input control device toggled motion tracking
US20170206054A1 (en) * 2016-01-14 2017-07-20 Performance Designed Products Llc Gaming peripheral with built-in audio support
CN110753851A (zh) * 2017-06-17 2020-02-04 触觉实验室股份有限公司 使用传感器对对象的六自由度跟踪
US10593086B2 (en) * 2017-10-13 2020-03-17 Schneider Electric Systems Usa, Inc. Augmented reality light beacon
US11113887B2 (en) * 2018-01-08 2021-09-07 Verizon Patent And Licensing Inc Generating three-dimensional content from two-dimensional images
WO2020107020A1 (en) 2018-11-23 2020-05-28 Volvo Car Corporation Lidar-based multi-person pose estimation
US11600072B2 (en) * 2018-12-12 2023-03-07 Motorola Solutions, Inc. Object left behind detection
JP7198661B2 (ja) * 2018-12-27 2023-01-04 日本放送協会 オブジェクト追跡装置及びそのプログラム
US11308639B2 (en) * 2019-03-12 2022-04-19 Volvo Car Corporation Tool and method for annotating a human pose in 3D point cloud data
KR102468685B1 (ko) * 2020-04-24 2022-11-21 (주)오픈웍스 가상현실 기반의 작업현장 안전관리장치 및 그 장치의 구동방법
US11403936B2 (en) 2020-06-12 2022-08-02 Smith Micro Software, Inc. Hygienic device interaction in retail environments

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011505618A (ja) 2007-11-21 2011-02-24 ジェスチャー テック,インコーポレイテッド デバイスアクセス制御
WO2012148866A2 (en) * 2011-04-28 2012-11-01 Microsoft Corporation Manual and camera-based avatar control

Family Cites Families (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6142876A (en) 1997-08-22 2000-11-07 Cumbers; Blake Player tracking and identification system
JP2000244886A (ja) * 1999-01-20 2000-09-08 Canon Inc コンピュータ会議システム、コンピュータ処理装置、コンピュータ会議を行う方法、コンピュータ処理装置における処理方法、ビデオ会議システム、ビデオ会議を行う方法、ヘッドホン
US7445550B2 (en) 2000-02-22 2008-11-04 Creative Kingdoms, Llc Magical wand and interactive play experience
US6761637B2 (en) 2000-02-22 2004-07-13 Creative Kingdoms, Llc Method of game play using RFID tracking device
US7147558B2 (en) 2000-03-22 2006-12-12 Wms Gaming Inc. System and method for dispensing gaming machine credits in multiple different media of monetary exchange
US7329013B2 (en) 2002-06-06 2008-02-12 Donnelly Corporation Interior rearview mirror system with compass
US7760248B2 (en) * 2002-07-27 2010-07-20 Sony Computer Entertainment Inc. Selective sound source listening in conjunction with computer interactive processing
WO2004107266A1 (en) * 2003-05-29 2004-12-09 Honda Motor Co., Ltd. Visual tracking using depth data
US9573056B2 (en) 2005-10-26 2017-02-21 Sony Interactive Entertainment Inc. Expandable control device via hardware attachment
US8323106B2 (en) 2008-05-30 2012-12-04 Sony Computer Entertainment America Llc Determination of controller three-dimensional location using image analysis and ultrasonic communication
US8287373B2 (en) 2008-12-05 2012-10-16 Sony Computer Entertainment Inc. Control device for communicating visual information
AU2003263442A1 (en) 2003-09-19 2005-04-11 Nokia Corporation Method and device for supporting wireless multi-player gaming with a multi-player game hub
JP4179162B2 (ja) * 2003-12-26 2008-11-12 株式会社セガ 情報処理装置、ゲーム装置、画像生成方法、ゲーム画像生成方法
GB2410359A (en) 2004-01-23 2005-07-27 Sony Uk Ltd Display
US7729515B2 (en) 2006-03-08 2010-06-01 Electronic Scripting Products, Inc. Optical navigation apparatus using fixed beacons and a centroid sensing device
US20050221895A1 (en) 2004-04-02 2005-10-06 Microsoft Corporation Binding of wireless game controller to host
US20060001657A1 (en) 2004-07-02 2006-01-05 Logitech Europe S.A. Scrolling device
TWM266959U (en) 2004-10-12 2005-06-11 Alfadata Comp Corp Gleaming game/computer program control devices
US8179366B2 (en) 2004-12-06 2012-05-15 Naturalpoint, Inc. Systems and methods for using a movable object to control a computer
TW200625143A (en) 2005-01-04 2006-07-16 Pixart Imaging Inc Personal computer's interactive input device and game-peripheral equipment
US9289678B2 (en) 2005-01-12 2016-03-22 Microsoft Technology Licensing, Llc System for associating a wireless device to a console device
KR100948095B1 (ko) 2005-02-24 2010-03-16 노키아 코포레이션 컴퓨팅 단말용 동작 입력 장치 및 그 작동방법
US7609249B2 (en) 2005-04-21 2009-10-27 Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. Position determination utilizing a cordless device
KR20080028935A (ko) 2005-06-16 2008-04-02 신세다이 가부시키 가이샤 입력장치, 유사체험방법 및 엔터테인먼트 시스템
JP4890800B2 (ja) 2005-06-29 2012-03-07 スリーエム イノベイティブ プロパティズ カンパニー 透明波長選択性再帰反射体
US8147332B2 (en) * 2005-10-21 2012-04-03 Broadcom Corporation Method of indicating the ordinal number of a player in a wireless gaming system
US20070111796A1 (en) 2005-11-16 2007-05-17 Microsoft Corporation Association of peripherals communicatively attached to a console device
US8669939B2 (en) 2006-02-08 2014-03-11 Oblong Industries, Inc. Spatial, multi-modal control device for use with spatial operating system
JP5089060B2 (ja) * 2006-03-14 2012-12-05 株式会社ソニー・コンピュータエンタテインメント エンタテインメントシステムおよびゲームコントローラ
US7976387B2 (en) 2006-04-11 2011-07-12 Avago Technologies General Ip (Singapore) Pte. Ltd. Free-standing input device
US8626472B2 (en) * 2006-07-21 2014-01-07 James C. Solinsky System and method for measuring balance and track motion in mammals
US20080113618A1 (en) 2006-11-09 2008-05-15 Sony Ericsson Mobile Communications Ab Pairing system and method for mobile devices
JP4886575B2 (ja) * 2007-04-05 2012-02-29 株式会社ソニー・コンピュータエンタテインメント 姿勢検出装置、姿勢検出方法、プログラム及び情報記憶媒体
WO2008124820A1 (en) * 2007-04-10 2008-10-16 Reactrix Systems, Inc. Display using a three dimensional vision system
US8100769B2 (en) 2007-05-09 2012-01-24 Nintendo Co., Ltd. System and method for using accelerometer outputs to control an object rotating on a display
US9317110B2 (en) * 2007-05-29 2016-04-19 Cfph, Llc Game with hand motion control
US20080311990A1 (en) * 2007-06-13 2008-12-18 Cheng Uei Precision Industry Co., Ltd. Position system for interactive gaming device and method using the same
US8237656B2 (en) * 2007-07-06 2012-08-07 Microsoft Corporation Multi-axis motion-based remote control
US8419545B2 (en) 2007-11-28 2013-04-16 Ailive, Inc. Method and system for controlling movements of objects in a videogame
US20090159799A1 (en) 2007-12-19 2009-06-25 Spectral Instruments, Inc. Color infrared light sensor, camera, and method for capturing images
US8972299B2 (en) 2008-01-07 2015-03-03 Bally Gaming, Inc. Methods for biometrically identifying a player
US9285459B2 (en) 2008-05-09 2016-03-15 Analog Devices, Inc. Method of locating an object in 3D
US20090279107A1 (en) * 2008-05-09 2009-11-12 Analog Devices, Inc. Optical distance measurement by triangulation of an active transponder
JP4318056B1 (ja) 2008-06-03 2009-08-19 島根県 画像認識装置および操作判定方法
US8514251B2 (en) * 2008-06-23 2013-08-20 Qualcomm Incorporated Enhanced character input using recognized gestures
JP5037455B2 (ja) 2008-08-26 2012-09-26 シャープ株式会社 入力システムおよび表示装置
EP2347320B1 (en) 2008-10-27 2021-03-31 Sony Interactive Entertainment Inc. Control device for communicating visual information
US8295546B2 (en) * 2009-01-30 2012-10-23 Microsoft Corporation Pose tracking pipeline
US9256282B2 (en) * 2009-03-20 2016-02-09 Microsoft Technology Licensing, Llc Virtual object manipulation
US8953029B2 (en) * 2009-05-08 2015-02-10 Sony Computer Entertainment America Llc Portable device interaction via motion sensitive controller
WO2010138743A2 (en) 2009-05-27 2010-12-02 Oblong Industries, Inc. Spatial, multi-modal control device for use with spatial operating system
JP5663159B2 (ja) 2009-11-11 2015-02-04 株式会社コナミデジタルエンタテインメント ゲームプログラム、データ送受信装置、ゲームシステム
KR101130564B1 (ko) * 2009-12-11 2012-03-30 한국과학기술원 비디오 게임 콘솔 장치, 그 구동방법 및 컴퓨터 판독가능 매체
US8334842B2 (en) 2010-01-15 2012-12-18 Microsoft Corporation Recognizing user intent in motion capture system
JP2013517838A (ja) 2010-01-25 2013-05-20 ラムバス・インコーポレーテッド 位置および動きを検出する指向性ビームステアリングシステムおよび方法
DE102010011473A1 (de) 2010-03-15 2011-09-15 Institut für Rundfunktechnik GmbH Verfahren zur Fernsteuerung von Endgeräten
JP2011203517A (ja) * 2010-03-25 2011-10-13 Seiko Epson Corp プロジェクター、プロジェクターシステム、及びプロジェクターの制御方法
US20110292036A1 (en) * 2010-05-31 2011-12-01 Primesense Ltd. Depth sensor with application interface
US20110317871A1 (en) 2010-06-29 2011-12-29 Microsoft Corporation Skeletal joint recognition and tracking system
US8638364B2 (en) * 2010-09-23 2014-01-28 Sony Computer Entertainment Inc. User interface system and method using thermal imaging
US8419541B2 (en) 2010-11-17 2013-04-16 Sony Computer Entertainment Inc. Smart shell to a game controller
US10033718B2 (en) 2011-01-05 2018-07-24 Lenovo (Singapore) Pte. Ltd. Pairing of base and detachable device
US8497838B2 (en) 2011-02-16 2013-07-30 Microsoft Corporation Push actuation of interface controls
US8791901B2 (en) * 2011-04-12 2014-07-29 Sony Computer Entertainment, Inc. Object tracking with projected reference patterns
US9880604B2 (en) 2011-04-20 2018-01-30 Microsoft Technology Licensing, Llc Energy efficient location detection
US9440144B2 (en) * 2011-04-21 2016-09-13 Sony Interactive Entertainment Inc. User identified to a controller
US20120288251A1 (en) * 2011-05-13 2012-11-15 Cyberlink Corp. Systems and methods for utilizing object detection to adaptively adjust controls
JP5514774B2 (ja) * 2011-07-13 2014-06-04 株式会社ソニー・コンピュータエンタテインメント ゲーム装置、ゲーム制御方法、ゲーム制御プログラム、及び記録媒体
WO2013059759A1 (en) 2011-10-21 2013-04-25 Gamestop, Inc. Wireless controller
US9342139B2 (en) * 2011-12-19 2016-05-17 Microsoft Technology Licensing, Llc Pairing a computing device to a user
US10150028B2 (en) * 2012-06-04 2018-12-11 Sony Interactive Entertainment Inc. Managing controller pairing in a multiplayer game
US9251701B2 (en) * 2013-02-14 2016-02-02 Microsoft Technology Licensing, Llc Control device with passive reflector
US9269151B2 (en) * 2014-02-11 2016-02-23 Microsoft Technology Licensing, Llc Manufacturing line monitoring

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011505618A (ja) 2007-11-21 2011-02-24 ジェスチャー テック,インコーポレイテッド デバイスアクセス制御
WO2012148866A2 (en) * 2011-04-28 2012-11-01 Microsoft Corporation Manual and camera-based avatar control

Also Published As

Publication number Publication date
US20140139629A1 (en) 2014-05-22
WO2014078704A1 (en) 2014-05-22
CN104838338A (zh) 2015-08-12
CN104838338B (zh) 2017-07-04
EP2920672A1 (en) 2015-09-23
EP2920672B1 (en) 2018-04-18
JP2015536507A (ja) 2015-12-21
KR20150086278A (ko) 2015-07-27
US9571816B2 (en) 2017-02-14

Similar Documents

Publication Publication Date Title
KR102162373B1 (ko) 주체와 객체의 연관
US9524554B2 (en) Control device with passive reflector
US10552666B2 (en) Identification using depth-based head-detection data
US10496155B2 (en) Virtual reality floor mat activity region
US9804696B2 (en) User-input control device toggled motion tracking
US8933931B2 (en) Distributed asynchronous localization and mapping for augmented reality
KR102223693B1 (ko) Nui 관여의 검출
WO2019221980A1 (en) Dynamic graphics rendering based on predicted saccade landing point
KR20190094381A (ko) 혼합 현실 환경의 가상 사용자 입력 콘트롤들
US11407106B2 (en) Electronic device capable of moving and operating method thereof
KR102502310B1 (ko) 적외선 이미징을 사용한 색상 식별
US20140173524A1 (en) Target and press natural user input
US20140045593A1 (en) Virtual joint orientation in virtual skeleton
US20140143451A1 (en) Binding control devices to a computing system
US20150123901A1 (en) Gesture disambiguation using orientation information
KR20140009900A (ko) 로봇 제어 시스템 및 그 동작 방법
US11729573B2 (en) Audio enhanced augmented reality

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant