用于沉浸式视频格式的方法、装置和流与流程

文档序号:13075941阅读:252来源:国知局
用于沉浸式视频格式的方法、装置和流与流程

本公开涉及沉浸式视频内容的领域。本公开内容也在表示沉浸式内容的数据的格式化的上下文中被理解,例如用于终端用户设备(例如移动设备或头戴式显示器)上的渲染。



背景技术:

本部分是为了向读者介绍可能与下文所述的和/或所要求保护的本公开的各个方面相关的现有技术的各个方面。相信本讨论有助于向读者提供背景信息,以便于更好地理解本发明的各个方面。因此,应当理解,这些陈述应鉴于此被解读,而不是作为对现有技术的承认。

诸如头戴式显示器(hmd)或cave的显示系统允许用户浏览沉浸式视频内容。可以用cgi(计算机生成的影像)技术获得沉浸式视频内容。通过使用这种沉浸式视频内容,可以根据观看内容的用户的视点来计算内容,但是具有不切实际的图形质量。可以通过在诸如球体或立方体的表面上映射视频(例如,由多个相机获取的视频)来获得沉浸式视频内容。这种沉浸式视频内容提供了良好的图像质量,但出现了与视差、尤其是对于前景(即接近相机)的场景的对象的视差有关的问题。

在沉浸式视频内容的上下文中,自由视点视频(fvv)是一种用于多视点视频的表示和编码以及后续从任何视点重新渲染的技术。在沉浸式上下文中增强用户体验的同时,要传送给渲染器的数据量非常重要并可能是一个问题。



技术实现要素:

说明书中对“一个实施例”、“实施例”、“示例实施例”、“具体实施例”的参考指示所描述的实施例可以包括特定特征、结构或特性,但是每个实施例可以不必包括所述特定特征、结构或特性。此外,这种短语不必参照同一实施例。此外,当结合实施例来描述特定特征、结构、或特性时,应认为结合其他实施例(不管是否是显式描述的)来实现这种特征、结构、或特性是在本领域技术人员的知识内的。

本公开涉及一种根据场景的对象的至少一个图像生成流的方法,所述方法包括:

-获得与表示对象的至少一部分的点云的点相关联的数据;

-根据与对象的至少一部分相关联的至少一个几何特性和用于获取至少一个图像的获取设备的姿态信息,获得表示参数表面的至少一个参数,所述至少一个几何特性是根据与点云的点相关联的表面获得的,点云的点与对象的至少一部分相关联;

-根据所述数据获得与参数表面相关联的高度图,所述高度图包括表示所述对象的至少一部分与所述参数表面之间的距离的信息;

-根据所述数据获得与参数表面相关联的至少一个纹理图;

-通过将与至少一个参数相关的第一语法元素、与高度图相关的第二语法元素、与至少一个纹理图相关的第三语法元素和与获取设备的位置相关的第四语法元素组合在一起而生成流。

根据具体特性,至少一个参数根据对象的至少一部分的变形随时间变化。

根据具体特性,所述数据包括纹理信息和表示深度的信息。

本公开还涉及一种设备,该设备被配置为实现上述根据场景的对象的至少一个图像生成流的方法。

本公开还涉及携带表示场景的对象的数据的流,其中,数据包括:

-第一语法元素,与根据与对象的至少一部分相关联的至少一个几何特性和用于获取至少一个图像的获取设备的姿态信息而获得的表示参数表面的至少一个参数相关,所述至少一个几何特性是根据与点云的点相关联的表面获得的,所述点云的点与对象的至少一部分相关联;

-第二语法元素,与根据与表示所述对象的至少一部分的点云的点相关联的第二数据所获得的高度图相关,所述高度图包括表示所述对象的所述至少一部分与参数表面之间的距离的信息;

-第三语法元素,与根据第二数据获得的至少一个纹理图相关;以及

-第四语法元素,与获取设备的位置相关。

根据具体特性,第一语法元素根据至少一个参数的变化而随时间变化,至少一个参数根据对象的至少一部分的变形而变化。

根据具体特性,第二数据包括纹理信息和表示深度的信息。

本公开还涉及一种根据携带表示所述对象的数据的流来渲染的对象的至少一部分的图像的方法,所述方法包括:

-根据所述流的第一语法元素获得表示参数表面的至少一个参数;

-根据所述流的第二语法元素获得高度图,所述高度图包括表示所述对象的所述至少一部分与参数表面之间的距离的信息;

-根据所述流的第三语法元素获得至少一个纹理图;

-根据参数表面、高度图和至少一个纹理图获得与表示所述对象的所述至少一部分的点云的点相关联的数据;

-根据所述流的第四语法元素基于所述数据和表示获取设备的位置的信息来渲染图像。

根据具体特性,所述数据包括纹理信息和表示深度的信息。

根据具体特性,所述渲染包括对所述数据进行层片(splat)渲染。

本公开还涉及一种设备,该设备被配置为实现根据携带表示所述对象的数据的流来渲染对象的至少一部分的图像的方法。

本公开还涉及包括程序代码指令的计算机程序产品,当在计算机上执行该程序时,所述指令用于执行根据携带表示所述对象的数据的流来渲染对象的至少一部分的图像的方法的步骤。

本公开还涉及包括程序代码指令的计算机程序产品,以执行根据场景的对象的至少一个图像生成流的方法的步骤。

本公开还涉及(非瞬时性)处理器可读介质,所述处理器可读介质中存储有指令,所述指令用于使处理器执行至少上文提到的根据场景的对象的至少一个图像生成流的方法。

本公开还涉及(非瞬时性)处理器可读介质,所述处理器可读介质中存储有指令,当在计算机上执行该程序时,所述指令用于使处理器执行至少上文提到的根据携带表示所述对象的数据的流来渲染对象的至少一部分的图像的方法。

附图说明

通过阅读参考附图的以下描述,将更好地理解本公开,并将清楚其它具体特征和优点,在附图中:

图1示出了根据本原理的具体实施例的沉浸式内容;

图2a和图2b示出了根据本原理的具体实施例被配置为获取场景的图像以获得图1的沉浸式内容的至少一部分的光场获取设备;

图3示出了根据本原理的具体实施例用图2a和图2b的获取设备所获取的场景的对象的一部分的表示;

图4示出了根据本原理的具体实施例用于表示图3的对象的过程中所使用的参数表面;

图5a、图5b和图5c示出了图4的参数表面的采样的示例实施例;

图6示出了根据本原理的具体实施例的图4的参数表面相对于图3的对象的变形的匹配;

图7示出了根据本原理的第一具体实施例的纹理信息与图4的参数表面的关联;

图8示出了根据本原理的第二具体实施例的纹理信息与图4的参数表面的关联;

图9示出了根据本原理的示例被配置为实现图12和/或图13的方法的设备架构的示例;

图10示出了根据本原理的示例通过通信网络通信的图9的两个远程设备;

图11示出了根据本原理的示例的携带图3的对象的描述的信号的语法;

图12示出了根据本原理的示例生成描述图3的对象的数据流的方法;

图13示出了根据本原理的示例渲染图3的对象的图像的方法。

具体实施方式

因此,现在参考附图描述主题,其中,相似的附图标记用于贯穿完全表示相似的元素。在下文的描述中,为了解释的目的,阐述了许多具体细节,以提供对主题的透彻理解。然而,显而易见的是,没有这些具体细节也可以实施主题实施例。

本说明书示意了本公开的原理。因此,将理解的是,本领域的技术人员将能够设计出虽然没有明确地在此描述或示出但体现了本公开的原理的各种布置。

将参考生成表示场景的对象的数据流的方法和/或根据生成的数据流来渲染该对象的一个或多个图像的方法的具体实施例来描述本原理。根据用一个或多个获取设备获取的对象(或其一部分)的一个或多个图像确定表示对象(或其一部分)的点云。参数表面被计算为对象(或其一部分)的表示的基础,通过使用对象的几何特性(例如,点云的极值点和/或与根据点云获得的对象的外表面的元素相关联的法线信息)和获取设备的姿态信息(例如用于定向参数表面)来计算参数表面。高度图和一个或多个纹理图被确定并与参数表面相关联。通过将表示参数表面的信息(即参数)与高度图的高度信息、纹理图的纹理信息、以及获取设备的姿态信息进行组合和/或对表示参数表面的信息(即参数)进行编码来生成数据流。在解码器/渲染器侧,可以通过解码/提取表示参数表面的信息和相关联的高度图和纹理图来获得对象(或其一部分)的图像。

与用点云表示相比,使用参数表面作为用与参数表面的样本相关联的纹理信息和高度信息表示对象的参考能够减小表示对象所需的数据量。

图1示出了根据本原理的具体和非限制性实施例具有4π立体角视频内容的非限制性示例性形式的沉浸式内容10的示例。图1与沉浸式内容10的平面表示相对应。沉浸式内容10与例如使用一个或多个相机获取的真实场景、或与包括真实对象和虚拟对象的混合现实场景相对应,该虚拟对象例如通过使用3d引擎合成。沉浸式内容10的部分11例如与显示在适于可视化沉浸式内容的显示设备上的沉浸式内容的部分相对应,部分11的尺寸例如与由显示设备提供的视场相等。

用于使沉浸式内容10可视化的显示设备是例如戴在用户的头上或作为头盔的一部分的hmd(头戴式显示器)。hmd有利地包括一个或多个显示屏(例如lcd(液晶显示器)、oled(有机发光二极管)或lcos(硅上液晶))和被配置用于根据真实世界的一个、两个或三个轴(俯仰、偏航和/或滚动轴)测量hmd(例如陀螺仪或imu(惯性测量单元))的位置变化的传感器。与hmd的测量位置相对应的沉浸式内容10的部分11有利地用具体函数确定,所述具体函数建立同真实世界中的hmd相关联的视点与同沉浸式内容10相关联的虚拟相机的视点之间的关系。根据hmd的测量位置控制要在hmd的显示屏上显示的视频内容的部分11使穿戴hmd的用户能够浏览与同hmd的显示屏相关联的视场相比更大的沉浸式内容。例如,如果由hmd提供的视场等于110°(例如关于偏航轴),并且如果沉浸式内容提供180°的内容,则穿戴hmd的用户可以将他/她的头向右或向左旋转,以观看hmd提供的视场以外的视频内容的部分。根据另一示例,沉浸式系统是cave(洞穴自动虚拟环境)系统,其中沉浸式内容被投影到房间的墙壁上。cave的墙壁例如由背投屏幕或平板显示器组成。因此,用户可以在房间的不同墙壁上浏览他/她的视线。cave系统有利地具备相机,相机获取用户的图像以通过这些图像的视频处理确定用户的视线方向。根据一个变型,使用跟踪系统(例如红外线跟踪系统)确定用户的视线或姿势,所述用户穿戴红外传感器。根据另一变型,沉浸式系统是具有触觉显示屏的平板电脑,用户通过用一个或多个手指在触觉显示屏上滑动来滚动内容,从而浏览内容。

沉浸式内容10和部分11也可以包括前景对象和背景对象。

自然地,沉浸式内容10不限于4π立体角视频内容,而是扩展到具有大于视场11的大小的任何视频内容(或视听内容)。沉浸式内容可以是例如2π、2.5π、3π的立体角内容等。

图2a和图2b示出了光场获取设备的示例。更具体地,图2a和图2b各自示出了根据本原理的两个具体实施例的相机阵列2a、2b(也称为多相机阵列)。

相机阵列2a包括透镜或微透镜的阵列20和一个或多个传感器阵列21,透镜或微透镜的阵列20包括若干微透镜201、202至20p,其中p是与微透镜的数量相对应的整数。相机阵列2a不包括主透镜。透镜阵列20可以是通常命名为微透镜阵列的小器件。具有单个传感器的相机阵列可以被认为是其中主透镜具有无穷大焦距的全光相机的特殊情况。根据其中光传感器的数量等于微透镜的数量(即,一个光传感器与一个微透镜光学相关联)的具体布置,相机阵列20可以被看作是多个间距小的单独相机(例如微型相机)的布置,例如正方形布置(如图2a所示)或例如五点形布置。

相机阵列2b与各自包括透镜和光传感器阵列的单独相机的装备相对应。相机以例如等于几厘米或更小、或5厘米、7厘米或10厘米的距离间隔开。

用这种相机阵列2a或2b获得的光场数据(形成所谓的光场图像)与场景的多个视图(即与可以通过对原始图像进行解复用和去马赛克获得的最终视图)相对应,原始图像是用例如类型1.0的全光相机、或否则类型2.0的全光相机(也被称为聚焦全光相机)之类的全光相机获得的,类型1.0的全光相机对应于其中小透镜阵列与光传感器阵列之间的距离等于微透镜焦距的全光相机。相机阵列2b的相机根据任何已知方法进行校准,即相机的固有参数和外部参数是已知的。

使用光场获取设备获得的不同视图使得能够获得沉浸式内容或沉浸式内容的至少一部分。自然地,可以使用与光场获取设备不同的获取设备获得沉浸式内容,例如使用与深度传感器相关联的相机(例如,诸如mierosoft的kinect的红外发射机/接收机或使用激光发射器)。

图3示出了用沉浸式内容表示的场景的对象或其一部分的两种不同表示。根据图3的示例,对象是(例如,在场景内移动的)人,而与头部对应的对象的一部分在图3中示出。

对象的这部分的第一表示30是点云。点云与表示对象的大的点集合(例如对象的外表面或外部形状)相对应。点云可以被视为基于向量的结构,其中每个点具有其坐标(例如三维坐标xyz、或从给定视点来看的深度/距离)和一个或多个属性(也称为分量)。分量的示例是可以在诸如rgb(红、绿和蓝)或yuv(y是亮度分量并且uv是两个色度分量)之类的不同颜色空间中表达的颜色分量。点云是从给定的视点或视点范围观看的对象的表示。可以用不同方式获得点云,例如:

通过捕获由可选地由深度有源感测设备补充的相机的装备(如图2的相机阵列)拍摄的真实对象;

通过用建模工具捕获由虚拟相机的装备拍摄的虚拟/合成对象;

通过对真实对象和虚拟对象进行混合。

在第一情况下(通过捕获真实对象),相机的集合产生与不同视图(不同视点)相对应的图像或图像序列(视频)的集合。或者通过有源深度感测设备(例如在红外范围内)并基于结构化光分析或飞行时间、或基于视差算法获得深度信息——这意味着从每个相机中心到对象表面的距离。在这两种情况下,所有相机都需要内在地和外在地被校准。视差算法包括在通常沿着一维线作出的一对矫正的相机图像上搜索类似的视觉特征:像素列差异越大,该特征的表面越接近。在相机阵列的情况下,可以通过对利用多个相机对得到的多个对等视差信息进行组合获得全局深度信息,从而提高信噪比。

在第二种情况(合成对象)下,建模工具直接提供深度信息。

可以根据点云表示30获得对象的这部分的第二表示31,第二表示与表面表示相对应。可以处理点云以计算其表面。为此,对于点云的给定点,使用该给定点的相邻点来计算局部表面的在该给定点处的法线,根据法线导出与该给定点相关联的表面元素。针对所有点重复该过程以获得表面。用于根据点云重构表面的方法例如由matthewberger等人在2014年现有技术报告“stateoftheartinsurfacereconstructionfrompointclouds”中描述。根据一个变型,通过对该给定点应用层片渲染来获得与点云的给定点相关联的表面元素。通过混合与点云的点相关联的所有层片(例如,椭圆体)获得对象的表面(也称为对象的隐式表面或外表面)。

在具体实施例中,点云仅表示对象的部分视图,而不是对象的整体,并且这与例如在电影场景中在渲染侧应该如何观看对象的方式相对应。例如,面对平面相机阵列的角色的拍摄仅在装备侧产生点云。角色的背面甚至不存在,对象本身并不闭合,因此该对象的几何特性是面向装备的方向的所有表面的集合(每个局部表面的法线与返回获取设备的射线之间的角度例如小于180°)。

图4示出了根据本原理的非限制性实施例用于表示对象43的表面44。表面44是参数表面,即使用参数定义、并由参数方程定义的表面。

如图4所示,可能的参数表面的示例由圆柱体给出(为了清楚,仅示出一个维度,但是表面可以用2个或3个维度定义)。参数表面可以采用任何形状,例如正方形、矩形或更复杂的形状,只要表面可以用参数方程(即使用有限数量的参数)定义。对象43(其可以与图3的对象相对应)用3个获取设备40、41和42(例如,3个rgb相机)获取。不同的视点与每个获取设备40、41、42相关联。对象43的表面在平坦的圆柱形表面45上的投影与参数表面44到矩形的映射/投影相对应。与对象43的点相关联的、并根据用获取设备40、41、42获得的图像获取和/或计算的颜色信息和深度信息与平坦的圆柱形表面45的相应点相关联,即,颜色+高度信息与由行索引和列索引定义的每个点/像素相关联。从获取设备40的视图获得与表面45的部分450相关联的颜色信息和高度信息;从与获取设备41相关联的视图获得与表面45的部分451相关联的颜色信息和高度信息;以及从与获取设备42相关联的视图获得与表面45的部分452相关联的颜色信息和高度信息。

椭圆体46示出了表面45的一部分,圆形点与对象43的点云表示的点到参数表面44或其平坦表示45上的投影相对应。参数表面44的采样可能与根据点云得到的采样不同。在椭圆体46中用十字“+”表示参数表面的采样,参数表面的采样用有限数量的参数描述。如图5a、图5b和图5c的示例实施例中所示,参数表面44的采样可以是均匀的或非均匀的。

在图5a的示例中,参数表面的采样50是均匀的,即采样点的列被布置在彼此相同的距离(即距离“a”)处,这同样适应于行。

在图5b的示例中,参数表面的采样51是非均匀的,即采样点列被布置在彼此不同的距离处,即前两列(从左手侧开始)间隔开距离“a”、然后两列之间的距离为“a+b”、然后是“a+2b”、然后是“a+3b”以此类推。在图5b的示例中,行以相同的距离彼此间隔开。

在图5a和图5b的示例中,与同每个样本相关联的高度信息相关联的方向与参数表面正交。在图5c的示例中,与同采样53的样本相关联的高度信息相关联的方向随着样本以变化的角度θ0+q*δθ改变,其中θ0是初始角度,并且q是从0变化到最大值n的整数,δθ与两个连续样本之间的角度变化相对应。

参数表面上的采样密度例如根据以下各项进行调整:

对象(即点云)的采样;和/或

预期的渲染质量。

例如,对象越远,相机采样将越稀疏,并且对参数表面上的采样可以越稀疏。

与参数表面的样本相关联的值为:

几何信息,即参数表面和对象隐式表面之间的距离;

颜色信息。在最简单的形式中,可以针对与参数表面的每个样本相对应的对象表面区域的不同视图计算出复合颜色值,从而得到例如平均漫反射颜色(即,可以与参数表面的样本相关联的点云的点的颜色信息的平均值)。

与参数表面的样本相关联的高度信息可以存储在具有与参数表面一样多的样本的高度图中。与参数表面的样本相关联的颜色信息可以存储在具有与参数表面一样多的样本的纹理图中。

可以通过从给定样本(与参数表面正交或不正交,这取决于参照图5a、图5b和图5c所解释的采样)投射射线获得要与给定样本相关联的高度信息,根据将样本与点云的点分开的距离来确定高度,所述点云的点属于同射线与从点云获得的对象的表面之间的交点相关联的点云的区域。当若干点属于该区域时,距离可以是将样本与该区域的多个点分开的距离的平均值。参数表面和点云在关于获取设备的世界坐标空间中定义,获得参数表面的样本与对象的外表面的点之间的距离作为欧几里德距离。

以相同的方式,可以通过从给定样本投射射线来获得要与给定样本相关联的纹理信息。纹理信息是根据属于同射线与对象的表面之间的交点相对应的区域的点云(例如平均值)的点的纹理/颜色信息获得的。在另一实施例中,当已知参数表面的分析表示(即其几何形状和法线)时,点云可以(例如利用迭代牛顿方案)直接泼溅(splat)(使用法线和尺寸的相关联信息)到参数表面上。在这种情况下,根据层片的混合获得纹理信息。

在一个变型中,多个参数表面可以与同一对象相关联。对象可以被分割成多个部分,并不同的参数表面可以与每个部分相关联,与给定部分相关联的参数表面是根据部分的特定几何形状以及根据用于获取部分的获取设备的姿态信息确定的。根据该变型,高度图和一个或多个纹理图与每个参数表面相关联。例如,如果对象是人,则第一参数表面可以与一条腿相关联、第二参数表面可以与另一条腿相关联、第三参数表面可以与手臂相关联、第四参数表面可以与另一手臂相关联、第五参数表面可以与躯干相关联,并且第六参数表面可以与头相关联。

作为选择,可以添加附加的纹理,以记录来自mls(移动最小二乘)表面的计算副产品,计算副产品对于渲染是必需的但是耗时的。示例可以是法向量的纹理(例如在与cgi法线图等同的模式中)或诸如小和大坐标系方向和尺寸之类的层片几何形状。这些附加纹理的约束在于:它应当表现出良好的空间和时间相干性特性,以便与压缩引擎良好地适应。当发送所有必要的信息时,mls内核参数对于发送不再有用。

在图7所示的具体实施例中,多个纹理图可以与一个或多个参数表面相关联。图7示出了针对对象的部分70的两个参数表面71、72的生成,部分70根据不同的角度发射例如不同的颜色。在该情况下,可以记录和传送颜色的角扩展信息以及另一纹理信息,以在客户端侧正确地对其进行渲染(例如,通过根据观察窗的方向在两种颜色之间进行内插)。根据一个变型,替代两个参数表面70、71,可以生成单个参数表面,不同的纹理图与单个参数表面相关联。

在图8中所示的具体实施例中,可以针对对象的同一部分生成多个参数表面。例如,可以针对人的面部81计算第一参数表面(并且第一参数表面与人的面部81相关联)。可以针对面部81的一部分,即包括眼睛的部分82,计算第二参数表面(并且第二参数表面与面部81的所述部分相关联)。第一高度图和第一纹理图可以与第一纹理图相关联,使得能够例如使用第一等级的细节83表示脸。第二高度图和第二纹理图可以与第二纹理图相关联,使得能够例如使用第二等级的细节84表示脸的部分82。为了达到该目的,第一定义与第一参数表面相关联,并且第二定义(高于第一定义)与第二参数表面相关联。为了在渲染面部时使第二纹理可见,从为了生成第二高度图而计算的高度值中减去偏移值。存储在第二高度图中的高度值然后小于真实计算的高度值,从而将第二参数表面与面部的外表面分开。在渲染面部时,关于渲染视点,第二纹理信息将位于第一纹理信息的前面。

图6示出了根据本原理的具体但非限制性实施例的参数表面与对象的变形的匹配。图6的左手侧部分示出了与在时刻t处(或针对视频的第一帧a)获得的对象600相关联的参数表面604,并且图6的右手侧部分示出了与在时刻t+1处(或针对时间上在第一帧a之后的视频的第二帧b)获得的对象601(与对象600相对应,但具有不同的外部形状,即对象601与对象600的变形后的版本相对应)相关联的参数表面605。用例如与图4的获取设备40、41、42相对应的相机60、61、62的集合获取对象600、601。图6的上部与用户和相机的顶视图相对应,而图6的下部例如与用户和相机的前视图相对应,相机在下部示出为黑色圆盘。

为了最好地紧跟对象,与参数表面相对应的部分圆柱体604、660分别在相机60、61、62的装备(通常是静态的)的侧面在接近对象600、601的位置处分别部分地围绕对象600、601。可以通过分别计算围绕对象600、601的边界框602、603获得参数表面600、601的坐标,边界框602、603由点云的每个极值(x、y、z)坐标定义)。表示参数表面604、605的参数(例如,圆柱形的参数表面的高度、半径、中心位置)被确定为能够包围边界框的参数,参数表面604、605在相机视图的方向上开口。该示例示出了参数表面取决于(移动的)对象和相机装备的位置二者。

当相机60、61、62捕获的对象600、601从时刻t移动至时刻t+1时,用于表示对象的点云也变化:拓扑(或对象的几何特性)例如根据对象的运动(或根据应用于对象的变形)而变化,例如对象的宽度和/或高度改变。因此,针对每个视频帧,有必要使用记录和/或传送与点云相关的所有几何和/或纹理信息的相关联的高度图和纹理图来调整用于表示对象的参数表面的拓扑。可以应用以下约束:

-点云到参数表面的投影可以形成具有良好空间和时间一致性的视频图像,使得可以例如基于诸如h264/mpeg4或h265/hevc或任何其他标准的标准通过常规压缩引擎有效地压缩视频图像,这意味着允许表面平滑地演进而不具有快速跳视;和/或

-参数表面可以关于点云设置为使要由点云的投影覆盖的参数表面的部分最大化,并使其到点云的距离最小化,从而将最终图像的质量保存为例如通过psnr度量来测量。更准确地,用以下方式选择参数表面:

1.它最大程度地利用其(宽x高)图像分辨率;和/或

2.它对用于对深度进行编码的有用比特进行优化。

-每个帧处的参数表面的演变/变化可以作为元数据容易地记录、传送,并在解码器/渲染器侧进行恢复,这意味着参数表面可以用有限数量的参数表示。

图12示出了根据本原理的非限制性实施例用于生成包括表示例如在设备9(参照图9描述的)中实现的场景的对象的数据的流的方法。

在步骤1200中,更新设备9的不同参数。具体地,用任何方式对与对象的表示相关联的数据进行初始化。

在步骤1201中,获得与表示对象的一部分或对象整体的点云的点相关联的数据。数据(例如经由诸如因特网或局域网的网络)例如从诸如设备9的本地存储器或如服务器的远程存储设备的存储设备接收。根据另一示例,从用于获取包括对象的场景的一个或多个视图的一个或多个获取设备接收数据。数据包括例如纹理信息(例如,颜色信息)和距离信息(例如,与所考虑的点和同所考虑的点相关联的视点(即用于获取所考虑的点的获取设备的视点)之间的距离相对应的高度的深度)。

在步骤1202中,获得表示参数表面的一个或多个参数。参数表面与用点云表示的对象的部分(或整个对象)相关联。示例性参数表面的一般表达如下:

x=f1(t1,t2)

y=f2(t1,t3)

z=f3(t1,t2)

其中x、y、z是3个维度中的坐标,f1、f2、f3是连续函数以及t1、t2是参数。根据与点云相关联的外表面的几何特性、并根据用于获得点云的点的一个或多个获取设备的姿态信息,获得参数表面的参数。为了确定要与对象的所考虑的部分相关联的参数表面,点云的极值点的坐标可以例如根据与点相关联的坐标来确定。极值点与具有表达坐标的空间的维度中的至少一个维度的最小值或最大值的点相对应。从极值点获得包围点云的边界框。可以获得参数表面作为以边界框的背面的中心作为中心并且穿过边界框的前边缘的圆柱体,参考为获取设备。因此,通过使用获取设备的姿态信息来确定参数表面的取向。

根据一个变型,根据点云计算与对象的部分的外表面相关联的法向量。法向量的取向的变化可以用于以参数表面紧密跟随外表面的形状变化的方式来确定参数表面。

在步骤1203中,获得(即确定或计算)与在步骤1202处获得的参数表面相关联的高度图。针对参数表面的每个样本,通过发射射线(例如在所考虑的样本处与参数表面正交)来计算高度值。与考虑的样本相关联的高度值对应于所考虑的样本与对象点的部分的外表面的元素之间的距离(对应于射线与外表面之间的交点)。例如根据用于生成外表面的该表面元素的点云的点来获得与外表面的元素相关联的坐标。可以针对参数表面的每个样本计算高度值以获得高度图,所述高度图例如与存储图的每个样本的高度值的二维图(或图像)相对应,该图的样本的数量与参数表面的采样的样本的数量相对应。

在步骤1204中,获得(即确定或计算)与在步骤1202处获得的参数表面相关联的纹理图。纹理图例如与存储图的每个样本的纹理信息(例如,颜色信息)的二维图(或图像)相对应,纹理图的样本的数量与参数表面的采样的样本的数量相对应。通过发射例如在所考虑的样本处与参数表面正交的射线来确定与参数表面的所考虑的样本相关联的纹理信息。存储在纹理图中的纹理信息对应于同与该射线相交的对象的部分的外表面的表面元素相关联的纹理信息。根据用于获得该表面元素的点云的点的纹理信息获得与表面元素相关联的纹理信息。在一个变型中,针对参数表面可以获得若干纹理图。

在步骤1205中,通过对在步骤1202获得的参数、在步骤1203获得的高度信息和在步骤1204获得的纹理信息进行组合来获得包括表示对象的部分的数据的数据流1100。参照图11描述了这种流1100的结构的示例。与高度图和一个或多个纹理图相关联的参数表面形式的对象的部分的表示具有以下优点:与用点云表示相比,减少了表示对象的部分所需的数据量。可以向流中添加表示用于获得点云的获取设备的位置的其他信息。该其他信息具有的优点是将在渲染设备上对对象的部分的渲染约束在获取对象的部分的视点范围的界限内,从而避免了在尝试按照与用于获得点云的视点范围不相对应的视点根据数据流渲染对象的部分时,可能发生的渲染伪影,所述点云是表示流中包括的对象的部分的基础。

在可选步骤中,将数据流发送给编码器并由解码器或渲染器接收数据流,以便渲染或显示对象的部分。

在一个变型中,流的数据例如,当对象的部分的形状或外表面随时间变化时,例如逐帧地随时间变化。当外表面发生变化时,参数表面的参数将用高度图和纹理图进行更新,以表示对象的部分的形状变化。

在另一变型中,例如根据不同的采样分辨率,可以使用若干参数表面来表示对象的同一部分。

可以使用单个参数表面来整体地表示对象,或可以使用不同的参数表面来整体地表示对象,例如确定一个不同的参数表面用于表示对象的每个不同的部分。在这种变型中,通过对不同的参数表面和相关联的高度图和纹理图进行组合来获得数据流。

根据另一变型,将表示对象的背景的平面视频(即2d视频)添加到流(例如在诸如mp4或mkv的媒体容器)中。

图13示出了一种用于从根据使用图12的方法获得的流渲染表示对象的至少一部分的图像的方法。渲染方法例如根据本原理的非限制性实施例在设备9(关于图9描述)中实现。

在步骤1300中,更新设备9的不同参数。具体地,以任何方式对与对象的至少一部分的表示相关联的数据进行初始化。

在步骤1301中,从数据流1100获得表示参数表面的一个或多个参数,参照图11描述了这种流的结构的示例。一个或多个参数与例如在步骤1202获得的参数相对应。

在步骤1302中,从流1100获得与在步骤1301获得的参数表面相关联的高度图。高度图与例如在步骤1203获得的高度图相对应。

在步骤1303中,从流1100获得与在步骤1301获得的参数表面相关联的一个或多个纹理图。纹理图与例如在步骤1204获得的纹理图相对应。

在步骤1304中,根据在步骤1301获得的参数表面、在步骤1302获得的高度图和在步骤1303获得的纹理图获得与点云的点相关联的数据。这些点是通过对参数表面的样本进行去投影获得的,点的坐标是从样本的坐标以及与样本相关联的高度信息导出的,点的纹理信息是从与样本相关联的纹理信息获得的。

在步骤1305中,从由包括在流1100中的位置信息所约束的视点来渲染用参数表面、高度图和纹理图表示的对象的部分的图像。例如,可以通过对所获得的点云的点应用层片渲染技术来获得对象的部分的外表面。在一个变型中,当流针对帧(即,图像)序列包括表示对象或对象的部分的信息时,渲染图像序列。

图9示出了设备9的示例架构,其可以被配置为实现关于图12和/或图13描述的方法。

设备9包括通过数据和地址总线91链接在一起的以下元件:

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

-rom(或只读存储器)93;

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

-存储接口95;

-i/o接口96,用于从应用接收要发送的数据;以及

-电源,例如电池。

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

ram94在寄存器中包括由cpu92执行并在设备9接通之后上传的程序、寄存器中的输入数据、寄存器中的方法的不同状态的中间数据以及用于执行寄存器中的方法的其它变量。

可以例如用方法或过程、装置、计算机程序产品、数据流或信号来实现本文所描述的实施方式。虽然仅在单个实现形式的上下文中进行讨论(例如,仅作为方法或设备进行讨论),但是所讨论的特征的实现还可以以其他形式(如程序)来实现。装置可以实现为例如适合硬件、软件和固件。所述方法可以被实现于诸如处理器的装置中,所述处理器一般地是指处理设备,包括例如计算机、微处理器、集成电路或可编程逻辑器件。处理器还包括通信设备(例如计算机、蜂窝电话、便携/个人数字助理(″pda″))以及促进终端用户之间的信息通信的其他设备。

根据编码或编码器的示例,从源获得第一、第二、第三和/或第四语法元素。例如,源属于包括以下各项的集合:

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

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

-通信接口(96),例如有线接口(例如,总线接口、广域网接口、局域网接口)或无线接口(例如,ieee802.11接口或接口);以及

-用户界面,例如使用户能够输入数据的图形用户界面。

根据解码器或解码器的示例,将第一、第二和/或第三信息发送到目的地;具体地,目的地属于包括以下各项的集合:

-本地存储器(93或94),例如视频存储器或ram、闪存、硬盘;

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

-通信接口(96),例如有线接口(例如,总线接口(例如,usb(或通用串行总线))、广域网接口、局域网接口、hdmi(高清晰度多媒体接口)接口)或无线接口(例如,ieee802.11接口、接口);

根据编码或编码器的示例,将包含表示对象的数据的比特流发送至目的地。例如,将比特流存储在本地或远程存储器中,例如,视频存储器(94)或ram(94)、硬盘(93)。在变型中,将比特流发送到存储接口(95),例如,与大容量存储器、闪存、rom、光盘或磁性支撑体的接口,和/或经过通信接口(96)(例如,到点对点链路、通信总线、点对多点链路或广播网络的接口)进行传输。

根据解码或解码器或渲染器的示例,从源获得比特流。示例性地,从本地存储器(例如视频存储器(94)、ram(94)、rom(93)、闪存(93)或硬盘(93))读取比特流。在变型中,从存储接口(95)(例如与大容量存储器、ram、rom、闪存、光盘或磁性支撑体的接口)接收比特流,和/或从通信接口(95)(例如,到点对点链路、总线、点对多点链路或广播网络的接口)接收比特流。

根据示例,设备9被配置为实现关于图12描述的方法,并且属于包括以下各项的集合:

-移动设备;

-通信设备;

-游戏设备;

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

-膝上型计算机;

-静止图像相机;

-视频相机;

-编码芯片;

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

根据示例,设备9被配置为实现渲染关于图13描述的渲染方法,并且属于包括以下各项的集合:

-移动设备;

-通信设备;

-游戏设备;

-机顶盒;

-电视机;

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

-膝上型计算机;以及

-显示器(例如hmd)。

根据图10中所示的示例,在通过通信网络net1000在两个远程设备1001和1002(设备9的类型的设备)之间的传输环境中,设备1001包括:被配置为实现如关于图12所述的用于生成流的方法的装置,并且设备1002包括被配置为实现如关于图13所述的用于渲染图像的方法的装置。

根据示例,网络1000是lan或wlan网络,其适于将具有相关联的音频信息的静止图像或视频图像从设备1001广播到包括设备1002的解码/渲染设备。

图11示出了当通过基于分组的传输协议发送数据时这种信号的语法的实施例的示例。图11示出了沉浸式视频流的示例结构1100。该结构包含以独立语法元素组织流的容器。该结构可以包括作为流的每个语法元素公共的数据集合的首部部分1101。例如,首部部分包含关于语法元素的元数据,该元数据描述每个语法元素的性质和角色。该结构可以包括包含有语法元素1102、1103、1104和1105的有效载荷,第一语法元素1102与定义参数表面的参数相关、第二语法元素与同参数表面相关联的高度图相关、第三语法元素与同参数表面相关联的一个或多个纹理图相关,而第四语法元素与获取设备的位置信息相关。

自然地,本公开不限于上述实施例。

具体地,本公开不限于用于生成流的方法和设备,而是还扩展到用于对包括表示场景的对象的数据的分组进行编码/解码的方法,以及实现该方法的任何设备,并且特别是包括至少一个cpu和/或至少一个gpu的任何设备。

本公开还涉及用于显示根据包括表示场景的对象的信息的数据流来渲染的图像的方法(以及被配置为执行所述方法的设备)以及用于用平面视频渲染并显示对象的方法(以及被配置为执行所述方法的设备)。

本公开还涉及用于发送和/或接收流的方法(和被配置为执行所述方法的设备)。

可以例如用方法或过程、装置、计算机程序产品、数据流或信号来实现本文所描述的实施方式。虽然仅在单个实现形式的上下文中进行讨论(例如,仅作为方法或设备进行讨论),但是所讨论的特征的实现还可以以其他形式(如程序)来实现。装置可以实现为例如适合硬件、软件和固件。所述方法可以被实现于诸如处理器的装置中,所述处理器一般地是指处理设备,包括例如计算机、微处理器、集成电路或可编程逻辑器件。处理器还包括通信设备,比如智能电话、平板计算机、计算机、移动电话、便携式/个人数字助理(“pda”)以及便于终端用户之间的信息通信的其它设备。

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

此外,可以通过由处理器执行的指令实现所述方法,而且这些指令(和/或通过实现产生的数据值)可存储在处理器可读介质上,比如集成电路、软件载体或其它存储设备,比如硬盘、压缩盘(“cd”)、光盘(比如dvd,其通常称为数字多功能盘或数字视频盘)、随机存取存储器(“ram”)、或只读存储器(“rom”)。指令可以形成在处理器可读介质上有形实施的应用程序。指令可以位于例如硬件、固件、软件或其组合中。可以在例如操作系统、单独应用或这两者的组合中发现指令。因此,处理器可以被表征为例如配置用于执行处理的设备和包括具有用于执行处理的指令的处理器可读介质的设备(诸如,存储设备)。此外,处理器可读介质可以存储实现所产生的数据值,作为对指令的添加或替代。

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

已经描述了多个实现。但是应当理解,可以做出各种修改。例如,可以合并、增补、修改或去除不同实施方式的元素,以便产生其它实施方式。附加地,本领域普通技术人员将理解的是,其他结构或过程可以替代那些公开的结构或过程,并且所得到的实施方式将用至少基本相同的方式来执行至少基本相同的功能,以实现与所公开的实施方式基本相同的结果。因此,本申请还涵盖这些和其它实施方式。

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