点云数据的解码方法、编码方法、装置、存储介质及设备与流程



1.本技术涉及一种数据处理技术领域,尤其涉及一种点云数据的解码方法、编码方法、装置、存储介质及设备。


背景技术:



2.点云数据是指对目标对象的表面属性特性进行扫描所得到的海量点集合,点云数据中的一个点或一组点可以称为点云数据中的一个数据块。通常点云数据中的每个数据块包括目标对象的几何信息、颜和反射率等多类属性,且点云数据中的数据块的数量级比较大,由此可知,点云数据所包括的数据量十分庞大。因此,需要对点云数据中的数据块的多类属性进行编码得到码流,通过传输该码流可以提高点云数据的传输效率。但是,在解码端对点云数据中的数据块的码流进行解码的过程中,存在数据块的码流的数据量较大的问题,解码设备需要花费较长时间接收和解码数据块的码流,导致解码效率较低。


技术实现要素:



3.本技术实施例所要解决的技术问题在于,提供点云数据的解码方法、编码方法、装置、存储介质及设备,可以提高点云数据的数据块的解码效率。
4.本技术实施例一方面提供一种点云数据的解码方法,包括:
5.获取点云数据中目标数据块的编码数据;所述目标数据块的编码数据是根据所述目标数据块在非等长编码的编码方式下的目标编码参数,对所述目标数据块内的待编码信号进行编码得到的,所述目标编码参数是基于所述目标数据块内的待编码信号的信号特征确定的;
6.根据所述目标编码参数,确定所述目标数据块的目标解码参数;
7.根据所述目标解码参数对所述目标数据块的编码数据进行解码,得到所述目标数据块的解码信号;所述解码信号用于反映所述目标数据块的媒体属性。
8.本技术实施例一方面提供一种点云数据的编码方法,包括:
9.获取点云数据中目标数据块内的待编码信号,以及目标数据块内的待编码信号的信号特征;点云数据的编码方式为非等长编码的编码方式,待编码信号用于反映目标数据块的媒体属性;
10.根据目标数据块内的待编码信号的信号特征,确定目标数据块在编码方式下的目标编码参数;
11.根据目标编码参数对目标数据块内的待编码信号进行编码,得到目标数据块的编码数据。
12.本技术实施例一方面提供一种点云数据的解码装置,包括:
13.第一获取模块,用于获取点云数据中目标数据块的编码数据;所述目标数据块的编码数据是根据所述目标数据块在非等长编码的编码方式下的目标编码参数,对所述目标数据块内的待编码信号进行编码得到的,所述目标编码参数是基于所述目标数据块内的待
编码信号的信号特征确定的;
14.第一确定模块,用于根据所述目标编码参数,确定所述目标数据块的目标解码参数;
15.解码模块,用于根据所述目标解码参数对所述目标数据块的编码数据进行解码,得到所述目标数据块的解码信号;所述解码信号用于反映所述目标数据块的媒体属性。
16.本技术实施例一方面提供一种点云数据的编码装置,包括:
17.第三获取模块,用于获取点云数据中目标数据块内的待编码信号,以及目标数据块内的待编码信号的信号特征;点云数据的编码方式为非等长编码的编码方式,待编码信号用于反映目标数据块的媒体属性;
18.确定模块,用于根据目标数据块内的待编码信号的信号特征,确定目标数据块在编码方式下的目标编码参数;
19.编码模块,用于根据目标编码参数对目标数据块内的待编码信号进行编码,得到目标数据块的编码数据;
20.本技术实施例一方面提供了一种计算机设备,包括:处理器和存储器;
21.处理器与存储器相连,其中,存储器用于存储计算机程序,计算机程序被处理器执行时,使得该计算机设备执行本技术实施例提供的方法。
22.本技术实施例一方面提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,该计算机程序适于由处理器加载并执行,以使得具有该处理器的计算机设备执行本技术实施例提供的方法。
23.本技术实施例一方面提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本技术实施例提供的方法。
24.本技术实施例中,点云数据中目标数据块的编码数据是根据目标数据块在非等长编码的编码方式下的目标编码参数,对目标数据块内的待编码信号进行编码得到的,该目标编码参数是基于该目标数据块内的待编码信号的信号特征确定的。此处的目标数据块的编码数据是指用于描述目标数据块的编码数据的位数,即目标数据块的编码数据是指目标数据块的编码数据的长度。换言之,通过基于目标数据块内的待编码信号的信号特征,自适应地确定需要采用多少个编码(即比特位)来描述该目标数据块的编码数据,即具有不同信号特征的数据块具有不同的编码(即不同的比特位),这样能够有效降低目标数据块的编码数据的冗余度,即能够降低目标数据块的编码数据的长度,同时,能够提高目标数据块的编码数据的传输效率。进一步,在解码设备接收到目标数据块的编码数据后,可以根据目标解码参数对该目标数据块的编码数据进行解码,得到该目标数据块的解码信号,该目标解码参数是上述目标编码参数确定的,由于目标数据块的编码数据的冗余度比较低,因此,可以快速地解码出目标数据块的解码信号,进而可以提高解码效率。
附图说明
25.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本
发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
26.图1是本技术实施例提供的一种点云数据处理过程的示意图;
27.图2是本技术实施例提供的一种点云数据的编码方法的流程示意图;
28.图3是本技术实施例提供的一种数据块的示意图;
29.图4是本技术实施例提供的一种数据组划分的示意图;
30.图5是本技术实施例中提供的一种点云数据的解码方法的示意图;
31.图6是本技术实施例提供的一种点云数据的解码装置的结构示意图;
32.图7是本技术实施例提供的一种点云数据的编码装置的结构示意图;
33.图8是本技术实施例提供的一种计算机设备的结构示意图;
34.图9是本技术实施例提供的一种计算机设备的结构示意图。
具体实施方式
35.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
36.本技术涉及云技术技领域。其中,本技术涉及云技术技领域中的云计算,云计算(cloud computing)是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展。本技术可以通过云计算对多个点云数据中的目标数据块进行编码和解码。
37.本技术实施例涉及点云数据的处理技术,本技术实施例主要涉及点云数据编码和点云数据解码,如图1所示,图1是本技术实施例提供的一种点云数据处理的示意图,针对点云数据处理过程可如图1所示,具体可包括:点云数据的获取10a,点云数据的预处理10b、点云数据的编码10c、点云数据的量化10d、点云数据的熵编码10e以及点云数据的解码。
38.点云数据:点云数据是空间中一组无规则分布的、表达三维物体或场景的空间结构及表面属性的离散点集。点云数据中的每个数据块至少具有几何位置信息(即三维位置信息),根据应用场景的不同,还可能具有彩、材质或其他原始媒体属性。通常,点云数据中的每个数据点都具有相同数量的原始媒体属性,本技术中点云数据中的可以一个数据点或一组数据点可以称为一个数据块。
39.点云数据的获取10a:是指获取点云数据,点云数据的获取方式包括但不限于:计算机生成、3d激光扫描、3d摄影测量等。计算机可以生成虚拟三维物体及场景的点云数据。3d扫描可以获得静态现实世界三维物体或场景的点云数据,每秒可以获取百万级点。3d摄像可以获得动态现实世界三维物体或场景的点云数据,每秒可以获取千万级点。伴随着大规模的点云数据不断积累,点云数据的高效存储、传输、发布、共享和标准化,成为点云应用的关键。
40.点云数据的预处理10b:对3d空间中的点云数据进行预处理,该预处理包括坐标变换(transform coordinates)和体素化(voxel1ze)。其中,坐标变换是指通过缩放和平移等
方式对点云数据中的点的坐标系进行转换,转换成目标坐标系(如世界坐标系)。体素化是指对点云数据中的点进行坐标量化、重复点删除以及属性赋值,将位于同一体素内的所有点都量化到体素中心,并将体素内所有点的属性组合分配给该体素中心,并将体素中心确定为新的点。这样,通过缩放和平移的操作,将3d空间中的点云数据转换成整数形式,并将其最小几何位置移至坐标原点处。
41.点云数据的编码10c:是指对点云数据中的数据块进行编码,包括几何信息编码和属性信息编码两方面的编码。几何信息编码是对点的几何位置信息进行编码,得到点的几何码流。几何编码可以包含如下两种模式:(a)基于八叉树的几何编码(octree):八叉树是一种树形数据结构,在3d空间划分中,对点云包围盒(即包含所有点云的最小立方体)进行均匀划分,每个节点都具有八个子节点。通过对八叉树中各个子节点的占用与否采用“1”和“0”指示,获得占用码信息(occupancy code),将占用码信息作为点云几何信息的码流。(b)基于三角表示的几何编码(trisoup):将点云划分为一定大小的块(block),定位点云表面在块的边缘的交点并构建三角形,通过编码交点位置得到点云几何信息的码流。属性信息编码是指对点的属性信息进行编码,得到点的属性码流。
42.点云数据的量化10d:对于点的几何码流和属性码流,进一步的进行有损的量化操作,丢失掉一定的信息,使得量化后的码流有利于压缩表达,点云数据的量化可包括几何量化和属性量化。例如,几何量化是指对点云几何信息的码流进行量化,将目标取值范围内的编码值量化为同一编码值。量化的精细程度通常由量化参数(qp,即quantization parameter)来决定,qp取值较大,表示更大取值范围的系数将被量化为同一个输出,因此通常会带来更大的失真,及较低的码率。相反,qp取值较小,表示较小取值范围的系数将被量化为同一个输出,因此通常会带来较小的失真,同时对应较高的码率。在点云编码中,量化是直接对点的坐标信息进行的。属性量化是指对点云属性信息的码流进行量化,将目标取值范围内的编码值量化为同一编码值。量化的精细程度通常由量化参数(qp)来决定。在预测编码中,是对属性残差进行量化;在变换编码中,是对变换系数进行量化。
43.点云数据的熵编码(entropy coding)10e或统计编码:量化后的码流,将根据码流中各个值出现的频率,进行统计压缩编码,最后输出二值化(0或者1)的压缩码流。熵编码包括几何熵编码和属性熵编码,几何熵编码是指对点云几何信息的码流进行统计压缩编码,最后输出二值化(0或者1)的压缩码流,如对八叉树的占用码信息进行统计压缩编码。统计编码是一种无损编码方式,可以有效的降低表达同样的信号所需要的码率。常用的统计编码方式是基于上下文的二值化算术编码。属性信息熵编码是指对量化后的属性残差或变换系数进行统计压缩,最后输出二值化(0或者1)的压缩码流。一般使用行程编码(run length coding)及算数编码(arithmetic coding)实现对量化后的属性残差或变换系数进行最终的压缩。相应的编码模式,量化参数等信息也同样采用熵编码器进行编码。
44.点云数据的解码:在解码端,解码器获得点云数据的压缩码流后,首先进行对压缩编码进行熵解码,得到量化后的几何信息以及量化后的属性信息。首先,几何信息经过反量化,得到重建点的位置信息。另一方面,量化后的属性信息经过反量化得到属性残差,并根据采用的编码模式确认参考信号,得到重建的属性信息,按顺序与几何信息一一对应,产生输出的重建点云数据。
45.本技术实施例中的数据块可以是上述点云数据中的一个数据点,也可以是点云数
据中的至少两个数据点所构成的一组数据点。如图2所示,图2是本技术实施例提供的一种点云数据的编码方法的流程示意图,该方法可由计算机设备来执行,该计算机设备可以是指编码设备。如图2所示,该方法具体可包括但不限于以下步骤:
46.s101,获取点云数据中目标数据块内的待编码信号,以及目标数据块内的待编码信号的信号特征。
47.具体的,点云数据广泛应用于城市数字化地图的构建,在如智慧城市、无人驾驶、文物保护等众多热门研究中起技术支撑作用。计算机设备可以通过三维扫描设备对目标对象的表面进行采集,得到点云数据,该点云数据中包括多个数据点,数据点可以是指目标对象的表面上的一个很小的区域,目标数据块可以为点云数据中的任意一个数据点或者至少两个数据点所构成的一组数据点。例如,目标数据块可以是指点云数据、点云数据中的宏块、点云数据中的预测树(由点云数据中多个数据点构成的树)等。其中,点云数据中可以包括一个或者多个数据块,目标数据块属于一个或者多个数据块中的任意一个数据块。计算机设备可以获取点云数据中目标数据块内的待编码信号,目标数据块内的待编码信号的数量可以为一个或者多个,该目标数据块内的待编码信号可以用于反映目标数据块的媒体属性,该媒体属性可以是指几何位置信息、颜、反射率、分类值、强度值、时间、材料特性以及纹理信息等属性。其中,待编码信号可以是指对目标数据块的媒体属性进行属性预测、属性变换、属性预测变换或者属性变换预测得到的,如几何预测残差、属性预测残差或者属性变换系数等。计算机设备可以获取目标数据块内的待编码信号的信号特征,该信号特征可以是指待编码信号的信号阈值范围、待编码信号的分布特征、待编码信号的信号值大小或者与目标数据块的待编码信号关联的关联信号的信号特征等。
48.其中,点云数据的编码方式为非等长编码的编码方式,该非等长编码的编码方式可以包括指无符号指数哥伦布编码方式、有符号指数哥伦布编码方式、截断指数哥伦布编码方式以及映射指数哥伦布编码方式等。由于机器仅能识别0和1,因此需要将目标数据块的待编码信号编码成由0和1组成的字符。在采用二进制对目标数据块的待编码信号进行编码时,由于二进制编码是等长编码,即以相同编码(即比特位)记录不同待编码值,会产生大量的冗余信息。例如,待编码信号的信号值为2时,采用二进制编码得到的编码数据为00000010,原本只需要2个bit就能表示的数据,如今需要8个bit来表示,那么其余6个bit就是冗余数据,在网络传输时,会出现很大的冗余量,加重网络负担。采用非等长编码的编码方式对目标数据块的待编码信号进行编码,可以减少目标数据块的编码数据的数据量,以减轻网络负担,提高点云数据的传输效率,同时可以减少解码端需要解码的码流的数据量,以提高点云数据的编码解码效率。例如,当待编码信号的信号值为0时,采用0阶的指数哥伦布编码方式编码得到的编码数据为1,只有一个比特位,可以大大较少比特位的数量,以编码数据的数量。
49.具体的,目标数据块的待编码信号可以是指对目标数据块的媒体属性进行属性预测到的。其中,目标数据块的待编码信号包括目标数据块的m类媒体属性分别对应的属性预测残差,即一类媒体属性对应一个属性预测残差。例如,目标数据块的一类媒体属性为颜属性时,则目标数据块的待编码信号可以是指颜属性对应的属性预测残差。例如,目标数据块的另一类媒体属性为反射率属性时,则目标数据块的待编码信号可以是指反射率属性对应的属性预测残差。其中,属性预测残差是对目标数据块的媒体属性和目标数据块的预
测属性进行求差得到的,目标数据块的预测属性可以是指根据目标数据块的参考数据块的媒体属性进行预测得到的,该属性预测残差为目标数据块的待编码信号。例如,当目标数据块的媒体属性为颜属性时,目标数据块的颜属性预测残差是根据目标数据块的参考数据块的颜属性与目标数据块的颜属性进行求差得到的。其中,目标数据块的参考数据块可以是指点云数据中与目标数据块之间的位置距离小于或者等于距离阈值的数据块。
50.具体的,目标数据块的待编码信号可以是指对目标数据块的媒体属性进行属性变换到的。目标数据块的待编码信号可以是采用变换矩阵对目标数据块的媒体属性进行属性变换得到的,变换矩阵是根据目标数据块中的数据块的数量确定的,计算机设备可以根据目标数据块中的数据点的数量,从变换矩阵集合中获取目标数量的变换矩阵。计算机设备通过变换矩阵对目标数据块的媒体属性进行变换处理,得到一个第一属性变换系数(即直流分量系数)和一个或者多个第二属性变换系数(即交流分量系数),该一个第一属性变换系数(即直流分量系数)和一个或者多个第二属性变换系数(即交流分量系数)为目标数据块的待编码信号。
51.具体的,目标数据块的待编码信号可以是指对目标数据块的媒体属性进行属性预测变换到的。属性预测变换是指对目标数据块的媒体属性进行属性预测处理,得到属性预测残差后,对目标数据块的属性预测残差进行属性变换处理,得到目标数据块的属性变换系数,该目标数据块的属性变换系数为目标数据块的待编码信号。
52.具体的,目标数据块的待编码信号可以是指对目标数据块的媒体属性进行属性变换预测到的。属性变换预测是指对目标数据块的媒体属性进行属性变换处理,得到目标数据块的属性变换系数,再通过对目标数据块的属性变换系数进行属性预测,得到目标数据块的属性预测残差,该据块的属性预测残差为目标数据块的待编码信号。
53.其中,属性预测变换的公式可以如以下公式(1)所示:
54.y=ax
ꢀꢀ
(1)
55.其中,x为目标数据块的媒体属性的属性预测残差,y为目标数据块的媒体属性对应的第一变换系数和第二变换系数,a为k_i元dct变换矩阵,i为目标数据块中包含的数据点的数量。例如,目标数据块内的数据点的数量为4时,四元dct变换矩阵为a={{256,256,256,256},{256,256,-256,-256},{256,-256,-256,256},{256,-256,256,-256}},x={-2,-3,-17,-16}时,则y={-9728,7168,512,0}。其中y(0)=-9728为第一变换系数,其他3个为第二变换系数。
56.如图3所示,图3是本技术实施例提供的一种数据块的示意图,如图3所示,计算机设备可以采用八叉树划分方式对点云数据所构成的三维空间进行划分,得到点云数据中的数据块。八叉树划分方式是逐层次地对点云数据的包围盒(即点云数据所构成的三维空间)进行均匀划分,得到点云数据的八叉树,八叉树中的每个节点都具有八个子节点。其中,点云数据中的数据块可以为该八叉树中的任意节点,即点云数据中的数据块可以为八叉树中任意一层中的节点。如图3所示,计算机设备可以对八叉树中各个子节点的占用与否采用“1”和“0”指示,获取点云数据对应的几何信息的码流。即若该子节点中存在点云数据中的点,则用“1”表示;若该子节点中不存在点云数据中的点,则用“0”表示。如图3所示,计算机设备对点云数据的包围盒进行第一次划分,得到第一层的8个第一子节点,即编码为10000001,点云数据中的数据块可以为第一层的8个第一子节点。其中,第一个第一子节点
中包含点云数据中的数据点,则第一个第一子节点的占用信息为“1”,第二个至第七个第一子节点不包含点云数据中的数据点,则第一个第一子节点的占用信息为“0”,第八个第一子节点包含点云数据中的数据点,则第一个第一子节点的占用信息为“1”。以此类推,第二层的第一个第一子节点包括8个第二子节点,第一个第一子节点的编码为00011000,第八个第一子节点的编码为10001000。同样的,点云数据中的数据块也可以为第二层的第二子节点。
57.s102,根据目标数据块内的待编码信号的信号特征,确定目标数据块在编码方式下的目标编码参数。
58.具体的,计算机设备可以根据目标数据块内的待编码信号的信号特征,确定目标数据块在编码方式下的目标编码参数,该目标编码参数包括用于指示目标数据块的编码数据所属的长度的参数。例如,编码方式为指数哥伦布编码方式时,目标编码参数可以是指基于指数哥伦布编码方式的阶数,如0阶、1阶、2阶

等中的一个。例如,以目标数据块的待编码信号的信号值为3为例,若目标编码参数为0阶,则目标编码参数用于指示目标数据块的编码数据所属的第一编码长度为5位(即3的编码数据为00100);若目标编码参数为1阶,则目标编码参数用于指示目标数据块的编码数据所属的第一编码长度为4位(即3的编码数据为0101);若目标编码参数为2阶,则目标编码参数用于指示目标数据块的编码数据所属的第一编码长度为3位(即3的编码数据为111)。其中,计算机设备可以根据目标数据块内的待编码信号的信号特征,确定目标数据块在编码方式下的目标编码参数,以用最少的编码(即比特位)表示目标数据块的编码数据。此处的目标数据块的编码数据是指用于描述目标数据块的编码数据的位数,即目标数据块的编码数据是指目标数据块的编码数据的长度。换言之,通过基于目标数据块内的待编码信号的信号特征,自适应地确定需要采用多少个编码来描述该目标数据块的编码数据,即具有不同信号特征的数据块具有不同的编码,这样能够有效降低目标数据块的编码数据的冗余度,即能够降低目标数据块的编码数据的长度,同时,能够提高目标数据块的编码数据的传输效率。
59.可选的,计算机设备可以根据待编码信号的信号值确定目标数据块对应的目标编码参数。具体的,计算机设备获取待编码信号所属的目标信号范围,根据待编码信号所属的目标信号范围,从第一参数表中确定目标数据块对应的目标编码参数。其中,该第一参数表包括一个或者多个信号范围,以及一个或者多个信号范围分别对应的编码参数。例如,当编码方式为指数哥伦布编码方式时,若目标数据块的待编码信号的信号值越大,则可以采用越大的目标编码参数(即阶数);若目标数据块的待编码信号的信号值越小,则可以采用越小的目标编码参数。例如,当目标数据块的待编码信号的信号值为“0”时,则可以0阶作为目标数据块对应的目标编码参数,即采用0阶指数哥伦布编码方式对目标数块内的待编码信号进行编码。当目标数据块的待编码信号的信号值为“7”时,则可以将3阶作为目标数据块的目标编码参数。当然,也可以根据待编码信号的其他信号特征以及编码方式的编码方式特征,确定目标数据块对应的目标编码参数。其中,计算机设备可以根据待编码信号的信号值,以及指数哥伦布编码方式不同编码参数对不同信号值进行编码得到的编码的数量信息,预设第一参数表。例如,在信号值为0时,目标编码参数为0可以用最少编码表示信号值0,即信号值0的编码数据为1;信号值为1时,目标编码参数为1可以用最少编码表示信号值1,即信号值1的编码数据为11;信号值为2时,目标编码参数为0或者2可以用最少编码表示信号值2,目标编码参数为0时,信号值0的编码数据为011;目标编码参数为2时,信号值0的
编码数据为110。其中,当可选的目标编码参数为多个时,可以从多个可选的目标编码参数中随机挑选一个对目标数据块进行编码的参数,也可以根据其他筛选条件(如目标数据块对应的相邻数据块的编码参数,或者,目标数据块所属的组等条件),从多个可选的目标编码参数中确定一个对目标数据块进行编码的参数。
60.可选的,目标数据块内的待编码信号的信号特征包括目标数据块内的待编码信号的信号范围值;信号范围值是基于目标数据块内的最大待编码信号和最小待编码信号确定的;或者,信号范围值是基于目标数据块内的待编码信号的采样精度确定的。
61.具体的,信号特征可以是指目标数据块内的待编码信号的信号范围值,该信号范围值是基于目标数据块内的最大待编码信号和最小待编码信号确定的。具体的,信号范围值可以是指目标数据块内的最大待编码信号的信号值与最小待编码信号的信号值之间的差值。例如,当目标数据块的待编码信号为几何预测残差时,信号范围值可以是指最大几何预测残差与最小几何预测残差的之间的差值。例如,目标数据块内的最大待编码信号的信号值为6,最小待编码信号的信号值为0,则目标数据块的待编码信号的信号范围值为6。或者,该信号范围值可以是基于目标数据块内的待编码信号的采样精度确定的。例如,若点云数据的几何精度为10bit,则点云数据中的目标数据块内的待编码信号的采用精度可以为10bit,目标数据块的待编码信号的信号范围值可以为2
10

62.进一步地,计算机设备确定目标数据块在编码方式下的目标编码参数的具体方式可以包括:根据信号特征所包括的信号范围值,生成目标数据块对应的目标索引值。从第二参数表中查询与目标索引值关联的编码参数,第二参数表中包括至少一个索引值,以及与至少一个索引值中的每个索引值关联的编码参数,即一个索引值对应一个编码参数。计算机设备可以将查询得到的编码参数,确定为目标数据块在编码方式下的目标编码参数。其中,计算机设备可以根据信号范围值预设第二参数表,如计算机设备额可以根据最大待编码信号与最小待编码信号之间的差值预设目标参数查询表,计算机设备也可以根据点云数据的采样精度的最大值预设第二参数表,如根据点云数据的最大采样精度确定第二参数表的索引值的范围(即确定第二参数表的长度),以及确定每个索引值对应的编码参数。
63.可选的,计算机设备生成目标数据块对应的目标索引值的具体方式可以包括:对信号特征所包括的信号范围值进行量化,得到量化后的信号范围值。获取量化后的信号范围值的对数值,对量化后的信号范围值的对数值进行求差处理,得到目标数据块对应的目标索引值。
64.具体的,计算机设备可以获取量化步长,该量化步长可以由管理人员预先设置,也可以根据待编码信号的信号范围确定。进一步地,计算机设备可以基于量化步长,对待编码信号的信号特征所包括的信号范围值进行量化,得到量化后的信号范围值。通过对信号范围值进行量化处理,可以属于目标范围内的信号范围值用于一个目标信号范围值代替,以压缩数据,便于后续快速查询到目标数据块对应的目标索引值。进一步地,计算机设备可以获取量化后的信号范围值的对数值,对该量化后的信号范围值的对数值进行求差处理,得到目标数据块对应的目标索引值。
65.其中,计算机设备生成目标数据块对应的目标索引值可以由如下公式(2)获得:
66.index=log2b
′‑1ꢀꢀ
(2)
67.其中,index为目标数据块对应的目标索引值,b

为量化后的信号范围值。
68.具体的,计算机设备得到目标数据块对应的目标索引值后,可以golombnum=lut
kthindex
[index],从,第二参数表中查询到目标数据块对应的目标编码参数。其中,golombnum为目标数据块对应的目标编码参数,lut指示从第二参数表中查询目标索引值对应的目标编码参数。
[0069]
可选的,点云数据中包括至少两个数据组,目标数据块属于该至少两个数据组中的第一数据组,该第二参数表中包含的索引值的数量与第一数据组中包括的数据块的数量相同。例如,第一数据组中的数据块的数量为8个,则第二参数表可以为参数表集合中包含8个索引值的参数表。这样,便于从第二参数表中查询到第一数据组中每个数据块对应的编码参数。目标索引值属于目标索引值范围,该目标索引值范围是根据第二参数表中的至少一个索引值确定的。可以理解的是,当索引值数量较多时,可以将多个索引值划分为不同索引值范围,一个索引值范围对应一个参数表。这样,计算机设备可以确定目标索引值所属的目标索引值范围,从目标索引值范围对应的第二参数表中查询目标索引值对应的目标编码参数,可以避免对所有索引值进行一一比对,可以减少查询数据量。其中,计算机设备可以根据分组调整编码参数,如对同一个分组内的数据块的编码参数进行自适应调整,也可以不对同一个分组内的数据块的编码参数进行调整等。
[0070]
可选的,在目标数据块的待编码信号的数量为1个时,计算机设备可以根据目标数据块内的待编码信号的信号值,确定目标数据块对应的目标编码参数。或者,计算机设备可以根据与目标数据块关联的数据块(如位置相邻数据块或者目标数据块所在数据组中的其他数据块等),确定目标数据块的目标编码参数。可选的,当目标数据块的待编码信号的数量为多个时,计算机设备可以根据目标数据块中最大待编码信号和最小待编码信号之间的差值,确定目标数据块对应的目标编码参数。或者,计算机设备可以根据目标数据块中最大待编码信号的信号值,确定目标数据块对应的目标编码参数。或者,计算机设备可以根据目标数据块内所有待编码信号的信号均值,确定目标数据块对应的目标编码参数。当然,计算机设备可以也根据目标数据块关联的数据块,确定目标数据块对应的目标编码参数。当然,目标编码数据块对应的目标编码参数可以由对点云数据进行编码的编码设备以及对点云数据对应的编码数据进行解码的解码设备默认,如由编码设备和解码设备根据对点云数据的历史编码解码记录确定。
[0071]
可选的,计算机设备确定目标数据块对应的目标编码参数的具体方式可以包括:根据目标数据块内的待编码信号的信号特征,确定目标数据块在编码方式下的初始编码参数。获取点云数据中与目标数据块具有相邻关系的已编码数据块的编码数据。根据已编码数据块的编码数据,对初始编码参数进行调整,得到目标数据块在编码方式下的目标编码参数。
[0072]
具体的,计算机设备可以根据目标数据块内的待编码信号的信号特征,确定目标数据块在编码方式下的初始编码参数。计算机设备确定初始编码参数的具体方式可以参见上述基于目标数据块内的待编码信号的信号特征确定编码参数的方式,本技术实施例在此不再赘述。进一步地,计算机设备可以获取点云数据中与目标数据块具有相邻关系的已编码数据块的编码数据。其中,与目标数据块具有相邻关系的已编码数据块可以是指在点云数据中的位置与目标数据块在点云数据中的位置相邻的已编码数据块。或者,已编码数据块可以是指编码顺序与目标数据块的编码顺序相邻的已编码数据块。或者,已编码数据块
可以是指点云数据包括的至少两个数据分组中,与目标数据块所在的第一数据分组相邻的第二数据分组中的数据块。计算机设备可以根据已编码数据块的编码数据,对初始编码参数进行调整,得到目标数据块在编码方式下的目标编码参数。这样,当计算机设备根据目标数据块内的待编码信号的信号特征确定的编码参数,作为目标数据块对应的初始编码参数,再根据已编码数据块的编码数据对目标数据块对应的初始编码参数进行调整,得到目标数据块的目标编码参数,可以提高目标编码参数的准确性,以更好地实现以较少的编码表示目标数据块的编码数据,以减少编码数据的数据量。
[0073]
可选的,编码方式可以为指数哥伦布编码方式,目标数据块的初始编码参数为初始阶数。计算机设备对初始编码参数进行调整的具体方式可以包括:确定已编码数据块的编码数据的目标编码值。根据初始阶数,确定第一限制阶数和第二限制阶数,第一限制阶数小于第二限制阶数。获取目标编码值与第一限制阶数、第二限制阶数之间的大小关系,根据大小关系,对初始阶数进行调整,得到目标数据块关联的目标阶数。将目标阶数确定为目标数据块在编码方式下的目标编码参数。
[0074]
具体的,已编码数据块的数量可以为一个或者n1个。在已编码数据块的数量为一个,且已编码数据块内的待编码信号的数量为1个时,已编码数据块的编码数据的目标编码值可以为已编码数据块内的待编码信号对应的信号值。在已编码数据块的数量为一个,且已编码数据块内的待编码信号的数量为n1个时,已编码数据块的编码数据的目标编码值可以为已编码数据块内的n1个待编码信号对应的信号值的平均值。在已编码数据块的数量为n1个时,已编码数据块的编码数据的目标编码值可以为n1个已编码数据块的编码数据的平均值。计算机设备可以根据初始阶数,确定第一限制阶数和第二限制阶数,第一限制阶数小于第二限制阶数。其中,计算机设备可以设置用于存储已编码值buffer(缓存器),buffer大小为n1个,每隔n2个点统计已编码数据块的目标编码值。其中,已编码数据块可以为点云数据中的一个数据点,可以每隔n1数据点调整初始阶数。
[0075]
具体的,第一限制阶数是指下限阶数,第二限制阶数可以是指上限阶数,初始阶数用于golombnum表示,第一限制阶数用golombnumlow表示,第二限制阶数用golombnumlow表示。可选的,计算机设备根据初始阶数确定第一限制阶数和第二限制阶数的方式可以包括但不限于以下方式:方式一:golombnumlow=2^golombnum,golombnumup=2^(golombnum+1)。方式二:golombnumlow=2^(golombnum-1),golombnumup=2^golombnum。方式三:golombnumup=2^((golombnum-1))+2^((golombnum-2));golombnumlow=2^((golombnum-1))-2^((golombnum-2))。需要说明的是,除上述方式外,还可以根据具体情况采用其他方式确定第一限制阶数和第二限制阶数,申请实施例在此不在赘述。
[0076]
进一步地,计算机设备可以获取已编码数据块的编码数据的目标编码值与第一限制阶数、第二限制阶数之间的大小关系。该大小关系可以包括目标编码值小于第一限制阶数,或者,目标编码值大于第二阶数,或者,目标编码值大于或者等于第一限制阶数且小于或者等于第二限制阶数。计算机设备可以根据该大小关系,对初始阶数进行调整,得到目标数据块关联的目标阶数。计算机设备可以将目标阶数确定为目标数据块在编码方式下的目标编码参数,这样,对初始阶数进行调整,可以得到更加准确的目标阶数,采用目标阶数对目标数据块内的待编码信号进行编码,可以实现以较少编码表示待编码信号,以减少目标数据块对应的编码数据的数据量,进而可以提高编解码效率。
[0077]
可选的,计算机设备对初始阶数进行调整的具体方式可以包括但不限于一下方式:若大小关系指示目标编码值小于第一限制阶数,则将初始阶数与第一调整步长之间的和,确定为目标数据块关联的目标阶数。若大小关系指示目标编码值大于第二限制阶数,则将初始阶数与第一调整步长之间的差,确定为目标数据块关联的目标阶数。若大小关系指示目标编码值大于或者等于第一限制阶数,且小于或者等于第二限制阶数,则将初始阶数确定为目标数据块关联的目标阶数。
[0078]
具体的,若计算机设备确定大小关系指示目标编码值小于第一限制阶数,则计算机设备可以将初始阶数与第一调整步长之间的和,确定为目标数据块的关联的目标阶数。其中,第一调整步长可以由历史编码记录信息确定,或者,第一调整步长可以由管理人员确定等,第一调整步长可以为1、2、3等数值。若大小关系指示目标编码值大于第二限制阶数,则计算机设备可以将初始阶数与第一调整步长之间的差,确定为目标数据块关联的目标阶数。若大小关系指示目标编码值大于或者等于第一限制阶数且小于或者等于第二限制阶数,则不对初始阶数进行调整,将初始阶数确定为数据块关联的目标阶数。这样,可以将目标数据块关联的目标阶数限制在合理的阶数范围内,同时可以提高目标阶数的准确性,以实现用较少编码表示目标数据块的编码数据。
[0079]
可选的,计算机设备对初始阶数进行调整的方式可以包括但不限于以下方式:获取已编码数据块对应的编码参数。若大小关系指示目标编码值小于第一限制阶数,则将历史阶数与第二调整步长之间的和,确定为目标数据块关联的目标阶数。若大小关系指示目标编码值大于第二限制阶数,则将历史阶数与第二调整步长之间的差,确定为目标数据块关联的目标阶数。若大小关系指示目标编码值大于或者等于第一限制阶数,且小于或者等于第二限制阶数,则将初始阶数确定为目标数据块关联的目标阶数。
[0080]
具体的,计算机设备可以获取已编码数据块对应的编码参数。若大小关系指示目标编码值小于第一限制阶数,则将历史阶数与第二调整步长之间的和,确定为目标数据块关联的目标阶数。第二调整步长可以与第一调整步长相同,也可以与第一调整步长不相同。同样的,第二调整步长也可以由历史编码记录信息确定,或者,第二调整步长可以由管理人员确定等,第二调整步长可以为1、2、3等数值。若大小关系指示目标编码值大于第二限制阶数,则将历史阶数与第二调整步长之间的差,确定为目标数据块关联的目标阶数。若大小关系指示目标编码值大于或者等于第一限制阶数,且小于或者等于第二限制阶数,则将初始阶数确定为目标数据块关联的目阶数。这样,可以将目标数据块关联的目标阶数限制在合理的阶数范围内,同时可以提高目标阶数的准确性,以实现用较少编码表示目标数据块的编码数据。
[0081]
可选的,计算机设备对初始阶数进行调整的具体方式可以包括但不限于以下方式:根据大小关系,对初始阶数进行调整,得到目标数据块关联的候选阶数。若候选阶数小于或者等于第三限制阶数,则将候选阶数与第三调整步长之间和,确定为目标数据块关联的目标阶数。若目标阶数大于或者等于第四限制阶数,则将候选阶数与第三调整步长之间差,确定为目标数据块关联的目标阶数;第三限制阶数小于第四限制阶数。若目标阶数大于第三限制阶数且小于第四限制阶数,则将候选阶数,确定为目标数据块关联的目标阶数。
[0082]
具体的,计算机设备可以根据大小关系,对初始阶数进行调整,得到目标数据块关联的候选阶数,具体对初始阶数进行调整的过程可以参见上述对初始阶数进行调整的过
程。计算机设备可以检测目标数据块关联的候选阶数与第三限制阶数、第四限制阶数之间的关系,根据该关系对候选阶数进行调整,得到目标数据块关联的目标阶数。该第三限制阶数和第四限制阶数用于限制目标数据块关联的目标阶数在合理的阶数范围内,第三限制阶数小于第四限制阶数。具体的,若候选阶数小于或者等于第三限制阶数,则可以确定候选阶数太小,则可以将候选阶数与第三调整步长之间的和,确定为目标数据块关联的目标阶数。或者,若候选阶数小于或者等于第三限制阶数,则可以将第一预设阶数作为目标数据关联的目标阶数,该第一预设阶数大于第三限制阶数且小于第四限制阶数,即第一预设阶数在合理的阶数范围内。若目标阶数大于或者等于第四限制阶数,则可以将候选阶数与第三调整步长之间的差,确定为目标数据块关联的目标阶数。或者,若候选阶数大于或者等于第四限制阶数,则可以将第二预设阶数确定为目标数据块关联的目标阶数。第二预设阶数大于第三限制阶数且小于第四限制阶数,即第二预设阶数在合理的阶数范围内。若目标阶数大于第三限制阶数且小于第四阶数,则说明候选阶数在合理的阶数范围内,不对候选阶数进行调整,将候选阶数确定为目标数据块关联的目标阶数。
[0083]
可选的,已编码数据块的编码数据的目标编码值为已编码数据块的编码数据中所有编码值的平均值。或者,已编码数据块的编码数据的目标编码值为已编码数据块的编码数据中非零编码值的平均值。
[0084]
可选的,计算机设备可以获取已编码数据块内的待编码信号,以及已编码数据块的编码参数,该已编码数据块的编码参数可以是基于已编码数据块内的待编码信号的信号特征确定的,或者,该已编码数据块的编码参数可以是基于已编码数据块关联的数据块确定。计算机设备可以检测目标数据块内的待编码信号与已编码数据块内的待编码信号之间的信号大小关系,根据该信号大小关系以及已编码数据块的编码参数,确定目标数据块的编码参数。具体的,若目标数据块内的待编码信号等于已编码数据块内的待编码信号,则可以将已编码数据块的编码参数确定为目标数据块对应的目标编码参数。若目标数据块内的待编码信号小于已编码数据块内的待编码信号,则可以将已编码数据块的编码参数与第四调整步长之间的差,确定为目标数据块对应的目标编码参数。若目标数据块内的待编码信号大于已编码数据块内的待编码信号,则可以将已编码数据块的编码参数与第四调整步长之间的和,确定为目标数据块对应的目标编码参数。同样的,第四调整步长可以由历史编码记录信息确定,或者,第四调整步长可以由管理人员确定等,第四调整步长可以为1、2、3等数值。
[0085]
可选的,点云数据包括至少两个数据组,目标数据块属于至少两个数据组中的第一数据组;第一数据组内的数据块对应的编码参数相同,即第一数据组内的数据块对应的编码参数均为目标编码参数。已编码数据块属于至少两个数据组中与第一数据组具有相邻关系的第二数据组。其中,由于位于同一数据组内的数据块之间的媒体属性之间具有较大的相似性,因此同一数据组中的数据块可以采用相同的编码参数,当然,同一数据组中的数据块可以采用不相同的编码参数。
[0086]
可选的,计算机设备可以对点云数据中的数据块进行分组,得到至少两个数据组。计算机设备对点云数据进行分组的具体方式可以包括但不限于以下方式:方式一:至少两个数据组是根据数据块在点云数据中的位置进行分组得到的,计算机设备可以根据数据块在点云数据中的位置,将相邻位置的数据块划分为一个数据组,以此得到点云数据中的至
少两个数据组。
[0087]
方式二:至少两个数据组是根据点云数据中数据块分别对应的希尔伯特变换码进行分组得到的;点云数据中数据块分别对应的希尔伯特变换码是对每个数据块在点云数据中的位置进行希尔伯特变换得到的。计算机设备可以对点云数据中每个数据块在点云数据中的位置进行希尔伯特变换,得到每个数据块对的希尔伯,根据每个数据块对应的希尔伯,对点云数据中的数据块进行排序,得到排序后的数据块。进一步地,计算机设备可以基于空间填充曲线的序对排序后的数据块依次进行分组,将希尔伯前l位相同的数据块归为一个数据组。具体的,计算机设备还可以将希尔伯前l位相同的数据块归为一个数据组,得到候选数据组,若候选数据组中的数据块数量多于限制数量时,则可以对候选数据组进行细分组,将候选数据组中数据块的数量限制在限制数据量之内,也可以根据前序分组中所包含的数据块的数量对候选数据组进行调整,得到数据组。
[0088]
方式三:至少两个数据组是根据划分尺寸对点云数据进行划分得到。计算机设备可以将点云数据所构成的三维空间划分为大小的不重叠的编码宏块,每个编码宏块作为基本的编码单元,可以为一个数据组。其中,x,y,z为坐标信息,d八叉树划分深度。为计算机设备可以设置划分尺寸(如八叉树划分深度d或者通过参数),来控制数据块的大小。
[0089]
方式四:至少两个数据组是根据目标限制数量以及数据块的编码顺序对点云数据进行划分得到。计算机设备可以根据目标限制数量,以及点云数据中数据块的编码顺序,依次对点云数据中的数据块进行分组,得到至少两个数据组。例如,点云数据中5个数据块的编码顺序为:数据块s1、数据块s2、数据块s3、数据块s4以及数据块s5,若目标限制数量为2,则一个数据组为:数据块s1和数据块s2;另一数据组为:数据块s3和数据块s4;又一数据组为:数据块s5。或者,至少两个数据组可以是指根据点云数据生成的预测树中的预测树单元,该预测树单元可以是指由预测树中多个预测树节点构成的单元。
[0090]
如图4所示,图4是本技术实施例提供的一种数据组划分的示意图,如图4所示,计算机设备可以将点云数据所构成的三维空间划分为大小的不重叠的编码宏块。如图4所示,计算机设备可以将点云数据构成的三维空间平均划分为4个不重叠的编码宏块,将一个编码宏块中的一个数据组,每个数据组中可以包括4个数据块。如图4所示,数据组40a中包括四个数据块,每个数据块包括四个数据点,数据组40a中包含点云数据中的数据点,数据组中第二个数据块2中包括一个数据点4,第三个数据块3中包括数据点5。数据组40b中也包括四个数据块,每个数据块包括四个数据点,数据组40b中包含点云数据中的数据点,数据组中第一个数据块7中包括数据点9和数据点a,第四个数据块8中包括数据点b。
[0091]
可选的,目标数据块的待编码信号可以包括几何预测残差、属性预测残差以及属性变换系数等中的一种或者多种。其中,点云数据中编码顺序排列第一的数据块的几何预测残差可以由预设几何位置与排列第一的数据块的几何位置之间的差值,也可以为排列第一的数据块的几何位置。点云数据中除排列第一的数据块之外的其他数据块的几何预测残差,可以由编码顺序排列在当前数据块的编码顺序之前的数据块的几何位置,与当前数据块的几何位置之间的差值。其中,点云数据中编码顺序排列第一的数据块的属性预测残差
可以由预设属性与排列第一的数据块的媒体属性之间的差值,也可以为排列第一的数据块的媒体属性。点云数据中除排列第一的数据块之外的其他数据块的属性预测残差,可以由编码顺序排列在当前数据块的编码顺序之前的数据块的媒体属性,与当前数据块的媒体属性之间的差值。其中,属性变换系数是指采用变换矩阵对数据块的媒体属性进行变换得到的。
[0092]
可选的,目标数据块内的待编码信号包括第一待编码信号和第二待编码信号,第一待编码信号与第二待编码信号分别对应的属性类型不同。例如,第一待编码信号的属性类型可以是指几何位置,第二待编码信号的属性类型可以是指颜属性。目标数据块的目标编码参数包括用于对第一待编码信号进行编码的第一编码参数,以及用于对第二待编码信号进行编码的第二编码参数,第一编码参数与第二编码参数不相同。可以理解的是,目标数据块内的不同属性类型的待编码信号采用不同编码参数进行编码。这样,可以根据不同属性类型的待编码信号,确定不同的编码参数,以便确定更准确的编码参数,实现采用较少的编码表示目标数据块的编码数据。
[0093]
可选的,第一待编码信号包括第一子编码信号、第二子编码信号以及第三子编码信号,用于对第一待编码信号进行编码的第一编码参数是基于第一子编码信号、第二子编码信号以及第三子编码信号分别对应的子信号特征确定的。具体的,第一编码参数可以基于第一子编码信号、第二子编码信号以及第三子编码信号中最大子编码信号确定的。当然,第一编码参数可以基于第一子编码信号、第二子编码信号以及第三子编码信号中平均信号值确定的。当然,第一编码参数可以基于第一子编码信号、第二子编码信号以及第三子编码信号中任意一个子编码信号确定的。其中,第一子编码信号、第二子编码信号以及第三子编码信号分别对应的编码参数均为第一编码参数。可以理解的是,同一属性类型下的子编码信号可以均采用相同的编码参数。其中,与第一待编码信号关联的关联信息对应的编码参数为第一编码参数,如采用行程编码对第一待编码信号进行行程编码得到的零值的行程长度以及非零信号值可以采用相同的第一编码参数(即第一待编码信号对应的第一编码参数)进行编码。其中,行程编码是指将一个相同值连续串用一个代表值和串长来代替,如第一待编码信号为aaaabaaaa时,可以采用行程编码得到4b4,对第一待编码信号进行编码时,行程长度“4”以及非零信号值“b”可以采用第一待编码信号对应的第一编码参数进行指数哥伦布编码。
[0094]
可选的,第一待编码信号包括第一子编码信号、第二子编码信号以及第三子编码信号,第一编码参数包括第一子编码信号对应的第一子编码参数、第二子编码信号对应的第二子编码参数以及第三子编码信号对应的第三子编码参数。可以理解的是,第一待编码信号中的不同子编码信号采用不同的编码参数,这样,可以根据不同子编码信号的信号特征确定不同子编码信号对应的编码参数,以便确定更准确的编码参数,实现采用较少的编码表示目标数据块的编码数据。其中,计算机设备可以采用offset函数调整第一待编码信号内的子编码信号的编码参数,offset函数是一种以指定的引用为参照系,通过给定偏移量得到新的引用。第一子编码参数是基于第一子编码信号对应的子信号特征确定的,第二子编码参数是基于第一子编码参数以及目标偏移量确定的,第三子编码参数是基于第二子编码参数以及目标偏移量确定的。其中,目标偏移量可以由管理人员设置,也可以由历史编码解码记录信息确定,也可以根据具体情况具体设置,本技术实施例在此不做限制。当然,
也可以通过offset函数调整不同属性类型的待编码信号内的编码参数,如,第一待编码信号的第一编码参数是基于第一待编码信号的信号特征确定的,第二待编码信号的编码参数是基于给定偏移量与第一待编码信号的编码参数确定的。或者,第一子编码信号、第二子编码信号以及第三子编码信号分别对应的编码参数,是基于第一子编码信号、第二子编码信号以及第三子编码信号分别对应的子信号特征确定的。
[0095]
s103,根据目标编码参数对目标数据块内的待编码信号进行编码,得到目标数据块的编码数据。
[0096]
具体的,计算机设备可以根据目标编码参数,对目标数据块内的待编码信号进行编码,得到目标数据块的编码数据。其中,可以采用指数哥伦布编码方式,根据目标编码参数,对目标数据块内的待编码信号进行编码。其中,采用不同编码参数对目标数据块内的待编码信号进行编码时,目标数据块的编码数据属于不同编码参数对应的编码长度。例如,采用编码参数r1对目标数据块内的待编码信号进行编码时,得到的目标数据块的编码数据属于编码参数r1对应的编码描述范围;采用编码参数r2对目标数据块内的待编码信号进行编码时,得到的目标数据块的编码数据属于编码参数r2对应的编码描述范围。这样,采用目标编码参数对目标数据块内的待编码信号进行编码,可以实现采用较少编码表示目标数据块内的待编码信号,以减少编码数据的数据量。可以理解的是,采用目标编码参数对目标数据块内的待编码信号进行编码得到的编码数据,小于采用其他编码参数对目标数据块内的待编码信号进行编码得到的编码数据。由于目标数据块的编码数据的冗余度比较低,因此,可以快速地解码出目标数据块的解码信号,进而可以提高解码效率。
[0097]
可选的,计算机设备得到目标数据块对应的目标编码参数后,可以根据目标编码参数直接对目标数据块内的待编码信号进行编码,得到目标数据块的编码数据。
[0098]
可选的,计算机设备对目标数据块内的待编码信号进行编码的具体方式可以包括:若目标数据块内的待编码信号与目标信号阈值不相同,则生成用于指示目标数据块内的待编码信号与目标信号阈值不相同的第一编码标签。根据目标信号阈值,对目标数据块内的待编码信号进行求差处理,得到信号差值。根据目标编码参数对信号差值进行编码,得到目标数据块内的待编码信号的信号编码值,将信号编码值以及第一编码标签确定为目标数据块的编码数据。
[0099]
具体的,计算机设备可以分别检测目标数据块内的待编码信号是否与目标信号阈值相同,在目标数据块内的待编码信号与目标信号值相同时,则采用第二编码标签作为目标数据块的编码数据;在目标数据块内的待编码信号与目标信号值不相同时,则根据第一编码标签以及目标编码参数对目标数据块内的待编码信号进行编码。其中,目标信号阈值可以是指目标数据块内的待编码信号中出现次数最多的待编码信号的信号值,或者,目标信号阈值也可以为点云数据中出现次数最多的待编码信号的信号值,也可以根据其他具体情况进行设置。其中,第一编码标签用于指示目标数据块内的待编码信号与目标信号阈值不相同。在解码设备解码的时候,可以根据第一编码标签以及目标解码参数(即目标编码参数),对目标数据块的编码数据进行解码,得到目标数据块的解码信号(解码信号的信号值与待编码信号的信号值相同)。
[0100]
具体的,计算机设备确定目标数据块内的待编码信号与目标信号阈值相同时,可以将第二编码标签确定为待编码信号的编码数据,该第二编码标签用于指示目标数据块内
的待编码信号与目标信号阈值相同。这样,在目标数据块内的待编码信号与目标信号阈值相同时,则将第二编码标签作为待编码信号的编码数据,只有在目标数据块内的待编码信号与目标信号阈值不相同时,根据第一编码标签以及目标编码参数对目标数据块进行编码。这样,在目标数据块的待编码信号中存在较多数量与目标信号阈值相邻的待编码信号时,可以直接将第二编码标签作为与目标信号阈值相同的待编码信号的编码数据,可以减少需要编码的数量,以提高编码效率。例如,当目标数据块包括5个待编码信号,第一个待编码信号的信号值为1,第二个待编码信号的信号值为0,第三个待编码信号的信号值为1,第四个待编码信号的信号值为1,第五个待编码信号的信号值为2时,目标信号阈值可以为1,第一编码标签可以为flag≠1,第二编码标签可以为flag=1。这样,第一个待编码信号与目标信号阈值相同,则可以将第二编码标签flag=1作为第一个待编码信号对应的编码数据,这样,在解码的时候,可以直接根据第二编码标签flag=1确定第一个待编码信号的信号值为1。第二个待编码信号与目标信号阈值不相同,则可以根据第一编码标签flag≠1以及目标编码参数对第二个待编码信号进行编码。第三个待编码信号与目标信号阈值相同,则第三个待编码信号的编码数据为第二编码标签。第四个待编码信号与目标信号阈值相同,则第四个待编码信号的编码数据为第二编码标签。第五个待编码信号与目标信号阈值不相同,则可以根据第一编码标签flag≠1以及目标编码参数对第二个待编码信号进行编码。
[0101]
可选的,当目标数据块内的待编码信号与目标信号阈值不相同时,计算机设备可以直接根据目标数据块对应的目标编码参数,对目标数据块内的待编码信号进行编码,得到目标数据块对应的编码数据。解码设备在解码的时候,可以直接根据目标解码参数(即目标编码参数)对目标数据块对应的编码数据进行解码,得到目标数据块的解码信号。
[0102]
可选的,计算机设备根据第一编码标签和目标编码参数对待编码信号进行编码的具体方式可以包括:若目标数据块内的待编码信号与目标信号阈值不相同,则生成用于指示目标数据块内的待编码信号与目标信号阈值不相同的第一编码标签。根据目标信号阈值,对目标数据块内的待编码信号进行求差处理,得到信号差值,根据目标编码参数对信号差值进行编码,得到目标数据块内的待编码信号的信号编码值。将目标数据块内的待编码信号的信号编码值以及第一编码标签确定为目标数据块的编码数据。
[0103]
具体的,计算机设备确定目标数据块内的待编码信号与目标信号阈值不相同时,则可以生成用于指示目标数据块内的待编码信号与目标信号阈值不相同的第一编码标签,根据目标信号阈值,对目标数据块内的待编码信号进行求差处理,得到信号差值。其中,计算机设备可以获取目标数据块内的待编码信号与目标信号阈值之间的差值,确定为信号差值,其中,计算机设备也可以获取目标数据块内的待编码信号与目标信号阈值以及第一阈值之间的差值,作为信号差值。具体的,计算机设备可以获取目标数据块内的待编码信号与目标信号阈值之间的候选差值,再获取候选差值与第一阈值之间的差值,作为信号差值。具体的,第一阈值可以为1,也可以为其他阈值,在第一阈值为1时,信号差值=待编码信号的信号值-(m+1),m为目标信号阈值。
[0104]
进一步地,计算机设备可以根据目标编码参数对信号差值进行编码,得到待编码信号的信号编码值,将待编码信号的信号编码值以及第一编码标签确定为待编码信号的编码数据。例如,以目标数据块内的待编码信号为3,目标信号阈值为2,第一阈值为1为例,计算机设备获取待编码信号的信号值与目标信号阈值以及第一阈值之间的差值,作为信号差
值,即信号差值为3-2-1=0。计算机设备可以直接对信号差值0进行编码,可以减少编码数据的数据量。这样,在计算机设备确定目标数据块内的待编码信号与目标信号阈值不相同时,可以对目标数据块内的待编码信号进行求差处理,对求差处理得到的信号差值进行编码,可以降低需要编码的待编码信号的信号值。这样,由于对较小信号值进行编码时,得到的编码数据的数量较少,因此,对待编码信号对应的信号差值进行编码,可以减少编码数据的数据量,以提高编码解码效率。在解码设备对待编码信号的编码数据进行解码的时候,可以根据目标解码参数(目标解码参数与目标编码参数相同)对待编码信号的编码数据进行解码,得到待编码信号的信号编码值,根据目标信号阈值,对待编码信号的信号编码值进行求和处理,得到待编码信号的解码信号。
[0105]
可选的,计算机设备可以依次检测目标数据块内的待编码信号是否与目标信号阈值相同,以及检测待编码信号是否与小于目标信号阈值的正整数相同,并生成对应的编码标签,以指示目标数据块内的待编码信号的信号值。例如,目标信号阈值为2时,计算机设备可以检测目标数据块内的待编码信号是否与阈值2相同,若相同,则待编码信号的编码标签为flag=2;若不相同,则flag≠2。在待编码信号与阈值2不相同时,则计算机设备可以继续检测目标数据块内的待编码信号是否与阈值1(小于阈值2的正整数)相同,若待编码信号与阈值1相同,则待编码信号的编码标签为flag=1;若不相同,则flag≠1。在计算机设备确定待编码信号与阈值1不相同时,则计算机设备可以继续检测目标数据块内的待编码信号是否与阈值0(小于阈值2的正整数)相同,若待编码信号与阈值0相同,则待编码信号的编码标签为flag=0;若不相同,则flag≠0。若计算机设备确定待编码信号与阈值2、阈值1以及阈值0都不相同时,则可以确定目标数据块内的待编码信号大于2,则可以根据目标信号阈值对目标数据块内的待编码信号进行求差处理,得到信号差值,对信号差值进行编码。这样,由于对较小信号值进行编码时,得到的编码数据的数量较少,因此,对待编码信号对应的信号差值进行编码,可以减少编码数据的数据量,以提高编码解码效率。
[0106]
其中,计算机设备对目标数据块进行编码,得到目标数据块的编码数据后,可以将目标数据块的编码数据和目标数据块的目标编码数据进行关联存储,根据一个或者多个数据块分别对应的编码数据生成点云数据的码流,将该点云数据的码流发送给解码设备,以使解码设备根据点云数据的码流重建点云数据。具体的,计算机设备可以将点云数据中每个数据块对应的编码参数存储在一个或者多个参数集中,该参数集中包括点云数据中数据块与对应的编码参数之间的对应关系。这样,计算机设备可以将该一个或者多个参数集与点云数据的码流发送给解码设备,解码设备可以从参数集中确定对应数据块的编码参数,作为解码参数。或者,计算机设备可以根据目标数据块对应的目标编码参数,以及目标数据块的编码数据生成点云数据的码流中,一个目标数据块的编码数据对应一个目标编码参数。
[0107]
在一种可选的实施例中,计算机设备可以构建点云数据的几何预测树,获取几何预测树中每个节点的几何预测残差,得到几何预测树残差信息。其中,计算机设备在获取几何预测树中每个节点的几何预测残差时,每个节点的几何预测残差可以以其前一个点的信号值进行预测,或者,每个节点的几何预测残差可以以其前两个点的信号值进行预测,或者,每个节点的几何预测残差可以以其前a1个点的信号值进行预测。进一步地,计算机设备可以基于几何预测树残差信息的分布,对几何预测树中起始残差信息和其他残差信息取不
同的指数哥伦布阶数,分别记为k1和k2,采用自适应阶数的指数哥伦布对起始残差信息和其他残差信息进行编码,得到点云数据的编码数据。其中,基于几何预测树的几何信息取值范围设置初始阶数k1,作为起始残差信息的阶数;设置对应阶数k2=k1+offset,其中,offset可以是任意整数;或者初始阶数k2=k1;
[0108]
可选地,基于前序同类型已解码点的残差信息对k1,k2分别进行自适应调整,其中k1基于n1个前序起始点残差信息的平均值,k2基于n1个前序其他残差信息的平均值进行自适应调整;或者固定起始点阶数k1,对k2进行自适应调整。
[0109]
在一种可选的实施例中,计算机设备可以获取点云数据中数据点的属性预测残差,根据数据点的属性预测残差的信号特征,确定数据点的初始编码参数。根据该初始编码参数确定上限参数和下限参数。进一步地,计算机设备可以根据数据点的属性预测残差的信号特征,对初始编码参数进行调整,得到数据点的目标编码参数。具体的,若数据点的属性预测残差小于下限参数,则数据点的目标编码参数为初始编码参数加一;若数据点的属性预测残差大于下限参数,则数据点的目标编码参数为初始编码参数减一。进一步地,若目标编码参数小于0,则确定目标编码参数等于0,或者,若目标编码参数小于0,则确定目标编码参数等于初始编码参数。
[0110]
在一种可选的实施例中,计算机设备可以获取点云数据中数据点的属性变换系数,根据数据点的属性变换系数的信号特征,确定数据点的初始编码参数。根据该初始编码参数确定上限参数和下限参数。进一步地,计算机设备可以根据数据点的属性变换系数的信号特征,对初始编码参数进行调整,得到数据点的目标编码参数。具体的,若数据点的属性变换系数小于下限参数,则数据点的目标编码参数为初始编码参数加一;若数据点的属性变换系数大于下限参数,则数据点的目标编码参数为初始编码参数减一。进一步地,若目标编码参数小于0,则确定目标编码参数等于0,或者,若目标编码参数小于0,则确定目标编码参数等于初始编码参数。
[0111]
在本技术实施例中,通过获取点云数据中目标数据块内的待编码信号,以及目标数据块内的待编码信号的信号特征,点云数据的编码方式为非等长编码的编码方式,待编码信号用于反映目标数据块的媒体属性。可见,采用非等长编码的编码方式,可以减少目标数据块的编码数据的数据量。根据目标数据块内的待编码信号的信号特征,确定目标数据块在编码方式下的目标编码参数。此处的目标数据块的编码数据是指用于描述目标数据块的编码数据的位数,即目标数据块的编码数据是指目标数据块的编码数据的长度。根据目标编码参数对目标数据块内的待编码信号进行编码,得到目标数据块的编码数据。可见,采用准确的目标编码参数对目标数据块的待编码信号进行编码,可以实现以较少编码表示待编码信号,以减少目标数据块对应的编码数据的数据量,降低网络传输的压力,同时也可以降低解码设备接收编码数据的接收压力,同时也可以提高对编码数据的解码效率。换言之,通过基于目标数据块内的待编码信号的信号特征,自适应地确定需要采用多少个编码来描述该目标数据块的编码数据,即具有不同信号特征的数据块具有不同的编码,这样能够有效降低目标数据块的编码数据的冗余度,即能够降低目标数据块的编码数据的长度,同时,能够提高目标数据块的编码数据的传输效率。
[0112]
如图5所示,图5是本技术实施例提供的一种点云数据的解码方法,下面结合图5,对本技术实施例提出的点云数据的解码方法进行详细说明,该方法可由计算机设备来执
行,该计算机设备可以是指解码设备。如图5所示,该方法具体可包括但不限于以下步骤:
[0113]
s201,获取点云数据中目标数据块的编码数据。
[0114]
具体的,点云数据广泛应用于城市数字化地图的构建,在如智慧城市、无人驾驶、文物保护等众多热门研究中起技术支撑作用。计算机设备可以通过三维扫描设备对目标对象的表面进行采集,得到点云数据,可以由编码设备对点云数据进行编码,得到点云数据对应的编码数据,并将点云数据对应的编码数据发送给解码设备,解码设备对点云数据的编码数据进行解码,得到点云数据,并对点云数据进行还原。其中,点云数据中包括一个或者多个数据块,目标数据块属于点云数据中一个或者多个数据块中的任意一个。其中,目标数据块可以为点云数据中的任意一个数据点或者至少两个数据点所构成的一组数据点。例如,目标数据块可以是指点云数据、点云数据中的宏块、点云数据中的预测树(由点云数据中多个数据点构成的树)等。该目标数据块的编码数据是编码设备根据目标数据块在非等长编码的编码方式下的目标编码参数,对目标数据块内的待编码信号进行编码得到的。其中,目标编码参数是基于目标数据块内的待编码信号的信号特征确定的。编码设备可以将该点云数据中目标数据块的编码数据发送给解码设备,解码设备接收到点云数据中目标数据块的编码数据后,可以确定用于对该目标数据块的编码数据进行解码的解码方式,该解码方式可以是指编码设备用于对目标数据块进行编码的非等长编码的编码方式对应的解码方式。
[0115]
其中,非等长编码的编码方式可以是指无符号指数哥伦布编码方式、有符号指数哥伦布编码方式、截断指数哥伦布编码方式以及映射指数哥伦布编码方式等。目标数块的解码方式为目标数据块的编码方式对应的解码方式,如目标数据块的编码方式为无符号指数哥伦布编码方式时,则目标数据块的解码方式为无符号指数哥伦布解码方式。
[0116]
s202,根据目标编码参数,确定目标数据块的目标解码参数。
[0117]
具体的,计算机设备可以根据目标编码参数,确定目标数据块的目标解码参数。其中,目标解码参数可以与目标数据块在编码方式下的目标编码参数相同,如,目标数据块在指数哥伦布编码方式下的目标编码参数为“0阶”时,目标解码参数为“0阶”。其中,目标数据块在编码方式下的目标编码参数可以是基于目标数据块内的待编码信号的信号特征确定的,该目标数据块的待编码信号用于反映目标数据块的媒体属性,该媒体属性可以是指几何位置信息、颜、反射率、分类值、强度值、时间、材料特性以及纹理信息等属性。其中,目标数据块内的待编码信号的数量可以为一个或者多个,待编码信号可以是编码设备对目标数据块的媒体属性进行属性预测、属性变换、属性预测变换或者属性变换预测得到的,如几何预测残差、属性预测残差或者属性变换系数等。待编码信号的信号特征可以是指待编码信号的信号阈值范围、待编码信号的分布特征、待编码信号的信号值大小或者与目标数据块的待编码信号关联的关联信号的信号特征等。
[0118]
可选的,待编码信号的信号阈值范围可以是基于目标数据块内的最大待编码信号和最小待编码信号确定的;或者,信号范围值是基于目标数据块的采样精度确定的。目标数据块对应的目标编码参数可以是基于目标索引值,从第二参数表中查询得到的,该第二参数表中包括至少一个索引值,以及与至少一个索引值中的每个索引值关联的编码参数,目标索引值是对待编码信号的信号阈值范围进行量化以及求差处理得到的。可选的,目标编码参数可以是根据点云数据中与目标数据块具有相邻关系的已编码数据块的编码数据确
定的,目标数据块对应的目标编码参数的确定过程可以参见上述图2中编码设备对目标数据块对应的目标编码参数的确定过程,本技术实施例在此不在赘述。
[0119]
可选的,点云数据包括至少两个数据组,目标数据块属于至少两个数据组中的第一数据组,第一数据组内的数据块对应的编码参数相同,已编码数据块属于至少两个数据组中与第一数据组具有相邻关系的第二数据组。其中,至少两个数据组是根据数据块在点云数据中的位置进行分组得到的;或者,至少两个数据组是根据点云数据中数据块分别对应的希尔伯特变换码进行分组得到的;点云数据中数据块分别对应的希尔伯特变换码是对每个数据块在点云数据中的位置进行希尔伯特变换得到的;或者,至少两个数据组是根据划分尺寸对点云数据进行划分得到;或者,至少两个数据组是根据目标限制数量以及数据块的编码顺序对点云数据进行划分得到。其中,目标数据块内的多个不同属性类型的待编码信号之间可以采用不同的编码参数,即一个待编码信号对应一个编码参数。不同待编码信号内的不同子编码信号可以采用相同的编码参数,也可以采用不同的编码参数,具体可以参见上述图2中的描述,本技术实施例在此不在赘述。
[0120]
可选的,计算机设备确定目标解码参数的具体方式可以包括:获取点云数据对应的参数集;参数集中包括点云数据中每个数据块对应的编码参数。从点云数据对应的参数集中,获取目标数据块对应的目标编码参数,将所述目标数据块对应的目标编码参数,确定为所述目标数据块的目标解码参数,将目标数据块对应的目标编码参数,确定为目标数据块的目标解码参数。
[0121]
具体的,编码设备对目标数据块进行编码得到目标数据块的编码数据后,可以将目标数据块的编码数据和目标数据块的目标编码数据进行关联存储,根据一个或者多个数据块分别对应的编码数据生成点云数据的码流。具体的,编码设备可以将点云数据中每个数据块对应的编码参数存储在参数集中,该参数集中包括点云数据中数据块与对应的编码参数之间的对应关系,并将该参数集发送给解码设备。解码设备获取到该参数集以及点云数据的码流后,可以对点云数据中每个数据块对应的编码数据进行解码,得到每个数据块对应的解码信号,目标数据块属于点云数据中的数据块。具体的,参数集中包括点云数据中每个数据块对应的编码参数。计算机设备可以从点云数据对应的参数集中,获取到目标数据块对应的目标编码参数,将目标数据块对应的目标编码参数,确定为目标数据块的目标解码参数。
[0122]
其中,编码设备也可以将点云数据中每个数据块对应的编码参数关联存储在点云数据的码流中,并将点云数据的码流发送给解码设备。解码设备接收到点云数据的码流后,可以从点云数据的码流中获取到点云数据中每个数据块对应的编码数据,以及每个数据块对应的编码参数。计算机设备可以从点云数据中每个数据块对应的编码参数,获取目标数据块对应的目标编码参数,将目标数据块对应的目标编码参数,确定为目标数据块的目标解码参数。
[0123]
计算机设备可以根据所述目标编码参数的参数确定方式,确定所述目标数据块的编码数据对应的目标解码参数,该参数确定方式可以为点云数据的编码设备和解码设备默认的编码参数和解码参数的确定方式。可以理解的是,编码设备采用参数确定方式确定目标编码参数,采用目标编码参数对点云数据进行编码,得到点云数据的编码数据。解码设备可以采用与编码设备确定目标编码参数的参数确定方式相同的方式,确定目标解码参数,
采用目标解码参数对点云数据的编码数据进行解码,得到点云数据。换句话说,编码设备确定目标数据块的目标编码参数的方式与解码设备确定目标数据块的编码数据的目标解码参数的方式相同。其中,目标编码参数的参数确定方式可以是由编码设备和解码设备默认的。
[0124]
可选的,目标编码参数的参数确定方式包括基于查询参数表的方式,即目标编码设备是基于目标数据块内的待编码信号的信号特征,确定目标索引值,从第二参数表中查询到目标数据块对应的目标编码参数的方式,具体内容可以参考上述图2描述的内容,本技术实施例在此不再赘述。计算机设备确定目标解码参数的具体方式可以包括:获取所述目标数据块内的待编码信号对应的信号范围值。对所述目标数据块内的待编码信号对应的信号范围值进行量化,得到量化后的信号范围值。获取所述量化后的信号范围值的对数值,对所述量化后的信号范围值的对数值进行求差处理,得到所述目标数据块对应的目标索引值。从第一参数表中查询与所述目标索引值关联的解码参数,所述第一参数表中包括至少一个索引值,以及与所述至少一个索引值中的每个索引值关联的解码参数。将查询得到的解码参数,确定为所述目标数据块的目标解码参数。
[0125]
具体的,计算机设备可以获取目标数据块内的待编码信号对应的信号范围值,该目标数据块内的待编码信号对应的信号范围值可以是由编码设备发送给解码设备的。计算机设备可以根据目标数据块内的待编码信号对应的信号范围值,生成目标数据块对应的目标索引值。具体的,计算机设备可以获取量化步长(可以由量化参数获得),该量化步长可以由管理人员预先设置,也可以根据待编码信号的信号范围确定。进一步地,计算机设备可以基于量化步长,对目标数据块内的待编码信号对应的信号范围值进行量化,得到量化后的信号范围值。通过对信号范围值进行量化处理,可以属于目标范围内的信号范围值用于一个目标信号范围值代替,以压缩数据,便于后续快速查询到目标数据块对应的目标索引值。进一步地,计算机设备可以获取量化后的信号范围值的对数值,对该量化后的信号范围值的对数值进行求差处理,得到目标数据块对应的目标索引值。
[0126]
进一步地,从第一参数表中查询与目标索引值关联的编码参数,第一参数表中包括至少一个索引值,以及与至少一个索引值中的每个索引值关联的解码参数,即一个索引值对应一个解码参数。计算机设备可以将查询得到的解码参数,确定为目标数据块的目标解码参数。其中,第一参数表与编码设备中的第一参数表相同,可以由编码设备发送给解码设备,可以由解码设备根据编码设备生成第二参数表的方式生成第一参数表。
[0127]
可选的,目标编码参数的参数确定方式包括基于具有相邻关系的数据块的方式,即目标编码设备是基于点云数据中与目标数据块具有相邻关系的已编码数据块的编码数据,对初始阶数进行调整,得到目标数据块的目标编码参数的内容,具体可以参见上述图2中的内容,本技术实施例在此不在赘述。计算机设备确定目标解码参数的具体方式可以包括:获取所述目标数据块内的待编码信号对应的信号范围值。根据所述目标数据块对应的信号范围值确定所述目标数块的初始解码参数。获取所述点云数据中与所述目标数据块具有相邻关系的已解码数据块的解码信号。根据所述已解码数据的解码信号,对所述初始解码参数进行调整,得到所述目标数据块的编码数据对应的目标解码参数。
[0128]
具体的,计算机设备获取目标数据块内的待编码信号对应的信号范围值,根据所述目标数据块对应的信号范围值确定所述目标数块的初始解码参数,具体确定过程可以参
考上述根据目标数据块对应的信号范围值确定目标索引值,根据目标索引值从第一参数表中确定目标解码参数的过程。进一步地,计算机设备可以获取所述点云数据中与所述目标数据块具有相邻关系的已解码数据块的解码信号,根据所述已解码数据的解码信号,对所述初始解码参数进行调整,得到所述目标数据块的编码数据对应的目标解码参数。具体内容可以参考上述图2中编码设备根据已编码数据块的编码数据确定目标编码参数的过程,即解码设备确定目标解码参数的方式与编码设备确定目标编码方式相同,本技术实施例在此不在赘述。
[0129]
可选的,目标数据块内的待编码信号的信号范围值是基于目标数据块内的最大待编码信号和最小待编码信号确定的;或者,信号范围值是基于目标数据块内的待编码信号的采样精度确定的。
[0130]
具体的,信号特征可以是指目标数据块内的待编码信号的信号范围值,该信号范围值是基于目标数据块内的最大待编码信号和最小待编码信号确定的。其中,目标数据块内的最大待编码信号和最小待编码信号确定的可以是由编码设备发送的。具体的,信号范围值可以是指目标数据块内的最大待编码信号的信号值与最小待编码信号的信号值之间的差值。例如,当目标数据块的待编码信号为几何预测残差时,信号范围值可以是指最大几何预测残差与最小几何预测残差的之间的差值。例如,目标数据块内的最大待编码信号的信号值为6,最小待编码信号的信号值为0,则目标数据块的待编码信号的信号范围值为6。或者,该信号范围值可以是基于目标数据块内的待编码信号的采样精度确定的,该目标数据块内的待编码信号的采样精度是编码设备向解码设备发送的。例如,若点云数据的几何精度为10bit,则点云数据中的目标数据块内的待编码信号的采用精度可以为10bit,目标数据块的待编码信号的信号范围值可以为2
10

[0131]
可选的,若编码设备的编码方式可以为指数哥伦布编码方式,则解码设备的解码方式可以为指数哥伦布编码方式,目标数据块的初始解码参数为初始阶数(与编码设备中目标数据块的初始编码参数相同)。计算机设备对初始解码参数进行调整的具体方式可以包括:确定所述已解码数据块的解码信号的目标信号值。根据所述初始阶数,确定第一限制阶数和第二限制阶数,所述第一限制阶数小于所述第二限制阶数。获取所述目标信号值与所述第一限制阶数、所述第二限制阶数之间的大小关系。根据所述大小关系,对所述初始阶数进行调整,得到所述目标数据块关联的目标阶数,将所述目标阶数确定为所述目标数据块的编码数据对应的目标解码参数。
[0132]
具体的,已解码数据块的数量可以为一个或者n1个,若编码设备以一个已编码数据块对初始阶数进行调整,则已解码数据块的数量为一个;若编码设备以n1个已编码数据块对初始阶数进行调整,则已解码数据块的数量为n1个。在已解码数据块的数量为一个,且已编码数据块内的解码信号的数量为1个时,已解码数据块的解码信号的目标信号值可以为已解码数据块内的解码信号对应的信号值。在已解码数据块的数量为一个,且已解码数据块内的解码信号的数量为n1个时,已解码数据块的解码信号的目标信号值可以为已解码数据块内的n1个解码信号对应的信号值的平均值。在已解码数据块的数量为n1个时,已解码数据块的解码信号的目标信号值可以为n1个已解码数据块的解码信号的平均值。计算机设备可以根据初始阶数,确定第一限制阶数和第二限制阶数,第一限制阶数小于第二限制阶数。其中,计算机设备可以设置用于存储已解码数据块的buffer(缓存器)大小为n1个,每
隔n2个点统计已解码数据块的目标信号值。其中,已解码数据块可以为点云数据中的一个数据点,可以每隔n1数据点调整初始阶数。
[0133]
具体的,第一限制阶数是指下限阶数,第二限制阶数可以是指上限阶数,初始阶数用于golombnum表示,第一限制阶数用golombnumlow表示,第二限制阶数用golombnumlow表示。可选的,计算机设备根据初始阶数确定第一限制阶数和第二限制阶数的方式可以包括但不限于以下方式:方式一:golombnumlow=2^golombnum,golombnumup=2^(golombnum+1)。方式二:golombnumlow=2^(golombnum-1),golombnumup=2^golombnum。方式三:golombnumup=2^((golombnum-1))+2^((golombnum-2));golombnumlow=2^((golombnum-1))-2^((golombnum-2))。需要说明的是,除上述方式外,还可以根据具体情况采用其他方式确定第一限制阶数和第二限制阶数,申请实施例在此不在赘述。
[0134]
进一步地,计算机设备可以获取已解码数据块的解码信号的目标信号值与第一限制阶数、第二限制阶数之间的大小关系。该大小关系可以包括目标信号值小于第一限制阶数,或者,目标信号值大于第二阶数,或者,目标信号值大于或者等于第一限制阶数且小于或者等于第二限制阶数。计算机设备可以根据该大小关系,对初始阶数进行调整,得到目标数据块关联的目标阶数。计算机设备可以将目标阶数确定为目标数据块的目标解码参数。
[0135]
可选的,计算机设备对初始阶数进行调整的具体方式可以包括但不限于一下方式:若大小关系指示目标信号值小于第一限制阶数,则将初始阶数与第一调整步长之间的和,确定为目标数据块关联的目标阶数。若大小关系指示目标信号值大于第二限制阶数,则将初始阶数与第一调整步长之间的差,确定为目标数据块关联的目标阶数。若大小关系指示目标信号值大于或者等于第一限制阶数,且小于或者等于第二限制阶数,则将初始阶数确定为目标数据块关联的目标阶数。
[0136]
具体的,若计算机设备确定大小关系指示目标信号值小于第一限制阶数,则计算机设备可以将初始阶数与第一调整步长之间的和,确定为目标数据块的关联的目标阶数。其中,第一调整步长可以由历史编码记录信息确定,或者,第一调整步长可以由管理人员确定等,第一调整步长可以为1、2、3等数值。若大小关系指示目标信号值大于第二限制阶数,则计算机设备可以将初始阶数与第一调整步长之间的差,确定为目标数据块关联的目标阶数。若大小关系指示目标信号值大于或者等于第一限制阶数且小于或者等于第二限制阶数,则不对初始阶数进行调整,将初始阶数确定为数据块关联的目标阶数。
[0137]
可选的,获取所述已解码数据块对应的解码参数。若所述大小关系指示所述目标信号值小于所述第一限制阶数,则将所述历史阶数与第二调整步长之间的和,确定为所述目标数据块关联的目标阶数。若所述大小关系指示所述目标信号值大于所述第二限制阶数,则将所述历史阶数与所述第二调整步长之间的差,确定为所述目标数据块关联的目标阶数。若所述大小关系指示所述目标信号值大于或者等于所述第一限制阶数,且小于或者等于所述第二限制阶数,则将所述初始阶数确定为所述目标数据块关联的目标阶数。
[0138]
具体的,计算机设备可以获取已解码数据块对应的历史阶数,若大小关系指示目标信号值小于第一限制阶数,则将历史阶数与第二调整步长之间的和,确定为目标数据块关联的目标阶数。第二调整步长可以与第一调整步长相同,也可以与第一调整步长不相同。同样的,第二调整步长也可以由历史编码记录信息确定,或者,第二调整步长可以由管理人员确定等,第二调整步长可以为1、2、3等数值。若大小关系指示目标信号值大于第二限制阶
数,则将历史阶数与第二调整步长之间的差,确定为目标数据块关联的目标阶数。若大小关系指示目标信号值大于或者等于第一限制阶数,且小于或者等于第二限制阶数,则将初始阶数确定为目标数据块关联的目阶数。具体可以参考上述图2中对初始阶数的调整内容,本技术实施例在此不在赘述。
[0139]
可选的,计算机设备对初始阶数进行调整的具体方式可以包括但不限于以下方式:根据大小关系,对初始阶数进行调整,得到目标数据块关联的候选阶数。若候选阶数小于或者等于第三限制阶数,则将候选阶数与第三调整步长之间和,确定为目标数据块关联的目标阶数。若目标阶数大于或者等于第四限制阶数,则将候选阶数与第三调整步长之间差,确定为目标数据块关联的目标阶数;第三限制阶数小于第四限制阶数。若目标阶数大于第三限制阶数且小于第四限制阶数,则将候选阶数,确定为目标数据块关联的目标阶数。
[0140]
具体的,计算机设备可以根据大小关系,对初始阶数进行调整,得到目标数据块关联的候选阶数,具体对初始阶数进行调整的过程可以参见上述对初始阶数进行调整的过程。计算机设备可以检测目标数据块关联的候选阶数与第三限制阶数、第四限制阶数之间的关系,根据该关系对候选阶数进行调整,得到目标数据块关联的目标阶数。该第三限制阶数和第四限制阶数用于限制目标数据块关联的目标阶数在合理的阶数范围内,第三限制阶数小于第四限制阶数。具体的,若候选阶数小于或者等于第三限制阶数,则可以确定候选阶数太小,则可以将候选阶数与第三调整步长之间的和,确定为目标数据块关联的目标阶数。或者,若候选阶数小于或者等于第三限制阶数,则可以将第一预设阶数作为目标数据关联的目标阶数,该第一预设阶数大于第三限制阶数且小于第四限制阶数,即第一预设阶数在合理的阶数范围内。若目标阶数大于或者等于第四限制阶数,则可以将候选阶数与第三调整步长之间的差,确定为目标数据块关联的目标阶数。或者,若候选阶数大于或者等于第四限制阶数,则可以将第二预设阶数确定为目标数据块关联的目标阶数。第二预设阶数大于第三限制阶数且小于第四限制阶数,即第二预设阶数在合理的阶数范围内。若目标阶数大于第三限制阶数且小于第四阶数,则说明候选阶数在合理的阶数范围内,不对候选阶数进行调整,将候选阶数确定为目标数据块关联的目标阶数。
[0141]
需要说明的是,上述具体内容可以参考图2中基于具有相邻关系的已编码数据块确定目标编码参数的过程,即解码设备基于已编码数据块确定目标解码采参数的过程与编码设备根据已编码数据块确定目标编码参数的过程相同。
[0142]
可选的,所述目标数据块内的编码数据包括第一编码数据和第二编码数据,所述第一编码数据与所述第二编码数据的属性类型不同;所述目标数据块的目标解码参数包括用于对所述第一编码数据进行解码的第一解码参数,以及用于对所述第二编码数据进行解码的第二解码参数;所述第一解码参数与所述第二解码参数不相同。
[0143]
可选的,所述第一编码数据包括第一子编码数据、第二子编码数据以及第三子编码数据;所述第一解码参数是基于所述第一子编码数据、所述第二子编码数据以及所述第三子编码数据分别对应的子信号特征确定的;所述第一子编码数据、所述第二子编码数据以及所述第三子编码数据分别对应的解码参数均为所述第一解码参数;与所述第一编码数据关联的关联信息对应的解码参数为所述第一解码参数。
[0144]
可选的,所述第一编码数据包括第一子编码数据、第二子编码数据以及第三子编码数据,所述第一解码参数包括所述第一子编码数据对应的第一子解码参数、所述第二子
编码数据对应的第二子解码参数以及所述第三子编码数据对应的第三子解码参数;所述第一子解码参数是基于所述第一子编码数据对应的子信号特征确定的;所述第二子解码参数是基于所述第一子解码参数以及目标偏移量确定的;所述第三子解码参数是基于所述第二子解码参数以及所述目标偏移量确定的。
[0145]
具体的,上述内容可以参考上述图2中的描述,编码设备确定目标数据块的目标编码参数的方式与解码设备确定目标数据块的编码数据的目标解码参数的方式相同,本技术实施例在此不在赘述。
[0146]
s203,根据目标解码参数对编码数据进行解码,得到目标数据块的解码信号。
[0147]
具体的,计算机设备可以根据目标解码参数,对编码数据进行解码,得到目标数据块的解码信号,该解码信号用于反映目标数据块的媒体属性。目标数据块的媒体属性可以包括媒体属性可以是指几何位置信息、颜、反射率、分类值、强度值、时间、材料特性以及纹理信息等属性。该解码信号可以是指对目标数据块的媒体属性进行属性预测、属性变换、属性预测变换或者属性变换预测得到的,如几何预测残差、属性预测残差或者属性变换系数等。
[0148]
可选的,目标数据块的编码数据中包括编码标签以及目标信号阈值。计算机设备对编码数据进行解码的具体方式可以包括:若目标数据块的编码数据中包括的编码标签为第一编码标签,则根据目标解码参数对编码数据进行解码,得到初始解码信号,根据目标信号阈值对初始解码信号进行求和处理,得到目标数据块的解码信号;第一编码标签用于指示目标数据块的解码信号与目标信号阈值不相同。若目标数据块的编码数据中包括的编码标签为第二编码标签,则将目标信号阈值确定为目标数据块的解码信号;第二编码标签用于指示目标数据块的解码信号与目标信号阈值相同。
[0149]
具体的,若计算机设备检测到目标数据块的编码数据中包括编码标签和目标信号阈值时,计算机设备可以检测目标数据块的编码数据中的编码标签是否为第一编码标签。若编码数据中的编码标签为第一编码标签,该第一编码标签用于指示目标数据块的解码信号与目标信号阈值不相同,则计算机设备可以根据目标解码参数对目标数据块对应的编码数据进行解码,得到初始解码信号。进一步地,计算机设备可以根据目标信号阈值对初始解码信号进行求和处理,得到目标数据块的解码信号。如在编码设备采用信号差值=待编码信号的信号值-(m+1),对目标数据块的待编码信号进行编码时,则解码设备可以采用初始解码信号与m+1的和,作为目标数据块的解码信号,其中,m为目标信号阈值。若目标数据块中的编码数据中包括的编码标签为第二编码标签时,该第二编码标签用于指示目标数据块的解码信号与目标信号阈值相同,则计算机设备可以将目标信号阈值确定为目标数据块的解码信号。
[0150]
在本技术实施例中,点云数据中目标数据块的编码数据是根据目标数据块在非等长编码的编码方式下的目标编码参数,对目标数据块内的待编码信号进行编码得到的,该目标编码参数是基于该目标数据块内的待编码信号的信号特征确定的。此处的目标数据块的编码数据是指用于描述目标数据块的编码数据的位数,即目标数据块的编码数据是指目标数据块的编码数据的长度。换言之,通过基于目标数据块内的待编码信号的信号特征,自适应地确定需要采用多少个编码来描述该目标数据块的编码数据,即具有不同信号特征的数据块具有不同的编码,这样能够有效降低目标数据块的编码数据的冗余度,即能够降低
目标数据块的编码数据的长度,同时,能够提高目标数据块的编码数据的传输效率。进一步,在解码设备接收到目标数据块的编码数据后,可以根据目标解码参数对该目标数据块的编码数据进行解码,得到该目标数据块的解码信号,该目标解码参数是上述目标编码参数确定的,由于目标数据块的编码数据的冗余度比较低,因此,可以快速地解码出目标数据块的解码信号,进而可以提高解码效率。
[0151]
请参见图6,图6是本技术实施例提供的一种点云数据的解码装置的结构示意图。上述点云数据的解码装置可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如该点云数据的解码装置为一个应用软件;该点云数据的解码装置可以用于执行本技术实施例提供的点云数据的解码方法中的相应步骤。如图6所示,该点云数据的解码装置可以包括:第一获取模块11、第一确定模块12以及解码模块13。
[0152]
第一获取模块11,用于获取点云数据中目标数据块的编码数据;所述目标数据块的编码数据是根据所述目标数据块在非等长编码的编码方式下的目标编码参数,对所述目标数据块内的待编码信号进行编码得到的,所述目标编码参数是基于所述目标数据块内的待编码信号的信号特征确定的;
[0153]
第一确定模块12,用于根据所述目标编码参数,确定所述目标数据块的目标解码参数;
[0154]
解码模块13,用于根据所述目标解码参数对所述目标数据块的编码数据进行解码,得到所述目标数据块的解码信号;所述解码信号用于反映所述目标数据块的媒体属性。
[0155]
其中,第一确定模块12包括:
[0156]
第一查询单元1201,用于从点云数据对应的参数集中,获取目标数据块对应的目标编码参数;
[0157]
第一确定单元1202,用于将所述目标数据块对应的目标编码参数,确定为所述目标数据块的目标解码参数。
[0158]
可理解的是,第一确定模块12根据所述目标编码参数,确定所述目标数据块的目标解码参数,包括:
[0159]
若所述目标编码参数的参数确定方式为基于查询参数表的方式,则获取所述目标数据块内的待编码信号对应的信号范围值;
[0160]
根据所述目标数据块内的待编码信号对应的信号范围值,确定所述目标数据块对应的目标索引值;
[0161]
从第一参数表中查询与所述目标索引值关联的解码参数,所述第一参数表中包括至少一个索引值,以及与所述至少一个索引值中的每个索引值关联的解码参数;
[0162]
将查询得到的解码参数,确定为所述目标数据块的目标解码参数。
[0163]
可理解的是,第一确定模块12根据所述目标编码参数,确定所述目标数据块的目标解码参数,包括:
[0164]
若所述目标编码参数的参数确定方式为基于具有相邻关系的数据块的方式,则获取所述目标数据块内的待编码信号对应的信号范围值;
[0165]
根据所述目标数据块对应的信号范围值确定所述目标数块的初始解码参数;
[0166]
获取所述点云数据中与所述目标数据块具有相邻关系的已解码数据块的解码信号;
[0167]
根据所述已解码数据的解码信号,对所述初始解码参数进行调整,得到所述目标数据块的编码数据对应的目标解码参数。
[0168]
可理解的是,所述初始解码参数为初始阶数;第一确定模块12根据所述已解码数据的解码信号,对所述初始解码参数进行调整,得到所述目标数据块的编码数据对应的目标解码参数,包括:
[0169]
确定所述已解码数据块的解码信号的目标信号值;
[0170]
根据所述初始阶数,确定第一限制阶数和第二限制阶数,所述第一限制阶数小于所述第二限制阶数;
[0171]
获取所述目标信号值与所述第一限制阶数、所述第二限制阶数之间的大小关系;
[0172]
根据所述大小关系,对所述初始阶数进行调整,得到所述目标数据块关联的目标阶数;
[0173]
将所述目标阶数确定为所述目标数据块的编码数据对应的目标解码参数。
[0174]
可理解的是,第一确定模块12根据所述大小关系,对所述初始阶数进行调整,得到所述目标数据块关联的目标阶数,包括:
[0175]
若所述大小关系指示所述目标信号值小于所述第一限制阶数,则将所述初始阶数与第一调整步长之间的和,确定为所述目标数据块关联的目标阶数;
[0176]
若所述大小关系指示所述目标信号值大于所述第二限制阶数,则将所述初始阶数与所述第一调整步长之间的差,确定为所述目标数据块关联的目标阶数;
[0177]
若所述大小关系指示所述目标信号值大于或者等于所述第一限制阶数,且小于或者等于所述第二限制阶数,则将所述初始阶数确定为所述目标数据块关联的目标阶数。
[0178]
可理解的是,第一确定模块12根据所述大小关系,对所述初始阶数进行调整,得到所述目标数据块关联的目标阶数,包括:
[0179]
获取所述已解码数据块对应的解码参数;
[0180]
若所述大小关系指示所述目标信号值小于所述第一限制阶数,则将所述历史阶数与第二调整步长之间的和,确定为所述目标数据块关联的目标阶数;
[0181]
若所述大小关系指示所述目标信号值大于所述第二限制阶数,则将所述历史阶数与所述第二调整步长之间的差,确定为所述目标数据块关联的目标阶数;
[0182]
若所述大小关系指示所述目标信号值大于或者等于所述第一限制阶数,且小于或者等于所述第二限制阶数,则将所述初始阶数确定为所述目标数据块关联的目标阶数。
[0183]
可理解的是,第一确定模块12根据所述大小关系,对所述初始阶数进行调整,得到所述目标数据块关联的目标阶数,包括:
[0184]
根据所述大小关系,对所述初始阶数进行调整,得到所述目标数据块关联的候选阶数;
[0185]
若所述候选阶数小于或者等于第三限制阶数,则将所述候选阶数与第三调整步长之间的和,确定为所述目标数据块关联的目标阶数;
[0186]
若所述候选阶数大于或者等于第四限制阶数,则将所述候选阶数与所述第三调整步长之间的差,确定为所述目标数据块关联的目标阶数;所述第三限制阶数小于所述第四限制阶数;
[0187]
若所述候选阶数大于所述第三限制阶数且小于所述第四限制阶数,则将所述候选
阶数,确定为所述目标数据块关联的目标阶数。
[0188]
可理解的是,所述目标数据块内的待编码信号的信号范围值是基于所述目标数据块内的最大待编码信号和最小待编码信号确定的;或者,
[0189]
所述信号范围值是基于所述目标数据块内的待编码信号的采样精度确定的。
[0190]
可理解的是,所述目标数据块内的编码数据包括第一编码数据和第二编码数据,所述第一编码数据与所述第二编码数据的属性类型不同;
[0191]
所述目标数据块的目标解码参数包括用于对所述第一编码数据进行解码的第一解码参数,以及用于对所述第二编码数据进行解码的第二解码参数;所述第一解码参数与所述第二解码参数不相同。
[0192]
可理解的是,所述第一编码数据包括第一子编码数据、第二子编码数据以及第三子编码数据;
[0193]
所述第一解码参数是基于所述第一子编码数据、所述第二子编码数据以及所述第三子编码数据分别对应的子信号特征确定的;
[0194]
所述第一子编码数据、所述第二子编码数据以及所述第三子编码数据分别对应的解码参数均为所述第一解码参数;
[0195]
与所述第一编码数据关联的关联信息对应的解码参数为所述第一解码参数。
[0196]
可理解的是,所述第一编码数据包括第一子编码数据、第二子编码数据以及第三子编码数据,所述第一解码参数包括所述第一子编码数据对应的第一子解码参数、所述第二子编码数据对应的第二子解码参数以及所述第三子编码数据对应的第三子解码参数;
[0197]
所述第一子解码参数是基于所述第一子编码数据对应的子信号特征确定的;
[0198]
所述第二子解码参数是基于所述第一子解码参数以及目标偏移量确定的;
[0199]
所述第三子解码参数是基于所述第二子解码参数以及所述目标偏移量确定的。
[0200]
解码模块13包括:
[0201]
第一解码单元1301,用于若目标数据块的编码数据中包括的编码标签为第一编码标签,则根据目标解码参数对编码数据进行解码,得到初始解码信号,根据目标信号阈值对初始解码信号进行求和处理,得到目标数据块的解码信号;第一编码标签用于指示目标数据块的解码信号与目标信号阈值不相同;
[0202]
第二解码单元1302,用于若目标数据块的编码数据中包括的编码标签为第二编码标签,则将目标信号阈值确定为目标数据块的解码信号;第二编码标签用于指示目标数据块的解码信号与目标信号阈值相同。
[0203]
根据本技术的一个实施例,图6示的点云数据的解码装置中的各个模块可以分别或全部合并为一个或若干个单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个子单元,可以实现同样的操作,而不影响本技术的实施例的技术效果的实现。上述模块是基于逻辑功能划分的,在实际应用中,一个模块的功能也可以由多个单元来实现,或者多个模块的功能由一个单元实现。在本技术的其它实施例中,点云数据的解码装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
[0204]
在本技术中,点云数据中目标数据块的编码数据是根据目标数据块在非等长编码的编码方式下的目标编码参数,对目标数据块内的待编码信号进行编码得到的,该目标编
码参数是基于该目标数据块内的待编码信号的信号特征确定的。此处的目标数据块的编码数据是指用于描述目标数据块的编码数据的位数,即目标数据块的编码数据是指目标数据块的编码数据的长度。换言之,通过基于目标数据块内的待编码信号的信号特征,自适应地确定需要采用多少个编码来描述该目标数据块的编码数据,即具有不同信号特征的数据块具有不同的编码,这样能够有效降低目标数据块的编码数据的冗余度,即能够降低目标数据块的编码数据的长度,同时,能够提高目标数据块的编码数据的传输效率。进一步,在解码设备接收到目标数据块的编码数据后,可以根据目标解码参数对该目标数据块的编码数据进行解码,得到该目标数据块的解码信号,该目标解码参数是上述目标编码参数确定的,由于目标数据块的编码数据的冗余度比较低,因此,可以快速地解码出目标数据块的解码信号,进而可以提高解码效率。
[0205]
请参见图7,图7是本技术实施例提供的一种点云数据的编码装置的结构示意图。上述点云数据的编码装置可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如该点云数据的编码装置为一个应用软件;该点云数据的编码装置可以用于执行本技术实施例提供的点云数据的编码方法中的相应步骤。如图7所示,该点云数据的编码装置可以包括:第二获取模块21和第二确定模块22、编码模块23以及第三确定模块24。
[0206]
第二获取模块21,用于获取点云数据中目标数据块内的待编码信号,以及目标数据块内的待编码信号的信号特征;点云数据的编码方式为非等长编码的编码方式,待编码信号用于反映目标数据块的媒体属性;
[0207]
第二确定模块22,用于根据目标数据块内的待编码信号的信号特征,确定目标数据块在编码方式下的目标编码参数;
[0208]
编码模块23,用于根据目标编码参数对目标数据块内的待编码信号进行编码,得到目标数据块的编码数据。
[0209]
其中,目标数据块内的待编码信号的信号特征包括目标数据块内的待编码信号的信号范围值;信号范围值是基于目标数据块内的最大待编码信号和最小待编码信号确定的;或者,
[0210]
信号范围值是基于目标数据块的采样精度确定的。
[0211]
其中,第二确定模块22包括:
[0212]
生成单元2201,用于对所述信号特征所包括的信号范围值进行量化,得到量化后的信号范围值;获取所述量化后的信号范围值的对数值,对所述量化后的信号范围值的对数值进行求差处理,得到所述目标数据块对应的目标索引值;
[0213]
第二查询单元2202,用于从第二参数表中查询与所述目标索引值关联的编码参数;所述第二参数表中包括至少一个索引值,以及与所述至少一个索引值中的每个索引值关联的编码参数,所述第二参数表是基于第一数据组中包含的数据块的数量相同,所述第一数据中为点云数据的至少两个数据组中包含所述目标数据块的数据组,所述目标索引值属于目标索引值范围,所述目标索引值范围是根据所述第二参数表中的至少一个索引值确定的;
[0214]
第二确定单元2203,用于将查询得到的编码参数,确定为目标数据块在编码方式下的目标编码参数。
[0215]
其中,第二确定模块22包括:
[0216]
第三确定单元2204,用于根据目标数据块内的待编码信号的信号特征,确定目标数据块在编码方式下的初始编码参数;
[0217]
获取单元2205,用于获取点云数据中与目标数据块具有相邻关系的已编码数据块的编码数据;
[0218]
调整单元2206,用于根据已编码数据块的编码数据,对初始编码参数进行调整,得到目标数据块在编码方式下的目标编码参数。
[0219]
其中,初始编码参数为初始阶数;
[0220]
调整单元2206具体用于:
[0221]
确定已编码数据块的编码数据的目标编码值;
[0222]
根据初始阶数,确定第一限制阶数和第二限制阶数,第一限制阶数小于第二限制阶数;
[0223]
获取目标编码值与第一限制阶数、第二限制阶数之间的大小关系;
[0224]
根据大小关系,对初始阶数进行调整,得到目标数据块关联的目标阶数;
[0225]
将目标阶数确定为目标数据块在编码方式下的目标编码参数。
[0226]
其中,调整单元2206具体用于:
[0227]
若大小关系指示目标编码值小于第一限制阶数,则将初始阶数与第一调整步长之间的和,确定为目标数据块关联的目标阶数;
[0228]
若大小关系指示目标编码值大于第二限制阶数,则将初始阶数与第一调整步长之间的差,确定为目标数据块关联的目标阶数;
[0229]
若大小关系指示目标编码值大于或者等于第一限制阶数,且小于或者等于第二限制阶数,则将初始阶数确定为目标数据块关联的目标阶数。
[0230]
其中,调整单元2206具体用于:
[0231]
获取已编码数据块对应的编码参数;
[0232]
若大小关系指示目标编码值小于第一限制阶数,则将历史阶数与第二调整步长之间的和,确定为目标数据块关联的目标阶数;
[0233]
若大小关系指示目标编码值大于第二限制阶数,则将历史阶数与第二调整步长之间的差,确定为目标数据块关联的目标阶数;
[0234]
若大小关系指示目标编码值大于或者等于第一限制阶数,且小于或者等于第二限制阶数,则将初始阶数确定为目标数据块关联的目标阶数。
[0235]
其中,调整单元2206具体用于:
[0236]
根据大小关系,对初始阶数进行调整,得到目标数据块关联的候选阶数;
[0237]
若候选阶数小于或者等于第三限制阶数,则将候选阶数与第三调整步长之间的和,确定为目标数据块关联的目标阶数;
[0238]
若目标阶数大于或者等于第四限制阶数,则将候选阶数与第三调整步长之间的差,确定为目标数据块关联的目标阶数;第三限制阶数小于第四限制阶数;
[0239]
若目标阶数大于第三限制阶数且小于第四限制阶数,则将候选阶数,确定为目标数据块关联的目标阶数。
[0240]
其中,已编码数据块的编码数据的目标编码值为已编码数据块的编码数据中所有编码值的平均值;或者,
[0241]
已编码数据块的编码数据的目标编码值为已编码数据块的编码数据中非零编码值的平均值。
[0242]
其中,点云数据包括至少两个数据组,目标数据块属于至少两个数据组中的第一数据组;第一数据组内的数据块对应的编码参数均为目标编码参数;
[0243]
已编码数据块属于至少两个数据组中与第一数据组具有相邻关系的第二数据组。
[0244]
其中,至少两个数据组是根据数据块在点云数据中的位置进行分组得到的;或者,
[0245]
至少两个数据组是根据点云数据中数据块分别对应的希尔伯特变换码进行分组得到的;点云数据中数据块分别对应的希尔伯特变换码是对每个数据块在点云数据中的位置进行希尔伯特变换得到的;或者,
[0246]
至少两个数据组是根据划分尺寸对点云数据进行划分得到;或者,
[0247]
至少两个数据组是根据目标限制数量以及数据块的编码顺序对点云数据进行划分得到。
[0248]
其中,目标数据块内的待编码信号包括几何预测残差、属性预测残差以及属性变换系数中的一种或者多种;
[0249]
目标数据块内的待编码信号包括第一待编码信号和第二待编码信号,第一待编码信号与第二待编码信号的属性类型不同;
[0250]
目标数据块的目标编码参数包括用于对第一待编码信号进行编码的第一编码参数,以及用于对第二待编码信号进行编码的第二编码参数;第一编码参数与第二编码参数不相同。
[0251]
其中,第一待编码信号包括第一子编码信号、第二子编码信号以及第三子编码信号;
[0252]
第一编码参数是基于第一子编码信号、第二子编码信号以及第三子编码信号分别对应的子信号特征确定的;
[0253]
第一子编码信号、第二子编码信号以及第三子编码信号分别对应的编码参数均为第一编码参数;
[0254]
与第一待编码信号关联的关联信息对应的编码参数为第一编码参数。
[0255]
其中,第一待编码信号包括第一子编码信号、第二子编码信号以及第三子编码信号,第一编码参数包括第一子编码信号对应的第一子编码参数、第二子编码信号对应的第二子编码参数以及第三子编码信号对应的第三子编码参数;
[0256]
第一子编码参数是基于第一子编码信号对应的子信号特征确定的;
[0257]
第二子编码参数是基于第一子编码参数以及目标偏移量确定的;
[0258]
第三子编码参数是基于第二子编码参数以及目标偏移量确定的。
[0259]
其中,目标数据块内的待编码信号的数量为m个,m为正整数;
[0260]
编码模块23包括:
[0261]
编码单元2301,用于若待编码信号与目标信号阈值不相同,则根据第一编码标签和目标编码参数,对待编码信号进行编码,得到待所编码信号的编码数据;待编码信号属于m个待编码信号,目标信号阈值为m个待编码信号中出现次数最多的待编码信号,第一编码标签用于指示待编码信号与目标信号阈值不相同,i为小于或者等于m的正整数;
[0262]
第四确定单元2302,用于若获取到m个待编码信号分别对应的编码数据,则将m个
待编码信号分别对应的编码数据确定为目标数据块的编码数据。
[0263]
其中,点云数据的编码装置还包括:
[0264]
第三确定模块24,用于若待编码信号与目标信号阈值相同,则将第二编码标签确定为待编码信号的编码数据;第二编码标签用于指示待编码信号与目标信号阈值相同。
[0265]
其中,编码单元2301具体用于:
[0266]
若待编码信号与目标信号阈值不相同,则生成用于指示待编码信号与目标信号阈值不相同的第一编码标签;
[0267]
根据目标信号阈值,对待编码信号进行求差处理,得到信号差值;
[0268]
根据目标编码参数对信号差值进行编码,得到待编码信号的信号编码值;
[0269]
将待编码信号的信号编码值以及第一编码标签确定为待编码信号的编码数据。
[0270]
根据本技术的一个实施例,图7示的点云数据的编码装置中的各个模块可以分别或全部合并为一个或若干个单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个子单元,可以实现同样的操作,而不影响本技术的实施例的技术效果的实现。上述模块是基于逻辑功能划分的,在实际应用中,一个模块的功能也可以由多个单元来实现,或者多个模块的功能由一个单元实现。在本技术的其它实施例中,点云数据的编码装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
[0271]
在本技术实施例中,通过获取点云数据中目标数据块内的待编码信号,以及目标数据块内的待编码信号的信号特征,点云数据的编码方式为非等长编码的编码方式,待编码信号用于反映目标数据块的媒体属性。可见,采用非等长编码的编码方式,可以减少目标数据块的编码数据的数据量。根据目标数据块内的待编码信号的信号特征,确定目标数据块在编码方式下的目标编码参数。此处的目标数据块的编码数据是指用于描述目标数据块的编码数据的位数,即目标数据块的编码数据是指目标数据块的编码数据的长度。根据目标编码参数对目标数据块内的待编码信号进行编码,得到目标数据块的编码数据。可见,采用准确的目标编码参数对目标数据块的待编码信号进行编码,可以实现以较少编码表示待编码信号,以减少目标数据块对应的编码数据的数据量,降低网络传输的压力,同时也可以降低解码设备接收编码数据的接收压力,同时也可以提高对编码数据的解码效率。换言之,通过基于目标数据块内的待编码信号的信号特征,自适应地确定需要采用多少个编码来描述该目标数据块的编码数据,即具有不同信号特征的数据块具有不同的编码,这样能够有效降低目标数据块的编码数据的冗余度,即能够降低目标数据块的编码数据的长度,同时,能够提高目标数据块的编码数据的传输效率。
[0272]
请参见图8,图8是本技术实施例提供的一种计算机设备的结构示意图。如图8所示,该计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,上述计算机设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(display)、键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。可选的,网络接口1004可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器1005还可以是至少一个位于远离前述处理器1001的存储装置。如图8所示,作为
一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
[0273]
在如图8所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
[0274]
获取点云数据中目标数据块的编码数据;所述目标数据块的编码数据是根据所述目标数据块在非等长编码的编码方式下的目标编码参数,对所述目标数据块内的待编码信号进行编码得到的,所述目标编码参数是基于所述目标数据块内的待编码信号的信号特征确定的;
[0275]
根据所述目标编码参数,确定所述目标数据块的目标解码参数;
[0276]
根据所述目标解码参数对所述目标数据块的编码数据进行解码,得到所述目标数据块的解码信号;所述解码信号用于反映所述目标数据块的媒体属性。
[0277]
应当理解,本技术实施例中所描述的计算机设备1000可执行前文图5所对应实施例中对点云数据的解码方法的描述,也可执行前文图7所对应实施例中对点云数据的解码装置的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
[0278]
请参见图9,图9是本技术实施例提供的一种计算机设备的结构示意图。如图9所示,该计算机设备2000可以包括:处理器2001,网络接口2004和存储器2005,此外,上述计算机设备2000还可以包括:用户接口2003,和至少一个通信总线2002。其中,通信总线2002用于实现这些组件之间的连接通信。其中,用户接口2003可以包括显示屏(display)、键盘(keyboard),可选用户接口2003还可以包括标准的有线接口、无线接口。可选的,网络接口2004可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器2005可以是高速ram存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器2005还可以是至少一个位于远离前述处理器2001的存储装置。如图9所示,作为一种计算机可读存储介质的存储器2005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
[0279]
在如图9所示的计算机设备2000中,网络接口2004可提供网络通讯功能;而用户接口2003主要用于为用户提供输入的接口;而处理器2001可以用于调用存储器2005中存储的设备控制应用程序,以实现:
[0280]
获取点云数据中目标数据块内的待编码信号,以及目标数据块内的待编码信号的信号特征;点云数据的编码方式为非等长编码的编码方式,待编码信号用于反映目标数据块的媒体属性;
[0281]
根据目标数据块内的待编码信号的信号特征,确定目标数据块在编码方式下的目标编码参数;
[0282]
根据目标编码参数对目标数据块内的待编码信号进行编码,得到目标数据块的编码数据。
[0283]
应当理解,本技术实施例中所描述的计算机设备2000可执行前文图2所对应实施例中对点云数据的编码方法的描述,也可执行前文图6所对应实施例中对点云数据的编码装置的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
[0284]
此外,这里需要指出的是:本技术实施例还提供了一种计算机可读存储介质,且计
算机可读存储介质中存储有前文提及的点云数据的解码装置所执行的计算机程序,且计算机程序包括程序指令,当处理器执行程序指令时,能够执行前文图5所对应实施例中对点云数据的解码方法,或者,图2所对应实施例中对点云数据的编码方法的描述,因此,这里将不再进行赘述。
[0285]
另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本技术所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本技术方法实施例的描述。作为示例,程序指令可被部署在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行,分布在多个地点且通过通信网络互连的多个计算设备可以组成区块链系统。
[0286]
此外,需要说明的是:本技术实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或者计算机程序可以包括计算机指令,该计算机指令可以存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器可以执行该计算机指令,使得该计算机设备执行前文图5所对应实施例中对点云数据的解码方法,或者,图2所对应实施例中对点云数据的编码方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本技术所涉及的计算机程序产品或者计算机程序实施例中未披露的技术细节,请参照本技术方法实施例的描述。
[0287]
需要说明的是,对于前述的各个方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,因为依据本技术,某一些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本技术所必须的。
[0288]
本技术实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
[0289]
本技术实施例装置中的模块可以根据实际需要进行合并、划分和删减。
[0290]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,的存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)或随机存储记忆体(random access memory,ram)等。
[0291]
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

技术特征:


1.一种点云数据的解码方法,其特征在于,包括:获取点云数据中目标数据块的编码数据;所述目标数据块的编码数据是根据所述目标数据块在非等长编码的编码方式下的目标编码参数,对所述目标数据块内的待编码信号进行编码得到的,所述目标编码参数是基于所述目标数据块内的待编码信号的信号特征确定的;根据所述目标编码参数,确定所述目标数据块的目标解码参数;根据所述目标解码参数对所述目标数据块的编码数据进行解码,得到所述目标数据块的解码信号;所述解码信号用于反映所述目标数据块的媒体属性。2.根据权利要求1所述的方法,其特征在于,所述根据所述目标编码参数,确定所述目标数据块的目标解码参数,包括:从所述点云数据对应的参数集中,获取所述目标数据块对应的目标编码参数;将所述目标数据块对应的目标编码参数,确定为所述目标数据块的编码数据对应的目标解码参数。3.根据权利要求1所述的方法,其特征在于,所述根据所述目标编码参数,确定所述目标数据块的目标解码参数,包括:若所述目标编码参数的参数确定方式为基于查询参数表的方式,则获取所述目标数据块内的待编码信号对应的信号范围值;根据所述目标数据块内的待编码信号对应的信号范围值,确定所述目标数据块对应的目标索引值;从第一参数表中查询与所述目标索引值关联的解码参数,所述第一参数表中包括至少一个索引值,以及与所述至少一个索引值中的每个索引值关联的解码参数;将查询得到的解码参数,确定为所述目标数据块的目标解码参数。4.根据权利要求1所述的方法,其特征在于,所述根据所述目标编码参数,确定所述目标数据块的目标解码参数,包括:若所述目标编码参数的参数确定方式为基于具有相邻关系的数据块的方式,则获取所述目标数据块内的待编码信号对应的信号范围值;根据所述目标数据块对应的信号范围值确定所述目标数块的初始解码参数;获取所述点云数据中与所述目标数据块具有相邻关系的已解码数据块的解码信号;根据所述已解码数据的解码信号,对所述初始解码参数进行调整,得到所述目标数据块的编码数据对应的目标解码参数。5.根据权利要求4所述的方法,其特征在于,所述初始解码参数为初始阶数;所述根据所述已解码数据的解码信号,对所述初始解码参数进行调整,得到所述目标数据块的编码数据对应的目标解码参数,包括:确定所述已解码数据块的解码信号的目标信号值;根据所述初始阶数,确定第一限制阶数和第二限制阶数,所述第一限制阶数小于所述第二限制阶数;获取所述目标信号值与所述第一限制阶数、所述第二限制阶数之间的大小关系;根据所述大小关系,对所述初始阶数进行调整,得到所述目标数据块关联的目标阶数;将所述目标阶数确定为所述目标数据块的编码数据对应的目标解码参数。
6.根据权利要求5所述的方法,其特征在于,所述根据所述大小关系,对所述初始阶数进行调整,得到所述目标数据块关联的目标阶数,包括:若所述大小关系指示所述目标信号值小于所述第一限制阶数,则将所述初始阶数与第一调整步长之间的和,确定为所述目标数据块关联的目标阶数;若所述大小关系指示所述目标信号值大于所述第二限制阶数,则将所述初始阶数与所述第一调整步长之间的差,确定为所述目标数据块关联的目标阶数;若所述大小关系指示所述目标信号值大于或者等于所述第一限制阶数,且小于或者等于所述第二限制阶数,则将所述初始阶数确定为所述目标数据块关联的目标阶数。7.根据权利要求5所述的方法,其特征在于,所述根据所述大小关系,对所述初始阶数进行调整,得到所述目标数据块关联的目标阶数,包括:获取所述已解码数据块对应的解码参数;所述已解码数据块的解码参数包括所述已解码数据块的历史阶数;若所述大小关系指示所述目标信号值小于所述第一限制阶数,则将所述历史阶数与第二调整步长之间的和,确定为所述目标数据块关联的目标阶数;若所述大小关系指示所述目标信号值大于所述第二限制阶数,则将所述历史阶数与所述第二调整步长之间的差,确定为所述目标数据块关联的目标阶数;若所述大小关系指示所述目标信号值大于或者等于所述第一限制阶数,且小于或者等于所述第二限制阶数,则将所述初始阶数确定为所述目标数据块关联的目标阶数。8.根据权利要求5所述的方法,其特征在于,所述根据所述大小关系,对所述初始阶数进行调整,得到所述目标数据块关联的目标阶数,包括:根据所述大小关系,对所述初始阶数进行调整,得到所述目标数据块关联的候选阶数;若所述候选阶数小于或者等于第三限制阶数,则将所述候选阶数与第三调整步长之间的和,确定为所述目标数据块关联的目标阶数;若所述候选阶数大于或者等于第四限制阶数,则将所述候选阶数与所述第三调整步长之间的差,确定为所述目标数据块关联的目标阶数;所述第三限制阶数小于所述第四限制阶数;若所述候选阶数大于所述第三限制阶数且小于所述第四限制阶数,则将所述候选阶数,确定为所述目标数据块关联的目标阶数。9.根据权利要求3-8任一项所述的方法,其特征在于,所述目标数据块内的待编码信号的信号范围值是基于所述目标数据块内的最大待编码信号和最小待编码信号确定的;或者,所述信号范围值是基于所述目标数据块内的待编码信号的采样精度确定的。10.根据权利要求1所述的方法,其特征在于,所述目标数据块内的编码数据包括第一编码数据和第二编码数据,所述第一编码数据与所述第二编码数据的属性类型不同;所述目标数据块的目标解码参数包括用于对所述第一编码数据进行解码的第一解码参数,以及用于对所述第二编码数据进行解码的第二解码参数;所述第一解码参数与所述第二解码参数不相同。11.根据权利要求10所述的方法,其特征在于,所述第一编码数据包括第一子编码数据、第二子编码数据以及第三子编码数据;
所述第一解码参数是基于所述第一子编码数据、所述第二子编码数据以及所述第三子编码数据分别对应的子信号特征确定的;所述第一子编码数据、所述第二子编码数据以及所述第三子编码数据分别对应的解码参数均为所述第一解码参数;与所述第一编码数据关联的关联信息对应的解码参数为所述第一解码参数。12.根据权利要求11所述的方法,其特征在于,所述第一编码数据包括第一子编码数据、第二子编码数据以及第三子编码数据,所述第一解码参数包括所述第一子编码数据对应的第一子解码参数、所述第二子编码数据对应的第二子解码参数以及所述第三子编码数据对应的第三子解码参数;所述第一子解码参数是基于所述第一子编码数据对应的子信号特征确定的;所述第二子解码参数是基于所述第一子解码参数以及目标偏移量确定的;所述第三子解码参数是基于所述第二子解码参数以及所述目标偏移量确定的。13.根据权利要求1所述的方法,其特征在于,所述目标数据块的编码数据中包括编码标签以及目标信号阈值;所述根据所述目标解码参数对所述编码数据进行解码,得到所述目标数据块的解码信号,包括:若所述目标数据块的编码数据中包括的编码标签为第一编码标签,则根据所述目标解码参数对所述编码数据进行解码,得到初始解码信号,根据所述目标信号阈值对所述初始解码信号进行求和处理,得到所述目标数据块的解码信号;所述第一编码标签用于指示所述目标数据块的解码信号与所述目标信号阈值不相同;若所述目标数据块的编码数据中包括的编码标签为第二编码标签,则将所述目标信号阈值确定为所述目标数据块的解码信号;所述第二编码标签用于指示所述目标数据块的解码信号与所述目标信号阈值相同。14.一种点云数据的编码方法,其特征在于,包括:获取点云数据中目标数据块内的待编码信号,以及所述目标数据块内的待编码信号的信号特征;所述点云数据的编码方式为非等长编码的编码方式,所述待编码信号用于反映所述目标数据块的媒体属性;根据所述目标数据块内的待编码信号的信号特征,确定所述目标数据块在所述编码方式下的目标编码参数;根据所述目标编码参数对所述目标数据块内的待编码信号进行编码,得到所述目标数据块的编码数据。15.根据权利要求14所述的方法,其特征在于,所述目标数据块内的待编码信号的信号特征包括所述目标数据块内的待编码信号的信号范围值;所述信号范围值是基于所述目标数据块内的最大待编码信号和最小待编码信号确定的;或者,所述信号范围值是基于所述目标数据块内的待编码信号的采样精度确定的。16.根据权利要求15所述的方法,其特征在于,所述根据所述目标数据块内的待编码信号的信号特征,确定所述目标数据块在所述编码方式下的目标编码参数,包括:对所述信号特征所包括的信号范围值进行量化,得到量化后的信号范围值;获取所述量化后的信号范围值的对数值,对所述量化后的信号范围值的对数值进行求
差处理,得到所述目标数据块对应的目标索引值;从第二参数表中查询与所述目标索引值关联的编码参数;所述第二参数表中包括至少一个索引值,以及与所述至少一个索引值中的每个索引值关联的编码参数,所述第二参数表是基于第一数据组中包含的数据块的数量相同,所述第一数据中为点云数据的至少两个数据组中包含所述目标数据块的数据组,所述目标索引值属于目标索引值范围,所述目标索引值范围是根据所述第二参数表中的至少一个索引值确定的;将查询得到的编码参数,确定为所述目标数据块在所述编码方式下的目标编码参数。17.根据权利要求14所述的方法,其特征在于,所述根据所述目标数据块内的待编码信号的信号特征,确定所述目标数据块在所述编码方式下的目标编码参数,包括:根据所述目标数据块内的待编码信号的信号特征,确定所述目标数据块在所述编码方式下的初始编码参数;获取所述点云数据中与所述目标数据块具有相邻关系的已编码数据块的编码数据;根据所述已编码数据块的编码数据,对所述初始编码参数进行调整,得到所述目标数据块在所述编码方式下的目标编码参数。18.根据权利要求17所述的方法,其特征在于,所述初始编码参数为初始阶数;所述根据所述已编码数据块的编码数据,对所述初始编码参数进行调整,得到所述目标数据块在所述编码方式下的目标编码参数,包括:确定所述已编码数据块的编码数据的目标编码值;根据所述初始阶数,确定第一限制阶数和第二限制阶数,所述第一限制阶数小于所述第二限制阶数;获取所述目标编码值与所述第一限制阶数、所述第二限制阶数之间的大小关系;根据所述大小关系,对所述初始阶数进行调整,得到所述目标数据块关联的目标阶数;将所述目标阶数确定为所述目标数据块在所述编码方式下的目标编码参数。19.根据权利要求18所述的方法,其特征在于,所述根据所述大小关系,对所述初始阶数进行调整,得到所述目标数据块关联的目标阶数,包括:若所述大小关系指示所述目标编码值小于所述第一限制阶数,则将所述初始阶数与第一调整步长之间的和,确定为所述目标数据块关联的目标阶数;若所述大小关系指示所述目标编码值大于所述第二限制阶数,则将所述初始阶数与所述第一调整步长之间的差,确定为所述目标数据块关联的目标阶数;若所述大小关系指示所述目标编码值大于或者等于所述第一限制阶数,且小于或者等于所述第二限制阶数,则将所述初始阶数确定为所述目标数据块关联的目标阶数。20.根据权利要求18所述的方法,其特征在于,所述根据所述大小关系,对所述初始阶数进行调整,得到所述目标数据块关联的目标阶数,包括:获取所述已编码数据块对应的编码参数;所述已编码数据块的编码参数包括所述已编码数据块的历史阶数;若所述大小关系指示所述目标编码值小于所述第一限制阶数,则将所述历史阶数与第二调整步长之间的和,确定为所述目标数据块关联的目标阶数;若所述大小关系指示所述目标编码值大于所述第二限制阶数,则将所述历史阶数与所述第二调整步长之间的差,确定为所述目标数据块关联的目标阶数;
若所述大小关系指示所述目标编码值大于或者等于所述第一限制阶数,且小于或者等于所述第二限制阶数,则将所述初始阶数确定为所述目标数据块关联的目标阶数。21.根据权利要求18所述的方法,其特征在于,所述根据所述大小关系,对所述初始阶数进行调整,得到所述目标数据块关联的目标阶数,包括:根据所述大小关系,对所述初始阶数进行调整,得到所述目标数据块关联的候选阶数;若所述候选阶数小于或者等于第三限制阶数,则将所述候选阶数与第三调整步长之间的和,确定为所述目标数据块关联的目标阶数;若所述目标阶数大于或者等于第四限制阶数,则将所述候选阶数与所述第三调整步长之间的差,确定为所述目标数据块关联的目标阶数;所述第三限制阶数小于所述第四限制阶数;若所述目标阶数大于所述第三限制阶数且小于所述第四限制阶数,则将所述候选阶数,确定为所述目标数据块关联的目标阶数。22.根据权利要求18所述的方法,其特征在于,所述已编码数据块的编码数据的目标编码值为所述已编码数据块的编码数据中所有编码值的平均值;或者,所述已编码数据块的编码数据的目标编码值为所述已编码数据块的编码数据中非零编码值的平均值。23.根据权利要求17所述的方法,其特征在于,所述点云数据包括至少两个数据组,所述目标数据块属于所述至少两个数据组中的第一数据组;所述第一数据组内的数据块对应的编码参数均为所述目标编码参数;所述已编码数据块属于所述至少两个数据组中与所述第一数据组具有相邻关系的第二数据组。24.根据权利要求14所述的方法,其特征在于,所述目标数据块内的待编码信号包括几何预测残差、属性预测残差以及属性变换系数中的一种或者多种;所述目标数据块内的待编码信号包括第一待编码信号和第二待编码信号,所述第一待编码信号与所述第二待编码信号的属性类型不同;所述目标数据块的目标编码参数包括用于对所述第一待编码信号进行编码的第一编码参数,以及用于对所述第二待编码信号进行编码的第二编码参数;所述第一编码参数与所述第二编码参数不相同。25.根据权利要求24所述的方法,其特征在于,所述第一待编码信号包括第一子编码信号、第二子编码信号以及第三子编码信号;所述第一编码参数是基于所述第一子编码信号、所述第二子编码信号以及所述第三子编码信号分别对应的子信号特征确定的;所述第一子编码信号、所述第二子编码信号以及所述第三子编码信号分别对应的编码参数均为所述第一编码参数;与所述第一待编码信号关联的关联信息对应的编码参数为所述第一编码参数。26.根据权利要求24所述的方法,其特征在于,所述第一待编码信号包括第一子编码信号、第二子编码信号以及第三子编码信号,所述第一编码参数包括所述第一子编码信号对应的第一子编码参数、所述第二子编码信号对应的第二子编码参数以及所述第三子编码信号对应的第三子编码参数;
所述第一子编码参数是基于所述第一子编码信号对应的子信号特征确定的;所述第二子编码参数是基于所述第一子编码参数以及目标偏移量确定的;所述第三子编码参数是基于所述第二子编码参数以及所述目标偏移量确定的。27.根据权利要求14所述的方法,其特征在于,所述根据所述目标编码参数对所述目标数据块内的待编码信号进行编码,得到所述目标数据块的编码数据,包括:若所述目标数据块内的待编码信号与目标信号阈值不相同,则生成用于指示所述目标数据块内的待编码信号与所述目标信号阈值不相同的第一编码标签;根据所述目标信号阈值,对所述目标数据块内的待编码信号进行求差处理,得到信号差值;根据所述目标编码参数对所述信号差值进行编码,得到所述目标数据块内的待编码信号的信号编码值,将所述信号编码值以及所述第一编码标签确定为所述目标数据块的编码数据。28.一种点云数据的解码装置,其特征在于,包括:第一获取模块,用于获取点云数据中目标数据块的编码数据;所述目标数据块的编码数据是根据所述目标数据块在非等长编码的编码方式下的目标编码参数,对所述目标数据块内的待编码信号进行编码得到的,所述目标编码参数是基于所述目标数据块内的待编码信号的信号特征确定的;第一确定模块,用于根据所述目标编码参数,确定所述目标数据块的目标解码参数;解码模块,用于根据所述目标解码参数对所述目标数据块的编码数据进行解码,得到所述目标数据块的解码信号;所述解码信号用于反映所述目标数据块的媒体属性。29.一种点云数据的编码装置,其特征在于,包括:第三获取模块,用于获取点云数据中目标数据块内的待编码信号,以及所述目标数据块内的待编码信号的信号特征;所述点云数据的编码方式为非等长编码的编码方式,所述待编码信号用于反映所述目标数据块的媒体属性;第一确定模块,用于根据所述目标数据块内的待编码信号的信号特征,确定所述目标数据块在所述编码方式下的目标编码参数;编码模块,用于根据所述目标编码参数对所述目标数据块内的待编码信号进行编码,得到所述目标数据块的编码数据。30.一种计算机设备,其特征在于,包括:处理器和存储器;所述处理器与存储器相连,其中,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以使得所述计算机设备执行权利要求1-27任一项所述的方法。31.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序适于由处理器加载并执行,以使得具有所述处理器的计算机设备执行权利要求1-27任一项所述的方法。

技术总结


本申请实施例公开了点云数据的解码方法、编码方法、装置、存储介质及设备,本申请实施例可应用于云技术、智慧交通、辅助驾驶等场景。解码方法包括:获取点云数据中目标数据块的编码数据;根据目标数据块对应的目标编码参数,确定目标数据块的目标解码参数;根据目标解码参数对编码数据进行解码,得到目标数据块的解码信号。通过本申请可以提高对点云数据中的数据块的解码效率。块的解码效率。块的解码效率。


技术研发人员:

朱文婕

受保护的技术使用者:

腾讯科技(深圳)有限公司

技术研发日:

2022.08.19

技术公布日:

2022/11/25

本文发布于:2024-09-24 20:25:46,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/11557.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数据   目标   信号   所述
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议