KR102499904B1 - Methods and systems for creating a virtualized projection of a customized view of a real world scene for inclusion within virtual reality media content - Google Patents
Methods and systems for creating a virtualized projection of a customized view of a real world scene for inclusion within virtual reality media content Download PDFInfo
- Publication number
- KR102499904B1 KR102499904B1 KR1020197035490A KR20197035490A KR102499904B1 KR 102499904 B1 KR102499904 B1 KR 102499904B1 KR 1020197035490 A KR1020197035490 A KR 1020197035490A KR 20197035490 A KR20197035490 A KR 20197035490A KR 102499904 B1 KR102499904 B1 KR 102499904B1
- Authority
- KR
- South Korea
- Prior art keywords
- real
- world scene
- surface data
- capture
- captured
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
- G06T15/205—Image-based rendering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/111—Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/282—Image signal generators for generating image signals corresponding to three or more geometrical viewpoints, e.g. multi-view systems
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Geometry (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
일 예시적인 가상화된 투영 생성 시스템("시스템")은, 각각이 실세계 장면의 상이한 뷰들과 연관된 복수의 세트들의 캡처 파라미터들에 포함된 각각의 세트의 캡처 파라미터들에 따라 실세계 장면을 묘사하는 컬러 및 깊이 프레임을 포함하는 복수의 캡처된 표면 데이터 프레임 시퀀스들을 수신한다. 시스템은 상이한 캡처된 뷰들과 별개인 실세계 장면의 맞춤화된 뷰와 연관된 부가적인 세트의 캡처 파라미터들을 식별한다. 캡처된 표면 데이터 프레임 시퀀스들 및 부가적인 세트의 캡처 파라미터들에 기초하여, 시스템은 실세계 장면의 맞춤화된 뷰의 가상화된 투영을 위해 컬러 및 깊이 프레임들을 렌더링한다. 시스템은 이후, 가상 현실 미디어 콘텐트 내에 포함시키기 위해 실세계 장면의 맞춤화된 뷰의 가상화된 투영을 위한 렌더링된 컬러 및 깊이 프레임들을 포함하는 가상화된 표면 데이터 프레임 시퀀스를 제공한다.An exemplary virtualized projection generation system (“System”) provides color and image representations of a real-world scene according to respective sets of capture parameters included in a plurality of sets of capture parameters, each associated with a different view of the real-world scene. Receive a plurality of captured surface data frame sequences including a depth frame. The system identifies an additional set of capture parameters associated with the customized view of the real world scene separate from the different captured views. Based on the captured surface data frame sequences and an additional set of capture parameters, the system renders color and depth frames for a virtualized projection of a customized view of a real-world scene. The system then provides a sequence of virtualized surface data frames containing rendered color and depth frames for a virtualized projection of a customized view of a real world scene for inclusion within virtual reality media content.
Description
관련 출원들related applications
본 출원은 그에 의해 전체적으로 참조로서 통합되는, 2017년 5월 31일에 출원되고, 발명의 명칭이 가상 현실 미디어 콘텐트 내에 포함시키기 위해 실세계 장면의 맞춤화된 뷰의 가상화된 투영을 생성하기 위한 방법들 및 시스템들인 미국 특허 출원 번호 제 15/610,595 호에 대한 우선권을 주장한다.This application, filed on May 31, 2017, hereby incorporated by reference in its entirety, is entitled Methods for creating a virtualized projection of a customized view of a real-world scene for inclusion within virtual reality media content and system, U.S. Patent Application Serial No. 15/610,595 claims priority.
본 발명은 가상 현실 미디어 콘텐트 내에 포함시키기 위해 실세계 장면의 맞춤화된 뷰의 가상화된 투영 생성을 위한 방법들 및 시스템들에 관한 것이다.The present invention relates to methods and systems for creating a virtualized projection of a customized view of a real world scene for inclusion within virtual reality media content.
가상 현실 미디어 콘텐트는 사용자들이 동시에 제공되는 다양한 것들 중 임의의 하나에 그들의 주의를 집중시킴으로써 사용자들이 경험할 수 있는 대화형 가상 실세계들에 몰입하게 하기 위해 가상 현실 미디어 콘텐트의 사용자들(즉, 뷰어들)에게 제공될 수 있다. 예를 들면, 가상 현실 미디어 콘텐트의 제공 동안 언제라도, 가상 현실 미디어 콘텐트를 경험하는 사용자는 몰입형 가상 실세계를 임의의 방향으로 둘러볼 수 있어, 사용자가 몰입형 가상 실세계 내의 특정한 위치 및 관점(예로서, 방향, 시점, 등)으로부터 몰입형 가상 실세계에 실제로 존재하고 그것을 경험하고 있다는 느낌을 사용자에게 제공할 수 있다.Virtual reality media content can be used by users (i.e., viewers) of virtual reality media content to immerse themselves in interactive virtual real worlds that users can experience by focusing their attention on any one of a variety of things presented simultaneously. can be provided to For example, at any time during presentation of the virtual reality media content, a user experiencing the virtual reality media content may look around the immersive virtual real world in any direction, allowing the user to see a particular location and viewpoint within the immersive virtual real world (eg As such, it is possible to provide the user with a feeling of actually existing in and experiencing the immersive virtual real world from the direction, viewpoint, etc.).
일부 예들에서, 몰입형 가상 실세계가 실세계 장면에 기초하는 것이 바람직할 수 있다. 예를 들면, 가상 현실 미디어 콘텐트 내에 표현된 몰입형 가상 실세계의 일부 또는 전부는 가상 또는 허구 세계에만 존재하는 것과는 대조적으로 실세계에 존재하는 풍경, 위치들, 이벤트(event)들, 객체들, 및/또는 다른 대상들을 모델링할 수 있다. 이와 같이, 캡처 디바이스들(예로서, 카메라들, 비디오 카메라들, 등과 같은 이미지 및/또는 비디오 캡처 디바이스들)은 데이터가 실세계 장면의 표현이 생성될 수 있는 가상 현실 미디어 콘텐트 내에 포함될 수 있도록 실세계 장면을 나타내는 데이터를 검출, 기록, 및/또는 그렇지 않으면 캡처하기 위해 사용될 수 있다. 불행하게도, 바람직할 수 있는 모든 위치, 방향, 시야, 등으로부터 데이터를 캡처하기 위해 실세계 장면에 대해 물리적 캡처 디바이스들을 배치하는 것이 불가능하거나 비현실적일 수 있다.In some examples, it may be desirable for the immersive virtual real world to be based on a real world scene. For example, some or all of the immersive virtual real world represented within virtual reality media content may include scenery, locations, events, objects, and/or objects that exist in the real world as opposed to only existing in a virtual or fictional world. Or you can model other objects. As such, capture devices (eg, image and/or video capture devices such as cameras, video cameras, etc.) can capture a real-world scene so that data can be included within virtual reality media content from which a representation of the real-world scene can be created. may be used to detect, record, and/or otherwise capture data representing Unfortunately, it may be impossible or impractical to place physical capture devices relative to a real-world scene to capture data from every possible location, orientation, field of view, etc.
게다가, 다수의 물리적 캡처 디바이스들이 다수의 위치들, 방향들, 시야들, 등으로부터 데이터를 캡처하기 위해 사용되더라도, 이들 캡처 디바이스에 의해 캡처된 모든 데이터가 사용자에게 제공된 가상 현실 미디어 콘텐트 내에 포함되는 것이 비실용적 및/또는 비효율적일 수 있다. 예를 들면, 데이터 분배 제한들(예로서, 네트워크 대역폭들, 디바이스 디코딩 능력들, 등), 캡처된 데이터의 상당한 중복성, 동시에 가상 현실 미디어 콘텐트의 상이한 사용자들과의 상이한 관련성을 가지는 실세계 장면의 상이한 상세들을 설명하는 데이터, 및 상이한 인자들이 각각, 다수의 물리적 캡처 디바이스들을 사용하여 실세계 장면을 나타내는 데이터를 캡처 및 분배하는 비실용성 및/또는 비효율성에 기여할 수 있다.Moreover, even if multiple physical capture devices are used to capture data from multiple locations, directions, fields of view, etc., not all data captured by these capture devices is included within the virtual reality media content presented to the user. may be impractical and/or inefficient. For example, data distribution limitations (eg, network bandwidths, device decoding capabilities, etc.), significant redundancy of captured data, and different real-world scenes with different relevance to different users of virtual reality media content at the same time. Data describing details, and different factors can each contribute to the impracticality and/or inefficiency of capturing and distributing data representing a real-world scene using multiple physical capture devices.
본 발명의 목적은 가상 현실 미디어 콘텐트 내에 포함시키기 위해 실세계 장면의 맞춤화된 뷰의 가상화된 투영 생성을 위한 방법들 및 시스템들을 제공하는 것이다.It is an object of the present invention to provide methods and systems for creating a virtualized projection of a customized view of a real world scene for inclusion within virtual reality media content.
가상 현실 미디어 콘텐트 내에 포함시키기 위해 실세계 장면의 맞춤화된 뷰의 가상화된 투영을 생성하기 위한 방법들 및 시스템들이 본 명세서에서 설명된다. 예를 들면, 하기에 더 상세히 설명될 바와 같이, 가상화된 투영 생성 시스템은 복수의 캡처된 표면 데이터 프레임 시퀀스들을 수신(예로서, 요청, 획득, 액세스, 등)할 수 있다. 복수의 캡처된 표면 데이터 프레임 시퀀스들에서 각각의 표면 데이터 프레임 시퀀스는 실세계 장면의 상이한 뷰들과 연관된 복수의 세트들의 캡처 파라미터들에 포함된 각각의 세트의 캡처 파라미터들에 따라 실세계 장면을 묘사하는 컬러 및 깊이 프레임들을 포함할 수 있다. 예를 들면, 실세계 장면의 각각의 뷰와 연관된 각각의 세트의 캡처 파라미터들은 캡처 위치, 방향, 시야, 깊이 매핑, 깊이 범위, 품질 레벨, 포맷, 소스, 동적 범위, 및/또는 각각의 표면 데이터 프레임 시퀀스가 실세계 장면의 뷰를 나타내는 다른 특성들을 나타내는 파라미터들을 포함할 수 있다. 복수의 캡처된 표면 데이터 프레임 시퀀스들에서 각각의 표면 데이터 프레임 시퀀스는 실세계 장면의 상이한 뷰들을 캡처하기 위해 실세계 장면에 대해 상이한 위치들에 배치된 복수의 캡처 디바이스들에서 상이한 캡처 디바이스에 의해 캡처될 수 있다. 예를 들면, 각각의 상이한 캡처 디바이스는 복수의 세트들의 캡처 파라미터들에서 상이한 세트들의 캡처 파라미터들 중 하나와 연관될 수 있다(예로서, 상기 캡처 파라미터들 중 하나에 따라 실세계 장면을 캡처하도록 구성됨).Methods and systems are described herein for creating a virtualized projection of a customized view of a real-world scene for inclusion within virtual reality media content. For example, as described in more detail below, the virtualized projection generation system may receive (eg, request, obtain, access, etc.) a plurality of captured surface data frame sequences. Each surface data frame sequence in the plurality of captured surface data frame sequences has a color and a color describing the real world scene according to each set of capture parameters included in the plurality of sets of capture parameters associated with different views of the real world scene. May contain depth frames. For example, each set of capture parameters associated with each view of a real-world scene may include capture location, direction, field of view, depth mapping, depth range, quality level, format, source, dynamic range, and/or each surface data frame. A sequence may contain parameters representing other characteristics representing a view of a real-world scene. Each surface data frame sequence in the plurality of captured surface data frame sequences may be captured by a different capture device in the plurality of capture devices disposed at different locations relative to the real world scene to capture different views of the real world scene. there is. For example, each different capture device may be associated with one of the different sets of capture parameters in a plurality of sets of capture parameters (eg, configured to capture a real-world scene according to one of the capture parameters). .
상이한 세트들의 캡처 파라미터들과 연관된 복수의 표면 데이터 프레임 시퀀스들을 수신하는 것에 더하여, 가상화된 투영 생성 시스템은 복수의 세트들의 캡처 파라미터들에 포함된 캡처 파라미터들의 세트들과 별개인 부가적인 세트의 캡처 파라미터들을 식별할 수 있다. 부가적인 세트의 캡처 파라미터들은 복수의 캡처 디바이스들에 의해 캡처된 실세계 장면의 상이한 뷰들과 별개인 실세계 장면의 맞춤화된 뷰와 연관될 수 있다. 복수의 캡처된 표면 데이터 프레임 시퀀스들에서 표면 데이터 프레임 시퀀스들에 기초하여 그리고 부가적인 세트의 캡처 파라미터들에 기초하여, 가상화된 투영 생성 시스템은 실세계 장면의 맞춤화된 뷰의 가상화된 투영을 위해 컬러 및 깊이 프레임들을 렌더링할 수 있다.In addition to receiving a plurality of surface data frame sequences associated with different sets of capture parameters, the virtualized projection generation system may use an additional set of capture parameters distinct from the sets of capture parameters included in the plurality of sets of capture parameters. can identify them. An additional set of capture parameters may be associated with a customized view of the real-world scene that is separate from the different views of the real-world scene captured by the plurality of capture devices. Based on the surface data frame sequences in the plurality of captured surface data frame sequences and based on an additional set of capture parameters, the virtualized projection generation system provides a color and projection for a virtualized projection of a customized view of a real-world scene. You can render depth frames.
가상화된 투영 생성 시스템은 하나 이상의 상이한 시스템들에 대한(예로서, 사용자들과 연관된 하나 이상의 미디어 플레이어 디바이스들에 대한, 가상 현실 미디어 콘텐트 제공자 파이프라인에서 하나 이상의 다운스트림 시스템들에 대한, 등) 실세계 장면의 맞춤화된 뷰의 가상화된 투영을 위한 렌더링된 컬러 및 깊이 프레임들을 포함하는 가상화된 표면 데이터 프레임 시퀀스를 제공할 수 있다. 예를 들면, 가상화된 투영 생성 시스템은 미디어 플레이어 디바이스에 가상 현실 미디어 콘텐트(예로서, 가상 현실 미디어 콘텐트를 경험하는 사용자와 연관된 미디어 플레이어 디바이스에 가상 현실 미디어 제공자 파이프라인에 의해 스트리밍되도록 구성된 가상 현실 미디어 콘텐트) 내에 포함시키기 위한 가상화된 표면 데이터 프레임 시퀀스를 제공할 수 있다.The virtualized projection generation system is real world for one or more different systems (eg, for one or more media player devices associated with users, for one or more downstream systems in a virtual reality media content provider pipeline, etc.) Provide a sequence of virtualized surface data frames containing rendered color and depth frames for a virtualized projection of a customized view of a scene. For example, the virtualized projection generation system may send virtual reality media content to a media player device (eg, virtual reality media configured to be streamed by a virtual reality media provider pipeline to a media player device associated with a user experiencing the virtual reality media content). content) to provide a sequence of virtualized surface data frames for inclusion.
본 명세서에서 설명된 가상 현실 미디어 콘텐트 내에 포함시키기 위해 실세계 장면의 맞춤화된 뷰의 가상화된 투영을 생성하기 위한 시스템들 및 방법들은 다양한 장점들 및 이점들을 제공할 수 있다. 하나의 예로서, 본 명세서에서 설명된 시스템들 및 방법들은 임의의 캡처 파라미터들(예로서, 임의의 캡처 위치들, 방향들, 시야들, 깊이 매핑들, 품질 레벨들, 소스들, 동적 범위들, 등)에 기초하여 실세계 장면의 맞춤화된 뷰들에 대해 가상화된 투영들(예로서, 가상화된 표면 데이터 프레임 시퀀스들, 등)을 나타내는 데이터가 생성되는 것을 허용할 수 있다. 이와 같이, 가상화된 표면 데이터 프레임 시퀀스들은 특정한 구현을 제공할 수 있는 실세계 장면의 견고한(robust) 세트의 뷰들을 커버하기 위해 캡처된 표면 데이터 프레임 시퀀스들과 함께 생성 및 제공될 수 있다. 예를 들면, 실세계 장면에 대해 다양한 위치들에서 다수의 물리적 캡처 디바이스들을 배치하려고 시도하는 대신(예로서, 다양한 상이한 비트 깊이들, 등을 갖는 상이한 객체들의 다양한 레벨들의 상세를 제공하기 위해), 본 명세서에서 설명된 방법들 및 시스템들은 실세계 장면의 맞춤화된 뷰들을 나타내기 위해 다수의 가상화된 표면 데이터 프레임 시퀀스들이 생성될 수 있는 데이터를 캡처하기 위해 상대적으로 적은 수의 물리적 캡처 디바이스들을 허용할 수 있다.The systems and methods described herein for creating a virtualized projection of a customized view of a real-world scene for inclusion within virtual reality media content can provide various advantages and benefits. As an example, the systems and methods described herein can be used to capture arbitrary capture parameters (eg, arbitrary capture locations, directions, fields of view, depth mappings, quality levels, sources, dynamic ranges, , etc.) to generate virtualized projections (eg, virtualized surface data frame sequences, etc.) for customized views of a real-world scene. As such, virtualized surface data frame sequences can be created and provided along with captured surface data frame sequences to cover a robust set of views of a real world scene that can provide a specific implementation. For example, instead of trying to place multiple physical capture devices at various locations relative to a real-world scene (eg, to provide various levels of detail of different objects with various different bit depths, etc.), the present invention The methods and systems described herein may allow for a relatively small number of physical capture devices to capture data from which multiple sequences of virtualized surface data frames may be created to represent customized views of a real-world scene. .
부가적으로, 다양한 상이한 세트들의 캡처 파라미터들(예로서, 다양한 상이한 시점(vantage point)들을 나타내는 파라미터들, 다양한 상이한 캡처 해상도들, 등)와 연관된 캡처 데이터(예로서, 표면 데이터 프레임 시퀀스들)를 생성함으로써, 본 명세서에서 설명된 시스템들 및 방법들은 물리적 캡처 디바이스에 의해 캡처되고 최종 사용자들에게 제공된 가상 현실 미디어 콘텐트 내에 포함된 데이터의 실용적이고 효율적인 분배를 가능하게 할 수 있다. 예를 들면, 실세계 장면 주위에 배치된 8개의 캡처 디바이스들에 의해 캡처된 고해상도 데이터는 8개의 캡처 디바이스들의 각각의 뷰들로부터 실세계 장면을 묘사하는 8개의 고해상도 캡처된 표면 데이터 프레임 시퀀스들을 생성하기 위해 사용될 뿐만 아니라, 캡처 디바이스들의 뷰들과 상이한(예로서, 맞추어 조정되지 않은) 다양한 맞춤화된 뷰들과 연관된 상대적으로 다수(예로서, 300개)의 저해상도 가상화된 표면 데이터 프레임 시퀀스들을 생성하기 위해 사용될 수 있다.Additionally, capture data (eg, surface data frame sequences) associated with various different sets of capture parameters (eg, parameters representing various different vantage points, various different capture resolutions, etc.) By generating, the systems and methods described herein can enable practical and efficient distribution of data contained within virtual reality media content captured by a physical capture device and presented to end users. For example, high-resolution data captured by eight capture devices placed around a real-world scene may be used to generate sequences of eight high-resolution captured surface data frames depicting the real-world scene from respective views of the eight capture devices. In addition, it can be used to generate a relatively large number (eg, 300) low-resolution virtualized surface data frame sequences associated with various customized views that are different (eg, not scaled to fit) than the views of the capture devices.
가상화된 표면 데이터 프레임 시퀀스들을 수신하는 가상 현실 미디어 콘텐트 제공자 시스템은 시스템이 특정한 시간들에 특정한 미디어 플레이어 디바이스들에 제공하는(즉, 특정한 미디어 플레이어 디바이스들에 제공된 가상 현실 미디어 콘텐트 내에 포함함) 데이터의 증가된 유연성으로부터 이익을 얻을 수 있다. 이와 같이, 하기에 더 상세하게 설명될 바와 같이, 가상 현실 미디어 콘텐트 제공자는 미디어 플레이어 디바이스와 상대적으로 관련이 없는 미디어 플레이어 디바이스에 대량의 데이터를 전송하지 않음으로써(예로서, 미디어 플레이어 디바이스가 사용자에게 제공하고 있는 특정 가상 현실 경험의 다양한 양태들에 기초하여), 그리고 깊이 정밀도 및/또는 깊이 해상도를 최적화하기 위해 표면들의 깊이 표현들에서 최적화된 비트 깊이들을 사용하여 데이터를 제공함으로써와 같이 미디어 플레이어 디바이스들에 제공된 데이터를 최적화하는 증가된 능력으로부터 이익을 얻을 수 있다.A virtual reality media content provider system that receives virtualized surface data frame sequences can store data that the system provides (i.e., includes within virtual reality media content provided to specific media player devices) to specific media player devices at specific times. You can benefit from increased flexibility. As such, as will be described in more detail below, virtual reality media content providers do not transmit large amounts of data to media player devices that are relatively unrelated to the media player device (e.g., the media player device provides information to the user). media player device, such as by providing data using optimized bit depths in depth representations of surfaces to optimize depth precision and/or depth resolution) and based on various aspects of the particular virtual reality experience being provided. can benefit from an increased ability to optimize the data provided to them.
일례로서, 8개의 물리적 캡처 디바이스들에 의해 캡처된 모든 고해상도 데이터를 모든 미디어 플레이어 디바이스에 분배하는 것보다(다량의 데이터로 인해 비실용적이거나 불가능할 수 있음), 맞춤화된 데이터는 더 선택적이고 유연하게 분배될 수 있다. 구체적으로, 예를 들면, 제 1 미디어 플레이어 디바이스에 대해 맞춤화된 데이터(예로서, 견고한 세트의 가상화된 표면 데이터 프레임 시퀀스들로부터 선택된 적은 가상화된 표면 데이터 프레임 시퀀스들을 나타내는 데이터)는 제 1 미디어 플레이어 디바이스의 사용자와 관련된 실세계 장면의 하나의 부분의 높은 레벨의 상세를 제공하기 위해 제 1 미디어 플레이어 디바이스에 분배될 수 있는 반면에, 제 2 미디어 플레이어 디바이스에 대해 맞춤화된 데이터(예로서, 적은 상이한 가상화된 표면 데이터 프레임 시퀀스들을 나타내는 데이터)는 제 2 미디어 플레이어 디바이스의 사용자와 관련된 실세계 장면의 또 다른 부분의 높은 레벨의 상세를 제공하기 위해 제 2 미디어 플레이어 디바이스에 분배될 수 있다. 이와 같이, 가상 현실 미디어 콘텐트 제공자 시스템은 어떤 미디어 플레이어 디바이스(또는 미디어 플레이어 디바이스들과 통신하기 위해 사용된 임의의 분포 채널들)에 과도한 양의 중복 데이터 또는 각각의 사용자들과 덜 관련이 있는 실세계 장면의 부분들에 관한 상세 데이터로 과부하가 걸리지 않게 하면서 제 1 및 제 2 미디어 플레이어 디바이스들 둘 모두에 그들의 각각의 사용자들과 관련되는 데이터(예로서, 사용자가 경험하고 있는 실세계 장면의 각각의 부분들에 대해 맞춤화된 로컬화된 데이터)를 제공할 수 있다. 이러한 방식으로, 데이터 분배는 사용자 경험들이 더 높은 해상도, 및 더 현실적이고 몰입형 콘텐트를 통해 개선될지라도 클라이언트 측 미디어 플레이어 디바이스들에 더 적은 데이터가 분배되도록 요구함으로써 개선되고 더 효율적이고 효과적이 될 수 있다. 이 개선은 실세계 장면의 단지 가장 관련 있는 부분들의 고품질 표현들을 동적으로 포함하도록 가상 현실 미디어 콘텐트의 맞춤화로 인해 발생한다.As an example, rather than distributing all high-resolution data captured by 8 physical capture devices to all media player devices (which may be impractical or impossible due to the large amount of data), customized data can be more selectively and flexibly distributed. can Specifically, for example, data tailored for a first media player device (eg, data representative of a small number of virtualized surface data frame sequences selected from a robust set of virtualized surface data frame sequences) may be distributed to a first media player device to provide a high level of detail of one portion of a real-world scene relevant to a user of a user, while data customized for a second media player device (e.g., less different virtualized Data representing surface data frame sequences) can be distributed to the second media player device to provide a high level of detail of another portion of the real world scene that is relevant to a user of the second media player device. As such, the virtual reality media content provider system may not provide any media player device (or any distribution channels used to communicate with the media player devices) with excessive amounts of redundant data or real-world scenes that are less relevant to individual users. data relating to their respective users on both the first and second media player devices (eg, respective parts of the real-world scene the user is experiencing) without overloading the first and second media player devices with detailed data about the parts localized data customized for ) can be provided. In this way, data distribution can be improved and made more efficient and effective by requiring less data to be distributed to client-side media player devices even though user experiences are improved through higher resolution, and more realistic and immersive content. there is. This improvement arises due to the customization of virtual reality media content to dynamically include high-quality representations of only the most relevant parts of a real-world scene.
다양한 실시예들이 이제 도면들을 참조하여 더 상세하게 설명될 것이다. 개시된 방법들 및 시스템들은 상기 언급된 이점들 및/또는 본 명세서에서 명백해질 다양한 부가적인 및/또는 대안적인 이점들 중 하나 이상을 제공할 수 있다.Various embodiments will now be described in more detail with reference to the drawings. The disclosed methods and systems may provide one or more of the above mentioned advantages and/or various additional and/or alternative advantages that will be apparent herein.
첨부된 도면들은 다양한 실시예들을 도시하고 본 명세서의 일부이다. 도시된 실시예들은 단지 예들이고 본 개시의 범위를 제한하지 않는다. 도면들 전체에 걸쳐 동일하거나 유사한 참조 부호들은 동일하거나 유사한 요소들을 지정한다.
도 1은 본 명세서에서 설명된 원리들에 따라 가상 현실 미디어 콘텐트 내에 포함시키기 위해 실세계 장면의 맞춤화된 뷰의 가상화된 투영을 생성하기 위한 일 예시적인 가상화된 투영 생성 시스템을 도시한 도면.
도 2는 본 명세서에서 설명된 원리들에 따라 일 예시적인 실세계 장면을 나타내는 데이터가 실세계 장면의 상이한 뷰들로부터 캡처되는 일 예시적인 구성을 도시한 도면.
도 3a는 본 명세서에서 설명된 원리들에 따라 도 2의 실세계 장면을 나타내는 표면 데이터 프레임 시퀀스 내에 포함시키기 위해 컬러 및 깊이 프레임들을 캡처하는 일 예시적인 캡처 디바이스를 도시한 도면.
도 3b는 본 명세서에서 설명된 원리들에 따라 도 3a의 캡처 디바이스에 의해 캡처된 컬러 프레임으로 나타내진 컬러 데이터의 일 예시적인 그래픽 묘사를 도시한 도면.
도 3c는 본 명세서에서 설명된 원리들에 따라 도 3a의 캡처 디바이스에 의해 캡처된 깊이 프레임으로 나타내진 깊이 데이터의 일 예시적인 그래픽 묘사를 도시한 도면.
도 4a 및 도 4b는 본 명세서에서 설명된 원리들에 따라 도 2의 실세계 장면을 나타내고 도 3a의 캡처 디바이스에 의해 생성된 일 예시적인 표면 데이터 프레임 시퀀스의 상이한 표현들을 도시한 도면들.
도 5는 도 2의 실세계 장면을 나타내는 데이터가 본 명세서에서 설명된 원리들에 따라 실세계 장면의 맞춤화된 뷰를 위해 부가적으로 생성되는 도 2의 구성에 기초한 일 예시적인 구성을 도시한 도면.
도 6은 본 명세서에서 설명된 원리들에 따라 도 5의 실세계 장면의 맞춤화된 뷰의 일 예시적인 가상화된 투영을 위해 컬러 및 깊이 프레임들을 포함하는 일 예시적인 가상화된 표면 데이터 프레임 시퀀스를 도시한 도면.
도 7은 본 명세서에서 설명된 원리들에 따라 일 예시적인 복수의 표면 데이터 프레임 시퀀스들을 포함하는 일 예시적인 전송 스트림의 그래픽 표현을 도시한 도면.
도 8은 본 명세서에서 설명된 원리들에 따라 도 7의 예시적인 전송 스트림의 데이터 구조 표현을 도시한 도면.
도 9는 본 명세서에서 설명된 원리들에 따라 타일 맵을 구현하는 일 예시적인 프레임 시퀀스를 포함하는 일 예시적인 전송 스트림의 그래픽 표현을 도시한 도면.
도 10은 본 명세서에서 설명된 원리들에 따라 도 9의 예시적인 전송 스트림의 데이터 구조 표현을 도시한 도면.
도 11은 본 명세서에서 설명된 원리들에 따라 일 예시적인 가상 현실 미디어 콘텐트 제공자 시스템이 실세계 장면에 기초하여 가상 현실 미디어 콘텐트를 생성하고 실세계 장면의 표현을 경험하기 위해 가상 현실 매체 콘텐트를 사용자에 의해 사용된 일 예시적인 클라이언트 측 미디어 플레이어 디바이스에 제공하는 일 예시적인 구성을 도시한 도면.
도 12는 본 명세서에서 설명된 원리들에 따라 가상 현실 미디어 콘텐트를 경험하기 위해 사용자에 의해 사용될 수 있는 다양한 예시적인 유형들의 미디어 플레이어 디바이스들을 도시한 도면.
도 13은 본 명세서에서 설명된 원리들에 따라 실세계 장면에 대한 일 예시적인 임의의 가상 위치에 대응하는 동적으로 선택가능한 가상 시점으로부터 경험된 바와 같은 실세계 장면에 기초한 예시적인 가상 현실 미디어 콘텐트를 사용자가 제공받는 일 예시적인 가상 현실 경험을 도시한 도면.
도 14 및 도 15는 본 명세서에서 설명된 원리들에 따라 가상 현실 미디어 콘텐트 내에 포함시키기 위해 실세계 장면의 맞춤화된 뷰의 가상화된 투영을 생성하기 위한 예시적인 방법들을 도시한 도면들.
도 16은 본 명세서에서 설명된 원리들에 따른 일 예시적인 컴퓨팅 디바이스를 도시한 도면.The accompanying drawings illustrate various embodiments and are part of this specification. The illustrated embodiments are examples only and do not limit the scope of the present disclosure. The same or similar reference numbers designate the same or similar elements throughout the drawings.
1 illustrates an exemplary virtualized projection creation system for generating a virtualized projection of a customized view of a real-world scene for inclusion within virtual reality media content according to principles described herein;
FIG. 2 illustrates an example configuration in which data representative of an example real-world scene is captured from different views of a real-world scene in accordance with principles described herein; FIG.
FIG. 3A illustrates an exemplary capture device that captures color and depth frames for inclusion within a sequence of surface data frames representing the real-world scene of FIG. 2 according to principles described herein.
FIG. 3B is an example graphical representation of color data represented by a color frame captured by the capture device of FIG. 3A according to the principles described herein;
3C is an example graphical depiction of depth data represented by a depth frame captured by the capture device of FIG. 3A according to the principles described herein;
4A and 4B show different representations of the real-world scene of FIG. 2 and an exemplary sequence of surface data frames generated by the capture device of FIG. 3A according to the principles described herein.
FIG. 5 illustrates an exemplary configuration based on that of FIG. 2 in which data representative of the real-world scene of FIG. 2 is additionally generated for a customized view of the real-world scene according to principles described herein;
FIG. 6 illustrates an exemplary virtualized surface data frame sequence including color and depth frames for an exemplary virtualized projection of a customized view of the real-world scene of FIG. 5 according to principles described herein; .
FIG. 7 is a graphical representation of an example transport stream comprising a plurality of surface data frame sequences according to the principles described herein; FIG.
8 is a data structure representation of the exemplary transport stream of FIG. 7 according to the principles described herein;
9 is a graphical representation of an example transport stream containing an example frame sequence that implements a tile map according to principles described herein;
10 is a data structure representation of the exemplary transport stream of FIG. 9 according to the principles described herein;
11 illustrates an example virtual reality media content provider system generating virtual reality media content based on a real-world scene and enabling a user to view the virtual reality media content to experience a representation of the real-world scene, in accordance with principles described herein. A diagram illustrating an exemplary configuration provided to an exemplary client-side media player device used.
12 depicts various example types of media player devices that may be used by a user to experience virtual reality media content in accordance with the principles described herein.
FIG. 13 shows a user viewing exemplary virtual reality media content based on a real-world scene as experienced from a dynamically selectable virtual point of view corresponding to an exemplary arbitrary virtual location relative to the real-world scene in accordance with principles described herein. A diagram depicting an exemplary virtual reality experience provided.
14 and 15 illustrate example methods for creating a virtualized projection of a customized view of a real-world scene for inclusion within virtual reality media content according to the principles described herein.
16 depicts an example computing device in accordance with the principles described herein.
도 1은 가상 현실 미디어 콘텐트 내에 포함시키기 위한 실세계 장면의 맞춤화된 뷰의 가상화된 투영을 생성하기 위한 일 예시적인 가상화된 투영 생성 시스템(100)("시스템(100)")을 도시한다. 도시된 바와 같이, 시스템(100)은 제한 없이, 통신 시설(102), 표면 데이터 프레임 시퀀스 관리 시설(104), 가상화된 투영 생성 시설(106), 및 서로 선택적으로 그리고 통신가능하게 결합된 저장 시설(108)를 포함할 수 있다. 시설들(102 내지 108)이 도 1에서 별개의 시설들인 것으로 도시될지라도, 시설들(102 내지 108)이 단일 시설과 같은 더 적은 시설들로 조합되거나, 특정한 구현을 제공할 수 있는 더 많은 시설들로 분할될 수 있음이 인식될 것이다. 일부 예들에서, 시설들(102 내지 108)의 각각은 특정한 구현을 제공할 수 있는 다수의 디바이스들 및/또는 다수의 위치들 사이에 분배될 수 있다. 부가적으로, 시스템(100)의 특정한 구현들에서, 도 1에 도시된 특정 시설들(및 이러한 시설들과 연관된 연관된 기능)이 시스템(100)으로부터 생략될 수 있음이 이해될 것이다. 시설들(102 내지 108)의 각각은 이제, 본 명세서에 포함된 특정 다른 도면들을 참조하여 더 상세히 설명될 것이다.1 depicts an exemplary virtualized projection creation system 100 (“
통신 시설(102)은 시스템(100)에 의해 사용되고/되거나 제공된 데이터의 송신 및 수신과 연관된 다양한 동작을 수행하는 하나 이상의 물리적 컴퓨팅 디바이스들(예로서, 프로세서들, 메모리들, 통신 인터페이스들, 프로세서들에 의해 실행하기 위해 메모리에 저장된 지시들, 등과 같은 하드웨어 및/또는 소프트웨어 구성요소들)을 포함할 수 있다. 예를 들면, 통신 시설(102)은 각각이, 실세계 장면의 상이한 뷰들과 연관된 복수의 세트들의 캡처 파라미터들에 포함된 각각의 세트의 캡처 파라미터들에 따라 실세계 장면을 묘사하는 컬러 및 깊이 프레임들을 포함하는 복수의 캡처된 표면 데이터 프레임 시퀀스들을 수신(또는 수신하는 것을 가능하게)할 수 있다.
통신 시설(102)은 특정한 구현을 제공할 수 있는 임의의 방식으로 복수의 캡처된 표면 데이터 프레임 시퀀스들을 수신할 수 있다. 예를 들면, 특정 실시예들에서, 복수의 캡처된 표면 데이터 프레임 시퀀스들에서 각각의 표면 데이터 프레임 시퀀스는 실세계 장면의 상이한 뷰들을 캡처하기 위해 실세계 장면에 대해 상이한 위치들에 배치된 복수의 캡처 디바이스들에서 상이한 캡처 디바이스에 의해 캡처(예로서, 생성)될 수 있다. 이와 같이, 통신 시설(102)은 예를 들면, 캡처 디바이스들에 의해 송신된 데이터를 요청 및 수신하거나 그렇지 않으면 캡처 디바이스들로부터 데이터에 액세스하거나 상기 데이터를 획득함으로써 복수의 캡처 디바이스들로부터 직접적으로 데이터(예로서, 캡처된 표면 데이터 프레임 시퀀스들)를 수신할 수 있다. 다른 예들에서, 하나 이상의 다른 시스템들(예로서, 실세계 장면 캡처 시스템)은 통신 시설(102)이 하나 이상의 다른 시스템들에 의해 캡처된 표면 데이터 프레임 시퀀스들을 수신할 수 있도록 캡처 디바이스들과 시스템(100) 사이에 개재할 수 있다.The
부가적으로 또는 대안적으로, 통신 시설(102)은 데이터(예로서, 가상화된 표면 데이터 프레임 시퀀스들 또는 시스템(100)에 의해 수신되고/되거나 생성된 다른 데이터)를 가상 현실 미디어 콘텐트 제공자 파이프라인에서 다른 서버 측 시스템들에 및/또는 최종 사용자들에 의해 사용된 클라이언트 측 미디어 플레이어 디바이스들에 제공할 수 있다. 본 명세서에서 사용된 바와 같이, "서버 측"은 콘텐트 제공자 시스템이 콘텐트(예로서, 가상 현실 미디어 콘텐트)를 최종 사용자에 의해 사용된 클라이언트 디바이스에 제공하는 트랜잭션(transaction)과 같은 서버 클라이언트 트랜잭션의 서버 측(예로서, 제공자 측)을 언급할 수 있다. 예를 들면, 하기에 더 상세히 설명될 바와 같이, 가상 현실 미디어 콘텐트 제공자 시스템은 가상 현실 미디어 콘텐트를 사용자와 연관된 미디어 플레이어 디바이스에 제공할 수 있다. 이와 같이, 서버 측 시스템들 및 구성요소들은 데이터(예로서, 가상 현실 미디어 콘텐트)를 (예로서, 네트워크에 의해) 미디어 플레이어 디바이스에 제공하기 위해 콘텐트 제공자 시스템과 연관되는 (예로서, ~내에 포함됨, ~에 의해 구현됨, ~와 상호동작됨, 등) 그들의 시스템들 및 구성요소들을 말할 수 있다. 대조적으로, "클라이언트 측" 디바이스는 네트워크의 다른 측에서 사용자에 의해 사용된 클라이언트 디바이스(예로서, 미디어 플레이어 디바이스)와 연관될 수 있고, 클라이언트 디바이스가 콘텐트 제공자 시스템(예로서, 미디어 플레이어 디바이스 및/또는 네트워크의 사용자 측에서 사용자에 의해 동작된 다른 컴퓨터 구성요소들)으로부터 데이터를 수신하는 것을 가능하게 하는 디바이스들을 포함할 수 있다.Additionally or alternatively,
통신 시설(102)은 특정한 구현을 제공할 수 있는 임의의 통신 인터페이스들, 프로토콜들, 및/또는 기술들을 사용하여 서버 측 및/또는 클라이언트 측 시스템들과 통신하도록 구성될 수 있다. 예를 들면, 통신 시설(102)은 하나 이상의 네트워크들(예로서, 유선 또는 무선 근거리 네트워크들, 광역 네트워크들, 제공자 네트워크들, 인터넷, 등), 유선 통신 인터페이스들(예로서, 범용 직렬 버스("USB")), 무선 통신 인터페이스들, 또는 임의의 다른 적합한 통신 인터페이스들, 프로토콜들, 및/또는 기술들에 의해 통신하도록 구성될 수 있다.
표면 데이터 프레임 시퀀스 관리 시설(104)은 표면 데이터 프레임 시퀀스들과 연관된 각각의 세트들의 캡처 파라미터들 및 시스템(100)에 의해 수신되거나 생성된 표면 데이터 프레임 시퀀스들을 구성하거나, 동기화하거나, 유지하거나, 추적하고/하거나, 그렇지 않으면 관리하는 것과 연관된 다양한 동작들을 수행하는 하나 이상의 물리적 컴퓨팅 구성요소들(예로서, 통신 시설(102)의 하드웨어 및/또는 소프트웨어 구성요소들로부터 분리되거나 통신 시설(102)와 공유된 하드웨어 및/또는 소프트웨어 구성요소들)를 포함할 수 있다. 예를 들면, 표면 데이터 프레임 시퀀스 관리 시설(104)은 캡처된 표면 데이터 프레임 시퀀스들(예로서, 상기 설명된 바와 같이 캡처 디바이스들에 의해 캡처되고 통신 시설(102)에 의해 수신된 표면 데이터 프레임 시퀀스들)과 연관된 캡처 파라미터들의 세트들을 유지할 수 있고/있거나 캡처된 표면 데이터 프레임 시퀀스들과 연관된 캡처 파라미터들의 세트들과 별개인 하나 이상의 부가적인 세트들의 캡처 파라미터들을 식별(또는 식별하는 것을 가능하게)할 수 있다. 예를 들면, 표면 데이터 프레임 시퀀스 관리 시설(104)은 복수의 캡처 디바이스들에 의해 캡처된 실세계 장면의 상이한 뷰들과 별개인 실세계 장면의 하나 이상의 맞춤화된 뷰들과 각각 연관된 하나 이상의 세트들의 캡처 파라미터들을 식별할 수 있다. 표면 데이터 프레임 시퀀스 관리 시설(104)은 또한, 본 명세서에서 설명되고/되거나 시스템(100)의 특정한 구현을 제공할 수 있는 다른 동작들을 수행할 수 있다.The surface data frame sequence management facility 104 configures, synchronizes, maintains, or tracks surface data frame sequences received or generated by
가상화된 투영 생성 시설(106)은 실세계 장면 및/또는 이와 연관된 데이터의 뷰들(예로서, 맞춤화된 뷰들)의 가상화된 투영들을 준비하거나, 형성하거나, 렌더링하거나, 그렇지 않으면 생성하는 것과 연관된 다양한 동작들을 수행하는 하나 이상의 물리적 컴퓨팅 구성요소들(예로서, 시설들(102 및/또는 104)의 하드웨어 및/또는 소프트웨어 구성요소들로부터 분리되거나 시설들(102 및/또는 104)과 공유된 하드웨어 및/또는 소프트웨어 구성요소들)을 포함할 수 있다. 예를 들면, 가상화된 투영 생성 시설(106)은 실세계 장면의 맞춤화된 뷰의 가상화된 투영을 위해 컬러 및 깊이 프레임들을 렌더링할 수 있다. 더 구체적으로, 예를 들면, 가상화된 투영 생성 시설(106)은 통신 시설(102)에 의해 수신된 표면 데이터 프레임 시퀀스들 중 적어도 하나에 기초하여 그리고 표면 데이터 프레임 시퀀스 관리 시설(104)에 의해 식별된 부가적인 세트의 캡처 파라미터들에 또한 기초하여 컬러 및 깊이 프레임들을 렌더링할 수 있다. 가상화된 투영 시설(106)은 또한, 가상화된 투영을 위한 렌더링된 컬러 및 깊이 프레임들에 기초하여(예로서, 포함하는) 가상화된 표면 데이터 프레임 시퀀스를 생성할 수 있다. 일단 가상화된 표면 데이터 프레임 시퀀스가 생성되면, 가상화된 투영 시설(106)은 사용자와 연관된 미디어 플레이어 디바이스에 대한 가상 현실 미디어 콘텐트 내에 포함시키기 위해 표면 데이터 프레임 시퀀스를 제공할 수 있다. 대안적으로, 상기 언급된 바와 같이, 가상화된 표면 데이터 프레임 시퀀스는 특정 구현들에서 통신 시설(102)에 의해 가상 현실 미디어 콘텐트 내에 포함시키기 위해 제공될 수 있다. 가상화된 투영 시설(106)은 또한, 본 명세서에서 설명되고/되거나 시스템(100)의 특정한 구현을 제공할 수 있는 다른 동작들을 수행할 수 있다.Virtualized
저장 시설(108)은 특정한 구현에서 시설들(102 내지 106)에 의해 수신되거나, 생성되거나, 관리되거나, 추적되거나, 유지되거나, 사용되고/되거나, 송신된 임의의 적합한 데이터를 저장하고/하거나 유지할 수 있다. 예를 들면, 도시된 바와 같이, 저장 시설(108)은 본 명세서에서 설명된 방식들 중 임의의 방식들로 수신되거나, 생성되거나, 관리되거나, 추적되거나, 유지되거나, 사용되고/되거나, 송신될 수 있는(예로서, 다른 시스템들에 제공될 수 있는) 표면 데이터 프레임 시퀀스 데이터(110) 및/또는 캡처 파라미터 데이터(112)를 포함할 수 있다. 부가적으로, 저장 시설(108)은 본 명세서에서 설명된 동작들을 수행하기 위한 지시들(예로서, 프로그래밍 지시들) 및/또는 본 명세서에서 설명된 동작을 수행하기 위해 시설들(102 내지 106)에 의해 사용된 다른 데이터와 같은 시스템(100)의 특정한 구현들에 의해 사용된 다른 유형들의 데이터를 포함할 수 있다. 저장 시설(108)은 본 명세서에서 설명된 방식들 중 임의의 방식들로 구현될 수 있고 랜덤 액세스 메모리("RAM"), 비일시적 저장장치(예로서, 디스크 저장장치, 플래시 메모리 저장장치, 등), 등을 포함하지만 그것으로 제한되지 않는 데이터를 저장하는 임의의 일시적 또는 비일시적 모드들을 위한 하드웨어 및/또는 소프트웨어를 포함할 수 있다.
일부 예들에서, 시스템(100)은 이벤트들이 실세계 장면 내에서 발생함에 따라 본 명세서에서 설명된 동작들 중 하나 이상을 실시간으로 수행할 수 있다. 그에 따라, 시스템(100)이 다른 시스템들이 또한, 실시간으로 동작하는 가상 현실 미디어 콘텐트 제공자 파이프라인 내에서 사용되는 구현들에서, 가상 현실 미디어 콘텐트(예로서, 실시간으로 시스템(100)에 의해 생성된 가상화된 표면 데이터 프레임 시퀀스들을 포함하는 가상 현실 미디어 콘텐트)는 실세계 장면 근처에 물리적으로 위치되지 않을 수 있지만 실세계 장면(예로서, 실세계 장면 내에서 발생하는 이벤트들)을 경험하기를 원할 수 있는 미디어 플레이어 디바이스들의 각각의 사용자들이 실세계 장면 및 그 안에서 발생하는 이벤트들을 그들의 각각의 미디어 플레이어 디바이스들을 사용하여 실시간으로(예로서, 이벤트들이 발생함에 따라 실시간으로) 가상으로 경험할 수 있도록 미디어 플레이어 디바이스들에 제공될 수 있다. 실세계 장면 내에서 이벤트들이 발생할 때 사용자가 실세계 장면을 정확하게 경험하는 것이 불가능하게 할 수 있도록 데이터 프로세싱 및 데이터 분배가 유한의 시간이 걸릴 수 있을지라도, 본 명세서에서 사용된 바와 같이, 동작은 동작이 즉시 그리고 과도한 지연 없이 수행될 때 "실시간"으로 수행되는 것으로 고려된다. 그에 따라, 사용자가 지연 후(예로서, 실제로 발생들이 일어난 후 몇 초 또는 몇 분) 실세계 장면 내에서 특정 이벤트들을 사용자가 경험하더라도 사용자는 실시간으로 실세계 장면을 경험한다고 말할 수 있다.In some examples,
상기 설명된 바와 같이, 특정한 구현들에서, 시스템(100)은 상대적으로 다수의 가상화된 투영들을 나타내는 데이터를 생성할 수 있다. 이 데이터는 가상 현실 미디어 콘텐트(예로서, 데이터를 사용하는 가상 현실 미디어 콘텐트)가 어떻게 생성되어 클라이언트 측 미디어 플레이어 디바이스들에 분배될 수 있는지에 대한 유연성을 제공할 수 있다. 예를 들면, 실세계 장면의 다수의 로컬화된 가상 투영들을 나타내는 데이터를 생성함으로써, 상세가 덜 관련되는 또 다른 사용자의 미디어 플레이어 디바이스에 제공되지 않으면서 하나의 사용자의 경험과 관련된 상세는 그 사용자와 연관된 미디어 플레이어 디바이스에 제공될 수 있다. As described above, in certain implementations,
시스템(100)의 하나의 특정한 구현에서, 예를 들면, 통신 시설(102)은 각각이 실세계 장면의 상이한 뷰들과 연관된 제 1 복수의 세트들의 캡처 파라미터들에 포함된 각각의 세트의 캡처 파라미터들에 따라 실세계 장면을 묘사하는 컬러 및 깊이 프레임들을 포함하는 복수의 캡처된 표면 데이터 프레임 시퀀스들을 수신할 수 있다(예로서, 실세계 장면 내에서 이벤트들이 발생함에 따라 실시간으로). 상기 설명된 바와 같이, 복수의 캡처된 표면 데이터 프레임 시퀀스들에서 각각의 표면 데이터 프레임 시퀀스는 실세계 장면의 상이한 뷰들을 캡처하기 위해 실세계 장면에 대해 상이한 위치들에 배치된 복수의 캡처 디바이스들에서 상이한 캡처 디바이스에 의해 캡처될 수 있다. 캡처된 표면 데이터 프레임 시퀀스들의 수신에 더하여, 표면 데이터 프레임 시퀀스 관리 시설(104)은 제 1 복수의 세트들의 캡처 파라미터들에 포함된 캡처 파라미터들의 세트들과 별개인 제 2 복수의 세트들의 캡처 파라미터들을 식별할 수 있다. 예를 들면, 제 2 복수의 세트들의 캡처 파라미터들에서 각각의 세트의 캡처 파라미터들은 복수의 캡처 디바이스들에 의해 캡처된 실세계 장면의 상이한 뷰들과 별개인 실세계 장면의 각각의 맞춤화된 뷰들과 연관될 수 있다. 예를 들면, 제 2 복수의 세트들의 캡처 파라미터들은 상대적으로 다수의 세트들의 캡처 파라미터들(예로서, 제 1 복수의 세트들의 캡처 파라미터들에 포함되는 것보다 많은 수의 세트들)을 포함할 수 있다. 이 식별 동작은 또한, 실세계 장면 내에서 이벤트들이 발생함에 따라 실시간으로 수행될 수 있다.In one particular implementation of the
제 2 복수의 세트들의 캡처 파라미터들의 식별에 응답하여, 가상화된 투영 생성 시설(106)은 복수의 캡처된 표면 데이터 프레임 시퀀스들에 기초하여 그리고 제 2 복수의 세트들의 캡처 파라미터들에 기초하여 실세계 장면의 각각의 맞춤화된 뷰의 가상화된 투영들을 위해 컬러 및 깊이 프레임들을 렌더링할 수 있다. 일부 예들에서, 가상화된 투영 생성 시설(106)은 하기에 더 상세히 설명될 바와 같이 하나 이상의 전송 스트림들 등에 의해 전송될 수 있는 각각의 가상화된 표면 데이터 프레임 시퀀스들 내에 포함되도록 렌더링된 컬러 및 깊이 프레임들을 패키징할 수 있다. 이 렌더링 및/또는 데이터 패키징은 또한, 이벤트들이 실세계 장면 내에서 발생함에 따라 실시간으로 수행될 수 있다. 이와 같이, 통신 시설(102)은 실세계 장면의 각각의 맞춤화된 뷰의 가상화된 투영들을 위한 렌더링된 컬러 및 깊이 프레임들을 포함하는 복수의 가상화된 표면 데이터 프레임 시퀀스들을 제공할 수 있다(예로서, 이벤트가 실세계 장면 내에서 발생함에 따라 실시간으로). 예를 들면, 복수의 가상화된 표면 데이터 프레임 시퀀스들은 미디어 플레이어 디바이스에 대한 가상 현실 미디어 콘텐트(예로서, 가상 현실 미디어 제공자 파이프라인에 의해 가상 현실 미디어 콘텐트를 경험하는 사용자와 연관된 미디어 플레이어 디바이스에 실시간으로 스트리밍되도록 구성된 가상 현실 미디어 콘텐트) 내에 포함시키기 위해 제공될 수 있다.In response to identifying the second plurality of sets of capture parameters, virtualized
실세계 장면을 나타내는 데이터(예로서, 시스템(100)에 의해 수신된 표면 데이터 프레임 시퀀스들)는 특정한 구현을 제공할 수 있는 임의의 적합한 구성으로 배열된 임의의 적합한 시스템들 및/또는 디바이스들에 의해 캡처될 수 있다. 예를 들면, 상기 언급된 바와 같이, 시스템(100)에 의해 수신된 복수의 캡처된 표면 데이터 프레임 시퀀스들에서 각각의 표면 데이터 프레임 시퀀스는 실세계 장면의 상이한 뷰들을 캡처하기 위해 실세계에 대해 상이한 위치들에 배치된 복수의 캡처 디바이스들에서 상이한 캡처 디바이스에 의해 캡처될 수 있다.Data representing a real-world scene (e.g., surface data frame sequences received by system 100) may be processed by any suitable systems and/or devices arranged in any suitable configuration capable of providing a particular implementation. can be captured. For example, as noted above, each surface data frame sequence in a plurality of captured surface data frame sequences received by
예시하기 위해, 도 2는 일 예시적인 실세계 장면을 나타내는 데이터가 실세계 장면의 상이한 뷰들로부터 캡처되는 일 예시적인 구성(200)을 보여준다. 구체적으로, 구성(200)에서 도시된 바와 같이, 실세계 객체(204)를 포함하는 실세계 장면(202)은 실세계 장면(202)의 복수의 뷰들(206)(예로서, 뷰(206-1 내지 206-8))에 의해 둘러싸일 수 있다.To illustrate, FIG. 2 shows an
실세계 장면(202)은 임의의 실세계 풍경, 실세계 위치, 실세계 이벤트(예로서, 실시간 이벤트, 등), 또는 특정한 구현을 제공할 수 있는 실세계에 존재하는 다른 대상(예로서, 가상 세계 또는 허구 세계에서만 존재하는 것과 반대로)을 나타낼 수 있다. 도 2에서 실세계 장면(202)을 나타내는 원으로 도시된 바와 같이, 실세계 장면(202)은 무대, 경기장, 등과 같은 구체적으로 기술된 영역일 수 있다. 반대로, 다른 예들에서, 실세계 장면(202)은 그렇게 잘 정의되거나 기술되지 않을 수 있다. 예를 들면, 실세계 장면(202)은 도시 거리, 박물관, 경치 좋은 풍경, 등과 같은 임의의 실내 또는 실외 실세계 위치를 포함할 수 있다. 특정 예들에서, 실세계 장면(202)은 스포츠 이벤트, 뮤지컬 이벤트, 드라마 또는 극장용 공연, 대규모 축하(예로서, 타임스퀘어에서의 신년전야제, 참회 화요일(Mardis Gras), 등), 정치 이벤트, 또는 임의의 다른 실세계 이벤트와 같은 실세계 이벤트와 연관될 수 있다. 동일하거나 다른 예들에서, 실세계 장면(202)은 허구화된 장면을 위한 세팅(예로서, 실사 촬영 가상 현실 텔레비전 쇼 또는 영화의 세트) 및/또는 특정한 구현을 제공할 수 있는 임의의 다른 실내 또는 실외 실세계 위치에서의 임의의 다른 장면과 연관될 수 있다.A real-
그에 따라, 실세계 객체(204)는 생물이든지 아니면 무생물이든지, 실세계 장면(202)과 연관되고(예로서, 실세계 장면(202) 내에 또는 주위에 위치됨) 뷰들(206) 중 적어도 하나로부터 검출가능한(예로서, 뷰잉가능한, 등) 임의의 실세계 객체를 나타낼 수 있다. 실세계 객체(204)가 명료성을 위해 상대적으로 단순한 기하학적 형태로 도시되지만, 실세계 객체(204)가 다양한 레벨들의 복잡성을 가지는 다양한 유형들의 객체들을 나타낼 수 있다는 것이 이해될 것이다. 기하학적 형상 대신에, 예를 들면, 실세계 객체(204)는 사람 또는 또 다른 생물, 투명하지 않은 고체, 액체, 또는 가스와 같은 임의의 생물 또는 무생물 객체 또는 표면, 벽, 천장, 바닥과 같은 덜 별개의 객체, 또는 본 명세서에서 설명되거나 특정한 구현을 제공할 수 있는 임의의 다른 유형의 객체를 나타낼 수 있다.Accordingly, the real-
실세계 객체(204)는 뷰들(206)로부터 실세계 장면(202)을 캡처하기 위해 실세계 장면(202)에 대해 상이한 위치들에 배치된 캡처 디바이스들에 의해 검출되도록 광(예로서, 실세계 장면(202)에서의 주변 광, 깊이 캡처 디바이스에 의해 방출된 구조화된 광 패턴의 적외선, 등)을 각각 반사할 수 있는 다양한 표면들을 포함할 수 있다. 실세계 객체(204)가 상대적으로 단순한 것으로 묘사될지라도, 실세계 객체(204)의 표면들의 깊이 및/또는 외관은 하기에 도시될 바와 같이 표면들이 검출되는 실세계 장면(202)의 뷰(206)에 기초하여 상이하게 나타날 수 있다. 즉, 실세계 객체(204)는 실세계 객체(204)가 뷰잉되는 관점(예로서, 위치, 시점, 등)에 기초하여 상이하게 보일 수 있다.The real-
상기 언급된 바와 같이, 실세계 장면(202)의 뷰들(206)은 실세계 장면(202)(예로서, 실세계 객체(204)를 포함함)이 뷰잉될 수 있는 상이한 관점들, 시점들, 등을 제공할 수 있다. 하기에 설명될 바와 같이, 다양한 상이한 뷰들(206)(예로서, 다양한 관점들로부터 실세계 장면(202)을 캡처하기 위해 실세계 장면(202)을 둘러싸는 뷰들(206))로부터 캡처된 실세계 장면(202)의 컬러 및 깊이 데이터를 사용하여, 시스템(100)은 실세계 장면(202)의 임의의 뷰의 가상화된 투영을 생성할 수 있다. 즉, 뷰들(206) 중 하나 이상으로부터 캡처된 컬러 및 깊이 데이터를 사용하여, 시스템(100)은 실세계 장면(202)의 맞춤화된 뷰(예로서, 뷰들(206)과 별개인 위치, 방향, 등으로부터 실세계 장면(202)의 임의의 뷰)의 가상화된 투영을 위해 컬러 및 깊이 데이터를 렌더링할 수 있다.As noted above, views 206 of real-
뷰들(206)은 실세계 장면(202)에 대해 각각 고정될 수 있다. 예를 들면, 실세계 장면(202) 및 뷰들(206) 둘 모두는 고정식일 수 있거나, 실세계 장면(202) 및 뷰들(206)은 함께 움직일 수 있다. 일부 예들에서, 구성(200)에서 도시된 바와 같이, 뷰들(206)은 실세계 장면(202)과 연관된 적어도 2개의 치수들을 따라(예로서, 지면과 같은 평면을 따라) 실세계 장면(202)을 둘러쌀 수 있다. 특정 예들에서, 뷰들(206)은 (예로서, 실세계 장면(202) 위 및 아래의 뷰들(206)을 또한 포함함으로써) 3개의 치수들을 따라 실세계 장면(202)을 둘러쌀 수 있다.Views 206 may each be anchored to a
뷰들(206)이 배치되는 실세계 장면(202)을 둘러싸는 상이한 위치들에 의해 도시된 바와 같이, 각각의 뷰(206)는 실세계 장면(202)에 대해 특정한 위치와 연관될 수 있다. 부가적으로, 뷰들(206)은 또한, 실세계 장면(202)이 어떻게 캡처되는지에 대한 다른 양태들과 연관될 수 있다. 예를 들면, 각각의 뷰(206)로부터 나오는 점선으로 도시된 바와 같이, 뷰들(206)은 특정한 캡처 방향들(예로서, 뷰들(206)에 대응하는 캡처 디바이스들이 대향하고 있는 특정한 방향들), 캡처의 특정한 시야들(예로서, 예를 들면 캡처 디바이스들의 렌즈들이 얼마나 협각이거나 광각인지, 캡처 디바이스의 줌 레벨, 등에 기초하여 캡처 디바이스들에 의해 캡처되는 실세계 장면(202)의 영역들)과 연관될 수 있다. 각각의 뷰(206)는 또한, 도 2에 명시적으로 도시되지 않은 캡처의 양태들과 연관될 수 있다. 예를 들면, 각각의 뷰(206)는 뷰(206)와 연관된 캡처 디바이스에 의해 데이터가 캡처되는 특정한 품질 레벨(예로서, 이미지 해상도, 프레임 레이트, 등), 캡처 디바이스에 의해 캡처된 데이터가 인코딩되는 특정한 포맷, 및/또는 특정한 구현을 제공할 수 있는 데이터 캡처의 임의의 다른 양태들과 연관될 수 있다.Each view 206 may be associated with a particular location relative to the
일부 예들에서, 구성(200)에서 도시된 바와 같이, 각각의 뷰(206)와 연관된 시점(예로서, 방향, 시야들, 등)은 뷰들(206)과 맞추어 조정되지 않을 수 있는 맞춤화된 뷰들로부터 실세계 장면(202)을 나중에 재생성할 수 있도록 충분한 관점들로부터 실세계 장면(202)을 캡처하기 위해 실세계 장면(202)을 향하여 안쪽으로 각이질 수 있다. 부가적으로, 동일하거나 다른 예들에서, 뷰들(206)과 연관된 시점들 중 하나 이상은 실세계 장면(202) 등을 둘러싸는 객체들을 나타내는 데이터를 캡처하기 위해 바깥쪽으로 각이질 수 있다(즉, 실세계 장면(202)으로부터 멀어짐). 예를 들면, 구면의 바깥 쪽을 향하는 시점을 갖는 360도 캡처 디바이스는 부가적인 관점들로부터 실세계 장면(202) 내에 포함된 객체들을 캡처하기 위해 및/또는 실세계 장면(202) 외부의 디바이스들을 캡처하기 위해 실세계 장면(202)의 중간의 위치(명시적으로 도시되지 않음)에 배치될 수 있다. 부가적으로 또는 대안적으로, 특정 예들에서, 복수의 외향 뷰들은 실세계 장면의 파노라마, 광각, 또는 360도 뷰의 캡처를 허용할 수 있다.In some examples, as shown in
각각의 뷰(206)의 관점들로부터 실세계 장면(202)을 캡처하기 위해, 복수의 캡처 디바이스에서 상이한 캡처 디바이스가 뷰들(206)의 각각의 상이한 위치에 배치될 수 있다. 예시하기 위해, 도 3a는 실세계 장면(202)을 나타내는 표면 데이터 프레임 시퀀스 내에 포함시키기 위해 컬러 및 깊이 프레임들을 캡처하는 일 예시적인 캡처 디바이스(302)를 보여준다.To capture the
도 3a에 도시된 바와 같이, 캡처 디바이스(302)는 뷰(206-1)와 연관될 수 있고, 이와 같이 뷰(206-1)에 대응하는 위치에서 실세계 장면(202) 및 실세계 객체(204)에 대해 배치될 수 있다. 도 3a는 캡처 디바이스(302)가 실세계 장면(202)(예로서, 실세계 객체(204) 및/또는 그 안에 포함된 다른 객체들을 포함함)을 나타내는 컬러 데이터(예로서, 풀 컬러 또는 그레이스케일 이미지들을 나타내는 2D 비디오 데이터)를 캡처하도록 구성된 2차원("2D") 컬러 캡처 디바이스(304), 및 실세계 장면(202)을 나타내는 깊이 데이터를 캡처하도록 구성된 깊이 캡처 디바이스(306)를 포함할 수 있음을 도시한다.As shown in FIG. 3A ,
2D 컬러 캡처 디바이스(304)는 임의의 적합한 2D 컬러 캡처 디바이스(예로서, 카메라, 비디오 카메라, 등)에 의해 구현될 수 있고, 특정한 구현을 제공할 수 있는 임의의 방식으로 2D 컬러 데이터를 캡처할 수 있다. 일부 예들에서, 2D 컬러 캡처 디바이스(304)는 깊이 캡처 디바이스(306)와 별개의 디바이스일 수 있다. 집합적으로, 이러한 별개의 디바이스들(예로서, 디바이스들을 기능적으로 병합하기 위해 사용된 임의의 통신 인터페이스들 및/또는 다른 하드웨어 또는 소프트웨어 메커니즘들 뿐만 아니라)은 캡처 디바이스(예로서, 캡처 디바이스(302))로서 언급될 수 있다. 다른 예들에서, 도 3a에 도시된 바와 같이, 2D 컬러 캡처 디바이스(304) 및 깊이 캡처 디바이스(306)는 설명될 컬러 데이터 및 깊이 데이터를 둘 모두를 캡처하는 단일 디바이스(즉, 캡처 디바이스(302))에 통합될 수 있다.2D
별개의 디바이스로서 구현되거나 2D 컬러 캡처 디바이스(304)와 통합되든 아니든, 깊이 데이터 캡처 디바이스(306)는 특정한 구현을 제공할 수 있는 임의의 방식으로 실세계 장면(202)을 나타내는 깊이 데이터를 캡처할 수 있다. 예를 들면, 깊이 데이터 캡처 디바이스(306)는 구조화된 광 깊이 맵 캡처 기술, 스테레오스코픽 깊이 맵 캡처 기술, 비행 시간(time-of flight) 깊이 맵 캡처 기술, 또 다른 적합한 깊이 맵 캡처 기술, 또는 특정한 구현을 제공할 수 있는 깊이 맵 캡처 기술들의 임의의 조합과 같은 하나 이상의 깊이 맵 캡처 기술들을 사용할 수 있다.Whether implemented as a separate device or integrated with the 2D
깊이 데이터를 캡처하기 위해 사용된 깊이 맵 캡처 기술들의 유형 및 수에 관계 없이, 캡처 디바이스(302)는 뷰(206-1)로부터의 실세계 장면(202) 내에 포함된 실세계 객체(204) 및/또는 다른 객체들의 표면들을 나타내는 컬러 데이터(예로서, 컬러 프레임들) 및 깊이 데이터(예로서, 깊이 프레임들) 둘 모두를 캡처할 수 있다. 본 명세서에서 사용된 바와 같이, 캡처 디바이스(302)에 의해 대략 동시에 캡처되는 컬러 프레임 및 깊이 프레임은 집합적으로, "표면 데이터 프레임" 또는 "컬러 및 깊이 프레임"으로서 언급될 수 있는데, 이는 이들 프레임들에 포함된 데이터가 실세계 장면에 포함된 실세계 객체들의 표면들을 설명하는 데이터(즉, 표면들의 보이는 외관 뿐만 아니라, 표면들의 깊이 기하학적 구조들 둘 모두)를 나타내기 때문이다.Regardless of the type and number of depth map capture techniques used to capture the depth data,
그에 따라, 본 명세서에서 사용된 바와 같이, 표면 데이터 프레임 또는 컬러 및 깊이 프레임은 특정한 시점에서 실세계 장면의 특정한 뷰로부터 실세계 장면 내에서 보이는 실세계 객체들의 표면들과 연관된 다양한 유형들의 데이터를 나타내는 데이터세트를 언급할 수 있다. 예를 들면, 표면 데이터 프레임은 실세계 장면에 대해 특정한 뷰로부터 뷰잉할 때 객체들을 나타내는 깊이 데이터 뿐만 아니라, 컬러 데이터(즉, 이미지 데이터)를 포함할 수 있다. 이와 같이, 복수의 관련 표면 데이터 프레임들은 특정 뷰로부터 뷰잉할 때 실세계 장면의 비디오 형 표현(컬러 뿐만 아니라, 깊이 데이터를 나타내는)을 생성하기 위해 함께 시퀀싱(sequencing)될 수 있다. 특정 예들에서, 표면 데이터 프레임은 또한, 오디오 데이터, 메타데이터(예로서, 표면 데이터 프레임이 캡처되는 뷰를 설명하는 캡처 파라미터들의 세트를 포함하는 메타데이터, 표면 데이터 프레임으로 나타내진 특정 실세계 객체들에 관한 정보, 등)와 같은 다른 유형들의 데이터, 및/또는 특정한 구현을 제공할 수 있는 다른 유형들의 데이터와 연관될 수 있다. 하기에 설명되고 도시될 바와 같이, 이러한 표면 데이터 프레임들의 시퀀스는 본 명세서에서 "표면 데이터 프레임 시퀀스"로서 언급될 수 있다.Accordingly, as used herein, a surface data frame or color and depth frame is a dataset representing various types of data associated with surfaces of real-world objects visible within a real-world scene from a particular view of the real-world scene at a particular point in time. can be mentioned For example, a surface data frame may include color data (ie, image data) as well as depth data representing objects when viewed from a particular view of a real-world scene. As such, multiple related surface data frames can be sequenced together to create a video-like representation (representing color as well as depth data) of a real-world scene when viewed from a particular view. In certain examples, a surface data frame may also include audio data, metadata (e.g., metadata including a set of capture parameters describing the view from which the surface data frame is captured, specific real-world objects represented by the surface data frame) information about, etc.), and/or other types of data that may provide a particular implementation. As will be described and illustrated below, this sequence of surface data frames may be referred to herein as a “surface data frame sequence”.
본 명세서에서 사용된 바와 같이, "컬러 데이터"는 광범위하게, 특정 시점에서 또는 특정한 뷰의 관점으로부터 특정한 시간 기간에 걸쳐 대상(예로서, 실세계 장면에 포함된 실세계 객체)의 외관을 나타내는 컬러 또는 그레이스케일(즉, "흑백")로 나타나든 아니든 임의의 이미지 데이터, 비디오 데이터, 등을 포함할 수 있다. 컬러 데이터는 본 기술 분야의 이미지 데이터 및/또는 비디오 데이터를 정의하는 다양한 정의들 및/또는 표준들과 연관될 수 있는 임의의 특정한 포맷, 파일 유형, 프레임 레이트, 해상도, 품질 레벨, 또는 상이한 특성으로 제한되지 않는다. 유사하게, 본 명세서에서 사용된 바와 같이, "깊이 데이터"는 공간에서 대상의 위치 및/또는 기하학적 구조를 나타내는 임의의 데이터를 포함할 수 있다. 예를 들면, 실세계 객체를 나타내는 깊이 데이터는 실세계 객체의 표면들 상의 상이한 지점들에 대해 좌표 시스템(예로서, 특정한 캡처 디바이스와 연관된 좌표 시스템, 실세계 장면과 연관된 글로벌 좌표 시스템, 등)에 대한 좌표를 포함할 수 있다.As used herein, “color data” broadly refers to the colors or grays that represent the appearance of an object (eg, a real-world object included in a real-world scene) over a specified period of time from the point of view of a particular point in time or view. It may contain any image data, video data, etc., whether or not appearing in scale (ie, "black and white"). Color data may be in any particular format, file type, frame rate, resolution, quality level, or other characteristic that may be associated with various definitions and/or standards defining image data and/or video data in the art. Not limited. Similarly, as used herein, “depth data” may include any data representing the position and/or geometry of an object in space. For example, depth data representing a real-world object may provide coordinates relative to a coordinate system (eg, a coordinate system associated with a particular capture device, a global coordinate system associated with a real-world scene, etc.) for different points on the surfaces of the real-world object. can include
뷰(206-1)로부터 컬러 및 깊이 프레임들을 캡처하는 캡처 디바이스(302)와 같이, 다른 캡처 디바이스들이 다른 뷰들(206)과 연관된 각각의 시점들로부터 컬러 및 깊이 프레임들을 비슷하게 캡처하기 위해 다른 뷰들(206)(예로서, 도 2의 뷰들(206-2 내지 206-8))과 연관될 수 있다는 것이 이해될 것이다. 일부 예들에서, 표면 데이터 프레임들은 서로 동기화되도록 동일한 특정한 시점에서 상이한 뷰들(206)과 연관된 상이한 캡처 디바이스들에 의해 캡처될 수 있다. 본 명세서에서 사용된 바와 같이, 표면 데이터 프레임들은 표면 데이터 프레임들이 정확히 동일한 순간에 캡처되지 않더라도, 순간적으로(즉, 일정 시간에 걸쳐 대상을 나타내는 것과 대조적으로) 대상(예로서, 실세계 장면 내의 실세계 객체)을 효과적으로 나타내기 위해 표면 데이터 프레임들이 충분한 시간에 근접하게 캡처될 때 "동일한 특정한 시점에서" 캡처된다고 말할 수 있다. 예를 들면, 특정한 대상이 얼마나 동적인지(예로서, 하나 이상의 실세계 객체들이 실세계 장면 등을 통해 얼마나 빨리 이동하는지)에 의존하여, 예를 들면, 서로 수십 또는 수백 밀리초 내에 캡처될 때, 또는 특정한 구현을 제공할 수 있는 또 다른 적합한 시간프레임 내에(예로서, 마이크로초, 밀리초, 초 내에, 등) 캡처될 때 표면 데이터 프레임들은 동일한 특정한 시점에서 캡처된 것으로 고려될 수 있다. 이와 같이, 표면 데이터 프레임들의 각각은 표면들이 특정한 시점에서, 각각의 캡처 디바이스가 연관되는 뷰(206)의 각각의 시점으로부터 나타날 때 실세계 장면 내에 포함된 실세계 객체의 표면들의 컬러 데이터 및 깊이 데이터를 나타낼 수 있다.Like
도 3b 및 도 3c는 캡처 디바이스(302)에 의해 캡처되고 컬러 및 깊이 프레임들 내에(즉, 표면 데이터 프레임 내에) 포함된 데이터의 예시적인 그래픽 묘사들을 도시한다. 구체적으로, 도시된 바와 같이, 표면 데이터 프레임에 통합된 컬러 프레임은 컬러 데이터(308)(도 3b에 도시됨)를 포함할 수 있는 반면, 표면 데이터 프레임에 통합된 깊이 프레임은 깊이 데이터(310)(도 3c에 도시됨)를 포함할 수 있다.3B and 3C show example graphical depictions of data captured by
도 3b에서, 컬러 데이터(308)는 캡처 디바이스(302) 내의 2D 컬러 캡처 디바이스(304)에 의한 뷰(206-1)의 관점으로부터 뷰잉될 때 실세계 장면(202)(예로서, 실세계 객체(204)를 포함함)을 묘사한다. 컬러 데이터(308)가 비디오 프레임들의 시퀀스의 단일 비디오 프레임을 나타낼 수 있기 때문에, 컬러 데이터(308)에 의해 나타내진 실세계 객체(204)의 묘사는 실세계 객체(204)(예로서, 실세계 장면(202)과 연관된 다른 객체들 뿐만 아니라)가 특정한 시점에서 뷰(206-1)의 시점으로부터 어떻게 나타나는지를 나타낼 수 있다. 도 3b에서 이미지로서 도시되어 있을지라도, 컬러 데이터(308)가 임의의 적합한 형태로 캡처되고, 인코딩되고, 포맷되고, 송신되며, 나타내질 수 있음이 이해될 것이다. 예를 들면, 컬러 데이터(308)는 표준 비디오 인코딩 프로토콜, 표준 이미지 포맷, 등에 따라 포맷되는 디지털 데이터일 수 있다. 일부 예들에서, 컬러 데이터(308)는 실세계 장면(202)에서 객체들의 컬러 이미지(예로서, 컬러 사진과 유사함)를 나타낼 수 있다. 대안적으로, 다른 예들에서, 컬러 데이터(308)는 객체들을 나타내는 그레이스케일 이미지일 수 있다(예로서, 흑백 사진과 유사함).In FIG. 3B ,
도 3c에서, 깊이 데이터(310)(컬러 데이터(308)와 같은)는 또한, 뷰(206-1)의 관점으로부터 실세계 장면(202)(실세계 객체(204)를 포함함)을 묘사한다. 그러나, 실세계 장면(202) 내에서 객체들의 가시적인 외관을 나타내기보다(예로서, 광이 실세계 객체(204)의 표면들과 상호작용하는 방법을 컬러 또는 그레이스케일로 나타내기보다), 깊이 데이터(310)는 예를 들면, 캡처 디바이스(302)에서 깊이 캡처 디바이스(306)에 대한 객체들(예로서, 실세계 장면(202) 내의 실세계 객체(204) 뿐만 아니라, 다른 객체들)의 표면 상의 각각의 지점의 깊이(즉, 거리 또는 위치)를 나타낼 수 있다. 컬러 데이터(308)와 같이, 깊이 데이터(310)는 임의의 적합한 형태로 캡처되고, 인코딩되고, 포맷되고, 송신되며, 나타낼 수 있다. 예를 들면, 도시된 바와 같이, 깊이 데이터(310)는 그레이스케일 이미지 데이터(예로서, 깊이 캡처 디바이스(306)에 의해 캡처된 각각의 픽셀에 대해 6 또는 8 비트)에 의해 나타내질 수 있다. 그러나, 광이 실세계 객체(204)의 표면들로부터 어떻게 반사되는지 나타내기보다(즉, 컬러 데이터(308)로 나타내진 바와 같이), 깊이 데이터(310)의 그레이스케일 이미지는 이미지의 각각의 픽셀에 대해, 그 픽셀에 의해 나타내진 지점이 깊이 캡처 디바이스(306)로부터 얼마나 멀리 떨어져 있는지를 나타낼 수 있다. 예를 들면, 깊이 캡처 디바이스(306)에 더 가까운 지점들은 더 어두운 회색 음영을 나타내는 값들(예로서, 0b111111이 검은색을 나타내는 6 비트 구현의 경우에 0b111111에 더 가까운 이진 값들)로 나타내질 수 있다. 반대로, 깊이 캡처 디바이스(306)로부터 더 멀리 있는 지점들은 더 밝은 회색 음영을 나타내는 값들(예로서, 0b000000이 흰색을 나타내는 6 비트 구현의 경우에 0b000000에 더 가까운 이진 값들)로 나타내질 수 있다.In FIG. 3C , depth data 310 (such as color data 308 ) also depicts real-world scene 202 (including real-world object 204 ) from the perspective of view 206 - 1 . However, rather than representing the visual appearance of objects within the real-world scene 202 (eg, representing in color or grayscale how light interacts with the surfaces of real-world objects 204),
특정 예들에서, 시스템(100)(예로서, 통신 시설(102))은 하나 이상의 네트워크들 및/또는 임의의 다른 적합한 통신 인터페이스들, 프로토콜들, 및 기술들에 의해 다른 뷰들(206)과 연관된 캡처 디바이스(302) 및 다른 캡처 디바이스들에 통신가능하게 결합될 수 있다. 그에 따라, 이들 예들에서, 통신 시설(102)은 하나 이상의 네트워크들 및/또는 다른 통신 인터페이스들, 프로토콜들, 및 기술들에 의해 캡처 디바이스들로부터 캡처된 표면 데이터 프레임 시퀀스들을 직접적으로 수신할 수 있다. 다른 예들에서, 시스템(100)으로부터 분리된 실세계 장면 캡처 시스템은 캡처 디바이스들의 각각과 통신가능하게 결합될 수 있고 캡처 디바이스들의 각각에 의해 표면 데이터 프레임들의 캡처를 관리하기 위해 그리고 표면 데이터 프레임 시퀀스들을 시스템(100)에 제공하도록 구성될 수 있다(예로서, 표면 데이터 프레임 시퀀스들을 동기화 및/또는 그렇지 않으면, 프로세싱한 후에). 그와 관계없이, 캡처 디바이스, 시스템(100) 및/또는 중간 실세계 장면 캡처 시스템 사이의 통신들은 네트워크(예로서, 유선 또는 무선 근거리 통신망, 광역 통신망, 제공자 네트워크, 인터넷, 등)에 의해, 유선 통신 인터페이스(예로서, 범용 직렬 버스("USB"))에 의해, 무선 통신 인터페이스에 의해, 또는 임의의 다른 통신 인터페이스, 프로토콜, 및/또는 특정한 구현을 제공할 수 있는 기술에 의해 구현될 수 있다.In certain examples, system 100 (eg, communication facility 102 ) captures data associated with other views 206 by one or more networks and/or any other suitable communication interfaces, protocols, and technologies. It can be communicatively coupled to
다른 예들에서, 복수의 캡처 디바이스들은 시스템(100)의 일부 내에 통합되거나 그렇지 않으면 시스템(100)의 일부(예로서, 시스템(100)의 표면 데이터 프레임 시퀀스 관리 시설(104) 또는 또 다른 시설의 일부)로서 포함될 수 있다. 이와 같이, 이들 예들에서, 표면 데이터 프레임 시퀀스 관리 시설(104)은 통합된 캡처 디바이스들을 사용하여 표면 데이터 프레임 시퀀스들을 캡처함으로써 표면 데이터 프레임 시퀀스들을 수신할 수 있다.In other examples, a plurality of capture devices are integrated within or otherwise part of system 100 (eg, surface data frame sequence management facility 104 of
도 4a 및 도 4b는 캡처 디바이스(302)에 의해 생성된 바와 같은 실세계 장면(202)(예로서, 뷰(206-1)의 관점으로부터)을 나타내는 일 예시적인 표면 데이터 프레임 시퀀스(400-1)를 도시한다. 구체적으로, 도 4a는 표면 데이터 프레임 시퀀스(400-1)에 포함될 수 있는 특정의 특수 데이터를 묘사하는 표면 데이터 프레임 시퀀스(400-1)의 상세한 그래픽 도면을 보여주는 반면에, 도 4b는 표면 데이터 프레임 시퀀스(400-1)의 콘텐트의 많은 상세들을 구체적으로 묘사하지 않은 표면 데이터 프레임 시퀀스(400-1)의 통합된 그래픽 뷰를 보여준다.4A and 4B show an exemplary sequence of surface data frames 400-1 representing a real-world scene 202 (eg, from the perspective of view 206-1) as generated by
도 4a에 도시된 바와 같이, 표면 데이터 프레임 시퀀스(400-1)는 컬러 데이터, 깊이 데이터, 및 메타데이터를 포함하는 다양한 유형들의 데이터를 포함할 수 있다. 구체적으로, 표면 데이터 프레임 시퀀스(400-1)는 컬러 프레임 시퀀스(402), 깊이 프레임 시퀀스(404), 및 캡처 파라미터들(406)의 세트를 포함하도록 도시된다. 표면 데이터 프레임 시퀀스(400-1)가 도 4a에서 명시적으로 도시되지 않은 다른 유형들의 데이터(예로서, 캡처된 오디오 데이터, 캡처 파라미터들(406)의 세트 이외의 다른 메타데이터, 등)를 더 포함할 수 있음이 이해될 것이다. 부가적으로, 표면 데이터 프레임 시퀀스(400-1) 내에 포함된 데이터가 임의의 적합한 방식으로 배열되거나 포맷될 수 있음이 이해될 것이다. 예를 들면, 도시된 바와 같이, 표면 데이터 프레임 시퀀스(400-1) 내에 포함된 데이터는 하나의 컬러 프레임 시퀀스 및 하나의 깊이 프레임 시퀀스로서 배열될 수 있다. 다른 예들에서, 단일 캡처 디바이스는 (예로서, 캡처되는 실세계 장면의 시야의 상이한 부분들을 커버하기 위해) 다수의 컬러 프레임 시퀀스들 및/또는 다수의 깊이 프레임 시퀀스들을 출력할 수 있다. 또 다른 예들에서, 표면 데이터 프레임 시퀀스(400-1)의 데이터는 각각 특정한 컬러 프레임, 특정한 깊이 프레임, 및 특정 메타데이터(예로서, 캡처 파라미터들(406)의 세트를 나타내는 데이터)를 포함하는 통합된 표면 데이터 프레임들의 시퀀스로서, 또는 특정한 구현을 제공할 수 있는 다른 방식들로 배열될 수 있다.As shown in FIG. 4A, the surface data frame sequence 400-1 may include various types of data including color data, depth data, and metadata. Specifically, surface data frame sequence 400 - 1 is shown to include a
컬러 프레임 시퀀스(402)의 각각의 컬러 프레임 내에 포함된 데이터는 도 3과 관련하여 상기 설명된 컬러 데이터(308)와 유사할 수 있다. 그러나, 컬러 프레임 시퀀스(402) 내의 각각의 컬러 프레임은, 컬러 프레임 시퀀스(402)가 뷰(206-1)로부터 실세계 장면(202)의 비디오 형 표현을 형성할 수 있도록 약간 상이한 시간에 캡처될 수 있다. 유사하게, 깊이 프레임 시퀀스(404)의 각각의 깊이 프레임 내에 포함된 데이터는, 깊이 프레임 시퀀스(404)가 뷰(206-1)로부터 실세계 장면(202)의 또 다른 비디오 형 표현을 형성할 수 있도록 깊이 프레임 시퀀스(404) 내의 각각의 깊이 프레임이 약간 상이한 시간(예로서, 컬러 프레임 시퀀스(402)의 컬러 프레임들이 캡처되는 시간과 동기되는 시간)에 캡처될 수 있다는 점을 제외하고 깊이 데이터(310)와 유사할 수 있다.The data contained within each color frame of the
표면 데이터 프레임 시퀀스(400-1) 내에 포함된 캡처 파라미터들(406)의 세트는 표면 데이터 프레임 시퀀스(400-1)가 캡처되는 뷰(즉, 이 경우 뷰(206-1))를 설명하는 메타데이터를 포함할 수 있다. 예를 들면, 캡처 파라미터들(406)의 세트는 표면 데이터 프레임 시퀀스(400-1) 내에 포함된 표면 데이터 프레임들이 캡처되는 위치 및/또는 방법의 다양한 양태들을 나타내는 다양한 파라미터들을 포함할 수 있다. 캡처 파라미터들(406)의 세트 내에 포함된 캡처 파라미터들은 특정한 구현을 제공할 수 있는 실세계 장면의 각각의 뷰와 연관된 임의의 적합한 캡처 파라미터들을 포함할 수 있다.The set of
예를 들면, 캡처 파라미터들(406)의 세트는 실세계 장면(202)의 뷰(206-1)에 대응하는 컬러 및 깊이 프레임들이 캡처되는 실세계 장면(202)에 대한 위치를 나타내는 캡처 파라미터를 포함할 수 있다. 또 다른 예로서, 캡처 파라미터들(406)의 세트는 실세계 장면(202)의 뷰(206-1)에 대응하는 컬러 및 깊이 프레임들이 캡처되는 방향(예로서, 캡처 디바이스가 가리키고 있는 상이한 치수들에서 상이한 각도들과 연관된 캡처 방향)을 나타내는 캡처 파라미터를 포함할 수 있다. 유사하게, 또 다른 예로서, 캡처 파라미터들(406)의 세트는 실세계 장면(202)의 뷰(206-1)에 대응하는 컬러 및 깊이 프레임들이 캡처되는 시야를 나타내는 캡처 파라미터를 포함할 수 있다. 또한, 또 다른 예로서, 캡처 파라미터들(406)의 세트는 실세계 장면(202)의 뷰(206-1)에 대응하는 컬러 및 깊이 프레임들이 캡처되는 이미지 품질을 나타내는 캡처 파라미터를 포함할 수 있다. 또 다른 예들에서, 캡처 파라미터들(406)의 세트는 실세계 장면(202)의 뷰(206-1)에 대응하는 컬러 및 깊이 프레임들이 캡처될 수 있는 다른 양태들을 나타내는 임의의 다른 적합한 캡처 파라미터들을 포함할 수 있다. 예를 들면, 캡처 파라미터들(406)의 세트는 뷰(206-1)에 대응하는 깊이 프레임들이 캡처되는 깊이 맵핑 및/또는 깊이 범위를 나타내는 파라미터들, 뷰(206-1)에 대응하는 컬러 및 깊이 프레임들이 캡처되는 특정한 인코딩, 포맷, 프레임 레이트, 동적 범위, 등을 나타내는 파라미터들, 캡처의 소스(예로서, 뷰(206-1)에 대응하는 컬러 및 깊이 프레임들을 캡처하는 캡처 디바이스에 대한 식별 정보), 또는 다른 적합한 파라미터들을 포함할 수 있다.For example, the set of
캡처 파라미터들(406)의 세트는 특정한 구현을 제공할 수 있는 임의의 방식으로 표면 데이터 프레임 시퀀스(400-1) 내에 포함된 다른 데이터로 나타내지고 다른 데이터와 통합될 수 있다. 예를 들면, 일부 구현들이 캡처 파라미터들을 나타내는 데이터(예로서, 변수, 등)에서 명시적으로 캡처 파라미터들(406)을 나타낼 수 있을지라도, 다른 구현들은 방향, 위치, 및/또는 투영 정보(예로서, 원근 프레임 시퀀스들에 대한 시야 및 깊이 매핑들, 직교 프레임 시퀀스들에 대한 좌측/우측/상부/하부/근거리/원거리, 등)가 나타내지는 포맷으로 암시적으로 캡처 파라미터들(406)을 나타낼 수 있다. 특정 캡처 파라미터들(406)을 나타내는 데이터는 예를 들면, 특정 이미지 공간으로부터 세계 공간의 동종 좌표로의 완전한 변환을 나타내는 단일의 추상 행렬(예로서, 4x4 행렬)로 조합될 수 있다. 이와 같이, 이 예에서, 개별적인 구성요소들은 명시적으로 지정되지 않을 수 있고 오히려 더 일반적인 변환 내에 포함될 수 있다.The set of
부가적으로, 일부 예들에서, 캡처 파라미터들(406)의 세트는 컬러 프레임 시퀀스(402) 및 깊이 프레임 시퀀스(404) 내에 각각 포함된 각각의 컬러 프레임 및/또는 깊이 프레임과 통합(예로서, 반복)될 수 있다. 다른 예들에서, 캡처 파라미터들(406)의 세트는 각각의 개별적인 표면 데이터 프레임(예로서, 조합 컬러 및 깊이 프레임)과 통합될 수 있다. 이들 방식들로, 캡처 파라미터들(406)의 세트는 뷰들(206)이 표면 데이터 프레임 시퀀스(400-1)에 의해 나타내진 시간 기간 동안 동적으로 변경되더라도, 각각의 및 프레임마다 캡처 파라미터들을 유연하게 설명할 수 있다. 다른 예들에서, 캡처 파라미터들(406)의 세트는 표면 데이터 프레임 시퀀스(400-1)에 의해 나타내진 시간 기간에 걸쳐 정적일 수 있다. 이들 예들에서, 캡처 파라미터들(406)의 세트는 프레임 시퀀스들(402 및 404)의 프레임들과 별개로 송신될 수 있다. 예를 들면, 캡처 파라미터들(406)의 세트는 예컨대 컬러 및 깊이 프레임들의 송신 이전에, 컬러 및 깊이 프레임들의 송신의 시작 시에, 컬러 및 깊이 프레임들의 송신 후에, 및/또는 또 다른 적합한 시간에 컬러 및 깊이 프레임들의 송신과 별개로 송신될 수 있다.Additionally, in some examples, the set of
상기 언급된 바와 같이, 도 4b는 표면 데이터 프레임 시퀀스(400-1)의 통합된 그래픽 뷰를 도시한다. 구체적으로, 도 4b에서 표면 데이터 프레임 시퀀스(400-1)의 뷰는 특정한 뷰(즉, 뷰(206-1))로부터 뷰잉할 때 블록의 전면에 실세계 장면(202)(즉, 실세계 객체(204)를 포함함)을 묘사한 블록으로서 표면 데이터 프레임 시퀀스(400-1)를 보여준다. 이 유형의 표면 데이터 프레임 시퀀스 뷰는 하기에 설명된 도면들에서 부가적인 표면 데이터 프레임 시퀀스들을 도시하는데 유용할 것이다. 그러나, 도 4b에 도시된 바와 같은 통합된 그래픽 뷰를 사용하여 나타내진 임의의 표면 데이터 프레임 시퀀스가 상기 설명된 배열들 중 임의의 배열에서 도 4a와 관련하여 도시 및/또는 설명된 동일한 유형들의 데이터를 모두 포함할 수 있음이 이해될 것이다.As mentioned above, FIG. 4B shows an integrated graphical view of the surface data frame sequence 400-1. Specifically, the view of surface data frame sequence 400-1 in FIG. 4B shows a real-world scene 202 (i.e., real-world object 204) in front of the block when viewed from a particular view (i.e., view 206-1). ) is shown) as a block depicting the surface data frame sequence 400-1. This type of surface data frame sequence view will be useful for illustrating additional surface data frame sequences in the figures described below. However, any sequence of surface data frames represented using a unified graphical view as shown in FIG. 4B is data of the same types as shown and/or described with respect to FIG. 4A in any of the arrangements described above. It will be understood that it can include all.
표면 데이터 프레임 시퀀스들(400)(예로서, 도 4에 명시적으로 도시된 표면 데이터 프레임 시퀀스(400-1) 및 뷰(206-2)에 대응하는 표면 데이터 프레임 시퀀스 시퀀스(400-2), 뷰(206-3)에 대응하는 표면 데이터 프레임 시퀀스(400-3), 등과 같은 도 4에 명시적으로 도시되지 않은 다른 유사한 표면 데이터 프레임 시퀀스들) 중 하나 이상에 기초하여, 시스템(100)은 실세계 장면(202)의 맞춤화된 뷰의 가상화된 투영을 위해 컬러 및 깊이 프레임들을 렌더링할 수 있다. 예를 들면, 시스템(100)은 실세계 장면(202)의 맞춤화된 뷰(예로서, 도 2에 도시된 뷰들(206)과 별개인 뷰)와 연관되는 부가적인 세트의 캡처 파라미터들(예로서, 표면 데이터 프레임 시퀀스들(400)과 연관된 캡처 파라미터들의 세트들과 별개인 세트)을 식별할 수 있고, 표면 데이터 프레임 시퀀스들(400) 중 적어도 하나에 기초하고 부가적인 세트의 캡처 파라미터들에 기초하여 맞춤화된 뷰의 가상화된 투영을 위해 컬러 및 깊이 프레임들을 렌더링할 수 있다.surface data frame sequences 400 (e.g., surface data frame sequence 400-1 and surface data frame sequence sequence 400-2 corresponding to view 206-2, shown explicitly in FIG. 4; Based on one or more of surface data frame sequences 400-3 corresponding to view 206-3, and other similar surface data frame sequences not explicitly shown in FIG. 4, such as the like,
본 명세서에서 사용된 바와 같이, 실세계 장면의 "맞춤화된 뷰"는 실세계 장면을 나타내는 데이터를 캡처하는 물리적 캡처 디바이스와 연관된 뷰들과 별개인 실세계 장면의 임의의 뷰를 언급할 수 있다. 예를 들면, 맞춤화된 뷰는 (예로서, 실세계 객체에 대한 개선된 깊이 해상도 또는 깊이 정확도를 제공하기 위해) 특정 실세계 객체가 위치되는 장소 근처의 실세계 장면 내의 위치에 대해, 어떠한 캡처 디바이스도 배치되지 않은 실세계 장면 내의 위치에 대해, 캡처 디바이스와 연관된 임의의 뷰에 의해 제공될 수 있는 것과 상이한 방향에 대해, 캡처 디바이스와 연관된 임의의 뷰에 의해 제공될 수 있는 것과 상이한 시야(예로서, 상이한 줌 레벨과 연관된 시야, 더 광각이거나 더 협각 렌즈, 등)에 대해, 캡처 디바이스와 연관된 임의의 뷰에 의해 제공될 수 있는 것과 상이한 레벨의 상세(예로서, 이미지 해상도, 등) 등에 대해 맞춤화될 수 있다. 그에 따라, 본 명세서에서 사용된 바와 같이, 실세계 장면의 맞춤화된 뷰의 "가상화된 투영"은 맞춤화된 뷰와 연관된 투영(예로서, 원근 투영(perspective projection), 정투영(orthographic projection), 등)을 나타내는 데이터를 언급할 수 있다. 예를 들면, 특정 예들에서, 가상화된 투영은 물리적 캡처 디바이스가 맞춤화된 뷰와 연관되어야 하는 경우(즉, 캡처 디바이스가 맞춤화된 뷰를 정의하는 캡처 파라미터들의 세트를 갖는 데이터를 캡처해야 하는 경우) 이러한 캡처 디바이스에 의해 캡처될 데이터를 가상으로 시뮬레이팅하는 원근 투영을 포함할 수 있다. 또 다른 예로서, 가상화된 투영은 가상 캡처 디바이스의 시뮬레이션에 의해 생성되지 않지만, 오히려 깊이 필링 기술 또는 특정한 구현을 제공할 수 있는 깊이 데이터를 생성하기 위한 다른 적합한 기술에 의해 생성되는 비 원근 투영(예로서, 정투영 등)을 포함할 수 있다.As used herein, a “customized view” of a real-world scene can refer to any view of a real-world scene that is separate from views associated with a physical capture device that captures data representing the real-world scene. For example, a customized view may be created for a location in a real-world scene near where a particular real-world object is located (eg, to provide improved depth resolution or depth accuracy for a real-world object) without any capture device being placed. a different field of view (e.g., a different zoom level) than can be provided by any view associated with the capture device, for a location in the real world scene that for a field of view associated with , a wider or narrower angle lens, etc.), a different level of detail than may be provided by any view associated with the capture device (eg, image resolution, etc.), etc. Accordingly, as used herein, a “virtualized projection” of a customized view of a real-world scene is a projection associated with the customized view (eg, perspective projection, orthographic projection, etc.) can refer to data representing For example, in certain instances, a virtualized projection is such that a physical capture device must be associated with a customized view (ie, the capture device must capture data having a set of capture parameters that define the customized view). It may include a perspective projection that virtually simulates the data to be captured by the capture device. As another example, a virtualized projection is not created by simulation of a virtual capture device, but rather a non-perspective projection (eg As, orthographic projection, etc.) may be included.
상기 설명된 바와 같이, 맞춤화된 뷰들의 가상화된 투영들은 실세계 장면의 양태들에 대한 새로운 관점들, 개선된 깊이 해상도를 위한 부가된 유연성, 및 가상화된 투영들 없이 사용가능하지 않은 다양한 다른 이점들을 제공할 수 있다. 그러나, 가상화된 투영들이 물리적 캡처 디바이스들에 의해 캡처된 데이터에 기초할 수 있고, 이와 같이 물리적 캡처 디바이스들에 의해 캡처되지 않은 임의의 부가적인 데이터를 제공하지 않을 수 있다는 것이 이해될 것이다. 예를 들면, 가상화된 투영들이 물리적 캡처 디바이스들이 위치되지 않은 실세계 장면의 맞춤화된 뷰들과 연관될 수 있을지라도, 가상화된 투영들은 물리적 캡처 디바이스들이 위치되는 뷰들로부터 이미 사용가능하지 않은 임의의 새로운 정보를 제공하지 않을 수 있다.As described above, virtualized projections of customized views provide new perspectives on aspects of a real-world scene, added flexibility for improved depth resolution, and a variety of other benefits not available without virtualized projections. can do. However, it will be appreciated that virtualized projections may be based on data captured by physical capture devices and as such may not provide any additional data not captured by physical capture devices. For example, even though virtualized projections may be associated with customized views of a real-world scene in which physical capture devices are not located, virtualized projections may retrieve any new information not already available from the views in which physical capture devices are located. may not provide.
특정 예들에서, 실세계 장면(202)의 맞춤화된 뷰는 실세계 장면(202)을 나타내는 데이터를 캡처하기 위해 사용되는 특정한 캡처 디바이스와 맞추어 조정될 수 있다. 예를 들면, 실세계 장면(202)의 맞춤화된 뷰와 연관된(예로서, 정의하는) 부가적인 세트의 캡처 파라미터들은 오직 하나의 캡처 디바이스에 의해 캡처된 데이터를 요구하는(예로서, 캡처 디바이스에 의해 캡처된 데이터의 하위세트를 요구하는) 하나 이상의 캡처 파라미터들을 포함할 수 있다.In certain examples, the customized view of the real-
예를 들면, 부가적인 세트의 캡처 파라미터들은 실세계 장면(202)의 맞춤화된 뷰와 연관된 맞춤화된 시야를 나타내는 캡처 파라미터를 포함할 수 있으며, 여기서 맞춤화된 시야는 캡처 디바이스에 의해 캡처된 표면 데이터 프레임 시퀀스와 연관된 캡처된 시야보다 좁다. 예를 들면, 부가적인 세트의 캡처 디바이스 파라미터들은 특정한 물리적 캡처 디바이스에 의해 캡처된 데이터의 크롭(crop)된(즉, 확대된) 부분을 요구할 수 있다.For example, the additional set of capture parameters may include a capture parameter representing a customized field of view associated with a customized view of the
단지 하나의 캡처 디바이스에 의해 캡처된 데이터를 요구하는 캡처 파라미터의 또 다른 예로서, 부가적인 세트의 캡처 파라미터들은 실세계 장면(202)의 맞춤화된 뷰와 연관된 맞춤화된 이미지 품질을 나타내는 캡처 파라미터를 포함할 수 있고, 여기서 맞춤화된 이미지 품질은 캡처 디바이스에 의해 캡처된 표면 데이터 프레임 시퀀스와 연관된 캡처된 이미지 품질보다 낮다. 예를 들면, 부가적인 세트의 캡처 파라미터들은 특정한 물리적 캡처 디바이스에 의해 캡처된 데이터의 저해상도 버전을 요구할 수 있다.As another example of a capture parameter requiring data captured by only one capture device, the additional set of capture parameters may include capture parameters representing a customized image quality associated with a customized view of the
다른 예들에서, 실세계 장면(202)의 맞춤화된 뷰는 실세계 장면(202)에 대해 상이한 위치들에 배치된 복수의 캡처 디바이스들(즉, 뷰들(206)과 연관된 캡처 디바이스들)에 의해 캡처된 실세계 장면(202)의 상이한 뷰들과 맞추어 조정되지 않을 수 있다. 이와 같이, 실세계 장면(202)의 맞춤화된 뷰의 가상화된 투영을 위한 컬러 및 깊이 프레임들의 렌더링은 적어도 2개의 표면 데이터 프레임 시퀀스들(400)에 기초하여 컬러 및 깊이 프레임들을 렌더링하는 것을 포함할 수 있다. 가상화된 투영들이 단일 캡처 디바이스들로부터의 데이터에 기초하는 상기 설명된 예들과 같이, 이들 예들에서 부가적인 세트의 캡처 파라미터들은 캡처된 표면 데이터 프레임 시퀀스들에 대해 좁은 시야들, 낮아진 이미지 품질들, 등을 요구하는 캡처 파라미터들을 포함할 수 있다. 그러나, 가상화된 투영들이 다수의 캡처 디바이스들로부터의 데이터에 기초하는 예들에서 부가적인 세트의 캡처 파라미터들은, 데이터가 물리적 캡처 디바이스들에 의해 캡처되는 임의의 실제 위치들, 방향들, 등과 별개일 수 있는 맞춤화된 위치들, 맞춤화된 방향들, 등을 또한 요구할 수 있다.In other examples, the customized view of the real-
예시하기 위해, 도 5는 (즉, 구성(200)과 관련하여 상기 도시되고 설명된 모든 동일한 요소들을 포함하는) 구성(200)에 기초하는 일 예시적인 구성(500)을 도시하지만, 여기서 실세계 장면(202)을 나타내는 데이터는 실세계 장면(202)의 맞춤화된 뷰(502)를 위해 부가적으로 생성된다. 구체적으로, 구성(500)에서 도시된 바와 같이, 맞춤화된 뷰(502)는 실세계 객체(204) 근처에 있고 실세계 객체(204)에 대향하는 방향 및 시야를 갖는 실세계 장면(202) 내에 위치될 수 있다. 상기 설명된 바와 같이, 특정 맞춤화된 뷰들이 뷰(206)들 중 하나와 맞추어 조정될 수 있을지라도(예로서, 뷰들(206) 중 하나와 동일한 위치에 위치되어, 뷰들(206) 중 하나와 동일한 방향 및/또는 시야를 제공함, 등), 구성(500)에서의 맞춤화된 뷰(502)는 뷰들(206)과 맞추어 조정되지 않도록 도시된다. 본 명세서에 사용된 바와 같이, 뷰들이 뷰들과 연관된 각각의 위치들, 뷰들과 연관된 각각의 방향들, 및/또는 뷰들과 연관된 각각의 시야들에 대해 서로와 별개이면, 뷰는 또 다른 뷰와 "맞추어 조정되지 않는다." 예를 들면, 맞춤화된 뷰(502) 및 뷰들(206)의 경우에, 맞춤화된 뷰(502)는 뷰들(206) 모두와 맞추어 조정되지 않는데, 이는 맞춤화된 뷰(502)가 뷰들(206) 중 임의의 뷰와 별개인 위치(즉, 실세계 장면(202)의 내부 위치)에 배치되고, 뷰들(206) 중 임의의 뷰와 별개인 방향(즉, 뷰들(206-1 및 206-2)의 각각의 방향들 사이의 방향)을 가지고, 뷰들(206) 중 임의의 뷰와 별개인 시야(즉, 실세계 객체(204)에 대한 더 근접한 관점을 제공하는 시야)를 갖기 때문이다.To illustrate, FIG. 5 depicts an
이와 같이, 맞춤화된 뷰(502)를 정의하는 부가적인 세트의 캡처 파라미터들의 식별에 기초하여 그리고 뷰들(206)과 연관된 캡처 디바이스들에 의해 캡처된 복수의 표면 데이터 프레임 시퀀스들(400)에 기초하여(예로서, 예를 들면 표면 데이터 프레임 시퀀스들(400-1 및 400-2)에 기초하여), 시스템(100)은 실세계 장면(202)의 맞춤화된 뷰(502)의 가상화된 투영을 위해 컬러 및 깊이 프레임들을 렌더링할 수 있고, 이들 컬러 및 깊이 프레임들을 포함하는 가상화된 표면 데이터 프레임 시퀀스를 제공할 수 있다.As such, based on the identification of an additional set of capture parameters that define the customized
예로서, 도 6은 맞춤화된 뷰(502)의 가상화된 투영을 위해 시스템(100)에 의해 생성 및 제공될 수 있는 일 예시적인 가상화된 표면 데이터 프레임 시퀀스(600)를 보여준다. 구체적으로, 가상화된 표면 데이터 프레임 시퀀스(600)는 맞춤화된 뷰(502)의 가상화된 투영(602)을 위해 렌더링된 컬러 및 깊이 프레임들을 포함하도록 생성될 수 있다. 가상화된 투영(602)에 의해 도시된 바와 같이, 가상화된 표면 데이터 프레임 시퀀스(600) 내에 포함된 컬러 및 깊이 프레임들은 표면 데이터 프레임 시퀀스들(400) 내에 포함된 컬러 및 깊이 프레임들 중 임의의 것과 상이한 위치, 상이한 방향, 및 상이한 시야와 연관될 수 있다(예로서, 그들로부터 캡처된 것으로 보일 수 있다).As an example, FIG. 6 shows an exemplary virtualized surface
구체적으로, 도시된 바와 같이, 가상화된 투영(602)은 실세계 객체(204) 상의 특정한 방향으로부터의 근접(close-up)을 나타낸다. 이것은 가상화된 투영(602)에 의해 제공된 위치, 방향, 및/또는 시야로부터 실세계 객체(204)를 나타내는 가상 현실 미디어 콘텐트를 제공할 수 있는 다운스트림 시스템들 및 디바이스들에 대한 다양한 장점들을 제공할 수 있다. 예를 들면, 깊이 데이터가 제한된 수의 비트들(예로서, 컬러 데이터를 프로세싱하도록 구성된 상용 비디오 코덱에 대해 8 내지 12 비트들)로 동작하는 프로세싱 리소스들(예로서, 비디오 코덱 솔루션들)을 사용하여 프로세싱되는 구현들에서, 상대적으로 큰 영역들을 나타내는 깊이 데이터의 바람직하지 않은 "계층화(layering)"와 같은 깊이 양자화 문제들은 더 로컬화된 영역들을 나타내는 깊이 데이터를 사용함으로써 완화될 수 있다. 로컬화된 영역들은 넓은(예로서, 덜 로컬화된) 영역들보다 사용가능한 비트들에 의해 나타내진 더 짧은 깊이들을 포함할 수 있고, 그에 의해 사용가능한 제한된 수의 비트들이 계층화 효과들, 등을 감소 또는 제거하기 위해 높은 정밀도로 깊이들을 나타내는 것을 허용한다. 이와 같이, 객체들의 표면들이 나타내지는 비트 깊이(예로서, 시점으로부터 상이한 거리들에서 깊이들을 나타내기 위해 사용된 비트들의 수)는 가상화된 투영(602)의 시점으로부터의 깊이 해상도 및/또는 높은 레벨의 깊이 정밀도를 제공하기 위해 가상화된 투영(602)에 대해 최적화될 수 있다.Specifically, as shown, the
특정한 맞춤화된 뷰(즉, 맞춤화된 뷰(502))와 연관된 특정한 부가적인 세트의 캡처 파라미터들이 도 5 및 도 6에 대해 상세하게 설명되고 도시될지라도, 다수의 맞춤화된 뷰들과 연관된 다수의 세트들의 캡처 파라미터들(예로서, 실세계 장면(202)을 나타내는 데이터를 캡처하기 위해 사용된 물리적 캡처 디바이스들의 수보다 상당히 큰 수)이 가상 현실 미디어 콘텐트 내에 가능하게 포함시키기 위해 다수의 가상화된 표면 데이터 프레임 시퀀스들의 생성 및 제공을 허용하도록 특정 구현들에서 식별될 수 있음이 이해될 것이다. 상기 설명된 바와 같이, 이 다수의 가상화된 표면 데이터 프레임 시퀀스들은 많은 양의 중복 또는 상대적으로 관련이 없는 데이터로 임의의 미디어 플레이어 디바이스를 압도하지 않고 동일한 실세계 장면에 관한 상이한 상세들을 상이한 미디어 플레이어 디바이스들에 제공하기 위해 가상 현실 미디어 콘텐트의 생성 및 분배에 있어서 증가된 유연성을 허용할 수 있다.Although a particular additional set of capture parameters associated with a particular customized view (ie, customized view 502 ) is described and illustrated in detail with respect to FIGS. A sequence of multiple virtualized surface data frames for possible inclusion within virtual reality media content of which capture parameters (eg, a number significantly greater than the number of physical capture devices used to capture data representative of the real world scene 202) It will be appreciated that may be identified in specific implementations to allow the creation and provision of . As described above, these multiple sequences of virtualized surface data frames transmit different details about the same real-world scene to different media player devices without overwhelming any media player device with large amounts of redundant or relatively unrelated data. may allow increased flexibility in the creation and distribution of virtual reality media content to provide
하나 이상의 부가적인 세트들의 캡처 파라미터들(즉, 뷰들(206)과 연관된 캡처 파라미터들의 세트들 이외의 캡처 파라미터들의 세트들)은 특정한 구현을 제공할 수 있는 임의의 방식으로 식별될 수 있다. 예를 들면, 특정한 구현들에서, 맞춤화된 뷰(502)와 연관된 캡처 파라미터들의 세트와 같은 부가적인 세트의 캡처 파라미터들은 실세계 장면의 하나 이상의 기하학적 속성들에 대해 실세계 장면(202)을 분석함으로써, 뷰들(206)과 연관된 캡처 파라미터들의 세트들과 별개인 복수의 부가적인 세트들의 캡처 파라미터들을 생성함으로써(예로서, 실세계 장면의 분석에 기초하여), 그리고 복수의 부가적인 세트들의 캡처 파라미터들로부터 부가적인 세트의 캡처 파라미터들을 식별함으로써 식별될 수 있다. 구체적으로, 예를 들면, 시스템(100)은 실세계 장면(202)의 형상과 관련된 속성들, 실세계 장면(202)의 다양한 부분들 또는 실세계 장면(202)이 분할될 수 있는 방식들, 실세계 장면(202) 내의 특정한 객체의 위치들 및/또는 궤적들, 등과 같은 실세계 장면(202)의 기하학적 속성들을 결정할 수 있다. 이들 및/또는 상이한 속성들에 기초하여, 시스템(100)은 다양한 맞춤화된 뷰들(예로서, 맞춤화된 뷰(502)를 포함함)이 가상 현실 미디어 콘텐트를 생성하기 위해 관련될 수 있다고 결정할 수 있고, 결과적으로 이들 관련된 맞춤화된 뷰들의 각각에 대해 각각의 세트들의 캡처 파라미터들을 생성할 수 있다.One or more additional sets of capture parameters (ie, sets of capture parameters other than the sets of capture parameters associated with views 206 ) may be identified in any manner that may provide a particular implementation. For example, in certain implementations, an additional set of capture parameters, such as the set of capture parameters associated with a customized
일단 복수의 캡처된 표면 데이터 프레임 시퀀스들이 물리적 캡처 디바이스들과 연관된 실세계 장면의 뷰들에 대해 수신되었고 하나 이상의 가상화된 표면 데이터 프레임 시퀀스들이 실세계 장면의 맞춤화된 뷰들의 가상화된 투영들을 위해 생성되었으면, 시스템(100)은 가상 현실 미디어 콘텐트 내에 포함시키기 위해 캡처되고/되거나 가상화된 표면 데이터 프레임 시퀀스들 중 하나 이상을 제공할 수 있다. 예를 들면, 하기에 더 상세히 설명될 바와 같이, 시스템(100)은 캡처되고/되거나 가상화된 표면 데이터 프레임 시퀀스들의 데이터를 서버 측 시스템들(예로서, 가상 현실 미디어 제공자 파이프라인의 다운스트림 시스템들)에 및/또는 가상 현실 미디어 콘텐트(예로서, 표면 데이터 프레임 시퀀스들 내에 포함된 데이터에 기초한 가상 현실 미디어 콘텐트)를 경험하는 사용자들과 연관된 미디어 플레이어 디바이스들과 같은 클라이언트 측 시스템들에 제공할 수 있다.Once a plurality of captured surface data frame sequences have been received for views of a real-world scene associated with physical capture devices and one or more virtualized surface data frame sequences have been created for virtualized projections of customized views of a real-world scene, the system ( 100) may provide one or more of the captured and/or virtualized surface data frame sequences for inclusion within virtual reality media content. For example, as described in more detail below,
시스템(100)은 표면 데이터 프레임 시퀀스들 내에 포함된 데이터(예로서, 컬러 및 깊이 프레임들 뿐만 아니라, 오디오 데이터, 메타데이터, 등과 같은 다른 유형들의 데이터)를 특정한 구현을 제공할 수 있는 임의의 방식으로 그리고 임의의 다른 시스템 또는 디바이스에 제공할 수 있다. 예를 들면, 특정한 구현들에서, 시스템(100)은 컬러 및 데이터 프레임들(뿐만 아니라, 오디오 및 메타데이터, 등)을 비디오 데이터 스트림들(예로서, H.264, H.265, 등과 같은 표준화된 포맷들로 압축된 2D 비디오 스트림들)을 생성하기 위해 데이터를 인코딩하는 인코딩 시스템에 제공할 수 있다. 따라서, 예를 들면, 특정한 표면 데이터 프레임 시퀀스에 포함된 데이터는 컬러 비디오 데이터 스트림, 깊이 비디오 데이터 스트림, 등과 같은 하나 이상의 비디오 데이터 스트림들에 포함될 수 있다. 표면 데이터 프레임 시퀀스 내에 포함된 다른 데이터(예로서, 오디오 데이터, 메타데이터, 등)가 또한, 컬러 비디오 데이터 스트림 및/또는 깊이 비디오 데이터 스트림 내에 포함될 수 있거나 상이한 데이터 스트림 내에 포함될 수 있다.
표면 데이터 프레임 시퀀스 데이터가 제공될 시스템 및/또는 표면 데이터 프레임 시퀀스 데이터가 하나 이상의 비디오 데이터 스트림들 등으로 인코딩되었는지 여부에 관계 없이, 표면 데이터 프레임 시퀀스 데이터는 네트워크를 통한 전송을 위해 패키징되고/되거나 멀티플렉싱될 수 있다. 이 데이터 패키징은 임의의 적합한 방식으로 및/또는 특정한 구현을 제공할 수 있는 임의의 적합한 데이터 구조들을 사용하여 수행될 수 있다. 하나의 예로서, 각각의 표면 데이터 프레임 시퀀스는 그 자신의 고유한 전송 스트림으로 패키징될 수 있다. 구체적으로, 예를 들면, 가상화된 표면 데이터 프레임 시퀀스(600)는 실세계 장면(202)의 맞춤화된 뷰(502)의 가상화된 투영(602)을 위한 렌더링된 컬러 및 깊이 프레임들이 가상화된 표면 데이터 프레임 시퀀스(600) 이외의 부가적인 표면 데이터 프레임 시퀀스들(예로서, 부가적인 캡처되거나 가상화된 표면 데이터 프레임 시퀀스들)을 나타내는 컬러 및 깊이 프레임들을 포함하지 않는 전송 스트림 내에 포함되도록 패키징될 수 있다.Surface Data Frame Sequence Data is packaged and/or multiplexed for transmission over a network, regardless of the system from which it is to be provided and/or whether the Surface Data Frame Sequence Data is encoded into one or more video data streams, etc. It can be. This data packaging may be performed in any suitable manner and/or using any suitable data structures capable of providing a particular implementation. As one example, each surface data frame sequence can be packaged into its own unique transport stream. Specifically, for example, the sequence of virtualized surface data frames 600 is a rendered color and depth frames for a
또 다른 예로서, 다수의 표면 데이터 프레임 시퀀스들은 공유된 전송 스트림으로 함께 패키징(예로서, 다중화)될 수 있다. 구체적으로, 예를 들면, 가상화된 표면 데이터 프레임 시퀀스(600)는 실세계 장면(202)의 맞춤화된 뷰(502)의 가상화된 투영(602)을 위한 렌더링된 컬러 및 깊이 프레임들이 가상화된 표면 데이터 프레임 시퀀스(600) 이외의 적어도 하나의 부가적인 표면 데이터 프레임 시퀀스(예로서, 적어도 하나의 부가적인 캡처되거나 가상화된 표면 데이터 프레임 시퀀스)를 나타내는 컬러 및 깊이 프레임들을 더 포함하는 전송 스트림 내에 포함되도록 패키징될 수 있다.As another example, multiple surface data frame sequences can be packaged (eg, multiplexed) together into a shared transport stream. Specifically, for example, the sequence of virtualized surface data frames 600 is a rendered color and depth frames for a
예시하기 위해, 도 7은 일 예시적인 복수의 표면 데이터 프레임 시퀀스들을 포함하는 일 예시적인 전송 스트림(700)의 그래픽 표현을 보여준다. 구체적으로, 전송 스트림(700)은 다양한 캡처된 표면 데이터 프레임 시퀀스들(400)(예로서, 도 4a 및 도 4b에 도시된 표면 데이터 프레임 시퀀스(400-1) 및 뷰들(206-2 내지 206-8)과 각각 연관된 캡처 디바이스들에 의해 유사하게 캡처되는 표면 데이터 프레임 시퀀스들(400-2 내지 400-8)) 뿐만 아니라, 다양한 가상화된 표면 데이터 프레임 시퀀스들(예로서, 도 6에 도시된 가상화된 표면 데이터 프레임 시퀀스(600) 및 다른 가상화된 표면 데이터 프레임 시퀀스들(702-1 내지 702-N))을 포함할 수 있다.To illustrate, FIG. 7 shows a graphical representation of an
본 명세서에서 사용된 바와 같이, "전송 스트림들"은 하나의 디바이스 또는 시스템으로부터 또 다른 디바이스 또는 시스템으로의 데이터의 송신(즉, 전송)을 가능하게 하고, 데이터를 렌더링 또는 그렇지 않으면, 프로세싱하거나 분석하는 목적들을 위해 및/또는 특정한 구현을 제공할 수 있는 다른 목적들을 위해 데이터를 패키징하기 위해 사용된 데이터 구조들을 언급할 수 있다. 일부 예들에서, 전송 스트림은 하나 이상의 데이터 스트림들(예로서, 하나 이상의 비디오 데이터 스트림들) 및/또는 메타데이터 등과 같은 다른 데이터를 통합할 수 있다. 전송 스트림들은 특정한 구현을 제공할 수 있는 임의의 유형의 전송 스트림으로서 구현될 수 있다. 예를 들면, 본 명세서에서 설명된 특정 전송 스트림들(예로서, 전송 스트림(700))은 MPEG 전송 스트림, MPEG-2 전송 스트림, 또는 표면 데이터 프레임 시퀀스들, 비디오 데이터 스트림들, 등과 같은 데이터의 전송을 가능하게 하는 또 다른 적합한 데이터 구조로서 구현될 수 있다. 전송 스트림은 특정한 구현을 제공할 수 있는 임의의 적합한 데이터 포맷, 컨테이너 포맷, 및/또는 전송 프로토콜에 따라 구성될 수 있다.As used herein, “transport streams” enable transmission (i.e., transfer) of data from one device or system to another, render or otherwise process or analyze the data. data structures used to package data for different purposes that may provide a specific implementation. In some examples, a transport stream may incorporate one or more data streams (eg, one or more video data streams) and/or other data, such as metadata. Transport streams may be implemented as any type of transport stream capable of providing a particular implementation. For example, certain transport streams (e.g., transport stream 700) described herein may be an MPEG transport stream, an MPEG-2 transport stream, or a stream of data, such as surface data frame sequences, video data streams, and the like. It can be implemented as another suitable data structure to enable transmission. A transport stream may be structured according to any suitable data format, container format, and/or transport protocol that may provide a particular implementation.
전송 스트림(700)이 캡처되고 가상화된 표면 데이터 프레임 시퀀스들 둘 모두를 포함하도록 도시될지라도, 특정한 구현들에서, 전송 스트림(700)이 단지 캡처된 표면 데이터 프레임 시퀀스들 또는 단지 가상화된 표면 데이터 프레임 시퀀스들을 포함할 수 있음이 이해될 것이다. 부가적으로, 전송 스트림(700)은 특정한 구현을 제공할 수 있는 임의의 적합한 수의 표면 데이터 프레임 시퀀스들 및 표면 데이터 프레임 시퀀스들의 임의의 조합을 포함할 수 있다. 예를 들면, 상기 설명된 바와 같이, 특정 예들에서, 전송 스트림(700)은 단일 표면 데이터 프레임 시퀀스(예로서, 가상화된 표면 데이터 프레임 시퀀스(600))를 포함할 수 있고 어쨌든 전송되면, 다른 표면 데이터 프레임 시퀀스들은 다른 전송 스트림들에 의해 전송될 수 있다. 도 7이 상기 설명되고 도시된 표면 데이터 프레임 시퀀스들(예로서, 표면 데이터 프레임 시퀀스(400 및 600))을 포함하는 전송 스트림(700)을 도시할지라도, 이들 표면 데이터 프레임 시퀀스들은 인코딩된 비디오 데이터 스트림들(명시적으로 도시되지 않음)과 같은 데이터 구조들 내에 포함될 수 있고, 이와 같이 시스템(100)에 의해 수신되고/되거나 생성된 것으로서 상기 설명된 것과 상이한 데이터의 버전들(예로서, 비디오 데이터 스트림들, 등으로 인코딩되고/되거나 압축되는 데이터의 버전들)을 언급할 수 있음이 또한 이해될 것이다.Although
도 8은 전송 스트림(700)의 데이터 구조 표현(800)을 도시한다. 도시된 바와 같이, 표현(800)은 메타데이터(802)의 섹션, 오디오 데이터(804)의 섹션, 및 비디오 데이터(806)의 섹션과 같은 상이한 유형들의 데이터에 대한 섹션들을 포함한다. 표현(800)에 도시된 섹션들이 단지 개념적일 수 있고 표현(800)에 도시된 데이터가 특정한 구현을 제공할 수 있는 임의의 방식으로 전송 스트림(700) 내에서 다중화, 구성, 배열, 송신, 등이 될 수 있다는 것이 이해될 것이다.8 shows a
도시된 바와 같이, 메타데이터(802)는 전송 스트림(700) 내에 포함된 각각의 표면 데이터 프레임 시퀀스와 상관되는 다양한 세트들의 캡처 파라미터들(즉, "캡처 파라미터 세트 1" 내지 "캡처 파라미터 세트 M")를 포함한다. 예를 들면, 메타데이터(802) 내에 포함된 캡처 파라미터들의 세트는 도 7에 도시된 캡처되고 가상화된 표면 데이터 프레임 시퀀스들(즉, 표면 데이터 프레임 시퀀스들(400-1 내지 400-8, 600, 및 702-1 내지 702-N))의 각각에 대한 각각의 세트들의 캡처 파라미터들을 포함할 수 있다. 메타데이터(802)는 특정한 구현을 제공할 수 있는 표면 데이터 프레임 시퀀스들(예로서, 또는 표면 데이터 프레임 시퀀스들이 인코딩되는 비디오 데이터 스트림들)을 설명하는 임의의 다른 메타데이터를 더 포함할 수 있다.As shown,
유사하게, 오디오 데이터(804)는 전송 스트림(700) 내에 포함된 각각의 표면 데이터 프레임 시퀀스와 연관된 오디오 소스 데이터를 포함할 수 있다. 예를 들면, "오디오 소스 1" 내지 "오디오 소스 M"은 표면 데이터 프레임 시퀀스들(400-1 내지 400-8, 600, 및 702-1 내지 702-N)과 각각 연관될 수 있다. 다른 예들에서, 오디오 소스들이 표면 데이터 프레임 시퀀스들과 연관되지 않으면, 존재하는 표면 데이터 프레임 시퀀스들(예로서, 표면 데이터 프레임 시퀀스들의 수와 관련되지 않은 오디오 소스들의 수)보다 더 많거나 적은 오디오 소스들이 존재할 수 있다.Similarly,
도 8에서 또한 도시된 바와 같이. 비디오 데이터(806)는 도 7에서 전송 스트림(700) 내에 포함되도록 도시된 표면 데이터 프레임 시퀀스들의 각각과 연관된 컬러 비디오 데이터 스트림 및 깊이 비디오 데이터 스트림을 포함할 수 있다. 예를 들면, 표면 데이터 프레임 시퀀스들(400-1 내지 400-8, 600, 702-1 내지 702-N)의 각각이 비디오 데이터(806) 내의 컬러 및 깊이 비디오 데이터 스트림 둘 모두에 대응하도록 "컬러 비디오 데이터 스트림 1" 및 "깊이 비디오 데이터 스트림 1"은 표면 데이터 프레임 시퀀스(400-1) 내에 포함된 컬러 및 깊이 프레임들을 나타낼 수 있고, "컬러 비디오 데이터 스트림 2" 및 "깊이 비디오 데이터 스트림 2"은 표면 데이터 프레임 시퀀스(400-2) 내에 포함된 컬러 및 깊이 프레임들을 나타낼 수 있는, 등이다.As also shown in FIG. 8 .
상기 언급된 바와 같이, 특정 구현들에서, 상이한 시간에 상이한 미디어 플레이어 디바이스들(즉, 상이한 가상 현실 경험들을 가지는 상이한 사용자들과 연관됨)에 대해 관련된 상이한 상세들로 맞춤화될 수 있는 상이한 버전들의 가상 현실 미디어 콘텐트를 생성하는데 있어서 유연성을 허용하기 위해 상대적으로 다수의 가상화된 표면 데이터 프레임 시퀀스들을 제공하는 것이 유용할 수 있다. 예를 들면, 하나의 구현에서, 8개의 물리적 캡처 디바이스들은 8개의 고해상도 캡처된 표면 데이터 프레임 시퀀스들을 생성할 수 있고, 시스템(100)은 8개의 캡처된 표면 데이터 프레임 시퀀스들에 기초하여, 수백 개의 맞춤화된 뷰들의 수백 개의 가상화된 투영들을 위해 수백 개의 가상화된 표면 데이터 프레임 시퀀스들을 생성할 수 있다.As mentioned above, in certain implementations, different versions of virtual reality may be tailored with different details relevant for different media player devices at different times (ie, associated with different users having different virtual reality experiences). It may be useful to provide a relatively large number of virtualized surface data frame sequences to allow flexibility in creating real media content. For example, in one implementation, eight physical capture devices can generate eight high-resolution captured surface data frame sequences, and
이러한 다수의 가상화된 표면 데이터 프레임 시퀀스들을 제공하는 것은 가상 현실 미디어 콘텐트를 효율적으로 생성 및 분배하는데 상당한 유연성을 허용할 수 있지만, 데이터의 그렇게 많은 개별적인 스트림들(예로서, 비디오 데이터 스트림들, 등)을 처리하도록 구비될 수 없는 사용가능한 하드웨어 및 소프트웨어 리소스들로 처리하는 것이 어려울 수 있다. 결과적으로, 복수의 컬러 및/또는 깊이 프레임 시퀀스들을 단일 표면 데이터 프레임 시퀀스로 패키징하는 것이 바람직할 수 있다. 예를 들면, 가상화된 표면 데이터 프레임 시퀀스(600)는, 실세계 장면(202)의 맞춤화된 뷰(502)의 가상화된 투영(602)을 위한 렌더링된 컬러 및 깊이 프레임들의 각각이 비디오 데이터 스트림의 각각의 프레임에서 복수의 타일들을 나타내는 타일 맵을 구현하는 비디오 데이터 스트림에서 타일들로 나타내지도록 패키징될 수 있다. 예를 들면, 타일 맵핑 기술(예로서, 텍스처 아틀라스 기술, 스프라이트 시트 기술, 등)은 이러한 프레임들의 시퀀스(예로서, 또는 이들 프레임들의 시퀀스를 나타내는 비디오 데이터 스트림)가 본질적으로, 단일 프레임 시퀀스로서 간주될 수 있지만 다수의 프레임 시퀀스들과 연관된 데이터(예로서, 맞춤화된 뷰들의 가상화된 투영들을 포함하는 다수의 뷰들을 나타냄)를 포함할 수 있도록 다수의 컬러 및/또는 깊이 프레임들을 단일 프레임 상에 함께 패킹하기 위해 사용될 수 있다.Providing such multiple virtualized surface data frame sequences can allow for great flexibility in efficiently creating and distributing virtual reality media content, but not so many individual streams of data (eg, video data streams, etc.) It can be difficult to process with available hardware and software resources that may not be equipped to handle it. Consequently, it may be desirable to package multiple color and/or depth frame sequences into a single surface data frame sequence. For example, a sequence of virtualized surface data frames 600 may include each of the rendered color and depth frames for a
예시하기 위해, 도 9는 타일 맵을 구현하는 일 예시적인 타일링(tiling)된 프레임 시퀀스(902)를 포함하는 일 예시적인 전송 스트림(900)의 그래픽 표현을 보여준다. 타일링된 프레임 시퀀스(902)가 본 명세서에 도시된 표면 데이터 프레임 시퀀스들(예로서, 도 4b에서의 표면 데이터 프레임 시퀀스들(400-1), 도 6에서의 가상화된 표면 데이터 프레임 시퀀스(600) 등)과 유사한 블록으로서 도시되지만, 타일링된 프레임 시퀀스(902)가 본 명세서의 다른 표면 데이터 프레임 시퀀스들 중 일부와 상이한 데이터를 나타낼 수 있음이 이해될 것이다. 구체적으로, 예를 들면, 타일링된 프레임 시퀀스(902)는 컬러 프레임 시퀀스(402) 및 깊이 프레임 시퀀스(404)(도 4a에 도시됨)와 같은 다수의 프레임 시퀀스들을 나타내지 않을 수 있지만, 오히려 각각이 타일링된 프레임 시퀀스(902)의 전면에 도시된 바와 같은 복수의 타일들(904)(즉, 타일들(904-1-C 내지 904-9-C))을 포함하는 프레임들의 단일 시퀀스를 포함할 수 있다.To illustrate, FIG. 9 shows a graphical representation of an
타일링된 프레임 시퀀스(902)의 각각의 프레임 상에 포함된 타일들은 특정한 구현을 제공할 수 있는 임의의 캡처되거나 가상화된 표면 데이터 프레임 시퀀스와 연관된 임의의 컬러 또는 깊이 프레임들을 포함할 수 있다. 예를 들면, 도 9에 도시된 바와 같이, 타일링된 프레임 시퀀스(902)의 각각의 프레임은 뷰(206-1)로부터 캡처된 컬러('C') 프레임에 대응하는 타일(904-1-C), 뷰(206-2)로부터 캡처된 컬러 프레임에 대응하는 타일(904-2-C), 등(최대 뷰(208-8)로부터 캡처된 컬러 프레임에 대응하는 타일(904-8-C)까지)을 포함할 수 있다. 더 도시된 바와 같이, 타일링된 프레임 시퀀스(902)의 각각의 프레임은 맞춤화된 뷰(502)의 가상화된 투영(602)을 위해 생성된 컬러 프레임과 연관된 타일(904-9-C)을 포함할 수 있다. 도 9가 단지 9개의 타일만을 명시적으로 도시하지만, 부가적인 타일들이 또한, 타일링된 프레임 시퀀스(902)의 각각의 프레임 상에 패킹될 수 있음이 이해될 것이다. 예를 들면, 다른 가상화된 투영들, 깊이 프레임들(예로서, 뷰들(206)로부터 캡처되고/되거나 가상화된 투영들을 위해 생성된 깊이 프레임들), 등에 대응하는 타일들은 특정한 구현을 제공할 수 있는 타일 맵 내에 또한 포함될 수 있다. 부가적으로, 도 9에서의 전송 스트림(900)이 타일 맵을 사용하는 하나의 타일링된 프레임 시퀀스를 단지 도시하지만, 전송 스트림(900)이 타일링된 프레임 시퀀스들(예로서, 타일링된 프레임 시퀀스(902)와 같은), 표면 데이터 프레임 시퀀스들(예로서, 프레임 시퀀스들(400, 600, 또는 702)과 같은), 또는 특정한 구현을 제공할 수 있는 다른 데이터를 포함하는 다수의 프레임 시퀀스들을 패키징하기 위해 사용될 수 있음이 이해될 것이다. 일부 예들에서, 타일링된 프레임 시퀀스(902)는 전송 스트림(900)과 같은 전송 스트림에 포함되지 않고 송신될 수 있다.The tiles included on each frame of the
도 10은 전송 스트림(900)의 데이터 구조 표현(1000)을 도시한다. 도시된 바와 같이, 표현(800)과 같이, 표현(1000)은 메타데이터(1002)의 섹션, 오디오 데이터(1004)의 섹션, 및 비디오 데이터(106)의 섹션과 같은 다른 유형들의 데이터에 대한 섹션들을 포함한다. 또한, 표현(800)과 같이, 표현(1000)에 도시된 섹션들은 단지 개념적인 것으로 이해될 것이고, 이는 표현(1000)에 도시된 데이터가 특정한 구현을 제공할 수 있는 임의의 방식으로 전송 스트림(900) 내에서 다중화, 구성, 배열, 송신 등이 될 수 있기 때문이다.10 shows a
도시된 바와 같이, 메타데이터(1002)는 각각의 타일(예로서, 타일들(904-1-C 내지 904-9-C) 및/또는 도 9에 명시적으로 도시되지 않은 다른 타일들)에 대한 2개의 상이한 유형들의 메타데이터를 포함한다. 구체적으로, 각각의 타일("타일 1" 내지 "타일 M")에 대해, 메타데이터(1002)는 그 특정한 타일과 연관된 데이터에 지정되는 각각의 프레임의 섹션을 나타내는 타일 좌표들(예로서, "타일 좌표 1" 내지 "타일 좌표 M")를 포함한다. 예를 들면, 타일 1에 대한 타일 좌표는 타일(904-1-C)이 도 9에 도시되는 프레임들의 좌측 상단 코너를 나타내는 좌표, 등을 포함할 수 있다. 메타데이터(1002)는 또한, 각각의 타일 1 내지 타일 M에 대해 타일과 상관되는 각각의 세트들의 캡처 파라미터들(즉, "캡처 파라미터 세트 1" 내지 "캡처 파라미터 세트 M")를 포함한다. 예를 들면, 메타데이터(802) 내에 포함된 캡처 파라미터들의 세트는 도 9에 도시된 타일들(즉, 타일들(904-1-C 내지 904-9-C))의 각각에 대한 각각의 세트들의 캡처 파라미터들을 포함할 수 있다. 메타데이터(1002)는 특정한 구현을 제공할 수 있는 타일링된 프레임 시퀀스(902)(예로서, 또는 타일링된 프레임 시퀀스(902)가 인코딩되는 비디오 데이터 스트림)의 타일들을 설명하는 임의의 다른 메타데이터를 더 포함할 수 있다.As shown,
표현(800)에서의 오디오 데이터(804)와 유사하게, 오디오 데이터(1004)는 타일링된 프레임 시퀀스(902) 내에(즉, 전송 스트림(900) 내에) 포함된 각각의 타일과 연관된 오디오 소스 데이터를 포함할 수 있다. 예를 들면, "오디오 소스 1" 내지 "오디오 소스 M"는 각각 타일들(904-1-C 내지 904-9-C) 및/또는 도 9에 명시적으로 도시되지 않은 다른 타일들과 연관될 수 있다. 다른 예들에서, 타일들이 오디오 소스들과 구체적으로 연관되지 않으면 더 많거나 적은 오디오 소스들이 존재할 수 있다.Similar to
도 8의 표현(800)과 대조적으로, 각각의 표면 데이터 프레임 시퀀스와 연관된 다수의 컬러 및 깊이 비디오 스트림들이 포함된 경우, 표현(1000)은 비디오 데이터(1006)가 타일링된 프레임 시퀀스(902)와 연관된 단지 하나의 비디오 데이터 스트림을 포함한다는 것을 보여준다. 이것은 도 9에 의해 도시된 바와 같이, 타일링된 프레임 시퀀스(902)에 의해 나타내진 각각의 컬러 및/또는 깊이 프레임과 연관된 이미지들 모두가 타일링된 프레임 시퀀스(902)에서 각각의 프레임 상에 함께 패킹되기 때문이다. 특정 예들에서, 전송 스트림(900)은 컬러 데이터 타일들에 전용된 하나의 프레임 시퀀스(예로서, 타일링된 프레임 시퀀스(902)) 및 깊이 데이터 타일들에 전용된 제 2 프레임 시퀀스(도 9에 명시적으로 도시되지 않음)를 포함할 수 있다. 이와 같이, 이들 예들에서, 비디오 데이터(1006)는 컬러 비디오 데이터 스트림 및 깊이 비디오 데이터 스트림 둘 모두를 포함할 수 있다. 또 다른 예들에서, 상기 언급된 바와 같이, 전송 스트림(900)은 타일링된 프레임 시퀀스(902)와 함께 다른 프레임 시퀀스들, 비디오 스트림들, 등(예로서, 타일링되든 또는 타일링되지 않든)을 포함할 수 있다. 이와 같이, 이들 예들에서, 비디오 데이터(1006)는 도 10에 명시적으로 도시되지 않은 다른 비디오 데이터 스트림들을 포함할 수 있다.In contrast to
상기 언급된 바와 같이, 일부 예들에서, 본 명세서에서 설명된 시스템(100) 및/또는 다른 시스템들(예로서, 다른 서버 측 시스템들) 및 디바이스들은 사용자들에 의해 경험될 가상 현실 미디어 콘텐트를 생성하기 위해 사용될 수 있다. 예를 들면, 상기 설명된 동작들에 더하여, 가상 현실 미디어 콘텐트 제공자 시스템(예로서, 본 명세서에서 설명된 시스템(100) 및/또는 다른 디바이스들 및 시스템들이 포함될 수 있거나 이들 시스템들이 그렇지 않으면, 연관될 수 있는)은 또한, 시스템(100)이 제공하는 데이터에 기초하여 가상 현실 미디어 콘텐트를 생성 및 제공할 수 있다. 가상 현실 미디어 콘텐트는 실세계 장면(예로서, 실세계 장면(202))을 나타낼 수 있고 실세계 장면에 대해 임의의 가상 위치에 대응하는 동적으로 선택가능한 가상 시점으로부터 경험되기 위해 사용자에게 제공가능할 수 있다. 예를 들면, 동적으로 선택가능한 가상 시점은 사용자가 미디어 플레이어 디바이스를 사용하여 실세계 장면을 가상으로 경험하고 있는 동안 미디어 플레이어 디바이스의 사용자에 의해 선택(예로서, 결정, 배치, 등)될 수 있다. 일부 예들에서, 가상 시점은 시점들의 별개의 세트로부터 단지 선택되는 것과 반대로, 2차원 또는 3차원 연속체를 따라 임의의 위치에 있도록 선택될 수 있다. 게다가, 가상 현실 미디어 콘텐트는 사용자가 실세계 장면 내의 임의의 가상 위치에 대응하는 동적으로 선택가능한 가상 시점으로부터 실세계 장면을 가상으로 경험하는 것을 허용하기 위해 미디어 플레이어 디바이스에 제공될 수 있다(예로서, 시스템(100)을 포함하거나 그렇지 않으면, 상기 시스템과 연관되는 가상 현실 미디어 콘텐트 제공자 시스템에 의해). As noted above, in some examples,
예시하기 위해, 도 11은 시스템(100) 및 하나 이상의 부가적인 가상 현실 미디어 제공자 파이프라인 시스템들(1104)을 포함하는 일 예시적인 가상 현실 미디어 콘텐트 제공자 시스템(1102)("제공자 시스템(1102)")이 실세계 장면(202)을 경험하기 위해 사용자(1110)에 의해 사용된 일 예시적인 클라이언트 측 미디어 플레이어 디바이스(1108)("미디어 플레이어 디바이스(1108)")에 네트워크(1106)에 의해 제공되는 가상 현실 미디어 콘텐트를 생성하는 일 예시적인 구성(1100)을 보여준다.To illustrate, FIG. 11 depicts an exemplary virtual reality media content provider system 1102 (“
가상화된 표면 데이터 프레임 시퀀스(600)가 상기 설명된 바와 같이 생성되었고 전송 스트림(예로서, 전송 스트림(700), 전송 스트림(900), 등)으로 패키징된 후에, 제공자 시스템(1102)은 미디어 플레이어 디바이스(1108)가 렌더링하도록 구성될 수 있는 가상 현실 미디어 콘텐트를 형성하기 위해 하나 이상의 전송 스트림들을 또한, 인코딩, 패키징, 암호화, 또는 그렇지 않으면 프로세싱할 수 있다. 예를 들면, 가상 현실 미디어 콘텐트는 하기에 설명될 바와 같이, 실세계 장면(202)(예로서, 임의의 캡처 디바이스 뷰 또는 맞춤화된 뷰와 맞추어 조정되지 않지만 사용자(1110)가 관심을 가질 수 있는 가상 시점들을 포함함) 내의 임의의 가상 시점으로부터 실세계 장면(202)의 뷰를 제공하기 위해 미디어 플레이어 디바이스(1108)에 의해 렌더링될 수 있는 복수의 2D 비디오 데이터 스트림들(예로서, 각각의 뷰 및 가상화된 투영과 연관된 컬러 데이터 및 깊이 데이터와 연관된 2D 비디오 데이터 스트림들)을 포함하거나 나타낼 수 있다. 가상 현실 미디어 콘텐트는 이후, 네트워크(1106)에 의해 사용자(1110)와 연관된 미디어 플레이어 디바이스(1108)와 같은 하나 이상의 미디어 플레이어 디바이스들에 분배될 수 있다. 예를 들면, 제공자 시스템(1102)은 가상 현실 미디어 콘텐트를 미디어 플레이어 디바이스(1108)에 제공할 수 있어서 사용자(1110)가 미디어 플레이어 디바이스(1108)를 사용하여 실세계 장면(202)을 가상으로 경험할 수 있게 한다.After the virtualized surface
일부 예들에서, 사용자(1110)가 가상 현실 미디어 콘텐트(예로서, 실세계 장면(202)을 나타냄)에 의해 나타내진 몰입형 가상 실세계 내의 하나 이상의 별개의 위치들로 제한되는 것은 바람직하지 않을 수 있다. 이와 같이, 제공자 시스템(1102)은 실세계 장면(202)이 뷰들(206 및/또는 502)로부터 뿐만 아니라, 실세계 장면(202) 내의 임의의 가상 위치에 대응하는 임의의 동적으로 선택가능한 가상 시점으로부터 나타내지는 것을 허용하기 위해 실세계 장면(202)을 나타내는 가상 현실 미디어 콘텐트 내에 충분한 데이터를 제공할 수 있다. 예를 들면, 동적으로 선택가능한 가상 시점은 사용자(1110)가 미디어 플레이어 디바이스(1108)를 사용하여 실세계 장면(202)을 경험하고 있는 동안 사용자(1110)에 의해 선택될 수 있다.In some examples, it may be undesirable for
본 명세서에서 사용된 바와 같이, "임의의 가상 위치"는 실세계 장면의 표현과 연관된 공간의 임의의 가상 지점을 말할 수 있다. 예를 들면, 임의의 가상 위치들은 실세계 장면을 둘러싸는 고정된 위치들(예로서, 뷰들(206) 및/또는 맞춤화된 뷰(502)와 연관된 고정된 위치들)로 제한되지 않을 뿐만 아니라, 뷰들(206) 및 맞춤화된 뷰(502)와 연관된 위치들 사이의 모든 위치들을 포함한다. 일부 예들에서, 이러한 임의의 가상 위치들은 실세계 장면(202) 내에서 가장 바람직한 가상 시점들에 대응할 수 있다. 예를 들면, 실세계 장면(202)이 농구 경기를 포함하면, 사용자(1110)는 농구 코트 상의 임의의 가상 위치에 있는 게임을 경험하기 위해 가상 시점들을 동적으로 선택할 수 있다. 예를 들면, 사용자는 농구 코트 위 아래로 농구를 따라가고, 게임이 진행되는 도중에 농구 코트에 서 있는 것처럼 농구 게임을 경험하기 위해 자신의 가상 시점들을 동적으로 선택할 수 있다.As used herein, “any virtual location” may refer to any virtual point in space associated with a representation of a real-world scene. For example, any virtual locations are not limited to fixed locations surrounding a real-world scene (eg, fixed locations associated with views 206 and/or customized view 502), as well as views 206 and locations associated with the customized
네트워크(1106)는 제공자 특정 유선 또는 무선 네트워크(예로서, 케이블 또는 위성 캐리어 네트워크 또는 모바일 전화 네트워크), 인터넷, 광역 네트워크, 콘텐트 전달 네트워크, 또는 임의의 다른 적합한 네트워크를 포함할 수 있다. 데이터는 특정한 구현을 제공할 수 있는 임의의 통신 기술들, 디바이스들, 미디어, 및 프로토콜들을 사용하여 제공자 시스템(1102)과 미디어 플레이어 디바이스(1108)(뿐만 아니라, 명시적으로 도시되지 않은 다른 미디어 플레이어 디바이스들) 사이를 흐를 수 있다.Network 1106 may include a provider specific wired or wireless network (eg, a cable or satellite carrier network or mobile phone network), the Internet, a wide area network, a content delivery network, or any other suitable network. Data may be transferred to
미디어 플레이어 디바이스(1108)는 제공자 시스템(1102)으로부터 수신된 가상 현실 미디어 콘텐트에 액세스하고 이를 경험하기 위해 사용자(1110)에 의해 사용될 수 있다. 예를 들면, 미디어 플레이어 디바이스(1108)는 임의의 가상 시점(예로서, 사용자에 의해 선택되고 실세계 장면(202) 내의 임의의 가상 위치에 대응하는 동적으로 선택가능한 가상 시점)으로부터 사용자(1110)에 의해 경험되기 위해 실세계 장면(202)의 3D 가상 표현을 생성하도록 구성될 수 있다. 이를 위해, 미디어 플레이어 디바이스(1108)는 사용자(1110)가 몰입형 가상 실세계를 경험함에 따라, 시야 내에 제공된 몰입형 가상 실세계를 동적으로 업데이트하기 위해 몰입형 가상 실세계(예로서, 실세계 장면(202)을 나타내는 몰입형 가상 실세계)의 시야를 제공하고 사용자(1110)로부터의 사용자 입력을 검출할 수 있는 임의의 디바이스를 포함하거나 그에 의해 구현될 수 있다.
도 12는 가상 현실 미디어 콘텐트를 경험하기 위해 사용자(1110)에 의해 사용될 수 있는 다양한 예시적인 유형들의 미디어 플레이어 디바이스들(1108)을 보여준다. 구체적으로, 도시된 바와 같이, 미디어 플레이어 디바이스(1108)는 가상 현실 미디어 콘텐트의 수신 및/또는 제공을 가능하게 하기 위해 머리 장착용 디스플레이 스크린, 개인용 컴퓨터 디바이스(1204)(예로서, 데스크탑 컴퓨터, 랩톱 컴퓨터 등), 모바일 또는 무선 디바이스(1206)(예로서, 머리 장착 장치에 의해 사용자(1110)의 머리에 가능하게 장착된 스마트 폰, 태블릿 디바이스 등), 또는 특정한 구현을 제공할 수 있는 임의의 다른 디바이스 또는 디바이스들의 구성을 포함하는 머리 장착용 가상 현실 디바이스(1202)(예로서, 가상 현실 게임 디바이스)와 같은 몇몇 상이한 형태 인자들 중 하나를 취할 수 있다. 상이한 유형들의 미디어 플레이어 디바이스들(예로서, 머리 장착용 가상 현실 디바이스들, 개인용 컴퓨터 디바이스들, 모바일 디바이스들, 등)은 사용자(1110)에게 상이한 레벨들의 몰입도를 가지는 상이한 유형들의 가상 현실 경험들을 제공할 수 있다.12 shows various example types of
도 13은 실세계 장면에 대해 일 예시적인 임의의 가상 위치에 대응하는 동적으로 선택가능한 가상 시점으로부터 경험된 바와 같이 사용자(1110)에게 실세계 장면을 나타내는 예시적인 가상 현실 미디어 콘텐트가 제공되는 일 예시적인 가상 현실 경험(1300)을 도시한다. 구체적으로, 가상 현실 미디어 콘텐트(1302)는 슛이 행해지고 있는 실세계 장면의 표현 내에서 농구 표준 바로 아래의 임의의 가상 위치에 대응하는 가상 시점으로부터 실세계 장면을 보여주는 시야(1304) 내에 제공된다. 실세계 장면에 기초한 몰입형 가상 실세계(1306)는 뷰어가 몰입형 가상 실세계(1306) 주변을 둘러보고/보거나 그 주위로 움직이기 위해(즉, 경험할 가상 시점을 동적으로 선택함) 사용자 입력(예로서, 머리 움직임들, 키보드 입력, 등)을 제공함으로써 경험하는 것을 사용가능하게 할 수 있다.13 illustrates an exemplary virtual reality media content representing a real-world scene to a
예를 들면, 시야(1304)는 사용자(1110)가 몰입형 가상 실세계(1306) 주위를 쉽게 그리고 자연스럽게 볼 수 있는 윈도우를 제공할 수 있다. 시야(1304)는 미디어 플레이어 디바이스(1108)에 의해(예로서, 미디어 플레이어 디바이스(1108)의 디스플레이 스크린 상에) 제공될 수 있고 몰입형 가상 실세계(1306) 내에서 사용자를 둘러싸는 객체들을 묘사하는 비디오를 포함할 수 있다. 부가적으로, 시야(1304)는 사용자(1110)가 몰입형 가상 실세계(1306)를 경험함에 따라 사용자(1110)에 의해 제공된 사용자 입력에 응답하여 동적으로 변경될 수 있다. 예를 들면, 미디어 플레이어 디바이스(1108)는 사용자 입력(예로서, 시야(1304)가 제공되는 디스플레이 스크린을 이동 또는 회전시키는 것)을 검출할 수 있다. 이에 응답하여, 시야(1304)는 이전의 가상 시점 또는 가상 위치에서 보여진 객체들 대신에 상이한 가상 시점 또는 가상 위치로부터 보여진 상이한 객체들 및/또는 객체들을 디스플레이할 수 있다.For example, field of
도 13에서, 몰입형 가상 실세계(1306)는 반구로서 도시되고, 이는 사용자(1110)가 현재 선택한 농구 표준 하의 위치의 가상 시점으로부터 실질적으로 전방, 후방, 좌측, 우측, 및/또는 위쪽인 몰입형 가상 실세계(1306) 내에서 임의의 방향을 볼 수 있음을 나타낸다. 다른 예들에서, 몰입형 가상 실세계(1306)는 사용자(1110)가 또한 내려다볼 수 있도록 완전한 360°x 180°구를 포함할 수 있다. 부가적으로, 사용자(1110)는 몰입형 가상 실세계(1306) 내의 다른 위치들로 여기저기 이동할 수 있다(즉, 실세계 장면의 표현 내에서 상이한 동적으로 선택가능한 가상 시점들을 동적으로 선택함). 예를 들면, 사용자(1110)는 하프 코트에서의 가상 시점, 농구 표준에 대향하는 자유투 라인으로부터의 가상 시점, 농구 표준 위에 일시정지된 가상 시점, 등을 선택할 수 있다.In FIG. 13 , the immersive virtual
도 14는 가상 현실 미디어 콘텐트 내에 포함시키기 위해 실세계 장면의 맞춤화된 뷰의 가상화된 투영을 생성하기 위한 일 예시적인 방법(1400)을 보여준다. 도 14가 하나의 실시예에 따른 예시적인 동작들을 도시하지만, 상이한 실시예들은 도 14에 도시된 동작들 중 임의의 동작을 생략, 부가, 재정렬, 및/또는 수정할 수 있다. 도 14에 도시된 동작들 중 하나 이상은 시스템(100), 그의 구현, 및/또는 시스템(100)과 연관(예로서, ~와 통신가능하게 결합되거나, ~와 상호동작하도록 구성됨, 등)되는 것으로서 상기 설명된 또 다른 시스템에 의해 수행될 수 있다.14 shows an
동작(1402)에서, 가상화된 투영 생성 시스템은, 각각이 실세계 장면의 상이한 뷰들과 연관된 복수의 세트들의 캡처 파라미터들에 포함된 각각의 세트의 캡처 파라미터들에 따라 실세계 장면을 묘사하는 컬러 및 깊이 프레임들을 포함하는 복수의 캡처된 표면 데이터 프레임 시퀀스들을 수신할 수 있다. 일부 예들에서, 복수의 캡처된 표면 데이터 프레임 시퀀스들에서 각각의 표면 데이터 프레임 시퀀스는 실세계 장면의 상이한 뷰들을 캡처하기 위해 실세계 장면에 대해 상이한 위치들에 배치된 복수의 캡처 디바이스들에서 상이한 캡처 디바이스에 의해 캡처될 수 있다. 동작(1402)은 본 명세서에서 설명된 방식들 중 임의의 방식으로 수행될 수 있다.At
동작(1404)에서, 가상화된 투영 생성 시스템은 동작(1402)에서 수신된 캡처된 표면 데이터 프레임 시퀀스들과 연관된 복수의 세트들의 캡처 파라미터들에 포함된 캡처 파라미터들의 세트들과 별개인 부가적인 세트의 캡처 파라미터들을 식별할 수 있다. 일부 예들에서, 부가적인 세트의 캡처 파라미터들은 복수의 캡처 디바이스들에 의해 캡처된 실세계 장면의 상이한 뷰들과 별개인 실세계 장면의 맞춤화된 뷰와 연관될 수 있다. 동작(1404)은 본 명세서에서 설명된 방식들 중 임의의 방식으로 수행될 수 있다.At
동작(1406)에서, 가상화된 투영 생성 시스템은 실세계 장면의 맞춤화된 뷰의 가상화된 투영을 위해 컬러 및 깊이 프레임들을 렌더링할 수 있다. 예를 들면, 가상화된 투영 생성 시스템은 동작(1402)에서 수신된 캡처된 표면 데이터 프레임 시퀀스들에 기초하여 그리고 동작(1404)에서 식별된 부가적인 세트의 캡처 파라미터들에 기초하여 가상화된 투영을 위해 컬러 및 깊이 프레임들을 렌더링할 수 있다. 동작(1406)은 본 명세서에서 설명된 방식들 중 임의의 방식으로 수행될 수 있다.At operation 1406, the virtualized projection generation system may render color and depth frames for a virtualized projection of the customized view of the real world scene. For example, the virtualized projection generation system uses an additional set of capture parameters identified in
동작(1408)에서, 가상화된 투영 생성 시스템은 동작(1406)에서 렌더링된 실세계 장면의 맞춤화된 뷰의 가상화된 투영을 위해 렌더링된 컬러 및 깊이 프레임들을 포함하는 가상화된 표면 데이터 프레임 시퀀스를 제공할 수 있다. 일부 예들에서, 가상화된 투영 생성 시스템은 미디어 플레이어 디바이스에 가상 현실 미디어 콘텐트 내에 포함시키기 위해 가상화된 표면 데이터 프레임 시퀀스를 제공할 수 있다. 동작(1408)은 본 명세서에서 설명된 방식들 중 임의의 방식으로 수행될 수 있다.At
도 15는 가상 현실 미디어 콘텐트 내에 포함시키기 위해 실세계 장면의 맞춤화된 뷰의 가상화된 투영을 생성하기 위한 일 예시적인 방법(1500)을 도시한다. 도 15가 하나의 실시예에 따른 예시적인 동작들을 도시하지만, 다른 실시예들은 도 15에 도시된 동작들 중 임의의 동작을 생략, 부가, 재정렬, 및/또는 수정할 수 있다. 도 15에 도시된 동작들 중 하나 이상은 시스템(100), 그의 구현, 및/또는 시스템(100)과 연관(예로서, ~와 통신가능하게 결합되거나, ~와 상호동작하도록 구성됨, 등)되는 것으로서 상기 설명된 또 다른 시스템에 의해 수행될 수 있다.15 depicts an
동작(1502)에서, 가상화된 투영 생성 시스템은, 각각이 실세계 장면의 상이한 뷰들과 연관된 제 1 복수의 세트들의 캡처 파라미터들에 포함된 각각의 세트의 캡처 파라미터들에 따라 실세계 장면을 묘사하는 컬러 및 깊이 프레임들을 포함하는 복수의 캡처된 표면 데이터 프레임 시퀀스들을 수신할 수 있다. 예를 들면, 복수의 캡처된 표면 데이터 프레임 시퀀스들에서 각각의 표면 데이터 프레임 시퀀스는 실세계 장면의 상이한 뷰들을 캡처하기 위해 실세계 장면에 대해 상이한 위치들에 배치된 복수의 캡처 디바이스들에서 상이한 캡처 디바이스에 의해 캡처될 수 있다. 특정 예들에서, 동작(1502)은 실세계 장면 내에서 이벤트들이 발생함에 따라 실시간으로 수행될 수 있다. 동작(1502)은 본 명세서에서 설명된 방식들 중 임의의 방식으로 수행될 수 있다.In
동작(1504)에서, 가상화된 투영 생성 시스템은 제 1 복수의 세트들의 캡처 파라미터들에 포함된 캡처 파라미터들의 세트들과 별개인 제 2 복수의 세트들의 캡처 파라미터들을 식별할 수 있다. 예를 들면, 제 2 복수의 세트들의 캡처 파라미터들에서 각각의 세트의 캡처 파라미터들은 동작(1502)에 관하여 상기 논의된 복수의 캡처 디바이스들에 의해 캡처된 실세계 장면의 상이한 뷰들과 별개인 실세계 장면의 각각의 맞춤화된 뷰와 연관될 수 있다. 일부 예들에서, 제 2 복수의 세트들의 캡처 파라미터들은 동작(1502)에서 수신된 캡처된 표면 데이터 프레임 시퀀스들과 연관된 제 1 복수의 세트들의 캡처 파라미터들에 포함되는 것보다 많은 수의 세트들을 포함할 수 있다. 동작(1502)과 같이, 특정 구현들에서, 이벤트들이 실세계 장면 내에서 발생함에 따라 동작(1504)이 실시간으로 수행될 수 있고, 동작(1504)은 본 명세서에서 설명된 방식들 중 임의의 방식으로 수행될 수 있다.At
동작(1506)에서, 가상화된 투영 생성 시스템은 제 2 복수의 세트들의 캡처 파라미터들에서 캡처 파라미터들의 세트가 동작(1504)에서 식별되는 실세계 장면의 각각의 개별적인 맞춤화된 뷰의 가상화된 투영들을 위해 컬러 및 깊이 프레임들을 렌더링할 수 있다. 일부 예들에서, 가상화된 투영 생성 시스템은 동작(1502)에서 수신된 복수의 캡처된 표면 데이터 프레임 시퀀스들에 기초하여 그리고 동작(1504)에서 식별된 제 2 복수의 세트들의 캡처 파라미터들에 기초하여 컬러 및 깊이 프레임들을 렌더링할 수 있다. 동작들(1502 및 1504)과 같이, 특정 구현들에서, 동작(1506)은 이벤트들이 실세계 장면 내에서 발생함에 따라 실시간으로 수행될 수 있다. 동작(1506)은 본 명세서에서 설명된 방식들 중 임의의 방식으로 수행될 수 있다.At
동작(1508)에서, 가상화된 투영 생성 시스템은 동작(1506)에서 렌더링된 실세계 장면의 각각의 맞춤화된 뷰의 가상화된 투영들을 위해 컬러 및 깊이 프레임들을 포함하는 복수의 가상화된 표면 데이터 프레임 시퀀스들을 제공할 수 있다. 예를 들면, 가상화된 투영 생성 시스템은 미디어 플레이어 디바이스에 가상 현실 미디어 콘텐트 내에 포함시키기 위해 복수의 가상화된 표면 데이터 프레임 시퀀스들을 제공할 수 있다. 동작들(1502 내지 1506)과 같이, 동작(1508)은 실세계 장면 내에서 이벤트들이 발생함에 따라 실시간으로 수행될 수 있다. 동작(1508)은 본 명세서에서 설명된 방식들 중 임의의 방식으로 수행될 수 있다.In
특정 실시예들에서, 본 명세서에서 설명된 시스템들, 구성요소들, 및/또는 프로세스들 중 하나 이상은 하나 이상의 적절하게 구성된 컴퓨팅 디바이스들에 의해 구현 및/또는 수행될 수 있다. 이를 위해, 상기 설명된 시스템들 및/또는 구성요소들 중 하나 이상은 본 명세서에서 설명된 프로세스들 중 하나 이상을 수행하도록 구성된 적어도 하나의 비일시적 컴퓨터 판독가능한 매체 상에 구현된 임의의 컴퓨터 하드웨어 및/또는 컴퓨터 구현 지시들(예로서, 소프트웨어)을 포함하거나 그들에 의해 구현될 수 있다. 특히, 시스템 구성요소들은 하나의 물리적 컴퓨팅 디바이스 상에서 구현될 수 있거나 하나보다 많은 물리적 컴퓨팅 디바이스 상에서 구현될 수 있다. 그에 따라, 시스템 구성요소들은 임의의 수의 컴퓨팅 디바이스들을 포함할 수 있고, 복수의 컴퓨터 운영 체제들 중 임의의 운영 체제를 사용할 수 있다.In certain embodiments, one or more of the systems, components, and/or processes described herein may be implemented and/or performed by one or more suitably configured computing devices. To this end, one or more of the systems and/or components described above may be any computer hardware implemented on at least one non-transitory computer readable medium configured to perform one or more of the processes described herein and /or may include or be implemented by computer implemented instructions (eg, software). In particular, system components may be implemented on one physical computing device or may be implemented on more than one physical computing device. As such, system components may include any number of computing devices and may use any of a plurality of computer operating systems.
특정 실시예들에서, 본 명세서에서 설명된 프로세스들 중 하나 이상은 비일시적 컴퓨터 판독가능한 매체에 구현되고 하나 이상의 컴퓨팅 디바이스들에 의해 실행가능한 지시들로서 적어도 부분적으로 구현될 수 있다. 일반적으로, 프로세서(예로서, 마이크로프로세서)는 비일시적 컴퓨터 판독가능한 매체(예로서, 메모리, 등)로부터 지시들을 수신하고, 이들 지시들을 실행하며 그에 의해, 본 명세서에서 설명된 프로세스들 중 하나 이상을 포함하는, 하나 이상의 프로세스들을 수행한다. 이러한 지시들은 다양한 알려진 컴퓨터 판독가능한 매체들 중 임의의 매체를 사용하여 저장되고/되거나 송신될 수 있다.In certain embodiments, one or more of the processes described herein may be implemented at least in part as instructions embodied in a non-transitory computer-readable medium and executable by one or more computing devices. Generally, a processor (eg, microprocessor) receives instructions from a non-transitory computer readable medium (eg, memory, etc.) and executes these instructions thereby thereby performing one or more of the processes described herein. Perform one or more processes, including These instructions may be stored on and/or transmitted using any of a variety of known computer readable media.
컴퓨터 판독가능한 매체(또한, 프로세서 판독가능한 매체로서 언급됨)는 컴퓨터에 의해(예로서, 컴퓨터의 프로세서에 의해) 판독될 수 있는 데이터(예로서, 지시들)을 제공하는데 관여하는 임의의 비일시적인 매체를 포함한다. 이러한 매체는 비휘발성 매체들, 및/또는 휘발성 매체들을 포함하지만 그것으로 제한되지 않는 많은 형태들을 취할 수 있다. 비휘발성 매체들은 예를 들면, 광학 또는 자기 디스크들 및 다른 영구적인 메모리를 포함할 수 있다. 휘발성 매체들은 예를 들면, 동적 랜덤 액세스 메모리("DRAM")를 포함할 수 있고, 이는 전형적으로 메인 메모리를 구성한다. 컴퓨터 판독가능한 매체들의 공통적인 형태들은 예를 들면, 디스크, 하드 디스크, 자기 테이프, 임의의 다른 자기 매체, 컴팩트 디스크 판독 전용 메모리("CD-ROM"), 디지털 비디오 디스크("DVD"), 임의의 다른 광학 매체, 랜덤 액세스 메모리("RAM"), 프로그래밍가능한 판독 전용 메모리("PROM"), 전기적으로 소거가능한 프로그래밍가능한 판독 전용 메모리("EPROM"), FLASH-EEPROM, 임의의 다른 메모리 칩 또는 카트리지, 또는 컴퓨터가 판독할 수 있는 임의의 다른 유형의 매체를 포함한다.A computer-readable medium (also referred to as a processor-readable medium) is any non-transitory medium that participates in providing data (eg, instructions) that can be read by a computer (eg, by a processor of a computer). includes media Such a medium may take many forms, including but not limited to non-volatile media and/or volatile media. Non-volatile media may include, for example, optical or magnetic disks and other permanent memory. Volatile media may include, for example, dynamic random access memory ("DRAM"), which typically constitutes main memory. Common forms of computer readable media include, for example, disks, hard disks, magnetic tape, any other magnetic medium, compact disc read only memory ("CD-ROM"), digital video disk ("DVD"), any other optical media, random access memory (“RAM”), programmable read-only memory (“PROM”), electrically erasable programmable read-only memory (“EPROM”), FLASH-EEPROM, any other memory chip, or cartridge, or any other type of computer-readable medium.
도 16은 본 명세서에서 설명된 프로세스들 중 하나 이상을 수행하도록 구체적으로 구성될 수 있는 일 예시적인 컴퓨팅 디바이스(1600)를 도시한다. 도 16에 도시된 바와 같이, 컴퓨팅 디바이스(1600)는 통신 인터페이스(1602), 프로세서(1604), 저장 디바이스(1606), 및 통신 인프라스트럭처(1610)를 통해 통신가능하게 연결된 입력/출력("I/O") 모듈(1608)을 포함할 수 있다. 일 예시적인 컴퓨팅 디바이스(1600)가 도 16에 도시될지라도, 도 16에 도시된 구성요소들은 제한하는 것으로 의도되지 않는다. 부가적이거나 대안적인 구성요소들은 다른 실시예들에서 사용될 수 있다. 도 16에 도시된 컴퓨팅 디바이스(1600)의 구성요소들은 이제 부가적인 상세로 설명될 것이다.16 depicts an
통신 인터페이스(1602)는 하나 이상의 컴퓨팅 디바이스들과 통신하도록 구성될 수 있다. 통신 인터페이스(1602)의 예들은 제한없이, 유선 네트워크 인터페이스(네트워크 인터페이스 카드와 같은), 무선 네트워크 인터페이스(무선 네트워크 인터페이스 카드와 같은), 모뎀, 오디오/비디오 연결, 및 임의의 다른 적합한 인터페이스를 포함한다.Communications interface 1602 can be configured to communicate with one or more computing devices. Examples of
프로세서(1604)는 일반적으로, 데이터를 프로세싱하거나 본 명세서에서 설명된 지시들, 프로세스들, 및/또는 동작들 중 하나 이상을 해석, 실행, 및/또는 그들의 실행을 지시할 수 있는 임의의 유형 또는 형태의 프로세싱 유닛(예로서, 중앙 처리 장치 및/또는 그래픽 처리 장치)을 나타낸다. 프로세서(1604)는 하나 이상의 애플리케이션들(1612)에 따른 동작들 또는 저장 디바이스(1606) 또는 또 다른 컴퓨터 판독가능한 매체에 저장될 수 있는 것과 같은 다른 컴퓨터 실행가능한 지시들의 실행을 지시할 수 있다.
저장 디바이스(1606)는 하나 이상의 데이터 저장 매체들, 디바이스들, 또는 구성들을 포함할 수 있고 임의의 유형, 형태의 데이터 저장 매체들 및/또는 디바이스, 및 그들의 조합을 사용할 수 있다. 예를 들면, 저장 디바이스(1606)는 하드 드라이브, 네트워크 드라이브, 플래시 드라이브, 자기 디스크, 광학 디스크, RAM, 동적 RAM, 다른 비휘발성 및/또는 휘발성 데이터 저장 유닛들, 또는 그의 조합 또는 하위조합을 포함할 수 있지만 그들로 제한되지 않는다. 본 명세서에서 설명된 데이터를 포함하는 전자 데이터는 일시적으로 및/또는 영구적으로 저장 디바이스(1606)에 저장될 수 있다. 예를 들면, 프로세서(1604)로 하여금 본 명세서에서 설명된 동작들 중 임의의 동작을 수행하도록 지시하도록 구성된 하나 이상의 실행가능한 애플리케이션들(1612)을 나타내는 데이터는 저장 디바이스(1606) 내에 저장될 수 있다. 일부 예들에서, 데이터는 저장 디바이스(1606) 내에 상주하는 하나 이상의 데이터베이스들에 배열될 수 있다.The
I/O 모듈(1608)은 사용자 입력을 수신하고 사용자 출력을 제공하도록 구성된 하나 이상의 I/O 모듈들을 포함할 수 있다. 하나 이상의 I/O 모듈들은 단일 가상 현실 경험을 위한 입력을 수신하기 위해 사용될 수 있다. I/O 모듈(1608)은 입력 및 출력 능력들을 지원하는 임의의 하드웨어, 펌웨어, 소프트웨어, 또는 그의 조합을 포함할 수 있다. 예를 들면, I/O 모듈(1608)은 키보드 또는 키패드, 터치스크린 구성요소(예로서, 터치스크린 디스플레이), 수신기(예로서, RF 또는 적외선 수신기), 움직임 센서들, 및/또는 하나 이상의 입력 버튼들을 포함하지만, 그들로 제한되지 않는 사용자 입력을 캡처하기 위한 하드웨어 및/또는 소프트웨어를 포함할 수 있다.I/
I/O 모듈(1608)은 그래픽 엔진, 디스플레이(예로서, 디스플레이 스크린), 하나 이상의 출력 구동기들(예로서, 디스플레이 구동기들), 하나 이상의 오디오 스피커들, 및 하나 이상의 오디오 구동기들을 포함하지만 그들로 제한되지 않는, 사용자에게 출력을 제공하기 위한 하나 이상의 디바이스들을 포함할 수 있다. 특정 실시예들에서, I/O 모듈(1608)은 사용자에게 제공하기 위해 그래픽 데이터를 디스플레이에 제공하도록 구성된다. 그래픽 데이터는 특정한 구현을 제공할 수 있는 하나 이상의 그래픽 사용자 인터페이스들 및/또는 임의의 다른 그래픽 콘텐트를 나타낼 수 있다.I/
일부 예들에서, 본 명세서에서 설명된 시설들 중 임의의 시설은 컴퓨팅 디바이스(1600)의 하나 이상의 구성요소들에 의해 또는 그 내부에 구현될 수 있다. 예를 들면, 저장 디바이스(1606) 내에 상주하는 하나 이상의 애플리케이션들(1612)은 프로세서(1604)로 하여금 통신 시설(102), 표면 데이터 프레임 시퀀스 관리 시설(104), 또는 시스템(100)의 가상화된 투영 생성 시설(106)와 연관된 하나 이상의 동작들 또는 기능들을 수행하도록 지시하도록 구성될 수 있다(도 1 참조). 마찬가지로, 시스템(100)의 저장 시설(108)은 저장 디바이스(1606)에 의해 또는 상기 저장 디바이스 내에 구현될 수 있다.In some examples, any of the facilities described herein may be implemented by or within one or more components of
상기 설명된 실시예들이 개인에 의해 제공된 개인 정보를 수집, 저장, 및/또는 사용하는 범위에서, 이러한 정보가 개인 정보의 보호에 관한 모든 적용가능한 법률에 따라 사용될 것이 이해되어야 한다. 부가적으로, 이러한 정보의 수집, 저장, 및 사용은 예를 들면, 정보의 유형 및 상황에 대해 적절할 수 있는 잘 알려진 "수신(opt-in)" 또는 "수신 거부(opt-out)" 프로세스들을 통해 이러한 활동에 대한 개인의 동의에 영향을 받을 수 있다. 개인 정보의 저장 및 사용은 예를 들면, 특히 민감한 정보를 위한 다양한 암호화 및 익명화 기술들을 통해 정보의 유형을 반영하는 적합한 보안 방식일 수 있다.To the extent that the above-described embodiments collect, store, and/or use personal information provided by individuals, it should be understood that such information will be used in accordance with all applicable laws regarding the protection of personal information. Additionally, the collection, storage, and use of this information may involve, for example, the well-known "opt-in" or "opt-out" processes that may be appropriate to the type and context of the information. may be influenced by the consent of individuals to these activities. The storage and use of personal information may be in a suitable secure manner reflecting the type of information, for example through various encryption and anonymization techniques for particularly sensitive information.
상기 설명에서, 다양한 예시적인 실시예들이 첨부 도면들을 참조하여 설명되었다. 그러나, 다음의 청구항들에 제시된 바와 같이 발명의 범위를 벗어나지 않고, 다양한 수정들 및 변경들이 그에 대해 행해질 수 있고, 부가적인 실시예들이 구현될 수 있음이 명백할 것이다. 예를 들면, 본 명세서에서 설명된 하나의 실시예의 특정 특징들은 본 명세서에서 설명된 또 다른 실시예의 특징들과 조합되거나 그들로 대체될 수 있다. 설명 및 도면들은 그에 따라, 제한적인 의미가 아니라 예시적인 것으로 간주되어야 한다.In the above description, various exemplary embodiments have been described with reference to the accompanying drawings. However, it will be apparent that various modifications and changes may be made thereto, and additional embodiments may be implemented, without departing from the scope of the invention as set forth in the following claims. For example, specific features of one embodiment described herein may be combined with or substituted for features of another embodiment described herein. The description and drawings are therefore to be regarded in an illustrative rather than restrictive sense.
Claims (20)
가상화된 투영 생성 시스템에 의해, 복수의 캡처된 표면 데이터 프레임 시퀀스들을 수신하는 단계로서, 각각의 캡처된 표면 데이터 프레임 시퀀스는 실세계 장면의 상이한 뷰들과 연관된 복수의 세트들의 캡처 파라미터들에 포함된 각각의 세트의 캡처 파라미터들에 따라 실세계 장면을 묘사하는 컬러 및 깊이 프레임들을 포함하고, 복수의 캡처된 표면 데이터 프레임 시퀀스들에서 각각의 표면 데이터 프레임 시퀀스는 실세계 장면의 상이한 뷰들을 캡처하기 위해 실세계 장면에 대해 상이한 위치들에 배치된 복수의 캡처 디바이스들에서 상이한 캡처 디바이스에 의해 캡처되는, 복수의 캡처된 표면 데이터 프레임 시퀀스들을 수신하는 단계;
가상화된 투영 생성 시스템에 의해, 복수의 세트들의 캡처 파라미터들에 포함된 캡처 파라미터들의 세트들과 별개이고 복수의 캡처 디바이스들에 의해 캡처된 실세계 장면의 상이한 뷰들과 별개인 실세계 장면의 맞춤화된 뷰와 연관된 부가적인 세트의 캡처 파라미터들을 식별하는 단계;
복수의 캡처된 표면 데이터 프레임 시퀀스들에서 표면 데이터 프레임 시퀀스들 중 적어도 하나에 기초하여 그리고 부가적인 세트의 캡처 파라미터들에 기초하여 가상화된 투영 생성 시스템에 의해, 실세계 장면의 맞춤화된 뷰의 가상화된 투영을 위해 컬러 및 깊이 프레임들을 렌더링하는 단계; 및
가상화된 투영 생성 시스템에 의해, 다수의 표면 데이터 프레임 시퀀스들의 각각으로부터의 프레임들을 단일 타일링된 프레임 시퀀스(single tiled frame sequence)의 타일링된 프레임들 상에 함께 패킹하기 위해 타일 맵핑 기술을 사용하여 상기 다수의 표면 데이터 프레임 시퀀스들을 공유된 전송 스트림으로 함께 패키징하는 단계로서, 상기 다수의 표면 데이터 프레임 시퀀스들은:
실세계 장면의 맞춤화된 뷰의 가상화된 투영을 위해 렌더링된 컬러 및 깊이 프레임들을 포함하는 가상화된 표면 데이터 프레임 시퀀스, 및
가상화된 표면 데이터 프레임 시퀀스 이외의 적어도 하나의 부가적인 캡처되거나 가상화된 표면 데이터 프레임 시퀀스를 포함하는, 방법.in the method,
Receiving, by a virtualized projection generation system, a plurality of captured surface data frame sequences, each sequence of captured surface data frames comprising respective values included in the plurality of sets of capture parameters associated with different views of a real-world scene. color and depth frames depicting a real-world scene according to a set of capture parameters, each surface data frame sequence in the plurality of captured surface data frame sequences relative to the real-world scene to capture different views of the real-world scene; receiving a plurality of captured surface data frame sequences, captured by different capture devices at a plurality of capture devices disposed at different locations;
By means of the virtualized projection generation system, a customized view of a real-world scene separate from the sets of capture parameters included in the plurality of sets of capture parameters and different views of the real-world scene captured by the plurality of capture devices and identifying an associated additional set of capture parameters;
A virtualized projection of a customized view of a real-world scene by a virtualized projection generation system based on at least one of the surface data frame sequences in a plurality of captured surface data frame sequences and based on an additional set of capture parameters. rendering color and depth frames for and
The virtualized projection generation system uses a tile mapping technique to pack frames from each of a plurality of surface data frame sequences together onto the tiled frames of a single tiled frame sequence. packaging together surface data frame sequences of the plurality of surface data frame sequences into a shared transport stream, wherein the plurality of surface data frame sequences:
A sequence of virtualized surface data frames containing rendered color and depth frames for a virtualized projection of a customized view of a real world scene; and
and at least one additional sequence of captured or virtualized surface data frames other than the sequence of virtualized surface data frames.
실세계 장면의 맞춤화된 뷰는 실세계 장면에 대해 상이한 위치들에 배치된 복수의 캡처 디바이스들에 의해 캡처된 실세계 장면의 상이한 뷰들과 맞추어 조정되지 않고;
실세계 장면의 맞춤화된 뷰의 가상화된 투영을 위해 컬러 및 깊이 프레임들을 렌더링하는 단계는 복수의 캡처된 표면 데이터 프레임 시퀀스들에서 표면 데이터 프레임 시퀀스들 중 적어도 2개에 기초하여 컬러 및 깊이 프레임들을 렌더링하는 단계를 포함하는, 방법.According to claim 1,
The customized view of the real-world scene is not aligned with the different views of the real-world scene captured by a plurality of capture devices disposed at different locations relative to the real-world scene;
The rendering of color and depth frames for a virtualized projection of a customized view of a real world scene includes rendering the color and depth frames based on at least two of the surface data frame sequences in a plurality of captured surface data frame sequences. A method comprising steps.
실세계 장면의 상이한 뷰들과 연관된 복수의 세트들의 캡처 파라미터들에 포함된 각각의 세트의 캡처 파라미터들은:
실세계 장면의 특정한 뷰에 대응하는 컬러 및 깊이 프레임들이 캡처되는 실세계 장면에 대한 위치를 나타내는 캡처 파라미터;
실세계 장면의 특정한 뷰에 대응하는 컬러 및 깊이 프레임들이 캡처되는 방향을 나타내는 캡처 파라미터;
실세계 장면의 특정한 뷰에 대응하는 컬러 및 깊이 프레임들이 캡처되는 시야를 나타내는 캡처 파라미터; 및
실세계 장면의 특정한 뷰에 대응하는 컬러 및 깊이 프레임들이 캡처되는 이미지 품질을 나타내는 캡처 파라미터 중 적어도 하나를 포함하는, 방법.According to claim 1,
Each set of capture parameters included in the plurality of sets of capture parameters associated with different views of a real-world scene are:
a capture parameter indicating a position relative to the real-world scene at which color and depth frames corresponding to a particular view of the real-world scene are captured;
a capture parameter indicating the direction in which color and depth frames corresponding to a particular view of a real-world scene are to be captured;
a capture parameter indicating the field of view from which color and depth frames corresponding to a particular view of a real-world scene are captured; and
A method comprising at least one of a capture parameter indicative of image quality with which color and depth frames corresponding to a particular view of a real-world scene are captured.
실세계 장면의 맞춤화된 뷰와 연관된 부가적인 세트의 캡처 파라미터들은:
실세계 장면의 맞춤화된 뷰와 연관된 맞춤화된 시야를 나타내는 캡처 파라미터로서, 맞춤화된 시야는 가상화된 투영을 위해 컬러 및 깊이 프레임들의 렌더링이 기초하는 표면 데이터 프레임 시퀀스들 중 적어도 하나와 연관된 캡처된 시야보다 좁은, 맞춤화된 시야를 나타내는 캡처 파라미터; 및
실세계 장면의 맞춤화된 뷰와 연관된 맞춤화된 이미지 품질을 나타내는 캡처 파라미터로서, 맞춤화된 이미지 품질은 가상화된 투영을 위해 컬러 및 깊이 프레임들의 렌더링이 기초하는 표면 데이터 프레임 시퀀스들 중 적어도 하나와 연관된 캡처된 이미지 품질보다 낮은, 맞춤화된 이미지 품질을 나타내는 캡처 파라미터 중 적어도 하나를 포함하는, 방법.According to claim 1,
An additional set of capture parameters associated with a customized view of a real world scene are:
A capture parameter representing a customized field of view associated with a customized view of a real-world scene, the customized field of view narrower than the captured field of view associated with at least one of the surface data frame sequences on which the rendering of color and depth frames for the virtualized projection is based. , capture parameters representing customized fields of view; and
A capture parameter representing a customized image quality associated with a customized view of a real-world scene, the customized image quality associated with at least one of the surface data frame sequences upon which the rendering of color and depth frames for a virtualized projection is based. and at least one of the capture parameters indicative of a customized image quality lower than quality.
부가적인 세트의 캡처 파라미터들을 식별하는 단계는:
실세계 장면의 하나 이상의 기하학적 속성들에 대해 실세계 장면을 분석하는 단계;
실세계 장면의 분석에 기초하여, 복수의 세트들의 캡처 파라미터들에 포함된 캡처 파라미터들의 세트들과 별개이고 부가적인 세트의 캡처 파라미터들을 포함하는 복수의 부가적인 세트들의 캡처 파라미터들을 생성하는 단계; 및
복수의 부가적인 세트들의 캡처 파라미터들로부터 부가적인 세트의 캡처 파라미터들을 식별하는 단계를 포함하는, 방법.According to claim 1,
Identifying an additional set of capture parameters includes:
analyzing the real-world scene for one or more geometric properties of the real-world scene;
generating a plurality of additional sets of capture parameters comprising an additional set of capture parameters that are distinct from the sets of capture parameters included in the plurality of sets of capture parameters based on the analysis of the real-world scene; and
and identifying an additional set of capture parameters from a plurality of additional sets of capture parameters.
가상화된 표면 데이터 프레임 시퀀스 이외의 적어도 하나의 부가적인 캡처되거나 가상화된 표면 데이터 프레임 시퀀스는 복수의 캡처된 표면 데이터 프레임 시퀀스들에서 캡처된 표면 데이터 프레임 시퀀스를 포함하는, 방법.According to claim 1,
The method of claim 1 , wherein the at least one additional captured or virtualized surface data frame sequence other than the virtualized surface data frame sequence comprises a surface data frame sequence captured in the plurality of captured surface data frame sequences.
가상화된 표면 데이터 프레임 시퀀스 이외의 적어도 하나의 부가적인 캡처되거나 가상화된 표면 데이터 프레임 시퀀스는 실세계 장면의 부가적인 가상화된 투영을 위한 부가적인 가상화된 표면 데이터 프레임을 포함하는, 방법.According to claim 1,
The method of claim 1 , wherein at least one additional sequence of captured or virtualized surface data frames other than the sequence of virtualized surface data frames comprises additional virtualized surface data frames for additional virtualized projections of a real-world scene.
상기 단일 타일링된 프레임 시퀀스의 상기 타일링된 프레임들은 상기 공유된 전송 스트림의 타일 비디오 데이터 스트림으로 패키징되는, 방법.According to claim 1,
wherein the tiled frames of the single tiled frame sequence are packaged into a tiled video data stream of the shared transport stream.
적어도 하나의 비일시적 컴퓨터 판독가능한 매체 상에 컴퓨터 실행가능한 지시들로서 구현되는, 방법.According to claim 1,
embodied as computer-executable instructions on at least one non-transitory computer-readable medium.
이벤트들이 실세계 장면 내에서 발생함에 따라, 실시간으로 가상화된 투영 생성 시스템에 의해, 복수의 캡처된 표면 데이터 프레임 시퀀스들을 수신하는 단계로서, 각각의 캡처된 표면 데이터 프레임 시퀀스는 실세계 장면의 상이한 뷰들과 연관된 제 1 복수의 세트들의 캡처 파라미터들에 포함된 각각의 세트의 캡처 파라미터들에 따라 실세계 장면을 묘사하는 컬러 및 깊이 프레임들을 포함하고, 복수의 캡처된 표면 데이터 프레임 시퀀스들에서 각각의 표면 데이터 프레임 시퀀스는 실세계 장면의 상이한 뷰들을 캡처하기 위해 실세계 장면에 대해 상이한 위치들에 배치된 복수의 캡처 디바이스들에서 상이한 캡처 디바이스에 의해 캡처되는, 복수의 캡처된 표면 데이터 프레임 시퀀스들을 수신하는 단계;
이벤트들이 실세계 장면 내에서 발생함에 따라 실시간으로 가상화된 투영 생성 시스템에 의해, 제 1 복수의 세트들의 캡처 파라미터들에 포함된 캡처 파라미터들의 세트들과 별개이고 복수의 캡처 디바이스들에 의해 캡처된 실세계 장면의 상이한 뷰들과 별개인 실세계 장면의 각각의 맞춤화된 뷰들과 각각 연관되는 제 2 복수의 세트들의 캡처 파라미터들을 식별하는 단계로서, 제 2 복수의 세트들의 캡처 파라미터들은 제 1 복수의 세트들의 캡처 파라미터들에 포함되는 것보다 큰 수의 세트들을 포함하는, 제 2 복수의 세트들의 캡처 파라미터들을 식별하는 단계;
이벤트들이 실세계 장면 내에서 발생함에 따라 실시간으로 가상화된 투영 생성 시스템에 의해, 복수의 캡처된 표면 데이터 프레임 시퀀스들에 기초하여 그리고 제 2 복수의 세트들의 캡처 파라미터들에 기초하여 실세계 장면의 각각의 맞춤화된 뷰의 가상화된 투영들을 위해 컬러 및 깊이 프레임들을 렌더링하는 단계; 및
이벤트들이 실세계 장면 내에서 발생함에 따라 실시간으로 가상화된 투영 생성 시스템에 의해, 다수의 표면 데이터 프레임 시퀀스들의 각각으로부터의 프레임들을 단일 타일링된 프레임 시퀀스의 타일링된 프레임들 상에 함께 패킹하기 위해 타일 맵핑 기술을 사용하여 상기 다수의 표면 데이터 프레임 시퀀스들을 공유된 전송 스트림으로 함께 패키징하는 단계로서, 상기 다수의 표면 데이터 프레임 시퀀스들은 실세계 장면의 각각의 개별적인 맞춤화된 뷰의 가상화된 투영들을 위해 렌더링된 컬러 및 깊이 프레임들을 포함하는 복수의 가상화된 표면 데이터 프레임 시퀀스들을 포함하는, 상기 다수의 표면 데이터 프레임 시퀀스들을 공유된 전송 스트림으로 함께 패키징 하는 단계를 포함하는, 방법.in the method,
Receiving, by a real-time virtualized projection generation system, a plurality of captured surface data frame sequences as events occur within the real world scene, each captured surface data frame sequence associated with different views of the real world scene. a respective surface data frame sequence in the plurality of captured surface data frame sequences comprising color and depth frames depicting a real-world scene according to respective sets of capture parameters included in the first plurality of sets of capture parameters; receiving a plurality of captured surface data frame sequences, wherein the captured surface data frame sequences are captured by different capture devices at a plurality of capture devices disposed at different locations relative to the real world scene to capture different views of the real world scene;
A real world scene captured by a plurality of capture devices and distinct from the sets of capture parameters included in the first plurality of sets of capture parameters, by the projection generating system virtualized in real time as events occur within the real world scene. identifying a second plurality of sets of capture parameters each associated with respective customized views of a real-world scene that are distinct from different views of the second plurality of sets of capture parameters, the second plurality of sets of capture parameters being the first plurality of sets of capture parameters; identifying capture parameters of a second plurality of sets, the second plurality of sets comprising a greater number of sets than those contained in ;
Each customization of a real-world scene based on a second plurality of sets of capture parameters and based on a plurality of captured surface data frame sequences by the virtualized projection generation system in real time as events occur within the real world scene. rendering color and depth frames for virtualized projections of the visualized view; and
A tile mapping technique to pack together frames from each of multiple surface data frame sequences onto the tiled frames of a single tiled frame sequence by a virtualized projection generation system in real time as events occur within a real world scene. packaging together the plurality of surface data frame sequences into a shared transport stream, wherein the plurality of surface data frame sequences are color and depth rendered for virtualized projections of each individual customized view of a real world scene. packaging together a plurality of surface data frame sequences comprising a plurality of virtualized surface data frame sequences comprising frames into a shared transport stream.
제 2 복수의 세트들의 캡처 파라미터들에서 특정한 세트의 캡처 파라미터들과 연관된 실세계 장면의 특정한 맞춤화된 뷰는 실세계 장면에 대해 상이한 위치들에 배치된 복수의 캡처 디바이스들에 의해 캡처된 실세계 장면의 상이한 뷰들과 맞추어 조정되지 않고;
실세계 장면의 특정한 맞춤화된 뷰의 가상화된 투영을 위해 컬러 및 깊이 프레임들을 렌더링하는 단계는 복수의 캡처된 표면 데이터 프레임 시퀀스들에서 표면 데이터 프레임 시퀀스들 중 적어도 2개에 기초하여 컬러 및 깊이 프레임들을 렌더링하는 단계를 포함하는, 방법.According to claim 10,
The particular customized view of the real-world scene associated with a particular set of capture parameters in the second plurality of sets of capture parameters is different views of the real-world scene captured by a plurality of capture devices disposed at different locations relative to the real-world scene. not aligned with;
Rendering the color and depth frames for a virtualized projection of a particular customized view of a real world scene includes rendering the color and depth frames based on at least two of the surface data frame sequences in a plurality of captured surface data frame sequences. A method comprising the steps of:
적어도 하나의 비일시적 컴퓨터 판독가능한 매체 상에 컴퓨터 실행가능한 지시들로서 구현되는, 방법.According to claim 10,
embodied as computer-executable instructions on at least one non-transitory computer-readable medium.
적어도 하나의 물리적 컴퓨팅 디바이스를 포함하고,
적어도 하나의 물리적 컴퓨팅 디바이스는,
복수의 캡처된 표면 데이터 프레임 시퀀스들을 수신하는 것으로서, 각각의 캡처된 표면 데이터 프레임 시퀀스는 실세계 장면의 상이한 뷰들과 연관된 복수의 세트들의 캡처 파라미터들에 포함된 각각의 세트의 캡처 파라미터들에 따라 실세계 장면을 묘사하는 컬러 및 깊이 프레임들을 포함하고, 복수의 캡처된 표면 데이터 프레임 시퀀스들에서 각각의 표면 데이터 프레임 시퀀스는 실세계 장면의 상이한 뷰들을 캡처하기 위해 실세계 장면에 대해 상이한 위치들에 배치된 복수의 캡처 디바이스들에서 상이한 캡처 디바이스에 의해 캡처되는, 복수의 캡처된 표면 데이터 프레임 시퀀스들을 수신하고;
복수의 세트들의 캡처 파라미터들에 포함된 캡처 파라미터들의 세트들과 별개이고 복수의 캡처 디바이스들에 의해 캡처된 실세계 장면의 상이한 뷰들과 별개인 실세계 장면의 맞춤화된 뷰와 연관된 부가적인 세트의 캡처 파라미터들을 식별하고;
복수의 캡처된 표면 데이터 프레임 시퀀스들에서 표면 데이터 프레임 시퀀스들 중 적어도 하나에 기초하여 그리고 부가적인 세트의 캡처 파라미터들에 기초하여, 실세계 장면의 맞춤화된 뷰의 가상화된 투영을 위해 컬러 및 깊이 프레임들을 렌더링하고;
다수의 표면 데이터 프레임 시퀀스들의 각각으로부터의 프레임들을 단일 타일링된 프레임 시퀀스의 타일링된 프레임들 상에 함께 패킹하기 위해 타일 맵핑 기술을 사용하여 상기 다수의 표면 데이터 프레임 시퀀스들을 공유된 전송 스트림으로 함께 패키징하고, 상기 다수의 표면 데이터 프레임 시퀀스들은:
실세계 장면의 맞춤화된 뷰의 가상화된 투영을 위해 렌더링된 컬러 및 깊이 프레임들을 포함하는 가상화된 표면 데이터 프레임 시퀀스, 및
가상화된 표면 데이터 프레임 시퀀스 이외의 적어도 하나의 부가적인 캡처되거나 가상화된 표면 데이터 프레임 시퀀스를 포함하는, 시스템.in the system,
includes at least one physical computing device;
at least one physical computing device,
Receive a plurality of captured surface data frame sequences, each captured surface data frame sequence in accordance with a respective set of capture parameters included in the plurality of sets of capture parameters associated with different views of the real world scene. color and depth frames depicting a plurality of captured surface data frame sequences in which each surface data frame sequence is disposed at different locations relative to the real world scene to capture different views of the real world scene. receive a plurality of captured surface data frame sequences, captured by different capture devices at the devices;
An additional set of capture parameters associated with a customized view of a real-world scene that is distinct from the sets of capture parameters included in the plurality of sets of capture parameters and distinct from different views of the real-world scene captured by the plurality of capture devices. identify;
Based on at least one of the surface data frame sequences in the plurality of captured surface data frame sequences and based on an additional set of capture parameters, color and depth frames are configured for virtualized projection of a customized view of a real-world scene. render;
packaging multiple surface data frame sequences together into a shared transport stream using a tile mapping technique to pack frames from each of the multiple surface data frame sequences together onto the tiled frames of a single tiled frame sequence; , the multiple surface data frame sequences are:
A sequence of virtualized surface data frames containing rendered color and depth frames for a virtualized projection of a customized view of a real world scene; and
and at least one additional sequence of captured or virtualized surface data frames other than the sequence of virtualized surface data frames.
실세계 장면의 맞춤화된 뷰는 실세계 장면에 대해 상이한 위치들에 배치된 복수의 캡처 디바이스들에 의해 캡처된 실세계 장면의 상이한 뷰들과 맞추어 조정되지 않고;
실세계 장면의 맞춤화된 뷰의 가상화된 투영을 위한 컬러 및 깊이 프레임들의 렌더링은 복수의 캡처된 표면 데이터 프레임 시퀀스들에서 표면 데이터 프레임 시퀀스들 중 적어도 2개에 기초하여 컬러 및 깊이 프레임들을 렌더링하는 것을 포함하는, 시스템.According to claim 13,
The customized view of the real-world scene is not aligned with the different views of the real-world scene captured by a plurality of capture devices disposed at different locations relative to the real-world scene;
The rendering of color and depth frames for a virtualized projection of a customized view of a real-world scene includes rendering the color and depth frames based on at least two of the surface data frame sequences in a plurality of captured surface data frame sequences. do, the system.
실세계 장면의 상이한 뷰들과 연관된 복수의 세트들의 캡처 파라미터들에 포함된 각각의 세트의 캡처 파라미터들은:
실세계 장면의 특정한 뷰에 대응하는 컬러 및 깊이 프레임들이 캡처되는 실세계 장면에 대한 위치를 나타내는 캡처 파라미터;
실세계 장면의 특정한 뷰에 대응하는 컬러 및 깊이 프레임들이 캡처되는 방향을 나타내는 캡처 파라미터;
실세계 장면의 특정한 뷰에 대응하는 컬러 및 깊이 프레임들이 캡처되는 시야를 나타내는 캡처 파라미터; 및
실세계 장면의 특정한 뷰에 대응하는 컬러 및 깊이 프레임들이 캡처되는 이미지 품질을 나타내는 캡처 파라미터 중 적어도 하나를 포함하는, 시스템.According to claim 13,
Each set of capture parameters included in the plurality of sets of capture parameters associated with different views of a real-world scene are:
a capture parameter indicating a position relative to the real-world scene at which color and depth frames corresponding to a particular view of the real-world scene are captured;
a capture parameter indicating the direction in which color and depth frames corresponding to a particular view of a real-world scene are to be captured;
a capture parameter indicating the field of view from which color and depth frames corresponding to a particular view of a real-world scene are captured; and
A system comprising at least one of a capture parameter indicative of image quality with which color and depth frames corresponding to a particular view of a real-world scene are captured.
실세계 장면의 맞춤화된 뷰와 연관된 부가적인 세트의 캡처 파라미터들은:
실세계 장면의 맞춤화된 뷰와 연관된 맞춤화된 시야를 나타내는 캡처 파라미터로서, 맞춤화된 시야는 가상화된 투영을 위해 컬러 및 깊이 프레임들의 렌더링이 기초하는 표면 데이터 프레임 시퀀스들 중 적어도 하나와 연관된 캡처된 시야보다 좁은, 맞춤화된 시야를 나타내는 캡처 파라미터; 및
실세계 장면의 맞춤화된 뷰와 연관된 맞춤화된 이미지 품질을 나타내는 캡처 파라미터로서, 맞춤화된 이미지 품질은 가상화된 투영을 위해 컬러 및 깊이 프레임들의 렌더링이 기초하는 표면 데이터 프레임 시퀀스들 중 적어도 하나와 연관된 캡처된 이미지 품질보다 낮은, 맞춤화된 이미지 품질을 나타내는 캡처 파라미터 중 적어도 하나를 포함하는, 시스템.According to claim 13,
An additional set of capture parameters associated with a customized view of a real world scene are:
A capture parameter representing a customized field of view associated with a customized view of a real-world scene, the customized field of view narrower than the captured field of view associated with at least one of the surface data frame sequences on which the rendering of color and depth frames for the virtualized projection is based. , capture parameters representing customized fields of view; and
A capture parameter representing a customized image quality associated with a customized view of a real-world scene, the customized image quality associated with at least one of the surface data frame sequences upon which the rendering of color and depth frames for a virtualized projection is based. and at least one of the capture parameters indicating a customized image quality that is lower than quality.
적어도 하나의 물리적 컴퓨팅 디바이스는:
실세계 장면의 하나 이상의 기하학적 속성들에 대해 실세계 장면을 분석하고;
실세계 장면의 분석에 기초하여, 복수의 세트들의 캡처 파라미터들에 포함된 캡처 파라미터들의 세트들과 별개이고 부가적인 세트의 캡처 파라미터들을 포함하는 복수의 부가적인 세트들의 캡처 파라미터들을 생성하고;
복수의 부가적인 세트들의 캡처 파라미터들로부터 부가적인 세트의 캡처 파라미터들을 식별함으로써 부가적인 세트의 캡처 파라미터들을 식별하는, 시스템.According to claim 13,
At least one physical computing device is:
analyze the real-world scene for one or more geometric properties of the real-world scene;
generate a plurality of additional sets of capture parameters that include an additional set of capture parameters that are distinct from the sets of capture parameters included in the plurality of sets of capture parameters based on the analysis of the real-world scene;
A system that identifies an additional set of capture parameters by identifying an additional set of capture parameters from a plurality of additional sets of capture parameters.
가상화된 표면 데이터 프레임 시퀀스 이외의 적어도 하나의 부가적인 캡처되거나 가상화된 표면 데이터 프레임 시퀀스는 복수의 캡처된 표면 데이터 프레임 시퀀스들에서 캡처된 표면 데이터 프레임 시퀀스를 포함하는, 시스템.According to claim 13,
wherein the at least one additional captured or virtualized surface data frame sequence other than the virtualized surface data frame sequence comprises a surface data frame sequence captured in the plurality of captured surface data frame sequences.
가상화된 표면 데이터 프레임 시퀀스 이외의 적어도 하나의 부가적인 캡처되거나 가상화된 표면 데이터 프레임 시퀀스는 실세계 장면의 부가적인 가상화된 투영을 위한 부가적인 가상화된 표면 데이터 프레임을 포함하는, 시스템.According to claim 13,
The system of claim 1 , wherein at least one additional sequence of captured or virtualized surface data frames other than the sequence of virtualized surface data frames comprises additional virtualized surface data frames for additional virtualized projections of a real-world scene.
상기 단일 타일링된 프레임 시퀀스의 상기 타일링된 프레임들은 상기 공유된 전송 스트림의 타일 비디오 데이터 스트림으로 패키징되는, 시스템.According to claim 13,
wherein the tiled frames of the single tiled frame sequence are packaged into a tiled video data stream of the shared transport stream.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/610,595 | 2017-05-31 | ||
US15/610,595 US10269181B2 (en) | 2017-05-31 | 2017-05-31 | Methods and systems for generating a virtualized projection of a customized view of a real-world scene for inclusion within virtual reality media content |
PCT/US2018/034430 WO2018222498A1 (en) | 2017-05-31 | 2018-05-24 | Methods and systems for generating a virtualized projection of a customized view of a real-world scene for inclusion within virtual reality media content |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200013672A KR20200013672A (en) | 2020-02-07 |
KR102499904B1 true KR102499904B1 (en) | 2023-02-16 |
Family
ID=62599738
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020197035490A KR102499904B1 (en) | 2017-05-31 | 2018-05-24 | Methods and systems for creating a virtualized projection of a customized view of a real world scene for inclusion within virtual reality media content |
Country Status (6)
Country | Link |
---|---|
US (2) | US10269181B2 (en) |
EP (1) | EP3631767A1 (en) |
JP (1) | JP7194125B2 (en) |
KR (1) | KR102499904B1 (en) |
CN (1) | CN110663067B (en) |
WO (1) | WO2018222498A1 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7003994B2 (en) * | 2017-08-08 | 2022-01-21 | ソニーグループ株式会社 | Image processing equipment and methods |
JP2019114147A (en) * | 2017-12-25 | 2019-07-11 | キヤノン株式会社 | Image processing apparatus, control method for image processing apparatus, and program |
US11113887B2 (en) * | 2018-01-08 | 2021-09-07 | Verizon Patent And Licensing Inc | Generating three-dimensional content from two-dimensional images |
US11410439B2 (en) * | 2019-05-09 | 2022-08-09 | Snap Inc. | Sequence-of-sequences model for 3D object recognition |
GB2586060B (en) * | 2019-08-01 | 2022-09-21 | Sony Interactive Entertainment Inc | Surface characterisation apparatus and system |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150294492A1 (en) * | 2014-04-11 | 2015-10-15 | Lucasfilm Entertainment Co., Ltd. | Motion-controlled body capture and reconstruction |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6084979A (en) | 1996-06-20 | 2000-07-04 | Carnegie Mellon University | Method for creating virtual reality |
US6707487B1 (en) * | 1998-11-20 | 2004-03-16 | In The Play, Inc. | Method for representing real-time motion |
EP1862969A1 (en) * | 2006-06-02 | 2007-12-05 | Eidgenössische Technische Hochschule Zürich | Method and system for generating a representation of a dynamically changing 3D scene |
US8411149B2 (en) * | 2006-08-03 | 2013-04-02 | Alterface S.A. | Method and device for identifying and extracting images of multiple users, and for recognizing user gestures |
US8885023B2 (en) * | 2010-09-01 | 2014-11-11 | Disney Enterprises, Inc. | System and method for virtual camera control using motion control systems for augmented three dimensional reality |
US9013550B2 (en) * | 2010-09-09 | 2015-04-21 | Qualcomm Incorporated | Online reference generation and tracking for multi-user augmented reality |
US9329469B2 (en) * | 2011-02-17 | 2016-05-03 | Microsoft Technology Licensing, Llc | Providing an interactive experience using a 3D depth camera and a 3D projector |
KR101378910B1 (en) * | 2012-08-28 | 2014-03-31 | 광운대학교 산학협력단 | An Intermediate View Image Generation Method for an Virtual Arbitrary View-Point Hologram Service |
US20140192164A1 (en) | 2013-01-07 | 2014-07-10 | Industrial Technology Research Institute | System and method for determining depth information in augmented reality scene |
US20160042475A1 (en) * | 2013-03-15 | 2016-02-11 | William F. Tapia | Social networking for surfers |
WO2015014773A1 (en) * | 2013-07-29 | 2015-02-05 | Koninklijke Kpn N.V. | Providing tile video streams to a client |
CN104023221B (en) * | 2014-06-23 | 2016-04-13 | 深圳超多维光电子有限公司 | Stereo image parallax control method and device |
CN106157359B (en) * | 2015-04-23 | 2020-03-10 | 中国科学院宁波材料技术与工程研究所 | Design method of virtual scene experience system |
KR102341267B1 (en) * | 2015-05-04 | 2021-12-20 | 삼성전자주식회사 | Apparatus and Method of rendering for binocular disparity image |
CA3004241A1 (en) * | 2015-11-11 | 2017-05-18 | Sony Corporation | Encoding apparatus and encoding method, decoding apparatus and decoding method |
US10979691B2 (en) * | 2016-05-20 | 2021-04-13 | Qualcomm Incorporated | Circular fisheye video in virtual reality |
-
2017
- 2017-05-31 US US15/610,595 patent/US10269181B2/en active Active
-
2018
- 2018-05-24 KR KR1020197035490A patent/KR102499904B1/en active IP Right Grant
- 2018-05-24 JP JP2019566146A patent/JP7194125B2/en active Active
- 2018-05-24 WO PCT/US2018/034430 patent/WO2018222498A1/en active Application Filing
- 2018-05-24 EP EP18731298.8A patent/EP3631767A1/en active Pending
- 2018-05-24 CN CN201880034341.7A patent/CN110663067B/en active Active
-
2019
- 2019-03-08 US US16/296,801 patent/US11055917B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150294492A1 (en) * | 2014-04-11 | 2015-10-15 | Lucasfilm Entertainment Co., Ltd. | Motion-controlled body capture and reconstruction |
Also Published As
Publication number | Publication date |
---|---|
US10269181B2 (en) | 2019-04-23 |
EP3631767A1 (en) | 2020-04-08 |
JP7194125B2 (en) | 2022-12-21 |
JP2020522801A (en) | 2020-07-30 |
US20180350147A1 (en) | 2018-12-06 |
CN110663067B (en) | 2023-10-31 |
KR20200013672A (en) | 2020-02-07 |
US20190206138A1 (en) | 2019-07-04 |
US11055917B2 (en) | 2021-07-06 |
CN110663067A (en) | 2020-01-07 |
WO2018222498A1 (en) | 2018-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10636220B2 (en) | Methods and systems for generating a merged reality scene based on a real-world object and a virtual object | |
KR102499904B1 (en) | Methods and systems for creating a virtualized projection of a customized view of a real world scene for inclusion within virtual reality media content | |
US10699471B2 (en) | Methods and systems for rendering frames based on a virtual entity description frame of a virtual scene | |
US11197038B2 (en) | Systems and methods for synchronizing surface data management operations for virtual reality | |
US10586377B2 (en) | Methods and systems for generating virtual reality data that accounts for level of detail | |
US10699749B2 (en) | Methods and systems for customizing virtual reality data | |
US10347037B2 (en) | Methods and systems for generating and providing virtual reality data that accounts for level of detail |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |