点云数据处理方法、装置、存储介质及电子装置与流程

    专利2022-07-07  111


    本发明实施例涉及通信领域,具体而言,涉及一种点云数据处理方法、装置、存储介质及电子装置。



    背景技术:

    沉浸媒体技术中对三维世界的描述方式包括多种,除了vr全景视频外,还可以将激光雷达或者摄像机矩阵将一个三维物体直接数字化,以独立的点和面表示三维物体,即三维点云(pointcloud)。点云是空间中一组无规则分布的、表达三维物体或场景的空间结构及表面属性的离散点集。点云中的每个点至少具有三维位置信息,根据应用场景不同,还可能具有色彩、材质或其他信息。点云可以通过多个摄像头和深度传感器捕获,其中点数可以达到几千到几十亿,点和点之间没有联系、没有顺序,可以进行随意的排序,因此点云以其灵活方便的表达形式、较高的数据精度,引起了业界的广泛关注。

    与其他容积媒体格式相比,点云相对容易捕获和渲染,应用场景包括:自动驾驶,实时巡检、文化遗产、6dof沉浸式实时通信等。根据点云时间信息表示,可以将点云分为静态点云及动态点云两大类别。对于静态点云的应用场景,如城市、街道等大型静态点云,用户在应用点云数据时通常只需关注部分点云数据,而无需获取完整点云对象,例如:

    1)地理信息系统等大型复杂场景点云数据,根据地理区域选择场景、随机查看;数字文化遗产支持根据视点透视选择,虚拟游览;

    2)大型复杂场景、地图支持由远及近、由粗到细查看;数字文化遗产支持渐进式渲染、画面缩放、细节查看;

    3)针对多个点云对象关联应用的场景,根据对象选择部分3d点云进行解码、渲染。

    针对上述应用场景,用户只关注部分区域的点云数据或包含部分细节的点云数据,而现有针对静态点云的技术方案中,解码器通常需要遍历完整点云码流之后才能识别出用户所需的部分点云数据,而对于大型点云对象,例如城市场景、地图导航等,此方案解析效率低、耗时长;并且现有的静态点云存储方案中,通常以整个对象作为存储单位,不利于并行解码,灵活度较低。

    针对相关技术中通常需要遍历完整点云数据之后才能识别出用户所需的部分点云数据,导致解析效率低、耗时长的问题,尚未提出解决方案。



    技术实现要素:

    本发明实施例提供了一种点云数据处理方法、装置、存储介质及电子装置,以至少解决相关技术中通常需要遍历完整点云数据之后才能识别出用户所需的部分点云数据,导致解析效率低、耗时长的问题。

    根据本发明的一个实施例,提供了一种点云数据处理方法,所述方法包括:

    确定包含3d场景的空间区域信息的静态几何编码点云数据,其中,所述静态几何编码点云数据通过点云项目数据表示;

    解码所述静态几何编码点云数据中对应所述3d场景的部分空间区域的部分项目数据;

    根据解码后的数据渲染所述3d场景的部分空间区域。

    在一实施例中,所述点云项目数据通过元信息数据盒中的项目类型确定,其中,所述项目类型至少包括:点云项目、点云分块项目、点云空间区域项目。

    在一实施例中,所述解码所述静态几何编码点云数据中对应所述3d场景的部分空间区域的部分项目数据包括:

    在所述项目类型为所述点云项目的情况下,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性确定对应于一个或多个分块的所述部分项目数据,解码所述部分项目数据。

    在一实施例中,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性数据盒确定对应于一个或多个分块的所述部分项目数据包括:

    根据所述子样本项目特性中第一子样本数据类型和分块标识符确定对应于一个或多个分块的部分项目数据。

    在一实施例中,所述解码所述静态几何编码点云数据中对应所述3d场景的部分空间区域的部分项目数据包括:

    在所述项目类型为所述点云项目的情况下,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性,以及3d空间区域项目特性确定对应于一个或多个空间区域的所述部分项目数据,解码所述部分项目数据。

    在一实施例中,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性,以及3d空间区域项目特性确定对应于一个或多个空间区域的所述部分项目数据包括:

    根据子样本项目特性中第二子样本数据类型和空间区域标识符确定对应于一个或多个空间区域的所述部分项目数据。

    在一实施例中,所述3d空间区域项目特性包括:

    空间区域数量,空间区域描述信息,空间区域包含的分块数量,空间区域包含的分块对应标识符。

    在一实施例中,所述空间区域描述信息包括:空间区域标识符,锚点坐标,空间区域的长、宽、高。

    在一实施例中,所述解码所述静态几何编码点云数据中对应所述3d场景的部分空间区域的部分项目数据包括:

    在所述项目类型为点云分块项目的情况下,根据点云全集群组识别包含所述3d静态场景的点云数据;

    根据点云配置项目特性中的点云分块集、所述元信息数据盒中一个或多个点云分块项目确定对应于一个或多个分块的所述部分项目数据,解码所述部分项目数据。

    在一实施例中,所述点云分块项目包含点云分块集中描述的单个分块,其中,所述一个或多个分块中的每个分块表示点云空间区域中可独立解码的数据子集。

    在一实施例中,所述确定基于空间区域划分的部分静态点云数据包括:

    在所述项目类型为点云空间区域项目的情况下,根据点云全集群组识别包含所述3d静态场景的点云数据;

    根据所述元信息数据盒中一个或多个点云空间区域项目,与点云空间项目关联的空间区域描述项目特性,确定对应于一个或多个点云空间区域的部分项目数据。

    在一实施例中,所述一个或多个点云空间区域中的每个点云空间区域对应于空间区域描述项目特性描述的单个空间区域。

    在一实施例中,所述空间区域描述项目特性包括:空间区域标识符,锚点坐标,空间区域的长、宽、高。

    在一实施例中,所述点云全集群组包括:

    完整点云对象中最多划分的部分访问的点云子集的数量、点云子集的类型、点云子集的标识符,其中,所述点云子集包括:根据分块划分的点云子集、根据空间区域划分的点云子集。

    在一实施例中,所述解码所述静态几何编码点云数据中对应所述3d场景的部分空间区域的部分项目数据包括:

    在所述项目类型为点云空间区域项目的情况下,根据区域标记群组确定用于指示标记场景的部分项目数据,解码所述部分项目数据。

    在一实施例中,所述区域标记群组至少包括标记类型、标记文本,所述指示标记场景的部分点云项目通过所述标记类型、所述标记文本来描述。

    在一实施例中,所述方法还包括:

    确定并获取与所述部分项目数据相关联的一个或多个媒体资源;

    在解码所述部分项目数据的同时,对所述一个或多个媒体资源进行解码;

    在根据解码后的数据渲染所述3d场景的部分空间区域的同时,对所述一个或多个媒体资源进行播放。

    在一实施例中,所述确定并获取与所述部分项目数据相关联的一个或多个媒体资源包括:

    根据多实体播放群组确定并获取与所述部分项目数据相关联的一个或多个媒体资源。

    在一实施例中,所述媒体资源至少包括:视频、音频、动态点云。

    在一实施例中,所述点云项目数据由几何项目数据、一种或多种属性项目数据构成。

    根据本发明的另一个实施例,还提供了一种点云数据处理方法,所述方法包括:

    确定包含3d场景的层级细节信息的静态几何编码点云数据,其中,所述静态几何编码点云数据通过云项目数据表示;

    解码所述静态几何编码点云数据中对应所述3d场景的部分层级细节的部分项目数据;

    根据解码后的数据渲染所述3d场景的部分层级细节。

    在一实施例中,所述点云项目数据通过元信息数据盒中的项目类型确定,所述项目类型至少包括:点云项目、点云层级项目。

    在一实施例中,解码所述静态几何编码点云数据中对应所述3d场景的部分层级细节的部分项目数据包括:

    在所述项目类型为点云项目的情况下,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性确定对应于一个或多个层级的部分项目数据,解码所述部分项目数据。

    在一实施例中,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性数据盒确定对应于一个或多个层级的部分项目数据包括:

    根据子样本项目特性中第三子样本数据类型和层级值确定对应于一个或多个层级的部分项目数据。

    在一实施例中,所述解码所述静态几何编码点云数据中对应所述3d场景的部分层级细节的部分项目数据还包括:

    在所述项目类型为点云层级项目的情况下,根据点云全集群组识别包含所述3d静态场景全部细节的点云数据;

    根据所述元信息数据盒中一个或多个点云层级项目,以及与点云层级项目关联的层级细节项目特性确定对应于一个或多个层级的部分项目数据,解码所述部分项目数据。

    在一实施例中,所述一个或多个层级中的每个层级对应于层级细节项目特性描述的单个层级。

    在一实施例中,所述层级细节项目特性至少包括:点云层级值,层级点数。

    在一实施例中,所述点云全集群组包括:

    完整点云对象中最多划分的部分访问的点云子集的数量、点云子集的类型、点云子集的标识符,其中,所述点云子集包括根据层级细节划分的点云子集。

    在一实施例中,所述方法还包括:

    确定并获取与所述部分项目数据相关联的一个或多个媒体资源;

    在解码所述部分项目数据是同时,对所述一个或多个媒体资源进行解码;

    在根据解码后的数据渲染所述3d场景的部分层级细节的同时,对所述一个或多个媒体资源进行播放。

    在一实施例中,所述确定并获取与所述部分项目数据相关联的一个或多个媒体资源包括:

    根据多实体播放群组确定并获取与所述部分项目数据相关联的一个或多个媒体资源。

    在一实施例中,所述媒体资源至少包括:视频、音频、动态点云。

    在一实施例中,所述点云项目数据由几何项目数据、一种或多种属性项目数据构成,所述几何项目数据和属性项目数据均划分为多个层级,每个层级由分布均匀的一组点集构成。

    根据本发明的另一个实施例,还提供了一种点云数据处理装置,所述装置包括:

    第一确定模块,用于确定包含3d场景的空间区域信息的静态几何编码点云数据,其中,所述静态几何编码点云数据通过点云项目数据表示;

    第一解码模块,用于解码所述静态几何编码点云数据中对应所述3d场景的部分空间区域的部分项目数据;

    第一渲染模块,用于根据解码后的数据渲染所述3d场景的部分空间区域。

    在一实施例中,所述点云项目数据通过元信息数据盒中的项目类型,其中,所述项目类型至少包括:点云项目、点云分块项目、点云空间区域项目。

    在一实施例中,所述第一确定模块包括:

    第一确定子模块,用于在所述项目类型为所述点云项目的情况下,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性确定对应于一个或多个分块的所述部分项目数据,解码所述部分项目数据。

    在一实施例中,所述第一确定子模块,还用于

    根据所述子样本项目特性中第一子样本数据类型和分块标识符确定对应于一个或多个分块的部分项目数据。

    在一实施例中,所述第一确定模块包括:

    第二确定子模块,用于在所述项目类型为所述点云项目的情况下,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性,以及3d空间区域项目特性确定对应于一个或多个空间区域的所述部分项目数据,解码所述部分项目数据。

    在一实施例中,所述第二确定子模块,还用于

    根据子样本项目特性中第二子样本数据类型和空间区域标识符确定对应于一个或多个空间区域的所述部分项目数据。

    在一实施例中,所述3d空间区域项目特性包括:

    空间区域数量,空间区域描述信息,空间区域包含的分块数量,空间区域包含的分块对应标识符。

    在一实施例中,所述空间区域描述信息包括:空间区域标识符,锚点坐标,空间区域的长、宽、高。

    在一实施例中,所述第一确定模块包括:

    第一识别子模块,用于在所述项目类型为点云分块项目的情况下,根据点云全集群组识别包含所述3d静态场景的点云数据;

    第三确定子模块,用于根据点云配置项目特性中的点云分块集、所述元信息数据盒中一个或多个点云分块项目确定对应于一个或多个分块的所述部分项目数据,解码所述部分项目数据。

    在一实施例中,所述点云分块项目包含点云分块集中描述的单个分块,其中,所述一个或多个分块中的每个分块表示点云空间区域中可独立解码的数据子集。

    在一实施例中,所述第一确定模块包括:

    第二识别子模块,用于在所述项目类型为点云空间区域项目的情况下,根据点云全集群组识别包含所述3d静态场景的点云数据;

    第四确定子模块,用于根据所述元信息数据盒中一个或多个点云空间区域项目,与点云空间项目关联的空间区域描述项目特性,确定对应于一个或多个点云空间区域的部分项目数据,解码所述部分项目数据。

    在一实施例中,所述一个或多个点云空间区域中的每个点云空间区域对应于空间区域描述项目特性描述的单个空间区域。

    在一实施例中,所述空间区域描述项目特性包括:空间区域标识符,锚点坐标,空间区域的长、宽、高。

    在一实施例中,所述点云全集群组包括:

    完整点云对象中最多划分的部分访问的点云子集的数量、点云子集的类型、点云子集的标识符,其中,所述点云子集包括:根据分块划分的点云子集、根据空间区域划分的点云子集。

    在一实施例中,所述第一确定模块包括:

    第五确定子模块,用于在所述项目类型为点云空间区域项目的情况下,根据区域标记群组确定用于指示标记场景的部分项目数据,解码所述部分项目数据。

    在一实施例中,所述区域标记群组至少包括标记类型、标记文本,所述指示标记场景的部分点云项目通过所述标记类型、所述标记文本来描述。

    在一实施例中,所述装置还包括:

    第一确定资源模块,用于确定并获取与所述部分项目数据相关联的一个或多个媒体资源;

    第一解码资源模块,用于在解码所述部分项目数据同时,对所述一个或多个媒体资源进行解码;

    第一播放模块,用于在根据解码后的数据渲染所述3d场景的部分空间区域的同时,对所述一个或多个媒体资源进行播放。

    在一实施例中,所述第一确定资源模块,还用于

    根据多实体播放群组确定并获取与所述部分项目数据相关联的一个或多个媒体资源。

    在一实施例中,所述媒体资源至少包括:视频、音频、动态点云。

    在一实施例中,所述点云项目数据由几何项目数据、一种或多种属性项目数据构成。

    根据本发明的另一个实施例,还提供了一种点云数据处理装置,所述装置包括:

    第二确定模块,用于确定包含3d场景的层级细节信息的静态几何编码点云数据,其中,所述静态几何编码点云数据通过云项目数据表示;

    第二解码模块,用于解码所述静态几何编码点云数据中对应所述3d场景的部分层级细节的部分项目数据;

    第二渲染模块,用于根据解码后的数据渲染所述3d场景的部分层级细节。

    在一实施例中,所述点云项目数据通过元信息数据盒中的项目类型确定,所述项目类型至少包括:点云项目、点云层级项目。

    在一实施例中,所述第二确定模块包括:

    第六确定子模块,用于在所述项目类型为点云项目的情况下,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性确定对应于一个或多个层级的部分项目数据,解码所述部分项目数据。

    在一实施例中,所述第六确定子模块,还用于

    根据子样本项目特性中第三子样本数据类型和层级值确定对应于一个或多个层级的部分项目数据。

    在一实施例中,所述第二确定模块包括:

    第二识别子模块,用于在所述项目类型为点云层级项目的情况下,根据点云全集群组识别包含所述3d静态场景全部细节的点云数据;

    第七确定子模块,用于根据所述元信息数据盒中一个或多个点云层级项目,以及与点云层级项目关联的层级细节项目特性确定对应于一个或多个层级的部分项目数据,解码所述部分项目数据。

    在一实施例中,所述一个或多个层级中的每个层级对应于层级细节项目特性描述的单个层级。

    在一实施例中,所述层级细节项目特性至少包括:点云层级值,层级点数。

    在一实施例中,所述点云全集群组包括:

    完整点云对象中最多划分的部分访问的点云子集的数量、点云子集的类型、点云子集的标识符,其中,所述点云子集包括根据层级细节划分的点云子集。

    在一实施例中,所述装置还包括:

    第二确定资源模块,用于确定并获取与所述部分项目数据相关联的一个或多个媒体资源;

    第二解码资源模块,用于在解码所述部分项目数据同时,对所述一个或多个媒体资源进行解码;

    第二播放模块,用于在根据解码后的数据渲染所述3d场景的部分层级细节的同时,对所述一个或多个媒体资源进行播放。

    在一实施例中,所述第二确定资源模块包括:

    第八确定子模块,用于根据多实体播放群组确定并获取与所述部分项目数据相关联的一个或多个媒体资源。

    在一实施例中,所述媒体资源至少包括:视频、音频、动态点云。

    在一实施例中,所述点云项目数据由几何项目数据、一种或多种属性项目数据构成,所述几何项目数据和属性项目数据均划分为多个层级,每个层级由分布均匀的一组点集构成。

    根据本发明的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。

    根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。

    通过本发明,可以解决相关技术中通常需要遍历完整点云数据之后才能识别出用户所需的部分点云数据,导致解析效率低、耗时长的问题,根据用户需求确定所需的部分项目数据,使得无需遍历完整的点云数据即可获取到所需的部分项目数据,提高了解码效率,缩短了解码时间,也缩短了用户的渲染等待时间。

    附图说明

    图1是本发明实施例的点云数据处理方法的移动终端的硬件结构框图;

    图2是根据本发明实施例的点云数据处理方法的流程图一;

    图3是根据本发明实施例的点云数据处理方法的流程图二;

    图4是根据本实施例的静态点云单项目存储结构的示意图;

    图5是根据本实施例的静态点云多项目存储结构的示意图;

    图6是根据本实施例的基于subsample的静态点云存储的示意图;

    图7是根据本实施例的基于空间区域的subsample划分的示意图;

    图8是根据本实施例的基于tileitem的静态点云存储的示意图;

    图9是根据本实施例的基于3dregionproperty与subsample的静态点云存储的示意图;

    图10是根据本实施例的基于regionitem的静态点云存储的示意图;

    图11是根据本实施例的基于层级信息的subsample划分的示意图;

    图12是根据本实施例的基于layeritem的静态点云存储的示意图;

    图13是根据本实施例的基于空间区域以及层级细节的静态点云存储的示意图;

    图14是根据本实施例的静态点云空间区域标记的示意图;

    图15是根据本实施例的静态点云与动态点云关联存储的示意图;

    图16是根据本实施例的点云数据处理装置的框图一;

    图17是根据本实施例的点云数据处理装置的框图二。

    具体实施方式

    下文中将参考附图并结合实施例来详细说明本发明的实施例。

    需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。

    本申请实施例中所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在移动终端上为例,图1是本发明实施例的点云数据处理方法的移动终端的硬件结构框图,如图1所示,移动终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器mcu或可编程逻辑器件fpga等的处理装置)和用于存储数据的存储器104,其中,上述移动终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。

    存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的数据处理方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

    传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(networkinterfacecontroller,简称为nic),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(radiofrequency,简称为rf)模块,其用于通过无线方式与互联网进行通讯。

    在本实施例中提供了一种运行于上述移动终端或网络架构的点云数据处理方法,图2是根据本发明实施例的点云数据处理方法的流程图一,如图2所示,该流程包括如下步骤:

    步骤s202,确定包含3d场景的空间区域信息的静态几何编码点云数据,其中,所述静态几何编码点云数据通过点云项目数据表示;

    本实施例中,所述点云项目数据由几何项目数据、一种或多种属性项目数据构成,所述几何项目数据和属性项目数据均划分为多个层级,每个层级的点云项目数据由分布均匀的一组点集构成。

    步骤s204,解码所述静态几何编码点云数据中对应所述3d场景的部分空间区域的部分项目数据;

    步骤s206,根据解码后的数据渲染所述3d场景的部分空间区域。

    通过上述步骤s202至s206,可以解决相关技术中通常需要遍历完整点云数据之后才能识别出用户所需的部分点云数据,导致解析效率低、耗时长的问题,根据用户需求确定所需的部分项目数据,使得无需遍历完整的点云数据即可获取到所需的部分项目数据,提高了解码效率,缩短了解码时间,也缩短了用户的渲染等待时间。

    本实施例中,所述点云项目数据通过元信息数据盒中的项目类型确定,其中,所述项目类型至少包括:点云项目、点云分块项目、点云空间区域项目。

    在一实施例中,上述步骤s204具体可以包括:在所述项目类型为所述点云项目的情况下,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性确定对应于一个或多个分块的所述部分项目数据,进一步的,根据所述子样本项目特性中第一子样本数据类型和分块标识符确定对应于一个或多个分块的部分项目数据,解码所述部分项目数据。

    在一实施例中,上述步骤s204具体可以包括:在所述项目类型为所述点云项目的情况下,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性,以及3d空间区域项目特性确定对应于一个或多个空间区域的所述部分项目数据,进一步的,根据子样本项目特性中第二子样本数据类型和空间区域标识符确定对应于一个或多个空间区域的所述部分项目数据,其中,所述3d空间区域项目特性包括:空间区域数量,空间区域描述信息,空间区域包含的分块数量,空间区域包含的分块对应标识符,所述空间区域描述信息包括:空间区域标识符,锚点坐标,空间区域的长、宽、高,解码所述部分项目数据。

    在一实施例中,上述步骤s204具体可以包括:在所述项目类型为点云分块项目的情况下,根据点云全集群组识别包含所述3d静态场景的点云数据;根据点云配置项目特性中的点云分块集、所述元信息数据盒中一个或多个点云分块项目确定对应于一个或多个分块的所述部分项目数据,解码所述部分项目数据。在一实施例中,所述点云分块项目包含点云分块集中描述的单个分块,其中,所述一个或多个分块中的每个分块表示点云空间区域中可独立解码的数据子集。

    在一实施例中,上述步骤s204具体可以包括:在所述项目类型为点云空间区域项目的情况下,根据点云全集群组识别包含所述3d静态场景的点云数据;根据所述元信息数据盒中一个或多个点云空间区域项目,与点云空间项目关联的空间区域描述项目特性,确定对应于一个或多个点云空间区域的部分项目数据,解码所述部分项目数据,其中,所述一个或多个点云空间区域中的每个点云空间区域对应于空间区域描述项目特性描述的单个空间区域。在一实施例中,所述空间区域描述项目特性包括:空间区域标识符,锚点坐标,空间区域的长、宽、高。

    在一实施例中,所述点云全集群组包括:完整点云对象中最多划分的部分访问的点云子集的数量、点云子集的类型、点云子集的标识符,其中,所述点云子集包括:根据分块划分的点云子集、根据空间区域划分的点云子集。

    在一实施例中,上述步骤s202具体可以包括:在所述项目类型为点云空间区域项目的情况下,根据区域标记群组确定用于指示标记场景的部分项目数据,解码所述部分项目数据。其中,所述区域标记群组至少包括标记类型、标记文本,所述指示标记场景的部分点云项目通过所述标记类型、所述标记文本来描述。

    在一实施例中,确定并获取与所述部分项目数据相关联的一个或多个媒体资源,具体的,可以根据多实体播放群组确定并获取与所述部分项目数据相关联的一个或多个媒体资源;在解码所述部分项目数据同时,对所述一个或多个媒体资源进行解码;在根据解码后的数据渲染所述3d场景的部分空间区域的同时,对所述一个或多个媒体资源进行播放。在一实施例中,所述媒体资源至少包括:视频、音频、动态点云。

    根据本发明的另一个实施例,还提供了一种点云数据处理方法,图3是根据本发明实施例的点云数据处理方法的流程图二,如图3所示,该流程包括如下步骤:

    步骤s302,确定包含3d场景的层级细节信息的静态几何编码点云数据,其中,所述静态几何编码点云数据通过云项目数据表示;

    本实施例中,所述点云项目数据由几何项目数据、一种或多种属性项目数据构成,所述几何项目数据和属性项目数据均划分为多个层级,每个层级由分布均匀的一组点集构成。

    步骤s304,解码所述静态几何编码点云数据中对应所述3d场景的部分层级细节的部分项目数据;

    步骤s306,根据解码后的数据渲染所述3d场景的部分层级细节。

    通过上述步骤s302至s306,可以解决相关技术中通常需要遍历完整点云数据之后才能识别出用户所需的部分点云数据,导致解析效率低、耗时长的问题,根据用户需求确定所需的部分项目数据,使得无需遍历完整的点云数据即可获取到所需的部分项目数据,提高了解码效率,缩短了解码时间,也缩短了用户的渲染等待时间。

    本实施例中,所述点云项目数据通过元信息数据盒中的项目类型确定,所述项目类型至少包括:点云项目、点云层级项目。

    在一实施例中,上述步骤s304具体可以包括:在所述项目类型为点云项目的情况下,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性确定对应于一个或多个层级的部分项目数据,进一步的,可以根据子样本项目特性中第三子样本数据类型和层级值确定对应于一个或多个层级的部分项目数据,解码所述部分项目数据。

    在一实施例中,上述步骤s304具体可以包括:在所述项目类型为点云层级项目的情况下,根据点云全集群组识别包含所述3d静态场景全部细节的点云数据;根据所述元信息数据盒中一个或多个点云层级项目,以及与点云层级项目关联的层级细节项目特性确定对应于一个或多个层级的部分项目数据,解码所述部分项目数据,其中,所述一个或多个层级中的每个层级对应于层级细节项目特性描述的单个层级;所述层级细节项目特性至少包括:点云层级值,层级点数。

    在一实施例中,所述点云全集群组包括:完整点云对象中最多划分的部分访问的点云子集的数量、点云子集的类型、点云子集的标识符,其中,所述点云子集包括根据层级细节划分的点云子集。

    在一实施例中,确定并获取与所述部分项目数据相关联的一个或多个媒体资源,具体的,可以根据多实体播放群组确定并获取与所述部分项目数据相关联的一个或多个媒体资源;在解码所述部分项目数据同时,对所述一个或多个媒体资源进行解码;在根据解码后的数据渲染所述3d场景的部分层级细节的同时,对所述一个或多个媒体资源进行播放。

    本实施例中,所述媒体资源至少包括:视频、音频、动态点云。

    本实施例,能够利用isointernationalorganizationforstandardization,国际标准化组织)基本媒体文件格式对不包含时间信息的3d点云压缩数据进行描述,支持3d点云空间区域信息及层级信息描述,进而提供点云数据的部分访问机制,以使解码器能够根据用户空间位置、观看方向等信息选取部分3d点云数据进行解析、解码、渲染,提高静态点云处理效率。3d点云的部分访问至少包括以下两种方式:基于空间区域的部分访问;基于层级细节的渐进式访问。本实施例中利用isobmff媒体文件格式中的项目(item)以及相关数据盒存储静态3d点云数据及部分访问所需的元数据信息,能够满足多种场景下3d点云部分访问的需要,具体语义在实施例中进一步描述。

    本实施例实现方式是基于iso(基本媒体文件格式将静态3d点云的空间位置信息、层级信息、关联关系信息存储在媒体文件中。基本媒体文件格式可参照iso/iecjtc1/sc29/wg11运动图像专家组(movingpictureexpertsgroup,简称mpeg)制定的mpeg-4part12isobasemediafileformat来操作。其中静态点云压缩数据格式可参照iso/iecjtc1/sc29/wg11运动图像专家组(mpeg)制定的mpeg-ipart9:geometry-basedpointcloudcompression(g-pcc)基于几何编码的点云压缩技术来操作。

    isobmff媒体文件中所有数据都装在数据盒(box)中,并可以在数据盒头部描述其类型和大小;如果一个box支持嵌套(一个box中包含另一个子box),则将该数据盒称为支持嵌套的数据盒(containerbox)。isobmff媒体文件中的静态数据(例如图像)通常以”item”格式存储,元信息数据盒(metabox)可以存放项目的描述信息、元数据,也可以包含具体的载荷,元信息数据盒中支持多个静态媒体对象的集成存储,例如图集(imagecollection)。

    静态点云数据支持两种基本封装方式:

    1)单项目(single-item):图4是根据本实施例的静态点云单项目存储结构的示意图,如图4所示,以单个项目封装g-pcc点云的全部几何数据和属性数据,序列参数集(sequenceparameterset,简称为sps)、属性参数集(attributeparameterset,aps)、几何参数集(geometryparameterset,简称为gps)等参数信息以及分块集(tileinventory)等通用元数据信息在项目特性(itemproperty)中描述,类型为“gpcc”,与点云项目(g-pccitem)关联。

    2)多项目(multiple-item):图5是根据本实施例的静态点云多项目存储结构的示意图,如图5所示,g-pcc点云的几何数据及属性数据分别封装在多个item中,即完整点云包含一个点云几何项目(g-pccgeometryitem)与一个或多个点云属性项目(g-pccattributeitem),如图2。点云sps、aps、gps等参数信息以及tileinventory等通用元数据信息在itemproperty中描述,与多个几何数据、属性数据等多个item关联,点云的几何项目通过类型为‘gpcg’的项目引用数据盒(itemreferencebox,iref)引用一个或多个属性项目。

    本实施例均支持single-item、multiple-item两种静态点云基本封装格式,实施例进一步详细说明中以single-item封装格式为例进行扩展定义,仅仅用以解释本发明,并不用于限定本发明

    示例一:基于空间区域的静态点云部分访问

    本实施例描述基于空间区域的静态3d点云部分访问方法,以及点云空间区域信息在媒体文件的描述方法。对于支持基于空间区域部分访问的静态g-pcc点云压缩数据,每个空间区域对应的点云数据均支持独立解码、渲染。

    在本实施例场景中,支持四种实施方式:

    将完整的点云数据存储在单个item中,通过分块集提供的包围盒(bondingbox)信息、子样本项目特性(sub-sampleitemproperty)描述点云数据的tile划分,终端可以根据用户需求灵活选择一个或多个分块子样本(tilesub-sample)完成解码、渲染等操作;

    将点云数据根据空间区域不同存储在多个点云分块项目(g-pcctileitem)中,与分块集中的区域划分一一对应,终端可以选择一个或多个分块项目完成解码、渲染等。

    将完整的点云数据存储在单个item中,通过3d空间区域项目特性(3dregionitemproperty)、子样本项目特性描述点云数据的3d空间区域划分,终端可以选择一个或多个区域子样本(regionsub-sample)完成解码、渲染等操作;

    将点云数据根据空间区域不同存储在多个点云空间区域项目(g-pccregionitem)中,每个区域项目通过空间区域项目特性(regiondescriptionitemproperty)描述空间区域范围,终端可以选择一个或多个区域项目完成解码、渲染等。

    终端解析流程包括:

    1)终端根据以下项目类型之一识别元信息数据盒中的包含静态点云数据的项目:

    点云项目:gpcc、gpcg、gpca;

    点云分块项目:gpct、gptg、gpta;

    点云空间区域项目:gpcr、gprg、gpra;

    2)终端读取与点云项目关联的点云配置项目特性(g-pccconfigurationitemproperty),读取sps、aps、gps、tileinventory等参数信息、配置信息,完成解码器初始化;

    3)终端根据以下方式之一确定静态点云数据的空间区域信息及数据范围:

    方式1:读取子样本项目特性(subsampleitemproperty),若flags为,1,且data_type为0,读取每个sub-sample指示的g-pcctile数据范围及其tile_id;

    方式2:根据点云分块项目确定g-pcctile数据范围及其tile_id;

    方式3:读取3d空间区域项目特性(3dregionitemproperty),解析各个3d空间区域坐标、范围等信息,读取子样本项目特性(subsampleitemproperty),若flags为1,且data_type为1,读取每个sub-sample指示的g-pcc3dregion数据范围及其region_id;

    方式4:根据点云空间区域项目确定g-pcc3dregion数据范围及其region_id;

    4)终端根据用户需求与空间区域信息进行计算,确定待解码的一个或多个tile或3dregion;

    5)终端读取部分g-pcc数据,输入到解码器中完成解码;

    6)渲染器渲染3d场景的部分空间区域。

    方式1:subsample描述空间区域划分

    图6是根据本实施例的基于subsample的静态点云存储的示意图,如图6所示,将完整的点云数据存储在单个item中,通过sub-sampleitemproperty属性信息描述点云数据的空间区域划分。终端根据空间区域获取的部分g-pcc点云数据最小为一个g-pcctile。tile空间位置、范围等信息在g-pccconfigurationitemproperty中描述,同时利用subsampleitemproperty描述g-pccitem中点云数据的空间区域划分,以single-item基本封装格式为例,基于subsample的存储结构如图6所示。

    对于multiple-item基本封装格式,基于subsample的存储结构与图6相似,不同之处在于静态点云访问入口为类型‘gpcg’的g-pccgeometryitem,并与g-pccconfigurationitemproperty、subsampleitemproperty两个项目特性关联,g-pccgeometryitem通过类型为‘gpca’的项目引用数据盒(itemreferencebox,iref)引用一个或多个类型为‘gpca’的g-pccattributeitem属性项目,每个属性项目与一个subsampleitemproperty关联。

    图7是根据本实施例的基于空间区域的subsample划分的示意图,如图7所示,g-pccsubsampleitemproperty如下:

    当subsampleitemproperty指示g-pccitem空间区域划分时,flags为1,codec_specific_parameters扩展语法如下:

    语义:

    data_type,指示单个sub-sample对应的空间区域类型,data_type为0表示sub-sample对应g-pcctile,data_type为0表示sub-sample对应3dregion,即多个g-pcctile;

    tile_id,指示sub-sample对应的g-pcctile标识符,与tileinventory中tile标识符一致;

    3d_region_id,指示sub-sample对应的g-pcc3dregion标识符,与3dregionitemproperty中标识符一致;

    方式2:tileitem描述空间区域划分

    图8是根据本实施例的基于tileitem的静态点云存储的示意图,如图8所示,本实施例描述基于多item的静态3d点云部分访问方法,将不同空间区域的点云数据存储在独立的g-pcctileitem中,多个regionitem通过点云全集群组数据盒(completepointcloudgroupbox)描述为完整静态3d点云,群组类型为‘cppc’,同时群组中描述包含几何数据的tileitem与tileinventory中tile_id的映射关系。以single-item基本封装格式为例,基于tileitem的静态点云存储结构如图8所示。

    对于multiple-item基本封装格式,基于tileitem的存储结构与图8相似,不同之处在于静态点云访问入口为类型‘gptg’的g-pccgeometrytileitem,并与g-pccconfigurationitemproperty项目特性关联,g-pccgeometrytileitem通过类型为‘gpca’的项目引用数据盒(itemreferencebox,iref)引用一个或多个类型为‘gpta’的属性项目。

    g-pcctileitem

    ‘gpct’类型表示g-pcctileitem,由g-pcc部分项目数据组成,每个tileitem表示属于某一分块的可独立解码点云子集,与tileinventory中的tile描述一一对应。

    ‘gptg’类型表示g-pccgeometrytileitem,由g-pcc部分项目数据组成,每个item表示属于某一分块的点云几何数据;

    ‘gpta’类型表示g-pccattributetileitem,由g-pcc部分项目数据组成,每个item表示属于某一分块的一类点云属性数据;

    partial_gpcc_num,表示完整点云对象中最多可以划分的部分访问子集数量;

    tile_enable,值为1表示此群组描述tileitem的组合关系,否则取值为0;

    region_enable,值为1表示此群组描述regionitem的组合关系,否则取值为0;

    scalable_enable,值为1表示此群组描述layeritem的组合关系,否则取值为0;

    entry_id,表示某一子集g-pccitem(tileitem、regionitem或layeritem)在entitytogroupbox中的索引;

    tile_id,描述tileitem对应的tile_id;

    3dspatialregionstruct(),描述regionitem对应的空间区域信息;

    lod_value,指示layeritem数据的层级细节高低,取值越高代表对应sub-sample数据层级越高,细节越丰富;

    本实施方式是基于tileitem描述点云的空间区域划分,completepointcloudgroupbox中tile_enable为1,region_enable、scalable_enable为0。

    方式3:3dregionproperty与subsample描述空间区域划分

    图9是根据本实施例的基于3dregionproperty与subsample的静态点云存储的示意图,如图9所示,终端根据空间区域获取的部分g-pcc点云数据最小为一个g-pcc3dregion,即一个空间区域,全部的3dregion信息通过3dregionitemproperty描述,包括空间区域数量、坐标、范围等。tile空间位置、范围等信息在g-pccconfigurationitemproperty中描述,同时利用subsampleitemproperty描述g-pccitem中点云数据的空间区域划分,以single-item基本封装格式为例,基于3dregion与subsample的静态点云存储结构如图9所示。

    对于multiple-item基本封装格式,基于subsample的存储结构与图9相似,不同之处在于静态点云访问入口为类型‘gpcg’的g-pccgeometryitem,并与g-pccconfigurationitemproperty、subsampleitemproperty、3dregionitemproperty三个项目特性关联,g-pccgeometryitem通过类型为‘gpca’的项目引用数据盒(itemreferencebox,iref)引用一个或多个类型为‘gpca’的属性项目。

    语义:

    3d_region_id,指示3d空间区域标识符;

    anchor_x、anchor_y、anchor_z,指示3d空间区域原点坐标;

    region_dx、region_dy、region_dz,指示3d空间区域x,y,z方向范围;

    num_regions,指示itemproperty中描述的3d空间区域数量;

    num_tiles,指示每个3d空间中包含的g-pcctile数量;

    tile_id,指示g-pcctile标识符,与tileinventory中tile标识符一致;

    方式4:regionitem描述空间区域划分

    图10是根据本实施例的基于regionitem的静态点云存储的示意图,如图10所示,基于多item的静态3d点云部分访问方法,将不同空间区域的点云数据存储在独立的g-pccregionitem中,通过3dregionitemproperty属性信息描述点云数据的全部空间区域划分,多个包含几何数据的regionitem通过completepointcloudgroupbox描述为完整静态3d点云,群组类型为‘cppc’。以single-item基本封装格式为例,基于regionitem的静态点云存储结构如图10所示。

    对于multiple-item基本封装格式,基于regionitem的存储结构与图10相似,不同之处在于静态点云访问入口为类型‘gprg’的g-pccgeometryregionitem,并与g-pccconfigurationitemproperty项目特性关联,g-pccgeometryregionitem通过类型为‘gpca’的项目引用数据盒(itemreferencebox,iref)引用一个或多个类型为‘gpra’的属性项目。

    g-pccregionitem

    ‘gpcr’类型表示g-pccregionitem,由g-pcc部分项目数据组成,每个regionitem表示属于某一空间区域的可独立解码点云子集。每个’gpcr’类型的item都应关联regindescriptionitem,提供空间区域描述信息。

    ‘gprg’类型表示g-pccgeometryregionitem,由g-pcc部分项目数据组成,每个item表示属于某一空间区域的点云几何数据;

    ‘gpra’类型表示g-pccattributeregionitem,由g-pcc部分项目数据组成,每个item表示属于某一空间区域的一类点云属性数据;

    completepointcloudgroupbox定义同实施方式2,本实施方式是基于regionitem描述点云的空间区域划分,completepointcloudgroupbox中region_enable为1,tile_enable、scalable_enable为0。

    示例二:基于lod(层级细节)的静态点云部分访问

    本实施例描述基于层级细节(levelofdetails,lod)的静态3d点云渐进访问方法,以及点云层级信息在媒体文件的描述方法。对于支持渐进访问的静态g-pcc点云压缩数据,其几何数据和属性数据都可以根据点的几何位置划分为多个层级,每个层级都由分布均匀的一组点集构成。层级越高,点集越稠密,能观察到的点云对象细节就越丰富;层级越低,点集越稀疏,能观察到的点云对象细节较模糊。终端获取点云压缩数据后,可以根据用户需求选择适当层级进行解码、渲染,从而在保证用户体验的同时,避免了因渲染不必要的细节而造成的解码器资源浪费。

    在本实施例场景中,支持两种实施方式:

    1)将完整的点云数据存储在单个item中,通过sps、aps参数集中描述的lod相关参数以及sub-sampleitemproperty属性信息描述点云数据的层级划分,终端可以根据用户需求灵活选择一个或多个lodsub-sample完成解码、渲染等操作;

    2)将点云数据根据lod层级不同存储在多个点云层级项目(g-pcclayeritem)中,每个layeritem通过层级细节项目特性(loddescriptionitemproperty)描述层级值、点数,终端可以选择一个或多个layeritem完成解码、渲染等。

    终端解析流程包括:

    1)终端根据以下项目类型之一识别元信息数据盒中包含静态点云数据的项目:

    点云项目:gpcc、gpcg、gpca;

    点云层级项目:gpcl、gplg、gpla;

    2)终端读取与点云项目关联的点云配置项目特性(g-pccconfigurationitemproperty),读取sps、aps、gps等参数信息、配置信息,识别lod划分层级等相关参数信息,完成解码器初始化;

    3)终端根据以下方式之一确定静态点云数据的层级细节信息以及每个层级点云数据的范围:

    方式1:读取subsample信息(subsampleitemproperty),其中flags为2,读取每个sub-sample指示的lod单个层级点云数据的层级值、点数以及数据范围;

    方式2:根据点云层级项目以及loddescriptionitemproperty确定每个层级的点云数据范围以及lod层级值、点数;

    4)终端根据用户需求、lod层级值和点数信息进行计算,确定待解码的一个或多个lod层级;

    5)终端读取部分层级的g-pcc数据,输入到解码器中完成解码;

    6)渲染器渲染包含部分细节的3d静态场景。

    方式1:subsample描述lod层级划分

    本实施例描述基于层级细节的静态3d点云渐进访问方法,以及点云层级信息在媒体文件的描述方法。对于支持渐进访问的静态g-pcc点云压缩数据,其完整的点云数据存储在单个item中,通过sub-sampleitemproperty属性信息描述点云数据的层级划分。以single-item基本封装格式为例,基于subsample的多层级静态点云存储结构如图6所示。

    对于multiple-item基本封装格式,基于subsample的存储结构与图6相似,不同之处在于静态点云访问入口为类型‘gpcg’的g-pccgeometryitem,并与g-pccconfigurationitemproperty、subsampleitemproperty两个项目特性关联,g-pccgeometryitem通过类型为‘gpca’的项目引用数据盒(itemreferencebox,iref)引用一个或多个类型为‘gpca’的属性项目。

    图11是根据本实施例的基于层级信息的subsample划分的示意图,如图11所示,g-pccsubsampleitemproperty如下:

    当subsampleitemproperty指示g-pccitem空间区域划分时,flags为2,codec_specific_parameters扩展语法如下:

    语义:

    lod_value,指示g-pccsub-sample数据的层级细节高低,取值越高代表对应sub-sample数据层级越高,细节越丰富;

    point_count,指示g-pccsub-sample包含点数;

    方式2:layeritem描述lod层级划分

    图12是根据本实施例的基于layeritem的静态点云存储的示意图,如图12所示,本实施例描述另一种基于层级细节的静态3d点云部分访问方法,将不同空间区域的点云数据存储在独立的g-pcclayeritem中,通过loddescriptionitemproperty属性信息描述layeritem的层级值、包含点数等信息,多个包含几何数据的layeritem通过类型‘gpcc’组合成为完整静态3d点云。以single-item基本封装格式为例,基于layeritem的静态点云存储结构如图12所示。

    对于multiple-item基本封装格式,基于layeritem的存储结构与图12相似,不同之处在于静态点云访问入口为类型‘gplg’的g-pccgeometrylayeritem,并与g-pccconfigurationitemproperty项目特性关联,g-pccgeometrylayeritem通过类型为‘gpca’的项目引用数据盒(itemreferencebox,iref)引用一个或多个类型为‘gpla’的属性项目。

    g-pcclayeritem

    ‘gpcl’类型表示g-pcclayeritem,由g-pcc部分项目数据组成,每个layeritem表示属于某一层级的可独立解码点云子集。每个‘gpcl’类型的item都应关联loddescriptionitemproperty,提供该层级的层级值、点数等描述信息。

    ‘gplg’类型表示g-pccgeometrylayeritem,由g-pcc部分项目数据组成,每个item表示属于某一层级的点云几何数据;

    ‘gpla’类型表示g-pccattributelayeritem,由g-pcc部分项目数据组成,每个item表示属于某一层级的一类点云属性数据;

    语义:

    lod_value,指示g-pccsub-sample数据的层级细节高低,取值越高代表对应sub-sample数据层级越高,细节越丰富;

    point_count,指示g-pccsub-sample包含点数;

    completepointcloudgroupbox

    completepointcloudgroupbox定义同实施例1,本实施方式是基于layeritem描述点云的层级划分,completepointcloudgroupbox中scalable_enable为1,tile_enable、region_enable为0。

    示例三:空间区域及lod结合的部分访问

    本实施例描述基于空间区域以及层级细节的静态3d点云部分访问方法,其中不同空间区域根据点云密集程度不同可以划分为数量不等的细节层级。图13是根据本实施例的基于空间区域以及层级细节的静态点云存储的示意图,以single-item基本封装格式为例,基于空间区域以及层级细节的静态点云存储结构如图13所示,将不同空间区域的点云数据存储在独立的g-pccregionitem中,通过subsampleitemproperty属性信息描述每个区域点云数据的层级信息,三个g-pccregionitem分别对应3层、8层、12层三种层级划分,多个regionitem通过类型‘gpcc’组合成为完整静态3d点云。

    示例四:基于创作者意图的静态点云部分访问

    本实施例还提供基于创作者意图的静态3d点云部分访问方法,对于城市、街道、大型建筑等静态3d点云,内容创作者可以在3d点云采集、编码、封装阶段对其中的点云数据进行标记,如大型建筑的楼层划分、房间划分,街道场景的街区划分等等。此外,静态3d点云场景可以与其他媒体对象关联展示,例如街道场景或数字博物馆的不同区域提供不同音频讲解,大型建筑中不同楼层对应不同的人物等动态点云对象。

    针对以上两种场景,本实施可分为两种实施方式:

    区域标记,即多个item组合;

    静态点云与动态媒体内容关联展示,即item与轨道(track)组合。

    方式1:区域标记

    图14是根据本实施例的静态点云空间区域标记的示意图,本实施方式中,通过区域标记群组数据盒(regionmarkinggroupbox)将多个不同区域的点云数据子集进行组合,并提供内容描述信息,以single-item基本封装格式为例,支持空间区域标记的静态点云存储结构如图14所示,完整的点云对象可以根据空间区域不同划分为5个regionitem,分别对应两个房间场景,通过类型为‘pcrm’的实体群组数据盒(entitytogroupbox)进行标记,并分别描述两个房间场景信息。

    regionmarkinggroupbox

    boxtypes:'pcrm'

    container:groupslistbox

    mandatory:no

    quantity:zeroormore

    aligned(8)classregionmarkinggroupboxextendsentitytogroupbox('pcrm'){

    unsignedint(8)region_type;

    stringregion_description;

    }

    语义:

    region_type,提供entitytogroup群组对应的部分项目数据标记类型;

    region_description,以空字符结尾的utf-8字符串,提供点云的标记的文本描述信息;

    方式2:静态点云与动态点云共同渲染

    图15是根据本实施例的静态点云与动态点云关联存储的示意图,通过多实体播放群组数据盒(multipleentityplayoutgroupbox)将多个不同区域的点云数据子集进行组合,并提供内容描述信息,以single-item基本封装格式为例,静态点云与动态点云关联存储结构如图15所示。

    metabox中包含的静态点云对象可以根据空间区域不同划分为个g-pccregionitem:region1、region2。g-pccregion1与电影数据盒(moviebox)中动态点云对象关联,通过multipleentityplayoutgroupbox描述关联信息,表示g-pccregion1需要与track1包含的点云数据共同展示。g-pccregion2与moviebox中动态点云对象、音频关联,通过multipleentityplayoutgroupbox描述关联信息,表示g-pccregion2需要与track2包含的点云数据、track3包含的音频数据共同展示。

    根据本发明的另一个实施例,还提供了一种点云数据处理装置,图16是根据本实施例的点云数据处理装置的框图一,如图16所示,所述装置包括:

    第一确定模块162,用于确定包含3d场景的空间区域信息的静态几何编码点云数据,其中,所述静态几何编码点云数据通过点云项目数据表示;

    第一解码模块164,用于解码所述静态几何编码点云数据中对应所述3d场景的部分空间区域的部分项目数据;

    第一渲染模块166,用于根据解码后的数据渲染所述3d场景的部分空间区域。

    在一实施例中,所述点云项目数据通过元信息数据盒中的项目类型,其中,所述项目类型至少包括:点云项目、点云分块项目、点云空间区域项目。

    在一实施例中,所述第一确定模块包括:

    第一确定子模块,用于在所述项目类型为所述点云项目的情况下,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性确定对应于一个或多个分块的所述部分项目数据,解码所述部分项目数据。

    在一实施例中,所述第一确定子模块,还用于

    根据所述子样本项目特性中第一子样本数据类型和分块标识符确定对应于一个或多个分块的部分项目数据。

    在一实施例中,所述第一确定模块包括:

    第二确定子模块,用于在所述项目类型为所述点云项目的情况下,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性,以及3d空间区域项目特性确定对应于一个或多个空间区域的所述部分项目数据,解码所述部分项目数据。

    在一实施例中,所述第二确定子模块,还用于

    根据子样本项目特性中第二子样本数据类型和空间区域标识符确定对应于一个或多个空间区域的所述部分项目数据。

    在一实施例中,所述3d空间区域项目特性包括:

    空间区域数量,空间区域描述信息,空间区域包含的分块数量,空间区域包含的分块对应标识符。

    在一实施例中,所述空间区域描述信息包括:空间区域标识符,锚点坐标,空间区域的长、宽、高。

    在一实施例中,所述第一确定模块包括:

    第一识别子模块,用于在所述项目类型为点云分块项目的情况下,根据点云全集群组识别包含所述3d静态场景的点云数据;

    第三确定子模块,用于根据点云配置项目特性中的点云分块集、所述元信息数据盒中一个或多个点云分块项目确定对应于一个或多个分块的所述部分项目数据,解码所述部分项目数据。

    在一实施例中,所述点云分块项目包含点云分块集中描述的单个分块,其中,所述一个或多个分块中的每个分块表示点云空间区域中可独立解码的数据子集。

    在一实施例中,所述第一确定模块包括:

    第二识别子模块,用于在所述项目类型为点云空间区域项目的情况下,根据点云全集群组识别包含所述3d静态场景的点云数据;

    第四确定子模块,用于根据所述元信息数据盒中一个或多个点云空间区域项目,与点云空间项目关联的空间区域描述项目特性,确定对应于一个或多个点云空间区域的部分项目数据,解码所述部分项目数据。

    在一实施例中,所述一个或多个点云空间区域中的每个点云空间区域对应于空间区域描述项目特性描述的单个空间区域。

    在一实施例中,所述空间区域描述项目特性包括:空间区域标识符,锚点坐标,空间区域的长、宽、高。

    在一实施例中,所述点云全集群组包括:

    完整点云对象中最多划分的部分访问的点云子集的数量、点云子集的类型、点云子集的标识符,其中,所述点云子集包括:根据分块划分的点云子集、根据空间区域划分的点云子集。

    在一实施例中,所述第一确定模块包括:

    第五确定子模块,用于在所述项目类型为点云空间区域项目的情况下,根据区域标记群组确定用于指示标记场景的部分项目数据,解码所述部分项目数据。

    在一实施例中,所述区域标记群组至少包括标记类型、标记文本,所述指示标记场景的部分点云项目通过所述标记类型、所述标记文本来描述。

    在一实施例中,所述装置还包括:

    第一确定资源模块,用于确定并获取与所述部分项目数据相关联的一个或多个媒体资源;

    第一解码资源模块,用于在解码所述部分项目数据同时,对所述一个或多个媒体资源进行解码;

    第一播放模块,用于在根据解码后的数据渲染所述3d场景的部分空间区域的同时,对所述一个或多个媒体资源进行播放。

    在一实施例中,所述第一确定资源模块,还用于

    根据多实体播放群组确定并获取与所述部分项目数据相关联的一个或多个媒体资源。

    在一实施例中,所述媒体资源至少包括:视频、音频、动态点云。

    在一实施例中,所述点云项目数据由几何项目数据、一种或多种属性项目数据构成。

    根据本发明的另一个实施例,还提供了一种点云数据处理装置,图17是根据本实施例的点云数据处理装置的框图二,如图17所示,所述装置包括:

    第二确定模块172,用于确定包含3d场景的层级细节信息的静态几何编码点云数据,其中,所述静态几何编码点云数据通过云项目数据表示;

    第二解码模块174,用于解码所述静态几何编码点云数据中对应所述3d场景的部分层级细节的部分项目数据;

    第二渲染模块176,用于根据解码后的数据渲染所述3d场景的部分层级细节。

    在一实施例中,所述点云项目数据通过元信息数据盒中的项目类型确定,所述项目类型至少包括:点云项目、点云层级项目。

    在一实施例中,所述第二确定模块包括:

    第六确定子模块,用于在所述项目类型为点云项目的情况下,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性确定对应于一个或多个层级的部分项目数据,解码所述部分项目数据。

    在一实施例中,所述第六确定子模块,还用于

    根据子样本项目特性中第三子样本数据类型和层级值确定对应于一个或多个层级的部分项目数据。

    在一实施例中,所述第二确定模块包括:

    第二识别子模块,用于在所述项目类型为点云层级项目的情况下,根据点云全集群组识别包含所述3d静态场景全部细节的点云数据;

    第七确定子模块,用于根据所述元信息数据盒中一个或多个点云层级项目,以及与点云层级项目关联的层级细节项目特性确定对应于一个或多个层级的部分项目数据,解码所述部分项目数据。

    在一实施例中,所述一个或多个层级中的每个层级对应于层级细节项目特性描述的单个层级。

    在一实施例中,所述层级细节项目特性至少包括:点云层级值,层级点数。

    在一实施例中,所述点云全集群组包括:

    完整点云对象中最多划分的部分访问的点云子集的数量、点云子集的类型、点云子集的标识符,其中,所述点云子集包括根据层级细节划分的点云子集。

    在一实施例中,所述装置还包括:

    第二确定资源模块,用于确定并获取与所述部分项目数据相关联的一个或多个媒体资源;

    第二解码资源模块,用于在解码所述部分项目数据同时,对所述一个或多个媒体资源进行解码;

    第二播放模块,用于在根据解码后的数据渲染所述3d场景的部分层级细节的同时,对所述一个或多个媒体资源进行播放。

    在一实施例中,所述第二确定资源模块包括:

    第八确定子模块,用于根据多实体播放群组确定并获取与所述部分项目数据相关联的一个或多个媒体资源。

    在一实施例中,所述媒体资源至少包括:视频、音频、动态点云。

    在一实施例中,所述点云项目数据由几何项目数据、一种或多种属性项目数据构成,所述几何项目数据和属性项目数据均划分为多个层级,每个层级由分布均匀的一组点集构成。

    需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。

    本发明的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。

    在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:u盘、只读存储器(read-onlymemory,简称为rom)、随机存取存储器(randomaccessmemory,简称为ram)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。

    本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。

    在一个示例性实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。

    本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。

    显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

    以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。


    技术特征:

    1.一种点云数据处理方法,其特征在于,所述方法包括:

    确定包含3d场景的空间区域信息的静态几何编码点云数据,其中,所述静态几何编码点云数据通过点云项目数据表示;

    解码所述静态几何编码点云数据中对应所述3d场景的部分空间区域的部分项目数据;

    根据解码后的数据渲染所述3d场景的部分空间区域。

    2.根据权利要求1所述的方法,其特征在于,所述点云项目数据通过元信息数据盒中的项目类型确定,其中,所述项目类型至少包括:点云项目、点云分块项目、点云空间区域项目。

    3.根据权利要求2所述的方法,其特征在于,所述解码所述静态几何编码点云数据中对应所述3d场景的部分空间区域的部分项目数据包括:

    在所述项目类型为所述点云项目的情况下,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性确定对应于一个或多个分块的所述部分项目数据,解码所述部分项目数据。

    4.根据权利要求3所述的方法,其特征在于,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性数据盒确定对应于一个或多个分块的所述部分项目数据包括:

    根据所述子样本项目特性中第一子样本数据类型和分块标识符确定对应于一个或多个分块的部分项目数据。

    5.根据权利要求2所述的方法,其特征在于,所述解码所述静态几何编码点云数据中对应所述3d场景的部分空间区域的部分项目数据包括:

    在所述项目类型为所述点云项目的情况下,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性,以及3d空间区域项目特性确定对应于一个或多个空间区域的所述部分项目数据,解码所述部分项目数据。

    6.根据权利要求5所述的方法,其特征在于,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性,以及3d空间区域项目特性确定对应于一个或多个空间区域的所述部分项目数据包括:

    根据子样本项目特性中第二子样本数据类型和空间区域标识符确定对应于一个或多个空间区域的所述部分项目数据。

    7.根据权利要求5所述的方法,其特征在于,所述3d空间区域项目特性包括:

    空间区域数量,空间区域描述信息,空间区域包含的分块数量,空间区域包含的分块对应标识符。

    8.根据权利要求7所述的方法,其特征在于,所述空间区域描述信息包括:空间区域标识符,锚点坐标,空间区域的长、宽、高。

    9.根据权利要求2所述的方法,其特征在于,所述解码所述静态几何编码点云数据中对应所述3d场景的部分空间区域的部分项目数据包括:

    在所述项目类型为所述点云分块项目的情况下,根据点云全集群组识别包含所述3d场景的点云项目数据;

    根据点云配置项目特性中的点云分块集、所述元信息数据盒中一个或多个点云分块项目确定对应于一个或多个分块的所述部分项目数据,解码所述部分项目数据。

    10.根据权利要求9所述的方法,其特征在于,所述点云分块项目包含点云分块集中描述的单个分块,其中,所述一个或多个分块中的每个分块表示点云空间区域中可独立解码的数据子集。

    11.根据权利要求2所述的方法,其特征在于,所述解码所述静态几何编码点云数据中对应所述3d场景的部分空间区域的部分项目数据包括:

    在所述项目类型为所述点云空间区域项目的情况下,根据点云全集群组识别包含所述3d静态场景的点云数据;

    根据所述元信息数据盒中一个或多个点云空间区域项目,与点云空间项目关联的空间区域描述项目特性,确定对应于一个或多个点云空间区域的所述部分项目数据,解码所述部分项目数据。

    12.根据权利要求11所述的方法,其特征在于,所述一个或多个点云空间区域中的每个点云空间区域对应于空间区域描述项目特性描述的单个空间区域。

    13.根据权利要求11所述的方法,其特征在于,所述空间区域描述项目特性包括:空间区域标识符,锚点坐标,空间区域的长、宽、高。

    14.根据权利要求9至13中任一项所述的方法,其特征在于,所述点云全集群组包括:

    完整点云对象中最多划分的部分访问的点云子集的数量、点云子集的类型、点云子集的标识符,其中,所述点云子集包括:根据分块划分的点云子集、根据空间区域划分的点云子集。

    15.根据权利要求2所述的方法,其特征在于,所述解码所述静态几何编码点云数据中对应所述3d场景的部分空间区域的部分项目数据包括:

    在所述项目类型为所述点云空间区域项目的情况下,根据区域标记群组确定用于指示标记场景的所述部分项目数据,解码所述部分项目数据。

    16.根据权利要求15所述的方法,其特征在于,所述区域标记群组至少包括标记类型、标记文本,所述指示标记场景的部分点云项目通过所述标记类型、所述标记文本来描述。

    17.根据权利要求1至13、15至16中任一项所述的方法,其特征在于,所述方法还包括:

    确定并获取与所述部分项目数据相关联的一个或多个媒体资源;

    在解码所述部分项目数据的同时,对所述一个或多个媒体资源进行解码;

    在根据解码后的数据渲染所述3d场景的部分空间区域的同时,对所述一个或多个媒体资源进行播放。

    18.根据权利要求17所述的方法,其特征在于,所述确定并获取与所述部分项目数据相关联的一个或多个媒体资源包括:

    根据多实体播放群组确定并获取与所述部分项目数据相关联的一个或多个媒体资源。

    19.根据权利要求17所述的方法,其特征在于,所述媒体资源至少包括:视频、音频、动态点云。

    20.根据权利要求1至13、15、16、18、19中任一项所述的方法,其特征在于,所述点云项目数据由几何项目数据、一种或多种属性项目数据构成。

    21.一种点云数据处理方法,其特征在于,所述方法包括:

    确定包含3d场景的层级细节信息的静态几何编码点云数据,其中,所述静态几何编码点云数据通过云项目数据表示;

    解码所述静态几何编码点云数据中对应所述3d场景的部分层级细节的部分项目数据;

    根据解码后的数据渲染所述3d场景的部分层级细节。

    22.根据权利要求21所述的方法,其特征在于,所述点云项目数据通过元信息数据盒中的项目类型确定,所述项目类型至少包括:点云项目、点云层级项目。

    23.根据权利要求22所述的方法,其特征在于,所述解码所述静态几何编码点云数据中对应所述3d场景的部分层级细节的部分项目数据包括:

    在所述项目类型为所述点云项目的情况下,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性确定对应于一个或多个层级的所述部分项目数据,解码所述部分项目数据。

    24.根据权利要求23所述的方法,其特征在于,根据所述元信息数据盒中与所述点云项目关联的子样本项目特性数据盒确定对应于一个或多个层级的所述部分项目数据包括:

    根据子样本项目特性中第三子样本数据类型和层级值确定对应于一个或多个层级的所述部分项目数据。

    25.根据权利要求22所述的方法,其特征在于,所述解码所述静态几何编码点云数据中对应所述3d场景的部分层级细节的部分项目数据包括:

    在所述项目类型为所述点云层级项目的情况下,根据点云全集群组识别包含所述3d静态场景全部细节的点云项目数据;

    根据所述元信息数据盒中一个或多个点云层级项目,以及与点云层级项目关联的层级细节项目特性确定对应于一个或多个层级的所述部分项目数据,解码所述部分项目数据。

    26.根据权利要求25所述的方法,其特征在于,所述一个或多个层级中的每个层级对应于层级细节项目特性描述的单个层级。

    27.根据权利要求25所述的方法,其特征在于,所述层级细节项目特性至少包括:点云层级值,层级点数。

    28.根据权利要求23至27中任一项所述的方法,其特征在于,所述点云全集群组包括:

    完整点云对象中最多划分的部分访问的点云子集的数量、点云子集的类型、点云子集的标识符,其中,所述点云子集包括根据层级细节划分的点云子集。

    29.根据权利要求21至27中任一项所述的方法,其特征在于,所述方法还包括:

    确定并获取与所述部分项目数据相关联的一个或多个媒体资源;

    在解码所述部分项目数据的同时,对所述一个或多个媒体资源进行解码;

    在根据解码后的数据渲染所述3d场景的部分层级细节的同时,对所述一个或多个媒体资源进行播放。

    30.根据权利要求29所述的方法,其特征在于,所述确定并获取与所述部分项目数据相关联的一个或多个媒体资源包括:

    根据多实体播放群组确定并获取与所述部分项目数据相关联的一个或多个媒体资源。

    31.根据权利要求30所述的方法,其特征在于,所述媒体资源至少包括:视频、音频、动态点云。

    32.根据权利要求21至27、30至31中任一项所述的方法,其特征在于,所述点云项目数据由几何项目数据、一种或多种属性项目数据构成,所述几何项目数据和所述属性项目数据均划分为多个层级,每个层级由分布均匀的一组点集构成。

    33.一种点云数据处理装置,其特征在于,所述装置包括:

    第一确定模块,用于确定包含3d场景的空间区域信息的静态几何编码点云数据,其中,所述静态几何编码点云数据通过点云项目数据表示;

    第一解码模块,用于解码所述静态几何编码点云数据中对应所述3d场景的部分空间区域的部分项目数据;

    第一渲染模块,用于根据解码后的数据渲染所述3d场景的部分空间区域。

    34.一种点云数据处理装置,其特征在于,所述装置包括:

    第二确定模块,用于确定包含3d场景的层级细节信息的静态几何编码点云数据,其中,所述静态几何编码点云数据通过云项目数据表示;

    第二解码模块,用于解码所述静态几何编码点云数据中对应所述3d场景的部分层级细节的部分项目数据;

    第二渲染模块,用于根据解码后的数据渲染所述3d场景的部分层级细节。

    35.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至20、21至32任一项中所述的方法。

    36.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至20、21至32任一项中所述的方法。

    技术总结
    本发明实施例提供了一种点云数据处理方法、装置、存储介质及电子装置,其中,该方法包括:确定包含3D场景的空间区域信息的静态几何编码点云数据,其中,该静态几何编码点云数据通过点云项目数据表示;解码该静态几何编码点云数据中对应该3D场景的部分空间区域的部分项目数据;根据解码后的数据渲染该3D场景的部分空间区域,可以解决相关技术中通常需要遍历完整点云数据之后才能识别出用户所需的部分点云数据,导致解析效率低、耗时长的问题,根据用户需求确定所需的部分项目数据,使得无需遍历完整的点云数据即可获取到所需的部分项目数据,提高了解码效率,缩短了解码时间,也缩短了用户的渲染等待时间。

    技术研发人员:白雅贤;黄成
    受保护的技术使用者:中兴通讯股份有限公司
    技术研发日:2020.09.30
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-6312.html

    最新回复(0)