一种点云编码方法、点云解码方法及相关设备技术

技术编号:35026571 阅读:39 留言:0更新日期:2022-09-24 22:58
本申请实施例提供了一种点云编码方法、点云解码方法及相关设备,其中的点云编码方法包括:获取待编码的点云数据,点云数据被划分为L个点云组,L为大于或等于1的整数,每个点云组包含多个待编码的点;为每个点云组确定起始点,每个点云组的起始点的数量均大于等于1;基于每个点云组的起始点构建每个点云组的单链预测树;根据每个点云组的单链预测树,对点云数据中的各个待编码的点进行编码处理。采用本申请实施例能够提高点云数据的编码效率。申请实施例能够提高点云数据的编码效率。申请实施例能够提高点云数据的编码效率。

【技术实现步骤摘要】
一种点云编码方法、点云解码方法及相关设备


[0001]本申请涉及计算机
,具体涉及编解码领域,尤其涉及一种点云编码方法、一种点云解码方法、一种点云处理装置、一种计算机设备及一种计算机可读存储介质。

技术介绍

[0002]点云数据是采用测量仪器对物体表面进行数据采集所得到的点集合。点云数据在自动驾驶、高精度地图及虚拟现实等方面应用广泛,但由于点云数据往往是由数万个点到数亿个三维点组成,对数据存储、处理及传输显示都带来了严峻的挑战,对于目前的存储资源和传输带宽都难以承受,因此对点云数据进编码后存储或传输是必不可少的。
[0003]目前,可采用预测树编码技术对点云数据进行编码;例如,将点云数据所包含的各个点进行链接,以构建点云数据的预测树,并基于该预测树对点云数据实现编码处理。然而,现有的预测树编码技术均采用单一起始点,来对点云数据的预测树进行构建和后续点搜索、链接;这种基于单一起始点构建点云数据的预测树的方式,不仅降低预测树构建效率,而且导致编码性能依赖于起始点的选取,从而降低点云数据的编码效率。

技术实现思路

[0004]本申请实施例提供一种点云编码方法、点云解码方法及相关设备,能够基于多个起始点构建点云数据的预测树,从而提高点云数据的编码效率。
[0005]一方面,本申请实施例提供了一种点云编码方法,该方法包括:
[0006]获取待编码的点云数据,点云数据被划分为L个点云组,L为大于或等于1的整数,每个点云组包含多个待编码的点;
[0007]为每个点云组确定起始点,每个点云组的起始点的数量均大于等于1;
[0008]基于每个点云组的起始点构建每个点云组的单链预测树;
[0009]根据每个点云组的单链预测树,对点云数据中的各个待编码的点进行编码处理。
[0010]本申请实施例中,一方面,在获取待编码的点云数据后,支持先对点云数据进行划分,得到多个点云组;再以组为单位,针对每个点云组构建单链预测树;最后基于每个点云组的单链预测树得到整个点云数据的预测树;相比于针对整个点云数据构建一棵预测树而言,针对每个点云组均构建单链预测树,在一定程度上可缩短点云数据的预测树的构建时长,提高预测树的构建效率。另一方面,为每个点云组构建单链预测树时,支持为每个点云组确定两个或两个以上的起始点,并基于两个或两个以上的起始点为点云组构建单链预测树;这种基于多起始点构建单链预测树的方式,能够实现高效的预测树结构,提高三维空间中邻近的无序点的关联关系,提升点云数据的编码效率。
[0011]另一方面,本申请实施例提供了一种点云解码方法,该方法包括:
[0012]获取待解码的点云数据,点云数据包括多个待解码的点;待解码的点云数据是编码端根据待编码的点云数据中每个点云组的单链预测树,对点云数据中各个待编码的点进行编码处理得到,每个点云组的单链预测树是基于每个点云组的起始点构建的,每个点云
组的起始点的数量均大于等于1;
[0013]对点云数据进行起始点解析,得到点云数据的起始点的重建几何信息;
[0014]确定点云数据的几何解码模式,并根据几何解码模式和起始点的重建几何信息,对点云数据中各点进行几何预测处理,得到点云数据中各点的预测几何信息;
[0015]基于点云数据中各点的预测几何信息,对点云数据中各点进行几何解码处理,以确定点云数据中各点的重建几何信息。
[0016]本申请实施例中,在获取到待解码的点云数据后,可对点云数据进行起始点解析,以确定点云数据的起始点的重建几何信息;然后,根据点云数据的几何解码模式以及起始点的重建几何信息,对点云数据中各个待编码的点进行几何预测处理,得到各个待编码的点的预测几何信息;再基于点云数据中各点的预测几何信息,对点云数据中各点进行几何解码处理,以确定点云数据中各点的重建几何信息。上述过程中,支持对点云数据进行起始点解析,直接得到点云数据的起始点的重建几何信息,实现快速确定起始点的重建几何信息,在一定程度上提高点云数据的解码效率。
[0017]另一方面,本申请实施例提供了一种点云编码装置,该装置包括:
[0018]获取单元,用于获取待编码的点云数据,点云数据被划分为L个点云组,L为大于或等于1的整数,每个点云组包含多个待编码的点;
[0019]处理单元,用于为每个点云组确定起始点,每个点云组的起始点的数量均大于等于1;
[0020]处理单元,还用于基于每个点云组的起始点构建每个点云组的单链预测树;
[0021]处理单元,还用于根据每个点云组的单链预测树,对点云数据中的各个待编码的点进行编码处理。
[0022]在一种实现方式中,点云组的起始点的确定方式,包括以下任一种或多种:
[0023]从点云组的点云包围盒的多个顶点中,选取起始点;
[0024]从点云组的一个或多个第一特殊点中选取起始点;
[0025]按照点云组中待编码的点的排列顺序,选取起始点。
[0026]在一种实现方式中,点云组的起始点的确定方式包括:从点云组的点云包围盒的多个顶点中,选取起始点;
[0027]L个点云组中的任一个点云组为目标点云组,处理单元用于为目标点云组选取起始点时,具体用于:
[0028]确定目标点云组的点云包围盒;其中,目标点云组的点云包围盒包括:涵盖目标点云组中所有点的最小长方体、最小立方体或最小多面体;
[0029]从目标点云组的点云包围盒的多个顶点中,按照选取规则选择P1个起始点,P1大于等于1;
[0030]其中,选取规则包括以下至少一种:随机选择,按各顶点之间的几何距离关系选取,以及沿预设方向选取。
[0031]在一种实现方式中,点云组的起始点的确定方式包括:从点云组的一个或多个第一特殊点中选取起始点;
[0032]L个点云组中的任一个点云组为目标点云组,处理单元用于为目标点云组选取起始点,具体用于:
[0033]从目标点云组所包含的多个待编码的点中,确定一个或多个第一特殊点,第一特殊点包括以下至少一种:目标点云组的极大值点、极小值点及中位点;
[0034]从极大值点、极小值点及中位点中,选取P2个起始点,P2大于等于1。
[0035]在一种实现方式中,点云组的起始点的确定方式包括:按照点云组中待编码的点的排列顺序,选取起始点;
[0036]L个点云组中的任一个点云组为目标点云组,处理单元用于为目标点云组选取起始点时,具体用于:
[0037]按照目标点云组中的各个待编码的点的排列顺序,确定一个或多个第二特殊点;第二特殊点包括以下至少一种:排列顺序中的最首点,以及,排列顺序中的最末点;
[0038]从一个或多个第二特殊点中,选取P3个起始点,P3大于等于1。
[0039]在一种实现方式中,L个点云组中的任一个点云组为目标点云组,处理单元用于为目标点云组选取起始点时,具体用于:
[0040]确定目标点云组的第一起始点;其中,第一起始点的确定方本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种点云编码方法,其特征在于,包括:获取待编码的点云数据,所述点云数据被划分为L个点云组,L为大于等于1的整数,每个点云组包含多个待编码的点;为所述每个点云组确定起始点,所述每个点云组的起始点的数量均大于等于1;基于所述每个点云组的起始点构建所述每个点云组的单链预测树;根据所述每个点云组的单链预测树,对所述点云数据中的各个待编码的点进行编码处理。2.如权利要求1所述的方法,其特征在于,所述点云组的起始点的确定方式,包括以下任一种或多种:从点云组的点云包围盒的多个顶点中,选取起始点;从点云组的一个或多个第一特殊点中选取起始点;按照点云组中待编码的点的排列顺序,选取起始点。3.如权利要求2所述的方法,其特征在于,所述点云组的起始点的确定方式包括:从点云组的点云包围盒的多个顶点中,选取起始点;所述L个点云组中的任一个点云组为目标点云组,为所述目标点云组选取起始点,包括:确定所述目标点云组的点云包围盒;其中,所述目标点云组的点云包围盒包括:涵盖所述目标点云组中所有点的最小长方体、最小立方体或最小多面体;从所述目标点云组的点云包围盒的多个顶点中,按照选取规则选择P1个起始点,P1大于等于1;其中,所述选取规则包括以下至少一种:随机选择,按各顶点之间的几何距离关系选取,以及沿预设方向选取。4.如权利要求2所述的方法,其特征在于,所述点云组的起始点的确定方式包括:从点云组的一个或多个第一特殊点中选取起始点;所述L个点云组中的任一个点云组为目标点云组,为所述目标点云组选取起始点,包括:从所述目标点云组所包含的多个待编码的点中,确定一个或多个第一特殊点,所述第一特殊点包括以下至少一种:所述目标点云组的极大值点、极小值点及中位点;从所述极大值点、所述极小值点及所述中位点中,选取P2个起始点,P2大于等于1。5.如权利要求2所述的方法,其特征在于,所述点云组的起始点的确定方式包括:按照点云组中待编码的点的排列顺序,选取起始点;所述L个点云组中的任一个点云组为目标点云组,为所述目标点云组选取起始点,包括:按照所述目标点云组中的各个待编码的点的排列顺序,确定一个或多个第二特殊点;所述第二特殊点包括以下至少一种:排列顺序中的最首点,以及排列顺序中的最末点;从所述一个或多个第二特殊点中,选取P3个起始点,P3大于等于1。6.如权利要求1所述的方法,其特征在于,所述L个点云组中的任一个点云组为目标点云组,为所述目标点云组选取起始点,包括:确定所述目标点云组的第一起始点;其中,所述第一起始点的确定方式包括以下任一
种:基于所述目标点云组的点云包围盒的多个顶点确定的,或者,从所述目标点云组的一个或多个第一特殊点中确定的,或者,按照所述目标点云组中待编码的点的排列顺序确定的;基于所述第一起始点与所述目标点云组中各点之间的几何位置关系,从所述目标点云组中各点中选取起始点。7.如权利要求1所述的方法,其特征在于,所述L个点云组中包括第m个点云组和第m+1个点云组;所述第m个点云组已选取一个或多个起始点;为所述第m+1个点云组选取起始点,包括:从所述第m个点云组的一个或多个起始点中,按照筛选规则为所述第m+1个点云组选取起始点;其中,所述筛选规则包括以下任一种:随机选取,或者,选取所述第m个点云组的一个或多个起始点中优先级最低的起始点。8.如权利要求1所述的方法,其特征在于,所述L个点云组中的任一个点云组为目标点云组,所述目标点云组的起始点至少包括:第一起始点和第二起始点;基于所述第一起始点和所述第二起始点,构建所述目标点云组的单链预测树,包括:将所述目标点云组中除起始点外的其他点作为候选点,添加至备选点集合;基于所述备选点集合、所述第一起始点以及所述第二起始点,构建所述目标点云组的单链预测树;其中,所述单链预测树的起始点为所述第一起始点,终止点为所述第二起始点。9.如权利要求8所述的方法,其特征在于,所述第一起始点的优先级大于所述第二起始点的优先级;所述基于所述备选点集合、所述第一起始点以及所述第二起始点,构建所述目标点云组的单链预测树,包括:基于所述第一起始点和所述备选点集合,构建所述目标点云组的单链预测树的第一分支链路,并基于所述第二起始点和所述备选点集合,构建所述目标点云组的单链预测树的第二分支链路;将优先级高的所述第一分支链路的最末点,与优先级低的所述第二分支链路的最末点进行连接,得到所述目标点云组的单链预测树。10.如权利要求9所述的方法,其特征在于,所述基于所述第一起始点和所述备选点集合,构建所述目标点云组的单链预测树的第一分支链路,并基于所述第二起始点和所述备选点集合,构建所述目标点云组的单链预测树的第二分支链路,包括:以优先级高的所述第一起始点为搜索起点,从所述备选点集合中搜索与所述第一起始点之间的几何距离最近的第一候选点;将所述第一候选点链接至以所述第一起始点为最首点的第一分支链路,并基于所述第一候选点更新所述备选点集合;以及,以优先级低的所述第二起始点为搜索起点,从更新后的备选点集合中搜索与所述第二起始点之间的几何距离最近的第二候选点;将所述第二候选点链接至以所述第二起始点为最首点的第二分支链路,并基于所述第二候选点再次更新所述更新后的备选点集合;重复上述步骤,直至备选点集合为空集,得到所述目标点云组的单链预测树的第一分支链路和第二分支链路。11.如权利要求8所述的方法,其特征在于,所述第一起始点的优先级大于所述第二起
始点的优先级;所述基于所述备选点集合、所述第一起始点以及所述第二起始点,构建所述目标点云组的单链预测树,包括:以所述第一起始点为搜索起点,从所述备选点集合中搜索到搜索起点和所述第二起始点之间的距离加权值最小的第一候选点;并将所述第一候选点链接至搜索起点,且根据所述第一候选点更新所述备选点集合;以所述第一候选点作为新的搜索起点,从更新后的备选点集合中搜索到与搜索起点和所述第二起始点之间的距离最小的第二候选点;并将所述第二候选点链接至所述新的搜索起点,并根据所述第一候选点更新所述备选点集合;以所述第二候选点作为新的搜索起点,继续进行候选点搜索,直到备选点集合为空集;将最后搜索到的候选点与所述第二起始点连接,得到所述目标点云组的单链预测树。12.如权利要求1所述的方法,其特征在于,所述获取待编码的点云数据之后,还包括:对所述点云数据包括的多个待编码的点进行排序,得到点云序列;按照所述点云序列中各点的排列顺序,将相邻目标数量的点划分至一个点云组,以得到L个点云组;其中,在划分得到第L

1个点云组时,若所述点云序列中剩余未划分的点的数量小于所述目标数量,则将所述剩余未划分的点添加至第L个点云组;或者,在划分得到第L个点云组时,若所述点云序列中剩余未划分的点的数量小于所述目标数量,则将所述剩余未划分的点添加至所述第L个点云组。13.如权利要求1或12所述的方法,其特征在于,所述根据所述每个点云组的单链预测树,对所述点云数据中的各个待编码的点进行编码处理,包括:按照所述L个点云组的分组顺序,依次连接所述每个点云组的单链预测树,得到所述点云数据的目标预测树;基于所述目标预测树对所述点云数据中的各个待编码的点进行编码处理,得到编码码流;其中,所述目标预测树的起始点为所述L个点云组中第一个点云组的第一起始点,所述目标预测树的终止点为所述L个点云组中第L个点云组的终止点。14.如权利要求13所述的方法,其特征在于,所述L个点云组中包括第j个点云组和第j+1个点云组,j=1,2,

,L

1;所述按照所述L个点云组的分组顺序,依次连接所述每个点云组的单链预测树,得到所述点云数据的目标预测树,包括:将所述第j个点云组的单链预测树的最末点,与所述第j+1个点云组的单链预测树的最首点相连,以得到所述点云数据的目标预测树。15.如权利要求13所述的方法,其特征在于,所述基于所述目标预测树对所述点云数据中的各个待编码的点进行编码处理,得到编码码流,包括:确定所述点云数据的点云包围盒的包围盒信息,并对所述包围盒信息进行编码处理;以及,获取所述目标预测树的几何编码模式,并根据所述几何编码模式对所述点云数据中各待编码的点进行编码处理;根据编码处理后的包围盒信息和编码处理后的点云数据,得到编码码流。16.如权利要求13所述的方法,其特征在于,所述基于所述目标预测树对所述点云数据中的各个待编码的点进行编码处理,得到编码码流,包括:
对所述目标预测树中起始点的起始点信息进行编码处理;所述目标预测树的起始点是指所述L个点云组中第一个点云组的第一起始点;以及,获取所述目标预测树的几何编码模式,并根据所述几何编码模式对所述点云数据中各待编码的点进行编码处理;根据编码处理后的所述目标预测树中起始点的起始点信息,以及编码处理后的点云数据,得到编码码流。17.如权利要求13所述的方法,其特征在于,所述点云数据中第j个点云组的单链预测树的终止点,作为第j+1个点云组的单链预测树的第一起始点,j=1,2,

,L

1;所述基于所述目标预测树对所述点云数据中的各个待编码的点进行编码处理,得到编码码流,包括:对各个单链预测树中第一起始点的起始点信息,以及各个点云组的组信息,进行编码处理;以及,获取所述目标预测树的几何编码模式,并根据所述几何编码模式对所述点云数据中各待编码的点进行编码处理;根据编码处理后的各个单链预测树中第一起始点的起始点信息,编码处理后的各个点云组的组信息,以及编码处理后的点云数据,得到编码码流。18.如权利要求15

17任一项所述的方法,其特征在于,所述根据所述几何编码模式对所述点云数据中各待编码的点进行编码处理,包括:根据目标预测树的几何编码模式,对所述点云数据中各点进行几何预测处理,得到所述点云数据中各点的预测几何信息;基于所述点云数据中各点的预测几何信息和真实几何信息,确定所述点云数据中各点的预测残差信息;对所述点云数据中各点的预测残差信息进行编码处理,得到编码处理后的点云数据。19.如权利要求18所述的方法,其特征在于,所述点云数据中包括当前待编码的点,所述当前待编码的点是指所述目标预测树中除起始点之外的任一个待编码的点;根据所述目标预测树的几何编码模式,对所述...

【专利技术属性】
技术研发人员:朱文婕
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1