KR20200079263A - 증강 현실 시스템들에 대한 가상 레티클 - Google Patents

증강 현실 시스템들에 대한 가상 레티클 Download PDF

Info

Publication number
KR20200079263A
KR20200079263A KR1020207013981A KR20207013981A KR20200079263A KR 20200079263 A KR20200079263 A KR 20200079263A KR 1020207013981 A KR1020207013981 A KR 1020207013981A KR 20207013981 A KR20207013981 A KR 20207013981A KR 20200079263 A KR20200079263 A KR 20200079263A
Authority
KR
South Korea
Prior art keywords
head pose
user
head
threshold
reticle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
KR1020207013981A
Other languages
English (en)
Other versions
KR102668725B1 (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 매직 립, 인코포레이티드
Priority to KR1020247016469A priority Critical patent/KR20240090488A/ko
Publication of KR20200079263A publication Critical patent/KR20200079263A/ko
Application granted granted Critical
Publication of KR102668725B1 publication Critical patent/KR102668725B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/0081Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00 with means for altering, e.g. enlarging, the entrance or exit pupil
    • 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/0093Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00 with means for monitoring data relating to the user, e.g. head-tracking, eye-tracking
    • 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
    • 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 OR CALCULATING; 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 OR CALCULATING; 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 OR CALCULATING; 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 OR CALCULATING; 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/013Eye tracking input arrangements
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04812Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional [3D], e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/00Two-dimensional [2D] image generation
    • G06T11/60Creating or editing images; Combining images with text
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating three-dimensional [3D] models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/18Eye characteristics, e.g. of the iris
    • G06V40/193Preprocessing; Feature extraction
    • 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/0101Head-up displays characterised by optical features
    • G02B2027/0127Head-up displays characterised by optical features comprising devices increasing the depth of field
    • 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/0179Display position adjusting means not related to the information to be displayed
    • G02B2027/0185Displaying image at variable distance
    • 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/0179Display position adjusting means not related to the information to be displayed
    • G02B2027/0187Display position adjusting means not related to the information to be displayed slaved to motion of at least a part of the body of the user, e.g. head, eye

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Optics & Photonics (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Graphics (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Ophthalmology & Optometry (AREA)
  • General Health & Medical Sciences (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Eye Examination Apparatus (AREA)
  • Position Input By Displaying (AREA)

Abstract

웨어러블 디바이스에 의해 증강 또는 가상 현실 환경에서 가상 레티클을 디스플레이하기 위한 시스템들 및 방법들이 설명된다. 환경은 예를 들어, 머리 포즈, 눈 포즈 또는 시선, 또는 신체 포즈와 같은 다양한 포즈들을 통해 사용자에 의해 상호작용될 수 있는 실제 또는 가상 오브젝트들을 포함할 수 있다. 사용자는 포즈 또는 시선을 변경하여 가상 레티클을 타겟 오브젝트를 향해 포인팅함으로써 오브젝트들을 선택할 수 있다. 웨어러블 디바이스는 사용자의 머리 또는 눈들의 배향이 허용가능한 또는 편안한 머리 또는 눈 포즈들의 범위 밖에 있다고 인식하고, 레티클의 움직임을 디폴트 포지션으로부터 멀리 사용자의 머리 또는 눈 움직임 방향에서의 포지션을 향해 가속할 수 있고, 이는 레티클 및 타겟을 정렬시키기 위한 사용자에 의한 움직임의 양을 감소시킬 수 있다.

Description

증강 현실 시스템들에 대한 가상 레티클
[0001] 본 특허 문헌의 개시의 일부분은 저작권 보호를 받는 자료를 포함한다. 저작권 소유자는 특허 및 상표청 특허 파일 또는 기록들에 나와 있는 것처럼 누군가에 의한 특허 문헌 또는 특허 개시의 팩시밀리 재생산에 반대하지 않지만, 달리 모든 저작권을 보유한다.
[0002] 본 출원은, 2017년 10월 27일에 출원되고 발명의 명칭이 "VIRTUAL RETICLE FOR AUGMENTED REALITY SYSTEMS"인 미국 가특허 출원 제62/578,094호에 대해 우선권을 주장하며, 이로써 상기 출원은 그 전체가 인용에 의해 본원에 통합된다.
[0003] 본 개시는 가상 현실 및 증강 현실 이미징 및 가상화 시스템들에 관한 것이고, 더 상세하게는 머리 포즈에 기초한 가상 레티클을 디스플레이하는 것에 관한 것이다.
[0004] 현대의 컴퓨팅 및 디스플레이 기술들은 소위 "가상 현실", "증강 현실" 또는 "혼합 현실" 경험들을 위한 시스템들의 개발을 용이하게 하였으며, 여기서 디지털로 재생된 이미지들 또는 그 일부들은 그들이 보이는 방식으로 사용자에게 제시되거나 실제인 것처럼 지각될 수 있다. 가상 현실 또는 "VR" 시나리오는 통상적으로 실제 실세계의 시각적 입력에 대한 투명성 없이 디지털 또는 가상 이미지 정보의 프리젠테이션을 수반하고, 증강 현실 또는 "AR" 시나리오는 통상적으로 사용자 주변의 실제 세계의 시각화를 위한 증강으로서 디지털 또는 가상 이미지 정보의 프리젠테이션을 수반하고; 실제 및 가상 세계들을 병합하는 것과 관련된 혼합 현실 또는 "MR"은 물리적 및 가상 오브젝트들이 공존하고 실시간으로 상호작용하는 새로운 환경들을 생성한다. 결과적으로, 인간의 시각 인식 시스템은 매우 복잡하며, 다른 가상 또는 실세계 이미저리 엘리먼트들 사이에서 가상 이미지 엘리먼트들의 편안하고, 자연스러운 느낌의 풍부한 프리젠테이션을 용이하게 하는 VR, AR 또는 MR 기술을 생성하는 것은 난제이다. 본원에 개시된 시스템들 및 방법들은 VR, AR 및 MR 기술과 관련된 다양한 난제들을 다룬다.
[0005] 가상 레티클을 디스플레이하기 위한 시스템들 및 방법들의 다양한 실시예들이 개시된다. 환경은 가상 레티클을 사용하여 사용자에 의해 상호작용될 수 있는 실제 또는 가상 오브젝트들을 포함할 수 있다. 사용자의 머리, 눈들, 어깨들, 가슴, 팔들, 또는 다른 신체 부위들의 포지션 또는 배향은 환경 내에서 가상 레티클의 포지션 또는 이동 속도를 지정할 수 있고, 사용자는 타겟 오브젝트를 향해 가상 레티클을 지향시키거나 레티클을 그에 포커싱함으로써 오브젝트를 선택하거나 포인팅할 수 있다. 웨어러블 디바이스는 사용자의 머리, 눈(들), 어깨들, 가슴, 팔(들) 등이 불편하게 또는 달리 바람직하지 않게 포지셔닝 또는 배향되는 것을 인식할 수 있다. 불편한 또는 바람직하지 않은 포즈의 인식에 대한 응답으로, 시스템은 가상 레티클을 바람직하게 포지셔닝할 때 보조하도록 가상 레티클의 포지션 또는 이동 속도를 조정하여, 사용자의 포즈가 불편하거나 바람직하지 않게 유지될 가능성을 감소시킬 수 있다.
[0006] 본 명세서에 설명된 요지의 하나 이상의 구현들의 세부사항들은 첨부한 도면들 및 아래의 설명에서 기술된다. 다른 특징들, 양상들 및 이점들은 설명, 도면들 및 청구항들로부터 명백해질 것이다. 이러한 요약 및 하기 상세한 설명 어느 것도 본 발명의 요지의 범위를 정의하거나 제한하려 하지 않는다.
[0007] 도 1은 개인에 의해 뷰잉되는(viewed) 소정의 가상 현실 오브젝트들 및 소정의 물리적 오브젝트들을 갖는 혼합 현실 시나리오의 예시를 도시한다.
[0008] 도 2는 웨어러블 시스템의 예를 개략적으로 예시한다.
[0009] 도 3은 다수의 깊이 평면들을 사용하여 3차원 이미저리를 시뮬레이트하기 위한 접근법의 양상들을 개략적으로 예시한다.
[0010] 도 4는 이미지 정보를 사용자에게 출력하기 위한 도파관 스택의 예를 개략적으로 예시한다.
[0011] 도 5는 도파관에 의해 출력될 수 있는 예시적인 출사 빔들을 도시한다.
[0012] 도 6은 도파관 장치, 도파관 장치로 또는 그로부터 광을 광학적으로 커플링하는 광학 커플러 서브시스템, 및 다초점 볼륨 디스플레이, 이미지 또는 광 필드의 생성에서 사용되는 제어 서브시스템을 포함하는 광학 시스템을 도시하는 개략도이다.
[0013] 도 7은 웨어러블 시스템의 예의 블록도이다.
[0014] 도 8은 인식된 오브젝트들과 관련된 가상 콘텐츠를 렌더링하는 방법의 예의 프로세스 흐름도이다.
[0015] 도 9는 웨어러블 시스템의 다른 예의 블록도이다.
[0016] 도 10은 웨어러블 시스템에 대한 사용자 입력을 결정하기 위한 방법의 예의 프로세스 흐름도이다.
[0017] 도 11은 가상 사용자 인터페이스와 상호작용하기 위한 방법의 예의 프로세스 흐름도이다.
[0018] 도 12a는 FOR(field of regard), 세계 카메라의 FOV(field of view), 사용자의 시야, 및 사용자의 응시(fixation) 필드의 예를 개략적으로 예시한다.
[0019] 도 12b는 사용자의 시야 내의 가상 오브젝트들 및 관련 필드 내의 가상 오브젝트들의 예를 개략적으로 예시한다.
[0020] 도 13a 및 도 13b는 수직으로(도 13a) 및 수평으로(도 13b) 머리 포즈에서의 변화들에 대한 응답으로 레티클의 움직임을 가속하는 예들을 예시한다.
[0021] 도 14는 사용자의 머리 포즈에 기초하여 레티클의 포지션을 조정하는 예들을 예시한다.
[0022] 도 15는 사용자의 머리 포즈와 레티클의 포지션에 대한 조정 사이의 예시적인 관계를 예시한다.
[0023] 도 16은 예시적인 레티클 포지션 조정 프로세스에 대한 흐름도를 예시한다.
[0024] 도 17은 예시적인 레티클 조정 프로세스에 대한 흐름도를 예시한다.
[0025] 도 18은 다른 예시적인 레티클 조정 프로세스에 대한 흐름도를 예시한다.
[0026] 도면들 전반에 걸쳐, 참조되는 엘리먼트들 사이의 대응관계를 표시하기 위해 참조 부호들이 재사용될 수 있다. 도면들은 본원에 설명된 예시적인 실시예들을 예시하기 위해 제공되며 본 개시의 범위를 제한하려는 의도가 아니다. 추가적으로, 본 개시의 도면들은 예시를 위한 것이고 축척에 맞지 않는다.
[0027] 웨어러블 디바이스는 대화형 VR/AR/MR 환경을 제시하기 위한 디스플레이를 포함할 수 있다. VR/AR/MR 환경은 예를 들어, 머리 포즈, 눈 시선, 또는 신체 포즈와 같은 다양한 포즈들을 통해 사용자에 의해 상호작용될 수 있는 데이터 엘리먼트들을 포함할 수 있다. VR/AR/MR 환경은 사용자의 시야(예를 들어, 임의의 주어진 순간에 보이는 VR/AR/MR 환경의 범위)에 대한 사용자의 현재 포지션에 대응하는 레티클을 포함할 수 있다. 예를 들어, 레티클은 사용자의 시선 방향을 표현할 수 있다. 사용자가 (예를 들어, 눈들, 머리, 신체 또는 이들의 임의의 조합을 이동시킴으로써) 주위에서 이동할 때, 레티클은 또한 사용자와 함께 이동할 수 있다. 레티클은 하나 이상의 오브젝트들을 향할 수 있고, 사용자는 레티클이 포인팅하고 있는 타겟 오브젝트를 선택할 수 있다. 예를 들어, 사용자는 자신의 머리를 이동시켜 레티클을 선택될 오브젝트로 향하게 하고, 그 다음, 핸드헬드 사용자 입력 토템을 클릭하여 오브젝트를 선택할 수 있다. 웨어러블 디스플레이 디바이스는 선택된 오브젝트에 대해 적절한 액션(예를 들어, 오브젝트를 이동시키는 것, 오브젝트를 강조 또는 확대하는 것, 오브젝트에 대한 정보를 콜 업하는 것, 오브젝트와 연관되어 수행될 수 있는 액션들의 메뉴를 디스플레이하는 것 등)을 수행할 수 있다.
[0028] 가끔, 사용자는 자신의 머리를 재배향하기(비제한적인 예: 환경(예를 들어, 천장)에서 높게 있는, 지면(예를 들어, 바닥 또는 사용자의 발)까지 낮게 있는, 우측 멀리 있는, 좌측 멀리 있는 등의 오브젝트를 선택하는 것)를 원할 수 있고, 이는 원하는 오브젝트에 레티클이 포지셔닝되도록 사용자가 자신의 목을 구부리거나, 트위스트하거나 크레이닝(crane)하도록 요구할 수 있다. 사용자의 목을 구부리는 것, 트위스트하는 것 및/또는 크레이닝하는 것은 무엇보다도, 웨어러블 디바이스의 사용 동안 목 스트레인 또는 불편함을 초래할 수 있다. 따라서, 웨어러블 시스템은 사용자의 머리의 배향이 허용가능한(예를 들어, 편안한, 스트레인 없는 등의) 머리 포즈들의 범위 밖에 있음을 인식할 수 있다. 그 결과, 사용자가 레티클을 이동 또는 조정하는 것을 보조하기 위해, 웨어러블 시스템은 레티클의 움직임을, 사용자의 머리가 이동하고 있는 방향에 대응하는 방향으로 수정 또는 가속(예를 들어, 각도를 수정)할 수 있다. 레티클의 움직임을 수정 또는 가속함으로써, 웨어러블 시스템은 유리하게는 사용자가 레티클 및 타겟 오브젝트를 정렬시키기 위해 자신의 목을 구부리거나, 트위스트하거나, 크레이닝해야 하는 정도를 감소시켜, 목 스트레인 또는 불편함의 가능성을 감소시킨다.
[0029] 예로서, 사용자가 천장 근처의 오브젝트를 향해 위를 보면, 웨어러블 디스플레이 디바이스는 레티클을 디폴트 레티클 포지션(비제한적인 예: 디스플레이의 FOV(field of view)의 중심 근처)으로부터 사용자의 FOV의 최상부를 향하는 것과 같은 다른 포지션으로 이동시킬 수 있다. 마찬가지로, 사용자가 아래를 보면, 웨어러블 디스플레이 디바이스는 레티클을 FOV의 디폴트 포지션으로부터 사용자의 FOV의 바닥 근처와 같은 다른 포지션으로 이동시킬 수 있다. 웨어러블 디스플레이 디바이스는 사용자가 우측 또는 좌측(예를 들어, 레티클을 FOV의 각각 우측 또는 좌측으로 이동시키는 것), 대각선으로 우측 또는 좌측 위까지, 대각선으로 우측 또는 좌측 아래 등을 보면 레티클을 유사하게 리포지셔닝할 수 있다. 디폴트 레티클 포지션은 FOV의 중심으로 제한되지 않는다. 오히려, FOV 내의 임의의 위치는 디폴트 레티클 포지션으로서 활용될 수 있다.
[0030] 사용자는 레티클을 조정하기 위해 자신의 눈들을 사용하기를 원할 수 있다. 웨어러블 디바이스는 눈 이미지들과 같은 눈 데이터를 (예를 들어, 웨어러블 디바이스의 내향 이미징 시스템 내의 눈 카메라를 통해) 수집할 수 있다. 웨어러블 시스템은 사용자의 눈 시선과 시선 벡터(사용자의 시선 방향을 표시할 수 있음) 사이의 연관을 제공하는 맵핑 행렬에 기초하여 사용자의 눈 시선 방향을 계산할 수 있다. 사용자의 눈이 이동함에 따라, 웨어러블 시스템은 사용자의 눈 시선 방향 및 사용자의 시야를 결정할 수 있거나 또는 눈 시선 방향에서의 변화들에 대한 응답으로 레티클이 이동할 수 있다. 사용자가 머리 포즈에 대한 변화들 이외에 또는 그에 추가로 눈 시선에서의 변화들을 사용하여 높게, 낮게, 좌측 멀리, 우측 멀리 등에 있는 오브젝트를 뷰잉 또는 타겟팅하기를 원하면, 사용자의 눈들의 움직임 및/또는 특정 위치에서 눈들의 응시는 무엇보다도 눈 스트레인, 불편함 또는 두통을 초래할 수 있다. 따라서, 웨어러블 시스템은 사용자의 눈의 배향이 허용가능한(예를 들어, 편안한, 스트레인 없는 등의) 눈 포즈들의 범위 밖에 있음을 인식할 수 있다. 그 결과, 사용자가 레티클을 이동 또는 조정하는 것을 보조하기 위해, 웨어러블 시스템은 레티클의 움직임을, 사용자의 눈들이 이동하고 있는 방향에 대응하는 방향으로 가속(예를 들어, 각도를 수정)할 수 있다. 레티클의 움직임을 가속함으로써, 웨어러블 시스템은 유리하게는 눈 스트레인, 두통, 눈 불편함 등의 가능성을 감소시킨다.
[0031] 사용자가 머리 포즈 또는 눈 시선의 조합을 사용하여 타겟과 가상 레티클을 정렬시킬 수 있는 프로세스를 제공함으로써, 웨어러블 시스템은, 목 스트레인 또는 눈 스트레인을 감소 또는 최소화시키면서 사용자가 더 쉽게 정렬을 수행할 수 있는 직관적 프로세스를 제공할 수 있다.
웨어러블 시스템의 3D 디스플레이의 예들
[0032] 웨어러블 시스템(본원에서는 또한 AR(augmented reality) 시스템으로 지칭됨)은 2D(two-dimensional) 또는 3D(three-dimensional) 가상 이미지들을 사용자에게 제시하도록 구성될 수 있다. 이미지들은 스틸 이미지들, 비디오의 프레임들, 또는 비디오, 이들의 조합 등일 수 있다. 웨어러블 시스템은 사용자 상호작용을 위해 VR, AR 또는 MR 환경을 단독으로 또는 조합하여 제시할 수 있는 웨어러블 디바이스를 포함할 수 있다. 웨어러블 디바이스는 ARD(AR device)로서 상호교환가능하게 사용되는 HMD(head-mounted device)일 수 있다.
[0033] 도 1은 개인에 의해 뷰잉되는(viewed) 소정의 가상 현실 오브젝트들 및 소정의 물리적 오브젝트들을 갖는 혼합 현실 시나리오의 예시를 도시한다. 도 1에서, MR 기술의 사용자가 배경에서 사람들, 나무들, 건물들을 특징화하는 실세계 공원형 설정(110) 및 콘크리트 플랫폼(120)을 보는 MR 장면(100)이 도시되어 있다. 이러한 항목들에 추가로, MR 기술의 사용자는 또한, 자신이 실세계 플랫폼(120) 위에 서있는 로봇 조각상(130), 및 호박벌의 의인화인 것으로 보이는 만화형 아바타 캐릭터(140)를 "본다"고 지각하지만, 이러한 엘리먼트들은 실세계에 존재하지 않는다.
[0034] 3D 디스플레이가 진정한 깊이 감각, 및 더 구체적으로는, 표면 깊이의 시뮬레이트된 감각을 생성하기 위해, 디스플레이의 시야에서의 각각의 포인트가 가상 깊이에 대응하는 원근조절 응답(accommodative response)을 생성하는 것이 바람직할 수 있다. 수렴 및 입체시의 양안 깊이 큐(cue)들에 의해 결정되는 바와 같이, 디스플레이 포인트에 대한 원근조절 응답이 그 포인트의 가상 깊이에 대응하지 않으면, 인간 눈은 원근조절 충돌을 경험하여 불안정한 이미징, 유해한 눈의 피로, 두통을 초래할 수 있고, 원근조절 정보가 없으면, 표면 깊이의 거의 완전한 결핍을 초래할 수 있다.
[0035] VR, AR 및 MR 경험들은, 복수의 깊이 평면들에 대응하는 이미지들이 뷰어에게 제공되는 디스플레이들을 갖는 디스플레이 시스템들에 의해 제공될 수 있다. 이미지들은 각각의 깊이 평면에 대해 상이할 수 있고(예를 들어, 장면 또는 오브젝트의 약간 상이한 프리젠테이션들을 제공함), 뷰어의 눈들에 의해 개별적으로 포커싱될 수 있어서, 상이한 깊이 평면 상에 위치된 장면에 대한 상이한 이미지 특징부들을 포커싱하기 위해 요구되는 눈의 원근조절에 기초하여 또는 포커싱되지 않은 상이한 깊이 평면들 상의 상이한 이미지 특징부들을 관찰하는 것에 기초하여 깊이 큐들을 사용자에게 제공하는 것을 도울 수 있다. 본원의 다른 곳에 논의된 바와 같이, 이러한 깊이 큐들은 신뢰할 수 있는 깊이 인지들을 제공한다.
[0036] 도 2는 웨어러블 시스템(200)의 예를 예시한다. 웨어러블 시스템(200)은 디스플레이(220), 및 디스플레이(220)의 기능화를 지원하기 위한 다양한 기계식 및 전자식 모듈들 및 시스템들을 포함한다. 디스플레이(220)는 사용자, 착용자 또는 뷰어(210)에 의해 착용가능한 프레임(230)에 커플링될 수 있다. 디스플레이(220)는 사용자(210)의 눈들 앞에 포지셔닝될 수 있다. 디스플레이(220)는 AR/VR/MR 콘텐츠를 사용자에게 제시할 수 있다. 디스플레이(220)는 사용자의 머리 상에 착용된 HMD(head mounted display)를 포함할 수 있다. 일부 실시예들에서, 스피커(240)는 프레임(230)에 커플링되고 사용자의 외이도에 인접하게 포지셔닝된다(일부 실시예들에서, 도시되지 않은 다른 스피커가 스테레오/성형가능 음향 제어를 제공하기 위해 사용자의 다른 외이도에 인접하게 포지셔닝된다).
[0037] 웨어러블 시스템(200)은 사용자 주위의 환경에서 세계를 관찰하는 외향 이미징 시스템(464)(도 4에 도시됨)을 포함할 수 있다. 웨어러블 시스템(200)은 또한 사용자의 눈 움직임들을 추적할 수 있는 내향 이미징 시스템(462)(도 4에 도시됨)을 포함할 수 있다. 내향 이미징 시스템은 어느 한 눈의 움직임들 또는 눈들 둘 모두의 움직임들을 추적할 수 있다. 내향 이미징 시스템(462)은 프레임(230)에 첨부될 수 있고, 프로세싱 모듈들(260 또는 270)과 전기 통신할 수 있으며, 모듈들(260 또는 270)은 내향 이미징 시스템에 의해 포착된 이미지 정보를 프로세싱하여, 예를 들어, 눈들의 동공 직경들 또는 배향들, 사용자(210)의 눈 움직임들 또는 눈 포즈를 결정할 수 있다.
[0038] 예로서, 웨어러블 시스템(200)은 사용자의 포즈의 이미지들을 포착하기 위해 외향 이미징 시스템(464) 또는 내향 이미징 시스템(462)을 사용할 수 있다. 이미지들은 스틸 이미지들, 비디오의 프레임들, 또는 비디오, 이들의 조합 등일 수 있다.
[0039] 디스플레이(220)는 예를 들어, 유선 리드 또는 무선 접속에 의해, 로컬 데이터 프로세싱 모듈(260)에 동작가능하게 커플링될 수 있으며(250), 로컬 데이터 프로세싱 모듈(260)은 프레임(230)에 고정적으로 첨부되는 것, 사용자에 의해 착용된 헬멧 또는 모자에 고정적으로 첨부되는 것, 헤드폰에 내장되는 것 또는 달리 착탈가능하게 (예를 들어, 배낭 스타일 구성, 벨트 커플링 스타일 구성으로) 사용자(210)에게 첨부되는 것과 같은 다양한 구성들로 장착될 수 있다.
[0040] 로컬 프로세싱 및 데이터 모듈(260)은 하드웨어 프로세서 뿐만 아니라 비휘발성 메모리(예를 들어, 플래시 메모리)와 같은 디지털 메모리를 포함할 수 있으며, 둘 모두는 데이터의 프로세싱, 캐싱 및 저장을 보조하기 위해 활용될 수 있다. 데이터는, a) 이미지 캡처 디바이스들(예를 들어, 내향 이미징 시스템 또는 외향 이미징 시스템 내의 카메라들)과 같은 센서들(예를 들어, 프레임(230)에 동작가능하게 커플링되거나 또는 달리 사용자(210)에 첨부될 수 있음), 마이크로폰들, IMU(inertial measurement unit)들(예를 들어, 가속도계들, 중력계들, 자력계들 등), 나침반들, GPS(global positioning system) 유닛들, 라디오 디바이스들 또는 자이로스코프들로부터 캡처되거나; 또는 b) 원격 프로세싱 모듈(270) 또는 원격 데이터 저장소(280)를 사용하여, 가능하게는 프로세싱 또는 리트리벌 이후 디스플레이(220)로의 통과를 위해 포착 또는 프로세싱된 데이터를 포함할 수 있다. 로컬 프로세싱 및 데이터 모듈(260)은 예를 들어, 유선 또는 무선 통신 링크들 통해 통신 링크들(262 또는 264)에 의해 원격 프로세싱 모듈(270) 또는 원격 데이터 저장소(280)에 동작가능하게 커플링되어, 이들 원격 모듈들은 로컬 프로세싱 및 데이터 모듈(260)에 대한 자원들로서 이용가능하다. 또한, 원격 프로세싱 모듈(280) 및 원격 데이터 저장소(280)는 서로 동작가능하게 커플링될 수 있다.
[0041] 일부 실시예들에서, 원격 프로세싱 모듈(270)은 데이터 및/또는 이미지 정보를 분석 및 프로세싱하도록 구성된 하나 이상의 프로세서들을 포함할 수 있다. 일부 실시예들에서, 원격 데이터 저장소(280)는 "클라우드" 자원 구성에서 인터넷 또는 다른 네트워킹 구성을 통해 이용가능할 수 있는 디지털 데이터 저장 설비를 포함할 수 있다. 일부 실시예들에서, 모든 데이터가 저장되고 모든 계산들이 로컬 프로세싱 및 데이터 모듈에서 수행되어 원격 모듈로부터 완전히 자율적인 사용을 허용한다.
[0042] 인간의 시각 시스템은 복잡하며 깊이에 대한 현실적인 지각을 제공하는 것은 어렵다. 이론에 제한되지 않고, 오브젝트의 뷰어들은 이접운동 및 원근조절의 조합으로 인해 "3차원"인 것으로 오브젝트를 지각할 수 있는 것으로 여겨진다. 서로에 대한 2개의 눈들의 이접운동 움직임들(즉, 오브젝트를 응시하기 위해 눈들의 시선들에 수렴하도록 서로를 향하는 또는 서로 멀어지는 동공들의 롤링 움직임들)은 눈들의 렌즈들의 포커싱(또는 "원근조절")과 밀접하게 연관된다. 정상적인 조건들 하에서, 하나의 오브젝트로부터 상이한 거리에 있는 다른 오브젝트로 초점을 변경하기 위해 눈들의 렌즈들의 초점을 변경하는 것 또는 눈을 원근조절하는 것은, "원근조절-이접운동 반사작용(reflex)"으로 공지된 관계 하에서 동일한 거리에 대한 이접운동에서의 매칭 변화를 자동으로 초래할 것이다. 마찬가지로, 이접운동에서의 변화는 정상적인 조건들 하에서 원근조절에서의 매칭 변화를 트리거링할 것이다. 원근조절과 이접운동 사이의 더 양호한 매칭을 제공하는 디스플레이 시스템들은 3차원 이미저리(imagery)의 더 현실적이고 더 편안한 시뮬레이션들을 형성할 수 있다.
[0043] 도 3은 다수의 깊이 평면들을 사용하여 3차원 이미저리를 시뮬레이트하기 위한 접근법의 양상들을 예시한다. 도 3을 참조하면, z-축 상에서 눈들(302 및 304)로부터 다양한 거리들에 있는 오브젝트들은 그러한 오브젝트들이 초점 내에 있도록 눈들(302 및 304)에 의해 원근조절된다. 눈들(302 및 304)은 특정한 원근조절된 상태들이 z-축을 따라 상이한 거리들에서 오브젝트들을 포커싱하게 된다고 가정한다. 결국, 특정한 원근조절된 상태는 깊이 평면들(306) 중 특정한 것과 연관되는 것으로 지칭되고, 이는, 연관된 초점 거리를 가져서, 특정한 깊이 평면 내의 물체들 또는 물체들의 부분들은 눈이 그 깊이 평면에 대해 원근조절된 상태일 때 초점이 맞는다. 일부 실시예들에서, 3차원 이미저리는 눈들(302 및 304) 각각에 대한 이미지의 상이한 프리젠테이션들을 제공함으로써 그리고 또한 깊이 평면들 각각에 대응하는 이미지의 상이한 프리젠테이션들을 제공함으로써 시뮬레이트될 수 있다. 예시의 명확화를 위해 별개인 것으로 도시되어 있지만, 눈들(302 및 304)의 시야들은 예를 들어, z-축을 따른 거리가 증가함에 따라 중첩할 수 있는 것을 인식할 것이다. 또한, 예시의 용이함을 위해 평탄한 것으로 도시되어 있지만, 깊이 평면의 윤곽들은 깊이 평면 내의 모든 특징부들이 특정한 원근조절된 상태에서 눈과 초점이 맞도록 물리적 공간에서 만곡될 수 있음을 인식할 것이다. 이론으로 제한됨이 없이, 인간의 눈은 통상적으로 깊이 인지를 제공하는 유한한 수의 깊이 평면들을 해석할 수 있는 것으로 여겨진다. 결국, 이러한 제한된 수의 깊이 평면들 각각에 대응하는 이미지의 상이한 프리젠테이션들을 눈에 제공함으로써, 인지된 깊이의 매우 신뢰가능한 시뮬레이션이 달성될 수 있다.
도파관 스택 조립체
[0044] 도 4는 이미지 정보를 사용자에게 출력하기 위한 도파관 스택의 예를 예시한다. 웨어러블 시스템(400)은 복수의 도파관들(432b, 434b, 436b, 438b, 4400b)을 사용하여 눈/뇌에 3차원적 인지를 제공하기 위해 활용될 수 있는 도파관들의 스택 또는 적층된 도파관 조립체(480)를 포함한다. 일부 실시예들에서, 웨어러블 시스템(400)은 도 2의 웨어러블 시스템(200)에 대응할 수 있고, 도 4는 그 웨어러블 시스템(200)의 일부 부분들을 더 상세히 개략적으로 도시한다. 예를 들어, 일부 실시예들에서, 도파관 조립체(480)는 도 2의 디스플레이(220)에 통합될 수 있다.
[0045] 도 4를 계속 참조하면, 도파관 조립체(480)는 또한 도파관들 사이에 다수의 특징부들(458, 456, 454, 452)을 포함할 수 있다. 일부 예들에서, 특징부들(458, 456, 454, 452)은 렌즈들일 수 있다. 다른 예들에서, 특징부들(458, 456, 454, 452)은 렌즈들이 아닐 수 있다. 오히려, 이들은 단순히 스페이서들(예를 들어, 에어 갭(air gap)들을 형성하기 위한 클래딩(cladding) 층들 또는 구조들)일 수 있다.
[0046] 도파관들(432b, 434b, 436b, 438b, 440b) 또는 복수의 렌즈들(458, 456, 454, 452)은 다양한 레벨들의 파면 곡률 또는 광선 발산으로 눈에 이미지 정보를 전송하도록 구성될 수 있다. 각각의 도파관 레벨은 특정 깊이 평면과 연관될 수 있고 그 깊이 평면에 대응하는 이미지 정보를 출력하도록 구성될 수 있다. 이미지 주입 디바이스들(420, 422, 424, 426, 428)은 도파관들(440b, 438b, 436b, 434b, 432b)에 이미지 정보를 주입하기 위해 활용될 수 있고, 이들 각각은 눈(410)을 향하는 출력을 위해 각각의 개별적인 도파관에 걸쳐 입사 광을 분산시키도록 구성될 수 있다. 광은 이미지 주입 디바이스들(420, 422, 424, 426, 428)의 출력 표면을 빠져 나가고 도파관들(440b, 438b, 436b, 434b, 432b)의 대응하는 입력 에지에 주입된다. 일부 실시예들에서, 광의 단일 빔(예를 들어, 시준된 빔)이 각각의 도파관 내로 주입되어 눈(410)을 향해 지향된 복제된 시준된 빔들의 전체 필드를, 특정 도파관과 연관된 깊이 평면에 대응하는 특정 각도들(및 발산량)으로 출력할 수 있다.
[0047] 일부 실시예들에서, 이미지 주입 디바이스들(420, 422, 424, 426, 428)은 각각 대응하는 도파관(440b, 438b, 436b, 434b, 432b)으로의 주입을 위한 이미지 정보를 각각 생성하는 개별 디스플레이들이다. 일부 다른 실시예들에서, 이미지 주입 디바이스들(420, 422, 424, 426, 428)은 단일 멀티플렉싱된 디스플레이의 출력 단부들이고, 이는 예를 들어 하나 이상의 광 도관들(예를 들어 광섬유 케이블들)을 통해 이미지 정보를 이미지 주입 디바이스들(420, 422, 424, 426, 428) 각각에 파이프(pipe)할 수 있다.
[0048] 제어기(460)는 적층된 도파관 조립체(480) 및 이미지 주입 디바이스들(420, 422, 424, 426, 428)의 동작을 제어한다. 제어기(460)는 타이밍 및 이미지 정보의 도파관들(440b, 438b, 436b, 434b, 432b)로의 제공을 조절하는 프로그래밍(예를 들어, 비일시적 컴퓨터 판독가능 매체의 명령들)을 포함한다. 일부 실시예들에서, 제어기(460)는 단일 통합 디바이스, 또는 유선 또는 무선 통신 채널들에 의해 연결된 분산형 시스템일 수 있다. 제어기(460)는 일부 실시예들에서 프로세싱 모듈들(260 또는 270)(도 2에 예시됨)의 일부일 수 있다.
[0049] 도파관들(440b, 438b, 436b, 434b, 432b)은 TIR(total internal reflection)에 의해 각각의 개별적인 도파관 내에서 광을 전파하도록 구성될 수 있다. 도파관들(440b, 438b, 436b, 434b, 432b)은 각각 평면형이거나 다른 형상(예를 들어, 곡선형)을 가질 수 있으며, 주 최상부 및 바닥 표면들 및 에지들은 이들 주 최상부 및 바닥 표면들 사이에서 연장된다. 예시된 구성에서, 도파관들(440b, 438b, 436b, 434b, 432b)은 각각, 눈(410)에 이미지 정보를 출력하기 위해 각각의 개별적인 도파관 내에서 전파되는 광을 도파관 밖으로 재지향시킴으로써 도파관 밖으로 광을 추출하도록 구성되는 광 추출 광학 엘리먼트들(440a, 438a, 436a, 434a, 432a)을 포함할 수 있다. 추출된 광은 또한 아웃커플링된(outcoupled) 광을 지칭할 수 있고, 광 추출 광학 엘리먼트들은 또한 아웃커플링 광학 엘리먼트들로 지칭될 수 있다. 추출된 광 빔은, 도파관에서 전파되는 광이 광 재지향 엘리먼트를 가격하는 위치들에서 도파관에 의해 출력된다. 광 추출 광학 엘리먼트들(440a, 438a, 436a, 434a, 432a)은 예를 들어 반사 또는 회절 광학 특징부들일 수 있다. 설명의 편의 및 도면 명확성을 위해 도파관들(440b, 438b, 436b, 434b, 432b)의 바닥 주 표면들에 배치되는 것으로 도시되어 있지만, 일부 실시예들에서, 광 추출 광학 엘리먼트들(440a, 438a, 436a, 434a, 432a)은 최상부 또는 바닥 주 표면들에 배치될 수 있거나, 또는 도파관들(440b, 438b, 436b, 434b, 432b)의 체적 내에 직접 배치될 수 있다. 일부 실시예들에서, 광 추출 광학 엘리먼트들(440a, 438a, 436a, 434a, 432a)은 도파관들(440b, 438b, 436b, 434b, 432b)을 형성하기 위해 투명 기판에 첨부된 재료 층으로 형성될 수 있다. 일부 다른 실시예들에서, 도파관들(440b, 438b, 436b, 434b, 432b)은 단일 편부 재료일 수 있고 광 추출 광학 엘리먼트들(440a, 438a, 436a, 434a, 432a)은 그 재료 편부의 표면 상에 또는 내부에 형성될 수 있다.
[0050] 도 4를 계속 참조하면, 본원에 논의된 바와 같이, 각각의 도파관(440b, 438b, 436b, 434b, 432b)은 특정 깊이 평면에 대응하는 이미지를 형성하기 위해 광을 출력하도록 구성된다. 예를 들어, 눈에 가장 가까운 도파관(432b)은 이러한 도파관(432b)에 주입된 바와 같이 시준된 광을 눈(410)에 전달하도록 구성될 수 있다. 시준된 광은 광학 무한 초점 평면을 표현할 수 있다. 다음 도파관 상부(434b)는 시준된 광이 눈(410)에 도달할 수 있기 전에 제1 렌즈(452)(예를 들어, 네거티브 렌즈)를 통과하는 시준된 광을 전송하도록 구성될 수 있다. 제1 렌즈(452)는 약간 볼록한 파면 곡률을 생성하도록 구성되어, 눈/뇌는 다음 도파관 상부(434b)로부터 오는 광이 광학 무한대로부터 눈(410)을 향해 더 가까운 안쪽의 제1 초점 평면으로부터 오는 것으로 해석할 수 있다. 유사하게, 제3 상부 도파관(436b)은 광이 눈(410)에 도달하기 전에 제1 렌즈(452) 및 제2 렌즈(454) 모두를 통해 출력 광을 통과시킨다. 제1 및 제2 렌즈들(452 및 454)의 조합된 광학 파워는 다른 증분량의 파면 곡률을 생성하도록 구성되어, 눈/뇌는 제3 도파관(436b)으로부터 오는 광을, 다음 도파관 상부(434b)로부터의 광보다 광학 무한대로부터 사람을 향해 더욱 더 가까운 안쪽의 제2 초점 평면으로부터 오는 것으로 해석할 수 있다.
[0051] 다른 도파관 층들(예를 들어, 도파관들(438b, 440b)) 및 렌즈들(예를 들어, 렌즈들(456, 458))은 유사하게 구성되며, 스택에서 가장 높은 도파관(440b)은 개인에 대한 가장 가까운 초점 평면을 표현하는 집합된 초점 파워에 대해 도파관과 눈 사이의 렌즈들 모두를 통해 출력을 전송한다. 적층된 도파관 조립체(480)의 다른 측의 세계(470)로부터 오는 광을 뷰잉/해석할 때 렌즈들의 스택(458, 456, 454, 452)을 보상하기 위해, 보상 렌즈 층(430)은 아래의 렌즈 스택(458, 456, 454, 452)의 집합된 파워를 보상하기 위해 스택의 최상부에 배치될 수 있다. 이러한 구성은 이용가능한 도파관/렌즈 쌍들이 존재하는 만큼 많은 인지된 초점 평면들을 제공한다. 도파관들의 광 추출 광학 엘리먼트들 및 렌즈들의 포커싱 양상들 둘 모두는 정적일 수 있다(예를 들어, 동적 또는 전기-활성이 아님). 일부 실시예들에서, 어느 하나 또는 둘 모두는 전기-활성 특징부들을 사용하여 동적일 수 있다.
[0052] 도 4를 계속 참조하면, 광 추출 광학 엘리먼트들(440a, 438a, 436a, 434a, 432a)은 자신들 각각의 도파관들 밖으로 광을 재지향시키는 것 및 이러한 광을 도파관과 연관된 특정 깊이 평면에 대한 적절한 발산 또는 시준양으로 출력하는 것 둘 모두를 위해 구성될 수 있다. 그 결과, 상이한 연관된 깊이 평면들을 갖는 도파관들은 광 추출 광학 엘리먼트들의 상이한 구성들을 가질 수 있고, 이는 연관된 깊이 평면에 따라 상이한 발산양으로 광을 출력한다. 일부 실시예들에서, 본원에 논의된 바와 같이, 광 추출 광학 엘리먼트들(440a, 438a, 436a, 434a, 432a)은 체적 또는 표면 특징부들일 수 있고, 이는 특정 각도들에서 광을 출력하도록 구성될 수 있다. 예를 들어, 광 추출 광학 엘리먼트들(440a, 438a, 436a, 434a, 432a)은 체적 홀로그램들, 표면 홀로그램들 및/또는 회절 격자들일 수 있다. 회절 격자들과 같은 광 추출 광학 엘리먼트들은 2015년 6월 25일자로 공개된 미국 특허 공개공보 제2015/0178939호에 설명되어 있으며, 상기 공개공보는 그 전체가 인용에 의해 본원에 통합된다.
[0053] 일부 실시예들에서, 광 추출 광학 엘리먼트들(440a, 438a, 436a, 434a, 432a)은 회절 패턴 또는 "회절 광학 엘리먼트"(또한 본원에서 "DOE"로 지칭됨)를 형성하는 회절 특징부들이다. 바람직하게는, DOE는 비교적 낮은 회절 효율을 가져서, 빔의 광의 오직 일부분만이 DOE의 각각의 교차점과 함께 눈(410)을 향하여 멀리 편향되는 한편, 나머지는 전체 내부 반사를 통해 도파관을 통해 계속 이동한다. 따라서, 이미지 정보를 운반하는 광은 다수의 위치들에서 도파관을 빠져 나가는 다수의 관련 출구 빔들로 분할될 수 있고, 그 결과는, 도파관 내에서 주위로 반사하는 이러한 특정 시준된 빔에 대한 눈(304)을 향하는 상당히 균일한 패턴의 출구 방출이다.
[0054] 일부 실시예들에서, 하나 이상의 DOE들은, 이들이 활성으로 회절시키는 "온" 상태와 이들이 현저하게 회절시키지 않는 "오프" 상태 사이에서 스위칭가능할 수 있다. 예를 들어, 스위칭가능한 DOE는 폴리머 분산 액정 층을 포함할 수 있고, 여기서 미세 액적들은 호스트 매체에서 회절 패턴을 포함하고, 미세 액적들의 굴절률은 호스트 재료의 굴절률에 실질적으로 매칭하도록 스위칭될 수 있거나(이러한 경우, 패턴은 입사 광을 상당히 회절시키지 않음), 또는 미세 액적은 호스트 매체의 굴절률에 매칭하지 않는 굴절률로 스위칭될 수 있다(이러한 경우, 패턴은 입사 광을 활성으로 회절시킴).
[0055] 일부 실시예들에서, 깊이 평면들 또는 필드의 깊이의 수 및 분포는 뷰어의 눈들의 동공 크기들 또는 배향들에 기초하여 동적으로 변경될 수 있다. 필드의 깊이는 뷰어의 동공 크기에 따라 반대로 변경될 수 있다. 그 결과, 뷰어의 눈들의 동공들의 크기들이 감소함에 따라, 필드의 깊이는 증가되어, 하나의 평면의 위치가 눈의 초점의 깊이를 넘어 있기 때문에 식별가능하지 않은 그 평면은 식별가능하게 되고, 동공 크기의 감소로 더 초점이 맞게 나타나고 필드의 깊이에서의 증가에 적합하게 될 수 있다. 마찬가지로, 뷰어에게 상이한 이미지들을 제시하기 위해 사용되는 이격된 깊이 평면들의 수는 동공 크기가 감소함에 따라 감소될 수 있다. 예를 들어, 뷰어는 하나의 깊이 평면으로부터 다른 깊이 평면으로 눈의 원근조절을 조정하지 않으면 하나의 동공 크기에서 제1 깊이 평면 및 제2 깊이 평면 둘 모두의 세부사항들을 명확하게 인지하지 못할 수 있다. 그러나, 이들 2개의 깊이 평면들은 원근조절을 변경함이 없이 다른 동공 크기에서 사용자에 대해 동시에 충분히 초점이 맞을 수 있다.
[0056] 일부 실시예들에서, 디스플레이 시스템은 동공 크기 또는 배향의 결정들에 기초하여, 또는 특정 동공 크기 또는 배향을 나타내는 전기 신호들을 수신하는 것에 기초하여, 이미지 정보를 수신하는 도파관들의 수를 변경할 수 있다. 예를 들어, 사용자의 눈들이 2개의 도파관들과 연관된 2개의 깊이 평면들을 구별할 수 없다면, 제어기(460)는 이들 도파관들 중 하나에 이미지 정보를 제공하는 것을 중단하도록 구성 또는 프로그래밍될 수 있다. 유리하게는, 이것은 시스템에 대한 프로세싱 부담을 감소시켜 시스템의 응답성을 증가시킬 수 있다. 도파관에 대한 DOE들이 온 상태와 오프 상태 사이에서 스위칭가능한 실시예들에서, DOE들은 도파관이 이미지 정보를 수신할 때 오프 상태로 스위칭될 수 있다.
[0057] 일부 실시예들에서, 출구 빔이 뷰어의 눈의 직경보다 작은 직경을 갖는 조건을 충족하는 것이 바람직할 수 있다. 그러나, 이러한 조건을 충족하는 것은 뷰어의 동공들의 크기에서 가변성 관점에서 어려울 수 있다. 일부 실시예들에서, 이러한 조건은 뷰어의 동공 크기의 결정들에 응답하여 출구 빔의 크기를 변경함으로써 광범위한 동공 크기들에 걸쳐 충족된다. 예를 들어, 동공 크기가 감소함에 따라, 출구 빔의 크기가 또한 감소할 수 있다. 일부 실시예들에서, 출구 빔 크기는 가변 애퍼처를 사용하여 변경될 수 있다.
[0058] 웨어러블 시스템(400)은 세계(470)의 일부를 이미징하는 외향 이미징 시스템(464)(예를 들어, 디지털 카메라)을 포함할 수 있다. 세계(470)의 이러한 부분은 세계 카메라의 FOV(field of view)로 지칭될 수 있고, 이미징 시스템(464)은 때때로 FOV 카메라로 지칭된다. 뷰어에 의한 뷰잉 또는 이미징에 이용가능한 전체 영역은 FOR(field of regard)로 지칭될 수 있다. FOR는, 착용자가 자신의 신체, 머리 또는 눈들을 이동하여 공간에서 실질적으로 임의의 방향을 인지할 수 있기 때문에, 웨어러블 시스템(400)을 둘러싼 4π 스테라디안(steradian) 입체각을 포함할 수 있다. 다른 맥락에서, 착용자의 움직임은 더 제한될 수 있고, 따라서 착용자의 FOR은 더 작은 입체각을 대할 수 있다. 외향 이미징 시스템(464)으로부터 획득된 이미지들은 사용자에 의해 행해진 제스처들(예를 들어, 손 또는 손가락 제스처들)을 추적하고, 사용자 앞에 있는 세계(470)의 오브젝트들을 검출하는 것 등에 사용될 수 있다.
[0059] 웨어러블 시스템(400)은 또한 눈 움직임들 및 얼굴 움직임들과 같은 사용자의 움직임들을 관찰하는 내향 이미징 시스템(466)(예를 들어, 디지털 카메라)을 포함할 수 있다. 내향 이미징 시스템(466)은 눈(410)의 이미지들을 캡처하여 눈(304)의 동공의 크기 및/또는 배향을 결정하기 위해 사용될 수 있다. 내향 이미징 시스템(466)은 사용자가 보고 있는 방향(예를 들어, 눈 포즈)을 결정할 때 사용하기 위해 또는 (예를 들어, 홍채 식별을 통한) 사용자의 생체인식 식별을 위해 이미지들을 획득하기 위해 사용될 수 있다. 일부 실시예들에서, 각각의 눈의 동공 크기 또는 눈 포즈를 독립적으로 결정하기 위해 적어도 하나의 카메라가 각각의 눈에 대해 개별적으로 활용되어, 각각의 눈에 대한 이미지 정보의 프리젠테이션이 그 눈에 동적으로 맞춤화되게 할 수 있다. 일부 다른 실시예들에서, 오직 단일 눈(410)의 동공 직경 또는 배향(예를 들어, 한 쌍의 눈들마다 하나의 카메라만 사용함)이 결정되고 사용자의 두 눈들에 대해 유사한 것으로 가정된다. 내향 이미징 시스템(466)에 의해 획득된 이미지들은 사용자의 눈 포즈 또는 기분을 결정하기 위해 분석될 수 있으며, 이는 어느 오디오 또는 시각적 콘텐츠가 사용자에게 제시되어야 하는지를 결정하기 위해 웨어러블 시스템(400)에 의해 사용될 수 있다. 웨어러블 시스템(400)은 또한 (가속도계, 자이로스코프, 또는 자력계를 포함할 수 있는) 하나 이상의 머리 포즈 센서들 등을 사용하여 머리 포즈(예를 들어, 머리 포지션 또는 머리 배향)를 결정할 수 있다.
[0060] 웨어러블 시스템(400)은 사용자 입력 디바이스(466)를 포함할 수 있고, 이에 의해, 사용자는 웨어러블 시스템(400)과 상호작용하기 위해 커맨드들을 제어기(460)에 입력할 수 있다. 예를 들어, 사용자 입력 디바이스(466)는 트랙패드, 터치스크린, 조이스틱, 다중 DOF(degree-of-freedom) 제어기, 용량성 감지 디바이스, 게임 제어기, 키보드, 마우스, 방향 패드(D-패드), 지팡이, 햅틱 디바이스, 토템(예를 들어, 가상 사용자 입력 디바이스로 기능함) 등을 포함할 수 있다. 다중-DOF 제어기는 제어기의 일부 또는 모든 가능한 병진운동들(예를 들어, 좌측/우측, 앞/뒤 또는 위/아래) 또는 회전들(예를 들어, 요(yaw), 피치(pitch) 또는 롤(roll))에서 사용자 입력을 감지할 수 있다. 병진운동들을 지원하는 다중-DOF 제어기는 3DOF로 지칭될 수 있는 반면, 병진운동들 및 회전들을 지원하는 다중-DOF 제어기는 6DOF로 지칭될 수 있다. 일부 경우들에, 사용자는 웨어러블 시스템(400)에 입력을 제공하기 위해(예를 들어, 웨어러블 시스템(400)에 의해 제공된 사용자 인터페이스에 사용자 입력을 제공하기 위해) 터치 감응 입력 디바이스를 누르거나 스와이프(swipe)하기 위해 손가락(예를 들어, 엄지)을 사용할 수 있다. 사용자 입력 디바이스(466)는 웨어러블 시스템(400)을 사용하는 동안 사용자의 손에 의해 홀딩될 수 있다. 사용자 입력 디바이스(466)는 웨어러블 시스템(400)과 유선 또는 무선 통신할 수 있다.
[0061] 도 5는 도파관에 의해 출력된 출사 빔들의 예를 도시한다. 하나의 도파관이 예시되지만, 도파관 조립체(480) 내의 다른 도파관들이 유사하게 기능할 수 있고, 여기서 도파관 조립체(480)는 다수의 도파관들을 포함하는 것을 인식할 것이다. 광(520)은 도파관(432b)의 입력 에지(432c)에서 도파관(432b)으로 주입되고 TIR에 의해 도파관(432b) 내에서 전파된다. 광(520)이 DOE(432a) 상에 부딪치는 포인트들에서, 광의 일부분은 출사 빔들(510)로서 도파관을 빠져 나간다. 출사 빔들(510)은 실질적으로 평행하게 예시되지만, 이들은 또한 도파관(432b)과 연관된 깊이 평면에 따라, 소정 각도(예를 들어, 발산 출사 빔들을 형성함)에서 눈(410)으로 전파되도록 재지향될 수 있다. 실질적으로 평행한 출사 빔들은 눈(410)으로부터 먼 거리(예를 들어, 광학 무한대)에 있는 깊이 평면 상에 설정되는 것으로 보이는 이미지들을 형성하기 위해 광을 아웃커플링(outcouple)하는 광 추출 광학 엘리먼트들을 갖는 도파관을 표시할 수 있음을 인식할 것이다. 다른 도파관들 또는 광 추출 광학 엘리먼트들의 다른 세트들은 더 발산하는 출사 빔 패턴을 출력할 수 있고, 이는, 망막 상에 초점을 맞추기 위해 눈(410)이 더 가까운 거리에 원근조절하도록 요구할 것이고, 광학 무한대보다 눈(410)에 더 가까운 거리로부터의 광으로 뇌에 의해 해석될 것이다.
[0062] 도 6은 도파관 장치, 도파관 장치로 또는 그로부터 광을 광학적으로 커플링하는 광학 커플러 서브시스템, 및 다초점 볼륨 디스플레이, 이미지 또는 광 필드의 생성에서 사용되는 제어 서브시스템을 포함하는 광학 시스템을 도시하는 개략도이다. 광학 시스템은 도파관 장치, 도파관 장치로 또는 그로부터 광을 광학적으로 커플링하는 광학 커플러 서브시스템, 및 제어 서브시스템을 포함할 수 있다. 광학 시스템은 다초점 볼륨 이미지 또는 광 필드를 생성하기 위해 사용될 수 있다. 광학 시스템은 하나 이상의 1차 평면 도파관들(632a)(오직 하나만 도 6에 도시됨) 및 1차 도파관들(632a) 중 적어도 일부 각각과 연관되는 하나 이상의 DOE들(632b)을 포함할 수 있다. 평면 도파관들(632b)은 도 4를 참조하여 논의된 도파관들(432b, 434b, 436b, 438b, 440b)과 유사할 수 있다. 광학 시스템은 제1 축(도 6의 뷰에서 수직 또는 Y-축)을 따라 광을 중계하고 제1 축(예를 들어, Y-축)을 따라 광의 유효 출사 동공을 확장시키기 위해 분산 도파관 장치를 이용할 수 있다. 분산 도파관 장치는, 예를 들어, 분산 평면 도파관(622b) 및 분산 평면 도파관(622b)과 연관된 적어도 하나 DOE(622a)(이점 쇄선으로 예시됨)를 포함할 수 있다. 분산 평면 도파관(622b)은 그와는 상이한 배향을 갖는 1차 평면 도파관(632b)에 대해 적어도 일부 측면들에서 유사하거나 동일할 수 있다. 마찬가지로, 적어도 하나의 DOE(622a)는 DOE(632a)에 대해 적어도 일부 측면들에서 유사하거나 동일할 수 있다. 예를 들어, 분산 평면 도파관(622b) 또는 DOE(622a)는 1차 평면 도파관(632b) 또는 DOE(632a)와 각각 동일한 재료들로 구성될 수 있다. 도 6에 도시된 광학 디스플레이 시스템(600)의 실시예들은 도 2에 도시된 웨어러블 시스템(200)에 통합될 수 있다.
[0063] 중계되고 출사 동공 확장된 광은 분산 도파관 장치로부터 하나 이상의 1차 평면 도파관들(632b)로 광학적으로 커플링될 수 있다. 1차 평면 도파관(632b)은 바람직하게는 제1 축(예를 들어, 도 6의 뷰에서 수평 또는 X-축)에 직교하는 제2 축을 따라 광을 중계할 수 있다. 특히, 제2 축은 제1 축에 비직교하는 축일 수 있다. 1차 평면 도파관(632b)은 그 제2 축(예를 들어, X-축)을 따라 광의 유효 출사 동공을 확장한다. 예를 들어, 분산 평면 도파관(622b)은 수직 또는 Y-축을 따라 광을 중계 및 확장하고, 그 광을, 수평 또는 X-축을 따라 광을 중계 및 확장할 수 있는 1차 평면 도파관(632b)에 전달할 수 있다.
[0064] 광학 시스템은 단일 모드 광섬유(640)의 근위 단부에 광학적으로 커플링될 수 있는 하나 이상의 착색된 광원들(예를 들어, 적색, 녹색 및 청색 레이저 광)(610)을 포함할 수 있다. 광 섬유(640)의 원위 단부는 압전 재료의 중공 튜브(642)를 통해 스레드 또는 수용될 수 있다. 원위 단부는 고정되지 않은 유연한 캔틸레버(644)로서 튜브(642)로부터 돌출된다. 압전 튜브(642)는 4개의 사분면 전극들(예시되지 않음)과 연관될 수 있다. 전극들은 예를 들어, 튜브(642)의 외부, 외측 표면 또는 외측 둘레 또는 직경 상에 도금될 수 있다. 코어 전극(예시되지 않음)은 또한 튜브(642)의 코어, 중심, 내측 둘레 또는 내경에 위치될 수 있다.
[0065] 예를 들어, 와이어들(660)을 통해 전기적으로 커플링되는 구동 전자장치(650)가 압전 튜브(642)를 2개의 축들에서 독립적으로 구부리도록 전극들의 대향 쌍들을 구동시킨다. 광섬유(644)의 돌출된 원위 팁은 기계적 공진 모드들을 갖는다. 공진 주파수들은 광섬유(644)의 직경, 길이 및 재료 속성들에 의존할 수 있다. 압전 튜브(642)를 섬유 캔틸레버(644)의 제1 기계적 공진 모드 근처에서 진동시킴으로써, 섬유 캔틸레버(644)는 진동하게 될 수 있고, 큰 편향들을 통해 스윕할 수 있다.
[0066] 2개의 축들에서 공진 진동을 자극함으로써, 섬유 캔틸레버(644)의 팁은 2D(two-dimensional) 스캐닝을 채우는 영역에서 2축으로 스캐닝된다. 섬유 캔틸레버(644)의 스캐닝과 동기식으로 광원(들)(610)의 강도를 변조함으로써, 섬유 캔틸레버(644)로부터 나오는 광은 이미지를 형성할 수 있다. 이러한 셋업의 설명들은 미국 특허 공개공보 제2014/0003762호에서 제공되며, 상기 공개공보는 그 전체가 인용에 의해 본원에 통합된다.
[0067] 광학 커플러 서브시스템의 컴포넌트는 스캐닝 섬유 캔틸레버(644)로부터 나오는 광을 시준할 수 있다. 시준된 광은 미러형 표면(648)에 의해 적어도 하나의 DOE(diffractive optical element)(622a)를 포함하는 좁은 분산 평면 도파관(622b)으로 반사될 수 있다. 시준된 광은 TIR에 의해 분산 평면 도파관(622b)을 따라 (도 6의 뷰에 대해) 수직으로 전파될 수 있고, 이를 행할 때 DOE(622a)와 반복적으로 교차된다. DOE(622a)는 바람직하게는 낮은 회절 효율을 갖는다. 이는, 광의 일부(예를 들어, 10%)는 DOE(622a)와의 교차점의 각각의 포인트에서 더 큰 1차 평면형 도파관(632b)의 에지를 향해 회절되게 하고, 광의 일부는 TIR을 통해 분산 평면 도파관(622b)의 길이 아래로 자신의 원래의 궤적에서 계속되게 할 수 있다.
[0068] DOE(622a)와의 교차점의 각각의 포인트에서, 추가적인 광이 1차 도파관(632b)의 입구를 향해 회절될 수 있다. 착신 광을 다수의 아웃커플링된 세트들로 분할함으로써, 광의 출사 동공은 분산 평면 도파관(622b)에서 DOE(4)에 의해 수직으로 확장될 수 있다. 분산 평면 도파관(622b) 밖으로 커플링된 이러한 수직으로 확장된 광은 1차 평면형 도파관(632b)의 에지에 진입할 수 있다.
[0069] 광 진입 1차 도파관(632b)은 TIR을 통해 1차 도파관(632b)을 따라 (도 6의 뷰에 대해) 수평으로 전파될 수 있다. 광이 다수의 포인트들에서 DOE(632a)와 교차함에 따라, 광은 TIR을 통해 1차 도파관(632b)의 길이의 적어도 일부를 따라 수평으로 전파된다. DOE(632a)는 유리하게는, 광의 편향 및 포커싱 둘 모두를 생성하기 위해, 선형 회절 패턴과 방사상 대칭인 회절 패턴의 합산인 위상 프로파일을 갖도록 설계 또는 구성될 수 있다. DOE(632a)는 유리하게는 낮은 회절 효율(예를 들어, 10%)을 가져서, 빔의 광의 오직 일부분만이 DOE(632a)의 각각의 교차점에 의해 뷰의 눈을 향해 편향되는 한편, 광의 나머지는 TIR을 통한 1차 도파관(632b)을 통해 계속 전파될 수 있다.
[0070] 전파되는 광과 DOE(632a) 사이의 교차점의 각각의 포인트에서, 광의 일부는 1차 도파관(632b)의 인접 면을 향해 회절되어, 광이 TIR을 빠져 나가서 1차 도파관(632b)의 면으로부터 나오도록 허용한다. 일부 실시예들에서, DOE(632a)의 방사상으로 대칭인 회절 패턴은 회절된 광에 초점 레벨을 추가적으로 부과하여, 개별적인 빔의 광 파면을 성형(예를 들어, 곡률을 부과함)할 뿐만 아니라 광을 설계된 초점 레벨에 매칭하는 각도로 스티어링한다.
[0071] 따라서, 이러한 상이한 경로들은 상이한 각도들, 초점 레벨들에서 다수의 DOE들(632a)에 의해 및/또는 출사 동공에서 상이한 필(fill) 패턴들을 도출함으로써 1차 평면형 도파관(632b) 밖으로 커플링되게 할 수 있다. 출사 동공에서 상이한 필 패턴들은 다수의 깊이 평면들을 갖는 광 필드 디스플레이를 생성하기 위해 유리하게 사용될 수 있다. 도파관 조립체의 각각의 층 또는 스택 내의 층들의 세트(예를 들어, 3개의 층들)가 개개의 컬러(예를 들어, 적색, 청색, 녹색)를 생성하기 위해 이용될 수 있다. 따라서, 예를 들어, 제1 세트의 3개의 인접 층들이 제1 초점 깊이에서 적색, 청색 및 녹색 광을 각각 생성하기 위해 이용될 수 있다. 제2 세트의 3개의 인접 층들이 제2 초점 깊이에서 적색, 청색 및 녹색 광을 각각 생성하기 위해 이용될 수 있다. 다양한 초점 깊이들을 갖는 전체 3D 또는 4D 컬러 이미지 광 필드를 생성하기 위해 다수의 세트들이 이용될 수 있다.
웨어러블 시스템의 다른 컴포넌트들
[0072] 많은 구현들에서, 웨어러블 시스템은 전술한 웨어러블 시스템의 컴포넌트들에 추가하여 또는 그에 대한 대안적으로 다른 컴포넌트들을 포함할 수 있다. 웨어러블 시스템은 예를 들어 하나 이상의 햅틱 디바이스들 또는 컴포넌트들을 포함할 수 있다. 햅틱 디바이스들 또는 컴포넌트들은 사용자에게 촉각 감각을 제공하도록 동작가능할 수 있다. 예를 들어, 햅틱 디바이스들 또는 컴포넌트들은 가상 콘텐츠(예를 들어, 가상 오브젝트들, 가상 툴들, 다른 가상 구성들)를 터치할 때 압력 또는 텍스처의 촉각 감각을 제공할 수 있다. 촉각 감각은 가상 오브젝트가 표현하는 물리적 오브젝트의 느낌을 복제할 수 있거나 또는 가상 콘텐츠가 표현하는 상상의 오브젝트 또는 캐릭터(예를 들어, 용)의 느낌을 복제할 수 있다. 일부 구현들에서, 햅틱 디바이스들 또는 컴포넌트들은 사용자에 의해 착용될 수 있다(예를 들어, 사용자 웨어러블 장갑). 일부 구현들에서, 햅틱 디바이스들 또는 컴포넌트들은 사용자에 의해 홀딩될 수 있다.
[0073] 웨어러블 시스템은, 예를 들어, 웨어러블 시스템과의 입력 또는 상호작용을 허용하기 위해 사용자에 의해 조작가능한 하나 이상의 물리적 오브젝트들을 포함할 수 있다. 이러한 물리적 오브젝트들은 본원에서 토템들로 지칭될 수 있다. 일부 토템들은 예를 들어 금속 또는 플라스틱 조각, 벽, 테이블 표면과 같은 무생물 오브젝트들의 형태를 취할 수 있다. 특정 구현들에서, 토템들은 실제로 임의의 물리적 입력 구조들(예를 들어, 키들, 트리거들, 조이스틱, 트랙볼, 로커 스위치)을 갖지 않을 수 있다. 대신에, 토템은 단순히 물리적 표면을 제공할 수 있고, 웨어러블 시스템은 사용자에게 토템의 하나 이상의 표면들 상에 있는 것처럼 사용자에게 나타나도록 사용자 인터페이스를 렌더링할 수 있다. 예를 들어, 웨어러블 시스템은 컴퓨터 키보드 및 트랙패드의 이미지를 토템의 하나 이상의 표면들 상에 존재하는 것으로 보이도록 렌더링할 수 있다. 예를 들어, 웨어러블 시스템은 가상 컴퓨터 키보드 및 가상 트랙패드를 토템으로서 역할을 하는 얇은 직사각형 알루미늄 플레이트의 표면 상에 나타나도록 렌더링할 수 있다. 직사각형 플레이트 자체는 물리적 키들, 또는 트랙패드 또는 센서들을 갖지 않는다. 그러나, 웨어러블 시스템은 가상 키보드 또는 가상 트랙패드를 통해 행해진 선택들 또는 입력들로서 직사각형 판과의 사용자 조작 또는 상호작용 또는 터치들을 검출할 수 있다. 사용자 입력 디바이스(466)(도 4에 도시됨)는 트랙패드, 터치패드, 트리거, 조이스틱, 트랙볼, 로커 또는 가상 스위치, 마우스, 키보드, 다중 자유도 제어기 또는 다른 물리적 입력 디바이스를 포함할 수 있는 토템의 실시예일 수 있다. 사용자는 웨어러블 시스템 또는 다른 사용자들과 상호작용하기 위해 토템을 단독으로 또는 포즈들과 조합하여 사용할 수 있다.
[0074] 본 개시의 웨어러블 디바이스들, HMD 및 디스플레이 시스템들과 함께 사용가능한 햅틱 디바이스들 및 토템들의 예들은 미국 특허 공개공보 제2015/0016777호에 기재되어 있으며, 이는 그 전체가 인용에 의해 본원에 통합된다.
예시적인 웨어러블 시스템들, 환경들 및 인터페이스들
[0075] 웨어러블 시스템은 렌더링된 광 필드들에서 큰 필드 깊이를 달성하기 위해, 다양한 맵핑 관련 기술들을 이용할 수 있다. 가상 세계를 맵핑 아웃할 때, 실세계와 관련된 가상 오브젝트들을 정확하게 묘사하기 위해 실세계의 특징부들 및 포인트들 모두를 아는 것이 유리하다. 이를 위해, 웨어러블 시스템의 사용자들로부터 캡처된 FOV 이미지들은 실세계의 다양한 포인트들 및 특징부들에 대한 정보를 전달하는 새로운 픽처들을 포함시킴으로써 세계 모델에 추가될 수 있다. 예를 들어, 웨어러블 시스템은 맵 포인트들(예를 들어, 2D 포인트들 또는 3D 포인트들)의 세트를 수집하고, 세계 모델의 더 정확한 버전을 렌더링하기 위해 새로운 맵 포인트들을 찾을 수 있다. 제1 사용자의 세계 모델은 (예를 들어, 클라우드 네트워크와 같은 네트워크를 통해) 제2 사용자에게 통신될 수 있어서, 제2 사용자는 제1 사용자를 둘러싼 세계를 경험할 수 있다.
[0076] 도 7은 MR 환경(700)의 예의 블록도이다. MR 환경(700)은 하나 이상의 사용자 웨어러블 시스템들(예를 들어, 웨어러블 시스템(200) 또는 디스플레이 시스템(220)) 또는 정적 룸 시스템들(예를 들어, 룸 카메라들 등)로부터 입력(예를 들어, 사용자의 웨어러블 시스템으로부터의 가상 입력(702), 정적 입력(704), 예를 들어, 룸 카메라들, 다양한 센서들로부터의 감각 입력(706), 제스처들, 토템들, 눈 추적, 사용자 입력 디바이스(466)로부터의 사용자 입력 등)을 수신하도록 구성될 수 있다. 웨어러블 시스템들은 사용자의 환경의 위치 및 다양한 다른 속성들을 결정하기 위해 다양한 센서들(예를 들어, 가속도계들, 자이로스코프들, 온도 센서들, 움직임 센서들, 깊이 센서들, GPS 센서들, 내향 이미징 시스템, 외향 이미징 시스템 등)을 사용할 수 있다. 이러한 정보는 상이한 시점으로부터 이미지들 또는 다양한 큐(cue)들을 제공할 수 있는 룸 내의 정적 카메라들로부터의 정보로 추가로 보충될 수 있다. 카메라들(예를 들어, 룸 카메라들 및/또는 외향 이미징 시스템의 카메라들)에 의해 포착된 이미지 데이터는 맵핑 포인트들의 세트로 감소될 수 있다.
[0077] 하나 이상의 오브젝트 인식기들(708)은 수신된 데이터(예를 들어, 포인트들의 수집물)를 통해 크롤(crawl)하고, 포인트들은 인식 또는 맵핑하고, 이미지들을 태그하고, 맵 데이터베이스(710)의 도움으로 오브젝트들에 시맨틱 정보를 첨부할 수 있다. 맵 데이터베이스(710)는 시간에 걸쳐 수집된 다양한 포인트들 및 이들의 대응하는 오브젝트들을 포함할 수 있다. 다양한 디바이스들 및 맵 데이터베이스는 클라우드에 액세스하기 위해 네트워크(예를 들어, LAN, WAN 등)를 통해 서로 접속될 수 있다.
[0078] 이러한 정보 및 맵 데이터베이스 내의 포인트들의 수집물에 기초하여, 오브젝트 인식기들(708a 내지 708n)은 환경 내의 오브젝트들을 인식할 수 있다. 예를 들어, 오브젝트 인식기들은 얼굴들, 사람들, 창문들, 벽들, 사용자 입력 디바이스들, 텔레비전들, 사용자의 환경 내의 다른 오브젝트들 등을 인식할 수 있다. 하나 이상의 오브젝트 인식기들은 특정 특성들을 갖는 오브젝트에 대해 특수화될 수 있다. 예를 들어, 오브젝트 인식기(708a)는 얼굴들을 인식하기 위해 사용될 수 있는 한편, 토템들을 인식하기 위해 다른 오브젝트 인식기가 사용될 수 있다.
[0079] 오브젝트 인식들은 다양한 컴퓨터 비전 기술들을 사용하여 수행될 수 있다. 예를 들어, 웨어러블 시스템은 장면 재구성, 이벤트 검출, 비디오 추적, 오브젝트 인식, 오브젝트 포즈 추정, 학습, 인덱싱, 모션 추정 또는 이미지 복구 등을 수행하기 위해 외향 이미징 시스템(464)(도 4에 도시됨)에 의해 포착된 이미지들을 분석할 수 있다. 이러한 작업들을 수행하기 위해 하나 이상의 컴퓨터 비전 알고리즘들이 사용될 수 있다. 컴퓨터 비전 알고리즘들의 비-제한적인 예들은: SIFT(Scale-invariant feature transform), SURF(speeded up robust features), ORB(oriented FAST and rotated BRIEF), BRISK(binary robust invariant scalable keypoints), FREAK(fast retina keypoint), Viola-Jones 알고리즘, Eigenfaces 접근법, Lucas-Kanade 알고리즘, Horn-Schunk 알고리즘, Mean-shift 알고리즘, vSLAM(visual simultaneous location and mapping) 기법들, 순차적 Bayesian 추정기(예컨대, Kalman 필터, 확장된 Kalman 필터, 등), 번들 조절, 적응형 임계화(및 다른 임계화 기법들), ICP(Iterative Closest Point), SGM(Semi Global Matching), SGBM(Semi Global Block Matching), 특징 포인트 히스토그램들, 다양한 머신 학습 알고리즘들(이를테면, 예컨대, 지원 벡터 머신, k-니어리스트 이웃 알고리즘, Naive Bayes, 중립 네트워크(콘벌루셔널 또는 딥 뉴럴 네트워크들을 포함함), 또는 다른 감독된/비감독된 모델들 등) 등을 포함한다.
[0080] 일부 실시예들에서, 오브젝트 인식들은 다양한 머신 학습 알고리즘들에 의해 수행될 수 있다. 트레이닝되면, 머신 학습 알고리즘은 HMD에 의해 저장될 수 있다. 머신 러닝 알고리즘들의 일부 예들은, 회귀 알고리즘들(이를테면, 예를 들어, 일반 최소 제곱 회귀), 인스턴스-기반 알고리즘들(이를테면, 예를 들어, 학습 벡터 양자화), 판정 없는 알고리즘들(이를테면, 예를 들어, 분류 및 회귀 트리들), 베이지안 알고리즘들(이를테면, 예를 들어, 나이브 베이즈(Naive Bayes)), 클러스터링 알고리즘들(이를테면, 예를 들어, k-평균 클러스터링), 연관 규칙 학습 알고리즘들(이를테면, 예를 들어, 선험적 알고리즘들), 인공 신경 네트워크 알고리즘들(이를테면, 예를 들어, 퍼셉트론(Perceptron)), 딥 러닝 알고리즘들(이를테면, 예를 들어, 딥 볼쯔만 머신(Deep Boltzmann Machine) 또는 딥 신경 네트워크), 차원 축소 알고리즘들(이를테면, 예를 들어, 주 컴포넌트 분석), 앙상블 알고리즘들(이를테면, 예를 들어, 적층된 일반화) 및/또는 다른 머신 학습 알고리즘들을 포함하는 감독된 또는 비-감독된 머신 학습 알고리즘들을 포함할 수 있다. 일부 실시예들에서, 개별적인 모델들은 개별적인 데이터 세트들에 대해 맞춤화될 수 있다. 예를 들어, 웨어러블 디바이스는 베이스 모델을 생성 또는 저장할 수 있다. 베이스 모델은 데이터 타입(예를 들어, 텔레프레즌스 세션에서 특정 사용자), 데이터 세트(예를 들어, 텔레프레즌스 세션에서 사용자에 의해 획득된 추가적인 이미지들의 세트), 조건부 상황들 또는 다른 변형들에 특정된 추가적인 모델들을 생성하기 위한 시작 포인트로서 사용될 수 있다. 일부 실시예들에서, 웨어러블 HMD는 집계된 데이터의 분석을 위한 모델들을 생성하기 위해 복수의 기술들을 활용하도록 구성될 수 있다. 다른 기술들은 미리 정의된 임계치들 또는 데이터 값들을 사용하는 것을 포함할 수 있다.
[0081] 이러한 정보 및 맵 데이터베이스 내의 포인트들의 수집물에 기초하여, 오브젝트 인식기들(708a 내지 708n)은 오브젝트들을 인식하고 오브젝트들에 시맨틱 정보를 보충하여 오브젝트들에 생명을 부여할 수 있다. 예를 들어, 오브젝트 인식기가 포인트들의 세트를 도어인 것으로 인식하는 경우, 시스템은 일부 시맨틱 정보를 첨부할 수 있다(예를 들어, 도어는 힌지를 가지며 힌지에 대해 90 도의 움직임을 가짐). 오브젝트 인식기가 포인트들의 세트를 미러로 인식하는 경우, 시스템은 미러가 방에 있는 오브젝트들의 이미지들을 반영할 수 있는 반사 표면을 갖는다는 시맨틱 정보를 첨부할 수 있다. 시간이 지남에 따라, 맵 데이터베이스는 시스템이 세계로부터 더 많은 데이터를 누적함에 따라 성장한다(이는 로컬로 상주할 수 있거나 무선 네트워크를 통해 액세스가능할 수 있다). 오브젝트들이 인식되면, 정보는 하나 이상의 웨어러블 시스템들에 송신될 수 있다. 예를 들어, MR 환경(700)은 캘리포니아에서 발생한 장면에 대한 정보를 포함할 수 있다. 환경(700)은 뉴욕 내의 하나 이상의 사용자들에 송신될 수 있다. FOV 카메라 및 다른 입력들로부터 수신된 데이터에 기초하여, 오브젝트 인식기들 및 다른 소프트웨어 컴포넌트들은 다양한 이미지들로부터 수집된 포인트들을 맵핑하고, 오브젝트들을 인식하는 등을 할 수 있어서, 장면은 세계의 다른 부분에 있을 수 있는 제2 사용자에게 정확하게 "전달"될 수 있다. 환경(700)은 또한 로컬화를 위해 토폴로지 맵을 사용할 수 있다.
[0082] 도 8은 인식된 오브젝트들과 관련된 가상 콘텐츠를 렌더링하는 방법(800)의 예의 프로세스 흐름도이다. 방법(800)은 가상 장면이 웨어러블 시스템의 사용자에게 어떻게 표현될 수 있는지를 설명한다. 사용자는 장면으로부터 지리적으로 원격에 있을 수 있다. 예컨대, 사용자는 뉴욕에 있을 수 있지만, 현재 캘리포니아에서 현재 진행되고 있는 장면을 뷰잉하기를 원하거나 캘리포니아에 거주하는 친구와 산책하기를 원할 수 있다.
[0083] 블록(810)에서, 웨어러블 시스템은 사용자 및 다른 사용자들로부터 사용자의 환경에 관한 입력을 수신할 수 있다. 이는, 다양한 입력 디바이스들 및 지도 데이터베이스에서 이미 있는 지식을 통해 달성될 수 있다. 사용자의 FOV 카메라, 센서들, GPS, 눈 추적 등은 블록(810)에서 시스템에 정보를 전달한다. 시스템은 블록(820)에서 이 정보에 기반하여 드문 포인트들을 결정할 수 있다. 드문 포인트들은 사용자 주변들의 다양한 오브젝트들의 배향 및 포지션을 디스플레이하고 이해하는데 사용될 수 있는 포즈 데이터(예컨대, 머리 포즈, 눈 포즈, 신체 포즈 또는 손 제스처들)를 결정하는데 사용될 수 있다. 오브젝트 인식기들(708a-708n)은 블록(830)에서 이러한 수집된 포인트들을 통해 크롤하고 지도 데이터베이스를 사용하여 하나 이상의 오브젝트들을 인식할 수 있다. 이어서, 이 정보는 블록(840)에서 사용자의 개별적인 웨어러블 시스템에 전달될 수 있고, 블록(850)에서 원하는 가상 장면이 그에 따라서 사용자에게 디스플레이될 수 있다. 예컨대, 원하는 가상 장면(예컨대, CA의 사용자)은 뉴욕의 사용자의 다양한 오브젝트들 및 다른 주변들과 관련하여 적절한 배향, 포지션 등에서 디스플레이될 수 있다.
[0084] 도 9는 웨어러블 시스템의 다른 예의 블록도이다. 이 예에서, 웨어러블 시스템(900)은 세계에 대한 지도 데이터를 포함할 수 있는 지도를 포함한다. 지도는 부분적으로 웨어러블 시스템 상에 로컬로 상주할 수 있고, 유선 또는 (예컨대, 클라우드 시스템의) 무선 네트워크에 의해 액세스 가능한 네트워크화된 저장 위치들에 부분적으로 상주할 수 있다. 포즈 프로세스(910)는 웨어러블 컴퓨팅 아키텍처(예컨대, 프로세싱 모듈(260) 또는 제어기(460)) 상에서 실행될 수 있고 웨어러블 컴퓨팅 하드웨어 또는 사용자의 포지션 및 배향을 결정하기 위해 지도로부터의 데이터를 활용할 수 있다. 포즈 데이터는 사용자가 시스템을 경험하고 세계에서 동작할 때 실시간으로 수집된 데이터로부터 컴퓨팅될 수 있다. 데이터는 이미지들, (가속도계, 자이로스코프, 자력계 또는 이러한 컴포넌트들의 조합들을 포함할 수 있는 IMU(inertial measurement unit)들과 같은) 센서들로부터의 데이터 및 실제 또는 가상 환경의 오브젝트들과 관련된 표면 정보를 포함할 수 있다.
[0085] 드문 포인트 프리젠테이션은 동시적인 로컬화 및 맵핑(입력이 오직 이미지들/시각적인 구성을 언급하는 SLAM 또는 V-SLAM) 프로세스의 출력일 수 있다. 이 시스템은 세계에서 다양한 컴포넌트들이 있는 곳을 파악할 뿐만 아니라 세계가 무엇으로 구성되었는지를 파악할 수 있도록 구성될 수 있다. 포즈는 지도를 파퓰레이팅하는 것 및 지도로부터의 데이터를 사용하는 것을 포함하여, 많은 목표들을 달성하는 빌딩 블록일 수 있다.
[0086] 일 실시예에서, 드문 포인트 포지션은 그 자체로는 완전히 적절하지는 않을 수 있으며, 멀티포컬 AR, VR 또는 MR 경험을 생성하기 위해 추가 정보가 필요할 수 있다. 일반적으로 깊이 지도 정보를 지칭하는 조밀한 프리젠테이션들이 이 갭을 적어도 부분적으로 필링하기 위해 활용될 수 있다. 이러한 정보는 스테레오(940)로 지칭되는 프로세스로부터 컴퓨팅될 수 있으며, 깊이 정보는 삼각 측량 또는 비행 시간 감지와 같은 기술을 사용하여 결정된다. 이미지 정보 및 (활성 프로젝터들을 사용하여 생성된 적외선 패턴들과 같은) 활성 패턴들은 스테레오 프로세스(940)에 대한 입력으로서의 역할을 할 수 있다. 상당량의 깊이 지도 정보가 함께 융합될 수 있으며, 이 중 일부는 표면 프리젠테이션으로 요약될 수 있다. 예컨대, 수학적으로 정의 가능한 표면들은(예컨대, 큰 포인트 클라우드와 비교하여) 효율적일 수 있고, 게임 엔진들과 같은 다른 프로세싱 디바이스들로의 처리 가능한 입력들이다. 따라서, 스테레오 프로세스(예컨대, 깊이 지도)(940)의 출력은 융합 프로세스(930)에서 결합될 수 있다. 포즈는 또한 이 융합 프로세스(930)에 대한 입력일 수 있고, 융합(930)의 출력은 지도 프로세스(920)를 파퓰레이팅하는 입력이 된다. 서브-표면들은 지형적 맵핑에서와 같이 서로 연결되어 더 큰 표면들을 형성할 수 있으며, 지도는 포인트들 및 표면들의 큰 하이브리드가 될 수 있다.
[0087] 합성 현실 프로세스(960)에서의 다양한 양상들을 해결하기 위해, 다양한 입력들이 활용될 수 있다. 예컨대, 도 9에 도시된 실시예에서, 게임 파라미터들은 시스템의 사용자가 다양한 위치들에서 하나 이상의 몬스터들과 몬스터 전투 게임을 하고 있다는 것, (사용자가 몬스터를 쏘는 경우와 같이) 다양한 조건들 하에서 죽거나 도망치고 있는 몬스터들, 벽들 또는 다양한 위치들의 다른 오브젝트들 등을 결정하기 위한 입력들일 수 있다. 세계 지도는 그러한 오브젝트들이 서로에 대해 어디에 있는지에 관한 정보를 포함하여 합성 현실에 대한 또 다른 가치있는 입력이 될 수 있다. 세계에 대한 상대적인 포즈는 거의 모든 대화형 시스템에서 중요한 역할을 할 뿐만 아니라 입력이 된다.
[0088] 사용자로부터의 제어들 또는 입력들은 웨어러블 시스템(900)에 대한 다른 입력이다. 본원에서 설명된 바와 같이, 사용자 입력들은 시각적 입력, 제스처들, 토템들, 오디오 입력, 감각 입력 등을 포함할 수 있다. 예컨대, 주위를 돌아다니거나 게임을 하기 위해, 사용자는 자신이 하고 싶어하는 것에 관하여 웨어러블 시스템(900)에 지시할 필요가 있을 수 있다. 공간에서 단지 움직이는 것 외에도 활용될 수 있는 다양한 형태들의 사용자 제어들이 있다. 일 실시예에서, 토템(예컨대, 사용자 입력 디바이스), 또는 장난감 총과 같은 오브젝트는 사용자에 의해 유지되고 시스템에 의해 추적될 수 있다. 시스템은 바람직하게는 사용자가 아이템을 보유하고 있고 사용자가 아이템과 어떤 종류의 상호 작용을 하고 있는지를 이해하도록 구성된다(예컨대, 토템 또는 오브젝트가 총인 경우, 시스템은 위치 및 배향을 이해하도록 구성될 수 있을 뿐만 아니라 사용자가 IMU와 같은 센서를 구비할 수 있는 트리거 또는 다른 감지식 버튼 또는 엘리먼트를 클릭하고 있는지 여부를 이해하도록 구성될 수 있으며, 이는 이러한 액티비티가 어떤 카메라들의 시야 내에도 있지 않을 경우에도 무슨 일이 일어나고 있는지를 결정하는데 도움을 줄 수 있다).
[0089] 손 제스처 추적 또는 인식은 또한 입력 정보를 제공할 수 있다. 웨어러블 시스템(900)은 버튼 누름, 좌측 또는 우측 제스처, 정지, 잡기, 홀드 등을 위한 손 제스처 등을 추적하고 해석하도록 구성될 수 있다. 예컨대, 일 구성에서, 사용자는 게임이 아닌 환경에서 이메일들 또는 캘린더를 넘기거나 다른 사람 또는 플레이어와 "피스트 범프"를 하기를 원할 수 있다. 웨어러블 시스템(900)은 동적일 수 있거나 동적이 아닐 수 있는 최소량의 손 제스처를 레버리지하도록 구성될 수 있다. 예컨대, 제스처들은 중지를 위해 벌린 손, 오케이를 의미하는 엄지손가락들 세움, 오케이가 아님을 의미하는 엄지손가락들 내림; 또는 방향 지시들을 위해 우측, 또는 좌측, 또는 위/아래로 손을 젖히는 것과 같은 단순한 정적 제스처들일 수 있다.
[0090] 눈 추적은 또 다른 입력(예컨대, 사용자가 특정 깊이 또는 범위에서 렌더링하기 위해 디스플레이 기술을 제어하고자 보고 있는 곳을 추적)이다. 일 실시예에서, 눈들의 수렴은 삼각 측량을 사용하여 결정될 수 있고, 이어서 그 특정 사람에 대해 개발된 수렴/원근 조절 모델을 사용하여, 원근 조절이 결정될 수 있다.
[0091] 카메라 시스템들과 관련하여, 도 9에 도시된 예시적인 웨어러블 시스템(900)은 세 쌍들의 카메라들, 즉 사용자의 얼굴의 측면들에 배열된 상대적으로 넓은 FOV 또는 수동 SLAM 쌍의 카메라들, 스테레오 이미징 프로세스(940)를 핸들링하고 또한 사용자 얼굴 앞에 토템/오브젝트 추적 및 손 제스처들을 캡처하기 위해 사용자 앞에 배향된 상이한 쌍의 카메라들을 포함할 수 있다. FOV 카메라들 및 스테레오 프로세스(940)를 위한 카메라들의 쌍은 외향-대면 이미징 시스템(464)(도 4에 도시됨)의 일부일 수 있다. 웨어러블 시스템(900)은 눈 벡터들 및 다른 정보를 삼각 측량하기 위해 사용자의 눈들을 향해 배향되는 눈 추적 카메라들(도 4에 도시된 내향-대면 이미징 시스템(462)의 일부일 수 있음)를 포함할 수 있다. 웨어러블 시스템(900)은 또한 장면에 텍스처를 주입하기 위해 하나 이상의 텍스처화된(적외선(IR) 프로젝터와 같은) 광 프로젝터들을 포함할 수 있다.
[0092] 도 10은 웨어러블 시스템으로의 사용자 입력을 결정하기 위한 방법(1000)의 예의 프로세스 흐름 다이어그램이다. 이 예에서 사용자는 토템과 상호작용할 수 있다. 사용자는 여러 토템들을 가질 수 있다. 예컨대, 사용자는 소셜 미디어 애플리케이션을 위한 하나의 토템, 게임을 플레이하기 위한 다른 토템 등을 지정했을 수 있다. 블록(1010)에서, 웨어러블 시스템은 토템의 모션을 검출할 수 있다. 토템의 움직임은 외향 대면 시스템을 통해 인식될 수 있거나 센서들(예컨대 햅틱 글러브, 이미지 센서들, 손 추적 디바이스들, 눈 추적 카메라들, 머리 포즈 센서들 등)를 통해 검출될 수 있다.
[0093] 블록(1020)에서, 토템을 통해 검출된 제스처, 눈 포즈, 머리 포즈, 또는 입력에 적어도 부분적으로 기초하여, 웨어러블 시스템은 기준 프레임에 대해 토템(또는 사용자의 눈들 또는 머리 또는 제스처들)의 포지션, 배향, 및/또는 움직임을 검출한다. 기준 프레임은 맵 포인트들의 세트일 수 있으며, 그 세트에 기초하여, 웨어러블 시스템은 토템(또는 사용자)의 움직임을 액션 또는 커맨드로 전환한다. 블록(1030)에서, 토템과의 사용자의 상호작용이 맵핑된다. 기준 프레임(1020)에 대한 사용자 상호작용의 맵핑에 기초하여, 블록(1040)에서 시스템은 사용자 입력을 결정한다.
[0094] 예를 들어, 사용자는 가상 페이지를 터닝하고 다음 페이지로 이동하거나 또는 하나의 UI(user interface) 디스플레이 스크린으로부터 다른 UI 스크린으로 이동하는 것을 나타내기 위해 토템 또는 물리적 오브젝트를 앞뒤로 이동시킬 수 있다. 다른 예로서, 사용자는 사용자의 FOR에서 상이한 실제 또는 가상 오브젝트들을 보기 위해 그들의 머리 또는 눈들을 이동시킬 수 있다. 특정 실제 또는 가상 오브젝트에의 사용자의 응시가 임계치 시간보다 더 길면, 실제 또는 가상 오브젝트는 사용자 입력으로서 선택될 수 있다. 일부 구현들에서, 사용자의 눈들의 수렴이 추적될 수 있고, 원근조절/수렴 모델은, 사용자가 포커싱하고 있는 깊이 평면에 대한 정보를 제공하는 사용자의 눈들의 원근조절 상태를 결정하기 위해 사용될 수 있다. 일부 구현들에서, 웨어러블 시스템은 사용자의 머리 포즈 또는 눈 포즈의 방향을 따라 어떤 실제 또는 가상 오브젝트들이 존재하는지를 결정하기 위해 광선 캐스팅 기술들을 사용할 수 있다. 다양한 구현들에서, 광선 캐스팅 기술들은, 실질적으로 가로 폭이 거의 없는 얇은 펜슬(pencil) 광선들을 캐스팅하는 것 또는 실질적인 가로 폭을 갖는 광선들(예컨대, 원뿔들 또는 절두체(frustum)들)을 캐스팅하는 것을 포함할 수 있다.
[0095] 사용자 인터페이스는 본원에 설명된 바와 같이 디스플레이 시스템(이를테면, 도 2의 디스플레이(220))에 의해 투사될 수 있다. 그것은 또한, 다양한 다른 기술들, 이를테면 하나 이상의 프로젝터들을 사용하여 디스플레이될 수 있다. 프로젝터들은 물리적 오브젝트, 이를테면 캔버스들 또는 구체 상으로 이미지들을 투사할 수 있다. 사용자 인터페이스와의 상호작용들은 시스템 또는 시스템의 일부 외부의 하나 이상의 카메라들을 사용하여 (이를테면, 예를 들어, 내향 이미징 시스템(462) 또는 외향 이미징 시스템(464)을 사용하여) 추적될 수 있다.
[0096] 도 11은 가상 사용자 인터페이스와 상호작용하기 위한 방법(1100)의 예의 프로세스 흐름도이다. 방법(1100)은 본원에서 설명된 웨어러블 시스템에 의해 수행될 수 있다.
[0097] 블록(1110)에서, 웨어러블 시스템은 특정 UI를 식별할 수 있다. UI의 타입은 사용자에 의해 미리 결정될 수 있다. 웨어러블 시스템은, 특정 UI가 사용자 입력(예컨대, 제스처, 시각적 데이터, 오디오 데이터, 감각 데이터, 지향 커맨드 등)에 기초하여 파퓰레이트될 필요가 있다는 것을 식별할 수 있다. 블록(1120)에서, 웨어러블 시스템은 가상 UI에 대한 데이터를 생성할 수 있다. 예컨대, UI의 한계들, 일반적인 구조, 형상 등과 연관된 데이터가 생성될 수 있다. 게다가, 웨어러블 시스템이 사용자의 물리적 위치와 관련된 UI를 디스플레이할 수 있도록 웨어러블 시스템은 사용자의 물리적 위치의 맵 좌표들을 결정할 수 있다. 예컨대, UI가 신체 중심이라면, 웨어러블 시스템은, 링 UI가 사용자 주위에서 디스플레이될 수 있거나 또는 평면형 UI가 벽 상에 또는 사용자의 앞에 디스플레이될 수 있도록 사용자의 물리적 자세, 머리 포즈, 또는 눈 포즈의 좌표들을 결정할 수 있다. 만약 UI가 손 중심이라면, 사용자의 손들의 맵 좌표들이 결정될 수 있다. 이러한 맵 포인트들은 FOV 카메라들을 통해 수신된 데이터, 감각 입력, 또는 임의의 다른 타입의 수집된 데이터를 통해 도출될 수 있다.
[0098] 블록(1130)에서, 웨어러블 시스템은 클라우드로부터 디스플레이로 데이터를 전송할 수 있거나 또는 데이터는 로컬 데이터베이스로부터 디스플레이 컴포넌트들로 전송될 수 있다. 블록(1140)에서, UI는 전송된 데이터에 기반하여 사용자에게 디스플레이된다. 예컨대, 광 필드 디스플레이는 가상 UI를 사용자의 눈들 중 하나 또는 둘 모두에 투사할 수 있다. 가상 UI가 생성되면, 블록(1150)에서 웨어러블 시스템은 가상 UI 상에 더 많은 가상 콘텐츠를 생성하기 위해 단순히 사용자로부터의 커맨드를 대기할 수 있다. 예컨대, UI는 사용자의 신체 주위의 신체 중심 링일 수 있다. 그 다음, 웨어러블 시스템은 커맨드(제스처, 머리 또는 눈 움직임, 사용자 입력 디바이스로부터의 입력 등)를 대기할 수 있으며, 그것이 인식되면(블록(1160)), 커맨드와 연관된 가상 콘텐츠가 사용자에게 디스플레이될 수 있다(블록(1170)). 예로서, 웨어러블 시스템은 다수의 스팀 추적들을 혼합하기 전에 사용자의 손 제스처들을 대기할 수 있다.
[0099] 웨어러블 시스템들, UI들, 및 UX(user experiences)의 추가적인 예들은 미국 특허 공개공보 제2015/0016777호에서 설명되며, 상기 공개공보는 그 전체가 인용에 의해 본원에 통합된다.
FOR(Field of Regard) 및 FOV(Field of View)에서 예시적인 오브젝트들
[0100] 도 12a는 FOR(field of regard)(1200), 세계 카메라의 FOV(field of view)(1270), 사용자의 시야(1250), 및 사용자의 응시 필드(1290)의 예를 개략적으로 예시한다. 도 4를 참조하여 설명된 바와 같이, FOR(1200)은 웨어러블 시스템을 통해 사용자에 의해 인지될 수 있는 사용자 주위의 환경의 일부분을 포함한다. FOR는, 착용자가 자신의 신체, 머리 또는 눈들을 이동하여 공간에서 실질적으로 임의의 방향을 인지할 수 있기 때문에, 웨어러블 시스템(400)을 둘러싼 4π 스테라디안 입체각을 포함할 수 있다. 다른 맥락에서, 착용자의 움직임은 더 제한될 수 있고, 따라서 착용자의 FOR은 더 작은 입체각을 대할 수 있다.
[0101] 세계 카메라의 시야(1270)는 외향 이미징 시스템(464)에 의해 현재 관찰되는 사용자의 FOR의 일부분을 포함할 수 있다. 도 4를 참조하면, 세계 카메라의 시야(1270)는 주어진 시간에 웨어러블 시스템(400)에 의해 관찰되는 세계(470)를 포함할 수 있다. 세계 카메라의 FOV(1270)의 크기는 외향 이미징 시스템(464)의 광학 특성들에 의존할 수 있다. 예를 들어, 외향 이미징 시스템(464)은 사용자 주위에서 190도 공간을 이미징할 수 있는 광각 카메라를 포함할 수 있다. 특정 구현들에서, 세계 카메라의 FOV(1270)는 사용자의 눈들의 자연 FOV 이상일 수 있다.
[0102] 사용자의 FOV(1250)는 주어진 시간에 사용자가 인지하는 FOR(1200)의 일부분을 포함할 수 있다. FOV는 웨어러블 디스플레이의 디스플레이의 크기 또는 광학 특성들에 의존할 수 있다. 예를 들어, AR 디스플레이는 사용자가 디스플레이의 특정 부분을 통해 볼 때 AR 기능성만을 제공하는 옵틱스를 포함할 수 있다. FOV(1250)는 예를 들어, 적층된 도파관 조립체(480)(도 4) 또는 평면형 도파관(600)(도 6)과 같은 AR 디스플레이를 통해 볼 때 사용자에 의해 인지가능한 입체각에 대응할 수 있다. 특정 실시예들에서, 사용자의 FOV(1250)는 사용자의 눈들의 자연 FOV보다 작을 수 있다.
[0103] 웨어러블 시스템은 또한 사용자의 FOF(field of fixation)(1290)를 결정할 수 있다. FOF(1290)는 사용자의 눈들이 응시할 수 있는(예를 들어, 그 부분에서 시각적 시선을 유지할 수 있는) FOV(1250)의 일부분을 포함할 수 있다. FOF(1290)는 사용자의 FOV(1250)보다 작을 수 있어서, 예를 들어, FOF는 몇 도 내지 약 5도 일 수 있다. 그 결과, 사용자는 응시(1290) 필드에 있지 않지만 사용자의 주변 FOV에 있는 FOV(1250) 내의 일부 가상 오브젝트들을 인지할 수 있다.
[0104] 도 12b는 사용자의 FOV(1250) 내의 가상 오브젝트들 및 FOR(1200) 내의 가상 오브젝트들의 예를 개략적으로 예시한다. 도 12b에서, FOR(1200)은 웨어러블 시스템을 통해 사용자에 의해 인지될 수 있는 오브젝트들의 그룹(예를 들어, 1210, 1220, 1230, 1242, 및 1244)을 포함할 수 있다. FOR(1200) 내의 오브젝트들은 가상 및/또는 물리적 오브젝트들일 수 있다. 예를 들어, FOR(1200)은 의자, 소파, 벽 등과 같은 물리적 오브젝트를 포함할 수 있다. 가상 오브젝트들은 예를 들어, 삭제된 파일들에 대한 재활용 빈(bin), 커맨드들을 입력하기 위한 단말, 파일들 또는 디렉토리들에 액세스하기 위한 파일 관리자, 아이콘, 메뉴, 오디오 또는 비디오 스트리밍에 대한 애플리케이션, 운영 시스템으로부터의 통지 등과 같은 운영 시스템 오브젝트들을 포함할 수 있다. 가상 오브젝트들은 또한 예를 들어, 아바타들, 게임들 내의 가상 오브젝트들, 그래픽 또는 이미지들 등과 같은 애플리케이션 내의 오브젝트들을 포함할 수 있다. 일부 가상 오브젝트들은 운영 시스템 오브젝트 및 애플리케이션 내의 오브젝트 둘 모두일 수 있다. 일부 실시예들에서, 웨어러블 시스템은 가상 엘리먼트들을 기존의 물리적 오브젝트들에 추가할 수 있다. 예를 들어, 웨어러블 시스템은 룸 안의 텔레비전과 연관된 가상 메뉴를 추가할 수 있고, 여기서 가상 메뉴는 웨어러블 시스템을 사용하여 텔레비전을 켜거나 채널들을 변경하는 옵션을 사용자에게 제공할 수 있다.
[0105] 가상 오브젝트는 3D(three-dimensional), 2D(two-dimensional) 또는 1D(one-dimensional) 오브젝트일 수 있다. 예를 들어, 가상 오브젝트는 3D 커피 머그잔일 수 있다(물리적 커피 메이커에 대한 가상 제어를 표현할 수 있음). 가상 오브젝트는 또한 클럭의 2D 그래픽 표현일 수 있다(사용자에게 현재 시간을 디스플레이함). 일부 구현들에서, 하나 이상의 가상 오브젝트들은 다른 가상 오브젝트 내에 디스플레이될 수 있다(또는 연관될 수 있다). 가상 커피 머그잔은 사용자 인터페이스 평면 내부에 있는 것으로 도시될 수 있지만, 가상 커피 머그잔은 이러한 2D 평면형 가상 공간 내에서 3D로 나타난다.
[0106] 사용자의 FOR 내의 오브젝트들은 도 9를 참조하여 설명된 바와 같이 세계 맵의 일부일 수 있다. 오브젝트들과 연관된 데이터(예를 들어, 위치, 시맨틱 정보, 속성 등)는 예를 들어, 어레이들, 목록들, 나무들, 해시들, 그래프들 등과 같은 다양한 데이터 구조들에 저장될 수 있다. 적용가능한 각각의 저장된 오브젝트의 인덱스는 예를 들어, 오브젝트의 위치에 의해 결정될 수 있다. 예를 들어, 데이터 구조는 기준 포지션으로부터 오브젝트의 거리(예를 들어, 기준 포지션의 좌측 또는 우측으로부터 얼마나 먼지, 기준 포지션의 최상부 또는 바닥으로부터 얼마나 먼지, 또는 기준 포지션으로부터 얼마나 깊은지)와 같은 단일 좌표에 의해 오브젝트들을 인덱싱할 수 있다 기준 포지션은 사용자의 포지션(예를 들어, 사용자의 머리 또는 눈들의 포지션)에 기초하여 결정될 수 있다. 기준 포지션은 또한 사용자의 환경에서 가상 또는 물리적 오브젝트(예를 들어, 타겟 오브젝트)의 포지션에 기초하여 결정될 수 있다. 이러한 방식으로, 사용자의 환경 내의 3D 공간은, 기준 포지션으로부터 오브젝트의 거리에 따라 가상 오브젝트들이 배열되는 2D 사용자 인터페이스 내로 접힐 수 있다.
레티클의 활용
[0107] 도 12b를 계속 참조하면, VR/AR/MR 시스템은 FOV(1250) 내의 사용자의 포지션을 식별하는 이동가능한 표시자를 포함할 수 있는 가상 레티클(1256)을 디스플레이할 수 있다. 예를 들어, 레티클(1256)은 응시 필드, 사용자로부터의 입력에 의해 영향받을 포인트 등과 같은 사용자의 시간 방향을 표현할 수 있다. 레티클(1256)의 외관은 임의의 다양한 상이한 컬러들, 아웃라인들, 형상들, 심볼들, 크기들, 이미지들, 그래픽들, 조합 등을 취할 수 있다. 예를 들어, 레티클(1256)은 다양한 형상들, 예를 들어, 커서, 기하학적 원뿔, 좁은 빔, 화살표, 계란형, 원형, 불스아이(bullseye), 다각형 또는 다른 1D, 2D 또는 3D 형상들을 취할 수 있다. 레티클(1256)은 리그(rig) 공간(예를 들어, 데카르트 x-y-z 좌표계와 같이 웨어러블 디바이스와 연관된 좌표계) 내에 고정된 가상 오브젝트일 수 있지만, 또한 사용자의 3D 환경 내에 고정될 수 있다. 레티클(1256)은, 사용자가 (예를 들어, 리그 공간 내의 포지션으로부터) 사용자의 3D 공간 내의 특정 포지션으로 드래그 앤 드롭(drag and drop)할 수 있는 가상 오브젝트에 의해 표현될 수 있다.
[0108] 사용자는 레티클(1256)을 이동시키기 위해 자신의 신체, 머리 또는 눈들을 이동시킬 수 있다. 예를 들어, 사용자의 포즈(예를 들어, 머리 포즈, 신체 포즈 또는 눈 시선)에서의 변화는 FOV(1250) 내의 레티클(1256)의 위치를 변경하고 그리고/또는 FOV(1250)에 나타나거나 관찰가능한 것을 변경할 수 있다. 유사하게, 레티클(1256)은 트랙패드, 터치스크린, 조이스틱, 다중 DOF(degree-of-freedom) 제어기, 용량성 감지 디바이스, 게임 제어기, 키보드, 마우스, 방향 패드(D-패드), 지팡이, 햅틱 디바이스, 토템(예를 들어, 가상 사용자 입력 디바이스로 기능함) 등과 같은 사용자 입력 디바이스를 통해 제어될 수 있다. 예를 들어, 사용자가 자신의 손을 사용자 입력 디바이스 상으로 이동시킴에 따라, 레티클(1256)은 제1 포지션으로부터 제2 포지션으로 이동할 수 있다.
[0109] 레티클(1256)이 타겟 오브젝트 위에서 맴돌거나 달리 포인팅하도록 이를 이동시킴으로써, 레티클(1256)은 오브젝트들(1210, 1242, 1244, 1230, 1220) 중 하나와 같은 오브젝트를 선택, 뷰잉 또는 포인팅하기 위해 사용될 수 있다. 예를 들어, 타겟 오브젝트 및 레티클(1256)을 효과적으로 정렬시키기 위해, 사용자는 자신의 머리를 타겟 오브젝트의 위치에 대응하는 포즈로 기울이거나, 돌리거나 또는 달리 재배향할 수 있다. 레티클(1256) 및 타겟 오브젝트가 정렬되면, 사용자는 레티클(1256)이 맴돌거나 포인팅하고 있는 타겟 오브젝트를 선택할 수 있다. 특정 실시예들에서, 타겟 오브젝트는 또한 초점 표시자(예를 들어, 레티클(1256) 또는 선택된 오브젝트 또는 다른 그래픽 강조로부터 발산되는 가상 광선들)를 수신할 수 있다.
레티클의 포지션의 가속
[0110] 도 13a 및 도 13b는 머리 포즈에서의 변화들에 대한 응답으로 레티클의 이동을 가속하는 예들을 예시한다. 환경들(1300A, 1300B)은 도 2의 시스템(200)과 같은 웨어러블 시스템(1320)을 착용한 사용자(1304)를 포함하고, 웨어러블 시스템(1320)의 FOR(field of regard)(1310)의 표현을 더 포함한다. 도 4를 참조하여 설명된 바와 같이, FOR(1310)은 웨어러블 시스템(1320)을 통해 사용자에 의해 인지될 수 있는 사용자(1304) 주위의 환경의 일부분을 포함한다.
[0111] 사용자(1304)는 FOR(1310)에서 실질적으로 임의의 방향을 인지하기 위해 자신의 신체, 머리 또는 눈들을 이동시킬 수 있다. 예를 들어, 사용자의 머리는 다수의 자유도들을 가질 수 있다. 사용자의 머리가 이동함에 따라(예를 들어, 기울이거나 돌림에 따라), 사용자의 머리 포즈가 변한다. 머리 포즈에서의 변화들은 기준 머리 포즈 벡터에 대한 각도에서의 변화들을 결정함으로써 정량화될 수 있다. 기준 머리 포즈는 사용자의 임의의 머리 포즈일 수 있다. 예를 들어, 도 13a 및 도 13b에 도시된 x-y-z 좌표계들에서의 좌표 값들을 고려할 때, 기준 머리 포즈 벡터는 사용자의 머리의 관상면(예를 들어, 신체를 배 및 등 섹션들로 분할하는 수직 평면), 사용자의 머리의 시상면(예를 들어, 신체를 우측 및 좌측 부분들로 분할하는 해부학적 평면), 및 사용자의 머리의 축면(예를 들어, 신체를 척추에 대략 수직으로 상부 및 하부 부분들로 분할하는 평면) 각각이 서로 수직일 때 사용자의 머리의 포지션에 대응할 수 있다.
[0112] 일부 애플리케이션들에서, 사용자는 특정 방향을 더 빈번하게 볼 수 있고, 시스템은 목 스트레인을 감소 또는 개선하기 위해 기준 머리 포즈를 조정할 수 있다. 예를 들어, 날아가는 새들을 쏘는 것과 관련된 게임 및 별자리들에 대해 사용자들에게 알려주는 천문 애플리케이션 둘 모두는 사용자가 주기적으로 또는 일정하게 상방을 보는 것을 수반할 수 있다. 유사하게, 체스 게임은 사용자가 주기적으로 또는 일정하게 하방을 보는 것을 수반할 수 있다. 다른 게임들 또는 애플리케이션들은 사용자가 주기적으로 또는 일정하게 좌측, 우측, 대각선 등을 보는 것을 수반할 수 있다. 따라서, 일부 경우들에서, 기준 머리 포즈는 이러한 더 빈번한 방향과 연관된 머리 포즈를 향해 헤지(hedge)하도록 업데이트될 수 있다. 예를 들어, 기준 머리 포즈는 특정 시간 기간에 걸친 사용자의 평균 또는 가장 통상적인 머리 포즈 또는 사용자가 특정 애플리케이션을 사용하거나 특정 게임을 플레이하는 동안 사용자의 평균 또는 가장 통상적인 머리 포즈일 수 있다. 기준 머리 포즈를 사용자의 통상적인 또는 평균 머리 포즈와 연관된 머리 포즈를 향해 헤지하거나 매칭하도록 구성함으로써, 시스템은 목 스트레인을 감소 또는 개선할 수 있다.
[0113] 도 13a 및 도 13b의 좌표계들은 기준 머리 포즈 벡터에 대해 머리 포즈를 측정하기 위해 사용될 수 있는 3개의 각도 자유도들(예를 들어, 요, 피치, 및 롤)을 도시한다. 예를 들어, 사용자의 머리는 전방으로 또는 후방으로 기울어지거나(예를 들어, 피칭), 좌측 또는 우측으로 돌리거나(예를 들어, 요잉) 또는 측면에서 측면으로 기울어지고(예를 들어, 롤링), 새로운 머리 포즈와 기준 머리 포즈 벡터 사이의 각도 차이는 변화들을 정량화하도록 결정될 수 있다. 다른 구현들에서, 머리 포즈를 측정하기 위한 다른 기술들 또는 각도 표현들, 예를 들어, 쿼터니언(quaternion) 각도들 또는 임의의 타입의 오일러 각도계가 사용될 수 있다.
[0114] 사용자의 포즈(예를 들어, 신체, 머리 또는 눈 포즈)가 변함에 따라, 사용자의 FOV는 대응적으로 변할 수 있고, FOV 내의 임의의 오브젝트들은 또한 변할 수 있다. 도 13a는, 직사각형들로 개략적으로 표현되고 별개의 시간 기간에 관찰되는 사용자의 FOR(1310)의 일부분에 대응할 수 있는 3개의 ROV들(1350a, 1350b, 1350c)을 예시한다. 3개의 예시된 장면들(1350a, 1350b, 1350c) 각각에서, 사용자는 디스플레이(1320)를 통해 레티클(1356)을 인지할 수 있다. 또한, FOV들(1350b, 1350c)에 예시된 바와 같이, 사용자는 사용자의 환경에서 주어진 위치에 있는 가상 또는 물리적 오브젝트를 표현할 수 있는 실린더(1382) 또는 박스(1380)와 같은 타겟 오브젝트들을 인지할 수 있다. 사용자가 자신의 머리를 조정(예를 들어, 피칭, 요잉 또는 롤링)함에 따라, 시스템은 VR/AR/MR 환경에서 사용자가 자신의 머리를 기울이거나 돌리고 있음을 사용자가 인식하도록 사용자의 FOV를 조정할 수 있다.
[0115] 비제한적인 예로서, 사용자(1304)는 오브젝트(1380) 및/또는 오브젝트(1382)를 뷰잉하거나 그와 상호작용하기를 원할 수 있다. 단순화를 위해, 사용자의 머리(1348)의 초기 포즈는 본원에 설명된 바와 같이 기준 머리 포즈 벡터에 대응한다. 또한, 초기 머리 포즈(1348)로서, 사용자는 FOV(1350a)를 인지한다. FOV(1350a) 내에서 어떠한 오브젝트들도 인지가능하지 않기 때문에, 사용자는 오브젝트들(1380, 1382)을 탐색하기 위해 FOR(1310)을 스캐닝하기 시작할 수 있다. 사용자가 자신의 머리를 바닥을 향해 아래로 기울임에 따라, 사용자의 FOV는 대응적으로 조정되어, 사용자는 결국 FOV(1350b) 내의 오브젝트(1382)를 인지할 수 있다. 사용자는 예를 들어, 자신의 머리를 천장을 향해 위로 기울임으로써 더 많은 오브젝트들을 탐색하기 위해 FOR(1310)을 스캐닝하기 시작할 수 있다. 어떠한 추후의 시점에, 사용자는 자신의 머리 포즈를 조정하여, 사용자는 FOV(1350c)를 인지할 수 있다. 예시된 바와 같이, 오브젝트(1380)는 FOV(1350c)에서 인지가능하다. 일부 경우들에서, 단순히 오브젝트를 인지하는 것에 추가로, 사용자는 또한 레티클(1356)을 사용하여 오브젝트를 선택할 수 있다.
[0116] 레티클(1356)은 다양한 방법들을 사용하여 타겟 오브젝트 상에 포지셔닝될 수 있다. 제1 예로서, 사용자의 FOV는 일시적으로 또는 영구적으로 FOR 내에 고정될 수 있다. 따라서, 사용자의 포즈(예를 들어, 머리 포즈, 신체 포즈, 눈 포즈)에서의 변화는 레티클이 사용자의 FOV 내에서 (예를 들어, FOV의 중심 근처에 있을 수 있는 디폴트 레티클 포지션에 대해) 이동하게 할 수 있지만, 사용자의 FOV가 변화하게 하지 않는다. 예를 들어, 사용자가 위를 보거나 자신의 머리를 뒤로 기울이면, 그 움직임은 레티클이 FOV의 최상부에 더 가깝게 이동하는 것과 같이 FOV 내에서 위로 이동하게 할 수 있다. 따라서, 이들과 같은 예들에서, 레티클을 사용하여 오브젝트를 선택하기 위해, 오브젝트는 FOV 내에 있을 필요가 있을 수 있고, 사용자는 레티클이 타겟 오브젝트를 포인팅하도록 자신의 머리를 포지셔닝할 필요가 있을 수 있다.
[0117] 제2 예로서, FOV 내의 레티클의 포지션은 일시적으로 또는 영구적으로 고정될 수 있다. 따라서, 사용자의 포즈에서의 변화는 사용자의 FOV를 변경할 수 있지만, FOV 내의 레티클의 위치를 변경하지 않는다. 예를 들어, 레티클은 FOV(1350a)에 예시된 것과 같이 사용자의 FOV의 위치(예를 들어, 중심)에 고정되거나 잠금될 수 있다. 사용자의 포즈가 변함에 따라, FOV는 변할 수 있지만, 레티클은 동적 FOV의 디폴트 포지션(예를 들어, 중심)에 유지된다. 따라서, 레티클을 사용하여 오브젝트를 선택하기 위해, 사용자는 타겟 오브젝트가 FOV의 중심(예를 들어, 레티클의 포지션)에 있도록 자신의 머리를 포지셔닝할 필요가 있을 수 있다.
[0118] 제3 예에서, 레티클은 처음 2개의 예들의 조합을 사용하여 타겟 오브젝트 상에 포지셔닝될 수 있다. 레티클은 일시적으로 FOV 내의 포지션에 고정될 수 있다. 예를 들어, 레티클은 사용자의 머리 포즈가 최소 머리 포즈 임계치와 최대 머리 포즈 임계치 사이에 있을 때(예를 들어, 최소 머리 포즈 임계치를 충족하고 최대 머리 포즈 임계치를 충족하지 않을 때) 고정될 수 있다. 사용자의 포즈가 변함에 따라, FOV 내의 레티클의 포지션이 동일하게 유지되는 동안 사용자의 FOV는 변할 수 있다. 그러나, 사용자의 머리가 불편하거나 달리 원하지 않는 포즈를 향해 이동함(예를 들어, 사용자의 머리 포즈는 최소 머리 포즈 임계치를 충족하지 않고 최대 머리 포즈 임계치를 충족함)에 따라, 레티클은 고정되지 않을 수 있고, 사용자의 FOV 내에서 자유롭게 이동할 수 있다. 예를 들어, 웨어러블 시스템은 사용자의 머리가 이동하고 있는 방향에 대응하는 방향에서 레티클의 움직임을 가속할 수 있다. 일부 경우들에서, 이러한 가속은 목 스트레인 또는 불편함의 가능성을 감소시킬 수 있는데, 그 이유는, 사용자가 자신의 머리를 이동시키고 있는 포지션을 향해 레티클이 이동하여, 타겟 오브젝트와 갖는 레티클을 포지셔닝하기 위해 필요한 머리 움직임의 양을 감소 또는 최소화할 수 있기 때문이다. 레티클이 가속되더라도, 일부 실시예들에서, 레티클은 임계치 포지션(예를 들어, FOV 내의 포지션)을 지나서 가속되지 않는다. 예를 들어, 일부 경우들에서, 레티클은 사용자의 FOV 밖으로 가속되지 않는다. 이는 유리하게는, 목 스트레인 또는 불편함의 가능성을 감소시키면서 또한 레티클을 통해 FOV 내의 오브젝트들과 상호작용하는 사용자 능력을 보유하는 것을 돕는다.
[0119] 가끔, 사용자가 자신의 머리를 재배향하기(비제한적인 예: 공기중(예를 들어, 천장)에서 높게 있는, 지면(예를 들어, 바닥)까지 낮게 있는, 우측 멀리 있는, 좌측 멀리 있는 등의 오브젝트를 선택하는 것)를 원할 때, 사용자는, 원하는 오브젝트에 레티클(1356)이 포지셔닝되도록 자신의 목을 구부리거나, 트위스트하거나 크레이닝해야 할 수 있다. 사용자의 목을 구부리는 것, 트위스트하는 것 및/또는 크레이닝하는 것은 무엇보다도, 목 스트레인 또는 불편함을 초래할 수 있다. 따라서, 웨어러블 시스템은 사용자의 머리의 배향이 허용가능한(예를 들어, 편안한, 스트레인 없는 등의) 머리 포즈들의 범위(예를 들어, 최소 머리 포즈 임계치 아래, 최대 머리 포즈 임계치 위) 밖에 있음을 인식할 수 있다. 그 결과, 사용자가 레티클(1356)을 이동시키는 것을 보조하기 위해, 웨어러블 시스템은 사용자의 머리가 이동하고 있는 방향에 대응하는 방향에서 레티클(1356)의 움직임을 가속할 수 있다(예를 들어, 기준 머리 포즈 벡터에 대한 각도를 조정하거나 FOV 내의 포지션을 조정함). 레티클(1356)의 움직임을 가속함으로써, 웨어러블 시스템은 유리하게는 사용자가 레티클(1356) 및 타겟 오브젝트를 정렬시키기 위해 자신의 목을 구부리거나, 트위스트하거나, 크레이닝해야 하는 정도를 감소시켜, 목 스트레인 또는 불편함의 가능성을 감소시킨다.
[0120] 도 13a로 되돌아가서, FOV(1350a) 내의 레티클(1356)은 FOV(1350a)의 중심(1360)의 고정된 위치에 있다. 사용자가 천장 또는 바닥을 향해 자신의 머리를 기울임에 따라, 웨어러블 시스템은 사용자의 머리 포즈의 실시간 결정들을 수행할 수 있다. 사용자의 머리 포즈가 임의의 원하지 않거나, 불편하거나 부담스러운 머리 포즈들의 범위에 대응하기 시작하면, 웨어러블 시스템은 레티클(1356)을 가속하기 시작할 수 있다.
[0121] 예를 들어, 도 13a에 예시된 바와 같이, 사용자의 실시간 머리 포즈는 하나 이상의 임계치 머리 포즈들(예를 들어, 최대 머리 피치 임계치(1394), 최소 머리 피치 임계치(1396))과 비교되어, 사용자의 머리 포즈가 원하는 또는 원하지 않는 머리 포즈들의 범위 중 하나 이상에 대응하거나 그 안에 속하는지 여부를 결정할 수 있다. 웨어러블 시스템(1320)은 사용자가 자신의 목을 구부리거나, 돌리거나, 기울이거나, 회전시키고 있는 정도에 대응하는 하나 이상의 각도들을 계산함으로써 사용자의 머리 포즈를 결정할 수 있다. 예를 들어, 사용자의 현재 머리 포즈에 대응하는 벡터와 기준 머리 포즈 벡터 사이의 각도 차이가 계산될 수 있다. 하나 이상의 각도들이 원하지 않는 머리 포즈들과 연관된 각도들에 대응하면, 웨어러블 시스템은 예를 들어, FOV 내의 레티클 포지션을 조정하기 위해 레티클과 연관된 각도에 대해 오프셋을 추가 또는 제거함으로써, 레티클(1356)의 움직임을 가속할 수 있다.
[0122] 오프셋의 추가의 예들은 도 13a 및 도 13b에 예시되어 있다. 제1 예로서, 사용자의 초기 머리 포즈가 FOV(1350a)에 대응하는 예를 계속하면, 사용자는 FOV(1350b)를 인지하기 위해 자신의 머리를 지면을 향해 아래로 기울여야 한다. 사용자의 머리 포즈가 사용자가 FOV(1350b)를 인지하는 각도에 있을 때, 시스템은 사용자의 새로운 머리 포즈와 기준 머리 포즈(예를 들어, 사용자의 초기 머리 포즈(1348)) 사이의 각도(1386)를 결정할 수 있다. 도 13a에 예시된 바와 같이, FOV(1350b)의 중심(1360)에 대응하는 사용자의 새로운 머리 포즈는 최소 머리 피치 임계치(1396) 아래에 있다(또는 임계치를 충족하지 않는다). 사용자의 새로운 머리 포즈에 기초하여, 시스템은 사용자가 아래를 보고 있다고 그리고/또는 사용자의 머리 또는 목이 불편하거나 달리 원하지 않는 포즈에 있거나 이를 향하고 있다고 결정할 수 있다. 따라서, 시스템은 포지션이 더 이상 FOV의 디폴트 레티클 포지션(예를 들어, 중심)에 있지 않도록 레티클(1356)을 하방으로 가속할 수 있다. 레티클 포지션에 대해 이러한 조정을 수행하기 위해, 시스템은 레티클이 기준 머리 포즈에 대해 포지셔닝되는 각도(1386)에 오프셋(1364)을 추가할 수 있다. 오프셋(예를 들어, 약 12도)은 당업계에 공지된 다양한 방법들을 사용하여 각도(1386)에 추가될 수 있다. 예를 들어, 오프셋(1364)은 각도(1386)에 추가되거나 그로부터 감산되어 새로운 각도를 더 네거티브가 되게 할 수 있다. 유사하게, 오프셋은 새로운 각도의 절대값을 증가 또는 감소시킬 수 있다.
[0123] 다른 예로서, 사용자의 초기 머리 포즈가 FOV(1350a)에 대응하는 가정을 계속하면, 사용자는 FOV(1350c)를 인지하기 위해 자신의 머리를 천장을 향해 위로 기울여야 한다. 사용자의 머리 포즈가 사용자가 FOV(1350c)를 인지하는 각도에 있을 때, 시스템은 사용자의 새로운 머리 포즈와 기준 머리 포즈(예를 들어, 사용자의 초기 머리 포즈(1348)) 사이의 각도(1390)를 결정할 수 있다. 도 13a에 예시된 바와 같이, FOV(1350c)의 중심(1360)에 대응하는 사용자의 새로운 머리 포즈는 최대 머리 피치 임계치(1394) 위에 있다(또는 임계치를 충족한다). 사용자의 새로운 머리 포즈에 기초하여, 시스템은 사용자가 위를 보고 있다고 그리고/또는 사용자의 머리 또는 목이 불편하거나 달리 원하지 않는 포즈에 있거나 이를 향하고 있다고 결정할 수 있다. 따라서, 시스템은 포지션이 더 이상 FOV에 대한 디폴트 레티클 포지션(예를 들어, FOV의 중심)에 있지 않도록 레티클(1356)을 상방으로 가속할 수 있다. 레티클 포지션에 대해 이러한 조정을 수행하기 위해, 시스템은 레티클이 기준 머리 포즈에 대해 포지셔닝되는 각도(1390)에 오프셋(1368)을 추가할 수 있다. 오프셋(예를 들어, 약 8도)은 당업계에 공지된 다양한 방법들을 사용하여 각도(1390)에 추가될 수 있다. 예를 들어, 오프셋(1368)은 각도(1390)에 추가되거나 그로부터 감산되어 새로운 각도를 더 포지티브가 되게 할 수 있다. 유사하게, 오프셋은 새로운 각도의 절대값을 증가 또는 감소시킬 수 있다.
[0124] 다른 예로서, 도 13a와 유사하게, 도 13b는, 직사각형들로 개략적으로 표현되고 별개의 시간 기간에 관찰되는 사용자의 FOR(1310)의 일부분에 대응할 수 있는 3개의 ROV들(1350d, 1350e, 1350f)을 예시한다. 3개의 예시된 장면들(1350d, 1350e, 1350f) 각각에서, 사용자는 디스플레이(1320)를 통해 레티클(1356)을 인지할 수 있다. 초기에, 레티클(1356)은 FOV(1350d)의 중심(1360)의 고정된 위치에 있다. 사용자가 자신의 머리를 우측으로 돌림에 따라, 웨어러블 시스템(1320)은 사용자의 머리 포즈의 실시간 결정들을 수행할 수 있다. 사용자의 머리 포즈가 임의의 원하지 않거나, 불편하거나 부담스러운 머리 포즈들의 범위를 향해 이동하기 시작함에 따라, 웨어러블 시스템은 레티클(1356)을 가속하기 시작하여, 레티클을 FOV 내의 고정된 위치로부터 이동시킬 수 있다.
[0125] 비제한적인 예로서, 사용자(1304)는 오브젝트(1384)를 뷰잉하거나 그와 상호작용하기를 원할 수 있다. 단순화를 위해, 사용자의 머리(1348)의 초기 포즈는 본원에 설명된 바와 같이 기준 머리 포즈에 대응하고, 사용자에 의해 인지되는 초기 FOV는 FOV(1350d)이다. 사용자의 머리 포즈가 변함에 따라, 머리 포즈는 하나 이상의 임계치 머리 포즈들과 비교되어, 머리 포즈가 임계치(예를 들어, 최대 머리 요 임계치(1374), 용이성 임계치(1372), 최소 머리 요 임계치 등)를 통과하고 레티클 포지션이 가속되어야 하는지 여부를 결정할 수 있다.
[0126] 예로 되돌아가서, 사용자는 오브젝트(1384)를 탐색하기 위해 FOR(1310)을 스캐닝하기 시작할 수 있다. 사용자가 자신의 머리를 우측으로 돌림에 따라, 사용자의 FOV는 대응적으로 조정되어, 사용자는 결국 FOV(1350e)를 인지할 수 있다. FOV(1350e)를 인지하는 동안, 사용자의 머리 포즈(이는 FOV(1350e)의 중심(1360)에 대응할 수 있음)는 용이성 임계치(1372)를 충족한다. 따라서, 시스템은 FOV(1350e)의 중심(1360)의 약간 우측에 포지셔닝되도록 레티클(1356)의 포지션을 가속할 수 있다. 예를 들어, 시스템은 FOV(1350e) 내의 레티클(1356)에 대응하는 각도(1392)에 (예를 들어, 용이성 함수에 대응하는) 오프셋(1376)을 추가할 수 있다.
[0127] 사용자는 예를 들어, 자신의 머리를 우측으로 더 돌림으로써 오브젝트(1384)를 탐색하기 위해 FOR(1310)을 스캐닝하는 것을 계속할 수 있다. 어떠한 추후의 시점에, 사용자는 자신의 머리 포즈를 조정하여, 사용자는 FOV(1350f)를 인지할 수 있다. 예시된 바와 같이, 오브젝트(1384)는 FOV(1350f)에서 인지가능하고, 시스템이 레티클을, 예를 들어, 오브젝트(1384)를 향해 가속하여 사용자가 그 오브젝트를 선택하기 쉽게 하는 것이 유리할 수 있다. 따라서, 시스템은 사용자의 머리 포즈(이는 FOV(1350f)의 중심(1360)에 대응할 수 있음)이 최대 머리 요 임계치(1374)를 충족한다고 결정할 수 있다. 따라서, 시스템은 레티클(1356)의 포지션이 FOV(1350e)에 포지셔닝된 레티클보다 FOV(1350e)의 중심의 훨씬 더 우측에 포지셔닝되도록 이를 가속할 수 있다. 예를 들어, 시스템은 FOV(1350f) 내의 레티클에 대응하는 각도(1388)에 더 큰 오프셋(1378)을 추가할 수 있다.
[0128] 일부 경우들에서, 수평 방향에서 커서 가속의 양을 결정하기 위해, 시스템은 사용자의 신체, 몸통, 어깨들 등에 대한 사용자의 머리의 포즈를 결정한다. 예를 들어, 머리 포즈 벡터가 신체 포즈 벡터로부터 더 오프셋되면 더 많은 목 스트레인이 더 가능할 수 있다. 따라서, 시스템은 사용자의 머리, 목, 어깨들, 신체 등의 정렬에 따라 비교적 더 빠른 또는 더 느린 레이트로 레티클을 가속할 수 있다.
[0129] 일부 경우들에서, 사용자의 신체, 몸통 또는 어깨의 포즈를 추적하도록 구성된 추가적인 IMU(inertial measurement unit)가 추가될 수 있고, 시스템은 사용자의 신체에 대한 사용자의 머리의 각도 또는 포지션을 결정할 수 있다. 추가적인 IMU는 핀, 목걸이, 백팩, 벨트 팩, 토템 등과 같은 환자의 어깨들, 가슴 또는 허리 상의 보조 디바이스를 포함할 수 있다. 일부 실시예들에서, 시스템은 예를 들어, 신체 벡터를 계산하기 위해 컴퓨터 비전 프로세싱을 사용할 수 있는 외부 또는 사용자를 향하는 센서 또는 카메라를 포함할 수 있다.
[0130] 도 13a 및 도 13b에 예시된 예들이 자신의 머리를 위에서 아래로 기울이고 자신의 머리를 우측으로 돌리는 것에 대응하지만, 이는 제한적이 아니며, 대각선 머리 움직임들(예를 들어, 수직 및 수평 움직임들의 조합들)이 측정될 수 있고 대각선 임계치(또는 수직 및 수평 임계치들의 조합)이 통과되면 FOV의 코너로 레티클이 가속될 수 있다. 추가로, 사용자는 자신의 신체, 머리 또는 눈들을 이동시켜 실질적으로 공간의 임의의 방향을 인지할 수 있다. 일부 실시예들에서, 머리 포즈에서의 변화에 기초하여 사용자의 FOV를 조정하는 것과 유사하게, 시스템은 눈 포즈(예를 들어, 눈 시선)에서의 변화에 기초하여 레티클의 포지션 또는 위치를 조정할 수 있다. 눈 포즈는 내향 이미징 시스템(504)(도 4에 도시됨)에 의해 결정될 수 있다. 시스템은 하나 이상의 임계치들을 사용하여, 사용자의 눈들이 스트레이닝될 수 있는지 여부를 결정할 수 있고, 그 결정에 기초하여 레티클의 포지션을 변경할 수 있다.
예시적인 머리 포즈 각도 조정들
[0131] 도 14는 사용자의 머리 포즈에 기초하여 레티클의 포지션을 조정하는 예들을 예시한다. 도 2의 웨어러블 시스템(200)과 같은 웨어러블 시스템은 예를 들어, 사용자의 머리 포즈에 대응하는 머리 포즈 벡터를 결정함으로써, 사용자의 머리 포즈를 결정할 수 있다. 머리 포즈 벡터와 기준 벡터 사이의 각도 차이에 기초하여, 시스템은 사용자의 FOV에 대한 레티클의 포지션을 조정할 수 있다. 본원에 설명된 바와 같이, 웨어러블 시스템은 예를 들어, 머리 포즈를 결정하기 위해 사용될 수 있는 IMU, 또는 눈 시선을 결정하기 위해 사용될 수 있는 눈-추적 카메라와 같은 하나 이상의 머리 포즈 센서들을 포함할 수 있다. 웨어러블 시스템은 본원에 설명된 포즈들 및 각도들을 결정하기 위해 이러한 센서들로부터의 데이터를 사용할 수 있다.
[0132] 머리 포즈 벡터는 사용자의 머리 포즈의 표시를 제공할 수 있다. 예를 들어, 머리 포즈 벡터는 사용자가 어디를 보고 있는지, 사용자의 머리가 어떻게 배향되는지, 사용자의 목이 어떻게 구부러지는지 등을 예시할 수 있다. 일부 실시예들에서, 머리 포즈 벡터는 사용자의 머리의 관상면(예를 들어, 사용자의 머리를 배 및 등 섹션들로 분할하는 정면 평면)으로부터 수직으로 연장되는 벡터로서 정의될 수 있다. 예를 들어, 머리 포즈 평면은 사용자의 이마에 평행한(또는 실질적으로 평행한) 평면일 수 있다. 일부 실시예들에서, 머리 포즈 평면은 관상면에 평행할 수 있고, 사용자의 눈들 또는 다른 얼굴 특징부들을 연결하는 라인을 포함할 수 있다. 일부 실시예들에서, 머리 포즈 벡터는 사용자의 이마의 중심, 사용자의 눈의 중심, 사용자의 코 등과 같은 사용자의 머리 상의 중심 포인트로부터의 관상면(또는 관상면에 평행한 평면)으로부터 수직으로 연장될 수 있다. 일부 실시예들에서, 머리 포즈 벡터는 사용자의 머리 또는 목에 대응하는 임의의 다른 포인트로부터 연장될 수 있다. 따라서, 사용자의 머리 포즈가 변함에 따라, 머리 포즈 벡터가 또한 변한다. 일부 예들로서, 도 14는 다양한 예시적인 머리 포즈 벡터들(1408, 1412, 1416, 1420, 1424, 1428)을 예시한다.
[0133] 기준 벡터는 잠재적인 머리 포즈 벡터들의 서브세트일 수 있고, 사용자의 머리가 기울어지거나 돌려지는 각도를 결정하기 위한 기준으로서 사용될 수 있다. 기준 벡터는 임의의 머리 포즈에 대응하는 벡터일 수 있다. 예를 들어, 도 14에 도시된 x-y-z 좌표계 내의 좌표값들을 고려할 때, 기준 벡터는 수직 또는 제로의 y-성분을 갖는 머리 포즈 벡터(때때로 레벨 머리 포즈 벡터(1416)로 지칭됨)와 동등할 수 있다. 일부 경우들에서, 기준 벡터는 디스플레이의 평면에 수직인 수평 평면에서 벡터를 식별함으로써 결정된다. 일부 실시예들에서, 기준 벡터는 사용자의 머리가 (예를 들어, 중립 머리 피치 벡터(1420)와 같이) 자연스러운 휴식 상태에 있을 때의 머리 포즈 벡터일 수 있다. 일부 실시예들에서, 레벨 머리 포즈 벡터는 사용자의 머리의 관상면(예를 들어, 신체를 배 및 등 섹션들로 분할하는 수직 평면), 사용자의 머리의 시상면(예를 들어, 신체를 우측 및 좌측 부분들로 분할하는 해부학적 평면), 및 사용자의 머리의 축면(예를 들어, 신체를 척추에 대략 수직으로 상부 및 하부 부분들로 분할하는 평면) 각각이 서로 수직일 때 사용자의 머리의 포지션에 대응한다. 도 14에 예시된 바와 같이, 일부 경우에서, 중립 머리 피치 벡터(1420)와 레벨 머리 포즈 벡터(1416) 사이의 각도 차이는 대략 -20도이다(예를 들어, 중립 머리 피치 벡터(1420)는 레벨 머리 포즈 벡터(1416) 아래로 대략 20도이다). 일부 애플리케이션들에서, 사용자는 특정 방향을 더 빈번하게 볼 수 있고, 시스템은 목 스트레인을 감소 또는 개선하기 위해 기준 머리 포즈를 조정할 수 있다. 예를 들어, 날아가는 새들을 쏘는 것과 관련된 게임 및 별자리들에 대해 사용자들에게 알려주는 천문 애플리케이션 둘 모두는 사용자가 주기적으로 또는 일정하게 위를 보는 것을 수반할 수 있다. 유사하게, 체스 게임은 사용자가 주기적으로 또는 일정하게 아래를 보는 것을 수반할 수 있다. 다른 게임들 또는 애플리케이션들은 사용자가 주기적으로 또는 일정하게 좌측, 우측, 대각선 등을 보는 것을 수반할 수 있다. 따라서, 일부 경우들에서, 기준 머리 포즈는 이러한 더 빈번한 방향과 연관된 머리 포즈를 향해 헤지(hedge)하도록 업데이트될 수 있다. 예를 들어, 기준 머리 포즈는 특정 시간 기간에 걸친 사용자의 평균 또는 가장 통상적인 머리 포즈 또는 사용자가 특정 애플리케이션을 사용하거나 특정 게임을 플레이하는 동안 사용자의 평균 또는 가장 통상적인 머리 포즈일 수 있다. 기준 머리 포즈를 사용자의 통상적인 머리 포즈와 연관된 머리 포즈를 향해 헤지하거나 매칭하도록 구성함으로써, 시스템은 목 스트레인을 감소 또는 개선할 수 있다.
[0134] 본원에 설명된 바와 같이, 웨어러블 시스템은 머리 포지션들의 범위 또는 머리 배향들의 범위를 식별할 수 있고, 이는 불편한 또는 부담스러운 머리 포즈들에 대응할 수 있는 머리 포즈들의 하나 이상의 범위들을 특정하도록 함께 기능한다. 이러한 범위들의 한계들은 임계치들에 대응하는 것으로 보일 수 있다. 예를 들어, 사용자가 자신의 머리를 일 방향으로 너무 멀리 기울이거나 돌리면, 사용자의 머리 포즈는 최소 머리 피치, 머리 요 또는 머리 롤 임계치를 충족하지 못할 수 있다(예를 들어, 그 미만일 수 있다). 유사하게, 사용자가 자신의 머리를 다른 방향으로 너무 멀리 기울이거나 돌리면, 사용자의 머리 포즈는 최대 머리 피치, 머리 요 또는 머리 롤 임계치를 충족할 수 있다(예를 들어, 그 초과일 수 있다). 이와 같은 경우들에서, 최소 머리 포즈 임계치 미만인(또는 충족하지 못한) 머리 포즈들 및 최대 머리 포즈 임계치 초과인(또는 충족한) 머리 포즈들은 목 스트레인 또는 불편함을 초래할 수 있는 머리 기울임 또는 돌림의 하나 이상의 범위들에 대응할 수 있다.
[0135] 도 14는 포지션에 대한 조정 또는 레티클의 기준 머리 포즈에 대한 각도에 대한 조정의 3개의 예들을 예시한다. 제1 예에서, 사용자의 머리 포즈는, 이 예에서는 중립 머리 포즈 임계치에 대응하는 머리 피치 벡터(1420)에 대응한다. 본원에 설명된 바와 같이, 중립 머리 포즈 임계치는 머리의 자연스러운 휴식 상태에 대응할 수 있고, 말하자면, 레벨 머리 포즈(1416)보다 사용자의 더 편안한 머리 포즈를 표현할 수 있다. 따라서, 일부 경우들에서, 중립 머리 포즈 벡터는 레벨 머리 포즈 벡터 대신에 또는 그에 추가로 기준 머리 포즈 벡터로서 사용될 수 있다.
[0136] 제1 예로 되돌아가서, 머리 피치 벡터(1420)와 기준 머리 포즈 벡터(1416) 사이에 -20도의 각도 차이가 존재하고, 이는, 이러한 경우 또한 레벨 머리 포즈 벡터(1416)이다. -20도의 결정된 각도 차이에 기초하여, 시스템은 사용자의 머리 포즈가 -45도의 최소 피치 임계치 위에 있다고(예를 들어, 충족한다고) 결정한다. 또한, 시스템은 -20도의 각도 차이가 5도의 최대 피치 임계치 아래에 있다고(예를 들어, 충족하지 않는다고) 결정한다. 이러한 결정들에 기초하여, 시스템은 레티클의 포지션을 조정하지 않는 것으로 결정할 수 있다. 따라서, 장면(1436)에서 보이는 바와 같이, 레티클은 장면(1436) 내의 디폴트 위치(예를 들어, 중심)에 유지된다.
[0137] 제2 예에서, 사용자의 머리 포즈는 머리 포즈 벡터(1412)에 대응한다. 예시된 바와 같이, +5도 각도 차이가 머리 포즈 벡터(1412)와 기준 머리 포즈 벡터(1416) 사이에 존재한다. +5도의 결정된 각도 차이에 기초하여, 시스템은 사용자의 머리 포즈가 +5도의 최대 피치 임계치와 동일하다고(예를 들어, 충족한다고) 결정한다. 따라서, 시스템은 이러한 경우에 8도인 오프셋 양만큼 레티클의 각도를 조정한다. 이러한 조정은 장면(1432)에서 볼 수 있고, 여기서 레티클의 포지션은 장면(1432)의 디폴트 포지션(예를 들어, 중심)보다는 장면(1432)의 최상부를 향해 나타난다.
[0138] 제3 예에서, 사용자의 머리 포즈는 머리 포즈 벡터(1424)에 대응한다. 예시된 바와 같이, -45도 각도 차이가 머리 포즈 벡터(1424)와 기준 머리 포즈 벡터(1416) 사이에 존재한다. 따라서, -45도의 결정된 각도 차이에 기초하여, 시스템은 사용자의 머리 포즈가 -45도의 최소 머리 피치 임계치와 동일하다고(예를 들어, 충족하지 않는다고) 결정한다. 따라서, 시스템은 이러한 경우에 -12도인 오프셋 양만큼 레티클의 각도를 조정한다. 이러한 조정은 장면(1440)에서 볼 수 있고, 여기서 레티클의 포지션은 장면(1440)의 디폴트 포지션(예를 들어, 중심)보다는 장면(1440)의 바닥을 향해 나타난다.
[0139] 도 14에 도시된 예들은 단지 예시적이며, 제한적으로 해석되지 않아야 함을 주목해야 한다. 따라서, 일부 실시예들에서, 각도 차이를 결정하기 위해 레벨 머리 포즈 벡터(1416) 이외의 기준 벡터가 사용된다. 머리 포지션이 임계치를 통과하는지 여부를 결정하고 레티클의 포지션을 조정하기 위해 더 적거나, 더 많거나, 또는 상이한 임계치들이 시스템에 의해 사용될 수 있다. 추가로, 최대 머리 피치 임계치(1412), 최소 머리 피치 임계치(1424), 중립 머리 피치 벡터(1420), 최대 머리 피치 임계치(1412)에 대응하는 오프셋 양 및/또는 최소 머리 피치 임계치(1424)에 대응하는 오프셋 양에 대응하는 값들은 예시를 위한 것이다. 다른 구현들에서, 최대 머리 피치 임계치(1412)는 레벨 머리 포즈 벡터(1416) 아래 10도로부터 레벨 머리 포즈 벡터(1416) 위 25도까지의 범위 내에 있을 수 있다. 최소 머리 피치 임계치(1424)는 레벨 머리 포즈 벡터(1416) 아래 60도로부터 레벨 머리 포즈 벡터(1416) 아래 30도까지의 범위 내에 있을 수 있다. 중립 머리 피치 벡터(1420)는 레벨 머리 포즈 벡터(1416) 아래 30도로부터 레벨 머리 포즈 벡터(1416)의 레벨까지의 범위 내에 있을 수 있다. 최대 피치 임계치(1412)에 대응하는 오프셋 양은 +1도 내지 +25도의 범위 내에 있을 수 있다. 최소 피치 임계치(1424)에 대응하는 오프셋 양은 -1도 내지 -25도의 범위 내에 있을 수 있다. 또한, 하나 이상의 임계치들은 다양한 방식들로 충족될 수 있다. 예를 들어, 일부 경우들에서는, 임계치 값과 동등한 값이 임계치를 충족하는 것인 한편, 다른 경우들에서는, 임계치 값과 동등한 값이 임계치를 충족하지 않을 것이다.
레티클의 포지션에 대한 예시적인 머리 포즈 각도 조정들
[0140] 도 15는 사용자의 머리 포즈와 레티클의 포지션에 대한 조정 사이의 예시적인 관계들을 예시한다. 그래프(1500)는 예시적인 레티클 각도 조정들 대 각도 차이를 예시한다. 본원에 설명된 바와 같이, 각도 차이(예를 들어, x-축)는 머리 포즈 벡터와 기준 벡터(예를 들어, 레벨 머리 포즈 벡터, 중립 머리 포즈 벡터 등) 사이의 각도에서의 차이로서 정의될 수 있다. 또한, 레티클 각도(예를 들어, y-축)에 대한 조정은 시스템이 결정된 머리 포즈에 기초하여 레티클의 포지션을 변경하는 방법에 대응할 수 있다.
[0141] 그래프(1500)는 레티클 각도에 대한 조정과 각도 차이 사이의 몇몇 상이한 가능한 관계들(예를 들어, 라인들(1560, 1564, 1568))을 예시한다. 예를 들어, 라인들(1560, 1568)은 레티클 각도에 대한 점진적 조정을 각도 차이 변화들로서 예시하는 한편, 라인(1564)은 특정 범위(예를 들어, -30도 내지 -10도) 내의 레티클 각도에 대해 조정이 없고, 그 다음, 각도 차이가 그 특정 범위 밖(예를 들어, 최소 머리 포즈 임계치 아래, 최대 머리 포즈 임계치 위)으로 연장됨에 따라 레티클 각도에 대한 점진적 조정을 예시한다.
[0142] 관계들(1564, 1560, 및 1568) 각각에 의해 예시된 바와 같이, 각도 차이가 5도 이상이면(예를 들어, 사용자가 레벨 머리 포즈 벡터 위의 약 5도 이상의 위를 보고 있음), 시스템은 사용자의 머리 포즈가 최대 머리 피치 임계치(예를 들어, +5도) 이상이라고(예를 들어, 충족한다고) 결정한다. 따라서, 시스템은 8도의 최대 오프셋 양만큼 레티클의 각도를 조정한다. 또한, 각도 차이가 -45도 이하이면(예를 들어, 사용자가 레벨 머리 포즈 벡터 아래의 약 45도 이상의 아래를 보고 있음), 시스템은 사용자의 머리 포즈가 최소 머리 피치 임계치(예를 들어, -45도) 이하라고(예를 들어, 충족하지 않는다고) 결정한다. 따라서, 시스템은 -12도의 최소 오프셋 양만큼 레티클의 각도를 조정한다.
[0143] 또한, 각도 차이가 약 -45도와 약 5도 사이(예를 들어, 최소 머리 포즈 임계치와 최대 머리 포즈 임계치 사이)이면, 시스템은 사용자의 머리 포즈가 최소 머리 피치 임계치 초과이고(예를 들어, 충족하고) 최대 머리 피치 임계치 미만이라고(예를 들어, 충족하지 않는다고) 결정한다. 따라서, 시스템은 예를 들어, 다양한 선형, 지수, 구분적 또는 용이성 함수들에 의해 결정될 수 있는 오프셋 양만큼 레티클의 각도를 조정한다. 예를 들어, 용이성 함수는 레티클 각도 조정들을 계속 증가 또는 감소시키는 것을 제공할 수 있다.
레티클 포지셔닝의 예시적인 프로세스들
머리 포즈에 기초한 레티클 포지셔닝 또는 조정
[0144] 도 16은 예시적인 레티클 포지션 조정 프로세스(1600)에 대한 흐름도를 예시한다. 예시적인 프로세스(1600)는 예를 들어, 원격 프로세싱 모듈(270) 또는 로컬 프로세싱 및 데이터 모듈(260)과 같은 웨어러블 시스템(200)의 하나 이상의 컴포넌트들에 의해 단독으로 또는 조합하여 수행될 수 있다. 웨어러블 시스템(200)의 디스플레이(220)는 사용자에게 레티클(들)을 제시할 수 있고, 내향 이미징 시스템(462)은 눈 시선 결정을 위한 눈 이미지들을 획득할 수 있고, IMU들, 가속도계들 또는 자이로스코프들은 머리 포즈를 결정할 수 있다.
[0145] 블록(1610)에서, 웨어러블 시스템은 사용자의 현재 머리 포즈를 표시하는 데이터를 수신할 수 있다. 머리 포즈는 사용자의 머리의 포지션 및 배향을 설명할 수 있다. 데이터는 3D 공간에서 사용자의 머리의 현재 포지션 및 배향 또는 사용자의 머리의 움직임들을 포함할 수 있다. 포지션은 (예를 들어, 도 6에 도시된 x-y-z 좌표계에서의 좌표 값들과 같은) 병진 좌표 값들에 의해 표현될 수 있다. 예를 들어, 사용자의 머리가 기울어지거나 돌려짐에 따라, 웨어러블 시스템은 사용자의 머리 움직임들을 추적 및 기록할 수 있다. 배향은 머리의 자연스러운 휴식 상태에 대한 벡터들 또는 각도 값들에 의해 표현될 수 있다. 예를 들어, 벡터들 또는 각도 값들은 머리가 앞뒤로 기울어지는 것(예를 들어, 피칭), 좌우로 돌리는 것(예를 들어, 요잉) 및 옆으로 기울어지는 것(예를 들어, 롤링)을 표현할 수 있다.
[0146] 웨어러블 시스템은 머리 포지션들의 범위 또는 머리 배향들의 범위를 식별할 수 있고, 이는 불편한 또는 부담스러운 머리 포즈들에 대응할 수 있는 머리 포즈들의 하나 이상의 범위들을 특정하도록 함께 기능한다. 이러한 범위들의 한계들은 임계치들에 대응하는 것으로 보일 수 있다. 예를 들어, 최대 또는 최소 머리 피치, 머리 요, 또는 머리 롤 임계치는 목 스트레인 또는 불편함을 초래할 수 있는 머리를 좌측으로 기울이거나 돌리는 것의 하나 이상의 범위들에 대응할 수 있다. 유사하게, 중립 또는 기준 머리 포즈 임계치는 머리의 중립 휴식 상태에 대응할 수 있다.
[0147] 이러한 범위들에 속하는 머리 포즈는 레티클의 포지션에 대한 조정이 바람직할 수 있는 머리 포즈들에 대응할 수 있다. 예를 들어, 웨어러블 시스템은 사용자에 대한 3D 공간에서 레티클을 렌더링할 수 있다. 레티클은 리그 공간에서 렌더링될 수 있다(이는 HMD에 대한 좌표계에 의해 표현될 수 있다. 레티클은 1D, 2D 및 3D 이미지들을 포함할 수 있는 다양한 그래픽 형태들로 표현될 수 있다.). 레티클은 사용자의 시야에 대한 사용자의 현재 포지션에 대응할 수 있고, 예를 들어, 사용자의 시선 방향을 표현할 수 있다. 사용자가 주위를 이동할 때, 레티클은 또한 사용자와 함께 이동할 수 있다. 사용자의 머리 포즈가 예를 들어, 전술된 범위들 중 하나에 속하도록 변함에 따라, 레티클의 포지션은 목 스트레인 또는 불편함을 방지하거나, 용이하게 하거나 감소시키도록 조정될 수 있다.
[0148] 웨어러블 시스템은 (예를 들어, 사용자의 머리의 반영된 이미지를 추적하기 위해) 예를 들어, IMU 또는 외향 이미징 시스템과 같은 HMD 내부의 또는 (예를 들어, 사용자의 방 안의 벽에 장착된 카메라와 같은) HMD 외부의 하나 이상의 센서들을 사용하여 머리 포즈들을 추적할 수 있다.
[0149] 블록(1620)에서, 웨어러블 시스템은 블록(1610)으로부터 포착된 머리 포즈 데이터에 적어도 부분적으로 기초하여 사용자의 실시간 머리 포즈를 식별 또는 결정할 수 있다. 예를 들어, 웨어러블 시스템은 본원에 설명된 바와 같이, 사용자의 머리 포즈에 대응하는 머리 포즈 벡터를 식별 또는 결정할 수 있다. 일부 경우들에서, 머리 포즈 벡터는 AR SDK(software development kit)를 사용하여 결정된다.
[0150] 블록(1630)에서, 웨어러블 시스템은 사용자의 기준 머리 포즈를 식별, 액세스 또는 결정할 수 있다. 예를 들어, 기준 머리 포즈는 중립 머리 포즈에 대응할 수 있고, 블록(1610)으로부터 포착된 머리 포즈 데이터에 적어도 부분적으로 기초할 수 있다. 웨어러블 시스템은, 본원에 설명된 바와 같이, 머리의 중립 휴식 상태에 대한 머리 포즈와 같은 중립 머리 포즈에 대응할 수 있는 기준 머리 포즈 벡터를 결정할 수 있다. 일부 경우들에서, 기준 머리 포즈 벡터는 AR SDK를 사용하여 결정된다. 일부 구현들에서, 사용자의 기준 또는 중립 머리 포즈는 디폴트 값으로(예를 들어, -20도 각도로) 설정되고, 웨어러블 시스템은 디폴트 값에 액세스함으로써(예를 들어, AR SDK에 질의함으로써) 기준 머리 포즈를 결정한다.
[0151] 블록(1640)에서, 웨어러블 시스템은 현재 머리 포즈와 기준 머리 포즈 사이의 비교에 적어도 부분적으로 기초하여, 머리 장착 디스플레이 상에 투사된 가상 레티클의 포지션에 대한 조정을 결정할 수 있다. 예를 들어, 시스템은 블록(1620)으로부터 결정된 머리 포즈와 블록(1630)으로부터 결정된 기준 머리 포즈 사이의 차이를 표시하는 값을 결정할 수 있다. 예를 들어, 머리 포즈와 기준 머리 포즈 사이의 각도 차이는 (예를 들어, 도 6에 도시된 x-y-z 좌표계의 좌표 값들과 같은) 좌표 값들에 대해 계산될 수 있다. 일부 실시예들에서, 웨어러블 시스템은 머리 포즈 벡터와 기준 머리 포즈 벡터 사이의 각도 차이를 결정할 수 있다. 예를 들어, 도 14에 도시된 바와 같이, 각도 차이는 기준 머리 포즈에 대한 사용자의 머리의 기울임 또는 돌림 정도에 대응하는 각도를 결정하기 위해 사용될 수 있다. 각도 차이에 적어도 부분적으로 기초하여, 웨어러블 시스템은 사용자가 위 또는 아래를 보고 있는지 또는 자신의 머리를 기울이거나 돌리는지 여부를 결정할 수 있다. 일부 경우들에서, 각도 차이는 AR SDK를 사용하여 결정된다.
[0152] 웨어러블 시스템은 사용자의 머리의 포즈에 적어도 부분적으로 기초하여 조정된 레티클 포지션을 결정할 수 있다. 예를 들어, 웨어러블 시스템은 사용자가 머리 포즈들의 식별된 범위들 중 하나 이상 내에 속하는 머리 포즈를 가정했는지 여부를 결정할 수 있다. 웨어러블 시스템은 사용자의 머리 포즈가 레티클의 포지션의 조정을 초래할 수 있는 포지션 또는 배향인지 여부를 결정할 수 있다. 일례로서, 웨어러블 시스템은 사용자의 머리 포즈가 머리 포지션들의 식별된 범위 및 머리 배향들의 식별된 범위 내에 속하는지 여부를 결정할 수 있다. 웨어러블 시스템은 머리 포지션들의 식별된 범위의 한계들을 정의하는 임계 값들(예를 들어, 병진 좌표 값들)과 사용자의 머리 포즈를 비교하거나, 또는 머리 배향들의 식별된 범위의 한계들을 정의하는 임계치 값들(예를 들어, 각도 값들)과 사용자의 머리 포즈와 연관된 머리 배향(예를 들어, 각도 차이)을 비교함으로써 이러한 결정을 수행할 수 있다.
[0153] 도 14를 참조하면, 사용자가 머리 포즈 벡터(1412)에 대응하는 머리 포즈를 가정했다는 결정에 기초하여, 웨어러블 시스템은 각도 차이(예를 들어, 기준 머리 포즈 벡터 사이의 차이)가 5도라고 결정할 수 있다. 따라서, 임계 값들(예를 들어, 벡터(1416)에 대응하는 중립 머리 포즈 임계치)과 각도 차이를 비교함으로써, 웨어러블 시스템은 레티클의 포지션의 조정이 바람직한지 여부를 결정할 수 있다. 예를 들어, 도 14의 예로 되돌아가서, 웨어러블 시스템은 머리 포즈 벡터(1412)에 대응하는 5도의 각도 차이가 최대 머리 포즈 임계치를 충족한다고 결정할 수 있다. 그 다음, 웨어러블 시스템은, 새로 조정된 레티클을 포인팅하는 머리 포즈 벡터(1408)가 8도의 각도 차이를 갖도록 레티클의 포지션을 조정할 수 있다. 따라서, 웨어러블 시스템은 머리 포즈 또는 머리 포즈에서의 변화들에 적어도 부분적으로 기초하여 레티클 움직임을 가속 또는 감속할 수 있다.
[0154] 본원에 설명된 다양한 블록들은 다양한 순서들로 구현될 수 있고, 그 웨어러블 시스템은 블록들 중 하나 이상을 동시에 구현하고 그리고/또는 원하는 대로 순서를 변경할 수 있다. 프로세스(1600)의 일부로서 더 적은, 더 많은, 또는 상이한 블록들이 사용될 수 있다. 예를 들어, 프로세스(1600)는 레티클의 포지션을 결정하는 것, 레티클의 포지션이 업데이트되었다는 표시를 제공하는 것 등을 위한 블록들을 포함할 수 있다.
[0155] 또한, 프로세스(1600)는 목 스트레인의 가능성을 방지 또는 감소시키는 것과 논리적으로 연관되었지만, 눈 스트레인의 가능성을 방지 또는 감소시키기 위해 유사한 기술들이 활용될 수 있다. 예를 들어, 시스템은 눈 시선 데이터를 획득할 수 있고, 눈 시선 데이터는 눈 시선 벡터 및 중립 눈 시선 벡터를 결정할 수 있다. 시스템은 눈 시선 벡터와 중립 눈 시선 벡터 사이의 각도 차이를 추가로 결정할 수 있고, 각도 차이 및 하나 이상의 임계치들에 기초하여, 가상 레티클의 포지션 또는 디스플레이의 3D 뷰 중 적어도 하나에 대한 조정을 결정할 수 있다.
각도 차이에 기초한 레티클 포지셔닝 또는 조정
[0156] 도 17은 예시적인 레티클 조정 프로세스(1700)에 대한 흐름도를 예시한다. 예시적인 프로세스(1700)는 예를 들어, 원격 프로세싱 모듈(270) 또는 로컬 프로세싱 및 데이터 모듈(260)과 같은 웨어러블 시스템(200)의 하나 이상의 컴포넌트들에 의해 단독으로 또는 조합하여 수행될 수 있다. 웨어러블 시스템(200)의 디스플레이(220)는 사용자에게 레티클(들)을 제시할 수 있고, 내향 이미징 시스템(462)은 눈 시선 결정을 위한 눈 이미지들을 획득할 수 있고, IMU들, 가속도계들 또는 자이로스코프들은 머리 포즈를 결정할 수 있다.
[0157] 웨어러블 시스템은 사용자에 대한 3D 공간에서 레티클을 렌더링할 수 있다. 레티클은 리그 공간에서 렌더링될 수 있다(이는 HMD에 대한 좌표계에 의해 표현될 수 있다. 레티클은 1D, 2D 및 3D 이미지들을 포함할 수 있는 다양한 그래픽 형태들로 표현될 수 있다.). 레티클은 사용자의 시야에 대한 사용자의 현재 포지션에 대응할 수 있고, 예를 들어, 사용자의 시선 방향을 표현할 수 있다. 사용자가 주위를 이동할 때, 레티클은 또한 사용자와 함께 이동할 수 있다. 또한, 레티클은 하나 이상의 오브젝트들을 향할 수 있고, 사용자는 레티클이 포인팅하고 있는 타겟 오브젝트를 선택할 수 있다. 일부 경우들에서, 사용자의 FOV 내의 레티클의 포지션은 사용자의 머리가 이동함에 따라 일정하게 유지될 수 있다. 예를 들어, 레티클은 사용자의 시야의 중심에 포지셔닝될 수 있고, 사용자의 FOV가 변하는 경우에도 중심에 유지될 것이다. 따라서, 일부 경우들에서, 레티클로 타겟 오브젝트를 선택하기 위해, 사용자는 FOV(예를 들어, 레티클의 위치)의 중심이 타겟 오브젝트 상에 있도록 FOV를 조정하기 위해 자신의 머리를 이동시켜야 한다.
[0158] 그러나, 웨어러블 시스템이 사용자의 FOV 내에서 레티클의 포지션을 조정하는 것이 유리할 수 있다. 예를 들어, 사용자가 공기중(예를 들어, 천장)에서 높게 있는, 지면(예를 들어, 바닥)까지 낮게 있는, 우측 멀리 있는, 또는 좌측 멀리 있는 타겟 오브젝트를 선택하는 것을 원하는 경우들에서, 웨어러블 시스템은 사용자가 레티클을 타겟 오브젝트의 위치에 포지셔닝하는 것을 돕기 위해 사용자의 FOV 내에서 레티클의 포지션을 조정할 수 있지만, 사용자가 사용자의 FOV의 중심이 타겟 오브젝트 상에 있도록 자신의 머리를 기울이거나 돌리도록 요구하지 않는다. 따라서, 웨어러블 시스템은 레티클의 포지션을 조정하기 위한 프로세스(1600)를 구현할 수 있다.
[0159] 블록(1710)에서, 웨어러블 시스템은 머리 포지션들의 하나 이상의 범위들 또는 머리 배향들의 범위들을 식별 또는 결정할 수 있고, 이는 불편한 또는 부담스러운 머리 포즈들에 대응할 수 있는 머리 포즈들의 하나 이상의 범위들을 특정하도록 함께 기능한다. 이러한 범위들의 한계들은 임계치들에 대응하는 것으로 보일 수 있다. 예를 들어, 웨어러블 시스템은, 머리를 앞뒤로 기울이는 정도 또는 각도에 대응할 수 있어서 최대 또는 최소 레티클 각도 조정을 초래할 최대 머리 피치 임계치 및/또는 최소 머리 피치 임계치를 식별 또는 결정할 수 있다. 일부 실시예들에서, 웨어러블 시스템은, 사용자의 목이 불편하거나 부담스러운 포지션들에 있기 전에 좌측 또는 우측 머리 돌림의 정도 또는 각도에 대응할 수 있는 최대 머리 요 임계치 또는 최소 머리 요 임계치를 식별 또는 결정할 수 있다. 유사하게, 웨어러블 시스템은, 사용자의 목이 불편하거나 부담스러운 포지션들에 있기 전에 옆으로 머리 기울임의 정도 또는 각도에 대응할 수 있는 최대 머리 롤 임계치 또는 최소 머리 롤 임계치를 식별 또는 결정할 수 있다. 또한, 웨어러블 시스템은 머리의 중립 휴식 상태에 대응할 수 있는 중립 머리 피치 임계치, 중립 머리 요 임계치 또는 중립 머리 롤 임계치를 식별 또는 결정할 수 있다. 일부 경우들에서, 이러한 임계치들은 사용자 입력들일 수 있거나, 교정 스테이지 동안 결정될 수 있거나, 또는 시스템 내의 상수들일 수 있다.
[0160] 블록들(1720 및 1730)에서, 웨어러블 시스템은 본원에 설명된 바와 같이, 수신된 머리 포즈 데이터에 적어도 부분적으로 기초하여, 수신된 머리 포즈 데이터, 머리 포즈 벡터 및 기준(또는 중립) 머리 포즈 벡터를 결정할 수 있다.
[0161] 블록(1740)에서, 웨어러블 시스템은 머리 포즈 벡터와 중립 머리 포즈 벡터 사이의 각도 차이를 결정할 수 있다. 예를 들어, 도 14에 도시된 바와 같이, 각도 차이는 레벨 머리 포즈 벡터에 대한 사용자의 머리의 기울임 또는 돌림 정도에 대응하는 각도를 결정하기 위해 사용될 수 있다. 각도 차이에 적어도 부분적으로 기초하여, 웨어러블 시스템은 사용자가 위 또는 아래를 보고 있는지 또는 자신의 머리를 기울이거나 돌리는지 여부를 결정할 수 있다.
[0162] 블록(1750)에서, 웨어러블 시스템은 레티클 포지션 조정을 계산할 수 있다. 레티클 포지션 조정들(예를 들어, 각도 조정들 또는 오프셋들)은 예를 들어, 커서 움직임을 가속하는 것을 돕기 위해 임계치들 각각과 연관될 수 있다. 예를 들어, 머리 포즈가 최대 머리 피치 임계치, 최대 머리 요 임계치 또는 최대 머리 롤 임계치를 충족하면, 웨어러블 시스템은 레티클의 각도 또는 포지션을 제1 미리 결정된 양(예를 들어, +8도)만큼 조정할 수 있다. 유사하게, 머리 포즈가 최소 머리 피치 임계치, 최소 머리 요 임계치 또는 최소 머리 롤 임계치를 충족하지 않으면, 웨어러블 시스템은 레티클의 각도 또는 포지션을 제2 미리 결정된 양(예를 들어, -12도)만큼 조정할 수 있다. 일부 실시예들에서, 머리 포즈가 최소 임계치(예를 들어, 피치, 요 또는 롤)을 충족하지 않고 최대 임계치(예를 들어, 피치, 요 또는 롤)를 충족하지 않으면, 웨어러블 시스템은 용이성 함수를 사용하여 레티클의 각도 또는 포지션을 조정할 수 있다. 예를 들어, 머리 포즈가 최소 머리 피치 임계치를 충족하고, 중립 머리 피치 임계치를 충족하지 않으면, 웨어러블 시스템은 하기 수식 1을 사용하여 레티클의 각도 또는 포지션을 조정할 수 있다:
Figure pct00001
(수식 1)
여기서 VPA는 수직 각도 피치 조정이고, maxHPA는 최대 머리 피치 조정이고, P는 머리 포즈 벡터와 레벨 머리 포즈 벡터 사이의 각도이고, neutralHP는 중립 머리 포즈 벡터에 대응하는 각도이고, ease()는 easeOutSine과 같은 용이성 함수이다.
[0163] 유사하게, 머리 포즈가 중립 머리 피치 임계치를 충족하고, 최대 머리 피치 임계치를 충족하지 않으면, 웨어러블 시스템은 하기 수식 2를 사용하여 레티클의 각도 또는 포지션을 조정할 수 있다:
Figure pct00002
(수식 2)
여기서 VPA는 수직 각도 피치 조정이고, minHPA는 최소 머리 피치 조정이고, P는 머리 포즈 벡터와 레벨 머리 포즈 벡터 사이의 각도이고, neutralHP는 중립 머리 포즈 벡터에 대응하는 각도이고, ease()는 easeOutSine과 같은 용이성 함수이다.
[0164] 본원에 설명된 다양한 블록들은 다양한 순서들로 구현될 수 있고, 그 웨어러블 시스템은 블록들 중 하나 이상을 동시에 구현하고 그리고/또는 원하는 대로 순서를 변경할 수 있다. 프로세스(1700)의 일부로서 더 적은, 더 많은, 또는 상이한 블록들이 사용될 수 있다. 예를 들어, 프로세스(1700)는 레티클의 포지션을 결정하는 것, 레티클의 포지션이 업데이트되었다는 표시를 제공하는 것 등을 위한 블록들을 포함할 수 있다.
[0165] 또한, 프로세스(1700)는 목 스트레인의 가능성을 방지 또는 감소시키는 것과 논리적으로 연관되었지만, 눈 스트레인의 가능성을 방지 또는 감소시키기 위해 유사한 기술들이 활용될 수 있다. 예를 들어, 시스템은 눈 시선 데이터를 획득할 수 있고, 눈 시선 데이터는 눈 시선 벡터 및 중립 눈 시선 벡터를 결정할 수 있다. 시스템은 눈 시선 벡터와 중립 눈 시선 벡터 사이의 각도 차이를 추가로 결정할 수 있고, 각도 차이 및 하나 이상의 임계치들에 기초하여, 가상 레티클의 포지션 또는 디스플레이의 3D 뷰 중 적어도 하나에 대한 조정을 결정할 수 있다.
머리 피치 임계치들에 기초한 레티클 포지셔닝 또는 조정
[0166] 도 18은 예시적인 레티클 조정 프로세스에 대한 흐름도를 예시한다. 예시적인 프로세스(1800)는 예를 들어, 원격 프로세싱 모듈(270) 또는 로컬 프로세싱 및 데이터 모듈(260)과 같은 웨어러블 시스템(200)의 하나 이상의 컴포넌트들에 의해 단독으로 또는 조합하여 수행될 수 있다. 웨어러블 시스템(200)의 디스플레이(220)는 사용자에게 레티클(들)을 제시할 수 있고, 내향 이미징 시스템(462)은 눈 시선 결정을 위한 눈 이미지들을 획득할 수 있고, IMU들, 가속도계들 또는 자이로스코프들은 머리 포즈를 결정할 수 있다.
[0167] 블록(1810)에서, 도 17의 블록(1740)과 유사하게, 웨어러블 시스템은 머리 포즈 벡터와 중립 머리 포즈 벡터 사이의 각도 차이를 계산한다.
[0168] 블록(1820)에서, 웨어러블 시스템은 각도 차이가 최소 머리 피치 임계치를 충족하는지 또는 충족하지 못하는지 여부를 결정한다. 본원에 설명된 바와 같이, 머리 피치는 머리를 앞뒤로 기울이는 것에 대응할 수 있다. 따라서, 각도 차이는, 사용자가 (예를 들어, 지면을 보기 위해) 자신의 목을 전방으로 스트레이닝하거나 구부릴 때 최소 머리 피치 임계치를 충족하지 못할 수 있다. 예를 들어, 최소 머리 피치 임계치는 약 -30, -35, -40, -45, -50, 55, 또는 -60도(+/- 몇도)의 각도 차이에 대응할 수 있다. 따라서, 일부 경우들에서, 각도 차이가 최소 머리 피치 임계치이거나 그 아래이면, 각도 차이는 최소 머리 피치 임계치를 충족하지 못한다. 그러나, 일부 경우들에서, 각도 차이가 최소 머리 피치 임계치이거나 그 아래이면, 각도 차이는 최소 머리 피치 임계치를 충족한다.
[0169] 머리 포즈 벡터와 중립 머리 포즈 벡터 사이의 각도(예를 들어, 머리 포즈 벡터 마이너스 중립 머리 포즈 벡터)가 포지티브이면, 사용자는 중립 포지션에 대해 위를 보고 있음을 주목해야 한다. 마찬가지로, 각도가 네거티브이면, 사용자는 아래를 보고 있다. 따라서, 일부 경우들에서, 시스템은 사용자가 위 또는 아래를 보고 있는지 여부를 결정할 수 있고, 포지션 각도를 보장하기 위해 각도 차이의 절대 값을 취할 수 있다. 일부 실시예들에서, 시스템은 각도 차이(예를 들어, 머리 포즈 벡터 마이너스 중립 머리 포즈 벡터)를 결정할 수 있고, 네거티브 값은 사용자가 아래를 보고 있음을 표시하는 것을 이해할 것이다.
[0170] 블록(1830)에서, 웨어러블 시스템은 각도 차이가 최소 머리 피치 임계치를 충족하지 못한다고 결정하였다. 따라서, 웨어러블 시스템은 최소 머리 피치 임계치와 연관된 각도 조정을 사용하여 조정된 레티클 포지션을 결정한다. 일부 경우들에서, 각도 조정은 약 -30, -25, -20, -15, -12, -10, -5, 또는 -2도일 수 있다.
[0171] 블록(1840)에서, 웨어러블 시스템은 각도 차이가 최대 머리 피치 임계치를 충족하는지 또는 충족하지 못하는지 여부를 결정한다. 본원에 설명된 바와 같이, 머리 피치는 머리를 앞뒤로 기울이는 것에 대응할 수 있다. 따라서, 각도 차이는, 사용자가 (예를 들어, 하늘을 보기 위해) 자신의 목을 후방으로 스트레이닝하거나 구부릴 때 최대 머리 피치 임계치를 충족할 수 있다. 예를 들어, 최대 머리 피치 임계치는 약 2, 5, 8, 10, 12, 15, 20, 25, 또는 30도(+/- 몇도)의 각도 차이에 대응할 수 있다. 따라서, 일부 경우들에서, 각도 차이가 최대 머리 피치 임계치이거나 그 위이면, 각도 차이는 최대 머리 피치 임계치를 충족한다. 그러나, 일부 경우들에서, 각도 차이가 최대 머리 피치 임계치이거나 그 위이면, 각도 차이는 최대 머리 피치 임계치를 충족하지 못한다.
[0172] 블록(1850)에서, 웨어러블 시스템은 각도 차이가 최대 머리 피치 임계치를 충족한다고 결정하였다. 따라서, 웨어러블 시스템은 최대 머리 피치 임계치와 연관된 각도 조정을 사용하여 조정된 레티클 포지션을 결정한다. 일부 경우들에서, 각도 조정은 약 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 15, 또는 20도일 수 있다.
[0173] 블록(1860)에서, 웨어러블 시스템은 각도 차이가 중립 머리 피치 임계치를 충족하는지 또는 충족하지 못하는지 여부를 결정한다. 본원에 설명된 바와 같이, 머리 피치는 머리를 앞뒤로 기울이는 것에 대응할 수 있다. 중립 머리 피치 임계치는 머리의 중립 휴식 상태에 대응할 수 있다. 예를 들어, 중립 머리 피치 임계치는 약 -10, -15, -20, -25, 또는 -30도(+/- 몇도)의 각도 차이에 대응할 수 있다. 따라서, 일부 경우들에서, 각도 차이가 중립 머리 피치 임계치이거나 그 위이면, 각도 차이는 중립 머리 피치 임계치를 충족한다. 유사하게, 각도 차이가 중립 머리 피치 임계치 아래이면, 각도 차이는 중립 머리 피치 임계치를 충족하지 못할 수 있다. 그러나, 일부 경우들에서, 각도 차이는, 각도 차이가 중립 머리 피치 임계치이거나 그 위이면 중립 머리 피치 임계치를 충족하지 못하고, 중립 머리 피치 임계치 아래이면 중립 머리 피치 임계치를 충족할 수 있다.
[0174] 블록(1870)에서, 웨어러블 시스템은 각도 차이가 중립 머리 피치 임계치를 충족한다고 결정하였다. 따라서, 웨어러블 시스템은 상기 수식 2를 사용하여 레티클의 각도 또는 포지션을 조정할 수 있다.
[0175] 블록(1880)에서, 웨어러블 시스템은 각도 차이가 중립 머리 피치 임계치를 충족하지 못한다고 결정하였다. 따라서, 웨어러블 시스템은 상기 수식 1을 사용하여 레티클의 각도 또는 포지션을 조정할 수 있다.
[0176] 본원에 설명된 다양한 블록들은 다양한 순서들로 구현될 수 있고, 그 웨어러블 시스템은 블록들 중 하나 이상을 동시에 구현하고 그리고/또는 원하는 대로 순서를 변경할 수 있다. 프로세스(1800)의 일부로서 더 적은, 더 많은, 또는 상이한 블록들이 사용될 수 있다. 예를 들어, 프로세스(1800)는 추가적인 임계치들을 결정하는 것, 레티클의 포지션이 업데이트되었다는 표시를 제공하는 것 등을 위한 블록들을 포함할 수 있다.
[0177] 또한, 프로세스(1800)는 목 스트레인의 가능성을 방지 또는 감소시키는 것과 논리적으로 연관되었지만, 눈 스트레인의 가능성을 방지 또는 감소시키기 위해 유사한 기술들이 활용될 수 있다. 예를 들어, 시스템은 눈 시선 데이터를 획득할 수 있고, 눈 시선 데이터는 눈 시선 벡터 및 중립 눈 시선 벡터를 결정할 수 있다. 시스템은 눈 시선 벡터와 중립 눈 시선 벡터 사이의 각도 차이를 추가로 결정할 수 있고, 각도 차이 및 하나 이상의 임계치들에 기초하여, 가상 레티클의 포지션 또는 디스플레이의 3D 뷰 중 적어도 하나에 대한 조정을 결정할 수 있다.
예시적인 소프트웨어 코드
[0178] 부록 A는 머리 포즈 및 수직 피치 조정을 계산하는 C# 프로그래밍 언어에서의 코드의 예를 포함한다. 코드는 도 17을 참조하여 설명된 레티클 조정 프로세스(1700)의 예를 구현한다. 이로써 부록 A는 본 명세서의 일부를 형성하도록 그 전체가 인용에 의해 본원에 통합된다.
추가적인 양상들
[0179] 제1 양상에서, 시스템은 시스템의 사용자의 머리 포즈 데이터를 획득하도록 구성되는 머리 포즈 센서; 머리 포즈 데이터를 저장하도록 구성되는 비일시적 메모리; 사용자의 눈 앞에 위치되도록 구성되는 디스플레이 ― 디스플레이는 상기 사용자의 눈을 향해 가상 레티클을 투사하도록 구성됨 ―; 머리 포즈 센서, 디스플레이 및 비일시적 메모리와 통신하는 하드웨어 프로세서를 포함하고, 하드웨어 프로세서는, 사용자의 머리 포즈 데이터를 획득하고; 머리 포즈 데이터에 적어도 부분적으로 기초하여 사용자의 머리 포즈를 식별하고; 사용자의 머리 포즈와 기준 머리 포즈 사이의 비교에 적어도 부분적으로 기초하여 가상 레티클의 포지션에 대한 조정을 결정하고, 결정된 조정에 적어도 부분적으로 기초하여 가상 레티클이 포지션에서 변화하게 하도록 프로그래밍된다.
[0180] 양상 1의 시스템인 제2 양상에서, 가상 레티클은 사용자의 시야 내에서 사용자의 포지션을 식별하는 이동가능한 표시자를 포함한다.
[0181] 양상 1 또는 양상 2의 시스템인 제3 양상에서, 머리 포즈 데이터는 상기 사용자의 머리의 요, 피치 또는 롤의 표시 중 적어도 하나에 대응한다.
[0182] 양상 3의 시스템인 제4 양상에서, 요, 피치 또는 롤의 표시는 기준 머리 포즈에 대한 것이다.
[0183] 양상 4의 시스템인 제5 양상에서, 기준 머리 포즈는 사용자의 머리의 레벨 머리 포즈에 대응한다.
[0184] 양상 5의 시스템인 제6 양상에서, 레벨 머리 포즈는 사용자의 머리의 관상면, 사용자의 머리의 시상면, 및 사용자의 머리의 축면 각각이 서로 직교하는 머리 포즈를 포함한다.
[0185] 양상들 1 내지 6 중 어느 하나의 시스템인 제7 양상에서, 기준 머리 포즈는 사용자의 머리의 자연 휴식 상태에 대응하는 머리 포즈를 포함한다.
[0186] 양상 7의 시스템인 제8 양상에서, 사용자의 머리의 자연 휴식 상태는 레벨 머리 포즈에 대해, -5 내지 5도의 요, -5 내지 5도의 롤, 및 -15 내지 -25도의 피치에 대응한다.
[0187] 양상 8의 시스템인 제9 양상에서, 기준 머리 포즈는 레벨 머리 포즈에 대해, 0도의 요, 0도의 롤 또는 -20도의 피치 중 적어도 하나에 대응한다.
[0188] 양상들 1 내지 9 중 어느 하나의 시스템인 제10 양상에서, 하드웨어 프로세서는 사용자의 머리 포즈에 대응하는 머리 포즈 벡터를 식별하고 기준 머리 포즈에 대응하는 기준 머리 포즈 벡터를 식별하도록 추가로 프로그래밍된다.
[0189] 양상 10의 시스템인 제11 양상에서, 하드웨어 프로세서는 사용자의 머리 포즈와 기준 머리 포즈 사이의 비교에 적어도 부분적으로 기초하여 머리 포즈 벡터와 기준 머리 포즈 벡터 사이의 각도 차이를 결정하도록 추가로 프로그래밍되고, 각도 차이는 기준 머리 포즈에 대해, 사용자의 상기 머리 포즈의 요, 피치 또는 롤에서의 차이 중 적어도 하나에 대응한다.
[0190] 양상 11의 시스템인 제12 양상에서, 가상 레티클의 포지션에 대한 조정을 결정하기 위해, 하드웨어 프로세서는 결정된 각도 차이를 하나 이상의 머리 포즈 임계치들과 비교하도록 프로그래밍된다.
[0191] 양상 12의 시스템인 제13 양상에서, 하나 이상의 머리 포즈 임계치들은 최대 머리 포즈 임계치 또는 최소 머리 포즈 임계치 중 적어도 하나를 포함한다.
[0192] 양상 13의 시스템인 제14 양상에서, 최대 머리 포즈 임계치는 최대 머리 요 임계치, 최대 머리 롤 임계치 또는 최대 머리 피치 임계치 중 적어도 하나에 대응한다.
[0193] 양상 14의 시스템인 제15 양상에서, 기준 머리 포즈에 대해, 최대 머리 요 임계치는 50도이거나, 최대 머리 롤 임계치는 20도이거나, 또는 최대 머리 피치 임계치는 5도이다.
[0194] 양상들 13 내지 15 중 어느 하나의 시스템인 제16 양상에서, 최소 머리 포즈 임계치는 최소 머리 요 임계치, 최소 머리 롤 임계치 또는 최소 머리 피치 임계치 중 적어도 하나에 대응한다.
[0195] 양상 16의 시스템인 제17 양상에서, 기준 머리 포즈에 대해, 최소 머리 요 임계치는 50도이거나, 최소 머리 롤 임계치는 -20도이거나, 또는 최소 머리 피치 임계치는 -45도이다.
[0196] 양상들 13 내지 17 중 어느 하나의 시스템인 제18 양상에서, 하드웨어 프로세서는 각도 차이가 최소 머리 포즈 임계치를 충족하지 못한다는 결정에 대한 응답으로, 제1 조정 값에 적어도 부분적으로 기초하여 가상 레티클의 포지션에 대한 조정을 결정하도록 추가로 프로그래밍된다.
[0197] 양상 18의 시스템인 제19 양상에서, 제1 조정 값은 약 -12도이다.
[0198] 양상들 13 내지 19 중 어느 하나의 시스템인 제20 양상에서, 하드웨어 프로세서는 각도 차이가 최대 머리 포즈 임계치를 충족한다는 결정에 대한 응답으로, 제2 조정 값에 적어도 부분적으로 기초하여 가상 레티클의 포지션에 대한 조정을 결정하도록 추가로 프로그래밍된다.
[0199] 양상 20의 시스템인 제21 양상에서, 제2 조정 값은 약 +5도이다.
[0200] 양상들 13 내지 21 중 어느 하나의 시스템인 제22 양상에서, 하드웨어 프로세서는 각도 차이가 최소 머리 포즈 임계치를 충족하고 최대 머리 포즈 임계치를 충족하지 못한다는 결정에 대한 응답으로, 제3 조정 값에 적어도 부분적으로 기초하여 가상 레티클의 포지션에 대한 조정을 결정하도록 추가로 프로그래밍된다.
[0201] 양상 22의 시스템인 제23 양상에서, 제3 조정 값은 용이성 함수에 대응한다.
[0202] 양상 22 또는 양상 23의 시스템인 제24 양상에서, 제3 조정 값은 약 0도이다.
[0203] 양상들 1 내지 24 중 어느 하나의 시스템인 제25 양상에서, 가상 레티클이 포지션에서 변화하게 하는 것은 가상 레티클이 사용자의 시야의 디폴트 레티클 포지션으로부터 포지션을 변화하게 하는 것을 포함한다.
[0204] 양상 25의 시스템인 제26 양상에서, 디폴트 레티클 포지션은 사용자의 시스템의 중심을 포함한다.
[0205] 양상들 1 내지 26 중 어느 하나의 시스템인 제27 양상에서, 머리 포즈 센서는 IMU(inertial measurement unit), 가속도계, 자이로스코프 또는 자력계를 포함한다.
[0206] 양상들 1 내지 27 중 어느 하나의 시스템인 제28 양상에서, 웨어러블 시스템은 머리 장착 웨어러블 시스템을 포함한다.
[0207] 제29 양상에서, 디스플레이 시스템의 디스플레이에 대응하는 시야 내에서 사용자의 포지션을 식별하는 가상 레티클의 포지션을 조정하는 방법은, 사용자의 머리 포즈를 추적하도록 구성된 머리 포즈 센서로부터 디스플레이 시스템의 사용자의 머리 포즈 데이터를 획득하는 단계; 머리 포즈 데이터에 적어도 부분적으로 기초하여 사용자의 머리 포즈에 대응하는 머리 포즈 벡터를 식별하는 단계; 기준 머리 포즈에 대응하는 기준 머리 포즈 벡터를 식별하는 단계; 사용자의 머리 포즈와 기준 머리 포즈 사이의 비교에 적어도 부분적으로 기초하여 머리 포즈 벡터와 기준 머리 포즈 벡터 사이의 각도 차이를 결정하는 단계 ― 각도 차이는 기준 머리 포즈에 대해, 사용자의 머리 포즈의 요, 피치 또는 롤에서의 차이 중 적어도 하나에 대응함 ―; 결정된 각도 차이를 하나 이상의 머리 포즈 임계치들과 비교하는 단계 ― 하나 이상의 머리 포즈 임계치들은 최대 머리 포즈 임계치 또는 최소 머리 포즈 임계치 중 적어도 하나를 포함함 ―; 각도 차이가 최소 머리 포즈 임계치를 충족하지 못한다는 결정에 대한 응답으로, 제1 조정 값에 적어도 부분적으로 기초하여 가상 레티클의 포지션에 대한 조정을 결정하는 단계 ― 가상 레티클의 포지션은 사용자의 시야 내에서 사용자의 포지션을 식별하는 이동가능한 표시자의 포지션에 대응함 ―; 각도 차이가 최대 머리 포즈 임계치를 충족한다는 결정에 대한 응답으로, 제2 조정 값에 적어도 부분적으로 기초하여 가상 레티클의 포지션에 대한 조정을 결정하는 단계; 각도 차이가 최소 머리 포즈 임계치를 충족하고 최대 머리 포즈 임계치를 충족하지 못한다는 결정에 대한 응답으로, 제3 조정 값에 적어도 부분적으로 기초하여 가상 레티클의 포지션에 대한 조정을 결정하는 단계; 및 결정된 조정에 기초하여 가상 레티클의 포지션이 사용자의 시야의 디폴트 레티클 포지션으로부터 조정되게 하는 단계를 포함한다. 이 방법은 디스플레이 시스템의 제어 하에서, 예를 들어, 방법의 동작들을 수행하도록 프로그래밍된 하드웨어 프로세서에 의해 수행될 수 있다.
[0208] 양상 29의 방법인 제30 양상에서, 가상 레티클은 사용자의 시야 내에서 사용자의 포지션을 식별하는 이동가능한 표시자를 포함한다.
[0209] 양상 29 또는 양상 30의 방법인 제31 양상에서, 머리 포즈 데이터는 상기 사용자의 머리의 요, 피치 또는 롤의 표시 중 적어도 하나에 대응한다.
[0210] 양상 31의 방법인 제32 양상에서, 사용자의 머리의 요, 피치 또는 롤의 표시는 기준 머리 포즈에 대한 것이다.
[0211] 양상들 29 내지 32 중 어느 하나의 방법인 제33 양상에서, 사용자의 기준 머리 포즈는 사용자의 머리의 레벨 머리 포즈에 대응한다.
[0212] 양상 33의 방법인 제34 양상에서, 레벨 머리 포즈는 사용자의 머리의 관상면, 사용자의 머리의 시상면, 및 사용자의 머리의 축면 각각이 서로 직교하는 머리 포즈를 포함한다.
[0213] 양상들 29 내지 34 중 어느 하나의 방법인 제35 양상에서, 기준 머리 포즈는 자연 휴식 상태인 사용자의 머리에 대응하는 머리 포즈를 포함한다.
[0214] 양상 35의 방법인 제36 양상에서, 사용자의 머리의 자연 휴식 상태는 사용자의 레벨 머리에 대해, 약 -5 내지 5도의 요, 약 -5 내지 5도의 롤, 또는 약 -15 내지 -25도의 피치에 대응한다.
[0215] 양상 35 또는 양상 36의 방법인 제37 양상에서, 기준 머리 포즈는 레벨 머리 포즈에 대해, 0도의 요, 0도의 롤 또는 -20도의 피치 중 적어도 하나에 대응한다.
[0216] 양상들 29 내지 37 중 어느 하나의 방법인 제38 양상에서, 최대 머리 포즈 임계치는 최대 머리 요 임계치, 최대 머리 롤 임계치 또는 최대 머리 피치 임계치 중 적어도 하나에 대응한다.
[0217] 양상들 29 내지 38 중 어느 하나의 방법인 제39 양상에서, 기준 머리 포즈에 대해, 최대 머리 요 임계치는 약 50도이고, 최대 머리 롤 임계치는 약 20도이고, 최대 머리 피치 임계치는 약 5도이다.
[0218] 양상들 29 내지 39 중 어느 하나의 방법인 제40 양상에서, 최소 머리 포즈 임계치는 최소 머리 요 임계치, 최소 머리 롤 임계치 또는 최소 머리 피치 임계치 중 적어도 하나에 대응한다.
[0219] 양상들 29 내지 40 중 어느 하나의 방법인 제41 양상에서, 기준 머리 포즈에 대해, 최소 머리 요 임계치는 약 50도이고, 최소 머리 롤 임계치는 약 -20도이고, 최소 머리 피치 임계치는 약 -45도이다.
[0220] 양상들 29 내지 41 중 어느 하나의 방법인 제42 양상에서, 제1 조정 값은 약 -12도이다.
[0221] 양상들 29 내지 42 중 어느 하나의 방법인 제43 양상에서, 제2 조정 값은 약 +5도이다.
[0222] 양상들 29 내지 43 중 어느 하나의 방법인 제44 양상에서, 제3 조정 값은 용이성 함수에 대응한다.
[0223] 양상들 29 내지 44 중 어느 하나의 방법인 제45 양상에서, 제3 조정 값은 약 0도이다.
[0224] 양상들 29 내지 45 중 어느 하나의 방법인 제46 양상에서, 디폴트 레티클 포지션은 사용자의 시야의 중심을 포함한다.
[0225] 양상들 29 내지 46 중 어느 하나의 방법인 제47 양상에서, 머리 포즈 센서는 IMU(inertial measurement unit), 가속도계, 자이로스코프 또는 자력계를 포함한다.
[0226] 제48 양상에서, 디스플레이 시스템의 디스플레이에 대응하는 시야 내에서 사용자의 포지션을 식별하는 가상 레티클의 포지션을 조정하는 방법은, 디스플레이 시스템의 사용자의 머리 포즈 데이터를 획득하는 단계; 머리 포즈 데이터에 적어도 부분적으로 기초하여 머리 포즈를 식별하는 단계; 기준 머리 포즈를 식별하는 단계; 머리 포즈와 기준 머리 포즈 사이의 비교에 적어도 부분적으로 기초하여, 머리 장착 디스플레이 상에 투사된 가상 레티클의 포지션에 대한 조정을 결정하는 단계를 포함한다.
[0227] 양상 48의 방법인 제49 양상에서, 사용자의 머리 포즈를 추적하도록 구성된 머리 포즈 센서로부터 디스플레이 시스템의 사용자의 머리 포즈 데이터를 획득하는 단계를 더 포함한다.
[0228] 양상 48 또는 양상 49의 방법인 제50 양상에서, 사용자의 머리 포즈에 대응하는 머리 포즈 벡터를 식별하는 단계; 및 기준 머리 포즈에 대응하는 기준 머리 포즈 벡터를 식별하는 단계를 더 포함한다.
[0229] 양상 50의 방법인 제51 양상에서, 머리 포즈와 기준 머리 포즈 사이의 비교에 적어도 부분적으로 기초하여 머리 포즈 벡터와 기준 머리 포즈 벡터 사이의 각도 차이를 결정하는 단계를 더 포함하고, 각도 차이는 기준 머리 포즈에 대해, 사용자의 상기 머리 포즈의 요, 피치 또는 롤에서의 차이 중 적어도 하나에 대응한다.
[0230] 양상들 48 내지 51 중 어느 하나의 방법인 제52 양상에서, 상기 가상 레티클의 포지션에 대한 조정을 결정하는 단계는 하나 이상의 머리 포즈 임계치들과 각도 차이의 비교에 추가로 기초한다.
[0231] 양상 52의 방법인 제53 양상에서, 하나 이상의 머리 포즈 임계치들은 최대 머리 포즈 임계치 또는 최소 머리 포즈 임계치 중 적어도 하나를 포함한다.
[0232] 제54 양상에서, 디스플레이 시스템의 디스플레이에 대한 사용자의 시야 내에서 상기 사용자의 포지션을 식별하는 이동가능한 표시자의 포지션을 조정하는 방법은, 최대 머리 피치 임계치, 최소 머리 피치 임계치 또는 중립 머리 피치 임계치 중 적어도 하나를 식별하는 단계; 사용자의 머리 포즈에 대응하는 머리 포즈 벡터를 식별하는 단계; 기준 머리 포즈 벡터를 식별하는 단계; 머리 포즈 벡터와 기준 머리 포즈 벡터 사이의 각도 차이를 계산하는 단계; 각도 차이, 및 최대 머리 피치 임계치, 최소 머리 피치 임계치 또는 중립 머리 피치 임계치 중 적어도 하나에 적어도 부분적으로 기초하여 레티클 조정을 계산하는 단계; 및 계산된 레티클 조정에 적어도 부분적으로 기초하여, 조정된 레티클 포지션을 결정하는 단계를 포함한다.
[0233] 양상 54의 방법인 제55 양상에서, 사용자의 머리 포즈를 추적하도록 구성된 머리 포즈 센서로부터 디스플레이 시스템의 사용자의 머리 포즈 데이터를 획득하는 단계를 더 포함한다.
[0234] 양상 54 또는 양상 55의 방법인 제56 양상에서, 상기 각도 차이를 결정하는 단계는, 머리 포즈 벡터와 기준 머리 포즈 벡터 사이의 비교에 적어도 부분적으로 기초하고, 각도 차이는 기준 머리 포즈에 대해, 사용자의 상기 머리 포즈의 요, 피치 또는 롤에서의 차이 중 적어도 하나에 대응한다.
[0235] 양상들 54 내지 56 중 어느 하나의 방법인 제57 양상에서, 상기 조정된 레티클 포지션을 결정하는 단계는 하나 이상의 머리 포즈 임계치들과 각도 차이의 비교에 추가로 기초한다.
[0236] 양상 57의 방법인 제58 양상에서, 하나 이상의 머리 포즈 임계치들은 최대 머리 포즈 임계치 또는 최소 머리 포즈 임계치 중 적어도 하나를 포함한다.
[0237] 제59 양상에서, 디스플레이 시스템의 디스플레이에 대응하는 시야 내에서 사용자의 포지션을 식별하는 가상 레티클의 포지션을 조정하는 방법은, 머리 포즈 벡터와 기준 머리 포즈 벡터 사이의 각도 차이를 계산하는 단계 ― 머리 포즈 벡터는 디스플레이 시스템의 사용자의 머리 포즈에 대응하고, 기준 머리 포즈 벡터는 기준 머리 포즈에 대응함 ―; 각도 차이가 최소 머리 피치 임계치를 충족하지 않는다고 결정하는 단계; 및 최소 머리 피치 임계치와 연관된 각도 조정에 적어도 부분적으로 기초하여 조정된 레티클 포지션을 결정하는 단계를 포함한다.
[0238] 양상 59의 방법인 제60 양상에서, 사용자의 머리 포즈를 추적하도록 구성된 머리 포즈 센서로부터 디스플레이 시스템의 사용자의 머리 포즈 데이터를 획득하는 단계; 머리 포즈 데이터에 적어도 부분적으로 기초하여 사용자의 머리 포즈에 대응하는 머리 포즈 벡터를 식별하는 단계; 및 기준 머리 포즈에 대응하는 기준 머리 포즈 벡터를 식별하는 단계를 더 포함한다.
[0239] 양상 59 또는 양상 60의 방법인 제61 양상에서, 상기 각도 차이를 계산하는 단계는, 머리 포즈 벡터와 기준 머리 포즈 벡터 사이의 비교에 적어도 부분적으로 기초하고, 각도 차이는 기준 머리 포즈에 대해, 사용자의 상기 머리 포즈의 요, 피치 또는 롤에서의 차이 중 적어도 하나에 대응한다.
[0240] 제62 양상에서, 디스플레이 시스템의 디스플레이에 대응하는 시야 내에서 사용자의 포지션을 식별하는 가상 레티클의 포지션을 조정하는 방법은, 머리 포즈 벡터와 기준 머리 포즈 벡터 사이의 각도 차이를 계산하는 단계 ― 머리 포즈 벡터는 디스플레이 시스템의 사용자의 머리 포즈에 대응하고, 기준 머리 포즈 벡터는 기준 머리 포즈에 대응함 ―; 각도 차이가 최소 머리 피치 임계치를 충족한다고 결정하는 단계; 각도 차이가 최대 머리 피치 임계치를 충족하지 않는다고 결정하는 단계; 및 최대 머리 피치 임계치와 연관된 각도 조정에 적어도 부분적으로 기초하여 조정된 레티클 포지션을 결정하는 단계를 포함한다.
[0241] 양상 62의 방법인 제63 양상에서, 사용자의 머리 포즈를 추적하도록 구성된 머리 포즈 센서로부터 디스플레이 시스템의 사용자의 머리 포즈 데이터를 획득하는 단계; 머리 포즈 데이터에 적어도 부분적으로 기초하여 사용자의 머리 포즈에 대응하는 머리 포즈 벡터를 식별하는 단계; 및 기준 머리 포즈에 대응하는 기준 머리 포즈 벡터를 식별하는 단계를 더 포함한다.
[0242] 양상 62 또는 양상 63의 방법인 제64 양상에서, 상기 각도 차이를 계산하는 단계는, 머리 포즈 벡터와 기준 머리 포즈 벡터 사이의 비교에 적어도 부분적으로 기초하고, 각도 차이는 기준 머리 포즈에 대해, 사용자의 상기 머리 포즈의 요, 피치 또는 롤에서의 차이 중 적어도 하나에 대응한다.
[0243] 제65 양상에서, 디스플레이 시스템의 디스플레이에 대응하는 시야 내에서 사용자의 포지션을 식별하는 가상 레티클의 포지션을 조정하는 방법은, 머리 포즈 벡터와 기준 머리 포즈 벡터 사이의 각도 차이를 계산하는 단계 ― 머리 포즈 벡터는 디스플레이 시스템의 사용자의 머리 포즈에 대응하고, 기준 머리 포즈 벡터는 기준 머리 포즈에 대응함 ―; 각도 차이가 최소 머리 피치 임계치를 충족한다고 결정하는 단계; 각도 차이가 중립 머리 피치 임계치를 충족하지 않는다고 결정하는 단계; 및 용이성 함수에 적어도 부분적으로 기초하여 조정된 레티클 포지션을 결정하는 단계를 포함한다.
[0244] 양상 65의 방법인 제66 양상에서, 사용자의 머리 포즈를 추적하도록 구성된 머리 포즈 센서로부터 디스플레이 시스템의 사용자의 머리 포즈 데이터를 획득하는 단계; 머리 포즈 데이터에 적어도 부분적으로 기초하여 사용자의 머리 포즈에 대응하는 머리 포즈 벡터를 식별하는 단계; 및 기준 머리 포즈에 대응하는 기준 머리 포즈 벡터를 식별하는 단계를 더 포함한다.
[0245] 양상 65의 방법인 제67 양상에서, 상기 각도 차이를 계산하는 단계는, 머리 포즈 벡터와 기준 머리 포즈 벡터 사이의 비교에 적어도 부분적으로 기초하고, 각도 차이는 기준 머리 포즈에 대해, 사용자의 상기 머리 포즈의 요, 피치 또는 롤에서의 차이 중 적어도 하나에 대응한다.
[0246] 제68 양상에서, 디스플레이 시스템의 디스플레이에 대응하는 시야 내에서 사용자의 포지션을 식별하는 가상 레티클의 포지션을 조정하는 방법은, 머리 포즈 벡터와 기준 머리 포즈 벡터 사이의 각도 차이를 계산하는 단계 ― 머리 포즈 벡터는 디스플레이 시스템의 사용자의 머리 포즈에 대응하고, 기준 머리 포즈 벡터는 기준 머리 포즈에 대응함 ―; 각도 차이가 중립 머리 피치 임계치를 충족한다고 결정하는 단계; 각도 차이가 최대 머리 피치 임계치를 충족하지 않는다고 결정하는 단계; 및 용이성 함수에 적어도 부분적으로 기초하여 조정된 레티클 포지션을 결정하는 단계를 포함한다.
[0247] 양상 68의 방법인 제69 양상에서, 사용자의 머리 포즈를 추적하도록 구성된 머리 포즈 센서로부터 디스플레이 시스템의 사용자의 머리 포즈 데이터를 획득하는 단계; 머리 포즈 데이터에 적어도 부분적으로 기초하여 사용자의 머리 포즈에 대응하는 머리 포즈 벡터를 식별하는 단계; 및 기준 머리 포즈에 대응하는 기준 머리 포즈 벡터를 식별하는 단계를 더 포함한다.
[0248] 양상 68 또는 양상 69의 방법인 제70 양상에서, 상기 각도 차이를 계산하는 단계는, 머리 포즈 벡터와 기준 머리 포즈 벡터 사이의 비교에 적어도 부분적으로 기초하고, 각도 차이는 기준 머리 포즈에 대해, 사용자의 상기 머리 포즈의 요, 피치 또는 롤에서의 차이 중 적어도 하나에 대응한다. 선행하는 양상들 중 임의의 것에서 설명된 방법들 중 임의의 것은 하드웨어 프로세서, 예를 들어, 머리-장착 디스플레이 시스템과 연관된 하드웨어 프로세서의 제어 하에서 수행될 수 있다.
[0249] 제71 양상에서, 시스템은 시스템의 사용자의 머리 포즈 데이터를 측정하도록 구성되는 머리 포즈 센서; 사용자의 머리의 요, 피치, 또는 롤의 표시 중 적어도 하나에 대응하는 머리 포즈 데이터를 저장하도록 구성되는 비일시적 메모리; 사용자의 눈 앞에 위치되도록 구성되는 디스플레이 ― 디스플레이는 사용자의 눈을 향해 가상 레티클을 투사하도록 구성되고, 가상 레티클은 시야 내에서 사용자의 포지션을 식별하는 이동가능한 표시자를 포함함 ―; 머리 포즈 센서, 디스플레이 및 비일시적 메모리와 통신하는 하드웨어 프로세서를 포함하고, 하드웨어 프로세서는, 사용자의 머리 포즈 데이터를 획득하고; 머리 포즈 데이터에 적어도 부분적으로 기초하여 사용자의 머리 포즈에 대응하는 머리 포즈 벡터를 식별하고; 기준 머리 포즈에 대응하는 기준 머리 포즈 벡터를 식별하고; 사용자의 머리 포즈와 기준 머리 포즈 사이의 비교에 적어도 부분적으로 기초하여 머리 포즈 벡터와 기준 머리 포즈 벡터 사이의 각도 차이를 결정하고 ― 각도 차이는 기준 머리 포즈에 대해, 사용자의 머리 포즈의 요, 피치 또는 롤에서의 차이 중 적어도 하나에 대응함 ―; 결정된 각도 차이를 하나 이상의 머리 포즈 임계치들과 비교하고 ― 하나 이상의 머리 포즈 임계치들은 최대 머리 포즈 임계치 또는 최소 머리 포즈 임계치 중 적어도 하나를 포함함 ―; 각도 차이가 최소 머리 포즈 임계치를 충족하지 못한다는 결정에 대한 응답으로, 제1 조정 값에 적어도 부분적으로 기초하여 가상 레티클의 포지션에 대한 조정을 결정하고; 각도 차이가 최대 머리 포즈 임계치를 충족한다는 결정에 대한 응답으로, 제2 조정 값에 적어도 부분적으로 기초하여 가상 레티클의 포지션에 대한 조정을 결정하고; 각도 차이가 최소 머리 포즈 임계치를 충족하고 최대 머리 포즈 임계치를 충족하지 못한다는 결정에 대한 응답으로, 제3 조정 값에 적어도 부분적으로 기초하여 가상 레티클의 포지션에 대한 조정을 결정하고; 결정된 조정에 기초하여 가상 레티클의 포지션이 사용자의 시야의 디폴트 레티클 포지션으로부터 조정되게 하도록 프로그래밍된다.
추가적인 고려사항들
[0250] 본원에서 설명되고 그리고/또는 첨부 도면들에 묘사된 프로세스들, 방법들 및 알고리즘들 각각은 하나 이상의 물리적 컴퓨팅 시스템들, 하드웨어 컴퓨터 프로세서들, 주문형 회로 및/또는 특정 및 특별 컴퓨터 명령들을 실행하도록 구성된 전자 하드웨어에 의해 실행되는 코드 모듈들로 구현되고, 그리고 이 코드 모듈들에 의해 완전히 또는 부분적으로 자동화될 수 있다 예컨대, 컴퓨팅 시스템들은 특정 컴퓨터 명령들로 프로그래밍된 범용성 컴퓨터들(예컨대, 서버들) 또는 특수 목적 컴퓨터들, 특수 목적 회로 등을 포함할 수 있다. 코드 모듈은 실행가능 프로그램으로 컴파일링되고 링크되거나, 동적 링크 라이브러리에 설치되거나, 또는 해석형 프로그래밍 언어로 작성될 수 있다. 일부 구현들에서, 특정 동작들 및 방법들은 주어진 기능에 특정한 회로에 의해 수행될 수 있다.
[0251] 추가로, 본 개시의 기능성의 특정 구현들은 충분히 수학적으로, 계산상으로 또는 기술적으로 복잡하여, (적합한 전문화된 실행가능한 명령들을 활용하는) 주문형 하드웨어 또는 하나 이상의 물리적 컴퓨팅 디바이스들은, 예컨대 수반되는 계산들의 양(volume) 또는 복잡성으로 인해 또는 실질적으로 실시간으로 결과들을 제공하기 위해 그 기능성을 수행할 필요가 있을 수 있다. 예컨대, 비디오는 많은 프레임들(각각의 프레임은 수 백만개의 픽셀들을 가짐)을 포함할 수 있고, 그리고 상업적으로 합리적인 시간량 내에 원하는 이미지 프로세싱 임무 또는 애플리케이션을 제공하기 위해, 특별하게 프로그래밍된 컴퓨터 하드웨어가 비디오 데이터를 프로세싱할 필요가 있다.
[0252] 코드 모듈들 또는 임의의 타입의 데이터는, 임의의 타입의 비-일시적 컴퓨터-판독가능 매체, 이를테면 하드 드라이브들, 고체 상태 메모리, RAM(random access memory), ROM(read only memory), 광학 디스크, 휘발성 또는 비-휘발성 스토리지, 이들의 조합들 등을 포함하는 물리적 컴퓨터 스토리지 상에 저장될 수 있다. 방법들 및 모듈들(또는 데이터)은 또한 생성된 데이터 신호들로서(예컨대, 반송파 또는 다른 아날로그 또는 디지털 전파 신호의 일부로서) 무선-기반 및 유선/케이블-기반 매체들을 포함하는 다양한 컴퓨터-판독가능 송신 매체들 상에서 송신될 수 있고, 그리고 (예컨대, 단일 또는 멀티플렉싱된 아날로그 신호의 일부로서, 또는 다수의 이산 디지털 패킷들 또는 프레임들로서) 다양한 형태들을 취할 수 있다. 개시된 프로세스들 또는 프로세스 단계들의 결과들은 임의의 타입의 비-일시적, 유형의 컴퓨터 스토리지에 영구적으로 또는 다른 방식으로 저장될 수 있거나 또는 컴퓨터-판독가능 송신 매체를 통해 통신될 수 있다.
[0253] 본원에서 설명되고 그리고/또는 첨부 도면들에 묘사된 흐름도들에서 임의의 프로세스들, 블록들, 상태들, 단계들, 또는 기능성들은 (예컨대, 논리적 또는 산술적) 특정한 기능들 또는 프로세스의 단계들을 구현하기 위한 하나 이상의 실행가능한 명령들을 포함하는 코드 모듈들, 세그먼트들, 또는 코드 부분들을 잠재적으로 표현하는 것으로 이해되어야 한다. 다양한 프로세스들, 블록들, 상태들, 단계들 또는 기능성들은 본원에서 제공된 예시적인 예들에서 조합되거나, 재배열되거나, 이들에 추가되거나, 이들로부터 삭제되거나, 수정되거나 또는 다른 방식으로 변경될 수 있다. 일부 실시예들에서, 추가적인 또는 상이한 컴퓨팅 시스템들 또는 코드 모듈들은 본원에서 설명된 기능성들 중 일부 또는 모두를 수행할 수 있다. 본원에서 설명된 방법들 및 프로세스들은 또한 임의의 특정 시퀀스로 제한되지 않고, 그와 관련된 블록들, 단계들 또는 상태들은 적합한 다른 시퀀스들로, 예컨대 직렬로, 병렬로, 또는 일부 다른 방식으로 수행될 수 있다. 작업들 또는 이벤트들은 개시된 예시적인 실시예들에 추가되거나 이들로부터 제거될 수 있다. 게다가, 본원에서 설명된 구현들에서 다양한 시스템 컴포넌트들의 분리는 예시 목적들을 위한 것이고 모든 구현들에서 그런 분리를 요구하는 것으로 이해되지 않아야 한다. 설명된 프로그램 컴포넌트들, 방법들 및 시스템들이 일반적으로 단일 컴퓨터 제품에 함께 통합되거나 다수의 컴퓨터 제품들로 패키징될 수 있다는 것이 이해되어야 한다. 많은 구현 변동들이 가능하다.
[0254] 프로세스들, 방법들 및 시스템들은 네트워크(또는 분산형) 컴퓨팅 환경에서 구현될 수 있다. 네트워크 환경들은 전사적 컴퓨터 네트워크들, 인트라넷들, LAN(local area network)들, WAN(wide area network)들, PAN(personal area network)들, 클라우드 컴퓨팅 네트워크들, 클라우드-소스드(crowd-sourced) 컴퓨팅 네트워크들, 인터넷, 및 월드 와이드 웹(World Wide Web)을 포함한다. 네트워크는 유선 또는 무선 네트워크 또는 임의의 다른 타입의 통신 네트워크일 수 있다.
[0255] 본 개시의 시스템들, 및 방법들 각각은 몇몇 혁신적인 양상들을 가지며, 그 양상들 중 어떠한 단일 양상도 본 명세서에 개시된 바람직한 속성들을 단독으로 담당하거나 요구되지 않는다. 상기 설명된 다양한 특징들 및 프로세스들은 서로 독립적으로 사용될 수 있거나, 또는 다양한 방식들로 조합될 수 있다. 모든 가능한 조합들 및 서브-조합들은 본 개시내용의 범위 내에 속하는 것으로 의도된다. 본 개시에서 설명된 구현들에 대한 다양한 변형들은 당업자들에게 용이하게 명백할 수 있으며, 본 명세서에서 정의된 일반적인 원리들은 본 개시의 사상 또는 범위를 벗어나지 않으면서 다른 구현들에 적용될 수 있다. 따라서, 청구항들은 본 명세서에 설명된 구현들로 제한되도록 의도되는 것이 아니라, 본 개시, 본 명세서에 개시된 원리들 및 신규 특징들과 일치하는 가장 넓은 범위에 부합할 것이다.
[0256] 별개의 구현들의 상황에서 본 명세서에 설명되는 특정 특징들은 또한 단일 구현으로 결합되어 구현될 수 있다. 반대로, 단일 구현의 상황에서 설명되는 다양한 특징들은 또한 다수의 구현들에서 별개로 또는 임의의 적절한 하위 결합으로 구현될 수 있다. 아울러, 특징들이 특정한 결합들로 작용하는 것으로 앞서 설명되고 심지어 초기에 이와 같이 청구될지라도, 일부 경우들에서, 청구된 결합으로부터의 하나 이상의 특징들은 그 결합으로부터 제거될 수 있고, 청구된 결합은 하위 결합 또는 하위 결합의 변화에 관련될 수 있다. 단일 특징 또는 특징들의 그룹이 각각의 모든 실시예에 필요하거나 필수적인 것은 아니다.
[0257] 구체적으로 다르게 언급되지 않거나, 사용된 맥락 내에서 다르게 이해되지 않으면, 본원에서 사용된 조건어, 이를테면 특히, "할 수 있다("can", "could", "might", "may")" 및 "예컨대" 등은 일반적으로 특정 실시예들은 특정 특징들, 엘리먼트들 및/또는 단계들을 포함하지만, 다른 실시예들은 이들을 포함하지 않는다는 것을 전달하도록 의도된다. 따라서, 그런 조건어는 일반적으로, 특징들, 엘리먼트들 및/또는 단계들이 어쨌든 하나 이상의 실시예들을 위해 요구된다는 것, 또는 하나 이상의 실시예들이, 저자 입력 또는 프롬프팅을 사용하여 또는 이러한 것을 사용함 없이, 이들 특징들, 엘리먼트들 및/또는 단계들이 임의의 특정 실시예에 포함되는지 또는 이 임의의 특정 실시예에서 수행되어야 하는지를 판단하기 위한 로직을 반드시 포함하는 것을 암시하도록 의도되지 않는다. "포함하는(comprising)", "포함하는(including)", "갖는(having)" 등의 용어들은 동의어이고 오픈-엔디드(open-ended) 방식으로 포괄적으로 사용되고, 그리고 추가적인 엘리먼트들, 특징들, 작용들, 동작들 등을 배제하지 않는다. 또한, "또는"이라는 용어는 (그의 배타적인 의미가 아닌) 포괄적인 의미로 사용되어, 예컨대 리스트의 엘리먼트들을 연결하기 위해 사용될 때, "또는"이란 용어는 리스트 내 엘리먼트들 중 하나, 일부 또는 모두를 의미한다. 게다가, 본 출원 및 첨부된 청구항들에 사용된 단수 표현들은, 다르게 특정되지 않으면 "하나 이상" 또는 "적어도 하나"를 의미하는 것으로 해석될 것이다.
[0258] 본 명세서에서 사용되는 바와 같이, 아이템들의 리스트 "중 적어도 하나"로 지칭되는 구문은 단일 멤버들을 포함하여 그 아이템들의 임의의 조합을 지칭한다. 예로서, "A, B 또는 C 중 적어도 하나"는 "A, B, C; A 및 B; A 및 C; B 및 C; 및 A, B 및 C를 커버하도록 의도된다. 구체적으로 다르게 언급되지 않으면, "X, Y 및 Z 중 적어도 하나"라는 구절과 같은 접속어는, 일반적으로 아이템, 용어 등이 X, Y 또는 Z 중 적어도 하나일 수 있다는 것을 전달하기 위해 사용되는 문맥으로 이해된다. 따라서, 그런 접속어는 일반적으로, 특정 실시예들이 X 중 적어도 하나, Y 중 적어도 하나 및 Z 중 적어도 하나가 각각 존재할 것을 요구하는 것을 암시하도록 의도되지 않는다.
[0259] 유사하게, 동작들이 특정 순서로 도면들에 묘사될 수 있지만, 원하는 결과들을 달성하기 위해, 그런 동작들이 도시된 특정 순서 또는 순차적 순서로 수행될 필요가 없거나, 또는 모든 예시된 동작들이 수행될 필요가 없다는 것이 인식되어야 한다. 추가로, 도면들은 순서도 형태로 하나 이상의 예시적인 프로세스들을 개략적으로 묘사할 수 있다. 그러나, 묘사되지 않은 다른 동작들은 개략적으로 예시된 예시적인 방법들 및 프로세스들에 통합될 수 있다. 예를 들어, 하나 이상의 추가적인 동작들은 예시된 동작들 중 임의의 것 전에, 후에, 동시에, 또는 그 사이에서 수행될 수 있다. 추가적으로, 동작들은 다른 구현들에서 재배열되거나 재정렬될 수 있다. 특정한 환경들에서, 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 또한, 위에서 설명된 구현들에서의 다양한 시스템 컴포넌트들의 분리는 모든 구현들에서 그러한 분리를 요구하는 것으로서 이해되지는 않아야 하며, 설명된 프로그램 컴포넌트들 및 시스템들이 일반적으로, 단일 소프트웨어 제품에 함께 통합되거나 다수의 소프트웨어 제품들로 패키징될 수 있음을 이해해야 한다. 추가적으로, 다른 구현들은 다음의 청구항들의 범위 내에 존재한다. 몇몇 경우들에서, 청구항들에서 인용된 동작들은, 상이한 순서로 수행될 수 있으며, 여전히 바람직한 결과들을 달성할 수 있다.
Figure pct00003
Figure pct00004

Claims (36)

  1. 시스템으로서,
    시스템의 사용자의 머리 포즈 데이터를 획득하도록 구성되는 머리 포즈 센서;
    상기 머리 포즈 데이터를 저장하도록 구성되는 비일시적 메모리;
    사용자의 눈 앞에 위치되도록 구성되는 디스플레이 ― 상기 디스플레이는 상기 사용자의 눈을 향해 가상 레티클(reticle)을 투사하도록 구성됨 ―;
    상기 머리 포즈 센서, 상기 디스플레이 및 상기 비일시적 메모리와 통신하는 하드웨어 프로세서를 포함하고,
    상기 하드웨어 프로세서는,
    상기 사용자의 상기 머리 포즈 데이터를 획득하고;
    상기 머리 포즈 데이터에 적어도 부분적으로 기초하여 상기 사용자의 머리 포즈를 식별하고;
    상기 사용자의 상기 머리 포즈와 기준 머리 포즈 사이의 비교에 적어도 부분적으로 기초하여 상기 가상 레티클의 포지션에 대한 조정을 결정하고;
    상기 결정된 조정에 적어도 부분적으로 기초하여 상기 가상 레티클이 포지션에서 변화하게 하도록 프로그래밍되는, 시스템.
  2. 제1 항에 있어서,
    상기 가상 레티클은 상기 사용자의 시야 내에서 상기 사용자의 포지션을 식별하는 이동가능한 표시자를 포함하는, 시스템.
  3. 제1 항에 있어서,
    머리 포즈 데이터는 상기 사용자의 머리의 요(yaw), 피치(pitch) 또는 롤(roll)의 표시 중 적어도 하나에 대응하는, 시스템.
  4. 제3 항에 있어서,
    상기 요, 피치 또는 롤의 표시는 상기 기준 머리 포즈에 대한 것인, 시스템.
  5. 제4 항에 있어서,
    상기 기준 머리 포즈는 상기 사용자의 상기 머리의 레벨 머리 포즈에 대응하는, 시스템.
  6. 제5 항에 있어서,
    상기 레벨 머리 포즈는 상기 사용자의 머리의 관상면(coronal plane), 상기 사용자의 상기 머리의 시상면(sagittal plane), 및 상기 사용자의 상기 머리의 축면(axial plane) 각각이 서로 직교하는 머리 포즈를 포함하는, 시스템.
  7. 제1 항에 있어서,
    상기 기준 머리 포즈는 상기 사용자의 상기 머리의 자연 휴식 상태에 대응하는 머리 포즈를 포함하는, 시스템.
  8. 제7 항에 있어서,
    상기 사용자의 상기 머리의 상기 자연 휴식 상태는 상기 레벨 머리 포즈에 대해, -5 내지 5도의 요, -5 내지 5도의 롤, 및 -15 내지 -25도의 피치에 대응하는, 시스템.
  9. 제8 항에 있어서,
    상기 기준 머리 포즈는 상기 레벨 머리 포즈에 대해, 0도의 요, 0도의 롤 또는 -20도의 피치 중 적어도 하나에 대응하는, 시스템.
  10. 제1 항에 있어서,
    상기 하드웨어 프로세서는 상기 사용자의 상기 머리 포즈에 대응하는 머리 포즈 벡터를 식별하고 상기 기준 머리 포즈에 대응하는 기준 머리 포즈 벡터를 식별하도록 추가로 프로그래밍되는, 시스템.
  11. 제10 항에 있어서,
    상기 하드웨어 프로세서는 상기 사용자의 머리 포즈와 상기 기준 머리 포즈 사이의 비교에 적어도 부분적으로 기초하여 상기 머리 포즈 벡터와 상기 기준 머리 포즈 벡터 사이의 각도 차이를 결정하도록 추가로 프로그래밍되고, 상기 각도 차이는 상기 기준 머리 포즈에 대해, 상기 사용자의 상기 머리 포즈의 요, 피치 또는 롤에서의 차이 중 적어도 하나에 대응하는, 시스템.
  12. 제11 항에 있어서,
    상기 가상 레티클의 포지션에 대한 조정을 결정하기 위해, 상기 하드웨어 프로세서는 상기 결정된 각도 차이를 하나 이상의 머리 포즈 임계치들과 비교하도록 프로그래밍되는, 시스템.
  13. 제12 항에 있어서,
    상기 하나 이상의 머리 포즈 임계치들은 최대 머리 포즈 임계치 또는 최소 머리 포즈 임계치 중 적어도 하나를 포함하는, 시스템.
  14. 제13 항에 있어서,
    상기 최대 머리 포즈 임계치는 최대 머리 요 임계치, 최대 머리 롤 임계치 또는 최대 머리 피치 임계치 중 적어도 하나에 대응하는, 시스템.
  15. 제14 항에 있어서,
    상기 기준 머리 포즈에 대해, 상기 최대 머리 요 임계치는 50도이거나, 상기 최대 머리 롤 임계치는 20도이거나, 또는 최대 머리 피치 임계치는 5도인, 시스템.
  16. 제13 항에 있어서,
    상기 최소 머리 포즈 임계치는 최소 머리 요 임계치, 최소 머리 롤 임계치 또는 최소 머리 피치 임계치 중 적어도 하나에 대응하는, 시스템.
  17. 제16 항에 있어서,
    상기 기준 머리 포즈에 대해, 상기 최소 머리 요 임계치는 -50도이거나, 상기 최소 머리 롤 임계치는 -20도이거나, 또는 최소 머리 피치 임계치는 -45도인, 시스템.
  18. 제13 항에 있어서,
    상기 하드웨어 프로세서는,
    상기 각도 차이가 상기 최소 머리 포즈 임계치를 충족하지 못한다는 결정에 대한 응답으로, 제1 조정 값에 적어도 부분적으로 기초하여 상기 가상 레티클의 포지션에 대한 조정을 결정하도록 추가로 프로그래밍되는, 시스템.
  19. 제18 항에 있어서,
    상기 제1 조정 값은 약 -12도인, 시스템.
  20. 제13 항에 있어서,
    상기 하드웨어 프로세서는 상기 각도 차이가 상기 최대 머리 포즈 임계치를 충족한다는 결정에 대한 응답으로, 제2 조정 값에 적어도 부분적으로 기초하여 상기 가상 레티클의 포지션에 대한 조정을 결정하도록 추가로 프로그래밍되는, 시스템.
  21. 제20 항에 있어서,
    상기 제2 조정 값은 약 +5도인, 시스템.
  22. 제13 항에 있어서,
    상기 하드웨어 프로세서는,
    상기 각도 차이가 상기 최소 머리 포즈 임계치를 충족하고 상기 최대 머리 포즈 임계치를 충족하지 못한다는 결정에 대한 응답으로, 제3 조정 값에 적어도 부분적으로 기초하여 상기 가상 레티클의 포지션에 대한 조정을 결정하도록 추가로 프로그래밍되는, 시스템.
  23. 제22 항에 있어서,
    상기 제3 조정 값은 용이성 함수에 대응하는, 시스템.
  24. 제22 항에 있어서,
    상기 제3 조정 값은 약 0도인, 시스템.
  25. 제1 항에 있어서,
    상기 가상 레티클이 포지션에서 변화하게 하는 것은 상기 가상 레티클이 상기 사용자의 시야의 디폴트 레티클 포지션으로부터 포지션을 변화하게 하는 것을 포함하는, 시스템.
  26. 제25 항에 있어서,
    상기 디폴트 레티클 포지션은 상기 사용자의 시스템의 중심을 포함하는, 시스템.
  27. 제1 항에 있어서,
    상기 머리 포즈 센서는 IMU(inertial measurement unit), 가속도계, 자이로스코프 또는 자력계를 포함하는, 시스템.
  28. 제1 항에 있어서,
    상기 웨어러블 시스템은 머리 장착 웨어러블 시스템을 포함하는, 시스템.
  29. 디스플레이 시스템의 디스플레이에 대응하는 시야 내에서 사용자의 포지션을 식별하는 가상 레티클의 포지션을 조정하는 방법으로서,
    상기 사용자의 머리 포즈를 추적하도록 구성된 머리 포즈 센서로부터 디스플레이 시스템의 사용자의 머리 포즈 데이터를 획득하는 단계;
    상기 머리 포즈 데이터에 적어도 부분적으로 기초하여 상기 사용자의 상기 머리 포즈에 대응하는 머리 포즈 벡터를 식별하는 단계;
    상기 기준 머리 포즈에 대응하는 기준 머리 포즈 벡터를 식별하는 단계;
    상기 사용자의 머리 포즈와 상기 기준 머리 포즈 사이의 비교에 적어도 부분적으로 기초하여 상기 머리 포즈 벡터와 상기 기준 머리 포즈 벡터 사이의 각도 차이를 결정하는 단계 ― 상기 각도 차이는 상기 기준 머리 포즈에 대해, 상기 사용자의 상기 머리 포즈의 요, 피치 또는 롤에서의 차이 중 적어도 하나에 대응함 ―;
    상기 결정된 각도 차이를 하나 이상의 머리 포즈 임계치들과 비교하는 단계 ― 상기 하나 이상의 머리 포즈 임계치들은 최대 머리 포즈 임계치 또는 최소 머리 포즈 임계치 중 적어도 하나를 포함함 ―;
    상기 각도 차이가 상기 최소 머리 포즈 임계치를 충족하지 못한다는 결정에 대한 응답으로, 제1 조정 값에 적어도 부분적으로 기초하여 가상 레티클의 포지션에 대한 조정을 결정하는 단계 ― 상기 가상 레티클의 포지션은 상기 사용자의 시야 내에서 상기 사용자의 포지션을 식별하는 이동가능한 표시자의 포지션에 대응함 ―;
    상기 각도 차이가 상기 최대 머리 포즈 임계치를 충족한다는 결정에 대한 응답으로, 제2 조정 값에 적어도 부분적으로 기초하여 상기 가상 레티클의 포지션에 대한 조정을 결정하는 단계;
    상기 각도 차이가 상기 최소 머리 포즈 임계치를 충족하고 상기 최대 머리 포즈 임계치를 충족하지 못한다는 결정에 대한 응답으로, 제3 조정 값에 적어도 부분적으로 기초하여 상기 가상 레티클의 포지션에 대한 조정을 결정하는 단계; 및
    상기 결정된 조정에 기초하여 상기 가상 레티클의 포지션이 상기 사용자의 시야의 디폴트 레티클 포지션으로부터 조정되게 하는 단계를 포함하는, 방법.
  30. 디스플레이 시스템의 디스플레이에 대응하는 시야 내에서 사용자의 포지션을 식별하는 가상 레티클의 포지션을 조정하는 방법으로서,
    디스플레이 시스템의 사용자의 머리 포즈 데이터를 획득하는 단계;
    상기 머리 포즈 데이터에 적어도 부분적으로 기초하여 머리 포즈를 식별하는 단계;
    기준 머리 포즈를 식별하는 단계;
    상기 머리 포즈와 상기 기준 머리 포즈 사이의 비교에 적어도 부분적으로 기초하여, 머리 장착 디스플레이 상에 투사된 가상 레티클의 포지션에 대한 조정을 결정하는 단계를 포함하는, 방법.
  31. 디스플레이 시스템의 디스플레이에 대한 사용자의 시야 내에서 상기 사용자의 포지션을 식별하는 이동가능한 표시자의 포지션을 조정하는 방법으로서,
    최대 머리 피치 임계치, 최소 머리 피치 임계치 또는 중립 머리 피치 임계치 중 적어도 하나를 식별하는 단계;
    상기 사용자의 머리 포즈에 대응하는 머리 포즈 벡터를 식별하는 단계;
    기준 머리 포즈 벡터를 식별하는 단계;
    상기 머리 포즈 벡터와 상기 기준 머리 포즈 벡터 사이의 각도 차이를 계산하는 단계;
    상기 각도 차이, 및 상기 최대 머리 피치 임계치, 상기 최소 머리 피치 임계치 또는 상기 중립 머리 피치 임계치 중 적어도 하나에 적어도 부분적으로 기초하여 레티클 조정을 계산하는 단계; 및
    상기 계산된 레티클 조정에 적어도 부분적으로 기초하여, 조정된 레티클 포지션을 결정하는 단계를 포함하는, 방법.
  32. 디스플레이 시스템의 디스플레이에 대응하는 시야 내에서 사용자의 포지션을 식별하는 가상 레티클의 포지션을 조정하는 방법으로서,
    머리 포즈 벡터와 기준 머리 포즈 벡터 사이의 각도 차이를 계산하는 단계 ― 상기 머리 포즈 벡터는 디스플레이 시스템의 사용자의 머리 포즈에 대응하고, 상기 기준 머리 포즈 벡터는 기준 머리 포즈에 대응함 ―;
    상기 각도 차이가 최소 머리 피치 임계치를 충족하지 않는다고 결정하는 단계; 및
    상기 최소 머리 피치 임계치와 연관된 각도 조정에 적어도 부분적으로 기초하여 조정된 레티클 포지션을 결정하는 단계를 포함하는, 방법.
  33. 디스플레이 시스템의 디스플레이에 대응하는 시야 내에서 사용자의 포지션을 식별하는 가상 레티클의 포지션을 조정하는 방법으로서,
    머리 포즈 벡터와 기준 머리 포즈 벡터 사이의 각도 차이를 계산하는 단계 ― 상기 머리 포즈 벡터는 디스플레이 시스템의 사용자의 머리 포즈에 대응하고, 상기 기준 머리 포즈 벡터는 기준 머리 포즈에 대응함 ―;
    상기 각도 차이가 최소 머리 피치 임계치를 충족한다고 결정하는 단계;
    상기 각도 차이가 최대 머리 피치 임계치를 충족하지 않는다고 결정하는 단계; 및
    상기 최대 머리 피치 임계치와 연관된 각도 조정에 적어도 부분적으로 기초하여 조정된 레티클 포지션을 결정하는 단계를 포함하는, 방법.
  34. 디스플레이 시스템의 디스플레이에 대응하는 시야 내에서 사용자의 포지션을 식별하는 가상 레티클의 포지션을 조정하는 방법으로서,
    머리 포즈 벡터와 기준 머리 포즈 벡터 사이의 각도 차이를 계산하는 단계 ― 상기 머리 포즈 벡터는 디스플레이 시스템의 사용자의 머리 포즈에 대응하고, 상기 기준 머리 포즈 벡터는 기준 머리 포즈에 대응함 ―;
    상기 각도 차이가 최소 머리 피치 임계치를 충족한다고 결정하는 단계;
    상기 각도 차이가 중립 머리 피치 임계치를 충족하지 않는다고 결정하는 단계; 및
    용이성 함수에 적어도 부분적으로 기초하여 조정된 레티클 포지션을 결정하는 단계를 포함하는, 방법.
  35. 디스플레이 시스템의 디스플레이에 대응하는 시야 내에서 사용자의 포지션을 식별하는 가상 레티클의 포지션을 조정하는 방법으로서,
    머리 포즈 벡터와 기준 머리 포즈 벡터 사이의 각도 차이를 계산하는 단계 ― 상기 머리 포즈 벡터는 디스플레이 시스템의 사용자의 머리 포즈에 대응하고, 상기 기준 머리 포즈 벡터는 기준 머리 포즈에 대응함 ―;
    상기 각도 차이가 중립 머리 피치 임계치를 충족한다고 결정하는 단계;
    상기 각도 차이가 최대 머리 피치 임계치를 충족하지 않는다고 결정하는 단계; 및
    용이성 함수에 적어도 부분적으로 기초하여 조정된 레티클 포지션을 결정하는 단계를 포함하는, 방법.
  36. 시스템으로서,
    시스템의 사용자의 머리 포즈 데이터를 측정하도록 구성되는 머리 포즈 센서;
    상기 사용자의 머리의 요, 피치, 또는 롤의 표시 중 적어도 하나에 대응하는 머리 포즈 데이터를 저장하도록 구성되는 비일시적 메모리;
    상기 사용자의 눈 앞에 위치되도록 구성되는 디스플레이 ― 상기 디스플레이는 상기 사용자의 눈을 향해 가상 레티클을 투사하도록 구성되고, 상기 가상 레티클은 시야 내에서 상기 사용자의 포지션을 식별하는 이동가능한 표시자를 포함함 ―;
    상기 머리 포즈 센서, 상기 디스플레이 및 상기 비일시적 메모리와 통신하는 하드웨어 프로세서를 포함하고,
    상기 하드웨어 프로세서는,
    상기 사용자의 상기 머리 포즈 데이터를 획득하고;
    상기 머리 포즈 데이터에 적어도 부분적으로 기초하여 상기 사용자의 머리 포즈에 대응하는 머리 포즈 벡터를 식별하고;
    상기 기준 머리 포즈에 대응하는 기준 머리 포즈 벡터를 식별하고;
    상기 사용자의 머리 포즈와 상기 기준 머리 포즈 사이의 비교에 적어도 부분적으로 기초하여 상기 머리 포즈 벡터와 상기 기준 머리 포즈 벡터 사이의 각도 차이를 결정하고 ― 상기 각도 차이는 상기 기준 머리 포즈에 대해, 상기 사용자의 상기 머리 포즈의 요, 피치 또는 롤에서의 차이 중 적어도 하나에 대응함 ―;
    상기 결정된 각도 차이를 하나 이상의 머리 포즈 임계치들과 비교하고 ― 상기 하나 이상의 머리 포즈 임계치들은 최대 머리 포즈 임계치 또는 최소 머리 포즈 임계치 중 적어도 하나를 포함함 ―;
    상기 각도 차이가 상기 최소 머리 포즈 임계치를 충족하지 못한다는 결정에 대한 응답으로, 제1 조정 값에 적어도 부분적으로 기초하여 가상 레티클의 포지션에 대한 조정을 결정하고;
    상기 각도 차이가 상기 최대 머리 포즈 임계치를 충족한다는 결정에 대한 응답으로, 제2 조정 값에 적어도 부분적으로 기초하여 상기 가상 레티클의 포지션에 대한 조정을 결정하고;
    상기 각도 차이가 상기 최소 머리 포즈 임계치를 충족하고 상기 최대 머리 포즈 임계치를 충족하지 못한다는 결정에 대한 응답으로, 제3 조정 값에 적어도 부분적으로 기초하여 상기 가상 레티클의 포지션에 대한 조정을 결정하고;
    상기 결정된 조정에 기초하여 상기 가상 레티클의 포지션이 상기 사용자의 시야의 디폴트 레티클 포지션으로부터 조정되게 하도록 프로그래밍되는, 시스템.
KR1020207013981A 2017-10-27 2018-10-25 증강 현실 시스템들에 대한 가상 레티클 Active KR102668725B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020247016469A KR20240090488A (ko) 2017-10-27 2018-10-25 증강 현실 시스템들에 대한 가상 레티클

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201762578094P 2017-10-27 2017-10-27
US62/578,094 2017-10-27
PCT/US2018/057593 WO2019084325A1 (en) 2017-10-27 2018-10-25 VIRTUAL RETICLE FOR INCREASED REALITY SYSTEMS

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020247016469A Division KR20240090488A (ko) 2017-10-27 2018-10-25 증강 현실 시스템들에 대한 가상 레티클

Publications (2)

Publication Number Publication Date
KR20200079263A true KR20200079263A (ko) 2020-07-02
KR102668725B1 KR102668725B1 (ko) 2024-05-29

Family

ID=66244898

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020247016469A Pending KR20240090488A (ko) 2017-10-27 2018-10-25 증강 현실 시스템들에 대한 가상 레티클
KR1020207013981A Active KR102668725B1 (ko) 2017-10-27 2018-10-25 증강 현실 시스템들에 대한 가상 레티클

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020247016469A Pending KR20240090488A (ko) 2017-10-27 2018-10-25 증강 현실 시스템들에 대한 가상 레티클

Country Status (8)

Country Link
US (4) US10839576B2 (ko)
EP (1) EP3701497B1 (ko)
JP (3) JP7116166B2 (ko)
KR (2) KR20240090488A (ko)
CN (1) CN111480181B (ko)
AU (1) AU2018355441B2 (ko)
IL (2) IL274038B2 (ko)
WO (1) WO2019084325A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2025159543A1 (ko) * 2024-01-26 2025-07-31 삼성전자 주식회사 컨텐츠를 표시하는 웨어러블 장치, 방법 및 저장 매체
WO2025225956A1 (ko) * 2024-04-22 2025-10-30 삼성전자 주식회사 헤드 마운트 디스플레이 장치 및 그의 동작 방법

Families Citing this family (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11205075B2 (en) * 2018-01-10 2021-12-21 Quantum Interface, Llc Interfaces, systems and apparatuses for constructing 3D AR environment overlays, and methods for making and using same
CN108604116A (zh) * 2015-09-24 2018-09-28 托比股份公司 能够进行眼睛追踪的可穿戴设备
ES2992065T3 (es) 2016-08-16 2024-12-09 Insight Medical Systems Inc Sistemas de aumento sensorial en procedimientos médicos
FR3057950B1 (fr) * 2016-10-24 2018-10-19 Nexter Systems Procede d'aide a la localisation d'un objectif et dispositif d'observation permettant la mise en oeuvre de ce procede
US10664993B1 (en) 2017-03-13 2020-05-26 Occipital, Inc. System for determining a pose of an object
US10839576B2 (en) * 2017-10-27 2020-11-17 Magic Leap, Inc. Virtual reticle for augmented reality systems
JP7118650B2 (ja) * 2018-01-18 2022-08-16 キヤノン株式会社 表示装置
JP6518028B1 (ja) * 2018-08-01 2019-05-22 楽天株式会社 表示装置、表示方法、プログラム、ならびに、非一時的なコンピュータ読取可能な情報記録媒体
EP3846161A4 (en) * 2018-08-29 2021-10-20 Sony Group Corporation INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD AND PROGRAM
CN109582134B (zh) * 2018-11-09 2021-07-23 北京小米移动软件有限公司 信息显示的方法、装置及显示设备
US10929982B2 (en) * 2019-01-25 2021-02-23 Google Llc Face pose correction based on depth information
EP3901919B1 (en) * 2019-04-17 2025-04-16 Rakuten Group, Inc. Display control device, display control method, program, and non-transitory computer-readable information recording medium
GB201906420D0 (en) * 2019-05-07 2019-06-19 Farley Adam Virtual augmented and mixed reality systems with physical feedback
CN112292726B (zh) 2019-05-22 2022-02-22 谷歌有限责任公司 用于沉浸式环境中对象分组和操纵的方法、系统和介质
US11470017B2 (en) * 2019-07-30 2022-10-11 At&T Intellectual Property I, L.P. Immersive reality component management via a reduced competition core network component
CN112416115B (zh) * 2019-08-23 2023-12-15 亮风台(上海)信息科技有限公司 一种用于控件交互界面中进行人机交互的方法与设备
US11576570B2 (en) * 2019-08-30 2023-02-14 Qualcomm Incorporated Determining eye strain indicator based on multiple devices
CN110717968B (zh) * 2019-10-11 2023-04-07 长春理工大学 三维场景的计算资源请求驱动自适应云渲染方法
US11308698B2 (en) * 2019-12-05 2022-04-19 Facebook Technologies, Llc. Using deep learning to determine gaze
US11816757B1 (en) * 2019-12-11 2023-11-14 Meta Platforms Technologies, Llc Device-side capture of data representative of an artificial reality environment
US11687778B2 (en) 2020-01-06 2023-06-27 The Research Foundation For The State University Of New York Fakecatcher: detection of synthetic portrait videos using biological signals
WO2021178247A1 (en) * 2020-03-02 2021-09-10 Qsinx Management Llc Systems and methods for processing scanned objects
WO2022056036A2 (en) 2020-09-11 2022-03-17 Apple Inc. Methods for manipulating objects in an environment
US12236546B1 (en) 2020-09-24 2025-02-25 Apple Inc. Object manipulations with a pointing device
AU2021349381B2 (en) 2020-09-25 2024-02-22 Apple Inc. Methods for interacting with virtual controls and/or an affordance for moving virtual objects in virtual environments
US11442268B2 (en) 2020-09-29 2022-09-13 Snap Inc. Augmented reality gaming using virtual eyewear beams
EP4204894A4 (en) * 2020-10-02 2024-10-23 Vuzix Corporation RETICAL ALIGNMENT
CN112546629B (zh) * 2020-12-10 2025-04-08 厦门盈趣科技股份有限公司 游戏交互方法、系统、移动终端及存储介质
US11995230B2 (en) 2021-02-11 2024-05-28 Apple Inc. Methods for presenting and sharing content in an environment
US12333083B2 (en) 2021-03-22 2025-06-17 Apple Inc. Methods for manipulating objects in an environment
FR3122327B1 (fr) * 2021-04-29 2025-01-17 Clubdes3 Zones de vision croisées
US11899204B2 (en) 2021-06-09 2024-02-13 Snap Inc. Soft follow and pitch angle effects for VR/AR interface
US12327425B2 (en) * 2021-06-24 2025-06-10 Nielsen Consumer Llc Methods, systems, articles of manufacture, and apparatus for decoding purchase data using an image
US12141423B2 (en) 2021-06-29 2024-11-12 Apple Inc. Techniques for manipulating computer graphical objects
US12141914B2 (en) 2021-06-29 2024-11-12 Apple Inc. Techniques for manipulating computer graphical light sources
US12242706B2 (en) 2021-07-28 2025-03-04 Apple Inc. Devices, methods and graphical user interfaces for three-dimensional preview of objects
US12288285B2 (en) 2021-07-28 2025-04-29 Apple Inc. System and method for interactive three-dimensional preview
WO2023009864A2 (en) 2021-07-30 2023-02-02 Vuzix Corporation Interactive reticle
US11691072B2 (en) * 2021-08-24 2023-07-04 Sony Interactive Entertainment LLC Aiming display automation for head mounted display applications
US12456271B1 (en) 2021-11-19 2025-10-28 Apple Inc. System and method of three-dimensional object cleanup and text annotation
US12288405B2 (en) 2021-12-22 2025-04-29 Nielsen Consumer Llc Methods, systems, articles of manufacture and apparatus to extract region of interest text from receipts
CN119556830A (zh) 2022-01-12 2025-03-04 苹果公司 用于在环境中显示、选择以及移动对象和容器的方法
JP7843357B2 (ja) 2022-01-19 2026-04-09 アップル インコーポレイテッド 環境内にオブジェクトを表示及び再位置決めするための方法
JP2023111647A (ja) * 2022-01-31 2023-08-10 富士フイルムビジネスイノベーション株式会社 情報処理装置及び情報処理プログラム
US12541280B2 (en) 2022-02-28 2026-02-03 Apple Inc. System and method of three-dimensional placement and refinement in multi-user communication sessions
CN114661152B (zh) * 2022-03-16 2022-12-20 北京伊园未来科技有限公司 一种降低视觉疲劳的ar显示控制系统及方法
EP4511722A1 (en) 2022-04-20 2025-02-26 Apple Inc. Obstructed objects in a three-dimensional environment
US12481352B2 (en) * 2022-04-20 2025-11-25 Apple Inc. Method and device for improving comfortability of virtual content
CN114911384B (zh) * 2022-05-07 2023-05-12 青岛海信智慧生活科技股份有限公司 镜子显示器及其远程控制方法
US12283020B2 (en) 2022-05-17 2025-04-22 Apple Inc. Systems, methods, and user interfaces for generating a three-dimensional virtual representation of an object
CN117111729A (zh) * 2022-05-23 2023-11-24 苹果公司 用于分层姿势感知的方法和设备
US12548360B2 (en) 2022-09-15 2026-02-10 Nielsen Consumer Llc Methods, systems, articles of manufacture, and apparatus to tag segments in a document
US12112011B2 (en) 2022-09-16 2024-10-08 Apple Inc. System and method of application-based three-dimensional refinement in multi-user communication sessions
US12513280B1 (en) * 2022-09-22 2025-12-30 Apple Inc. Perceptual measure of end-to-end splay
US20240104699A1 (en) * 2022-09-22 2024-03-28 Microsoft Technology Licensing, Llc Generating A Gallery View From An Area View
EP4591144A1 (en) 2022-09-23 2025-07-30 Apple Inc. Methods for manipulating a virtual object
US12524956B2 (en) 2022-09-24 2026-01-13 Apple Inc. Methods for time of day adjustments for environments and environment presentation during communication sessions
KR20250075620A (ko) 2022-09-24 2025-05-28 애플 인크. 3차원 환경을 제어하고 그와 상호작용하기 위한 방법들
US12437494B2 (en) 2022-09-24 2025-10-07 Apple Inc. Systems and methods of creating and editing virtual objects using voxels
CN120266083A (zh) 2022-09-24 2025-07-04 苹果公司 用于基于注意力与用户界面交互的方法
CN115527191A (zh) * 2022-09-28 2022-12-27 黑芝麻智能科技(深圳)有限公司 数据处理方法及系统、用户状态确定方法及系统
JP2024084885A (ja) * 2022-12-14 2024-06-26 フォルシアクラリオン・エレクトロニクス株式会社 表示制御装置及び表示制御方法
US12361661B1 (en) 2022-12-21 2025-07-15 Meta Platforms Technologies, Llc Artificial reality (XR) location-based displays and interactions
CN121165940A (zh) 2023-01-30 2025-12-19 苹果公司 用于响应于注视和/或手势输入来显示多组控件的设备、方法和图形用户界面
WO2024167532A1 (en) * 2023-02-10 2024-08-15 Google Llc Calibrating gaze tracking based on head movement
CN121187445A (zh) 2023-06-04 2025-12-23 苹果公司 用于管理重叠窗口和应用视觉效果的方法
US20250078433A1 (en) * 2023-09-05 2025-03-06 Apple Inc. Dynamic virtual objects
CN118411709A (zh) * 2024-05-11 2024-07-30 中汽创智科技有限公司 多任务预测模型的训练、预测方法以及存储介质
US20250378645A1 (en) 2024-06-09 2025-12-11 Apple Inc. Methods of interacting with content in a virtual environment

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140191964A1 (en) * 2013-01-04 2014-07-10 Kopin Corporation Headset Computer with Head Tracking Input Used For Inertial Control
US20150220142A1 (en) * 2014-01-31 2015-08-06 Kopin Corporation Head-Tracking Based Technique for Moving On-Screen Objects on Head Mounted Displays (HMD)
US20160034032A1 (en) * 2014-07-31 2016-02-04 Samsung Electronics Co., Ltd. Wearable glasses and method of displaying image via the wearable glasses
US20160225192A1 (en) * 2015-02-03 2016-08-04 Thales USA, Inc. Surgeon head-mounted display apparatuses
US20170053450A1 (en) * 2015-08-18 2017-02-23 Magic Leap, Inc. Virtual and augmented reality systems and methods
WO2017055910A1 (en) * 2015-09-30 2017-04-06 Sony Interactive Entertainment Inc. Methods for optimizing positioning of content on a screen of a head mounted display
JP2017097306A (ja) * 2015-11-27 2017-06-01 株式会社リコー ヘッドマウントディスプレイシステム及びヘッドマウントディスプレイシステムにおける表示制御方法
US20190096136A1 (en) * 2017-01-10 2019-03-28 Meta Company Systems and methods to provide an interactive environment over an expanded field-of-view

Family Cites Families (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6222525B1 (en) 1992-03-05 2001-04-24 Brad A. Armstrong Image controllers with sheet connected sensors
JPH08202281A (ja) * 1995-01-30 1996-08-09 Olympus Optical Co Ltd 頭部装着型映像表示装置システム
US5670988A (en) 1995-09-05 1997-09-23 Interlink Electronics, Inc. Trigger operated electronic device
CA2290765C (en) * 1998-02-02 2000-07-25 Steve Mann Covert camera viewfinder or display having appearance of ordinary eyeglasses
JP2002525769A (ja) 1998-09-22 2002-08-13 ヴェガ ヴィスタ インコーポレイテッド 携帯型データディスプレイの直接的コントロール方法
JP2001337645A (ja) 2000-05-26 2001-12-07 Fujitsu Ltd 表示システム及び記憶媒体
USD514570S1 (en) 2004-06-24 2006-02-07 Microsoft Corporation Region of a fingerprint scanning device with an illuminated ring
US20070081123A1 (en) 2005-10-07 2007-04-12 Lewis Scott W Digital eyewear
US8696113B2 (en) 2005-10-07 2014-04-15 Percept Technologies Inc. Enhanced optical and perceptual digital eyewear
US11428937B2 (en) 2005-10-07 2022-08-30 Percept Technologies Enhanced optical and perceptual digital eyewear
US8793620B2 (en) 2011-04-21 2014-07-29 Sony Computer Entertainment Inc. Gaze-assisted computer interface
US9304319B2 (en) 2010-11-18 2016-04-05 Microsoft Technology Licensing, Llc Automatic focus improvement for augmented reality displays
US10156722B2 (en) 2010-12-24 2018-12-18 Magic Leap, Inc. Methods and systems for displaying stereoscopy with a freeform optical system with addressable focus for virtual and augmented reality
NZ706893A (en) 2010-12-24 2017-02-24 Magic Leap Inc An ergonomic head mounted display device and optical system
CA3035118C (en) 2011-05-06 2022-01-04 Magic Leap, Inc. Massive simultaneous remote digital presence world
EP2760363A4 (en) 2011-09-29 2015-06-24 Magic Leap Inc TACTILE GLOVE FOR HUMAN COMPUTER INTERACTION
RU2017115669A (ru) 2011-10-28 2019-01-28 Мэджик Лип, Инк. Система и способ для дополненной и виртуальной реальности
US8970452B2 (en) * 2011-11-02 2015-03-03 Google Inc. Imaging method
KR101919010B1 (ko) 2012-03-08 2018-11-16 삼성전자주식회사 안구 동작에 기초한 디바이스의 제어 방법 및 이를 위한 디바이스
BR112014024941A2 (pt) 2012-04-05 2017-09-19 Magic Leap Inc dispositivo de imagem de campo de visão amplo com capacidade de focalização ativa
US9671566B2 (en) 2012-06-11 2017-06-06 Magic Leap, Inc. Planar waveguide apparatus with diffraction element(s) and system employing same
JP2015534108A (ja) 2012-09-11 2015-11-26 マジック リープ, インコーポレイテッド 人間工学的な頭部搭載型ディスプレイデバイスおよび光学システム
JP6049452B2 (ja) * 2012-12-29 2016-12-21 キヤノン株式会社 情報表示装置、情報表示システム、それらの制御方法、及びプログラム
IL301489B2 (en) 2013-01-15 2024-08-01 Magic Leap Inc A system for scanning electromagnetic imaging radiation
FR3003049B1 (fr) * 2013-03-08 2015-04-10 Thales Sa Systeme de visualisation de casque comportant des moyens visuels d'interaction avec la symbologie affichee
KR20230044041A (ko) 2013-03-11 2023-03-31 매직 립, 인코포레이티드 증강 및 가상 현실을 위한 시스템 및 방법
CN105229719B (zh) 2013-03-15 2018-04-27 奇跃公司 显示系统和方法
US9874749B2 (en) 2013-11-27 2018-01-23 Magic Leap, Inc. Virtual and augmented reality systems and methods
US10262462B2 (en) 2014-04-18 2019-04-16 Magic Leap, Inc. Systems and methods for augmented and virtual reality
CN103336580B (zh) 2013-07-16 2016-08-24 卫荣杰 一种头戴装置的光标控制方法
EP3058418B1 (en) 2013-10-16 2023-10-04 Magic Leap, Inc. Virtual or augmented reality headsets having adjustable interpupillary distance
KR102651578B1 (ko) 2013-11-27 2024-03-25 매직 립, 인코포레이티드 가상 및 증강 현실 시스템들 및 방법들
US9857591B2 (en) 2014-05-30 2018-01-02 Magic Leap, Inc. Methods and system for creating focal planes in virtual and augmented reality
US10466858B2 (en) * 2013-12-01 2019-11-05 Upskill, Inc. Systems and methods for interacting with a virtual menu
KR102177133B1 (ko) 2014-01-31 2020-11-10 매직 립, 인코포레이티드 멀티-포컬 디스플레이 시스템 및 방법
NZ722903A (en) 2014-01-31 2020-05-29 Magic Leap Inc Multi-focal display system and method
US10203762B2 (en) 2014-03-11 2019-02-12 Magic Leap, Inc. Methods and systems for creating virtual and augmented reality
EP3140779A4 (en) 2014-05-09 2017-11-29 Google LLC Systems and methods for using eye signals with secure mobile communications
USD759657S1 (en) 2014-05-19 2016-06-21 Microsoft Corporation Connector with illumination region
NZ764905A (en) 2014-05-30 2022-05-27 Magic Leap Inc Methods and systems for generating virtual content display with a virtual or augmented reality apparatus
USD752529S1 (en) 2014-06-09 2016-03-29 Comcast Cable Communications, Llc Electronic housing with illuminated region
US9767373B2 (en) * 2014-09-05 2017-09-19 Ford Global Technologies, Llc Head-mounted display head pose and activity estimation
JP6130478B1 (ja) * 2015-12-15 2017-05-17 株式会社コロプラ プログラム及びコンピュータ
USD805734S1 (en) 2016-03-04 2017-12-26 Nike, Inc. Shirt
USD794288S1 (en) 2016-03-11 2017-08-15 Nike, Inc. Shoe with illuminable sole light sequence
US10839576B2 (en) * 2017-10-27 2020-11-17 Magic Leap, Inc. Virtual reticle for augmented reality systems

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140191964A1 (en) * 2013-01-04 2014-07-10 Kopin Corporation Headset Computer with Head Tracking Input Used For Inertial Control
US9134793B2 (en) * 2013-01-04 2015-09-15 Kopin Corporation Headset computer with head tracking input used for inertial control
US20150220142A1 (en) * 2014-01-31 2015-08-06 Kopin Corporation Head-Tracking Based Technique for Moving On-Screen Objects on Head Mounted Displays (HMD)
US20160034032A1 (en) * 2014-07-31 2016-02-04 Samsung Electronics Co., Ltd. Wearable glasses and method of displaying image via the wearable glasses
US20160225192A1 (en) * 2015-02-03 2016-08-04 Thales USA, Inc. Surgeon head-mounted display apparatuses
US20200184729A1 (en) * 2015-02-03 2020-06-11 Globus Medical, Inc. Surgeon head-mounted display apparatuses
US20170053450A1 (en) * 2015-08-18 2017-02-23 Magic Leap, Inc. Virtual and augmented reality systems and methods
WO2017055910A1 (en) * 2015-09-30 2017-04-06 Sony Interactive Entertainment Inc. Methods for optimizing positioning of content on a screen of a head mounted display
JP2017097306A (ja) * 2015-11-27 2017-06-01 株式会社リコー ヘッドマウントディスプレイシステム及びヘッドマウントディスプレイシステムにおける表示制御方法
US20190096136A1 (en) * 2017-01-10 2019-03-28 Meta Company Systems and methods to provide an interactive environment over an expanded field-of-view

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2025159543A1 (ko) * 2024-01-26 2025-07-31 삼성전자 주식회사 컨텐츠를 표시하는 웨어러블 장치, 방법 및 저장 매체
WO2025225956A1 (ko) * 2024-04-22 2025-10-30 삼성전자 주식회사 헤드 마운트 디스플레이 장치 및 그의 동작 방법

Also Published As

Publication number Publication date
US10839576B2 (en) 2020-11-17
US20210090311A1 (en) 2021-03-25
US20240386643A1 (en) 2024-11-21
CN111480181A (zh) 2020-07-31
EP3701497B1 (en) 2026-03-25
KR20240090488A (ko) 2024-06-21
IL274038B2 (en) 2024-07-01
AU2018355441A1 (en) 2020-05-14
US12100080B2 (en) 2024-09-24
JP7480218B2 (ja) 2024-05-09
US20190130622A1 (en) 2019-05-02
IL310847A (en) 2024-04-01
WO2019084325A1 (en) 2019-05-02
CN111480181B (zh) 2024-12-24
US11367230B2 (en) 2022-06-21
IL274038A (en) 2020-06-30
JP7116166B2 (ja) 2022-08-09
US20220309722A1 (en) 2022-09-29
IL274038B1 (en) 2024-03-01
JP2022101656A (ja) 2022-07-06
AU2018355441B2 (en) 2023-11-09
CA3078895A1 (en) 2019-05-02
JP2024097815A (ja) 2024-07-19
KR102668725B1 (ko) 2024-05-29
EP3701497A1 (en) 2020-09-02
JP2021501397A (ja) 2021-01-14
EP3701497A4 (en) 2021-07-28
JP7656753B2 (ja) 2025-04-03

Similar Documents

Publication Publication Date Title
JP7656753B2 (ja) 拡張現実システムのための仮想レチクル
JP7543466B2 (ja) 眼追跡較正技術
KR102438052B1 (ko) 포즈들 및 멀티-dof 제어기들을 사용하는 3d 가상 객체들과 상호작용들
JP2023100853A (ja) アバタ移動のためのマルチモードの手の場所および配向
CA3078895C (en) Virtual reticle for augmented reality systems

Legal Events

Date Code Title Description
PA0105 International application

Patent event date: 20200515

Patent event code: PA01051R01D

Comment text: International Patent Application

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20211022

Comment text: Request for Examination of Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20230809

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20240222

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20240520

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20240520

End annual number: 3

Start annual number: 1

PG1601 Publication of registration