CN112449754B - 一种数据编码、数据解码方法、设备及存储介质 - Google Patents

一种数据编码、数据解码方法、设备及存储介质 Download PDF

Info

Publication number
CN112449754B
CN112449754B CN201980039810.9A CN201980039810A CN112449754B CN 112449754 B CN112449754 B CN 112449754B CN 201980039810 A CN201980039810 A CN 201980039810A CN 112449754 B CN112449754 B CN 112449754B
Authority
CN
China
Prior art keywords
point cloud
attribute value
point
value
code stream
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.)
Active
Application number
CN201980039810.9A
Other languages
English (en)
Other versions
CN112449754A (zh
Inventor
李璞
郑萧桢
陈嘉枫
王文义
虞露
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
SZ DJI Technology Co Ltd
Original Assignee
Zhejiang University ZJU
SZ DJI Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU, SZ DJI Technology Co Ltd filed Critical Zhejiang University ZJU
Publication of CN112449754A publication Critical patent/CN112449754A/zh
Application granted granted Critical
Publication of CN112449754B publication Critical patent/CN112449754B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

一种数据编码、数据解码方法、设备及存储介质,其中,该方法包括:确定点云数据的语法元素的取值;当根据语法元素的取值确定搜索范围不为0时,对点云的属性值进行预测处理,得到点云的属性值的残差;对点云的属性值的残差进行编码得到第一码流数据,其中,所述第一码流数据中包括标识信息,所述标识信息用于指示至少一个点云点的属性值的残差为0(S902);当根据语法元素的取值确定搜索范围为0时,跳过“对点云的属性值进行预测处理”的步骤,对点云的属性值进行编码得到第二码流数据,其中,所述第二码流数据中不包括第一标识(S903)。通过这种方式可以降低编码、解码的算法复杂度,提高编码、解码的效率。

Description

一种数据编码、数据解码方法、设备及存储介质
技术领域
本发明涉及数据编解码领域,尤其涉及一种数据编码、数据解码方法、设备及存储介质。
背景技术
目前,通过激光雷达、激光扫描仪等设备可以采集得到点云数据。点云数据是三维物体或场景的一种表现形式,是由空间中一组无规则分布、表达三维物体或场景空间结构和表面属性的离散点集所构成。为了准确反映空间中的信息,所需离散点的数目是巨大的。为了减少点云数据存储和传输时所占用的带宽,可以对点云数据进行编码压缩处理。一个点云数据通常由描述坐标信息的三维坐标(x,y,z)以及该位置的属性值信息如颜色(R,G,B)或者反射率等属性构成。在对点云数据进行编码的过程中,包括点云数据的位置编码和属性编码,其中,对所述点云数据的属性编码的过程中还存在可以改进的地方。
发明内容
本发明实施例提供了一种数据编码、数据解码方法、设备及存储介质,降低了数据编码、解码过程的算法复杂度,提高了数据编码、解码的效率。
第一方面,本发明实施例提供了一种数据编码方法,包括:
确定点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测编码时的搜索范围;
当根据所述语法元素的取值确定所述搜索范围不为0时,对所述点云的属性值进行预测处理,得到所述点云的属性值的残差,对所述点云的属性值的残差进行编码得到第一码流数据,其中,所述第一码流数据中包括标识信息,所述标识信息用于指示至少一个点云点的属性值的残差为0;
当根据所述语法元素的取值确定所述搜索范围为0时,跳过所述“对所述点云的属性值进行预测处理”的步骤,对所述点云的属性值进行编码得到第二码流数据,其中,所述第二码流数据中不包括第一标识。
第二方面,本发明实施例提供了另一种数据编码方法,包括:
确定点云数据的语法元素的取值,所述点云数据包括所述点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测编码时的搜索范围;
当根据所述语法元素的取值确定所述搜索范围为0时,对所述点云的属性值进行编码得到码流数据,其中,所述码流数据中不包括用于指示至少一个点云点的属性值为0的标识。
第三方面,本发明实施例提供了一种数据解码方法,包括:
从码流数据中解码点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测解码时的搜索范围;
当根据所述语法元素的取值确定所述搜索范围不为0时,对所述码流数据解码得到所述点云的属性值的残差,对所述点云的属性值的残差进行补偿处理,其中,所述码流数据中包括标识信息,所述标识信息用于指示至少一个点云点的属性值的残差为0;
当根据所述语法元素的取值确定所述搜索范围为0时,跳过“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤,对所述码流数据解码得到所述点云的属性值,其中,所述码流数据中不包括所述标识信息。
第四方面,本发明实施例提供了另一种数据解码方法,包括:
从码流数据中解码点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测解码时的搜索范围;
当根据所述语法元素的取值确定所述搜索范围为0时,对所述码流数据解码得到所述点云的属性值,其中,所述码流数据中不包括标识信息。
第五方面,本发明实施例提供了一种数据编码设备,其特征在于,包括:存储器和处理器;
所述存储器,用于存储程序;
所述处理器,用于调用所述程序,当所述程序被执行时,用于执行以下操作:
确定点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测编码时的搜索范围;
当根据所述语法元素的取值确定所述搜索范围不为0时,对所述点云的属性值进行预测处理,得到所述点云的属性值的残差;对所述点云的属性值的残差进行编码得到第一码流数据,其中,所述第一码流数据中包括标识信息,所述标识信息用于指示至少一个点云点的属性值的残差为0;
当根据所述语法元素的取值确定所述搜索范围为0时,跳过所述“对所述点云的属性值进行预测处理”的步骤,对所述点云的属性值进行编码得到第二码流数据,其中,所述第二码流数据中不包括第一标识。
第六方面,本发明实施例提供了另一种数据编码设备,其特征在于,包括:存储器和处理器;
所述存储器,用于存储程序;
所述处理器,用于调用所述程序,当所述程序被执行时,用于执行以下操作:
确定点云数据的语法元素的取值,所述点云数据包括所述点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测编码时的搜索范围;
当根据所述语法元素的取值确定所述搜索范围为0时,对所述点云的属性值进行编码得到码流数据,其中,所述码流数据中不包括用于指示至少一个点云点的属性值为0的标识。
第七方面,本发明实施例提供了一种数据解码设备,其特征在于,包括:存储器和处理器;
所述存储器,用于存储程序;
所述处理器,用于调用所述程序,当所述程序被执行时,用于执行以下操作:
从码流数据中解码点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测解码时的搜索范围;
当根据所述语法元素的取值确定所述搜索范围不为0时,对所述码流数据解码得到所述点云的属性值的残差,对所述点云的属性值的残差进行补偿处理,其中,所述码流数据中包括标识信息,所述标识信息用于指示至少一个点云点的属性值的残差为0;
当根据所述语法元素的取值确定所述搜索范围为0时,跳过“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤,对所述码流数据解码得到所述点云的属性值,其中,所述码流数据中不包括所述标识信息。
第八方面,本发明实施例提供了另一种数据解码设备,其特征在于,包括:存储器和处理器;
所述存储器,用于存储程序;
所述处理器,用于调用所述程序,当所述程序被执行时,用于执行以下操作:
从码流数据中解码点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测解码时的搜索范围;
当根据所述语法元素的取值确定所述搜索范围为0时,对所述码流数据解码得到所述点云的属性值,其中,所述码流数据中不包括标识信息。
第九方面,本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现如上述第一方面或第二方面所述的数据编码方法,或上述第三方面或第四方面所述的数据解码方法。
本发明实施例,通过在语法元素的取值确定的搜索范围为0时,跳过“对点云的属性值进行预测处理”的步骤,对点云的属性值进行编码,可以大幅度地简化对属性编码的算法复杂度,减少了时间开销,提高了属性编码的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种平面二维坐标中莫顿码递增的顺序示意图;
图2是本发明实施例提供的一种二维坐标系中位置坐标与莫顿码对应的示意图;
图3是本发明实施例提供的一种三维坐标系中莫顿码的示意图;
图4是本发明实施例提供的一种数据编码的流程示意图;
图5是本发明实施例提供的一种数据解码方法的流程示意图;
图6是本发明实施例提供的一种现有点云数据的解码流程示意图;
图7是本发明实施例提供的一种现有点云数据的编码流程示意图;
图8是本发明实施例提供的一种层次编码方案的生成示意图;
图9是本发明实施例提供的一种数据编码方法的流程示意图;
图10是本发明实施例提供的另一种数据编码方法的流程示意图;
图11是本发明实施例提供的一种数据解码方法的流程示意图;
图12是本发明实施例提供的另一种数据解码方法的流程示意图;
图13是本发明实施例提供的一种数据编码设备的结构示意图;
图14是本发明实施例提供的另一种数据编码设备的结构示意图;
图15是本发明实施例提供的一种数据解码设备的结构示意图;
图16是本发明实施例提供的另一种数据解码设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合附图,对本发明的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
本发明是针对动态图像专家组(Moving Picture Experts Group,MEPG)中G-PCC点云编码标准在对属性编码时存在较高复杂度的问题,提出的一种对点云数据的属性值进行编码时的编码方法以及对应的解码方法。在介绍本发明之前,首先对点云数据进行如下相关介绍。
在一些实施例中,对待编码的点云数据的属性值,首先进行量化操作。具体可以图4为例进行举例说明,图4是本发明实施例提供的一种数据编码的流程示意图。如图4所示,通过输入点云数据41对输入的点云数据的位置坐标先进行量化42,量化42后的位置坐标可以选择是否去除重复坐标421,之后再进行位置编码43并送入算术编码引擎中进行算术编码44。对于输入的点云数据的属性值,如果选择根据位置坐标选择去除重复坐标421,则进行属性转换45,将合并的位置坐标对应的属性值进行合并,若未进行去除重复坐标421,则不进行属性转换。接着根据位置编码43后的位置坐标的顺序对应的属性值依次进行属性编码46。
在一个实施例中,基于莫顿码的预测编码方案是所述点云数据的属性编码的一种方法。在一个示例中,在基于莫顿码的预测编码方案中,当语法元素lifting_search_range不等于0时,可以根据点云数据的位置坐标计算每个位置坐标对应的莫顿码,在得到位置坐标对应的莫顿码之后,可以根据莫顿码的大小关系对所述点云中的点云点进行排序,并对排序后的点云的属性值进行预测编码,得到点云中各点云点的属性值的残差。排序后的点云中,排位相靠近的点云点在三维空间中的位置也比较靠近。由于在三维空间中位置相近的点云点的属性值相似的可能性较大,因此对排序后的点云进行预测处理,可以降低点云的属性值的残差所耗费的比特。因此,点云的属性值的残差中会出现多个0。在一个具体实施例中,在对残差进行编码时,对于当前点云点,首先编码标识1,该标识1用于指示点云的属性值的残差中当前是否连续出现多个0,以及连续出现0的次数。例如,当连续出现残差为0的点云的数目大于等于1时,将标识1取值为连续出现0的数目,当未出现0时,将标识1取值为0。
当标识1用于指示当前未出现为0的残差的点云点时,编码标识2,该标识2用于指示当前点云点的残差减1之后的值是否为0。例如,若残差减1之后的值为0,则将标识2取值为1。若该当前点云点的残差减1之后的值不为0,则编码该残差的具体数值;或者,若该当前点云点的残差减1之后的值不为0,继续编码标识3,该标识3用于指示该当前点云点的残差减2之后的值是否为0,若不为0则继续编码该残差的具体数值。例如,若该当前点云点的残差减2之后的值为0,则将标识3取值为1,若不为0,则将标识3取值为0,并继续编码该残差的具体数值。可选地,还可以在标识3指示当前点云点的残差不为2时,继续编码标识4,用于指示当前点云点的残差减3之后的值是否为0。
在某些实施例中,所述对排序后的点云的属性值进行预测编码,得到的点云中各点云点的属性值的残差可以是正数,也可以是负数,当所述点云中各点云点的属性值的残差为有符号的数值时,可以根据预设规则将所述点云点属性值的残差进行符号转换,即从有符号数转换为无符号数。例如,假设点云的属性值的残差为-1,则可以根据预设规则-1-(2*(-1))将点云的属性值的残差-1转换为1;又例如,假设点云的属性值的残差为1,则根据预设规则2*1将点云的属性值的残差转换为2。当然在其他实施例中,本发明实施例也可以不对所述点云的属性值的残差进行符号转换,在此不做具体限定。
在某些实施例中,所述对排序后的点云的属性值进行预测编码时,可以根据语法元素lifting_search_range的值在排序后的点云中确定对应的搜索范围,在位于该搜索范围内点云点中确定处当前点云点的参考点云点。根据所述参考点云点的属性值和当前点云点的属性值,确定当前点云点的残差。
具体可以结合图1、图2、图3进行举例说明,其中,图1是本发明实施例提供的一种平面二维坐标中莫顿码递增的顺序示意图,图2是本发明实施例提供的一种二维坐标系中位置坐标与莫顿码对应的示意图,图3是本发明实施例提供的一种三维坐标系中莫顿码的示意图。在基于莫顿码的预测编码方案中,首先会根据位置坐标计算每个位置坐标对应的莫顿码,并对每个位置坐标对应的莫顿码进行排序。在某些实施例中,所述位置坐标与莫顿码的对应关系如图2所示;在某些实施例中,所述莫顿码的排序中递增顺序的二维平面示意图如图1所示,所述莫顿码的排序中递增顺序的三维平面示意图如图3所示。
在一个实施例中,当点云数据的语法元素lifting_search_range等于0时,可以获取点云数据的位置坐标,并根据点云数据的位置坐标计算每个位置坐标对应的莫顿码,在得到位置坐标对应的莫顿码之后,可以根据莫顿码对所述点云数据中的点云点进行排序,并直接对排序后的点云的属性值进行编码。对点云的属性值的编码方式可以和上述实施例中对点云的属性值的残差的编码方式相同。例如,对当前点云点,首先编码标识1,该标识1用于指示从当前点云点开始是否出现为0的属性值,以及连续出现为0的属性值的点云数目。例如,当连续出现属性值为0的点云的数目大于等于1时,将标识1取值为连续出现0的数目,当未出现0时,将标识1取值为0。
当标识1用于指示当前未出现为0的属性值的点云点时,编码标识2,该标识2用于指示当前点云点的属性值减1之后的值是否为0。例如,若属性值减1之后的值为0,则将标识2取值为1。若该当前点云点的属性值减1之后的值不为0,则编码该属性值的具体数值;或者,若该当前点云点的属性值减1之后的值不为0,继续编码标识3,该标识3用于指示该当前点云点的属性值减2之后的值是否为0,若不为0则继续编码该属性值的具体数值。例如,若该当前点云点的属性值减2之后的值为0,则将标识3取值为1,若不为0,则将标识3取值为0,并继续编码该属性值的具体数值。可选地,还可以在标识3指示当前点云点的属性值不为2时,继续编码标识4,用于指示当前点云点的属性值减3之后的值是否为0。
由于在语法元素lifting_search_range等于0时不是对各点云点的属性值的残差进行编码,而是对各点云点的属性值本身进行编码,点云点的属性值本身取值为0的概率较低,编码对点云的属性值时采用上述的标识1、标识2和标识3会造成码流的冗余,浪费码流中的比特位。因此,在一个示例中,当语法元素lifting_search_range等于0时,可以根据点云数据的位置坐标计算每个位置坐标对应的莫顿码,在得到位置坐标对应的莫顿码之后,可以根据莫顿码的大小关系对所述点云中的点云点进行排序,直接对排序后的点云的属性值进行编码,且在编码结果中省去上述标识1、标识2、标识3等等。因为空间位置相近的属性值较为接近,在编码时连续编码相同的值会更有利于提高压缩率,因此通过删除冗余标识信息,保留对所述点云中的点云点的排序,对编码性能有一定提升。
在某些实施例中,在语法元素lifting_search_range等于0时,由于不是对各点云点的属性值的残差进行编码,而是对各点云点的属性值本身进行编码,没有对点云的属性值进行预测处理的操作,因此点云的属性值不会出现负值,可以跳过“对点云的属性值进行符号转换”的步骤,简化lifting_search_range等于0的编码操作。
在一个实施例中,当语法元素lifting_search_range等于0时,可以跳过所述“根据点云数据的位置坐标计算每个位置坐标对应的莫顿码,根据莫顿码的大小关系对所述点云数据中的点云点进行排序,根据排序后的点云点的属性值确定标识信息”的步骤,直接获取点云数据的属性值,对点云数据的属性值进行编码。
当语法元素lifting_search_range等于0时,也可以保留“根据点云数据的位置坐标计算每个位置坐标对应的莫顿码,根据莫顿码的大小关系对所述点云数据中的点云点进行排序,根据排序后的点云点的属性值确定标识信息”的步骤。由于对点云中的点云点的排序需要消耗一些时间,会增加方案实现的复杂度,因此通过删除冗余标识信息以及对点云点的排序,可以减少排序消耗的时间,进一步降低算法复杂度。
可见,通过这种通过在语法元素为0时直接对点云的属性值进行编码的实施方式,可以避免编码了冗余的点云的属性值的残差连续为0的数目,以及点云的属性值的残差减1之后的值是否为零的标识信息,以及点云的属性值的残差减1之后的值是否为1的标识信息,由于不编码这些标识信息,所以点云的属性值残差也不需要进行减2操作,大幅简化了对属性编码的算法复杂度。
在一个实施例中,本发明提供了与上述编码方法对应的一种数据解码方法,具体可以图5为例对本发明实施例提出的数据解码方法进行举例说明,图5是本发明实施例提供的一种数据解码方法的流程示意图。如图5所示,对输入的待解码的码流51先进行算术解码52,解码位置信息相关码流,通过位置解码53,逆量化54,得到重建的位置坐标。相应地,按照位置解码83后的位置坐标的顺序,通过属性解码55解码出点云的属性值。
在一个实施例中,基于莫顿码的预测解码方案是所述点云数据的属性解码的一种方法。在一个示例中,从码流数据中解码点云数据的语法元素lifting_search_range的取值。当解码出所述语法元素lifting_search_range的取值不等于0时,可以先根据点云数据的位置坐标计算每个位置坐标对应的莫顿码,在得到位置坐标对应的莫顿码之后,根据莫顿码的大小关系对所述点云中的点云点进行排序。对码流数据进行解码得到点云中各点云点的属性值的残差则对应于排序后的点云点。
在解码当前点云点的属性值的残差时,首先根据标识1的取值确定当前点云点的属性值的残差是否为0以及连续出现残差为0的点云点的数量。例如,当解码出标识1的取值非0时,根据标识1的具体取值确定,在排序后的点云中从当前点云点开始连续出现残差为0的点云点的数量。
当解码出标识1的取值为0时,确定当前点云点的属性值残差非0,并继续解码出该残差的具体数值;或者,当确定当前点云点的属性值残差非0时,从码流中继续解码出标识2的取值,根据该标识2的取值确定当前点云点的属性值的残差是否为1。例如,当解码出标识2的取值为1时,确定当前点云点的属性值的残差为1。当解码出标识2的取值为0时,确定当前点云点的属性值的残差不为1,则继续解码该当前点云点的属性的残差的具体数值,或者从码流中继续解码出标识3,根据该标识3的取值确定当前点云点的属性的残差是否为2。当解码出标识3的取值为1时,确定当前点云点的属性值的残差为2。当解码出标识3的取值为0时,确定当前点云点的属性值的残差不为2,则继续解码该当前点云点的属性的残差的具体数值。
解码出排序后的点云中各点云点的属性值的残差后,对该残差进行补偿处理,确定所述排序后的点云中各点云点的属性值。
在一个实施例中,当解码出所述语法元素lifting_search_range的取值等于0时,可以先根据点云数据的位置坐标计算每个位置坐标对应的莫顿码,在得到位置坐标对应的莫顿码之后,根据莫顿码的大小关系对所述点云中的点云点进行排序。对码流数据进行解码得到点云中各点云点的属性值则对应于排序后的点云点。因此直接对码流数据进行解码确定排序后的点云中各点云点的属性值,在解码过程中省去了对点云点的属性值的残差进行解码,降低了解码过程的算法复杂度。
在解码当前点云点的属性值时,码流中包含标识1,首先根据标识1的取值确定当前点云点的属性值是否为0以及连续出现属性值为0的点云点的数量。例如,当解码出标识1的取值非0时,根据标识1的具体取值确定,在排序后的点云中从当前点云点开始连续出现属性值为0的点云点的数量。
当解码出标识1的取值为0时,确定当前点云点的属性值非0,并继续解码出该属性值的具体数值;或者,当确定当前点云点的属性值非0时,从码流中继续解码出标识2的取值,根据该标识2的取值确定当前点云点的属性值是否为1。例如,当解码出标识2的取值为1时,确定当前点云点的属性值为1。当解码出标识2的取值为0时,确定当前点云点的属性值不为1,则继续解码该当前点云点的属性的具体数值,或者从码流中继续解码出标识3,根据该标识3的取值确定当前点云点的属性是否为2。当解码出标识3的取值为1时,确定当前点云点的属性值为2。当解码出标识3的取值为0时,确定当前点云点的属性值不为2,则继续解码该当前点云点的属性的具体数值。
在一个实施例中,当码流中所述语法元素lifting_search_range的取值等于0时,码流中不存在上述提到的标识1、标识2和标识3,解码端在根据各点云点的位置坐标对应的莫顿码对点云排序后,直接根据码流解码出排序后的点云中当前点云点的属性值本身。
在一个实施例中,当解码出所述语法元素lifting_search_range的取值等于0时,还可以跳过“根据点云数据的位置坐标计算每个位置坐标对应的莫顿码,在得到位置坐标对应的莫顿码之后,根据莫顿码的大小关系对所述点云中的点云点进行排序”的步骤,直接对码流数据进行解码得到点云中各点云点的属性值。通过这种解码出语法元素lifting_search_range的取值等于0时,直接对码流数据解码得到点云的属性值,可以避免对冗余的点云的属性值进行解码,降低解码过程中的算法复杂度,提高了解码的效率。
在一个实施例中,本发明提出的数据解码方法与现有解码方法相比,算法复杂度更低,具体可以图6为例对现有的点云数据压缩的解码流程进行举例说明,图6是本发明实施例提供的一种现有点云数据的解码流程示意图。如图6所示,获取待解码的码流数据61对其进行算术解码62,通过八叉树编码63对算术解码后的数据进行逆量化64,得到点云数据的位置坐标,并生成层次编码方案65。通过对算术解码62后的数据进行逆量化66,并基于所述层次编码方案对逆量化66得到的二进制码流数据进行逆预测67,得到点云数据的属性值,最后根据点云数据的属性值和位置坐标,得到解码的点云数据68。
所述基于莫顿码的预测编码方案对点云数据进行属性编码的方案与LOD分层方案相比,少了生成LOD分层方案的过程,计算复杂度都有较大幅度的降低,对编码和解码过程都减少了部分时间开销以及计算资源的开销。下面对LOD分层方案进行示意性介绍。
所述LOD分层方案是根据点云编码后重排序的位置坐标生成的层次编码方案。在一个实施例中,所述点云的编码流程可以图7为例进行示意性说明,图7是本发明实施例提供的一种现有点云数据的编码流程示意图。如图7所示,通过输入点云数据71,对输入的点云数据的位置坐标进行量化72,并对位置坐标进行去除重复坐标721处理,对去除重复坐标721后的位置坐标进行八叉树编码73,在某些实施例中,所述八叉树编码73是位置编码中的一种。通过对输入的点云数据的属性值进行属性转换74,并对八叉树编码73后重排序的位置坐标的顺序对应的属性值进行属性转换74,以及根据八叉树编码73后重排序的位置坐标生成层次编码方案75。基于层次编码方案75对属性转换74得到的属性值进行预测编码76,并对预测编码76得到的属性值的残差进行量化77即二值化。将量化77和八叉树编码77得到的二进制码流进行算术编码78,从而得到对点云数据编码后的码流数据79。
在一个实施例,所述根据八叉树编码73后重排序的位置坐标生成层次编码方案75的示意图如图8所示,图8是本发明实施例提供的一种层次编码方案的生成示意图。如图8所示,在实际编码过程中,首先会根据LOD配置的参数来进行LOD分层,这个就是图8中所描述的LOD分层,如图8所示展示了LOD分层这个过程,还有就是后面的层会包含有前面层的点,也就是图中不同的颜色所代表的意思。其中,P0、P2、P4、P5为相同颜色,P1、P3、P6为相同颜色,P7、P8、P9为相同颜色。在实际实现过程中,先选择点云数据中的第一个点,将其放在LOD0层的第一个点,接着开始依次遍历点云点,计算当前点云点和当前层里面已经含有的所有点之间在笛卡尔坐标系下的距离,如果最小的距离大于当前LOD层设置的搜索范围,则当前点云点就会被划入到当前LOD层。
在一个实施例中,在层次编码方案这个过程中,通过对计算得到的距离进行排序,选择出距离最小的若干个参考点云点云点,其中,所述参考点云点云点的数目是由搜索范围确定的。在某些实施例中,一个点云点被划入一个LOD层后,后续就不需要再接着判断他是否还属于下一个LOD层,因为下一层是包含上一层的,所以他一定属于下一个LOD层。并且在LOD0层的前面几个点,由于在LOD内的点数比较少所以选择出的参考点云点云点的数目有可能小于搜索范围。在划分结束LOD层之后,需要利用前面选择的最临近的点来分配预测时的权重。在一些实施例中,对每个点云点,在前面已经得到了按照距离排序的最邻近的在搜索范围内的参考点云点,接下来会按照1个参考点云点云点,2个参考点云点云点一直到搜索范围内的最后一个参考点云点云点来分别求出权重分配方案,其中,所述权重分配方案的种类与在搜索范围内的参考点云点云点的数目相匹配。
在一个实施例中,所述1个参考点云点时是距离最小的1个点云点作为参考点云点,这时他的权重即为1。所述2个参考点云点时就是选择距离最小的2个点云点作为参考点云点,这时会根据这两个参考点云点和待预测点云点之间的距离来分配权重。直到搜索范围内的最后一个参考点云点时,选择n个点云点作为参考点云点,所述n为所述搜索范围内的点云点数目,所述权重分配方法与前面相同。在某些实施例中,距离越远权重越小,并保证权重和为1。
在一个实施例中,在分配完权重后,需要选择参考点云点数,在这里需要注意,对一个预测点可以选择的临近参考点云点的数目是小于或等于搜索范围内点云点的数目的。具体会遍历限定参考点云点最大为1个时,这时预测值(权重乘以对应位置的属性值)与实际属性值的残差经过量化后的值之和,这个和即为参考点云点数目最大为1时的代价。接着会遍历限定参考点云点数目最大为2个时的代价。直至限定参考点云点数目最大为搜索范围中点云点的数目时,最终选择一个代价最小的最大参考点云点数的方案,编码这个方案下量化后的残差值。
由于在LOD生成的过程中,判断一个点云点是否属于当前LOD层需要计算该点云点与当前LOD层内已经含有的所有点云点之间的笛卡尔坐标系下的距离,这个计算过程随着LOD层内含有的点云点数的增多而激增,生成LOD的过程复杂度为O(n2),因此这种复杂度会随着点云数据中点云点数的增多而使系统的编码速度成为系统瓶颈。
下面结合附图对本发明实施例提供的数据编码、数据解码方法进行示意性说明。
具体请参见图9,图9是本发明实施例提供的一种数据编码方法的流程示意图。所述方法可以应用于数据编码设备,其中,所述数据编码设备可以设置在智能终端(如手机、平板电脑等)上。在某些实施例中,本发明实施例还可应用于飞行器(如无人机)上,在其他实施例中,本发明实施例还可以应用于其他可移动平台(如无人船、无人汽车、机器人等)上,本发明实施例不做具体限定。具体地,本发明实施例的所述方法包括如下步骤。
S901:确定点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测编码时的搜索范围。
本发明实施例中,数据编码设备可以确定点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测编码时的搜索范围。例如,该语法元素可以是上文中提到的语法元素lifting_search_range。
在一些实施例中,所述点云数据可以通过一个或多个采集设备获取得到;在某些实施例中,所述采集设备可以包括但不限于拍摄装置、激光雷达、激光扫描仪等设备。
在某些实施例中,所述激光雷达是一种感知传感器,可以获得场景的三维信息。其基本原理为主动对被探测对象发射激光脉冲信号,并获得其反射回来的脉冲信号,根据发射信号和接收信号之间的时间差计算被测对象的距离探测器的深度信息;基于激光雷达的已知发射方向,获得被测对象相对激光雷达的角度信息;结合前述深度信息和角度信息得到海量的探测点(称为点云数据)。
S902:当根据所述语法元素的取值确定所述搜索范围不为0时,对所述点云的属性值进行预测处理,得到所述点云的属性值的残差,对所述点云的属性值的残差进行编码得到第一码流数据,其中,所述第一码流数据中包括标识信息,所述标识信息用于指示至少一个点云点的属性值的残差为0。
本发明实施例中,当根据所述语法元素的取值确定所述搜索范围不为0时,数据编码设备可以对所述点云的属性值进行预测处理,得到所述点云的属性值的残差,对所述点云的属性值的残差进行编码得到第一码流数据,其中,所述第一码流数据中包括标识信息,所述标识信息用于指示至少一个点云点的属性值的残差为0。例如,该标识信息可以包括上文提到的标识1、标识2、标识3中的至少一个。
在一个实施例中,所述点云数据还包括所述点云的位置坐标,当根据所述语法元素的取值确定所述搜索范围不为0时,所述数据编码设备对所述点云的属性值进行预测处理之前,可以计算所述点云中的点云点的位置坐标对应的莫顿码,并根据所述点云中的点云点的莫顿码,对所述点云中的点云点进行排序。在某些实施例中,所述数据编码设备对所述点云的属性值进行预测处理时,可以根据所述点云中的点云点的排序和所述搜索范围,对所述点云的属性值进行预测处理。
在一个实施例中,所述数据编码设备根据所述点云中的点云点的排序和所述搜索范围对所述点云的属性值进行预测处理时,可以确定当前点云点的参考点云点,所述参考点云点与所述当前点云点在所述排序后的点云中的排序距离不大于所述搜索范围,并根据所述参考点云点的属性值和所述当前点云点的属性值,计算所述点云点的属性值的残差。
在一些实施例中,所述数据编码设备在根据所述参考点云点的属性值和所述当前点云点的属性值,计算所述点云点的属性值的残差时,可以确定所述参考点云点的属性值和所述当前点云点的属性值之差为所述点云点的属性值的残差。
例如,假设语法元素的值对应的搜索范围为3,所述数据编码设备根据所述点云中的点云点的排序和所述搜索范围对所述点云的属性值进行预测处理时,可以确定与当前点云点相邻的在当前点云点之前的3个参考点云点,其中,这3个参考点云点与所述当前点云点在所述排序后的点云中的排序距离不大于所述搜索范围3。在确定出当前点云点的3个参考点云点之后,所述数据编码设备可以根据所述参考点云点的属性值和所述当前点云点的属性值之差,计算所述点云点的属性值的残差。
在一个实施例中,当根据所述语法元素的取值确定所述搜索范围为0时,所述数据编码设备对所述点云的属性值进行编码得到第二码流数据之前,可以计算所述点云中的点云点的位置坐标对应的莫顿码,并根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序。在某些实施例中,所述数据编码设备对所述点云的属性值进行编码得到第二码流数据时,可以对所述排序后的点云的属性值进行编码得到第二码流数据。
在一些实施例中,所述数据编码设备在根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序时,可以对所述点云中的点云点的莫顿码进行排序,并根据所述莫顿码的排序对与所述莫顿码对应的点云点进行排序。
例如,假设点云中的点云点包括D1、D2、D3、D4、D5、D6,D1对应的莫顿码为M1,D2对应的莫顿码为M2,D3对应的莫顿码为M3,D4对应的莫顿码为M4,D5对应的莫顿码为M5,D6对应的莫顿码为M6。如果莫顿码的排序为M2、M4、M5、M1、M6、M3,则可以根据所述莫顿码的排序对与所述莫顿码对应的点云点进行排序,并确定所述点云点的排序为:D2、D4、D5、D1、D6、D3。
在一个实施例中,所述标识信息包括第一标识,所述第一标识用于指示出现属性值的残差连续为0的点云点的数量。例如,假设第一标识为5,则可以确定所述属性值的残差连续为0的点云点的数量有5个。例如,该第一标识可以是上文中提到的标识1。
在一个实施例中,所述标识信息包括第二标识,所述第二标识用于指示当前点云点的属性值的残差是否为n,n为正整数。在某些实施例中,所述n为1或2。在某些实施例中,所述第二标识具体用于指示当前点云点的属性值的残差与n的差值是否为0。例如,假设第二标识为1,则用于指示当前点云点的属性值的残差与1的差值是否为0。又例如,假设第二标识为2,则用于指示当前点云点的属性值的残差与2的差值是否为0。例如,该第二标识包括上文中提到的标识2和/或标识3。
在一个实施例中,当根据所述语法元素的取值确定所述搜索范围不为0时,所述数据编码设备在对所述点云的属性值的残差进行编码得到第一码流数据之前,还可以对所述点云的属性值的残差进行符号转换。在某些实施例中,所述数据解码设备在对所述点云的属性值的残差进行符号转换之后,可以对所述点云进行符合转换后的属性值的残差进行编码得到第一码流数据。例如,假设点云的属性值的残差包括-1,则可以根据预设规则-1-(2*(-1))将点云的属性值的残差-1转换为1,并对包括转换后的属性值的残差1的点云的属性值的残差进行编码得到第一码流数据。
S903:当根据所述语法元素的取值确定所述搜索范围为0时,跳过所述“对所述点云的属性值进行预测处理”的步骤,对所述点云的属性值进行编码得到第二码流数据,其中,所述第二码流数据中不包括第一标识。
本发明实施例中,当根据所述语法元素的取值确定所述搜索范围为0时,数据编码设备可以跳过所述“对所述点云的属性值进行预测处理”的步骤,对所述点云的属性值进行编码得到第二码流数据。
在一个实施例中,当根据所述语法元素的取值确定所述搜索范围为0时,数据编码设备对所述点云的属性值进行编码得到第二码流数据时,可以对所述点云的属性值进行二值化编码得到第二码流数据。
可见,当根据语法元素的取值确定搜索范围为0时,通过跳过“对所述点云的属性值进行预测处理”的步骤,直接对点云的属性值进行二值化编码,可以大幅度地简化对属性编码的算法复杂度,提高属性编码的效率。
在一个实施例中,当根据所述语法元素的取值确定所述搜索范围为0时,数据编码设备还可以跳过所述“根据所述点云的位置确定所述点云中的点云点的莫顿码,根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序”的步骤。
在一个实施例中,当根据所述语法元素的取值确定所述搜索范围为0时,所述数据编码设备还可以跳过“对所述点云的属性值进行符号转换”的步骤,直接对点云的属性值进行编码得到第二码流数据。例如,假设点云的属性值包括-1,则数据编码设备可以跳过对所述点云的属性值-1进行符号转换的步骤,直接对该点云的属性值-1进行编码得到第二码流数据。
本发明实施例中,当语法元素的取值确定的搜索范围不为0时,通过对点云的属性值进行预测处理,得到点云的属性值的残差,以对点云的属性值的残差进行编码;当语法元素的取值确定的搜索范围为0时,跳过“对点云的属性值进行预测处理”的步骤,对点云的属性值进行编码。通过这种实施方式,可以大幅度地简化对属性编码的算法复杂度,减少了时间开销,提高了属性编码的效率。
请参见图10,图10是本发明实施例提供的另一种数据编码方法的流程示意图。所述方法可以应用于数据编码设备,其中,所述数据编码设备的解释如前所述。具体地,本发明实施例的所述方法包括如下步骤。
S1001:确定点云数据的语法元素的取值,所述点云数据包括所述点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测编码时的搜索范围。
本发明实施例中,数据编码设备可以确定点云数据的语法元素的取值,所述点云数据包括所述点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测编码时的搜索范围。
S1002:当根据所述语法元素的取值确定所述搜索范围为0时,对所述点云的属性值进行编码得到码流数据,其中,所述码流数据中不包括用于指示至少一个点云点的属性值为0的标识。
本发明实施例中,当根据所述语法元素的取值确定所述搜索范围为0时,数据编码设备可以对所述点云的属性值进行编码得到码流数据,其中,所述码流数据中不包括用于指示至少一个点云点的属性值为0的标识。
在某些实施例中,所述码流数据中不包括用于指示出现属性值连续为0的点云点的数量的标识;在某些实施例中,所述码流数据中不包括用于指示当前点云点的属性值是否为1的标识;在某些实施例中,所述码流数据中不包括用于指示当前点云点的属性值与1的差值是否为0的标识;在某些实施例中,所述码流数据中不包括用于指示当前点云点的属性值是否为2的标识;在某些实施例中,所述码流数据中不包括用于指示当前点云点的属性值与2的差值是否为0的标识。
在一个实施例中,所述数据编码设备对所述点云的属性值进行编码得到码流数据时,可以对所述点云的属性值进行二值化编码得到码流数据。
在一个实施例中,当根据所述语法元素的取值确定所述搜索范围为0时,所述数据编码设备可以跳过“对所述点云的属性值进行预测处理”的步骤。在某些实施例中,所述“对所述点云的属性值进行预测处理”的步骤是发生在当根据所述语法元素的取值确定所述搜索范围不为0时。
在一个实施例中,当根据所述语法元素的取值确定所述搜索范围为0时,所述数据编码设备还可以跳过在所述“对所述点云的属性值进行预测处理”的步骤之前的“计算所述点云中的点云点的位置坐标对应的莫顿码,根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序”的步骤。
在一个实施例中,所述“对所述点云的属性值进行预测处理”的步骤,包括:确定当前点云点的参考点云点,所述参考点云点与所述当前点云点在所述排序后的点云中的排序距离不大于所述搜索范围,并根据所述参考点云点的属性值和所述当前点云点的属性值计算所述点云点的属性值的残差。在某些实施例中,所述点云点的属性值的残差可以是所述参考点云点的属性值与所述当前点云点的属性值之差。
在一个实施例中,所述数据编码设备还可以计算所述点云中的点云点的位置坐标对应的莫顿码,并根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序。在某些实施例中,所述数据编码设备对所述点云的属性值进行编码得到码流数据时,可以对所述排序后的点云的属性值进行编码得到码流数据。具体实施例举例如前所述,此处不再赘述。
在一个实施例中,当根据所述语法元素的取值确定所述搜索范围为0时,所述数据解码设备还可以跳过“对所述点云的属性值进行符号转换”的步骤。
在一个实施例中,在当根据所述语法元素的取值确定所述搜索范围不为0时,存在“对所述点云的属性值的残差进行符号转换”的步骤。
本发明实施例中,通过在语法元素的取值确定的搜索范围为0时,对点云的属性值进行编码,可以大幅度地简化对属性编码的算法复杂度,减少了时间开销,提高了属性编码的效率。
请参见图11,图11是本发明实施例提供的一种数据解码方法的流程示意图,所述方法可以应用于数据解码设备,其中,所述数据解码方法可以应用于数据解码设备,所述数据解码设备也可以设置在智能终端(如手机、平板电脑等)上。具体地,本发明实施例的所述方法包括如下步骤。
S1101:从码流数据中解码点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测解码时的搜索范围。
本发明实施例中,数据解码设备可以从码流数据中解码点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测解码时的搜索范围。在某些实施例中,所述语法元素可以为前述的lifting_search_range;当然在其他实施例中,所述语法元素还可以包括其他表述形式,在此不做具体限定。
S1102:当根据语法元素的取值确定所述搜索范围不为0时,对所述码流数据解码得到所述点云的属性值的残差,对所述点云的属性值的残差进行补偿处理,其中,所述码流数据中包括标识信息,所述标识信息用于指示至少一个点云点的属性值的残差为0。
本发明实施例中,当根据所述语法元素的取值确定所述搜索范围不为0时,数据解码设备可以对所述码流数据解码得到所述点云的属性值的残差,对所述点云的属性值的残差进行补偿处理,其中,所述码流数据中包括标识信息,所述标识信息用于指示至少一个点云点的属性值的残差为0。
在一个实施例中,当所述标识信息不包括第一标识时,数据解码设备解码所述码流数据得到所述点云的属性值时,可以对所述码流数据进行二值化的逆操作得到所述点云的属性值。
在某些实施例中,所述标识信息包括第一标识,所述第一标识用于指示出现属性值的残差连续为0的点云点的数量。在某些实施例中,所述标识信息包括第二标识,所述第二标识用于指示当前点云点的属性值的残差是否为n,n为正整数;在某些实施例中,所述n为1或2。在某些实施例中,所述第二标识具体用于指示当前点云点的属性值的残差与n的差值是否为0。
在一个实施例中,所述点云数据还包括所述点云的位置坐标;当根据所述语法元素的取值确定所述搜索范围不为0时,所述解码设备对所述点云的属性值的残差进行补偿处理之前,可以计算所述点云中的点云点的位置坐标对应的莫顿码,并根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序。在一个实施例中,所述数据解码设备对所述点云的属性值的残差进行补偿处理时,可以根据所述点云中的点云点的排序和所述搜索范围对所述点云的属性值的残差进行补偿处理。
在一个实施例中,所述数据解码设备根据所述点云中的点云点的排序和所述搜索范围对所述点云的属性值的残差进行补偿处理时,可以根据所述搜索范围确定当前点云点的参考点云点,所述参考点云点与所述当前点云点在所述排序后的点云中的排序距离不大于所述搜索范围,并根据所述当前点云点的属性值的残差和所述参考点云点的属性值确定所述当前点云点的属性值。
在一些实施例中,所述数据解码设备在根据所述当前点云点的属性值的残差和所述参考点云点的属性值确定所述当前点云点的属性值时,可以根据所述参考点云点的属性值与所述当前点云点的属性值的残差之差,确定所述当前点云点的属性值。
例如,假设所述搜索范围为3,点云中的点云点包括D1、D2、D3、D4、D5、D6,点云点的排序为D2、D4、D5、D1、D6、D3,如果当前点云点为D1,则所述数据解码设备可以根据所述搜索范围3,当前点云点D2之前的D2、D4、D5中确定当前点云点D2的参考点云点为D5,其中,所述参考点云点D2、D4、D5与所述当前点云点D2在所述排序后的点云中的排序距离不大于所述搜索范围3。所述数据解码设备可以根据所述参考点云点D5的属性值与所述当前点云点D2的属性值的残差之间的差值,确定所述当前点云点D2的属性值。
在一个实施例中,当根据所述语法元素的取值确定所述搜索范围不为0时,所述数据解码设备在对所述点云的属性值的残差进行补偿处理之前,还可以对所述点云的属性值的残差进行符号转换。在某些实施例中,所述对所述点云的属性值的残差进行符号转换的具体实施过程及举例如前所述,此处不再赘述。在一个实施例中,所述数据解码设备在对所述点云的属性值的残差进行符号转换之后,可以对所述点云进行符合转换后的属性值的残差进行补偿处理。
S1103:当根据所述语法元素的取值确定所述搜索范围为0时,跳过“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤,对所述码流数据解码得到所述点云的属性值,其中,所述码流数据中不包括所述标识信息。
本发明实施例中,当根据所述语法元素的取值确定所述搜索范围为0时,数据解码设备可以跳过“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤,对所述码流数据解码得到所述点云的属性值,其中,所述码流数据中不包括所述标识信息。
在一个实施例中,当根据所述语法元素的取值确定所述搜索范围为0时,所述数据解码设备在对所述码流数据解码得到所述点云的属性值时,可以对所述码流数据进行二值化的逆操作得到所述点云的属性值。
在一个实施例中,当根据所述语法元素的取值确定所述搜索范围为0时,数据解码设备还可以跳过所述“计算所述点云中的点云点的位置坐标对应的莫顿码,根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序”的步骤。
在一个实施例中,当根据所述语法元素的取值确定所述搜索范围为0时,所述数据解码设备对所述码流数据解码得到所述点云的属性值之前,可以计算所述点云中的点云点的位置坐标对应的莫顿码,并根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序。在一个实施例中,所述数据解码设备在对所述码流数据解码得到所述点云的属性值时,可以对码流数据解码得到所述排序后的点云的属性值。
在一个实施例中,当根据所述语法元素的取值确定所述搜索范围为0时,所述数据解码设备还可以跳过“对所述点云的属性值进行符号转换”的步骤。
本发明实施例中,数据解码设备可以从码流数据中解码点云数据的语法元素的取值,当根据所述语法元素的取值确定所述搜索范围不为0时,对所述码流数据解码得到所述点云的属性值的残差,对所述点云的属性值的残差进行补偿处理,当根据所述语法元素的取值确定所述搜索范围为0时,跳过“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤,对所述码流数据解码得到所述点云的属性值。通过这种实施方式,可以降低解码过程中的算法复杂度,提高了解码的效率。
请参见图12,图12是本发明实施例提供的另一种数据解码方法的流程示意图,所述方法可以应用于数据解码设备,所述数据解码设备的解释如前所述。具体地,本发明实施例的所述方法包括如下步骤。
S1201:从码流数据中解码点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测解码时的搜索范围。
本发明实施例中,数据解码设备可以从码流数据中解码点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测解码时的搜索范围。
在某些实施例中,所述码流数据中不包括用于指示出现属性值连续为0的点云点的数量的标识;在某些实施例中,,所述码流数据中不包括用于指示当前点云点的属性值是否为1的标识;在某些实施例中,所述码流数据中不包括用于指示当前点云点的属性值与1的差值是否为0的标识;在某些实施例中,所述码流数据中不包括用于指示当前点云点的属性值是否为2的标识;在某些实施例中,所述码流数据中不包括用于指示当前点云点的属性值与2的差值是否为0的标识。
S1202:当根据所述语法元素的取值确定所述搜索范围为0时,对所述码流数据解码得到所述点云的属性值,其中,所述码流数据中不包括所述标识信息。
本发明实施例中,当根据所述语法元素的取值确定所述搜索范围为0时,数据解码设备可以对所述码流数据解码得到所述点云的属性值,其中,所述码流数据中不包括所述标识信息。
在一个实施例中,数据解码设备对所述码流数据解码得到所述点云的属性值时,可以对所述码流数据进行二值化的逆操作得到所述点云的属性值。
在一个实施例中,所述码流数据中不包括用于指示出现属性值连续为0的点云点的数量的标识。所述码流数据中不包括用于指示当前点云点的属性值是否为1的标识。
在一个实施例中,所述“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤是发生在所述点云数据的语法元素的取值的搜索范围不为0时。
在一个实施例中,当所述点云数据的语法元素的取值的搜索范围为0时,数据解码设备还可以跳过在所述“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤之前的“计算所述点云中的点云点的位置坐标对应的莫顿码;根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序”的步骤。
在一个实施例中,所述“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤,包括:根据所述搜索范围确定当前点云点的参考点云点,所述参考点云点与所述当前点云点在所述排序后的点云中的排序距离不大于所述搜索范围;根据所述当前点云点的属性值的残差和所述参考点云点的属性值确定所述当前点云点的属性值。
在一个实施例中,所述数据解码设备还可以计算所述点云中的点云点的位置坐标对应的莫顿码,并根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序。在一些实施例中,所述数据解码设备对所述码流数据解码得到所述点云的属性值时,可以对码流数据解码得到所述排序后的点云的属性值。
在一个实施例中,当根据所述语法元素的取值确定所述搜索范围为0时,所述数据解码设备还可以跳过“对所述点云的属性值进行符号转换”的步骤。
在一个实施例中,在当根据所述语法元素的取值确定所述搜索范围不为0时,存在“对所述点云的属性值的残差进行符号转换”的步骤。
本发明实施例中,当根据所述语法元素的取值确定所述搜索范围为0时时,数据解码设备可以解码码流数据得到点云的属性值。通过这种实施方式,可以降低解码过程中的算法复杂度,提高了解码的效率。
请参见图13,图13是本发明实施例提供的一种数据编码设备的结构示意图,具体的,所述数据编码设备包括:存储器1301、处理器1302以及数据接口1303。
所述存储器1301可以包括易失性存储器(volatile memory);存储器1301也可以包括非易失性存储器(non-volatile memory);存储器1301还可以包括上述种类的存储器的组合。所述处理器1302可以是中央处理器(central processing unit,CPU)。所述处理器1302还可以进一步包括硬件数据编码设备。上述硬件数据编码设备可以是专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmablelogic device,PLD)或其组合。具体例如可以是复杂可编程逻辑器件(complexprogrammable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gatearray,FPGA)或其任意组合。
进一步地,所述存储器1301用于存储程序,当程序被执行时所述处理器1302可以调用存储器1301中存储的程序,用于执行如下步骤:
确定点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测编码时的搜索范围;
当根据所述语法元素的取值确定所述搜索范围不为0时,对所述点云的属性值进行预测处理,得到所述点云的属性值的残差,对所述点云的属性值的残差进行编码得到第一码流数据,其中,所述第一码流数据中包括标识信息,所述标识信息用于指示至少一个点云点的属性值的残差为0;
当根据所述语法元素的取值确定所述搜索范围为0时,跳过所述“对所述点云的属性值进行预测处理”的步骤,对所述点云的属性值进行编码得到第二码流数据,其中,所述第二码流数据中不包括第一标识。
进一步地,所述当根据所述语法元素的取值确定所述搜索范围为0时,所述处理器1302对所述点云的属性值进行编码得到第二码流数据时,具体可以:
当根据所述语法元素的取值确定所述搜索范围为0时,对所述点云的属性值进行二值化编码得到第二码流数据。
进一步地,所述点云数据还包括所述点云的位置坐标;
当根据所述语法元素的取值确定所述搜索范围不为0时,所述处理器1302对所述点云的属性值进行预测处理之前,还用于:
计算所述点云中的点云点的位置坐标对应的莫顿码;
根据所述点云中的点云点的莫顿码,对所述点云中的点云点进行排序;
所述处理器1302对所述点云的属性值进行预测处理时,具体用于:
根据所述点云中的点云点的排序和所述搜索范围,对所述点云的属性值进行预测处理。
进一步地,当根据所述语法元素的取值确定所述搜索范围为0时,还跳过所述“根据所述点云的位置确定所述点云中的点云点的莫顿码,根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序”的步骤。
进一步地,所述处理器1302根据所述点云中的点云点的排序和所述搜索范围对所述点云的属性值进行预测处理时,具体用于:
确定当前点云点的参考点云点,所述参考点云点与所述当前点云点在所述排序后的点云中的排序距离不大于所述搜索范围;
根据所述参考点云点的属性值和所述当前点云点的属性值,计算所述点云点的属性值的残差。
进一步地,当根据所述语法元素的取值确定所述搜索范围为0时所述处理器1302,对所述点云的属性值进行编码得到第二码流数据之前,还用于:
计算所述点云中的点云点的位置坐标对应的莫顿码;
根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序;
所述处理器1302对所述点云的属性值进行编码得到第二码流数据时,具体用于:
对所述排序后的点云的属性值进行编码得到第二码流数据。
进一步地,所述标识信息包括第一标识,所述第一标识用于指示出现属性值的残差连续为0的点云点的数量。
进一步地,所述标识信息包括第二标识,所述第二标识用于指示当前点云点的属性值的残差是否为n,n为正整数。
进一步地,所述n为1或2。
进一步地,所述第二标识具体用于指示当前点云点的属性值的残差与n的差值是否为0。
进一步地,当根据所述语法元素的取值确定所述搜索范围不为0时,所述处理器1302对所述点云的属性值的残差进行编码得到第一码流数据之前,还用于:
对所述点云的属性值的残差进行符号转换;
所述处理器1302对所述点云的属性值的残差进行编码得到第一码流数据时,具体用于:
对所述点云进行符合转换后的属性值的残差进行编码得到第一码流数据。
进一步地,当根据所述语法元素的取值确定所述搜索范围为0时,还跳过“对所述点云的属性值进行符号转换”的步骤。
本发明实施例中,当语法元素的取值确定的搜索范围不为0时,通过对点云的属性值进行预测处理,得到点云的属性值的残差,以对点云的属性值的残差进行编码;当语法元素的取值确定的搜索范围为0时,跳过“对点云的属性值进行预测处理”的步骤,对点云的属性值进行编码。通过这种实施方式,可以大幅度地简化对属性编码的算法复杂度,减少了时间开销,提高了属性编码的效率。
请参见图14,图14是本发明实施例提供的另一种数据编码设备的结构示意图,具体的,所述数据编码设备包括:存储器1401、处理器1402以及数据接口1403。
所述存储器1401可以包括易失性存储器(volatile memory);存储器1401也可以包括非易失性存储器(non-volatile memory);存储器1401还可以包括上述种类的存储器的组合。所述处理器1402可以是中央处理器(central processing unit,CPU)。所述处理器1402还可以进一步包括硬件数据编码设备。上述硬件数据编码设备可以是专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmablelogic device,PLD)或其组合。具体例如可以是复杂可编程逻辑器件(complexprogrammable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gatearray,FPGA)或其任意组合。
进一步地,所述存储器1401用于存储程序,当程序被执行时所述处理器1402可以调用存储器1401中存储的程序,用于执行如下步骤:
确定点云数据的语法元素的取值,所述点云数据包括所述点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测编码时的搜索范围;
当根据所述语法元素的取值确定所述搜索范围为0时,对所述点云的属性值进行编码得到码流数据,其中,所述码流数据中不包括用于指示至少一个点云点的属性值为0的标识。
进一步地,所述处理器1402对所述点云的属性值进行编码得到码流数据时,具体用于:
对所述点云的属性值进行二值化编码得到码流数据。
进一步地,当根据所述语法元素的取值确定所述搜索范围为0时,跳过“对所述点云的属性值进行预测处理”的步骤。
进一步地,所述“对所述点云的属性值进行预测处理”的步骤是发生在当根据所述语法元素的取值确定所述搜索范围不为0时。
进一步地,当根据所述语法元素的取值确定所述搜索范围为0时,还跳过在所述“对所述点云的属性值进行预测处理”的步骤之前的“计算所述点云中的点云点的位置坐标对应的莫顿码,根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序”的步骤。
进一步地,所述“对所述点云的属性值进行预测处理”的步骤,包括:
确定当前点云点的参考点云点,所述参考点云点与所述当前点云点在所述排序后的点云中的排序距离不大于所述搜索范围;
根据所述参考点云点的属性值和所述当前点云点的属性值计算所述点云点的属性值的残差。
进一步地,所述处理器1402还用于:
计算所述点云中的点云点的位置坐标对应的莫顿码;
根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序;
所述处理器1402对所述点云的属性值进行编码得到码流数据时,具体用于:
对所述排序后的点云的属性值进行编码得到码流数据。
进一步地,当根据所述语法元素的取值确定所述搜索范围为0时,还跳过“对所述点云的属性值进行符号转换”的步骤。
进一步地,在当根据所述语法元素的取值确定所述搜索范围不为0时,存在“对所述点云的属性值的残差进行符号转换”的步骤。
进一步地,所述码流数据中不包括用于指示出现属性值连续为0的点云点的数量的标识。
进一步地,所述码流数据中不包括用于指示当前点云点的属性值是否为1的标识。
进一步地,所述码流数据中不包括用于指示当前点云点的属性值与1的差值是否为0的标识。
进一步地,所述码流数据中不包括用于指示当前点云点的属性值是否为2的标识。
进一步地,所述码流数据中不包括用于指示当前点云点的属性值与2的差值是否为0的标识。
本发明实施例中,通过当语法元素的取值确定的搜索范围为0时,对点云的属性值进行编码,可以大幅度地简化对属性编码的算法复杂度,减少了时间开销,提高了属性编码的效率。
请参见图15,图15是本发明实施例提供的一种数据解码设备的结构示意图,具体的,所述数据解码设备包括:存储器1501、处理器1502以及数据接口1503。
所述存储器1501可以包括易失性存储器(volatile memory);存储器1501也可以包括非易失性存储器(non-volatile memory);存储器1501还可以包括上述种类的存储器的组合。所述处理器1502可以是中央处理器(central processing unit,CPU)。所述处理器1502还可以进一步包括硬件数据编码设备。上述硬件数据编码设备可以是专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmablelogic device,PLD)或其组合。具体例如可以是复杂可编程逻辑器件(complexprogrammable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gatearray,FPGA)或其任意组合。
进一步地,所述存储器1501用于存储程序,当程序被执行时所述处理器1502可以调用存储器1501中存储的程序,用于执行如下步骤:
从码流数据中解码点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测解码时的搜索范围;
当根据所述语法元素的取值确定所述搜索范围不为0时,对所述码流数据解码得到所述点云的属性值的残差,对所述点云的属性值的残差进行补偿处理,其中,所述码流数据中包括标识信息,所述标识信息用于指示至少一个点云点的属性值的残差为0;
当根据所述语法元素的取值确定所述搜索范围为0时,跳过“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤,对所述码流数据解码得到所述点云的属性值,其中,所述码流数据中不包括所述标识信息。
进一步地,所述处理器1502当根据所述语法元素的取值确定所述搜索范围为0时,对所述码流数据解码得到所述点云的属性值时,具体用于:
当根据所述语法元素的取值确定所述搜索范围为0时,对所述码流数据进行二值化的逆操作得到所述点云的属性值。
进一步地,所述点云数据还包括所述点云的位置坐标;
所述处理器1502当根据所述语法元素的取值确定所述搜索范围不为0时,所述对所述点云的属性值的残差进行补偿处理之前,还用于:
计算所述点云中的点云点的位置坐标对应的莫顿码;
根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序;
所述处理器1502对所述点云的属性值的残差进行补偿处理时,具体用于:
根据所述点云中的点云点的排序和所述搜索范围对所述点云的属性值的残差进行补偿处理。
进一步地,所述处理器1502根据所述点云中的点云点的排序和所述搜索范围对所述点云的属性值的残差进行补偿处理时,具体用于:
根据所述搜索范围确定当前点云点的参考点云点,所述参考点云点与所述当前点云点在所述排序后的点云中的排序距离不大于所述搜索范围;
根据所述当前点云点的属性值的残差和所述参考点云点的属性值确定所述当前点云点的属性值。
进一步地,当根据所述语法元素的取值确定所述搜索范围为0时,还跳过所述“计算所述点云中的点云点的位置坐标对应的莫顿码,根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序”的步骤。
进一步地,所述处理器1502当根据所述语法元素的取值确定所述搜索范围为0时,所述对所述码流数据解码得到所述点云的属性值之前,还用于:
计算所述点云中的点云点的位置坐标对应的莫顿码;
根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序;
所述处理器1502对所述码流数据解码得到所述点云的属性值时,具体用于:
对码流数据解码得到所述排序后的点云的属性值。
进一步地,所述标识信息包括第一标识,所述第一标识用于指示出现属性值的残差连续为0的点云点的数量。
进一步地,所述标识信息包括第二标识,所述第二标识用于指示当前点云点的属性值的残差是否为n,n为正整数。
进一步地,所述n为1或2。
进一步地,所述第二标识具体用于指示当前点云点的属性值的残差与n的差值是否为0。
进一步地,当根据所述语法元素的取值确定所述搜索范围不为0时,所述处理器1502对所述点云的属性值的残差进行补偿处理之前,还用于:
对所述点云的属性值的残差进行符号转换;
所述处理器1502对所述点云的属性值的残差进行补偿处理时,具体用于:
对所述点云进行符合转换后的属性值的残差进行补偿处理。
进一步地,当根据所述语法元素的取值确定所述搜索范围为0时,还跳过“对所述点云的属性值进行符号转换”的步骤。
本发明实施例中,数据解码设备可以从码流数据中解码点云数据的语法元素的取值,当根据所述语法元素的取值确定所述搜索范围不为0时,对所述码流数据解码得到所述点云的属性值的残差,对所述点云的属性值的残差进行补偿处理,当根据所述语法元素的取值确定所述搜索范围为0时,跳过“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤,对所述码流数据解码得到所述点云的属性值。通过这种实施方式,可以降低解码过程中的算法复杂度,提高了解码的效率。
请参见图16,图16是本发明实施例提供的另一种数据解码设备的结构示意图,具体的,所述数据解码设备包括:存储器1601、处理器1602以及数据接口1603。
所述存储器1601可以包括易失性存储器(volatile memory);存储器1601也可以包括非易失性存储器(non-volatile memory);存储器1601还可以包括上述种类的存储器的组合。所述处理器1602可以是中央处理器(central processing unit,CPU)。所述处理器1602还可以进一步包括硬件数据编码设备。上述硬件数据编码设备可以是专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmablelogic device,PLD)或其组合。具体例如可以是复杂可编程逻辑器件(complexprogrammable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gatearray,FPGA)或其任意组合。
进一步地,所述存储器1601用于存储程序,当程序被执行时所述处理器1602可以调用存储器1601中存储的程序,用于执行如下步骤:
从码流数据中解码点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测解码时的搜索范围;
当根据所述语法元素的取值确定所述搜索范围为0时,对所述码流数据解码得到所述点云的属性值,其中,所述码流数据中不包括标识信息。
进一步地,所述处理器1602对所述码流数据解码得到所述点云的属性值时,具体用于:
对所述码流数据进行二值化的逆操作得到所述点云的属性值。
进一步地,当所述码流数据中不包括用于指示至少一个点云点的属性值为0的标识时,跳过“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤。
进一步地,所述“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤是发生在所述点云数据的语法元素的取值的搜索范围不为0时。
进一步地,当所述点云数据的语法元素的取值的搜索范围为0时,还跳过在所述“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤之前的“计算所述点云中的点云点的位置坐标对应的莫顿码;根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序”的步骤。
进一步地,所述“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤,包括:
根据所述搜索范围确定当前点云点的参考点云点,所述参考点云点与所述当前点云点在所述排序后的点云中的排序距离不大于所述搜索范围;
根据所述当前点云点的属性值的残差和所述参考点云点的属性值确定所述当前点云点的属性值。
进一步地,所述处理器1602还用于:
计算所述点云中的点云点的位置坐标对应的莫顿码;
根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序;
所述处理器1602对所述码流数据解码得到所述点云的属性值时,具体用于:
对码流数据解码得到所述排序后的点云的属性值。
进一步地,当根据所述语法元素的取值确定所述搜索范围为0时,还跳过“对所述点云的属性值进行符号转换”的步骤。
进一步地,在当根据所述语法元素的取值确定所述搜索范围不为0时,存在“对所述点云的属性值的残差进行符号转换”的步骤。
进一步地,所述码流数据中不包括用于指示出现属性值连续为0的点云点的数量的标识。
进一步地,所述码流数据中不包括用于指示当前点云点的属性值是否为1的标识。
进一步地,所述码流数据中不包括用于指示当前点云点的属性值与1的差值是否为0的标识。
进一步地,所述码流数据中不包括用于指示当前点云点的属性值是否为2的标识。
进一步地,所述码流数据中不包括用于指示当前点云点的属性值与2的差值是否为0的标识。
本发明实施例中,当根据所述语法元素的取值确定所述搜索范围为0时时,数据解码设备可以解码码流数据得到点云的属性值。通过这种实施方式,可以降低解码过程中的算法复杂度,提高了解码的效率。
在本发明的实施例中还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例图9或图10中描述的数据编码方法方式,或图11或图12中描述的数据解码方法方式,也可实现图13或图14所述本发明所对应实施例的数据编码设备,或图15或16所述本发明所对应实施例的数据解码设备,在此不再赘述。
所述计算机可读存储介质可以是前述任一项实施例所述的设备的内部存储单元,例如设备的硬盘或内存。所述计算机可读存储介质也可以是所述设备的外部存储设备,例如所述设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等。进一步地,所述计算机可读存储介质还可以既包括所述设备的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述设备所需的其他程序和数据。所述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明部分实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (105)

1.一种数据编码方法,其特征在于,包括:
确定点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测编码时的搜索范围;
当根据所述语法元素的取值确定所述搜索范围不为0时,对所述点云的属性值进行预测处理,得到所述点云的属性值的残差,对所述点云的属性值的残差进行编码得到第一码流数据,其中,所述第一码流数据中包括标识信息,所述标识信息用于指示至少一个点云点的属性值的残差为0;
当根据所述语法元素的取值确定所述搜索范围为0时,跳过所述“对所述点云的属性值进行预测处理”的步骤,对所述点云的属性值进行编码得到第二码流数据,其中,所述第二码流数据中不包括第一标识。
2.根据权利要求1所述的方法,其特征在于,所述当根据所述语法元素的取值确定所述搜索范围为0时,对所述点云的属性值进行编码得到第二码流数据,包括:
当根据所述语法元素的取值确定所述搜索范围为0时,对所述点云的属性值进行二值化编码得到第二码流数据。
3.根据权利要求1所述的方法,其特征在于,所述点云数据还包括所述点云的位置坐标;
当根据所述语法元素的取值确定所述搜索范围不为0时,所述对所述点云的属性值进行预测处理之前,还包括:
计算所述点云中的点云点的位置坐标对应的莫顿码;
根据所述点云中的点云点的莫顿码,对所述点云中的点云点进行排序;
所述对所述点云的属性值进行预测处理,包括:
根据所述点云中的点云点的排序和所述搜索范围,对所述点云的属性值进行预测处理。
4.根据权利要求3所述的方法,其特征在于,
当根据所述语法元素的取值确定所述搜索范围为0时,还跳过“根据所述点云的位置确定所述点云中的点云点的莫顿码,根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序”的步骤。
5.根据权利要求3所述的方法,其特征在于,所述根据所述点云中的点云点的排序和所述搜索范围对所述点云的属性值进行预测处理,包括:
确定当前点云点的参考点云点,所述参考点云点与所述当前点云点在所述排序后的点云中的排序距离不大于所述搜索范围;
根据所述参考点云点的属性值和所述当前点云点的属性值,计算所述点云点的属性值的残差。
6.根据权利要求3所述的方法,其特征在于,当根据所述语法元素的取值确定所述搜索范围为0时,对所述点云的属性值进行编码得到第二码流数据之前,还包括:
计算所述点云中的点云点的位置坐标对应的莫顿码;
根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序;
所述对所述点云的属性值进行编码得到第二码流数据,包括:
对所述排序后的点云的属性值进行编码得到第二码流数据。
7.根据权利要求1所述的方法,其特征在于,
所述标识信息包括第一标识,所述第一标识用于指示出现属性值的残差连续为0的点云点的数量。
8.根据权利要求1所述的方法,其特征在于,
所述标识信息包括第二标识,所述第二标识用于指示当前点云点的属性值的残差是否为n,n为正整数。
9.根据权利要求8所述的方法,其特征在于,所述n为1或2。
10.根据权利要求8所述的方法,其特征在于,所述第二标识具体用于指示当前点云点的属性值的残差与n的差值是否为0。
11.根据权利要求1所述的方法,其特征在于,当根据所述语法元素的取值确定所述搜索范围不为0时,所述对所述点云的属性值的残差进行编码得到第一码流数据之前,还包括:
对所述点云的属性值的残差进行符号转换;
所述对所述点云的属性值的残差进行编码得到第一码流数据,包括:
对所述点云进行符合转换后的属性值的残差进行编码得到第一码流数据。
12.根据权利要求11所述的方法,其特征在于,
当根据所述语法元素的取值确定所述搜索范围为0时,还跳过“对所述点云的属性值进行符号转换”的步骤。
13.一种数据编码方法,其特征在于,包括:
确定点云数据的语法元素的取值,所述点云数据包括所述点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测编码时的搜索范围;
当根据所述语法元素的取值确定所述搜索范围为0时,对所述点云的属性值进行编码得到码流数据,其中,所述码流数据中不包括用于指示至少一个点云点的属性值为0的标识。
14.根据权利要求13所述的方法,其特征在于,所述对所述点云的属性值进行编码得到码流数据,包括:
对所述点云的属性值进行二值化编码得到码流数据。
15.根据权利要求13所述的方法,其特征在于,
当根据所述语法元素的取值确定所述搜索范围为0时,跳过“对所述点云的属性值进行预测处理”的步骤。
16.根据权利要求15所述的方法,其特征在于,
所述“对所述点云的属性值进行预测处理”的步骤是发生在当根据所述语法元素的取值确定所述搜索范围不为0时。
17.根据权利要求15所述的方法,其特征在于,
当根据所述语法元素的取值确定所述搜索范围为0时,还跳过在所述“对所述点云的属性值进行预测处理”的步骤之前的“计算所述点云中的点云点的位置坐标对应的莫顿码,根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序”的步骤。
18.根据权利要求17所述的方法,其特征在于,所述“对所述点云的属性值进行预测处理”的步骤,包括:
确定当前点云点的参考点云点,所述参考点云点与所述当前点云点在所述排序后的点云中的排序距离不大于所述搜索范围;
根据所述参考点云点的属性值和所述当前点云点的属性值计算所述点云点的属性值的残差。
19.根据权利要求13所述的方法,其特征在于,所述方法还包括:
计算所述点云中的点云点的位置坐标对应的莫顿码;
根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序;
所述对所述点云的属性值进行编码得到码流数据,包括:
对所述排序后的点云的属性值进行编码得到码流数据。
20.根据权利要求13所述的方法,其特征在于,
当根据所述语法元素的取值确定所述搜索范围为0时,还跳过“对所述点云的属性值进行符号转换”的步骤。
21.根据权利要求20所述的方法,其特征在于,
在当根据所述语法元素的取值确定所述搜索范围不为0时,存在“对所述点云的属性值的残差进行符号转换”的步骤。
22.根据权利要求13所述的方法,其特征在于,所述码流数据中不包括用于指示出现属性值连续为0的点云点的数量的标识。
23.根据权利要求13所述的方法,其特征在于,所述码流数据中不包括用于指示当前点云点的属性值是否为1的标识。
24.根据权利要求23所述的方法,其特征在于,所述码流数据中不包括用于指示当前点云点的属性值与1的差值是否为0的标识。
25.根据权利要求13所述的方法,其特征在于,所述码流数据中不包括用于指示当前点云点的属性值是否为2的标识。
26.根据权利要求25所述的方法,其特征在于,所述码流数据中不包括用于指示当前点云点的属性值与2的差值是否为0的标识。
27.一种数据解码方法,其特征在于,包括:
从码流数据中解码点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测解码时的搜索范围;
当根据所述语法元素的取值确定所述搜索范围不为0时,对所述码流数据解码得到所述点云的属性值的残差,对所述点云的属性值的残差进行补偿处理,其中,所述码流数据中包括标识信息,所述标识信息用于指示至少一个点云点的属性值的残差为0;
当根据所述语法元素的取值确定所述搜索范围为0时,跳过“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤,对所述码流数据解码得到所述点云的属性值,其中,所述码流数据中不包括所述标识信息。
28.根据权利要求27所述的方法,其特征在于,所述当根据所述语法元素的取值确定所述搜索范围为0时,对所述码流数据解码得到所述点云的属性值,包括:
当根据所述语法元素的取值确定所述搜索范围为0时,对所述码流数据进行二值化的逆操作得到所述点云的属性值。
29.根据权利要求27所述的方法,其特征在于,所述点云数据还包括所述点云的位置坐标;
当根据所述语法元素的取值确定所述搜索范围不为0时,所述对所述点云的属性值的残差进行补偿处理之前,还包括:
计算所述点云中的点云点的位置坐标对应的莫顿码;
根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序;
所述对所述点云的属性值的残差进行补偿处理,包括:
根据所述点云中的点云点的排序和所述搜索范围对所述点云的属性值的残差进行补偿处理。
30.根据权利要求29所述的方法,其特征在于,所述根据所述点云中的点云点的排序和所述搜索范围对所述点云的属性值的残差进行补偿处理,包括:
根据所述搜索范围确定当前点云点的参考点云点,所述参考点云点与所述当前点云点在所述排序后的点云中的排序距离不大于所述搜索范围;
根据所述当前点云点的属性值的残差和所述参考点云点的属性值确定所述当前点云点的属性值。
31.根据权利要求29所述的方法,其特征在于,
当根据所述语法元素的取值确定所述搜索范围为0时,还跳过“计算所述点云中的点云点的位置坐标对应的莫顿码,根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序”的步骤。
32.根据权利要求29所述的方法,其特征在于,当根据所述语法元素的取值确定所述搜索范围为0时,所述对所述码流数据解码得到所述点云的属性值之前,还包括:
计算所述点云中的点云点的位置坐标对应的莫顿码;
根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序;
所述对所述码流数据解码得到所述点云的属性值,包括:
对码流数据解码得到所述排序后的点云的属性值。
33.根据权利要求27所述的方法,其特征在于,
所述标识信息包括第一标识,所述第一标识用于指示出现属性值的残差连续为0的点云点的数量。
34.根据权利要求27所述的方法,其特征在于,
所述标识信息包括第二标识,所述第二标识用于指示当前点云点的属性值的残差是否为n,n为正整数。
35.根据权利要求34所述的方法,其特征在于,所述n为1或2。
36.根据权利要求34所述的方法,其特征在于,所述第二标识具体用于指示当前点云点的属性值的残差与n的差值是否为0。
37.根据权利要求27所述的方法,其特征在于,当根据所述语法元素的取值确定所述搜索范围不为0时,所述对所述点云的属性值的残差进行补偿处理之前,还包括:
对所述点云的属性值的残差进行符号转换;
所述对所述点云的属性值的残差进行补偿处理,包括:
对所述点云进行符合转换后的属性值的残差进行补偿处理。
38.根据权利要求27所述的方法,其特征在于,
当根据所述语法元素的取值确定所述搜索范围为0时,还跳过“对所述点云的属性值进行符号转换”的步骤。
39.一种数据解码方法,其特征在于,包括:
从码流数据中解码点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测解码时的搜索范围;
当根据所述语法元素的取值确定所述搜索范围为0时,对所述码流数据解码得到所述点云的属性值,其中,所述码流数据中不包括标识信息。
40.根据权利要求39所述的方法,其特征在于,所述对所述码流数据解码得到所述点云的属性值,包括:
对所述码流数据进行二值化的逆操作得到所述点云的属性值。
41.根据权利要求39所述的方法,其特征在于,
当所述码流数据中不包括用于指示至少一个点云点的属性值为0的标识时,跳过“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤。
42.根据权利要求41所述的方法,其特征在于,
所述“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤是发生在所述点云数据的语法元素的取值的搜索范围不为0时。
43.根据权利要求41所述的方法,其特征在于,
当所述点云数据的语法元素的取值的搜索范围为0时,还跳过在所述“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤之前的“计算所述点云中的点云点的位置坐标对应的莫顿码;根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序”的步骤。
44.根据权利要求43所述的方法,其特征在于,所述“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤,包括:
根据所述搜索范围确定当前点云点的参考点云点,所述参考点云点与所述当前点云点在所述排序后的点云中的排序距离不大于所述搜索范围;
根据所述当前点云点的属性值的残差和所述参考点云点的属性值确定所述当前点云点的属性值。
45.根据权利要求39所述的方法,其特征在于,所述方法还包括:
计算所述点云中的点云点的位置坐标对应的莫顿码;
根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序;
所述对所述码流数据解码得到所述点云的属性值,包括:
对码流数据解码得到所述排序后的点云的属性值。
46.根据权利要求39所述的方法,其特征在于,
当根据所述语法元素的取值确定所述搜索范围为0时,还跳过“对所述点云的属性值进行符号转换”的步骤。
47.根据权利要求46所述的方法,其特征在于,
在当根据所述语法元素的取值确定所述搜索范围不为0时,存在“对所述点云的属性值的残差进行符号转换”的步骤。
48.根据权利要求39所述的方法,其特征在于,所述码流数据中不包括用于指示出现属性值连续为0的点云点的数量的标识。
49.根据权利要求39所述的方法,其特征在于,所述码流数据中不包括用于指示当前点云点的属性值是否为1的标识。
50.根据权利要求49所述的方法,其特征在于,所述码流数据中不包括用于指示当前点云点的属性值与1的差值是否为0的标识。
51.根据权利要求39所述的方法,其特征在于,所述码流数据中不包括用于指示当前点云点的属性值是否为2的标识。
52.根据权利要求51所述的方法,其特征在于,所述码流数据中不包括用于指示当前点云点的属性值与2的差值是否为0的标识。
53.一种数据编码设备,其特征在于,包括:存储器和处理器,
所述存储器,用于存储程序;
所述处理器,用于调用所述程序,当所述程序被执行时,用于执行以下操作:
确定点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测编码时的搜索范围;
当根据所述语法元素的取值确定所述搜索范围不为0时,对所述点云的属性值进行预测处理,得到所述点云的属性值的残差,对所述点云的属性值的残差进行编码得到第一码流数据,其中,所述第一码流数据中包括标识信息,所述标识信息用于指示至少一个点云点的属性值的残差为0;
当根据所述语法元素的取值确定所述搜索范围为0时,跳过所述“对所述点云的属性值进行预测处理”的步骤,对所述点云的属性值进行编码得到第二码流数据,其中,所述第二码流数据中不包括第一标识。
54.根据权利要求53所述的设备,其特征在于,所述当根据所述语法元素的取值确定所述搜索范围为0时,所述处理器对所述点云的属性值进行编码得到第二码流数据时,具体用于:
当根据所述语法元素的取值确定所述搜索范围为0时,对所述点云的属性值进行二值化编码得到第二码流数据。
55.根据权利要求53所述的设备,其特征在于,所述点云数据还包括所述点云的位置坐标;
当根据所述语法元素的取值确定所述搜索范围不为0时,所述处理器对所述点云的属性值进行预测处理之前,还用于:
计算所述点云中的点云点的位置坐标对应的莫顿码;
根据所述点云中的点云点的莫顿码,对所述点云中的点云点进行排序;
所述处理器对所述点云的属性值进行预测处理时,具体用于:
根据所述点云中的点云点的排序和所述搜索范围,对所述点云的属性值进行预测处理。
56.根据权利要求55所述的设备,其特征在于,
当根据所述语法元素的取值确定所述搜索范围为0时,还跳过“根据所述点云的位置确定所述点云中的点云点的莫顿码,根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序”的步骤。
57.根据权利要求55所述的设备,其特征在于,所述处理器根据所述点云中的点云点的排序和所述搜索范围对所述点云的属性值进行预测处理时,具体用于:
确定当前点云点的参考点云点,所述参考点云点与所述当前点云点在所述排序后的点云中的排序距离不大于所述搜索范围;
根据所述参考点云点的属性值和所述当前点云点的属性值,计算所述点云点的属性值的残差。
58.根据权利要求55所述的设备,其特征在于,当根据所述语法元素的取值确定所述搜索范围为0时,所述处理器对所述点云的属性值进行编码得到第二码流数据之前,还用于:
计算所述点云中的点云点的位置坐标对应的莫顿码;
根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序;
所述处理器对所述点云的属性值进行编码得到第二码流数据时,具体用于:
对所述排序后的点云的属性值进行编码得到第二码流数据。
59.根据权利要求53所述的设备,其特征在于,
所述标识信息包括第一标识,所述第一标识用于指示出现属性值的残差连续为0的点云点的数量。
60.根据权利要求53所述的设备,其特征在于,
所述标识信息包括第二标识,所述第二标识用于指示当前点云点的属性值的残差是否为n,n为正整数。
61.根据权利要求60所述的设备,其特征在于,所述n为1或2。
62.根据权利要求60所述的设备,其特征在于,所述第二标识具体用于指示当前点云点的属性值的残差与n的差值是否为0。
63.根据权利要求53所述的设备,其特征在于,当根据所述语法元素的取值确定所述搜索范围不为0时,所述处理器对所述点云的属性值的残差进行编码得到第一码流数据之前,还用于:
对所述点云的属性值的残差进行符号转换;
所述处理器对所述点云的属性值的残差进行编码得到第一码流数据时,具体用于:
对所述点云进行符合转换后的属性值的残差进行编码得到第一码流数据。
64.根据权利要求63所述的设备,其特征在于,
当根据所述语法元素的取值确定所述搜索范围为0时,还跳过“对所述点云的属性值进行符号转换”的步骤。
65.一种数据编码设备,其特征在于,包括:存储器和处理器,
所述存储器,用于存储程序;
所述处理器,用于调用所述程序,当所述程序被执行时,用于执行以下操作:
确定点云数据的语法元素的取值,所述点云数据包括所述点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测编码时的搜索范围;
当根据所述语法元素的取值确定所述搜索范围为0时,对所述点云的属性值进行编码得到码流数据,其中,所述码流数据中不包括用于指示至少一个点云点的属性值为0的标识。
66.根据权利要求65所述的设备,其特征在于,所述处理器对所述点云的属性值进行编码得到码流数据时,具体用于:
对所述点云的属性值进行二值化编码得到码流数据。
67.根据权利要求65所述的设备,其特征在于,
当根据所述语法元素的取值确定所述搜索范围为0时,跳过“对所述点云的属性值进行预测处理”的步骤。
68.根据权利要求67所述的设备,其特征在于,
所述“对所述点云的属性值进行预测处理”的步骤是发生在当根据所述语法元素的取值确定所述搜索范围不为0时。
69.根据权利要求67所述的设备,其特征在于,
当根据所述语法元素的取值确定所述搜索范围为0时,还跳过在所述“对所述点云的属性值进行预测处理”的步骤之前的“计算所述点云中的点云点的位置坐标对应的莫顿码,根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序”的步骤。
70.根据权利要求69所述的设备,其特征在于,所述“对所述点云的属性值进行预测处理”的步骤,包括:
确定当前点云点的参考点云点,所述参考点云点与所述当前点云点在所述排序后的点云中的排序距离不大于所述搜索范围;
根据所述参考点云点的属性值和所述当前点云点的属性值计算所述点云点的属性值的残差。
71.根据权利要求65所述的设备,其特征在于,所述处理器还用于:
计算所述点云中的点云点的位置坐标对应的莫顿码;
根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序;
所述处理器对所述点云的属性值进行编码得到码流数据时,具体用于:
对所述排序后的点云的属性值进行编码得到码流数据。
72.根据权利要求65所述的设备,其特征在于,
当根据所述语法元素的取值确定所述搜索范围为0时,还跳过“对所述点云的属性值进行符号转换”的步骤。
73.根据权利要求72所述的设备,其特征在于,
在当根据所述语法元素的取值确定所述搜索范围不为0时,存在“对所述点云的属性值的残差进行符号转换”的步骤。
74.根据权利要求65所述的设备,其特征在于,所述码流数据中不包括用于指示出现属性值连续为0的点云点的数量的标识。
75.根据权利要求65所述的设备,其特征在于,所述码流数据中不包括用于指示当前点云点的属性值是否为1的标识。
76.根据权利要求75所述的设备,其特征在于,所述码流数据中不包括用于指示当前点云点的属性值与1的差值是否为0的标识。
77.根据权利要求65所述的设备,其特征在于,所述码流数据中不包括用于指示当前点云点的属性值是否为2的标识。
78.根据权利要求77所述的设备,其特征在于,所述码流数据中不包括用于指示当前点云点的属性值与2的差值是否为0的标识。
79.一种数据解码设备,其特征在于,包括:存储器和处理器,
所述存储器,用于存储程序;
所述处理器,用于调用所述程序,当所述程序被执行时,用于执行以下操作:
从码流数据中解码点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测解码时的搜索范围;
当根据所述语法元素的取值确定所述搜索范围不为0时,对所述码流数据解码得到所述点云的属性值的残差,对所述点云的属性值的残差进行补偿处理,其中,所述码流数据中包括标识信息,所述标识信息用于指示至少一个点云点的属性值的残差为0;
当根据所述语法元素的取值确定所述搜索范围为0时,跳过“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤,对所述码流数据解码得到所述点云的属性值,其中,所述码流数据中不包括所述标识信息。
80.根据权利要求79所述的设备,其特征在于,所述处理器当根据所述语法元素的取值确定所述搜索范围为0时,对所述码流数据解码得到所述点云的属性值时,具体用于:
当根据所述语法元素的取值确定所述搜索范围为0时,对所述码流数据进行二值化的逆操作得到所述点云的属性值。
81.根据权利要求79所述的设备,其特征在于,所述点云数据还包括所述点云的位置坐标;
所述处理器当根据所述语法元素的取值确定所述搜索范围不为0时,所述对所述点云的属性值的残差进行补偿处理之前,还用于:
计算所述点云中的点云点的位置坐标对应的莫顿码;
根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序;
所述处理器对所述点云的属性值的残差进行补偿处理时,具体用于:
根据所述点云中的点云点的排序和所述搜索范围对所述点云的属性值的残差进行补偿处理。
82.根据权利要求81所述的设备,其特征在于,所述处理器根据所述点云中的点云点的排序和所述搜索范围对所述点云的属性值的残差进行补偿处理时,具体用于:
根据所述搜索范围确定当前点云点的参考点云点,所述参考点云点与所述当前点云点在所述排序后的点云中的排序距离不大于所述搜索范围;
根据所述当前点云点的属性值的残差和所述参考点云点的属性值确定所述当前点云点的属性值。
83.根据权利要求81所述的设备,其特征在于,
当根据所述语法元素的取值确定所述搜索范围为0时,还跳过所述“计算所述点云中的点云点的位置坐标对应的莫顿码,根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序”的步骤。
84.根据权利要求81所述的设备,其特征在于,所述处理器当根据所述语法元素的取值确定所述搜索范围为0时,所述对所述码流数据解码得到所述点云的属性值之前,还用于:
计算所述点云中的点云点的位置坐标对应的莫顿码;
根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序;
所述处理器对所述码流数据解码得到所述点云的属性值时,具体用于:
对码流数据解码得到所述排序后的点云的属性值。
85.根据权利要求79所述的设备,其特征在于,
所述标识信息包括第一标识,所述第一标识用于指示出现属性值的残差连续为0的点云点的数量。
86.根据权利要求79所述的设备,其特征在于,
所述标识信息包括第二标识,所述第二标识用于指示当前点云点的属性值的残差是否为n,n为正整数。
87.根据权利要求86所述的设备,其特征在于,所述n为1或2。
88.根据权利要求86所述的设备,其特征在于,所述第二标识具体用于指示当前点云点的属性值的残差与n的差值是否为0。
89.根据权利要求79所述的设备,其特征在于,当根据所述语法元素的取值确定所述搜索范围不为0时,所述处理器对所述点云的属性值的残差进行补偿处理之前,还用于:
对所述点云的属性值的残差进行符号转换;
所述处理器对所述点云的属性值的残差进行补偿处理时,具体用于:
对所述点云进行符合转换后的属性值的残差进行补偿处理。
90.根据权利要求79所述的设备,其特征在于,
当根据所述语法元素的取值确定所述搜索范围为0时,还跳过“对所述点云的属性值进行符号转换”的步骤。
91.一种数据解码设备,其特征在于,包括:存储器和处理器,
所述存储器,用于存储程序;
所述处理器,用于调用所述程序,当所述程序被执行时,用于执行以下操作:
从码流数据中解码点云数据的语法元素的取值,所述点云数据包括点云的属性值,所述语法元素用于指示所述点云的属性值在进行预测解码时的搜索范围;
当根据所述语法元素的取值确定所述搜索范围为0时,对所述码流数据解码得到所述点云的属性值,其中,所述码流数据中不包括标识信息。
92.根据权利要求91所述的设备,其特征在于,所述处理器对所述码流数据解码得到所述点云的属性值时,具体用于:
对所述码流数据进行二值化的逆操作得到所述点云的属性值。
93.根据权利要求91所述的设备,其特征在于,
当所述码流数据中不包括用于指示至少一个点云点的属性值为0的标识时,跳过“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤。
94.根据权利要求93所述的设备,其特征在于,
所述“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤是发生在所述点云数据的语法元素的取值的搜索范围不为0时。
95.根据权利要求93所述的设备,其特征在于,
当所述点云数据的语法元素的取值的搜索范围为0时,还跳过在所述“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤之前的“计算所述点云中的点云点的位置坐标对应的莫顿码;根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序”的步骤。
96.根据权利要求95所述的设备,其特征在于,所述“对所述码流数据中所述点云的属性值的残差进行补偿处理”的步骤,包括:
根据所述搜索范围确定当前点云点的参考点云点,所述参考点云点与所述当前点云点在所述排序后的点云中的排序距离不大于所述搜索范围;
根据所述当前点云点的属性值的残差和所述参考点云点的属性值确定所述当前点云点的属性值。
97.根据权利要求91所述的设备,其特征在于,所述处理器还用于:
计算所述点云中的点云点的位置坐标对应的莫顿码;
根据所述点云中的点云点的莫顿码对所述点云中的点云点进行排序;
所述处理器对所述码流数据解码得到所述点云的属性值时,具体用于:
对码流数据解码得到所述排序后的点云的属性值。
98.根据权利要求91所述的设备,其特征在于,
当根据所述语法元素的取值确定所述搜索范围为0时,还跳过“对所述点云的属性值进行符号转换”的步骤。
99.根据权利要求98所述的设备,其特征在于,
在当根据所述语法元素的取值确定所述搜索范围不为0时,存在“对所述点云的属性值的残差进行符号转换”的步骤。
100.根据权利要求91所述的设备,其特征在于,所述码流数据中不包括用于指示出现属性值连续为0的点云点的数量的标识。
101.根据权利要求91所述的设备,其特征在于,所述码流数据中不包括用于指示当前点云点的属性值是否为1的标识。
102.根据权利要求101所述的设备,其特征在于,所述码流数据中不包括用于指示当前点云点的属性值与1的差值是否为0的标识。
103.根据权利要求91所述的设备,其特征在于,所述码流数据中不包括用于指示当前点云点的属性值是否为2的标识。
104.根据权利要求103所述的设备,其特征在于,所述码流数据中不包括用于指示当前点云点的属性值与2的差值是否为0的标识。
105.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至52任一项所述方法。
CN201980039810.9A 2019-07-04 2019-07-04 一种数据编码、数据解码方法、设备及存储介质 Active CN112449754B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/094764 WO2021000334A1 (zh) 2019-07-04 2019-07-04 一种数据编码、数据解码方法、设备及存储介质

Publications (2)

Publication Number Publication Date
CN112449754A CN112449754A (zh) 2021-03-05
CN112449754B true CN112449754B (zh) 2024-03-08

Family

ID=74100497

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980039810.9A Active CN112449754B (zh) 2019-07-04 2019-07-04 一种数据编码、数据解码方法、设备及存储介质

Country Status (2)

Country Link
CN (1) CN112449754B (zh)
WO (1) WO2021000334A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112995662B (zh) * 2021-03-12 2022-10-25 北京大学深圳研究生院 一种点云的属性熵编码和熵解码的方法及设备
CN113096199B (zh) * 2021-03-12 2023-01-03 中山大学 一种基于莫顿码的点云属性预测方法、装置和介质
CN113014903B (zh) * 2021-03-15 2023-05-19 北京大学深圳研究生院 点云邻居确定、点云预测、点云编码、点云解码方法及设备
CN115412715B (zh) * 2021-05-26 2024-03-26 荣耀终端有限公司 一种点云属性信息的预测编解码方法及装置
CN115474046A (zh) * 2021-06-11 2022-12-13 维沃移动通信有限公司 点云属性信息编码方法、解码方法、装置及相关设备
CN116233386A (zh) * 2021-12-03 2023-06-06 维沃移动通信有限公司 点云属性编码方法、点云属性解码方法及终端
WO2023131132A1 (en) * 2022-01-04 2023-07-13 Beijing Bytedance Network Technology Co., Ltd. Method, apparatus, and medium for point cloud coding
WO2024008019A1 (en) * 2022-07-04 2024-01-11 Beijing Bytedance Network Technology Co., Ltd. Method, apparatus, and medium for point cloud coding
WO2024082153A1 (zh) * 2022-10-18 2024-04-25 Oppo广东移动通信有限公司 编解码方法、码流、编码器、解码器以及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101847262A (zh) * 2010-05-19 2010-09-29 北京航空航天大学 一种快速三维点云搜索匹配方法
CN108833927A (zh) * 2018-05-03 2018-11-16 北京大学深圳研究生院 一种基于删除量化矩阵中0元素的点云属性压缩方法
CN109257604A (zh) * 2018-11-20 2019-01-22 山东大学 一种基于tmc3点云编码器的颜色属性编码方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10897269B2 (en) * 2017-09-14 2021-01-19 Apple Inc. Hierarchical point cloud compression
CN108632621B (zh) * 2018-05-09 2019-07-02 北京大学深圳研究生院 一种基于层次划分的点云属性压缩方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101847262A (zh) * 2010-05-19 2010-09-29 北京航空航天大学 一种快速三维点云搜索匹配方法
CN108833927A (zh) * 2018-05-03 2018-11-16 北京大学深圳研究生院 一种基于删除量化矩阵中0元素的点云属性压缩方法
CN109257604A (zh) * 2018-11-20 2019-01-22 山东大学 一种基于tmc3点云编码器的颜色属性编码方法

Also Published As

Publication number Publication date
WO2021000334A1 (zh) 2021-01-07
CN112449754A (zh) 2021-03-05

Similar Documents

Publication Publication Date Title
CN112449754B (zh) 一种数据编码、数据解码方法、设备及存储介质
CN111699697B (zh) 一种用于点云处理、解码的方法、设备及存储介质
CN112385238B (zh) 一种数据编码、数据解码方法、设备及存储介质
US11699249B2 (en) Trimming search space for nearest neighbor determinations in point cloud compression
US11936846B2 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
Nguyen et al. Multiscale deep context modeling for lossless point cloud geometry compression
CN113632492A (zh) 一种用于点云处理、解码的方法、设备及存储介质
US11395005B2 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
US20210314612A1 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
US20220376702A1 (en) Methods and devices for tree switching in point cloud compression
EP3595179A1 (en) Methods and devices for lossy coding of point cloud occupancy
WO2021207376A1 (en) Predictor index signaling for predicting transform in geometry-based point cloud compression
US20220345732A1 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
CN112740702A (zh) 点云的编解码方法和装置
WO2022147015A1 (en) Hybrid-tree coding for inter and intra prediction for geometry coding
WO2022131948A1 (en) Devices and methods for sequential coding for point cloud compression
CN113678460B (zh) 一种数据编码、数据解码方法、设备及存储介质
CN115379191B (zh) 一种点云解码方法、点云编码方法及相关设备
CN114598883A (zh) 点云属性的预测方法、编码器、解码器及存储介质
CN116250008A (zh) 点云的编码、解码方法、编码器、解码器以及编解码系统
CN115379190B (zh) 一种点云处理方法、装置及计算机设备、存储介质
CN115131449A (zh) 点云处理方法、装置及计算机设备、存储介质
CN117857516A (zh) 一种点云编码方法、点云解码方法及相关设备
WO2020248562A1 (zh) 一种用于点云处理、解码的方法、设备及存储介质
CN117097898A (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
GR01 Patent grant
GR01 Patent grant