一种点云媒体的数据处理方法及相关设备与流程

文档序号:32345288发布日期:2022-11-26 11:09阅读:81来源:国知局
一种点云媒体的数据处理方法及相关设备与流程

1.本技术涉及互联网技术领域,具体涉及一种点云媒体的数据处理方法、一种点云媒体的数据处理装置、一种计算机设备、一种计算机可读存储介质以及一种计算机程序产品。


背景技术:

2.随着点云技术的不断发展,点云媒体的压缩编码成为重要的研究问题。从目前的点云媒体的压缩编码技术来看,在点云码流对属性参数定义中,允许一个属性参数集合中包含多组属性数据解码所需的参数信息。但是,目前点云媒体的压缩编码技术还存在一些问题,例如在支持部分传输或部分解码过程中,易造成不必要的编解码依赖关系以及解码侧资源浪费等问题。因此,如何改进属性编码技术成为点云编码技术领域的热门问题。


技术实现要素:

3.本技术实施例提供了一种点云媒体的数据处理方法及相关设备,可以指示属性参数集合的封装位置,根据所指示的封装位置获取属性参数集合,能够减少不必要的编解码依赖关系,实现点云媒体的传输、解码及呈现;优化网络带宽及解码侧计算资源的利用。
4.一方面,本技术实施例提供一种点云媒体的数据处理方法,该方法包括:
5.获取点云媒体的媒体文件,媒体文件包括点云媒体的点云码流,点云码流包含属性参数集合,属性参数集合包含点云码流中的属性数据解码所需的参数信息;媒体文件中还包括属性参数集合指示信息,属性参数集合指示信息用于指示属性参数集合的封装位置;
6.按照属性参数集合指示信息,对点云码流进行解码处理以呈现点云媒体。
7.一方面,本技术实施例提供一种点云媒体的数据处理方法,该方法包括:
8.获取点云媒体;
9.对点云媒体进行编码处理,得到点云码流;点云码流包含属性参数集合,属性参数集合包含点云码流中的属性数据解码所需的参数信息;
10.对点云码流进行封装,得到点云媒体的媒体文件;媒体文件还包含属性参数集合指示信息,属性参数集合指示信息用于指示属性参数集合的封装位置。
11.一方面,本技术实施例提供了一种点云媒体的数据处理装置,该装置包括:
12.获取单元,用于获取点云媒体的媒体文件,媒体文件包括点云媒体的点云码流,点云码流包含属性参数集合,属性参数集合包含点云码流中的属性数据解码所需的参数信息;媒体文件中还包括属性参数集合指示信息,属性参数集合指示信息用于指示属性参数集合的封装位置;
13.处理单元,用于按照属性参数集合指示信息,对点云码流进行解码处理以呈现点云媒体。
14.在一个实施例中,媒体文件包括轨道,轨道中包含一个或多个样本,一个样本对应
点云媒体中的一个点云帧;一个样本被划分为一个或多个子样本,每个子样本包含一种类型的点云数据;
15.媒体文件还包括子样本信息数据盒,属性参数集合封装于子样本信息数据盒中。
16.在一个实施例中,属性参数集合指示信息表示为子样本信息数据盒,属性参数集合指示信息还用于指示属性参数集合与点云码流中的属性数据之间的关系;
17.子样本数据盒包括以下至少一个字段:有效载荷类型字段、参考属性信息标志字段、参考属性类型标志字段、参考属性标识字段和参考属性类型字段;
18.有效载荷类型字段用于指示子样本中包含的点云数据类型;若有效载荷类型字段为第一取值,则指示子样本中包含的点云数据的类型为属性参数集合;若有效载荷类型字段为第二取值,则指示子样本中包含的点云数据的类型为几何参数集合,几何参数集合包含几何数据解码所需的参数信息;
19.参考属性信息标志字段用于指示当前属性参数集合对属性数据生效范围;若参考属性信息标志字段为第一预设值,则指示当前属性参数集合仅对当前样本中的特定一组或一种特定类型的属性数据生效;若参考属性信息标志字段为第二预设值,则指示当前属性参数集合对当前样本中的所有属性数据生效;
20.参考属性类型标志字段用于指示当前属性参数集合对属性数据生效的类型;若参考属性类型标志字段为第一数值,则指示当前属性参数集合仅对当前样本中一种特定类型的属性数据生效;若参考属性类型标志字段为第二数值,则指示当前属性参数集合仅对当前样本中特定一组属性数据生效;
21.参考属性标识字段用于指示当前属性参数集合对应的属性数据的标识符;参考属性类型字段用于指示当前属性参数集合对应的属性数据的类型;
22.其中,当前属性参数集合是指正在被使用的属性参数集合,当前样本是指正在被解码的样本。
23.在一个实施例中,点云码流采用多轨方式被封装在媒体文件中;媒体文件包括参数组件轨道,属性参数集合被独立封装在参数组件轨道中;
24.参数组件轨道中包含一个或多个样本,每个样本对应点云媒体的一个点云帧,每个样本包含对应点云帧的属性数据解码所需的参数信息。
25.在一个实施例中,媒体文件包括一个或多个参数组件轨道;当媒体文件仅包括一个参数组件轨道时,点云码流中的属性参数集合被封装至参数组件轨道中;当媒体文件包括多个参数组件轨道时,点云码流中的属性参数集合被封装至一个单独的参数组件轨道中或点云码流中的属性参数集合基于类型被封装至多个参数组件轨道中。
26.在一个实施例中,参数组件轨道中包括轨道数据盒;
27.轨道数据盒中包含轨道参考类型数据盒,轨道参考类型数据盒用于指示参数组件轨道与参数组件轨道中的属性参数集合对应的一个或多个属性组件轨道相关联。
28.在一个实施例中,媒体文件遵循第一编码标准;参数组件轨道包含组件信息数据盒,组件信息数据盒设置于参数组件轨道的头样本入口中;组件信息数据盒包含以下至少一个字段:组件类型字段、头部类型字段、属性头数量字段、参考属性类型标志字段、参考属性标识字段和参考属性类型字段;
29.组件类型字段用于指示参数组件轨道中的组件类型;当组件类型字段被设置为目
标预设值时,指示参数组件轨道中的组件类型为参数集合;
30.头部类型字段用于指示参数组件轨道中包含的参数集合类型;若头部类型字段为第一设定值,则指示参数组件轨道中包含的参数集合类型为属性参数集合;若头部类型字段为第二设定值,则指示参数组件轨道中包含的参数集合类型为几何参数集合;若头部类型字段为第三设定值,则指示参数组件轨道中包含的参数集合类型为几何参数集合和属性参数集合;
31.属性头数量字段用于指示参数组件轨道中的样本包含的属性参数集合的数量;其中,样本中包含的属性参数集合的顺序与组件信息数据盒中指示的属性参数集合的标识符或属性参数集合类型的顺序一致;
32.参考属性类型字段用于指示当前属性参数集合对属性数据生效的类型;若参考属性类型标志字段为第一预设值,则表示当前属性参数集合仅对当前样本中一种特定类型的属性数据生效;若参考属性类型标志字段为第二预设值,则表示当前属性参数集合对当前样本中特定一组属性数据生效;
33.参考属性标识字段用于指示当前属性参数集合对应的属性数据的标识符;
34.参考属性类型字段用于指示当前属性参数集合对应的属性数据的类型;
35.其中,当前属性参数集合是指正在被使用的属性参数集合,当前样本是指正在被解码的样本。
36.在一个实施例中,媒体文件遵循第二编码标准;参数组件轨道包含组件信息数据盒和配置数据盒;配置数据盒中包含的设置单元对应的参数集合类型与组件信息数据盒指示的参数集合类型相同;
37.组件信息数据盒包含以下至少一个字段:组件类型字段、参数设置类型数量字段、参数设置类型字段;
38.组件类型字段用于指示参数组件轨道中的组件的类型;若组件类型字段为目标设定值,则指示参数组件轨道中的组件的类型为参数集合;
39.参数设置类型数量字段用于指示参数组件轨道包含的参数集合的数量;
40.参数设置类型字段用于指示参数组件轨道中包含的参数集合的类型;若参数设置类型字段为第一预设值,则表示参数组件轨道中包含的参数集合的类型为属性参数集合;若参数设置类型字段为第二预设值,则表示参数组件轨道中包含的参数集合的类型为几何参数集合;若参数设置类型字段为第三预设值,则表示参数组件轨道中包含的参数集合的类型为序列参数集合。
41.在一个实施例中,媒体文件包括几何组件轨道,属性参数集合被封装在几何组件轨道中。
42.在一个实施例中,几何组件轨道包括组件信息数据盒,属性参数集合指示信息表示为组件信息数据盒;
43.组件信息数据盒包括组件类型字段,组件类型字段用于指示几何组件轨道中的组件的类型;若组件类型字段为第一设定值,则指示几何组件轨道中的组件的类型为几何数据和参数集合,参数集合包含属性参数集合和几何参数集合。
44.在一个实施例中,媒体文件包括一个或多个属性组件轨道,属性参数集合被封装在每个属性组件轨道中;
45.其中,每个属性组件轨道中封装的属性参数集合,是由同一个属性参数集合经过复制得到的。
46.在一个实施例中,媒体文件包括一个或多个属性组件轨道,属性参数集合包含索引,属性参数集合的索引被封装在每个属性组件轨道中;
47.其中,通过任一个属性组件轨道中封装的索引均能够查找到属性参数集合,或能够查找到属性参数集合被重新组织后形成的数据单元。
48.在一个实施例中,点云媒体采用流化传输方式进行传输;获取单元在获取点云媒体的媒体文件时,可具体用于:
49.获取点云媒体的传输信令,传输信令中包含流指示信息,流指示信息用于指示参数组件轨道对应的数据流;
50.根据传输信令获取点云媒体的媒体文件。
51.在一个实施例中,传输信令为动态自适应流信令,流指示信息是指组件描述子,组件描述子被设置于参数组件轨道对应的数据流;组件描述子包括组成类型元素及参数类型元素,组成类型元素用于指示在参数组件轨道中的组件的类型;参数类型元素用于指示参数组件轨道中包含的参数集合的类型;
52.若组成类型元素为目标字符,则在参数组件轨道中的组件的类型为参数集合组件。
53.在一个实施例中,处理单元在按照属性参数集合指示信息,对点云码流进行解码处理以呈现点云媒体时,可具体用于:
54.根据属性参数集合指示信息所指示的封装位置,获取属性参数集合;
55.利用属性参数集合中的参数信息对点云码流中的属性数据进行解码处理,以呈现点云媒体。
56.一方面,本技术实施例提供一种点云媒体的数据处理装置,该装置包括:
57.获取单元,用于获取点云媒体;
58.处理单元,用于对点云媒体进行编码处理,得到点云码流;点云码流包含属性参数集合,属性参数集合包含点云码流中的属性数据解码所需的参数信息;
59.处理单元,还用于对点云码流进行封装,得到点云媒体的媒体文件;媒体文件还包含属性参数集合指示信息,属性参数集合指示信息用于指示属性参数集合的封装位置。
60.在一个实施例中,媒体文件包括轨道,点云码流被封装在轨道中,轨道中包含一个或多个样本,一个样本对应点云媒体中的一个点云帧;一个样本被划分为一个或多个子样本,每个子样本包含一种类型的点云数据;
61.媒体文件还包括子样本信息数据盒,属性参数集合封装于子样本信息数据盒中。
62.在一个实施例中,点云码流采用多轨方式被封装至媒体文件中;媒体文件包括参数组件轨道,属性参数集合被独立封装在参数组件轨道中;
63.参数组件轨道中包含一个或多个样本,每个样本对应点云媒体的一个点云帧,每个样本包含对应点云帧的属性数据解码所需的参数信息。
64.在一个实施例中,媒体文件包括几何组件轨道,属性参数集合被封装在几何组件轨道中。
65.在一个实施例中,媒体文件包括一个或多个属性组件轨道,属性参数集合被封装
在每个属性组件轨道中;
66.其中,每个属性组件轨道中封装的属性参数集合,是由同一个属性参数集合经过复制得到的。
67.在一个实施例中,媒体文件包括一个或多个属性组件轨道,属性参数集合包含索引,属性参数集合的索引被封装在每个属性组件轨道中;
68.其中,通过任一个属性组件轨道中封装的索引均能够查找到属性参数集合,或能够查找到属性参数集合被重新组织后形成的数据单元。
69.在一个实施例中,处理单元,还用于:
70.通过传输信令发送点云媒体的媒体文件,传输信令中包含流指示信息,流指示信息用于指示参数组件轨道对应的数据流。
71.一方面,本技术实施例提供一种计算机设备,该计算机设备包括:
72.处理器,适用于执行计算机程序;
73.计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时,实现如上述点云媒体的数据处理方法。
74.一方面,本技术实施例提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器加载并执行如上述点云媒体的数据处理方法。
75.一方面,本技术实施例提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行上述点云媒体的数据处理方法。
76.在本技术实施例中,获取点云媒体的媒体文件,媒体文件包括点云媒体的点云码流及属性参数集合指示信息,该点云码流包含属性参数集合,该属性参数集合中包含点云码流中的属性数据解码所需的参数信息;属性参数集合指示信息用于指示属性参数集合的封装位置;按照属性参数集合指示信息,可以直接获知属性参数集合的封装位置,并可基于该属性参数集合对点云码流进行解码处理以呈现点云媒体,指导了点云媒体的传输、解码和呈现,可减少不必要的编解码依赖,节省传输资源和计算资源。
附图说明
77.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
78.图1a是本技术一个示例性实施例提供的一种6dof的示意图;
79.图1b是本技术一个示例性实施例提供的一种3dof的示意图;
80.图1c是本技术一个示例性实施例提供的一种3dof+的示意图;
81.图2a是本技术一个示例性实施例提供的一种点云媒体的数据处理系统的架构图;
82.图2b是本技术一个示例性实施例提供的一种点云媒体的数据处理的流程图;
83.图3是本技术一个示例性实施例提供的一种点云媒体的数据处理方法的流程示意图;
84.图4a是本技术一个示例性实施例提供的一种参数集合和属性数据划分为数据单元的示意图;
85.图4b是本技术另一个示例性实施例提供的一种参数集合和属性数据划分为数据单元的示意图;
86.图5是本技术另一个示例性实施例提供的一种点云媒体的数据处理方法的流程示意图;
87.图6是本技术一个示例性实施例提供的一种点云媒体的数据处理装置的结构示意图;
88.图7是本技术另一个示例性实施例提供的一种点云媒体的数据处理装置的结构示意图;
89.图8是本技术另一个示例性实施例提供的一种计算机设备的结构示意图。
具体实施方式
90.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
91.本技术中术语“第一”“第二”等字样用于对作用和功能基本相同的相同项或相似项进行区分,应理解,“第一”、“第二”、“第n”之间不具有逻辑或时序上的依赖关系,也不对数量和执行顺序进行限定。
92.本技术中术语“至少一个”是指一个或多个,“多个”的含义是指两个或两个以上;同理,术语“至少一组”是指一组或多组,“多组”的含义是指两组或两组以上,例如:点云中的某个点具备多组属性数据是指该点具备两组或两组以上的属性数据。
93.下面对本技术中涉及的其他技术术语进行介绍:
94.一、沉浸媒体
95.沉浸媒体是指能够提供沉浸式的媒体内容,使沉浸于该媒体内容中的观看者能够获得现实世界中视觉、听觉等感官体验的媒体文件。沉浸式媒体按照观看者在消费媒体内容时的自由度,可以分为:6dof(degree of freedom,自由度)沉浸媒体,3dof沉浸媒体,3dof+沉浸媒体。其中,如图1a所示,6dof是指沉浸媒体的观看者可以沿着x轴、y轴、z轴自由平移,例如,沉浸媒体的观看者可以在三维的360度vr内容中自由的走动。与6dof相类似的,还有3dof和3dof+制作技术。图1b为本技术实施例提供的一种3dof的示意图;如图1b所示,3dof是指沉浸媒体的观看者在一个三维空间的中心点固定,沉浸媒体的观看者头部沿着x轴、y轴和z轴旋转来观看媒体内容提供的画面。图1c为本技术实施例提供的一种3dof+的示意图,如图1c所示,3dof+是指当沉浸媒体提供的虚拟场景具有一定的深度信息,沉浸媒体的观看者头部可以基于3dof在一个有限的空间内移动来观看媒体内容提供的画面。
96.二、点云
97.点云是指空间中一组无规则分布的、表达三维物体或场景的空间结构及表面属性的离散点集。点云中的每个点至少包括几何数据,该几何数据用于表示点的三维位置信息。根据应用场景的不同,点云中的点还可以包括一组或多组属性数据,每一组属性数据用于
反映点所具备的一种属性,该属性例如可以是色彩、材质或其他信息。通常,点云中的每个点都具有相同组数的属性数据。
98.点云可以灵活方便地表达三维物体或场景的空间结构及表面属性,因而应用广泛,可以应用于虚拟现实(virtual reality,vr)游戏、计算机辅助设计(computer aided design,cad)、地理信息系统(geography information system,gis)、自动导航系统(autonomous navigation system,ans)、数字文化遗产、自由视点广播、三维沉浸远程呈现、生物组织器官三维重建等场景中。
99.点云的获取主要有以下途径:计算机生成、三维(3-dimension,3d)激光扫描、3d摄影测量等。具体来说,点云可以是通过采集设备(一组摄像机或具有多个镜头和传感器的摄像机设备)对现实世界的视觉场景进行采集得到的,通过3d激光扫描可以获得静态现实世界三维物体或场景的点云,每秒可以获取百万级点云;通过3d摄影可以获得动态现实世界三维物体或场景的点云,每秒可以获取千万级点云;此外,在医学领域,可以通过磁共振成像(magnetic resonance imaging,mri)、电子计算机断层扫描(computed tomography,ct)、电磁定位信息获得生物组织器官的点云。又如,点云还可以由计算机根据虚拟三维物体及场景直接生成,如计算机可以生成虚拟三维物体及场景的点云。伴随着大规模的点云数据不断积累,点云数据的高效存储、传输、发布、共享和标准化,成为点云应用的关键。
100.三、点云媒体
101.点云媒体是一种典型的6dof沉浸媒体。点云媒体包括由一帧或多帧点云帧组成的帧序列,每帧点云帧由点云中的一个或多个点具备的几何数据和属性数据共同组成。其中,几何数据也可以称为三维位置信息,点云中某个点的几何数据是指该点的空间坐标(x,y,z),可以包括该点在三维坐标系统的各个坐标轴方向上的坐标值,例如,x轴方向上的坐标值x,y轴方向上的坐标值y和z轴方向上的坐标值z。点云中的某个点可以包括一组或多组属性数据,每一组属性数据用于反映点所具备的一种属性,例如,点云中某个点具备一组颜色属性数据,该颜色属性数据用于反映该点的颜色属性(如红色、黄色等等);再如,点云中的某个点具备一组反射率属性数据,该反射率属性数据用于反映该点的激光反射强度属性。当点云中某个点具备多组属性数据时,该多组属性数据的类型可以相同,也可以不同,例如,点云中某个点可以具有一组颜色属性数据和一组反射率属性数据;再如,点云中某个点可以具有两组颜色属性数据,这两组颜色属性数据分别用于反映该点在不同时刻下的颜色属性。
102.特别的,每帧点云帧中还包括几何数据对应的几何参数集合或属性数据对应的属性参数集合,几何参数集合和属性参数集合可以组成参数集合。其中,几何参数集合可以包括对每帧点云帧中的几何数据进行编码或解码所需要的参数信息;属性数据对应的属性参数集合可以包括对每帧点云帧中的属性数据编码或解码所需要的参数信息。也就是说,点云媒体中的一帧点云帧所包含的点云数据可包括几何数据、几何参数集合、一组或多组属性数据、一个或多个属性参数集合。
103.其中,在avs(audio video coding standard,中国国家音视频编码标准)点云编码技术中,一个点云帧内通常仅包含一个点云几何头(即geometry header)和一个点云属性头(即sequence header),该点云几何头包括对单帧点云帧的几何数据编码或解码所需要的参数集合,点云属性头包括对单帧点云帧中的属性数据编码或解码所需要的参数集
合,即在点云属性头中可以包含对应于点云帧中一组或多组属性数据的所有参数信息;而在mpeg(moving picture expert group,国际视音频编解码标准)点云编码技术中,点云媒体对应的点云码流中可以定义一个几何参数集合(gps,geometry parameter set)和一个或多个属性参数集合(即aps,attribute parameter set),一个aps可以对应点云帧内不同种类的属性数据。在本技术实施例中,对于属性头和aps不作任何区分,均描述为属性参数集合。
104.四、轨道(track)
105.轨道是指点云媒体封装过程中的媒体数据集合,一个轨道中由多个具备时序的样本组成,一个样本对应点云媒体的一个点云帧。点云媒体的封装方式包括单轨方式或多轨方式,所谓单轨方式是指将点云媒体的所有点云数据均封装至同一个轨道中,此时,点云媒体的媒体文件仅包含一个轨道(即单轨封装得到的单一轨道),单轨方式得到的单一轨道中,一个样本即是指点云媒体中的一个点云帧,一个样本包含对应点云帧的所有数据(包括几何数据和属性数据)。
106.所谓多轨方式是指将点云媒体的点云数据封装至多个不同的轨道中,此时,点云媒体的媒体文件可以包含多个轨道。进一步,多轨方式可以包括基于类型的多轨方式;基于类型的多轨方式是将一种类型的数据封装至一个组件轨道中,例如,点云媒体包含几何数据、一组颜色属性数据和一组反射率属性数据,那么可以将几何数据封装至几何组件轨道,将颜色属性数据封装至颜色属性组件轨道,将反射率属性数据封装至反射率属性组件轨道;基于类型的多轨方式得到的任一组件轨道中,一个样本仅包含点云媒体的一个点云帧的部分数据,例如几何组件轨道中的一个样本包含点云媒体中一个点云帧的几何数据;颜色属性组件轨道中的一个样本包含点云媒体中一个点云帧的一组颜色属性数据。特别地,元数据信息也可以作为一种媒体类型,以元数据轨道包含于点云媒体的媒体文件中。其中,每个组件轨道(如几何组件轨道、属性组件轨道)中均可以包括一个或多个样本,每个样本均可以对应点云媒体中的一个点云帧,且对应同一个点云帧的样本应具备相同的呈现时间。
107.此外,当点云媒体中包含参数集合时,单轨方式得到单一轨道中,一个样本包含对应点云帧的所有数据,即一个样本包括一个点云帧的几何数据、属性数据和参数集合,该参数集合包括几何参数集合和属性参数集合,几何参数集合中包含点云帧的几何数据解码所需的参数信息;属性参数集合包括点云帧的属性数据解码所需的参数信息。而基于类型的多轨方式将一种类型的数据封装至一个轨道中,参数集合的封装位置则可能有多种,包括但不限于:

参数集合可以被封装到几何数据对应的几何组件轨道;

参数集合可以被封装至属性数据对应的属性组件轨道中;

参数信息可以作为一种类型的点云数据,被单独封装到参数组件轨道中,该参数组件轨道中的一个样本包括点云媒体中一个点云帧的参数信息。
108.应理解的是,点云媒体被封装后以组件形式存在于轨道中,例如:点云媒体中的属性数据被封装后以属性组件形式存在于轨道中,点云媒体中几何数据被封装后以几何组件形式存在于轨道中;参数集合被封装后以参数组件形式存在于轨道中。
109.五、样本(sample)以及子样本(subsample)
110.样本是媒体文件封装过程中的封装单位,一个轨道由很多个样本组成,例如:一个
视频轨道可以由很多个样本组成,一个样本通常为一个视频帧。在本技术实施例中,点云媒体的媒体文件包含一个或多个轨道,轨道中的一个样本对应一个点云帧。
111.样本可以被划分为一个或多个子样本,每个子样本中可以包含点云码流中的一种类型的点云数据,点云码流中的点云数据可以包含以下几种类型:参数集合(包含几何参数集合和属性参数集合)、几何数据和属性数据。可见,子样本可以包含点云码流中的参数集合,或者子样本可以包含点云码流中的几何数据,或者子样本可以包含点云码流中的属性数据。在一种实现中,一个点云帧可被划分为一个或多个点云片(或称点云条),所谓点云片代表一个点云帧被部分或全部编码后的数据的一系列语法元素(例如几何点云片、属性点云片)集合;此时子样本包含的属性数据和/或几何数据属于该一个或多个点云片;对应点云片的子样本的类型可以包括至少两种,一种是基于点云片承载的数据类型的子样本,在此类型下,一个子样本仅包含点云片承载的一种数据类型以及相关信息,如一个子样本只包含几何数据类型以及几何数据相关信息。另一种是基于点云片的子样本,在此类型下,一个子样本可以包含一个点云片所有信息,即包含几何片头和几何数据,属性片头和属性数据。
112.六、样本入口(sample entry)
113.样本入口用于指示轨道中所有样本相关的元数据信息。比如在视频轨道的样本入口中,通常会包含解码器初始化相关的元数据信息。
114.七、点云空间分块(tile):
115.点云空间分块又称为点云帧边界空间区域内的六面体空间分块区域,一个点云空间分块由一个或多个点云片组成,点云空间分块之间不存在编解码依赖关系。
116.八、isobmff(iso based media file format,基于iso标准的媒体文件格式)
117.isobmff是媒体文件的封装标准,较为典型的isobmff文件即为mp4文件。
118.九、dash(dynamic adaptive streaming over http,基于http的动态自适应流)dash是一种自适应比特率技术,使高质量流媒体可以通过传统的http网络服务器在互联网传递。
119.十、mpd(media presentation description,dash中的媒体演示描述信令):
120.mpd用于描述媒体文件中的媒体片段信息。
121.十一、表示(representation):
122.representation是指dash中一个或多个媒体成分的组合,比如某种分辨率的视频文件可以看作一个representation;在本技术中,某种时域层级的视频文件可以看作一个representation。
123.十二、点云编码(point cloud compression,pcc)
124.点云编码是指根据参数集合对点云中各点的几何数据和属性数据进行编码,得到点云码流的过程。其中,点云编码可以包括几何数据编码和属性数据编码两个主要过程,参数集合可以包括几何参数集合和属性参数集合。因此在编码过程中可以采用点云编码技术,根据参数集合中的几何参数集合对点云媒体中各点的几何数据进行编码处理,得到几何码流;并采用g-pcc根据参数集合中的属性参数对点云媒体中各点的属性数据进行编码,得到属性码流;几何码流、属性码流共同组成点云媒体的点云码流。目前,主流的点云编码技术,针对点云的不同类型,可以分为基于几何结构的点云编码以及基于投影的点云编码,
在此以mpeg中的g-pcc(geometry-based point cloud compression,基于几何结构的点云编码),以及avs中的点云编码标准avs-pcc。
125.十五、点云解码
126.点云解码是指对点云编码得到的点云码流进行解码,以重建点云的过程;详细地说,是指基于点云码流中的几何码流和属性码流,重建点云中各点的几何信息和属性数据的过程。在解码侧获得点云码流之后,对于几何码流,首先获取对几何数据进行解码所需要的几何参数集合,然后根据该几何参数集合对几何码流进行解码处理,得到点云中各点的几何数据。而对于属性码流,首先获取对属性数据进行解码所需要的属性参数集合,然后根据属性参数集合对属性码流进行解码处理,得到点云中各点的属性数据;然后,将点云中各点重建的属性数据,按顺序与重建的几何数据一一对应,以重建点云。
127.基于上述相关描述,本技术实施例提供了一种基于点云媒体的数据处理方案,该点云媒体的数据处理方案的大致原理如下:在编码侧,可以在点云媒体的媒体文件中添加属性参数集合指示信息,并通过该属性参数集合指示信息来指示属性参数集合的封装位置。在解码侧,可根据属性参数集合指示信息确定点云码流中的属性数据解码所需的属性参数集合的封装位置,然后可以从封装位置中获取该属性参数集合,并根据属性参数集合可以对该点云码流中的属性数据进行解码,从而呈现该点云媒体。
128.在一个实施例中,当对点云码流进行单轨封装时,该轨道可以包括样本,该样本包括子样本,可以在子样本中标识属性参数集合以及该属性参数集合与点云媒体中的属性数据之间的关系;在此实现中,媒体文件中的属性参数集合指示信息用于指示属性参数集合的封装位置为子样本,并且该属性参数集合还可用于指示该属性参数集合与点云码流中的属性数据之间的关系。
129.在另一个实施例中,当对点云码流进行多轨封装时,该属性参数集合指示信息用于指示属性参数集合的封装位置可以包括以下任一种或多种:(1)将属性参数集合作为单独的轨道进行封装,得到参数组件轨道,该属性参数集合指示信息用于指示属性参数集合的封装位置为参数组件轨道。(2)由于属性组件轨道一定依赖于几何组件轨道,因此,即使某一个属性参数集合被不同的属性组件引用,当该属性参数集合位于几何组件轨道时,也不会引入额外的解码依赖关系,在此前提下,可以将属性参数集合直接封装到几何组件轨道,此时属性参数集合指示信息用于指示属性参数集合的封装位置为几何组件轨道。(3)可以将属性参数集合复制多份,在每个属性组件轨道中均封装该属性参数集合,此时,该属性参数集合指示信息用于指示属性参数集合分别被封装在每个属性组件轨道中。(4)可以将属性参数集合的索引封装在每个属性组件轨道中,属性参数集合指示信息用于指示属性参数集合分别被封装在每个属性组件轨道中,并可进一步指示通过任一个属性组件轨道中封装的索引均能够查找到属性参数集合,或能够查找到属性参数集合被重新组织后形成的数据单元。
130.通过上述该数据处理方案有如下有益效果:通过点云媒体的媒体文件中包含的属性参数集合指示信息,可以指示属性参数集合的封装位置,从而指导点云媒体的传输、解码及呈现;同时,可以有效利用点云媒体各个组件之间的编解码独立性,解决为了支持部分传输和部分解码,将不同的点云数据封装为不同的文件轨道所带来的不必要编解码依赖关系问题,例如几何数据封装为一个几何组件轨道;颜色属性数据、反射率属性数据分别封装为
一个属性组件轨道,此时,如果颜色属性数据和反射率属性数据共用一个属性参数集合,不管将这个属性参数集合封装在哪一个属性组件轨道,均会产生编解码以来关系;从而节省传输资源和计算资源的使用。
131.本技术实施例所提供的点云媒体的数据处理方案还可以与车联网技术相结合。具体的,该点云媒体的数据处理方案可以采集环境中的建筑物、交通标志物等等,并在车辆中构建点云地图用于定位,或者利用该点云地图实现自动导航。
132.基于上述描述,下面结合图2a对适于实现本技术实施例提供的点云媒体的数据处理系统进行介绍。如图2a所示,点云媒体的数据处理系统20中可以包括内容制作设备201和媒体处理设备202,内容制作设备201位于点云媒体的编码侧;该内容制作设备201可以是终端设备,也可以是服务器。媒体处理设备202位于点云媒体的解码侧,该媒体处理设备202可以是终端设备,也可以是服务器。内容制作设备201和媒体处理设备202之间可以建立通信连接。其中,终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、车载终端、智能电视等,但并不局限于此。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(content delivery network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。
133.在一个实施例中,内容制作设备201和媒体处理设备202执行该点云媒体的数据处理的具体流程如下:针对内容制作设备201主要包括以下数据处理过程:(1)点云媒体的获取过程;(2)点云媒体的编码及文件封装的过程。针对媒体处理设备201主要包括以下数据处理过程:(3)点云媒体的文件解封装及解码的过程;(4)点云媒体的渲染过程。
134.另外,内容制作设备201与媒体处理设备202之间涉及点云媒体的传输过程,该传输过程可以基于各种传输协议(或者传输信令)来进行,此处的传输协议可包括但不限于:dash(dynamic adaptive streaming over http,动态自适应流媒体传输)协议、hls(http live streaming,动态码率自适应传输)协议、smtp(smart media transport protocol,智能媒体传输协议)、tcp(transmission control protocol,传输控制协议)等。
135.下面对点云媒体的数据处理过程进行详细描述:
136.(1)点云媒体的获取过程。
137.内容制作设备201可以获取点云媒体,点云媒体可以通过场景捕获或设备生成两种方式获取得到。场景捕获点云媒体是指通过内容制作设备201关联的捕获设备采集真实世界的视觉场景得到点云媒体;其中,捕获设备用于为内容制作设备201提供点云媒体的获取服务,捕获设备可以包括但不限于以下任一种:摄像设备、传感设备、扫描设备;其中,摄像设备可以包括普通摄像头、立体摄像头、以及光场摄像头等。传感设备可以包括激光设备、雷达设备等。扫描设备可以包括三维激光扫描设备等。内容制作设备201关联的捕获设备可以是指设置于内容制作设备201中的硬件组件,例如捕获设备是终端的摄像头、传感器等,内容制作设备关联的捕获设备也可以是指与内容制作设备201相连接的硬件装置,例如与内容制作设备201相连接的摄像头等。设备生成点云媒体是指内容制作设备201根据虚拟对象(例如通过三维建模得到的虚拟三维物体及虚拟三维场景)生成点云媒体。
138.(2)点云媒体的编码及文件封装的过程。
139.内容制作设备201可以基于几何参数集合对获取的点云媒体中的几何数据进行编码处理,得到几何码流;内容制作设备201还可以基于属性参数集合对获取的点云媒体中的属性数据进行编码处理,得到属性码流。几何码流和属性码流形成点云媒体的点云码流;另外,在该点云码流中可以包含属性参数集合和几何参数集合。在得到点云码流之后,可对点云码流进行封装,得到点云媒体的媒体文件;进一步,媒体文件中还可包含属性参数集合指示信息,该属性参数集合指示信息用于指示属性参数集合的封装位置。
140.当采用单轨方式对点云码流进行封装得到单一轨道时,该单一轨道中可以包括一个或多个样本,每个样本可以包含点云媒体中的一个点云帧所有的数据,即包括几何数据、几何参数集合、属性数据和属性参数集合;每个样本被划分一个或多个子样本。在一种实施方式中,属性参数集合可以封装在子样本中,属性参数集合指示信息则可以用于指示属性参数集合被封装在子样本中,此时,一个子样本可以包含点云码流中的参数集合,或者一个子样本可以包含点云码流中的属性数据,或者,一个子样本可以包含点云码流中的几何数据。
141.当采用基于类型的多轨方式对点云码流进行封装得到多个轨道时,任一轨道中可以包括一个或多个样本,每个样本可以包含点云媒体中的一个点云帧的一类数据,如轨道1(几何组件轨道)中的一个样本可以包含相应点云帧中的几何数据,轨道2(颜色组件轨道)中的一个样本可以包含相应点云帧中的一组颜色属性数据;轨道3(参数组件轨道)中的一个样本可以包含点云帧中的属性参数集合。此时,该属性参数集合指示信息可以用于指示属性参数集合被独立封装在参数组件轨道中。另外,当采用基于类型的多轨方式对点云码流进行封装得到多个轨道,该多个轨道中包括一个几何组件轨道以及一个或多个属性组件轨道,此时,该属性参数集合可以直接被封装到几何组件轨道中,该属性参数集合指示信息可以用于指示属性参数集合封装在几何组件轨道中。
142.在得到媒体文件之后,内容制作设备201可以将该媒体文件传输给媒体处理设备202,使得在媒体处理设备202中可以根据属性参数集合指示信息获知属性参数集合的封装位置,并基于属性参数集合对点云码流对属性数据进行解码处理。
143.可选地,当点云媒体采用流化传输方式进行传输,且该属性参数集合被独立封装在参数组件轨道时,在传输信令中可以包含流指示信息,该流指示信息用于指示参数组件轨道对应的数据流,并通过传输信令向媒体处理设备202传输上述媒体文件。
144.(3)点云媒体的文件解封装及解码的过程;
145.媒体处理设备202可以通过内容制作设备201获得点云媒体的媒体文件和相应的媒体呈现描述信息。点云媒体的媒体文件和媒体呈现描述信息通过传输信令(如dash、smt)由内容制作设备201传输给媒体处理设备202。媒体处理设备202的文件解封装的过程与媒体处理设备202的文件封装过程是相逆的,媒体处理设备202按照点云媒体的文件格式要求对媒体文件资源进行解封装,得到点云码流。媒体处理设备202的解码过程与内容制作设备201的编码过程是相逆的,媒体处理设备202对点云码流进行解码,还原出点云媒体。
146.其中,在解码过程中,媒体处理设备202可以从媒体文件中获取属性参数集合指示信息,并根据该属性参数指示信息可以确定属性参数集合所在的封装位置,并从该封装位置获取属性参数集合,然后根据该属性参数集合对媒体文件中的属性数据进行解码,最终可以还原出点云媒体。
147.可选地,该属性参数指示信息可以用于指示属性参数集合和点云码流中属性数据之间的关系,该关系可以是属性参数集合只对点云码流中某一组属性数据生效,或者可以是属性参数集合只对点云码流中的某一种属性数据生效,或者可以是属性参数集合对点云码流中的所有属性数据均生效。所谓生效是指有效力,即根据生效的属性参数集合能够对点云码流中的属性数据进行解码。
148.其中,点云码流中可包括多组属性数据,例如:多组属性数据包括:一组黄色属性数据、一组红色属性数据、一组反射率属性数据;那么,属性参数集合只对点云码流中某一组属性数据生效可以是指仅对一组黄色属性数据生效;而属性参数集合只对点云码流中某一类属性素数据生效可以是指对颜色属性数据生效,由于黄色属性数据和红色属性数据均属于颜色属性数据,那么属性参数集合只对点云码流中某一类属性素数据生效可以包括对黄色属性数据和红色属性数据均生效。
149.(4)点云媒体的渲染过程。
150.媒体处理设备202根据媒体呈现描述信息中与渲染、视窗相关的元数据对解码得到的点云媒体进行渲染,得到点云媒体的点云帧,并根据点云帧的呈现时间呈现点云媒体。
151.在一个实施例中,请参见图2b,内容制作设备端:首先通过采集设备对真实世界的视觉场景a进行采样,得到与真实世界的视觉场景对应的点云媒体的点云源数据b,点云源数据b是由大量点云帧组成的帧序列;然后根据参数集合(即几何参数集合和属性参数集合)对获取的点云媒体进行编码处理,得到点云码流e(包括编码的几何码流和属性码流),可选地,该点云码流e中还可以包括参数集合;接着,对点云码流e进行封装得到点云媒体对应的媒体文件,具体地,内容制作设备201根据特定媒体容器文件格式,将一个或多个编码的码流合成为用于文件回放的媒体文件f,或用于流式传输的初始化片段和媒体片段的序列(fs);其中,媒体容器文件格式可以是指在国际标准化组织(international organization for standardization,iso)/国际电工委员会(international electrotechnical commission,iec)14496-12中规定的iso基本媒体文件格式。该媒体文件中可以还包含参数集合指示信息,参数集合指示信息用于指示参数集合的封装位置。在一种实施方式中,内容制作设备还将元数据封装到媒体文件或初始化/媒体片段的序列中,并通过传输信令(如动态自适应流媒体传输接口)将初始化/媒体片段的序列传送给媒体处理设备202。
152.在媒体处理设备端:首先接收内容制作设备201发送的媒体文件,该媒体文件可以包括:用于文件回放的媒体文件f',或用于流式传输的初始化片段和媒体片段的序列fs';然后对媒体文件进行解封装处理,得到点云码流e';接着根据媒体文件包含的参数集合指示信息所指示的封装位置获取参数集合,并根据参数集合解码点云码流(即根据参数集合中的属性参数集合对点云码流中的属性数据进行解码处理以及根据参数集合中的几何参数集合对点云码流中的几何数据进行解码处理),得到点云媒体d';在具体实现中,媒体处理设备基于当前对象的观看位置/观看方向确定呈现点云媒体所需的媒体文件,或者媒体片段序列;并对呈现点云媒体所需的媒体文件,或者媒体片段序列进行解码处理,得到呈现所需的点云媒体。最后基于当前对象的观看(视窗)方向,对解码后的点云媒体进行渲染,得到点云媒体的点云帧a',并按照点云帧的呈现时间在媒体处理设备携带的头戴式显示器或任何其他显示设备的屏幕上呈现点云媒体。需要说明的是,当前对象的观看位置/观看方向
由头部跟随以及可能还有视觉跟随功能确定。除了通过渲染器用来渲染当前对象的观看位置/观看方向的点云媒体外,还可以通过音频解码器来对当前对象的观看(视窗)方向的音频进行解码优化。其中,在基于视窗的传输过程中,当前的观看位置和观看方向也被传递给策略模块,用于确定要接收的轨道。
153.可以理解的是,本技术涉及点云媒体的数据处理技术可以依托于云技术进行实现;例如,将云服务器作为内容制作设备。云技术(cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
154.在本技术实施例中,获取点云媒体的媒体文件,媒体文件包括点云媒体的点云码流及属性参数集合指示信息,该点云码流包含属性参数集合,该属性参数集合中包含点云码流中的属性数据解码所需的参数信息;属性参数集合指示信息用于指示属性参数集合的封装位置;按照属性参数集合指示信息,可以直接获知属性参数集合的封装位置,并可基于该属性参数集合对点云码流进行解码处理以呈现点云媒体,指导了点云媒体的传输、解码和呈现,可减少不必要的编解码依赖,节省传输资源和计算资源。
155.接下来对本技术实施例涉及到点云媒体的数据处理方法进行相关阐述。请参阅图3,图3为本技术实施例提供的一种点云媒体的数据处理方法的流程示意图。该方法可由上述媒体处理设备执行,本实施例中所描述的点云媒体的数据处理方法,可以包括以下步骤s301-s302:
156.s301、获取点云媒体的媒体文件,媒体文件包括点云媒体的点云码流,该点云码流中可以包含属性参数集合,属性参数集合包含点云码流中的属性数据解码所需的参数信息;该媒体文件还包括属性参数集合指示信息,该属性参数集合指示信息用于指示属性参数集合的封装位置。
157.在一个实施例中,该属性参数集合指示信息还可用于指示属性参数集合与点云码流中的属性数据之间的关系,即该属性参数集合指示信息可以指示属性参数集合以及该属性参数集合对应的属性数据,例如,该属性参数集合指示信息指示属性参数集合对点云码流中的一种特定类型的属性数据(如颜色)生效;又例如,该属性参数集合指示信息指示属性参数集合对点云码流中的特定一组属性数据(如一组黄色属性数据)生效;再如,该属性参数集合指示信息指示属性参数集合对点云码流中的所有属性数据均生效。
158.其中,媒体文件是对点云媒体的点云码流进行封装处理得到的。在本技术实施例中,从单轨方式和多轨方式两种方式出发,属性参数集合的封装位置存在如下几种实现方式(1)-(2):
159.(1)当采用单轨方式将点云媒体的点云码流封装至同一轨道时,该属性参数集合可以封装在子样本信息数据盒中。
160.在采用单轨方式将点云媒体的点云码流封装至同一轨道时,媒体文件中包括轨道,该轨道中可以包含一个或多个样本,一个样本对应点云媒体中的一个点云帧;一个样本可以被划分为一个或多个子样本,每个子样本中可以包括点云码流中的任一类型的点云数据,如子样本中可以包含参数集合,或者子样本中可以包含属性数据或者几何数据,该媒体文件还可以包括子样本信息数据盒,属性参数集合可以封装在子样本信息数据盒中,此时,属性参数集合指示信息用于指示属性参数集合封装于子样本信息数据盒中。其中,属性参
数集合指示信息可以表示为子样本信息数据盒,该子样本信息数据盒可以包含以下至少一个字段:有效载荷类型字段、参考属性信息标志字段、参考属性类型标志字段、参考属性标识字段和参考属性类型字段。
161.具体的,在对点云码流进行封装时可以使用子样本信息数据盒;当一个点云帧可被划分为一个或多个点云片时,子样本包含的属性数据和/或几何数据属于该一个或多个点云片;在该子样本信息数据盒中可以包含子样本信息数据的标志字段。根据该子样本信息数据的标志字段(flag)的值可以定义子样本,该标志字段指定该子样本信息数据盒中的子样本的类型:若标志字段为第一预设值(如0),那么该子样本是指基于点云片承载的数据类型的子样本,此时,一个子样本只包含一种数据类型及相关数据,如一个子样本只包含几何数据类型以及几何数据。若标志字段为第二预设值(如1),那么该子样本是指基于点云片的子样本,此时一个子样本仅包含一个点云片所有相关数据,即包含几何片头和几何数据,属性片头和属性数据。当然,标志字段可以保留其他标志值。
162.此时,子样本信息数据盒的codec_specific_parameters(编码译码器具体规范)字段定义可以如表1:
163.表1
164.[0165][0166]
其中,子样本信息数据盒包含的各个字段含义如下:
[0167]
有效载荷类型字段(payloadtype):该有效载荷类型字段用于指示子样本中包含点云数据的类型;若该有效载荷类型字段为第一取值(如2),则指示子样本中包含点云数据的类型为属性参数集合;若该有效载荷类型字段为第二取值(如3),则指示子样本中包含点云数据的类型为几何参数集合;若该有效载荷类型字段为第三取值(如0),则指示子样本中包含点云数据的类型为属性数据;若该有效载荷类型字段为第四取值(如1),则指示子样本中包含点云数据的类型为几何数据。应理解的是,第一取值、第二取值、第三取值、第四取值可以根据需求任意设置,如第一取值可以为0,第二取值可以为1,第三取值可以为2,第四取值可以为3,本技术实施例对此不作限定。
[0168]
属性呈现标志字段(attribute_present_flag):该属性呈现标志字段可以用于指示子样本中是否包含颜色属性数据和/或反射率属性数据,定义可以参见avs(中国国家音视频编码标准avs,audio video coding standard)-pcc。若属性呈现标志字段的值为第一设定值(如0),则指示子样本中是否包含颜色属性;若属性呈现标志字段的值为第二设定值(如1)指示子样本中是否包含反射率属性。
[0169]
点云片数据字段(slice_data):该字段指示子样本中是否包含点云片的数据。若点云片数据字段的值为第一设定值(如1),则指示子样本中包含点云片几何和/或属性类型数据;若点云片数据字段的值为第二设定值(如0),则指示子样本中不包含点云的参数信息。
[0170]
点云片标识字段(slice_id):该字段指示子样本中包含的数据对应的点云片的标识。
[0171]
参考属性信息标志字段(ref_attr_info_flag):该参考属性信息标志字段用于指示当前属性参数集合对属性数据生效范围;若参考属性信息标志字段为第一预设值(如1),则指示当前属性参数集合仅对当前样本中的特定一组(即某一组)或一种特定类型(即某一类)的属性数据生效;若参考属性信息标志字段为第二预设值(如0),则指示当前属性参数集合对当前样本中的所有属性数据生效;
[0172]
参考属性类型标志字段(ref_attr_type_flag):该参考属性类型标志字段用于指示所述当前属性参数集合对属性数据生效的类型;若参考属性类型标志字段为第一数值(如1),则指示当前属性参数集合仅对当前样本中一种特定类型的属性数据生效;若参考属
性类型标志字段为第二数值(0),则指示当前属性参数集合仅对当前样本中特定一组属性数据生效。
[0173]
参考属性标识字段(ref_attr_id):该字段用于指示当前属性参数集合对应的属性数据的标识符,即可理解为当前属性参数集合生效的属性数据的标识符。
[0174]
参考属性类型字段(ref_attr_type):该字段用于指示当前属性参数集合对应的属性数据的类型;即可理解为当前属性参数集合生效的属性数据的类型;例如,参考属性类型字段可以用于指示当前属性参数集合对应的属性数据的类型为颜色;又例如,参考属性类型字段可以用于指示当前属性参数集合对应的属性数据的类型为反射率。
[0175]
保留字段(reserved):该保留字段的值可以为0。
[0176]
其中,当前属性参数集合是指正在被使用的属性参数集合,当前样本是指正在被解码的样本。
[0177]
(2)当多轨方式将点云媒体的点云码流封装至多个轨道时,该属性参数集合的封装位置可以有如下a-d几种情况:
[0178]
a、属性参数集合被独立封装在参数组件轨道中。
[0179]
当点云码流采用多轨方式被封装至媒体文件时,本技术实施例可以定义参数组件轨道,点云码流采用基于类型的多轨方式被封装至媒体文件,此时该媒体文件中可以包括参数组件轨道,该属性参数集合被独立封装在参数组件轨道中。其中,该参数组件轨道的样本入口类型可以为

apcp’或

gpp1’;包含于:样本描述数据盒(sampledescriptionbox);强制性:否;数量:一个或多个。
[0180]
此时,属性参数集合指示信息可以用于指示属性参数集合被独立封装至参数组件轨道中。在参数组件轨道中包含一个或多个样本,每个样本对应点云媒体的一个点云帧,每个样本均包含对应点云帧的属性数据解码所需的参数信息。
[0181]
在一个实施例中,媒体文件包括一个或多个参数组件轨道;一种可行的实施方式中,当媒体文件仅包括一个参数组件轨道时,该点云码流中的属性参数集合被封装至该参数组件轨道中。可以理解的是,在此实施方式下,点云码流中的几何参数集合也可一并被封装在该参数组件轨道中,即点云码流的几何参数集合和属性参数集合均可被封装在该参数组件轨道中。在另一种可行的实施方式中,当媒体文件包括多个参数组件轨道时,点云码流中的几何参数集合可被封装至一个单独的参数组件轨道中,而点云码流中的属性参数集合可被封装至另一个单独的参数组件轨道中。在再一种可行的实施方式中,当媒体文件包括多个参数组件轨道时,点云码流中的几何参数集合可被封装至一个单独的参数组件轨道中,而点云码流中的属性参数集合可基于类型被封装至多个参数组件轨道中,例如,属性参数集合包括颜色属性参数集合和反射率属性参数集合,当媒体文件包括多个参数组件轨道时,颜色属性参数集合可被封装至一个单独的参数组件轨道,反射率属性参数集合可被封装至另一个单独的参数组件轨道。
[0182]
在多轨方式下,点云码流中的属性参数集合被封装为参数组件轨道。该参数组件轨道可以包含轨道数据盒(trackbox),该轨道数据盒可以包含一个轨道参考类型数据盒(trackreferencetypebox),该轨道参考类型数据盒的参考类型(reference_type)为'appr'。该轨道参考类型数据盒用于指示该参数组件轨道与该参数组件轨道中的属性参数集合对应的一个或多个属性组件轨道(即点云数据轨道)相关联。应理解为:该轨道参考类
型数据盒用于参考或者关联参数组件轨道中的属性参数集合对应的一个或多个属性组件轨道。例如,如果参数组件轨道中的属性参数集合包括颜色参数和反射率参数,那么该轨道参考类型数据盒用于参考或关联该参数组件轨道中的属性参数集合对应的颜色属性组件轨道和反射率属性组件轨道。
[0183]
在一个实施例中,当媒体文件遵循第一编码标准(例如avs编码标准)时,该参数组件轨道包含组件信息数据盒(avspcccomponentinfobox),该组件信息数据盒设置于参数组件轨道的头样本入口(avspccparaheadersampleentry)中;该组件信息数据盒包含以下至少一个字段:组件类型字段、头部类型字段、属性头数量字段、参考属性类型标志字段、参考属性标识字段和参考属性类型字段;该组件信息数据盒的语法可以参见表2:
[0184]
表2
[0185][0186]
其中,该组件信息数据盒包含的各个字段含义如下:
[0187]
组件类型字段(avs_pcc_type):该组件类型字段用于指示轨道中的组件类型;当组件类型字段被设置为目标预设值(如5)时,指示参数组件轨道中的组件类型为参数集合。
其中,组件类型字段的取值与组件类型之间的对应关系可如表3所示:
[0188]
表3
[0189]
avs_pcc_type值描述1保留2几何数据3保留4属性数据5参数集合6..31保留
[0190]
属性类型字段(attr_type):该属性类型字段用于指示轨道中包含的属性组件的类型,若该属性类型字段为第一取值(如0),则指示该轨道中仅包含颜色属性数据;若属性类型字段为第二取值(如1),则指示仅包含反射率属性数据;该属性类型字段为第三取值(如2),则指示包含颜色属性数据和反射率属性数据。
[0191]
头部类型字段(header_type):该头部类型字段用于指示参数组件轨道中包含的参数集合类型;若头部类型字段为第一设定值(如0),则指示参数组件轨道中包含的参数集合类型为属性参数集合;若头部类型字段为第二设定值(如1),则指示参数组件轨道中包含的参数集合类型为几何参数集合;若该头部类型字段为第三设定值(如2),则指示参数组件轨道中包含参数集合类型为几何参数集合和属性参数集合。其中,当点云码流中的属性参数集合被封装至多个参数组件轨道时,如几何参数集合被封装到一个单独的参数组件轨道,属性参数集合被封装到一个单独的参数组件轨道,此时,头部类型字段的取值只能为第一设定值和第二设定值。
[0192]
属性头数量字段(attr_header_num):用于指示参数组件轨道中的样本包含的属性参数集合的数量,例如,该属性参数集合的数量可以为1个、2个等;其中,样本中包含的属性参数集合的顺序与组件信息数据盒中指示的属性参数集合的标识符或属性参数集合类型的顺序一致;例如,样本中包含的属性参数集合的顺序为属性参数集合1、属性参数集合2,那么该组件信息数据中指示的属性参数集合的标识符的顺序应该也为属性参数集合1的标识符、属性参数集合2的标识符。
[0193]
参考属性类型字段(ref_attr_type_flag):该参考属性类型字段用于指示当前属性参数集合对属性数据生效的类型;若参考属性类型标志字段为第一预设值(如0),则表示当前属性参数集合仅对当前样本中一种特定类型的属性数据生效;若参考属性类型标志字段为第二预设值(如1),则表示当前属性参数集合对当前样本中特定一组属性数据生效。
[0194]
参考属性标识字段(ref_attr_id):该参考属性标识字段用于指示当前属性参数集合对应的属性数据的标识符。
[0195]
参考属性类型(ref_attr_type):该参考属性类别用于指示当前属性参数集合对应的属性数据的类型;
[0196]
其中,当前属性参数集合是指正在被使用的属性参数集合,当前样本是指正在被解码的样本。
[0197]
在另一个实施例中,媒体文件可以遵循第二编码标准(如mpeg编码标准);参数组件轨道包含组件信息数据盒(gpcccomponentinfobox)和配置数据盒
(gpccconfigurationbox);其中,配置数据盒的语法可以如表4所示:
[0198]
表4
[0199][0200][0201]
其中,配置数据盒包括的各个字段的含义如下:
[0202]
配置版本字段(configurationversion):该配置版本字段用于配置记录版本信息;若相应轨道中该配置版本字段的版本信息无法被播放器/解码器识别,则播放器/解码
器不应尝试对相应轨道进行解码。
[0203]
档次字段(profile_idc):该档次字段用于指示当前轨道对应的码流的档次信息。
[0204]
档次兼容字段(profile_compatibility_flags):该档次兼容字段用于指示当前轨道对应的码流的档次兼容性信息。
[0205]
设置单元数量字段(num_of_setup_unit_arrays):该设置单元数量字段用于指示当前解码器配置记录中包含的参数集组个数,每个参数集组对应一种类型的参数集合。
[0206]
设置单元类型字段(setup_unit_type):该设置单元类型字段用于指示当前参数集组对应的参数集合类型。
[0207]
参数集合指示字段(array_completeness):该参数集合指示字段用于指示相应点云码流包含的当前类型的参数集合在解码器配置记录中指示情况。当参数集合指示字段为第一取值(如1)时,指示相应码流包含的当前类型的参数集全部在解码器配置记录中指示。当参数集合指示字段为第一取值(如0)时,表示相应码流包含的当前类型的参数集合一部分在解码器配置记录中指示,一部分在码流中指示。
[0208]
设置单元数量字段(num_of_setup_units):该设置单元数量字段用于指示当前类型的参数集合的个数。其中,设置单元(setupunit)包含sps(序列参数集合)、gps(几何参数集合)、aps(属性参数集合)或者点云分块信息的数据单元。
[0209]
在一个实施例中,配置数据盒中包含的设置单元对应的参数集合类型与组件信息数据盒指示的参数集合类型相同;设置单元(setupunit)可以包含序列参数集合(sps)、几何参数集合(即gps)、属性参数集合(即aps)或者点云分块信息的数据单元。应理解为:当设置单元对应的参数集合类型为属性参数集合时,该组件信息数据盒指示的参数集合类型也为属性参数集合;当该配置数据盒中包含的设置单元对应的参数集合类型为几何参数集合,该组件信息数据盒指示的参数集合类型也为几何参数集合。
[0210]
上述组件信息数据盒包含以下至少一个字段:组件类型字段、参数设置类型数量字段、参数设置类型字段。组件信息数据盒的语法如表5所示:
[0211]
表5
[0212][0213][0214]
其中,组件信息数据盒包含的各个字段含义如下:
[0215]
组件类型字段(gpcc_type):该字段用于指示轨道中的组件的类型;若组件类型字段为目标设定值(如5),则指示参数组件轨道中的组件的类型为参数集合,其中,组件类型字段的取值与组件类型之间的对应关系可如表6所示:
[0216]
表6
[0217]
gpcc_type取值描述
1保留2几何数据3保留4属性数据5参数集合6..31保留
[0218]
参数设置类型数量字段(num_para_set_type):该字段用于指示参数组件轨道包含的参数集合的数量。如参数组件轨道包含的参数集合的数量可以为1个、2个等。可选地,当媒体文件包括多个参数组件轨道时,如几何参数集合被单独封装到一个参数组件轨道,属性参数集合被单独封装到另一个参数组件轨道,此时,每个参数组件轨道只包含一种类型的参数集合,那么可以不需要参数设置类型数量字段。
[0219]
参数设置类型字段(parameter_set_type):该参数设置类型字段用于指示参数组件轨道中包含的参数集合的类型;若参数设置类型字段为第一预设值(如0),则表示参数组件轨道中包含的参数集合的类型为属性参数集合;若参数设置类型字段为第二预设值(如1),则表示参数组件轨道中包含的参数集合的类型为几何参数集合;若参数设置类型字段为第三预设值(如2),则表示参数组件轨道中包含的参数集合的类型为序列参数集合。
[0220]
属性索引字段(attr_index):该属性索引字段用于指示在sps(即属性参数集合)中指示的属性参数的序号。
[0221]
属性类型呈现字段(attr_type_present_flag),该属性类型呈现字段用于指示组件信息数据盒中是否指示了属性数据类型信息;若属性类型呈现字段为第一取值(如1),则指示组件信息数据盒中指示了属性数据类型信息;若属性类型呈现字段为第二取值(如0),则表示组件信息数据盒中为指示属性数据类型信息。其中,四字节与属性数据类型之间的关系如表7所示:
[0222]
表7属性标签四字节(attribute_label_four_bytes)
[0223]
属性标签四字节[i]属性类型0colour(颜色)1reflectancestry(反射率)2frame index(帧索引)3material id(材质标识)4transparency(透明度)5normals(常态)6..255reserved(保留)256..0xffffffffunspecified(未说明)
[0224]
属性类型字段(attr_type):该属性类型字段用于指示属性成分的类型,其取值参考iso/iec 23090-9[gpcc]标准中的定义。
[0225]
属性名称字段(attr_name):该属性名称字段用于指示可直观解读(human-readable)的属性成分类型信息。
[0226]
b、属性参数集合被封装在几何参数组件轨道中。
[0227]
在采用多轨方式对点云码流进行封装至多个轨道时,除了将属性参数集合封装至
独立的参数组件轨道外,还可以将属性参数集合全部封装在媒体文件包含的几何组件轨道中。因为属性组件轨道一定依赖于几何组件轨道,所以即使某一个属性参数集合被不同的属性组件引用,当该属性参数集合位于几何组件轨道时,也不会引入额外的解码依赖关系。
[0228]
在多轨方式下,上述媒体文件可以包括一个几何组件轨道和至少一个属性组件轨道;其中,avs pcc中的几何组件轨道和属性组件轨道之间需要使用iso/iec14496-12[isobmff]定义的轨道参考工具以进行关联索引。
[0229]
其中,几何组件轨道可以包括一个或多个样本,在几何组件轨道的样本入口中,存在一个解码器配置数据盒,该解码器配置数据盒包含sps(序列参数集合,sequence parameter set)、gps、aps等参数集合,而属性组件轨道中不应该包含解码器配置数据盒。
[0230]
当点云码流中包含属性参数集合时,该属性参数集合应包含于几何组件轨道的相应样本中。而属性组件轨道中不应包含任何类型的属性参数集合,仅包含相应类型的属性数据。基于此,对组件数据信息盒相关字段进行修改,该修改字段如下:组件类型字段(gpcc_type):该组件类型字段用于指示轨道中组件的类型;该组件类型字段的取值如下表8所示:
[0231]
表8
[0232]
gpcc_type取值描述1保留2几何数据以及参数集合3保留4属性数据(不含参数集合)5

31保留
[0233]
当媒体文件中包括几何组件轨道和属性组件轨道时,该属性参数集合被封装在几何组件轨道中,该几何组件轨道可以包括组件信息数据盒,组件信息数据盒包括组件类型字段,组件类型字段用于指示几何组件轨道中的组件的类型,若组件类型字段为第一设定值(如2),则指示几何组件轨道中的组件的类型为几何数据和参数集合,该参数集合可以包含属性参数集合和几何参数集合。而在属性组件轨道中,组件信息数据盒所包括的组件类型字段为第二设定值(如4),指示属性组件轨道中的组件的类型均为属性数据,不包含参数集合。
[0234]
c、属性参数集合可以封装到每个属性组件轨道中。
[0235]
媒体文件可以包括一个或多个属性组件轨道,可以在每个属性组件轨道中复制属性参数集合,使得每个属性组件轨道中均包含相应的属性参数集合。此时,该属性参数集合分别被封装在每个属性轨道中;该属性参数集合指示信息可以用于指示该属性参数集合分别被封装在每个属性轨道中。其中,每个属性组件轨道中封装的属性参数集合,可是由同一个属性参数集合经过复制得到的。也就是说,当属性组件轨道的数量为n个时,可直接将属性参数集合复制n份,并在每个属性组件轨道中放置一份属性参数集合。
[0236]
d、属性参数集合的索引可以封装到每个属性组件轨道中。
[0237]
属性参数集合包括索引,可以在每个属性组件轨道中重复索引该属性参数集合,也即将属性参数集合的索引设置在每个属性组件轨道中,属性参数集合指示信息用于指示属性参数集合的索引被封装在每个属性组件轨道中。其中,通过任一个属性组件轨道中封
装的索引均能够查找到属性参数集合,或能够查找到属性参数集合被重新组织后形成的数据单元。
[0238]
在一个实施例中,可对点云码流进行重新组织后将不同类型的属性组件轨道的样本和对应的属性参数集合索引至同一个数据单元。如图4a所示,点云码流中包括几何参数集合(gps)、几何数据(geometry)、属性参数集合(aps)、属性数据1(attribute1)、属性数据2(attribute2);对点云码流进行重新组织后,可以将几何参数集合和几何数据所属的几何组件轨道中的样本索引至同一个数据单元41;将属性参数集合和属性数据1所属的属性组件轨道中的样本索引至同一个数据单元42;将属性参数集合和属性数据2所属的属性组件轨道中的样本索引至同一个数据单元43。又例如,如图4b所示,对点云码流进行重新组织后,可以将几何参数集合和几何数据所属的几何组件轨道中的样本引至同一个数据单元44,将属性参数集合、属性数据1所属的属性组件轨道中的样本以及属性数据2所属的属性组件轨道中的样本索引至同一个数据单元45;在该数据单元45中,属性数据1所属的属性组件轨道中封装的索引和属性数据2所属的属性组件轨道中封装的索引均可以索引到数据单元45。
[0239]
在一个实施例中,当点云媒体采用流化传输方式进行传输;获取点云媒体的媒体文件可以包括:获取点云媒体的传输信令,然后根据传输信令获取点云媒体的媒体文件。当通过传输信令传输媒体文件时,由于流化传输方式进行媒体文件传输,因此需要对属性数据进行解码时,需要请求该参数组件轨道对应的数据流,以获取相应的属性参数集合,实现对点云媒体对应媒体文件的传输指导。需要说明的是,在流化传输方式下,如果属性参数集合被独立封装至参数组件轨道中,那么该传输信令中还包含流指示信息,该流指示信息用于指示参数组件轨道对应的数据流。
[0240]
其中,该数据流可以是表示(representation),传输信令可以是dash信令,该流指示信息可以是指组件描述子(gpcccomponent descriptor),该组件描述子被设置于参数组件轨道对应的数据流;该组件描述子包括组成类型元素及参数类型元素,组成类型元素用于指示在所述参数组件轨道中的组件的类型;若组成类型元素(component@component_type)为目标字符(如’prms’),则在参数组件轨道中的组件的类型为参数组件。参数类型元素用于指示所述参数组件轨道中包含的参数集合的类型。其中,该组件描述子的属性和元素可如表9所示:
[0241]
表9
[0242]
[0243][0244]
其中,m:mandatory强制字段;cm:conditional mandatory条件强制;o:optional可选字段。
[0245]
s302、按照属性参数集合指示信息,对点云码流进行解码处理以呈现点云媒体。
[0246]
在一个实施例中,按照属性参数集合指示信息,对所述点云码流进行解码处理以呈现点云媒体,可以包括:根据属性参数集合指示信息所指示的封装位置,获取属性参数集合;然后利用属性参数集合对点云码流中的属性数据进行解码处理,以呈现点云媒体。具体的,可对属性参数集合指示信息所指示的封装位置先进行解码处理,得到属性参数集合。例如,属性参数集合指示信息所指示的封装位置为参数组件轨道,需要对参数组件轨道进行解码,得到属性参数集合。然后,根据需求确定需要解码的属性数据,并利用属性参数集合对该属性数据进行解码处理,通过这种方式,可以部分解码相关的点云媒体,节省了解码资
源。
[0247]
在本技术实施例中,获取点云媒体的媒体文件,媒体文件包括点云媒体的点云码流及属性参数集合指示信息,该点云码流包含属性参数集合,该属性参数集合中包含点云码流中的属性数据解码所需的参数信息;属性参数集合指示信息用于指示属性参数集合的封装位置;按照属性参数集合指示信息,可以直接获知属性参数集合的封装位置,并可基于该属性参数集合对点云码流进行解码处理以呈现点云媒体,指导了点云媒体的传输、解码和呈现,可减少不必要的编解码依赖,节省传输资源和计算资源。
[0248]
请参见图5,图5是本技术实施例提供的一种点云媒体的数据处理方法的流程示意图。该点云媒体的数据处理方法可由内容制作设备来执行。该点云媒体的数据处理方法,可以包括以下步骤s501-s503:
[0249]
s501、获取点云媒体。
[0250]
s502、对点云媒体进行编码处理,得到点云码流。点云码流包含属性参数集合,属性参数集合包含点云码流中的属性数据解码所需的参数信息。
[0251]
其中,对点云媒体进行编码处理的具体实现方式具体可参见前述相应部分的描述,在此不再赘述。
[0252]
s503、对点云码流进行封装处理,得到点云媒体的媒体文件;该媒体文件还包含属性参数集合指示信息。
[0253]
其中,可在媒体文件中添加属性参数指示信息,该属性参数集合指示信息可以用于指示属性参数集合的封装位置;此外,该属性参数集合指示信息还可以用于指示属性参数集合与点云码流中的属性数据之间的关系,如属性参数集合对点云码流中的某一类属性数据或某一组生效。
[0254]
对点云码流进行封装,得到点云媒体的媒体文件可以包括如下几种实现方式:
[0255]
(1)媒体文件包括轨道,点云码流被封装在轨道中,轨道中包含一个或多个样本,一个样本对应点云媒体中的一个点云帧;一个样本被划分为一个或多个子样本;每个子样本包含一种类型的点云数据;媒体文件还包括子样本信息数据盒,属性参数集合封装于子样本信息数据盒中。
[0256]
作为一种实现方式,内容制作设备可采用单轨方式将点云码流封装至轨道中,轨道中包含一个或多个样本,一个样本对应点云媒体中的一个点云帧;然后将每个样本划分为一个或多个子样本;当采用单轨方式将点云媒体的点云码流封装至同一轨道时,在对点云码流进行封装时可以使用子样本信息数据盒,可将点云码流中的属性参数集合设置于子样本信息数据盒中,形成点云媒体的媒体文件;其中,属性参数集合指示信息用于指示属性参数集合设置于子样本信息数据盒中。
[0257]
其中,在该子样本信息数据盒中可以包含子样本信息数据的标志字段。当一个点云帧可被划分为一个或多个点云片时,子样本包含的属性数据和/或几何数据属于该一个或多个点云片;根据该子样本信息数据的标志字段(flag)的值定义子样本,该标志字段指定该子样本信息数据盒中的子样本的类型:若标志字段为第一预设值(如0),那么该子样本是指基于点云片承载的数据类型的子样本,此时,一个子样本只包含一种数据类型及相关数据,如一个子样本只包含几何数据类型以及几何数据。若标志字段为第二预设值(如1),那么该子样本是指基于点云片的子样本,此时一个子样本仅包含一个点云片所有相关数
据,即包含几何片头和几何数据,属性片头和属性数据。
[0258]
其中,该子样本信息数据盒可以包含以下至少一个字段:有效载荷类型字段、参考属性信息标志字段、参考属性类型标志字段、参考属性标识字段和参考属性类型字段。该有效载荷类型字段用于指示子样本包中含点云数据的类型;参考属性信息标志字段用于指示当前属性参数集合对属性数据生效范围;参考属性类型标志字段用于指示当前属性参数集合对属性数据生效的类型;参考属性标识字段用于指示当前属性参数集合对应的属性数据的标识符;参考属性类型字段用于指示当前属性参数集合对应的属性数据的类型;
[0259]
此时,将点云码流中的属性参数集合设置于子样本信息数据盒中可以包括:若子样本中包含点云数据的类型为属性参数集合,则将有效载荷字段设置为第一取值(如2);若子样本中包含点云数据的类型为几何参数集合,则将有效载荷字段设置为第二取值(如3);若当前属性参数集合仅对当前样本中的特定一组(即某一组)或一种特定类型(即某一类)的属性数据生效,则将参考属性信息标志字段设置为第一预设值(如1);若当前属性参数集合对当前样本中的所有属性数据生效,则将参考属性信息标志字段设置为第二预设值(如0);若当前属性参数集合仅对当前样本中一种特定类型的属性数据生效,则将参考属性类型标志字段为第一数值(如1);若当前属性参数集合仅对当前样本中的特定一组属性数据生效,则将参考属性类型标志字段为第二数值(如0)。其中,当前属性参数集合是指正在被使用的属性参数集合,当前样本是指正在被编码的样本。
[0260]
(2)点云码流采用多轨方式被封装至媒体文件中;媒体文件包括参数组件轨道,属性参数集合被独立封装在参数组件轨道中;参数组件轨道中包含一个或多个样本,每个样本对应点云媒体的一个点云帧,每个样本包含对应点云帧的属性数据解码所需的参数信息。该属性参数集合指示信息用于指示属性参数集合被独立封装至参数组件轨道
[0261]
其中,媒体文件包括一个或多个参数组件轨道;在一种可行的实施方式中,当媒体文件仅包括一个参数组件轨道时,点云码流中的属性参数集合被封装至该参数组件轨道中;可以理解的是,在此实施方式下,点云码流中的几何参数集合也可一并被封装在该参数组件轨道中,即点云码流的几何参数集合和属性参数集合均可被封装在该参数组件轨道中。在另一种可行的实施方式中,当媒体文件包括多个参数组件轨道时,点云码流中的几何参数集合可被封装至一个单独的参数组件轨道中,而点云码流中的属性参数集合也可被封装至一个单独的参数组件轨道中。在再一种可行的实施方式中,当媒体文件包括多个参数组件轨道时,点云码流中的几何参数集合可被封装至一个单独的参数组件轨道中,而点云码流中的属性参数集合可基于类型被封装至多个参数组件轨道中。
[0262]
具体的,可以基于类型的多轨方式将点云码流中的属性参数集合封装至参数组件轨道中,并将点云码流中的几何数据封装至几何组件轨道,以及将点云码流中的属性数据封装至属性组件轨道,最终形成点云媒体的媒体文件;该媒体文件可以包括参数组件轨道、属性组件轨道和几何组件轨道。其中,参数组件轨道中包含一个或多个样本,每个样本对应点云媒体的一个点云帧,每个样本包含对应点云帧的属性数据解码所需的参数信息。属性组件轨道中可以包含一个或多个样本,每个样本对应点云媒体的一个点云帧,每个样本包含对应的点云帧的属性数据,几何组件轨道中可以包括一个或多个样本,每个样本对应点云媒体的一个点云帧,每个样本包含对应的点云帧的几何数据。参数组件轨道中包括轨道数据盒;轨道数据盒中包含轨道参考类型数据盒,轨道参考类型数据盒用于指示参数组件
轨道与所述参数组件轨道中的属性参数集合对应的一个或多个属性组件轨道相关联。
[0263]
a、当媒体文件遵循第一编码标准(如avs)时,该参数组件轨道可以包含组件信息数据盒,组件信息数据盒包含以下至少一个字段:组件类型字段、头部类型字段、属性头数量字段、参考属性类型标志字段、参考属性标识字段和参考属性类型字段。其中,组件类型字段用于指示参数组件轨道中的组件类型;头部类型字段用于指示参数组件轨道中包含的参数集合类型;属性头数量字段用于指示参数组件轨道中的样本包含的属性参数集合的数量,其中,样本中包含的属性参数集合的顺序与组件信息数据盒中指示的属性参数集合的标识符或属性参数集合类型的顺序一致;参考属性类型字段用于指示当前属性参数集合对属性数据生效的类型;参考属性标识字段用于指示当前属性参数集合对应的属性数据的标识符;参考属性类型用于指示当前属性参数集合对应的属性数据的类型;当前属性参数集合是指正在被使用的属性参数集合,当前样本是指正在被编码的样本。
[0264]
此时,将点云码流中的属性参数集合进行多轨封装至参数组件轨道中可以包括:若参数组件轨道中的组件类型为参数集合,则将组件类型字段设置为目标预设值;若参数组件轨道中包含的参数集合类型为属性参数集合,则将头部类型字段设置为第一设定值;若参数组件轨道中包含的参数集合类型为几何参数集合,则将头部类型字段设置为第二设定值;若参数组件轨道中包含的参数集合类型为几何参数集合和属性参数集合,则将头部类型字段设置为第三设定值。若当前属性参数集合仅对当前样本中一种特定类型的属性数据生效,则将参考属性类型标志字段设置为第一预设值(如1);若当前属性参数集合对当前样本中特定一组属性数据生效,则将参考属性类型标志字段设置为第二预设值(如0)。
[0265]
b、当媒体文件遵循第二编码标准(如mpeg)时,参数组件轨道包含组件信息数据盒和配置数据盒;配置数据盒中包含的设置单元对应的参数集合类型与组件信息数据盒指示的参数集合类型相同;设置单元(setupunit)可以包含序列参数集合(sps)、几何参数集合(即gps)、属性参数集合(即aps)或者点云分块信息的数据单元。该组件信息数据盒包含以下至少一个字段:组件类型字段、参数设置类型数量字段、参数设置类型字段。其中,组件类型字段用于指示参数组件轨道中的组件的类型;参数设置类型数量字段用于指示参数组件轨道包含的参数集合的数量;参数设置类型字段用于指示参数组件轨道中包含的参数集合的类型。
[0266]
此时,将点云码流中的属性参数集合封装至参数组件轨道中可以包括:若参数组件轨道中的组件的类型为参数集合,则将组件类型字段设置为目标设定值;若参数组件轨道中包含的参数集合的类型为属性参数集合,则将参数设置类型字段为第一预设值(如0);若参数组件轨道中包含的参数集合的类型为几何参数集合,则将参数设置类型字段设置为第二预设值(如1);若参数组件轨道中包含的参数集合的类型为序列参数集合,则将参数设置类型字段为第三预设值(如2)。
[0267]
(3)媒体文件包括几何组件轨道,属性参数集合被封装在几何组件轨道中。
[0268]
在采用多轨方式将点云码流封装至多个轨道时,可将属性参数集合封装至几何参数组件轨道。具体的,将点云码流中的属性参数集合和几何数据封装至几何组件轨道,并将点云码流中的属性数据封装至属性组件轨道,形成点云媒体的媒体文件。此时,该媒体文件中可以包括几何组件轨道和属性组件轨道。其中,属性参数集合指示信息用于指示属性参数集合被封装在几何组件轨道中。该几何组件轨道包括一个或多个样本,每个样本对应一
个点云帧,每个样本包含一个对应点云帧的属性数据解码所需的参数信息。
[0269]
在一个实施例中,几何组件轨道包括组件信息数据盒,该组件信息数据盒包括组件类型字段,组件类型字段用于指示几何组件轨道中的组件的类型;若几何组件轨道中的组件类型为几何数据和参数集合,则可以将组件类型字段设置为第一设定值(如2)。
[0270]
(4)媒体文件包括一个或多个属性组件轨道,该属性参数集合被封装在每个属性组件轨道中;其中,每个属性组件轨道中封装的属性参数集合,是由同一个属性参数集合经过复制得到的。
[0271]
具体的,可采用多轨方式将点云码流中的属性数据进行封装至一个或多个属性组件轨道,并对属性参数集合进行复制,然后在每个属性组件轨道中均封装一份属性参数集合,形成点云媒体的媒体文件;其中,属性参数集合指示信息用于指示属性参数集合分别被封装在每个属性组件轨道中。
[0272]
(5)媒体文件包括一个或多个属性组件轨道,属性参数集合包含索引,属性参数集合的索引被封装在每个属性组件轨道中。
[0273]
具体的,采用多轨方式将点云码流中属性数据进行封装至一个或多个属性组件轨道,并将点云码流中的属性参数集合的索引封装至每个属性组件轨道中,形成点云媒体的媒体文件;其中,通过任一个属性组件轨道中封装的索引均能够查找到所述属性参数集合,或能够查找到属性参数集合被重新组织后形成的数据单元。属性参数集合被重新组织后形成的数据单元是指对点云码流进行重新组织后将不同类型的属性组件轨道的样本和对应的属性参数集合索引至同一个数据单元。
[0274]
在一个实施例中,在流化传输方式下,通过传输信令发送点云媒体的媒体文件,如果属性参数集合被独立封装至参数组件轨道中,那么该传输信令中包含流指示信息,该流指示信息用于指示参数组件轨道对应的数据流。其中,传输信令可以为dash信令;上述该流指示信息可以是指组件描述子,组件描述子被设置于参数组件轨道对应的数据流;组件描述子包括组成类型元素及参数类型元素,组成类型元素用于指示在参数组件轨道中的组件的类型;若在参数组件轨道中的组件的类型为参数集合组件,则将组件描述子中的组成类型元素设置为目标字符。参数类型元素用于指示参数组件轨道中包含的参数集合的类型。
[0275]
在本技术实施例中,获取点云媒体,对点云媒体进行编码处理,得到点云码流;点云码流包含属性参数集合,属性参数集合包含点云码流中的属性数据解码所需的参数信息,对点云码流进行封装,得到点云媒体的媒体文件;媒体文件还包含属性参数集合指示信息,属性参数集合指示信息用于指示属性参数集合的封装位置;在媒体文件中添加该属性参数集合指示信息可以利于媒体处理设备根据该属性参数集合指示信息直接获取属性参数集合,从而指导点云媒体的传输、解码和呈现,减少一定的编解码依赖关系。
[0276]
下面通过三个完整的例子对本技术提供的点云媒体的数据处理方法进行详细说明:
[0277]
实施例一:
[0278]
1.内容制作设备可以采集点云媒体,并根据属性参数集合对点云媒体中的属性数据进行编码,得到属性码流;根据几何参数集合对点云媒体中的几何数据进行编码,得到几何码流,该属性码流和几何码流组合后生成点云码流,在该点云码流中还包括属性参数集合;然后,在对点云码流进行文件封装时,采用多轨方式将点云码流中的属性参数集合封装
至参数组件轨道,将点云码流中的属性数据封装至属性组件轨道,以及将点云码流中的几何数据封装至几何组件轨道,形成点云媒体的媒体文件;此时,在媒体文件可以包含属性参数集合指示信息,该属性参数集合指示信息用于指示属性参数集合被封装在参数组件轨道中。其中,封装之后各轨道信息如下:
[0279]
track1:几何组件轨道{gpcccomponentinfobox:gpcc_type=2},其中,几何组件轨道包含组件信息数据盒gpcccomponentinfobox,该组件信息数据盒中包括组件类型字段gpcc_type,gpcc_type=2指示该几何组件轨道中的组件类型为几何数据。
[0280]
track2:属性组件轨道-颜色{gpcccomponentinfobox:gpcc_type=4,attr_type=0};其中,属性组件轨道包含组件信息数据盒gpcccomponentinfobox,该组件信息数据盒中包括组件类型字段gpcc_type和属性类型字段attr_type,gpcc_type=4指示该几何组件轨道中的组件类型为属性数据;attr_type=0指示该属性成分的类型为颜色。
[0281]
track3:属性组件轨道-反射率{gpcccomponentinfobox:gpcc_type=4,attr_type=1};其中,属性组件轨道包含组件信息数据盒gpcccomponentinfobox,该组件信息数据盒中包括组件类型字段gpcc_type和属性类型字段attr_type,gpcc_type=4指示该属性组件轨道中的组件类型为属性数据;attr_type=1指示该属性成分的类型为反射率。
[0282]
track4:参数组件轨道{gpcccomponentinfobox:gpcc_type=5,parameter_set_type=0};{trackreferencetypebox:reference_type='appr',track_id=(2,3)};其中,参数组件轨道包含组件信息数据盒gpcccomponentinfobox,该组件信息数据盒中包括组件类型字段gpcc_type、参数设置类型字段parameter_set_type,gpcc_type=5指示该参数组件轨道中的组件类型为属性参数集合;该参数组件轨道还包含轨道参考类型数据盒trackreferencetypebox,该轨道参考类型数据盒的参考类型reference_type为'appr';该轨道参考类型数据盒用于将参数组件轨道与该参数组件轨道中的属性参数集合对应的属性组件轨道相关联,track_id=(2,3)指示参数组件轨道(tranck4)中的属性参数集合与轨道2和轨道3相关联。
[0283]
2.内容制作设备可以采用传输信令将媒体文件传输给媒体处理设备,该传输信令中包含流指示信息,该流指示信息用于指示参数组件轨道对应的数据流component@component_type=’prms’。组成类型元素component_type=’prms’,用于指示该参数组件轨道中的组件的类型为参数集合组件。
[0284]
假设track1~track4分别对应representation1~representation4
[0285]
3.媒体处理设备可以根据传输信令包含的流指示信息请求相应的媒体文件,此时,只要媒体处理设备需要请求属性数据,则一定会请求参数组件轨道对应的数据流,即representation4。
[0286]
4.在获取到参数组件轨道对应的数据流之后,媒体处理设备可以对媒体文件进行解封装和解码,可以根据属性参数集合指示信息从参数组件轨道track4中获取属性参数集合,并根据该属性参数集合部分解码相关的点云媒体,最大化节省解码资源。如媒体处理文件只需要解码颜色属性时,则可以解码track4+track2。具体的,可以先对参数组件轨道track4进行解码以获取属性参数集合,然后根据该属性参数集合解码颜色属性数据对应的属性组件轨道,得到点云媒体中的颜色属性数据。
[0287]
5、媒体处理设备可以对点云媒体中的颜色属性数据进行渲染处理,呈现该点云媒
体。
[0288]
实施例二:
[0289]
1.内容制作设备可以采集点云媒体,并根据属性参数集合对点云媒体中的属性数据进行编码,得到属性码流;并根据几何参数集合对点云媒体中的几何数据进行编码,得到几何码流,该属性码流和几何码流组合后生成点云码流,在该点云码流中还包括属性参数集合;然后,在对点云码流进行文件封装时,采用多轨方式将点云码流中的属性参数集合和几何数据封装至几何组件轨道,将点云码流中的属性数据封装至属性组件轨道,形成点云媒体的媒体文件;此时,在媒体文件可以包含属性参数集合指示信息,该属性参数集合指示信息用于指示将属性参数集合封装至几何组件轨道中;封装之后各轨道信息如下:
[0290]
track1:几何组件轨道{gpcccomponentinfobox:gpcc_type=2},其中,几何组件轨道包含组件信息数据盒gpcccomponentinfobox,该组件信息数据盒中包括组件类型字段gpcc_type,gpcc_type=2指示该几何组件轨道中的组件类型为几何数据和参数集合,该参数集合包含属性参数集合。
[0291]
track2:属性组件轨道-颜色{gpcccomponentinfobox:gpcc_type=4,attr_type=0};其中,属性组件轨道包含组件信息数据盒gpcccomponentinfobox,该组件信息数据盒中包括组件类型字段gpcc_type和属性类型字段attr_type,gpcc_type=4指示该几何组件轨道中的组件类型为属性数据;attr_type=0指示该属性成分的类型为颜色。
[0292]
track3:属性组件轨道-反射率{gpcccomponentinfobox:gpcc_type=4,attr_type=1};其中,属性组件轨道包含组件信息数据盒gpcccomponentinfobox,该组件信息数据盒中包括组件类型字段gpcc_type和属性类型字段attr_type,gpcc_type=4指示该属性组件轨道中的组件类型为属性数据;attr_type=1指示该属性成分的类型为反射率。
[0293]
2.内容制作设备可以将媒体文件传输给媒体处理设备。
[0294]
3.媒体处理设备可以在媒体文件进行解封装和解码时,可以根据属性参数集合指示信息从几何组件轨道track1中获取属性参数集合,并根据该属性参数集合部分解码相关的点云媒体,最大化节省解码资源。如媒体处理设备只需要解码颜色属性数据时,则解码track1+track2。具体的,可以先对几何组件轨道track1进行解码以获取属性参数集合,然后根据该属性参数集合解码颜色属性数据对应的属性组件轨道truck2,得到点云媒体中的颜色属性数据。
[0295]
5、媒体处理设备可以对点云媒体中的颜色属性数据进行渲染处理,呈现该点云媒体。
[0296]
实施例三:
[0297]
1.内容制作设备可以采集点云媒体;然后,根据属性参数集合对点云媒体中的属性数据进行编码,得到属性码流,并根据几何参数集合对点云媒体中的几何数据进行编码,得到几何码流,该属性码流和几何码流组合后生成点云码流,在该点云码流中还包含属性参数集合;然后,在对点云码流进行文件封装时,采用多轨方式将点云码流中的颜色属性数据封装至颜色属性数据对应的属性组件轨道(truck2)以及点云码流中的反射率属性数据封装至反射率属性数据对应的属性组件轨道(truck3),以及将点云码流中的几何数据封装至几何组件轨道,并将该属性参数集合分别封装至颜色属性数据对应的属性组件轨道和反射率属性数据对应的属性组件轨道,形成点云媒体的媒体文件;此时,在媒体文件可以包含
属性参数集合指示信息,该属性参数集合指示信息用于指示将属性参数集合封装到每个属性组件轨道;然后各轨道信息如下:
[0298]
track1:几何组件轨道{gpcccomponentinfobox:gpcc_type=2},其中,几何组件轨道包含组件信息数据盒gpcccomponentinfobox,该组件信息数据盒中包括组件类型字段gpcc_type,gpcc_type=2指示该几何组件轨道中的组件类型为几何数据。
[0299]
track2:属性组件轨道-颜色{gpcccomponentinfobox:gpcc_type=4,attr_type=0};其中,属性组件轨道包含组件信息数据盒gpcccomponentinfobox,该组件信息数据盒中包括组件类型字段gpcc_type和属性类型字段attr_type,gpcc_type=4指示该几何组件轨道中的组件类型为属性数据;attr_type=0指示该属性成分的类型为颜色。该属性组件轨道中包含属性参数集合。
[0300]
track3:属性组件轨道-反射率{gpcccomponentinfobox:gpcc_type=4,attr_type=1};其中,属性组件轨道包含组件信息数据盒gpcccomponentinfobox,该组件信息数据盒中包括组件类型字段gpcc_type和属性类型字段attr_type,gpcc_type=4指示该属性组件轨道中的组件类型为属性数据;attr_type=1指示该属性成分的类型为反射率;该属性组件轨道中包含属性参数集合。
[0301]
2.内容制作设备将媒体文件传输给媒体处理设备。
[0302]
3.媒体处理设备可以根据需求部分解码相关的点云媒体,如只需要解码颜色属性数据,可以直接解码track2。具体的,可以根据该属性参数集合指示信息直接解码颜色属性数据对应的属性组件轨道,得到点云媒体中的颜色属性数据。
[0303]
4、媒体处理设备可以对点云媒体中的颜色属性数据进行渲染处理,呈现该点云媒体。
[0304]
应理解是,上述3个实施例为本技术示例性给出的方式,根据实际情况可以根据属性参数集合的封装位置进行灵活选择使用或组合使用。本技术对此不作限定。
[0305]
在本技术实施例中,获取点云媒体的媒体文件,媒体文件包括点云媒体的点云码流及属性参数集合指示信息,该点云码流包含属性参数集合,该属性参数集合中包含点云码流中的属性数据解码所需的参数信息;属性参数集合指示信息用于指示属性参数集合的封装位置;按照属性参数集合指示信息,可以直接获知属性参数集合的封装位置,并可基于该属性参数集合对点云码流进行解码处理以呈现点云媒体,指导了点云媒体的传输、解码和呈现,可减少不必要的编解码依赖,节省传输资源和计算资源。
[0306]
请参见图6,图6是本技术实施例提供的一种点云媒体的数据处理装置的结构示意图,该点云媒体的数据处理装置可以设置于本技术实施例提供的计算机设备中,计算机设备可以是上述方法实施例中提及的媒体处理设备。图6所示的点云媒体的数据处理装置可以是运行于计算机设备中的一个计算机程序(包括程序代码),该点云媒体的数据处理装置可以用于执行图3所示的方法实施例中的部分或全部步骤。请参见图6,该点云媒体的数据处理装置可以包括如下单元:
[0307]
获取单元601,用于获取点云媒体的媒体文件,媒体文件包括点云媒体的点云码流,点云码流包含属性参数集合,属性参数集合包含点云码流中的属性数据解码所需的参数信息;媒体文件中还包括属性参数集合指示信息,属性参数集合指示信息用于指示属性参数集合的封装位置;
[0308]
处理单元602,用于按照属性参数集合指示信息,对点云码流进行解码处理以呈现点云媒体。
[0309]
在一个实施例中,媒体文件包括轨道,轨道中包含一个或多个样本,一个样本对应点云媒体中的一个点云帧;一个样本被划分为一个或多个子样本,每个子样本包含一种类型的点云数据;
[0310]
媒体文件还包括子样本信息数据盒,属性参数集合封装于子样本信息数据盒中。
[0311]
在一个实施例中,属性参数集合指示信息表示为子样本信息数据盒,属性参数集合指示信息还用于指示属性参数集合与点云码流中的属性数据之间的关系;
[0312]
子样本数据盒包括以下至少一个字段:有效载荷类型字段、参考属性信息标志字段、参考属性类型标志字段、参考属性标识字段和参考属性类型字段;
[0313]
有效载荷类型字段用于指示子样本中包含的点云数据类型;若有效载荷类型字段为第一取值,则指示子样本中包含的点云数据的类型为属性参数集合;若有效载荷类型字段为第二取值,则指示子样本中包含的点云数据的类型为几何参数集合,几何参数集合包含几何数据解码所需的参数信息;
[0314]
参考属性信息标志字段用于指示当前属性参数集合对属性数据生效范围;若参考属性信息标志字段为第一预设值,则指示当前属性参数集合仅对当前样本中的特定一组或一种特定类型的属性数据生效;若参考属性信息标志字段为第二预设值,则指示当前属性参数集合对当前样本中的所有属性数据生效;
[0315]
参考属性类型标志字段用于指示当前属性参数集合对属性数据生效的类型;若参考属性类型标志字段为第一数值,则指示当前属性参数集合仅对当前样本中一种特定类型的属性数据生效;若参考属性类型标志字段为第二数值,则指示当前属性参数集合仅对当前样本中特定一组属性数据生效;
[0316]
参考属性标识字段用于指示当前属性参数集合对应的属性数据的标识符;参考属性类型字段用于指示当前属性参数集合对应的属性数据的类型;
[0317]
其中,当前属性参数集合是指正在被使用的属性参数集合,当前样本是指正在被解码的样本。
[0318]
在一个实施例中,点云码流采用多轨方式被封装在媒体文件中;媒体文件包括参数组件轨道,属性参数集合被独立封装在参数组件轨道中;
[0319]
参数组件轨道中包含一个或多个样本,每个样本对应点云媒体的一个点云帧,每个样本包含对应点云帧的属性数据解码所需的参数信息。
[0320]
在一个实施例中,媒体文件包括一个或多个参数组件轨道;当媒体文件仅包括一个参数组件轨道时,点云码流中的属性参数集合被封装至参数组件轨道中;当媒体文件包括多个参数组件轨道时,点云码流中的属性参数集合被封装至一个单独的参数组件轨道中或点云码流中的属性参数集合基于类型被封装至多个参数组件轨道中。
[0321]
在一个实施例中,参数组件轨道中包括轨道数据盒;
[0322]
轨道数据盒中包含轨道参考类型数据盒,轨道参考类型数据盒用于指示参数组件轨道与参数组件轨道中的属性参数集合对应的一个或多个属性组件轨道相关联。
[0323]
在一个实施例中,媒体文件遵循第一编码标准;参数组件轨道包含组件信息数据盒,组件信息数据盒设置于参数组件轨道的头样本入口中;组件信息数据盒包含以下至少
一个字段:组件类型字段、头部类型字段、属性头数量字段、参考属性类型标志字段、参考属性标识字段和参考属性类型字段;
[0324]
组件类型字段用于指示参数组件轨道中的组件类型;当组件类型字段被设置为目标预设值时,指示参数组件轨道中的组件类型为参数集合;
[0325]
头部类型字段用于指示参数组件轨道中包含的参数集合类型;若头部类型字段为第一设定值,则指示参数组件轨道中包含的参数集合类型为属性参数集合;若头部类型字段为第二设定值,则指示参数组件轨道中包含的参数集合类型为几何参数集合;若头部类型字段为第三设定值,则指示参数组件轨道中包含的参数集合类型为几何参数集合和属性参数集合;
[0326]
属性头数量字段用于指示参数组件轨道中的样本包含的属性参数集合的数量;其中,样本中包含的属性参数集合的顺序与组件信息数据盒中指示的属性参数集合的标识符或属性参数集合类型的顺序一致;
[0327]
参考属性类型字段用于指示当前属性参数集合对属性数据生效的类型;若参考属性类型标志字段为第一预设值,则表示当前属性参数集合仅对当前样本中一种特定类型的属性数据生效;若参考属性类型标志字段为第二预设值,则表示当前属性参数集合对当前样本中特定一组属性数据生效;
[0328]
参考属性标识字段用于指示当前属性参数集合对应的属性数据的标识符;
[0329]
参考属性类型字段用于指示当前属性参数集合对应的属性数据的类型;
[0330]
其中,当前属性参数集合是指正在被使用的属性参数集合,当前样本是指正在被解码的样本。
[0331]
在一个实施例中,媒体文件遵循第二编码标准;参数组件轨道包含组件信息数据盒和配置数据盒;配置数据盒中包含的设置单元对应的参数集合类型与组件信息数据盒指示的参数集合类型相同;
[0332]
组件信息数据盒包含以下至少一个字段:组件类型字段、参数设置类型数量字段、参数设置类型字段;
[0333]
组件类型字段用于指示参数组件轨道中的组件的类型;若组件类型字段为目标设定值,则指示参数组件轨道中的组件的类型为参数集合;
[0334]
参数设置类型数量字段用于指示参数组件轨道包含的参数集合的数量;
[0335]
参数设置类型字段用于指示参数组件轨道中包含的参数集合的类型;若参数设置类型字段为第一预设值,则表示参数组件轨道中包含的参数集合的类型为属性参数集合;若参数设置类型字段为第二预设值,则表示参数组件轨道中包含的参数集合的类型为几何参数集合;若参数设置类型字段为第三预设值,则表示参数组件轨道中包含的参数集合的类型为序列参数集合。
[0336]
在一个实施例中,媒体文件包括几何组件轨道,属性参数集合被封装在几何组件轨道中。
[0337]
在一个实施例中,几何组件轨道包括组件信息数据盒,属性参数集合指示信息表示为组件信息数据盒;
[0338]
组件信息数据盒包括组件类型字段,组件类型字段用于指示几何组件轨道中的组件的类型;若组件类型字段为第一设定值,则指示几何组件轨道中的组件的类型为几何数
据和参数集合,参数集合包含属性参数集合和几何参数集合。
[0339]
在一个实施例中,媒体文件包括一个或多个属性组件轨道,属性参数集合被封装在每个属性组件轨道中;
[0340]
其中,每个属性组件轨道中封装的属性参数集合,是由同一个属性参数集合经过复制得到的。
[0341]
在一个实施例中,媒体文件包括一个或多个属性组件轨道,属性参数集合包含索引,属性参数集合的索引被封装在每个属性组件轨道中;
[0342]
其中,通过任一个属性组件轨道中封装的索引均能够查找到属性参数集合,或能够查找到属性参数集合被重新组织后形成的数据单元。
[0343]
在一个实施例中,点云媒体采用流化传输方式进行传输;获取单元601在获取点云媒体的媒体文件时,可具体用于:
[0344]
获取点云媒体的传输信令,传输信令中包含流指示信息,流指示信息用于指示参数组件轨道对应的数据流;
[0345]
根据传输信令获取点云媒体的媒体文件。
[0346]
在一个实施例中,传输信令为动态自适应流信令,流指示信息是指组件描述子,组件描述子被设置于参数组件轨道对应的数据流;组件描述子包括组成类型元素及参数类型元素,组成类型元素用于指示在参数组件轨道中的组件的类型;参数类型元素用于指示参数组件轨道中包含的参数集合的类型;
[0347]
若组成类型元素为目标字符,则在参数组件轨道中的组件的类型为参数集合组件。
[0348]
在一个实施例中,处理单元602在按照属性参数集合指示信息,对点云码流进行解码处理以呈现点云媒体时,可具体用于:
[0349]
根据属性参数集合指示信息所指示的封装位置,获取属性参数集合;
[0350]
利用属性参数集合中的参数信息对点云码流中的属性数据进行解码处理,以呈现点云媒体。
[0351]
在本技术实施例中,获取点云媒体的媒体文件,媒体文件包括点云媒体的点云码流及属性参数集合指示信息,该点云码流包含属性参数集合,该属性参数集合中包含点云码流中的属性数据解码所需的参数信息;属性参数集合指示信息用于指示属性参数集合的封装位置;按照属性参数集合指示信息,可以直接获知属性参数集合的封装位置,并可基于该属性参数集合对点云码流进行解码处理以呈现点云媒体,指导了点云媒体的传输、解码和呈现,可减少不必要的编解码依赖,节省传输资源和计算资源。
[0352]
请参见图7,图7是本技术实施例提供的一种点云媒体的数据处理装置的结构示意图,该点云媒体的数据处理装置可以设置于本技术实施例提供的计算机设备中,计算机设备可以是上述方法实施例中提及的内容制作设备。图7所示的点云媒体的数据处理装置可以是运行于计算机设备中的一个计算机程序(包括程序代码),该点云媒体的数据处理装置可以用于执行图5所示的方法实施例中的部分或全部步骤。请参见图7,该点云媒体的数据处理装置可以包括如下单元:
[0353]
获取单元701,用于获取点云媒体;
[0354]
处理单元702,用于对点云媒体进行编码处理,得到点云码流;点云码流包含属性
参数集合,属性参数集合包含点云码流中的属性数据解码所需的参数信息;
[0355]
处理单元702,还用于对点云码流进行封装,得到点云媒体的媒体文件;媒体文件还包含属性参数集合指示信息,属性参数集合指示信息用于指示属性参数集合的封装位置。
[0356]
在一个实施例中,媒体文件包括轨道,点云码流被封装在轨道中,轨道中包含一个或多个样本,一个样本对应点云媒体中的一个点云帧;一个样本被划分为一个或多个子样本,每个子样本包含一种类型的点云数据;
[0357]
媒体文件还包括子样本信息数据盒,属性参数集合封装于子样本信息数据盒中。
[0358]
在一个实施例中,点云码流采用多轨方式被封装至媒体文件中;媒体文件包括参数组件轨道,属性参数集合被独立封装在参数组件轨道中;
[0359]
参数组件轨道中包含一个或多个样本,每个样本对应点云媒体的一个点云帧,每个样本包含对应点云帧的属性数据解码所需的参数信息。
[0360]
在一个实施例中,媒体文件包括几何组件轨道,属性参数集合被封装在几何组件轨道中。
[0361]
在一个实施例中,媒体文件包括一个或多个属性组件轨道,属性参数集合被封装在每个属性组件轨道中;
[0362]
其中,每个属性组件轨道中封装的属性参数集合,是由同一个属性参数集合经过复制得到的。
[0363]
在一个实施例中,媒体文件包括一个或多个属性组件轨道,属性参数集合包含索引,属性参数集合的索引被封装在每个属性组件轨道中;
[0364]
其中,通过任一个属性组件轨道中封装的索引均能够查找到属性参数集合,或能够查找到属性参数集合被重新组织后形成的数据单元。
[0365]
在一个实施例中,处理单元702,还用于:
[0366]
通过传输信令发送点云媒体的媒体文件,传输信令中包含流指示信息,流指示信息用于指示参数组件轨道对应的数据流。
[0367]
在本技术实施例中,获取点云媒体,对点云媒体进行编码处理,得到点云码流;点云码流包含属性参数集合,属性参数集合包含点云码流中的属性数据解码所需的参数信息,对点云码流进行封装,得到点云媒体的媒体文件;媒体文件还包含属性参数集合指示信息,属性参数集合指示信息用于指示属性参数集合的封装位置;在媒体文件中添加该属性参数集合指示信息可以利于媒体处理设备根据该属性参数集合指示信息直接获取属性参数集合,从而指导点云媒体的传输、解码和呈现,减少一定的编解码依赖关系。
[0368]
进一步地,本技术实施例还提供了一种计算机设备的结构示意图,该计算机设备的结构示意图可参见图8;该计算机设备可以是上述媒体处理设备或者内容制作设备;该计算机设备可以包括:处理器801、输入设备802,输出设备803和存储器804。上述处理器801、输入设备802、输出设备803和存储器804通过总线连接。存储器804用于存储计算机程序,计算机程序包括程序指令,处理器801用于执行存储器804存储的程序指令。
[0369]
当计算机设备为上述媒体处理设备时,在本技术实施例中,处理器801通过运行存储器804中的可执行程序代码,执行如下操作:
[0370]
获取点云媒体的媒体文件,媒体文件包括点云媒体的点云码流,点云码流包含属
性参数集合,属性参数集合包含点云码流中的属性数据解码所需的参数信息;媒体文件中还包括属性参数集合指示信息,属性参数集合指示信息用于指示属性参数集合的封装位置;
[0371]
按照属性参数集合指示信息,对点云码流进行解码处理以呈现点云媒体。
[0372]
在一个实施例中,媒体文件包括轨道,轨道中包含一个或多个样本,一个样本对应点云媒体中的一个点云帧;一个样本被划分为一个或多个子样本,每个子样本包含一种类型的点云数据;
[0373]
媒体文件还包括子样本信息数据盒,属性参数集合封装于子样本信息数据盒中。
[0374]
在一个实施例中,属性参数集合指示信息表示为子样本信息数据盒,属性参数集合指示信息还用于指示属性参数集合与点云码流中的属性数据之间的关系;
[0375]
子样本数据盒包括以下至少一个字段:有效载荷类型字段、参考属性信息标志字段、参考属性类型标志字段、参考属性标识字段和参考属性类型字段;
[0376]
有效载荷类型字段用于指示子样本中包含的点云数据类型;若有效载荷类型字段为第一取值,则指示子样本中包含的点云数据的类型为属性参数集合;若有效载荷类型字段为第二取值,则指示子样本中包含的点云数据的类型为几何参数集合,几何参数集合包含几何数据解码所需的参数信息;
[0377]
参考属性信息标志字段用于指示当前属性参数集合对属性数据生效范围;若参考属性信息标志字段为第一预设值,则指示当前属性参数集合仅对当前样本中的特定一组或一种特定类型的属性数据生效;若参考属性信息标志字段为第二预设值,则指示当前属性参数集合对当前样本中的所有属性数据生效;
[0378]
参考属性类型标志字段用于指示当前属性参数集合对属性数据生效的类型;若参考属性类型标志字段为第一数值,则指示当前属性参数集合仅对当前样本中一种特定类型的属性数据生效;若参考属性类型标志字段为第二数值,则指示当前属性参数集合仅对当前样本中特定一组属性数据生效;
[0379]
参考属性标识字段用于指示当前属性参数集合对应的属性数据的标识符;参考属性类型字段用于指示当前属性参数集合对应的属性数据的类型;
[0380]
其中,当前属性参数集合是指正在被使用的属性参数集合,当前样本是指正在被解码的样本。
[0381]
在一个实施例中,点云码流采用多轨方式被封装在媒体文件中;媒体文件包括参数组件轨道,属性参数集合被独立封装在参数组件轨道中;
[0382]
参数组件轨道中包含一个或多个样本,每个样本对应点云媒体的一个点云帧,每个样本包含对应点云帧的属性数据解码所需的参数信息。
[0383]
在一个实施例中,媒体文件包括一个或多个参数组件轨道;当媒体文件仅包括一个参数组件轨道时,点云码流中的属性参数集合被封装至参数组件轨道中;当媒体文件包括多个参数组件轨道时,点云码流中的属性参数集合被封装至一个单独的参数组件轨道中或点云码流中的属性参数集合基于类型被封装至多个参数组件轨道中。
[0384]
在一个实施例中,参数组件轨道中包括轨道数据盒;
[0385]
轨道数据盒中包含轨道参考类型数据盒,轨道参考类型数据盒用于指示参数组件轨道与参数组件轨道中的属性参数集合对应的一个或多个属性组件轨道相关联。
[0386]
在一个实施例中,媒体文件遵循第一编码标准;参数组件轨道包含组件信息数据盒,组件信息数据盒设置于参数组件轨道的头样本入口中;组件信息数据盒包含以下至少一个字段:组件类型字段、头部类型字段、属性头数量字段、参考属性类型标志字段、参考属性标识字段和参考属性类型字段;
[0387]
组件类型字段用于指示参数组件轨道中的组件类型;当组件类型字段被设置为目标预设值时,指示参数组件轨道中的组件类型为参数集合;
[0388]
头部类型字段用于指示参数组件轨道中包含的参数集合类型;若头部类型字段为第一设定值,则指示参数组件轨道中包含的参数集合类型为属性参数集合;若头部类型字段为第二设定值,则指示参数组件轨道中包含的参数集合类型为几何参数集合;若头部类型字段为第三设定值,则指示参数组件轨道中包含的参数集合类型为几何参数集合和属性参数集合;
[0389]
属性头数量字段用于指示参数组件轨道中的样本包含的属性参数集合的数量;其中,样本中包含的属性参数集合的顺序与组件信息数据盒中指示的属性参数集合的标识符或属性参数集合类型的顺序一致;
[0390]
参考属性类型字段用于指示当前属性参数集合对属性数据生效的类型;若参考属性类型标志字段为第一预设值,则表示当前属性参数集合仅对当前样本中一种特定类型的属性数据生效;若参考属性类型标志字段为第二预设值,则表示当前属性参数集合对当前样本中特定一组属性数据生效;
[0391]
参考属性标识字段用于指示当前属性参数集合对应的属性数据的标识符;
[0392]
参考属性类型字段用于指示当前属性参数集合对应的属性数据的类型;
[0393]
其中,当前属性参数集合是指正在被使用的属性参数集合,当前样本是指正在被解码的样本。
[0394]
在一个实施例中,媒体文件遵循第二编码标准;参数组件轨道包含组件信息数据盒和配置数据盒;配置数据盒中包含的设置单元对应的参数集合类型与组件信息数据盒指示的参数集合类型相同;
[0395]
组件信息数据盒包含以下至少一个字段:组件类型字段、参数设置类型数量字段、参数设置类型字段;
[0396]
组件类型字段用于指示参数组件轨道中的组件的类型;若组件类型字段为目标设定值,则指示参数组件轨道中的组件的类型为参数集合;
[0397]
参数设置类型数量字段用于指示参数组件轨道包含的参数集合的数量;
[0398]
参数设置类型字段用于指示参数组件轨道中包含的参数集合的类型;若参数设置类型字段为第一预设值,则表示参数组件轨道中包含的参数集合的类型为属性参数集合;若参数设置类型字段为第二预设值,则表示参数组件轨道中包含的参数集合的类型为几何参数集合;若参数设置类型字段为第三预设值,则表示参数组件轨道中包含的参数集合的类型为序列参数集合。
[0399]
在一个实施例中,媒体文件包括几何组件轨道,属性参数集合被封装在几何组件轨道中。
[0400]
在一个实施例中,几何组件轨道包括组件信息数据盒,属性参数集合指示信息表示为组件信息数据盒;
[0401]
组件信息数据盒包括组件类型字段,组件类型字段用于指示几何组件轨道中的组件的类型;若组件类型字段为第一设定值,则指示几何组件轨道中的组件的类型为几何数据和参数集合,参数集合包含属性参数集合和几何参数集合。
[0402]
在一个实施例中,媒体文件包括一个或多个属性组件轨道,属性参数集合被封装在每个属性组件轨道中;
[0403]
其中,每个属性组件轨道中封装的属性参数集合,是由同一个属性参数集合经过复制得到的。
[0404]
在一个实施例中,媒体文件包括一个或多个属性组件轨道,属性参数集合包含索引,属性参数集合的索引被封装在每个属性组件轨道中;
[0405]
其中,通过任一个属性组件轨道中封装的索引均能够查找到属性参数集合,或能够查找到属性参数集合被重新组织后形成的数据单元。
[0406]
在一个实施例中,点云媒体采用流化传输方式进行传输;处理器801在获取点云媒体的媒体文件时,可具体用于:
[0407]
获取点云媒体的传输信令,传输信令中包含流指示信息,流指示信息用于指示参数组件轨道对应的数据流;
[0408]
根据传输信令获取点云媒体的媒体文件。
[0409]
在一个实施例中,传输信令为动态自适应流信令,流指示信息是指组件描述子,组件描述子被设置于参数组件轨道对应的数据流;组件描述子包括组成类型元素及参数类型元素,组成类型元素用于指示在参数组件轨道中的组件的类型;参数类型元素用于指示参数组件轨道中包含的参数集合的类型;
[0410]
若组成类型元素为目标字符,则在参数组件轨道中的组件的类型为参数集合组件。
[0411]
在一个实施例中,处理器801在按照属性参数集合指示信息,对点云码流进行解码处理以呈现点云媒体时,可具体用于:
[0412]
根据属性参数集合指示信息所指示的封装位置,获取属性参数集合;
[0413]
利用属性参数集合中的参数信息对点云码流中的属性数据进行解码处理,以呈现点云媒体。
[0414]
在本技术实施例中,获取点云媒体的媒体文件,媒体文件包括点云媒体的点云码流及属性参数集合指示信息,该点云码流包含属性参数集合,该属性参数集合中包含点云码流中的属性数据解码所需的参数信息;属性参数集合指示信息用于指示属性参数集合的封装位置;按照属性参数集合指示信息,可以直接获知属性参数集合的封装位置,并可基于该属性参数集合对点云码流进行解码处理以呈现点云媒体,指导了点云媒体的传输、解码和呈现,可减少不必要的编解码依赖,节省传输资源和计算资源。
[0415]
可选地,当计算机设备为上述内容制作设备时,在本技术实施例中,处理器801通过运行存储器804中的可执行程序代码,执行如下操作:
[0416]
获取点云媒体;
[0417]
对点云媒体进行编码处理,得到点云码流;点云码流包含属性参数集合,属性参数集合包含点云码流中的属性数据解码所需的参数信息;
[0418]
对点云码流进行封装,得到点云媒体的媒体文件;媒体文件还包含属性参数集合
指示信息,属性参数集合指示信息用于指示属性参数集合的封装位置。
[0419]
在一个实施例中,媒体文件包括轨道,点云码流被封装在轨道中,轨道中包含一个或多个样本,一个样本对应点云媒体中的一个点云帧;一个样本被划分为一个或多个子样本,每个子样本包含一种类型的点云数据;
[0420]
媒体文件还包括子样本信息数据盒,属性参数集合封装于子样本信息数据盒中。
[0421]
在一个实施例中,点云码流采用多轨方式被封装至媒体文件中;媒体文件包括参数组件轨道,属性参数集合被独立封装在参数组件轨道中;
[0422]
参数组件轨道中包含一个或多个样本,每个样本对应点云媒体的一个点云帧,每个样本包含对应点云帧的属性数据解码所需的参数信息。
[0423]
在一个实施例中,媒体文件包括几何组件轨道,属性参数集合被封装在几何组件轨道中。
[0424]
在一个实施例中,媒体文件包括一个或多个属性组件轨道,属性参数集合被封装在每个属性组件轨道中;
[0425]
其中,每个属性组件轨道中封装的属性参数集合,是由同一个属性参数集合经过复制得到的。
[0426]
在一个实施例中,媒体文件包括一个或多个属性组件轨道,属性参数集合包含索引,属性参数集合的索引被封装在每个属性组件轨道中;
[0427]
其中,通过任一个属性组件轨道中封装的索引均能够查找到属性参数集合,或能够查找到属性参数集合被重新组织后形成的数据单元。
[0428]
在一个实施例中,处理器801还用于:
[0429]
通过传输信令发送点云媒体的媒体文件,传输信令中包含流指示信息,流指示信息用于指示参数组件轨道对应的数据流。
[0430]
在本技术实施例中,获取点云媒体,对点云媒体进行编码处理,得到点云码流;点云码流包含属性参数集合,属性参数集合包含点云码流中的属性数据解码所需的参数信息,对点云码流进行封装,得到点云媒体的媒体文件;媒体文件还包含属性参数集合指示信息,属性参数集合指示信息用于指示属性参数集合的封装位置;在媒体文件中添加该属性参数集合指示信息可以利于媒体处理设备根据该属性参数集合指示信息直接获取属性参数集合,从而指导点云媒体的传输、解码和呈现,减少一定的编解码依赖关系。
[0431]
此外,这里需要指出的是:本技术实施例还提供了一种计算机可读存储介质,且计算机可读存储介质中存储有计算机程序,且该计算机程序包括程序指令,当处理器执行上述程序指令时,能够执行前文图3和图5所对应实施例中的方法,因此,这里将不再进行赘述。对于本技术所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本技术方法实施例的描述。作为示例,程序指令可以被部署在一个计算机设备上,或者在位于一个地点的多个计算机设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算机设备上执行。
[0432]
根据本技术的一个方面,提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备可以执行前文图3和图5所对应实施例中的方法,因此,这里将不再进行赘述。
[0433]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)或随机存储记忆体(random access memory,ram)等。
[0434]
以上所揭露的仅为本技术一种较佳实施例而已,当然不能以此来限定本技术之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本技术权利要求所作的等同变化,仍属于发明所涵盖的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1