KR20190085509A - 가상 및 증강 현실 디스플레이 시스템들 및 방법들을 위한 연속 시간 와핑 및 양안 시간 와핑 - Google Patents

가상 및 증강 현실 디스플레이 시스템들 및 방법들을 위한 연속 시간 와핑 및 양안 시간 와핑 Download PDF

Info

Publication number
KR20190085509A
KR20190085509A KR1020197008554A KR20197008554A KR20190085509A KR 20190085509 A KR20190085509 A KR 20190085509A KR 1020197008554 A KR1020197008554 A KR 1020197008554A KR 20197008554 A KR20197008554 A KR 20197008554A KR 20190085509 A KR20190085509 A KR 20190085509A
Authority
KR
South Korea
Prior art keywords
image frame
image
viewer
display device
time
Prior art date
Application number
KR1020197008554A
Other languages
English (en)
Other versions
KR102210993B1 (ko
Inventor
이반 예오
라이오넬 에드윈
사무엘 에이. 밀러
Original Assignee
매직 립, 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 매직 립, 인코포레이티드 filed Critical 매직 립, 인코포레이티드
Priority to KR1020217002675A priority Critical patent/KR102424864B1/ko
Publication of KR20190085509A publication Critical patent/KR20190085509A/ko
Application granted granted Critical
Publication of KR102210993B1 publication Critical patent/KR102210993B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • G06T15/205Image-based rendering
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • GPHYSICS
    • 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
    • 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/147Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/02Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
    • G09G5/026Control of mixing and/or overlay of colours in general
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/363Graphics controllers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/111Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
    • H04N13/117Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation the virtual viewpoint locations being selected by the viewers or determined by viewer tracking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/332Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
    • H04N13/344Displays for viewing with the aid of special glasses or head-mounted displays [HMD] with head-mounted left-right displays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/366Image reproducers using viewer tracking
    • H04N13/383Image reproducers using viewer tracking for tracking with gaze detection, i.e. detecting the lines of sight of the viewer's eyes
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8082Virtual reality
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/014Head-up displays characterised by optical features comprising information/image processing systems
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2215/00Indexing scheme for image rendering
    • G06T2215/16Using real world measurements to influence rendering
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2354/00Aspects of interface with display user
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/20Details of the management of multiple sources of image data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Geometry (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Optics & Photonics (AREA)
  • Processing Or Creating Images (AREA)
  • Controls And Circuits For Display Device (AREA)
  • User Interface Of Digital Computer (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Abstract

본 개시내용의 실시예들은, 디스플레이된 이미지를 재-렌더링할 필요없이, 사용자의 머리 움직임을 감안하기 위한 연속 및/또는 양안 시간 와핑 방법들에 관한 것이다. 연속 시간 와핑은, 제2 관점으로부터 이미지를 재-렌더링할 필요없이, 뷰어의 제1 관점으로부터 제2 관점으로의 이미지의 변환을 허용한다. 양안 시간 와핑은 좌측 눈에 대한 좌측 디스플레이 유닛 및 우측 눈에 대한 우측 디스플레이 유닛을 포함하는 디스플레이 디바이스와 관련하여 사용되는 늦은 프레임 시간 와핑을 지칭하고, 여기서 늦은 프레임 시간 와핑은 좌측 디스플레이 유닛 및 우측 디스플레이 유닛에 대해 별개로 수행된다. 와핑된 이미지들은, 광자들이 생성되고 뷰어의 개개의 눈들을 향해 방출되는 좌측 및 우측 디스플레이 유닛들에 전송되고, 이로써 좌측 및 우측 디스플레이 유닛들 상에 이미지를 동시에 디스플레이한다.

Description

가상 및 증강 현실 디스플레이 시스템들 및 방법들을 위한 연속 시간 와핑 및 양안 시간 와핑
[0001] 본 출원은 2016년 8월 26일에 출원된 명칭이 "Time Warp for Virtual and Augmented Reality Display Systems and Methods"인 미국 특허 출원 제62/380,302호의 정식 출원이고 상기 특허 출원의 이점을 주장하고, 상기 특허 출원은 모든 목적들에 대해 인용에 의해 전체적으로 본원에 통합된다. 본 출원은 다음의 미국 특허 출원들: 2016년 3월 25일에 출원된 미국 가출원 제62/313698호(문서 번호 MLEAP.058PR1); 2014년 7월 14일에 출원된 미국 특허 출원 제14/331218호; 2014년 11월 27일에 출원된 미국 특허 출원 제14/555585호; 2015년 4월 18일에 출원된 미국 특허 출원 제14/690401호; 2015년 5월 29일에 출원된 미국 특허 출원 제14/726424호; 2015년 5월 29일에 출원된 미국 특허 출원 제14/726429호; 2016년 5월 4일에 출원된 미국 특허 출원 제15/146296호; 2016년 6월 14일에 출원된 미국 특허 출원 제15/182511호; 2016년 6월 14일에 출원된 미국 특허 출원 제15/182528호; 2015년 8월 18일에 출원된 미국 특허 출원 제62/206765호(문서 번호 MLEAP.002PR); 2016년 8월 18일에 출원된 미국 특허 출원 제15/239710호(문서 번호 MLEAP.002A), 2016년 8월 22일에 출원된 미국 가출원 제62/377831호(문서 번호 101782-1021207 (000100US)) 및 2016년 8월 26일에 출원된 미국 가출원 제62/380302호(문서 번호 101782-1022084 (000200US)) 각각을 인용에 의해 전체적으로 통합한다.
[0002] 본 개시내용은 가상 현실 및 증강 현실 시각화 시스템들에 관한 것이다. 더 구체적으로, 본 개시내용은 가상 현실 및 증강 현실 시각화 시스템들을 위한 연속 시간 와핑 및 양안 시간 와핑 방법들에 관한 것이다.
[0003] 현대 컴퓨팅 및 디스플레이 기술들은 소위 "가상 현실(VR)" 또는 "증강 현실(AR)" 경험들을 위한 시스템들의 개발을 가능하게 하였고, 여기서 디지털적으로 재생된 이미지들 또는 이미지들의 부분들은, 이미지들이 실제인 것으로 보이거나, 실제로 인식될 수 있는 방식으로 사용자에게 제시된다. VR 시나리오는 통상적으로 다른 실제 실세계 시각적 입력에 대한 투명성(transparency)이 없는 디지털 또는 가상 이미지 정보의 프리젠테이션(presentation)을 수반한다. AR 시나리오는 통상적으로 사용자 주위 실세계의 시각화에 대한 증강으로서 디지털 또는 가상 이미지 정보의 프리젠테이션을 수반한다.
[0004] 예컨대, 도 1을 참조하면, AR 장면(4)이 묘사되고, AR 기술의 사용자는 사람들, 나무들, 배경의 빌딩들을 특징으로 하는 실세계 공원형 설정(6), 및 콘크리트 플랫폼(8)을 보게 된다. 이들 아이템들 외에, AR 기술의 사용자는 또한, 그들이 실세계 콘크리트 플랫폼(8) 상에 서 있는 로봇 동상(10), 및 호박 벌의 의인화인 것으로 보여지는 날고 있는 만화형 아바타 캐릭터(2)(비록 이들 엘리먼트들(예컨대, 아바타 캐릭터(2), 및 로봇 동상(10))이 실세계에 존재하지 않더라도)를 "본다는" 것을 인식한다. 인간 시각 인식 및 신경 시스템의 극한 복잡성으로 인해, 다른 가상 또는 실세계 이미저리(imagery) 엘리먼트들 사이에서 가상 이미지 엘리먼트들의 편안하고, 자연스로운 느낌의, 풍부한 프리젠테이션을 가능하게 하는 VR 또는 AR 기술을 생성하는 것은 난제이다.
[0005] 하나의 주요한 문제점은, 사용자의 움직임에 기반하여 사용자에게 디스플레이된 가상 이미지를 수정하는 것에 관한 것이다. 예컨대, 사용자가 자신들의 머리를 움직일 때, 자신들의 시력 영역(예컨대, 시야) 및 시야 영역 내의 객체들의 관점들은 변할 수 있다. 사용자에게 디스플레이될 오버레이 콘텐츠는, 더 현실적인 VR 또는 AR 경험을 제공하기 위해 사용자 움직임을 감안하도록 실시간으로 또는 실시간에 가깝게 수정될 필요가 있다.
[0006] 시스템의 리프레시 레이트(refresh rate)는, 시스템이 콘텐츠를 생성하고 생성된 콘텐츠를 사용자에게 디스플레이(또는 디스플레이를 위해 전송)하는 레이트를 제어(govern)한다. 예컨대, 시스템의 리프레시 레이트가 60 헤르츠이면, 시스템은 콘텐츠를 생성(예컨대, 렌더링, 수정 등)하고, 생성된 콘텐츠를 16 밀리초마다 사용자에게 디스플레이한다. VR 및 AR 시스템은 사용자의 포즈에 기반하여 콘텐츠를 생성할 수 있다. 예컨대, 시스템은 사용자의 포즈를 결정하고, 결정된 포즈에 기반하여 콘텐츠를 생성하며, 생성된 콘텐츠를 16 밀리초 시간 윈도우 내에서 모두 사용자에게 디스플레이할 수 있다. 시스템이 사용자의 포즈를 결정할 때와 시스템이 생성된 콘텐츠를 사용자에게 디스플레이할 때 사이의 시간은 "모션-광자 레이턴시"라고 알려져 있다. 사용자는, 시스템이 사용자의 포즈를 결정할 때와 시스템이 생성된 콘텐츠를 디스플레이할 때 사이의 시간에서 그들의 포즈를 변경할 수 있다. 이러한 변화가 감안되지 않는다면, 이것은 원치 않는 사용자 경험을 발생시킬 수 있다. 예컨대, 시스템은 사용자의 제1 포즈를 결정하고, 제1 포즈에 기반하여 콘텐츠를 생성하기 시작할 수 있다. 이어서, 사용자는, 시스템이 제1 포즈를 결정하고 후속적으로 제1 포즈에 기반하여 콘텐츠를 생성할 때와 시스템이 생성된 콘텐츠를 사용자에게 디스플레이할 때 사이의 시간에서 자신들의 포즈를 제2 포즈로 변경할 수 있다. 콘텐츠가 제1 포즈에 기반하여 생성되고, 사용자가 이제 제2 포즈를 갖기 때문에, 사용자에게 디스플레이되는 생성된 콘텐츠는 포즈 미스매치로 인해 사용자에 대해 잘못 배치된 것처럼 보일 것이다. 포즈 미스매치는 원치 않는 사용자 경험으로 이어질 수 있다.
[0007] 시스템들은, 예컨대, 버퍼링된 이미지에 대해 동작하는 사후-프로세싱 단계로서, 전체 렌더링된 이미지 프레임에 걸쳐 사용자 포즈에서의 사용자 변화를 감안하기 위한 보정을 적용할 수 있다. 이러한 기술이, 모든 픽셀들이 렌더링될 때, 모든 픽셀들을 (예컨대, 2ms 동안) 비추고/조명함으써 이미지 프레임을 디스플레이하는 패널 디스플레이에서 작동할 수 있지만, 이러한 기술은 픽셀 단위로 순차적인 방식으로 이미지 프레임을 (예컨대, 16ms 동안) 디스플레이하는 스캐닝 디스플레이에서 제대로 작동하지 않을 수 있다. 픽셀 단위로 순차적인 방식으로 이미지 프레임들을 디스플레이하는 스캐닝 디스플레이들에서, 제1 픽셀과 마지막 픽셀 사이의 시간은 최대 완전한 프레임 지속기간(예컨대, 60Hz 디스플레이에 대해 16ms)일 수 있고, 그 동안에 사용자 포즈가 상당히 변할 수 있다.
[0008] 실시예들은 종래의 시간 와핑(time warp)을 구현하는 VR 또는 AR 시스템들과 연관된 이들 및 다른 문제점들을 해결한다.
[0009] 본 개시내용은 3차원(3D) 시각화 시스템들을 가능하게 하는 기술들에 관한 것이다. 더 구체적으로, 본 개시내용은, 마치 가상 현실("VR") 또는 증강 현실("AR") 콘텐츠가 관측되는 실세계에서 발생하는 것처럼 이러한 콘텐츠의 인식을 허용하는 디스플레이 시스템을 통해 사용자에 대한 AR 콘텐츠를 생성하기 위한 컴포넌트들, 서브-컴포넌트들, 아키텍처들 및 시스템들을 다룬다. 이러한 몰입 감각 입력은 또한 혼합 현실("MR")로 지칭될 수 있다.
[0010] 일부 실시예들에서, 광 패턴은, 디스플레이 시스템을 착용한 사용자에게 콘텐츠를 제공하도록 구성된 디스플레이 시스템의 도파관으로 주입된다. 광 패턴은 광 프로젝터에 의해 주입될 수 있으며, 도파관은 도파관 내의 내부 전반사(total internal reflection)를 통해 특정 파장의 광을 전파하도록 구성될 수 있다. 광 프로젝터는 LED(light emitting diode)들 및 LCOS(liquid crystal on silicon) 시스템을 포함할 수 있다. 일부 실시예들에서, 광 프로젝터는 스캐닝 파이버(scanning fiber)를 포함할 수 있다. 광 패턴은 시간-순차 방식(time-sequenced manner)으로 이미지 데이터를 포함할 수 있다.
[0011] 다양한 실시예들은, 사용자의 머리 움직임을 감안하고 사용자의 머리 움직임으로 인한 모션-광자 레이턴시를 최소화하기 위한 연속 및/또는 양안(binocular) 시간 와핑 방법들을 제공한다. 연속 시간 와핑은, 제2 관점으로부터 이미지를 재-렌더링할 필요없이, (예컨대, 사용자의 머리의 제1 포지션에 기반한) 제1 관점으로부터 (예컨대, 사용자의 머리의 제2 포지션에 기반한) 제2 관점으로의 이미지의 변환을 허용한다. 일부 실시예들에서, 연속 시간 와핑은 외부 하드웨어(예컨대, 디스플레이 외부의 제어기) 상에서 수행되고, 다른 실시예들에서, 연속 시간 와핑은 내부 하드웨어(예컨대, 디스플레이 내부의 제어기) 상에서 수행된다. 연속 시간 와핑은, 마지막 이미지가 디스플레이 디바이스(예컨대, 순차적인 디스플레이 디바이스)에서 디스플레이되기 전에 수행된다.
[0012] 일부 실시예들은, 뷰어의 업데이트된 포지션에 기반하여 이미지 프레임을 변환하기 위한 방법을 제공한다. 방법은, 그래픽 프로세싱 유닛으로부터의 컴퓨팅 디바이스에 의해, 제1 이미지 프레임을 획득하는 것을 포함할 수 있다. 제1 이미지 프레임은 뷰어의 제1 포지션과 연관된 제1 뷰 관점에 대응한다. 방법은 또한 뷰어의 제2 포지션과 연관된 데이터를 수신하는 것을 포함할 수 있다. 컴퓨팅 디바이스는, 제2 이미지 프레임을 생성하기 위해 제1 이미지 프레임 중 적어도 일부를 픽셀마다 계속해서 변환할 수 있다. 제2 이미지 프레임은 뷰어의 제2 포지션과 연관된 제2 뷰 관점에 대응한다. 컴퓨팅 디바이스는 근안 디스플레이 디바이스(near-eye display device) 상에 디스플레이되도록 제2 이미지 프레임을 근안 디스플레이 디바이스의 디스플레이 모듈에 송신할 수 있다.
[0013] 다양한 실시예들은, 뷰어의 업데이트된 포지션에 기반하여 이미지 프레임을 변환하기 위한 방법을 제공한다. 방법은, 제1 시간에서 그래픽 프로세싱 유닛에 의해, 양안 근안 디스플레이 디바이스의 좌측 디스플레이에 대한 좌측 이미지 프레임을 렌더링하는 것을 포함할 수 있다. 좌측 이미지 프레임은 뷰어의 제1 포지션과 연관된 제1 뷰 관점에 대응한다. 방법은 또한, 그래픽 프로세싱 유닛으로부터의 컴퓨팅 디바이스에 의해, 양안 근안 디스플레이 디바이스의 우측 디스플레이에 대한 우측 이미지 프레임을 렌더링하는 것을 포함할 수 있다. 우측 이미지 프레임은 뷰어의 제1 포지션과 연관된 제1 뷰 관점에 대응한다. 그래픽 프로세싱 유닛은, 제1 시간보다 늦은 제2 시간에서, 뷰어의 제2 포지션과 연관된 데이터를 수신할 수 있다. 데이터는 뷰어의 제2 포지션에 기반한 제1 포즈 추정을 포함한다. 그래픽 프로세싱 유닛은, 양안 근안 디스플레이 디바이스의 좌측 디스플레이에 대한 업데이트된 좌측 이미지 프레임을 생성하기 위해, 뷰어의 제2 포지션에 기반하여, 제1 포즈 추정을 사용하여 좌측 이미지 프레임 중 적어도 일부를 변환할 수 있다. 업데이트된 좌측 이미지 프레임은 뷰어의 제2 포지션과 연관된 제2 뷰 관점에 대응한다. 그래픽 프로세싱 유닛은, 제2 시간보다 늦은 제3 시간에서, 좌측 디스플레이 상에 디스플레이되도록 업데이트된 좌측 이미지 프레임을 양안 근안 디스플레이 디바이스의 좌측 디스플레이에 송신할 수 있다. 그래픽 프로세싱 유닛은, 제2 시간보다 늦은 제4 시간에서, 뷰어의 제3 포지션과 연관된 데이터를 수신할 수 있다. 데이터는 뷰어의 제3 포지션에 기반한 제2 포즈 추정을 포함한다. 그래픽 프로세싱 유닛은, 양안 근안 디스플레이 디바이스의 우측 디스플레이에 대한 업데이트된 우측 이미지 프레임을 생성하기 위해, 뷰어의 제3 포지션에 기반하여, 제2 포즈 추정을 사용하여 우측 이미지 프레임 중 적어도 일부를 변환할 수 있다. 업데이트된 우측 이미지 프레임은 뷰어의 제3 포지션과 연관된 제3 뷰 관점에 대응한다. 그래픽 프로세싱 유닛은, 제4 시간보다 늦은 제5 시간에서, 우측 디스플레이 상에 디스플레이되도록 업데이트된 우측 이미지 프레임을 양안 근안 디스플레이 디바이스의 우측 디스플레이에 송신할 수 있다.
[0014] 실시예들은, 위에 설명된 방법 단계들을 수행하기 위한 적어도 그래픽 프로세싱 유닛, 제어기 및 근안 디스플레이 디바이스를 포함하는 컴퓨팅 시스템을 포함할 수 있다.
[0015] 부가적인 특징들, 이익들 및 실시예들은 아래의 상세한 설명, 도면들, 및 청구항들에서 설명된다.
[0016] 도 1은 일부 실시예들에 따른 웨어러블 증강 현실("AR") 디바이스를 통해 보여지는 AR 장면을 예시한다.
[0017] 도 2는 일부 실시예들에 따른 웨어러블 AR 디스플레이 시스템을 예시한다.
[0018] 도 3a는 일부 실시예들에 따른, 실세계 환경과 상호작용하는 AR 디스플레이 시스템의 사용자의 상호작용을 예시한다.
[0019] 도 3b는 일부 실시예들에 따른, 뷰잉 광학기 조립체에 대한 컴포넌트들을 예시한다.
[0020] 도 4는 일 실시예에 따른 시간 와핑을 예시한다.
[0021] 도 5는 일 실시예에 따른, 초기 포지션으로부터의 뷰어의 뷰 영역을 예시한다.
[0022] 도 6은 일 실시예에 따른, 뷰어의 병진운동으로 인한 제2 포지션으로부터의 뷰어의 뷰 영역을 예시한다.
[0023] 도 7은 일 실시예에 따른, 뷰어의 회전으로 인한 제3 포지션으로부터의 뷰어의 뷰 영역을 예시한다.
[0024] 도 8은 압축된 이미지 데이터를 디스플레이 디바이스에 전송하는 그래픽 프로세싱 유닛(GPU)을 예시한다.
[0025] 도 9는 일 실시예에 따른, 판독 커서 방향전환 연속 시간 와핑을 예시한다.
[0026] 도 10은 일 실시예에 따른, GPU와 디스플레이 디바이스 사이의 외부 제어기 유닛을 예시한다.
[0027] 도 11은 일 실시예에 따른, 판독 커서 방향전환 연속 시간 와핑을 수행하기 위한 아키텍처 내의 외부 하드웨어 유닛으로서 외부 제어기 유닛을 예시한다.
[0028] 도 12는 일 실시예에 따른, 래스터 모드(raster mode)에서 전진하는 판독 커서를 예시한다.
[0029] 도 13은 일 실시예에 따른, 래스터 모드에서 판독 커서 방향전환으로 전진하는 판독 커서를 예시한다.
[0030] 도 14는 일 실시예에 따른, 판독 커서에 의한 구역 크로스오버를 예시한다.
[0031] 도 15는 일 실시예에 따른, 구역 크로스오버를 방지하기 위한 버퍼 리드 거리를 예시한다.
[0032] 도 16은 일 실시예에 따른 버퍼 리-스미어 연속 시간 와핑을 예시한다.
[0033] 도 17은 예시적인 실시예에 따른, 버퍼 리-스미어 연속적인 시간 와핑을 수행하기 위한 시스템 아키텍처를 예시한다.
[0034] 도 18은 일 실시예에 따른 픽셀 방향전환 연속 시간 와핑을 예시한다.
[0035] 도 19는 일 실시예에 따른, 픽셀 방향전환 연속 시간 와핑을 수행하기 위한 시스템 아키텍처를 예시한다.
[0036] 도 20은 일 실시예에 따른, 기록 커서 방향전환 연속 시간 와핑을 예시한다.
[0037] 도 21은 일 실시예에 따른, 기록-커서 방향전환 연속 시간 와핑을 수행하기 위한 시스템 아키텍처를 예시한다.
[0038] 도 22는 일 실시예에 따른 궤적을 갖는 기록 커서를 예시한다.
[0039] 도 23은 일 실시예에 따른, 궤적을 갖는 기록 커서 및 판독 커서 중 각각의 커서를 예시한다.
[0040] 도 24는 일 실시예에 따른, 기록/판독 커서 방향전환 연속 시간 와핑을 수행하기 위한 시스템 아키텍처를 예시한다.
[0041] 도 25는 일 실시예에 따른 양안 시간 와핑을 예시한다.
[0042] 도 26은 또 다른 실시예에 따른 스태거링된 양안 시간 와핑(staggered binocular time warp)을 예시한다.
[0043] 도 27은 다른 실시예에 따른 스태거링된 양안 시간 와핑을 예시한다.
[0044] 도 28은 일 실시예에 따른 스태거링된 양안 시간 와핑을 예시한다.
[0045] 도 29는 다른 실시예에 따른 양안 시간 와핑을 예시한다.
[0046] 가상 현실("VR") 경험은 웨어러블 디스플레이 시스템을 통해 사용자에게 제공될 수 있다. 도 2는 웨어러블 디스플레이 시스템(80)(이후에 "시스템(80)"으로 지칭됨)의 예를 예시한다. 시스템(80)은 머리 장착 디스플레이 디바이스(62)(이후에 "디스플레이 디바이스(62)로 지칭됨), 및 디스플레이 디바이스(62)의 기능을 지원하기 위한 다양한 기계적 및 전자적 모듈들 및 시스템들을 포함한다. 디스플레이(62)는, 디스플레이 시스템 사용자 또는 뷰어(60)(이후에 "사용자(60)"로 지칭됨)가 착용할 수 있고, 사용자(60)의 눈들 앞에 디스플레이 디바이스(62)를 포지셔닝하도록 구성된 프레임(64)에 커플링될 수 있다. 다양한 실시예들에 따라, 디스플레이 디바이스(62)는 순차적인 디스플레이일 수 있다. 디스플레이 디바이스(62)는 단안(monocular) 또는 양안일 수 있다. 일부 실시예들에서, 스피커(66)는 프레임(64)에 커플링되고, 사용자(60)의 외이도에 근접하게 포지셔닝된다. 일부 실시예들에서, 또 다른 스피커(도시되지 않음)는, 스테레오/성형 가능한 사운드 제어를 제공하기 위해 사용자(60)의 또 다른 외이도에 인접하게 포지셔닝된다. 디스플레이 디바이스(62)는, 다양한 구성들로 장착될 수 있는, 이를테면, 프레임(64)에 고정되게 부착되거나, 사용자(60)에 의해 착용된 헬멧 또는 모자에 고정되게 부착되거나, 헤드폰들에 임베딩되거나, 그렇지 않으면 사용자(60)에게 제거 가능하게 (예컨대, 백팩(backpack)-스타일 구성으로, 벨트-커플링 스타일 구성으로) 부착되는 로컬 데이터 프로세싱 모듈(70)에, 이를테면, 유선 리드 또는 무선 연결에 의해, 동작 가능하게 커플링될 수 있다(68).
[0047] 로컬 데이터 프로세싱 모듈(70)은 비-휘발성 메모리(예컨대, 플래시 메모리)와 같은 디지털 메모리뿐만 아니라 프로세서를 포함할 수 있으며, 이들 둘 모두는 데이터의 프로세싱, 캐싱 및 저장을 돕기 위해 활용될 수 있다. 데이터는 a) 센서들(예컨대, 프레임(64)에 동작 가능하게 커플링되거나 그렇지 않으면 사용자(60)에 부착될 수 있음), 이를테면, 이미지 캡처 디바이스들(이를테면, 카메라들), 마이크로폰들, 관성 측정 유닛들, 가속도계들, 컴파스들, GPS 유닛들, 라디오 디바이스들 및/또는 자이로스코프들로부터 캡처되고 그리고/또는 b) 원격 프로세싱 모듈(72) 및/또는 원격 데이터 저장소(74)를 사용하여 포착 및/또는 프로세싱되는 데이터 ― 그러한 프로세싱 또는 리트리벌(retrieval) 후에 가능하게는 디스플레이 디바이스(62)로 전달됨 ― 를 포함한다. 로컬 프로세싱 및 데이터 모듈(70)은 통신 링크들(76, 78)에 의해, 이를테면, 유선 또는 무선 통신 링크들을 통해 원격 프로세싱 모듈(72) 및/또는 원격 데이터 저장소(74)에 각각 동작 가능하게 커플링될 수 있어, 이러한 원격 모듈들(72, 74)은 서로 동작 가능하게 커플링되고, 자원들로서 로컬 프로세싱 및 데이터 모듈(70)에 대해 이용가능하다.
[0048] 일부 실시예들에서, 로컬 데이터 프로세싱 모듈(70)은 데이터 및/또는 이미지 정보를 분석 및 프로세싱하도록 구성된 하나 이상의 프로세서들(예컨대, GPU(graphics processing unit))을 포함할 수 있다. 일부 실시예들에서, 원격 데이터 저장소(74)는, "클라우드" 자원 구성에서 인터넷 또는 다른 네트워킹 구성을 통해 이용 가능할 수 있는 디지털 데이터 저장 설비를 포함할 수 있다. 일부 실시예들에서, 모든 데이터가 저장되고, 모든 계산들이 로컬 데이터 프로세싱 모듈(70)에서 수행되어, 원격 모듈로부터 완전히 자율적인 사용을 허용한다.
[0049] 일부 실시예들에서, 로컬 데이터 프로세싱 모듈(70)은 배터리(82)에 동작 가능하게 커플링된다. 일부 실시예들에서, 배터리(82)는 카운터 배터리들과 같은 제거 가능한 전원이다. 다른 실시예들에서, 배터리(82)는 리튬-이온 배터리이다. 일부 실시예들에서, 배터리(82)는, 사용자(60)가 리튬-이온 배터리를 충전하기 위해 전원에 테더링(tether)될 필요 없이 또는 배터리들을 교체하기 위해 시스템(80)을 분로(shunt)할 필요없이 더 긴 시간 기간들 동안 시스템(80)을 동작시킬 수 있도록, 시스템(80)의 비-동작 시간들 동안 사용자(60)에 의해 충전 가능한 내부 리튬-이온 배터리, 및 제거 가능한 배터리 둘 모두를 포함한다.
[0050] 도 3a는, 사용자(30)가 실세계 환경(32)(이후에 "환경(32)"으로 지칭됨)을 통해 이동할 때, AR 콘텐츠를 렌더링하는 증강 현실("AR") 디스플레이 시스템을 착용한 사용자(30)를 예시한다. 사용자(30)는 AR 디스플레이 시스템을 포지션(34)에 포지셔닝하고, AR 디스플레이 시스템은, 포지션들(34), 이를테면, 맵핑된 특징들 또는 방향성 오디오 입력들에 대한 포즈 관계에 대해 통과 가능한 세계의 주변 정보(예컨대, 실세계에서 객체들에 대한 변화들에 따라 저장 및 업데이트될 수 있는 실세계의 객체들의 디지털 표현)를 기록한다. 포지션(34)은 데이터 입력들(36)로 어그리게이팅되고, 적어도 도 2의 원격 프로세싱 모듈(72)과 같은 통과 가능한 세계 모듈(38)에 의해 프로세싱된다. 통과 가능한 세계 모듈(38)은, AR 콘텐츠(40)가 데이터 입력들(36)로부터 결정된 바와 같이 실세계에서 어디에 그리고 어떻게 배치될 수 있는지, 이를테면, 고정 엘리먼트(42)(예컨대, 테이블) 상에 또는 아직 시야(44) 내에 없는 구조들 내에 또는 실세계의 맵핑된 메시 모델(46)에 대해 배치될 수 있는지를 결정한다. 도시된 바와 같이, 고정 엘리먼트(42)는, 사용자(30)가 고정 엘리먼트(42)를 볼 때마다 고정 엘리먼트(42)에 맵핑할 필요없이, 사용자(30)가 고정 엘리먼트(42) 상의 콘텐츠를 인지할 수 있도록, 통과 가능한 세계 모듈(38)에 저장될 수 있는 실세계 내의 임의의 고정 엘리먼트에 대한 프록시로서의 역할을 한다. 따라서, 고정 엘리먼트(42)는 이전의 모델링 세션으로부터의 맵핑된 메시 모델이거나, 별개의 사용자로부터 결정되지만, 그럼에도 불구하고, 복수의 사용자들에 의한 향후 참조를 위해 통과 가능한 세계 모듈(38)에 저장될 수 있다. 따라서, 통과 가능한 세계 모듈(38)은 이전에 맵핑된 환경으로부터 환경(32)을 인식하고, 사용자(30)의 디바이스가 먼저 환경(32)을 맵핑하지 않고서 AR 콘텐츠를 디스플레이할 수 있어서, 컴퓨테이션 프로세스 및 사이클들을 절약하고, 임의의 렌더링된 AR 콘텐츠의 레이턴시를 회피한다.
[0051] 유사하게, 실세계의 맵핑 메시 모델(46)은 AR 디스플레이 시스템에 의해 생성될 수 있고, AR 콘텐츠(40)와 상호작용하고 이를 디스플레이하기 위한 적합한 표면들 및 메트릭들은, 재-맵핑 또는 모델링할 필요없이 사용자(30) 또는 다른 사용자들에 의한 향후 리트리벌을 위해 통과 가능한 세계 모듈(38)에 맵핑 및 저장될 수 있다. 일부 실시예들에서, 데이터 입력들(36)은, 하나 이상의 고정 엘리먼트들 중 어떠한 고정 엘리먼트(42)가 이용 가능한지, 어떠한 AR 콘텐츠(40)가 마지막으로 고정 엘리먼트(42) 상에 배치되었는지, 그리고 그 동일한 콘텐츠(이러한 AR 콘텐츠는, 사용자가 특정 통과 가능한 세계 모델을 보는 것에 상관없는 "지속성" 콘텐츠임)를 디스플레이할지 여부를 통과 가능한 세계 모듈(38)에 표시하기 위한 입력들, 이를테면, 지오로케이션, 사용자 식별 및 현재 활동과 같은 입력들이다.
[0052] 도 3b는 뷰잉 광학기 어셈블리(48) 및 수반되는 컴포넌트들의 개략도를 예시한다. 일부 실시예들에서, 사용자 눈들(49)로 배향된 2개의 눈 추적 카메라들(50)은 사용자 눈들(49)의 메트릭들, 이를테면, 눈 형상, 눈꺼풀 폐색, 동공 방향 및 사용자 눈들(49)에 대한 번쩍임(glint)을 검출한다. 일부 실시예들에서, 비행 시간 센서와 같은 깊이 센서(51)는 주어진 객체들까지의 거리를 결정하기 위한 릴레이 신호들을 세계로 방출한다. 일부 실시예들에서, 세계 카메라들(52)은 환경(32)을 맵핑하기 위해 주변보다 더 큰 뷰를 기록하고, AR 콘텐츠에 영향을 줄 수 있는 입력들을 검출한다. 카메라(53)는 사용자의 시야 내에서 실세계 이미지들의 특정 타임스탬프를 추가로 캡처할 수 있다. 세계 카메라들(52), 카메라(53) 및 깊이 센서(51) 각각은, 도 3a에 도시된 실세계 환경(32)과 같은 실세계 장면으로부터 데이터를 수집하고 이를 기록하기 위한 개개의 시야들(54, 55 및 56)을 갖는다.
[0053] 관성 측정 유닛들(57)은 뷰잉 광학기 조립체(48)의 움직임 및 배향을 결정할 수 있다. 일부 실시예들에서, 각각의 컴포넌트는 적어도 하나의 다른 컴포넌트에 동작 가능하게 커플링된다. 예컨대, 깊이 센서(51)는, 사용자 눈들(49)이 보고 있는 실제 거리에 대한 측정된 원근조절의 확인으로서 눈 추적 카메라(50)에 동작 가능하게 커플링된다.
[0054] AR 시스템에서, 사용자(30)의 포지션이 변할 때, 렌더링된 이미지는 사용자(30)의 새로운 뷰 영역을 감안하도록 조정될 필요가 있다. 예컨대, 도 2를 참조하면, 사용자(60)가 자신들의 머리를 움직일 때, 디스플레이 디바이스(62) 상에 디스플레이되는 이미지들은 업데이트될 필요가 있다. 그러나, 사용자(60)의 머리가 움직이고, 시스템(80)이 새로운 머리 포즈들에 기반하여 렌더링된 이미지에 대한 새로운 뷰 관점들을 결정할 필요가 있다면, 디스플레이 디바이스(62) 상에 이미지들을 렌더링하는 데 지연이 있을 수 있다.
[0055] 다양한 실시예들에 따라, 디스플레이될 이미지는 시간을 절약하기 위해 재-렌더링될 필요가 없을 수 있다. 오히려, 이미지는 사용자(60)의 새로운 관점(예컨대, 새로운 뷰 영역)과 일치하도록 변환될 수 있다. 이러한 빠른 이미지 재조정/뷰 보정은 시간 와핑으로 지칭될 수 있다. 시간 와핑은, 사용자(60)의 머리 포지션 및 따라서 관점이 변할 때조차 시스템(80)이 더 반응적이고 몰입적인 것처럼 보이게 할 수 있다.
[0056] 시간 와핑은 디스플레이 이미지에 대한 원치 않는 효과들, 이를테면, 테어링(tearing)을 방지하는 데 사용될 수 있다. 이미지 테어링은 디스플레이 디바이스(62)에서의 시각적 아티팩트이며, 여기서 디스플레이 디바이스(62)는 단일 스크린 드로(screen draw)에서 다수의 프레임들로부터의 정보를 보여준다. 디스플레이 디바이스(62)로의 프레임 송신 레이트가 디스플레이 디바이스(62)의 리프레시 레이트와 동기화되지 않을 때, 테어링이 발생할 수 있다.
[0057] 도 4는, 일단 3D 콘텐츠가 렌더링되면, 시간 와핑이 수행되는 방법을 예시한다. 도 4에 예시된 시스템(100)은, 하나 이상의 IMU(inertial measurement unit)들로부터 IMU 데이터(114) 및 이미지 데이터(112)를 수신하는 포즈 추정기(101)를 포함한다. 이어서, 포즈 추정기(101)는 수신된 이미지 데이터(112) 및 IMU 데이터(114)에 기반하여 포즈(122)를 생성하고, 포즈(122)를 3D 콘텐츠 생성기(102)에 제공할 수 있다. 3D 콘텐츠 생성기(102)는 3D 콘텐츠(예컨대, 3D 이미지 데이터)를 생성하고, 렌더링을 위해 3D 콘텐츠를 GPU(graphics processing unit)(104)에 제공할 수 있다. GPU(104)는, 시간 t1(116)에서, 수신된 3D 콘텐츠를 렌더링하고, 렌더링된 이미지(125)를 시간 와핑 모듈(106)에 제공할 수 있다. 시간 와핑 모듈(106)은 시간 t2(117)에서 GPU(104)로부터 렌더링된 이미지(125) 및 포즈 추정기(101)로부터 최신 포즈(124)를 수신할 수 있다. 이어서, 시간 와핑 모듈(106)은 시간 t3(118)에서 최신 포즈(124)를 사용하여 렌더링된 이미지(125)에 대해 시간 와핑을 수행할 수 있다. 변환된 이미지(126)(즉, 시간 와핑이 수행된 이미지)는 디스플레이 디바이스(108)(예컨대, 도 1의 디스플레이 디바이스(62))에 전송된다. 광자들은 디스플레이 디바이스(108)에서 생성되고, 사용자의 눈들(110)을 향해 방출되고, 이로써 시간 t4(120)에서 디스플레이 디바이스(108) 상에 이미지를 디스플레이한다. 도 4에 예시된 시간 와핑들은 디스플레이 디바이스(108) 상에 디스플레이된 이미지 상에 최신 포즈 업데이트 정보(예컨대, 최신 포즈(124))를 제공하는 것을 가능하게 한다. 오래된 프레임(즉, 이전에 디스플레이된 프레임 또는 GPU로부터 수신된 프레임)은 시간 와핑을 위해 보간하는 데 사용될 수 있다. 시간 와핑을 사용하여, 최신 포즈(124)는 디스플레이된 이미지 데이터에 통합될 수 있다.
[0058] 일부 실시예들에서, 시간 와핑은 파라메트릭 와핑, 비-파라메트릭 와핑 또는 비동기 와핑일 수 있다. 파라메트릭 와핑은 이미지의 병진운동, 회전 및 스케일링과 같은 아핀(affine) 동작들을 수반한다. 파라메트릭 와핑에서, 이미지의 픽셀들은 균일한 방식으로 재포지셔닝된다. 따라서, 파라메트릭 와핑이 사용자의 머리의 회전에 대해 장면을 정확하게 업데이트하는 데 사용될 수 있지만, 이미지의 일부 구역들이 다른 구역들과 상이하게 영향을 받을 수 있는 경우, 파라메트릭 와핑은 사용자의 머리의 병진운동을 감안하지 않을 수 있다.
[0059] 비-파라메트릭 와핑은 이미지의 섹션들의 비-파라메트릭 왜곡들(예컨대, 이미지의 부분들의 스트레칭)을 수반한다. 비-파라메트릭 와핑이 이미지의 상이한 구역들에서 이미지의 픽셀들을 상이하게 업데이트할 수 있을지라도, 비-파라메트릭 와핑은 "폐색 영역 채움(disocclusion)"으로 지칭되는 개념으로 인해 사용자의 머리의 병진운동을 부분적으로만 감안할 수 있다. 폐색 영역 채움은, 예컨대, 사용자 포즈의 변화, 시선(line of sight)에서 장애물의 제거 등의 결과로서, 뷰로부터 이전에 숨겨진 객체의 재출현, 또는 보기 위한 객체의 노출을 지칭할 수 있다.
[0060] 비동기 시간 와핑은, 장면 렌더링 및 시간-와핑을 2개의 별개의 비동기 동작들로 분리하는 와핑을 지칭할 수 있다. 비동기 시간 와핑은 GPU 또는 외부 하드웨어 상에서 실행될 수 있다. 비동기 시간 와핑은 디스플레이된 이미지의 프레임 레이트를 렌더링 레이트 위로 증가시킬 수 있다.
[0061] 다양한 실시예들에 따라, 시간 와핑은 사용자의 새로운 머리 포지션(즉, 귀속된 머리 포즈)에 대한 응답으로 수행될 수 있다. 예컨대, 도 4에 예시된 바와 같이, 사용자는 시간 t0(115)에서 자신들의 머리를 움직일 수 있다(예컨대, 사용자가 회전, 병진운동하거나 둘 모두를 행함). 결과적으로, 사용자의 관점이 변할 수 있다. 이것은 사용자가 보는 것의 변화들을 발생시킬 것이다. 따라서, 현실적인 VR 또는 AR 경험을 위해 사용자의 머리 움직임을 감안하기 위해, 렌더링된 이미지가 업데이트될 필요가 있다. 즉, 렌더링된 이미지(125)는, 사용자가 디스플레이 디바이스(108)에 디스플레이된 이미지에서 사용자의 관점에 대해 정확한 공간 포지셔닝 및 배향을 갖고서 가상 콘텐츠를 인식하도록, 새로운 머리 포지션과 정렬(예컨대, 이에 대응)하도록 와핑된다. 이를 위해, 실시예들은, 사용자가 자신들의 머리를 움직이는 시간과 이러한 모션을 통합한 이미지(광자들)가 사용자의 망막에 다다르는(land) 시간 사이의 시간인 모션-광자 레이턴시를 감소시키는 것을 목표로 한다. 시간 와핑이 없다면, 모션-광자 레이턴시는, 사용자가 포즈(122)에서 포착된 모션을 발생시키는 시간과 광자들이 눈들(110)을 향해 방출되는 시간 사이의 시간이다. 시간 와핑의 경우, 모션-광자 레이턴시는, 사용자가 최신 포즈(124)에서 캡처된 모션을 발생시키는 시간과 광자들이 눈들(110)을 향해 방출되는 시간 사이의 시간이다. 모션-광자 레이턴시로 인한 에러들을 감소시키기 위한 시도로, 포즈 추정기는 사용자의 포즈를 예측할 수 있다. 예측 수평 기준선(prediction horizon)으로 또한 알려진, 포즈 추정기가 사용자의 포즈를 예측하는 시간에서, 더 멀어지면, 예측이 더 불확실하다. 본원에 개시된 방식들로 시간 와핑을 구현하지 않는 종래의 시스템들은 전통적으로 적어도 하나의 프레임 지속기간 이상(예컨대, 60Hz에 대해 적어도 16밀리초 이상)의 모션-광자 레이턴시를 갖는다. 실시예들은 약 1-2 밀리초의 모션-광자 레이턴시를 달성한다.
[0062] 본원에 개시된 실시예들은 2개의 비-상호적으로 배타적인 타입들의 시간 와핑: CTW(continuous time warp) 및 SBTW(staggered binocular time warp)에 관한 것이다. 실시예들은, 이미지 소스로서 스캐닝 파이버(scanning fiber) 또는 임의의 다른 스캐닝 이미지 소스(예컨대, MEMS(microelectromechanical systems) 미러)를 사용하여 디스플레이 디바이스(예컨대, 도 1의 디스플레이 디바이스(62))와 함께 사용될 수 있다. 스캐닝 파이버는 광을 단일 모드 광학 파이버를 통해 원격 소스들로부터 스캐닝 파이버로 릴레이한다. 디스플레이 디바이스는 파이버의 애퍼처 자체보다 훨씬 더 큰 이미지들을 스캔하기 위해 작동 파이버 광 케이블을 사용한다. 스캐닝 파이버 접근법은 스캔-인 시작 시간 및 스캔-아웃 시작 시간에 구속되지 않고, (예컨대, 이미지들이 디스플레이 디바이스로 업로딩될 수 있기 전에) 스캔-인 시작 시간과 스캔-아웃 시작 시간 사이에 변환들이 있을 수 있다. 대신에, 이미지가 눈에 의해 슬라이딩됨에 따라, 픽셀 단위로 변환이 수행되고, 픽셀의 x-y 위치 또는 심지어 x-y-z 위치가 조정되는 연속 시간 와핑이 수행될 수 있다.
[0063] 본원에서 논의되는 다양한 실시예들은 도 2에 예시된 시스템(80)을 사용하여 수행될 수 있다. 그러나, 실시예들은 시스템(80)로 제한되지 않고, 본원에서 논의된 시간 와핑 방법들을 수행할 수 있는 임의의 시스템과 관련하여 사용될 수 있다.
관점 조정 및 와핑
[0064] 다양한 실시예들에 따라, AR 시스템(예컨대, 시스템(80))은 2차원(2D) 시-스루(see-through) 디스플레이(예컨대, 디스플레이 디바이스(62))를 사용할 수 있다. 디스플레이 상에 3차원(3D) 객체들을 나타내기 위해, 3D 객체들은 하나 이상의 평면들에 투사될 필요가 있을 수 있다. 디스플레이에서의 결과적인 이미지는 디스플레이 디바이스(62)를 통해 3D 객체를 보는 시스템(80)의 사용자(예컨대, 사용자(60))의 뷰 관점에 의존할 수 있다. 도 5-7은 3D 객체들에 대한 사용자(60)의 움직임 및 사용자(60)가 각각의 포지션에서 보는 것 보여줌으로써 뷰 투사를 예시한다.
[0065] 도 5는 제1 포지션으로부터 사용자의 뷰 영역을 예시한다. 사용자는, 사용자가 제1 포지션(314)에 포지셔닝될 때, "사용자가 보는 것(316)"으로 예시된 제1 3D 객체(304) 및 제2 3D 객체(306)를 본다. 제1 포지션(314)으로부터, 사용자는 제1 3D 객체(304) 전체를 보고, 제2 3D 객체(306)의 일부는 제2 3D 객체(306) 앞에 배치된 제1 3D 객체(304)에 의해 가려지게(obfuscated) 된다.
[0066] 도 6은 제2 포지션으로부터의 사용자의 뷰 영역을 예시한다. 사용자가 도 5의 제1 포지션(314)에 대해 병진운동(예컨대, 옆으로 이동)할 때, 사용자의 관점이 변한다. 따라서, 제2 포지션(320)으로부터 가시적인 제1 3D 객체(304) 및 제2 3D 객체(306)의 피처들은 제1 포지션(314)으로부터 가시적인 제1 3D 객체(304) 및 제2 3D 객체(306)의 피처들과 상이할 수 있다. 도 6에 예시된 예에서, 사용자가 제2 3D 객체(306)로부터 떨어져 그리고 제1 3D 객체(304)를 향해 옆으로 병진운동할 때, 사용자는 제1 포지션(314)으로부터의 뷰와 비교하여 제1 3D 객체(304)가 제2 3D 객체(304)의 더 큰 부분을 가리는 것을 본다. 사용자는, 사용자가 제2 포지션(320)에 포지셔닝될 때 "사용자가 보는 것(318)"에 예시된 제1 3D 객체(304) 및 제2 3D 객체(306)를 본다. 다양한 실시예에 따라, 사용자가 도 6에 예시된 방식으로 옆으로 병진운동할 때, "사용자가 보는 것(318)"은 불균일하게 업데이트된다(즉, 사용자에 더 가까운 객체들(예컨대, 제1 3D 객체(304)는 멀리 떨어진 객체들(예컨대, 제2 3D 객체(306))보다 더 많이 움직이는 것처럼 보인다).
[0067] 도 7은 제3 포지션으로부터의 사용자의 뷰 영역을 예시한다. 사용자가 도 5의 제1 포지션(314)에 대해 회전할 때, 사용자의 관점이 변한다. 따라서, 제3 포지션(324)으로부터 가시적인 제1 3D 객체(304) 및 제2 3D 객체(306)의 피처들은 제1 포지션(314)으로부터 가시적인 제1 3D 객체(304) 및 제2 3D 객체(306)의 피처들과 상이할 수 있다. 도 7에 예시된 예에서, 사용자가 시계방향으로 회전할 때, 제1 3D 객체(304) 및 제2 3D 객체(306)는 제1 포지션(314)으로부터 "사용자가 보는 것(316)"과 비교하여 좌측으로 시프팅한다. 사용자는, 사용자가 제3 포지션(324)에 포지셔닝될 때 "사용자가 보는 것(322)"에 예시된 제1 3D 객체(304) 및 제2 3D 객체(306)를 본다. 다양한 실시예들에 따라, 사용자가 광학 중심(예컨대, 관점의 중심)을 중심으로 회전할 때, 투사된 이미지, 즉, "사용자가 보는 것(322)"은 단지 병진운동한다. 픽셀들의 상대적인 어레인지먼트는 변하지 않는다. 예컨대, 도 5에서 "사용자가 보는 것(316)"의 픽셀의 상대적인 어레인지먼트는 도 7에서 "사용자가 보는 것(322)"과 동일하다.
[0068] 도 5-7은 보여지는 객체들의 렌더링이 어떻게 사용자의 포지션에 의존하는지를 예시한다. 사용자의 움직임에 기반하여 사용자가 보는 것(즉, 렌더링된 뷰)을 수정하는 것은 AR 경험의 품질에 영향을 준다. 무결절(seamless) AR 경험에서, 가상 객체들을 나타내는 픽셀들은 항상 물리적 세계에 공간적으로 일치(register)되는 것처럼 보여야 한다("PStW(pixel-stick-to-world)"로 지칭됨). 예컨대, 가상 커피 잔이 AR 경험에서 실제 테이블 상에 배치될 수 있다면, 사용자가 주변을 둘러볼 때(즉, 관점을 변경할 때), 가상 잔은 테이블 상에 고정된 것처럼 보여야 한다. PStW가 달성되지 않는다면, 사용자가 주변을 둘러볼 때, 가상 잔이 공간에서 표류(drift)하고, 이로써 테이블 상에 있는 가상 잔의 인식을 얼굴의 인식을 파괴할 것이다. 이 예에서, 실제 테이블은 실세계 배향에 대해 정적인 반면에, 사용자의 관점은 사용자의 머리 포즈의 변화를 통해 변한다. 따라서, 시스템(80)은 가상 객체들과 실세계를 일치시키기 위해 (세계 좌표들에 대해) 머리 포즈를 추정하고, 이어서 정확한 뷰 관점으로부터 가상 객체들의 광자들을 드로잉(draw)/제공할 필요가 있을 수 있다.
[0069] 제공된 이미지에 정확한 뷰 포즈의 통합은 PStW 개념에서 중요하다. 이러한 통합은 렌더링 파이프라인을 따라 다른 지점들에서 발생할 수 있다. 전형적으로, PStW 개념은, 포즈 추정치와 제공된 이미지 사이의 시간이 짧을 때, 또는 정해진 예측 수평 기준선에 대한 포즈 예측이 더 정확할 때 더 양호하게 달성될 수 있는 데, 이는 제공된 이미지가 가능한 한 최신이 되도록 할 것이기 때문이다. 즉, 포즈 추정에 기반하여 생성된 이미지가 디스플레이된 시간만큼 포즈 추정이 구식이 되면(outdated), 픽셀은 세계에 고착(stick)되지 않을 것이고, PStW가 달성되지 않을 수 있다.
[0070] 도 5의 제1 포지션(314)에 대응하는 "사용자가 보는 것(316)"의 픽셀 포지션들과 도 6의 제2 포지션(320)(즉, 병진운동된 포지션)에 대응하는 "사용자가 보는 것(318)", 또는 도 7의 제3 포지션(즉, 회전된 포지션)에 대응하는 "사용자가 보는 것(324)"의 픽셀 포지션들 사이의 관계는 이미지 변환 또는 와핑으로 지칭될 수 있다.
시간 와핑
[0071] 시간 와핑은 상이한 관점들(예컨대, 사용자의 머리의 포지션)에 대응하는 2D 이미지들 간의 수학적 변환을 지칭할 수 있다. 사용자의 머리의 포지션이 변할 때, 새로운 이미지를 재-렌더링할 필요없이 새로운 관점과 일치시키도록 디스플레이된 이미지를 변환하기 위해 시간 와핑이 적용될 수 있다. 따라서, 사용자의 머리의 포지션의 변화들은 신속히 감안될 수 있다. 시간 와핑은, 사용자가 자신의 머리를 움직이고 이로써 자신의 관점을 수정할 때, AR 시스템이 더 반응적이고 몰입적으로 보이게 할 수 있다.
[0072] AR 시스템에서, 포즈(예컨대, 제1 포즈)가 사용자의 초기 포지션에 기반하여 추정된 후, 사용자는 움직이고 그리고/또는 포지션을 변경하고, 이로써 사용자가 보는 것을 변경할 수 있고, 새로운 포즈(예컨대, 제2 포즈)는 사용자의 변경된 포지션에 기반하여 추정될 수 있다. 제1 포즈에 기반하여 렌더링된 이미지는 현실적인 VR 또는 AR 경험을 위해 사용자의 움직임 및/또는 포지션의 변화를 감안하기 위해 제2 포즈에 기반하여 업데이트될 필요가 있다. 이러한 변화를 신속히 감안하기 위해, AR 시스템은 새로운 포즈를 생성할 수 있다. 시간 와핑은, 사용자의 움직임 및/또는 포지션의 변화를 감안하는 변환된 이미지를 생성하기 위해 제2 포즈를 사용하여 수행될 수 있다. 변환된 이미지는 디스플레이 디바이스로 전송되고, 사용자에게 디스플레이된다. 위에 설명된 바와 같이, 시간 와핑은 렌더링된 이미지를 변환하고, 이로써, 시간 와핑은 기존의 이미지 데이터에서 작동한다. 따라서, 시간 와핑은 완전히 새로운 객체를 렌더링하는 데 사용되지 않을 수 있다. 예컨대, 렌더링된 이미지가 캔을 보여주고, 사용자가 캔 뒤에 숨겨진 페니(penny)를 보기 위해, 사용자가 자신들의 머리를 충분히 멀리 움직이면, 페니는 시간 와핑을 사용하여 렌더링되지 않을 수 있는 데, 왜냐하면 페니가 렌더링된 이미지의 뷰에서 없기 때문이다. 그러나, 시간 와핑은 새로운 포즈에 기반하여 (예컨대, 사용자의 새로운 시점에 따라) 적절히 캔의 포지션을 렌더링하는 데 사용될 수 있다.
[0073] 시간 와핑의 효과는 (1) 이미지가 디스플레이되기 직전에, 와핑이 발생하는 경우, 새로운 머리 포즈(이로부터 시간 와핑이 계산됨)의 정확성, 즉, 포즈 추정기/센서 융합의 품질; (2) 이미지가 디스플레이되기 일정 시간(예측 수평 기준선) 전에 와핑이 발생하는 경우, 예측 수평 기준선 시간에 따른 포즈 예측의 정확성, 즉, 포즈 예측기의 품질; (3) 예측 수평 기준선 시간의 길이(예컨대, 더 짧을수록 더 좋음)에 의존할 수 있다.
I.시간 와핑 동작들
[0074] 시간 와핑 동작들은 늦은 프레임 시간 와핑 및/또는 비동기 시간 와핑을 포함할 수 있다. 늦은 프레임 시간 와핑은, 렌더링된 이미지(또는 그의 시간-와핑된 버전)를 포함하는 프레임이 디스플레이(예컨대, 디스플레이 디바이스(62))에 제공되기 전에, 프레임 생성 기간에서 가능한 한 늦게 렌더링된 이미지의 와핑을 지칭할 수 있다. 목표는, 사용자의 포즈가 추정될 때와 사용자의 포즈에 대응하는 렌더링된 이미지가 사용자에 의해 보여질 때 사이의 시간(예컨대, 모션/광자/포즈 추정-광자 레이턴시)을 최소화함으로써, 투사 에러(예컨대, 사용자의 시점에 기반하여 가상 세계와 실세계를 정렬하는 데 있어서의 에러)를 최소화하는 것이다. 늦은 프레임 시간 와핑의 경우, 모션-광자 레이턴시(즉, 사용자의 포즈가 추정되는 때와 사용자의 포즈에 대응하는 렌더링된 이미지가 사용자에 의해 보여지는 때 사이의 시간)는 프레임 지속기간 미만일 수 있다. 즉, 늦은 프레임 시간 와핑은 신속히 수행될 수 있고, 이로써 무결절 AR 경험을 제공한다. 늦은 프레임 시간 와핑은 GPU(graphics processing unit) 상에서 실행될 수 있다. 늦은 프레임 시간 와핑은 프레임의 전체 픽셀들을 동시에 디스플레이하는 동시/플래시 패널 디스플레이들에서 잘 작동할 수 있다. 그러나, 늦은 프레임 시간 와핑은, 픽셀들이 렌더링될 때 픽셀마다 프레임을 디스플레이하는 순차적인/스캐닝 디스플레이들에서 잘 작동하지 않을 수 있다. 늦은 프레임 시간 와핑은 파라메트릭 와핑, 비-파라메트릭 와핑 또는 비동기 와핑일 수 있다.
[0075] 도 8은 일 실시예에 따라, 늦은 프레임 시간 와핑을 수행하기 위한 시스템을 예시한다. 도 8에 예시된 바와 같이, 애플리케이션 프로세서/GPU(334)(이후에 GPU(334)로 지칭됨)는, 와핑된 이미지 데이터(예컨대, RGB(Red-Green-Blue) 데이터)(336)를 디스플레이 디바이스(350)에 전송하기 전에, 이미지 데이터에 대해 시간 와핑을 수행할 수 있다. 일부 실시예들에서, 이미지 데이터(336)는 압축된 이미지 데이터일 수 있다. 디스플레이 디바이스는 양안 디스플레이 디바이스를 포함할 수 있다. 이 실시예에서, 디스플레이 디바이스(350)는 좌측 디스플레이(338) 및 우측 디스플레이(340)를 포함할 수 있다. GPU(334)는 이미지 데이터(336)를 디스플레이 디바이스(350)의 좌측 디스플레이(338) 및 우측 디스플레이(340)에 송신할 수 있다. GPU(334)는 깊이마다 순차적인 데이터를 전송하는 능력을 가질 수 있고, 데이터를 2D 이미지로 축약(collapse)하지 않을 수 있다. GPU(334)는, 디스플레이 디바이스(350)(예컨대, LCOS와 같은 근안 디스플레이)로의 송신 전에 이미지 데이터(336)를 와핑하기 위한 시간 와핑 모듈(335)를 포함한다.
[0076] 늦은 프레임 시간 와핑 및 비동기 시간 와핑 둘 모두는 GPU(334) 상에서 실행될 수 있고, 변환 도메인(예컨대, 변환될 이미지의 부분)은 전체 이미지를 포함한다(예컨대, 전체 이미지는 동시에 와핑됨). GPU(334)가 이미지를 와핑한 후, GPU(334)는, 추가의 수정 없이 이미지를 디스플레이 디바이스(350)에 전송한다. 따라서, 늦은 프레임 또는 비동기 시간 와핑은 동시/플래시 디스플레이들(즉, 모든 픽셀들을 한 번에 조명하는 디스플레이들)을 포함하는 디스플레이 디바이스들 상의 애플리케이션들에 적합할 수 있다. 이러한 디스플레이 디바이스들에 대해, 디스플레이 디바이스(350)의 좌측 디스플레이(338) 및 우측 디스플레이(340)가 턴 온되기 전에, GPU(334)에 의해 전체 프레임이 와핑되어야 한다(즉, 와핑이 완료되어야 한다).
II.연속 시간 와핑
[0077] 일부 실시예들에 따라, GPU는 이미지 데이터를 렌더링하고, 렌더링된 이미지 데이터를 외부 컴포넌트(예컨대, FPGA(Field-Programmable Gate Array)와 같은 집적 회로)로 출력할 수 있다. 외부 컴포넌트는 렌더링된 이미지에 대해 시간 와핑을 수행하고, 와핑된 이미지를 디스플레이 디바이스로 출력할 수 있다. 일부 실시예들에서, 시간 와핑은 연속 시간 와핑("CTW")일 수 있다. CTW는, 와핑된 이미지 데이터가 외부 하드웨어로부터 디스플레이 디바이스 - 여기서 와핑된 이미지가 광자들로 변환됨 - 에 송신되기 바로 전까지 외부 하드웨어에서 이미지 데이터를 점진적으로 와핑하는 것을 포함할 수 있다. CTW의 중요한 특징은, 이미지 데이터가 외부 하드웨어로부터 디스플레이 디바이스로 스트리밍되기 때문에, 연속 와핑이 이미지 데이터의 서브-섹션들에 대해 수행될 수 있다는 것이다.
[0078] CTW의 연속/스트리밍 동작은 순차적인/스캐닝 디스플레이들(즉, 시간에 따라 라인들 또는 픽셀들을 출력하는 디스플레이들)을 포함하는 디스플레이 디바이스들 상의 애플리케이션들에 적합할 수 있다. 이러한 디스플레이 디바이스들에 대해, 디스플레이 디바이스의 스트리밍 성질은 CTW의 스트리밍 성질과 협력하여 작동하여, 시간-효율성을 발생시킨다.
[0079] 실시예들은 4개의 예시적인 연속 시간 와핑 방법들: 판독 커서 방향전환, 픽셀 방향전환, 버퍼 리-스미어 및 기록 커서 방향전환을 제공한다.
1.RCRD (Read Cursor Redirection) 방법
[0080] 본원에서 사용된 바와 같이, 디스플레이 디바이스 픽셀은 물리적 디스플레이 디바이스의 디스플레이 엘리먼트/유닛(예컨대, CRT 스크린 상의 인광체 정사각형)을 지칭할 수 있다. 본원에서 사용된 바와 같이, 이미지 픽셀은 컴퓨터-생성 이미지의 디지털 표현의 단위(예컨대, 4-바이트 정수)를 지칭할 수 있다. 본원에서 사용된 바와 같이, 이미지 버퍼는, 이미지 데이터가 한 장소(예컨대, GPU 외부의 하드웨어 모듈 또는 메모리)로부터 다른 장소(예컨대, 디스플레이 디바이스)로 이동되는 동안, 이미지 데이터를 일시적으로 저장하는 데 사용되는 물리적 메모리 저장소의 구역을 지칭한다.
[0081] 다양한 실시예들에 따라, GPU는, 이미지 버퍼 내에서 시간에 따라 전진함으로써 이미지 버퍼를 스캔하는 기록 커서를 사용하여 렌더링된 이미지 데이터(예컨대, 이미지 픽셀)를 이미지 버퍼에 입력할 수 있다. 이미지 버퍼는, 이미지 버퍼 내에서 시간에 따라 전진함으로써 이미지 버퍼를 스캔할 수 있는 판독 커서를 사용하여 이미지 픽셀들을 디스플레이 디바이스에 출력할 수 있다.
[0082] 순차적인/스캐닝 디스플레이들을 포함하는 디스플레이 디바이스에 대해, 디스플레이 디바이스 픽셀들은 규정된 순서로(예컨대, 좌측에서 우측으로, 최상부에서 최하부로) 턴 온될 수 있다. 그러나, 디스플레이 디바이스 픽셀들 상에 디스플레이되는 이미지 픽셀들은 변할 수 있다. 각각의 디스플레이 디바이스 픽셀이 순차적으로 턴 온될 준비가 될 때, 판독 커서는 이미지 버퍼를 통해 전진할 수 있고, 다음에 투사될 이미지 픽셀을 선택(pick)한다. CTW가 없다면, 각각의 디스플레이 디바이스 픽셀은 항상 동일한 이미지 픽셀에 대응할 것이다(예컨대, 어떠한 수정들도 없이, 이미지가 보여진다).
[0083] 판독 커서 방향전환("RCRD")을 구현하는 실시예들에서, 판독 커서는 디폴트 이미지 픽셀과 상이한 이미지 픽셀을 선택하도록 계속해서 방향전환될 수 있다. 이것은 출력 이미지의 와핑을 발생시킨다. 순차적인/스캐닝 디스플레이들을 사용할 때, 출력 이미지는 라인마다 출력될 수 있으며, 여기서 각각의 라인은, 사용자가 인지하는 마지막 출력 이미지가 원하는 방식으로 와핑되도록 개별적으로 와핑될 수 있다. 판독 커서와 이미지 버퍼의 변위(displacement)는 서로에 대해 상대적일 수 있다. 즉, RCRD의 경우, 판독 커서가 방향전환될 때, 이미지 버퍼의 이미지 데이터는 시프팅할 수 있다. 판독 커서를 방향전환하는 것은 출력 이미지를 병진운동시키는 것과 동등할 수 있다.
[0084] 도 9는 일 실시예에 따른 RCRD CTW 방법을 예시한다. 동일한 방향전환 벡터가 모든 디스플레이 디바이스 픽셀들에 대해 사용될 수 있다. 판독 커서는, 디스플레이 디바이스(350)의 대응하는 디스플레이 디바이스 픽셀(804)에서 디스플레이하기 위한 이미지 픽셀(800)을 이미지 버퍼(332)로부터 선택하도록 지향될 수 있다. 이것은 판독 커서의 디폴트 포지션 또는 간단히 디폴트 커서로 지칭될 수 있다. RCRD의 경우, 판독 커서는, 디스플레이 디바이스(350)의 대응하는 디스플레이 디바이스 픽셀(804)에서 디스플레이하기 위한 이미지 버퍼(332)의 이미지 픽셀(802)을 선택하도록 방향전환될 수 있다. 이것은 판독 커서의 방향전환된 포지션 또는 간단히 방향전환된 커서로 지칭될 수 있다. RCRD의 결과로서, 판독 커서는 (도 11과 관련하여 아래에서 추가로 설명되는 바와 같이) 이미지 버퍼(332)의 이미지 픽셀(802)을 선택하고, 디스플레이를 위해 선택된 이미지 픽셀(802)을 디스플레이 디바이스(350)의 디스플레이 디바이스 픽셀(804)에 전송한다. 동일한 방향전환 벡터가 디스플레이 디바이스(350)의 모든 디스플레이 디바이스 픽셀들에 적용될 때, 이미지 버퍼(332)의 이미지 데이터는 2개의 열들(columns)만큼 좌측으로 병진운동된다. 이미지 버퍼(332)의 이미지 픽셀들은 와핑되고, 결과적인 디스플레이된 이미지(330)는 이미지 버퍼(332)의 이미지 데이터의 병진운동된 버전이다.
[0085] 도 10은 일 실시예에 따른, RCRD를 수행하기 위한 시스템을 예시한다. GPU(334)와 디스플레이 디바이스(350) 사이에 외부의(즉, GPU 및 디스플레이 디바이스 외부의) 제어기(342)가 제공된다. GPU(334)는 추가의 프로세싱을 위해 이미지 데이터(336)를 생성하여 외부 제어기(342)에 전송할 수 있다. 외부 제어기(342)는 또한 하나 이상의 IMU(inertial measurement unit)들로부터 IMU 데이터(344)를 수신할 수 있다. 일부 실시예들에서, IMU 데이터(344)는 뷰어 포지션 데이터를 포함할 수 있다. 외부 제어기(342)는 GPU(334)로부터 수신된 이미지 데이터(336)를 압축해제하고, IMU 데이터(344)에 기반하여 압축해제된 이미지 데이터에 연속 시간 와핑을 적용하고, 픽셀 변환 및 데이터 분할을 수행하고, 디스플레이 디바이스(350)에 전송하기 위해 결과적인 데이터를 재-압축할 수 있다. 외부 제어기(342)는 이미지 데이터(346)를 좌측 디스플레이(338)에 전송하고, 이미지 데이터(348)를 우측 디스플레이(340)에 전송할 수 있다. 일부 실시예들에서, 이미지 데이터(346) 및 이미지 데이터(348)는 압축된 와핑된 이미지 데이터일 수 있다.
[0086] 일부 실시예들에서, 좌측 렌더링된 이미지 데이터 및 우측 렌더링된 이미지 데이터 둘 모두는 좌측 디스플레이(338) 및 우측 디스플레이(340) 각각으로 전송될 수 있다. 따라서, 좌측 디스플레이(338) 및 우측 디스플레이(340)는 부가적인 이미지 데이터를 사용하여 폐색 영역 채움과 같은 부가적인 정확한 이미지 렌더링 동작들을 수행할 수 있다. 예컨대, 우측 디스플레이(340)는, 우측 디스플레이(340) 상에 이미지를 렌더링하기 전에 우측 렌더링된 이미지 데이터 이외에 좌측 렌더링된 이미지 데이터를 사용하여 폐색 영역 채움을 수행할 수 있다. 유사하게, 좌측 디스플레이(338)는, 좌측 디스플레이(340) 상에 이미지를 렌더링하기 전에 좌측 렌더링된 이미지 데이터 이외에 우측 렌더링된 이미지 데이터를 사용하여 폐색 영역 채움을 수행할 수 있다.
[0087] 도 11은 RCRD CTW를 수행하는 시스템 아키텍처에서 GPU(334)와 디스플레이 디바이스(350) 사이의 외부 하드웨어 유닛(예컨대, FPGA(field-programmable gate array), DSP(digital signal processor), ASIC(application-specific integrated circuit) 등)으로서 외부 제어기(342)를 예시한다. 외부 제어기(342)의 포즈 추정기/예측기 모듈(354)은 하나 이상의 IMU들(345)로부터 광학 데이터(352) 및 IMU 데이터(344)를 수신한다. 외부 제어기(342)는 GPU(334)로부터 이미지 데이터(336)를 수신하고, 이미지 데이터(336)를 압축해제할 수 있다. 압축해제된 이미지 데이터는 외부 제어기(342)의 (서브)프레임 버퍼(356)에 제공될 수 있다. 판독 커서 방향전환 모듈(396)은, 포즈 추정기/예측기(354)의 출력(387)에 기반하여 GPU(334)의 압축된 이미지 데이터(336)를 변환하기 위해 RCRD 연속 시간 와핑을 수행한다. 생성된 데이터(346, 348)는 시간 와핑된 이미지 데이터이며, 이어서, 이는 뷰어의 눈들을 향해 방출되는 광자들(358)로 변환되도록 디스플레이 디바이스(350)에 전송된다.
i.(서브)프레임 버퍼 크기
[0088] 도 12 및 13을 이제 참조하면, RCRD는 (서브)프레임 버퍼(예컨대, (서브)프레임 버퍼(356))의 크기와 관련하여 논의된다. 일부 실시예들에 따라, GPU(334)는 래스터 이미지(예컨대, 도트 매트릭스(dot matrix) 데이터 구조로서의 이미지)를 생성할 수 있고, 디스플레이 디바이스(350)는 래스터 이미지들을 출력할 수 있다(예컨대, 디스플레이 디바이스(350)는 "래스터 아웃"할 수 있다). 도 12에 예시된 바와 같이, 판독 커서(360)(다음에 투사될 이미지 픽셀을 선택하는 이미지 버퍼를 통해 전진하는 커서)는 RCRD 없이 (서브)프레임 버퍼(356)를 통해 래스터 패턴으로 전진할 수 있다.
[0089] 도 13에 예시된 RCRD의 경우, 이미지 픽셀을 디스플레이하기 직전에 뷰어-포즈의 재-추정은, 디폴트 포지션으로부터 이미지 픽셀을 취하는 것 대신에, 버퍼링된 이미지의 상이한 포지션으로부터 사용자에게 막 보여지게 될 이미지 픽셀을 취하는 것을 통합할 수 있다. 제한된 머리/눈 움직임이 주어지면, 방향전환된 판독-포지션들(즉, 상이한 포지션들)의 궤적은 판독 커서(360) 주변의 제한된(bounded) 영역(예컨대, 원 B)(362) 내의 폐쇄 세트이다. 디스플레이 디바이스(350)가 여전히 이미지를 래스터링하기 때문에, 이러한 궤적은 래스터-전진 모멘텀과 중첩된다. 도 13은, 연속 와핑/포즈 재추정의 경우, 판독 커서 궤적이 래스터 전진에 따른 궤적의 중첩인 것을 보여준다. (서브)프레임 버퍼(356)의 버퍼 높이(364)는, 판독 커서(360)가 (서브)프레임 버퍼(356)의 경계들을 넘어 연장되는 것을 방지하기 위해, 제한된 영역(362)의 직경과 동일하거나 더 클 필요가 있다. 더 큰 (서브)프레임 버퍼들은 부가적인 프로세싱 시간 및 컴퓨팅 능력을 요구할 수 있다.
[0090] 제한된 영역(362)의 직경은 디스플레이 디바이스(350)의 렌더링 레이트, 렌더링 시간에서의 포즈-예측 정확도, 및 사용자 머리 움직임의 최대 속도의 함수이다. 따라서, 더 빠른 렌더링 레이트에 대해, 머리 포즈가 렌더링 시간에서 포즈 가정으로부터 벗어나는 데 경과되는 시간을 더 빠른 렌더링 레이트가 더 적게 하기 때문에, 제한된 영역(362)의 직경이 감소한다. 따라서, 판독 커서에 요구될 수 있는 방향전환은 사소할 수 있다(예컨대, 방향전환된 판독-포지션은 오리지널 판독 커서 포지션에 더 가까울 것이다). 게다가, 렌더링 시간(예컨대, 이미지가 렌더링될 때)에서 더 정확한 포즈-예측을 위해, 요구된 시간-와핑 보정이 더 작아질 것이기 때문에, 제한된 영역(362)의 직경이 감소한다. 따라서, 판독 커서에 요구될 수 있는 방향전환은 사소할 수 있다(예컨대, 방향전환된 판독-포지션은 오리지널 판독 커서 포지션에 더 가까울 것이다). 또한, 더 높은 머리 움직임 속도에 대해, 머리 포즈가 빠른 머리 움직임으로 정해진 시간 인터벌 동안 더 많이 벗어날 수 있기 때문에, 제한된 영역(362)의 직경이 증가한다. 따라서, 판독 커서에 요구될 수 있는 방향전환은 상당할 수 있다(예컨대, 방향전환된 판독-포지션은 오리지널 판독 커서 포지션에서 멀어질 것이다).
ii.판독 커서 대 기록 커서 포지션
[0091] 일부 실시예들에 따라, (서브)프레임 버퍼(356)는 또한 기록 커서를 포함할 수 있다. 판독 커서 방향전환이 없다면, 판독 커서(360)는 기록 커서 바로 뒤를 따를 수 있고, 예컨대, 이들 둘 모두는 (서브)프레임 버퍼(356)를 통해 래스터 전진으로 이동한다. (서브)프레임 버퍼(356)는 하나의 타임스탬프에서 렌더링된 콘텐츠에 대한 제1 구역(예컨대, 새로운 데이터 구역) 및 이전 타임스탬프에서 렌더링된 콘텐츠에 대한 제2 구역(예컨대, 오래된 데이터 구역)을 포함할 수 있다. 도 14는 새로운 데이터 구역(368) 및 오래된 데이터 구역(370)을 포함하는 (서브)프레임 버퍼(356)를 예시한다. RCRD의 경우, (서브)프레임 버퍼(356)로부터 판독하는 판독 커서(360)가 (서브)프레임 버퍼(356)에 기록하는 기록 커서(366) 바로 뒤를 따르면, 방향전환된 판독-포지션의 궤적(예컨대, 도 13의 제한된 영역(362)으로 묘사됨)은, 도 14에 예시된 바와 같이, 판독 커서(360)가 오래된 데이터 구역(370)을 횡단하는 "영역 크로스오버"를 발생시킬 수 있다. 즉, 판독 커서(360)는 오래된 데이터 구역(370)에서 오래된 데이터를 판독할 수 있고, 기록 커서(366)에 의해 (서브)프레임 버퍼(356)에 기록되는 새로운 데이터를 리트리브할 수 없을 수 있다.
[0092] 구역 크로스오버는 이미지 테어링을 발생시킬 수 있다. 예컨대, (서브)프레임 버퍼(356) 내의 이미지 픽셀들이 우측으로 이동하는 직선 수직 라인의 묘사를 포함하고, 판독 커서(360)가 RCRD로 인해 2개의 콘텐츠 렌더링들(예컨대, 새로운 데이터 구역(368)에서의 제1 콘텐츠 렌더링 및 오래된 데이터 구역(370)에서의 제2 콘텐츠 렌더링) 사이에 오락가락(flit)하면, 디스플레이된 라인은 직선이 아닐 것이고, 구역 크로스오버가 발생하는 경우 테어링을 가질 것이다. 도 15에 예시된 바와 같이, 판독 커서(360)의 방향전환된 포지션들의 제한된 영역(362)이 새로운 데이터 구역(368)에 있도록, 판독 커서(360)를 기록 커서(366) 뒤에 센터링함으로써, 이미지 테어링이 방지될 수 있다. 이것은, 제한된 영역(362)의 중심과 오래된 데이터 구역(370)으로부터 새로운 데이터 구역(368)을 분리하는 경계(639) 사이에 버퍼 리드 거리(372)를 설정함으로써 달성될 수 있다. 버퍼 리드 거리(372)는 제한된 영역(362)이 새로운 데이터 구역(368) 내에 완전히 머물도록 강제할 수 있다.
[0093] 판독 커서(360)의 재포지셔닝은 원하는 출력 이미지 픽셀 배향을 달성한다(즉, 콘텐츠 정시성(punctuality)에 관계없이 이미지 픽셀들의 배향은 정확함). 따라서, 기록 커서(366) 뒤에 제한된 영역(362)을 포지셔닝하는 것은 PStW 또는 포즈 추정/예측- 광자 레이턴시에 불리하게 영향을 주지 않는다.
[0094] 반면에, 버퍼 리드 거리(372)는 버퍼 리드(372) 거리에 비례하여 렌더링-광자 레이턴시를 증가시킬 수 있다. 렌더링-광자 레이턴시는 장면 렌더링 시간과 광자 출력 시간 사이의 시간이다. 광자는 완벽한 시간 와핑에 의해 제로 포즈 추정/예측-광자 레이턴시를 가질 수 있지만, 렌더링-광자 레이턴시는 장면 렌더링과 광자 출력 시간 사이의 시간을 감소시킴으로써만 감소될 수 있다. 예컨대, 60 fps(frames per second) 렌더링 레이트에 대해, 디폴트 렌더링-광자 레이턴시는 약 16 밀리초(ms)일 수 있다. 1000 라인 이미지에서 버퍼 리드의 10개의 라인들(예컨대, 버퍼 리드 거리(372))은 0.16ms의 렌더링-광자 레이턴시만을 부가할 수 있다. 일부 실시예들에 따라, 예컨대, 외부 제어부(342)(예컨대, FPGA)가 GPU(334)에 직접 액세스할 때, 어떠한 버퍼 송신 시간도 요구되지 않는다면(예컨대, 어떠한 기록 커서도 없다면), 렌더링-광자 레이턴시 증가가 제거될 수 있고, 이로써 GPU(334)와 외부 제어부(342) 사이의 송신 시간으로 인한 렌더링-광자 레이턴시 증가를 제거한다.
iii.외부 안티 - 에일리어싱 (External Anti- Aliasing )
[0095] 안티-에일리어싱은, 블러링 아티팩트들(blurring artifacts)을 회피하기 위해 시간 와핑 후에 수행되는 뷰-의존 동작이다. CTW의 경우, 안티-에일리어싱은, 광자 생성 직전에, 외부 하드웨어에 의해 수행될 수 있다. GPU(334)(또는 2개의 조정 GPU들)에 직접 액세스하는 외부 제어부(342)(예컨대, FPGA)는, 연속 시간 와핑 후에 그리고 디스플레이될 광자 생성 전에 외부 안티-에일리어싱을 수행하는 데 사용될 수 있다.
2.버퍼 리-스미어 방법
[0096] RCRD CTW는, 픽셀 깊이(또는 뷰어까지의 거리)에 의존하여, 이미지 픽셀을 불균일하게 시프팅하는 것을 요구하는, 사용자의 머리의 병진운동을 감안하지 않을 수 있다. 상이한 CTW 방법, 즉, 버퍼 리-스미어 방법은, 뷰어가 병진운동할 때조차 이미지들을 렌더링하는 데 사용될 수 있다. 버퍼 리-스미어는, 판독 커서가 디스플레이될 이미지 픽셀을 추출하기 전에, 버퍼링된 이미지 픽셀들을 업데이트함으로써 최신 포즈 추정/예측을 통합하는 개념이다. 상이한 이미지 픽셀들이 상이한 양들만큼 시프팅될 수 있기 때문에, 버퍼 리-스미어는 사용자 머리의 병진운동을 감안할 수 있다. 도 16은 일 실시예에 따른 버퍼 리-스미어 CTW 방법을 예시한다. 이미지 버퍼(374)에 대해 수행된 최신 포즈를 사용한 버퍼 리-스미어는 수정된 이미지 버퍼(376)를 초래한다. 수정된 이미지 버퍼(376)로부터의 이미지 픽셀들은 디스플레이 디바이스(350)의 대응하는 디스플레이 디바이스 픽셀에 디스플레이된다.
[0097] 도 17은 일 실시예에 따른, 버퍼 리-스미어 CTW를 위한 시스템 아키텍처를 예시한다. 외부 제어기(342)는 GPU(334)와 디스플레이 디바이스(350) 사이에 제공된다. 외부 제어기(342)의 포즈 추정기/예측기 모듈(354)은 (하나 이상의 IMU들(345)로부터) IMU 데이터(344) 및 광학 데이터(352)를 수신한다. 외부 제어기(342)는 GPU(334)로부터 압축된 이미지 데이터(336)를 수신하고, 이미지 데이터(336)를 압축해제한다. 압축해제된 이미지 데이터는 외부 제어기(342)의 (서브)프레임 버퍼(356)에 제공될 수 있다. 외부 버퍼 프로세서(378)는, 픽셀이 뷰어의 눈을 향해 방출될 광자들(358)로 변환되도록 디스플레이 디바이스(350)에 전송되기 전에, 포즈 추정기/예측기(354)의 출력(387)에 기반하여 GPU(334)로부터 수신된 압축된 이미지 데이터(336)에 대해 버퍼 리-스미어를 달성한다.
[0098] 다양한 실시예들에 따라, 버퍼 리-스미어는, 새로운 포즈가, 순차적인 디스플레이들에 대해 각각의 픽셀에 대한 것일 수 있는 디스플레이되는 이미지에 통합될 때마다 발생할 수 있다. (서브)프레임 버퍼(356)의 부분들만이 리-스미어링될지라도, 이것은 계산적으로 값 비싼 동작이다.
3.픽셀 방향전환 방법
[0099] 또 CTW 방법은, 판독 커서 방향전환 방법의 역동작인 픽셀 방향전환 방법일 수 있다. 픽셀 방향전환 방법에 따라, 디스플레이 디바이스(350)가 페칭(fetch)할 적절한 이미지 픽셀을 결정하는 것 대신에, 외부 제어기는, 정해진 이미지 픽셀에 대해 어떠한 디스플레이 디바이스 픽셀이 활성화되는지를 결정한다. 다시 말해서, 외부 제어기는 어떠한 디스플레이 디바이스 픽셀에서 이미지 픽셀이 디스플레이될 필요가 있는지를 결정한다. 따라서, 픽셀 방향전환에서, 각각의 이미지 픽셀은 독립적으로 재위치될 수 있다. 도 18은, 픽셀 방향전환이 사용자의 머리 회전 및/또는 (부분적으로) 병진운동을 물론 감안할 수 있는 와핑을 발생시킨다는 것을 예시한다.
[0100] 도 18에 예시된 바와 같이, 이미지 버퍼(380)의 제1 이미지 픽셀(391)은 원래 디스플레이 디바이스(350)의 제1 디스플레이 디바이스 픽셀(393)에서 디스플레이되도록 예정될 수 있다. 즉, 제1 디스플레이 디바이스 픽셀(393)은 제1 이미지 픽셀(391)에 할당될 수 있다. 그러나, 픽셀 방향전환 방법은, 제1 이미지 픽셀(391)이 제2 디스플레이 디바이스 픽셀(395)에서 디스플레이되어야 한다고 결정할 수 있고, 외부 제어기가 제1 이미지 픽셀(391)을 제2 디스플레이 디바이스 픽셀(395)로 전송할 수 있다. 유사하게, 이미지 버퍼(380)의 제2 이미지 픽셀(394)은 원래 디스플레이 디바이스(350)의 제3 디스플레이 디바이스 픽셀(397)에서 디스플레이되도록 예정될 수 있다. 즉, 제2 이미지 픽셀(394)은 제3 디스플레이 디바이스 픽셀(397)에 할당될 수 있다. 그러나, 픽셀 방향전환 방법은, 제2 이미지 픽셀(394)이 제4 디스플레이 디바이스 픽셀(399)에서 디스플레이되어야 한다고 결정할 수 있고, 외부 제어기는 제2 이미지 픽셀(394)을 제4 디스플레이 디바이스 픽셀(399)로 전송할 수 있다. 이미지 버퍼(380)에 대해 수행된 픽셀 방향전환은 결과적인 디스플레이 이미지(382)가 디스플레이 디바이스(350) 상에 디스플레이되게 한다. 픽셀 방향전환은, 임의의 순서로 임의의 픽셀들을 선택적으로 턴 온할 수 있는 특별한 종류의 디스플레이 디바이스(350)를 요구할 수 있다. 특별한 타입의 OLED 또는 유사한 디스플레이 디바이스가 디스플레이 디바이스(350)로서 사용될 수 있다. 픽셀들은 먼저 제2 이미지 버퍼로 방향전환될 수 있고, 이어서 제2 버퍼는 디스플레이 디바이스(350)에 전송될 수 있다.
[0101] 도 19는 일 실시예에 따른, 외부 하드웨어 픽셀 방향전환 방법을 위한 시스템 아키텍처를 예시한다. 외부 제어기(342)는 GPU(334)와 디스플레이 디바이스(350) 사이에 제공된다. 외부 제어기(342)의 포즈 추정기/예측기 모듈(354)은 (하나 이상의 IMU들(345)로부터) IMU 데이터(344) 및 광학 데이터(352)를 수신한다. 외부 제어기(342)는 GPU(334)로부터 이미지 데이터(336)를 수신하고, 이미지 데이터(336)를 압축해제할 수 있다. 압축해제된 이미지 데이터는 외부 제어기(342)의 (서브)프레임 버퍼(356)에 제공될 수 있다. 포즈 추정기/예측기(354)의 출력(387) 및 (서브)프레임 버퍼(356)의 출력(389)은, 뷰어의 눈들을 향해 방출되는 광자들(358)로 변환되도록 디스플레이 디바이스(350)에 제공된다.
4.기록 커서 방향전환 방법
[0102] 또 다른 CTW 방법, 즉, WCRD(write cursor redirection) 방법은, 이미지 데이터가 (서브)프레임 버퍼에 기록되는 방식을 변경한다. 도 20은 사용자의 머리 회전 및 (부분적으로) 병진운동을 물론 감안할 수 있는 WCRD 방법을 예시한다. 각각의 픽셀은 (예컨대, 포워드 맵핑/분산 동작을 사용하여) 독립적으로 재위치될 수 있다. 예컨대, GPU(334)의 이미지 버퍼(333)의 제1 이미지 픽셀(401)은 원래 외부 제어기(342)(예컨대, FPGA)의 (서브)프레임 버퍼(356)의 제1 이미지 픽셀(403)로 예정될 수 있다. 그러나, 포워드 맵핑의 경우, 제1 이미지 픽셀(401)은 (서브)프레임 버퍼(356)의 제2 이미지 픽셀(404)로 지향될 수 있다. 유사하게, 이미지 버퍼(333)의 제2 이미지 픽셀(402)은 원래 (서브)프레임 버퍼(356)의 제3 이미지 픽셀(405)로 예정될 수 있다. 그러나, 포워드 맵핑의 경우, 제2 이미지 픽셀(402)은 (서브)프레임 버퍼(356)의 제4 이미지 픽셀(406)로 지향될 수 있다. 따라서, 이미지는 GPU(334)의 프레임 버퍼(333)로부터 외부 제어기(342)(예컨대, FPGA)의 (서브)프레임 버퍼(356)로의 데이터 송신 동안 와핑될 수 있다. 즉, 이미지가 (서브)프레임 버퍼(356)에 도달하기 전에, 이미지에 대해 CTW가 수행된다.
[0103] 도 21은 일 실시예에 따른, 외부 하드웨어 WCRD CTW를 위한 시스템 아키텍처를 예시한다. 외부 제어기(342)는 GPU(334)와 디스플레이 디바이스(350) 사이에 제공된다. 외부 제어기(342)의 포즈 추정기/예측기 모듈(354)은 (하나 이상의 IMU들(345)로부터) IMU 데이터(344) 및 광학 데이터(352)를 수신한다. GPU(334)(즉, GPU(334)의 프레임 버퍼(333))에 의해 송신된 이미지 데이터(336) 및 포즈 추정기/예측기(354)의 출력(387)은 외부 제어기(342)의 기록 커서 방향전환 모듈(386)에서 수신된다. 각각의 인입 이미지 데이터 픽셀에 대해, 이미지 픽셀은 현재 포즈 추정/예측 및 그 이미지 픽셀의 깊이에 기반하여 (서브)프레임 버퍼(356) 내의 포즈-일관적인 위치로 방향전환되어 기록된다. (서브)프레임 버퍼(356)의 출력(346, 348)은 시간 와핑된 이미지 데이터이고, 이어서 이는 뷰어의 눈들을 향해 방출되는 광자들(358)로 변환되도록 디스플레이 디바이스(350)로 전송된다.
[0104] 다양한 실시예들에 따라, 이미지 픽셀이 기록되어야 하는 경우, 외부 제어기(342)가 프로세싱할 필요가 있기 때문에, 기록 커서 방향전환 모듈(386)은 1-픽셀 버퍼일 수 있다.
[0105] 도 22는, 기록 커서(366)가 기록 포지션들의 궤적을 갖는 WCRD 방법을 예시하고, 궤적은 (서브)프레임 버퍼(356)를 통해 전진하는 제한된 영역(예컨대, 원 B(388)) 내의 폐쇄 세트이다. (서브)프레임 버퍼(356)의 버퍼 높이(392)는 제한된 영역(388)의 직경과 동일하거나 더 클 필요가 있다. WCRD 방법은 제한된 영역(388)의 중심과 판독 커서(360) 사이의 버퍼 리드 거리(390)를 요구할 수 있다. 다양한 실시예들에 따라, 버퍼 리드 거리(390)는 디스플레이 디바이스의 프레임 레이트, 이미지의 해상도 및 머리 모션의 예상 속도 중 적어도 하나 이상의 함수일 수 있다.
[0106] 일부 실시예들에 따라, WCRD 방법은 일정 포즈 추정/예측-광자 레이턴시를 도입할 수 있는 데, 왜냐하면 광자들이 생성되기 특정 양의 시간(버퍼 리드 거리에 비례함) 전에, 포즈 추정/예측이 통합될 수 있기 때문이다. 예컨대, 디스플레이 클록-아웃 레이트가 60fps인 경우, 1000 라인 이미지의 10 라인 버퍼링은 0.16ms의 포즈 추정/예측-광자 레이턴시를 도입할 수 있다.
5.기록 /판독 커서 방향전환 방법
[0107] 본원에서 논의되는 CTW 방법들은 상호 배타적이지 않을 수 있다. RCRD 방법으로 WCRD 방법을 보충함으로써, 뷰어의 회전 및 병진운동이 감안될 수 있다. 도 23은, WRCRD(write-read cursor redirection) 방법의 경우, 기록 및 판독 커서 포지션들 둘 모두가 제한된 영역들(388 및 362) 내에 각각 있지만, 판독 커서(360)의 제한된 영역(362)이 기록 커서(366)의 제한된 영역(388)과 비교하여 훨씬 더 작은 것을 예시한다. 최소 버퍼 높이(392)는, 새로운 데이터 구역(368)으로부터 오래된 데이터 구역(370)으로의 크로스오버를 발생시키지 않고서, 제한된 영역(362) 및 제한된 영역(388) 둘 모두를 수용하도록 결정될 수 있다. 일부 실시예들에서, WRCRD 방법에 대한 최소 버퍼 높이(392)는 RCRD 방법에 대한 버퍼 높이(364)의 2배만큼 클 수 있다. 또한, 버퍼 리드 거리(410)는, 새로운 데이터 구역(368)으로부터 오래된 데이터 구역(370)으로의 크로스오버를 발생시키지 않고서, 제한된 영역(362) 및 제한된 영역(388) 둘 모두를 수용하도록 결정될 수 있다. 일부 실시예들에서, WRCRD 방법에 대한 버퍼 리드 거리(410)는 WCRD에 대한 버퍼 리드 거리(390)(예컨대, 10개의 라인들) 또는 RCRD에 대한 버퍼 리드 거리(372)(예컨대, 10개의 라인들)의 2배(예컨대, 20개의 라인들)만큼 클 수 있다.
[0108] 일부 실시예들에 따라, 제한된 영역(388)의 크기는, 렌더링에서 마지막 포즈 통합 이래로 얼마나 많은 포즈 조정이 요구되는지에 비례한다. 제한된 영역(362)의 크기는 또한, (서브)프레임 버퍼로의 픽셀 데이터 기록에서 마지막 포즈 통합 이래로 얼마나 많은 포즈 조정이 요구되는지에 비례한다. 1000 라인 이미지에서, 기록 커서까지 판독 커서의 버퍼 거리가 10개의 라인들이면, 이미지 데이터가 기록 커서(366)에 의해 픽셀에 기록될 때와, 이미지 데이터가 기록 커서(366)에 의해 픽셀로부터 판독될 때 사이의 경과된 시간은 판독 커서(360)의 포즈 추정과 렌더링 시간에서의 포즈 추정 사이의 경과된 시간의 대략 1%이다. 다시 말해서, 판독 커서(360)가 기록 커서(366)에 더 가까울 때, 판독 커서(360)는 더 최근의 데이터(예컨대, 기록 커서(366)에 의해 더 최근에 기록된 데이터)를 판독할 것이며, 이로써 이미지 데이터가 기록될 때와 이미지 데이터가 판독될 때 사이의 시간을 감소시킨다. 따라서, 버퍼 크기 및 리드 거리를 2배가 될 필요가 없고, 단지 몇 퍼센트 만 증가될 필요가 있을 수 있다.
[0109] WRCRD 방법에서 RCRD는 사용자의 머리의 병진운동을 감안하지 않을 수 있다. 그러나, 약간 더 일찍 발생하는 WRCRD 방법의 WCRD는 사용자 머리의 병진운동을 감안한다. 따라서, WRCRD는 매우 낮은(예컨대, 거의(virtually) 0) 레이턴시 파라메트릭 와핑 및 매우 낮은 레이턴시 비-파라메트릭 와핑(예컨대, 60fps에서의 디스플레이 클록 아웃에 대해 약 0.16ms, 및 1000 라인 이미지의 10 라인 버퍼링)을 달성할 수 있다.
[0110] 일 실시예에 따라, 외부 하드웨어 WRCRD CTW를 위한 시스템 아키텍처가 도 24에 예시된다. 외부 제어기(342)는 GPU(334)와 디스플레이 디바이스(350) 사이에 제공된다. 외부 제어기(342)의 포즈 추정기/예측기 모듈(354)은 (하나 이상의 IMU들(345)로부터) IMU 데이터(344) 및 광학 데이터(352)를 수신한다. GPU(334)(즉, GPU(334)의 프레임 버퍼(333))에 의해 송신된 이미지 데이터(336) 및 포즈 추정기/예측기 모듈(354)의 출력(387)은 기록 커서 방향전환 모듈(386)에서 수신된다. 인입 이미지 데이터에 대해, 각각의 이미지 픽셀은, 현재 포즈 추정/예측 및 그 이미지 픽셀의 깊이에 기반하여 (서브)프레임 버퍼(356) 내의 포즈-일관된 위치로 방향전환되어 기록된다. 또한, 판독 커서 방향전환 모듈(396)은, 포즈 추정기/예측기(354)의 출력(387)에 기반하여, 기록 커서 방향전환 모듈(386)로부터 수신된 이미지 데이터를 변환하기 위해 RCRD CTW를 수행한다. 생성된 데이터(346, 348)는 시간 와핑된 이미지 데이터이며, 이어서, 이는 뷰어의 눈들을 향해 방출되는 광자들(358)로 변환되도록 디스플레이 디바이스(350)에 전송된다. 다양한 실시예들에 따라, WRCRD 방법은 동일한 외부 제어기(342) 상에서 구현되고, 단일 (서브)프레임 버퍼(356) 상에서 동작하고, 또한 스트리밍된 데이터에 대해 동작할 수 있다. 기록 커서 방향전환 모듈(386) 및/또는 판독 커서 방향전환 모듈(396)은 상이한 디스플레이 옵션들에 대해 독립적으로 턴 오프될 수 있다. 따라서, WRCRD 아키텍처는 요구에 따라(on demand) WCRD 또는 RCRD 아키텍처로서 기능할 수 있다.
III.양안 시간 와핑
[0111] 본원에서 사용된 바와 같이, 양안 시간 와핑은 좌측 눈에 대한 좌측 디스플레이 유닛 및 우측 눈에 대한 우측 디스플레이 유닛을 포함하는 디스플레이 디바이스와 관련하여 사용되는 늦은 프레임 시간 와핑을 지칭하며, 여기서 늦은 프레임 시간 와핑은 좌측 디스플레이 유닛 및 우측 디스플레이 유닛에 대해 개별적으로 수행된다. 도 25는, 일단 3D 콘텐츠가 시간 t1(3003)에서 GPU(3002)에서 렌더링되고, 최신 포즈 입력(3004)이 시간 t2(3007) 이전에 포즈 추정기(3006)로부터 수신되고, 시간 t2(3007)에서 동시에 또는 대략 동시에 좌측 프레임(3008) 및 우측 프레임(3010) 둘 모두에 대해 시간 와핑이 수행되는 양안 시간 와핑을 예시한다. 예컨대, 시간 와핑들 둘 모두가 동일한 외부 제어기에 의해 수행되는 실시예들에서, 이어서 좌측 프레임에 대한 시간 와핑 및 우측 프레임에 대한 시간 와핑은 순차적으로(예컨대, 대략 동시에) 수행될 수 있다.
[0112] 변환된 이미지들(3014 및 3016)(즉, 시간 와핑이 수행된 이미지)은 디스플레이 디바이스(350)의 좌측 디스플레이 유닛(3018) 및 우측 디스플레이 유닛(3020)에 각각 전송된다. 광자들은 좌측 디스플레이 유닛(3018) 및 우측 디스플레이 유닛(3020)에서 생성되고, 뷰어의 개개의 눈들을 향해 방출되고, 이로써 좌측 디스플레이 유닛(3018) 및 우측 디스플레이 유닛(3020) 상에 동시에(예컨대, 시간 t3(3015)) 이미지를 디스플레이한다. 즉, 양안 시간 와핑의 일 실시예에서, 동일한 최신 포즈(3004)는 좌측 디스플레이 유닛(3018) 및 우측 디스플레이 유닛(3020) 둘 모두에 대해 동일한 렌더링된 프레임에 대해 시간 와핑을 수행하는 데 사용된다.
[0113] 또 다른 실시예에서, 스태거링된 양안 시간 와핑에서, 좌측 디스플레이 유닛(3018) 및 우측 디스플레이 유닛(3020)에 대해 상이한 최신 포즈들이 시간 와핑을 수행하는 데 사용될 수 있다. 스태거링된 시간 와핑은, 도 26 내지 29에 예시된 바와 같이, 다양한 방식들로 수행될 수 있다. 도 26 내지 29에 예시된 스태거링된 양안 시간 와핑들은 디스플레이 디바이스(350) 상에 디스플레이된 이미지에 대한 최신 포즈 업데이트 정보를 제공하는 것을 가능하게 한다. 오래된 프레임(즉, 이전에 디스플레이된 프레임 또는 GPU로부터 수신된 프레임)은 시간 와핑을 위해 보간하는 데 사용될 수 있다. 스태거링된 양안 시간 와핑의 경우, 최신 포즈는 디스플레이된 이미지에 통합되고, 모션-광자 레이턴시를 감소시킬 수 있다. 즉, 눈들 중 하나는, 이미지 및 와핑 둘 모두가 "더 오래된" 최신 포즈를 사용하여 동시에 업데이트되는 것보다는, 다른 것보다는 와핑에 통합된 나중 포즈를 갖는 이미지를 볼 수 있다.
[0114] 도 26은 일 실시예에 따른 또 다른 스태거링된 양안 시간 와핑을 예시한다. 동일한 GPU(3070)는, 좌측 디스플레이 유닛(3018) 및 우측 디스플레이 유닛(3020)에 의해 각각 사용되는 좌측 및 우측 렌더링된 관점들 둘 모두를 시간 t1(3071)에서 생성하는 데 사용된다. 제1 시간 와핑은, 포즈 추정기(3006)로부터 수신된 제1 최신 포즈(3074)를 사용하여 시간 t2(3073)에서 렌더링된 좌측 프레임에 대해 시간 와핑 좌측 프레임 모듈(3072)에 의해 수행된다. 시간 와핑 좌측 프레임 모듈(3072)의 출력은 좌측 디스플레이 유닛(3018)에 송신된다. 좌측 디스플레이 유닛(3018)은 수신된 데이터를 광자들로 변환하고, 뷰어의 좌측 눈을 향해 광자들을 방출하고, 이로써 시간 t4(3079)에서 좌측 디스플레이 유닛(3018) 상에 이미지를 디스플레이한다.
[0115] 제2 시간 와핑은, 포즈 추정기(3006)로부터 수신된 제2 최신 포즈(3080)를 사용하여 시간 t3(3077)(예컨대, 제1 시간 와핑이 수행되는 시간 t2(3073)보다 늦은 시간에)에서 렌더링된 우측 프레임에 대해 시간 와핑 우측 프레임 모듈(3078)에 의해 수행된다. 시간 와핑 우측 프레임 모듈(3078)의 출력은 우측 디스플레이 유닛(3020)으로 송신된다. 우측 디스플레이 유닛(3020)은 수신된 데이터를 광자들로 변환하고, 뷰어의 우측 눈을 향해 광자들을 방출하고, 이로써 시간 t5(3081)에서 우측 디스플레이 유닛(3020) 상에 이미지를 디스플레이한다. 우측 디스플레이 유닛(3020)은, 좌측 디스플레이 유닛(3018)이 이미지를 디스플레이하는 것보다 늦은 시간에 이미지를 디스플레이한다.
[0116] 도 27은 일 실시예에 따른 또 다른 타입의 스태거링된 양안 시간 와핑을 예시한다. 동일한 GPU(3050)는 좌측 디스플레이 유닛(3018) 및 우측 디스플레이 유닛(3020) 둘 모두에 대한 렌더링된 프레임들을 생성하는 데 사용된다. 좌측 프레임 및 우측 프레임은 상이한 시간들에 렌더링된다(즉, 좌측 프레임 및 우측 프레임은 시간상으로 스태거링되어 렌더링된다). 예시된 바와 같이, 좌측 프레임은 시간 t1(3051)에서 렌더링될 수 있고, 우측 프레임은 시간 t1(3051)보다 늦은 시간 t2(3052)에서 렌더링될 수 있다. 제1 시간 와핑은, 시간 t3(3053) 전에 포즈 추정기(3006)로부터 수신된 제1 최신 포즈(3054)를 사용하여 시간 t3(3053)에서 렌더링된 좌측 프레임에 대해 시간 와핑 좌측 프레임 모듈(3058)에 의해 수행된다. 시간 와핑 좌측 프레임 모듈(3058)의 출력은 좌측 디스플레이 유닛(3018)에 송신된다. 좌측 디스플레이 유닛(3018)은 수신된 데이터를 광자들로 변환하고, 뷰어의 좌측 눈을 향해 광자들을 방출하고, 이로써 시간 t5(3061)에서 좌측 디스플레이 유닛(3018) 상에 이미지를 디스플레이한다.
[0117] 제2 시간 와핑은, 시간 t4(3059) 전에 포즈 추정기(3006)로부터 수신된 제2 최신 포즈(3062)를 사용하여 시간 t4(3059)에서(예컨대, 제1 시간 와핑이 수행되는 시간 t3(3053)보다 늦은 시간에서) 렌더링된 우측 프레임에 대해 시간 와핑 우측 프레임 모듈(3060)에 의해 수행된다. 시간 와핑 우측 프레임 모듈(3060)의 출력은 우측 디스플레이 유닛(3020)에 송신된다. 우측 디스플레이 유닛(3020)은 수신된 데이터를 광자들로 변환하고, 뷰어의 우측 눈을 향해 광자들을 방출하고, 이로써 시간 t6(3063)에서 우측 디스플레이 유닛(3020) 상에 이미지를 디스플레이한다. 우측 디스플레이 유닛(3020)은, 좌측 디스플레이 유닛(3018)이 이미지를 디스플레이하는 것보다 늦은 시간에 이미지를 디스플레이한다.
[0118] 도 28은 일 실시예에 따른 스태거링된 양안 시간 와핑을 예시한다. 도 28에 예시된 실시예에 따라, 2개의 별개의 GPU들(3022 및 3024)은 좌측 디스플레이 유닛(3018) 및 우측 디스플레이 유닛(3020)에 대한 렌더링된 뷰들을 생성하는 데 사용될 수 있다. 제1 GPU(3022)는 시간 t1(3025)에서 좌측 뷰를 렌더링할 수 있다. 제2 GPU(3024)는 시간 t1(3025)보다 늦은 시간 t2(3026)에서 우측 뷰를 렌더링할 수 있다. 제1 시간 와핑은, 시간 t3(3027) 전에 포즈 추정기(3006)로부터 수신된 제1 최신 포즈(3004)를 사용하여 시간 t3(3027)에서 렌더링된 좌측 뷰에 대해 시간 와핑 좌측 프레임 모듈(3030)에 의해 수행된다. 시간 와핑 좌측 프레임 모듈(3030)의 출력은 좌측 디스플레이 유닛(3018)에 송신된다. 좌측 디스플레이 유닛(3018)은 수신된 데이터를 광자들로 변환하고, 광자들을 뷰어의 좌측 눈을 향해 방출한다. 좌측 디스플레이 유닛(3018)은 시간 t5(3033)에서 이미지를 디스플레이한다.
[0119] 제2 시간 와핑은, 시간 t4(3031)(예컨대, 제1 최신 포즈(3004)가 시간 와핑 좌측 프레임 모듈(3030)에 의해 획득될 때보다 늦은 시간) 전에 포즈 추정기(3006)로부터 수신된 제2 최신 포즈(3034)를 사용하여 렌더링된 우측 뷰에 대해, 시간 t4(3031)(예컨대, 제1 시간 와핑이 수행될 때보다 늦은 시간)에서, 시간 와핑 우측 프레임 모듈(3032)에 의해 수행된다. 시간 와핑 우측 프레임 모듈(3032)의 출력은 우측 디스플레이 유닛(3020)으로 송신된다. 우측 디스플레이 유닛(3020)은 수신된 데이터를 광자들로 변환하고, 광자들을 뷰어의 우측 눈을 향해 방출한다. 우측 디스플레이 유닛(3020)은 시간 t6(3035)(즉, 좌측 디스플레이 유닛(3018)이 시간 t5(3033)에서 이미지를 디스플레이할 때보다 늦은 시간)에서 이미지를 디스플레이한다. 우측 디스플레이 유닛(3020) 상에 디스플레이된 이미지는 더 최신 것일 수 있는 데, 왜냐하면 이것이 더 최근 포즈(즉, 제2 최신 포즈(3034))를 감안하여 생성되었기 때문이다.
[0120] 도 29는 일 실시예에 따른 다른 타입의 양안 시간 와핑을 예시한다. 동일한 GPU(3036)는 좌측 디스플레이 유닛(3018) 및 우측 디스플레이 유닛(3020) 둘 모두에 대한 렌더링된 뷰를 생성하는 데 사용될 수 있다. 도 29에 예시된 바와 같이, GPU(3036)는 시간 t1(3037)에서 좌측 프레임의 렌더링된 뷰를 생성할 수 있다. 좌측 프레임의 시간 와핑된 이미지는 시간 t3(3041)에서 생성될 수 있다. 좌측 디스플레이 유닛(3018)의 디스플레이 업데이트 레이트는, 좌측 프레임의 시간 와핑된 이미지가 생성된 시간(예컨대, 좌측 프레임의 시간 와핑된 이미지가 좌측 디스플레이 유닛(3018) 상에 디스플레이된 시간) 후에, GPU(3036)에 의해 제2 렌더링(즉, 우측 디스플레이 유닛(3020)에 대한 렌더링)이 수행될 수 있을 만큼 충분히 느릴 수 있다.
[0121] 제1 시간 와핑은, IMU로부터 수신된 제1 최신 포즈(3039)를 사용하여 시간 t2(3038)에서 렌더링된 좌측 프레임에 대해 시간 와핑 좌측 프레임 모듈(3040)에 의해 수행된다. 시간 와핑 좌측 프레임 모듈(3040)의 출력은 좌측 디스플레이 유닛(3018)에 송신된다. 좌측 디스플레이 유닛(3018)은 수신된 데이터를 광자들로 변환하고, 뷰어의 좌측 눈을 향해 광자들을 방출하고, 이로써 시간 t3(3041)에서 좌측 디스플레이 유닛(3018) 상에 이미지를 디스플레이한다. 이미지가 좌측 디스플레이 유닛(3018) 상에 디스플레이된 후, GPU(3036)는 시간 t4(3042)에서 획득된 데이터(예컨대, 우측 눈에 대한 포즈 추정을 생성하기 위해 IMU들 및 이미지들로부터 수신된 데이터, 및 포즈 추정으로부터 생성된 3D 콘텐츠)를 사용하여 우측 프레임을 렌더링할 수 있다. 제2 시간 와핑은 IMU로부터 수신된 제2 최신 포즈(3044)를 사용하여 시간 t5(3043)(예컨대, 시간 와핑된 이미지가 시간 t3(3041)에서 좌측 디스플레이 유닛(3018) 상에 디스플레이되는 시간 후)에서 렌더링된 우측 프레임에 대해 시간 와핑 우측 모듈(3055)에 의해 수행된다. 시간 와핑 우측 프레임 모듈(3046)의 출력은 우측 디스플레이 유닛(3020)에 송신된다. 우측 디스플레이 유닛(3020)은 수신된 데이터를 광자들로 변환하고, 뷰어의 우측 눈을 향해 광자들을 방출하고, 이로써 시간 t6(3047)에서 우측 디스플레이 유닛(3020) 상에 이미지를 디스플레이한다. 우측 디스플레이 유닛(3020)은, 데이터가 이미지들 및 IMU들로부터 수신되는 것보다 "x" 초 후에 이미지를 디스플레이하고, 여기서 x는 매끄러운 뷰잉을 위해 요구되는 리플레시 레이트 미만인 수학적 관계이다. 따라서, 2개의 디스플레이 유닛들(즉, 좌측 디스플레이 유닛(3018) 및 우측 디스플레이 유닛(3020))은 서로 완전히 오프셋되어 업데이트하고, 여기서 각각의 업데이트는 다른 것에 대해 순차적이다(예컨대, 매끄러운 뷰잉을 위해 요구된 2x <리프레시 레이트).
[0122] 좌측 디스플레이 유닛 및 우측 디스플레이 유닛이 이미지를 디스플레이하는 순서가 도 26 내지 29와 관련하여 위에서 논의된 순서와 상이할 수 있다는 것을 당업자는 인지할 것이다. 시스템은, 우측 디스플레이 유닛(3020)이 이미지를 디스플레이하는 것보다 늦은 시간에 좌측 디스플레이 유닛(3018)이 이미지를 디스플레이하도록, 수정될 수 있다.
[0123] 또한, 본원에 설명된 예들 및 실시예들이 단지 예시를 위한 것이며, 이들을 고려하여 다양한 수정들 또는 변화들이 당업자에게 제안될 것이고, 본 출원의 사상 및 범위 및 첨부된 청구항들의 범위 내에 포함한다는 것이 이해된다.
[0124] 또한, 본원에 설명된 예들 및 실시예들이 단지 예시를 위한 것이며, 이들을 고려하여 다양한 수정들 또는 변화들이 당업자에게 제안될 것이고, 본 출원의 사상 및 범위 및 첨부된 청구항들의 범위 내에 포함한다는 것이 이해된다.

Claims (20)

  1. 뷰어의 업데이트된 포지션에 기반하여, 이미지 프레임을 변환하기 위한 방법으로서,
    그래픽 프로세싱 유닛으로부터의 컴퓨팅 디바이스에 의해, 상기 뷰어의 제1 포지션과 연관된 제1 뷰 관점(view perspective)에 대응하는 제1 이미지 프레임을 획득하는 단계;
    상기 뷰어의 제2 포지션과 연관된 데이터를 수신하는 단계;
    상기 컴퓨팅 디바이스에 의해, 상기 뷰어의 상기 제2 포지션과 연관된 제2 뷰 관점에 대응하는 제2 이미지 프레임을 생성하기 위해, 상기 제1 이미지 프레임 중 적어도 일부를 픽셀마다 계속해서 변환하는 단계; 및
    상기 컴퓨팅 디바이스에 의해, 근안(near-eye) 디스플레이 디바이스 상에 디스플레이되도록 상기 제2 이미지 프레임을 상기 근안 디스플레이 디바이스의 디스플레이 모듈에 송신하는 단계를 포함하는,
    뷰어의 업데이트된 포지션에 기반하여, 이미지 프레임을 변환하기 위한 방법.
  2. 제1 항에 있어서,
    상기 제2 포지션은 상기 제1 포지션으로부터 상기 근안 디스플레이 디바이스의 광학 중심을 중심으로 한 회전에 대응하는,
    뷰어의 업데이트된 포지션에 기반하여, 이미지 프레임을 변환하기 위한 방법.
  3. 제1 항에 있어서,
    상기 제2 포지션은 상기 제1 포지션으로부터의 수평 병진운동(horizontal translation)에 대응하는,
    뷰어의 업데이트된 포지션에 기반하여, 이미지 프레임을 변환하기 위한 방법.
  4. 제1 항에 있어서,
    상기 제1 이미지 프레임은, 상기 변환된 제1 이미지 프레임이 광자들(photons)로 변환될 때까지 계속해서 변환되는,
    뷰어의 업데이트된 포지션에 기반하여, 이미지 프레임을 변환하기 위한 방법.
  5. 제1 항에 있어서,
    상기 제1 이미지 프레임은 상기 그래픽 프로세싱 유닛으로부터 스트리밍된 이미지의 서브-섹션인,
    뷰어의 업데이트된 포지션에 기반하여, 이미지 프레임을 변환하기 위한 방법.
  6. 제1 항에 있어서,
    상기 컴퓨팅 디바이스는 상기 그래픽 프로세싱 유닛으로부터 상기 제1 이미지 프레임을 수신하기 위한 프레임 버퍼를 포함하고,
    상기 제1 이미지 프레임 중 적어도 일부를 픽셀마다 계속해서 변환하는 단계는,
    상기 컴퓨팅 디바이스에 의해, 상기 근안 디스플레이 디바이스의 디스플레이 디바이스 픽셀을 상기 프레임 버퍼의 디폴트 이미지 픽셀로부터 상기 프레임 버퍼의 상이한 이미지 픽셀로 방향전환하는 단계를 더 포함하는,
    뷰어의 업데이트된 포지션에 기반하여, 이미지 프레임을 변환하기 위한 방법.
  7. 제1 항에 있어서,
    상기 컴퓨팅 디바이스는 상기 그래픽 프로세싱 유닛으로부터 상기 제1 이미지 프레임을 수신하기 위한 프레임 버퍼를 포함하고,
    상기 제1 이미지 프레임 중 적어도 일부를 픽셀마다 계속해서 변환하는 단계는,
    상기 컴퓨팅 디바이스에 의해, 상기 프레임 버퍼의 이미지 픽셀에 할당된 디폴트 디스플레이 디바이스 픽셀과 상이한 상기 근안 디스플레이 디바이스의 디스플레이 디바이스 픽셀에 상기 이미지 픽셀을 전송하는 단계를 더 포함하는,
    뷰어의 업데이트된 포지션에 기반하여, 이미지 프레임을 변환하기 위한 방법.
  8. 제1 항에 있어서,
    상기 컴퓨팅 디바이스는 상기 그래픽 프로세싱 유닛으로부터 상기 제1 이미지 프레임을 수신하기 위한 프레임 버퍼를 포함하고,
    상기 계속해서 변환하는 단계는,
    상기 그래픽 프로세싱 유닛의 프레임 버퍼로부터 상기 제1 이미지 프레임을 수신하는 동안, 상기 제1 이미지 프레임 중 적어도 일부를 변환하는 단계를 더 포함하고,
    상기 변환하는 단계는,
    상기 그래픽 프로세싱 유닛으로부터 상기 컴퓨팅 디바이스에 의해, 상기 컴퓨팅 디바이스의 상기 프레임 버퍼의 제1 이미지 픽셀에서 상기 그래픽 프로세싱 유닛의 상기 프레임 버퍼의 제1 이미지 픽셀을 수신하는 단계를 포함하고,
    상기 그래픽 프로세싱 유닛의 상기 프레임 버퍼의 상기 제1 이미지 픽셀은 상기 컴퓨팅 디바이스의 상기 프레임 버퍼의 제2 이미지 픽셀에 초기에 할당되는,
    뷰어의 업데이트된 포지션에 기반하여, 이미지 프레임을 변환하기 위한 방법.
  9. 제1 항에 있어서,
    상기 뷰어의 상기 제2 포지션과 연관된 데이터는 관성 측정 유닛으로부터의 데이터 및 광학 데이터를 포함하고, 상기 컴퓨팅 디바이스는 상기 관성 측정 유닛으로부터의 데이터 및 상기 광학 데이터를 수신하기 위한 포즈 추정기 모듈(pose estimator module), 및 상기 그래픽 프로세싱 유닛으로부터 상기 제1 이미지 프레임을 수신하기 위한 프레임 버퍼를 포함하는,
    뷰어의 업데이트된 포지션에 기반하여, 이미지 프레임을 변환하기 위한 방법.
  10. 제1 항에 있어서,
    상기 컴퓨팅 디바이스는 상기 그래픽 프로세싱 유닛으로부터 상기 제1 이미지 프레임을 수신하기 위한 프레임 버퍼, 및 상기 제2 이미지 프레임을 상기 근안 디스플레이 디바이스에 송신하기 전에, 상기 프레임 버퍼에 저장된 버퍼링된 이미지 픽셀들을 시프팅함으로써 상기 제1 이미지 프레임 중 적어도 일부를 상기 제2 이미지 프레임으로 변환하기 위한 외부 버퍼 프로세서를 포함하는,
    뷰어의 업데이트된 포지션에 기반하여, 이미지 프레임을 변환하기 위한 방법.
  11. 제10 항에 있어서,
    상기 프레임 버퍼의 제1 이미지 픽셀은 제1 양만큼 시프팅되고, 상기 프레임 버퍼의 제2 이미지 픽셀은 상기 제1 양과 상이한 제2 양만큼 시프팅되는,
    뷰어의 업데이트된 포지션에 기반하여, 이미지 프레임을 변환하기 위한 방법.
  12. 뷰어의 업데이트된 포지션에 기반하여, 이미지 프레임을 변환하기 위한 방법으로서,
    제1 시간에서 그래픽 프로세싱 유닛에 의해, 양안 근안 디스플레이 디바이스(binocular near-eye display device)의 좌측 디스플레이에 대한 좌측 이미지 프레임을 렌더링하는 단계 ― 상기 좌측 이미지 프레임은 상기 뷰어의 제1 포지션과 연관된 제1 뷰 관점에 대응함 ― ;
    상기 그래픽 프로세싱 유닛으로부터의 컴퓨팅 디바이스에 의해, 상기 양안 근안 디스플레이 디바이스의 우측 디스플레이에 대한 우측 이미지 프레임을 렌더링하는 단계 ― 상기 우측 이미지 프레임은 상기 뷰어의 상기 제1 포지션과 연관된 상기 제1 뷰 관점에 대응함 ― ;
    상기 제1 시간보다 늦은 제2 시간에서 상기 그래픽 프로세싱 유닛에 의해, 상기 뷰어의 제2 포지션과 연관된 데이터를 수신하는 단계 ― 상기 데이터는 상기 뷰어의 상기 제2 포지션에 기반하는 제1 포즈 추정을 포함함 ― ;
    상기 그래픽 프로세싱 유닛에 의해, 상기 양안 근안 디스플레이 디바이스의 상기 좌측 디스플레이에 대한 업데이트된 좌측 이미지 프레임을 생성하기 위해, 상기 뷰어의 상기 제2 포지션에 기반하여, 상기 제1 포즈 추정을 사용하여 상기 좌측 이미지 프레임 중 적어도 일부를 변환하는 단계 ― 상기 업데이트된 좌측 이미지 프레임은 상기 뷰어의 상기 제2 포지션과 연관된 제2 뷰 관점에 대응함 ― ;
    상기 제2 시간보다 늦은 제3 시간에서 상기 그래픽 프로세싱 유닛에 의해, 상기 좌측 디스플레이 상에 디스플레이되도록 상기 업데이트된 좌측 이미지 프레임을 상기 양안 근안 디스플레이 디바이스의 상기 좌측 디스플레이에 송신하는 단계;
    상기 제2 시간보다 늦은 제4 시간에서 상기 그래픽 프로세싱 유닛에 의해, 상기 뷰어의 제3 포지션과 연관된 데이터를 수신하는 단계 ― 상기 데이터는 상기 뷰어의 상기 제3 포지션에 기반하는 제2 포즈 추정을 포함함 ― ;
    상기 그래픽 프로세싱 유닛에 의해, 상기 양안 근안 디스플레이 디바이스의 상기 우측 디스플레이에 대한 업데이트된 우측 이미지 프레임을 생성하기 위해, 상기 뷰어의 상기 제3 포지션에 기반하여, 상기 제2 포즈 추정을 사용하여 상기 우측 이미지 프레임 중 적어도 일부를 변환하는 단계 ― 상기 업데이트된 우측 이미지 프레임은 상기 뷰어의 상기 제3 포지션과 연관된 제3 뷰 관점에 대응함 ― ; 및
    상기 제4 시간보다 늦은 제5 시간에서 상기 그래픽 프로세싱 유닛에 의해, 상기 우측 디스플레이 상에 디스플레이되도록 상기 업데이트된 우측 이미지 프레임을 상기 양안 근안 디스플레이 디바이스의 상기 우측 디스플레이에 송신하는 단계를 포함하는,
    뷰어의 업데이트된 포지션에 기반하여, 이미지 프레임을 변환하기 위한 방법.
  13. 제12 항에 있어서,
    상기 우측 이미지 프레임은 상기 제1 시간에서 상기 그래픽 프로세싱 유닛에 의해 렌더링되는,
    뷰어의 업데이트된 포지션에 기반하여, 이미지 프레임을 변환하기 위한 방법.
  14. 제12 항에 있어서,
    상기 우측 이미지 프레임은, 상기 제1 시간보다 늦고 상기 제4 시간보다 이른 제6 시간에서, 상기 그래픽 프로세싱 유닛에 의해 렌더링되는,
    뷰어의 업데이트된 포지션에 기반하여, 이미지 프레임을 변환하기 위한 방법.
  15. 제12 항에 있어서,
    상기 렌더링된 우측 이미지 프레임은 상기 제1 시간에서 상기 렌더링된 좌측 이미지 프레임과 동일한,
    뷰어의 업데이트된 포지션에 기반하여, 이미지 프레임을 변환하기 위한 방법.
  16. 뷰어의 제1 포지션과 연관된 제1 뷰 관점에 대응하는 제1 이미지 프레임을 생성하도록 구성된 그래픽 프로세싱 유닛;
    제어기; 및
    근안 디스플레이 디바이스를 포함하고,
    상기 제어기는:
    상기 뷰어의 제2 포지션과 연관된 데이터를 수신하고;
    상기 뷰어의 상기 제2 포지션과 연관된 제2 뷰 관점에 대응하는 제2 이미지 프레임을 생성하기 위해, 상기 제1 이미지 프레임 중 적어도 일부를 픽셀마다 계속해서 변환하고; 그리고
    상기 제2 이미지 프레임을 스트리밍하도록 구성되고,
    상기 근안 디스플레이 디바이스는:
    상기 제어기에 의해 스트리밍되는 상기 제2 이미지 프레임을 수신하고;
    상기 제2 이미지 프레임을 광자들로 변환하고; 그리고
    상기 광자들을 상기 뷰어를 향해 방출하도록 구성되는,
    시스템.
  17. 제16 항에 있어서,
    상기 근안 디스플레이 디바이스는 순차적인 스캐닝 디스플레이 디바이스인,
    시스템.
  18. 제16 항에 있어서,
    상기 제어기는 상기 근안 디스플레이 디바이스에 통합되는,
    시스템.
  19. 제16 항에 있어서,
    상기 제어기는 상기 그래픽 프로세싱 유닛과 상기 근안 디스플레이 디바이스 사이에 커플링되고, 상기 그래픽 프로세싱 유닛과 상기 근안 디스플레이 디바이스 사이에 제공되는,
    시스템.
  20. 제16 항에 있어서,
    상기 제어기는:
    상기 그래픽 프로세싱 유닛으로부터 상기 제1 이미지 프레임을 수신하기 위한 프레임 버퍼; 및
    상기 제2 이미지 프레임을 상기 근안 디스플레이 디바이스로 스트리밍하기 전에, 상기 프레임 버퍼에 저장된 버퍼링된 이미지 픽셀들을 시프팅함으로써, 상기 제1 이미지 프레임 중 적어도 일부를 상기 제2 이미지 프레임으로 변환하기 위한 외부 버퍼 프로세서를 더 포함하는,
    시스템.
KR1020197008554A 2016-08-26 2017-08-25 가상 및 증강 현실 디스플레이 시스템들 및 방법들을 위한 연속 시간 와핑 및 양안 시간 와핑 KR102210993B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020217002675A KR102424864B1 (ko) 2016-08-26 2017-08-25 가상 및 증강 현실 디스플레이 시스템들 및 방법들을 위한 연속 시간 와핑 및 양안 시간 와핑

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201662380302P 2016-08-26 2016-08-26
US62/380,302 2016-08-26
PCT/US2017/048656 WO2018039586A1 (en) 2016-08-26 2017-08-25 Continuous time warp and binocular time warp for virtual and augmented reality display systems and methods

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020217002675A Division KR102424864B1 (ko) 2016-08-26 2017-08-25 가상 및 증강 현실 디스플레이 시스템들 및 방법들을 위한 연속 시간 와핑 및 양안 시간 와핑

Publications (2)

Publication Number Publication Date
KR20190085509A true KR20190085509A (ko) 2019-07-18
KR102210993B1 KR102210993B1 (ko) 2021-02-02

Family

ID=61243183

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020197008554A KR102210993B1 (ko) 2016-08-26 2017-08-25 가상 및 증강 현실 디스플레이 시스템들 및 방법들을 위한 연속 시간 와핑 및 양안 시간 와핑
KR1020217002675A KR102424864B1 (ko) 2016-08-26 2017-08-25 가상 및 증강 현실 디스플레이 시스템들 및 방법들을 위한 연속 시간 와핑 및 양안 시간 와핑

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020217002675A KR102424864B1 (ko) 2016-08-26 2017-08-25 가상 및 증강 현실 디스플레이 시스템들 및 방법들을 위한 연속 시간 와핑 및 양안 시간 와핑

Country Status (9)

Country Link
US (4) US10699472B2 (ko)
EP (1) EP3504686A4 (ko)
JP (4) JP6898430B2 (ko)
KR (2) KR102210993B1 (ko)
CN (2) CN117453038A (ko)
AU (3) AU2017314940B2 (ko)
CA (1) CA3034668C (ko)
IL (4) IL301071B2 (ko)
WO (1) WO2018039586A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114503014A (zh) * 2020-03-03 2022-05-13 谷歌有限责任公司 使用基于透镜的可操控背光的多视立体显示器

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10962780B2 (en) * 2015-10-26 2021-03-30 Microsoft Technology Licensing, Llc Remote rendering for virtual images
CN109074681B (zh) * 2016-04-18 2023-03-21 索尼公司 信息处理装置、信息处理方法和程序
AU2017314940B2 (en) 2016-08-26 2021-09-23 Magic Leap, Inc. Continuous time warp and binocular time warp for virtual and augmented reality display systems and methods
US10379611B2 (en) * 2016-09-16 2019-08-13 Intel Corporation Virtual reality/augmented reality apparatus and method
US10462336B2 (en) * 2017-03-15 2019-10-29 Microsoft Licensing Technology, LLC Low latency tearing without user perception
US10580200B2 (en) * 2017-04-07 2020-03-03 Intel Corporation Virtual reality apparatus and method including prioritized pixel shader operations, alternate eye rendering, and/or augmented timewarp
US10444098B2 (en) 2017-04-10 2019-10-15 Fanuc Corporation Torque sensor and robot
US10896657B2 (en) * 2017-04-17 2021-01-19 Intel Corporation Graphics with adaptive temporal adjustments
US10928892B2 (en) * 2017-05-01 2021-02-23 Alibaba Technology (Israel) Ltd. Optical engine time warp for augmented or mixed reality environment
US10338400B2 (en) 2017-07-03 2019-07-02 Holovisions LLC Augmented reality eyewear with VAPE or wear technology
US10859834B2 (en) 2017-07-03 2020-12-08 Holovisions Space-efficient optical structures for wide field-of-view augmented reality (AR) eyewear
US10714050B2 (en) * 2018-03-21 2020-07-14 Daqri, Llc Reducing latency in augmented reality (AR) displays
CN108632598A (zh) * 2018-05-25 2018-10-09 小派科技(上海)有限责任公司 降低vr设备mtp延时的方法及装置
TWI794512B (zh) * 2018-06-15 2023-03-01 美商亞沃公司 用於擴增實境之系統及設備及用於使用一即時顯示器實現拍攝之方法
CN108921951B (zh) * 2018-07-02 2023-06-20 京东方科技集团股份有限公司 虚拟现实图像显示方法及其装置、虚拟现实设备
WO2020023383A1 (en) * 2018-07-23 2020-01-30 Magic Leap, Inc. Mixed reality system with virtual content warping and method of generating virtual content using same
CN109242944B (zh) * 2018-09-28 2023-08-11 京东方科技集团股份有限公司 一种显示方法和装置
JP7367689B2 (ja) * 2018-10-04 2023-10-24 ソニーグループ株式会社 情報処理装置、情報処理方法、及び記録媒体
US20220091427A1 (en) 2018-12-28 2022-03-24 Magic Leap, Inc. Low motion-to-photon latency architecture for augmented and virtual reality display systems
CN113544560A (zh) 2018-12-28 2021-10-22 奇跃公司 具有发光微显示器的虚拟和增强现实显示系统
US11022322B2 (en) * 2019-01-04 2021-06-01 Whirlpool Corporation Cooking appliance with an imaging device
US10853927B2 (en) * 2019-03-19 2020-12-01 Apple Inc. Image fusion architecture
CN113671706A (zh) 2019-03-29 2021-11-19 华为技术有限公司 头戴式显示器的图像显示方法及设备
US10853928B2 (en) 2019-03-29 2020-12-01 Apple Inc. Image fusion processing module
JP6713591B1 (ja) * 2019-04-17 2020-06-24 楽天株式会社 表示制御装置、表示制御方法、プログラム、ならびに、非一時的なコンピュータ読取可能な情報記録媒体
CN112752119B (zh) * 2019-10-31 2023-12-01 中兴通讯股份有限公司 一种时延误差校正方法、终端设备、服务器及存储介质
CN110969706B (zh) * 2019-12-02 2023-10-10 Oppo广东移动通信有限公司 增强现实设备及其图像处理方法、系统以及存储介质
US20210192681A1 (en) * 2019-12-18 2021-06-24 Ati Technologies Ulc Frame reprojection for virtual reality and augmented reality
US11487118B2 (en) * 2020-05-13 2022-11-01 Texas Instruments Incorporated Rendered optical super resolution display
JP2023528264A (ja) * 2020-05-21 2023-07-04 マジック リープ, インコーポレイテッド 眼追跡を使用したレーザビーム走査ディスプレイのためのワーピング
US11321859B2 (en) * 2020-06-22 2022-05-03 Toyota Research Institute, Inc. Pixel-wise residual pose estimation for monocular depth estimation
US11698530B2 (en) 2020-09-21 2023-07-11 Meta Platforms Technologies, Llc Switch leakage compensation for global illumination
WO2022074791A1 (ja) * 2020-10-08 2022-04-14 マクセル株式会社 3次元拡張現実処理システム、3次元拡張現実処理方法、及び3次元拡張現実処理システムのユーザインターフェース装置
CN112509025B (zh) * 2020-12-03 2022-11-11 山东省科学院海洋仪器仪表研究所 一种基于三维欧氏距离的岩石空间结构距离图的计算方法
KR102404884B1 (ko) * 2020-12-29 2022-06-07 이규인 상황기반 페어링 장치 및 그 방법
US20220327784A1 (en) * 2021-04-09 2022-10-13 Varjo Technologies Oy Image reprojection method, and an imaging system
US20220375026A1 (en) * 2021-05-18 2022-11-24 Snap Inc. Late warping to minimize latency of moving objects
KR20220156331A (ko) 2021-05-18 2022-11-25 삼성전자주식회사 이미지 지연을 보정하기 위한 전자 장치 및 방법
WO2022246384A1 (en) * 2021-05-18 2022-11-24 Snap Inc. Late warping to minimize latency of moving objects
US11822713B2 (en) * 2021-06-11 2023-11-21 Rockwell Collins, Inc. Pose augmentation of head worn display video for latency reduction
US20220413433A1 (en) * 2021-06-28 2022-12-29 Meta Platforms Technologies, Llc Holographic Calling for Artificial Reality
CN113596569B (zh) * 2021-07-22 2023-03-24 歌尔科技有限公司 图像处理方法、装置和计算机可读存储介质
US11694409B1 (en) * 2021-12-08 2023-07-04 Google Llc Augmented reality using a split architecture
GB2614326A (en) * 2021-12-31 2023-07-05 Sony Interactive Entertainment Europe Ltd Apparatus and method for virtual reality
US20240037698A1 (en) * 2022-07-27 2024-02-01 Rockwell Collins, Inc. Head-frame symbology isolation for head worn display (hwd)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100735676B1 (ko) * 2006-02-24 2007-07-06 조현덕 가상현실 모델하우스 운영시스템 및 운영방법
KR20070076304A (ko) * 2006-01-18 2007-07-24 삼성전자주식회사 증강 현실 장치 및 방법
KR20120009638A (ko) * 2010-07-19 2012-02-02 주식회사 비즈모델라인 미인식 실제객체에 대한 가상객체 데이터 운용방법 및 이를 위한 증강현실 장치와, 기록매체
KR20150072954A (ko) * 2013-12-20 2015-06-30 배재대학교 산학협력단 증강현실 서비스를 제공하는 방법 및 장치

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5467104A (en) * 1992-10-22 1995-11-14 Board Of Regents Of The University Of Washington Virtual retinal display
US5523886A (en) * 1994-01-04 1996-06-04 Sega Of America, Inc. Stereoscopic/monoscopic video display system
US8624895B2 (en) * 2005-01-20 2014-01-07 Production Resource Group, Llc Controls for digital lighting
US8982110B2 (en) * 2005-03-01 2015-03-17 Eyesmatch Ltd Method for image transformation, augmented reality, and teleperence
JP4857196B2 (ja) 2007-05-31 2012-01-18 キヤノン株式会社 頭部装着型表示装置、及びその制御方法
CN101617531A (zh) * 2007-08-24 2009-12-30 索尼株式会社 图像处理装置、运动图像播放装置及其处理方法和程序
US8345052B1 (en) * 2007-11-08 2013-01-01 Nvidia Corporation Method and system for using a GPU frame buffer in a multi-GPU system as cache memory
NL1035303C2 (nl) * 2008-04-16 2009-10-19 Virtual Proteins B V Interactieve virtuele reality eenheid.
US9171221B2 (en) 2010-07-18 2015-10-27 Spatial Cam Llc Camera to track an object
JP5652037B2 (ja) 2010-07-30 2015-01-14 富士通株式会社 模擬映像生成装置、方法、プログラム
KR101729524B1 (ko) 2010-10-28 2017-04-24 엘지전자 주식회사 영상표시장치 및 그 동작방법
JP2013062731A (ja) * 2011-09-14 2013-04-04 Namco Bandai Games Inc プログラム、情報記憶媒体及び画像生成システム
JP5456820B2 (ja) 2012-03-28 2014-04-02 株式会社スクウェア・エニックス ゲーム装置
IN2015KN00682A (ko) * 2012-09-03 2015-07-17 Sensomotoric Instr Ges Für Innovative Sensorik Mbh
US8797340B2 (en) * 2012-10-02 2014-08-05 Nvidia Corporation System, method, and computer program product for modifying a pixel value as a function of a display duration estimate
CN107656618B (zh) 2013-03-15 2021-03-23 奇跃公司 显示系统和方法
US9565414B2 (en) 2013-05-24 2017-02-07 Disney Enterprises, Inc. Efficient stereo to multiview rendering using interleaved rendering
US9443355B2 (en) * 2013-06-28 2016-09-13 Microsoft Technology Licensing, Llc Reprojection OLED display for augmented reality experiences
JP6225546B2 (ja) 2013-08-02 2017-11-08 セイコーエプソン株式会社 表示装置、頭部装着型表示装置、表示システムおよび表示装置の制御方法
JP6353214B2 (ja) * 2013-11-11 2018-07-04 株式会社ソニー・インタラクティブエンタテインメント 画像生成装置および画像生成方法
US9551873B2 (en) 2014-05-30 2017-01-24 Sony Interactive Entertainment America Llc Head mounted device (HMD) system having interface with mobile computing device for rendering virtual reality content
GB2528699B (en) * 2014-07-29 2017-05-03 Sony Computer Entertainment Europe Ltd Image processing
US20160238852A1 (en) * 2015-02-13 2016-08-18 Castar, Inc. Head mounted display performing post render processing
US9240069B1 (en) * 2015-06-30 2016-01-19 Ariadne's Thread (Usa), Inc. Low-latency virtual reality display system
AU2017314940B2 (en) 2016-08-26 2021-09-23 Magic Leap, Inc. Continuous time warp and binocular time warp for virtual and augmented reality display systems and methods

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070076304A (ko) * 2006-01-18 2007-07-24 삼성전자주식회사 증강 현실 장치 및 방법
KR100735676B1 (ko) * 2006-02-24 2007-07-06 조현덕 가상현실 모델하우스 운영시스템 및 운영방법
KR20120009638A (ko) * 2010-07-19 2012-02-02 주식회사 비즈모델라인 미인식 실제객체에 대한 가상객체 데이터 운용방법 및 이를 위한 증강현실 장치와, 기록매체
KR20150072954A (ko) * 2013-12-20 2015-06-30 배재대학교 산학협력단 증강현실 서비스를 제공하는 방법 및 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114503014A (zh) * 2020-03-03 2022-05-13 谷歌有限责任公司 使用基于透镜的可操控背光的多视立体显示器

Also Published As

Publication number Publication date
US11200730B2 (en) 2021-12-14
CA3034668A1 (en) 2018-03-01
JP7386825B2 (ja) 2023-11-27
AU2017314940B2 (en) 2021-09-23
JP2024059761A (ja) 2024-05-01
CN109863538A (zh) 2019-06-07
JP7442608B2 (ja) 2024-03-04
IL301071B1 (en) 2023-12-01
AU2017314940A1 (en) 2019-03-14
IL290382B1 (en) 2023-04-01
WO2018039586A1 (en) 2018-03-01
IL301071A (en) 2023-05-01
US11127195B2 (en) 2021-09-21
IL290382A (en) 2022-04-01
AU2021286370B2 (en) 2023-08-24
JP2023017046A (ja) 2023-02-02
IL264799B (en) 2021-07-29
US20180061121A1 (en) 2018-03-01
EP3504686A4 (en) 2019-09-25
IL284834A (en) 2021-08-31
CA3034668C (en) 2024-02-27
AU2023270240A1 (en) 2023-12-07
KR102210993B1 (ko) 2021-02-02
KR102424864B1 (ko) 2022-07-22
CN117453038A (zh) 2024-01-26
NZ751028A (en) 2023-10-27
JP2021103537A (ja) 2021-07-15
US10699472B2 (en) 2020-06-30
JP2019532395A (ja) 2019-11-07
CN109863538B (zh) 2023-10-27
US20200126292A1 (en) 2020-04-23
AU2021286370A1 (en) 2022-01-20
IL290382B2 (en) 2023-08-01
KR20210012071A (ko) 2021-02-02
EP3504686A1 (en) 2019-07-03
JP6898430B2 (ja) 2021-07-07
US20190019328A1 (en) 2019-01-17
US20200279432A1 (en) 2020-09-03
IL284834B (en) 2022-03-01
IL301071B2 (en) 2024-04-01
US10553017B2 (en) 2020-02-04

Similar Documents

Publication Publication Date Title
KR102210993B1 (ko) 가상 및 증강 현실 디스플레이 시스템들 및 방법들을 위한 연속 시간 와핑 및 양안 시간 와핑
CN108292489B (zh) 信息处理装置和图像生成方法
JP7009494B2 (ja) カラー仮想コンテンツワーピングを伴う複合現実システムおよびそれを使用して仮想コンテンツ生成する方法
CN108885342B (zh) 虚拟图像生成系统及其操作方法
KR20160149252A (ko) 시선 위치에 기초한 안정 평면 결정
JP6620079B2 (ja) 画像処理システム、画像処理方法およびコンピュータプログラム
JP2010033367A (ja) 情報処理装置及び情報処理方法
KR20210044506A (ko) 증강 현실 객체를 표시하는 장치 및 그 동작 방법
JP2020003898A (ja) 情報処理装置、情報処理方法、及びプログラム
NZ751028B2 (en) Continuous time warp and binocular time warp for virtual and augmented reality display systems and methods
NZ791691A (en) Continuous time warp and binocular time warp for virtual and augmented reality display systems and methods
JP5539486B2 (ja) 情報処理装置及び情報処理方法

Legal Events

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