将沉浸式视频格式化以用于传统呈现设备和沉浸式呈现设备的方法、装置和流与流程

文档序号:16811302发布日期:2019-02-10 13:41阅读:217来源:国知局
将沉浸式视频格式化以用于传统呈现设备和沉浸式呈现设备的方法、装置和流与流程

本公开涉及将代表沉浸式视频的向后兼容流格式化的领域,例如当这样的流被分发到各种各样的客户端设备的集合时,一些客户端设备被配置为显示传统矩形视频,而另一些客户端设备被配置为显示沉浸式视频。



背景技术:

沉浸式视频与传统视频的不同之处在于,它们显示在用户周围,而不是投影在用户前面的矩形屏幕上。一些设备被配置用于仅呈现传统视频(例如tv机、视频投影仪),一些设备被配置用于仅呈现沉浸式视频(例如洞穴(cave)、晶洞(geode)),以及一些设备可以根据它们包括的解码器来呈现两种类型的视频(例如头戴式显示设备(hmd)、平板、智能电话)。在本文档中,我们将被配置用于呈现沉浸式视频并包括适配解码器的设备称为沉浸式视频呈现设备,以及将不被配置用于呈现沉浸式视频或不包括适配解码器的设备称为传统视频呈现设备。

视频是至少一个图像的序列。实际上,图像可以视为静止视频。视频被编码在矩形帧上,该矩形帧是二维像素(即色彩信息的元素)阵列。为了进行呈现,将帧首先映射在映射表面上,其次投影在屏幕上。立体视频被编码在一个或两个矩形帧上,该矩形帧被映射在两个映射表面上,这两个映射表面根据设备的特性被组合以被投影。

对于传统视频呈现设备,映射表面和屏幕是平面矩形。对应的映射功能和投影功能是直接的。映射表面等同于帧。取决于清晰度和呈现设备的分辨率,屏幕对应于映射表面的矩形部分。

对于沉浸式视频呈现设备,映射表面是三维凸表面(例如球体、立方体、角锥(截断的或不截断的))。映射功能将帧的每个像素关联到映射表面的点(反之亦然)。投影功能取决于呈现设备的屏幕。如果屏幕是三维凸表面(例如洞穴、晶洞),则投影从映射表面是直接的。如果屏幕是矩形的(例如hmd、平板、智能电话),则根据屏幕的大小并根据虚拟相机的参数(至少包括相对于映射表面的三维位置、瞄准方向和视场)仅显示表面的一部分。这样的沉浸式视频呈现设备配备有虚拟相机控制器(例如惯性测量单元、定位系统、鼠标、操纵杆)。

根据意在其上呈现视频的呈现设备的类型来准备和格式化视频流。传统视频呈现设备并不适当地显示沉浸式视频,因为它们不被配置为将沉浸式视频映射在三维凸映射表面上。相互地,沉浸式视频播放器并不适当地显示传统视频。缺乏用于可以由传统视频呈现设备和沉浸式视频呈现设备二者适当地显示的向后兼容沉浸式视频流的格式。



技术实现要素:

本公开的目的是克服用于可以由传统视频呈现设备和沉浸式视频呈现设备二者适当地显示的向后兼容沉浸式视频流的格式的缺乏。本公开涉及一种从沉浸式视频生成流的方法,该方法包括:

-生成至少一个第一视频,每个第一视频代表沉浸式视频的一部分;

-从已经从中移除所述至少一个部分的沉浸式视频生成第二视频;

-通过将与至少一个第一视频相关的第一语法元素和与所述第二视频相关的第二语法元素组合在一起来生成流。

根据具体特性,将第三语法元素添加到所述流中,所述第三语法元素与代表所述至少一个部分的描述的信息数据相关。根据特定特性,所述信息数据随时间改变。

本公开还涉及一种被配置为从沉浸式视频生成流的设备,该设备包括:

-视频生成器,用于生成至少一个第一视频,每个第一视频代表沉浸式视频的一部分;

-视频生成器,用于从已经从中移除所述至少一个部分的沉浸式视频生成第二视频;

-流生成器,用于通过将与所述至少一个第一视频相关的第一语法元素和与所述第二视频相关的第二语法元素组合在一起来生成流。

本公开还涉及一种被配置为从沉浸式视频生成流的设备,该设备包括至少一个处理器,该处理器被配置为:

-生成至少一个第一视频,每个第一视频代表沉浸式视频的一部分;

-从已经从中移除所述至少一个部分的沉浸式视频生成第二视频;

-通过将与所述至少一个第一视频相关的第一语法元素和与所述第二视频相关的第二语法元素组合在一起来生成流。

本公开还涉及一种携带代表沉浸式视频的数据的流,该数据包括:

-第一语法元素,其与至少一个第一视频相关,所述至少一个第一视频中的每一个代表沉浸式视频的一部分;

-第二语法元素,其与从已经从中移除所述至少一个部分的沉浸式视频生成的第二视频相关。

根据特定特性,将与代表所述至少一个部分的描述的信息数据相关的第三语法元素添加到流中。有利地,所述信息数据随时间改变。

本公开还涉及一种从流合成视频以用于呈现设备的方法,该流携带代表沉浸式视频的数据,该方法包括:

-当设备是传统视频呈现设备时,

·从与至少一个第一视频相关的流的第一语法元素获得视频,所述至少一个第一视频中的每一个代表沉浸式视频的一部分;

-当设备是沉浸式视频呈现设备时,

·从流的第一语法元素获得至少一个第一视频,所述至少一个第一视频代表沉浸式视频的一部分;

·从流的第二语法元素获得第二视频,所述第二视频代表已经从中移除每个所述至少一个部分的沉浸式视频;

·通过在第二视频上叠加所述至少一个第一视频中的每一个来合成视频。

根据具体特性,所述流还包括与代表所述至少一个部分的描述的信息数据相关的第三语法元素。当设备是沉浸式视频呈现设备时,视频的合成包括根据与所述第一视频相关联的部分的描述来使每个第一视频缩放和移位以用于叠加在第二视频上。

本公开还涉及一种被配置为从流合成视频以用于呈现设备的设备,该流携带代表沉浸式视频的数据,该设备包括:

-当设备是传统视频呈现设备时,

·用于从与至少一个第一视频相关的流的第一语法元素获得视频的部件,所述至少一个第一视频中的每一个代表沉浸式视频的一部分;

-当设备是沉浸式视频呈现设备时,

·用于从流的第一语法元素获得至少一个第一视频的部件,所述至少一个第一视频代表沉浸式视频的一部分;

·用于从流的第二语法元素获得第二视频的部件,所述第二视频代表已经从中移除每个所述至少一个部分的沉浸式视频;

·用于通过在第二视频上叠加所述至少一个第一视频中的每一个来合成视频的部件。

附图说明

在阅读以下描述时,将更好地理解本公开,并且将显现其他特定特征和优点,该描述参考附图,附图中:

-图1图示了根据本原理的特定实施例的映射在二维映射表面上的传统视频的呈现的示例;

-图2图示了根据本原理的特定实施例的准备用于球形映射表面的沉浸式视频的呈现的示例,与图1的二维映射表面相比,该映射表面在三维中;

-图3图示了根据本原理的特定实施例的沉浸式视频的呈现的示例,如图2中,沉浸式视频在图3中准备用于立方形映射表面;

-图4图示了根据本原理的特定实施例的从准备用于如图2中的球形映射表面的沉浸式视频捕获传统视频的示例;

-图5图示了根据本原理的特定实施例的从准备用于如图3中的立方形映射表面的沉浸式视频捕获传统视频的示例;

-图6图示了根据本原理的特定实施例的从图2的沉浸式视频捕获的两个传统视频的示例,以及已经从中移除用于所述两个传统视频的两个部分的该沉浸式视频的示例;

-图7示出了根据本原理的特定实施例的被配置为实现关于图8或图9描述的方法的装置的硬件实施例;

-图8示意性示出了在诸如根据非限制性有利实施例的设备之类的处理设备中实现的生成图6和图10的向后兼容沉浸式视频流的方法的实施例;

-图9示意性示出了在诸如根据非限制性有利实施例的设备70之类的处理设备中实现的从向后兼容沉浸式视频流合成视频的方法的实施例;

-图10示出了根据本原理的特定实施例的图6的向后兼容沉浸式视频流的示例结构。

具体实施方式

现在参考附图描述主题,附图中相同的参考标号始终用于指代相同的元素。在以下描述中,出于解释的目的,阐述许多特定细节以便于提供对主题的透彻理解。要理解,可以在没有这些特定细节的情况下实践主题实施例。

根据本公开的非限制性实施例,描述生成代表沉浸式视频的向后兼容视频流的方法和设备。还描述这样的流的格式。根据本公开的另一非限制性实施例,展现能够在接收到这样的流时呈现视频的呈现设备,以及该设备用于根据流的格式来合成要呈现的视频的方法。

本公开提出捕获沉浸式视频的至少一个部分。从沉浸式视频中移除该至少一个部分,以便于不在流中被包括两次。还准备该至少一个部分以构成适配于由传统视频呈现设备呈现的传统视频。将一方面没有所述至少一个部分的沉浸式视频和另一方面至少一个所准备的传统视频一起打包在流中。在呈现设备侧,当设备是传统视频呈现设备时,至少一个所准备的传统视频中的一个被解包并用作要呈现的视频;当设备是沉浸式视频呈现设备时,使用每个打包的视频。将沉浸式视频解包,并且将至少一个所准备的传统视频中的每一个映射回已经从中剪切出它的部分上。

图1图示了传统视频的呈现的示例。图像序列被编码在意在被映射在平面矩形映射表面11上的矩形帧10上。映射功能12是直接的,并且帧10和映射表面11是等同的。屏幕13可以不具有与映射表面11相同的分辨率和/或清晰度。结果,投影功能14可以重新缩放和/或裁剪或者在映射表面11的侧部显示黑条。在图1上,帧10和映射表面11具有4:3的长宽比,而屏幕具有16:9的长宽比。在该示例中,投影功能14在图像的中间操作裁剪,以产生适合于屏幕13的视频。在变型中,投影功能14将黑条添加到映射表面11的左侧和右侧,以获得适合于屏幕13的视频。在另一实施例中,图1的视频是立体的。在这样的变型中,帧10包含映射在两个不同映射表面11上的两个不同图像。根据屏幕的类型来组合映射表面,以呈现立体效果。

图2图示了准备用于球形映射表面的沉浸式视频的呈现的示例。图像序列被编码在意在被映射在球形映射表面21上的矩形帧20上。映射功能22建立帧20的每个像素与映射表面21上的点之间的映射(反之亦然)。在图2上,映射功能22基于等距矩形投影(也称为等距柱形投影)。帧20上的图像是变形的。距离在赤道处受到尊重而在两极处被拉伸。直线不再是直的并且透视图是变形的。在变型中,映射功能22例如基于等距锥形投影。如果屏幕23是矩形的(如对于头戴式显示设备(hmd)或平板或智能电话),则选择映射表面21的一部分。投影功能24包括选择如位于球体中心的相机所看到的映射表面21的一部分,该相机根据视场和分辨率被配置,以便于产生直接适合于屏幕23的图像。所选择的视场取决于显示设备的特性。对于hmd,有利地,视场的角度接近人类立体视觉场,其约为一百二十度。相机的瞄准方向对应于用户正看向的方向,并且沉浸式视频呈现设备的虚拟相机控制器用于修改相机的瞄准方向。在变型中,图2的视频是立体的。在这样的变型中,帧20包含映射在两个不同映射表面21上的两个不同图像。根据屏幕的类型来组合映射表面,以呈现立体效果。

使用放置在凸映射表面的中心处的相机获取视频,生成从该凸映射表面的中心处的视点捕获的视频。在图2中,球体是凸映射表面,并且虚拟相机构成该凸映射表面的中心处的视点,从该视点捕获视频。

图3图示了准备用于立方形映射表面的沉浸式视频的呈现的示例。图像序列被编码在意在被映射在立方形映射表面31上的矩形(或正方形)帧30上。映射功能32建立帧30中的正方形和立方体31的面之间的对应关系。反之亦然,映射功能确定如何在帧30的表面内组织立方体31的面。每个面上的图像不是变形的。然而,在帧30的整个图像中,线是分段直的并且透视图是断开的。图像可以包含空的正方形(填充有默认或随机色彩信息,在图3的示例上为白色)。投影功能如图2的投影功能那样工作。相机放置在立方体31的中心并捕获适合呈现设备的屏幕的图像。

在变型中,使用其他映射表面和/或映射功能,例如将视频帧映射在柱体或角锥上。

图2和图3中图示的沉浸式视频的帧20和30并不意在被映射在图1的平面矩形映射表面12上。当沉浸式视频被传递到传统视频呈现设备时,屏幕上的图像是变形的或分段显示的,并且对应于大于人类视觉场的视觉内容。相互地,当传统视频被传递到沉浸式视频呈现设备时,映射功能产生变形的图像。

此外,传统视频的电影语法与沉浸式视频的电影语法不同。例如,如果场景包括两个角色之间的对话,则沉浸式视频可以显示长的静止序列镜头:观看者通过交替地将他/她的头部转向一个角色和另一个角色来创建一些动态性。由于观看者在屏幕前是被动的,传统视频可以反而交替角色中的一个和另一个上的紧凑镜头以及宽广镜头,以在场景中引入一些动态性。然而,这样的影片编辑不推荐用于沉浸式视频,因为频繁的剪切可能使观看者失去他/她的方位或者甚至使他/她不舒服。传统视频可以包括变焦效果,而变焦效果在沉浸式视频中引起讨厌的相对运动效应(即具有侧视图变形的自运动错觉)。

本原理提出通过将虚拟相机放置在沉浸式视频被准备用于的映射表面的中心,从沉浸式视频捕获传统视频。获得描述用于相机的参数的相机控制数据。这些数据至少包括瞄准方向、取向和锥台大小(水平和垂直视场或视角)。相机控制数据用于控制从沉浸式视频捕获传统视频的虚拟相机。由于影片导演的手动编辑而获得这些数据。在另一实施例中,由于检测沉浸式视频中的感兴趣区域的算法而自动编辑相机控制数据。这样的算法例如可以基于对视频的图像中的显著性的分析,或者对于另一示例,基于观看者在利用hmd观看沉浸式视频时头部运动的统计量。

在图3中,立方体是凸映射表面,并且虚拟相机构成该凸映射表面的中心处的视点,从该视点捕获视频。

图4图示了从准备用于球形映射表面的沉浸式视频捕获传统视频的示例。虚拟相机放置在球形映射表面21的中心40(如图2中所示)。使用相机控制数据来引导相机朝向瞄准方向41并将相机的基准的帧倾斜达到取向42a。由相机锥台与球形映射表面的相交定义的沉浸式视频的部分23a既不是平面的(即它是球体的一部分),也不是矩形的(即该部分的边缘是弯曲的)。为了编码为传统视频,校正部分23a的可视内容,以便于在平面矩形映射表面上可映射而没有变形。从相机控制数据获得的相机的水平和垂直视角确定相机锥台的大小,并且因而确定部分23a的大小。用于视角参数的值必须遵循传统相机的常用值。以约六十度的水平视角获得宽广镜头。超过六十度,则出现广角变形效应。较窄的角度对应于拉近。对于小值,在相机正以其自身最大分辨率捕获沉浸式视频时,可能会出现分辨率问题。因此,必须仔细完成相机控制数据的编辑。

相机控制数据可以随时间变化。参数值的突然改变对应于传统视频编辑中的剪切。连续变化对应于相机效果。例如,如果沉浸式视频的背景不以相同速度朝相同方向旋转,则相机的瞄准方向上的连续变化可以对应于平移。也可以使用传统相机的瞄准方向上的这样的连续变化来补偿沉浸式视频中的平移,并且因此捕获静止镜头。其他相机控制数据可以随时间变化。如图4中所示,视角可以减小,以将部分23a重调大小到部分23b。该效果可以对应于拉近。锥台的取向也可以从方向42a变化到方向42b(例如操作相机向左倾斜)。

图5图示了从准备用于立方形映射表面的沉浸式视频捕获传统视频的示例。相机放置在立方体32的中心50(如图3上所示),并根据相机控制数据从该视点捕获传统视频。所捕获的传统视频是映射表面的一部分,并且可以比立方体的面小或大,和/或可以分布在立方体的若干个面上。在变型中,如图5上所示,立方体根据瞄准方向参数51a重新取向并根据锥台大小参数重调大小,以便于使传统视频的帧53a适合立方体的面。取向参数控制立方体的倾斜。如果帧53a是矩形,则映射表面适配于平行六面体。该操作的条件为分辨率管理,因为面的重调大小修改了映射表面的区域和映射功能,并且因而修改了帧中编码的图像的分辨率。

相机控制数据可以以突然或连续的方式随时间变化。图5图示了示例,其中瞄准方向从值51a变化到值51b,并且锥台大小从值53a变到值53b。在该示例中,将映射表面的背面重新取向以垂直于瞄准方向53b。锥台大小的减小(对应于在效果上拉近)修改了正面的大小,并且因而修改了侧面的形状。映射表面54变成截断角锥,导致映射功能(即在沉浸式视频的帧中组织像素的方式)的修改。

映射表面的这样的变换的优点在于促成从沉浸式视频中移除被捕获用于传统视频的部分。这样的技术允许用于编码色彩信息的沉浸式视频的帧中的所需区域最小化。另一优点在于用于传统视频的映射表面的面已经是平面的和矩形的(即不需要分段部分的组合)。

图6图示了从沉浸式视频60捕获的两个传统视频61和63的示例,以及已经从中移除用于所述两个传统视频的两个部分的该沉浸式视频的示例。在图6的示例中,沉浸式视频准备用于如图2上所示的球形映射表面。由放置在映射球体的中心并在沉浸式视频60的部分62的方向上瞄准的相机捕获第一传统视频61(也称为第一视频)。校正所捕获的部分62以便于构成传统视频61,并从沉浸式视频60中移除。在图6的示例中,移除采取以默认色彩填充该部分的区域的形式。这具有减轻帧60的压缩版本的优点。

根据沉浸式视频被准备用于的映射表面,从沉浸式视频中移除一部分可以采取不同的形式。例如,对于准备用于平行六面体映射表面的沉浸式视频,移除可以采取修改映射功能的形式,以便于优化(即尽可能地减少)沉浸式视频的帧的区域。如图5中所示,可以修改映射表面的形状。结果,映射功能改变并且帧的大小被适配以与新的映射功能相对应。

从一个沉浸式视频中,可以以不同相机控制数据来捕获若干个传统视频(即第一视频)。在图6上,从放置在球体中心并由不同相机控制数据引导的传统相机来捕获第二传统视频63。校正所捕获的部分64以便于构成传统视频63,并从沉浸式视频60中移除。利用球形映射表面,所捕获的部分在帧上的投影不是矩形的。

图7示出了被配置为实现关于图8或图9描述的方法的装置70的硬件实施例。在该示例中,设备70包括以下元件,该元件通过也传输时钟信号的地址和数据的总线71彼此连接:

-微处理器72(或cpu),其为例如dsp(或数字信号处理器);

-rom(只读存储器)型的非易失性存储器73;

-随机存取存储器或ram(74);

-i/o接口75,其用于从应用接收数据以传送;以及

-图形卡76,其可以嵌入随机存取存储器的寄存器;

-电源77。

根据示例,电源77在设备的外部。在每个提及的存储器中,说明书中使用的词语“寄存器”可以对应于小容量的区域(一些比特)或者非常大的区域(例如整个程序或大量的接收或解码的数据)。rom73至少包括程序和参数。rom73可以存储算法和指令以执行根据本原理的技术。当接通时,cpu72上传ram中的程序并执行对应的指令。

ram74在寄存器中包括由cpu72执行并在设备70接通之后上传的程序,在寄存器中包括输入数据,在寄存器中包括方法的不同状态下的中间数据,以及在寄存器中包括用于执行该方法的其他变量。

在此描述的实现方式可以例如以方法或处理、装置、软件程序、数据流或信号来实现。即使仅在单一形式的实现方式的背景下进行了讨论(例如,仅作为方法或设备进行了讨论),但是所讨论的特征的实现方式也可以以其他形式(例如程序)来实现。装置可以在例如适当的硬件、软件和固件中实现。方法例如可以在诸如例如处理器(其一般指代处理设备,包括例如计算机、微处理器、集成电路或可编程逻辑器件)之类的装置中实现。处理器还包括诸如例如计算机、蜂窝电话、便携/个人数字助理(“pda”)、机顶盒之类的通信设备,以及促成在最终用户之间进行信息通信的其他设备。

根据如图8上所示的生成向后兼容沉浸式视频流的示例,从源获得沉浸式视频和相机控制数据。例如,源属于包括以下的集合:

-本地存储器(73、74或76),例如视频存储器或ram(或随机存取存储器)、闪速存储器、rom(或只读存储器)、硬盘;

-存储接口(75),例如与大容量储存器、ram、闪速存储器、rom、光盘或磁性支撑的接口;以及

-通信接口(75),例如有线接口(例如总线接口、广域网接口、局域网接口)或无线接口(诸如ieee802.11接口或蓝牙接口)。

根据一个具体实施例,实现生成向后兼容沉浸式视频流并在下文在图9中描述的方法的步骤的算法存储在与实现这些步骤的设备70相关联的图形卡76的存储器gram中。根据变型,由cpu(72)分配ram(74)的一部分以用于算法的储存。这些步骤导致视频流的生成,该视频流被发送到属于包括本地存储器(例如视频存储器(74)、ram(74)、rom(73)、闪速存储器(73)或硬盘(73))、储存接口(75)(例如与大容量储存器、ram、rom、闪速存储器、光盘或磁性支撑的接口)的集合的目的地,和/或从通信接口(75)(例如到点对点链路、总线、点对多点链路或广播网络的接口)接收。

根据示例,被配置为实现关于图8描述的生成向后兼容沉浸式视频流的方法的设备70属于包括以下的集合:

-移动设备;

-通信设备;

-游戏设备;

-平板(或平板计算机);

-膝上型设备;

-编码芯片;

-静止图片服务器;以及

-视频服务器(例如广播服务器、视频点播服务器或网络服务器)。

根据从向后兼容沉浸式视频流合成视频的示例,从源获得代表向后兼容沉浸式视频的流。示例性地,从本地存储器(例如视频存储器(74)、ram(74)、rom(73)、闪速存储器(73)或硬盘(73))读取流。在变型中,从储存接口(75)(例如与大容量储存器、ram、rom、闪速存储器、光盘或磁性支撑的接口)接收流和/或从通信接口(75)(例如到点对点链路、总线、点对多点链路或广播网络的接口)接收流。

根据一个具体实施例,实现从向后兼容沉浸式视频流合成视频以用于呈现设备并在下文在图9中描述的方法的步骤的算法存储在与实现这些步骤的设备70相关联的图形卡76的存储器gram中。根据变型,由cpu(72)分配ram(74)的一部分以用于算法的储存。这些步骤导致视频的合成,该视频被发送到属于包括以下的集合的目的地:

-移动设备;

-通信设备;

-游戏设备;

-机顶盒;

-tv机;

-平板(或平板计算机);

-膝上型设备;

-显示器以及

-解码芯片。

图8示意性示出了在诸如根据非限制性有利实施例的设备70之类的处理设备中实现的生成向后兼容沉浸式视频流的方法80的实施例。

在初始化步骤81中,设备70从源获得沉浸式视频。应注意,本文档中的从源获得信息的步骤可以视为在电子设备的存储单元中读取这样的信息的步骤,或者视为经由通信部件(例如经由有线或无线连接或者通过接触连接)从另一电子设备接收这样的信息的步骤。设备70从源加载相机控制数据。数据的源可以与沉浸式视频的源相同。在变型中,两个源是不同的。例如,相机控制数据可以存储在设备70的存储器上(或者甚至写在实现该方法的程序中),而沉浸式视频从视频服务器获得。

并行执行步骤82和83。在变型中,在步骤83之前执行步骤82。在另一变型中,在步骤82之前执行步骤83。在步骤82,将沉浸式视频映射在其被准备用于的映射表面上。虚拟相机放置在映射表面的中心。根据相机控制数据引导相机,该相机控制数据确定沉浸式视频的构成每个第一传统视频的视觉内容的部分。对于每个第一传统视频,将所捕获的部分编码为传统视频并准备作为视频流。根据变型,步骤82不使用虚拟相机,并且剪切出如从源获得的沉浸式视频帧的一部分,在必要的情况下校正视觉内容并将所计算的帧编码为传统视频。在步骤83,通过从如从源获得的沉浸式视频中移除被捕获用于第一传统视频的部分来准备第二沉浸式视频帧。如图4至图6中所示,根据已经准备用于的沉浸式视频的映射表面的形状,从沉浸式视频中移除一部分可以采取不同的形式。步骤83使用相机控制数据来确定要移除的部分的形状。关于步骤82,可以直接在沉浸式视频的帧上处理该步骤83,或者使用放置在映射表面的中心的虚拟相机,沉浸式视频被映射在映射表面上。在另一实施例中,在远程设备上执行步骤82和83。第一视频和第二视频由另一设备准备并存储在介质上或传送到设备70。生成步骤82和83包括获得在远程设备上生成的视频。

对代表用于捕获第一传统视频的部分的描述的信息数据进行编码的可选步骤84与步骤82和83并行执行。在变型中,以任何顺序顺次地执行步骤82、83和84。在变型中,不执行步骤84并且不对数据进行编码。这些数据描述在步骤83移除的沉浸式视频的部分。取决于如在步骤83重组的沉浸式视频的映射表面,所述数据对关于第一传统视频必须被映射的方式和位置的描述进行编码,以便于取回如从源获得的沉浸式视频。信息数据与相机控制数据有关,并且与在捕获第一传统视频时已经准备映射表面的方式有关。

在步骤85,生成向后兼容沉浸式视频流。将至少一个第一传统视频打包在流中作为第一语法元素。将第二沉浸式视频打包在流中作为第二语法元素。利用图像/视频编码器(例如有损编码器,比如jpeg、jpeg2000、mpeg2、hevc建议书(“highefficiencyvideocoding”,h系列:视听和多媒体系统,建议书itu-th.265,itu电信标准化部门,2013年4月),或h264/avc建议书(“advancedvideocodingforgenericaudiovisualservices”,h系列:视听和多媒体系统,建议书itu-th.264,itu电信标准化部门,2014年2月))对所有视频进行编码和压缩。如果已经在步骤84生成信息数据,则将它们添加到流作为第三语法元素。例如将这两个或三个语法元素打包在允许解码器独立地取回每个语法元素的流容器中,诸如avi或mpeg4。

图9示意性示出了在诸如根据非限制性有利实施例的设备70之类的处理设备中实现的从向后兼容沉浸式视频流合成视频的方法90的实施例。

在初始化步骤91中,设备70从源获得向后兼容沉浸式视频流。应理解,本文档中的从源获得信息的步骤可以视为在电子设备的存储单元中读取这样的信息的步骤,或者视为经由通信部件(例如经由有线或无线连接或者通过接触连接)从另一电子设备接收这样的信息的步骤。

测试条件步骤92。当设备70是传统视频呈现设备或者连接到传统视频呈现设备时,执行步骤93。当设备70是沉浸式视频呈现设备或者连接到沉浸式视频呈现设备时,执行步骤95。在另一实施例中,设备70连接到若干呈现设备,一些呈现设备是传统视频呈现设备,而另一些呈现设备是沉浸式视频呈现设备。在这样的实施例中,并行执行步骤93和95,并且将由该方法的每个分支合成的视频发送到各个呈现设备。

步骤93包括从流中提取一个传统视频。向后兼容沉浸式视频流的不同语法元素被打包在容器中,该容器允许接收器独立地提取一个给定语法元素。容器格式例如是avi或mpeg4。如果在流的首标中不存在关于要显示的优选视频的信息,则设备70正提取第一语法元素中的第一个。当接收由这样的容器组织的流时,常规的传统视频播放器被配置用于呈现该第一语法元素。如本公开中描述的向后兼容沉浸式视频流的优点在于可由常规的传统视频播放器直接读取。一旦提取了对所选视频进行编码的语法元素,就执行步骤94。

在步骤94,将从流中提取的传统视频解码以发送到呈现设备。该步骤可以包括使用编解码器(例如mpeg2、hevc或h264/avc建议书)的解压缩的步骤。将合成的传统视频发送到连接到设备70的呈现设备。在变型中,设备70是传统视频呈现设备,并且合成视频显示在设备70的屏幕上。

在步骤95,从流中提取流的每个第一语法元素和第二语法元素并将其解码。使用每个第一语法元素来解码传统视频。使用语法的第二元素来解码已经从中移除至少一个部分的沉浸式视频。当流中存在语法的第三元素时,并行执行步骤96。在变型中,在步骤95之前或之后执行步骤96。在步骤96,从流中提取流的第三语法元素,并且对信息数据进行解码。这些信息数据表示描述元素,包括已经从沉浸式视频中移除以生成第二语法元素的部分的形状、位置和大小。

步骤97包括从步骤95的所提取的视频的帧合成沉浸式视频。如果在流的结构中没有发现第三语法元素,则默认地设置信息数据。根据信息数据,使第一传统视频的每个帧变形、重新缩放和移位。在该操作之后,这些经修改帧填充当已经生成流时已经从中移除它们的沉浸式视频的部分。将这些经修改帧叠加在第二沉浸式视频帧上。该步骤的结果是没有移除部分的沉浸式视频帧。将该所得帧映射在沉浸式视频的映射表面上。在变型中,在映射表面上完成叠加。在另一实施例中,设备70能够跟踪用户观看的沉浸式视频的部分,并且仅在对应部分属于用户的视场(或者稍微更大的部分)的情况下将第一传统视频叠加在沉浸式视频上。

图10示出了向后兼容沉浸式视频流的示例结构100。该结构包括将流组织在独立的语法元素中的容器。该结构可以包含首标部分101,其为共用于流的每个语法元素的数据集合。例如,首标部分包含关于语法元素的元数据,描述每个语法元素的性质和作用。例如,首标部分可以包含关于要由传统视频播放器提取的优选第一传统视频的信息。向后兼容沉浸式视频流包含与第一传统视频相关的语法的第一元素102,该视频代表沉浸式视频的一部分。该第一语法元素102在流中是强制性的,并且当在首标部分中不存在关于优选传统视频的信息时,默认地将该第一语法元素102视为优选传统视频。可以通过如图8中所示的生成方法在流中添加附加第一语法元素103。这些附加第一语法元素中的每一个与第一传统视频相关,该视频代表沉浸式视频的一部分。优选传统视频可以是流的这些附加语法元素中的一个(如果在首标部分中将其指定为优选的一个)。语法的第二元素104是强制性的,并且与从已经从中移除所述至少一个部分的沉浸式视频生成的第二沉浸式视频相关。该第二语法元素104具有首标部分,该首标部分包含关于第二沉浸式视频被准备用于的映射表面和映射功能的信息。在变型中,第二语法元素104的首标部分与流的首标部分101聚集。根据另一实施例,该信息随时间变化并且与第二沉浸式视频同步。可以沿第二语法元素而不是在首标部分中包括该信息。

可以在流的结构中包括可选的第三语法元素105,其与代表所述至少一个部分的描述的信息数据相关。这些信息数据表示描述元素,包括已经从沉浸式视频中移除以生成第二语法元素的部分的形状、位置和大小。在变型中,这些信息数据随时间变化并且与第二语法元素的第二沉浸式视频同步。

当然,本公开不限于先前描述的实施例。具体地,本公开不限于生成向后兼容沉浸式视频流的方法和从向后兼容沉浸式视频流合成视频以用于呈现设备的方法。生成这样的流或者从这样的流合成视频所必需的计算的实现方式不限于cpu中的实现方式,而是还扩展到任何程序类型的实现方式,例如可以由gpu型微处理器执行的程序。

在此描述的实现方式可以例如以方法或处理、装置、软件程序、数据流或信号来实现。即使仅在单一形式的实现方式的背景下进行了讨论(例如,仅作为方法或装置进行了讨论),但是所讨论的特征的实现方式也可以以其他形式(例如程序)来实现。装置可以在例如适当的硬件、软件和固件中实现。方法例如可以在诸如例如处理器(其一般指代处理设备,包括例如计算机、微处理器、集成电路或可编程逻辑器件)之类的装置中实现。处理器还包括通信设备,诸如例如智能电话、平板、计算机、移动电话、便携/个人数字助理(“pda”)、视频服务器、机顶盒和其他设备。

在此描述的各种处理和特征的实现方式可以以各种不同的装备或应用来实施,具体地,例如,与数据编码、数据解码、视图生成、纹理处理以及图像和相关的纹理信息和/或深度信息的其他处理相关联的装备或应用。这样的装备的示例包括编码器、解码器、处理来自解码器的输出的后处理器、向编码器提供输入的预处理器、视频编码器、视频解码器、网络服务器、机顶盒、膝上型设备、个人计算机、蜂窝电话、pda和其他通信设备。如应当清楚的那样,该装备可以是移动的,并且甚至安装在移动交通工具中。

另外,该方法可以由处理器正执行的指令来实现,并且这样的指令(和/或由实现方式产生的数据值)可以存储在处理器可读介质上,诸如例如集成电路、软件载体或其他储存设备,诸如例如硬盘、压缩盘(“cd”)、光盘(诸如例如dvd,通常称为数字通用盘或数字视频盘)、随机存取存储器(“ram”)或只读存储器(“rom”)。指令可以形成有形地实施在处理器可读介质上的应用程序。指令可以例如在硬件、固件、软件或组合中。指令可以存在于例如操作系统、单独的应用或两者的组合中。因此,处理器可以表征为例如被配置为执行处理的设备和包括具有用于执行处理的指令的处理器可读介质(诸如储存设备)的设备二者。此外,除了指令或者代替指令,处理器可读介质可以存储由实现方式产生的数据值。

如对于本领域技术人员将明显的那样,实现方式可以产生被格式化为携带例如可以被存储或传送的信息的各种信号。信息可以包括例如用于执行方法的指令或者由所描述的实现方式之一产生的数据。例如,可以将信号格式化为携带用于写入或读取所描述的实施例的语法的规则作为数据,或者携带所描述的实施例写入的实际语法值作为数据。这样的信号例如可以被格式化为电磁波(例如使用频谱的射频部分)或者基带信号。格式化可以包括例如对数据流进行编码以及以经编码的数据流调制载波。信号携带的信息例如可以是模拟或数字信息。如已知的那样,可以通过各种不同的有线或无线链路来传送信号。信号可以存储在处理器可读介质上。

已经描述了多个实现方式。然而,将理解,可以做出各种修改。例如,可以对不同实现方式的元素进行组合、补充、修改或移除,以产生其他实现方式。另外,本领域普通技术人员将理解,其他结构和处理可以代替所公开的那些结构和处理,并且所得到的实现方式将以与所公开的实现方式至少基本相同的方式来执行与所公开的实现方式至少基本相同的功能,以实现与所公开的实现方式至少基本相同的结果。因此,本申请想到这些以及其他实现方式。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1