CN115917602A - 信息处理装置和方法 - Google Patents

信息处理装置和方法 Download PDF

Info

Publication number
CN115917602A
CN115917602A CN202180044873.0A CN202180044873A CN115917602A CN 115917602 A CN115917602 A CN 115917602A CN 202180044873 A CN202180044873 A CN 202180044873A CN 115917602 A CN115917602 A CN 115917602A
Authority
CN
China
Prior art keywords
data
reference structure
point
unit
encoding
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
CN202180044873.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.)
Sony Group Corp
Original Assignee
Sony Group Corp
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 Sony Group Corp filed Critical Sony Group Corp
Publication of CN115917602A publication Critical patent/CN115917602A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame
    • 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/187Methods 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 scalable video layer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/004Predictors, e.g. intraframe, interframe coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/761Proximity, similarity or dissimilarity measures
    • 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
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • 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/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/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本公开内容涉及能够更容易地控制点云数据的信息量的信息处理装置和方法。本发明包括:形成点云的编码中的几何数据的参考结构,根据将三维形状对象表示为点的集合的点云的点被分类成的组来对参考结构进行分层。基于形成的参考结构,针对每个点得出几何数据的预测值并且得出作为几何数据与预测值之间的差的预测残差。对得出的每个点的几何数据的预测残差进行编码。本公开内容可以应用于例如信息处理装置、图像处理设备、编码装置、解码装置、电子装置、信息处理方法、程序等。

Description

信息处理装置和方法
技术领域
本公开内容涉及信息处理装置和方法,特别地,涉及能够更容易地控制点云数据的信息量的信息处理装置和方法。
背景技术
传统上,例如,已经考虑了对表示诸如点云的三维结构的3D数据进行编码的方法(例如,参见非专利文献1)。此外,已经设想了如下方法,其中当对该点云的几何数据进行编码时得出与预测值的差值(预测残差),并且对该预测残差进行编码(例如,参见非专利文献2)。
引文列表
非专利文献
非专利文献1:R.Mekuria,IEEE研究成员,K.Blom,P.Cesar.,IEEE成员,“Design,Implementation and Evaluation of a Point Cloud Codec for Tele-ImmersiveVideo”,tcsvt_paper_submitted_february.pdf。
非专利文献2:Zhenzhen Gao,David Flynn,Alexis Tourapis和Khaled Mammou,“[G-PCC][New proposal]Predictive Geometry Coding”,ISO/IEC JTC1/SC29/WG11MPEG2019/m51012,2019年10月,日内瓦,瑞士。
发明内容
本发明要解决的问题
由于点云数据包括多个点的几何数据和属性数据,所以可以通过控制点的数目来容易地控制信息量。
然而,在非专利文献2中描述的方法的情况下,在预测值得出时参考其他点的几何数据。因此,当构建参考结构时,参考结构的限制大,并且存在点的数目的减少变得困难的可能性。因此,存在变得难以控制信息量的可能性。
本公开内容鉴于这样的情况作出,并且本公开内容的目的是使得能够更容易地控制点云数据的信息量。
问题的解决方案
根据本技术的一个方面的信息处理装置是如下信息处理装置,其包括:参考结构形成单元,该参考结构形成单元被配置成形成点云的编码时的几何数据的参考结构,根据将三维形状对象表示为点的集合的点云的点被分类成的组来对该参考结构进行分层;预测残差得出单元,该预测残差得出单元被配置成基于由参考结构形成单元形成的参考结构,针对每个点得出几何数据的预测值并且得出作为几何数据与预测值之间的差的预测残差;以及编码单元,该编码单元被配置成对每个点的几何数据的预测残差进行编码,该预测残差由预测残差得出单元得出。
根据本技术的一个方面的信息处理方法是如下信息处理方法,其包括:形成点云的编码中的几何数据的参考结构,根据将三维形状对象表示为点的集合的点云的点被分类成的组来对该参考结构进行分层;基于形成的参考结构,针对每个点得出几何数据的预测值并且得出作为几何数据与预测值之间的差的预测残差;以及对得出的每个点的几何数据的预测残差进行编码。
本技术的另一方面的信息处理装置是如下信息处理装置,其包括:解码单元,该解码单元被配置成基于层信息对编码数据中与期望的组层对应的编码数据进行解码,编码数据通过对作为每个点的几何数据与几何数据的预测值之间的差的预测残差进行编码而获得,该预测残差基于参考结构被得出;层信息指示组层,组层是根据在点云的编码时几何数据的参考结构中的组中的每个组的层,根据将三维形状对象表示为点的集合的点云的点被分类成的组来对参考结构进行分层。
根据本技术的另一方面的信息处理方法是如下信息处理方法,其包括:基于层信息对编码数据中与期望的组层对应的编码数据进行解码,编码数据通过对作为每个点的几何数据与几何数据的预测值之间的差的预测残差进行编码而获得,该预测残差基于参考结构被得出;层信息指示组层,组层是根据在点云的编码时几何数据的参考结构中的组中的每个组的层,根据将三维形状对象表示为点的集合的点云的点被分类成的组来对参考结构进行分层。
在根据本技术的一个方面的信息处理装置和方法中,形成点云的编码中的几何数据的参考结构,其中根据将三维形状对象表示为点的集合的点云的点被分类成的组来对参考结构进行分层。基于形成的参考结构,针对每个点得出几何数据的预测值并且得出作为几何数据与几何数据的预测值之间的差的预测残差。对得出的每个点的几何数据的预测残差进行编码。
在根据本技术的另一方面的信息处理装置和方法中,基于层信息在编码数据中对与期望的组层对应的编码数据进行解码,层信息指示作为在点云的编码中几何数据的参考结构中的根据组中的每个组的层的组层,其中根据将三维形状对象表示为点的集合的点云的点被分类成组来对参考结构进行分层,编码数据通过对作为每个点的几何数据与几何数据的预测值之间的差的预测残差进行编码而获得,其中预测残差基于参考结构被得出。
附图说明
图1是用于说明预测几何编码的视图。
图2是用于说明预测几何编码的视图。
图3是用于说明预测几何编码的视图。
图4是用于说明预测几何编码的扩展方法的视图。
图5是用于说明参考结构形成方法的示例的视图。
图6是用于说明层信息的示例的视图。
图7是示出编码装置的主要配置示例的框图。
图8是示出几何数据编码单元的主要配置示例的框图。
图9是示出参考结构形成单元的主要配置示例的框图。
图10是用于说明编码处理的流程的示例的流程图。
图11是用于说明几何数据编码处理的流程的示例的流程图。
图12是用于说明参考结构形成处理的流程的示例的流程图。
图13是示出解码装置的主要配置示例的框图。
图14是示出几何数据解码单元的主要配置示例的框图。
图15是用于说明解码处理的流程的示例的流程图。
图16是用于说明几何数据解码处理的流程的示例的流程图。
图17是示出转码器的主要配置示例的框图。
图18是用于说明转码处理的流程的示例的流程图。
图19是用于说明预测几何编码的扩展方法的视图。
图20是示出编码装置的主要配置示例的框图。
图21是用于说明编码处理的流程的示例的流程图。
图22是示出解码装置的主要配置示例的框图。
图23是用于说明解码处理的流程的示例的流程图。
图24是示出转码器的主要配置示例的框图。
图25是用于说明转码处理的流程的示例的流程图。
图26是用于说明编码处理的流程的示例的流程图。
图27是用于说明解码处理的流程的示例的流程图。
图28是示出计算机的主要配置示例的框图。
具体实施方式
在下文中,将描述用于实现本公开内容的实施方式(在下文中,称为实施方式)。注意,将按以下顺序给出描述。
1.第一实施方式(参考结构的分层)
2.第二实施方式(属性数据的预测残差编码)
3.第三实施方式(参考结构的分层和属性数据的预测残差编码)
4.补充说明
<1.第一实施方式>
<支持技术内容和技术术语的文献等>
本技术中公开的范围不仅包括实施方式中描述的内容,而且还包括在提交申请时已知的以下非专利文献中描述的内容。
非专利文献1:(如上所述)
非专利文献2:(如上所述)
也就是说,上述非专利文献中描述的内容、上述非专利文献中参考的其他文献的内容等也是用于确定支持要求的基础。
<点云>
传统上,已经存在3D数据,诸如:通过点的位置信息、属性信息等表示三维结构的点云;以及由顶点、边和表面构成并通过使用多边形表示来定义三维形状的网格。
例如,在点云的情况下,三维结构(三维形状对象)被表达为大量点的集合。点云的数据(也称为点云数据)包括每个点的位置信息(也称为几何数据)和属性信息(也称为属性数据)。属性数据可以包括任何信息。例如,每个点的颜色信息、反射信息、法线信息等可以包括在属性数据中。如上所述,点云数据具有相对简单的数据结构,并且可以通过使用足够多的点以足够的精度表达任何三维结构。
<预测几何编码>
由于这样的点云数据具有相对大的数据量,因此通常在记录或发送数据时通过编码等来减少数据量。作为这种编码的方法,已经提出了各种方法。例如,非专利文献2描述了作为对几何数据进行编码的方法的预测几何编码。
在预测几何编码中,得出每个点的几何数据与其预测值之间的差(也称为预测残差),并且对预测残差进行编码。在得出预测值时,参考了另外的点的几何数据。
例如,如图1所示,形成指示在得出每个点的几何数据的预测值时参考哪个点的几何数据的参考结构(也称为预测树)。在图1中,圆指示点,以及箭头指示参考关系。对于该参考结构,可以采用任何形成方法。例如,参考结构被形成为使得附近点的几何数据被参考。
在图1的示例中的预测树中,形成了不参考其他点的几何数据的点11(根顶点)、从另一个点参考的点12(具有一个子代的分支顶点)、从其他三个点参考的点13(具有三个子代的分支顶点)、从其他两个点参考的点14(具有两个子代的分支顶点)以及不从其他点参考的点15(叶顶点)。
注意,在图1中,仅将一个点12用附图标记标出,但是由白色圆指示的所有点都是点12。类似地,仅将一个点14用附图标记标出,但是图1中由阴影圆指示的所有点都是点14。类似地,仅将一个点15用附图标记标出,但是图1中由灰色圆指示的所有点都是点15。注意,预测树的结构是示例,并且不限于图1的示例。因此,可以采用任意数量的点11至15中的每一者。此外,要参考的点的数目的模式不限于图1的示例。例如,可能存在从四个或更多个点参考的点。
根据这样的参考结构(预测树)得出每个点的几何数据的预测值。例如,通过四种方法(四种模式)得出预测值,并且从这些预测值中选择最佳预测值。
例如,在图2中的点21至点24的参考结构中,假设点24被设置为处理目标点pi,并且得出其几何数据的预测值。在第一模式中,在这样的参考结构中,作为点24的参考目的地(也称为父节点)的点23(Pparent)被设置为点24的预测点31,并且预测点31的几何数据被设置为点24的几何数据的预测值。该预测点31的几何数据(即,第一模式中的点24的几何数据的预测值)被称为q(Delta)
在第二模式中,在这样的参考结构中,当参考矢量(点23与点22之间的箭头)——在该参考矢量中,点23是起点并且作为点23的父节点的点22(Pgrandparent)是终点——的逆矢量的起点被设置为点23时,逆矢量的终点被设置为预测点32,并且该预测点32的几何数据被设置为点24的几何数据的预测值。该预测点32的几何数据(也就是说,第二模式中点24的几何数据的预测值)被称为q(Linear)
在第三模式中,在这样的参考结构中,当参考矢量(点22与点21之间的箭头)——在该参考矢量中,点22是起点并且作为点22的父节点的点21(Pgreat-grandparent)被设置为终点——的逆矢量的起点被设置为点23时,该逆矢量的终点被设置为点33,并且预测点33的几何数据被设置为点24的几何数据的预测值。该预测点33的几何数据(也就是说,第三模式中点24的几何数据的预测值)被称为q(Parallelogram)
在第四模式中,点24被设置为根点(根顶点),并且不参考其他点的几何数据。也就是说,代替预测残差,针对该点24,对点24的几何数据进行编码。在图2的示例的参考结构的情况下,该模式被排除,这是因为点24参考点23。
针对如上所述的各个模式(在图2的示例的情况下,三种模式)的预测值得出预测残差(与点24的几何数据的差),并且选择最小的预测残差。也就是说,选择最接近点24的预测点,并且选择与该预测点对应的预测残差。
通过针对每个点执行这样的处理,得出每个点的预测残差。然后,对预测残差进行编码。如此,可以抑制编码量的增加。
注意,基于预定方法形成参考结构(预测树),但是任何形成方法可以用于形成参考结构。例如,假设以图3的A中所示的顺序捕获每个点41。在图3中,圆指示点,以及圆中的数字指示捕获顺序。在图3中,仅将捕获顺序为0的点41用附图标记标出,但是图3中的所有圆都是点41。也就是说,图3示出了捕获顺序为0至5的五个点41。
在这样的情况下,例如,如图3的B所示,参考结构可以形成为使得每个点参考最近的点(被视为父节点)。根据参考结构执行编码和解码,并且使用堆栈搜索子节点(参考目的地是处理目标节点的节点)。因此,这种情况下的解码顺序是如下顺序:捕获顺序为“0”的点41、捕获顺序为“1”的点41、捕获顺序为“3”的点41、捕获顺序为“4”的点41、捕获顺序为“5”的点41以及捕获顺序为“2”的点41。
此外,例如,如图3的C所示,参考结构可以形成为使得每个点参考具有紧接先前捕获顺序的点(被视为父节点)。这种情况下的解码顺序类似于捕获顺序。
<点云数据中的信息量控制>
由于点云数据包括多个点的几何数据和属性数据,因此可以通过控制点的数目来容易地控制点的信息量。
例如,通过在对几何数据进行编码时减少点的数目,可以抑制编码处理的负荷的增加。此外,可以控制通过编码生成的几何数据的编码数据的比特率。也就是说,可以控制存储编码数据时的存储容量和发送编码数据时的传输速率。
此外,也可以在对几何数据进行解码时减少点的数目。例如,通过具有可以部分地对点云的几何数据的编码数据进行解码的配置,可以仅针对一些点来解码编码数据以生成几何数据。例如,通过控制要解码的点,可以控制要生成的点云的分辨率(也称为空间分辨率)。这样的解码方法也被称为可伸缩解码(或解码的可伸缩性)。通过实现这样的可伸缩解码,可以省略针对不必要数据的解码处理,并因此可以抑制解码处理的负荷增加。
此外,还可以在转码时减少点的数目,转码是对几何数据的编码数据进行解码、改变期望的参数以及重新编码的处理。如此,可以抑制转码的负荷的增加。此外,可以控制通过转码生成的几何数据的编码数据的比特率。
<在应用预测几何编码的情况下的信息量控制>
然而,如上所述,在非专利文献2中描述的预测几何编码的情况下,在得出预测值时参考另一点的几何数据。因此,当构建参考结构时,参考结构的限制大,并且存在点的数目的减少变得困难的可能性。因此,存在难以控制信息量的可能性。
例如,当删除预测树的某个中点处的节点时,不再可能得出该节点的子节点和该子节点下的节点的预测值。也就是说,不管该预测树如何,都不可能仅仅删除期望的点(子节点的点也被删除)。因此,可能出现如下现象:当某个点被删除时,根据预测树的结构,该点周围的许多点被删除。在这种情况下,例如,点的分布形式局部较大地改变,并且存在出现缺陷诸如由点云指示的对象的形状的变形(也就是说,点云不能正确地表示对象的形状)的可能性。
如上所述,在非专利文献2中描述的预测几何编码的情况下,实际上难以在对几何数据进行编码、解码或转码时实现上述比特率控制和可伸缩性。
<参考结构的分层>
因此,如图4中所示的表的顶行所示扩展预测几何编码,如从图4所示的表的顶部起的第二行(行“1”)所示形成一组点,并且形成将组作为层的参考结构。注意,该层被称为组层,并且这样的参考结构的分层被称为组分层。
例如,形成点云的编码中的几何数据的参考结构,其中根据将三维形状对象表示为点的集合的点云中的点被分类成的组来对参考结构进行分层。基于所形成的参考结构,针对每个点,得出几何数据的预测值,并且得出作为几何数据与预测值之间的差的预测残差。对得出的每个点的几何数据的预测残差进行编码。
此外,例如,在信息处理装置中,提供了:参考结构形成单元,该参考结构形成单元被配置成形成点云的编码中的几何数据的参考结构,其中,根据将三维形状对象表示为点的集合的点云中的点被分类成的组来对参考结构进行分层;预测残差得出单元,该预测残差得出单元被配置成基于由参考结构形成单元形成的参考结构,针对每个点得出几何数据的预测值并且得出作为几何数据与预测值之间的差的预测残差;以及编码单元,该编码单元被配置成对每个点的几何数据的预测残差进行编码,其中预测残差由预测残差得出单元得出。
通过以这种方式对预测树执行组分层,每个组层的点的选择将根据预测树。例如,属于该组层的最低层的点与预测树中大部分叶侧(叶侧)上的节点对应,以及属于另一组层的点与相对于该节点的根侧(根侧)上的节点对应。因此,可以删除属于下侧上的层组的点,而不影响属于上侧上的层组的点。例如,可以仅对属于组层的最高层至中间层的点的几何数据进行编码(删除属于下组层的点的几何数据)。
因此,可以抑制编码处理的负荷的增加。此外,可以控制通过编码生成的几何数据的编码数据的比特率。此外,可以控制存储编码数据时的存储容量和发送编码数据时的传输速率。
注意,如从图4所示的表的顶部起第三行(行“1-1”)中所示,当形成该参考结构时,可以对捕获的各个点进行分组,并且可以按照组的顺序对各个点进行排序(重新布置)。
例如,通过执行点的组分类、重新布置每个组的点并以重新布置的顺序设置每个点的几何数据的参考目的地,可以形成根据组分层的参考结构。
例如,在信息处理装置中,参考结构形成单元可以包括:组分类处理单元,其被配置成执行点的组分类;重新布置单元,其被配置成重新布置组中的每个组的点;以及组分层参考结构形成单元,其被配置成通过按照由重新布置单元重新布置的顺序设置每个点的几何数据的参考目的地来形成根据组分层的参考结构。
例如,假设如图5的A中所示捕获了八个点51。在图5的A中,圆指示点,并且圆中的数字指示捕获顺序。注意,在图5中,仅将一个点51用附图标记标出,但是图5中由圆指示的所有点都是点51。
这些点51通过预定方法进行组分类。可以采用任何方法用于该组分类。在图5的A的情况下,点51被分类为捕获顺序为奇数(1、3、5和7)的点51的组和捕获顺序为偶数(2、4、6和8)的点51的组。
然后,例如,如图5的B所示,针对每个组对这些点51进行排序。在图5的B的示例的情况下,以捕获顺序为奇数(1、3、5和7)的点51的组和捕获顺序为偶数(2、4、6和8)的点51的组的顺序对点51进行重新布置。
然后,以重新布置的顺序获得每个点的参考目的地,并且形成预测树。例如,在图5的C中所示的预测树的情况下,首先,针对捕获顺序为奇数的每个点51设置参考目的地,此后,针对捕获顺序为偶数的每个点51设置参考目的地。因此,在该预测树中,与捕获顺序为偶数的点51对应的节点被形成为相对于与捕获顺序为奇数的点51对应的节点的叶侧(子节点侧)上的节点。因此,即使删除了捕获顺序为偶数的点51,捕获顺序为奇数的点51也不受影响。
也就是说,即使在形成预测树之后,也可以选择要编码的点,使得可以抑制编码处理的负荷的增加。此外,可以控制通过编码生成的几何数据的编码数据的比特率。
注意,通过使用这样的技术形成预测树,在排序之后,可以通过与非专利文献2中描述的方法类似的方法来形成预测树。因此,可以更容易地对预测树执行组分层。因此,可以抑制用于形成预测树的成本的增加。
注意,如从图4所示的表的顶部起的第四行(行“1-1-1”)所示,可以根据点的位置来执行分组(点的组分类)。
例如,基于每个点的位置,可以执行组分类使得属于每个组的点在三维空间中的密度变得均匀(使得这些点具有预定间隔)。通过以这种方式执行组分类,可以减少点的数目使得要编码的点的密度变得均匀。也就是说,可以抑制编码处理的负荷的增加或者控制编码数据的比特率,以便减少点云的分布形式(也就是说,由点云指示的对象的形状)的变化。此外,在这种情况下,点云在三维空间上的分辨率(空间分辨率)可以通过增加或减少从中删除点的组层的数目来控制。
此外,如从图4所示的表的顶部起的第五行(行“1-1-2”)所示,可以根据点的特征来执行分组(点的组分类)。
点的任何特征都可以用于这种组分类。例如,可以根据与点云的边或角对应的点来执行分组,或者可以根据与点云的平坦部分对应的点来执行分组。当然,特征可以不同于这些示例。通过以这种方式执行组分类,例如,在再现时具有相对小的主观影响(的特征)的点可以被删除,而在再现时具有相对大的主观影响(的特征)的点可以被编码。因此,可以抑制编码处理的负荷的增加并控制编码数据的比特率,从而抑制再现时主观图像质量的降低。
注意,可以采用任何分组方法,而不限于这些示例。例如,可以根据点的位置和特征两者来执行组分类。
此外,如从图4所示的表的顶部起的第六行(行“1-2”)所示,可以用信令通知作为关于组层的信息的层信息。
例如,可以针对每个点生成指示组层的层信息并对这些层信息进行编码。例如,在信息处理装置中,参考结构形成单元还可以包括层信息生成单元,该层信息生成单元被配置成针对每个点生成层信息,该层信息指示作为参考结构中的根据组中的每个组的层的组层,并且编码单元还可以对由层信息生成单元生成的层信息进行编码。
注意,在该层信息中,组层可以由与父节点的组层的差异(与父节点的相对值)来指示。
例如,假设如图6的A所示捕获点60至点69。然后,假设点60、点63、点66和点69被分类为第一组,点61、点64和点67被分类为第二组,并且点62、点65和点68被分类为第三组。然后,假设如上所述针对每个组对这些点进行排序并设置参考目的地,并且形成如图6的B所示的预测树。
在该示例的情况下,点61属于第二组,并且预测树中与点61对应的节点的父节点是与属于第一组的点60对应的节点,从而生成“+1”作为与点61对应的节点的层信息。该“+1”指示处理目标节点属于作为比父节点的组层(第一组)低一层的组层(第二组)。
类似地,点62属于第三组,并且预测树中与点62对应的节点的父节点是与属于第二组的点61对应的节点,从而生成“+1”作为与点62对应的节点的层信息。
然而,点63属于第一组,并且预测树中与点63对应的节点的父节点是与属于同一第一组的点60对应的节点,从而生成“+0”作为与点63对应的节点的层信息。类似地,点64属于第二组,并且预测树中与点64对应的节点的父节点是与属于同一第二组的点61对应的节点,从而生成“+0”作为与点64对应的节点的层信息。类似地,点65属于第三组,并且预测树中与点65对应的节点的父节点是与属于同一第三组的点62对应的节点,从而生成“+0”作为与点65对应的节点的层信息。
类似地,点66属于第一组,并且预测树中与点66对应的节点的父节点是与属于同一第一组的点63对应的节点,从而生成“+0”作为与点66对应的节点的层信息。点67属于第二组,并且预测树中与点67对应的节点的父节点是与属于第一组的点66对应的节点,从而生成“+1”作为与点67对应的节点的层信息。
点68属于第三组,并且预测树中与点68对应的节点的父节点是与属于同一第三组的点65对应的节点,从而生成“+0”作为与点68对应的节点的层信息。类似地,点69属于第一组,并且预测树中与点69对应的节点的父节点是与属于同一第一组的点66对应的节点,从而生成“+0”作为与点69对应的节点的层信息。
注意,由于不存在与点60对应的节点的父节点,所以生成“+0”作为与点60对应的节点的层信息。
以这种方式,通过用信令通知层信息,可以基于用信令通知的层信息在解码侧容易地掌握每个点的组层。因此,在解码时,可以基于层信息仅对期望的组层的编码数据进行解码。也就是说,可以容易地实现可伸缩解码。换句话说,由于解码侧可以基于层信息掌握组层的结构,所以可以在编码侧自由地设置组。
另外,如上所述,通过将处理目标节点所属的组层指示为与父节点所属的组层的相对值,可以抑制由于该层信息而导致的编码量的增加。
注意,当用信令通知这样的层信息时,可以如从图4所示的表的顶部起的第七行(行“1-2-1”)中所示在父节点中用信令通知层信息。例如,可以生成和编码如下层信息,在该层信息中,属于参考结构中的处理目标节点的每个子节点的组层由相对于处理目标节点的组层的相对值来指示。
例如,在图6的B中的预测树的情况下,指示与点61对应的节点(子节点)所属的组层的信息(+1)和指示与点63对应的节点(子节点)所属的组层的信息(+0)作为与点60对应的节点(父节点)的层信息被用信令通知。此外,指示与点62对应的节点(子节点)所属的组层的信息(+1)和指示与点64对应的节点(子节点)所属的组层的信息(+0)作为与点61对应的节点(父节点)的层信息被用信令通知。类似地,指示每个节点的子节点的组层的信息作为每个节点的层信息被用信令通知。
如此,在对父节点进行解码时,可以掌握子节点的组层。
此外,如从图4所示的表的顶部起的第八行(行“1-2-2”)所示,可以在子节点中用信令通知层信息。例如,可以生成并编码如下层信息,在该层信息中,参考结构中的处理目标节点的组层由相对于处理目标节点所属的父节点的组层的相对值来指示。
例如,在图6的B中的预测树的情况下,指示与点61对应的节点所属的组层的信息(+1)作为与点61对应的节点的层信息被用信令通知。此外,指示与点63对应的节点所属的组层的信息(+0)作为与点63对应的节点的层信息被用信令通知。类似地,指示该节点的组层的信息作为每个节点的层信息被用信令通知。
如此,可以掌握处理目标节点的组层。
注意,可以在对诸如几何数据(预测残差)的各种信息进行编码时执行量化。在量化中,可以如从图4所示的表的顶部起的第九行(行“1-3”)所示针对每一层控制量化步长。也就是说,预测残差等可以以针对作为参考结构中的根据组的层的每个组层设置的量化步长被量化和编码。例如,可以针对每一层改变量化步长。
此外,如从图4所示的表的顶部起的第十行(行“1-3-1”)所示,可以在子节点中用信令通知层信息。可以用信令通知量化步长。也就是说,指示量化步长的信息可以被编码。
此外,在如从图4所示的表的顶部起的第十一行(行“1-4”)所示对诸如几何数据(预测残差)的各种信息进行编码时,可以如从图4所示的表的顶部起的第十二行(行“1-4-1”)所示针对每个层(组层)独立地执行算术编码。也就是说,可以在预测残差等被分类到作为参考结构中的根据组的层的每个组层之后,对所述预测残差等执行算术编码。如此,可以针对每个组层解码编码数据。例如,当一些组层被删除和转码时,可以通过仅选择未被删除的组层的编码数据(没有解码)来执行转码。因此,可以抑制转码的负荷的增加。注意,在这种情况下,仅需要在父节点中用信令通知层信息。
注意,算术编码可以以小于组层的单元独立执行。例如,可以针对预测树的每个分支或每个节点独立地执行算术编码。
此外,如图4所示的表的底部行(行“1-4-2”)所示,可以在不对每个层(组层)进行分类的情况下执行算术编码。也就是说,可以对预测残差等执行算术编码,而无需分类到作为参考结构中的根据组的层的每个组层中。例如,可以在不对多个组层的预测残差等进行分类的情况下执行算术编码。此外,可以在不对所有组层的预测残差等进行分类的情况下执行算术编码。
此外,可以针对每个组层选择是否执行编码,并且可以对选择用于编码的组层的预测残差等进行编码。也就是说,可以针对每个组层执行关于是否执行编码的控制(关于是否删除的控制)。
例如,可以通过执行点的组分类以使三维空间中的密度均匀并且以这种方式针对每个组层执行编码控制来控制要被编码的点云数据的空间分辨率。
当然,可以以小于组层的单元执行编码控制。例如,可以针对参考结构的每个分支选择是否进行编码,并且可以对属于被选择用于编码的分支的节点的预测残差等进行编码。也就是说,可以针对每个分支执行关于是否执行编码的控制(关于是否删除的控制)。如此,可以删除关于组层中的一些分支的信息,并且可以实现更详细的编码控制。
注意,可以采用该编码控制的任何信息单元,并且当然可以针对除了上述示例之外的每个信息单元执行编码控制。例如,也可以实现针对多个信息单元中的每一个执行编码控制。例如,可以针对每个组层或每个分支执行编码控制。
<编码装置>
接下来,将描述应用以上描述的本技术的装置。图7是示出编码装置的配置的示例的框图,该编码装置是应用本技术的信息处理装置的一种模式。图7所示的编码装置100是对点云(3D数据)进行编码的装置。例如,编码装置100通过应用以上参照图4等描述的本技术来对点云进行编码。
注意,在图7中,示出了处理单元、数据流等的主要部分,并且图7中示出的这些不一定是全部。也就是说,在编码装置100中,可能存在未在图7中作为块示出的处理单元,或者可能存在未在图7中作为箭头等示出的处理或数据的流。
如图7所示,编码装置100包括几何数据编码单元111和属性数据编码单元112。
几何数据编码单元111获取输入到编码装置100的点云(3D数据)、对几何数据(位置信息)进行编码以生成几何数据的编码数据、并将生成的几何数据的编码数据和属性数据(属性信息)供应至属性数据编码单元112。
属性数据编码单元112获取从几何数据编码单元111供应的几何数据的编码数据和属性数据、通过使用供应的几何数据的编码数据对属性数据进行编码以生成属性数据的编码数据、并且将几何数据的编码数据和生成的属性数据的编码数据作为点云数据的编码数据输出到编码装置100的外部(例如,解码侧)。
注意,这些处理单元(几何数据编码单元111和属性数据编码单元112)具有任意配置。例如,每个处理单元可以由实现上述处理的逻辑电路来配置。此外,每个处理单元可以具有例如中央处理单元(CPU)、只读存储器(ROM)、随机存取存储器(RAM)等,并且通过使用它们来执行程序以实现上述处理。当然,每个处理单元可以具有如下两种配置:通过逻辑电路实现上述处理的一部分,以及通过执行程序实现上述处理的其他部分。处理单元的配置可以彼此独立,并且例如,一些处理单元可以通过逻辑电路来实现上述处理的一部分,一些其他处理单元可以通过执行程序来实现上述处理,以及还有一些其他处理单元可以通过逻辑电路和程序的执行两者来实现上述处理。
<几何数据编码单元>
图8是示出几何数据编码单元111的主要配置示例的框图。注意,在图8中,示出了处理单元、数据流等的主要部分,并且图8中示出的这些不一定是全部。也就是说,在几何数据编码单元111中,可能存在未在图8中作为块示出的处理单元,或者可能存在未在图8中作为箭头等示出的处理或数据的流。
如图8所示,几何数据编码单元111包括参考结构形成单元131、堆栈132、预测模式确定单元133、编码单元134和预测点生成单元135。
将供应至几何数据编码单元111的点云数据的几何数据供应至参考结构形成单元131。注意,属性数据不在几何数据编码单元111中处理,而是被供应至属性数据编码单元112。
参考结构形成单元131针对所供应的几何数据生成在点云的编码时的参考结构(预测树)。此时,参考结构形成单元131可以应用如上参照图4的表描述的各种方法以形成经受组分层的参考结构。此外,参考结构形成单元131针对每个点生成指示所形成的参考结构的层信息。参考结构形成单元131根据形成的参考结构将处理目标点的几何数据、层信息等供应至堆栈132。此时,参考结构形成单元131可以应用如上参照图4的表描述的各种方法。
例如,参考结构形成单元131可以根据用户等的编码控制来确定是否对由参考结构形成单元131形成的参考结构(预测树)中的子节点进行编码,并且可以在确定执行编码时将处理目标节点的子节点的几何数据、层信息等供应至堆栈132。例如,参考结构形成单元131可以选择是否对每个组层的预测残差等进行编码,并将属于组层的节点的预测残差等供应至堆栈132。此外,参考结构形成单元131可以选择是否对参考结构的每个分支的预测残差等进行编码,并将属于该分支的节点的预测残差等供应至堆栈132。如此,可以仅对一些点的几何数据进行编码。
堆栈132以后进先出的方法保存信息。例如,堆栈132保存从参考结构形成单元131供应的每个点的几何数据、层信息等。此外,堆栈132响应于来自预测模式确定单元133的请求将保存的信息中最近保存的信息供应至预测模式确定单元133。
预测模式确定单元133执行与预测模式(预测点)的确定相关的处理。例如,预测模式确定单元133获取最近保存在堆栈132中的点的几何数据、层信息等。此外,预测模式确定单元133从预测点生成单元135获取点的预测点的几何数据等。当如图2的示例中那样存在与处理目标点对应的多个预测点时,获取所有预测点。然后,预测模式确定单元133确定要应用的预测点(也就是说,预测模式)。此时,预测模式确定单元133可以应用如以上参照图4的表描述的各种方法。
例如,对于每个预测点,预测模式确定单元133得出作为每个预测点的几何数据(预测值)与处理目标点的几何数据之间的差的预测残差,并对这些值进行比较。通过这样的比较,选择要应用的预测模式(预测方法)。例如,选择最接近处理目标点的预测点。预测模式确定单元133将关于每个点的信息(例如,所选择的预测模式的预测残差、层信息等)供应至编码单元134。
编码单元134获取由预测模式确定单元133供应的信息(例如,所选择的预测模式的预测残差、层信息等)并对这些信息进行编码以生成编码数据。
此时,编码单元134可以应用如以上参照图4的表描述的各种方法。例如,编码单元134可以以针对每个组层设置的量化步长来执行量化和编码。此外,编码单元134可以对指示量化步长的信息进行编码并用信令通知。此外,编码单元134还可以在针对每个组层对预测残差等进行分类的情况下执行算术编码,或者可以在不对每个组层的预测残差等进行分类的情况下执行算术编码。
编码单元134将生成的编码数据作为几何数据的编码数据供应至属性数据编码单元112。此外,编码单元134将诸如处理目标点的几何数据的信息供应至预测点生成单元135。
预测点生成单元135执行与预测点的生成相关的处理(也就是说,预测值的得出)。例如,预测点生成单元135获取从编码单元134供应的诸如处理目标点的几何数据的信息。此外,预测点生成单元135得出可以通过使用处理目标点的几何数据等生成的预测点的几何数据(例如,处理目标节点的子节点的几何数据的预测值)。此时,预测点生成单元135可以应用如以上参照图4的表描述的各种方法。预测点生成单元135在必要时将得出的预测值供应至预测模式确定单元133。
<参考结构形成单元>
图9是示出参考结构形成单元131的主要配置示例的框图。注意,在图9中,示出了处理单元、数据流等的主要部分,并且图9中示出的这些不一定是全部。也就是说,在参考结构形成单元131中,可能存在未在图9中作为块示出的处理单元,或者可能存在未在图9中作为箭头等示出的处理或数据的流。
如图9所示,参考结构形成单元131包括组分类处理单元151、排序单元152、组分层参考结构形成单元153和层信息生成单元154。
组分类处理单元151执行与组分类相关的处理。例如,组分类处理单元151针对供应至参考结构形成单元131的几何数据执行点的组分类。此时,组分类处理单元151可以应用如上参照图4的表描述的各种方法。例如,组分类处理单元151可以根据点的位置执行组分类。此外,组分类处理单元151可以根据点的特征执行组分类。组分类处理单元151将经受组分类的各个点的几何数据供应至排序单元152。
排序单元152执行与点的重新布置相关的处理。例如,排序单元152获取几何数据,该几何数据是经受组分类的各个点的几何数据并且从组分类处理单元151供应。然后,排序单元152重新布置各个点的几何数据。此时,排序单元152可以应用如以上参照图4的表描述的各种方法。例如,排序单元152将经受由组分类处理单元151进行的组分类的各个点的几何数据重新布置成针对每个组放置在一起。排序单元152将各个经排序的点的几何数据供应至组分层参考结构形成单元153。
组分层参考结构形成单元153执行与参考结构的形成相关的处理。例如,组分层参考结构形成单元153获取从排序单元152供应的各个经排序的点的几何数据。组分层参考结构形成单元153形成参考结构。此时,组分层参考结构形成单元153可以应用如以上参照图4的表描述的各种方法。例如,组分层参考结构形成单元153根据从排序单元152供应的排序布置顺序来设置每个点的参考目的地,以形成经受组分层的参考结构。针对该参考结构,可以采用任何形成方法。组分层参考结构形成单元153将以这样的方式形成的参考结构供应至层信息生成单元154。
层信息生成单元154获取从组分层参考结构形成单元153供应的参考结构。层信息生成单元154生成指示参考结构的层信息。此时,层信息生成单元154可以应用以上参照图4的表描述的各种方法。例如,层信息生成单元154可以生成指示属于参考结构中的处理目标节点的每个子节点的组层的信息(例如,相对于处理目标节点的组层的相对值),并将该信息作为处理目标节点的层信息用信令通知。此外,层信息生成单元154可以生成指示参考结构中处理目标节点的组层的信息(例如,相对于处理目标节点所属的父节点的组层的相对值),并将该信息作为处理目标节点的层信息用信令通知。层信息生成单元154将生成的层信息供应至堆栈132(图8)。
通过具有上述配置,编码装置100可以对几何数据的参考结构执行组分层。因此,如上所述,编码装置100可以抑制编码处理的负荷的增加。此外,可以控制通过编码生成的几何数据的编码数据的比特率。此外,可以控制存储编码数据时的存储容量和发送编码数据时的传输速率。
<编码处理的流程>
接下来,将描述由该编码装置100执行的处理。该编码装置100通过执行编码处理对点云的数据进行编码。将参照图10的流程图描述该编码处理的流程的示例。
当编码处理开始时,在步骤S101中,编码装置100的几何数据编码单元111通过执行几何数据编码处理对输入的点云的几何数据进行编码以生成几何数据的编码数据。
在步骤S102中,属性数据编码单元112对输入的点云的属性数据进行编码以生成属性数据的编码数据。
当步骤S102中的处理结束时,编码处理结束。
<几何数据编码处理的流程>
接下来,将参照图11的流程图描述图10的步骤S101中执行的几何数据编码处理的流程的示例。
当几何数据编码处理开始时,在步骤S131中,参考结构形成单元131执行参考结构形成处理以形成几何数据的参考结构(预测树)。注意,参考结构形成单元131还生成与所形成的参考结构对应的层信息。
在步骤S132中,参考结构形成单元131将在步骤S131中形成的参考结构的头节点的几何数据等存储在堆栈132中。
在步骤S133中,预测模式确定单元133从堆栈132获取最近存储的点(节点)的几何数据等。
在步骤S134中,预测模式确定单元133将在步骤S133中获取其信息的点设置为处理目标,得出处理目标点的几何数据的预测残差,并确定预测模式。
在步骤S135中,编码单元134对在步骤S134中确定的预测模式进行编码。此外,在步骤S136中,编码单元134以在步骤S134中确定的预测模式对几何数据的预测残差进行编码。此外,在步骤S137中,编码单元134对指示处理目标节点的子节点是否是一定程度的节点的子节点信息进行编码。此外,在步骤S138中,编码单元134对步骤S131中生成的层信息进行编码。编码单元134将这些信息的片段的编码数据作为几何数据的编码数据供应至属性数据编码单元112。
在步骤S139中,参考结构形成单元131基于用户等的编码控制确定是否对处理目标节点的子节点进行编码。当确定进行编码时,处理进行到步骤S140。
在步骤S140中,参考结构形成单元131将子节点的几何数据等存储在堆栈132中。当步骤S140的处理结束时,处理进行到步骤S141。然而,当在步骤S139中确定不对子节点进行编码时,跳过步骤S140的处理,并且处理进行到步骤S141。
在步骤S141中,预测点生成单元135生成可以通过使用处理目标点的几何数据生成的预测点的几何数据。
在步骤S142中,预测模式确定单元133确定堆栈132是否为空。当确定堆栈132不为空(也就是说,存储了关于至少一个或更多个点的信息)时,处理返回至步骤S133。也就是说,对作为处理目标而被最近存储在堆栈132中的点执行步骤S133至S142的处理。
重复这样的处理,并且当在步骤S142中确定堆栈为空时,几何数据编码处理结束,并且处理返回至图10。
<参考结构形成处理的流程>
接下来,将参照图12的流程图描述在图11的步骤S131中执行的参考结构形成处理的流程的示例。
当参考结构形成处理开始时,在步骤S161中,组分类处理单元151执行点云的各个点的组分类。
在步骤S162中,排序单元152将点云的点的处理顺序重新布置为针对在步骤S161中设置的每个组进行布置。
在步骤S163中,组分层参考结构形成单元153以在步骤S163中排序的顺序形成每个点的参考目的地,从而形成经受组分层的参考结构。
在步骤S164中,层信息生成单元154形成每个点的层信息。
当步骤S164的处理结束时,参考结构形成处理结束,并且处理返回至图11。
通过执行如上所述的各种处理,编码装置100可以对几何数据的参考结构执行组分层。因此,如上所述,编码装置100可以抑制编码处理的负荷的增加。此外,可以控制通过编码生成的几何数据的编码数据的比特率。此外,可以控制存储编码数据时的存储容量和发送编码数据时的传输速率。
<解码装置>
图13是示出解码装置的配置的示例的框图,解码装置是应用本技术的信息处理装置的一种模式。图13所示的解码装置200是对点云(3D数据)的编码数据进行解码的装置。解码装置200例如对在编码装置100中生成的点云的编码数据进行解码。
注意,在图13中,示出了处理单元、数据流等的主要部分,并且图13中示出的这些不一定是全部。也就是说,在解码装置200中,可能存在未在图13中作为块示出的处理单元,或者可能存在未在图13中作为箭头等示出的处理或数据的流。
如图13所示,解码装置200包括几何数据解码单元211和属性数据解码单元212。
几何数据解码单元211获取输入到编码装置100的点云(3D数据)的编码数据,对几何数据的编码数据进行解码以生成几何数据,并将生成的几何数据和属性数据的编码数据供应至属性数据解码单元212。
属性数据解码单元212获取从几何数据解码单元211供应的几何数据和属性数据的编码数据。此外,属性数据解码单元212通过使用几何数据对属性数据的编码数据进行解码以生成属性数据,并将几何数据和生成的属性数据作为点云数据输出至解码装置200的外部。
注意,这些处理单元(几何数据解码单元211和属性数据解码单元212)具有任意配置。例如,每个处理单元可以由实现上述处理的逻辑电路来配置。此外,处理单元中的每一个可以包括例如CPU、ROM、RAM等,并且通过使用它们来执行程序以实现上述处理。当然,每个处理单元可以具有如下两种配置:通过逻辑电路实现上述处理的一部分,并且通过执行程序实现上述处理的其他部分。处理单元的配置可以彼此独立,并且例如,一些处理单元可以通过逻辑电路来实现上述处理的一部分,一些其他处理单元可以通过执行程序来实现上述处理,并且还有一些其他处理单元可以通过逻辑电路和程序的执行两者来实现上述处理。
<几何数据解码单元>
图14是示出几何数据解码单元211的主要配置示例的框图。注意,在图14中,示出了处理单元、数据流等的主要部分,并且图14中示出的这些不一定是全部。也就是说,在几何数据解码单元211中,可能存在未在图14中作为块示出的处理单元,或者可能存在未在图14中作为箭头等示出的处理或数据的流。
如图14所示,几何数据解码单元211包括存储单元231、堆栈232、解码单元233、几何数据生成单元234和预测点生成单元235。
将供应至几何数据解码单元211的几何数据的编码数据供应至存储单元231。注意,属性数据的编码数据不在几何数据解码单元211中处理,而是被供应至属性数据解码单元212。
存储单元231存储供应至几何数据解码单元211的几何数据的编码数据。此外,存储单元231向堆栈232供应要在解码单元233的控制下进行解码的点的几何数据的编码数据。此时,存储单元231可以应用如上参照图4的表描述的各种方法。
堆栈232以后进先出的方法保存信息。例如,堆栈232保存从存储单元231供应的每个点的编码数据。此外,堆栈232响应于来自解码单元233的请求将保存的信息中最近保存的信息供应至解码单元233。
解码单元233执行与几何数据的编码数据的解码相关的处理。例如,解码单元233获取堆栈232中最近保存的点的编码数据。此外,解码单元233对获取的编码数据进行解码以生成几何数据(预测残差等)。此时,解码单元233可以应用如上参照图4的表描述的各种方法。解码单元233将生成的几何数据(预测残差等)供应至几何数据生成单元234。
此外,解码单元233可以执行解码控制以使例如仅对用户等请求的一些编码数据进行解码。例如,解码单元233可以针对每个组层控制是否执行解码。此外,解码单元233可以针对参考结构的每个分支控制是否执行解码。然后,解码单元233可以控制存储单元231在堆栈232中仅存储要解码的点的编码数据。这样的解码控制允许解码单元233实现几何数据的可伸缩解码。
也就是说,基于指示作为点云的编码时几何数据的参考结构中的根据组的组层的层信息,其中根据将三维形状对象表示为点的集合的点云中的点被分类成的组来对参考结构进行分层,解码单元233可以对通过对作为每个点的几何数据与几何数据的预测值之间的差的预测残差进行编码而获得的编码数据中与期望的组层对应的编码数据进行解码,其中预测残差基于参考结构得出。
几何数据生成单元234执行与几何数据的生成相关的处理。例如,几何数据生成单元234获取从解码单元233供应的诸如预测残差的信息。此外,几何数据生成单元234从预测点生成单元235获取与处理目标点对应的预测点(也就是说,处理目标点的几何数据的预测值)。然后,几何数据生成单元234通过使用所获取的预测残差和预测值(例如,通过将这两者相加)来生成处理目标点的几何数据。几何数据生成单元234将生成的几何数据供应至属性数据解码单元212。
预测点生成单元235执行与预测点的生成相关的处理,也就是说,预测值的得出。例如,预测点生成单元235获取诸如在几何数据生成单元234中生成的处理目标点的几何数据的信息。此外,预测点生成单元235得出可以通过使用处理目标点的几何数据等生成的预测点的几何数据(例如,处理目标节点的子节点的几何数据的预测值)。此时,预测点生成单元235可以应用如上参照图4的表描述的各种方法。例如,类似于编码装置100的预测点生成单元135的情况,预测点生成单元235可以生成预测点。预测点生成单元235在必要时将得出的预测值供应至几何数据生成单元234。
通过具有上述配置,解码装置200可以通过使用几何数据的经分组的参考结构来对编码数据进行解码。因此,如上所述,解码装置200可以实现可伸缩解码,并且抑制解码处理的负荷的增加。
<解码处理的流程>
接下来,将描述由该解码装置200执行的处理。该解码装置200通过执行解码处理来对点云的编码数据进行解码。将参照图15的流程图描述该解码处理的流程的示例。
当解码处理开始时,解码装置200的几何数据解码单元211在步骤S201中执行几何数据解码处理以对输入的点云的几何数据的编码数据进行解码,从而生成几何数据。
在步骤S202中,属性数据解码单元212对输入的点云的属性数据的编码数据进行编码以生成属性数据。
当步骤S202中的处理结束时,解码处理结束。
<几何数据解码处理的流程>
接下来,将参照图16的流程图描述图15的步骤S201中执行的几何数据解码处理的流程的示例。
当几何数据解码处理开始时,在步骤S231中,存储单元231存储所供应的几何数据的编码数据,并且在堆栈232中存储几何数据的参考结构(预测树)的头节点的编码数据。
在步骤S232中,解码单元233从堆栈232获取最近存储的点(节点)的编码数据。
在步骤S233中,解码单元233对在步骤S232中获取的编码数据进行解码以生成层信息。此外,在步骤S234中,解码单元233对在步骤S232中获取的编码数据进行解码,并生成预测模式的预测残差和几何数据。
在步骤S235中,几何数据生成单元234通过使用步骤S234中生成的预测残差和处理目标节点的预测值(例如,通过将这两者相加)来生成处理目标节点的几何数据。
在步骤S236中,预测点生成单元235生成可以通过使用处理目标节点的几何数据生成的预测点的几何数据(也就是说,预测值)。
在步骤S237中,解码单元233对在步骤S232中获取的编码数据进行解码,并生成子节点信息。
在步骤S238中,解码单元233根据用户等的解码控制,基于子节点信息、层信息等确定是否也对子节点进行解码。当确定也对子节点进行解码时,处理进行到步骤S239。
在步骤S239中,解码单元233控制存储单元231以将子节点的编码数据存储在堆栈232中。当步骤S239的处理结束时,处理进行到步骤S240。然而,当在步骤S238中确定不对子节点进行解码时,跳过步骤S239的处理,并且处理进行到步骤S240。
在步骤S240中,解码单元233确定堆栈232是否为空。当确定堆栈232不为空时(也就是说,存储了关于至少一个或更多个点的信息),处理返回至步骤S232。也就是说,对作为处理目标的最近存储在堆栈232中的点执行步骤S232至S240的处理。
重复这样的处理,并且当在步骤S240中确定堆栈为空时,几何数据解码处理结束,并且处理返回至图15。
通过执行如上所述的各种处理,解码装置200可以通过使用几何数据的经分组的参考结构来对编码数据进行解码。因此,如上所述,解码装置200可以实现可伸缩解码,并且抑制解码处理的负荷的增加。
<转码器>
图17是示出转码器的配置的示例的框图,该转码器是应用本技术的信息处理装置的一种模式。图17所示的转码器300是对点云(3D数据)的编码数据进行解码并通过执行例如参数转换等对编码数据进行重新编码的装置。例如,转码器300对编码装置100中生成的点云的编码数据进行转码(解码和编码)。
注意,在图17中,示出了处理单元、数据流等的主要部分,并且图17中示出的这些不一定是全部。也就是说,在转码器300中,可能存在未在图17中作为块示出的处理单元,或者可能存在未在图17中作为箭头等示出的处理或数据的流。
如图17所示,转码器300包括几何数据解码单元311、几何数据编码单元312和属性数据转码处理单元313。
几何数据解码单元311获取输入到转码器300的点云数据的编码数据。几何数据解码单元311对编码数据进行解码以生成几何数据。此时,几何数据解码单元311可以应用如上参照图4的表描述的各种方法。例如,几何数据解码单元311可以具有与解码装置200的几何数据解码单元211的配置类似的配置,并且执行类似的处理。也就是说,几何数据解码单元311可以实现可伸缩解码。几何数据解码单元311将属性数据的编码数据和生成的几何数据供应至几何数据编码单元312。
几何数据编码单元312获取从几何数据解码单元311供应的属性数据的编码数据和几何数据。几何数据编码单元312对几何数据进行重新编码以生成几何数据的编码数据。此时,几何数据编码单元312可以应用如上参照图4的表描述的各种方法。例如,几何数据编码单元312可以具有与编码装置100的几何数据编码单元111的配置类似的配置,并且执行类似的处理。也就是说,几何数据编码单元312可以对几何数据的参考结构执行组分层。此外,在确定参考结构之后,几何数据编码单元312还可以减少用于编码的点的数目。也就是说,几何数据编码单元312可能能够控制要生成的编码数据的比特率。几何数据编码单元312将属性数据的编码数据和生成的几何数据的编码数据供应至属性数据转码处理单元313。
注意,几何数据的参数的改变(诸如例如(通过可伸缩解码)减少点的数目等)可以在几何数据解码单元311中执行、可以在几何数据编码单元312中执行或者可以在这两者中执行。
属性数据转码处理单元313执行与属性数据的转码相关的处理。例如,属性数据转码处理单元313获取从几何数据编码单元312供应的几何数据的编码数据和属性数据的编码数据。此外,属性数据转码处理单元313通过预定方法对获取的属性数据的编码数据进行解码和重新编码(转码)。属性数据转码处理单元313将几何数据的编码数据和生成的属性数据的编码数据作为转码结果输出至转码器300的外部。
通过具有上述配置,转码器300可以减少转码时的点的数目。也就是说,转码器300可以抑制转码的负荷的增加。此外,转码器300可以控制通过转码生成的几何数据的编码数据的比特率。
注意,这些处理单元(几何数据解码单元311至属性数据转码处理单元313)具有任意配置。例如,每个处理单元可以由实现上述处理的逻辑电路来配置。此外,处理单元中的每一个可以包括例如CPU、ROM、RAM等,并且通过使用它们来执行程序以实现上述处理。当然,每个处理单元可以具有如下两种配置:通过逻辑电路实现上述处理的一部分,并且通过执行程序实现上述处理的其他部分。处理单元的配置可以彼此独立,并且例如,一些处理单元可以通过逻辑电路来实现上述处理的一部分,一些其他处理单元可以通过执行程序来实现上述处理,并且还有一些其他处理单元可以通过逻辑电路和程序的执行两者来实现上述处理。
<转码处理的流程>
接下来,将描述由该转码器300执行的处理。该转码器300通过执行转码处理对点云的编码数据进行转码。将参照图18的流程图描述该转码处理的流程的示例。
当转码处理开始时,转码器300的几何数据解码单元311在步骤S301中执行几何数据解码处理以对编码数据进行解码,从而生成几何数据。例如,几何数据解码单元311可以以与参照图16的流程图描述的几何数据解码处理相似的流程执行该几何数据解码处理。
在步骤S302中,几何数据编码单元312执行几何数据编码处理以对几何数据进行编码,从而生成编码数据。例如,几何数据编码单元312可以以与参照图11的流程图描述的几何数据编码处理相似的流程来执行该几何数据编码处理。
在步骤S303中,属性数据转码处理单元313对属性数据进行转码。当步骤S303的处理结束时,转码处理结束。
通过执行如上所述的每个处理,转码器300可以减少转码时的点的数目。也就是说,转码器300可以抑制转码的负荷的增加。此外,转码器300可以控制通过转码生成的几何数据的编码数据的比特率。
<2.第二实施方式>
<属性数据的预测残差编码>
同时,在非专利文献2中描述的预测几何编码的情况下,处理目标已经是几何数据,并且已经通过另一方法对属性数据进行编码。因此,需要对几何数据和属性数据应用相互不同的编码/解码方法,并且已经存在成本增加的可能性。
因此,如图19中所示的表的顶行中示出的,预测几何编码被扩展,并且如从图19中所示的表中的顶部起的第二行(“2”的行)中示出的,将预测几何编码应用于属性数据的编码。
例如,形成将三维形状物体表示为一组点的点云的编码中的属性数据的参考结构。基于形成的参考结构,针对每个点,得出属性数据的预测值,并且得出属性数据和预测值之间的差的预测残差。对每个点的属性数据的得出的预测残差进行编码。
例如,在信息处理装置中,提供:参考结构形成单元,该参考结构形成单元被配置成形成将三维形状物体表示为一组点的点云的编码中的属性数据的参考结构;预测残差得出单元,该预测残差得出单元被配置成针对基于由参考结构形成单元形成的参考结构的每个点,得出属性数据的预测值并且得出属性数据和预测值之间的差的预测残差;以及编码单元,该编码单元被配置成对每个点的属性数据的预测残差进行编码,该预测残差由预测残差得出单元得出。
如上所述,通过将与预测几何编码类似的方法应用于属性数据的编码,在属性数据的编码中,可以获得与几何数据的情况中的效果类似的效果。例如,由于对预测残差进行编码,因此可以抑制属性数据的编码数据的编码量的增加。此外,可以控制存储编码数据时的存储容量和传输编码数据时的传输速率。也就是说,可以控制属性数据的编码数据比特率。
注意,如从图19中所示的表的顶部起的第三行(“2-1”的行)中示出的,对于这种情况下的属性数据的参考结构,如从图19中所示的表的顶部起的第四行(“2-1-1”的行)中示出的,参考结构可以在几何数据和属性数据之间共用。
例如,也可以将预测几何编码(也就是说,几何数据的编码)中应用的参考结构应用于属性数据的编码。如此,不再需要形成属性数据的参考结构,这使得可以抑制编码处理的负荷的增加。此外,由于参考结构在几何数据和属性数据之间共用,点云数据(几何数据和属性数据)的可伸缩解码成为可能。因此,可以抑制解码处理的负荷的增加。此外,具有较低延迟的解码成为可能。
当参考结构以这种方式在几何数据和属性数据之间共用时,可以在几何数据的基础上形成参考结构,也可以在属性数据的基础上形成参考结构,或者可以在几何数据和属性数据二者的基础上形成参考结构。
此外,如从图19中所示的表的顶部起的第五行(“2-1-2”的行)中示出的,可以独立于几何数据的参考结构形成属性数据中的所有或一些的参考结构。例如,与属性数据的颜色(RGB)相关的参数可以具有与几何数据共用的参考结构,并且可以独立于几何数据的参考结构形成属性数据的反射率等的参数。
此外,如从图19中所示的表的顶部起的第六行(“2-2”的行)中示出的,处理目标节点的预测点的属性数据可以与如从图19中所示的表的顶部起的第七行(“2-2-1”的行)中示出的处理目标节点的父节点的属性数据相同。
此外,如从图19中所示的表的顶部起的第八行(“2-2-2”的行)中示出的,处理目标节点的预测点的属性数据可以是具有处理目标节点的父节点的属性数据和父节点的父节点的属性数据的平均。此外,如从图19中所示的表的顶部起的第九行(“2-2-3”的行)中示出的,处理目标节点的预测点的属性数据可以是具有处理目标节点的父节点的属性数据和父节点的父节点的属性数据的加权平均,该加权平均具有将与这些节点相对应的点之间的距离的倒数作为权重。此外,如从图19中所示的表的顶部起第十行(“2-2-4”的行)中示出的,处理目标节点的预测点的属性数据可以是解码节点的附近k个节点的属性数据的平均。
此外,如从图19中所示的表的顶部起的第11行(“2-3”的行)中示出的关于选择预测点的方法,如从图19中所示的表的顶部起的第12行(“2-3-1”的行)中示出的,可以选择几何数据的预测残差最小化的预测点。此外,如从图19中所示的表的顶部起的第13行(“2-3-2”的行)中示出的,可以选择属性数据的预测残差最小化的预测点。
此外,如图19中所示的表的底部行(“2-3-3”的行)中示出的,可以选择几何数据和属性数据的预测残差最小化的预测点。
例如,如在下面的等式(1)中,几何数据的每个变量(x坐标、y坐标以及z坐标)和属性数据的每个变量(颜色、反射率等)的每个预测残差可以被设定为评价函数f()的变量,并且可以根据这些变量的预测残差的总和来选择预测点。
f(diffX,diffY,diffZ,diffAttr1,…)=sum(diffX+diffY+diffZ+diffAttr1+…) (1)
注意,在等式(1)中,diff[变量名]表示每个变量的预测残差。如此,由于可以不仅考虑位置还考虑属性数据的每个变量来选择预测模式,因此除了几何数据之外,还可以通过适应于属性数据的特性执行编码和解码。例如,当属性数据的变量的数目大时(当维度的数目大时)或者当属性数据的变量的范围大于几何数据的变量的范围时,可以选择预测模式以减少对几何数据的变量的依赖性(换句话说,增强对属性数据的变量的依赖性)。
<编码装置>
接下来,将描述应用了上述本技术的装置。图20是示出编码装置的配置的示例的框图,编码装置是应用本技术的信息处理装置的一种模式。与编码装置100类似,图20中所示的编码装置400是被配置成对点云(3D数据)进行编码的装置。然而,例如,编码装置400通过应用参照图19等的上述本技术来对点云进行编码。
注意,在图20中,示出了处理单元的主要部分、数据流等,并且图20中所示的那些不一定是全部。也就是说,在编码装置400中,可以存在在图20中未作为块示出的处理单元,或可以存在在图20中未作为箭头等示出的处理或数据的流。
如图20中所示,编码装置400包括参考结构形成单元411、堆栈412、预测模式确定单元413、编码单元414以及预测点生成单元415。
供应至编码装置400的点云数据(几何数据和属性数据)被供应至参考结构形成单元411。
参考结构形成单元411针对供应的几何数据和属性数据二者生成点云的编码时的参考结构(预测树)。此时,参考结构形成单元411可以通过应用如上面参照图19中的表描述的各种方法来形成参考结构。例如,参考结构形成单元411可以形成在几何数据和属性数据之间共用的参考结构。此外,参考结构形成单元411可以形成彼此独立的几何数据的参考结构和属性数据的参考结构。参考结构形成单元411根据形成的参考结构将处理目标点的几何数据和属性数据供应至堆栈412。
堆栈412以后进先出的方法保存信息。例如,堆栈412保存关于从参考结构形成单元131供应的每个点的信息。此外,响应于来自预测模式确定单元413的请求,堆栈412将保存的信息之中的最近保存的信息供应至预测模式确定单元413。堆栈412可以针对几何数据和属性数据二者执行这些处理。
预测模式确定单元413执行与预测模式(预测点)的确定相关的处理。例如,预测模式确定单元413获取关于最近保存在堆栈412中的点的信息。此外,预测模式确定单元413获取关于来自预测点生成单元415的点的预测点的信息(也就是说,处理目标点的预测值)等。当如图2的示例中存在与处理目标点相对应的多个预测点时,获取所有预测点。然后,预测模式确定单元413确定要应用的预测点(也就是说,预测模式)。
预测模式确定单元413可以针对几何数据和属性数据二者执行这样的处理。此外,在处理时,预测模式确定单元413可以应用如上面参照图19的表描述的各种方法。
例如,预测模式确定单元413可以选择几何数据的预测残差最小化的预测点(预测模式)。此外,预测模式确定单元413可以选择属性数据的预测残差最小化的预测点(预测模式)。此外,预测模式确定单元413可以选择几何数据和属性数据的预测残差最小化的预测点(预测模式)。
预测模式确定单元413将关于每个点的信息(例如,选择的预测模式的几何数据和属性数据的预测残差等)供应至编码单元414。
编码单元414获取并编码由预测模式确定单元413供应的信息(例如,选择的预测模式的预测残差等),以生成编码数据。编码单元414可以针对几何数据和属性数据二者执行这样的处理。
编码单元414将生成的编码数据作为几何数据和属性数据的编码数据供应至编码装置400的外部(例如,解码侧)。此外,编码单元414将处理目标点的几何数据和属性数据供应至预测点生成单元415。
预测点生成单元415执行与预测点的生成相关的处理,也就是说,预测值的得出。例如,预测点生成单元415获取诸如从编码单元414供应的处理目标点的几何数据和属性数据的信息。此外,预测点生成单元415得出通过使用处理目标点的几何数据、属性数据等生成的预测点的几何数据和属性数据(例如,处理目标节点的子节点的几何数据和属性数据的预测值)。此时,预测点生成单元415可以应用如上面参照图19的表描述的各种方法。预测点生成单元415根据需要将得出的预测值供应至预测模式确定单元413。
通过具有以上以上配置,编码装置400可以通过类似于预测几何编码的方法对属性数据进行编码。因此,编码装置400可以获得在对属性数据进行编码时与几何数据的情况类似的效果。例如,由于预测残差被编码,因此编码装置400可以抑制属性数据的编码数据的编码量的增加。此外,编码装置400可以控制存储编码数据时的存储容量以及传输编码数据时的传输速率。也就是说,编码装置400可以控制属性数据的编码数据比特率。
注意,这些处理单元(参考结构形成单元411至预测点生成单元415)具有任何配置。例如,每个处理单元可以由实现上述处理的逻辑电路配置。此外,处理单元中的每一个可以包括例如CPU、ROM、RAM等,并且通过使用处理单元来执行程序以实现上述处理。当然,每个处理单元可以具有如下两种配置,通过逻辑电路实现上述处理的一部分,以及通过执行程序来实现其他部分。处理单元的配置可以彼此独立,并且例如,一些处理单元可以通过逻辑电路实现上述处理的一部分,一些其他处理单元可以通过执行程序实现上述处理,以及还有一些其他处理单元可以通过逻辑电路和程序的执行二者来实现上述处理。
<编码处理的流程>
接下来,将描述由该编码装置400执行的处理。该编码装置400通过执行编码处理对点云的数据进行编码。将参照图21的流程图描述该编码处理的流程的示例。
当编码处理开始时,在步骤S401中参考结构形成单元411执行参考结构形成处理以形成几何数据和属性数据的参考结构(预测树)。例如,参考结构形成单元411可以通过与非专利文献2中描述的方法类似的方法形成参考结构。
在步骤S402中,参考结构形成单元411将在步骤S401中形成的参考结构的头节点的几何数据、属性数据等存储在堆栈412中。
在步骤S403中,预测模式确定单元413从堆栈412获取最近存储的点(节点)的几何数据、属性数据等。
在步骤S404中,预测模式确定单元413将在步骤S403中用于获取信息的点设置为处理目标,预测模式确定单元413得出处理目标点的几何数据的预测残差,并且确定预测模式。
在步骤S405中,编码单元414对在步骤S404中确定的预测模式进行编码。此外,在步骤S406中,编码单元414对在步骤S404中确定的预测模式中的几何数据的预测残差进行编码。
在步骤S407中,预测模式确定单元413执行重新着色处理以得出属性数据的预测残差。在步骤S408中,编码单元414对属性数据的预测残差进行编码。
在步骤S409中,编码单元414对指示哪个节点是处理目标节点的子节点的子节点信息进行编码。
在步骤S410中,参考结构形成单元411基于用户的编码控制等来确定是否对处理目标节点的子节点进行编码。当确定编码时,处理进行至步骤S411。
在步骤S411中,参考结构形成单元411将子节点的几何数据等存储在堆栈412中。当步骤S411的处理结束时,处理进行至步骤S412。然而,当在步骤S410中确定不对子节点进行编码时,跳过步骤S411的处理,并且处理进行至步骤S412。
在步骤S412中,预测点生成单元415生成可以通过使用关于处理目标点的信息(几何数据、属性数据等)生成的预测点的几何数据和属性数据。
在步骤S413中,预测模式确定单元413确定堆栈412是否为空。当确定堆栈412不是空的(也就是说,存储关于至少一个或更多个点的信息)时,处理返回至步骤S403。也就是说,对作为处理目标的堆栈412中最近存储的点执行步骤S403至S413的每个处理。
重复这样的处理,并且当在步骤S413中确定堆栈为空时,几何数据编码处理结束。
通过执行如上所述的各种处理,编码装置400可以通过与预测几何编码类似的方法对属性数据进行编码。因此,编码装置400可以获得在对属性数据进行编码时的与几何数据的情况类似的效果。例如,由于预测残差被编码,所以编码装置400可以抑制属性数据的编码数据的编码量的增加。此外,编码装置400可以控制存储编码数据时的存储容量和传输编码数据时的传输速率。也就是说,编码装置400可以控制属性数据的编码数据比特率。
<解码装置>
图22是示出作为应用本技术的信息处理装置的一种模式的解码装置的配置的示例的框图。图22中所示的解码装置500是对点云的编码数据(3D数据)进行解码的装置。解码装置500例如对在编码装置400中生成的点云的编码数据进行解码。
注意,在图22中,示出了处理单元的主要部分、数据流等,并且图22中所示的那些不一定是全部。也就是说,在解码装置500中,可以存在在图22中未作为块示出的处理单元,或者可以存在在图22中未作为箭头等示出的处理或数据的流。
如图22中所示,解码装置50包括存储单元511、堆栈512、解码单元513、点数据生成单元514以及预测点生成单元515。
供应至解码装置500的几何数据和属性数据的编码数据被供应至存储单元511。
存储单元511存储供应至解码装置500的几何数据和属性数据的编码数据。此外,存储单元511在解码单元513的控制下将要解码的点的几何数据和属性数据的编码数据供应至堆栈512。
堆栈512以后进先出的方法保存信息。例如,堆栈512保存从存储单元511供应的几何数据和每个点的属性数据的编码数据等。此外,堆栈512响应于来自解码单元513的请求将保存的信息中最近保存的信息(例如,几何数据和属性数据的编码数据等)供应至解码单元513。
解码单元513针对几何数据和属性数据二者执行与编码数据的解码相关的处理。例如,解码单元513获取最近保存在堆栈512中的点的编码数据。此外,解码单元513对获取的编码数据进行解码,以生成几何数据(预测残差等)和属性数据(预测残差等)。此时,解码单元513可以应用如上面参照图19的表描述的各种方法。解码单元513将生成的几何数据(预测残差等)和属性数据(预测残差等)供应至点数据生成单元514。
点数据生成单元514执行与点数据(几何数据和属性数据)的生成相关的处理。例如,点数据生成单元514获取诸如从解码单元513供应的预测残差等信息。此外,点数据生成单元514获取来自预测点生成单元515的与处理目标点相对应的预测点(也就是说,处理目标点的几何数据的预测值和属性数据的预测值)。然后,点数据生成单元514通过使用获取的预测残差和预测值(例如,通过将二者相加)来生成处理目标点的几何数据和属性数据。点数据生成单元514将生成的几何数据和属性数据供应至解码装置500的外部。
预测点生成单元515执行与预测点的生成相关的处理,也就是说,预测值的得出。例如,预测点生成单元515获取诸如在点数据生成单元514中生成的处理目标点的几何数据和属性数据的信息。此外,预测点生成单元515得出以下数据:可以通过使用处理目标点的几何数据、属性数据等生成的预测点的几何数据(例如,处理目标节点的子节点的几何数据的预测值);以及预测点的属性数据。此时,预测点生成单元515可以应用如上参照图19的表描述的各种方法。例如,预测点生成单元515可以与编码装置400的预测点生成单元415的情况类似地生成预测点。预测点生成单元515根据需要将得出的预测值供应至点数据生成单元514。
通过具有以上配置,解码装置500不仅可以对几何数据的编码数据进行解码,而且可以对属性数据的编码数据进行解码。因此,解码装置500能够抑制解码处理的负荷的增加。
<解码处理的流程>
接下来,将描述由该解码装置500执行的处理。该解码装置500通过执行解码处理来对点云的编码数据进行解码。将参照图23的流程图描述该解码处理的流程的示例。
当解码处理开始时,在步骤S501中,存储单元511存储供应的几何数据和属性数据的编码数据,并且在堆栈232中存储几何数据和属性数据的参考结构(预测树)的头节点的编码数据。
在步骤S502中,解码单元513从堆栈512获取最近存储的点(节点)的编码数据。
在步骤S503中,解码单元513对在步骤S502中获取的编码数据进行解码,并且生成预测模式和几何数据的预测残差。
在步骤S504中,点数据生成单元514通过使用在步骤S503中生成的预测残差和处理目标节点的预测值(例如,通过将二者相加)来生成处理目标节点的几何数据。
在步骤S505中,解码单元513对在步骤S502中获取的编码数据进行解码,并且生成属性数据的预测残差。在步骤S506中,点数据生成单元514通过使用在步骤S503中生成的预测残差和处理目标节点的预测值(例如,通过将二者相加)来生成处理目标节点的属性数据。
在步骤S507中,预测点生成单元515生成可以通过使用处理目标节点的几何数据生成的预测点的几何数据和属性数据(也就是说,预测值)。通过使用在步骤S503中生成的预测残差和处理目标节点的预测值(例如,通过将二者相加)来生成预测点的几何数据和属性数据。
在步骤S508中,解码单元513对在步骤S502中获取的编码数据进行解码并且生成子节点信息。
在步骤S509中,解码单元513根据用户的解码控制等,基于子节点信息、层信息等来确定是否也对子节点进行解码。当确定也对子节点进行解码时,处理进行至步骤S510。
在步骤S510中,解码单元513控制存储单元511以将子节点的编码数据存储在堆栈512中。当步骤S510的处理结束时,处理进行至步骤S511。然而,当在步骤S509中确定不对子节点进行解码时,跳过步骤S510的处理,并且处理进行至步骤S511。
在步骤S511中,解码单元513确定堆栈512是否为空。当确定堆栈512不为空时(也就是说,存储了关于至少一个或更多个点的信息),处理返回至步骤S502。也就是说,对作为处理目标的在堆栈502中最近存储的点执行步骤S502至步骤S511的处理。
重复这样的处理,并且当在步骤S511中确定堆栈为空时,几何数据解码处理结束,并且处理返回至图15。
通过执行如上所述的各种处理,除了几何数据的编码数据之外,解码装置500还可以对属性数据的编码数据进行解码。因此,如上所述,解码装置500能够抑制解码处理的负荷的增加。
<转码器>
图24是示出应用本技术的信息处理装置的一种模式的转码器的配置的示例的框图。图24中所示的转码器600是对点云的编码数据(3D数据)进行解码并且通过执行例如参数换算等对编码数据进行重新编码的装置。例如,转码器600对在编码装置400中生成的点云的编码数据进行转码(解码和编码)。
注意,在图24中,示出了处理单元的主要部分、数据流等,并且图24中所示的那些不一定是全部。也就是说,在转码器600中,可能存在在图24中未作为块示出的处理单元,或者可能存在在图24中未作为箭头等示出的处理或数据的流。
如图24中所示,转码器600包括解码单元611和编码单元612。
解码单元611获取输入至转码器600的点云数据的编码数据。解码单元611对编码数据进行解码以生成几何数据和属性数据。此时,解码单元611可以应用如上面参照图19的表描述的各种方法。例如,解码单元611可以具有与解码装置500的配置类似的配置,并且执行类似的处理。解码单元611将生成的几何数据和属性数据供应至编码单元612。
编码单元612获取从解码单元611提供的几何数据和属性数据。编码单元612重新编码几何数据以生成几何数据的编码数据。此外,编码单元612重新编码属性数据以生成属性数据的编码数据。此时,编码单元612可以应用如上面参照图19的表描述的各种方法。例如,编码单元612可以具有与编码装置400的配置类似的配置,并且执行类似的处理。
注意,可以(通过可伸缩解码)在解码单元611中执行转码中的几何数据和属性数据的参数的改变(诸如,例如,减少点的数目),可以在编码单元612中执行转码中的几何数据和属性数据的参数的改变(诸如,例如,减少点的数目),或者可以在解码单元611和编码单元612二者中执行转码中的几何数据和属性数据的参数的改变(诸如,例如,减少点的数目)。
编码单元612将已生成的几何数据的编码数据和属性数据的编码数据输出至转码器600的外部以作为转码结果。
通过具有以上配置,转码器600可以减少转码时的点的数目。也就是说,转码器600可以抑制转码的负荷的增加。此外,转码器600可以控制通过转码产生的几何数据和属性数据的编码数据的比特率。
注意,这些处理单元(解码单元611和编码单元612)具有任何配置。例如,每个处理单元可以由实现上述处理的逻辑电路配置。此外,处理单元中的每一个可以包括例如CPU、ROM、RAM等,并且通过使用处理单元来执行程序以实现上述处理。当然,每个处理单元可以具有以下两种配置,通过逻辑电路实现上述处理的一部分,以及通过执行程序来实现其他部分。处理单元的配置可以彼此独立,并且例如,一些处理单元可以通过逻辑电路实现上述处理的一部分,一些其他处理单元可以通过执行程序来实现上述处理,还有一些其他处理单元可以通过逻辑电路和程序的执行二者来实现上述处理。
<转码处理的流程>
接下来,将描述由该转码器600执行的处理。该转码器600通过执行转码处理对点云的编码数据进行转码。将参照图25的流程图来描述该转码处理的流程的示例。
当转码处理开始时,转码器600的解码单元611执行步骤S601中的解码处理以对编码数据进行解码,进而生成几何数据和属性数据。例如,解码单元611可以以与参照图23的流程图描述的解码处理类似的流程执行该解码处理。
在步骤S602中,编码单元612执行编码处理以对几何数据和属性数据进行编码,进而生成几何数据和属性数据的编码数据。例如,编码单元612可以以与参照图21的流程图描述的编码处理类似的流程执行该编码处理。当步骤S602的处理结束时,转码处理结束。
通过执行如上所述的每个处理,转码器600可以减少转码时的点的数目。也就是说,转码器600可以抑制转码的负荷的增加。此外,转码器600可以控制通过转码生成的几何数据的编码数据的比特率。
<3.第三实施方式>
<参考结构的分层和属性数据的预测残差编码>
注意,可以组合在第一实施方式中描述的本技术和在第二实施方式中描述的本技术。
例如,如从图4中所示的表的顶部起的第二行(“1”的行)示出的,当形成点的组时,并且形成将该组制作为层的参考结构,如从图19中所示的表的顶部起的第二行(“2”的行)中示出的,可以将预测几何编码应用于属性数据的编码。例如,如从图19中所示的表的顶部起的第四行(“2-1-1”的行)中示出的,参考结构可以在几何数据和属性数据之间共用。
例如,当在以下情况下时,参考结构可以在几何数据和属性数据之间共用:形成点云的编码时的几何数据的参考结构,其中根据将三维形状的物体表示为一组点的点云的哪些点被分类成的组对该参考结构进行分层;针对基于形成的参考结构的每个点,得出几何数据的预测值,并且得出几何数据和预测值之间的差的预测残差;以及针对基于形成的参考结构的每个点,对每个点的几何数据的得出的预测残差进行编码,可以进一步得出属性数据的预测值并且进一步得出属性数据和预测值之间的差的预测残差,以及可以进一步对每个点的属性数据的得出的预测残差进行编码。
此外,如图从19中所示的表的顶部起的第7行至第10行中示出的,处理目标节点的预测点的属性数据可以与处理目标节点的父节点的属性数据相同,或者可以是具有处理目标节点的父节点的属性数据和父节点的父节点的属性数据的平均,或者处理目标节点的预测点的属性数据可以是具有处理目标节点的父节点的属性数据和父节点的父节点的属性数据的加权平均,该加权平均使用与这些节点相对应的点之间的距离的倒数作为权重,或者可以是解码节点的附近k个节点的属性数据的平均。
可以通过将以下设置为处理目标节点的属性数据的预测值来得出属性数据的预测残差,例如:参考结构中的处理目标节点所属的父节点的属性数据;父节点的属性数据和父节点的父节点的属性数据的平均;父节点的属性数据和父节点的父节点的属性数据的加权平均;或处理目标节点的附近节点的属性数据的平均。
此外,如从图19中所示的表的顶部起的第十二行至第十五行中示出的,可以选择几何数据的预测残差最小化的预测点,属性数据的预测残差最小化的预测点,或几何数据和属性数据的预测残差最小化的预测点。
此外,如从图19中所示的表的顶部起的第五行中示出的,可以独立于几何数据的参考结构形成属性数据中的所有或一些的参考结构。例如,与属性数据的颜色(RGB)相关的参数可以具有与几何数据共用的参考结构,并且可以独立于几何数据的参考结构形成属性数据的反射率等的参数。
相反地,如从图19中所示的表的顶部起的第二行(“1”的行)中示出的,当将预测几何编码应用于属性数据的编码时,如从图4中所示的表的顶部起的第二行(“1”的行)中示出的,可以形成点的组,并且可以形成将该组制作为层的参考结构。
例如,当在以下情况下时,可以形成将组制作为层的参考结构:形成点云的编码时的几何数据的参考结构,根据将三维形状的物体表示为一组点的点云的哪些点被分类成的组对该参考结构进行分层;针对基于形成的参考结构的每个点,得出几何数据的预测值,并且得出几何数据和预测值之间的差的预测残差;以及对每个点的几何数据的得出的预测残差进行编码,属性数据的参考结构可以被形成为根据点云的点被分类成的组进行分层。
此外,可以通过执行点的组分类、重新布置每组的点并且以重新布置的顺序设置每个点的属性数据的参考目的地来形成根据组分层的参考结构。
此外,可以根据点的位置、点云中的点的特征或点的位置和点云中的点的特征二者来进行点的组分类。
此外,针对每个点,可以生成指示作为参考结构中的根据组的层的组层的层信息,并且可以进一步对生成的层信息进行编码。
此外,可以生成如下层信息,在该层信息中,通过相对于处理目标节点的组层的相对值指示参考结构中属于处理目标节点的每个子节点的组层。
此外,可以生成如下层信息,在该层信息中,由相对于处理目标节点所属的父节点的组层的相对值指示参考结构中处理目标节点的组层。
此外,可以针对根据参考结构中的组的层的每个组层、针对参考结构的每个分支、或针对每个组层和每个分支二者来选择是否对预测残差进行编码,以及可以对被选择用于编码的组层或分支的预测残差进行编码。
<编码装置>
这种情况下的编码装置具有,例如,图20中所示的编码装置400的配置,以及参考结构形成单元411具有如图9中所示的配置。通过具有这样的结构,该编码装置可以获得在第一实施方式和第二实施方式中描述的效果。也就是说,可以对参考结构执行组分层并且对属性数据的预测残差进行编码。因此,可以抑制编码处理的负荷的增加。此外,可以控制通过编码生成的几何数据的编码数据的比特率。
<编码处理的流程>
此外,将参照图26的流程图描述在这种情况下的编码处理的流程的示例。在这种情况下,如图26中的流程图中所示,在编码处理中,在步骤S701中,参考结构形成单元411与图11中的步骤S131的情况类似地以如图12中的流程图中所示的流程执行参考结构形成处理。
执行步骤S702至步骤S709的每个处理,步骤S702至步骤S709的每个处理与图21的步骤S402至步骤S409的每个处理类似。
在步骤S710中,编码单元414与图11中的步骤S138的情况类似地对在步骤S701中生成的层信息进行编码。
与图21的步骤S410至步骤S413的每个处理类似地执行步骤S711至步骤S714的每个处理。
通过执行如上所述的各种处理,可以获得在第一实施方式和第二实施方式中描述的效果。也就是说,可以对参考结构执行组分层并且对属性数据的预测残差进行编码。因此,可以抑制编码处理的负荷的增加。此外,可以控制通过编码生成的几何数据的编码数据的比特率。
<解码装置>
在这种情况下的解码装置具有例如与图22中所示的解码装置500的配置相似的配置。
<解码处理的流程>
将参照图27中的流程图来描述在这种情况下的解码处理的流程的示例。在这种情况下,当开始解码处理时,与图23中的步骤S501和步骤S502的每个处理类似地执行步骤S801和步骤S802的每个处理。
在步骤S803中,类似于图16中的步骤S233的情况,解码单元对编码数据进行解码以生成层信息。此后,与图23的步骤S503至步骤S511的每个处理类似地执行步骤S804至步骤S812的每个处理。
通过执行如上所述的各种处理,可以获得在第一实施方式和第二实施方式中描述的效果。也就是说,可以对参考结构执行组分层并且对属性数据的预测残差进行编码。因此,可以抑制解码处理的负荷的增加。此外,可以实现解码的可扩展性,并且可以控制通过编码生成的几何数据的编码数据的比特率。
<转码器>
这种情况下的转码器具有与如图24中所示的转码器600的配置类似的配置。
<转码处理的流程>
这种情况下的转码处理在与图25中所示的流程图类似的流程中执行。然而,在步骤S601中,以与图26中所示的流程图类似的流程执行编码处理。此外,在步骤S602中,以与图27所示的流程类似的流程执行编码处理。
通过执行这样的处理,这种情况下的转码器可以减少转码时的点的数目。也就是说,可以抑制转码的负荷的增加。此外,可以实现解码的可扩展性,并且可以控制由转码生成的几何数据和属性数据的编码数据的比特率。
<补充说明>
<控制信息>
与上述每个实施方式中描述的与本技术相关的控制信息可以从编码侧发送至解码侧。例如,可以发送用于控制是否允许(或禁止)上述本技术的应用的控制信息(例如,enabled_flag)。此外,例如,可以发送指定范围的控制信息(例如,块大小、切片、图片、序列、分量、视图、层等的上限、下限或上限和下限二者),在指定范围的控制信息中允许(或禁止)上述本技术的应用。
<周围和附近>
注意,在本说明书中,位置关系(诸如“附近”或“周围”)不仅可以包括空间位置关系,还可以包括时间位置关系。
<计算机>
上述一系列处理可以由硬件执行,也可以由软件执行。当这一系列处理由软件执行时,配置该软件的程序被安装在计算机中。此处,计算机的示例包括例如内置于专用硬件中的计算机、可以通过安装各种程序执行各种功能的通用个人计算机等。
图28是示出根据程序执行上述一系列处理的计算机的硬件的配置示例的框图。
在图28所示的计算机900中,中央处理单元(CPU)901、只读存储器(ROM)902以及随机存取存储器(RAM)903经由总线904相互连接。
总线904还与输入/输出接口910连接。输入单元911、输出单元912、存储单元913、通信单元914以及驱动器915连接至输入/输出接口910。
输入单元911包括,例如,键盘、鼠标、麦克风、触摸面板、输入端子等。输出单元912包括,例如,显示器、扬声器、输出端子等。存储单元913包括,例如,硬盘、RAM盘、非易失性存储器等。通信单元914包括,例如,网络接口等。驱动器915驱动可移动介质921(诸如磁盘、光盘、磁光盘或半导体存储器)。
在如上所述配置的计算机中,例如通过CPU 901将记录在存储单元913中的程序经由输入/输出接口910和总线904加载至RAM 903中并且执行记录在存储单元913中的程序来执行上述一系列处理。例如,RAM903还适当地存储CPU 901执行各种处理所需的数据。
可以通过记录在例如作为封装介质等的可移动介质921上来应用由计算机执行的程序。在这种情况下,通过将可移动介质921附接至驱动器915,可以经由输入/输出接口910在存储单元913中安装程序。
此外,也可以经由有线或无线传输介质(诸如局域网、互联网或数字卫星广播)提供该程序。在这种情况下,程序可以被通信单元914接收并且被安装在存储单元913中。
此外,程序可以提前安装在ROM 902和存储单元913中。
<现有技术的应用对象>
上面已经描述了将本技术应用于点云数据的编码和解码的情况,但是可以将本技术应用于任何标准的3D数据的编码和解码,而不限于这些示例。例如,在网格数据的编码/解码中,可以将网格数据转换成点云数据,并且可以应用本技术执行编码/解码。也就是说,只要与上述本技术不矛盾,可以针对诸如编码和解码方法的各种处理以及诸如3D数据和元数据的各种类型的数据采用任何规范。此外,只要与本技术不矛盾,上述的一些处理和规范可以省略。
可以将本技术应用于任何配置。例如,本技术可以应用于各种电子装置,诸如卫星广播中的发送器或接收器(例如,电视接收器或移动电话)、有线广播(诸如有线电视)、互联网上的分发以及通过蜂窝通信至终端的分发,或将图像记录在诸如光盘、磁盘或闪存的介质上或从这些存储介质再现图像的装置(例如,硬盘记录器或相机)。
此外,例如,本技术还可以被实现为装置的部分配置,诸如:作为系统大规模集成(LSI)等的处理器(例如,视频处理器);使用多个处理器等的模块(例如,视频模块);使用多个模块等的单元(例如,视频单元);或将其他功能进一步添加至单元的集合(例如,视频集合)。
此外,例如,还可以将本技术应用于包括多个装置的网络系统。例如,本技术可以被实现为云计算,该云计算由多个装置经由网络通过共享和协作执行处理。例如,对于诸如计算机、视听(AV)装置、便携式信息处理终端或物联网(IoT)装置的任何终端,可以以提供与图像(运动图像)相关的服务的云服务实现本技术。
注意,在本说明书中,系统意指一组多个部件(装置、模块(部分)等),并且所有部件是否都在同一壳体中并不重要。因此,容纳在单独的壳体中并且经由网络连接的多个装置,以及具有容纳在一个壳体中的多个模块的单个装置都是系统。
<现有技术适用的领域和应用>
应用本技术的系统、装置、处理单元等可以用于任何领域,诸如,例如,运输、医疗、预防犯罪、农业、畜牧业、采矿业、美容护理、工厂、家用电器、天气、自然监测等。此外,可以采用本技术的任何应用。
<其他>
注意,在本说明书中,“标志”是用于识别多个状态的信息,并且不仅包括用于识别真(1)或假(0)的两种状态的信息,还包括能够识别三个或更多个状态的信息。因此,“标志”可以取的值可以是例如1/0的二进制值,或者可以是三进制值或更多进制的值。也就是说,“标志”包括的比特的数目可以取任意数目,并且可以是1比特或多个比特。此外,对于识别信息(包括标志),除了识别信息被包括在比特流中的形式之外,还假设相对于某个参考信息的识别信息的差异信息被包括在比特流中的形式。因此,在本说明书中,“标志”和“识别信息”不仅包括其信息,还包括相对于参考信息的差异信息。
此外,只要形式与编码数据相关联,可以以任何形式传输或记录与编码数据(比特流)相关的各种信息(诸如元数据)。此处,“关联”意指,例如,在处理一个数据时,允许使用(链接)其他数据。也就是说,彼此相关联的数据可以被组合为一个数据或可以是单独的数据。例如,可以在与编码数据(图像)不同的传输线上传输与编码数据(图像)相关联的信息。此外,例如,与编码数据(图像)相关联的信息可以被记录在与编码数据(图像)不同的记录介质(或相同记录介质的另一记录区)上。注意,该“关联”可能针对数据的一部分,而不是整个数据。例如,图像和与图像相对应的信息可以以任何单位——诸如多个帧、一帧或帧内的一部分——彼此相关联。
注意,在本说明书中,诸如“合成”、“复用”、“添加”、“集成”、“包括”、“存储”、“放入”、“引入”、“插入”等的术语意指,例如,将多个对象组合成一个(诸如将编码数据和元数据组合成一个数据),并且意指上述的“关联”的一种方法。
此外,本技术的实施方式不限于上述实施方式,并且可以在不背离本技术的范围的情况下进行各种修改。
例如,被描述为一个装置(或处理单元)的配置可以被划分并且被配置为多个装置(或处理单元)。相反,上面被描述为多个装置(或处理单元)的配置可以被共同地配置为一个装置(或处理单元)。此外,当然地,可以将除了上面的配置之外的配置添加至每个装置(或每个处理单元)的配置,此外,只要整个系统的配置和操作基本上相同,一个装置(或处理单元)的配置的一部分可以被包括在另一装置(或另一处理单元)的配置中。
此外,例如,可以在任何装置中执行上述程序。在这种情况下,装置只需要具有必要的功能(功能块等),使得可以获得必要的信息。
此外,例如,一个流程图的每个步骤可以由一个装置执行,或者可以由多个装置共享并执行。此外,当一个步骤包括多个处理时,多个处理可以由一个装置执行,或可以由多个装置共享并执行。换句话说,一个步骤中包括的多个处理可以作为多个步骤被执行。相反,被描述为多个步骤的处理可以作为一个步骤被共同地执行。
此外,例如,在由计算机执行的程序中,可以按照本说明书中描述的顺序以时间顺序执行描述程序的步骤的处理,或者可以在需要的定时处(诸如当调用时)并行或单独地执行描述程序的步骤的处理。也就是说,只要不发生矛盾,每个步骤的处理可以以与上述顺序不同的顺序执行。此外,描述程序的步骤的处理可以与另一程序的处理被并行执行,或者可以与另一程序的处理组合起来被执行。
此外,例如,只要不存在矛盾,可以将与本技术相关的多种技术独立地实现为单独的主体。当然,可以组合使用多种现有技术中的任何一种。例如,任何实施方式中描述的本技术的一部分或全部可以与另一实施方式中描述的本技术的一部分或全部组合起来被实现。此外,上述本技术的一部分或全部可以与上面未描述的另一技术组合起来被实现。
注意,本技术也可以具有以下配置。
(1)一种信息处理装置,包括:
参考结构形成单元,该参考结构形成单元被配置成形成点云的编码中的几何数据的参考结构,根据将三维形状对象表示为点的集合的点云的点被分类成的组来对参考结构进行分层;
预测残差得出单元,该预测残差得出单元被配置成:基于由参考结构形成单元形成的参考结构,针对每个点得出几何数据的预测值并且得出作为几何数据与预测值之间的差的预测残差;以及
编码单元,该编码单元被配置成对每个点的几何数据的预测残差进行编码,预测残差由预测残差得出单元得出。
(2)根据(1)所述的信息处理装置,其中
参考结构形成单元包括:
被配置成执行点的组分类的组分类处理单元;
被配置成重新布置组中的每个组的点的重新布置单元;以及
组分层参考结构形成单元,组分层参考结构形成单元被配置成:通过按照由重新布置单元重新布置的顺序设置每个点的几何数据的参考目的地来形成根据组进行分层的参考结构。
(3)根据(2)所述的信息处理装置,其中
组分类处理单元根据点的位置执行点的组分类。
(4)根据(2)或(3)所述的信息处理装置,其中
组分类处理单元根据点云中的点的特征执行点的组分类。
(5)根据(2)至(4)中任一项所述的信息处理装置,其中
参考结构形成单元还包括:
层信息生成单元,层信息生成单元被配置成针对每个点生成层信息,层信息指示作为参考结构中的根据组中的每个组的层的组层,以及
编码单元还对由层信息生成单元生成的层信息进行编码。
(6)根据(5)所述的信息处理装置,其中
层信息生成单元生成如下层信息,其中属于参考结构中的处理目标节点的每个子节点的组层由相对于处理目标节点的组层的相对值来指示。
(7)根据(5)所述的信息处理装置,其中
层信息生成单元生成层信息,在层信息中,参考结构中的处理目标节点的组层由相对于处理目标节点所属的父节点的组层的相对值来指示。
(8)根据(1)至(7)中任一项所述的信息处理装置,其中
编码单元以量化步长对预测残差进行量化和编码,针对作为参考结构中的根据组中的每个组的层的每个组层来设置量化步长。
(9)根据(8)所述的信息处理装置,其中
编码单元对指示量化步长的信息进行编码。
(10)根据(1)至(9)中任一项所述的信息处理装置,其中
编码单元在预测残差被分类到作为参考结构中的根据组中的每个组的层的每个组层中的情况下执行算术编码。
(11)根据(1)至(9)中任一项所述的信息处理装置,其中
编码单元在没有将预测残差分类到作为参考结构中的根据组中的每个组的层的每个组层中的情况下执行算术编码。
(12)根据(1)至(11)中任一项所述的信息处理装置,其中
编码单元选择是否对作为参考结构中的根据组中的每个组的层的每个组层的预测残差进行编码,并且编码单元对被选择用于编码的组层的预测残差进行编码。
(13)根据(1)至(12)中任一项所述的信息处理装置,其中
编码单元选择是否对参考结构的每个分支的预测残差进行编码,并且对被选择用于编码的分支的预测残差进行编码。
(14)根据(1)至(13)中任一项所述的信息处理装置,其中
预测残差得出单元基于由参考结构形成单元形成的参考结构,针对每个点进一步得出属性数据的预测值并且进一步得出作为属性数据与预测值之间的差的预测残差,以及
编码单元还对每个点的属性数据的预测残差进行编码,预测残差由预测残差得出单元得出。
(15)根据(14)所述的信息处理装置,其中
预测残差得出单元通过将以下项设置为处理目标节点的属性数据的预测值来得出属性数据的预测残差:参考结构中的处理目标节点所属的父节点的属性数据;父节点的属性数据与父节点的父节点的属性数据的平均值;父节点的属性数据与父节点的父节点的属性数据的加权平均值;或者处理目标节点的附近节点的属性数据的平均值。
(16)根据(14)或(15)所述的信息处理装置,其中
预测残差得出单元应用使几何数据的预测残差、属性数据的预测残差或几何数据和属性数据两者的预测残差最小化的得出方法,并且预测残差得出单元根据得出方法得出几何数据的预测残差和属性数据的预测残差。
(17)根据(1)至(16)中任一项所述的信息处理装置,其中
参考结构形成单元还独立于几何数据的参考结构形成点云的编码中的属性数据的参考结构,
预测残差得出单元基于由参考结构形成单元形成的属性数据的参考结构,针对每个点进一步得出属性数据的预测值并且进一步得出作为属性数据与预测值之间的差的预测残差,以及
编码单元还对每个点的属性数据的预测残差进行编码,预测残差由预测残差得出单元得出。
(18)一种信息处理方法,包括:
形成点云的编码中的几何数据的参考结构,根据将三维形状对象表示为点的集合的点云的点被分类成的组来对参考结构进行分层;
基于形成的参考结构,针对每个点得出几何数据的预测值并得出作为几何数据与预测值之间的差的预测残差;以及
对得出的每个点的几何数据的预测残差进行编码。
(19)一种信息处理装置,包括:
解码单元,解码单元被配置成基于层信息对编码数据中与期望的组层对应的编码数据进行解码,编码数据通过对作为每个点的几何数据与几何数据的预测值之间的差的预测残差进行编码而获得,预测残差基于参考结构被得出;层信息指示组层,该组层是根据在点云的编码中几何数据的参考结构中的组中的每个组的层,根据将三维形状对象表示为点的集合的点云的点被分类成的组来对参考结构进行分层。
(20)一种信息处理方法,包括:
基于层信息对编码数据中与期望的组层对应的编码数据进行解码,编码数据通过对作为每个点的几何数据与几何数据的预测值之间的差的预测残差进行编码而获得,预测残差基于参考结构被得出;层信息指示组层,该组层是根据在点云的编码中几何数据的参考结构中的组中的每个组的层,根据将三维形状对象表示为点的集合的点云的点被分类成的组来对参考结构进行分层。
(21)一种信息处理装置,包括:
参考结构形成单元,该参考结构形成单元被配置成形成在将三维形状对象表示为点的集合的点云的编码中的属性数据的参考结构;
预测残差得出单元,该预测残差得出单元被配置成:基于由参考结构形成单元形成的参考结构,针对每个点得出属性数据的预测值并且得出作为属性数据与预测值之间的差的预测残差;以及
编码单元,该编码单元被配置成对每个点的属性数据的预测残差进行编码,预测残差由预测残差得出单元得出。
(22)根据(21)所述的信息处理装置,其中
预测残差得出单元将参考结构中的处理目标节点所属的父节点的属性数据设置为处理目标节点的属性数据的预测值,并且预测残差得出单元得出属性数据的预测残差。
(23)根据(21)或(22)所述的信息处理装置,其中
预测残差得出单元将参考结构中的处理目标节点所属的父节点的属性数据与该父节点的父节点的属性数据的平均值设置为处理目标节点的属性数据的预测值,并且预测残差得出单元得出属性数据的预测残差。
(24)根据(21)至(23)中任一项所述的信息处理装置,其中
预测残差得出单元将参考结构中的处理目标节点所属的父节点的属性数据与该父节点的父节点的属性数据的加权平均值设置为处理目标节点的属性数据的预测值,并且预测残差得出单元得出属性数据的预测残差。
(25)根据(21)至(24)中任一项所述的信息处理装置,其中
预测残差得出单元将参考结构中处理目标节点附近的节点的属性数据的平均值设置为处理目标节点的属性数据的预测值,并且预测残差得出单元得出属性数据的预测残差。
(26)根据(21)至(25)中任一项所述的信息处理装置,其中
预测残差得出单元基于由参考结构形成单元形成的参考结构,针对每个点进一步得出几何数据的预测值并且进一步得出作为几何数据与预测值之间的差的预测残差,以及
编码单元还对每个点的几何数据的预测残差进行编码,该预测残差由预测残差得出单元得出。
(27)根据(26)所述的信息处理装置,其中
预测残差得出单元应用使几何数据的预测残差最小化的得出方法,并且根据该得出方法得出几何数据的预测残差和属性数据的预测残差。
(28)根据(26)所述的信息处理装置,其中
预测残差得出单元应用使属性数据的预测残差最小化的得出方法,并且根据该得出方法得出几何数据的预测残差和属性数据的预测残差。
(29)根据(26)所述的信息处理装置,其中
预测残差得出单元应用使几何数据的预测残差和属性数据的预测残差最小化的得出方法,并且根据该得出方法得出几何数据的预测残差和属性数据的预测残差。
(30)根据(21)至(29)中任一项所述的信息处理装置,其中
参考结构形成单元还独立于属性数据的参考结构形成点云的编码中的几何数据的参考结构,
预测残差得出单元基于由参考结构形成单元形成的几何数据的参考结构,针对每个点进一步得出几何数据的预测值并且进一步得出作为几何数据与预测值之间的差的预测残差,以及
编码单元还对每个点的几何数据的预测残差进行编码,该预测残差由预测残差得出单元得出。
(31)根据(21)至(30)中任一项所述的信息处理装置,其中
参考结构形成单元将属性数据的参考结构形成为根据点云的点被分类成的组来分层。
(32)根据(31)所述的信息处理装置,其中
参考结构形成单元包括:
被配置成执行点的组分类的组分类处理单元;
被配置成重新布置组中的每个组的点的重新布置单元;以及
组分层参考结构形成单元,该组分层参考结构形成单元被配置成通过按照由重新布置单元重新布置的顺序设置每个点的属性数据的参考目的地来形成根据组进行分层的参考结构。
(33)根据(32)所述的信息处理装置,其中
组分类处理单元根据点的位置、点云中的点的特征或者位置和特征两者来执行点的组分类。
(34)根据(32)或(33)所述的信息处理装置,其中
参考结构形成单元还包括:
层信息生成单元,该层信息生成单元被配置成针对每个点生成指示作为参考结构中的根据组中的每个组的层的组层的层信息,以及
编码单元还对由层信息生成单元生成的层信息进行编码。
(35)根据(34)所述的信息处理装置,其中
层信息生成单元生成层信息,其中属于参考结构中的处理目标节点的每个子节点的组层由相对于处理目标节点的组层的相对值来指示。
(36)根据(34)所述的信息处理装置,其中
层信息生成单元生成层信息,其中参考结构中的处理目标节点的组层由相对于处理目标节点所属的父节点的组层的相对值来指示。
(37)根据(31)至(36)中任一项所述的信息处理装置,其中
编码单元选择是否对作为参考结构中的根据组中的每个组的层的每个组层的预测残差、参考结构的每个分支的预测残差或每个组层和每个分支两者的预测残差进行编码,并且编码单元对被选择用于编码的组层或分支的预测残差进行编码。
(38)一种信息处理方法,包括:
形成在将三维形状对象表示为点的集合的点云的编码中的属性数据的参考结构;
基于形成的参考结构,针对每个点得出属性数据的预测值并且得出作为属性数据与预测值之间的差的预测残差;以及
对得出的每个点的属性数据的预测残差进行编码。
(39)一种信息处理装置,包括:
解码单元,该解码单元被配置成对通过对预测残差进行编码而获得的编码数据进行解码以生成属性数据的预测残差,该预测残差是每个点的属性数据与属性数据的预测值之间的差,该预测残差在将三维形状对象表示为点的集合的点云的编码中基于属性数据的参考结构而被得出;以及
生成单元,该生成单元被配置成通过使用属性数据的预测残差和属性数据的预测值来生成属性数据,该预测残差通过由解码单元对编码数据进行解码被生成。
(40)一种信息处理方法,包括:
对通过对预测残差进行编码而获得的编码数据进行解码以生成属性数据的预测残差,该预测残差是每个点的属性数据与属性数据的预测值之间的差,该预测残差在将三维形状对象表示为点的集合的点云的编码中基于属性数据的参考结构被得出;以及
通过使用属性数据的预测残差和属性数据的预测值来生成属性数据,预测残差通过对编码数据进行解码被生成。
附图标记列表
100  编码装置
111  几何数据编码单元
112  属性数据编码单元
131  参考结构形成单元
132  堆栈
133  预测模式确定单元
134  编码单元
135  预测点生成单元
151  组分类处理单元
152  排序单元
153  组分层参考结构形成单元
154  层信息生成单元
200  解码装置
211  几何数据解码单元
212  属性数据解码单元
231  存储单元
232  堆栈
233  解码单元
234  几何数据生成单元
235  预测点生成单元
300  转码器
311  几何数据解码单元
312  几何数据编码单元
313  属性数据转码处理单元
400  编码装置
411  参考结构形成单元
412  堆栈
413  预测模式确定单元
414  编码单元
415  预测点生成单元
500  解码装置
511  存储单元
512  堆栈
513  解码单元
514  点的数目据生成单元
515  预测点生成单元
600  转码器
611  解码单元
612  编码单元
900  计算机

Claims (20)

1.一种信息处理装置,包括:
参考结构形成单元,所述参考结构形成单元被配置成形成点云的编码中的几何数据的参考结构,根据将三维形状对象表示为点的集合的点云的点被分类成的组来对所述参考结构进行分层;
预测残差得出单元,所述预测残差得出单元被配置成:基于由所述参考结构形成单元形成的参考结构,针对每个点得出所述几何数据的预测值并且得出作为所述几何数据与所述预测值之间的差的预测残差;以及
编码单元,所述编码单元被配置成对每个点的几何数据的预测残差进行编码,所述预测残差由所述预测残差得出单元得出。
2.根据权利要求1所述的信息处理装置,其中
所述参考结构形成单元包括:
被配置成执行所述点的组分类的组分类处理单元;
被配置成重新布置所述组中的每个组的点的重新布置单元;以及
组分层参考结构形成单元,所述组分层参考结构形成单元被配置成:通过按照由所述重新布置单元重新布置的顺序设置每个点的几何数据的参考目的地来形成根据所述组进行分层的参考结构。
3.根据权利要求2所述的信息处理装置,其中
所述组分类处理单元根据所述点的位置执行所述点的组分类。
4.根据权利要求2所述的信息处理装置,其中
所述组分类处理单元根据所述点云中的点的特征执行所述点的组分类。
5.根据权利要求2所述的信息处理装置,其中
所述参考结构形成单元还包括:
层信息生成单元,所述层信息生成单元被配置成针对每个点生成层信息,所述层信息指示作为所述参考结构中的根据组中的每个组的层的组层,以及
所述编码单元还对由所述层信息生成单元生成的层信息进行编码。
6.根据权利要求5所述的信息处理装置,其中
所述层信息生成单元生成所述层信息,其中属于所述参考结构中的处理目标节点的每个子节点的组层由相对于所述处理目标节点的组层的相对值来指示。
7.根据权利要求5所述的信息处理装置,其中
所述层信息生成单元生成所述层信息,其中所述参考结构中的处理目标节点的组层由相对于所述处理目标节点所属的父节点的组层的相对值来指示。
8.根据权利要求1所述的信息处理装置,其中
所述编码单元以量化步长对所述预测残差进行量化和编码,针对作为所述参考结构中的根据组中的每个组的层的每个组层来设置所述量化步长。
9.根据权利要求8所述的信息处理装置,其中
所述编码单元对指示所述量化步长的信息进行编码。
10.根据权利要求1所述的信息处理装置,其中
所述编码单元在所述预测残差被分类到作为根据所述参考结构中的组中的每个组的层的每个组层中的情况下执行算术编码。
11.根据权利要求1所述的信息处理装置,其中
所述编码单元在没有将所述预测残差分类到作为根据所述参考结构中的组中的每个组的层的每个组层中的情况下执行算术编码。
12.根据权利要求1所述的信息处理装置,其中
所述编码单元选择是否对作为根据所述参考结构中的组中的每个组的层的每个组层的预测残差进行编码,并且所述编码单元对被选择用于编码的组层的预测残差进行编码。
13.根据权利要求1所述的信息处理装置,其中
所述编码单元选择是否对所述参考结构的每个分支的预测残差进行编码,并且所述编码单元对被选择用于编码的分支的预测残差进行编码。
14.根据权利要求1所述的信息处理装置,其中
所述预测残差得出单元基于由所述参考结构形成单元形成的参考结构,针对每个点进一步得出属性数据的预测值并且进一步得出作为所述属性数据与所述预测值之间的差的预测残差,以及
所述编码单元还对每个点的属性数据的预测残差进行编码,该预测残差由所述预测残差得出单元得出。
15.根据权利要求14所述的信息处理装置,其中
所述预测残差得出单元通过将以下项设置为处理目标节点的属性数据的预测值来得出所述属性数据的预测残差:所述参考结构中的处理目标节点所属的父节点的属性数据;所述父节点的属性数据与所述父节点的父节点的属性数据的平均值;所述父节点的属性数据与所述父节点的父节点的属性数据的加权平均值;或者所述处理目标节点的附近节点的属性数据的平均值。
16.根据权利要求14所述的信息处理装置,其中
所述预测残差得出单元应用使所述几何数据的预测残差、所述属性数据的预测残差或所述几何数据和所述属性数据两者的预测残差最小化的得出方法,并且所述预测残差得出单元根据所述得出方法得出所述几何数据的预测残差和所述属性数据的预测残差。
17.根据权利要求1所述的信息处理装置,其中
所述参考结构形成单元还独立于所述几何数据的参考结构形成所述点云的编码中的属性数据的参考结构,
所述预测残差得出单元基于由所述参考结构形成单元形成的属性数据的参考结构,针对每个点进一步得出所述属性数据的预测值并且进一步得出作为所述属性数据与所述预测值之间的差的预测残差,以及
所述编码单元还对每个点的属性数据的预测残差进行编码,该预测残差由所述预测残差得出单元得出。
18.一种信息处理方法,包括:
形成点云的编码中的几何数据的参考结构,根据将三维形状对象表示为点的集合的点云的点被分类成的组来对所述参考结构进行分层;
基于形成的参考结构,针对每个点得出所述几何数据的预测值并得出作为所述几何数据与所述预测值之间的差的预测残差;以及
对得出的每个点的几何数据的预测残差进行编码。
19.一种信息处理装置,包括:
解码单元,所述解码单元被配置成基于层信息对编码数据中与期望的组层对应的编码数据进行解码,所述编码数据通过对作为每个点的几何数据与所述几何数据的预测值之间的差的预测残差进行编码而获得,所述预测残差基于参考结构被得出;所述层信息指示所述组层,所述组层是根据点云的编码中所述几何数据的参考结构中的组中的每个组的层,根据将三维形状对象表示为点的集合的点云的点被分类成的组来对所述参考结构进行分层。
20.一种信息处理方法,包括:
基于层信息对与期望的组层对应的编码数据进行解码,所述编码数据通过对作为每个点的几何数据与所述几何数据的预测值之间的差的预测残差进行编码而获得,所述预测残差基于参考结构得出;所述层信息指示所述组层,所述组层是根据点云的编码中所述几何数据的参考结构中的组中的每个组的层,根据将三维形状对象表示为点的集合的点云的点被分类成的组来对所述参考结构进行分层。
CN202180044873.0A 2020-06-30 2021-06-16 信息处理装置和方法 Pending CN115917602A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2020-112453 2020-06-30
JP2020112453 2020-06-30
PCT/JP2021/022800 WO2022004377A1 (ja) 2020-06-30 2021-06-16 情報処理装置および方法

Publications (1)

Publication Number Publication Date
CN115917602A true CN115917602A (zh) 2023-04-04

Family

ID=79316114

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180044873.0A Pending CN115917602A (zh) 2020-06-30 2021-06-16 信息处理装置和方法

Country Status (5)

Country Link
US (1) US20230316582A1 (zh)
EP (1) EP4174780A4 (zh)
JP (1) JPWO2022004377A1 (zh)
CN (1) CN115917602A (zh)
WO (1) WO2022004377A1 (zh)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5988862A (en) * 1996-04-24 1999-11-23 Cyra Technologies, Inc. Integrated system for quickly and accurately imaging and modeling three dimensional objects
JP7268601B2 (ja) * 2017-10-05 2023-05-08 ソニーグループ株式会社 情報処理装置および方法
JP7330962B2 (ja) * 2018-06-15 2023-08-22 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置

Also Published As

Publication number Publication date
EP4174780A4 (en) 2024-02-07
US20230316582A1 (en) 2023-10-05
WO2022004377A1 (ja) 2022-01-06
EP4174780A1 (en) 2023-05-03
JPWO2022004377A1 (zh) 2022-01-06

Similar Documents

Publication Publication Date Title
US11910026B2 (en) Image processing apparatus and method
US11943457B2 (en) Information processing apparatus and method
JP6114787B2 (ja) 復号装置及び符号化装置
CN115428467B (zh) 点云数据发送设备和方法、点云数据接收设备和方法
US11991348B2 (en) Information processing device and method
US20230023219A1 (en) Information processing device and method
WO2021010200A1 (ja) 情報処理装置および方法
CN112789657A (zh) 图像处理装置和方法
CN115917602A (zh) 信息处理装置和方法
JP2022047546A (ja) 情報処理装置および方法
WO2022145214A1 (ja) 情報処理装置および方法
US20220245863A1 (en) Information processing device and method
WO2021010134A1 (ja) 情報処理装置および方法
CN112789658A (zh) 图像处理装置和方法
US20230177735A1 (en) Information processing apparatus and method
WO2021140928A1 (ja) 情報処理装置および方法
US20230342981A1 (en) Information processing device and method
JP2023507879A (ja) ポイントクラウドデータ送信装置、ポイントクラウドデータ送信方法、ポイントクラウドデータ受信装置及びポイントクラウドデータ受信方法
CN115702568A (zh) 点云数据发送装置、点云数据发送方法、点云数据接收装置和点云数据接收方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination