KR20180061956A - 눈 위치 예측 방법 및 장치 - Google Patents

눈 위치 예측 방법 및 장치 Download PDF

Info

Publication number
KR20180061956A
KR20180061956A KR1020160161717A KR20160161717A KR20180061956A KR 20180061956 A KR20180061956 A KR 20180061956A KR 1020160161717 A KR1020160161717 A KR 1020160161717A KR 20160161717 A KR20160161717 A KR 20160161717A KR 20180061956 A KR20180061956 A KR 20180061956A
Authority
KR
South Korea
Prior art keywords
eye position
position data
user
predictors
predicted
Prior art date
Application number
KR1020160161717A
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 삼성전자주식회사
Priority to KR1020160161717A priority Critical patent/KR20180061956A/ko
Priority to US15/688,445 priority patent/US20180150134A1/en
Publication of KR20180061956A publication Critical patent/KR20180061956A/ko

Links

Images

Classifications

    • 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
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B3/00Apparatus for testing the eyes; Instruments for examining the eyes
    • A61B3/10Objective types, i.e. instruments for examining the eyes independent of the patients' perceptions or reactions
    • A61B3/113Objective types, i.e. instruments for examining the eyes independent of the patients' perceptions or reactions for determining or recording eye movement
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B3/00Apparatus for testing the eyes; Instruments for examining the eyes
    • A61B3/10Objective types, i.e. instruments for examining the eyes independent of the patients' perceptions or reactions
    • A61B3/14Arrangements specially adapted for eye photography
    • 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/012Head tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/18Eye characteristics, e.g. of the iris
    • G06V40/19Sensors therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/18Eye characteristics, e.g. of the iris
    • G06V40/193Preprocessing; Feature extraction

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Ophthalmology & Optometry (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Hardware Design (AREA)
  • Multimedia (AREA)
  • Molecular Biology (AREA)
  • Animal Behavior & Ethology (AREA)
  • Surgery (AREA)
  • Public Health (AREA)
  • Veterinary Medicine (AREA)
  • Biophysics (AREA)
  • Medical Informatics (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Biomedical Technology (AREA)
  • Computer Graphics (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

과거에 측정된 눈 위치에 기반하여 눈 위치를 예측하기 위한 방법 및 장치가 제공된다. 눈 위치 예측 방법 및 장치는 복수의 예측기들을 이용하여 예측 눈 위치 데이터를 계산하고, 복수의 예측기 각각의 오차 정보를 이용하여 복수의 예측기들 중 하나 이상의 타겟 예측기를 결정한다. 결정된 타겟 예측기가 계산한 예측 눈 위치 데이터에 기초하여 최종 예측 눈 위치 데이터가 획득된다.

Description

눈 위치 예측 방법 및 장치{METHOD AND APPARATUS FOR ESTIMATING EYE LOCATION}
아래의 실시예들은 사용자의 눈 위치를 예측하기 위한 방법 및 장치에 관한 것으로, 보다 상세하게는 시간적으로 연속되는 복수의 눈 위치들에 기반하여 눈 위치를 예측하는 방법 및 장치에 관한 것이다.
3차원 동영상을 제공하는 방법으로는 크게 안경식과 무안경식(glass-free)이 있다. 무안경식의 3차원 동영상 제공 방법은 좌안 및 우안에 대한 영상을 각각 좌안 및 우안에 제공할 수 있다. 좌안 및 우안에 영상을 각각 제공하기 위해서는 좌안 및 우안의 위치가 요구될 수 있다. 3차원 동영상 제공 방법은 좌안 및 우안의 위치를 검출하고, 검출된 위치에 기반하여 3차원 동영상을 제공한다. 3차원 동영상을 생성하는 동안, 좌안 및 우안의 위치가 변경되면, 사용자는 선명한 3 차원 동영상을 시청하기 어려울 수 있다.
일 측면에 따른, 디스플레이 장치의 사용자 눈 위치 예측 방법은 시간적으로 연속되는 복수의 눈 위치 데이터들에 기초하여, 복수의 예측기 각각에서 예측(predicted) 눈 위치 데이터를 계산하는 단계; 상기 복수의 예측기 각각에 대한 오차 정보를 계산하는 단계; 상기 오차 정보에 기초하여 상기 복수의 예측기 중 하나 이상의 타겟 예측기를 결정하는 단계; 및 상기 타겟 예측기에서 계산된 예측 눈 위치 데이터에 기초하여 최종 예측 눈 위치 데이터를 획득하는 단계를 포함한다.
상기 복수의 눈 위치 데이터 각각은, 사용자를 촬영한 영상에 기초하여 계산된 사용자의 눈 위치 데이터일 수 있다.
상기 복수의 눈 위치 데이터는, 시간적으로 연속되는 스테레오스코픽 영상들에 기초하여 계산된 눈의 3차원(Dimension; D) 위치 데이터들일 수 있다.
상기 복수의 눈 위치 데이터는, 관성 측정장치(Inertial Measurement Unit: IMU)로부터 수신될 수 있다.
상기 관성 측정 장치는 헤드 마운트 디스플레이(Head Mounted Display: HMD)에 포함될 수 있다.
상기 복수의 예측기 각각에 대한 오차 정보를 계산하는 단계는, 눈 위치 데이터 및 상기 눈 위치 데이터에 대응하는 예측 눈 위치 데이터를 계산한 상기 복수의 예측기 각각의 예측 눈 위치 데이터 간의 차이를 계산하는 단계; 및 상기 차이에 기초하여 상기 복수의 예측기 각각에 대한 오차 정보를 계산하는 단계를 포함할 수 있다.
상기 복수의 예측기 중 하나 이상의 타겟 예측기를 결정하는 단계는, 상기 복수의 예측기 각각에 대한 오차 정보에 기초하여 오차가 작은 순서로 미리 설정된 개수의 타겟 예측기를 결정하는 단계를 포함할 수 있다.
상기 최종 예측 눈 위치 데이터를 획득하는 단계는, 상기 하나 이상의 타겟 예측기가 계산한 상기 예측 눈 위치 데이터들의 평균 값을 상기 최종 예측 눈 위치 데이터로 계산하는 단계를 포함할 수 있다.
상기 최종 예측 눈 위치 데이터를 획득하는 단계는, 상기 복수의 눈 위치 데이터들에 기초하여 눈 위치가 변화하는 가속도를 계산하는 단계; 상기 가속도에 기초하여 상기 하나 이상의 타겟 예측기 각각에 대한 가중치를 결정하는 단계; 및 하나 이상의 타겟 예측기가 계산한 예측 눈 위치 데이터 및 상기 가중치에 기초하여 상기 최종 예측 눈 위치 데이터를 계산하는 단계를 포함할 수 있다.
상기 사용자 눈 위치 예측 방법은 상기 최종 예측 눈 위치 데이터에 기초하여 3차원(Dimension; D) 영상을 생성하는 단계를 더 포함하고, 상기 3D 영상은 디스플레이에 출력될 수 있다.
상기 3D 영상을 생성하는 단계는, 상기 3D 영상이 예측된 사용자의 눈의 위치에서 형성되도록 상기 3D 영상을 생성하는 단계를 포함할 수 있다.
상기 3D 영상을 생성하는 단계는, 상기 최종 예측 눈 위치 데이터가 예측된 사용자의 시점을 나타내는 경우, 상기 시점에 대응하도록 상기 3D 영상을 생성하는 단계를 포함할 수 있다.
다른 일 측면에 따른, 사용자 눈 위치 예측 장치에 있어서, 사용자의 눈 위치를 예측하는 프로그램이 기록된 메모리; 및 상기 프로그램을 수행하는 프로세서를 포함하고, 상기 프로그램은, 시간적으로 연속되는 복수의 눈 위치 데이터들에 기초하여 복수의 예측기 각각에서 예측 눈 위치 데이터를 계산하는 단계; 상기 복수의 예측기 각각에 대한 오차 정보를 계산하는 단계; 상기 오차 정보에 기초하여 상기 복수의 예측기 중 하나 이상의 타겟 예측기를 결정하는 단계; 및 상기 타겟 예측기에서 계산한 예측 눈 위치 데이터들에 기초하여 최종 예측 눈 위치 데이터를 획득하는 단계를 수행한다.
상기 사용자 눈 위치 예측 장치는 사용자를 촬영함으로써 영상을 생성하는 카메라를 더 포함할 수 있고, 상기 복수의 눈 위치 데이터 각각은, 상기 영상에 기초하여 계산된 상기 사용자의 눈 위치 데이터일 수 있다.
상기 사용자 눈 위치 예측 장치는, 헤드 마운트 디스플레이(Head Mounted Display: HMD)에 포함될 수 있다.
상기 사용자 눈 위치 예측 장치는, 상기 복수의 눈 위치 데이터를 생성하는 관성 측정장치(Inertial Measurement Unit: IMU)를 더 포함할 수 있다.
상기 복수의 예측기 각각에 대한 오차 정보를 계산하는 단계는, 눈 위치 데이터 및 상기 눈 위치 데이터에 대응하는 예측 눈 위치 데이터를 계산한 상기 복수의 예측기 각각의 예측 눈 위치 데이터 간의 차이를 계산하는 단계; 및 상기 차이에 기초하여 상기 복수의 예측기 각각에 대한 오차 정보를 계산하는 단계를 포함할 수 있다.
상기 프로그램은, 상기 최종 예측 눈 위치 데이터에 기초하여 3차원(Dimension; D) 영상을 생성하는 단계를 더 수행하고, 상기 3D 영상은 디스플레이에 출력될 수 있다.
또 다른 일 측면에 따른, 헤드 마운트 디스플레이(Head Mounted Display: HMD)에 의해 수행되는, 사용자의 눈 위치를 예측하는 방법은, 관성 측정장치(Inertial Measurement Unit: IMU)에 의해 획득된 시간적으로 연속되는 사용자의 머리의 위치에 관한 정보에 기초하여 시간적으로 연속되는 복수의 눈 위치 데이터들을 생성하는 단계; 상기 복수의 눈 위치 데이터들에 기초하여, 복수의 예측기 각각에서 예측(predicted) 눈 위치 데이터를 계산하는 단계; 상기 복수의 예측기 각각에 대한 오차 정보를 계산하는 단계; 상기 오차 정보에 기초하여 상기 복수의 예측기 중 하나 이상의 타겟 예측기를 결정하는 단계; 및 상기 타겟 예측기에서 계산된 예측 눈 위치 데이터에 기초하여 최종 예측 눈 위치 데이터를 획득하는 단계를 포함한다.
도 1은 일 예에 따른 눈 위치 추적 디스플레이 방법의 개념도이다.
도 2는 일 예에 따른 헤드 마운트 디스플레이를 도시한다.
도 3은 일 실시예에 따른 눈 위치 예측 장치의 구성도이다.
도 4는 일 실시예에 따른 눈 위치 예측 방법의 흐름도이다.
도 5는 일 예에 따른 사용자를 촬영한 영상에 기초하여 눈 위치 데이터를 생성하는 방법의 흐름도이다.
도 6은 일 예에 따른 관성 측정장치에 기초하여 눈 위치 데이터를 생성하는 방법의 흐름도이다.
도 7은 일 예에 따른 관성 측정장치의 6축을 도시한다.
도 8은 일 예에 따른 복수의 예측기 각각에 대한 오차 정보를 계산하는 방법의 흐름도이다.
도 9는 일 예에 따른 최종 눈 위치 데이터를 계산하는 방법의 흐름도이다.
도 10는 일 예에 따른 3D 영상을 생성하는 방법의 흐름도이다.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 특허출원의 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
아래 설명하는 실시예들에는 다양한 변경이 가해질 수 있다. 아래 설명하는 실시예들은 실시 형태에 대해 한정하려는 것이 아니며, 이들에 대한 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 실시예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 1은 일 예에 따른 눈 위치 추적 디스플레이 방법의 개념도이다.
일 측면에 따르면, 디스플레이 장치(100)는 카메라(102)를 이용하여 검출된 사용자의 눈 위치(122 및 124)에 기반하여 영상(110)을 디스플레이한다.
디스플레이 장치(100)는 타블렛 피씨(tablet personal computer), 모니터, 휴대폰, 및 3D 텔레비전(Television: TV)를 포함할 수 있고, 기재된 실시예로 한정되는 것은 아니다.
예를 들어, 디스플레이 장치(100)는 눈 위치(122 및 124)에서 영상이 3차원(Dimension; D)으로 나타나도록 영상(110)을 렌더링할 수 있다. 영상은 2D 영상, 2D 동영상, 입체 영상들, 3D 동영상 및 그래픽스 데이터를 포함한다. 예를 들어, 영상은 3D에 대한 것일 수 있으며, 3D에 한정되는 것은 아니다. 입체 영상들은 좌안 영상 및 우안 영상을 포함하며, 스테레오스코픽 영상들(stereoscopic images)일 수 있다. 3D 동영상은 복수의 프레임들을 포함하고, 각각의 프레임은 복수의 시점(viewpoint)들에 대한 영상들을 포함한다. 그래픽스 데이터는 그래픽스 공간 상에 표현되는 3D 모델에 대한 정보를 포함한다.
디스플레이 장치(100)가 비디오 처리 장치를 포함하는 경우, 비디오 처리 장치는 영상을 렌더링할 수 있다. 예를 들어, 비디오 처리 장치는 그래픽 카드(graphic card), 그래픽스 액셀러레이터(graphics accelerator), VGA 카드(Video Graphics Array card)를 포함할 수 있다.
사용자의 눈 위치(122 및 124)가 변경되는 경우, 실시간으로 제공되는 3D 동영상은 변경된 사용자의 눈 위치(122 및 124)를 정확히 반영하고 있지 못하므로 사용자는 선명한 3D 영상을 볼 수 없다. 지속적으로 사용자의 눈 위치(122 및 124)가 변경되는 경우, 디스플레이 장치(100)는 사용자의 눈 위치(122 및 124)를 예측하고, 예측한 사용자의 눈 위치(122 및 124)에서 3D 영상이 나타나도록 3D 영상을 생성할 수 있다.
도 2는 일 예에 따른 헤드 마운트 디스플레이를 도시한다.
다른 일 측면에 따르면, 웨어러블 장치(wearable device)는 사용자의 시점에 대응하는 3D 영상을 디스플레이할 수 있다. 예를 들어, 웨어러블 장치는 헤드 마운트 디스플레이(Head Mounted Display: HMD), 손목 시계의 형태, 목걸이의 형태, 및 귀고리의 형태를 포함할 수 있으며, 기재된 실시예로 한정되지 않는다. 이하의 설명은 HMD(200)에 대한 것이나, HMD(200)에 대한 설명은 다른 형태의 웨어러블 장치에 대해서도 유사하게 적용될 수 있다.
사용자가 HMD(200)를 착용하는 경우, 사용자의 눈 위치 및 HMD(200) 간의 상대적인 위치는 변화하지 않으나, 사용자의 머리가 움직이는 경우(예를 들어, 회전) 바라보는 시점이 변경된다. 예를 들어, 사용자가 머리를 정면에서 좌측으로 회전하는 경우, 디스플레이되는 영상은 가상 공간의 정면 시점에서 좌측 시점으로 변경된 영상일 수 있다. 사용자의 머리 위치를 변경하는 경우, 이에 대응하여 사용자의 눈 위치도 변경된다. 사용자의 머리 위치(즉, 눈 위치)가 변경되는 경우, 실시간으로 제공되는 3D 동영상은 변경된 사용자의 시점을 정확히 반영하고 있지 못한다. 지속적으로 사용자의 눈 위치가 변경되는 경우, HMD(200)는 사용자의 눈 위치를 예측하고, 예측한 사용자의 눈 위치에 대응하는 시점을 나타내는 장면(scene)이 나타나도록 3D 영상을 생성할 수 있다.
아래에서도 도 3 내지 도 9를 참조하여, 사용자의 눈 위치를 예측하는 방법이 상세히 설명된다.
도 3은 일 실시예에 따른 눈 위치 예측 장치의 구성도이다.
디스플레이 장치는 예측된 눈 위치 및 시점을 이용하여 3D 영상을 생성한다. 눈 위치 및 시점을 예측하는 과정에서 입력 시스템 및 출력 시스템 간의 레이턴시(latency)가 발생한다. 레이턴시에 의해 예측된 데이터 및 실제의 데이터 간에 오차가 발생한다. 복수의 예측기들을 이용하여 예측된 복수의 예측 데이터를 이용하여 최종 예측 데이터를 계산하는 경우 레이턴시에 의해 발생되는 오차가 감소될 수 있다. 아래의 도 3 내지 도 9를 참조하여 복수의 예측 데이터를 이용하여 최종 예측 데이터를 계산하는 방법이 상세히 설명된다.
눈 위치 예측 장치(300)는 통신부(310), 프로세서(320), 메모리(330), 카메라(340), 관성 측정장치(Inertial Measurement Unit: IMU)(350) 및 디스플레이(360)를 포함한다.
예를 들어, 눈 위치 예측 장치(300)는 시스템 온 칩(System-On-Chip: SOC)으로 구현될 수 있으나, 기재된 실시예로 한정되는 것은 아니다.
예를 들어, 디스플레이(360) 및 사용자의 눈 위치 간의 상대적인 위치가 변경될 수 있는 경우, 눈 위치 예측 장치(300)는 도 1을 참조하여 전술된 디스플레이 장치(100)에 포함될 수 있다.
다른 예로, 디스플레이(360) 및 사용자의 눈 위치 간의 상대적인 위치가 변경되지 않고, 변경되는 사용자의 눈 위치에 따라 디스플레이(360)의 위치가 변경되는 경우, 눈 위치 예측 장치(300)는 도 2를 참조하여 전술된 HMD(200)에 포함될 수 있다.
통신부(310)는 프로세서(320), 메모리(330), 카메라(340) 및 IMU(350)와 연결되어 데이터를 송수신한다. 통신부(310)는 외부의 다른 장치와 연결되어 데이터를 송수신할 수 있다.
통신부(310)는 눈 위치 예측 장치(300) 내의 회로망(circuitry)으로 구현될 수 있다. 예를 들어, 통신부(310)는 내부 버스(internal bus) 및 외부 버스(internal bus)를 포함할 수 있다. 다른 예로, 통신부(310)는 눈 위치 예측 장치(300)와 외부의 장치를 연결하는 요소일 수 있다. 통신부(310)는 인터페이스(interface)일 수 있다. 통신부(310)는 외부의 장치로부터 데이터를 수신하여, 프로세서(320) 및 메모리(330)에 데이터를 전송할 수 있다.
프로세서(320)는 통신부(310)가 수신한 데이터 및 메모리(330)에 저장된 데이터를 처리한다. "프로세서"는 목적하는 동작들(desired operations)을 실행시키기 위한 물리적인 구조를 갖는 회로를 가지는 하드웨어로 구현된 데이터 처리 장치일 수 있다. 예를 들어, 목적하는 동작들은 프로그램에 포함된 코드(code) 또는 인스트럭션들(instructions)을 포함할 수 있다. 예를 들어, 하드웨어로 구현된 데이터 처리 장치는 마이크로프로세서(microprocessor), 중앙 처리 장치(central processing unit), 프로세서 코어(processor core), 멀티-코어 프로세서(multi-core processor), 멀티프로세서(multiprocessor), ASIC(Application-Specific Integrated Circuit), FPGA(Field Programmable Gate Array)를 포함할 수 있다.
프로세서(320)는 메모리(예를 들어, 메모리(330))에 저장된 컴퓨터로 읽을 수 있는 코드(예를 들어, 소프트웨어) 및 프로세서(320)에 의해 유발된 인스트럭션들을 실행한다.
메모리(330)는 통신부(310)가 수신한 데이터 및 프로세서(320)가 처리한 데이터를 저장한다. 예를 들어, 메모리(330)는 프로그램을 저장할 수 있다. 저장되는 프로그램은 눈 위치를 예측할 수 있도록 코딩되어 프로세서(320)에 의해 실행 가능한 신텍스(syntax)들의 집합일 수 있다.
일 측면에 따르면, 메모리(330)는 하나 이상의 휘발성 메모리, 비휘발성 메모리 및 RAM(Random Access Memory), 플래시 메모리, 하드 디스크 드라이브 및 광학 디스크 드라이브를 포함할 수 있다.
메모리(330)는 눈 위치 예측 장치(300)를 동작 시키는 명령어 세트(예를 들어, 소프트웨어)를 저장한다. 눈 위치 예측 장치(300)를 동작 시키는 명령어 세트는 프로세서(320)에 의해 실행된다.
카메라(340)는 장면을 촬영함으로써 영상을 생성한다. 예를 들어, 카메라(340)는 사용자를 촬영함으로써 사용자 영상을 생성할 수 있다.
IMU(350)는 IMU(350)가 포함된 장치의 방위 변화를 측정한다. 예를 들어, 사용자가 HMD(200)를 착용하고 있는 경우, 사용자의 머리의 위치 및 머리가 어느 방향을 향하고 있는지를 측정할 수 있다.
디스플레이(360)는 프로세서(320)에 의해 생성된 영상을 출력한다. 예를 들어, 영상은 예측된 눈 위치에 대한 스테레오스코픽 영상들일 수 있다.
통신부(310), 프로세서(320), 메모리(330), 카메라(340), 관성 측정장치(Inertial Measurement Unit: IMU)(350) 및 디스플레이(360)에 대해, 아래에서 도 4 내지 도 10을 참조하여 상세히 설명된다.
도 4는 일 실시예에 따른 눈 위치 예측 방법의 흐름도이다.
단계(410)에서, 프로세서(320)는 눈 위치 데이터를 수신한다. 눈 위치 데이터는 눈 위치 예측 장치(300)의 사용자의 눈 위치에 관한 정보일 수 있다. 눈 위치 데이터는 실제로 획득된 값에 기초하여 생성된 데이터이다.
예를 들어, 사용자가 3D TV를 보는 경우, 눈 위치 데이터는 3D TV와 사용자의 눈 간의 상대적인 위치 관계 또는 사용자의 절대적인 눈 위치를 나타낼 수 있다. 사용자가 3D TV를 보는 경우, 눈 위치 데이터를 생성하는 방법이 아래의 도 5를 참조하여 상세히 설명된다.
다른 예로, 사용자가 HMD를 착용한 경우, 사용자의 머리의 위치 및 방향에 관한 정보가 IMU(350)를 통해 획득될 수 있다. 머리의 위치 및 방향에 관한 정보는 눈 위치에 관한 정보로 변환되고, 눈 위치에 관한 정보에 기초하여 눈 위치 데이터가 생성될 수 있다. 사용자가 HMD를 착용하는 경우, 눈 위치 데이터를 생성하는 방법이 아래의 도 6을 참조하여 상세히 설명된다.
단계(420)에서, 프로세서(320)는 시간적으로 연속되는 복수의 눈 위치 데이터들에 기초하여, 복수의 예측기 각각에서 예측(predicted) 눈 위치 데이터를 계산한다. 예측기 별로 예측 눈 위치 데이터가 계산된다. 계산된 예측 눈 위치 데이터는 2D 좌표 또는 3D 좌표일 수 있다.
예를 들어, 시간적으로 연속되는 복수의 눈 위치 데이터 각각은 주기적으로 사용자를 촬영한 영상들에 기반하여 생성된 눈 위치를 의미한다. 다른 예로, 시간적으로 연속되는 복수의 눈 위치 데이터 각각은 주기적으로 측정된 사용자의 머리의 위치 및 방향을 의미한다. 시간적으로 연속되는 복수의 눈 위치 데이터는 눈 위치가 변화한 추이를 나타낼 수 있다.
예를 들어, 예측기는 프로세서(320)에 의해 실행되는 데이터 필터일 수 있다. 예측기는 움직임 평균 필터(moving average filter), 가중 평균 필터(weighted average filter), 바이래터럴 필터(bilateral filter), 사비츠키-골레이 필터(Savitzky-Golay filter), 및 지수 평활법 필터(exponential smoothing filter)를 포함할 수 있으며, 기재된 실시예로 한정되지 않는다.
다른 예로, 예측기는 신경망(neural network)을 이용할 수 있다. 예측기는 순환형 신경망(recurrent neural network), 및 지수 평활 신경망(exponential smoothing neural network)를 포함할 수 있으며, 기재된 실시예로 한정되지 않는다.
일 측면에 따르면, 복수의 눈 위치 데이터는 측정된 모든 눈 위치 데이터일 수 있다. 다른 일 측면에 따르면, 복수의 눈 위치 데이터는 미리 설정된 윈도우 크기를 가질 수 있다. 새로운 눈 위치 데이터가 수신되는 경우, 윈도우에 포함된 데이터 중 가장 오래된 눈 위치 데이터가 삭제될 수 있다. 미리 설정된 크기의 윈도우를 이용하는 경우, 최근의 움직임 트렌드를 더 반영시켜서 눈 위치를 예측할 수 있다.
단계(430)에서, 프로세서(320)는 복수의 예측기 각각에 대한 오차 정보를 계산한다. 예를 들어, 프로세서(320)는 수신한 눈 위치 데이터에 기반하여 복수의 예측기 각각에 대한 오차 정보를 계산할 수 있다. 실제의 눈 위치 데이터 및 예측된 눈 위치 데이터를 비교한 결과에 기반하여 오차 정보가 생성될 수 있다. 오차 정보를 계산하는 방법에 대해, 아래에서 도 8을 참조하여 상세히 설명된다.
단계(440)에서, 프로세서(320)는 오차 정보에 기반하여 복수의 예측기 중 하나 이상의 예측기들을 결정한다. 결정된 예측기는 타겟(target) 예측기로 명명된다. 예를 들어, 프로세서(320)는 복수의 예측기 각각에 대한 오차 정보에 기초하여 오차가 작은 순서로 미리 설정된 개수의 타겟 예측기를 결정할 수 있다.
단계(450)에서, 프로세서(320)는 타겟 예측기에서 계산된 예측 눈 위치 데이터에 기초하여 최종 예측 눈 위치 데이터를 획득한다. 최종 예측 눈 위치 데이터는 3D 영상을 생성하기 위해 이용될 수 있다.
예를 들어, 하나 이상의 타겟 예측기들이 계산한 예측 눈 위치 데이터들의 평균 값을 최종 예측 눈 위치 데이터로 계산할 수 있다. 다른 예로, 가중치에 기초하여 최종 예측 눈 위치 데이터가 계산될 수 있다. 최종 예측 눈 위치 데이터를 획득하는 방법에 대해, 아래에서 도 9를 참조하여 상세히 설명된다.
<촬영 영상을 분석하여 눈 위치 데이터를 생성하는 방법>
도 5는 일 예에 따른 사용자를 촬영한 영상에 기초하여 눈 위치 데이터를 생성하는 방법의 흐름도이다.
아래의 단계들(510 내지 530)은 도 4를 참조하여 전술된 단계(410)가 수행되기 전에 수행될 수 있다. 예를 들어, 단계들(510 내지 530)은 눈 위치 예측 장치(300)가 도 1을 참조하여 전술된 디스플레이 장치(100)에 포함되는 경우에 수행될 수 있다.
단계(510)에서, 카메라(340)는 사용자를 촬영함으로써 사용자 영상을 생성한다. 카메라(340)는 미리 설정된 주기로 사용자 영상을 생성할 수 있다. 예를 들어, 카메라(340)가 60fps(frame per sec)로 동작하는 경우, 1분 동안 60개의 사용자 영상들이 생성될 수 있다.
단계(520)에서, 프로세서(320)는 사용자 영상 내의 눈을 검출하고, 사용자 영상 내에서 검출된 눈의 좌표를 계산한다. 예를 들어, 프로세서(320)는 좌안의 좌표 및 우안의 좌표를 계산할 수 있다.
단계(530)에서, 프로세서(320)는 눈의 영상 내 좌표에 기초하여 눈 위치 데이터를 생성한다. 생성된 눈 위치 데이터는 3D 위치를 나타낼 수 있다. 예를 들어, 프로세서(320)는 사용자 영상에 기초하여 카메라(340)와 사용자 간의 거리를 계산 하고, 계산된 거리 및 사용자 영상 내의 눈의 좌표에 기반하여 눈 위치 데이터를 생성할 수 있다. 다른 예로, 프로세서(320)는 카메라(340)의 내부 파라미터(intrinsic parameter) 및 눈의 좌표에 기반하여 눈 위치 데이터를 생성할 수 있다.
<관성 측정장치를 이용하여 눈 위치 데이터를 생성하는 방법>
도 6은 일 예에 따른 관성 측정장치에 기초하여 눈 위치 데이터를 생성하는 방법의 흐름도이다.
아래의 단계들(610, 620)은 도 4를 참조하여 전술된 단계(410)가 수행되기 전에 수행될 수 있다. 예를 들어, 단계들(610, 620)은 눈 위치 예측 장치(300)가 도 2를 참조하여 전술된 HMD(200)에 포함되는 경우에 수행될 수 있다.
단계(610)에서, IMU(350)는 HMD(200)의 자세를 측정한다. HMD(200)는 사용자의 머리와 동일하게 움직이므로, 측정된 HMD(200)의 자세에는 머리의 자세가 반영될 수 있다. 또한, 사용자는 머리의 위치를 움직여서 눈의 위치를 변경하므로, 측정된 HMD(200)의 자세는 눈의 위치를 나타낼 수 있다. 측정된 자세는 HMD(200)의 절대적 위치 및 회전 상태를 포함할 수 있다. HMD(200)의 자세에 대해, 아래에서 도 7을 참조하여 상세히 설명된다.
단계(620)에서, 측정된 자세에 기초하여 눈 위치 데이터가 생성된다. 예를 들어, 프로세서(320) 또는 IMU(350)는 측정된 HMD(200)의 자세에 기초하여 눈 위치를 계산할 수 있다. 프로세서(320) 또는 IMU(350)는 계산된 눈 위치에 기초하여 눈 위치 데이터를 생성할 수 있다.
도 7은 일 예에 따른 관성 측정장치의 6축을 도시한다.
HMD(200)가 사용자의 머리에 착용된 경우, HMD(200)는 머리의 자세를 측정한다. 예를 들어, HMD(200)는 머리의 절대 위치 및 방향을 측정할 수 있다. HMD(200)는 HMD(200)를 기준으로 6축의 방향들(700)을 센싱할 수 있다.
< 예측기들에 대한 오차 정보 계산>
도 8은 일 예에 따른 복수의 예측기 각각에 대한 오차 정보를 계산하는 방법의 흐름도이다.
도 4를 참조하여 전술된 단계(430)는 아래의 단계들(810, 820)을 포함할 수 있다.
단계(810)에서, 프로세서(320)는 복수의 예측기 각각에서, 눈 위치 데이터 및 눈 위치 데이터에 대응하는 예측 눈 위치 데이터 간의 차이를 계산한다. 복수의 예측기가 6 개인 경우, 각각의 예측기에 대한 6 개의 차이가 계산될 수 있다. 예를 들어, 수신한 눈 위치 데이터가 t 번째의 실제 데이터인 경우, 제1 예측기는 t 번째의 눈 위치 데이터 및 t 번째의 눈 위치 데이터를 예측한 t 번째의 예측 눈 위치 데이터 간의 차이를 계산할 수 있다. 다시 말하자면, 차이는 실제의 값과 예측된 값 간의 오차일 수 있다.
단계(820)에서, 프로세서(320)는 복수의 예측기 각각에 대해 계산된 차이에 기초하여 복수의 예측기 각각에 대한 오차 정보를 계산한다.
예를 들어, 오차 정보는 아래의 [수학식 1]을 이용하여 계산될 수 있다. [수학식 1]에서, e(t)는 t 번째 데이터의 오차이고, ev(t)는 t 번째 데이터까지의 오차들의 평균이다. ev(t)는 오차 정보일 수 있다.
Figure pat00001
다른 예로, 오차 정보는 아래의 [수학식 2] 또는 [수학식 3]을 이용하여 계산될 수 있다. 예를 들어, 눈 위치의 움직임의 트렌드를 반영하기 위해 최근 K 개의 데이터가 고려될 수 있다. 다시 말하자면, K의 크기를 갖는 윈도우가 설정될 수 있다. [수학식 2] 또는 [수학식 3]에서 etrend(t)는 오차 정보일 수 있다.
Figure pat00002
Figure pat00003
<오차 정보에 기반한 타겟 예측기 결정>
도 4를 참조하여 전술된 단계(440)에서, 프로세서(320)는 오차 정보에 기반하여 복수의 예측기 중 하나 이상의 타겟 예측기들을 결정한다. 프로세서(320)는 복수의 예측기 각각에 대한 오차 정보에 기초하여 오차가 작은 순서로 미리 설정된 개수의 타겟 예측기를 결정할 수 있다. 예를 들어, 복수의 예측기가 6 개인 경우, 오차 정보에 기초하여 오차가 작은 순서로 3 개의 타겟 예측기들이 결정될 수 있다.
<최종 눈 위치 데이터 계산>
도 9는 일 예에 따른 최종 눈 위치 데이터를 계산하는 방법의 흐름도이다.
도 4를 참조하여 전술된 단계(450)는 아래의 단계들(910, 920, 930)을 포함할 수 있다.
단계(910)에서, 프로세서(320)는 복수의 눈 위치 데이터에 기초하여 눈 위치가 변화하는 속도 및 가속도 중 적어도 하나를 계산한다.
단계(920)에서, 프로세서(320)는 계산된 속도 및 가속도 중 적어도 하나에 기초하여 타겟 예측기 각각에 대한 가중치를 결정한다. 가중치는 타겟 예측기의 특성에 기초하여 결정될 수 있다. 예를 들어, 계산된 속도 및 가속도가 높은 경우, 다른 예측기에 비해, 신경망을 이용하는 예측기에 더 높은 가중치가 결정될 수 있다.
단계(930)에서, 프로세서(320)는 타겟 예측기에 의해 계산된 예측 눈 위치 데이터 및 타켓 예측기에 대해 결정된 가중치에 기반하여 최종 예측 눈 위치를 계산한다. 예를 들어, 최종 예측 눈 위치는 아래의 [수학식 4]를 이용하여 계산될 수 있다. [수학식 4]는 결정된 타겟 예측기의 개수가 3이고, 수신된 실제의 눈 위치가 t 번째 데이터인 경우, t+3 번째의 눈 위치가 예측되는 경우이며, Pe -final(t+3)는 t+3 번째 최종 예측 눈 위치이고, Pe -1(t+3), Pe -2(t+3) 및 Pe -3(t+3)은 타겟 예측기 각각에서 계산된 예측 눈 위치 데이터이고, We-1(t+3), We-2(t+3) 및 We-3(t+3)은 타겟 예측기 각각에 대해 결정된 가중치이다.
Figure pat00004
<최종 눈 위치 데이터에 기반한 3D 영상 생성>
도 10는 일 예에 따른 3D 영상을 생성하는 방법의 흐름도이다.
일 측면에 따르면, 아래의 단계들(1010, 1020)은 도 4를 참조하여 전술된 단계(450)가 수행된 후 추가로 수행될 수 있다.
단계(1010)에서, 프로세서(320)는 최종 예측 눈 위치에 기초하여 3D 영상을 생성한다. 프로세서(320)는 수신한 콘텐츠(예를 들어, 스테레오스코픽 영상들)에 기반하여 최종 예측 눈 위치에 대응하는 3D 영상을 생성할 수 있다. 예를 들어, 프로세서(320)는 스테레오스코픽 영상들을 최종 예측 눈 위치에 대응하는 스테레오스코픽 영상들로 변환하고, 변환된 스테레오스코픽 영상들을 디스플레이(360)의 특성에 기초하여 픽셀 맵핑함으로써 3D 영상을 생성할 수 있다.
단계(1010)는 아래의 단계들(1012, 1014)을 포함한다. 디스플레이 장치의 종류에 따라 단계(1012) 또는 단계(1014)가 선택적으로 수행될 수 있다.
예를 들어, 단계(1012)는 디스플레이 장치가 도 1을 참조하여 전술된 디스플레이 장치(100)인 경우 수행될 수 있다. 단계(1012)에서, 프로세서(320)는 3D 영상이 예측된 눈의 위치에서 형성되도록 3D 영상을 생성한다.
다른 예로, 단계(1014)는 디스플레이 장치가 도 2를 참조하여 전술된 HMD(200)인 경우 수행될 수 있다. 다시 말하자면, 단계(1014)는 최종 예측 눈 위치 데이터가 예측된 사용자의 시점을 나타내는 경우 수행될 수 있다. 단계(1014)에서, 프로세서(320)는 예측된 사용자의 시점에 대응하도록 3D 영상을 생성한다.
단계(1020)에서, 프로세서(320)는 디스플레이(360)를 통해 3D 영상을 출력한다.
눈 위치 예측 장치(300)가 눈 위치를 예측할 뿐만 아니라, 예측된 눈 위치에 기초하여 3D 영상을 생성 및 출력하는 경우 눈 위치 예측 장치(300)는 디스플레이 장치(300)로 명명될 수 있다. 예를 들어, 디스플레이 장치(300)는 타블렛 피씨, 모니터, 휴대폰, 3D TV 및 웨어러블 디바이스를 포함할 수 있고, 기재된 실시예로 한정되는 것은 아니다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
 이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
100: 디스플레이 장치
200: 헤드 마운트 디스플레이
300: 눈 위치 예측 장치
310: 통신부
320: 프로세서
330: 메모리
340: 카메라
350: 관성 측정장치
360: 디스플레이

Claims (20)

  1. 시간적으로 연속되는 복수의 눈 위치 데이터들에 기초하여, 복수의 예측기 각각에서 예측(predicted) 눈 위치 데이터를 계산하는 단계;
    상기 복수의 예측기 각각에 대한 오차 정보를 계산하는 단계;
    상기 오차 정보에 기초하여 상기 복수의 예측기 중 하나 이상의 타겟 예측기를 결정하는 단계; 및
    상기 타겟 예측기에서 계산된 예측 눈 위치 데이터에 기초하여 최종 예측 눈 위치 데이터를 획득하는 단계
    를 포함하는,
    디스플레이 장치의 사용자 눈 위치 예측 방법.
  2. 제1항에 있어서,
    상기 복수의 눈 위치 데이터 각각은,
    사용자를 촬영한 영상에 기초하여 계산된 사용자의 눈 위치 데이터인,
    디스플레이 장치의 사용자 눈 위치 예측 방법.
  3. 제1항에 있어서,
    상기 복수의 눈 위치 데이터는,
    시간적으로 연속되는 스테레오스코픽 영상들에 기초하여 계산된 눈의 3차원(Dimension; D) 위치 데이터들인,
    디스플레이 장치의 사용자 눈 위치 예측 방법.
  4. 제1항에 있어서,
    상기 복수의 눈 위치 데이터는,
    관성 측정장치(Inertial Measurement Unit: IMU)로부터 수신되는,
    디스플레이 장치의 사용자 눈 위치 예측 방법.
  5. 제4항에 있어서,
    상기 관성 측정 장치는 헤드 마운트 디스플레이(Head Mounted Display: HMD)에 포함되는,
    디스플레이 장치의 사용자 눈 위치 예측 방법.
  6. 제1항에 있어서,
    상기 복수의 예측기 각각에 대한 오차 정보를 계산하는 단계는,
    눈 위치 데이터 및 상기 눈 위치 데이터에 대응하는 예측 눈 위치 데이터를 계산한 상기 복수의 예측기 각각의 예측 눈 위치 데이터 간의 차이를 계산하는 단계; 및
    상기 차이에 기초하여 상기 복수의 예측기 각각에 대한 오차 정보를 계산하는 단계
    를 포함하는,
    디스플레이 장치의 사용자 눈 위치 예측 방법.
  7. 제1항에 있어서,
    상기 복수의 예측기 중 하나 이상의 타겟 예측기를 결정하는 단계는,
    상기 복수의 예측기 각각에 대한 오차 정보에 기초하여 오차가 작은 순서로 미리 설정된 개수의 타겟 예측기를 결정하는 단계
    를 포함하는,
    디스플레이 장치의 사용자 눈 위치 예측 방법.
  8. 제1항에 있어서,
    상기 최종 예측 눈 위치 데이터를 획득하는 단계는,
    상기 하나 이상의 타겟 예측기가 계산한 상기 예측 눈 위치 데이터들의 평균 값을 상기 최종 예측 눈 위치 데이터로 계산하는 단계
    를 포함하는,
    디스플레이 장치의 사용자 눈 위치 예측 방법.
  9. 제1항에 있어서,
    상기 최종 예측 눈 위치 데이터를 획득하는 단계는,
    상기 복수의 눈 위치 데이터들에 기초하여 눈 위치가 변화하는 가속도를 계산하는 단계;
    상기 가속도에 기초하여 상기 하나 이상의 타겟 예측기 각각에 대한 가중치를 결정하는 단계; 및
    하나 이상의 타겟 예측기가 계산한 예측 눈 위치 데이터 및 상기 가중치에 기초하여 상기 최종 예측 눈 위치 데이터를 계산하는 단계
    를 포함하는,
    디스플레이 장치의 사용자 눈 위치 예측 방법.
  10. 제1항에 있어서,
    상기 최종 예측 눈 위치 데이터에 기초하여 3차원(Dimension; D) 영상을 생성하는 단계
    를 더 포함하고,
    상기 3D 영상은 디스플레이에 출력되는,
    디스플레이 장치의 사용자 눈 위치 예측 방법.
  11. 제10항에 있어서,
    상기 3D 영상을 생성하는 단계는,
    상기 3D 영상이 예측된 사용자의 눈의 위치에서 형성되도록 상기 3D 영상을 생성하는 단계
    를 포함하는,
    디스플레이 장치의 사용자 눈 위치 예측 방법.
  12. 제10항에 있어서,
    상기 3D 영상을 생성하는 단계는,
    상기 최종 예측 눈 위치 데이터가 예측된 사용자의 시점을 나타내는 경우, 상기 시점에 대응하도록 상기 3D 영상을 생성하는 단계
    를 포함하는,
    디스플레이 장치의 사용자 눈 위치 예측 방법.
  13. 제1항 내지 제12항 중 어느 한 항의 방법을 수행하는 프로그램을 수록한 컴퓨터 판독 가능 기록 매체.
  14. 사용자 눈 위치 예측 장치에 있어서,
    사용자의 눈 위치를 예측하는 프로그램이 기록된 메모리; 및
    상기 프로그램을 수행하는 프로세서
    를 포함하고,
    상기 프로그램은,
    시간적으로 연속되는 복수의 눈 위치 데이터들에 기초하여 복수의 예측기 각각에서 예측 눈 위치 데이터를 계산하는 단계;
    상기 복수의 예측기 각각에 대한 오차 정보를 계산하는 단계;
    상기 오차 정보에 기초하여 상기 복수의 예측기 중 하나 이상의 타겟 예측기를 결정하는 단계; 및
    상기 타겟 예측기에서 계산한 예측 눈 위치 데이터들에 기초하여 최종 예측 눈 위치 데이터를 획득하는 단계
    를 수행하는,
    사용자 눈 위치 예측 장치.
  15. 제14항에 있어서,
    사용자를 촬영함으로써 영상을 생성하는 카메라
    를 더 포함하고,
    상기 복수의 눈 위치 데이터 각각은,
    상기 영상에 기초하여 계산된 상기 사용자의 눈 위치 데이터인,
    사용자 눈 위치 예측 장치.
  16. 제14항에 있어서,
    상기 사용자 눈 위치 예측 장치는,
    헤드 마운트 디스플레이(Head Mounted Display: HMD)에 포함되는,
    사용자 눈 위치 예측 장치.
  17. 제16항에 있어서,
    상기 복수의 눈 위치 데이터를 생성하는 관성 측정장치(Inertial Measurement Unit: IMU)
    를 더 포함하는,
    사용자 눈 위치 예측 장치.
  18. 제14항에 있어서,
    상기 복수의 예측기 각각에 대한 오차 정보를 계산하는 단계는,
    눈 위치 데이터 및 상기 눈 위치 데이터에 대응하는 예측 눈 위치 데이터를 계산한 상기 복수의 예측기 각각의 예측 눈 위치 데이터 간의 차이를 계산하는 단계; 및
    상기 차이에 기초하여 상기 복수의 예측기 각각에 대한 오차 정보를 계산하는 단계
    를 포함하는,
    사용자 눈 위치 예측 장치.
  19. 제14항에 있어서,
    상기 프로그램은,
    상기 최종 예측 눈 위치 데이터에 기초하여 3차원(Dimension; D) 영상을 생성하는 단계
    를 더 수행하고,
    상기 3D 영상은 디스플레이에 출력되는,
    사용자 눈 위치 예측 장치.
  20. 헤드 마운트 디스플레이(Head Mounted Display: HMD)에 의해 수행되는, 사용자의 눈 위치를 예측하는 방법에 있어서,
    관성 측정장치(Inertial Measurement Unit: IMU)에 의해 획득된 시간적으로 연속되는 사용자의 머리의 위치에 관한 정보에 기초하여 시간적으로 연속되는 복수의 눈 위치 데이터들을 생성하는 단계;
    상기 복수의 눈 위치 데이터들에 기초하여, 복수의 예측기 각각에서 예측(predicted) 눈 위치 데이터를 계산하는 단계;
    상기 복수의 예측기 각각에 대한 오차 정보를 계산하는 단계;
    상기 오차 정보에 기초하여 상기 복수의 예측기 중 하나 이상의 타겟 예측기를 결정하는 단계; 및
    상기 타겟 예측기에서 계산된 예측 눈 위치 데이터에 기초하여 최종 예측 눈 위치 데이터를 획득하는 단계
    를 포함하는,
    사용자 눈 위치 예측 방법.
KR1020160161717A 2016-11-30 2016-11-30 눈 위치 예측 방법 및 장치 KR20180061956A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020160161717A KR20180061956A (ko) 2016-11-30 2016-11-30 눈 위치 예측 방법 및 장치
US15/688,445 US20180150134A1 (en) 2016-11-30 2017-08-28 Method and apparatus for predicting eye position

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160161717A KR20180061956A (ko) 2016-11-30 2016-11-30 눈 위치 예측 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20180061956A true KR20180061956A (ko) 2018-06-08

Family

ID=62192978

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160161717A KR20180061956A (ko) 2016-11-30 2016-11-30 눈 위치 예측 방법 및 장치

Country Status (2)

Country Link
US (1) US20180150134A1 (ko)
KR (1) KR20180061956A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210022498A (ko) * 2019-08-20 2021-03-03 구글 엘엘씨 반복 신경망들을 통한 포즈 예측

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102608471B1 (ko) 2018-11-06 2023-12-01 삼성전자주식회사 눈 추적 방법 및 장치

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4852018A (en) * 1987-01-07 1989-07-25 Trustees Of Boston University Massively parellel real-time network architectures for robots capable of self-calibrating their operating parameters through associative learning
JP4854582B2 (ja) * 2007-04-25 2012-01-18 キヤノン株式会社 画像処理装置、画像処理方法
US8199186B2 (en) * 2009-03-05 2012-06-12 Microsoft Corporation Three-dimensional (3D) imaging based on motionparallax
US9690099B2 (en) * 2010-12-17 2017-06-27 Microsoft Technology Licensing, Llc Optimized focal area for augmented reality displays
US9185352B1 (en) * 2010-12-22 2015-11-10 Thomas Jacques Mobile eye tracking system
US8942434B1 (en) * 2011-12-20 2015-01-27 Amazon Technologies, Inc. Conflict resolution for pupil detection
US9265415B1 (en) * 2012-01-06 2016-02-23 Google Inc. Input detection
US9618759B2 (en) * 2012-08-06 2017-04-11 Sony Corporation Image display apparatus and image display method
US9788714B2 (en) * 2014-07-08 2017-10-17 Iarmourholdings, Inc. Systems and methods using virtual reality or augmented reality environments for the measurement and/or improvement of human vestibulo-ocular performance
US20140313308A1 (en) * 2013-04-19 2014-10-23 Samsung Electronics Co., Ltd. Apparatus and method for tracking gaze based on camera array
US9264702B2 (en) * 2013-08-19 2016-02-16 Qualcomm Incorporated Automatic calibration of scene camera for optical see-through head mounted display
US10203762B2 (en) * 2014-03-11 2019-02-12 Magic Leap, Inc. Methods and systems for creating virtual and augmented reality
US9715113B2 (en) * 2014-03-18 2017-07-25 Seiko Epson Corporation Head-mounted display device, control method for head-mounted display device, and computer program
US9684827B2 (en) * 2014-03-26 2017-06-20 Microsoft Technology Licensing, Llc Eye gaze tracking based upon adaptive homography mapping
AU2015297036B2 (en) * 2014-05-09 2017-09-28 Google Llc Systems and methods for discerning eye signals and continuous biometric identification
US9489739B2 (en) * 2014-08-13 2016-11-08 Empire Technology Development Llc Scene analysis for improved eye tracking
KR102333267B1 (ko) * 2014-12-10 2021-12-01 삼성전자주식회사 눈 위치 예측 장치 및 방법
US10241569B2 (en) * 2015-12-08 2019-03-26 Facebook Technologies, Llc Focus adjustment method for a virtual reality headset
JP2017216667A (ja) * 2016-05-31 2017-12-07 フォーブ インコーポレーテッド 画像提供システム
CN109863533B (zh) * 2016-08-22 2024-03-15 奇跃公司 虚拟、增强和混合现实系统和方法
US9940518B1 (en) * 2017-09-11 2018-04-10 Tobii Ab Reliability of gaze tracking data for left and right eye

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210022498A (ko) * 2019-08-20 2021-03-03 구글 엘엘씨 반복 신경망들을 통한 포즈 예측

Also Published As

Publication number Publication date
US20180150134A1 (en) 2018-05-31

Similar Documents

Publication Publication Date Title
US11514839B2 (en) Optimized display image rendering
US11010921B2 (en) Distributed pose estimation
JP6439702B2 (ja) 画像処理装置及び画像処理方法、コンピューター・プログラム、並びに画像表示システム
CN109146965B (zh) 信息处理装置、计算机可读介质和头戴式显示装置
EP3368965B1 (en) Remote rendering for virtual images
CN109074681B (zh) 信息处理装置、信息处理方法和程序
US9928655B1 (en) Predictive rendering of augmented reality content to overlay physical structures
EP3000011B1 (en) Body-locked placement of augmented reality objects
KR20190098003A (ko) 장치의 자세 추정 방법 및 그 장치
JP2020514908A (ja) カラー仮想コンテンツワーピングを伴う複合現実システムおよびそれを使用して仮想コンテンツ生成する方法
CN106782260B (zh) 用于虚拟现实运动场景的显示方法及装置
CN111627116A (zh) 图像渲染控制方法、装置及服务器
US20170287097A1 (en) Hybrid client-server rendering in a virtual reality system
US11301969B1 (en) Context aware dynamic distortion correction
US11436790B2 (en) Passthrough visualization
US10714055B1 (en) Systems and methods for display synchronization in head-mounted display devices
CN110969706B (zh) 增强现实设备及其图像处理方法、系统以及存储介质
KR20240008915A (ko) 모션 블러 완화를 위한 선택적 이미지 피라미드 계산
KR20180061956A (ko) 눈 위치 예측 방법 및 장치
CN112073632A (zh) 图像处理方法、设备及存储介质
KR20170082331A (ko) 눈 위치 예측 방법 및 장치
US11694409B1 (en) Augmented reality using a split architecture
EP4206853A1 (en) Electronic device and method with independent time point management
WO2023162504A1 (ja) 情報処理装置、情報処理方法およびプログラム
CN117337575A (zh) 用于运动模糊减轻的选择性图像金字塔计算

Legal Events

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