CN116320487A - 帧内预测方法、装置、编码器、解码器、及存储介质 - Google Patents

帧内预测方法、装置、编码器、解码器、及存储介质 Download PDF

Info

Publication number
CN116320487A
CN116320487A CN202310244899.0A CN202310244899A CN116320487A CN 116320487 A CN116320487 A CN 116320487A CN 202310244899 A CN202310244899 A CN 202310244899A CN 116320487 A CN116320487 A CN 116320487A
Authority
CN
China
Prior art keywords
occupation
current node
prediction
node
child
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
Application number
CN202310244899.0A
Other languages
English (en)
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.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp 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 Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN202310244899.0A priority Critical patent/CN116320487A/zh
Publication of CN116320487A publication Critical patent/CN116320487A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • 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/102Methods 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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/40Tree coding, e.g. quadtree, octree
    • 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/102Methods 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/124Quantisation
    • 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/102Methods 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/134Methods 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/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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/134Methods 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/167Position within a video image, e.g. region of interest [ROI]
    • 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
    • H04N19/184Methods 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 bits, e.g. of the compressed video stream
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本申请实施例提供了一种帧内预测方法、装置、编码器、解码器及存储介质,该方法包括:确定对输入点云进行划分后得到的当前层级小于目标层级时,获得当前节点的第一数量个邻居节点的占位信息;从第一数量个邻居节点的占位信息中,提取第二数量个邻居节点的占位信息;其中,第一数量大于第二数量,且第二数量个邻居节点与当前节点的子节点之间具有关联关系;基于第二数量个邻居节点的占位信息,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果。

Description

帧内预测方法、装置、编码器、解码器、及存储介质
本申请是申请日为2020年01月06日的PCT国际专利申请PCT/CN2020/070557进入中国国家阶段的中国专利申请号202080092122.1、发明名称为“帧内预测方法、装置、编码器、解码器、及存储介质”的分案申请。
技术领域
本申请实施例涉及通信领域中的编解码技术,尤其涉及一种帧内预测方法、装置、编码器、解码器及存储介质。
背景技术
目前,相关技术基于八叉树几何信息编码的帧内预测方案中,利用当前节点的26个邻居节点的占位信息与多个预设阈值进行计算和比较。需要说明的是,采用上述预测方案进行帧内预测时,涉及的查找表(Look Up Table)较多,而且,进行帧内预测时至少涉及16个权重以及10个阈值的设置,使最优解很难被找到,从而导致帧内预测的结果无法达到最优。由此可知,相关技术中进行帧内预测时存在计算量大,编解码时间较长以及帧内预测结果不准确的问题。
发明内容
本申请实施例提供了一种帧内预测方法、装置、编码器、解码器及存储介质,能够提升编解码处理时的帧内预测的速度和准确度,进而提高编解码的质量。
本申请实施例的技术方案可以如下实现:
第一方面,本申请实施例提供了一种帧内预测方法,包括:
确定对输入点云进行划分后得到的当前层级小于目标层级时,获得当前节点的第一数量个邻居节点的占位信息;
从所述第一数量个邻居节点的占位信息中,提取第二数量个邻居节点的占位信息;其中,所述第一数量大于所述第二数量,且所述第二数量个邻居节点与所述当前节点的子节点之间具有关联关系;
基于所述第二数量个邻居节点的占位信息,对所述当前节点的子节点的占位信息进行帧内预测,得到第一预测结果。
第二方面,本申请实施例还提供了一种帧内预测装置,包括:
第一处理模块,配置为:确定对输入点云进行划分后得到的当前层级小于目标层级时,获得当前节点的第一数量个邻居节点的占位信息;
第一提取模块,配置为:从所述第一数量个邻居节点的占位信息中,提取第二数量个邻居节点的占位信息;其中,所述第一数量大于所述第二数量,且所述第二数量个邻居节点与所述当前节点的子节点之间具有关联关系;
第二处理模块,配置为:基于所述第二数量个邻居节点的占位信息,对所述当前节点的子节点的占位信息进行帧内预测,得到第一预测结果。
第三方面,本申请实施例提供了一种编码器,包括:
第一存储器,用于存储可执行帧内预测指令;
第一处理器,用于执行所述第一存储器中存储的可执行帧内预测指令时,实现第一方面所述的帧内预测方法。
第四方面,本申请实施例还提供了一种解码器,包括:
第二存储器,用于存储可执行帧内预测指令;
第二处理器,用于执行所述第二存储器中存储的可执行帧内预测指令时,实现第一方面所述的帧内预测方法。
第五方面,本申请实施例提供了一种计算机可读存储介质,存储有可执行帧内预测指令,用于引起第一处理器执行时,实现第一方面所述的帧内预测方法。
本申请实施例提供了一种帧内预测方法、装置、编码器、解码器及存储介质,方法包括:确定对输入点云进行划分后得到的当前层级小于目标层级时,获得当前节点的第一数量个邻居节点的占位信息;从第一数量个邻居节点的占位信息中,提取第二数量个邻居节点的占位信息;其中,第一数量大于第二数量,且第二数量个邻居节点与当前节点的子节点之间具有关联关系;基于第二数量个邻居节点的占位信息,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果;也就是说,本申请实施例对当前节点的子节点的占位信息进行帧内预测时,仅考虑了与当前节点的子节点之间具有关联关系的第二数量个邻居节点,从而达到了减少查找表,降低计算复杂度,提高帧内预测结果的准确性,缩短编解码时长以及提高编解码准确性的目的。
附图说明
图1为本申请实施例提供的示例性的编码流程框图;
图2为本申请实施例提供的示例性的帧内预测方法的流程示意图一;
图3为本申请实施例提供的示例性的帧内预测方法的流程示意图二;
图4为本申请实施例提供的示例性的当前节点的不同子节点包括点云的示意图;
图5为本申请实施例提供的示例性的编码器执行帧内预测方法的流程示意图;
图6为本申请实施例提供的示例性的解码器执行帧内预测方法的流程示意图;
图7为本申请实施例提供的示例性的当前节点的某一子节点包括点云的示意图;
图8为本申请实施例提供的一种有损压缩下的BD-Rate;
图9为本申请实施例提供的一种无损压缩下的bpip ratio;
图10为本申请实施例提供的一种帧内预测装置的结构示意图;
图11为本申请实施例提供的一种编码器的结构示意图;
图12为本申请实施例提供的一种解码器的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请的具体技术方案做进一步详细描述。以下实施例用于说明本申请,但不用来限制本申请的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
需要指出,本申请实施例所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
1)点云压缩(Point Cloud Compression,PCC)
2)基于几何的点云压缩(Geometry-based Point Cloud Compression,G-PCC)
3)片层/条带slice
4)包围盒bounding box
5)八叉树octree
6)帧内预测intra prediction
7)三角面片集(triangle soup,trisoup)
8)基于上下文模型的自适应二进制算术编码(Context-based Adaptive BinaryArithmetic Coding,CABAC)
9)块block
10)交点vertex
11)红绿蓝(Red-Green-Blue,RGB)
12)亮度色度(Luminance-Chrominance,YUV)
13)细节层次(Level of Detail,LOD)
14)区域自适应分层变换(Region Adaptive Hierarchal Transform,RAHT)
15)查找表(Look Up Table,LUT)
16)动态图像专家组(Moving Picture Experts Group,MPEG)
17)国际标准化组织(International Standardization Organization,ISO)
18)国际电工委员会(International Electrotechnical Commission,IEC)
19)邻居节点中占据节点个数(number of occupied neighbours,No)
在本申请实施例中,在点云G-PCC编码器框架中,将输入三维图像模型的点云进行slice划分后,对每一个slice进行独立编码。
如图1所示的G-PCC编码的流程框图中,将输入点云进行slice划分后,对每一个slice进行独立编码。在每一个slice中,点云的几何信息和每点所对应的属性信息是分开进行编码的。首先对几何信息进行坐标转换,使点云全都包含在一个bounding box中。然后再进行量化,这一步量化主要起到缩放的作用,由于量化取整,使得一部分点的几何信息相同,根据参数来决定是否移除重复点,量化和移除重复点这一过程又被称为体素化过程。接下来,对bounding box进行基于octree的划分。根据八叉树划分层级深度的不同,几何信息的编码又分为基于八叉树和trisoup的两种框架。
在基于八叉树的几何信息编码框架中,将包围盒八等分为8个子立方体,并记录每个立方体的占位信息(1为非空,0为空),对非空的子立方体继续进行八等分,直到划分得到的叶子节点为1x1x1的单位立方体时停止划分。在这个过程中,利用节点与周围节点的空间相关性,对占位信息进行intra prediction,最后进行CABAC,生成二进制码流。
在基于trisoup的几何信息编码框架中,同样也要先进行八叉树划分,但区别于基于八叉树的几何信息编码,该方法不需要将点云逐级划分到边长为1x1x1的单位立方体,而是划分到block边长为W时停止划分,基于每个block中点云的分布所形成的表面,得到该表面与block的十二条边所产生的至多十二个vertex。依次编码每个block的vertex坐标,生成二进制码流。
几何编码完成后,对几何信息进行重建。目前,属性编码主要针对颜色信息进行。首先,将颜色信息从RGB颜色空间转换到YUV颜色空间。然后,利用重建的几何信息对点云重新着色,使得未编码的属性信息与重建的几何信息对应起来。在颜色信息编码中,主要有两种变换方法,一是依赖于LOD划分的基于距离的提升变换,二是直接进行RAHT变换,这两种方法都会将颜色信息从空间域转换到频域,通过变换得到高频系数和低频系数,最后对系数进行量化并编码,生成二进制码流。
这里,对基于八叉树几何信息编码的帧内预测进行说明:
根据当前节点的26个邻居节点的占位信息对当前节点的子节点是否被占据进行预测,即为帧内预测,帧内预测的实施描述如下:
首先、当八叉树划分的当前层级小于预设的层数L时,使能帧内预测。输入为:用来映射(x,y,z)坐标与标志位的莫顿3D地图、地图移位参数,以及当前节点的原点的坐标。
其次、根据邻居节点k的占位信息δk以及它到当前节点的子节点的距离dk,m设置权重值W(dk,mk),
Figure BDA0004125629860000041
接着、再将26个权重求平均得到相应的分数scorem
Figure BDA0004125629860000042
然后、再设置两组与邻居节点中占据节点个数No(number of occupiedneighbours)相关的阈值th0(No)与th1(No),并预测scorem小于并等于th0(No)时的节点为“不占据”,scorem大于并等于th1(No)时的节点为“占据”,否则为“不预测”。
最后、输出0或1表示的“是否预测”与“预测值”用到之后的对占位信息的熵编码当中。其中,1、1代表“占据”;1、0代表“不占据”;0、0代表“不预测”。
这里,W0(dk,m)、W1(dk,m)、th0(No)与th1(No)的值均为训练得到的,在编解码器中为预设的固定值,不需要由编码端向解码端传输。该技术方案的流程、框架与算法在编码端与解码端完全一样。
需要说明的是,基于八叉树几何信息编码的帧内预测技术方案中至少存在如下缺陷,利用了当前节点的26个邻居节点的占位信息,非空为1,空为0,再根据W0(dk,m)、W1(dk,m)、th0(No)与th0(No)进行计算和比较,最终将预测结果分为三类。该方案中,Look UpTable较多,其16个权重以及10个阈值的设置使最优解很难被找到,使得帧内预测的结果无法达到最优。再考虑到某些邻居节点对当前节点的某个子节点几乎没有影响,利用所有26个邻居进行预测则是过多引入了计算量,导致编解码的时间较长。
本申请的实施例提供一种帧内预测方法,参照图2所示,该方法包括以下步骤:
步骤101、确定对输入点云进行划分后得到的当前层级小于目标层级时,获得当前节点的第一数量个邻居节点的占位信息。
本申请实施例中,编码器或解码器可以执行步骤101-步骤103,以得到对当前节点的子节点的占位信息进行帧内预测的第一预测结果。
这里,以编码器执行步骤101-步骤103为例,该编码器包括三维点云编码器,如G-PCC编码器。G-PCC编码器将输入点云进行slice划分后,对每一个slice进行独立编码;这里,编码器确定对输入点云进行划分后得到的当前层级小于目标层级时,获得当前节点的第一数量个邻居节点的占位信息。在一些实施例中,编码器可以基于octree对输入点云进行划分。
步骤102、从第一数量个邻居节点的占位信息中,提取第二数量个邻居节点的占位信息。
其中,第一数量大于第二数量,且第二数量个邻居节点与当前节点的子节点之间具有关联关系。
本申请实施例中,编码器获得当前节点的第一数量个邻居节点的占位信息之后,从第一数量个邻居节点的占位信息中,提取第二数量个邻居节点的占位信息,需要说明的的,第二数量个邻居节点与当前节点的子节点之间具有关联关系,也就是说,在得到当前节点的第一数量个邻居节点的占位信息,先对当前节点的第一数量个邻居节点的占位信息进行筛选,确定对当前节点的子节点具有一定影响的邻居节点的占位信息,并将筛选出的占位信息作为对当前节点的子节点的占位信息进行帧内预测的参考因素,如此,减少了将全部第一数量个邻居节点的占位信息考虑在内的计算量,为缩短编码时长,提高编码效率,以及提升编码准确性奠定了基础。
步骤103、基于第二数量个邻居节点的占位信息,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果。
本申请实施例中,编码器筛选出第二数量个邻居节点的占位信息后,基于第二数量个邻居节点的占位信息,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果。
本申请实施例所提供的帧内预测方法,确定对输入点云进行划分后得到的当前层级小于目标层级时,获得当前节点的第一数量个邻居节点的占位信息;从第一数量个邻居节点的占位信息中,提取第二数量个邻居节点的占位信息;其中,第一数量大于第二数量,且第二数量个邻居节点与当前节点的子节点之间具有关联关系;基于第二数量个邻居节点的占位信息,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果;也就是说,本申请实施例对当前节点的子节点的占位信息进行帧内预测时,仅考虑了与当前节点的子节点之间具有关联关系的第二数量个邻居节点,从而达到了减少查找表,降低计算复杂度,提高帧内预测结果的准确性,缩短编解码时长以及提高编解码准确性的目的。
本申请的实施例提供一种帧内预测方法,参照图3所示,需要说明的是,当帧内预测方法应用于编码器时,该方法包括步骤201-步骤206;当帧内预测方法应用于解码器时,该方法包括步骤201-步骤204以及步骤207-步骤208;
在一些实施例中,编码器包括三维点云编码器;解码器包括三维点云解码器。
步骤201、确定对输入点云进行划分后得到的当前层级小于目标层级时,获得当前节点的第一数量个邻居节点的占位信息。
本申请实施例中,编码器或者解码器确定对输入点云进行划分后得到的当前层级L小于目标层级时,获得当前节点的第一数量个邻居节点的占位信息。示例性的,编码器或者解码器根据输入点云获得当前节点k的占位信息δ(k),其中k取值[0,25],δ为0或1。
步骤202、从第一数量个邻居节点的占位信息中,提取第二数量个邻居节点的占位信息。
其中,第一数量大于第二数量,且第二数量个邻居节点与当前节点的子节点之间具有关联关系。这里,关联关系,包括:第二数量个邻居节点与当前节点的子节点之间共享面、边以及顶点。
本申请实施例中,第二数量个邻居节点包括与当前节点的子节点之间共享面、边以及顶点的邻居节点,从而将第一数量个邻居节点中对当前节点的某个子节点几乎没有影响或者影响很小的邻居节点筛除,如此,不仅减少了计算量,同时有效缩短了编解码的时长,且确保编解码的准确性。
步骤203、基于第二数量个邻居节点的占位信息,确定子节点的第二数量个邻居节点对应的占据数量。
本申请实施例中,编码器或者解码器基于筛选出的第二数量个邻居节点的占位信息,确定子节点的第二数量个邻居节点对应的占据数量,得到Nom
示例性的,对于当前节点的子节点m,考虑它的7近邻占位信息,设置查找表Im,n将7近邻的编号n映射到26邻居的编号k。再记录子节点m的7近邻中占据的个数。
这里,
Figure BDA0004125629860000061
步骤204、基于占据数量,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果。
其中,第一预测结果用于指示是否预测的预测参数以及预测情况下的预测值参数。
本申请实施例中,步骤204基于占据数量,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果,可以通过如下步骤实现:
步骤204a、获得与第二数量关联的第三数量。
一些实施例中,第三数量可以等于第二数量的一半。当然,本申请其他实施例中还可以根据实际情况,基于第二数量灵活地确定第三数量。
示例性的,在考虑子节点m的7近邻节点的情况下,第三数量可以为4。
步骤204b、基于占据数量和第三数量,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果。
本申请一些实施例中,步骤204b基于占据数量和第三数量,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果,包括:
步骤204b1、确定占据数量与第三数量不同时,基于占据数量、第一阈值、第二阈值,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果。
本申请实施例中,当Nom≠4时,设置两组阈值包括第一阈值th0与第二阈值th1,并预测Nom小于或等于th0时的节点为“不占据”,Nom大于并等于th1时的节点为“占据”,否则为“不预测”。需要说明的是,这里占据说明当前节点的子节点有点云存在;不占据说明当前节点的子节点没有点云存在。
进一步地,确定占据数量与第三数量不同时,在一种可实现场景中,步骤204b1中基于占据数量、第一阈值、第二阈值,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果,可以包括如下步骤:
Step11、将占据数量与第一阈值进行比对。
Step12、确定占据数量小于或等于第一阈值时,对当前节点的子节点的占位信息进行帧内预测,得到当前节点的子节点不包括点云的第一预测结果。
进一步地,确定占据数量与第三数量不同时,在另一种可实现场景中,基于占据数量、第一阈值、第二阈值,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果,可以包括如下步骤:
Step21、将占据数量与第二阈值进行比对。
Step22、确定占据数量大于或等于第二阈值时,对当前节点的子节点的占位信息进行帧内预测,得到当前节点的子节点包括点云的第一预测结果。
在本申请又一种可实现场景中,将占据数量与第一阈值进行比对,确定占据数量大于第一阈值且小于第二阈值时,得到对当前节点的子节点的占位信息不进行帧内预测的第二预测结果。
在本申请其他实施例中,步骤204b基于占据数量和第三数量,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果,包括:
步骤204b2、确定占据数量与第三数量相同时,基于占据数量、第三阈值、第四阈值,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果。
本申请实施例中,步骤204b2确定占据数量与第三数量相同时,基于占据数量、第三阈值、第四阈值,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果,可以包括如下步骤:
步骤204b21、确定占据数量与第三数量相同时,根据子节点的第二数量个邻居节点到子节点的距离,设置第二数量个邻居节点的占位信息的权重。
步骤204b22、基于第二数量个邻居节点的占位信息,以及与第二数量个邻居节点的占位信息对应的权重,确定子节点的目标参数。
步骤204b23、基于目标参数、第三阈值、第四阈值,确定第一预测结果。
进一步地,在一种可实现场景中,步骤204b23基于目标参数、第三阈值、第四阈值,确定第一预测结果,可以包括如下步骤:确定目标参数小于或等于第三阈值时,对当前节点的子节点的占位信息进行帧内预测,得到当前节点的子节点不包括点云的第一预测结果。
本申请实施例中,当Nom=4时,根据当前子节点m的7近邻到m的距离等级dm,n设置权重w(dm,n),并计算目标参数
Figure BDA0004125629860000071
这里,设置两组阈值第三阈值th2与第四阈值th3,并预测scorem小于并等于th2时的节点为“不占据”,scorem大于并等于th3时的节点为“占据”,否则为“不预测”。
示例性的,结合图4中的(A)至(H),分别表征当前节点的不同子节点对应的占据情况,即当前节点的不同子节点的占位信息。
这里,Im,n与dm,n为8×7大小的查找表,w(dm,n)、th0、th1、th2与th3是根据对训练集的编解码结果的概率统计与计算而设置的理论最优值,在编解码器中为预设的固定值,不需要由编码端向解码端传输。
本申请实施例中,示例性的,
LUT_I[8][7]={{0,1,3,4,9,10,12},{1,2,4,5,10,11,13},{3,4,6,7,12,14,15},{4,5,7,8,13,15,16},{9,10,12,17,18,20,21},{10,11,13,18,19,21,22},{12,14,15,20,21,23,24},{13,15,16,21,22,24,25}};
LUT_d[8][7]={{2,1,1,0,1,0,0},{1,2,0,1,0,1,0},{1,0,2,1,0,1,0},{0,1,1,2,0,0,1},{1,0,0,2,1,1,0},{0,1,0,1,2,0,1},{0,1,0,1,0,2,1},{0,0,1,0,1,1,2}};
上述权重w(dm,n)的设置需要满足,scorem可以一一映射到δ(Im,n)与w(dm,n)的与顺序无关的组合方式上。以w[3]={11,7,5}为例,阈值设置如下,th0=2、th1=5、th2=0、th3=40。
进一步地,在另一种可实现场景中,步骤204b23基于目标参数、第三阈值、第四阈值,确定第一预测结果,可以包括如下步骤:确定目标参数大于或等于第四阈值时,对当前节点的子节点的占位信息进行帧内预测,得到当前节点的子节点包括点云的第一预测结果。
进一步地,在又一种可实现场景中,步骤204b23基于目标参数、第三阈值、第四阈值,确定第一预测结果,可以包括如下步骤:确定目标参数大于第三阈值且小于第四阈值时,得到对当前节点的子节点的占位信息不进行帧内预测的第二预测结果。
步骤205、确定与第一预测结果关联的编码模型。
本申请实施例中,编码器获得第一预测结果后,确定与第一预测结果关联的编码模型。
步骤206、基于编码模型,对当前节点的子节点的占位信息进行编码,并写入码流。
本申请实施例中,编码器基于编码模型,对当前节点的子节点的占位信息进行编码,并写入码流。
步骤207、确定与第一预测结果关联的解码模型。
本申请实施例中,编码器获得第一预测结果后,确定与第一预测结果关联的解码模型。
步骤208、基于解码模型,对获得的码流进行解析,得到当前节点的子节点的占位信息。
本申请实施例中,编码器基于解码模型,对获得的码流进行解析,得到当前节点的子节点的占位信息。
在一种可实现的场景中,参见图5所示,以帧内预测方法应用于编码器为例,编码器在对当前节点的某个子节点进行预测时,仅考虑与其分享面、边、顶点的7个相接邻居父节点的影响。再根据权重的计算,以及阈值的设置将预测结果分为三类,编码器执行帧内预测的方法的步骤如下:
第一步、当八叉树划分的当前层级L小于预设的层数时,使能帧内预测。输入为:用来映射(x,y,z)坐标与标志位的莫顿3D地图、地图移位参数,以及当前节点的原点的坐标。
第二步、根据输入信息获得邻居节点k的占位信息δ(k),其中k取值[0,25],δ为0或1。
第三步、对于当前节点的子节点m,仅考虑它的7近邻占位信息,设置查找表Im,n将7近邻的编号n映射到26邻居的编号k。再记录子节点m的7近邻中占据的个数,
Figure BDA0004125629860000081
第四步、当Nom≠4时,设置两组阈值th0与th1,并预测Nom小于并等于th0时的节点为“不占据”,Nom大于并等于th1时的节点为“占据”,否则为“不预测”。
当Nom=4时,根据当前子节点m的7近邻到m的距离等级dm,n设置权重w(dm,n),并计算,
Figure BDA0004125629860000082
设置两组阈值th2与th3,并预测scorem小于并等于th2时的节点为“不占据”,scorem大于并等于th3时的节点为“占据”,否则为“不预测”。
第五步、输出0或1表示的“是否预测”与“预测值”用到之后的对占位信息的熵编码当中。其中,1、1代表“占据”;1、0代表“不占据”;0、0代表“不预测”。
需要说明的是,Im,n与dm,n为8×7大小的查找表,w(dm,n)、th0、th1、th2与th3是根据对训练集的编解码结果的概率统计与计算而设置的理论最优值,在编解码器中为预设的固定值,不需要由编码端向解码端传输。也就是说,本申请所提供的帧内预测方法,在编码器侧与解码器侧的技术构思相同,可以理解为除了编码器侧进行编码与解码器侧进行解码的相关步骤之外,对当前节点的子节点的占位信息进行帧内预测的步骤相同。
示例性的,在一些实施例中,
LUT_I[8][7]={{0,1,3,4,9,10,12},{1,2,4,5,10,11,13},{3,4,6,7,12,14,15},{4,5,7,8,13,15,16},{9,10,12,17,18,20,21},{10,11,13,18,19,21,22},{12,14,15,20,21,23,24},{13,15,16,21,22,24,25}};
LUT_d[8][7]={{2,1,1,0,1,0,0},{1,2,0,1,0,1,0},{1,0,2,1,0,1,0},{0,1,1,2,0,0,1},{1,0,0,2,1,1,0},{0,1,0,1,2,0,1},{0,1,0,1,0,2,1},{0,0,1,0,1,1,2}};
权重w(dm,n)的设置需要满足,scorem可以一一映射到δ(Im,n)与w(dm,n)的与顺序无关的组合方式上。以w[3]={11,7,5}为例,阈值设置如下,th0=2、th1=5、th2=0、th3=40。
进一步地,编码器确定与所述第一预测结果关联的编码模型;基于所述编码模型,对所述当前节点的子节点的占位信息进行编码,并写入码流。
在一种可实现的场景中,参见图6所示,以帧内预测方法应用于解码器为例,解码器在对当前节点的某个子节点进行预测时,仅考虑与其分享面、边、顶点的7个相接邻居父节点的影响。再根据权重的计算,以及阈值的设置将预测结果分为三类,解码执行帧内预测的方法的步骤如下:
第一步、当八叉树划分的当前层级L小于预设的层数时,使能帧内预测。输入为:用来映射(x,y,z)坐标与标志位的莫顿3D地图、地图移位参数,以及当前节点的原点的坐标。
第二步、根据输入信息获得邻居节点k的占位信息δ(k),其中k取值[0,25],δ为0或1。
第三步、对于当前节点的子节点m,仅考虑它的7近邻占位信息,设置查找表Im,n将7近邻的编号n映射到26邻居的编号k。再记录子节点m的7近邻中占据的个数,
Figure BDA0004125629860000091
第四步、当Nom≠4时,设置两组阈值th0与th1,并预测Nom小于并等于th0时的节点为“不占据”,Nom大于并等于th1时的节点为“占据”,否则为“不预测”。
当Nom=4时,根据当前子节点m的7近邻到m的距离等级dm,n设置权重w(dm,n),并计算,
Figure BDA0004125629860000092
设置两组阈值th2与th3,并预测scorem小于并等于th2时的节点为“不占据”,scorem大于并等于th3时的节点为“占据”,否则为“不预测”。
第五步、输出0或1表示的“是否预测”与“预测值”用到之后的对占位信息的熵编码当中。其中,1、1代表“占据”;1、0代表“不占据”;0、0代表“不预测”。
进一步地,解码器确定与所述第一预测结果关联的解码模型;基于所述解码模型,对获得的码流进行解析,得到所述当前节点的子节点的占位信息。
需要说明的是,Im,n与dm,n为8×7大小的查找表,w(dm,n)、th0、th1、th2与th3是根据对训练集的编解码结果的概率统计与计算而设置的理论最优值,在编解码器中为预设的固定值,不需要由编码端向解码端传输。也就是说,本申请所提供的帧内预测方法,在编码器侧与解码器侧的技术构思相同,可以理解为除了编码器侧进行编码与解码器侧进行解码的相关步骤之外,对当前节点的子节点的占位信息进行帧内预测的步骤相同。
示例性的,在一些实施例中,
LUT_I[8][7]={{0,1,3,4,9,10,12},{1,2,4,5,10,11,13},{3,4,6,7,12,14,15},{4,5,7,8,13,15,16},{9,10,12,17,18,20,21},{10,11,13,18,19,21,22},{12,14,15,20,21,23,24},{13,15,16,21,22,24,25}};
LUT_d[8][7]={{2,1,1,0,1,0,0},{1,2,0,1,0,1,0},{1,0,2,1,0,1,0},{0,1,1,2,0,0,1},{1,0,0,2,1,1,0},{0,1,0,1,2,0,1},{0,1,0,1,0,2,1},{0,0,1,0,1,1,2}};
权重w(dm,n)的设置需要满足,scorem可以一一映射到δ(Im,n)与w(dm,n)的与顺序无关的组合方式上。以w[3]={11,7,5}为例,阈值设置如下,th0=2、th1=5、th2=0、th3=40。
在另一种可实现的场景中,以帧内预测方法应用于编码器为例,可以对上述帧内预测方案做出进一步的简化,从而进一步地减少帧内预测的计算量,编码器执行帧内预测的方法的步骤如下:
在该场景中,可以省略Nom=4时的scorem的计算与判断,同时可省去距离等级dm,n以及权重w(dm,n)的设置;如此,帧内预测的方法包括:
第一步、当八叉树划分的当前层级L小于预设的层数时,使能帧内预测。输入为:用来映射(x,y,z)坐标与标志位的莫顿3D地图、地图移位参数,以及当前节点的原点的坐标。
第二步、根据输入信息获得邻居节点k的占位信息δ(k),其中k取值[0,25],δ为0或1。
第三步、对于当前节点的子节点m,仅考虑它的7近邻占位信息,设置查找表Im,n将7近邻的编号n映射到26邻居的编号k。再记录子节点m的7近邻中占据的个数,
Figure BDA0004125629860000101
第四步、设置两组阈值th0与th1,并预测Nom小于并等于th0时的节点为“不占据”,Nom大于并等于th1时的节点为“占据”,否则为“不预测”。
第五步、输出0或1表示的“是否预测”与“预测值”用到之后的对占位信息的熵编码当中。其中,1、1代表“占据”;1、0代表“不占据”;0、0代表“不预测”。
需要说明的是,Im,n为8×7大小的查找表,th0与th1是根据对训练集的编解码结果的概率统计与计算而设置的理论最优值,在编解码器中为预设的固定值,不需要由编码端向解码端传输。也就是说,本申请所提供的帧内预测方法,在编码器侧与解码器侧的技术构思相同,可以理解为除了编码器侧进行编码与解码器侧进行解码的相关步骤之外,对当前节点的子节点的占位信息进行帧内预测的步骤相同。
在又一种可实现的场景中,以帧内预测方法应用于编码器为例,从当前子节点相接的7个邻居父节点中,挑选任意可能的组合,构造基于当前子节点相接的N个邻居父节点的占位信息的帧内预测方法,其中,N∈[1,7]。示例性的,参考图7所示,当N=6,就有
Figure BDA0004125629860000103
种组合方式;图7表征某一种6邻居父节点占位信息的帧内预测示意图。在该场景下,编码器执行帧内预测的方法的步骤如下:
第一步、当八叉树划分的当前层级L小于预设的层数时,使能帧内预测。输入为:用来映射(x,y,z)坐标与标志位的莫顿3D地图、地图移位参数,以及当前节点的原点的坐标。
第二步、根据输入信息获得邻居节点k的占位信息δ(k),其中k取值[0,25],δ为0或1。
第三步、对于当前节点的子节点m,仅考虑它的N近邻占位信息,设置查找表Im,n将N近邻的编号n映射到26邻居的编号k。再记录子节点m的N近邻中占据的个数,
Figure BDA0004125629860000102
第四步、设置两组阈值th0与th1,并预测Nom小于并等于th0时的节点为“不占据”,Nom大于并等于th1时的节点为“占据”,否则为“不预测”。
第五步、输出0或1表示的“是否预测”与“预测值”用到之后的对占位信息的熵编码当中。其中,1、1代表“占据”;1、0代表“不占据”;0、0代表“不预测”。
需要说明的是,Im,n为8×7大小的查找表,th0与th1是根据对训练集的编解码结果的概率统计与计算而设置的理论最优值,在编解码器中为预设的固定值,不需要由编码端向解码端传输。也就是说,本申请所提供的帧内预测方法,在编码器侧与解码器侧的技术构思相同,可以理解为除了编码器侧进行编码与解码器侧进行解码的相关步骤之外,对当前节点的子节点的占位信息进行帧内预测的步骤相同。
基于本申请所提供的帧内预测方法,参见图8所示,表1表征在有损压缩的情况下,与相关技术中基于点云压缩的方案相比,在相同编码质量的情况下,可以节约百分之多少的码率;这里,测试序列包括13种情况,基于表1可知,本申请提供的帧内预测方法,对每一测试序列进行处理,均可以节约码流。参见图9所示,表2表征无损压缩下情况下,压缩出来的码流大小,由表2可知,压缩出来的码流均小于100%,只用了相关技术中部分码率便可以得到码流。
本申请实施例能够获得以下有益效果:根据26个邻居节点中已编解码节点的子节点占位信息的情况,在对当前节点的某个子节点进行预测时,仅考虑与其分享面、边、顶点的7个相接邻居父节点的影响,从而达到了减少查找表,降低计算复杂度的效果。同时,简单的权重与阈值设置使得最优解很容易被找到,在最优权重和阈值的设置下,本技术达到了码率降低,且PSNR保持不变的效果。同时,更加简单而准确的利用了点云的空间相关性,使基于八叉树几何信息编码的帧内预测结果更适用于CABAC中概率模型的构建,从而降低了二进制码流。
图10为本申请实施例提供的帧内预测装置的组成结构示意图,如图10所示,帧内预测装置300包括第一处理模块301、第一提取模块302和第二处理模块303,其中:
第一处理模块301,配置为确定对输入点云进行划分后得到的当前层级小于目标层级时,获得当前节点的第一数量个邻居节点的占位信息;
第一提取模块302,配置为:从第一数量个邻居节点的占位信息中,提取第二数量个邻居节点的占位信息;其中,第一数量大于第二数量,且第二数量个邻居节点与当前节点的子节点之间具有关联关系;
第二处理模块303,配置为:基于第二数量个邻居节点的占位信息,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果。
在其他实施例中,关联关系,包括:第二数量个邻居节点与当前节点的子节点之间共享面、边以及顶点。
在其他实施例中,第二处理模块303,配置为:基于第二数量个邻居节点的占位信息,确定子节点的第二数量个邻居节点对应的占据数量;
基于占据数量,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果;其中,第一预测结果用于指示是否预测的预测参数以及预测情况下的预测值参数
在其他实施例中,第二处理模块303,配置为:获得与第二数量关联的第三数量;
基于占据数量和第三数量,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果。
在其他实施例中,第二处理模块303,配置为:确定占据数量与第三数量不同时,基于占据数量、第一阈值、第二阈值,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果。
在其他实施例中,第二处理模块303,配置为:确定占据数量与第三数量不同时,将占据数量与第一阈值进行比对;
确定占据数量小于或等于第一阈值时,对当前节点的子节点的占位信息进行帧内预测,得到当前节点的子节点不包括点云的第一预测结果。
在其他实施例中,第二处理模块303,配置为:确定占据数量大于或等于第二阈值时,对当前节点的子节点的占位信息进行帧内预测,得到当前节点的子节点包括点云的第一预测结果。
在其他实施例中,第二处理模块303,配置为:确定占据数量大于第一阈值且小于第二阈值时,得到对当前节点的子节点的占位信息不进行帧内预测的第二预测结果。
在其他实施例中,第二处理模块303,配置为:确定占据数量与第三数量相同时,基于占据数量、第三阈值、第四阈值,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果。
在其他实施例中,第二处理模块303,配置为:确定占据数量与第三数量相同时,根据子节点的第二数量个邻居节点到子节点的距离,设置第二数量个邻居节点的占位信息的权重;
基于第二数量个邻居节点的占位信息,以及与第二数量个邻居节点的占位信息对应的权重,确定子节点的目标参数;
基于目标参数、第三阈值、第四阈值,确定第一预测结果。
在其他实施例中,第二处理模块303,配置为:确定目标参数小于或等于第三阈值时,对当前节点的子节点的占位信息进行帧内预测,得到当前节点的子节点不包括点云的第一预测结果。
在其他实施例中,第二处理模块303,配置为:确定目标参数大于或等于第四阈值时,对当前节点的子节点的占位信息进行帧内预测,得到当前节点的子节点包括点云的第一预测结果。
在其他实施例中,第二处理模块303,配置为:确定目标参数大于第三阈值且小于第四阈值时,得到对当前节点的子节点的占位信息不进行帧内预测的第二预测结果。
在其他实施例中,帧内预测装置为编码装置,编码装置还包括:第一确定模块,配置为:确定与第一预测结果关联的编码模型;
编码模块,配置为:基于编码模型,对当前节点的子节点的占位信息进行编码,并写入码流。
在其他实施例中,帧内预测装置为解码装置,解码装置还包括:第二确定模块,配置为:确定与第一预测结果关联的解码模型;
解码模块,配置为:基于解码模型,对获得的码流进行解析,得到当前节点的子节点的占位信息。
在实际应用中,如图11所示,本申请实施例还提供了一种编码器,包括:
第一存储器41,用于存储可执行帧内预测指令;
第一处理器42,用于执行第一存储器42中存储的可执行帧内预测指令时,实现本申请实施例提供的编码装置侧的帧内预测方法。
其中,处理器可以通过软件、硬件、固件或者其组合实现,可以使用电路、单个或多个专用集成电路(application specific integrated circuits,ASIC)、单个或多个通用集成电路、单个或多个微处理器、单个或多个可编程逻辑器件、或者前述电路或器件的组合、或者其他适合的电路或器件,从而使得该处理器可以执行前述编码装置的实施例中的帧内预测方法的相应步骤。
可以理解的是,由于确定对输入点云进行划分后得到的当前层级小于目标层级时,获得当前节点的第一数量个邻居节点的占位信息;从第一数量个邻居节点的占位信息中,提取第二数量个邻居节点的占位信息;其中,第一数量大于第二数量,且第二数量个邻居节点与当前节点的子节点之间具有关联关系;基于第二数量个邻居节点的占位信息,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果;也就是说,本申请实施例对当前节点的子节点的占位信息进行帧内预测时,仅考虑了与当前节点的子节点之间具有关联关系的第二数量个邻居节点,从而达到了减少查找表,降低计算复杂度,提高帧内预测结果的准确性,缩短编解码时长以及提高编解码准确性的目的。
在实际应用中,如图12所示,本申请实施例还提供了一种编码器,包括:
第二存储器51,用于存储可执行帧内预测指令;
第二处理器52,用于执行第二存储器52中存储的可执行帧内预测指令时,实现本申请实施例提供的编码装置侧的帧内预测方法。
其中,处理器可以通过软件、硬件、固件或者其组合实现,可以使用电路、单个或多个专用集成电路(application specific integrated circuits,ASIC)、单个或多个通用集成电路、单个或多个微处理器、单个或多个可编程逻辑器件、或者前述电路或器件的组合、或者其他适合的电路或器件,从而使得该处理器可以执行前述解码装置的实施例中的帧内预测方法的相应步骤。
可以理解的是,确定对输入点云进行划分后得到的当前层级小于目标层级时,获得当前节点的第一数量个邻居节点的占位信息;从第一数量个邻居节点的占位信息中,提取第二数量个邻居节点的占位信息;其中,第一数量大于第二数量,且第二数量个邻居节点与当前节点的子节点之间具有关联关系;基于第二数量个邻居节点的占位信息,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果;也就是说,本申请实施例对当前节点的子节点的占位信息进行帧内预测时,仅考虑了与当前节点的子节点之间具有关联关系的第二数量个邻居节点,从而达到了减少查找表,降低计算复杂度,提高帧内预测结果的准确性,缩短编解码时长以及提高编解码准确性的目的。
在本公开实施例中的各组成部分可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本实施例方法的全部或部分步骤。而前述的存储介质包括:磁性随机存取存储器(FRAM,ferromagnetic random access memory)、只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read-Only Memory)、快闪存储器(FlashMemory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory)等各种可以存储程序代码的介质,本公开实施例不作限制。
本申请实施例还提供了一种计算机可读存储介质,存储有可执行帧内预测指令,用于引起第一处理器执行时,实现本申请实施例提供的编码器侧的帧内预测方法。
本申请实施例还提供了一种计算机可读存储介质,存储有可执行帧内预测指令,用于引起第二处理器执行时,实现本申请实施例提供的解码侧的帧内预测方法。
工业实用性
本申请实施例提供了一种帧内预测方法、装置、编码器、解码器及存储介质,确定对输入点云进行划分后得到的当前层级小于目标层级时,获得当前节点的第一数量个邻居节点的占位信息;从第一数量个邻居节点的占位信息中,提取第二数量个邻居节点的占位信息;其中,第一数量大于第二数量,且第二数量个邻居节点与当前节点的子节点之间具有关联关系;基于第二数量个邻居节点的占位信息,对当前节点的子节点的占位信息进行帧内预测,得到第一预测结果;也就是说,本申请实施例对当前节点的子节点的占位信息进行帧内预测时,仅考虑了与当前节点的子节点之间具有关联关系的第二数量个邻居节点,从而达到了减少查找表,降低计算复杂度,提高帧内预测结果的准确性,缩短编解码时长以及提高编解码准确性的目的。

Claims (33)

1.一种帧内预测方法,由编码器来实施,其特征在于,所述方法包括:
使能帧内预测,并确定当前节点的第一数量个邻居节点的占位信息;
根据所述当前节点的至少一个邻居节点与所述当前节点的一个子节点的位置关联关系,确定所述当前节点的第二数量个邻居节点的占位信息;其中,所述第一数量大于所述第二数量;
基于所述第二数量个邻居节点的占位信息,确定所述当前节点的所述子节点的占位预测结果。
2.根据权利要求1所述方法,所述位置关联关系,包括:所述当前节点的至少一个邻居节点与所述当前节点的所述子节点共享面、边或顶点。
3.根据权利要求2所述方法,所述基于所述第二数量个邻居节点的占位信息,确定所述当前节点的所述子节点的占位预测结果,包括:
基于所述第二数量个邻居节点的占位信息,确定所述第二数量个邻居节点对应的占据数量;
基于所述占据数量,确定所述当前节点的所述子节点的占位预测结果;其中,所述占位预测结果用于指示是否对所述子节点进行预测或者预测情况下的预测值。
4.根据权利要求3所述方法,所述基于所述占据数量,确定所述当前节点的所述子节点的占位预测结果,包括:
获得与所述第二数量关联的第三数量;
基于所述占据数量和所述第三数量,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点的占位预测结果。
5.根据权利要求4所述方法,所述基于所述占据数量和所述第三数量,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点的占位预测结果,包括:
确定所述占据数量与所述第三数量不同时,基于所述占据数量、第一阈值、第二阈值,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点的占位预测结果。
6.根据权利要求5所述方法,所述确定所述占据数量与所述第三数量不同时,基于所述占据数量、第一阈值、第二阈值,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点的占位预测结果,包括:
确定所述占据数量与所述第三数量不同时,将所述占据数量与所述第一阈值进行比对;
确定所述占据数量小于或等于所述第一阈值时,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点不包括点的占位预测结果。
7.根据权利要求6所述方法,所述方法还包括:
确定所述占据数量大于或等于所述第二阈值时,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点包括点的占位预测结果。
8.根据权利要求6所述的方法,所述方法还包括:
确定所述占据数量大于所述第一阈值且小于所述第二阈值时,得到对所述当前节点的所述子节点的占位信息不进行帧内预测的占位预测结果。
9.根据权利要求4所述的方法,所述基于所述占据数量和所述第三数量,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点的占位预测结果,包括:
确定所述占据数量与所述第三数量相同时,基于所述占据数量、第三阈值、第四阈值,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点的占位预测结果。
10.根据权利要求9所述的方法,所述确定所述占据数量与所述第三数量相同时,基于所述占据数量、第三阈值、第四阈值,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点的占位预测结果,包括:
确定所述占据数量与所述第三数量相同时,根据所述第二数量个邻居节点到所述子节点的距离,设置所述第二数量个邻居节点的占位信息的权重;
基于所述第二数量个邻居节点的占位信息,以及与所述第二数量个邻居节点的占位信息对应的权重,确定所述子节点的目标参数的值;
基于所述目标参数的值、所述第三阈值、所述第四阈值,确定所述当前节点的所述子节点的占位预测结果。
11.根据权利要求10所述的方法,所述基于所述目标参数的值、所述第三阈值、所述第四阈值,确定所述当前节点的所述子节点的占位预测结果,包括:
确定所述目标参数的值小于或等于所述第三阈值时,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点不包括点的占位预测结果。
12.根据权利要求10所述方法,所述方法还包括:
确定所述目标参数的值大于或等于所述第四阈值时,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点包括点的占位预测结果。
13.根据权利要求10所述的方法,所述方法还包括:
确定所述目标参数的值大于所述第三阈值且小于所述第四阈值时,得到对所述当前节点的所述子节点的占位信息不进行帧内预测的占位预测结果。
14.根据权利要求1至7以及9至12中任一项所述的方法,所述方法还包括:
确定与所述占位预测结果关联的编码模型;
基于所述编码模型,对所述当前节点的所述子节点的占位信息进行编码,并写入码流。
15.一种帧内预测方法,由解码器来实施,其特征在于,所述方法包括:
使能帧内预测,并确定当前节点的第一数量个邻居节点的占位信息;
根据所述当前节点的至少一个邻居节点与所述当前节点的一个子节点的位置关联关系,确定所述当前节点的第二数量个邻居节点的占位信息;其中,所述第一数量大于所述第二数量;
基于所述第二数量个邻居节点的占位信息,确定所述当前节点的所述子节点的占位预测结果。
16.根据权利要求15所述方法,所述位置关联关系,包括:所述当前节点的至少一个邻居节点与所述当前节点的所述子节点共享面、边或顶点。
17.根据权利要求16所述方法,所述基于所述第二数量个邻居节点的占位信息,确定所述当前节点的所述子节点的占位预测结果,包括:
基于所述第二数量个邻居节点的占位信息,确定所述第二数量个邻居节点对应的占据数量;
基于所述占据数量,确定所述当前节点的所述子节点的占位预测结果;其中,所述占位预测结果用于指示是否对所述子节点进行预测或者预测情况下的预测值。
18.根据权利要求17所述方法,所述基于所述占据数量,确定所述当前节点的所述子节点的占位预测结果,包括:
获得与所述第二数量关联的第三数量;
基于所述占据数量和所述第三数量,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点的占位预测结果。
19.根据权利要求18所述方法,所述基于所述占据数量和所述第三数量,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点的占位预测结果,包括:
确定所述占据数量与所述第三数量不同时,基于所述占据数量、第一阈值、第二阈值,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点的占位预测结果。
20.根据权利要求19所述方法,所述确定所述占据数量与所述第三数量不同时,基于所述占据数量、第一阈值、第二阈值,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点的占位预测结果,包括:
确定所述占据数量与所述第三数量不同时,将所述占据数量与所述第一阈值进行比对;
确定所述占据数量小于或等于所述第一阈值时,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点不包括点的占位预测结果。
21.根据权利要求20所述方法,所述方法还包括:
确定所述占据数量大于或等于所述第二阈值时,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点包括点的占位预测结果。
22.根据权利要求20所述的方法,所述方法还包括:
确定所述占据数量大于所述第一阈值且小于所述第二阈值时,得到对所述当前节点的所述子节点的占位信息不进行帧内预测的占位预测结果。
23.根据权利要求18所述的方法,所述基于所述占据数量和所述第三数量,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点的占位预测结果,包括:
确定所述占据数量与所述第三数量相同时,基于所述占据数量、第三阈值、第四阈值,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点的占位预测结果。
24.根据权利要求23所述的方法,所述确定所述占据数量与所述第三数量相同时,基于所述占据数量、第三阈值、第四阈值,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点的占位预测结果,包括:
确定所述占据数量与所述第三数量相同时,根据所述第二数量个邻居节点到所述子节点的距离,设置所述第二数量个邻居节点的占位信息的权重;
基于所述第二数量个邻居节点的占位信息,以及与所述第二数量个邻居节点的占位信息对应的权重,确定所述子节点的目标参数的值;
基于所述目标参数的值、所述第三阈值、所述第四阈值,确定所述当前节点的所述子节点的占位预测结果。
25.根据权利要求24所述的方法,所述基于所述目标参数的值、所述第三阈值、所述第四阈值,确定所述当前节点的所述子节点的占位预测结果,包括:
确定所述目标参数的值小于或等于所述第三阈值时,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点不包括点的占位预测结果。
26.根据权利要求24所述方法,所述方法还包括:
确定所述目标参数的值大于或等于所述第四阈值时,对所述当前节点的所述子节点的占位信息进行帧内预测,得到所述当前节点的所述子节点包括点的占位预测结果。
27.根据权利要求24所述的方法,所述方法还包括:
确定所述目标参数的值大于所述第三阈值且小于所述第四阈值时,得到对所述当前节点的所述子节点的占位信息不进行帧内预测的占位预测结果。
28.根据权利要求15至27中任一项所述的方法,所述方法还包括:
确定与所述占位预测结果关联的解码模型;
基于所述解码模型,对码流进行解析,得到所述当前节点的所述子节点的占位信息。
29.一种帧内预测装置,应用于解码器,所述装置包括:
第一处理模块,配置为:使能帧内预测,并确定当前节点的第一数量个邻居节点的占位信息;
第二处理模块,配置为:根据所述当前节点的至少一个邻居节点与所述当前节点的一个子节点的位置关联关系,确定所述当前节点的第二数量个邻居节点的占位信息;其中,所述第一数量大于所述第二数量;
第三处理模块,配置为:基于所述第二数量个邻居节点的占位信息,确定所述当前节点的所述子节点的占位预测结果。
30.一种编码器,包括:
第一存储器,用于存储可执行帧内预测指令;
第一处理器,用于执行所述第一存储器中存储的可执行帧内预测指令时,实现权利要求1至14中任一项所述的方法。
31.一种解码器,包括:
第二存储器,用于存储可执行帧内预测指令;
第二处理器,用于执行所述第二存储器中存储的可执行帧内预测指令时,实现权利要求15至28中任一项所述的方法。
32.一种计算机可读存储介质,存储有可执行帧内预测指令,用于引起第一处理器执行时,实现权利要求1至14任一项所述的方法。
33.一种计算机可读存储介质,存储有可执行帧内预测指令,用于引起第二处理器执行时,实现权利要求15至28中任一项所述的方法。
CN202310244899.0A 2020-01-06 2020-01-06 帧内预测方法、装置、编码器、解码器、及存储介质 Pending CN116320487A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310244899.0A CN116320487A (zh) 2020-01-06 2020-01-06 帧内预测方法、装置、编码器、解码器、及存储介质

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
PCT/CN2020/070557 WO2021138788A1 (zh) 2020-01-06 2020-01-06 帧内预测方法、装置、编码器、解码器、及存储介质
CN202310244899.0A CN116320487A (zh) 2020-01-06 2020-01-06 帧内预测方法、装置、编码器、解码器、及存储介质
CN202080092122.1A CN114930823A (zh) 2020-01-06 2020-01-06 帧内预测方法、装置、编码器、解码器、及存储介质

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN202080092122.1A Division CN114930823A (zh) 2020-01-06 2020-01-06 帧内预测方法、装置、编码器、解码器、及存储介质

Publications (1)

Publication Number Publication Date
CN116320487A true CN116320487A (zh) 2023-06-23

Family

ID=76787438

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202080092122.1A Pending CN114930823A (zh) 2020-01-06 2020-01-06 帧内预测方法、装置、编码器、解码器、及存储介质
CN202310244899.0A Pending CN116320487A (zh) 2020-01-06 2020-01-06 帧内预测方法、装置、编码器、解码器、及存储介质

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202080092122.1A Pending CN114930823A (zh) 2020-01-06 2020-01-06 帧内预测方法、装置、编码器、解码器、及存储介质

Country Status (6)

Country Link
US (2) US11936850B2 (zh)
EP (1) EP4090019A4 (zh)
JP (1) JP2023514034A (zh)
KR (1) KR20220123258A (zh)
CN (2) CN114930823A (zh)
WO (1) WO2021138788A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114930823A (zh) 2020-01-06 2022-08-19 Oppo广东移动通信有限公司 帧内预测方法、装置、编码器、解码器、及存储介质
EP4124035A4 (en) * 2020-03-24 2024-01-31 Guangdong Oppo Mobile Telecommunications Corp., Ltd. INTRA-IMAGE PREDICTION METHOD AND APPARATUS, ENCODER, DECODER, AND STORAGE MEDIUM

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3467778A1 (en) * 2017-10-06 2019-04-10 Thomson Licensing A method and apparatus for encoding/decoding the geometry of a point cloud representing a 3d object
EP3474233A1 (en) * 2017-10-19 2019-04-24 Thomson Licensing A method and apparatus for encoding/decoding the geometry of a point cloud representing a 3d object
EP3553745B1 (en) * 2018-04-09 2021-09-01 BlackBerry Limited Methods and devices for binary entropy coding of point clouds
CN108632607B (zh) 2018-05-09 2019-06-21 北京大学深圳研究生院 一种基于多角度自适应帧内预测的点云属性压缩方法
CA3103454A1 (en) 2018-06-15 2019-12-19 Panasonic Intellectual Property Corporation Of America Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
BR112020024802A2 (pt) * 2018-06-27 2021-03-02 Panasonic Intellectual Property Corporation Of America método de codificação de dados tridimensionais, método de decodificação de dados tridimensionais, dispositivo de codificação de dados tridimensionais e dispositivo de decodificação de dados tridimensionais
EP3595180B1 (en) 2018-07-10 2021-12-08 BlackBerry Limited Methods and devices for neighbourhood-based occupancy prediction in point cloud compression
EP3595181B1 (en) * 2018-07-11 2023-09-06 BlackBerry Limited Predictor-copy coding mode for coding of point clouds
KR20210134049A (ko) 2019-03-20 2021-11-08 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법
US12034979B2 (en) 2019-03-20 2024-07-09 Lg Electronics Inc. Point cloud data transmission device, point cloud data transmission method, point cloud data reception device and point cloud data reception method
WO2020197228A1 (ko) 2019-03-22 2020-10-01 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법
US12010341B2 (en) * 2019-06-21 2024-06-11 Lg Electronics Inc. Device and method for processing point cloud data
CN110418135B (zh) * 2019-08-05 2022-05-27 北京大学深圳研究生院 一种基于邻居的权重优化的点云帧内预测方法及设备
WO2021062743A1 (zh) 2019-09-30 2021-04-08 Oppo广东移动通信有限公司 占位信息的预测方法、编码器、解码器、及存储介质
CN114930823A (zh) 2020-01-06 2022-08-19 Oppo广东移动通信有限公司 帧内预测方法、装置、编码器、解码器、及存储介质
US11475605B2 (en) 2020-01-09 2022-10-18 Apple Inc. Geometry encoding of duplicate points

Also Published As

Publication number Publication date
US20240195953A1 (en) 2024-06-13
WO2021138788A1 (zh) 2021-07-15
JP2023514034A (ja) 2023-04-05
EP4090019A4 (en) 2023-09-06
EP4090019A1 (en) 2022-11-16
CN114930823A (zh) 2022-08-19
US11936850B2 (en) 2024-03-19
US20220345695A1 (en) 2022-10-27
KR20220123258A (ko) 2022-09-06

Similar Documents

Publication Publication Date Title
US11742878B2 (en) Occupancy information prediction method, encoder, decoder, and storage medium
US11790563B2 (en) Point cloud model reconstruction method, encoder, and decoder
JP7386337B2 (ja) 分割方法、符号器、復号器及びコンピュータ記憶媒体
TWI706671B (zh) 動畫像編碼裝置、動畫像解碼裝置、動畫像編碼方法、動畫像解碼方法及記錄媒體動畫像編碼資料
US20240195953A1 (en) Methods for intra prediction, and encoder
WO2021062772A1 (zh) 预测方法、编码器、解码器及计算机存储介质
US20240171772A1 (en) Method and device for intra prediction
Dricot et al. Hybrid octree-plane point cloud geometry coding
US20230351639A1 (en) Point cloud encoding and decoding method, encoder and decoder
WO2021062771A1 (zh) 颜色分量预测方法、编码器、解码器及计算机存储介质
Yusov Real-time deformable terrain rendering with DirectX 11
CN114868389A (zh) 一种帧内预测方法、编码器、解码器及存储介质
WO2024082135A1 (zh) 编解码方法、编解码器、码流以及计算机存储介质
TW202425640A (zh) 編解碼方法、編解碼器、碼流以及電腦儲存媒介
WO2024065406A1 (zh) 编解码方法、码流、编码器、解码器以及存储介质
WO2024148598A1 (zh) 编解码方法、编码器、解码器以及存储介质
WO2022170511A1 (zh) 点云解码方法、解码器及计算机存储介质
TW202316861A (zh) 用於點雲壓縮的編碼方法與電子裝置
JP2024518154A (ja) 点群符号化・復号化方法、符号器、復号器及びコンピュータ記憶媒体

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