欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 基于DCT变换的点云属性编码及解码方法、装置及系统独创技术23296字

基于DCT变换的点云属性编码及解码方法、装置及系统

2021-01-31 18:40:51

基于DCT变换的点云属性编码及解码方法、装置及系统

  技术领域

  本发明属于三维重建技术领域,具体涉及一种基于DCT变换的点云属性编码及解码方法、装置及系统。

  背景技术

  随着计算机技术的发展,三维重建技术已经广泛应用到了诸如文物保护、游戏开发、建筑设计、临床医学等各个领域。三维重建技术是一种通过深度数据获取、预处理、点云配准与融合、生成表面等过程,把真实场景刻画成符合计算机逻辑表达的数学模型。其中,点云压缩编码和解码技术是三维重建的关键技术之一。

  离散余弦变换(Discrete Cosine Transform,DCT)是一种实数域的变换,与传统的去相关性能最优的Karhunen-Loève(K-L)变换相比,DCT的变换形式与输入信号无关且可以快速实现算法。因此,越来越多的图像及视频编码标准采用DCT技术,如JPEG、H.261、MPEG—1、H.262/MPEG—2、H.263、MPEG—4、H.264/AVC、H.265/HEVC、H.266等。近年来,随着三维点云压缩技术的兴起和发展,该技术也被用于点云压缩中的属性编码。

  传统的DCT变换主要是针对规则的图像块进行,针对三维点云属性编码,研究人员提出了一种形状自适应离散余弦变换(Shape-Adaptive DCT,SA-DCT),该方法首先进行颜色空间RGB到YUV的转换,在几何信息改变的情况下,进行点云属性信息的重着色,然后进行属性信息预测,接着对预测残差进行SA-DCT变换。由于点云在空间分布的稀疏性,导致整个点云序列中存在许多空块,即三维点云的每个维度在进行DCT变换时都存在不连续的现象,从而降低DCT变换的性能。为了解决这种问题,SA-DCT通过对三个维度上的点进行平移来获得点的连续性。SA-DCT变换通过多次平移和一维DCT变换将空间域能量的分散分布转换到变换域能量的集中分布。然而,这种方式运算复杂度较高,变换效率较低;并且不能保证通过平移而相邻的点之间具有较高的相关性,影响编码性能。

  发明内容

  为了解决现有技术中存在的上述问题,本发明提供了一种基于DCT变换的点云属性编码及解码方法、装置及系统。本发明要解决的技术问题通过以下技术方案实现:

  一种基于DCT变换的点云属性编码方法,包括:

  获取待编码点云数据;

  对所述待编码点云数据进行重排序,并选取若干点作为待变换点;

  对所述待变换点的属性信息进行DCT变换,得到变换系数;

  对所述变换系数进行量化和编码,以实现点云属性的编码。

  在本发明的一个实施例中,对所述待编码点云数据进行重排序,并选取若干点作为待变换点,包括:

  若判断第一预设条件成立,则对所述待编码点云数据按照莫顿码排列,得到新的点云序列,并在所述新的点云序列中依次选取K个点作为待变换点;其中,K表示DCT变换阶次;

  否则,对所述待编码点云数据进行LOD划分,以得到新的点云序列。

  在本发明的一个实施例中,对所述待编码点云数据进行LOD划分,以得到新的点云序列,包括:

  对所述待编码点云数据基于几何空间关系进行LOD划分,并对每个LOD层中的点按照莫顿码进行排序,得到新的点云序列;

  按照由高层到低层的顺序依次从所述新的点云序列中选取K个点作为待变换点。

  在本发明的一个实施例中,对所述待编码点云数据进行LOD划分,以得到新的点云序列,还包括:

  对所述待编码点云数据进行LOD划分,并对每个LOD层按莫顿码遍历所有待编码点,对所述待编码点进行最近邻搜索,得到所述待编码点的邻居点;

  将所述待编码点及其邻居点中未编码的点作为待变换点。

  在本发明的一个实施例中,对所述待变换点的属性信息进行DCT变换,得到变换系数,包括:

  若判断第二预设条件成立,则对所述待变换点进行属性预测,得到属性残差,并对所述属性残差进行DCT变换,得到变换系数;

  否则,对所述待变换点的原始属性进行DCT变换,得到变换系数。

  在本发明的一个实施例中,对所述待变换点进行属性预测,得到属性残差,包括:

  在已编码的结点中搜索所述待变换点的邻居节点作为预测邻居节点;

  利用所述预测邻居节点的属性值对所述待变换点进行属性预测,得到所述待变换点的预测属性值;

  对所述待变换点的预测属性值和真实属性值进行差分,得到属性残差。

  本发明的另一个实施例还提供了一种基于DCT变换的点云属性编码装置,包括:

  信息获取模块,用于获取待编码点云数据;

  编码重排序模块,用于对所述待编码点云数据进行重排序,并选取若干点作为待变换点;

  DCT变换模块,用于对所述待变换点的属性信息进行DCT变换,得到变换系数;

  量化编码模块,用于对所述变换系数进行量化和编码,以实现点云属性的编码。

  本发明的又一个实施例还提供了一种基于DCT变换的点云属性解码方法,包括:

  获取待解码信息并进行解码和反量化处理,得到变换系数;

  对所述变换系数进行DCT反变换,得到变换结果;其中,所述变换结果为属性残差信息或重建属性信息;

  若判断预设的预测条件成立,则对点云的属性信息进行预测,得到预测属性信息,并将所述预测属性信息和所述属性残差信息相加,得到点云的解码属性信息;否则,将所述重建属性信息作为点云的解码属性信息;

  对所述点云进行重排序,以完成点云属性的解码。

  本发明的再一个实施例还提供了一种基于DCT变换的点云属性解码装置,包括:

  数据处理模块,用于获取待解码信息并进行解码和反量化处理,得到变换系数;

  DCT反变换模块,用于对所述变换系数进行DCT反变换,得到变换结果;其中,所述变换结果为属性残差信息或重建属性信息;

  属性预测模块,用于在判断预设的预测条件成立时,对点云的属性信息进行预测,得到预测属性信息,并将所述预测属性信息和所述属性残差信息相加,得到点云的解码属性信息;否则,将所述重建属性信息作为点云的解码属性信息;

  解码重排序模块,用于对所述点云进行重排序,以完成点云属性的解码。

  本发明的再一个实施例还提供了一种点云重建系统,包括编码端和解码端,其中,所述编码端包括上述实施例所述的基于DCT变换的点云属性编码装置,所述解码端包括上述实施例所述的基于DCT变换的点云属性解码装置。

  与现有技术相比,本发明的有益效果:

  1、本发明通过对空间三维点云数据进行重排序,将属性值在空间域的分散分布转换为变换域的相对集中分布,避免了对三维点云的平移操作,达到了去除空间冗余的目的,实现了点云属性信息编码的一维DCT变换,降低了编解码时间复杂度;此外,对空间三维点云数据进行重排序还保证了相邻待变换点之间具有较高的相关性,提升了编码性能;

  2、本发明通过采用点云的属性预测技术,进一步优化了变换系数,保证了变换效率。

  附图说明

  图1为本发明实施例提供的一种基于DCT变换的点云属性编码方法的流程示意图;

  图2为本发明实施例提供的另一种基于DCT变换的点云属性编码方法的流程示意图;

  图3为本发明实施例提供的一种基于DCT变换的点云属性编码装置的结构示意图;

  图4为本发明实施例提供的一种基于DCT变换的点云属性解码方法的流程示意图;

  图5为本发明实施例提供的一种基于DCT变换的点云属性解码装置的结构示意图;

  图6为本发明实施例提供的一种点云重建系统结构示意图。

  具体实施方式

  下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。

  实施例一

  请参见图1,图1为本发明实施例提供的一种基于DCT变换的点云属性编码方法的流程示意图,包括:

  步骤1:获取待编码点云数据。

  常规的点云编码技术主要包括几何编码和属性编码,对于现有的PCEM平台和G-PCC平台,点云的几何信息和属性信息都是分开进行编解码的,且通常都是在几何编码完成后,对几何信息进行重建,然后基于重建几何信息对属性信息进行编码的。而现阶段,属性编码主要是针对颜色信息进行的。

  在本实施例中,首先需要根据实际需求进行颜色空间的转换,若需要进行属性有损编码,则将点云数据的颜色信息从RGB颜色空间转换到YUV颜色空间,若要进行无损编码,则无需转换颜色空间。然后,利用重建的几何信息对点云重新着色,使得未编码的属性信息与重建的几何信息对应起来,得到待编码的点云数据。

  具体地,本实施例设置待编码的点云数据中包含N个点,每个点表示为pi,i=1,2…N。

  步骤2:对待编码点云数据进行重排序,并选取若干点作为待变换点。

  由于点云序列在空间分布的稀疏性,导致整个点云序列中存在许多空块,邻近节点之间的相关性较小。而对于DCT变换来说,属性相关性越高,变换系数能量越集中,压缩效果越好。所以不同的扫描方式将导致进行DCT变换的点的不同,这将直接影响属性信息编码的性能。因此,在进行DCT变换之前,要先对点云数据进行重排序,再从中选取待变换点。

  本实施例将待编码的点云数据重排序之后的每个点表示为i=1,2…N。

  进一步地,本实施例主要提供了三种重排序方式,请参见图2,图2为本发明实施例提供的另一种基于DCT变换的点云属性编码方法的流程示意图。具体如下:

  首先,在进行重排序之前,需要根据第一预设条件判断是否需要对点云数据进行LOD划分。LOD即Levels of Detail的简称,意为多细节层次,其主要思想是将空间中的点云按照几何空间关系划分为不同的层次,通过利用高层LOD中的点来预测低层LOD中的点,进而提升点云的压缩效果。

  在本实施例中,若判断不需要划分,则对待编码点云数据按照莫顿码排列,得到新的点云序列,并在新的点云序列中依次选取K个点作为待变换点;其中,K表示DCT变换阶次,其可以根据待编码点云的特性进行控制。

  进一步地,本实施例通过一个细节层级控制开启参数“enable Level of Detail”判断是否进行LOD划分,设置enable Level of Detail=0为第一预设条件,若满足enableLevel of Detail=0,也即第一预设条件成立,说明不需要对点云数据进行LOD划分,则按照下述方法选取待变换点。首先计算原始点云中每个点对应的莫顿码,将点云按照莫顿码由小到大进行升序排列,然后再根据莫顿码重排序之后的点云序列,依次取K个点作为待变换点。

  可选的,本实施例还可以将点云按照莫顿码由大到小进行降序排列,也可以采用其他规则进行排序,在此不做具体限定。

  若enable Level of Detail=0不成立,则需要对待编码点云数据进行LOD划分,以得到新的点云序列。

  本实施例对LOD的具体划分规则不做限定,可以随机扫描点云进行划分,也可以按照一定规则进行划分,具体可根据实际需求随意选择。

  进一步地,本实施例还可以根据点云的稠密程度,在进行LOD划分之后,采用不同的方法进行重排序,以得到待变换点。

  对于稀疏点云,可按照LOD划分后的莫顿码顺序排序,具体如下:

  对待编码点云数据基于几何空间关系进行LOD划分,对每个LOD层中的点按照莫顿码进行排序,得到新的点云序列;然后按照由高层到低层的顺序依次从新的点云序列中选取K个点作为待变换点。

  对于稠密点云,可按照LOD划分后查找邻居进行排序,具体如下:

  对待编码点云数据进行LOD划分,并对每个LOD层按莫顿码遍历所有待编码点,然后对待编码点进行最近邻搜索,得到待编码点的邻居点;其中,可以将与当前待编码点共面的点作为该点的邻居点,还可以将距离当前点几何位置最近的点作为该点的邻居点。最后将待编码点及其邻居点中未编码的点作为待变换点。

  具体来说,就是将待编码点云数据划分成若干LOD层,然后在每一层中遍历所有的未编码的点,并找出该点的邻居点;若找出的邻居点已经作为其他点的邻居点被编码过,则剔除该邻居点,将当前未编码的点及其邻居点中未进行编码的点作为待变换的点。

  在本实施例中,每个点最多有6个邻居点,最少有0个邻居点。

  本实施例提供的对待编码点云数据进行重排序的方法包括但不限于以上三种方法,其通过对空间三维点云数据进行重排序,将属性值在空间域的分散分布转换为变换域的相对集中分布,避免了对三维点云的平移操作,达到了去除空间冗余的目的,实现了点云属性信息编码的一维DCT变换,降低了编解码时间复杂度;此外,对空间三维点云数据进行重排序还保证了相邻待变换点之间具有较高的相关性,提升了编码性能。

  步骤3:对待变换点的属性信息进行DCT变换,得到变换系数。

  在本实施例中,在对待变换点的属性信息进行变换之前,需要根据第二预设条件判断是否进行属性预测,若需要预测,则对待变换点进行属性预测,得到属性残差,然后对属性残差进行DCT变换,得到变换系数;否则,直接对待变换点的原始属性进行DCT变换,得到变换系数。

  具体地,本实施例通过一个控制预测开关preFlag的值决定是否进行预测,设置predFlag=1作为第二预设条件,若满足predFlag=1,也即第二预设条件成立,则需要进行属性预测以得到属性残差,并对属性残差进行预测得到变换系数,具体如下:

  首先,在已编码的结点中搜索待变换点的邻居节点作为预测邻居节点。

  具体地,本实施例可以在已编码的结点中搜索与待变换点共面或共线的邻居节点作为预测邻居节点;若搜索不到共面或共线的邻居节点,则可在已编码的节点中搜索与当前节点几何距离最近的点作为预测邻居节点。

  优选的,预测邻居节点的数目为3个。

  然后,利用预测邻居节点的属性值对待变换点进行属性预测,得到待变换点的预测属性值。

  可选的,本实施例采用插值预测法利用预测邻居节点的属性值对待变换点进行属性预测。此外,还可根据实际需求选择其他预测方法进行属性预测。

  最后,对待变换点的预测属性值和真实属性值进行差分,得到属性残差,并对属性残差进行DCT变换,得到变换系数,该变换系数包括低频系数和高频系数。

  若predFlag=1不成立,则不需要进行属性预测,直接将待变换点的原始属性也即真实属性进行DCT变换,得到变换系数。

  下面对DCT变换过程进行简单介绍。

  设待变换点的真实属性或属性残差为cj,j=0,2…K-1,其中K为DCT变换的阶数,也叫阶次,其可根据待编码点云的特性进行控制。设A为K阶整型DCT变换矩阵,DC表示进行DCT变换之后得到的低频系数,ACm,m=0,2…K-2,表示进行DCT变换之后得到的高频系数,则由下列变换式可以得到变换系数为:

  

  本实施例通过采用点云的属性预测技术,进一步优化了变换系数,保证了变换效率。

  步骤4:对变换系数进行量化和编码,以实现点云属性的编码。

  具体地,对步骤3得到的变换系数进行量化和熵编码,生成二进制码流,以完成点云属性的编码过程。

  本发明将DCT变换应用在点云的属性信息编码上,通过DCT变换使能量从空间域的分散分布转为在变换域的集中分布,从而达到去除空间冗余的目的,同时结合量化和熵编码等其他技术,可以获得对属性信息的有效压缩,提高了点云属性信息的编码效率。

  实施例二

  在上述实施例一的基础上,本实施例还提供了一种基于DCT变换的点云属性编码装置,请参见图3,图3为本发明实施例提供的一种基于DCT变换的点云属性编码装置的结构示意图,其包括:

  信息获取模块11,用于获取待编码点云数据。

  编码重排序模块12,用于对所述待编码点云数据进行重排序,并选取若干点作为待变换点。

  DCT变换模块13,用于对所述待变换点的属性信息进行DCT变换,得到变换系数。

  量化编码模块14,用于对所述变换系数进行量化和编码,以实现点云属性的编码。

  本实施例提供的基于DCT变换的点云属性编码装置可实现上述实施例一所述的基于DCT变换的点云属性编码方法,具体实现过程在此不再赘述。

  实施例三

  本实施例还提供的了一种基于DCT变换的点云属性解码方法,请参见图4,图4为本发明实施例提供的一种基于DCT变换的点云属性解码方法流程示意图,包括:

  步骤一:获取待解码信息并进行解码和反量化处理,得到变换系数。

  具体地,该变换系数,即为点云属性编码得到的变换系数。

  步骤二:对变换系数进行DCT反变换,得到变换结果;其中,变换结果为属性残差信息或重建属性信息。

  由于在编码阶段,变换系数由属性残差或者原始属性经过DCT变换后得到;相应的,在解码阶段,通过对变换系数进行DCT反变换,得到的结果可以是属性残差,也可以是重建属性信息。

  步骤三:若判断预设的预测条件成立,则对点云的属性信息进行预测,得到预测属性信息,并将预测属性信息和属性残差信息相加,得到点云的解码属性信息;否则,将重建属性信息作为点云的解码属性信息。

  具体地,本实施例中预设的预测条件与编码阶段的第二预设条件相似,若判断需要进行预测,则说明步骤二得到的结果是属性残差信息,采用与编码阶段相应的预测方法对点云属性信息进行预测,得到预测属性信息;然后将该预测属性信息与步骤二得到的属性残差信息相加,得到点云的解码属性信息。

  若不需要预测,则直接将步骤二得到的重建属性信息作为点云的解码属性信息。

  步骤四:对点云进行重排序,以完成点云属性的解码。

  具体地,将步骤三已完成属性解码的点云进行重排序,排序方法与编码阶段使用的排序方法相对应,在此不再赘述。

  至此,完成点云属性的解码。

  实施例四

  在上述实施例三的基础上,本实施例还提供了一种基于DCT变换的点云属性解码装置,请参见图5,图5为本发明实施例提供的一种基于DCT变换的点云属性解码装置的结构示意图,其包括:

  数据处理模块21,用于获取待解码信息并进行解码和反量化处理,得到变换系数。

  DCT反变换模块22,用于对变换系数进行DCT反变换,得到变换结果;其中,变换结果为属性残差信息或重建属性信息。

  属性预测模块23,用于在判断预设的预测条件成立时,则对点云的属性信息进行预测,得到预测属性信息,并将所述预测属性信息和所述属性残差信息相加,得到点云的解码属性信息;否则,将所述重建属性信息作为点云的解码属性信息。

  解码重排序模块24,用于对所述点云进行重排序,以完成点云属性的解码。

  本实施例提供的基于DCT变换的点云属性解码装置可实现上述实施例三所述的基于DCT变换的点云属性解码方法,具体实现过程在此不再赘述。

  实施例五

  在上述实施例一至实施例四的基础上,本实施例提供了一种点云重建系统,请参见图6,图6为本发明实施例提供的一种点云重建系统结构示意图,其包括编码端和解码端,其中,

  编码端包括上述实施例二所述的基于DCT变换的点云属性编码装置,其可以实现上述实施例一所述的基于DCT变换的点云属性编码方法。

  解码端包括上述实施例四所述的基于DCT变换的点云属性解码装置,其可以实现上述实施例三所述的基于DCT变换的点云属性解码方法。

  实施例六

  为了进一步说明上述实施例一的有益效果,本实施例将上述实施例一提供的基于DCT变换的点云属性编码方法在PCEM平台上进行测试验证。将不同点云序列的颜色属性信息按照实施例一的DCT方法变换到YUV空间,其中,Y表示明亮度,即下表中的Luma,U和V表示色度,即下表中的Chroma Cb和Chroma Cr,采用参数BD-rate来衡量性能,并与PCEMV0.5进行比较,其结果如下表所示:

  从上表可以看出,与PCEMV0.5相比,所有序列的BD-rate值均为负值,而BD-rate为负时表示性能变好,在此基础上BD-rate的绝对值越大,则性能的增益越大。由此说明本发明提供的重建点云的BD-rate有较为明显的提升,说明本发明提供的基于DCT变换的点云属性编码方法可以改善编码性能。

  以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

《基于DCT变换的点云属性编码及解码方法、装置及系统.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)