KR20200130359A - 주변 이미지 영역에서의 실시간 압축을 통한 이미지 디스플레이의 제어 - Google Patents

주변 이미지 영역에서의 실시간 압축을 통한 이미지 디스플레이의 제어 Download PDF

Info

Publication number
KR20200130359A
KR20200130359A KR1020207028413A KR20207028413A KR20200130359A KR 20200130359 A KR20200130359 A KR 20200130359A KR 1020207028413 A KR1020207028413 A KR 1020207028413A KR 20207028413 A KR20207028413 A KR 20207028413A KR 20200130359 A KR20200130359 A KR 20200130359A
Authority
KR
South Korea
Prior art keywords
pixel values
image
values
display
copy
Prior art date
Application number
KR1020207028413A
Other languages
English (en)
Other versions
KR102618255B1 (ko
Inventor
야세르 말라이카
Original Assignee
밸브 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 밸브 코포레이션 filed Critical 밸브 코포레이션
Publication of KR20200130359A publication Critical patent/KR20200130359A/ko
Application granted granted Critical
Publication of KR102618255B1 publication Critical patent/KR102618255B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G3/00Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
    • G09G3/001Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes using specific devices not provided for in groups G09G3/02 - G09G3/36, e.g. using an intermediate record carrier such as a film slide; Projection systems; Display of non-alphanumerical information, solely or in combination with alphanumerical information, e.g. digital display on projected diapositive as background
    • G09G3/003Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes using specific devices not provided for in groups G09G3/02 - G09G3/36, e.g. using an intermediate record carrier such as a film slide; Projection systems; Display of non-alphanumerical information, solely or in combination with alphanumerical information, e.g. digital display on projected diapositive as background to produce spatial visual effects
    • 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
    • A63F13/25Output arrangements for video game devices
    • 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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/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
    • 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/10Intensity circuits
    • 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]
    • 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/0147Head-up displays characterised by optical features comprising a device modifying the resolution of the displayed image
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/02Handling of images in compressed format, e.g. JPEG, MPEG
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/16Calculation or use of calculated indices related to luminance levels in display data

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)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • Optics & Photonics (AREA)
  • Signal Processing (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)

Abstract

색 수차 보상을 보존하는 컬러-특정 압축을 가지고, 다른(예를 들어, 주변 뷰) 영역들에서 더 적은 압축을 수행하거나 또는 압축을 수행하지 않으면서 일부 이미지 영역들에서의 이미지 데이터의 압축을 통해 이미지 디스플레이를 제어하기 위한 기술들이 설명된다. 이러한 기술들은 가상 현실 디스플레이를 위해 사용되는 머리-착용 디스플레이 디바이스의 디스플레이 패널(들)과 함께 사용될 수 있다. 최고 해상도 레벨로 인코딩되고 디스플레이될 이미지의 1차 영역은 사용자의 시선을 추적함으로써 결정될 수 있으며, 반면 2차 영역들은 1차 영역들을 둘러싸거나 또는 다른 외부에 있는 것으로서 선택될 수 있다. 2차 영역들 내에서, 제 1(예를 들어, 녹색) 컬러 채널에 대한 이미지 데이터는 다른 제 2 컬러 채널들에 대한 것보다 더 낮은 더 높은 제 1 해상도 레벨에 대한 제 1 압축 레벨로 인코딩될 수 있으며, HDR 데이터는 컬러-특정 데이터보다 더 높은 압축 레벨들로 압축될 수 있다.

Description

주변 이미지 영역에서의 실시간 압축을 통한 이미지 디스플레이의 제어
다음의 개시는 전반적으로 디스플레이 패널 상의 이미지의 디스플레이를 제어하기 위한 기술들에 관한 것으로서, 보다 더 구체적으로는, 이미지의 주명 영역들에서의 압축의 사용을 통해 디스플레이 패널로의 이미지 데이터의 송신을 위한 대역폭을 감소시키기 위한 기술들에 관한 것이다.
증가하는 시각적 디스플레이 성능에 대한 수요는 이미지 데이터 크기 및 연관된 송신 대역폭 사용량에 대한 수요에서 대응하는 큰 증가들을 야기하였다. 예를 들어, 게이밍 디바이스들, 비디오 디스플레이 디바이스들, 모바일 컴퓨팅, 범용 컴퓨터 등에서 증가하는 시각적 디스플레이 해상도는, 이미지에서 향상된 사실성을 제공하기 위하여 픽셀 당 더 큰 대역폭 사용하는 고 동적 범위(High Dynamic Range; “HDR”) 데이터를 가짐에 따라 더 높은 송신 대역폭들을 야기하였다. 이에 더하여, 가상 현실(virtual reality; "VR") 및 증강 현실(augmented reality; "AR") 시스템들, 특히 머리-착용 디스플레이(head-mounted display; "HMD")들을 사용하는 가상 현실 및 증강 현실 시스템들의 성장하고 있는 인기가 이러한 수요를 추가로 증가시키고 있다. 가상 현실 시스템들은 전형적으로 착용자의 눈들을 완전히 감싸고 착용자의 전방에서 실제 뷰(view)(또는 실제 현실)를 "가상" 현실로 치환하며, 반면 증강 현실 시스템들은 전형적으로, 실제 뷰가 추가적인 정보로 증강되도록 착용자의 눈들의 전방에 하나 이상의 스크린들의 반-투명 또는 투명 오버레이(overlay)를 제공한다.
그러나, 시청자의 눈과 디스플레이 사이에 감소된 거리를 가지며 보통 완전히 가려진 시야를 갖는 이러한 머리 착용 디스플레이들은, 전통적인 디스플레이들 및 송신 성능들이 충족시키지 못하며 보통 디스플레이에 걸쳐 변화하는 최적 해상도 밀도들을 가질 수 없는 방식들로 디스플레이 시스템들의 증가된 성능 요건들을 갖는다.
도 1a는, 이미지 데이터 송신 관리자(Image Data Transmission Manager; “IDTM”) 시스템 및 이미지 디스플레이 관리자(Image Display Manager; “IDM”) 시스템의 실시예들을 포함하는, 본 개시에서 설명되는 적어도 일부 기술들을 수행하기에 적절한 하나 이상의 시스템들을 포함하는 네트워크형 환경의 개략도이다.
도 1b는, 설명되는 기술들 중 적어도 일부가 비디오 렌더링 시스템에 테더링되고 사용자에게 가상 현실 디스플레이를 제공하는 예시적인 머리-착용 디스플레이 디스플레이와 함께 사용되는 예시적인 환경을 예시하는 도면이다.
도 1c는 설명되는 기술들 중 적어도 일부와 함께 사용될 수 있는 예시적인 머리-착용 디스플레이 디바이스를 예시하는 도면이다.
도 2a 내지 도 2c는 본원에서 설명되는 기술들 중 적어도 일부에 따른 디스플레이를 위하여 이미지 데이터를 인코딩하고 디코딩하는 예들을 예시한다.
도 3은 이미지 데이터 송신 관리자 루틴의 예시적인 실시예의 순서도이다.
도 4는 이미지 디스플레이 관리자 루틴의 예시적인 실시예의 순서도이다.
본 개시는 전반적으로, 예컨대 이미지의 주변 영역들에서 이미지의 컬러-특정(color-specific) 압축을 사용함으로써 디스플레이 패널로의 이미지 데이터 송신의 대역폭을 감소시키기 위한, 디스플레이 패널 상의 이미지 데이터의 디스플레이를 제어하기 위한 기술들에 관한 것이다. 이러한 기술들은, 예를 들어, 비디오 데이터 및/또는 다른 이미지들의 프레임들과 함께 사용될 수 있으며, 일부 실시예들에 있어서, VR 및/또는 AR 디스플레이 기술들에 대하여 사용되는 머리-착용 디스플레이("HMD")의 부분인 하나 이상의 디스플레이 패널들과 함께 사용된다. 컬러-특정 압축이 수행될 수 있는 이미지의 주변 영역들은, 예를 들어, 이미지의 에지들, 또는 사용자가 초점을 맞추지 않거나 또는 초점 집중이 예상되지 않는 하나 이상의 다른 이미지 부분들을 포함할 수 있다. 본원에서 설명되는 기술들 중 일부 또는 전부는, 이하에서 더 상세하게 논의되는 바와 같은, 하나 이상의 디스플레이 패널들로 인코딩된 데이터를 송신하기 이전에 비디오 렌더링 시스템 상에서 이미지 데이터를 인코딩하는 이미지 데이터 송신 관리자("IDTM”) 시스템 및/또는 디스플레이 패널(들)을 하우징하는 디바이스 상에서 또는 그 근처에서 이러한 이미지를 디코딩하고 디코딩된 이미지 데이터를 디스플레이 패널(들) 상에 디스플레이하는 이미지 디스플레이 관리자(“IDM”) 시스템의 실시예들의 자동화된 동작들을 통해 수행될 수 있다.
이러한 실시예들 중 적어도 일부에 있어서, 기술들은, (예를 들어, 완전 해상도 또는 달리 하나 이상의 다른 2차 영역들보다 더 높은 해상도를 제공하기 위하여, 임의의 압축 또는 임의의 손실 압축 없이) 1차 해상도 레벨로 데이터를 인코딩하고 디스플레이하기 위한 이미지의 적어도 하나의 1차 영역을 결정하는 것을 포함하며 - 예를 들어, 1차 영역(들)은, 사용자의 실제 또는 예상되는 시선을 추적하는 것 및 이미지의 대응하는 구역(area)을 1차 영역으로서 사용하는 것, 적어도 부분적으로 이미지를 볼 최종 사용자의 하나 이상의 선호사항들 또는 최종 사용자에 의해 지정된 다른 정보, 등에 기초하여, (예를 들어, 이미지를 생성하는 소프트웨어 프로그램에 의해 식별되는 바와 같은) 시청자가 가장 흥미를 느낄 수 있을 것 같은 이미지의 하나 이상의 1차 콘텐트 부분들에 대응하는 이미지의 구역을 결정하고, 일부 또는 모든 이미지들에 대하여 미리 정의된 방식으로 1차 영역으로서 이미지의 대응하는 구역을 사용하는 것(예를 들어, 1차 영역으로서 이미지들의 중심 및 주변 부분들을 사용하는 것)에 기초하는 것을 포함하여, 다양한 실시예들에서 다양한 방식들로 결정될 수 있다. 상이한 이미지들이, 예컨대, (예를 들어, 사용자의 시선이 시선의 초점 변화 다음에 결정된 1차 영역들의 위치들에 대하여 하나의 코너로부터 다른 코너로 이동함에 따라) 1차 영역이 결정의 시간에서의 또는 그 근처에서의 현재 상태들에 기초하여 동적으로 결정될 때, 그들의 1차 영역들인 상이한 위치들 또는 구역들을 가질 수 있다는 것이 이해될 것이다. 추가적이 세부사항들은 1차 영역들을 결정하는 것 및 이러한 1차 영여들에 대하여 데이터를 인코딩하고 디스플레이하는 것에 관한 것이다.
이러한 이미지의 추가적안 2차 영역(들)은 (예를 들어, 1차 이미지가 이미지의 중심에 또는 그 근처에 중심이 맞춰진 경우 이미지의 코너들 및/또는 측면들에서와 같이) 하나 이상의 1차 이미지들을 둘러싸거나 또는 달리 그 외부에 있을 수 있으며, 따라서, (예를 들어, 사용자의 주변 시각을 통해 사용자에 의해 전체적으로 또는 부분적으로 인식될) 사용자의 실제 또는 예상되는 초점 외부에 또는 초점 주변에 있을 수 있다. 추가로, 일부 실시예들에 있어서, 2차 영역(들)에서 디스플레이되는 데이터의 더 낮은 해상도는 적어도 부분적으로, 예컨대, 1차 영역의 1차 해상도 레벨보다 더 낮은 제 1 해상도 레벨을 제공하는 제 1 압축 레벨로 녹색 컬러 채널에 대한 이미지 데이터를 인코딩하고 디스플레이하기 위하여 그리고 녹색 컬러 채널의 제 1 해상도 레벨보다 더 낮은 하나 이상의 제 2 해상도 레벨들을 제공하는 하나 이상의 제 2 압축 레벨들로 적색 및/또는 청색 컬러 채널들에 대한 이미지 데이터를 인코딩하고 디스플레이하기 위하여, 주변 2차 영역(들) 내의 이미지 데이터의 컬러-특정 압축을 수행함으로써 획득된다. 일부 실시예들에 있어서, 2차 영역(들)은 전체적으로 또는 부분적으로 하나 이상의 1차 영역들에 대한 것에 기초하여(예를 들어, 하나 이상의 1차 영여들을 둘러싸거나 또는 달리 그 외부에 있는 것으로서) 결정될 수 있지만, 다른 실시예들에 있어서, 2차 영역(들)은 전체적으로 또는 부분적으로 다른 방식들로, 예컨대 (예를 들어, 콘텐트의 유형, 이미지 내의 특정 위치들, 등에 기초하여) 2차 영역들의 하나 이상의 확정적인(affirmative) 속성들 또는 특성들에 기초하여 결정될 수 있다. 상이한 이미지들은, 예컨대, 2차 영역이 결정의 시간에서의 또는 그 근처에서의 현재 상태들에 기초하여 동적으로 결정될 때 그들의 2차 영역들인 상이한 위치들 또는 구역들을 가질 수 있다는 것이 또한 이해될 것이다. 이러한 2차 영역들을 결정하는 것 및 이러한 2차 영역들에 대한 데이터를 인코딩하고 디스플레이하는 것에 관한 추가적인 세부사항들이 이하에 포함된다.
적어도 일부 실시예들에 있어서, 이미지의 하나 이상의 3차 영역들이 유사하게 결정될 수 있으며, 이에 대하여 이미지 데이터가 디스플레이되지 않을 것이며 그에 따라서 적어도 일부 실시예들에 있어서 인코딩되지 않을 수 있거나 또는 다른 실시예들에 있어서 가능한 한 최저 해상도 레벨로 인코딩될 수 있다. 일 예로서, 이미지는 직사각형 형상으로 구성될 수 있지만, 예컨대, HMD 디바이스의 원형 또는 반구형 렌즈를 통해 보일 때 HDM 디바이스의 디스플레이 패널에 대하여, 그 직사각형의 원형 또는 타원형 서브세트를 사용하여 디스플레이될 수 있으며 - 그러한 경우, 그 원형 또는 타원형 서브세트 외부의 이미지의 부분들(예를 들어, 코너들 및/또는 에지들)이 3차 영역들로서 선택될 수 있다. 다른 실시예들에 있어서, 3차 영역들은, 예컨대, 시선 추적 또는 다른 기능이, (예를 들어, 360-도 이미지이지만 시청자가 오로지 단일 방향으로만 보는 이미지에 대하여) 이미지의 특정 부분들이 보이지 않을 것이라는 결정을 가능하게 하는 경우, 다른 방식들로 선택될 수 있다. 상이한 이미지들이, 예컨대, 3차 영역이 결정의 시간에서의 또는 그 근처에서의 현재 상태들에 기초하여 동적으로 결정될 수 있을 때, 그들의 3차 영역들인 상이한 위치들 또는 구역들을 가질 수 있지만, 한편 다른 이미지들 및/또는 실시예들은 임의의 이러한 3차 영역들을 포함하지 않을 수 있다는 것이 추가로 이해될 것이다. 3차 영역들을 결정하는 것 및 이러한 3차 영역들에 대한 데이터를 인코딩하고 디스플레이하는 것에 관한 추가적인 세부사항들이 이하에 포함된다.
이상에서 언급된 바와 같이, 본원에서 설명되는 기술들 중 일부 또는 전부는, 예컨대 (예를 들어, 비디오 렌더링 시스템 및/또는 HMD 디바이스 또는 하나 이상의 디스플레이 패널들을 포함하는 다른 디바이스 상에서) 하나 이상의 구성된 하드웨어 프로세서 및/또는 다른 구성된 하드웨어 회로부에 의해 구현되는, IDTM 시스템 및/또는 IDM 시스템의 실시예들의 자동화된 동작들을 통해 수행될 수 있다. 이러한 시스템 또는 디바이스의 하나 이상의 하드웨어 프로세서들 또는 다른 구성된 하드웨어 회로부는, 이하에서 추가로 논의되는 바와 같이, 예를 들어, 하나 이상의 GPU("그래픽 프로세싱 유닛")들 및/또는 CPU("중앙 프로세싱 유닛")들 및/또는 다른 마이크로제어기(microcontrollers; “MCU")들 및/또는 다른 집적 회로들을 포함할 수 있으며, 예컨대 여기에서 하드웨어 프로세서(들)는 그 위에 이미지가 디스플레이될 하나 이상의 디스플레이 패널들을 통합하는 HMD 디바이스 또는 다른 디바이스의 부분이거나 및/또는 디스플레이를 위하여 디스플레이 패널(들)로 전송될 이미지를 생성하거나 또는 달리 준비하는 컴퓨팅 시스템의 부분이다. 보다 더 일반적으로, 이러한 하드웨어 프로세서 또는 다른 구성된 하드웨어 회로부는, 비제한적으로, 하나 이상의 응용-특정 집적 회로(application-specific integrated circuit; ASIC)들, 표준 집적 회로들, (예를 들어, 적절한 명령어들을 실행함으로써, 그리고 마이크로제어기들 및/또는 내장형 제어기들을 포함하는) 제어기들, 필드-프로그램가능 게이트 어레이(field-programmable gate array; FPGA)들, 복합 프로그램가능 로직 디바이스(complex programmable logic device; CPLD)들, 디지털 신호 프로세서(digital signal processor; DSP)들, 프로그램가능 로직 제어기(programmable logic controller; PLC)들, 등을 포함할 수 있다. 이하의 도 1a에 대한 것을 포함하여, 추가적인 세부사항들이 본원의 다른 곳에 포함된다.
적어도 일부 실시예들에 있어서, 송신될 인코딩된 데이터의 크기(또는 인코딩으로부터의 크기 감소의 정도)는, 사용되는 압축의 정도 또는 레벨을 수정하는 것 및/또는 이미지의 1차 및/또는 2차 영역들의 크기 또는 형상을 수정하는 것에 기초하는 것을 포함하여, 다양한 방식들로 동적으로 수정될 수 있다. 인코딩된 데이터 크기 또는 크기 감소를 결정하기 위해 사용되는 인자들의 비제한적인 예들은, 예컨대 프로세서 요구 레벨들을 반영하기 위한 그래픽 컴퓨팅 성능 제한들 또는 목적들; 데이터 송신 대역폭 및/또는 신호 강도 제한들 또는 목적들; (예를 들어, 이미지를 분석하는 IDTM 시스템에 의해 및/또는 이미지를 생성하는 소프트웨어 프로그램에 의해 지정되는 바와 같은 신(scene) 복잡도에 기초하는; 시청자 사용자의 예상된 또는 달리 예측된 초점에 대응하는 이미지의 부분에 기초하는, 등의) 매체 콘텐트; 매체 유형(예를 들어, 인코딩될 콘텐트가, 예컨대 무손실 또는 손실 압축을 통해, 송신 대역폭에 영향을 줄 수 있는 다른 방식으로 이전에 인코딩되었는지 여부); 목적지 디스플레이 디바이스의 표시된 유형; 그래픽 제한들 및 목적들(예를 들어, 목표 이미지 해상도 또는 목표 프레임 레이트); (예컨대, 사용자의 눈 또는 시선 위치 및 초점의 하나 이상의 표시들에 기초하는) 시각적 추적 정보; 하나 이상의 미리 정의된 사용자 선호사항들, 등을 포함할 수 있다.
설명된 기술들의 적어도 일부 실시예들에서의 이점들은, 이미지 데이터 크기를 감소시킴으로써 이미지 인코딩에 대한 증가된 매체 송신 대역폭들을 처리하고 완화시키는 것, (예를 들어, 적어도 부분적으로 대응하는 감소된 이미지 데이터 크기에 기초하여) 디스플레이 패널 픽셀들을 제어하는 속도를 개선하는 것, 특정한 관심이 있는 이미지들 및/또는 디스플레이 패널들의 서브세트들을 반영하는 포비티드(foveated) 이미지 시스템들 및 다른 기술들을 개선하는 것, 등을 포함한다. 포비티드 이미지 인코딩 시스템들은 (초점 및 그 주위에서만 상세한 정보를 제공할 수 있는) 인간 시각계의 특정 측면들을 활용하지만, 종종 이에 대하여 주변 시각이 매우 민감한 시각적 아티팩트(artifact)들(예를 들어, 비디오 및 이미지 데이터 내의 모션 및 명암과 관련된 아티팩트들)을 회피하기 위하여 특수 컴퓨터 프로세싱을 사용한다. 특정 VR 및 AR 디스플레이들의 경우에 있어서, 특정 디스플레이 디바이스가, 각기 적절한 해상도를 수반하는 2개의 별개의 어드레스가능 픽셀 어레이들을 갖는 2개의 별개의 디스플레이 패널들(즉, 각각의 눈에 대한 하나)를 수반하기 때문에, 고 해상도 매체를 프로세싱하기 위한 대역폭 및 컴퓨팅 사용량 둘 모두가 악화된다. 따라서, 설명되는 기술들은, 예를 들어, 이러한 이미지 데이터를 프로세싱하기 위한 컴퓨팅 사용량을 최소화하면서 이미지 내의 시청자의 "관심이 있는 구역" 내의 해상도 및 세부사항을 보존하면서, 비디오 프레임 또는 다른 이미지의 로컬 및/또는 원격 디스플레이를 위한 송신 대역폭을 감소시키기 위해 사용될 수 있다. 추가로, 다른 디스플레이들과 함께 그리고 머리-착용 디스플레이 디바이스들 내의 렌즈들의 사용은 디스플레이 패널의 서브세트 상에 더 큰 초점 또는 해상도를 제공할 수 있으며, 그 결과, 디스플레이 패널 내의 다른 부분들에서 더 낮은 해상도 정보를 디스플레이하기 위해 이러한 기술들을 사용하는 것은 이러한 실시예들에서 이러한 기술들을 사용할 때 이점들을 추가로 제공할 수 있다.
예시적인 목적들을 위하여, 일부 실시예들이 이하에서 설명되며, 여기에서 특정 유형들의 구조들에 대한 특정 유형들의 방식들로 그리고 특정 유형들의 디바이스들을 사용하여 특정 유형들의 정보가 획득되고 사용된다. 그러나, 이러한 설명되는 기술들이 다른 실시예들에서 다른 방식들로 사용될 수 있다는 것, 및 따라서 본 발명이 제공되는 예시적인 세부사한들에 한정되지 않는다는 것이 이해될 것이다. 비-배타적인 일 예로서, 본원에서 논의되는 다양한 실시예들은 비디오 프레임들인 이미지들의 사용을 포함하지만 - 그러나, 본원에서 설명되는 다수의 예들이 편의성을 위해 "비디오 프레임"을 언급하지만, 이러한 예들을 참조하여 설명되는 기술들은, (예를 들어, 초 당 30 또는 60 또는 90 또는 180 또는 어떤 다른 수량의 프레임들의) 연속적인 다수의 비디오 프레임들, 다른 비디오 콘텐트, 사진들, 컴퓨터-생성 그래픽 콘텐트, 시각적 매체의 다른 물품들, 또는 이들의 어떤 조합의 비-배타적인 예들을 포함하여, 다양한 유형들의 하나 이상의 이미지들에 대하여 이용될 수 있음이 이해될 것이다. 다른 비-배타적인 예로서, 일부 예시된 실시예들이 특정 방식들로 상이한 특정 컬러 채널들에 대하여 상이한 압축 레벨들 및 기술들을 사용하는 설명되는 기술들의 일 실시예의 구현을 논의하지만, 다른 실시예들은 다른 방식들로 압축을 구현할 수 있다. 이에 더하여, 다양한 세부사항들이 예시적인 목적들을 위하여 도면들 및 본문에서 제공되지만, 이는 본 발명의 범위를 제한하도록 의도되지 않는다. 이에 더하여, 본원에서 사용되는 바와 같은, "픽셀"은, 그 디스플레이에 대하여 가능한 모든 컬러 값들을 제공하도록 활성화될 수 있는 디스플레이의 최소 어드레스가능 이미지 엘리먼트를 지칭한다. 다수의 경우들에 있어서, 픽셀은, 인간 시청자에 의한 인식을 위해 개별적으로 적색, 녹색, 및 청색 광을 생성하기 위한 (일부 경우들에 있어서, 별개의 "서브-픽셀들"로서) 개별적인 각각의 서브-엘리먼트들을 포함하며, 여기에서 별개의 컬러 채널들이 상이한 컬러들의 서브-픽셀들에 대한 픽셀 값들을 인코딩하기 위해 사용된다. 본원에서 사용되는 바와 같은 픽셀 "값"은 단일 픽셀의 이들의 개별적인 RGB 엘리먼트들 중 하나 이상에 대한 자극의 개별적인 레벨들에 대응하는 데이터 값을 지칭한다.
도 1a는, 본원에서 설명되는 적어도 일부 기술들을 수행하기에 적절한 로컬 컴퓨팅 시스템(120) 및 디스플레이 디바이스(180)(예를 들어, 2개의 디스플레이 패널들을 갖는 HMD)를 포함하는, 로컬 매체 렌더링(local media rendering; LMR) 시스템(110)(예를 들어, 게이밍 시스템)을 포함하는 네트워크형 환경(100a)의 개략도이다. 도 1a의 묘사된 실시예에 있어서, 로컬 컴퓨팅 시스템(120)은 (예컨대, 도 1b에 예시된 바와 같은 하나 이상의 케이블들을 통해서 유선으로 연결되거나 또는 테더링될 수 있거나 또는 그 대신에 무선으로 연결될 수 있는) 송신 링크(115)를 통해 디스플레이 디바이스(180)에 통신가능하게 연결된다. 다른 실시예들에 있어서, 로컬 컴퓨팅 시스템(120)은, HMD 디바이스(180)에 더하여든 또는 그 대신에든, 링크(116)를 통해 패널 디스플레이 디바이스(182)(예를 들어, TV, 콘솔 또는 모니터)로 디스플레이를 위한 인코딩된 이미지 데이터를 제공할 수 있으며, 디스플레이 디바이스들(180 및/또는 182)은 각각, 스케일의 정확성이 아니라 명료성을 위해 의도된 방식으로 도 1a 내에 그래픽적으로 묘사된 하나 이상의 어드레스가능 픽셀 어레이들을 포함한다(전형적인 픽셀-기반 디스플레이의 각각의 픽셀은, 예를 들어, 일반적으로 마이크로미터로 측정된다). 다양한 실시예들에 있어서, 로컬 컴퓨팅 시스템(120)은 (비제한적인 예들로서) 범용 컴퓨팅 시스템; 게이밍 콘솔; 비디오 스트림 프로세싱 디바이스; 모바일 컴퓨팅 디바이스(예를 들어, 무선 전화, PDA, 또는 다른 모바일 디바이스); VR 또는 AR 프로세싱 디바이스; 또는 다른 컴퓨팅 시스템을 포함할 수 있다.
예시된 실시예에 있어서, 로컬 컴퓨팅 시스템(120)은, 하나 이상의 일반적인 하드웨어 프로세서들(예를 들어, 중앙 프로세싱 유닛들, 또는 "CPU들")(125); 메모리(130); 다양한 I/O("입력/출력") 하드웨어 컴포넌트들(127)(예를 들어, 키보드, 마우스, 하나 이상의 게이밍 제어기들, 스피커들, 마이크, IR 송신기 및/또는 수신기, 등); 하나 이상의 특수 하드웨어 프로세서들(예를 들어, 그래픽 프로세싱 유닛들, 또는 "GPU들")(144) 및 비디오 메모리(VRAM)(148)을 포함하는 비디오 서브시스템(140); 컴퓨터-판독가능 저장부(150); 및 네트워크 연결(160)을 포함하는 컴포넌트들을 갖는다. 또한, 예시된 실시예에 있어서, IDTM(이미지 데이터 송신 관리자) 시스템(135)은, 예컨대, 이들의 설명된 기술들을 구현하는 자동화된 동작들을 수행하기 위하여 CPU(들)(125) 및/또는 GPU(들)(144)에 의해, 설명된 기술들 중 적어도 일부를 수행하기 위하여 메모리(130) 내에서 실행되며, 메모리(130)는 선택적으로 (예를 들어, 게임 프로그램과 같은, 디스플레이될 비디오 또는 다른 이미지를 생성하기 위한) 하나 이상의 다른 프로그램들(133)을 추가로 실행할 수 있다. 본원에서 설명되는 적어도 일부 기술들을 구현하기 위한 자동화된 동작들의 부분으로서, 메모리(130) 내에서 실행 중인 IDTM 시스템(135) 및/또는 다른 이미지-생성 프로그램(들)(133)은 저장부(150)의 예시적인 데이터베이스 데이터 구조체 내를 포함하여, 다양한 유형들의 데이터를 저장하거나 및/또는 검색할 수 있으며 - 이러한 예에 있어서, 사용되는 데이터는 데이터베이스(database; “DB”)(154) 내의 다양한 유형들의 이미지 데이터 정보, DB(152) 내의 다양한 유형들의 애플리케이션, DB(157) 내의 다양한 유형들의 구성 데이터를 포함할 수 있으며, 시스템 데이터 또는 다른 정보와 같은 추가적인 정보를 포함할 수 있다. 묘사된 실시예에 있어서, LMR 시스템(110)은 또한, 이미지-생성 프로그램들(133)에 더하여든 또는 그 대신에든, 디스플레이를 위해 LMR 시스템(110)에 콘텐트를 추가로 제공할 수 있는 예시적인 네트워크-액세스가능 매체 콘텐트 제공자(190)에 하나 이상의 컴퓨터 네트워크들(101) 및 네트워크 링크들(102)을 통해 통신가능하게 연결되며 - 매체 콘텐트 제공자(190)는, 각기 하나 이상의 하드웨어 프로세서들, I/O 컴포넌트들, 로컬 저장 디바이스들 및 메모리를 포함하여, 로컬 컴퓨팅 시스템(120)의 것들과 유사한 컴포넌트들을 가질 수 있는 하나 이상의 컴퓨팅 시스템들(미도시)을 포함할 수 있지만, 일부 세부사항들은 간명성을 위해 서버 컴퓨팅 시스템들에 대하여 예시되지 않는다.
IDM 시스템(184)은, 예컨대, 로컬 컴퓨팅 시스템(120)으로부터 연결(115)을 통해 인코딩된 형태로 수신되는 이미지 데이터를 수신하고 디코딩하기 위하여, 디스플레이 디바이스(180)(또는 디스플레이 디바이스(182) 상에 또는 이와 함께 구현되는 것으로서 추가로 예시된다. 도 1c는, 이하에서 추가로 논의되는 바와 같은, 이러한 이미지 디코딩 기술들을 수행하기 위한 하드웨어 회로부를 포함하는 머리-착용 디스플레이 디바이스(180)의 일 예를 예시한다. 디스플레이 디바이스(180) 및/또는 디스플레이 디바이스(182)가 도 1a의 예시된 실시예에서 로컬 컴퓨팅 디바이스(120)와는 별개의 그리고 구별되는 것으로서 도시되지만, 특정 실시예들에 있어서, 로컬 매체 렌더링 시스템(110)의 일부 또는 모든 컴포넌트들이 모바일 게이밍 디바이스, 휴대용 VR 엔터테인먼트 시스템, 등과 같은 단일 디바이스 내에 통합되거나 및/또는 하우징될 수 있다는 것이 이해될 것이며 - 이러한 실시예들에 있어서, 송신 링크들(115 및/또는 116)은, 예를 들어, 하나 이상의 시스템 버스 및/또는 비디오 버스 아키텍처들을 포함할 수 있다.
로컬 매체 렌더링 시스템에 의해 로컬적으로 수행되는 동작들을 수반하는 일 예로서, 로컬 컴퓨팅 시스템(120)은 게이밍 컴퓨팅 시스템이며 그 결과 애플리케이션 데이터(152)는 메모리(130)를 사용하여 CPU(125)를 통해 실행되는 하나 이상의 게이밍 애플리케이션들을 포한다는 것, 및 다양한 비디오 프레임 디스플레이 데이터가 예컨대, 비디오 서브시스템(140)의 GPU(144)와 함께 IDTM 시스템(135)에 의해 생성되거나 및/또는 프로세싱되는 것을 가정한다. 양질의 게이밍 경험을 제공하기 위하여 (초 당 이러한 비디오 프레임들의 약 60-180의 높은 "프레임 레이트"뿐만 아니라 각각의 비디오 프레임에 대한 높은 이미지 해상도에 대응하는) 높은 볼륨의 비디오 프레임 데이터이 로컬 컴퓨팅 시스템에 의해 생성되고, 송신 링크(115)를 통해 디스플레이 디바이스(180)에 제공된다.
컴퓨팅 시스템(120) 및 디스플레이 디바이스(180)가 단지 예시적이며 본 발명의 범위를 제한하도록 의도되지 않는다는 것이 또한 이해될 것이다. 컴퓨팅 시스템은 그 대신에 다수의 상호작용 컴퓨팅 시스템들 또는 디바이스들을 포함할 수 있으며, 인터넷과 같은 하나 이상의 네트워크들을 통해, 웹을 통해, 또는 사설 네트워크들(예를 들어, 모바일 통신 네트워크들, 등)을 통하는 것을 포함하여, 예시되지 않은 다른 디바이스들에 연결될 수 있다. 보다 더 일반적으로, 컴퓨팅 시스템 또는 다른 컴퓨팅 노드는, 비제한적으로, 데스크탑 또는 다른 컴퓨터들, 게임 시스템들, 데이터베이스 서버들, 네트워크 저장 디바이스들 및 다른 네트워크 디바이스들, PDA들, 휴대용 전화기들, 무선 전화기들, 호출기들, 전자 수첩들, 인터넷 전기기기들, (예를 들어, 셋탑 박스들 및/또는 개인용/디지털 비디오 레코더들을 사용하는) 텔레비전-기반 시스템들, 및 적절한 통신 성능들을 포함하는 다양한 다른 소비자 제품들을 포함하는, 설명되는 유형들의 기능을 수행하고 상호작용할 수 있는 하드웨어 또는 소프트웨어의 임의의 조합을 포함할 수 있다. 디스플레이 디바이스(180)는 유사하게 다양한 유형들 및 형태들의 하나 이상의 디스플레이 패널들을 갖는 하나 이상의 디바이스들을 포함할 수 있으며, 선택적으로 다양한 다른 하드웨어 및/또는 소프트웨어 컴포넌트들을 포함할 수 있다. 이에 더하여, 일부 실시예들에 있어서, IDTM 시스템(135) 및/또는 IDM 시스템(184)에 의해 제공되는 기능은 하나 이상의 컴포넌트들에 분산될 수 있으며, 일부 실시예들에 있어서, 시스템(135) 및/또는 시스템(184)의 기능 중 일부가 제공되지 않을 수 있거나 및/또는 다른 추가적인 기능이 이용가능할 수 있다. 다양한 아이템들이 사용되고 있는 동안 메모리 내에 또는 저장부 상에 저장되는 것으로서 예시되지만, 이러한 아이템들 또는 이들의 부분들은 메모리 관리 및/또는 데이터 무결성의 목적들을 위하여 메모리와 저장 디바이스들 사이에서 전송될 수 있다는 것이 또한 이해될 것이다. 따라서, 일부 실시예들에 있어서, 설명되는 기술들 중 일부 또는 전부는, 예컨대, (예를 들어, 시스템(135) 및/또는 그것의 컴포넌트들에 의해) 하나 이상의 소프트웨어 프로그램들에 의해 및/또는 (예를 들어, 하나 이상의 소프트웨어 프로그램들의 소프트웨어 명령어들의 실행에 의해 및/또는 이러한 소프트웨어 명령어들 및/또는 데이터 구조들의 저장에 의해) 데이터 구조들에 의해 구성될 때, 하나 이상의 프로세서들 또는 다른 구성된 하드웨어 회로부 및/또는 메모리 및/또는 저장부를 포함하는 하드웨어 수단에 의해 수행될 수 있다. 컴포넌트들, 시스템들 또는 데이터 구조들의 일부 또는 전부는 또한, 적절한 드라이브에 의해 또는 적절한 연결을 통해 판독될 하드 디스크 또는 플래시 드라이브 또는 다른 비-휘발성 저장 디바이스, 휘발성 또는 비-휘발성 메모리(예를 들어, RAM), 네트워크 저장 디바이스, 또는 휴대용 매체 물품(예를 들어, DVD 디스크, CD 디스크, 광 디스크, 등)과 같은, 비-일시적인 컴퓨터-판독가능 저장 매체 상에 (예를 들어, 소프트웨어 명령어들 또는 구조화된 데이터로서) 저장될 수 있다. 일부 실시예들에 있어서, 시스템들, 컴포넌트들 및 데이터 구조들은 또한, 무선-기반 및 유선/케이블-기반 매체들을 포함하는 다양한 컴퓨터-판독가능 송신 매체들 상의 생성된 데이터 신호들로서(예를 들어, 반송파 또는 다른 아날로그 또는 디지털 전파형 신호의 부분으로서) 송신될 수 있으며, (예를 들어, 단일 또는 멀티플렉스된 아날로그 신호의 부분으로서, 또는 다수의 이산 디지털 패킷들 또는 프레임들로서) 다양한 형태들을 취할 수 있다. 이러한 컴퓨터 프로그램 제품들이 또한 다른 실시예들에서 다른 형태들을 취할 수 있다. 따라서, 본 발명은 다른 컴퓨터 시스템 구성들을 가지고 실시될 수 있다.
도 1b는 예시적인 환경(100b)을 예시하며, 여기에서 설명되는 기술들 중 적어도 일부는, 인간 사용자(113)에게 가상 현실 디스플레이를 제공하기 위하여 유선 테더(145)를 통해 비디오 렌더링 컴퓨팅 시스템(142)에 테더링된 예시적인 HMD 디바이스(112)와 함께 사용되지만, 다른 실시예들에 있어서, HMD 디바이스는 무선 연결(미도시)를 통해 컴퓨팅 시스템(142)과 일부 또는 모든 상호작용들을 수행할 수도 있다. 사용자는 HMD 디바이스를 착용하고, 실제 물리적 환경과는 상이한 시뮬레이션된 환경의 컴퓨팅 시스템으로부터 HMD 디바이스를 통해 디스플레이되는 정보를 수신하며, 여기에서 컴퓨팅 시스템은, 컴퓨팅 시스템 상에서 실행 중인 게임 프로그램(미도시) 및/또는 다른 소프트웨어 프로그램(미도시)에 의해 생성되는 이미지들과 같은, 사용자에 대한 디스플레이를 위하여 HMD 디바이스로 시뮬레이션된 환경의 이미지들을 공급하는 이미지 렌더링 시스템으로서 역할한다. 이러한 예에 있어서, 사용자는 추가로 실제 물리적 환경 주위를 움직일 수 있고, 사용자가 시뮬레이션된 환경과 추가로 상호작용하는 것을 가능하게 하기 위한 하나 이상의 I/O("입력/출력") 디바이스들을 가질 수 있으며, 이러한 예에 있어서 이는 핸드-헬드 제어기(111)를 포함한다. 컴퓨팅 시스템 상의 IDTM 시스템(미도시)의 일 실시예는, 적어도 부분적으로 HMD 디바이스로 송신되는 데이터의 양을 감소시키는 것에 기초하여, 테더 케이블을 통해 HMD 디바이스로 송신될 이미지 데이터를 인코딩할 수 있으며, HMD 디바이스의 IDM 시스템(미도시)은 수신된 데이터를 디코딩하고 HMD 디바이스의 하나 이상의 디스플레이 패널 상의 정보의 디스플레이를 제어하기 위하여 이를 사용할 수 있다.
사용자가 HMD 디바이스의 로케이션을 움직이거나 및/또는 이의 배향을 변화시킴에 따라, 예컨대, 시뮬레이션된 환경의 대응하는 부분이 HMD 디바이스 상에서 사용자에게 디스플레이되는 것을 가능하게 하기 위하여 HMD 디바이스의 위치가 추적되며, 제어기들(111)은, 제어기들의 위치를 추적하는데 사용하기 위하여 (그리고 선택적으로 HDM 디바이스의 위치를 결정하거나 및/또는 검증하는 것을 보조하기 위하여 그 정보를 사용하기 위하여) 유사한 기술들을 추가로 이용할 수 있다. HMD 디바이스의 추적된 위치가 알려진 이후에, 대응하는 정보가 케이블(145)을 통해 컴퓨팅 시스템(142)으로 송신되며, 이는 사용자에게 디스플레이할 시뮬레이션된 환경의 하나 이상의 다음 이미지들을 생성하기 위해 추적된 위치 정보를 사용한다. 이에 더하여, 여기에 예시되지는 않았지만, HMD 디바이스는 사용자의 시선의 방향을 결정하기 위한 눈 및/또는 동공 추적 센서들을 더 포함할 수 있으며, 이러한 정보는 유사하게 케이블(145)을 통해 컴퓨팅 시스템(142)으로 송신될 수 있고, 그 결과 컴퓨팅 시스템 상의 IDTM 시스템의 일 실시예는, 예컨대, 이미지(들)의 1차 및/또는 2차 영역들을 결정하기 위하여, HMD 디바이스로 전송되는 이미지들의 인코딩의 부분으로서 그 정보를 사용할 수 있다. 본원의 다른 곳에서 더 상세하게 논의되는 바와 같이, 이미지의 어떤 부분들이 1차 및/또는 2차 영역으로서 사용될지를 포함하여, 데이터를 인코딩하기 위한 방법을 결정하는 것의 부분으로서 다른 인자들이 사용될 수 있다.
도 1c는, 예컨대 도 1a 내지 도 1b의 예들에서 사용될 수 있거나 또는 달리 설명되는 기술들과 함께 사용될 수 있는, 눈-근접(near-to-eye) 디스플레이 시스템들(103 및 104)의 쌍을 포함하는 HMD 디바이스(100c)의 간략화된 상단 평면도이다. 눈-근접 디스플레이 시스템들(103 및 104)은 각각 디스플레이 패널들(106 및 108)(예를 들어, OLED 또는 LCD 마이크로-디스플레이들) 및 각기 하나 이상의 광학적 렌즈들을 갖는 개별적인 광학 시스템들(110 및 112)을 포함한다. 디스플레이 시스템들(103 및 104)은, 전방 부분(116), 좌측 템플(temple)(118), 우측 템플(123) 및 사용자가 HMD 디바이스를 착용할 때 착용 사용자(124)의 안면을 터치하거나 또는 이에 인접하는 내부 표면(121)을 포함하는 프레임(114)에 장착될 수 있다. 2개의 디스플레이 시스템들(103 및 104)은, 착용자 사용자(124)의 머리(122) 상에 착용될 수 있는 안경 장치 내의 프레임(114)에 고정될 수 있다. 좌측 템플(118) 및 우측 템플(123)은 각기 사용자의 귀들(126 및 128) 위에 놓일 수 있으며, 한편 내부 표면(121)의 코 어셈블리(미도시)는 사용자의 코(129) 위에 놓일 수 있다. 프레임(114)은 2개의 광학 시스템들(110 및 112)의 각각을 각기 사용자의 눈들(132 및 134) 중 하나의 전방에 위치시키도록 성형되고 크기가 결정될 수 있다. 프레임(114)이 설명의 목적들을 위하여 안경과 유사하게 간략화된 방식으로 도시되지만, 다른 구조체들(예를 들어, 고글, 통합 머리밴드, 헬멧, 스트랩들, 등)이 사용자(124)의 머리(122) 상에 디스플레이 시스템들(103 및104)을 위치시키고 지지하기 위하여 사용될 수 있다. 도 1c의 HMD 시스템(100c)은, 예컨대 소정의 디스플레이 레이트로(예를 들어, 초 당 30, 60, 90, 180 등의 프레임 또는 이미지로) 표현되는 대응하는 비디오를 통해 사용자(124)에게 가상 현실 디스플레이를 나타낼 수 있으며, 반면 유사한 시스템의 다른 실시예들은 사용자(124)에게 유사한 방식으로 증강 현실 디스플레이를 나타낼 수 있다. 디스플레이들(106 및 108)의 각각은, 각기 사용자(124)의 눈들(132 및 134) 상으로 개별적인 광학 시스템들(110 및 112)을 통해 전달되며 이에 의해 포커싱되는 광을 생성할 수 있다. 여기에 예시되지는 않지만, 눈들의 각각은 전형적으로 광이 이를 통과해 눈으로 이동하는 동공 개구를 포함할 것이며, 여기에서 사용자의 동공에 진입하는 광이 이미지들 및/또는 비디오로서 사용자(124)에게 보인다.
예시된 실시예에 있어서, HMD 디바이스(100)는, 설명되는 기술들의 부분으로서 개시된 실시예들에 의해 사용될 수 있는 하드웨어 센서들 및 추가적인 컴포넌트들을 더 포함한다. 이러한 예에 있어서, 하드웨어 센서들은 (예를 들어, 하나 이상의 IMU 유닛들의 부분으로서) 하나 이상의 가속도계들 및/또는 자이로스코프들(198)을 포함하며 - 본원의 다른 곳에서 더 상세하게 논의되는 바와 같이, 가속도계(들) 및/또는 자이로스코프들로부터의 값들은 HMD 디바이스의 배향을 로컬적으로 결정하기 위하여 사용될 수 있다. 이에 더하여, HMD 디바이스(100c)는 전방 부분(116)의 외부 상의 카메라(들)(185)와 같은 하나 이상의 전향 카메라들을 포함할 수 있으며, 이들의 정보는 (예컨대 AR 기능을 제공하기 위하여) HMD 디바이스의 전방의 실제 물리적 환경의 이미지들을 캡처하기 위해 사용될 수 있다. 예시된 실시예에 있어서, 하드웨어 센서들은, 예컨대 광학 렌즈 시스템들(110 및 112) 근처에서 내부 표면(121) 상에 위치된 사용자의 동공/시선을 추적하기 위한 하나 이상의 센서들 또는 다른 컴포넌트들(195)을 더 포함하지만, 다른 실시예들에 있어서, 이러한 센서들은 각기 광학 시스템(110 및/또는 112)을 통해 동공(들)/시선을 추적하기 위하여 디스플레이 패널들(106 및/또는 108) 상에 또는 그 근처에 존재할 수 있고 - 본원의 다른 곳에서 더 상세하게 논의되는 바와 같이, 컴포넌트들(195)로부터의 정보는, (예를 들어, 이미지의 1차 영역을 선택함에 있어서 사용하기 위하여) 사용자의 현재 초점인 이미지의 일 부분을 결정하기 위해서 뿐만 아니라, 예컨대 HMD 디바이스의 위치(예를 들어, 로케이션 및 배향)에 대한 다른 정보와 함께 사용자의 시선의 방향에 기초하여 사용자에게 디스플레이하기 위한 시뮬레이션된 환경의 특정 뷰를 식별하기 위해 사용될 수 있다. 추가로, HMD 디바이스(100)는 다음 중 하나 이상과 같은 다른 컴포넌트들(175)을 포함할 수 있다: 본원의 다른 곳에서 더 상세하게 논의되는 바와 같은, 본원의 다른 곳에서 논의되는 바와 같은 IDM 시스템의 일 실시예를 구현하기 위한 구성된 하드웨어 회로부(미도시); 예컨대 비디오 렌더링 시스템(미도시) 또는 다른 소스로부터 케이블형 테더 및/또는 무선 연결을 통해 디스플레이를 위한 이미지 데이터를 수신하기 위한 유선 및/또는 무선 입력; 내부 저장부; 하나 이사의 배터리들; 외부 베이스 스테이션들과 상호작용하기 위한 위치 추적 디바이스들; 등. 다른 실시예들은 컴포넌트들(175, 185, 198 및/또는 195) 중 하나 이상을 포함하지 않을 수 있다. 여기에 예시되지는 않았지만, 이러한 HMD의 일부 실시예들은, 예컨대 다양한 다른 유형들의 움직임들 및 사용자의 신체의 위치, 등을 추적하기 위한 다양한 추가적인 내부 및/또는 외부 센서들을 포함할 수 있다.
일부 실시예들에 있어서 설명되는 기술들이 도 1c에 예시된 것과 유사한 디스플레이 시스템과 함께 사용될 수 있지만, 다른 실시예들에 있어서, 단일 광학적 렌즈 및 디스플레이 디바이스를 이용하거나 또는 다수의 이러한 광학적 렌즈들 및 디스플레이 디바이스들을 이용하는 것을 포함하여 다른 유형들의 디스플레이 시스템들이 사용될 수 있다. 다른 이러한 디바이스들의 비-배타적인 예들은 카메라들, 텔레스코프들, 마이크스코프들, 쌍안경들, 스팟팅 스코프(spotting scope)들, 서베잉 스코프(surveying scope)들, 등을 포함한다. 이에 더하여, 설명되는 기술들은, 1명 이상의 사용자들이 하나 이상의 광학적 렌즈를 통해 보는 이미지들을 형성하기 위하여 광을 방출하는 매우 다양한 디스플레이 패널들 또는 다른 디스플레이 디바이스들과 함께 사용될 수 있다. 다른 실시예들에 있어서, 사용자는, 예컨대 부분적으로 또는 전체적으로 다른 광원으로부터의 광을 반사하는 표면 상의, 디스플레이 패널과는 다른 방식으로 생성되는 하나 이상의 이미지들을 하나 이상의 광학적 렌즈를 통해 볼 수 있다.
도 2a는 본원에서 개시되는 일 실시예에 따른 이미지들을 디스플레이하는데 사용하기 위한 디스플레이 패널의 일 부분을 예시한다. 특히, 도 2a는 머리-착용 디스플레이 디바이스(295)의 하나의 디스플레이 패널을 이용한 설명되는 기술들의 사용을 도시하며 - 이러한 예에 있어서, 디스플레이 패널은 1차 영역(250), 2차 영역들(254(영역들(254a 및 254b)을 포함함) 및 256(영역들(256a 및 256b)을 포함함), 및 3차 영역들(영역들(266a, 266b, 266c 및 266d)을 포함함)로 인코딩된 이미지에 대한 픽셀 값들을 디스플레이하기 위해 사용되는 픽셀 어레이(미도시)를 포함한다. 2차 영역들(256a 및 256b)은 각기 1차 영역 과 픽셀 어레이의 상단 및 하부 에지들 사이에 위치되며, 2차 영역들(254a 및 254b)은 각기 1차 영역 과 픽셀 어레이의 우측 및 좌측 에지들 사이에 위치되고, 3차 영역들(266a-d)은 각각 픽셀 어레이 내에 위치되며 2차 영역들(254 및 256)의 4개의 접합부들을 묘사한다. 다른 실시예들에 있어서, 영역들(266a-d) 중 일부 또는 전부는 그 대신에 본원의 다른 곳에서 논의되는 바와 같이 2차 영역들로서 처리될 수 있다.
도 2b는 도 2a의 예를 계속하며, 이하에서 추가로 논의되는 바와 같이, 1차 영역(250) 내의 이미지 데이터는 이것이 최고 제 1 해상도(예를 들어, 완전 해상도(full resolution))로 디스플레이되는 것을 가능하게 하는 방식으로 인코딩되고 송신될 수 있으며, 2차 영역들 내의 이미지 데이터는 이것이 하나 이상의 더 낮은 해상도들로 디스플레이되는 것을 가능하게 하는 방식으로 인코딩되고 송신될 수 있고(예를 들어, 여기에서 2차 영역들 내의 녹색 컬러 데이터는 제 1 해상도보다 더 낮은 제 2 해상도로 디스플레이되며, 2차 영역들 내의 적색 및 청색 컬러 데이터는 제 2 해상도보다 더 낮은 하나 이상의 제 3 해상도들로 디스플레이됨), 3차 영역들 내의 이미지 데이터는 이것이 최저 해상도로 디스플레이되는 것(또는 전해 디스플레이되지 않는 것)을 가능하게 하는 방식으로 인코딩되고 송신될 수 있다. 이미지가, 때때로 HDR 지수(exponent) 데이터로도 지칭되는, (예를 들어, 각기 적색, 녹색 및 청색 서브-픽셀들을 갖는 연관된 픽셀의 강도 또는 밝기를 제어하기 위한) HDR 휘도 값들을 포함하는 HDR 이미지인 실시예들 및 상황들에 있어서, HDR 휘도 값들 중 적어도 일부(예를 들어, 2차 영역들 내의 픽셀들과 연관된 것들)는 (예를 들어, 이것이, 하나 이상의 제 3 해상도들보다 더 낮은 제 4 해상도에 대응하는 레벨로 디코딩된 이후에 디스플레이 될 수 있도록) 컬러 데이터의 일부 또는 전부의 압축 레벨보다 더 높은 압축 레벨로 인코딩되고 송신될 수 있다.
구체적으로, 도 2b는, IDTM 시스템이 데이터를 인코딩하기 이전의 대응하는 이미지 데이터 및 인코딩 이후의 결과적인 정보뿐만 아니라 3차 영역(266c) 내의 추가적인 픽셀 어레이(212)를 예시할 뿐만 아니라, 2차 영역(254b) 내의 2개의 픽셀 어레이들(210 및 211)을 예시한다. 픽셀 어레이(211)는 녹색 컬러 채널에 대한 이미지 데이터를 나타내며, 픽셀 어레이(210)는 적색 또는 청색 컬러 채널에 대한 이미지를 나타내며 - 2개의 픽셀 어레이들(210 및 211)은 2차 영역(254b) 내의 이미지의 별개의 부분들에 대응하는 것으로서 예시되지만, 이들은 그 대신에 이미지의 동일한 부분을 나타낼 수 있지만 그 단일 부분에 대하여 상이한 개별적인 컬러 채널을 사용할 수 있다.
적색 또는 청색 컬러 채널에 대한 이미지 데이터를 나타내는 픽셀 어레이(210)에 대하여, 예시(210b)는, 별개로 인코딩될 적은 수의 추가적인 주변 픽셀들(미도시)뿐만 아니라, 2차 영역들 내의 적색 또는 청색 컬러 채널에 특정된 해상도로 인코딩될 8x8 픽셀 어레이(210)의 확대된 디스플레이를 제공한다. 픽셀들의 각각에 대하여 예시적인 값들을 예시하기 위하여 확대된 형태(225)로 도시된 픽셀 어레이(210)의 상부 우측 4x2(4개의 컬럼들 및 2개의 로우들) 부분을 고려하도록 한다. 예를 들어, 픽셀 어레이(210)가, 각각의 픽셀이 그 픽셀을 디스플레이 하기 위한 적색의 강도를 나타내는 0 내지 255 사이의 값을 갖는 적색 컬러 채널에 대응하는 경우, 4x2 어레이(225) 내의 예시적인 적색 픽셀 값들은 040로부터 200까지 변화하며, 여기에서 더 큰 픽셀 어레이(210) 내의 다른 픽셀 값들(미도시)은 0으로부터 255까지의 범위의 다른 값들을 갖는다.
4x4 인코딩된 픽셀 어레이(215)는, 4개의 가능한 픽셀 값들을 선택하고 인코딩된 픽셀 어레이(215) 내의 각각의 픽셀 값을 0-3의 대응하는 매핑된 값으로 표현함으로써, 인코딩되는 픽셀 값들의 양을 4배만큼 감소시키기 위한 그리고 뿐만 아니라 인코딩될 컬러 데이터의 양을 감소시키기 위한, 8x8 픽셀 어레이(210)의 압축되고 인코딩된 버전을 나타낸다. 인코딩의 부분으로서, 8x8 픽셀 어레이(210) 내의 각각의 2x2 픽셀 서브-어레이는 먼저, 4개의 가능한 픽셀 값들 중 하나인 단일 픽셀 값으로 감소되며, 그런 다음 대응하는 매핑된 값이 인코딩된 픽셀 어레이(215) 내에 이것을 표현하기 위해 사용된다. 예를 들어, “042”, “074”, “040” 및 “056”의 예시적인 값들을 갖는 2x2 픽셀 서브-어레이(225a)를 고려하도록 한다. 픽셀 서브-어레이(225a)에 대한 단일 대표(representative) 픽셀 값은, 다운 샘플링, 평균화, 서브샘플링, 4개의 값들 중 하나의 값을 픽(pick)하는 것, 콘볼루션(convolution) 또는 다른 이미지 프로세싱 기술을 사용하는 것, 등과 같은 다양한 방식들로 선택될 수 있다. 이러한 예에 있어서, 2x2 픽셀 서브-어레이(225a)에 대한 대표 픽셀 값은 53의 픽셀 값에 도달하기 위하여 225a 내의 실제 픽셀 값들을 평균화함으로써 픽되며, “200”, “150”, “245” 및 “141”의 예시적인 픽셀 값들을 갖는 제 2 2x2 픽셀 서브-어레이(225b)에 대한 평균 대표 픽셀 값이 유사하게 184로 결정된다. 인코딩되는 이미지 데이터의 크기를 추가로 감소시키기 위하여, 정의된 수의 가능한 픽셀 값들이 결정되며, 각각의 2x2 픽셀 서브-어레이에 대한 평균 대표 픽셀 값은 추가로 최근접 가능한 픽셀 값으로 반올림된다. 이러한 예에 있어서, 가능한 픽셀 값들의 수는 4로 선택되며, 이는, 8x8 픽셀 어레이(210) 내의 최소 실제 픽셀 값, 8x8 픽셀 어레이(210) 내의 최대 실제 픽셀 값을 취하는 것, 및 최소 및 최소 값들 사이의 2개의 중간 픽셀 값들을 보간하는 것에 의해 결정된다. 정보(220)에서 도시되는 바와 같이, 이러한 예에 있어서 8x8 픽셀 어레이(210)에 대한 매트릭스를 인코딩하는 것은 (예를 들어, 2x2 픽셀 서브-어레이(225a)로부터) 최소 값으로서 “040”, (예를 들어, 서브-어레이들(225a 및 225b)과는 다른 8x8 픽셀 어레이(210)의 부분으로부터) 최대 값으로서 “250”, 및 2개의 보간된 중간 값들로서 “110” 및 “180”을 야기하며 - 그런 다음, 이러한 4개의 가능한 값들은 각기 최소 가능한 픽셀 값으로부터 최대 가능한 픽셀 값까지 값들 0, 1, 2 및 3에 할당되고, 이는 단지 2 비트들만을 가지고 4x4 인코딩된 픽셀 어레이(215) 내에 표현되는 각각의 평균 대표 픽셀 값을 야기하며, 그 결과 인코딩된 픽셀 어레이(215)에 대한 모든 픽셀 값들은 32 비트로 저장될 수 있다. 이러한 예에 있어서, 제 1 2x2 픽셀 서브-어레이(225a)에 대한 53의 평균 대표 픽셀 값은 최대 값 40으로 반올림되고 (제 1 로우의 제 3 컬럼에 도시된 바와 같은) 인코딩된 픽셀 어레이(215) 내에 "0"을 가지고 인코딩되며, 제 2 2x2 픽셀 서브-어레이(225b)에 대한 184의 평균 대표 픽셀 값은 보간된 값 180으로 반올림되고 (제 1 로우의 제 4 컬럼에 도시된 바와 같은) 인코딩된 픽셀 어레이(215) 내에 "2"를 가지고 인코딩된다. 4x4 인코딩된 픽셀 어레이(215) 내의 다른 픽셀 값들의 각각이 유사하게 결정되며, 이러한 값들은, (예를 들어, 실제 최소 및 최대 값들을 저장함으로써) 디코딩의 시간에서 인코딩된 값들에 대응하는 4개의 가능한 픽셀 값들을 재구성하는데 사용하기 위한 정보와 함께 결과적인 수정된 인코딩 이미지 데이터 내에 저장된다. 그런 다음, 이러한 프로세스는 2차 영역들 내의 각각의 8x8 픽셀 어레이에 대하여 반복되며, 이는 추가로 이러한 예에 있어서 적색 및 청색 컬러 채널들의 각각에 대하여 독립적으로 이루어진다.
대응하는 인코딩된 이미지 파일이 추후에 디코딩되고 디스플레이될 때, 8x8 픽셀 어레이(210)의 적색 또는 청색 컬러 채널에 대한 4x4 인코딩된 픽셀 어레이(215)는, 예컨대, 매핑된 값들 0-3의 각각을 다시 4개의 가능한 픽셀 값들 040, 110, 180 또는 250 중 하나로 변환하고 그런 다음 디코딩된 이미지 내의 픽셀들의 2x2 블록을 그 가능한 픽셀 값으로 설정함으로써, 디스플레이될 새로운 8x8 픽셀 어레이를 생성하기 위해 사용된다. 2차 영역들 내의 적색 또는 청색 컬러 채널들에 대하여 인코딩되고 압축된 이미지 내의 각각의 다른 4x4 인코딩된 픽셀 어레이에 대해 유사한 프로세스가 수행된다. 따라서, 4x4 인코딩된 픽셀 어레이(215)는 적색 또는 청색 컬러 채널들에 대한 8x8 픽셀 어레이(210)의 예시적인 인코딩된 버전을 예시하며, 이는, 디코딩되고 디스플레이될 때 원래의 8x8 픽셀 어레이(210)보다 더 낮춰진 해상도를 야기한다.
8x8 픽셀 어레이(210) 및 4x4 인코딩된 픽셀 어레이(215)에 대하여 유사한 방식으로, 4x4 인코딩된 픽셀 어레이(216)는 녹색 컬러 채널에 대하여 8x8 픽셀 어레이(211)를 사용하여 생성된 예시적인 인코딩된 버전을 예시지만 - 그러나, 픽셀 어레이들(210 및 215)과는 대조적으로, 4x4 인코딩된 픽셀 어레이(216)는 단지 8x8 픽셀 어레이(211)의 대응하는 4x4 픽셀 서브-어레이만을 나타내며, 그 결과 전체 8x8 픽셀 어레이(211)는 (이러한 예에서 8x8 픽셀 어레이(211)에 대한 다른 3개의 4x4 인코딩된 픽셀 어레이들과 함께) 4개의 이러한 4x4 인코딩된 픽셀 어레이들에 의해 표현된다. 이러한 방식으로, 8x8 픽셀 어레이(211)에 대한 4개의 이러한 4x4 인코딩된 픽셀 어레이들은 인코딩되고 압축된 이미지 파일 내의 픽셀 값들의 총 수를 감소시키는 것이 아니라, 단지 4x4 인코딩된 픽셀 어레이들 내의 대응하는 값들 0-3에 매핑된 4개의 가능한 픽셀 값들만을 사용함으로써 인코딩되는 컬러 데이터의 양을 감소시킨다. 이러한 예에 있어서, 정보(221)는 값 "0"에 매핑된 최소 값으로서 “005”, "3"에 매핑된 최대 값으로서 “245”, 및, 각기 값들 “1” 및 “2”에 매핑된 2개의 보간된 중간 값들로서 “085” 및 “165”을 갖는 8x8 픽셀 어레이(211)에 대한 인코딩된 매트릭스를 예시한다. 8x8 픽셀 어레이(211)에 대한 4개의 4x4 인코딩된 픽셀 어레이들 중 하나만이 도시되지만, 이러한 프로세스는 8x8 픽셀 어레이(211)의 다른 3개의 대응하는 4x4 픽셀 서브-어레이들의 각각에 대하여 반복되며, 그런 다음 추가로 녹색 컬러 채널에 대하여 2차 영역들 내의 각각의 8x8 픽셀 어레이에 대하여 반복된다.
대응하는 인코딩된 이미지 파일이 추후에 디코딩되고 디스플레이될 때, 녹색 컬러 채널에 대한 8x8 픽셀 어레이(211)의 대응하는 4x4 픽셀 서브-어레이에 대한 4x4 인코딩된 픽셀 어레이(216)는, 예컨대, 매핑된 값들 0-3의 각각의 다시 4개의 가능한 픽셀 값들 005, 085, 165 또는 245 중 하나로 변환하고, 그런 다음 디코딩된 이미지 내의 단일 픽셀을 그 가능한 픽셀 값으로 설정함으로써, 디스플레이될 새로운 4x4 픽셀 어레이를 생성하기 위해 사용된다. 2차 영역들 내의 녹색 컬러 채널들에 대하여 인코딩되고 압축된 이미지 파일 내의 각각의 다른 4x4 인코딩된 픽셀 어레이에 대해 유사한 프로세스가 수행된다. 따라서, 4x4 인코딩된 픽셀 어레이(216)는 녹색 컬러 채널에 대한 8x8 픽셀 어레이(211)의 대응하는 4x4 픽셀 서브-어레이의 예시적인 인코딩된 버전을 예시하며, 이는, 디코딩되고 디스플레이될 때 8x8 픽셀 어레이(211)의 원래의 대응하는 4x4 픽셀 서브-어레이보다 더 낮춰진 해상도이지만, (인코딩된 픽셀 값들의 수량이 원본에 비하여 감소되지 않았기 때문에) 2차 영역들에 대한 적색 및 청색 컬러 채널들의 해상도 레벨보다 더 높은 해상도 레벨을 야기한다.
4x4 인코딩된 픽셀 어레이(217)는 추가로, 3차 영역들 내의 픽셀 값들이 데이터의 크기를 감소시키기 위하여 인코딩될 수 있는 방법에 대한 일 예를 나타내지만, 다른 실시예들에 있어서, 이러한 3차 영역들로부터의 데이터는 전체적으로 폐기되고 인코딩되고 압축된 이미지 내에 포함되지 않을 수 있다. 이러한 예에 있어서, 3차 영역(266c)의 픽셀 어레이(212)로부터의 대표 4x4 픽셀 어레이(227)가 도시되며, 여기에서 변화하는 실제 픽셀들 값들은 “N”, “L”, “J” 및 “K로서 추상적으로 표현되지만 그 각각이 적색, 청색 또는 녹색 컬러 채널들 중 임의의 것에 대하여 0-255 범위 내의 값을 나타내며 - 실제 픽셀 값들이 폐기되고 각각이 4x4 인코딩된 픽셀 어레이(217) 내의 "0"으로 변화되며, 그 결과 어떠한 추가적인 컬러 데이터도 인코딩되고 압축된 이미지 내에 저장될 필요가 없다. 3차 영역들에 대하여 단지 하나의 4x4 인코딩된 픽셀 어레이만이 도시되지만, 이러한 프로세스는 적색, 청색 및 녹색 컬러 채널들의 각각에 대하여 그리고 3차 영역(들) 전체에 걸쳐 반복될 수 있다. 대응하는 인코딩된 이미지 파일이 추후에 디코딩되고 디스플레이될 때, 4x4 인코딩된 픽셀 어레이(217)로부터의 데이터가 폐기되고 디스플레이 패널 내의 대응하는 픽셀들을 설정하는데 사용되지 않을 수 있거나, 또는 이러한 픽셀들이 모두 0의 값으로 설정될 수 있다.
도 2b의 예가 2차 영역들 내와 같은 적어도 일부 영역들 내의 상이한 컬러들에 대한 그리고 적색 또는 청색 컬러 데이터보다 더 높은 해상도로 사용하기 위하여 인코딩될 녹색 컬러 데이터에 대한 상이한 인코딩들 및 해상도들을 수행하는 것을 논의하지만, 다른 실시예들이 상이한 유형들의 인코딩들 및/또는 해상도들을 사용할 수 있음이 이해될 것이다. 일부 실시예들에 있어서, 적색, 녹색 및 청색 컬러 데이터는 각기 동일한 인코딩 및 해상도를 가질 수 있으며, 다른 실시예들에 있어서, 적색, 녹색 및 청색 컬러 데이터가 각기 상이한 인코딩들 및 해상도들을 가질 수 있고 - 추가로, 이러한 예에 있어서, 녹색 컬러 데이터가 더 높은 해상도로 인코딩되지만, 반면, 다른 실시예들에 있어서, 적색 및/또는 청색 컬러 데이터가 녹색 컬러 데이터보다 더 높은 해상도로 인코딩될 수 있다. 따라서, 본원의 다른 곳에서 추가로 논의되는 바와 같이, 다른 유형들의 인코딩들 및 해상도들이 고려된다.
도 2b에 예시되지 않았지만, 인코딩되는 이미지는, 예를 들어, 각각의 픽셀이 적색, 녹색 및 청색 서브-픽셀들의 각각에 대하여 하나의 바이트를 사용하여 (총 4 바이트에 대하여) 공유된 HDR 지수에 대하여 하나의 바이트를 사용하여 표현되는 RGBE 포맷의 이미지와 같은 HDR 휘도 값들을 또한 포함하는 HDR 이미지일 수 있다. HDR 지수 휘도 값들은 각기, 예를 들어, 0 내지 100 사이의 값을 가질 수 있으며 어레이 내에 저장될 수 있으며, 여기에서 각각의 HDR 지수 휘도 값은 연관된 픽셀에 대한 대응하는 RGB 서브-픽셀 값들과 연관된다. 이러한 HDR 지수 휘도 값들을 인코딩하는 일 예로서, 픽셀 어레이(210)와 연관되지만, 그 대신에, 각기 어레이(210) 내의 픽셀 값들 중 하나에 (그리고 2개의 다른 컬러 채널들에 대하여 2개의 다른 이러한 8x8 픽셀 어레이들 내의 대응하는 픽셀들에) 대응하는 64 HDR 지수 휘도 값들을 포함하는 8x8 어레이를 고려하도록 한다. 그러나, 이러한 예에 있어서, 8x8 픽셀 어레이(210)가 4x4 인코딩된 픽셀 어레이(215)로 압축되며 (그에 따라서 픽셀 값들의 양을 4배만큼 감소시키지만), HDR 지수 휘도 값들의 예시적인 8x8 어레이는, 적어도 일부 실시예들에 있어서, 2x2 인코딩된 HDR 휘도 값 어레이로 압축될 수 있다(그에 따라서 HDR 휘도 값들의 양을 16배만큼 감소시킬 수 있다). 압축이 다양한 실시예들에 있어서 다양한 방식들로 수행될 수 있지만, 적어도 일부 실시예들에 있어서, 압축은 어레이(210)의 컬러 픽셀 값들에 대하여 설명된 것과 유사한 방식으로 수행된다. 예를 들어, HDR 지수 휘도 값들의 예시적인 8x8 어레이에 대하여, (4x4 인코딩된 픽셀 어레이(215)와 유사하게) 2x2 인코딩된 HDR 지수 휘도 값 어레이의 초기 값들은, 예컨대, 평균화에 의해 또는 이상에서 언급된 다양한 다른 기술들 중 하나에 의해, 예시적인 8x8 HDR 지수 휘도 값 어레이의 4개의 4x4 서브-어레이들의 각각을 단일 HDR 지수 휘도 값으로 변환함으로써 결정될 수 있다. 일부 이러한 실시예들에 있어서, 정보(220)의 인코딩 매트릭스와 유사한 인코딩 매트릭스는 (예를 들어, 예시적인 8x8 HDR 지수 휘도 값 어레이 내의 최저 및 최고 HDR 지수 휘도 값들을 결정하고, 선택적으로 이들 사이의 2개의 중간 HDR 지수 휘도 값들을 보간하고, 2개 또는 4개의 가능한 HDR 지수 휘도 값들을 0 및 1 또는 0-3과 같은 인코딩 값들에 할당하며, 2x2 인코딩된 HDR 지수 휘도 값 어레이에 대한 초기 값들의 각각을 2개 또는 4개의 가능한 HDR 지수 휘도 값들 중 가장 가까운 하나에 대한 인코딩 값으로 대체함으로써) 2x2 인코딩된 HDR 지수 휘도 값 어레이에 대한 초기 값들을 하나 이상의 가능한 HDR 지수 휘도 값들의 서브세트로부터의 값들로 대체하기 위하여 생성되고 사용될 수 있다. 이러한 프로세스는 그런 다음, 적어도 2차 영역들 내의 (그리고 일부 실시예들에 있어서 마찬가지로 1차 영역(들) 내의) 각각의 8x8 HDR 지수 휘도 값 어레이에 대해 반복된다. 따라서, 결과적인 2x2 인코딩된 HDR 지수 휘도 어레이는 4x4 인코딩된 픽셀 어레이들(215 및 216)의 압축보다 더 많은 압축을 사용하여 인코딩되며, 이는 디코딩되고 디스플레이될 때 더 낮은 해상도를 야기한다.
도 2c는 도 2a 내지 도 2b의 예들을 계속하며, 특히, 예컨대, 도 2a에 표현된 상이한 이미지에 대한, 1차, 2차 및 3차 영역들의 대안적인 인코딩을 예시한다. 구체적으로, 도 2c의 1차 영역(270)은, 예컨대, 착용 사용자의 실제 또는 예상된 시선을 반영하기 위하여 더 이상 중심화되지 않으며, 2차 및 3차 영역들이 그에 따라서 중심으로부터 오프셋될 뿐만 아니라 상이한 크기들 및 형상들이다. 이에 더하여, 도 2c의 원(254b)은, 예컨대, 사용 중인 광학 시스템에 기인하여, 시청 사용자에게 가시적일 수 있는 디스플레이 패널의 서브세트를 나타낸다. 이러한 예에 있어서, 원(254b)이 영역들(288a, 288c 또는 254a) 중 어떤 것도 포함하지 않기 때문에, 이러한 영역들은 이러한 이미지에 대하여 3차 영역들로서 동적으로 선택되며, (도 2a의 영역들(266a-266d)의 것과 유사한 방식으로) 인코딩된 임의의 데이터를 갖지 않을 수 있다. 다른 영역들(286a-286c, 276a-b 및 254b)은 1차 영역(270) 외부에 있지만, 적어도 부분적으로 원(254b) 내에서 가시적이며, 그에 따라서 이러한 이미지에 대하여 2차 영역들로서 동적으로 선택된다. 일단 1차, 2차 및 3차 영역들이 결정되면, 이들 내의 픽셀 값들은 도 2b에 대하여 논의된 것과 유사한 방식으로 인코딩되고 디코딩될 수 있거나, 또는, 그 대신에 상이한 방식으로 인코딩될 수 있다.
도 2a 내지 도 2c의 세부사항들이 오로지 예시적인 목적들만을 위해 제공된다는 것, 및 다양한 다른 유형들의 인코딩 및 디코딩 기법들이 사용될 수 있다는 것뿐만 아니라, 원래의 픽셀 어레이로부터 인코딩된 픽셀 어레이로의 감소의 양 및 가능한 픽셀 값들의 수를 변화시키는 것이 데이터 크기 감소 및 대응하는 해상도 감소의 상이한 양들을 야기할 수 있다는 것이 이해될 것이다. 일 예로서, HDR 지수 데이터는, RGB 컬러 채널들 중 일부 또는 전부에 대한 감소의 양과는 상이한 감소의 양으로 포함될 수 있다. 이에 더하여, 도 2a 내지 도 2c의 예시된 예들은 대표 비디오 프레임의 직사각형 파티션들로 구성된 이미지 분할 배열들을 사용한다. 제시되는 기술들의 의도된 범위로부터 벗어나지 않고 다양한 대안적인 파티션 형성들이 사용될 수 있다는 것이 이해될 것이다. 예를 들어, 특정 실시예들에 있어서, 원형 또는 타원형 1차 영역들이 사용될 수 있으며, 여기에서 디스플레이 패널 어레이의 나머지 부분은, 1차 영역으로부터의, 디스플레이되는 픽셀 어레이의 하나 이상의 에지들로부터의, 또는 다른 방식들로 상대적인 거리에 따라 하나 이상의 2차 영역들로 분할된다.
도 3은 이미지 데이터 송신 관리자 루틴(300)의 예시적인 실시예의 순서도이다. 루틴(300)은, 예컨대, 이미지의 주변 영역에서의 컬러-특정 압축의 사용을 통해 디스플레이 패널로의 이미지 데이터 송신의 대역폭을 감소시키기 위하여 이미지 데이터를 인코딩하기 위해, 예를 들어, 도 2a 내지 도 2c에 대하여 그리고 본원의 다른 곳에서 논의되는 바와 같이 이미지 데이터를 인코딩하기 위한 동작들을 수행하는 시스템 및/또는 도 1a의 이미지 데이터 송신 관리자 시스템(135)에 의해 수행될 수 있다. 루틴(300)의 예시된 실시예가 한 번에 단일 이미지에 대한 동작들을 수행하는 것을 논의하지만, 루틴(300)의 동작들이 다수의 이미지들의 시퀀스(예를 들어, 다수의 연속적인 비디오 프레임들)에 적용될 수 있다는 것이 이해될 것이다. 루틴의 예시된 실시예가 적절한 바와 같이 소프트웨어 및/또는 하드웨어로 구현될 수 있으며, 예를 들어, 이미지 데이터를 연관된 HMD 디바이스로 전송하기 위하여 컴퓨팅 시스템 상에서 동작하는 시스템에 의해 수행될 수 있다는 것이 또한 이해될 것이다.
루틴(300)의 예시된 실시예는 블록(305)에서 시작하며, 여기에서 루틴은 이미지 데이터 및 그 이미지 데이터를 디스플레이하는 디스플레이 패널에 대한 정보를 획득한다. 블록(310)에서, 루틴은, 예컨대, 블록(305)에서 사용하기 위한 배열에 대한 정보를 수신함으로써, 또는 그 대신에 현재 콘텍스트(context)(예를 들어, 시청자의 시선 추적, 이미지를 생성하거나 또는 달리 제공하는 프로그램으로부터의 정보, 등과 같은 강조의 이미지의 일 부분에 대한 수신된 정보)에 기초하여 사용하기 위한 구조를 동적으로 결정함으로써, 데이터를 인코딩하기 위해 사용하기 위한 영역들(예를 들어, 모든 이미지들에 대하여 사용하기 위한 고정된 구조들)을 식별한다. 특히, 블록(310)에서 루틴은 이미지의 적어도 하나의 1차 영역 및 1차 영역 외부의 적어도 하나의 2차 영역을 식별할 뿐만 아니라, 선택적으로 하나 이상의 3차 영역들을 식별한다. 블록(315)에서, 그런 다음, 루틴은, 원본의 인코딩되고 압축된 버전인 이미지의 수정된 카피의 생성을 개시하며, 선택적으로, 인코딩될 원래의 이미지의 생성과 동시에 또는 그 원래의 이미지의 부분들을 수신하는 것과 동시에 인코딩된 압축 버전의 생성을 수행한다.
블록(315) 이후에, 루틴은 인코딩되고 압축된 이미지 파일의 생성을 완료하기 위하여 블록들(320 내지 385)의 루프를 수행하도록 진행된다. 블록(320)에서, 루틴은, 도 2b에 대하여 논의된 바와 같은 이미지 픽셀 값들의 8x8 블록과 같은 컬러 채널에 대한 이미지 픽셀 값들의 블록을 수신한다. 블록(325)에서, 그런 다음 루틴은 블록이 속하는 영역의 유형을 결정하며, 각기 1차, 2차, 또는 3차의 영역 유형들에 대하여 블록들(330, 340 또는 335)로 계속된다. 1차 영역 블록에 대하여 블록(330)에서, 루틴은 생성되는 인코딩되고 압축된 카피 내에 이미지 픽셀 값들의 전부를 유지하지만, 다른 실시예들에 있어서는, 무손실 압축 기법을 사용하여 픽셀 값들을 압축할 수도 있다. 3차 영역 블록에 대하여 블록(335)에서, 루틴은, 예컨대 도 2b에 예시된 것과 유사한 방식으로 모든 컬러 데이터를 제거하기 위하여 또는 그 대신에 생성되는 인코딩되고 압축된 카피에 대한 다른 실시예들에서 영역 픽셀 값들을 전체적으로 폐기하기 위하여, 생성되는 인코딩되고 압축된 카피로부터 대응하는 이미지 픽셀 값 정보 중 일부 또는 전부를 제거한다.
2차 영역 블록에 대하여 블록(340)에서, 루틴은, 블록(340)에서, 픽셀 블록이 속하는 컬러 채널을 결정하고, 녹색의 컬러 채널에 대하여 블록(345)으로 또는 적색 또는 청색의 컬러 채널들에 대하여 블록(350)으로 계속된다. 녹색 컬러 채널에 대하여 블록(345)에서, 블록은, 도 2b에 예시된 것과 유사한 방식으로 4개의 이러한 4x4 픽셀 서브-어레이들과 같이 각기 개별적으로 인코딩될 다수의 서브-블록들로 분할된다. 반대로, 적색 또는 청색 컬러 채널들에 대하여 블록(350)에서, 블록은, 평균 리샘플링을 통해 도 2b에 예시된 바와 같은 1/4 크기 4x4 픽셀 서브-블록과 같은 더 작은 단일 서브-블록으로 감소된다. 적어도 일부 실시예들에 있어서, 루틴 블록(345)에서 생성된 다수의 픽셀 서브-블록들 및 루틴 블록(350)에서 생성된 단일 픽셀 서브-블록은 동일한 크기이다. 블록들(345 또는 350) 이후에, 루틴은 블록(360)으로 계속되며, 여기에서, 루틴 블록들(345 또는 350)에서 생성된 각각의 서브-블록에 대하여, 루틴은, 루틴 블록(320)에서 수신된 픽셀 블록에 대한 최소 및 최대 픽셀 값들을 결정함으로써 그리고 추가로 보간을 통해 이들 사이의 2개의 중간 픽셀 값들을 결정함으로써, 4개의 결정된 가능한 픽셀 값들을 대응하는 식별자들(예를 들어, 값들 0-3)에 매핑함으로써, 그리고 그런 다음 각각의 서브-블록 픽셀 값은 4개의 결정된 가능한 픽셀 값들 중 가장 가까운 하나에 대한 대응하는 식별자로 대체함으로써, 뿐만 아니라 식별자들에 대한 컬러 데이터를 저장함(예를 들어, 최소 및 최대 가능한 픽셀 값들을 저장함)으로써 생성되는 인코딩되고 압축된 카피에 대하여 픽셀 값들을 인코딩한다.
블록들(345, 350 또는 360) 이후에, 루틴은, 원래의 이미지 내에 인코딩할 더 많은 픽셀 블록들이 있는지 여부를 결정하기 위해 루틴 블록(385)으로 계속되며, 그러한 경우, 다음의 이러한 픽셀 블록을 수신하기 위해 루틴 블록(320)으로 복귀한다. 그렇지 않으면, 루틴은, 선택적으로 전체 단위로 생성된 인코딩되고 압축된 이미지 파일을 추가로 압축하기 위하여, 그리고 결과적인 인코딩되고 압축된 이미지 파일을 저장하거나 및/또는 이미지가 디스플레이될 디스플레이 패널을 갖는 디바이스로 송신하기 위하여 블록(390)으로 계속된다.
블록(390) 이후에, 루틴은, 예컨대 종료하기 위한 명시적인 표시가 수신될 때까지, 계속할지 여부를 결정하기 위해 블록(395)으로 계속된다. 계속하는 것으로 결정된 경우, 루틴은 인코딩할 다음 이미지에 대한 이미지 데이터를 획득하기 위해 블록(305)으로 복귀하며, 그렇지 않은 경우, 루틴은 블록(399)으로 진행하여 종료된다.
도 4는 이미지 디스플레이 관리자 루틴(400)의 예시적인 실시예의 순서도이다. 루틴(400)은, 예를 들어, 도 2a 내지 도 2c에 대하여 그리고 본원의 다른 곳에서 논의된 바와 같이 인코딩되고 압축된 이미지 데이터를 수신하고, 디코딩하며 디스플레이하기 위한 동작들을 수행하는 시스템 및/또는 도 1a의 이미지 디스플레이 관리자 컴포넌트(184)에 의해 수행될 수 있다. 루틴(400)의 예시된 실시예가 한 번에 단일 이미지에 대한 동작들을 수행하는 것을 논의하지만, 루틴(400)의 동작들이 다수의 이미지들의 시퀀스(예를 들어, 다수의 연속적인 비디오 프레임들)에 적용될 수 있다는 것이 이해될 것이다. 루틴의 예시된 실시예가 적절한 바와 같이 소프트웨어 및/또는 하드웨어로 구현될 수 있으며, 예를 들어, HMD 상의 또는 다른 별개의 컴퓨팅 디바이스 상의 하나 이상의 프로세서들 또는 다른 구성된 하드웨어 회로부에 의해 수행될 수 있다는 것이 또한 이해될 것이다.
루틴(400)의 예시된 실시예는 블록(405)에서 시작하며, 여기에서, 도 3에 대하여 논의된 바와 같이 이미지 데이터 송신 관리자 시스템에 의해 생성되고 송신된 인코딩되고 압축된 이미지 데이터와 같은, 디스플레이 패널 상의 디스플레이를 위하여 인코딩되고 압축된 이미지 데이터 정보가 획득된다. 블록(410)에서, 이미지에 대한 1차 영역 및 다른 영역들은, 예컨대, 변화하지 않은 미리 정의된 영역 정보를 사용함으로써, 또는 달리 영역 정보를 결정함으로써, (예를 들어, 구조가 상이한 이미지들에 대하여 동적으로 변화할 수 있는 상황들에 대하여) 이미지 내에 인코딩된 이러한 정보를 수신하는 것에 기초하여, 결정될 수 있다. 인코딩되고 압축된 파일이, 예컨대, 도 3의 블록(390)에 대하여 적용된 전체 압축을 가진 경우, 이미지의 2차 영역들에 대한 추가적인 컬러-특정 압축 해제를 수행하기 이전에 대응하는 전체 압축 해제가 또한 수행된다.
블록(410) 이후에, 루틴은 수신된 이미지 데이터를 디코딩하고, 이미지의 주변 영역들에서 상이한 컬러-특정 해상도들을 갖는, 디스플레이를 위한 결과적인 새로운 이미지를 준비하기 위하여 블록들(420 내지 470)을 수행하기 위해 계속된다. 구체적으로, 루틴은, 도 2b 및 도 3에서 논의된 바와 같이 4x4 이미지 픽셀 어레이와 같은, 인코딩되고 압축된 이미지로부터 컬러 채널에 대한 이미지 픽셀 값들의 서브-블록을 추출한다. 블록(425)에서, 그런 다음 루틴은 서브-블록이 속하는 영역의 유형을 결정하며, 각기 1차, 2차, 또는 3차의 영역 유형들에 대하여 블록들(430, 440 또는 435)로 계속된다. 1차 영역 블록에 대하여 블록(430)에서, 루틴은, 각각의 이미지 픽셀 값을 디스플레이 패널 내의 대응하는 1차 영역 픽셀들로 로딩함으로써 서브-블록 내의 이미지 픽셀 값들의 모두를 사용한다. 3차 영역 서브-블록에 대하여 블록(435)에서, 루틴은 서브-블록으로부터 임의의 대응하는 픽셀 정보를 폐기한다.
2차 영역 서브-블록에 대하여 블록(440)에서, 루틴은, 서브-블록이 속하는 컬러 채널을 결정하고, 녹색의 컬러 채널에 대하여 블록(445)으로 또는 적색 또는 청색의 컬러 채널들에 대하여 블록(450)으로 계속된다. 녹색 컬러 채널에 대하여 블록(445)에서, 서브-블록의 각각의 픽셀 값은 저장된 매핑된 값으로부터 제한된 수(예를 들어, 4)의 가능한 픽셀 값들 중 대응하는 하나로 변화되며, 그 가능한 픽셀 값이 디스플레이 패널 내의 대응하는 2차 영역 픽셀로 로딩된다. 반대로, 적색 또는 청색 컬러 채널들에 대하여 블록들(450 및 460)에서, 서브-블록의 각각의 픽셀 값은 저장된 매핑된 값으로부터 제한된 수(예를 들어, 4)의 가능한 픽셀 값들 중 대응하는 값으로 변화되며, 그런 다음, 그 가능한 픽셀 값을 디스플레이 패널 내의 4개의 대응하는 2차 영역 픽셀들로 로딩함으로써 픽셀 값들의 4배 더 큰 블록이 생성된다. 블록들(430, 445 또는 460) 이후에, 루틴은, 디코딩하고 디스플레이할 더 많은 서브-블록들이 있는지 여부를 결정하기 위해 루틴 블록(470)으로 계속되며, 그러한 경우, 다음의 이러한 서브-블록을 획득하기 위해 루틴 블록(420)으로 복귀한다.
그 대신에, 블록(470)에서, 디코딩할 더 이상의 서브-블록들이 없다고 결정되는 경우, 루틴은, 1차 영역의 완전 해상도로부터 2차 영역(들)의 더 낮은 해상도(들)로의 전환을 평탄화하기 위하여, 1차 및 2차 영역들의 경계를 따라 디스플레이 패널 픽셀들 내에 로딩되는 픽셀 값들을 선택적으로 조정하기 위하여 블록(480)으로 계속된다. 블록(480) 이후에, 루틴은 디스플레이 패널 상의 로딩된 픽셀 값들의 디스플레이를 개시하기 위하여 블록(490)으로 계속된다.
블록(490) 이후에, 루틴은, 예컨대 종료하기 위한 명시적인 표시가 수신될 때까지, 계속할지 여부를 결정하기 위해 블록(495)으로 계속된다. 계속하는 것으로 결정된 경우, 루틴은 인코딩할 다음 이미지에 대한 이미지 데이터를 획득하기 위해 블록(405)으로 복귀하며, 그렇지 않은 경우, 루틴은 블록(499)으로 진행하여 종료된다.
이상에서 언급된 바와 같이, 일부 실시예들에 있어서 설명되는 기술들은 HDM 디바이스들의 성능을 어드레스하기 위해 사용될 수 있으며, 이는 사용자의 눈과 디스플레이 시아의 거리의 감소를 가능하게 하기 위하여 광학 렌즈들을 사용하고, 이는 선택적으로 사용자의 멀미를 방지하기 위하여 상대적으로 높은 리프레시 레이트 및 낮은 레이턴시를 가질 수 있다. HMD의 렌즈를 통해 보일 때, 균일한 크기 및 형태의 픽셀들은 주변부에서 공간적으로 왜곡되며, 그 결과 이미지 데이터는 사용자 시야에 걸쳐 지속적으로 조밀하지 않으며, 이는, 통상적인 디스플레이들에 대하여 의도된 방법들을 사용하여 이미지 데이터를 송신할 때 감소된 효율을 야기한다.
다양한 형태들의 추가적인 압축/압축 해제 기술들은, 일부 실시예들에 있어서, 예컨대, 이상에서 논의된 압축 및 인코딩의 사용에 더하여(예를 들어, 그 이후에) 하나 이상의 이러한 추가적인 압축 기술들을 수행함으로써 효율적인 데이터 송신을 제공하기 위해 사용될 수 있지만, 다른 실시예들에 있어서, 이사에서 논의된 압축 및 인코딩의 사용이 이러한 추가적인 압축/압축 해제 기술들 중 일부 또는 전부의 가능한 사용을 대체한다. 이러한 추가적인 압축 기술들은, 예를 들어, YUV 컬러 공간에서의 크로마(chroma) 서브샘플링을 사용할 수 있으며, 그럼으로써 이미지 데이터는 루마(luma) 및 크로미넌스(chrominance) 컴포넌트들로 분리되고, 크로미넌스 데이터는, 컬러에서의 변동보다 광 강도에서의 변동에 더 민감할 뿐만 아니라, 적색, 녹색 및 청색 컬러 채널들 내의 강도 사이에 전형적으로 높은 상관 관계를 갖는, 인간의 눈에 기초하여, 밀도가 감소된다. 그러나, 이러한 접근 방식은 HMD 디바이스에 적절하지 않은 결과들을 생성할 수 있으며, 여기에서, 디스플레이들은 보상된 이미지들과 같은 광학 렌즈에 의해 생성되는 색 수차를 보상하는 이미지를 제공하며, 이와 같이, 보상된 이미지들은 일반적으로 RGB 컬러 채널들 사이에서 더 높은 정도의 공간적 분리를 나타내고, 이러한 분리는 YUV 접근 방식들이 활용하는 RGB 채널 상관관계 중 다수를 효율적으로 제거하며, 이러한 분리는 또한, 개선된 대역폭 효율에 대한 필요가 높은 디스플레이의 주변부를 향해 증가한다. 이러한 추가적인 압축 기술들은 또한, 예를 들어, 인간 주변 시각이 매우 민감한 밴딩(banding) 및 플리커링(flickering) 아티팩트들에 취약한 (예를 들어, 하드웨어 내에서 그리고 실시간으로 실행되는) 블록 압축 방법들을 포함할 수 있다. 이러한 추가적인 압축 기술들은 전형적으로 주변 시각의 측면들을 처리하지 않으며, 그 대신에, 결과들이 직접적으로 그리고 비-주변 구역에서 보인다는 예상을 가지고 설계된다.
따라서, 적어도 일부 실시예들에 있어서, 설명된 기술들은, 전체적으로 또는 부분적으로, 중심 시각(foveal vision)에 대한 다음의 속성들 중 하나 또는 일부 또는 전부를 나타내도록, 그리고 인간의 주변 시각을 사용하여 인식될 이미지 데이터를 향해 지향된다: 더 낮은 세부사항 감도(미세 세부사항으로도 알려진 더 높은 주파수 도메인에서의 정보는 인식가능하지 않음); 특히 더 낮은 광 레벨들에서의 높은 명암 감도(예를 들어, 지각 명암이 유지됨); 동등한 시간적 감도(예를 들어, 주변부 이미지 디스플레이가 프로세싱에서 지연되지 않으며 그 대신에 스캔 아웃과 인라인(inline)으로 그리고 실시간으로 압축/압축 해제를 수행함); 기하학적 공간 아티팩트들에 대한 높은 감도(예를 들어, 인코딩 및 디코딩 이전에 이미지 데이터에 대한 동일하거나 또는 더 높은 광학적 정확도와 같이 질병을 회피하기에 충분히 광학적으로 정확함); 제 1 차 모션(예를 들어, 주목할 만한 밴딩, 스파클(sparkle) 또는 플리커 아티팩트들)에 대한 더 높은 감도; 컬러 변조에 대한 더 낮은 감도(예를 들어, 이미지는 중심에 대하여 더 적은 크로마 차이를 나타낼 수 있음); 등. 이상에서 언급된 바와 같이, YUV-기반 방법은, 색 수차 보상을 보존하지 않는 것에 기인하여 특정 상황들 하에서 적절하지 않을 수 있다. 수정된 블록 압축 접근 방식은, 이상에서 설명된 기술들에서 예시된 바와 같이, 다음의 특징 기능 중 하나 또는 일부 또는 전부를 제공하는 것을 포함하여, 빠르고(예를 들어, 프레임 델타들 또는 상당한 레이턴시를 도입하는 다른 계산들 없이, 선택적으로 하드웨어로 구성되는, 등) 안정적인(예를 들어, 기하학적 시프팅을 거의 갖지 않음) 이점들을 제공할 수 있다: RGB 채널 분리 및 관련된 색 수차 보상을 보존하는 것; 밴딩을 회피하는 것(예를 들어, 일부 압축 기술들에서 이루어지는 바와 같이, 24-비트로부터 16-비트 컬러로 변화시킴으로써 컬러 값들을 제한하지 않음); 일부 채널들에서 더 많은 세부사한을 기르고 다른 채널들에서 더 적은 세부사항을 보존하는 것(예를 들어, 녹색 채널에서 더 많은 그리고 청색에서 더 적은); 컬러 채널들 중 일부 또는 전부에 대해서보다 HDR 지수 데이터에서 더 적은 세부사항을 보존하는 것(예를 들어, 2차 영역들에 대하여); 완전 비압축된 데이터 또는 널(null) 데이터와의 동적 믹싱을 허용하는 것; 퍼지(fuzzy) 이미지들과 함께 사용하여 과도한 플리커 또는 스파클이 주변 시각에 의해 인식할 수 있도록 부가되지 않는 것; 등. 이는, 예컨대, 이미지 데이터의 상당한 감소(예를 들어, 20%)를 가지고, 주변 영역들에서 일부 세부사항을 희생하면서 명암을 보존하는데 능숙한 것과 같이, 주변 영역들에서의 더 많은 색-윤곽(color-fringing) 아티팩트들과 더 높은 압축 사이의 균형이 제공되는 것(그리고 선택적으로 조정되는 것)을 가능하게 한다.
일부 실시예들에 있어서 이상에서 논의된 루틴들에 의해 제공되는 기능은, 더 많은 루틴들 사이에서 분할되거나 또는 더 적은 루틴들로 통합되는 것과 같은 대안적인 방식들로 제공될 수 있다는 것이 이해될 것이다. 유사하게, 일부 실시예들에 있어서, 예를 들어 다른 예시된 루틴들이 각기 그 대신에 이러한 기능을 결여하거나 또는 포함할 때 또는 제공되는 기능의 양이 변경될 때, 예시된 루틴들은 설명된 것보다 더 적거나 또는 더 많은 기능을 제공할 수 있다. 이에 더하여, 다양한 동작들이 특정 방식으로(예를 들어, 직렬로 또는 병렬로) 및/또는 특정 순서로 수행되는 것으로서 예시되었지만, 당업자들은 다른 실시예들에서 이러한 동작들이 다른 순서들로 그리고 다른 방식들로 수행될 수 있다는 것을 이해할 것이다. 이상에서 논의된 데이터 구조들은, 예컨대, 단일 데이터 구조를 다수의 데이터 구조들로 분할함으로써 또는 다수의 데이터 구조들을 단일 데이터 구조로 통합함으로써, 데이터베이스들 또는 사용자 인터페이스 스크린들/페이지들 또는 다른 유형들의 데이터 구조들에 대한 것을 포함하여, 상이한 방식들로 구조화될 수 있다는 것이 마찬가지로 이해될 것이다. 유사하게, 일부 실시예들에 있어서, 예시된 데이터 구조들은, 예컨대 다른 예시된 데이터 구조들이 각기 그 대신에 이러한 정보를 결여하거나 또는 포함할 때, 또는 저장되는 정보의 양 또는 유형들이 변경될 때, 설명된 것보다 더 많거나 또는 더 적은 정보를 저장할 수 있다.
이에 더하여, 다양한 엘리먼트들의 형상들 및 각도들을 포함하여, 도면들 내의 엘리먼트들의 크기들 및 상대적은 위치들이 반드시 축적이 맞춰져야 하는 것은 아니며, 여기에서 일부 엘리먼트들은 도면 가독성을 개선하기 위해 확장되고 위치되며, 적어도 일부 실시예들의 특정 형상들은 이러한 엘리먼트들의 실제 형상 또는 축적에 관한 정보를 전달하지 않고 인식의 용이성을 위해 선택된다. 이에 더하여, 일부 엘리먼트들이 명료성 및 강조를 위하여 생략될 수 있다. 추가로, 상이한 도면들에서 반복되는 참조 번호들은 동일하거나 또는 유사한 엘리먼트들을 나타낼 수 있다.
이상의 내용으로부터, 특정 실시예들이 본원에서 예시의 목적들을 위하여 설명되었지만, 본 발명의 사상 및 범위로부터 벗어나지 않고 다양한 수정들이 이루어질 수 있다는 것이 이해될 것이다. 이에 더하여, 본 발명의 특정 측면들이 때때로 특정 청구항 형식들로 제공되거나 또는 어떤 경우들에 임의의 청구항들에 구현되지 않을 수도 있지만, 본 발명자들은 임의의 이용이 가능한 청구항 형식으로 본 발명의 다양한 측면들을 고려한다. 예를 들어, 단지 본 발명의 일부 측면들이 특정 시간에 컴퓨터-판독가능 매체 내에 구현되는 것으로 언급될 수 있지만, 다른 측면들이 마찬가지로 그렇게 구현될 수 있다.
이로써, 본 출원이 우선권을 주장하는 2018년 03월 5일자로 출원된 미국 특허 출원 제15/912,323호는 그 전체가 참조로서 본원에 포함된다.

Claims (29)

  1. 방법으로서,
    하나 이상의 하드웨어 프로세서들에 의해, 다수의 컬러 채널들에 속하는 이미지의 1차 영역 내의 목표 픽셀 값들, 상기 다수의 컬러 채널들 중 제 1 컬러 채널에 속하는 상기 이미지의 하나 이상의 2차 영역들 내의 제 1 픽셀 값들, 및 상기 다수의 컬러 채널들 중 제 2 컬러 채널에 속하는 상기 2차 영역들 내의 제 2 픽셀 값들을 포함하는, 디스플레이 패널 상의 디스플레이를 위한 복수의 픽셀 값들을 갖는 상기 이미지에 대한 데이터를 수신하는 단계;
    상기 하드웨어 프로세서들에 의해, 상기 1차 영역의 상기 목표 픽셀 값들을 유지하며 컬러-특정 방식으로 상기 제 1 및 제 2 픽셀 값들 중 적어도 일부를 제거함으로써 상기 2차 영역들 내의 해상도를 감소시키는, 상기 디스플레이 패널로 송신하기 위한 상기 이미지의 압축된 카피를 생성하는 단계로서,
    제 1 압축 레벨을 사용하여, 상기 제 1 컬러 채널에 대한 상기 제 1 픽셀 값들을 나타내는 상기 압축된 카피 내의 제 1 정보를 감소시키는 단계로서, 상기 제 1 압축 레벨은 상기 제 1 정보 내의 픽셀 값들의 양을 감소시키고 상기 제 1 픽셀 값들보다 더 적은 고유 값들을 갖는 제 1 가능한 픽셀 값들의 감소된 세트로부터 상기 제 1 정보 내의 각각의 픽셀 값을 선택하는, 단계; 및
    제 2 압축 레벨을 사용하여, 상기 제 2 컬러 채널에 대한 상기 제 2 픽셀 값들을 나타내는 상기 압축된 카피 내의 제 2 정보를 감소시키는 단계로서, 상기 제 2 압축 레벨은 상기 제 1 압축 레벨보다 더 적은 압축을 가지며, 상기 제 2 정보 내의 픽셀 값들의 양을 감소시키지 않으면서 상기 제 2 픽셀 값들보다 더 적은 고유 값들을 갖는 제 2 가능한 픽셀 값들의 감소된 세트로부터 상기 제 2 정보 내의 각각의 픽셀 값을 선택하는, 단계를 포함하는, 상기 이미지의 압축된 카피를 생성하는 단계; 및
    상기 하드웨어 프로세서들에 의해, 상기 디스플레이 패널 상의 상기 이미지의 디스플레이를 초래하기 위하여 상기 이미지의 상기 압축된 카피를 상기 디스플레이 패널로 송신하는 단계를 포함하는, 방법.
  2. 청구항 1에 있어서,
    상기 압축된 카피 내의 상기 제 1 정보 및 상기 제 2 정보를 감소시키는 단계는,
    상기 이미지 내의 상기 제 1 픽셀 값들의 다수의 블록들의 각각에 대하여, 그들의 픽셀 값들이 제 1 가능한 픽셀 값들의 상기 감소된 세트로부터 선택되며 각각이 상기 블록으로부터의 상기 제 1 픽셀 값들 중 다수의 제 1 픽셀 값들을 나타내는 더 작은 크기의 단일 제 1 서브-블록을 가지고 상기 압축된 카피 내의 상기 블록을 나타내는 단계; 및
    상기 이미지 내의 상기 제 2 픽셀 값들의 다수의 블록들의 각각에 대하여, 합계하여 상기 블록과 동일한 크기이며 그들의 픽셀 값들이 제 2 가능한 픽셀 값들의 상기 감소된 세트로부터 선택되는 다수의 제 2 서브-블록들을 가지고 상기 압축된 카피 내의 상기 블록을 표현하는 단계를 포함하는, 방법.
  3. 청구항 2에 있어서,
    상기 방법은, 상기 1차 영역에 대응하는 구역 내의 상기 다수의 컬러 채널들에 대한 제 1 디스플레이 패널 픽셀들 중 하나의 디스플레이를 제어하기 위해 상기 유지된 목표 픽셀 값들의 각각을 사용하는 것 및 제 2 가능한 픽셀 값들의 상기 감소된 세트 중 하나일 상기 제 2 컬러 채널에 대한 상기 제 2 디스플레이 패널 픽셀들 중 하나의 디스플레이를 제어하기 위하여 상기 제 2 서브-블록들 내의 각각의 픽셀 값을 사용함으로써 그리고 제 1 가능한 픽셀 값들의 상기 감소된 세트 중 하나일 상기 제 1 컬러 채널에 대한 상기 제 2 디스플레이 패널 픽셀들 중 하나의 디스플레이를 각각 제어하는 더 큰 양의 추가적인 픽셀 값들을 생성하기 위해 상기 제 1 서브-블록들 내의 상기 픽셀 값들을 사용함으로써 상기 2차 영역들에 대응하는 하나 이상의 구역들 내의 제 2 디스플레이 패널 픽셀들의 디스플레이를 제어하는 것을 포함하여, 상기 디스플레이 패널 상에 상기 이미지를 디스플레이하기 위해 상기 압축된 카피를 사용하는 단계를 더 포함하는, 방법.
  4. 청구항 1에 있어서,
    상기 하나 이상의 하드웨어 프로세서들은 렌더링 시스템의 부분이고, 상기 디스플레이 패널은, 적어도 상기 감소된 제 1 정보를 포함하는 상기 압축된 카피 내의 정보를 압축 해제하고 상기 디스플레이 패널 상의 상기 이미지의 디스플레이를 제어하는 것의 부분으로서 상기 압축 해제된 정보를 사용하도록 구성된 하나 이상의 하드웨어 회로들을 갖는 머리-착용 디스플레이(head-mounted display; HMD) 디바이스의 부분이며, 상기 압축된 카피를 생성하는 단계는 상기 압축된 카피를 상기 렌더링 시스템으로부터 상기 HMD 디바이스로 송신하기 위해 사용되는 대역폭을 감소시키기 위해 상기 압축된 카피의 크기를 감소시키는 단계를 포함하는, 방법.
  5. 청구항 4에 있어서,
    상기 HMD 디바이스는 상기 송신이 발생하는 무선 연결을 통해 상기 렌더링 시스템에 연결되며, 상기 제 1 압축 레벨 또는 상기 제 2 압축 레벨 중 적어도 하나는 적어도 부분적으로 상기 무선 연결의 하나 이상의 특성들에 기초하여 사용되는, 방법.
  6. 청구항 4에 있어서,
    상기 렌더링 시스템 및 상기 HMD 디바이스는 게이밍 시스템의 부분이며, 상기 HMD 디바이스는 상기 송신이 발생하는 테더(tether)를 통해 상기 렌더링 시스템에 연결되는 가상-현실 디바이스이고, 상기 이미지는 실행 중인 게임 프로그램에 의해 생성되는 연속적인 다수의 비디오 프레임들 중 하나이며, 상기 수신 및 상기 생성 및 상기 송신은 연속적인 상기 다수의 비디오 프레임들의 각각에 대해 수행되는, 방법.
  7. 청구항 4에 있어서,
    상기 방법은, 상기 하나 이상의 하드웨어 회로들의 제어 하에서, 제 1 해상도로 상기 1차 영역 내에 정보를 디스플레이하는 것, 상기 제 1 해상도보다 더 낮은 제 2 해상도로 상기 제 2 컬러 채널에 대하여 상기 2차 영역 내에 정보를 디스플레이하는 것, 및 상기 제 2 해상도보다 더 낮은 제 3 해상도로 상기 제 1 컬러 채널에 대하여 상기 2차 영역 내에 정보를 디스플레이하는 것을 포함하여, 상기 디스플레이 패널 상의 상기 이미지의 디스플레이를 제어하는 단계를 더 포함하는, 방법.
  8. 청구항 7에 있어서,
    상기 방법은, 상기 하나 이상의 하드웨어 회로들의 제어 하에서, 상기 제 1 해상도보다 더 낮으며 상기 제 2 해상도보다 더 높은 제 4 해상도로 디스플레이하기 위한 추가적인 정보를 생성하는 단계, 및 상기 1 차 및 2차 영역들의 적어도 일부 부분들 사이의 중간 영역 내에 상기 제 4 해상도로 상기 추가적인 정보를 디스플레이하는 단계를 더 포함하는, 방법.
  9. 청구항 1에 있어서,
    상기 제 1 컬러 채널은 적색 컬러 채널 또는 청색 컬러 채널 중 적어도 하나를 포함하며, 상기 제 2 컬러 채널은 녹색 컬러 채널을 포함하는, 방법.
  10. 청구항 1에 있어서,
    상기 방법은, 상기 이미지의 상기 압축된 카피를 생성하는 단계 이전에, 상기 디스플레이 패널을 보고 있는 사용자의 시선의 방향에 대응하도록 상기 이미지의 상기 1차 영역을 결정하는 단계를 더 포함하는, 방법.
  11. 청구항 1에 있어서,
    상기 방법은, 상기 이미지의 상기 압축된 카피를 생성하는 단계 이전에, 식별된 콘텐트가 상기 이미지 내에 도시되는 로케이션(location)에 적어도 부분적으로 기초하여 상기 이미지의 상기 1차 영역을 결정하는 단계를 더 포함하는, 방법.
  12. 청구항 1에 있어서,
    상기 방법은, 하나 이상의 현재 상태들에 기초하여 상기 이미지의 상기 압축된 카피에 대하여 사용하기 위한 압축의 양을 결정하는 단계, 및 상기 결정된 압축의 양을 포함하도록 상기 압축된 카피의 생성을 수행하는 단계를 더 포함하며, 상기 하나 이상의 현재 상태들은 상기 이미지 내의 정보의 복잡도, 상기 하나 이상의 프로세서들에 대한 부하, 상기 송신을 위해 사용되는 연결의 속성, 또는 상기 디스플레이 패널을 보고 있는 사용자의 하나 이상의 선호사항들 중 적어도 하나를 포함하는, 방법.
  13. 청구항 1에 있어서,
    상기 이미지는 직사각형 포맷으로 구성되고, 상기 이미지는 상기 이미지의 하나 이상의 3차 영역들을 포함하지 않는 상기 이미지의 비-직사각형 서브세트만이 가시적인 상태로 상기 디스플레이 패널 상에 디스플레이되며, 상기 압축된 카피를 생성하는 단계는 상기 3차 영역들에 대한 적어도 일부 픽셀 값 정보가 상기 압축된 카피 내에 포함되는 것을 방지하는 단계를 포함하는, 방법.
  14. 청구항 1에 있어서,
    상기 이미지에 대한 상기 데이터를 수신하는 단계는 상기 이미지를 생성하는 단계를 포함하며, 상기 이미지의 상기 압축된 카피를 생성하는 단계는 실시간 방식으로 상기 이미지를 생성하는 단계와 동시에 수행되는, 방법.
  15. 청구항 1에 있어서,
    상기 이미지에 대한 상기 데이터는 추가로 상기 목표 픽셀 값들과 연관된 목표 HDR 휘도 값들 및 상기 제 1 픽셀 값들과 연관된 제 1 HDR 휘도 값들 및 상기 제 2 픽셀 값들과 연관된 제 2 HDR 휘도 값들을 포함하는 복수의 고 동적 범위(high dynamic range; HDR) 휘도 값들을 지정하며, 상기 이미지의 상기 압축된 카피를 생성하는 단계는, 상기 제 1 및 제 2 압축 레벨들보다 더 작은 압축을 갖는 제 3 압축 레벨을 사용하여, 적어도 상기 제 1 및 제 2 HDR 휘도 값들을 나타내는 상기 압축된 카피 내의 제 3 정보를 감소시키는 단계를 더 포함하는, 방법.
  16. 청구항 15에 있어서,
    상기 제 3 정보를 감소시키는 단계는, 상기 제 1 및 제 2 HDR 휘도 값들 내의 다수의 HDR 휘도 값들을 나타내기 위하여 상기 제 3 정보 내의 각각의 HDR 휘도 값을 사용함으로써 상기 제 3 정보 내의 HDR 휘도 값들의 양을 감소시키는 단계를 포함하며, 상기 제 1 및 제 2 HDR 휘도 값들보다 더 적은 고유 값들을 갖는 가능한 HDR 휘도 값들의 감소된 세트로부터 상기 제 3 정보 내의 각각의 HDR 휘도 값을 선택하는 단계를 더 포함하는, 방법.
  17. 청구항 15에 있어서,
    상기 이미지의 상기 압축된 카피를 생성하는 단계는, 상기 이미지의 디스플레이 시에 상기 1차 영역의 상기 목표 픽셀 값들 및 상기 목표 픽셀 값들과 연관된 상기 목표 HDR 휘도 값들의 비-감소된 해상도를 초래하기 위하여, 상기 목표 픽셀 값들과 연관된 상기 목표 HDR 휘도 값들의 전부를 유지하는 단계를 더 포함하는, 방법.
  18. 시스템으로서,
    다수의 픽셀들을 갖는 머리-착용 디스플레이(head-mounted display; HMD)의 디스플레이 패널; 및
    상기 시스템이 하기의 자동화 동작들을 수행하게끔 하도록 구성된 하나 이상의 하드웨어 회로들을 포함하며, 상기 자동화 동작들은 적어도,
    이미지에 대한 복수의 픽셀 값들을 갖는 인코딩된 카피를 수신하는 동작;
    상기 인코딩된 카피 내의 상기 복수의 픽셀 값들로부터, 상기 이미지의 1차 영역에 대한 상기 복수의 픽셀 값들 중의 다수의 픽셀 값들을 식별하는 동작으로서, 상기 식별된 다수의 픽셀 값들은 다수의 컬러 채널들에 속하며 상기 1차 영역에 대응하는 상기 디스플레이 패널의 픽셀들을 제어하는데 사용하기 위한 것인, 동작;
    상기 이미지의 하나 이상의 2차 영역들에 대한 것이며 상기 다수의 컬러 채널들의 적어도 하나의 제 1 컬러 채널에 속하는 상기 복수의 픽셀 값들 중의 추가적인 제 1 픽셀 값들을 상기 인코딩된 카피로부터 식별하는 동작으로서, 상기 추가적인 제 1 픽셀 값들은 각기 상기 다수의 픽셀 값들보다 더 적은 고유 값들을 갖는 제 1 가능한 픽셀 값들의 감소된 세트 중 하나인, 동작;
    상기 2차 영역들에 대한 것이며 적어도 하나의 제 2 컬러 채널에 속하는 상기 복수의 픽셀 값들 중의 추가적인 제 2 픽셀 값들을 상기 인코딩된 카피로부터 식별하는 것, 및 다른 픽셀 값들 중 다수의 다른 픽셀 값들을 생성하기 위하여 각각의 식별된 추가적인 제 2 픽셀 값을 사용하는 것을 포함하여, 상기 다수의 컬러 채널들 중 적어도 하나의 제 2 컬러 채널에 속하는 상기 이미지의 상기 2차 영역들에 대한 상기 다른 픽셀 값들을 생성하는 동작으로서, 상기 다른 픽셀 값들은 각기 상기 다수의 픽셀 값들보다 더 적은 고유 값들을 갖는 제 2 가능한 픽셀 값들의 감소된 세트 중 하나인, 동작; 및
    상기 2차 영역들에 대응하는 상기 디스플레이 패널의 픽셀의 디스플레이를 제어하기 위하여 상기 식별된 추가적인 제 1 픽셀 값들 및 생성된 다른 픽셀 값들의 각각을 사용하는 것, 및 상기 1차 영역에 대응하는 상기 디스플레이 패널의 상기 픽셀들 중 하나를 제어하기 위하여 상기 식별된 다수의 픽셀 값들의 각각을 사용하는 것을 포함하여, 상기 디스플레이 상에 상기 이미지를 디스플레이하는 동작을 포함하는, 시스템.
  19. 청구항 18에 있어서,
    상기 시스템은, 렌더링 시스템의 하나 이상의 하드웨어 프로세서들에 의해 실행될 때, 하기의 자동화된 동작들을 더 수행함으로써 상기 렌더링 시스템이 상기 인코딩된 카피를 생성하고 상기 인코딩된 카피를 상기 HMD 디바이스로 송신하게끔 하는, 저장된 명령어들을 갖는 상기 렌더링 시스템의 메모리를 더 포함하며, 상기 자동화된 동작들은 적어도,
    상기 렌더링 시스템에 의해, 상기 다수의 컬러 채널들에 속하는 복수의 픽셀 값들을 포함하는 상기 이미지에 대한 데이터를 수신하는 동작;
    상기 렌더링 시스템에 의해, 상기 2차 영역들 내에서 컬러-특정 압축을 사용하여 상기 이미지의 상기 인코딩된 카피를 생성하는 동작으로서,
    상기 인코딩된 카피 내에, 상기 1차 영역 내의 상기 수신된 데이터의 픽셀 값들 및 상기 유지된 픽셀 값들에 대한 컬러 데이터의 크기를 유지하는 동작;
    상기 인코딩된 카피 내에서, 그리고 상기 제 1 컬러 채널에 속하며 상기 2차 영역들에 대한 상기 수신된 데이터 내의 추가적인 제 1 픽셀 값들에 대하여, 상기 추가적인 제 1 픽셀 값들의 다수의 블록들의 각각에 대하여, 상기 인코딩된 카피 내에서, 그들의 픽셀 값들이 각기 가능한 픽셀 값들의 제 1 감소된 세트로부터 선택되며 각기 상기 블록으로부터의 상기 추가적인 제 1 픽셀 값들 중 다수의 추가적인 제 1 픽셀 값들을 나타내는 더 작은 크기의 단일 제 1 서브-블록으로 상기 블록을 대체함으로써, 픽셀 양 및 컬러 데이터의 크기를 감소시키는 동작; 및
    상기 인코딩된 카피 내에서, 그리고 상기 제 2 컬러 채널에 속하며 상기 2차 영역들에 대한 상기 수신된 데이터 내의 추가적인 제 2 픽셀 값들에 대하여, 상기 추가적인 제 2 픽셀 값들의 다수의 블록들의 각각에 대하여, 상기 인코딩된 카피 내에서, 그들의 픽셀 값들이 각기 가능한 픽셀 값들의 제 2 감소된 세트로부터 선택되는 다수의 제 2 서브-블록들로 상기 블록을 대체함으로써, 컬러 데이터의 크기를 감소시키는 동작을 포함하는, 상기 이미지의 상기 인코딩된 카피를 생성하는 동작; 및
    상기 렌더링 시스템에 의해, 상기 이미지의 상기 인코딩된 카피를 상기 HMD 디바이스로 송신하는 동작을 포함하는, 시스템.
  20. 청구항 19에 있어서,
    상기 저장된 명령어들은 추가로 상기 렌더링 시스템이, 상기 디스플레이 패널 상의 디스플레이를 위한 다수의 비디오 프레임들의 시퀀스를 생성하는 소프트웨어 애플리케이션을 실행하고 적어도 하나의 연결을 통해 상기 HMD 디바이스로의 송신 이전에 상기 다수의 비디오 프레임들의 각각을 인코딩하게끔 하며, 상기 이미지는 다수의 비디오 프레임들 중 하나이고, 상기 다수의 픽셀 값들을 수신하는 동작 및 식별하는 동작, 상기 추가적인 제 1 픽셀 값들을 식별하는 동작, 및 상기 다른 픽셀 값들을 생성하는 동작 및 상기 디스플레이하는 동작은 상기 다수의 비디오 프레임들의 각각에 대하여 수행되는, 시스템.
  21. 청구항 18에 있어서,
    상기 시스템은 상기 HMD 디바이스의 제 2 디스플레이 패널을 더 포함하며, 상기 HMD 디바이스는 상기 HMD 디바이스의 착용자의 하나의 눈에 의해 보일 수 있는 위치에 상기 디스플레이 패널을 하우징하고 상기 HMD 디바이스의 상기 착용자의 다른 눈에 의해 보일 수 있는 위치에 상기 제 2 디스플레이 패널을 하우징하며, 상기 자동화된 동작은, 상기 착용자에게 가상 현실 디스플레이를 제공하기 위하여 상기 디스플레이 패널 상에 상기 이미지를 디스플레이하는 것과 동시에 상기 제 2 디스플레이 패널 상에 제 2 이미지를 디스플레이하는 동작을 더 포함하는, 시스템.
  22. 청구항 18에 있어서,
    상기 이미지 패널 상에 상기 이미지를 디스플레이하는 동작은, 제 1 해상도로 상기 1차 영역 내에 정보를 디스플레이하는 동작, 상기 제 1 해상도보다 더 낮은 제 2 해상도로 상기 제 1 컬러 채널에 대하여 상기 2차 영역 내에 정보를 디스플레이하는 동작, 상기 제 2 해상도보다 더 낮은 제 3 해상도로 상기 제 2 컬러 채널에 대하여 상기 2차 영역 내에 정보를 디스플레이하는 동작, 및 상기 제 1 해상도보다는 더 낮고 상기 제 2 해상도보다는 더 높은 제 4 해상도로 추가적인 정보를 생성하고 디스플레이하는 동작을 포함하며, 상기 추가적인 정보를 디스플레이하는 동작은 상기 1차 영역 및 상기 2차 영역들의 부분들 사이에서 수행되는, 시스템.
  23. 청구항 18에 있어서,
    상기 이미지는 직사각형 포맷으로 구성되고, 상기 이미지는 상기 이미지의 하나 이상의 3차 영역들을 포함하지 않는 상기 이미지의 비-직사각형 서브세트만이 가시적인 상태로 상기 디스플레이 패널 상에 디스플레이되며, 상기 디스플레이 패널 상에 상기 이미지를 디스플레이하는 동작은 상기 3차 영역들에 대응하는 상기 인코딩된 카피로부터의 임의의 픽셀 값들을 디스플레이하지 않는 동작을 포함하는, 시스템.
  24. 청구항 18에 있어서,
    상기 인코딩된 카피는 상기 복수의 픽셀 값들과 연관된 복수의 고 동적 범위(high dynamic range; HDR) 휘도 값들을 인코딩하는 추가적인 정보를 더 포함하며, 상기 자동화된 동작들은 추가로,
    상기 이미지의 상기 1차 영역에 대한 상기 다수의 픽셀 값들과 연관된 상기 복수의 HDR 휘도 값들 중 다수의 HDR 휘도 값들을 식별하는 동작; 및
    상기 추가적인 정보 내의 다수의 인코딩된 HDR 휘도 값들의 각각에 대하여, 각기 상기 다수의 HDR 휘도 값들보다 더 적은 고유 값들을 갖는 가능한 HDR 휘도 값들의 감소된 세트 중 하나인 다른 HDR 휘도 값들 중 다수의 다른 HDR 휘도 값들을 생성하기 위하여 상기 인코딩된 HDR 휘도 값들을 사용함으로써, 상기 추가적인 정보로부터 상기 복수의 HDR 휘도 값들 중 상기 다른 HDR 휘도 값들을 생성하는 동작을 포함하며,
    상기 이미지를 디스플레이하는 동작은 추가로, 상기 2차 영역들에 대응하는 상기 디스플레이 패널의 픽셀들의 디스플레이를 제어하는 동작의 부분으로서 상기 생성된 다른 HDR 휘도 값들을 사용하는 동작, 및 상기 1차 영역에 대응하는 상기 디스플레이 패널의 픽셀들의 디스플레이를 제어하기 위하여 상기 식별된 다수의 HDR 휘도 값들을 사용하는 동작을 포함하는, 시스템.
  25. 방법으로서,
    비디오 렌더링 컴퓨팅 시스템의 하나 이상의 하드웨어 프로세서들에 의해, 머리-착용 디스플레이(head-mounted display; HMD) 디바이스 상의 디스플레이를 위해 다수의 컬러 채널들 내의 복수의 픽셀 값들을 갖는 이미지에 대한 비디오 프레임 데이터를 수신하는 단계;
    상기 하나 이상의 하드웨어 프로세서들에 의해, 완전 해상도로 디스플레이될 상기 이미지의 1차 영역 및 완전 해상도보다 더 적은 해상도로 디스플레이될 상기 이미지의 하나 이상의 2차 영역들을 결정하는 단계;
    상기 하나 이상의 하드웨어 프로세서들에 의해, 상기 HMD 디바이스로의 송신을 위한 컬러-특정 방식으로 상기 2차 영역들 내에서 압축되는 상기 이미지의 수정된 카피를 생성하기 위해 상기 이미지를 인코딩하는 단계로서,
    상기 1차 영역 내의 상기 수신된 비디오 프레임 데이터의 제 1 픽셀 값들에 대하여, 상기 수정된 카피 내의 상기 제 1 픽셀 값들 전부를 유지하는 단계; 및
    상기 2차 영역들 내의 상기 수신된 비디오 프레임 데이터의 제 2 픽셀 값들에 대하여, 그리고 상기 다수의 컬러 채널들의 하나 이상의 제 2 컬러 채널들에 대한 것과는 상이하게 상기 다수의 컬러 채널들의 하나 이상의 제 1 컬러 채널들에 대하여, 상기 수정된 카피 내의 상기 제 2 픽셀 값들 중 적어도 일부를 대체하는 단계로서, 상기 대체하는 단계는,
    상기 제 2 픽셀 값들을, 각기 단일 컬러 채널의 정의된 제 1 수의 다수의 픽셀 값들을 갖는 다수의 블록들로 분할하는 단계;
    상기 제 1 컬러 채널들의 하나의 픽셀 값들을 갖는 각각의 블록에 대하여, 그들의 픽셀 값들이 각기 상기 블록 내의 2개 이상의 픽셀 값들을 나타내는 단일 서브-블록을 생성하는 것을 포함하여, 그리고 상기 제 2 컬러 채널들의 하나의 픽셀 값들을 갖는 각각의 블록에 대하여, 그들의 픽셀 값들이 합계하여 상기 블록을 복제(replicate)하는 다수의 서브-블록들을 생성하는 것을 더 포함하여, 상기 다수의 블록들을 나타내며 각기 상기 정의된 제 1 수보다 더 작은 제 2 수의 다수의 픽셀 값들을 갖는 더 작은 서브-블록들을 생성하는 단계; 및
    상기 서브-블록으로부터 최소 및 최대 픽셀 값들을 포함하도록 그리고 상기 최소 및 최대 픽셀 값들 사이의 하나 이상의 중간 픽셀 값들을 포함하도록 상기 서브-블록에 대하여 다수의 허용된(allowed) 픽셀 값들을 결정하는 단계를 포함하여, 각각의 서브-블록에 대하여, 상기 서브-블록 내의 각각의 픽셀 값을 상기 서브-블록에 대한 상기 다수의 허용된 픽셀 값들 중 하나로 변화시키는 단계에 의해 이루어지는, 상기 대체하는 단계를 포함하는, 상기 이미지를 인코딩하는 단계;
    상기 수정된 카피를 상기 HMD 디바이스로 송신하는 단계; 및
    상기 HMD 디바이스에 대한 적어도 하나의 제어기의 제어 하에서, 상기 1차 영역 내의 디스플레이를 제어하기 위하여 상기 유지된 제 1 픽셀 값들을 사용하는 단계, 및 상기 변화된 픽셀 값들 및 상기 생성된 서브-블록들로부터 새로운 블록들을 생성함으로써 상기 2차 영역들 내의 디스플레이를 제어하기 위해 대치된 적어도 일부 픽셀 값들을 사용하는 단계를 포함하여, 상기 수정된 카피로부터 상기 HMD 디바이스 상에 상기 이미지를 디스플레이하는 단계를 포함하는, 방법.
  26. 청구항 25에 있어서,
    상기 하나 이상의 제 1 채널들은 적색 및 청색이며, 적색 또는 청색의 픽셀 값들을 갖는 각각의 블록에 대한 상기 단일 서브-블록의 생성은 상기 2차 영역들 내의 상기 적색 및 청색 컬러 채널들에 대한 픽셀 양 및 컬러 데이터의 크기 둘 모두를 감소시키기 위해 수행되고, 상기 하나 이상의 제 2 채널들은 녹색이며, 녹색의 픽셀 값들을 갖는 각각의 블록에 대한 상기 다수의 서브-블록들의 생성은 상기 2차 영역들 내의 상기 적색 및 청색 컬러 채널들에 대한 것보다 상기 2차 영역들 내의 상기 녹색 컬러 채널들에 대하여 더 높은 해상도를 제공하면서 상기 2차 영역들 내의 상기 녹색 컬러 채널에 대한 컬러 데이터의 크기를 감소시키기 위해 수행되는, 방법.
  27. 청구항 26에 있어서,
    상기 이미지는 직사각형 포맷으로 수신되고, 상기 이미지는 상기 이미지의 하나 이상의 3차 영역들을 포함하지 않는 상기 이미지의 비-직사각형 서브세트만이 가시적인 상태로 상기 HMD 디바이스 상에 디스플레이되며, 상기 수정된 카피를 생성하기 위해 상기 이미지를 인코딩하는 단계는 픽셀 값들을 상수 값으로 변화시킴으로써 상기 3차 영역들에 대한 컬러 데이터의 크기를 감소시키는 단계를 포함하는, 방법.
  28. 청구항 25에 있어서,
    상기 수신하는 단계 및 상기 인코딩하는 단계 및 상기 송신하는 단계 및 상기 디스플레이하는 단계는 연속된 다수의 비디오 프레임들의 각각에 대해 수행되며, 상기 결정하는 단계는, 시선이 지향되는 구역으로서 상기 1차 영역을 식별하기 위하여 상기 HMD 디바이스의 사용자의 시선을 추적하는 것에 기초하여 각각의 비디오 프레임에 대해 동적으로 수행되는, 방법.
  29. 청구항 25에 있어서,
    상기 HMD 디바이스는 상기 송신이 발생하는 무선 연결을 통해 상기 비디오 렌더링 시스템에 연결되며, 상기 수정된 카피를 생성하기 위해 상기 이미지를 인코딩하는 단계는 상기 무선 연결의 대역폭 또는 신호 강도 중 적어도 하나에 기초하는 압축의 레벨로 수행되는, 방법.
KR1020207028413A 2018-03-05 2019-03-01 주변 이미지 영역에서의 실시간 압축을 통한 이미지 디스플레이의 제어 KR102618255B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/912,323 US10694170B2 (en) 2018-03-05 2018-03-05 Controlling image display via real-time compression in peripheral image regions
US15/912,323 2018-03-05
PCT/US2019/020320 WO2019173147A1 (en) 2018-03-05 2019-03-01 Controlling image display via real-time compression in peripheral image regions

Publications (2)

Publication Number Publication Date
KR20200130359A true KR20200130359A (ko) 2020-11-18
KR102618255B1 KR102618255B1 (ko) 2023-12-27

Family

ID=67768869

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207028413A KR102618255B1 (ko) 2018-03-05 2019-03-01 주변 이미지 영역에서의 실시간 압축을 통한 이미지 디스플레이의 제어

Country Status (6)

Country Link
US (1) US10694170B2 (ko)
EP (2) EP3744007B1 (ko)
JP (1) JP7415931B2 (ko)
KR (1) KR102618255B1 (ko)
CN (1) CN111819798B (ko)
WO (1) WO2019173147A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102276936B1 (ko) * 2021-01-15 2021-07-13 (주)제주넷 3차원 가상 전시 공간의 전시물 이용 서비스 제공 장치

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10521881B1 (en) 2017-09-28 2019-12-31 Apple Inc. Error concealment for a head-mountable device
US11347052B2 (en) * 2017-10-23 2022-05-31 Sony Corporation Display control apparatus, head mounted display, and display control method
JP2019103067A (ja) 2017-12-06 2019-06-24 キヤノン株式会社 情報処理装置、記憶装置、画像処理装置、画像処理システム、制御方法、及びプログラム
US10713997B2 (en) 2018-03-23 2020-07-14 Valve Corporation Controlling image display via mapping of pixel values to pixels
US10796407B2 (en) * 2018-05-11 2020-10-06 Samsung Electronics Co., Ltd. Foveated domain storage and processing
US11347056B2 (en) * 2018-08-22 2022-05-31 Microsoft Technology Licensing, Llc Foveated color correction to improve color uniformity of head-mounted displays
US10861240B1 (en) * 2018-09-26 2020-12-08 Facebook Technologies, Llc Virtual pupil camera in head mounted display
US10885882B2 (en) * 2018-12-06 2021-01-05 Tobii Ab Reducing aliasing artifacts in foveated rendering using cross-resolution modulation
US20220246085A1 (en) * 2019-06-27 2022-08-04 Sony Interactive Entertainment Inc. Image processing system, image processing integrated circuit, and image processing method
KR102582407B1 (ko) * 2019-07-28 2023-09-26 구글 엘엘씨 포비에이티드 메시들로 몰입형 비디오 콘텐츠를 렌더링하기 위한 방법들, 시스템들, 및 매체들
WO2021016974A1 (zh) * 2019-07-31 2021-02-04 西安诺瓦星云科技股份有限公司 数据处理方法、装置和系统以及系统控制器和模组控制器
GB2589325B (en) * 2019-11-26 2021-12-22 Sony Interactive Entertainment Inc Image rendering method and apparatus
WO2021125180A1 (en) * 2019-12-18 2021-06-24 Clarion Co., Ltd. Display control device and display control method
KR102320723B1 (ko) * 2019-12-20 2021-11-02 라인플러스 주식회사 사용자를 인증하는 방법 및 시스템
US11245911B1 (en) * 2020-05-12 2022-02-08 Whirlwind 3D, LLC Video encoder/decoder (codec) for real-time applications and size/b and width reduction
KR20230026398A (ko) * 2020-06-12 2023-02-24 유니버시티 오브 워싱턴 근안 디스플레이들에서의 눈 추적
US11157081B1 (en) * 2020-07-28 2021-10-26 Shenzhen Yunyinggu Technology Co., Ltd. Apparatus and method for user interfacing in display glasses
CN112509146B (zh) * 2020-11-23 2023-06-20 歌尔科技有限公司 图像处理方法、装置、电子设备及存储介质
CN114935971B (zh) * 2021-02-05 2024-08-20 京东方科技集团股份有限公司 显示装置和显示驱动方法
CN115606178A (zh) * 2021-05-10 2023-01-13 京东方科技集团股份有限公司(Cn) 图像数据的传输方法及装置
US11863786B2 (en) 2021-05-21 2024-01-02 Varjo Technologies Oy Method of transporting a framebuffer
US11991424B2 (en) * 2021-11-05 2024-05-21 Tencent America LLC Immersive media data complexity analyzer for transformation of asset formats
CN114581781B (zh) 2022-05-05 2022-08-09 之江实验室 一种高分辨率遥感图像的目标检测方法及装置
CN116248895B (zh) * 2023-05-06 2023-07-21 上海扬谷网络科技有限公司 虚拟现实全景漫游的视频云转码方法及系统
CN117319662B (zh) * 2023-11-28 2024-02-27 杭州杰竞科技有限公司 一种人体目标识别的图像压缩、解压方法和系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070026525A (ko) * 2004-04-23 2007-03-08 브라이트사이드 테크놀로지즈 아이엔씨. 높은 동적범위 (또는 고 명암비) 이미지의 엔코딩, 디코딩및 표시
US20170045941A1 (en) * 2011-08-12 2017-02-16 Sony Interactive Entertainment Inc. Wireless Head Mounted Display with Differential Rendering and Sound Localization
JP2017146607A (ja) * 2013-06-07 2017-08-24 株式会社ソニー・インタラクティブエンタテインメント ヘッドマウントディスプレイでユーザーの動きに応答する画像レンダリング

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5103306A (en) * 1990-03-28 1992-04-07 Transitions Research Corporation Digital image compression employing a resolution gradient
US20030112863A1 (en) * 2001-07-12 2003-06-19 Demos Gary A. Method and system for improving compressed image chroma information
WO2006010644A1 (en) * 2004-07-29 2006-02-02 Oce-Technologies B.V. Lossless compression of color image data using entropy encoding
WO2006031737A2 (en) * 2004-09-14 2006-03-23 Gary Demos High quality wide-range multi-layer compression coding system
US7876833B2 (en) * 2005-04-11 2011-01-25 Sharp Laboratories Of America, Inc. Method and apparatus for adaptive up-scaling for spatially scalable coding
WO2007084301A2 (en) 2006-01-12 2007-07-26 Gary Demos Efficient bit-exact lossless image coding residual system
JP4073942B2 (ja) * 2006-12-01 2008-04-09 シャープ株式会社 画像圧縮装置および画像伸張装置、ならびに画像圧縮方法および画像伸張方法をコンピュータに実行させるためのプログラムをそれぞれ記録したコンピュータ読取可能な記録媒体
US20160007026A1 (en) * 2013-03-08 2016-01-07 Jie Dong Techniques for image encoding based on region of interest
JP2016202716A (ja) * 2015-04-24 2016-12-08 株式会社コーエーテクモゲームス プログラム及び記録媒体
CN105204217B (zh) * 2015-10-13 2018-05-01 武汉华星光电技术有限公司 液晶显示面板
US10356407B2 (en) * 2015-11-20 2019-07-16 Facebook Technologies, Llc Display-side video decompression using quantization tables
US10169846B2 (en) * 2016-03-31 2019-01-01 Sony Interactive Entertainment Inc. Selective peripheral vision filtering in a foveated rendering system
EP3472806A4 (en) * 2016-06-17 2020-02-26 Immersive Robotics Pty Ltd IMAGE COMPRESSION METHOD AND DEVICE
US10373592B2 (en) * 2016-08-01 2019-08-06 Facebook Technologies, Llc Adaptive parameters in image regions based on eye tracking information
US10572764B1 (en) * 2017-06-05 2020-02-25 Google Llc Adaptive stereo rendering to reduce motion sickness
US10861142B2 (en) * 2017-07-21 2020-12-08 Apple Inc. Gaze direction-based adaptive pre-filtering of video data

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070026525A (ko) * 2004-04-23 2007-03-08 브라이트사이드 테크놀로지즈 아이엔씨. 높은 동적범위 (또는 고 명암비) 이미지의 엔코딩, 디코딩및 표시
US20170045941A1 (en) * 2011-08-12 2017-02-16 Sony Interactive Entertainment Inc. Wireless Head Mounted Display with Differential Rendering and Sound Localization
JP2017146607A (ja) * 2013-06-07 2017-08-24 株式会社ソニー・インタラクティブエンタテインメント ヘッドマウントディスプレイでユーザーの動きに応答する画像レンダリング

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102276936B1 (ko) * 2021-01-15 2021-07-13 (주)제주넷 3차원 가상 전시 공간의 전시물 이용 서비스 제공 장치

Also Published As

Publication number Publication date
EP3744007A1 (en) 2020-12-02
WO2019173147A1 (en) 2019-09-12
CN111819798B (zh) 2024-06-18
US20190273910A1 (en) 2019-09-05
JP7415931B2 (ja) 2024-01-17
EP3744007A4 (en) 2021-04-21
EP4273852A2 (en) 2023-11-08
EP4273852A3 (en) 2024-01-10
EP3744007B1 (en) 2023-08-30
CN111819798A (zh) 2020-10-23
KR102618255B1 (ko) 2023-12-27
US10694170B2 (en) 2020-06-23
JP2021515446A (ja) 2021-06-17

Similar Documents

Publication Publication Date Title
KR102618255B1 (ko) 주변 이미지 영역에서의 실시간 압축을 통한 이미지 디스플레이의 제어
KR102467376B1 (ko) 디스플레이 처리 회로
US20230005167A1 (en) Virtual and augmented reality systems and methods
JP7537282B2 (ja) 画素値対画素マッピングによる画像ディスプレイの制御
US10572764B1 (en) Adaptive stereo rendering to reduce motion sickness
CN112470484A (zh) 偏影及hdr
WO2020016285A1 (en) Method and device for disconnecting user's attention

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant