WO2021002214A1 - 情報処理装置および方法 - Google Patents

情報処理装置および方法 Download PDF

Info

Publication number
WO2021002214A1
WO2021002214A1 PCT/JP2020/023989 JP2020023989W WO2021002214A1 WO 2021002214 A1 WO2021002214 A1 WO 2021002214A1 JP 2020023989 W JP2020023989 W JP 2020023989W WO 2021002214 A1 WO2021002214 A1 WO 2021002214A1
Authority
WO
WIPO (PCT)
Prior art keywords
layering
attribute information
point
layer
unit
Prior art date
Application number
PCT/JP2020/023989
Other languages
English (en)
French (fr)
Inventor
智 隈
央二 中神
幸司 矢野
弘幸 安田
加藤 毅
Original Assignee
ソニー株式会社
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 ソニー株式会社 filed Critical ソニー株式会社
Priority to KR1020217041116A priority Critical patent/KR20220027847A/ko
Priority to CN202080038761.XA priority patent/CN113875248A/zh
Priority to US17/622,488 priority patent/US20220245863A1/en
Priority to JP2021529954A priority patent/JPWO2021002214A1/ja
Priority to EP20835642.8A priority patent/EP3996045A4/en
Publication of WO2021002214A1 publication Critical patent/WO2021002214A1/ja

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/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/40Tree coding, e.g. quadtree, octree
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/005Tree description, e.g. octree, quadtree
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/004Predictors, e.g. intraframe, interframe 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/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/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • 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

Definitions

  • the present disclosure relates to an information processing device and a method, and more particularly to an information processing device and a method capable of suppressing a decrease in coding efficiency.
  • Non-Patent Document 1 a method for encoding 3D data representing a three-dimensional structure such as a point cloud has been considered (see, for example, Non-Patent Document 1).
  • the point cloud data is composed of geometry data (also referred to as position information) and attribute data (also referred to as attribute information) of each point. Therefore, the point cloud is encoded for each of its geometry data and attribute data.
  • Various methods have been proposed as methods for encoding attribute data. For example, it has been proposed to use a technique called Lifting (see, for example, Non-Patent Document 2).
  • a method has been proposed in which attribute data can be decoded in a scalable manner (see, for example, Non-Patent Document 3).
  • each method has its own characteristics, and not all methods are optimal in all cases.
  • a method applying the technique described in Non-Patent Document 3 it is possible to perform scalable decoding of attribute information, which was difficult with the method applying Lifting described in Non-Patent Document 2.
  • the method to which the technique described in Non-Patent Document 3 is applied may have a lower coding efficiency than the method to which Lifting described in Non-Patent Document 2 is applied. ..
  • This disclosure has been made in view of such a situation, and makes it possible to suppress a decrease in coding efficiency.
  • the information processing device of one aspect of the present technology is an information processing device that processes the attribute information for each point of the point cloud that expresses a three-dimensional object as a set of points, and is classified into a prediction point and a reference point. Of the points, the process of deriving the difference value between the predicted value of the attribute information of the predicted point and the attribute information of the predicted point derived by using the attribute information of the reference point is performed on the reference point.
  • a layering unit for layering the attribute information is provided by repeating the process recursively, and the layering unit stratifies the first layer using the first layering method, and the first layer is performed.
  • This is an information processing apparatus that stratifies a second layer different from the above-mentioned layer by using a second layering method different from the first layering method.
  • the information processing method of one aspect of the present technology classifies the attribute information for each point of the point cloud, which expresses a three-dimensional object as a set of points, into a prediction point and a reference point, and the attribute of the reference point.
  • the process of deriving the predicted value of the attribute information of the predicted point using the information and deriving the difference value between the attribute information of the predicted point and the predicted value is recursively repeated with respect to the reference point.
  • This is an information processing method in which a plurality of layering methods are used and different layers are generated by each layering method when the attribute information is layered according to the above.
  • the information processing device on the other side of the present technology is an information processing device that processes the attribute information for each point of the point cloud that expresses a three-dimensional object as a set of points, and is classified into a prediction point and a reference point. Of the points, the process of deriving the difference value between the predicted value of the attribute information of the predicted point and the attribute information of the predicted point derived by using the attribute information of the reference point is performed on the reference point.
  • the reverse layering unit is provided to perform reverse layering on the attribute information layered by repeating recursively, and the reverse layering unit uses the first layering method for the first layer.
  • This is an information processing apparatus that performs reverse layering and performs the reverse layering of a second layer different from the first layer using a second layering method different from the first layering method.
  • the information processing method of the other aspect of the present technology classifies the attribute information for each point of the point cloud, which expresses a three-dimensional object as a set of points, into a prediction point and a reference point, and the above-mentioned reference point.
  • the process of deriving the predicted value of the attribute information of the predicted point using the attribute information and deriving the difference value between the attribute information of the predicted point and the predicted value is recursively repeated with respect to the reference point.
  • This is an information processing method in which a plurality of layering methods are used to perform the reverse layering on different layers by each layering method when the attribute information is layered.
  • the information processing device on the other aspect of the present technology is an information processing device that processes the attribute information for each point of the point cloud that expresses a three-dimensional object as a set of points, and is used as a prediction point and a reference point.
  • the process of deriving the difference value between the predicted value of the attribute information of the predicted point and the attribute information of the predicted point derived by using the attribute information of the reference point is performed by the reference point.
  • a layering unit for layering the attribute information is provided by recursively repeating with respect to the above, and the layering unit derives the predicted values of the predicted points in a plurality of layers in the same layer. It is an information processing apparatus performed by referring to the reference point.
  • the information processing method on the side surface of the present technology classifies the attribute information for each point of the point cloud, which expresses a three-dimensional shaped object as a set of points, into a prediction point and a reference point, and the above-mentioned reference point.
  • the process of deriving the predicted value of the attribute information of the predicted point using the attribute information and deriving the difference value between the attribute information of the predicted point and the predicted value is recursively repeated with respect to the reference point.
  • This is an information processing method in which the predicted values of the predicted points in a plurality of layers are derived by referring to the reference points in the same layer when the attribute information is layered.
  • the information processing device on the other aspect of the present technology is an information processing device that processes the attribute information for each point of the point cloud that expresses a three-dimensional object as a set of points, and is used as a prediction point and a reference point. Among the classified points, the process of deriving the difference value between the predicted value of the attribute information of the predicted point and the attribute information of the predicted point derived by using the attribute information of the reference point is performed by the reference point. It is provided with a reverse layering unit that reversely layers the attribute information that has been layered by recursively repeating the above, and the reverse layering unit has a plurality of layers at the time of the reverse layering.
  • the predicted value of the attribute information of the predicted point is derived with reference to the attribute information of the reference point in the same hierarchy, and the derived predicted value is added to the difference value to obtain the predicted point.
  • This is an information processing device that generates the above-mentioned attribute information.
  • the information processing method of yet another aspect of the present technology classifies the attribute information for each point of the point cloud, which expresses a three-dimensional shaped object as a set of points, into a prediction point and a reference point, and classifies the reference point.
  • the process of deriving the predicted value of the attribute information of the predicted point using the attribute information and deriving the difference value between the attribute information of the predicted point and the predicted value is performed recursively with respect to the reference point.
  • the predicted values of the attribute information of the prediction points in a plurality of layers are used as the attribute information of the reference points in the same layer.
  • the attribute information for each point of the point cloud that expresses a three-dimensional object as a set of points is classified into a prediction point and a reference point, and the reference point is classified. Attribute information by recursively repeating the process of deriving the predicted value of the attribute information of the predicted point using the attribute information of and deriving the difference value between the attribute information of the predicted point and the predicted value with respect to the reference point.
  • Attribute information by recursively repeating the process of deriving the predicted value of the attribute information of the predicted point using the attribute information of and deriving the difference value between the attribute information of the predicted point and the predicted value with respect to the reference point.
  • a plurality of layering methods are used, and different layers are generated by each layering method.
  • the attribute information for each point of the point cloud that expresses a three-dimensional object as a set of points is classified into a prediction point and a reference point, and the reference is made.
  • the process of deriving the predicted value of the attribute information of the predicted point using the attribute information of the point and deriving the difference value between the attribute information of the predicted point and the predicted value with respect to the reference point is reversing the layered attribute information.
  • a plurality of layering methods are used, and each layering method performs reverse layering for different layers.
  • the attribute information for each point of the point cloud that expresses a three-dimensional object as a set of points is classified into a prediction point and a reference point, and the property information is classified.
  • the process of deriving the predicted value of the attribute information of the predicted point using the attribute information of the reference point and deriving the difference value between the attribute information of the predicted point and the predicted value is recursively repeated for the reference point.
  • the derivation of the predicted value of the predicted points of a plurality of layers is performed with reference to the reference points of the same layer.
  • the attribute information for each point of the point cloud that expresses a three-dimensional object as a set of points is classified into a prediction point and a reference point, and the property information thereof is classified.
  • the process of deriving the predicted value of the attribute information of the predicted point using the attribute information of the reference point and deriving the difference value between the attribute information of the predicted point and the predicted value is recursively repeated for the reference point.
  • the attribute information layered by is reverse-layered, the predicted values of the attribute information of the predicted points of the plurality of layers are derived by referring to the attribute information of the reference points of the same layer. By adding the derived predicted value to the difference value, the attribute information of the predicted point is generated.
  • Non-Patent Document 1 (above)
  • Non-Patent Document 2 (above)
  • Non-Patent Document 3 (above)
  • Non-Patent Document 4 TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU (International Telecommunication Union), "Advanced video coding for generic audiovisual services", H.264, 04/2017
  • Non-Patent Document 5 TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU (International Telecommunication Union), "High efficiency video coding", H.265, 12/2016
  • Non-Patent Document 6 Jianle Chen, Maria Alshina, Gary J.
  • non-patent documents are also the basis for determining the support requirements.
  • Quad-Tree Block Structure described in Non-Patent Document 5 and the QTBT (Quad Tree Plus Binary Tree) Block Structure described in Non-Patent Document 6 are not directly described in the embodiment. It is within the scope of disclosure of this technology and shall meet the support requirements of the scope of claims.
  • technical terms such as Parsing, Syntax, and Semantics are also within the scope of the present technology even if there is no direct description in the embodiment, and claims are made. Shall meet the support requirements in the range of.
  • ⁇ Point cloud> Conventionally, a point cloud that represents a three-dimensional structure based on the position information and attribute information of a point cloud, and a mesh that is composed of vertices, edges, and faces and defines a three-dimensional shape using polygonal representation. ) Etc. existed.
  • a three-dimensional structure (three-dimensional object) is expressed as a set of a large number of points (point cloud). That is, the point cloud data (also referred to as point cloud data) is composed of geometry data (also referred to as position information) and attribute data (also referred to as attribute information) of each point in this point cloud. Attribute data can contain arbitrary information. For example, color information, reflectance information, normal information, and the like may be included in the attribute data. Therefore, the data structure is relatively simple, and an arbitrary three-dimensional structure can be expressed with sufficient accuracy by using a sufficiently large number of points.
  • a voxel is a three-dimensional area for quantizing geometry data (position information).
  • the three-dimensional area containing the point cloud is divided into small three-dimensional areas called voxels, and each voxel indicates whether or not the points are included. By doing so, the position of each point is quantized in voxel units. Therefore, by converting the point cloud data into such voxel data (also referred to as voxel data), the increase in the amount of information is suppressed (typically, the amount of information is reduced). Can be done.
  • Octree is a tree-structured version of voxel data.
  • the value of each bit of the lowest node of this Octree indicates the presence or absence of a point for each voxel. For example, a value "1" indicates a voxel containing points, and a value "0" indicates a voxel containing no points.
  • one node corresponds to eight voxels. That is, each node of the Octtree is composed of 8 bits of data, and the 8 bits indicate the presence or absence of points of 8 voxels.
  • the upper node of the Octtree indicates the presence or absence of a point in the area where the eight voxels corresponding to the lower node belonging to the node are combined into one. That is, the upper node is generated by collecting the voxel information of the lower node. If a node having a value of "0", that is, all eight corresponding voxels do not contain points, that node is deleted.
  • Octree can indicate the presence or absence of voxel points at each resolution.
  • the position information can be decoded from the highest resolution (top layer) to a desired layer (resolution), and the point cloud data of that resolution can be restored. That is, it is possible to easily decode at an arbitrary resolution without decoding unnecessary layer (resolution) information. In other words, voxel (resolution) scalability can be achieved.
  • the voxel in the area where the point does not exist can be reduced in resolution, so that further increase in the amount of information can be suppressed (typically, the amount of information). Can be reduced).
  • attribute data attribute data
  • RAHT Restriction Adaptive Hierarchical Transform
  • Lifting a transformation called Lifting as described in Non-Patent Document 2
  • the attribute data of each point is encoded as a difference value from the predicted value derived using the attribute data of other points.
  • each point is hierarchized, and the difference value is derived according to the hierarchical structure.
  • each point is classified into a predicted point and a reference point, and the predicted value of the attribute data of the predicted point is derived using the attribute data of the reference point, and the attribute data of the predicted point and the attribute data of the predicted point.
  • the difference value from the predicted value is derived.
  • this hierarchy is performed based on the distance between points using geometry data. That is, a point located within a predetermined distance from the reference point is set as a prediction point from which the prediction value is derived by referring to the reference point. For example, suppose that point P5 is selected as a reference point in FIG. In that case, the prediction point is searched for in a circular region of radius R centered on that point P5. In this case, since the point P9 is located in the region, it is set as a prediction point (a prediction point with the point P5 as a reference point) from which the prediction value is derived with reference to the point P5.
  • the difference values of P0, point P2, point P4, and point P5 are derived as difference values in different layers.
  • this hierarchical structure is generated independently of the geometric data hierarchical structure (for example, Octree), and basically does not correspond to the geometric data hierarchical structure.
  • it was necessary to associate the geometry data with the attribute data and for that purpose, it was necessary to decode the geometry data and the attribute data to the highest resolution (that is, the lowest layer).
  • the layering described in Non-Patent Document 3 corresponds to the scalable decoding of the resolution.
  • the attribute data is layered so as to match the hierarchical structure of the Octtree of the geometry data. That is, when a point exists in the area corresponding to the voxel of the geometry data (when the attribute data corresponding to the point exists), the point also exists in the voxel one layer higher than the voxel (corresponding to the point). Select the reference point and the prediction point so that the attribute data to be used exists. That is, the attribute information is hierarchized according to the Octtree hierarchical structure of the geometry data.
  • Voxels 10-1 to voxels 10-4 are formed one layer below the voxels 10 in FIG. 3, and one layer below the voxels 10-4.
  • Voxels 10-4-1 to voxels 10-4-4 are formed.
  • Voxel 10-1 has point 11-1 of attribute data (indicating the attribute data corresponding to point 11-1; the same applies hereinafter).
  • the voxel data 10-2 has the attribute data point 11-2
  • the voxel data 10-3 has the attribute data point 11-3.
  • Voxels 10-4-1 to voxels 10-4-4 have points 11-4-1 to 11-4-4 of attribute data.
  • point 11-4-1 is referred to so that one point (attribute data) remains in voxels 10-4 one level higher. It is set as a point, and points 11-4-2 to 11-4-4 are set as prediction points.
  • point 11-1 is set as a reference point so that one point remains in voxel 10 one level higher, and points 11-2 and 11-3.
  • points 11-4-1 are set as prediction points.
  • the attribute information for each point in the point cloud that expresses a three-dimensional object as a set of points is classified into prediction points and reference points, and the attribute information of the prediction points is predicted using the attribute information of the reference points.
  • Multiple layering methods for layering attribute information by recursively repeating the process of deriving the value and deriving the difference value between the attribute information of the predicted point and the predicted value with respect to the reference point. Is used to generate different layers from each other by each layering method.
  • the attribute information for each point of the point cloud that expresses a three-dimensional object as a set of points is classified into a prediction point and a reference point, and prediction is performed using the attribute information of the reference point.
  • the attribute information is hierarchized.
  • a layering unit to be performed may be provided, and the layering unit may perform layering using a plurality of layering methods and generate different layers from each other by each layering method.
  • the attribute information of the reference point among the points classified into the prediction point and the reference point.
  • the attribute information is hierarchized.
  • the layering unit is provided with a layering unit for performing the above, and the layering unit performs layering of the first layer using the first layering method, and the second layer different from the first layer is layered as the first layer.
  • the layering may be performed by using a second layering method different from the method.
  • the number of times the layering method is switched is arbitrary, and may be once or multiple times. Further, the number of applied layering methods may be any number as long as it is plural, for example, 3 or more. Moreover, the same layering method may be applied multiple times. For example, in the intermediate layer, the layering method A ⁇ the layering method B ⁇ the layering method A may be switched.
  • a method corresponding to scalable decoding and a scalable method are available. You may switch to a method that does not support decoding. In other words, a part of the hierarchical structure of the attribute data may be hierarchized by a method corresponding to scalable decoding.
  • the hierarchical method described in Non-Patent Document 3 (method corresponding to scalable decoding) and Lifting (method not compatible with scalable decoding) described in Non-Patent Document 2 are applied in the intermediate layer of the hierarchical structure. You may switch. That is, the hierarchical method described in Non-Patent Document 3 may be applied only to a part of the hierarchical structure of the attribute data.
  • a layer higher than a predetermined layer is layered by a method that does not support scalable decoding.
  • the layer below the predetermined layer may be layered by a method corresponding to scalable decoding.
  • a layer higher than a predetermined layer including the first layer is generated, and by the second layering method that supports scalable decoding, the layer is generated.
  • a layer lower than a predetermined layer including the second layer may be generated.
  • Lifting (described in Non-Patent Document 2) that does not support scalable decoding. Method) and Lifting (method described in Non-Patent Document 3) corresponding to scalable decoding may be switched.
  • a layer above the predetermined layer is layered by Lifting described in Non-Patent Document 2
  • the layer below the predetermined layer is layered by the layering method described in Non-Patent Document 3 (corresponding to scalable decoding).
  • Hierarchy may be performed by Lifting).
  • the coding efficiency tends to decrease if a method corresponding to scalable decoding is applied. Further, since the resolution is significantly reduced in the layer near the uppermost layer, it is unlikely that decoding is performed in such a layer. That is, the higher the layer, the less likely it is that scalable decoding will occur.
  • the attribute data 32A is the data layered by Lifting that does not correspond to the scalable. That is, in this case, the attribute data 32 is layered by Lifting in which the upper layer (L1 stage) is not compatible with scalable decoding, and the lower layer (L2 stage) is layered by Lifting corresponding to scalable decoding. ing. Therefore, it is not possible to perform scalable decoding for the 0th stage to the (L1-1) stage from the top (both the geometry data 31 and the attribute data 32 need to be decoded up to the L1 stage). However, since such an upper layer has a low resolution, it is unlikely that scalable decoding will occur, and as described above, the coding efficiency is reduced while suppressing the substantial limitation on the scalable decoding. Can be suppressed.
  • the hierarchy for switching the hierarchy method is arbitrary.
  • the layering method for switching may be any method, and is not limited to the above-mentioned example (switching between a method corresponding to scalable decoding and a method not supporting scalable decoding). For example, as described in "Method 1-2" in the fifth row from the top of the table shown in FIG. 5, a layering method using distance sampling such as Lifting described in Non-Patent Document 2 and each.
  • the points (attribute data corresponding to each point) may be arranged in Morton order, and the method of layering the points by sampling the points at equal intervals may be switched.
  • a layering method using distance sampling is applied to layers above a predetermined layer
  • a layering method using equidistant sampling in Morton order is applied to layers below the predetermined layer. You may try to do it. By doing so, it is possible to suppress a decrease in coding efficiency as in the case of the above example.
  • the processing order (generation order) of each layer is arbitrary.
  • the layers may be layered in order from the lowest layer.
  • one layer is generated one by one, and after all layers are generated, the layers are reversed.
  • the hierarchy numbers are assigned in the reverse order of generation. By doing so, each layer can be generated in the direction from the lowest layer to the uppermost layer.
  • each point is classified as a reference point or a prediction point in each layer, and the reference point is processed again as a point in a higher layer.
  • the hierarchy builds a reference relationship between the hierarchies.
  • Control information For example, as described in "Method 1-4" in the seventh row from the top of the table shown in FIG. 5, the control information related to the layering of attribute information is signaled (transmitted from the coding side to the decoding side). It may be.
  • the transmission method of control information is arbitrary. For example, it may be defined as a syntax or the like, and may be included in the coded data (bit stream) of the point cloud data (for example, described in a header or the like) for transmission. Further, it may be transmitted as data associated with the coded data of the point cloud data, which is different from the coded data of the point cloud data.
  • control information indicating whether the layering method that supports scalable decoding is applicable is decoded. It may be transmitted to the side. In that case, this control information may express how the layering method corresponding to the scalable decoding is applicable.
  • scalable_enable_flag may be transmitted as flag information.
  • the scalable_enable_flag is flag information indicating whether or not a hierarchical method corresponding to scalable decoding is applicable. When this value is true (for example, "1"), it indicates that a layering method corresponding to scalable decoding is applicable, and when this value is false (for example, "0"), it corresponds to scalable decoding. Indicates that the layering method is not applicable. For example, when this scalable_enable_flag is omitted, the value of this flag information may be equivalent to the case where it is false (for example, "0").
  • the data unit for transmitting this control information is arbitrary.
  • the scalable_enable_flag may be transmitted for each sequence of point cloud data.
  • the scalable_enable_flag may be transmitted for each attribute data.
  • a layering method corresponding to scalable decoding can be applied to each attribute data by transmitting a scalable_enable_flag for each attribute data.
  • the scalable_enable_flag may be transmitted for each data unit other than these examples.
  • the layering method corresponding to scalable decoding is not applied to the attribute data in which scalable_enable_flag is false, so the processing related to scalable decoding is unnecessary. Therefore, the decoding device can omit all the processing related to the scalable decoding based on the fact that the scalable_enable_flag is false. For example, it is possible to omit the reference of the control information indicating the range of the hierarchy to which the layering method corresponding to the scalable decoding described later is applied. Further, it is possible to omit the determination as to whether or not to use the layering method corresponding to the scalable decoding in the case of reverse layering. In this way, it is possible to suppress an increase in the load of the decoding process.
  • control information indicating the range of the hierarchy to which the layering method corresponding to the scalable decoding is applied may be transmitted to the decoding side.
  • this control information may represent the range of the hierarchy to which the hierarchical method corresponding to the scalable decoding is applied.
  • the range may be shown, the hierarchy to which the hierarchy method can be switched (the hierarchy that becomes the boundary of the range) may be shown, or the hierarchy that does not apply the hierarchy method corresponding to the scalable decoding.
  • the range of may be indicated.
  • the upper limit and the lower limit of the range may be indicated, and the size (number of layers) and the reference position (for example) of the range may be indicated. It may be indicated by a hierarchy number of a start position, an intermediate position, an end position, etc. (the highest hierarchy is set to 0, and the identification number increases by 1 each time the player descends one hierarchy). Further, when the lower limit is equal to the lowest layer or the upper limit is equal to the uppermost layer, the range may be indicated by the number of layers from the lower limit (lowermost layer) or the upper limit (uppermost layer).
  • the syntax element scalable_enable_num_of_lod may be transmitted.
  • the decoding side can easily and accurately grasp which layer the layering method corresponding to scalable decoding is applied to based on this control information. Therefore, the coded data to which the plurality of layering methods are applied can be correctly decoded. Therefore, it is possible to suppress a decrease in coding efficiency.
  • the control information is not limited to the above example, and any information may be transmitted. Further, the number of control information to be transmitted is arbitrary, and a plurality of control information may be transmitted. For example, the above-mentioned scalable_enable_flag and scalable_enable_num_of_lod may be transmitted. The scalable_enable_num_of_lod may be transmitted only if scalable_enable_flag is true.
  • scalable_enable_flag when scalable_enable_flag is true, scalable_enable_num_of_lod is referenced, and the hierarchy to which the hierarchical method corresponding to scalable decoding is applied is specified.
  • the present technology can also be applied to the decoding side.
  • the layering method of the attribute information is switched in the intermediate layer (that is, the reverse layering method is switched) in the reverse hierarchy. It may be.
  • the attribute information for each point in the point cloud that expresses a three-dimensional object as a set of points is classified into prediction points and reference points, and the attribute information of the prediction points is predicted using the attribute information of the reference points.
  • the process of deriving the value and deriving the difference value between the attribute information of the predicted point and the predicted value is recursively repeated for the reference point to reverse the layered attribute information.
  • Multiple layering methods are used, and each layering method is used to reverse layer different layers.
  • attribute information for each point in a point cloud that expresses a three-dimensional object as a set of points is classified into prediction points and reference points, and the attribute information of the reference points is used to classify the prediction points.
  • a reverse layering unit that performs reverse layering may be provided, and the reverse layering unit may use a plurality of layering methods to perform reverse layering on different layers by each layering method. ..
  • the information processing device that processes the attribute information for each point of the point cloud that expresses a three-dimensional shaped object as a set of points, the attribute information of the reference point among the points classified into the prediction point and the reference point.
  • the attribute information is layered.
  • it is provided with a reverse layering unit that performs reverse layering, and the reverse layering unit performs reverse layering of the first layer using the first layering method, and is different from the first layer.
  • the hierarchy of the above may be reverse-layered by using a second layering method different from the first layering method.
  • the number of times the layering method is switched is arbitrary, and may be once or multiple times. Further, the number of applied layering methods may be any number as long as it is plural, for example, 3 or more. Moreover, the same layering method may be applied multiple times. For example, in the intermediate layer, the layering method A ⁇ the layering method B ⁇ the layering method A may be switched.
  • Non-Patent Document 3 method corresponding to scalable decoding
  • Lifting method not compatible with scalable decoding
  • Non-Patent Document 2 are applied in the intermediate layer of the hierarchical structure. You may switch. That is, the layering method described in Non-Patent Document 3 may be applied only to the reverse layering of a part of the layered structure of the attribute data.
  • the layer higher than the predetermined layer is reversed by a method that does not support scalable decoding. It may be layered, and the layers below the predetermined layer may be reverse-layered by a method corresponding to scalable decoding.
  • a second layering method that does not support scalable decoding is used to reverse layer a layer higher than a predetermined layer including the first layer, and a second layering method that supports scalable decoding is performed.
  • the layering method may be used to reverse layer the layers below the predetermined layer including the second layer.
  • a layer above the predetermined layer is reverse-layered by Lifting described in Non-Patent Document 2
  • the layer below the predetermined layer is layered according to the layering method described in Non-Patent Document 3 (corresponding to scalable decoding).
  • the reverse layering may be performed by Lifting).
  • the hierarchy for switching the hierarchy method is arbitrary.
  • the layering method for switching may be any method, and is not limited to the above-mentioned example (switching between a method corresponding to scalable decoding and a method not supporting scalable decoding).
  • switching between a method corresponding to scalable decoding and a method not supporting scalable decoding For example, as described in "Method 2-2" in the 12th row from the top of the table shown in FIG. 5, a layering method using distance sampling such as Lifting described in Non-Patent Document 2 and each.
  • the points (attribute data corresponding to each point) may be arranged in Morton order, and the method of layering the points by sampling the points at equal intervals may be switched.
  • a layering method using distance sampling is applied to the reverse layering of layers higher than a predetermined layer, and evenly spaced sampling in Morton order is applied to the reverse layering of layers below the predetermined layer.
  • the layering method using the above may be applied. By doing so, it is possible to suppress a decrease in coding efficiency as in the case of the above example.
  • control information is arbitrary. For example, it may be the above-mentioned scalable_enable_flag. Further, for example, it may be the above-mentioned scalable_enable_num_of_lod. It may also be both of them. For example, if scalable_enable_flag indicates that a layering method corresponding to scalable decoding is applicable, the attribute data may be specified as the layer for switching the dehierarchy method based on scalable_enable_num_of_lod.
  • the layering method can be switched as in the case of coding. Therefore, the coded data to which the plurality of layering methods are applied can be correctly decoded. Therefore, it is possible to suppress a decrease in coding efficiency.
  • Reference relationship control> ⁇ Hierarchical structure of attribute data>
  • voxels 50-1 to voxels 50-4 are formed in the next lower hierarchy as shown in B of FIG.
  • nodes are generated in lower layers as well, corresponding to the only point 51 existing in voxel 50, as shown in A in FIG.
  • a node at point 51 is formed at voxels 50-4.
  • attribute data if only point 51 is assigned to the voxel 50 hierarchy, nodes cannot be assigned to voxels below it.
  • FIG. 8A shows an example of a hierarchical structure of attribute data.
  • the configuration is as shown by the arrow in B of FIG.
  • the optimum value for the number of layers and the width of the layers differs depending on the data.
  • the configuration in which the number of points monotonically increases from the upper layer to the lower layer has the highest coding efficiency.
  • a configuration in which the number of points is smaller in the lower layer than in the upper layer may reduce the coding efficiency.
  • the attribute information for each point in the point cloud that expresses a three-dimensional object as a set of points is classified into prediction points and reference points, and the attribute information of the prediction points is predicted using the attribute information of the reference points. Prediction of multiple layers when layering attribute information by recursively repeating the process of deriving the value and deriving the difference value between the attribute information of the predicted point and the predicted value with respect to the reference point. The predicted value of the point is derived by referring to the reference points in the same hierarchy.
  • attribute information for each point in a point cloud that expresses a three-dimensional object as a set of points is classified into prediction points and reference points, and the attribute information of the reference points is used to classify the prediction points.
  • the information processing unit may be provided, and the layered unit may derive the predicted values of the prediction points of a plurality of layers by referring to the reference points of the same layer.
  • the attribute information of the reference point among the points classified into the prediction point and the reference point.
  • the attribute information is hierarchized.
  • the layered unit may be provided, and the layered unit may derive the predicted values of the predicted points of the plurality of layers by referring to the reference points of the same layer.
  • the node (point) of the layer to be processed is one level higher (point).
  • Control information For example, as described in "Method 3-2" in the third row from the top of the table shown in FIG. 9, control information related to the construction of the reference relationship is signaled (transmitted from the coding side to the decoding side). You may.
  • the transmission method of control information is arbitrary. For example, it may be defined as syntax or the like, and may be included in the coded data (bit stream) of the point cloud data (for example, described in a header or the like) for transmission. Further, it may be transmitted as data associated with the coded data of the point cloud data, which is different from the coded data of the point cloud data.
  • control information indicating whether a reference relationship has been established by merging with another layer may be transmitted to the decoding side. In that case, this control information may be merged with other hierarchies to express how the reference relationship is constructed.
  • merge_lower_lod_flag may be transmitted as flag information.
  • merge_lower_lod_flag is flag information indicating whether or not to merge with the next higher hierarchy to build a reference relationship. If this value is true (eg "1"), the point (node) in that hierarchy indicates that it will merge with the next higher hierarchy to build a reference relationship, and this value is false (eg "0"). In the case of, it indicates that the reference relationship is constructed without merging with the next higher hierarchy (as usual, the point of the next higher hierarchy is referred to). For example, when this merge_lower_lod_flag is omitted, it may be equivalent to the case where the value of this flag information is false (for example, "0").
  • control information (merge_lower_lod_flag) is set for each level (LoD (Level of Detail)).
  • the attribute information for each point in the point cloud that expresses a three-dimensional object as a set of points is classified into prediction points and reference points, and the attribute information of the prediction points is predicted using the attribute information of the reference points.
  • the process of deriving the value and deriving the difference value between the attribute information of the predicted point and the predicted value is recursively repeated for the reference point to reverse the layered attribute information.
  • the predicted values of the attribute information of the predicted points of a plurality of layers are derived by referring to the attribute information of the reference points of the same hierarchy, and the derived predicted values are added to the difference value to obtain the predicted points. To generate the attribute information of.
  • attribute information for each point in a point cloud that expresses a three-dimensional object as a set of points is classified into prediction points and reference points, and the attribute information of the reference points is used to classify the prediction points.
  • a reverse layering unit that performs reverse layering is provided, and the reverse layering unit uses the predicted values of the attribute information of the prediction points of a plurality of layers and the attribute information of the reference points of the same layer as each other at the time of the reverse layering.
  • the attribute information of the prediction point may be generated by deriving with reference to and adding the derived predicted value to the difference value.
  • the attribute information of the reference point among the points classified into the prediction point and the reference point.
  • the reverse layering unit sets the predicted values of the attribute information of the prediction points of a plurality of layers to the reference points of the same layer at the time of the reverse layering.
  • the predicted point attribute information may be generated by deriving with reference to the attribute information of and adding the derived predicted value to the difference value.
  • the reference destination of the node (point) of the processing target hierarchy is searched in the hierarchy two levels higher in the reverse hierarchy. May be good. By doing so, it is possible to correctly reverse-layer the attribute data in which the reference relationship is constructed such that the number of points increases monotonically from the upper layer to the lower layer as shown in FIG. .. Therefore, the reduction in coding efficiency can be suppressed.
  • merge_lower_lod_flag is control information indicating whether to refer to the same layer as other layers at the time of reverse layering. That is, in the case of the reverse hierarchy, the reference destination hierarchy can be specified based on this merge_lower_lod_flag. For example, based on this merge_lower_lod_flag, the hierarchy to be referenced in the hierarchy to be processed is specified, the attribute data of the reference point of the specified hierarchy is referred to, and the predicted value of the attribute data of the prediction point of the prediction point of the processing target hierarchy is obtained. It may be derived.
  • the reverse layering method may be set without using the above control information.
  • the number of points is compared between the layer to be processed and the layer one level higher than the layer to be processed, and the reference of the layer two levels higher than the layer one level higher than the layer one level higher.
  • the predicted value of the attribute information of the predicted point may be derived by referring to the attribute information of the point. That is, the decoding side may perform the same determination processing as the coding side, build a reference relationship based on the determination result, and derive the predicted value.
  • the reverse hierarchy can be performed by the same method as in the case of coding. Therefore, it is possible to suppress a decrease in coding efficiency. Since the transmission of control information can be omitted, the reduction of coding efficiency can be further suppressed.
  • FIG. 11 is a block diagram showing an example of a configuration of a coding device, which is an aspect of an information processing device to which the present technology is applied.
  • the coding device 100 shown in FIG. 11 is a device that encodes a point cloud (3D data).
  • the coding device 100 includes ⁇ 1.
  • the point cloud is encoded by applying the above-mentioned technology in Switching between layering / de-layering method>.
  • FIG. 11 shows the main things such as the processing unit and the data flow, and not all of them are shown in FIG. That is, in the coding apparatus 100, there may be a processing unit that is not shown as a block in FIG. 11, or there may be a processing or data flow that is not shown as an arrow or the like in FIG.
  • the coding device 100 includes a position information coding unit 101, a position information decoding unit 102, a point cloud generation unit 103, an attribute information coding unit 104, and a bitstream generation unit 105.
  • the position information coding unit 101 encodes the geometry data (position information) of the point cloud (3D data) input to the coding device 100.
  • This coding method is arbitrary as long as it supports scalable decoding.
  • the position information coding unit 101 stratifies the geometry data to generate an Octree, and encodes the Octree. Further, for example, processing such as filtering or quantization for noise suppression (denoise) may be performed.
  • the position information coding unit 101 supplies the coded data of the generated geometry data to the position information decoding unit 102 and the bit stream generation unit 105.
  • the position information decoding unit 102 acquires the coded data of the geometry data supplied from the position information coding unit 101, and decodes the coded data.
  • This decoding method is arbitrary as long as it corresponds to the coding by the position information coding unit 101. For example, processing such as filtering for denoise and dequantization may be performed.
  • the position information decoding unit 102 supplies the generated geometry data (decoding result) to the point cloud generation unit 103.
  • the point cloud generation unit 103 acquires the attribute data (attribute information) of the point cloud input to the coding device 100 and the geometry data (decoding result) supplied from the position information decoding unit 102.
  • the point cloud generation unit 103 performs a process (recolor process) of matching the attribute data with the geometry data (decoding result).
  • the point cloud generation unit 103 supplies the attribute data corresponding to the geometry data (decoding result) to the attribute information coding unit 104.
  • the attribute information coding unit 104 acquires the geometry data (decoding result) and the attribute data supplied from the point cloud generation unit 103.
  • the attribute information coding unit 104 encodes the attribute data using the geometry data (decoding result) and generates the coded data of the attribute data.
  • the attribute information coding unit 104 has ⁇ 1.
  • the above-mentioned technique is applied in "Switching between layering / de-layering method>" to encode attribute data.
  • the attribute information coding unit 104 switches the layering method of the attribute data in the intermediate layer in the layering of the attribute data.
  • the attribute information coding unit 104 supplies the coded data of the generated attribute data to the bitstream generation unit 105.
  • the bitstream generation unit 105 acquires the coded data of the position information supplied from the position information coding unit 101. Further, the bitstream generation unit 105 acquires the coded data of the attribute information supplied from the attribute information coding unit 104. The bitstream generation unit 105 generates a bitstream including these coded data. The bitstream generation unit 105 outputs the generated bitstream to the outside of the encoding device 100.
  • the coding device 100 can apply a plurality of layering methods to form a layered structure of attribute data. As a result, it is possible to layer more diverse attribute data by a more suitable method, and it is possible to suppress a decrease in coding efficiency.
  • each of these processing units position information coding unit 101 to bitstream generation unit 105) of the coding device 100 has an arbitrary configuration.
  • each processing unit may be configured by a logic circuit that realizes the above-mentioned processing.
  • each processing unit has, for example, a CPU (Central Processing Unit), a ROM (Read Only Memory), a RAM (Random Access Memory), and the like, and the above-mentioned processing is realized by executing a program using them. You may do so.
  • each processing unit may have both configurations, and a part of the above-mentioned processing may be realized by a logic circuit, and the other may be realized by executing a program.
  • the configurations of the respective processing units may be independent of each other. For example, some processing units realize a part of the above-mentioned processing by a logic circuit, and some other processing units execute a program.
  • the above-mentioned processing may be realized by the other processing unit by both the logic circuit and the execution of the program.
  • FIG. 12 is a block diagram showing a main configuration example of the attribute information coding unit 104 (FIG. 11). Note that FIG. 12 shows the main things such as the processing unit and the data flow, and not all of them are shown in FIG. That is, in the attribute information coding unit 104, there may be a processing unit that is not shown as a block in FIG. 12, or there may be a processing or data flow that is not shown as an arrow or the like in FIG.
  • the attribute information coding unit 104 includes a layering processing unit 111, a quantization unit 112, and a coding unit 113.
  • the layering processing unit 111 performs processing related to layering of attribute data. For example, the layering processing unit 111 acquires attribute data and geometry data (decoding result) supplied from the point cloud generation unit 103. The layering processing unit 111 uses the geometry data to layer the attribute data. At that time, the layering processing unit 111 has ⁇ 1. Hierarchization is performed by applying the above-mentioned technology in Switching between layering / reverse layering method>. For example, the layering processing unit 111 switches the layering method of the attribute data in the intermediate layer in the layering of the attribute data. In other words, the layering processing unit 111 stratifies the attribute data by using a plurality of layering methods, and generates layers different from each other by each layering method. The layered processing unit 111 supplies the layered attribute data (difference value) to the quantization unit 112.
  • the layering processing unit 111 also generates control information related to layering.
  • the layering processing unit 111 also supplies the generated control information to the quantization unit 112 together with the attribute data (difference value).
  • the quantization unit 112 acquires attribute data (difference value) and control information supplied from the layering processing unit 111.
  • the quantization unit 112 quantizes the attribute data (difference value). This quantization method is arbitrary.
  • the quantized unit 112 supplies the quantized attribute data (difference value) and control information to the coding unit 113.
  • the coding unit 113 acquires the quantized attribute data (difference value) and control information supplied from the quantizing unit 112.
  • the coding unit 113 encodes the quantized attribute data (difference value) and generates coded data of the attribute data.
  • This coding method is arbitrary. Further, the coding unit 113 includes control information in the generated coded data. In other words, the coded data of the attribute data including the control information is generated.
  • the coding unit 113 supplies the generated coded data to the bitstream generation unit 105.
  • the attribute information coding unit 104 can apply a plurality of layering methods to form a layered structure of attribute data. As a result, it is possible to layer more diverse attribute data by a more suitable method, and it is possible to suppress a decrease in coding efficiency.
  • each processing unit may be configured by a logic circuit that realizes the above-mentioned processing.
  • each processing unit may have, for example, a CPU, ROM, RAM, etc., and execute a program using them to realize the above-mentioned processing.
  • each processing unit may have both configurations, and a part of the above-mentioned processing may be realized by a logic circuit, and the other may be realized by executing a program.
  • the configurations of the respective processing units may be independent of each other. For example, some processing units realize a part of the above-mentioned processing by a logic circuit, and some other processing units execute a program.
  • the above-mentioned processing may be realized by the other processing unit by both the logic circuit and the execution of the program.
  • FIG. 13 is a block diagram showing a main configuration example of the layered processing unit 111 (FIG. 12). Note that FIG. 13 shows the main things such as the processing unit and the data flow, and not all of them are shown in FIG. That is, in the layered processing unit 111, there may be a processing unit that is not shown as a block in FIG. 13, or there may be a processing or data flow that is not shown as an arrow or the like in FIG.
  • the layering processing unit 111 will be described as switching between a layering method corresponding to scalable decoding and a layering method not supporting scalable decoding in the intermediate layer.
  • the layering processing unit 111 includes a control unit 121, a scalable layering processing unit 122, a non-scalable non-scalable layering processing unit 123, an inversion unit 124, and a weighting unit 125.
  • the control unit 121 performs processing related to layering control. For example, the control unit 121 acquires attribute data and geometry data (decoding result) supplied from the point cloud generation unit 103. The control unit 121 supplies the acquired attribute data and geometry data (decoding result) to the scalable layering processing unit 122.
  • control unit 121 controls the scalable layering processing unit 122 and the non-scalable non-scalable layering processing unit 123 to execute the layering.
  • control unit 121 has ⁇ 1.
  • Hierarchization is performed by applying the above-mentioned technology in Switching between layering / reverse layering method>. That is, for example, the control unit 121 drives the scalable-compatible layering processing unit 122, the non-scalable non-compatible layering processing unit 123, or both, and causes layering by each layering method.
  • control unit 121 generates control information regarding the layering of the attribute data, and supplies the control information to the quantization unit 112.
  • the scalable layering processing unit 122 performs processing related to layering of attribute data by a method corresponding to scalable decoding (for example, the layering method described in Non-Patent Document 3). For example, the scalable layering processing unit 122 acquires attribute data and geometry data (decoding result) supplied from the control unit 121.
  • the scalable layering processing unit 122 stratifies the acquired attribute data according to the control of the control unit 121 by a method corresponding to the scalable decoding using the acquired geometry data.
  • the scalable layering processing unit 122 may use a method corresponding to scalable decoding and may be a layer designated by the control unit 121 (for example, a layer permitted to execute processing or a layer not prohibited from processing). ) Is generated.
  • the scalable layering processing unit 122 supplies the generated hierarchical attribute data, non-layered attribute data, geometry data, and the like to the non-scalable non-scalable layering processing unit 123.
  • the scalable layering processing unit 122 can omit the layering. In that case, the scalable layering processing unit 122 supplies all the acquired attribute data and geometry data to the non-scalable non-scalable layering processing unit 123.
  • the non-scalable layering processing unit 123 performs processing related to layering of attribute data by a method that does not support scalable decoding (for example, Lifting described in Non-Patent Document 2). For example, the non-scalable layering processing unit 123 acquires attribute data, geometry data (decoding result), etc. supplied from the scalable layering processing unit 122.
  • the non-scalable layering processing unit 123 Under the control of the control unit 121, the non-scalable layering processing unit 123 layered the non-layered attribute data using the acquired geometry data by a method that does not support scalable decoding.
  • the non-scalable hierarchical processing unit 123 uses a method that does not support scalable decoding, and the layer specified by the control unit 121 (for example, the layer permitted to execute the process, the layer not prohibited from the process). May be).
  • the non-scalable layered processing unit 123 supplies the layered attribute data to the inversion unit 124.
  • the non-scalable layering processing unit 123 can omit the layering. In that case, all the acquired attribute data is hierarchized, and the scalable layering processing unit 122 supplies the attribute data to the inversion unit 124.
  • the reversing unit 124 performs processing related to reversing the hierarchy.
  • the inversion unit 124 acquires the layered attribute data supplied from the non-scalable layering processing unit 123.
  • this attribute data the information of each layer is layered in the order of generation.
  • the inversion unit 124 inverts the hierarchy of the attribute data. For example, the inversion unit 124 sets the layer number (the highest layer is 0, the value is incremented by 1 each time the upper layer is lowered by 1 and the lowest layer is the maximum value) in the reverse order of the generation order for each layer of attribute data. (Number to identify the layer) is attached so that the order of generation is from the lowest layer to the highest layer.
  • the inversion unit 124 supplies the attribute data in which the hierarchy is inverted to the weighting unit 125.
  • the weighting unit 125 performs processing related to weighting. For example, the weighting unit 125 acquires the attribute data supplied from the inversion unit 124. The weighting unit 125 derives the weight value of the acquired attribute data. The method of deriving this weight value is arbitrary. The method of deriving the weight value may be changed between the layer generated by the scalable layering processing unit 122 and the layer generated by the non-scalable layering processing unit 123.
  • the weighting unit 125 supplies the attribute data (difference value) and the derived weight value to the quantization unit 112 (FIG. 12). Further, the weighting unit 125 may supply the derived weight value as control information to the quantization unit 112 and transmit it to the decoding side.
  • the control unit 121 controls the scalable layering processing unit 122 and the non-scalable non-scalable layering processing unit 123, and ⁇ 1. Switching of layering / reverse layering method> As described above, the layering method of attribute data is switched in the intermediate layer. By doing so, the layering processing unit 111 can apply a plurality of layering methods to form a layered structure of attribute data. As a result, it is possible to layer more diverse attribute data by a more suitable method, and it is possible to suppress a decrease in coding efficiency.
  • each processing unit may be configured by a logic circuit that realizes the above-mentioned processing.
  • each processing unit may have, for example, a CPU, ROM, RAM, etc., and execute a program using them to realize the above-mentioned processing.
  • each processing unit may have both configurations, and a part of the above-mentioned processing may be realized by a logic circuit, and the other may be realized by executing a program.
  • the configurations of the respective processing units may be independent of each other. For example, some processing units realize a part of the above-mentioned processing by a logic circuit, and some other processing units execute a program.
  • the above-mentioned processing may be realized by the other processing unit by both the logic circuit and the execution of the program.
  • the coding device 100 encodes the data in the point cloud by executing the coding process. An example of the flow of this coding process will be described with reference to the flowchart of FIG.
  • the position information coding unit 101 of the coding device 100 encodes the input point cloud geometry data (position information) in step S101 to generate the coded data of the geometry data. To do.
  • step S102 the position information decoding unit 102 decodes the coded data of the geometry data generated in step S101 and generates the position information.
  • step S103 the point cloud generation unit 103 performs recolor processing using the input point cloud attribute data (attribute information) and the geometry data (decoding result) generated in step S102, and obtains the attribute data. Corresponds to geometry data.
  • step S104 the attribute information coding unit 104 encodes the attribute data recolored in step S103 by executing the attribute information coding process, and generates the coded data of the attribute data.
  • the attribute information coding unit 104 has ⁇ 1. Processing is performed by applying the above-mentioned technology in Switching between layering / reverse layering method>. For example, the attribute information coding unit 104 switches the layering method of the attribute data in the intermediate layer in the layering of the attribute data. The details of the attribute information coding process will be described later.
  • step S105 the bitstream generation unit 105 generates and outputs a bitstream including the coded data of the geometry data generated in step S101 and the coded data of the attribute data generated in step S104.
  • step S105 When the process of step S105 is completed, the coding process is completed.
  • the coding device 100 can apply a plurality of layering methods to form a layered structure of attribute data. As a result, it is possible to layer more diverse attribute data by a more suitable method, and it is possible to suppress a decrease in coding efficiency.
  • the layering processing unit 111 of the attribute information coding unit 104 stratifies the attribute data by executing the layering process in step S111, and the difference between the attribute data at each point. Derived the value. At that time, the layering processing unit 111 has ⁇ 1. Hierarchization is performed by applying the above-mentioned technology in Switching between layering / reverse layering method>. For example, the layering processing unit 111 switches the layering method of attribute data in the intermediate layer. The details of the layering process will be described later.
  • step S112 the quantization unit 112 quantizes each difference value derived in step S111.
  • step S113 the coding unit 113 encodes the difference value quantized in step S112 and generates the coded data of the attribute data.
  • step S113 When the process of step S113 is completed, the attribute information coding process is completed, and the process returns to FIG.
  • the attribute information coding unit 104 can apply a plurality of layering methods to form a layered structure of attribute data. As a result, it is possible to layer more diverse attribute data by a more suitable method, and it is possible to suppress a decrease in coding efficiency.
  • control unit 121 of the layering processing unit 111 sets the applicable range of the method corresponding to the scalable decoding in step S121.
  • the control unit 121 controls the layering based on the setting.
  • step S122 the scalable layering processing unit 122 generates a hierarchy within the applicable range of the method corresponding to the scalable decoding set in step S121 by the method corresponding to the scalable decoding. That is, the scalable layering processing unit 122 sets the reference point and the prediction point for each layer to be encoded so that the scalable decoding can be performed by using the method corresponding to the scalable decoding, and sets the reference point and the prediction point of the reference point.
  • the predicted value of the attribute data of the predicted point is derived using the attribute data, and the difference value between the attribute data of the predicted point and the predicted value is derived.
  • step S123 the non-scalable layering processing unit 123 converts the layer not generated in step S122, that is, the layer outside the applicable range of the method corresponding to the scalable decoding set in step S121, into scalable decoding. Generate by an unsupported method. That is, the non-scalable layering processing unit 123 sets a reference point and a prediction point for each layer to be encoded so that the scalable decoding cannot be performed by using a method that does not support the scalable decoding, and refers to the reference point.
  • the predicted value of the attribute data of the predicted point is derived using the attribute data of the point, and the difference value between the attribute data of the predicted point and the predicted value is derived.
  • the inversion unit 124 When all layers of attribute data are generated by the processing of steps S122 and S123, the inversion unit 124 reverses the layers of the generated attribute data in step S124, and in each layer, the order of generation is opposite to that of the generation order. Add a hierarchy number.
  • step S125 the weighting unit 125 derives a weight value for the attribute data of each layer.
  • step S126 the control unit 121 generates control information regarding the layering of attribute data, supplies it to the quantization unit 112, and transmits it to the decoding side.
  • step S126 When the process of step S126 is completed, the process returns to FIG.
  • the layering processing unit 111 can apply a plurality of layering methods to form a layered structure of attribute data. As a result, it is possible to layer more diverse attribute data by a more suitable method, and it is possible to suppress a decrease in coding efficiency.
  • FIG. 17 is a block diagram showing an example of a configuration of a decoding device, which is an aspect of an information processing device to which the present technology is applied.
  • the decoding device 200 shown in FIG. 17 is a device that decodes the coded data of the point cloud (3D data).
  • the decoding device 200 has ⁇ 1. Decoding the coded data of the point cloud by applying the above-mentioned technology in Switching between layering / de-layering method>.
  • FIG. 17 shows the main things such as the processing unit and the data flow, and not all of them are shown in FIG. That is, in the decoding device 200, there may be a processing unit that is not shown as a block in FIG. 17, or there may be a processing or data flow that is not shown as an arrow or the like in FIG.
  • the decoding device 200 includes a decoding target LoD depth setting unit 201, a coded data extraction unit 202, a position information decoding unit 203, an attribute information decoding unit 204, and a point cloud generation unit 205.
  • the decoding target LoD depth setting unit 201 performs processing related to setting the depth of the layer (LoD) to be decoded. For example, the decoding target LoD depth setting unit 201 sets to what level the coded data of the point cloud held in the coded data extraction unit 202 is decoded. The method of setting the layer depth to be decoded is arbitrary.
  • the decoding target LoD depth setting unit 201 may be set based on an instruction regarding the layer depth from the outside such as a user or an application. Further, the decoding target LoD depth setting unit 201 may obtain and set the layer depth to be decoded based on arbitrary information such as an output image.
  • the layer to be decoded by the decoding target LoD depth setting unit 201 based on the viewpoint position, direction, angle of view, viewpoint movement (movement, pan, tilt, zoom), etc. of the two-dimensional image generated from the point cloud. You may want to set the depth.
  • the decoding target LoD depth setting unit 201 can set the hierarchy depth for the entire point cloud, can set the hierarchy depth for each object, and set the hierarchy depth for each partial area in the object. You can also do it.
  • the layer depth can be set for each data unit other than these examples.
  • the coded data extraction unit 202 acquires and holds a bit stream input to the decoding device 200.
  • the coded data extraction unit 202 holds the coded data of the geometry data (position information) and the attribute data (attribute information) from the highest level to the hierarchy specified by the decoding target LoD depth setting unit 201. Extract from the stream.
  • the coded data extraction unit 202 supplies the coded data of the extracted geometry data to the position information decoding unit 203.
  • the coded data extraction unit 202 supplies the coded data of the extracted attribute data to the attribute information decoding unit 204.
  • the position information decoding unit 203 acquires the coded data of the geometry data supplied from the coded data extraction unit 202.
  • the position information decoding unit 203 decodes the coded data of the geometry data and generates the geometry data (decoding result).
  • This decoding method is arbitrary as long as it is the same method as in the case of the position information decoding unit 102 of the coding device 100.
  • the position information decoding unit 203 supplies the generated geometry data (decoding result) to the attribute information decoding unit 204 and the point cloud generation unit 205.
  • the attribute information decoding unit 204 acquires the coded data of the attribute data supplied from the coded data extraction unit 202.
  • the attribute information decoding unit 204 acquires the geometry data (decoding result) supplied from the position information decoding unit 203.
  • the attribute information decoding unit 404 uses the position information (decoding result) to ⁇ 1.
  • Attribute data (decoding result) is generated by decoding the coded data of the attribute data by the method to which the present technology is applied in the switching of the layering / de-layering method>. For example, the attribute information decoding unit 204 switches the method of reversing the attribute data in the intermediate layer.
  • the attribute information decoding unit 204 supplies the generated attribute data (decoding result) to the point cloud generation unit 405.
  • the point cloud generation unit 205 acquires the geometry data (decoding result) supplied from the position information decoding unit 203.
  • the point cloud generation unit 205 acquires the attribute data (decoding result) supplied from the attribute information decoding unit 204.
  • the point cloud generation unit 205 generates a point cloud (decoding result) using the geometry data (decoding result) and attribute data (decoding result).
  • the point cloud generation unit 205 outputs the generated point cloud (decoding result) data to the outside of the decoding device 200.
  • the decoding device 200 can apply a plurality of layering methods to perform reverse layering, so that the layered attribute data can be correctly applied by applying the plurality of layering methods. It can be reversed. That is, the coded data encoded by applying such a plurality of layering methods can be correctly decoded. Thereby, the reduction of the coding efficiency can be suppressed.
  • each processing unit may be configured by a logic circuit that realizes the above-mentioned processing.
  • each processing unit may have, for example, a CPU, ROM, RAM, etc., and execute a program using them to realize the above-mentioned processing.
  • each processing unit may have both configurations, and a part of the above-mentioned processing may be realized by a logic circuit, and the other may be realized by executing a program.
  • the configurations of the respective processing units may be independent of each other. For example, some processing units realize a part of the above-mentioned processing by a logic circuit, and some other processing units execute a program.
  • the above-mentioned processing may be realized by the other processing unit by both the logic circuit and the execution of the program.
  • FIG. 18 is a block diagram showing a main configuration example of the attribute information decoding unit 204 (FIG. 17). Note that FIG. 18 shows the main things such as the processing unit and the data flow, and not all of them are shown in FIG. That is, in the attribute information decoding unit 204, there may be a processing unit that is not shown as a block in FIG. 18, or there may be a processing or data flow that is not shown as an arrow or the like in FIG.
  • the attribute information decoding unit 204 has a decoding unit 211, an inverse quantization unit 212, and an inverse layering processing unit 213.
  • the decoding unit 211 performs processing related to decoding of the coded data of the attribute data. For example, the decoding unit 211 acquires the encoded data of the attribute data supplied to the attribute information decoding unit 204.
  • the decoding unit 211 decodes the encoded data of the attribute data and generates the attribute data (decoding result).
  • This decoding method is arbitrary as long as it corresponds to the coding method by the coding unit 113 (FIG. 12) of the coding device 100.
  • the generated attribute data (decoding result) corresponds to the attribute data before encoding, and is a difference value between the attribute data and the predicted value as described in the first embodiment, and is quantized. ing.
  • the decoding unit 211 supplies the generated attribute data (decoding result) to the inverse quantization unit 212.
  • the decoding unit 211 also supplies the control information to the inverse quantization unit 212.
  • the dequantization unit 212 performs processing related to dequantization of attribute data. For example, the inverse quantization unit 212 acquires attribute data (decoding result) and control information supplied from the decoding unit 211.
  • the dequantization unit 212 dequantizes the attribute data (decoding result). At that time, when the control information regarding the weight value is supplied from the decoding unit 211, the inverse quantization unit 212 also acquires the control information and based on the control information (the weight value derived based on the control information). (Using) to dequantize the attribute data (decoding result).
  • the dequantization unit 212 supplies the control information regarding the layering of the attribute data from the decoding unit 211, the inverse quantization unit 212 also acquires the control information.
  • the dequantization unit 212 supplies the dequantized attribute data (decoding result) to the dehierarchy processing unit 213. Further, when the control information regarding the layering of the attribute data is acquired from the decoding unit 211, the dequantization unit 212 also supplies the control information to the delayering processing unit 213.
  • the de-layering processing unit 213 acquires the dequantized attribute data (decoding result) supplied from the dequantization unit 212. As described above, this attribute data is a difference value. Further, the reverse hierarchy processing unit 213 acquires the geometry data (decoding result) supplied from the position information decoding unit 203. The reverse layering processing unit 213 uses the geometry data to reverse the layering of the acquired attribute data (difference value) by the layering processing unit 111 (FIG. 12) of the coding apparatus 100. Hierarchize.
  • the reverse hierarchy processing unit 213 is described in ⁇ 1.
  • switching between layering / reverse layering method> the above-mentioned technology is applied to perform reverse layering. That is, the reverse layering processing unit 213 switches the layering method of the attribute information in the intermediate layer (that is, switches the reverse layering method) in the reverse layering.
  • the reverse layering processing unit 213 supplies the reverse layered attribute data as a decoding result to the point cloud generation unit 205 (FIG. 17).
  • the attribute information decoding unit 204 can correctly reverse the layered attribute data by applying a plurality of layering methods. That is, the coded data encoded by applying such a plurality of layering methods can be correctly decoded. Thereby, the reduction of the coding efficiency can be suppressed.
  • each processing unit may be configured by a logic circuit that realizes the above-mentioned processing.
  • each processing unit may have, for example, a CPU, ROM, RAM, etc., and execute a program using them to realize the above-mentioned processing.
  • each processing unit may have both configurations, and a part of the above-mentioned processing may be realized by a logic circuit, and the other may be realized by executing a program.
  • the configurations of the respective processing units may be independent of each other. For example, some processing units realize a part of the above-mentioned processing by a logic circuit, and some other processing units execute a program.
  • the above-mentioned processing may be realized by the other processing unit by both the logic circuit and the execution of the program.
  • FIG. 19 is a block diagram showing a main configuration example of the reverse hierarchy processing unit 213 (FIG. 18). Note that FIG. 19 shows the main things such as the processing unit and the data flow, and not all of them are shown in FIG. That is, in the reverse hierarchy processing unit 213, there may be a processing unit that is not shown as a block in FIG. 19, or there may be a processing or data flow that is not shown as an arrow or the like in FIG.
  • the reverse layering processing unit 213 will be described as switching between the reverse layering method corresponding to the scalable decoding and the reverse layering method not supporting the scalable decoding in the intermediate layer.
  • the de-layering processing unit 213 includes a control unit 221, a non-scalable non-corresponding reverse-layering processing unit 222, and a scalable-compatible reverse-layering processing unit 223.
  • the control unit 221 performs processing related to the control of the reverse layering. For example, the control unit 221 acquires the dequantized attribute data supplied from the dequantization unit 212 (FIG. 18) and the control information regarding the dehierarchy of the attribute data. The control unit 221 also acquires the geometry data (decoding result) supplied from the position information decoding unit 203.
  • the control unit 221 is ⁇ 1.
  • the non-scalable non-corresponding de-layering processing unit 222 and the scalable de-layering processing unit 223 are controlled, and they are made to perform layering.
  • control unit 221 applies a method corresponding to scalable decoding to the acquired attribute data based on control information (for example, scalable_enable_flag) indicating whether or not a layering method corresponding to scalable decoding is applicable. Determine whether or not to do so.
  • control information for example, scalable_enable_flag
  • control unit 221 supplies the attribute data and the geometry data to the non-scalable non-scalable reverse layering processing unit 222.
  • All layers of the attribute data are dehierarchized using a technique that does not support scalable decoding.
  • control unit 221 controls to indicate the range of layers to which the layering method corresponding to scalable decoding is applied. See information (eg scalable_enable_num_of_lod).
  • control unit 221 reverse-layers the attribute data to be processed by using a method that does not support scalable decoding, or a method that does not support scalable decoding and scalable decoding. Select whether to reverse the hierarchy using both the method corresponding to.
  • the control unit 221 may use the attribute to be processed. All data, geometry data, etc. are supplied to the non-scalable non-scalable reverse layering processing unit 222, and all the layers of the attribute data are reverse-layered by a method not compatible with scalable decoding.
  • the control unit 221 when the layer of the attribute data to be processed includes at least a part of the range of the layer to which the layering method corresponding to the scalable decoding indicated by the control information is applied, the control unit 221 includes the range.
  • the attribute data and geometry data of the included hierarchy are supplied to the non-scalable non-scalable reverse hierarchy processing unit 222. Further, the control unit 221 supplies the attribute data and geometry data of the hierarchy not included in the range to the scalable reverse hierarchy processing unit 223. That is, each reverse-hierarchy processing unit is reverse-hierarchized by each method.
  • the non-scalable non-compatible reverse layering processing unit 222 reverse-layers the attribute data supplied from the control unit 221 using the geometry data supplied from the control unit 221 by a method that does not support scalable decoding.
  • the non-scalable non-scalable reverse layer processing unit 222 supplies the reverse layered attribute data (non-scalable layer) to the point cloud generation unit 205 (FIG. 17).
  • the scalable reverse-hierarchy processing unit 223 reverse-hierarchizes the attribute data supplied from the control unit 221 by a method corresponding to scalable decoding using the geometry data supplied from the control unit 221.
  • the scalable reverse layer processing unit 223 supplies the reverse layered attribute data (non-scalable layer) to the point cloud generation unit 205 (FIG. 17).
  • control unit 221 controls the non-scalable non-compatible reverse layer processing unit 222 and the scalable compatible reverse layer processing unit 223, and ⁇ 1.
  • Switching the layering / reverse layering method> As described above, the layering method for attribute data is switched in the intermediate layer. Therefore, the reverse layering processing unit 213 can correctly reverse layer the layered attribute data by applying a plurality of layering methods. That is, the coded data encoded by applying such a plurality of layering methods can be correctly decoded. Thereby, the reduction of the coding efficiency can be suppressed.
  • each processing unit may be configured by a logic circuit that realizes the above-mentioned processing.
  • each processing unit may have, for example, a CPU, ROM, RAM, etc., and execute a program using them to realize the above-mentioned processing.
  • each processing unit may have both configurations, and a part of the above-mentioned processing may be realized by a logic circuit, and the other may be realized by executing a program.
  • the configurations of the respective processing units may be independent of each other. For example, some processing units realize a part of the above-mentioned processing by a logic circuit, and some other processing units execute a program.
  • the above-mentioned processing may be realized by the other processing unit by both the logic circuit and the execution of the program.
  • the decoding device 200 decodes the coded data of the point cloud by executing the decoding process.
  • An example of the flow of the decoding process will be described with reference to the flowchart of FIG.
  • the decoding target LoD depth setting unit 201 of the decoding device 200 sets the LoD depth to be decoded (that is, the range of the layer to be decoded) in step S201.
  • step S202 the coded data extraction unit 202 acquires and holds the bit stream, and indicates the decoding target layer range set in step S201 and the layer range to which the layering method corresponding to the scalable decoding is applied. Based on the control information (for example, scalable_enable_num_of_lod), it is determined whether or not to decode to a layer capable of scalable decoding.
  • control information for example, scalable_enable_num_of_lod
  • step S203 When the decoding target layer range is superimposed on the layer range to which the layering method corresponding to the scalable decoding is applied and it is determined that the layer can be decoded to the scalable layer (also referred to as the scalable layer), processing is performed. Proceeds to step S203.
  • step S203 the coded data extraction unit 202 extracts the coded data of all layers in the decoding target layer range.
  • the process of step S203 proceeds to step S205.
  • step S202 if it is determined that the decoding target layer range does not overlap with the layer range to which the layering method corresponding to the scalable decoding is applied and the scalable layer is not decoded, the process is performed in step S204. Proceed to.
  • step S204 the coded data extraction unit 202 extracts the coded data of the entire layer (also referred to as a non-scalable layer) that cannot be scalable and decrypted.
  • the process of step S204 proceeds to step S205.
  • step S205 the position information decoding unit 203 decodes the coded data of the geometry data extracted in step S203 or step S204, and generates position information (decoding result).
  • step S206 the attribute information decoding unit 204 decodes the coded data of the attribute data extracted in step S203 or step S204, and generates the attribute information (decoding result).
  • the attribute information decoding unit 204 has ⁇ 1. Processing is performed by applying the above-mentioned technology in Switching between layering / reverse layering method>. For example, the attribute information decoding unit 204 switches the layering method of the attribute information in the intermediate layer (that is, switches the reverse layering method) in the reverse layering. The details of the attribute information decoding process will be described later.
  • step S207 the point cloud generation unit 205 generates a point cloud (decoding result) using the geometry data (decoding result) generated in step S205 and the attribute data (decoding result) generated in step S206. ,Output.
  • step S205 When the process of step S205 is completed, the decryption process is completed.
  • the decoding device 200 can apply a plurality of layering methods to perform reverse layering, and therefore, the attributes layered by applying the plurality of layering methods.
  • Data can be correctly dehierarchized. That is, the coded data encoded by applying such a plurality of layering methods can be correctly decoded. Thereby, the reduction of the coding efficiency can be suppressed.
  • the decoding unit 211 of the attribute information decoding unit 204 decodes the coded data of the attribute data (attribute information) in step S211 and generates the attribute data (decoding result).
  • This attribute data (decoding result) is quantized as described above.
  • step S212 the dequantization unit 212 dequantizes the attribute data (decoding result) generated in step S211 by executing the dequantization process.
  • step S213 the de-layering processing unit 213 reverse-layers the dequantized attribute data (difference value) in step S212 by executing the de-layering process, and derives the attribute data of each point.
  • the reverse hierarchy processing unit 213 is described in ⁇ 1.
  • switching between layering / reverse layering method> the above-mentioned technology is applied to perform reverse layering.
  • the reverse layering processing unit 213 switches the layering method of the attribute information in the intermediate layer (that is, switches the reverse layering method) in the reverse layering. The details of the reverse layering process will be described later.
  • step S213 When the process of step S213 is completed, the attribute information decoding process is completed, and the process returns to FIG.
  • the attribute information decoding unit 204 can apply a plurality of layering methods to perform reverse layering, and thus the attribute information decoding unit 204 is layered by applying a plurality of layering methods.
  • the attribute data can be correctly reversed. That is, the coded data encoded by applying such a plurality of layering methods can be correctly decoded. Thereby, the reduction of the coding efficiency can be suppressed.
  • the control unit 221 of the de-layering processing unit 213 stratifies the attribute data (decoding result) using the geometry data (decoding result) in step S221. That is, the control unit 221 performs the same processing as the hierarchical processing described in the first embodiment, and associates the hierarchical structure of the attribute data with the hierarchical structure of the geometry data for the layer to be decoded. As a result, the attribute data (decoding result) of each point and the geometry data (decoding result) are associated with each other. The following processing is performed based on this correspondence.
  • step S222 the non-scalable non-scalable reverse hierarchy processing unit 222 reverse hierarchizes the attribute data of the non-scalable hierarchy.
  • step S223 the control unit 221 determines whether or not to decode up to the scalable layer. If it is determined to decrypt, the process proceeds to step S224.
  • step S224 the scalable reverse layering processing unit 223 executes the scalable reverse layering process to reverse layer the attribute data of the scalable layer.
  • the details of this scalable dehierarchy processing will be described later.
  • step S224 When the process of step S224 is completed, the reverse hierarchy process is completed, and the process returns to FIG.
  • step S223 If it is determined in step S223 that the scalable layer is not decoded, the process of step S224 is omitted, the reverse layering process is completed, and the process returns to FIG. 21.
  • the reverse layering processing unit 213 can apply a plurality of layering methods to perform reverse layering, and therefore apply a plurality of layering methods to layer.
  • the attribute data that has been created can be correctly reverse-hierarchized. That is, the coded data encoded by applying such a plurality of layering methods can be correctly decoded. Thereby, the reduction of the coding efficiency can be suppressed.
  • the scalable de-layering processing unit 223 sets the processing target LoD to the highest level LoD of the scalable layer in step S231.
  • step S232 the scalable reverse layer processing unit 223 derives the predicted value of the predicted point from the reference point based on the geometry data of the resolution of the LoD to be processed.
  • step S233 the scalable reverse hierarchy processing unit 223 adds the predicted value derived in step S232 to the difference value to restore the attribute information of the predicted point.
  • step S234 the scalable reverse hierarchy processing unit 223 merges the attribute data of the prediction point and the reference point.
  • step S235 the scalable reverse layering processing unit 223 determines whether or not the processing target LoD is the lowest LoD in the decoding target layer range. If it is determined that the LoD to be processed is the lowest LoD in the layer range to be decoded, the process proceeds to step S236.
  • step S236 the scalable reverse layer processing unit 223 moves (updates) the processing target LoD one layer down.
  • the process of step S236 is completed, the process returns to step S232, and the subsequent processes are repeated.
  • step S232 to step S236 is executed for all layers to be processed.
  • step S235 when it is determined that the LoD to be processed has reached the lowest LoD in the layer range to be decoded, that is, when it is determined that all the layers to be decoded have been processed, the scalable reverse layering process is performed. When finished, the process returns to FIG.
  • the scalable reverse hierarchy processing unit 223 can correctly reverse the scalable hierarchy to be decoded. That is, the coded data encoded by applying such a plurality of layering methods can be correctly decoded. Thereby, the reduction of the coding efficiency can be suppressed.
  • the coding apparatus 100 has the same configuration as that of the first embodiment described with reference to FIG. 11, and basically performs the same processing.
  • the attribute information coding unit 104 has ⁇ 2.
  • the above-mentioned technique is applied in Control of reference relationship> to encode the attribute data. For example, the attribute information coding unit 104 merges points (nodes) of a plurality of layers to build a reference relationship.
  • the attribute information coding unit 104 has the same configuration as that of the first embodiment described with reference to FIG. 12, and basically performs the same processing.
  • the layering processing unit 111 has ⁇ 2. Hierarchy is performed by applying the above-mentioned technology in Control of reference relationship>. For example, the layering processing unit 111 merges points (nodes) of a plurality of layers to build a reference relationship.
  • the layering processing unit 111 has the same configuration as that of the first embodiment described with reference to FIG. 13, and basically performs the same processing.
  • the layering processing unit 111 may include at least one of the scalable layering processing unit 122 and the non-scalable non-scalable layering processing unit 123. That is, the layering may be performed by a method corresponding to the scalable decoding, or may be performed by a method not supporting the scalable decoding.
  • control unit 121 is ⁇ 2.
  • the hierarchy is controlled by the method to which the present technology is applied.
  • the control unit 121 merges points (nodes) of a plurality of layers to build a reference relationship.
  • the control unit 121 derives the predicted values of the predicted points of a plurality of layers by referring to the reference points of the same layer.
  • the control unit 121 compares the number of points (the number of nodes) in the layer to be processed with the attribute data with the layer one level above.
  • control unit 121 has a case where the number of points in the layer to be processed is not sufficiently larger than that in the layer one level higher (when a predetermined number of points has not increased (for example, when the number of points decreases)). , Merge the points of the hierarchy to be processed into the next higher hierarchy to build the reference relationship.
  • the control unit 121 generates control information (for example, merge_lower_lod_flag) indicating whether the reference relationship has been established by merging with another layer for each layer, and supplies the control information to the quantization unit 112 to the decoding side. To transmit.
  • the coding unit 113 acquires the control information via the quantization unit 112, the coding unit 113 includes the control information in the coded data of the attribute data.
  • the layering processing unit 111 can build a reference relationship having a configuration in which the number of points monotonically increases from the upper layer to the lower layer. Therefore, the coding device 100 can suppress the reduction of the coding efficiency.
  • step S104 the attribute information coding unit 104 has ⁇ 2. Processing is performed by applying the above-mentioned technology in Control of reference relationship>. For example, the attribute information coding unit 104 merges points (nodes) of a plurality of layers to build a reference relationship. ⁇ Flow of attribute information coding process> Further, also in this case, the attribute information coding unit 104 basically performs the attribute information coding process executed in step S104 of FIG. 14 as in the case of the first embodiment described with reference to FIG. Execute in the same flow. However, in step S111, the layering processing unit 111 has ⁇ 2. Processing is performed by applying the above-mentioned technology in Control of reference relationship>.
  • control unit 121 compares the number of nodes with the layer one level higher for each layer in step S301.
  • control unit 121 includes (merges) the nodes in the hierarchy in which the number of nodes is not sufficiently large (for example, the number of nodes is reduced) as compared with the node in the hierarchy one level above. To do).
  • step S303 the scalable layering processing unit 122 or the non-scalable non-scalable layering processing unit 123 is controlled by the control unit 121, and a reference point is set from one Ueno layer for each layer. That is, it builds a reference relationship between hierarchies.
  • step S306 When the process of step S306 is completed, the layering process is completed, and the process returns to FIG.
  • the layered processing unit 111 can build a reference relationship having a configuration in which the number of points monotonically increases from the upper layer to the lower layer. Therefore, the coding device 100 can suppress the reduction of the coding efficiency.
  • the decoding device 200 has the same configuration as that of the first embodiment described with reference to FIG. 17, and basically performs the same processing.
  • the attribute information decoding unit 204 has ⁇ 2.
  • the above-mentioned technique is applied in Control of reference relationship> to decode the attribute data.
  • the attribute information decoding unit 204 refers to the prediction points of the plurality of layers in the same layer based on the fact that the points (nodes) of the plurality of layers are merged to form the reference relationship in the reverse hierarchy. Refer to the point and restore.
  • the attribute information decoding unit 204 has the same configuration as the case of the first embodiment described with reference to FIG. 18, and basically performs the same processing.
  • the reverse hierarchy processing unit 213 is described in ⁇ 2. Hierarchy is performed by applying the above-mentioned technology in Control of reference relationship>. For example, in the reverse hierarchy, the reverse hierarchy processing unit 213 sets the prediction points of the plurality of layers in the same hierarchy, based on the fact that the points (nodes) of the plurality of layers are merged to form the reference relationship. Refer to the reference point and restore.
  • the reverse hierarchy processing unit 213 has the same configuration as that of the first embodiment described with reference to FIG. 19, and basically performs the same processing.
  • the reverse layering processing unit 213 may include at least one of the non-scalable non-corresponding reverse layering processing unit 222 and the scalable corresponding reverse layering processing unit 223. That is, the de-hierarchy may be performed by a method corresponding to scalable decoding, or may be performed by a method not compatible with scalable decoding.
  • control unit 221 is ⁇ 2.
  • Control of reference relations> Inverse layering is controlled by the method to which this technology is applied.
  • the control unit 221 restores the prediction points of the plurality of layers by referring to the reference points of the same layer, based on the fact that the reference relationship is constructed by merging the points (nodes) of the plurality of layers. ..
  • the control unit 221 appropriately merges the points of the layer to be processed into the next higher layer based on the control information (for example, merge_lower_lod_flag) indicating whether the reference relationship has been established by merging with another layer. Build a reference relationship.
  • the reverse layering processing unit 213 correctly reverses the attribute data in which the reference relationship is constructed so that the number of points increases monotonically from the upper layer to the lower layer. Can be transformed into. Therefore, the decoding device 200 can suppress the reduction of the coding efficiency.
  • the decoding device 200 executes the coding process basically in the same flow as in the case of the first embodiment described with reference to FIG.
  • the attribute information decoding unit 204 has ⁇ 2. Processing is performed by applying the above-mentioned technology in Control of reference relationship>.
  • the attribute information coding unit 104 refers to the prediction points of the plurality of layers and the reference points of the same layer to each other based on the fact that the reference relationship is constructed by merging the points (nodes) of the plurality of layers. To restore.
  • the attribute information decoding unit 204 basically performs the attribute information decoding process executed in step S206 of FIG. 20 as in the case of the first embodiment described with reference to FIG. 21. Execute in the flow. However, in step S2123, the dehierarchy processing unit 213 has ⁇ 2. Processing is performed by applying the above-mentioned technology in Control of reference relationship>.
  • control unit 221 layers the attribute data using the geometry data in step S401.
  • step S402 the control unit 221 has a hierarchy in which the number of nodes is not sufficiently larger than that of the next higher hierarchy based on the control information (for example, merge_lower_lod_flag) indicating whether the reference relationship has been established by merging with another hierarchy. Include the node in the next higher hierarchy.
  • the control information for example, merge_lower_lod_flag
  • step S403 the non-scalable non-scalable reverse layer processing unit 222 (or the scalable reverse layer processing unit 223) derives the predicted value of the predicted point using the reference point of the next higher layer for each layer.
  • step S404 the non-scalable reverse layer processing unit 222 (or the scalable reverse layer processing unit 223) adds the predicted value to the difference value and restores the attribute information of the predicted point for each layer.
  • step S405 the non-scalable non-scalable reverse layer processing unit 222 (or the scalable reverse layer processing unit 223) merges the attribute data of the prediction point and the reference point for each layer.
  • step S405 When the process of step S405 is completed, the reverse hierarchy process is completed, and the process returns to FIG.
  • the reverse layer processing unit 213 correctly reverses the attribute data in which the reference relationship is constructed so that the number of points increases monotonically from the upper layer to the lower layer. Can be transformed into. Therefore, the decoding device 200 can suppress the reduction of the coding efficiency.
  • Lifting has been described as an example as a method for layering / reversing attribute information, but this technique can be applied to any technique for layering attribute information. That is, the method of layering / reversing the attribute information may be other than Lifting.
  • control information related to the present technology described in each of the above embodiments may be transmitted from the coding side to the decoding side.
  • control information for example, enabled_flag
  • enabled_flag controls whether or not the application of the present technology described above is permitted (or prohibited)
  • a control for designating a range for example, an upper limit or a lower limit of a block size, or both, a slice, a picture, a sequence, a component, a view, a layer, etc.
  • Information may be transmitted.
  • the positional relationship such as “neighborhood” and “periphery” may include not only a spatial positional relationship but also a temporal positional relationship.
  • the series of processes described above can be executed by hardware or by software.
  • the programs constituting the software are installed on the computer.
  • the computer includes a computer embedded in dedicated hardware, a general-purpose personal computer capable of executing various functions by installing various programs, and the like.
  • FIG. 26 is a block diagram showing a configuration example of computer hardware that executes the above-mentioned series of processes programmatically.
  • the CPU Central Processing Unit
  • ROM Read Only Memory
  • RAM Random Access Memory
  • the input / output interface 910 is also connected to the bus 904.
  • An input unit 911, an output unit 912, a storage unit 913, a communication unit 914, and a drive 915 are connected to the input / output interface 910.
  • the input unit 911 includes, for example, a keyboard, a mouse, a microphone, a touch panel, an input terminal, and the like.
  • the output unit 912 includes, for example, a display, a speaker, an output terminal, and the like.
  • the storage unit 913 includes, for example, a hard disk, a RAM disk, a non-volatile memory, or the like.
  • the communication unit 914 includes, for example, a network interface.
  • the drive 915 drives a removable medium 921 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
  • the CPU 901 loads the program stored in the storage unit 913 into the RAM 903 via the input / output interface 910 and the bus 904 and executes the above-described series. Is processed.
  • the RAM 903 also appropriately stores data and the like necessary for the CPU 901 to execute various processes.
  • the program executed by the computer can be recorded and applied to the removable media 921 as a package media or the like, for example.
  • the program can be installed in the storage unit 913 via the input / output interface 910 by mounting the removable media 921 in the drive 915.
  • This program can also be provided via wired or wireless transmission media such as local area networks, the Internet, and digital satellite broadcasting. In that case, the program can be received by the communication unit 914 and installed in the storage unit 913.
  • this program can be installed in advance in ROM 902 or storage unit 913.
  • the coding device 100 and the decoding device 200 have been described as application examples of the present technology, but the present technology can be applied to any configuration.
  • this technology is a transmitter or receiver (for example, a television receiver or mobile phone) for satellite broadcasting, cable broadcasting such as cable TV, distribution on the Internet, and distribution to terminals by cellular communication, or It can be applied to various electronic devices such as devices (for example, hard disk recorders and cameras) that record images on media such as optical disks, magnetic disks, and flash memories, and reproduce images from these storage media.
  • devices for example, hard disk recorders and cameras
  • a processor as a system LSI (Large Scale Integration) or the like (for example, a video processor), a module using a plurality of processors (for example, a video module), a unit using a plurality of modules (for example, a video unit)
  • a processor as a system LSI (Large Scale Integration) or the like
  • a module using a plurality of processors for example, a video module
  • a unit using a plurality of modules for example, a video unit
  • it can be implemented as a configuration of a part of the device, such as a set (for example, a video set) in which other functions are added to the unit.
  • this technology can be applied to a network system composed of a plurality of devices.
  • the present technology may be implemented as cloud computing that is shared and jointly processed by a plurality of devices via a network.
  • this technology is implemented in a cloud service that provides services related to images (moving images) to arbitrary terminals such as computers, AV (AudioVisual) devices, portable information processing terminals, and IoT (Internet of Things) devices. You may try to do it.
  • the system means a set of a plurality of components (devices, modules (parts), etc.), and it does not matter whether all the components are in the same housing. Therefore, a plurality of devices housed in separate housings and connected via a network, and a device in which a plurality of modules are housed in one housing are both systems. ..
  • Systems, devices, processing units, etc. to which this technology is applied can be used in any field such as transportation, medical care, crime prevention, agriculture, livestock industry, mining, beauty, factories, home appliances, weather, nature monitoring, etc. .. The use is also arbitrary.
  • the "flag” is information for identifying a plurality of states, and is not only information used for identifying two states of true (1) or false (0), but also three or more states. It also contains information that can identify the state. Therefore, the value that this "flag” can take may be, for example, 2 values of 1/0 or 3 or more values. That is, the number of bits constituting this "flag” is arbitrary, and may be 1 bit or a plurality of bits.
  • the identification information (including the flag) is assumed to include not only the identification information in the bit stream but also the difference information of the identification information with respect to a certain reference information in the bit stream. In, the "flag” and “identification information” include not only the information but also the difference information with respect to the reference information.
  • various information (metadata, etc.) regarding the coded data may be transmitted or recorded in any form as long as it is associated with the coded data.
  • the term "associate" means, for example, to make the other data available (linkable) when processing one data. That is, the data associated with each other may be combined as one data or may be individual data.
  • the information associated with the coded data (image) may be transmitted on a transmission path different from the coded data (image).
  • the information associated with the coded data (image) may be recorded on a recording medium (or another recording area of the same recording medium) different from the coded data (image). Good.
  • this "association" may be a part of the data, not the entire data. For example, an image and information corresponding to the image may be associated with each other in an arbitrary unit such as a plurality of frames, one frame, or a part within the frame.
  • the embodiment of the present technology is not limited to the above-described embodiment, and various changes can be made without departing from the gist of the present technology.
  • the configuration described as one device (or processing unit) may be divided and configured as a plurality of devices (or processing units).
  • the configurations described above as a plurality of devices (or processing units) may be collectively configured as one device (or processing unit).
  • a configuration other than the above may be added to the configuration of each device (or each processing unit).
  • a part of the configuration of one device (or processing unit) may be included in the configuration of another device (or other processing unit). ..
  • the above-mentioned program may be executed in any device.
  • the device may have necessary functions (functional blocks, etc.) so that necessary information can be obtained.
  • each step of one flowchart may be executed by one device, or may be shared and executed by a plurality of devices.
  • the plurality of processes may be executed by one device, or may be shared and executed by a plurality of devices.
  • a plurality of processes included in one step can be executed as processes of a plurality of steps.
  • the processes described as a plurality of steps can be collectively executed as one step.
  • the processing of the steps for writing the program may be executed in chronological order in the order described in the present specification, and may be executed in parallel or in calls. It may be executed individually at the required timing such as when it is broken. That is, as long as there is no contradiction, the processing of each step may be executed in an order different from the above-mentioned order. Further, the processing of the step for writing this program may be executed in parallel with the processing of another program, or may be executed in combination with the processing of another program.
  • a plurality of technologies related to this technology can be independently implemented independently as long as there is no contradiction.
  • any plurality of the present technologies can be used in combination.
  • some or all of the techniques described in any of the embodiments may be combined with some or all of the techniques described in other embodiments. It is also possible to carry out a part or all of any of the above-mentioned techniques in combination with other techniques not described above.
  • the present technology can also have the following configurations.
  • the attribute information is hierarchized by recursively repeating the process of deriving the predicted value of the attribute information and deriving the difference value between the attribute information of the predicted point and the predicted value with respect to the reference point. Equipped with a layered section to perform
  • the layering unit is an information processing device that performs the layering using a plurality of layering methods and generates different layers from each other by each layering method.
  • the layering unit generates a layer higher than a predetermined layer by a layering method that does not support scalable decoding, and is higher than the predetermined layer by a layering method corresponding to scalable decoding.
  • the information processing apparatus according to (1) which generates a lower hierarchy.
  • the information processing apparatus according to (2) wherein the layering unit generates each layer in the order from the lowest layer to the highest layer.
  • a generation unit that generates control information related to the layering of the attribute information by the layering unit, and a generation unit. (1) to further include a coding unit that encodes the attribute information layered by the layering unit and generates coded data of the attribute information including the control information generated by the generation unit (1) to.
  • the information processing apparatus according to any one of (3).
  • the attribute information for each point of the point cloud that expresses a three-dimensional object as a set of points is classified into a prediction point and a reference point, and the attribute information of the reference point is used to obtain the prediction point.
  • Hierarchization of the attribute information by recursively repeating the process of deriving the predicted value of the attribute information and deriving the difference value between the attribute information of the predicted point and the predicted value with respect to the reference point.
  • the attribute information for each point of the point cloud that expresses a three-dimensional object as a set of points is classified into a prediction point and a reference point, and the attribute information of the reference point is used to obtain the prediction point.
  • the attribute information layered by recursively repeating the process of deriving the predicted value of the attribute information and deriving the difference value between the attribute information of the predicted point and the predicted value with respect to the reference point. Equipped with a reverse layering section that reverses the layering
  • the reverse layering unit is an information processing device that uses a plurality of layering methods to perform the reverse layering on different layers by each layering method.
  • the reverse layering unit performs the reverse layering on a layer higher than a predetermined layer by a layering method that does not support scalable decoding, and uses a layering method that supports scalable decoding.
  • the information according to (7), wherein the reverse layering unit identifies the predetermined layer based on the first control information indicating the range of the layer to which the layering method corresponding to the scalable decoding is applied. Processing equipment. (9) Regarding the attribute information indicated to be applicable by the second control information indicating whether or not the layering method corresponding to the scalable decoding is applicable, the reverse layering unit is the first.
  • the information processing apparatus which specifies the predetermined hierarchy based on control information. (10) Further provided with a decoding unit that decodes the coded data of the attribute information and generates the attribute information.
  • the information processing apparatus according to any one of (6) to (9), wherein the reverse layering unit performs the reverse layering on the attribute information obtained by decoding the coded data by the decoding unit. .. (11)
  • the attribute information for each point of the point cloud that expresses a three-dimensional object as a set of points is classified into a prediction point and a reference point, and the attribute information of the reference point is used to obtain the prediction point.
  • the attribute information for each point of the point cloud that expresses a three-dimensional object as a set of points is classified into a prediction point and a reference point, and the attribute information of the reference point is used to obtain the prediction point.
  • the attribute information is hierarchized by recursively repeating the process of deriving the predicted value of the attribute information and deriving the difference value between the attribute information of the predicted point and the predicted value with respect to the reference point. Equipped with a layered section to perform
  • the layering unit is an information processing device that derives the predicted values of the predicted points of a plurality of layers by referring to the reference points of the same layer.
  • the layering unit refers to the reference point in the layer two levels higher for the calculation of the predicted value of the prediction point in the layer in which the points are not sufficiently large compared to the layer one level higher.
  • the information processing apparatus according to (12).
  • a generator that generates control information indicating whether a reference relationship has been established by merging with another hierarchy.
  • a coding unit that encodes the attribute information layered by the layering unit and generates encoded data of the attribute information including the control information generated by the generation unit (12) or (13).
  • the information processing device described in. (15) The attribute information for each point of the point cloud that expresses a three-dimensional object as a set of points is classified into a prediction point and a reference point, and the attribute information of the reference point is used to obtain the prediction point.
  • Hierarchization of the attribute information by recursively repeating the process of deriving the predicted value of the attribute information and deriving the difference value between the attribute information of the predicted point and the predicted value with respect to the reference point.
  • the attribute information for each point of the point cloud that expresses a three-dimensional object as a set of points is classified into a prediction point and a reference point, and the attribute information of the reference point is used to obtain the prediction point.
  • the attribute information layered by recursively repeating the process of deriving the predicted value of the attribute information and deriving the difference value between the attribute information of the predicted point and the predicted value with respect to the reference point. Equipped with a reverse layering section that reverses the layering At the time of the reverse layering, the reverse layering unit derives the predicted values of the attribute information of the predicted points in a plurality of layers with reference to the attribute information of the reference points in the same layer.
  • the reverse layering unit specifies a layer to be referred to in the layer to be processed, based on control information indicating whether to refer to the same layer as the other layers at the time of the reverse layering.
  • the information processing apparatus according to (16), wherein the predicted value of the attribute information of the predicted point in the layer to be processed is derived by referring to the attribute information of the reference point in the specified layer.
  • the reverse layering unit refers to the attribute information of the reference point of the reference point of the two higher layers for the layer whose points are not sufficiently many as compared with the layer one level higher, and refers to the predicted point.
  • the information processing apparatus which derives the predicted value of the attribute information.
  • a decoding unit that decodes the coded data of the attribute information and generates the attribute information is further provided.
  • the information processing apparatus according to any one of (16) to (18), wherein the reverse layering unit performs the reverse layering on the attribute information restored by decoding the coded data by the decoding unit. .. (20)
  • the attribute information for each point of the point cloud that expresses a three-dimensional object as a set of points is classified into a prediction point and a reference point, and the attribute information of the reference point is used to obtain the prediction point.
  • the attribute information layered by recursively repeating the process of deriving the predicted value of the attribute information and deriving the difference value between the attribute information of the predicted point and the predicted value with respect to the reference point.
  • the predicted value of the attribute information of the prediction point of a plurality of layers is derived by referring to the attribute information of the reference point of the same layer, and the derived value is derived.
  • An information processing method that generates the attribute information of the prediction point by adding the predicted value to the difference value.
  • 100 coding device 101 position information coding unit, 102 position information decoding unit, 103 point cloud generation unit, 104 attribute information coding unit, 105 bitstream generation unit, 111 layering processing unit, 112 quantization unit, 113 code Conversion unit, 121 control unit, 122 scalable layering processing unit, 123 non-scalable layering processing unit, 124 inversion unit, 125 weighting unit, 200 decoding device, 201 decoding target LOD depth setting unit, 202 encoded data extraction unit , 203 Position information decoding unit, 204 Attribute information decoding unit, 205 Point cloud generation unit, 211 Decoding unit, 212 Inverse quantization unit, 213 Inverse layering processing unit, 221 Control unit, 222 Non-scalable non-compatible reverse layering processing unit, 223 Scalable reverse layer processing unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本開示は、符号化効率の低減を抑制することができるようにする情報処理装置および方法に関する。 3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドのそのポイント毎の属性情報を処理する情報処理装置であって、予測ポイントと参照ポイントに分類されたポイントのうちその参照ポイントの属性情報を用いて導出された予測ポイントの属性情報の予測値をとその予測ポイントの属性情報との差分値を導出する処理を、その参照ポイントに対して再帰的に繰り返すことによる属性情報の階層化の際に、第1の階層を第1の階層化手法を用いて階層化を行い、その第1の階層と異なる第2の階層をその第1の階層化手法と異なる第2の階層化手法を用いて階層化を行う。本開示は、例えば、情報処理装置、画像処理装置、符号化装置、復号装置、電子機器、情報処理方法、またはプログラム等に適用することができる。

Description

情報処理装置および方法
 本開示は、情報処理装置および方法に関し、特に、符号化効率の低減を抑制することができるようにした情報処理装置および方法に関する。
 従来、例えばポイントクラウド(Point cloud)のような3次元構造を表す3Dデータの符号化方法が考えられた(例えば非特許文献1参照)。ポイントクラウドのデータは、各ポイントのジオメトリデータ(位置情報とも称する)およびアトリビュートデータ(属性情報とも称する)により構成される。したがってポイントクラウドの符号化は、そのジオメトリデータとアトリビュートデータとのそれぞれについて行われる。アトリビュートデータの符号化方法として様々な方法が提案されている。例えば、Liftingという技術を用いて行うことが提案された(例えば非特許文献2参照)。また、アトリビュートデータをスケーラブルに復号することができるようにする方法も提案された(例えば、非特許文献3参照)。
R. Mekuria, Student Member IEEE, K. Blom, P. Cesar., Member, IEEE, "Design, Implementation and Evaluation of a Point Cloud Codec for Tele-Immersive Video",tcsvt_paper_submitted_february.pdf Khaled Mammou, Alexis Tourapis, Jungsun Kim, Fabrice Robinet, Valery Valentin, Yeping Su, "Lifting Scheme for Lossy Attribute Encoding in TMC1", ISO/IEC JTC1/SC29/WG11 MPEG2018/m42640, April 2018, San Diego, US Ohji Nakagami, Satoru Kuma, "[G-PCC] Spatial scalability support for G-PCC", ISO/IEC JTC1/SC29/WG11 MPEG2019/m47352, March 2019, Geneva, CH
 しかしながら、各手法にはそれぞれ特徴があり、いずれの手法も、どのような場合にも最適であるとは限らない。例えば、非特許文献3に記載の技術を適用した手法の場合、非特許文献2に記載のLiftingを適用した手法では困難であった属性情報のスケーラブルな復号を行うことができる。しかしながら、一般的に、非特許文献3に記載の技術を適用した手法の場合の方が、非特許文献2に記載のLiftingを適用した手法の場合よりも符号化効率が低減するおそれがあった。
 本開示は、このような状況に鑑みてなされたものであり、符号化効率の低減を抑制することができるようにするものである。
 本技術の一側面の情報処理装置は、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報を処理する情報処理装置であって、予測ポイントと参照ポイントに分類されたポイントのうち前記参照ポイントの前記属性情報を用いて導出された前記予測ポイントの前記属性情報の予測値と前記予測ポイントの前記属性情報との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことにより、前記属性情報の階層化を行う階層化部を備え、前記階層化部は、第1の階層を第1の階層化手法を用いて階層化を行い、前記第1の階層と異なる第2の階層を前記第1の階層化手法と異なる第2の階層化手法を用いて階層化を行う情報処理装置である。
 本技術の一側面の情報処理方法は、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、前記参照ポイントの前記属性情報を用いて前記予測ポイントの前記属性情報の予測値を導出し、前記予測ポイントの前記属性情報と前記予測値との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことによる前記属性情報の階層化の際に、複数の階層化手法を用いて、それぞれの階層化手法により互いに異なる階層を生成する情報処理方法である。
 本技術の他の側面の情報処理装置は、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報を処理する情報処理装置であって、予測ポイントと参照ポイントに分類されたポイントのうち前記参照ポイントの前記属性情報を用いて導出された前記予測ポイントの前記属性情報の予測値と前記予測ポイントの前記属性情報との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことにより階層化された前記属性情報に対して逆階層化を行う逆階層化部を備え、前記逆階層化部は、第1の階層を第1の階層化手法を用いて逆階層化を行い、前記第1の階層と異なる第2の階層を前記第1の階層化手法と異なる第2の階層化手法を用いて前記逆階層化を行う情報処理装置である。
 本技術の他の側面の情報処理方法は、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、前記参照ポイントの前記属性情報を用いて前記予測ポイントの前記属性情報の予測値を導出し、前記予測ポイントの前記属性情報と前記予測値との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことにより階層化された前記属性情報に対する逆階層化の際に、複数の階層化手法を用いて、それぞれの階層化手法により互いに異なる階層に対して前記逆階層化を行う情報処理方法である。
 本技術のさらに他の側面の情報処理装置は、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報を処理する情報処理装置であって、予測ポイントと参照ポイントに分類されたポイントのうち前記参照ポイントの前記属性情報を用いて導出された前記予測ポイントの前記属性情報の予測値と前記予測ポイントの前記属性情報との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことにより、前記属性情報の階層化を行う階層化部を備え、前記階層化部は、複数の階層の前記予測ポイントの前記予測値の導出を、互いに同一の階層の前記参照ポイントを参照して行う情報処理装置である。
 本技術のさらに、側面の情報処理方法は、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、前記参照ポイントの前記属性情報を用いて前記予測ポイントの前記属性情報の予測値を導出し、前記予測ポイントの前記属性情報と前記予測値との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことによる前記属性情報の階層化の際に、複数の階層の前記予測ポイントの前記予測値の導出を、互いに同一の階層の前記参照ポイントを参照して行う情報処理方法である。
 本技術のさらに他の側面の情報処理装置は、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報を処理する情報処理装置であって、予測ポイントと参照ポイントに分類されたポイントのうち前記参照ポイントの前記属性情報を用いて導出された前記予測ポイントの前記属性情報の予測値と前記予測ポイントの前記属性情報との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことにより階層化された前記属性情報に対して逆階層化を行う逆階層化部を備え、前記逆階層化部は、前記逆階層化の際に、複数の階層の前記予測ポイントの前記属性情報の前記予測値を、互いに同一の階層の前記参照ポイントの前記属性情報を参照して導出し、導出した前記予測値を前記差分値に加算することにより、前記予測ポイントの前記属性情報を生成する情報処理装置である。
 本技術のさらに他の側面の情報処理方法は、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、前記参照ポイントの前記属性情報を用いて前記予測ポイントの前記属性情報の予測値を導出し、前記予測ポイントの前記属性情報と前記予測値との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことにより階層化された前記属性情報に対して逆階層化を行う際に、複数の階層の前記予測ポイントの前記属性情報の前記予測値を、互いに同一の階層の前記参照ポイントの前記属性情報を参照して導出し、導出した前記予測値を前記差分値に加算することにより、前記予測ポイントの前記属性情報を生成する情報処理方法である。
 本技術の一側面の情報処理装置および方法においては、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドのそのポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、その参照ポイントの属性情報を用いて予測ポイントの属性情報の予測値を導出し、その予測ポイントの属性情報と予測値との差分値を導出する処理を、参照ポイントに対して再帰的に繰り返すことによる属性情報の階層化の際に、複数の階層化手法が用いられて、それぞれの階層化手法により互いに異なる階層が生成される。
 本技術の他の側面の情報処理装置および方法においては、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドのそのポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、その参照ポイントの属性情報を用いて予測ポイントの属性情報の予測値を導出し、その予測ポイントの属性情報と予測値との差分値を導出する処理を、その参照ポイントに対して再帰的に繰り返すことにより階層化された属性情報に対する逆階層化の際に、複数の階層化手法が用いられて、それぞれの階層化手法により互いに異なる階層に対して逆階層化が行われる。
 本技術のさらに他の側面の情報処理装置および方法においては、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドのそのポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、その参照ポイントの属性情報を用いて予測ポイントの属性情報の予測値を導出し、その予測ポイントの属性情報と予測値との差分値を導出する処理を、その参照ポイントに対して再帰的に繰り返すことによる属性情報の階層化の際に、複数の階層の予測ポイントの予測値の導出が、互いに同一の階層の参照ポイントを参照して行われる。
 本技術のさらに他の側面の情報処理装置および方法においては、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドのそのポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、その参照ポイントの属性情報を用いて予測ポイントの属性情報の予測値を導出し、その予測ポイントの属性情報と予測値との差分値を導出する処理を、その参照ポイントに対して再帰的に繰り返すことにより階層化された属性情報に対して逆階層化を行う際に、その複数の階層の予測ポイントの属性情報の予測値が、互いに同一の階層の参照ポイントの属性情報を参照して導出され、導出された予測値が差分値に加算されることにより、その予測ポイントの属性情報が生成される。
スケーラブルな復号に非対応のLiftingの様子の例を説明する図である。 スケーラブルな復号に非対応のLiftingの様子の例を説明する図である。 スケーラブルな復号に対応するLiftingの様子の例を説明する図である。 スケーラブルな復号に対応するLiftingの様子の例を説明する図である。 アトリビュートデータの階層化手法について説明する図である。 スケーラブルな復号に対応する手法とスケーラブルな復号に非対応の手法との両方のLiftingを適用する場合の様子の例を説明する図である。 スケーラブルな復号に対応するLiftingについて説明する図である。 参照関係の例を示す図である。 アトリビュートデータの階層化手法について説明する図である。 参照関係の例を示す図である。 符号化装置の主な構成例を示すブロック図である。 属性情報符号化部の主な構成例を示すブロック図である。 階層化処理部の主な構成例を示すブロック図である。 符号化処理の流れの例を説明するフローチャートである。 属性情報符号化処理の流れの例を説明するフローチャートである。 階層化処理の流れの例を説明するフローチャートである。 復号装置の主な構成例を示すブロック図である。 属性情報復号部の主な構成例を示すブロック図である。 逆階層化処理部の主な構成例を示すブロック図である。 復号処理の流れの例を説明するフローチャートである。 属性情報復号処理の流れの例を説明するフローチャートである。 逆階層化処理の流れの例を説明するフローチャートである。 スケーラブル逆階層化処理の流れの例を説明するフローチャートである。 階層化処理の流れの例を説明するフローチャートである。 逆階層化処理の流れの例を説明するフローチャートである。 コンピュータの主な構成例を示すブロック図である。
 以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
 1.階層化・逆階層化手法の切り替え
 2.参照関係の制御
 3.第1の実施の形態(符号化装置)
 4.第2の実施の形態(復号装置)
 5.第3の実施の形態(符号化装置)
 6.第4の実施の形態(復号装置)
 7.付記
 <1.階層化・逆階層化手法の切り替え>
  <技術内容・技術用語をサポートする文献等>
 本技術で開示される範囲は、実施の形態に記載されている内容だけではなく、出願当時において公知となっている以下の非特許文献に記載されている内容も含まれる。
 非特許文献1:(上述)
 非特許文献2:(上述)
 非特許文献3:(上述)
 非特許文献4:TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU(International Telecommunication Union), "Advanced video coding for generic audiovisual services", H.264, 04/2017
 非特許文献5:TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU(International Telecommunication Union), "High efficiency video coding", H.265, 12/2016
 非特許文献6:Jianle Chen, Elena Alshina, Gary J. Sullivan, Jens-Rainer, Jill Boyce, "Algorithm Description of Joint Exploration Test Model 4", JVET-G1001_v1, Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 7th Meeting: Torino, IT, 13-21 July 2017
 つまり、上述の非特許文献に記載されている内容もサポート要件を判断する際の根拠となる。例えば、非特許文献5に記載されているQuad-Tree Block Structure、非特許文献6に記載されているQTBT(Quad Tree Plus Binary Tree) Block Structureが実施の形態において直接的な記載がない場合でも、本技術の開示範囲内であり、請求の範囲のサポート要件を満たすものとする。また、例えば、パース(Parsing)、シンタクス(Syntax)、セマンティクス(Semantics)等の技術用語についても同様に、実施の形態において直接的な記載がない場合でも、本技術の開示範囲内であり、請求の範囲のサポート要件を満たすものとする。
  <ポイントクラウド>
 従来、点群の位置情報や属性情報等により3次元構造を表すポイントクラウド(Point cloud)や、頂点、エッジ、面で構成され、多角形表現を使用して3次元形状を定義するメッシュ(Mesh)等の3Dデータが存在した。
 例えばポイントクラウドの場合、立体構造物(3次元形状のオブジェクト)を多数の点の集合(点群)として表現する。つまり、ポイントクラウドのデータ(ポイントクラウドデータとも称する)は、この点群の各点のジオメトリデータ(位置情報とも称する)やアトリビュートデータ(属性情報とも称する)により構成される。アトリビュートデータは任意の情報を含むことができる。例えば、色情報、反射率情報、法線情報等がアトリビュートデータに含まれるようにしてもよい。したがってデータ構造が比較的単純であるとともに、十分に多くの点を用いることにより任意の立体構造物を十分な精度で表現することができる。
  <ボクセルを用いた位置情報の量子化>
 このようなポイントクラウドデータはそのデータ量が比較的大きいので、符号化等によるデータ量を圧縮するために、ボクセル(Voxel)を用いた符号化方法が考えられた。ボクセルは、ジオメトリデータ(位置情報)を量子化するための3次元領域である。
 つまり、ポイントクラウドを内包する3次元領域をボクセルと称する小さな3次元領域に分割し、そのボクセル毎に、ポイントを内包するか否かを示すようにする。このようにすることにより、各ポイントの位置はボクセル単位に量子化される。したがって、ポイントクラウド(Point cloud)データをこのようなボクセルのデータ(ボクセル(Voxel)データとも称する)に変換することにより、情報量の増大を抑制する(典型的には情報量を削減する)ことができる。
  <Octree>
 さらに、ジオメトリデータについて、このようなボクセル(Voxel)データを用いてOctreeを構築することが考えられた。Octreeは、ボクセルデータを木構造化したものである。このOctreeの最下位のノードの各ビットの値が、各ボクセルのポイントの有無を示す。例えば、値「1」がポイントを内包するボクセルを示し、値「0」がポイントを内包しないボクセルを示す。Octreeでは、1ノードが8つのボクセルに対応する。つまり、Octreeの各ノードは、8ビットのデータにより構成され、その8ビットが8つのボクセルのポイントの有無を示す。
 そして、Octreeの上位のノードは、そのノードに属する下位ノードに対応する8つのボクセルを1つにまとめた領域のポイントの有無を示す。つまり、下位ノードのボクセルの情報をまとめることにより上位ノードが生成される。なお、値が「0」のノード、すなわち、対応する8つのボクセルが全てポイントを内包しない場合、そのノードは削除される。
 このようにすることにより、値が「0」でないノードからなる木構造(Octree)が構築される。つまり、Octreeは、各解像度のボクセルのポイントの有無を示すことができる。Octree化して符号化することにより、位置情報は、最高解像度(最上位層)から所望の階層(解像度)まで復号することにより、その解像度のポイントクラウドデータを復元することができる。つまり、不要な階層(解像度)の情報を復号せずに、容易に任意の解像度で復号することができる。換言するに、ボクセル(解像度)のスケーラビリティを実現することができる。
 また、上述のように値が「0」のノードを省略することにより、ポイントが存在しない領域のボクセルを低解像度化することができるので、さらなる情報量の増大の抑制(典型的には情報量の削減)を行うことができる。
  <Lifting>
 これに対してアトリビュートデータ(属性情報)を符号化する際は、符号化による劣化を含めジオメトリデータ(位置情報)を既知であるものとして、ポイント間の位置関係を利用して符号化が行われる。このようなアトリビュートデータの符号化方法として、RAHT(Region Adaptive Hierarchical Transform)や、非特許文献2に記載のようなLiftingと称する変換を用いる方法が考えられた。これらの技術を適用することにより、ジオメトリデータのOctreeのように、アトリビュートデータを階層化することもできる。
 例えば非特許文献2に記載のLiftingの場合、各ポイントのアトリビュートデータは、他のポイントのアトリビュートデータを用いて導出される予測値との差分値として符号化される。その際、各ポイントが階層化され、差分値はその階層構造にしたがって導出される。
 つまり、ポイント毎のアトリビュートデータについて、各ポイントが予測ポイントと参照ポイントとに分類され、その参照ポイントのアトリビュートデータを用いて予測ポイントのアトリビュートデータの予測値が導出され、その予測ポイントのアトリビュートデータと予測値との差分値が導出される。このような処理を、参照ポイントに対して再帰的に繰り返すことにより、各ポイントのアトリビュートデータが階層化される。
 非特許文献2に記載のLiftingの場合、ジオメトリデータを用いてポイント間の距離に基づいてこの階層化が行われる。つまり、参照ポイントから所定の距離の範囲内に位置するポイントが、その参照ポイントを参照して予測値が導出される予測ポイントとして設定される。例えば、図1においてポイントP5を参照ポイントとして選択するとする。その場合、予測ポイントは、そのポイントP5を中心とする半径Rの円形領域内において探索される。この場合、ポイントP9が、その領域内に位置するので、ポイントP5を参照して予測値が導出される予測ポイント(ポイントP5を参照ポイントとする予測ポイント)として設定される。
 このような処理により、例えば、白丸で示されるポイントP7乃至ポイントP9の各差分値と、斜線模様で示されるポイントP1、ポイントP3、およびポイントP6の各差分値と、グレーの丸で示されるポイントP0、ポイントP2、ポイントP4、およびポイントP5の各差分値とが、互いに異なる階層の差分値として導出される。
 ただし、この階層構造は、ジオメトリデータの階層構造(例えばOctree)とは独立に生成されたものであり、基本的に、ジオメトリデータの階層構造とは対応しない。ポイントクラウドデータを復元するためには、ジオメトリデータとアトリビュートデータとを対応させる必要があり、そのためには、ジオメトリデータおよびアトリビュートデータを最高解像度(すなわち最下位層)まで復号する必要があった。
 例えば、図2に示されるように、ジオメトリデータ1をある解像度で復号する場合、ジオメトリデータ1Aの部分のみを復号すればよいものとする。しかしながら、同解像度のアトリビュートデータを得るためには、ジオメトリデータ1もアトリビュートデータ2も最高解像度(つまり最下位層)まで復号する必要があった。つまり、非特許文献2に記載のLiftingを適用した手法は、解像度のスケーラブルな復号に対応していない。
  <スケーラブルな復号に対応した階層化>
 これに対して非特許文献3に記載の階層化は、解像度のスケーラブルな復号に対応している。非特許文献3に記載の手法の場合、ジオメトリデータのOctreeの階層構造に一致するようにアトリビュートデータの階層化を行う。つまり、ジオメトリデータのボクセルに相当する領域内にポイントが存在する場合(そのポイントに対応するアトリビュートデータが存在する場合)、そのボクセルの1階層上位のボクセルにおいてもポイントが存在する(そのポイントに対応するアトリビュートデータが存在する)ように、参照ポイントと予測ポイントの選択を行う。つまり、ジオメトリデータのOctreeの階層構造に従って属性情報が階層化される。
 例えば説明の簡略化のため2次元で説明すると、図3においてあるボクセル10の1階層下には、ボクセル10-1乃至ボクセル10-4が形成され、ボクセル10-4の1階層下には、ボクセル10-4-1乃至ボクセル10-4-4が形成されている。ボクセル10-1には、アトリビュートデータのポイント11-1(ポイント11-1に対応するアトリビュートデータのことを示す。以下同様。)が存在する。ボクセルデータ10-2には、アトリビュートデータのポイント11-2が存在し、ボクセルデータ10-3には、アトリビュートデータのポイント11-3が存在する。ボクセル10-4-1乃至ボクセル10-4-4には、アトリビュートデータのポイント11-4-1乃至ポイント11-4-4が存在する。
 このような場合、ボクセル10-4-1乃至ボクセル10-4-4について、1階層上位のボクセル10-4にポイント(アトリビュートデータ)が1つ残るように、例えばポイント11-4-1が参照ポイントに設定され、ポイント11-4-2乃至ポイント11-4-4は予測ポイントに設定される。
 同様に、ボクセル10-1乃至ボクセル10-4について、1階層上位のボクセル10にポイントが1つ残るように、例えばポイント11-1が参照ポイントに設定され、ポイント11-2、ポイント11-3、およびポイント11-4-1が予測ポイントに設定される。
 このようにすることにより、アトリビュートデータについても、ジオメトリデータと同様の階層化を実現することができる。そして、アトリビュートデータの階層構造をジオメトリデータの階層構造と対応付けることにより、スケーラブルな復号に対応させることができる。
 例えば、図4に示されるように、ジオメトリデータ21をある解像度で復号する場合、ジオメトリデータ21Aの部分のみを復号すればよいものとする。この場合、ジオメトリデータ21とアトリビュートデータ22とで階層構造が互いに対応しているので、アトリビュートデータ22においても、そのジオメトリデータ21Aに対応するアトリビュートデータ22Aの部分のみを復号することができる。
 つまり、最下層まで復号しなくても、容易に所望の解像度のポイントクラウドデータを復元することができる。このように、非特許文献3に記載の技術を適用した手法は、解像度のスケーラブルな復号に対応する。
 しかしながら、この手法の場合、非特許文献2に記載の手法よりも、符号化効率が低減するおそれがあった。特に、ポイントが疎な状態の場合、その符号化効率の低減がより大きくなるおそれがあった。
  <階層化における階層化手法の切り替え>
 そこで、図5に示される表の一番上の段の「方法1」に記載のように、アトリビュートデータの階層化において、そのアトリビュートデータの階層化手法を中間階層において切り替えるようにしてもよい。
 例えば、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドのポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、その参照ポイントの属性情報を用いて予測ポイントの属性情報の予測値を導出し、その予測ポイントの属性情報と予測値との差分値を導出する処理を、その参照ポイントに対して再帰的に繰り返すことによる属性情報の階層化の際に、複数の階層化手法を用いて、それぞれの階層化手法により互いに異なる階層を生成するようにする。
 例えば、情報処理装置において、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、その参照ポイントの属性情報を用いて予測ポイントの属性情報の予測値を導出し、その予測ポイントの属性情報と予測値との差分値を導出する処理を、その参照ポイントに対して再帰的に繰り返すことにより、その属性情報の階層化を行う階層化部を備え、その階層化部は、複数の階層化手法を用いて階層化を行い、それぞれの階層化手法により互いに異なる階層を生成するようにしてもよい。換言するに、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドのそのポイント毎の属性情報を処理する情報処理装置において、予測ポイントと参照ポイントに分類されたポイントのうち参照ポイントの属性情報を用いて導出された予測ポイントの属性情報の予測値とその予測ポイントの属性情報との差分値を導出する処理を、その参照ポイントに対して再帰的に繰り返すことにより、その属性情報の階層化を行う階層化部を備え、その階層化部は、第1の階層を第1の階層化手法を用いて階層化を行い、その第1の階層と異なる第2の階層を第1の階層化手法と異なる第2の階層化手法を用いて階層化を行うようにしてもよい。
 このようにすることにより、複数の階層化手法を適用して階層化構造を形成することができるので、階層毎の特徴により適した手法を選択することができる。これにより、より多様なアトリビュートデータに対してより好適な手法で階層化を行うことができ、符号化効率の低減を抑制することができる。
 なお、階層化手法を切り替える回数は任意であり、1回でもよいし、複数回であってもよい。また、適用される階層化手法の数も複数であればいくつであってもよく、例えば、3以上であってもよい。また、同一の階層化手法が複数回適用されてもよい。例えば、中間階層において階層化手法A→階層化手法B→階層化手法Aのように切り替えてもよい。
 また、このように階層化手法を切り替える場合、例えば、図5に示される表の上から2段目の「方法1-1」に記載のように、スケーラブルな復号に対応した手法と、スケーラブルな復号に非対応な手法とを切り替えるようにしてもよい。換言するに、アトリビュートデータの階層構造の一部の階層をスケーラブルな復号に対応した手法により階層化するようにしてもよい。
 例えば、非特許文献3に記載の階層化手法(スケーラブルな復号に対応した手法)と、非特許文献2に記載のLifting(スケーラブルな復号に非対応な手法)とを、階層構造の中間階層において切り替えるようにしてもよい。つまり、アトリビュートデータの階層構造の一部の階層にのみ、非特許文献3に記載の階層化手法を適用するようにしてもよい。
 このようにすることにより、スケーラブルな復号を行う可能性の高い階層のみを、非特許文献3に記載の階層化手法を適用して生成し、その他の階層を非特許文献2に記載のLiftingを適用して生成することができる。これにより、全階層を非特許文献3に記載の階層化手法を適用して生成する場合よりも符号化効率の低減を抑制することができる。換言するに、符号化効率の低減を抑制しながらスケーラブルな復号に対応することができる。
 その際、例えば、図5に示される表の上から3段目の「方法1-1-1」に記載のように、所定の階層よりも上位層をスケーラブルな復号に非対応な手法により階層化し、その所定の階層以下をスケーラブルな復号に対応した手法により階層化するようにしてもよい。例えば、スケーラブルな復号に非対応の第1の階層化手法により、その第1の階層を含む所定の階層よりも上位の階層を生成し、スケーラブルな復号に対応した第2の階層化手法により、その第2の階層を含む所定の階層よりも下位の階層を生成するようにしてもよい。
 その際、例えば、図5に示される表の上から4段目の「方法1-1-1-1」に記載のように、スケーラブルな復号に非対応なLifting(非特許文献2に記載の手法)と、スケーラブルな復号に対応したLifting(非特許文献3に記載の手法)とを切り替えるようにしてもよい。
 例えば、所定の階層よりも上位層について、非特許文献2に記載のLiftingにより階層化を行い、その所定の階層以下については、非特許文献3に記載の階層化手法(スケーラブルな復号に対応したLifting)により階層化を行うようにしてもよい。
 ポイントが疎な状態になりやすい上位層においては、スケーラブルな復号に対応した手法を適用すると符号化効率が低減しやすい。また、最上位層付近の階層では、解像度が大幅に低減するため、そのような階層で復号が行われる可能性は低い。つまり、より上位層ほど、スケーラブルな復号が行われる可能性が低減する。
 そこで、上述のように、アトリビュートデータの階層構造の内、所定の階層よりも上位層においてはスケーラブルに非対応な手法を適用することにより、スケーラブルな復号に対する実質的な制限が生じるのを抑制しながら、符号化効率の低減を抑制することができる。換言するに、符号化効率の低減を抑制しながら、スケーラブルな復号に対応させることができる。
 この場合、例えば、図6に示されるように、ジオメトリデータ31をある解像度で復号する場合、ジオメトリデータ31Aの部分のみを復号すればよいものとする。この場合、ジオメトリデータ31とアトリビュートデータ32とで階層構造が互いに対応しているので、アトリビュートデータ32においても、そのジオメトリデータ31Aに対応するアトリビュートデータ32Aおよびアトリビュートデータ32Bの部分のみを復号することができる。
 つまり、最下層まで復号しなくても、容易に所望の解像度のポイントクラウドデータを復元することができる。ただし、この場合、アトリビュートデータ32Aは、スケーラブルに非対応なLiftingにより階層化されたデータである。つまりこの場合、アトリビュートデータ32は、上位層(L1段)がスケーラブルな復号に非対応なLiftingにより階層化され、それより下位の階層(L2段)がスケーラブルな復号に対応したLiftingにより階層化されている。したがって、上から0段目乃至(L1-1)段目については、スケーラブルな復号を行うことはできない(ジオメトリデータ31もアトリビュートデータ32もL1段目まで復号する必要がある)。ただし、そのような上位層は解像度が低いので、スケーラブルな復号が行われる可能性が低く、上述のように、スケーラブルな復号に対する実質的な制限が生じるのを抑制しながら、符号化効率の低減を抑制することができる。
  <切り替える手法の他の例>
 なお、階層化手法を切り替える階層は任意である。また、切り替える階層化手法はどのような手法であってもよく、上述の例(スケーラブルな復号に対応する手法とスケーラブルな復号に非対応な手法との切り替え)に限定されない。例えば、図5に示される表の上から5段目の「方法1-2」に記載のように、非特許文献2に記載のLiftingのような距離によるサンプリングを用いた階層化手法と、各ポイント(各ポイントに対応するアトリビュートデータ)をモートン順序に整列し、ポイントを等間隔にサンプリングすることによりポイントを階層化する手法とを切り替えるようにしてもよい。
 例えば、所定の階層よりも上位層に対して距離によるサンプリングを用いた階層化手法を適用し、その所定の階層以下の階層に対してモートン順序での等間隔サンプリングを用いた階層化手法を適用するようにしてもよい。このようにすることにより、上述の例の場合と同様に、符号化効率の低減を抑制することができる。
  <処理順>
 階層化において、各階層の処理順(生成順)は任意である。例えば、図5に示される表の上から6段目の「方法1-3」に記載のように、最下位層から順に階層化するようにしてもよい。例えば、1階層ずつ生成し、全階層生成後、階層を反転させる(reverseする)。例えば、生成順と逆順に階層番号を付す。このようにすることにより、最下位層から最上位層に向かう方向に各階層を生成することができる。
 階層化により、各階層において、各ポイントは参照ポイントまたは予測ポイントに分類され、さらに、その参照ポイントは、より上位層のポイントとして再び処理される。つまり、階層化により階層間の参照関係が構築される。上述のように最下位層から順に生成することにより、このような再帰的な処理が可能になるので、階層間の参照関係をより容易に構築することができる。
  <制御情報>
 例えば、図5に示される表の上から7段目の「方法1-4」に記載のように、属性情報の階層化に関する制御情報をシグナリングする(符号化側から復号側に伝送する)ようにしてもよい。
 制御情報の伝送方法は任意である。例えば、シンタクス等として規定し、ポイントクラウドデータの符号化データ(ビットストリーム)に含めて(例えばヘッダ等に記述して)伝送するようにしてもよい。また、ポイントクラウドデータの符号化データとは異なる、ポイントクラウドデータの符号化データに関連付けられたデータとして伝送するようにしてもよい。
   <scalable_enable_flag>
 制御情報の内容は任意である。例えば、中間階層においてスケーラブルな復号に対応した手法とスケーラブルな復号に非対応な手法とを切り替えることができる場合、スケーラブルな復号に対応した階層化手法が適用可能であるかを示す制御情報を復号側に伝送するようにしてもよい。その場合、この制御情報が、スケーラブルな復号に対応した階層化手法が適用可能であるかをどのように表現してもよい。
 例えば、フラグ情報としてscalable_enable_flagを伝送するようにしてもよい。scalable_enable_flagは、スケーラブルな復号に対応した階層化手法が適用可能であるかを示すフラグ情報である。この値が真(例えば「1」)の場合、スケーラブルな復号に対応した階層化手法が適用可能であることを示し、この値が偽(例えば「0」)の場合、スケーラブルな復号に対応した階層化手法が適用不可能であることを示す。例えば、このscalable_enable_flagが省略される場合、このフラグ情報の値が偽(例えば「0」)である場合と等価であるようにしてもよい。
 また、この制御情報(scalable_enable_flag)を伝送するデータ単位は任意である。例えば、ポイントクラウドデータのシーケンス毎にscalable_enable_flagを伝送するようにしてもよい。また、例えば、アトリビュートデータ毎にscalable_enable_flagを伝送するようにしてもよい。例えば、ジオメトリデータに対して複数のアトリビュートデータが存在する場合、そのアトリビュートデータ毎にscalable_enable_flagを伝送することにより、アトリビュートデータ毎にスケーラブルな復号に対応した階層化手法が適用可能であるか否かを示すことができる。つまり、例えば、一部のアトリビュートデータのみスケーラブルな復号に対応させることもできる。もちろん、これらの例以外のデータ単位毎にscalable_enable_flagを伝送するようにしてもよい。
 このような制御情報を伝送することにより、復号側において、この制御情報に基づいて、スケーラブルな復号に対応した階層化手法に対応する逆階層化を行うか否かを識別することができる。したがって、この識別をより容易に行うことができる。これにより、復号処理の負荷の増大を抑制することができる。
 例えば、scalable_enable_flagが偽のアトリビュートデータには、スケーラブルな復号に対応した階層化手法が適用されないので、スケーラブルな復号に関する処理は不要である。したがって、復号装置は、scalable_enable_flagが偽であることに基づいて、スケーラブルな復号に関する処理を全て省略することができる。例えば、後述するスケーラブルな復号に対応した階層化手法を適用する階層の範囲を示す制御情報の参照も省略することができる。また、逆階層化の際にスケーラブルな復号に対応する階層化手法を用いるか否か等判定も省略することができる。このように、復号処理の負荷の増大を抑制することができる。
   <scalable_enable_num_of_lod>
 また例えば、スケーラブルな復号に対応した階層化手法を適用する階層の範囲を示す制御情報を復号側に伝送するようにしてもよい。その場合、この制御情報が、スケーラブルな復号に対応した階層化手法を適用する階層の範囲をどのように表現してもよい。例えば、その範囲を示すようにしてもよいし、階層化手法が切り替えられる階層(範囲の境界となる階層)を示すようにしてもよいし、スケーラブルな復号に対応した階層化手法を適用しない階層の範囲を示すようにしてもよい。
 例えば、スケーラブルな復号に対応した階層化手法を適用する階層の範囲を示す場合、その範囲の上限および下限を示すようにしてもよいし、その範囲の大きさ(階層数)と基準位置(例えば開始位置、中間位置、終了位置等)の階層番号(最上位階層を0とし、1階層下に降りるごとに1ずつ増加する識別番号)とにより示すようにしてもよい。また、下限が最下位層に等しい場合や上限が最上位層に等しい場合、その範囲を下限(最下位層)または上限(最上位層)からの階層数により示すようにしてもよい。
 例えば、シンタクス要素scalable_enable_num_of_lodを伝送するようにしてもよい。scalable_enable_num_of_lodは、スケーラブルな復号に対応した階層化手法を適用する階層の範囲を示す制御情報である。その値は、スケーラブルな復号に対応した階層化手法を適用する範囲を、最下位層からの階層数で示す。つまり、scalable_enable_num_of_lod=Nとすると、そのアトリビュートデータの符号化データは、最下位層からN段目の階層までがスケーラブルな復号に対応し、(N+1)段目以上の階層は、スケーラブルな復号に非対応である。
 このような制御情報を伝送することにより、復号側は、スケーラブルな復号に対応した階層化手法がどの階層に適用されているかを、この制御情報に基づいて容易かつ正確に把握することができる。したがって、複数の階層化手法が適用された符号化データを正しく復号することができる。したがって、符号化効率の低減を抑制することができる。
   <その他>
 なお、制御情報は上述の例に限定されず、どのような情報が伝送されるようにしてもよい。また、伝送される制御情報の数は任意であり、複数の制御情報が伝送されるようにしてもよい。例えば、上述のscalable_enable_flagおよびscalable_enable_num_of_lodが伝送されるようにしてもよい。scalable_enable_flagが真の場合のみ、scalable_enable_num_of_lodが伝送されるようにしてもよい。
 いずれにしても、復号側においては、scalable_enable_flagが真の場合のみ、scalable_enable_num_of_lodが参照され、スケーラブルな復号に対応した階層化手法が適用される階層が特定される。
  <逆階層化における階層化手法の切り替え>
 以上においては符号化における処理について説明したが、復号側においても本技術を適用することができる。例えば、図5に示される表の上から8段目の「方法2」に記載のように、逆階層化において属性情報の階層化手法を中間階層において切り替える(つまり逆階層化手法を切り替える)ようにしてもよい。
 例えば、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドのポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、その参照ポイントの属性情報を用いて予測ポイントの属性情報の予測値を導出し、その予測ポイントの属性情報と予測値との差分値を導出する処理を、その参照ポイントに対して再帰的に繰り返すことにより階層化された属性情報に対する逆階層化の際に、複数の階層化手法を用いて、それぞれの階層化手法により互いに異なる階層に対して逆階層化を行うようにする。
 例えば、情報処理装置において、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドのポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、その参照ポイントの属性情報を用いて予測ポイントの属性情報の予測値を導出し、その予測ポイントの属性情報と予測値との差分値を導出する処理を、その参照ポイントに対して再帰的に繰り返すことにより階層化された属性情報に対して逆階層化を行う逆階層化部を備え、その逆階層化部は、複数の階層化手法を用いて、それぞれの階層化手法により互いに異なる階層に対して逆階層化を行うようにしてもよい。換言するに、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドのそのポイント毎の属性情報を処理する情報処理装置において、予測ポイントと参照ポイントに分類されたポイントのうち参照ポイントの属性情報を用いて導出された予測ポイントの属性情報の予測値とその予測ポイントの属性情報との差分値を導出する処理を、その参照ポイントに対して再帰的に繰り返すことにより階層化された属性情報に対して逆階層化を行う逆階層化部を備え、その逆階層化部は、第1の階層を第1の階層化手法を用いて逆階層化を行い、その第1の階層と異なる第2の階層をその第1の階層化手法と異なる第2の階層化手法を用いて逆階層化を行うようにしてもよい。
 このようにすることにより、複数の階層化手法を適用して逆階層化を行うことができるので、複数の階層化手法を適用して階層化されたアトリビュートデータを適切に逆階層化することができる。つまり、そのような複数の階層化手法が適用されて符号化された符号化データを正しく復号することができる。これにより、符号化効率の低減を抑制することができる。
 なお、階層化手法を切り替える回数は任意であり、1回でもよいし、複数回であってもよい。また、適用される階層化手法の数も複数であればいくつであってもよく、例えば、3以上であってもよい。また、同一の階層化手法が複数回適用されてもよい。例えば、中間階層において階層化手法A→階層化手法B→階層化手法Aのように切り替えてもよい。
 また、階層化の場合と同様に、例えば、図5に示される表の上から9段目の「方法2-1」に記載のように、スケーラブルな復号に対応した手法と、スケーラブルな復号に非対応な手法とを切り替えるようにしてもよい。換言するに、アトリビュートデータの階層構造の一部の階層をスケーラブルな復号に対応した手法により逆階層化するようにしてもよい。
 例えば、非特許文献3に記載の階層化手法(スケーラブルな復号に対応した手法)と、非特許文献2に記載のLifting(スケーラブルな復号に非対応な手法)とを、階層構造の中間階層において切り替えるようにしてもよい。つまり、アトリビュートデータの階層構造の一部の階層に対する逆階層化にのみ、非特許文献3に記載の階層化手法を適用するようにしてもよい。
 このようにすることにより、符号化効率の低減を抑制しながらスケーラブルな復号に対応することができる。
 その際、例えば、図5に示される表の上から10段目の「方法2-1-1」に記載のように、所定の階層よりも上位層をスケーラブルな復号に非対応な手法により逆階層化し、その所定の階層以下をスケーラブルな復号に対応した手法により逆階層化するようにしてもよい。例えば、スケーラブルな復号に非対応の第1の階層化手法により、その第1の階層を含む所定の階層よりも上位の階層に対して逆階層化を行い、スケーラブルな復号に対応した第2の階層化手法により、その第2の階層を含む所定の階層よりも下位の階層に対して逆階層化を行うようにしてもよい。
 その際、例えば、図5に示される表の上から11段目の「方法2-1-1-1」に記載のように、スケーラブルな復号に非対応なLifting(非特許文献2に記載の手法)と、スケーラブルな復号に対応したLifting(非特許文献3に記載の手法)とを切り替えるようにしてもよい。
 例えば、所定の階層よりも上位層について、非特許文献2に記載のLiftingにより逆階層化を行い、その所定の階層以下については、非特許文献3に記載の階層化手法(スケーラブルな復号に対応したLifting)により逆階層化を行うようにしてもよい。
 このようにすることにより、スケーラブルな復号に対する実質的な制限が生じるのを抑制しながら、符号化効率の低減を抑制することができる。換言するに、符号化効率の低減を抑制しながら、スケーラブルな復号に対応させることができる。
  <切り替える手法の他の例>
 なお、階層化手法を切り替える階層は任意である。また、切り替える階層化手法はどのような手法であってもよく、上述の例(スケーラブルな復号に対応する手法とスケーラブルな復号に非対応な手法との切り替え)に限定されない。例えば、図5に示される表の上から12段目の「方法2-2」に記載のように、非特許文献2に記載のLiftingのような距離によるサンプリングを用いた階層化手法と、各ポイント(各ポイントに対応するアトリビュートデータ)をモートン順序に整列し、ポイントを等間隔にサンプリングすることによりポイントを階層化する手法とを切り替えるようにしてもよい。
 例えば、所定の階層よりも上位層の逆階層化に対して距離によるサンプリングを用いた階層化手法を適用し、その所定の階層以下の階層の逆階層化に対してモートン順序での等間隔サンプリングを用いた階層化手法を適用するようにしてもよい。このようにすることにより、上述の例の場合と同様に、符号化効率の低減を抑制することができる。
  <制御情報>
 例えば、図5に示される表の上から13段目の「方法2-3」に記載のように、シグナリングされた(符号化側から復号側に伝送された)アトリビュートデータに基づいて逆階層化を行う(逆階層化手法を切り替える)ようにしてもよい。
 この制御情報の内容は任意である。例えば、上述のscalable_enable_flagであってもよい。また、例えば、上述のscalable_enable_num_of_lodであってもよい。また、それらの両方であってもよい。例えば、scalable_enable_flagがスケーラブルな復号に対応した階層化手法が適用可能であることを示す場合、そのアトリビュートデータについて、scalable_enable_num_of_lodに基づいて、逆階層化手法を切り替える階層を特定するようにしてもよい。
 もちろんこれらの例以外であってもよい。このような制御情報を用いることにより、符号化の際と同様に階層化手法を切り替えることができる。したがって、複数の階層化手法が適用された符号化データを正しく復号することができる。したがって、符号化効率の低減を抑制することができる。
 <2.参照関係の制御>
  <アトリビュートデータの階層構造>
 ところで、アトリビュートデータの場合、各ポイントを参照ポイントと予測ポイントとに分類することにより階層化が行われるので、ポイントが疎な場合、最下位層までノードが形成されない場合があり得る。
 例えば、図7のAに示されるボクセル50の領域には、1つ下位の階層において、図7のBに示されるように、ボクセル50-1乃至ボクセル50-4が形成される。
 ジオメトリデータの階層化の場合、図7のAに示されるような、ボクセル50に存在する唯一のポイント51に対応して、それよりも下位層においてもノードが生成される。例えば、図7のBにおいてボクセル50-4にポイント51のノードが形成される。しかしながら、アトリビュートデータの場合、唯一のポイント51がボクセル50の階層に割り当てられると、それより下位のボクセルにノードを割り当てることができない。
 したがって、アトリビュートデータの場合、ある階層のポイントがその階層よりも上位の階層のポイントよりも少なくなる場合があり得る。例えば図8のAにアトリビュートデータの階層構造の例を示す。図8のAにおいては、LoD(Level of Detail)=0乃至LoD=3の4階層の例が示されている。各階層において丸はポイントを示す。この例の場合、LoD=2のポイント数が6なのに対して、それより下位のLoD=3のポイント数は2である。この場合、参照関係は、この階層構造に従って形成されるので、図8のBにおいて矢印で示されるような構成になる。
 階層数や階層の幅(各階層のポイント数)は、データによって最適な値が異なる。しかしながら、一般的には、上位層から下位層に向かってポイント数が単調増加する構成が、最も符号化効率がよい。図8の例のように、ポイント数が上位層よりも下位層の方が少なくなるような構成は、符号化効率が低減するおそれがあった。
  <複数階層のノードのマージ>
 そこで、複数階層のポイント(ノード)をマージして参照関係を構築するようにしてもよい。
 例えば、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドのポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、その参照ポイントの属性情報を用いて予測ポイントの属性情報の予測値を導出し、その予測ポイントの属性情報と予測値との差分値を導出する処理を、その参照ポイントに対して再帰的に繰り返すことによる属性情報の階層化の際に、複数の階層の予測ポイントの予測値の導出を、互いに同一の階層の参照ポイントを参照して行うようにする。
 例えば、情報処理装置において、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドのポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、その参照ポイントの属性情報を用いて予測ポイントの属性情報の予測値を導出し、その予測ポイントの属性情報と予測値との差分値を導出する処理を、参照ポイントに対して再帰的に繰り返すことにより、その属性情報の階層化を行う階層化部を備え、その階層化部は、複数の階層の予測ポイントの予測値の導出を、互いに同一の階層の参照ポイントを参照して行うようにしてもよい。換言するに、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドのそのポイント毎の属性情報を処理する情報処理装置において、予測ポイントと参照ポイントに分類されたポイントのうち参照ポイントの属性情報を用いて導出された予測ポイントの属性情報の予測値とその予測ポイントの属性情報との差分値を導出する処理を、その参照ポイントに対して再帰的に繰り返すことにより、その属性情報の階層化を行う階層化部を備え、その階層化部が、その複数の階層の予測ポイントの予測値の導出を、互いに同一の階層の参照ポイントを参照して行うようにしてもよい。
 このようにすることにより、上位層から下位層に向かってポイント数が単調増加するような構成の参照関係を構築することができるので、符号化効率の低減を抑制することができる。
 例えば、図9に示される表の一番上の段の「方法3」に記載のように、属性情報の階層構造において、処理対象階層のノード(ポイント)を1つ上の階層のノード(ポイント)にマージして参照関係を構築するようにしてもよい。例えば、図8のAに示されるような階層構造を有するアトリビュートデータにおいて、LoD=3の階層のポイントを、1つ上のLoD=2の階層のポイントとマージして参照関係を構築する。このようにすることにより、図10に示されるような、上位層から下位層に向かってポイント数が単調増加するような構成の参照関係を構築することができる。
 また、例えば、図9に示される表の上から2段目の「方法3-1」に記載のように、処理対象階層のノード数がその1つ上の階層のノード数よりも多い場合に、そのような処理が行われるようにしてもよい。つまり、1つ上の階層よりもノード数が多い場合は、その処理対象階層のノードがその1つ上の階層のノードを参照するように、参照関係が構築される。このようにすることにより、より容易に、上位層から下位層に向かってポイント数が単調増加するような構成の参照関係を構築することができる。
  <制御情報>
 例えば、図9に示される表の上から3段目の「方法3-2」に記載のように、参照関係の構築に関する制御情報をシグナリングする(符号化側から復号側に伝送する)ようにしてもよい。
 制御情報の伝送方法は任意である。例えば、シンタクス等として規定し、ポイントクラウドデータの符号化データ(ビットストリーム)に含めて(例えばヘッダ等に記述して)伝送するようにしてもよい。また、ポイントクラウドデータの符号化データとは異なる、ポイントクラウドデータの符号化データに関連付けられたデータとして伝送するようにしてもよい。
   <merge_lower_lod_flag>
 制御情報の内容は任意である。例えば、他の階層とマージして参照関係が構築されたかを示す制御情報を復号側に伝送するようにしてもよい。その場合、この制御情報が、他の階層とマージして参照関係が構築されたかをどのように表現してもよい。
 例えば、フラグ情報としてmerge_lower_lod_flagを伝送するようにしてもよい。merge_lower_lod_flagは、1つ上の階層とマージして参照関係を構築するか否かを示すフラグ情報である。この値が真(例えば「1」)の場合、その階層のポイント(ノード)は、1つ上の階層とマージして参照関係を構築することを示し、この値が偽(例えば「0」)の場合、1つ上の階層とマージせずに参照関係を構築する(通常通り、1つ上の階層のポイントを参照する)ことを示す。例えば、このmerge_lower_lod_flagが省略される場合、このフラグ情報の値が偽(例えば「0」)である場合と等価であるようにしてもよい。
 なお、この制御情報(merge_lower_lod_flag)は、階層(LoD(Level of Detail))毎に設定される。
  <逆階層化>
 以上においては符号化における処理について説明したが、復号側においても本技術を適用することができる。例えば、逆階層化において、複数階層のポイント(ノード)がマージされて参照関係が構築されていることを踏まえて、複数階層の予測ポイントを、互いに同一の階層の参照ポイントを参照して復元するようにしてもよい。
 例えば、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドのポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、その参照ポイントの属性情報を用いて予測ポイントの属性情報の予測値を導出し、その予測ポイントの属性情報と予測値との差分値を導出する処理を、その参照ポイントに対して再帰的に繰り返すことにより階層化された属性情報に対して逆階層化を行う際に、複数の階層の予測ポイントの属性情報の予測値を、互いに同一の階層の参照ポイントの属性情報を参照して導出し、導出した予測値を差分値に加算することにより、その予測ポイントの属性情報を生成するようにする。
 例えば、情報処理装置において、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドのポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、その参照ポイントの属性情報を用いて予測ポイントの属性情報の予測値を導出し、その予測ポイントの属性情報と予測値との差分値を導出する処理を、その参照ポイントに対して再帰的に繰り返すことにより階層化された属性情報に対して逆階層化を行う逆階層化部を備え、その逆階層化部は、逆階層化の際に、複数の階層の予測ポイントの属性情報の予測値を、互いに同一の階層の参照ポイントの属性情報を参照して導出し、導出した予測値を差分値に加算することにより、その予測ポイントの属性情報を生成するようにしてもよい。換言するに、3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドのそのポイント毎の属性情報を処理する情報処理装置において、予測ポイントと参照ポイントに分類されたポイントのうち参照ポイントの属性情報を用いて導出された予測ポイントの属性情報の予測値とその予測ポイントの属性情報との差分値を導出する処理を、その参照ポイントに対して再帰的に繰り返すことにより階層化された属性情報に対して逆階層化を行う逆階層化部を備え、その逆階層化部は、その逆階層化の際に、複数の階層の予測ポイントの属性情報の予測値を、互いに同一の階層の参照ポイントの属性情報を参照して導出し、その導出した予測値を差分値に加算することにより、その予測ポイント属性情報を生成するようにしてもよい。
 このようにすることにより、上位層から下位層に向かってポイント数が単調増加するような構成の参照関係が構築されたアトリビュートデータを正しく逆階層化することができるので、符号化効率の低減を抑制することができる。
 例えば、図9に示される表の上から4段目の「方法4」に記載のように、逆階層化において処理対象階層のノード(ポイント)の参照先を2つ上の階層において探索してもよい。このようにすることにより、図10に示されるような、上位層から下位層に向かってポイント数が単調増加するような構成の参照関係が構築されたアトリビュートデータを正しく逆階層化することができる。したがって符号化効率の低減を抑制することができる。
  <制御情報>
 例えば、図9に示される表の上から5段目の「方法4-1」に記載のように、シグナリングされた(符号化側から復号側に伝送された)アトリビュートデータに基づいて逆階層化を行う(逆階層化手法を切り替える)ようにしてもよい。
 この制御情報の内容は任意である。例えば、上述のmerge_lower_lod_flagであってもよい。merge_lower_lod_flagは、逆階層化の際に、他の階層と同一の階層を参照するかを示す制御情報であるとも言える。つまり、逆階層の際に、このmerge_lower_lod_flagに基づいて参照先の階層を特定することができる。例えば、このmerge_lower_lod_flagに基づいて、処理対象の階層の参照先となる階層を特定し、特定した階層の参照ポイントのアトリビュートデータを参照して、処理対象の階層の予測ポイントのアトリビュートデータの予測値を導出するようにしてもよい。
 このような制御情報を用いることにより、符号化の際と同様の手法で逆階層化を行うことができる。したがって、符号化効率の低減を抑制することができる。
  <制御情報を用いない場合>
 なお、以上のような制御情報を用いずに逆階層化の手法を設定するようにしてもよい。例えば、復号側においても、処理対象の階層とその1つ上位の階層においてポイント数を比較し、1つ上位の階層と比較してポイントが十分に多くない階層について、2つ上位の階層の参照ポイントの属性情報を参照して、予測ポイントの属性情報の予測値を導出するようにしてもよい。つまり、復号側においても符号化側と同様の判定処理を行い、その判定結果に基づいて参照関係を構築し、予測値を導出するようにしてもよい。
 このようにすることにより、符号化の際と同様の手法で逆階層化を行うことができる。したがって、符号化効率の低減を抑制することができる。なお、制御情報の伝送を省略することができるので、符号化効率の低減をさらに抑制することができる。
 <3.第1の実施の形態>
  <符号化装置>
 次に、<1.階層化・逆階層化手法の切り替え>において上述した本技術を適用する装置について説明する。図11は、本技術を適用した情報処理装置の一態様である符号化装置の構成の一例を示すブロック図である。図11に示される符号化装置100は、ポイントクラウド(3Dデータ)を符号化する装置である。符号化装置100は、<1.階層化・逆階層化手法の切り替え>において上述した本技術を適用してポイントクラウドを符号化する。
 なお、図11においては、処理部やデータの流れ等の主なものを示しており、図11に示されるものが全てとは限らない。つまり、符号化装置100において、図11においてブロックとして示されていない処理部が存在したり、図11において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
 図11に示されるように符号化装置100は、位置情報符号化部101、位置情報復号部102、ポイントクラウド生成部103、属性情報符号化部104、およびビットストリーム生成部105を有する。
 位置情報符号化部101は、符号化装置100に入力されたポイントクラウド(3Dデータ)のジオメトリデータ(位置情報)を符号化する。この符号化方法は、スケーラブルな復号に対応した方法であれば任意である。例えば位置情報符号化部101は、ジオメトリデータを階層化してOctreeを生成し、そのOctreeを符号化する。また、例えば、ノイズ抑制(デノイズ)のためのフィルタリングや量子化等の処理が行われるようにしてもよい。位置情報符号化部101は、生成したジオメトリデータの符号化データを位置情報復号部102およびビットストリーム生成部105に供給する。
 位置情報復号部102は、位置情報符号化部101から供給されるジオメトリデータの符号化データを取得し、その符号化データを復号する。この復号方法は、位置情報符号化部101による符号化に対応する方法であれば任意である。例えば、デノイズのためのフィルタリングや逆量子化等の処理が行われるようにしてもよい。位置情報復号部102は、生成したジオメトリデータ(復号結果)をポイントクラウド生成部103に供給する。
 ポイントクラウド生成部103は、符号化装置100に入力されるポイントクラウドのアトリビュートデータ(属性情報)と、位置情報復号部102から供給されるジオメトリデータ(復号結果)を取得する。ポイントクラウド生成部103は、アトリビュートデータをジオメトリデータ(復号結果)に合わせる処理(リカラー処理)を行う。ポイントクラウド生成部103は、ジオメトリデータ(復号結果)に対応させたアトリビュートデータを属性情報符号化部104に供給する。
 属性情報符号化部104は、ポイントクラウド生成部103から供給されるジオメトリデータ(復号結果)およびアトリビュートデータを取得する。属性情報符号化部104は、そのジオメトリデータ(復号結果)を用いて、アトリビュートデータを符号化し、アトリビュートデータの符号化データを生成する。
 その際、属性情報符号化部104は、<1.階層化・逆階層化手法の切り替え>において上述した本技術を適用し、アトリビュートデータを符号化する。例えば、属性情報符号化部104は、アトリビュートデータの階層化において、そのアトリビュートデータの階層化手法を中間階層において切り替える。属性情報符号化部104は、生成したアトリビュートデータの符号化データをビットストリーム生成部105に供給する。
 ビットストリーム生成部105は、位置情報符号化部101から供給される位置情報の符号化データを取得する。また、ビットストリーム生成部105は、属性情報符号化部104から供給される属性情報の符号化データを取得する。ビットストリーム生成部105は、これらの符号化データを含むビットストリームを生成する。ビットストリーム生成部105は、生成したビットストリームを符号化装置100の外部に出力する。
 このような構成とすることにより、符号化装置100は、複数の階層化手法を適用してアトリビュートデータの階層化構造を形成することができる。これにより、より多様なアトリビュートデータに対してより好適な手法で階層化を行うことができ、符号化効率の低減を抑制することができる。
 なお、符号化装置100のこれらの処理部(位置情報符号化部101乃至ビットストリーム生成部105)は、それぞれ、任意の構成を有する。例えば、各処理部が、上述の処理を実現する論理回路により構成されるようにしてもよい。また、各処理部が、例えばCPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)等を有し、それらを用いてプログラムを実行することにより、上述の処理を実現するようにしてもよい。もちろん、各処理部が、その両方の構成を有し、上述の処理の一部を論理回路により実現し、他を、プログラムを実行することにより実現するようにしてもよい。各処理部の構成は互いに独立していてもよく、例えば、一部の処理部が上述の処理の一部を論理回路により実現し、他の一部の処理部がプログラムを実行することにより上述の処理を実現し、さらに他の処理部が論理回路とプログラムの実行の両方により上述の処理を実現するようにしてもよい。
  <属性情報符号化部>
 図12は、属性情報符号化部104(図11)の主な構成例を示すブロック図である。なお、図12においては、処理部やデータの流れ等の主なものを示しており、図12に示されるものが全てとは限らない。つまり、属性情報符号化部104において、図12においてブロックとして示されていない処理部が存在したり、図12において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
 図12に示されるよう属性情報符号化部104は、階層化処理部111、量子化部112、および符号化部113を有する。
 階層化処理部111は、アトリビュートデータの階層化に関する処理を行う。例えば、階層化処理部111は、ポイントクラウド生成部103から供給されるアトリビュートデータやジオメトリデータ(復号結果)を取得する。階層化処理部111は、そのジオメトリデータを用いてアトリビュートデータを階層化する。その際、階層化処理部111は、<1.階層化・逆階層化手法の切り替え>において上述した本技術を適用して階層化を行う。例えば、階層化処理部111は、アトリビュートデータの階層化において、そのアトリビュートデータの階層化手法を中間階層において切り替える。換言するに、階層化処理部111は、複数の階層化手法を用いてアトリビュートデータの階層化を行い、それぞれの階層化手法により互いに異なる階層を生成する。階層化処理部111は、階層化したアトリビュートデータ(差分値)を量子化部112に供給する。
 その際、階層化処理部111は、階層化に関する制御情報も生成する。階層化処理部111は、生成した制御情報も、アトリビュートデータ(差分値)とともに量子化部112に供給する。
 量子化部112は、階層化処理部111から供給されるアトリビュートデータ(差分値)や制御情報を取得する。量子化部112は、そのアトリビュートデータ(差分値)を量子化する。この量子化の方法は任意である。量子化部112は、その量子化されたアトリビュートデータ(差分値)や制御情報を、符号化部113に供給する。
 符号化部113は、量子化部112から供給される、量子化されたアトリビュートデータ(差分値)や制御情報を取得する。符号化部113は、その量子化されたアトリビュートデータ(差分値)を符号化し、アトリビュートデータの符号化データを生成する。この符号化方法は任意である。また、符号化部113は、生成した符号化データに、制御情報を含める。換言するに、制御情報を含むアトリビュートデータの符号化データを生成する。符号化部113は、生成した符号化データをビットストリーム生成部105に供給する。
 以上のように階層化を行うことにより、属性情報符号化部104は、複数の階層化手法を適用してアトリビュートデータの階層化構造を形成することができる。これにより、より多様なアトリビュートデータに対してより好適な手法で階層化を行うことができ、符号化効率の低減を抑制することができる。
 なお、これらの処理部(階層化処理部111乃至符号化部113)は、任意の構成を有する。例えば、各処理部が、上述の処理を実現する論理回路により構成されるようにしてもよい。また、各処理部が、例えばCPU、ROM、RAM等を有し、それらを用いてプログラムを実行することにより、上述の処理を実現するようにしてもよい。もちろん、各処理部が、その両方の構成を有し、上述の処理の一部を論理回路により実現し、他を、プログラムを実行することにより実現するようにしてもよい。各処理部の構成は互いに独立していてもよく、例えば、一部の処理部が上述の処理の一部を論理回路により実現し、他の一部の処理部がプログラムを実行することにより上述の処理を実現し、さらに他の処理部が論理回路とプログラムの実行の両方により上述の処理を実現するようにしてもよい。
  <階層化処理部>
 図13は、階層化処理部111(図12)の主な構成例を示すブロック図である。なお、図13においては、処理部やデータの流れ等の主なものを示しており、図13に示されるものが全てとは限らない。つまり、階層化処理部111において、図13においてブロックとして示されていない処理部が存在したり、図13において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
 なお、ここでは、階層化処理部111が、スケーラブルな復号に対応した階層化手法と、スケーラブルな復号に非対応な階層化手法とを中間階層において切り替えるものとして説明する。図13に示されるよう階層化処理部111は、制御部121、スケーラブル対応階層化処理部122、スケーラブル非対応階層化処理部123、反転部124、および重み付け部125を有する。
 制御部121は、階層化の制御に関する処理を行う。例えば、制御部121は、ポイントクラウド生成部103から供給されるアトリビュートデータやジオメトリデータ(復号結果)を取得する。制御部121は、取得したアトリビュートデータやジオメトリデータ(復号結果)をスケーラブル対応階層化処理部122に供給する。
 また、制御部121は、スケーラブル対応階層化処理部122やスケーラブル非対応階層化処理部123を制御し、階層化を実行させる。例えば、制御部121は、<1.階層化・逆階層化手法の切り替え>において上述した本技術を適用して階層化を行わせる。つまり、例えば、制御部121は、スケーラブル対応階層化処理部122若しくはスケーラブル非対応階層化処理部123、またはその両方を駆動させ、それぞれの階層化手法による階層化を行わせる。
 また、制御部121は、そのアトリビュートデータの階層化に関する制御情報を生成し、その制御情報を量子化部112に供給する。
 スケーラブル対応階層化処理部122は、スケーラブルな復号に対応する手法(例えば、非特許文献3に記載の階層化手法)によるアトリビュートデータの階層化に関する処理を行う。例えば、スケーラブル対応階層化処理部122は、制御部121から供給されるアトリビュートデータやジオメトリデータ(復号結果)を取得する。
 スケーラブル対応階層化処理部122は、制御部121の制御にしたがって、取得したアトリビュートデータを、取得したジオメトリデータを用いて、スケーラブルな復号に対応する手法で階層化する。例えば、スケーラブル対応階層化処理部122は、スケーラブルな復号に対応する手法を用い、制御部121により指定された階層(例えば、処理の実行を許可された階層、処理を禁止されていない階層でもよい)を生成する。
 スケーラブル対応階層化処理部122は、生成した階層のアトリビュートデータ、階層化されていないアトリビュートデータ、およびジオメトリデータ等をスケーラブル非対応階層化処理部123に供給する。
 なお、制御部121により階層化が許可されない場合、スケーラブル対応階層化処理部122は、階層化を省略することができる。その場合、スケーラブル対応階層化処理部122は、取得したアトリビュートデータおよびジオメトリデータを全てスケーラブル非対応階層化処理部123に供給する。
 スケーラブル非対応階層化処理部123は、スケーラブルな復号に非対応な手法(例えば、非特許文献2に記載のLifting)によるアトリビュートデータの階層化に関する処理を行う。例えば、スケーラブル非対応階層化処理部123は、スケーラブル対応階層化処理部122から供給されるアトリビュートデータやジオメトリデータ(復号結果)等を取得する。
 スケーラブル非対応階層化処理部123は、制御部121の制御にしたがって、階層化されていないアトリビュートデータを、取得したジオメトリデータを用いて、スケーラブルな復号に非対応な手法で階層化する。例えば、スケーラブル非対応階層化処理部123は、スケーラブルな復号に非対応な手法を用い、制御部121により指定された階層(例えば、処理の実行を許可された階層、処理を禁止されていない階層でもよい)を生成する。
 このようなスケーラブル対応階層化処理部122およびスケーラブル非対応階層化処理部123による階層化により、アトリビュートデータの全階層が生成される(全て階層化される)。
 スケーラブル非対応階層化処理部123は、階層化されたアトリビュートデータを反転部124に供給する。
 なお、制御部121により階層化が許可されない場合、スケーラブル非対応階層化処理部123は、階層化を省略することができる。その場合、取得したアトリビュートデータは全て階層化されており、スケーラブル対応階層化処理部122は、そのアトリビュートデータを反転部124に供給する。
 反転部124は、階層の反転に関する処理を行う。例えば、反転部124は、スケーラブル非対応階層化処理部123から供給される、階層化されたアトリビュートデータを取得する。このアトリビュートデータは、各階層の情報が、その生成順に階層化されている。
 反転部124は、そのアトリビュートデータの階層を反転させる。例えば、反転部124は、アトリビュートデータの各階層に対して、その生成順と逆順に階層番号(最上位層が0、1階層下がる毎に値が1ずつインクリメントされ、最下位層が最大値となる階層を識別するための番号)を付し、生成順が最下位層から最上位層に向かう順となるようにする。
 反転部124は、階層を反転させたアトリビュートデータを重み付け部125に供給する。
 重み付け部125は、重み付けに関する処理を行う。例えば、重み付け部125は、反転部124から供給されるアトリビュートデータを取得する。重み付け部125は、取得したアトリビュートデータの重み値を導出する。この重み値の導出方法は任意である。スケーラブル対応階層化処理部122により生成された階層と、スケーラブル非対応階層化処理部123により生成された階層とで重み値の導出方法を変えてもよい。
 重み付け部125は、アトリビュートデータ(差分値)と導出した重み値とを量子化部112(図12)に供給する。また、重み付け部125は、導出した重み値を制御情報として量子化部112に供給し、復号側に伝送させるようにしてもよい。
 制御部121が、スケーラブル対応階層化処理部122およびスケーラブル非対応階層化処理部123を制御し、<1.階層化・逆階層化手法の切り替え>において上述したように、アトリビュートデータの階層化手法を中間階層において切り替える。このようにすることにより、階層化処理部111は、複数の階層化手法を適用してアトリビュートデータの階層化構造を形成することができる。これにより、より多様なアトリビュートデータに対してより好適な手法で階層化を行うことができ、符号化効率の低減を抑制することができる。
 なお、これらの処理部(制御部121乃至重み付け部125)は、任意の構成を有する。例えば、各処理部が、上述の処理を実現する論理回路により構成されるようにしてもよい。また、各処理部が、例えばCPU、ROM、RAM等を有し、それらを用いてプログラムを実行することにより、上述の処理を実現するようにしてもよい。もちろん、各処理部が、その両方の構成を有し、上述の処理の一部を論理回路により実現し、他を、プログラムを実行することにより実現するようにしてもよい。各処理部の構成は互いに独立していてもよく、例えば、一部の処理部が上述の処理の一部を論理回路により実現し、他の一部の処理部がプログラムを実行することにより上述の処理を実現し、さらに他の処理部が論理回路とプログラムの実行の両方により上述の処理を実現するようにしてもよい。
  <符号化処理の流れ>
 次に、この符号化装置100により実行される処理について説明する。符号化装置100は、符号化処理を実行することによりポイントクラウドのデータを符号化する。この符号化処理の流れの例を、図14のフローチャートを参照して説明する。
 符号化処理が開始されると、符号化装置100の位置情報符号化部101は、ステップS101において、入力されたポイントクラウドのジオメトリデータ(位置情報)を符号化し、ジオメトリデータの符号化データを生成する。
 ステップS102において、位置情報復号部102は、ステップS101において生成されたジオメトリデータの符号化データを復号し、位置情報を生成する。
 ステップS103において、ポイントクラウド生成部103は、入力されたポイントクラウドのアトリビュートデータ(属性情報)と、ステップS102において生成されたジオメトリデータ(復号結果)とを用いて、リカラー処理を行い、アトリビュートデータをジオメトリデータに対応させる。
 ステップS104において、属性情報符号化部104は、属性情報符号化処理を実行することにより、ステップS103においてリカラー処理されたアトリビュートデータを符号化し、アトリビュートデータの符号化データを生成する。その際、属性情報符号化部104は、<1.階層化・逆階層化手法の切り替え>において上述した本技術を適用して処理を行う。例えば、属性情報符号化部104は、アトリビュートデータの階層化において、そのアトリビュートデータの階層化手法を中間階層において切り替える。属性情報符号化処理の詳細については後述する。
 ステップS105において、ビットストリーム生成部105は、ステップS101において生成されたジオメトリデータの符号化データと、ステップS104において生成されたアトリビュートデータの符号化データとを含むビットストリームを生成し、出力する。
 ステップS105の処理が終了すると符号化処理が終了する。
 このように各ステップの処理を行うことにより、符号化装置100は、複数の階層化手法を適用してアトリビュートデータの階層化構造を形成することができる。これにより、より多様なアトリビュートデータに対してより好適な手法で階層化を行うことができ、符号化効率の低減を抑制することができる。
  <属性情報符号化処理の流れ>
 次に、図14のステップS104において実行される属性情報符号化処理の流れの例を、図15のフローチャートを参照して説明する。
 属性情報符号化処理が開始されると、属性情報符号化部104の階層化処理部111は、ステップS111において、階層化処理を実行することによりアトリビュートデータを階層化し、各ポイントのアトリビュートデータの差分値を導出する。その際、階層化処理部111は、<1.階層化・逆階層化手法の切り替え>において上述した本技術を適用して階層化を行う。例えば、階層化処理部111は、アトリビュートデータの階層化手法を中間階層において切り替える。階層化処理の詳細については後述する。
 ステップS112において、量子化部112は、ステップS111において導出された各差分値を量子化する。
 ステップS113において、符号化部113は、ステップS112において量子化された差分値を符号化し、アトリビュートデータの符号化データを生成する。
 ステップS113の処理が終了すると属性情報符号化処理が終了し、処理は図14に戻る。
 このように各ステップの処理を行うことにより、属性情報符号化部104は、複数の階層化手法を適用してアトリビュートデータの階層化構造を形成することができる。これにより、より多様なアトリビュートデータに対してより好適な手法で階層化を行うことができ、符号化効率の低減を抑制することができる。
  <階層化処理の流れ>
 次に、図16のフローチャートを参照して、図15のステップS111において実行される階層化処理の流れの例を説明する。
 階層化処理が開始されると、階層化処理部111の制御部121は、ステップS121において、スケーラブルな復号に対応する手法の適用範囲を設定する。制御部121は、その設定に基づいて、階層化を制御する。
 ステップS122において、スケーラブル対応階層化処理部122は、ステップS121において設定されたスケーラブルな復号に対応する手法の適用範囲内の階層を、スケーラブルな復号に対応する手法により生成する。つまり、スケーラブル対応階層化処理部122は、スケーラブルな復号を行うことができるように符号化する各階層について、スケーラブルな復号に対応する手法を用いて参照ポイントと予測ポイントを設定し、参照ポイントのアトリビュートデータを用いて予測ポイントのアトリビュートデータの予測値を導出し、その予測ポイントのアトリビュートデータと予測値との差分値を導出する。
 ステップS123において、スケーラブル非対応階層化処理部123は、ステップS122において生成されなかった階層、すなわち、ステップS121において設定されたスケーラブルな復号に対応する手法の適用範囲外の階層を、スケーラブルな復号に非対応な手法により生成する。つまり、スケーラブル非対応階層化処理部123は、スケーラブルな復号を行うことができないように符号化する各階層について、スケーラブルな復号に非対応な手法を用いて参照ポイントと予測ポイントを設定し、参照ポイントのアトリビュートデータを用いて予測ポイントのアトリビュートデータの予測値を導出し、その予測ポイントのアトリビュートデータと予測値との差分値を導出する。
 ステップS122およびステップS123の処理により、アトリビュートデータの全階層が生成されると、反転部124は、ステップS124において、生成されたアトリビュートデータの階層を反転し、各階層に、生成順と逆向きに階層番号を付す。
 ステップS125において、重み付け部125は、各階層のアトリビュートデータについて重み値を導出する。
 ステップS126において、制御部121は、アトリビュートデータの階層化に関する制御情報を生成し、それを量子化部112に供給し、復号側に伝送させる。
 ステップS126の処理が終了すると処理は図15に戻る。
 このように各ステップの処理を行うことにより、階層化処理部111は、複数の階層化手法を適用してアトリビュートデータの階層化構造を形成することができる。これにより、より多様なアトリビュートデータに対してより好適な手法で階層化を行うことができ、符号化効率の低減を抑制することができる。
 <4.第2の実施の形態>
  <復号装置>
 次に、<1.階層化・逆階層化手法の切り替え>において上述した本技術を適用する装置の他の例について説明する。図17は、本技術を適用した情報処理装置の一態様である復号装置の構成の一例を示すブロック図である。図17に示される復号装置200は、ポイントクラウド(3Dデータ)の符号化データを復号する装置である。復号装置200は、<1.階層化・逆階層化手法の切り替え>において上述した本技術を適用してポイントクラウドの符号化データを復号する。
 なお、図17においては、処理部やデータの流れ等の主なものを示しており、図17に示されるものが全てとは限らない。つまり、復号装置200において、図17においてブロックとして示されていない処理部が存在したり、図17において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
 図17に示されるように復号装置200は、復号対象LoD深度設定部201、符号化データ抽出部202、位置情報復号部203、属性情報復号部204、およびポイントクラウド生成部205を有する。
 復号対象LoD深度設定部201は、復号対象とする階層(LoD)の深度の設定に関する処理を行う。例えば、復号対象LoD深度設定部201は、符号化データ抽出部202に保持されているポイントクラウドの符号化データについて、どの階層まで復号するかを設定する。この復号対象とする階層深度設定の方法は任意である。
 例えば、復号対象LoD深度設定部201が、ユーザやアプリケーション等の外部からの階層深度に関する指示に基づいて設定するようにしてもよい。また、復号対象LoD深度設定部201が、出力画像等、任意の情報に基づいて復号対象とする階層深度を求め、設定するようにしてもよい。
 例えば、復号対象LoD深度設定部201が、ポイントクラウドから生成する2次元画像の視点位置、方向、画角、視点の動き(移動、パン、チルト、ズーム)等に基づいて、復号対象とする階層深度を設定するようにしてもよい。
 なお、この復号対象とする階層深度設定のデータ単位は任意である。例えば、復号対象LoD深度設定部201は、ポイントクラウド全体について階層深度を設定することもできるし、オブジェクト毎に階層深度を設定することもできるし、オブジェクト内の部分領域毎に階層深度を設定することもできる。もちろん、これらの例以外のデータ単位で階層深度を設定することもできる。
 符号化データ抽出部202は、復号装置200に入力されるビットストリームを取得し、保持する。符号化データ抽出部202は、最上位から復号対象LoD深度設定部201により指定された階層までのジオメトリデータ(位置情報)およびアトリビュートデータ(属性情報)の符号化データを、その保持しているビットストリームから抽出する。符号化データ抽出部202は、抽出したジオメトリデータの符号化データを位置情報復号部203に供給する。符号化データ抽出部202は、抽出したアトリビュートデータの符号化データを属性情報復号部204に供給する。
 位置情報復号部203は、符号化データ抽出部202から供給されるジオメトリデータの符号化データを取得する。位置情報復号部203は、そのジオメトリデータの符号化データを復号し、ジオメトリデータ(復号結果)を生成する。この復号方法は、符号化装置100の位置情報復号部102の場合と同様の方法であれば任意である。位置情報復号部203は、生成したジオメトリデータ(復号結果)を、属性情報復号部204およびポイントクラウド生成部205に供給する。
 属性情報復号部204は、符号化データ抽出部202から供給されるアトリビュートデータの符号化データを取得する。属性情報復号部204は、位置情報復号部203から供給されるジオメトリデータ(復号結果)を取得する。属性情報復号部404は、その位置情報(復号結果)を用いて、<1.階層化・逆階層化手法の切り替え>において上述した本技術を適用した方法によりアトリビュートデータの符号化データを復号し、アトリビュートデータ(復号結果)を生成する。例えば、属性情報復号部204は、アトリビュートデータの逆階層化手法を中間階層において切り替える。属性情報復号部204は、生成したアトリビュートデータ(復号結果)をポイントクラウド生成部405に供給する。
 ポイントクラウド生成部205は、位置情報復号部203から供給されるジオメトリデータ(復号結果)を取得する。ポイントクラウド生成部205は、属性情報復号部204から供給されるアトリビュートデータ(復号結果)を取得する。ポイントクラウド生成部205は、そのジオメトリデータ(復号結果)およびアトリビュートデータ(復号結果)を用いて、ポイントクラウド(復号結果)を生成する。ポイントクラウド生成部205は、生成したポイントクラウド(復号結果)のデータを復号装置200の外部に出力する。
 このような構成とすることにより、復号装置200は、複数の階層化手法を適用して逆階層化を行うことができるので、複数の階層化手法を適用して階層化されたアトリビュートデータを正しく逆階層化することができる。つまり、そのような複数の階層化手法が適用されて符号化された符号化データを正しく復号することができる。これにより、符号化効率の低減を抑制することができる。
 なお、これらの処理部(復号対象LoD深度設定部201乃至ポイントクラウド生成部205)は、任意の構成を有する。例えば、各処理部が、上述の処理を実現する論理回路により構成されるようにしてもよい。また、各処理部が、例えばCPU、ROM、RAM等を有し、それらを用いてプログラムを実行することにより、上述の処理を実現するようにしてもよい。もちろん、各処理部が、その両方の構成を有し、上述の処理の一部を論理回路により実現し、他を、プログラムを実行することにより実現するようにしてもよい。各処理部の構成は互いに独立していてもよく、例えば、一部の処理部が上述の処理の一部を論理回路により実現し、他の一部の処理部がプログラムを実行することにより上述の処理を実現し、さらに他の処理部が論理回路とプログラムの実行の両方により上述の処理を実現するようにしてもよい。
  <属性情報復号部>
 図18は、属性情報復号部204(図17)の主な構成例を示すブロック図である。なお、図18においては、処理部やデータの流れ等の主なものを示しており、図18に示されるものが全てとは限らない。つまり、属性情報復号部204において、図18においてブロックとして示されていない処理部が存在したり、図18において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
 図18に示されるよう属性情報復号部204は、復号部211、逆量子化部212、および逆階層化処理部213を有する。
 復号部211は、アトリビュートデータの符号化データの復号に関する処理を行う。例えば、復号部211は、属性情報復号部204に供給されるアトリビュートデータの符号化データを取得する。
 復号部211は、そのアトリビュートデータの符号化データを復号し、アトリビュートデータ(復号結果)を生成する。この復号方法は、符号化装置100の符号化部113(図12)による符号化方法に対応する方法であれば任意である。また、生成したアトリビュートデータ(復号結果)は、符号化前のアトリビュートデータに対応し、第1の実施の形態において説明したように、アトリビュートデータとその予測値との差分値であり、量子化されている。復号部211は、生成したアトリビュートデータ(復号結果)を逆量子化部212に供給する。
 なお、アトリビュートデータの符号化データに重み値に関する制御情報やアトリビュートデータの階層化に関する制御情報が含まれている場合、復号部211は、その制御情報も逆量子化部212に供給する。
 逆量子化部212は、アトリビュートデータの逆量子化に関する処理を行う。例えば、逆量子化部212は、復号部211から供給されるアトリビュートデータ(復号結果)や制御情報を取得する。
 逆量子化部212は、そのアトリビュートデータ(復号結果)を逆量子化する。その際、復号部211から重み値に関する制御情報が供給される場合、逆量子化部212は、その制御情報も取得し、その制御情報に基づいて(その制御情報に基づいて導出される重み値を用いて)アトリビュートデータ(復号結果)の逆量子化を行う。
 また、逆量子化部212は、復号部211からアトリビュートデータの階層化に関する制御情報が供給される場合、その制御情報も取得する。
 逆量子化部212は、逆量子化したアトリビュートデータ(復号結果)を逆階層化処理部213に供給する。また、復号部211からアトリビュートデータの階層化に関する制御情報を取得した場合、逆量子化部212は、その制御情報も逆階層化処理部213に供給する。
 逆階層化処理部213は、逆量子化部212から供給される、逆量子化されたアトリビュートデータ(復号結果)を取得する。上述したようにこのアトリビュートデータは差分値である。また、逆階層化処理部213は、位置情報復号部203から供給されるジオメトリデータ(復号結果)を取得する。逆階層化処理部213は、そのジオメトリデータを用いて、取得したアトリビュートデータ(差分値)に対して、符号化装置100の階層化処理部111(図12)による階層化の逆処理である逆階層化を行う。
 その際、逆階層化処理部213は、<1.階層化・逆階層化手法の切り替え>において上述した本技術を適用して逆階層化を行う。つまり、逆階層化処理部213は、逆階層化において属性情報の階層化手法を中間階層において切り替える(つまり逆階層化手法を切り替える)。逆階層化処理部213は、逆階層化したアトリビュートデータを復号結果としてポイントクラウド生成部205(図17)に供給する。
 以上のように逆階層化を行うことにより、属性情報復号部204は、複数の階層化手法を適用して階層化されたアトリビュートデータを正しく逆階層化することができる。つまり、そのような複数の階層化手法が適用されて符号化された符号化データを正しく復号することができる。これにより、符号化効率の低減を抑制することができる。
 なお、これらの処理部(復号部211乃至逆階層化処理部213)は、任意の構成を有する。例えば、各処理部が、上述の処理を実現する論理回路により構成されるようにしてもよい。また、各処理部が、例えばCPU、ROM、RAM等を有し、それらを用いてプログラムを実行することにより、上述の処理を実現するようにしてもよい。もちろん、各処理部が、その両方の構成を有し、上述の処理の一部を論理回路により実現し、他を、プログラムを実行することにより実現するようにしてもよい。各処理部の構成は互いに独立していてもよく、例えば、一部の処理部が上述の処理の一部を論理回路により実現し、他の一部の処理部がプログラムを実行することにより上述の処理を実現し、さらに他の処理部が論理回路とプログラムの実行の両方により上述の処理を実現するようにしてもよい。
  <階層化処理部>
 図19は、逆階層化処理部213(図18)の主な構成例を示すブロック図である。なお、図19においては、処理部やデータの流れ等の主なものを示しており、図19に示されるものが全てとは限らない。つまり、逆階層化処理部213において、図19においてブロックとして示されていない処理部が存在したり、図19において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
 なお、ここでは、逆階層化処理部213が、スケーラブルな復号に対応した逆階層化手法と、スケーラブルな復号に非対応な逆階層化手法とを中間階層において切り替えるものとして説明する。図19に示されるよう逆階層化処理部213は、制御部221、スケーラブル非対応逆階層化処理部222、およびスケーラブル対応逆階層化処理部223を有する。
 制御部221は、逆階層化の制御に関する処理を行う。例えば、制御部221は、逆量子化部212(図18)から供給される、逆量子化されたアトリビュートデータや、アトリビュートデータの逆階層化に関する制御情報を取得する。また、制御部221は、位置情報復号部203から供給されるジオメトリデータ(復号結果)も取得する。
 制御部221は、<1.階層化・逆階層化手法の切り替え>において上述した本技術を適用して、スケーラブル非対応逆階層化処理部222およびスケーラブル対応逆階層化処理部223を制御し、それらに階層化を行わせる。
 例えば、制御部221は、スケーラブルな復号に対応した階層化手法が適用可能であるかを示す制御情報(例えばscalable_enable_flag)に基づいて、取得したアトリビュートデータに対してスケーラブルな復号に対応する手法を適用するか否かを判定する。
 例えば、この制御情報によりスケーラブルな復号に対応した階層化手法が適用不可能であることが示される場合、制御部221は、アトリビュートデータやジオメトリデータをスケーラブル非対応逆階層化処理部222に供給し、そのアトリビュートデータの全ての階層をスケーラブルな復号に非対応な手法を用いて逆階層化させる。
 また例えば、この制御情報によりスケーラブルな復号に対応した階層化手法が適用可能であることが示される場合、制御部221は、スケーラブルな復号に対応した階層化手法を適用する階層の範囲を示す制御情報(例えばscalable_enable_num_of_lod)を参照する。
 また、制御部221は、その制御情報に基づいて、処理対象のアトリビュートデータを、スケーラブルな復号に非対応な手法を用いて逆階層化するか、スケーラブルな復号に非対応な手法とスケーラブルな復号に対応する手法との両方を用いて逆階層化するかを選択する。
 例えば、処理対象のアトリビュートデータの階層に、その制御情報が示すスケーラブルな復号に対応した階層化手法を適用する階層の範囲の少なくとも一部が含まれない場合、制御部221は、処理対象のアトリビュートデータやジオメトリデータ等を全てスケーラブル非対応逆階層化処理部222に供給し、そのアトリビュートデータの全階層を、スケーラブルな復号に非対応な手法により、逆階層化させる。
 また、例えば、処理対象のアトリビュートデータの階層に、その制御情報が示すスケーラブルな復号に対応した階層化手法を適用する階層の範囲の少なくとも一部が含まれる場合、制御部221は、その範囲に含まれる階層のアトリビュートデータやジオメトリデータを、スケーラブル非対応逆階層化処理部222に供給する。また、制御部221は、その範囲に含まれない階層のアトリビュートデータやジオメトリデータを、スケーラブル対応逆階層化処理部223に供給する。つまり、それぞれの逆階層化処理部にそれぞれの手法で逆階層化させる。
 スケーラブル非対応逆階層化処理部222は、制御部221から供給されたアトリビュートデータを、制御部221から供給されたジオメトリデータを用いて、スケーラブルな復号に非対応な手法で逆階層化する。スケーラブル非対応逆階層化処理部222は、逆階層化したアトリビュートデータ(非スケーラブル階層)をポイントクラウド生成部205(図17)に供給する。
 スケーラブル対応逆階層化処理部223は、制御部221から供給されたアトリビュートデータを、制御部221から供給されたジオメトリデータを用いて、スケーラブルな復号に対応する手法で逆階層化する。スケーラブル対応逆階層化処理部223は、逆階層化したアトリビュートデータ(非スケーラブル階層)をポイントクラウド生成部205(図17)に供給する。
 このように、制御部221が、スケーラブル非対応逆階層化処理部222およびスケーラブル対応逆階層化処理部223を制御し、<1.階層化・逆階層化手法の切り替え>において上述したように、アトリビュートデータの逆階層化手法を中間階層において切り替える。したがって、逆階層化処理部213は、複数の階層化手法を適用して階層化されたアトリビュートデータを正しく逆階層化することができる。つまり、そのような複数の階層化手法が適用されて符号化された符号化データを正しく復号することができる。これにより、符号化効率の低減を抑制することができる。
 なお、これらの処理部(制御部221乃至スケーラブル対応逆階層化処理部223)は、任意の構成を有する。例えば、各処理部が、上述の処理を実現する論理回路により構成されるようにしてもよい。また、各処理部が、例えばCPU、ROM、RAM等を有し、それらを用いてプログラムを実行することにより、上述の処理を実現するようにしてもよい。もちろん、各処理部が、その両方の構成を有し、上述の処理の一部を論理回路により実現し、他を、プログラムを実行することにより実現するようにしてもよい。各処理部の構成は互いに独立していてもよく、例えば、一部の処理部が上述の処理の一部を論理回路により実現し、他の一部の処理部がプログラムを実行することにより上述の処理を実現し、さらに他の処理部が論理回路とプログラムの実行の両方により上述の処理を実現するようにしてもよい。
  <復号処理の流れ>
 次に、この復号装置200により実行される処理について説明する。復号装置200は、復号処理を実行することによりポイントクラウドの符号化データを復号する。この復号処理の流れの例を、図20のフローチャートを参照して説明する。
 復号処理が開始されると、復号装置200の復号対象LoD深度設定部201は、ステップS201において、復号するLoD深度(つまり復号対象とする階層の範囲)を設定する。
 ステップS202において、符号化データ抽出部202は、ビットストリームを取得して保持し、ステップS201において設定された復号対象階層範囲と、スケーラブルな復号に対応した階層化手法を適用する階層の範囲を示す制御情報(例えばscalable_enable_num_of_lod)とに基づいて、スケーラブルな復号が可能な階層まで復号するか否かを判定する。
 復号対象階層範囲が、スケーラブルな復号に対応した階層化手法を適用する階層の範囲に重畳しており、スケーラブルの復号が可能な階層(スケーラブルの階層とも称する)まで復号すると判定された場合、処理はステップS203に進む。
 ステップS203において、符号化データ抽出部202は、復号対象階層範囲の全階層の符号化データを抽出する。ステップS203の処理が終了すると処理はステップS205に進む。
 また、ステップS202において、復号対象階層範囲が、スケーラブルな復号に対応した階層化手法を適用する階層の範囲と重畳しておらず、スケーラブルの階層まで復号しないと判定された場合、処理はステップS204に進む。
 ステップS204において、符号化データ抽出部202は、スケーラブルな復号が不可能な階層(非スケーラブルの階層とも称する)全体の符号化データを抽出する。ステップS204の処理が終了すると処理はステップS205に進む。
 ステップS205において、位置情報復号部203は、ステップS203またはステップS204において抽出されたジオメトリデータの符号化データを復号し、位置情報(復号結果)を生成する。
 ステップS206において、属性情報復号部204は、ステップS203またはステップS204において抽出されたアトリビュートデータの符号化データを復号し、属性情報(復号結果)を生成する。その際、属性情報復号部204は、<1.階層化・逆階層化手法の切り替え>において上述した本技術を適用して処理を行う。例えば、属性情報復号部204は、逆階層化において属性情報の階層化手法を中間階層において切り替える(つまり逆階層化手法を切り替える)。属性情報復号処理の詳細については後述する。
 ステップS207において、ポイントクラウド生成部205は、ステップS205において生成されたジオメトリデータ(復号結果)と、ステップS206において生成されたアトリビュートデータ(復号結果)とを用いてポイントクラウド(復号結果)を生成し、出力する。
 ステップS205の処理が終了すると、復号処理が終了する。
 このように各ステップの処理を行うことにより、復号装置200は、複数の階層化手法を適用して逆階層化を行うことができるので、複数の階層化手法を適用して階層化されたアトリビュートデータを正しく逆階層化することができる。つまり、そのような複数の階層化手法が適用されて符号化された符号化データを正しく復号することができる。これにより、符号化効率の低減を抑制することができる。
  <属性情報復号処理の流れ>
 次に、図20のステップS206において実行される属性情報復号処理の流れの例を、図21のフローチャートを参照して説明する。
 属性情報復号処理が開始されると、属性情報復号部204の復号部211は、ステップS211において、アトリビュートデータ(属性情報)の符号化データを復号し、アトリビュートデータ(復号結果)を生成する。このアトリビュートデータ(復号結果)は上述のように量子化されている。
 ステップS212において、逆量子化部212は、逆量子化処理を実行することにより、ステップS211において生成されたアトリビュートデータ(復号結果)を逆量子化する。
 ステップS213において、逆階層化処理部213は、逆階層化処理を実行することにより、ステップS212において逆量子化されたアトリビュートデータ(差分値)を逆階層化し、各ポイントのアトリビュートデータを導出する。その際、逆階層化処理部213は、<1.階層化・逆階層化手法の切り替え>において上述した本技術を適用して逆階層化を行う。例えば、逆階層化処理部213は、逆階層化において属性情報の階層化手法を中間階層において切り替える(つまり逆階層化手法を切り替える)。逆階層化処理の詳細については後述する。
 ステップS213の処理が終了すると属性情報復号処理が終了し、処理は図20に戻る。
 このように各ステップの処理を行うことにより、属性情報復号部204は、複数の階層化手法を適用して逆階層化を行うことができるので、複数の階層化手法を適用して階層化されたアトリビュートデータを正しく逆階層化することができる。つまり、そのような複数の階層化手法が適用されて符号化された符号化データを正しく復号することができる。これにより、符号化効率の低減を抑制することができる。
  <逆階層化処理の流れ>
 次に、図21のステップS213において実行される逆階層化処理の流れの例を、図22のフローチャートを参照して説明する。
 逆階層化処理が開始されると、逆階層化処理部213の制御部221は、ステップS221において、ジオメトリデータ(復号結果)を用いてアトリビュートデータ(復号結果)を階層化する。つまり、制御部221は、第1の実施の形態において説明した階層化処理と同様の処理を行い、復号対象の階層について、アトリビュートデータの階層構造とジオメトリデータの階層構造とを対応付ける。これにより、各ポイントのアトリビュートデータ(復号結果)とジオメトリデータ(復号結果)とが対応付けられる。この対応関係に基づいて以下の処理が行われる。
 ステップS222において、スケーラブル非対応逆階層化処理部222は、非スケーラブルの階層のアトリビュートデータを逆階層化する。
 ステップS223において、制御部221は、スケーラブルの階層まで復号するか否かを判定する。復号すると判定された場合、処理はステップS224に進む。
 ステップS224において、スケーラブル対応逆階層化処理部223は、スケーラブル逆階層化処理を実行し、スケーラブルの階層のアトリビュートデータを逆階層化する。このスケーラブル逆階層化処理の詳細については後述する。
 ステップS224の処理が終了すると逆階層化処理が終了し、処理は図21に戻る。
 また、ステップS223において、スケーラブルの階層まで復号しないと判定された場合、ステップS224の処理が省略され、逆階層化処理が終了し、処理は図21に戻る。
 このように各ステップの処理を行うことにより、逆階層化処理部213は、複数の階層化手法を適用して逆階層化を行うことができるので、複数の階層化手法を適用して階層化されたアトリビュートデータを正しく逆階層化することができる。つまり、そのような複数の階層化手法が適用されて符号化された符号化データを正しく復号することができる。これにより、符号化効率の低減を抑制することができる。
  <スケーラブル逆階層化処理の流れ>
 次に、図23のフローチャートを参照して、図22のステップS224において実行されるスケーラブル逆階層化処理の流れの例を説明する。
 スケーラブル逆階層化処理が開始されると、スケーラブル対応逆階層化処理部223は、ステップS231において、処理対象LoDをスケーラブルの階層の最上位LoDに設定する。
 ステップS232において、スケーラブル対応逆階層化処理部223は、処理対象LoDの解像度のジオメトリデータに基づいて、参照ポイントから予測ポイントの予測値を導出する。
 ステップS233において、スケーラブル対応逆階層化処理部223は、ステップS232において導出された予測値を、差分値に加算して、予測ポイントの属性情報を復元する。
 ステップS234において、スケーラブル対応逆階層化処理部223は、予測ポイントと参照ポイントのアトリビュートデータをマージする。
 ステップS235において、スケーラブル対応逆階層化処理部223は、処理対象LoDが復号対象階層範囲の最下位LoDであるか否かを判定する。処理対象LoDが復号対象階層範囲の最下位LoDであると判定された場合、処理はステップS236に進む。
 ステップS236において、スケーラブル対応逆階層化処理部223は、処理対象LoDを1階層下に移動する(更新する)。ステップS236の処理が終了すると、処理はステップS232に戻り、それ以降の処理を繰り返す。
 つまり、処理対象の全階層についてステップS232乃至ステップS236の各処理が実行される。
 そして、ステップS235において、処理対象LoDが復号対象階層範囲の最下位LoDに達したと判定された場合、つまり、復号対象の全ての階層が処理されたと判定された場合、スケーラブル逆階層化処理が終了し、処理は図22に戻る。
 このように各ステップの処理を行うことにより、スケーラブル対応逆階層化処理部223は、復号対象となっているスケーラブルの階層を正しく逆階層することができる。つまり、そのような複数の階層化手法が適用されて符号化された符号化データを正しく復号することができる。これにより、符号化効率の低減を抑制することができる。
 <5.第3の実施の形態>
  <符号化装置>
 次に、<2.参照関係の制御>において上述した本技術を適用する装置について説明する。この場合も、符号化装置100は、図11を参照して説明した第1の実施の形態の場合と同様の構成を有し、基本的に同様の処理を行う。ただし、属性情報符号化部104は、<2.参照関係の制御>において上述した本技術を適用し、アトリビュートデータを符号化する。例えば、属性情報符号化部104は、複数階層のポイント(ノード)をマージして参照関係を構築する。
  <属性情報符号化部>
 また、この場合も、属性情報符号化部104は、図12を参照して説明した第1の実施の形態の場合と同様の構成を有し、基本的に同様の処理を行う。ただし、階層化処理部111は、<2.参照関係の制御>において上述した本技術を適用して階層化を行う。例えば、階層化処理部111は、複数階層のポイント(ノード)をマージして参照関係を構築する。
  <階層化処理部>
 また、この場合も、階層化処理部111は、図13を参照して説明した第1の実施の形態の場合と同様の構成を有し、基本的に同様の処理を行う。ただし、この場合、階層化処理部111は、スケーラブル対応階層化処理部122とスケーラブル非対応階層化処理部123との内、少なくともいずれか一方を備えていればよい。つまり、階層化は、スケーラブルな復号に対応する手法により行われるようにしてもよいし、スケーラブルな復号に非対応な手法により行われるようにしてもよい。
 そして、制御部121は、<2.参照関係の制御>において上述した本技術を適用した手法で階層化を制御する。例えば、制御部121は、複数階層のポイント(ノード)をマージして参照関係を構築する。例えば、制御部121は、複数の階層の予測ポイントの予測値の導出を、互いに同一の階層の参照ポイントを参照して行う。例えば、制御部121は、アトリビュートデータの処理対象の階層のポイント数(ノード数)をその1つ上の階層と比較する。そして、制御部121は、処理対象の階層のポイント数が1つ上の階層よりも十分に多くない場合(予め定めた数のポイントが増えていない場合(例えば、ポイント数が低減する場合))、処理対象の階層のポイントを1つ上の階層にマージして参照関係を構築させる。
 なお、制御部121は、他の階層とマージして参照関係が構築されたかを示す制御情報(例えばmerge_lower_lod_flag)を階層毎に生成し、それを量子化部112に供給することにより、復号側に伝送させる。符号化部113は、量子化部112を介してその制御情報を取得すると、その制御情報をアトリビュートデータの符号化データに含める。
 以上のように階層化を行うことにより、階層化処理部111は、上位層から下位層に向かってポイント数が単調増加するような構成の参照関係を構築することができる。したがって、符号化装置100は、符号化効率の低減を抑制することができる。
  <符号化処理の流れ>
 次に、この場合の符号化装置100により実行される処理について説明する。この場合も符号化装置100は、図14を参照して説明した第1の実施の形態の場合と基本的に同様の流れで符号化処理を実行する。ただし、ステップS104において、属性情報符号化部104は、<2.参照関係の制御>において上述した本技術を適用して処理を行う。例えば、属性情報符号化部104は、複数階層のポイント(ノード)をマージして参照関係を構築する。
  <属性情報符号化処理の流れ>
 また、この場合も、属性情報符号化部104は、図14のステップS104において実行される属性情報符号化処理を、図15を参照して説明した第1の実施の形態の場合と基本的に同様の流れで実行する。ただし、ステップS111において、階層化処理部111は、<2.参照関係の制御>において上述した本技術を適用して処理を行う。
  <階層化処理の流れ>
 この場合の階層化処理の流れの例を、図24のフローチャートを参照して説明する。
 階層化処理が開始されると、制御部121は、ステップS301において、各階層について、1つ上の階層とノード数を比較する。
 ステップS302において、制御部121は、1つ上の階層に比べてノード数が十分に多くない(例えば、ノード数が低減する)階層のノードを、その1つ上の階層のノードに含める(マージする)。
 ステップS303において、スケーラブル対応階層化処理部122またはスケーラブル非対応階層化処理部123は、制御部121により制御されて、各階層について1つの上野階層から参照ポイントを設定する。つまり、階層間の参照関係を構築する。
 ステップS304乃至ステップS306の各処理は、ステップS124乃至ステップS126の各処理(図16)と同様に実行される。
 ステップS306の処理が終了すると階層化処理が終了し、処理は図15に戻る。
 以上のように各処理を実行することにより、階層化処理部111は、上位層から下位層に向かってポイント数が単調増加するような構成の参照関係を構築することができる。したがって、符号化装置100は、符号化効率の低減を抑制することができる。
 <6.第4の実施の形態>
  <復号装置>
 次に、<2.参照関係の制御>において上述した本技術を適用する装置の他の例について説明する。この場合も、復号装置200は、図17を参照して説明した第1の実施の形態の場合と同様の構成を有し、基本的に同様の処理を行う。ただし、属性情報復号部204は、<2.参照関係の制御>において上述した本技術を適用し、アトリビュートデータを復号する。例えば、属性情報復号部204は、逆階層化において、複数階層のポイント(ノード)がマージされて参照関係が構築されていることを踏まえて、複数階層の予測ポイントを、互いに同一の階層の参照ポイントを参照して復元する。
  <属性情報復号部>
 また、この場合も、属性情報復号部204は、図18を参照して説明した第1の実施の形態の場合と同様の構成を有し、基本的に同様の処理を行う。ただし、逆階層化処理部213は、<2.参照関係の制御>において上述した本技術を適用して階層化を行う。例えば、逆階層化処理部213は、逆階層化において、複数階層のポイント(ノード)がマージされて参照関係が構築されていることを踏まえて、複数階層の予測ポイントを、互いに同一の階層の参照ポイントを参照して復元する。
  <逆階層化処理部>
 また、この場合も、逆階層化処理部213は、図19を参照して説明した第1の実施の形態の場合と同様の構成を有し、基本的に同様の処理を行う。ただし、この場合、逆階層化処理部213は、スケーラブル非対応逆階層化処理部222とスケーラブル対応逆階層化処理部223との内、少なくともいずれか一方を備えていればよい。つまり、逆階層化は、スケーラブルな復号に対応する手法により行われるようにしてもよいし、スケーラブルな復号に非対応な手法により行われるようにしてもよい。
 そして、制御部221は、<2.参照関係の制御>において上述した本技術を適用した手法で逆階層化を制御する。例えば、制御部221は、複数階層のポイント(ノード)をマージして参照関係が構築されていることを踏まえて、複数階層の予測ポイントを、互いに同一の階層の参照ポイントを参照して復元させる。例えば、制御部221は、他の階層とマージして参照関係が構築されたかを示す制御情報(例えばmerge_lower_lod_flag)に基づいて、適宜、処理対象の階層のポイントを1つ上の階層にマージして参照関係を構築させる。
 以上のように逆階層化を行うことにより、逆階層化処理部213は、上位層から下位層に向かってポイント数が単調増加するような構成の参照関係が構築されたアトリビュートデータを正しく逆階層化することができる。したがって、復号装置200は、符号化効率の低減を抑制することができる。
  <復号処理の流れ>
 次に、この場合の復号装置200により実行される処理について説明する。この場合も復号装置200は、図20を参照して説明した第1の実施の形態の場合と基本的に同様の流れで符号化処理を実行する。ただし、ステップS206において、属性情報復号部204は、<2.参照関係の制御>において上述した本技術を適用して処理を行う。例えば、属性情報符号化部104は、複数階層のポイント(ノード)をマージして参照関係が構築されていることを踏まえて、複数階層の予測ポイントを、互いに同一の階層の参照ポイントを参照して復元させる。
  <属性情報復号処理の流れ>
 また、この場合も、属性情報復号部204は、図20のステップS206において実行される属性情報復号処理を、図21を参照して説明した第1の実施の形態の場合と基本的に同様の流れで実行する。ただし、ステップS2123において、逆階層化処理部213は、<2.参照関係の制御>において上述した本技術を適用して処理を行う。
  <階層化処理の流れ>
 この場合の階層化処理の流れの例を、図24のフローチャートを参照して説明する。
 階層化処理が開始されると、制御部221は、ステップS401において、ジオメトリデータを用いてアトリビュートデータを階層化する。
 ステップS402において、制御部221は、他の階層とマージして参照関係が構築されたかを示す制御情報(例えばmerge_lower_lod_flag)に基づいて、1つ上の階層に比べてノード数が十分に多くない階層のノードを1つ上の階層のノードに含める。
 ステップS403において、スケーラブル非対応逆階層化処理部222(またはスケーラブル対応逆階層化処理部223)は、各階層について、1つ上の階層の参照ポイントを用いて予測ポイントの予測値を導出する。
 ステップS404において、スケーラブル非対応逆階層化処理部222(またはスケーラブル対応逆階層化処理部223)は、各階層について、予測値を差分値に加算して予測ポイントの属性情報を復元する。
 ステップS405において、スケーラブル非対応逆階層化処理部222(またはスケーラブル対応逆階層化処理部223)は、各階層について、予測ポイントと参照ポイントのアトリビュートデータをマージする。
 ステップS405の処理が終了すると、逆階層化処理が終了し、処理は図21に戻る。
 以上のように各処理を実行することにより、逆階層化処理部213は、上位層から下位層に向かってポイント数が単調増加するような構成の参照関係が構築されたアトリビュートデータを正しく逆階層化することができる。したがって、復号装置200は、符号化効率の低減を抑制することができる。
 <7.付記>
  <階層化・逆階層化方法>
 以上においては、属性情報の階層化・逆階層化方法としてLiftingを例に説明したが、本技術は、属性情報を階層化する任意の技術に適用することができる。つまり、属性情報の階層化・逆階層化の方法は、Lifting以外であってもよい。
  <制御情報>
 以上の各実施の形態において説明した本技術に関する制御情報を符号化側から復号側に伝送するようにしてもよい。例えば、上述した本技術を適用することを許可(または禁止)するか否かを制御する制御情報(例えばenabled_flag)を伝送するようにしてもよい。また、例えば、上述した本技術を適用することを許可(または禁止)する範囲(例えばブロックサイズの上限若しくは下限、またはその両方、スライス、ピクチャ、シーケンス、コンポーネント、ビュー、レイヤ等)を指定する制御情報を伝送するようにしてもよい。
  <周辺・近傍>
 なお、本明細書において、「近傍」や「周辺」等の位置関係は、空間的な位置関係だけでなく、時間的な位置関係も含みうる。
  <コンピュータ>
 上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
 図26は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
 図26に示されるコンピュータ900において、CPU(Central Processing Unit)901、ROM(Read Only Memory)902、RAM(Random Access Memory)903は、バス904を介して相互に接続されている。
 バス904にはまた、入出力インタフェース910も接続されている。入出力インタフェース910には、入力部911、出力部912、記憶部913、通信部914、およびドライブ915が接続されている。
 入力部911は、例えば、キーボード、マウス、マイクロホン、タッチパネル、入力端子などよりなる。出力部912は、例えば、ディスプレイ、スピーカ、出力端子などよりなる。記憶部913は、例えば、ハードディスク、RAMディスク、不揮発性のメモリなどよりなる。通信部914は、例えば、ネットワークインタフェースよりなる。ドライブ915は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブルメディア921を駆動する。
 以上のように構成されるコンピュータでは、CPU901が、例えば、記憶部913に記憶されているプログラムを、入出力インタフェース910およびバス904を介して、RAM903にロードして実行することにより、上述した一連の処理が行われる。RAM903にはまた、CPU901が各種の処理を実行する上において必要なデータなども適宜記憶される。
 コンピュータが実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア921に記録して適用することができる。その場合、プログラムは、リムーバブルメディア921をドライブ915に装着することにより、入出力インタフェース910を介して、記憶部913にインストールすることができる。
 また、このプログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することもできる。その場合、プログラムは、通信部914で受信し、記憶部913にインストールすることができる。
 その他、このプログラムは、ROM902や記憶部913に、あらかじめインストールしておくこともできる。
  <本技術の適用対象>
 以上においては、ポイントクラウドデータの符号化・復号に本技術を適用する場合について説明したが、本技術は、これらの例に限らず、任意の規格の3Dデータの符号化・復号に対して適用することができる。つまり、上述した本技術と矛盾しない限り、符号化・復号方式等の各種処理、並びに、3Dデータやメタデータ等の各種データの仕様は任意である。また、本技術と矛盾しない限り、上述した一部の処理や仕様を省略してもよい。
 また、以上においては、本技術の適用例として符号化装置100および復号装置200について説明したが、本技術は、任意の構成に適用することができる。
 例えば、本技術は、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、およびセルラー通信による端末への配信などにおける送信機や受信機(例えばテレビジョン受像機や携帯電話機)、または、光ディスク、磁気ディスクおよびフラッシュメモリなどの媒体に画像を記録したり、これら記憶媒体から画像を再生したりする装置(例えばハードディスクレコーダやカメラ)などの、様々な電子機器に適用され得る。
 また、例えば、本技術は、システムLSI(Large Scale Integration)等としてのプロセッサ(例えばビデオプロセッサ)、複数のプロセッサ等を用いるモジュール(例えばビデオモジュール)、複数のモジュール等を用いるユニット(例えばビデオユニット)、または、ユニットにさらにその他の機能を付加したセット(例えばビデオセット)等、装置の一部の構成として実施することもできる。
 また、例えば、本技術は、複数の装置により構成されるネットワークシステムにも適用することもできる。例えば、本技術を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングとして実施するようにしてもよい。例えば、コンピュータ、AV(Audio Visual)機器、携帯型情報処理端末、IoT(Internet of Things)デバイス等の任意の端末に対して、画像(動画像)に関するサービスを提供するクラウドサービスにおいて本技術を実施するようにしてもよい。
 なお、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、全ての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、および、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
  <本技術を適用可能な分野・用途>
 本技術を適用したシステム、装置、処理部等は、例えば、交通、医療、防犯、農業、畜産業、鉱業、美容、工場、家電、気象、自然監視等、任意の分野に利用することができる。また、その用途も任意である。
  <その他>
 なお、本明細書において「フラグ」とは、複数の状態を識別するための情報であり、真(1)または偽(0)の2状態を識別する際に用いる情報だけでなく、3以上の状態を識別することが可能な情報も含まれる。したがって、この「フラグ」が取り得る値は、例えば1/0の2値であってもよいし、3値以上であってもよい。すなわち、この「フラグ」を構成するbit数は任意であり、1bitでも複数bitでもよい。また、識別情報(フラグも含む)は、その識別情報をビットストリームに含める形だけでなく、ある基準となる情報に対する識別情報の差分情報をビットストリームに含める形も想定されるため、本明細書においては、「フラグ」や「識別情報」は、その情報だけではなく、基準となる情報に対する差分情報も包含する。
 また、符号化データ(ビットストリーム)に関する各種情報(メタデータ等)は、符号化データに関連づけられていれば、どのような形態で伝送または記録されるようにしてもよい。ここで、「関連付ける」という用語は、例えば、一方のデータを処理する際に他方のデータを利用し得る(リンクさせ得る)ようにすることを意味する。つまり、互いに関連付けられたデータは、1つのデータとしてまとめられてもよいし、それぞれ個別のデータとしてもよい。例えば、符号化データ(画像)に関連付けられた情報は、その符号化データ(画像)とは別の伝送路上で伝送されるようにしてもよい。また、例えば、符号化データ(画像)に関連付けられた情報は、その符号化データ(画像)とは別の記録媒体(または同一の記録媒体の別の記録エリア)に記録されるようにしてもよい。なお、この「関連付け」は、データ全体でなく、データの一部であってもよい。例えば、画像とその画像に対応する情報とが、複数フレーム、1フレーム、またはフレーム内の一部分などの任意の単位で互いに関連付けられるようにしてもよい。
 なお、本明細書において、「合成する」、「多重化する」、「付加する」、「一体化する」、「含める」、「格納する」、「入れ込む」、「差し込む」、「挿入する」等の用語は、例えば符号化データとメタデータとを1つのデータにまとめるといった、複数の物を1つにまとめることを意味し、上述の「関連付ける」の1つの方法を意味する。
 また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
 例えば、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。
 また、例えば、上述したプログラムは、任意の装置において実行されるようにしてもよい。その場合、その装置が、必要な機能(機能ブロック等)を有し、必要な情報を得ることができるようにすればよい。
 また、例えば、1つのフローチャートの各ステップを、1つの装置が実行するようにしてもよいし、複数の装置が分担して実行するようにしてもよい。さらに、1つのステップに複数の処理が含まれる場合、その複数の処理を、1つの装置が実行するようにしてもよいし、複数の装置が分担して実行するようにしてもよい。換言するに、1つのステップに含まれる複数の処理を、複数のステップの処理として実行することもできる。逆に、複数のステップとして説明した処理を1つのステップとしてまとめて実行することもできる。
 また、例えば、コンピュータが実行するプログラムは、プログラムを記述するステップの処理が、本明細書で説明する順序に沿って時系列に実行されるようにしても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで個別に実行されるようにしても良い。つまり、矛盾が生じない限り、各ステップの処理が上述した順序と異なる順序で実行されるようにしてもよい。さらに、このプログラムを記述するステップの処理が、他のプログラムの処理と並列に実行されるようにしても良いし、他のプログラムの処理と組み合わせて実行されるようにしても良い。
 また、例えば、本技術に関する複数の技術は、矛盾が生じない限り、それぞれ独立に単体で実施することができる。もちろん、任意の複数の本技術を併用して実施することもできる。例えば、いずれかの実施の形態において説明した本技術の一部または全部を、他の実施の形態において説明した本技術の一部または全部と組み合わせて実施することもできる。また、上述した任意の本技術の一部または全部を、上述していない他の技術と併用して実施することもできる。
 なお、本技術は以下のような構成も取ることができる。
 (1) 3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、前記参照ポイントの前記属性情報を用いて前記予測ポイントの前記属性情報の予測値を導出し、前記予測ポイントの前記属性情報と前記予測値との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことにより、前記属性情報の階層化を行う階層化部を備え、
 前記階層化部は、複数の階層化手法を用いて前記階層化を行い、それぞれの階層化手法により互いに異なる階層を生成する
 情報処理装置。
 (2) 前記階層化部は、スケーラブルな復号に非対応の階層化手法により、所定の階層よりも上位の階層を生成し、スケーラブルな復号に対応した階層化手法により、前記所定の階層よりも下位の階層を生成する
 (1)に記載の情報処理装置。
 (3) 前記階層化部は、最下位層から最上位層に向かう順に各階層を生成する
 (2)に記載の情報処理装置。
 (4) 前記階層化部による前記属性情報の階層化に関する制御情報を生成する生成部と、
 前記階層化部により階層化された前記属性情報を符号化し、前記生成部により生成された前記制御情報を含む、前記属性情報の符号化データを生成する符号化部と
 をさらに備える(1)乃至(3)のいずれかに記載の情報処理装置。
 (5) 3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、前記参照ポイントの前記属性情報を用いて前記予測ポイントの前記属性情報の予測値を導出し、前記予測ポイントの前記属性情報と前記予測値との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことによる前記属性情報の階層化の際に、複数の階層化手法を用いて、それぞれの階層化手法により互いに異なる階層を生成する
 情報処理方法。
 (6) 3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、前記参照ポイントの前記属性情報を用いて前記予測ポイントの前記属性情報の予測値を導出し、前記予測ポイントの前記属性情報と前記予測値との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことにより階層化された前記属性情報に対して逆階層化を行う逆階層化部を備え、
 前記逆階層化部は、複数の階層化手法を用いて、それぞれの階層化手法により互いに異なる階層に対して前記逆階層化を行う
 情報処理装置。
 (7) 前記逆階層化部は、スケーラブルな復号に非対応の階層化手法により、所定の階層よりも上位の階層に対して前記逆階層化を行い、スケーラブルな復号に対応した階層化手法により、前記所定の階層よりも下位の階層に対して前記逆階層化を行う
 (6)に記載の情報処理装置。
 (8) 前記逆階層化部は、前記スケーラブルな復号に対応した階層化手法を適用する階層の範囲を示す第1の制御情報に基づいて前記所定の階層を特定する
 (7)に記載の情報処理装置。
 (9) 前記逆階層化部は、前記スケーラブルな復号に対応した階層化手法が適用可能であるかを示す第2の制御情報により適用可能であることが示される属性情報について、前記第1の制御情報に基づいて前記所定の階層を特定する
 (8)に記載の情報処理装置。
 (10) 前記属性情報の符号化データを復号し、前記属性情報を生成する復号部をさらに備え、
 前記逆階層化部は、前記復号部により前記符号化データが復号されて得られた前記属性情報に対して前記逆階層化を行う
 (6)乃至(9)のいずれかに記載の情報処理装置。
 (11) 3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、前記参照ポイントの前記属性情報を用いて前記予測ポイントの前記属性情報の予測値を導出し、前記予測ポイントの前記属性情報と前記予測値との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことにより階層化された前記属性情報に対する逆階層化の際に、複数の階層化手法を用いて、それぞれの階層化手法により互いに異なる階層に対して前記逆階層化を行う
 情報処理方法。
 (12) 3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、前記参照ポイントの前記属性情報を用いて前記予測ポイントの前記属性情報の予測値を導出し、前記予測ポイントの前記属性情報と前記予測値との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことにより、前記属性情報の階層化を行う階層化部を備え、
 前記階層化部は、複数の階層の前記予測ポイントの前記予測値の導出を、互いに同一の階層の前記参照ポイントを参照して行う
 情報処理装置。
 (13) 前記階層化部は、1つ上位の階層と比較して前記ポイントが十分に多くない階層の前記予測ポイントの前記予測値の算出を、2つ上位の階層の前記参照ポイントを参照して行う
 (12)に記載の情報処理装置。
 (14) 他の階層とマージして参照関係が構築されたかを示す制御情報を生成する生成部と、
 前記階層化部により階層化された前記属性情報を符号化し、前記生成部により生成された前記制御情報を含む、前記属性情報の符号化データを生成する符号化部と
 (12)または(13)に記載の情報処理装置。
 (15) 3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、前記参照ポイントの前記属性情報を用いて前記予測ポイントの前記属性情報の予測値を導出し、前記予測ポイントの前記属性情報と前記予測値との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことによる前記属性情報の階層化の際に、複数の階層の前記予測ポイントの前記予測値の導出を、互いに同一の階層の前記参照ポイントを参照して行う
 情報処理方法。
 (16) 3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、前記参照ポイントの前記属性情報を用いて前記予測ポイントの前記属性情報の予測値を導出し、前記予測ポイントの前記属性情報と前記予測値との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことにより階層化された前記属性情報に対して逆階層化を行う逆階層化部を備え、
 前記逆階層化部は、前記逆階層化の際に、複数の階層の前記予測ポイントの前記属性情報の前記予測値を、互いに同一の階層の前記参照ポイントの前記属性情報を参照して導出し、導出した前記予測値を前記差分値に加算することにより、前記予測ポイントの前記属性情報を生成する
 情報処理装置。
 (17) 前記逆階層化部は、前記逆階層化の際に、他の階層と同一の階層を参照するかを示す制御情報に基づいて、処理対象の階層の参照先となる階層を特定し、特定した階層の前記参照ポイントの前記属性情報を参照して、前記処理対象の階層の前記予測ポイントの前記属性情報の前記予測値を導出する
 (16)に記載の情報処理装置。
 (18) 前記逆階層化部は、1つ上位の階層と比較してポイントが十分に多くない階層について、2つ上位の階層の前記参照ポイントの前記属性情報を参照して、前記予測ポイントの前記属性情報の前記予測値を導出する
 (16)または(17)に記載の情報処理装置。
 (19) 前記属性情報の符号化データを復号し、前記属性情報を生成する復号部をさらに備え、
 前記逆階層化部は、前記復号部により前記符号化データが復号されて復元された前記属性情報に対して前記逆階層化を行う
 (16)乃至(18)のいずれかに記載の情報処理装置。
 (20) 3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、前記参照ポイントの前記属性情報を用いて前記予測ポイントの前記属性情報の予測値を導出し、前記予測ポイントの前記属性情報と前記予測値との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことにより階層化された前記属性情報に対して逆階層化を行う際に、複数の階層の前記予測ポイントの前記属性情報の前記予測値を、互いに同一の階層の前記参照ポイントの前記属性情報を参照して導出し、導出した前記予測値を前記差分値に加算することにより、前記予測ポイントの前記属性情報を生成する
 情報処理方法。
 100 符号化装置, 101 位置情報符号化部, 102 位置情報復号部, 103 ポイントクラウド生成部, 104 属性情報符号化部, 105 ビットストリーム生成部, 111 階層化処理部, 112 量子化部, 113 符号化部, 121 制御部, 122 スケーラブル対応階層化処理部, 123 スケーラブル非対応階層化処理部, 124 反転部, 125 重み付け部, 200 復号装置, 201 復号対象LOD深度設定部, 202 符号化データ抽出部, 203 位置情報復号部, 204 属性情報復号部, 205 ポイントクラウド生成部, 211 復号部, 212 逆量子化部, 213 逆階層化処理部, 221 制御部, 222 スケーラブル非対応逆階層化処理部, 223 スケーラブル対応逆階層化処理部

Claims (20)

  1.  3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報を処理する情報処理装置であって、予測ポイントと参照ポイントに分類されたポイントのうち前記参照ポイントの前記属性情報を用いて導出された前記予測ポイントの前記属性情報の予測値と前記予測ポイントの前記属性情報との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことにより、前記属性情報の階層化を行う階層化部を備え、
     前記階層化部は、第1の階層を第1の階層化手法を用いて階層化を行い、前記第1の階層と異なる第2の階層を前記第1の階層化手法と異なる第2の階層化手法を用いて階層化を行う
     情報処理装置。
  2.  前記階層化部は、スケーラブルな復号に非対応の前記第1の階層化手法により、前記第1の階層を含む所定の階層よりも上位の階層を生成し、スケーラブルな復号に対応した前記第2の階層化手法により、前記第2の階層を含む前記所定の階層よりも下位の階層を生成する
     請求項1に記載の情報処理装置。
  3.  前記階層化部は、最下位層から最上位層に向かう順に各階層を生成する
     請求項2に記載の情報処理装置。
  4.  前記階層化部による前記属性情報の階層化に関する制御情報を生成する生成部と、
     前記階層化部により階層化された前記属性情報を符号化し、前記生成部により生成された前記制御情報を含む、前記属性情報の符号化データを生成する符号化部と
     をさらに備える請求項1に記載の情報処理装置。
  5.  3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、前記参照ポイントの前記属性情報を用いて前記予測ポイントの前記属性情報の予測値を導出し、前記予測ポイントの前記属性情報と前記予測値との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことによる前記属性情報の階層化の際に、複数の階層化手法を用いて、それぞれの階層化手法により互いに異なる階層を生成する
     情報処理方法。
  6.  3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報を処理する情報処理装置であって、予測ポイントと参照ポイントに分類されたポイントのうち前記参照ポイントの前記属性情報を用いて導出された前記予測ポイントの前記属性情報の予測値と前記予測ポイントの前記属性情報との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことにより階層化された前記属性情報に対して逆階層化を行う逆階層化部を備え、
     前記逆階層化部は、第1の階層を第1の階層化手法を用いて逆階層化を行い、前記第1の階層と異なる第2の階層を前記第1の階層化手法と異なる第2の階層化手法を用いて前記逆階層化を行う
     情報処理装置。
  7.  前記逆階層化部は、スケーラブルな復号に非対応の前記第1の階層化手法により、前記第1の階層を含む所定の階層よりも上位の階層に対して前記逆階層化を行い、スケーラブルな復号に対応した前記第2の階層化手法により、前記第2の階層を含む前記所定の階層よりも下位の階層に対して前記逆階層化を行う
     請求項6に記載の情報処理装置。
  8.  前記逆階層化部は、前記スケーラブルな復号に対応した階層化手法を適用する階層の範囲を示す第1の制御情報に基づいて前記所定の階層を特定する
     請求項7に記載の情報処理装置。
  9.  前記逆階層化部は、前記スケーラブルな復号に対応した階層化手法が適用可能であるかを示す第2の制御情報により適用可能であることが示される属性情報について、前記第1の制御情報に基づいて前記所定の階層を特定する
     請求項8に記載の情報処理装置。
  10.  前記属性情報の符号化データを復号し、前記属性情報を生成する復号部をさらに備え、
     前記逆階層化部は、前記復号部により前記符号化データが復号されて得られた前記属性情報に対して前記逆階層化を行う
     請求項6に記載の情報処理装置。
  11.  3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、前記参照ポイントの前記属性情報を用いて前記予測ポイントの前記属性情報の予測値を導出し、前記予測ポイントの前記属性情報と前記予測値との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことにより階層化された前記属性情報に対する逆階層化の際に、複数の階層化手法を用いて、それぞれの階層化手法により互いに異なる階層に対して前記逆階層化を行う
     情報処理方法。
  12.  3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報を処理する情報処理装置であって、予測ポイントと参照ポイントに分類されたポイントのうち前記参照ポイントの前記属性情報を用いて導出された前記予測ポイントの前記属性情報の予測値と前記予測ポイントの前記属性情報との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことにより、前記属性情報の階層化を行う階層化部を備え、
     前記階層化部は、複数の階層の前記予測ポイントの前記予測値の導出を、互いに同一の階層の前記参照ポイントを参照して行う
     情報処理装置。
  13.  前記階層化部は、1つ上位の階層と比較して前記ポイントが十分に多くない階層の前記予測ポイントの前記予測値の算出を、2つ上位の階層の前記参照ポイントを参照して行う
     請求項12に記載の情報処理装置。
  14.  他の階層とマージして参照関係が構築されたかを示す制御情報を生成する生成部と、
     前記階層化部により階層化された前記属性情報を符号化し、前記生成部により生成された前記制御情報を含む、前記属性情報の符号化データを生成する符号化部と
     請求項12に記載の情報処理装置。
  15.  3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、前記参照ポイントの前記属性情報を用いて前記予測ポイントの前記属性情報の予測値を導出し、前記予測ポイントの前記属性情報と前記予測値との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことによる前記属性情報の階層化の際に、複数の階層の前記予測ポイントの前記予測値の導出を、互いに同一の階層の前記参照ポイントを参照して行う
     情報処理方法。
  16.  3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報を処理する情報処理装置であって、予測ポイントと参照ポイントに分類されたポイントのうち前記参照ポイントの前記属性情報を用いて導出された前記予測ポイントの前記属性情報の予測値と前記予測ポイントの前記属性情報との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことにより階層化された前記属性情報に対して逆階層化を行う逆階層化部を備え、
     前記逆階層化部は、前記逆階層化の際に、複数の階層の前記予測ポイントの前記属性情報の前記予測値を、互いに同一の階層の前記参照ポイントの前記属性情報を参照して導出し、導出した前記予測値を前記差分値に加算することにより、前記予測ポイントの前記属性情報を生成する
     情報処理装置。
  17.  前記逆階層化部は、前記逆階層化の際に、他の階層と同一の階層を参照するかを示す制御情報に基づいて、処理対象の階層の参照先となる階層を特定し、特定した階層の前記参照ポイントの前記属性情報を参照して、前記処理対象の階層の前記予測ポイントの前記属性情報の前記予測値を導出する
     請求項16に記載の情報処理装置。
  18.  前記逆階層化部は、1つ上位の階層と比較してポイントが十分に多くない階層について、2つ上位の階層の前記参照ポイントの前記属性情報を参照して、前記予測ポイントの前記属性情報の前記予測値を導出する
     請求項16に記載の情報処理装置。
  19.  前記属性情報の符号化データを復号し、前記属性情報を生成する復号部をさらに備え、
     前記逆階層化部は、前記復号部により前記符号化データが復号されて復元された前記属性情報に対して前記逆階層化を行う
     請求項16に記載の情報処理装置。
  20.  3次元形状のオブジェクトをポイントの集合として表現するポイントクラウドの前記ポイント毎の属性情報について、予測ポイントと参照ポイントとに分類し、前記参照ポイントの前記属性情報を用いて前記予測ポイントの前記属性情報の予測値を導出し、前記予測ポイントの前記属性情報と前記予測値との差分値を導出する処理を、前記参照ポイントに対して再帰的に繰り返すことにより階層化された前記属性情報に対して逆階層化を行う際に、複数の階層の前記予測ポイントの前記属性情報の前記予測値を、互いに同一の階層の前記参照ポイントの前記属性情報を参照して導出し、導出した前記予測値を前記差分値に加算することにより、前記予測ポイントの前記属性情報を生成する
     情報処理方法。
PCT/JP2020/023989 2019-07-02 2020-06-18 情報処理装置および方法 WO2021002214A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020217041116A KR20220027847A (ko) 2019-07-02 2020-06-18 정보 처리 장치 및 방법
CN202080038761.XA CN113875248A (zh) 2019-07-02 2020-06-18 信息处理装置和方法
US17/622,488 US20220245863A1 (en) 2019-07-02 2020-06-18 Information processing device and method
JP2021529954A JPWO2021002214A1 (ja) 2019-07-02 2020-06-18
EP20835642.8A EP3996045A4 (en) 2019-07-02 2020-06-18 INFORMATION PROCESSING DEVICE AND METHOD

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019124027 2019-07-02
JP2019-124027 2019-07-02

Publications (1)

Publication Number Publication Date
WO2021002214A1 true WO2021002214A1 (ja) 2021-01-07

Family

ID=74100499

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/023989 WO2021002214A1 (ja) 2019-07-02 2020-06-18 情報処理装置および方法

Country Status (6)

Country Link
US (1) US20220245863A1 (ja)
EP (1) EP3996045A4 (ja)
JP (1) JPWO2021002214A1 (ja)
KR (1) KR20220027847A (ja)
CN (1) CN113875248A (ja)
WO (1) WO2021002214A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024014935A1 (ko) * 2022-07-15 2024-01-18 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019103009A1 (ja) * 2017-11-22 2019-05-31 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
WO2020013249A1 (ja) * 2018-07-13 2020-01-16 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10861196B2 (en) * 2017-09-14 2020-12-08 Apple Inc. Point cloud compression
US20220224940A1 (en) * 2019-05-30 2022-07-14 Lg Electronics Inc. Method and device for processing point cloud data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019103009A1 (ja) * 2017-11-22 2019-05-31 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
WO2020013249A1 (ja) * 2018-07-13 2020-01-16 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
JIANLE CHENELENA ALSHINAGARY J. SULLIVANJENS-RAINERJILL BOYCE: "Algorithm Description of Joint Exploration Test Model 4", JVET-GL001_VL, JOINT VIDEO EXPLORATION TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 7TH MEETING: TORINO, IT, 13 July 2017 (2017-07-13)
KHALED MAMMOUALEXIS TOURAPISJUNGSUN KIMFABRICE ROBINETVALERY VALENTINYEPING SU: "Lifting Scheme for Lossy Attribute Encoding in TMC 1", ISO/IEC JTC1/SC29/WG11 MPEG2018/M42640, April 2018 (2018-04-01)
NISHIO, KOJI ET AL.: "1G-2 A method of information transformation for point sampled models", PROCEEDINGS OF THE 69TH NATIONAL CONVENTION OF IPSJ. INTERFACE, COMPUTER AND HUMAN SOCIETY; MARCH, 6-8, 2007, vol. 69, 6 March 2007 (2007-03-06) - 8 March 2007 (2007-03-08), pages 4-41 - 4-42, XP009532473 *
OHJI NAKAGAMISATORU KUMA: "G-PCC] Spatial scalability support for G-PCC", ISO/IEC JTC1/SC29/WG11 MPEG2019/M47352, March 2019 (2019-03-01)
R. MEKURIASTUDENT MEMBER IEEEK. BLOMP. CESAR: "Design, Implementation and Evaluation of a Point Cloud Codec for Tele-Immersive Video", MEMBER, IEEE, Retrieved from the Internet <URL:tcsvt_paper_submitted_february.pdf>
See also references of EP3996045A4

Also Published As

Publication number Publication date
CN113875248A (zh) 2021-12-31
EP3996045A1 (en) 2022-05-11
EP3996045A4 (en) 2022-08-31
US20220245863A1 (en) 2022-08-04
KR20220027847A (ko) 2022-03-08
JPWO2021002214A1 (ja) 2021-01-07

Similar Documents

Publication Publication Date Title
US11910026B2 (en) Image processing apparatus and method
JP7384159B2 (ja) 画像処理装置および方法
WO2019198523A1 (ja) 画像処理装置および方法
US11943457B2 (en) Information processing apparatus and method
US11991348B2 (en) Information processing device and method
CN113795870A (zh) 用于点云属性编解码的信道间预测和变换的技术和装置
WO2021140930A1 (ja) 情報処理装置および方法
WO2021010200A1 (ja) 情報処理装置および方法
WO2021002214A1 (ja) 情報処理装置および方法
WO2020071115A1 (ja) 画像処理装置および方法
WO2020145143A1 (ja) 情報処理装置および方法
WO2022145214A1 (ja) 情報処理装置および方法
WO2021010134A1 (ja) 情報処理装置および方法
WO2019198520A1 (ja) 情報処理装置および方法
WO2020262020A1 (ja) 情報処理装置および方法
WO2021140928A1 (ja) 情報処理装置および方法
US20240205431A1 (en) Information processing apparatus and method
JP2022051968A (ja) 情報処理装置および方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20835642

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021529954

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2020835642

Country of ref document: EP

Effective date: 20220202