CN116781675A - 一种点云媒体的数据处理方法、装置、设备及介质 - Google Patents
一种点云媒体的数据处理方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN116781675A CN116781675A CN202210228012.4A CN202210228012A CN116781675A CN 116781675 A CN116781675 A CN 116781675A CN 202210228012 A CN202210228012 A CN 202210228012A CN 116781675 A CN116781675 A CN 116781675A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- track
- media
- time domain
- hierarchy
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 31
- 238000005538 encapsulation Methods 0.000 claims abstract description 140
- 238000000034 method Methods 0.000 claims abstract description 73
- 238000003860 storage Methods 0.000 claims abstract description 31
- 230000002123 temporal effect Effects 0.000 claims description 108
- 230000006978 adaptation Effects 0.000 claims description 78
- 238000012545 processing Methods 0.000 claims description 71
- 230000005540 biological transmission Effects 0.000 claims description 68
- 230000011664 signaling Effects 0.000 claims description 50
- 238000004806 packaging method and process Methods 0.000 claims description 30
- 238000004590 computer program Methods 0.000 claims description 25
- 239000012634 fragment Substances 0.000 claims description 19
- 230000006835 compression Effects 0.000 claims description 17
- 238000007906 compression Methods 0.000 claims description 17
- 230000003044 adaptive effect Effects 0.000 claims description 13
- 230000000007 visual effect Effects 0.000 claims description 12
- 238000004519 manufacturing process Methods 0.000 description 30
- 238000007654 immersion Methods 0.000 description 23
- 230000008569 process Effects 0.000 description 21
- 238000010586 diagram Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 12
- 238000009877 rendering Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 10
- 230000008901 benefit Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000002595 magnetic resonance imaging Methods 0.000 description 3
- 238000012858 packaging process Methods 0.000 description 3
- 102100029768 Histone-lysine N-methyltransferase SETD1A Human genes 0.000 description 2
- 101000865038 Homo sapiens Histone-lysine N-methyltransferase SETD1A Proteins 0.000 description 2
- 101100287577 Neurospora crassa (strain ATCC 24698 / 74-OR23-1A / CBS 708.71 / DSM 1257 / FGSC 987) gpe-1 gene Proteins 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 2
- 238000002591 computed tomography Methods 0.000 description 2
- 238000011960 computer-aided design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000011521 glass Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 210000000056 organ Anatomy 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000012092 media component Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本申请实施例提供一种点云媒体的数据处理方法、装置、设备及计算机可读存储介质。其中的方法包括:获取点云媒体的点云帧;根据点云帧的时域信息,将点云帧封装到时域层级轨道中,得到点云媒体的媒体文件,时域信息包括时域层级信息,帧率信息;时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据。可见,以时域信息(如时域层级信息,或者帧率信息)为核心对点云媒体进行文件封装,能够丰富点云媒体的封装方式,使得内容消费设备可以根据需求灵活地选择所需的点云媒体的媒体文件进行传输和解码消费。
Description
技术领域
本申请涉及计算机技术领域,具体涉及一种点云(Point Cloud)媒体的数据处理方法、一种点云媒体的数据处理装置、一种点云媒体的数据处理设备及计算机可读存储介质。
背景技术
随着科技技术的不断发展,目前已经能够以较低的成本在较短的时间周期内获得大量精确度较高的点云数据。伴随着大规模的点云数据不断积累,点云数据的高效存储、传输、发布、共享和标准化,成为点云应用研究的热点问题。
目前,点云媒体的封装模式中,已存在多轨道封装模式。在多轨道封装模式下,点云媒体被封装在一个几何组件轨道和一个或多个属性组件轨道中。实践中发现,多轨道封装模式仅支持根据组件的类型来进行轨道划分,封装方式较为单一。
发明内容
本申请实施例提供一种点云媒体的数据处理方法、装置、设备及计算机可读存储介质,能够丰富点云媒体的封装方式。
一方面,本申请实施例提供一种点云媒体的数据处理方法,包括:
获取点云媒体的媒体文件,媒体文件包括时域层级轨道,时域层级轨道是基于时域信息对点云媒体的点云帧进行封装得到的,时域信息包括时域层级信息,帧率信息;时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据;
对媒体文件进行解码以呈现点云媒体。
本申请实施例中,获取点云媒体的媒体文件,媒体文件包括时域层级轨道,时域层级轨道是基于时域信息对点云媒体的点云帧进行封装得到的;时域信息包括时域层级信息,帧率信息;时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据;对媒体文件进行解码以呈现点云媒体。可见,以时域信息(如时域层级信息,或帧率信息)为核心对点云媒体进行文件封装,能够丰富点云媒体的封装方式,内容消费设备可以根据需求灵活地选择所需的点云媒体的媒体文件进行传输和解码消费。
一方面,本申请实施例提供一种点云媒体的数据处理方法,包括:
获取点云媒体的点云帧;
根据点云帧的时域信息,将点云帧封装到时域层级轨道中,得到点云媒体的媒体文件;时域信息包括时域层级信息,帧率信息;时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据。
本申请实施例中,获取点云媒体的点云帧;根据点云帧的时域信息,将点云帧封装到时域层级轨道中,得到点云媒体的媒体文件,时域信息包括时域层级信息,帧率信息;时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据。可见,以时域信息(如时域层级信息,帧率信息)为核心对点云媒体进行文件封装,能够丰富点云媒体的封装方式,使得内容消费设备可以根据需求灵活地选择所需的点云媒体的媒体文件进行传输和解码消费。
一方面,本申请实施例提供一种点云媒体的数据处理装置,包括:
获取单元,用于获取点云媒体的媒体文件,媒体文件包括时域层级轨道,时域层级轨道是基于时域信息对点云媒体的点云帧进行封装得到的,时域信息包括时域层级信息,帧率信息;时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据;
处理单元,用于对媒体文件进行解码以呈现点云媒体。
在一种实施方式中,时域层级轨道的样本入口使用基于几何模型的点云压缩样本入口;且时域层级轨道的样本入口类型为目标类型;
其中,基于几何模型的点云压缩样本入口是基于体积视觉样本入口扩展得到的。
在一种实施方式中,时域层级轨道包括N个样本,N为正整数;
N个样本中每个样本均是点云媒体的点云帧在一个时域层级上的子集。
在一种实施方式中,一个点云帧的完整数据由一个或多个编码内容单元组成,编码内容单元用于存储点云帧的几何编码数据或属性编码数据。
在一种实施方式中,时域层级轨道包含第一轨道及第二轨道;
第一轨道中的样本对应第一时域层级,第二轨道中的样本对应第二时域层级。
在一种实施方式中,第一轨道中的样本的解码时间与第二轨道中的样本的解码时间互不相同。
在一种实施方式中,第一时域层级高于第二时域层级,第一轨道被索引至第二轨道。
在一种实施方式中,媒体文件还包括样本描述数据盒,样本描述数据盒包括样本入口类型的一个或多个类型描述字段,类型描述字段用于指示样本入口类型。
在一种实施方式中,获取单元还用于:
获取点云媒体的传输信令文件,传输信令文件包括至少一个自适应集,至少一个自适应集包括时域层级轨道对应的表示。
在一种实施方式中,获取单元用于,获取点云媒体的媒体文件,具体用于:
基于至少一个自适应集的描述信息,确定呈现点云媒体所需的媒体文件;
通过流化传输方式拉取所确定的点云媒体的媒体文件。
在一种实施方式中,点云媒体包括多个媒体片段;
若时域层级轨道中封装了至少两个媒体片段的点云帧,则至少两个媒体片段中包括初始化媒体片段;
其中,初始化媒体片段包含基于几何模型的点云压缩解码器配置记录。
在一种实施方式中,时域层级轨道包括帧率指示字段,帧率指示字段用于指示时域层级轨道的帧率。
一方面,本申请实施例提供一种点云媒体的数据处理装置,包括:
获取单元,用于获取点云媒体的点云帧;
处理单元,用于根据点云帧的时域信息,将点云帧封装到时域层级轨道中,得到点云媒体的媒体文件;时域信息包括时域层级信息,帧率信息;时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据。
在一种实施方式中,时域层级轨道的数量为M,M个时域层级轨道属于P个时域层级,M为正整数,P为小于等于M的正整数;处理单元还用于:
对媒体文件进行切片得到多个媒体片段;以及,
生成媒体文件的传输信令文件,传输信令文件包括至少一个自适应集,M个时域层级轨道按照时域层级被表示为至少一个自适应集下的P个表示。
在一种实施方式中,媒体文件的封装模式为单轨道封装模式;
传输信令文件包括至少一个自适应集,至少一个自适应集包括时域层级轨道对应的表示和单轨道封装模式下的轨道对应的表示。
在一种实施方式中,时域层级轨道对应的表示携带时域层级相关的描述子;
单轨道封装模式下的轨道对应的表示不携带时域层级相关的描述子。
在一种实施方式中,时域层级轨道对应的表示和单轨道封装模式下的轨道对应的表示均携带封装模式描述子;
时域层级轨道对应的表示携带的封装模式描述子的取值与单轨道封装模式下的轨道对应的表示携带的封装模式描述子的取值不同。
在一种实施方式中,传输信令文件还包括预先选择集合,预先选择集合包括预选元素,预选元素包括预选组件属性和编解码器属性;
预选组件属性用于指示至少一个自适应集中一个或多个表示的标识;
编解码器属性用于指示预选组件属性所指示的表示对应的轨道的样本入口类型。
在一种实施方式中,若预选组件属性所指示的表示对应的轨道的样本入口类型为目标类型,则处理单元用于,生成媒体文件的传输信令文件,具体用于:
将编解码器属性的值配置为目标类型对应的标识。
在一种实施方式中,媒体文件的封装模式为多轨道封装模式;传输信令文件包括至少一个自适应集和预先选择集合,预先选择集合包括预选元素,预选元素包括预选组件属性和编解码器属性;
预选组件属性用于指示至少一个自适应集的标识;
编解码器属性用于指示预选组件属性所指示的自适应集中的轨道的样本入口类型。
在一种实施方式中,若预选组件属性所指示的表示对应的轨道的样本入口类型为目标类型,则处理单元用于,生成媒体文件的传输信令文件,具体用于:
将编解码器属性的值配置为目标类型对应的标识。
相应地,本申请提供了一种计算机设备,该设备包括:
处理器,用于加载并执行计算机程序;
计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,该计算机程序被处理器执行时,实现上述点云媒体的数据处理方法。
相应地,本申请提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,该计算机程序适于由处理器加载并执行上述点云媒体的数据处理方法。
相应地,本申请提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述点云媒体的数据处理方法。
本申请实施例中,获取点云媒体的点云帧;根据点云帧的时域信息,将点云帧封装到时域层级轨道中,得到点云媒体的媒体文件,时域信息包括时域层级信息,帧率信息;时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据。可见,以时域信息(如时域层级信息,或者帧率信息)为核心对点云媒体进行文件封装,能够丰富点云媒体的封装方式,使得内容消费设备可以根据需求灵活地选择所需的点云媒体的媒体文件进行传输和解码消费。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a为本申请实施例提供的一种6DoF的示意图;
图1b为本申请实施例提供的一种3DoF的示意图;
图1c为本申请实施例提供的一种3DoF+的示意图;
图1d为本申请实施例提供的一种点云媒体的数据处理架构图;
图1e为本申请实施例提供的一种样本的结构示意图;
图1f为本申请实施例提供的一种多轨道容器示意图;
图2为本申请实施例提供的一种点云媒体的数据处理方法的流程图;
图3为本申请实施例提供的另一种点云媒体的数据处理方法的流程图;
图4为本申请实施例提供的一种点云媒体的数据处理装置的结构示意图;
图5为本申请实施例提供的另一种点云媒体的数据处理装置的结构示意图;
图6为本申请实施例提供的一种内容消费设备的结构示意图;
图7为本申请实施例提供的一种内容制作设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面对本申请实施例涉及的一些技术术语进行介绍:
一、沉浸媒体:
沉浸媒体是指能够提供沉浸式的媒体内容,使沉浸于该媒体内容中的观看者能够获得现实世界中视觉、听觉等感官体验的媒体文件。沉浸式媒体按照观看者在消费媒体内容时的自由度,可以分为:6DoF(Degree of Freedom)沉浸媒体,3DoF沉浸媒体,3DoF+沉浸媒体。
二、点云:
所谓点云是指空间中一组无规则分布的、表达三维物体或场景的空间结构及表面属性的离散点集。点云中的每个点至少具有三维位置信息,根据应用场景的不同,还可能具有色彩、材质或其他信息。通常,点云中的每个点都具有相同数量的附加属性。
三、点云媒体:
点云媒体一种典型的6DoF沉浸媒体。点云媒体可以灵活方便地表达三维物体或场景的空间结构及表面属性,因此被广泛应用在虚拟现实(Virtual Reality,VR)游戏、计算机辅助设计(Computer Aided Design,CAD)、地理信息系统(Geography InformationSystem,GIS)、自动导航系统(Autonomous Navigation System,ANS)、数字文化遗产、自由视点广播、三维沉浸远程呈现、生物组织器官三维重建等项目中。
四、轨道(Track):
轨道是媒体文件封装过程中的媒体数据集合,一个媒体文件可由一个或多个轨道组成,例如常见的:一个媒体文件可以包含一个视频轨道、一个音频轨道及一个字幕轨道。
五、样本(Sample):
样本是媒体文件封装过程中的封装单位,一个轨道由很多个样本组成,例如:一个视频轨道可以由很多个样本组成,一个样本通常为一个视频帧。
六、ISOBMFF(ISO Based Media File Format,基于ISO标准的媒体文件格式):是媒体文件的封装标准,较为典型的ISOBMFF文件即为MP4文件。
七、DASH(Dynamic Adaptive Streaming over HTTP,基于HTTP的动态自适应流):是一种自适应比特率技术,使高质量流媒体可以通过传统的HTTP网络服务器在互联网传递。
八、MPD(Media Presentation Description,DASH中的媒体演示描述信令),用于描述媒体文件中的媒体片段信息。
九、表示(Representation):是指DASH中一个或多个媒体成分的组合,比如某种分辨率的视频文件可以看做一个Representation;在本申请中,某种时域层级的视频文件可以看做一个Representation。
十、自适应集(Adaptation Sets):是指DASH中一个或多个视频流的集合,一个Adaptation Sets中可以包含多个Representation。
本申请实施例涉及沉浸媒体的数据处理技术,下面将对沉浸媒体的数据处理过程中的一些概念进行介绍,特别说明的是,本申请后续实施例中均以沉浸媒体为自由视角视频为例进行说明。
图1a为本申请实施例提供的一种6DoF的示意图;6DoF分为窗口6DoF、全方向6DoF和6DoF,其中,窗口6DoF是指沉浸媒体的观看者在X轴、Y轴的旋转移动受限,以及在Z轴的平移受限;例如,沉浸媒体的观看者不能够看到窗户框架外的景象,以及沉浸媒体的观看者无法穿过窗户。全方向6DoF是指沉浸媒体的观看者在X轴、Y轴和Z轴的旋转移动受限,例如,沉浸媒体的观看者在受限的移动区域中不能自由的穿过三维的360度VR内容。6DoF是指沉浸媒体的观看者可以沿着X轴、Y轴、Z轴自由平移,例如,沉浸媒体的观看者可以在三维的360度VR内容中自由的走动。与6DoF相类似的,还有3DoF和3DoF+制作技术。图1b为本申请实施例提供的一种3DoF的示意图;如图1b所示,3DoF是指沉浸媒体的观看者在一个三维空间的中心点固定,沉浸媒体的观看者头部沿着X轴、Y轴和Z轴旋转来观看媒体内容提供的画面。图1c为本申请实施例提供的一种3DoF+的示意图,如图1c所示,3DoF+是指当沉浸媒体提供的虚拟场景具有一定的深度信息,沉浸媒体的观看者头部可以基于3DoF在一个有限的空间内移动来观看媒体内容提供的画面。
随着科技技术的不断发展,目前已经能够以较低的成本在较短的时间周期内获得大量精确度较高的点云数据。点云数据的获取途径包括:计算机生成、三维(3-Dimension,3D)激光扫描、3D摄影测量等。具体来说,点云数据可以是通过采集设备(一组摄像机或具有多个镜头和传感器的摄像机设备)对现实世界的视觉场景进行采集得到的,通过3D激光扫描可以获得静态现实世界三维物体或场景的点云,每秒可以获取百万级点云数据;通过3D摄影可以获得动态现实世界三维物体或场景的点云,每秒可以获取千万级点云数据;此外,在医学领域,可以通过磁共振成像(Magnetic Resonance Imaging,MRI)、电子计算机断层扫描(Computed Tomography,CT)、电磁定位信息获得生物组织器官的点云数据。又如,点云数据还可以由计算机根据虚拟三维物体及场景直接生成,如计算机可以生成虚拟三维物体及场景的点云数据。伴随着大规模的点云数据不断积累,点云数据的高效存储、传输、发布、共享和标准化,成为点云应用的关键。
图1d为本申请实施例提供的一种点云媒体的数据处理架构图。如图1d所示,在内容制作设备端的数据处理过程主要包括:(1)点云数据的媒体内容的获取过程;(2)点云数据的编码及文件封装的过程。在内容消费设备端的数据处理过程主要包括:(3)点云数据的文件解封装及解码的过程;(4)点云数据的渲染过程。另外,内容制作设备与内容消费设备之间涉及点云媒体的传输过程,该传输过程可以基于各种传输协议来进行,此处的传输协议可包括但不限于:DASH(Dynamic Adaptive Streaming over HTTP,动态自适应流媒体传输)协议、HLS(HTTP Live Streaming,动态码率自适应传输)协议、SMTP(Smart MediaTransportProtocol,智能媒体传输协议)、TCP(Transmission Control Protocol,传输控制协议)等。
下面对点云媒体的数据处理过程进行详细描述:
(1)获取点云媒体的媒体内容。
从点云媒体的媒体内容的获取方式看,可以分为通过捕获设备采集现实世界的声音-视觉场景获得的以及通过计算机生成的两种方式。在一种实现中,捕获设备可以是指设于内容制作设备中的硬件组件,例如捕获设备是指终端的麦克风、摄像头、传感器等。另一种实现中,该捕获设备也可以是与内容制作设备相连接的硬件装置,例如与服务器相连接摄像头;用于为内容制作设备提供点云数据的媒体内容的获取服务。该捕获设备可以包括但不限于:音频设备、摄像设备及传感设备。其中,音频设备可以包括音频传感器、麦克风等。摄像设备可以包括普通摄像头、立体摄像头、光场摄像头等。传感设备可以包括激光设备、雷达设备等。捕获设备的数量可以为多个,这些捕获设备被部署在现实空间中的一些特定位置以同时捕获该空间内不同角度的音频内容和视频内容,捕获的音频内容和视频内容在时间和空间上均保持同步。由于获取的方式不同,不同点云数据的媒体内容对应的压缩编码方式也可能有所区别。
(2)点云媒体的媒体内容的编码及文件封装的过程。
目前,通常采用基于几何的点云压缩(Geometry-based point cloudcompression,GPCC)编码方式对获取的点云数据进行编码处理,得到基于几何的点云压缩比特流(包括编码的几何比特流和属性比特流)。基于几何的点云压缩比特流的封装模式包括单轨道封装模式和多轨道封装模式。
单轨道封装模式是指以单一轨道的形式对点云码流进行封装,在单轨道封装模式下,一个样本中会包含一个或多个编码内容单元(比如一个几何编码内容单元和多个属性编码内容单元),单轨道封装模式的好处在于:在点云码流的基础上,无需过多的处理即可得到一个单轨道封装的点云文件。图1e为本申请实施例提供的一种样本的结构示意图,如图1e所示,在单轨道封装模式下,参数集、几何信息和属性信息被封装在一个样本中。
多轨道封装模式是指以多个轨道的形式对点云码流进行封装,在多轨道封装模式下,每个轨道包含点云码流中的一个组件,即一个几何组件轨道和一个或多个属性组件轨道,多轨道封装的好处在于:将不同的组件分别封装,有利于客户端根据自身需求选择所需要的组件进行传输和解码消费。图1f为本申请实施例提供的一种多轨道容器示意图,如图1f所示,在轨道1中包含编码的几何信息比特流,不包含编码的属性信息比特流;在轨道2中包含编码的属性信息比特流,不包含编码的几何信息比特流。
(3)点云媒体的文件解封装及解码的过程;
内容消费设备可以通过内容制作设备获得点云数据的媒体文件资源和相应的媒体呈现描述信息。点云数据的媒体文件资源和媒体呈现描述信息通过传输机制(如DASH、SMT)由内容制作设备传输给内容消费设备。内容消费设备端的文件解封装的过程与内容制作设备端的文件封装过程是相逆的,内容消费设备按照点云媒体的文件格式要求对媒体文件资源进行解封装,得到编码比特流(GPCC比特流或VPCC比特流)。内容消费设备端的解码过程与内容制作设备端的编码过程是相逆的,内容消费设备对编码比特流进行解码,还原出点云数据。
(4)点云媒体的渲染过程。
内容消费设备根据媒体呈现描述信息中与渲染、视窗相关的元数据对GPCC比特流解码得到的点云数据进行渲染,得到点云媒体的点云帧,并根据点云帧的呈现时间呈现点云媒体。
在一个实施例中,内容制作设备端:首先通过采集设备对真实世界的视觉场景进行采样,得到与真实世界的视觉场景对应的点云数据;然后通过基于几何的点云压缩(Geometry-based point cloud compression,GPCC)对获取的点云数据进行编码处理,得到GPCC比特流(包括编码的几何比特流和属性比特流);接着对GPCC比特流进行封装得到点云数据对应的媒体文件(即点云媒体),具体地,内容制作设备根据特定媒体容器文件格式,将一个或多个编码比特流合成为用于文件回放的媒体文件,或用于流式传输的初始化片段和媒体片段的序列;其中,媒体容器文件格式是指在国际标准化组织(InternationalOrganization for Standardization,ISO)/国际电工委员会(InternationalElectrotechnical Commission,IEC)14496-12中规定的ISO基本媒体文件格式。在一种实施方式中,内容制作设备还将元数据封装到媒体文件或初始化/媒体片段的序列中,并通过传输机制(如动态自适应流媒体传输接口)将初始化/媒体片段的序列传送给内容消费设备。
在内容消费设备端:首先接收内容制作设备发送的点云媒体文件,包括:用于文件回放的媒体文件,或用于流式传输的初始化片段和媒体片段的序列;然后对点云媒体文件进行解封装处理,得到编码的GPCC比特流;接着解析编码的GPCC比特流(即对编码的GPCC比特流进行解码处理,得到点云数据);在具体实现中,内容消费设备基于当前对象的观看位置/观看方向确定呈现点云媒体所需的媒体文件,或者媒体片段序列;并对呈现点云媒体所需的媒体文件,或者媒体片段序列进行解码处理,得到呈现所需的点云数据。最后基于当前对象的观看(视窗)方向,对解码后的点云数据进行渲染,得到点云媒体的点云帧,并按照点云帧的呈现时间在内容消费设备携带的头戴式显示器或任何其他显示设备的屏幕上呈现点云媒体。需要说明的是,当前对象的观看位置/观看方向由头部追踪以及可能还有视觉追踪功能确定。除了通过渲染器用来渲染当前对象的观看位置/观看方向的点云数据外,还可以通过音频解码器来对当前对象的观看(视窗)方向的音频进行解码优化。
其中,内容制作设备和内容消费设备可以共同组成点云媒体系统。内容制作设备可以是指点云媒体的提供者(例如点云媒体的内容制作者)所使用的计算机设备,该计算机设备可以是终端(如PC(Personal Computer,个人计算机)、智能移动设备(如智能手机)等)或服务器;其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。内容消费设备可以是指点云媒体的使用者(例如点云媒体的观看者)所使用的计算机设备,该计算机设备可以是终端(如PC(Personal Computer,个人计算机)、智能移动设备(如智能手机)、VR设备(如VR头盔、VR眼镜等)、智能家电、车载终端、飞行器等)。
可以理解的是,本申请涉及点云媒体的数据处理技术可以依托于云技术进行实现;例如,将云服务器作为内容制作设备。云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
由上述点云媒体的数据处理过程可知,多轨道封装模式仅支持根据组件的类型来进行轨道划分。在很多应用中,比如一个几何组件轨道,一个属性(颜色)组件轨道的场景,客户端在消费时必须同时获得几何组件轨道和属性轨道,在这种情况下,多轨道封装的优势难以得到体现。
基于此,本申请提出一种点云媒体的数据处理方法,以时域信息(如时域层级信息,帧率信息)为核心对点云媒体进行文件封装,得到时域层级轨道,丰富了点云媒体的封装方式,从而使得客户端根据需求灵活地选择最合适的点云文件进行传输和解码消费。其中,时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据;时域层级轨道的样本入口使用基于几何模型的点云压缩(GPCCSampleEntry)样本入口。基于几何模型的点云压缩(GPCCSampleEntry)样本入口的语法可参见表1:
表1
由表1可见,且时域层级轨道的样本入口类型为目标类型,该目标类型的标识可以表示为‘agpl’;也就是说,‘agpl’类型的样本入口对应的轨道即为时域层级轨道。基于几何模型的点云压缩样本入口是基于体积视觉(VolumetricVisualSampleEntry)样本入口扩展得到的。基于几何模型的点云压缩样本入口对应的GPCC解码器配置信息由基于几何模型的点云压缩配置数据盒(GPCCConfigurationBox)中的config指示。
在一种实现方式中,时域层级轨道的样本入口类型可以由样本描述数据盒(SampleDescriptionBox)指示,样本描述数据盒包括样本入口类型的一个或多个类型描述字段,类型描述字段用于指示样本入口类型,样本入口类型可以包括:‘gpll’,‘gplg’和‘agpl’,样本描述数据盒的强制性为条件强制。
‘agpl’类型的样本入口对应的轨道(即时域层级轨道)可以包括N个样本,N为正整数。在时域层级轨道中,每个样本包含至少一个完整的点云帧(即每个样本包含至少一个点云帧的全部组件数据);点云帧的组件数据被存储在样本的一个或多个编码内容单元中,点云帧的组件数据包括以下至少一项:几何编码数据,属性编码数据;例如,一个样本包含一个几何编码内容单元和多个属性编码内容单元。
在‘agpl’类型的样本入口对应的轨道(即时域层级轨道)中,每个样本均是点云媒体的点云帧在一个时域层级上的子集。具体来说,点云媒体可以基于时域层级划分为多个点云帧,这些点云帧被编码为GPCC码流,时域层级轨道中的样本为GPCC码流中全部点云帧在时域上的一个子集。
在一种实施方式中,点云媒体对应的GPCC码流可以被封装在多个‘agpl’类型的样本入口对应的轨道(即时域层级轨道)中,不同时域层级轨道中的样本在解码时间(或呈现时间)上互不重叠;例如,若时域层级轨道1中样本的解码时间为t1,呈现时间为t2,时域层级轨道2中样本的解码时间为t3,呈现时间为t4;则t1≠t3,t2≠t4。
此外,在时域层级轨道中,样本可以被分配不同的时域层级标识符(即将不同的样本划分为不同的时域层级);例如,样本1的时域层级标识符为0,样本2的时域层级标识符为1。在时域层级轨道中,样本可以对应特定的帧率(如30fps)。时域层级轨道中,样本的具体封装方式可参考图1e中的样本封装方式,在此不再赘述。可选地,若时域层级轨道1的时域层级高于时域层级轨道2的时域层级,则时域层级轨道1被索引至时域层级轨道2。
相应地,在点云媒体对应的传输信令文件中,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)在DASH中被表示为同一个自适应集下的一个或多个表示。
在一种实施方式中,点云媒体的媒体文件可以被切分为多个媒体片段,这些媒体片段的点云码流按照时域层级被封装在一个或多个时域层级轨道中,若一个时域层级轨道中封装了至少两个媒体片段,则这至少两个媒体片段中包含一个初始媒体片段,初始媒体片段中包含基于几何模型的点云压缩解码器配置记录。
在一个实施例中,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示可以与单轨道封装模式下的轨道对应的表示位于同一个自适应集中;例如,自适应集可以包括表示1和表示2,表示1为‘agpl’类型的样本入口对应的轨道1的表示,表示2为单轨道封装模式下的轨道的表示。在单轨道封装模式下,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示需与单轨道封装模式下的轨道对应的表示进行区分。可选地,存在三种方案:
1、利用时域层级相关的描述子,对‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示需与单轨道封装模式下的轨道对应的表示进行区分。‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示携带时域层级相关的描述子;单轨道封装模式下的轨道对应的表示不携带时域层级相关的描述子。时域层级相关的描述子的语法如表2所示:
表2
由表2可知,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示与单轨道封装模式下的轨道对应的表示,可以通过时域层级相关的描述子gpcc:@temporal_level_Ids进行区分。具体来说,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示携带时域层级相关的描述子gpcc:@temporal_level_Ids;单轨道封装模式下的轨道对应的表示不携带时域层级相关的描述子gpcc:@temporal_level_Ids。
2、通过定义新的封装模式描述子,对‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示需与单轨道封装模式下的轨道对应的表示进行区分。‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示,以及单轨道封装模式下的轨道对应的表示均携带封装模式描述子,其模式字段(mode)对应不同的取值。封装模式描述子的语法如表3所示:
表3
由表3可知,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示与单轨道封装模式下的轨道对应的表示,可以通过封装模式描述子gpcc:@mode进行区分。具体来说,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示携带的封装模式描述子gpcc:@mod的取值,与单轨道封装模式下的轨道对应的表示携带的封装模式描述子gpcc:@mod的取值不同;例如,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示携带的封装模式描述子gpcc:@mod的取值为‘agpl’,单轨道封装模式下的轨道对应的表示携带的封装模式描述子gpcc:@mod的取值‘gpel’。
3、通过定义预先选择集合,对‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示需与单轨道封装模式下的轨道对应的表示进行区分。预先选择集合可以用于指示‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示。具体地,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示可以由MPD文件中的预选(Preselection)元素定义。Preselection元素中预选组件(@preselectionComponents)属性用于指示自适应集中一个或多个表示的标识符。Preselection元素中编解码器(@codecs)属性用于指示预选组件(@preselectionComponents)属性指示的一个或多个表示对应的轨道的样本入口类型。当Preselection元素中编解码器(@codecs)属性取值为‘agpl’时,表示该预选择集合中预选组件(@preselectionComponents)属性指示的一个或多个表示均为‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示。
在另一个实施例中,在多轨道封装模式下,样本入口类型不同的轨道可以封装在不同的自适应集中,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)可以单独存在于一个自适应集中。在此情况下,通过定义预先选择集合,对‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示需与单轨道封装模式下的轨道对应的表示进行区分。预先选择集合可以用于指示‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示。具体地,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示可以由MPD文件中的预选(Preselection)元素定义。预选(Preselection)元素包括预选组件(@preselectionComponents)属性和编解码器(@codecs)属性,Preselection元素中预选组件(@preselectionComponents)属性可以指示一个或多个自适应集的标识符。Preselection元素中编解码器(@codecs)属性用于指示预选组件属性指示的一个或多个自适应集中的轨道的样本入口类型。当Preselection元素中编解码器(@codecs)属性取值为‘agpl’时,表示该预选择集合中预选组件(@preselectionComponents)属性指示的自适应集中均为‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示;也就是说,预选择集合中预选组件(@preselectionComponents)属性指示的自适应集,为‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的自适应集。
本申请实施例中,获取点云媒体的点云帧;根据点云帧的时域信息,将点云帧封装到时域层级轨道中,得到点云媒体的媒体文件,时域信息包括时域层级信息,帧率信息;时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据。可见,以时域信息(如时域层级信息,或者帧率信息)为核心对点云媒体进行文件封装,能够丰富点云媒体的封装方式,使得内容消费设备可以根据需求灵活地选择所需的点云媒体的媒体文件进行传输和解码消费。
图2为本申请实施例提供的一种点云媒体的数据处理方法的流程图;该方法可由点云媒体系统中的内容消费设备来执行,该方法包括以下步骤S201和步骤S202:
S201、获取点云媒体的媒体文件。
媒体文件包括时域层级轨道,时域层级轨道是基于时域信息对点云媒体的点云帧进行封装得到的,时域信息包括时域层级信息,帧率信息。时域层级轨道的样本入口类型为‘agpl’类型,且时域层级轨道中任一个样本均包含点云媒体的至少一个点云帧的完整数据,即时域层级轨道中任一个样本包含至少一个点云帧的全部组件数据(点云帧的组件数据包括以下至少一项:几何编码数据,属性编码数据;例如,一个样本包含一个几何编码内容单元和多个属性编码内容单元);一个点云帧的完整数据由一个或多个编码内容单元组成,编码内容单元用于存储点云帧的几何编码数据或属性编码数据。
在一种实施方式中,时域层级轨道是基于时域层级信息对点云媒体的点云帧对应的点云码流进行封装得到的;在另一种实施方式中,时域层级轨道是基于帧率信息对点云媒体的点云帧对应的点云码流进行封装得到的。媒体文件还可以包括样本描述数据盒(SampleDescriptionBox),样本描述数据盒包括样本入口类型的一个或多个类型描述字段,类型描述字段用于指示样本入口类型,样本入口类型可以包括:‘gpll’,‘gplg’和‘agpl’,样本描述数据盒的强制性为条件强制。
具体地,时域层级轨道的样本入口可以使用基于几何模型的点云压缩样本入口;且时域层级轨道的样本入口类型为目标类型(目标类型具体可以表示为‘agpl’类型);其中,基于几何模型的点云压缩样本入口是基于体积视觉样本入口扩展得到的。
‘agpl’类型的样本入口对应的轨道(即时域层级轨道)可以包括N个样本,N为正整数;每个样本均是点云媒体的点云帧在一个时域层级上的子集。具体来说,点云媒体可以基于时域层级划分为多个点云帧,这些点云帧被编码为GPCC码流,时域层级轨道中的样本为GPCC码流中全部点云帧在时域上的一个子集。
在一种实现方式中,时域层级轨道包含第一轨道及第二轨道;第一轨道中的样本对应第一时域层级,第二轨道中的样本对应第二时域层级。第一时域层级和第二时域层级为两个不同的时域层级,且第一轨道中的样本的解码时间与第二轨道中的样本的解码时间(或呈现时间)互不相同;也就是说,不同时域层级轨道中的样本在解码时间或呈现时间上互不重叠;例如,若时域层级轨道1中样本的解码时间为t1,呈现时间为t2,时域层级轨道2中样本的解码时间为t3,呈现时间为t4;则t1≠t3,t2≠t4。可选地,若第一时域层级高于第二时域层级,则第一轨道被索引至第二轨道。
在一个实施例中,点云媒体的媒体文件是内容消费设备根据对象的需求(如对象设置的点云媒体的呈现帧率),或者自身解码能力从本地存储的点云媒体的完整文件中获取的。
在另一个实施例中,内容消费设备获取点云媒体的传输信令文件,并根据传输信令文件中的描述信息,以及对象的需求(如对象设置的点云媒体的呈现帧率),或者自身解码能力,或者当前网络条件(如网络传输速度),确定呈现点云媒体所需的媒体文件,并通过流化传输方式拉取所确定的点云媒体的媒体文件。
在一种实现方式中,媒体文件的封装模式为单轨道封装模式,点云媒体的传输信令文件包括至少一个自适应集,该自适应集中可以包括‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示,以及单轨道封装模式下的轨道对应的表示。也就是说,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示可以与单轨道封装模式下的轨道对应的表示位于同一个自适应集中。
在单轨道封装模式下,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示需与单轨道封装模式下的轨道对应的表示进行区分。可选地,存在三种方案:
(1)利用时域层级相关的描述子,对‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示需与单轨道封装模式下的轨道对应的表示进行区分。在此情况下,时域层级轨道对应的表示携带时域层级相关的描述子;单轨道封装模式下的轨道对应的表示不携带时域层级相关的描述子。时域层级相关的描述子的语法可参见上述表2,在此不再赘述。
(2)通过定义新的封装模式描述子,对‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示需与单轨道封装模式下的轨道对应的表示进行区分。在此情况下,时域层级轨道对应的表示和单轨道封装模式下的轨道对应的表示均携带封装模式描述子;时域层级轨道对应的表示携带的封装模式描述子的取值与单轨道封装模式下的轨道对应的表示携带的封装模式描述子的取值不同;例如,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示携带的封装模式描述子gpcc:@mod的取值为‘agpl’,单轨道封装模式下的轨道对应的表示携带的封装模式描述子gpcc:@mod的取值‘gpel’。封装模式描述子的语法可参见上述表3,在此不再赘述。
(3)通过定义预先选择集合,对‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示需与单轨道封装模式下的轨道对应的表示进行区分。在此情况下,传输信令文件还包括预先选择集合,预先选择集合包括预选(Preselection)元素,预选(Preselection)元素包括预选组件(@preselectionComponents)属性和编解码器(@codecs)属性,预选组件属性用于指示自适应集中一个或多个轨道对应的表示的标识,编解码器属性用于指示预选组件属性指示的一个或多个轨道对应的表示对应的轨道的样本入口类型。当Preselection元素中编解码器(@codecs)属性取值为‘agpl’时,表示该预选择集合中预选组件(@preselectionComponents)属性指示的一个或多个表示对应的轨道的样本入口类型均为‘agpl’类型,即预选择集合中预选组件(@preselectionComponents)属性指示的一个或多个表示对应的轨道均为时域层级轨道。
在另一种实现方式中,媒体文件的封装模式为多轨道封装模式,样本入口类型不同的轨道可以封装在不同的自适应集中,此时,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)可以单独存在于一个自适应集中。在此情况下,通过定义预先选择集合,对‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示需与单轨道封装模式下的轨道对应的表示进行区分。预先选择集合可以用于指示‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示。具体地,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示可以由MPD文件中的预选(Preselection)元素定义。预选(Preselection)元素包括预选组件(@preselectionComponents)属性和编解码器(@codecs)属性,Preselection元素中预选组件(@preselectionComponents)属性用于指示一个或多个自适应集的标识符。Preselection元素中编解码器(@codecs)属性用于指示预选组件属性指示的一个或多个自适应集的类型。当Preselection元素中编解码器(@codecs)属性取值为‘agpl’时,表示该预选择集合中预选组件(@preselectionComponents)属性指示的自适应集中均为‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示;也就是说,预选择集合中预选组件(@preselectionComponents)属性指示的自适应集,为‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的自适应集。
在再一种实现方式中,点云媒体的媒体文件可以被切分为多个媒体片段(每个媒体片段包含至少一个点云帧),这些媒体片段的点云码流按照时域层级被封装在一个或多个时域层级轨道中,若一个时域层级轨道中封装了至少两个媒体片段,则这至少两个媒体片段中包含一个初始媒体片段,该初始媒体片段中包含基于几何模型的点云压缩解码器配置记录(GPCCDecoderConfigurationRecord)。
可选地,时域层级轨道包括帧率指示字段(frame_rate),该帧率指示字段用于指示时域层级轨道的帧率;例如,当时域层级轨道的帧率为30fps时,frame_rate=30fps。
S202、对媒体文件进行解码以呈现点云媒体。
内容消费设备端的解码过程与内容制作设备端的编码过程是相逆的,内容消费设备对编码比特流进行解码,还原出点云数据。并根据媒体呈现描述信息中与渲染、视窗相关的元数据对得到的点云数据进行渲染,得到点云媒体的点云帧,并根据点云帧的呈现时间呈现点云媒体。内容消费设备对媒体文件进行解码以呈现点云媒体的具体实施方式可参见图1d中点云媒体的解码和呈现的实施方式,在此不再赘述。
本申请实施例中,获取点云媒体的媒体文件,媒体文件包括时域层级轨道,时域层级轨道是基于时域信息对点云媒体的点云帧进行封装得到的;时域信息包括时域层级信息,帧率信息;时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据;对媒体文件进行解码以呈现点云媒体。可见,以时域信息(如时域层级信息,或帧率信息)为核心对点云媒体进行文件封装,能够丰富点云媒体的封装方式,内容消费设备可以根据需求灵活地选择所需的点云媒体的媒体文件进行传输和解码消费。
图3为本申请实施例提供的另一种点云媒体的数据处理方法的流程图;该方法可由点云媒体系统中内容制作设备来执行,该方法包括以下步骤S301和步骤S302:
S301、获取点云媒体的点云帧。
在一种实施方式中,内容制作设备获取点云媒体的媒体内容,具体的获取方式可参见图1d中获取点云媒体的媒体内容的实施方式,在此不再赘述。在获取到点云媒体的媒体内容后,内容制作设备可以基于时域层级(或者帧率信息)对点云媒体的媒体内容进行划分,得到点云媒体的点云帧。
S302、根据点云帧的时域信息,将点云帧封装到时域层级轨道中,得到点云媒体的媒体文件。
时域信息包括时域层级信息,帧率信息。时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据,即时域层级轨道中任一个样本包含至少一个点云帧的全部组件数据(点云帧的组件数据包括以下至少一项:几何编码数据,属性编码数据;例如,一个样本包含一个几何编码内容单元和多个属性编码内容单元);一个点云帧的完整数据由一个或多个编码内容单元组成,编码内容单元用于存储点云帧的几何编码数据或属性编码数据。
在一个实施例中,内容制作设备根据点云帧的时域信息,将点云帧封装到时域层级轨道中是指:内容制作设备根据点云帧的时域层级信息,将点云帧对应的点云码流封装到时域层级轨道中;例如,将不同时域层级的点云帧对应的点云码流封装到不同的时域层级轨道中。具体的封装方式可以参考图1d中文件封装过程,在此不再赘述。在另一个实施例中,内容制作设备根据点云帧的时域信息,将点云帧封装到时域层级轨道中是指:内容制作设备根据点云帧的帧率信息,将点云帧对应的点云码流封装到时域层级轨道中。
在一种实施方式中,时域层级轨道的样本入口可以使用基于几何模型的点云压缩样本入口;且时域层级轨道的样本入口类型为目标类型(目标类型具体可以表示为‘agpl’类型);其中,基于几何模型的点云压缩样本入口是基于体积视觉样本入口扩展得到的。
‘agpl’类型的样本入口对应的轨道(即时域层级轨道)可以包括N个样本,N为正整数;每个样本均是点云媒体的点云帧在一个时域层级上的子集。具体来说,点云媒体可以基于时域层级划分为多个点云帧,这些点云帧被编码为GPCC码流,时域层级轨道中的样本为GPCC码流中全部点云帧在时域上的一个子集。
在一种实现方式中,时域层级轨道包含第一轨道及第二轨道;第一轨道中的样本对应第一时域层级,第二轨道中的样本对应第二时域层级。第一时域层级和第二时域层级为两个不同的时域层级,且第一轨道中的样本的解码时间与第二轨道中的样本的解码时间(或呈现时间)互不相同;也就是说,不同时域层级轨道中的样本在解码时间或呈现时间上互不重叠;例如,若时域层级轨道1中样本的解码时间为t1,呈现时间为t2,时域层级轨道2中样本的解码时间为t3,呈现时间为t4;则t1≠t3,t2≠t4。可选地,若第一时域层级高于第二时域层级,则第一轨道被索引至第二轨道。
可选地,时域层级轨道包括帧率指示字段(frame_rate),该帧率指示字段用于指示时域层级轨道的帧率;例如,当时域层级轨道的帧率为30fps时,frame_rate=30fps。
在另一种实施方式中,时域层级轨道的数量为M,M个时域层级轨道属于P个时域层级,M为正整数,P为小于等于M的正整数。内容制作设备支持流式传输,在得到点云媒体的媒体文件后,内容制作设备可以对点云媒体的媒体文件进行切片得到多个媒体片段;以及,生成媒体文件的传输信令文件,传输信令文件包括至少一个自适应集,M个时域层级轨道按照时域层级被表示为至少一个自适应集下的P个表示;例如,设3个时域层级轨道属于3个不同的时域层级,则这3个时域层级轨道可以被表示为一个自适应集下的3个表示。
在一种实现方式中,媒体文件的封装模式为单轨道封装模式,点云媒体的传输信令文件包括至少一个自适应集,该自适应集中可以包括‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示,以及单轨道封装模式下的轨道对应的表示。也就是说,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示可以与单轨道封装模式下的轨道对应的表示位于同一个自适应集中。
在单轨道封装模式下,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示需与单轨道封装模式下的轨道对应的表示进行区分。可选地,存在三种方案:
(1)利用时域层级相关的描述子,对‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示需与单轨道封装模式下的轨道对应的表示进行区分。在此情况下,时域层级轨道对应的表示携带时域层级相关的描述子;单轨道封装模式下的轨道对应的表示不携带时域层级相关的描述子。时域层级相关的描述子的语法可参见上述表2,在此不再赘述。
(2)通过定义新的封装模式描述子,对‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示需与单轨道封装模式下的轨道对应的表示进行区分。在此情况下,时域层级轨道对应的表示和单轨道封装模式下的轨道对应的表示均携带封装模式描述子;时域层级轨道对应的表示携带的封装模式描述子的取值与单轨道封装模式下的轨道对应的表示携带的封装模式描述子的取值不同;例如,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示携带的封装模式描述子gpcc:@mod的取值为‘agpl’,单轨道封装模式下的轨道对应的表示携带的封装模式描述子gpcc:@mod的取值‘gpel’。封装模式描述子的语法可参见上述表3,在此不再赘述。
(3)通过定义预先选择集合,对‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示需与单轨道封装模式下的轨道对应的表示进行区分。在此情况下,传输信令文件还包括预先选择集合,预先选择集合包括预选(Preselection)元素,预选(Preselection)元素包括预选组件(@preselectionComponents)属性和编解码器(@codecs)属性,预选组件属性用于指示自适应集中一个或多个轨道对应的表示的标识,编解码器属性用于指示预选组件属性指示的一个或多个轨道对应的表示对应的轨道的样本入口类型。当Preselection元素中编解码器(@codecs)属性取值为‘agpl’时,表示该预选择集合中预选组件(@preselectionComponents)属性指示的一个或多个表示对应的轨道的样本入口类型均为‘agpl’类型,即预选择集合中预选组件(@preselectionComponents)属性指示的一个或多个表示对应的轨道均为时域层级轨道。
在一个实施例中,若预选组件属性所指示的表示对应的轨道的样本入口类型为目标类型(即‘agpl’类型),则内容消费设备生成媒体文件的传输信令文件包括:将编解码器属性的值配置为目标类型对应的标识(即‘agpl’)。
在另一种实现方式中,媒体文件的封装模式为多轨道封装模式,样本入口类型不同的轨道可以封装在不同的自适应集中,此时,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)可以单独存在于一个自适应集中。在此情况下,通过定义预先选择集合,对‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示需与单轨道封装模式下的轨道对应的表示进行区分。预先选择集合可以用于指示‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示。具体地,‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示可以由MPD文件中的预选(Preselection)元素定义。预选(Preselection)元素包括预选组件(@preselectionComponents)属性和编解码器(@codecs)属性,Preselection元素中预选组件(@preselectionComponents)属性用于指示一个或多个自适应集的标识符。Preselection元素中编解码器(@codecs)属性用于指示预选组件属性指示的一个或多个自适应集的类型。当Preselection元素中编解码器(@codecs)属性取值为‘agpl’时,表示该预选择集合中预选组件(@preselectionComponents)属性指示的自适应集中均为‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的表示;也就是说,预选择集合中预选组件(@preselectionComponents)属性指示的自适应集,为‘agpl’类型的样本入口对应的轨道(即时域层级轨道)对应的自适应集。
在一个实施例中,若预选组件属性所指示的自适应集中的表示对应的轨道的样本入口类型为目标类型(即‘agpl’类型),则内容消费设备生成媒体文件的传输信令文件包括:将编解码器属性的值配置为目标类型对应的标识(即‘agpl’)。
在再一种实现方式中,点云媒体的媒体文件可以被切分为多个媒体片段(每个媒体片段包含至少一个点云帧),这些媒体片段的点云码流按照时域层级被封装在一个或多个时域层级轨道中,若一个时域层级轨道中封装了至少两个媒体片段,则这至少两个媒体片段中包含一个初始媒体片段,该初始媒体片段中包含基于几何模型的点云压缩解码器配置记录(GPCCDecoderConfigurationRecord)。
下面通过两个完整的例子对本申请提供的点云媒体的数据处理方法进行说明:
在流媒体传输场景下,内容制作设备根据点云帧对应的点云码流的时域信息,比如时域层级信息、帧率信息等,将点云码流封装到多个不同的时域层级轨道(即样本入口类型为‘agpl’类型的轨道)。得到点云媒体的媒体文件F1和媒体文件F2。其中,每个时域层级轨道满足如下约束:
a)时域层级轨道中的每个样本均包含至少一个完整的点云帧,也就是说,每个样本包含至少一个点云帧全部的组件数据(全部的几何数据和属性数据)。
b)不同时域层级轨道中的样本对应的解码时间(或呈现时间)互不相同。
媒体文件F1,包括:
{track1:‘agpl’,frame_rate=30fps,temporal_level_id={0,1}}
{track2:‘agpl’,frame_rate=30fps,temporal_level_id={2,3}}
{track3:‘agpl’,frame_rate=30fps,temporal_level_id={4,5}}
媒体文件F2,包括:
{track4:‘gpel’,frame_rate=90fps}
其中,‘agpl’和‘gpel’用于指示轨道的类型,frame_rate用于指示轨道的帧率,temporal_level_id用于指示时域层级轨道的时域层级。
当内容制作设备需要对媒体文件F1进行流化传输时,将媒体文件F1中的多个时域层级轨道(track1-track3)作为同一个自适应集中的不同表示进行组织,将媒体文件F2中的track4作为另一个自适应集中的表示进行组织,并生成相应的MPD信令文件。具体如下:
<AdaptationSet id="1"codecs="agpl">
<Representation1 frame_rate=30fps,temporal_level_id={0,1}></Representation>
<Representation2 frame_rate=30fps,temporal_level_id={2,3}></Representation>
<Representation3 frame_rate=30fps,temporal_level_id={4,5}></Representation>
</AdaptationSet>
<AdaptationSet id="2"codecs="gpe1">
<Representationframe_rate=90fps>
…
</Representation>
</AdaptationSet>
<Preselection id="1"preselectionComponents="1"codecs="agpl">
</Preselection>
其中,<AdaptationSet id="1"codecs="agpl">表示:自适应集的标识为1,编解码器的类型为‘agpl’;<Representation1 frame_rate=30fps,temporal_level_id={0,1}></Representation>表示:表示1对应的轨道的帧率为30fps,时域层级为{0,1};类似地,<Representation2 frame_rate=30fps,temporal_level_id={2,3}></Representation>表示:表示2对应的轨道的帧率为30fps,时域层级为{2,3};<Representation3 frame_rate=30fps,temporal_level_id={4,5}></Representation>表示:表示3对应的轨道的帧率为30fps,时域层级为{4,5}。<AdaptationSet id="2"codecs="gpe1">表示:自适应集的标识为2,编解码器的类型为‘gpel’。<Preselection id="1"preselectionComponents="1"codecs="agpl">表示:预先选择集合的标识为1,预选组件属性指示的自适应集的标识为1(即自适应集1),编解码属性指示的类型为‘agpl’(即指示自适应集1中的表示均为时域层级轨道的表示)。
接着内容制作设备将MPD信令文件发送给内容消费设备。
内容消费设备可以根据观看者的需求、网络条件、解码能力中的一个或多个,并结合不同轨道的帧率或时域层级等信息,请求合适的媒体资源并解码消费。举例来说:
假设内容消费设备C1带宽充足,解码能力不受限,则内容消费设备C1可以直接请求Adaptation Set 2中的媒体片段进行消费。
假设内容消费设备C2带宽受限,则内容消费设备C2可以先请求Adaptation Set1中的Representation1进行消费。在带宽更充足后,同时请求Adaptation Set1中的Representation1和Representation2进行消费,以获得更高的帧率。
在本地播放场景下,内容制作设备根据点云帧对应的点云码流的时域信息,比如时域层级信息、帧率信息等,将点云码流封装到多个不同的时域层级轨道(即样本入口类型为‘agpl’类型的轨道)。得到点云媒体的媒体文件F1。其中,每个时域层级轨道满足如下约束:
a)时域层级轨道中的每个样本均包含至少一个完整的点云帧,也就是说,每个样本包含至少一个点云帧全部的组件数据(全部的几何数据和属性数据)。
b)不同时域层级轨道中的样本对应的解码时间(或呈现时间)互不相同。
媒体文件F1,包括:
{track1:‘agpl’,frame_rate=30fps,temporal_level_id={0,1}}
{track2:‘agpl’,frame_rate=30fps,temporal_level_id={2,3}}
{track3:‘agpl’,frame_rate=30fps,temporal_level_id={4,5}}
其中,‘agpl’和‘gpel’用于指示轨道的类型,frame_rate用于指示轨道的帧率,temporal_level_id用于指示时域层级轨道的时域层级。
接着内容制作设备将完整文件F1发送给内容消费设备。
内容消费设备可以根据观看者的需求、解码能力中的一个或多个,并结合不同轨道的帧率或时域层级等信息,解码相应的轨道进行消费呈现。举例来说:
假设内容消费设备C1解码能力不受限,对帧率要求更高于目标帧率,则内容消费设备C1可以解码全部的轨道(track1-track3)进行消费。
假设内容消费设备C2解码能力受限,对帧率要求低于目标帧率,则内容消费设备C1可以解码track1进行消费。
本申请实施例中,获取点云媒体的点云帧;根据点云帧的时域信息,将点云帧封装到时域层级轨道中,得到点云媒体的媒体文件,时域信息包括时域层级信息,帧率信息;时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据。可见,以时域信息(如时域层级信息,或者帧率信息)为核心对点云媒体进行文件封装,能够丰富点云媒体的封装方式,使得内容消费设备可以根据需求灵活地选择所需的点云媒体的媒体文件进行传输和解码消费。
上述详细阐述了本申请实施例的方法,为了便于更好地实施本申请实施例的上述方案,相应地,下面提供了本申请实施例的装置。
请参见图4,图4为本申请实施例提供的一种点云媒体的数据处理装置的结构示意图;该点云媒体的数据处理装置可以是运行于内容消费设备中的一个计算机程序(包括程序代码),例如该点云媒体的数据处理装置可以是内容消费设备中的一个应用软件。由图4所示,该点云媒体的数据处理装置包括获取单元401和处理单元402。
请参见图4,在一个示例性实施例中,各个单元的详细描述如下:
获取单元401,用于获取点云媒体的媒体文件,媒体文件包括时域层级轨道,时域层级轨道是基于时域信息对点云媒体的点云帧进行封装得到的,时域信息包括时域层级信息,帧率信息;时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据;
处理单元402,用于对媒体文件进行解码以呈现点云媒体。
在一种实施方式中,时域层级轨道的样本入口使用基于几何模型的点云压缩样本入口;且时域层级轨道的样本入口类型为目标类型;
其中,基于几何模型的点云压缩样本入口是基于体积视觉样本入口扩展得到的。
在一种实施方式中,时域层级轨道包括N个样本,N为正整数;
N个样本中每个样本均是点云媒体的点云帧在一个时域层级上的子集。
在一种实施方式中,一个点云帧的完整数据由一个或多个编码内容单元组成,编码内容单元用于存储点云帧的几何编码数据或属性编码数据。
在一种实施方式中,时域层级轨道包含第一轨道及第二轨道;
第一轨道中的样本对应第一时域层级,第二轨道中的样本对应第二时域层级。
在一种实施方式中,第一轨道中的样本的解码时间与第二轨道中的样本的解码时间互不相同。
在一种实施方式中,第一时域层级高于第二时域层级,第一轨道被索引至第二轨道。
在一种实施方式中,媒体文件还包括样本描述数据盒,样本描述数据盒包括样本入口类型的一个或多个类型描述字段,类型描述字段用于指示样本入口类型。
在一种实施方式中,获取单元401还用于:
获取点云媒体的传输信令文件,传输信令文件包括至少一个自适应集,至少一个自适应集包括时域层级轨道对应的表示。
在一种实施方式中,获取单元401用于,获取点云媒体的媒体文件,具体用于:
基于至少一个自适应集的描述信息,确定呈现点云媒体所需的媒体文件;
通过流化传输方式拉取所确定的点云媒体的媒体文件。
在一种实施方式中,点云媒体包括多个媒体片段;
若时域层级轨道中封装了至少两个媒体片段的点云帧,则至少两个媒体片段中包括初始化媒体片段;
其中,初始化媒体片段包含基于几何模型的点云压缩解码器配置记录。
在一种实施方式中,时域层级轨道包括帧率指示字段,帧率指示字段用于指示时域层级轨道的帧率。
根据本申请的一个实施例,图2所示的点云媒体的数据处理方法所涉及的部分步骤可由图4所示的点云媒体的数据处理装置中的各个单元来执行。例如,图2中所示的步骤S201可由图4所示的获取单元401执行,步骤S202可由图4所示的处理单元402执行。图4所示的点云媒体的数据处理装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,点云媒体的数据处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算装置上运行能够执行如图2中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图4中所示的点云媒体的数据处理装置,以及来实现本申请实施例的点云媒体的数据处理方法。计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算装置中,并在其中运行。
本申请实施例中,获取点云媒体的媒体文件,媒体文件包括时域层级轨道,时域层级轨道是基于时域信息对点云媒体的点云帧进行封装得到的;时域信息包括时域层级信息,帧率信息;时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据;对媒体文件进行解码以呈现点云媒体。可见,以时域信息(如时域层级信息,或帧率信息)为核心对点云媒体进行文件封装,能够丰富点云媒体的封装方式,内容消费设备可以根据需求灵活地选择所需的点云媒体的媒体文件进行传输和解码消费。
请参见图5,图5为本申请实施例提供的另一种点云媒体的数据处理装置的结构示意图;该点云媒体的数据处理装置可以是运行于内容制作设备中的一个计算机程序(包括程序代码),例如该点云媒体的数据处理装置可以是内容制作设备中的一个应用软件。由图5所示,该点云媒体的数据处理装置包括获取单元501和处理单元502。请参见图5,各个单元的详细描述如下:
获取单元501,用于获取点云媒体的点云帧;
处理单元502,用于根据点云帧的时域信息,将点云帧封装到时域层级轨道中,得到点云媒体的媒体文件;时域信息包括时域层级信息,帧率信息;时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据。
在一种实施方式中,时域层级轨道的数量为M,M个时域层级轨道属于P个时域层级,M为正整数,P为小于等于M的正整数;处理单元502还用于:
对媒体文件进行切片得到多个媒体片段;以及,
生成媒体文件的传输信令文件,传输信令文件包括至少一个自适应集,M个时域层级轨道按照时域层级被表示为至少一个自适应集下的P个表示。
在一种实施方式中,媒体文件的封装模式为单轨道封装模式;
传输信令文件包括至少一个自适应集,至少一个自适应集包括时域层级轨道对应的表示和单轨道封装模式下的轨道对应的表示。
在一种实施方式中,时域层级轨道对应的表示携带时域层级相关的描述子;
单轨道封装模式下的轨道对应的表示不携带时域层级相关的描述子。
在一种实施方式中,时域层级轨道对应的表示和单轨道封装模式下的轨道对应的表示均携带封装模式描述子;
时域层级轨道对应的表示携带的封装模式描述子的取值与单轨道封装模式下的轨道对应的表示携带的封装模式描述子的取值不同。
在一种实施方式中,传输信令文件还包括预先选择集合,预先选择集合包括预选元素,预选元素包括预选组件属性和编解码器属性;
预选组件属性用于指示至少一个自适应集中一个或多个表示的标识;
编解码器属性用于指示预选组件属性所指示的表示对应的轨道的样本入口类型。
在一种实施方式中,若预选组件属性所指示的表示对应的轨道的样本入口类型为目标类型,则处理单元502用于,生成媒体文件的传输信令文件,具体用于:
将编解码器属性的值配置为目标类型对应的标识。
在一种实施方式中,媒体文件的封装模式为多轨道封装模式;传输信令文件包括至少一个自适应集和预先选择集合,预先选择集合包括预选元素,预选元素包括预选组件属性和编解码器属性;
预选组件属性用于指示至少一个自适应集的标识;
编解码器属性用于指示预选组件属性所指示的自适应集中的轨道的样本入口类型。
在一种实施方式中,若预选组件属性所指示的表示对应的轨道的样本入口类型为目标类型,则处理单元502用于,生成媒体文件的传输信令文件,具体用于:
将编解码器属性的值配置为目标类型对应的标识。
根据本申请的一个实施例,图3所示的点云媒体的数据处理方法所涉及的部分步骤可由图5所示的点云媒体的数据处理装置中的各个单元来执行。例如,图3中所示的步骤S301可由图5所示的获取单元501执行,步骤S302可由图5所示的处理单元502执行。图5所示的点云媒体的数据处理装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,点云媒体的数据处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算装置上运行能够执行如图3中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图5中所示的点云媒体的数据处理装置,以及来实现本申请实施例的点云媒体的数据处理方法。计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算装置中,并在其中运行。
本申请实施例中,获取点云媒体的点云帧;根据点云帧的时域信息,将点云帧封装到时域层级轨道中,得到点云媒体的媒体文件,时域信息包括时域层级信息,帧率信息;时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据。可见,以时域信息(如时域层级信息,帧率信息)为核心对点云媒体进行文件封装,能够丰富点云媒体的封装方式,使得内容消费设备可以根据需求灵活地选择所需的点云媒体的媒体文件进行传输和解码消费。
图6为本申请实施例提供的一种内容消费设备的结构示意图;该内容消费设备可以是指点云媒体的使用者所使用的计算机设备,该计算机设备可以是终端(如PC、智能移动设备(如智能手机)、VR设备(如VR头盔、VR眼镜等))。如图6所示,该内容消费设备包括接收器601、处理器602、存储器603、显示/播放装置604。其中:
接收器601用于实现解码与其他设备的传输交互,具体用于实现内容制作设备与内容消费设备之间关于进行点云媒体的传输。即内容消费设备通过接收器601来接收内容制作设备传输点云媒体的相关媒体资源。
处理器602(或称CPU(Central Processing Unit,中央处理器))是内容制作设备的处理核心,该处理器602适于实现一条或多条程序指令,具体适于加载并执行一条或多条程序指令从而实现图2所示的点云媒体的数据处理方法的流程。
存储器603是内容消费设备中的记忆设备,用于存放程序和媒体资源。可以理解的是,此处的存储器603既可以包括内容消费设备中的内置存储介质,当然也可以包括内容消费设备所支持的扩展存储介质。需要说明的是,存储器603可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器的存储器。存储器603提供存储空间,该存储空间用于存储内容消费设备的操作系统。并且,在该存储空间中还用于存储计算机程序,该计算机程序包括程序指令,且该程序指令适于被处理器调用并执行,以用来执行点云媒体的数据处理方法的各步骤。另外,存储器603还可用于存储经处理器处理后形成的点云媒体的三维图像、三维图像对应的音频内容及该三维图像和音频内容渲染所需的信息等。
显示/播放装置604用于输出渲染得到的声音和三维图像。
再请参见图6,处理器602可包括解析器621、解码器622、转换器623和渲染器624;其中:
解析器621用于对来自内容制作设备的渲染媒体的封装文件进行文件解封装,具体是按照点云媒体的文件格式要求对媒体文件资源进行解封装,得到音频码流和视频码流;并将该音频码流和视频码流提供给解码器622。
解码器622对音频码流进行音频解码,得到音频内容并提供给渲染器进行音频渲染。另外,解码器622对视频码流进行解码得到2D图像。根据媒体呈现描述信息提供的元数据,如果该元数据指示点云媒体执行过区域封装过程,该2D图像是指封装图像;如果该元数据指示点云媒体未执行过区域封装过程,则该平面图像是指投影图像。
转换器623用于将2D图像转换为3D图像。如果点云媒体执行过区域封装过程,转换器623还会先将封装图像进行区域解封装得到投影图像。再对投影图像进行重建处理得到3D图像。如果渲染媒体未执行过区域封装过程,转换器623会直接将投影图像重建得到3D图像。
渲染器624用于对点云媒体的音频内容和3D图像进行渲染。具体根据媒体呈现描述信息中与渲染、视窗相关的元数据对音频内容及3D图像进行渲染,渲染完成交由显示/播放装置进行输出。
在一个示例性实施例中,处理器602(具体是处理器包含的各器件)通过调用存储器中的一条或多条指令来执行图2所示的点云媒体的数据处理方法的各步骤。具体地,存储器存储有一条或多条第一指令,该一条或多条第一指令适于由处理器602加载并执行如下步骤:
获取点云媒体的媒体文件,媒体文件包括时域层级轨道,时域层级轨道是基于时域信息对点云媒体的点云帧进行封装得到的,时域信息包括时域层级信息,帧率信息;时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据;
对媒体文件进行解码以呈现点云媒体。
一种实施方式中,时域层级轨道的样本入口使用基于几何模型的点云压缩样本入口;且时域层级轨道的样本入口类型为目标类型;
其中,基于几何模型的点云压缩样本入口是基于体积视觉样本入口扩展得到的。
一种实施方式中,时域层级轨道包括N个样本,N为正整数;
N个样本中每个样本均是点云媒体的点云帧在一个时域层级上的子集。
一种实施方式中,一个点云帧的完整数据由一个或多个编码内容单元组成,编码内容单元用于存储点云帧的几何编码数据或属性编码数据。
一种实施方式中,时域层级轨道包含第一轨道及第二轨道;
第一轨道中的样本对应第一时域层级,第二轨道中的样本对应第二时域层级。
一种实施方式中,第一轨道中的样本的解码时间与第二轨道中的样本的解码时间互不相同。
一种实施方式中,第一时域层级高于第二时域层级,第一轨道被索引至第二轨道。
一种实施方式中,媒体文件还包括样本描述数据盒,样本描述数据盒包括样本入口类型的一个或多个类型描述字段,类型描述字段用于指示样本入口类型。
一种实施方式中,存储器603中的计算机程序由处理器602加载并且还执行如下步骤:
获取点云媒体的传输信令文件,传输信令文件包括至少一个自适应集,至少一个自适应集包括时域层级轨道对应的表示。
一种实施方式中,处理器602获取点云媒体的媒体文件的具体实施方式为;
基于至少一个自适应集的描述信息,确定呈现点云媒体所需的媒体文件;
通过流化传输方式拉取所确定的点云媒体的媒体文件。
一种实施方式中,点云媒体包括多个媒体片段;
若时域层级轨道中封装了至少两个媒体片段的点云帧,则至少两个媒体片段中包括初始化媒体片段;
其中,初始化媒体片段包含基于几何模型的点云压缩解码器配置记录。
一种实施方式中,时域层级轨道包括帧率指示字段,帧率指示字段用于指示时域层级轨道的帧率。
本申请实施例中,获取点云媒体的媒体文件,媒体文件包括时域层级轨道,时域层级轨道是基于时域信息对点云媒体的点云帧进行封装得到的;时域信息包括时域层级信息,帧率信息;时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据;对媒体文件进行解码以呈现点云媒体。可见,以时域信息(如时域层级信息,或帧率信息)为核心对点云媒体进行文件封装,能够丰富点云媒体的封装方式,内容消费设备可以根据需求灵活地选择所需的点云媒体的媒体文件进行传输和解码消费。
图7为本申请实施例提供的一种内容制作设备的结构示意图;该内容制作设备可以是指点云媒体的提供者所使用的计算机设备,该计算机设备可以是终端(如PC、智能移动设备(如智能手机)等)或服务器。如图7所示,该内容制作设备包括捕获设备701、处理器702、存储器703和发射器704。其中:
捕获设备701用于采集现实世界的声音-视觉场景获得点云媒体的原始数据(包括在时间和空间上保持同步的音频内容和视频内容)。该捕获设备701可以包括但不限于:音频设备、摄像设备及传感设备。其中,音频设备可以包括音频传感器、麦克风等。摄像设备可以包括普通摄像头、立体摄像头、光场摄像头等。传感设备可以包括激光设备、雷达设备等。
处理器702(或称CPU(Central Processing Unit,中央处理器))是内容制作设备的处理核心,该处理器702适于实现一条或多条程序指令,具体适于加载并执行一条或多条程序指令从而实现图3所示的点云媒体的数据处理方法的流程。
存储器703是内容制作设备中的记忆设备,用于存放程序和媒体资源。可以理解的是,此处的存储器703既可以包括内容制作设备中的内置存储介质,当然也可以包括内容制作设备所支持的扩展存储介质。需要说明的是,存储器可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器的存储器。存储器提供存储空间,该存储空间用于存储内容制作设备的操作系统。并且,在该存储空间中还用于存储计算机程序,该计算机程序包括程序指令,且该程序指令适于被处理器调用并执行,以用来执行点云媒体的数据处理方法的各步骤。另外,存储器703还可用于存储经处理器处理后形成的点云媒体文件,该点云媒体文件包括媒体文件资源和媒体呈现描述信息。
发射器704用于实现内容制作设备与其他设备的传输交互,具体用于实现内容制作设备与内容播放设备之间关于进行点云媒体的传输。即内容制作设备通过发射器704来向内容播放设备传输点云媒体的相关媒体资源。
再请参见图7,处理器702可包括转换器721、编码器722和封装器723;其中:
转换器721用于对捕获到的视频内容进行一系列转换处理,使视频内容成为适合被执行点云媒体的视频编码的内容。转换处理可包括:拼接和投影,可选地,转换处理还包括区域封装。转换器721可以将捕获到的3D视频内容转换为2D图像,并提供给编码器进行视频编码。
编码器722用于对捕获到的音频内容进行音频编码形成点云媒体的音频码流。还用于对转换器721转换得到的2D图像进行视频编码,得到视频码流。
封装器723用于将音频码流和视频码流按照点云媒体的文件格式(如ISOBMFF)封装在文件容器中形成点云媒体的媒体文件资源,该媒体文件资源可以是媒体文件或媒体片段形成点云媒体的媒体文件;并按照点云媒体的文件格式要求采用媒体呈现描述信息记录该点云媒体的媒体文件资源的元数据。封装器处理得到的点云媒体的封装文件会保存在存储器中,并按需提供给内容播放设备进行点云媒体的呈现。
处理器702(具体是处理器包含的各器件)通过调用存储器中的一条或多条指令来执行图4所示的点云媒体的数据处理方法的各步骤。具体地,存储器703存储有一条或多条第一指令,该一条或多条第一指令适于由处理器702加载并执行如下步骤:
获取点云媒体的点云帧;
根据点云帧的时域信息,将点云帧封装到时域层级轨道中,得到点云媒体的媒体文件;时域信息包括时域层级信息,帧率信息;时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据。
一种实施方式中,时域层级轨道的数量为M,M个时域层级轨道属于P个时域层级,M为正整数,P为小于等于M的正整数;存储器703中的计算机程序由处理器702加载并且还执行如下步骤:
对媒体文件进行切片得到多个媒体片段;以及,
生成媒体文件的传输信令文件,传输信令文件包括至少一个自适应集,M个时域层级轨道按照时域层级被表示为至少一个自适应集下的P个表示。
一种实施方式中,媒体文件的封装模式为单轨道封装模式;
传输信令文件包括至少一个自适应集,至少一个自适应集包括时域层级轨道对应的表示和单轨道封装模式下的轨道对应的表示。
一种实施方式中,时域层级轨道对应的表示携带时域层级相关的描述子;
单轨道封装模式下的轨道对应的表示不携带时域层级相关的描述子。
一种实施方式中,时域层级轨道对应的表示和单轨道封装模式下的轨道对应的表示均携带封装模式描述子;
时域层级轨道对应的表示携带的封装模式描述子的取值与单轨道封装模式下的轨道对应的表示携带的封装模式描述子的取值不同。
一种实施方式中,传输信令文件还包括预先选择集合,预先选择集合包括预选元素,预选元素包括预选组件属性和编解码器属性;
预选组件属性用于指示至少一个自适应集中一个或多个表示的标识;
编解码器属性用于指示预选组件属性所指示的表示对应的轨道的样本入口类型。
一种实施方式中,若预选组件属性所指示的表示对应的轨道的样本入口类型为目标类型,则处理702生成媒体文件的传输信令文件的具体实施方式为:
将编解码器属性的值配置为目标类型对应的标识。
一种实施方式中,媒体文件的封装模式为多轨道封装模式;传输信令文件包括至少一个自适应集和预先选择集合,预先选择集合包括预选元素,预选元素包括预选组件属性和编解码器属性;
预选组件属性用于指示至少一个自适应集的标识;
编解码器属性用于指示预选组件属性所指示的自适应集中的轨道的样本入口类型。
一种实施方式中,若预选组件属性所指示的自适应集中的表示对应的轨道的样本入口类型为目标类型,则处理器702生成媒体文件的传输信令文件的具体实施方式为:
将编解码器属性的值配置为目标类型对应的标识。
本申请实施例中,获取点云媒体的点云帧;根据点云帧的时域信息,将点云帧封装到时域层级轨道中,得到点云媒体的媒体文件,时域信息包括时域层级信息,帧率信息;时域层级轨道中任一个样本包含点云媒体的至少一个点云帧的完整数据。可见,以时域信息(如时域层级信息,帧率信息)为核心对点云媒体进行文件封装,能够丰富点云媒体的封装方式,使得内容消费设备可以根据需求灵活地选择所需的点云媒体的媒体文件进行传输和解码消费。
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有一条或多条指令,一条或多条指令适于由处理器加载并执行上述方法实施例的点云媒体的数据处理方法。
本申请实施例还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述方法实施例的点云媒体的数据处理方法。
本申请实施例还提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述的点云媒体的数据处理方法。
本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本申请实施例装置中的模块可以根据实际需要进行合并、划分和删减。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,可读存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
以上所揭露的仅为本申请一种较佳实施例而已,当然不能以此来限定本申请之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本申请权利要求所作的等同变化,仍属于申请所涵盖的范围。
Claims (26)
1.一种点云媒体的数据处理方法,其特征在于,所述方法包括:
获取点云媒体的媒体文件,所述媒体文件包括时域层级轨道,所述时域层级轨道是基于时域信息对所述点云媒体的点云帧进行封装得到的,所述时域信息包括时域层级信息,帧率信息;所述时域层级轨道中任一个样本包含所述点云媒体的至少一个点云帧的完整数据;
对所述媒体文件进行解码以呈现所述点云媒体。
2.如权利要求1所述的方法,其特征在于,所述时域层级轨道的样本入口使用基于几何模型的点云压缩样本入口;且所述时域层级轨道的样本入口类型为目标类型;
其中,所述基于几何模型的点云压缩样本入口是基于体积视觉样本入口扩展得到的。
3.如权利要求1所述的方法,其特征在于,所述时域层级轨道包括N个样本,N为正整数;
所述N个样本中每个样本均是所述点云媒体的点云帧在一个时域层级上的子集。
4.如权利要求3所述的方法,其特征在于,一个点云帧的完整数据由一个或多个编码内容单元组成,所述编码内容单元用于存储点云帧的几何编码数据或属性编码数据。
5.如权利要求1所述的方法,其特征在于,所述时域层级轨道包含第一轨道及第二轨道;
所述第一轨道中的样本对应第一时域层级,所述第二轨道中的样本对应第二时域层级。
6.如权利要求5所述的方法,其特征在于,所述第一轨道中的样本的解码时间与所述第二轨道中的样本的解码时间互不相同。
7.如权利要求5所述的方法,其特征在于,所述第一时域层级高于所述第二时域层级,所述第一轨道被索引至所述第二轨道。
8.如权利要求1所述的方法,其特征在于,所述媒体文件还包括样本描述数据盒,所述样本描述数据盒包括样本入口类型的一个或多个类型描述字段,所述类型描述字段用于指示样本入口类型。
9.如权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述点云媒体的传输信令文件,所述传输信令文件包括至少一个自适应集,所述至少一个自适应集包括所述时域层级轨道对应的表示。
10.如权利要求9所述的方法,其特征在于,所述获取点云媒体的媒体文件,包括:
基于所述至少一个自适应集的描述信息,确定呈现所述点云媒体所需的媒体文件;
通过流化传输方式拉取所确定的点云媒体的媒体文件。
11.如权利要求1所述的方法,其特征在于,所述点云媒体包括多个媒体片段;
若所述时域层级轨道中封装了至少两个媒体片段的点云帧,则所述至少两个媒体片段中包括初始化媒体片段;
其中,所述初始化媒体片段包含基于几何模型的点云压缩解码器配置记录。
12.如权利要求1所述的方法,其特征在于,所述时域层级轨道包括帧率指示字段,所述帧率指示字段用于指示所述时域层级轨道的帧率。
13.一种点云媒体的数据处理方法,其特征在于,所述方法包括:
获取点云媒体的点云帧;
根据所述点云帧的时域信息,将所述点云帧封装到时域层级轨道中,得到所述点云媒体的媒体文件;所述时域信息包括时域层级信息,帧率信息;所述时域层级轨道中任一个样本包含所述点云媒体的至少一个点云帧的完整数据。
14.如权利要求13所述的方法,其特征在于,所述时域层级轨道的数量为M,所述M个时域层级轨道属于P个时域层级,M为正整数,P为小于等于M的正整数;所述方法还包括:
对所述媒体文件进行切片得到多个媒体片段;以及,
生成所述媒体文件的传输信令文件,所述传输信令文件包括至少一个自适应集,所述M个时域层级轨道按照时域层级被表示为所述至少一个自适应集下的P个表示。
15.如权利要求14所述的方法,其特征在于,所述媒体文件的封装模式为单轨道封装模式;
所述传输信令文件包括至少一个自适应集,所述至少一个自适应集包括所述时域层级轨道对应的表示和所述单轨道封装模式下的轨道对应的表示。
16.如权利要求15所述的方法,其特征在于,所述时域层级轨道对应的表示携带时域层级相关的描述子;
所述单轨道封装模式下的轨道对应的表示不携带时域层级相关的描述子。
17.如权利要求15所述的方法,其特征在于,所述时域层级轨道对应的表示和所述单轨道封装模式下的轨道对应的表示均携带封装模式描述子;
所述时域层级轨道对应的表示携带的封装模式描述子的取值与所述单轨道封装模式下的轨道对应的表示携带的封装模式描述子的取值不同。
18.如权利要求15所述的方法,其特征在于,所述传输信令文件还包括预先选择集合,所述预先选择集合包括预选元素,所述预选元素包括预选组件属性和编解码器属性;
所述预选组件属性用于指示所述至少一个自适应集中一个或多个表示的标识;
所述编解码器属性用于指示所述预选组件属性所指示的表示对应的轨道的样本入口类型。
19.如权利要求18所述的方法,其特征在于,若所述预选组件属性所指示的表示对应的轨道的样本入口类型为目标类型,则所述生成所述媒体文件的传输信令文件,包括:
将所述编解码器属性的值配置为所述目标类型对应的标识。
20.如权利要求14所述的方法,其特征在于,所述媒体文件的封装模式为多轨道封装模式;所述传输信令文件包括至少一个自适应集和预先选择集合,所述预先选择集合包括预选元素,所述预选元素包括预选组件属性和编解码器属性;
所述预选组件属性用于指示所述至少一个自适应集的标识;
所述编解码器属性用于指示所述预选组件属性所指示的自适应集中的轨道的样本入口类型。
21.如权利要求20所述的方法,其特征在于,若所述预选组件属性所指示的自适应集中的表示对应的轨道的样本入口类型为目标类型,则所述生成所述媒体文件的传输信令文件,包括:
将所述编解码器属性的值配置为所述目标类型对应的标识。
22.一种点云媒体的数据处理装置,其特征在于,所述点云媒体的数据处理装置包括:
获取单元,用于获取点云媒体的媒体文件,所述媒体文件包括时域层级轨道,所述时域层级轨道是基于时域信息对所述点云媒体的点云帧进行封装得到的,所述时域信息包括时域层级信息,帧率信息;所述时域层级轨道中任一个样本包含所述点云媒体的至少一个点云帧的完整数据;
处理单元,用于对所述媒体文件进行解码以呈现所述点云媒体。
23.一种点云媒体的数据处理装置,其特征在于,所述点云媒体的数据处理装置包括:
获取单元,用于获取点云媒体的点云帧;
处理单元,用于根据所述点云帧的时域信息,将所述点云帧封装到时域层级轨道中,得到所述点云媒体的媒体文件;所述时域信息包括时域层级信息,帧率信息;所述时域层级轨道中任一个样本包含所述点云媒体的至少一个点云帧的完整数据。
24.一种计算机设备,其特征在于,包括:存储装置和处理器;
存储器,所述存储器中存储有计算机程序;
处理器,用于加载所述计算机程序实现如权利要求1-12中任一项所述的点云媒体的数据处理方法;或者,用于加载所述计算机程序实现如权利要求13-21所述的点云媒体的数据处理方法。
25.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序适于被处理器加载并执行如权利要求1-12中任一项所述的点云媒体的数据处理方法;或者,加载并执行如权利要求13-21所述的点云媒体的数据处理方法。
26.一种计算机程序产品,其特征在于,所述计算程序产品包括计算机程序,所述计算机程序适于被处理器加载并执行如权利要求1-12中任一项所述的点云媒体的数据处理方法;或者,加载并执行如权利要求13-21所述的点云媒体的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210228012.4A CN116781675A (zh) | 2022-03-08 | 2022-03-08 | 一种点云媒体的数据处理方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210228012.4A CN116781675A (zh) | 2022-03-08 | 2022-03-08 | 一种点云媒体的数据处理方法、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116781675A true CN116781675A (zh) | 2023-09-19 |
Family
ID=87984684
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210228012.4A Pending CN116781675A (zh) | 2022-03-08 | 2022-03-08 | 一种点云媒体的数据处理方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116781675A (zh) |
-
2022
- 2022-03-08 CN CN202210228012.4A patent/CN116781675A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6924266B2 (ja) | 生成されたコンテンツを含むビデオデータを符号化するための方法および装置 | |
JP7472220B2 (ja) | 方法、プログラム、及びデバイス | |
KR102559862B1 (ko) | 미디어 콘텐츠 전송을 위한 방법, 디바이스, 및 컴퓨터 프로그램 | |
KR102320455B1 (ko) | 미디어 콘텐트를 전송하는 방법, 디바이스, 및 컴퓨터 프로그램 | |
CN114079781B (zh) | 一种点云媒体的数据处理方法、装置、设备及存储介质 | |
CN113891117B (zh) | 沉浸媒体的数据处理方法、装置、设备及可读存储介质 | |
CN113852829A (zh) | 点云媒体文件的封装与解封装方法、装置及存储介质 | |
CN114697631B (zh) | 沉浸媒体的处理方法、装置、设备及存储介质 | |
CN115396647B (zh) | 一种沉浸媒体的数据处理方法、装置、设备及存储介质 | |
CN114116617A (zh) | 点云媒体的数据处理方法、装置、设备及可读存储介质 | |
CN115002470A (zh) | 一种媒体数据处理方法、装置、设备以及可读存储介质 | |
CN116781675A (zh) | 一种点云媒体的数据处理方法、装置、设备及介质 | |
CN114581631A (zh) | 沉浸式媒体的数据处理方法、装置和计算机可读存储介质 | |
CN115102932B (zh) | 点云媒体的数据处理方法、装置、设备、存储介质及产品 | |
CN115061984A (zh) | 点云媒体的数据处理方法、装置、设备、存储介质 | |
WO2022037423A1 (zh) | 点云媒体的数据处理方法、装置、设备及介质 | |
CN118158377A (zh) | 点云媒体的数据处理方法、装置、设备、存储介质及产品 | |
TWI796989B (zh) | 沉浸媒體的數據處理方法、裝置、相關設備及儲存媒介 | |
CN115426502A (zh) | 点云媒体的数据处理方法、装置、设备及存储介质 | |
CN114554243B (zh) | 点云媒体的数据处理方法、装置、设备及存储介质 | |
WO2023169003A1 (zh) | 点云媒体的解码方法、点云媒体的编码方法及装置 | |
CN116643643A (zh) | 一种沉浸媒体的数据处理方法、装置、设备及存储介质 | |
CN117082262A (zh) | 点云文件封装与解封装方法、装置、设备及存储介质 | |
CN116347118A (zh) | 一种沉浸媒体的数据处理方法及相关设备 | |
CN116781676A (zh) | 一种点云媒体的数据处理方法、装置、设备及介质 |
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 |