CN116458158A - 帧内预测方法及装置、编解码器、设备、存储介质 - Google Patents
帧内预测方法及装置、编解码器、设备、存储介质 Download PDFInfo
- Publication number
- CN116458158A CN116458158A CN202080107272.5A CN202080107272A CN116458158A CN 116458158 A CN116458158 A CN 116458158A CN 202080107272 A CN202080107272 A CN 202080107272A CN 116458158 A CN116458158 A CN 116458158A
- Authority
- CN
- China
- Prior art keywords
- node
- nodes
- attribute
- value
- coplanar
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 246
- 238000004364 calculation method Methods 0.000 claims description 31
- 108091026890 Coding region Proteins 0.000 claims description 28
- 238000004590 computer program Methods 0.000 claims description 20
- 239000000945 filler Substances 0.000 claims description 4
- 238000004458 analytical method Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 description 47
- 238000010586 diagram Methods 0.000 description 28
- 230000006835 compression Effects 0.000 description 19
- 238000007906 compression Methods 0.000 description 19
- 238000012545 processing Methods 0.000 description 15
- 238000012360 testing method Methods 0.000 description 15
- 101150019148 Slc7a3 gene Proteins 0.000 description 12
- 238000013139 quantization Methods 0.000 description 11
- 230000009466 transformation Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000006872 improvement Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000013523 data management Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 230000001737 promoting effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000010187 selection method Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 238000011960 computer-aided design Methods 0.000 description 1
- 238000007654 immersion Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 210000000056 organ Anatomy 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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
- H04N19/186—Methods 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 the unit being a colour or a chrominance component
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请实施例公开了帧内预测方法及装置、编解码器、设备、存储介质;其中,所述方法包括:根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,M为正整数;其中,对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据插值节点的属性重建值,得到所述不满足条件的共面节点的属性值,所述插值节点既是所述不满足条件的共面节点的共面节点也是所述当前节点的共线节点,所述条件为在所述当前节点之前解码的非空节点。
Description
本申请实施例涉及点云处理技术,涉及但不限于帧内预测方法及装置、编解码器、设备、存储介质。
点云是空间中一组无规则分布的、表达三维物体或场景的空间结构及表面属性的离散点集。点云数据通常包括三维位置信息所组成的几何信息(x,y,z)、三维颜色信息(r,g,b)和一维反射率信息(r)所组成的属性信息。
点云可以灵活方便地表达三维物体或场景的空间结构及表面属性,并且由于点云通过直接对真实物体采样获得,在保证精度的前提下能够提供极强的真实感,因而应用广泛,其范围包括虚拟现实游戏、计算机辅助设计、地理信息***、自动导航***、数字文化遗产、自由视点广播、三维沉浸远程呈现和生物组织器官三维重建等。
伴随着应用需求的增长,海量三维(three Dimensional,3D)点云数据的处理遭遇存储空间和传输带宽限制的瓶颈。为更好地实现数据管理,节省服务器的存储空间,降低服务器与客户端之间的传输流量及传输时间,点云压缩成为促进点云产业发展的关键问题。
点云压缩主要分为几何压缩和属性压缩,其中属性压缩中的帧内预测(即节点的属性值预测)的准确性的高低,直接影响着编解码效率。
发明内容
有鉴于此,本申请实施例提供的帧内预测方法及装置、编解码器、设备、存储介质,能够提高帧内预测的准确性,从而提高点云的编解码效率。本申请实施例提供的帧内预测方法及装置、编解码器、设备、存储介质,是这样实现的:
本申请实施例提供的帧内预测方法,所述方法包括:根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,M为正整数;其中,对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据插值节点的属性重建值,得到所述不满足条件的共面节点的属性值,所述插值节点既是所述不满足条件的共面节点的共面节点也是所述当前节点的共线节点,所述条件为在所述当前节点之前解码的非空节点;或者,对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据预设的第一常数,得到所述不满足条件的共面节点的属性值,所述条件为在所述当前节点之前解码的非空节点。
在一些实施例中,所述根据插值节点的属性重建值,得到所述不满足条件的共面节点的属性值,包括:确定每一所述插值节点的权重值;根据每一所述插值节点的权重值,对每一所述插值节点的属性重建值进行加权平均计算,得到所述不满足条件的共面节点的属性值。
在一些实施例中,所述确定每一所述插值节点的权重值,包括:将不满足所述条件的插值节点的权重值确定为预设的第二常数;将满足所述条件的插值节点的权重值确定为预设的第三常数。
在一些实施例中,所述根据插值节点的属性重建值,得到所述不满足条件的共面节点的属性值,包括:将所述不满足条件的共面节点的所有插值节点中的一个节点的属性重建值,作为所述不满足条件的共面节点的属性值。
在一些实施例中,所述根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,包括:将所述M个共面节点作为预测节点;根据所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值。
在一些实施例中,所述根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,包括:根据所述M个共面节点得到K个预测节点;其中,K为大于0的整数;根据所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值。
在一些实施例中,所述根据所述M个共面节点得到K个预测节点,包括:按照所述M个共面节点的特定编码顺序,得到K个预测节点;其中,当所述共面节点为所述满足条件的共面节点或至少有一个插值节点满足所述条件的所述不满足条件的共面节点时,将所述共面节点确定为所述预测节点;在所述满足条件的共面节点与至少有一个插值节点满足所述条件的所述不满足条件的共面节点的节点总数大于或等于K的情况下,将所述节点总数对应的节点中按照特定编码顺序排序的前K个节点,确定为所述预测节点;在所述节点总数大于0且小于K的情况下,确定填充节点的属性值;将所述节点总数对应的节点和所述填充节点,确定为所述预测节点。
在一些实施例中,所述确定填充节点的属性值,包括:将所述节点总数对应的节点中按照所述特定编码顺序排序的第一个节点的属性值,确定为所述填充节点的属性值;或者,将所述节点总数对应的节点的属性值的均值,确定为所述填充节点的属性值;或者,将所述第一个节点的共面节点和/或共线节点的属性值的均值,确定为所述填充节点的属性值;或者,将预设的第四常数确定为所述填充节点的属性值。
在一些实施例中,所述根据所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值,包括:在任一所述预测节点满足所述条件的情况下,或者,在任一所述预测节点为所述不满足条件的共面节点且所述不满足条件的共面节点的至少一个插值节点满足所述条件的情况下,确定每一所述预测节点的权重值;根据每一所述预测节点的权重值,对每一所述预测节点的属性值进行加权平均计算,得到所述当前节点的属性预测值。
在一些实施例中,所述确定每一所述预测节点的权重值,包括:将每一满足所述条件的预测节点的权重值,确定为预设的第五常数;将属于所述不满足条件的共面节点且所有插值节点均不满足所述条件的预测节点的权重值,确定为预设的第六常数;将属于所述不满足条件的共面节点且至少有一个插值节点满足所述条件的预测节点的权重值确定为所述预设的第七常数。
在一些实施例中,所述根据每一所述预测节点的权重值,对每一所述预测节点的属性值进行加权平均计算,得到所述当前节点的属性预测值,包括:在所述预测节点的数目为2的幂次的情况下,通过乘法器对每一所述预测节点的属性值与对应的权重值进行乘法运算,得到第一运算结果;通过加法器对每一所述预测节点对应的所述第一运算结果进行加法运算,得到第二运算结果;通过移位器对所述第二运算结果和所述预测节点的数目进行移位运算,得到所述当前节点的属性预测值。
在一些实施例中,所述根据每一所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值,还包括:在每一所述预测节点均属于所述不满足条件的共面节点且每一所述预测节点的所有插值节点均不满足所述条件的情况下,根据在所述当前节点之前的至少一个完成解码的节点的属性重建值,确定所述当前节点的属性预测值。
在一些实施例中,所述根据在当前节点之前的至少一个完成解码的节点的属性重建值,确定所述当前节点的属性预测值,包括:将所述当前节点的前一完成解码的节点的属性重建值,确定为所述当前节点的属性预测值。
在一些实施例中,所述方法还包括:从接收的属性码流中,解析出所述当前节点的残差;根据所述当前节点的属性预测值与所述残差,确定所述当前节点的属性重建值。
本申请实施例提供的一种点云解码方法,所述方法包括:对接收的属性码流进行解析,得到当前节点的残差;对所述当前节点执行如本申请实施例所述的方法中的步骤,得到所述当前节点的属性预测值;根据所述当前节点的属性预测值与所述残差,确定所述当前节点的属性重建值。
本申请实施例提供的一种帧内预测方法,所述方法包括:根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,M为正整数;其中,对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据插值节点的属性重建值,得到所述不满足条件的共面节点的属性值,所述插值节点既是所述不满足条件的共面节点的共面节点也是所述当前节点的共线节点,所述条件为在所述当前节点之前编码的非空节点;或者,对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据预设的第一常数,得到所述不满足条件的共面节点的属性值,所述条件为在所述当前节点之前编码的非空节点。
在一些实施例中,所述根据插值节点的属性重建值,得到所述不满足条件的共面节点的属性值,包括:确定每一所述插值节点的权重值;根据每一所述插值节点的权重值,对每一所述插值节点的属性重建值进行加权平均计算,得到所述不满足条件的共面节点的属性值。
在一些实施例中,所述确定每一所述插值节点的权重值,包括:将不满足所述条件的插值节点的权重值确定为预设的第二常数;将满足所述条件的插值节点的权重值确定为预设的第三常数。
在一些实施例中,所述插值节点满足所述条件。
在一些实施例中,所述根据插值节点的属性重建值,得到所述不满足条件的共面节点的属性值,包括:将所述不满足条件的共面节点的所有插值节点中的一个节点的属性重建值,作为所述不满足条件的共面节点的属性值。
在一些实施例中,所述根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,包括:将所述M个共面节点作为预测节点;根据所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值。
在一些实施例中,所述根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,包括:根据所述M个共面节点得到K个预测节点;其中,K为大于0的整数;根据所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值。
在一些实施例中,K为2的幂次。
在一些实施例中,所述根据所述M个共面节点得到K个预测节点,包括:按照所述M个共面节点的特定编码顺序,得到K个预测节点;其中,当所述共面节点为所述满足条件的共面节点或至少有一个插值节点满足所述条件的所述不满足条件的共面节点时,将所述共面节点确定为所述预测节点;在所述满足条件的共面节点与至少有一个插值节点满足所述条件的所述不满足条件的共面节点的节点总数大于或等于K的情况下,将所述节点总数对应的节点中按照特定编码顺序排序的前K个节点,确定为所述预测节点;在所述节点总数大于0且小于K的情况下,确定填充节点的属性值;将所述节点总数对应的节点和所述填充节点,确定为所述预测节点。
在一些实施例中,所述确定填充节点的属性值,包括:将所述节点总数对应的节点中按照所述特定编码顺序排序的第一个节点的属性值,确定为所述填充节点的属性值;或者,将所述节点总数对应的节点的属性值的均值,确定为所述填充节点的属性值;或者,将所述第一个节点的共面节点和/或共线节点的属性值的均值,确定为所述填充节点的属性值;或者,将预设的第四常数确定为所述填充节点的属性值。
在一些实施例中,所述根据所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值,包括:在任一所述预测节点满足所述条件的情况下,或者,在任一所述预测节点为所述不满足条件的共面节点且所述不满足条件的共面节点的至少一个插值节点满足所述条件的情况下,确定每一所述预测节点的权重值;根据每一所述预测节点的权重值,对每一所述预测节点的属性值进行加权平均计算,得到所述当前节点的属性预测值。
在一些实施例中,所述确定每一所述预测节点的权重值,包括:将每一满足所述条件的预测节点的权重值,确定为预设的第五常数;将属于所述不满足条件的共面节点且所有插值节点均不满足所述条件的预测节点的权重值,确定为预设的第六常数;将属于所述不满足条件的共面节点且至少有一个插值节点满足所述条件的预测节点的权重值确定为所述预设的第七常数。
在一些实施例中,所述根据每一所述预测节点的权重值,对每一所述预测节点的属性值进行加权平均计算,得到所述当前节点的属性预测值,包括:在所述预测节点的数目为2的幂次的情况下,通过乘法器对每一所述预测节点的属性值与对应的权重值进行乘法运算,得到第一运算结果;通过加法器对每一所述预测节点对应的所述第一运算结果进行加法运算,得到第二运算结果;通过移位器对所述第二运算结果和所述预测节点的数目进行移位运算,得到所述当前节点的属性预测值。
在一些实施例中,所述根据每一所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值,还包括:在每一所述预测节点均属于所述不满足条件的共面节点且每一所述预测节点的所有插值节点均不满足所述条件的情况下,根据在所述当前节点之前的至少一个完成编码的节点的属性重建值,确定所述当前节点的属性预测值。
在一些实施例中,所述根据在当前节点之前的至少一个完成编码的节点的属性重建值,确定所述当前节点的属性预测值,包括:将所述当前节点的前一完成编码的节点的属性重建值,确定为所述当前节点的属性预测值。
在一些实施例中,所述M个共面节点为所述当前节点的所有共面节点。
本申请实施例提供的一种点云编码方法,所述方法包括:对点云的当前节点执行如本申请实施例所述的方法中的步骤,得到所述当前节点的属性预测值;确定所述当前节点的属性预测值与所述当前节点的原始属性值之间的残差;将所述当前节点的残差编码为属性码流。
本申请实施例提供的一种帧内预测装置,包括:预测模块,用于根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,M为正整数;其中,对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据插值节点的属性重建值,得到所述不满足条件的共面节点的属性值,所述插值节点既是所述不满足条件的共面节点的共面节点也是所述当前节点 的共线节点,所述条件为在所述当前节点之前解码的非空节点;或者,对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据预设的第一常数,得到所述不满足条件的共面节点的属性值,所述条件为在所述当前节点之前解码的非空节点。。
本申请实施例提供的一种解码装置,包括:解析模块,用于对接收的属性码流进行解析,得到当前节点的残差;帧内预测模块,用于执行本申请实施例所述的方法中的步骤,得到当前节点的属性预测值;解码模块,用于根据所述当前节点的属性预测值与所述残差,确定所述当前节点的属性重建值。
本申请实施例提供的一种解码器,所述解码器包括存储器和处理器;其中,所述存储器,用于存储能够在所述处理器上运行的计算机程序;所述处理器,用于在运行所述计算机程序时,执行如本申请实施例所述的方法。
本申请实施例提供的一种帧内预测装置,包括:预测模块,用于根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,M为正整数;其中,对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据插值节点的属性重建值,得到所述不满足条件的共面节点的属性值,所述插值节点既是所述不满足条件的共面节点的共面节点也是所述当前节点的共线节点,所述条件为在所述当前节点之前编码的非空节点;或者,对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据预设的第一常数,得到所述不满足条件的共面节点的属性值,所述条件为在所述当前节点之前编码的非空节点。
本申请实施例提供的一种编码装置,包括:帧内预测模块,用于执行如本申请实施例所述的方法中的步骤,得到当前节点的属性预测值;确定模块,用于确定所述当前节点的属性预测值与所述当前节点的原始属性值之间的残差;编码模块,用于将所述当前节点的残差编码为属性码流。
本申请实施例提供的一种编码器,所述编码器包括存储器和处理器;其中,所述存储器,用于存储能够在所述处理器上运行的计算机程序;所述处理器,用于在运行所述计算机程序时,执行如本申请实施例所述的方法。
本申请实施例提供的电子设备,包括存储器和处理器;其中,所述存储器,用于存储能够在所述处理器上运行的计算机程序;所述处理器,用于在运行所述计算机程序时,执行如本申请实施例所述的方法。
本申请实施例提供的计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现本申请实施例所述的方法。
在本申请实施例中,对于当前节点的不满足条件的共面节点的属性值,通过不满足条件的共面节点的插值节点的属性值插值得到;如此,就使得电子设备能够使用不满足条件的共面节点的属性值进行当前节点的属性预测,即电子设备在进行属性预测时,不仅基于满足条件的共面节点和满足条件的共线节点,还结合了不满足条件的共面节点的属性值进行帧内预测,可见该方法对当前节点的属性预测考虑了更多的信息,这样能够提高帧内预测的准确性,进而提高编码效率。
此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本申请的实施例,并与说明书一起用于说明本申请的技术方案。
图1为三维点云图像和局部放大图的示意图;
图2为一幅点云图像及其对应的数据存储格式的示意图;
图3A为音视频编码标准(Audio Video Standard,AVS)点云压缩专题组所提供的点云压缩参考平台,也即点云参考模型(Point Cloud Reference Model,PCRM)的编码框架示意图;
图3B为AVS点云压缩专题组所提供的点云压缩参考平台PCRM的解码框架示意图;
图4A为将整幅点云放置在一个正方体包围盒的示意图;
图4B为对点云的八叉树划分过程示意图;
图5为莫顿码在二维空间中的编码顺序的示意图;
图6莫顿码在三维空间中的编码顺序的示意图;
图7A为当前节点与其共面节点的示意图;
图7B为当前节点与其共线节点的示意图;
图8为本申请实施例帧内预测方法的实现流程示意图;
图9为本申请实施例帧内预测方法的实现流程示意图;
图10为本申请实施例帧内预测方法的实现流程示意图;
图11为本申请实施例帧内预测方法的实现流程示意图;
图12为本申请实施例帧内预测方法的实现流程示意图;
图13为本申请实施例帧内预测方法的实现流程示意图;
图14为当前节点的所有共面节点的示意图;
图15为不满足条件的共面节点的插值节点的示意图;
图16为本申请实施例帧内预测装置的结构示意图;
图17为本申请实施例编码装置的结构示意图;
图18为本申请实施例帧内预测装置的结构示意图;
图19为本申请实施例解码装置的结构示意图;
图20为本申请实施例的电子设备的硬件实体示意图;
图21为本申请实施例的编码器的硬件实体示意图;
图22为本申请实施例的解码器的硬件实体示意图。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请的具体技术方案做进一步详细描述。以下实施例用于说明本申请,但不用来限制本申请的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
需要指出,本申请实施例所涉及的术语“第一\第二\第三”是为了区别类似或不同的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
本申请实施例描述的编解码框架以及业务场景是为了更加清楚地说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定。本领域普通技术人员可知,随着编解码框架的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
在对本申请实施例进行进一步说明之前,对本申请实施例涉及的点云的数据形式、编解码框架和点云的规则化处理等进行说明。其中,本申请实施例描述的编解码框架以及业务场景是为了更加清楚地说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定。本领域普通技术人员可知,随着编解码框架的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
(1)点云的数据形式
点云是空间中一组无规则分布的、表达三维物体或场景的空间结构及表面属性的离散点集。举例来说,如图1所示,其中,101为三维点云图像。102为该点云图像的局部放大图,可以看到,点云表面是由分布稠密的点所组成的。
点云中的点在三维空间中的分布具有随机性和不规则性,因此需要记录每一个点在空间中的位置,才能完整地表达一幅点云。每一个位置均有对应的属性信息,通常为红绿蓝(Red Green Blue,RGB)颜色值,颜色值反映的是物体的色彩;反射率(reflectance)值也是比较常见的属性信息,反射率值反映的是物体的表面材质。因此,点云数据通常包括三维位置信息所组成的几何信息(x,y,z)、三维颜色信息(r,g,b)和一维反射率信息(r)所组成的属性信息。
如图2所示为一幅点云图像及其对应的数据存储格式,其中,201提供了点云图像的六个观看角度;202展示了该点云图像的数据存储格式,由文件头信息部分和数据部分组成,头信息包含了数据格式、数据表示类型、点云总点数、以及点云所表示的内容,如202中的点云为“.ply”格式,由ASCII码表示,总点数为207242,每个点具有三维位置信息xyz和三维颜色信息rgb。
(2)点云压缩的相关介绍
点云的采集主要有以下途径:计算机生成、3D激光扫描和3D摄影测量等。计算机可以生成虚拟三维物体及场景的点云;3D激光扫描可以获得静态现实世界三维物体或场景的点云,每秒可以获 取百万级点云;3D摄影测量可以获得动态现实世界三维物体或场景的点云,每秒可以获取千万级点云。这些技术降低了点云数据获取成本和时间周期,提高了数据的精度。点云数据的获取方式的变革,使得大量点云数据的获取成为可能。然而,伴随着应用需求的增长,海量3D点云数据的处理遭遇存储空间和传输带宽限制的瓶颈。
以帧率为30帧每秒(fps)的点云视频为例,每帧点云的点数为70万,每个点具有浮点型(float)的坐标信息xyz和uchar类型的颜色信息RGB,则10s的点云视频的数据量大约为0.7million·(4Byte·3+1Byte·3)·30fps·10s=3.15GB,而YUV采样格式为4:2:0,帧率为24fps的1280·720二维视频,其10s的数据量约为12·80·72·012bit≈,10s的两视角3D视频的数据量约为0.33·2=0.66GB。由此可见,点云视频的数据量远超过相同时长的二维视频和三维视频的数据量。因此,为更好地实现数据管理,节省服务器的存储空间,降低服务器与客户端之间的传输流量及传输时间,点云压缩成为促进点云产业发展的关键问题。
点云压缩通常采用对点云几何信息和点云属性信息分别进行压缩的方式。在编码端,首先在几何编码器中编码点云几何信息,得到重建几何信息;然后将重建几何信息作为附加信息输入到属性编码器中,从而辅助点云属性信息的压缩;在解码端,首先在几何解码器中解码点云几何信息,然后将解码后的几何信息作为附加信息输入到属性解码器中,辅助点云属性信息的压缩。整个编解码器由预处理/后处理、几何编码/解码、属性编码/解码几部分组成。
图3A为AVS点云压缩专题组所提供的点云压缩参考平台PCRM的编码框架,图3B为AVS点云压缩专题组所提供的点云压缩参考平台PCRM的解码框架。
对于PCRM参考软件,如图3A所示,在编码端的几何编码部分,首先,对采集得到的几何信息进行预处理,通过坐标平移将几何原点归一化到点云空间中的最小值位置,通过坐标量化将几何信息从浮点型转化为整型,得到规则化的几何信息,即得到规则化的点云空间,从而便于后续的规则化处理;然后,对规则化的几何信息进行几何编码。例如,在一些实施例中,可以采用八叉树结构对规则化的点云空间进行递归划分,每次将当前节点划分成八个相同大小的子块,并判断每个子块的占***字情况,当子块内没有点时记为空,否则记为非空,在递归划分的最后一层记录所有块的占***字信息,并进行编码。
如图3A所示,通过八叉树结构表达的几何信息一方面输入到几何熵编码器中形成几何码流,另一方面在编码器内进行几何重建处理,重建后的几何信息作为附加信息输入到属性编码器中。在属性编码部分,首先对采集得到的属性信息进行预处理,由于几何信息在几何编码之后有所异动,因此需要为几何编码后的每一个点重新分配属性值,这个过程叫做属性重上色,此外,如果处理的属性信息为颜色信息,还需要将原始颜色进行颜色空间变换,将其转变成更符合人眼视觉特性的YUV色彩空间;然后对预处理后的属性信息进行属性编码。在一些实施例中,对于属性编码,首先需要将点云进行重排序,重排序的方式是莫顿码,因此属性编码的遍历顺序为莫顿顺序,PCRM中的属性预测方法为基于莫顿顺序的单点预测,即按照莫顿顺序从当前待编码点(当前节点)向前回溯一个点,找到的点为当前待编码点的预测参考点(预测节点),然后将预测参考点的属性重建值作为属性预测值,属性残差为当前待编码点的预处理后的属性值与属性预测值之间的差值;最后对残差进行量化,将量化残差输入到属性熵编码器中形成属性码流。
在解码端,如图3B所示,采用对几何码流和属性码流分别进行解码的方式。在几何码流的解码部分,首先对几何码流进行熵解码,得到每个节点的几何信息,然后按照与几何编码相同的方式构建八叉树结构,重建出坐标变换后的、通过八叉树结构表达的几何信息,一方面将该信息进行坐标反量化和反平移,得到解码后的几何信息,另一方面将解码后的几何信息作为附加信息输入到属性解码器中。在属性码流的解码部分,按照与编码端相同的方式构建莫顿顺序,先对属性码流进行熵解码,得到量化后的残差信息;然后对残差信息进行反量化,得到残差值;类似地,按照与属性编码相同的方式,获得当前待解码点的属性预测值,然后将属性预测值与残差值相加,可以恢复出当前待解码点的YUV属性值;最后,经过颜色空间反变换得到解码后的属性信息。
(3)点云的规则化处理
由于点云在空间中无规则分布的特性,给编码过程带来了挑战,因此采用递归八叉树的结构,将点云中的点规则化地表达成立方体的中心。如图4A所示,首先将整幅点云放置在一个正方体包围盒内,点云中点的坐标表示为(x
q,y
q,z
q),q=0,...,Q-1,其中,Q是点云的总点数,点云在x、y、z方向上的边界值,如下式(1)至式(6)所示,分别为:
x
min=min(x
0,x
1,...x
q-1) 式(1);
y
min=min(y
0,y
1,...y
q-1) 式(2);
z
min=min(z
0,z
1,...z
q-1) 式(3);
x
max=max(x
0,x
1,...x
q-1) 式(4);
y
max=max(y
0,y
1,...y
q-1) 式(5);
z
max=max(z
0,z
1,...z
q-1) 式(6);
则包围盒的原点(x
origin,y
origin,z
origin)可以根据下式(7)至式(9)计算得到:
x
origin=int(floor(x
min)) 式(7);
y
origin=int(floor(y
min)) 式(8);
z
origin=int(floor(z
min)) 式(9);
包围盒在x、y、z方向上的尺寸可以根据下式(10)至式(12)计算得到:
BoudingBoxSize
x=int(x
max-x
origin)+1 式(10);
BoudingBoxSize
y=int(y
max-y
origin)+1 式(11);
BoudingBoxSize
z=int(z
max-z
origin)+1 式(12);
然后,如图4B所示,首先对正方体包围盒进行八叉树划分,每次得到八个子块,然后对子块中的非空块(即包含点的块)进行再一次的八叉树划分,如此递归划分直到某个深度,将最终大小的非空子块称作voxel,每个voxel中包含一个或多个点,将这些点的几何位置归一化为voxel的中心点(节点),该中心点的属性值取voxel中所有点的属性值的平均值(原始属性值)。
可以理解地,将点云规则化为空间中的块,有利于点云中点与点的关系描述,进而能够表达特定的编码顺序,按照一定的顺序编码每一个voxel,即编码voxel所代表的点(或称“节点”)。一种常用的编码顺序为交叉分离式的莫顿顺序,图5展示了莫顿码在二维空间中的编码顺序,以8×8大小的块为例,其中箭头的顺序表示莫顿顺序下节点的编码顺序。501为块中2×2个像素的“z”字形莫顿编码顺序,502为4个2×2块之间的“z”字形莫顿编码顺序,503为4个4×4块之间的“z”字形莫顿编码顺序,组成为整个8×8块的莫顿编码顺序。扩展到三维空间中的莫顿编码顺序如图6所示,图中展示了16个节点,每个“z”字内部,每个“z”与“z”之间的莫顿编码顺序都是先沿x轴方向编码,再沿y轴,最后沿z轴。
(4)点云压缩中的属性帧内预测
点云压缩中的属性帧内预测部分,对于颜色属性,主要参考当前节点的相邻节点对当前节点进行预测,根据属性预测值与当前节点的原始属性值计算残差信息后经量化等过程,将残差信息编入码流后传输到解码端;解码端接收并解析码流后,经反变换与反量化等步骤得到残差信息,解码端以相同过程预测得到属性预测值,与残差信息叠加后得到当前节点的属性重建值。
在此过程中,属性帧内预测利用节点与节点之间的几何关系,以当前节点的几何共面、共线节点作为预测节点,同时预测节点需要满足的条件是在当前节点之前编码,然后将权重值设为预测节点与当前节点的几何欧氏距离的倒数乘2,即共面节点权重为2,共线节点权重为1,计算所有预测节点的属性重建值的加权平均值为属性预测值(特别地,对于编码的第一个节点,没有参考点进行预测,其属性预测值直接设为0)。根据以下这两个条件确定预测节点,即:
条件a)与当前节点满足共面、共线关系;
条件b)在当前节点之前编码。
如图7所示,假设当前节点O的序号为7,共有6个面,12条边,如图7A所示,共面节点有3、5、6、14、21和35,如图7B所示,共线节点有1、2、4、10、12、17、20、28、33、34、42和49。
在所有这些共面节点和共线节点中,无论当前节点的位置如何,始终满足“在当前节点之前编码”条件的节点为共面节点3、5和6以及共线节点1、2和4,因此预测节点为共面节点3、5和6 以及共线节点1、2和4,根据下式(13)计算得到当前节点的属性预测值为所有预测节点的属性重建值的加权平均值:
其中,
为预测节点的属性重建值,w
i为预测节点的权重,当预测节点为空节点时,w
i=0。
假设所有预测节点都为空节点,则直接以当前节点的莫顿前序点(即莫顿编码顺序下的前一个节点,该节点一定满足在当前节点之前编码)作为预测节点,属性预测值为莫顿前序点的属性重建值。
(5)属性帧内预测在点云编码框架中的位置
如图3A和图3B所示,该技术作用于PCRM点云编码框架中的帧内预测部分,对编码端和解码端同时作用,由于相关PCRM的编解码框架仅涉及单帧,因此属性预测特指帧内预测。
PCRM的属性编码器的实施方法如下。几何重建点云被八叉树递归划分成若干个正方体voxel,每个voxel中的节点按照莫顿编码顺序分别进行帧内预测过程计算属性预测值,对于编码的第一个节点执行如下的a1)、c1)、d1)过程,对于其余节点执行b1)、c1)、d1)过程:
a1)当前节点为编码的第一个节点时,此时没有参考点进行预测,其属性预测值直接设为0;
b1)以当前节点的共面节点3、5和6以及共线节点1、2和4作为预测节点,根据下式(14)计算所有预测节点的属性重建值的加权平均值,将该值作为当前节点的属性预测值:
其中,
为预测节点的属性重建值,w
i为预测节点的权重,当预测节点为空节点时,w
i=0。
当所有预测节点都为空节点时,直接以当前节点的莫顿前序点(即莫顿顺序下的前一个节点,该节点在当前节点之前编码)作为预测节点,属性预测值为莫顿前序点的属性重建值;
c1)残差为当前点的原始属性值和属性预测值之间的差,然后对残差进行变换、量化等操作;
d1)将属性预测值与反量化等操作后的残差信息叠加,得到当前节点的属性重建值,该值用来作为后续编码单元的参考信息。
PCRM的属性解码器的实施方法如下。几何重建点云被八叉树递归划分成若干个正方体voxel,每个voxel中的节点按照与编码过程相同的莫顿顺序分别进行帧内预测过程计算属性预测值,对于解码的第一个节点执行a2)、c2)过程,其余点执行b2)、c2)过程:
a2)当前节点为解码的第一个节点时,没有参考点进行预测,其属性预测值直接设为0;
b2)以当前节点的共面节点3、5和6以及共线节点1、2和4作为预测节点,根据下式(15)计算所有预测节点的属性重建值的加权平均值,将该值作为当前节点的属性预测值:
其中,
为预测节点的属性重建值,w
i为预测节点的权重,当预测节点为空节点时,w
i=0。
当所有预测节点都为空节点时,直接以当前节点的莫顿前序点(即莫顿顺序下的前一个节点,该节点一定满足在当前节点之前解码)作为预测节点,属性预测值为莫顿前序点的属性重建值;
c2)从码流中读取当前节点的残差信息,经反量化等操作后与当前节点的属性预测值进行叠加,得到当前节点的属性重建值,该值可以用来作为后续编码单元的参考信息。
然而,PCRM所采用的上述帧内预测方法,局部使用到了当前节点共面和/或共线节点的参考信息,仅以当前节点的左、前和下方的共面节点以及共线节点作为预测节点,无法使用到来自其右、后、上方的参考信息,从而导致帧内预测不够准确,进而影响到编码效率的提升。
有鉴于此,本申请实施例提供一种帧内预测方法,所述方法适用于编码端,该方法可以应用于具有信息处理能力的电子设备,所述电子设备可以是电视机、投影仪、手机、计算机、平板电脑、虚拟现实(Virtual Reality,VR)头戴设备等任何具有点云视频编解码功能或者仅有编码功能的设备。所述帧内预测方法所实现的功能可以通过所述电子设备中的处理器调用程序代码来实现,当然程序 代码可以保存在计算机存储介质中。可见,所述电子设备至少包括处理器和存储介质。
图8为本申请实施例帧内预测方法的实现流程示意图,如图8所示,所述方法可以包括以下步骤81至步骤84:
步骤81,确定当前节点的共面节点是否满足条件;如果是,执行步骤82;否则,执行步骤83;其中,所述条件为在所述当前节点之前编码的非空节点;
在一些实施例中,可以在当前节点不是第一个待编码的节点的情况下,执行步骤81;在当前节点是第一个待编码的节点的情况下,将所述当前节点的属性预测值赋予一常数,完成该节点的帧内预测,其中,该常数可以是任意值,例如,该常数为0。
可以理解地,解码顺序与编码顺序是一致的。因此,这里第一个待编码的节点是指按照特定编码顺序排序的第一个节点。
步骤82,将满足条件的共面节点的属性重建值作为属性值;
可以理解地,如果共面节点是在当前节点之前编码的非空节点,说明该节点的属性重建值是“可得的”,因此可以将该共面节点的属性重建值作为属性值。
如果共面节点不满足该条件,即共面节点为空节点或者共面节点在当前节点之前未编码,说明该节点的属性重建值是“不可得的”,此时可以根据步骤83得到不满足条件的共面节点的属性值,或者,还可以根据预设的第一常数,得到所述不满足条件的共面节点的属性值。例如,将所述预设的第一常数作为所述不满足条件的共面节点的属性值。其中,所述第一常数可以是任意值。
步骤83,根据插值节点的属性重建值,得到不满足条件的共面节点的属性值;其中,所述插值节点既是所述不满足条件的共面节点的共面节点也是所述当前节点的共线节点;
在一些实施例中,可以这样实现步骤83:将所述不满足条件的共面节点的所有插值节点中的一个节点的属性重建值,作为所述不满足条件的共面节点的属性值。需要说明的是,对于采用所述不满足条件的共面节点的所有插值节点中的哪一个节点的属性重建值,作为所述不满足条件的共面节点的属性值,在本申请中不做限定。例如,可以将该所有插值节点中与共面节点的距离(比如欧式距离)最小或者小于距离阈值的节点的属性重建值,作为所述不满足条件的共面节点的属性值。
步骤84,根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,M为正整数;
在一些实施例中,可以这样实现步骤84:将所述M个共面节点作为预测节点;根据所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值。例如,所述M个共面节点为当前节点的所有共面节点,如此,相当于将当前节点的所有满足条件的共面节点和所有不满足条件的共面节点,确定为所述预测节点,如此,能够提高当前节点的帧内预测的准确性,从而提高编码效率。
在另一些实施例中,还可以通过如下实施例的步骤105和步骤106实现步骤84。
需要说明的是,M可以为任意值。在一些实施例中,所述M个共面节点为所述当前节点的所有共面节点。如此,在对当前节点进行属性预测时,由于考虑了所有共面节点的属性值,因此能够进一步提高帧内预测的准确性,从而提高编码效率。
当然,在另一些实施例中,M个共面节点也可以不是当前节点的所有共面节点。例如,M个共面节点至少包括在当前节点之前编码的所有共面节点和在当前节点之前未编码的一个或多个共面节点;如此,由于考虑了在当前节点之前未编码的一个或多个共面节点对属性预测的影响,因此依然能够改善帧内预测的准确性,从而提高编码效率。
可以理解地,在本申请实施例中,在对当前节点的属性进行预测时,对于当前节点的不满足条件的共面节点的属性重建值,根据不满足条件的共面节点的插值节点的属性重建值插值得到;如此,就使得电子设备能够使用不满足条件的共面节点的属性重建值进行当前节点的属性预测,即电子设备在进行属性预测时,相比于前文提到的相关技术,不仅基于满足条件的共面节点和满足条件的共线节点,还结合了不满足条件的共面节点的属性重建值进行帧内预测,可见该方法对当前节点的属性预测考虑了更多的信息,这样能够提高帧内预测的准确性,从而提高编码效率。
相应地,本申请实施例提供一种帧内预测方法,该方法适用于解码端,该方法可以应用于具有信息处理能力的电子设备,所述电子设备可以是电视机、投影仪、手机、计算机、平板电脑、虚拟现实(Virtual Reality,VR)头戴设备等任何具有点云视频编解码功能或者仅有解码功能的设备。所述帧内预测方法所实现的功能可以通过所述电子设备中的处理器调用程序代码来实现,当然程序代码可以保存在计算机存储介质中。可见,所述电子设备至少包括处理器和存储介质。
图9为本申请实施例帧内预测方法的实现流程示意图,如图9所示,该方法可以包括以下步骤91至步骤94:
步骤91,确定当前节点的共面节点是否满足条件;如果是,执行步骤92;否则,执行步骤93;其中,所述条件为在所述当前节点之前解码的非空节点;
在一些实施例中,可以在当前节点不是第一个待解码的节点的情况下,执行步骤91;在当前节点是第一个待解码的节点的情况下,将所述当前节点的属性预测值赋予一常数,完成该节点的帧内预测,其中,该常数可以是任意值,例如,该常数为0。
可以理解地,解码顺序与编码顺序是一致的。因此,这里第一个待解码的节点是指按照特定编码顺序排序的第一个节点。
步骤92,将满足条件的共面节点的属性重建值作为属性值;
可以理解地,如果共面节点是在当前节点之前解码的非空节点,说明该节点的属性重建值是“可得的”,因此可以将该共面节点的属性重建值作为属性值。
如果共面节点不满足该条件,即共面节点为空节点或者共面节点在当前节点之前未解码,说明该节点的属性重建值是“不可得的”,此时可以根据步骤93得到不满足条件的共面节点的属性值,或者,还可以根据预设的第一常数,得到所述不满足条件的共面节点的属性值。例如,将所述预设的第一常数作为所述不满足条件的共面节点的属性值。其中,所述第一常数可以是任意值。
步骤93,根据插值节点的属性重建值,得到不满足条件的共面节点的属性值;其中,所述插值节点既是所述不满足条件的共面节点的共面节点也是所述当前节点的共线节点;
在一些实施例中,可以这样实现步骤93:将所述不满足条件的共面节点的所有插值节点中的一个节点的属性重建值,作为所述不满足条件的共面节点的属性值。需要说明的是,对于采用所述不满足条件的共面节点的所有插值节点中的哪一个节点的属性重建值,作为所述不满足条件的共面节点的属性值,在本申请中不做限定。例如,可以将该所有插值节点中与共面节点的距离(比如欧式距离)最小或者小于距离阈值的节点的属性重建值,作为所述不满足条件的共面节点的属性值。
步骤94,根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,M为正整数;
在一些实施例中,可以这样实现步骤94:将所述M个共面节点作为预测节点;根据所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值。例如,所述M个共面节点为当前节点的所有共面节点,如此,相当于将当前节点的所有满足条件的共面节点和所有不满足条件的共面节点,确定为所述预测节点,如此,能够提高当前节点的帧内预测的准确性。
在另一些实施例中,还可以通过如下实施例的步骤115和步骤116实现步骤94。
需要说明的是,M可以为任意值。在一些实施例中,所述M个共面节点为所述当前节点的所有共面节点。如此,在对当前节点进行属性预测时,由于考虑了所有共面节点的属性值,因此能够进一步提高帧内预测的准确性。
当然,在另一些实施例中,M个共面节点也可以不是当前节点的所有共面节点。例如,M个共面节点至少包括在当前节点之前解码的所有共面节点和在当前节点之前未解码的一个或多个共面节点;如此,由于考虑了在当前节点之前未解码的一个或多个共面节点对属性预测的影响,因此依然能够改善帧内预测的准确性。
可以理解地,在本申请实施例中,在对当前节点的属性进行预测时,对于当前节点的不满足条件的共面节点的属性重建值,根据不满足条件的共面节点的插值节点的属性重建值插值得到;如此,就使得电子设备能够使用不满足条件的共面节点的属性重建值进行当前节点的属性预测,即电子设备在进行属性预测时,相比于前文提到的相关技术,不仅基于满足条件的共面节点和满足条件的共线节点,还结合了不满足条件的共面节点的属性重建值进行帧内预测,可见该方法对当前节点的属性预测考虑了更多的信息,这样能够提高帧内预测的准确性。
本申请实施例再提供一种帧内预测方法,该方法应用于编码端,图10为本申请实施例帧内预测方法的实现流程示意图,如图10所示,该方法可以包括以下步骤101至步骤108:
步骤101,确定当前节点的共面节点是否满足条件;如果是,执行步骤102;否则,执行步骤103;其中,所述条件为在所述当前节点之前编码的非空节点;
步骤102,将满足条件的共面节点的属性重建值作为属性值;
步骤103,确定不满足条件的共面节点的每一插值节点的权重值;其中,所述插值节点既是所述不满足条件的共面节点的共面节点也是所述当前节点的共线节点;
在一些实施例中,所述插值节点满足所述条件。如此,基于不满足条件的共面节点的每一“可得的”插值节点的权重值,得到所述不满足条件的共面节点的属性值。
插值节点的权重值的确定方法可以是多种多样的。例如,插值节点的权重值可以基于欧式距离来确定;再如,也可以对插值节点的权重值赋予固定常数。
比如,在一些实施例中,将不满足所述条件的插值节点的权重值确定为预设的第二常数;将满足所述条件的插值节点的权重值确定为预设的第三常数。如此,相比于基于欧式距离来确定权重值的方法,这种设置固定常数的方法,节省了权重值的计算过程,从而能够提高编码效率。
需要说明的是,第二常数和第三常数可以是任意值。例如,在一些实施例中,所述预设的第二常数为0,所述预设的第三常数为1;如此,相当于在确定不满足条件的共面节点的属性值时,不考虑不满足所述条件的插值节点;如此,能够提高不满足条件的共面节点的属性重建值的准确性,从而提高当前节点的属性预测值的准确性,从而提高编码效率。
步骤104,根据每一所述插值节点的权重值,对每一所述插值节点的属性重建值进行加权平均计算,得到所述不满足条件的共面节点的属性值;
步骤105,根据当前节点的M个共面节点得到K个预测节点;其中,K为大于0的整数;
需要说明的是,M可以为任意值。在一些实施例中,所述M个共面节点为所述当前节点的所有共面节点。
在一些实施例中,可以通过如下实施例的步骤124实现步骤105。
需要说明的是,K的大小与M的大小无关,对于不同的节点,K可能大于M,也可能等于M,还可能小于M。K可以是任意正整数。例如,K为2的幂次。可以理解地,K为2的幂次,如此,能够通过由加法器、乘法器和移位器组成的除法器快速实现加权平均运算,从而能够提高编码效率。
步骤106,根据所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值;
在一些实施例中,可以通过如下实施例的步骤125至步骤128实现步骤106。
步骤107,从接收的属性码流中,解析出所述当前节点的残差;
步骤108,根据所述当前节点的属性预测值与所述残差,确定所述当前节点的属性重建值。
相应地,本申请实施例再提供一种帧内预测方法,该方法应用于解码端,图11为本申请实施例帧内预测方法的实现流程示意图,如图11所示,该方法可以包括以下步骤111至步骤118:
步骤111,确定当前节点的共面节点是否满足条件;如果是,执行步骤112;否则,执行步骤113;其中,所述条件为在所述当前节点之前解码的非空节点;
步骤112,将满足条件的共面节点的属性重建值作为属性值;
步骤113,确定不满足条件的共面节点的每一插值节点的权重值;其中,所述插值节点既是所述不满足条件的共面节点的共面节点也是所述当前节点的共线节点;
在一些实施例中,所述插值节点满足所述条件。如此,基于不满足条件的共面节点的每一“可得的”插值节点的权重值,得到所述不满足条件的共面节点的属性值。
插值节点的权重值的确定方法可以是多种多样的。例如,插值节点的权重值可以基于欧式距离来确定;再如,也可以对插值节点的权重值赋予固定常数。
比如,在一些实施例中,将不满足所述条件的插值节点的权重值确定为预设的第二常数;将满足所述条件的插值节点的权重值确定为预设的第三常数。如此,相比于基于欧式距离来确定权重值的方法,这种设置固定常数的方法,节省了权重值的计算过程,从而能够提高解码效率。
需要说明的是,第二常数和第三常数可以是任意值。例如,在一些实施例中,所述预设的第二常数为0,所述预设的第三常数为1;如此,相当于在确定不满足条件的共面节点的属性值时,不考虑不满足所述条件的插值节点;如此,能够提高不满足条件的共面节点的属性重建值的准确性,从而提高当前节点的属性预测值的准确性。
步骤114,根据每一所述插值节点的权重值,对每一所述插值节点的属性重建值进行加权平均计算,得到所述不满足条件的共面节点的属性值;
步骤115,根据当前节点的M个共面节点得到K个预测节点;其中,K为大于0的整数;
需要说明的是,M可以为任意值。在一些实施例中,所述M个共面节点为所述当前节点的所有共面节点。
在一些实施例中,可以通过如下实施例的步骤134实现步骤115。
需要说明的是,K的大小与M的大小无关,对于不同的节点,K可能大于M,也可能等于M, 还可能小于M。K可以是任意正整数。例如,K为2的幂次。可以理解地,K为2的幂次,如此,能够通过由加法器、乘法器和移位器组成的除法器快速实现加权平均运算,从而能够提高解码效率。
步骤116,根据所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值;
在一些实施例中,可以通过如下实施例的步骤135至步骤138实现步骤116。
步骤117,从接收的属性码流中,解析出所述当前节点的残差;
步骤118,根据所述当前节点的属性预测值与所述残差,确定所述当前节点的属性重建值。
本申请实施例再提供一种帧内预测方法,该方法应用于编码端,图12为本申请实施例帧内预测方法的实现流程示意图,如图12所示,该方法可以包括以下步骤121至步骤1210:
步骤121,确定当前节点的共面节点是否满足条件;如果是,执行步骤122;否则,执行步骤123;其中,所述条件为在所述当前节点之前编码的非空节点;
步骤122,将满足条件的共面节点的属性重建值作为属性值;
步骤123,根据插值节点的属性重建值,得到不满足条件的共面节点的属性值;其中,所述插值节点既是所述不满足条件的共面节点的共面节点也是所述当前节点的共线节点;
步骤124,按照当前节点的M个共面节点的特定编码顺序,得到K个预测节点;其中,
当所述共面节点为所述满足条件的共面节点或至少有一个插值节点满足所述条件的所述不满足条件的共面节点时,将所述共面节点确定为所述预测节点;
在所述满足条件的共面节点与至少有一个插值节点满足所述条件的所述不满足条件的共面节点的节点总数大于或等于K的情况下,将所述节点总数对应的节点中按照特定编码顺序排序的前K个节点,确定为所述预测节点;特定编码顺序可以是多种多样的。例如,该特定编码顺序为莫顿顺序。可以理解地,大部分情况下,编码顺序越靠前的节点,与当前节点的属性可能越接近,因此在本申请实施例中,将所述节点总数对应的节点中按照特定编码顺序排序的前K个节点作为预测节点,如此,提高帧内预测的准确性。
在所述节点总数大于0且小于K的情况下,确定填充节点的属性值;将所述节点总数对应的节点和所述填充节点,确定为所述预测节点。可以理解地,在节点总数不足的情况下,通过填充的方法补足节点数目,基于此确定当前节点的属性预测值,如此能够提高该值的准确性。
对于步骤124,举例来说,假设K为固定数目,例如K=2,假设M=6,这M个共面节点按照特定编码顺序排序后为1、2、3、4、5和6,那么可以这样实现步骤124:如果共面节点1为所述满足条件的共面节点或至少有一个插值节点满足所述条件的所述不满足条件的共面节点,则将该共面节点1作为1个预测节点,然后如同确定共面节点1是否预测节点的方法,确定共面节点2是否作为第2个预测节点,如果共面节点2也可作为预测节点,此时则选够了K个预测节点,结束,不再对后续的共面节点进行判断,而是进入步骤125;否则,如果共面节点2为不满足条件的共面节点且该节点的所有插值节点均不满足所述条件,则不将该节点作为预测节点,此时继续判断共面节点3是否可以作为预测节点,如此直至选够K个预测节点为止;当然,如果在判断共面节点6之后,最终选出的预测节点仅有1个,也就是不足K个,则使用填充的方法,补足K个预测节点。
填充的方式可以是多种多样的。在一些实施例中,可以将所述节点总数对应的节点中按照所述特定编码顺序排序的第一个节点的属性值,确定为所述填充节点的属性值;可以理解地,相比于使用其他节点的属性重建值作为填充值,帧内预测结果更准确。当然,在一些实施例中,还可以将所述节点总数对应的节点中的任意一个节点的属性值,确定为所述填充节点的属性值。
在另一些实施例中,还可以将所述节点总数对应的节点的属性值的均值或加权平均值,确定为所述填充节点的属性值;相比于第一个实施例,帧内预测结果可能更准确。
在另一些实施例中,还可以将所述第一个节点的共面节点和/或共线节点的属性值的均值,确定为所述填充节点的属性值;该实施例相比于第一个实施例,帧内预测结果可能更准确。
在另一些实施例中,还可以将预设的第四常数确定为所述填充节点的属性值。相比于上述提到的三个实施例,采用固定常数作为填充值,在保证帧内预测的准确性的前提下,能够节省填充值的计算过程,从而提高编码效率。
步骤125,确定每一所述预测节点是否均属于所述不满足条件的共面节点且每一所述预测节点的所有插值节点是否均不满足所述条件;如果是,执行步骤126;否则,执行127;
也就是说,在每一所述预测节点均属于所述不满足条件的共面节点且每一所述预测节点的所有插值节点均不满足所述条件的情况下,执行步骤126;可以理解地,在这种情况下,根据当前节点 的前序节点的属性重建值,确定当前节点的属性预测值;如此,不仅使得当前节点的帧内预测可实现,且预测结果也较为准确。
在任一所述预测节点为所述满足条件的共面节点的情况下,或者,在任一所述预测节点为所述不满足条件的共面节点且所述不满足条件的共面节点的至少一个插值节点满足所述条件的情况下,执行步骤127。
步骤126,根据在所述当前节点之前的至少一个完成编码的节点的属性重建值,确定所述当前节点的属性预测值,然后,进入步骤129。
对于根据多少个在当前节点之前完成编码的节点的属性重建值进行属性预测,在本申请实施例中不做限定。在一些实施例中,将所述当前节点的前一完成编码的节点的属性重建值,确定为所述当前节点的属性预测值。
举例来说,在所有预测节点都为空节点,则直接以当前节点的莫顿前序点(即莫顿顺序下的前一个节点,该节点一定满足在当前节点之前编码)作为预测节点,属性预测值为莫顿前序点的属性重建值。
需要说明的是,M可以为任意值。在一些实施例中,所述M个共面节点为所述当前节点的所有共面节点。
步骤127,确定每一所述预测节点的权重值;
预测节点的权重值可以基于欧式距离来确定,也可以赋予固定常数。比如,在一些实施例中,将每一满足所述条件的预测节点的权重值,确定为预设的第五常数;将属于所述不满足条件的共面节点且所有插值节点均不满足所述条件的预测节点的权重值,确定为预设的第六常数;将属于所述不满足条件的共面节点且至少有一个插值节点满足所述条件的预测节点的权重值确定为所述预设的第七常数。如此,相比于基于欧式距离来确定权重值的方法,这种设置固定常数的方法,节省了权重值的计算过程,从而能够提高编码效率。
需要说明的是,第五常数、第六常数和第七常数可以是任意值。
在一些实施例中,所述预设的第五常数和所述预设的第七常数为1,所述预设的第六常数为0。如此,相当于在确定当前节点的属性预测值时,不考虑属于所述不满足条件的共面节点且所有插值节点均不满足所述条件的预测节点;如此,能够提高当前节点的属性预测值的准确性。
在一些实施例中,所述预设的第五常数大于或等于所述预设的第七常数。如此,能够提高当前节点的属性预测值的准确性。
步骤128,根据每一所述预测节点的权重值,对每一所述预测节点的属性值进行加权平均计算,得到所述当前节点的属性预测值,然后进入步骤129。
对于步骤128,在一些实施例中,可以这样实现:在所述预测节点的数目为2的幂次的情况下,通过乘法器对每一所述预测节点的属性值与对应的权重值进行乘法运算,得到第一运算结果;通过加法器对每一所述预测节点对应的所述第一运算结果进行加法运算,得到第二运算结果;通过移位器对所述第二运算结果和所述预测节点的数目进行移位运算,得到所述当前节点的属性预测值。如此,通过乘法器、加法器和移位器,即可实现加权平均计算;从而能够快速得到属性预测值,进而提高编码效率。
步骤129,从接收的属性码流中,解析出所述当前节点的残差;
步骤1210,根据所述当前节点的属性预测值与所述残差,确定所述当前节点的属性重建值。
相应地,本申请实施例再提供一种帧内预测方法,该方法应用于解码端,图13为本申请实施例帧内预测方法的实现流程示意图,如图13所示,该方法可以包括以下步骤131至步骤1310:
步骤131,确定当前节点的共面节点是否满足条件;如果是,执行步骤132;否则,执行步骤133;其中,所述条件为在所述当前节点之前解码的非空节点;
步骤132,将满足条件的共面节点的属性重建值作为属性值;
步骤133,根据插值节点的属性重建值,得到不满足条件的共面节点的属性值;其中,所述插值节点既是所述不满足条件的共面节点的共面节点也是所述当前节点的共线节点;
步骤134,按照当前节点的M个共面节点的特定编码顺序,得到K个预测节点;其中,
当所述共面节点为所述满足条件的共面节点或至少有一个插值节点满足所述条件的所述不满足条件的共面节点时,将所述共面节点确定为所述预测节点;
在所述满足条件的共面节点与至少有一个插值节点满足所述条件的所述不满足条件的共面节点的节点总数大于或等于K的情况下,将所述节点总数对应的节点中按照特定编码顺序排序的前K个 节点,确定为所述预测节点;特定编码顺序可以是多种多样的。例如,该特定编码顺序为莫顿顺序。可以理解地,大部分情况下,编码顺序越靠前的节点,与当前节点的属性可能越接近,因此在本申请实施例中,将所述节点总数对应的节点中按照特定编码顺序排序的前K个节点作为预测节点,如此,提高帧内预测的准确性。
在所述节点总数大于0且小于K的情况下,确定填充节点的属性值;将所述节点总数对应的节点和所述填充节点,确定为所述预测节点。可以理解地,在节点总数不足的情况下,通过填充的方法补足节点数目,基于此确定当前节点的属性预测值,如此能够提高该值的准确性。
对于步骤134,举例来说,假设K为固定数目,例如K=2,假设M=6,这M个共面节点按照特定编码顺序排序后为1、2、3、4、5和6,那么可以这样实现步骤134:如果共面节点1为所述满足条件的共面节点或至少有一个插值节点满足所述条件的所述不满足条件的共面节点,则将该共面节点1作为1个预测节点,然后如同确定共面节点1是否预测节点的方法,确定共面节点2是否作为第2个预测节点,如果共面节点2也可作为预测节点,此时则选够了K个预测节点,结束,不再对后续的共面节点进行判断,而是进入步骤135;否则,如果共面节点2为不满足条件的共面节点且该节点的所有插值节点均不满足所述条件,则不将该节点作为预测节点,此时继续判断共面节点3是否可以作为预测节点,如此直至选够K个预测节点为止;当然,如果在判断共面节点6之后,最终选出的预测节点仅有1个,也就是不足K个,则使用填充的方法,补足K个预测节点。
填充的方式可以是多种多样的。在一些实施例中,可以将所述节点总数对应的节点中按照所述特定编码顺序排序的第一个节点的属性值,确定为所述填充节点的属性值;可以理解地,相比于使用其他节点的属性重建值作为填充值,帧内预测结果更准确。当然,在一些实施例中,还可以将所述节点总数对应的节点中的任意一个节点的属性值,确定为所述填充节点的属性值。
在另一些实施例中,还可以将所述节点总数对应的节点的属性值的均值或加权平均值,确定为所述填充节点的属性值;相比于第一个实施例,帧内预测结果可能更准确。
在另一些实施例中,还可以将所述第一个节点的共面节点和/或共线节点的属性值的均值,确定为所述填充节点的属性值;该实施例相比于第一个实施例,帧内预测结果可能更准确。
在另一些实施例中,还可以将预设的第四常数确定为所述填充节点的属性值。相比于上述提到的三个实施例,采用固定常数作为填充值,在保证帧内预测的准确性的前提下,能够节省填充值的计算过程,从而提高解码效率。
步骤135,确定每一所述预测节点是否均属于所述不满足条件的共面节点且每一所述预测节点的所有插值节点是否均不满足所述条件;如果是,执行步骤136;否则,执行137;
也就是说,在每一所述预测节点均属于所述不满足条件的共面节点且每一所述预测节点的所有插值节点均不满足所述条件的情况下,执行步骤136;可以理解地,在这种情况下,根据当前节点的前序节点的属性重建值,确定当前节点的属性预测值;如此,不仅使得当前节点的帧内预测可实现,且预测结果也较为准确。
在任一所述预测节点为所述满足条件的共面节点的情况下,或者,在任一所述预测节点为所述不满足条件的共面节点且所述不满足条件的共面节点的至少一个插值节点满足所述条件的情况下,执行步骤137。
步骤136,根据在所述当前节点之前的至少一个完成解码的节点的属性重建值,确定所述当前节点的属性预测值,然后,进入步骤139。
对于根据多少个在当前节点之前完成解码的节点的属性重建值进行属性预测,在本申请实施例中不做限定。在一些实施例中,将所述当前节点的前一完成解码的节点的属性重建值,确定为所述当前节点的属性预测值。
举例来说,在所有预测节点都为空节点,则直接以当前节点的莫顿前序点(即莫顿顺序下的前一个节点,该节点一定满足在当前节点之前解码)作为预测节点,属性预测值为莫顿前序点的属性重建值。
需要说明的是,M可以为任意值。在一些实施例中,所述M个共面节点为所述当前节点的所有共面节点。
步骤137,确定每一所述预测节点的权重值;
预测节点的权重值可以基于欧式距离来确定,也可以赋予固定常数。比如,在一些实施例中,将每一满足所述条件的预测节点的权重值,确定为预设的第五常数;将属于所述不满足条件的共面节点且所有插值节点均不满足所述条件的预测节点的权重值,确定为预设的第六常数;将属于所述不满足条件的共面节点且至少有一个插值节点满足所述条件的预测节点的权重值确定为所述预设的 第七常数。如此,相比于基于欧式距离来确定权重值的方法,这种设置固定常数的方法,节省了权重值的计算过程,从而能够提高解码效率。
需要说明的是,第五常数、第六常数和第七常数可以是任意值。
在一些实施例中,所述预设的第五常数和所述预设的第七常数为1,所述预设的第六常数为0。如此,相当于在确定当前节点的属性预测值时,不考虑属于所述不满足条件的共面节点且所有插值节点均不满足所述条件的预测节点;如此,能够提高当前节点的属性预测值的准确性。
在一些实施例中,所述预设的第五常数大于或等于所述预设的第七常数。如此,能够提高当前节点的属性预测值的准确性。
步骤138,根据每一所述预测节点的权重值,对每一所述预测节点的属性值进行加权平均计算,得到所述当前节点的属性预测值,然后进入步骤139。
对于步骤138,在一些实施例中,可以这样实现:在所述预测节点的数目为2的幂次的情况下,通过乘法器对每一所述预测节点的属性值与对应的权重值进行乘法运算,得到第一运算结果;通过加法器对每一所述预测节点对应的所述第一运算结果进行加法运算,得到第二运算结果;通过移位器对所述第二运算结果和所述预测节点的数目进行移位运算,得到所述当前节点的属性预测值。如此,通过乘法器、加法器和移位器,即可实现加权平均计算;从而能够快速得到属性预测值,进而提高解码效率。
步骤139,从接收的属性码流中,解析出所述当前节点的残差;
步骤1310,根据所述当前节点的属性预测值与所述残差,确定所述当前节点的属性重建值。
本申请实施例提供一种点云编码方法,所述方法包括:对点云的当前节点执行如编码端所述的帧内预测方法中的步骤,得到所述当前节点的属性预测值;确定所述当前节点的属性预测值与所述当前节点的原始属性值之间的残差;将所述当前节点的残差编码为属性码流。
需要说明的是,以上编码方法的实施例的描述,与上述编码端的帧内预测方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请编码方法实施例中未披露的技术细节,请参照本申请编码端的帧内预测方法实施例的描述而理解。
本申请实施例提供一种点云解码方法,所述方法包括:对接收的属性码流进行解析,得到当前节点的残差;对所述当前节点执行如解码端所述的帧内预测方法中的步骤,得到所述当前节点的属性预测值;根据所述当前节点的属性预测值与所述残差,确定所述当前节点的属性重建值。
需要说明的是,以上解码方法的实施例的描述,与上述解码端的帧内预测方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请解码方法实施例中未披露的技术细节,请参照本申请解码端的帧内预测方法实施例的描述而理解。
下面将说明本申请实施例在一个实际的应用场景中的示例性应用。
本申请实施例的技术方案在编解码端均实行,在进行帧内预测时实行本申请实施例的技术方案,针对所有点,本技术方案提出一种基于插值过程的帧内预测增强算法。
首先需要定义的概念是预测节点的“可得性”,当当前节点的预测节点既能在当前节点之前编码,且为非空节点时,称此预测节点是可得的,不满足任一条件即为不可得。对于解码端,当当前节点的预测节点既能在当前节点之前解码,且为非空节点时,称此预测节点是可得的,不满足任一条件即为不可得。
在编码端帧内预测部分的一种实施例如下,即如下所称的实施例1。几何重建点云被八叉树递归划分成若干个正方体voxel,每个voxel中的节点按照莫顿编码顺序分别进行帧内预测过程,从而计算得到属性预测值,对于编码的第一个节点执行a3)、e3)和f3)过程,其余点执行b3)、c3)、d3)、e3)和f3)过程:
a3)当前节点为编码的第一个节点时,没有参考点进行预测,该当前节点的属性预测值直接设为0;
b3)如图14所示,以当前节点的所有共面节点3、5、6、14、21和35作为预测节点,当预测节点可得时,属性值参考可得预测节点的属性重建值,当预测节点不可得时,执行步骤c3)以插值出不可得预测节点的属性值;
c3)通过不可得预测节点的插值节点(同时也是当前节点的共线节点)的属性重建值,插值得到不可得预测节点的属性值,插值方法下式(16)所示,根据该式计算所有插值节点的属性重建值的加权平均值。其中,不可得预测节点的插值节点如图15所示。
其中,
为插值节点j的属性重建值;权重值的取值方法为:若对于某不可得预测节点i来说,其插值节点j不可得,则有w
j=0,否则w
j=1。当不可得预测节点的所有插值节点都不可得时,则插值失败,此不可得预测节点的权重为0;
d3)根据下式(17),计算所有预测节点的属性值的加权平均值作为当前节点的属性预测值:
其中,
为预测节点的属性值,w
i为预测节点的权重,当预测节点为不可得节点且插值失败时,w
i=0,否则w
i=1。
假设所有预测节点都为不满足条件的共面节点且插值失败,则直接以当前节点的莫顿前序点(即莫顿顺序下的前一个节点,该节点一定满足在当前节点之前解码)作为预测节点,属性预测值为莫顿前序点的属性重建值;
e3)残差为当前节点的原始属性值和属性预测值之间的差,然后对残差进行变换、量化等操作;
f3)将属性预测值与反量化、反变换等操作后的残差信息叠加,得到当前节点的属性重建值,该值作为后续编码单元的参考信息。
在解码端的帧内预测实施例如下,即如下所称的实施例1。几何重建点云被八叉树递归划分成若干个正方体voxel,每个voxel中的节点按照与编码过程相同的莫顿顺序分别进行帧内预测过程,从而计算得到属性预测值,对于解码的第一个节点执行以下a4)和e4)过程,其余点执行以下b4)、c4)、d4)和e4)过程:
a4)当前节点为解码的第一个节点时,没有参考点进行预测,其属性预测值直接设为0;
b4)以当前节点的所有共面节点3、5、6、14、21和35作为预测节点,当预测节点可得时,属性值参考可得预测节点的属性重建值,当预测节点不可得时,执行步骤c4)以插值出不可得预测节点的属性值;
c4)通过不可得预测节点的插值节点(同时也是当前节点的共线节点)的属性重建值插值得到不可得预测节点的属性值,插值方法如下式(18)所示,根据该式计算所有插值节点的属性重建值的加权平均值:
其中,
为插值节点j的属性重建值;权重值的取值方法为:若对于某不可得预测节点i来说,其插值节点j不可得,则有w
j=0,否则w
j=1。当不可得预测节点的所有插值节点都不可得时, 则插值失败,此不可得预测节点的权重为0;
d4)根据下式(19)计算所有预测节点的属性值的加权平均值,该值作为当前节点的属性预测值:
其中,
为预测节点的属性值,w
i为预测节点的权重,当预测节点为不可得节点且插值失败时,w
i=0,否则w
i=1。
假设所有预测节点都为不可得节点且插值失败,则直接以当前节点的莫顿前序点(即莫顿顺序下的前一个节点,该节点一定满足在当前节点之前解码)作为预测节点,属性预测值为莫顿前序点的属性重建值;
e4)从码流中读取当前节点的残差信息,经反量化、反变换等操作后与当前节点的属性预测值进行叠加,得到当前节点的属性重建值,该值作为后续解码单元的参考信息。
需要说明的是,上述实施例1的技术方案作用在图3A和3B所示的编解码框架中的帧内预测部分。
基于插值过程的帧内预测增强技术可以采用多种插值方法,包括但不限于加权平均、临近点拷贝、填充固定值等;
基于插值过程的帧内预测增强技术可以采用多种权重值选取方法,包括但不限于基于欧式距离的权重、固定常数权重等。
本技术方案在编码端帧内预测部分另一种实施例如下,即如下所称的实施例2。几何重建点云被八叉树递归划分成若干个正方体voxel,每个voxel中的节点按照莫顿编码顺序分别进行帧内预测过程,从而计算得到属性预测值,对于编码的第一个节点执行a5)、f5)和g5)过程,其余点执行b5)、c5)、d5)、e5)、f5)和g5)过程:
a5)当前节点为编码的第一个节点时,没有参考点进行预测,其属性预测值直接设为0;
b5)以当前节点的所有共面节点3、5、6、14、21和35中的K个节点作为预测节点,选择方式如步骤d5)所述;当节点可得时,参考可得节点的属性重建值,当节点不可得时,执行步骤c5)以插值出不可得节点的属性值;
c5)通过不可得节点的插值节点(同时也是当前节点的共线节点)的属性重建值插值得到不可得节点的属性值,插值方法如下式(20)所示,根据该式计算所有插值节点的属性重建值的加权平均值:
其中,
为插值节点j的属性重建值;权重值的取值方法为:若对于某不可得节点i来说,其插值节点j不可得,则有w
j=0,否则w
j=1。当不满足条件的共面节点的所有插值节点都不可得时,则插值失败,此不可得节点的权重为0;
d5)参考范围为3、5、6、14、21和35中的可得节点加上插值成功的不可得节点,若参考范围大于等于K,则直接以参考范围中的前K个节点作为预测节点;若参考范围大于0且小于K,则以参考范围中的第一个节点的属性值作为填充值,将参考范围大小填充为K,以此K个节点作为预测节点;
e5)根据下式(21)计算所有预测节点的属性值的加权平均值,将该值作为当前节点的属性预测值:
其中,
为预测节点的属性值,w
i为预测节点的权重,w
i=1。
假设所有预测节点都为不可得节点且插值失败,则直接以当前节点的莫顿前序点(即莫顿顺序下的前一个节点,该节点一定满足在当前节点之前解码)作为预测节点,属性预测值为莫顿前序点的属性重建值;
f5)残差为当前节点的原始属性值和属性预测值之间的差,然后对残差进行变换、量化等操作;
g5)将属性预测值与反量化、反变换等操作后的残差信息叠加,得到当前节点的属性重建值作为后续编码单元的参考信息。
本技术方案在解码端帧内预测实施例如下,即如下所称的实施例2。几何重建点云被八叉树递归划分成若干个正方体voxel,每个voxel中的节点按照与编码过程相同的莫顿顺序分别进行帧内预测过程计算属性预测值,对于解码的第一个节点执行a6)和f6)过程,其余点执行b6)、c6)、d6)、e6)和f6)过程:
a6)当前节点为解码的第一个节点时,没有参考点进行预测,其属性预测值直接设为0;
b6)以当前节点的所有共面节点3、5、6、14、21和35中的K个节点作为预测节点,选择方式如步骤d6)所述;当节点可得时,属性值参考可得节点的属性重建值,当节点不可得时,执行步骤c6)的插值出不可得节点的属性值;
c6)通过不可得节点的插值节点(同时也是当前节点的共线节点)的属性重建值插值得到不可得节点的属性值,插值方法如下式(22)所示,根据该式计算所有插值节点的属性重建值的加权平均值:
其中,
为插值节点j的属性重建值;权重值的取值方法为:若对于某不可得节点i来说,其插值节点j不可得,则有w
j=0,否则w
j=1。当不可得节点的所有插值节点都不可得时,则插值失败,此不可得节点的权重为0;
d6)参考范围为3、5、6、14、21和35中的可得节点加上插值成功的不可得节点,若参考范围大于等于K,则直接以参考范围中的前K个节点作为预测节点;若参考范围大于0且小于K,则以参考范围中的第一个节点的属性值作为填充值,将参考范围大小填充为K,以此K个节点作为预测节点;
e6)根据下式(23)计算所有预测节点的属性值的加权平均值,将该值作为当前节点的属性预测值:
其中,
为预测节点的属性值,w
i为预测节点的权重,w
i=1。
假设所有预测节点都为不可得节点且插值失败,则直接以当前节点的莫顿前序点(即莫顿顺序下的前一个节点,该节点一定满足在当前节点之前解码)作为预测节点,属性预测值为莫顿前序点的属性重建值;
f6)从码流中读取当前节点的残差信息,经反量化、反变换等操作后与当前节点的属性预测值进行叠加,得到当前节点的属性重建值,该值作为后续解码单元的参考信息。
实施例2的技术方案作用在图3A和图3B所示的编解码框架中的帧内预测部分。
基于插值过程的帧内预测增强技术可以采用多种插值方法,包括但不限于加权平均、临近点拷贝、填充固定值等;
基于插值过程的帧内预测增强技术可以采用多种权重值选取方法,包括但不限于基于欧式距离的权重、固定常数权重等。
基于插值过程的帧内预测增强技术可以采用多种填充方法,包括但不限于填充第一个节点的属性值、填充固定常数、填充周围点的平均值等。其中K的取值可以为任意常数,若K为2的幂次,在编解码的步骤e5)和e6)计算当前节点的属性预测值时,除法可以采用二进制的移位操作。
本申请实施例的技术方案可以适用于帧内预测的编解码部分,充分利用到当前节点周围的参考信息,使用插值算法推导出当前节点的不可得的预测节点的重建属性值,优化帧内预测方案,提高帧内预测的准确性,从而能够提升编码效率。
本申请实施例的技术方案在AVS最新的点云压缩平台PCRM1.0上进行了测试,在实施例1所描述的算法下取得的测试结果如表1至4所示,在实施例2所描述的算法下取得的测试结果如表5至8所示。
其中,表1示出了实施例1在几何有限有损且属性有损的条件C1(C1-limit-lossy geometry,lossy attributes)下对Cat1B和Cat3这两类数据集的测试结果,如表1所示,相比于PCRM基准平台的性能,实施例1在颜色属性Y、Cb和Cr三个维度上的EtE BD-rate均有改善。例如,对于Cat1B的测试结果,在Y属性上,EtE BD-rate相比于PCRM基准平台的性能改善了2.8%。又如,对于Cat3的测试结果,在Cr属性上,EtE BD-rate相比于PCRM基准平台的性能改善了5.4%。
表1 C1-limit-lossy geometry,lossy attributes
表2示出了实施例1在几何无损且属性有损的条件C2(C2-lossless geometry,lossy attributes)下对Cat1B和Cat3这两类数据集的测试结果,如表2所示,相比于PCRM基准平台的性能,实施例1在颜色属性Y、Cb和Cr三个维度上的EtE BD-rate均有改善。例如,对于Cat1B的测试结果,在Y属性上,EtE BD-rate相比于PCRM基准平台的性能改善了1.6%。又如,对于Cat3的测试结果,在Cr属性上,EtE BD-rate相比于PCRM基准平台的性能改善了10%。
表2 C2-lossless geometry,lossy attributes
表3示出了实施例1在几何无损且属性有限有损的条件C3(C3-lossless geometry,limit-lossy attributes)下对Cat1B和Cat3这两类数据集的测试结果,如表3所示,相比于PCRM基准平台的性能,实施例1在颜色属性Y、Cb和Cr三个维度上的EtE BD-rate均有改善。例如,对于Cat1B的测试结果,在Cb属性上,EtE BD-rate相比于PCRM基准平台的性能改善了0.6%。又如,对于Cat3的测试结果,在Cr属性上,EtE BD-rate相比于PCRM基准平台的性能改善了10.2%。
表3 C3-lossless geometry,limit-lossy attributes
表4示出了实施例1在几何无损且属性无损的条件C4(C4-lossless geometry,lossless attributes) 下对Cat1B和Cat3这两类数据集的测试结果,如表4所示,相比于PCRM基准平台的性能,实施例1在颜色属性上的bpip ratio有改善。例如,对于Cat1B的测试结果,bpip ratio是PCRM基准平台的输出的比特流的99.7%,即比特流的大小相比于PCRM基准平台输出的比特流的大小,减少了0.3%。又如,对于Cat3的测试结果,bpip ratio是PCRM基准平台的输出的比特流的98.5%,即比特流的大小相比于PCRM基准平台输出的比特流的大小,减少了1.5%。可见,实施例1能够通过更少的码字获得更好的失真。
表4 C4-lossless geometry,lossless attributes
表5示出了实施例2在几何有限有损且属性有损的条件C1(C1-limit-lossy geometry,lossy attributes)下对Cat1B和Cat3这两类数据集的测试结果。
表5 C1-limit-lossy geometry,lossy attributes
表6示出了实施例2在几何无损且属性有损的条件C2(C2-lossless geometry,lossy attributes)下对Cat1B和Cat3这两类数据集的测试结果
表6 C2-lossless geometry,lossy attributes
表7示出了实施例2在几何无损且属性有限有损的条件C3(C3-lossless geometry,limit-lossy attributes)下对Cat1B和Cat3这两类数据集的测试结果。
表7 C3-lossless geometry,limit-lossy attributes
表8示出了实施例2在几何无损且属性无损的条件C4(C4-lossless geometry,lossless attributes)下对Cat1B和Cat3这两类数据集的测试结果。
表8 C4-lossless geometry,lossless attributes
从上表中可以看出,在两个实施例下相比于PCRM基准平台,都具有明显的性能提升。
本申请实施例的技术方案提出在帧内预测过程中,使用插值算法推导出当前节点的预测节点属性值,优化帧内预测方案,提高帧内预测的准确性,有效提升编码效率;其中,关键在于:
(1)提出将当前节点的六个共面节点作为预测节点;
(2)提出采用插值方法获得不可得节点的属性值;
(3)提出采用当前节点的共线节点来插值得到当前节点的不可得节点;
(4)提出固定数目的预测节点,对预测节点数不够的采用填充操作;
(5)基于上述4,提出当固定数目为2的幂次时,在计算当前节点的属性预测值时,可以将除法简化为二进制移位操作。
在一些实施例中,可以将实施例1中采用加权平均的插值方法该为其它生成插值的方法,如临近点拷贝、填充固定值等;
在一些实施例中,将实施例1中的常数权重值设为其它值,如基于欧式距离的权重等;
在一些实施例中,将实施例2中采用第一个节点的属性值填充的方法该为固定值填充、平均值填充、临近点填充等。
基于前述的实施例,本申请实施例提供的帧内预测装置,包括所包括的各模块、以及各模块所包括的各单元,可以通过电子设备中的编码器或处理器来实现;当然也可以通过具体的逻辑电路实现;在实施的过程中,处理器可以为中央处理器(CPU)、微处理器(MPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)或图形处理器(Graphics Processing Unit,GPU)等。
图16为本申请实施例帧内预测装置的结构示意图,如图16所示,所述装置16包括确定模块161、插值模块162和预测模块163,其中:
确定模块161,用于确定当前节点的共面节点是否满足条件;所述条件为在所述当前节点之前编码的非空节点;如果是,将满足条件的共面节点的属性重建值作为属性值;否则,执行插值模块162;
插值模块162,用于根据插值节点的属性重建值,得到所述不满足条件的共面节点的属性值,所述插值节点既是所述不满足条件的共面节点的共面节点也是所述当前节点的共线节点,所述条件为在所述当前节点之前编码的非空节点;或者,根据预设的第一常数,得到所述不满足条件的共面节点的属性值,所述条件为在所述当前节点之前编码的非空节点
预测模块163,用于根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,M为正整数
在一些实施例中,插值模块162,用于:确定每一所述插值节点的权重值;根据每一所述插值节点的权重值,对每一所述插值节点的属性重建值进行加权平均计算,得到所述不满足条件的共面节点的属性值。
在一些实施例中,插值模块162,用于:将不满足所述条件的插值节点的权重值确定为预设的第二常数;将满足所述条件的插值节点的权重值确定为预设的第三常数。
在一些实施例中,所述预设的第二常数为0,所述预设的第三常数为1。
在一些实施例中,所述插值节点满足所述条件。
在一些实施例中,插值模块162,用于:将所述不满足条件的共面节点的所有插值节点中的一个节点的属性重建值,作为所述不满足条件的共面节点的属性值。
在一些实施例中,预测模块163,用于:将所述M个共面节点作为预测节点;根据所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值。
在一些实施例中,预测模块163,用于:根据所述M个共面节点得到K个预测节点;其中,K为大于0的整数;根据所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值。
在一些实施例中,其中,K为2的幂次。
在一些实施例中,预测模块163,用于:按照所述M个共面节点的特定编码顺序,得到K个预测节点;其中,当所述共面节点为所述满足条件的共面节点或至少有一个插值节点满足所述条件的所述不满足条件的共面节点时,将所述共面节点确定为所述预测节点;在所述满足条件的共面节点与至少有一个插值节点满足所述条件的所述不满足条件的共面节点的节点总数大于或等于K的情况下,将所述节点总数对应的节点中按照特定编码顺序排序的前K个节点,确定为所述预测节点;在所述节点总数大于0且小于K的情况下,确定填充节点的属性值;将所述节点总数对应的节点和所述填充节点,确定为所述预测节点。
在一些实施例中,预测模块163,用于:将所述节点总数对应的节点中按照所述特定编码顺序排序的第一个节点的属性值,确定为所述填充节点的属性值;或者,将所述节点总数对应的节点的属性值的均值,确定为所述填充节点的属性值;或者,将所述第一个节点的共面节点和/或共线节点的属性值的均值,确定为所述填充节点的属性值;或者,将预设的第四常数确定为所述填充节点的属性值。
在一些实施例中,预测模块163,用于:在任一所述预测节点满足所述条件的情况下,或者, 在任一所述预测节点为所述不满足条件的共面节点且所述不满足条件的共面节点的至少一个插值节点满足所述条件的情况下,确定每一所述预测节点的权重值;根据每一所述预测节点的权重值,对每一所述预测节点的属性值进行加权平均计算,得到所述当前节点的属性预测值。
在一些实施例中,预测模块163,用于:将每一满足所述条件的预测节点的权重值,确定为预设的第五常数;将属于所述不满足条件的共面节点且所有插值节点均不满足所述条件的预测节点的权重值,确定为预设的第六常数;将属于所述不满足条件的共面节点且至少有一个插值节点满足所述条件的预测节点的权重值确定为所述预设的第七常数。
在一些实施例中,所述预设的第五常数大于或等于所述预设的第七常数。
在一些实施例中,预测模块163,用于:在所述预测节点的数目为2的幂次的情况下,通过乘法器对每一所述预测节点的属性值与对应的权重值进行乘法运算,得到第一运算结果;通过加法器对每一所述预测节点对应的所述第一运算结果进行加法运算,得到第二运算结果;通过移位器对所述第二运算结果和所述预测节点的数目进行移位运算,得到所述当前节点的属性预测值。
在一些实施例中,预测模块163,还用于:在每一所述预测节点均属于所述不满足条件的共面节点且每一所述预测节点的所有插值节点均不满足所述条件的情况下,根据在所述当前节点之前的至少一个完成编码的节点的属性重建值,确定所述当前节点的属性预测值。
在一些实施例中,预测模块163,用于:将所述当前节点的前一完成编码的节点的属性重建值,确定为所述当前节点的属性预测值。
在一些实施例中,所述M个共面节点为所述当前节点的所有共面节点。
以上装置16的实施例的描述,与上述编码端的帧内预测方法实施例的描述是类似的,具有同这些方法实施例相似的有益效果。对于本申请装置实施例中未披露的技术细节,请参照本申请编码端的帧内预测方法实施例的描述而理解。
基于前述的实施例,本申请实施例提供的编码装置,包括所包括的各模块、以及各模块所包括的各单元,可以通过电子设备中的编码器或处理器来实现;当然也可以通过具体的逻辑电路实现;在实施的过程中,处理器可以为中央处理器(CPU)、微处理器(MPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)或图形处理器(Graphics Processing Unit,GPU)等。
图17为本申请实施例编码装置的结构示意图,如图17所示,所述装置17包括:帧内预测模块171、确定模块172和编码模块173;其中,
帧内预测模块171,用于:根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,M为正整数;
其中,对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据插值节点的属性重建值,得到所述不满足条件的共面节点的属性值,所述插值节点既是所述不满足条件的共面节点的共面节点也是所述当前节点的共线节点,所述条件为在所述当前节点之前编码的非空节点;或者,
对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据预设的第一常数,得到所述不满足条件的共面节点的属性值,所述条件为在所述当前节点之前编码的非空节点。
确定模块172,用于确定所述当前节点的属性预测值与所述当前节点的原始属性值之间的残差;
编码模块173,用于将所述当前节点的残差编码为属性码流。
以上装置17的实施例的描述,与上述装置16实施例和上述编码端的帧内预测方法实施例的描述是类似的,具有同这些方法实施例相似的有益效果。对于本申请装置实施例中未披露的技术细节,请参照本申请编码端的帧内预测方法实施例的描述而理解。
基于前述的实施例,本申请实施例提供的帧内预测装置,包括所包括的各模块、以及各模块所包括的各单元,可以通过电子设备中的解码器或处理器来实现;当然也可以通过具体的逻辑电路实现;在实施的过程中,处理器可以为中央处理器(CPU)、微处理器(MPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)或图形处理器(Graphics Processing Unit,GPU)等。
图18为本申请实施例帧内预测装置的结构示意图,如图18所示,所述装置18包括确定模块181、插值模块182和预测模块183,其中:
确定模块181,用于确定当前节点的共面节点是否满足条件;所述条件为在所述当前节点之前解码的非空节点;如果是,将满足条件的共面节点的属性重建值作为属性值;否则,执行插值模块182;
插值模块182,用于根据插值节点的属性重建值,得到所述不满足条件的共面节点的属性值,所述插值节点既是所述不满足条件的共面节点的共面节点也是所述当前节点的共线节点,所述条件为在所述当前节点之前解码的非空节点;或者,根据预设的第一常数,得到所述不满足条件的共面节点的属性值,所述条件为在所述当前节点之前解码的非空节点
预测模块183,用于根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,M为正整数
在一些实施例中,插值模块182,用于:确定每一所述插值节点的权重值;根据每一所述插值节点的权重值,对每一所述插值节点的属性重建值进行加权平均计算,得到所述不满足条件的共面节点的属性值。
在一些实施例中,插值模块182,用于:将不满足所述条件的插值节点的权重值确定为预设的第二常数;将满足所述条件的插值节点的权重值确定为预设的第三常数。
在一些实施例中,所述预设的第二常数为0,所述预设的第三常数为1。
在一些实施例中,所述插值节点满足所述条件。
在一些实施例中,插值模块182,用于:将所述不满足条件的共面节点的所有插值节点中的一个节点的属性重建值,作为所述不满足条件的共面节点的属性值。
在一些实施例中,预测模块183,用于:将所述M个共面节点作为预测节点;根据所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值。
在一些实施例中,预测模块183,用于:根据所述M个共面节点得到K个预测节点;其中,K为大于0的整数;根据所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值。
在一些实施例中,其中,K为2的幂次。
在一些实施例中,预测模块183,用于:按照所述M个共面节点的特定编码顺序,得到K个预测节点;其中,当所述共面节点为所述满足条件的共面节点或至少有一个插值节点满足所述条件的所述不满足条件的共面节点时,将所述共面节点确定为所述预测节点;在所述满足条件的共面节点与至少有一个插值节点满足所述条件的所述不满足条件的共面节点的节点总数大于或等于K的情况下,将所述节点总数对应的节点中按照特定编码顺序排序的前K个节点,确定为所述预测节点;在所述节点总数大于0且小于K的情况下,确定填充节点的属性值;将所述节点总数对应的节点和所述填充节点,确定为所述预测节点。
在一些实施例中,预测模块183,用于:将所述节点总数对应的节点中按照所述特定编码顺序排序的第一个节点的属性值,确定为所述填充节点的属性值;或者,将所述节点总数对应的节点的属性值的均值,确定为所述填充节点的属性值;或者,将所述第一个节点的共面节点和/或共线节点的属性值的均值,确定为所述填充节点的属性值;或者,将预设的第四常数确定为所述填充节点的属性值。
在一些实施例中,预测模块183,用于:在任一所述预测节点满足所述条件的情况下,或者,在任一所述预测节点为所述不满足条件的共面节点且所述不满足条件的共面节点的至少一个插值节点满足所述条件的情况下,确定每一所述预测节点的权重值;根据每一所述预测节点的权重值,对每一所述预测节点的属性值进行加权平均计算,得到所述当前节点的属性预测值。
在一些实施例中,预测模块183,用于:将每一满足所述条件的预测节点的权重值,确定为预设的第五常数;将属于所述不满足条件的共面节点且所有插值节点均不满足所述条件的预测节点的权重值,确定为预设的第六常数;将属于所述不满足条件的共面节点且至少有一个插值节点满足所述条件的预测节点的权重值确定为所述预设的第七常数。
在一些实施例中,所述预设的第五常数大于或等于所述预设的第七常数。
在一些实施例中,预测模块183,用于:在所述预测节点的数目为2的幂次的情况下,通过乘法器对每一所述预测节点的属性值与对应的权重值进行乘法运算,得到第一运算结果;通过加法器对每一所述预测节点对应的所述第一运算结果进行加法运算,得到第二运算结果;通过移位器对所述第二运算结果和所述预测节点的数目进行移位运算,得到所述当前节点的属性预测值。
在一些实施例中,预测模块183,还用于:在每一所述预测节点均属于所述不满足条件的共面节点且每一所述预测节点的所有插值节点均不满足所述条件的情况下,根据在所述当前节点之前的至少一个完成解码的节点的属性重建值,确定所述当前节点的属性预测值。
在一些实施例中,预测模块183,用于:将所述当前节点的前一完成解码的节点的属性重建值,确定为所述当前节点的属性预测值。
在一些实施例中,所述M个共面节点为所述当前节点的所有共面节点。
在一些实施例中,确定模块181,还用于:从接收的属性码流中,解析出所述当前节点的残差;根据所述当前节点的属性预测值与所述残差,确定所述当前节点的属性重建值。
以上装置18的实施例的描述,与上述解码端的帧内预测方法实施例的描述是类似的,具有同这些方法实施例相似的有益效果。对于本申请装置实施例中未披露的技术细节,请参照本申请解码端的帧内预测方法实施例的描述而理解。
基于前述的实施例,本申请实施例提供的解码装置,包括所包括的各模块、以及各模块所包括的各单元,可以通过电子设备中的解码器或处理器来实现;当然也可以通过具体的逻辑电路实现;在实施的过程中,处理器可以为中央处理器(CPU)、微处理器(MPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)或图形处理器(Graphics Processing Unit,GPU)等。
图19为本申请实施例解码装置的结构示意图,如图19所示,所述装置19包括:解析模块191、帧内预测模块192和解码模块193;其中,
解析模块191,用于对接收的属性码流进行解析,得到当前节点的残差;
帧内预测模块192,用于:根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,M为正整数;
其中,对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据插值节点的属性重建值,得到所述不满足条件的共面节点的属性值,所述插值节点既是所述不满足条件的共面节点的共面节点也是所述当前节点的共线节点,所述条件为在所述当前节点之前解码的非空节点;或者,
对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据预设的第一常数,得到所述不满足条件的共面节点的属性值,所述条件为在所述当前节点之前解码的非空节点。
解码模块193,用于根据所述当前节点的属性预测值与所述残差,确定所述当前节点的属性重建值。
以上装置19的实施例的描述,与上述装置18实施例和上述解码端的帧内预测方法实施例的描述是类似的,具有同这些方法实施例相似的有益效果。对于本申请装置实施例中未披露的技术细节,请参照本申请解码端的帧内预测方法实施例的描述而理解。
需要说明的是,本申请实施例中,如果以软件功能模块的形式实现上述的帧内预测方法、编码方法或解码方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得电子设备执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本申请实施例不限制于任何特定的硬件和软件结合。
对应地,本申请实施例提供一种电子设备,图20为本申请实施例的电子设备的硬件实体示意图,如图20所示,所述电子设备20包括存储器201和处理器202,所述存储器201存储有可在处理器202上运行的计算机程序,所述处理器202执行所述程序时实现上述实施例中提供的方法中的步骤。
本申请实施例一种编码器,图21为本申请实施例的编码器的硬件实体示意图,所述编码器21包括存储器211和处理器212;其中,所述存储器211,用于存储能够在所述处理器212上运行的计算机程序;所述处理器212,用于在运行所述计算机程序时,执行上述实施例中提供的方法中的步骤。
本申请实施例一种解码器,图22为本申请实施例的解码器的硬件实体示意图,所述解码器22包括存储器221和处理器222;其中,所述存储器221,用于存储能够在所述处理器222上运行的计算机程序;所述处理器222,用于在运行所述计算机程序时,执行上述实施例中提供的方法中的步骤。
需要说明的是,存储器配置为存储由处理器可执行的指令和应用,还可以缓存待处理器以及相应设备中各模块待处理或已经处理的数据(例如,点云数据、图像数据、音频数据、语音通信数据和视频通信数据),可以通过闪存(FLASH)或随机访问存储器(Random Access Memory,RAM)实现。
对应地,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序 被处理器执行时实现上述实施例中提供的方法中的步骤。
这里需要指出的是:以上电子设备、编码器、解码器和存储介质实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请电子设备、编码器、解码器和存储介质实施例中未披露的技术细节,可以参照本申请方法实施例的描述而理解。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”或“一些实施例”或“另一些实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”或“在一些实施例中”或“在另一些实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者设备中还存在另外的相同要素。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个模块或组件可以结合,或可以集成到另一个***,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或模块的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的模块可以是、或也可以不是物理上分开的,作为模块显示的部件可以是、或也可以不是物理模块;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部模块来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能模块可以全部集成在一个处理单元中,也可以是各模块分别单独作为一个单元,也可以两个或两个以上模块集成在一个单元中;上述集成的模块既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得电子设备或编码器或解码器执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本申请所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
以上所述,仅为本申请的实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (48)
- 一种帧内预测方法,所述方法包括:根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,M为正整数;其中,对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据插值节点的属性重建值,得到所述不满足条件的共面节点的属性值,所述插值节点既是所述不满足条件的共面节点的共面节点也是所述当前节点的共线节点,所述条件为在所述当前节点之前解码的非空节点;或者,对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据预设的第一常数,得到所述不满足条件的共面节点的属性值,所述条件为在所述当前节点之前解码的非空节点。
- 根据权利要求1所述的方法,其中,所述根据插值节点的属性重建值,得到所述不满足条件的共面节点的属性值,包括:确定每一所述插值节点的权重值;根据每一所述插值节点的权重值,对每一所述插值节点的属性重建值进行加权平均计算,得到所述不满足条件的共面节点的属性值。
- 根据权利要求2所述的方法,其中,所述确定每一所述插值节点的权重值,包括:将不满足所述条件的插值节点的权重值确定为预设的第二常数;将满足所述条件的插值节点的权重值确定为预设的第三常数。
- 根据权利要求3所述的方法,其中,所述预设的第二常数为0,所述预设的第三常数为1。
- 根据权利要求2所述的方法,其中,所述插值节点满足所述条件。
- 根据权利要求1所述的方法,其中,所述根据插值节点的属性重建值,得到所述不满足条件的共面节点的属性值,包括:将所述不满足条件的共面节点的所有插值节点中的一个节点的属性重建值,作为所述不满足条件的共面节点的属性值。
- 根据权利要求1所述的方法,其中,所述根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,包括:将所述M个共面节点作为预测节点;根据所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值。
- 根据权利要求1所述的方法,其中,所述根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,包括:根据所述M个共面节点得到K个预测节点;其中,K为大于0的整数;根据所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值。
- 根据权利要求8所述的方法,其中,K为2的幂次。
- 根据权利要求8所述的方法,其中,所述根据所述M个共面节点得到K个预测节点,包括:按照所述M个共面节点的特定编码顺序,得到K个预测节点;其中,当所述共面节点为所述满足条件的共面节点或至少有一个插值节点满足所述条件的所述不满足条件的共面节点时,将所述共面节点确定为所述预测节点;在所述满足条件的共面节点与至少有一个插值节点满足所述条件的所述不满足条件的共面节点的节点总数大于或等于K的情况下,将所述节点总数对应的节点中按照特定编码顺序排序的前K个节点,确定为所述预测节点;在所述节点总数大于0且小于K的情况下,确定填充节点的属性值;将所述节点总数对应的节点和所述填充节点,确定为所述预测节点。
- 根据权利要求10所述的方法,其中,所述确定填充节点的属性值,包括:将所述节点总数对应的节点中按照所述特定编码顺序排序的第一个节点的属性值,确定为所述填充节点的属性值;或者,将所述节点总数对应的节点的属性值的均值,确定为所述填充节点的属性值;或者,将所述第一个节点的共面节点和/或共线节点的属性值的均值,确定为所述填充节点的属性值; 或者,将预设的第四常数确定为所述填充节点的属性值。
- 根据权利要求7或8所述的方法,其中,所述根据所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值,包括:在任一所述预测节点满足所述条件的情况下,或者,在任一所述预测节点为所述不满足条件的共面节点且所述不满足条件的共面节点的至少一个插值节点满足所述条件的情况下,确定每一所述预测节点的权重值;根据每一所述预测节点的权重值,对每一所述预测节点的属性值进行加权平均计算,得到所述当前节点的属性预测值。
- 根据权利要求12所述的方法,其中,所述确定每一所述预测节点的权重值,包括:将每一满足所述条件的预测节点的权重值,确定为预设的第五常数;将属于所述不满足条件的共面节点且所有插值节点均不满足所述条件的预测节点的权重值,确定为预设的第六常数;将属于所述不满足条件的共面节点且至少有一个插值节点满足所述条件的预测节点的权重值确定为所述预设的第七常数。
- 根据权利要求13所述的方法,其中,所述预设的第五常数大于或等于所述预设的第七常数。
- 根据权利要求12所述的方法,其中,所述根据每一所述预测节点的权重值,对每一所述预测节点的属性值进行加权平均计算,得到所述当前节点的属性预测值,包括:在所述预测节点的数目为2的幂次的情况下,通过乘法器对每一所述预测节点的属性值与对应的权重值进行乘法运算,得到第一运算结果;通过加法器对每一所述预测节点对应的所述第一运算结果进行加法运算,得到第二运算结果;通过移位器对所述第二运算结果和所述预测节点的数目进行移位运算,得到所述当前节点的属性预测值。
- 根据权利要求7或8所述的方法,其中,所述根据每一所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值,还包括:在每一所述预测节点均属于所述不满足条件的共面节点且每一所述预测节点的所有插值节点均不满足所述条件的情况下,根据在所述当前节点之前的至少一个完成解码的节点的属性重建值,确定所述当前节点的属性预测值。
- 根据权利要求16所述的方法,其中,所述根据在当前节点之前的至少一个完成解码的节点的属性重建值,确定所述当前节点的属性预测值,包括:将所述当前节点的前一完成解码的节点的属性重建值,确定为所述当前节点的属性预测值。
- 根据权利要求1至17任一项所述的方法,其中,所述M个共面节点为所述当前节点的所有共面节点。
- 根据权利要求1至17任一项所述的方法,其中,所述方法还包括:从接收的属性码流中,解析出所述当前节点的残差;根据所述当前节点的属性预测值与所述残差,确定所述当前节点的属性重建值。
- 一种点云解码方法,所述方法包括:对接收的属性码流进行解析,得到当前节点的残差;对所述当前节点执行如权利要求1至18任一项所述的方法中的步骤,得到所述当前节点的属性预测值;根据所述当前节点的属性预测值与所述残差,确定所述当前节点的属性重建值。
- 一种帧内预测方法,所述方法包括:根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,M为正整数;其中,对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据插值节点的属性重建值,得到所述不满足条件的共面节点的属性值,所述插值节点既是所述不满足条件的共面节点的共面节点也是所述当前节点的共线节点,所述条件为在所述当前节点之前编码的非空节点;或者,对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据预设的第一常数,得到所述不满足条件的共面节点的属性值,所述条件为在所述当前节点之前编码的非空节点。
- 根据权利要求21所述的方法,其中,所述根据插值节点的属性重建值,得到所述不满足条 件的共面节点的属性值,包括:确定每一所述插值节点的权重值;根据每一所述插值节点的权重值,对每一所述插值节点的属性重建值进行加权平均计算,得到所述不满足条件的共面节点的属性值。
- 根据权利要求22所述的方法,其中,所述确定每一所述插值节点的权重值,包括:将不满足所述条件的插值节点的权重值确定为预设的第二常数;将满足所述条件的插值节点的权重值确定为预设的第三常数。
- 根据权利要求23所述的方法,其中,所述预设的第二常数为0,所述预设的第三常数为1。
- 根据权利要求22所述的方法,其中,所述插值节点满足所述条件。
- 根据权利要求21所述的方法,其中,所述根据插值节点的属性重建值,得到所述不满足条件的共面节点的属性值,包括:将所述不满足条件的共面节点的所有插值节点中的一个节点的属性重建值,作为所述不满足条件的共面节点的属性值。
- 根据权利要求21所述的方法,其中,所述根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,包括:将所述M个共面节点作为预测节点;根据所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值。
- 根据权利要求21所述的方法,其中,所述根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,包括:根据所述M个共面节点得到K个预测节点;其中,K为大于0的整数;根据所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值。
- 根据权利要求28所述的方法,其中,K为2的幂次。
- 根据权利要求28所述的方法,其中,所述根据所述M个共面节点得到K个预测节点,包括:按照所述M个共面节点的特定编码顺序,得到K个预测节点;其中,当所述共面节点为所述满足条件的共面节点或至少有一个插值节点满足所述条件的所述不满足条件的共面节点时,将所述共面节点确定为所述预测节点;在所述满足条件的共面节点与至少有一个插值节点满足所述条件的所述不满足条件的共面节点的节点总数大于或等于K的情况下,将所述节点总数对应的节点中按照特定编码顺序排序的前K个节点,确定为所述预测节点;在所述节点总数大于0且小于K的情况下,确定填充节点的属性值;将所述节点总数对应的节点和所述填充节点,确定为所述预测节点。
- 根据权利要求30所述的方法,其中,所述确定填充节点的属性值,包括:将所述节点总数对应的节点中按照所述特定编码顺序排序的第一个节点的属性值,确定为所述填充节点的属性值;或者,将所述节点总数对应的节点的属性值的均值,确定为所述填充节点的属性值;或者,将所述第一个节点的共面节点和/或共线节点的属性值的均值,确定为所述填充节点的属性值;或者,将预设的第四常数确定为所述填充节点的属性值。
- 根据权利要求27或28所述的方法,其中,所述根据所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值,包括:在任一所述预测节点满足所述条件的情况下,或者,在任一所述预测节点为所述不满足条件的共面节点且所述不满足条件的共面节点的至少一个插值节点满足所述条件的情况下,确定每一所述预测节点的权重值;根据每一所述预测节点的权重值,对每一所述预测节点的属性值进行加权平均计算,得到所述当前节点的属性预测值。
- 根据权利要求32所述的方法,其中,所述确定每一所述预测节点的权重值,包括:将每一满足所述条件的预测节点的权重值,确定为预设的第五常数;将属于所述不满足条件的共面节点且所有插值节点均不满足所述条件的预测节点的权重值,确 定为预设的第六常数;将属于所述不满足条件的共面节点且至少有一个插值节点满足所述条件的预测节点的权重值确定为所述预设的第七常数。
- 根据权利要求33所述的方法,其中,所述预设的第五常数大于或等于所述预设的第七常数。
- 根据权利要求32所述的方法,其中,所述根据每一所述预测节点的权重值,对每一所述预测节点的属性值进行加权平均计算,得到所述当前节点的属性预测值,包括:在所述预测节点的数目为2的幂次的情况下,通过乘法器对每一所述预测节点的属性值与对应的权重值进行乘法运算,得到第一运算结果;通过加法器对每一所述预测节点对应的所述第一运算结果进行加法运算,得到第二运算结果;通过移位器对所述第二运算结果和所述预测节点的数目进行移位运算,得到所述当前节点的属性预测值。
- 根据权利要求27或28所述的方法,其中,所述根据每一所述预测节点的属性值,对所述当前节点的属性进行预测,得到所述当前节点的属性预测值,还包括:在每一所述预测节点均属于所述不满足条件的共面节点且每一所述预测节点的所有插值节点均不满足所述条件的情况下,根据在所述当前节点之前的至少一个完成编码的节点的属性重建值,确定所述当前节点的属性预测值。
- 根据权利要求36所述的方法,其中,所述根据在当前节点之前的至少一个完成编码的节点的属性重建值,确定所述当前节点的属性预测值,包括:将所述当前节点的前一完成编码的节点的属性重建值,确定为所述当前节点的属性预测值。
- 根据权利要求21至37任一项所述的方法,其中,所述M个共面节点为所述当前节点的所有共面节点。
- 根据权利要求21至37任一项所述的方法,其中,所述方法还包括:确定所述当前节点的属性预测值与所述当前节点的原始属性值之间的残差;根据所述当前节点的属性预测值与所述残差,确定所述当前节点的属性重建值。
- 一种点云编码方法,所述方法包括:对点云的当前节点执行如权利要求21至38任一项所述的方法中的步骤,得到所述当前节点的属性预测值;确定所述当前节点的属性预测值与所述当前节点的原始属性值之间的残差;将所述当前节点的残差编码为属性码流。
- 一种帧内预测装置,包括:预测模块,用于根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,M为正整数;其中,对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据插值节点的属性重建值,得到所述不满足条件的共面节点的属性值,所述插值节点既是所述不满足条件的共面节点的共面节点也是所述当前节点的共线节点,所述条件为在所述当前节点之前解码的非空节点;或者,对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据预设的第一常数,得到所述不满足条件的共面节点的属性值,所述条件为在所述当前节点之前解码的非空节点。。
- 一种解码装置,包括:解析模块,用于对接收的属性码流进行解析,得到当前节点的残差;帧内预测模块,用于执行权利要求1至18任一项所述的方法中的步骤,得到当前节点的属性预测值;解码模块,用于根据所述当前节点的属性预测值与所述残差,确定所述当前节点的属性重建值。
- 一种解码器,所述解码器包括存储器和处理器;其中,所述存储器,用于存储能够在所述处理器上运行的计算机程序;所述处理器,用于在运行所述计算机程序时,执行如权利要求1至20任一项所述的方法。
- 一种帧内预测装置,包括:预测模块,用于根据当前节点的M个共面节点的属性值,得到所述当前节点的属性预测值,M为正整数;其中,对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据插 值节点的属性重建值,得到所述不满足条件的共面节点的属性值,所述插值节点既是所述不满足条件的共面节点的共面节点也是所述当前节点的共线节点,所述条件为在所述当前节点之前编码的非空节点;或者,对于满足条件的共面节点的属性值为属性重建值,对于不满足条件的共面节点,根据预设的第一常数,得到所述不满足条件的共面节点的属性值,所述条件为在所述当前节点之前编码的非空节点。
- 一种编码装置,包括:帧内预测模块,用于执行如权利要求21至38任一项所述的方法中的步骤,得到当前节点的属性预测值;确定模块,用于确定所述当前节点的属性预测值与所述当前节点的原始属性值之间的残差;编码模块,用于将所述当前节点的残差编码为属性码流。
- 一种编码器,所述编码器包括存储器和处理器;其中,所述存储器,用于存储能够在所述处理器上运行的计算机程序;所述处理器,用于在运行所述计算机程序时,执行如权利要求21至40任一项所述的方法。
- 一种电子设备,包括存储器和处理器;其中,所述存储器,用于存储能够在所述处理器上运行的计算机程序;所述处理器,用于在运行所述计算机程序时,执行如权利要求1至40任一项所述的方法。
- 一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现权利要求1至40任一项所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2020/133712 WO2022116122A1 (zh) | 2020-12-03 | 2020-12-03 | 帧内预测方法及装置、编解码器、设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116458158A true CN116458158A (zh) | 2023-07-18 |
Family
ID=81852877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080107272.5A Pending CN116458158A (zh) | 2020-12-03 | 2020-12-03 | 帧内预测方法及装置、编解码器、设备、存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN116458158A (zh) |
WO (1) | WO2022116122A1 (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110418135A (zh) * | 2019-08-05 | 2019-11-05 | 北京大学深圳研究生院 | 一种基于邻居的权重优化的点云帧内预测方法及设备 |
US20200107048A1 (en) * | 2018-10-02 | 2020-04-02 | Tencent America LLC | Method and apparatus for video coding |
WO2020072665A1 (en) * | 2018-10-02 | 2020-04-09 | Futurewei Technologies, Inc. | Hierarchical tree attribute coding in point cloud coding |
CN111095929A (zh) * | 2017-09-14 | 2020-05-01 | 苹果公司 | 点云压缩 |
CN111145090A (zh) * | 2019-11-29 | 2020-05-12 | 鹏城实验室 | 一种点云属性编码方法、解码方法、编码设备及解码设备 |
WO2020123469A1 (en) * | 2018-12-11 | 2020-06-18 | Futurewei Technologies, Inc. | Hierarchical tree attribute coding by median points in point cloud coding |
CN111405284A (zh) * | 2020-03-30 | 2020-07-10 | 北京大学深圳研究生院 | 一种基于点云密度的属性预测方法及设备 |
CN111432210A (zh) * | 2020-04-30 | 2020-07-17 | 中山大学 | 一种基于填充的点云属性压缩方法 |
US20200302651A1 (en) * | 2019-03-18 | 2020-09-24 | Blackberry Limited | Methods and devices for predictive point cloud attribute coding |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11297346B2 (en) * | 2016-05-28 | 2022-04-05 | Microsoft Technology Licensing, Llc | Motion-compensated compression of dynamic voxelized point clouds |
EP3429206A1 (en) * | 2017-07-13 | 2019-01-16 | Thomson Licensing | Method and device for encoding a point cloud |
CN108322742B (zh) * | 2018-02-11 | 2019-08-16 | 北京大学深圳研究生院 | 一种基于帧内预测的点云属性压缩方法 |
US10657689B2 (en) * | 2018-04-13 | 2020-05-19 | Sony Corporation | Method and apparatus for point cloud color processing |
CN111953998B (zh) * | 2020-08-16 | 2022-11-11 | 西安电子科技大学 | 基于dct变换的点云属性编码及解码方法、装置及*** |
-
2020
- 2020-12-03 CN CN202080107272.5A patent/CN116458158A/zh active Pending
- 2020-12-03 WO PCT/CN2020/133712 patent/WO2022116122A1/zh active Application Filing
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111095929A (zh) * | 2017-09-14 | 2020-05-01 | 苹果公司 | 点云压缩 |
US20200107048A1 (en) * | 2018-10-02 | 2020-04-02 | Tencent America LLC | Method and apparatus for video coding |
WO2020072665A1 (en) * | 2018-10-02 | 2020-04-09 | Futurewei Technologies, Inc. | Hierarchical tree attribute coding in point cloud coding |
WO2020123469A1 (en) * | 2018-12-11 | 2020-06-18 | Futurewei Technologies, Inc. | Hierarchical tree attribute coding by median points in point cloud coding |
US20200302651A1 (en) * | 2019-03-18 | 2020-09-24 | Blackberry Limited | Methods and devices for predictive point cloud attribute coding |
CN110418135A (zh) * | 2019-08-05 | 2019-11-05 | 北京大学深圳研究生院 | 一种基于邻居的权重优化的点云帧内预测方法及设备 |
CN111145090A (zh) * | 2019-11-29 | 2020-05-12 | 鹏城实验室 | 一种点云属性编码方法、解码方法、编码设备及解码设备 |
CN111405284A (zh) * | 2020-03-30 | 2020-07-10 | 北京大学深圳研究生院 | 一种基于点云密度的属性预测方法及设备 |
CN111432210A (zh) * | 2020-04-30 | 2020-07-17 | 中山大学 | 一种基于填充的点云属性压缩方法 |
Non-Patent Citations (1)
Title |
---|
代路伟;罗家融;: "H.264解码器中帧内预测模块的硬件设计", 网络新媒体技术, no. 02, 15 March 2016 (2016-03-15) * |
Also Published As
Publication number | Publication date |
---|---|
WO2022116122A1 (zh) | 2022-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3922035A1 (en) | Point cloud geometry padding | |
JP2018534881A (ja) | 点群を圧縮する方法 | |
JP2015504545A (ja) | 予測位置符号化 | |
US11711535B2 (en) | Video-based point cloud compression model to world signaling information | |
WO2022121648A1 (zh) | 点云数据编码方法、解码方法、设备、介质及程序产品 | |
US11983905B2 (en) | Methods for level partition of point cloud, and decoder | |
CN114598891A (zh) | 点云数据编码方法、解码方法、点云数据处理方法及装置 | |
KR20230060534A (ko) | 2차원 정규화 평면 투사에 기초한 포인트 클라우드 인코딩 및 디코딩 방법과 장치 | |
WO2022131948A1 (en) | Devices and methods for sequential coding for point cloud compression | |
CN117280680A (zh) | 动态网格对齐的并行方式 | |
CN116458158A (zh) | 帧内预测方法及装置、编解码器、设备、存储介质 | |
CN116941242A (zh) | 帧内预测方法及装置、编解码器、设备、存储介质 | |
WO2022257143A1 (zh) | 帧内预测、编解码方法及装置、编解码器、设备、介质 | |
WO2023023914A1 (zh) | 帧内预测、编解码方法及装置、编解码器、设备、介质 | |
WO2023123284A1 (zh) | 一种解码方法、编码方法、解码器、编码器及存储介质 | |
WO2023097694A1 (zh) | 解码方法、编码方法、解码器以及编码器 | |
WO2022257155A1 (zh) | 解码方法、编码方法、解码器、编码器以及编解码设备 | |
WO2024012381A1 (en) | Method, apparatus, and medium for point cloud coding | |
WO2024074123A1 (en) | Method, apparatus, and medium for point cloud coding | |
US20240257404A1 (en) | Methods for level partition of point cloud, and decoder | |
WO2024074122A1 (en) | Method, apparatus, and medium for point cloud coding | |
WO2024146644A1 (en) | Method, apparatus, and medium for point cloud coding | |
WO2023173238A1 (zh) | 编解码方法、码流、编码器、解码器以及存储介质 | |
WO2023023918A1 (zh) | 解码方法、编码方法、解码器以及编码器 | |
US20230412837A1 (en) | Point cloud data transmission method, point cloud data transmission device, point cloud data reception method, and point cloud data reception device |
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 |