KR102038638B1 - 가상 현실에서 핸드 헬드 디바이스를 트랙킹하는 시스템 - Google Patents

가상 현실에서 핸드 헬드 디바이스를 트랙킹하는 시스템 Download PDF

Info

Publication number
KR102038638B1
KR102038638B1 KR1020177030775A KR20177030775A KR102038638B1 KR 102038638 B1 KR102038638 B1 KR 102038638B1 KR 1020177030775 A KR1020177030775 A KR 1020177030775A KR 20177030775 A KR20177030775 A KR 20177030775A KR 102038638 B1 KR102038638 B1 KR 102038638B1
Authority
KR
South Korea
Prior art keywords
electronic device
head mounted
visual marker
hand held
pattern
Prior art date
Application number
KR1020177030775A
Other languages
English (en)
Other versions
KR20170130580A (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 KR20170130580A publication Critical patent/KR20170130580A/ko
Application granted granted Critical
Publication of KR102038638B1 publication Critical patent/KR102038638B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B27/0172Head mounted characterised by optical features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/002Specific input/output arrangements not covered by G06F3/01 - G06F3/16
    • G06F3/005Input arrangements through a video camera
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/012Head tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • 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/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B2027/0178Eyeglass type
    • 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/10048Infrared image
    • 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/30204Marker
    • 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/30244Camera pose

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Graphics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Optics & Photonics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Position Input By Displaying (AREA)
  • Processing Or Creating Images (AREA)
  • Image Analysis (AREA)

Abstract

핸드 헬드 스마트폰과 같은 제1 전자 디바이스를 헤드 장착형 디스플레이와 같은 제2 전자 디바이스에 의해 생성된 가상 현실에서 트랙킹하기 위한 시스템은 상기 제1 전자 디바이스 또는 상기 제2 전자 디바이스 중 하나 상에 포함된 적어도 하나의 시각적 마커의, 상기 제1 전자 디바이스 또는 상기 제2 전자 디바이스 중 다른 하나에 포함된 카메라에 의한 검출을 포함할 수 있다. 시각적 마커들의 알려진 피처들에 대응하는 시야 내에서 검출된 피쳐들은 상기 제2 전자 디바이스에 대한 상기 제1 전자 디바이스의 움직임의 위치를 찾고 트랙킹하기 위해 사용될 수 있어서, 상기 제2 전자 디바이스의 움직임은 상기 제2 전자 디바이스에 의해 생성된 가상 경험에서 인터랙션으로 전이될 수 있다.

Description

가상 현실에서 핸드 헬드 디바이스를 트랙킹하는 시스템
[관련 출원의 상호참조]
본 출원은 계속 출원이고, 2015년 7월 7일자로 출원된 미국 출원 제62/189,292호의 우선권을 주장하는 2016년 6월 27일자로 출원된 미국 출원 제15/193,777호의 우선권을 주장하며, 상기 출원들은 그 전체가 본 명세서에 포함된다. 본 출원은 2015년 7월 7일자로 출원된 미국 출원 제62/189,292호의 우선권을 주장하며, 상기 출원은 그 전체가 본 명세서에 포함된다.
[기술 분야]
본 출원은 일반적으로, 증강 현실 및/또는 가상 현실 환경에서의 전자 디바이스의 검출 및 트랙킹에 관한 것이다.
증강 현실(AR) 및/또는 가상 현실(VR) 시스템은 3 차원(3D) 몰입(immersive) 가상 환경을 생성할 수 있다. 사용자는 예를 들어, 디스플레이를 포함하는 헬멧 또는 다른 헤드 장착형 디바이스, 안경 또는 고글 - 사용자가 디스플레이 디바이스를 볼 때 이 안경 또는 고글을 통하여 봄(look through) - , 센서가 갖춰진 글러브들, 센서들을 포함하는 외부 핸드 헬드 디바이스들 및 다른 그러한 전자 디바이스들과 같은 다양한 전자 디바이스들과의 인터랙션(interaction)을 통해 이러한 가상 환경을 경험할 수 있다. 일단, 가상 환경에 몰입되면, 가상 환경과의 사용자 인터랙션은, 예를 들어, 가상 환경과 인터랙션하고, 개인화하고 그리고 제어하기 위한 전자 디바이스의 물리적 움직임 및/또는 조작과 같은 다양한 형태를 취할 수 있다.
일 양상에서, 방법은 제1 전자 디바이스 및 제2 전자 디바이스가 주변 환경에서 동작하는 동안 서로 통신하도록 상기 제1 전자 디바이스를 상기 제2 전자 디바이스와 동작 가능하게 결합시키는 단계 - 상기 제2 전자 디바이스는 상기 주변 환경에서 동작하는 동안 가상 환경을 생성 및 디스플레이하도록 구성됨 - 와, 상기 제1 전자 디바이스 또는 상기 제2 전자 디바이스 중 하나의 센서에 의해 상기 제1 전자 디바이스 또는 상기 제2 전자 디바이스 중 다른 하나 상에서 적어도 하나의 시각적 마커를 검출하는 단계와, 상기 적어도 하나의 시각적 마커에서 검출된 피처들(features)에 기초하여 상기 주변 환경에서 상기 제1 전자 디바이스의 움직임(movement)을 검출 및 트랙킹하는 단계와, 그리고 상기 주변 환경에서 검출 및 트랙킹된 상기 제1 전자 디바이스의 움직임을 상기 가상 환경에서의 대응하는 액션으로 전이시키는(translating) 단계를 포함한다. 따라서, 본 방법은 예를 들어, 주변 환경에서의 제1 전자 디바이스의 움직임이 상기 제2 전자 디바이스에 의해 상기 사용자에게 제공되는 가상 환경에서 인터랙션 및/또는 움직임과 같은 대응하는 액션으로서 사용자에 의해 경험될 수 있는 효과를 제공한다.
다른 양상에서, 시스템은 광학 센서(optical sensor) 및 프로세서를 포함하는 핸드 헬드 전자 디바이스를 포함할 수 있으며, 상기 핸드 헬드 전자 디바이스는 하우징의 외부 표면 상에 복수의 시각적 마커들을 갖는 헤드 장착형 전자 디바이스와 동작 가능하게 결합되도록 구성되고, 상기 핸드 헬드 전자 디바이스는 상기 핸드 헬드 전자 디바이스의 광학 센서에 의해 캡처된 이미지들 및 상기 캡처된 이미지들 내의 미리 결정된 피쳐들의 식별에 기초하여 상기 헤드 장착형 전자 디바이스에 대한 상기 핸드 헬드 전자 디바이스의 위치 및 움직임을 결정하도록 구성되며, 상기 미리 결정된 피쳐들은 상기 복수의 시각적 마커들에 대응한다.
하나 이상의 구현들의 세부 사항은 첨부된 도면들 및 이하의 설명에 제시된다. 다른 피쳐들은 상세한 설명 및 도면들로부터 그리고 특허청구범위로부터 분명해질 것이다.
도 1은 본 명세서에 기술된 구현들에 따른, 헤드 장착형 디스플레이 및 핸드 헬드 전자 디바이스를 포함하는 가상 현실 시스템의 일례이다.
도 2a 및 2b는 본 명세서에 기술된 구현들에 따른 예시적인 헤드 장착형 디스플레이의 투시도들(perspective views)이다.
도 3a는 본 명세서에 기술된 구현들에 따른, 시각적 마커를 포함하는 예시적인 헤드 장착형 디스플레이의 정면 투시도이고, 도 3b는 저면 투시도이며, 도 3c는 시각적 마커에 포함될 수 있는 패턴들의 예들을 도시한다.
도 3d는 본 명세서에 기술된 구현들에 따른, 시각적 마커를 포함하는 예시적인 헤드 장착형 디스플레이의 정면 투시도이고 도 3e는 저면 투시도이다.
도 4는 본 명세서에 기술된 구현들에 따른, 헤드 장착형 디스플레이 및 핸드 헬드 전자 디바이스의 블록도이다.
도 5는 본 명세서에 기술된 구현들에 따른, 증강 및/또는 가상 현실 환경에서 핸드 헬드 전자 디바이스를 트랙킹하는 방법의 순서도이다.
도 6a 및 6b는 본 명세서에 기술된 구현들에 따른, 시각적 마커들을 포함하는 핸드 헬드 전자 디바이스들의 정면도들이고, 6c는 적외선 트랙킹 마커를 방출(emit)하도록 구성된 핸드 헬드 전자 디바이스의 정면도이다.
도 7은 본 명세서에 기술된 구현들에 따른, 가상 환경에서 핸드 헬드 디바이스를 트랙킹하는 방법의 순서도이다.
도 8은 본 명세서에 기술된 기법들을 구현하기 위해 이용될 수 있는 컴퓨터 디바이스 및 모바일 컴퓨터 디바이스의 일례를 도시한다.
예를 들어, HMD(Head Mounted Display) 디바이스를 착용한 3D 가상 환경에 몰입된 사용자는 가상 환경을 탐색하고 예를 들어, (예를 들어, 손/팔 제스처들, 머리 움직임, 걷기, 등과 같은) 물리적 인터랙션 및/또는 가상 환경을 경험하기 위한 HMD 및/또는 별도의 전자 디바이스의 조작을 통해 가상 환경에서 가상 객체, 피쳐들, 등과 인터랙션할 수 있다. 예를 들어, 일부 구현들에서, HMD는 예를 들어, 제어기, 자이로마우스(gyromouse), 스마트 폰 또는 다른 그러한 핸드 헬드 전자 디바이스와 같은 핸드 헬드 전자 디바이스와 페어링될 수 있다. HMD와 페어링된 핸드 헬드 전자 디바이스의 사용자 조작은 사용자가 HMD에 의해 생성된 가상 환경과 인터랙션할 수 있게 한다.
도 1에 도시된 예시적인 구현에서, HMD(100)를 착용한 사용자는 자신의 손(142)에 예를 들어, 제어기, 자이로마우스, 스마트 폰, 등과 같은 포터블 핸드 헬드 전자 디바이스(102)를 잡고 있다. 도 1에서, 사용자는 오른손으로 스마트 폰(102)을 잡고 있다. 그러나, 사용자는 또한, 왼손으로 또는 자신의 왼손과 오른손 모두로 디바이스(102)를 잡고, 여전히 HMD(100)에 의해 생성된 몰입형 가상 경험과 인터랙션할 수 있다.
도 2a 및 도 2b는 예를 들어, 사용자에 의해 경험될 증강된 및/또는 가상 환경을 생성하기 위해, 도 1의 사용자에 의해 착용된 HMD(100)와 같은 예시적인 HMD의 사시도들이다. HMD(100)는 광학 컴포넌트들이 수용될 수 있는 하우징(110)을 포함할 수 있다. 하우징(110)은, 사용자의 머리에 하우징(110)이 장착되거나 착용될 수 있게 하는 프레임(120)에 결합, 예를 들어 회전가능하게 결합될 수 있고 그리고/또는 탈착가능하게 어태치가능할 수 있다. 오디오 출력 디바이스(130)가 또한, 프레임(120)에 결합될 수 있으며, 예를 들어, 헤드폰들에 장착되고 프레임(120) 상에 결합된 스피커들을 포함할 수 있다.
도 2b에서, 하우징(110)의 전면(front face)(110a)은 하우징(110)의 베이스 부분(110b)으로부터 멀어지도록(away from) 회전되어서 하우징(110)에 수용된 컴포넌트들 중 일부가 가시적이게 되도록 한다. 디스플레이(140)는 하우징(110)의 전면(110a) 상에 장착될 수 있다. 렌즈들(150)은 하우징(110)에서, 전면(110a)이 하우징(110)의 베이스 부분(110b)에 대해 닫힌 포지션에 있을 때 사용자의 눈들과 디스플레이 사이에 장착된다. 렌즈들(150)의 포지션은 비교적 넓은 시야 및 비교적 짧은 초점 길이를 제공하기 위해 사용자의 눈들의 각각의 광축들과 정렬될 수 있다.
HMD(100)는 또한, 다양한 감지 시스템 디바이스들을 포함하는 감지 시스템(160) 및 HMD(100)의 동작을 지원하기 위한 다양한 제어 시스템 디바이스들을 포함하는 제어 시스템(170)을 포함할 수 있다. 제어 시스템(170)은 또한, 제어 시스템(170)의 컴포넌트들에 동작가능하게 결합된 프로세서(190)를 포함할 수 있다.
일부 구현들에서, HMD(100)는 또한 카메라(180)를 포함할 수 있고, 상기 카메라는 HMD(100)의 외부의 환경의 정지 이미지 및 움직이는 이미지를 캡처할 수 있다. 예를 들어, 일부 구현들에서, 카메라(180)는 핸드 헬드 전자 디바이스(102) 또는 다른 위치 상의 트랙킹 마커들의 이미지들을 캡처할 수 있다. 카메라(180)에 의해 캡처된 트랙킹 마커들의 이미지들은 핸드 헬드 전자 디바이스(102)의 포지션 및 움직임, 및/또는 공간에서의 HMD(100)의 포지션 및/또는 움직임을 결정하기 위해 HMD(100)에 의해 인식되고 처리될 수 있다. 일부 구현들에서, 카메라(180)는 예를 들어, 적외선(IR) 일루미네이터 및 IR 일루미네이터에 의해 조명된 표시자들의 이미지들을 캡처하기 위한 적외선 센서를 포함할 수 있다. 일부 구현들에서, 카메라(180)는 예를 들어, HMD(100)상의 카메라(180)로부터 예컨대, 전자 디바이스(102)를 잡고 있는 사용자의 손(들)(142)까지의 거리를 결정할 수 있는 깊이 센서를 포함할 수 있다. 일부 구현들에서, 카메라(180)는 실세계 또는 주변 환경의 정지 및 움직이는 이미지들을 캡처할 수 있다. 카메라(180)에 의해 캡처된 이미지들은 패스 스루 모드에서 디스플레이(140) 상의 사용자에게 디스플레이될 수 있어, 사용자가 HMD(100)를 제거함이 없이 또는 사용자의 시선(line of sight) 밖으로 하우징(110)을 이동시키기 위해 HMD의 구성을 변경함이 없이 일시적으로 가상 세계를 떠나 현실 세계로 돌아갈 수 있게 한다.
일부 구현들에서, HMD(100)는 또한, 예를 들어 HMD(100)의 외부 표면 상에 하나 이상의 식별 마커들(115)을 포함할 수 있다. 하나 이상의 마커들(115)은 예를 들어, HMD(100)의 하우징(110)의 하나 이상의 외부 표면들 상에 포함될 수 있어서, 마커들(115)은 핸드 헬드 전자 디바이스(102)에 의해 검출가능할 수 있다. 예를 들어, 일부 구현들에서, HMD(100) 상의 마커들(115)은 이미지 센서 및/또는 예를 들어 사용자가 잡고 있는 핸드 헬드 전자 디바이스(102)의 전방(front facing) 카메라(103)와 같은 핸드 헬드 전자 디바이스(102)의 라이트 센서(light sensor)의 시야 내에서 캡처될 수 있다. 마커들(115)은 신속하게 그리고/또는 정확하게 기계 판독 가능한 피처들을 포함할 수 있다. 예를 들어, 일부 구현들에서, 패턴의 초기 패턴 및/또는 피쳐는 카메라(103)의 캡처 레이트 또는 프레임 레이트에 따라 하나의 프레임에서 검출될 수 있다. 후속적인 피쳐 검출 및 트랙킹 - 여기서 패턴은 초기 검출과 관하여 움직임 - 은 비교적 짧은 시간 기간, 예를 들어 3ms 미만으로 달성될 수 있다. 일부 구현들에서, 후속적인 피쳐 검출은 예를 들어 패턴, 검출 시스템의 성능들 및 다른 인자들에 따라 3ms보다 길게 소요할 수 있다. 마커들(115)에 포함된 피쳐들은 예를 들어, 비 반복 패턴, 복수의 별개의(distinct) 코너들 및 다른 그러한 피쳐들을 포함할 수 있다. 예를 들어, 마커는 기계 판독가능 광학 마커를 정의하는 매트릭스 바코드 또는 2 차원 바코드 또는 QR(quick response) 코드를 포함할 수 있다. 예를 들어, 비 반복 패턴들 및/또는 복수의 별개인 코너들을 포함하는 다른 신속하고 그리고/또는 정확하게 캡처되고, 식별되고 그리고 프로세스된 광학 마커들이 또한 포함될 수 있다.
일부 구현들에서, HMD(100) 상의 마커들(115)은 전술한 바와 같이 HMD(100)의 외부 표면에서 가시적일 수 있다. 일부 구현들에서, HMD(100) 상의 마커들(115)은, 예를 들어, 핸드 헬드 전자 디바이스(102)에 포함된 IR 일루미네이터 및 IR 센서/카메라에 의해 검출가능하여서, 마커들(115)은 사람의 눈에는 가시적이지 않다.
사용자가 잡고 있는 핸드 헬드 전자 디바이스(102)의 이미지 센서 및/또는 광학 센서 및/또는 라이트 센서, 또는 전방 카메라(103)의 시야 내에서 캡처될 마커들을 포함하는 HMD(100)의 일례가 도 3a 및 3b에 도시된다. (도 3a 및 3b에 도시된 음영 영역들(115A 및 115B)로 표시된) 하나 이상의 마커들(115)이 HMD(100)의 하나 이상의 표면들 상에 포함될 수 있다. 이 예에서, 제1 마커(115A)는 HMD(100)의 하우징(110)의 전방 표면(front facing surface)(100A)에 걸쳐 포지션되고, 제2 마커(115B)는 하방 표면(bottom facing surface)(100B)에 걸쳐 포지션된다. 제1 마커(115A) 및 제2 마커(115B)는 단지 논의 및 예시의 용이를 위해, HMD(100)의 하우징(110)의 전방 표면(100A) 및 하방 표면(100B) 상에 도시된다. 예를 들어, 마커들은 마커들이 사용자가 잡고 있는 핸드 헬드 전자 디바이스(102) 의해 검출, 예컨대 사용자가 잡고 있는 핸드 헬드 전자 디바이스(102)의 전방 카메라(103)의 시야 내에서 캡처될 수 있는 한, 도 3a 및 3b에 도시된 제1 및 제2 마커들(115A, 115B)에 추가적으로 또는 이들 대신에 HMD(100)의 하우징(110)의 좌측 측면 및/또는 우측 측면을 따라 포지션될 수 있다. 이하에서, 단지 논의 및 예시의 용이를 위해, HMD(100) 상의 하나 이상의 마커들(115)을 검출하는 핸드 헬드 전자 디바이스(102) 상의 이미지 센서 및/또는 광학 센서 및/또는 라이트 센서는 전방 카메라(103)로 지칭될 것이다.
도 3a 및 3b에 도시된 제1 마커(115A)는 HMD(100)의 전체 전방 표면(100A)을 필수적으로 커버한다. 그러나, 일부 구현들에서, 제1 마커(115)는 HMD(100)의 전방 표면(100A) 또는 HMD(100)의 다른 표면을 부분적으로 커버할 수 있다. 상기 주목한 바와 같이, 도 3a 및 3b에 도시된 제1 및 제2 마커들(115A, 115B)은 복수의 별개의 비 반복 에지들 및/또는 코너들을 포함하는 비 반복 패턴을 포함한다. 예를 들어, 마커(115)는 도 3c에 도시된 예들 중 하나로서 비 반복 패턴 또는 도 3a 및 3b에 도시된 음영 영역들에서 본 명세서에 기술된 바와 같이 검출되고 인식될 수 있는 다른 패턴을 포함할 수 있다.
일부 구현들에서, 마커(115)에서 검출된 패턴과 전방 카메라(103)에 의해 캡처된 이미지 사이의 겨우 4 개의 코너들의 매칭이 패턴을 식별하는 데 사용될 수 있다. 더 많은 수의 코너들 및/또는 검출된 패턴과 캡처된 이미지 사이에서 매치되는 더 많은 수의 코너들은 더욱 신뢰성있는 결과를 산출할 수 있다. 검출, 매칭 및 트랙킹에서의 신뢰성은 예를 들어, 시각적 마커(115)의 사이즈 또는 그리고 면적(area), 시각적 마커(115)의 프린트 품질의 레벨, 전방 카메라(103)의 해상도 능력, 이미지 센서(103)와 시각적 마커(115) 사이의 거리, 및 다른 그러한 인자들에 좌우될 수 있다. 일부 구현들에서, 시각적 마커(115)의 사이즈는 5cm x 5cm 이상일 수 있다. 일부 구현들에서, 시각적 마커(115)의 사이즈는 5cm x 5cm 미만일 수 있다.
사용자가 잡고 있는 핸드 헬드 전자 디바이스(102)의 전방 카메라(103)의 시야 내에서 캡처될 마커들을 포함하는 HMD(100)의 다른 예가 도 3d 및 3e에 도시된다. 이 예에서, 제1 마커(115C)는 HMD(100)의 하우징(110)의 전방 표면(100A) 상에 포지션되고, 제2 마커(115D)는 HMD(100)의 하우징(110)의 하방 표면(100B) 상에 포지션된다. 제1 마커(115C) 및 제2 마커(115D)는 단지 논의 및 예시의 용이를 위해, HMD(100)의 하우징(110)의 전방 표면(100A) 및 하방 표면(100B) 상에 도시된다. 예를 들어, 마커들은 마커들이 사용자가 잡고 있는 핸드 헬드 전자 디바이스(102)의 전방 카메라(103)의 시야 내에서 캡처될 수 있는 한, 도 3d 및 3e에 도시된 제1 및 제2 마커들(115C, 115D)에 추가적으로 또는 이들 대신에 HMD(100)의 하우징(110)의 좌측 측면 및/또는 우측 측면을 따라 포지션될 수 있다. 마찬가지로, 도 3d 및 3e에 도시된 예에서, 제1 마커(115C)는 HMD(100)의 전면(100A)의 상부 우측 코너에 포지션되고, 제2 마커(115D)는 HMD(100)의 하방 표면(100B)의 하부 좌측에 포지션된다. 그러나, 마커들은 마커들이 사용자가 잡고 있는 핸드 헬드 전자 디바이스(102)의 카메라(103)의 시야 내에 캡처될 수 있는 한, HMD(100) 상의 다른 포지션들에 위치될 수 있다. 상기 주목한 바와 같이, 도 3d 및 3e에 도시된 제1 및 제2 마커들(115C 및 115D)은 신속하고 쉽게 캡처, 식별 및 처리되는 별개의 코너들 및/또는 에지들을 포함하는 비 반복 패턴을 포함하는 매트릭스/2 차원 바코드 또는 QR 코드를 포함한다.
일부 구현들에서, 마커들(115)이 사용자가 잡고 있는 핸드 헬드 전자 디바이스(102)의 전방 카메라(103)의 시야 내에서 캡처될 수 있는 한, 도 3a 내지 3e에 도시된 제1 마커들(115A/115C) 및 제2 마커들(115B/115D)보다 더 많은 또는 더 적은 마커들(115)이 HMD(100) 상에 포함될 수 있다. 일부 구현들에서, 마커들이 사용자가 잡고 있는 핸드 헬드 전자 디바이스(102)의 전방 카메라(103)의 시야 내에서 캡처될 수 있는 한, HMD(100) 상에 포함된 마커들(115)은 도 3a 내지 3e에 도시된 마커들(115A 내지 115D)과 다른 위치들에 배열(arrangement)될 수 있다. 시각적 마커들(115)을 HMD(100)의 전방 측(front facing side)(100A) 및 하방 측(bottom facing side)(100B) 상에 포지셔닝하는 것은, 핸드 헬드 전자 디바이스(102)가 사용자의 손에 쥐어 질 때, 전방 카메라(103)가 전형적으로 전방 표면(100A) 및/또는 하방 표면(100B) 중 적어도 하나를 볼 수 있음에 따라, 심지어는 사용자가 사용자의 팔의 모션 범위 내에서 자신의 손/팔을 움직임일 때에도, 핸드 헬드 전자 디바이스의 전방 카메라(103)의 시야 내에서 마커들(115)의 상대적으로 일정하고 정확한 캡처를 할 수 있게 한다. 일부 구현들에서, 마커들(115)은 제조 동안 HMD(100) 상에 포함될 수 있다. 일부 구현들에서, 마커들(115)은 예를 들어, 특정 HMD 및 핸드 헬드 전자 디바이스, 사용 환경 및 다른 그러한 인자들에 기초하여 선택된 위치들에서 사용자에 의해 HMD(100)에 부착(affix)될 수 있고/있거나 사용자에 의해 재배열될 수 있다.
상기 주목한 바와 같이, 일부 구현들에서, 핸드 헬드 전자 디바이스(102)의 전방 카메라(103)는 IR 일루미네이터 및 IR 센서를 포함할 수 있어서, HMD(100) 상의 마커들(115)(예를 들어, 도 3a 내지 3b에 도시된 HMD(100) 상의 마커들(115A 및 115B) 및/또는 도 3d-3e에 도시된 HMD(100) 상의 마커들(115C 및 115D))은 핸드 헬드 전자 디바이스(102)의 전방 카메라(103)에 의해 검출될 수 있지만, 마커들(115)은 인간의 눈에는 보이지 않는다.
상술된 바와 같이 전방 카메라(103)를 포함하는 핸드 헬드 전자 디바이스(102)는 상술된 바와 같은 마커들(115)을 포함하는 HMD(100)와 동작가능하게 결합되거나 또는 페어링될 수 있다. 핸드 헬드 전자 디바이스(102)와 HMD(100)의 이러한 페어링은 핸드 헬드 전자 디바이스(102)와 HMD(100) 사이의 통신 및 핸드 헬드 전자 디바이스(102)와 HMD(100) 사이의 데이터 교환을 제공하여서, 핸드 헬드 전자 디바이스(102)의 조작 또는 움직임은, HMD(100)에 의해 생성되는 그리고 사용자에게 예컨대 HMD(100)의 디스플레이(140) 상에 디스플레이되는 가상 환경에서 대응하는 인터랙션 또는 움직임으로 전이될 수 있다.
페어링 후, 사용자가 잡고 있는 핸드 헬드 전자 디바이스(102)의 전방 카메라(103)에 의해 캡처된 이미지들은, 예컨대 사용자가 잡고 있는 핸드 헬드 전자 디바이스(102)의 이미지 센서(103)의 시야 내에 캡처된 HMD(100)상의 마커들(115)의 이미지들을 이용하여 HMD(100)의 상대적인 6 자유도(6DOF) 위치, 움직임 및 트랙킹을 검출하는데 사용될 수 있다. 핸드 헬드 전자 디바이스(102)의 6 DOF 위치는 3 차원 공간에서 X, Y 및 Z 축들 각각에 대한 핸드 헬드 전자 디바이스(102)의 움직임(예컨대, X, Y 및 Z 축들에 대한 롤(roll), 피치(pitch) 및 요(yaw) 움직임)과 조화되어(in coordination with) 시스템이 구현되는 3차원, 물리적, 실세계 공간에서 핸드 헬드 전자 디바이스(102)의 포지션의 X 좌표, Y 좌표 및 Z 좌표를 포함할 수 있다. 일단, 핸드 헬드 전자 디바이스(102)가 HMD(100)의 상대적인 6DOF 위치를 검출하면, 이 상대적인 위치의 역변환(inverse transform)은 HMD(100)에 대한 핸드 헬드 전자 디바이스(102)의 위치를 산출할 수 있다.
일부 구현들에서, 3 차원 공간에서 X, Y 및 Z 축들 각각에 대한 핸드 헬드 전자 디바이스(102)의 움직임은, 예를 들어, 헨드 헬드 전자 디바이스(102)에 포함된 센서들(예를 들어, 가속도계, 자이로스코프, 등을 포함하는 관성 측정 유닛)에 의해 캡처될 수 있다. 헨드 헬드 전자 디바이스(102)의 센서들에 의해 검출된 X, Y 및 Z 축들에 대한 헨드 헬드 전자 디바이스(102)의 움직임과 함께, 마커들의 검출에 기초하여 검출되는 물리적 실세계 공간에서의 헨드 헬드 전자 디바이스(102)의 3차원 포지션의 조합은 핸드 헬드 전자 디바이스(102)의 6DOF 트랙킹을 제공할 수 있다. 이는 핸드 헬드 전자 디바이스(102)의 다양한 서로 다른 타입들의 입력들, 조작들, 등등이 HMD(100)에 의해 생성되는 그리고 사용자에게 예컨대 HMD(100)의 디스플레이(140) 상에 디스플레이되는 가상 환경에서의 가상 피쳐들, 객체들, 등과의 대응하는 인터랙션들로 전이될 수 있게 한다.
HMD(100)에 대한 핸드 헬드 전자 디바이스(102)의 위치가 반복적으로/연속적으로 결정됨에 따라, 핸드 헬드 전자 디바이스(102)의 움직임이 트랙킹될 수 있어서, 핸드 헬드 전자 디바이스(102)의 움직임은 HMD(100)에 의해 생성된 그리고 사용자에게 예컨대 HMD(100)의 디스플레이(140) 상에 디스플레이되는 가상 환경에서 대응하는 인터랙션으로 전이될 수 있다. 일부 구현들에서, 이러한 역변환은 매트릭스의 반전을 수반할 수 있다. 예를 들어, 핸드 헬드 전자 디바이스(102)로부터의 매트릭스는 HMD(100)의 좌표 공간 내의 포인트를 핸드 헬드 전자 디바이스(102)의 좌표 공간으로 전이시키는 데 사용될 수 있다. 이 매트릭스의 반전은 핸드 헬드 전자 디바이스(102)의 좌표 공간에서의 포인트를 HMD(100)의 좌표 공간으로 전이시키기 위해 컴퓨팅될 수 있다. 이 예에서, 핸드 헬드 전자 디바이스(102)의 좌표 공간은 핸드 헬드 전자 디바이스(102)에 앵커(anchor)된 오른손(right-handed) 좌표계에 의해 정의될 수 있고, 그리고 HMD(100)의 좌표 공간은 HMS(100)에 앵커된 오른손 좌표계에 의해 정의될 수 있다. 핸드 헬드 전자 디바이스(102)는 캡처된 각각의 프레임에 대해 역변환된 매트릭스를 HMD(100)에 전송할 수 있다. 그 다음, HMD(100)는 실세계에서와 동일한 위치에 있는 것처럼 보이게 하도록 핸드 헬드 전자 디바이스(102)를 렌더링하기 위해 이 숫자(number)들의 매트릭스 예컨대, 16개의 숫자들의 매트릭스를 사용할 수 있고, 실제 움직임에 기초하여 핸드 헬드 전자 디바이스의 움직임을 렌더링할 수 있다.
증강된 및/또는 가상 현실 환경에서 핸드 헬드 디바이스를 트랙킹하기 위한 시스템의 블록도가 도 4에 도시된다. 이 시스템은 제2 사용자 전자 디바이스(404)와 통신하는 제1 사용자 전자 디바이스(400)를 포함할 수 있다. 제1 사용자 전자 디바이스(400)는 사용자에 의해 경험될 증강 및/또는 가상 현실 환경을 생성하는 예를 들어, 도 2a 내지 2b 및 도 3a 내지 3e와 관련하여 전술한 바와 같은 HMD 일 수 있고, 제2 사용자 전자 디바이스(402)는 HMD에 의해 생성된 증강 및/또는 가상 현실 환경과의 사용자 인터랙션을 지원하는 예를 들어, 도 1와 관련하여 상술한 바와 같은 핸드 헬드 전자 디바이스일 수 있다. 예를 들어, 상술한 바와 같이, 제2(핸드 헬드) 전자 디바이스(402)의 물리적 움직임은 제1(헤드 장착) 전자 디바이스(400)에 의해 생성된 가상 환경에서 원하는 인터랙션으로 전이될 수 있다.
제1 전자 디바이스(400)는 도 2a 및 2b에 각각 도시된 감지 시스템(160) 및 제어 시스템(170)과 유사할 수 있는 감지 시스템(460) 및 제어 시스템(470)을 포함할 수 있다. 도 4에 도시된 예시적인 구현에서, 감지 시스템(460)은 예를 들어, 라이트 센서, 오디오 센서, 거리/근접 센서, 적외선 센서 및/또는 일루미네이터, 자이로스코프, 가속도계 및/또는 다른 센서들 및/또는 센서들의 서로 다른 조합(들)을 포함하는 다수의 서로 다른 타입들의 센서들을 포함할 수 있다. 일부 구현들에서, 라이트 센서, 이미지 센서 및 오디오 센서는 예를 들어, 도 2a 및 2b에 도시된 HMD(100)의 카메라(180)와 같은 카메라와 같은 하나의 컴포넌트에 포함될 수 있다. 제어 시스템(470)은 예를 들어, 파워/중지(power/pause) 제어 디바이스, 오디오 및 비디오 제어 디바이스들, 광학 제어 디바이스, 변환 제어 디바이스 및/또는 다른 그러한 디바이스들 및/또는 디바이스들의 서로 다른 조합(들)을 포함하는 다수의 서로 다른 타입들의 디바이스들을 포함할 수 있다. 일부 구현들에서, 감지 시스템(460) 및/또는 제어 시스템(470)은 특정 구현에 따라 더 많거나 적은 디바이스들을 포함할 수 있다. 감지 시스템(460) 및/또는 제어 시스템(470)에 포함된 요소들은 예를 들어, 도 2a 및 2b에 도시된 HMD(100) 이외의 다른 HMD 내에서 서로 다른 물리적 배열(예컨대, 상이한 물리적 위치)을 가질 수 있다.
제1 전자 디바이스(400)는 또한, 감지 시스템(460) 및 제어 시스템(470)과 통신하는 프로세서(490), 예를 들어 제어 시스템(470)의 모듈에 의해 액세스 가능한 메모리(480) 및 제1 전자 디바이스(400)와 예컨대, 제1 전자 디바이스(400)와 페어링되는 제2 전자 디바이스(402)와 같은 다른 외부 디바이스와의 사이의 통신을 제공하는 통신 모듈(450)을 포함할 수 있다.
제2 전자 디바이스(402)는 제2 전자 디바이스(402)와 예컨대, 제2 전자 디바이스(402)와 페어링되는 제1 전자 디바이스(400)와 같은 다른 외부 디바이스와의 사이의 통신을 제공하는 통신 모듈(406)을 포함할 수 있다. 제2 전자 디바이스(402)는 예를 들어 IR 일루미네이터 및 IR 센서 또는 다른 타입의 이미지 캡처 센서를 포함하는 이미지 센서, 예를 들어 카메라 및 마이크에 포함된 오디오 센서, 예를 들어, 가속도계 및/또는 자이로스코프 및/또는 자력계를 포함하는 관성 측정 유닛 및 다른 이러한 센서들 및/또는 센서들의 서로 다른 조합(들)을 포함하는 감지 시스템(404)을 포함할 수 있다. 프로세서(409)는 제2 전자 디바이스(402)의 감지 시스템(404) 및 제어기(405)와 통신할 수 있으며, 제어기(405)는 메모리(408)로의 액세스를 가지고 제2 전자 디바이스(402)의 전체 동작을 제어한다.
상기 주목한 바와 같이, 사용자는 가상 환경에서의 가상 피처들, 객체들, 등과 인터랙션하기 위해, 예컨대 HMD(100)에 의해 생성된 가상 환경에서 가상 피쳐 또는 요소의 움직임을 유발하기 위해, 예를 들어, 핸드 헬드 전자 디바이스(102)의 터치 표면들, 버튼들, 노브들 및 다른 조작 디바이스들에 인가된 입력들, 핸드 헬드 전자 디바이스(102)의 물리적 움직임, 및 핸드 헬드 전자 디바이스(102)의 다른 조작들을 통해 핸드 헬드 전자 디바이스(102)를 조작할 수 있다. 예를 들어, 사용자는 가상 환경에서 가상 아이템을 가상으로 잡고 있을(holding) 수 있다. 핸드 헬드 전자 디바이스(102)가 HMD(100)와 페어링되고 핸드 헬드 전자 디바이스(102)가 사용자의 한 손 또는 양손에 쥐어 진 경우, 핸드 헬드 전자 디바이스(102)의 전방 카메라(103)는 핸드 헬드 전자 디바이스(102)에 대한 HMD(100)의 위치를 확립하기 위해 HMD(100) 상의 시각적 마커(115)를 보고 트랙킹할 수 있다. 이 상대적인 위치의 역변환은 HMD(100)에 대한 핸드 헬드 전자 디바이스(102)의 6DOF 움직임의 위치를 찾고 트랙킹하는 데 이용될 수 있다. 시스템은 실세계 환경에서 핸드 헬드 전자 디바이스(102)의 결정된 위치/포지션/방위(orientation)/움직임을 가상 환경에서 잡고 있는 가상 아이템의 대응하는 움직임 또는 검출된 움직임 타입에 대응하는 다른 액션으로 전이시킨다.
이러한 배열에서, HMD(100)에 포함된 시각적 마커들(115)은 수동 마커들(passive markers)이다. 즉, 이 예시적인 구현에서, 마커들(115)은 핸드 헬드 전자 디바이스(102)에 의해 검출될 수 있는 단순한 패턴들이며, 검출을 위해 핸드 헬드 전자 디바이스(102)에 의해 검출되는 어떤 타입의 신호를 방출하지 않는다. 이러한 구현에서, 검출, 식별 및 프로세싱은 모두 핸드 헬드 전자 디바이스(102)에 의해 행해진다. 이는 HMD(100) 상의 프로세싱 작업로드를 완화시켜, HMD(100)가 이용 가능한 프로세싱 리소스들 및 배터리 파워를 가상 환경을 생성하는 데 적용할 수 있게 한다.
본 명세서에 광범위하게 기술된 구현들에 따른, 증강 및/또는 가상 현실 환경에서 핸드 헬드 전자 디바이스를 트랙킹하는 방법(500)이 도 5에 도시된다. 상기 주목한 바와 같이, 핸드 헬드 전자 디바이스는 예를 들어, 도 1에 도시된 핸드 헬드 전자 디바이스(102)일 수 있다. 핸드 헬드 전자 디바이스(102)는 예를 들어, 몰입형 증강 및/또는 가상 현실 환경을 생성하도록 구성된 도 1, 2a 내지 2b, 3a 내지 3e에 도시된 바와 같은 HMD(100)에 동작 가능하게 결합 또는 이와 페어링될 수 있다. 핸드 헬드 전자 디바이스(102)는 예를 들어 유선 연결, 예를 들어 wifi 또는 블루투스를 통한 무선 연결, 또는 다른 타입의 연결을 통해 HMD(100)와 페어링 및/또는 통신할 수 있다. 블록(510)에서 HMD(100) 및 핸드 헬드 전자 디바이스(102)가 활성화 및 페어링되고 가상 경험이 시작된 후, 블록(520)에서 데이터 수집 및 데이터 합성(synthesis)이 핸드 헬드 전자 디바이스(102)의 포지션 및 움직임의 위치를 찾아서 트랙킹하고 핸드 헬드 전자 디바이스(102)의 움직임을 가상 환경에서의 대응하는 인터랙션으로 전이시키기 위해 HMD(100) 및 핸드 헬드 전자 디바이스(102)에 의해 수행될 수 있다.
핸드 헬드 전자 디바이스(102)의 센서, 예를 들어 핸드 헬드 전자 디바이스(102)의 전방 카메라(103)는 블록(530)에서 시야를 스캔하고 시야 내의 이미지를 수집할 수 있다. 그 다음, 시스템은 블록(540)에서 HMD(100) 상의 시각적 마커들(115)에 포함될 것으로 알려진 미리 결정된 피처들에 대한 이미지를 스캔한다. 이는 예를 들어, 상기에 논의된 바와 같은 특정한 비반복적 패턴, 복수의 별개의 코너들 및/또는 에지, 등등을 포함한다. 이미지들 그리고 특히 검출된 피쳐들은 미리 결정된 피쳐들을 포함하는 시각적 마커들(115)의 알려진 이미지와 비교될 수 있다. 캡처된 이미지들은 알려진 이미지들과 비교될 수 있고, 핸드 헬드 전자 디바이스(102)에 대한 HMD(100)의 위치 및/또는 방위는, 미리 결정된 피쳐들이 캡처된 이미지들에 어떻게 나타나는 지를 상기 피쳐들이 예를 들어, 핸드 헬드 전자 디바이스(102) 및 HMD(100)의 직교 정렬된 방위에서, 어떻게 나타나도록 알려져 있는 지와 비교함에 기초하여 결정될 수 있다. 일단, 블록(540)에서, 핸드 헬드 전자 디바이스(102)에 대한 HMD(100)의 위치가 결정되면, 블록(550)에서, HMD(100)에 대한 핸드 헬드 전자 디바이스(102)의 위치를 결정하기 위해 역 변환이 계산될 수 있다. 일부 구현들에서, 핸드 헬드 전자 디바이스(102)는 이 이미지 데이터를 실질적으로 연속적으로, 또는 마커들(115)이 검출될 수 있고 핸드 헬드 전자 디바이스(102)의 움직임이 어떤 현저한 인터럽션(noticeable interruption)이 없이 트랙킹될 수 있는 레이트로 수집 및/또는 프로세싱할 수 있다.
블록(560)에서, 핸드 헬드 전자 디바이스(102)의 움직임을 결정하기 위해 핸드 헬드 전자 디바이스(102)에 의해 위치 데이터가 처리될 수 있고, 핸드 헬드 전자 디바이스(102)의 결정된 움직임은 블록(570)에서, HMD에 의해 생성된 가상 환경에서 대응하는 인터랙션 및/또는 움직임으로 전이될 수 있다. 핸드 헬드 전자 디바이스(102)의 인터랙션 및/또는 움직임이 가상 환경에서 경험할 수 있도록 HMD(100)의 사용자에게 이용가능하다는 기술적 효과가 제공된다. 예를 들어, 현재 시점에서 취해진 위치 및 움직임 및/또는 방위 데이터는 움직임 궤적을 결정하기 위해 이전 시점에서의 위치 및 움직임 및/또는 방위 데이터와 비교될 수 있다. 움직임 궤도는 데이터가 연속적으로 수집, 프로세싱 및 합성됨에 따라 실질적으로 연속적으로 업데이트될 수 있다. 그 다음, 움직임 궤도는 HMD(100)의 사용자가 가상 환경에서 대응하는 움직임 또는 인터랙션을 경험할 수 있게 하는 데 사용될 수 있다.
이 프로세스는 블록(580)에서 가상 경험이 종료되었음이 결정될 때까지 반복적으로 수행될 수 있다.
일부 구현들에서, 시각적 마커는 핸드 헬드 전자 디바이스(102)에 포함될 수 있어서, HMD(100), 예를 들어 HMD(100)의 카메라(180)가 상기 시각적 마커를 이용하여 핸드 헬드 전자 디바이스(102)의 움직임의 위치를 찾고 이 움직임을 트랙킹할 수 있다. 핸드 헬드 전자 디바이스와 같은 핸드 헬드 디바이스의 디스플레이 상에 렌더링된 시각적 마커의 예가 도 6a에 도시된다.
도 6a에 도시된 바와 같이, 예를 들어, 매트릭스 바코드 또는 2 차원 바코드 또는 QR 코드와 같은 시각적 마커(125A)가 핸드 헬드 전자 디바이스(102)의 디스플레이(105) 상에 디스플레이 또는 렌더링될 수 있다. 이 예시적인 구현에서, 시각적 마커(125A)는 핸드 헬드 전자 디바이스(102)의 디스플레이(105)의 상부 좌측 코너에 렌더링되고, 사용자는 오른 손에 핸드 헬드 전자 디바이스(102)를 잡고 있어서, 사용자의 손은 시각적 마커(125A)의 뷰(view)를 막거나(obstruct) 방해(impede)하지 않는다. 이러한 방식으로 핸드 헬드 전자 디바이스(102)의 디스플레이(105) 상에 렌더링된 마커(125A)는, 예를 들어, 다른 손으로 또는 다른 방위로 또는 다른 그러한 사용자 선호들로 핸드 헬드 전자 디바이스(102)를 쥐는 것을 수용하도록 디스플레이 스크린 상의 다른 위치로 이동될 수 있다. 이러한 배열은 시각적 마커들을 생성, 부착 또는 그렇지 않으면 디스플레이하기 위한 컴포넌트들을 수용하도록 핸드 헬드 전자 디바이스(102)의 케이스 또는 베젤 내의 공간에 의존하지 않으면서 HMD(100)의 카메라(180)에 의한 핸드 헬드 전자 디바이스(102)의 시각적 트랙킹을 할 수 있게 한다. 이러한 배열은 또한, 핸드 헬드 전자 디바이스(102)의 디스플레이(105) 및/또는 다른 조작 표면들이 본질적으로 핸드 헬드 전자 디바이스(102)의 전면의 외부 에지들로 확장되도록 하여, 본질적으로 베젤에 대한 필요성을 없애고, 디바이스(102)의 사용가능한 표면적을 확장시키고 디바이스(102)의 유용성(utility)을 향상시킨다.
도 6b에 도시된 바와 같이, 일부 구현들에서, 시각적 마커(125B)는 그렇지 않으면 핸드 헬드 전자 디바이스(102)의 외부 표면(106) 상에 위치될 수 있어서, 시각적 마커(125B)가 예를 들어 HMD(100)의 카메라(180)에 의해 검출될 수 있다. 시각적 마커(125B)는 예를 들어, 핸드 헬드 전자 디바이스(102)의 외부 표면, 핸드 헬드 전자 디바이스(102)의 외부 표면에 적용되거나 또는 그렇지 않으면 어태치된 스티커, 핸드 헬드 전자 디바이스(102)의 케이스 확장, 등등에 통합될 수 있다. 일부 구현들에서, 시각적 마커(125B)는 예를 들어, HMD(100)에 포함된 IR 일루미네이터 및 IR 센서/카메라에 의해 검출될 수 있어서, 마커(125B)는 사람의 눈에는 보이지 않는다.
일부 구현들에서, 적외선 마커가 핸드 헬드 전자 디바이스(102)에 의해 생성될 수 있어서, HMD(100), 예컨대 HMD(100)의 적외선 센서 또는 카메라가 상기 적외선 마커를 이용하여 핸드 헬드 전자 디바이스(102)의 움직임의 위치를 찾고 움직임을 트랙킹할 수 있다. 예를 들어, 핸드 헬드 전자 디바이스의 디스플레이에 의해 생성된 적외선 마커의 예가 도 6c에 도시된다.
도 6c에 도시된 바와 같이, 예를 들어, 매트릭스 바코드 또는 2 차원 바코드 또는 QR 코드와 같은 적외선 마커(125C)는 핸드 헬드 전자 디바이스(102)의 디스플레이(105)에 의해 생성될 수 있다. 예를 들어, 일부 구현들에서, 핸드 헬드 전자 디바이스(102)는 디스플레이(105)의 백라이트에 적외선 발광 다이오드(LED)들을 포함할 수 있고, 적외선 마커(125C)는 디스플레이(105)의 백라이트 내의 적외선 LED들에 의해 생성되어 방출될 수 있어서, 적외선 마커는 HMD(100)의 적외선 센서 또는 적외선 카메라에 가시적이지만 인간의 눈에는 가시적이지 않다. 일부 구현들에서, 적외선 마커(125C)는, 예를 들어 디스플레이(105)의 픽셀들을 적외선 범위의 방출로 구동함으로써 핸드 헬드 전자 디바이스(102)의 디스플레이(105)에 의해 발생되어 방출될 수 있어, 복잡한 패턴이 디스플레이(105)에 의해 방출될 수 있게 하며, 이는 HMD(100)의 적외선 카메라 또는 적외선 센서에는 가시적이지만 사람의 눈에는 가시적이지 않다. 이러한 배열은 시각적 마커들을 생성, 부착 또는 그렇지 않으면 디스플레이하기 위한 컴포넌트들을 수용하기 위해 핸드 헬드 전자 디바이스(102)의 케이스 또는 베젤 내의 공간에 의존하지 않으면서, HMD(100)의 상대적으로 저렴한 적외선 카메라 또는 센서에 의해 핸드 헬드 전자 디바이스(102)의 상대적으로 신뢰성있는 시각적 트랙킹을 할 수 있게 한다. 이러한 배열은 또한, 핸드 헬드 전자 디바이스(102)의 디스플레이(105) 및/또는 다른 조작 표면들이 본질적으로 핸드 헬드 전자 디바이스(102)의 전면의 외부 에지로 확장되도록하여, 본질적으로 베젤에 대한 필요성을 없애고, 디바이스(102)의 사용가능한 표면적을 확장시키고 디바이스(102)의 유용성을 향상시킨다.
도 6a 내지 6c에 도시된 예시적인 마커들(125A, 125B 및 125C)은 단지 논의 및 예시의 용이를 위해 매트릭스 바코드들 또는 2 차원 바코드들 또는 QR 코드들에 의해 정의된다. 그러나, 마커들(125A, 125B 및 125C)은 상술한 바와 같이 HMD(100)의 이미지 센서에 의해 검출되고 인식될 수 있는 정의된 코너들 및/또는 에지들을 포함하는 다른 불규칙한 비 반복 패턴들을 포함할 수 있다.
본 명세서에 설명된 구현들에 따른 증강 및/또는 가상 현실 환경에서 핸드 헬드 전자 디바이스를 트랙킹하는 방법(700)이 도 7에 도시된다. 상기 주목한 바와 같이, 핸드 헬드 전자 디바이스는 예를 들어, 도 1에 도시된 핸드 헬드 전자 디바이스(102)일 수 있다. 핸드 헬드 전자 디바이스(102)는 예를 들어, 증강 및/또는 가상 현실 환경을 생성하도록 구성된 도 1, 2a 내지 2b, 3a 내지 3e에 도시된 HMD(100)와 페어링될 수 있다. 핸드 헬드 전자 디바이스(102)는 예를 들어, 유선 연결, 예를 들어 wifi 또는 블루투스를 통한 무선 연결 또는 다른 타입의 연결을 통해 HMD(100)와 동작 가능하게 결합 또는 페어링 그리고/또는 통신할 수 있다. 블록(710)에서, HMD(100) 및 핸드 헬드 전자 디바이스(102)가 활성화 및 페어링되고, 블록(720)에서, 증강 및/또는 가상 현실 경험이 개시된 후, 데이터 수집 및 데이터 합성이 핸드 헬드 전자 디바이스(102)의 포지션 및 움직임의 위치를 찾아서 트랙킹하고 핸드 헬드 전자 디바이스(102)의 움직임을 가상 환경에서의 대응하는 인터랙션 및/또는 움직임으로 전이시키기 위해 HMD(100) 및 핸드 헬드 전자 디바이스(102)에 의해 수행될 수 있다.
상기 주목한 바와 같이, 시각적 마커(125A)는 핸드 헬드 전자 디바이스(102)의 디스플레이 스크린 상에 렌더링될 수 있고 그리고/또는 시각 마커(125B)는 그렇지 않으면, 핸드 헬드 전자 디바이스(102) 상에 위치되거나 부착되거나 어태치될 수 있다. HMD(100)의 이미지 센서, 예를 들어 HMD(100)의 카메라(180) 또는 IR 일루미네이터 및 IR 센서는 블록(730)에서 카메라(180)의 시야를 스캐닝하고 시야 내에 이미지들을 수집할 수 있다. 그 다음, 시스템은 블록(740)에서, 핸드 헬드 전자 디바이스(102) 상의 시각적 마커(125A 및/또는 125B)에 포함될 것으로 알려진 미리 결정된 피쳐들에 대해 이미지들을 스캔할 수 있다. 이는 예를 들어, 상기 논의된 바와 같은 특정 비 반복 패턴, 복수의 별개의 코너들, 등을 포함할 수 있다. 이미지들 및 특히 검출된 피쳐들은 미리 결정된 피쳐들을 포함하는 시각적 마커(125A/125B)의 알려진 이미지들과 비교될 수 있다. 캡처된 이미지들은 알려진 이미지들과 비교될 수 있으며, HMD(100)에 대한 핸드 헬드 전자 디바이스(102)의 위치 및/또는 방위는, 피쳐들이 예를 들어, 핸드 헬드 전자 디바이스(102) 및 HMD(100)의 직교 정렬된 방위에서, 어떻게 나타나도록 알려져 있는 지에 비교하여 미리 결정된 피쳐들이 이미지에 어떻게 나타나는 지에 기초하여 결정될 수 있다. 일부 구현들에서, HMD(100)는 이 이미지 데이터를 실질적으로 연속적으로 수집하고 프로세스할 수 있다.
위치 데이터는 블록(750)에서, 핸드 헬드 전자 디바이스(102)의 움직임을 결정하기 위해 핸드 헬드 전자 디바이스(102)에 의해 프로세싱될 수 있고, 핸드 헬드 전자 디바이스(102)의 결정된 움직임은 블록(760)에서, HMD(100)에 의해 생성된 가상 환경에서 대응하는 인터랙션으로 전이될 수 있다. 예를 들어, 현재 시점에서 취해진 위치 및 움직임 및/또는 방위 데이터는, 데이터가 연속적으로 수집, 프로세싱 및 합성됨에 따라 실질적으로 연속적으로 갱신되는 움직임 궤적을 결정하기 위해, 이전 시점에서의 위치 및 움직임 및/또는 방위 데이터와 비교된다.
이 프로세스는 블록(770)에서 가상 경험이 종료됨을 결정될 때까지 반복적으로 수행될 수 있다.
이러한 배열에서, 핸드 헬드 전자 디바이스(102)에 포함된 시각적 마커(125A) 및/또는 시각적 마커(125B)는 수동 마커이며, 검출, 식별, 프로세싱 및 연속적인 트랙킹이 HMD(100)에 의해 모두 행해진다. 이러한 방식으로 핸드 헬드 전자 디바이스(102)의 움직임의 위치를 찾고 트랙킹하는 것은 하나의 시각적 마커(125A/125B)로 신뢰성있게 달성될 수 있다. 그러나, 이러한 방식으로 핸드 헬드 전자 디바이스(102)의 위치를 찾고 트랙킹하는 것은 HMD(100)가 역시 가상 환경을 생성하고 디스플레이(140)상의 사용자에게 가상 환경을 디스플레이하는 동안 HMD(100)의 프로세싱 및 파워 리소스들에 의존한다.
도 8은 여기서 설명된 기법들과 함께 사용될 수 있는 컴퓨터 디바이스(800) 및 모바일 컴퓨터 디바이스(850)의 예를 도시한다. 컴퓨팅 디바이스(800)는 프로세서(802), 메모리(804), 저장 디바이스(806), 메모리(804) 및 고속 확장 포트(810)에 연결된 고속 인터페이스(808), 그리고 저속 버스(814) 및 저장 디바이스(806)에 연결된 저속 인터페이스(812)를 포함한다. 컴포넌트들(802, 804, 807, 808, 810, 및 812)의 각각은 다양한 버스들을 이용하여 상호연결되고, 공통 마더보드 상에 또는 다른 방식들로 적절하게 고정(mount)될 수 있다. 프로세서(802)는 고속 인터페이스(808)에 결합된 디스플레이(816)와 같은 외부 입/출력 디바이스 상의 GUI에 대한 그래픽 정보를 디스플레이하기 위해 메모리(804)에 또는 저장 디바이스(806) 상에 저장된 명령어들을 포함하여, 컴퓨팅 디바이스(800) 내에서의 실행을 위한 명령어들을 프로세스할 수 있다. 다른 구현들에서, 복수의 프로세서들 및/또는 복수의 버스들이 복수의 메모리들 및 메모리 타입들과 함께 적절하게 사용될 수 있다. 또한, 복수의 컴퓨팅 디바이스들(800)이 연결되며, 각각의 디바이스는 (예컨대, 서버 뱅크, 블레이드 서버들의 그룹 또는 다중-프로세서 시스템으로서) 필수 동작들의 부분들을 제공한다..
메모리(804)는 컴퓨팅 디바이스(800) 내에 정보를 저장한다. 일 구현에서, 메모리(804)는 휘발성 메모리 유닛 또는 유닛들이다. 다른 구현에서, 메모리(804)는 비휘발성 메모리 유닛 또는 유닛들이다. 메모리(804)는 또한 자기 또는 광학 디스크와 같은 컴퓨터 판독가능 매체의 다른 형태일 수 있다.
저장 디바이스(806)는 컴퓨팅 디바이스(800)에 대한 매스 저장을 제공할 수 있다. 일 구현에서, 저장 디바이스(806)는 플로피 디스크 디바이스, 하드 디스크 디바이스, 광학 디스크 디바이스 또는 테이프 디바이스, 플래시 메모리 또는 다른 유사한 고체 상태 메모리 디바이스 또는, 저장 영역 네트워크 또는 다른 구성들 내의 디바이스들을 포함하는 디바이스들의 어레이와 같은 컴퓨터 판독가능 매체일 수 있거나 이를 포함할 수 있다. 컴퓨터 프로그램 물은 정보 캐리어에 유형으로 수록된다. 컴퓨터 프로그램 물은 또한, 명령어들을 포함하며, 상기 명령어들은 실행될 때 상기 기술된 방법들과 같은 하나 이상의 방법들을 수행한다. 정보 캐리어는 메모리(804), 저장 디바이스(806) 또는 프로세서(802) 상의 메모리와 같은 컴퓨터 또는 머신 판독가능 매체이다.
고속 제어기(808)는 컴퓨팅 디바이스(800)에 대한 대역폭 집약적 동작들을 관리하며, 저속 제어기(812)는 낮은 대역폭 집약적 동작(lower bandwidth-intensive operation)들을 관리한다. 이러한 기능들의 할당은 단지 예시적일 뿐이다. 일 구현에서, 고속 제어기(808)는 메모리(804), (예컨대, 그래픽 프로세서 또는 가속도계를 통해) 디스플레이(816)에 결합되고, 다양한 확장 카드들(미도시)을 받아들일 수 있는 고속 확장 포트들(810)에 결합된다. 상기 구현에서, 저속 제어기(812)는 저장 디바이스(806) 및 저속 확장 포트(814)에 결합된다. 다양한 통신 포트들(예컨대, USB, 블루투스, 이더넷, 무선 이더넷)을 포함할 수 있는 저속 확장 포트는 키보드, 포인팅 디바이스, 스캐너와 같은 하나 이상의 입력/출력 디바이스들에 또는, 예컨대 네트워크 어댑터를 통해 스위치 또는 라우터와 같은 네트워킹 디바이스에 결합될 수 있다.
컴퓨팅 디바이스(800)는 도면에 도시된 바와 같이 다수의 서로 다른 형태들로 구현될 수 있다. 예를 들어, 이는 표준 서버(820)로서 또는 이러한 서버들의 그룹에 복수번 구현될 수 있다. 이는 또한, 랙(rack) 서버 시스템(824)의 일부로서 구현될 수 있다. 추가적으로, 이는 랩탑 컴퓨터(822)와 같은 개인용 컴퓨터로 구현될 수 있다. 대안적으로는, 컴퓨팅 디바이스(800)로부터의 컴포넌트들은 디바이스(850)와 같은 모바일 디바이스(미도시) 내의 다른 컴포넌트들과 결합될 수 있다. 이러한 디바이스들 각각은 컴퓨팅 디바이스(800, 850) 중 하나 이상을 포함할 수 있고, 전체 시스템은 서로와 통신하는 복수의 컴퓨팅 디바이스들(800, 850)로 구성될 수 있다.
컴퓨팅 디바이스(850)는 다른 컴포넌트들 중에서도 특히, 프로세서(852), 메모리(864), 디스플레이(854)와 같은 입력/출력 디바이스, 통신 인터페이스(866) 및 송수신기(868)를 포함한다. 디바이스(850)에는 또한, 추가적인 저장을 제공하기 위해 마이크로-드라이브 또는 다른 디바이스와 같은 저장 디바이스가 제공될 수 있다. 컴포넌트들(850, 852, 864, 854, 866 및 868) 각각은 다양한 버스들을 이용하여 상호연결되고, 여러 컴포넌트들은 공통 마더보드 상에 또는 다른 방식들로 적절하게 고정될 수 있다.
프로세서(852)는 메모리(864)에 저장된 명령어들을 포함하여, 컴퓨팅 디바이스(850) 내의 명령어들을 실행할 수 있다. 프로세서는 또한, 개별적인 그리고 복수의 아날로그 및 디지털 프로세서들을 포함하는 칩들의 칩세트로서 구현될 수 있다. 프로세서는 예컨대, 사용자 인터페이스들, 디바이스(850)에 의해 실행되는 어플리케이션들 및 디바이스(850)에 의한 무선 통신의 제어와 같이, 디바이스(850)의 다른 컴포넌트들의 조직화(coordination)를 제공할 수 있다.
프로세서(852)는 디스플레이(854)에 결합된 제어 인터페이스(858) 및 디스플레이 인터페이스(856)를 통해 사용자와 통신할 수 있다. 디스플레이(854)는 예컨대, TFT LCD 또는 OLED 디스플레이 또는 다른 적절한 디스플레이 기술일 수 있다. 디스플레이 인터페이스(856)는 사용자에게 그래픽 및 다른 정보를 제시하기 위해 디스플레이(854)를 구동하기 위한 적절한 회로망을 포함할 수 있다. 제어 인터페이스(858)는 사용자로부터 커맨드들을 수신하고 이들을 프로세서(852)에 제출하기 위해 컨버젼할 수 있다. 추가적으로, 외부 인터페이스(862)가 다른 디바이스들과의 디바이스(850)의 근거리 통신을 가능하게 하도록 프로세서(852)와의 통신에 제공될 수 있다. 외부 인터페이스(862)는 예컨대, 일부 구현들에서 유선 통신을 또는 다른 구현들에서 무선 통신을 제공할 수 있고, 복수의 인터페이스들이 또한 사용될 수 있다.
메모리(864)는 컴퓨팅 디바이스(850) 내에 정보를 저장한다. 메모리(864)는 컴퓨터 판독가능 매체 또는 매체들, 휘발성 메모리 유닛 또는 유닛들 또는 비휘발성 메모리 유닛 또는 유닛들 중 하나 이상으로 구현된다. 확장 메모리(874)가 또한, 제공되며, 예컨대, SIMM((Single In Line Memory Module)) 카드 인터페이스를 포함할 수 있는 확장 인터페이스(872)를 통해 디바이스(850)에 연결될 수 있다. 이러한 확장 메모리(874)는 디바이스(850)에 대한 추가적인(extra) 저장 공간을 제공할 수 있거나 또는 디바이스(850)에 대한 어플리케이션들 또는 다른 정보를 또한 저장할 수 있다. 특히, 확장 메모리(874)는 상기에 기술된 프로세스들을 수행 또는 보충하기 위한 명령어들을 포함할 수 있고, 보안 정보 또한 포함할 수 있다. 따라서, 예컨대, 확장 메모리(874)는 디바이스(850)에 대한 보안 모듈로서 제공될 수 있고, 디바이스(850)의 보안 사용을 허가하는 명령어들로 프로그래밍될 수 있다. 추가적으로, 보안 어플리케이션들이, 해킹불가능한 방식으로 SIMM 카드 상에 식별 정보를 배치하는 것과 같이, 추가적인 정보와 함께 SIMM 카드를 통해 제공될 수 있다.
메모리는 하기에 논의되는 바와 같이 예컨대, 플래시 메모리 및/또는 MRAM 메모리를 포함할 수 있다. 일 구현에서, 컴퓨터 프로그램 물은 정보 캐리어에 유형으로 수록된다. 컴퓨터 프로그램 물은 명령어들을 포함하며, 상기 명령어들은 실행될 때 상기 기술된 방법들과 같은 하나 이상의 방법들을 수행한다. 정보 캐리어는 메모리(864), 확장 메모리(874) 또는 프로세서(852) 상의 메모리와 같은 컴퓨터 또는 머신 판독가능 매체이며, 예컨대, 트랜시버(868) 또는 외부 인터페이스(862)를 통해 수신될 수 있다.
디바이스(850)는 필요한 경우 디지털 신호 프로세싱 회로망을 포함할 수 있는 통신 인터페이스(866)를 통해 무선으로 통신할 수 있다. 통신 인터페이스(866)는 다른 것들 중에서도 특히, GSM 음성 호출들, SMS, EMS 또는 MMS 메시징, CDMA, TDMA, PDC, WCDMA, CDMA2000 또는 GPRS와 같은 다양한 모드들 또는 프로토콜들 하의 통신들을 제공할 수 있다. 이러한 통신은 예컨대, 무선 주파수 트랜시버(868)를 통해 발생될 수 있다. 추가적으로, 단거리 통신은 예컨대, 블루투스, 와이파이 또는 다른 이러한 트랜시버(미도시)를 이용하여 발생될 수 있다. 추가적으로, GPS 수신기 모듈(870)은 디바이스(850) 상에서 실행되는 어플리케이션들에 의해 적절하게 사용될 수 있는 추가적인 네비게이션 및 위치 관련 무선 데이터를 디바이스(850)에 제공할 수 있다.
디바이스(850)는 또한, 사용자로부터 발화 정보를 수신하고 이를 이용가능한 디지털 정보로 변환할 수 있는 오디오 코덱(860)을 이용하여 들을 수 있게(audibly) 통신할 수 있다. 마찬가지로, 오디오 코덱(860)은 예컨대 디바이스(850)의 해드셋에서 가령, 스피커를 통해, 사용자로부터 가청 사운드를 생성할 수 있다. 이러한 사운드는 음성 전화 호출들로부터의 사운드를 포함할 수 있고, 레코딩된 사운드(예컨대, 음성 메시지들, 음악 파일들, 등)를 포함할 수 있고, 그리고 또한, 디바이스(850) 상에서 동작하는 어플리케이션들에 의해 생성되는 사운드를 포함할 수 있다.
컴퓨팅 디바이스(850)는 도면에 도시된 바와 같이 다수의 서로 다른 형태들로 구현될 수 있다. 예를 들어, 이는 셀룰러 전화기(880)로서 구현될 수 있다. 이는 또한, 스마트폰(882), 개인용 디지털 단말기(PDA) 또는 다른 유사한 모바일 디바이스의 일부로서 구현될 수 있다.
본 명세서에 기술된 시스템들 및 기법들의 다양한 구현들은 디지털 전자 회로망, 집적 회로망, 특별히 설계된 ASIC(application specific integrated circuits), 컴퓨터 하드웨어, 펌웨어, 소프트웨어 및/또는 이들의 조합으로 실현될 수 있다. 이러한 다양한 구현들은 하나 이상의 컴퓨터 프로그램들로된 구현을 포함할 수 있고, 상기 하나 이상의 컴퓨터 프로그램들은, 적어도 하나의 프로그램가능한 프로세서를 포함하는 프로그래밍가능 시스템 상에서 실행가능 및/또는 해석가능하며, 상기 적어도 하나의 프로그램가능한 프로세서는 데이터 및 명령어들을 저장 시스템, 적어도 하나의 입력 디바이스, 및 적어도 하나의 출력 디바이스로부터 수신/에 전송하도록 결합된, 특수 또는 범용 프로세서일 수 있다.
이러한 컴퓨터 프로그램들(프로그램들, 소프트웨어, 소프트웨어 어플리케이션들 또는 코드로도 알려짐)은 프로그램가능한 프로세서 용 머신 명령어들을 포함하며, 고수준(high-level) 절차 및/또는 객체 지향 프로그래밍 언어 및/또는 어셈블리/머신 언어로 구현될 수 있다. 본 명세서에서 사용되는 "머신 판독가능 매체", "컴퓨터 판독가능 매체"라는 용어는 머신 판독가능 신호로서 머신 명령어들을 수신하는 머신 판독가능 매체를 포함하여, 프로그램가능한 프로세서에 머신 명령어들 및/또는 데이터를 제공하기 위해 이용되는 어떤 컴퓨터 프로그램 물, 장치 및/또는 디바이스(예를 들어, 자기 디스크(discs), 광 디스크(disks), 메모리, 프로그램가능 로직 디바이스(PLD))를 나타낸다. 용어 "머신 판독가능 신호"는 프로그램가능한 프로세서에 머신 명령어들 및/또는 데이터를 제공하기 위해 이용되는 어떤 신호를 나타낸다.
사용자와의 인터랙션을 제공하기 위해, 본 명세서에 설명된 시스템 및 기법들은 정보를 사용자에게 디스플레이하기 위한 디스플레이 디바이스(예를 들어, CRT 또는 LCD 모니터) 및 사용자가 컴퓨터에 입력을 제공할 수 있게 하는 키보드 및 포인팅 디바이스(예를 들어, 마우스 또는 트랙볼)를 갖는 컴퓨터 상에서 구현될 수 있다. 다른 종류의 디바이스들이 마찬가지로, 사용자와의 인터랙션을 제공하는 데 사용될 수 있는 바, 예를 들어, 사용자에게 제공되는 피드백은 어떤 형태의 감각적 피드백(예를 들어, 시각적 피드백, 청각적 피드백 또는 촉각적 피드백) 일 수 있고, 사용자로부터의 입력은 음향, 스피치 또는 촉각 입력을 포함하는 어떤 형태로 수신될 수 있다.
본 명세서에 기술된 시스템들 및 기법들은 (예컨대, 데이터 서버로서) 백-엔드 컴포넌트들을 포함하거나 또는 미들웨어 컴포넌트(예컨대, 어플리케이션 서버)를 포함하거나 또는 프런트-엔드 컴포넌트(예컨대, 사용자가 본 명세서에 기술된 시스템들 및 기법들의 구현물과 인터랙션할 수 있게 하는 그래픽 사용자 인터페이스 또는 웹 브라우져를 가지는 클라이언트 컴퓨터) 또는 이러한 백-엔드, 미들웨어 또는 프런트-엔드 컴포넌트들의 어떤 조합을 포함하는 컴퓨팅 시스템으로 구현될 수 있다. 시스템의 컴포넌트들은 디지털 데이터 통신(예컨대, 통신 네트워크)의 어떤 형태 또는 매체에 의해 상호연결될 수 있다. 통신 네트워크들의 예들은 로컬 영역 네트워크("LAN") 및 광역 네트워크("WAN") 및 인터넷을 포함한다.
컴퓨팅 시스템은 클라이언트들 및 서버들을 포함할 수 있다. 클라이언트와 서버는 일반적으로 서로 원격이며 전형적으로 통신 네트워크를 통해 인터랙션한다. 클라이언트와 서버의 관계는 각각의 컴퓨터에서 실행되고 서로 클라이언트-서버 관계를 갖는 컴퓨터 프로그램들에 의해 발생된다.
일부 구현들에서, 도 8에 도시된 컴퓨팅 디바이스는, 가상 현실(VR 헤드셋/HMD 디바이스(890))과 인터페이스하는 센서들을 포함할 수 있다. 예를 들어, 도 8에 도시된 컴퓨팅 디바이스(850) 또는 다른 컴퓨팅 디바이스에 포함된 하나 이상의 센서들은, VR 헤드셋(890)에 입력을 제공하거나 또는 일반적으로 VR 공간에 입력을 제공할 수 있다. 센서들은 이들로만 한정되는 것은 아니지만, 터치스크린, 가속도계들, 자이로스코프들, 압력 센서들, 생체 센서들, 온도 센서들, 습도 센서들 및 주변 광 센서들을 포함할 수 있다. 컴퓨팅 디바이스(850)는 VR 공간 내의 컴퓨팅 디바이스의 절대 위치 및/또는 검출된 회전을 결정하기 위해 센서를 사용할 수 있고, 이는 그 다음, VR 공간으로의 입력으로서 사용될 수 있다. 예를 들어, 컴퓨팅 디바이스(850)는 제어기, 레이저 포인터, 키보드, 무기 등과 같은 가상 객체로서 VR 공간에 통합될 수 있다. VR 공간으로 통합될 때 사용자에 의한 컴퓨팅 디바이스/가상 객체의 포지셔닝은 사용자가 VR 공간에서 특정 방식들로 가상 객체를 보도록 컴퓨팅 디바이스를 포지셔닝할 수 있게 한다. 예를 들어, 가상 객체가 레이저 포인터를 표시하는 경우, 이것이 실제 레이저 포인터인 것처럼 사용자는 컴퓨팅 디바이스를 조작할 수 있다. 사용자는 컴퓨팅 디바이스를 좌우, 상하, 원형, 등으로 움직일 수 있으며 레이저 포인터를 사용하는 것과 유사한 방식으로 디바이스를 사용할 수 있다.
일부 구현들에서, 컴퓨팅 디바이스(850)에 포함되거나 또는 컴퓨팅 디바이스(850)에 연결되는 하나 이상의 입력 디바이스들은 VR 공간에 대한 입력으로서 사용될 수 있다. 입력 디바이스들은 이들로만 한정되는 것은 아니지만, 터치스크린, 키보드, 하나 이상의 버튼들, 트랙패드, 터치패드, 포인팅 디바이스, 마우스, 트랙볼, 조이스틱, 카메라, 마이크로폰, 이어폰 또는 입력 기능이 있는 버드들, 게임 컨트롤러 또는 다른 연결 가능한 입력 디바이스를 포함할 수 있다. 컴퓨팅 디바이스가 VR 공간에 통합될 때 컴퓨팅 디바이스(850) 상에 포함된 입력 디바이스와 사용자가 인터랙션하는 것은 특정한 액션이 VR 공간에서 발생하게 할 수 있다.
일부 구현들에서, 컴퓨팅 디바이스(850)의 터치 스크린은 VR 공간에서 터치 패드로서 렌더링될 수 있다. 사용자는 컴퓨팅 디바이스(850)의 터치 스크린과 인터랙션할 수 있다. 인터랙션들은 예를 들어, VR 공간에서 렌더링된 터치 패드 상의 움직임들로서 VR 헤드셋(890)에 렌더링된다. 렌더링된 움직임들은 VR 공간에서 가상 객체를 제어할 수 있다.
일부 구현들에서, 컴퓨팅 디바이스(850)에 포함된 하나 이상의 출력 디바이스들은 VR 공간에서 VR 헤드셋(890)의 사용자에게 출력 및/또는 피드백을 제공할 수 있다. 출력 및 피드백은 시각적, 촉각적(tactical) 또는 청각적일 수 있다. 출력 및/또는 피드백은 이들로만 한정되는 것은 아니지만, 진동, 하나 이상의 조명(light)들 또는 스트로브의 턴 온 및 오프 또는 깜박임 및/또는 플래쉬, 알람 울리기, 차임을 치는 것, 노래 재생 및 오디오 파일의 재생을 포함할 수 있다. 출력 디바이스들은 이들로만 한정되는 것은 아니지만, 진동 모터들, 진동 코일들, 압전 디바이스들, 정전기 디바이스들, 발광 다이오드(LED)들, 스트로브들 및 스피커들을 포함할 수 있다.
일부 구현들에서, 컴퓨팅 디바이스(850)는 컴퓨터로 생성된 3D 환경에서 다른 객체로서 나타날 수 있다. 사용자에 의한 컴퓨팅 디바이스(850)와의 인터랙션(예를 들어, 터치 스크린을 회전, 쉐이킹, 접촉하는 것, 터치 스크린을 가로 지르는 손가락의 스와이핑)은 VR 공간에서 객체와의 인터랙션들로서 해석될 수 있다. VR 공간 내의 레이저 포인터의 예에서, 컴퓨팅 디바이스(850)는 컴퓨터로 생성된 3D 환경에서 가상 레이저 포인터로서 나타난다. 사용자가 컴퓨팅 디바이스(850)를 조작함에 따라, VR 공간에서의 사용자는 레이저 포인터의 움직임을 보게 된다. 사용자는 컴퓨팅 디바이스(850) 상의 또는 VR 헤드셋(890) 상의 VR 환경에서 컴퓨팅 디바이스(850)와의 인터랙션들로부터 피드백을 수신한다.
일부 구현들에서, 컴퓨팅 디바이스(850)는 터치 스크린을 포함할 수 있다. 예를 들어, 사용자는 터치 스크린에서 일어나는 일을 VR 공간에서 일어나는 일로 모방할 수 있는 특정 방식으로 터치 스크린과 인터랙션할 수 있다. 예를 들어, 사용자는 터치 스크린 상에 디스플레이된 8oom 콘텐트에 핀칭(pinching) 타입 모션을 사용할 수 있다. 터치 스크린 상의 이러한 핀칭 타입 모션은 VR 공간에 제공된 정보가 주밍(zoom)되도록 할 수 있다. 다른 예에서, 컴퓨팅 디바이스는 컴퓨터로 생성 3D 환경에서 가상 책으로서 렌더링될 수 있다. VR 공간에서, 책의 페이지들은 VR 공간에 디스플레이될 수 있고 터치 스크린에 걸친 사용자의 손가락의 스와이핑은 가상 책의 페이지를 넘기는 것/뒤집는 것(flip)으로서 해석될 수 있다. 각각의 페이지가 넘겨짐/뒤집힘에 따라, 페이지 컨텐츠 변화를 보는 것에 추가적으로, 사용자는 책에서 페이지를 넘기는 사운드와 같은 오디오 피드백을 제공받을 수 있다.
일부 구현들에서, 컴퓨팅 디바이스(예를 들어, 마우스, 키보드)에 추가적으로 하나 이상의 입력 디바이스들이 컴퓨터로 생성된 3D 환경에 렌더링될 수 있다. 렌더링된 입력 디바이스들(예를 들어, 렌더링된 마우스, 렌더링된 키보드)은 VR 공간에서 객체들을 제어하기 위해 VR 공간에 렌더링된 바와 같이 사용될 수 있다.
컴퓨팅 디바이스(800)는 랩탑들, 데스크탑들, 워크 스테이션들, PDA들, 서버들, 블레이드 서버들, 메인 프레임들, 및 다른 적절한 컴퓨터들을 포함하는 다양한 형태의 디지털 컴퓨터들 및 디바이스들을 표시하는 것으로 의도된다. 컴퓨팅 디바이스(850)는 개인 휴대 정보 단말기, 셀룰러 전화기, 스마트폰들 및 다른 유사한 컴퓨팅 디바이스들과 같은 다양한 형태의 모바일 디바이스들을 표시하도록 의도된 것이다. 여기에 나타낸 컴포넌트들, 이들의 연결들 및 관계들, 및 이들의 기능들은 단지 예시적인 것을 의미하며, 본 명세서에 기술된 및/또는 청구된 본 발명들의 구현들을 제한하는 것을 의미하지 않는다.
다수의 실시예들이 기술되었다. 그럼에도 불구하고, 본 명세서의 사상 및 범위를 벗어남이 없이 다양한 수정들이 이루어질 수 있음이 이해될 것이다.
추가적으로, 도면들에 도시된 논리 흐름들은 바람직한 결과를 달성하기 위해 도시된 특정 순서 또는 순차적 순서를 요하지 않는다. 추가적으로, 다른 단계들이 제공될 수 있거나 또는 다른 단계들이 설명된 흐름들로부터 제거될 수 있으며, 다른 컴포넌트들이 설명된 시스템들에 추가되거나 설명된 시스템들로부터 제거될 수 있다. 따라서, 다른 실시예들은 다음의 특허 청구 범위 내에 있다.
설명된 구현들의 특정 피쳐들이 본 명세서에 설명된 바와 같이 예시되었지만, 많은 수정들, 대체들, 변경들 및 균등물이 이제 당업자에게 발생할 것이다. 그러므로, 첨부된 특허 청구 범위는 구현의 범위 내에 있는 그러한 모든 수정들 및 변경들을 포함하도록 의도됨이 이해되어야 한다. 이들은 제한이 아닌 예로서 만 제시되었고, 형태 및 세부 사항의 다양한 변경들이 이루어질 수 있음이 이해되어야 한다. 여기에 설명된 장치들 및/또는 방법들의 어떤 부분은 상호 배타적인 조합들을 제외하고는 어떤 조합으로 조합될 수 있다. 본 명세서에 설명된 구현들은 기술된 서로 다른 구현들의 기능들, 컴포넌트들 및/또는 피쳐들의 다양한 조합들 및/또는 서브조합들을 포함할 수 있다.
예시적인 실시예에 따르면, 핸드 헬드 스마트폰과 같은 제1 전자 디바이스를 헤드 장착형 디스플레이와 같은 제2 전자 디바이스에 의해 생성된 가상 현실 환경에서 트랙킹하는 시스템은, 상기 제1 전자 디바이스 또는 상기 제2 전자 디바이스 중 하나에 포함된 적어도 하나의 시각적 마커의 상기 제1 전자 디바이스 또는 상기 제2 전자 디바이스 중 다른 하나에 포함된 카메라에 의한 검출을 포함할 수 있다. 시각적 마커들의 알려진 피처들에 대응하는 시야 내에서 검출된 피쳐들은 제2 전자 디바이스에 대한 제1 전자 디바이스의 움직임의 위치를 찾고 트랙킹하기 위해 사용될 수 있어서, 제2 전자 디바이스의 움직임은 상기 제2 전자 디바이스에 의해 생성된 가상 경험에서 인터랙션으로 전이될 수 있다.
본 출원의 요지의 일부를 형성하고 특허 청구 범위의 일부가 될 수 있는 실시예들을 한정하는 추가의 예들이 다음과 같이 요약된다.
예시 1: 방법은 제1 전자 디바이스 및 제2 전자 디바이스가 주변 환경에서 동작하는 동안 서로 통신하도록 상기 제1 전자 디바이스를 상기 제2 전자 디바이스와 동작가능하게 결합하는 단계 - 상기 제2 디바이스는 상기 주변 환경에서 동작하는 동안 가상 환경을 생성 및 디스플레이하도록 구성됨 - 와, 상기 제1 전자 디바이스 또는 상기 제2 전자 디바이스 중 하나의 센서에 의해 상기 제1 전자 디바이스 또는 상기 제2 전자 디바이스 중 다른 하나 상에 적어도 하나의 시각적 마커를 검출하는 단계와, 상기 적어도 하나의 시각적 마커에서 검출된 피쳐들에 기초하여 상기 주변 환경에서 상기 제1 전자 디바이스의 움직임을 검출 및 트랙킹하는 단계와 그리고 상기 주변 환경에서의 상기 제1 전자 디바이스의 검출 및 트랙킹된 움직임을 상기 가상 환경에서의 대응하는 액션으로 전이시키는 단계를 포함한다.
예시 2: 예시 1의 방법에 있어서, 상기 적어도 하나의 시각적 마커를 검출하는 단계 및 상기 주변 환경에서 상기 제1 전자 디바이스의 움직임을 검출 및 트랙킹하는 단계는, 상기 제1 전자 디바이스의 광학 센서를 사용하여 광학 데이터를 수집하는 것 - 상기 광학 데이터는 상기 제2 전자 디바이스의 이미지들을 포함함 - 과, 상기 수집된 광학 데이터를 스캐닝하고 상기 스캐닝된 광학 데이터에서 복수의 미리 결정된 피쳐들을 검출하는 것과, 상기 검출된 복수의 미리 결정된 피쳐들을 상기 제2 전자 디바이스 상의 적어도 하나의 시각적 마커의 알려진 이미지들과 비교하는 것과, 상기 복수의 미리 결정된 피쳐들의 검출에 기초하여 상기 수집된 광학 데이터 내의 상기 적어도 하나의 시각적 마커를 식별하는 것과 그리고 식별된 적어도 하나의 시각적 마커에 기초하여 제1 전자 디바이스에 대한 상기 제2 전자 디바이스의 위치를 결정하는 것을 포함한다.
예시 3: 예시 2의 방법에 있어서, 상기 검출된 복수의 미리 결정된 피쳐들은 복수의 코너들 또는 복수의 에지들 중 적어도 하나의 불규칙한 패턴을 포함하고, 상기 검출된 복수의 미리 결정된 피쳐들을 상기 적어도 하나의 시각적 마커의 알려진 이미지와 비교하는 것과, 상기 수집된 광학 데이터에서 적어도 하나의 시각적 마커를 식별하는 것은, 상기 검출된 복수의 미리 결정된 피쳐들의 불규칙한 패턴의 방위를 상기 적어도 하나의 시각적 마커의 알려진 이미지 내의 대응하는 복수의 피쳐들의 방위와 비교하는 것과 그리고 상기 비교에 기초하여 상기 제1 전자 디바이스에 대한 상기 제2 전자 디바이스의 포지션 및 방위를 결정하는 것을 포함한다.
예시 4: 예시 3의 방법에 있어서, 상기 제1 전자 디바이스의 광학 센서를 사용하여 광학 데이터를 수집하는 것은 적외선 일루미네이터에 의해 제공된 일루미네이션(illumination)으로 상기 제1 전자 디바이스의 적외선 센서를 사용하여 상기 제2 전자 디바이스의 이미지들을 캡처하는 것을 포함하며, 상기 적어도 하나의 시각적 마커는 적외선 일루미네이터에 의해 일루미네이션되는 동안 적외선 센서에만 가시적인 상기 제1 전자 디바이스 상의 적외선 패턴을 포함한다.
예시 5: 예시 2 내지 4 중 하나의 방법에 있어서, 상기 적어도 하나의 시각적 마커를 검출하는 것 및 상기 주변 환경에서 상기 제1 전자 디바이스의 움직임을 검출 및 추적하는 것은 또한, 상기 제2 전자 디바이스의 위치의 역변환을 취하고 상기 제2 전자 디바이스에 대한 상기 제1 전자 디바이스의 위치를 결정하는 것과, 상기 제1 전자 디바이스의 움직임을 추적하기 위해 상기 제1 전자 디바이스의 현재 위치를 상기 제1 전자 디바이스의 이전 위치와 비교하는 것을 포함한다.
예시 6: 예시 5의 방법에 있어서, 상기 제1 전자 디바이스는 핸드 헬드 제어기이고, 상기 제2 전자 디바이스는 헤드 장착형 디스플레이 디바이스이고, 상기 광학 센서는 상기 핸드 헬드 제어기의 전방 카메라이고, 상기 적어도 하나의 시각적 마커는 상기 헤드 장착형 디스플레이 디바이스의 제1 표면 상의 제1의 2차원 바코드 및 상기 헤드 장착형 디스플레이 디바이스의 제2 표면 상의 제2의 2차원 바코드를 포함한다.
예시 7: 예시 1 내지 6 중 하나의 방법에 있어서, 상기 적어도 하나의 시각적 마커를 검출하는 것 및 상기 주변 환경에서 상기 제1 전자 디바이스의 움직임을 검출 및 트랙킹하는 것은, 상기 제2 전자 디바이스의 광학 센서를 사용하여 이미지 데이터를 수집하는 것 - 상기 이미지 데이터는 상기 제1 전자 디바이스의 이미지들을 포함함 - 과, 수집된 광학 데이터를 스캐닝하고 상기 스캐닝된 광학 데이터 내의 복수의 미리 결정된 피쳐들을 검출하는 것과, 상기 검출된 복수의 미리 결정된 피처들을 상기 제2 전자 디바이스 상의 상기 적어도 하나의 시각적 마커의 알려진 이미지들과 비교하는 것과, 상기 수집된 광학 데이터에서 상기 적어도 하나의 시각적 마커를 식별하는 것과, 상기 복수의 미리 결정된 피쳐들의 검출에 기초하여 상기 식별된 적어도 하나의 시각적 마커에 기초하여 상기 제2 전자 디바이스에 대한 상기 제1 전자 디바이스의 위치를 결정하는 것과 그리고 상기 제1 전자 디바이스의 움직임을 트랙킹하기 위해 상기 제1 전자 디바이스의 현재 위치를 상기 제1 전자 디바이스의 이전 위치와 비교하는 것을 포함한다.
예시 8: 예시 7의 방법에 있어서, 상기 검출된 복수의 미리 결정된 피쳐들은 복수의 코너들 또는 복수의 에지들 중 적어도 하나의 불규칙한 패턴을 포함하고, 상기 검출된 복수의 미리 결정된 피쳐들을 상기 적어도 하나의 시각적 마커의 알려진 이미지들과 비교하는 것과, 수집된 광학 데이터에서 적어도 하나의 시각적 마커를 식별하는 것은, 검출된 복수의 미리 결정된 피쳐들의 불규칙한 패턴의 방위를 적어도 하나의 시각적 마커의 알려진 이미지 내의 대응하는 복수의 피쳐들의 방위와 비교하는 것과, 비교에 기초하여 제1 전자 디바이스에 대한 제2 전자 디바이스의 포지션 및 방위를 결정하는 것을 포함한다.
예시 9: 예시 8의 방법에 있어서, 상기 제2 전자 디바이스의 광학 센서를 사용하여 광학 데이터를 수집하는 것은, 적외선 일루미네이터에 의해 제공된 일루미네이션으로 상기 제2 전자 디바이스의 적외선 센서를 사용하여 상기 제1 전자 디바이스의 이미지들을 캡처하는 것을 포함하며, 상기 적어도 하나의 시각적 마커는 적외선 일루미네이터에 의해 일루미네이션되는 동안 적외선 센서에만 가시적인 상기 제1 전자 디바이스 상에 정의된 적외선 패턴을 포함한다.
예시 10: 예시 7 내지 9 중 하나의 방법에 있어서, 상기 제1 전자 디바이스는 핸드 헬드 제어기이고, 상기 제2 전자 디바이스는 헤드 장착형 디스플레이 디바이스이고, 상기 광학 센서는 상기 헤드 장착형 디스플레이 디바이스의 카메라이고, 상기 시각적 마커는 상기 핸드 헬드 제어기의 디스플레이 스크린 상에 렌더링된 또는 상기 핸드 헬드 제어기의 외부 표면 상에 위치된 2차원 바코드이다.
예시 11: 시스템은 광학 센서 및 프로세서를 포함하는 핸드 헬드 전자 디바이스를 포함하고, 상기 핸드 헬드 전자 디바이스는 하우징의 외부 표면 상에 복수의 시각적 마커들을 갖는 헤드 장착형 전자 디바이스와 동작 가능하게 결합되도록 구성되며, 상기 핸드 헬드 전자 디바이스는 상기 핸드 헬드 전자 디바이스의 광학 센서에 의해 캡처된 이미지들 및 캡처된 이미지들의 미리 결정된 피쳐들의 식별에 기초하여 상기 헤드 장착형 전자 디바이스에 대한 상기 핸드 헬드 전자 디바이스의 위치 및 움직임을 결정하도록 구성되며, 상기 미리 결정된 피쳐들은 복수의 시각적 마커들에 대응한다.
예시 12: 예시 11의 시스템에 있어서, 상기 복수의 시각적 마커들은 상기 헤드 장착형 전자 디바이스의 제1 표면 상의 제1 시각적 마커 및 상기 헤드 장착형 전자 디바이스의 제2 표면 상의 제2 시각적 마커를 포함한다.
예시 13: 예시 12의 시스템에 있어서, 상기 제1 시각적 마커는 상기 헤드 장착형 전자 디바이스의 상기 제1 표면과 관련된 제1 패턴에 의해 정의되고, 상기 제1 패턴은 제1 비반복 패턴 또는 제1 복수의 별개의 코너들 중 적어도 하나를 포함하고, 상기 제2 시각적 마커는 상기 헤드 장착형 전자 디바이스의 상기 제2 표면과 관련된 제2 패턴에 의해 정의되고, 상기 제2 패턴은 제2 비반복 패턴 또는 제2 복수의 별개의 코너들 중 적어도 하나를 포함한다.
예시 14: 예시 13의 시스템에 있어서, 상기 제1 패턴은 상기 헤드 장착형 전자 디바이스의 상기 제1 표면과 관련된 제1 적외선 패턴이고, 상기 제2 패턴은 상기 헤드 장착형 전자 디바이스의 상기 제2 표면과 관련된 제2 적외선 패턴이고, 상기 핸드 헬드 전자 디바이스의 상기 광학 센서는 적외선 일루미네이터 및 적외선 센서를 포함하여, 제1 및 제2 패턴들은 상기 제1 및 제2 패턴들이 적외선 일루미네이터에 의해 일루미네이션되는 동안 적외선 센서에만 가시적이게 된다.
예시 15: 예시 13 또는 14의 시스템에 있어서, 상기 헤드 장착형 전자 디바이스에 대한 상기 핸드 헬드 전자 디바이스의 위치 및 움직임을 결정함에 있어서, 상기 핸드 헬드 전자 디바이스는, 상기 광학 센서에 의해 수집된 이미지들에서 검출된 상기 제1 패턴의 방위를 상기 제1 시각적 마커의 알려진 이미지들에 포함된 상기 제1 패턴의 방위와 비교하고, 상기 광학 센서에 의해 수집된 이미지들에서 검출된 상기 제2 패턴의 방위를 상기 제2 시각적 마커의 알려진 이미지들에 포함된 상기 제2 패턴의 방위와 비교하고, 그리고 상기 비교들에 기초하여 상기 제1 전자 디바이스에 대한 상기 제2 전자 디바이스의 포지션 및 방위를 결정하도록 구성된다.
예시 16: 예시 12 내지 15 중 하나의 시스템에 있어서, 상기 제1 시각적 마커는 상기 헤드 장착형 전자 디바이스의 전방 표면과 관련된 제1의 2차원 바코드를 포함하고, 상기 제2 시각적 마커는 상기 헤드 장착형 전자 디바이스의 하방 표면과 관련된 제2의 2차원 바코드를 포함한다.
예시 17: 예시 12 내지 16 중 하나의 시스템에 있어서, 상기 제1 표면은 상기 헤드 장착형 전자 디바이스의 전방 표면이고, 상기 제2 표면은 상기 헤드 장착형 전자 디바이스의 하방 표면이다.
예시 18: 예시 11 내지 17 중 하나의 시스템에 있어서, 헤드 장착형 전자 디바이스는, 상기 헤드 장착형 전자 디바이스의 광학 센서를 사용하여 핸드 헬드 전자 디바이스의 이미지들을 캡처하고, 상기 광학 센서에 의해 캡처된 이미지들에서 복수의 미리 결정된 피쳐들을 검출하고, 상기 검출된 복수의 미리 결정된 피쳐들을 복수의 시각적 마커들의 알려진 이미지들과 비교하고, 상기 비교에 기초하여 적어도 하나의 시각적 마커를 식별하고, 그리고 상기 식별된 적어도 하나의 시각적 마커에 기초하여 상기 헤드 장착형 전자 디바이스에 대한 상기 핸드 헬드 전자 디바이스의 위치를 결정하도록 구성된 프로세서를 포함한다.
예시 19: 예시 18의 시스템에 있어서, 상기 식별된 적어도 하나의 시각적 마커는 핸드 헬드 전자 디바이스의 디스플레이 스크린 상에 렌더링되거나 핸드 헬드 전자 디바이스의 외부 표면 상에 위치된 2차원 바코드이다.
예시 20: 예시 11 내지 19 중 하나의 시스템에 있어서, 핸드 헬드 전자 디바이스는 핸드 헬드 제어기 또는 스마트폰이고, 주변 환경에서의 핸드 헬드 전자 디바이스의 움직임은 헤드 장착형 전자 디바이스에 의해 생성된 가상 환경에서의 대응하는 인터랙션으로 전이된다.
예시 21: 프로세서 상에서 실행될 때 예시 1 내지 10 중 하나의 방법을 수행하는 명령어들을 포함하는 컴퓨터 프로그램.

Claims (21)

  1. 방법으로서,
    제1 전자 디바이스 및 제2 전자 디바이스가 주변 환경에서 동작하는 동안 서로 통신하도록 상기 제1 전자 디바이스가 상기 제2 전자 디바이스와 동작 가능하게 결합(operably coupling)하는 단계 - 상기 제2 전자 디바이스는 사용자에 의해 사용되고 상기 주변 환경에서 동작하는 동안 가상 환경을 생성 및 디스플레이하도록 구성된 헤드 장착형 디스플레이 디바이스이고, 상기 제1 전자 디바이스는 상기 사용자에 의해 사용되는 핸드 헬드 제어기이며 -;
    상기 제1 전자 디바이스에 의해, 제1 모드에서 상기 제2 전자 디바이스에 대한 상기 제1 전자 디바이스의 움직임을 트랙킹하는 단계 - 상기 트랙킹하는 단계는,
    상기 제1 전자 디바이스가 상기 주변 환경에서 상기 제2 전자 디바이스와 독립적으로 움직일 때, 상기 제1 전자 디바이스에 의해 상기 제2 전자 디바이스 상의 적어도 하나의 시각적 마커를 검출하는 단계;
    상기 제1 전자 디바이스에 의해, 제1 전자 디바이스에 대한 제2 전자 디바이스의 위치를 결정하고, 상기 제2 전자 디바이스 상의 상기 적어도 하나의 시각적 마커에서 검출된 피처들(features)에 기초하여 상기 주변 환경에서의 상기 제1 전자 디바이스의 움직임을 트랙킹하는 단계를 포함하며,
    상기 제2 전자 디바이스의 위치를 결정하고, 상기 제1 전자 디바이스의 움직임을 트랙킹하는 단계는,
    상기 제1 전자 디바이스에 의해, 상기 제2 전자 디바이스의 위치의 역변환을 계산하고 그리고 상기 제2 전자 디바이스에 대한 상기 제1 전자 디바이스의 위치를 결정하는 단계; 그리고
    상기 제1 전자 디바이스에 의해, 상기 제1 전자 디바이스의 현재 위치를 상기 제1 전자 디바이스의 이전 위치와 비교하여 상기 제1 전자 디바이스의 움직임을 트랙킹하는 단계를 포함함 -;
    상기 제1 전자 디바이스에 의해, 상기 주변 환경에서 상기 제1 전자 디바이스의 상기 검출 및 트랙킹된 움직임을 상기 가상 환경에서의 대응하는 액션으로 전이시키는(translating) 단계를 포함하는 것을 특징으로 하는 방법.
  2. 제1항에 있어서,
    상기 적어도 하나의 시각적 마커를 검출하는 단계 및 상기 주변 환경에서 상기 제1 전자 디바이스의 움직임을 트랙킹하는 단계는:
    상기 제1 전자 디바이스의 광학 센서를 사용하여 광학 데이터를 수집하는 것 - 상기 광학 데이터는 상기 제2 전자 디바이스의 이미지들을 포함함 - 과;
    상기 수집된 광학 데이터를 스캐닝하고 상기 스캐닝된 광학 데이터에서 복수의 미리 결정된 피쳐들을 검출하는 것과;
    상기 검출된 복수의 미리 결정된 피쳐들을 상기 제2 전자 디바이스 상의 적어도 하나의 시각적 마커의 알려진 이미지들과 비교하는 것과; 그리고
    상기 복수의 미리 결정된 피쳐들의 검출에 기초하여 상기 수집된 광학 데이터 내의 상기 적어도 하나의 시각적 마커를 식별하는 것을 포함하는 것을 특징으로 하는 방법.
  3. 제2항에 있어서,
    상기 검출된 복수의 미리 결정된 피쳐들은 복수의 코너들 또는 복수의 에지들 중 적어도 하나의 불규칙한 패턴을 포함하고, 상기 검출된 복수의 미리 결정된 피쳐들을 상기 적어도 하나의 시각적 마커의 알려진 이미지들과 비교하는 것과, 상기 수집된 광학 데이터에서 적어도 하나의 시각적 마커를 식별하는 것은:
    상기 검출된 복수의 미리 결정된 피쳐들의 불규칙한 패턴의 방위(orientation)를 상기 적어도 하나의 시각적 마커의 알려진 이미지 내의 대응하는 복수의 피쳐들의 방위와 비교하는 것과; 그리고
    상기 비교에 기초하여 상기 제1 전자 디바이스에 대한 상기 제2 전자 디바이스의 포지션 및 방위를 결정하는 것을 포함하는 것을 특징으로 하는 방법.
  4. 제3항에 있어서,
    상기 제1 전자 디바이스의 광학 센서를 사용하여 광학 데이터를 수집하는 것은, 적외선 일루미네이터(infrared illuminator)에 의해 제공된 일루미네이션(illumination)으로 상기 제1 전자 디바이스의 적외선 센서를 사용하여 상기 제2 전자 디바이스의 이미지들을 캡처하는 것을 포함하며, 상기 적어도 하나의 시각적 마커는 상기 적외선 일루미네이터에 의해 일루미네이션되는 동안 상기 적외선 센서에만 가시적인 상기 제1 전자 디바이스 상의 적외선 패턴을 포함하는 것을 특징으로 하는 방법.
  5. 삭제
  6. 제2항에 있어서,
    상기 광학 센서는 상기 핸드 헬드 제어기의 전방 카메라(front facing camera)이고, 상기 적어도 하나의 시각적 마커는 상기 헤드 장착형 디스플레이 디바이스의 제1 표면 상의 제1의 2차원 바코드 및 상기 헤드 장착형 디스플레이 디바이스의 제2 표면 상의 제2의 2차원 바코드를 포함하는 것을 특징으로 하는 방법.
  7. 제1항에 있어서,
    상기 제1 전자 디바이스에 의해, 제2 모드에서 상기 제2 전자 디바이스에 대한 상기 제1 전자 디바이스의 움직임을 트랙킹하는 것을 더 포함하며,
    상기 제2 모드에서 상기 제2 전자 디바이스에 대한 상기 제1 전자 디바이스의 움직임을 트랙킹하는 것은,
    상기 제2 전자 디바이스의 광학 센서를 사용하여 광학 데이터를 수집하는 것 - 상기 광학 데이터는 상기 제1 전자 디바이스의 이미지들을 포함함 - 과;
    상기 수집된 광학 데이터를 스캐닝하고 상기 스캐닝된 광학 데이터 내의 복수의 미리 결정된 피쳐들을 검출하는 것과;
    상기 검출된 복수의 미리 결정된 피처들을 상기 제2 전자 디바이스 상의 상기 적어도 하나의 시각적 마커의 알려진 이미지들과 비교하는 것과;
    상기 수집된 광학 데이터에서 상기 적어도 하나의 시각적 마커를 식별하는 것과;
    상기 복수의 미리 결정된 피쳐들의 검출에 기초하여 상기 식별된 적어도 하나의 시각적 마커에 기초하여 상기 제2 전자 디바이스에 대한 상기 제1 전자 디바이스의 위치를 결정하는 것과; 그리고
    상기 제1 전자 디바이스의 움직임을 트랙킹하기 위해 상기 제1 전자 디바이스의 현재 위치를 상기 제1 전자 디바이스의 이전 위치와 비교하는 것을 포함하는 것을 특징으로 하는 방법.
  8. 제7항에 있어서,
    상기 검출된 복수의 미리 결정된 피쳐들은 복수의 코너들 또는 복수의 에지들 중 적어도 하나의 불규칙한 패턴을 포함하고, 상기 검출된 복수의 미리 결정된 피쳐들을 상기 적어도 하나의 시각적 마커의 알려진 이미지들과 비교하는 것과, 상기 수집된 광학 데이터에서 상기 적어도 하나의 시각적 마커를 식별하는 것은:
    상기 검출된 복수의 미리 결정된 피쳐들의 불규칙한 패턴의 방위를 상기 적어도 하나의 시각적 마커의 알려진 이미지 내의 대응하는 복수의 피쳐들의 방위와 비교하는 것과; 그리고
    상기 비교에 기초하여 상기 제1 전자 디바이스에 대한 상기 제2 전자 디바이스의 포지션 및 방위를 결정하는 것을 포함하는 것을 특징으로 하는 방법.
  9. 제8항에 있어서,
    상기 제2 전자 디바이스의 광학 센서를 사용하여 광학 데이터를 수집하는 것은, 적외선 일루미네이터에 의해 제공된 일루미네이션으로 상기 제2 전자 디바이스의 적외선 센서를 사용하여 상기 제1 전자 디바이스의 이미지들을 캡처하는 것을 포함하며, 상기 적어도 하나의 시각적 마커는 상기 적외선 일루미네이터에 의해 일루미네이션되는 동안 상기 적외선 센서에만 가시적인 상기 제1 전자 디바이스 상에 정의된 적외선 패턴을 포함하는 것을 특징으로 하는 방법.
  10. 제7항에 있어서,
    상기 광학 센서는 상기 헤드 장착형 디스플레이 디바이스 상의 카메라이고, 상기 시각적 마커는 상기 핸드 헬드 제어기의 디스플레이 스크린 상에 렌더링된 또는 상기 핸드 헬드 제어기의 외부 표면 상에 위치된 2차원 바코드인 것을 특징으로 하는 방법.
  11. 시스템으로서,
    헤드 장착형 전자 디바이스와 동작 가능하게 결합되도록 구성되는 핸드 헬드 전자 디바이스를 포함하며, 상기 헤드 장착형 전자 디바이스는 헤드 장착형 전자 디바이스의 하우징의 외부 표면상에 있는 복수의 시각적 마커들을 포함하며, 상기 핸드 헬드 전자 디바이스는 광학 센서 및 프로세서를 포함함 -;
    상기 핸드 헬드 전자 디바이스는,
    상기 핸드 헬드 전자 디바이스의 광학 센서에 의해 캡처된 이미지들에 기초하고 그리고 상기 캡처된 이미지들의 미리 결정된 피쳐들의 식별에 기초하여 상기 핸드 헬드 전자 디바이스에 대한 상기 상기 헤드 장착형 전자 디바이스의 위치를 결정하고 -상기 미리 결정된 피쳐들은 상기 복수의 시각적 마커들에 대응함-,
    상기 핸드 헬드 전자 디바이스에 대한 상기 헤드 장착형 전자 디바이스의 위치의 역변환을 계산하고 그리고 상기 핸드 헬드 전자 디바이스가 주변 환경에서 상기 헤드 장착형 전자 디바이스와 독립적으로 이동함에 따라 상기 헤드 장착형 전자 디바이스에 대한 상기 핸드 헬드 전자 디바이스의 위치를 결정하도록 구성되는 것을 특징으로 하는 시스템.
  12. 제11항에 있어서,
    상기 복수의 시각적 마커들은 상기 헤드 장착형 전자 디바이스의 제1 표면 상의 제1 시각적 마커 및 상기 헤드 장착형 전자 디바이스의 제2 표면 상의 제2 시각적 마커를 포함하는 것을 특징으로 하는 시스템.
  13. 제12항에 있어서,
    상기 제1 시각적 마커는 상기 헤드 장착형 전자 디바이스의 상기 제1 표면과 관련된 제1 패턴에 의해 정의되고, 상기 제1 패턴은 제1 비반복 패턴 또는 제1 복수의 별개의 코너들(distinct corners) 중 적어도 하나를 포함하고, 상기 제2 시각적 마커는 상기 헤드 장착형 전자 디바이스의 상기 제2 표면과 관련된 제2 패턴에 의해 정의되고, 상기 제2 패턴은 제2 비반복 패턴 또는 제2 복수의 별개의 코너들 중 적어도 하나를 포함하는 것을 특징으로 하는 시스템.
  14. 제13항에 있어서,
    상기 제1 패턴은 상기 헤드 장착형 전자 디바이스의 상기 제1 표면과 관련된 제1 적외선 패턴이고, 상기 제2 패턴은 상기 헤드 장착형 전자 디바이스의 상기 제2 표면과 관련된 제2 적외선 패턴이고, 상기 핸드 헬드 전자 디바이스의 상기 광학 센서는 적외선 일루미네이터 및 적외선 센서를 포함하여, 제1 및 제2 패턴들은 상기 제1 및 제2 패턴들이 상기 적외선 일루미네이터에 의해 일루미네이션되는 동안 적외선 센서에만 가시적이게 되는 것을 특징으로 하는 시스템.
  15. 제13항에 있어서,
    상기 핸드 헬드 전자 디바이스에 대한 상기 헤드 장착형 전자 디바이스의 위치를 결정함에 있어서, 상기 핸드 헬드 전자 디바이스는:
    상기 광학 센서에 의해 수집된 이미지들에서 검출된 상기 제1 패턴의 방위를 상기 제1 시각적 마커의 알려진 이미지들에 포함된 상기 제1 패턴의 방위와 비교하고;
    상기 광학 센서에 의해 수집된 이미지들에서 검출된 상기 제2 패턴의 방위를 상기 제2 시각적 마커의 알려진 이미지들에 포함된 상기 제2 패턴의 방위와 비교하고; 그리고
    상기 비교들에 기초하여 상기 핸드 헬드 전자 디바이스에 대한 상기 헤드 장착형 전자 디바이스의 포지션 및 방위를 결정하도록 구성된 것을 특징으로 하는 시스템.
  16. 제12항에 있어서,
    상기 제1 시각적 마커는 상기 헤드 장착형 전자 디바이스의 전방 표면과 관련된 제1의 2차원 바코드를 포함하고, 상기 제2 시각적 마커는 상기 헤드 장착형 전자 디바이스의 하방 표면(bottom facing surface)과 관련된 제2의 2차원 바코드를 포함하는 것을 특징으로 하는 시스템.
  17. 제12항에 있어서,
    상기 제1 표면은 상기 헤드 장착형 전자 디바이스의 전방 표면이고, 상기 제2 표면은 상기 헤드 장착형 전자 디바이스의 하방 표면인 것을 특징으로 하는 시스템.
  18. 제11항에 있어서,
    상기 헤드 장착형 전자 디바이스는 프로세서를 포함하고, 상기 프로세서는:
    상기 헤드 장착형 전자 디바이스의 광학 센서를 사용하여 상기 핸드 헬드 전자 디바이스의 이미지들을 캡처하고;
    상기 광학 센서에 의해 캡처된 이미지들에서 복수의 미리 결정된 피쳐들을 검출하고;
    상기 검출된 복수의 미리 결정된 피쳐들을 복수의 시각적 마커들의 알려진 이미지들과 비교하고;
    상기 비교에 기초하여 적어도 하나의 시각적 마커를 식별하고; 그리고
    상기 식별된 적어도 하나의 시각적 마커에 기초하여 상기 헤드 장착형 전자 디바이스에 대한 상기 핸드 헬드 전자 디바이스의 위치를 결정하도록 구성된 것을 특징으로 하는 시스템.
  19. 제18항에 있어서,
    상기 식별된 적어도 하나의 시각적 마커는 핸드 헬드 전자 디바이스의 디스플레이 스크린 상에 렌더링되거나 또는 핸드 헬드 전자 디바이스의 외부 표면 상에 위치된 2차원 바코드인 것을 특징으로 하는 시스템.
  20. 제11항에 있어서,
    상기 핸드 헬드 전자 디바이스는 핸드 헬드 제어기 또는 스마트폰이고, 주변 환경에서의 상기 핸드 헬드 전자 디바이스의 움직임은 상기 헤드 장착형 전자 디바이스에 의해 생성된 가상 환경에서의 대응하는 인터랙션으로 전이되는 것을 특징으로 하는 시스템.
  21. 프로세서 상에서 실행될 때 상기 프로세서로 하여금 제1항의 방법을 수행하는 명령어들을 저장하는 컴퓨터 판독 가능 저장 매체.
KR1020177030775A 2015-07-07 2016-06-28 가상 현실에서 핸드 헬드 디바이스를 트랙킹하는 시스템 KR102038638B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562189292P 2015-07-07 2015-07-07
US62/189,292 2015-07-07
US15/193,777 US10083544B2 (en) 2015-07-07 2016-06-27 System for tracking a handheld device in virtual reality
US15/193,777 2016-06-27
PCT/US2016/039813 WO2017007637A1 (en) 2015-07-07 2016-06-28 System for tracking a handheld device in virtual reality

Publications (2)

Publication Number Publication Date
KR20170130580A KR20170130580A (ko) 2017-11-28
KR102038638B1 true KR102038638B1 (ko) 2019-10-30

Family

ID=56611554

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177030775A KR102038638B1 (ko) 2015-07-07 2016-06-28 가상 현실에서 핸드 헬드 디바이스를 트랙킹하는 시스템

Country Status (6)

Country Link
US (1) US10083544B2 (ko)
EP (1) EP3320413B1 (ko)
JP (1) JP6895390B2 (ko)
KR (1) KR102038638B1 (ko)
CN (1) CN107646098A (ko)
WO (1) WO2017007637A1 (ko)

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10334076B2 (en) * 2016-02-22 2019-06-25 Google Llc Device pairing in augmented/virtual reality environment
US10099122B2 (en) * 2016-03-30 2018-10-16 Sony Interactive Entertainment Inc. Head-mounted display tracking
US10650591B1 (en) 2016-05-24 2020-05-12 Out of Sight Vision Systems LLC Collision avoidance system for head mounted display utilized in room scale virtual reality system
US10664993B1 (en) 2017-03-13 2020-05-26 Occipital, Inc. System for determining a pose of an object
US11494986B2 (en) * 2017-04-20 2022-11-08 Samsung Electronics Co., Ltd. System and method for two dimensional application usage in three dimensional virtual reality environment
US10444865B2 (en) * 2017-05-01 2019-10-15 Google Llc Tracking of position and orientation of objects in virtual reality systems
GB2555501B (en) * 2017-05-04 2019-08-28 Sony Interactive Entertainment Europe Ltd Head mounted display and method
US10503247B2 (en) * 2017-05-09 2019-12-10 Microsoft Technology Licensing, Llc Calibration of stereo cameras and handheld object
WO2018227505A1 (en) * 2017-06-15 2018-12-20 Tencent Technology (Shenzhen) Company Limited System and method of connecting two different environments using hub
US20180374269A1 (en) * 2017-06-21 2018-12-27 INVRSE Reality Limited Augmented reality and virtual reality mobile device user interface automatic calibration
CN109983424B (zh) 2017-06-23 2022-06-24 腾讯科技(深圳)有限公司 虚拟现实场景中的对象选中方法和装置以及虚拟现实设备
GB2566924B (en) * 2017-07-27 2022-08-03 Mo Sys Engineering Ltd Positioning system
US10754496B2 (en) 2017-08-24 2020-08-25 Microsoft Technology Licensing, Llc Virtual reality input
US20190068900A1 (en) * 2017-08-30 2019-02-28 Lenovo (Singapore) Pte. Ltd. Display Component Emitting Both Visible Spectrum and Infrared Spectrum Light
US11080931B2 (en) * 2017-09-27 2021-08-03 Fisher-Rosemount Systems, Inc. Virtual x-ray vision in a process control environment
US11861136B1 (en) * 2017-09-29 2024-01-02 Apple Inc. Systems, methods, and graphical user interfaces for interacting with virtual reality environments
JP7027109B2 (ja) 2017-10-13 2022-03-01 任天堂株式会社 姿勢位置推測システム、姿勢位置推測方法、および姿勢位置推測装置
US10866652B2 (en) 2017-11-13 2020-12-15 Samsung Electronics Co., Ltd. System and method for distributed device tracking
WO2019173524A1 (en) 2018-03-07 2019-09-12 Magic Leap, Inc. Visual tracking of peripheral devices
US10969600B2 (en) 2018-03-08 2021-04-06 Apple Inc. Electronic devices with optical markers
EP3557378B1 (en) * 2018-04-16 2022-02-23 HTC Corporation Tracking system for tracking and rendering virtual object corresponding to physical object and the operating method for the same
WO2019203837A1 (en) 2018-04-19 2019-10-24 Hewlett-Packard Development Company, L.P. Inputs to virtual reality devices from touch surface devices
CN110555358B (zh) * 2018-06-01 2023-09-12 苹果公司 用于检测和识别ar/vr场景中的特征部的方法和设备
US11054638B2 (en) 2018-06-13 2021-07-06 Reavire, Inc. Tracking pointing direction of device
US10962783B2 (en) * 2018-06-19 2021-03-30 Apple Inc. Electronic devices having electrically adjustable optical layers
US11244509B2 (en) 2018-08-20 2022-02-08 Fisher-Rosemount Systems, Inc. Drift correction for industrial augmented reality applications
US11036284B2 (en) * 2018-09-14 2021-06-15 Apple Inc. Tracking and drift correction
US11189054B2 (en) * 2018-09-28 2021-11-30 Apple Inc. Localization and mapping using images from multiple devices
CN109785381B (zh) * 2018-12-06 2021-11-16 苏州炫感信息科技有限公司 一种光学惯性融合空间定位方法及定位系统
US11461906B2 (en) * 2018-12-31 2022-10-04 Numeric Engineering, Inc. Systems and methods for monitoring offshore structures
CN111813214B (zh) * 2019-04-11 2023-05-16 广东虚拟现实科技有限公司 虚拟内容的处理方法、装置、终端设备及存储介质
US10699087B1 (en) * 2019-07-10 2020-06-30 Zebra Technologies Corporation Alternative method to interact with a user interface using standard barcode scanners paired up with an augmented reality heads up display
US10916062B1 (en) * 2019-07-15 2021-02-09 Google Llc 6-DoF tracking using visual cues
US10942585B2 (en) * 2019-07-22 2021-03-09 Zspace, Inc. Trackability enhancement of a passive stylus
EP3798986A1 (en) * 2019-09-27 2021-03-31 Apple Inc. Location aware visual markers
KR20210067525A (ko) 2019-11-29 2021-06-08 이보람 버츄얼 카메라 트랙킹 시스템, 이를 이용한 mr 환경 실시간 합성시스템
WO2021112107A1 (ja) * 2019-12-04 2021-06-10 ソニーグループ株式会社 情報処理装置、情報処理方法およびプログラム
JP2021096407A (ja) * 2019-12-18 2021-06-24 富士通クライアントコンピューティング株式会社 検出装置、情報処理装置、および、情報処理システム
US11348320B2 (en) 2020-04-02 2022-05-31 Samsung Electronics Company, Ltd. Object identification utilizing paired electronic devices
WO2021236170A1 (en) * 2020-05-18 2021-11-25 Google Llc Low-power semi-passive relative six-degree-of-freedom tracking
US11816887B2 (en) 2020-08-04 2023-11-14 Fisher-Rosemount Systems, Inc. Quick activation techniques for industrial augmented reality applications
US11930420B1 (en) 2020-09-15 2024-03-12 Apple Inc. Handheld electronic devices with contextual input-output capabilities
US11845001B2 (en) * 2021-01-14 2023-12-19 Htc Corporation Calibration system and method for handheld controller
EP4105764A1 (en) * 2021-06-18 2022-12-21 Auki Labs Ltd A computer implemented method for positioning and orienting an electronic device in a shared virtual space
US11693491B1 (en) * 2021-08-23 2023-07-04 Waleed Abdulla Tracking a paired peripheral input device based on a contact criterion
WO2023181151A1 (ja) * 2022-03-23 2023-09-28 株式会社ソニー・インタラクティブエンタテインメント マーカー装置、コンピュータシステム、方法およびプログラム
US11625787B1 (en) * 2022-05-03 2023-04-11 Capital One Services, Llc Augmented reality vehicle display systems
JP2024018242A (ja) * 2022-07-29 2024-02-08 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置および画像生成方法
WO2024122801A1 (ko) * 2022-12-09 2024-06-13 삼성전자주식회사 외부 전자 장치의 위치에 기반하여 시각적 객체를 표시하기 위한 전자 장치 및 그 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130278635A1 (en) * 2011-08-25 2013-10-24 Sartorius Stedim Biotech Gmbh Assembling method, monitoring method, communication method, augmented reality system and computer program product
US20140168261A1 (en) * 2012-12-13 2014-06-19 Jeffrey N. Margolis Direct interaction system mixed reality environments

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5574479A (en) 1994-01-07 1996-11-12 Selectech, Ltd. Optical system for determining the roll orientation of a remote unit relative to a base unit
US8010180B2 (en) 2002-03-06 2011-08-30 Mako Surgical Corp. Haptic guidance system and method
JP2004233201A (ja) * 2003-01-30 2004-08-19 Canon Inc 位置姿勢計測方法
US7864159B2 (en) * 2005-01-12 2011-01-04 Thinkoptics, Inc. Handheld vision based absolute pointing system
EP1836549A2 (en) * 2005-01-12 2007-09-26 Thinkoptics, Inc. Handheld vision based absolute pointing system
JP5681850B2 (ja) * 2010-03-09 2015-03-11 レノボ・イノベーションズ・リミテッド(香港) ヘッドマウントディスプレイを外部表示装置として使用する携帯端末
US9897805B2 (en) 2013-06-07 2018-02-20 Sony Interactive Entertainment Inc. Image rendering responsive to user actions in head mounted display
US8581738B2 (en) * 2011-08-25 2013-11-12 Sartorius Stedim Biotech Gmbh Assembling method, monitoring method, and augmented reality system used for indicating correct connection of parts
JP5538483B2 (ja) * 2012-06-29 2014-07-02 株式会社ソニー・コンピュータエンタテインメント 映像処理装置、映像処理方法、および映像処理システム
JPWO2014188798A1 (ja) * 2013-05-21 2017-02-23 ソニー株式会社 表示制御装置、表示制御方法および記録媒体
US10137361B2 (en) * 2013-06-07 2018-11-27 Sony Interactive Entertainment America Llc Systems and methods for using reduced hops to generate an augmented virtual reality scene within a head mounted system
US20140362110A1 (en) 2013-06-08 2014-12-11 Sony Computer Entertainment Inc. Systems and methods for customizing optical representation of views provided by a head mounted display based on optical prescription of a user
US9630105B2 (en) * 2013-09-30 2017-04-25 Sony Interactive Entertainment Inc. Camera based safety mechanisms for users of head mounted displays
CN106104361B (zh) * 2014-02-18 2019-06-07 摩致实验室有限公司 与移动计算装置一起使用的头戴式显示器眼罩

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130278635A1 (en) * 2011-08-25 2013-10-24 Sartorius Stedim Biotech Gmbh Assembling method, monitoring method, communication method, augmented reality system and computer program product
US20140168261A1 (en) * 2012-12-13 2014-06-19 Jeffrey N. Margolis Direct interaction system mixed reality environments

Also Published As

Publication number Publication date
EP3320413A1 (en) 2018-05-16
WO2017007637A1 (en) 2017-01-12
US20170011553A1 (en) 2017-01-12
JP2018530797A (ja) 2018-10-18
CN107646098A (zh) 2018-01-30
EP3320413B1 (en) 2020-01-01
US10083544B2 (en) 2018-09-25
JP6895390B2 (ja) 2021-06-30
KR20170130580A (ko) 2017-11-28

Similar Documents

Publication Publication Date Title
KR102038638B1 (ko) 가상 현실에서 핸드 헬드 디바이스를 트랙킹하는 시스템
KR102245245B1 (ko) 증강된 그리고/또는 가상의 현실 환경에서 6 자유도 제어기들을 이용한 가상 객체들의 조작
US11181986B2 (en) Context-sensitive hand interaction
CN107667328B (zh) 用于在增强和/或虚拟现实环境中跟踪手持设备的系统
US10339723B2 (en) Generating virtual notation surfaces with gestures in an augmented and/or virtual reality environment
CN107743604B (zh) 增强和/或虚拟现实环境中的触摸屏悬停检测
CN109074154B (zh) 增强和/或虚拟现实中的悬停触摸输入补偿
CN109074149B (zh) 用于增强或虚拟现实环境的头戴式参考系中的对象跟踪
KR102338835B1 (ko) 증강 및/또는 가상 현실 환경에서의 세션 종료 검출
KR20220167798A (ko) 저전력 반수동 상대 6 자유도 추적
CN114868099A (zh) 抗滑移注视跟踪用户界面

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