KR20220035183A - 복수의 디스플레이 디바이스를 위한 연속적인 가상 공간 제공 - Google Patents

복수의 디스플레이 디바이스를 위한 연속적인 가상 공간 제공 Download PDF

Info

Publication number
KR20220035183A
KR20220035183A KR1020227004800A KR20227004800A KR20220035183A KR 20220035183 A KR20220035183 A KR 20220035183A KR 1020227004800 A KR1020227004800 A KR 1020227004800A KR 20227004800 A KR20227004800 A KR 20227004800A KR 20220035183 A KR20220035183 A KR 20220035183A
Authority
KR
South Korea
Prior art keywords
virtual
real
display devices
world
windows
Prior art date
Application number
KR1020227004800A
Other languages
English (en)
Inventor
매튜 레이건
커트 카민스키
Original Assignee
엠에스지 엔터테인먼트 그룹 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엠에스지 엔터테인먼트 그룹 엘엘씨 filed Critical 엠에스지 엔터테인먼트 그룹 엘엘씨
Publication of KR20220035183A publication Critical patent/KR20220035183A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • G06F3/1446Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display display composed of modules, e.g. video walls
    • 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/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • 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/002Control 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 project the image of a two-dimensional display, such as an array of light emitting or modulating elements or a CRT
    • 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/14Display of multiple viewports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/243Image signal generators using stereoscopic image cameras using three or more 2D image sensors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/25Image signal generators using stereoscopic image cameras using two or more image sensors with different characteristics other than in their location or field of view, e.g. having different resolutions or colour pickup characteristics; using image signals from one sensor to control the characteristics of another sensor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/275Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/282Image signal generators for generating image signals corresponding to three or more geometrical viewpoints, e.g. multi-view systems
    • 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
    • G09G2340/0407Resolution change, inclusive of the use of different resolutions for different screen areas
    • 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
    • G09G2340/0464Positioning
    • 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/02Networking aspects
    • G09G2370/022Centralised management of display operation, e.g. in a server instead of locally

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • User Interface Of Digital Computer (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Processing Or Creating Images (AREA)
  • Digital Computer Display Output (AREA)

Abstract

복수의 디스플레이 디바이스에 대한 연속적인 가상 공간을 렌더링하기 위한 시스템, 방법, 및 컴퓨터 프로그램 제품 실시형태가 여기에 개시된다. 일 실시형태는 가상 평면 상의 가상 카메라의 투영을 식별하고 가상 평면 상의 가상 카메라의 투영의 교차에 기초하여 디스플레이 평면 영역을 결정함으로써 동작한다. 그 후, (i) 디스플레이 디바이스의 속성 및 (ii) 가상 카메라의 초점 거리에 기초하여 디스플레이 평면 영역 상의 복수의 실세계 디스플레이 디바이스와 관련된 복수의 가상 윈도우의 위치가 계산된다. 가상 윈도우를 각각의 디스플레이 평면 영역 위치에 배치한 후, 가상 윈도우 뒤에 있는 콘텐츠가 식별되고 해당 실세계 디스플레이 디바이스에 제공된다.

Description

복수의 디스플레이 디바이스를 위한 연속적인 가상 공간 제공
비디오는 전통적으로 다수의 실세계 디스플레이 디바이스들의 대규모 포럼들에 표시된다. 그렇게 함으로써, 시스템은 실세계 디스플레이 디바이스들에 걸친 비디오의 콘텐츠의 이동을 보여주는 데 이용된다. 그러나, 이전의 시스템들은 비디오의 콘텐츠를 응집력 있는 방식으로 실세계 디스플레이 디바이스에 제공하는 것을 잘못 관리해왔다. 예를 들어, 이전 시스템은 비디오에서 제공되는 필수 콘텐츠를 저장, 생성 및 렌더링하기 위해 특정 하드웨어 및 소프트웨어 요건들에 의존했다. 이와 같이, 이전 시스템은 상이한 수 및/또는 구성의 디스플레이 디바이스에 쉽게 적응할 수 없었다. 더욱이, 이전 시스템은 실세계 디스플레이 디바이스들에 걸쳐 눈에 띄는 지연 없이 비디오에서의 객체들의 움직임을 제공하는 데 어려움을 겪었다.
첨부된 도면은 본 명세서에 통합되어 명세서의 일부를 형성한다.
도 1은 일부 실시형태에 따른 복수의 디스플레이 디바이스를 위한 연속적인 가상 공간을 제공하는 시스템의 블록도를 도시한다.
도 2는 일부 실시형태에 따른 연속적인 가상 공간을 표시하는 복수의 디스플레이 디바이스를 도시한다.
도 3a, 도 3b, 도 4a 및 도 4b는 일부 실시형태에 따른 가상 공간으로 투영되는 가상 카메라의 사시도를 예시한다.
도 5 및 도 6은 일부 실시형태에 따른 연속적인 가상 공간을 제공하는 프로세스를 예시하는 플로우챠트를 도시한다.
도 7은 여러 실시형태들을 구현하는 데 유용한 예시의 컴퓨터 시스템을 도시한다.
도면들에 있어서, 동일한 참조 번호들은 일반적으로 동일한 또는 유사한 엘리먼트들을 표시한다. 또한, 일반적으로, 참조 번호의 가장 왼쪽 숫자는 그 참조 번호가 처음 나타나는 도면을 식별한다.
복수의 디스플레이 디바이스를 위한 연속적인 가상 공간을 제공하기 위한 시스템, 장치, 디바이스, 방법 및/또는 컴퓨터 프로그램 제품 실시형태, 및/또는 이들의 조합 및 하위 조합이 여기에 제공된다.
본 개시는 다수의 실세계 디스플레이 디바이스에 걸쳐 비디오를 제시하기 위한 시스템을 설명한다. 과거에 이러한 시스템들은 그들이 비디오의 그들의 부분을 제시하기 위해 고유한 파일들을 결정하고, 생성하고, 실세계 디스플레이 디바이스에 전송한다. 그러나 이전의 기본 프로세스는 그 시스템들 및 실세계 디스플레이 디바이스의 저장 및 계산 능력들에 의존했다. 구체적으로, 예를 들어, 시스템은 각각의 고유한 파일을 처리하기 위한 충분한 저장 및 계산 능력을 갖는 것이 요구되고 실세계 디스플레이 디바이스는 수신된 파일을 재생하는 것이 요구된다. 더욱이, 종래 시스템은 실세계에서 디스플레이 디바이스의 배치 주위에 자동화를 제공할 수 없고 콘텐츠가 응집된 방식으로 실세계 디스플레이 디바이스에 걸쳐 제시되도록 이러한 배치를 기반으로 가상 장면을 처리할 수 없다.
일부 실시형태에서, 비디오를 제시할 때, 현재 시스템들은 그들의 대응하는 실세계 디스플레이 디바이스(예를 들어, 수 및 구성)에 기초하여 가상 환경의 가상 평면에 가상 윈도우들을 제공한다. 그렇게 함으로써, 시스템은 가상 카메라가 각각의 가상 윈도우에 초점을 맞추고 그 안에 제시된 객체(예를 들어, 비디오의 콘텐츠)를 식별하는 것을 허용하는 위치 및 로케이션에서의 가상 환경의 가상 카메라를 제공한다. 이와 같이, 현재 시스템들은 가상 윈도우의 데이터를 식별하고 그들의 각각의 실세계 디스플레이 디바이스로 보낼 수 있다.
이러한 방식으로 작동함으로써, 이전 시스템과 달리, 여기에 설명된 실시형태는 공유된 카메라 관점에서 가상 환경에서 콘텐츠를 제시하기 위해 적절한 데이터를 실세계 디스플레이 디바이스에 제공할 수 있다. 그렇게 함으로써, 현재 시스템들은 실세계 디스플레이 디바이스들에 걸쳐 응집력 있는 방식으로 콘텐츠를 제시할 수 있다.
예를 들어, 일부 실시형태에서, 현재 시스템은 실세계 콘서트의 비디오를 다수의 실세계 디스플레이 디바이스들에 중계할 수 있다. 그렇게 함으로써, 시스템은 실세계 디스플레이 디바이스를 나타내는 가상 세계에서의 가상 윈도우들을 생성하고 그 가상 윈도우들을 둘러싸는 가상 평면 영역을 정의할 수 있다. 시스템은 가상 평면 영역 내에서 비디오의 장면들을 제시한다. 그리고 차례로, 시스템은 가상 윈도우에 대한 객체의 공간적 위치를 결정하고 특정 가상 윈도우의 필요한 데이터만 연관된 실세계 디스플레이 디바이스로 전송한다. 이러한 방식으로 작동함으로써 시스템은 장면 내에서 움직이는 객체를 실세계와 더 가깝게 닮은 응집력 있는 방식으로 제시할 수 있다. 그리고 시스템은 특정 실세계 디스플레이 디바이스가 표시할 필요가 있는 데이터만 보낼 수 있다.
도 1은 복수의 디스플레이 디바이스를 위한 연속적인 가상 공간을 제공하는 시스템의 블록도를 도시한다. 시스템(100)은 중앙 서버(102), 하나 이상의 로컬 서버(104), 및 하나 이상의 실세계 디스플레이 디바이스(106, 108, 110)를 포함한다. 중앙 서버(102)는 각각의 디스플레이 디바이스(106)와 통신하는 로컬 서버(104)와 통신한다. 이러한 서버 및/또는 디바이스는 동일한 엔티티 또는 상이한 엔티티에 의해 관리 및/또는 제공될 수 있다. 예를 들어, 중앙 서버(102)는 제3자 엔티티에 의해 관리 및/또는 제공될 수 있고, 로컬 서버(104) 및 디스플레이 디바이스(106)는 조직 및/또는 회사에 의해 관리 및/또는 제공될 수 있다.
중앙 서버(102)는 통신 라인 또는 매체 (112) 를 통해 로컬 서버(104)와 통신한다. 차례로, 로컬 서버(104)는 통신 라인 또는 매체(114)를 통해 디스플레이 디바이스(108)와 통신한다. 통신 라인 또는 매체(112, 114)는 사설 또는 공용일 수 있다.
이와 같이, 중앙 서버(102)는 재생을 위해 디스플레이 디바이스(106, 108, 110)에 대한 비디오 파일을 저장 및/또는 제공한다. 이와 같이, 중앙 서버(102)는 외부 소스로부터 비디오 파일을 수신할 수 있다. 그리고 중앙 서버(102)는 비디오 파일을 디스플레이 디바이스(106, 108, 110)에 제공함에 있어서 분산 재생 시스템의 역할을 할 수 있다. 비디오 파일에는 복제된 실세계 환경이 포함될 수 있다. 실세계 이벤트의 복제를 포함하는 비디오 파일의 예로는 실세계 이벤트(예를 들어, 라이브 콘서트) 또는 이전에 녹화된 실세계 이벤트(예를 들어, 텔레비전 쇼 "Numb3rs")의 라이브 녹화가 있다.
그 다음, 중앙 서버(102)는 디스플레이 디바이스(106, 108, 110) 상에 제시될 콘텐츠를 식별한다. 그 콘텐츠는 하나 이상의 객체를 포함할 수 있는 장면(예를 들어, 연속 동작의 시퀀스)을 포함할 수 있다. 따라서, 장면 및/또는 객체는 실생활 또는 확장 현실(예를 들어, 증강 현실, 혼합 현실 및/또는 가상 현실)에서 발생할 수 있다. 이러한 맥락에서, 비디오 파일의 장면 및/또는 객체는 2차원이다.
상술된 바와 같이, 중앙 서버(102)는 디스플레이 디바이스들(106, 108 및 110)의 세트들과 통신하는 로컬 서버(104)와 통신한다. 예를 들어, 로컬 서버(104a)는 제1 세트의 디스플레이 디바이스(106)와 통신할 수 있고, 로컬 서버(104b)는 제2 세트의 디스플레이 디바이스(108)와 통신할 수 있고, 로컬 서버(104c)는 제3 세트의 디스플레이 디바이스(110)와 통신할 수 있다. 이와 같이, 로컬 서버(104) 및 디스플레이 디바이스(106, 108, 110)의 세트는 (예를 들어, 빌딩 내의) 상이한 로케이션들에 제공될 수 있다. 차례로, 디스플레이 디바이스(106, 108, 110)의 각 세트는 동일한 비디오 파일을 제시한다. 그리고 각각의 별개의 디스플레이 디바이스(예를 들어, 디스플레이 디바이스(106a, 108a, 110a))는 서로 동기화되어 있다.
따라서, 디스플레이 디바이스(106, 108, 110)의 세트의 수에 따라, 중앙 서버(102) 및/또는 로컬 서버(104)는 비디오 파일로부터 장면을 연속적으로 및 동기적으로 제시하기 위해 적절한 처리를 수행한다. 당업자에 의해 이해되는 바와 같이, 장면들은 비디오 파일의 크롭 (crop) 을 표현한다.
예를 들어, 디스플레이 디바이스(예를 들어, 디스플레이 디바이스(106))의 단일 세트만 있는 경우, 중앙 서버(102) 또는 로컬 서버(104a)가 처리를 수행할 수 있거나, 그들은 그렇게 함으로써 단일 서버로서 작용할 수 있다. 그러나, 디스플레이 디바이스(106, 108, 110)의 다중 세트가 있는 경우(예를 들어, 디스플레이 디바이스(106 및 108)), 중앙 서버(102)는 원본 비디오 파일로부터 로컬 서버(104)(예를 들어, 로컬 서버(104a 및 104b))로 데이터의 카피들을 전송한다. 이와 같이 시간 데이터는 지속적으로 스트리밍된다. 그 후 로컬 서버(104)는 타이밍 데이터와 함께 처리를 수행하여 상이한 세트들(예를 들어, 디스플레이 디바이스(106a, 108a))로부터의 대응하는 디스플레이 디바이스가 중앙 서버(102)의 비디오 파일을 동기화하여 제시한다.
단순함을 위해, 다음 개시는 처리 단계를 수행하는 것으로서 중앙 서버(102)를 논의할 것이다. 그러나, 전술한 관점에서, 당업자는 디스플레이 디바이스(106, 108, 110)의 세트의 수에 따라 중앙 서버(102) 및/또는 로컬 서버(104)가 처리 단계를 수행할 수 있다는 것을 쉽게 이해할 것이다.
중앙 서버(102)는 디스플레이 디바이스들(106, 108, 110)의 각 세트 자체의 속성들 또는 그들 사이의 관계에 관한 데이터를 수신한다. 데이터는 사전에 저장되며 인가된 개인에 의해 수동으로 제공될 수 있다. 디스플레이 디바이스들(106, 108, 110) 각각에 관한 예시적인 데이터는 정의된 실세계 평면 상의 지리적 위치(예를 들어, 벽 상의 특정 로케이션), 디스플레이 해상도(예를 들어, 720p, 1080p, 2K 등), 물리적 크기(예를 들어, 32인치, 50인치, 60인치 등), 시청 거리(예를 들어, 6.3-10.4피트, 6.9-11.5피트, 7.5-12.5피트, 8.1-13.5피트 등), 기술 유형(예를 들어, 액정 디스플레이 (LCD), 유기 발광 다이오드 디스플레이 (OLED), 플라즈마 디스플레이 패널 (PDP) 등), 및 디스플레이 유형(예를 들어, 2차원)을 포함한다. 각 세트의 디스플레이 디바이스(106, 108, 110) 사이의 관계에 관한 예시적인 데이터는 각 세트의 디스플레이 디바이스(106, 108, 110) 각각 사이의 거리를 포함한다. 예를 들어, 인접한 디스플레이 디바이스(106a, 106b, 106c) 사이의 거리.
인접한 디스플레이 디바이스(106, 108 및 110) 사이의 거리 및 디스플레이 디바이스(106, 108 및 110)의 크기에 기초하여, 중앙 서버(102)는 디스플레이 디바이스(106, 108 및 110)의 구성(예를 들어, 행 및 열의 수)을 결정한다. 도 2는 시청자(204)를 위한 연속적인 가상 공간을 제공하는 단일 행의 3개의 디스플레이 디바이스(202)의 예시적인 공간 구성을 도시한다. 그러나, 당업자에게 명백한 바와 같이 다른 구성이 가능하다.
도 1 을 다시 참조하면, 연속적인 가상 공간을 제공하기 위해, 중앙 서버(102)는 디스플레이 디바이스(106, 108, 110)에 제시될 비디오 파일의 일부(예를 들어, 비디오 크롭)를 식별한다. 위에서 언급한 바와 같이 비디오 파일은 실세계 환경일 수도 있고 가상 환경일 수도 있다. 따라서, 중앙 서버(102)는 복제된 실세계 환경 또는 가상 환경의 위치 및/또는 로케이션에 가상 카메라를 배치한다.
이제 도 3a 및 도 3b를 참조하면, 중앙 서버(102)(도 1에 도시됨)는 그 후 비디오 클립의 일부의 가상 환경(300)에 가상 평면(302)을 제공할 수 있다. 일부 실시형태들에서는, 다수의 가상 평면들(302)이 가상 환경(300)에서 제공될 수도 있다. 가상 평면들 (302) 은 물리적으로 서로 분리되어 있다. 이와 같이 가상 평면들은 상이한 축들에 있을 수 있다. 이러한 맥락에서, 하나의 가상 평면은 y축에 평행하게 실행될 수 있고 다른 가상 평면은 x축에 평행하게 실행될 수 있다. 아래에서 더 상세히 논의되는 바와 같이, 가상 평면들(302)은 그들 자신의 가상 카메라(306) 및 가상 평면 영역(310)과 연관된다. 더욱이, 각각의 가상 평면(302)은 실세계 디스플레이 디바이스(106, 108, 110)의 세트에 대응할 수 있다. 예를 들어, 하나의 가상 평면은 실세계 디스플레이 디바이스(106)의 제1 세트에 대응할 수 있고, 제2 가상 평면은 실세계 디스플레이 디바이스(108)의 제2 세트에 대응할 수 있다.
도 3a는 복제된 환경(300)에서 가상 평면(302)의 사시 정면도를 예시한다. 도 3b는 복제된 환경(300)에서 가상 평면(302)의 사시 후면도를 예시한다. 복제된 환경(300)은 객체(304)를 포함한다. 이와 같이, 가상 평면(302)은 객체(304)의 적어도 부분적으로 전방에 위치된다. 비디오의 장면이 2차원 또는 3차원일 수 있기 때문에 복제된 환경(300) 및/또는 객체(304)도 2차원 또는 3차원일 수 있고 객체는 실세계 또는 가상 객체일 수 있다.
(도 1 에 도시된) 중앙 서버 (102) 는 그 후 가상 평면(302)을 식별하고 가상 카메라(306)를 복제된 환경(300)에 배치한다. 가상 카메라(306)는 가상 평면(302) 상으로 투영(308)을 제공하며, 이것은 객체(304)의 적어도 일부를 캡처한다. 이와 같이, 가상 카메라(306)의 투영(308)은 가상 평면(302)과 교차한다. 그렇게 함으로써, 그 교차는 가상 평면(302) 상의 디스플레이 평면 영역(310)을 정의한다. 이러한 맥락에서, 가상 카메라(306)의 투영(308)은 임의의 폐쇄된 형상일 수 있고 가상 평면(302) 상의 디스플레이 평면 영역(310)의 형상을 정의할 수 있다. 예를 들어, 예시된 바와 같이, 투영(308)의 형상은 직사각형 절두체일 수 있고, 디스플레이 평면 영역(310)의 형상은 직사각형일 수 있다. 디스플레이 평면 영역(310)의 형상은 실세계 디스플레이의 형상과 무관하게 직사각형일 수 있다. 예를 들어, 실세계 디스플레이가 정사각형(즉, 변들이 동일한 길이를 가짐)인 경우, 디스플레이 평면 영역(310)은 여전히 직사각형이다.
디스플레이 평면 영역(310)은 가상 평면(302) 상의 임의의 로케이션에 있을 수 있다. 디스플레이 평면 영역(310)은 전체적으로 객체(304)의 전방에 있을 수도 있다. 아래에서 더 자세히 설명되는 바와 같이, 디스플레이 평면 영역(310)의 크기는 가상 카메라(306)의 투영(308), 가상 평면(302) 상의 가상 윈도우의 수, 및/또는 가상 평면(302)에서의 가상 윈도우의 구성에 기초한다.
이와 같이, 가상 평면(302) 상으로의 가상 카메라(306)의 투영(308)은 디스플레이 평면 영역(310)을 정의한다. 그리고 디스플레이 평면 영역(310)은 디스플레이 평면 영역(310)의 크기 및 가상 평면 (302) 까지의 카메라(302)의 거리에 기초하여 다양한 시야를 제공하는 가상 윈도우들이 위치해야 하는 로케이션을 정의한다. 예를 들어, 시야는 arctan(0.5 x (디스플레이 평면 영역(310)의 폭/디스플레이 평면 영역(310)까지의 가상 카메라(306)의 거리)) x 2와 같을 수 있다. 이제 도 4a 및 도 4b를 참조하면, 비디오 클립의 일부의 복제된 환경(300)(예를 들어, 복제된 실세계 또는 가상 환경)의 가상 평면(402) 상의 복수의 가상 윈도우(412)가 도시되어 있다. 도 4a는 복제된 환경(400)에서 가상 평면(402)의 사시 정면도를 예시한다. 도 4b는 복제된 환경(400)에서 가상 평면(402)의 사시 후면도를 예시한다. 위에서 언급한 바와 같이, 가상 윈도우(412)는 실세계 디스플레이 디바이스(106, 108, 110)(도 1에 도시됨)의 각 세트의 특정 디스플레이 디바이스에 대응하고 일대일 상관을 갖는다. 예를 들어, 가상 윈도우(412a)은 디스플레이 디바이스(106a, 108a, 및/또는 110a)에 대응할 수 있고, 가상 윈도우(412b)은 디스플레이 디바이스(106b, 108b, 및/또는 110b)에 대응할 수 있으며, 가상 윈도우(412c)은 디스플레이 디바이스(106c, 108c 및/또는 110c)에 대응할 수 있다.
가상 윈도우(412)는 가상 평면(402) 내의 2차원 공간 로케이션(예를 들어, x 및 y 위치)을 갖는다. 일부 실시형태에서, 가상 평면(402) 내의 가상 윈도우(412)의 공간적 로케이션은 실세계에서 (도 1의) 실세계 디스플레이 디바이스(106, 108, 110)의 공간적 로케이션 및 실세계 디스플레이 디바이스(106, 108, 110)의 특성에 기초한다. 이를 통해 가상 세계에서 실세계 디스플레이를 재현할 수 있다. 예를 들어, 실세계 디스플레이 디바이스(106, 108, 110)가 실세계에서 특정 공간 로케이션을 갖는다면, 가상 세계에서의 가상 윈도우(412)의 공간적 배치는 그것에 기초한다. 다른 실시형태에서, 실세계 디스플레이 디바이스(106, 108, 110)의 공간적 로케이션은 가상 윈도우(412)의 공간적 로케이션에 기초한다. 예를 들어, 가상 윈도우(412)는 가상 세계에서 특정한 공간적 로케이션을 가지며, 실세계에서의 실세계 디스플레이 디바이스(106, 108, 110)의 공간적 로케이션은 이를 기반으로 한다. 이와 같이, 이들 실시형태 중 어느 하나에서, 가상 세계는 실세계 단위와 유사한 단위를 갖는다. 예를 들어, 1 가상 세계 단위는 실세계의 특정 수의 인치(예를 들어, 1인치, 3인치, 6인치 또는 12인치)와 유사할 수 있다.
이러한 방식으로 동작함으로써, 가상 카메라(402)는 가상 윈도우(412)과 관련하여 가상 환경의 가상 카메라(402)와 실세계 디스플레이 디바이스(106, 108, 110)에 대한 동일한 공간 관계를 갖는 실세계에서의 가상적인 카메라를 표현할 수 있다.
전술한 바와 같이, 가상 카메라(406)는 가상 평면들 (402) 중 하나에 투영을 제공하고, 그 투영은 디스플레이 평면 영역(410)을 결정한다. 이러한 맥락에서, 가상 윈도우(412)는 디스플레이 평면 영역(410)의 적어도 일부 내에 배치된다. 따라서, 가상 카메라(406)는 가상 윈도우들 (412) 각각에 그의 투영을 포커싱할 수 있다. 따라서, 콘텐츠(예를 들어, 도 3a 의 객체(304))가 가상 환경(400)에서 그리고 가상 윈도우(412) 뒤에 제공되기 때문에, 가상 카메라(406)가 객체를 포함하는 가상 윈도우(412)의 뷰를 캡처하며, 이것은 그 후 대응하는 디스플레이 디바이스(106, 108 및 110)(도 1에 도시됨)에 제공된다.
게다가, 위에서 설명된 바와 같이, 디스플레이 평면 영역(410)의 크기는 가상 카메라(406)의 투영, 가상 평면(402) 상의 가상 윈도우들의 수, 및/또는 가상 평면(402) 상의 가상 윈도우들의 구성에 의존한다. 이와 같이, 투영에 의해 제공되는 가상 카메라(406)의 시야, 및 디스플레이 평면 영역(410)의 크기는 가상 윈도우(412)의 크기 및 구성에 의존한다. 예를 들어, 디스플레이 평면 영역(410)은 가상 윈도우(412)의 구성(예를 들어, 1(행) x 3(열))과 적어도 동일하거나 더 큰 크기를 가질 수 있다. 이와 같이, 가상 윈도우(412)는 디스플레이 평면 영역(410)의 크기, 복수의 가상 윈도우(412) 각각의 크기 및/또는 가상 카메라(406)의 초점 거리에 기초하여 교정된다.
더욱이, 디스플레이 평면 영역(410) 및/또는 가상 윈도우에 대한 가상 카메라(406)의 로케이션을 결정한 후, 가상 카메라(406)에 대해 복수의 자식 가상 카메라가 제공될 수 있다. 이와 같이, 가상 카메라(406)는 마스터 가상 카메라로 간주될 수 있다. 따라서, 가상 카메라(406)(또는 마스터 가상 카메라)는 자식 가상 카메라의 능력(예를 들어, 시야 거리, 초점, 선명도 등)을 결정할 수 있다. 이와 같이, 자식 카메라는 가상 카메라(406)의 속성을 상속할 수 있다.
이러한 맥락에서, 자식 가상 카메라의 각각은 가상 윈도우(412) 중 하나에 대응할 수 있다. 따라서, 가상 윈도우(412)는 (도 1의) 실세계 디스플레이 디바이스(106, 108, 110)에 대응하기 때문에, 자식 가상 카메라는 또한 실세계 디스플레이 디바이스(106, 108, 110)에 대응할 수 있다. 그리고 각각의 자식 가상 카메라는 특정 실세계 디스플레이 디바이스에 대응할 수 있다. 예를 들어, 자식 가상 카메라는 실세계 디스플레이 디바이스와 1:1 비율을 가질 수 있다. 이와 같이, 자식 가상 카메라들은 그들의 대응하는 가상 윈도우들(412)의 콘텐츠와 관련된 데이터를 제공할 수 있다.
도 5 및 도 6 은 일 실시형태에 따른 복수의 디스플레이 디바이스를 위한 연속적인 가상 공간을 제공하는 방법들 (500 및 600) 의 플로우챠트들이다. 방법(500 및 600)은 하드웨어(예를 들어, 회로, 전용 논리, 프로그램 가능 논리, 마이크로코드 등), 소프트웨어(예를 들어, 처리 장치에서 실행되는 명령), 또는 이들의 조합을 포함할 수 있는 처리 논리에 의해 수행될 수 있다. 여기에 제공된 개시 내용을 수행하기 위해 모든 단계가 필요한 것은 아님을 이해해야 한다. 또한, 일부 단계는 당업자에 의해 이해되는 바와 같이 동시에 수행되거나 도 5 및 도 6 에 도시된 것과 다른 순서로 수행될 수 있다.
이제 도 5 를 참조하면, 디스플레이 디바이스(106, 108 및 110)(예를 들어, 디스플레이 디바이스(106))의 단일 세트에만 연속 가상 공간을 제공하기 위한 방법(500)이 도 1 및 도 2 를 참조하여 설명될 것이다. 그러나, 방법 (500) 은 그러한 예시의 실시형태로 한정되지 않는다.
502 에서, 중앙 서버(102)는 실세계 디스플레이 디바이스(106, 108, 110)의 하나 이상의 세트에 관한 디스플레이 정보를 획득한다. 상술된 바와 같이, 실세계 디스플레이 디바이스(106, 108, 110)의 각 세트는 동일한 비디오 파일을 제시하도록 제공된다. 예를 들어, 도 2 에 도시된 바와 같이, 디스플레이 디바이스들의 세트는 시청자(204)를 위한 연속적인 가상 공간(102)을 제공한다. 이와 같이, 중앙 서버(102)는 그 세트 내의 각 디스플레이 디바이스 및 그 세트 자체의 위치(예를 들어, 센티미터 단위), 회전(예를 들어, 도 단위), 치수(예를 들어, 센티미터 단위), 해상도(예를 들어, 픽셀 단위), 및 종횡비(예를 들어, 센티미터 단위)를 수신한다.
504 에서, 중앙 서버(102)는 단일 세트의 실세계 디스플레이 디바이스(106, 108 및 110)(예를 들어, 디스플레이 디바이스(106)만) 가 존재하는지 또는 다수의 세트들의 디스플레이 디바이스(106, 108 및 110)(예를 들어, 디스플레이 디바이스(106 및 108))가 존재하는지 여부를 결정한다. 중앙 서버(102)가 다수의 세트들의 디스플레이 디바이스(106, 108, 110)가 존재한다고 결정하면, 방법(500)은 506으로 진행한다. 그러나, 중앙 서버(102)가 디스플레이 디바이스(106, 108, 110)의 단일 세트만 있다고 결정하면, 방법(500)은 508로 진행한다.
506 에서, 중앙 서버(102)는 디스플레이 실세계 디바이스(106, 108, 110)에서 시청될 콘텐츠를 타이밍 데이터와 함께 하나 이상의 로컬 서버(들)(104)로 전달한다. 그렇게 하기 위해, 중앙 서버(102)는 로컬 서버(104)의 타임스탬프 및/또는 타임코드를 전송한다. 이것은 디스플레이 디바이스(106, 108, 110)의 다양한 세트 다수의 세트의 대응하는 디스플레이 디바이스(예를 들어, 디스플레이 디바이스(106a 및 108a))가 동시에 동일하거나 유사한 데이터를 제시하는 것을 허용할 것이다.
508 에서, 중앙 서버(102) 또는 로컬 서버(104)는 디스플레이 디바이스 (106, 108, 110) 에서 시청될 콘텐츠에 기초하여 실세계 디스플레이 디바이스(106, 108, 110)의 세트들 각각 사이에서 공유될 복제된 환경의 하나 이상의 속성을 결정한다.
이에 따라, 디스플레이 디바이스(106, 108 또는 110)의 단일의 세트 (예를 들어, 디스플레이 디바이스(106))가 존재하는 일부 실시형태에서, 중앙 서버(102) 또는 각각의 로컬 서버(104)는 실세계 디스플레이 디바이스 (106, 108 또는 110)의 특정 세트의 속성을 결정한다. 실세계 디스플레이 디바이스(106, 108 및 110)의 다수의 세트들 (예를 들어, 디스플레이 디바이스(106 및 108))가 존재하는 다른 실시형태에서, 로컬 서버들(104)은 그들 각각의 실세계 디스플레이 디바이스(106, 108 및 110)에 대한 속성을 결정한다.
510에서, 중앙 서버(102) 또는 로컬 서버(104)는 실세계 디스플레이 디바이스의 각 세트에 대응하고 가상 평면 상에 제공된 가상 윈도우로부터 마스터 가상 카메라를 생성한다. 위에서 논의된 바와 같이, 가상 평면에 대해 마스터 가상 카메라가 제공될 수 있다. 그리고 마스터 가상 카메라의 속성을 결정한 후, 가상 윈도우에 대응하는 복수의 자식 가상 카메라가 제공될 수 있다.
512에서, 중앙 서버(102) 또는 로컬 서버(104)는 가상 환경에서 복수의 윈도우와 관련된 속성에 기초하여 마스터 카메라의 뷰 포트 및/또는 그 자식 카메라의 뷰포트를 변경한다.
514에서, 중앙 서버(102) 또는 로컬 서버(104)는 가상 윈도우(412)의 콘텐츠에 대한 그들의 뷰에 기초하여 마스터 또는 가상 카메라로부터 데이터를 수신한다.
516에서, 중앙 서버(102) 또는 로컬 서버(104)는 각각의 복수의 가상 윈도우(412)에 대응하는 복수의 실세계 디스플레이 디바이스(106, 108, 110)에 데이터를 제공한다.
위에서 설명된 바와 같이, 디스플레이 디바이스(106, 108 및 110)의 단일 세트 (예를 들어, 디스플레이 디바이스(106))가 있는 경우, 중앙 서버(102) 또는 적절한 로컬 서버(예를 들어, 로컬 서버(104a))는 단계 508, 510 및 512를 수행한다. 이러한 맥락에서, 전술한 바와 같이, 중앙 서버(102) 및 적절한 로컬 서버(104)는 단일 서버로 결합될 수 있다. 그러나, 디스플레이 디바이스(106, 108 및 110)의 다중 세트(예를 들어, 디스플레이 디바이스(106 및 108))가 존재하는 경우, 로컬 서버(104)는 중앙 서버(102)로부터 타이밍 데이터를 수신하고 타이밍 데이터에 따라 단계 508, 510, 512 및 514를 수행한다.
이제 도 6 을 참조하여, 방법 (600) 이 도 1, 도 3, 도 4 및 도 5 를 참조하여 설명될 것이다. 그러나, 방법 (600) 은 그러한 예시의 실시형태로 한정되지 않는다.
602에서, 중앙 서버(102) 또는 로컬 서버(104)는 복제된 환경(300)(예를 들어, 복제된 실세계 또는 가상 환경)에서 제공된 가상 평면(302) 상의 가상 카메라(306)의 투영(308)을 식별한다.
604에서, 중앙 서버(102) 또는 로컬 서버(104)는 가상 평면(302)에 대한 가상 카메라(306)의 투영(308)의 교차에 기초하여 디스플레이 평면 영역(310)을 결정한다.
606에서, 중앙 서버(102) 또는 로컬 서버(104)는 (i) 복수의 실세계 디스플레이 디바이스(106, 108 및 110)의 하나 이상의 속성, 및 (ii) 가상 카메라(402)의 초점 거리에 기초하여 디스플레이 평면 영역 (410) 상에 제공된 복수의 가상 윈도우 (412) 각각에 대한 위치를 계산한다. 이에 따라, 복수의 가상 윈도우(412) 각각은 복수의 디스플레이 디바이스(106, 108, 110) 중 각각의 하나에 관련/대응한다.
608에서, 중앙 서버(102) 또는 로컬 서버(104)는 디스플레이 평면 영역(410) 상의 그 위치에 복수의 가상 윈도우(412)를 배치한다.
610에서, 중앙 서버(102) 또는 로컬 서버(104)는 복수의 가상 윈도우(412) 중 적어도 하나의 뒤에 적어도 부분적으로 존재하는 콘텐츠를 식별한다. 콘텐츠는 2차원 또는 3차원일 수 있는 객체(304)일 수 있다.
612에서, 중앙 서버(102) 또는 로컬 서버(104)는 콘텐츠를 갖는 복수의 가상 윈도우(412) 중 적어도 하나와 관련된 복수의 디스플레이 디바이스(106, 108, 110) 중 각각에 데이터를 제공한다.
도 6 에 관하여 상기 설명된 바와 같이, 단계 (602, 604, 606, 608, 610 및 612) 는 중앙 서버(102) 및/또는 로컬 서버(104)에 의해 수행될 수 있다. 예를 들어, 일부 실시형태에서, 단계 (602, 604, 606, 608, 610 및/또는 612) 는 중앙 서버(102)에 의해 수행되고 로컬 서버(104)에 제공된다.
다양한 실시형태는 예를 들어 도 7에 도시된 컴퓨터 시스템(700)과 같은 하나 이상의 잘 알려진 컴퓨터 시스템을 사용하여 구현될 수 있다. 하나 이상의 컴퓨터 시스템(700)은 예를 들어 본 명세서에 논의된 실시형태 중 임의의 것, 뿐만 아니라 이들의 조합 및 하위 조합을 구현하는 데 사용될 수 있다.
컴퓨터 시스템(700)은 프로세서(704)와 같은 하나 이상의 프로세서(중앙 처리 장치 또는 CPU라고도 함)를 포함할 수 있다. 프로세서(704)는 통신 기반구조 또는 버스(706)에 연결될 수 있다.
컴퓨터 시스템(700)은 또한 사용자 입력/출력 인터페이스(들)(702)를 통해 통신 기반구조(706)와 통신할 수 있는 모니터, 키보드, 포인팅 장치 등과 같은 사용자 입력/출력 장치(들)(703)를 포함할 수 있다.
프로세서들(704) 중 하나 이상은 그래픽 처리 장치(GPU)일 수 있다. 일 실시형태에서, GPU는 수학적으로 집약적인 애플리케이션을 처리하도록 설계된 특수 전자 회로인 프로세서일 수 있다. GPU는 컴퓨터 그래픽 응용 프로그램, 이미지, 비디오 등에 공통인 수학 집약적인 데이터와 같은 큰 데이터 블록의 병렬 처리에 효율적인 병렬 구조를 가질 수 있다.
컴퓨터 시스템(700)은 또한 랜덤 액세스 메모리(RAM)와 같은 메인 또는 주 메모리(708)를 포함할 수 있다. 메인 메모리(708)는 캐시의 하나 이상의 레벨을 포함할 수 있다. 메인 메모리(708)는 제어 로직(즉, 컴퓨터 소프트웨어) 및/또는 데이터를 그 안에 저장했을 수 있다.
컴퓨터 시스템(700)은 또한 하나 이상의 보조 저장 장치 또는 메모리(710)를 포함할 수 있다. 보조 메모리(710)는 예를 들어, 하드 디스크 드라이브(712) 및/또는 착탈가능 저장 장치 또는 드라이브(714)를 포함할 수 있다. 착탈가능 저장 드라이브(714)는 플로피 디스크 드라이브, 자기 테이프 드라이브, 콤팩트 디스크 드라이브, 광학 저장 장치, 테이프 백업 장치, 및/또는 임의의 다른 저장 장치/드라이브일 수 있다.
착탈가능 저장 드라이브(714)는 착탈가능 저장 유닛(718)과 상호작용할 수 있다. 착탈가능 저장 유닛(718)은 컴퓨터 소프트웨어(제어 로직) 및/또는 데이터가 저장된 컴퓨터 사용 가능 또는 판독 가능한 저장 장치를 포함할 수 있다. 착탈가능 저장 유닛(718)은 플로피 디스크, 자기 테이프, 콤팩트 디스크, DVD, 광학 저장 디스크, 및/또는 기타 컴퓨터 데이터 저장 장치일 수 있다. 착탈가능 저장 드라이브(714)는 착탈가능 저장 유닛(718)으로부터 판독 및/또는 기록할 수 있다.
보조 메모리(710)는 컴퓨터 프로그램 및/또는 다른 명령 및/또는 데이터가 컴퓨터 시스템(700)에 의해 액세스되는 것을 허용하기 위한 다른 수단, 장치, 컴포넌트, 기구 또는 기타 접근 방식을 포함할 수 있다. 이러한 수단, 디바이스, 컴포넌트, 기구 또는 다른 접근 방식들은 예를 들어, 착탈가능 저장 유닛 (722) 및 인터페이스 (720) 를 포함할 수도 있다. 착탈가능 저장 유닛(722) 및 인터페이스(720)의 예는 프로그램 카트리지 및 카트리지 인터페이스(예를 들어, 비디오 게임 장치에서 발견됨), 착탈가능 메모리 칩(예를 들어, EPROM 또는 PROM) 및 관련 소켓, 메모리 스틱 및 USB 포트, 메모리 카드 및 관련 메모리 카드 슬롯, 및/또는 기타 착탈가능 저장 장치 및 관련 인터페이스를 포함할 수 있다.
컴퓨터 시스템 (700) 은 또한 통신 또는 네트워크 인터페이스 (724) 를 더 포함할 수도 있다. 통신 인터페이스(724)는 컴퓨터 시스템(700)이 외부 장치, 외부 네트워크, 외부 엔티티 등 (참조 번호 728에 의해 개별적으로 및 집합적으로 참조됨) 의 임의의 조합과 통신하고 상호 작용하는 것을 가능하게 할 수 있다. 예를 들어, 통신 인터페이스(724)는 컴퓨터 시스템 (700) 이 유선 및/또는 무선(또는 이들의 조합)일 수 있고 LAN, WAN, 인터넷 등을 포함할 수 있는 통신 경로 (726) 를 통해 외부 또는 원격 디바이스 (728) 와 통신하는 것을 허용할 수 있다. 제어 로직 및/또는 데이터는 통신 경로(726)를 통해 컴퓨터 시스템(700) 으로 및 그것으로부터 송신될 수 있다.
컴퓨터 시스템(700)은 또한 몇 가지 비제한적인 예를 들자면, 개인 휴대 정보 단말기(PDA), 데스크탑 워크스테이션, 랩톱 또는 노트북 컴퓨터, 넷북, 태블릿, 스마트 폰, 스마트 워치 또는 기타 웨어러블 기기, 가전제품, 사물 인터넷의 일부, 및/또는 임베디드 시스템 중 임의의 것 또는 이들의 임의의 조합일 수 있다.
컴퓨터 시스템(700)은 원격 또는 분산 클라우드 컴퓨팅 솔루션; 로컬 또는 온-프레미스 소프트웨어("온-프레미스" 클라우드 기반 솔루션); "서비스로서의" 모델(예를 들어, 서비스로서의 콘텐츠(CaaS), 서비스로서의 디지털 콘텐츠(DCaaS), 서비스로서의 소프트웨어(SaaS), 서비스로서의 관리 소프트웨어(MSaaS), 서비스로서의 플랫폼(PaaS), 서비스로서의 데스크톱(DaaS), 서비스로서의 프레임워크(FaaS), 서비스로서의 백엔드(BaaS), 서비스로서의 모바일 백엔드(MBaaS), 서비스로서의 인프라(IaaS) 등); 및/또는 전술한 예 또는 다른 서비스 또는 전달 패러다임의 임의의 조합을 포함하는 하이브리드 모델을 포함하지만 이에 국한되지 않는 임의의 전달 패러다임을 통해 임의의 애플리케이션 및/또는 데이터에 액세스하거나 호스팅하는 클라이언트 또는 서버일 수 있다.
컴퓨터 시스템(700)의 모든 적용 가능한 데이터 구조, 파일 형식 및 스키마는 JSON(JavaScript Object Notation), XML(Extensible Markup Language), YAML(Yet Another Markup Language), XHTML(Extensible Hypertext Markup Language), WML(Wireless Markup Language), MessagePack, XML 사용자 인터페이스 언어 (XUL), 또는 임의의 다른 기능적으로 유사한 표현을 단독으로 또는 조합하여 포함하지만 이에 국한되지 않는 표준에서 파생될 수 있다. 또는 독점 데이터 구조, 형식 또는 스키마를 독점적으로 또는 알려지거나 공개된 표준과 조합하여 사용할 수 있다.
일부 실시형태에서, 제어 로직(소프트웨어)이 저장된 유형의 비일시적 컴퓨터 사용 가능 또는 판독 가능 매체를 포함하는 유형의 비일시적 장치 또는 제조 물품은 또한 본 명세서에서 컴퓨터 프로그램 제품 또는 프로그램 저장 디바이스로 지칭될 수 있다. 이것은 컴퓨터 시스템(700), 메인 메모리(708), 보조 메모리(710), 착탈가능 저장 유닛(718, 722), 그리고 전술한 것들의 임의의 조합을 구현하는 유형의 제조 물품을 포함하지만 이에 국한되지 않는다. 그러한 제어 로직은 (컴퓨터 시스템(700)과 같은) 하나 이상의 데이터 처리 장치에 의해 실행될 때 이러한 데이터 처리 장치가 본 명세서에 기술된 바와 같이 동작하게 할 수 있다.
본 개시에 포함된 교시에 기초하여, 도 7 에 도시된 것 이외의 데이터 처리 장치, 컴퓨터 시스템 및/또는 컴퓨터 아키텍처를 사용하여 본 개시내용의 실시형태를 실시하고 사용하는 방법이 관련 기술분야(들)의 당업자에게 명백할 것이다. 특히, 실시형태는 본 명세서에 기술된 것 이외의 소프트웨어, 하드웨어, 및/또는 운영 체제 구현으로 동작할 수 있다.
임의의 다른 섹션이 아닌 상세한 설명 섹션은 청구범위를 해석하기 위해 사용되도록 의도됨이 인식될 것이다. 다른 섹션은 발명자(들)에 의해 고려되는 바와 같은 모두가 아닌 하나 이상의 예시적인 실시형태들을 제시할 수도 있고, 따라서, 본 개시 또는 첨부된 청구항들을 어떤 방식으로든 한정하도록 의도되지 않는다.
본 개시는 예시적인 분야 및 애플리케이션에 대한 예시적인 실시형태를 설명하지만, 본 개시가 이에 제한되지 않는다는 것을 이해해야 한다. 다른 실시형태 및 그에 대한 수정이 가능하고, 본 개시의 범위 및 사상 내에 있다. 예를 들어, 그리고 이 단락의 일반성을 제한하지 않고, 실시형태는 도면에 예시되고/되거나 여기에 설명된 소프트웨어, 하드웨어, 펌웨어, 및/또는 엔티티로 제한되지 않는다. 또한, 실시형태(본원에 명시적으로 기술되었는지 여부에 관계없이)는 본 명세서에 기술된 예를 넘어서는 분야 및 애플리케이션에 상당한 유용성을 갖는다.
실시형태들은 명시된 기능들의 구현 및 그 관계들을 예시하는 기능적 빌딩 블록들의 도움으로 여기서 설명되었다. 이들 기능적 빌딩 블록들의 경계들은 설명의 편의를 위해 본 명세서에서 임의로 정의되었다. 명시된 기능들 및 그 관계들 (또는 이들의 등가물들) 이 적절하게 수행되는 한, 대안적인 경계들이 정의될 수 있다. 또한, 대안적인 실시형태는 여기에 설명된 것과 다른 순서를 사용하여 기능 블록, 단계, 동작, 방법 등을 수행할 수 있다.
여기의 "일 실시형태", "실시형태", "예시적인 실시형태", 또는 유사한 어구들의 언급은 설명된 실시형태가 특정 구성, 구조, 또는 특징을 포함할 수 있지만, 모든 실시형태가 반드시 그 특정 구성, 구조, 또는 특징을 포함하지 않을 수 있다는 것을 나타낸다. 또한, 그러한 어구는 반드시 동일한 실시형태를 지칭하는 것은 아니다. 추가로, 특정 특징, 구조 또는 특성은, 실시형태와 관련하여 설명될 경우, 여기에 명시적으로 언급되거나 설명되든지 아니든지 다른 실시형태로 그러한 특징, 구조 또는 특성을 통합하는 것은 당업자의 지식 내일 것이다. 또한, 일부 실시형태는 "결합된" 및 "연결된"이라는 표현을 이들의 파생어와 함께 사용하여 설명할 수 있다. 이러한 용어가 반드시 서로 동의어로 사용되는 것은 아니다. 예를 들어, 일부 실시형태는 "연결된" 및/또는 "결합된"이라는 용어를 사용하여 설명되어 둘 이상의 요소가 서로 직접 물리적 또는 전기적 접촉 상태에 있음을 나타낼 수 있다. 그러나 "결합된"이라는 용어는 둘 이상의 요소가 서로 직접 접촉하지 않지만 여전히 서로 협력하거나 상호 작용한다는 것을 의미할 수도 있다.
본 개시의 너비 및 범위는 상기 설명된 예시적인 실시형태 중 임의의 실시형태에 의해 제한되지 않아야 하며, 오직 후속하는 청구항들 및 그 균등물들에 따라서만 정의되어야 한다.

Claims (20)

  1. 복수의 디스플레이 디바이스들에 대한 연속적인 환경을 제공하기 위한 컴퓨터 구현 방법으로서,
    적어도 하나의 프로세서에 의해, 가상 평면 상으로의 가상 카메라의 투영을 식별하는 단계로서, 상기 가상 평면은 복제된 실세계 환경 또는 가상 환경에서 제공되는, 상기 가상 카메라의 투영을 식별하는 단계;
    상기 적어도 하나의 프로세서에 의해, 상기 가상 평면 상으로의 상기 가상 카메라의 투영의 교차에 기초하여 디스플레이 평면 영역을 결정하는 단계;
    상기 적어도 하나의 프로세서에 의해, (i) 복수의 실세계 디스플레이 디바이스들의 하나 이상의 속성들 및 (ii) 상기 가상 카메라의 초점 거리에 기초하여 상기 디스플레이 평면 영역 상의 복수의 가상 윈도우들 각각에 대한 위치를 계산하는 단계로서, 상기 복수의 가상 윈도우들 중 적어도 하나는 상기 복수의 실세계 디스플레이 디바이스들의 각각의 실세계 디스플레이 디바이스에 대응하는, 상기 복수의 가상 윈도우들 각각에 대한 위치를 계산하는 단계;
    상기 적어도 하나의 프로세서에 의해, 상기 디스플레이 평면 영역 상의 상기 위치에 상기 복수의 가상 윈도우들을 배치하는 단계;
    상기 적어도 하나의 프로세서에 의해, 상기 복수의 가상 윈도우들 중 적어도 하나의 뒤에 적어도 부분적으로 존재하는 콘텐츠를 식별하는 단계; 및
    상기 적어도 하나의 프로세서에 의해, 상기 콘텐츠를 갖는 상기 복수의 가상 윈도우들 중 상기 적어도 하나와 관련된 상기 복수의 실세계 디스플레이 디바이스들 중 상기 각각의 실세계 디스플레이 디바이스에 데이터를 제공하는 단계를 포함하고,
    상기 식별하는 단계, 결정하는 단계, 계산하는 단계, 배치하는 단계 및 제공하는 단계 중 적어도 하나는 하나 이상의 컴퓨터들에 의해 수행되는, 컴퓨터 구현 방법.
  2. 제 1 항에 있어서,
    상기 콘텐츠는 상기 가상 카메라에 의해 캡처되는, 컴퓨터 구현 방법.
  3. 제 1 항에 있어서,
    상기 콘텐츠는 3 차원 가상 객체인, 컴퓨터 구현 방법.
  4. 제 1 항에 있어서,
    상기 적어도 하나의 프로세서에 의해, 상기 복제된 환경에서 상기 가상 카메라의 로케이션을 결정하는 단계; 및
    상기 적어도 하나의 프로세서에 의해, 상기 로케이션에서 상기 복제된 환경의 상기 가상 카메라를 렌더링하는 단계를 더 포함하는, 컴퓨터 구현 방법.
  5. 제 4 항에 있어서,
    상기 복제된 환경에서의 상기 가상 카메라의 상기 로케이션은 상기 실세계 환경에서의 상기 복수의 실세계 디스플레이 디바이스들의 하나 이상의 속성들에 기초하는, 컴퓨터 구현 방법.
  6. 제 4 항에 있어서,
    상기 복제된 환경에서의 상기 가상 카메라의 상기 로케이션은 상기 디스플레이 평면 영역에 대한 상기 가상 카메라의 초점 거리에 기초하는, 컴퓨터 구현 방법.
  7. 제 1 항에 있어서,
    상기 가상 카메라의 투영은 정의된 형상인, 컴퓨터 구현 방법.
  8. 제 7 항에 있어서,
    상기 정의된 형상은 직사각형 절두체인, 컴퓨터 구현 방법.
  9. 제 1 항에 있어서,
    상기 디스플레이 평면 영역은 상기 복수의 가상 윈도우들의 적어도 각각을 포함하는, 컴퓨터 구현 방법.
  10. 제 1 항에 있어서,
    상기 복수의 가상 윈도우들의 각각은 상기 복수의 실세계 장치들의 각각의 실세계 디바이스에 대응하는, 컴퓨터 구현 방법.
  11. 제 10 항에 있어서,
    상기 복수의 실세계 디스플레이 디바이스들은 각각 연속적인 환경을 제공하는 제 1 세트의 실세계 디스플레이 디바이스들 및 제 2 세트의 실세계 디스플레이 디바이스들을 포함하는, 컴퓨터 구현 방법.
  12. 제 11 항에 있어서,
    상기 가상 카메라는 복수의 가상 카메라들을 포함하고, 상기 복수의 카메라들 각각은 상기 복수의 가상 윈도우들의 각각의 가상 윈도우에 초점을 맞추는, 컴퓨터 구현 방법.
  13. 제 11 항에 있어서,
    상기 복수의 가상 윈도우들의 각각은 상기 제 1 세트의 실세계 디스플레이 디바이스들 및 상기 제 2 세트의 실세계 디스플레이 디바이스들 각각의 각각의 실세계 디스플레이 디바이스에 대응하는, 컴퓨터 구현 방법.
  14. 제 12 항에 있어서,
    상기 제 1 세트의 실세계 디스플레이 디바이스들, 상기 제 2 세트의 실세계 디스플레이 디바이스들, 및 상기 가상 윈도우들은 동일한 구성을 갖는, 컴퓨터 구현 방법.
  15. 제 1 항에 있어서,
    상기 복수의 실세계 디스플레이 디바이스들의 상기 하나 이상의 속성들은 상기 복수의 실세계 디스플레이 디바이스들의 해상도, 위치, 및 치수를 포함하는, 컴퓨터 구현 방법.
  16. 시스템으로서,
    메모리; 및
    상기 메모리에 커플링된 적어도 하나의 프로세서를 포함하고,
    상기 적어도 하나의 프로세서는,
    가상 평면 상으로의 가상 카메라의 투영을 식별하는 것으로서, 상기 가상 평면은 복제된 환경에서 제공되는, 상기 가상 카메라의 투영을 식별하고;
    상기 가상 평면 상으로의 상기 가상 카메라의 투영의 교차에 기초하여 디스플레이 평면 영역을 결정하며;
    (i) 복수의 실세계 디스플레이 디바이스들의 하나 이상의 속성들 및 (ii) 상기 가상 카메라의 초점 거리에 기초하여 상기 디스플레이 평면 영역 상의 복수의 가상 윈도우들 각각에 대한 위치를 계산하는 것으로서, 상기 복수의 가상 윈도우들 중 적어도 하나는 상기 복수의 실세계 디스플레이 디바이스들의 각각의 실세계 디스플레이 디바이스에 대응하는, 상기 복수의 가상 윈도우들 각각에 대한 위치를 계산하고;
    상기 디스플레이 평면 영역 상의 상기 위치에 상기 복수의 가상 윈도우들을 배치하며;
    상기 복수의 가상 윈도우들 중 적어도 하나의 뒤에 적어도 부분적으로 존재하는 콘텐츠를 식별하고; 및
    상기 콘텐츠를 갖는 상기 복수의 가상 윈도우들 중 상기 적어도 하나와 관련된 상기 복수의 실세계 디스플레이 디바이스들 중 상기 각각의 실세계 디스플레이 디바이스에 데이터를 제공하도록 구성된, 시스템.
  17. 제 12 항에 있어서,
    상기 적어도 하나의 프로세서는 또한,
    상기 복제된 환경에서 상기 가상 카메라의 로케이션을 결정하고; 및
    상기 로케이션에서 상기 복제된 환경의 상기 가상 카메라를 렌더링하도록 구성되는, 시스템.
  18. 제 14 항에 있어서,
    상기 가상 카메라의 투영은 직사각형 절두체인, 시스템.
  19. 제 14 항에 있어서,
    상기 복수의 실세계 디스플레이 디바이스들의 상기 하나 이상의 속성들은 상기 복수의 실세계 디스플레이 디바이스들의 해상도, 위치, 및 치수를 포함하는, 시스템.
  20. 저장된 명령들을 갖는 비일시적 컴퓨터 판독가능 디바이스로서,
    상기 명령들은, 적어도 하나의 컴퓨팅 디바이스에 의해 실행될 때, 상기 적어도 하나의 컴퓨팅 디바이스로 하여금,
    가상 평면 상으로의 가상 카메라의 투영을 식별하는 것으로서, 상기 가상 평면은 복제된 실세계 환경 또는 가상 환경에서 제공되는, 상기 가상 카메라의 투영을 식별하는 것;
    상기 가상 평면 상으로의 상기 가상 카메라의 투영의 교차에 기초하여 디스플레이 평면 영역을 결정하는 것;
    (i) 복수의 실세계 디스플레이 디바이스들의 하나 이상의 속성들 및 (ii) 상기 가상 카메라의 초점 거리에 기초하여 상기 디스플레이 평면 영역 상의 복수의 가상 윈도우들 각각에 대한 위치를 계산하는 것으로서, 상기 복수의 가상 윈도우들 중 적어도 하나는 상기 복수의 실세계 디스플레이 디바이스들의 각각의 실세계 디스플레이 디바이스에 대응하는, 상기 복수의 가상 윈도우들 각각에 대한 위치를 계산하는 것;
    상기 디스플레이 평면 영역 상의 상기 위치에 상기 복수의 가상 윈도우들을 배치하는 것;
    상기 복수의 가상 윈도우들 중 적어도 하나의 뒤에 적어도 부분적으로 존재하는 콘텐츠를 식별하는 것; 및
    상기 콘텐츠를 갖는 상기 복수의 가상 윈도우들 중 상기 적어도 하나와 관련된 상기 복수의 실세계 디스플레이 디바이스들 중 상기 각각의 실세계 디스플레이 디바이스에 데이터를 제공하는 것
    을 포함하는 동작들을 수행하게 하는, 비일시적 컴퓨터 판독가능 디바이스.
KR1020227004800A 2019-07-15 2020-07-01 복수의 디스플레이 디바이스를 위한 연속적인 가상 공간 제공 KR20220035183A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/512,214 2019-07-15
US16/512,214 US10951877B2 (en) 2019-07-15 2019-07-15 Providing a contiguous virtual space for a plurality of display devices
PCT/US2020/040414 WO2021011193A1 (en) 2019-07-15 2020-07-01 Providing a contiguous virtual space for a plurality of display devices

Publications (1)

Publication Number Publication Date
KR20220035183A true KR20220035183A (ko) 2022-03-21

Family

ID=74210952

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227004800A KR20220035183A (ko) 2019-07-15 2020-07-01 복수의 디스플레이 디바이스를 위한 연속적인 가상 공간 제공

Country Status (8)

Country Link
US (2) US10951877B2 (ko)
EP (1) EP3999947A4 (ko)
JP (1) JP2022541177A (ko)
KR (1) KR20220035183A (ko)
CN (1) CN114667496A (ko)
AU (1) AU2020314454A1 (ko)
CA (1) CA3147029A1 (ko)
WO (1) WO2021011193A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11023729B1 (en) * 2019-11-08 2021-06-01 Msg Entertainment Group, Llc Providing visual guidance for presenting visual content in a venue
US20240020851A1 (en) * 2022-07-18 2024-01-18 Nant Holdings Ip, Llc Virtual production based on display assembly pose and pose error correction
US11914858B1 (en) * 2022-12-09 2024-02-27 Helen Hyun-Min Song Window replacement display device and control method thereof

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6152739A (en) 1998-11-20 2000-11-28 Mcdonnell Douglas Corporation Visual display system for producing a continuous virtual image
US7737910B2 (en) * 2003-12-04 2010-06-15 Microsoft Corporation Scalable display
US8311275B1 (en) * 2008-06-10 2012-11-13 Mindmancer AB Selective viewing of a scene
US20100328447A1 (en) * 2009-06-26 2010-12-30 Sony Computer Entertainment, Inc. Configuration of display and audio parameters for computer graphics rendering system having multiple displays
US8646917B2 (en) 2011-01-20 2014-02-11 Disney Enterprises, Inc. Three dimensional display with multiplane image display elements
WO2014186972A1 (en) * 2013-05-24 2014-11-27 Thomson Licensing Method and apparatus for rendering object for multiple 3d displays
US9900583B2 (en) * 2014-12-04 2018-02-20 Futurewei Technologies, Inc. System and method for generalized view morphing over a multi-camera mesh
US11150486B2 (en) 2017-02-15 2021-10-19 Pure Depth Inc. Method and system for object rippling in a display system including multiple displays
US10503457B2 (en) * 2017-05-05 2019-12-10 Nvidia Corporation Method and apparatus for rendering perspective-correct images for a tilted multi-display environment
US10726609B2 (en) 2017-11-22 2020-07-28 Pure Depth Limited Perspective distortion in multi-display system

Also Published As

Publication number Publication date
WO2021011193A1 (en) 2021-01-21
JP2022541177A (ja) 2022-09-22
US10951877B2 (en) 2021-03-16
CA3147029A1 (en) 2021-01-21
US20210021800A1 (en) 2021-01-21
EP3999947A4 (en) 2023-07-26
EP3999947A1 (en) 2022-05-25
CN114667496A (zh) 2022-06-24
AU2020314454A1 (en) 2022-02-10
US20210203908A1 (en) 2021-07-01

Similar Documents

Publication Publication Date Title
KR20220035183A (ko) 복수의 디스플레이 디바이스를 위한 연속적인 가상 공간 제공
US10061552B2 (en) Identifying the positioning in a multiple display grid
US10249089B2 (en) System and method for representing remote participants to a meeting
US20150029217A1 (en) Composite display with multiple imaging properties
CN112243583A (zh) 多端点混合现实会议
CN111931472B (zh) 页面表格渲染方法、装置、电子设备及计算机可读介质
KR20210147868A (ko) 비디오 처리 방법 및 장치
US20130027389A1 (en) Making a two-dimensional image into three dimensions
CN107978018B (zh) 立体图形模型的构建方法、装置、电子设备及存储介质
WO2018000620A1 (zh) 一种数据展示方法及装置、虚拟现实设备与播放控制器
CN112565883A (zh) 一种用于虚拟现实场景的视频渲染处理系统和计算机设备
WO2024021353A1 (zh) 直播间展示方法、装置、电子设备及存储介质
CN115396741A (zh) 全景视频的播放方法、装置、电子设备及可读存储介质
US20180249119A1 (en) Increasing effective update rate for device displays used in augmented reality head mount devices
CN110990106B (zh) 数据展示方法、装置、计算机设备及存储介质
US10719286B2 (en) Mechanism to present in an atomic manner a single buffer that covers multiple displays
CN114092362A (zh) 一种全景图片加载方法和装置
US8755819B1 (en) Device location determination using images
US11682162B1 (en) Nested stereoscopic projections
CN110430417B (zh) 多视点立体图像生成方法、装置、计算机设备和存储介质
CN115834754B (zh) 交互控制方法、装置、头戴显示设备及介质
WO2023169089A1 (zh) 一种视频播放方法、装置、电子设备、介质和程序产品
CN116582708B (zh) 视频播放方法、装置、电子设备及可读存储介质
CN111726687B (zh) 用于生成显示数据的方法和装置
Thelen Advanced Visualization and Interaction Techniques for Large High-Resolution Displays

Legal Events

Date Code Title Description
A201 Request for examination