CN110663067B - 用于生成现实世界场景的定制视图的虚拟化投影以包括在虚拟现实媒体内容中的方法和系统 - Google Patents
用于生成现实世界场景的定制视图的虚拟化投影以包括在虚拟现实媒体内容中的方法和系统 Download PDFInfo
- Publication number
- CN110663067B CN110663067B CN201880034341.7A CN201880034341A CN110663067B CN 110663067 B CN110663067 B CN 110663067B CN 201880034341 A CN201880034341 A CN 201880034341A CN 110663067 B CN110663067 B CN 110663067B
- Authority
- CN
- China
- Prior art keywords
- real
- world scene
- capture
- surface data
- captured
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 54
- 238000009877 rendering Methods 0.000 claims description 18
- 238000004458 analytical method Methods 0.000 claims description 4
- 238000004891 communication Methods 0.000 description 36
- 230000008569 process Effects 0.000 description 12
- 238000007726 management method Methods 0.000 description 10
- 230000008901 benefit Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 4
- 238000013481 data capture Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000005538 encapsulation Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241000592183 Eidolon Species 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000004886 head movement Effects 0.000 description 1
- 238000007654 immersion Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 230000033001 locomotion Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
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
- G06T15/205—Image-based rendering
-
- 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
-
- 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)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computing Systems (AREA)
- Geometry (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
示例性虚拟化投影生成系统(“系统”)接收多个捕获的表面数据帧序列,每个捕获的表面数据帧序列都包括颜色和深度帧,所述颜色和深度帧按照包括在与现实世界场景的不同视图相关联的多个捕获参数集中的相应捕获参数集来描绘所述现实世界场景。所述系统识别与所述现实世界场景的定制视图相关联的附加捕获参数集,所述定制视图与不同的捕获视图不同。基于所述捕获的表面数据帧序列和所述附加捕获参数集,所述系统对用于所述现实世界场景的所述虚拟化视图的虚拟化投影的颜色和深度帧进行渲染。所述系统然后提供虚拟化表面数据帧序列以包括在虚拟现实媒体内容内,所述虚拟化表面数据帧序列包括用于所述现实世界场景的所述定制视图的所述虚拟化投影的经过渲染的颜色和深度帧。
Description
相关申请
本申请要求于2017年5月31日提交的标题为“METHODS AND SYSTEMS FORGENERATING A VIRTUALIZED PROJECTION OF A CUSTOMIZED VIEW OF A REAL-WORLDSCENE FOR INCLUSION WITHIN VIRTUAL REALITY MEDIA CONTENT(用于生成现实世界场景的定制视图的虚拟化投影以包括在虚拟现实媒体内容中的方法和系统)”的美国专利申请第15/610,595号的优先权,其以引用的方式整体并入本文。
背景技术
可以向虚拟现实媒体内容的用户(即,观看者)呈现虚拟现实媒体内容,以通过将用户的注意力转移到同时正在呈现的各种事物中的任何事物而使用户沉浸在用户可以体验到的交互式虚拟现实世界中。例如,在虚拟现实媒体内容的呈现期间的任何时间,体验虚拟现实媒体内容的用户可以在任何方向上环顾沉浸式虚拟现实世界,从而使用户感觉到他或她实际上正处于沉浸式虚拟现实世界中并从沉浸式虚拟现实世界内的特定位置和视角(例如,方位、视点等)来体验沉浸式虚拟现实世界。
在一些示例中,可能希望沉浸式虚拟现实世界是基于现实世界场景。例如,在虚拟现实媒体内容中表示的沉浸式虚拟现实世界的一些或者全部可以模拟风景、位置、事件、对象和/或现实世界中存在的其他主题,与只能存在于虚拟或虚构世界中相反。这样,捕获设备(例如,图像和/或视频捕获设备,诸如,照相机、摄像机等)可以用于检测、记录和/或捕获表示现实世界场景的数据,使得数据可以包括在可从其生成现实世界场景的表示的虚拟现实媒体内容中。遗憾的是,将物理捕获设备相对于现实世界场景定位,以便从可能期望的每个位置、方位、视野等捕获数据可能是不可能或不切实际的。
此外,即使要使用大量物理捕获设备来从大量位置、方位、视野等捕获数据,将由这些捕获设备捕获的所有数据包括在提供给用户的虚拟现实媒体内容中也可能是不切实际和/或低效率的。例如,数据分发限制(例如,网络带宽、设备解码能力等)、捕获的数据中的显著冗余、描述同时与虚拟现实媒体内容的不同用户有不同相关性的现实世界场景的不同细节的数据以及其他因子均可能导致使用大量物理捕获设备来捕获和分发表示现实世界场景的数据是不切实际和/或低效率的。
附图说明
附图示出了各种实施例,并且是说明书的一部分。示出的实施例仅是示例,并且不限制本公开的范围。在所有附图中,相同或相似的附图标记表示相同或相似的元件。
图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示出了根据本文描述的原理的示例性计算设备。
具体实施方式
本文描述了用于生成现实世界场景的定制视图的虚拟化投影以包括在虚拟现实媒体内容中的方法和系统。例如,如下面更详细描述的,虚拟化投影生成系统可以接收(例如,请求、获取、访问等)多个捕获的表面数据帧序列。多个捕获的表面数据帧序列中的每个表面数据帧序列都可以包括颜色和深度帧,该颜色和深度帧按照包括在与现实世界场景的不同视图相关联的多个捕获参数集中的相应捕获参数集描绘现实世界场景。例如,与现实世界场景的每个视图都相关联的每个捕获参数集都可以包括表示捕获位置、方位、视野、深度映射、深度范围、质量等级、格式、源、动态范围和/或其他特性的参数,相应表面数据帧序列通过这些参数表示现实世界场景的视图。多个捕获的表面数据帧序列中的每个表面数据帧序列都可以由相对于现实世界场景设置在不同位置以捕获现实世界场景的不同视图的多个捕获设备中的不同捕获设备捕获。例如,每个不同的捕获设备都可以与多个捕获参数集中的不同捕获参数集之一相关联(例如,配置为根据该集合捕获现实世界场景)。
除了接收与不同的捕获参数集相关联的多个表面数据帧序列之外,虚拟化投影生成系统还可以识别与包括在多个捕获参数集中的捕获参数集不同的附加捕获参数集。附加捕获参数集可以与现实世界场景的定制视图相关联,该定制视图与由多个捕获设备捕获的现实世界的不同视图不同。基于多个捕获的表面数据帧序列中的表面数据帧序列并且基于附加捕获参数集,虚拟化投影生成系统可以对用于现实世界场景的定制视图的虚拟化投影的颜色和深度帧进行渲染。
虚拟化投影生成系统可以将包括用于现实世界场景的定制视图的虚拟化投影的经过渲染的颜色和深度帧的虚拟化表面数据帧序列提供给一个或多个其他系统(例如,提供给与用户相关联的一个或多个媒体播放器设备、提供给虚拟现实媒体内容提供商流水线中的一个或多个下游系统等)。例如,虚拟化投影生成系统可以提供虚拟化表面数据帧序列以包括在媒体播放器设备的虚拟现实内容(例如,配置为通过虚拟现实媒体提供商流水线流传输到与体验虚拟现实媒体内容的用户相关联的媒体播放器设备的虚拟现实媒体内容)中。
本文描述的用于生成现实世界场景的定制视图的虚拟化投影以包括在虚拟现实媒体内容中的方法和系统可以提供各种优势和益处。作为一个示例,本文描述的系统和方法可以允许基于任意捕获参数(例如,任意捕获位置、方位、视野、深度映射、质量等级、源、动态范围等)为现实世界场景的定制视图生成表示虚拟化投影的数据(例如,虚拟化表面数据帧序列等)。这样,虚拟化表面数据帧序列可以与捕获的表面数据帧序列一起生成和提供,以覆盖可服务于特定实施方式的现实世界场景的一组鲁棒的视图。例如,本文描述的方法和系统可以允许相对少量的物理捕获设备捕获可以从其生成大量虚拟化表面数据帧序列以表示现实世界场景的定制视图的数据,而不是试图相对于现实世界场景将大量物理捕获设备定位在不同的位置(例如,以向不同的对象的不同等级的细节提供各种不同的比特深度等)。
另外,通过生成与各种不同捕获参数集(例如,表示各种不同有利点、各种不同捕获分辨率等的参数)相关联的捕获数据(例如,表面数据帧序列),本文描述的系统和方法可以有助于由物理捕获设备捕获且包括在提供给最终用户的虚拟现实媒体内容中的数据的实用且有效的分发。例如,由设置在现实世界场景周围的8个捕获设备捕获的高分辨率数据不仅可以用于生成从8个捕获设备的相应视图描绘现实世界场景的8个高分辨率捕获表面数据帧序列,而且可以用于生成和与捕获设备的视图不同(例如,与其不对齐)的各种定制视图相关联的相对大量的(例如,300个)低分辨率虚拟化表面数据帧序列。
接收虚拟化表面数据帧序列的虚拟现实媒体内容提供商系统可能受益于在系统于特定时间将什么数据提供给特定媒体播放器设备(即,包括在提供给特定媒体播放器设备的虚拟现实媒体内容中)方面增加的灵活性。这样,虚拟现实媒体内容提供商可能受益于以下能力的增加:优化提供给媒体播放器设备的数据,诸如,通过不将与媒体播放器设备相对无关的大量数据发送给媒体播放器设备(例如,基于媒体播放器设备正在提供给用户的特定虚拟现实体验的各个方面)和通过使用在表面的深度表示中的优化比特深度来提供数据,以优化深度精度和/或深度分辨率,如将在下面更详细地描述的。
作为示例,可以更有选择且更灵活地分发定制数据,而不是将由8个物理捕获设备捕获的所有高分辨率数据分发到每个媒体播放器设备(由于大量数据,这可能是不切实际或不可能的)。具体地,例如,为第一媒体播放器设备定制的数据(例如,表示选自一组鲁棒的虚拟化表面数据帧序列的几个虚拟化表面数据帧序列的数据)可以分发到第一媒体播放器设备以提供与第一媒体播放器设备的用户有关的现实世界场景的一部分的高等级细节,而为第二媒体播放器设备定制的数据(例如,表示几个不同的虚拟化表面数据帧序列的数据)可以分发到第二媒体播放器设备以提供与第二媒体播放器设备的用户有关的另一部分的高等级细节。这样,虚拟现实媒体内容提供商系统可以向第一和第二媒体播放器设备两者提供与它们各自的用户有关的数据(例如,为用户正在体验的现实世界场景的相应部分定制的本地化数据),而不是使任何一个媒体播放器设备(或用于与媒体播放器设备通信的任何分发信道)过载关于现实世界场景与相应用户不太相关的部分的过量冗余数据或细节数据。以这种方式,即使用户体验通过更高的分辨率和更现实且沉浸式的内容得到改进,数据分发也可以通过要求更少的数据分发到客户端侧媒体播放器设备而得到改进和提高效率。这种改进的产生是因为虚拟现实媒体内容被定制为动态地包括仅现实世界场景的最相关的部分的高质量表示。
现在将参考附图更详细地描述各种实施例。所公开的方法和系统可以提供上述益处中的一种或多种和/或将在本文中变得显而易见的各种附加和/或替代性益处。
图1示出了用于生成现实世界场景的定制视图的虚拟化投影以包括在虚拟现实媒体内容中的示例性虚拟化投影生成系统100(“系统100”)。如图所示,系统100可以包括但不限于选择性地且通信地彼此耦合的通信设施102、表面数据帧序列管理设施104、虚拟化投影生成设施106和存储设施108。要认识到,尽管设施102至108在图1中被示出为单独的设施,然而,设施102至108可以被组合成更少的设施,诸如,被组合成可服务于特定实施方式的单个设施,或者可以被划分成可服务于特定实施方式的更多的设施。在一些示例中,设施102至108中的各个设施都可以分布在可服务于特定实施方式的多个设备和/或多个位置之间。另外,要理解,在系统100的某些实施方式中,图1中示出的某些设施(以及与这些设施相关联的相关功能)可以从系统100省略。现在将参考本文包括的某些其他附图更详细地描述设施102至108中的每一个。
通信设施102可以包括执行与发送和接收由系统100使用和/或提供的数据相关联的各种操作的一个或多个物理计算设备(例如,硬件和/或软件组件,诸如,处理器、存储器、通信接口、存储在存储器中以供处理器执行的指令等)。例如,通信设施102可以接收(或有助于接收)多个捕获的表面数据帧序列,每个捕获的表面数据帧序列都包括颜色和深度帧,该颜色和深度帧按照包括在与现实世界场景的不同视图相关联的多个捕获参数集中的相应捕获参数集描绘现实世界场景。
通信设施102可以按照可服务于特定实施方式的任何方式接收多个捕获的表面数据帧序列。例如,在某些实施例中,多个捕获的表面数据帧序列中的每个表面数据帧序列都可以由相对于现实世界场景设置在不同位置以捕获现实世界场景的不同视图的多个捕获设备中的不同捕获设备捕获(例如,生成)。这样,通信设施102可以通过例如请求和接收由捕获设备发送的数据或访问或获取来自捕获设备的数据直接从多个捕获设备接收数据(例如,捕获的表面数据帧序列)。在其他示例中,一个或多个其他系统(例如,现实世界场景捕获系统)可以介于捕获设备与系统100之间,使得通信设施102可以通过一个或多个其他系统接收捕获的表面数据帧序列。
另外或者可替代地,通信设施102可以将数据(例如,虚拟化表面数据帧序列或由系统100接收和/或生成的其他数据)提供给虚拟现实媒体内容提供商流水线中的其他服务器侧系统和/或提供给最终用户使用的客户端侧媒体播放器设备。如本文中所使用的,“服务器侧”可以指服务器-客户端事务的服务器侧(例如,提供商侧),诸如,内容提供商系统向最终用户使用的客户端设备提供内容(例如,虚拟现实媒体内容)的事务。例如,如下面将更详细描述的,虚拟现实媒体内容提供商系统可以将虚拟现实媒体内容提供给与用户相关联的媒体播放器设备。这样,服务器侧系统和组件可以指与内容提供商系统相关联(例如,包括在其中、由其实现、与其互操作等)以向媒体播放器设备(例如,通过网络)提供数据(例如,虚拟现实媒体内容)的系统和组件。与之相比,“客户端侧”设备可以与网络另一侧上的用户使用的客户端设备(例如,媒体播放器设备)相关联,并且可以包括有助于客户端设备从内容提供商系统(例如,用户在网络的用户侧上操作的媒体播放器设备和/或其他计算机组件)接收数据的设备。
通信设施102可以配置为使用可服务于特定实施方式的任何通信接口、协议和/或技术来与服务器侧和/或客户端侧系统通信。例如,通信设施102可以配置为通过一个或多个网络(例如,有线或无线局域网、广域网、提供商网络、互联网等)、有线通信接口(例如,通用串行总线(“USB”))、无线通信接口或任何其他合适的通信接口、协议和/或技术进行通信。
表面数据帧序列管理设施104可以包括一个或多个物理计算组件(例如,与通信设施102的硬件和/或软件组件分开或者与通信设施102共享的硬件和/或软件组件),其执行与组织、同步、维持、追踪和/或管理已由系统100接收或生成的表面数据帧序列和与表面数据帧序列相关联的相应捕获参数集相关联的各种操作。例如,表面数据帧序列管理设施104可以维持与捕获的表面数据帧序列(例如,由捕获设备捕获并且由通信设施102接收的表面数据帧序列,如上所述)相关联的捕获参数集和/或可以识别(或有助于识别)与和捕获的表面数据帧序列相关联的捕获参数集不同的一个或多个附加捕获参数集。例如,表面数据帧序列管理设施104可以识别分别与现实世界场景的一个或多个定制视图相关联的一个或多个捕获参数集,该定制视图与由多个捕获设备捕获的现实世界场景的不同视图不同。表面数据帧序列管理设施104可以进一步执行本文中描述的和/或可服务于系统100的特定实施方式的其他操作。
虚拟化投影生成设施106可以包括一个或多个物理计算组件(例如,与设施102和/或104的硬件和/或软件组件分开或与设施102和/或104共享的硬件和/或软件组件),其执行与准备、形成、渲染或生成现实世界场景的视图(例如,定制视图)的虚拟化投影和/或与其相关联的数据相关联的各种操作。例如,虚拟化投影生成设施106可以对用于现实世界场景的定制视图的虚拟化投影的颜色和深度帧进行渲染。更具体地,例如,虚拟化投影生成设施106可以基于由通信设施102接收的表面数据帧序列中的至少一个并且进一步基于由表面数据帧序列管理设施104识别的附加捕获参数集来对颜色和深度帧进行渲染。虚拟化投影设施106也可以基于(例如,包括)用于虚拟化投影的经过渲染的颜色和深度帧生成虚拟化表面数据帧序列。一旦生成了虚拟化表面数据帧序列,虚拟化投影设施106就可以提供表面数据帧序列以包括在与用户相关联的媒体播放器设备的虚拟现实媒体内容中。可替代地,如上所述,在某些实施方式中,可以通过通信设施102提供虚拟化表面数据帧序列以包括在虚拟现实媒体内容中。虚拟化投影设施106可以进一步执行本文中描述的和/或可服务于系统100的特定实施方式的其他操作。
在特定实施方式中,存储设施108可以存储和/或维持由设施102至106接收、生成、管理、追踪、维持、使用和/或发送的任何合适的数据。例如,如图所示,存储设施108可以包括表面数据帧序列数据110和/或捕获参数数据112,其可以以本文描述的任何方式接收、生成、管理、追踪、维持、使用和/或发送(例如,提供给其他系统)。另外,存储设施108可以包括系统100的特定实施方式所使用的其他类型的数据,诸如,用于执行本文描述的操作的指令(例如,编程指令)和/或供设施102至106用来执行本文描述的操作的其他数据。存储设施108可以按照本文描述的任何方式实施并且可以包括存储数据的任何暂时性或者非暂时性模式的硬件和/或软件,包括但不限于随机存取存储器(“RAM”)、非暂时性存储装置(例如,磁盘存储装置、闪存存储装置等)。
在一些示例中,当在现实世界场景中发生事件时,系统100可以实时地执行本文描述的一个或多个操作。因此,在其他系统也实时运行的虚拟现实媒体内容提供商流水线中使用了系统100的实施方式中,可以将虚拟现实媒体内容(例如,包括由系统100实时生成的虚拟化表面数据帧序列的虚拟现实媒体内容)提供给媒体播放器设备,使得可能在物理上不靠近现实世界场景但其可能希望体验现实世界场景(例如,现实世界场景中发生的事件)的媒体播放器设备的相应用户可以使用他们的各自媒体播放器设备虚拟地体验现实世界场景以及其中现场发生的事件(例如,当事件发生时,实时地体验)。尽管数据处理和数据分发可能会花费有限的时间,使得用户可能无法在现实世界场景中发生事件时恰好体验到现实世界场景,然而,如本文所用的,当立即且没有不必要的延迟地执行操作时,被认为是“实时”地执行操作。因此,即使用户在延迟之后(例如,实际发生几秒钟或几分钟之后)体验到现实世界场景内的特定事件,也可以说用户实时体验了现实世界场景。
如上所述,在某些实施例中,系统100可以生成表示相对大量的虚拟化投影的数据。这种数据可以提供关于如何可以生成虚拟现实媒体内容(例如,使用数据的虚拟现实媒体内容)并且将其分发到客户端侧媒体播放器设备的灵活性。例如,通过生成表示现实世界场景的大量本地化虚拟投影的数据,可以将与一个用户的体验有关的细节提供给与该用户相关联的媒体播放器设备,而不提供给细节与其不太相关的另一用户的媒体播放器设备。
在系统100的一种具体实施方式中,例如,通信设施102可以接收(例如,在事件发生在现实世界场景中时实时地)多个捕获的表面数据帧序列,每个捕获的表面数据帧序列都包括颜色和深度帧,该颜色和深度帧按照包括在与现实世界场景的不同视图相关联的第一多个捕获参数集中的相应捕获参数集来描绘现实世界场景。如上所述,多个捕获的表面数据帧序列中的每个表面数据帧序列都可以由相对于现实世界场景设置在不同位置以捕获现实世界场景的不同视图的多个捕获设备中的不同捕获设备捕获。除了接收捕获的表面数据帧序列之外,表面数据帧序列管理设施104可以识别与包括在第一多个捕获参数集中的捕获参数集不同的第二多个捕获参数集。例如,第二多个捕获参数集中的每个捕获参数集都可以与现实世界场景的相应定制视图相关联,该定制视图与由多个捕获设备捕获的现实世界场景的不同视图不同。例如,第二多个捕获参数集可以包括相对大量的捕获参数集(例如,与包括在第一多个捕获参数集中的集合相比数量更多的集合)。这种识别操作也可以在事件发生在现实世界场景中时实时地执行。
响应于识别第二多个捕获参数集,虚拟化投影生成设施106可以基于多个捕获的表面数据帧序列和基于第二多个捕获参数集对用于现实世界场景的每个相应定制视图的虚拟化投影的颜色和深度帧进行渲染。在一些示例中,虚拟化投影生成设施106可以将经过渲染的颜色和深度帧封装成被包括在可以由一个或多个传输流等传输的相应虚拟化表面数据帧序列中,如将在下面更详细地描述的。这种渲染和/或数据封装也可以在事件发生在现实世界场景中时实时地执行。这样,通信设施102可以提供包括用于现实世界场景的每个相应定制视图的虚拟化投影的经过渲染的颜色和深度帧的多个虚拟化表面数据帧序列(例如,在事件发生在现实世界场景中时实时地)。例如,可以提供多个虚拟化表面数据帧序列以包括在媒体播放器设备的虚拟现实内容(例如,配置为通过虚拟现实媒体提供商流水线实时地流传输到与体验虚拟现实媒体内容的用户相关联的媒体播放器设备的虚拟现实媒体内容)中。
表示现实世界场景的数据(例如,由系统100接收的表面数据帧序列)可以按照设置在任何合适的配置中的可服务于特定实施方式的任何合适的系统和/或设备捕获。例如,如上所述,由系统100接收的多个捕获的表面数据帧序列中的每个表面数据帧序列都可以由相对于现实世界场景设置在不同位置以捕获现实世界场景的不同视图的多个捕获设备中的不同捕获设备捕获。
为了进行说明,图2示出了示例性配置200,在该示例性配置200中,表示示例性现实世界场景的数据是从现实世界场景的不同视图捕获的。具体地,如在配置200中示出的,包括现实世界对象204的现实世界场景202被现实世界场景202的多个视图206(例如,视图206-1至206-8)围绕。
现实世界场景202可以表示可服务于特定实施方式的任何现实世界风景、现实世界位置、现实世界事件(例如,现场事件等)或现实世界中存在的其他主题(例如,与只能存在于虚拟世界或虚构世界中相反)。如图2中表示现实世界场景202的圆圈所示,现实世界场景202可以是具体描绘的区域,诸如,舞台、竞技场等。相反,在其他示例中,现实世界场景202可能未很好地定义或描绘。例如,现实世界场景202可以包括任何室内或室外现实世界位置,诸如,城市街道、博物馆、风景名胜等。在某些示例中,现实世界场景202可以与现实世界事件相关联,诸如,体育赛事、音乐事件、戏剧或剧场表演、大规模庆祝活动(例如,时代广场上的新年夜、狂欢节(Mardis Gras)等)、政治事件或任何其他现实世界事件。在相同或其他示例中,现实世界场景202可以与可服务于特定实施方式的在任何其他室内或室外现实世界位置处的小说化场景(例如,一组真人虚拟现实电视节目或电影)和/或任何其他场景的设置相关联。
因此,现实世界对象204可以表示与现实世界场景202相关联(例如,位于现实世界场景202内或周围)并且可以从至少一个视图206可检测到(例如,可观看到的,等等)的任何现实世界对象,无论是活着的还是无生命的。尽管为了清楚起见,将现实世界对象204绘制为相对简单的几何形状,但是要理解,现实世界对象204可以表示具有各种复杂程度的各种类型的对象。除了几何形状,例如,现实世界对象204可以表示任何有生命或无生命的对象或表面,诸如,人或另一种生物、不透明的固体、液体或气体、不太离散的对象(诸如,墙壁、天花板、地板)、或本文描述的或可服务于特定实施方式的任何其他类型的对象。
现实世界对象204可以包括各种表面,每个表面都可以反射光(例如,现实世界场景202中的环境光、深度捕获设备发出的结构光图案中的红外光等)以被相对于现实世界场景202设置在不同位置以从视图206捕获现实世界场景202的捕获设备检测。虽然现实世界对象204被描绘为相对简单,但是基于从其检测到表面的现实世界场景202的视图206现实世界对象204的表面的深度和/或外观可能看起来有所不同,如下所述。换句话说,基于从其观看现实世界对象204的视角(例如,位置、有利点等),现实世界对象204看起来可能不同。
如上所述,现实世界场景202的视图206可以提供能够从其观看现实世界场景202(例如,包括现实世界对象204)的不同视角、有利点等。如下所述,使用从各个不同视图206(例如,围绕现实世界场景202以从各个视角捕获现实世界场景202的视图206)捕获的现实世界场景202的颜色和深度数据,系统100或许能够生成现实世界场景202的任意视图的虚拟化投影。换句话说,使用从一个或多个视图206捕获的颜色和深度数据,系统100可以对用于现实世界场景202的定制视图(例如,与视图206不同的来自位置、方位等的现实世界场景202的任意视图)的虚拟化投影的颜色和深度数据进行渲染。
各个视图206都可以相对于现实世界场景202固定。例如,现实世界场景202和视图206都可以是静态的,或者现实世界场景202和视图206可以是一起运动的。在一些示例中,诸如,在配置200中所示,视图206可以沿着与现实世界场景202相关联的至少两个维度(例如,沿着诸如地面等平面)围绕现实世界场景202。在某些示例中,视图206可以沿三个维度围绕现实世界场景202(例如,通过在现实世界场景202上方和下方也包括视图206)。
如围绕设置有视图206的现实世界场景202的不同位置所示,每个视图206都可以与相对于现实世界场景202的特定位置相关联。另外,视图206还可以与将如何捕获现实世界场景202的其他方面相关联。例如,如源于每个视图206的虚线所示,视图206可以与特定捕获方位(例如,与视图206对应的捕获设备面向的特定方向)、特定捕获视野(例如,由捕获设备基于例如捕获设备的镜头有多宽或多窄、捕获设备的缩放比例等捕获的现实世界场景202的区域)等相关联。每个视图206都还可以与图2中未明确示出的捕获方面相关联。例如,每个视图206都可以与和视图206相关联的捕获设备捕获数据的特定质量级别、由捕获设备捕获的数据将被编码的特定格式和/或可服务于特定实施方式的数据捕获的任何其他方面相关联。
在一些示例中,如在配置200中所示,与每个视图206都相关联的有利点(例如,方位、视野等)可以朝着现实世界场景202向内成角度,以便从足够的视角捕获现实世界场景,从而以后能够从可能与视图206未对齐的定制视图重新创建现实世界场景202。另外,在相同或其他示例中,与视图206相关联的有利点中的一个或多个可以向外成角度(即,远离现实世界场景202)以捕获表示围绕现实世界场景202等的对象的数据。例如,可以将具有球形的、朝向外的有利点的360度捕获设备放置在现实世界场景202的中间的位置(未明确示出),以从另外的视角捕获包括在现实世界场景202中的对象和/或捕获现实世界场景202之外的设备。另外或可替代地,在某些示例中,多个朝向外的视图可以允许捕获现实世界场景的全景、广角或360度视图。
为了从每个视图206的视角捕获现实世界场景202,多个捕获设备中的不同捕获设备可以设置在视图206的各个不同位置。为了进行说明,图3A示出了捕获颜色和深度帧以包括在表示现实世界场景202的表面数据帧序列中的示例性捕获设备302。
如图3A所示,捕获设备302可以与视图206-1相关联,并且因此,可以相对于现实世界场景202和现实世界对象204设置在对应于视图206-1的位置处。图3A示出了捕获设备302可以包括:二维(“2D”)颜色捕获设备304,其配置为捕获表示现实世界场景202(例如,包括现实世界对象204和/或包括在其中的其他对象)的颜色数据(例如,表示全彩色或灰度图像的2D视频数据);以及深度捕获设备306,其配置为捕获表示现实世界场景202的深度数据。
2D颜色捕获设备304可以由任何合适的2D颜色捕获设备(例如,照相机、摄像机等)来实现,并且可以按照可服务特定实施方式的任何方式来捕获2D颜色数据。在一些示例中,2D颜色捕获设备304可以是与深度捕获设备306分开的设备。总的来说,这样的分开设备(例如,以及用于从功能上将设备融合在一起的任何通信接口和/或其他硬件或软件机构)可以称为捕获设备(例如,捕获设备302)。在其他示例中,如图3A所示,2D颜色捕获设备304和深度捕获设备306可以被集成到捕获颜色数据和深度数据两者的单个设备(即,捕获设备302)中,如下所述。
无论是被实施为分开的设备还是与2D颜色捕获设备304集成在一起,深度数据捕获设备306都可以按照可服务于特定实施方式的任何方式捕获表示现实世界场景202的深度数据。例如,深度数据捕获设备306可以采用一种或多种深度图捕获技术,诸如,结构化光深度图捕获技术、立体深度图捕获技术、飞行时间深度图捕获技术、另一种合适的深度图捕获技术、或可服务于特定实施方式的深度图捕获技术的任意组合。
不管用于捕获深度数据的深度图捕获技术的类型和数量如何,捕获设备302都可以从视图206-1捕获表示现实世界对象204的表面和/或包括在现实世界场景202中的其他对象的颜色数据(例如,颜色帧)和深度数据(例如,深度帧)两者。如本文所使用的,几乎同时由捕获设备302捕获的颜色帧和深度帧可以统称为“表面数据帧”或“颜色和深度帧”,因为包括在这些帧中的数据表示描述包括在现实世界场景中的现实世界对象的表面(即,表面的可见外观以及表面的深度几何形状两者)的数据。
因此,如本文所使用的,表面数据帧或颜色和深度帧可以指表示与在特定时间点从现实世界场景的特定视图在现实世界场景内可见的现实世界对象的表面相关联的各种类型的数据的数据集。例如,表面数据帧可以包括颜色数据(即,图像数据)以及表示相对于现实世界场景从特定视图看到的对象的深度数据。这样,多个相关的表面数据帧可以被排序在一起以创建从特定视图看到的现实世界场景的类似视频的表示(不仅表示颜色数据还表示深度数据)。在某些示例中,表面数据帧可以进一步与其他类型的数据相关联,诸如,音频数据、元数据(例如,包括描述从其捕获表面数据帧的视图的捕获参数集、关于在表面数据帧中表示的具体现实世界对象的信息等的元数据)和/或可服务于特定实施方式的其他类型的数据。如下面将描述和说明的,表面数据帧的这种序列在本文中可以称为“表面数据帧序列”。
如本文所使用的,“颜色数据”可以广泛地包括任何图像数据、视频数据等,无论是以颜色还是灰度(即,“黑白”)表示,该颜色数据都表示主题(例如,包括在现实世界场景中的现实世界对象)在特定时间点或特定时间段内从特定视图的视角出现。颜色数据并不限于可以与本领域中限定图像数据和/或视频数据的各种定义和/或标准相关联的任何特定格式、文件类型、帧速率、分辨率、质量等级或其他特点。类似地,如本文中所使用的,“深度数据”可以包括表示主题在空间中的位置和/或几何形状的任何数据。例如,表示现实世界对象的深度数据可以包括现实世界对象的表面上的不同点相对于坐标系(例如,与特定捕获设备相关联的坐标系、与现实世界场景相关联的全球坐标系等)的坐标。
与从视图206-1捕获颜色和深度帧的捕获设备302一样,要理解,其他捕获设备可以与其他视图206(例如,图2中的视图206-2至206-8)相关联,以同样从与其他视图206相关联的相应有利点捕获颜色和深度帧。在一些示例中,表面数据帧可以在同一特定时间点被与不同的视图206相关联的不同捕获设备捕获以便彼此同步。如本文所使用的,当表面数据帧是在足够近的时间被捕获以有效地表示在某个时刻(即,与在一段时间内表示该主题相反)的主题(例如,现实世界场景内的现实世界对象)时,表面数据帧可以称为是“在同一特定时间点”被捕获,即使表面数据帧并未在同一瞬间被捕获也是如此。例如,取决于特定主题的动态程度(例如,一个或多个现实世界对象在现实世界场景中移动的速度等),在表面数据帧是在彼此相差例如数十或数百毫秒内被捕获时,或者在可服务于特定实施方式的另一合适的时间框架内(例如,在微秒、毫秒、秒等内)被捕获时,可以将表面数据帧视为是在同一特定时间点被捕获。这样,表面数据帧中的每个都可以表示包括在现实世界场景中的现实世界对象的表面在表面于特定时间点从相应捕获设备所关联的视图206的相应有利点出现时的颜色数据和深度数据。
图3B和图3C示出了由捕获设备302捕获并且包括在颜色和深度帧中(即,在表面数据帧中)的数据的示例性图形描绘。具体地,如图所示,合并到表面数据帧中的颜色帧可以包括颜色数据308(如图3B所示),而合并到表面数据帧中的深度帧可以包括深度数据310(如图3C所示)。
在图3B中,颜色数据308描绘通过捕获设备302内的2D颜色捕获设备304从视图206-1的视角看到的现实世界场景202(例如,包括现实世界对象204)。因为颜色数据308可以表示视频帧序列中的单个视频帧,所以对由颜色数据308表示的现实世界对象204的描绘可以表示现实世界对象204(例如,以及与现实世界场景202相关联的其他对象)如何在特定时间点从视图206-1的有利点出现。虽然在图3B中被示出为图像,但是要理解,可以按照任何合适的形式来捕获、编码、格式化、发送和表示颜色数据308。例如,颜色数据308可以是根据标准视频编码协议、标准图像格式等格式化的数字数据。在一些示例中,颜色数据308可以表示现实世界场景202中的对象的彩色图像(例如,类似于彩色照片)。可替代地,在其他示例中,颜色数据308可以是表示对象的灰度图像(例如,类似于黑白照片)。
在图3C中,深度数据308(类似于颜色数据308)还从视图206-1的视角描绘了现实世界场景202(包括现实世界对象204)。然而,深度数据310可以表示对象(例如,现实世界对象204以及现实世界场景202内的其他对象)的表面上的各个点相对于例如捕获设备302中的深度捕获设备306的深度(即,距离或位置),而不是表示现实世界场景202内的对象的可见外观(例如,以颜色或灰度表示光如何与现实世界对象204的表面交互)。与颜色数据308一样,可以按照任何合适的形式来捕获、编码、格式化、发送和表示深度数据310。例如,如图所示,深度数据310可以由灰度图像数据(例如,由深度捕获设备306捕获的各个像素的六或八个比特)表示。然而,深度数据310的灰度图像可以针对图像中的各个像素表示由该像素表示的点离深度捕获设备306有多远,而不是表示光如何从现实世界对象204的表面反射(即,如在颜色数据308中所表示的)。例如,可以用表示较深的灰色色调的值(例如,在0b111111表示黑色的六比特实施方式的情况下,更接近0b111111的二进制值)来表示更接近深度捕获设备306的点。相反,可以用表示较浅的灰色色调的值(例如,在0b000000表示白色的六比特实施方式的情况下,更接近0b000000的二进制值)来表示离深度捕获设备306更远的点。
在某些示例中,系统100(例如,通信设施102)可以通过一个或多个网络和/或任何其他合适的通信接口、协议和技术通信地耦合至捕获设备302和与其他视图206相关联的其他捕获设备。因此,在这些示例中,通信设施102可以通过一个或多个网络和/或其他通信接口、协议和技术直接从捕获设备接收捕获的表面数据帧序列。在其他示例中,与系统100分开的现实世界场景捕获系统可以与捕获设备中的每一个都通信耦合并且可以配置为管理通过捕获设备中的每一个对表面数据帧进行的捕获并且将表面数据帧序列提供给系统100(例如,在同步和/或处理表面数据帧序列之后)。无论如何,捕获设备、系统100和/或中间现实世界场景捕获系统之间的通信都可以通过网络(例如,有线或无线局域网、广域网、提供商网络、互联网等)、通过有线通信接口(例如,通用串行总线(“USB”))、通过无线通信接口、或通过可服务于特定实施方式的任何其他通信接口、协议和/或技术来实施。
在其他示例中,多个捕获设备可以集成在系统100内或作为系统100的部分(例如,作为表面数据帧序列管理设施104或系统100的另一设施的部分)被包括。这样,在这些示例中,表面数据帧序列管理设施104可以通过使用集成捕获设备捕获表面数据帧序列来接收表面数据帧序列。
图4A和图4B示出了表示由捕获设备302生成的现实世界场景202(从视图206-1的视角)的示例性表面数据帧序列400-1。具体地,图4A示出了描绘能够包括在表面数据帧序列400-1中的某些特定数据的表面数据帧序列400-1的详细图形视图,而图4B示出了没有具体描绘表面数据帧序列400-1的内容的许多细节的表面数据帧序列400-1的统一图形视图。
如图4A所示,表面数据帧序列400-1可以包括各种类型的数据,该数据包括颜色数据、深度数据和元数据。具体地,表面数据帧序列400-1被示出为包括颜色帧序列402、深度帧序列404和捕获参数集406。要理解,表面数据帧序列400-1可以进一步包括在图4A中未明确示出的其他类型的数据(例如,捕获的音频数据、除了捕获参数集406之外的其他元数据等)。另外,要理解,包括在表面数据帧序列400-1中的数据可以按照任何合适的方式设置或格式化。例如,如图所示,包括在表面数据帧序列400-1中的数据可以设置为一个颜色帧序列和一个深度帧序列。在其他示例中,单个捕获设备可以输出多个颜色帧序列和/或多个深度帧序列(例如,以覆盖被捕获的现实世界场景的视野的不同部分)。在其他示例中,表面数据帧序列400-1的数据可以设置为集成表面数据帧的序列,每个集成表面数据帧都包括特定颜色帧、特定深度帧和某些元数据(例如,表示捕获参数集406的数据),或按照可服务于特定实施方式的其他方式设置。
包括在颜色帧序列402的各个颜色帧内的数据可以与上面关于图3描述的颜色数据308相似。然而,颜色帧序列402内的各个颜色帧都可以在稍微不同的时间被捕获,使得颜色帧序列402可以从视图206-1形成现实世界场景202的类似视频的表示。类似地,除了深度帧序列404中的各个深度帧都可以在稍微不同的时间(例如,与捕获颜色帧序列402的颜色帧的时间同步的时间)被捕获,包括在深度帧序列404的各个深度帧中的数据都可以与深度数据310相似,使得深度帧序列404可以从视图206-1形成现实世界场景202的另一种类似视频的表示。
包括在表面数据帧序列400-1中的捕获参数集406可以包括描述从其捕获表面数据帧序列400-1的视图(即,在这种情况下是视图206-1)的元数据。例如,捕获参数集406可以包括指示在何处和/或如何捕获包括在表面数据帧序列400-1中的表面数据帧的各个方面的各种参数。包括在捕获参数集406中的捕获参数可以包括可服务于特定实施方式的与现实世界场景的相应视图相关联的任何合适的捕获参数。
例如,捕获参数集406可以包括表示相对于现实世界场景202的位置的捕获参数,与现实世界场景202的视图206-1对应的颜色和深度帧是从该位置捕获的。作为另一个示例,捕获参数集406可以包括表示方位(例如,与捕获设备指向的不同维度中的不同角度相关联的捕获方位)的捕获参数,与现实世界场景202的视图206-1对应的颜色和深度帧是从该方位捕获的。类似地,作为另一个示例,捕获参数集406可以包括表示视野的捕获参数,与现实世界场景202的视图206-1对应的颜色和深度帧是用该视野来捕获的。另外,作为又一个示例,捕获参数集406可以包括表示图像质量的捕获参数,与现实世界场景202的视图206-1对应的颜色和深度帧是以该图像质量来捕获的。在其他示例中,捕获参数集406可以包括表示其他方面的任何其他合适的捕获参数,与现实世界场景202的视图206-1对应的颜色和深度帧是通过这些其他方面来捕获的。例如,捕获参数集406可以包括表示通过其捕获与视图206-1对应的深度帧的深度映射和/或深度范围的参数、表示用其捕获与视图206-1对应的颜色和深度帧的特定编码、格式、帧速率、动态范围等的参数、捕获源(例如,捕获与视图206-1对应的颜色和深度帧的捕获设备的标识信息)或其他合适的参数。
捕获参数集406可以按照可服务于特定实施方式的任何方式用包括在表面数据帧序列400-1中的其他数据来表示并且与其集成。例如,虽然一些实施方式可以用表示捕获参数的数据(例如,变量等)明确地表示捕获参数406,但是其他实施方式可以表示方位、位置和/或投影信息(例如,视角帧序列的视野和深度映射、正交帧序列的左/右/上/下/近/远等)的格式隐式地表示捕获参数406。例如,表示某些捕获参数406的数据可以组合成表示从特定图像空间到世界空间的齐次坐标的完全转换的单一的抽象矩阵(例如,4×4矩阵)。这样,在该示例中,单独的组件可能不被显式地指定,但是可以包括在更一般的转换中。
另外,在一些示例中,捕获参数集406可以与分别包括在颜色帧序列402和深度帧序列404中的各个颜色帧和/或深度帧集成(例如,对其重复)。在其他示例中,捕获参数集406可以与单独的表面数据帧(例如,组合颜色和深度帧)集成。以这些方式,捕获参数集406可以灵活地描述各个和每个帧的捕获参数,即使视图206在由表面数据帧序列400-1表示的时段内动态改变。在其他示例中,在由表面数据帧序列400-1表示的整个时段内,捕获参数集406都可能是静态的。在这些示例中,捕获参数集406可以与帧序列402和404的帧分开发送。例如,捕获参数集406可以与颜色和深度帧的传输分开发送,诸如,在颜色和深度帧的传输之前、在颜色和深度帧的传输开始时、在颜色和深度帧的传输之后和/或在另一个合适的时间。
如上所述,图4B示出了表面数据帧序列400-1的统一图形视图。具体地,图4B中的表面数据帧序列400-1的视图将表面数据帧序列400-1示出为在从特定视图(即,视图206-1)看到的块前面具有现实世界场景202的描绘(即,包括现实世界对象204)的块。这种类型的表面数据帧序列视图将用于说明下述附图中的附加表面数据帧序列。然而,要理解,使用统一图形视图(诸如,图4B中所示)表示的任何表面数据帧序列可以包括上述任何布置中结合图4A示出和/或描述的所有相同类型的数据。
基于表面数据帧序列400(例如,在图4中明确地示出的表面数据帧序列400-1和在图4中未明确地示出的其他类似的表面数据帧序列,诸如,与视图206-2对应的表面数据帧序列400-2、与视图206-3对应的表面数据帧序列400-3等)中的一个或多个,系统100可以对用于现实世界场景202的定制视图的虚拟化投影的颜色和深度帧进行渲染。例如,系统100可以识别与现实世界场景202的定制视图(例如,与图2所示的视图206不同的视图)相关联的附加捕获参数集(例如,与和表面数据帧序列400相关联的捕获参数集不同的集合),并且可以基于表面数据帧序列400中的至少一个和基于附加捕获参数集对用于定制视图的虚拟化投影的颜色和深度帧进行渲染。
如本文中所使用的,现实世界场景的“定制视图”可以指与和捕获表示现实世界场景的数据的物理捕获设备相关联的视图不同的现实世界场景的任何视图。例如,定制视图可以是为现实世界场景内靠近特定现实世界对象所在的地方的位置(例如,以在现实世界对象上提供改进的深度分辨率或深度精度)、为现实世界场景内没有捕获设备的位置、为可以由与捕获设备相关联的任何视图提供的不同方位、为可以由与捕获设备相关联的任何视图提供的不同视野(例如,与不同的缩放级别、较宽或较窄角度的镜头等相关联的视野)、为可以由与捕获设备相关联的任何视图提供的不同细节级别(例如,图像分辨率等)等定制的。因此,如本文所使用的,现实世界场景的定制视图的“虚拟化投影”可以指表示与定制视图相关联的投影(例如,视角投影、正交投影等)的数据。例如,在某些示例中,虚拟化投影可以包括视角投影,如果这种捕获设备要与定制视图相关联(即,如果捕获设备要捕获具有定义定制视图的捕获参数集的数据),则该视角投影虚拟地模仿将由物理捕获设备捕获的数据。作为另一个示例,虚拟化投影可以包括非视角投影(例如,正交投影等),其不是通过模仿虚拟捕获设备而生成的,而是通过深度剥离技术或者可服务于特定实施方式的生成深度数据的其他合适的技术生成的。
如上所述,定制视图的虚拟化投影可以在现实世界场景、改进的深度分辨率的增加的灵活性和在没有虚拟化投影的情况下部可用的各个其他益处的各个方面提供新的视角。然而,要理解,虚拟化投影可以是基于由物理捕获设备捕获的数据,并且因此,可能无法提供还未被物理捕获设备捕获的任何附加数据。例如,虽然虚拟化投影可以与没有捕获设备所在的现实世界场景的定制视图相关联,但是虚拟化投影可能无法从物理捕获设备所在的视图提供已经不可用的任何新信息。
在某些示例中,现实世界场景202的定制视图可以与用于捕获表示现实世界场景202的数据的特定捕获设备对齐。例如,与现实世界场景202的定制视图相关联(例如,定义其)的附加捕获参数集可以包括调用仅仅由一个捕获设备捕获的数据(例如,调用由捕获设备捕获的数据的子集)的一个或多个捕获参数。
例如,附加捕获参数集可以包括表示与现实世界场景202的定制视图相关联的定制视野的捕获参数,其中,定制视野比与捕获设备所捕获的表面数据帧序列相关联的捕获的视野窄。例如,附加捕获参数集可以调用由特定物理捕获设备捕获的数据的裁剪(即,放大)部分。
作为调用仅仅由一个捕获设备捕获的数据的捕获参数的另一个示例,附加捕获参数集可以包括表示与现实世界场景202的定制视图相关联的定制图像质量的捕获参数,其中,定制图像质量比与捕获设备所捕获的表面数据帧序列相关联的捕获的图像质量低。例如,附加捕获参数集可以调用由特定物理捕获设备捕获的数据的低分辨率版本。
在其他示例中,现实世界场景202的定制视图可能与由相对于现实世界场景202设置在不同位置的多个捕获设备(即,与视图206相关联的捕获设备)捕获的现实世界场景202的不同视图不对齐。这样,对用于现实世界场景202的定制视图的虚拟化投影的颜色和深度帧进行渲染可以包括:基于至少两个表面数据帧序列400对颜色和深度帧进行渲染。与虚拟化投影是基于来自单一捕获设备的数据的上述示例一样,附加捕获参数集在这些示例中可以包括相对于捕获的表面数据帧序列调用窄视野、低图像质量等的捕获参数。然而,在虚拟化投影是基于来自多个捕获设备的数据的示例中,附加捕获参数可以进一步调用可能与任何实际位置、方位等不同的定制位置、定制方位等,数据是由物理捕获设备从上述位置、方位捕获的。
为了进行说明,图5示出了示例性配置500,该示例性配置500是基于配置200(即,其包括上面结合配置200说明和描述的所有相同的元素),但是在该示例性配置500中,表示现实世界场景202的数据是另外为现实世界场景202的定制视图502生成的。具体地,如在配置500中所示,定制视图502可以位于现实世界场景202内,靠近现实世界对象204并且具有面向现实世界对象204的方位和视野。虽然如上所述某些定制视图可以与视图206之一对齐(例如,位于与作为视图206之一相同的位置、提供与视图206之一相同的方位和/或视野等),但是配置500中的定制视图502被示出为与视图206不对齐。如本文中所使用的,如果视图相对于与视图相关联的相应位置、与视图相关联的相应方位和/或与视图相关联的相应视野彼此不同,则视图与另一个视图“不对齐”。在定制视图502和视图206的情况下,例如,定制视图502与所有视图206都不对齐,因为定制视图502设置在与任何视图206不同的位置(即,在现实世界场景202内的位置),具有与任何视图206不同的方位(即,在视图206-1和206-2的相应方位之间的方位),并且具有与任何视图206不同的视野(即,在现实世界对象204上提供较接近的视角的视野)。
这样,基于对定义定制视图502的附加捕获参数集的识别和基于由与视图206相关联的捕获设备捕获的多个表面数据帧序列400(例如,基于表面数据帧序列400-1和400-2),系统100可以对用于现实世界场景202的定制视图502的虚拟化投影的颜色和深度帧进行渲染,并且可以提供包括这些颜色和深度帧的虚拟化表面数据帧序列。
举例来说,图6示出了可以由系统100为定制视图502的虚拟化投影生成和提供的示例性虚拟化表面数据帧序列600。具体地,虚拟化表面数据帧序列600可以被生成以包括用于自动化视图502的虚拟化投影602的经过渲染的颜色和深度帧。如虚拟投影602所示,包括在虚拟化表面数据帧序列600中的颜色和深度帧可以与不同位置、不同方位和不同视野而不是包括在表面数据帧序列400中的任何颜色和深度帧相关联(例如,可能似乎已经被从其捕获)。
具体地,如图所示,虚拟化投影602表示来自现实世界对象204上的特定方位的特写。这可以为下游系统和设备提供各种优势,该下游系统和设备可以从虚拟化投影602所提供的位置、方位和/或视野提供表示现实世界对象204的虚拟现实媒体内容。例如,在深度数据是使用对数量有限的比特(例如,配置为处理颜色数据的现成的视频编解码器的8至12个比特)进行操作的处理源(例如,视频编解码器解决方案)来处理的实施方式中,深度量化问题(诸如,表示较大区域的深度数据的不期望的“分层”)可以通过使用表示更多的局部区域的深度数据来缓解。局部区域可能涉及由可用比特而不是大的(例如,不太局部的)区域表示的较短深度,从而允许数量有限的可用比特来高精度地表示深度以降低或消除分层效果等。这样,用其表示对象的表面的比特深度(例如,用于表示在离有利点的不同距离处的深度的多个比特)可以针对虚拟化投影602优化,以从虚拟化投影602的有利点提供高水平的深度精度和/或深度分辨率。
虽然已经关于图5和图6详细地描述和说明了与特定定制视图(即,定制视图502)相关联的特定附加捕获参数集,但是要理解,在某些实施方式中,可以识别与大量定制视图(例如,明显大于用于捕获表示现实世界场景202的数据的物理捕获设备的数量的数量)相关联的大量捕获参数集,以允许生成和提供大量虚拟化表面数据帧序列,从而可以包括在虚拟现实媒体内容中。如上所述,此大量虚拟化表面数据帧序列可以允许在生成和分发虚拟现实媒体内容时增加灵活性,以向不同的媒体播放器设备提供关于同一现实世界场景的不同细节,而不会用大量冗余或相对无关的数据使任何媒体播放器设备不堪重负。
一个或多个附加捕获参数集(即,除与视图206相关联的捕获参数集之外的捕获参数集)可以按照可服务于特定实施方式的方式来识别。例如,在某些实施方式中,附加捕获参数集(诸如,与定制视图502相关联的捕获参数集)可以通过相对于现实世界场景的一个或多个几何性质分析现实世界场景202、生成(例如,基于对现实世界场景的分析)与和视图206相关联的捕获参数集不同的多个附加捕获参数集以及从多个附加捕获参数集识别附加捕获参数集来识别。具体地,例如,系统100可以确定现实世界场景202的几何性质,诸如,与现实世界场景202的形状、现实世界场景202的各个部分或者现实世界场景202可以被划分的方式、现实世界场景202内的特定对象的位置和/或轨迹等相关联的性质。基于这些和/或其他性质,系统100可以确定各种定制视图(例如,包括定制视图502)都可能与生成虚拟现实媒体内容相关,并且结果,可以为这些相关的定制视图中的每一个生成相应的捕获参数集。
一旦已经接收到多个捕获的表面数据帧序列以用于与物理捕获设备相关联的现实世界场景的视图并且已经生成一个或多个虚拟化表面数据帧序列以用于现实世界场景的定制视图的虚拟化投影,系统100就可以提供一个或多个捕获和/或虚拟化表面数据帧序列以包括在虚拟现实媒体内容中。例如,如下面将更详细地描述的,系统100可以将捕获和/或虚拟化表面数据帧序列中的数据提供给服务器侧系统(例如,虚拟现实媒体提供商流水线中的下游系统)和/或提供给客户端侧系统,诸如,与体验虚拟现实媒体内容(例如,基于包括在表面数据帧序列中的数据的虚拟现实媒体内容)的用户相关联的媒体播放器设备。
系统100可以按照任何方式提供包括在表面数据帧序列中的数据(例如,颜色和深度帧以及其他类型的数据,诸如,音频数据、元数据等)并且将其提供给可服务于特定实施方式的任何其他系统或设备。例如,在某些实施方式中,系统100可以将颜色和数据帧(以及音频和元数据等)提供给编码系统,该编码系统对数据进行编码以生成视频数据流(例如,标准格式(诸如,H.264、H.265等)的压缩2D视频流)。因此,例如,包括在特定表面数据帧序列中的数据可以包括在一个或多个视频数据流中,诸如,在颜色视频数据流、深度视频数据流等中。包括在表面数据帧序列中的其他数据(例如,音频数据、元数据等)也可以包括在颜色视频数据流和/或深度视频数据流中或可以包括在不同的数据流中。
无论向哪个系统提供表面数据帧序列数据和/或表面数据帧序列数据是否已经被编码成一个或多个视频数据流等,表面数据帧序列数据都可以被封装和/或复用,以便在网络上传输。这种数据封装可以按照可服务于特定实施方式的任何合适的方式和/或使用可服务于特定实施方式的任何合适的数据结构来执行。作为一个示例,每个表面数据帧序列都可以被封装成其自己独特的传输流。具体地,例如,虚拟化表面数据帧序列600可以被封装为使用于现实世界场景202的定制视图502的虚拟化投影602的经过渲染的颜色和深度帧包括在传输流中,该传输流不包括表示附加表面数据帧序列(例如,附加捕获或虚拟化表面数据帧序列)而不是虚拟化表面数据帧序列600的颜色和深度帧。
作为另一个示例,多个表面数据帧序列可以被一起封装(例如,复用)成共享传输流。具体地,例如,虚拟化表面数据帧序列600可以被封装为使用于现实世界场景202的定制视图502的虚拟化投影602的经过渲染的颜色和深度帧包括在传输流中,该传输流进一步包括表示至少一个附加表面数据帧序列(例如,至少一个附加捕获或虚拟化表面数据帧序列)而不是虚拟化表面数据帧序列600的颜色和深度帧。
为了进行说明,图7示出了包括示例性的多个表面数据帧序列的示例性传输流700的图形表示。具体地,传输流700可以包括各种捕获的表面数据帧序列400(例如,图4A至图4B所示的表面数据帧序列400-1和分别类似地由与视图206-2至206-8相关联的捕获设备捕获的表面数据帧序列400-2至400-8)以及各种虚拟化表面数据帧序列(例如,图6所示的虚拟化表面数据帧序列600和其他虚拟化表面数据帧序列702-1至702-N)。
如本文中所使用的,“传输流”可以指用于封装数据以便有助于将数据从一个设备或系统发送(即,传输)到另一设备或系统、对数据进行渲染或处理或分析、和/或出于可服务于特定实施方式的其他目的的数据结构。在一些示例中,传输流可以包含一个或者多个数据流(例如,一个或者多个视频数据流)和/或其他数据,诸如,元数据等。传输流可以实施为可服务于特定实施方式的任何类型的传输流。例如,本文描述的某些传输流(例如,传输流700)可以实施为MPEG传输流、MPEG-2传输流或有助于数据(诸如,表面数据帧序列、视频数据流等)的传输的另一种合适的数据结构。传输流可以按照可服务于特定实施方式的任何合适的数据格式、容器格式和/或传输协议来配置。
虽然传输流700被示出为包括捕获的表面数据帧序列和虚拟化表面数据帧序列两者,但是要理解,在某些实施方式中,传输流700可能只包括捕获的表面数据帧序列或只包括虚拟化表面数据帧序列。另外,传输流700可以包括可服务于特定实施方式的任何合适数量的表面数据帧序列和表面数据帧序列的任何组合。例如,如上所述,在某些示例中,传输流700可以包括单个表面数据帧序列(例如,虚拟化表面数据帧序列600),并且其他表面数据帧序列(如果要传输)可以通过其他传输流传输。也要理解,虽然图7示出了包括上面描述和说明的表面数据帧序列(例如,表面数据帧序列400和600)的传输流700,但是这些表面数据帧序列可以包括在诸如编码视频数据流(未被明确地示出)等数据结构中,并且因此,这些表面数据帧序列可以指在上面被描述为由系统100接收和/或生成的数据的不同版本(例如,被编码和/或压缩成视频数据流的数据的版本等)。
图8示出了传输流700的数据结构表示800。如图所示,表示800包括不同类型的数据的部分,诸如,元数据802的部分、音频数据804的部分和视频数据806的部分。要理解,表示800中所示的部分可能只是概念性的,并且表示800中所示的数据可以按照可服务于特定实施方式的任何方式在传输流700内被复用、组织、设置、发送等。
如图所示,元数据802包括与包括在传输流700中的各个表面数据帧序列都相关联的各种捕获参数集(即,“捕获参数集1”至“捕获参数集M”)。例如,包括在元数据802中的捕获参数集可以包括图7所示的捕获和虚拟化表面数据帧序列(即,表面数据帧序列400-1至400-8和702-1至702-N)中的每一个的相应捕获参数集。元数据802可以进一步包括可服务于特定实施方式的描述表面数据帧序列(例如,或视频数据流,在该视频数据流中,表面数据帧序列被编码)的任何其他元数据。
类似地,音频数据804可以包括与包括在传输流700中的每个表面数据帧序列都相关联的音频源数据。例如,“音频源1”至“音频源N”可以分别与表面数据帧序列400-1至400-8、600和702-1至702-N相关联。在其他示例中,如果音频源不与表面数据帧序列相关联,则与表面数据帧序列相比可能存在更多或更少的音频源(例如,与表面数据帧序列的数量不相关的音频源的数量)。
如图8中进一步所示的,视频数据806可以包括与在图7中被示出为包括在传输流700中的各个表面数据帧序列都相关联的颜色视频数据流和深度视频数据流。例如,“颜色视频数据流1”和“深度视频数据流1”可以表示包括在表面数据帧序列400-1中的颜色和深度帧,“颜色视频数据流2”和“深度视频数据流2”可以表示包括在表面数据帧序列400-2中的颜色和深度帧,等等,使得表面数据帧序列400-1至400-8、600和702-1至702-N中的每一个都与视频数据806内的颜色和深度视频数据流两者对应。
如上所述,在某些实施方式中,提供相对大量的虚拟化表面数据帧序列,以允许灵活地生成不同版本的虚拟现实媒体内容可能是有用的,该虚拟现实媒体内容可以是在不同的时间用与不同的媒体播放器设备相关(即,与具有不同的虚拟现实体验的不同用户相关联)的不同细节来定制的。例如,在一种实施方式中,8个物理捕获设备可以生成8个高分辨率捕获的表面数据帧序列,并且系统100可以基于8个捕获的表面数据帧序列为数百个定制视图的数百个虚拟化投影生成数百个虚拟化表面数据帧序列。
提供如此大量的虚拟化表面数据帧序列可以允许在有效地生成和分发虚拟现实媒体内容方面的显著灵活性,但是可能难以用可能没有被配备来处理这么多单独的数据流(例如,视频数据流等)的可用硬件和软件资源来处理。结果,可能希望将多个颜色和/或深度帧封装成单个表面数据帧序列。例如,虚拟化表面数据帧序列600可以被封装为使现实世界场景202的定制视图502的虚拟化投影602的各个经过渲染的颜色和深度帧被表示为视频数据流中的平铺块,这些平铺块实现表示视频数据流的每个帧中的多个平铺块的平铺图。例如,平铺块映射技术(例如,纹理图集技术、精灵表技术等)可以用于将多个颜色和/或深度帧一起封装成单个帧,使得这种帧的序列(例如,或表示这些帧的序列的视频数据流)可以基本上被当作单个帧序列,但是可以包括与多个帧序列相关联的数据(例如,表示包括定制视图的虚拟化投影的多个视图)。
为了进行说明,图9示出了包括示例性平铺帧序列902的示例性传输流900的图形表示。虽然平铺帧序列902被绘制成与本文中所示的表面数据帧序列(图4B中的表面数据帧序列400-1、图6中的虚拟化表面数据帧序列600等)相似的块,但是要理解,平铺帧序列902可以表示不同的数据,而不是本文中的其他表面数据帧序列中的一些。具体地,例如,平铺帧序列902可以不表示多个帧序列,诸如,颜色帧序列402和深度帧序列404(图4A中所示),但是可以包括单个帧序列,每个帧都包括多个平铺块904(即,平铺块904-1-C至904-9-C),诸如,在平铺帧序列902前面所示。
包括在平铺帧序列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等传输流中。
图10示出了传输流900的数据结构表示1000。如图所示,表示800包括不同类型的数据的部分,诸如,元数据1002的部分、音频数据1004的部分和视频数据1006的部分。要理解,表示800中所示的部分可能只是概念性的,并且表示1000中所示的数据可以按照可服务于特定实施方式的任何方式在传输流700内被复用、组织、设置、发送等。
如图所示,元数据1002包括每个平铺块(例如,平铺块904-1-C至904-9-C和/或图9中未明确地示出的其他平铺块)的两种不同类型的元数据。具体地,对于每个平铺块(“平铺块1”至“平铺块M”),元数据1002包括平铺块坐标(例如,“平铺块坐标1”至“平铺块坐标M”),其指示对与该特定平铺块相关联的数据而言是专用的每个帧的部分。例如,平铺块1的平铺块坐标可以包括指示帧的左上角的坐标,其中,平铺块904-1-C被示出于图9中,以此类推。对于各个平铺块1至M,元数据1002还包括与平铺块相关联的相应捕获参数集(即,“捕获参数集1”至“捕获参数集M”)。例如,包括在元数据802中的捕获参数集可以包括图9所示的平铺块(即,平铺块904-1-C至904-9-C)中的每一个的相应捕获参数集。元数据1002可以进一步包括可服务于特定实施方式的描述平铺帧序列902的平铺块(例如,或视频数据流,在该视频数据流中,平铺帧序列902被编码)的任何其他元数据。
类似于表示800中的音频数据804,音频数据1004可以包括与包括在平铺帧序列902中(即,在传输流900中)的每个平铺块都相关联的音频源数据。例如,“音频源1”至“音频源M”可以分别与平铺块904-1-C至904-9-C和/或图9中未明确示出的其他平铺块相关联。在其他示例中,如果平铺块与音频源没有特定的关联,则可能存在更多或更少的音频源。
与图8中的表示800相比,在包括了与每个表面数据帧序列都相关联的多个颜色和深度视频流的情况下,表示1000示出了视频数据1006只包括与平铺帧序列902相关联的一个视频数据流。这是因为,如图9所示,与由平铺帧序列902表示的每个颜色和/或深度帧相关联的所有图像都被一起封装成平铺帧序列902中的每个帧。在某些示例中,传输流900可以包括对于颜色数据平铺块而言是专用的一个帧序列(例如,平铺帧序列902)和对于深度数据平铺块而言是专用的第二帧序列(在图9中未明确示出)。这样,在这些示例中,视频数据1006可以包括颜色视频数据流和深度视频数据流两者。在其他示例中,如上所述,传输流900可以包括其他帧序列、视频流等(例如,不管是平铺还是非平铺)以及平铺帧序列902。这样,在这些示例中,视频数据1006可以包括图10中未明确示出的其他视频数据流。
如上所述,在一些示例中,系统100和/或本文描述的其他系统(例如,其他服务器侧系统)和设备可以用于生成将由用户体验的虚拟现实媒体内容。例如,除了上述操作之外,虚拟现实媒体内容提供商系统(例如,其中可以包括系统100和/或本文描述的其他设备和系统,或者这些系统可以与之相关联)可以进一步基于系统100提供的数据生成和提供虚拟现实媒体内容。虚拟现实媒体内容可以表示现实世界场景(例如,现实世界场景202),并且可以呈现给用户,以便从与相对于现实世界场景的任意虚拟位置对应的动态可选择虚拟视点体验。例如,当用户正在使用媒体播放器设备虚拟地体验现实世界场景时,媒体播放器设备的用户可以选择(例如,确定、放置等)动态可选择虚拟视点。在一些示例中,虚拟视点可以选择处于沿二维或三维连续体的任何位置,与只从一组离散的视点选择相反。此外,可以将虚拟现实媒体内容提供给媒体播放器设备(例如,通过包括系统100或与系统100相关联的虚拟现实媒体内容提供商系统),以允许用户从与现实世界场景中任意虚拟位置相对应的动态可选择虚拟视点虚拟地体验现实世界场景。
为了进行说明,图11示出了示例性配置1100,在该示例性配置1100中,包括系统100和一个或者多个附加虚拟现实媒体提供商流水线系统1104的示例性虚拟现实媒体内容提供商系统1102(“提供商系统1102”)生成虚拟现实媒体内容,该虚拟现实媒体内容通过网络1106提供给由用户1110使用的示例性客户端侧媒体播放器设备1108(“媒体播放器设备1108”)以体验现实世界场景202。
在如上所述已经生成虚拟化表面数据帧序列600并且将其封装成传输流(例如,传输流700、传输流900等)之后,提供商系统1102可以进一步对一个或多个传输流进行编码、封装、加密或处理以形成虚拟现实媒体内容,媒体播放器设备1108可以被配置为对该虚拟现实媒体内容进行渲染。例如,虚拟现实媒体内容可以包括或表示可以由媒体播放器设备1108渲染的多个2D视频数据流(例如,和与各个视图和虚拟化投影相关联的颜色数据和深度数据相关联的2D视频数据流),以便从现实世界场景202内的任意虚拟视点(例如,包括不与任何捕获设备视图或定制视图对齐但是用户1110可能感兴趣的虚拟视点)呈现现实世界场景202的视图,如下所述。然后,可以通过网络1106将虚拟现实媒体内容分发到一个或多个媒体播放器设备,诸如,与用户1110相关联的媒体播放器设备1108。例如,提供商系统1102可以将虚拟现实媒体内容提供给媒体播放器设备1108,使得用户1110可以使用媒体播放器设备1108虚拟地体验现实世界场景202。
在一些示例中,用户1110可能不希望被限制在由虚拟现实媒体内容(例如,表示现实世界场景202)表示的沉浸式虚拟现实世界内的一个或多个离散位置。这样,提供商系统1102可以在表示现实世界场景202的虚拟现实媒体内容内提供足够的数据,以允许现实世界场景202不仅从视图206和/或502来表示,而且从与现实世界场景202内的任意虚拟位置对应的任何动态可选择虚拟视点来表示。例如,当用户1110正在使用媒体播放器设备1108体验现实世界场景202时,动态可选择虚拟视点可以由用户1110选择。
如本文中使用的,“任意虚拟位置”可以指与现实世界场景的表示相关联的空间中的任何虚拟点。例如,任意虚拟位置并不限于围绕现实世界场景的固定位置(例如,与视图206和/或定制视图502相关联的固定位置),而且包括在与视图206和定制视图502相关联的位置之间的所有位置。在一些示例中,这种任意虚拟位置可以与现实世界场景202内的最理想的虚拟视点对应。例如,如果现实世界场景202包括篮球比赛,则用户1110可以动态地选择在篮球场上的任何任意虚拟位置的虚拟视点来从中体验比赛。例如,用户可以动态地选择他或她的虚拟视点以跟随篮球在篮球场上下运动并体验篮球比赛,就好像在比赛进行中站在篮球场上一样。
网络1106可以包括提供商特定的有线或无线网络(例如,电缆或卫星载波网络或移动电话网络)、互联网、广域网、内容传递网络或任何其他合适的网络。数据可以使用可服务于特定实施方式的任何通信技术、设备、媒体和协议在提供商系统1102和媒体播放器设备1108(以及未明确示出的其他媒体播放器设备)之间流动。
媒体播放器设备1108可供用户1110用来访问和体验从提供商系统1102接收的虚拟现实媒体内容。例如,媒体播放器设备1108可以配置为生成将由用户1110从任意虚拟视点(例如,由用户选择并且与现实世界场景202内的任意虚拟位置对应的动态可选择虚拟视点)体验到的现实世界场景202的3D虚拟表示。为此,媒体播放器设备1108可以包括能够呈现沉浸式虚拟现实世界(例如,表示现实世界场景202的沉浸式虚拟现实世界)的视野并且能够检测来自用户1110的用户输入以随着用户1110体验沉浸式虚拟现实世界而动态更新呈现在视野内的沉浸式虚拟现实世界的任何设备,或者由其实现。
图12示出了可由用户1110用来体验虚拟现实媒体内容的各种示例性类型的媒体播放器设备1108。具体地,如图所示,媒体播放器设备1108可以采用多种不同形式因子中的一种,诸如,包括头戴式显示屏的头戴式虚拟现实设备1202(例如,虚拟现实游戏设备)、个人计算机设备1204(例如,台式计算机、膝上型计算机等)、移动或无线设备1206(例如,智能电话、平板设备等,可能会借助于头戴式装置安装到用户1110的头部)、或通过可以服务于特定实施方式以有助于接收和/或呈现虚拟现实媒体内容的任何其他设备或设备配置。不同类型的媒体播放器设备(例如,头戴式虚拟现实设备、个人计算机设备、移动设备等)可以为用户1110提供具有不同沉浸度的不同类型的虚拟现实体验。
图13示出了示例性虚拟现实体验1300,在该示例性虚拟现实体验1300中,向用户1110呈现表示从与相对于现实世界场景的示例性任意虚拟位置对应的动态可选择虚拟视点体验到的现实世界场景的示例性虚拟现实媒体内容。具体地,虚拟现实媒体内容1302被呈现在视野1304内,该视野1304从虚拟视点示出了现实世界场景,该虚拟视点对应于正在进行投篮的现实世界场景的表示内的篮球标准之下的任意虚拟位置。通过提供用户输入(例如,头部运动、键盘输入等)以环顾和/或移动(即,动态地选择要从其体验的虚拟视点)沉浸式虚拟现实世界1306,基于现实世界场景的沉浸式虚拟现实世界1306可供观看者体验。
例如,视野1304可以提供窗口,用户1110可以通过该窗口轻松自然地环顾沉浸式虚拟现实世界1306。视野1304可以由媒体播放器设备1108呈现(例如,在媒体播放器设备1108的显示屏上)并且可以包括描绘沉浸式虚拟现实世界1306中在用户周围的对象的视频。另外,当用户1110体验沉浸式虚拟现实世界1306时,视野1304可以响应于用户1110所提供的用户输入而动态改变。例如,媒体播放器设备1108可以检测用户输入(例如,移动或转动其上呈现有视野1304的显示屏)。作为响应,视野1304可以显示不同的对象和/或从不同的虚拟视点或虚拟位置看到的对象,而不是从先前的虚拟视点或虚拟位置看到的对象。
在图13中,沉浸式虚拟现实世界1306被示出为半球体,指示用户1110可以在沉浸式虚拟现实世界1306内的任何方向上看,基本上可以从用户1110当前选择的篮球标准下的位置的虚拟视点向前、向后、向左、向右和/或向上看。在其他示例中,沉浸式虚拟现实世界1306可以包括整个360°乘180°的球体,使得用户1110也可以向下看。另外,用户1110可以移动到沉浸式虚拟现实世界1306内的其他位置(即,在现实世界场景的表示内动态地选择不同的动态可选择虚拟视点)。例如,用户1110可以选择在半场处的虚拟视点、面向篮球标准的罚球线处的虚拟视点、悬置在篮球标准上方的虚拟视点等。
图14示出了用于生成现实世界场景的定制视图的虚拟化投影以包括在虚拟现实媒体内容中的示例性方法1400。尽管图14示出了根据一个实施例的示例性操作,但其他实施例可以省略、增加、重新排序和/或修改图14中所示的任何操作。图14所示的操作中的一个或多个可以由系统100、其实施方式、和/或在上面被描述为与系统100相关联(例如,通信地耦合至系统100、被配置为与系统100互操作,等等)的另一系统来执行。
在操作1402中,虚拟化投影生成系统可以接收多个捕获的表面数据帧序列,每个捕获的表面数据帧序列都包括颜色和深度帧,该颜色和深度帧按照包括在与现实世界场景的不同视图相关联的多个捕获参数集中的相应捕获参数集描绘现实世界场景。在一些示例中,多个捕获的表面数据帧序列中的每个表面数据帧序列都可以由相对于现实世界场景设置在不同位置以捕获现实世界场景的不同视图的多个捕获设备中的不同捕获设备捕获。可以按照本文描述的任何一种方式来执行操作1402。
在操作1404中,虚拟化投影生成系统可以识别附加捕获参数集,该附加捕获参数集与包括在与在操作1402中接收的捕获的表面数据帧序列相关联的多个捕获参数集中的捕获参数集不同。在一些示例中,附加捕获参数集可以与现实世界场景的定制视图相关联,该定制视图与由多个捕获设备捕获的现实世界场景的不同视图不同。可以按照本文描述的任何一种方式来执行操作1404。
在操作1406中,虚拟化投影生成系统可以对用于现实世界场景的定制视图的虚拟化投影的颜色和深度帧进行渲染。例如,虚拟化投影生成系统可以基于在操作1402中接收的捕获的表面数据帧序列和基于在操作1404中识别的附加捕获参数集对虚拟化投影的颜色和深度帧进行渲染。可以按照本文描述的任何方式来执行操作1406。
在操作1408中,虚拟化投影生成系统可以提供虚拟化表面数据帧序列,其包括在操作1406中的用于现实世界场景的定制视图的虚拟化投影的经过渲染的颜色和深度帧。在一些示例中,虚拟化投影生成系统可以提供虚拟化表面数据帧序列以包括在媒体播放器设备的虚拟现实媒体内容中。可以按照本文描述的任何一种方式来执行操作1408。
图15示出了用于生成现实世界场景的定制视图的虚拟化投影以包括在虚拟现实媒体内容中的示例性方法1500。尽管图15示出了根据一个实施例的示例性操作,但其他实施例可以省略、增加、重新排序和/或修改图15中所示的任何操作。图15所示的操作中的一个或多个可以由系统100、其实施方式、和/或在上面被描述为与系统100相关联(例如,通信地耦合至系统100、被配置为与系统100互操作,等等)的另一系统来执行。
在操作1502中,虚拟化投影生成系统可以接收多个捕获的表面数据帧序列,每个捕获的表面数据帧序列都包括颜色和深度帧,该颜色和深度帧按照包括在与现实世界场景的不同视图相关联的第一多个捕获参数集中的相应捕获参数集描绘现实世界场景。例如,多个捕获的表面数据帧序列中的每个表面数据帧序列都可以由相对于现实世界场景设置在不同位置以捕获现实世界场景的不同视图的多个捕获设备中的不同捕获设备捕获。在某些示例中,当事件在现实世界场景中发生时,可以实时地执行操作1502。可以按照本文描述的任何一种方式来执行操作1502。
在操作1504中,虚拟化投影生成系统可以识别与包括在第一多个捕获参数集中的捕获参数集不同的第二多个捕获参数集。例如,第二多个捕获参数集中的每个捕获参数集都可以与现实世界场景的相应定制视图相关联,该定制视图与由上面关于操作1502讨论的多个捕获设备捕获的现实世界场景的不同视图不同。在一些示例中,第二多个捕获参数集可以包括数量比包括在与在操作1502中接收的捕获的表面数据帧序列相关联的第一多个捕获参数集中的集合更多的集合。与操作1502一样,在某些实施方式中,当事件在现实世界场景中发生时,可以实时地执行操作1504。操作1504可以按照本文描述的任何方式执行。
在操作1506中,虚拟化投影生成系统可以对用于现实世界场景的每个相应的定制视图的虚拟化投影的颜色和深度帧进行渲染,在操作1504中,针对该颜色和深度帧识别第二多个捕获参数集中的捕获参数集。在一些示例中,虚拟化投影生成系统可以基于在操作1502中接收的多个捕获的表面数据帧序列和基于在操作1504中识别的第二多个捕获参数集对颜色和深度帧进行渲染。与操作1502和1504一样,当事件在现实世界场景中发生时,可以实时地执行操作1506。可以按照本文描述的任何一种方式来执行操作1506。
在操作1508中,虚拟化投影生成系统可以提供虚拟化表面数据帧序列,其包括在操作1506中的用于现实世界场景的每个相应定制视图的虚拟化投影的经过渲染的颜色和深度帧。例如,虚拟化投影生成系统可以提供多个虚拟化表面数据帧序列以包括在媒体播放器设备的虚拟现实媒体内容中。与操作1502至1506一样,当事件在现实世界场景中发生时,可以实时地执行操作1508。可以按照本文描述的任何一种方式来执行操作1508。
在某些实施例中,本文描述的系统、组件和/或过程中的一个或多个可以由一个或多个恰当配置的计算设备来实施和/或执行。为此,上述系统和/或组件中的一个或多个可以包括体现在配置为执行本文描述的一个或者多个过程的至少一种非暂时性计算机可读介质上的任何计算机硬件和/或计算机实现的指令(例如,软件)或由其实施。具体地,系统组件可以实施在一个物理计算设备上或可以实施在一个以上的物理计算设备上。因此,系统组件可以包括任意数量的计算设备,并且可以采用多种计算机操作系统中的任何一种。
在某些实施例中,本文描述的过程中的一个或多个可以至少部分地被实施为体现在非暂时性计算机可读介质中并且可由一个或多个计算设备执行的指令。通常,处理器(例如,微处理器)从非暂时性计算机可读介质(例如,存储器等)接收指令,并执行那些指令,从而执行一个或多个过程,包括本文描述的过程中的一个或多个。可以使用各种已知的计算机可读介质中的任何一种来存储和/或发送这样的指令。
计算机可读介质(也称为处理器可读介质)包括参与提供可由计算机(例如,由计算机的处理器)读取的数据(例如,指令)的任何非暂时性介质。这种介质可以采取许多形式,包括但不限于非易失性介质和/或易失性介质。非易失性介质可以包括:例如,光盘或磁盘以及其他永久性存储器。易失性介质可以包括:例如,动态随机存取存储器(“DRAM”),其通常构成主存储器。计算机可读介质的常见形式包括:例如,磁盘、硬盘、磁带、任何其他磁介质、光盘只读存储器(“CD-ROM”)、数字视频光盘(“DVD”)、任何其他光学介质、随机存取存储器(“RAM”)、可编程只读存储器(“PROM”)、电可擦除可编程只读存储器(“EPROM”)、FLASH-EEPROM、任何其他存储器芯片或盒式磁带、或计算机可以读取的任何其他有形介质。
图16示出了示例性计算设备1600,其可以被具体配置为执行本文描述的过程中一个或多个。如图16所示,计算设备1600可以包括经由通信基础设施1610通信地连接的通信接口1602、处理器1604、存储设备1606和输入/输出(“I/O”)模块1608。尽管在图16中示出了示例性计算设备1600,但是图16示出的组件并不旨在是限制性的。在其他实施例中可以使用另外的或替代的组件。现在将更详细地描述图16中示出的计算设备1600的组件。
通信接口1602可以配置为与一个或多个计算设备通信。通信接口1602的示例包括但不限于有线网络接口(诸如,网络接口卡)、无线网络接口(诸如,无线网络接口卡)、调制解调器、音频/视频连接和任何其他合适的接口。
处理器1604通常表示能够处理数据或解释、执行和/或指导本文描述的指令、过程和/或操作中的一种或多种的执行的任何类型或形式的处理单元(例如,中央处理单元和/或图形处理单元)。处理器1604可以根据一个或多个应用1612或其他计算机可执行指令(诸如,可以存储在存储设备1606或另一计算机可读介质中)来指导操作的执行。
存储设备1606可以包括一个或多个数据存储介质、设备或配置,并且可以采用任何类型、形式和组合的数据存储介质和/或设备。例如,存储设备1606可以包括但不限于硬盘驱动器、网络驱动器、闪存驱动器、磁盘、光盘、RAM、动态RAM、其他非易失性和/或易失性数据存储单元、或它们的组合或子组合。电子数据,包括本文描述的数据,可以被临时和/或永久地存储在存储设备1606中。例如,表示被配置为指导处理器1604执行本文描述的操作中的任何一个操作的一个或多个可执行应用1612的数据可以存储在存储设备1606中。在一些示例中,数据可以设置在驻留在存储设备1606内的一个或多个数据库中。
I/O模块1608可以包括配置为接收用户输入和提供用户输出的一个或多个I/O模块。一个或多个I/O模块可用于接收针对单个虚拟现实体验的输入。I/O模块1608可以包括支持输入和输出能力的任何硬件、固件、软件或其组合。例如,I/O模块1608可以包括用于捕获用户输入的硬件和/或软件,包括但不限于键盘或键区、触摸屏组件(例如,触摸屏显示器)、接收器(例如,RF或红外接收器)、运动传感器和/或一个或多个输入按钮。
I/O模块1608可以包括用于向用户呈现输出的一个或多个设备,包括但不限于图形引擎、显示器(例如,显示屏)、一个或多个输出驱动器(例如,显示器驱动器)、一个或多个音频扬声器和一个或多个音频驱动器。在某些实施例中,I/O模块1608被配置为将图形数据提供给显示器以呈现给用户。图形数据可以表示一个或多个图形用户界面和/或可服务于特定实施方式的任何其他图形内容。
在一些示例中,本文描述的任何设施可以由计算设备1600的一个或多个组件实施或实施在其中。例如,驻留在存储设备1606内的一个或多个应用1612可以配置为指导处理器1604执行与系统100(参见图1)的通信设施102、表面数据帧序列管理设施104或虚拟化投影生成设施106相关联的一个或多个操作或功能。同样,系统100的存储设施108可以由存储设备1606实施或实施在其中。
对于前述实施例收集、存储和/或使用由个人提供的个人信息的程度,应当理解,这些信息应根据关于个人信息保护的所有适用法律来使用。另外,此类信息的收集、存储和使用可能要征得个人对此类活动的同意,例如,通过可能适用于此种情况和信息的类型的众所周知的“选择加入”或“选择退出”过程。个人信息的存储和使用可以采用反映信息的类型的适当安全的方式,例如,通过针对特别敏感的信息的各种加密和匿名化技术。
在前面的描述中,已经参考附图描述了各种示例性实施例。然而,显而易见的是,在不脱离如所附权利要求书所阐述的本发明的范围的情况下,可以对其进行各种修改和改变,并且可以实施附加实施例。例如,本文描述的一个实施例的某些特征可以与本文描述的另一实施例的特征组合或对其进行替代。因此,说明书和附图应被认为是说明性而不是限制性的。
Claims (16)
1.一种方法,所述方法包括:
通过虚拟化投影生成系统接收多个捕获的表面数据帧序列,所述多个捕获的表面数据帧序列每个都包括颜色和深度帧,所述颜色和深度帧按照包括在与现实世界场景的不同视图相关联的多个捕获参数集中的相应捕获参数集来描绘所述现实世界场景,所述多个捕获的表面数据帧序列中的每个表面数据帧序列都是由相对于所述现实世界场景设置在不同位置以捕获所述现实世界场景的所述不同视图的多个捕获设备中的不同捕获设备捕获的;
通过所述虚拟化投影生成系统识别附加捕获参数集,所述附加捕获参数集与包括在所述多个捕获参数集中的所述捕获参数集不同,并且与所述现实世界场景的定制视图相关联,所述现实世界场景的定制视图与由所述多个捕获设备捕获的所述现实世界场景的所述不同视图不同;
基于所述多个捕获的表面数据帧序列中的所述表面数据帧序列的至少一个并且基于所述附加捕获参数集,通过所述虚拟化投影生成系统,对用于所述现实世界场景的所述定制视图的虚拟化投影的颜色和深度帧进行渲染;以及
通过所述虚拟化投影生成系统将多个表面数据帧序列一起封装成共享传输流,所述共享传输流包括:
包括用于所述现实世界场景的所述定制视图的所述虚拟化投影的经过渲染的颜色和深度帧的虚拟化表面数据帧序列,以及
除了所述虚拟化表面数据帧序列之外的至少一个附加捕获的或虚拟化的表面数据帧序列。
2.根据权利要求1所述的方法,其中:
所述现实世界场景的所述定制视图与由相对于所述现实世界场景设置在所述不同位置的所述多个捕获设备捕获的所述现实世界场景的所述不同视图不对齐;以及
对用于所述现实世界场景的所述定制视图的所述虚拟化投影的所述颜色和深度帧进行渲染包括:基于所述多个捕获的表面数据帧序列中的至少两个所述表面数据帧序列对颜色和深度帧进行渲染。
3.根据权利要求1所述的方法,其中,包括在与所述现实世界场景的所述不同视图相关联的所述多个捕获参数集中的每个捕获参数集都包括以下中的至少一个:
表示相对于所述现实世界场景的位置的捕获参数,与所述现实世界场景的特定视图对应的颜色和深度帧是从所述位置捕获的;
表示方位的捕获参数,与所述现实世界场景的所述特定视图对应的所述颜色和深度帧是从所述方位捕获的;
表示视野的捕获参数,与所述现实世界场景的所述特定视图对应的所述颜色和深度帧是利用所述视野来捕获的;以及
表示图像质量的捕获参数,与所述现实世界场景的所述特定视图对应的所述颜色和深度帧是利用所述图像质量来捕获的。
4.根据权利要求1所述的方法,其中,与所述现实世界场景的所述定制视图相关联的所述附加捕获参数集包括以下中的至少一个:
表示与所述现实世界场景的所述定制视图相关联的定制视野的捕获参数,所述定制视野比与所述表面数据帧序列的至少一个相关联的捕获的视野窄,对用于所述虚拟化投影的所述颜色和深度帧进行渲染是基于所述表面数据帧序列;以及
表示与所述现实世界场景的所述定制视图相关联的定制图像质量的捕获参数,所述定制图像质量低于与所述表面数据帧序列的至少一个相关联的捕获的图像质量,对用于所述虚拟化投影的所述颜色和深度帧进行渲染是基于所述表面数据帧序列。
5.根据权利要求1所述的方法,其中,识别所述附加捕获参数集包括:
相对于所述现实世界场景的一个或多个几何特性分析所述现实世界场景;
基于对所述现实世界场景的分析,生成多个附加捕获参数集,所述多个附加捕获参数集与包括在所述多个捕获参数集中的所述捕获参数集不同并且包括所述附加捕获参数集;以及
从所述多个附加捕获参数集识别所述附加捕获参数集。
6.根据权利要求1所述的方法,其中,封装所述虚拟化表面数据帧序列包括将用于所述现实世界场景的所述定制视图的所述虚拟化投影的经过渲染的颜色和深度帧中的每个表示为平铺视频数据流中的平铺块,所述平铺视频数据流实现表示所述平铺视频数据流中的每个帧中的多个平铺块的平铺图。
7.根据权利要求1所述的方法,体现为至少一个非暂时性计算机可读介质上的计算机可执行指令。
8.一种方法,所述方法包括:
通过虚拟化投影生成系统,在事件在现实世界场景中发生时实时地接收多个捕获的表面数据帧序列,所述多个捕获的表面数据帧序列每个都包括颜色和深度帧,所述颜色和深度帧按照包括在与所述现实世界场景的不同视图相关联的第一多个捕获参数集中的相应捕获参数集描绘所述现实世界场景,所述多个捕获的表面数据帧序列中的每个表面数据帧序列都是由相对于所述现实世界场景设置在不同位置以捕获所述现实世界场景的所述不同视图的多个捕获设备中的不同捕获设备捕获的;
通过所述虚拟化投影生成系统,在所述事件在所述现实世界场景中发生时实时地识别第二多个捕获参数集,所述第二多个捕获参数集与包括在所述第一多个捕获参数集中的所述捕获参数集不同并且每个与所述现实世界场景的相应定制视图相关联,所述现实世界场景的相应定制视图与由所述多个捕获设备捕获的所述现实世界场景的所述不同视图不同,所述第二多个捕获参数集包括数量比包括在所述第一多个捕获参数集中的集合大的集合;
通过所述虚拟化投影生成系统,基于所述多个捕获的表面数据帧序列并且基于所述第二多个捕获参数集,在所述事件在现实世界场景中发生时实时地对用于所述现实世界场景的每个相应定制视图的虚拟化投影的颜色和深度帧进行渲染;以及
通过所述虚拟化投影生成系统,在所述事件在所述现实世界场景中发生时实时地封装多个虚拟化表面数据帧序列,所述多个虚拟化表面数据帧序列包括用于所述现实世界场景中的每个相应定制视图的所述虚拟化投影的经过渲染的颜色和深度帧。
9.根据权利要求8所述的方法,其中:
与所述第二多个捕获参数集中的特定捕获参数集相关联的所述现实世界场景的特定定制视图与由相对于所述现实世界场景设置在所述不同位置的所述多个捕获设备捕获的所述现实世界场景的所述不同视图不对齐;以及
对用于所述现实世界场景的所述特定定制视图的所述虚拟化投影的所述颜色和深度帧的渲染包括:基于所述多个捕获的表面数据帧序列中的至少两个所述表面数据帧序列对颜色和深度帧进行渲染。
10.根据权利要求8所述的方法,体现为至少一个非暂时性计算机可读介质上的计算机可执行指令。
11.一种系统,所述系统包括:
至少一个物理计算设备,所述至少一个物理计算设备:
接收多个捕获的表面数据帧序列,所述多个捕获的表面数据帧序列每个都包括颜色和深度帧,所述颜色和深度帧按照包括在与现实世界场景的不同视图相关联的多个捕获参数集中的相应捕获参数集来描绘所述现实世界场景,所述多个捕获的表面数据帧序列中的每个表面数据帧序列都是由相对于所述现实世界场景设置在不同位置以捕获所述现实世界场景的所述不同视图的多个捕获设备中的不同捕获设备捕获的;
识别附加捕获参数集,所述附加捕获参数集与包括在所述多个捕获参数集中的所述捕获参数集不同,并且与所述现实世界场景的定制视图相关联,所述现实世界场景的定制视图与由所述多个捕获设备捕获的所述现实世界场景的所述不同视图不同;
基于所述多个捕获的表面数据帧序列中的所述表面数据帧序列中的至少一个并且基于所述附加捕获参数集,对用于所述现实世界场景的所述定制视图的虚拟化投影的颜色和深度帧进行渲染;以及
将多个表面数据帧序列一起封装成共享传输流,所述共享传输流包括:
包括用于所述现实世界场景的所述定制视图的所述虚拟化投影的经过渲染的颜色和深度帧的虚拟化表面数据帧序列,以及
除了所述虚拟化表面数据帧序列之外的至少一个附加捕获的或虚拟化的表面数据帧序列。
12.根据权利要求11所述的系统,其中:
所述现实世界场景的所述定制视图与由相对于所述现实世界场景设置在所述不同位置的所述多个捕获设备捕获的所述现实世界场景的所述不同视图不对齐;以及
对用于所述现实世界场景的所述定制视图的所述虚拟化投影的所述颜色和深度帧的渲染包括:基于所述多个捕获的表面数据帧序列中的所述表面数据帧序列的至少两个对颜色和深度帧进行渲染。
13.根据权利要求11所述的系统,其中,包括在与所述现实世界场景的所述不同视图相关联的所述多个捕获参数集中的每个捕获参数集都包括以下中的至少一个:
表示相对于所述现实世界场景的位置的捕获参数,与所述现实世界场景的特定视图对应的颜色和深度帧是从所述位置捕获的;
表示方位的捕获参数,与所述现实世界场景的所述特定视图对应的所述颜色和深度帧是从所述方位捕获的;
表示视野的捕获参数,与所述现实世界场景的所述特定视图对应的所述颜色和深度帧是利用所述视野来捕获的;以及
表示图像质量的捕获参数,与所述现实世界场景的所述特定视图对应的所述颜色和深度帧是利用所述图像质量来捕获的。
14.根据权利要求11所述的系统,其中,与所述现实世界场景的所述定制视图相关联的所述附加捕获参数集包括以下中的至少一个:
表示与所述现实世界场景的所述定制视图相关联的定制视野的捕获参数,所述定制视野比与所述表面数据帧序列的至少一个相关联的捕获的视野窄,对用于所述虚拟化投影的所述颜色和深度帧进行渲染是基于所述表面数据帧序列;以及
表示与所述现实世界场景的所述定制视图相关联的定制图像质量的捕获参数,所述定制图像质量低于与所述表面数据帧序列的至少一个相关联的捕获的图像质量,对用于所述虚拟化投影的所述颜色和深度帧进行渲染是基于所述表面数据帧序列。
15.根据权利要求11所述的系统,其中,所述至少一个物理计算设备通过以下操作识别所述附加捕获参数集:
相对于所述现实世界场景的一个或多个几何特性分析所述现实世界场景;
基于对所述现实世界场景的分析,生成多个附加捕获参数集,所述多个附加捕获参数集与包括在所述多个捕获参数集中的所述捕获参数集不同并且包括所述附加捕获参数集;以及
从所述多个附加捕获参数集识别所述附加捕获参数集。
16.根据权利要求11所述的系统,其中,封装所述虚拟化表面数据帧序列包括将用于所述现实世界场景的所述定制视图的所述虚拟化投影的经过渲染的颜色和深度帧中的每个表示为平铺视频数据流中的平铺块,所述平铺视频数据流实现表示所述平铺视频数据流中的每个帧中的多个平铺块的平铺图。
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 |
---|---|
CN110663067A CN110663067A (zh) | 2020-01-07 |
CN110663067B true CN110663067B (zh) | 2023-10-31 |
Family
ID=62599738
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880034341.7A Active CN110663067B (zh) | 2017-05-31 | 2018-05-24 | 用于生成现实世界场景的定制视图的虚拟化投影以包括在虚拟现实媒体内容中的方法和系统 |
Country Status (6)
Country | Link |
---|---|
US (2) | US10269181B2 (zh) |
EP (1) | EP3631767A1 (zh) |
JP (1) | JP7194125B2 (zh) |
KR (1) | KR102499904B1 (zh) |
CN (1) | CN110663067B (zh) |
WO (1) | WO2018222498A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7003994B2 (ja) * | 2017-08-08 | 2022-01-21 | ソニーグループ株式会社 | 画像処理装置および方法 |
JP2019114147A (ja) * | 2017-12-25 | 2019-07-11 | キヤノン株式会社 | 情報処理装置、情報処理装置の制御方法及びプログラム |
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 |
CN112784002B (zh) * | 2021-02-07 | 2023-09-26 | 腾讯科技(深圳)有限公司 | 一种虚拟场景生成方法、装置、设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6084979A (en) * | 1996-06-20 | 2000-07-04 | Carnegie Mellon University | Method for creating virtual reality |
CN102693005A (zh) * | 2011-02-17 | 2012-09-26 | 微软公司 | 使用3d深度相机和3d投影仪来提供交互式体验 |
CN104023221A (zh) * | 2014-06-23 | 2014-09-03 | 深圳超多维光电子有限公司 | 立体图像视差调节方法和装置 |
CN106157359A (zh) * | 2015-04-23 | 2016-11-23 | 中国科学院宁波材料技术与工程研究所 | 一种虚拟场景体验系统的设计方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
EP2050067A1 (en) | 2006-08-03 | 2009-04-22 | 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 |
KR101378910B1 (ko) * | 2012-08-28 | 2014-03-31 | 광운대학교 산학협력단 | 임의의 가상시점 홀로그램 서비스를 위한 의사변위 기반 중간시점 영상 생성 방법 |
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 |
EP3028472B1 (en) * | 2013-07-29 | 2020-02-26 | Koninklijke KPN N.V. | Providing tile video streams to a client |
US10321117B2 (en) * | 2014-04-11 | 2019-06-11 | Lucasfilm Entertainment Company Ltd. | Motion-controlled body capture and reconstruction |
KR102341267B1 (ko) * | 2015-05-04 | 2021-12-20 | 삼성전자주식회사 | 양안 시차 영상에 대한 렌더링 방법 및 장치 |
CN108353157B (zh) | 2015-11-11 | 2021-06-08 | 索尼公司 | 编码设备和编码方法以及解码设备和解码方法 |
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 EP EP18731298.8A patent/EP3631767A1/en active Pending
- 2018-05-24 KR KR1020197035490A patent/KR102499904B1/ko active IP Right Grant
- 2018-05-24 JP JP2019566146A patent/JP7194125B2/ja active Active
- 2018-05-24 WO PCT/US2018/034430 patent/WO2018222498A1/en active Application Filing
- 2018-05-24 CN CN201880034341.7A patent/CN110663067B/zh active Active
-
2019
- 2019-03-08 US US16/296,801 patent/US11055917B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6084979A (en) * | 1996-06-20 | 2000-07-04 | Carnegie Mellon University | Method for creating virtual reality |
CN102693005A (zh) * | 2011-02-17 | 2012-09-26 | 微软公司 | 使用3d深度相机和3d投影仪来提供交互式体验 |
CN104023221A (zh) * | 2014-06-23 | 2014-09-03 | 深圳超多维光电子有限公司 | 立体图像视差调节方法和装置 |
CN106157359A (zh) * | 2015-04-23 | 2016-11-23 | 中国科学院宁波材料技术与工程研究所 | 一种虚拟场景体验系统的设计方法 |
Also Published As
Publication number | Publication date |
---|---|
US11055917B2 (en) | 2021-07-06 |
US20190206138A1 (en) | 2019-07-04 |
CN110663067A (zh) | 2020-01-07 |
US20180350147A1 (en) | 2018-12-06 |
KR20200013672A (ko) | 2020-02-07 |
JP2020522801A (ja) | 2020-07-30 |
WO2018222498A1 (en) | 2018-12-06 |
JP7194125B2 (ja) | 2022-12-21 |
KR102499904B1 (ko) | 2023-02-16 |
US10269181B2 (en) | 2019-04-23 |
EP3631767A1 (en) | 2020-04-08 |
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 | |
CN110663067B (zh) | 用于生成现实世界场景的定制视图的虚拟化投影以包括在虚拟现实媒体内容中的方法和系统 | |
US10699471B2 (en) | Methods and systems for rendering frames based on a virtual entity description frame of a virtual scene | |
CN110663012B (zh) | 用于定制虚拟现实数据的方法和系统 | |
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 |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40013954 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |