一种点云媒体的数据处理方法、装置、设备及介质与流程

未命名 09-22 阅读:36 评论:0
1.本技术涉及计算机
技术领域
:,具体涉及一种点云(pointcloud)媒体的数据处理方法、一种点云媒体的数据处理装置、一种点云媒体的数据处理设备及计算机可读存储介质。
背景技术
::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.图1a为本技术实施例提供的一种6dof的示意图;29.图1b为本技术实施例提供的一种3dof的示意图;30.图1c为本技术实施例提供的一种3dof+的示意图;31.图1d为本技术实施例提供的一种点云媒体的数据处理架构图;32.图2为本技术实施例提供的一种点云媒体的数据处理方法的流程图;33.图3为本技术实施例提供的另一种点云媒体的数据处理方法的流程图;34.图4为本技术实施例提供的一种点云媒体的数据处理装置的结构示意图;35.图5为本技术实施例提供的另一种点云媒体的数据处理装置的结构示意图;36.图6为本技术实施例提供的一种内容消费设备的结构示意图;37.图7为本技术实施例提供的一种内容制作设备的结构示意图。具体实施方式38.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。39.下面对本技术实施例涉及的一些技术术语进行介绍:40.一、沉浸媒体:41.沉浸媒体是指能够提供沉浸式的媒体内容,使沉浸于该媒体内容中的观看者能够获得现实世界中视觉、听觉等感官体验的媒体文件。沉浸式媒体按照观看者在消费媒体内容时的自由度,可以分为:6dof(degreeoffreedom)沉浸媒体,3dof沉浸媒体,3dof+沉浸媒体。42.二、点云:43.所谓点云是指空间中一组无规则分布的、表达三维物体或场景的空间结构及表面属性的离散点集。点云中的每个点至少具有三维位置信息,根据应用场景的不同,还可能具有色彩、材质或其他信息。通常,点云中的每个点都具有相同数量的附加属性。44.三、点云媒体:45.点云媒体一种典型的6dof沉浸媒体。点云媒体可以灵活方便地表达三维物体或场景的空间结构及表面属性,因此被广泛应用在虚拟现实(virtualreality,vr)游戏、计算机辅助设计(computeraideddesign,cad)、地理信息系统(geographyinformationsystem,gis)、自动导航系统(autonomousnavigationsystem,ans)、数字文化遗产、自由视点广播、三维沉浸远程呈现、生物组织器官三维重建等项目中。46.四、轨道(track):47.轨道是媒体文件封装过程中的媒体数据集合,一个媒体文件可由一个或多个轨道组成,例如常见的:一个媒体文件可以包含一个视频轨道、一个音频轨道及一个字幕轨道。48.五、样本(sample):49.样本是媒体文件封装过程中的封装单位,一个轨道由很多个样本组成,例如:一个视频轨道可以由很多个样本组成,一个样本通常为一个视频帧。50.六、isobmff(isobasedmediafileformat,基于iso标准的媒体文件格式):是媒体文件的封装标准,较为典型的isobmff文件即为mp4文件。51.七、dash(dynamicadaptivestreamingoverhttp,基于http的动态自适应流):是一种自适应比特率技术,使高质量流媒体可以通过传统的http网络服务器在互联网传递。52.八、mpd(mediapresentationdescription,dash中的媒体演示描述信令),用于描述媒体文件中的媒体片段信息。53.本技术实施例涉及沉浸媒体的数据处理技术,下面将对沉浸媒体的数据处理过程中的一些概念进行介绍,特别说明的是,本技术后续实施例中均以沉浸媒体为自由视角视频为例进行说明。54.图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在一个有限的空间内移动来观看媒体内容提供的画面。55.随着科技技术的不断发展,目前已经能够以较低的成本在较短的时间周期内获得大量精确度较高的点云数据。点云数据的获取途径包括:计算机生成、三维(3-dimension,3d)激光扫描、3d摄影测量等。具体来说,点云数据可以是通过采集设备(一组摄像机或具有多个镜头和传感器的摄像机设备)对现实世界的视觉场景进行采集得到的,通过3d激光扫描可以获得静态现实世界三维物体或场景的点云,每秒可以获取百万级点云数据;通过3d摄影可以获得动态现实世界三维物体或场景的点云,每秒可以获取千万级点云数据;此外,在医学领域,可以通过磁共振成像(magneticresonanceimaging,mri)、电子计算机断层扫描(computedtomography,ct)、电磁定位信息获得生物组织器官的点云数据。又如,点云数据还可以由计算机根据虚拟三维物体及场景直接生成,如计算机可以生成虚拟三维物体及场景的点云数据。伴随着大规模的点云数据不断积累,点云数据的高效存储、传输、发布、共享和标准化,成为点云应用的关键。56.图1d为本技术实施例提供的一种点云媒体的数据处理架构图。如图1d所示,在内容制作设备端的数据处理过程主要包括:(1)点云数据的媒体内容的获取过程;(2)点云数据的编码及文件封装的过程。在内容消费设备端的数据处理过程主要包括:(3)点云数据的文件解封装及解码的过程;(4)点云数据的渲染过程。另外,内容制作设备与内容消费设备之间涉及点云媒体的传输过程,该传输过程可以基于各种传输协议来进行,此处的传输协议可包括但不限于:dash(dynamicadaptivestreamingoverhttp,动态自适应流媒体传输)协议、hls(httplivestreaming,动态码率自适应传输)协议、smtp(smartmediatransportprotocol,智能媒体传输协议)、tcp(transmissioncontrolprotocol,传输控制协议)等。57.下面对点云媒体的数据处理过程进行详细描述:58.(1)获取点云媒体的媒体内容。59.从点云媒体的媒体内容的获取方式看,可以分为通过捕获设备采集现实世界的声音-视觉场景获得的以及通过计算机生成的两种方式。在一种实现中,捕获设备可以是指设于内容制作设备中的硬件组件,例如捕获设备是指终端的麦克风、摄像头、传感器等。另一种实现中,该捕获设备也可以是与内容制作设备相连接的硬件装置,例如与服务器相连接摄像头;用于为内容制作设备提供点云数据的媒体内容的获取服务。该捕获设备可以包括但不限于:音频设备、摄像设备及传感设备。其中,音频设备可以包括音频传感器、麦克风等。摄像设备可以包括普通摄像头、立体摄像头、光场摄像头等。传感设备可以包括激光设备、雷达设备等。捕获设备的数量可以为多个,这些捕获设备被部署在现实空间中的一些特定位置以同时捕获该空间内不同角度的音频内容和视频内容,捕获的音频内容和视频内容在时间和空间上均保持同步。由于获取的方式不同,不同点云数据的媒体内容对应的压缩编码方式也可能有所区别。60.(2)点云媒体的媒体内容的编码及文件封装的过程。61.目前,通常采用基于几何的点云压缩(geometry-basedpointcloudcompression,gpcc)编码方式对获取的点云数据进行编码处理,得到基于几何的点云压缩比特流(包括编码的几何比特流和属性比特流)。基于几何的点云压缩比特流的封装模式包括单轨道封装模式和多轨道封装模式。62.单轨道封装模式是指以单一轨道的形式对点云码流进行封装,在单轨道封装模式下,一个样本中会包含一个或多个编码内容单元(比如一个几何编码内容单元和多个属性编码内容单元),单轨道封装模式的好处在于:在点云码流的基础上,无需过多的处理即可得到一个单轨道封装的点云文件。63.多轨道封装模式是指以多个轨道的形式对点云码流进行封装,在多轨道封装模式下,每个轨道包含点云码流中的一个组件,即一个几何组件轨道和一个或多个属性组件轨道,多轨道封装的好处在于:将不同的组件分别封装,有利于客户端根据自身需求选择所需要的组件进行传输和解码消费。64.(3)点云媒体的文件解封装及解码的过程;65.内容消费设备可以通过内容制作设备获得点云数据的媒体文件资源和相应的媒体呈现描述信息。点云数据的媒体文件资源和媒体呈现描述信息通过传输机制(如dash、smt)由内容制作设备传输给内容消费设备。内容消费设备端的文件解封装的过程与内容制作设备端的文件封装过程是相逆的,内容消费设备按照点云媒体的文件格式要求对媒体文件资源进行解封装,得到编码比特流(gpcc比特流或vpcc比特流)。内容消费设备端的解码过程与内容制作设备端的编码过程是相逆的,内容消费设备对编码比特流进行解码,还原出点云数据。66.(4)点云媒体的渲染过程。67.内容消费设备根据媒体呈现描述信息中与渲染、视窗相关的元数据对gpcc比特流解码得到的点云数据进行渲染,得到点云媒体的点云帧,并根据点云帧的呈现时间呈现点云媒体。68.在一个实施例中,内容制作设备端:首先通过采集设备对真实世界的视觉场景进行采样,得到与真实世界的视觉场景对应的点云数据;然后通过基于几何的点云压缩(geometry-basedpointcloudcompression,gpcc)对获取的点云数据进行编码处理,得到gpcc比特流(包括编码的几何比特流和属性比特流);接着对gpcc比特流进行封装得到点云数据对应的媒体文件(即点云媒体),具体地,内容制作设备根据特定媒体容器文件格式,将一个或多个编码比特流合成为用于文件回放的媒体文件,或用于流式传输的初始化片段和媒体片段的序列;其中,媒体容器文件格式是指在国际标准化组织(internationalorganizationforstandardization,iso)/国际电工委员会(internationalelectrotechnicalcommission,iec)14496-12中规定的iso基本媒体文件格式。在一种实施方式中,内容制作设备还将元数据封装到媒体文件或初始化/媒体片段的序列中,并通过传输机制(如动态自适应流媒体传输接口)将初始化/媒体片段的序列传送给内容消费设备。69.在内容消费设备端:首先接收内容制作设备发送的点云媒体文件,包括:用于文件回放的媒体文件,或用于流式传输的初始化片段和媒体片段的序列;然后对点云媒体文件进行解封装处理,得到编码的gpcc比特流;接着解析编码的gpcc比特流(即对编码的gpcc比特流进行解码处理,得到点云数据);在具体实现中,内容消费设备基于当前对象的观看位置/观看方向确定呈现点云媒体所需的媒体文件,或者媒体片段序列;并对呈现点云媒体所需的媒体文件,或者媒体片段序列进行解码处理,得到呈现所需的点云数据。最后基于当前对象的观看(视窗)方向,对解码后的点云数据进行渲染,得到点云媒体的点云帧,并按照点云帧的呈现时间在内容消费设备携带的头戴式显示器或任何其他显示设备的屏幕上呈现点云媒体。需要说明的是,当前对象的观看位置/观看方向由头部追踪以及可能还有视觉追踪功能确定。除了通过渲染器用来渲染当前对象的观看位置/观看方向的点云数据外,还可以通过音频解码器来对当前对象的观看(视窗)方向的音频进行解码优化。70.其中,内容制作设备和内容消费设备可以共同组成点云媒体系统。内容制作设备可以是指点云媒体的提供者(例如点云媒体的内容制作者)所使用的计算机设备,该计算机设备可以是终端(如pc(personalcomputer,个人计算机)、智能移动设备(如智能手机)等)或服务器;其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。内容消费设备可以是指点云媒体的使用者(例如点云媒体的观看者)所使用的计算机设备,该计算机设备可以是终端(如pc(personalcomputer,个人计算机)、智能移动设备(如智能手机)、vr设备(如vr头盔、vr眼镜等)、智能家电、车载终端、飞行器等)。71.可以理解的是,本技术涉及点云媒体的数据处理技术可以依托于云技术进行实现;例如,将云服务器作为内容制作设备。云技术(cloudtechnology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。72.在实际应用中,内容制作设备可以通过序列头以及各个点云帧的解码指示信息,来指导内容消费设备对点云帧的码流数据进行解码并呈现。其中,序列头的语法可参见下述表1:73.表174.[0075][0076]其中,档次标号(profile_id)字段,用于表示位流符合的档次,档次标号(profile_id)字段的值为8位无符号整数。级别标号(level_id)字段,用于表示位流符合的级别,级别标号(level_id)字段的值为8位无符号整数。[0077]序列参数集标识(sequence_parameter_set_id)字段,用于提供一个序列参数集(sequenceparameterset,sps)识别符,供其它语法元素参考,该识别符是一个界于0到31的整数。[0078]包围盒原点x坐标高位部分(bounding_box_offset_x_upper)字段,用于表示包围盒x坐标高于16位的位数,包围盒原点x坐标高位部分(bounding_box_offset_x_upper)字段的值为无符号整数。包围盒原点x坐标低位部分(bounding_box_offset_x_lower)字段,用于表示包围盒原点x坐标低16位,包围盒原点x坐标低位部分(bounding_box_offset_x_lower)字段的值为无符号整数。包围盒原点x坐标即为:bounding_box_offset_x=(bounding_box_offset_x_upper)《《16+bounding_box_offset_x_lower。[0079]包围盒原点y坐标高位部分(bounding_box_offset_y_upper)字段,用于表示包围盒y坐标高于16位的位数,包围盒原点y坐标高位部分(bounding_box_offset_y_upper)字段的值为无符号整数。包围盒原点y坐标低位部分(bounding_box_offset_y_lower)字段,用于表示包围盒原点y坐标低16位,包围盒原点y坐标低位部分(bounding_box_offset_y_lower)字段的值为无符号整数。包围盒原点y坐标即为:bounding_box_offset_y=(bounding_box_offset_y_upper)《《16+bounding_box_offset_y_lower。[0080]包围盒原点z坐标高位部分(bounding_box_offset_z_upper)字段,用于表示包围盒z坐标高于16位的位数,包围盒原点z坐标高位部分(bounding_box_offset_z_upper)字段的值为无符号整数。包围盒原点z坐标低位部分(bounding_box_offset_z_lower)字段,用于表示包围盒原点z坐标低16位,包围盒原点z坐标低位部分(bounding_box_offset_z_lower)字段的值为无符号整数。包围盒原点z坐标即为:bounding_box_offset_z=(bounding_box_offset_z_upper)《《16+bounding_box_offset_z_lower。[0081]包围盒宽度高位部分(bounding_box_size_width_upper)字段,用于表示包围盒宽度高于16位的位数,包围盒宽度高位部分(bounding_box_size_width_upper)字段的值为无符号整数。包围盒宽度低位部分(bounding_box_size_width_lower)字段,用于表示包围盒宽度低16位,包围盒宽度高位部分(bounding_box_size_width_upper)字段的值为无符号整数。包围盒宽度即为:bounding_box_size_width=(bounding_box_size_width_upper)《《16+bounding_box_size_width_lower。[0082]包围盒高度高位部分(bounding_box_size_height_upper)字段,用于表示包围盒高度高于16位的位数,包围盒高度高位部分(bounding_box_size_height_upper)字段的值为无符号整数。包围盒高度低位部分(bounding_box_size_height_lower)字段,用于表示包围盒高度低16位,包围盒高度高位部分(bounding_box_size_height_upper)字段的值为无符号整数。包围盒高度即为:bounding_box_size_height=(bounding_box_size_height_upper)《《16+bounding_box_size_height_lower。[0083]包围盒深度高位部分(bounding_box_size_depth_upper)字段,用于表示包围盒深度高于16位的位数,包围盒深度高位部分(bounding_box_size_depth_upper)字段的值为无符号整数。包围盒深度低位部分(bounding_box_size_depth_lower)字段,用于表示包围盒深度低16位,包围盒深度高位部分(bounding_box_size_depth_upper)字段的值为无符号整数。包围盒深度即为:bounding_box_size_depth=(bounding_box_size_depth_upper)《《16+bounding_box_size_depth_lower。[0084]量化步长高位部分(quant_step_lower)字段,用于表示量化步长32位浮点数的高16位,量化步长高位部分(quant_step_lower)字段的值为16位数。量化步长低位部分(quant_step_upper)字段,用于表示量化步长32位浮点数的低16位,量化步长低位部分(quant_step_upper)字段的值为16位数。量化步长即为:quant_step=(float)((quant_step_upper《《16)+quant_step_lower)。[0085]几何移除重复点标志(geomremoveduplicateflag)字段,该字段的值为二值变量。当几何移除重复点标志(geomremoveduplicateflag)字段取值为‘1’时,表示几何编码前去除重复点,即几何位置相同的点;当几何移除重复点标志(geomremoveduplicateflag)字段取值为‘0’时,表示不去除重复点。[0086]属性存在标志(attribute_present_flag)字段,该字段的值为二值变量。当属性存在标志(attribute_present_flag)字段取值为‘1’时,表示本码流包含属性编码;当属性存在标志(attribute_present_flag)字段取值为‘0’时,表示本码流不包含属性编码。[0087]最大属性数减一(maxnumattributesminus1)字段,该字段的值为无符号整数。最大属性数减一(maxnumattributesminus1)字段的值加1表示当前标准码流支持的最大属性编码数目。最大属性数减一(maxnumattributesminus1)字段的取值范围为[0,15]之间的整数。当码流中不包含最大属性数减一(maxnumattributesminus1)字段的时候,默认最大属性数减一(maxnumattributesminus1)字段的值为0。[0088]属性自适应预测标志(attribute_adapt_pred)字段,该字段的值为二值变量。当属性自适应预测标志(attribute_adapt_pred)字段取值为‘0’时,表示无自适应选择预测值方法;当属性自适应预测标志(attribute_adapt_pred)字段取值为‘1’时,表示允许从基于几何位置的预测值方法切换到基于属性值的预测值方法。[0089]属性量化参数(attribute_qp)字段,用于表示属性量化参数,属性量化参数(attribute_qp)字段的值为无符号整数。[0090]此外,ue(v)为无符号整数指数哥伦布码编码的语法元素,左位在先。se(v)为有符号整数指数哥伦布码编码的语法元素,左位在先。u(n)为n位无符号整数。在语法表中,如果n是‘v’,其比特数由其它语法元素值确定。f(n)为n位固定模式比特串。[0091]点云帧的解码指示信息包括几何头信息,几何头的语法可参见下述表2:[0092]表2[0093][0094]其中,几何参数集标识(geometry_parameter_set_id)字段,用于提供一个几何参数识别符,供其它语法元素参考,该识别符是一个界于0到31的整数。[0095]几何序列参数集标识(geometry_sequence_parameter_set_id)字段,用于确定一个序列参数集(sequenceparameterset,sps)识别符供当前几何参数集合使用。该识别符是一个界于0到31的整数,对于同一点云下所有几何参数集合来说,几何序列参数集标识(geometry_sequence_parameter_set_id)字段的值保持一致。[0096]几何宏块的节点大小(gps_lcu_node_size_log2_minus_one)字段,该字段的值为无符号整数。当几何宏块的节点大小(gps_lcu_node_size_log2_minus_one)字段取值为‘0’时,表示关闭块结构编码;当几何宏块的节点大小(gps_lcu_node_size_log2_minus_one)字段取值大于‘0’时,表示打开块结构编码,并且定义了宏块的几何节点大小,即:gps_lcu_node_size_log2=gps_lcu_node_size_log2_minus_one+1。[0097]几何隐式划分标志(gps_implicit_geom_partition_flag)字段,该字段的值为二值变量。当几何隐式划分标志(gps_implicit_geom_partition_flag)字段取值为‘0’时,表示关闭几何隐式划分;当几何隐式划分标志(gps_implicit_geom_partition_flag)字段取值为‘1’时,表示打开几何隐式划分。[0098]在八叉树划分前最大四叉树/二叉树划分数量(gps_max_num_implicit_qtbt_before_ot)字段,用于表示在几何隐式划分中,在八叉树划分之前,最大被允许的四叉树或者二叉树划分数量。该字段的值为无符号整数。[0099]四叉树/二叉树划分的最小尺寸(gps_min_size_implicit_qtbt)字段,用于表示在几何隐式划分中,四叉树或者二叉树划分最小被允许的划分尺寸。该字段的值为无符号整数。[0100]几何孤立点编码模式标志(gps_single_mode_flag)字段,该字段的值为二值变量。当几何孤立点编码模式标志(gps_single_mode_flag)字段的取值为‘0’时,表示关闭几何孤立点编码模式;当几何孤立点编码模式标志(gps_single_mode_flag)字段的取值为‘1’时,表示打开几何孤立点编码模式。[0101]需要说明的是,当几何隐式划分标志(gps_implicit_geom_partition_flag)字段的取值为‘1’时,在八叉树划分前最大四叉树/二叉树划分数量(gps_max_num_implicit_qtbt_before_ot)字段和四叉树/二叉树划分的最小尺寸(gps_min_size_implicit_qtbt)字段需要根据根节点对数尺寸进行限制,具体过程如表3所示:[0102]表3[0103][0104][0105]几何编码状态存储标志(gps_save_stat_flag)字段,该字段的值为二值变量。当几何编码状态存储标志(gps_save_stat_flag)字段的取值为‘0’时,表示不存储编码状态(即熵编码上下文和几何编码的哈希表信息);当几何编码状态存储标志(gps_save_stat_flag)字段的取值为‘1’时,表示存储编码状态。[0106]此外,ue(v)为无符号整数指数哥伦布码编码的语法元素,左位在先。u(n)为n位无符号整数。[0107]点云帧的解码指示信息还包括属性头信息,属性头的语法可参见下述表4:[0108]表4[0109][0110][0111][0112]其中,属性参数集标识(attribute_parameter_set_id)字段,用于提供一个属性参数识别符,供其它语法元素参考,该识别符是一个界于0到31的整数。[0113]属性序列参数集标识(attribute_sequence_parameter_set_id)字段,用于确定一个序列参数集(sequenceparameterset,sps)识别符供当前属性参数集合使用。该识别符是一个界于0到31的整数,对于同一点云下所有属性参数集合来说,属性序列参数集标识(attribute_sequence_parameter_set_id)字段的值保持一致。[0114]属性存在标志(attributepresentflag[attridx])字段,该字段的值为二值变量。当属性存在标志(attributepresentflag[attridx])字段的取值为‘1’时,表示当前码流包含第attridx属性编码;当属性存在标志(attributepresentflag[attridx])字段的取值为‘0’时,表示当前码流不包含第attridx属性编码。attridx是一个界于0到15的整数。其含义由tablex属性编码映射表指示,tablex属性编码映射表如下表5:[0115]表5[0116]attr_idx取值属性说明0颜色1反射率2..15保留[0117]属性变换算法标志(transform)字段,用于控制是否使用小波变换对属性编码。该字段的值为二值变量,当属性变换算法标志(transform)字段的取值为‘1’时,表示使用小波变换;当属性变换算法标志(transform)字段的取值为‘0’时,表示使用预测方法对属性编码。[0118]属性变换系数量化参数差值(attrtransformqpdelta)字段,用于表示与属性残差量化参数的差值。该字段的值为无符号整数。属性变换系数量化参数attrtransformqp=attrquantparam+attrtransformqpdelta[0119]属性变换点数(attrtransformnumpoints)字段,用于表示属性变换的点数(即使用attrtransformnumpoints点的小波变换)。当属性变换点数(attrtransformnumpoints)字段的取值为0时,表示使用片中所有的点进行小波变换。该字段的值为无符号整数。[0120]最大搜索的邻居点数对数值减七(maxnumofneighbour_log2_minus7)字段,用于导出变量maxnumofneighbour,表示可用于搜索的最大已编码邻居数目以控制在属性预测时邻居候选点的搜索范围及硬件缓存的点的数目,该字段的值为无符号整数;其中,maxnumofneighbour通过如下公式求得:[0121]maxnumofneighbour=2(maxnumofneighbor_log2_minus7+7)[0122]其中,maxnumofneighbour_log2_minus7是一个界于0到3的整数。[0123]属性残差二次预测(cross_component_pred)字段的值为二值变量。当属性残差二次预测(cross_component_pred)字段的取值为‘1’时,表示允许属性残差二次预测;当属性残差二次预测(cross_component_pred)字段的取值为‘0’时,表示不允许属性残差二次预测。[0124]零游程值减半打开标志(half_zero_runlength_enable)字段的值为二值变量。当零游程值减半打开标志(half_zero_runlength_enable)字段的取值为‘1’时,表示使用零游程减半;当零游程值减半打开标志(half_zero_runlength_enable)字段的取值为‘0’时,表示不使用零游程减半。[0125]色度通道cb量化参数偏移量(chromaqpoffsetcb)字段,用于控制cb通道量化参数,该字段的值为有符号整数,取值范围为-16~16。需要说明的是,如果当前属性头信息中不存在chromaqpoffsetcb,则表示chromaqpoffsetcb的值为0。即choramqpcb=clip3(minqp,maxqp,attribute_qp+chromaqpoffsetcb)。其中,亮度通道的量化参数lumaqp=attribute_qp,最小所支持的量化参数为minqp=0,最大所支持的量化参数为maxqp=63。[0126]色度通道cr量化参数偏移量(chromaqpoffsetcr)字段,用于控制cr通道量化参数,该字段的值为有符号整数,取值范围为-16~16。需要说明的是,如果当前属性头信息中不存在chromaqpoffsetcr,则表示chromaqpoffsetcr的值为0。即choramqpcr=clip3(minqp,maxqp,attribute_qp+chromaqpoffsetcr)。其中,亮度通道的量化参数lumaqp=attribute_qp,最小所支持的量化参数为minqp=0,最大所支持的量化参数为maxqp=63。[0127]最近邻点预测参数一(nearestpredparam1)字段,用于控制最近邻点预测的阈值,该字段的值为无符号整数。[0128]最近邻点预测参数二(nearestpredparam2)字段,用于控制最近邻点预测的阈值,该字段的值为无符号整数。具体地,最近邻点预测的阈值为:[0129]attrquantparam*nearestpredparam1+nearestpredparam1[0130]空间偏倚系数(axisbias)字段,用于控制属性预测值计算中在z方向上的偏移量,该字段的值为无符号整数。[0131]属性输出比特深度减一(outputbitdepthminus1)字段,用于控制属性输出比特深度。该字段的值为无符号整数,取值范围界于0到15之间。属性输出比特深度outputbitdepth=outputbitdepthminus1+1。需要说明的是,如果该语法元素不在码流里,则表示属性输出比特深度减一(outputbitdepthminus1)字段的取值为默认值(0)。[0132]lod层数(numoflevelofdetail)字段,用于控制在属性预测时划分的多细节层次(levelsofdetail,lod)的层数。该字段的值为无符号整数。符合当前部分的码流中,numoflevelofdetail的值不应大于32。[0133]最大选取的用于预测的邻居点数(maxnumofpredictneighbours)字段,用于限制在属性预测时所选邻居点的点数。该字段的值为无符号整数。符合当前部分的码流中,maxnumofpredictneighbours的值不应大于16。[0134]lod层内预测标志(intralodflag)字段,用于控制是否开启层内的预测。该字段的值为二值变量,当lod层内预测标志(intralodflag)字段的取值为‘1’时,表示开启层内预测;当lod层内预测标志(intralodflag)字段的取值为‘0’时,表示关闭层内预测。[0135]颜色重排序模式(colorreordermode)字段,用于表示当前颜色信息选择的重排序模式。该字段的值为无符号整数。当颜色重排序模式(colorreordermode)字段的取值为“0”时,表示采用原始点云输入顺序;当颜色重排序模式(colorreordermode)字段的取值为“1”时,表示采用hilbert重排序;当颜色重排序模式(colorreordermode)字段的取值为“2”时,表示采用morton重排序。[0136]反射率重排序模式(refreordermode)字段,用于表示当前反射率信息选择的重排序模式。该字段的值为无符号整数。当反射率重排序模式(refreordermode)字段的取值为“0”时,表示采用原始点云输入顺序;当反射率重排序模式(refreordermode)字段的取值为“1”时,表示采用hilbert重排序;当反射率重排序模式(refreordermode)字段的取值为“2”时,表示采用morton重排序。[0137]属性编码顺序(attrencodeorder)字段,用于在当点云包含多种属性类型时,控制属性的编码顺序。该字段的值为二值变量。当属性编码顺序(attrencodeorder)字段的取值为‘0’时,表示先编码颜色,再编码反射率;当属性编码顺序(attrencodeorder)字段的取值为‘1’时,表示先编码反射率,再编码颜色。[0138]跨类型的属性预测(crossattrtypepred)字段,用于指示是否允许垮类型的属性预测。该字段的值为二值变量,当跨类型的属性预测(crossattrtypepred)字段的取值为‘1’时,表示允许跨类型的属性预测;当跨类型的属性预测(crossattrtypepred)字段的取值为‘0’时,表示不允许跨类型的属性预测。[0139]跨类型的属性预测权重参数1(crossattrtypepredparam1)字段,用于控制跨类型的属性预测中,计算几何信息距离和属性信息距离的权重参数1。该字段的值为15位无符号整数。[0140]跨类型的属性预测权重参数2(crossattrtypepredparam2)字段,用于控制跨类型的属性预测中,计算几何信息距离和属性信息距离的权重参数2。该字段的值为21位无符号整数。[0141]反射率组预测标志(refgrouppred)字段,用于控制是否开启预测变换的反射率组预测模式。该字段的值为二值变量,当反射率组预测标志(refgrouppred)字段的取值为‘1’时,表示开启组预测;当反射率组预测标志(refgrouppred)字段的取值为‘0’时,表示关闭组预测。[0142]此外,ue(v)为无符号整数指数哥伦布码编码的语法元素,左位在先。se(v)为有符号整数指数哥伦布码编码的语法元素,左位在先。u(n)为n位无符号整数。在语法表中,如果n是‘v’,其比特数由其它语法元素值确定。[0143]点云帧的解码指示信息还包括属性片头,属性片头的语法可参见下述表6:[0144]表6[0145][0146]其中,片标号(slice_id)字段,用于指示属性片的标号,该字段的值为无符号整数。ue(v)为无符号整数指数哥伦布码编码的语法元素,左位在先。[0147]由上述序列头以及点云帧的解码指示信息可知,虽然属性数据存在一个属性头(attribute_header)来指示属性相关的参数,但存在如下问题:(1)每个点云帧由几何头,属性头和一个或多个点云片数据组成。但一个点云属性片中,包含了全部的属性数据,无法将不同的点云属性对应到不同的点云属性片中。(2)对于某一种类型的点云属性来说,只能存在一组该类型的点云数据。[0148]基于此,本技术提出一种点云媒体的数据处理方法,通过对码流高层语法层面的字段进行扩展,将点云属性的类型和唯一标识符进行区分,支持多个属性头来指示属性相关的参数,并支持包含同一种点云类型的多组点云数据。本技术可应用于点云媒体系统的内容制作设备,内容消费设备以及中间节点等环节。点云序列是位流的最高层语法结构,点云序列由序列头开始,此外点云序列还包括一个或多个点云帧的码流数据,每个点云帧的码流数据对应有解码指示信息,点云帧的解码指示信息包括几何头,属性头和一个或多个点云片数据;其中,点云片包括点云几何片和点云属性片,点云几何片由几何片头与几何信息组成;点云属性片由属性片头和属性信息组成。下面以扩展现视频编码标准(audiovideocodingstandard,avs),以及基于几何的点云压缩(geometry-basedpointcloudcompression,gpcc)码流高层语法来定义点云高层语法信息指示方法的形式进行举例说明。高层语法元素包括序列头、属性头以及属性片头。在一种实现方式中,点云帧的解码指示信息中存在多个属性头,每个属性头对应一个或多个点云属性片,这些点云属性片中的属性标识符字段的值相同。序列头的扩展如表7所示:[0149]表7[0150][0151][0152]其中,属性标识符(attributeidentifier)字段,用于指示点云帧的属性数据,点云帧的每种类型的属性数据的各组数据实例对应的属性标识符字段的值不同(即每种类型的属性数据的一组数据实例对应一个独一无二的属性数据标识符)。(比如,若码流中包含两组不同的颜色数据,则每一组颜色数据实例对应的属性标识符字段的值不同)[0153]属性切片数据类型(attributeslicedatatype)字段,用于指示点云片中属性数据的类型。当属性切片数据类型(attributeslicedatatype)字段的取值为0时,表示点云片中仅包含颜色类型的属性数据;当属性切片数据类型(attributeslicedatatype)字段的取值为1时,表示点云片中仅包含反射率类型的属性数据;当属性切片数据类型(attributeslicedatatype)字段的取值为2时,表示点云片中包含颜色类型的属性数据和反射率类型的属性数据,且在属性预测时允许跨越这两种属性类型。序列头中的其余字段的语法可参见上述表1,在此不再赘述。[0154]与上述表7对应的属性头的扩展如表8所示:[0155]表8[0156][0157][0158][0159]属性头(表8)中各个字段的语法可参见上述表4和表7,在此不再赘述。[0160]与上述表7和表8对应的属性片头的扩展如表9所示:[0161]表9[0162][0163]属性片头(表9)中各个字段的语法可参见上述表6和表7,在此不再赘述。[0164]在另一种实现方式中,点云帧的解码指示信息中存在一个属性头。通过分别指示属性标识符(attributeidentifier)字段和属性切片数据类型(attributeslicedatatype)字段,可以区分点云属性片中的属性数据,以及确定点云属性片与属性头的对应关系,并支持包含同一点云类型的多组点云数据。序列头的扩展可参数上述表7,属性头的扩展如表10所示:[0165]表10[0166][0167][0168]属性头(表10)中各个字段的语法可参见上述表4和表7,在此不再赘述。[0169]与上述表7和表10对应的属性数据比特流(general_attribute_data_bitstream)的扩展如表11所示:[0170]表11[0171][0172][0173]属性数据比特流(general_attribute_data_bitstream)中各个字段的语法可参见上述表7,在此不再赘述。[0174]本技术实施例中,通过属性标识符字段和属性切片数据类型字段对点云帧的属性数据进行指示,能够对点云帧的属性数据进行区分;并通过属性标识符字段建立属性头与序列头、属性片头/属性数据比特流的对应关系,使得点云帧的解码指示信息可以包括至少两个属性头,并支持包含同一种点云类型的多组点云数据,丰富了点云媒体的解码指示方式,从而能够支持更灵活的文件封装与传输方式以及更多样化的点云应用形式。[0175]图2为本技术实施例提供的一种点云媒体的数据处理方法的流程图;该方法可由点云媒体系统中的内容消费设备来执行,该方法包括以下步骤s201和步骤s202:[0176]s201、获取点云媒体的媒体文件。[0177]媒体文件包括点云帧的码流数据和点云帧的解码指示信息,每个点云帧的解码指示信息包括至少两个属性头(attribute_header),每个属性头中包括属性标识符(attributeidentifier)字段,该字段用于指示点云帧的属性数据,点云帧的每种类型的属性数据的各组数据实例对应的属性标识符字段的值不同(即每种类型的属性数据的一组数据实例对应一个独一无二的属性数据标识符),属性标识符字段的值为八位无符号整数。[0178]在一种实现方式中,每个点云帧的解码指示信息还包括一个或多个点云片数据,每个点云片数据包括点云属性片,点云属性片包括属性片头(attribute_slice_header),属性片头包括属性标识符字段。每个点云属性片可以通过属性片头中的属性标识符字段的值索引至相应的属性头。[0179]每个属性头对应一个或多个点云属性片,且每个属性头中的属性标识符字段的值与该属性头对应的点云属性片中的属性标识符字段的值匹配。也就是说,内容消费设备可以通过属性头中的属性标识符字段的值,确定与该属性头对应的一个或多个点云属性片。属性头和属性片头的具体指示方式可参考上述表8和表9,在此不再赘述。[0180]在一种实现方式中,点云帧的码流数据包括属性数据比特流(general_attribute_data_bitstream),属性数据比特流中包括属性标识符字段。[0181]属性头中的属性标识符字段的取值的数量为n,n为正整数;该属性头对应m个属性数据比特流,m为大于等于n的整数;属性头中的属性标识符字段的值与属性数据比特流中的属性标识符字段的值匹配。也就是说,内容消费设备基于属性头中当前的属性标识符字段的值,可以确定点云帧的码流数据中至少一个属性标识符字段的值与属性头中当前的属性标识符字段的值相匹配的属性数据比特流。属性头和属性比特流的具体指示方式可参考上述表10和表11,在此不再赘述。[0182]在一种实现方式中,每个点云帧的码流数据包括一种或多种类型的属性数据;每种类型的属性数据包括一组或多组数据实例;每种类型的属性数据的各组数据实例对应的属性标识符字段的值不同;例如,若点云帧的码流数据中包含两组不同的颜色数据,则每一组颜色数据实例对应的属性标识符字段的值不同。[0183]在一种实现方式中,每个属性头中还包括属性切片数据类型(attributeslicedatatype)字段,属性切片数据类型字段用于指示属性标识符字段所指示的属性数据的类型,属性切片数据类型字段的值为四位无符号整数。[0184]具体来说,当属性切片数据类型字段的取值为第一设定值时(如attributeslicedatatype=0),用于指示属性标识符字段所指示的属性数据为颜色类型属性数据;当属性切片数据类型字段的取值为第二设定值时(如attributeslicedatatype=1),用于指示属性标识符字段所指示的属性数据为反射率类型属性数据;当属性切片数据类型字段的取值为第三设定值时(如attributeslicedatatype=2),用于指示属性标识符字段所指示的属性数据包括颜色类型属性数据和反射率类型属性数据。此外,当属性切片数据类型字段的取值为第三设定值时(如attributeslicedatatype=2),表示在属性预测时允许在不同类型属性数据之间切换;例如,在颜色类型属性数据和反射率类型属性数据之间进行切换。[0185]在一种实现方式中,码流数据可以包括一组或多组属性数据的数据实例;媒体文件还包括序列头(sequence_header),序列头用于指示码流数据中包含的属性数据的数据实例组数,各组数据实例对应的属性标识符字段,以及各组数据实例对应的属性切片数据类型字段。[0186]在一种实施方式中,内容消费设备获取点云媒体全部的组件轨道,不同属性组件轨道中封装的属性数据对应的属性标识符字段的值不同,内容消费设备根据点云帧的解码指示信息,以及点云帧的应用形式,或者自身解码能力,确定解码所需的属性组件轨道。在得到解码所需的属性组件轨道后,内容消费设备对这些属性组件轨道进行解封装,得到所需的码流数据。[0187]在另一种实施方式中,内容消费设备获取点云媒体的传输信令文件,并根据传输信令文件中的描述信息,以及点云帧的应用形式,或者自身解码能力,或者当前网络条件(如网络传输速度),确定呈现点云媒体所需的媒体文件,并通过流化传输方式拉取所确定的点云媒体的媒体文件。媒体文件中包含解码所需的属性组件轨道,内容消费设备对这些属性组件轨道进行解封装,得到所需的码流数据。[0188]s202、根据码流数据和解码指示信息,呈现点云媒体。[0189]内容消费设备根据点云帧的解码指示信息对点云帧的码流数据进行解码,以呈现点云媒体。内容消费设备端的解码过程与内容制作设备端的编码过程是相逆的,内容消费设备根据解码指示信息对编码比特流进行解码,还原出点云数据。并根据媒体呈现描述信息中与渲染、视窗相关的元数据对得到的点云数据进行渲染,得到点云媒体的点云帧,并根据点云帧的呈现时间呈现点云媒体。内容消费设备对媒体文件进行解码以呈现点云媒体的具体实施方式可参见图1d中点云媒体的解码和呈现的实施方式,在此不再赘述。[0190]本技术实施例中,获取点云媒体的媒体文件,媒体文件包括点云帧的码流数据和点云帧的解码指示信息,每个点云帧的解码指示信息包括至少两个属性头,每个属性头中包括属性标识符字段;根据码流数据和解码指示信息,呈现点云媒体。可见,通过属性标识符字段,能够对点云帧的属性数据进行区分,并通过至少两个属性头进行指示;此外,还通过属性切片数据类型字段对属性数据的类型进行区分,丰富了点云媒体的解码指示方式,内容消费设备可以根据需求灵活地选择所需的点云媒体的媒体文件进行传输和解码消费。[0191]图3为本技术实施例提供的另一种点云媒体的数据处理方法的流程图;该方法可由点云媒体系统中内容制作设备来执行,该方法包括以下步骤s301-步骤s303:[0192]s301、获取点云媒体的点云帧,并对点云帧进行编码处理得到点云帧的码流数据。[0193]码流数据可以包括一组或多组属性数据的数据实例。步骤s301的具体实施方式可参见图1d中获取点云媒体的媒体内容,以及点云媒体的媒体内容的编码的实施方式,在此不再赘述。[0194]s302、根据码流数据,生成点云帧的解码指示信息。[0195]每个点云帧的解码指示信息包括至少两个属性头(attribute_header),每个属性头中包括属性标识符字段;该字段用于指示点云帧的属性数据,点云帧的每种类型的属性数据的各组数据实例对应的属性标识符字段的值不同(即每种类型的属性数据的一组数据实例对应一个独一无二的属性数据标识符),属性标识符字段的值为八位无符号整数。[0196]在一种实施方式中,内容制作设备根据点云帧的码流数据生成序列头(sequence_header),序列头用于指示所述码流数据中包含的属性数据的数据实例组数,各组数据实例对应的属性标识符字段,以及各组数据实例对应的属性切片数据类型字段。在得到序列头后,内容制作设备根据序列头,生成点云帧的解码指示信息。[0197]在一种实现方式中,每个点云帧的解码指示信息还包括一个或多个点云片数据,每个点云片数据包括点云属性片,点云属性片包括属性片头(attribute_slice_header),属性片头包括属性标识符字段。每个点云属性片可以通过属性片头中的属性标识符字段的值索引至相应的属性头。[0198]每个属性头对应一个或多个点云属性片,且每个属性头中的属性标识符字段的值与该属性头对应的点云属性片中的属性标识符字段的值匹配。也就是说,内容消费设备可以通过属性头中的属性标识符字段的值,确定与该属性头对应的一个或多个点云属性片。属性头和属性片头的具体指示方式可参考上述表8和表9,在此不再赘述。[0199]在一种实现方式中,点云帧的码流数据包括属性数据比特流(general_attribute_data_bitstream),属性数据比特流中包括属性标识符字段。[0200]属性头中的属性标识符字段的取值的数量为n,n为正整数;该属性头对应m个属性数据比特流,m为大于等于n的整数;属性头中的属性标识符字段的值与属性数据比特流中的属性标识符字段的值匹配。也就是说,内容消费设备基于属性头中当前的属性标识符字段的值,可以确定点云帧的码流数据中至少一个属性标识符字段的值与属性头中当前的属性标识符字段的值相匹配的属性数据比特流。属性头和属性比特流的具体指示方式可参考上述表10和表11,在此不再赘述。[0201]在一种实现方式中,每个点云帧的码流数据包括一种或多种类型的属性数据;每种类型的属性数据包括一组或多组数据实例;每种类型的属性数据的各组数据实例对应的属性标识符字段的值不同;例如,若点云帧的码流数据中包含两组不同的颜色数据,则每一组颜色数据实例对应的属性标识符字段的值不同。[0202]在一种实现方式中,每个属性头中还包括属性切片数据类型(attributeslicedatatype)字段,属性切片数据类型字段用于指示属性标识符字段所指示的属性数据的类型,属性切片数据类型字段的值为四位无符号整数。[0203]具体来说,当属性切片数据类型字段的取值为第一设定值时(如attributeslicedatatype=0),用于指示属性标识符字段所指示的属性数据为颜色类型属性数据;当属性切片数据类型字段的取值为第二设定值时(如attributeslicedatatype=1),用于指示属性标识符字段所指示的属性数据为反射率类型属性数据;当属性切片数据类型字段的取值为第三设定值时(如attributeslicedatatype=2),用于指示属性标识符字段所指示的属性数据包括颜色类型属性数据和反射率类型属性数据。此外,当属性切片数据类型字段的取值为第三设定值时(如attributeslicedatatype=2),表示在属性预测时允许在不同类型属性数据之间切换;例如,在颜色类型属性数据和反射率类型属性数据之间进行切换。[0204]s303、对码流数据和解码指示信息进行封装,得到点云媒体的媒体文件。[0205]在一种实施方式中,内容制作设备对序列头,码流数据和解码指示信息进行封装,得到点云媒体的媒体文件。[0206]可选的,在得到点云媒体的媒体文件后,内容制作设备对媒体文件进行切片得到多个媒体片段;以及,生成媒体文件的传输信令文件,传输信令文件用于对轨道中封装的点云数据进行描述,使得内容消费设备可以根据传输信令文件的描述,以及自身需求灵活地选择所需的点云媒体的媒体文件进行传输和解码消费。[0207]下面通过一个完整的例子对本技术提供的点云媒体的数据处理方法进行说明:[0208]内容制作设备根据点云帧的码流数据中包含的几何信息、属性数据,定义如下的高层语法信息:[0209]a)在序列头中指示点云帧的码流数据中包含的属性数据的数据实例组数,各组数据实例对应的属性标识符字段,以及各组数据实例对应的属性切片数据类型字段;其中包括:[0210]maxnumattributesminus1=1;[0211]{attributeidentifier=0;attributeslicedatatype=0}[0212]{attributeidentifier=1;attributeslicedatatype=0}[0213]其中,maxnumattributesminus1=1表示当前码流数据支持的最大属性编码数目为2(即当前码流数据中包含两组数据实例);{attributeidentifier=0;attributeslicedatatype=0}表示当前码流数据中一组数据实例对应的属性标识符为0,且该组数据实例的类型为颜色类型;{attributeidentifier=1;attributeslicedatatype=0}表示当前码流数据中另一组数据实例对应的属性标识符为1,且该组数据实例的类型为颜色类型。[0214]b)内容制作设备根据序列头中的信息,定义解码每个点云帧所需的几何头(参数集合)以及至少两个属性头(参数集合);其中,每个点云帧的码流数据中均包含2个属性头(attributeheader),且属性头中的属性标识符(attributeidentifier)字段的值,以及属性切片数据类型(attributeslicedatatype)字段的值与序列头中的信息一一对应。[0215]c)内容制作设备根据序列头中的信息,定义相应的点云几何片和点云属性片,每个点云属性片通过点云属性片sliceheader中的attributeidentifier字段索引至相应的属性头(参数集合)。[0216]接着,内容制作设备根据高层语法信息,将点云帧的码流数据封装至3个文件轨道,包括1个几何组件轨道和2个属性组件轨道,这两个属性组件轨道分别对应属性标识符为0,以及属性标识符为1的两组数据实例。[0217]在一种实现方式中,内容制作设备将点云媒体全部的组件轨道发送给内容消费设备,内容消费设备在获取点云媒体全部的组件轨道后,根据自身解码能力,或者点云媒体的应用形式部分解码所需的属性组件轨道。[0218]在另一种实现方式中,内容制作设备生成点云媒体的mpd信令,并传输给内容消费设备,内容消费设备在接收点云媒体的mpd信令后,根据传输带宽、自身解码能力、或者点云媒体的应用形式,请求几何组件轨道和特定的某个属性组件轨道,部分传输并解码所需的属性组件轨道。[0219]本技术实施例中,获取点云媒体的点云帧,并对点云帧进行编码处理得到点云帧的码流数据;根据码流数据,生成点云帧的解码指示信息,每个点云帧的解码指示信息包括至少两个属性头,每个属性头中包括属性标识符字段;对码流数据和解码指示信息进行封装,得到点云媒体的媒体文件。可见,通过属性标识符字段,能够对点云帧的属性数据进行区分,并通过至少两个属性头进行指示,此外,还通过属性切片数据类型字段对属性数据的类型进行区分,丰富了点云媒体的解码指示方式,使得内容消费设备可以根据需求灵活地选择所需的点云媒体的媒体文件进行传输和解码消费。[0220]上述详细阐述了本技术实施例的方法,为了便于更好地实施本技术实施例的上述方案,相应地,下面提供了本技术实施例的装置。[0221]请参见图4,图4为本技术实施例提供的一种点云媒体的数据处理装置的结构示意图;该点云媒体的数据处理装置可以是运行于内容消费设备中的一个计算机程序(包括程序代码),例如该点云媒体的数据处理装置可以是内容消费设备中的一个应用软件。由图4所示,该点云媒体的数据处理装置包括获取单元401和处理单元402。[0222]请参见图4,在一个示例性实施例中,各个单元的详细描述如下:[0223]获取单元401,用于获取点云媒体的媒体文件,媒体文件包括点云帧的码流数据和点云帧的解码指示信息,每个点云帧的解码指示信息包括至少两个属性头,每个属性头中包括属性标识符字段;[0224]处理单元402,用于根据码流数据和解码指示信息,呈现点云媒体。[0225]在一种实施方式中,每个点云帧的解码指示信息还包括一个或多个点云片数据,每个点云片数据包括点云属性片,点云属性片包括属性片头,属性片头包括属性标识符字段。[0226]在一种实施方式中,每个属性头对应一个或多个点云属性片,且每个属性头中的属性标识符字段的值与该属性头对应的点云属性片中的属性标识符字段的值匹配。[0227]在一种实施方式中,点云帧的码流数据包括属性数据比特流,属性数据比特流包括属性标识符字段。[0228]在一种实施方式中,属性头中的属性标识符字段的值与属性数据比特流中的属性标识符字段的值匹配。[0229]在一种实施方式中,每个点云帧的码流数据包括一种或多种类型的属性数据;每种类型的属性数据包括一组或多组数据实例;不同数据实例对应的属性标识符字段的取值不同。[0230]在一种实施方式中,每个属性头中还包括属性切片数据类型字段,属性切片数据类型字段用于指示属性标识符字段所指示的属性数据的类型。[0231]在一种实施方式中,当属性切片数据类型字段的取值为第一设定值时,用于指示属性标识符字段所指示的属性数据为颜色类型属性数据;[0232]当属性切片数据类型字段的取值为第二设定值时,用于指示属性标识符字段所指示的属性数据为反射率类型属性数据;[0233]当属性切片数据类型字段的取值为第三设定值时,用于指示属性标识符字段所指示的属性数据包括颜色类型属性数据和反射率类型属性数据。[0234]在一种实施方式中,当属性切片数据类型字段的取值为第三设定值时,在属性预测时允许在不同类型属性数据之间进行切换。[0235]在一种实施方式中,媒体文件还包括序列头,序列头用于指示码流数据中包含的属性数据的数据实例组数,各组数据实例对应的属性标识符字段,以及各组数据实例对应的属性切片数据类型字段。[0236]在一种实施方式中,获取单元401还用于:[0237]获取点云媒体的传输信令文件,传输信令文件包括点云媒体的描述信息;[0238]基于点云媒体的描述信息,确定呈现点云媒体所需的媒体文件;[0239]通过流化传输方式拉取所确定的点云媒体的媒体文件。[0240]根据本技术的一个实施例,图2所示的点云媒体的数据处理方法所涉及的部分步骤可由图4所示的点云媒体的数据处理装置中的各个单元来执行。例如,图2中所示的步骤s201可由图4所示的获取单元401执行,步骤s202可由图4所示的处理单元402执行。图4所示的点云媒体的数据处理装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本技术的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本技术的其它实施例中,点云媒体的数据处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。[0241]根据本技术的另一个实施例,可以通过在包括中央处理单元(cpu)、随机存取存储介质(ram)、只读存储介质(rom)等处理元件和存储元件的例如计算机的通用计算装置上运行能够执行如图2中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图4中所示的点云媒体的数据处理装置,以及来实现本技术实施例的点云媒体的数据处理方法。计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算装置中,并在其中运行。[0242]基于同一发明构思,本技术实施例中提供的点云媒体的数据处理装置解决问题的原理与有益效果与本技术方法实施例中点云媒体的数据处理方法解决问题的原理和有益效果相似,可以参见方法的实施的原理和有益效果,为简洁描述,在这里不再赘述。[0243]请参见图5,图5为本技术实施例提供的另一种点云媒体的数据处理装置的结构示意图;该点云媒体的数据处理装置可以是运行于内容制作设备中的一个计算机程序(包括程序代码),例如该点云媒体的数据处理装置可以是内容制作设备中的一个应用软件。由图5所示,该点云媒体的数据处理装置包括获取单元501和处理单元502。请参见图5,各个单元的详细描述如下:[0244]获取单元501,用于获取点云媒体的点云帧,并对点云帧进行编码处理得到点云帧的码流数据;[0245]处理单元502,用于根据码流数据,生成点云帧的解码指示信息,每个点云帧的解码指示信息包括至少两个属性头,每个属性头中包括属性标识符字段;[0246]以及用于对码流数据和解码指示信息进行封装,得到点云媒体的媒体文件。[0247]在一种实施方式中,处理单元502用于,根据码流数据,生成点云帧的解码指示信息,具体用于:[0248]根据码流数据生成序列头,序列头用于指示码流数据中包含的属性数据的数据实例组数,各组数据实例对应的属性标识符字段,以及各组数据实例对应的属性切片数据类型字段;[0249]根据序列头,生成点云帧的解码指示信息;[0250]其中,每个点云帧的解码指示信息还包括一个或多个点云片数据,每个点云片数据包括点云属性片,点云属性片包括属性标识符字段。[0251]在一种实施方式中,处理单元502用于,对码流数据和解码指示信息进行封装,得到点云媒体的媒体文件,具体用于:[0252]对序列头,码流数据和解码指示信息进行封装,得到点云媒体的媒体文件。[0253]在一种实施方式中,处理单元502还用于:[0254]对媒体文件进行切片得到多个媒体片段;以及,[0255]生成媒体文件的传输信令文件。[0256]根据本技术的一个实施例,图3所示的点云媒体的数据处理方法所涉及的部分步骤可由图5所示的点云媒体的数据处理装置中的各个单元来执行。例如,图3中所示的步骤s301可由图5所示的获取单元501执行,步骤s302和步骤s303可由图5所示的处理单元502执行。图5所示的点云媒体的数据处理装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本技术的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本技术的其它实施例中,点云媒体的数据处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。[0257]根据本技术的另一个实施例,可以通过在包括中央处理单元(cpu)、随机存取存储介质(ram)、只读存储介质(rom)等处理元件和存储元件的例如计算机的通用计算装置上运行能够执行如图3中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图5中所示的点云媒体的数据处理装置,以及来实现本技术实施例的点云媒体的数据处理方法。计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算装置中,并在其中运行。[0258]基于同一发明构思,本技术实施例中提供的点云媒体的数据处理装置解决问题的原理与有益效果与本技术方法实施例中点云媒体的数据处理方法解决问题的原理和有益效果相似,可以参见方法的实施的原理和有益效果,为简洁描述,在这里不再赘述。[0259]图6为本技术实施例提供的一种内容消费设备的结构示意图;该内容消费设备可以是指点云媒体的使用者所使用的计算机设备,该计算机设备可以是终端(如pc、智能移动设备(如智能手机)、vr设备(如vr头盔、vr眼镜等))。如图6所示,该内容消费设备包括接收器601、处理器602、存储器603、显示/播放装置604。其中:[0260]接收器601用于实现解码与其他设备的传输交互,具体用于实现内容制作设备与内容消费设备之间关于进行点云媒体的传输。即内容消费设备通过接收器601来接收内容制作设备传输点云媒体的相关媒体资源。[0261]处理器602(或称cpu(centralprocessingunit,中央处理器))是内容制作设备的处理核心,该处理器602适于实现一条或多条程序指令,具体适于加载并执行一条或多条程序指令从而实现图2所示的点云媒体的数据处理方法的流程。[0262]存储器603是内容消费设备中的记忆设备,用于存放程序和媒体资源。可以理解的是,此处的存储器603既可以包括内容消费设备中的内置存储介质,当然也可以包括内容消费设备所支持的扩展存储介质。需要说明的是,存储器603可以是高速ram存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器的存储器。存储器603提供存储空间,该存储空间用于存储内容消费设备的操作系统。并且,在该存储空间中还用于存储计算机程序,该计算机程序包括程序指令,且该程序指令适于被处理器调用并执行,以用来执行点云媒体的数据处理方法的各步骤。另外,存储器603还可用于存储经处理器处理后形成的点云媒体的三维图像、三维图像对应的音频内容及该三维图像和音频内容渲染所需的信息等。[0263]显示/播放装置604用于输出渲染得到的声音和三维图像。[0264]再请参见图6,处理器602可包括解析器621、解码器622、转换器623和渲染器624;其中:[0265]解析器621用于对来自内容制作设备的渲染媒体的封装文件进行文件解封装,具体是按照点云媒体的文件格式要求对媒体文件资源进行解封装,得到音频码流和视频码流;并将该音频码流和视频码流提供给解码器622。[0266]解码器622对音频码流进行音频解码,得到音频内容并提供给渲染器进行音频渲染。另外,解码器622对视频码流进行解码得到2d图像。根据媒体呈现描述信息提供的元数据,如果该元数据指示点云媒体执行过区域封装过程,该2d图像是指封装图像;如果该元数据指示点云媒体未执行过区域封装过程,则该平面图像是指投影图像。[0267]转换器623用于将2d图像转换为3d图像。如果点云媒体执行过区域封装过程,转换器623还会先将封装图像进行区域解封装得到投影图像。再对投影图像进行重建处理得到3d图像。如果渲染媒体未执行过区域封装过程,转换器623会直接将投影图像重建得到3d图像。[0268]渲染器624用于对点云媒体的音频内容和3d图像进行渲染。具体根据媒体呈现描述信息中与渲染、视窗相关的元数据对音频内容及3d图像进行渲染,渲染完成交由显示/播放装置进行输出。[0269]在一个示例性实施例中,处理器602(具体是处理器包含的各器件)通过调用存储器中的一条或多条指令来执行图2所示的点云媒体的数据处理方法的各步骤。具体地,存储器存储有一条或多条第一指令,该一条或多条第一指令适于由处理器602加载并执行如下步骤:[0270]获取点云媒体的媒体文件,媒体文件包括点云帧的码流数据和点云帧的解码指示信息,每个点云帧的解码指示信息包括至少两个属性头,每个属性头中包括属性标识符字段;[0271]根据码流数据和解码指示信息,呈现点云媒体。[0272]一种实施方式中,每个点云帧的解码指示信息还包括一个或多个点云片数据,每个点云片数据包括点云属性片,点云属性片包括属性片头,属性片头包括属性标识符字段。[0273]一种实施方式中,每个属性头对应一个或多个点云属性片,且每个属性头中的属性标识符字段的值与该属性头对应的点云属性片中的属性标识符字段的值匹配。[0274]一种实施方式中,点云帧的码流数据包括属性数据比特流,属性数据比特流包括属性标识符字段。[0275]一种实施方式中,属性头中的属性标识符字段的值与属性数据比特流中的属性标识符字段的值匹配。[0276]一种实施方式中,每个点云帧的码流数据包括一种或多种类型的属性数据;每种类型的属性数据包括一组或多组数据实例;不同数据实例对应的属性标识符字段的取值不同。[0277]一种实施方式中,每个属性头中还包括属性切片数据类型字段,属性切片数据类型字段用于指示属性标识符字段所指示的属性数据的类型。[0278]一种实施方式中,当属性切片数据类型字段的取值为第一设定值时,用于指示属性标识符字段所指示的属性数据为颜色类型属性数据;[0279]当属性切片数据类型字段的取值为第二设定值时,用于指示属性标识符字段所指示的属性数据为反射率类型属性数据;[0280]当属性切片数据类型字段的取值为第三设定值时,用于指示属性标识符字段所指示的属性数据包括颜色类型属性数据和反射率类型属性数据。[0281]一种实施方式中,当属性切片数据类型字段的取值为第三设定值时,在属性预测时允许在不同类型属性数据之间进行切换。[0282]一种实施方式中,媒体文件还包括序列头,序列头用于指示码流数据中包含的属性数据的数据实例组数,各组数据实例对应的属性标识符字段,以及各组数据实例对应的属性切片数据类型字段。[0283]一种实施方式中,存储器603中的计算机程序由处理器602加载并且还执行如下步骤:[0284]获取点云媒体的传输信令文件,传输信令文件包括点云媒体的描述信息;[0285]基于点云媒体的描述信息,确定呈现点云媒体所需的媒体文件;[0286]通过流化传输方式拉取所确定的点云媒体的媒体文件。[0287]基于同一发明构思,本技术实施例中提供的内容消费设备解决问题的原理与有益效果与本技术方法实施例中点云媒体的数据处理方法解决问题的原理和有益效果相似,可以参见方法的实施的原理和有益效果,为简洁描述,在这里不再赘述。[0288]图7为本技术实施例提供的一种内容制作设备的结构示意图;该内容制作设备可以是指点云媒体的提供者所使用的计算机设备,该计算机设备可以是终端(如pc、智能移动设备(如智能手机)等)或服务器。如图7所示,该内容制作设备包括捕获设备701、处理器702、存储器703和发射器704。其中:[0289]捕获设备701用于采集现实世界的声音-视觉场景获得点云媒体的原始数据(包括在时间和空间上保持同步的音频内容和视频内容)。该捕获设备701可以包括但不限于:音频设备、摄像设备及传感设备。其中,音频设备可以包括音频传感器、麦克风等。摄像设备可以包括普通摄像头、立体摄像头、光场摄像头等。传感设备可以包括激光设备、雷达设备等。[0290]处理器702(或称cpu(centralprocessingunit,中央处理器))是内容制作设备的处理核心,该处理器702适于实现一条或多条程序指令,具体适于加载并执行一条或多条程序指令从而实现图3所示的点云媒体的数据处理方法的流程。[0291]存储器703是内容制作设备中的记忆设备,用于存放程序和媒体资源。可以理解的是,此处的存储器703既可以包括内容制作设备中的内置存储介质,当然也可以包括内容制作设备所支持的扩展存储介质。需要说明的是,存储器可以是高速ram存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器的存储器。存储器提供存储空间,该存储空间用于存储内容制作设备的操作系统。并且,在该存储空间中还用于存储计算机程序,该计算机程序包括程序指令,且该程序指令适于被处理器调用并执行,以用来执行点云媒体的数据处理方法的各步骤。另外,存储器703还可用于存储经处理器处理后形成的点云媒体文件,该点云媒体文件包括媒体文件资源和媒体呈现描述信息。[0292]发射器704用于实现内容制作设备与其他设备的传输交互,具体用于实现内容制作设备与内容播放设备之间关于进行点云媒体的传输。即内容制作设备通过发射器704来向内容播放设备传输点云媒体的相关媒体资源。[0293]再请参见图7,处理器702可包括转换器721、编码器722和封装器723;其中:[0294]转换器721用于对捕获到的视频内容进行一系列转换处理,使视频内容成为适合被执行点云媒体的视频编码的内容。转换处理可包括:拼接和投影,可选地,转换处理还包括区域封装。转换器721可以将捕获到的3d视频内容转换为2d图像,并提供给编码器进行视频编码。[0295]编码器722用于对捕获到的音频内容进行音频编码形成点云媒体的音频码流。还用于对转换器721转换得到的2d图像进行视频编码,得到视频码流。[0296]封装器723用于将音频码流和视频码流按照点云媒体的文件格式(如isobmff)封装在文件容器中形成点云媒体的媒体文件资源,该媒体文件资源可以是媒体文件或媒体片段形成点云媒体的媒体文件;并按照点云媒体的文件格式要求采用媒体呈现描述信息记录该点云媒体的媒体文件资源的元数据。封装器处理得到的点云媒体的封装文件会保存在存储器中,并按需提供给内容播放设备进行点云媒体的呈现。[0297]处理器702(具体是处理器包含的各器件)通过调用存储器中的一条或多条指令来执行图4所示的点云媒体的数据处理方法的各步骤。具体地,存储器703存储有一条或多条第一指令,该一条或多条第一指令适于由处理器702加载并执行如下步骤:[0298]获取点云媒体的点云帧,并对点云帧进行编码处理得到点云帧的码流数据;[0299]根据码流数据,生成点云帧的解码指示信息,每个点云帧的解码指示信息包括至少两个属性头,每个属性头中包括属性标识符字段;[0300]对码流数据和解码指示信息进行封装,得到点云媒体的媒体文件。[0301]一种实施方式中,处理器702根据码流数据,生成点云帧的解码指示信息的具体实施例为:[0302]根据码流数据生成序列头,序列头用于指示码流数据中包含的属性数据的数据实例组数,各组数据实例对应的属性标识符字段,以及各组数据实例对应的属性切片数据类型字段;[0303]根据序列头,生成点云帧的解码指示信息;[0304]其中,每个点云帧的解码指示信息还包括一个或多个点云片数据,每个点云片数据包括点云属性片,点云属性片包括属性标识符字段。[0305]一种实施方式中,处理器702对码流数据和解码指示信息进行封装,得到点云媒体的媒体文件的具体实施例为:[0306]对序列头,码流数据和解码指示信息进行封装,得到点云媒体的媒体文件。[0307]一种实施方式中,存储器703中的计算机程序由处理器702加载并且还执行如下步骤:[0308]对媒体文件进行切片得到多个媒体片段;以及,[0309]生成媒体文件的传输信令文件。[0310]基于同一发明构思,本技术实施例中提供的内容制作设备解决问题的原理与有益效果与本技术方法实施例中点云媒体的数据处理方法解决问题的原理和有益效果相似,可以参见方法的实施的原理和有益效果,为简洁描述,在这里不再赘述。[0311]本技术实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有一条或多条指令,一条或多条指令适于由处理器加载并执行上述方法实施例的点云媒体的数据处理方法。[0312]本技术实施例还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述方法实施例的点云媒体的数据处理方法。[0313]本技术实施例还提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述的点云媒体的数据处理方法。[0314]本技术实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。[0315]本技术实施例装置中的模块可以根据实际需要进行合并、划分和删减。[0316]本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,可读存储介质可以包括:闪存盘、只读存储器(read-onlymemory,rom)、随机存取器(randomaccessmemory,ram)、磁盘或光盘等。[0317]以上所揭露的仅为本技术一种较佳实施例而已,当然不能以此来限定本技术之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本技术权利要求所作的等同变化,仍属于申请所涵盖的范围。当前第1页12当前第1页12
技术特征:
1.一种点云媒体的数据处理方法,其特征在于,所述方法包括:获取点云媒体的媒体文件,所述媒体文件包括点云帧的码流数据和点云帧的解码指示信息,每个点云帧的解码指示信息包括至少两个属性头,每个属性头中包括属性标识符字段;根据所述码流数据和所述解码指示信息,呈现所述点云媒体。2.如权利要求1所述的方法,其特征在于,每个点云帧的解码指示信息还包括一个或多个点云片数据,每个点云片数据包括点云属性片,所述点云属性片包括属性片头,所述属性片头包括属性标识符字段。3.如权利要求2所述的方法,其特征在于,每个属性头对应一个或多个点云属性片,且每个属性头中的属性标识符字段的值与该属性头对应的点云属性片中的属性标识符字段的值匹配。4.如权利要求1所述的方法,其特征在于,所述点云帧的码流数据包括属性数据比特流,所述属性数据比特流包括属性标识符字段。5.如权利要求4所述的方法,其特征在于,所述属性头中的属性标识符字段的值与所述属性数据比特流中的属性标识符字段的值匹配。6.如权利要求1所述的方法,其特征在于,每个点云帧的码流数据包括一种或多种类型的属性数据;每种类型的属性数据包括一组或多组数据实例;不同数据实例对应的属性标识符字段的取值不同。7.如权利要求1所述的方法,其特征在于,每个属性头中还包括属性切片数据类型字段,所述属性切片数据类型字段用于指示所述属性标识符字段所指示的属性数据的类型。8.如权利要求7所述的方法,其特征在于,当所述属性切片数据类型字段的取值为第一设定值时,用于指示所述属性标识符字段所指示的属性数据为颜色类型属性数据;当所述属性切片数据类型字段的取值为第二设定值时,用于指示所述属性标识符字段所指示的属性数据为反射率类型属性数据;当所述属性切片数据类型字段的取值为第三设定值时,用于指示所述属性标识符字段所指示的属性数据包括颜色类型属性数据和反射率类型属性数据。9.如权利要求8所述的方法,其特征在于,当所述属性切片数据类型字段的取值为第三设定值时,在属性预测时允许在不同类型属性数据之间进行切换。10.如权利要求1所述的方法,其特征在于,所述媒体文件还包括序列头,所述序列头用于指示所述码流数据中包含的属性数据的数据实例组数,各组数据实例对应的属性标识符字段,以及各组数据实例对应的属性切片数据类型字段。11.如权利要求1~10任一项所述的方法,其特征在于,所述方法还包括:获取所述点云媒体的传输信令文件,所述传输信令文件包括所述点云媒体的描述信息;基于所述点云媒体的描述信息,确定呈现所述点云媒体所需的媒体文件;通过流化传输方式拉取所确定的点云媒体的媒体文件。12.一种点云媒体的数据处理方法,其特征在于,所述方法包括:获取点云媒体的点云帧,并对所述点云帧进行编码处理得到所述点云帧的码流数据;根据所述码流数据,生成点云帧的解码指示信息,每个点云帧的解码指示信息包括至
少两个属性头,每个属性头中包括属性标识符字段;对所述码流数据和所述解码指示信息进行封装,得到所述点云媒体的媒体文件。13.如权利要求12所述的方法,其特征在于,所述根据所述码流数据,生成点云帧的解码指示信息,包括:根据所述码流数据生成序列头,所述序列头用于指示所述码流数据中包含的属性数据的数据实例组数,各组数据实例对应的属性标识符字段,以及各组数据实例对应的属性切片数据类型字段;根据所述序列头,生成点云帧的解码指示信息;其中,每个点云帧的解码指示信息还包括一个或多个点云片数据,每个点云片数据包括点云属性片,所述点云属性片包括属性标识符字段。14.如权利要求13所述的方法,其特征在于,所述对所述码流数据和所述解码指示信息进行封装,得到所述点云媒体的媒体文件,包括:对所述序列头,所述码流数据和所述解码指示信息进行封装,得到所述点云媒体的媒体文件。15.如权利要求12所述的方法,其特征在于,所述方法还包括:对所述媒体文件进行切片得到多个媒体片段;以及,生成所述媒体文件的传输信令文件。16.一种点云媒体的数据处理装置,其特征在于,所述点云媒体的数据处理装置包括:获取单元,用于获取点云媒体的媒体文件,所述媒体文件包括点云帧的码流数据和点云帧的解码指示信息,每个点云帧的解码指示信息包括至少两个属性头,每个属性头中包括属性标识符字段;处理单元,用于根据所述码流数据和所述解码指示信息,呈现所述点云媒体。17.一种点云媒体的数据处理装置,其特征在于,所述点云媒体的数据处理装置包括:获取单元,用于获取点云媒体的点云帧,并对所述点云帧进行编码处理得到所述点云帧的码流数据;处理单元,用于根据所述码流数据,生成点云帧的解码指示信息,每个点云帧的解码指示信息包括至少两个属性头,每个属性头中包括属性标识符字段;以及用于对所述码流数据和所述解码指示信息进行封装,得到所述点云媒体的媒体文件。18.一种计算机设备,其特征在于,包括:存储装置和处理器;存储器,所述存储器中存储有计算机程序;处理器,用于加载所述计算机程序实现如权利要求1-11中任一项所述的点云媒体的数据处理方法;或者,用于加载所述计算机程序实现如权利要求12-15中任一项所述的点云媒体的数据处理方法。19.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序适于被处理器加载并执行如权利要求1-11中任一项所述的点云媒体的数据处理方法;或者,加载并执行如权利要求12-15中任一项所述的点云媒体的数据处理方法。20.一种计算机程序产品,其特征在于,所述计算程序产品包括计算机程序,所述计算
机程序适于被处理器加载并执行如权利要求1-11中任一项所述的点云媒体的数据处理方法;或者,加载并执行如权利要求12-15中任一项所述的点云媒体的数据处理方法。

技术总结
本申请实施例提供一种点云媒体的数据处理方法、装置、设备及计算机可读存储介质。其中的方法包括:获取点云媒体的点云帧,并对点云帧进行编码处理得到点云帧的码流数据;根据码流数据,生成点云帧的解码指示信息,每个点云帧的解码指示信息包括至少两个属性头,每个属性头中包括属性标识符字段;对码流数据和解码指示信息进行封装,得到点云媒体的媒体文件。可见,通过属性标识符字段,能够对点云帧的属性数据进行区分,并通过至少两个属性头进行指示,丰富了点云媒体的解码指示方式,使得内容消费设备可以根据需求灵活地选择所需的点云媒体的媒体文件进行传输和解码消费。媒体的媒体文件进行传输和解码消费。媒体的媒体文件进行传输和解码消费。


技术研发人员:胡颖
受保护的技术使用者:腾讯科技(深圳)有限公司
技术研发日:2022.03.11
技术公布日:2023/9/20
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

航空商城 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

评论

相关推荐