本发明涉及点云数据处理,尤其是一种基于深度熵编码的动态点云属性压缩方法。
背景技术:
1、点云作为一种常见的三维数据结构,被广泛应用于包括虚拟现实、自动驾驶以及高精度建图等实际应用中。近年来三维数据采集技术的发展,使点云获取量日益增大,相应的,点云数据压缩成为点云存储与传输的关键,也是众多三维视觉应用的必要基础。点云几何压缩算法对点云几何信息(点云中各点空间位置xyz)进行压缩编码,点云属性压缩算法对点云属性信息(点云中各点属性,如颜色、反射率等)进行压缩编码。动态点云属性压缩算法,则是对点云序列的属性信息进行压缩编码。
2、现有动态点云属性压缩算法主要由运动估计、运动补偿、变换编码与熵编码四部分组成。通常,给定已编码点云与一帧待编码点云,首先对待编码点云进行运动估计,获得各点的运动向量,然后进行运动补偿,通过运动向量与前一帧点云,预测待编码点云属性,并获得属性残差值,然后,对残差值进行变换编码,将属性信息从信号域转换至频域,再对变换后所得变换系数进行量化及熵编码。通常,熵编码算法包括熵模型与熵编码器两部分,熵模型用以估计输入符号的概率分布,熵编码器根据预测概率,对输入符号进行编码。
3、现有技术存在以下缺点:
4、(1)现有技术无法实现高效的点云运动估计与运动补偿。受传统点云运动估计算法的性能限制,这些方法并没有在点云压缩算法中得以广泛应用。
5、(2)现有技术无法利用点云的时序信息。现有方法将输入符号视为序列化数据,仅仅根据之前编码符号,在熵模型中实现概率预测,无法利用动态点云的时序信息,准确性较低。
技术实现思路
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、其中,所述预处理包括去噪处理、切块处理、色彩空间变换处理;所述变换编码包括三维小波变换处理或使用深度神经网络构造的自编码器结构进行变换处理。
27、可选地,所述根据所述变换系数,对所述第一点云数据和所述第二点云数据进行点云时序信息的提取,得到显式时序信息和隐式时序信息,包括:
28、通过显式时序信息提取模块对所述第一点云数据和所述第二点云数据进行点云时序信息的提取,得到显式时序信息;
29、通过隐式时序信息提取模块对所述第一点云数据和所述第二点云数据进行点云时序信息的提取,得到隐式时序信息。
30、可选地,所述通过显式时序信息提取模块对所述第一点云数据和所述第二点云数据进行点云时序信息的提取,得到显式时序信息,包括:
31、获取前一帧点云数据的各点几何坐标和属性信息,获取当前点云数据的几何坐标和属性残差值,将各帧点云数据的数据结构转换成raht树结构,得到raht树对应的变换系数;
32、根据所述变换系数,在raht树的各个节点子空间中计算逐点的运动向量的和,得到raht树节点的运动向量;
33、将所述raht树节点的运动向量进行变形得到raht树;
34、采用空间聚合算法对所述raht树进行处理,得到显式时序特征。
35、可选地,所述通过隐式时序信息提取模块对所述第一点云数据和所述第二点云数据进行点云时序信息的提取,得到隐式时序信息,包括:
36、获取当前点云数据的几何坐标和属性残差值,将点云数据结构转换至raht树结构,得到raht树对应的变换系数;
37、根据所述变换系数,采用多层神经网络mlps提取对应预测值作为残差值的上下文特征;
38、根据所述变换系数,采用空间聚合算法,获得时空特征;
39、将所述上下文特征和所述时空特征融合得到隐式时序信息。
40、本发明实施例的另一方面还提供了一种基于深度熵编码的动态点云属性压缩装置,包括:
41、第一模块,用于对获取的第一点云数据和第二点云数据进行运动估计,得到所述第二点云数据的各个点的运动向量;其中,第一点云数据为第二点云数据的前一帧点云数据;第二点云数据为待压缩的点云数据;
42、第二模块,用于对所述运动向量进行运动补偿,得到属性残差值;
43、第三模块,用于对所述属性残差值进行变换编码得到变换系数;
44、第四模块,用于根据所述变换系数,对所述第一点云数据和所述第二点云数据进行点云时序信息的提取,得到显式时序信息和隐式时序信息;
45、第五模块,用于将所述显式时序信息和所述隐式时序信息进行信息融合处理,得到融合后的特征信息;
46、第六模块,用于根据所述特征信息生成变换系数的预测概率;
47、第七模块,用于根据所述变换系数以及所述预测概率进行熵编码处理,生成第二点云数据的压缩文件。
48、本发明实施例的另一方面还提供了一种电子设备,包括处理器以及存储器;
49、所述存储器用于存储程序;
50、所述处理器执行所述程序实现如前面所述的方法。
51、本发明实施例的另一方面还提供了一种计算机可读存储介质,所述存储介质存储有程序,所述程序被处理器执行实现如前面所述的方法。
52、本发明实施例还公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器可以从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前面的方法。
53、本发明的实施例对获取的第一点云数据和第二点云数据进行运动估计,得到所述第二点云数据的各个点的运动向量;对所述运动向量进行运动补偿,得到属性残差值;对所述属性残差值进行变换编码得到变换系数;根据所述变换系数,对所述第一点云数据和所述第二点云数据进行点云时序信息的提取,得到显式时序信息和隐式时序信息;将所述显式时序信息和所述隐式时序信息进行信息融合处理,得到融合后的特征信息;根据所述特征信息生成变换系数的预测概率;根据所述变换系数以及所述预测概率进行熵编码处理,生成第二点云数据的压缩文件。本发明提高了准确性以及拓广了适用性。