CN115249033A - 一种数据处理方法及装置 - Google Patents
一种数据处理方法及装置 Download PDFInfo
- Publication number
- CN115249033A CN115249033A CN202110384626.7A CN202110384626A CN115249033A CN 115249033 A CN115249033 A CN 115249033A CN 202110384626 A CN202110384626 A CN 202110384626A CN 115249033 A CN115249033 A CN 115249033A
- Authority
- CN
- China
- Prior art keywords
- data
- node
- layer
- information
- ith
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 47
- 238000000034 method Methods 0.000 claims abstract description 121
- 238000013144 data compression Methods 0.000 claims abstract description 116
- 238000012545 processing Methods 0.000 claims abstract description 67
- 238000000605 extraction Methods 0.000 claims description 61
- 230000006837 decompression Effects 0.000 claims description 35
- 125000004122 cyclic group Chemical group 0.000 claims description 24
- 230000015654 memory Effects 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 10
- 238000007781 pre-processing Methods 0.000 claims description 10
- 230000000306 recurrent effect Effects 0.000 claims description 9
- 230000006403 short-term memory Effects 0.000 claims 1
- 238000007906 compression Methods 0.000 description 58
- 230000006835 compression Effects 0.000 description 55
- 238000004891 communication Methods 0.000 description 46
- 230000006870 function Effects 0.000 description 40
- 238000004422 calculation algorithm Methods 0.000 description 27
- 238000010586 diagram Methods 0.000 description 19
- 230000004927 fusion Effects 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 8
- 238000013461 design Methods 0.000 description 8
- 238000013473 artificial intelligence Methods 0.000 description 6
- 238000012805 post-processing Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000001356 surgical procedure Methods 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 241000509579 Draco Species 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000007499 fusion processing Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 210000001835 viscera Anatomy 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本申请提供了一种数据处理方法及装置,涉及数据处理领域。该方法包括:发送端根据原始数据生成树状结构的待压缩数据,并利用数据压缩模型包含的循环网络层确定原始数据在树状结构的数据占有信息。上述的数据占有信息用于指示原始数据在树状结构中的数据分布。进而,发送端根据该数据占有信息压缩上述待压缩数据得到压缩数据。接收端利用数据压缩模型包含的循环网络层确定压缩数据在树状结构的数据占有信息。根据数据占有信息解压压缩数据,得到解压数据。本申请采用一个循环网络层替代了现有技术中多层MLP网络进行上下文预测,降低了数据压缩模型的复杂度,减少了上下文预测获取数据占有信息时所需的计算资源。
Description
技术领域
本申请涉及数据处理领域,尤其涉及一种数据处理方法及装置。
背景技术
在获取物体表面每个采样点的空间坐标后,得到的一个点的集合,称之为点云(Point Cloud)。例如,在虚拟现实/增强现实(virtual reality/augmented reality,VR/AR)领域,可以利用点云展现数字人和虚拟物体;又如,在自动驾驶领域,利用点云可以模拟参考物,以实现车辆的精准定位和导航。通常,点云的数据量很大,为减少存储点云所占据的存储空间,会对点云进行压缩后再进行存储。
通常,基于八叉树的压缩(Octree Squeeze)算法对点云进行八叉树化后进行上下文预测,并依据上下文预测的结果对点云进行压缩。然而,Oct Squeeze算法采用的上下文预测过程是:利用多层感知机(multi-layer perceptron,MLP)进行特征的逐级融合,得到上下文预测结果。每级特征融合都会使用至少一层MLP,这会占用点云压缩设备大量的计算资源,且点云压缩耗时较长。因此,如何降低点云压缩的模型复杂度以及所需的计算资源是目前亟需解决的问题。
发明内容
本申请提供一种数据处理方法及装置,解决了现有技术中点云压缩的模型复杂度较高以及占用较大的计算资源的问题。
为达到上述目的,本申请采用如下技术方案:
第一方面,本申请提供了一种数据处理方法,该方法可应用于发送端,或者该方法可应用于可以支持计算设备实现该方法的装置,例如该装置包括芯片系统,该方法包括:发送端根据原始数据生成树状结构的待压缩数据,并利用数据压缩模型包含的循环网络层确定在树状结构的数据占有信息。上述的数据占有信息用于指示原始数据在树状结构中的数据分布。进而,发送端根据该数据占有信息压缩上述的待压缩数据得到压缩数据。如此,本申请采用一个循环网络层替代了现有技术中多层MLP网络进行上下文预测,降低了数据压缩模型的复杂度,减少了上下文预测获取数据占有信息时所需的计算资源;另外,相较于现有技术中会存储每个节点的特征以及融合特征得到的中间特征,本申请提供的数据处理方法无需存储特征及中间特征,减少了数据压缩所占据的存储空间。
在一种示例中,在利用数据压缩模型确定在树状结构的数据占有信息之前,该数据处理方法还可以包括:通过传感器采集原始数据,原始数据为三维数据。例如,该传感器包括激光雷达、毫米波雷达和声呐中至少一种。
在另一种示例中,在利用数据压缩模型确定在树状结构的数据占有信息之前,该数据处理方法还可以包括:通过摄像头采集原始数据,原始数据为二维数据。
作为一种可选的实现方式,该数据处理方法还包括:显示树状结构和数据占有信息中至少一种。在数据压缩的过程比较长的情况下,通过对树状结构和数据占有信息中至少一种进行显示,有利于用户监控数据压缩过程,定位数据压缩出现错误(如数据压缩出现卡顿或停止)的位置。
作为一种可选的实现方式,利用数据压缩模型确定在树状结构的数据占有信息,包括:发送端将树状结构中第i-1层节点的数据占有信息输入循环网络层,得到第i层节点的数据占有信息,i为正整数,第i-1层节点是第i层节点的父节点。相较于现有技术中点云压缩设备会对每个特征以及融合得到的特征进行存储,本申请提供的数据处理方法在对待编码节点进行上下文预测时,可以利用待编码节点的父节点的数据占有信息来获取待编码节点的数据占有信息,无需对待编码节点的特征和其父节点的特征进行特征融合,这减少了MLP网络的使用,降低了数据压缩模型的复杂度,减少了上下文预测获取数据占有信息时所需的计算资源。
作为一种可选的实现方式,利用数据压缩模型确定在树状结构的数据占有信息,包括:发送端将树状结构中第i-1层节点的数据占有信息、第i-1层节点的总结信息和第i层节点的特征中至少一种输入循环网络层,得到第i层节点的数据占有信息,第i-1层节点的总结信息用于描述第i-1层节点的祖先节点到第i-1层节点的所有预测信息。由于循环网络层不需要使用对待编码节点的特征和其父节点的特征进行融合得到的中间特征,因此发送端无需存储待编码节点的特征、父节点的特征以及中间特征,这减少了发送端进行上下文预测所需的存储空间。此外,相较于现有技术中点云压缩设备对每个节点进行上下文预测都需要从根节点开始,本申请提供的数据处理方法中,循环网络层可以利用待编码节点的特征以及待编码节点的父节点提炼的总结信息,得到待编码节点的数据占有信息以及总结信息,使得本申请提供的数据处理方法无需从根节点开始,这减少了上下文预测所需的计算资源。
作为一种可选的实现方式,该数据处理方法还包括:发送端将树状结构中第i-1层节点的数据占有信息、第i-1层节点的总结信息和第i层节点的特征中至少一种输入循环网络层,得到第i层节点的总结信息,第i层节点的总结信息用于描述第i层节点的祖先节点到第i层节点的所有预测信息。第i层节点的总结信息可以是通过迭代的方式获取的,例如,若循环网络层包括至少一层长短期记忆网络(long short-term memory,LSTM)层,LSTM层的双曲正切函数(tanh)和门结构(σ函数)可以用于选择性的利用第i层节点的前文信息,得到待编码节点的数据占有信息和总结信息。在本申请提供的数据处理方法中,数据压缩模型中的循环网络层可以利用从根节点开始到待编码节点的父节点的所有预测信息,且这些预测信息可以被循环网络层选择性的记忆和保留,使得在数据压缩模型预测待编码节点的数据占有信息时,循环网络层可以利用待编码节点的所有祖先节点的信息,提高了上下文预测的精度,利用本申请得到的数据占有信息对待压缩数据进行压缩,提高了数据压缩比。
作为一种可选的实现方式,数据压缩模型还包括特征提取层,该数据处理方法还包括:发送端将第i层节点的位置、深度和子节点编号,以及第i-1层节点的占有情况字节中至少一种输入特征提取层,得到第i层节点的特征。例如,上述的特征提取层包括至少一层MLP。
作为一种可能的示例,发送端将第i层节点的位置、深度和子节点编号,第i-1层节点的占有情况字节,以及第i层节点的至少一个兄弟节点的占有情况字节输入特征提取层,得到第i层节点的特征。第i层节点的兄弟节点是指与第i层节点同属一个父节点的其他节点,由于第i层节点的特征包括其父节点和兄弟节点的占有情况字节,使得发送端在对该第i层节点进行上下文预测时,降低了一些明显不可能的第i层节点的占有情况字节的预测概率,提高了第i层节点的数据占有信息的预测准确率。
作为一种可选的实现方式,数据压缩模型还包括维度调整层,该数据处理方法还包括:发送端将第i层节点的数据占有信息输入维度调整层,得到占有率预测表,该占有率预测表指示第i层节点的每个占有情况字节的预测概率。例如,维度调整层包括至少一层MLP,该MLP可以用于调整数据占有信息的输出维度,得到可视化的预测概率结果。
第二方面,本申请提供一种数据处理方法,该方法可应用于接收端,或者该方法可应用于可以实现该方法的计算设备,例如该计算设备包括芯片系统,该方法包括:接收端获取压缩数据,并利用数据压缩模型包含的循环网络层确定在树状结构的数据占有信息,该数据占有信息用于指示压缩数据在树状结构中的数据分布。接收端还根据数据占有信息解压压缩数据,得到解压数据。本申请采用一个循环网络层替代了现有技术中多层MLP网络进行上下文预测,减少了上下文预测获取数据占有信息时所需的计算资源;另外,相较于现有技术中会存储每个节点的特征以及融合特征得到的中间特征,本申请提供的数据处理方法无需存储特征及中间特征,减少了数据压缩所占据的存储空间。
在一种可能的示例中,循环网络层可以包括至少一层LSTM层。
作为一种可选的实现方式,利用数据压缩模型确定在树状结构的数据占有信息,包括:接收端将树状结构中第i-1层节点的数据占有信息输入循环网络层,得到第i层节点的数据占有信息,i为正整数,第i-1层节点是第i层节点的父节点。
作为一种可选的实现方式,接收端利用数据压缩模型确定在树状结构的数据占有信息,包括:接收端将树状结构中第i-1层节点的数据占有信息、第i-1层节点的总结信息和第i层节点的特征中至少一种输入循环网络层,得到第i层节点的数据占有信息,第i-1层节点的总结信息用于描述第i-1层节点的祖先节点到第i-1层节点的所有预测信息。
作为一种可选的实现方式,该数据处理方法还包括:接收端将树状结构中第i-1层节点的数据占有信息、第i-1层节点的总结信息和第i层节点的特征中至少一种输入循环网络层,得到第i层节点的总结信息,第i层节点的总结信息用于描述第i层节点的祖先节点到第i层节点的所有预测信息。
作为一种可选的实现方式,数据压缩模型还包括特征提取层,该数据处理方法还包括:接收端将第i层节点的位置、深度和子节点编号,以及第i-1层节点的占有情况字节中至少一种输入特征提取层,得到第i层节点的特征。例如,特征提取层包括至少一层MLP。
在一种可能的示例中,接收端将第i层节点的位置、深度和子节点编号,以及第i-1层节点的占有情况字节中至少一种输入特征提取层,得到第i层节点的特征,包括:接收端将第i层节点的位置、深度和子节点编号,第i-1层节点的占有情况字节,以及第i层节点的至少一个兄弟节点的占有情况字节输入特征提取层,得到第i层节点的特征。
作为一种可选的实现方式,数据压缩模型还包括维度调整层,该数据处理方法还包括:接收端将第i层节点的数据占有信息输入维度调整层,得到占有率预测表,占有率预测表指示第i层节点的每个占有情况字节的预测概率。例如,维度调整层包括至少一层MLP。
第三方面,本申请提供一种数据处理装置,有益效果可以参见第一方面中任一方面的描述,此处不再赘述。所述数据处理装置具有实现上述第一方面中任一方面的方法实例中行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。在一个可能的设计中,该数据处理装置应用于发送端,该数据处理装置包括:预处理单元,用于根据原始数据生成树状结构的待压缩数据;上下文预测单元,用于利用数据压缩模型确定在树状结构的数据占有信息,数据占有信息用于指示原始数据在树状结构中的数据分布,数据压缩模型包含循环网络层,循环网络层用于确定数据占有信息;编码单元,用于根据数据占有信息压缩待压缩数据,得到压缩数据。
结合第三方面提供的数据处理装置,作为一种可选的实现方式,该数据处理装置还包括:采集单元,用于通过传感器采集原始数据,原始数据为三维数据,传感器包括激光雷达、毫米波雷达和声呐中至少一种。
结合第三方面提供的数据处理装置,作为一种可选的实现方式,该数据处理装置还包括:采集单元,用于通过摄像头采集原始数据,原始数据为二维数据。
结合第三方面提供的数据处理装置,作为一种可选的实现方式,该数据处理装置还包括:显示单元,用于显示树状结构和/或数据占有信息。
结合第三方面提供的数据处理装置,作为一种可选的实现方式,上下文预测单元具体用于将树状结构中第i-1层节点的数据占有信息输入循环网络层,得到第i层节点的数据占有信息,i为正整数,第i-1层节点是第i层节点的父节点。例如,循环网络层包括至少一层LSTM层。
结合第三方面提供的数据处理装置,作为一种可选的实现方式,上下文预测单元具体用于将树状结构中第i-1层节点的数据占有信息、第i-1层节点的总结信息和第i层节点的特征中至少一种输入循环网络层,得到第i层节点的数据占有信息,第i-1层节点的总结信息用于描述第i-1层节点的祖先节点到第i-1层节点的所有预测信息。
结合第三方面提供的数据处理装置,作为一种可选的实现方式,上下文预测单元还用于将树状结构中第i-1层节点的数据占有信息、第i-1层节点的总结信息和第i层节点的特征中至少一种输入循环网络层,得到第i层节点的总结信息,第i层节点的总结信息用于描述第i层节点的祖先节点到第i层节点的所有预测信息。
结合第三方面提供的数据处理装置,作为一种可选的实现方式,数据压缩模型还包括特征提取层,该上下文预测单元还用于将第i层节点的位置、深度和子节点编号,以及第i-1层节点的占有情况字节中至少一种输入特征提取层,得到第i层节点的特征。例如,特征提取层包括至少一层MLP。
在一种可能的示例中,该上下文预测单元还用于将第i层节点的位置、深度和子节点编号,第i-1层节点的占有情况字节,以及第i层节点的至少一个兄弟节点的占有情况字节输入特征提取层,得到第i层节点的特征。
结合第三方面提供的数据处理装置,作为一种可选的实现方式,数据压缩模型还包括维度调整层,该上下文预测单元,还用于将第i层节点的数据占有信息输入维度调整层,得到占有率预测表,占有率预测表指示第i层节点的每个占有情况字节的预测概率。例如,维度调整层包括至少一层MLP。
第四方面,本申请提供一种数据处理装置,有益效果可以参见第二方面中任二方面的描述,此处不再赘述。所述数据处理装置具有实现上述第二方面中任二方面的方法实例中行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。在一个可能的设计中,该数据处理装置应用于接收端,该数据处理装置包括:获取单元,用于获取压缩数据;上下文预测单元,用于利用数据压缩模型确定在树状结构的数据占有信息,数据占有信息用于指示压缩数据在树状结构中的数据分布,数据压缩模型包含循环网络层,循环网络层用于确定数据占有信息;解压单元,用于根据数据占有信息解压压缩数据,得到解压数据。
结合第四方面提供的数据处理装置,作为一种可选的实现方式,上下文预测单元具体用于将树状结构中第i-1层节点的数据占有信息输入循环网络层,得到第i层节点的数据占有信息,i为正整数,第i-1层节点是第i层节点的父节点。例如,循环网络层包括至少一层LSTM层。
结合第四方面提供的数据处理装置,作为一种可选的实现方式,上下文预测单元具体用于将树状结构中第i-1层节点的数据占有信息、第i-1层节点的总结信息和第i层节点的特征中至少一种输入循环网络层,得到第i层节点的数据占有信息,第i-1层节点的总结信息用于描述第i-1层节点的祖先节点到第i-1层节点的所有预测信息。
结合第四方面提供的数据处理装置,作为一种可选的实现方式,上下文预测单元还用于将树状结构中第i-1层节点的数据占有信息、第i-1层节点的总结信息和第i层节点的特征中至少一种输入循环网络层,得到第i层节点的总结信息,第i层节点的总结信息用于描述第i层节点的祖先节点到第i层节点的所有预测信息。
结合第四方面提供的数据处理装置,作为一种可选的实现方式,数据压缩模型还包括特征提取层,该上下文预测单元还用于将第i层节点的位置、深度和子节点编号,以及第i-1层节点的占有情况字节中至少一种输入特征提取层,得到第i层节点的特征。例如,特征提取层包括至少一层MLP。
在一种可能的示例中,该上下文预测单元还用于将第i层节点的位置、深度和子节点编号,第i-1层节点的占有情况字节,以及第i层节点的至少一个兄弟节点的占有情况字节输入特征提取层,得到第i层节点的特征。
结合第四方面提供的数据处理装置,作为一种可选的实现方式,数据压缩模型还包括维度调整层,该上下文预测单元,还用于将第i层节点的数据占有信息输入维度调整层,得到占有率预测表,占有率预测表指示第i层节点的每个占有情况字节的预测概率。例如,维度调整层包括至少一层MLP。
第五方面,本申请提供一种计算设备,该计算设备包括至少一个处理器和存储器,存储器用于存储一组计算机指令;当处理器执行所述一组计算机指令时,执行第一方面或第一方面任一种可能实现方式,或第二方面和第二方面中任一种可能实现方式中的数据处理方法的操作步骤。
第六方面,本申请提供一种计算机可读存储介质,存储介质中存储有计算机程序或指令,当计算机程序或指令被计算设备执行时,实现第一方面和第一方面中任一种可能实现方式,或第二方面和第二方面中任一种可能实现方式的方法的操作步骤。
第七方面,本申请提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算设备执行第一方面和第一方面中任一种可能实现方式,或第二方面和第二方面中任一种可能实现方式的方法的操作步骤。
第八方面,本申请提供一种芯片,包括存储器和处理器,存储器用于存储计算机指令,处理器用于从存储器中调用并运行该计算机指令,以执行上述第一方面及其第一方面任意可能的实现方式中的方法,或第二方面和第二方面中任一种可能实现方式的方法的操作步骤。
本申请在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
附图说明
图1为本申请提供的一种通信系统的场景示意图;
图2为本申请提供的一种点云压缩和解压的系统示意图;
图3为本申请提供的一种点云压缩和解压过程的示意图;
图4为现有技术提供的一种Oct Squeeze算法的上下文预测方法的示意图;
图5为本申请提供的一种数据处理方法的流程示意图;
图6为本申请提供的一种树状结构的示意图;
图7为本申请提供的一种数据压缩模型的示意图;
图8为本申请提供的另一种数据处理方法的流程示意图;
图9为本申请提供的一种LSTM的网络结构示意图;
图10为本申请提供的一种数据处理的显示示意图;
图11为本申请提供的另一种数据压缩模型的结构示意图;
图12为本申请提供的一种数据处理装置的示意图;
图13为本申请提供的一种计算设备的结构示意图。
具体实施方式
为了下述各实施例的描述清楚简洁,首先给出相关技术的简要介绍。
点云是点的数据集,点云中的点可以由三维坐标(X,Y,Z)进行表示位置,处于三维坐标(X,Y,Z)上的点可以包括颜色、分类值和强度值等属性信息。
通常,点云的数据量很大,存储点云会占据较大的存储空间。为了解决该问题,会对点云进行压缩后存储。请参见图1,图1为本申请提供的一种通信系统的场景示意图,该通信系统包括至少一个终端(如图1所示的终端111至终端113)、网络和数据中心130。终端和数据中心130可以通过网络进行通信,该网络可以是互联网络。
终端(terminal)也可以称为终端设备、用户设备(user equipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal,MT)等。
在一些实施例中,终端可以是手机(如图1中所示出的终端111)、平板电脑(如图1中所示出的终端112)、带无线收发功能的电脑(如图1中所示出的终端113)、虚拟现实(Virtual Reality,VR)终端设备、增强现实(Augmented Reality,AR)终端设备、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端(如集成在图1中所示出的车辆121和车辆122上的激光雷达)、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端等等。
在另一些实施例中,终端还可以是设置在住宅中的智慧家庭(smart home)终端,如智慧屏。终端还可以是设置在医院中,用于进行远程手术(remote medical surgery)的终端;例如,在进行无创手术时,该终端可以用于采集患者的身体内部信息(如人体内部器官的点云)。
数据中心130可以是包括至少一个应用服务器131的服务器集群,也可以是由应用服务器131构建的云数据中心。例如,多个应用服务器可以是独立的不同的物理设备,也可以是将多个应用服务器的功能集成在同一个物理设备上(如:云服务提供商管辖范围内的多个应用服务器),还可以是一个物理设备上集成了部分应用服务器的功能。
终端通过无线或有线方式与应用服务器131连接。终端可以是固定位置的,也可以是可移动的。本申请的实施例对该通信系统中包括的终端和应用服务器的数量不做限定。
终端可以实现采集点云、压缩点云或解压点云等功能,数据中心130可以实现压缩点云或解压点云等功能。如图1所示,这里以车载终端可以采集点云和压缩点云,数据中心可以解压点云为例,车载终端可以包括安装在车辆122上的激光雷达以及与激光雷达通信连接的处理设备,例如,车辆122在直行时激光雷达采集路边的办公楼、住宅和篮球场的点云,在右转弯时激光雷达采集路旁的两侧植物(图1所示出的树)的点云,处理设备将上述的点云传输至数据中心130。然而,现在主流的64线激光雷达一小时收集的点云的数据量在100吉字节(GB)以上,这样的数据量对处理设备的存储和传输点云都是巨大的挑战。为了能降低传输点云的时延和存储点云所需的存储容量,高效的压缩算法不可或缺。
在目前的技术方案中,点云压缩路线可以大致分为两大类:传统点云压缩算法以及基于人工智能(artificial intelligence,AI)技术的点云压缩算法。
在一种示例中,传统点云压缩算法可以划分为两类:第一类是点云压缩设备将点云转化为二维信号,然后利用现有的图像压缩算法来进一步压缩,例如,动态图像专家组(Moving Pictures Experts Group,MPEG)提供的基于平面投影的压缩算法(MPEG V-PCC)。第二类是点云压缩设备将点云转化为树结构再进行熵编码,例如,基于kd-tree的Draco算法以及基于八叉树的基于几何的压缩算法(MPEG G-PCC)。
在本文中,点云压缩设备可以是对点云进行压缩的设备。例如,点云压缩设备可以是如图1所示的终端111至终端113中的任意一个。
在另一种示例中,基于AI的点云压缩算法可以划分为两类:一类是基于传统算法框架,并采用AI算法替代上下文编码模块的混合算法,如Oct Squeeze算法。另一类算法是端到端AI(全AI)压缩算法,如基于“Point net++”特征的自编码器算法。
总体上说,无论是传统的压缩算法,还是基于AI技术的压缩算法,都是点云压缩设备基于树结构对点云进行分解并压缩,得到点云压缩数据。如图2所示,图2为本申请提供的一种点云压缩和解压的系统示意图,该系统包括发送端210和接收端220,发送端210通过通信信道230与接收端220建立通信连接。
上述的发送端210可以实现数据压缩的功能,如图1所示,发送端210可以是终端111~终端113中的任意一个,发送端210还可以是设置在车辆121或车辆122上的点云压缩系统,例如,该点云压缩系统包括激光雷达以及与激光雷达通信连接的处理设备。
发送端210可以包括数据源211、预处理模块212、编码器213和通信接口214。
数据源211可包括或可以为任意类型的用于捕获点云的电子设备,和/或任意类型的点数据生成设备,例如用于生成计算机动画场景的计算机图形处理器或任意类型的用于获取和/或提供现实世界点云、计算机生成点云的设备。数据源211可以为存储上述点云中的任意点数据的任意类型的内存或存储器。
为了区分预处理模块212执行的处理,点云241也可称为原始数据(或原始点云数据)241。
预处理模块212用于接收点云241,并对点云241进行预处理,得到预处理数据242。例如,预处理模块212执行的预处理可包括颜色格式转换(例如从RGB转换为YCbCr)、八叉树结构化等。
编码器213用于接收预处理数据242,并在进行上下文预测后压缩预处理数据242,得到点云压缩数据243。
发送端210中的通信接口214可用于:接收点云压缩数据243,并通过通信信道230向接收端220等另一设备或任何其它设备发送点云压缩数据243(或将该点云压缩数据243进行其它任意处理后的版本),以便存储或直接重建。
上述的接收端220可以实现数据解压的功能,如图1所示,接收端220可以是图1所示出的数据中心130中任意一个或多个服务器,例如,应用服务器131实现接收端220的数据解压功能。
接收端220可以包括显示设备221、后处理模块222、解码器223和通信接口224。
接收端220中的通信接口224用于从发送端210或从存储设备等任意其它发送端接收点云压缩数据243(或其它任意处理后的版本),例如,存储设备为点云数据存储设备,并将点云压缩数据243提供给解码器223。
通信接口214和通信接口224可用于通过发送端210和接收端220之间的直连通信链路,例如直接有线或无线连接等,或者通过任意类型的网络,例如有线网络、无线网络或其任意组合、任意类型的私网和公网或其任意类型的组合,发送或接收点云压缩数据243。
例如,通信接口214可用于将点云压缩数据243封装为报文等合适的格式,和/或使用任意类型的传输编码或处理来处理所述编码后的点云压缩数据243,以便在通信链路或通信网络上进行传输。
通信接口224与通信接口214对应,例如,可用于接收传输数据,并使用任意类型的对应传输解码或处理和/或解封装对传输数据进行处理,得到点云压缩数据243。
通信接口224与通信接口214均可配置为如图2中从发送端210指向接收端220的对应通信信道230的箭头所指示的单向通信接口,或双向通信接口,并且可用于发送和接收消息等,以建立连接,确认并交换与通信链路和/或例如编码后的压缩数据传输等数据传输相关的任何其它信息,等等。
解码器223用于接收点云压缩数据243,并对点云压缩数据243进行上下文预测后,得到解码数据244。
后处理模块222用于对解码后的解码数据244进行后处理,得到后处理数据245。后处理模块222执行的后处理可以包括例如颜色格式转换(例如从YCbCr转换为RGB)、八叉树重构等,或者用于产生供显示设备221等显示的数据等任何其它处理。
显示设备221用于接收后处理数据245,以向用户或观看者等显示。显示设备221可以为或包括任意类型的用于表示重建后图像的显示器,例如,集成或外部显示屏或显示器。例如,显示屏可包括液晶显示器(liquid crystal display,LCD)、有机发光二极管(organic light emitting diode,OLED)显示器、等离子显示器、投影仪、微型LED显示器、硅基液晶显示器(liquid crystal on silicon,LCoS)、数字光处理器(digital lightprocessor,DLP)或任意类型的其它显示屏。
作为一种可选的实施方式,发送端210和接收端220可以通过数据转发设备进行点云压缩数据243的传输。例如,数据转发设备可以是路由器或交换机等。
图3为本申请提供的一种点云压缩和解压过程的示意图,点云中的数据以坐标点的形式进行存储,如图3所示出的“[(x1,y1,z1),(x2,y2,z2)…]”。
在点云压缩过程中,八叉树化模块31可以实现图2所示出的预处理模块212的功能,例如,八叉树化模块31将点云进行八叉树(octree)化,得到待压缩数据,该待压缩数据包括根节点和8个子节点。如图3所示,八叉树是一种用于描述三维空间的树状数据结构,八叉树的每个节点表示一个正方体的体积元素(体素),每个根节点有八个子节点(通过对体素进行前后,左右,上下的划分得到),将八个子节点所表示的体素的体积加在一起就等于父节点所表示的体素的体积。
在使用八叉树表示点云的时候,八叉树化模块31可以依据子节点对应的体素中是否有数据,为子节点赋值“1”或“0”。例如,“1”指示子节点对应的体素中具有数据,“0”指示子节点对应的体素中无数据。八叉树化模块31整合八个子节点的值,并用8个比特表示,得到根节点的占有情况字节(occupancy byte),该占有情况字节指示根节点的数据分布情况。如图3所示,黑色的节点指示该子节点对应的体素中有数据,白色的节点指示该子节点对应的体素中无数据,则根节点的占有情况字节为:1011 1100。
点云压缩过程中,上下文预测装置32和熵编码器33可以实现图2所示出的编码器213的功能,例如,在上下文预测装置32预测得到根节点的占用情况字节后,熵编码器33根据该占有情况字节对该根节点对应的点云进行压缩,以实现点云压缩,得到点云的压缩数据。熵编码器33和熵解码器35采用的熵编码算法可以是以下的任意一种或组合:香农(Shannon)编码、哈夫曼(Huffman)编码和算术编码(arithmetic coding)等,关于熵编码的具体实现方式请参考现有技术的相关阐述,不予赘述。
在点云解压过程中,上下文预测装置34和熵解码器35可以实现图2所示出的解码器223的功能,例如,使用与点云压缩相同的上下文预测模块34预测压缩数据中根节点的占有情况字节,熵解码器35和根据该根节点的占有情况字节解压该待解码节点对应的压缩数据,八叉树重构模块36对解压后的该待解码节点对应的压缩数据进行重构,待每一层节点都进行解压和重构之后,得到解压后的点云。
在点云压缩的过程中,熵编码器都会用到上下文预测模块预测得到的占有情况字节,该占有情况字节的预测结果越接近点云的真实数据分布情况,则熵编码器进行点云压缩的数据压缩比(点云与压缩数据的数据量之比)越大,点云压缩的效果越好。
在目前的技术方案中,这里以Oct Squeeze算法提供的上下文预测方法为例,OctSqueeze算法将点云进行八叉树化后得到多层节点,假设该多层节点包括至少4层节点,如图4所示,图4为现有技术提供的一种Oct Squeeze算法的上下文预测方法的示意图,八叉树化后的点云包括曾祖父节点、祖父节点、父节点和待编码节点,前述节点的深度依次为:i-3、i-2、i-1和i,i为大于或等于3的正整数。
节点的深度表征节点从根节点到当前位置的层数,示例的,八叉树的根节点的深度为0,该根节点的子节点的深度为1。如图3所示,根节点可以称为第0层节点,子节点可以称为第1层节点。
图4所示出的上下文预测方法包括特征提取过程,示例的,利用MLP网络(如5层MLPlayers)对每一层节点进行特征提取,如图4所示,MLP网络分别获取每一层节点的特征,该特征为高维度的特征向量。
图4所示出的上下文预测方法还包括特征融合过程,示例的,利用MLP网络(如4层MLP layers)对每一层节点的特征进行波网式(WaveNet)的逐级融合,如图4所示,MLP网络将待编码节点(如第i-1层节点)的特征和其父节点(如第i-2层节点)的特征进行融合,在经过多级的特征融合后,获得该待编码节点的占有率预测结果。该占有率预测结果指示待编码节点对应的体素中点的数据分布情况。关于WaveNet的原理可以参考现有技术的相关阐述,本申请不予赘述。
因此,由于每一层节点的特征提取都需要设置一个MLP网络,每两个相邻特征的融合也需要单独设置一个MLP网络,导致占据点云压缩设备利用大量的计算资源进行MLP网络的相关计算,浪费了计算资源。此外,在待编码节点的深度增加的情况下,点云压缩设备会使用MLP网络对已经提取的特征进行重复提取,这会增加重复的计算过程;为了减少上下文预测所需的计算资源,点云压缩设备会对每个特征以及融合得到的特征进行存储,然而,这又会占用点云压缩设备大量的存储空间。
为了减少上下文预测所占据的计算资源和存储空间,本申请提供一种数据处理方法,其包括:发送端根据原始数据生成树状结构的待压缩数据,并利用数据压缩模型包括的循环网络层确定在树状结构的数据占有信息,该数据占有信息用于指示原始数据在树状结构中的数据分布,发送端根据该数据占有信息压缩上述的待压缩数据得到压缩数据。本申请采用一个循环网络层替代了现有技术中多层MLP网络进行上下文预测,降低了数据压缩模型的复杂度,减少了上下文预测获取数据占有信息时所需的计算资源;另外,相较于现有技术中会存储每个节点的特征以及融合特征得到的中间特征,本申请提供的数据处理方法无需存储特征及中间特征,减少了数据压缩所占据的存储空间。
这里以图2所示出的发送端210可以实现数据压缩,接收端220可以实现数据解压为例进行说明,如图5所示,图5为本申请提供的一种数据处理方法的流程示意图,该数据处理方法包括以下步骤。
S510、发送端根据原始数据生成树状结构的待压缩数据。
该发送端可以是部署在车辆上的移动终端(例如,手机、平板电脑等),该发送端还可以是搭载在车辆上的点云压缩系统,例如,该点云压缩系统包括激光雷达以及与激光雷达通信连接的处理设备。
在第一种可能的情形中,该原始数据可以是三维数据,例如,点云。
该三维数据可以是传感器采集的。例如,该传感器可以包括激光雷达、毫米波雷达和声呐中至少一种,该传感器可以集成在发送端上,也可以单独部署在与发送端同属的载具(如图1所示出的车辆122)上,并与发送端建立了通信连接。又如,该传感器还可以是传感器阵列,该传感器阵列中的各个传感器可以分别部署在车辆122和待采集的参考物上(如图1所示出的树)。
上述的点云可以包括多种信息。例如,若点云是激光测量设备采集的,其包括三维坐标和激光反射强度。又如,若点云是摄影测量设备采集的,其可以包括三维坐标和颜色信息。又如,若点云是激光测量设备和摄影测量设备共同采集并合并后得到的,其可以包括三维坐标、激光反射强度和颜色信息。
在第二种可能的情形中,该原始数据可以是二维数据,例如,图像数据。
该二维数据可以是摄像头采集的。该摄像头可以集成在发送端上,也可以部署在车辆122上,并与发送端建立了通信连接。示例的,该摄像头可以包括一个或多个相机,例如,该摄像头可以设置在车辆122的前挡风玻璃、后挡风玻璃、车顶、和车身等位置中的一个或多个位置。
上述的树状结构可以是M叉树,M为大于或等于2的正整数,例如,八叉树,四叉树或二叉树等。
S520、发送端利用数据压缩模型确定在树状结构的数据占有信息。
上述的数据占有信息用于指示原始数据在树状结构中的数据分布。如图2所示出的点云对应的体素,数据占有信息可以指示该体素中的点的分布情况,例如,该数据占有信息指示待压缩数据中根节点的占有情况字节为“1000 1000”的预测概率为99%。
在第一种示例中,如图6所示,假设i=3,则深度为i-3的节点为根节点,如图6中的(a)所示,根节点具有8个子节点,该8个子节点的编号为1~8。根节点的数据占有信息如图6中的(b)所示,该数据占有信息指示根节点对应的体素中序号为“1”和“5”的两个子节点对应的体素中具有数据。
在第二种示例中,对图6中的(b)所示出的序号为“1”的深度为i-2的节点可以进行上下文预测,得到的数据占有信息如图6中的(c)所示,该数据占有信息指示该深度为i-2的节点对应的体素中序号为“1”和“5”的两个深度为i-1的节点对应的体素中具有数据。
在第三种示例中,对图6中的(b)所示出的序号为“5”的深度为i-2的节点可以进行上下文预测,得到的数据占有信息如图6中的(d)所示,该数据占有信息指示该深度为i-2的节点对应的体素中序号为“3”的深度为i-1的节点对应的体素中具有数据。
在第四种示例中,对图6中的(c)所示出的序号为“5”的深度为i-1的节点可以进行上下文预测,得到的数据占有信息如图6中的(e)所示,该数据占有信息指示该深度为i的节点对应的体素中序号为“1”和“5”的两个深度为i的节点对应的体素中具有数据。
上述的数据压缩模型包含循环网络层,该循环网络层用于确定该数据占有信息。该循环网络层可以包括至少一层卷积神经网络层,例如,循环神经网络(recurrent neuralnetwork,RNN),LSTM层,门控循环单元(gated recurrent unit,GRU)等。作为一种可选的实施方式,该循环网络层可以包括以上多种卷积神经网络层中的任意组合。
数据压缩模型还包含特征提取层。特征提取层用于依据待编码节点的位置、深度和子节点编号,以及待编码节点的父节点的占有情况字节中至少一种,确定待编码节点的特征,该特征为高维度的特征向量。特征提取层的层数和循环网络层的层数可以是依据节点的深度决定的。
在一种示例中,图7为本申请提供的一种数据压缩模型的示意图,该数据压缩模型700包括特征提取层710和循环网络层720。
特征提取层710包括第一提取层711、第二提取层712、第三提取层713和第四提取层714,示例的,上述的第一提取层711~第四提取层714均可以是多层MLP。
在一种可能的情形中,上述的第一提取层711~第四提取层714可以是不同的MLP网络,示例的,针对于深度不同的节点,特征提取层包括的MLP的层数不同。例如,第二提取层712包括3层MLP,第三提取层713包括4层MLP。
在另一种可能的情形中,上述的第一提取层711~第四提取层714可以是相同的MLP网络。示例的,针对于深度不同的节点,提取层是可以复用的。例如,第一提取层711~第四提取层714均包括4层相同的MLP。
循环网络层720包括第一网络层721、第二网络层722、第三网络层723和第四网络层724。示例的,上述的第一网络层721~第四网络层724均可以是LSTM。例如,上述的第一网络层721~第四网络层724均包括3层相同的LSTM层。
作为一种可选的实现方式,发送端可以将树状结构中第i-1层节点的数据占有信息输入循环网络层,得到第i层节点的数据占有信息。
其中,i为正整数,第i-1层节点是第i层节点的父节点。
这里以i≥3为例进行说明,在本文中,曾祖父节点731是图6所示出的深度为i-3的节点,祖父节点732是图6示出的深度为i-2的第一个黑色节点,父节点733是图6示出的深度为i-1的第二个黑色节点,待编码节点734是图6示出的深度为i的第一个黑色节点。
在一种可能的示例中,父节点733的数据占有信息如图6中的(e)所示,例如,该数据占有信息指示父节点733对应的体素中序号为“1”和“5”的两个子节点对应的体素中具有数据的概率为98%。
相较于现有技术中点云压缩设备会对每个特征以及融合得到的特征进行存储,本申请提供的数据处理方法在对待编码节点进行上下文预测时,可以利用待编码节点的父节点的数据占有信息来获取待编码节点的数据占有信息,无需对待编码节点的特征和其父节点的特征进行特征融合,这减少了MLP网络的使用,降低了数据压缩模型的复杂度;此外,由于循环网络层不需要使用对待编码节点的特征和其父节点的特征进行融合得到的中间特征,因此发送端无需存储待编码节点的特征、父节点的特征以及中间特征,这减少了发送端进行上下文预测所需的存储空间。
针对于上述确定第i层节点的数据占有信息的过程,这里以图7所示出的数据压缩模型700为例进行说明,如图8所示,图8为本申请提供的另一种数据处理方法的流程示意图,S520可以包括以下步骤。
S5201、发送端将第i层节点的位置、深度和子节点编号,以及第i-1层节点的占有情况字节中至少一种输入特征提取层,得到第i层节点的特征。
上述第i层节点的位置、深度和子节点编号,以及第i-1层节点的占有情况字节也可以称为该第i层节点的显性信息。如图7所示,特征提取层710可以根据节点的显性信息获取该节点的特征,示例的,第四提取层714根据待编码节点734的位置、深度和子节点编号,以及父节点733的占有情况字节,获取待编码节点734的特征Xt,该特征还可以被称为隐含特征或隐含信息等,该特征为高维度的特征向量。例如,每层节点的特征使用X来表示,如图7所示,在t时刻,待编码节点734的特征为Xt,父节点733的特征为Xt-1,祖父节点732的特征为Xt-2,曾祖父节点731的特征为Xt-3。
在一种示例中,上述的位置指示待编码节点734对应的体素在父节点733对应的体素中的位置;上述的深度指示待编码节点734的深度为i。
在另一种示例中,上述的子节点编号指示待编码节点734的子节点对应的体素在待编码节点734对应的体素中的相对位置,例如,该相对位置是指子节点为待编码节点734的八个子节点中的具体哪一个。例如,子节点编号可以为1~8,8个编号分别表示八个不同的子节点。又如,子节点的编号还可以是0~7等。子节点的编号可以根据点云的压缩需求进行调整,本申请不予限定。
作为一种可选的实施方式,上述的S5201具体包括:发送端将第i层节点的位置、深度和子节点编号,第i-1层节点的占有情况字节,以及第i层节点的至少一个兄弟节点的占有情况字节输入特征提取层,得到第i层节点的特征。第i层节点的兄弟节点是指与第i层节点同属一个父节点(第i-1层节点)的其他节点,示例的,待编码节点734是图6所示出的深度为i的第一个黑色节点(左侧),该兄弟节点可以是深度为i的第二个黑色节点(右侧)。例如,该兄弟节点的占有情况字节可以是发送端利用该兄弟节点的数据占有信息,将该兄弟节点对应的体素中的数据进行压缩后确定的。
由于第i层节点的特征包括其父节点和兄弟节点的占有情况字节,使得发送端在对该第i层节点进行上下文预测时,降低了一些明显不可能的第i层节点的占有情况字节的预测概率,提高了第i层节点的数据占有信息的预测准确率。例如,如图6中(b)所示,若第i层节点的特征不包括其兄弟节点的占有情况字节,上下文预测得到的第i层节点的占有情况字节是“1111 1111”的概率为0.05%;若第i层节点的特征包括其兄弟节点的占有情况字节,且该兄弟节点的占有情况字节为“1111 1111”,上下文预测得到的第i层节点的占有情况字节是“1111 1111”的概率会小于0.05%,如0.01%。
S5202、发送端将树状结构中第i-1层节点的数据占有信息、第i-1层节点的总结信息和第i层节点的特征中至少一种输入循环网络层,得到第i层节点的数据占有信息。
该第i-1层节点的总结信息用于描述第i-1层节点的祖先节点到第i-1层节点的所有预测信息。如图7所示,父节点733的总结信息Ct-1用于描述父节点733的祖先节点到父节点733的所有预测信息。
在一种示例中,第i-1层节点的祖先节点可以是第i-1层节点的父节点至根节点中的任意一个节点。如图7所示,父节点733的祖先节点可以是图7所示出的祖父节点732或曾祖父节点731,也可以是曾祖父节点731的任意一个祖先节点,如父节点733所处的八叉树的根节点。
在一种可能的实现方式中,如图7所示,循环网络层720中的第四网络层724可以根据父节点733的数据占有信息ht-1、父节点733的总结信息Ct-1和待编码节点734的特征Xt获取待编码节点734的数据占有信息ht。
S5203、发送端将树状结构中第i-1层节点的数据占有信息、第i-1层节点的总结信息和第i层节点的特征中至少一种输入循环网络层,得到第i层节点的总结信息。
该第i层节点的总结信息用于描述第i层节点的祖先节点到第i层节点的所有预测信息。如图7所示,在t时刻,待编码节点734(第i层节点)的总结信息可以用Ct表示。
作为一种可选的实施方式,上述的总结信息Ct可以是通过迭代的方式获取的,这里以循环网络层是LSTM层为例进行说明,如图9所示,图9为本申请提供的一种LSTM的网络结构示意图,该LSTM包括两个双曲正切函数(tanh)和三个门结构(σ函数)。
Tanh和σ函数均用于选择性的利用第i层节点的前文信息,得到待编码节点的数据占有信息和总结信息。如图7所示,该前文信息可以包括父节点733的数据占有信息ht-1、总结信息Ct-1和待编码节点734的特征Xt。LSTM层可以利用ht-1、Ct-1和Xt来获取待编码节点734的总结信息Ct,以及数据占有信息ht。
在LSTM网络中,该第i层节点的总结信息Ct可以用于参与下一层节点(第i+1层节点)的数据占有信息预测,正如第i-1层节点的总结信息Ct-1参与了第i层节点的数据占有信息预测,此处不予赘述。关于LSTM层中的Tanh和σ函数的相关原理请参考现有技术中关于LSTM的相关阐述,不予赘述。
相较于现有技术中点云压缩设备对每个节点进行上下文预测都需要从根节点开始,本申请提供的数据处理方法中,循环网络层可以利用待编码节点的特征以及待编码节点的父节点提炼的总结信息(Ct-1),得到待编码节点的数据占有信息以及总结信息(Ct),使得本申请提供的数据处理方法无需从根节点开始,这减少了上下文预测所需的计算资源。
请参见图7,第四网络层724接收第三网络层输出的用ht-1和Ct-1,并在利用待编码节点734的特征Xt预测待编码节点734的数据占有信息ht时,将ht-1、Ct-1和Xt进行整合,得到待编码节点734的总结信息Ct。
值得注意的是,现有技术中点云压缩设备需要存储每个节点的特征以及融合得到的特征,而本申请采用循环网络层替代了进行特征聚合所需的多层MLP网络,减少了数据压缩模型的复杂度;此外,循环网络层可以提炼和传输祖先节点的信息,使得发送端无需存储大量的特征,这节省了发送端的存储空间。
S530、发送端根据该数据占有信息压缩待压缩数据,得到压缩数据。
在一种示例中,发送端中的熵编码器通过对待压缩数据进行多级节点的逐级压缩,得到原始数据对应的压缩数据。请继续参见图7,假设i=3,则深度为i-3的曾祖父节点731为根节点,点云压缩的过程包括以下多级压缩的步骤。
第一级压缩:熵编码器利用根节点的数据占有信息对根节点所对应体素中的数据进行压缩。例如,根节点的数据占有信息可以是使用数据压缩模型进行上下文预测获得的,也可以是根据不同的数据压缩需求,为根节点的数据压缩给出了预设的数据占有信息(如,根节点的占有情况字节的概率分布)。
这里以熵编码器采用的编码方式是变长编码为例进行说明,若树状结构为八叉树,根节点的数据占有信息如下表1所示,根节点的占有情况字节是“0001 1000”的预测概率为89%,对待压缩数据进行压缩包括以下步骤:①,根据预测概率从大到小将各占有情况字节进行排序;②,将2个最小概率对应的占有情况字节组成1组并划分为2个分支域,并分别标记为“0”和“1”,如占有情况字节是“0000 0000”的情况标记为“0”,占有情况字节是“1111 1111”的情况标记为“1”,并将占有情况字节是“0000 0000”和“1111 1111”的2个分支域合并为1个分支域,其概率为两种占有情况字节的和(0.01%+0.003%=0.013%);③,将所有的占有情况字节按照和②类似的方式进行组合,直到得到的分支域的概率为1;④,查询概率和为1的分支域到各占有情况字节的路径,并记录各路径从右到左各分支域的“0”和“1”所对应的占有情况字节,得到各占有情况字节对应的码字(二进制文件),完成根节点的数据压缩。
表1
第二级压缩:熵编码器利用祖父节点732的数据占有信息对祖父节点732所对应体素中的数据进行压缩。
第三级压缩:熵编码器利用父节点733的数据占有信息对父节点733所对应体素中的数据进行压缩。
第四级压缩:熵编码器利用待编码节点734的数据占有信息对待编码节点734所对应体素中的数据进行压缩。
值得注意的是,第二级压缩~第四级压缩所采用的熵编码方式和第一级压缩采用的熵编码方式是相同的,此处不予赘述。此外,第一级压缩~第四级压缩所采用的熵编码方式是以变长编码(霍夫曼编码)为例进行说明,而本申请提供的数据处理方法中的数据压缩过程也可以是采用算术编码方式,本申请对数据压缩所采用的熵编码方式不予限定。
图6和图7中是以点云八叉树化后获得4级节点为例进行示意,但在点云的数据量更小时,可以使用更少层的节点对点云进行压缩;在点云的数据量更大时,可以使用更多层的节点对点云进行压缩,本申请对此不予限定。
发送端利用熵编码器,根据数据占有信息对待压缩数据进行多级压缩,得到压缩数据。相较于现有技术采用多层的MLP进行上下文预测,本申请采用循环网络层替代了进行特征聚合所需的多层MLP网络,减少了数据压缩模型的复杂度,减少了数据压缩所需的计算资源,提高了数据压缩的效率;此外,相较于现有技术中发送端需要存储n-1组特征,在本申请提供的数据处理方法中,发送端仅需保存待编码节点的数据占有信息,减少了发送端的存储空间消耗。
S540、发送端向接收端发送压缩数据。
在一种示例中,发送端可以通过通信链路向接收端发送该压缩数据。例如,若压缩数据为二进制文件,发送端将压缩数据封装为报文等合适的格式,和/或使用任意类型的传输编码或处理来处理所述压缩数据,以便在通信链路或通信网络上进行传输。
相较于现有技术中会存储每个节点的特征以及融合特征得到的中间特征,本申请提供的数据处理方法无需存储特征及中间特征,减少了数据压缩所占据的存储空间,减少了发送端和接收端传输的压缩数据的数据量,降低了传输点云的时延。
S550、接收端利用数据压缩模型确定在树状结构的数据占有信息。
该数据占有信息用于指示压缩数据在树状结构中的数据分布。关于数据压缩模型和循环网络层的具体实现方式请参考上述关于S520的相关阐述,此处不予赘述。
在数据压缩的过程中,发送端可以将预测得到的数据占有信息和父节点的占有情况字节一同送入熵编码器中,减少记录实际占有情况字节的数据所需的比特数,进而减少存储待压缩数据所需的空间,达到数据压缩的效果。反之亦然,在数据解压的过程中,接收端为了从压缩数据中恢复树状结构,可以使用和数据压缩过程中一致的上下文预测方法,达到数据解压的效果。
在本申请的上述实施例中,关于上下文预测的过程均以实现数据压缩的发送端为例进行说明,数据解压过程中的上下文预测方法和数据压缩过程相同,此处不予赘述。
S560、接收端根据数据占有信息解压压缩数据,得到解压数据。
在一种示例中,接收端中的熵解码器通过对压缩数据进行多级节点的逐级解压,得到解压数据。请继续参见图7,假设i=3,则深度为i-3的曾祖父节点731为根节点,点云解压的过程包括以下多级解压的步骤。
第一级解压:熵解码器利用根节点的数据占有信息对根节点所对应体素中的压缩数据进行解压。例如,根节点的数据占有信息可以是使用数据压缩模型进行上下文预测获得的,也可以是根据不同的数据压缩需求,为根节点的数据压缩和解压给出了预设的数据占有信息(如,根节点的占有情况字节的概率分布)。
这里以熵解码器采用的编码方式是变长编码为例进行说明,若树状结构为八叉树,根节点的数据占有信息如下表2所示,根节点的占有情况字节是“0001 1000”的预测概率为89%,对压缩数据进行解压包括以下步骤:①,根据预测概率从大到小将各占有情况字节进行排序;②,将2个最小概率对应的占有情况字节组成1组并划分为2个分支域,并分别标记为“0”和“1”,如占有情况字节是“0000 0000”的情况标记为“0”,占有情况字节是“11111111”的情况标记为“1”,并将占有情况字节是“0000 0000”和“1111 1111”的2个分支域合并为1个分支域,其概率为两种占有情况字节的和(0.01%+0.003%=0.013%);③,将所有的占有情况字节按照和②类似的方式进行组合,直到得到的分支域的概率为1;④,查询概率和为1的分支域到各占有情况字节的路径,并记录各路径从右到左各分支域的“0”和“1”所对应的占有情况字节,得到各占有情况字节对应的码字(二进制文件),完成根节点对应的压缩数据的解压。
表2
占有情况字节 | 预测概率 |
0000 0000 | 0.01% |
··· | ··· |
0001 1000 | 89% |
··· | ··· |
1111 1111 | 0.003% |
第二级解压:熵解码器利用祖父节点732的数据占有信息对祖父节点732所对应体素中的数据进行解压。
第三级解压:熵解码器利用父节点733的数据占有信息对父节点733所对应体素中的数据进行解压。
第四级解压:熵解码器利用待编码节点734的数据占有信息对待编码节点734所对应体素中的数据进行解压。
值得注意的是,第二级解压~第四级解压所采用的编码方式和第一级解压采用的编码方式是相同的,此处不予赘述。此外,第一级解压~第四级解压所采用的编码方式是以变长编码(霍夫曼编码)为例进行说明,而本申请提供的数据处理方法中的数据解压过程也可以是采用算术编码方式,本申请对数据解压所采用的编码方式不予限定,但是数据解压和数据压缩采用的编码方式应是一致的。
图6和图7中是以压缩数据重构八叉树后获得4级节点为例进行示意,但在压缩数据的数据量更小时,可以使用更少层的节点对压缩数据进行解压;在压缩数据的数据量更大时,可以使用更多层的节点对压缩数据进行解压,本申请对此不予限定。
本申请采用一个循环网络层替代了现有技术中多层的MLP网络,降低了数据压缩模型的复杂度,减少了上下文预测获取数据占有信息时所需的计算资源;另外,相较于现有技术中会存储每个节点的特征以及融合特征得到的中间特征,本申请提供的数据处理方法无需存储特征及中间特征,减少了数据解压所占据的存储空间。
通常,点云的数据量很大,数据压缩的过程也会比较长,数据压缩的过程也会出现各种突发情况(如数据压缩出现卡顿或停止),为了便于监控数据压缩过程,这里以图5所示出的发送端具有显示单元为例进行说明,该数据处理方法还包括以下步骤。
S570、发送端显示树状结构和数据占有信息中至少一种。
上述的显示单元可以是显示屏,例如,若发送端为手机,则该显示屏可以是触摸屏。又如,若发送端为自动驾驶系统的控制设备,该显示屏可以是设置于车辆内部靠近驾驶员侧的平视显示器(head up display,HUD),该显示屏还可以是设置于车辆内部的投影仪的投影区域。
在第一种可能的设计中,如图10中的(a)所示,发送端可以显示待压缩数据的树状结构,其指示第i-1层节点和第i层节点的数据分布情况。
在第二种可能的设计中,发送端可以显示数据占有信息。如图10中的(b)所示,其指示了第i-1层节点的占有情况字节的预测概率,如,第i-1层节点的占有情况字节为“00000000”的预测概率为0.1%,第i-1层节点的占有情况字节为“1000 0100”的预测概率为99%,第i-1层节点的占有情况字节为“1111 1111”的预测概率为0.05%。
在第三种可能的设计中,如图10中的(c)所示,发送端可以同时显示待压缩数据的树状结构和待编码节点(如第i-1层节点)的数据占有信息。
在数据压缩的过程比较长的情况下,通过对树状结构和数据占有信息中至少一种进行显示,有利于用户监控数据压缩过程,定位数据压缩出现错误(如数据压缩出现卡顿或停止)的位置,提高数据压缩的准确性。
数据占有信息可能是运营人员无法识别的一组数据,在数据压缩或解压时,若上下文预测出现明显的错误,难以确定上下文预测出现的问题,为了解决上述问题,这里以数据压缩模型还包括维度调整层为例进行说明,请继续参见图5,该数据处理方法还可以包括以下步骤。
S580、发送端将第i层节点的数据占有信息输入维度调整层,得到占有率预测表。
上述的维度调整层可以包括至少一层MLP,该MLP用于调整数据占有信息的输出维度。例如,若树状结构为八叉树,则该MLP的输出维度可以是256,以将“0000 0000”~“11111111”对应的每一种占有情况字节的预测概率进行输出。又如,若树状结构为八叉树,则该MLP的输出维度还可以是260,除了输出每种占有情况字节的概率,还可以预留4个维度作为可选项,该可选项可以指示发送端的设备类型(如手机、电脑),该可选项还可以作为压缩数据的存储地址,以指示压缩数据的存储位置等。
该占有率预测表指示第i层节点的每个占有情况字节的预测概率。例如,若树状结构为两叉树,该占有率预测表可以如表3所示,第i层节点的占有情况字节是“00”的预测概率为5%,第i层节点的占有情况字节是“01”的预测概率为80%,第i层节点的占有情况字节是“10”的预测概率为12%,第i层节点的占有情况字节是“11”的预测概率为3%。
表3
序号 | 占有情况字节 | 预测概率 |
1 | 00 | 5% |
2 | 01 | 80% |
3 | 10 | 12% |
4 | 11 | 3% |
在数据压缩或解压的过程中,利用维度调整层对数据占有信息进行维度调整,得到可视化的占有率预测表,有利于运营人员对数据压缩或解压的过程进行监控,在上下文预测出现明显的错误的情况下,运营人员可以将该占有率预测表作为参考,以便快速确定数据压缩或解压过程中出现的问题,提高数据压缩和解压过程的鲁棒性。
作为一种可选的实施方式,若待压缩数据的树状结构为八叉树,针对于上述的数据压缩模型,本申请提供一种可能的具体实现方式,这里以特征提取层包括3层MLP、循环网络层包括3层LSTM、维度调整层包括1层MLP为例进行说明,如图11所示,图11为本申请提供的另一种数据压缩模型的结构示意图,该数据压缩模型1100包括特征提取层1110、循环网络层1120和维度调整层1130。
特征提取层1110包括第一MLP 1111(输入维度为m、输出维度为128)、第二MLP1112(输入维度为128、输出维度为128)、第三MLP 1113(输入维度为128、输出维度为128)。特征提取层1110可以实现图7所示出的第四提取层714的功能,例如,特征提取层1110用于根据第i层节点的位置、深度和子节点编号,第i-1层节点的占有情况字节,以及第i层节点的至少一个兄弟节点的占有情况字节中至少一种,得到第i层节点的特征Xt。关于第i层节点的特征和特征Xt请参考S5201的相关阐述,此处不予赘述。
循环网络层1120包括第一LSTM 1121(输入维度为128、输出维度为128、步长为1×1)、第二LSTM 1122(输入维度为128、输出维度为128、步长为1×1)、第三LSTM 1123(输入维度为128、输出维度为128、步长为1×1)。循环网络层1120可以实现图7所示出的第四网络层724的功能,例如,循环网络层1120可以根据第i-1层节点的数据占有信息ht-1、第i-1层节点的总结信息Ct-1和第i层节点的特征Xt,获取第i层节点的数据占有信息ht,以及第i层节点的总结信息Ct。
维度调整层1130包括第四MLP 1131(输入维度为128、输出维度为256)。维度调整层1130可以调整数据占有信息的输出维度,例如,第四MLP 1131将第i层节点的数据占有信息ht的输出维度调整为256,得到占有率预测表。示例的,占有率预测表可以包括“00000000”~“1111 1111”等256种占有情况字节的预测概率。
以图11所示出的数据压缩模型为例,本申请提供的数据处理方法,预测待编码节点的数据占有信息总共需要4个MLP层和3个LSTM层,以及储存3个LSTM层输出的总结信息和数据占有信息,数据压缩和解压所需的计算量和存储空间均为常数。
相比之下,在图4所提供的上下文预测方法中,无论待编码节点属于哪一层,OctSqueeze算法最多也只能利用到n-1个祖先节点的信息(如,n=4),导致在待编码节点的深度i值(n≤i)较大时,对待编码节点进行上下文预测得到的占有率预测结果的精度较低。例如,预测一个节点的数据占有信息需要计算4n+1个MLP层以及存储n-1组特征,也就是说,随着n值的增大,上下文预测的计算量和特征所需的存储空间会线性增加。
因此,本申请提供的数据处理方法采用循环网络层替代了多层的MLP层,降低了数据压缩模型的复杂度,且数据压缩模型所占用的计算资源均为常数,使得在待编码节点的深度增加或祖先节点的数量增加的情况下,对待编码节点进行上下文预测不会占用更多的计算资源;此外,待编码节点的深度每增加一层,存储总结信息和数据占有信息所需的空间也是固定的,这减少了数据压缩和解压所需的存储空间。
此外,Oct Squeeze算法进行上下文预测时,只能采用固定的n-1个祖先节点的信息,而在本申请提供的数据处理方法中,数据压缩模型中的循环网络层可以利用从根节点开始到待编码节点的父节点的所有预测信息,且这些预测信息可以被循环网络层选择性的记忆和保留,使得在数据压缩模型预测待编码节点的数据占有信息时,循环网络层可以利用待编码节点的所有祖先节点的信息,提高了上下文预测的精度,提高了数据压缩比。
可以理解的是,为了实现上述实施例中的功能,计算设备包括了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本申请中所公开的实施例描述的各示例的单元及方法步骤,本申请能够以硬件或硬件和计算机软件相结合的形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用场景和设计约束条件。
上文中结合图1至图11,详细描述了根据本实施例所提供的数据处理方法,下面将结合图12和图13,描述根据本实施例所提供的数据处理装置和计算设备。
图12为本申请提供的一种数据处理装置的示意图。这些数据处理装置可以用于实现上述方法实施例中发送端和接收端的功能,因此也能实现上述方法实施例所具备的有益效果。在本实施例中,该数据处理装置可以是如图1所示的终端111~终端113或数据中心130,还可以是应用于应用服务器131的模块(如芯片)。
下面结合图12对第一数据处理装置1210与第二数据处理装置1220的结构和功能进行介绍,第一数据处理装置1210可以实现图2所示出的发送端的功能,第二数据处理装置1220可以实现图2所示出的接收端的功能。应理解,本实施例仅对第一数据处理装置1210与第二数据处理装置1220的结构和功能模块进行示例性划分,本申请并不对其具体划分做任何限定。
如图12所示,第一数据处理装置1210通过通信信道1230与第二数据处理装置1220建立通信连接,通信信道1230可以传输上述发送端向接收端发送的压缩数据,通信信道1230还可以传输接收端向发送端发送的其他信息。
如图12所示,第一数据处理装置1210包括采集单元1211、显示单元1212、预处理单元1213、上下文预测单元1214、编码单元1215和收发单元1216,上述单元可以用于实现上述图5或图8中所示的方法实施例中发送端执行的各个操作步骤对应的方法。
当第一数据处理装置1210用于实现图5所示的方法实施例中的功能时,显示单元1212用于执行S570,预处理单元1213用于实现S510,上下文预测单元1214用于实现S520和S580,编码单元1215用于实现S530,收发单元1216用于实现S540。
可选的,当第一数据处理装置1210用于实现图8所示的方法实施例中的功能时,上下文预测单元1214还用于实现S5201~S5203。
例如,采集单元1211可以实现上述实施例提供的传感器(如激光雷达、毫米波雷达和声呐等)和摄像头实现的功能。显示单元1212可以是包括显示屏,例如,若第一数据处理装置1210为手机,则该显示屏可以是触摸屏。又如,若第一数据处理装置1210为自动驾驶系统的控制设备,该显示屏可以是HUD等。
如图12所示,第二数据处理装置1220包括获取单元1221、上下文预测单元1222和解压单元1223,上述单元可以用于实现上述图5或图8中所示的方法实施例中接收端执行的各个操作步骤对应的方法。
当第二数据处理装置1220用于实现图5或图8所示的方法实施例中的功能时,获取单元1221用于获取压缩数据,上下文预测单元1222用于执行S550,解压单元1223用于执行S560。
有关上述第一数据处理装置1210与第二数据处理装置1220更详细的描述可以直接参考上述图5或图8所示的方法实施例中相关描述直接得到,这里不加赘述。
图13为本申请提供的一种计算设备的结构示意图,该计算设备1300包括处理器1310和通信接口1320。处理器1310和通信接口1320之间相互耦合。可以理解的是,通信接口1320可以为收发器或输入输出接口。可选的,计算设备1300还可以包括存储器1330,用于存储处理器1310执行的指令或存储处理器1310运行指令所需要的输入数据或存储处理器1310运行指令后产生的数据。
作为一种可能的实现方式,处理器1310可以根据原始数据生成树状结构的待压缩数据,并利用数据压缩模型包含的循环网络层确定在树状结构的数据占有信息。该数据占有信息用于指示原始数据在树状结构中的数据分布。进而,处理器1310根据该数据占有信息压缩上述的待压缩数据得到压缩数据。
当计算设备1300用于实现图5或图8所示的方法时,处理器1310、通信接口1320和存储器1330还可以协同实现发送端和接收端执行的数据处理方法中的各个操作步骤。计算设备1300还可以执行图12所示出的第一数据处理装置1210和第二数据处理装置1220的功能,此处不予赘述。
本申请实施例中不限定上述通信接口1320、处理器1310以及存储器1330之间的具体连接介质。本申请实施例在图13中以通信接口1320、处理器1310以及存储器1330之间通过总线1340连接,总线在图13中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图13中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器1330可用于存储软件程序及模块,如本申请实施例所提供的数据处理方法对应的程序指令/模块,处理器1310通过执行存储在存储器1330内的软件程序及模块,从而执行各种功能应用以及数据处理。该通信接口1320可用于与其他设备进行信令或数据的通信。在本申请中该计算设备1300可以具有多个通信接口1320。
其中,上述的存储器可以是但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。
上述的处理器可以是一种集成电路芯片,具有信号处理能力。该处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
本申请的实施例中的方法步骤可以通过硬件的方式来实现,也可以由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于RAM、闪存、ROM、PROM、EPROM、EEPROM、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于计算设备中。当然,处理器和存储介质也可以作为分立组件存在于计算设备中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机程序或指令。在计算机上加载和执行所述计算机程序或指令时,全部或部分地执行本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、通信装置、用户设备或者其它可编程装置。所述计算机程序或指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机程序或指令可以从一个网站站点、计算机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是集成一个或多个可用介质的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,例如,软盘、硬盘、磁带;也可以是光介质,例如,数字视频光盘(digital video disc,DVD);还可以是半导体介质,例如,固态硬盘(solid state drive,SSD)。
在本申请的各个实施例中,如果没有特殊说明以及逻辑冲突,不同的实施例之间的术语和/或描述具有一致性、且可以相互引用,不同的实施例中的技术特征根据其内在的逻辑关系可以组合形成新的实施例。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。在本申请的文字描述中,字符“/”,一般表示前后关联对象是一种“或”的关系;在本申请的公式中,字符“/”,表示前后关联对象是一种“相除”的关系。
本申请说明书和权利要求书及上述附图中的术语“第一”、“第二”和“第三”等是用于区别不同对象,而不是用于限定特定顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
可以理解的是,在本申请的实施例中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本申请的实施例的范围。上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定。
Claims (30)
1.一种数据处理方法,其特征在于,包括:
根据原始数据生成树状结构的待压缩数据;
利用数据压缩模型确定在所述树状结构的数据占有信息,所述数据占有信息用于指示所述原始数据在所述树状结构中的数据分布,所述数据压缩模型包含循环网络层,所述循环网络层用于确定所述数据占有信息;
根据所述数据占有信息压缩所述待压缩数据,得到压缩数据。
2.根据权利要求1所述的方法,其特征在于,在所述利用数据压缩模型确定在所述树状结构的数据占有信息之前,所述方法还包括:
通过传感器采集所述原始数据,所述原始数据为三维数据,所述传感器包括激光雷达、毫米波雷达和声呐中至少一种。
3.根据权利要求1所述的方法,其特征在于,在所述利用数据压缩模型确定在所述树状结构的数据占有信息之前,所述方法还包括:
通过摄像头采集所述原始数据,所述原始数据为二维数据。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述方法还包括:
显示所述树状结构和/或所述数据占有信息。
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述利用数据压缩模型确定在所述树状结构的数据占有信息,包括:
将树状结构中第i-1层节点的数据占有信息输入所述循环网络层,得到第i层节点的数据占有信息,i为正整数,所述第i-1层节点是所述第i层节点的父节点。
6.根据权利要求1-4中任一项所述的方法,其特征在于,所述利用数据压缩模型确定在所述树状结构的数据占有信息,包括:
将所述树状结构中第i-1层节点的数据占有信息、所述第i-1层节点的总结信息和所述第i层节点的特征中至少一种输入所述循环网络层,得到所述第i层节点的数据占有信息,所述第i-1层节点的总结信息用于描述所述第i-1层节点的祖先节点到所述第i-1层节点的所有预测信息。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
将所述树状结构中第i-1层节点的数据占有信息、所述第i-1层节点的总结信息和所述第i层节点的特征中至少一种输入所述循环网络层,得到所述第i层节点的总结信息,所述第i层节点的总结信息用于描述所述第i层节点的祖先节点到所述第i层节点的所有预测信息。
8.根据权利要求6或7所述的方法,其特征在于,所述数据压缩模型还包括特征提取层,所述方法还包括:
将所述第i层节点的位置、深度和子节点编号,以及所述第i-1层节点的占有情况字节中至少一种输入所述特征提取层,得到所述第i层节点的特征。
9.根据权利要求8所述的方法,其特征在于,将所述第i层节点的位置、深度和子节点编号,以及所述第i-1层节点的占有情况字节中至少一种输入所述特征提取层,得到所述第i层节点的特征,包括:
将所述第i层节点的位置、深度和子节点编号,所述第i-1层节点的占有情况字节,以及所述第i层节点的至少一个兄弟节点的占有情况字节输入所述特征提取层,得到所述第i层节点的特征。
10.根据权利要求5-9中任一项所述的方法,其特征在于,所述数据压缩模型还包括维度调整层,所述方法还包括:
将所述第i层节点的数据占有信息输入所述维度调整层,得到占有率预测表,所述占有率预测表指示所述第i层节点的每个占有情况字节的预测概率。
11.根据权利要求10所述的方法,其特征在于,所述维度调整层包括至少一层多层感知机MLP。
12.根据权利要求8或9所述的方法,其特征在于,所述特征提取层包括至少一层MLP。
13.根据权利要求1-12中任一项所述的方法,其特征在于,所述循环网络层包括至少一层长短期记忆网络LSTM层。
14.一种数据处理方法,其特征在于,包括:
获取压缩数据;
利用数据压缩模型确定在树状结构的数据占有信息,所述数据占有信息用于指示所述压缩数据在所述树状结构中的数据分布,所述数据压缩模型包含循环网络层,所述循环网络层用于确定所述数据占有信息;
根据所述数据占有信息解压所述压缩数据,得到解压数据。
15.根据权利要求14所述的方法,其特征在于,所述利用数据压缩模型确定在所述树状结构的数据占有信息,包括:
将树状结构中第i-1层节点的数据占有信息输入所述循环网络层,得到第i层节点的数据占有信息,i为正整数,所述第i-1层节点是所述第i层节点的父节点。
16.根据权利要求14所述的方法,其特征在于,所述利用数据压缩模型确定在所述树状结构的数据占有信息,包括:
将所述树状结构中第i-1层节点的数据占有信息、所述第i-1层节点的总结信息和所述第i层节点的特征中至少一种输入所述循环网络层,得到所述第i层节点的数据占有信息,所述第i-1层节点的总结信息用于描述所述第i-1层节点的祖先节点到所述第i-1层节点的所有预测信息。
17.根据权利要求16所述的方法,其特征在于,所述方法还包括:
将所述树状结构中第i-1层节点的数据占有信息、所述第i-1层节点的总结信息和所述第i层节点的特征中至少一种输入所述循环网络层,得到所述第i层节点的总结信息,所述第i层节点的总结信息用于描述所述第i层节点的祖先节点到所述第i层节点的所有预测信息。
18.根据权利要求16或17所述的方法,其特征在于,所述数据压缩模型还包括特征提取层,所述方法还包括:
将所述第i层节点的位置、深度和子节点编号,以及所述第i-1层节点的占有情况字节中至少一种输入所述特征提取层,得到所述第i层节点的特征。
19.根据权利要求18所述的方法,其特征在于,将所述第i层节点的位置、深度和子节点编号,以及所述第i-1层节点的占有情况字节中至少一种输入所述特征提取层,得到所述第i层节点的特征,包括:
将所述第i层节点的位置、深度和子节点编号,所述第i-1层节点的占有情况字节,以及所述第i层节点的至少一个兄弟节点的占有情况字节输入所述特征提取层,得到所述第i层节点的特征。
20.根据权利要求15-19中任一项所述的方法,其特征在于,所述数据压缩模型还包括维度调整层,所述方法还包括:
将所述第i层节点的数据占有信息输入所述维度调整层,得到占有率预测表,所述占有率预测表指示所述第i层节点的每个占有情况字节的预测概率。
21.根据权利要求20所述的方法,其特征在于,所述维度调整层包括至少一层多层感知机MLP。
22.根据权利要求18或19所述的方法,其特征在于,所述特征提取层包括至少一层MLP。
23.根据权利要求14-22中任一项所述的方法,其特征在于,所述循环网络层包括至少一层长短期记忆网络LSTM层。
24.一种数据处理装置,其特征在于,包括:
预处理单元,用于根据原始数据生成树状结构的待压缩数据;
上下文预测单元,用于利用数据压缩模型确定在所述树状结构的数据占有信息,所述数据占有信息用于指示所述原始数据在所述树状结构中的数据分布,所述数据压缩模型包含循环网络层,所述循环网络层用于确定所述数据占有信息;
编码单元,用于根据所述数据占有信息压缩所述待压缩数据,得到压缩数据。
25.根据权利要求24所述的装置,其特征在于,所述上下文预测单元,具体用于将所述树状结构中第i-1层节点的数据占有信息、所述第i-1层节点的总结信息和所述第i层节点的特征中至少一种输入所述循环网络层,得到所述第i层节点的数据占有信息,所述第i-1层节点的总结信息用于描述所述第i-1层节点的祖先节点到所述第i-1层节点的所有预测信息。
26.根据权利要求25所述的装置,其特征在于,所述上下文预测单元,还用于将所述树状结构中第i-1层节点的数据占有信息、所述第i-1层节点的总结信息和所述第i层节点的特征中至少一种输入所述循环网络层,得到所述第i层节点的总结信息,所述第i层节点的总结信息用于描述所述第i层节点的祖先节点到所述第i层节点的所有预测信息。
27.根据权利要求24-26中任一项所述的装置,其特征在于,所述循环网络层包括至少一层长短期记忆网络LSTM层。
28.一种数据处理装置,其特征在于,包括:
获取单元,用于获取压缩数据;
上下文预测单元,用于利用数据压缩模型确定在树状结构的数据占有信息,所述数据占有信息用于指示所述压缩数据在所述树状结构中的数据分布,所述数据压缩模型包含循环网络层,所述循环网络层用于确定所述数据占有信息;
解压单元,用于根据所述数据占有信息解压所述压缩数据,得到解压数据。
29.一种计算设备,其特征在于,包括存储器和处理器,所述存储器用于存储一组计算机指令;当所述处理器执行所述一组计算机指令时,执行上述权利要求1至13中任一项所述的方法的操作步骤,或权利要求14-23中任一项所述的方法的操作步骤。
30.一种计算机可读存储介质,其特征在于,所述存储介质中存储有计算机程序或指令,当所述计算机程序或指令被计算设备执行时,实现如权利要求1至13中任一项所述的方法,或权利要求14-23中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110384626.7A CN115249033A (zh) | 2021-04-09 | 2021-04-09 | 一种数据处理方法及装置 |
PCT/CN2022/085349 WO2022213992A1 (zh) | 2021-04-09 | 2022-04-06 | 一种数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110384626.7A CN115249033A (zh) | 2021-04-09 | 2021-04-09 | 一种数据处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115249033A true CN115249033A (zh) | 2022-10-28 |
Family
ID=83545989
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110384626.7A Pending CN115249033A (zh) | 2021-04-09 | 2021-04-09 | 一种数据处理方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115249033A (zh) |
WO (1) | WO2022213992A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115421161A (zh) * | 2022-11-03 | 2022-12-02 | 上海伯镭智能科技有限公司 | 基于激光雷达测距的无人驾驶矿车控制方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115857836B (zh) * | 2023-02-10 | 2023-05-26 | 中南大学湘雅医院 | 基于大数据的信息储存方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106911930A (zh) * | 2017-03-03 | 2017-06-30 | 深圳市唯特视科技有限公司 | 一种基于递归卷积神经网络进行压缩感知视频重建的方法 |
US10839530B1 (en) * | 2018-09-04 | 2020-11-17 | Apple Inc. | Moving point detection |
WO2021258373A1 (en) * | 2020-06-24 | 2021-12-30 | Beijing Xiaomi Mobile Software Co., Ltd. | Method of encoding and decoding, encoder, decoder and software |
CN112581552B (zh) * | 2020-12-14 | 2023-04-07 | 深圳大学 | 自适应分块的基于体素的点云压缩方法及装置 |
-
2021
- 2021-04-09 CN CN202110384626.7A patent/CN115249033A/zh active Pending
-
2022
- 2022-04-06 WO PCT/CN2022/085349 patent/WO2022213992A1/zh active Application Filing
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115421161A (zh) * | 2022-11-03 | 2022-12-02 | 上海伯镭智能科技有限公司 | 基于激光雷达测距的无人驾驶矿车控制方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2022213992A1 (zh) | 2022-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11158107B2 (en) | Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method | |
US20210105504A1 (en) | Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method | |
US20240121418A1 (en) | Apparatus and method for processing point cloud data | |
WO2022213992A1 (zh) | 一种数据处理方法及装置 | |
US20240070890A1 (en) | Point cloud data transmission apparatus, point cloud data transmission method, point cloud data reception apparatus, and point cloud data reception method | |
US11902348B2 (en) | Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method | |
US20220256190A1 (en) | Point cloud data processing apparatus and method | |
US20220321912A1 (en) | Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method | |
US11979607B2 (en) | Apparatus and method for processing point cloud data | |
US11533514B2 (en) | Encoding method, decoding method, information processing method, encoding device, decoding device, and information processing system | |
US20230171431A1 (en) | Device for transmitting point cloud data, method for transmitting point cloud data, device for receiving point cloud data, and method for receiving point cloud data | |
Chan et al. | Influence of AVC and HEVC compression on detection of vehicles through Faster R-CNN | |
US20230281881A1 (en) | Video Frame Compression Method, Video Frame Decompression Method, and Apparatus | |
US20230360273A1 (en) | Point cloud data transmission apparatus, point cloud data transmission method, point cloud data reception apparatus, and point cloud data reception method | |
CN114598883A (zh) | 点云属性的预测方法、编码器、解码器及存储介质 | |
WO2023174256A1 (zh) | 一种数据压缩方法以及相关设备 | |
US20230154052A1 (en) | Point cloud data transmission device, point cloud data transmission method, point cloud data reception device and point cloud data reception method | |
US20220327744A1 (en) | Apparatus and method for processing point cloud data | |
Wu et al. | Hybrid mobile vision for emerging applications | |
CN116309896A (zh) | 数据编解码方法、装置和设备 | |
WO2022213843A1 (zh) | 一种图像处理方法、训练方法及装置 | |
WO2023024842A1 (zh) | 点云编解码方法、装置、设备及存储介质 | |
WO2024011381A1 (zh) | 点云编解码方法、装置、设备及存储介质 | |
RU2773420C1 (ru) | Способ обработки изображений, способ и устройство обучения | |
WO2023143140A1 (zh) | 基于树结构划分的点云编码方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |