对三维数据点集进行编码或解码的方法和设备技术

技术编号:24422102 阅读:21 留言:0更新日期:2020-06-06 14:39
本申请实施例提供一种对三维数据点集进行编码或解码的方法和设备,可以简化编码方法并降低编解码的时间开销,并且可以提高压缩率。该方法包括:对三维数据点集中的至少一个三维数据点的位置坐标进行位置坐标编码,以得到第一二进制码流;按照所述至少一个三维数据点的位置坐标编码后的位置坐标顺序,对所述至少一个三维数据点的属性进行二值化编码,以得到第二二进制码流;分别对所述第一二进制码流和所述第二二进制码流进行熵编码。

Method and equipment for encoding or decoding 3d data point set

【技术实现步骤摘要】
【国外来华专利技术】对三维数据点集进行编码或解码的方法和设备版权申明本专利文件披露的内容包含受版权保护的材料。该版权为版权所有人所有。版权所有人不反对任何人复制专利与商标局的官方记录和档案中所存在的该专利文件或者该专利披露。
本申请涉及信息处理领域,并且更具体地,涉及一种对三维数据点集进行编码或解码的方法和设备。
技术介绍
三维数据点集是三维物体或场景的一种表现形式,是由空间中一组无规则分布、表达三维物体或场景的空间结构和表面属性的离散点所构成,一个三维数据集点的数据可以包括描述坐标信息的三维坐标,以及进一步包括该位置坐标的属性。为了准确反映空间中的信息,所需离散点的数目是巨大的。为了减少三维数据点集的数据存储和传输时所占用的带宽,需要对三维数据点集的数据进行编码压缩处理。在三维数据点集编码压缩过程中对位置坐标的编码通常与对属性的编码分开进行。在对属性进行编码时,可以采用分层编码的方法。然而,这种编码方法需要构建分层结构,为每个三维数据点集的位置选择临近参考点时需要多次遍历全部三维数据点,这种方法在编码和解码的时候都会存在较大的时间开销,尤其是当三维数据点集的数据量较大时,这种时间复杂度所带来的代价尤为明显。并且在编码后的码流中关于属性的头信息需要描述关于分层编码属性的相关信息,这些信息在当三维数据点的数目不是很大的时候,在压缩后的码流的占比就会比较大,从而成为制约压缩率的瓶颈。
技术实现思路
本申请实施例提供一种对三维数据点集进行编码或解码的方法和设备,可以简化编解码方法并降低编解码的时间开销,并且可以提高压缩率。第一方面,提供了一种对三维数据点集进行编码的方法,包括:对三维数据点集中的至少一个三维数据点的位置坐标进行位置坐标编码,以得到第一二进制码流;按照所述至少一个三维数据点的位置坐标编码后的位置坐标顺序,对所述至少一个三维数据点的属性进行二值化编码,以得到第二二进制码流;分别对所述第一二进制码流和所述第二二进制码流进行熵编码。第二方面,提供了一种对三维数据点集进行解码的方法,包括:对三维数据点集的待解码码流进行熵解码,以得到第一二进制码流和第二二进制码流;对所述第一二进制码流,进行位置坐标解码,以得到对三维数据点集中的至少一个三维数据点的位置坐标;按照所述至少一个三维数据点的解码后的位置坐标顺序,对所述第二二进制码流进行二值化解码,以得到所述至少一个三维数据点的属性。第三方面,提供了一种对三维数据点集进行编码的设备,包括:位置坐标编码单元,用于对三维数据点集中的至少一个三维数据点的位置坐标进行位置坐标编码,以得到第一二进制码流;二值化编码单元,用于按照所述至少一个三维数据点的位置坐标编码后的位置坐标顺序,对所述至少一个三维数据点的属性进行二值化编码,以得到第二二进制码流;熵编码单元,用于分别对所述第一二进制码流和所述第二二进制码流进行熵编码。第四方面,提供了一种对三维数据点集进行解码的设备,包括:熵解码单元,用于对三维数据点集的待解码码流进行熵解码,以得到第一二进制码流和第二二进制码流;位置坐标解码单元,用于对所述第一二进制码流,进行位置坐标解码,以得到对三维数据点集中的至少一个三维数据点的位置坐标;二值化解码单元,用于按照所述至少一个三维数据点的解码后的位置坐标顺序,对所述第二二进制码流进行二值化解码,以得到所述至少一个三维数据点的属性。第五方面,提供了一种计算机系统,包括:存储器,用于存储计算机可执行指令;处理器,用于访问该存储器,并执行该计算机可执行指令,以进行上述第一或第二方面的方法中的操作。第六方面,提供了一种计算机存储介质,该计算机存储介质中存储有程序代码,该程序代码可以用于指示执行上述第一或第二方面的方法。第七方面,提供了一种计算机程序产品,该程序产品包括程序代码,该程序代码可以用于指示执行上述第一或第二方面的方法。在本申请实施例中,对三维数据点集中的至少一个三维数据点的属性进行二值化编码,可以避免分层编码方式所带来的编码复杂度较高的问题,从而可以简化编码方法并降低编解码的时间开销,并且二值化编码的方法无需在码流中加入较多的编码信息,从而可以提高压缩率。附图说明为了更清楚地说明本申请实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是一种对三维数据点集进行编码的方法的示意性框图。图2是另一种对三维数据点集进行编码的方法的示意性框图。图3是一种对三维数据点集进行解码的方法的示意性框图。图4是另一种对三维数据点集进行解码的方法的示意性框图。图5是层次编码方案(levelofdetail,LOD)分层结构示意性图。图6是根据本申请实施例的一种对三维数据点集进行编码的方法的示意性框图。图7是根据本申请实施例的一种对三维数据点集进行解码的方法的示意性框图。图8是根据本申请实施例的另一种对三维数据点集进行编码的方法的示意性框图。图9是根据本申请实施例的另一种对三维数据点集进行编码的方法的示意性框图。图10是根据本申请实施例的一种对三维数据点集进行编码的方法的示意性框图。图11是根据本申请实施例的另一种对三维数据点集进行解码的方法的示意性框图。图12是根据本申请实施例的另一种对三维数据点集进行编码的方法的示意性框图。图13是根据本申请实施例的另一种对三维数据点集进行解码的方法的示意性框图。图14是根据本申请实施例的立方体八叉树划分的示意性图。图15是根据本申请实施例的一种八叉树编码方案的示意性图。图16是根据本申请实施例的一种测距装置的示意性图。图17是根据本申请实施例的一种测距装置的示意性图。图18是根据本申请实施例的一种扫描图案的示意性图。图19是根据本申请实施例的一种对三维数据点集进行编码的设备的示意性框图。图20是根据本申请实施例的一种对三维数据点集进行解码的设备的示意性框图。图21是根据本申请实施例的一种计算机系统的示意性框图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。除非另有说明,本申请实施例所使用的所有技术和科学术语与本申请的
的技术人员通常理解的含义相同。本申请中所使用的术语只是为了描述具体的实施例的目的,不是旨在限制本申请的范围。三维数据点集可以由离散的三维数据点构成,每个三维数据点的数据可以包括描述该三维数据点的位置坐标的信息,以及进一步可以包括属性的信息。其中,三维数据点的位置坐标可以为三维位置坐标(x,y,z)。三本文档来自技高网
...

【技术保护点】
1.一种对三维数据点集进行编码的方法,其特征在于,包括:/n对三维数据点集中的至少一个三维数据点的位置坐标进行位置坐标编码,以得到第一二进制码流;/n按照所述至少一个三维数据点的位置坐标编码后的位置坐标顺序,对所述至少一个三维数据点的属性进行二值化编码,以得到第二二进制码流;/n分别对所述第一二进制码流和所述第二二进制码流进行熵编码。/n

【技术特征摘要】
【国外来华专利技术】1.一种对三维数据点集进行编码的方法,其特征在于,包括:
对三维数据点集中的至少一个三维数据点的位置坐标进行位置坐标编码,以得到第一二进制码流;
按照所述至少一个三维数据点的位置坐标编码后的位置坐标顺序,对所述至少一个三维数据点的属性进行二值化编码,以得到第二二进制码流;
分别对所述第一二进制码流和所述第二二进制码流进行熵编码。


2.根据权利要求1所述的方法,其特征在于,在所述对三维数据点集中的至少一个三维数据点的位置坐标进行位置坐标编码之前,所述方法还包括:
获取目标三维数据点集包,所述三维数据点集包含在所述目标三维数据点集包中。


3.根据权利要求2所述的方法,其特征在于,所述获取目标三维数据点集包,包括:
在从传送入的原始三维数据点集数据流获取到的三维数据点的数量达到预设值时,将获取到的三维数据点组成的包确定为所述目标三维数据点集包。


4.根据权利要求1至3中任一项所述的方法,其特征在于,所述属性具有一个分量。


5.根据权利要求1至4中任一项所述的方法,其特征在于,所述属性用于表征所述三维数据点集中对应的位置坐标处的反射率。


6.根据权利要求1至5中任一项所述的方法,其特征在于,所述对所述至少一个三维数据点的属性进行二值化编码,包括:
利用定长码编码方式、截断莱斯编码方式、或K阶指数哥伦布编码方式,对所述至少一个三维数据点的属性进行二值化编码。


7.根据权利要求6所述的方法,其特征在于,利用定长码编码方式,对所述至少一个三维数据点的属性进行二值化编码,包括:
根据所述至少一个三维数据点的属性的最大取值和/或所述至少一个三维数据点的属性的取值分布,确定定长码的比特深度;
按照所述定长码的比特深度,将所述至少一个三维数据点的属性进行二值化编码。


8.根据权利要求6所述的方法,其特征在于,利用定长码编码方式,对所述至少一个三维数据点的属性进行二值化编码,包括:
确定三维数据点集数据采集设备工作时的硬件处理能力指示的定长码的比特深度;
按照所述定长码的比特深度,将所述至少一个三维数据点的属性进行二值化编码。


9.根据权利要求6所述的方法,其特征在于,所述方法还包括:
在利用定长码编码方式对所述至少一个三维数据点的属性进行二值化编码的情况下,将所述定长码的比特深度写入码流中;或者,
在利用截断莱斯编码方式对所述至少一个三维数据点的属性进行二值化编码的情况下,将截断莱斯的门限值和/或用于移位的莱斯参数写入码流中;或者,
在利用K阶指数哥伦布编码方式对所述至少一个三维数据点的属性进行二值化编码的情况下,将K的取值写入码流中。


10.根据权利要求1至9中任一项所述的方法,其特征在于,所述对三维数据点集中的至少一个三维数据点的位置坐标进行位置坐标编码,包括:
对所述至少一个三维数据点的位置坐标进行八叉树编码。


11.根据权利要求10所述的方法,其特征在于,所述对所述至少一个三维数据点的位置坐标进行八叉树编码,包括:
初始化八叉树的最大立方块;
基于所述最大立方块,递归进行八叉树划分,其中所述八叉树划分包括:利用当前层的当前块的中心点的位置坐标进行八个子块的划分,判断每个子块内是否存在三维数据点,对存在三维数据点的子块进一步进行子块的划分,直至子块的边长小于等于预设值;
根据每一层的各个块中包括三维数据点的情况,生成所述第一二进制码流。


12.根据权利要求11所述的方法,其特征在于,所述最大立方块的边长为2的整数次幂,且是2的整数次幂中最接近且大于等于第一值的值,其中,所述第一值为三个最大值中的最大值,所述三个最大值分别为所述三维数据点集中所有三维数据点的位置坐标分别在三个轴上的最大值。


13.根据权利要求1至12中任一项所述的方法,其特征在于,在所述对三维数据点集中的至少一个三维数据点的位置坐标进行位置坐标编码之前,所述方法还包括:
对所述至少一个三维数据点的位置坐标进行量化。


14.根据权利要求13所述的方法,其特征在于,所述方法还包括:
对量化后的位置坐标去除重复位置坐标。


15.根据权利要求14所述的方法,其特征在于,所述对量化后的位置坐标去除重复位置坐标,包括:
在根据编码条件确定需要去除重复位置坐标时,对量化后的位置坐标去除重复位置坐标。


16.根据权利要求1至15中任一项所述的方法,其特征在于,在所述对所述至少一个三维数据点的属性进行二值化编码之前,所述方法还包括:
如果在对所述至少一个三维数据点的位置坐标进行量化和去除重复位置坐标之后,其中的第一位置坐标对应至少两个属性,则将所述至少两个属性进行合并。


17.根据权利要求1至15中任一项所述的方法,其特征在于,所述方法还包括:
如果在对所述至少一个三维数据点的位置坐标进行量化后未去除重复坐标的情况下,在码流中写入各个位置坐标对应的属性的数量。


18.一种对三维数据点集进行解码的方法,其特征在于,包括:
对三维数据点集的待解码码流进行熵解码,以得到第一二进制码流和第二二进制码流;
对所述第一二进制码流,进行位置坐标解码,以得到对三维数据点集中的至少一个三维数据点的位置坐标;
按照所述至少一个三维数据点的解码后的位置坐标顺序,对所述第二二进制码流进行二值化解码,以得到所述至少一个三维数据点的属性。


19.根据权利要求18所述的方法,其特征在于,所述方法还包括:
基于所述至少一个三维数据点的位置坐标和所述至少一个三维数据点的属性,获取目标三维数据点集包,所述三维数据点集包含在所述目标三维数据点集包中。


20.根据权利要求19所述的方法,其特征在于,所述方法包括:
对获取的多个所述目标三维数据点集包进行合并,以得到重建的三维数据点集数据。


21.根据权利要求18至20中任一项所述的方法,其特征在于,所述属性具有一个分量。


22.根据权利要求18至21中任一项所述的方法,其特征在于,所述属性用于表征所述三维数据点集中对应的位置坐标处的反射率。


23.根据权利要求18至22中任一项所述的方法,其特征在于,所述对所述第二二进制码流进行二值化解码,包括:
利用定长码解码方式、截断莱斯解码方式、或K阶指数哥伦布解码方式,对所述第二二进制码流进行二值化解码。


24.根据权利要求23所述的方法,其特征在于,利用定长码解码方式,对所述第二二进制码流进行二值化解码,包括:
确定三维数据点集数据采集设备工作时的硬件处理能力指示的定长码的比特深度;
按照所述定长码的比特深度,对所述第二二进制码流进行二值化解码。


25.根据权利要求23所述的方法,其特征在于,所述方法还包括:
在利用定长码解码方式对所述第二二进制码流进行二值化解码的情况下,从所述待解码码流中获取所述定长码的比特深度;或者,
在利用截断莱斯解码方式对所述第二二进制码流进行二值化解码的情况下,从所述待解码码流中获取截断莱斯的门限值和/或用于移位的莱斯参数;或者,
在利用K阶指数哥伦布解码方式对对所述第二二进制码流进行二值化解码的情况下,从所述待解码码流中获取K的取值。


26.根据权利要求18至25中任一项所述的方法,其特征在于,所述对所述第一二进制码流,进行位置坐标解码,包括:
对所述第一二进制码流,进行八叉树解码。


27.根据权利要求26所述的方法,其特征在于,所述进行八叉树解码,包括:
初始化八叉树的最大立方块;
根据所述最大立方块的大小,逐字节对所述第一二进制码流进行解码,所述解码包括:根据当前字节中各个比特的取值,以及当前块的大小,确定是否对当前块进行进一步的划分,其中如果比特的取值为1,则对当前块进一步划分为子块,直到子块的边长小于等于预设值;根据边长小于或等于预设值且对应的比特取值为1的子块,确定所述三维数据点的位置坐标。


28.根据权利要求18至27中任一项所述的方法,其特征在于,所述对所述第二二进制码流进行二值化解码,包括:
从码流中获取单个位置坐标对应的所述属性的数量;
按照所述数量,对所述单个位置坐标对应的属性进行二值化解码。


29.根据权利要求18至28中任一项所述的方法,其特征在于,在所述对所述第一二进制码流,进行位置坐标解码之后,所述方法还包括:
对解码后的位置坐标进行逆量化。


30.一种对三维数据点集进行编码的设备,其特征在于,包括:
位置坐标编码单元,用于对...

【专利技术属性】
技术研发人员:李璞郑萧桢
申请(专利权)人:深圳市大疆创新科技有限公司
类型:发明
国别省市:广东;44

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

1