KR20200055704A - 눈 추적을 위한 개인화된 뉴럴 네트워크 - Google Patents

눈 추적을 위한 개인화된 뉴럴 네트워크 Download PDF

Info

Publication number
KR20200055704A
KR20200055704A KR1020207004193A KR20207004193A KR20200055704A KR 20200055704 A KR20200055704 A KR 20200055704A KR 1020207004193 A KR1020207004193 A KR 1020207004193A KR 20207004193 A KR20207004193 A KR 20207004193A KR 20200055704 A KR20200055704 A KR 20200055704A
Authority
KR
South Korea
Prior art keywords
eye
retraining
user
training
images
Prior art date
Application number
KR1020207004193A
Other languages
English (en)
Inventor
아드리안 카일러
더글라스 리
비제이 바드리나라난
Original Assignee
매직 립, 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 매직 립, 인코포레이티드 filed Critical 매직 립, 인코포레이티드
Publication of KR20200055704A publication Critical patent/KR20200055704A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • 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
    • G02B27/0172Head mounted characterised by optical features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/163Wearable computers, e.g. on a belt
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • 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, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10048Infrared image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30004Biomedical image processing
    • G06T2207/30041Eye; Retina; Ophthalmic
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • G06T2207/30201Face

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Optics & Photonics (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Multimedia (AREA)
  • Computer Graphics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Image Analysis (AREA)
  • Eye Examination Apparatus (AREA)
  • Medicines That Contain Protein Lipid Enzymes And Other Medicines (AREA)
  • Position Input By Displaying (AREA)

Abstract

눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위해 사용자의 눈의 재트레이닝 눈 이미지들을 캡처하기 위한 웨어러블 디스플레이 시스템이 본원에 개시된다. 시스템은, UI(user interface) 이벤트들이 디스플레이의 디스플레이 위치들에서 디스플레이된 UI 디바이스들에 관련하여 발생할 때, 이미지 캡처 디바이스를 사용하여 재트레이닝 눈 이미지들을 캡처한다. 시스템은 재트레이닝 눈 이미지들, 및 재트레이닝 눈 이미지들(예컨대, UI 디바이스들의 디스플레이 위치들에 관련됨)에서 사용자의 눈의 눈 포즈들을 포함하는 재트레이닝 세트를 생성하고, 재트레이닝 세트를 사용하여 재트레이닝되는 재트레이닝된 뉴럴 네트워크를 획득할 수 있다.

Description

눈 추적을 위한 개인화된 뉴럴 네트워크
[0001] 본 출원은, 2017년 9월 20일에 출원되고 명칭이 "PERSONALIZED NEURAL NETWORK FOR EYE TRACKING"인 미국 가출원 번호 제62/560,898호를 우선권으로 주장하며, 이로써, 상기 출원의 전체 내용이 인용에 의해 본원에 포함된다.
[0002] 본 개시내용은 가상 현실 및 증강 현실 이미징 및 시각화 시스템들에 관한 것이며, 특히, 눈 추적을 위한 개인화된 뉴럴 네트워크에 관한 것이다.
[0003] DNN(deep neural network)은 컴퓨테이션 기계 학습 방법이다. DNN들은 인공 뉴럴 네트워크(neural network; NN)들의 클래스에 속한다. NN들에 있어서, 생물학적 뉴럴 네트워크의 특징들을 모방하는 컴퓨테이셔널 그래프(computational graph)가 구성된다. 생물학적 뉴럴 네트워크는 컴퓨테이션에 대해 두드러진 특징들을 포함하고, 그렇지 않으면 다른 방법들을 통해 캡처하기 어려울 수 있는 생물학적 시스템의 능력들 중 대부분을 담당한다. 일부 구현들에서, 이러한 네트워크들은 연결들이 단방향인 순차적 계층화된 구조로 배열된다. 예컨대, 특정 층의 인공 뉴런들의 출력들은 후속 층의 인공 뉴런들의 입력들에 연결될 수 있다. DNN은 매우 다수의 층들(예컨대, 수십, 수백 개 이상의 층들)을 갖는 NN일 수 있다.
[0004] 상이한 NN들은 상이한 관점들에서 서로 상이하다. 예컨대, 토폴로지들 또는 아키텍처들(예컨대, 층들의 수 및 층들이 상호연결되는 방식) 및 상이한 NN들의 가중치들이 상이할 수 있다. 가중치는 생물학적 시스템에서 뉴럴 연결(neural connection)의 시냅스 세기와 거의 유사할 수 있다. 가중치들은 하나의 층으로부터 다른 층으로 전파되는 효과들의 세기에 영향을 줄 수 있다. 인공 뉴런의 출력은 자신의 입력들의 가중화된 합의 비선형 함수일 수 있다. NN의 가중치들은 이러한 합산들에서 나타나는 가중치들일 수 있다.
[0005] 일 양상에서, 웨어러블 디스플레이 시스템이 개시된다. 웨어러블 디스플레이 시스템은: 사용자의 눈의 복수의 재트레이닝 눈 이미지들(retraining eye images)을 캡처하도록 구성된 이미지 캡처 디바이스; 디스플레이; 복수의 재트레이닝 눈 이미지들, 및 눈 추적을 위한 뉴럴 네트워크를 저장하도록 구성된 비-일시적인 컴퓨터-판독 가능한 저장 매체; 및 이미지 캡처 디바이스, 디스플레이, 및 비-일시적인 컴퓨터-판독 가능한 저장 매체와 통신하는 하드웨어 프로세서를 포함하고, 하드웨어 프로세서는: 이미지 캡처 디바이스에 의해 캡처되고 그리고/또는 비-일시적인 컴퓨터-판독 가능한 저장 매체에 저장된 복수의 재트레이닝 눈 이미지들(이미지 캡처 디바이스에 의해 캡처될 수 있음)을 수신하고 ― 복수의 재트레이닝 눈 이미지들의 재트레이닝 눈 이미지는, 디스플레이의 디스플레이 위치에서 사용자에게 보여지는 UI(user interface) 디바이스에 관련하여, UI 이벤트가 발생할 때, 이미지 캡처 디바이스에 의해 캡처됨 ― ; 재트레이닝 입력 데이터 및 대응하는 재트레이닝 타겟 출력 데이터를 포함하는 재트레이닝 세트를 생성하고 ― 재트레이닝 입력 데이터는 재트레이닝 눈 이미지들을 포함하고, 그리고 대응하는 재트레이닝 타겟 출력 데이터는 디스플레이 위치에 관련된 재트레이닝 눈 이미지에서 사용자의 눈의 눈 포즈를 포함함 ― ; 그리고 재트레이닝 세트를 사용하여 눈 추적을 위한 뉴럴 네트워크로부터 재트레이닝되는 재트레이닝된 뉴럴 네트워크를 획득하도록 실행 가능한 명령들에 의해 프로그래밍된다.
[0006] 다른 양상에서, 눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위한 시스템이 개시된다. 시스템은: 실행 가능한 명령들을 저장하는 컴퓨터-판독 가능한 메모리; 및 하나 이상의 프로세서들을 포함하고, 하나 이상의 프로세서들은 적어도: 사용자의 눈의 복수의 재트레이닝 눈 이미지들을 수신하고 ― 복수의 재트레이닝 눈 이미지들의 재트레이닝 눈 이미지는, 사용자 디바이스의 디스플레이 위치에서 사용자에게 보여지는 UI(user interface) 디바이스에 관련하여, UI 이벤트가 발생할 때 캡처됨 ― ; 재트레이닝 입력 데이터 및 대응하는 재트레이닝 타겟 출력 데이터를 포함하는 재트레이닝 세트를 생성하고 ― 재트레이닝 입력 데이터는 재트레이닝 눈 이미지들을 포함하고, 그리고 대응하는 재트레이닝 타겟 출력 데이터는 디스플레이 위치에 관련된 재트레이닝 눈 이미지에서 사용자의 눈의 눈 포즈를 포함함 ― ; 그리고 재트레이닝된 뉴럴 네트워크를 생성하기 위해 재트레이닝 세트를 사용하여 눈 추적을 위한 뉴럴 네트워크를 재트레이닝하도록 실행 가능한 명령들에 의해 프로그래밍된다.
[0007] 추가의 양상에서, 뉴럴 네트워크를 재트레이닝하기 위한 방법이 개시된다. 방법은 하드웨어 프로세서의 제어 하에 있고, 사용자의 눈의 복수의 재트레이닝 눈 이미지들을 수신하는 단계 ― 복수의 재트레이닝 눈 이미지들의 재트레이닝 눈 이미지는, 디스플레이 위치에서 사용자에게 보여지는 UI(user interface) 디바이스에 관련하여, UI 이벤트가 발생할 때 캡처됨 ― ; 재트레이닝 입력 데이터 및 대응하는 재트레이닝 타겟 출력 데이터를 포함하는 재트레이닝 세트를 생성하는 단계 ― 재트레이닝 입력 데이터는 재트레이닝 눈 이미지들을 포함하고, 그리고 대응하는 재트레이닝 타겟 출력 데이터는 디스플레이 위치에 관련된 재트레이닝 눈 이미지에서 사용자의 눈의 눈 포즈를 포함함 ― ; 및 재트레이닝된 뉴럴 네트워크를 생성하기 위해 재트레이닝 세트를 사용하여 뉴럴 네트워크를 재트레이닝하는 단계를 포함한다.
[0008] 본 명세서에서 설명되는 청구 대상의 하나 이상의 구현들의 세부사항들은, 아래의 첨부 도면들 및 설명에서 기술된다. 다른 특징들, 양상들, 및 이점들은 설명, 도면들, 및 청구항들로부터 명백해질 것이다. 이 개요 또는 다음의 상세한 설명 어느 것도, 본 개시내용의 청구 대상의 범위를 한정하거나 제한하는 것으로 의도되지 않는다.
[0009] 도 1은 눈 이미지들을 캡처하고, 눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위해 눈 이미지들을 사용하는 일 실시예를 개략적으로 예시한다.
[0010] 도 2는 눈의 예를 개략적으로 예시한다. 도 2a는 눈의 눈 포즈를 측정하기 위한 예시적인 좌표계를 개략적으로 예시한다.
[0011] 도 3은 눈 이미지들을 수집하고, 수집된 눈 이미지들을 사용하여 뉴럴 네트워크를 재트레이닝하는 예시적인 방법의 흐름도를 도시한다.
[0012] 도 4는 눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위해 상이한 눈 포즈들을 갖는 눈 이미지들을 생성하는 예를 예시한다.
[0013] 도 5는 텍스트 설명이 디스플레이된 가상 UI 디바이스에 대해 상이한 포인팅 방향들을 갖는 눈 이미지들을 생성하기 위한 확률 분포를 컴퓨팅하는 예를 예시한다.
[0014] 도 6은 상이한 눈 포즈 구역들에 대응하는 디스플레이의 다수의 구역들을 갖는 증강 현실 디바이스의 예시적인 디스플레이를 예시한다. 가상 UI 디바이스는 상이한 확률들로 상이한 눈 포즈 구역들에 대응하는 디스플레이의 상이한 구역들에 디스플레이될 수 있다.
[0015] 도 7은, 뉴럴 네트워크를 재트레이닝하기 위해 눈 이미지들을 수집할 때 관찰되는 UI 이벤트들의 밀도 정규화를 수행하는 예시적인 방법의 흐름도를 도시한다.
[0016] 도 8은 가상 UI 디바이스에 관련하여 눈 시선의 역 추적의 예시적인 예시를 도시한다.
[0017] 도 9는 가상 UI 디바이스에 관련하여 눈 시선의 역 추적의 예시적인 방법의 흐름도를 도시한다.
[0018] 도 10은 일 실시예에 따른, 사람에 의해 관찰되는 특정 실제 현실 객체들 및 특정 가상 현실 객체들을 갖는 혼합 현실 시나리오의 예시를 도시한다.
[0019] 도 11은 일 실시예에 따른 웨어러블 디스플레이 시스템의 예를 예시한다.
[0020] 도 12는 일 실시예에 따른, 다중 깊이 평면들을 사용하여 3-차원 이미저리를 시뮬레이팅하기 위한 접근법의 양상들을 예시한다.
[0021] 도 13은 일 실시예에 따른, 이미지 정보를 사용자에게 출력하기 위한 도파관 스택의 예를 예시한다.
[0022] 도 14는 일 실시예에 따른, 도파관에 의해 출력될 수 있는 예시적인 출사 빔들을 도시한다.
[0023] 도 15는 일 실시예에 따른 디스플레이 시스템을 도시하는 개략도이다.
[0024] 도면들 전체에 걸쳐, 참조 번호들은 참조된 엘리먼트들 사이의 대응성(correspondence)을 표시하는 데 재사용될 수 있다. 도면들은 본원에서 설명된 예시적인 실시예들을 예시하기 위해 제공되며 본 개시내용의 범위를 제한하려는 의도는 아니다.
개관
[0025] NN(neural network)을 트레이닝하는 프로세스는 네트워크에 입력 데이터 및 대응하는 타겟 출력 데이터 둘 모두를 제공하는 것을 수반한다. 예시적인 입력들 및 타겟 출력들 둘 모두를 포함하는 이 데이터는 트레이닝 세트로 지칭될 수 있다. 트레이닝 세트로부터의 특정 입력 데이터가 정해지면, 네트워크의 출력이 해당 특정 입력 데이터에 대응하는 타겟 출력과 (예컨대, 가능한 한 가깝게, 바람직하게, 또는 실현 가능하게) 매칭하도록, 트레이닝의 프로세스를 통해, 네트워크의 가중치들이 점진적으로 또는 반복적으로 적응될 수 있다.
[0026] NN을 트레이닝하기 위한 트레이닝 세트를 구성하는 것은 난제들을 제공할 수 있다. 트레이닝 세트의 구성은 NN의 트레이닝 및 따라서 NN의 성공적인 동작에 중요할 수 있다. 일부 실시예들에서, 필요한 데이터의 양은 네트워크에 대한 정확한 거동들의 수천만, 수억, 수십억 개 이상의 예들과 같이 매우 클 수 있다. 네트워크는, 입력들(예컨대, 오리지널 트레이닝 세트에 존재할 수 없는 신규한 입력들)에 대한 적절한 출력들을 예측하도록 자신의 학습을 정확하게 일반화하기 위해, 트레이닝 세트를 사용하여 학습할 수 있다.
[0027] 트레이닝 데이터(예컨대, 눈 이미지들)를 수집하고, 트레이닝 데이터를 포함하는 트레이닝 세트를 생성하고, 눈 추적(예컨대, 눈 포즈들 및 눈 시선 방향의 결정)을 위해 트레이닝된 NN을 재트레이닝, 향상, 폴리싱 또는 개인화하기 위해 트레이닝 세트를 사용하기 위한 시스템들 및 방법들이 본원에 개시된다. 일부 구현들에서, DNN(deep neural network)과 같은 NN은 먼저 큰 개체군(population)(예컨대, 인간 개체군을 포함하여, 동물 개체군)으로부터의 눈 이미지들을 포함하는 트레이닝 세트를 사용하여 눈 추적(예컨대, 눈 움직임들의 추적 또는 시선 방향의 추적)을 위해 트레이닝될 수 있다. 트레이닝 세트는 수백, 수천 명 이상의 개인들로부터 수집된 트레이닝 데이터를 포함할 수 있다.
[0028] NN은 후속적으로, 단일 개인(또는 50, 10, 5 명 이하의 개인들과 같은 소수의 개인들)으로부터의 재트레이닝을 위한 데이터를 사용하여 재트레이닝, 향상, 폴리싱 또는 개인화될 수 있다. 재트레이닝된 NN은 개인(또는 소수의 개인들)에 대한 눈 추적을 위한 트레이닝된 NN에 비해 개선된 성능을 가질 수 있다. 일부 구현들에서, 트레이닝 프로세스의 시작에서, 재트레이닝된 NN의 가중치들은 트레이닝된 NN의 가중치들로 설정될 수 있다.
[0029] 도 1은 눈 이미지들을 수집하고, 눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위해 수집된 눈 이미지들을 사용하는 일 실시예를 개략적으로 예시한다. 재트레이닝을 위한 데이터를 수집하기 위해, 도 11의 웨어러블 디스플레이 시스템(1100)과 같은 머리 장착 가능한 증강 현실 디바이스(ARD)(104)의 디스플레이 상에 디스플레이되는 가상 사용자 인터페이스(UI) 디바이스들과의 사용자의 상호작용들이 모니터링될 수 있다. 예컨대, 가상 원격 제어부의 가상 버튼의 사용자의 활성화(예컨대, "누르기") 또는 비활성화(예컨대, "해제")와 같은 UI 이벤트가 모니터링될 수 있다. 가상 UI 디바이스와의 사용자의 상호작용(본원에서 사용자 상호작용으로 또한 지칭됨)은 본원에서 UI 이벤트로 지칭된다. 가상 UI 디바이스는 WIMP(windows, icons, menus, pointer) UI 디바이스들의 구현들 또는 스타일들에 기반할 수 있다. 가상 UI 디바이스들과의 사용자 상호작용들을 결정하는 프로세스는 포인터(예컨대, 손가락, 손가락 끝 또는 스타일러스)의 위치의 컴퓨테이션 및 포인터와 가상 UI 디바이스의 상호작용의 결정을 포함할 수 있다. 일부 실시예들에서, ARD(104)는 눈 추적을 위한 NN(108)을 포함할 수 있다.
[0030] 가상 UI 디바이스에 관련하여 UI 이벤트 시에 사용자의 하나 또는 양쪽의 눈들의 눈 이미지들(112)은 ARD(104)의 내향 이미징 시스템(예컨대, 도 13의 내향 이미징 시스템(1352))과 같은 카메라를 사용하여 캡처될 수 있다. 예컨대, ARD(104) 상의 사용자의 하나 이상의 눈들 근처에 배치된 하나 이상의 카메라들은, 재트레이닝된 NN(124)을 생성하도록 NN(108)을 재트레이닝하기 위해 눈 이미지들(112)을 캡처할 수 있다. 재트레이닝 세트에 대한 데이터는 눈 이미지(112) 및 ARD(104)의 디스플레이 상의 가상 UI 디바이스들(116)의 위치들(또는 가상 UI 디바이스들의 위치들을 사용하여 결정된 하나 또는 양쪽 눈들의 눈 포즈들)을 포함할 수 있다. 일부 실시예들에서, 재트레이닝 세트에 대한 데이터는 기존의 트레이닝된 NN과 독립적으로 획득될 수 있다. 예컨대, 재트레이닝 세트는 가상 UI 디바이스에 관련하여 UI 이벤트 시에 수집된 눈 이미지(112) 및 ARD(104)의 디스플레이 상의 가상 UI 디바이스(116)의 위치를 포함할 수 있으며, 이는, 가상 UI 디바이스가 디스플레이되기 전에, ARD(104)에 의해 결정될 수 있다.
[0031] ARD는, UI 이벤트들이 발생할 때 캡처된 사용자의 눈 이미지들(112), 및 UI 이벤트들이 발생할 때 ARD(104)의 디스플레이 상에 디스플레이된 가상 UI 디바이스들(116)의 위치들을, 네트워크(예컨대, 인터넷)를 통해 NN 재트레이닝 시스템(120)에 전송할 수 있다. NN 재트레이닝 시스템(120)은, 재트레이닝된 NN(124)을 생성하기 위해, 캡처된 눈 이미지들(112) 및 눈 이미지들(112)이 캡처될 때 가상 UI 디바이스들의 대응하는 디스플레이 위치들(116)을 사용하여, NN(108)을 재트레이닝할 수 있다. 일부 실시예들에서, 다수의 시스템들은 NN(108)을 재트레이닝하는 데 수반될 수 있다. 예컨대, ARD(104)는 (예컨대, 도 11의 로컬 프로세싱 모듈(1124)을 사용하여) NN(108)을 부분적으로 또는 전체적으로 로컬로 재트레이닝할 수 있다. 다른 예로서, 원격 프로세싱 모듈(예컨대, 도 11의 원격 프로세싱 모듈(1128)) 및 NN 재트레이닝 시스템(120) 중 하나 또는 둘 모두가 NN(108)을 재트레이닝하는 데 수반할 수 있다. 재트레이닝의 속도를 개선하기 위해, 재트레이닝된 NN(124)의 가중치들은 유리하게는, 일부 구현들에서, 재트레이닝 프로세스의 시작에서 트레이닝된 NN(108)의 가중치들로 설정될 수 있다.
[0032] ARD(104)는 네트워크를 통해 NN 재트레이닝 시스템(120)으로부터 수신된 눈 추적을 위한 이러한 재트레이닝된 NN(124)을 구현할 수 있다. ARD(104) 상의 사용자의 하나 이상의 눈들 근처에 배치된 하나 이상의 카메라들(예컨대, 도 13의 내향 이미징 시스템(1352))은 눈 이미지들을 캡처하여 제공할 수 있고, 사용자의 눈 포즈 또는 시선 방향은, 눈 이미지들로부터, 재트레이닝된 NN(124)을 사용하여 결정될 수 있다. 재트레이닝된 NN(124)은 사용자에 대한 눈 추적을 위한 트레이닝된 NN(108)에 비해 개선된 성능을 가질 수 있다. 본원에 설명된 특정 예들은 ARD(104)를 참조하지만, 이는 단지 예시를 위한 것이며 제한이 아니다. 다른 예들에서, 혼합 현실 디스플레이(MRD) 또는 가상 현실 디스플레이(VRD)와 같은 다른 타입들의 디스플레이들이 ARD 대신에 사용될 수 있다.
[0033] NN(108) 및 재트레이닝된 NN(124)은 일부 구현들에서 트리플릿 네트워크 아키텍처를 가질 수 있다. 눈 이미지들의 재트레이닝 세트(112)는 하나 이상의 사용자 디바이스들(예컨대, ARD)로부터 "클라우드"에 전송되고, 실제로 해당 사용자를 인식하는(하지만 이 재트레이닝에서 공통 데이터세트를 사용하는) 트리플릿 네트워크를 재트레이닝하는 데 사용될 수 있다. 일단 트레이닝되면, 이 재트레이닝된 네트워크(124)는 사용자에게 다시 전송될 수 있다. 일부 실시예들에서, 이러한 많은 제안들과 함께, 하나의 대규모 네트워크(cosmic network)(124)는 유리하게는 모든 또는 다수의 사용자들로부터의 모든 데이터로 재트레이닝되고, 재트레이닝된 NN(124)을 다시 사용자 디바이스들에 전송할 수 있다.
눈 이미지의 예
[0034] 도 2는 눈꺼풀들(204), 공막(208)(눈의 "백색"), 홍채(212) 및 동공(216)을 갖는 눈(200)의 이미지를 예시한다. 예컨대, 도 1의 ARD(104)의 내향 이미징 시스템을 사용하여 캡처된 눈 이미지는, 재트레이닝된 NN(124)을 생성하기 위해 NN(108)을 재트레이닝하는 데 사용될 수 있다. 눈 이미지는 임의의 적절한 프로세스들을 사용하여, 예컨대, 하나 이상의 순차적인 프레임들로부터 이미지를 추출할 수 있는 비디오 프로세싱 알고리즘을 사용하여 비디오로부터 획득될 수 있다. 일부 실시예들에서, 재트레이닝된 NN(124)은 재트레이닝된 NN(108)을 사용하여 눈 이미지에서 눈(200)의 눈 포즈를 결정하는 데 사용될 수 있다.
[0035] 곡선(216a)은 동공(216)과 홍채(212) 사이의 동공 경계를 도시하고, 곡선(212a)은 홍채(212)와 공막(208) 사이의 변연 경계(limbic boundary)를 도시한다. 눈꺼풀들(204)은 상부 눈꺼풀(204a) 및 하부 눈꺼풀(204b)을 포함한다. 자연스러운 휴식 포즈(예컨대, 여기서 사용자의 얼굴 및 시선 둘 모두는 사용자들이 그들의 바로 정면에 있는 먼 객체를 향하는 것처럼 배향됨)의 눈(200)이 예시된다. 눈(200)의 자연스러운 휴식 포즈는 자연스러운 휴식 방향(220)으로 표시될 수 있으며, 이는, 눈(200)이 자연스러운 휴식 포즈에 있을 때 눈(200)의 표면에 직교하는(예컨대, 도 2에 도시된 눈(200)의 평면으로부터 밖으로 똑바른) 방향이고, 이러한 예에서, 동공(216) 내에 중심을 둔다.
[0036] 눈(200)이 상이한 객체들을 보기 위해 움직일 때, 눈 포즈는 자연스러운 휴식 방향(220)에 대해 변할 것이다. 현재 눈 포즈는 눈 포즈 방향(220)을 참조하여 결정될 수 있는데, 이는 눈의 표면에 직교하지만(그리고 동공(216) 내에 중심을 둠) 눈이 현재 지향되는 객체를 향해 배향되는 방향이다. 도 2a에 도시된 예시적인 좌표계를 참조하면, 눈(200)의 포즈는, 둘 모두가 눈의 자연스러운 휴식 방향(220)에 대한 것인, 눈의 눈 포즈 방향(224)의 방위각 편향 및 천정 편향을 나타내는 2개의 각도 파라미터들로서 표현될 수 있다. 예시를 목적으로, 이러한 각도 파라미터들은 θ(기준 방위각으로부터 결정된 방위각 편향) 및 φ(천정 편향, 때때로 극 편향으로 또한 지칭됨)로서 표현될 수 있다. 일부 구현들에서, 눈 포즈 방향(224) 둘레에서 눈의 각도 롤은 눈 포즈의 결정에 포함될 수 있다. 다른 구현들에서, 눈 포즈를 결정하기 위한 다른 기술들, 예컨대, 피치, 요 및 선택적으로 롤 시스템이 사용될 수 있다.
눈 이미지들을 수집하고, 눈 이미지들을 사용하여 눈 추적을 위한 NN을 재트레이닝하는
[0037] 도 1은 눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위해 눈 이미지들을 수집하는 일 실시예를 개략적으로 예시한다. 일부 실시예들에서, NN(108)은 전체로서(as a class) 일반적으로 사용자들의 눈 움직임들을 추적하도록 먼저 트레이닝될 수 있다. 예컨대, NN(108)은, 많은 방향들을 보고 있는 많은 개인들을 포함하는 트레이닝 세트에 대해 ARD 제조자에 의해 먼저 트레이닝될 수 있다. 본원에 개시된 시스템들 및 방법들은, 재트레이닝된 NN(124)을 생성하기 위해 NN(108)을 재트레이닝함으로써 특정 사용자(또는 5 또는 10명의 사용자들과 같은 사용자들의 그룹)의 경우에 대한 NN(108)의 성능을 개선할 수 있다. 예컨대, NN(108)을 포함하는 ARD(104)의 제조자는, 일단 제조 및 유통되면, ARD(104)를 누가 구매할 것인지를 알지 못할 수 있다.
[0038] 대안적인 신호(예컨대, UI 이벤트의 발생)는, 사용자의 하나 또는 양쪽 눈들이 알려진 타겟(예컨대, 가상 UI 디바이스)을 응시하는 것으로 관찰될 수 있는 특정 상황이 존재함을 나타낼 수 있다. 대안적인 신호는, 재트레이닝된 NN(124)(본원에서 폴리싱된 NN, 향상된 NN 또는 개인화된 NN으로 또한 지칭됨)을 생성하기 위해, NN(104)을 재트레이닝하기 위한 재트레이닝 세트(본원에서 제2 트레이닝 세트, 폴리싱된 세트 또는 개인화된 세트로 또한 지칭됨)를 생성하는 데 사용될 수 있다. 대안적으로 또는 추가적으로, 품질 메트릭은, 재트레이닝 세트가 재트레이닝을 위한 충분한 커버리지를 갖는다고 결정하는 데 사용될 수 있다.
[0039] 일단 수집되면, NN(108)은 재트레이닝, 폴리싱, 향상 또는 개인화될 수 있다. 예컨대, ARD(104)는, UI 이벤트가 발생할 때 한 명 이상의 사용자들의 눈 이미지들(112)을 캡처할 수 있다. ARD(104)는 네트워크(예컨대, 인터넷)를 통해 눈 이미지들(112) 및 가상 UI 디바이스들(116)의 위치들을 NN 재트레이닝 시스템(120)에 전송할 수 있다. NN 재트레이닝 시스템(120)은, 재트레이닝된 NN(124)을 생성하기 위해 NN(108)을 재트레이닝하기 위한 재트레이닝 세트를 생성할 수 있다. 재트레이닝 세트는 특정 수의 데이터 포인트들을 포함할 수 있다. 일부 구현들에서, NN(108)을 재트레이닝하는 것은 오리지널의 트레이닝 세트(예컨대, 폴리싱되거나 개인화되지 않은 트레이닝 세트)로부터 학습된 가중치들로 재트레이닝된 NN(124)을 초기화하고, 이어서 재트레이닝 세트만, 또는 재트레이닝 세트와 오리지널 트레이닝 세트의 멤버들 중 일부 또는 전부의 조합을 사용하여 트레이닝 프로세스를 반복하는 것을 포함할 수 있다.
[0040] 유리하게는, 재트레이닝된 NN(124)은 더 일반적인 것으로부터 사용자의 특정 예시를 향한 부분적인 전문화 정도로 적응될 수 있다. 재트레이닝 프로세스가 완료된 후의 NN(124)은 재트레이닝된 NN(124), 폴리싱된 NN(124), 향상된 NN(124) 또는 개인화된 NN(124)으로 지칭될 수 있다. 다른 예로서, 일단 ARD(104)가 단일 사용자(또는, 예컨대, 생체인식 시그니처 또는 로그인 식별자(ID)들에 의해 실행중에 아이덴티티들이 식별 가능할 수 있는 다수의 사용자들)의 소유이면, 재트레이닝된 세트는, UI 이벤트들 동안에 눈들의 이미지들을 캡처하고 연관된 가상 UI 디바이스들의 위치들을 해당 이미지들에 할당함으로써 해당 사용자에 대해 구성될 수 있다. 일단 재트레이닝 세트의 충분한 수의 데이터 포인트들이 수집되었다면, NN(108)은 재트레이닝 세트를 사용하여 재트레이닝되거나 폴리싱될 수 있다. 이 프로세스는 반복될 수 있거나 반복되지 않을 수 있다.
[0041] 재트레이닝된 NN(124)은 개선된 성능(예컨대, 더 높은 정확도) ― 더 양호한 사용자 경험을 발생시킬 수 있음 ― 으로 사용자의 하나 또는 양쪽 눈들의 눈 포즈들(예컨대, 시선 방향들)(예컨대, 사용자의 눈의 지시 방향)을 결정하는 데 사용될 수 있다. 재트레이닝된 NN(124)은, NN 재트레이닝 시스템(120)으로부터 재트레이닝된 NN(124)을 수신할 수 있는 디스플레이(이를테면, ARD(104), VRD, MRD 또는 다른 디바이스)에 의해 구현될 수 있다. 예컨대, 사용자가 컴퓨터 화면을 보고 있는 곳을 결정하기 위해, 컴퓨터, 태블릿 또는 모바일 디바이스(예컨대, 셀폰)의 사용자에 대해 재트레이닝된 NN(124)을 사용하여 시선 추적이 수행될 수 있다. NN(124)의 다른 용도들은 UX(User Experience) 연구들, UI 인터페이스 제어들 또는 보안 특징들을 포함한다. NN(124)은 각각의 눈의 시선 방향을 결정하기 위해 사용자 눈들의 디지털 카메라 이미지들을 수신한다. 각각의 눈의 시선 방향은, 사용자의 시선의 이접운동을 결정하거나 사용자의 2개의 눈들 둘 모두가 가리키는 3 차원(3D) 공간의 포인트를 위치확인하는 데 사용될 수 있다.
[0042] ARD(104)의 맥락에서의 시선 추적에 대해, 재트레이닝된 NN(124)의 사용은 대안적인 신호의 특정 선택(예컨대, 스타일러스를 사용하여 가상 버튼을 누르는 것과 같은 UI 이벤트의 발생)을 요구할 수 있다. 디스플레이인 것 이외에, ARD(104)(또는 MRD 또는 VRD)는 입력 디바이스일 수 있다. 이러한 디바이스들에 대한 비제한적인 예시적인 입력 모드들은 제스처(예컨대, 손 제스처), 또는 포인터, 스타일러스 또는 다른 물리적 객체를 사용하는 운동들을 포함한다. 손 제스처는 방향을 가리키는 손과 같은 사용자 손의 운동을 수반할 수 있다. 운동들은 터치, 누르기, 해제, 위/아래 또는 좌측/우측으로의 슬라이딩, 궤적을 따른 이동 또는 3D 공간의 다른 타입들의 움직임들을 포함할 수 있다. 일부 구현들에서, 가상 버튼들 또는 슬라이더들과 같은 가상 사용자 인터페이스(UI) 디바이스들은 사용자에 의해 지각되는 가상 환경에서 나타날 수 있다. 이러한 가상 UI 디바이스들은 2차원(2D) 또는 3차원(3D) WIMP(windows, icons, menus, pointer) UI 디바이스들(예컨대, Windows®, iOSTM 또는 AndroidTM 운영 시스템들에서 나타나는 디바이스들)과 유사할 수 있다. 이러한 가상 UI 디바이스들의 예들은 가상 버튼, 업다운, 스피너(spinner), 픽커(picker), 라디오 버튼, 라디오 버튼 리스트, 체크박스, 픽처 박스, 체크박스 리스트, 드롭다운 리스트, 드롭다운 메뉴, 선택 리스트, 리스트 박스, 콤보 박스, 텍스트박스, 슬라이더, 링크, 키보드 키, 스위치, 슬라이더, 터치 표면, 또는 이들의 조합을 포함한다.
[0043] 이러한 WIMP 인터페이스의 특징들은 포인터와 UI 디바이스를 정렬시키는 것에 수반된 시각-운동 난제(visual-motor challenge)를 포함한다. 포인터는 손가락 또는 스타일러스일 수 있다. 포인터는 마우스, 트랙 볼, 조이스틱, 게임 제어기(예컨대, 5-방향 d- 패드), 완드(wand) 또는 토템의 개별 운동을 사용하여 이동될 수 있다. 사용자는, UI 디바이스와 상호작용하기(예컨대, 마우스 "클릭") 직전 그리고 그 동안 UI 디바이스에 자신의 시선을 고정시킬 수 있다. 유사하게, ARD(104)의 사용자는, 가상 UI 디바이스와 상호작용하기(예컨대, 가상 버튼의 클릭) 직전 그리고 그 동안 가상 UI 디바이스에 자신의 시선을 고정시킬 수 있다. UI 이벤트는, 대안적인 신호로서 사용될 수 있는, 사용자와 가상 UI 디바이스(예컨대, WIMP형 UI 디바이스) 사이의 상호작용을 포함할 수 있다. 재트레이닝 세트의 멤버는 UI 이벤트에 관련될 수 있다. 예컨대, 멤버는 사용자의 눈의 이미지 및 가상 UI 디바이스의 위치(예컨대, ARD(104)의 디스플레이 상의 가상 UI 디바이스의 디스플레이 위치)를 포함할 수 있다. 다른 예로서, 재트레이닝 세트의 멤버는 사용자의 각각의 눈의 이미지 및 가상 UI 디바이스의 하나 이상의 위치들을 포함할 수 있다(예컨대, ARD(104)는 2개의 디스플레이들을 포함할 수 있고, 가상 UI 디바이스는 디스플레이들 상의 2개의 상이한 위치들에서 디스플레이될 수 있음). 멤버는 UI 이벤트(예컨대, WIMP "클릭" 이벤트)의 정확한 위치와 같은 보조 정보를 추가적으로 포함할 수 있다. UI 이벤트의 위치는 가상 UI 디바이스의 위치와 별개일 수 있다. UI 이벤트의 위치는, UI 이벤트가 발생할 때, 가상 UI 디바이스 상에 포인터(예컨대, 손가락 또는 스타일러스)가 위치하는 곳일 수 있으며, 이는 가상 UI 디바이스의 위치와 별개일 수 있다.
[0044] 재트레이닝된 NN(124)은 시선 추적에 사용될 수 있다. 일부 실시예들에서, 재트레이닝된 NN(124)은 범주에 속하는(categorical) 재트레이닝 데이터의 세트를 사용하여 재트레이닝될 수 있다. 범주에 속하는 데이터는, 이벤트들(예컨대, 가상 버튼의 활성화)의 다수의 서브클래스들을 나타내지만 해당 서브클래스들이 구별되지 않을 수 있는 데이터일 수 있다. 이러한 서브클래스들 자체는 더 작은 카테고리들 또는 개인들(예컨대, 가상 버튼의 클릭 또는 가상 버튼의 터치)의 범주에 속할 수 있다. ARD(104)는 재트레이닝된 NN(124)을 구현할 수 있다. 예컨대, 카메라들은 사용자의 눈들의 이미지들을 캡처하기 위해 ARD(104) 상에 위치될 수 있다. 재트레이닝된 NN(104)은, 사용자의 눈들이 (예컨대, 이접운동 포인트에) 초점을 맞추는, 3차원 공간에서의 포인트를 결정하는 데 사용될 수 있다.
[0045] 일부 실시예들에서, 사용자가 시스템에 위치들이 알려진 임의의 물리적 또는 가상 객체들과 상호작용할 때, 눈 이미지들(112)이 캡처될 수 있다. 예컨대, UI 이벤트는, 사용자가 모바일 디바이스(예컨대, 셀폰 또는 태블릿 컴퓨터) 상에 디스플레이된 UI 디바이스(예컨대, 버튼 또는 아루코 패턴)를 활성화(예컨대, 클릭 또는 터치)할 때 발생할 수 있다. 모바일 디바이스의 좌표계에서 UI 디바이스의 위치는, UI 디바이스가 해당 위치에서 디스플레이되기 전에, 모바일 디바이스에 의해 결정될 수 있다. 모바일 디바이스는, 사용자가 UI 디바이스를 활성화할 때 UI 디바이스의 위치 및 활성화의 타이밍을 ARD(104)에 송신할 수 있다. ARD(104)는 사용자의 세계 좌표계에서 모바일 디바이스의 위치를 결정할 수 있으며, 이는 ARD(104)의 외향 이미징 시스템(이를테면, 도 13을 참조하여 설명된 외향 이미징 시스템(1354))에 의해 캡처된 사용자 환경의 이미지들을 사용하여 결정될 수 있다. 세계 좌표계에서 UI 디바이스의 위치는 사용자의 세계 좌표계에서 모바일 디바이스의 위치 및 모바일 디바이스의 좌표계에서 UI 디바이스의 위치를 사용하여 결정될 수 있다. 이러한 활성화가 발생할 때 사용자의 눈 이미지는 활성화의 타이밍을 사용하여 ARD(104)의 이미지 버퍼로부터 리트리브(retrieve)될 수 있다. ARD(104)는 세계 좌표계에서 UI 디바이스의 위치를 사용하여 사용자의 눈의 시선 방향들을 결정할 수 있다.
[0046] 재트레이닝 세트 또는 폴리싱된 세트는 생체인식 또는 홍채 식별과 같은 다른 애플리케이션들을 가질 수 있다. 예컨대, 홍채 매칭과 같은 생체인식 식별을 위한 NN(예컨대, DNN)은 생체인식 식별을 위한 재트레이닝된 NN을 생성하도록 재트레이닝될 수 있다. NN은 홍채의 벡터 공간 표현들의 구성을 위한 트리플릿 네트워크 아키텍처를 가질 수 있다. 트레이닝 세트는 많은 홍채 이미지들을 포함할 수 있지만, ARD(104)를 사용하는 사용자의 눈의 홍채의 임의의 이미지들을 반드시 포함하지는 않는다. 재트레이닝 세트는, 사용자가 ARD(104)를 사용할 때 생성될 수 있다. UI 이벤트들이 발생할 때, 재트레이닝 눈 이미지들 또는 홍채 이미지들이 캡처될 수 있다. 추가적으로 또는 대안적으로, 재트레이닝 눈 이미지들 또는 홍채 이미지들은 패스워드 또는 PIN의 입력과 같은 다른 종류들의 식별 이벤트들에 따라 캡처될 수 있다. 일부 실시예들에서, 세션 동안 사용자의 일부 또는 모든 눈 이미지들(또는 사용자에 관련된 다른 데이터)이 재트레이닝 세트에 추가될 수 있다. 세션은 (예컨대, 홍채 식별에 의한) 식별(ID) 확인 또는 일부 다른 이벤트(예컨대, 패스워드 또는 PIN(personal identification number)의 입력)와, ARD(104)가 사용자로부터 제거되었음을, 임의의 신뢰할 수 있는 수단에 의해, ARD(104)가 검출한 순간 사이의 시간 기간을 지칭할 수 있다. 재트레이닝 세트는, 세션에서 캡처된 일부 또는 모든 눈 이미지들 또는 세션이 개시되었을 때 캡처된 눈 이미지들을 포함할 수 있다.
눈 이미지들을 수집하고 눈 추적을 위한 뉴럴 네트워크를 재트레이닝하는 예시적인 방법
[0047] 도 3은 눈 이미지들을 수집 또는 캡처하고, 수집된 눈 이미지들을 사용하여 뉴럴 네트워크를 재트레이닝하는 예시적인 방법(300)의 흐름도를 도시한다. ARD는, UI 이벤트가 발생할 때 사용자의 눈 이미지들을 캡처할 수 있다. 예컨대, 도 1의 ARD(104)는, 사용자 인터페이스(UI) 이벤트가 발생할 때, 도 1의 눈 이미지들(112) 또는 사용자의 도 2의 눈(200)의 이미지들을 캡처할 수 있다. 시스템은, 재트레이닝된 NN을 생성하기 위해, UI 이벤트들이 발생할 때 캡처된 눈 이미지들 및 가상 UI 디바이스들의 위치들을 사용하여 NN을 재트레이닝할 수 있다. 예컨대, 도 1의 NN 재트레이닝 시스템(120)은, 재트레이닝된 NN(124)을 생성하기 위해, UI 이벤트들이 발생하고 눈 이미지들(112)이 캡처될 때, 캡처된 눈 이미지들(112) 및 가상 UI 디바이스들(116)의 위치들을 사용하여 NN(108)을 재트레이닝할 수 있다.
[0048] 블록(304)에서, 눈 추적을 위한 뉴럴 네트워크는, 트레이닝 입력 데이터 및 대응하는 트레이닝 타겟 출력 데이터를 포함하는 트레이닝 세트를 사용하여 선택적으로 트레이닝될 수 있다. ARD 제조자는 NN을 트레이닝할 수 있다. 트레이닝 입력 데이터는 복수의 사용자들의 복수의 트레이닝 눈 이미지들을 포함할 수 있다. 대응하는 트레이닝 타겟 출력 데이터는 복수의 트레이닝 눈 이미지들에서 복수의 사용자들의 눈들의 눈 포즈들을 포함할 수 있다. 복수의 사용자들은 많은 수의 사용자들을 포함할 수 있다. 예컨대, 눈들의 눈 포즈들은 눈들의 다양한 눈 포즈들을 포함할 수 있다. NN을 트레이닝하는 프로세스는 트레이닝 세트의 입력 데이터 및 대응하는 타겟 출력 데이터 둘 모두를 네트워크에 제공하는 것을 수반한다. 트레이닝 세트로부터의 특정 입력 데이터가 정해지면, 네트워크의 출력이 해당 특정 입력 데이터에 대응하는 타겟 출력과 (예컨대, 가능한 한 가깝게, 바람직하게, 또는 실현 가능하게) 매칭하도록, 트레이닝의 프로세스를 통해, 네트워크의 가중치들이 점진적으로 또는 반복적으로 적응될 수 있다. 일부 실시예들에서, 눈 추적을 위한 뉴럴 네트워크는, 뉴럴 네트워크가 트레이닝된 후에 수신된다.
[0049] 블록(308)에서, 사용자의 눈의 복수의 재트레이닝 눈 이미지들이 수신될 수 있다. ARD의 내향 이미징 시스템(예컨대, 도 13의 내향 이미징 시스템(1352))은 사용자의 눈의 복수의 재트레이닝 눈 이미지들을 캡처할 수 있다. ARD는 복수의 재트레이닝 눈 이미지들을 NN 재트레이닝 시스템(예컨대, 도 1의 NN 재트레이닝 시스템(120))에 송신할 수 있다. 복수의 재트레이닝 눈 이미지들의 재트레이닝 눈 이미지는, 디스플레이 위치에서 사용자에게 보여지는 가상 UI 디바이스(예컨대, 가상 버튼)에 관련하여 UI 이벤트(예컨대, 활성화 또는 비활성화)가 발생할 때 캡처될 수 있다. 일부 구현들에서, 사용자의 복수의 재트레이닝 눈 이미지들을 수신하는 것은 디스플레이(예컨대, 도 11의 웨어러블 디스플레이 시스템(1100)의 디스플레이(1108))를 사용하여 디스플레이 위치에서 가상 UI 디바이스를 사용자에게 디스플레이하는 것을 포함할 수 있다. 가상 UI 디바이스를 디스플레이한 후, 가상 UI 디바이스에 관련하여 UI 이벤트의 발생이 결정될 수 있고, 재트레이닝 눈 이미지는 이미징 시스템(예컨대, 도 13의 내향 이미징 시스템(1352))을 사용하여 캡처될 수 있다.
[0050] 일부 실시예들에서, 사용자의 복수의 재트레이닝 눈 이미지들을 수신하는 것은 재트레이닝 눈 이미지에서 눈의 눈 포즈를 결정하는 것을 더 포함할 수 있다. 예컨대, 재트레이닝 눈 이미지에서 눈의 눈 포즈는 가상 UI 디바이스의 디스플레이 위치일 수 있거나, 가상 UI 디바이스의 디스플레이 위치를 사용하여 결정될 수 있다. 눈의 눈 포즈를 결정하는 것은 가상 UI 디바이스의 디스플레이 위치, 눈의 위치 또는 이들의 조합을 사용하여 눈의 눈 포즈를 결정하는 것을 포함할 수 있다. 예컨대, 눈의 눈 포즈는 가상 UI 디바이스의 디스플레이 위치와 눈의 위치 사이에 형성된 벡터로 표현될 수 있다.
[0051] UI 이벤트는 가상 UI 디바이스의 복수의 상태들의 상태에 대응할 수 있다. 복수의 상태들은 가상 UI 디바이스의 활성화, 비-활성화 또는 이들의 조합(예컨대, 비활성화로부터 활성화로의 전환, 활성화로부터 비활성화로의 전환 또는 불활성화(deactivation))을 포함할 수 있다. 활성화는 터치, 누르기, 해제, 위/아래 또는 좌측/우측으로의 슬라이딩, 궤적을 따른 이동 또는 3D 공간에서의 다른 타입들의 움직임들을 포함할 수 있다. 가상 UI 디바이스는 아루코(aruco), 버튼, 업다운, 스피너, 픽커, 라디오 버튼, 라디오 버튼 리스트, 체크박스, 픽처 박스, 체크박스 리스트, 드롭다운 리스트, 드롭다운 메뉴, 선택 리스트, 리스트 박스, 콤보 박스, 텍스트박스, 슬라이더, 링크, 키보드 키, 스위치, 슬라이더, 터치 표면, 또는 이들의 조합을 포함할 수 있다. 일부 실시예들에서, UI 이벤트는 가상 UI 디바이스 및 포인터와 관련하여 발생한다. 포인터는 사용자와 연관된 객체(예컨대, 포인터, 펜, 펜슬, 마커, 하이라이터) 또는 사용자의 부분(예컨대, 사용자의 손가락 또는 손가락 끝)을 포함할 수 있다.
[0052] 블록(312)에서, 재트레이닝 입력 데이터 및 대응하는 재트레이닝 타겟 출력 데이터를 포함하는 재트레이닝 세트가 생성될 수 있다. 예컨대, 도 1의 ARD(104) 또는 NN 재트레이닝 시스템(120)은 재트레이닝 세트를 생성할 수 있다. 재트레이닝 입력 데이터는 재트레이닝 눈 이미지를 포함할 수 있다. 대응하는 재트레이닝 타겟 출력 데이터는 디스플레이 위치에 관련된 재트레이닝 눈 이미지에서 사용자의 눈의 눈 포즈를 포함할 수 있다. 재트레이닝 세트의 재트레이닝 입력 데이터는 도 3의 블록(304)을 참조하여 설명된 복수의 트레이닝 눈 이미지들의 0 또는 1 개 이상의 트레이닝 눈 이미지들을 포함할 수 있다.
[0053] 블록(316)에서, 눈 추적을 위한 뉴럴 네트워크는, 재트레이닝된 뉴럴 네트워크를 생성하기 위해 재트레이닝 세트를 사용하여 재트레이닝될 수 있다. 예컨대, NN 재트레이닝 시스템(120)은 NN을 재트레이닝할 수 있다. NN을 재트레이닝하는 프로세스는 재트레이닝 세트의 재트레이닝 입력 데이터 및 대응하는 재트레이닝 타겟 출력 데이터 둘 모두를 NN에 제공하는 것을 수반한다. 재트레이닝 세트로부터의 특정 입력 데이터가 정해지면, NN의 출력이 해당 특정 재트레이닝 입력 데이터에 대응하는 재트레이닝 타겟 출력과 (예컨대, 가능한 한 가깝게, 실현 가능하게, 또는 바람직하게) 매칭하도록, 재트레이닝의 프로세스를 통해, 네트워크의 가중치들이 점진적으로 또는 반복적으로 적응될 수 있다. 일부 실시예들에서, 눈 추적을 위한 뉴럴 네트워크의 재트레이닝은 도 3의 블록(304)을 참조하여 설명된, 오리지널의 뉴럴 네트워크의 가중치들로 재트레이닝된 뉴럴 네트워크의 가중치들을 초기화하는 것을 포함할 수 있으며, 이는 유리하게는 재트레이닝된 NN의 트레이닝 시간 감소 및 성능 개선(예컨대, 정확도, 위양성률(false positive rate) 또는 위음성률(false negative rate))을 발생시킬 수 있다.
[0054] 블록(320)에서, 사용자의 눈 이미지가 선택적으로 수신될 수 있다. 예컨대, 도 13의 웨어러블 디스플레이 시스템(13)의 내향 이미징 시스템(1352)은 사용자의 눈 이미지를 캡처할 수 있다. 블록(324)에서, 눈 이미지에서 사용자의 눈 포즈는 재트레이닝된 뉴럴 네트워크를 사용하여 선택적으로 결정될 수 있다. 예컨대, 도 11의 웨어러블 디스플레이(1100)의 로컬 프로세싱 모듈(1124) 또는 원격 프로세싱 모듈(1128)은 재트레이닝된 NN을 구현할 수 있고, 내향 이미징 시스템에 의해 캡처된 눈 이미지에서 사용자의 눈 포즈를 결정하기 위해 재트레이닝된 NN을 사용할 수 있다.
상이한 눈 포즈들을 갖는 예시적인 눈 이미지들
[0055] 사용자가 자신의 눈들로 사용자 인터페이스(UI) 디바이스를 가리킬 때, 눈들은 디바이스 상의 특정 위치를 정확하게 가리키지 않을 수 있다. 예컨대, 일부 사용자들은 자신의 눈들로 가상 UI 디바이스의 정확한 중심을 가리킬 수 있다. 다른 예로서, 다른 사용자들은 자신들의 눈들로 가상 UI 디바이스의 코너(예컨대, 가장 가까운 코너)를 가리킬 수 있다. 또 다른 예로서, 일부 사용자들은 가상 UI 디바이스의 예측 불가한 일부 구역들(예컨대, 버튼 상의 텍스트에서 문자의 부분)과 같은, 가상 UI 디바이스의 일부 다른 부분에 자신들의 눈들을 고정시킬 수 있다. 본원에 개시된 시스템들 및 방법들은, 중앙 포인팅을 가정하지 않고서 생성된 재트레이닝 세트로 NN을 재트레이닝할 수 있다.
[0056] 도 4는 상이한 눈 포즈들로 눈 이미지를 생성하는 예를 예시한다. 내향 카메라 시스템을 사용하는 ARD(104)는, 가상 UI 디바이스(412)에 관련하여 UI 이벤트가 발생할 때 눈(404)의 하나의 눈 이미지(400a)를 캡처할 수 있다. ARD(104)는 디스플레이(416)의 특정 위치에서 가상 UI 디바이스(412)를 보여줄 수 있다. 예컨대, 가상 UI 디바이스(412)는 디스플레이(416)의 중앙에 위치될 수 있다. 눈(404)은 도 4에 예시된 바와 같이 포인팅 방향(408a)을 가질 수 있다. 그러나, 사용자는 자신들의 눈들로 가상 UI 디바이스(412)의 정확한 중심 또는 다른 위치들을 가리킬 수 있다.
[0057] 도 1의 ARD(104) 및 NN 재트레이닝 시스템(120) 중 하나 또는 둘 모두는, 눈 이미지(400a)로부터, 한 세트의 트레이닝 눈 이미지들(400b-400d)을 자동으로 생성할 수 있다. 한 세트의 트레이닝 눈 이미지들 중 눈 이미지들(400b-400d)은 상이한 포인팅 방향들(408b-408d) 및 가상 UI 디바이스(412) 상의 대응하는 상이한 포인팅 위치들을 가질 수 있다. 일부 실시예들에서, 자동으로 생성된 눈 이미지들(400b-400d) 및 이들 눈 이미지들(400b-400d)을 생성하는 데 사용된 캡처된 눈 이미지(400a)는 동일할 수 있다. 캡처 및 생성된 눈 이미지들(400a-400d)은 포인팅 방향들(408a-408d)과 연관될 수 있다. 한 세트의 트레이닝 눈 이미지들은 캡처된 눈 이미지들(400a) 및 생성된 눈 이미지들(400b-400d)을 포함할 수 있다. 포인팅 위치들, 따라서 포인팅 방향들(408b-408d)은 알려진 또는 컴퓨팅된 확률 분포 함수로부터 랜덤하게 생성될 수 있다. 확률 분포 함수의 일 예는 가상 UI 디바이스(412)의 중심 포인트 주위의 가우시안 분포이다. 다른 분포들이 가능하다. 예컨대, 분포는 경험, 관찰들 또는 실험들로부터 학습될 수 있다.
[0058] 도 5는 텍스트 설명이 디스플레이된 가상 UI 디바이스에 대해 상이한 포인팅 방향들을 갖는 눈 이미지들을 생성하기 위한 확률 분포를 컴퓨팅하는 예를 예시한다. 가상 UI 디바이스(500)는 둘 이상의 컴포넌트들을 포함할 수 있다. 예컨대, 가상 UI 디바이스(500)는 그래픽 컴포넌트(504a) 및 그래픽 컴포넌트(504a)를 설명하는 텍스트 컴포넌트(504b)를 포함할 수 있다. 2개의 컴포넌트들(504a, 504b)은 중첩될 수 있다. 그래픽 컴포넌트(504a)는 제1 확률 분포 함수(508a)와 연관될 수 있다. 텍스트 컴포넌트(504b)는 제2 확률 분포 함수(508b)와 연관될 수 있다. 예컨대, 가상 UI 디바이스 내의 또는 상의 텍스트는 텍스트 자체에 걸쳐 약간의 확률 및 일부 분포로 시선을 끌 수 있다. 가상 UI 디바이스(500)는 2개의 확률 분포 함수들(508a, 508b)의 컴퓨팅 또는 결합된 확률 분포 함수와 연관될 수 있다. 예컨대, 버튼에 대한 확률 분포 함수는 버튼의 그래픽 및 텍스트 컴포넌트들의 확률 분포 함수들을 조립함으로써 전체적으로 결정될 수 있다.
예시적인 밀도 정규화
[0059] ARD의 디스플레이는 상이한 눈 포즈 구역들에 대응하는 다수의 구역들을 포함할 수 있다. 예컨대, 디스플레이(예컨대, 도 11의 머리 장착 디스플레이 시스템(1100)의 디스플레이(1108))는 다수(예컨대, 2, 3, 4, 5, 6, 9, 12, 18, 24, 36, 49, 64, 128, 256 또는 1000개 이상)의 눈 포즈 구역들과 연관될 수 있다. 도 6은 상이한 눈 포즈 구역들에 대응하는 디스플레이의 다수의 구역들을 갖는 증강 현실 디바이스의 예시적인 디스플레이(600)를 예시한다. 디스플레이(600)는 25개의 구역들(604r11-604r55)을 포함한다. 디스플레이(600) 및 눈 포즈 구역들은 동일하거나 상이한 크기들 또는 형상들(이를테면, 직사각형, 정사각형, 원형, 삼각형, 타원형 또는 다이아몬드)을 가질 수 있다. 눈 포즈 구역은 실제 2-차원 좌표 공간(
Figure pct00001
) 또는 양의 정수 2-차원 좌표 공간(
Figure pct00002
)2 ― 이는 착용자의 눈 포즈의 각도 공간에 관하여 해당 눈 포즈 구역을 지정함 ― 의 연결된 서브세트로서 간주될 수 있다. 예컨대, 눈 포즈 구역은 (기준 방위각으로부터 측정된) 방위각 편향에서 특정 θmin과 특정 θmax 사이에 그리고 천정 편향(극성 편향으로 또한 지칭됨)에서 특정 φmin과 특정 φmax 사이에 있을 수 있다.
[0060] 가상 UI 디바이스들은 디스플레이(600)에 대해 균일하게 분포되지 않을 수 있다. 예컨대, 디스플레이(600)의 주변부(예컨대, 극단 에지들)(예컨대, 디스플레이 구역들(604r11-604r15, 604r21, 604r25, 604r31, 604r35, 604r41, 604r45 또는 604r51-604r55))에서의 UI 엘리먼트들은 드물 수 있다. 가상 UI 디바이스가 디스플레이(600)의 에지에서 나타날 때, 사용자는, UI 디바이스와 상호작용하기 전에, ARD의 맥락에서, 가상 UI 디바이스를 중심(예컨대, 디스플레이 구역(604r33))으로 유도하기 위해 자신의 머리를 회전시킬 수 있다. 밀도들에서의 불균형(disparity)으로 인해, 재트레이닝 세트가 디스플레이(600)의 중앙 구역(예컨대, 디스플레이 구역들(604r22-604r24, 604r32-604r34 또는 604r42-604r44))에서의 추적을 개선할 수 있을지라도, 주변부 근처에서의 추적 성능이 추가로 개선될 수 있다.
[0061] 본원에 개시된 시스템들 및 방법들은, 재트레이닝 세트의 멤버들의 밀도를 각도 공간에서 더 균일하게 하는 방식으로 재트레이닝 세트를 생성할 수 있다. 고밀도 구역들의 포인트들은, 재트레이닝 세트를 각도 공간에서 더 균일하게 렌더링하기 위해 더 낮은 확률로 재트레이닝 세트에 의도적으로 포함될 수 있다. 예컨대, UI 이벤트들이 발생할 때 가상 UI 디바이스들의 위치들이 수집될 수 있고, 이러한 가상 UI 디바이스들의 밀도 분포가 결정될 수 있다. 예컨대, 천정과 방위각이 한정된 수의 빈들(bins)로 “비닝"되고 각각의 빈에서 이벤트들이 카운팅되는 각도 공간에서 히스토그램을 생성함으로써 이것이 이루어질 수 있다. 빈들은 대칭될 수 있다(예컨대, 디스플레이 구역들은 각도 공간의 절반 또는 1/4에만 투사될 수 있음). 예컨대, 디스플레이 구역들(604r51-604r55)은 디스플레이 구역들(604r11-604r15)에 투사될 수 있다. 다른 예로서, 디스플레이 구역들(604r15, 604r51, 604r55)은 디스플레이 구역(604r11)에 투사될 수 있다.
[0062] 일단 이러한 히스토그램이 컴퓨팅되면, UI 이벤트들이 발생할 때 캡처된 눈 이미지들이 확률(p)로 폴리싱 세트에 추가될 수 있다. 예컨대, 확률(p)은 아래 수학식 1을 사용하여 결정될 수 있다.
Figure pct00003
여기서 q(θ,φ)는, 방위각(θ) 및 천정각(φ)과 연관된 빈에서 임의의 가상 UI 디바이스(또는 특정 가상 UI 디바이스 또는 특정 타입의 가상 UI 디바이스)의 정규화된 확률을 나타낸다.
밀도 정규화의 예시적인 방법
[0063] 도 7은, 뉴럴 네트워크를 재트레이닝하기 위해 눈 이미지들을 수집할 때 관찰되는 UI 이벤트들의 밀도 정규화를 수행하는 예시적인 방법의 흐름도를 도시한다. ARD는, UI(사용자 인터페이스) 이벤트들이 발생할 때 사용자의 눈 이미지들을 캡처할 수 있다. 예컨대, 도 1의 ARD(104)는, 사용자 인터페이스 이벤트들이 발생할 때 사용자의 도 2의 눈(200)의 이미지들 또는 눈 이미지들(112)을 캡처할 수 있다. 디스플레이 위치에서의 가상 UI 디바이스에 관련하여, UI 이벤트가 발생할 때 캡처된 눈 이미지를 재트레이닝 세트가 포함하는지 여부는 디스플레이의 상이한 구역들 또는 상이한 눈 포즈 구역들에서의 UI 디바이스들의 분포를 사용하여 결정될 수 있다. 도 1의 ARD(104) 또는 NN 재트레이닝 시스템(120)은 디스플레이의 상이한 구역들 또는 눈 포즈 구역들에서 UI 디바이스들의 분포를 사용하여 재트레이닝 세트를 생성할 수 있다.
[0064] 블록(704)에서, 사용자의 복수의 제1 재트레이닝 눈 이미지들이 선택적으로 수신된다. 각각의 눈 이미지는, 예컨대, 제1 디스플레이 위치에서 사용자에게 보여지는 제1 가상 UI 디바이스에 관련하여, 제1 UI 이벤트가 발생할 때, ARD의 내향 이미징 시스템을 사용하여 캡처될 수 있다. 예컨대, 사용자가 디스플레이 위치(604r33)에 디스플레이된 가상 버튼을 활성화할 때, 눈 이미지가 캡처될 수 있다. 상이한 UI 이벤트들과 연관된 가상 UI 디바이스들은 디스플레이(600)의 상이한 디스플레이 구역들(604r11-604r55)에서 디스플레이될 수 있다. 가상 UI 디바이스의 인스턴스들은 디스플레이(600)의 상이한 구역들(604r11-604r55)에서 디스플레이될 수 있다.
[0065] 블록(708)에서, 다양한 눈 포즈 또는 디스플레이 구역들에서 제1 UI 디바이스들의 제1 디스플레이 위치들의 분포가 선택적으로 결정될 수 있다. 예컨대, 분포를 결정하는 것은, 눈 포즈 구역들 또는 디스플레이 구역들에서, 제1 복수의 재트레이닝 눈 이미지들이 캡처될 때 사용자에게 보여지는, UI 디바이스들의 제1 디스플레이 위치들의 분포를 결정하는 것을 포함할 수 있다. UI 디바이스가 제1 눈 포즈 구역에 있을 분포 확률을 결정하는 것은, UI 디바이스들의 디스플레이 위치들의 분포를 사용하여, UI 디바이스가 제1 눈 포즈 구역에 있을 분포 확률을 결정하는 것을 포함할 수 있다. 분포는 하나의 UI 디바이스에 관련하여 결정될 수 있고, 하나, 또는 둘 이상의 UI 디바이스들에 대해 하나의 분포가 결정될 수 있다. 일부 실시예들에서, 다양한 눈 포즈 또는 디스플레이 구역들에서 제1 UI 디바이스들의 제1 디스플레이 위치들의 분포가 수신될 수 있다.
[0066] 블록(712)에서, 사용자의 제2 재트레이닝 눈 이미지가 수신될 수 있다. 사용자의 제2 재트레이닝 눈 이미지는, 제2 디스플레이 위치에서 사용자에게 보여지는 제2 UI 디바이스에 관련하여, 제2 UI 이벤트가 발생할 때 캡처될 수 있다. 제1 UI 디바이스 및 제2 UI 디바이스는 동일하거나 상이할 수 있다(예컨대, 버튼 또는 슬라이더). 제1 UI 이벤트 및 제2 UI 이벤트는 동일한 타입 또는 상이한 타입들의 UI 이벤트들(예컨대, 클릭 또는 터치)일 수 있다.
[0067] 블록(716)에서, 제2 UI 디바이스의 제2 디스플레이 위치가 눈 포즈 구역 또는 디스플레이 구역에 있을 포함 확률이 결정될 수 있다. 예컨대, 제2 UI 디바이스는 디스플레이 주변에서의 디스플레이 구역(예컨대, 도 6의 디스플레이 구역(604r11))에서 디스플레이될 수 있다. 제2 UI 디바이스가 디스플레이의 주변에 있을 확률은 낮을 수 있다.
[0068] 블록(716)에서, 재트레이닝 세트의 재트레이닝 입력 데이터가 생성될 수 있다. 재트레이닝 세트는 포함 확률로 재트레이닝 눈 이미지를 포함할 수 있다. 포함 확률은 분포 확률에 관련될 수 있다. 예컨대, 포함 확률 및 분포 확률은 역으로 관련될 수 있다. 일부 실시예들에서, 디스플레이 구역들 또는 눈 포즈 구역들이 대칭될 수 있다(예컨대, 디스플레이 구역들은 각도 공간의 절반 또는 1/4에만 투사될 수 있음). 예컨대, 디스플레이 구역들(604r51-604r55)은 디스플레이 구역들(604r11-604r15)에 투사될 수 있다. 다른 예로서, 디스플레이 구역들(604r15, 604r51, 604r55)은 디스플레이 구역(604r11)에 투사될 수 있다. 또 다른 예로서, 디스플레이(600)의 일측의 디스플레이 구역들(604r15, 604r14)은 디스플레이(600)의 타측의 디스플레이 구역들(604r11, 604r12)에 투사될 수 있다.
눈 시선의 예시적인 역 추적
[0069] 디스플레이 영역의 에지 근처의 이벤트들은 드물 것으로 예상될 수 있다. 예컨대, ARD의 사용자는, 물리적 디바이스와의 상호작용들과 유사하게, 가상 UI 디바이스와 상호작용하기 전에 가상 UI 디바이스를 향해 자신의 머리를 돌리는 경향이 있을 수 있다. UI 이벤트의 순간에서, 가상 UI 디바이스가 중앙에 위치될 수 있다. 그러나, 사용자는, 이러한 종류의 머리 회전(swivel) 전에 그리고 그 동안에 중심에 위치되지 않은 가상 UI 디바이스를 응시하는 경향을 가질 수 있다. 본원에 개시된 시스템들 및 방법들은, UI 이벤트로부터 이러한 머리 회전을 후방으로 추적함으로써 재트레이닝 세트를 생성할 수 있다.
[0070] 도 8은 UI 디바이스에 관련하여 눈 포즈(예컨대, 눈 시선)의 역 추적의 예시적인 예시를 도시한다. ARD(예컨대, 도 1의 ARD(104))는, "머리 회전"을 캡처하기에 충분한 양의 시간(예컨대, 1초) 동안 지속되는 이미지들 및 ARD 운동을 저장하는 버퍼를 포함할 수 있다. 디스플레이의 디스플레이 위치에 도시된 가상 UI 디바이스(804)에 대한 UI 이벤트가 (예컨대, 시간 = 0에서) 발생할 수 있다. 예컨대, 가상 UI 디바이스(804)는, UI 이벤트가 발생할 때 위치(808a)에서 중앙에 위치될 수 있다. 운동(예컨대, 균일한 각운동)에 대해 버퍼가 검사될 수 있다. 예컨대, ARD는 외향 카메라(예컨대, 도 13을 참조하여 설명된 외향 이미징 시스템(1354))를 사용하여 캡처된 사용자의 환경의 이미지들(812a, 812b)을 버퍼에 저장할 수 있다. 도 8에 도시된 바와 같이, 사용자의 머리는 좌측에서 우측으로 회전하고, 이는 사용자의 환경의 이미지들(812a, 812b)에서 산(816)의 상대적인 포지션에 의해 반영된다.
[0071] 균일한 각운동과 같은 균일한 운동(또는 충분히 균일한 운동)이 검출되면, UI 디바이스(804)는, 이른 시간(예컨대, 시간 = -N)에 UI 디바이스(804)의 투사된 디스플레이 위치(808p)를 결정하기 위해, 해당 균일한 각운동을 따라 후방으로 투사될 수 있다. 투사된 디스플레이 위치(808p)는 선택적으로, UI 디바이스(804)가 운동의 시작에서 보인다는 것을 검증하는 데 사용될 수 있다. 예컨대, 가상 UI 디바이스(804)의 투사된 위치(808p) 및 위치(808b)가 비교될 수 있다. 균일한 운동이 검출되고 시야에서 디바이스로부터 유래될 수 있다면, 해당 운동 동안에 (예컨대, 회전 동안에 무언가에 일정한 응시가 존재하는 것처럼) 사용자의 눈들이 해당 운동에 따라 원활하게 스위핑(sweeping)한다고 검증하기 위한 검증이 NN(예컨대, 눈 추적을 위한 트레이닝된 NN(108))을 사용하여 이루어질 수 있다. 예컨대, 눈 이미지들(820a, 820b)에서 사용자의 눈(824)의 운동은 트레이닝된 NN을 사용하여 결정될 수 있다. 이러한 원활한 스위핑이 결정되면, 사용자는, 자신이 궁극적으로 활성화 또는 작동시키는 가상 UI 디바이스에 고정된 것으로 간주될 수 있다. 재트레이닝 세트는 재트레이닝 입력 데이터 및 대응하는 재트레이닝 타겟 출력 데이터를 포함할 수 있다. 재트레이닝 입력 데이터는 눈 이미지들(820a, 820b)을 포함할 수 있다. 대응하는 재트레이닝 타겟 출력 데이터는 UI 이벤트 시에 가상 UI 디바이스(804)의 위치 및 가상 UI 디바이스의 투사된 위치들(예컨대, 투사된 위치(808p))을 포함할 수 있다.
눈 시선의 역 추적의 예시적인 방법
[0072] 도 9는 UI 디바이스에 관련하여 눈 시선의 역 추적의 예시적인 방법의 흐름도를 도시한다. ARD(예컨대, 도 1의 ARD(104))는 눈 시선의 역 추적을 위한 방법(900)을 수행할 수 있다. 블록(904)에서, 사용자의 눈의 복수의 눈 이미지들이 수신될 수 있다. 예컨대, 도 8의 사용자의 눈(824)의 눈 이미지들(820a, 820b)이 수신될 수 있다. 복수의 눈 이미지들 중 제1 눈 이미지는, 제1 디스플레이 위치에서 사용자에게 보여지는 UI 디바이스에 관련하여 UI 이벤트가 발생할 때 캡처될 수 있다. 예컨대, 도 8에 도시된 바와 같이, 눈 이미지(820a)는, 디스플레이 위치(808a)에서 가상 UI 디바이스(804)에 관련하여 UI 이벤트가 발생할 때 캡처된다.
[0073] 블록(908)에서, UI 디바이스의 투사된 디스플레이 위치가 결정될 수 있다. 투사된 디스플레이 위치는 제1 디스플레이 위치로부터, UI 이벤트 이전의 운동을 따라 후방으로, 운동의 시작까지 결정될 수 있다. 예컨대, 도 8은 UI 디바이스(804)의 투사된 디스플레이 위치(808p)가 결정될 수 있음을 도시한다. UI 디바이스(804)의 투사된 디스플레이 위치(808p)는 시간 = 0에서의 디스플레이 위치(808a)로부터, UI 이벤트 이전의 운동을 따라 후방으로, 시간 = -N에서의 운동의 시작까지 결정될 수 있다. 운동은 각운동, 균일한 운동 또는 이들의 조합을 포함할 수 있다.
[0074] 블록(912)에서, 운동의 시작에서 캡처된 복수의 눈 이미지들 중 제2 눈 이미지에서 가상 UI 디바이스의 투사된 디스플레이 위치(808p) 및 가상 UI 디바이스의 제2 디스플레이 위치가 임계 거리 내에 있는지 여부가 결정될 수 있다. 도 8은 시간 = -N에서 운동의 시작에서 가상 UI 디바이스(804)의 투사된 위치(808p) 및 위치(808b)가 임계치 내에 있을 수 있음을 예시한다. 임계치는 픽셀들의 수(예컨대, 20, 10, 5, 또는 2개 이하의 픽셀들), ARD의 디스플레이 크기의 퍼센티지(예컨대, 20 %, 15 %, 10 %, 5 %, 또는 2 % 이하), 가상 UI 디바이스 크기의 퍼센티지(예컨대, 20 %, 15 %, 10 %, 5 %, 또는 2 % 이하) 또는 이들의 조합일 수 있다.
[0075] 블록(916)에서, 제2 눈 이미지로부터 제1 눈 이미지까지 복수의 눈 이미지들의 눈 이미지들에서, 사용자의 눈이 운동에 따라 원활하게 움직이는지 여부가 선택적으로 결정될 수 있다. 시간 = -N에서 운동의 시작 시에 캡처된 눈 이미지(820b) 및 UI 이벤트가 시간 = 0에 발생할 때 캡처된 눈 이미지(820a)로부터의 눈 이미지들에서, 눈(824)이 원활하게 움직이는지 여부가 결정될 수 있다. 예컨대, 눈 이미지(820b)로부터 눈 이미지(820a)까지의 눈 이미지들에서 눈(824)의 시선 방향들은 눈 추적을 위한 트레이닝된 NN을 사용하여 결정될 수 있다.
[0076] 블록(920)에서, 제2 눈 이미지로부터 제1 눈 이미지까지의 눈 이미지들을 포함하는 재트레이닝 세트가 생성될 수 있다. 각각의 눈 이미지는 UI 디바이스의 디스플레이 위치와 연관될 수 있다. 예컨대, 재트레이닝 세트는, 재트레이닝 입력 데이터로서, 시간 = -N에서 운동의 시작 시에 캡처된 눈 이미지(820b)로부터, UI 이벤트가 시간 = 0에서 발생할 때 캡처된 눈 이미지(820a)까지의 눈 이미지들을 포함할 수 있다. 재트레이닝 세트는, 대응하는 재트레이닝 타겟 출력 데이터로서, 디스플레이 위치(808a), 투사된 위치(808p) 및 디스플레이 위치(808a)와 투사된 위치(808p) 사이의 투사된 위치들을 포함할 수 있다.
예시적인 NN들
[0077] DNN(deep neural network)과 같은 NN(neural network)의 계층은, 자시의 출력을 생성하기 위해, 자신의 입력에 선형 또는 비-선형 변환을 적용할 수 있다. 심층 뉴럴 네트워크 계층은 정규화 계층, 콘볼루션 계층, 소프트사인 계층(softsign layer), 정류된 선형 계층(rectified linear layer), 연접 계층(concatenation layer), 풀링 계층, 재귀 계층(recurrent layer), 인셉션형 계층(inception-like layer) 또는 이들의 임의의 조합일 수 있다. 정규화 계층은, 예컨대, L2 정규화로 자신의 출력을 생성하기 위해 자신의 입력의 밝기를 정규화할 수 있다. 정규화 계층은, 예컨대, 자신의 출력으로서 복수의 정규화된 이미지들을 생성하기 위해, 서로에 대해 복수의 이미지들의 밝기를 한 번에 정규화할 수 있다. 밝기를 정규화하기 위한 방법들의 비-제한적인 예들은 LCN(local contrast normalization) 또는 LRN(local response normalization)을 포함한다. 로컬 대비 정규화는 제로의 평균 및 1의 분산(또는 다른 평균 및 분산의 값들)을 갖도록 픽셀마다 이미지의 로컬 구역들을 정규화함으로써 이미지의 대비를 비-선형적으로 정규화할 수 있다. 로컬 응답 정규화는, 제로의 평균 및 1의 분산(또는 다른 평균 및 분산의 값들)을 갖도록 로컬 입력 구역들에 걸쳐 이미지를 정규화할 수 있다. 정규화 계층은 트레이닝 프로세스를 가속시킬 수 있다.
[0078] 콘볼루션 계층은, 자신의 출력을 생성하기 위해 자신의 입력을 콘볼루션(convolve)하는 커널들의 세트를 적용할 수 있다. 소프트사인 계층은 소프트사인 함수를 자신의 입력에 적용할 수 있다. 소프트사인 함수(softsign(x))는, 예컨대, (x /(1+|x|))일 수 있다. 소프트사인 계층은 엘리먼트별 이상치들(outliers)의 영향을 무시할 수 있다. 정류된 선형 계층은 ReLU(rectified linear layer unit) 또는 PReLU(parameterized rectified linear layer unit)일 수 있다. ReLU 계층은 자신의 출력을 생성하기 위해 ReLU 함수를 자신의 입력에 적용할 수 있다. ReLU 함수 ReLU(x)는, 예컨대, max(0, x)일 수 있다. PReLU 계층은 자신의 출력을 생성하기 위해 PReLU 함수를 자신의 입력에 적용할 수 있다. PReLU 함수 PReLU(x)는, 예컨대, x가 ≥ 0인 경우 x이고, x <0인 경우 αx일 수 있고, 여기서 α는 양수이다. 연접 계층은 자신의 출력을 생성하기 위해 자신의 입력을 연접시킬 수 있다. 예컨대, 연접 계층은 하나의 20 x 20 이미지를 생성하기 위해 4개의 5 x 5 이미지들을 연접시킬 수 있다. 풀링 계층은 자신의 출력을 생성하기 위해 자신의 입력을 다운 샘플링하는 풀링 함수를 적용할 수 있다. 예컨대, 풀링 계층은 20 x 20 이미지를 10 x 10 이미지로 다운 샘플링할 수 있다. 풀링 함수의 비-제한적인 예들은 최대 풀링, 평균 풀링 또는 최소 풀링을 포함한다.
[0079] 시점(t)에서, 재귀 계층은 은닉 상태(s(t))를 컴퓨팅할 수 있고, 재귀 연결은 시점(t)에서의 은닉 상태(s(t))를 후속 시점(t+1)에서의 입력으로서 재귀 계층에 제공할 수 있다. 재귀 계층은 시간(t)에서의 은닉 상태(s(t))에 기반하여 시간(t+1)에서의 자신의 출력을 컴퓨팅할 수 있다. 예컨대, 재귀 계층은, 시간(t+1)에서 출력을 컴퓨팅하기 위해 시간(t)에서의 은닉 상태(s(t))에 소프트사인 함수를 적용할 수 있다. 시간(t+1)에서의 재귀 계층의 은닉 상태는 자신의 입력으로서 시간(t)에서의 재귀 계층의 은닉 상태(s(t))를 갖는다. 재귀 계층은, 예컨대, 자신의 입력에 ReLU 함수를 적용함으로써 은닉 상태(s(t+1))를 컴퓨팅할 수 있다. 인셉션형 계층은 정규화 계층, 콘볼루션 계층, 소프트사인 계층, ReLU 계층 및 PReLU 계층과 같은 정류된 선형 계층, 연접 계층, 풀링 계층, 또는 이들의 임의의 조합 중 하나 이상을 포함할 수 있다.
[0080] NN의 계층들의 수는 상이한 구현들에서 상이할 수 있다. 예컨대, DNN의 계층들의 수는 50, 100, 또는 200개 이상일 수 있다. 심층 뉴럴 네트워크 계층의 입력 타입은 상이한 구현들에서 상이할 수 있다. 예컨대, 계층은 자신의 입력으로서 다수의 계층들의 출력들을 수신할 수 있다. 계층의 입력은 5개의 계층들의 출력들을 포함할 수 있다. 다른 예로서, 계층의 입력은 NN의 계층들 중 1 %를 포함할 수 있다. 계층의 출력은 다수의 계층들의 입력들일 수 있다. 예컨대, 계층의 출력은 5개의 계층들의 입력들로서 사용될 수 있다. 다른 예로서, 계층의 출력은 NN의 계층 중 1 %의 입력들로서 사용될 수 있다.
[0081] 계층의 입력 크기 또는 출력 크기가 상당히 클 수 있다. 계층의 입력 크기 또는 출력 크기는 n x m일 수 있고, 여기서 n은 폭을 나타내고, m은 입력 또는 출력의 높이를 나타낸다. 예컨대, n 또는 m은 11, 21, 또는 31 이상일 수 있다. 계층의 입력 또는 출력의 채널 크기들은 상이한 구현들에서 상이할 수 있다. 예컨대, 계층의 입력 또는 출력의 채널 크기는 4, 16, 32, 64, 또는 128 이상일 수 있다. 계층의 커널 크기는 상이한 구현들에서 상이할 수 있다. 예컨대, 커널 크기는 n x m일 수 있고, 여기서 n은 폭을 나타내고, m은 커널의 높이를 나타낸다. 예컨대, n 또는 m은 5, 7, 또는 9 이상일 수 있다. 계층의 보폭(stride size)은 상이한 구현들에서 상이할 수 있다. 예컨대, 심층 뉴럴 네트워크 계층의 보폭은 3, 5, 또는 7 이상일 수 있다.
[0082] 일부 실시예들에서, NN은, NN의 출력을 함께 컴퓨팅하는 복수의 NN들을 지칭할 수 있다. 복수의 NN들 중 상이한 NN들은 상이하거나, 유사하거나 또는 동일한 작업들에 대해 트레이닝될 수 있다. 예컨대, 복수의 NN들 중 상이한 NN들은 눈 추적을 위해 상이한 눈 이미지들을 사용하여 트레이닝될 수 있다. 복수의 NN들 중 상이한 NN들을 사용하여 결정된 눈 이미지에서의 눈의 눈 포즈(예컨대, 시선 방향)는 상이할 수 있다. NN의 출력은, 복수의 NN들 중 상이한 NN들을 사용하여 결정된 눈 포즈들의 평균인 눈의 눈 포즈일 수 있다. 다른 예로서, 복수의 NN들 중 상이한 NN들은, 상이한 디스플레이 위치들에서 UI 디바이스들에 관련하여 UI 이벤트들이 발생할 때 캡처된 눈 이미지들에서 눈의 눈 포즈를 결정하는 데 사용될 수 있다(예컨대, UI 디바이스들이 중앙에 위치될 때, 하나의 NN, 및 UI 디바이스들이 ARD의 디스플레이의 주변에 있을 때 하나의 NN).
예시적인 증강 현실 시나리오
[0083] 현대 컴퓨팅 및 디스플레이 기술들은 소위 "가상 현실" 또는 "증강 현실" 경험들을 위한 시스템들의 개발을 용이하게 했으며, 여기서 디지털적으로 재생된 이미지들 또는 이미지들의 부분들은, 그들이 실제인 것으로 보이거나, 실제로서 지각될 수 있는 방식으로 사용자에게 제시된다. 가상 현실(VR) 시나리오는 통상적으로 다른 실제 실세계 시각적 입력에 대한 투명성(transparency) 없이 디지털 또는 가상 이미지 정보의 프리젠테이션(presentation)을 수반하고; 증강 현실(AR) 시나리오는 통상적으로 사용자 주위 실제 세계의 시각화에 대한 증강으로서 디지털 또는 가상 이미지 정보의 프리젠테이션을 수반하거나, 또는 혼합 현실(MR) 시나리오는 통상적으로, 물리적 및 가상 객체들이 공존하고 실시간으로 상호작용하는 새로운 환경을 생성하기 위해 실세계와 가상 세계를 병합하는 것을 수반한다. 밝혀진 바와 같이, 인간 시각적 지각 시스템은 매우 복잡하고, 다른 가상 또는 실세계 이미저리 엘리먼트들 사이에서 가상 이미지 엘리먼트들의 편안하고, 자연스럽고, 풍부한 프리젠테이션을 용이하게 하는 VR, AR 또는 MR 기술을 생성하는 것은 난제이다. 본원에 개시된 시스템들 및 방법들은 VR, AR 및 MR 기술에 관련된 다양한 난제들을 해결한다.
[0084] 도 10은, 사람에 의해 관찰되는 특정 실제 현실 객체들 및 특정 가상 현실 객체들을 갖는 혼합 현실 시나리오의 예시를 도시한다. 도 10은, 증강 현실 장면(scene)(1000)을 도시하며, 여기서 AR 기술의 사용자는 배경에 있는 사람들, 나무들, 빌딩들, 및 콘크리트 플랫폼(1020)을 특징으로 하는 실세계 공원-형 세팅(1010)을 본다. 이들 아이템들 이외에, AR 기술의 사용자는 또한, 그가 실세계 플랫폼(1020) 상에 서 있는 로봇 동상(1030), 및 호박벌의 의인화인 것으로 보여지는 날고 있는 만화-형 아바타 캐릭터(1040)(예컨대, 호박벌)를 보는 것을 지각하더라도, 이들 엘리먼트들은 실세계에 존재하지 않는다.
[0085] 3-D(three-dimensional) 디스플레이가 진정한 깊이감(sensation of depth) 및 보다 구체적으로, 시뮬레이팅된 표면 깊이감을 생성하기 위해, 디스플레이의 시계(visual field)의 각각의 지점이 그의 가상 깊이에 대응하는 원근조절 응답을 생성하는 것이 바람직하다. 디스플레이 지점에 대한 원근조절 응답이 수렴 및 입체시(stereopsis)의 양안 깊이 단서들에 의해 결정된 바와 같은 그 지점의 가상 깊이에 대응하지 않는 경우, 인간의 눈은 원근조절 충돌을 경험할 수 있어, 불안정한 이미징, 유해한 눈의 피로, 두통들, 그리고 원근조절 정보의 부재 시에, 표면 깊이의 거의 완전한 결여를 초래할 수 있다.
[0086] VR, AR 및 MR 경험들은 복수의 깊이 평면들에 대응하는 이미지들이 뷰어에게 제공되는 디스플레이들을 갖는 디스플레이 시스템들에 의해 제공될 수 있다. 이미지들은 각각의 깊이 평면에 대해 상이할 수 있고(예컨대, 장면 또는 객체의 약간 상이한 프리젠테이션들을 제공함), 뷰어의 눈들에 의해 별개로 초점이 맞춰질 수 있고, 이로써 상이한 깊이 평면 상에 위치되는 장면에 대한 상이한 이미지 피처들에 초점을 맞추도록 요구되는 눈의 원근조절에 기반하여 그리고/또는 상이한 깊이 평면들 상의 상이한 이미지 피처들이 초점에서 벗어나게(out of focus) 되는 것을 관찰하는 것에 기반하여 깊이 단서들을 사용자에게 제공하는 것을 돕는다. 본원의 다른 곳에서 논의된 바와 같이, 이러한 깊이 단서들은 깊이의 신뢰할 수 있는 지각들을 제공한다. VR, AR 및 MR 경험들을 생성하거나 향상시키기 위해, 디스플레이 시스템들은 이러한 경험들을 향상시키기 위해 생체인식 정보를 사용할 수 있다.
예시적인 웨어러블 디스플레이 시스템
[0087] 도 11은 디스플레이 시스템 착용자 또는 뷰어(1104)에 VR, AR 또는 MR 경험을 제시하는 데 사용될 수 있는 웨어러블 디스플레이 시스템(1100)의 예를 예시한다. 웨어러블 디스플레이 시스템(1100)은 본원에서 설명된 애플리케이션들 또는 실시예들 중 임의의 것을 수행하도록 프로그래밍될 수 있다. 디스플레이 시스템(1100)은 디스플레이(1108), 및 그 디스플레이(1108)의 기능을 지원하기 위한 다양한 기계적 및 전자적 모듈들 및 시스템들을 포함한다. 디스플레이(1108)는, 디스플레이 시스템 사용자, 착용자 또는 뷰어(1104)에 의해 착용 가능하고 그리고 착용자(1104)의 눈들의 전면에 디스플레이(1108)를 포지셔닝하도록 구성된 프레임(1112)에 커플링될 수 있다. 디스플레이(1108)는 광 필드 디스플레이일 수 있다. 일부 실시예들에서, 스피커(1116)는 프레임(1112)에 커플링되고 사용자의 외이도에 인접하게 포지셔닝된다. 일부 실시예들에서, 도시되지 않은 다른 스피커가 사용자의 다른 외이도에 인접하게 포지셔닝되어 입체 음향/성형 가능 사운드 제어를 제공한다. 디스플레이(1108)는 이를테면, 유선 리드 또는 무선 연결성에 의해, 다양한 구성들로 장착될 수 있는, 이를테면, 프레임(1112)에 고정되게 부착되거나, 사용자에 의해 착용된 헬멧 또는 모자에 고정되게 부착되거나, 헤드폰들에 내장되거나, 그렇지 않으면 사용자(1104)에게 제거 가능하게 부착되는 (예컨대, 백팩(backpack)-스타일 구성으로, 벨트-커플링 스타일 구성으로) 로컬 데이터 프로세싱 모듈(1124)에 동작 가능하게 커플링(1120)된다.
[0088] 프레임(1112)은 착용자의 눈(들)의 이미지들을 획득하기 위해 프레임(1112)에 부착되거나 장착되는 하나 이상의 카메라들을 가질 수 있다. 일 실시예에서, 카메라(들)는, 눈이 직접 이미징될 수 있도록, 착용자의 눈 전면에서 프레임(1112)에 장착될 수 있다. 다른 실시예들에서, 카메라는 프레임(1112)의 스템(stem)을 따라 (예컨대, 착용자의 귀 근처에) 장착될 수 있다. 이러한 실시예들에서, 디스플레이(1108)는 착용자의 눈으로부터 카메라를 향해 광을 다시 반사하는 재료로 코팅될 수 있다. 광은, 홍채 특징들이 적외선 이미지들에서 현저하기 때문에 적외선 광일 수 있다.
[0089] 로컬 프로세싱 및 데이터 모듈(1124)은 하드웨어 프로세서뿐만 아니라, 비-일시적인 디지털 메모리 이를테면, 비-휘발성 메모리(예컨대, 플래시 메모리)를 포함할 수 있고, 이 둘 모두는 데이터의 프로세싱, 캐싱(caching) 및 저장을 보조하기 위해 활용될 수 있다. 데이터는 a) 센서들(예컨대 프레임(1112)에 동작 가능하게 커플링되거나 그렇지 않으면 사용자(1104)에게 부착될 수 있음), 예컨대, 이미지 캡처 디바이스들(예컨대, 카메라들), 마이크로폰들, 관성 측정 유닛들, 가속도계들, 컴퍼스(compass)들, GPS 유닛들, 라디오 디바이스들, 및/또는 자이로(gyro)들로부터 캡처되고; 및/또는 b) 원격 프로세싱 모듈(1128) 및/또는 원격 데이터 저장소(1132)를 사용하여 취득 및/또는 프로세싱되는 (가능하게는, 이러한 프로세싱 또는 리트리벌(retrieval) 후 디스플레이(1108)에 전달하기 위한) 데이터를 포함할 수 있다. 로컬 프로세싱 및 데이터 모듈(1124)은 통신 링크들(1136 및/또는 1140)에 의해, 이를테면, 유선 또는 무선 통신 링크들을 통해 원격 프로세싱 모듈(1128) 및 원격 데이터 저장소(1132)에 동작 가능하게 커플링될 수 있어서, 이들 원격 모듈들(1128, 1132)은 자원들로서 로컬 프로세싱 및 데이터 모듈(1124)에 대해 이용 가능하게 된다. 이미지 캡처 디바이스(들)는 눈 이미지 절차들에서 사용되는 눈 이미지들을 캡처하는 데 사용될 수 있다. 게다가, 원격 프로세싱 모듈(1128) 및 원격 데이터 저장소(1132)는 서로 동작 가능하게 커플링될 수 있다.
[0090] 일부 실시예들에서, 원격 프로세싱 모듈(1128)은 데이터 및/또는 이미지 정보, 이를테면, 이미지 캡처 디바이스에 의해 캡처된 비디오 정보를 분석 및 프로세싱하도록 구성된 하나 이상의 프로세서들을 포함할 수 있다. 비디오 데이터는 로컬 프로세싱 및 데이터 모듈(1124) 및/또는 원격 데이터 저장소(1132)에 로컬로 저장될 수 있다. 일부 실시예들에서, 원격 데이터 저장소(1132)는 "클라우드" 자원 구성에서 인터넷 또는 다른 네트워킹 구성을 통하여 이용 가능할 수 있는 디지털 데이터 저장 설비를 포함할 수 있다. 일부 실시예들에서, 모든 데이터가 로컬 프로세싱 및 데이터 모듈에 저장되고 로컬 프로세싱 및 데이터 모듈(1124)에서 모든 컴퓨테이션(computation)들이 수행되어, 원격 모듈로부터의 완전히 자율적인 사용이 허용된다.
[0091] 일부 구현들에서, 로컬 프로세싱 및 데이터 모듈(1124) 및/또는 원격 프로세싱 모듈(1128)은 본원에서 설명된 시스템들 및 방법들(예컨대, 도 1-9를 참조하여 설명된 뉴럴 네트워크 트레이닝 또는 재트레이닝 기술들)의 실시예들을 수행하도록 프로그래밍된다. 이미지 캡처 디바이스는 특정 애플리케이션에 대한 비디오(예컨대, 눈 추적 애플리케이션의 경우 착용자의 눈의 비디오 또는 제스처 식별 애플리케이션의 경우 착용자의 손 또는 손가락의 비디오)를 캡처할 수 있다. 비디오는 프로세싱 모듈들(1124, 1128) 중 하나 또는 둘 모두에 의해 분석될 수 있다. 일부 경우들에서, 홍채 코드 생성 중 적어도 일부를 (예컨대, "클라우드"의) 원격 프로세싱 모듈로 오프-로딩(off-loading)하는 것은 컴퓨테이션들의 효율 또는 속도를 개선할 수 있다. 본원에서 개시된 시스템들 및 방법들의 파라미터들은 데이터 모듈들(1124 및/또는 1128)에 저장될 수 있다.
[0092] 분석의 결과들은 부가적인 동작들 또는 프로세싱을 위해 프로세싱 모듈들(1124, 1128) 중 하나 또는 둘 모두에 의해 사용될 수 있다. 예컨대, 다양한 애플리케이션들에서, 생체인식 식별, 눈-추적, 제스처들, 객체들, 포즈들의 인식, 또는 분류 등은 웨어러블 디스플레이 시스템(1100)에 의해 사용될 수 있다. 예컨대, 웨어러블 디스플레이 시스템(1100)은 착용자(1104)의 손의 캡처된 비디오를 분석하고, 착용자의 손에 의한 제스처(예컨대, 실제 또는 가상의 객체를 픽 업하거나, 또는 찬성 또는 반대(예컨대, "엄지손가락 올리기", 또는 "엄지손가락 내리기") 등을 시그널링하는 것 등), 및 웨어러블 디스플레이 시스템을 인식할 수 있다.
[0093] 일부 실시예들에서, 로컬 프로세싱 모듈(1124), 원격 프로세싱 모듈(1128) 및 클라우드 상의 시스템(예컨대, 도 1의 NN 재트레이닝 시스템(120))은 본원에 개시된 방법들 중 일부 또는 전부를 수행할 수 있다. 예컨대, 로컬 프로세싱 모듈(1124)은 내향 이미징 시스템(예컨대, 도 13의 내향 이미징 시스템(1352))에 의해 캡처된 사용자의 눈 이미지들을 획득할 수 있다. 로컬 프로세싱 모듈(1124), 원격 프로세싱 모듈(1128), 및 클라우드 상의 시스템은 재트레이닝 세트를 생성하고, 뉴럴 네트워크(NN)를 재트레이닝하는 프로세스를 수행하여, 특정 사용자에 대한 눈 추적을 위한 재트레이닝된 NN을 생성할 수 있다. 예컨대, 클라우드 상의 시스템은 로컬 프로세싱 모듈(1124)에 의해 생성된 재트레이닝 세트로 NN을 재트레이닝하는 전체 프로세스를 수행할 수 있다. 다른 예로서, 원격 프로세싱 모듈(1128)은, 확률 분포 함수를 사용하여 하나의 눈 이미지로부터의 상이한 눈 포즈들을 갖는 눈 이미지들을 생성하는 프로세스를 수행할 수 있다. 또 다른 예로서, 로컬 프로세싱 모듈(1128)은, NN을 재트레이닝하기 위해 눈 이미지들을 수집할 때 관찰되는 UI 이벤트들의 밀도 정규화를 위해, 도 7을 참조하여 위에서 설명된 방법(700)을 수행할 수 있다.
[0094] 인간 시각 시스템은 복잡하고 현실적인 깊이의 지각을 제공하는 것은 난제이다. 이론에 의해 제한됨이 없이, 객체의 뷰어들은 이접운동 및 원근조절의 조합으로 인해 객체를 "3-차원"인 것으로 지각할 수 있다고 여겨진다. 서로에 대한 양쪽 눈들의 이접운동(vergence) 움직임들(예컨대, 객체를 응시하기 위해 눈들의 시선들을 수렴하도록 서로를 향하는 또는 서로 멀어지는 동공들의 롤링(rolling) 움직임들)은 눈들의 렌즈들의 포커싱(또는 "원근조절")과 밀접하게 연관된다. 정상 조건들 하에서, 하나의 객체에서 상이한 거리에 있는 다른 객체로 초점을 변경하기 위해, 눈들의 렌즈들의 초점을 변경하거나, 눈들을 원근조절하는 것은, "원근조절-이접운동 반사작용(accommodation-vergence reflex)"으로 알려진 관계 하에서, 동일한 거리에 대한 이접운동의 매칭하는 변화를 자동으로 발생시킬 것이다. 마찬가지로, 이접운동의 변화는 정상 조건들하에서, 원근조절의 매칭 변화를 트리거할 것이다. 원근조절과 이접운동 사이의 더 양호한 매칭을 제공하는 디스플레이 시스템들은 3-차원 이미저리의 더 현실적 또는 편안한 시뮬레이션들을 형성할 수 있다.
[0095] 도 12는 다중 깊이 평면들을 사용하여 3-차원 이미저리를 시뮬레이팅하기 위한 접근법의 양상들을 예시한다. 도 12를 참조하면, z-축 상에서 눈들(1202 및 1204)로부터 다양한 거리들에 있는 객체들은, 이들 객체들이 초점이 맞게 되도록 눈들(1202 및 1204)에 의해 원근조절된다. 눈들(1202 및 1204)은 z-축을 따라 상이한 거리들에 있는 객체들에 초점을 맞추게 하는 특정 원근조절된 상태들을 취한다. 결과적으로, 특정 원근조절된 상태는 연관된 초점 거리를 갖는 깊이 평면들(1206) 중 특정한 하나의 깊이 평면과 연관되는 것으로 말할 수 있어서, 특정 깊이 평면의 객체들 또는 객체들의 부분들은, 눈이 해당 깊이 평면에 대해 원근조절된 상태에 있을 때 초점이 맞춰진다. 일부 실시예들에서, 3-차원 이미저리는 눈들(1202 및 1204) 각각에 대해 이미지의 상이한 프리젠테이션들을 제공함으로써, 그리고 또한 깊이 평면들 각각에 대응하는 이미지의 상이한 프리젠테이션들을 제공함으로써 시뮬레이팅될 수 있다. 예시의 명확성을 위해 별개인 것으로 도시되지만, 눈들(1202 및 1204)의 시야들은 예컨대, z-축을 따른 거리가 증가함에 따라 겹쳐질 수 있다는 것이 인지될 것이다. 게다가, 예시의 용이함을 위해 평평한 것으로 도시되지만, 깊이 평면의 윤곽들은 물리적 공간에서 만곡될 수 있어서, 깊이 평면의 모든 피처들은 특정 원근조절된 상태에서 눈과 초점이 맞춰진다는 것이 인지될 것이다. 이론에 의해 제한되지 않고서, 인간 눈이 통상적으로 깊이 지각을 제공하기 위하여 유한 수의 깊이 평면들을 해석할 수 있다고 여겨진다. 결과적으로, 지각된 깊이의 매우 믿을 만한 시뮬레이션은, 눈에, 이들 제한된 수의 깊이 평면들 각각에 대응하는 이미지의 상이한 프리젠테이션들을 제공함으로써 달성될 수 있다.
예시적인 도파관 스택 어셈블리
[0096] 도 13은 이미지 정보를 사용자에게 출력하기 위한 도파관 스택의 예를 예시한다. 디스플레이 시스템(1300)은 복수의 도파관들(1320a-1320e)을 사용하여 3-차원 지각을 눈(1310) 또는 뇌에 제공하는 데 활용될 수 있는 도파관들의 스택, 또는 스택된 도파관 어셈블리(1305)를 포함한다. 일부 실시예들에서, 디스플레이 시스템(1300)은 도 11의 시스템(1100)에 대응할 수 있고, 도 13은 그 시스템(1100)의 일부 부분들을 더 상세히 개략적으로 도시한다. 예컨대, 일부 실시예들에서, 도파관 어셈블리(1305)는 도 11의 디스플레이(1108)에 통합될 수 있다.
[0097] 도 13을 계속 참조하면, 도파관 어셈블리(1305)는 또한 도파관들 사이에 복수의 피처들(1330a-1330d)을 포함할 수 있다. 일부 실시예들에서, 피처들(1330a-1330d)은 렌즈들일 수 있다. 일부 실시예들에서, 피처들(1330a-1330d)은 렌즈들이 아닐 수 있다. 오히려, 이들은 스페이서들(예컨대, 에어 갭들을 형성하기 위한 클래딩 층들 및/또는 구조들)일 수 있다.
[0098] 도파관들(1320a-1320e) 및/또는 복수의 렌즈들(1330a-1330d)은 다양한 레벨들의 파면 곡률 또는 광선 발산으로 이미지 정보를 눈에 전송하도록 구성될 수 있다. 각각의 도파관 레벨은 특정 깊이 평면과 연관될 수 있고, 그 깊이 평면에 대응하는 이미지 정보를 출력하도록 구성될 수 있다. 이미지 주입 디바이스들(1340a-1340e)은 이미지 정보를 도파관들(1320a-1320e)에 주입하는 데 활용될 수 있고, 이 도파관들 각각은 눈(1310)을 향하여 출력하도록, 각각의 개개의 도파관을 가로질러 인입 광을 분산시키도록 구성될 수 있다. 광은 이미지 주입 디바이스들(1340a-1340e)의 출력 표면을 나가고, 도파관들(1320a-1320e)의 대응하는 입력 에지에 주입된다. 일부 실시예들에서, 단일 광 빔(예컨대, 시준된 빔)은 특정 도파관과 연관된 깊이 평면에 대응하는 특정 각도들(및 발산 양들)로 눈(1310)을 향하여 지향되는 시준된 클론 빔(cloned collimated beam)들의 전체 필드를 출력하기 위하여 각각의 도파관으로 주입될 수 있다.
[0099] 일부 실시예들에서, 이미지 주입 디바이스들(1340a-1340e)은 각각 대응하는 도파관(1320a-1320e)에 주입을 위한 이미지 정보를 각각 생성하는 이산 디스플레이들이다. 일부 다른 실시예들에서, 이미지 주입 디바이스들(1340a-1340e)은 예컨대, 이미지 정보를 하나 이상의 광학 도관들(예컨대, 광섬유 케이블들)을 통하여 이미지 주입 디바이스들(1340a-1340e) 각각에 파이핑(pipe)할 수 있는 단일 멀티플렉싱된 디스플레이의 출력 단부들이다.
[0100] 제어기(1350)는 스택된 도파관 어셈블리(1305) 및 이미지 주입 디바이스들(1340a-1340e)의 동작을 제어한다. 일부 실시예들에서, 제어기(1350)는 도파관들(1320a-1320e)에 대한 이미지 정보의 타이밍 및 프로비전(provision)을 레귤레이팅하는 프로그래밍(예컨대, 비-일시적 컴퓨터-판독 가능 매체의 명령들)을 포함한다. 일부 실시예들에서, 제어기(1350)는 단일 통합 디바이스, 또는 유선 또는 무선 통신 채널들에 의해 연결되는 분산 시스템일 수 있다. 제어기(1350)는 일부 실시예들에서, 프로세싱 모듈들(1124 또는 1128)(도 11에 예시됨)의 부분일 수 있다. 일부 실시예들에서, 제어기는 내향 이미징 시스템(1352)(예컨대, 디지털 카메라), 외향 이미징 시스템(1354)(예컨대, 디지털 카메라) 및/또는 사용자 입력 디바이스(1356)와 통신할 수 있다. 내향 이미징 시스템(1352)(예컨대, 디지털 카메라)은, 예컨대, 눈(1310)의 동공의 크기 및/또는 배향을 결정하기 위해, 눈(1310)의 이미지들을 캡처하는 데 사용될 수 있다. 외향 이미징 시스템(1354)은 세계(1358)의 일부를 이미징하는 데 사용될 수 있다. 사용자는 디스플레이 시스템(1300)과 상호작용하기 위해 사용자 입력 디바이스(1356)를 통해 커맨드들을 제어기(1350)에 입력할 수 있다.
[0101] 도파관들(1320a-1320e)은 TIR(total internal reflection)에 의해 각각의 개별 도파관 내에서 광을 전파시키도록 구성될 수 있다. 도파관들(1320a-1320e)은 각각 평면형이거나 다른 형상(예컨대, 곡선)을 가질 수 있으며, 주 최상부 및 최하부 표면들 및 이들 주 최상부와 최하부 표면들 사이에서 연장되는 에지들을 갖는다. 예시된 구성에서, 도파관들(1320a-1320e)은 이미지 정보를 눈(1310)에 출력하기 위해 각각의 개별 도파관 내에서 전파되는 광을 도파관 밖으로 재지향시킴으로써 도파관으로부터 광을 추출하도록 구성된 광 추출 광학 엘리먼트들(1360a-1360e)을 각각 포함할 수 있다. 추출된 광은 아웃커플링된 광으로서 또한 지칭될 수 있고, 광 추출 광학 엘리먼트들은 또한 아웃커플링 광학 엘리먼트들로서 지칭될 수 있다. 추출된 광 빔은, 도파관 내에서 전파되는 광이 광 재지향 엘리먼트에 부딪치는 위치들에서 도파관에 의해 출력된다. 광 추출 광학 엘리먼트들(1360a-1360e)은, 예컨대, 반사성 및/또는 회절성 광학 피처들일 수 있다. 설명의 용이함 및 도면 명확성을 위하여 도파관들(1320a-1320e)의 최하부 주 표면들에 배치된 것으로 예시되지만, 일부 실시예들에서, 광 추출 광학 엘리먼트들(1360a-1360e)은 최상부 및/또는 최하부 주 표면들에 배치될 수 있고, 그리고/또는 도파관들(1320a-1320e)의 볼륨에 직접 배치될 수 있다. 일부 실시예들에서, 광 추출 광학 엘리먼트들(1360a-1360e)은 도파관들(1320a-1320e)을 형성하기 위해 투명 기판에 부착된 재료 층에 형성될 수 있다. 일부 다른 실시예들에서, 도파관들(1320a-1320e)은 재료의 모놀리식 피스(piece)일 수 있고 광 추출 광학 엘리먼트들(1360a-1360e)은 재료의 해당 피스의 표면 상에 그리고/또는 그 내부에 형성될 수 있다.
[0102] 도 13을 계속 참조하면, 본원에 논의된 바와 같이, 각각의 도파관(1320a-1320e)은 특정 깊이 평면에 대응하는 이미지를 형성하기 위해 광을 출력하도록 구성된다. 예컨대, 눈에 가장 가까운 도파관(1320a)은, 그러한 도파관(1320a)에 주입된 시준된 광을 눈(1310)에 전달하도록 구성될 수 있다. 시준된 광은 광학 무한대 초점 평면을 나타낼 수 있다. 바로 위의 도파관(1320b)은 시준된 광이 눈(1310)에 도달할 수 있기 전에 제1 렌즈(1330a)(예컨대, 네가티브 렌즈)를 통과하는 시준된 광을 전달하도록 구성될 수 있다. 제1 렌즈(1330a)는 약간의 볼록한 파면 곡률을 생성하도록 구성될 수 있어서, 눈/뇌가 그 바로 위의 도파관(1320b)으로부터 오는 광을 광학 무한대로부터 눈(1310)을 향해 안쪽으로 더 가까운 제1 초점 평면으로부터 오는 것으로 해석한다. 유사하게, 세번째 위의 도파관(1320c)은 그 출력 광을, 눈(1310)에 도달하기 전에 제1 렌즈(1330a) 및 제2 렌즈(1330b) 둘 모두를 통과시킨다. 제1 및 제2 렌즈들(1330a 및 1330b)의 결합된 광학 파워는 다른 증분 양의 파면 곡률을 생성하도록 구성될 수 있어서, 눈/뇌는 제3 도파관(1320c)으로부터 오는 광을, 바로 위의 도파관(1320b)으로부터의 광보다는 광학 무한대로부터 사람을 향하여 안쪽으로 훨씬 더 가까운 제2 초점 평면으로부터 오는 것으로 해석한다.
[0103] 다른 도파관 층들(예컨대, 도파관들(1320d, 1320e)) 및 렌즈들(예컨대, 렌즈들(1330c, 1330d))은 유사하게 구성되는데, 스택에서 가장 높은 도파관(1320e)은 자신의 출력을, 사람과 가장 가까운 초점 평면을 나타내는 어그리게이트 초점 파워에 대해 자신과 눈 사이의 렌즈들 모두를 통하여 전송한다. 스택된 도파관 어셈블리(1305)의 다른 측 상에서 세계(1358)로부터 오는 광을 보거나/해석할 때 렌즈들(1330a-1330d)의 스택을 보상하기 위하여, 보상 렌즈 층(1330e)은 아래의 렌즈 스택(1330a-1330d)의 어그리게이트 파워를 보상하기 위하여 스택의 최상부에 배치될 수 있다. 이러한 구성은 이용 가능한 도파관/렌즈 쌍들이 존재하는 만큼 많은 지각된 초점 평면들을 제공한다. 도파관들(1320a-1320e)의 광 추출 광학 엘리먼트들(1360a-1360e) 및 렌즈들(1330a-1330d)의 포커싱 양상들 둘 모두는 정적(예컨대, 동적이거나 전자-활성이지 않음)일 수 있다. 일부 대안적인 실시예들에서, 어느 하나 또는 둘 모두는 전자-활성 피처들을 사용하여 동적일 수 있다.
[0104] 도 13을 계속 참조하면, 광 추출 광학 엘리먼트들(1360a-1360e)은 자신의 개별 도파관들 밖으로 광을 재지향하고 그리고 도파관과 연관된 특정 심도 평면에 대해 적절한 양의 발산 또는 시준으로 이 광을 출력하도록 구성될 수 있다. 결과로서, 상이한 연관된 깊이 평면들을 가진 도파관들은 상이한 구성들의 광 추출 광학 엘리먼트들을 가질 수 있고, 이러한 광 추출 광학 엘리먼트들은 연관된 깊이 평면에 따라 상이한 양의 발산으로 광을 출력한다. 일부 실시예들에서, 본원에 논의된 바와 같이, 광 추출 광학 엘리먼트들(1360a-1360e)은 특정 각도들로 광을 출력하도록 구성될 수 있는 볼류메트릭(volumetric) 또는 표면 피처들일 수 있다. 예컨대, 광 추출 광학 엘리먼트들(1360a-1360e)은 볼륨 홀로그램들, 표면 홀로그램들, 및/또는 회절 격자들일 수 있다. 광 추출 광학 엘리먼트들, 이를테면, 회절 격자들은 2015년 6월 25일에 공개된 미국 특허 공개 번호 제2015/0178939호에 설명되며, 이는 그 전체가 본원에 인용에 의해 포함된다. 일부 실시예들에서, 피처들(1330a-1330e)은 렌즈들이 아닐 수 있다. 오히려, 이들은 단순히 스페이서들(예컨대, 에어 갭들을 형성하기 위한 클래딩 층들 또는 구조들)일 수 있다.
[0105] 일부 실시예들에서, 광 추출 광학 엘리먼트들(1360a-1360e)은 회절 패턴을 형성하는 회절 피처들 또는 "회절 광학 엘리먼트"(또한 본원에서 "DOE"로서 지칭됨)이다. 바람직하게는, DOE들은 비교적 낮은 회절 효율성을 가져서, 빔의 광의 일부만이 DOE의 각각의 교차의 경우 눈(1310)을 향하여 편향되지만, 나머지는 내부 전반사를 통하여 도파관을 통해 계속 이동한다. 따라서, 이미지 정보를 전달하는 광은 다수의 위치들에서 도파관을 나가는 다수의 관련된 퇴장 빔들로 분할되고 그 결과는 이런 특정 시준된 빔이 도파관 내에서 이리저리 바운싱되기 때문에 눈(1310)을 향하는 상당히 균일한 퇴장 방출 패턴이다.
[0106] 일부 실시예들에서, 하나 이상의 DOE들은, 그것들이 활발하게 회절시키는 "온" 상태들과 그것들이 크게 회절시키지 않는 "오프" 상태들 간에 스위칭 가능할 수 있다. 예컨대, 스위칭 가능 DOE는, 마이크로액적들이 호스트 매질에서 회절 패턴을 포함하는 폴리머 분산형 액정 층을 포함할 수 있고, 마이크로액적들의 굴절률은 호스트 재료의 굴절률에 실질적으로 매칭하도록 스위칭될 수 있거나(이 경우에 패턴은 입사 광을 현저하게 회절시키지 않음) 또는 마이크로액적은 호스트 매질의 인덱스에 매칭하지 않는 인덱스로 스위칭될 수 있다(이 경우 패턴은 입사 광을 활발하게 회절시킴).
[0107] 일부 실시예들에서, 심도 평면들 및/또는 피사계 심도들의 수 및 분포는 뷰어의 눈들의 동공 크기들 및/또는 배향들에 기반하여 동적으로 변동될 수 있다. 일부 실시예들에서, 내향 이미징 시스템(1352)(예컨대, 디지털 카메라)은 눈(1310)의 동공의 크기 및/또는 배향을 결정하기 위해 눈(1310)의 이미지들을 캡처하는 데 사용될 수 있다. 일부 실시예들에서, 내향 이미징 시스템(1352)은 (도 11에 예시된 바와 같이) 프레임(1112)에 부착될 수 있고, 프로세싱 모듈들(1124 및/또는 1128)과 전기 통신할 수 있고, 프로세싱 모듈들(1124 및/또는 1128)은, 예컨대, 사용자(1104)의 눈들의 동공 직경들 또는 배향들을 결정하기 위해 내향 이미징 시스템(1352)으로부터의 이미지 정보를 프로세싱할 수 있다.
[0108] 일부 실시예들에서, 내향 이미징 시스템(1352)(예컨대, 디지털 카메라)은 눈 움직임들 및 얼굴 움직임들과 같은 사용자의 움직임들을 관찰할 수 있다. 내향 이미징 시스템(1352)은 눈(1310)의 동공의 크기 및/또는 배향을 결정하기 위해 눈(1310)의 이미지들을 캡처하는데 사용될 수 있다. 내향 이미징 시스템(1352)은, (예컨대, 홍채 식별을 통해) 사용자의 생체인식 식별(biometric identification)을 위한 이미지들 또는 사용자가 바라보는 방향(예컨대, 눈 포즈)을 결정하는 데 사용하기 위한 이미지들을 획득하는 데 사용될 수 있다. 내향 이미징 시스템(1352)에 의해 획득된 이미지들은 사용자의 눈 포즈 및/또는 무드를 결정하도록 분석될 수 있고, 사용자의 눈 포즈 및/또는 무드는, 어떤 오디오 또는 시각 콘텐츠가 사용자에게 제공되어야 하는지를 판정하기 위해 디스플레이 시스템(1300)에 의해 사용될 수 있다. 디스플레이 시스템(1300)은 또한 IMU(inertial measurement unit)들, 가속도계들, 자이로스코프들 등과 같은 센서들을 사용하여 머리 포즈(예컨대, 머리 포지션 또는 머리 배향)를 결정할 수 있다. 머리의 포즈는, 스템 추적들과 상호작용하고 그리고/또는 오디오 콘텐츠를 제공하기 위해 단독으로 또는 눈 포즈와 결합하여 사용될 수 있다.
[0109] 일부 실시예들에서, 각각의 눈의 동공 크기 및/또는 배향을 별개로 결정하고, 그리하여 각각의 눈에 대한 이미지 정보의 프리젠테이션이 그 눈에 동적으로 맞춰지도록 허용하기 위해, 각각의 눈마다 하나의 카메라가 활용될 수 있다. 일부 실시예들에서, 독립적으로, 각각의 눈의 동공 크기 및/또는 눈 포즈를 별개로 결정하고, 그리하여 각각의 눈에 대한 이미지 정보의 프리젠테이션이 그 눈에 동적으로 맞춰지도록 허용하기 위해, 각각의 눈마다 적어도 하나의 카메라가 활용될 수 있다. 일부 다른 실시예들에서, (예컨대, 한 쌍의 눈들 당 단지 단일 카메라만을 사용하여) 단지 한쪽 눈(1310)의 동공 직경 및/또는 배향이 결정되고 뷰어(1104)의 양 눈들에 대해 유사한 것으로 간주된다.
[0110] 예컨대, 피사계 심도는 뷰어의 동공 크기와 반대로 변경될 수 있다. 결과적으로, 뷰어의 눈들의 동공들의 크기들이 감소함에 따라, 피사계 심도가 증가하여서, 식별 불가능한 하나의 평면의 위치가 눈의 초점 심도를 넘어서기 때문에 그 평면이 식별 가능하게 되고 동공 크기의 감소 및 피사계 심도의 상응하는 증가를 통해 보다 초점이 맞는 것으로 나타날 수 있다. 마찬가지로, 뷰어에게 상이한 이미지들을 제시하는데 사용되는 이격된 심도 평면들의 수는 감소된 동공 크기에 따라 감소될 수 있다. 예컨대, 뷰어는 하나의 깊이 평면으로부터 벗어나게 그리고 다른 깊이 평면으로 눈의 원근조절을 조정하지 않고서는, 하나의 동공 크기에서 제1 깊이 평면 및 제2 깊이 평면 둘 모두의 세부사항들을 명확하게 지각할 수 없을 수 있다. 그러나, 이러한 2개의 깊이 평면들은 원근조절을 변경하지 않고도 다른 동공 크기에서 사용자에게 동시에 충분히 초점이 맞춰질 수 있다.
[0111] 일부 실시예들에서, 디스플레이 시스템은 동공 크기 또는 배향의 결정들에 또는 특정 동공 크기들 및/또는 배향들을 나타내는 전기 신호들의 수신에 기반하여 이미지 정보를 수신하는 도파관들의 수를 변동시킬 수 있다. 예컨대, 사용자의 눈들이 2개의 도파관들과 연관된 2개의 깊이 평면들을 구별할 수 없다면, 제어기(1350)는 이들 도파관들 중 하나에 이미지 정보를 제공하는 것을 중단하도록 구성되거나 프로그래밍될 수 있다. 유리하게는, 이는 시스템 상의 프로세싱 부담을 감소시킬 수 있고, 그리하여 시스템의 응답성을 증가시킨다. 도파관에 대한 DOE들이 온 및 오프 상태들 사이에서 스위칭 가능한 실시예들에서, 도파관이 이미지 정보를 수신할 때 DOE들은 오프 상태로 스위칭될 수 있다.
[0112] 일부 실시예들에서, 출사 빔이 뷰어의 눈의 직경 미만인 직경을 갖는 조건을 충족시키는 것이 바람직할 수 있다. 그러나 이 조건을 충족시키는 것은 뷰어의 동공들의 크기의 변동성 측면에서 난제가 될 수 있다. 일부 실시예들에서, 이 조건은 뷰어의 동공의 크기의 결정에 대한 응답으로 출사 빔의 크기를 변동시킴으로써 광범위한 동공 크기들에 걸쳐 충족된다. 예컨대, 동공 크기가 감소함에 따라, 출사 빔의 크기가 또한 감소할 수 있다. 일부 실시예들에서, 출사 빔 크기는 가변 애퍼처를 사용하여 변동될 수 있다.
[0113] 디스플레이 시스템(1300)은 세계(1358)의 일부를 이미징하는 외향 이미징 시스템(1354)(예컨대, 디지털 카메라)을 포함할 수 있다. 이러한 세계(1358)의 일부는 FOV(field of view)로 지칭될 수 있고, 이미징 시스템(1354)은 때때로 FOV 카메라로 지칭된다. 뷰어(1104)에 의한 이미징 또는 뷰잉을 위해 이용 가능한 전체 구역은 FOR(field of regard)로 지칭될 수 있다. FOR은 디스플레이 시스템(1300)을 둘러싸는 4π 스테리안들(steradians)의 입체각을 포함할 수 있다. 디스플레이 시스템(1300)의 일부 구현들에서, FOR은 디스플레이 시스템(1300)의 사용자(1104) 둘레의 입체각의 실질적으로 모두를 포함할 수 있는데, 왜냐하면 사용자(1104)가 사용자를 둘러싸는(사용자의 전방, 후방, 위, 아래, 또는 측면들의) 객체들을 보기 위해 자신들의 머리 및 눈들을 이동시킬 수 있기 때문이다. 외향 이미징 시스템(1354)으로부터 획득된 이미지들은 사용자에 의해 행해진 제스처들(예컨대, 손 또는 손가락 제스처들)을 추적하고, 사용자 앞의 세계(1358)의 객체들을 검출하는 등을 행하는데 사용될 수 있다.
[0114] 디스플레이 시스템(1300)은, 사용자가 디스플레이 시스템(400)과 상호작용하도록 제어기(1350)에 커맨드들을 입력할 수 있게 하는 사용자 입력 디바이스(1356)를 포함할 수 있다. 예컨대, 사용자 입력 디바이스(1356)는 트랙패드, 터치스크린, 조이스틱, 다중 DOF(degree-of-freedom) 제어기, 용량성 감지 디바이스, 게임 제어기, 키보드, 마우스, 방향 패드(D-패드), 완드(wand), 햅틱 디바이스, 토템(예컨대, 가상 사용자 입력 디바이스로서 기능함) 등을 포함할 수 있다. 일부 경우들에서, 사용자는 손가락(예컨대, 엄지 손가락)을 사용하여, 디스플레이 시스템(1300)에 입력을 제공하도록(예컨대, 디스플레이 시스템(1300)에 의해 제공되는 사용자 인터페이스에 사용자 입력을 제공하도록) 터치-감지 입력 디바이스를 누르거나 스와이프(swipe)할 수 있다. 사용자 입력 디바이스(1356)는 디스플레이 시스템(1300)의 사용 동안 사용자의 손에 의해 홀딩될 수 있다. 사용자 입력 디바이스(1356)는 디스플레이 시스템(1300)과 유선 또는 무선으로 통신할 수 있다.
[0115] 도 14는 도파관에 의해 출력된 출사 빔들의 예를 도시한다. 하나의 도파관이 예시되지만, 도파관 어셈블리(1305) 내의 다른 도파관들이 유사하게 기능할 수 있다는 것이 인지될 것이며, 여기서 도파관 어셈블리(1305)는 다수의 도파관들을 포함한다. 광(1405)은 도파관(1320a)의 입력 에지(1410)에서 도파관(1320a)에 주입되고, TIR(total internal reflection)에 의해 도파관(1320a) 내에서 전파된다. 광(1405)이 DOE(diffractive optical element)(1360a)에 충돌하는 지점들에서, 광의 일부는 출사 빔들(1415)로서 도파관을 나간다. 출사 빔들(1415)은 실질적으로 평행한 것으로 예시되지만, 이들 출사 빔들(1415)은 또한 도파관(1320a)과 연관된 깊이 평면에 의존하여, 일정 각도로 눈(1310)으로 전파되도록 재지향될 수 있다(예컨대, 발산하는 출사 빔들을 형성함). 실질적으로 평행한 출사 빔들은, 눈(1310)으로부터 원거리(예컨대, 광학적 무한대)에 있는 깊이 평면 상에 세팅된 것으로 보이는 이미지들을 형성하도록 광을 아웃커플링하는 광 추출 광학 엘리먼트들을 갖는 도파관을 나타낼 수 있다는 것이 인지될 것이다. 다른 도파관들 또는 광 추출 광학 엘리먼트들의 다른 세트들은 더 발산하는 출사 빔 패턴을 출력할 수 있고, 이는 눈(1310)이 망막 상에 초점을 맞추게 하기 위해 더 가까운 거리로 원근조절하는 것을 요구할 것이고 광학적 무한대보다 눈(1310)에 더 가까운 거리로부터의 광으로서 뇌에 의해 해석될 것이다.
[0116] 도 15는 도파관 장치, 도파관 장치로 또는 도파관 장치로부터의 광을 광학적으로 커플링하기 위한 광학 커플러 서브시스템, 및 제어 서브시스템을 포함하는 디스플레이 시스템(1300)의 다른 예를 도시한다. 디스플레이 시스템(1300)은 다중-초점 볼류메트릭, 이미지 또는 광 필드를 생성하는 데 사용될 수 있다. 디스플레이 시스템(1300)은 하나 이상의 주 평면형 도파관들(1504)(도 15에서 단지 하나만 도시됨) 및 주 도파관들(1504) 중 적어도 일부의 주 도파관들 각각과 연관된 하나 이상의 DOE들(1508)을 포함할 수 있다. 평면형 도파관들(1504)은 도 13을 참조하여 논의된 도파관들(1320a-1320e)과 유사할 수 있다. 광학 시스템은 제1 축(도 15의 뷰에서 수직 또는 Y-축)을 따라 광을 중계하고 제1 축(예컨대, Y-축)을 따라 광의 유효 출사 동공을 확장시키기 위해 분배 도파관 장치를 사용할 수 있다. 분배 도파관 장치는, 예컨대, 분배 평면형 도파관(1512) 및 분배 평면형 도파관(1512)과 연관된 적어도 하나의 DOE(1516)(이중 일점 쇄선으로 예시됨)를 포함할 수 있다. 분배 평면형 도파관(1512)은 분배 평면형 도파관(1512)과 상이한 배향을 갖는 주 평면형 도파관(1504)과 적어도 일부 면들에서 유사하거나 동일할 수 있다. 마찬가지로, 적어도 하나의 DOE(1516)는 DOE(1508)와 적어도 일부 면들에서 유사하거나 동일할 수 있다. 예컨대, 분배 평면형 도파관(1512) 및/또는 DOE(1516)는 각각, 주 평면형 도파관(1504) 및/또는 DOE(1508)와 동일한 재료들로 구성될 수 있다. 도 15에 도시된 광학 시스템은 도 11에 도시된 웨어러블 디스플레이 시스템(1100)에 통합될 수 있다.
[0117] 중계된 그리고 출사 동공 확장된 광은 분배 도파관 장치로부터 하나 이상의 주 평면형 도파관들(1504)에 광학적으로 커플링된다. 주 평면형 도파관(1504)은, 바람직하게는, 제1 축과 직교하는 제2 축(예컨대, 도 15의 뷰에서 수평 또는 X-축)을 따라 광을 중계할 수 있다. 특히, 제2 축은 제1 축에 대해 비-직교 축일 수 있다. 주 평면형 도파관(1504)은 제2 축(예컨대, X-축)을 따라 광의 유효 출사 경로를 확장시킨다. 예컨대, 분배 평면형 도파관(1512)은 수직 또는 Y- 축을 따라 광을 중계 및 확장시키고, 수평 또는 X-축을 따라 광을 중계 및 확장시키는 주 평면형 도파관(1504)으로 그 광을 전달할 수 있다.
[0118] 디스플레이 시스템(1300)은 단일 모드 광섬유(1524)의 근위 단부에 광학적으로 커플링될 수 있는 컬러 광(예컨대, 적색, 녹색 및 청색 레이저 광)의 하나 이상의 소스들(1520)을 포함할 수 있다. 광 섬유(1524)의 원위 단부는 압전 재료의 중공 튜브(1528)를 통해 수용되거나 스레딩(thread)될 수 있다. 원단 단부는 고정된 자유 플렉시블 캔틸레버(1532)로서 튜브(1528)로부터 돌출된다. 압전 튜브(1528)는 4개의 쿼드런트(quadrant) 전극들(예시되지 않음)과 연관될 수 있다. 전극들은 예컨대, 튜브(1528)의 외부, 외부 표면 또는 외부 주변부 또는 직경 상에 도금될 수 있다. 코어 전극(예시되지 않음)은 또한 튜브(1528)의 코어, 중앙, 내부 주변부 또는 내부 직경에 위치된다.
[0119] 예컨대, 와이어들(1540)을 통해 전기적으로 커플링된 구동 전자 장치(1536)는 2개의 축들에서 압전 튜브(1528)를 독립적으로 구부리기 위해 대향하는 전극 쌍들을 구동시킨다. 광섬유(1524)의 돌출 원위 팁은 기계적 공진 모드들을 갖는다. 공진 주파수들은 광섬유(1524)의 직경, 길이 및 재료 성질들에 의존할 수 있다. 섬유 캔틸레버(1532)의 제1 모드의 기계 공진 인근에서 압전 튜브(1528)를 진동시킴으로써, 섬유 캔틸레버(1532)는 진동하게 되고, 큰 편향들을 통해 스위핑할 수 있다.
[0120] 2개의 축들에서 공진 진동을 자극함으로써, 섬유 캔틸레버(1532)의 팁은 영역 필링 2-차원(2-D) 스캔으로 2축 방향으로(biaxially) 스캔된다. 섬유 캔틸레버(1532)의 스캔과 동기하여 광 소스(들)(1520)의 세기를 변조함으로써, 섬유 캔틸레버(1532)로부터 나오는 광은 이미지를 형성한다. 그러한 셋업에 대한 설명들은 그 전체가 인용에 의해 본원에 포함되는 미국 특허 공보 제2014/0003762호에서 제공된다.
[0121] 광학 커플러 서브시스템의 컴포넌트(1544)는 스캐닝 섬유 캔틸레버(1532)로부터 나오는 광을 시준할 수 있다. 시준된 광은 미러 표면(mirrored surface)(1548)에 의해, 적어도 하나의 DOE(diffractive optical element)(1516)를 포함하는 좁은 분배 평면형 도파관(1512)으로 반사될 수 있다. 시준된 광은 내부 전반사에 의해 분배 평면형 도파관(1512)을 따라 (도 15의 뷰에 대해) 수직으로 전파되고, 이렇게 하여, DOE(1516)와 반복적으로 교차한다. DOE(1516)는 바람직하게는 낮은 회절 효율을 갖는다. 이는, 광의 일부(fraction of the light)(예컨대, 10%)로 하여금, DOE(1516)와의 각각의 교차점에서 더 큰 주 평면형 도파관(1504)의 에지를 향해 회절되게 하고, 광의 일부로 하여금, TIR을 통해 분배 평면형 도파관(1512)의 길이 아래에서 그의 오리지널 궤적 상에서 계속되게 한다.
[0122] DOE(1516)와의 각각의 교차 지점에서, 부가적인 광이 주 도파관(1512)의 입구를 향해 회절된다. 인입 광을 다수의 아웃커플링된 세트들로 분할함으로써, 광의 출사 동공은 분배 평면형 도파관(1512)에서 DOE(1516)에 의해 수직으로 확장된다. 분배 평면형 도파관(1512) 밖으로 커플링되는 이러한 수직으로 확장된 광은 주 평면형 도파관(1504)의 에지에 진입한다.
[0123] 주 도파관(1504)에 진입하는 광은 TIR을 통해 주 도파관(1504)을 따라 (도 15의 뷰에 대해) 수평으로 전파된다. 광이 TIR을 통해 주 도파관(1504)의 길이의 적어도 일부를 따라 수평으로 전파됨에 따라, 광은 다수의 지점들에서 DOE(1508)와 교차한다. DOE(1508)는 유리하게는, 광의 편향 및 포커싱 둘 모두를 생성하도록, 선형 회절 패턴 및 방사상 대칭 회절 패턴의 합인 위상 프로파일(phase profile)을 갖도록 설계 또는 구성될 수 있다. DOE(1508)는 유리하게는, 낮은 회절 효율(예컨대, 10%)을 가질 수 있어서, 빔의 광 중 일부만이 DOE(1508)의 각각의 교차에 의해 뷰어의 눈을 향해 편향되는 반면에, 광의 나머지는 TIR을 통해 주 도파관(1504)을 통해 계속 전파된다.
[0124] 전파되는 광과 DOE(1508) 사이의 각각의 교차 지점에서, 광의 일부가 주 도파관(1504)의 인접한 면을 향해 회절되어, 광이 TIR을 벗어나 주 도파관(1504)의 면으로부터 나오게 한다. 일부 실시예들에서, DOE(1508)의 방사상 대칭 회절 패턴은 부가적으로 회절된 광에 초점 레벨을 부여하여, 개별 빔의 광 파면을 성형(예컨대, 곡률을 부여함)할 뿐만 아니라, 설계된 초점 레벨과 매칭하는 각도로 빔을 조종한다.
[0125] 따라서, 이들 상이한 경로들은 상이한 각도들의, 초점 레벨에서 다수의 DOE들(1508)에 의해, 및/또는 출사 동공에서 상이한 필 패턴(fill pattern)들의 산출에 의해 광이 주 평면형 도파관(1504) 밖으로 커플링되게 할 수 있다. 출사 동공에서의 상이한 필 패턴들은 다수의 깊이 평면들을 갖는 광 필드 디스플레이를 생성하는데 유리하게 사용될 수 있다. 도파관 어셈블리의 각각의 층 또는 스택의 한 세트의 층들(예컨대, 3개의 층들)은 각자의 컬러(예컨대, 적색, 청색, 녹색)를 생성하는 데 사용될 수 있다. 따라서, 예컨대, 제1 세트의 3개의 인접한 층들은 제1 초점 깊이의 적색, 청색 및 녹색 광을 각각 생성하도록 사용될 수 있다. 제2 세트의 3개의 인접한 층들은 제2 초점 깊이의 적색, 청색 및 녹색 광을 각각 생성하도록 사용될 수 있다. 다수의 세트들이 다양한 초점 깊이들을 갖는 풀(full) 3D 또는 4D 컬러 이미지 광 필드를 생성하도록 사용될 수 있다.
부가적인 양상들
[0126] 제1 양상에서, 웨어러블 디스플레이 시스템이 개시된다. 웨어러블 디스플레이 시스템은: 사용자의 눈의 복수의 재트레이닝 눈 이미지들(retraining eye images)을 캡처하도록 구성된 이미지 캡처 디바이스; 디스플레이; 복수의 재트레이닝 눈 이미지들, 및 눈 추적을 위한 뉴럴 네트워크를 저장하도록 구성된 비-일시적인 컴퓨터-판독 가능한 저장 매체; 및 이미지 캡처 디바이스, 디스플레이, 및 비-일시적인 컴퓨터-판독 가능한 저장 매체와 통신하는 하드웨어 프로세서를 포함하고, 하드웨어 프로세서는: 이미지 캡처 디바이스에 의해 캡처되고 그리고/또는 비-일시적인 컴퓨터-판독 가능한 저장 매체로부터 수신되는 복수의 재트레이닝 눈 이미지들(이미지 캡처 디바이스에 의해 캡처될 수 있음)을 수신하고 ― 복수의 재트레이닝 눈 이미지들의 재트레이닝 눈 이미지는, 디스플레이의 디스플레이 위치에서 사용자에게 보여지는 UI(user interface) 디바이스에 관련하여, UI 이벤트가 발생할 때, 이미지 캡처 디바이스에 의해 캡처됨 ― ; 재트레이닝 입력 데이터 및 대응하는 재트레이닝 타겟 출력 데이터를 포함하는 재트레이닝 세트를 생성하고 ― 재트레이닝 입력 데이터는 재트레이닝 눈 이미지들을 포함하고, 그리고 대응하는 재트레이닝 타겟 출력 데이터는 디스플레이 위치에 관련된 재트레이닝 눈 이미지에서 사용자의 눈의 눈 포즈를 포함함 ― ; 그리고 재트레이닝 세트를 사용하여 눈 추적을 위한 뉴럴 네트워크로부터 재트레이닝되는 재트레이닝된 뉴럴 네트워크를 획득하도록 실행 가능한 명령들에 의해 프로그래밍된다.
[0127] 제2 양상에서, 제1 양상의 웨어러블 디스플레이 시스템에 있어서, 재트레이닝된 뉴럴 네트워크를 획득하기 위해, 하드웨어 프로세서는 적어도: 재트레이닝된 뉴럴 네트워크를 생성하기 위해 재트레이닝 세트를 사용하여 눈 추적을 위한 뉴럴 네트워크를 재트레이닝하도록 프로그래밍된다.
[0128] 제3 양상에서, 제1 양상의 웨어러블 디스플레이 시스템에 있어서, 재트레이닝된 뉴럴 네트워크를 획득하기 위해, 하드웨어 프로세서는 적어도: 재트레이닝 세트를 원격 시스템에 송신하고; 그리고 원격 시스템으로부터 재트레이닝된 뉴럴 네트워크를 수신하도록 프로그래밍된다.
[0129] 제4 양상에서, 제3 양상의 웨어러블 디스플레이 시스템에 있어서, 원격 시스템은 클라우드 컴퓨팅 시스템을 포함한다.
[0130] 제5 양상에서, 제1 양상 내지 제4 양상 중 어느 한 양상의 웨어러블 디스플레이 시스템에 있어서, 사용자의 복수의 재트레이닝 눈 이미지들을 수신하기 위해, 하드웨어 프로세서는 적어도: 디스플레이 상의 디스플레이 위치에서 UI 디바이스를 사용자에게 디스플레이하고; UI 디바이스에 관련하여 UI 이벤트의 발생을 결정하고; 그리고 이미지 캡처 디바이스로부터 재트레이닝 눈 이미지를 수신하도록 실행 가능한 명령들에 의해 프로그래밍된다.
[0131] 제6 양상에서, 제5 양상의 웨어러블 디스플레이 시스템에 있어서, 하드웨어 프로세서는, 디스플레이 위치를 사용하여 재트레이닝 눈 이미지에서 눈의 눈 포즈를 결정하도록 실행 가능한 명령들에 의해 추가로 프로그래밍된다.
[0132] 제7 양상에서, 제6 양상의 웨어러블 디스플레이 시스템에 있어서, 재트레이닝 눈 이미지에서 눈의 눈 포즈는 디스플레이 위치를 포함한다.
[0133] 제8 양상에서, 제1 양상 내지 제4 양상 중 어느 한 양상의 웨어러블 디스플레이 시스템에 있어서, 사용자의 복수의 재트레이닝 눈 이미지들을 수신하기 위해, 하드웨어 프로세서는 적어도: 재트레이닝 눈 이미지에 기반하여 제2 복수의 제2 재트레이닝 눈 이미지들을 생성하고; 그리고 디스플레이 위치 및 확률 분포 함수(probability distribution function)를 사용하여 제2 복수의 제2 재트레이닝 눈 이미지들 중 제2 재트레이닝 눈 이미지에서 눈의 눈 포즈를 결정하도록 실행 가능한 명령들에 의해 프로그래밍된다.
[0134] 제9 양상에서, 제1 양상 내지 제4 양상 중 어느 한 양상의 웨어러블 디스플레이 시스템에 있어서, 사용자의 복수의 재트레이닝 눈 이미지들을 수신하기 위해, 하드웨어 프로세서는 적어도: 이미지 캡처 디바이스로부터 사용자의 눈의 복수의 눈 이미지들을 수신하고 ― 복수의 눈 이미지들 중 제1 눈 이미지는, 디스플레이의 디스플레이 위치에서 사용자에게 보여지는 UI 디바이스에 관련하여, UI 이벤트가 발생할 때, 사용자 디바이스에 의해 캡처됨 ― ; 디스플레이 위치로부터, UI 이벤트 이전의 사용자의 운동을 따라 후방으로, 운동의 시작까지, UI 디바이스의 투사된 디스플레이 위치를 결정하고; 운동의 시작에서 캡처된 복수의 눈 이미지들 중 제2 눈 이미지에서 UI 디바이스의 투사된 디스플레이 위치 및 제2 디스플레이 위치가 임계 거리 내에 있다고 결정하고; 그리고 제2 눈 이미지로부터 제1 눈 이미지까지 복수의 눈 이미지들의 눈 이미지들을 포함하는 재트레이닝 입력 데이터를 생성하도록 실행 가능한 명령들에 의해 프로그래밍되고, 대응하는 재트레이닝 타겟 출력 데이터는 눈 이미지에서 UI 디바이스의 디스플레이 위치에 관련된 눈 이미지들의 각각의 눈 이미지에서 사용자의 눈의 눈 포즈를 포함한다.
[0135] 제10 양상에서, 제9 양상의 웨어러블 디스플레이 시스템에 있어서, 눈의 눈 포즈는 디스플레이 위치이다.
[0136] 제11 양상에서, 제10 양상의 웨어러블 디스플레이 시스템에 있어서, 하드웨어 프로세서는 적어도, UI 디바이스의 디스플레이 위치를 사용하여 눈의 눈 포즈를 결정하도록 실행 가능한 명령들에 의해 추가로 프로그래밍된다.
[0137] 제12 양상에서, 제1 양상 내지 제11 양상 중 어느 한 양상의 웨어러블 디스플레이 시스템에 있어서, 재트레이닝 세트를 생성하기 위해, 하드웨어 프로세서는 적어도: 재트레이닝 눈 이미지에서 눈의 눈 포즈가 복수의 눈 포즈 구역들 중 제1 눈 포즈 구역에 있다고 결정하고; UI 디바이스가 제1 눈 포즈 구역에 있을 분포 확률을 결정하고; 그리고 분포 확률에 관련된 포함 확률(inclusion probability)로, 재트레이닝 눈 이미지를 포함하는 재트레이닝 입력 데이터를 생성하도록 실행 가능한 명령들에 의해 프로그래밍된다.
[0138] 제13 양상에서, 제1 양상 내지 제12 양상 중 어느 한 양상의 웨어러블 디스플레이 시스템에 있어서, 하드웨어 프로세서는 적어도: 트레이닝 입력 데이터 및 대응하는 트레이닝 타겟 출력 데이터를 포함하는 트레이닝 세트를 사용하여 눈 추적을 위한 뉴럴 네트워크를 트레이닝하도록 실행 가능한 명령들에 의해 추가로 프로그래밍되고, 트레이닝 입력 데이터는 복수의 사용자들의 복수의 트레이닝 눈 이미지들을 포함하고, 그리고 대응하는 트레이닝 타겟 출력 데이터는 복수의 트레이닝 눈 이미지들에서 복수의 사용자들의 눈들의 눈 포즈들을 포함한다.
[0139] 제14 양상에서, 제13 양상의 웨어러블 디스플레이 시스템에 있어서, 재트레이닝 세트의 재트레이닝 입력 데이터는 복수의 트레이닝 눈 이미지들 중 적어도 하나의 트레이닝 눈 이미지를 포함한다.
[0140] 제15 양상에서, 제13 양상의 웨어러블 디스플레이 시스템에 있어서, 재트레이닝 세트의 재트레이닝 입력 데이터는 복수의 트레이닝 눈 이미지들 중 어떠한 트레이닝 눈 이미지도 포함하지 않는다.
[0141] 제16 양상에서, 제1 양상 내지 제15 양상 중 어느 한 양상의 웨어러블 디스플레이 시스템에 있어서, 눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위해, 하드웨어 프로세서는 적어도: 재트레이닝된 뉴럴 네트워크의 가중치들을 뉴럴 네트워크의 가중치들로 초기화하도록 실행 가능한 명령들에 의해 프로그래밍된다.
[0142] 제17 양상에서, 제1 양상 내지 제16 양상 중 어느 한 양상의 웨어러블 디스플레이 시스템에 있어서, 하드웨어 프로세서는, 사용자 디바이스로 하여금: 이미지 캡처 디바이스로부터 사용자의 눈 이미지를 수신하게 하고; 그리고 재트레이닝된 뉴럴 네트워크를 사용하여 눈 이미지에서 사용자의 눈 포즈를 결정하게 하도록 실행 가능한 명령들에 의해 프로그래밍된다.
[0143] 제18 양상에서, 눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위한 시스템이 개시된다. 시스템은: 실행 가능한 명령들을 저장하는 컴퓨터-판독 가능한 메모리; 및 하나 이상의 프로세서들을 포함하고, 하나 이상의 프로세서들은 적어도: 사용자의 눈의 복수의 재트레이닝 눈 이미지들을 수신하고 ― 복수의 재트레이닝 눈 이미지들의 재트레이닝 눈 이미지는, 사용자 디바이스의 디스플레이 위치에서 사용자에게 보여지는 UI(user interface) 디바이스에 관련하여, UI 이벤트가 발생할 때 캡처됨 ― ; 재트레이닝 입력 데이터 및 대응하는 재트레이닝 타겟 출력 데이터를 포함하는 재트레이닝 세트를 생성하고 ― 재트레이닝 입력 데이터는 재트레이닝 눈 이미지들을 포함하고, 그리고 대응하는 재트레이닝 타겟 출력 데이터는 디스플레이 위치에 관련된 재트레이닝 눈 이미지에서 사용자의 눈의 눈 포즈를 포함함 ― ; 그리고 재트레이닝된 뉴럴 네트워크를 생성하기 위해 재트레이닝 세트를 사용하여 눈 추적을 위한 뉴럴 네트워크를 재트레이닝하도록 실행 가능한 명령들에 의해 프로그래밍된다.
[0144] 제19 양상에서, 제18 양상의 시스템에 있어서, 사용자의 복수의 재트레이닝 눈 이미지들을 수신하기 위해, 하나 이상의 프로세서들은 적어도, 사용자 디바이스 하여금: 디스플레이를 사용하여 디스플레이 위치에서 UI 디바이스를 사용자에게 디스플레이하게 하고; UI 디바이스에 관련하여 UI 이벤트의 발생을 결정하게 하고; 이미징 시스템을 사용하여 재트레이닝 눈 이미지를 캡처하게 하고; 그리고 재트레이닝 눈 이미지를 시스템에 송신하게 하도록 실행 가능한 명령들에 의해 프로그래밍된다.
[0145] 제20 양상에서, 제19 양상의 시스템에 있어서, 사용자의 복수의 재트레이닝 눈 이미지들을 수신하기 위해, 하나 이상의 프로세서들은 적어도: 디스플레이 위치를 사용하여 재트레이닝 눈 이미지에서 눈의 눈 포즈를 결정하도록 실행 가능한 명령들에 의해 추가로 프로그래밍된다.
[0146] 제21 양상에서, 제20 양상의 시스템에 있어서, 재트레이닝 눈 이미지에서 눈의 눈 포즈는 디스플레이 위치를 포함한다.
[0147] 제22 양상에서, 제19 양상의 시스템에 있어서, 사용자의 복수의 재트레이닝 눈 이미지들을 수신하기 위해, 하나 이상의 프로세서들은 적어도: 재트레이닝 눈 이미지에 기반하여 제2 복수의 제2 재트레이닝 눈 이미지들을 생성하고; 그리고 디스플레이 위치 및 확률 분포 함수를 사용하여 제2 복수의 제2 재트레이닝 눈 이미지들 중 제2 재트레이닝 눈 이미지에서 눈의 눈 포즈를 결정하도록 실행 가능한 명령들에 의해 프로그래밍된다.
[0148] 제23 양상에서, 제18 양상의 시스템에 있어서, 사용자의 복수의 재트레이닝 눈 이미지들을 수신하기 위해, 하나 이상의 프로세서들은 적어도: 사용자의 눈의 복수의 눈 이미지들을 수신하고 ― 복수의 눈 이미지들 중 제1 눈 이미지는, 사용자 디바이스의 디스플레이 위치에서 사용자에게 보여지는 UI 디바이스에 관련하여, UI 이벤트가 발생할 때, 사용자 디바이스에 의해 캡처됨 ― ; 디스플레이 위치로부터, UI 이벤트 이전의 사용자의 운동을 따라 후방으로, 운동의 시작까지, UI 디바이스의 투사된 디스플레이 위치를 결정하고; 운동의 시작에서 캡처된 복수의 눈 이미지들 중 제2 눈 이미지에서 UI 디바이스의 투사된 디스플레이 위치 및 제2 디스플레이 위치가 임계 거리 내에 있다고 결정하고; 그리고 제2 눈 이미지로부터 제1 눈 이미지까지 복수의 눈 이미지들의 눈 이미지들을 포함하는 재트레이닝 입력 데이터를 생성하도록 실행 가능한 명령들에 의해 프로그래밍되고, 대응하는 재트레이닝 타겟 출력 데이터는 눈 이미지에서 UI 디바이스의 디스플레이 위치에 관련된 눈 이미지들의 각각의 눈 이미지에서 사용자의 눈의 눈 포즈를 포함한다.
[0149] 제24 양상에서, 제23 양상의 시스템에 있어서, 눈의 눈 포즈는 디스플레이 위치이다.
[0150] 제25 양상에서, 제24 양상의 시스템에 있어서, 하나 이상의 프로세서들은 적어도, UI 디바이스의 디스플레이 위치를 사용하여 눈의 눈 포즈를 결정하도록 실행 가능한 명령들에 의해 추가로 프로그래밍된다.
[0151] 제26 양상에서, 제18 양상 내지 제25 양상 중 어느 한 양상의 시스템에 있어서, 재트레이닝 세트를 생성하기 위해, 하나 이상의 프로세서들은 적어도: 재트레이닝 눈 이미지에서 눈의 눈 포즈가 복수의 눈 포즈 구역들 중 제1 눈 포즈 구역에 있다고 결정하고; UI 디바이스가 제1 눈 포즈 구역에 있을 분포 확률을 결정하고; 그리고 분포 확률에 관련된 포함 확률로, 재트레이닝 눈 이미지를 포함하는 재트레이닝 입력 데이터를 생성하도록 실행 가능한 명령들에 의해 프로그래밍된다.
[0152] 제27 양상에서, 제18 양상 내지 제26 양상 중 어느 한 양상의 시스템에 있어서, 하나 이상의 프로세서들은 적어도: 트레이닝 입력 데이터 및 대응하는 트레이닝 타겟 출력 데이터를 포함하는 트레이닝 세트를 사용하여 눈 추적을 위한 뉴럴 네트워크를 트레이닝하도록 실행 가능한 명령들에 의해 추가로 프로그래밍되고, 트레이닝 입력 데이터는 복수의 사용자들의 복수의 트레이닝 눈 이미지들을 포함하고, 그리고 대응하는 트레이닝 타겟 출력 데이터는 복수의 트레이닝 눈 이미지들에서 복수의 사용자들의 눈들의 눈 포즈들을 포함한다.
[0153] 제28 양상에서, 제27 양상의 시스템에 있어서, 재트레이닝 세트의 재트레이닝 입력 데이터는 복수의 트레이닝 눈 이미지들 중 적어도 하나의 트레이닝 눈 이미지를 포함한다.
[0154] 제29 양상에서, 제27 양상의 시스템에 있어서, 재트레이닝 세트의 재트레이닝 입력 데이터는 복수의 트레이닝 눈 이미지들 중 어떠한 트레이닝 눈 이미지도 포함하지 않는다.
[0155] 제30 양상에서, 제18 양상 내지 제29 양상 중 어느 한 양상의 시스템에 있어서, 눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위해, 하나 이상의 프로세서들은 적어도: 재트레이닝된 뉴럴 네트워크의 가중치들을 뉴럴 네트워크의 가중치들로 초기화하도록 실행 가능한 명령들에 의해 프로그래밍된다.
[0156] 제31 양상에서, 제18 양상 내지 제30 양상 중 어느 한 양상의 시스템에 있어서, 하나 이상의 프로세서들은, 사용자 디바이스로 하여금: 사용자의 눈 이미지를 캡처하게 하고; 그리고 재트레이닝된 뉴럴 네트워크를 사용하여 눈 이미지에서 사용자의 눈 포즈를 결정하게 하도록 실행 가능한 명령들에 의해 프로그래밍된다.
[0157] 제32 양상에서, 뉴럴 네트워크를 트레이닝하기 위한 방법이 개시된다. 방법은 하드웨어 프로세서의 제어 하에 있고, 사용자의 눈의 복수의 재트레이닝 눈 이미지들을 수신하는 단계 ― 복수의 재트레이닝 눈 이미지들의 재트레이닝 눈 이미지는, 디스플레이 위치에서 사용자에게 보여지는 UI(user interface) 디바이스에 관련하여, UI 이벤트가 발생할 때 캡처됨 ― ; 재트레이닝 입력 데이터 및 대응하는 재트레이닝 타겟 출력 데이터를 포함하는 재트레이닝 세트를 생성하는 단계 ― 재트레이닝 입력 데이터는 재트레이닝 눈 이미지들을 포함하고, 그리고 대응하는 재트레이닝 타겟 출력 데이터는 디스플레이 위치에 관련된 재트레이닝 눈 이미지에서 사용자의 눈의 눈 포즈를 포함함 ― ; 및 재트레이닝된 뉴럴 네트워크를 생성하기 위해 재트레이닝 세트를 사용하여 뉴럴 네트워크를 재트레이닝하는 단계를 포함한다.
[0158] 제33 양상에서, 제32 양상의 방법에 있어서, 사용자의 복수의 재트레이닝 눈 이미지들을 수신하는 단계는: 디스플레이를 사용하여 디스플레이 위치에서 UI 디바이스를 사용자에게 디스플레이하는 단계; UI 디바이스에 관련하여 UI 이벤트의 발생을 결정하는 단계; 및 이미징 시스템을 사용하여 재트레이닝 눈 이미지를 캡처하는 단계를 포함한다.
[0159] 제34 양상에서, 제33 양상의 방법에 있어서, 사용자의 복수의 재트레이닝 눈 이미지들을 수신하는 단계는: 재트레이닝 눈 이미지에 기반하여 제2 복수의 제2 재트레이닝 눈 이미지들을 생성하는 단계; 및 디스플레이 위치 및 확률 분포 함수를 사용하여 제2 복수의 제2 재트레이닝 눈 이미지들 중 제2 재트레이닝 눈 이미지에서 눈의 눈 포즈를 결정하는 단계를 더 포함한다.
[0160] 제35 양상에서, 제34 양상의 방법에 있어서, 확률 분포 함수는 UI 디바이스의 미리 결정된 확률 분포를 포함한다.
[0161] 제36 양상에서, 제34 양상의 방법에 있어서, UI 디바이스는 제1 컴포넌트 및 제2 컴포넌트를 포함하고, 확률 분포 함수는 제1 컴포넌트에 관련하여 확률 분포 함수와 제2 컴포넌트에 관련하여 제2 확률 분포 함수의 결합된 확률 분포를 포함한다.
[0162] 제37 양상에서, 제36 양상의 방법에 있어서, UI 디바이스들의 제1 컴포넌트는 그래픽 UI 디바이스를 포함하고, UI 디바이스들의 제2 컴포넌트는 그래픽 UI 디바이스의 텍스트 설명을 포함한다.
[0163] 제38 양상에서, 제32 양상의 방법에 있어서, 사용자의 복수의 재트레이닝 눈 이미지들을 수신하는 단계는: 사용자의 눈의 복수의 눈 이미지들을 수신하는 단계 ― 복수의 눈 이미지들 중 제1 눈 이미지는, 디스플레이 위치에서 사용자에게 보여지는 UI 디바이스에 관련하여, UI 이벤트가 발생할 때 캡처됨 ― ; 디스플레이 위치로부터, UI 이벤트 이전에 운동을 따라 후방으로, 운동의 시작까지, UI 디바이스의 투사된 디스플레이 위치를 결정하는 단계; 운동의 시작에서 캡처된 복수의 눈 이미지들 중 제2 눈 이미지에서 UI 디바이스의 투사된 디스플레이 위치 및 제2 디스플레이 위치가 임계 거리 내에 있다고 결정하는 단계; 및 제2 눈 이미지로부터 제1 눈 이미지까지 복수의 눈 이미지들의 눈 이미지들을 포함하는 재트레이닝 입력 데이터를 생성하는 단계를 포함하고, 대응하는 재트레이닝 타겟 출력 데이터는 눈 이미지에서 UI 디바이스의 디스플레이 위치에 관련된 눈 이미지들의 각각의 눈 이미지에서 사용자의 눈의 눈 포즈를 포함한다.
[0164] 제39 양상에서, 제38 양상의 방법에 있어서, 운동은 각운동을 포함한다.
[0165] 제40 양상에서, 제38 양상의 방법에 있어서, 운동은 균일한 운동을 포함한다.
[0166] 제41 양상에서, 제38 양상의 방법에 있어서, UI 이벤트 이전에 운동의 존재를 결정하는 단계를 더 포함한다.
[0167] 제42 양상에서, 제38 양상의 방법에 있어서, 사용자의 눈이 제2 눈 이미지로부터 제1 눈 이미지까지 눈 이미지들에서 운동에 따라 원활하게 움직인다고 결정하는 단계를 더 포함한다.
[0168] 제43 양상에서, 제42 양상의 방법에 있어서, 눈이 원활하게 움직인다고 결정하는 단계는: 뉴럴 네트워크를 사용하여 사용자의 눈이 눈 이미지들에서 운동을 따라 원활하게 움직인다고 결정하는 단계를 포함한다.
[0169] 제44 양상에서, 제42 양상의 방법에 있어서, 눈이 원활하게 움직인다고 결정하는 단계는: 눈 이미지들에서 사용자의 눈의 눈 포즈들이 운동을 따라 원활하게 움직인다고 결정하는 단계를 포함한다.
[0170] 제45 양상에서, 제32 양상 내지 제44 양상 중 어느 한 양상의 방법에 있어서, 눈의 눈 포즈는 디스플레이 위치이다.
[0171] 제46 양상에서, 제32 양상 내지 제45 양상 중 어느 한 양상의 방법에 있어서, UI 디바이스의 디스플레이 위치를 사용하여 눈의 눈 포즈를 결정하는 단계를 더 포함한다.
[0172] 제47 양상에서, 제46 양상의 방법에 있어서, 눈의 눈 포즈를 결정하는 단계는, UI 디바이스의 디스플레이 위치, 눈의 위치, 또는 이들의 조합을 사용하여 눈의 눈 포즈를 결정하는 단계를 포함한다.
[0173] 제48 양상에서, 제32 양상 내지 제47 양상 중 어느 한 양상의 방법에 있어서, 재트레이닝 세트를 생성하는 단계는: 재트레이닝 눈 이미지에서 눈의 눈 포즈가 복수의 눈 포즈 구역들 중 제1 눈 포즈 구역에 있다고 결정하는 단계; UI 디바이스가 제1 눈 포즈 구역에 있을 분포 확률을 결정하는 단계; 및 분포 확률에 관련된 포함 확률로, 재트레이닝 눈 이미지를 포함하는 재트레이닝 입력 데이터를 생성하는 단계를 포함한다.
[0174] 제49 양상에서, 제48 양상의 방법에 있어서, 포함 확률은 분포 확률에 반비례한다.
[0175] 제50 양상에서, 제48 양상의 방법에 있어서, 제1 눈 포즈 구역은 제1 천정 범위(zenith range) 및 제1 방위각 범위(azimuth range) 내에 있다.
[0176] 제51 양상에서, 제48 양상의 방법에 있어서, 눈의 눈 포즈가 제1 눈 포즈 구역에 있다고 결정하는 단계는: 재트레이닝 눈 이미지에서 눈의 눈 포즈가 복수의 눈 포즈 구역들 중 제1 눈 포즈 구역 또는 제2 눈 포즈 구역에 있다고 결정하는 단계를 포함한다.
[0177] 제52 양상에서, 제51 양상의 방법에 있어서, 제1 눈 포즈 구역은 제1 천정 범위 및 제1 방위각 범위 내에 있고, 제2 눈 포즈 구역은 제2 천정 범위 및 제2 방위각 범위 내에 있고, 제1 천정 범위의 수 및 제2 천정 범위의 수의 합이 제로이거나, 제1 방위각 범위의 수 및 제2 방위각 범위의 수의 합이 제로이거나, 이들의 조합이 가능하다.
[0178] 제53 양상에서, 제48 양상의 방법에 있어서, UI 디바이스가 제1 눈 포즈 구역에 있을 분포 확률을 결정하는 단계는, 복수의 눈 포즈 구역들의 눈 포즈 구역들에서, 복수의 재트레이닝 눈 이미지들의 재트레이닝 눈 이미지들이 캡처될 때 사용자에게 보여지는 UI 디바이스들의 디스플레이 위치들의 분포를 결정하는 단계를 포함하고, UI 디바이스가 제1 눈 포즈 구역에 있을 분포 확률을 결정하는 단계는, UI 디바이스들의 디스플레이 위치들의 분포를 사용하여, UI 디바이스가 제1 눈 포즈 구역에 있을 분포 확률을 결정하는 단계를 포함한다.
[0179] 제54 양상에서, 제32 양상 내지 제53 양상 중 어느 한 양상의 방법에 있어서, 트레이닝 입력 데이터 및 대응하는 트레이닝 타겟 출력 데이터를 포함하는 트레이닝 세트를 사용하여 뉴럴 네트워크를 트레이닝하는 단계를 더 포함하고, 트레이닝 입력 데이터는 복수의 사용자들의 복수의 트레이닝 눈 이미지들을 포함하고, 그리고 대응하는 트레이닝 타겟 출력 데이터는 복수의 트레이닝 눈 이미지들에서 복수의 사용자들의 눈들의 눈 포즈들을 포함한다.
[0180] 제55 양상에서, 제54 양상의 방법에 있어서, 복수의 사용자들은 매우 많은 수의 사용자들을 포함한다.
[0181] 제56 양상에서, 제54 양상의 방법에 있어서, 눈들의 눈 포즈들은 눈들의 다양한 눈 포즈들을 포함한다.
[0182] 제57 양상에서, 제54 양상의 방법에 있어서, 재트레이닝 세트의 재트레이닝 입력 데이터는 복수의 트레이닝 눈 이미지들 중 적어도 하나의 트레이닝 눈 이미지를 포함한다.
[0183] 제58 양상에서, 제54 양상의 방법에 있어서, 재트레이닝 세트의 재트레이닝 입력 데이터는 복수의 트레이닝 눈 이미지들 중 어떠한 트레이닝 눈 이미지도 포함하지 않는다.
[0184] 제59 양상에서, 제32 양상 내지 제58 양상 중 어느 한 양상의 방법에 있어서, 뉴럴 네트워크를 재트레이닝하는 단계는, 눈 추적을 위한 재트레이닝된 뉴럴 네트워크를 생성하기 위해, 재트레이닝 세트를 사용하여 뉴럴 네트워크를 재트레이닝하는 단계를 포함한다.
[0185] 제60 양상에서, 제32 양상 내지 제59 양상 중 어느 한 양상의 방법에 있어서, 뉴럴 네트워크를 재트레이닝하는 단계는, 생체인식 애플리케이션을 위한 재트레이닝된 뉴럴 네트워크를 생성하기 위해, 재트레이닝 세트를 사용하여 뉴럴 네트워크를 재트레이닝하는 단계를 포함한다.
[0186] 제61 양상에서, 제60 양상의 방법에 있어서, 생체인식 애플리케이션은 홍채 식별을 포함한다.
[0187] 제62 양상에서, 제32 양상 내지 제61 양상 중 어느 한 양상의 방법에 있어서, 뉴럴 네트워크를 재트레이닝하는 단계는, 재트레이닝된 뉴럴 네트워크의 가중치들을 뉴럴 네트워크의 가중치들로 초기화하는 단계를 포함한다.
[0188] 제63 양상에서, 제32 양상 내지 제62 양상 중 어느 한 양상의 방법에 있어서, 사용자의 눈 이미지를 수신하는 단계; 및 재트레이닝된 뉴럴 네트워크를 사용하여 눈 이미지에서 사용자의 눈 포즈를 결정하는 단계를 더 포함한다.
[0189] 제64 양상에서, 제32 양상 내지 제63 양상 중 어느 한 양상의 방법에 있어서, UI 이벤트는 UI 디바이스의 복수의 상태들의 상태에 대응한다.
[0190] 제65 양상에서, 제64 양상의 방법에 있어서, 복수의 상태들은 UI 디바이스의 활성화 또는 비-활성화를 포함한다.
[0191] 제66 양상에서, 제32 양상 내지 제65 양상 중 어느 한 양상의 방법에 있어서, UI 디바이스는 아루코(aruco), 버튼, 업다운, 스피너(spinner), 픽커(picker), 라디오 버튼, 라디오 버튼 리스트, 체크박스, 픽처 박스, 체크박스 리스트, 드롭다운 리스트, 드롭다운 메뉴, 선택 리스트, 리스트 박스, 콤보 박스, 텍스트박스, 슬라이더, 링크, 키보드 키, 스위치, 슬라이더, 터치 표면, 또는 이들의 조합을 포함한다.
[0192] 제67 양상에서, 제32 양상 내지 제66 양상 중 어느 한 양상의 방법에 있어서, UI 이벤트는 UI 디바이스 및 포인터에 관련하여 발생한다.
[0193] 제68 양상에서, 제67 양상의 방법에 있어서, 포인터는 사용자 또는 사용자의 부분과 연관된 객체를 포함한다.
[0194] 제69 양상에서, 제68 양상의 방법에 있어서, 사용자와 연관된 객체는 포인터, 펜, 펜슬, 마커, 하이라이터, 또는 이들의 조합을 포함하고, 사용자의 부분은 사용자의 손가락을 포함한다.
부가적인 고려사항들
[0195] 본원에서 설명되고 그리고/또는 첨부 도면들에 도시되는 프로세스들, 방법들 및 알고리즘들 각각은 하나 이상의 물리적 컴퓨팅 시스템들, 하드웨어 컴퓨터 프로세서들, 애플리케이션-특정 회로 및/또는 특수 및 특정 컴퓨터 명령들을 실행하도록 구성된 전자 하드웨어에 의해 실행되는 코드 모듈들로 구현되고, 이 코드 모듈들에 의해 완전히 또는 부분적으로 자동화될 수 있다. 예컨대, 컴퓨팅 시스템들은 특정 컴퓨터 명령들로 프로그래밍된 범용 컴퓨터들(예컨대, 서버들) 또는 특수 목적 컴퓨터들, 특수 목적 회로 등을 포함할 수 있다. 코드 모듈은 실행 가능 프로그램으로 컴파일되어 링크되거나, 동적 링크 라이브러리에 설치될 수 있거나, 또는 인터프리팅된 프로그래밍 언어로 기록될 수 있다. 일부 구현들에서, 특정한 동작들 및 방법들은, 주어진 기능에 특정한 회로에 의해 수행될 수 있다.
[0196] 추가로, 본 개시내용의 기능성의 소정의 구현들은 충분히 수학적으로, 계산상으로 또는 기술적으로 복잡하여, (적절한 특수화된 실행 가능 명령들을 활용하는) 주문형 하드웨어 또는 하나 이상의 물리적 컴퓨팅 디바이스들은 예컨대, 수반되는 계산들의 양(volume) 또는 복잡성으로 인해 또는 실질적으로 실시간으로 결과들을 제공하기 위해 그 기능성들을 수행할 필요가 있을 수 있다. 예컨대, 비디오는 다수의 프레임들(각각의 프레임은 수백만 개의 픽셀들을 가짐)을 포함할 수 있고, 상업적으로 적절한 시간량 내에 원하는 이미지 프로세싱 태스크 또는 애플리케이션을 제공하기 위해, 특별히 프로그래밍된 컴퓨터 하드웨어가 비디오 데이터를 프로세싱할 필요가 있다.
[0197] 코드 모듈들 또는 임의의 유형의 데이터는, 임의의 유형의 비-일시적인 컴퓨터-판독 가능 매체, 이를테면, 하드 드라이브, 솔리드 스테이트 메모리, RAM(random access memory), ROM(read only memory), 광학 디스크, 휘발성 또는 비-휘발성 저장소, 이들의 조합들 등을 포함하는 물리적 컴퓨터 저장소 상에 저장될 수 있다. 방법들 및 모듈들(또는 데이터)은 또한, 생성된 데이터 신호들로서(예컨대, 반송파 또는 다른 아날로그 또는 디지털 전파 신호의 일부로서) 무선-기반 및 유선/케이블-기반 매체들을 포함하는 다양한 컴퓨터-판독 가능 송신 매체들 상에서 송신될 수 있고, (예컨대, 단일 또는 멀티플렉싱된 아날로그 신호의 일부로서, 또는 다수의 이산 디지털 패킷들 또는 프레임들로서) 다양한 형태들을 취할 수 있다. 개시된 프로세스들 또는 프로세스 단계들의 결과들은 임의의 유형의 비-일시적인 유형의(tangible) 컴퓨터 저장소에 지속적으로 또는 다른 방식으로 저장될 수 있거나, 또는 컴퓨터-판독 가능 송신 매체를 통해 통신될 수 있다.
[0198] 본원에서 설명되고 그리고/또는 첨부된 도면들에 도시되는 흐름도들에서의 임의의 프로세스들, 블록들, 상태들, 단계들 또는 기능성들은 프로세스의 단계들 또는 (예컨대, 논리적 또는 산술적) 특정 기능들을 구현하기 위한 하나 이상의 실행 가능 명령들을 포함하는 코드 모듈들, 세그먼트들 또는 코드 부분들을 잠재적으로 나타내는 것으로 이해되어야 한다. 다양한 프로세스들, 블록들, 상태들, 단계들 또는 기능성들은 조합되거나, 재배열되거나, 본원에서 제공된 예시적인 예들에 부가되거나, 이들로부터 제거되거나, 수정되거나, 또는 다른 방식으로 이들로부터 변할 수 있다. 일부 실시예들에서, 부가적인 또는 상이한 컴퓨팅 시스템들 또는 코드 모듈들은 본원에서 설명된 기능성들 중 일부 또는 전부를 수행할 수 있다. 본원에 설명된 방법들 및 프로세스들은 또한, 임의의 특정 시퀀스로 제한되지 않고, 그에 관련된 블록들, 단계들 또는 상태들은 적절한 다른 시퀀스들로, 예컨대, 순차적으로, 동시에 또는 일부 다른 방식으로 수행될 수 있다. 태스크들 또는 이벤트들은 개시된 예시적인 실시예들에 부가되거나 그로부터 제거될 수 있다. 또한, 본원에서 설명된 구현들에서의 다양한 시스템 컴포넌트들의 분리는 예시 목적들을 위한 것이며, 모든 구현들에서 이러한 분리를 요구하는 것으로 이해되어서는 안 된다. 설명된 프로그램 컴포넌트들, 방법들 및 시스템들은 일반적으로 단일 컴퓨터 제품에 함께 통합되거나 다수의 컴퓨터 제품들로 패키징될 수 있다는 것이 이해되어야 한다. 다수의 구현 변동들이 가능하다.
[0199] 프로세스들, 방법들 및 시스템들은 네트워크(또는 분산형) 컴퓨팅 환경에서 구현될 수 있다. 네트워크 환경들은, 전사적(enterprise-wide) 컴퓨터 네트워크들, 인트라넷들, LAN(Local Area Network)들, WAN(Wide Area Network)들, PAN(Personal Area Network)들, 클라우드 컴퓨팅 네트워크들, 크라우드-소스드(crowd-sourced) 컴퓨팅 네트워크들, 인터넷 및 월드 와이드 웹(World Wide Web)을 포함한다. 네트워크는 유선 또는 무선 네트워크 또는 임의의 다른 유형의 통신 네트워크일 수 있다.
[0200] 본 개시내용의 시스템들 및 방법들 각각은 몇몇 혁신적인 양상들을 가지며, 그 양상들 중 어떠한 단일 양상도 본원에서 개시된 바람직한 속성들을 단독으로 담당하거나 이를 위해 요구되지 않는다. 본원에 설명된 다양한 특징들 및 프로세스들은 서로 독립적으로 사용될 수 있거나, 또는 다양한 방식들로 조합될 수 있다. 모든 가능한 조합들 및 서브조합들은 본 개시내용의 범위 내에 속하는 것으로 의도된다. 본 개시내용에서 설명된 구현들에 대한 다양한 수정들은 당업자들에게 용이하게 자명할 수 있으며, 본원에서 정의된 일반적인 원리들은 본 개시내용의 사상 또는 범위를 벗어나지 않으면서 다른 구현들에 적용될 수 있다. 따라서, 청구항들은 본 명세서에 도시된 구현들로 제한되도록 의도되는 것이 아니라, 본 명세서에 개시된 본 개시내용, 원리들 및 신규한 특성들과 일치하는 가장 넓은 범위에 부합할 것이다.
[0201] 별개의 구현들의 맥락에서 본 명세서에 설명된 소정의 특징들은 또한, 단일 구현의 조합으로 구현될 수 있다. 대조적으로, 단일 구현의 맥락에서 설명된 다양한 특징들은 또한, 별개로 다수의 구현들로 또는 임의의 적절한 서브조합으로 구현될 수 있다. 더욱이, 특징들이 소정의 조합들로 작용하는 것으로 위에서 설명되고 심지어 초기에 이와 같이 청구될 수 있지만, 일부 경우들에서, 청구된 조합으로부터의 하나 이상의 특징들은 그 조합으로부터 제거될 수 있고, 청구된 조합은 서브조합 또는 서브조합의 변형에 관련될 수 있다. 단일 특징 또는 특징들의 그룹이 각각의 그리고 모든 각각의 실시예에 필요하거나 필수적인 것은 아니다.
[0202] 구체적으로 달리 언급되지 않거나 또는 사용된 맥락 내에서 달리 이해되지 않으면, 본원에서 사용된 조건어, 이를테면, 다른 것들 중에서도, "할 수 있다(can, could, might, may)", "예컨대" 등은 일반적으로, 소정의 실시예들이 소정의 특징들, 엘리먼트들, 및/또는 단계들을 포함하지만 다른 실시예들은 이들을 포함하지 않는다는 것을 전달하도록 의도된다. 따라서, 그러한 조건어는 일반적으로, 특징들, 엘리먼트들, 및/또는 단계들이 하나 이상의 실시예들을 위해 어떤 식으로든 요구된다는 것을, 또는 하나 이상의 실시예들이, 저자 입력 또는 프롬프팅(prompting)을 이용하거나 또는 그러한 것을 이용함이 없이, 이들 특징들, 엘리먼트들, 및/또는 단계들이 임의의 특정 실시예에 포함되는지 또는 임의의 특정 실시예들에서 수행되어야 하는지를 판단하기 위한 로직을 반드시 포함한다는 것을 암시하도록 의도되진 않는다. "포함하는(comprising, including), "갖는(having)" 등의 용어들은 동의어이며, 오픈-엔디드(open-ended) 방식으로 포괄적으로 사용되며, 부가적인 엘리먼트들, 특징들, 행동들, 동작들 등을 배제하지 않는다. 또한, "또는"이라는 용어는 (그의 배타적인 의미가 아니라) 그의 포괄적인 의미로 사용되어서, 예컨대, 리스트의 엘리먼트들을 연결하기 위해 사용될 때, "또는"이라는 용어는 리스트 내의 엘리먼트들 중 하나, 일부, 또는 전부를 의미한다. 또한, 본 명세서 및 첨부된 청구항들에서 사용된 바와 같은 단수 표현은 달리 특정되지 않는 한 "하나 이상" 또는 "적어도 하나"를 의미하는 것으로 해석될 것이다.
[0203] 본원에서 사용된 바와 같이, 리스트의 아이템들 “중 적어도 하나"를 지칭하는 어구는 단일 멤버들을 포함하여 그 아이템들의 임의의 조합을 지칭한다. 예로서, "A, B 또는 C 중 적어도 하나"는 A; B; C; A와 B; A와 C; B와 C; 그리고 A와 B와 C를 커버하는 것으로 의도된다. 특정하게 다르게 언급되지 않으면, 구문 "X, Y 또는 Z 중 적어도 하나"와 같은 접속어는, 아이템, 용어 등이 X, Y 또는 Z 중 적어도 하나일 수 있다는 것을 전달하기 위해 일반적으로 사용되는 맥락으로 달리 이해된다. 따라서, 이러한 접속어는 일반적으로, 소정의 실시예들이 X 중 적어도 하나, Y 중 적어도 하나 및 Z 중 적어도 하나가 각각 존재할 것을 요구하는 것을 암시하는 것으로 의도되지 않는다.
[0204] 유사하게, 동작들이 특정한 순서로 도면들에 도시될 수 있지만, 원하는 결과들을 달성하기 위해, 그러한 동작들이 도시된 특정한 순서 또는 순차적인 순서로 수행될 필요가 없거나, 모든 예시된 동작들이 수행될 필요가 없다는 것이 인지될 것이다. 추가로, 도면들은 흐름도의 형태로 하나 이상의 예시적인 프로세스들을 개략적으로 도시할 수 있다. 그러나, 도시되지 않은 다른 동작들이, 개략적으로 예시된 예시적인 방법들 및 프로세스들에 통합될 수 있다. 예컨대, 하나 이상의 부가적인 동작들은, 예시된 동작들 중 임의의 동작 이전, 이후, 그들과 동시에, 또는 그들 사이에서 수행될 수 있다. 부가적으로, 동작들은 다른 구현들에서 재배열되거나 재순서화될 수 있다. 소정의 환경들에서, 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 또한, 위에서 설명된 구현에서의 다양한 시스템 컴포넌트들의 분리는 모든 구현들에서 그러한 분리를 요구하는 것으로서 이해되지는 않아야 하고, 그리고 설명된 프로그램 컴포넌트들 및 시스템들이 일반적으로, 단일 소프트웨어 제품으로 함께 통합되거나 다수의 소프트웨어 제품들로 패키징될 수 있다는 것이 이해되어야 한다. 부가적으로, 다른 구현들은 다음의 청구항들의 범위 내에 있다. 일부 경우들에서, 청구항들에서 열거된 액션들은, 상이한 순서로 수행될 수 있으며, 그럼에도 불구하고 원하는 결과들을 달성할 수 있다.

Claims (69)

  1. 사용자의 눈의 복수의 재트레이닝 눈 이미지들(retraining eye images)을 캡처하도록 구성된 이미지 캡처 디바이스;
    디스플레이;
    상기 복수의 재트레이닝 눈 이미지들, 및 눈 추적을 위한 뉴럴 네트워크를 저장하도록 구성된 비-일시적인 컴퓨터-판독 가능한 저장 매체; 및
    상기 이미지 캡처 디바이스, 상기 디스플레이, 및 상기 비-일시적인 컴퓨터-판독 가능한 저장 매체와 통신하는 하드웨어 프로세서를 포함하고,
    상기 하드웨어 프로세서는:
    상기 이미지 캡처 디바이스에 의해 캡처된 상기 복수의 재트레이닝 눈 이미지들을 수신하고 ― 상기 복수의 재트레이닝 눈 이미지들의 재트레이닝 눈 이미지는, 상기 디스플레이의 디스플레이 위치에서 사용자에게 보여지는 UI(user interface) 디바이스에 관련하여, UI 이벤트가 발생할 때, 상기 이미지 캡처 디바이스에 의해 캡처됨 ― ;
    재트레이닝 입력 데이터 및 대응하는 재트레이닝 타겟 출력 데이터를 포함하는 재트레이닝 세트를 생성하고 ― 상기 재트레이닝 입력 데이터는 상기 재트레이닝 눈 이미지들을 포함하고, 그리고 상기 대응하는 재트레이닝 타겟 출력 데이터는 상기 디스플레이 위치에 관련된 상기 재트레이닝 눈 이미지에서 상기 사용자의 눈의 눈 포즈를 포함함 ― ; 그리고
    상기 재트레이닝 세트를 사용하여 눈 추적을 위한 뉴럴 네트워크로부터 재트레이닝되는 재트레이닝된 뉴럴 네트워크를 획득하도록 실행 가능한 명령들에 의해 프로그래밍되는,
    웨어러블 디스플레이 시스템.
  2. 제1 항에 있어서,
    상기 재트레이닝된 뉴럴 네트워크를 획득하기 위해, 상기 하드웨어 프로세서는 적어도:
    상기 재트레이닝되는 뉴럴 네트워크를 생성하기 위해 상기 재트레이닝 세트를 사용하여 상기 눈 추적을 위한 뉴럴 네트워크를 재트레이닝하도록 프로그래밍되는,
    웨어러블 디스플레이 시스템.
  3. 제1 항에 있어서,
    상기 재트레이닝된 뉴럴 네트워크를 획득하기 위해, 상기 하드웨어 프로세서는 적어도:
    상기 재트레이닝 세트를 원격 시스템에 송신하고; 그리고
    상기 원격 시스템으로부터 상기 재트레이닝된 뉴럴 네트워크를 수신하도록 프로그래밍되는,
    웨어러블 디스플레이 시스템.
  4. 제3 항에 있어서,
    상기 원격 시스템은 클라우드 컴퓨팅 시스템을 포함하는,
    웨어러블 디스플레이 시스템.
  5. 제1 항에 있어서,
    상기 사용자의 상기 복수의 재트레이닝 눈 이미지들을 수신하기 위해, 상기 하드웨어 프로세서는 적어도:
    상기 디스플레이 상의 상기 디스플레이 위치에서 상기 UI 디바이스를 상기 사용자에게 디스플레이하고;
    상기 UI 디바이스에 관련하여 상기 UI 이벤트의 발생을 결정하고; 그리고
    상기 이미지 캡처 디바이스로부터 상기 재트레이닝 눈 이미지를 수신하도록 상기 실행 가능한 명령들에 의해 프로그래밍되는,
    웨어러블 디스플레이 시스템.
  6. 제1 항에 있어서,
    상기 하드웨어 프로세서는,
    상기 디스플레이 위치를 사용하여 상기 재트레이닝 눈 이미지에서 상기 눈의 눈 포즈를 결정하도록 상기 실행 가능한 명령들에 의해 추가로 프로그래밍되는,
    웨어러블 디스플레이 시스템.
  7. 제6 항에 있어서,
    상기 재트레이닝 눈 이미지에서 상기 눈의 눈 포즈는 상기 디스플레이 위치를 포함하는,
    웨어러블 디스플레이 시스템.
  8. 제1 항에 있어서,
    상기 사용자의 상기 복수의 재트레이닝 눈 이미지들을 수신하기 위해, 상기 하드웨어 프로세서는 적어도:
    상기 재트레이닝 눈 이미지에 기반하여 제2 복수의 제2 재트레이닝 눈 이미지들을 생성하고; 그리고
    상기 디스플레이 위치 및 확률 분포 함수(probability distribution function)를 사용하여 상기 제2 복수의 제2 재트레이닝 눈 이미지들 중 제2 재트레이닝 눈 이미지에서 상기 눈의 눈 포즈를 결정하도록 상기 실행 가능한 명령들에 의해 프로그래밍되는,
    웨어러블 디스플레이 시스템.
  9. 제1 항에 있어서,
    상기 사용자의 상기 복수의 재트레이닝 눈 이미지들을 수신하기 위해, 상기 하드웨어 프로세서는 적어도:
    상기 이미지 캡처 디바이스로부터 상기 사용자의 눈의 복수의 눈 이미지들을 수신하고 ― 상기 복수의 눈 이미지들 중 제1 눈 이미지는, 상기 디스플레이의 디스플레이 위치에서 상기 사용자에게 보여지는 상기 UI 디바이스에 관련하여, 상기 UI 이벤트가 발생할 때, 상기 사용자 디바이스에 의해 캡처됨 ― ;
    상기 디스플레이 위치로부터, 상기 UI 이벤트 이전의 상기 사용자의 운동(motion)을 따라 후방으로, 상기 운동의 시작까지, 상기 UI 디바이스의 투사된 디스플레이 위치를 결정하고;
    상기 운동의 시작에서 캡처된 상기 복수의 눈 이미지들 중 제2 눈 이미지에서 상기 UI 디바이스의 상기 투사된 디스플레이 위치 및 제2 디스플레이 위치가 임계 거리 내에 있다고 결정하고; 그리고
    상기 제2 눈 이미지로부터 상기 제1 눈 이미지까지 상기 복수의 눈 이미지들의 눈 이미지들을 포함하는 상기 재트레이닝 입력 데이터를 생성하도록 상기 실행 가능한 명령들에 의해 프로그래밍되고,
    상기 대응하는 재트레이닝 타겟 출력 데이터는 상기 눈 이미지에서 상기 UI 디바이스의 디스플레이 위치에 관련된 상기 눈 이미지들의 각각의 눈 이미지에서 상기 사용자의 눈의 눈 포즈를 포함하는,
    웨어러블 디스플레이 시스템.
  10. 제1 항에 있어서,
    상기 눈의 눈 포즈는 상기 디스플레이 위치인,
    웨어러블 디스플레이 시스템.
  11. 제1 항에 있어서,
    상기 하드웨어 프로세서는 적어도, 상기 UI 디바이스의 디스플레이 위치를 사용하여 상기 눈의 눈 포즈를 결정하도록 상기 실행 가능한 명령들에 의해 추가로 프로그래밍되는,
    웨어러블 디스플레이 시스템.
  12. 제1 항에 있어서,
    상기 재트레이닝 세트를 생성하기 위해, 상기 하드웨어 프로세서는 적어도:
    상기 재트레이닝 눈 이미지에서 상기 눈의 눈 포즈가 복수의 눈 포즈 구역들 중 제1 눈 포즈 구역에 있다고 결정하고;
    상기 UI 디바이스가 상기 제1 눈 포즈 구역에 있을 분포 확률을 결정하고; 그리고
    상기 분포 확률에 관련된 포함 확률(inclusion probability)로, 상기 재트레이닝 눈 이미지를 포함하는 상기 재트레이닝 입력 데이터를 생성하도록 상기 실행 가능한 명령들에 의해 프로그래밍되는,
    웨어러블 디스플레이 시스템.
  13. 제1 항에 있어서,
    상기 하드웨어 프로세서는 적어도:
    트레이닝 입력 데이터 및 대응하는 트레이닝 타겟 출력 데이터를 포함하는 트레이닝 세트를 사용하여 상기 눈 추적을 위한 뉴럴 네트워크를 트레이닝하도록 상기 실행 가능한 명령들에 의해 추가로 프로그래밍되고,
    상기 트레이닝 입력 데이터는 복수의 사용자들의 복수의 트레이닝 눈 이미지들을 포함하고, 그리고
    상기 대응하는 트레이닝 타겟 출력 데이터는 상기 복수의 트레이닝 눈 이미지들에서 상기 복수의 사용자들의 눈들의 눈 포즈들을 포함하는,
    웨어러블 디스플레이 시스템.
  14. 제13 항에 있어서,
    상기 재트레이닝 세트의 상기 재트레이닝 입력 데이터는 상기 복수의 트레이닝 눈 이미지들 중 적어도 하나의 트레이닝 눈 이미지를 포함하는,
    웨어러블 디스플레이 시스템.
  15. 제13 항에 있어서,
    상기 재트레이닝 세트의 상기 재트레이닝 입력 데이터는 상기 복수의 트레이닝 눈 이미지들 중 어떠한 트레이닝 눈 이미지도 포함하지 않는,
    웨어러블 디스플레이 시스템.
  16. 제1 항에 있어서,
    상기 눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위해, 상기 하드웨어 프로세서는 적어도:
    상기 재트레이닝된 뉴럴 네트워크의 가중치들을 상기 뉴럴 네트워크의 가중치들로 초기화하도록 상기 실행 가능한 명령들에 의해 프로그래밍되는,
    웨어러블 디스플레이 시스템.
  17. 제1 항에 있어서,
    상기 하드웨어 프로세서는, 상기 사용자 디바이스로 하여금:
    상기 이미지 캡처 디바이스로부터 상기 사용자의 눈 이미지를 수신하게 하고; 그리고
    상기 재트레이닝된 뉴럴 네트워크를 사용하여 상기 눈 이미지에서 상기 사용자의 눈 포즈를 결정하게 하도록 상기 실행 가능한 명령들에 의해 프로그래밍되는,
    웨어러블 디스플레이 시스템.
  18. 실행 가능한 명령들을 저장하는 컴퓨터-판독 가능한 메모리; 및
    하나 이상의 프로세서들을 포함하고,
    상기 하나 이상의 프로세서들은 적어도:
    사용자의 눈의 복수의 재트레이닝 눈 이미지들을 수신하고 ― 상기 복수의 재트레이닝 눈 이미지들의 재트레이닝 눈 이미지는, 사용자 디바이스의 디스플레이 위치에서 사용자에게 보여지는 UI(user interface) 디바이스에 관련하여, UI 이벤트가 발생할 때 캡처됨 ― ;
    재트레이닝 입력 데이터 및 대응하는 재트레이닝 타겟 출력 데이터를 포함하는 재트레이닝 세트를 생성하고 ― 상기 재트레이닝 입력 데이터는 상기 재트레이닝 눈 이미지들을 포함하고, 그리고 상기 대응하는 재트레이닝 타겟 출력 데이터는 상기 디스플레이 위치에 관련된 상기 재트레이닝 눈 이미지에서 상기 사용자의 눈의 눈 포즈를 포함함 ― ; 그리고
    재트레이닝된 뉴럴 네트워크를 생성하기 위해 상기 재트레이닝 세트를 사용하여 눈 추적을 위한 뉴럴 네트워크를 재트레이닝하도록 상기 실행 가능한 명령들에 의해 프로그래밍되는,
    눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위한 시스템.
  19. 제18 항에 있어서,
    상기 사용자의 상기 복수의 재트레이닝 눈 이미지들을 수신하기 위해, 상기 하나 이상의 프로세서들은 적어도, 상기 사용자 디바이스 하여금:
    디스플레이를 사용하여 상기 디스플레이 위치에서 상기 UI 디바이스를 상기 사용자에게 디스플레이하게 하고;
    상기 UI 디바이스에 관련하여 상기 UI 이벤트의 발생을 결정하게 하고;
    이미징 시스템을 사용하여 상기 재트레이닝 눈 이미지를 캡처하게 하고; 그리고
    상기 재트레이닝 눈 이미지를 상기 시스템에 송신하게 하도록 상기 실행 가능한 명령들에 의해 프로그래밍되는,
    눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위한 시스템.
  20. 제19 항에 있어서,
    상기 사용자의 상기 복수의 재트레이닝 눈 이미지들을 수신하기 위해, 상기 하나 이상의 프로세서들은 적어도:
    상기 디스플레이 위치를 사용하여 상기 재트레이닝 눈 이미지에서 상기 눈의 눈 포즈를 결정하도록 상기 실행 가능한 명령들에 의해 추가로 프로그래밍되는,
    눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위한 시스템.
  21. 제20 항에 있어서,
    상기 재트레이닝 눈 이미지에서 상기 눈의 눈 포즈는 상기 디스플레이 위치를 포함하는,
    눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위한 시스템.
  22. 제19 항에 있어서,
    상기 사용자의 상기 복수의 재트레이닝 눈 이미지들을 수신하기 위해, 상기 하나 이상의 프로세서들은 적어도:
    상기 재트레이닝 눈 이미지에 기반하여 제2 복수의 제2 재트레이닝 눈 이미지들을 생성하고; 그리고
    상기 디스플레이 위치 및 확률 분포 함수를 사용하여 상기 제2 복수의 제2 재트레이닝 눈 이미지들 중 제2 재트레이닝 눈 이미지에서 상기 눈의 눈 포즈를 결정하도록 상기 실행 가능한 명령들에 의해 프로그래밍되는,
    눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위한 시스템.
  23. 제18 항에 있어서,
    상기 사용자의 상기 복수의 재트레이닝 눈 이미지들을 수신하기 위해, 상기 하나 이상의 프로세서들은 적어도:
    상기 사용자의 눈의 복수의 눈 이미지들을 수신하고 ― 상기 복수의 눈 이미지들 중 제1 눈 이미지는, 상기 사용자 디바이스의 상기 디스플레이 위치에서 상기 사용자에게 보여지는 상기 UI 디바이스에 관련하여, 상기 UI 이벤트가 발생할 때, 상기 사용자 디바이스에 의해 캡처됨 ― ;
    상기 디스플레이 위치로부터, 상기 UI 이벤트 이전의 상기 사용자의 운동을 따라 후방으로, 상기 운동의 시작까지, 상기 UI 디바이스의 투사된 디스플레이 위치를 결정하고;
    상기 운동의 시작에서 캡처된 상기 복수의 눈 이미지들 중 제2 눈 이미지에서 상기 UI 디바이스의 상기 투사된 디스플레이 위치 및 제2 디스플레이 위치가 임계 거리 내에 있다고 결정하고; 그리고
    상기 제2 눈 이미지로부터 상기 제1 눈 이미지까지 상기 복수의 눈 이미지들의 눈 이미지들을 포함하는 상기 재트레이닝 입력 데이터를 생성하도록 상기 실행 가능한 명령들에 의해 프로그래밍되고,
    상기 대응하는 재트레이닝 타겟 출력 데이터는 상기 눈 이미지에서 상기 UI 디바이스의 디스플레이 위치에 관련된 상기 눈 이미지들의 각각의 눈 이미지에서 상기 사용자의 눈의 눈 포즈를 포함하는,
    눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위한 시스템.
  24. 제18 항에 있어서,
    상기 눈의 눈 포즈는 상기 디스플레이 위치인,
    눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위한 시스템.
  25. 제18 항에 있어서,
    상기 하나 이상의 프로세서들은 적어도, 상기 UI 디바이스의 상기 디스플레이 위치를 사용하여 상기 눈의 눈 포즈를 결정하도록 상기 실행 가능한 명령들에 의해 추가로 프로그래밍되는,
    눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위한 시스템.
  26. 제18 항에 있어서,
    상기 재트레이닝 세트를 생성하기 위해, 상기 하나 이상의 프로세서들은 적어도:
    상기 재트레이닝 눈 이미지에서 상기 눈의 눈 포즈가 복수의 눈 포즈 구역들 중 제1 눈 포즈 구역에 있다고 결정하고;
    상기 UI 디바이스가 상기 제1 눈 포즈 구역에 있을 분포 확률을 결정하고; 그리고
    상기 분포 확률에 관련된 포함 확률로, 상기 재트레이닝 눈 이미지를 포함하는 상기 재트레이닝 입력 데이터를 생성하도록 상기 실행 가능한 명령들에 의해 프로그래밍되는,
    눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위한 시스템.
  27. 제18 항에 있어서,
    상기 하나 이상의 프로세서들은 적어도:
    트레이닝 입력 데이터 및 대응하는 트레이닝 타겟 출력 데이터를 포함하는 트레이닝 세트를 사용하여 상기 눈 추적을 위한 뉴럴 네트워크를 트레이닝하도록 상기 실행 가능한 명령들에 의해 추가로 프로그래밍되고,
    상기 트레이닝 입력 데이터는 복수의 사용자들의 복수의 트레이닝 눈 이미지들을 포함하고, 그리고
    상기 대응하는 트레이닝 타겟 출력 데이터는 상기 복수의 트레이닝 눈 이미지들에서 상기 복수의 사용자들의 눈들의 눈 포즈들을 포함하는,
    눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위한 시스템.
  28. 제27 항에 있어서,
    상기 재트레이닝 세트의 상기 재트레이닝 입력 데이터는 상기 복수의 트레이닝 눈 이미지들 중 적어도 하나의 트레이닝 눈 이미지를 포함하는,
    눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위한 시스템.
  29. 제27 항에 있어서,
    상기 재트레이닝 세트의 상기 재트레이닝 입력 데이터는 상기 복수의 트레이닝 눈 이미지들 중 어떠한 트레이닝 눈 이미지도 포함하지 않는,
    눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위한 시스템.
  30. 제18 항에 있어서,
    상기 눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위해, 상기 하나 이상의 프로세서들은 적어도:
    상기 재트레이닝된 뉴럴 네트워크의 가중치들을 상기 뉴럴 네트워크의 가중치들로 초기화하도록 상기 실행 가능한 명령들에 의해 프로그래밍되는,
    눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위한 시스템.
  31. 제18 항에 있어서,
    상기 하나 이상의 프로세서들은, 상기 사용자 디바이스로 하여금:
    상기 사용자의 눈 이미지를 캡처하게 하고; 그리고
    상기 재트레이닝된 뉴럴 네트워크를 사용하여 상기 눈 이미지에서 상기 사용자의 눈 포즈를 결정하게 하도록 상기 실행 가능한 명령들에 의해 프로그래밍되는,
    눈 추적을 위한 뉴럴 네트워크를 재트레이닝하기 위한 시스템.
  32. 하드웨어 프로세서의 제어 하에서:
    사용자의 눈의 복수의 재트레이닝 눈 이미지들을 수신하는 단계 ― 상기 복수의 재트레이닝 눈 이미지들의 재트레이닝 눈 이미지는, 디스플레이 위치에서 사용자에게 보여지는 UI(user interface) 디바이스에 관련하여, UI 이벤트가 발생할 때 캡처됨 ― ;
    재트레이닝 입력 데이터 및 대응하는 재트레이닝 타겟 출력 데이터를 포함하는 재트레이닝 세트를 생성하는 단계 ― 상기 재트레이닝 입력 데이터는 상기 재트레이닝 눈 이미지들을 포함하고, 그리고 상기 대응하는 재트레이닝 타겟 출력 데이터는 상기 디스플레이 위치에 관련된 상기 재트레이닝 눈 이미지에서 상기 사용자의 눈의 눈 포즈를 포함함 ― ; 및
    재트레이닝된 뉴럴 네트워크를 생성하기 위해 상기 재트레이닝 세트를 사용하여 뉴럴 네트워크를 재트레이닝하는 단계를 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  33. 제32 항에 있어서,
    상기 사용자의 상기 복수의 재트레이닝 눈 이미지들을 수신하는 단계는:
    디스플레이를 사용하여 상기 디스플레이 위치에서 상기 UI 디바이스를 상기 사용자에게 디스플레이하는 단계;
    상기 UI 디바이스에 관련하여 상기 UI 이벤트의 발생을 결정하는 단계; 및
    이미징 시스템을 사용하여 상기 재트레이닝 눈 이미지를 캡처하는 단계를 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  34. 제33 항에 있어서,
    상기 사용자의 상기 복수의 재트레이닝 눈 이미지들을 수신하는 단계는:
    상기 재트레이닝 눈 이미지에 기반하여 제2 복수의 제2 재트레이닝 눈 이미지들을 생성하는 단계; 및
    상기 디스플레이 위치 및 확률 분포 함수를 사용하여 상기 제2 복수의 제2 재트레이닝 눈 이미지들 중 제2 재트레이닝 눈 이미지에서 상기 눈의 눈 포즈를 결정하는 단계를 더 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  35. 제34 항에 있어서,
    상기 확률 분포 함수는 상기 UI 디바이스의 미리 결정된 확률 분포를 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  36. 제34 항에 있어서,
    상기 UI 디바이스는 제1 컴포넌트 및 제2 컴포넌트를 포함하고, 상기 확률 분포 함수는 상기 제1 컴포넌트에 관련한 확률 분포 함수와 상기 제2 컴포넌트에 관련한 제2 확률 분포 함수의 결합된 확률 분포를 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  37. 제36 항에 있어서,
    상기 UI 디바이스들의 상기 제1 컴포넌트는 그래픽 UI 디바이스를 포함하고, 상기 UI 디바이스들의 상기 제2 컴포넌트는 상기 그래픽 UI 디바이스의 텍스트 설명을 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  38. 제32 항에 있어서,
    상기 사용자의 상기 복수의 재트레이닝 눈 이미지들을 수신하는 단계는:
    상기 사용자의 상기 눈의 복수의 눈 이미지들을 수신하는 단계 ― 상기 복수의 눈 이미지들 중 제1 눈 이미지는, 상기 디스플레이 위치에서 상기 사용자에게 보여지는 상기 UI 디바이스에 관련하여, 상기 UI 이벤트가 발생할 때 캡처됨 ― ;
    상기 디스플레이 위치로부터, 상기 UI 이벤트 이전의 운동을 따라 후방으로, 상기 운동의 시작까지, 상기 UI 디바이스의 투사된 디스플레이 위치를 결정하는 단계;
    상기 운동의 시작에서 캡처된 상기 복수의 눈 이미지들 중 제2 눈 이미지에서 상기 UI 디바이스의 상기 투사된 디스플레이 위치 및 제2 디스플레이 위치가 임계 거리 내에 있다고 결정하는 단계; 및
    상기 제2 눈 이미지로부터 상기 제1 눈 이미지까지 상기 복수의 눈 이미지들의 눈 이미지들을 포함하는 상기 재트레이닝 입력 데이터를 생성하는 단계를 포함하고,
    상기 대응하는 재트레이닝 타겟 출력 데이터는 상기 눈 이미지에서 상기 UI 디바이스의 디스플레이 위치에 관련된 상기 눈 이미지들의 각각의 눈 이미지에서 상기 사용자의 눈의 눈 포즈를 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  39. 제38 항에 있어서,
    상기 운동은 각운동을 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  40. 제38 항에 있어서,
    상기 운동은 균일한 운동을 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  41. 제38 항에 있어서,
    상기 UI 이벤트 이전의 상기 운동의 존재를 결정하는 단계를 더 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  42. 제38 항에 있어서,
    상기 사용자의 눈이 상기 제2 눈 이미지로부터 상기 제1 눈 이미지까지 상기 눈 이미지들에서 상기 운동에 따라 원활하게(smoothly) 움직인다고 결정하는 단계를 더 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  43. 제42 항에 있어서,
    상기 눈이 원활하게 움직인다고 결정하는 단계는:
    상기 뉴럴 네트워크를 사용하여 상기 사용자의 눈이 상기 눈 이미지들에서 상기 운동을 따라 원활하게 움직인다고 결정하는 단계를 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  44. 제42 항에 있어서,
    상기 눈이 원활하게 움직인다고 결정하는 단계는:
    상기 눈 이미지들에서 상기 사용자의 눈의 눈 포즈들이 상기 운동을 따라 원활하게 움직인다고 결정하는 단계를 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  45. 제32 항에 있어서,
    상기 눈의 눈 포즈는 상기 디스플레이 위치인,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  46. 제32 항에 있어서,
    상기 UI 디바이스의 디스플레이 위치를 사용하여 상기 눈의 눈 포즈를 결정하는 단계를 더 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  47. 제46 항에 있어서,
    상기 눈의 눈 포즈를 결정하는 단계는, 상기 UI 디바이스의 디스플레이 위치, 상기 눈의 위치, 또는 이들의 조합을 사용하여 상기 눈의 눈 포즈를 결정하는 단계를 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  48. 제32 항에 있어서,
    상기 재트레이닝 세트를 생성하는 단계는:
    상기 재트레이닝 눈 이미지에서 상기 눈의 눈 포즈가 복수의 눈 포즈 구역들 중 제1 눈 포즈 구역에 있다고 결정하는 단계;
    상기 UI 디바이스가 상기 제1 눈 포즈 구역에 있을 분포 확률을 결정하는 단계; 및
    상기 분포 확률에 관련된 포함 확률로, 상기 재트레이닝 눈 이미지를 포함하는 상기 재트레이닝 입력 데이터를 생성하는 단계를 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  49. 제48 항에 있어서,
    상기 포함 확률은 상기 분포 확률에 반비례하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  50. 제48 항에 있어서,
    상기 제1 눈 포즈 구역은 제1 천정 범위(zenith range) 및 제1 방위각 범위(azimuth range) 내에 있는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  51. 제48 항에 있어서,
    상기 눈의 눈 포즈가 상기 제1 눈 포즈 구역에 있다고 결정하는 단계는:
    상기 재트레이닝 눈 이미지에서 상기 눈의 눈 포즈가 상기 복수의 눈 포즈 구역들 중 상기 제1 눈 포즈 구역 또는 제2 눈 포즈 구역에 있다고 결정하는 단계를 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  52. 제51 항에 있어서,
    상기 제1 눈 포즈 구역은 제1 천정 범위 및 제1 방위각 범위 내에 있고,
    상기 제2 눈 포즈 구역은 제2 천정 범위 및 제2 방위각 범위 내에 있고,
    상기 제1 천정 범위의 수 및 상기 제2 천정 범위의 수의 합이 제로이거나, 상기 제1 방위각 범위의 수 및 상기 제2 방위각 범위의 수의 합이 제로이거나, 이들의 조합이 가능한,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  53. 제48 항에 있어서,
    상기 UI 디바이스가 상기 제1 눈 포즈 구역에 있을 분포 확률을 결정하는 단계는, 상기 복수의 눈 포즈 구역들의 눈 포즈 구역들에서, 상기 복수의 재트레이닝 눈 이미지들의 재트레이닝 눈 이미지들이 캡처될 때 상기 사용자에게 보여지는, UI 디바이스들의 디스플레이 위치들의 분포를 결정하는 단계를 포함하고,
    상기 UI 디바이스가 상기 제1 눈 포즈 구역에 있을 분포 확률을 결정하는 단계는, UI 디바이스들의 디스플레이 위치들의 분포를 사용하여, 상기 UI 디바이스가 상기 제1 눈 포즈 구역에 있을 분포 확률을 결정하는 단계를 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  54. 제32 항에 있어서,
    트레이닝 입력 데이터 및 대응하는 트레이닝 타겟 출력 데이터를 포함하는 트레이닝 세트를 사용하여 상기 뉴럴 네트워크를 트레이닝하는 단계를 더 포함하고,
    상기 트레이닝 입력 데이터는 복수의 사용자들의 복수의 트레이닝 눈 이미지들을 포함하고, 그리고
    상기 대응하는 트레이닝 타겟 출력 데이터는 상기 복수의 트레이닝 눈 이미지들에서 상기 복수의 사용자들의 눈들의 눈 포즈들을 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  55. 제54 항에 있어서,
    상기 복수의 사용자들은 매우 많은 수의 사용자들을 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  56. 제54 항에 있어서,
    상기 눈들의 눈 포즈들은 상기 눈들의 다양한 눈 포즈들을 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  57. 제54 항에 있어서,
    상기 재트레이닝 세트의 상기 재트레이닝 입력 데이터는 상기 복수의 트레이닝 눈 이미지들 중 적어도 하나의 트레이닝 눈 이미지를 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  58. 제32 항에 있어서,
    상기 재트레이닝 세트의 상기 재트레이닝 입력 데이터는 상기 복수의 트레이닝 눈 이미지들 중 어떠한 트레이닝 눈 이미지도 포함하지 않는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  59. 제32 항에 있어서,
    상기 뉴럴 네트워크를 재트레이닝하는 단계는, 눈 추적을 위한 재트레이닝된 뉴럴 네트워크를 생성하기 위해, 상기 재트레이닝 세트를 사용하여 상기 뉴럴 네트워크를 재트레이닝하는 단계를 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  60. 제32 항에 있어서,
    상기 뉴럴 네트워크를 재트레이닝하는 단계는, 생체인식 애플리케이션을 위한 재트레이닝된 뉴럴 네트워크를 생성하기 위해, 상기 재트레이닝 세트를 사용하여 상기 뉴럴 네트워크를 재트레이닝하는 단계를 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  61. 제60 항에 있어서,
    상기 생체인식 애플리케이션은 홍채 식별을 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  62. 제32 항에 있어서,
    상기 뉴럴 네트워크를 재트레이닝하는 단계는, 상기 재트레이닝된 뉴럴 네트워크의 가중치들을 상기 뉴럴 네트워크의 가중치들로 초기화하는 단계를 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  63. 제32 항에 있어서,
    상기 사용자의 눈 이미지를 수신하는 단계; 및
    상기 재트레이닝된 뉴럴 네트워크를 사용하여 상기 눈 이미지에서 상기 사용자의 눈 포즈를 결정하는 단계를 더 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  64. 제32 항에 있어서,
    상기 UI 이벤트는 상기 UI 디바이스의 복수의 상태들의 상태에 대응하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  65. 제64 항에 있어서,
    상기 복수의 상태들은 상기 UI 디바이스의 활성화 또는 비-활성화를 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  66. 제32 항에 있어서,
    상기 UI 디바이스는 아루코(aruco), 버튼, 업다운, 스피너(spinner), 픽커(picker), 라디오 버튼, 라디오 버튼 리스트, 체크박스, 픽처 박스, 체크박스 리스트, 드롭다운 리스트, 드롭다운 메뉴, 선택 리스트, 리스트 박스, 콤보 박스, 텍스트박스, 슬라이더, 링크, 키보드 키, 스위치, 슬라이더, 터치 표면, 또는 이들의 조합을 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  67. 제32 항에 있어서,
    상기 UI 이벤트는 상기 UI 디바이스 및 포인터에 관련하여 발생하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  68. 제67 항에 있어서,
    상기 포인터는 사용자 또는 상기 사용자의 부분과 연관된 객체를 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
  69. 제68 항에 있어서,
    상기 사용자와 연관된 상기 객체는 포인터, 펜, 펜슬, 마커, 하이라이터, 또는 이들의 조합을 포함하고, 상기 사용자의 부분은 상기 사용자의 손가락을 포함하는,
    뉴럴 네트워크를 트레이닝하기 위한 방법.
KR1020207004193A 2017-09-20 2018-09-18 눈 추적을 위한 개인화된 뉴럴 네트워크 KR20200055704A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201762560898P 2017-09-20 2017-09-20
US62/560,898 2017-09-20
PCT/US2018/051461 WO2019060283A1 (en) 2017-09-20 2018-09-18 PERSONALIZED NEURONAL FOLLOW-UP NETWORK

Publications (1)

Publication Number Publication Date
KR20200055704A true KR20200055704A (ko) 2020-05-21

Family

ID=65720554

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207004193A KR20200055704A (ko) 2017-09-20 2018-09-18 눈 추적을 위한 개인화된 뉴럴 네트워크

Country Status (9)

Country Link
US (3) US10719951B2 (ko)
EP (1) EP3685313A4 (ko)
JP (2) JP7162020B2 (ko)
KR (1) KR20200055704A (ko)
CN (1) CN111033524A (ko)
AU (1) AU2018337653A1 (ko)
CA (1) CA3068481A1 (ko)
IL (2) IL294197A (ko)
WO (1) WO2019060283A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024117524A1 (ko) * 2022-12-02 2024-06-06 삼성전자주식회사 미디어 콘텐트를 표시하기 위한 전자 장치 및 그 방법

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11250242B2 (en) * 2017-09-13 2022-02-15 Visualcamp Co., Ltd. Eye tracking method and user terminal performing same
WO2019060283A1 (en) 2017-09-20 2019-03-28 Magic Leap, Inc. PERSONALIZED NEURONAL FOLLOW-UP NETWORK
US11556741B2 (en) 2018-02-09 2023-01-17 Pupil Labs Gmbh Devices, systems and methods for predicting gaze-related parameters using a neural network
WO2019154510A1 (en) 2018-02-09 2019-08-15 Pupil Labs Gmbh Devices, systems and methods for predicting gaze-related parameters
US11194161B2 (en) 2018-02-09 2021-12-07 Pupil Labs Gmbh Devices, systems and methods for predicting gaze-related parameters
US11755902B2 (en) * 2018-06-01 2023-09-12 The Charles Stark Draper Laboratory, Inc. Co-adaptation for learning and control of devices
US12003585B2 (en) 2018-06-08 2024-06-04 Vale Group Llc Session-based information exchange
US11195336B2 (en) 2018-06-08 2021-12-07 Vulcan Inc. Framework for augmented reality applications
US10996831B2 (en) * 2018-06-29 2021-05-04 Vulcan Inc. Augmented reality cursors
US11853390B1 (en) * 2018-08-03 2023-12-26 Amazon Technologies, Inc. Virtual/augmented reality data evaluation
US11537202B2 (en) 2019-01-16 2022-12-27 Pupil Labs Gmbh Methods for generating calibration data for head-wearable devices and eye tracking system
WO2020161732A1 (en) * 2019-02-05 2020-08-13 Infilect Technologies Private Limited System and method for quantifying brand visibility and compliance metrics for a brand
WO2020244752A1 (en) 2019-06-05 2020-12-10 Pupil Labs Gmbh Devices, systems and methods for predicting gaze-related parameters
US11908129B2 (en) 2019-12-27 2024-02-20 iAlyze, LLC Impairment analysis systems and related methods
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
CN111367405A (zh) * 2020-02-17 2020-07-03 深圳岱仕科技有限公司 头戴显示设备的调整方法、装置、计算机设备及存储介质
US11921917B2 (en) 2020-04-07 2024-03-05 Eyetech Digital Systems, Inc. Compact eye-tracking camera systems and methods
US10996753B1 (en) 2020-04-07 2021-05-04 Eyetech Digital Systems, Inc. Multi-mode eye-tracking with independently operable illuminators
CN112598728B (zh) * 2020-12-23 2024-02-13 极米科技股份有限公司 投影仪姿态估计、梯形校正方法、装置、投影仪及介质
US20220383502A1 (en) * 2021-05-28 2022-12-01 Blinktbi, Inc. Systems and methods for eyelid localization
US20230053464A1 (en) * 2021-08-19 2023-02-23 Data-Core Systems, Inc. Systems, Methods, and Devices for Automatically Converting Explanation of Benefits (EOB) Printable Documents into Electronic Format using Artificial Intelligence Techniques
US12002290B2 (en) 2022-02-25 2024-06-04 Eyetech Digital Systems, Inc. Systems and methods for hybrid edge/cloud processing of eye-tracking image data

Family Cites Families (125)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL98622A (en) * 1991-06-25 1996-10-31 Scitex Corp Ltd Method and device for using neural networks in figure work
US5291560A (en) 1991-07-15 1994-03-01 Iri Scan Incorporated Biometric personal identification system based on iris analysis
US6222525B1 (en) 1992-03-05 2001-04-24 Brad A. Armstrong Image controllers with sheet connected sensors
US7768380B2 (en) * 1994-05-09 2010-08-03 Automotive Technologies International, Inc. Security system control for monitoring vehicular compartments
US5583795A (en) 1995-03-17 1996-12-10 The United States Of America As Represented By The Secretary Of The Army Apparatus for measuring eye gaze and fixation duration, and method therefor
US5670988A (en) 1995-09-05 1997-09-23 Interlink Electronics, Inc. Trigger operated electronic device
US6351273B1 (en) 1997-04-30 2002-02-26 Jerome H. Lemelson System and methods for controlling automatic scrolling of information on a display or screen
JP3361980B2 (ja) * 1997-12-12 2003-01-07 株式会社東芝 視線検出装置及びその方法
CN1650622B (zh) 2002-03-13 2012-09-05 图象公司 用于数字重新灌录或修改电影或其他图像序列数据的***和方法
US8098901B2 (en) 2005-01-26 2012-01-17 Honeywell International Inc. Standoff iris recognition system
KR20050025927A (ko) 2003-09-08 2005-03-14 유웅덕 홍채인식을 위한 동공 검출 방법 및 형상기술자 추출방법과 그를 이용한 홍채 특징 추출 장치 및 그 방법과홍채인식 시스템 및 그 방법
PT1607840E (pt) * 2004-06-18 2015-05-20 Tobii Ab Controlo ocular de um computador
USD514570S1 (en) 2004-06-24 2006-02-07 Microsoft Corporation Region of a fingerprint scanning device with an illuminated ring
US7248720B2 (en) 2004-10-21 2007-07-24 Retica Systems, Inc. Method and system for generating a combined retina/iris pattern biometric
US7549743B2 (en) * 2005-01-06 2009-06-23 University Of Rochester Systems and methods for improving visual discrimination
US20070052672A1 (en) 2005-09-08 2007-03-08 Swisscom Mobile Ag Communication device, system and method
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
US20070081123A1 (en) 2005-10-07 2007-04-12 Lewis Scott W Digital eyewear
JP4824420B2 (ja) 2006-02-07 2011-11-30 アイテック株式会社 視線ベクトル検出方法及び同装置
US7970179B2 (en) 2006-09-25 2011-06-28 Identix Incorporated Iris data extraction
US8363783B2 (en) 2007-06-04 2013-01-29 Oraya Therapeutics, Inc. Method and device for ocular alignment and coupling of ocular structures
JP5088024B2 (ja) 2007-07-11 2012-12-05 沖電気工業株式会社 試供品配布システム、試供品配布情報サーバ、試供品配布方法及び試供品配布情報処理プログラム
US20090129591A1 (en) 2007-11-21 2009-05-21 Hayes Gregory A Techniques for Securing Document Content in Print and Electronic Form
US8064653B2 (en) 2007-11-29 2011-11-22 Viewdle, Inc. Method and system of person identification by facial image
US8098891B2 (en) 2007-11-29 2012-01-17 Nec Laboratories America, Inc. Efficient multi-hypothesis multi-human 3D tracking in crowded scenes
US8411910B2 (en) 2008-04-17 2013-04-02 Biometricore, Inc. Computationally efficient feature extraction and matching iris recognition
WO2010003044A2 (en) 2008-07-03 2010-01-07 Nec Laboratories America, Inc. Epithelial layer detector and related methods
US8768014B2 (en) 2009-01-14 2014-07-01 Indiana University Research And Technology Corp. System and method for identifying a person with reference to a sclera image
US8374404B2 (en) 2009-02-13 2013-02-12 Raytheon Company Iris recognition using hyper-spectral signatures
US20100232654A1 (en) 2009-03-11 2010-09-16 Harris Corporation Method for reconstructing iris scans through novel inpainting techniques and mosaicing of partial collections
AU2011207402B2 (en) 2010-01-22 2015-01-29 Amo Development, Llc Apparatus for automated placement of scanned laser capsulorhexis incisions
US8345984B2 (en) 2010-01-28 2013-01-01 Nec Laboratories America, Inc. 3D convolutional neural networks for automatic human action recognition
US20150309316A1 (en) 2011-04-06 2015-10-29 Microsoft Technology Licensing, Llc Ar glasses with predictive control of external device based on event input
US9304319B2 (en) 2010-11-18 2016-04-05 Microsoft Technology Licensing, Llc Automatic focus improvement for augmented reality displays
US9691289B2 (en) * 2010-12-22 2017-06-27 Brightstar Learning Monotonous game-like task to promote effortless automatic recognition of sight words
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
NZ725592A (en) 2010-12-24 2018-05-25 Magic Leap Inc An ergonomic head mounted display device and optical system
RU2017118159A (ru) 2011-05-06 2018-10-30 Мэджик Лип, Инк. Мир массового одновременного удаленного цифрового присутствия
WO2013049861A1 (en) 2011-09-29 2013-04-04 Magic Leap, Inc. Tactile glove for human-computer interaction
US20130159939A1 (en) 2011-10-12 2013-06-20 Qualcomm Incorporated Authenticated gesture recognition
EP3200046A1 (en) * 2011-10-27 2017-08-02 Tobii Technology AB Power management in an eye-tracking system
CN106484115B (zh) 2011-10-28 2019-04-19 奇跃公司 用于增强和虚拟现实的***和方法
CN107664847B (zh) 2011-11-23 2021-04-06 奇跃公司 三维虚拟和增强现实显示***
US10540008B2 (en) * 2012-01-04 2020-01-21 Tobii Ab System for gaze interaction
NZ725322A (en) 2012-04-05 2017-12-22 Magic Leap Inc Wide-field of view (fov) imaging devices with active foveation capability
CN115494654A (zh) 2012-06-11 2022-12-20 奇跃公司 使用波导反射器阵列投射器的多深度平面三维显示器
US9671566B2 (en) 2012-06-11 2017-06-06 Magic Leap, Inc. Planar waveguide apparatus with diffraction element(s) and system employing same
US9141916B1 (en) 2012-06-29 2015-09-22 Google Inc. Using embedding functions with a deep network
CN104244807B (zh) 2012-07-31 2016-10-19 国立研究开发法人科学技术振兴机构 注视点检测装置以及注视点检测方法
US8369595B1 (en) 2012-08-10 2013-02-05 EyeVerify LLC Texture features for biometric authentication
CA2884663A1 (en) 2012-09-11 2014-03-20 Magic Leap, Inc. Ergonomic head mounted display device and optical system
US9207760B1 (en) * 2012-09-28 2015-12-08 Google Inc. Input detection
JP2014092940A (ja) 2012-11-02 2014-05-19 Sony Corp 画像表示装置及び画像表示方法、並びにコンピューター・プログラム
EP2929487A4 (en) 2012-12-10 2016-08-10 Stanford Res Inst Int BIOMETRIC IRIS ADJUSTMENT SYSTEM
CN108681065B (zh) 2013-01-15 2021-11-23 奇跃公司 超高分辨率扫描光纤显示器
US10231614B2 (en) * 2014-07-08 2019-03-19 Wesley W. O. Krueger Systems and methods for using virtual reality, augmented reality, and/or a synthetic 3-dimensional information for the measurement of human ocular performance
IL308285A (en) 2013-03-11 2024-01-01 Magic Leap Inc System and method for augmentation and virtual reality
US9147154B2 (en) 2013-03-13 2015-09-29 Google Inc. Classifying resources using a deep network
NZ712192A (en) 2013-03-15 2018-11-30 Magic Leap Inc Display system and method
EP2790126B1 (en) * 2013-04-08 2016-06-01 Cogisen SRL Method for gaze tracking
WO2014182769A1 (en) 2013-05-07 2014-11-13 The Johns Hopkins University Automated and non-mydriatic fundus-perimetry camera for irreversible eye diseases
US9275308B2 (en) 2013-05-31 2016-03-01 Google Inc. Object detection using deep neural networks
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
US20140380249A1 (en) 2013-06-25 2014-12-25 Apple Inc. Visual recognition of gestures
CN103431840B (zh) 2013-07-31 2016-01-20 北京智谷睿拓技术服务有限公司 眼睛光学参数检测***及方法
US10025982B2 (en) 2013-10-08 2018-07-17 Princeton Identity, Inc. Collecting and targeting marketing data and information based upon iris identification
KR20150041453A (ko) 2013-10-08 2015-04-16 엘지전자 주식회사 안경형 영상표시장치 및 그것의 제어방법
CA2927818C (en) 2013-10-16 2021-11-30 Magic Leap, Inc. Virtual or augmented reality headsets having adjustable interpupillary distance
US9202144B2 (en) 2013-10-30 2015-12-01 Nec Laboratories America, Inc. Regionlets with shift invariant neural patterns for object detection
US10095917B2 (en) 2013-11-04 2018-10-09 Facebook, Inc. Systems and methods for facial representation
JP6236296B2 (ja) 2013-11-14 2017-11-22 株式会社デンソーアイティーラボラトリ 学習装置、学習プログラム、及び学習方法
IL291010B2 (en) 2013-11-27 2024-01-01 Magic Leap Inc Virtual and augmented reality systems and methods
US10175478B2 (en) 2014-05-30 2019-01-08 Magic Leap, Inc. Methods and systems for generating virtual content display with a virtual or augmented reality apparatus
US9857591B2 (en) 2014-05-30 2018-01-02 Magic Leap, Inc. Methods and system for creating focal planes in virtual and augmented reality
US9430829B2 (en) 2014-01-30 2016-08-30 Case Western Reserve University Automatic detection of mitosis using handcrafted and convolutional neural network features
CA3089749A1 (en) 2014-01-31 2015-08-06 Magic Leap, Inc. Multi-focal display system and method
WO2015117043A1 (en) 2014-01-31 2015-08-06 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
IL231862A (en) 2014-04-01 2015-04-30 Superfish Ltd Image representation using a neural network
WO2015161307A1 (en) 2014-04-18 2015-10-22 Magic Leap, Inc. Systems and methods for augmented and virtual reality
WO2015164807A1 (en) 2014-04-25 2015-10-29 Texas State University Detection of brain injury and subject state with eye movement biometrics
WO2016018487A2 (en) 2014-05-09 2016-02-04 Eyefluene, Inc. Systems and methods for biomechanically-based eye signals for interacting with real and virtual objects
USD759657S1 (en) 2014-05-19 2016-06-21 Microsoft Corporation Connector with illumination region
USD752529S1 (en) 2014-06-09 2016-03-29 Comcast Cable Communications, Llc Electronic housing with illuminated region
AU2015274283B2 (en) * 2014-06-14 2020-09-10 Magic Leap, Inc. Methods and systems for creating virtual and augmented reality
US9330329B2 (en) 2014-07-09 2016-05-03 Ditto Labs, Inc. Systems, methods, and devices for image matching and object recognition in images using minimal feature points
US20170186236A1 (en) 2014-07-22 2017-06-29 Sony Corporation Image display device, image display method, and computer program
US9536293B2 (en) 2014-07-30 2017-01-03 Adobe Systems Incorporated Image assessment using deep convolutional neural networks
US20160034811A1 (en) 2014-07-31 2016-02-04 Apple Inc. Efficient generation of complementary acoustic models for performing automatic speech recognition system combination
KR102216126B1 (ko) 2014-07-31 2021-02-16 삼성전자주식회사 정맥 인증을 이용하여 동작하는 웨어러블 디바이스 및 웨어러블 디바이스의 동작 방법
US9659384B2 (en) 2014-10-03 2017-05-23 EyeEm Mobile GmbH. Systems, methods, and computer program products for searching and sorting images by aesthetic quality
WO2016054779A1 (en) 2014-10-09 2016-04-14 Microsoft Technology Licensing, Llc Spatial pyramid pooling networks for image processing
EP3161728B1 (en) 2014-10-10 2023-05-17 Beijing Kuangshi Technology Co., Ltd. Hierarchical interlinked multi-scale convolutional network for image parsing
CN104299245B (zh) * 2014-10-13 2017-12-26 深圳先进技术研究院 基于神经网络的增强现实跟踪方法
KR102276339B1 (ko) 2014-12-09 2021-07-12 삼성전자주식회사 Cnn의 근사화를 위한 학습 장치 및 방법
WO2016106238A1 (en) 2014-12-24 2016-06-30 Google Inc. Augmenting neural networks to generate additional outputs
US10686984B1 (en) * 2015-02-13 2020-06-16 Waylens, Inc. Connected camera system
US10846589B2 (en) 2015-03-12 2020-11-24 William Marsh Rice University Automated compilation of probabilistic task description into executable neural network specification
US9678664B2 (en) 2015-04-10 2017-06-13 Google Inc. Neural network for keyboard input decoding
WO2016183464A1 (en) 2015-05-13 2016-11-17 Google Inc. Deepstereo: learning to predict new views from real world imagery
USD758367S1 (en) 2015-05-14 2016-06-07 Magic Leap, Inc. Virtual reality headset
NZ740299A (en) 2015-08-21 2019-08-30 Magic Leap Inc Eyelid shape estimation using eye pose measurement
US9767565B2 (en) 2015-08-26 2017-09-19 Digitalglobe, Inc. Synthesizing training data for broad area geospatial object detection
JP6678930B2 (ja) 2015-08-31 2020-04-15 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 分類モデルを学習する方法、コンピュータ・システムおよびコンピュータ・プログラム
US10120454B2 (en) * 2015-09-04 2018-11-06 Eyesight Mobile Technologies Ltd. Gesture recognition control device
US20170161506A1 (en) 2015-12-07 2017-06-08 Dell Products L.P. Information Handling System Encrypted Image Display Through Secondary Device
US10419747B2 (en) * 2015-12-22 2019-09-17 Google Llc System and methods for performing electronic display stabilization via retained lightfield rendering
US10225511B1 (en) * 2015-12-30 2019-03-05 Google Llc Low power framework for controlling image sensor mode in a mobile image capture device
US10303246B2 (en) * 2016-01-20 2019-05-28 North Inc. Systems, devices, and methods for proximity-based eye tracking
USD805734S1 (en) 2016-03-04 2017-12-26 Nike, Inc. Shirt
KR102223296B1 (ko) 2016-03-11 2021-03-04 매직 립, 인코포레이티드 콘볼루셔널 신경 네트워크들에서의 구조 학습
USD794288S1 (en) 2016-03-11 2017-08-15 Nike, Inc. Shoe with illuminable sole light sequence
US10423830B2 (en) 2016-04-22 2019-09-24 Intel Corporation Eye contact correction in real time using neural network based machine learning
WO2018013200A1 (en) 2016-07-14 2018-01-18 Magic Leap, Inc. Deep neural network for iris identification
WO2018013199A1 (en) 2016-07-14 2018-01-18 Magic Leap, Inc. Iris boundary estimation using cornea curvature
US10402649B2 (en) 2016-08-22 2019-09-03 Magic Leap, Inc. Augmented reality display device with deep learning sensors
RU2016138608A (ru) 2016-09-29 2018-03-30 Мэджик Лип, Инк. Нейронная сеть для сегментации изображения глаза и оценки качества изображения
AU2017338783B2 (en) 2016-10-04 2022-02-10 Magic Leap, Inc. Efficient data layouts for convolutional neural networks
CN115097937A (zh) 2016-11-15 2022-09-23 奇跃公司 用于长方体检测的深度学习***
US10650432B1 (en) * 2016-11-28 2020-05-12 Amazon Technologies, Inc. Recommendation system using improved neural network
US10757328B2 (en) * 2016-12-23 2020-08-25 Microsoft Technology Licensing, Llc Eye tracking using video information and electrooculography information
WO2018170421A1 (en) 2017-03-17 2018-09-20 Magic Leap, Inc. Room layout estimation methods and techniques
WO2019060283A1 (en) * 2017-09-20 2019-03-28 Magic Leap, Inc. PERSONALIZED NEURONAL FOLLOW-UP NETWORK

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024117524A1 (ko) * 2022-12-02 2024-06-06 삼성전자주식회사 미디어 콘텐트를 표시하기 위한 전자 장치 및 그 방법

Also Published As

Publication number Publication date
IL272289A (en) 2020-03-31
JP7436600B2 (ja) 2024-02-21
JP7162020B2 (ja) 2022-10-27
IL294197A (en) 2022-08-01
CA3068481A1 (en) 2019-03-28
EP3685313A1 (en) 2020-07-29
WO2019060283A1 (en) 2019-03-28
US10719951B2 (en) 2020-07-21
EP3685313A4 (en) 2021-06-09
US20210327085A1 (en) 2021-10-21
US10977820B2 (en) 2021-04-13
US20190087973A1 (en) 2019-03-21
JP2023011664A (ja) 2023-01-24
CN111033524A (zh) 2020-04-17
IL272289B (en) 2022-08-01
JP2020537202A (ja) 2020-12-17
AU2018337653A1 (en) 2020-01-16
US20200286251A1 (en) 2020-09-10

Similar Documents

Publication Publication Date Title
JP7436600B2 (ja) 眼追跡のための個人化されたニューラルネットワーク
JP7186913B2 (ja) 姿勢および複数のdofコントローラを用いた3d仮想オブジェクトとの相互作用
JP7198383B2 (ja) ユーザインターフェースデバイスの表現を用いたニューラルネットワークの訓練
JP7307119B2 (ja) 完全な顔画像の眼球周囲およびオーディオ合成
EP3631567B1 (en) Eye tracking calibration techniques
US12020381B2 (en) Object interactivity in virtual space
EP3436863B1 (en) Interactions with 3d virtual objects using poses and multiple-dof controllers

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal