WO2022260115A1 - Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device - Google Patents

Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device Download PDF

Info

Publication number
WO2022260115A1
WO2022260115A1 PCT/JP2022/023234 JP2022023234W WO2022260115A1 WO 2022260115 A1 WO2022260115 A1 WO 2022260115A1 JP 2022023234 W JP2022023234 W JP 2022023234W WO 2022260115 A1 WO2022260115 A1 WO 2022260115A1
Authority
WO
WIPO (PCT)
Prior art keywords
dimensional
prediction
point
quantization step
residual
Prior art date
Application number
PCT/JP2022/023234
Other languages
French (fr)
Japanese (ja)
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 JP2023527915A priority Critical patent/JPWO2022260115A1/ja
Priority to CN202280038762.3A priority patent/CN117396920A/en
Publication of WO2022260115A1 publication Critical patent/WO2022260115A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/40Tree coding, e.g. quadtree, octree

Definitions

  • the present disclosure relates to a three-dimensional data encoding method, a three-dimensional data decoding method, a three-dimensional data encoding device, and a three-dimensional data decoding device.
  • 3D data will spread in a wide range of fields, such as computer vision, map information, monitoring, infrastructure inspection, or video distribution for autonomous operation of automobiles or robots.
  • Three-dimensional data is acquired in various ways, such as range sensors such as range finders, stereo cameras, or a combination of multiple monocular cameras.
  • a representation method As one of the three-dimensional data representation methods, there is a representation method called a point cloud that expresses the shape of a three-dimensional structure using a point group in a three-dimensional space.
  • a point cloud stores the position and color of the point cloud.
  • Point clouds are expected to become mainstream as a method of expressing three-dimensional data, but point clouds have a very large amount of data. Therefore, in the storage or transmission of 3D data, it is essential to compress the amount of data by encoding, as with 2D moving images (one example is MPEG-4 AVC or HEVC standardized by MPEG). Become.
  • point cloud compression is partially supported by a public library (Point Cloud Library) that performs point cloud-related processing.
  • Point Cloud Library a public library that performs point cloud-related processing.
  • Patent Document 1 Japanese Patent Document 1
  • An object of the present disclosure is to provide a three-dimensional data encoding method, a three-dimensional data decoding method, a three-dimensional data encoding device, or a three-dimensional data decoding device that can improve encoding efficiency.
  • a three-dimensional data encoding method is calculated by the angle component of a first three-dimensional point among a plurality of three-dimensional points each represented by a distance component and an angle component, and inter prediction. Further, calculating a first residual between the first three-dimensional point and the predicted value of the angular component, and quantizing the first residual using a first quantization step, wherein the first quantization step includes: according to at least one of a distance component of the first three-dimensional point and a distance component of one or more second three-dimensional points included in the plurality of three-dimensional points and located around the first three-dimensional point Calculated.
  • the present disclosure can provide a three-dimensional data encoding method and the like that can improve encoding efficiency.
  • FIG. 1 is a block diagram of a 3D data encoding device according to an embodiment.
  • FIG. 2 is a diagram illustrating an example of a prediction tree according to the embodiment;
  • FIG. 3 is a block diagram of a three-dimensional data decoding device according to an embodiment.
  • FIG. 4 is a flowchart showing an example of a procedure for encoding each 3D point of a prediction tree (Predtree) in a 3D data encoding device.
  • FIG. 5 is a flowchart showing an example of adaptive quantization processing for a residual signal in encoding processing.
  • FIG. 6 is a flowchart showing an example of adaptive inverse quantization processing for quantized values generated by adaptive quantization in encoding processing.
  • FIG. 1 is a block diagram of a 3D data encoding device according to an embodiment.
  • FIG. 2 is a diagram illustrating an example of a prediction tree according to the embodiment;
  • FIG. 3 is a block diagram of a three-dimensional data decoding device according
  • FIG. 7 is a flowchart showing an example of a procedure for decoding each 3D point of a prediction tree (Predtree) in the 3D data decoding device.
  • FIG. 8 is a flowchart showing an example of adaptive inverse quantization processing for quantized values in decoding processing.
  • FIG. 9 is a block diagram of a 3D data encoding device according to a modification of the embodiment.
  • FIG. 10 is a block diagram of a three-dimensional data decoding device according to a modification of the embodiment.
  • FIG. 11 is a flowchart showing an example of 3D data encoding processing according to the embodiment.
  • FIG. 12 is a flowchart illustrating an example of 3D data decoding processing according to the embodiment.
  • FIG. 13 is a flowchart showing an example of 3D data encoding processing according to the modification.
  • FIG. 14 is a flowchart showing an example of 3D data decoding processing according to the modification.
  • a three-dimensional data encoding method is calculated by the angle component of a first three-dimensional point among a plurality of three-dimensional points each represented by a distance component and an angle component, and inter prediction. Further, calculating a first residual between the first three-dimensional point and the predicted value of the angular component, and quantizing the first residual using a first quantization step, wherein the first quantization step includes: according to at least one of a distance component of the first three-dimensional point and a distance component of one or more second three-dimensional points included in the plurality of three-dimensional points and located around the first three-dimensional point Calculated.
  • the likelihood of inter-prediction of the angle component may change depending on at least one of the distance component and the distance components of surrounding 3D points. For example, in inter-prediction, there are cases where angle components are more likely to be predicted at distant positions (or near positions), resulting in smaller residuals. In other words, the prediction of the angle component is likely to go wrong at a near position (or a far position), and the residual error may become large. Therefore, quantization using the first quantization step calculated according to at least one of the distance component of the first three-dimensional point and the distance components of one or more surrounding second three-dimensional points reduces the quantization error. Browsing and redundant quantized values can be reduced. Therefore, coding efficiency can be improved.
  • the one or more second three-dimensional points may be encoded before the first three-dimensional points in the encoding order of the plurality of three-dimensional points.
  • a second residual between an angle component of a third three-dimensional point among the plurality of three-dimensional points and a predicted value of the angle component of the third three-dimensional point calculated by intra prediction is and quantizing the second residual using a second quantization step different from the first quantization step.
  • the residual error of the angle component may increase or decrease depending on the prediction method. Therefore, when the residual of the angle component changes according to the prediction method in addition to the distance component, the residual is quantized using a quantization step that is adaptively calculated according to the distance component and the prediction method. By doing so, the coding efficiency can be improved.
  • the second quantization step includes distance components of the third three-dimensional point and one or more fourth three-dimensional points included in the plurality of three-dimensional points and located around the third three-dimensional point. It may be calculated according to at least one of the distance components of the point.
  • Intra prediction can also improve coding efficiency by adaptively quantizing according to the distance component.
  • the first quantization step may be calculated so as to increase as the first prediction accuracy of the predicted value of the angular component of the first three-dimensional point decreases.
  • the first quantization step is calculated according to at least one of the distance component of the first three-dimensional point and the distance component of the one or more second three-dimensional points and a first reference value
  • the first reference value is a reference value for calculating the first quantization step so that the lower the first prediction accuracy is, the higher the first quantization step is.
  • a bitstream may be generated that includes the first residual and the first reference value.
  • the first reference value is a reference value for calculating the first quantization step so that the smaller the first prediction accuracy, the larger the first quantization step. can be calculated. Therefore, it is possible to reduce the increase in quantization error and redundant quantization values. Therefore, coding efficiency can be improved. Also, by including the first reference value in the bitstream, the decoding side can perform the same adaptive quantization as the encoding side.
  • a second residual between an angle component of a third three-dimensional point among the plurality of three-dimensional points and a predicted value of the angle component of the third three-dimensional point calculated by intra prediction is and quantizing the second residual using a second quantization step different from the first quantization step, the second quantization step being the distance component of the third three-dimensional point and the one It is calculated according to at least one of the distance components of the fourth three-dimensional point and a second reference value, and the second reference value is the second value of the predicted value of the angle component of the third three-dimensional point.
  • the second reference value is a reference value for calculating the second quantization step so that the smaller the second prediction accuracy, the larger the second quantization step. can be calculated. Therefore, it is possible to reduce the increase in quantization error and redundant quantization values. Therefore, coding efficiency can be improved.
  • the first quantization step may be calculated so as to decrease as at least one of the distance component of the first three-dimensional point and the distance component of the one or more second three-dimensional points increases.
  • Quantizing the first residual using one quantization step can effectively reduce a large quantization error and redundant quantization values. Therefore, coding efficiency can be improved.
  • a second residual between an angle component of a third three-dimensional point among the plurality of three-dimensional points and a predicted value of the angle component of the third three-dimensional point calculated by intra prediction is and quantizing the second residual using a second quantization step different from the first quantization step, the second quantization step being the distance component of the third three-dimensional point and the one It may be calculated so as to decrease as at least one of the distance components of the fourth three-dimensional point increases.
  • the larger at least one of the distance component and the distance components of surrounding 3D points the more difficult it is to inter-predict the angle component. Even in this case, by adaptively quantizing according to the distance component, it is possible to effectively reduce the increase in quantization error and the redundancy of quantized values. Therefore, coding efficiency can be improved.
  • a three-dimensional data encoding method calculates a predicted value of a position of a three-dimensional point using one of inter prediction and intra prediction, and compares the predicted value and the position. and quantize the residual using a quantization step according to the prediction scheme.
  • the positional residual may be larger or smaller depending on the prediction method. Therefore, when the position residual varies according to the prediction method, the coding efficiency can be improved by quantizing the residual using the quantization step calculated according to the prediction method.
  • a three-dimensional data decoding method is calculated by the angle component of a first three-dimensional point among a plurality of three-dimensional points each represented by a distance component and an angle component, and inter prediction. Obtaining a first residual between the first three-dimensional point and the predicted value of the angular component, and inversely quantizing the first residual using a first quantization step, wherein the first quantization step is , the distance component of the first three-dimensional point, and the distance component of one or more second three-dimensional points included in the plurality of three-dimensional points and located around the first three-dimensional point. calculated as
  • the likelihood of inter-prediction of the angle component may change depending on at least one of the distance component and the distance components of surrounding 3D points. For example, in inter-prediction, there are cases where angle components are more likely to be predicted at distant positions (or near positions), resulting in smaller residuals. In other words, the prediction of the angle component is likely to go wrong at a near position (or a far position), and the residual error may become large. Therefore, quantization is performed using the first quantization step calculated according to at least one of the distance component of the first three-dimensional point and the distance component of one or more surrounding second three-dimensional points, thereby improving the coding efficiency. It is possible to properly decode the first residual that may have been modified.
  • the one or more second three-dimensional points may be decoded before the first three-dimensional points in the decoding order of the plurality of three-dimensional points.
  • a second residual between an angle component of a third three-dimensional point among the plurality of three-dimensional points and a predicted value of the angle component of the third three-dimensional point calculated by intra prediction is and inverse quantizing the second residual using a second quantization step different from the first quantization step.
  • the residual error of the angle component may increase or decrease depending on the prediction method. Therefore, when the residual of the angle component changes according to the prediction method in addition to the distance component, it is quantized and encoded using a quantization step adaptively calculated according to the distance component and the prediction method. It is possible to properly decode the first residual, which may have improved coding efficiency.
  • the second quantization step includes distance components of the third three-dimensional point and one or more fourth three-dimensional points included in the plurality of three-dimensional points and located around the third three-dimensional point. It may be calculated according to at least one of the distance components of the point.
  • the first quantization step may be calculated so as to increase as the first prediction accuracy of the predicted value of the angular component of the first three-dimensional point decreases.
  • a first reference value is obtained, and the first quantization step includes at least one of the distance component of the first three-dimensional point and the distance component of the one or more second three-dimensional points and the first
  • the first reference value may be a reference value for calculating the first quantization step so that the smaller the first prediction accuracy, the larger the first quantization step.
  • the first reference value is a reference value for calculating the first quantization step so that the smaller the first prediction accuracy, the larger the first quantization step.
  • the second quantization step may be a reference value for calculating the second quantization step so that the smaller the second prediction accuracy of is, the larger it becomes.
  • the second reference value is a reference value for calculating the second quantization step so that the smaller the second prediction accuracy, the larger the second quantization step. can be calculated. Therefore, it is possible to appropriately decode the second residual that may have reduced the increase in quantization error and redundant quantization values.
  • the first quantization step may be calculated so as to decrease as at least one of the distance component of the first three-dimensional point and the distance component of the one or more second three-dimensional points increases.
  • the first residual which may have been quantized using one quantization step to improve coding efficiency, can be properly decoded.
  • a second residual between an angle component of a third three-dimensional point among the plurality of three-dimensional points and a predicted value of the angle component of the third three-dimensional point calculated by intra prediction is and inverse quantizing the second residual using a second quantization step different from the first quantization step, the second quantization step comprising the distance component of the third 3D point and the It may be calculated so as to decrease as at least one of the distance components of the one or more fourth three-dimensional points increases.
  • the larger at least one of the distance component and the distance components of surrounding 3D points the more difficult it is to inter-predict the angle component. Even in this case, it is possible to appropriately decode the second residual, which may have been adaptively quantized according to the distance component and thus improved in coding efficiency.
  • a three-dimensional data decoding method acquires a residual between a position of a three-dimensional point and a prediction value calculated by one of inter prediction and intra prediction, and Inverse quantize the residual using a quantization step according to .
  • the positional residual may be larger or smaller depending on the prediction method. For this reason, when the position residual changes according to the prediction method, the residual that may have been quantized using the quantization step calculated according to the prediction method to improve the coding efficiency is can be decrypted properly.
  • a three-dimensional data encoding device includes a processor and a memory, and the processor uses the memory to generate a plurality of three-dimensional data each represented by a distance component and an angle component. calculating a first residual between an angle component of a first three-dimensional point among points and a predicted value of the angle component of the first three-dimensional point calculated by inter prediction, and performing a first quantization step; quantizing the first residual using It is calculated according to at least one of the distance components of one or more positioned second three-dimensional points.
  • the likelihood of inter-prediction of the angle component may change depending on at least one of the distance component and the distance components of surrounding 3D points. For example, in inter-prediction, there are cases where angle components are more likely to be predicted at distant positions (or near positions), resulting in smaller residuals. In other words, the prediction of the angle component is likely to go wrong at a near position (or a far position), and the residual error may become large. Therefore, quantization using the first quantization step calculated according to at least one of the distance component of the first three-dimensional point and the distance components of one or more surrounding second three-dimensional points reduces the quantization error. Browsing and redundant quantized values can be reduced. Therefore, coding efficiency can be improved.
  • a 3D data encoding device includes a processor and a memory, and the processor uses the memory to perform 3D data encoding using one of inter prediction and intra prediction.
  • a predicted value of the position of the point is calculated, a residual between the predicted value and the position is calculated, and the residual is quantized using a quantization step according to the prediction scheme.
  • the positional residual may be larger or smaller depending on the prediction method. Therefore, when the position residual varies according to the prediction method, the coding efficiency can be improved by quantizing the residual using the quantization step calculated according to the prediction method.
  • a three-dimensional data decoding device includes a processor and a memory, and the processor uses the memory to generate a plurality of three-dimensional points each represented by a distance component and an angle component. obtain a first residual between the angle component of the first three-dimensional point and the predicted value of the angle component of the first three-dimensional point calculated by inter prediction, and perform a first quantization step inverse quantizing the first residual using is calculated according to at least one of the distance components of one or more second three-dimensional points located at .
  • the likelihood of inter-prediction of the angle component may change depending on at least one of the distance component and the distance components of surrounding 3D points. For example, in inter-prediction, there are cases where angle components are more likely to be predicted at distant positions (or near positions), resulting in smaller residuals. In other words, the prediction of the angle component is likely to go wrong at a near position (or a far position), and the residual error may become large. Therefore, quantization is performed using the first quantization step calculated according to at least one of the distance component of the first three-dimensional point and the distance component of one or more surrounding second three-dimensional points, thereby improving the coding efficiency. It is possible to properly decode the first residual that may have been modified.
  • a 3D data decoding device includes a processor and a memory, and the processor uses the memory to determine the position of a 3D point and one of inter prediction and intra prediction.
  • a residual from the predicted value calculated by the prediction method is acquired, and the residual is inversely quantized using a quantization step according to the prediction method.
  • the positional residual may be larger or smaller depending on the prediction method. For this reason, when the position residual changes according to the prediction method, the residual that may have been quantized using the quantization step calculated according to the prediction method to improve the coding efficiency is can be decrypted properly.
  • FIG. 1 is a block diagram of a three-dimensional data encoding device 100 according to this embodiment.
  • FIG. 1 shows a processing unit for encoding position information (geometry) of a point group
  • the three-dimensional data encoding device 100 includes a processing unit for encoding attribute information of a point group, etc. may be provided with other processing units.
  • inter-prediction and intra-prediction a point group to be encoded is encoded while referring to an already-encoded point group.
  • inter prediction refers to a second reference 3D point group (second frame) belonging to a second 3D point group (second frame) different from the first 3D point group (first frame) to which the 3D point to be encoded or decoded belongs.
  • This is a prediction method that uses points to calculate predicted values.
  • Intra prediction is a prediction method that calculates a prediction value using a first reference 3D point belonging to a first 3D point group (first frame) to which a 3D point to be encoded or decoded belongs.
  • 3D data encoding apparatus 100 includes grouping section 101, buffer 102, adaptive quantization section 103, adaptive inverse quantization section 104, buffer 105, intra prediction section 106, buffer 107, and motion compensation. It includes a section 108 , an inter prediction section 109 , a switching section 110 and an entropy coding section 111 .
  • the grouping unit 101 extracts a point group to be a prediction tree (Predtree), which is a unit of encoding, from the target point group, which is the data of the input point group to be encoded, and sets it as one group.
  • Predtree a prediction tree
  • the position of the point group is represented by, for example, three-dimensional polar coordinates.
  • FIG. 2 is a diagram showing an example of a prediction tree according to this embodiment.
  • a prediction tree 200 indicates a reference relationship in predicting the positions of a plurality of three-dimensional points forming a point cloud set in one group.
  • the prediction tree 200 includes, for example, a first node 201 , a second node 211 and a third node 212 that are child nodes of the first node, and a fourth node 221 that is a child node of the second node 211 .
  • a first node 201, a second node 211, a third node 212, and a fourth node 221 represent different 3D points.
  • the first node 201 is higher than the second node 211 and the third node 212
  • the second node 211 is higher than the fourth node 221 .
  • the first node 201 is a node referred to in calculating the predicted value of the second node 211 and calculating the predicted value of the third node 212 .
  • the first node 201 may be referenced in calculating the predicted value of the fourth node 221 .
  • the second node 211 is a node referred to in calculating the predicted value of the fourth node 221 . In this way, one or more nodes higher than the lower node are referred to in calculating the predicted value of the lower node. Which node is used and how the predicted value is calculated may be determined according to the prediction mode.
  • the encoding order and decoding order of the prediction tree 200 may be depth-first order or breadth-first order.
  • the prediction tree 200 may be generated by sequentially processing a plurality of 3D points arranged in Morton's order from the leading 3D point. For example, the prediction tree 200 may be generated such that the closest 3D point to the 3D point to be processed in the process of generating the prediction tree 200 is a child node of the 3D point to be processed.
  • Depth-priority order is that the root node is first, then the lower nodes (child nodes) of the previous node are arranged in order, and then the remaining multiple nodes are arranged in order of increasing depth. The order is determined by repeating the order of the highest node in the list, and then the lower nodes (child nodes) of the previous node, up to the leaf node.
  • the depth priority order is, for example, the first node 201, the second node 211, the fourth node 221, and the third node 212.
  • Breadth-first order is the order determined by arranging the nodes included in each layer of the prediction tree in ascending order, starting with the root node.
  • the breadth-first order is, for example, the order of the first node 201, the second node 211, the third node 212, and the fourth node 221.
  • the breadth-first order is, for example, the order of the first node 201, the second node 211, the third node 212, and the fourth node 221.
  • the polar coordinates of the point group to be encoded may be obtained by converting the orthogonal coordinates of the input point group into polar coordinates, or the input point group itself may be polar coordinates.
  • the polar coordinates may be expressed as polar coordinates (d, ⁇ , ⁇ ) using these three elements, for example, the distance d from the sensor position to the target point, the horizontal angle ⁇ , and the elevation angle ⁇ .
  • sensor information such as laser_id of Lidar may be used instead of the elevation angle ⁇ .
  • the polar coordinates may be expressed as (d, ⁇ , laser_id) by using the laser_id having the scan angle closest to the elevation angle ⁇ instead of the elevation angle. That is, in this way, laser_id may be used in polar coordinates as a value indicating elevation angle ⁇ .
  • the buffer 102 holds the generated prediction tree.
  • the buffer 102 may initialize data held for each prediction tree.
  • a plurality of three-dimensional points included in the prediction tree (Predtree) held in the buffer 102 are sequentially subjected to encoding processing one by one.
  • first residual signal the difference between each of the plurality of three-dimensional points included in the prediction tree (Predtree) and the selected prediction point is calculated.
  • This first residual signal is also called a prediction residual.
  • the first residual signal is an example of the first residual.
  • Adaptive quantization section 103 adaptively quantizes the first residual signal.
  • the entropy coding unit 111 entropy-codes the adaptively quantized first residual signal to generate coded data, and outputs (generates) a bitstream containing the coded data.
  • Adaptive inverse quantization section 104 adaptively inversely quantizes the first residual signal adaptively quantized by adaptive quantization section 103 .
  • the adaptively inverse quantized first residual signal is added to the prediction value based on the selected prediction points (one or more candidate points) to obtain three-dimensional points (reference points) used for intra prediction and inter prediction. is decoded as Note that the predicted value is calculated based on position information of one or more candidate points.
  • the buffer 105 holds the decoded intra-prediction reference point group. For example, the buffer 105 may initialize data held for each prediction tree (target point group).
  • the buffer 107 also holds reference point groups for inter prediction. For example, the buffer 107 may initialize data held for each prediction tree (target point group).
  • the intra prediction unit 106 selects intra prediction points to be used for prediction, such as a plurality of 3D points (reference point group for intra prediction) included in a prediction tree (Predtree) including a 3D point to be encoded.
  • the information in the prediction tree (Predtree) is referred to and determined by a predetermined method.
  • the intra prediction unit 106 uses two 3D points (decoding points) adaptively dequantized immediately before the 3D point to be encoded (for example, an ancestor node such as a parent node of a prediction tree). Intra prediction points may be determined by extrapolation or the like.
  • a motion compensation unit 108 reproduces an encoded point group based on a plurality of 3D points (a plurality of decoding points) included in a prediction tree (Predtree) including a 3D point to be encoded, and performs encoding.
  • Predtree prediction tree
  • Motion detection detecting the displacement between the coded point cloud and the point cloud to be encoded
  • motion compensation correcting the coded point cloud based on the detected displacement
  • Generate an inter-prediction point cloud which is a reference point cloud for prediction.
  • the inter prediction unit 109 determines inter prediction points to be used for prediction by a predetermined method based on the motion-compensated inter prediction point group. For example, the inter prediction unit 109 may select a point closest to the intra prediction point from the inter prediction point group as the inter prediction point, or may select the point that was encoded immediately before (last) without referring to the intra prediction point.
  • a 3D point near a 3D point e.g., a 3D point corresponding to an ancestor node such as a parent node of a prediction tree
  • the 3D point closest to the previously encoded 3D point e.g., the 3D point closest to the previously encoded 3D point
  • the inter prediction unit 109 may determine an inter prediction point using the decoded horizontal angle ⁇ p and laser_idp of the parent node of the prediction tree (Predtree). For example, the inter prediction unit 109 selects from among the inter prediction point group, the value ⁇ p+offset 3D points with ⁇ close in value to may be selected as inter-prediction points.
  • offset is a value of 0 or more, and the value may be determined according to, for example, the angular velocity of horizontal scanning of lidar.
  • the 3D data encoding apparatus 100 can generate prediction values close to each value of the polar coordinates (d, ⁇ , laser_id) of the encoding target point from the inter-prediction point cloud, and can improve the encoding efficiency.
  • a point to be encoded is an example of a first three-dimensional point.
  • the encoding target point may be an example of a second three-dimensional point.
  • the switching unit 110 selects either intra prediction points or inter prediction points to determine prediction points to be used for prediction.
  • position information of one or more candidate points among a plurality of encoded three-dimensional points is determined as a predicted point, and a predicted value is calculated based on the predicted point.
  • the intra prediction unit 106 and the inter prediction unit 109 determine a prediction point (intra prediction point or inter prediction point) based on the 3D point encoded immediately before the 3D point to be encoded. That is, 3D data encoding apparatus 100 determines one or more candidate points for calculating a predicted value based on one or more reference points among a plurality of encoded 3D points.
  • One or more reference points are 3D points encoded immediately before the 3D point to be encoded, and correspond to, for example, parent nodes (ancestor nodes) of one 3D point to be encoded in the prediction tree. It may be a three-dimensional point that
  • the 3D data encoding device 100 may select either one of the intra prediction points and the inter prediction points as the prediction point according to the procedure of the flowchart of FIG. 4, which will be described later.
  • Information about prediction (prediction information) for selecting which of intra prediction points and inter prediction points to use as prediction points may be entropy-encoded and described in the header of each three-dimensional point. Alternatively, it may be described interleaved with each 3D point.
  • Information related to motion compensation such as motion vectors may be described in the header of a frame or prediction tree (Predtree), or may be entropy-encoded and described in the header of each 3D point, It may be described interleaved with each 3D point.
  • the three-dimensional data encoding device 100 when the three-dimensional data encoding device 100 performs encoding by switching frames of an inter prediction point group to be referenced for each node of a prediction tree (Predtree), the identification number of the reference frame selected for inter prediction (hereinafter referred to as frame number) may be added to each node of the prediction tree (Predtree).
  • frame number the identification number of the reference frame selected for inter prediction
  • the 3D data encoding apparatus 100 can improve encoding efficiency by selecting the optimum reference frame number for each node and performing inter prediction.
  • the 3D data decoding device 120 (see later) can determine from which reference frame to generate an inter prediction point by decoding the reference frame number added to each node of the bitstream. A bitstream with improved coding efficiency can be appropriately decoded by selecting the optimum reference frame number and inter-predicting it.
  • the reference point group for inter prediction may be a point group included in an encoded frame different from the encoding target frame, or may be a point group included in the same frame as the encoding target frame. It can be a group.
  • the three-dimensional data encoding apparatus 100 predicts the encoding target point using inter prediction in addition to intra prediction, thereby reducing the amount of information in the first residual signal to be entropy encoded. can improve the coding efficiency.
  • the 3D data encoding apparatus 100 does not always need to refer to the inter prediction point, and can be set at a predetermined time interval (for example, every 1 second), a predetermined frame interval (for example, every 30 frames), or a 3D
  • the buffer 107 storing the inter-prediction reference point cloud is initialized at an arbitrary timing for notification to the data decoding device, so that encoding is performed based only on the information of the point cloud to be encoded. may
  • the three-dimensional data encoding device 100 encodes the position information indicated by the coordinates represented by orthogonal coordinates.
  • the three-dimensional data encoding device 100 encodes the position information indicated by the coordinates expressed in polar coordinates.
  • FIG. 3 is a block diagram of the three-dimensional data decoding device 120 according to this embodiment.
  • FIG. 3 shows a processing unit related to decoding position information (geometry) of a point cloud, but the three-dimensional data decoding device 120 includes other processing units such as a processing unit that decodes attribute information of a point cloud.
  • a processing unit may be provided.
  • the three-dimensional data decoding device 120 performs inter-prediction decoding for decoding a point group to be decoded while referring to a decoded point group. For example, the 3D data decoding device 120 decodes the bitstream generated by the 3D data encoding device 100 shown in FIG.
  • the three-dimensional data decoding device 120 includes an entropy decoding unit 121, an adaptive inverse quantization unit 122, a buffer 123, an intra prediction unit 124, a buffer 125, a motion compensation unit 126, an inter prediction unit 127, and a switching unit. 128.
  • the 3D data decoding device 120 acquires the bitstream generated by the 3D data encoding device 100 .
  • the entropy decoding unit 121 generates an adaptively quantized first residual signal by entropy decoding the input bitstream for each three-dimensional point of a prediction tree (Predtree).
  • Adaptive inverse quantization section 122 adaptively inverse quantizes the adaptively quantized first residual signal to reproduce the first residual signal.
  • the first residual signal of each 3D point is added to the prediction value based on the prediction point corresponding to each 3D point, and then generated (output) as a decoded point.
  • 3D data decoding device 120 calculates the position information of one 3D point to be decoded by adding the prediction value and the prediction residual.
  • the buffer 123 holds the generated decoding points as a reference point group for intra prediction. For example, the buffer 123 may initialize data held for each prediction tree (target point group).
  • the buffer 125 also holds the generated decoding points as a reference point group for inter prediction. For example, the buffer 125 may initialize data held for each prediction tree (target point group).
  • the intra prediction unit 124 selects intra prediction points to be used for prediction, such as a plurality of 3D points (reference point group for intra prediction) included in a prediction tree (Predtree) including a 3D point to be decoded.
  • the information in the tree (Predtree) is referred to and determined by a predetermined method.
  • the intra prediction unit 124 uses two 3D points (decoding points) adaptively dequantized immediately before the 3D point to be decoded (for example, an ancestor node such as a parent node of a prediction tree). Intra prediction points may be determined by inserting.
  • the motion compensation unit 126 reproduces the decoded point group based on a plurality of 3D points (a plurality of decoding points) included in a prediction tree (Predtree) including the 3D point to be decoded, and reproduces the decoded point group.
  • An inter-prediction point group which is a reference point group for inter-prediction after alignment, is generated by correcting (motion compensation) the displacement between the group and the point group to be decoded.
  • the inter prediction unit 127 determines inter prediction points to be used for prediction by a predetermined method based on the motion-compensated inter prediction point group. For example, the inter prediction unit 127 may select a point closest to the intra prediction point from the group of inter prediction points as the inter prediction point, or may select the point closest to the intra prediction point as the inter prediction point. A 3D point (e.g., the closest 3D point to the previously decoded 3D point) near the original point (e.g., the 3D point corresponding to an ancestor node such as the parent node of the prediction tree) is selected as the inter prediction point.
  • a 3D point e.g., the closest 3D point to the previously decoded 3D point
  • the original point e.g., the 3D point corresponding to an ancestor node such as the parent node of the prediction tree
  • the inter prediction unit 127 may determine an inter prediction point using the decoded horizontal angle ⁇ p and laser_idp of the parent node of the prediction tree (Predtree). For example, the inter prediction unit 127 selects from among the inter prediction point group, the value ⁇ p+offset 3D points with ⁇ close in value to may be selected as inter-prediction points.
  • offset is a value of 0 or more, and the value may be determined according to, for example, the angular velocity of horizontal scanning of lidar.
  • the 3D data decoding device 120 generates a prediction value close to each value of the polar coordinates (d, ⁇ , laser_id) of the decoding target point from the inter-prediction point cloud to appropriately generate a bitstream with improved coding efficiency. can be decrypted.
  • a decoding target point is an example of a first three-dimensional point. Also, the decoding target point may be an example of the second three-dimensional point.
  • the switching unit 128 selects either intra prediction points or inter prediction points to determine prediction points to be used for prediction.
  • the position information of one or more candidate points among the plurality of decoded 3D points is determined as the prediction point, and the prediction value is calculated based on the prediction point.
  • the intra prediction unit 124 and the inter prediction unit 127 determine a prediction point (intra prediction point or inter prediction point) based on the 3D point decoded immediately before the 3D point to be decoded. That is, 3D data decoding device 120 determines one or more candidate points for calculating the predicted value based on one or more reference points among the plurality of decoded 3D points.
  • the one or more reference points are 3D points encoded immediately before the 3D point to be decoded. It may be the origin point.
  • the 3D data decoding device 120 may select either one of the intra prediction points and the inter prediction points as the prediction point according to the procedure of the flowchart of FIG. 5, which will be described later.
  • three-dimensional data decoding device 120 selects between intra prediction points and inter prediction points based on prediction information (prediction information) for selecting intra prediction points and inter prediction points. You may select any one of as a prediction point.
  • the prediction information may be entropy-encoded and described in the header of each 3D point, or may be described interleaved with each 3D point.
  • Information related to motion compensation such as motion vectors may be described in the header of a frame or prediction tree (Predtree), entropy-encoded and described in the header of each point, or may be described in the header of each point. It may be described interleaved with the origin point. In this way, prediction information or information about motion compensation may be notified to the 3D data decoding device 120 from the corresponding 3D data encoding device 100 .
  • the reference point group for inter prediction may be a point group included in an encoded frame different from the encoding target frame, or may be a point group included in the same frame as the encoding target frame. It can be a group.
  • the 3D data decoding device 120 predicts the decoding target points using not only intra prediction but also inter prediction, so that a bit stream (for example, A point cloud can be decoded from the bitstream output from the 3D data encoding apparatus 100 of FIG.
  • the 3D data decoding device 120 does not always need to refer to the inter prediction point, but rather at a predetermined time interval (for example, every 1 second), a predetermined frame interval (for example, every 30 frames), or a corresponding cubic Decoding is performed based only on the information of the point cloud to be decoded by initializing the buffer 125 storing the inter-prediction reference point cloud at an arbitrary timing notified from the original data encoding device 100 or the like. You may do so.
  • the three-dimensional data decoding device 120 can start jumping playback from a point group that is not the head of a bitstream that does not refer to an inter-prediction point, and can improve random access and error resistance of the bitstream. have a nature.
  • the three-dimensional data decoding device 120 decodes the position information indicated by the coordinates expressed by the orthogonal coordinates when the bitstream has encoded data in which the position information indicated by the coordinates expressed by the orthogonal coordinates is encoded. .
  • the 3D data decoding device 120 decodes the position information indicated by the coordinates expressed in polar coordinates when the bitstream has encoded data in which the position information indicated by the coordinates expressed in polar coordinates is encoded.
  • FIG. 4 is a flowchart showing an example of a procedure for encoding each 3D point of a prediction tree (Predtree) in the 3D data encoding device 100.
  • Predtree a prediction tree
  • the 3D data encoding device 100 first determines intra prediction points from a reference point group for intra prediction (S101).
  • the 3D data encoding apparatus 100 may determine intra prediction points using, for example, the method of determining prediction points using a prediction tree, disclosed in the embodiments already described. For example, 3D data encoding apparatus 100 generates a prediction tree using a plurality of encoded 3D points, and selects one or more candidate points from the plurality of encoded 3D points based on the prediction tree. You may choose.
  • the 3D data encoding apparatus 100 may determine, as an intra prediction point, a prediction point with the smallest code amount among at least one intra prediction point determined by at least one of the above methods.
  • the 3D data encoding apparatus 100 uses at least one intra-prediction point determined by at least one of the above methods, the prediction point having the smallest absolute value sum (or square sum) of coordinate residuals may be determined as intra prediction points.
  • the 3D data encoding device 100 outputs intra-prediction-related parameters (S102). If there are two or more candidates for the intra prediction point determination method determined in step S101, the 3D data encoding apparatus 100 outputs information indicating the selected candidate determination method to the bitstream as an intra prediction related parameter. may
  • the 3D data encoding device 100 determines inter prediction points by referring to at least one candidate point extracted from the inter prediction point group. For example, the 3D data encoding apparatus 100 may determine one candidate point as an inter prediction point, or determine a prediction point having coordinates that are average values of coordinates of a plurality of candidate points as an inter prediction point. good too. Alternatively, the 3D data encoding apparatus 100 may determine a prediction point having, as coordinates, an average value of coordinates of an intra prediction point and at least one candidate point, as an inter prediction point.
  • the 3D data encoding device 100 may search for a point located near the intra prediction point as at least one candidate point (S103).
  • the 3D data encoding device 100 may assign a smaller index value to each of the determined at least one inter prediction point in descending order of proximity to the intra prediction point (S104).
  • the three-dimensional data encoding apparatus 100 determines whether or not the search has ended (S105), and if the search has ended (Yes in S105), the process proceeds to the next step S106, where the search has not ended. If so (No in S105), the process returns to step S103.
  • the end of the search may be determined by finding a predetermined number of inter-prediction points, by searching for all points in a predetermined range, or by searching for a predetermined number of inter-prediction points. or searching all of the point cloud in the predetermined range.
  • the 3D data encoding device 100 determines a prediction method (S106). Specifically, the 3D data encoding apparatus 100 determines whether the method for determining prediction points is intra prediction or inter prediction. That is, the 3D data encoding apparatus 100 determines whether to determine the intra prediction point as the prediction point or the inter prediction point as the prediction point. For example, the 3D data encoding apparatus 100 may determine the prediction method for the prediction point with the smallest code amount among the intra prediction points and the inter prediction points. Also, the 3D data encoding apparatus 100 may determine the prediction method for the prediction point with the smallest absolute value sum (or square sum) of the coordinate residuals among the intra prediction points and the inter prediction points.
  • Three-dimensional data encoding apparatus 100 determines whether the determined prediction method mode is an inter mode indicating that the prediction method is inter prediction or an intra prediction mode indicating that the prediction method is intra prediction. Determine (S107).
  • the 3D data encoding apparatus 100 When the determined prediction method is inter prediction (inter mode in S107), the 3D data encoding apparatus 100 adds identification information (e.g., a flag) indicating that the inter prediction point is determined as the prediction point to the bitstream. Output (S108).
  • identification information e.g., a flag
  • the 3D data encoding apparatus 100 uses bit Output to a stream (S109). Index values may be assigned to one or more candidate points that are used to determine predicted values.
  • 3D data encoding apparatus 100 sets identification information (for example, a flag) indicating that intra prediction points have been determined as prediction points by bit Output to a stream (S111).
  • identification information in steps S108 and S111 is information indicating whether an inter prediction point or an intra prediction point is determined as a prediction point.
  • the 3D data encoding device 100 references the prediction points obtained by the determined prediction method and encodes the coordinate information of the 3D points to be encoded (S110).
  • the 3D data encoding apparatus 100 refers to the inter prediction point group and the intra prediction points to determine at least one inter prediction point, and obtains a prediction point from these intra prediction points and inter prediction points. A method is determined, and the position information (coordinate information) of the 3D point to be encoded is encoded with reference to the predicted point.
  • step S103 without referring to the intra prediction point, the 3D point encoded immediately before (for example, the 3D point corresponding to the ancestor node such as the parent node of the prediction tree) depends on the intra prediction related parameter. Inter-prediction points may be searched for in the vicinity of three-dimensional points that are uniquely determined independently of each other. In this case, step S102 may not be performed immediately after step S101, and step S102 may be performed immediately after step S111.
  • FIG. 5 is a flowchart showing an example of adaptive quantization processing for residual signals in encoding processing.
  • Adaptive quantization is performed in step S110.
  • the adaptive quantization unit 103 determines whether or not the residual of the coordinate components of the 3D point to be adaptively quantized next is the residual of the horizontal angle ⁇ (S121).
  • adaptive quantization section 103 performs A distance d in polar coordinates is obtained (S122).
  • the adaptive quantization unit 103 uses the acquired distance d to calculate the quantization step QS for the residual of the horizontal angle ⁇ (S123).
  • the quantization step QS is specifically a quantization step (that is, a quantization width).
  • the adaptive quantization unit 103 quantizes the residual of the horizontal angle ⁇ at the quantization step QS, and calculates the quantized value of the horizontal angle ⁇ after quantization (S124). Note that the quantized value of the horizontal angle ⁇ may be calculated using Equation 1 below.
  • adaptive quantization section 103 performs cubic If the residual of the coordinate component of the original point is the residual of the distance d or the residual of the elevation angle ⁇ , the residual of the distance d or the residual of the elevation angle ⁇ is quantized (S125). For example, the adaptive quantization section 103 may perform adaptive quantization on the residual of the distance d or the residual of the elevation angle ⁇ in the same manner as the quantization to the residual of the horizontal angle ⁇ . Quantization may be performed in the quantization step.
  • the quantization step QS may be calculated so as to decrease as the distance d increases (that is, increase as the distance d decreases). Specifically, the quantization step QS may be calculated using Equation 2 below.
  • the quantization step QS may be calculated by dividing a predetermined reference value ⁇ precision by the distance d.
  • the distance d used in Equation 2 is the distance in the polar coordinates of the three-dimensional point to be encoded, it is not limited to this.
  • the distance d may be the distance in polar coordinates of the 3D point encoded in the encoding order prior to the 3D point to be encoded.
  • the distance d may be a distance calculated using distances of polar coordinates of a plurality of three-dimensional points encoded in an encoding order prior to the encoding target three-dimensional point. It may be the average, median, maximum value, minimum value, etc.
  • the distance d is calculated using the distance of the three-dimensional point to be encoded and the distance of the polar coordinates of one or more three-dimensional points encoded in the encoding order prior to the three-dimensional point to be encoded. It may be a distance, for example, the average of the distance of the 3D point to be encoded and the distance of the polar coordinates of one or more 3D points encoded in the encoding order before the 3D point to be encoded, It may be a median value, maximum value, minimum value, or the like.
  • the distance d may be a distance calculated using the polar coordinate distances of a plurality of three-dimensional points encoded in the encoding order after the encoding target three-dimensional point. It may be the average, median, maximum value, minimum value, etc. of the polar coordinate distances of a plurality of 3D points encoded in the encoding order after the target 3D point. Further, the distance d is calculated using the distance of the three-dimensional point to be encoded and the distance of the polar coordinates of one or more three-dimensional points encoded in the encoding order after the three-dimensional point to be encoded.
  • It may be a distance, for example, the average of the distance of the 3D point to be encoded and the distance of the polar coordinates of one or more 3D points encoded in the encoding order after the 3D point to be encoded, It may be a median value, maximum value, minimum value, or the like.
  • the one or more 3D points encoded in the encoding order prior to the 3D point to be encoded is an example of the one or more second 3D points or the one or more fourth 3D points.
  • the one or more 3D points encoded in the encoding order after the 3D point to be encoded is another example of the one or more second 3D points or the one or more fourth 3D points.
  • the one or more second 3D points are 3D points that are included in the plurality of 3D points and located around the 3D point to be encoded.
  • a 3D point located in the periphery means that the spatial position is close to the 3D point to be encoded, or the temporal position is close to the 3D point to be encoded.
  • a spatial position close to the 3D point to be encoded means a 3D point located at a position where the distance from the 3D point to be encoded is less than a predetermined distance, or a 3D point to be encoded are three-dimensional points in an order whose difference from the coding order of is less than a predetermined difference.
  • a temporal position close to a 3D point to be encoded is a 3D point included in a frame whose generation order difference is less than a predetermined difference in the generation order of a plurality of frames.
  • the quantization step QS is not limited to being calculated by Equation 2.
  • the quantization step QS may be calculated by referring to a table in which values are associated with distances d in multiple stages.
  • the quantization step QS is determined to be the first value when the distance d is included in the first distance range, and is determined to be the second distance range where the distance d is greater than the maximum value of the first distance range. If included, a second value that is less than the first value may be determined. That is, the quantization step QS may be determined to be a large first value for a short first distance range, and may be determined to a small second value for a long second distance range.
  • the relationship between the quantization step QS and the distance d does not need to be a linear function, and may satisfy a monotonically decreasing relationship in which the quantization step QS decreases as the distance d increases.
  • the table may associate the first distance range and the first value, and may associate the second distance range and the second value. Further, the table is not limited to dividing the distance range into two stages, and may be divided into three or more stages. Even in this case, the distance indicated by the divided distance range is large. A quantization step QS having a smaller value should be associated.
  • the quantization step QS is set so that the value of the quantization step QS decreases as the value of the distance d increases, and the value of the quantization step QS increases as the value of the distance d decreases. calculated to As a result, the larger the distance d, the smaller the quantization step QS, so that quantization errors can be suppressed, and the smaller the distance d, the larger the quantization step QS, so more information can be reduced. .
  • the coding efficiency can be improved by quantizing the residual signal by increasing the quantization step QS as the distance d decreases.
  • ⁇ precision used in Equation 2 is a parameter representing the bit precision of the horizontal angle ⁇ .
  • ⁇ precision may be a parameter representing the prediction accuracy of the horizontal angle ⁇ .
  • the larger the prediction accuracy of the horizontal angle ⁇ the more accurate the prediction value can be generated, and the smaller the calculated residual.
  • the smaller the prediction accuracy value the larger the calculated residual error, because an inaccurate prediction value is calculated. Therefore, the smaller the prediction accuracy, the larger the quantization step and the more the encoding efficiency can be improved.
  • the prediction accuracy is, for example, the bit accuracy of predicted values, the bit accuracy of interpolation, and the like.
  • the three-dimensional data encoding device 100 may add ⁇ precision to the header of GPS (geometry parameter set), slice, etc. and include it in the bitstream.
  • the bit precision represents the number of bits expressing the horizontal angle ⁇ .
  • a bit precision of 32 bits indicates that the horizontal angle ⁇ is represented by a 32-bit numerical value.
  • the 3D data encoding apparatus 100 may add a parameter for calculating ⁇ precision to the header of GPS, slice, or the like.
  • the 3D data decoding device 120 can know the bit precision of the horizontal angle ⁇ used in the 3D data encoding device 100 by decoding the bitstream. I can decode the bitstream properly.
  • ⁇ precision may have different values for intra prediction and inter prediction.
  • ⁇ precisionIntra for intra prediction and ⁇ precisionInter for inter prediction may be prepared, and the value of ⁇ precision may be switched according to intra prediction or inter prediction.
  • the quantization step QS can be switched depending on whether intra prediction or inter prediction, and coding efficiency can be improved. For example, if intra prediction tends to result in a larger residual signal after prediction of ⁇ compared to inter prediction, ⁇ precisionIntra is set smaller than ⁇ precisionInter so that the quantization step QS of intra prediction is inter-predicted.
  • the quantization step QS may be smaller than the prediction quantization step, and the coding efficiency may be improved by suppressing the quantization error of the intra-prediction residual signal.
  • the calculated quantization step QS can also be calculated to have different values for inter prediction and intra prediction. That is, in quantization, the first residual between the horizontal angle ⁇ and the inter prediction value predicted by inter prediction is calculated using the first quantization step QS1. Also, in quantization, a second residual between the horizontal angle ⁇ and an intra prediction value predicted by intra prediction is calculated using a second quantization step QS2 different from the first quantization step QS1. Specifically, the first quantization step QS1 and the second quantization step QS2 may be calculated using Equations 3 and 4 below, respectively.
  • the first quantization step QS1 may be calculated using ⁇ precisionInter as the first reference value and the distance d.
  • the second quantization step QS2 may be calculated using ⁇ precisionIntra and the distance d as the second reference value.
  • the three-dimensional data encoding device 100 may add ⁇ precisionIntra and ⁇ precisionInter to headers such as GPS and slices and include them in the bitstream. That is, the 3D data encoding apparatus 100 may generate a bitstream including the first reference value and the second reference value.
  • ⁇ precisionIntra is an example of a second reference value in intra prediction.
  • ⁇ precisionIntra may be a parameter representing the bit precision of the horizontal angle ⁇ , or may be a parameter representing the prediction accuracy of the horizontal angle ⁇ .
  • ⁇ precisionInter is an example of a first reference value in inter prediction.
  • ⁇ precisionInter may be a parameter representing the bit precision of the horizontal angle ⁇ , or may be a parameter representing the prediction accuracy of the horizontal angle ⁇ .
  • the reference value may be a value that indicates the accuracy of predictive values that can be generated by intra-prediction and inter-prediction.
  • the three-dimensional data encoding device 100 can improve encoding efficiency while suppressing quantization errors by switching the quantization step according to the reference value.
  • the 3D data encoding device 100 may add parameters for calculating ⁇ precisionIntra and ⁇ precisionInter to headers such as GPS and slices.
  • the 3D data decoding device 120 converts the bit precision of the horizontal angle ⁇ of each of the intra prediction and the inter prediction used in the 3D data encoding device 100 into the bitstream. can be known by decoding , and the bitstream can be decoded appropriately.
  • ⁇ precision which is the bit precision of the horizontal angle ⁇
  • the bit precision of the horizontal angle ⁇ may be switched.
  • ⁇ precision may be switched in frame units, slice units, or stream units. That is, ⁇ precision may be switched even if intra prediction is continued when the frame or slice of the 3D point to be encoded is switched in intra prediction. Also, ⁇ precision may be switched even if inter prediction is continued when the frame or slice of the 3D point to be encoded is switched in inter prediction.
  • the 3D data encoding apparatus 100 may add the bit precision of the horizontal angle ⁇ or information for generating it to the header of each frame or slice.
  • ⁇ precision may have the same value in units of a predetermined point group including one or more 3D points, that is, in units of frames, units of slices, units of streams, and the like.
  • the same value may be used for ⁇ precisionInter in units of predetermined point groups including one or more three-dimensional points, that is, in units of frames, units of slices, units of streams, and the like.
  • ⁇ precisionIntra the same value may be used in units of a predetermined point group including one or more 3D points, that is, in units of frames, units of slices, units of streams, and the like.
  • FIG. 6 is a flowchart showing an example of adaptive inverse quantization processing for quantized values generated by adaptive quantization in encoding processing.
  • Adaptive inverse quantization is performed after the adaptive quantization described in FIG. 5, for example, in step S110.
  • Adaptive inverse quantization section 104 determines whether or not the quantized value of the residual of the coordinate component of the 3D point to be adaptively inverse quantized next is the quantized value of the residual of horizontal angle ⁇ . (S131).
  • Adaptive inverse quantization section 104 performs adaptive inverse quantization next when the quantized value of the residual of the coordinate component of the encoding target 3D point is the quantized value of the residual of horizontal angle ⁇ (Yes in S131 ), the distance d in the polar coordinates of the three-dimensional point to be encoded is obtained (S132).
  • the adaptive inverse quantization unit 104 uses the acquired distance d to calculate the inverse quantization step iQS for the quantized value of the residual of the horizontal angle ⁇ (S133).
  • the inverse quantization step iQS is also called an inverse quantization width. Note that if the same three-dimensional point is processed, the quantization step QS calculated in step S123 and the inverse quantization step iQS calculated in step S133 have the same value. That is, the inverse quantization step iQS is calculated in the same manner as the quantization step QS.
  • the adaptive inverse quantization unit 104 inversely quantizes the quantized value of the residual of the horizontal angle ⁇ at the inverse quantization step iQS to calculate the residual of the horizontal angle ⁇ (S134). Note that the residual signal of the horizontal angle ⁇ may be calculated using Equation 5 below.
  • Horizontal angle ⁇ residual signal horizontal angle ⁇ residual signal quantized value * iQS (Equation 5)
  • adaptive inverse quantization section 104 performs adaptive inverse quantization next when the quantized value of the residual of the coordinate component of the encoding target 3D point is not the quantized value of the residual of horizontal angle ⁇ (in S131 No), that is, if the quantized value of the residual of the coordinate component of the three-dimensional point to be encoded is the quantized value of the residual of the distance d or the quantized value of the residual of the elevation angle ⁇ , then the residual of the distance d
  • the quantized value of the difference or the quantized value of the residual of the elevation angle ⁇ is inversely quantized (S135).
  • the adaptive inverse quantization unit 104 performs inverse quantization to the quantized value of the residual of the horizontal angle ⁇ with respect to the quantized value of the residual of the distance d or the quantized value of the residual of the elevation angle ⁇ .
  • Adaptive inverse quantization may be performed, or quantization may be performed with a fixed inverse quantization step.
  • quantization is adaptively executed according to the distance d of the encoding target point for the residual signal of the horizontal angle ⁇ in the polar coordinates of the encoding target point.
  • the quantized value of the residual signal of the horizontal angle ⁇ in the polar coordinates of the encoding target point is adaptively inversely quantized according to the distance d of the encoding target point. is executed. Coding efficiency can be improved by adaptively controlling the quantization of the residual signal of the horizontal angle ⁇ according to the value of the distance d.
  • the residual signal of the horizontal angle ⁇ here is generated from the difference between the intra prediction value calculated by the intra prediction and the input value to be encoded when the encoding target point is encoded by intra prediction. is the residual signal. Adaptive quantization may be performed on the residual signal.
  • the residual signal of the horizontal angle ⁇ is the residual signal generated from the difference between the inter prediction value calculated by inter prediction and the input value to be encoded. and adaptive quantization may be performed on the residual signal.
  • the 3D data encoding apparatus 100 may apply adaptive quantization to intra-prediction residual signals and not apply adaptive quantization to inter-prediction residual signals. This makes it possible to improve the encoding efficiency of intra prediction while suppressing the amount of processing. Further, for example, the 3D data encoding apparatus 100 may apply adaptive quantization to the inter-prediction residual signal and may not apply adaptive quantization to the intra-prediction residual signal. This makes it possible to improve the inter-prediction encoding efficiency while suppressing the amount of processing.
  • an example of adaptive quantization and adaptive inverse quantization with respect to the horizontal angle ⁇ of the polar coordinates is shown, but it is not necessarily limited to this.
  • adaptive quantization and adaptive inverse quantization are applied to the elevation angle ⁇ according to the distance d using the same method as for the horizontal angle ⁇ . I don't mind. Thereby, the encoding efficiency of the elevation angle ⁇ can be improved.
  • ⁇ precision is used as a parameter for controlling the quantization step QS in this embodiment, any information may be used as long as it is a quantization parameter that can control the value of the quantization step QS.
  • a quantization parameter for the horizontal angle ⁇ may be added to a header or the like, and a value calculated from the quantization parameter may be used instead of ⁇ precision.
  • three-dimensional data encoding apparatus 100 prepares a first quantization parameter for inter prediction and a second quantization parameter for intra prediction of horizontal angle ⁇ , respectively.
  • a 2-quantization parameter may be added to a header such as GPS or slice.
  • the 3D data encoding apparatus 100 performs quantization on the 3D point without adaptive quantization. Ordinary quantization may be performed.
  • FIG. 7 is a flowchart showing an example of a procedure for decoding each 3D point of a prediction tree (Predtree) in the 3D data decoding device 120.
  • FIG. FIG. 7 corresponds to the decoding of the bitstream generated according to the encoding procedure of FIG. That is, the bitstream includes an encoded first residual signal (prediction residual) and index values assigned to candidate points used to calculate the prediction value.
  • Prediction residual an encoded first residual signal
  • index values assigned to candidate points used to calculate the prediction value assigned to candidate points used to calculate the prediction value.
  • the 3D data decoding device 120 first acquires intra-prediction-related parameters from the bitstream (S141).
  • the 3D data decoding device 120 determines intra prediction points based on the acquired intra prediction related parameters (S142). Specifically, the 3D data decoding device 120 determines intra prediction points in the same manner as in step S101 of FIG. The three-dimensional data decoding device 120 is notified of intra-prediction-related parameters from the corresponding three-dimensional data encoding device 100, and determines intra-prediction points according to the intra-prediction-related parameters.
  • the intra-prediction-related parameters are obtained in step S141 and include information specifying at least one method of determining intra-prediction points and parameters accompanying this information.
  • the 3D data decoding device 120 acquires identification information indicating the prediction method mode from the bitstream (S143).
  • three-dimensional data decoding device 120 determines whether the acquired identification information indicates an inter prediction mode indicating that the prediction method is inter prediction or an intra prediction mode indicating that the prediction method is intra prediction. Determine (S144).
  • the 3D data decoding device 120 acquires inter prediction related parameters from the bitstream (S145).
  • the 3D data decoding device 120 executes processing (S146 to S149) for determining inter prediction points. Specifically, the 3D data decoding device 120 determines inter prediction points by the same method as steps S103 to S105 in FIG. For example, the 3D data decoding device 120 determines inter prediction points by referring to at least one candidate point extracted from the inter prediction point group. For example, 3D data decoding device 120 may determine one candidate point as an inter prediction point, or may determine a prediction point having coordinates that are average values of coordinates of a plurality of candidate points as an inter prediction point. good. Alternatively, the 3D data decoding device 120 may determine, as an inter prediction point, a prediction point having, as coordinates, an average value of coordinates of an intra prediction point and at least one candidate point.
  • the 3D data decoding device 120 may search for a point located near the intra prediction point as at least one candidate point (S146).
  • the 3D data decoding device 120 may give each of the determined at least one inter prediction point a smaller index value in descending order of proximity to the intra prediction point (S147).
  • the three-dimensional data decoding device 120 determines whether or not the search has ended (S148). If the search has ended (Yes in S148), the process proceeds to the next step S149. (No in S148), the process returns to step S146.
  • the end of the search may be determined by finding a predetermined number of inter-prediction points, by searching for all points in a predetermined range, or by searching for a predetermined number of inter-prediction points. or searching all of the point cloud in the predetermined range.
  • the 3D data decoding device 120 determines inter prediction points based on inter prediction-related parameters while referring to the inter prediction point group and intra prediction points (S149). For example, the 3D data decoding device 120 uses information about the number of candidate points used to determine the coordinates of the inter prediction points, which are included in the inter prediction related parameters, and an index value assigned to each candidate point used. Inter prediction points are determined by identifying candidate points used for determining the coordinates of inter prediction points based on and determining the coordinates of inter prediction points using the identified candidate points. That is, the 3D data decoding device 120 selects one candidate point from a plurality of decoded 3D points based on the index value included in the bitstream.
  • the 3D data decoding device 120 After step S149, or in the case of intra mode in step S144, the 3D data decoding device 120 refers to the prediction points obtained by the designated prediction method, and determines the position information (coordinate information) of the 3D point to be decoded. ) is decoded (S150).
  • 3D data decoding device 120 refers to the inter prediction point to decode the coordinate information of the point to be decoded, and when the prediction method is intra prediction, the intra prediction point to decode the coordinate information of the decoding target point.
  • step S146 without referring to the intra prediction point, the 3D point decoded immediately before (for example, the 3D point corresponding to the ancestor node such as the parent node of the prediction tree), regardless of the intra prediction related parameter An inter-prediction point may be searched for in the neighborhood of a three-dimensional point uniquely determined by .
  • steps S141 and S142 may not be performed immediately before step S143, and steps S141 and S142 may be performed when the intra mode is determined in step S144.
  • FIG. 8 is a flowchart showing an example of adaptive inverse quantization processing for quantized values in decoding processing.
  • Adaptive inverse quantization is performed, for example, in step S150.
  • the adaptive inverse quantization unit 122 determines whether the quantized value of the residual of the coordinate component of the decoding target 3D point to be adaptively inverse quantized next is the quantized value of the residual of the horizontal angle ⁇ . (S151).
  • Adaptive inverse quantization section 122 performs adaptive inverse quantization next when the quantized value of the residual of the coordinate component of the decoding target 3D point is the quantized value of the residual of horizontal angle ⁇ (Yes in S151). , the distance d in the polar coordinates of the three-dimensional point to be decoded is obtained (S152).
  • the adaptive inverse quantization unit 122 uses the acquired distance d to calculate the inverse quantization step iQS for the quantized value of the residual of the horizontal angle ⁇ (S153).
  • the adaptive inverse quantization unit 122 inversely quantizes the quantized value of the residual of the horizontal angle ⁇ at the inverse quantization step iQS to calculate the residual of the horizontal angle ⁇ (S154). Note that the residual signal of the horizontal angle ⁇ may be calculated using Equation 6 below.
  • Horizontal angle ⁇ residual signal horizontal angle ⁇ residual signal quantized value * iQS (Equation 6)
  • adaptive inverse quantization section 104 performs adaptive inverse quantization next when the quantized value of the residual of the coordinate component of the encoding target 3D point is not the quantized value of the residual of horizontal angle ⁇ (in S151 No), that is, if the quantized value of the residual of the coordinate component of the three-dimensional point to be encoded is the quantized value of the residual of the distance d or the quantized value of the residual of the elevation angle ⁇ , then the residual of the distance d
  • the quantized value of the difference or the quantized value of the residual of the elevation angle ⁇ is inversely quantized (S155).
  • the adaptive inverse quantization unit 104 performs inverse quantization to the quantized value of the residual of the horizontal angle ⁇ with respect to the quantized value of the residual of the distance d or the quantized value of the residual of the elevation angle ⁇ .
  • Adaptive inverse quantization may be performed, or quantization may be performed with a fixed inverse quantization step.
  • the inverse quantization step iQS may be calculated so as to decrease as the distance d increases (that is, increase as the distance d decreases) in the same manner as the quantization step QS.
  • the inverse quantization step iQS may be calculated using Equation 7 below.
  • the inverse quantization step iQS may be calculated by dividing a predetermined reference value ⁇ precision by the distance d.
  • the distance d used in Equation 7 is the distance in the polar coordinates of the three-dimensional point to be decoded, it is not limited to this.
  • the distance d may be the polar coordinate distance of the 3D point decoded in the decoding order prior to the 3D point to be decoded.
  • the distance d may be a distance obtained from the distance of the polar coordinates of a plurality of three-dimensional points decoded in the decoding order prior to the three-dimensional point to be decoded. It may be the average, median, maximum value, minimum value, etc.
  • the distance d may be a distance obtained from the distance of the 3D point to be decoded and the distance of the polar coordinates of one or more 3D points decoded in decoding order prior to the 3D point to be decoded. , for example, the average, median, maximum value, minimum value, etc. of the distance of the 3D point to be decoded and the distance of the polar coordinates of one or more 3D points decoded in the decoding order prior to the 3D point to be decoded There may be.
  • the distance d may be a distance calculated using distances of polar coordinates of a plurality of three-dimensional points decoded in decoding order after the three-dimensional point to be decoded. It may be the average, median, maximum value, minimum value, etc. of distances of polar coordinates of a plurality of three-dimensional points decoded in decoding order after the point.
  • the distance d is a distance calculated using the distance of the three-dimensional point to be decoded and the distance of the polar coordinates of one or more three-dimensional points decoded in the decoding order after the three-dimensional point to be decoded, For example, the average, median, maximum and minimum values of the distance of the 3D point to be decoded and the distance of the polar coordinates of one or more 3D points decoded in the decoding order after the 3D point to be decoded and so on.
  • the one or more 3D points decoded in the decoding order before the 3D point to be decoded is an example of the one or more second 3D points or the one or more fourth 3D points.
  • the one or more 3D points decoded in decoding order after the 3D point to be decoded is another example of the one or more second 3D points or the one or more fourth 3D points.
  • the one or more second 3D points are 3D points that are included in the plurality of 3D points and located around the 3D point to be decoded.
  • a three-dimensional point located in the vicinity means that the spatial position is close to the decoding target three-dimensional point, or the temporal position is close to the decoding target three-dimensional point.
  • a spatial position close to a 3D point to be decoded means a 3D point located at a position where the distance from the 3D point to be decoded is less than a predetermined distance, or a decoding order of the 3D points to be decoded. are the three-dimensional points in the order that the difference between is less than the predetermined difference.
  • a temporal position close to a 3D point to be decoded means a 3D point included in a frame whose generation order difference is less than a predetermined difference in the generation order of a plurality of frames.
  • ⁇ precision used in Equation 7 is a parameter representing the bit precision of the horizontal angle ⁇ .
  • ⁇ precision may be a parameter representing the prediction accuracy of the horizontal angle ⁇ .
  • the larger the prediction accuracy of the horizontal angle ⁇ the more accurate the prediction value can be generated, and the smaller the calculated residual.
  • the smaller the prediction accuracy value the larger the calculated residual error, because an inaccurate prediction value is calculated. Therefore, the smaller the prediction accuracy, the larger the quantization step and the more the encoding efficiency can be improved.
  • the prediction accuracy is, for example, the bit accuracy of predicted values, the bit accuracy of interpolation, and the like.
  • the three-dimensional data decoding device 120 may acquire ⁇ precision by decoding what is added to a bitstream such as a header of GPS, slice, or the like. Also, the three-dimensional data decoding device 120 may acquire parameters for calculating ⁇ precision by decoding from headers such as GPS and slices. By decoding ⁇ precision from the bitstream, the 3D data decoding device 120 can know the bit precision of the horizontal angle ⁇ used in the 3D data encoding device 100 by decoding the bitstream. I can decode the stream properly.
  • ⁇ precision may have different values for intra prediction and inter prediction.
  • ⁇ precisionIntra for intra prediction and ⁇ precisionInter for inter prediction may be respectively decoded from a bitstream, and the value of ⁇ precision used for decoding may be switched according to intra prediction or inter prediction. Accordingly, by switching the quantization step QS depending on whether intra-prediction or inter-prediction, a bitstream with improved coding efficiency can be appropriately decoded.
  • the three-dimensional data decoding device 120 may acquire parameters for calculating ⁇ precisionIntra and ⁇ precisionInter by decoding information added to headers such as GPS and slice.
  • the calculated inverse quantization step iQS can also be calculated to have different values for inter prediction and intra prediction. That is, in the inverse quantization, the first residual between the horizontal angle ⁇ and the inter prediction value predicted by the inter prediction is calculated using the first inverse quantization step iQS1. Also, in quantization, a second residual between the horizontal angle ⁇ and the intra prediction value predicted by intra prediction is calculated using a second inverse quantization step iQS2 different from the first inverse quantization step iQS1. Specifically, the first inverse quantization step iQS1 and the second inverse quantization step iQS2 may be calculated using Equations 8 and 9 below, respectively.
  • the first inverse quantization step iQS1 may be calculated using ⁇ precisionInter as the first reference value and the distance d.
  • the second inverse quantization step iQS2 may be calculated using ⁇ precisionIntra and the distance d as the second reference value.
  • ⁇ precisionIntra is an example of a second reference value in intra prediction.
  • ⁇ precisionIntra may be a parameter representing the bit precision of the horizontal angle ⁇ , or may be a parameter representing the prediction accuracy of the horizontal angle ⁇ .
  • ⁇ precisionInter is an example of a first reference value in inter prediction.
  • ⁇ precisionInter may be a parameter representing the bit precision of the horizontal angle ⁇ , or may be a parameter representing the prediction accuracy of the horizontal angle ⁇ .
  • the reference value may be a value that indicates the accuracy of predictive values that can be generated by intra-prediction and inter-prediction.
  • the 3D data decoding device 120 can decode the first residual or the second residual with improved coding efficiency by switching the quantization step according to the reference value.
  • the inverse quantization step iQS is calculated in the same manner as the quantization step QS, it can also be said to be the quantization step QS. Also, since the first inverse quantization step iQS1 is calculated in the same manner as the first quantization step QS1, it can also be said to be the first quantization step QS1. Also, since the second inverse quantization step iQS2 is calculated in the same manner as the second quantization step QS2, it can also be said to be the second quantization step QS2.
  • ⁇ precision which is the bit precision of the horizontal angle ⁇
  • intra prediction frame or slice The bit precision of the horizontal angle ⁇ may be switched between inter-predicted frames or slices and added to the bitstream.
  • ⁇ precision added to the bitstream may be switched on a frame-by-frame basis, a slice-by-slice basis or a stream-by-stream basis. That is, ⁇ precision added to the bitstream may be switched even if intra prediction is continued when the frame or slice of the 3D point to be encoded is switched in intra prediction.
  • ⁇ precision added to the bitstream may be switched even if inter prediction is continued when the frame or slice of the 3D point to be encoded is switched in inter prediction.
  • the 3D data decoding device 120 may decode the bit precision of the horizontal angle ⁇ or the information for generating it from the header for each frame or slice.
  • ⁇ precision may have the same value in units of a predetermined point group including one or more 3D points, that is, in units of frames, units of slices, units of streams, and the like.
  • the same value may be used for ⁇ precisionInter in units of predetermined point groups including one or more three-dimensional points, that is, in units of frames, units of slices, units of streams, and the like.
  • ⁇ precisionIntra the same value may be used in units of a predetermined point group including one or more 3D points, that is, in units of frames, units of slices, units of streams, and the like.
  • inverse quantization is adaptively executed according to the distance d of the decoding target point for the quantized value of the residual signal of the horizontal angle ⁇ in the polar coordinates of the decoding target point. be done.
  • the quantization of the residual signal of the horizontal angle ⁇ can be adaptively controlled by the value of the distance d to appropriately decode the bitstream with improved coding efficiency.
  • three-dimensional data decoding device 120 When decoding the decoding target point by intra prediction, three-dimensional data decoding device 120 combines the intra prediction value calculated by intra prediction with the residual signal of horizontal angle ⁇ obtained by adaptive inverse quantization. is added to calculate the decoded value (horizontal angle ⁇ ) of the decoding target point.
  • three-dimensional data decoding apparatus 120 when decoding the decoding target point by inter prediction, three-dimensional data decoding apparatus 120 combines the inter prediction value calculated by inter prediction and the residual signal of horizontal angle ⁇ obtained by adaptive inverse quantization. By adding, the decoded value (horizontal angle ⁇ ) of the decoding target point is calculated. To obtain the decoded value of the decoding target point by adding the residual signal obtained by applying common adaptive inverse quantization to the prediction value generated by at least one of intra prediction and inter prediction in this way , the bitstream can be appropriately decoded while suppressing the circuit scale of additional hardware and the amount of software code.
  • the present invention is not necessarily limited to this.
  • the three-dimensional data decoding device 120 applies adaptive quantization to the intra-prediction residual signal and does not apply adaptive quantization to the inter-prediction residual signal.
  • the bitstream may be decoded with adaptive dequantization applied for prediction residual signals and without adaptive dequantization applied for inter-prediction residual signals. As a result, it is possible to appropriately decode a bitstream whose encoding efficiency is improved by intra prediction while suppressing the amount of processing.
  • the three-dimensional data decoding device 120 applies adaptive quantization to the inter-prediction residual signal and does not apply adaptive quantization to the intra-prediction residual signal.
  • the bitstream may be decoded with adaptive dequantization applied for inter-prediction residual signals and without applying adaptive dequantization for intra-prediction residual signals.
  • the 3D data decoding device 120 can appropriately decode a bitstream in which inter-prediction encoding efficiency is improved while suppressing the amount of processing.
  • FIG. 9 is a block diagram of a three-dimensional data encoding device 130 according to a modification of the present embodiment. Note that FIG. 9 shows a processing unit for encoding the position information (geometry) of the point cloud, but the three-dimensional data encoding device 130 includes a processing unit for encoding the attribute information of the point cloud, etc. may be provided with other processing units. In inter-prediction and intra-prediction, a point group to be encoded is encoded while referring to an already-encoded point group.
  • the three-dimensional data encoding device 130 differs from the three-dimensional data encoding device 100 of FIG. 1 in its configuration and operation by converting point groups having position information expressed in rectangular coordinates into position information expressed in polar coordinates.
  • the three-dimensional data encoding device 130 is the same as the three-dimensional data encoding device 100 in terms of its configuration and operation, except for the above differences.
  • the three-dimensional data encoding device 130 includes a coordinate transformation unit 131, a grouping unit 132, a buffer 133, an adaptive quantization unit 134, an adaptive inverse quantization unit 135, a buffer 136, an intra prediction unit 137, A buffer 138 , a motion compensation unit 139 , an inter prediction unit 140 , a switching unit 141 , a coordinate transformation unit 142 , a buffer 143 , a quantization unit 144 and an entropy coding unit 145 are provided.
  • the coordinate conversion unit 131 converts the coordinate system of the position information of the target point group, which is the input point group data to be encoded, from the orthogonal coordinate system to the polar coordinate system. That is, the coordinate transformation unit 131 generates position information in the polar coordinate system by transforming the coordinate system of the position information in the orthogonal coordinate system of one three-dimensional point to be encoded.
  • the point group to be encoded converted into polar coordinates is output to the grouping unit 132 .
  • the grouping unit 132 extracts a point group to be a prediction tree (Predtree), which is a unit of encoding, from the target point group, which is a point group to be encoded converted into polar coordinates, and sets them as one group. .
  • a buffer 133 holds the generated prediction tree. For example, the buffer 133 may initialize data held for each prediction tree. A plurality of three-dimensional points included in the prediction tree (Predtree) held in the buffer 133 are sequentially subjected to encoding processing one by one.
  • the difference (first residual difference signal) is calculated.
  • This first residual signal is a residual signal of positional information expressed in polar coordinates.
  • the first residual signal is also called prediction residual.
  • This first residual signal is an example of the first residual. Since the positional information of the plurality of three-dimensional points held in the buffer 133 has been converted into the polar coordinate system, the first residual is the difference between the positional information in the polar coordinate system after conversion and the predicted value.
  • the adaptive quantization section 134 adaptively quantizes the first residual signal.
  • the entropy coding unit 111 entropy-codes the adaptively quantized first residual signal to generate coded data, and outputs (generates) a bitstream containing the coded data.
  • the adaptive inverse quantization section 135 adaptively inversely quantizes the first residual signal adaptively quantized by the adaptive quantization section 134 .
  • the adaptively inverse quantized first residual signal is added to the prediction value based on the selected prediction points (one or more candidate points) to obtain three-dimensional points (reference points) used for intra prediction and inter prediction. is decoded as Note that the predicted value is calculated based on position information of one or more candidate points.
  • the buffer 136 holds the decoded intra-prediction reference point group. For example, the buffer 136 may initialize data held for each prediction tree (target point group).
  • the buffer 138 also holds reference point groups for inter prediction. For example, the buffer 138 may initialize data held for each prediction tree (target point group).
  • the position information of the decoding points held in the buffers 136 and 138 is represented by polar coordinates.
  • the coordinate transformation unit 142 acquires the same decoding points as the decoding points held in the buffers 136 and 138, and transforms the coordinate system of the position information of the acquired decoding points from the polar coordinate system to the rectangular coordinate system. That is, the coordinate transformation unit 142 inversely transforms the coordinate system of the position information in the polar coordinate system after transformation by the coordinate transformation unit 131 to generate the position information in the orthogonal coordinate system.
  • the buffer 143 holds the positional information of the three-dimensional points expressed in orthogonal coordinates input to the three-dimensional data encoding device 130 .
  • the difference (second residual signal) between the input positional information in the rectangular coordinate system and the positional information in the rectangular coordinate system whose coordinate system is converted from the polar coordinate system to the rectangular coordinate system in the coordinate conversion unit 142 is calculated.
  • This second residual signal is an example of the second residual. That is, the second residual signal is the position information in the orthogonal coordinate system that has not been coordinate-transformed by the coordinate transforming unit 131, and the position information that has been transformed once into the polar coordinates and then inversely transformed back into the orthogonal coordinate system. , and is a transformation error generated by coordinate transformation.
  • the quantization unit 144 quantizes the second residual signal.
  • the entropy encoding unit 145 entropy-encodes the first residual signal and the quantized second residual signal to generate encoded data, and outputs a bitstream containing the encoded data.
  • the 3D data encoding device 130 converts the coordinate system of the position information of the 3D points from the orthogonal coordinate system to the polar coordinate system, and encodes the position information in the polar coordinate system.
  • FIG. 10 is a block diagram of a 3D data decoding device 150 according to a modification of the present embodiment.
  • FIG. 10 shows a processing unit related to decoding of point cloud position information (geometry), but the three-dimensional data decoding device 150 includes other processing units such as a processing unit that decodes point cloud attribute information.
  • a processing unit may be provided.
  • the three-dimensional data decoding device 150 performs inter-prediction decoding for decoding a point group to be decoded while referring to a decoded point group.
  • the 3D data decoding device 150 decodes the bitstream generated by the 3D data encoding device 130 shown in FIG. 3D data decoding device 150 differs from 3D data decoding device 120 in FIG. 3 in its basic configuration and operation.
  • the transformation error obtained by entropy decoding and inverse quantization of the residual signal is added to the decoding point transformed from the corresponding polar coordinate decoding point to the orthogonal coordinate decoding point, and is output as the orthogonal coordinate decoding point.
  • the three-dimensional data decoding device 150 is the same as the three-dimensional data decoding device 120 except for the above differences.
  • the three-dimensional data decoding device 150 includes an entropy decoding unit 151, an adaptive inverse quantization unit 152, a buffer 153, an intra prediction unit 154, a buffer 155, a motion compensation unit 156, an inter prediction unit 157, and a switching unit. 158 , a coordinate transformation unit 159 and an inverse quantization unit 160 .
  • the entropy decoding unit 151 entropy-decodes the input bitstream for each three-dimensional point of a prediction tree (Predtree) to generate an adaptively quantized first residual signal and a quantized second residual signal.
  • Predtree prediction tree
  • the adaptive inverse quantization unit 152 adaptively inversely quantizes the adaptively quantized first residual signal to reproduce the first residual signal.
  • the first residual signal of each 3D point is added to the prediction value based on the prediction point corresponding to each 3D point, and then generated (output) as a decoded point expressed in polar coordinates.
  • the buffer 153 holds the generated decoding points as a reference point group for intra prediction. For example, the buffer 153 may initialize data held for each prediction tree (target point group). Also, the buffer 155 holds the generated decoding points as a reference point group for inter prediction. For example, the buffer 155 may initialize data held for each prediction tree (target point group).
  • the position information of the decoding points held in the buffers 153 and 155 is represented by polar coordinates.
  • the intra prediction unit 154, the motion compensation unit 156, the inter prediction unit 157, and the switching unit 158 have the same functions as the intra prediction unit 124, the motion compensation unit 126, the inter prediction unit 127, and the switching unit 128, respectively. be.
  • the coordinate transformation unit 159 acquires the same decoding points as the decoding points held in the buffers 153 and 155, and transforms the coordinate system of the position information of the acquired decoding points from the polar coordinate system to the rectangular coordinate system.
  • the inverse quantization unit 160 inversely quantizes the quantized second residual signal to reproduce the second residual signal.
  • the position information in the orthogonal coordinate system obtained by coordinate transformation by the coordinate transformation unit 159 and the second residual signal inversely quantized and reproduced by the inverse quantization unit 160 are added, and then converted to the orthogonal coordinate system. is generated (output) as a decoding point including the position information of .
  • the three-dimensional data decoding device 150 converts the coordinate system of the decoding point having the position information of the polar coordinate system from the polar coordinate system to the orthogonal coordinate system, and converts the position information of the orthogonal coordinate system and the position information of the polar coordinate system. Means are provided for adding to a second residual signal in rectangular coordinates corresponding to the error resulting from the transformation between the two. As a result, the three-dimensional data decoding device 150 extracts from the encoded bitstream (for example, the bitstream output from the three-dimensional data encoding device 130 in FIG. 9) while referring to the encoded point group in the polar coordinates. A point cloud can be decoded.
  • the three-dimensional data encoding devices 100 and 130 perform the processing (three-dimensional data encoding method) shown in FIG.
  • Three-dimensional data encoding devices 100 and 130 each generate an angle component of a first three-dimensional point among a plurality of three-dimensional points each represented by a distance component and an angle component, and a first A first residual from the predicted value of the angle component of the 3D point is calculated (S161).
  • 3D data encoding apparatuses 100 and 130 quantize the first residual using the first quantization step (S162).
  • the first quantization step is calculated according to the first distance obtained from at least one of the distance component of the first three-dimensional point and the distance component of one or more encoded second three-dimensional points.
  • the likelihood of inter-prediction of the angle component may change depending on at least one of the distance component and the distance components of surrounding 3D points. For example, in inter-prediction, there are cases where angle components are more likely to be predicted at distant positions (or near positions), resulting in smaller residuals. In other words, the prediction of the angle component is likely to go wrong at a near position (or a far position), and the residual error may become large. Therefore, quantization using the first quantization step calculated according to at least one of the distance component of the first three-dimensional point and the distance components of one or more surrounding second three-dimensional points reduces the quantization error. Browsing and redundant quantized values can be reduced. Therefore, coding efficiency can be improved.
  • one or more second 3D points are encoded before the first 3D point in the encoding order of the plurality of 3D points.
  • the 3D data encoding devices 100 and 130 further predict the angle component of the third 3D point among the plurality of 3D points and the angle component of the third 3D point calculated by intra prediction. Calculate the second residual with the value.
  • the 3D data encoding apparatuses 100 and 130 quantize the second residual using a second quantization step different from the first quantization step.
  • the residual error of the angle component may increase or decrease depending on the prediction method. Therefore, when the residual of the angle component changes according to the prediction method in addition to the distance component, the residual is quantized using a quantization step that is adaptively calculated according to the distance component and the prediction method. By doing so, the coding efficiency can be improved.
  • the second quantization step is calculated according to the second distance obtained from at least one of the distance component of the third three-dimensional point and the distance component of one or more encoded fourth three-dimensional points. .
  • Intra prediction can also improve coding efficiency by adaptively quantizing according to the distance component.
  • the first quantization step is calculated so as to increase as the first prediction accuracy of the angle component of the first three-dimensional point decreases.
  • the first quantization step is calculated according to the first distance and the first reference value.
  • the first reference value is a reference value for calculating the first quantization step such that the smaller the first prediction accuracy, the larger the first quantization step.
  • the 3D data encoding devices 100, 130 further generate a bitstream containing the quantized first residual and the first reference value.
  • the first reference value is a reference value for calculating the first quantization step so that the smaller the first prediction accuracy, the larger the first quantization step. can be calculated. Therefore, it is possible to reduce the increase in quantization error and redundant quantization values. Therefore, coding efficiency can be improved. Also, by including the first reference value in the bitstream, the decoding side can perform the same adaptive quantization as the encoding side.
  • the second quantization step is calculated according to the second distance and the second reference value.
  • the second reference value is a reference value for calculating the second quantization step such that the smaller the second prediction accuracy of the angular component of the third three-dimensional point, the larger the second quantization step.
  • the bitstream further includes a quantized second residual and a second reference value.
  • the second reference value is a reference value for calculating the second quantization step so that the smaller the second prediction accuracy, the larger the second quantization step. can be calculated. Therefore, it is possible to reduce the increase in quantization error and redundant quantization values. Therefore, coding efficiency can be improved.
  • the first quantization step is calculated so as to decrease as the first distance increases.
  • Quantizing the first residual using one quantization step can effectively reduce a large quantization error and redundant quantization values. Therefore, coding efficiency can be improved.
  • the second quantization step is calculated so as to decrease as the second distance increases.
  • the larger at least one of the distance component and the distance components of surrounding 3D points the more difficult it is to inter-predict the angle component. Even in this case, by adaptively quantizing according to the distance component, it is possible to effectively reduce the increase in quantization error and the redundancy of quantized values. Therefore, coding efficiency can be improved.
  • the 3D data encoding devices 100 and 130 each include a processor and memory, and the processor uses the memory to perform the above processing.
  • the three-dimensional data decoding devices 120 and 150 perform the processing (three-dimensional data decoding method) shown in FIG.
  • Three-dimensional data decoding devices 120 and 150 each generate an angle component of a first three-dimensional point among a plurality of three-dimensional points each represented by a distance component and an angle component, and a first cubic A first residual from the predicted value of the angle component of the original point is acquired (S171).
  • the 3D data decoding devices 120 and 150 inversely quantize the first residual using the first quantization step (S172).
  • the first quantization step is calculated according to the first distance obtained from at least one of the distance component of the first three-dimensional point and the distance component of one or more decoded second three-dimensional points.
  • the likelihood of inter-prediction of the angle component may change depending on at least one of the distance component and the distance components of surrounding 3D points. For example, in inter-prediction, there are cases where angle components are more likely to be predicted at distant positions (or near positions), resulting in smaller residuals. In other words, the prediction of the angle component is likely to go wrong at a near position (or a far position), and the residual error may become large. Therefore, quantization is performed using the first quantization step calculated according to at least one of the distance component of the first three-dimensional point and the distance component of one or more surrounding second three-dimensional points, thereby improving the coding efficiency. It is possible to properly decode the first residual that may have been modified.
  • one or more second 3D points are decoded before the first 3D point in the decoding order of the plurality of 3D points.
  • the 3D data decoding devices 120 and 150 further include the angle component of the third 3D point among the plurality of 3D points and the predicted value of the angle component of the third 3D point calculated by intra prediction. Obtain the second residual with Next, the 3D data decoding devices 120 and 150 inversely quantize the second residual using a second quantization step different from the first quantization step.
  • the residual error of the angle component may increase or decrease depending on the prediction method. Therefore, when the residual of the angle component changes according to the prediction method in addition to the distance component, it is quantized and encoded using a quantization step adaptively calculated according to the distance component and the prediction method. It is possible to properly decode the first residual, which may have improved coding efficiency.
  • the second quantization step is calculated according to the second distance obtained from at least one of the distance component of the third three-dimensional point and the distance component of one or more decoded fourth three-dimensional points.
  • the first quantization step is calculated so as to increase as the first prediction accuracy of the angle component of the first three-dimensional point decreases.
  • the 3D data decoding devices 120 and 150 acquire the first reference value.
  • a first quantization step is calculated according to the first distance and the first reference value.
  • the first reference value is a reference value for calculation such that the smaller the first prediction accuracy, the larger the first quantization step.
  • the first reference value is a reference value for calculating the first quantization step so that the smaller the first prediction accuracy, the larger the first quantization step.
  • the 3D data decoding devices 120 and 150 further acquire a second reference value.
  • a second quantization step is calculated according to the second distance and the second reference value.
  • the second reference value is a reference value for calculating the second quantization step such that the smaller the second prediction accuracy of the angular component of the third three-dimensional point, the larger the second quantization step.
  • the second reference value is a reference value for calculating the second quantization step so that the smaller the second prediction accuracy, the larger the second quantization step. can be calculated. Therefore, it is possible to appropriately decode the second residual that may have reduced the increase in quantization error and redundant quantization values.
  • the first quantization step is calculated so as to decrease as the first distance increases.
  • the first residual which may have been quantized using one quantization step to improve coding efficiency, can be properly decoded.
  • the second quantization step is calculated so as to decrease as the second distance increases.
  • the larger at least one of the distance component and the distance components of surrounding 3D points the more difficult it is to inter-predict the angle component. Even in this case, it is possible to appropriately decode the second residual, which may have been adaptively quantized according to the distance component and thus improved in coding efficiency.
  • the 3D data decoding devices 120 and 150 include a processor and memory, and the processor uses the memory to perform the above processing.
  • three-dimensional data encoding apparatuses 100 and 130 perform adaptive quantization and switch the quantization step used between inter prediction and intra prediction in adaptive quantization.
  • the quantization step used in inter prediction and intra prediction in quantization may be switched regardless of whether adaptive quantization is performed.
  • the three-dimensional data decoding devices 120 and 150 perform inverse adaptive quantization, and in the inverse adaptive quantization, switch the quantization step used between inter prediction and intra prediction. Regardless of executing inverse adaptive quantization, the quantization step used in inter prediction and intra prediction in inverse quantization may be switched.
  • the three-dimensional data encoding devices 100 and 130 perform the processing (three-dimensional data encoding method) shown in FIG.
  • the 3D data encoding devices 100 and 130 calculate the predicted value of the position of the 3D point using one of inter prediction and intra prediction (S181).
  • the 3D data encoding device 100, 130 calculates the residual between the predicted value and the position (S182).
  • the 3D data encoding apparatuses 100 and 130 quantize the residual using a quantization step according to the prediction method (S183-S185). That is, the 3D data encoding apparatuses 100 and 130 quantize the residual using the first quantization step when the prediction value is calculated by inter prediction.
  • the 3D data encoding apparatuses 100 and 130 quantize the residual using a second quantization step different from the first quantization step.
  • the positions of the three-dimensional points may be represented by orthogonal coordinates or polar coordinates.
  • the positional residual may be larger or smaller depending on the prediction method. Therefore, when the position residual varies according to the prediction method, the coding efficiency can be improved by quantizing the residual using the quantization step calculated according to the prediction method.
  • the 3D data encoding devices 100 and 130 each include a processor and memory, and the processor uses the memory to perform the above processing.
  • the 3D data decoding devices 120 and 150 perform the processing (3D data decoding method) shown in FIG.
  • the 3D data decoding devices 120 and 150 obtain residuals between the position of the 3D point and the predicted value calculated by one of the inter prediction and intra prediction (S191).
  • the 3D data decoding devices 120 and 150 inversely quantize the residual using a quantization step according to the prediction method (S192-S194). That is, when the prediction value is calculated by inter prediction (inter prediction in S192), 3D data decoding apparatuses 120 and 150 inversely quantize the residual using the first quantization step (S193).
  • 3D data decoding devices 120 and 150 inversely quantize the residual using a second quantization step different from the first quantization step. (S194).
  • the positions of the three-dimensional points may be represented by orthogonal coordinates or polar coordinates.
  • the positional residual may be larger or smaller depending on the prediction method. For this reason, when the position residual changes according to the prediction method, the residual that may have been quantized using the quantization step calculated according to the prediction method to improve the coding efficiency is can be decrypted properly.
  • the 3D data decoding devices 120 and 150 include a processor and memory, and the processor uses the memory to perform the above processing.
  • each processing unit included in the three-dimensional data encoding device, the three-dimensional data decoding device, etc. according to the above embodiments is typically realized as an LSI, which is an integrated circuit. These may be made into one chip individually, or may be made into one chip so as to include part or all of them.
  • circuit integration is not limited to LSIs, and may be realized with dedicated circuits or general-purpose processors.
  • An FPGA Field Programmable Gate Array
  • a reconfigurable processor that can reconfigure the connections and settings of the circuit cells inside the LSI may be used.
  • each component may be configured with dedicated hardware or realized by executing a software program suitable for each component.
  • Each component may be realized by reading and executing a software program recorded in a recording medium such as a hard disk or a semiconductor memory by a program execution unit such as a CPU or processor.
  • the present disclosure may be implemented as a three-dimensional data encoding method, a three-dimensional data decoding method, or the like executed by a three-dimensional data encoding device, a three-dimensional data decoding device, or the like.
  • the division of functional blocks in the block diagram is an example, and a plurality of functional blocks can be realized as one functional block, one functional block can be divided into a plurality of functional blocks, and some functions can be moved to other functional blocks.
  • single hardware or software may process the functions of a plurality of functional blocks having similar functions in parallel or in a time-sharing manner.
  • each step in the flowchart is executed is for illustrative purposes in order to specifically describe the present disclosure, and orders other than the above may be used. Also, some of the above steps may be executed concurrently (in parallel) with other steps.
  • the present disclosure can be applied to a 3D data encoding device and a 3D data decoding device.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

This three-dimensional data encoding method includes (S161) calculating a first residual between an angle component of a first three-dimensional point among a plurality of three-dimensional points each represented by a distance component and an angle component, and a predicted value of the angle component of the first three-dimensional point, calculated by inter prediction, and (S162) using a first quantization step to quantize the first residual, wherein, in the first quantization step, a calculation is performed in accordance with at least either the distance component of the first three-dimensional point, or a distance component of one or more second three-dimensional points that are included in the plurality of three-dimensional points and are positioned in the vicinity of the first three-dimensional point.

Description

三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
 本開示は、三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置に関する。 The present disclosure relates to a three-dimensional data encoding method, a three-dimensional data decoding method, a three-dimensional data encoding device, and a three-dimensional data decoding device.
 自動車或いはロボットが自律的に動作するためのコンピュータビジョン、マップ情報、監視、インフラ点検、又は、映像配信など、幅広い分野において、今後、三次元データを活用した装置又はサービスの普及が見込まれる。三次元データは、レンジファインダなどの距離センサ、ステレオカメラ、又は複数の単眼カメラの組み合わせなど様々な方法で取得される。 In the future, it is expected that devices or services that utilize 3D data will spread in a wide range of fields, such as computer vision, map information, monitoring, infrastructure inspection, or video distribution for autonomous operation of automobiles or robots. Three-dimensional data is acquired in various ways, such as range sensors such as range finders, stereo cameras, or a combination of multiple monocular cameras.
 三次元データの表現方法の1つとして、三次元空間内の点群によって三次元構造の形状を表すポイントクラウドと呼ばれる表現方法がある。ポイントクラウドでは、点群の位置と色とが格納される。ポイントクラウドは三次元データの表現方法として主流になると予想されるが、点群はデータ量が非常に大きい。よって、三次元データの蓄積又は伝送においては二次元の動画像(一例として、MPEGで規格化されたMPEG-4 AVC又はHEVCなどがある)と同様に、符号化によるデータ量の圧縮が必須となる。 As one of the three-dimensional data representation methods, there is a representation method called a point cloud that expresses the shape of a three-dimensional structure using a point group in a three-dimensional space. A point cloud stores the position and color of the point cloud. Point clouds are expected to become mainstream as a method of expressing three-dimensional data, but point clouds have a very large amount of data. Therefore, in the storage or transmission of 3D data, it is essential to compress the amount of data by encoding, as with 2D moving images (one example is MPEG-4 AVC or HEVC standardized by MPEG). Become.
 また、ポイントクラウドの圧縮については、ポイントクラウド関連の処理を行う公開のライブラリ(Point Cloud Library)などによって一部サポートされている。 In addition, point cloud compression is partially supported by a public library (Point Cloud Library) that performs point cloud-related processing.
 また、三次元の地図データを用いて、車両周辺に位置する施設を検索し、表示する技術が知られている(例えば、特許文献1参照)。 Also, there is known a technique of searching for and displaying facilities located around a vehicle using three-dimensional map data (see Patent Document 1, for example).
国際公開第2014/020663号WO2014/020663
 三次元データの符号化処理及び三次元データ復号処理では、符号化効率を向上できることが望まれている。 It is desired that the encoding efficiency can be improved in the 3D data encoding process and the 3D data decoding process.
 本開示は、符号化効率を向上しうる三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、又は三次元データ復号装置を提供することを目的とする。 An object of the present disclosure is to provide a three-dimensional data encoding method, a three-dimensional data decoding method, a three-dimensional data encoding device, or a three-dimensional data decoding device that can improve encoding efficiency.
 本開示の一態様に係る三次元データ符号化方法は、それぞれが距離成分と角度成分とで表される複数の三次元点のうちの第1三次元点の角度成分と、インター予測で算出された、前記第1三次元点の前記角度成分の予測値との第1残差を算出し、第1量子化ステップを用いて前記第1残差を量子化し、前記第1量子化ステップは、前記第1三次元点の距離成分、及び、前記複数の三次元点に含まれ且つ前記第1三次元点の周辺に位置する1以上の第2三次元点の距離成分の少なくとも一方に応じて算出される。 A three-dimensional data encoding method according to one aspect of the present disclosure is calculated by the angle component of a first three-dimensional point among a plurality of three-dimensional points each represented by a distance component and an angle component, and inter prediction. Further, calculating a first residual between the first three-dimensional point and the predicted value of the angular component, and quantizing the first residual using a first quantization step, wherein the first quantization step includes: according to at least one of a distance component of the first three-dimensional point and a distance component of one or more second three-dimensional points included in the plurality of three-dimensional points and located around the first three-dimensional point Calculated.
 本開示は、符号化効率を向上しうる三次元データ符号化方法などを提供できる。 The present disclosure can provide a three-dimensional data encoding method and the like that can improve encoding efficiency.
図1は、実施の形態に係る三次元データ符号化装置のブロック図である。FIG. 1 is a block diagram of a 3D data encoding device according to an embodiment. 図2は、実施の形態に係る予測木の一例を示す図である。FIG. 2 is a diagram illustrating an example of a prediction tree according to the embodiment; 図3は、実施の形態に係る三次元データ復号装置のブロック図である。FIG. 3 is a block diagram of a three-dimensional data decoding device according to an embodiment. 図4は、三次元データ符号化装置における、予測木(Predtree)の各三次元点を符号化する手順の一例を示すフローチャートである。FIG. 4 is a flowchart showing an example of a procedure for encoding each 3D point of a prediction tree (Predtree) in a 3D data encoding device. 図5は、符号化処理における、残差信号に対する適応量子化の処理の一例を示すフローチャートである。FIG. 5 is a flowchart showing an example of adaptive quantization processing for a residual signal in encoding processing. 図6は、符号化処理における、適応量子化により生成された量子化値に対する適応逆量子化の処理の一例を示すフローチャートである。FIG. 6 is a flowchart showing an example of adaptive inverse quantization processing for quantized values generated by adaptive quantization in encoding processing. 図7は、三次元データ復号装置における、予測木(Predtree)の各三次元点を復号する手順の一例を示すフローチャートである。FIG. 7 is a flowchart showing an example of a procedure for decoding each 3D point of a prediction tree (Predtree) in the 3D data decoding device. 図8は、復号処理において、量子化値に対する適応逆量子化の処理の一例を示すフローチャートである。FIG. 8 is a flowchart showing an example of adaptive inverse quantization processing for quantized values in decoding processing. 図9は、実施の形態の変形例に係る三次元データ符号化装置のブロック図である。FIG. 9 is a block diagram of a 3D data encoding device according to a modification of the embodiment. 図10は、実施の形態の変形例に係る三次元データ復号装置のブロック図である。FIG. 10 is a block diagram of a three-dimensional data decoding device according to a modification of the embodiment. 図11は、実施の形態に係る三次元データ符号化処理の一例を示すフローチャートである。FIG. 11 is a flowchart showing an example of 3D data encoding processing according to the embodiment. 図12は、実施の形態に係る三次元データ復号処理の一例を示すフローチャートである。FIG. 12 is a flowchart illustrating an example of 3D data decoding processing according to the embodiment. 図13は、変形例に係る三次元データ符号化処理の一例を示すフローチャートである。FIG. 13 is a flowchart showing an example of 3D data encoding processing according to the modification. 図14は、変形例に係る三次元データ復号処理の一例を示すフローチャートである。FIG. 14 is a flowchart showing an example of 3D data decoding processing according to the modification.
 本開示の一態様に係る三次元データ符号化方法は、それぞれが距離成分と角度成分とで表される複数の三次元点のうちの第1三次元点の角度成分と、インター予測で算出された、前記第1三次元点の前記角度成分の予測値との第1残差を算出し、第1量子化ステップを用いて前記第1残差を量子化し、前記第1量子化ステップは、前記第1三次元点の距離成分、及び、前記複数の三次元点に含まれ且つ前記第1三次元点の周辺に位置する1以上の第2三次元点の距離成分の少なくとも一方に応じて算出される。 A three-dimensional data encoding method according to one aspect of the present disclosure is calculated by the angle component of a first three-dimensional point among a plurality of three-dimensional points each represented by a distance component and an angle component, and inter prediction. Further, calculating a first residual between the first three-dimensional point and the predicted value of the angular component, and quantizing the first residual using a first quantization step, wherein the first quantization step includes: according to at least one of a distance component of the first three-dimensional point and a distance component of one or more second three-dimensional points included in the plurality of three-dimensional points and located around the first three-dimensional point Calculated.
 三次元点によっては、その距離成分及び周辺の三次元点の距離成分の少なくとも一方に応じて角度成分のインター予測の当たりやすさが変化する場合がある。例えば、インター予測において、遠い位置(または近い位置)で角度成分の予測が当たりやすくなり、残差が小さくなる場合がある。換言すれば、近い位置(または遠い位置)で角度成分の予測が外れやすくなり、残差が大きくなる場合がある。よって、第1三次元点の距離成分及び周辺の1以上の第2三次元点の距離成分の少なくとも一方に応じて算出された第1量子化ステップを用いて量子化することで量子化誤差が大きくなることと、量子化値が冗長になることとを低減しうる。よって、符号化効率を向上しうる。 Depending on the 3D point, the likelihood of inter-prediction of the angle component may change depending on at least one of the distance component and the distance components of surrounding 3D points. For example, in inter-prediction, there are cases where angle components are more likely to be predicted at distant positions (or near positions), resulting in smaller residuals. In other words, the prediction of the angle component is likely to go wrong at a near position (or a far position), and the residual error may become large. Therefore, quantization using the first quantization step calculated according to at least one of the distance component of the first three-dimensional point and the distance components of one or more surrounding second three-dimensional points reduces the quantization error. Browsing and redundant quantized values can be reduced. Therefore, coding efficiency can be improved.
 また、前記1以上の第2三次元点は、前記複数の三次元点の符号化順において前記第1三次元点より前に符号化されてもよい。 Also, the one or more second three-dimensional points may be encoded before the first three-dimensional points in the encoding order of the plurality of three-dimensional points.
 また、さらに、前記複数の三次元点のうちの第3三次元点の角度成分と、イントラ予測で算出された、前記第3三次元点の前記角度成分の予測値との第2残差を算出し、前記第1量子化ステップと異なる第2量子化ステップを用いて前記第2残差を量子化してもよい。 Further, a second residual between an angle component of a third three-dimensional point among the plurality of three-dimensional points and a predicted value of the angle component of the third three-dimensional point calculated by intra prediction is and quantizing the second residual using a second quantization step different from the first quantization step.
 三次元点によっては、予測方式によって角度成分の残差が大きくなったり小さくなったりする場合がある。このため、角度成分の残差が距離成分に加えて、予測方式に応じて変化する場合に、距離成分及び予測方式に応じて適応的に算出された量子化ステップを用いて残差を量子化することで、符号化効率を向上しうる。 Depending on the 3D point, the residual error of the angle component may increase or decrease depending on the prediction method. Therefore, when the residual of the angle component changes according to the prediction method in addition to the distance component, the residual is quantized using a quantization step that is adaptively calculated according to the distance component and the prediction method. By doing so, the coding efficiency can be improved.
 また、前記第2量子化ステップは、前記第3三次元点の距離成分、及び、前記複数の三次元点に含まれ且つ前記第3三次元点の周辺に位置する1以上の第4三次元点の距離成分の少なくとも一方に応じて算出されてもよい。 Further, the second quantization step includes distance components of the third three-dimensional point and one or more fourth three-dimensional points included in the plurality of three-dimensional points and located around the third three-dimensional point. It may be calculated according to at least one of the distance components of the point.
 イントラ予測においても距離成分に応じて適応的に量子化することで符号化効率を向上しうる。 Intra prediction can also improve coding efficiency by adaptively quantizing according to the distance component.
 また、前記第1量子化ステップは、前記第1三次元点の前記角度成分の前記予測値の第1予測精度が小さいほど大きくなるように算出されてもよい。 Also, the first quantization step may be calculated so as to increase as the first prediction accuracy of the predicted value of the angular component of the first three-dimensional point decreases.
 第1予測精度が大きいほど、より正確な予測値が生成されるため、残差が小さくなる。反対に、第1予測精度が小さいほど、不正確な予測値が生成されるため、残差が大きくなる。よって、第1予測精度が小さいほど大きくなるように第1量子化ステップを算出することで、量子化誤差が大きくなることと、量子化値が冗長になることとを低減しうる。よって、符号化効率を向上しうる。 The higher the first prediction accuracy is, the smaller the residual error is because a more accurate prediction value is generated. Conversely, the smaller the first prediction accuracy, the larger the residual, because an inaccurate prediction is generated. Therefore, by calculating the first quantization step so that the smaller the first prediction accuracy, the larger the first quantization step, the larger the quantization error and the redundant quantization value can be reduced. Therefore, coding efficiency can be improved.
 また、前記第1量子化ステップは、前記第1三次元点の距離成分、及び、前記1以上の第2三次元点の距離成分の少なくとも一方と第1基準値とに応じて算出され、前記第1基準値は、前記第1予測精度が小さいほど大きくなるように前記第1量子化ステップが算出されるための基準値であり、前記三次元データ符号化方法は、さらに、量子化された前記第1残差及び前記第1基準値を含むビットストリームを生成してもよい。 Further, the first quantization step is calculated according to at least one of the distance component of the first three-dimensional point and the distance component of the one or more second three-dimensional points and a first reference value, The first reference value is a reference value for calculating the first quantization step so that the lower the first prediction accuracy is, the higher the first quantization step is. A bitstream may be generated that includes the first residual and the first reference value.
 第1基準値は、第1予測精度が小さいほど大きくなるように第1量子化ステップが算出されるための基準値であるため、第1予測精度が小さいほど大きくなるように第1量子化ステップを算出することができる。このため、量子化誤差が大きくなることと、量子化値が冗長になることとを低減しうる。よって、符号化効率を向上しうる。また、第1基準値をビットストリームに含めることで、復号側でも符号化側と同じ適応的量子化の実行が可能となる。 The first reference value is a reference value for calculating the first quantization step so that the smaller the first prediction accuracy, the larger the first quantization step. can be calculated. Therefore, it is possible to reduce the increase in quantization error and redundant quantization values. Therefore, coding efficiency can be improved. Also, by including the first reference value in the bitstream, the decoding side can perform the same adaptive quantization as the encoding side.
 また、さらに、前記複数の三次元点のうちの第3三次元点の角度成分と、イントラ予測で算出された、前記第3三次元点の前記角度成分の予測値との第2残差を算出し、前記第1量子化ステップと異なる第2量子化ステップを用いて前記第2残差を量子化し、前記第2量子化ステップは、前記第3三次元点の距離成分、及び、前記1以上の第4三次元点の距離成分の少なくとも一方と、第2基準値とに応じて算出され、前記第2基準値は、前記第3三次元点の前記角度成分の前記予測値の第2予測精度が小さいほど大きくなるように前記第2量子化ステップが算出されるための基準値であり、前記ビットストリームは、さらに、量子化された前記第2残差及び前記第2基準値を含んでもよい。 Further, a second residual between an angle component of a third three-dimensional point among the plurality of three-dimensional points and a predicted value of the angle component of the third three-dimensional point calculated by intra prediction is and quantizing the second residual using a second quantization step different from the first quantization step, the second quantization step being the distance component of the third three-dimensional point and the one It is calculated according to at least one of the distance components of the fourth three-dimensional point and a second reference value, and the second reference value is the second value of the predicted value of the angle component of the third three-dimensional point. A reference value for calculating the second quantization step so that the smaller the prediction accuracy is, the higher the second quantization step is, and the bitstream further includes the quantized second residual and the second reference value. It's okay.
 第2基準値は、第2予測精度が小さいほど大きくなるように第2量子化ステップが算出されるための基準値であるため、第2予測精度が小さいほど大きくなるように第2量子化ステップを算出することができる。このため、量子化誤差が大きくなることと、量子化値が冗長になることとを低減しうる。よって、符号化効率を向上しうる。 The second reference value is a reference value for calculating the second quantization step so that the smaller the second prediction accuracy, the larger the second quantization step. can be calculated. Therefore, it is possible to reduce the increase in quantization error and redundant quantization values. Therefore, coding efficiency can be improved.
 また、前記第1量子化ステップは、前記第1三次元点の距離成分、及び、前記1以上の第2三次元点の距離成分の少なくとも一方が大きいほど小さくなるように算出されてもよい。 Also, the first quantization step may be calculated so as to decrease as at least one of the distance component of the first three-dimensional point and the distance component of the one or more second three-dimensional points increases.
 三次元点によっては、その距離成分及び周辺の三次元点の距離成分の少なくとも一方が大きいほど角度成分のインター予測が当たりにくくなる場合があるため、距離成分に応じて適応的に算出された第1量子化ステップを用いて第1残差を量子化することで量子化誤差が大きくなることと、量子化値が冗長になることとを効果的に低減しうる。よって、符号化効率を向上しうる。 Depending on the 3D point, the larger at least one of the distance component and the distance components of surrounding 3D points is, the more difficult it is to inter-predict the angle component. Quantizing the first residual using one quantization step can effectively reduce a large quantization error and redundant quantization values. Therefore, coding efficiency can be improved.
 また、さらに、前記複数の三次元点のうちの第3三次元点の角度成分と、イントラ予測で算出された、前記第3三次元点の前記角度成分の予測値との第2残差を算出し、前記第1量子化ステップと異なる第2量子化ステップを用いて前記第2残差を量子化し、前記第2量子化ステップは、前記第3三次元点の距離成分、及び、前記1以上の第4三次元点の距離成分の少なくとも一方が大きいほど小さくなるように算出されてもよい。 Further, a second residual between an angle component of a third three-dimensional point among the plurality of three-dimensional points and a predicted value of the angle component of the third three-dimensional point calculated by intra prediction is and quantizing the second residual using a second quantization step different from the first quantization step, the second quantization step being the distance component of the third three-dimensional point and the one It may be calculated so as to decrease as at least one of the distance components of the fourth three-dimensional point increases.
 三次元点によっては、その距離成分及び周辺の三次元点の距離成分の少なくとも一方が大きいほど角度成分のインター予測が当たりにくくなる場合がある。この場合においても距離成分に応じて適応的に量子化をすることで、量子化誤差が大きくなることと、量子化値が冗長になることとを効果的に低減しうる。よって、符号化効率を向上しうる。 Depending on the 3D point, the larger at least one of the distance component and the distance components of surrounding 3D points, the more difficult it is to inter-predict the angle component. Even in this case, by adaptively quantizing according to the distance component, it is possible to effectively reduce the increase in quantization error and the redundancy of quantized values. Therefore, coding efficiency can be improved.
 また、本開示の他の一態様に係る三次元データ符号化方法は、インター予測及びイントラ予測の一方の予測方式で、三次元点の位置の予測値を算出し、前記予測値と前記位置との残差を算出し、前記予測方式に応じた量子化ステップを用いて前記残差を量子化する。 Further, a three-dimensional data encoding method according to another aspect of the present disclosure calculates a predicted value of a position of a three-dimensional point using one of inter prediction and intra prediction, and compares the predicted value and the position. and quantize the residual using a quantization step according to the prediction scheme.
 三次元点によっては、予測方式によって位置の残差が大きくなったり小さくなったりする場合がある。このため、位置の残差が予測方式に応じて変化する場合に、予測方式に応じて算出された量子化ステップを用いて残差を量子化することで、符号化効率を向上しうる。 Depending on the 3D point, the positional residual may be larger or smaller depending on the prediction method. Therefore, when the position residual varies according to the prediction method, the coding efficiency can be improved by quantizing the residual using the quantization step calculated according to the prediction method.
 本開示の一態様に係る三次元データ復号方法は、それぞれが距離成分と角度成分とで表される複数の三次元点のうちの第1三次元点の前記角度成分と、インター予測で算出された、前記第1三次元点の前記角度成分の予測値との第1残差を取得し、第1量子化ステップを用いて前記第1残差を逆量子化し、前記第1量子化ステップは、前記第1三次元点の距離成分、及び、前記複数の三次元点に含まれ且つ前記第1三次元点の周辺に位置する1以上の第2三次元点の距離成分の少なくとも一方に応じて算出される。 A three-dimensional data decoding method according to one aspect of the present disclosure is calculated by the angle component of a first three-dimensional point among a plurality of three-dimensional points each represented by a distance component and an angle component, and inter prediction. Obtaining a first residual between the first three-dimensional point and the predicted value of the angular component, and inversely quantizing the first residual using a first quantization step, wherein the first quantization step is , the distance component of the first three-dimensional point, and the distance component of one or more second three-dimensional points included in the plurality of three-dimensional points and located around the first three-dimensional point. calculated as
 三次元点によっては、その距離成分及び周辺の三次元点の距離成分の少なくとも一方に応じて角度成分のインター予測の当たりやすさが変化する場合がある。例えば、インター予測において、遠い位置(または近い位置)で角度成分の予測が当たりやすくなり、残差が小さくなる場合がある。換言すれば、近い位置(または遠い位置)で角度成分の予測が外れやすくなり、残差が大きくなる場合がある。よって、第1三次元点の距離成分及び周辺の1以上の第2三次元点の距離成分の少なくとも一方に応じて算出された第1量子化ステップを用いて量子化されて符号化効率が向上された可能性がある可能性がある第1残差を適切に復号できる。 Depending on the 3D point, the likelihood of inter-prediction of the angle component may change depending on at least one of the distance component and the distance components of surrounding 3D points. For example, in inter-prediction, there are cases where angle components are more likely to be predicted at distant positions (or near positions), resulting in smaller residuals. In other words, the prediction of the angle component is likely to go wrong at a near position (or a far position), and the residual error may become large. Therefore, quantization is performed using the first quantization step calculated according to at least one of the distance component of the first three-dimensional point and the distance component of one or more surrounding second three-dimensional points, thereby improving the coding efficiency. It is possible to properly decode the first residual that may have been modified.
 また、前記1以上の第2三次元点は、前記複数の三次元点の復号順において前記第1三次元点より前に復号されてもよい。 Also, the one or more second three-dimensional points may be decoded before the first three-dimensional points in the decoding order of the plurality of three-dimensional points.
 また、さらに、前記複数の三次元点のうちの第3三次元点の角度成分と、イントラ予測で算出された、前記第3三次元点の前記角度成分の予測値との第2残差を取得し、前記第1量子化ステップと異なる第2量子化ステップを用いて前記第2残差を逆量子化してもよい。 Further, a second residual between an angle component of a third three-dimensional point among the plurality of three-dimensional points and a predicted value of the angle component of the third three-dimensional point calculated by intra prediction is and inverse quantizing the second residual using a second quantization step different from the first quantization step.
 三次元点によっては、予測方式によって角度成分の残差が大きくなったり小さくなったりする場合がある。このため、角度成分の残差が距離成分に加えて、予測方式に応じて変化する場合に、距離成分及び予測方式に応じて適応的に算出された量子化ステップを用いて量子化されて符号化効率が向上された可能性がある第1残差を適切に復号することができる。 Depending on the 3D point, the residual error of the angle component may increase or decrease depending on the prediction method. Therefore, when the residual of the angle component changes according to the prediction method in addition to the distance component, it is quantized and encoded using a quantization step adaptively calculated according to the distance component and the prediction method. It is possible to properly decode the first residual, which may have improved coding efficiency.
 また、前記第2量子化ステップは、前記第3三次元点の距離成分、及び、前記複数の三次元点に含まれ且つ前記第3三次元点の周辺に位置する1以上の第4三次元点の距離成分の少なくとも一方に応じて算出されてもよい。 Further, the second quantization step includes distance components of the third three-dimensional point and one or more fourth three-dimensional points included in the plurality of three-dimensional points and located around the third three-dimensional point. It may be calculated according to at least one of the distance components of the point.
 イントラ予測においても距離成分に応じて適応的に量子化されて符号化効率が向上された可能性がある第2残差を適切に復号することができる。 Also in intra prediction, it is possible to appropriately decode the second residual, which may have been adaptively quantized according to the distance component to improve the coding efficiency.
 また、前記第1量子化ステップは、前記第1三次元点の前記角度成分の前記予測値の第1予測精度が小さいほど大きくなるように算出されてもよい。 Also, the first quantization step may be calculated so as to increase as the first prediction accuracy of the predicted value of the angular component of the first three-dimensional point decreases.
 第1予測精度が大きいほど、より正確な予測値が生成されるため、残差が小さくなる。反対に、第1予測精度が小さいほど、不正確な予測値が生成されるため、残差が大きくなる。よって、第1予測精度が小さいほど大きくなるように第1量子化ステップを算出することで、量子化誤差が大きくなることと、量子化値が冗長になることとが低減された可能性がある第1残差を適切に復号できる。 The higher the first prediction accuracy is, the smaller the residual error is because a more accurate prediction value is generated. Conversely, the smaller the first prediction accuracy, the larger the residual, because an inaccurate prediction is generated. Therefore, by calculating the first quantization step so that the smaller the first prediction accuracy, the larger the quantization error, and the redundant quantization value may be reduced. The first residual can be properly decoded.
 また、さらに、第1基準値を取得し、前記第1量子化ステップは、前記第1三次元点の距離成分、及び、前記1以上の第2三次元点の距離成分の少なくとも一方と第1基準値とに応じて算出され、前記第1基準値は、前記第1予測精度が小さいほど前記第1量子化ステップが大きくなるように算出されるための基準値であってもよい。 Further, a first reference value is obtained, and the first quantization step includes at least one of the distance component of the first three-dimensional point and the distance component of the one or more second three-dimensional points and the first The first reference value may be a reference value for calculating the first quantization step so that the smaller the first prediction accuracy, the larger the first quantization step.
 第1基準値は、第1予測精度が小さいほど大きくなるように第1量子化ステップが算出されるための基準値であるため、第1予測精度が小さいほど大きくなるように第1量子化ステップを算出することで、量子化誤差が大きくなることと、量子化値が冗長になることとを低減された可能性がある第1残差を適切に復号できる。 The first reference value is a reference value for calculating the first quantization step so that the smaller the first prediction accuracy, the larger the first quantization step. By calculating , it is possible to appropriately decode the first residual that may have reduced the increase in quantization error and redundant quantization values.
 また、さらに、前記複数の三次元点のうちの第3三次元点の角度成分と、イントラ予測で算出された、前記第3三次元点の前記角度成分の予測値との第2残差と第2基準値とを取得し、前記第1量子化ステップと異なる第2量子化ステップを用いて前記第2残差を逆量子化し、前記第2量子化ステップは、前記第3三次元点の距離成分、及び、前記1以上の第4三次元点の距離成分の少なくとも一方と、第2基準値とに応じて算出され、前記第2基準値は、前記第3三次元点の前記角度成分の第2予測精度が小さいほど大きくなるように前記第2量子化ステップが算出されるための基準値であってもよい。 a second residual between an angle component of a third three-dimensional point among the plurality of three-dimensional points and a predicted value of the angle component of the third three-dimensional point calculated by intra prediction; obtaining a second reference value, and inverse quantizing the second residual using a second quantization step different from the first quantization step, wherein the second quantization step is for the third three-dimensional point; calculated according to at least one of the distance component and the distance component of the one or more fourth three-dimensional points, and a second reference value, wherein the second reference value is the angular component of the third three-dimensional point The second quantization step may be a reference value for calculating the second quantization step so that the smaller the second prediction accuracy of is, the larger it becomes.
 第2基準値は、第2予測精度が小さいほど大きくなるように第2量子化ステップが算出されるための基準値であるため、第2予測精度が小さいほど大きくなるように第2量子化ステップを算出することができる。このため、量子化誤差が大きくなることと、量子化値が冗長になることとが低減された可能性がある第2残差を適切に復号できる。 The second reference value is a reference value for calculating the second quantization step so that the smaller the second prediction accuracy, the larger the second quantization step. can be calculated. Therefore, it is possible to appropriately decode the second residual that may have reduced the increase in quantization error and redundant quantization values.
 また、前記第1量子化ステップは、前記第1三次元点の距離成分、及び、前記1以上の第2三次元点の距離成分の少なくとも一方が大きいほど小さくなるように算出されてもよい。 Also, the first quantization step may be calculated so as to decrease as at least one of the distance component of the first three-dimensional point and the distance component of the one or more second three-dimensional points increases.
 三次元点によっては、その距離成分及び周辺の三次元点の距離成分の少なくとも一方が大きいほど角度成分のインター予測が当たりにくくなる場合があるため、距離成分に応じて適応的に算出された第1量子化ステップを用いて量子化されて符号化効率が向上された可能性がある第1残差を適切に復号できる。 Depending on the 3D point, the larger at least one of the distance component and the distance components of surrounding 3D points is, the more difficult it is to inter-predict the angle component. The first residual, which may have been quantized using one quantization step to improve coding efficiency, can be properly decoded.
 また、さらに、前記複数の三次元点のうちの第3三次元点の角度成分と、イントラ予測で算出された、前記第3三次元点の前記角度成分の予測値との第2残差を取得し、前記第1量子化ステップと異なる第2量子化ステップを用いて前記第2残差を逆量子化し、前記第2量子化ステップは、前記第3三次元点の距離成分、及び、前記1以上の第4三次元点の距離成分の少なくとも一方が大きいほど小さくなるように算出されてもよい。 Further, a second residual between an angle component of a third three-dimensional point among the plurality of three-dimensional points and a predicted value of the angle component of the third three-dimensional point calculated by intra prediction is and inverse quantizing the second residual using a second quantization step different from the first quantization step, the second quantization step comprising the distance component of the third 3D point and the It may be calculated so as to decrease as at least one of the distance components of the one or more fourth three-dimensional points increases.
 三次元点によっては、その距離成分及び周辺の三次元点の距離成分の少なくとも一方が大きいほど角度成分のインター予測が当たりにくくなる場合がある。この場合においても距離成分に応じて適応的に量子化されて符号化効率が向上された可能性がある第2残差を適切に復号できる。 Depending on the 3D point, the larger at least one of the distance component and the distance components of surrounding 3D points, the more difficult it is to inter-predict the angle component. Even in this case, it is possible to appropriately decode the second residual, which may have been adaptively quantized according to the distance component and thus improved in coding efficiency.
 本開示の他の一態様に係る三次元データ復号方法は、三次元点の位置と、インター予測及びイントラ予測の一方の予測方式で算出された予測値との残差を取得し、前記予測方式に応じた量子化ステップを用いて前記残差を逆量子化する。 A three-dimensional data decoding method according to another aspect of the present disclosure acquires a residual between a position of a three-dimensional point and a prediction value calculated by one of inter prediction and intra prediction, and Inverse quantize the residual using a quantization step according to .
 三次元点によっては、予測方式によって位置の残差が大きくなったり小さくなったりする場合がある。このため、位置の残差が予測方式に応じて変化する場合に、予測方式に応じて算出された量子化ステップを用いて量子化されて符号化効率が向上された可能性がある残差を適切に復号できる。 Depending on the 3D point, the positional residual may be larger or smaller depending on the prediction method. For this reason, when the position residual changes according to the prediction method, the residual that may have been quantized using the quantization step calculated according to the prediction method to improve the coding efficiency is can be decrypted properly.
 本開示の一態様に係る三次元データ符号化装置は、プロセッサと、メモリと、を備え、前記プロセッサは、前記メモリを用いて、それぞれが距離成分と角度成分とで表される複数の三次元点のうちの第1三次元点の角度成分と、インター予測で算出された、前記第1三次元点の前記角度成分の予測値との第1残差を算出し、第1量子化ステップを用いて前記第1残差を量子化し、前記第1量子化ステップは、前記第1三次元点の距離成分、及び、前記複数の三次元点に含まれ且つ前記第1三次元点の周辺に位置する1以上の第2三次元点の距離成分の少なくとも一方に応じて算出される。 A three-dimensional data encoding device according to one aspect of the present disclosure includes a processor and a memory, and the processor uses the memory to generate a plurality of three-dimensional data each represented by a distance component and an angle component. calculating a first residual between an angle component of a first three-dimensional point among points and a predicted value of the angle component of the first three-dimensional point calculated by inter prediction, and performing a first quantization step; quantizing the first residual using It is calculated according to at least one of the distance components of one or more positioned second three-dimensional points.
 三次元点によっては、その距離成分及び周辺の三次元点の距離成分の少なくとも一方に応じて角度成分のインター予測の当たりやすさが変化する場合がある。例えば、インター予測において、遠い位置(または近い位置)で角度成分の予測が当たりやすくなり、残差が小さくなる場合がある。換言すれば、近い位置(または遠い位置)で角度成分の予測が外れやすくなり、残差が大きくなる場合がある。よって、第1三次元点の距離成分及び周辺の1以上の第2三次元点の距離成分の少なくとも一方に応じて算出された第1量子化ステップを用いて量子化することで量子化誤差が大きくなることと、量子化値が冗長になることとを低減しうる。よって、符号化効率を向上しうる。 Depending on the 3D point, the likelihood of inter-prediction of the angle component may change depending on at least one of the distance component and the distance components of surrounding 3D points. For example, in inter-prediction, there are cases where angle components are more likely to be predicted at distant positions (or near positions), resulting in smaller residuals. In other words, the prediction of the angle component is likely to go wrong at a near position (or a far position), and the residual error may become large. Therefore, quantization using the first quantization step calculated according to at least one of the distance component of the first three-dimensional point and the distance components of one or more surrounding second three-dimensional points reduces the quantization error. Browsing and redundant quantized values can be reduced. Therefore, coding efficiency can be improved.
 本開示の他の一態様に係る三次元データ符号化装置は、プロセッサと、メモリと、を備え、前記プロセッサは、前記メモリを用いて、インター予測及びイントラ予測の一方の予測方式で、三次元点の位置の予測値を算出し、前記予測値と前記位置との残差を算出し、前記予測方式に応じた量子化ステップを用いて前記残差を量子化する。 A 3D data encoding device according to another aspect of the present disclosure includes a processor and a memory, and the processor uses the memory to perform 3D data encoding using one of inter prediction and intra prediction. A predicted value of the position of the point is calculated, a residual between the predicted value and the position is calculated, and the residual is quantized using a quantization step according to the prediction scheme.
 三次元点によっては、予測方式によって位置の残差が大きくなったり小さくなったりする場合がある。このため、位置の残差が予測方式に応じて変化する場合に、予測方式に応じて算出された量子化ステップを用いて残差を量子化することで、符号化効率を向上しうる。 Depending on the 3D point, the positional residual may be larger or smaller depending on the prediction method. Therefore, when the position residual varies according to the prediction method, the coding efficiency can be improved by quantizing the residual using the quantization step calculated according to the prediction method.
 本開示の一態様に係る三次元データ復号装置は、プロセッサと、メモリと、を備え、前記プロセッサは、前記メモリを用いて、それぞれが距離成分と角度成分とで表される複数の三次元点のうちの第1三次元点の前記角度成分と、インター予測で算出された、前記第1三次元点の前記角度成分の予測値との第1残差を取得し、第1量子化ステップを用いて前記第1残差を逆量子化し、前記第1量子化ステップは、前記第1三次元点の距離成分、及び、前記複数の三次元点に含まれ且つ前記第1三次元点の周辺に位置する1以上の第2三次元点の距離成分の少なくとも一方に応じて算出される。 A three-dimensional data decoding device according to one aspect of the present disclosure includes a processor and a memory, and the processor uses the memory to generate a plurality of three-dimensional points each represented by a distance component and an angle component. obtain a first residual between the angle component of the first three-dimensional point and the predicted value of the angle component of the first three-dimensional point calculated by inter prediction, and perform a first quantization step inverse quantizing the first residual using is calculated according to at least one of the distance components of one or more second three-dimensional points located at .
 三次元点によっては、その距離成分及び周辺の三次元点の距離成分の少なくとも一方に応じて角度成分のインター予測の当たりやすさが変化する場合がある。例えば、インター予測において、遠い位置(または近い位置)で角度成分の予測が当たりやすくなり、残差が小さくなる場合がある。換言すれば、近い位置(または遠い位置)で角度成分の予測が外れやすくなり、残差が大きくなる場合がある。よって、第1三次元点の距離成分及び周辺の1以上の第2三次元点の距離成分の少なくとも一方に応じて算出された第1量子化ステップを用いて量子化されて符号化効率が向上された可能性がある可能性がある第1残差を適切に復号できる。 Depending on the 3D point, the likelihood of inter-prediction of the angle component may change depending on at least one of the distance component and the distance components of surrounding 3D points. For example, in inter-prediction, there are cases where angle components are more likely to be predicted at distant positions (or near positions), resulting in smaller residuals. In other words, the prediction of the angle component is likely to go wrong at a near position (or a far position), and the residual error may become large. Therefore, quantization is performed using the first quantization step calculated according to at least one of the distance component of the first three-dimensional point and the distance component of one or more surrounding second three-dimensional points, thereby improving the coding efficiency. It is possible to properly decode the first residual that may have been modified.
 本開示の他の一態様に係る三次元データ復号装置は、プロセッサと、メモリと、を備え、前記プロセッサは、前記メモリを用いて、三次元点の位置と、インター予測及びイントラ予測の一方の予測方式で算出された予測値との残差を取得し、前記予測方式に応じた量子化ステップを用いて前記残差を逆量子化する。 A 3D data decoding device according to another aspect of the present disclosure includes a processor and a memory, and the processor uses the memory to determine the position of a 3D point and one of inter prediction and intra prediction. A residual from the predicted value calculated by the prediction method is acquired, and the residual is inversely quantized using a quantization step according to the prediction method.
 三次元点によっては、予測方式によって位置の残差が大きくなったり小さくなったりする場合がある。このため、位置の残差が予測方式に応じて変化する場合に、予測方式に応じて算出された量子化ステップを用いて量子化されて符号化効率が向上された可能性がある残差を適切に復号できる。 Depending on the 3D point, the positional residual may be larger or smaller depending on the prediction method. For this reason, when the position residual changes according to the prediction method, the residual that may have been quantized using the quantization step calculated according to the prediction method to improve the coding efficiency is can be decrypted properly.
 なお、これらの包括的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD-ROMなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。 In addition, these general or specific aspects may be realized by a system, method, integrated circuit, computer program, or a recording medium such as a computer-readable CD-ROM. and any combination of recording media.
 以下、実施の形態について、図面を参照しながら具体的に説明する。なお、以下で説明する実施の形態は、いずれも本開示の一具体例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、任意の構成要素として説明される。 Hereinafter, embodiments will be specifically described with reference to the drawings. It should be noted that each of the embodiments described below is a specific example of the present disclosure. Numerical values, shapes, materials, components, arrangement positions and connection forms of components, steps, order of steps, and the like shown in the following embodiments are examples, and are not intended to limit the present disclosure. Further, among the constituent elements in the following embodiments, constituent elements not described in independent claims will be described as optional constituent elements.
 (実施の形態)
 本実施の形態では、点群(ポイントクラウド)の位置情報に対してインター予測及びイントラ予測のいずれかを切り替えて実行する場合について説明する。
(Embodiment)
In the present embodiment, a case will be described in which either inter prediction or intra prediction is switched and executed with respect to position information of a point group (point cloud).
 図1は、本実施の形態に係る三次元データ符号化装置100のブロック図である。なお、図1では、点群の位置情報(ジオメトリ)の符号化に関する処理部を記載しているが、三次元データ符号化装置100は、点群の属性情報の符号化等を行う処理部等の他の処理部を備えてもよい。インター予測及びイントラ予測では、符号化済みの点群を参照しつつ符号化対象の点群が符号化される。 FIG. 1 is a block diagram of a three-dimensional data encoding device 100 according to this embodiment. Although FIG. 1 shows a processing unit for encoding position information (geometry) of a point group, the three-dimensional data encoding device 100 includes a processing unit for encoding attribute information of a point group, etc. may be provided with other processing units. In inter-prediction and intra-prediction, a point group to be encoded is encoded while referring to an already-encoded point group.
 ここで、インター予測は、符号化または復号対象の三次元点が属する第1三次元点群(第1フレーム)とは異なる第2三次元点群(第2フレーム)に属する第2参照三次元点を用いて、予測値を算出する予測方法である。イントラ予測は、符号化または復号対象の三次元点が属する第1三次元点群(第1フレーム)に属する第1参照三次元点を用いて、予測値を算出する予測方法である。 Here, inter prediction refers to a second reference 3D point group (second frame) belonging to a second 3D point group (second frame) different from the first 3D point group (first frame) to which the 3D point to be encoded or decoded belongs. This is a prediction method that uses points to calculate predicted values. Intra prediction is a prediction method that calculates a prediction value using a first reference 3D point belonging to a first 3D point group (first frame) to which a 3D point to be encoded or decoded belongs.
 三次元データ符号化装置100は、グループ化部101と、バッファ102と、適応量子化部103と、適応逆量子化部104と、バッファ105と、イントラ予測部106と、バッファ107と、動き補償部108と、インター予測部109と、切替部110と、エントロピー符号化部111とを備える。 3D data encoding apparatus 100 includes grouping section 101, buffer 102, adaptive quantization section 103, adaptive inverse quantization section 104, buffer 105, intra prediction section 106, buffer 107, and motion compensation. It includes a section 108 , an inter prediction section 109 , a switching section 110 and an entropy coding section 111 .
 グループ化部101は、入力された符号化対象の点群のデータである対象点群から、符号化の一単位である予測木(Predtree)とする点群を抽出して1つのグループとして設定する。なお、入力された対象点群では、点群の位置は例えば三次元の極座標で表現される。 The grouping unit 101 extracts a point group to be a prediction tree (Predtree), which is a unit of encoding, from the target point group, which is the data of the input point group to be encoded, and sets it as one group. . In the input target point group, the position of the point group is represented by, for example, three-dimensional polar coordinates.
 図2は、本実施の形態に係る予測木の一例を示す図である。 FIG. 2 is a diagram showing an example of a prediction tree according to this embodiment.
 予測木200は、1つのグループに設定される点群を構成する複数の三次元点の位置の予測における参照関係を示す。予測木200は、例えば、第1ノード201、第1ノードの子ノードである第2ノード211及び第3ノード212と、第2ノード211の子ノードである第4ノード221とを含む。第1ノード201、第2ノード211、第3ノード212、及び、第4ノード221は、互いに異なる三次元点を示す。第1ノード201は、第2ノード211及び第3ノード212よりも上位のノードであり、第2ノード211は、第4ノード221よりも上位のノードである。第1ノード201は、第2ノード211の予測値の算出、及び、第3ノード212の予測値の算出において参照されるノードである。第1ノード201は、第4ノード221の予測値の算出において参照されてもよい。第2ノード211は、第4ノード221の予測値の算出において参照されるノードである。このように、下位ノードの予測値の算出に、下位ノードよりも上位の1以上のノードが参照される。どのノードを用いてどのように予測値が算出されるかは、予測モードに応じて決定されてもよい。 A prediction tree 200 indicates a reference relationship in predicting the positions of a plurality of three-dimensional points forming a point cloud set in one group. The prediction tree 200 includes, for example, a first node 201 , a second node 211 and a third node 212 that are child nodes of the first node, and a fourth node 221 that is a child node of the second node 211 . A first node 201, a second node 211, a third node 212, and a fourth node 221 represent different 3D points. The first node 201 is higher than the second node 211 and the third node 212 , and the second node 211 is higher than the fourth node 221 . The first node 201 is a node referred to in calculating the predicted value of the second node 211 and calculating the predicted value of the third node 212 . The first node 201 may be referenced in calculating the predicted value of the fourth node 221 . The second node 211 is a node referred to in calculating the predicted value of the fourth node 221 . In this way, one or more nodes higher than the lower node are referred to in calculating the predicted value of the lower node. Which node is used and how the predicted value is calculated may be determined according to the prediction mode.
 予測木200の符号化順及び復号順は、デプス優先順であってもよいし、幅優先順であってもよい。予測木200は、モートン順に並べられた複数の三次元点の先頭の三次元点から順に処理することで生成されてもよい。例えば、予測木200の生成処理における処理対象の三次元点の最近傍の三次元点が当該処理対象の三次元点の子ノードとなるように予測木200が生成されてもよい。 The encoding order and decoding order of the prediction tree 200 may be depth-first order or breadth-first order. The prediction tree 200 may be generated by sequentially processing a plurality of 3D points arranged in Morton's order from the leading 3D point. For example, the prediction tree 200 may be generated such that the closest 3D point to the 3D point to be processed in the process of generating the prediction tree 200 is a child node of the 3D point to be processed.
 デプス優先順とは、ルートノードを先頭に、次に前の順のノードの下位ノード(子ノード)が並ぶようにリーフノードまでを順に並べた後、デプスを大きくする順に残りの複数のノードの中で最上位のノードを並べ、次に前の順のノードの下位ノード(子ノード)が並ぶようにリーフノードまでを順に並べることを繰り返すことで決定される順番である。図2では、デプス優先順は、例えば、第1ノード201、第2ノード211、第4ノード221、及び、第3ノード212の順である。 Depth-priority order is that the root node is first, then the lower nodes (child nodes) of the previous node are arranged in order, and then the remaining multiple nodes are arranged in order of increasing depth. The order is determined by repeating the order of the highest node in the list, and then the lower nodes (child nodes) of the previous node, up to the leaf node. In FIG. 2, the depth priority order is, for example, the first node 201, the second node 211, the fourth node 221, and the third node 212. In FIG.
 幅優先順とは、ルートノードを先頭に、予測木の各階層に含まれるノードを階層が浅い順に並べることで決定される順番である。図2では、幅優先順は、例えば、第1ノード201、第2ノード211、第3ノード212、及び、第4ノード221の順である。 Breadth-first order is the order determined by arranging the nodes included in each layer of the prediction tree in ascending order, starting with the root node. In FIG. 2, the breadth-first order is, for example, the order of the first node 201, the second node 211, the third node 212, and the fourth node 221. In FIG.
 なお、符号化対象の点群の極座標は、入力された点群の直交座標が極座標に変換されたものでも構わないし、入力された点群自体が極座標であっても構わない。なお、極座標は、例えば、センサ位置から対象点までの距離d、水平角Φ、仰角θとすると、これら3要素を用いて極座標(d, Φ, θ)と表現されてもよい。また、仰角θの代わりに、Lidarのlaser_idなどのセンサの情報で表現しても構わない。例えば、仰角θに最も値が近いスキャン角度を持つlaser_idを仰角の代わりとして用いることで、極座標を(d, Φ, laser_id)と表現しても構わない。つまり、このように、laser_idは、仰角θを示す値として極座標に用いられてもよい。仰角θの代わりにlaser_idを用いることで情報量を削減でき、符号化効率を向上できる。 The polar coordinates of the point group to be encoded may be obtained by converting the orthogonal coordinates of the input point group into polar coordinates, or the input point group itself may be polar coordinates. The polar coordinates may be expressed as polar coordinates (d, Φ, θ) using these three elements, for example, the distance d from the sensor position to the target point, the horizontal angle Φ, and the elevation angle θ. Further, instead of the elevation angle θ, sensor information such as laser_id of Lidar may be used. For example, the polar coordinates may be expressed as (d, Φ, laser_id) by using the laser_id having the scan angle closest to the elevation angle θ instead of the elevation angle. That is, in this way, laser_id may be used in polar coordinates as a value indicating elevation angle θ. By using laser_id instead of elevation angle θ, the amount of information can be reduced, and coding efficiency can be improved.
 バッファ102は、生成された予測木を保持する。例えば、バッファ102は、予測木毎に保持するデータを初期化してもよい。バッファ102に保持された予測木(Predtree)に含まれる複数の三次元点の一点一点に対して順番に符号化のための処理が実行される。 The buffer 102 holds the generated prediction tree. For example, the buffer 102 may initialize data held for each prediction tree. A plurality of three-dimensional points included in the prediction tree (Predtree) held in the buffer 102 are sequentially subjected to encoding processing one by one.
 そして、予測木(Predtree)に含まれる複数の三次元点のそれぞれと、選択された予測点との差分(第1残差信号)が算出される。この第1残差信号は、予測残差とも言う。また、第1残差信号は、第1残差の一例である。 Then, the difference (first residual signal) between each of the plurality of three-dimensional points included in the prediction tree (Predtree) and the selected prediction point is calculated. This first residual signal is also called a prediction residual. Also, the first residual signal is an example of the first residual.
 適応量子化部103は、第1残差信号を適応量子化する。エントロピー符号化部111は、適応量子化された第1残差信号をエントロピー符号化して符号化データを生成し、符号化データを含むビットストリームを出力(生成)する。 Adaptive quantization section 103 adaptively quantizes the first residual signal. The entropy coding unit 111 entropy-codes the adaptively quantized first residual signal to generate coded data, and outputs (generates) a bitstream containing the coded data.
 適応逆量子化部104は、適応量子化部103により適応量子化された第1残差信号を、適応逆量子化する。適応逆量子化された第1残差信号は、選択された予測点(1以上の候補点)に基づく予測値に加算されることでイントラ予測及びインター予測に用いられる三次元点(参照点)として復号される。なお、予測値は、1以上の候補点の位置情報に基づいて算出される。バッファ105は、復号されたイントラ予測の参照点群を保持する。例えば、バッファ105は、予測木(対象点群)毎に保持するデータを初期化してもよい。また、バッファ107は、インター予測の参照点群を保持する。例えば、バッファ107は、予測木(対象点群)毎に保持するデータを初期化してもよい。 Adaptive inverse quantization section 104 adaptively inversely quantizes the first residual signal adaptively quantized by adaptive quantization section 103 . The adaptively inverse quantized first residual signal is added to the prediction value based on the selected prediction points (one or more candidate points) to obtain three-dimensional points (reference points) used for intra prediction and inter prediction. is decoded as Note that the predicted value is calculated based on position information of one or more candidate points. The buffer 105 holds the decoded intra-prediction reference point group. For example, the buffer 105 may initialize data held for each prediction tree (target point group). The buffer 107 also holds reference point groups for inter prediction. For example, the buffer 107 may initialize data held for each prediction tree (target point group).
 イントラ予測部106は、予測に用いるイントラ予測点を、符号化対象の三次元点が含まれる予測木(Predtree)に含まれる複数の三次元点(イントラ予測の参照点群)などのような当該予測木(Predtree)内の情報を参照して、所定の方法により決定する。例えば、イントラ予測部106は、符号化対象の三次元点の直前(例えば、予測木の親ノードなどの祖先ノード)に適応逆量子化された2点の三次元点(復号点)を用いて外挿するなどしてイントラ予測点を決定してもよい。 The intra prediction unit 106 selects intra prediction points to be used for prediction, such as a plurality of 3D points (reference point group for intra prediction) included in a prediction tree (Predtree) including a 3D point to be encoded. The information in the prediction tree (Predtree) is referred to and determined by a predetermined method. For example, the intra prediction unit 106 uses two 3D points (decoding points) adaptively dequantized immediately before the 3D point to be encoded (for example, an ancestor node such as a parent node of a prediction tree). Intra prediction points may be determined by extrapolation or the like.
 動き補償部108は、符号化対象の三次元点が含まれる予測木(Predtree)に含まれる複数の三次元点(複数の復号点)に基づいて符号化済みの点群を再生し、符号化済みの点群と符号化対象の点群との間の変位を検出(動き検出)し、検出した変位に基づき符号化済みの点群を補正(動き補償)することで、位置合わせ後のインター予測の参照点群であるインター予測点群を生成する。 A motion compensation unit 108 reproduces an encoded point group based on a plurality of 3D points (a plurality of decoding points) included in a prediction tree (Predtree) including a 3D point to be encoded, and performs encoding. By detecting the displacement between the coded point cloud and the point cloud to be encoded (motion detection) and correcting the coded point cloud based on the detected displacement (motion compensation), Generate an inter-prediction point cloud, which is a reference point cloud for prediction.
 インター予測部109は、動き補償されたインター予測点群に基づいて、予測に用いるインター予測点を所定の方法により決定する。例えば、インター予測部109は、インター予測点群から、イントラ予測点に最も近い点をインター予測点として選択してもよいし、イントラ予測点を参照せずに、直前(最後)に符号化した三次元点(例えば、予測木の親ノードなどの祖先ノードに対応する三次元点)の近傍の三次元点(例えば直前に符号化した三次元点に最も近い三次元点)をインター予測点として選択してもよい。 The inter prediction unit 109 determines inter prediction points to be used for prediction by a predetermined method based on the motion-compensated inter prediction point group. For example, the inter prediction unit 109 may select a point closest to the intra prediction point from the inter prediction point group as the inter prediction point, or may select the point that was encoded immediately before (last) without referring to the intra prediction point. A 3D point near a 3D point (e.g., a 3D point corresponding to an ancestor node such as a parent node of a prediction tree) (e.g., the 3D point closest to the previously encoded 3D point) as an inter prediction point You may choose.
 また、インター予測部109は、予測木(Predtree)の親ノードの復号済みの水平角Φpとlaser_idpとを用いてインター予測点を決定してもよい。例えば、インター予測部109は、インター予測点群の中から、親ノードの復号済みのlaser_idpと同じlaser_idを有し、かつ、親ノードの復号済みの水平角Φpにoffsetを加算した値Φp+offsetに値が近いΦを有する三次元点をインター予測点として選択してもよい。ここでoffsetは、0以上の値であり、例えば、lidarの水平スキャンの角速度等に応じてその値が決定されてもよい。これにより、三次元データ符号化装置100は、符号化対象点の極座標(d, Φ, laser_id)の各値に近い予測値をインター予測点群から生成することができ、符号化効率を向上できる。符号化対象点は、第1三次元点の一例である。また、符号化対象点は、第2三次元点の一例であってもよい。 Also, the inter prediction unit 109 may determine an inter prediction point using the decoded horizontal angle Φp and laser_idp of the parent node of the prediction tree (Predtree). For example, the inter prediction unit 109 selects from among the inter prediction point group, the value Φp+offset 3D points with Φ close in value to may be selected as inter-prediction points. Here, offset is a value of 0 or more, and the value may be determined according to, for example, the angular velocity of horizontal scanning of lidar. As a result, the 3D data encoding apparatus 100 can generate prediction values close to each value of the polar coordinates (d, Φ, laser_id) of the encoding target point from the inter-prediction point cloud, and can improve the encoding efficiency. . A point to be encoded is an example of a first three-dimensional point. Also, the encoding target point may be an example of a second three-dimensional point.
 切替部110は、イントラ予測点、及び、インター予測点のいずれかを選択することで、予測に用いる予測点を決定する。このように、三次元データ符号化装置100では、複数の符号化済みの三次元点のうちの1以上の候補点の位置情報が予測点として決定され、予測点に基づいて予測値が算出される。イントラ予測部106及びインター予測部109では、予測点(イントラ予測点またはインター予測点)を、符号化対象の三次元点の直前に符号化した三次元点に基づいて決定する。つまり、三次元データ符号化装置100は、予測値を算出するための1以上の候補点を、複数の符号化済みの三次元点のうちの1以上の基準点に基づいて決定する。1以上の基準点は、符号化対象の三次元点の直前に符号化した三次元点であり、例えば、予測木において、符号化対象の1つの三次元点の親ノード(祖先ノード)に対応する三次元点であってもよい。 The switching unit 110 selects either intra prediction points or inter prediction points to determine prediction points to be used for prediction. In this way, in the three-dimensional data encoding device 100, position information of one or more candidate points among a plurality of encoded three-dimensional points is determined as a predicted point, and a predicted value is calculated based on the predicted point. be. The intra prediction unit 106 and the inter prediction unit 109 determine a prediction point (intra prediction point or inter prediction point) based on the 3D point encoded immediately before the 3D point to be encoded. That is, 3D data encoding apparatus 100 determines one or more candidate points for calculating a predicted value based on one or more reference points among a plurality of encoded 3D points. One or more reference points are 3D points encoded immediately before the 3D point to be encoded, and correspond to, for example, parent nodes (ancestor nodes) of one 3D point to be encoded in the prediction tree. It may be a three-dimensional point that
 なお、三次元データ符号化装置100は、後述する図4のフローチャートの手順に従って、イントラ予測点及びインター予測点からいずれか1つを予測点として選択してもよい。また、イントラ予測点とインター予測点とのいずれを予測点に用いるかを選択するための、予測に関する情報(予測情報)は、エントロピー符号化されて各三次元点のヘッダ部に記載されてもよいし、各三次元点とインタリーブされて記載されてもよい。また、動きベクトルなどの動き補償に関する情報は、フレームまたは予測木(Predtree)のヘッダ部に記載されてもよいし、エントロピー符号化されて各三次元点のヘッダ部に記載されてもよいし、各三次元点とインタリーブされて記載されてもよい。 Note that the 3D data encoding device 100 may select either one of the intra prediction points and the inter prediction points as the prediction point according to the procedure of the flowchart of FIG. 4, which will be described later. Information about prediction (prediction information) for selecting which of intra prediction points and inter prediction points to use as prediction points may be entropy-encoded and described in the header of each three-dimensional point. Alternatively, it may be described interleaved with each 3D point. Information related to motion compensation such as motion vectors may be described in the header of a frame or prediction tree (Predtree), or may be entropy-encoded and described in the header of each 3D point, It may be described interleaved with each 3D point.
 例えば、三次元データ符号化装置100は、予測木(Predtree)のノード毎に参照するインター予測点群のフレームを切替えて符号化する場合、インター予測として選択した参照フレームの識別番号(以下、参照フレーム番号)を予測木(Predtree)のノード毎に付加してもよい。これにより、三次元データ符号化装置100は、ノード毎に最適な参照フレーム番号を選択してインター予測することで符号化効率を向上できる。また、三次元データ復号装置120(後述参照)は、ビットストリームのノード毎に付加された参照フレーム番号を復号する事で、どの参照フレームからインター予測点を生成するかを判断でき、ノード毎に最適な参照フレーム番号を選択してインター予測することで符号化効率を向上したビットストリームを適切に復号できる。 For example, when the three-dimensional data encoding device 100 performs encoding by switching frames of an inter prediction point group to be referenced for each node of a prediction tree (Predtree), the identification number of the reference frame selected for inter prediction (hereinafter referred to as frame number) may be added to each node of the prediction tree (Predtree). Thereby, the 3D data encoding apparatus 100 can improve encoding efficiency by selecting the optimum reference frame number for each node and performing inter prediction. Also, the 3D data decoding device 120 (see later) can determine from which reference frame to generate an inter prediction point by decoding the reference frame number added to each node of the bitstream. A bitstream with improved coding efficiency can be appropriately decoded by selecting the optimum reference frame number and inter-predicting it.
 また、インター予測の参照点群は、符号化対象のフレームと異なる符号化済みのフレームに含まれる点群であってもよいし、符号化対象のフレームと同じフレームに含まれる符号化済みの点群であってもよい。 In addition, the reference point group for inter prediction may be a point group included in an encoded frame different from the encoding target frame, or may be a point group included in the same frame as the encoding target frame. It can be a group.
 このように、三次元データ符号化装置100は、イントラ予測に加えてインター予測も用いて符号化対象点の予測を行うことで、エントロピー符号化する第1残差信号の情報量を低減することができ、符号化効率を向上できる可能性がある。 In this way, the three-dimensional data encoding apparatus 100 predicts the encoding target point using inter prediction in addition to intra prediction, thereby reducing the amount of information in the first residual signal to be entropy encoded. can improve the coding efficiency.
 なお、三次元データ符号化装置100は、常にインター予測点を参照する必要はなく、所定の時間間隔(例えば1秒毎など)、所定のフレーム間隔(例えば30フレーム毎など)、或いは、三次元データ復号装置へ通知する任意のタイミングなどで、インター予測の参照点群を格納しているバッファ107を初期化するなどして、符号化対象の点群の情報のみに基づいて符号化するようにしてもよい。これにより、対応する三次元データ復号装置において、インター予測点を参照していないビットストリームの先頭でない点群からの飛び込み再生開始が可能になり、当該ビットストリームのランダムアクセス性またはエラー耐性を向上できる可能性がある。 Note that the 3D data encoding apparatus 100 does not always need to refer to the inter prediction point, and can be set at a predetermined time interval (for example, every 1 second), a predetermined frame interval (for example, every 30 frames), or a 3D The buffer 107 storing the inter-prediction reference point cloud is initialized at an arbitrary timing for notification to the data decoding device, so that encoding is performed based only on the information of the point cloud to be encoded. may As a result, in the corresponding three-dimensional data decoding device, it is possible to start jumping playback from a point group that is not the head of a bitstream that does not refer to an inter prediction point, and improve the random access property or error resistance of the bitstream. there is a possibility.
 三次元データ符号化装置100は、入力された符号化対象の点群が直交座標で表現された座標を位置情報として有する場合、直交座標で表現された座標で示される位置情報を符号化する。三次元データ符号化装置100は、入力された符号化対象の点群が極座標で表現された座標を位置情報として有する場合、極座標で表現された座標で示される位置情報を符号化する。 When the input point group to be encoded has coordinates represented by orthogonal coordinates as position information, the three-dimensional data encoding device 100 encodes the position information indicated by the coordinates represented by orthogonal coordinates. When the input point group to be encoded has coordinates expressed in polar coordinates as position information, the three-dimensional data encoding device 100 encodes the position information indicated by the coordinates expressed in polar coordinates.
 図3は、本実施の形態に係る三次元データ復号装置120のブロック図である。なお、図3では、点群の位置情報(ジオメトリ)の復号に関する処理部を記載しているが、三次元データ復号装置120は、点群の属性情報の復号等を行う処理部等の他の処理部を備えてもよい。三次元データ復号装置120は、復号済みの点群を参照しつつ復号対象の点群を復号するインター予測復号を行う。例えば、三次元データ復号装置120は、図1に示す三次元データ符号化装置100で生成されたビットストリームを復号する。 FIG. 3 is a block diagram of the three-dimensional data decoding device 120 according to this embodiment. Note that FIG. 3 shows a processing unit related to decoding position information (geometry) of a point cloud, but the three-dimensional data decoding device 120 includes other processing units such as a processing unit that decodes attribute information of a point cloud. A processing unit may be provided. The three-dimensional data decoding device 120 performs inter-prediction decoding for decoding a point group to be decoded while referring to a decoded point group. For example, the 3D data decoding device 120 decodes the bitstream generated by the 3D data encoding device 100 shown in FIG.
 三次元データ復号装置120は、エントロピー復号部121と、適応逆量子化部122と、バッファ123と、イントラ予測部124と、バッファ125と、動き補償部126と、インター予測部127と、切替部128とを備える。 The three-dimensional data decoding device 120 includes an entropy decoding unit 121, an adaptive inverse quantization unit 122, a buffer 123, an intra prediction unit 124, a buffer 125, a motion compensation unit 126, an inter prediction unit 127, and a switching unit. 128.
 三次元データ復号装置120は、三次元データ符号化装置100において生成されたビットストリームを取得する。 The 3D data decoding device 120 acquires the bitstream generated by the 3D data encoding device 100 .
 エントロピー復号部121は、入力されたビットストリームを、予測木(Predtree)の三次元点毎にエントロピー復号することで適応量子化された第1残差信号を生成する。適応逆量子化部122は、適応量子化された第1残差信号を適応逆量子化して、第1残差信号を再生する。各三次元点の第1残差信号は、各三次元点に対応する予測点に基づく予測値と加算されたのち、復号点として生成(出力)される。つまり、三次元データ復号装置120は、予測値と予測残差とを加算することで、復号対象の1つの三次元点の位置情報を算出する。 The entropy decoding unit 121 generates an adaptively quantized first residual signal by entropy decoding the input bitstream for each three-dimensional point of a prediction tree (Predtree). Adaptive inverse quantization section 122 adaptively inverse quantizes the adaptively quantized first residual signal to reproduce the first residual signal. The first residual signal of each 3D point is added to the prediction value based on the prediction point corresponding to each 3D point, and then generated (output) as a decoded point. In other words, 3D data decoding device 120 calculates the position information of one 3D point to be decoded by adding the prediction value and the prediction residual.
 バッファ123は、生成された復号点を、イントラ予測の参照点群として保持する。例えば、バッファ123は、予測木(対象点群)毎に保持するデータを初期化してもよい。また、バッファ125は、生成された復号点を、インター予測の参照点群として保持する。例えば、バッファ125は、予測木(対象点群)毎に保持するデータを初期化してもよい。 The buffer 123 holds the generated decoding points as a reference point group for intra prediction. For example, the buffer 123 may initialize data held for each prediction tree (target point group). The buffer 125 also holds the generated decoding points as a reference point group for inter prediction. For example, the buffer 125 may initialize data held for each prediction tree (target point group).
 イントラ予測部124は、予測に用いるイントラ予測点を、復号対象の三次元点が含まれる予測木(Predtree)に含まれる複数の三次元点(イントラ予測の参照点群)などのような当該予測木(Predtree)内の情報を参照して、所定の方法により決定する。例えば、イントラ予測部124は、復号対象の三次元点の直前(例えば、予測木の親ノードなどの祖先ノード)に適応逆量子化された2点の三次元点(復号点)を用いて外挿するなどしてイントラ予測点を決定してもよい。 The intra prediction unit 124 selects intra prediction points to be used for prediction, such as a plurality of 3D points (reference point group for intra prediction) included in a prediction tree (Predtree) including a 3D point to be decoded. The information in the tree (Predtree) is referred to and determined by a predetermined method. For example, the intra prediction unit 124 uses two 3D points (decoding points) adaptively dequantized immediately before the 3D point to be decoded (for example, an ancestor node such as a parent node of a prediction tree). Intra prediction points may be determined by inserting.
 動き補償部126は、復号対象の三次元点が含まれる予測木(Predtree)に含まれる複数の三次元点(複数の復号点)に基づいて復号済みの点群を再生し、復号済みの点群と復号対象の点群との間の変位を補正(動き補償)することで、位置合わせ後のインター予測の参照点群であるインター予測点群を生成する。 The motion compensation unit 126 reproduces the decoded point group based on a plurality of 3D points (a plurality of decoding points) included in a prediction tree (Predtree) including the 3D point to be decoded, and reproduces the decoded point group. An inter-prediction point group, which is a reference point group for inter-prediction after alignment, is generated by correcting (motion compensation) the displacement between the group and the point group to be decoded.
 インター予測部127は、動き補償されたインター予測点群に基づいて、予測に用いるインター予測点を所定の方法により決定する。例えば、インター予測部127は、インター予測点群から、イントラ予測点に最も近い点を選択してインター予測点として選択してもよいし、イントラ予測点を参照せずに、直前に復号した三次元点(例えば、予測木の親ノードなどの祖先ノードに対応する三次元点)の近傍の三次元点(例えば直前に復号した三次元点に最も近い三次元点)をインター予測点として選択してもよい。 The inter prediction unit 127 determines inter prediction points to be used for prediction by a predetermined method based on the motion-compensated inter prediction point group. For example, the inter prediction unit 127 may select a point closest to the intra prediction point from the group of inter prediction points as the inter prediction point, or may select the point closest to the intra prediction point as the inter prediction point. A 3D point (e.g., the closest 3D point to the previously decoded 3D point) near the original point (e.g., the 3D point corresponding to an ancestor node such as the parent node of the prediction tree) is selected as the inter prediction point. may
 また、インター予測部127は、予測木(Predtree)の親ノードの復号済みの水平角Φpとlaser_idpとを用いてインター予測点を決定してもよい。例えば、インター予測部127は、インター予測点群の中から、親ノードの復号済みのlaser_idpと同じlaser_idを有し、かつ、親ノードの復号済みの水平角Φpにoffsetを加算した値Φp+offsetに値が近いΦを有する三次元点をインター予測点として選択してもよい。ここでoffsetは、0以上の値であり、例えば、lidarの水平スキャンの角速度等に応じてその値が決定されてもよい。これにより、三次元データ復号装置120は、復号対象点の極座標(d, Φ, laser_id)の各値に近い予測値をインター予測点群から生成して符号化効率を向上したビットストリームを適切に復号できる。復号対象点は、第1三次元点の一例である。また、復号対象点は、第2三次元点の一例であってもよい。 Also, the inter prediction unit 127 may determine an inter prediction point using the decoded horizontal angle Φp and laser_idp of the parent node of the prediction tree (Predtree). For example, the inter prediction unit 127 selects from among the inter prediction point group, the value Φp+offset 3D points with Φ close in value to may be selected as inter-prediction points. Here, offset is a value of 0 or more, and the value may be determined according to, for example, the angular velocity of horizontal scanning of lidar. As a result, the 3D data decoding device 120 generates a prediction value close to each value of the polar coordinates (d, Φ, laser_id) of the decoding target point from the inter-prediction point cloud to appropriately generate a bitstream with improved coding efficiency. can be decrypted. A decoding target point is an example of a first three-dimensional point. Also, the decoding target point may be an example of the second three-dimensional point.
 切替部128は、イントラ予測点、及び、インター予測点のいずれかを選択することで、予測に用いる予測点を決定する。このように、三次元データ復号装置120では、複数の復号済みの三次元点のうちの1以上の候補点の位置情報が予測点として決定され、予測点に基づいて予測値が算出される。イントラ予測部124及びインター予測部127では、予測点(イントラ予測点またはインター予測点)を、復号対象の三次元点の直前に復号した三次元点に基づいて決定する。つまり、三次元データ復号装置120は、予測値を算出するための1以上の候補点を、複数の復号済みの三次元点のうちの1以上の基準点に基づいて決定する。1以上の基準点は、復号対象の三次元点の直前に符号化した三次元点であり、例えば、予測木において、復号対象の1つの三次元点の親ノード(祖先ノード)に対応する三次元点であってもよい。 The switching unit 128 selects either intra prediction points or inter prediction points to determine prediction points to be used for prediction. In this way, in the 3D data decoding device 120, the position information of one or more candidate points among the plurality of decoded 3D points is determined as the prediction point, and the prediction value is calculated based on the prediction point. The intra prediction unit 124 and the inter prediction unit 127 determine a prediction point (intra prediction point or inter prediction point) based on the 3D point decoded immediately before the 3D point to be decoded. That is, 3D data decoding device 120 determines one or more candidate points for calculating the predicted value based on one or more reference points among the plurality of decoded 3D points. The one or more reference points are 3D points encoded immediately before the 3D point to be decoded. It may be the origin point.
 なお、三次元データ復号装置120は、後述する図5のフローチャートの手順に従って、イントラ予測点及びインター予測点からいずれか1つを予測点として選択してもよい。また、三次元データ復号装置120は、イントラ予測点とインター予測点とのいずれを予測点に用いるかを選択するための、予測に関する情報(予測情報)に基づいて、イントラ予測点とインター予測点とのいずれか1つを予測点として選択してもよい。予測情報は、エントロピー符号化されて各三次元点のヘッダ部に記載されてもよいし、各三次元点とインタリーブされて記載されてもよい。また、動きベクトルなどの動き補償に関する情報は、フレームまたは予測木(Predtree)のヘッダ部に記載されてもよいし、エントロピー符号化されて各点のヘッダ部に記載されてもよいし、各三次元点とインタリーブされて記載されてもよい。このように、予測情報または動き補償に関する情報は、三次元データ復号装置120へ、対応する三次元データ符号化装置100から通知されてもよい。また、インター予測の参照点群は、符号化対象のフレームと異なる符号化済みのフレームに含まれる点群であってもよいし、符号化対象のフレームと同じフレームに含まれる符号化済みの点群であってもよい。 Note that the 3D data decoding device 120 may select either one of the intra prediction points and the inter prediction points as the prediction point according to the procedure of the flowchart of FIG. 5, which will be described later. In addition, three-dimensional data decoding device 120 selects between intra prediction points and inter prediction points based on prediction information (prediction information) for selecting intra prediction points and inter prediction points. You may select any one of as a prediction point. The prediction information may be entropy-encoded and described in the header of each 3D point, or may be described interleaved with each 3D point. Information related to motion compensation such as motion vectors may be described in the header of a frame or prediction tree (Predtree), entropy-encoded and described in the header of each point, or may be described in the header of each point. It may be described interleaved with the origin point. In this way, prediction information or information about motion compensation may be notified to the 3D data decoding device 120 from the corresponding 3D data encoding device 100 . In addition, the reference point group for inter prediction may be a point group included in an encoded frame different from the encoding target frame, or may be a point group included in the same frame as the encoding target frame. It can be a group.
 このように、三次元データ復号装置120は、イントラ予測に加えてインター予測も用いて復号対象点の予測を行うことで、復号済みの点群を参照しつつ符号化されたビットストリーム(例えば、図1の三次元データ符号化装置100から出力されたビットストリーム)から点群を復号できる。 In this way, the 3D data decoding device 120 predicts the decoding target points using not only intra prediction but also inter prediction, so that a bit stream (for example, A point cloud can be decoded from the bitstream output from the 3D data encoding apparatus 100 of FIG.
 なお、三次元データ復号装置120は、常にインター予測点を参照する必要はなく、所定の時間間隔(例えば1秒毎など)、所定のフレーム間隔(例えば30フレーム毎など)、或いは、対応する三次元データ符号化装置100から通知される任意のタイミングなどで、インター予測の参照点群を格納しているバッファ125を初期化するなどして、復号対象の点群の情報のみに基づいて復号するようにしてもよい。これにより、三次元データ復号装置120は、インター予測点を参照していないビットストリームの先頭でない点群からの飛び込み再生開始が可能になり、当該ビットストリームのランダムアクセス性やエラー耐性を向上できる可能性がある。 Note that the 3D data decoding device 120 does not always need to refer to the inter prediction point, but rather at a predetermined time interval (for example, every 1 second), a predetermined frame interval (for example, every 30 frames), or a corresponding cubic Decoding is performed based only on the information of the point cloud to be decoded by initializing the buffer 125 storing the inter-prediction reference point cloud at an arbitrary timing notified from the original data encoding device 100 or the like. You may do so. As a result, the three-dimensional data decoding device 120 can start jumping playback from a point group that is not the head of a bitstream that does not refer to an inter-prediction point, and can improve random access and error resistance of the bitstream. have a nature.
 三次元データ復号装置120は、ビットストリームが直交座標で表現された座標で示される位置情報が符号化された符号化データを有する場合、直交座標で表現された座標で示される位置情報を復号する。三次元データ復号装置120は、ビットストリームが極座標で表現された座標で示される位置情報が符号化された符号化データを有する場合、極座標で表現された座標で示される位置情報を復号する。 The three-dimensional data decoding device 120 decodes the position information indicated by the coordinates expressed by the orthogonal coordinates when the bitstream has encoded data in which the position information indicated by the coordinates expressed by the orthogonal coordinates is encoded. . The 3D data decoding device 120 decodes the position information indicated by the coordinates expressed in polar coordinates when the bitstream has encoded data in which the position information indicated by the coordinates expressed in polar coordinates is encoded.
 図4は、三次元データ符号化装置100における、予測木(Predtree)の各三次元点を符号化する手順の一例を示すフローチャートである。 FIG. 4 is a flowchart showing an example of a procedure for encoding each 3D point of a prediction tree (Predtree) in the 3D data encoding device 100. FIG.
 この例では、三次元データ符号化装置100は、まずイントラ予測の参照点群からイントラ予測点を決定する(S101)。三次元データ符号化装置100は、イントラ予測点を、例えば、既に説明した実施の形態に開示されている、予測木を用いて予測点を決定する方法を用いて決定してもよい。例えば、三次元データ符号化装置100は、複数の符号化済みの三次元点を用いて予測木を生成し、予測木に基づいて複数の符号化済みの三次元点から1以上の候補点を選択してもよい。三次元データ符号化装置100は、上記の方法のうち少なくとも一つの方法により決定される少なくとも一つのイントラ予測点のうち、符号量が最も少なくなる予測点をイントラ予測点として決定してもよい。また、三次元データ符号化装置100は、上記の方法のうち少なくとも一つの方法により決定される少なくとも一つのイントラ予測点のうち、座標残差の絶対値和(または二乗和)が最も小さい予測点をイントラ予測点として決定してもよい。 In this example, the 3D data encoding device 100 first determines intra prediction points from a reference point group for intra prediction (S101). The 3D data encoding apparatus 100 may determine intra prediction points using, for example, the method of determining prediction points using a prediction tree, disclosed in the embodiments already described. For example, 3D data encoding apparatus 100 generates a prediction tree using a plurality of encoded 3D points, and selects one or more candidate points from the plurality of encoded 3D points based on the prediction tree. You may choose. The 3D data encoding apparatus 100 may determine, as an intra prediction point, a prediction point with the smallest code amount among at least one intra prediction point determined by at least one of the above methods. In addition, the 3D data encoding apparatus 100 uses at least one intra-prediction point determined by at least one of the above methods, the prediction point having the smallest absolute value sum (or square sum) of coordinate residuals may be determined as intra prediction points.
 次に、三次元データ符号化装置100は、イントラ予測関連パラメータを出力する(S102)。ステップS101で決定するイントラ予測点の決定方法の候補が2つ以上ある場合、三次元データ符号化装置100は、選択した決定方法の候補を示す情報を、イントラ予測関連パラメータとしてビットストリームに出力してもよい。 Next, the 3D data encoding device 100 outputs intra-prediction-related parameters (S102). If there are two or more candidates for the intra prediction point determination method determined in step S101, the 3D data encoding apparatus 100 outputs information indicating the selected candidate determination method to the bitstream as an intra prediction related parameter. may
 次に、三次元データ符号化装置100は、インター予測点を、インター予測点群から抽出された少なくとも一つの候補点を参照して決定する。例えば、三次元データ符号化装置100は、一つの候補点をインター予測点として決定してもよいし、複数の候補点の座標の平均値を座標として有する予測点をインター予測点として決定してもよい。或いは、三次元データ符号化装置100は、イントラ予測点と少なくとも一つの候補点との座標の平均値を座標として有する予測点をインター予測点として決定してもよい。 Next, the 3D data encoding device 100 determines inter prediction points by referring to at least one candidate point extracted from the inter prediction point group. For example, the 3D data encoding apparatus 100 may determine one candidate point as an inter prediction point, or determine a prediction point having coordinates that are average values of coordinates of a plurality of candidate points as an inter prediction point. good too. Alternatively, the 3D data encoding apparatus 100 may determine a prediction point having, as coordinates, an average value of coordinates of an intra prediction point and at least one candidate point, as an inter prediction point.
 ここでは、三次元データ符号化装置100は、少なくとも一つの候補点としてイントラ予測点の近傍に位置している点を探索してもよい(S103)。 Here, the 3D data encoding device 100 may search for a point located near the intra prediction point as at least one candidate point (S103).
 次に、三次元データ符号化装置100は、決定した少なくとも一つのインター予測点のそれぞれに対して、イントラ予測点に近い順に小さいインデックス値を付与してもよい(S104)。 Next, the 3D data encoding device 100 may assign a smaller index value to each of the determined at least one inter prediction point in descending order of proximity to the intra prediction point (S104).
 次に、三次元データ符号化装置100は、探索が終了したか否かを判定し(S105)、探索が終了した場合(S105でYes)、次のステップS106に進み、探索が終了していない場合(S105でNo)、ステップS103に戻る。探索が終了したことは、所定点数のインター予測点を発見したことで判定されてもよいし、所定範囲の点群の全てを探索したことで判定されてもよいし、所定点数のインター予測点を発見したか、所定範囲の点群の全てを探索したかのいずれかを満たしたことで判定されてもよい。 Next, the three-dimensional data encoding apparatus 100 determines whether or not the search has ended (S105), and if the search has ended (Yes in S105), the process proceeds to the next step S106, where the search has not ended. If so (No in S105), the process returns to step S103. The end of the search may be determined by finding a predetermined number of inter-prediction points, by searching for all points in a predetermined range, or by searching for a predetermined number of inter-prediction points. or searching all of the point cloud in the predetermined range.
 次に、三次元データ符号化装置100は、予測方法を決定する(S106)。具体的には、三次元データ符号化装置100は、予測点を決定する方法をイントラ予測にするか、インター予測にするかを決定する。つまり、三次元データ符号化装置100は、イントラ予測点を予測点として決定するか、インター予測点を予測点として決定するかを決定する。例えば、三次元データ符号化装置100は、イントラ予測点及びインター予測点のうち、符号量が最も少なくなる予測点の予測方法に決定してもよい。また、三次元データ符号化装置100は、イントラ予測点及びインター予測点のうち、座標残差の絶対値和(または二乗和)が最も小さい予測点の予測方法に決定してもよい。 Next, the 3D data encoding device 100 determines a prediction method (S106). Specifically, the 3D data encoding apparatus 100 determines whether the method for determining prediction points is intra prediction or inter prediction. That is, the 3D data encoding apparatus 100 determines whether to determine the intra prediction point as the prediction point or the inter prediction point as the prediction point. For example, the 3D data encoding apparatus 100 may determine the prediction method for the prediction point with the smallest code amount among the intra prediction points and the inter prediction points. Also, the 3D data encoding apparatus 100 may determine the prediction method for the prediction point with the smallest absolute value sum (or square sum) of the coordinate residuals among the intra prediction points and the inter prediction points.
 三次元データ符号化装置100は、決定した予測方法のモードが、予測方法がインター予測であることを示すインターモードであるか、予測方法がイントラ予測であることを示すイントラ予測モードであるかを判定する(S107)。 Three-dimensional data encoding apparatus 100 determines whether the determined prediction method mode is an inter mode indicating that the prediction method is inter prediction or an intra prediction mode indicating that the prediction method is intra prediction. Determine (S107).
 三次元データ符号化装置100は、決定した予測方法がインター予測である場合(S107でインターモード)、インター予測点を予測点として決定したことを示す識別情報(例えば、フラグ)を、ビットストリームに出力する(S108)。 When the determined prediction method is inter prediction (inter mode in S107), the 3D data encoding apparatus 100 adds identification information (e.g., a flag) indicating that the inter prediction point is determined as the prediction point to the bitstream. Output (S108).
 次に、三次元データ符号化装置100は、インター予測点の座標の決定に使用される候補点の数に関する情報、及び、使用される各候補点のインデックス値などを、インター予測関連パラメータとしてビットストリームに出力する(S109)。インデックス値は、予測値を決定するために用いられる1以上の候補点に割り当てられていてもよい。 Next, the 3D data encoding apparatus 100 uses bit Output to a stream (S109). Index values may be assigned to one or more candidate points that are used to determine predicted values.
 また、三次元データ符号化装置100は、決定した予測方法がイントラ予測である場合(S107でイントラモード)、イントラ予測点を予測点として決定したことを示す識別情報(例えば、フラグ)を、ビットストリームに出力する(S111)。なお、ステップS108及びステップS111における識別情報は、インター予測点を予測点として決定したか、イントラ予測点を予測点として決定したかを示す情報である。 Further, when the determined prediction method is intra prediction (intra mode in S107), 3D data encoding apparatus 100 sets identification information (for example, a flag) indicating that intra prediction points have been determined as prediction points by bit Output to a stream (S111). The identification information in steps S108 and S111 is information indicating whether an inter prediction point or an intra prediction point is determined as a prediction point.
 ステップS109またはステップS111の後で、三次元データ符号化装置100は、決定した予測方法により求めた予測点を参照して符号化対象の三次元点の座標情報を符号化する(S110)。 After step S109 or step S111, the 3D data encoding device 100 references the prediction points obtained by the determined prediction method and encodes the coordinate information of the 3D points to be encoded (S110).
 このように、三次元データ符号化装置100は、インター予測点群とイントラ予測点とを参照して少なくとも一つのインター予測点を決定し、これらのイントラ予測点及びインター予測点から予測点を求める方法を決定し、予測点を参照して符号化対象の三次元点の位置情報(座標情報)を符号化する。 In this way, the 3D data encoding apparatus 100 refers to the inter prediction point group and the intra prediction points to determine at least one inter prediction point, and obtains a prediction point from these intra prediction points and inter prediction points. A method is determined, and the position information (coordinate information) of the 3D point to be encoded is encoded with reference to the predicted point.
 なお、ステップS103では、イントラ予測点を参照せずに、直前に符号化した三次元点(例えば、予測木の親ノードなどの祖先ノードに対応する三次元点)など、イントラ予測関連パラメータに依らずに一意に決定される三次元点の近傍において、インター予測点を探索するようにしてもよい。この場合は、ステップS102をステップS101の直後では実施せず、ステップS111の直後にステップS102を実施するようにしてもよい。 Note that in step S103, without referring to the intra prediction point, the 3D point encoded immediately before (for example, the 3D point corresponding to the ancestor node such as the parent node of the prediction tree) depends on the intra prediction related parameter. Inter-prediction points may be searched for in the vicinity of three-dimensional points that are uniquely determined independently of each other. In this case, step S102 may not be performed immediately after step S101, and step S102 may be performed immediately after step S111.
 図5は、符号化処理における、残差信号に対する適応量子化の処理の一例を示すフローチャートである。 FIG. 5 is a flowchart showing an example of adaptive quantization processing for residual signals in encoding processing.
 適応量子化は、ステップS110において行われる。 Adaptive quantization is performed in step S110.
 適応量子化部103は、次に適応量子化する符号化対象の三次元点の座標成分の残差が水平角Φの残差であるか否かを判定する(S121)。 The adaptive quantization unit 103 determines whether or not the residual of the coordinate components of the 3D point to be adaptively quantized next is the residual of the horizontal angle Φ (S121).
 適応量子化部103は、次に適応量子化する符号化対象の三次元点の座標成分の残差が水平角Φの残差である場合(S121でYes)、符号化対象の三次元点の極座標における距離dを取得する(S122)。 If the residual of the coordinate components of the next three-dimensional point to be adaptively quantized is the residual of the horizontal angle Φ (Yes in S121), adaptive quantization section 103 performs A distance d in polar coordinates is obtained (S122).
 次に、適応量子化部103は、取得した距離dを用いて水平角Φの残差に対する量子化ステップQSを算出する(S123)。量子化ステップQSは、具体的には、量子化ステップ(つまり、量子化幅)である。 Next, the adaptive quantization unit 103 uses the acquired distance d to calculate the quantization step QS for the residual of the horizontal angle Φ (S123). The quantization step QS is specifically a quantization step (that is, a quantization width).
 次に、適応量子化部103は、水平角Φの残差を量子化ステップQSで量子化し、水平角Φの量子化後の量子化値を算出する(S124)。なお、水平角Φの量子化値は、下記式1を用いて算出されてもよい。 Next, the adaptive quantization unit 103 quantizes the residual of the horizontal angle Φ at the quantization step QS, and calculates the quantized value of the horizontal angle Φ after quantization (S124). Note that the quantized value of the horizontal angle Φ may be calculated using Equation 1 below.
 水平角Φの残差信号の量子化値=水平角Φの残差信号/QS  (式1) Quantized value of residual signal of horizontal angle Φ = residual signal of horizontal angle Φ/QS (Equation 1)
 なお、適応量子化部103は、次に適応量子化する符号化対象の三次元点の座標成分の残差が水平角Φの残差でない場合(S121でNo)、つまり、符号化対象の三次元点の座標成分の残差が距離dの残差または仰角θの残差である場合、距離dの残差または仰角θの残差を量子化する(S125)。例えば、適応量子化部103は、距離dの残差または仰角θの残差に対して水平角Φの残差への量子化と同様に適応量子化を行ってもよいし、固定値の量子化ステップで量子化を行ってもよい。 If the residual of the coordinate components of the three-dimensional point to be adaptively quantized next is not the residual of the horizontal angle Φ (No in S121), adaptive quantization section 103 performs cubic If the residual of the coordinate component of the original point is the residual of the distance d or the residual of the elevation angle θ, the residual of the distance d or the residual of the elevation angle θ is quantized (S125). For example, the adaptive quantization section 103 may perform adaptive quantization on the residual of the distance d or the residual of the elevation angle θ in the same manner as the quantization to the residual of the horizontal angle Φ. Quantization may be performed in the quantization step.
 なお、量子化ステップQSは、距離dが大きいほど小さくなるように(つまり、距離dが小さいほど大きくなるように)算出されてもよい。具体的には、量子化ステップQSは、下記式2を用いて算出されてもよい。 Note that the quantization step QS may be calculated so as to decrease as the distance d increases (that is, increase as the distance d decreases). Specifically, the quantization step QS may be calculated using Equation 2 below.
 QS=Φprecision/d   (式2)  QS=Φprecision/d (Equation 2)
 式2に示されるように、量子化ステップQSは、所定の基準値Φprecisionを距離dで除算することで算出されてもよい。式2に用いられる距離dは、符号化対象の三次元点の極座標における距離であるとしたが、これに限らない。距離dは、符号化対象の三次元点より前の符号化順で符号化された三次元点の極座標の距離であってもよい。また、距離dは、符号化対象の三次元点より前の符号化順で符号化された複数の三次元点の極座標の距離を用いて算出された距離であってもよく、例えば、符号化対象の三次元点より前の符号化順で符号化された複数の三次元点の極座標の距離の平均、中央値、最大値、最小値などであってもよい。また、距離dは、符号化対象の三次元点の距離及び符号化対象の三次元点より前の符号化順で符号化された1以上の三次元点の極座標の距離を用いて算出された距離であってもよく、例えば、符号化対象の三次元点の距離及び符号化対象の三次元点より前の符号化順で符号化された1以上の三次元点の極座標の距離の平均、中央値、最大値、最小値などであってもよい。 As shown in Equation 2, the quantization step QS may be calculated by dividing a predetermined reference value Φprecision by the distance d. Although the distance d used in Equation 2 is the distance in the polar coordinates of the three-dimensional point to be encoded, it is not limited to this. The distance d may be the distance in polar coordinates of the 3D point encoded in the encoding order prior to the 3D point to be encoded. Further, the distance d may be a distance calculated using distances of polar coordinates of a plurality of three-dimensional points encoded in an encoding order prior to the encoding target three-dimensional point. It may be the average, median, maximum value, minimum value, etc. of the distances of the polar coordinates of a plurality of 3D points encoded in the encoding order prior to the target 3D point. Further, the distance d is calculated using the distance of the three-dimensional point to be encoded and the distance of the polar coordinates of one or more three-dimensional points encoded in the encoding order prior to the three-dimensional point to be encoded. It may be a distance, for example, the average of the distance of the 3D point to be encoded and the distance of the polar coordinates of one or more 3D points encoded in the encoding order before the 3D point to be encoded, It may be a median value, maximum value, minimum value, or the like.
 また、距離dは、符号化対象の三次元点より後の符号化順で符号化された複数の三次元点の極座標の距離を用いて算出された距離であってもよく、例えば、符号化対象の三次元点より後の符号化順で符号化された複数の三次元点の極座標の距離の平均、中央値、最大値、最小値などであってもよい。また、距離dは、符号化対象の三次元点の距離及び符号化対象の三次元点より後の符号化順で符号化された1以上の三次元点の極座標の距離を用いて算出された距離であってもよく、例えば、符号化対象の三次元点の距離及び符号化対象の三次元点より後の符号化順で符号化された1以上の三次元点の極座標の距離の平均、中央値、最大値、最小値などであってもよい。 Further, the distance d may be a distance calculated using the polar coordinate distances of a plurality of three-dimensional points encoded in the encoding order after the encoding target three-dimensional point. It may be the average, median, maximum value, minimum value, etc. of the polar coordinate distances of a plurality of 3D points encoded in the encoding order after the target 3D point. Further, the distance d is calculated using the distance of the three-dimensional point to be encoded and the distance of the polar coordinates of one or more three-dimensional points encoded in the encoding order after the three-dimensional point to be encoded. It may be a distance, for example, the average of the distance of the 3D point to be encoded and the distance of the polar coordinates of one or more 3D points encoded in the encoding order after the 3D point to be encoded, It may be a median value, maximum value, minimum value, or the like.
 なお、符号化対象の三次元点より前の符号化順で符号化された1以上の三次元点は、1以上の第2三次元点または1以上の第4三次元点の一例である。また、符号化対象の三次元点より後の符号化順で符号化された1以上の三次元点は、1以上の第2三次元点または1以上の第4三次元点の他の一例である。1以上の第2三次元点は、複数の三次元点に含まれ且つ符号化対象の三次元点の周辺に位置する三次元点である。周辺に位置する三次元点とは、空間的な位置が符号化対象の三次元点に近いこと、または、時間的な位置が符号化対象の三次元点に近いことを意味する。空間的な位置が符号化対象の三次元点に近いとは、符号化対象の三次元点との間の距離が所定距離未満の位置にある三次元点、または、符号化対象の三次元点の符号化順との差が所定の差未満の順にある三次元点である。時間的な位置が符号化対象の三次元点に近いとは、複数フレームの生成順において、生成順の差が所定の差未満の順のフレームに含まれる三次元点である。 なお、量子化ステップQSは、式2で算出されることに限らない。例えば、量子化ステップQSは、複数段階の距離dと値が対応付けられたテーブルを参照することで算出されてもよい。つまり、量子化ステップQSは、距離dが第1の距離範囲に含まれる場合には第1の値に決定され、距離dが第1の距離範囲の最大値よりも大きい第2の距離範囲に含まれる場合には第1の値よりも小さい第2の値に決定されてもよい。つまり、量子化ステップQSは、距離が近い第1の距離範囲では大きい第1の値に決定され、距離が遠い第2の距離範囲では小さい第2の値に決定されてもよい。量子化ステップQSと距離dとの関係は、一次関数的である必要はなく、距離dが大きくなるほど量子化ステップQSが小さくなる単調減少の関係を満たしていればよい。この場合、テーブルでは、第1の距離範囲及び第1の値が対応付けられており、第2の距離範囲及び第2の値が対応付けられていてもよい。また、テーブルは、距離範囲が2段階に区切られていることに限らずに、3段階以上に区切られていてもよく、この場合であっても、区切られた距離範囲で示される距離が大きいほど小さい値の量子化ステップQSが対応付けられていればよい。 It should be noted that the one or more 3D points encoded in the encoding order prior to the 3D point to be encoded is an example of the one or more second 3D points or the one or more fourth 3D points. In addition, the one or more 3D points encoded in the encoding order after the 3D point to be encoded is another example of the one or more second 3D points or the one or more fourth 3D points. be. The one or more second 3D points are 3D points that are included in the plurality of 3D points and located around the 3D point to be encoded. A 3D point located in the periphery means that the spatial position is close to the 3D point to be encoded, or the temporal position is close to the 3D point to be encoded. A spatial position close to the 3D point to be encoded means a 3D point located at a position where the distance from the 3D point to be encoded is less than a predetermined distance, or a 3D point to be encoded are three-dimensional points in an order whose difference from the coding order of is less than a predetermined difference. A temporal position close to a 3D point to be encoded is a 3D point included in a frame whose generation order difference is less than a predetermined difference in the generation order of a plurality of frames. Note that the quantization step QS is not limited to being calculated by Equation 2. For example, the quantization step QS may be calculated by referring to a table in which values are associated with distances d in multiple stages. That is, the quantization step QS is determined to be the first value when the distance d is included in the first distance range, and is determined to be the second distance range where the distance d is greater than the maximum value of the first distance range. If included, a second value that is less than the first value may be determined. That is, the quantization step QS may be determined to be a large first value for a short first distance range, and may be determined to a small second value for a long second distance range. The relationship between the quantization step QS and the distance d does not need to be a linear function, and may satisfy a monotonically decreasing relationship in which the quantization step QS decreases as the distance d increases. In this case, the table may associate the first distance range and the first value, and may associate the second distance range and the second value. Further, the table is not limited to dividing the distance range into two stages, and may be divided into three or more stages. Even in this case, the distance indicated by the divided distance range is large. A quantization step QS having a smaller value should be associated.
 このように、量子化ステップQSは、距離dの値が大きくなるほど、量子化ステップQSの値が小さくなるように、また、距離dの値が小さくなるほど、量子化ステップQSの値が大きくなるように算出される。これにより、距離dが大きくなるほど、量子化ステップQSが小さくなるため、量子化誤差を抑制でき、距離dが小さくなるほど、量子化ステップQSが大きくなるため、より多くの情報を削減することができる。 Thus, the quantization step QS is set so that the value of the quantization step QS decreases as the value of the distance d increases, and the value of the quantization step QS increases as the value of the distance d decreases. calculated to As a result, the larger the distance d, the smaller the quantization step QS, so that quantization errors can be suppressed, and the smaller the distance d, the larger the quantization step QS, so more information can be reduced. .
 これは、被写体までの距離が遠いほど、被写体上の三次元点の水平角Φの予測が当たりにくくなり、残差信号の値が大きくなるためである。そこで、距離dが大きいほど量子化ステップQSを小さくすることで、残差信号を量子化した際の量子化誤差を抑えることができ、符号化効率を向上することができる。また、反対に、被写体までの距離が近いほど、被写体上の三次元点のΦの予測が当たりやすくなり、残差信号の値が小さくなる。そこで、距離dが小さいほど量子化ステップQSを大きくして残差信号を量子化することで、符号化効率を向上することができる。 This is because the farther the distance to the subject, the more difficult it is to predict the horizontal angle Φ of the 3D point on the subject, and the larger the residual signal value. Therefore, by decreasing the quantization step QS as the distance d increases, the quantization error when the residual signal is quantized can be suppressed, and the coding efficiency can be improved. Conversely, the closer the distance to the object is, the easier it is to predict Φ of the three-dimensional point on the object, and the smaller the value of the residual signal. Therefore, the coding efficiency can be improved by quantizing the residual signal by increasing the quantization step QS as the distance d decreases.
 なお、式2に用いられるΦprecisionは、水平角Φのビット精度を表すパラメータである。ビット精度が大きいほど、正確な予測値を生成できるため、算出される残差が小さくなる。反対にビット精度の値が小さいほど、不正確な予測値が算出されるため、算出される残差が大きくなる。そこで、ビット精度が小さいほど、量子化ステップを小さくして量子化誤差を抑え、ビット精度が大きいほど、量子化ステップを大きくして符号格好率を向上できる。 Note that Φprecision used in Equation 2 is a parameter representing the bit precision of the horizontal angle Φ. The greater the bit precision, the more accurate the predicted value can be generated, and hence the smaller the calculated residual. Conversely, the smaller the bit precision value, the larger the calculated residual error because the more inaccurate predicted value is calculated. Therefore, the smaller the bit precision, the smaller the quantization step to suppress the quantization error, and the higher the bit precision, the larger the quantization step, thereby improving the coding rate.
 また、Φprecisionは、水平角Φの予測精度を表すパラメータであってもよい。水平角Φの予測精度の値が大きいほど、正確な予測値を生成できるため、算出される残差が小さくなる。反対に予測精度の値が小さいほど、不正確な予測値が算出されるため、算出される残差が大きくなる。そこで、予測精度が小さいほど、量子化ステップを大きくして符号化効率を向上できる。予測精度は、例えば、予測値のビット精度、interpolationのビット精度などである。 Also, Φprecision may be a parameter representing the prediction accuracy of the horizontal angle Φ. The larger the prediction accuracy of the horizontal angle Φ, the more accurate the prediction value can be generated, and the smaller the calculated residual. Conversely, the smaller the prediction accuracy value, the larger the calculated residual error, because an inaccurate prediction value is calculated. Therefore, the smaller the prediction accuracy, the larger the quantization step and the more the encoding efficiency can be improved. The prediction accuracy is, for example, the bit accuracy of predicted values, the bit accuracy of interpolation, and the like.
 三次元データ符号化装置100は、ΦprecisionをGPS(ジオメトリパラメータセット)、スライス等のヘッダに付加してビットストリームに含めても良い。ここでビット精度とは、水平角Φを表現するビット数を表す。例えばビット精度が32ビットとは、水平角Φを32ビットの数値で表現することを示す。なお、三次元データ符号化装置100は、Φprecisionを算出するためのパラメータをGPSやスライス等のヘッダに付加してもよい。Φprecisionがビットストリームに付加されることにより、三次元データ復号装置120は、三次元データ符号化装置100で使用された水平角Φのビット精度を、ビットストリームを復号することで知ることができ、ビットストリームを適切に復号できる。 The three-dimensional data encoding device 100 may add Φprecision to the header of GPS (geometry parameter set), slice, etc. and include it in the bitstream. Here, the bit precision represents the number of bits expressing the horizontal angle Φ. For example, a bit precision of 32 bits indicates that the horizontal angle Φ is represented by a 32-bit numerical value. Note that the 3D data encoding apparatus 100 may add a parameter for calculating Φprecision to the header of GPS, slice, or the like. By adding Φprecision to the bitstream, the 3D data decoding device 120 can know the bit precision of the horizontal angle Φ used in the 3D data encoding device 100 by decoding the bitstream. I can decode the bitstream properly.
 なお、Φprecisionはイントラ予測とインター予測とで異なる値が用いられても良い。例えば、イントラ予測用のΦprecisionIntra及びインター予測用のΦprecisionInterを用意し、イントラ予測かインター予測かに応じてΦprecisionの値を切替えてもよい。これにより、イントラ予測かインター予測かに応じて量子化ステップQSを切替えることができ、符号化効率を向上することができる。例えば、イントラ予測の方がインター予測と比較してΦの予測後の残差信号が大きくなりやすい傾向がある場合は、ΦprecisionIntraをΦprecisionInterよりも小さくすることで、イントラ予測の量子化ステップQSをインター予測の量子化ステップQSよりも小さくでき、イントラ予測の残差信号の量子化誤差を抑えることで符号化効率を向上してもよい。 Note that Φprecision may have different values for intra prediction and inter prediction. For example, ΦprecisionIntra for intra prediction and ΦprecisionInter for inter prediction may be prepared, and the value of Φprecision may be switched according to intra prediction or inter prediction. As a result, the quantization step QS can be switched depending on whether intra prediction or inter prediction, and coding efficiency can be improved. For example, if intra prediction tends to result in a larger residual signal after prediction of Φ compared to inter prediction, ΦprecisionIntra is set smaller than ΦprecisionInter so that the quantization step QS of intra prediction is inter-predicted. The quantization step QS may be smaller than the prediction quantization step, and the coding efficiency may be improved by suppressing the quantization error of the intra-prediction residual signal.
 このように、インター予測とイントラ予測とで異なるΦprecisionが用いられるため、算出される量子化ステップQSもインター予測とイントラ予測とで異なる値に算出されうる。つまり、量子化では、水平角Φと、インター予測で予測されたインター予測値との第1残差を、第1量子化ステップQS1を用いて算出する。また、量子化では、水平角Φと、イントラ予測で予測されたイントラ予測値との第2残差を、第1量子化ステップQS1と異なる第2量子化ステップQS2を用いて算出する。具体的には、第1量子化ステップQS1及び第2量子化ステップQS2は、それぞれ、下記式3及び式4を用いて算出されてもよい。 Thus, since different Φprecision is used for inter prediction and intra prediction, the calculated quantization step QS can also be calculated to have different values for inter prediction and intra prediction. That is, in quantization, the first residual between the horizontal angle Φ and the inter prediction value predicted by inter prediction is calculated using the first quantization step QS1. Also, in quantization, a second residual between the horizontal angle Φ and an intra prediction value predicted by intra prediction is calculated using a second quantization step QS2 different from the first quantization step QS1. Specifically, the first quantization step QS1 and the second quantization step QS2 may be calculated using Equations 3 and 4 below, respectively.
 QS1=ΦprecisionInter/d   (式3)  QS1=ΦprecisionInter/d (Equation 3)
 QS2=ΦprecisionIntra/d   (式4)  QS2=ΦprecisionIntra/d (Formula 4)
 このように、第1量子化ステップQS1は、第1基準値としてのΦprecisionInter及び距離dを用いて算出されてもよい。また、第2量子化ステップQS2は、第2基準値としてのΦprecisionIntra及び距離dを用いて算出されてもよい。 Thus, the first quantization step QS1 may be calculated using ΦprecisionInter as the first reference value and the distance d. Also, the second quantization step QS2 may be calculated using ΦprecisionIntra and the distance d as the second reference value.
 なお、三次元データ符号化装置100は、ΦprecisionIntra及びΦprecisionInterをGPSやスライス等のヘッダに付加してビットストリームに含めても良い。つまり、三次元データ符号化装置100は、第1基準値及び第2基準値を含むビットストリームを生成してもよい。ΦprecisionIntraは、イントラ予測における第2基準値の一例である。ΦprecisionIntraは、水平角Φのビット精度を表すパラメータであってもよいし、水平角Φの予測精度を表すパラメータであってもよい。また、ΦprecisionInterは、インター予測における第1基準値の一例である。ΦprecisionInterは、水平角Φのビット精度を表すパラメータであってもよいし、水平角Φの予測精度を表すパラメータであってもよい。このように、基準値は、イントラ予測で及びインター予測のそれぞれで生成可能な予測値の正確性を示す値であってもよい。三次元データ符号化装置100は、基準値に応じて量子化ステップを切り替えることで量子化誤差を抑えつつ、符号化効率を向上できる。 Note that the three-dimensional data encoding device 100 may add ΦprecisionIntra and ΦprecisionInter to headers such as GPS and slices and include them in the bitstream. That is, the 3D data encoding apparatus 100 may generate a bitstream including the first reference value and the second reference value. ΦprecisionIntra is an example of a second reference value in intra prediction. ΦprecisionIntra may be a parameter representing the bit precision of the horizontal angle Φ, or may be a parameter representing the prediction accuracy of the horizontal angle Φ. Also, ΦprecisionInter is an example of a first reference value in inter prediction. ΦprecisionInter may be a parameter representing the bit precision of the horizontal angle Φ, or may be a parameter representing the prediction accuracy of the horizontal angle Φ. Thus, the reference value may be a value that indicates the accuracy of predictive values that can be generated by intra-prediction and inter-prediction. The three-dimensional data encoding device 100 can improve encoding efficiency while suppressing quantization errors by switching the quantization step according to the reference value.
 また、三次元データ符号化装置100は、ΦprecisionIntra及びΦprecisionInterを算出するためのパラメータをGPSやスライス等のヘッダに付加してもよい。ΦprecisionIntra及びΦprecisionInterがビットストリームに付加されることにより、三次元データ復号装置120は三次元データ符号化装置100で使用されたイントラ予測とインター予測とのそれぞれの水平角Φのビット精度を、ビットストリームを復号することで知ることができ、ビットストリームを適切に復号できる。 Also, the 3D data encoding device 100 may add parameters for calculating ΦprecisionIntra and ΦprecisionInter to headers such as GPS and slices. By adding ΦprecisionIntra and ΦprecisionInter to the bitstream, the 3D data decoding device 120 converts the bit precision of the horizontal angle Φ of each of the intra prediction and the inter prediction used in the 3D data encoding device 100 into the bitstream. can be known by decoding , and the bitstream can be decoded appropriately.
 なお、水平角Φのビット精度であるΦprecisionをイントラ予測とインター予測とで切替える例を示したが、必ずしもこれに限らず、例えば、イントラ予測のフレームまたはスライスと、インター予測のフレームまたはスライスとで水平角Φのビット精度を切替えるようにしてもよい。また、Φprecisionは、フレーム単位、スライス単位、または、ストリーム単位で切り替えられてもよい。つまり、Φprecisionは、イントラ予測において符号化対象の三次元点のフレームまたはスライスが切り替わった場合に、イントラ予測が継続されていても切り替えられてもよい。また、Φprecisionは、インター予測において符号化対象の三次元点のフレームまたはスライスが切り替わった場合に、インター予測が継続されていても切り替えられてもよい。この場合、三次元データ符号化装置100は、フレームまたはスライス単位のヘッダに水平角Φのビット精度またはそれを生成するための情報を付加してもよい。このように、Φprecisionは、1以上の三次元点を含む所定の点群単位、つまり、フレーム単位、スライス単位、ストリーム単位などで同一の値が用いられてもよい。また、同様に、ΦprecisionInterは、1以上の三次元点を含む所定の点群単位、つまり、フレーム単位、スライス単位、ストリーム単位などで同一の値が用いられてもよい。ΦprecisionIntraは、1以上の三次元点を含む所定の点群単位、つまり、フレーム単位、スライス単位、ストリーム単位などで同一の値が用いられてもよい。 An example of switching Φprecision, which is the bit precision of the horizontal angle Φ, between intra prediction and inter prediction is shown, but this is not necessarily the case. For example, between an intra prediction frame or slice and an inter prediction frame or slice. The bit precision of the horizontal angle Φ may be switched. Also, Φprecision may be switched in frame units, slice units, or stream units. That is, Φprecision may be switched even if intra prediction is continued when the frame or slice of the 3D point to be encoded is switched in intra prediction. Also, Φprecision may be switched even if inter prediction is continued when the frame or slice of the 3D point to be encoded is switched in inter prediction. In this case, the 3D data encoding apparatus 100 may add the bit precision of the horizontal angle Φ or information for generating it to the header of each frame or slice. In this way, Φprecision may have the same value in units of a predetermined point group including one or more 3D points, that is, in units of frames, units of slices, units of streams, and the like. Similarly, the same value may be used for ΦprecisionInter in units of predetermined point groups including one or more three-dimensional points, that is, in units of frames, units of slices, units of streams, and the like. For ΦprecisionIntra, the same value may be used in units of a predetermined point group including one or more 3D points, that is, in units of frames, units of slices, units of streams, and the like.
 図6は、符号化処理における、適応量子化により生成された量子化値に対する適応逆量子化の処理の一例を示すフローチャートである。 FIG. 6 is a flowchart showing an example of adaptive inverse quantization processing for quantized values generated by adaptive quantization in encoding processing.
 適応逆量子化は、例えば、ステップS110において、図5で説明した適応量子化の後に行われる。 Adaptive inverse quantization is performed after the adaptive quantization described in FIG. 5, for example, in step S110.
 適応逆量子化部104は、次に適応逆量子化する符号化対象の三次元点の座標成分の残差の量子化値が水平角Φの残差の量子化値であるか否かを判定する(S131)。 Adaptive inverse quantization section 104 determines whether or not the quantized value of the residual of the coordinate component of the 3D point to be adaptively inverse quantized next is the quantized value of the residual of horizontal angle Φ. (S131).
 適応逆量子化部104は、次に適応逆量子化する符号化対象の三次元点の座標成分の残差の量子化値が水平角Φの残差の量子化値である場合(S131でYes)、符号化対象の三次元点の極座標における距離dを取得する(S132)。 Adaptive inverse quantization section 104 performs adaptive inverse quantization next when the quantized value of the residual of the coordinate component of the encoding target 3D point is the quantized value of the residual of horizontal angle Φ (Yes in S131 ), the distance d in the polar coordinates of the three-dimensional point to be encoded is obtained (S132).
 次に、適応逆量子化部104は、取得した距離dを用いて水平角Φの残差の量子化値に対する逆量子化ステップiQSを算出する(S133)。逆量子化ステップiQSは、逆量子化幅とも言う。なお、同じ三次元点に対する処理であれば、ステップS123で算出される量子化ステップQSと、ステップS133で算出される逆量子化ステップiQSとは互いに同じ値である。つまり、逆量子化ステップiQSは、量子化ステップQSと同様に算出される。 Next, the adaptive inverse quantization unit 104 uses the acquired distance d to calculate the inverse quantization step iQS for the quantized value of the residual of the horizontal angle Φ (S133). The inverse quantization step iQS is also called an inverse quantization width. Note that if the same three-dimensional point is processed, the quantization step QS calculated in step S123 and the inverse quantization step iQS calculated in step S133 have the same value. That is, the inverse quantization step iQS is calculated in the same manner as the quantization step QS.
 次に、適応逆量子化部104は、水平角Φの残差の量子化値を逆量子化ステップiQSで逆量子化し、水平角Φの残差を算出する(S134)。なお、水平角Φの残差信号は、下記式5を用いて算出されてもよい。 Next, the adaptive inverse quantization unit 104 inversely quantizes the quantized value of the residual of the horizontal angle Φ at the inverse quantization step iQS to calculate the residual of the horizontal angle Φ (S134). Note that the residual signal of the horizontal angle Φ may be calculated using Equation 5 below.
 水平角Φの残差信号=水平角Φの残差信号の量子化値*iQS (式5)  Horizontal angle Φ residual signal = horizontal angle Φ residual signal quantized value * iQS (Equation 5)
 なお、適応逆量子化部104は、次に適応逆量子化する符号化対象の三次元点の座標成分の残差の量子化値が水平角Φの残差の量子化値でない場合(S131でNo)、つまり、符号化対象の三次元点の座標成分の残差の量子化値が距離dの残差の量子化値または仰角θの残差の量子化値である場合、距離dの残差の量子化値または仰角θの残差の量子化値を逆量子化する(S135)。例えば、適応逆量子化部104は、距離dの残差の量子化値または仰角θの残差の量子化値に対して水平角Φの残差の量子化値への逆量子化と同様に適応逆量子化を行ってもよいし、固定値の逆量子化ステップで量子化を行ってもよい。 Note that adaptive inverse quantization section 104 performs adaptive inverse quantization next when the quantized value of the residual of the coordinate component of the encoding target 3D point is not the quantized value of the residual of horizontal angle Φ (in S131 No), that is, if the quantized value of the residual of the coordinate component of the three-dimensional point to be encoded is the quantized value of the residual of the distance d or the quantized value of the residual of the elevation angle θ, then the residual of the distance d The quantized value of the difference or the quantized value of the residual of the elevation angle θ is inversely quantized (S135). For example, the adaptive inverse quantization unit 104 performs inverse quantization to the quantized value of the residual of the horizontal angle Φ with respect to the quantized value of the residual of the distance d or the quantized value of the residual of the elevation angle θ. Adaptive inverse quantization may be performed, or quantization may be performed with a fixed inverse quantization step.
 図5を用いて説明した適応量子化では、符号化対象点の極座標における水平角Φの残差信号に対し、符号化対象点の距離dに応じて適応的に量子化が実行される。図6を用いて説明した適応逆量子化では、符号化対象点の極座標における水平角Φの残差信号の量子化値に対し、符号化対象点の距離dに応じて適応的に逆量子化が実行される。このように水平角Φの残差信号の量子化を距離dの値によって適応的に制御することで、符号化効率を向上できる。なお、ここでの水平角Φの残差信号は、符号化対象点をイントラ予測で符号化する場合、イントラ予測によって算出されたイントラ予測値と符号化対象の入力値との差分から生成された残差信号である。その残差信号には、適用量子化が実行されてもよい。また、水平角Φの残差信号は、符号化対象点をインター予測で符号化する場合、インター予測によって算出されたインター予測値と符号化対象の入力値との差分から生成された残差信号であり、その残差信号に対して適用量子化が実行されてもよい。このようにイントラ予測、及び、インター予測の少なくとも一方で生成された残差信号に対し、共通の適応量子化を適用する事で、追加のハードウェアの回路規模やソフトウェアのコード量を抑制しつつ、符号化効率を向上することができる。 In the adaptive quantization described using FIG. 5, quantization is adaptively executed according to the distance d of the encoding target point for the residual signal of the horizontal angle Φ in the polar coordinates of the encoding target point. In the adaptive inverse quantization described with reference to FIG. 6, the quantized value of the residual signal of the horizontal angle Φ in the polar coordinates of the encoding target point is adaptively inversely quantized according to the distance d of the encoding target point. is executed. Coding efficiency can be improved by adaptively controlling the quantization of the residual signal of the horizontal angle Φ according to the value of the distance d. Note that the residual signal of the horizontal angle Φ here is generated from the difference between the intra prediction value calculated by the intra prediction and the input value to be encoded when the encoding target point is encoded by intra prediction. is the residual signal. Adaptive quantization may be performed on the residual signal. In addition, when the encoding target point is encoded by inter prediction, the residual signal of the horizontal angle Φ is the residual signal generated from the difference between the inter prediction value calculated by inter prediction and the input value to be encoded. and adaptive quantization may be performed on the residual signal. By applying common adaptive quantization to the residual signal generated by at least one of intra prediction and inter prediction in this way, while suppressing the circuit scale of additional hardware and the amount of software code , the coding efficiency can be improved.
 なお、本実施の形態では、イントラ予測及びインター予測の残差信号に対し、適応量子化を適用する例を示したが、必ずしもこれに限らない。例えば、三次元データ符号化装置100は、イントラ予測の残差信号に適用量子化を適用し、インター予測の残差信号には適用量子化を適用しないとしてもよい。これにより、処理量を抑えつつイントラ予測の符号化効率を向上できる。また例えば、三次元データ符号化装置100は、インター予測の残差信号に適用量子化を適用し、イントラ予測の残差信号には適用量子化を適用しないとしてもよい。これにより、処理量を抑えつつインター予測の符号化効率を向上できる。 It should be noted that although an example of applying adaptive quantization to intra-prediction and inter-prediction residual signals has been shown in the present embodiment, the present invention is not necessarily limited to this. For example, the 3D data encoding apparatus 100 may apply adaptive quantization to intra-prediction residual signals and not apply adaptive quantization to inter-prediction residual signals. This makes it possible to improve the encoding efficiency of intra prediction while suppressing the amount of processing. Further, for example, the 3D data encoding apparatus 100 may apply adaptive quantization to the inter-prediction residual signal and may not apply adaptive quantization to the intra-prediction residual signal. This makes it possible to improve the inter-prediction encoding efficiency while suppressing the amount of processing.
 なお、本実施の形態では、極座標の水平角Φに対する適応量子化及び適応逆量子化の例を示したが、必ずしもこれに限らない。例えば、三次元点の極座標としてlaser_idの代わりに仰角θが用いられる場合に、水平角Φと同様の方法を用いて仰角θに距離dに応じた適応量子化及び適応逆量子化を適用しても構わない。これにより、仰角θの符号化効率を向上することができる。 In addition, in this embodiment, an example of adaptive quantization and adaptive inverse quantization with respect to the horizontal angle Φ of the polar coordinates is shown, but it is not necessarily limited to this. For example, when the elevation angle θ is used instead of the laser_id as the polar coordinates of the three-dimensional point, adaptive quantization and adaptive inverse quantization are applied to the elevation angle θ according to the distance d using the same method as for the horizontal angle Φ. I don't mind. Thereby, the encoding efficiency of the elevation angle θ can be improved.
 なお、本実施の形態では量子化ステップQSを制御するパラメータとしてΦprecisionを用いたが、量子化ステップQSの値を制御できる量子化パラメータであればどのような情報でも構わない。例えば、水平角Φの量子化パラメータをヘッダ等に付加し、量子化パラメータから算出した値をΦprecisionの代わりに用いても良い。また、この場合、三次元データ符号化装置100は、水平角Φのインター予測用の第1量子化パラメータとイントラ予測用の第2量子化パラメータとをそれぞれ用意し、第1量子化パラメータ及び第2量子化パラメータをGPSやスライス等のヘッダに付加してもよい。これにより、水平角Φの量子化パラメータをイントラ予測とインター予測とで適切に設定することができ、符号化効率を向上しうる。 Although Φprecision is used as a parameter for controlling the quantization step QS in this embodiment, any information may be used as long as it is a quantization parameter that can control the value of the quantization step QS. For example, a quantization parameter for the horizontal angle Φ may be added to a header or the like, and a value calculated from the quantization parameter may be used instead of Φprecision. Also, in this case, three-dimensional data encoding apparatus 100 prepares a first quantization parameter for inter prediction and a second quantization parameter for intra prediction of horizontal angle Φ, respectively. A 2-quantization parameter may be added to a header such as GPS or slice. As a result, the quantization parameter for the horizontal angle Φ can be appropriately set for intra prediction and inter prediction, and coding efficiency can be improved.
 なお、三次元点の極座標において前に符号化された三次元点からlaser_idが変更された場合、三次元データ符号化装置100は、当該三次元点に対する量子化において、適応量子化をせずに通常の量子化を行ってもよい。 Note that when the laser_id is changed from the previously encoded 3D point in the polar coordinates of the 3D point, the 3D data encoding apparatus 100 performs quantization on the 3D point without adaptive quantization. Ordinary quantization may be performed.
 図7は、三次元データ復号装置120における、予測木(Predtree)の各三次元点を復号する手順の一例を示すフローチャートである。図7は、図4の符号化する手順に従って生成されたビットストリームの復号に対応している。つまり、ビットストリームは、符号化された第1残差信号(予測残差)と、予測値の算出に用いられる候補点に割り当てられたインデックス値とを含む。 FIG. 7 is a flowchart showing an example of a procedure for decoding each 3D point of a prediction tree (Predtree) in the 3D data decoding device 120. FIG. FIG. 7 corresponds to the decoding of the bitstream generated according to the encoding procedure of FIG. That is, the bitstream includes an encoded first residual signal (prediction residual) and index values assigned to candidate points used to calculate the prediction value.
 この例では、三次元データ復号装置120は、ビットストリームから、まずイントラ予測関連パラメータを取得する(S141)。 In this example, the 3D data decoding device 120 first acquires intra-prediction-related parameters from the bitstream (S141).
 次に、三次元データ復号装置120は、取得したイントラ予測関連パラメータに基づいてイントラ予測点を決定する(S142)。具体的には、三次元データ復号装置120は、図4のステップS101と同様の方法でイントラ予測点を決定する。三次元データ復号装置120は、対応する三次元データ符号化装置100からイントラ予測関連パラメータが通知され、イントラ予測関連パラメータに応じてイントラ予測点を決定する。イントラ予測関連パラメータは、ステップS141で取得され、イントラ予測点を決定する少なくとも一つの方法を指定する情報と、この情報に付随するパラメータとを含む。 Next, the 3D data decoding device 120 determines intra prediction points based on the acquired intra prediction related parameters (S142). Specifically, the 3D data decoding device 120 determines intra prediction points in the same manner as in step S101 of FIG. The three-dimensional data decoding device 120 is notified of intra-prediction-related parameters from the corresponding three-dimensional data encoding device 100, and determines intra-prediction points according to the intra-prediction-related parameters. The intra-prediction-related parameters are obtained in step S141 and include information specifying at least one method of determining intra-prediction points and parameters accompanying this information.
 次に、三次元データ復号装置120は、ビットストリームから、予測方法のモードを示す識別情報を取得する(S143)。 Next, the 3D data decoding device 120 acquires identification information indicating the prediction method mode from the bitstream (S143).
 次に、三次元データ復号装置120は、取得した識別情報が、予測方法がインター予測であることを示すインターモードを示すか、予測方法がイントラ予測であることを示すイントラ予測モードを示すかを判定する(S144)。 Next, three-dimensional data decoding device 120 determines whether the acquired identification information indicates an inter prediction mode indicating that the prediction method is inter prediction or an intra prediction mode indicating that the prediction method is intra prediction. Determine (S144).
 三次元データ復号装置120は、予測方法がインター予測である場合(ステップS144でインターモード)、ビットストリームからインター予測関連パラメータを取得する(S145)。 When the prediction method is inter prediction (inter mode in step S144), the 3D data decoding device 120 acquires inter prediction related parameters from the bitstream (S145).
 次に、三次元データ復号装置120は、インター予測点を決定するための処理(S146~S149)を実行する。具体的には、三次元データ復号装置120は、図4のステップS103~S105と同様の方法でインター予測点を決定する。例えば、三次元データ復号装置120は、インター予測点を、インター予測点群から抽出された少なくとも一つの候補点を参照して決定する。例えば、三次元データ復号装置120は、一つの候補点をインター予測点として決定してもよいし、複数の候補点の座標の平均値を座標として有する予測点をインター予測点として決定してもよい。或いは、三次元データ復号装置120は、イントラ予測点と少なくとも一つの候補点との座標の平均値を座標として有する予測点をインター予測点として決定してもよい。 Next, the 3D data decoding device 120 executes processing (S146 to S149) for determining inter prediction points. Specifically, the 3D data decoding device 120 determines inter prediction points by the same method as steps S103 to S105 in FIG. For example, the 3D data decoding device 120 determines inter prediction points by referring to at least one candidate point extracted from the inter prediction point group. For example, 3D data decoding device 120 may determine one candidate point as an inter prediction point, or may determine a prediction point having coordinates that are average values of coordinates of a plurality of candidate points as an inter prediction point. good. Alternatively, the 3D data decoding device 120 may determine, as an inter prediction point, a prediction point having, as coordinates, an average value of coordinates of an intra prediction point and at least one candidate point.
 ここでは、三次元データ復号装置120は、少なくとも一つの候補点としてイントラ予測点の近傍に位置している点を探索してもよい(S146)。 Here, the 3D data decoding device 120 may search for a point located near the intra prediction point as at least one candidate point (S146).
 次に、三次元データ復号装置120は、決定した少なくとも一つのインター予測点のそれぞれに対して、イントラ予測点に近い順に小さいインデックス値を付与してもよい(S147)。 Next, the 3D data decoding device 120 may give each of the determined at least one inter prediction point a smaller index value in descending order of proximity to the intra prediction point (S147).
 次に、三次元データ復号装置120は、探索が終了したか否かを判定し(S148)、探索が終了した場合(S148でYes)、次のステップS149に進み、探索が終了していない場合(S148でNo)、ステップS146に戻る。探索が終了したことは、所定点数のインター予測点を発見したことで判定されてもよいし、所定範囲の点群の全てを探索したことで判定されてもよいし、所定点数のインター予測点を発見したか、所定範囲の点群の全てを探索したかのいずれかを満たしたことで判定されてもよい。 Next, the three-dimensional data decoding device 120 determines whether or not the search has ended (S148). If the search has ended (Yes in S148), the process proceeds to the next step S149. (No in S148), the process returns to step S146. The end of the search may be determined by finding a predetermined number of inter-prediction points, by searching for all points in a predetermined range, or by searching for a predetermined number of inter-prediction points. or searching all of the point cloud in the predetermined range.
 次に、三次元データ復号装置120は、インター予測点群とイントラ予測点とを参照しつつインター予測関連パラメータに基づいてインター予測点を決定する(S149)。例えば、三次元データ復号装置120は、インター予測関連パラメータに含まれる、インター予測点の座標の決定に使用される候補点の数に関する情報、及び、使用される各候補点に割り当てられたインデックス値に基づいて、インター予測点の座標の決定に使用される候補点を特定し、特定した候補点を用いてインター予測点の座標を決定することで、インター予測点を決定する。つまり、三次元データ復号装置120は、ビットストリームに含まれるインデックス値に基づいて、複数の復号済みの三次元点から1つの候補点を選択する。 Next, the 3D data decoding device 120 determines inter prediction points based on inter prediction-related parameters while referring to the inter prediction point group and intra prediction points (S149). For example, the 3D data decoding device 120 uses information about the number of candidate points used to determine the coordinates of the inter prediction points, which are included in the inter prediction related parameters, and an index value assigned to each candidate point used. Inter prediction points are determined by identifying candidate points used for determining the coordinates of inter prediction points based on and determining the coordinates of inter prediction points using the identified candidate points. That is, the 3D data decoding device 120 selects one candidate point from a plurality of decoded 3D points based on the index value included in the bitstream.
 三次元データ復号装置120は、ステップS149の後、または、ステップS144でイントラモードである場合、指定された予測方法により求めた予測点を参照して復号対象の三次元点の位置情報(座標情報)を復号する(S150)。 After step S149, or in the case of intra mode in step S144, the 3D data decoding device 120 refers to the prediction points obtained by the designated prediction method, and determines the position information (coordinate information) of the 3D point to be decoded. ) is decoded (S150).
 このように、三次元データ復号装置120は、予測方法がインター予測である場合、インター予測点を参照して復号対象点の座標情報を復号し、予測方法がイントラ予測である場合、イントラ予測点を参照して復号対象点の座標情報を復号する。 In this way, when the prediction method is inter prediction, 3D data decoding device 120 refers to the inter prediction point to decode the coordinate information of the point to be decoded, and when the prediction method is intra prediction, the intra prediction point to decode the coordinate information of the decoding target point.
 なお、ステップS146では、イントラ予測点を参照せずに、直前に復号した三次元点(例えば、予測木の親ノードなどの祖先ノードに対応する三次元点)など、イントラ予測関連パラメータに依らずに一意に決定される三次元点の近傍において、インター予測点を探索するようにしてもよい。この場合は、ステップS141及びS142をステップS143の直前では実施せず、ステップS144でイントラモードと判定された場合にステップS141及びS142を実施するようにしてもよい。 In addition, in step S146, without referring to the intra prediction point, the 3D point decoded immediately before (for example, the 3D point corresponding to the ancestor node such as the parent node of the prediction tree), regardless of the intra prediction related parameter An inter-prediction point may be searched for in the neighborhood of a three-dimensional point uniquely determined by . In this case, steps S141 and S142 may not be performed immediately before step S143, and steps S141 and S142 may be performed when the intra mode is determined in step S144.
 図8は、復号処理において、量子化値に対する適応逆量子化の処理の一例を示すフローチャートである。 FIG. 8 is a flowchart showing an example of adaptive inverse quantization processing for quantized values in decoding processing.
 適応逆量子化は、例えば、ステップS150において行われる。 Adaptive inverse quantization is performed, for example, in step S150.
 適応逆量子化部122は、次に適応逆量子化する復号対象の三次元点の座標成分の残差の量子化値が水平角Φの残差の量子化値であるか否かを判定する(S151)。 The adaptive inverse quantization unit 122 determines whether the quantized value of the residual of the coordinate component of the decoding target 3D point to be adaptively inverse quantized next is the quantized value of the residual of the horizontal angle Φ. (S151).
 適応逆量子化部122は、次に適応逆量子化する復号対象の三次元点の座標成分の残差の量子化値が水平角Φの残差の量子化値である場合(S151でYes)、復号対象の三次元点の極座標における距離dを取得する(S152)。 Adaptive inverse quantization section 122 performs adaptive inverse quantization next when the quantized value of the residual of the coordinate component of the decoding target 3D point is the quantized value of the residual of horizontal angle Φ (Yes in S151). , the distance d in the polar coordinates of the three-dimensional point to be decoded is obtained (S152).
 次に、適応逆量子化部122は、取得した距離dを用いて水平角Φの残差の量子化値に対する逆量子化ステップiQSを算出する(S153)。 Next, the adaptive inverse quantization unit 122 uses the acquired distance d to calculate the inverse quantization step iQS for the quantized value of the residual of the horizontal angle Φ (S153).
 次に、適応逆量子化部122は、水平角Φの残差の量子化値を逆量子化ステップiQSで逆量子化し、水平角Φの残差を算出する(S154)。なお、水平角Φの残差信号は、下記式6を用いて算出されてもよい。 Next, the adaptive inverse quantization unit 122 inversely quantizes the quantized value of the residual of the horizontal angle Φ at the inverse quantization step iQS to calculate the residual of the horizontal angle Φ (S154). Note that the residual signal of the horizontal angle Φ may be calculated using Equation 6 below.
 水平角Φの残差信号=水平角Φの残差信号の量子化値*iQS (式6)  Horizontal angle Φ residual signal = horizontal angle Φ residual signal quantized value * iQS (Equation 6)
 なお、適応逆量子化部104は、次に適応逆量子化する符号化対象の三次元点の座標成分の残差の量子化値が水平角Φの残差の量子化値でない場合(S151でNo)、つまり、符号化対象の三次元点の座標成分の残差の量子化値が距離dの残差の量子化値または仰角θの残差の量子化値である場合、距離dの残差の量子化値または仰角θの残差の量子化値を逆量子化する(S155)。例えば、適応逆量子化部104は、距離dの残差の量子化値または仰角θの残差の量子化値に対して水平角Φの残差の量子化値への逆量子化と同様に適応逆量子化を行ってもよいし、固定値の逆量子化ステップで量子化を行ってもよい。 Note that adaptive inverse quantization section 104 performs adaptive inverse quantization next when the quantized value of the residual of the coordinate component of the encoding target 3D point is not the quantized value of the residual of horizontal angle Φ (in S151 No), that is, if the quantized value of the residual of the coordinate component of the three-dimensional point to be encoded is the quantized value of the residual of the distance d or the quantized value of the residual of the elevation angle θ, then the residual of the distance d The quantized value of the difference or the quantized value of the residual of the elevation angle θ is inversely quantized (S155). For example, the adaptive inverse quantization unit 104 performs inverse quantization to the quantized value of the residual of the horizontal angle Φ with respect to the quantized value of the residual of the distance d or the quantized value of the residual of the elevation angle θ. Adaptive inverse quantization may be performed, or quantization may be performed with a fixed inverse quantization step.
 なお、逆量子化ステップiQSは、量子化ステップQSと同様に、距離dが大きいほど小さくなるように(つまり、距離dが小さいほど大きくなるように)算出されてもよい。具体的には、逆量子化ステップiQSは、下記式7を用いて算出されてもよい。 Note that the inverse quantization step iQS may be calculated so as to decrease as the distance d increases (that is, increase as the distance d decreases) in the same manner as the quantization step QS. Specifically, the inverse quantization step iQS may be calculated using Equation 7 below.
 iQS=Φprecision/d   (式7) iQS = Φprecision/d (Equation 7)
 式7に示されるように、逆量子化ステップiQSは、所定の基準値Φprecisionを距離dで除算することで算出されてもよい。式7に用いられる距離dは、復号対象の三次元点の極座標における距離であるとしたが、これに限らない。距離dは、復号対象の三次元点より前の復号順で復号された三次元点の極座標の距離であってもよい。また、距離dは、復号対象の三次元点より前の復号順で復号された複数の三次元点の極座標の距離から得られた距離であってもよく、例えば、復号対象の三次元点より前の復号順で復号された複数の三次元点の極座標の距離の平均、中央値、最大値、最小値などであってもよい。また、距離dは、復号対象の三次元点の距離及び復号対象の三次元点より前の復号順で復号された1以上の三次元点の極座標の距離から得られた距離であってもよく、例えば、復号対象の三次元点の距離及び復号対象の三次元点より前の復号順で復号された1以上の三次元点の極座標の距離の平均、中央値、最大値、最小値などであってもよい。 As shown in Equation 7, the inverse quantization step iQS may be calculated by dividing a predetermined reference value Φprecision by the distance d. Although the distance d used in Equation 7 is the distance in the polar coordinates of the three-dimensional point to be decoded, it is not limited to this. The distance d may be the polar coordinate distance of the 3D point decoded in the decoding order prior to the 3D point to be decoded. Further, the distance d may be a distance obtained from the distance of the polar coordinates of a plurality of three-dimensional points decoded in the decoding order prior to the three-dimensional point to be decoded. It may be the average, median, maximum value, minimum value, etc. of the polar coordinate distances of a plurality of 3D points decoded in the previous decoding order. Further, the distance d may be a distance obtained from the distance of the 3D point to be decoded and the distance of the polar coordinates of one or more 3D points decoded in decoding order prior to the 3D point to be decoded. , for example, the average, median, maximum value, minimum value, etc. of the distance of the 3D point to be decoded and the distance of the polar coordinates of one or more 3D points decoded in the decoding order prior to the 3D point to be decoded There may be.
 また、距離dは、復号対象の三次元点より後の復号順で復号された複数の三次元点の極座標の距離を用いて算出された距離であってもよく、例えば、復号対象の三次元点より後の復号順で復号された複数の三次元点の極座標の距離の平均、中央値、最大値、最小値などであってもよい。また、距離dは、復号対象の三次元点の距離及び復号対象の三次元点より後の復号順で復号された1以上の三次元点の極座標の距離を用いて算出された距離であってもよく、例えば、復号対象の三次元点の距離及び復号対象の三次元点より後の復号順で復号された1以上の三次元点の極座標の距離の平均、中央値、最大値、最小値などであってもよい。 Further, the distance d may be a distance calculated using distances of polar coordinates of a plurality of three-dimensional points decoded in decoding order after the three-dimensional point to be decoded. It may be the average, median, maximum value, minimum value, etc. of distances of polar coordinates of a plurality of three-dimensional points decoded in decoding order after the point. Further, the distance d is a distance calculated using the distance of the three-dimensional point to be decoded and the distance of the polar coordinates of one or more three-dimensional points decoded in the decoding order after the three-dimensional point to be decoded, For example, the average, median, maximum and minimum values of the distance of the 3D point to be decoded and the distance of the polar coordinates of one or more 3D points decoded in the decoding order after the 3D point to be decoded and so on.
 なお、復号対象の三次元点より前の復号順で復号された1以上の三次元点は、1以上の第2三次元点または1以上の第4三次元点の一例である。また、復号対象の三次元点より後の復号順で復号された1以上の三次元点は、1以上の第2三次元点または1以上の第4三次元点の他の一例である。1以上の第2三次元点は、複数の三次元点に含まれ且つ復号対象の三次元点の周辺に位置する三次元点である。周辺に位置する三次元点とは、空間的な位置が復号対象の三次元点に近いこと、または、時間的な位置が復号対象の三次元点に近いことを意味する。空間的な位置が復号対象の三次元点に近いとは、復号対象の三次元点との間の距離が所定距離未満の位置にある三次元点、または、復号対象の三次元点の復号順との差が所定の差未満の順にある三次元点である。時間的な位置が復号対象の三次元点に近いとは、複数フレームの生成順において、生成順の差が所定の差未満の順のフレームに含まれる三次元点である。 It should be noted that the one or more 3D points decoded in the decoding order before the 3D point to be decoded is an example of the one or more second 3D points or the one or more fourth 3D points. Also, the one or more 3D points decoded in decoding order after the 3D point to be decoded is another example of the one or more second 3D points or the one or more fourth 3D points. The one or more second 3D points are 3D points that are included in the plurality of 3D points and located around the 3D point to be decoded. A three-dimensional point located in the vicinity means that the spatial position is close to the decoding target three-dimensional point, or the temporal position is close to the decoding target three-dimensional point. A spatial position close to a 3D point to be decoded means a 3D point located at a position where the distance from the 3D point to be decoded is less than a predetermined distance, or a decoding order of the 3D points to be decoded. are the three-dimensional points in the order that the difference between is less than the predetermined difference. A temporal position close to a 3D point to be decoded means a 3D point included in a frame whose generation order difference is less than a predetermined difference in the generation order of a plurality of frames.
 なお、式7に用いられるΦprecisionは、水平角Φのビット精度を表すパラメータである。ビット精度が大きいほど、正確な予測値を生成できるため、算出される残差が小さくなる。反対にビット精度の値が小さいほど、不正確な予測値が算出されるため、算出される残差が大きくなる。そこで、ビット精度が小さいほど、量子化ステップを小さくして量子化誤差を抑え、ビット精度が大きいほど、量子化ステップを大きくして符号格好率を向上できる。 Note that Φprecision used in Equation 7 is a parameter representing the bit precision of the horizontal angle Φ. The greater the bit precision, the more accurate the predicted value can be generated, and hence the smaller the calculated residual. Conversely, the smaller the bit precision value, the larger the calculated residual error because the more inaccurate predicted value is calculated. Therefore, the smaller the bit precision, the smaller the quantization step to suppress the quantization error, and the higher the bit precision, the larger the quantization step, thereby improving the coding rate.
 また、Φprecisionは、水平角Φの予測精度を表すパラメータであってもよい。水平角Φの予測精度の値が大きいほど、正確な予測値を生成できるため、算出される残差が小さくなる。反対に予測精度の値が小さいほど、不正確な予測値が算出されるため、算出される残差が大きくなる。そこで、予測精度が小さいほど、量子化ステップを大きくして符号化効率を向上できる。予測精度は、例えば、予測値のビット精度、interpolationのビット精度などである。 Also, Φprecision may be a parameter representing the prediction accuracy of the horizontal angle Φ. The larger the prediction accuracy of the horizontal angle Φ, the more accurate the prediction value can be generated, and the smaller the calculated residual. Conversely, the smaller the prediction accuracy value, the larger the calculated residual error, because an inaccurate prediction value is calculated. Therefore, the smaller the prediction accuracy, the larger the quantization step and the more the encoding efficiency can be improved. The prediction accuracy is, for example, the bit accuracy of predicted values, the bit accuracy of interpolation, and the like.
 三次元データ復号装置120は、ΦprecisionをGPS、スライス等のヘッダなどのビットストリームに付加されたものを復号することで取得してもよい。また、三次元データ復号装置120は、Φprecisionを算出するためのパラメータをGPS、スライス等のヘッダから復号することで取得してもよい。三次元データ復号装置120は、Φprecisionをビットストリームから復号することにより、三次元データ符号化装置100で使用された水平角Φのビット精度を、ビットストリームを復号することで知ることができ、ビットストリームを適切に復号できる。 The three-dimensional data decoding device 120 may acquire Φprecision by decoding what is added to a bitstream such as a header of GPS, slice, or the like. Also, the three-dimensional data decoding device 120 may acquire parameters for calculating Φprecision by decoding from headers such as GPS and slices. By decoding Φprecision from the bitstream, the 3D data decoding device 120 can know the bit precision of the horizontal angle Φ used in the 3D data encoding device 100 by decoding the bitstream. I can decode the stream properly.
 なお、Φprecisionはイントラ予測とインター予測とで異なる値が用いられても良い。例えば、イントラ予測用のΦprecisionIntra及びインター予測用のΦprecisionInterをビットストリームからそれぞれ復号し、イントラ予測かインター予測かに応じて復号に用いるΦprecisionの値を切替えてもよい。これにより、イントラ予測かインター予測かに応じて量子化ステップQSを切替えることで符号化効率を向上したビットストリームを適切に復号できる。なお、三次元データ復号装置120は、ΦprecisionIntraとΦprecisionInterとを算出するためのパラメータを、GPS、スライス等のヘッダに付加された情報を復号することで取得してもよい。 Note that Φprecision may have different values for intra prediction and inter prediction. For example, ΦprecisionIntra for intra prediction and ΦprecisionInter for inter prediction may be respectively decoded from a bitstream, and the value of Φprecision used for decoding may be switched according to intra prediction or inter prediction. Accordingly, by switching the quantization step QS depending on whether intra-prediction or inter-prediction, a bitstream with improved coding efficiency can be appropriately decoded. Note that the three-dimensional data decoding device 120 may acquire parameters for calculating ΦprecisionIntra and ΦprecisionInter by decoding information added to headers such as GPS and slice.
 このように、インター予測とイントラ予測とで異なるΦprecisionが用いられるため、算出される逆量子化ステップiQSもインター予測とイントラ予測とで異なる値に算出されうる。つまり、逆量子化では、水平角Φと、インター予測で予測されたインター予測値との第1残差を、第1逆量子化ステップiQS1を用いて算出する。また、量子化では、水平角Φと、イントラ予測で予測されたイントラ予測値との第2残差を、第1逆量子化ステップiQS1と異なる第2逆量子化ステップiQS2を用いて算出する。具体的には、第1逆量子化ステップiQS1及び第2逆量子化ステップiQS2は、それぞれ、下記式8及び式9を用いて算出されてもよい。 Thus, since different Φprecision is used for inter prediction and intra prediction, the calculated inverse quantization step iQS can also be calculated to have different values for inter prediction and intra prediction. That is, in the inverse quantization, the first residual between the horizontal angle Φ and the inter prediction value predicted by the inter prediction is calculated using the first inverse quantization step iQS1. Also, in quantization, a second residual between the horizontal angle Φ and the intra prediction value predicted by intra prediction is calculated using a second inverse quantization step iQS2 different from the first inverse quantization step iQS1. Specifically, the first inverse quantization step iQS1 and the second inverse quantization step iQS2 may be calculated using Equations 8 and 9 below, respectively.
 QS1=ΦprecisionInter/d   (式8)  QS1=ΦprecisionInter/d (Equation 8)
 QS2=ΦprecisionIntra/d   (式9)  QS2=ΦprecisionIntra/d (Equation 9)
 このように、第1逆量子化ステップiQS1は、第1基準値としてのΦprecisionInter及び距離dを用いて算出されてもよい。また、第2逆量子化ステップiQS2は、第2基準値としてのΦprecisionIntra及び距離dを用いて算出されてもよい。 Thus, the first inverse quantization step iQS1 may be calculated using ΦprecisionInter as the first reference value and the distance d. Also, the second inverse quantization step iQS2 may be calculated using ΦprecisionIntra and the distance d as the second reference value.
 ΦprecisionIntraは、イントラ予測における第2基準値の一例である。ΦprecisionIntraは、水平角Φのビット精度を表すパラメータであってもよいし、水平角Φの予測精度を表すパラメータであってもよい。また、ΦprecisionInterは、インター予測における第1基準値の一例である。ΦprecisionInterは、水平角Φのビット精度を表すパラメータであってもよいし、水平角Φの予測精度を表すパラメータであってもよい。このように、基準値は、イントラ予測で及びインター予測のそれぞれで生成可能な予測値の正確性を示す値であってもよい。三次元データ復号装置120は、基準値に応じて量子化ステップを切り替えることで符号化効率された第1残差または第2残差を復号できる。 ΦprecisionIntra is an example of a second reference value in intra prediction. ΦprecisionIntra may be a parameter representing the bit precision of the horizontal angle Φ, or may be a parameter representing the prediction accuracy of the horizontal angle Φ. Also, ΦprecisionInter is an example of a first reference value in inter prediction. ΦprecisionInter may be a parameter representing the bit precision of the horizontal angle Φ, or may be a parameter representing the prediction accuracy of the horizontal angle Φ. Thus, the reference value may be a value that indicates the accuracy of predictive values that can be generated by intra-prediction and inter-prediction. The 3D data decoding device 120 can decode the first residual or the second residual with improved coding efficiency by switching the quantization step according to the reference value.
 なお、逆量子化ステップiQSは、量子化ステップQSと同様に算出されるため、量子化ステップQSであるともいえる。また、第1逆量子化ステップiQS1は、第1量子化ステップQS1と同様に算出されるため、第1量子化ステップQS1であるともいえる。また、第2逆量子化ステップiQS2は、第2量子化ステップQS2と同様に算出されるため、第2量子化ステップQS2であるともいえる。 Since the inverse quantization step iQS is calculated in the same manner as the quantization step QS, it can also be said to be the quantization step QS. Also, since the first inverse quantization step iQS1 is calculated in the same manner as the first quantization step QS1, it can also be said to be the first quantization step QS1. Also, since the second inverse quantization step iQS2 is calculated in the same manner as the second quantization step QS2, it can also be said to be the second quantization step QS2.
 なお、水平角Φのビット精度であるΦprecisionがイントラ予測とインター予測とで切替えられてビットストリームに付加される例を示したが、必ずしもこれに限らず、例えば、イントラ予測のフレームまたはスライスと、インター予測のフレームまたはスライスとで水平角Φのビット精度が切替えられてビットストリームに付加されてもよい。また、ビットストリームに付加されるΦprecisionは、フレーム単位、スライス単位、または、ストリーム単位で切り替えられてもよい。つまり、ビットストリームに付加されるΦprecisionは、イントラ予測において符号化対象の三次元点のフレームまたはスライスが切り替わった場合に、イントラ予測が継続されていても切り替えられてもよい。また、ビットストリームに付加されるΦprecisionは、インター予測において符号化対象の三次元点のフレームまたはスライスが切り替わった場合に、インター予測が継続されていても切り替えられてもよい。この場合、三次元データ復号装置120は、フレームまたはスライス単位のヘッダに水平角Φのビット精度またはそれを生成するための情報をヘッダから復号してもよい。このように、Φprecisionは、1以上の三次元点を含む所定の点群単位、つまり、フレーム単位、スライス単位、ストリーム単位などで同一の値が用いられてもよい。また、同様に、ΦprecisionInterは、1以上の三次元点を含む所定の点群単位、つまり、フレーム単位、スライス単位、ストリーム単位などで同一の値が用いられてもよい。ΦprecisionIntraは、1以上の三次元点を含む所定の点群単位、つまり、フレーム単位、スライス単位、ストリーム単位などで同一の値が用いられてもよい。 Although an example in which Φprecision, which is the bit precision of the horizontal angle Φ, is switched between intra prediction and inter prediction and added to the bitstream is shown, this is not necessarily the case. For example, an intra prediction frame or slice, The bit precision of the horizontal angle Φ may be switched between inter-predicted frames or slices and added to the bitstream. Also, Φprecision added to the bitstream may be switched on a frame-by-frame basis, a slice-by-slice basis or a stream-by-stream basis. That is, Φprecision added to the bitstream may be switched even if intra prediction is continued when the frame or slice of the 3D point to be encoded is switched in intra prediction. Also, Φprecision added to the bitstream may be switched even if inter prediction is continued when the frame or slice of the 3D point to be encoded is switched in inter prediction. In this case, the 3D data decoding device 120 may decode the bit precision of the horizontal angle Φ or the information for generating it from the header for each frame or slice. In this way, Φprecision may have the same value in units of a predetermined point group including one or more 3D points, that is, in units of frames, units of slices, units of streams, and the like. Similarly, the same value may be used for ΦprecisionInter in units of predetermined point groups including one or more three-dimensional points, that is, in units of frames, units of slices, units of streams, and the like. For ΦprecisionIntra, the same value may be used in units of a predetermined point group including one or more 3D points, that is, in units of frames, units of slices, units of streams, and the like.
 図8を用いて説明した適応逆量子化では、復号対象点の極座標における水平角Φの残差信号の量子化値に対し、復号対象点の距離dに応じて適応的に逆量子化が実行される。これにより、水平角Φの残差信号の量子化を距離dの値によって適応的に制御して符号化効率を向上したビットストリームを適切に復号できる。なお、三次元データ復号装置120は、復号対象点をイントラ予測で復号する場合、イントラ予測によって算出されたイントラ予測値と、適応逆量子化されて得られた、水平角Φの残差信号とを加算することで復号対象点の復号値(水平角Φ)を算出する。また、三次元データ復号装置120は、復号対象点をインター予測で復号する場合、インター予測によって算出したインター予測値と、適応逆量子化されて得られた、水平角Φの残差信号とを加算することで復号対象点の復号値(水平角Φ)を算出する。このようにイントラ予測、及び、インター予測の少なくとも一方で生成された予測値に、共通の適応逆量子化を適用して得られた残差信号を加算して復号対象点の復号値を得ることで、追加のハードウェアの回路規模やソフトウェアのコード量を抑制しつつ、ビットストリームを適切に復号できる。 In the adaptive inverse quantization described with reference to FIG. 8, inverse quantization is adaptively executed according to the distance d of the decoding target point for the quantized value of the residual signal of the horizontal angle Φ in the polar coordinates of the decoding target point. be done. As a result, the quantization of the residual signal of the horizontal angle Φ can be adaptively controlled by the value of the distance d to appropriately decode the bitstream with improved coding efficiency. When decoding the decoding target point by intra prediction, three-dimensional data decoding device 120 combines the intra prediction value calculated by intra prediction with the residual signal of horizontal angle Φ obtained by adaptive inverse quantization. is added to calculate the decoded value (horizontal angle Φ) of the decoding target point. Further, when decoding the decoding target point by inter prediction, three-dimensional data decoding apparatus 120 combines the inter prediction value calculated by inter prediction and the residual signal of horizontal angle Φ obtained by adaptive inverse quantization. By adding, the decoded value (horizontal angle Φ) of the decoding target point is calculated. To obtain the decoded value of the decoding target point by adding the residual signal obtained by applying common adaptive inverse quantization to the prediction value generated by at least one of intra prediction and inter prediction in this way , the bitstream can be appropriately decoded while suppressing the circuit scale of additional hardware and the amount of software code.
 なお、本実施の形態では、イントラ予測及びインター予測の残差信号に対し、適応量子化を適用したビットストリームを適切に復号する例を示したが、必ずしもこれに限らない。例えば、三次元データ復号装置120は、イントラ予測の残差信号に適用量子化を適用し、かつ、インター予測の残差信号には適用量子化を適用しなかったビットストリームに対しては、イントラ予測の残差信号の場合は適用逆量子化を適用し、インター予測の残差信号の場合は適用逆量子化を適用せずにビットストリームを復号してもよい。これにより、処理量を抑えつつイントラ予測により符号化効率が向上されたビットストリームを適切に復号できる。また、例えば、三次元データ復号装置120は、インター予測の残差信号に適用量子化を適用し、かつ、イントラ予測の残差信号には適用量子化を適用しなかったビットストリームに対しては、インター予測の残差信号の場合は適用逆量子化を適用し、イントラ予測の残差信号の場合は適用逆量子化を適用せずにビットストリームを復号してもよい。これにより、三次元データ復号装置120は、処理量を抑えつつインター予測の符号化効率を向上したビットストリームを適切に復号できる。 Although this embodiment has shown an example of appropriately decoding a bitstream to which adaptive quantization is applied to intra-prediction and inter-prediction residual signals, the present invention is not necessarily limited to this. For example, the three-dimensional data decoding device 120 applies adaptive quantization to the intra-prediction residual signal and does not apply adaptive quantization to the inter-prediction residual signal. The bitstream may be decoded with adaptive dequantization applied for prediction residual signals and without adaptive dequantization applied for inter-prediction residual signals. As a result, it is possible to appropriately decode a bitstream whose encoding efficiency is improved by intra prediction while suppressing the amount of processing. Further, for example, the three-dimensional data decoding device 120 applies adaptive quantization to the inter-prediction residual signal and does not apply adaptive quantization to the intra-prediction residual signal. , the bitstream may be decoded with adaptive dequantization applied for inter-prediction residual signals and without applying adaptive dequantization for intra-prediction residual signals. As a result, the 3D data decoding device 120 can appropriately decode a bitstream in which inter-prediction encoding efficiency is improved while suppressing the amount of processing.
 図9は、本実施の形態の変形例に係る三次元データ符号化装置130のブロック図である。なお、図9では、点群の位置情報(ジオメトリ)の符号化に関する処理部を記載しているが、三次元データ符号化装置130は、点群の属性情報の符号化等を行う処理部等の他の処理部を備えてもよい。インター予測及びイントラ予測では、符号化済みの点群を参照しつつ符号化対象の点群が符号化される。三次元データ符号化装置130は、その構成及び動作において、図1の三次元データ符号化装置100と比較して、直交座標で表現された位置情報を有する点群を極座標で表現された位置情報に変換して符号化を行うための座標変換部131を有する点と、直交座標と極座標との間の変換で生じる誤差に相当する直交座標の第2残差信号を量子化する点とが異なる。一方で、三次元データ符号化装置130は、その構成及び動作において、三次元データ符号化装置100と比較して、上記の異なる点以外の点が同じである。 FIG. 9 is a block diagram of a three-dimensional data encoding device 130 according to a modification of the present embodiment. Note that FIG. 9 shows a processing unit for encoding the position information (geometry) of the point cloud, but the three-dimensional data encoding device 130 includes a processing unit for encoding the attribute information of the point cloud, etc. may be provided with other processing units. In inter-prediction and intra-prediction, a point group to be encoded is encoded while referring to an already-encoded point group. The three-dimensional data encoding device 130 differs from the three-dimensional data encoding device 100 of FIG. 1 in its configuration and operation by converting point groups having position information expressed in rectangular coordinates into position information expressed in polar coordinates. and quantizing the second residual signal of the orthogonal coordinates corresponding to the error generated in the transformation between the orthogonal coordinates and the polar coordinates. . On the other hand, the three-dimensional data encoding device 130 is the same as the three-dimensional data encoding device 100 in terms of its configuration and operation, except for the above differences.
 三次元データ符号化装置130は、座標変換部131と、グループ化部132と、バッファ133と、適応量子化部134と、適応逆量子化部135と、バッファ136と、イントラ予測部137と、バッファ138と、動き補償部139と、インター予測部140と、切替部141と、座標変換部142と、バッファ143と、量子化部144と、エントロピー符号化部145とを備える。 The three-dimensional data encoding device 130 includes a coordinate transformation unit 131, a grouping unit 132, a buffer 133, an adaptive quantization unit 134, an adaptive inverse quantization unit 135, a buffer 136, an intra prediction unit 137, A buffer 138 , a motion compensation unit 139 , an inter prediction unit 140 , a switching unit 141 , a coordinate transformation unit 142 , a buffer 143 , a quantization unit 144 and an entropy coding unit 145 are provided.
 座標変換部131は、入力された符号化対象の点群のデータである対象点群の位置情報の座標系を直交座標系から極座標系に変換する。つまり、座標変換部131は、符号化対象の1つの三次元点の直交座標系の位置情報の座標系を変換することで極座標系の位置情報を生成する。極座標に変換された符号化対象の点群はグループ化部132に出力される。 The coordinate conversion unit 131 converts the coordinate system of the position information of the target point group, which is the input point group data to be encoded, from the orthogonal coordinate system to the polar coordinate system. That is, the coordinate transformation unit 131 generates position information in the polar coordinate system by transforming the coordinate system of the position information in the orthogonal coordinate system of one three-dimensional point to be encoded. The point group to be encoded converted into polar coordinates is output to the grouping unit 132 .
 グループ化部132は、極座標に変換された符号化対象の点群である対象点群から、符号化の一単位である予測木(Predtree)とする点群を抽出して1つのグループとして設定する。バッファ133は、生成された予測木を保持する。例えば、バッファ133は、予測木毎に保持するデータを初期化してもよい。バッファ133に保持された予測木(Predtree)に含まれる複数の三次元点の一点一点に対して順番に符号化のための処理が実行される。 The grouping unit 132 extracts a point group to be a prediction tree (Predtree), which is a unit of encoding, from the target point group, which is a point group to be encoded converted into polar coordinates, and sets them as one group. . A buffer 133 holds the generated prediction tree. For example, the buffer 133 may initialize data held for each prediction tree. A plurality of three-dimensional points included in the prediction tree (Predtree) held in the buffer 133 are sequentially subjected to encoding processing one by one.
 バッファ133に保持された予測木に含まれる複数の三次元点のそれぞれ(符号化対象の点)と、当該符号化対象の点に対して選択された予測点との間の差分(第1残差信号)が算出される。この第1残差信号は、極座標で表現された位置情報の残差信号である。第1残差信号は、予測残差とも言う。この第1残差信号は、第1残差の一例である。バッファ133に保持される複数の三次元点の位置情報は極座標系に変換されているため、第1残差は、変換後の極座標系の位置情報と予測値との差分である。 The difference (first residual difference signal) is calculated. This first residual signal is a residual signal of positional information expressed in polar coordinates. The first residual signal is also called prediction residual. This first residual signal is an example of the first residual. Since the positional information of the plurality of three-dimensional points held in the buffer 133 has been converted into the polar coordinate system, the first residual is the difference between the positional information in the polar coordinate system after conversion and the predicted value.
 適応量子化部134は、第1残差信号を適応量子化する。エントロピー符号化部111は、適応量子化された第1残差信号をエントロピー符号化して符号化データを生成し、符号化データを含むビットストリームを出力(生成)する。 The adaptive quantization section 134 adaptively quantizes the first residual signal. The entropy coding unit 111 entropy-codes the adaptively quantized first residual signal to generate coded data, and outputs (generates) a bitstream containing the coded data.
 適応逆量子化部135は、適応量子化部134により適応量子化された第1残差信号を、適応逆量子化する。適応逆量子化された第1残差信号は、選択された予測点(1以上の候補点)に基づく予測値に加算されることでイントラ予測及びインター予測に用いられる三次元点(参照点)として復号される。なお、予測値は、1以上の候補点の位置情報に基づいて算出される。バッファ136は、復号されたイントラ予測の参照点群を保持する。例えば、バッファ136は、予測木(対象点群)毎に保持するデータを初期化してもよい。また、バッファ138は、インター予測の参照点群を保持する。例えば、バッファ138は、予測木(対象点群)毎に保持するデータを初期化してもよい。バッファ136、138に保持される復号点の位置情報は、極座標により表現される。 The adaptive inverse quantization section 135 adaptively inversely quantizes the first residual signal adaptively quantized by the adaptive quantization section 134 . The adaptively inverse quantized first residual signal is added to the prediction value based on the selected prediction points (one or more candidate points) to obtain three-dimensional points (reference points) used for intra prediction and inter prediction. is decoded as Note that the predicted value is calculated based on position information of one or more candidate points. The buffer 136 holds the decoded intra-prediction reference point group. For example, the buffer 136 may initialize data held for each prediction tree (target point group). The buffer 138 also holds reference point groups for inter prediction. For example, the buffer 138 may initialize data held for each prediction tree (target point group). The position information of the decoding points held in the buffers 136 and 138 is represented by polar coordinates.
 座標変換部142は、バッファ136、138に保持される復号点と同じ復号点を取得し、取得した復号点の位置情報の座標系を極座標系から直交座標系に変換する。つまり、座標変換部142は、座標変換部131による変換後の極座標系の位置情報の座標系を逆変換することで直交座標系の位置情報を生成する。 The coordinate transformation unit 142 acquires the same decoding points as the decoding points held in the buffers 136 and 138, and transforms the coordinate system of the position information of the acquired decoding points from the polar coordinate system to the rectangular coordinate system. That is, the coordinate transformation unit 142 inversely transforms the coordinate system of the position information in the polar coordinate system after transformation by the coordinate transformation unit 131 to generate the position information in the orthogonal coordinate system.
 バッファ143は、三次元データ符号化装置130に入力された、直交座標で表現された三次元点の位置情報を保持する。 The buffer 143 holds the positional information of the three-dimensional points expressed in orthogonal coordinates input to the three-dimensional data encoding device 130 .
 そして、入力された直交座標系の位置情報と、座標変換部142において極座標系から直交座標系に座標系が変換された直交座標系の位置情報との差分(第2残差信号)が算出される。この第2残差信号は、第2残差の一例である。つまり、第2残差信号は、座標変換部131において座標変換が行われていない直交座標系の位置情報と、一度極座標に変換された後にさらに直交座標系に逆変換された後の位置情報との差分であり、座標変換により発生する変換誤差である。 Then, the difference (second residual signal) between the input positional information in the rectangular coordinate system and the positional information in the rectangular coordinate system whose coordinate system is converted from the polar coordinate system to the rectangular coordinate system in the coordinate conversion unit 142 is calculated. be. This second residual signal is an example of the second residual. That is, the second residual signal is the position information in the orthogonal coordinate system that has not been coordinate-transformed by the coordinate transforming unit 131, and the position information that has been transformed once into the polar coordinates and then inversely transformed back into the orthogonal coordinate system. , and is a transformation error generated by coordinate transformation.
 量子化部144は、第2残差信号を量子化する。 The quantization unit 144 quantizes the second residual signal.
 エントロピー符号化部145は、第1残差信号と、量子化された第2残差信号とをエントロピー符号化して符号化データを生成し、符号化データを含むビットストリームを出力する。 The entropy encoding unit 145 entropy-encodes the first residual signal and the quantized second residual signal to generate encoded data, and outputs a bitstream containing the encoded data.
 このように、三次元データ符号化装置130は、三次元点の位置情報の座標系を直交座標系から極座標系に変換して、極座標系の位置情報を符号化する。これにより、LiDARなどのようにセンサ位置を中心に周囲の物体の三次元位置を取得して生成された点群を符号化する際に、符号化対象の点の予測精度を向上させることができ、符号化効率を向上させることができる可能性がある。 In this way, the 3D data encoding device 130 converts the coordinate system of the position information of the 3D points from the orthogonal coordinate system to the polar coordinate system, and encodes the position information in the polar coordinate system. As a result, it is possible to improve the prediction accuracy of the points to be encoded when encoding the point cloud generated by acquiring the 3D position of the surrounding object around the sensor position, such as LiDAR. , which may improve the coding efficiency.
 図10は、本実施の形態の変形例に係る三次元データ復号装置150のブロック図である。なお、図10では、点群の位置情報(ジオメトリ)の復号に関する処理部を記載しているが、三次元データ復号装置150は、点群の属性情報の復号等を行う処理部等の他の処理部を備えてもよい。三次元データ復号装置150は、復号済みの点群を参照しつつ復号対象の点群を復号するインター予測復号を行う。例えば、三次元データ復号装置150は、図9に示す三次元データ符号化装置130で生成されたビットストリームを復号する。三次元データ復号装置150は、基本的な構成及び動作において、図3の三次元データ復号装置120と比較して、直交座標と極座標との間の変換で生じる変換誤差に相当する直交座標の第2残差信号をエントロピー復号して逆量子化して再生した変換誤差を、対応する極座標の復号点から直交座標に変換された復号点に加算して直交座標の復号点として出力する点とが異なる。一方で、三次元データ復号装置150は、三次元データ復号装置120と比較して、上記の異なる点以外の点が同じである。 FIG. 10 is a block diagram of a 3D data decoding device 150 according to a modification of the present embodiment. Note that FIG. 10 shows a processing unit related to decoding of point cloud position information (geometry), but the three-dimensional data decoding device 150 includes other processing units such as a processing unit that decodes point cloud attribute information. A processing unit may be provided. The three-dimensional data decoding device 150 performs inter-prediction decoding for decoding a point group to be decoded while referring to a decoded point group. For example, the 3D data decoding device 150 decodes the bitstream generated by the 3D data encoding device 130 shown in FIG. 3D data decoding device 150 differs from 3D data decoding device 120 in FIG. 3 in its basic configuration and operation. 2 The difference is that the transformation error obtained by entropy decoding and inverse quantization of the residual signal is added to the decoding point transformed from the corresponding polar coordinate decoding point to the orthogonal coordinate decoding point, and is output as the orthogonal coordinate decoding point. . On the other hand, the three-dimensional data decoding device 150 is the same as the three-dimensional data decoding device 120 except for the above differences.
 三次元データ復号装置150は、エントロピー復号部151と、適応逆量子化部152と、バッファ153と、イントラ予測部154と、バッファ155と、動き補償部156と、インター予測部157と、切替部158と、座標変換部159と、逆量子化部160とを備える。 The three-dimensional data decoding device 150 includes an entropy decoding unit 151, an adaptive inverse quantization unit 152, a buffer 153, an intra prediction unit 154, a buffer 155, a motion compensation unit 156, an inter prediction unit 157, and a switching unit. 158 , a coordinate transformation unit 159 and an inverse quantization unit 160 .
 エントロピー復号部151は、入力されたビットストリームを、予測木(Predtree)の三次元点毎にエントロピー復号することで適応量子化された第1残差信号と、量子化された第2残差信号とを生成する。 The entropy decoding unit 151 entropy-decodes the input bitstream for each three-dimensional point of a prediction tree (Predtree) to generate an adaptively quantized first residual signal and a quantized second residual signal. and
 適応逆量子化部152は、適応量子化された第1残差信号を適応逆量子化して、第1残差信号を再生する。各三次元点の第1残差信号は、各三次元点に対応する予測点に基づく予測値と加算されたのち、極座標で表現された復号点として生成(出力)される。 The adaptive inverse quantization unit 152 adaptively inversely quantizes the adaptively quantized first residual signal to reproduce the first residual signal. The first residual signal of each 3D point is added to the prediction value based on the prediction point corresponding to each 3D point, and then generated (output) as a decoded point expressed in polar coordinates.
 バッファ153は、生成された復号点を、イントラ予測の参照点群として保持する。例えば、バッファ153は、予測木(対象点群)毎に保持するデータを初期化してもよい。また、バッファ155は、生成された復号点を、インター予測の参照点群として保持する。例えば、バッファ155は、予測木(対象点群)毎に保持するデータを初期化してもよい。バッファ153、155に保持される復号点の位置情報は、極座標により表現される。 The buffer 153 holds the generated decoding points as a reference point group for intra prediction. For example, the buffer 153 may initialize data held for each prediction tree (target point group). Also, the buffer 155 holds the generated decoding points as a reference point group for inter prediction. For example, the buffer 155 may initialize data held for each prediction tree (target point group). The position information of the decoding points held in the buffers 153 and 155 is represented by polar coordinates.
 また、イントラ予測部154、動き補償部156、インター予測部157、及び切替部158は、それぞれ、イントラ予測部124、動き補償部126、インター予測部127、及び切替部128とその機能が同じである。 Also, the intra prediction unit 154, the motion compensation unit 156, the inter prediction unit 157, and the switching unit 158 have the same functions as the intra prediction unit 124, the motion compensation unit 126, the inter prediction unit 127, and the switching unit 128, respectively. be.
 座標変換部159は、バッファ153、155に保持される復号点と同じ復号点を取得し、取得した復号点の位置情報の座標系を極座標系から直交座標系に変換する。 The coordinate transformation unit 159 acquires the same decoding points as the decoding points held in the buffers 153 and 155, and transforms the coordinate system of the position information of the acquired decoding points from the polar coordinate system to the rectangular coordinate system.
 逆量子化部160は、量子化された第2残差信号を逆量子化して、第2残差信号を再生する。 The inverse quantization unit 160 inversely quantizes the quantized second residual signal to reproduce the second residual signal.
 座標変換部159により座標変換されて得られた直交座標系の位置情報と、逆量子化部160により逆量子化されて再生された第2残差信号とは、加算されたのち、直交座標系の位置情報を含む復号点として生成(出力)される。 The position information in the orthogonal coordinate system obtained by coordinate transformation by the coordinate transformation unit 159 and the second residual signal inversely quantized and reproduced by the inverse quantization unit 160 are added, and then converted to the orthogonal coordinate system. is generated (output) as a decoding point including the position information of .
 このように、三次元データ復号装置150は、極座標系の位置情報を有する復号点の座標系を極座標系から直交座標系に変換して、直交座標系の位置情報と極座標系の位置情報との間の変換で生じる誤差に相当する直交座標の第2残差信号に加算する手段を備える。これにより、三次元データ復号装置150は、極座標において符号化済みの点群を参照しつつ符号化されたビットストリーム(例えば、図9の三次元データ符号化装置130から出力されたビットストリーム)から点群を復号できる。 In this way, the three-dimensional data decoding device 150 converts the coordinate system of the decoding point having the position information of the polar coordinate system from the polar coordinate system to the orthogonal coordinate system, and converts the position information of the orthogonal coordinate system and the position information of the polar coordinate system. Means are provided for adding to a second residual signal in rectangular coordinates corresponding to the error resulting from the transformation between the two. As a result, the three-dimensional data decoding device 150 extracts from the encoded bitstream (for example, the bitstream output from the three-dimensional data encoding device 130 in FIG. 9) while referring to the encoded point group in the polar coordinates. A point cloud can be decoded.
 以上のように、本実施の形態に係る三次元データ符号化装置100、130は、図11に示す処理(三次元データ符号化方法)を行う。三次元データ符号化装置100、130は、それぞれが距離成分と角度成分とで表される複数の三次元点のうちの第1三次元点の角度成分と、インター予測で算出された、第1三次元点の角度成分の予測値との第1残差を算出する(S161)。次に、三次元データ符号化装置100、130は、第1量子化ステップを用いて第1残差を量子化する(S162)。第1量子化ステップは、第1三次元点の距離成分、及び、符号化済みの1以上の第2三次元点の距離成分の少なくとも一方から得られる第1距離に応じて算出される。 As described above, the three-dimensional data encoding devices 100 and 130 according to the present embodiment perform the processing (three-dimensional data encoding method) shown in FIG. Three-dimensional data encoding devices 100 and 130 each generate an angle component of a first three-dimensional point among a plurality of three-dimensional points each represented by a distance component and an angle component, and a first A first residual from the predicted value of the angle component of the 3D point is calculated (S161). Next, 3D data encoding apparatuses 100 and 130 quantize the first residual using the first quantization step (S162). The first quantization step is calculated according to the first distance obtained from at least one of the distance component of the first three-dimensional point and the distance component of one or more encoded second three-dimensional points.
 三次元点によっては、その距離成分及び周辺の三次元点の距離成分の少なくとも一方に応じて角度成分のインター予測の当たりやすさが変化する場合がある。例えば、インター予測において、遠い位置(または近い位置)で角度成分の予測が当たりやすくなり、残差が小さくなる場合がある。換言すれば、近い位置(または遠い位置)で角度成分の予測が外れやすくなり、残差が大きくなる場合がある。よって、第1三次元点の距離成分及び周辺の1以上の第2三次元点の距離成分の少なくとも一方に応じて算出された第1量子化ステップを用いて量子化することで量子化誤差が大きくなることと、量子化値が冗長になることとを低減しうる。よって、符号化効率を向上しうる。 Depending on the 3D point, the likelihood of inter-prediction of the angle component may change depending on at least one of the distance component and the distance components of surrounding 3D points. For example, in inter-prediction, there are cases where angle components are more likely to be predicted at distant positions (or near positions), resulting in smaller residuals. In other words, the prediction of the angle component is likely to go wrong at a near position (or a far position), and the residual error may become large. Therefore, quantization using the first quantization step calculated according to at least one of the distance component of the first three-dimensional point and the distance components of one or more surrounding second three-dimensional points reduces the quantization error. Browsing and redundant quantized values can be reduced. Therefore, coding efficiency can be improved.
 例えば、1以上の第2三次元点は、複数の三次元点の符号化順において第1三次元点より前に符号化される。 For example, one or more second 3D points are encoded before the first 3D point in the encoding order of the plurality of 3D points.
 例えば、三次元データ符号化装置100、130は、さらに、複数の三次元点のうちの第3三次元点の角度成分と、イントラ予測で算出された、第3三次元点の角度成分の予測値との第2残差を算出する。三次元データ符号化装置100、130は、第1量子化ステップと異なる第2量子化ステップを用いて第2残差を量子化する。 For example, the 3D data encoding devices 100 and 130 further predict the angle component of the third 3D point among the plurality of 3D points and the angle component of the third 3D point calculated by intra prediction. Calculate the second residual with the value. The 3D data encoding apparatuses 100 and 130 quantize the second residual using a second quantization step different from the first quantization step.
 三次元点によっては、予測方式によって角度成分の残差が大きくなったり小さくなったりする場合がある。このため、角度成分の残差が距離成分に加えて、予測方式に応じて変化する場合に、距離成分及び予測方式に応じて適応的に算出された量子化ステップを用いて残差を量子化することで、符号化効率を向上しうる。 Depending on the 3D point, the residual error of the angle component may increase or decrease depending on the prediction method. Therefore, when the residual of the angle component changes according to the prediction method in addition to the distance component, the residual is quantized using a quantization step that is adaptively calculated according to the distance component and the prediction method. By doing so, the coding efficiency can be improved.
 例えば、第2量子化ステップは、第3三次元点の距離成分、及び、符号化済みの1以上の第4三次元点の距離成分の少なくとも一方から得られる第2距離に応じて算出される。 For example, the second quantization step is calculated according to the second distance obtained from at least one of the distance component of the third three-dimensional point and the distance component of one or more encoded fourth three-dimensional points. .
 イントラ予測においても距離成分に応じて適応的に量子化することで符号化効率を向上しうる。 Intra prediction can also improve coding efficiency by adaptively quantizing according to the distance component.
 例えば、第1量子化ステップは、第1三次元点の角度成分の第1予測精度が小さいほど大きくなるように算出される。 For example, the first quantization step is calculated so as to increase as the first prediction accuracy of the angle component of the first three-dimensional point decreases.
 第1予測精度が大きいほど、より正確な予測値が生成されるため、残差が小さくなる。反対に、第1予測精度が小さいほど、不正確な予測値が生成されるため、残差が大きくなる。よって、第1予測精度が小さいほど大きくなるように第1量子化ステップを算出することで、量子化誤差が大きくなることと、量子化値が冗長になることとを低減しうる。よって、符号化効率を向上しうる。 The higher the first prediction accuracy is, the smaller the residual error is because a more accurate prediction value is generated. Conversely, the smaller the first prediction accuracy, the larger the residual, because an inaccurate prediction is generated. Therefore, by calculating the first quantization step so that the smaller the first prediction accuracy, the larger the first quantization step, the larger the quantization error and the redundant quantization value can be reduced. Therefore, coding efficiency can be improved.
 例えば、第1量子化ステップは、第1距離及び第1基準値に応じて算出される。第1基準値は、第1予測精度が小さいほど大きくなるように第1量子化ステップが算出されるための基準値である。三次元データ符号化装置100、130は、さらに、量子化された第1残差及び第1基準値を含むビットストリームを生成する。 For example, the first quantization step is calculated according to the first distance and the first reference value. The first reference value is a reference value for calculating the first quantization step such that the smaller the first prediction accuracy, the larger the first quantization step. The 3D data encoding devices 100, 130 further generate a bitstream containing the quantized first residual and the first reference value.
 第1基準値は、第1予測精度が小さいほど大きくなるように第1量子化ステップが算出されるための基準値であるため、第1予測精度が小さいほど大きくなるように第1量子化ステップを算出することができる。このため、量子化誤差が大きくなることと、量子化値が冗長になることとを低減しうる。よって、符号化効率を向上しうる。また、第1基準値をビットストリームに含めることで、復号側でも符号化側と同じ適応的量子化の実行が可能となる。 The first reference value is a reference value for calculating the first quantization step so that the smaller the first prediction accuracy, the larger the first quantization step. can be calculated. Therefore, it is possible to reduce the increase in quantization error and redundant quantization values. Therefore, coding efficiency can be improved. Also, by including the first reference value in the bitstream, the decoding side can perform the same adaptive quantization as the encoding side.
 例えば、第2量子化ステップは、第2距離及び第2基準値に応じて算出される。第2基準値は、第3三次元点の角度成分の第2予測精度が小さいほど大きくなるように第2量子化ステップが算出されるための基準値である。ビットストリームは、さらに、量子化された第2残差及び第2基準値を含む。 For example, the second quantization step is calculated according to the second distance and the second reference value. The second reference value is a reference value for calculating the second quantization step such that the smaller the second prediction accuracy of the angular component of the third three-dimensional point, the larger the second quantization step. The bitstream further includes a quantized second residual and a second reference value.
 第2基準値は、第2予測精度が小さいほど大きくなるように第2量子化ステップが算出されるための基準値であるため、第2予測精度が小さいほど大きくなるように第2量子化ステップを算出することができる。このため、量子化誤差が大きくなることと、量子化値が冗長になることとを低減しうる。よって、符号化効率を向上しうる。 The second reference value is a reference value for calculating the second quantization step so that the smaller the second prediction accuracy, the larger the second quantization step. can be calculated. Therefore, it is possible to reduce the increase in quantization error and redundant quantization values. Therefore, coding efficiency can be improved.
 例えば、第1量子化ステップは、第1距離が大きいほど小さくなるように算出される。 For example, the first quantization step is calculated so as to decrease as the first distance increases.
 三次元点によっては、その距離成分及び周辺の三次元点の距離成分の少なくとも一方が大きいほど角度成分のインター予測が当たりにくくなる場合があるため、距離成分に応じて適応的に算出された第1量子化ステップを用いて第1残差を量子化することで量子化誤差が大きくなることと、量子化値が冗長になることとを効果的に低減しうる。よって、符号化効率を向上しうる。 Depending on the 3D point, the larger at least one of the distance component and the distance components of surrounding 3D points is, the more difficult it is to inter-predict the angle component. Quantizing the first residual using one quantization step can effectively reduce a large quantization error and redundant quantization values. Therefore, coding efficiency can be improved.
 第2量子化ステップは、第2距離が大きいほど小さくなるように算出される。 The second quantization step is calculated so as to decrease as the second distance increases.
 三次元点によっては、その距離成分及び周辺の三次元点の距離成分の少なくとも一方が大きいほど角度成分のインター予測が当たりにくくなる場合がある。この場合においても距離成分に応じて適応的に量子化をすることで、量子化誤差が大きくなることと、量子化値が冗長になることとを効果的に低減しうる。よって、符号化効率を向上しうる。 Depending on the 3D point, the larger at least one of the distance component and the distance components of surrounding 3D points, the more difficult it is to inter-predict the angle component. Even in this case, by adaptively quantizing according to the distance component, it is possible to effectively reduce the increase in quantization error and the redundancy of quantized values. Therefore, coding efficiency can be improved.
 例えば、三次元データ符号化装置100、130は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。 For example, the 3D data encoding devices 100 and 130 each include a processor and memory, and the processor uses the memory to perform the above processing.
 また、本実施の形態に係る三次元データ復号装置120、150は、図12に示す処理(三次元データ復号方法)を行う。三次元データ復号装置120、150は、それぞれが距離成分と角度成分とで表される複数の三次元点のうちの第1三次元点の角度成分と、インター予測で算出された、第1三次元点の角度成分の予測値との第1残差を取得する(S171)。次に、三次元データ復号装置120、150は、第1量子化ステップを用いて第1残差を逆量子化する(S172)。第1量子化ステップは、第1三次元点の距離成分、及び、復号済みの1以上の第2三次元点の距離成分の少なくとも一方から得られる第1距離に応じて算出される。 Also, the three-dimensional data decoding devices 120 and 150 according to the present embodiment perform the processing (three-dimensional data decoding method) shown in FIG. Three-dimensional data decoding devices 120 and 150 each generate an angle component of a first three-dimensional point among a plurality of three-dimensional points each represented by a distance component and an angle component, and a first cubic A first residual from the predicted value of the angle component of the original point is acquired (S171). Next, the 3D data decoding devices 120 and 150 inversely quantize the first residual using the first quantization step (S172). The first quantization step is calculated according to the first distance obtained from at least one of the distance component of the first three-dimensional point and the distance component of one or more decoded second three-dimensional points.
 三次元点によっては、その距離成分及び周辺の三次元点の距離成分の少なくとも一方に応じて角度成分のインター予測の当たりやすさが変化する場合がある。例えば、インター予測において、遠い位置(または近い位置)で角度成分の予測が当たりやすくなり、残差が小さくなる場合がある。換言すれば、近い位置(または遠い位置)で角度成分の予測が外れやすくなり、残差が大きくなる場合がある。よって、第1三次元点の距離成分及び周辺の1以上の第2三次元点の距離成分の少なくとも一方に応じて算出された第1量子化ステップを用いて量子化されて符号化効率が向上された可能性がある可能性がある第1残差を適切に復号できる。 Depending on the 3D point, the likelihood of inter-prediction of the angle component may change depending on at least one of the distance component and the distance components of surrounding 3D points. For example, in inter-prediction, there are cases where angle components are more likely to be predicted at distant positions (or near positions), resulting in smaller residuals. In other words, the prediction of the angle component is likely to go wrong at a near position (or a far position), and the residual error may become large. Therefore, quantization is performed using the first quantization step calculated according to at least one of the distance component of the first three-dimensional point and the distance component of one or more surrounding second three-dimensional points, thereby improving the coding efficiency. It is possible to properly decode the first residual that may have been modified.
 例えば、1以上の第2三次元点は、複数の三次元点の復号順において第1三次元点より前に復号される。 For example, one or more second 3D points are decoded before the first 3D point in the decoding order of the plurality of 3D points.
 例えば、三次元データ復号装置120、150は、さらに、複数の三次元点のうちの第3三次元点の角度成分と、イントラ予測で算出された、第3三次元点の角度成分の予測値との第2残差を取得する。次に、三次元データ復号装置120、150は、第1量子化ステップと異なる第2量子化ステップを用いて第2残差を逆量子化する。 For example, the 3D data decoding devices 120 and 150 further include the angle component of the third 3D point among the plurality of 3D points and the predicted value of the angle component of the third 3D point calculated by intra prediction. Obtain the second residual with Next, the 3D data decoding devices 120 and 150 inversely quantize the second residual using a second quantization step different from the first quantization step.
 三次元点によっては、予測方式によって角度成分の残差が大きくなったり小さくなったりする場合がある。このため、角度成分の残差が距離成分に加えて、予測方式に応じて変化する場合に、距離成分及び予測方式に応じて適応的に算出された量子化ステップを用いて量子化されて符号化効率が向上された可能性がある第1残差を適切に復号することができる。 Depending on the 3D point, the residual error of the angle component may increase or decrease depending on the prediction method. Therefore, when the residual of the angle component changes according to the prediction method in addition to the distance component, it is quantized and encoded using a quantization step adaptively calculated according to the distance component and the prediction method. It is possible to properly decode the first residual, which may have improved coding efficiency.
 例えば、第2量子化ステップは、第3三次元点の距離成分、及び、復号済みの1以上の第4三次元点の距離成分の少なくとも一方から得られる第2距離に応じて算出される。 For example, the second quantization step is calculated according to the second distance obtained from at least one of the distance component of the third three-dimensional point and the distance component of one or more decoded fourth three-dimensional points.
 イントラ予測においても距離成分に応じて適応的に量子化されて符号化効率が向上された可能性がある第2残差を適切に復号することができる。 Also in intra prediction, it is possible to appropriately decode the second residual, which may have been adaptively quantized according to the distance component to improve the coding efficiency.
 例えば、第1量子化ステップは、第1三次元点の角度成分の第1予測精度が小さいほど大きくなるように算出される。 For example, the first quantization step is calculated so as to increase as the first prediction accuracy of the angle component of the first three-dimensional point decreases.
 第1予測精度が大きいほど、より正確な予測値が生成されるため、残差が小さくなる。反対に、第1予測精度が小さいほど、不正確な予測値が生成されるため、残差が大きくなる。よって、第1予測精度が小さいほど大きくなるように第1量子化ステップを算出することで、量子化誤差が大きくなることと、量子化値が冗長になることとが低減された可能性がある第1残差を適切に復号できる。 The higher the first prediction accuracy is, the smaller the residual error is because a more accurate prediction value is generated. Conversely, the smaller the first prediction accuracy, the larger the residual, because an inaccurate prediction is generated. Therefore, by calculating the first quantization step so that the smaller the first prediction accuracy, the larger the quantization error, and the redundant quantization value may be reduced. The first residual can be properly decoded.
 例えば、三次元データ復号装置120、150は、第1基準値を取得する。第1量子化ステップは、第1距離及び第1基準値に応じて算出される。第1基準値は、第1予測精度が小さいほど第1量子化ステップが大きくなるように算出されるための基準値である。 For example, the 3D data decoding devices 120 and 150 acquire the first reference value. A first quantization step is calculated according to the first distance and the first reference value. The first reference value is a reference value for calculation such that the smaller the first prediction accuracy, the larger the first quantization step.
 第1基準値は、第1予測精度が小さいほど大きくなるように第1量子化ステップが算出されるための基準値であるため、第1予測精度が小さいほど大きくなるように第1量子化ステップを算出することで、量子化誤差が大きくなることと、量子化値が冗長になることとを低減された可能性がある第1残差を適切に復号できる。 The first reference value is a reference value for calculating the first quantization step so that the smaller the first prediction accuracy, the larger the first quantization step. By calculating , it is possible to appropriately decode the first residual that may have reduced the increase in quantization error and redundant quantization values.
 例えば、三次元データ復号装置120、150は、さらに、第2基準値を取得する。第2量子化ステップは、第2距離及び第2基準値に応じて算出される。第2基準値は、第3三次元点の角度成分の第2予測精度が小さいほど大きくなるように第2量子化ステップが算出されるための基準値である。 For example, the 3D data decoding devices 120 and 150 further acquire a second reference value. A second quantization step is calculated according to the second distance and the second reference value. The second reference value is a reference value for calculating the second quantization step such that the smaller the second prediction accuracy of the angular component of the third three-dimensional point, the larger the second quantization step.
 第2基準値は、第2予測精度が小さいほど大きくなるように第2量子化ステップが算出されるための基準値であるため、第2予測精度が小さいほど大きくなるように第2量子化ステップを算出することができる。このため、量子化誤差が大きくなることと、量子化値が冗長になることとが低減された可能性がある第2残差を適切に復号できる。 The second reference value is a reference value for calculating the second quantization step so that the smaller the second prediction accuracy, the larger the second quantization step. can be calculated. Therefore, it is possible to appropriately decode the second residual that may have reduced the increase in quantization error and redundant quantization values.
 例えば、第1量子化ステップは、第1距離が大きいほど小さくなるように算出される。 For example, the first quantization step is calculated so as to decrease as the first distance increases.
 三次元点によっては、その距離成分及び周辺の三次元点の距離成分の少なくとも一方が大きいほど角度成分のインター予測が当たりにくくなる場合があるため、距離成分に応じて適応的に算出された第1量子化ステップを用いて量子化されて符号化効率が向上された可能性がある第1残差を適切に復号できる。 Depending on the 3D point, the larger at least one of the distance component and the distance components of surrounding 3D points is, the more difficult it is to inter-predict the angle component. The first residual, which may have been quantized using one quantization step to improve coding efficiency, can be properly decoded.
 例えば、第2量子化ステップは、第2距離が大きいほど小さくなるように算出される。 For example, the second quantization step is calculated so as to decrease as the second distance increases.
 三次元点によっては、その距離成分及び周辺の三次元点の距離成分の少なくとも一方が大きいほど角度成分のインター予測が当たりにくくなる場合がある。この場合においても距離成分に応じて適応的に量子化されて符号化効率が向上された可能性がある第2残差を適切に復号できる。 Depending on the 3D point, the larger at least one of the distance component and the distance components of surrounding 3D points, the more difficult it is to inter-predict the angle component. Even in this case, it is possible to appropriately decode the second residual, which may have been adaptively quantized according to the distance component and thus improved in coding efficiency.
 例えば、三次元データ復号装置120、150は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。 For example, the 3D data decoding devices 120 and 150 include a processor and memory, and the processor uses the memory to perform the above processing.
 (変形例)
 上記実施の形態では、三次元データ符号化装置100、130は、適応量子化を実行し、適応量子化においてインター予測とイントラ予測とで用いる量子化ステップを切り替えるとしたが、これに限らずに、適応量子化を実行することに関わらず、量子化においてインター予測とイントラ予測とで用いる量子化ステップを切り替えてもよい。同様に、三次元データ復号装置120、150は、逆適応量子化を実行し、逆適応量子化において、インター予測とイントラ予測とで用いる量子化ステップを切り替えるとしたが、これに限らずに、逆適応量子化を実行することに関わらず、逆量子化においてインター予測とイントラ予測とで用いる量子化ステップを切り替えてもよい。
(Modification)
In the above embodiments, three-dimensional data encoding apparatuses 100 and 130 perform adaptive quantization and switch the quantization step used between inter prediction and intra prediction in adaptive quantization. , the quantization step used in inter prediction and intra prediction in quantization may be switched regardless of whether adaptive quantization is performed. Similarly, the three-dimensional data decoding devices 120 and 150 perform inverse adaptive quantization, and in the inverse adaptive quantization, switch the quantization step used between inter prediction and intra prediction. Regardless of executing inverse adaptive quantization, the quantization step used in inter prediction and intra prediction in inverse quantization may be switched.
 変形例に係る三次元データ符号化装置100、130は、図13に示す処理(三次元データ符号化方法)を行う。三次元データ符号化装置100、130は、インター予測及びイントラ予測の一方の予測方式で、三次元点の位置の予測値を算出する(S181)。次に、三次元データ符号化装置100、130は、予測値と位置との残差を算出する(S182)。三次元データ符号化装置100、130は、予測方式に応じた量子化ステップを用いて残差を量子化する(S183~S185)。つまり、三次元データ符号化装置100、130は、予測値がインター予測で算出された場合、第1量子化ステップを用いて残差を量子化する。また、三次元データ符号化装置100、130は、予測値がイントラ予測で算出された場合(S173でイントラ予測)、第1量子化ステップと異なる第2量子化ステップを用いて残差を量子化する(S185)。なお、三次元点の位置は、直交座標で表現されてもよいし、極座標で表現されてもよい。 The three-dimensional data encoding devices 100 and 130 according to the modified examples perform the processing (three-dimensional data encoding method) shown in FIG. The 3D data encoding devices 100 and 130 calculate the predicted value of the position of the 3D point using one of inter prediction and intra prediction (S181). Next, the 3D data encoding device 100, 130 calculates the residual between the predicted value and the position (S182). The 3D data encoding apparatuses 100 and 130 quantize the residual using a quantization step according to the prediction method (S183-S185). That is, the 3D data encoding apparatuses 100 and 130 quantize the residual using the first quantization step when the prediction value is calculated by inter prediction. Further, when the prediction value is calculated by intra prediction (intra prediction in S173), the 3D data encoding apparatuses 100 and 130 quantize the residual using a second quantization step different from the first quantization step. (S185). The positions of the three-dimensional points may be represented by orthogonal coordinates or polar coordinates.
 三次元点によっては、予測方式によって位置の残差が大きくなったり小さくなったりする場合がある。このため、位置の残差が予測方式に応じて変化する場合に、予測方式に応じて算出された量子化ステップを用いて残差を量子化することで、符号化効率を向上しうる。 Depending on the 3D point, the positional residual may be larger or smaller depending on the prediction method. Therefore, when the position residual varies according to the prediction method, the coding efficiency can be improved by quantizing the residual using the quantization step calculated according to the prediction method.
 例えば、三次元データ符号化装置100、130は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。 For example, the 3D data encoding devices 100 and 130 each include a processor and memory, and the processor uses the memory to perform the above processing.
 変形例に係る三次元データ復号装置120、150は、図14に示す処理(三次元データ復号方法)を行う。三次元データ復号装置120、150は、三次元点の位置と、インター予測及びイントラ予測の一方の予測方式で算出された予測値との残差を取得する(S191)。三次元データ復号装置120、150は、予測方式に応じた量子化ステップを用いて残差を逆量子化する(S192~S194)。つまり、三次元データ復号装置120、150は、予測値がインター予測で算出された場合(S192でインター予測)、第1量子化ステップを用いて残差を逆量子化する(S193)。また、三次元データ復号装置120、150は、予測値がイントラ予測で算出された場合(S192でイントラ予測)、第1量子化ステップと異なる第2量子化ステップを用いて残差を逆量子化する(S194)。なお、三次元点の位置は、直交座標で表現されてもよいし、極座標で表現されてもよい。 The 3D data decoding devices 120 and 150 according to the modification perform the processing (3D data decoding method) shown in FIG. The 3D data decoding devices 120 and 150 obtain residuals between the position of the 3D point and the predicted value calculated by one of the inter prediction and intra prediction (S191). The 3D data decoding devices 120 and 150 inversely quantize the residual using a quantization step according to the prediction method (S192-S194). That is, when the prediction value is calculated by inter prediction (inter prediction in S192), 3D data decoding apparatuses 120 and 150 inversely quantize the residual using the first quantization step (S193). Further, when the prediction value is calculated by intra prediction (intra prediction in S192), 3D data decoding devices 120 and 150 inversely quantize the residual using a second quantization step different from the first quantization step. (S194). The positions of the three-dimensional points may be represented by orthogonal coordinates or polar coordinates.
 三次元点によっては、予測方式によって位置の残差が大きくなったり小さくなったりする場合がある。このため、位置の残差が予測方式に応じて変化する場合に、予測方式に応じて算出された量子化ステップを用いて量子化されて符号化効率が向上された可能性がある残差を適切に復号できる。 Depending on the 3D point, the positional residual may be larger or smaller depending on the prediction method. For this reason, when the position residual changes according to the prediction method, the residual that may have been quantized using the quantization step calculated according to the prediction method to improve the coding efficiency is can be decrypted properly.
 例えば、三次元データ復号装置120、150は、プロセッサと、メモリとを備え、プロセッサは、メモリを用いて、上記の処理を行う。 For example, the 3D data decoding devices 120 and 150 include a processor and memory, and the processor uses the memory to perform the above processing.
 以上、本開示の実施の形態及び変形例に係る三次元データ符号化装置及び三次元データ復号装置等について説明したが、本開示は、この実施の形態に限定されるものではない。 Although the three-dimensional data encoding device and the three-dimensional data decoding device according to the embodiment and modifications of the present disclosure have been described above, the present disclosure is not limited to this embodiment.
 また、上記実施の形態に係る三次元データ符号化装置及び三次元データ復号装置等に含まれる各処理部は典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されてもよいし、一部又は全てを含むように1チップ化されてもよい。 Also, each processing unit included in the three-dimensional data encoding device, the three-dimensional data decoding device, etc. according to the above embodiments is typically realized as an LSI, which is an integrated circuit. These may be made into one chip individually, or may be made into one chip so as to include part or all of them.
 また、集積回路化はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、又はLSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。 In addition, circuit integration is not limited to LSIs, and may be realized with dedicated circuits or general-purpose processors. An FPGA (Field Programmable Gate Array) that can be programmed after the LSI is manufactured, or a reconfigurable processor that can reconfigure the connections and settings of the circuit cells inside the LSI may be used.
 また、上記各実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPUまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。 In addition, in each of the above embodiments, each component may be configured with dedicated hardware or realized by executing a software program suitable for each component. Each component may be realized by reading and executing a software program recorded in a recording medium such as a hard disk or a semiconductor memory by a program execution unit such as a CPU or processor.
 また、本開示は、三次元データ符号化装置及び三次元データ復号装置等により実行される三次元データ符号化方法又は三次元データ復号方法等として実現されてもよい。 Also, the present disclosure may be implemented as a three-dimensional data encoding method, a three-dimensional data decoding method, or the like executed by a three-dimensional data encoding device, a three-dimensional data decoding device, or the like.
 また、ブロック図における機能ブロックの分割は一例であり、複数の機能ブロックを一つの機能ブロックとして実現したり、一つの機能ブロックを複数に分割したり、一部の機能を他の機能ブロックに移してもよい。また、類似する機能を有する複数の機能ブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。 Also, the division of functional blocks in the block diagram is an example, and a plurality of functional blocks can be realized as one functional block, one functional block can be divided into a plurality of functional blocks, and some functions can be moved to other functional blocks. may Moreover, single hardware or software may process the functions of a plurality of functional blocks having similar functions in parallel or in a time-sharing manner.
 また、フローチャートにおける各ステップが実行される順序は、本開示を具体的に説明するために例示するためのものであり、上記以外の順序であってもよい。また、上記ステップの一部が、他のステップと同時(並列)に実行されてもよい。 Also, the order in which each step in the flowchart is executed is for illustrative purposes in order to specifically describe the present disclosure, and orders other than the above may be used. Also, some of the above steps may be executed concurrently (in parallel) with other steps.
 以上、一つまたは複数の態様に係る三次元データ符号化装置及び三次元データ復号装置等について、実施の形態に基づいて説明したが、本開示は、この実施の形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、一つまたは複数の態様の範囲内に含まれてもよい。 The three-dimensional data encoding device and the three-dimensional data decoding device according to one or more aspects have been described above based on the embodiments, but the present disclosure is not limited to these embodiments. . As long as it does not deviate from the spirit of the present disclosure, various modifications that a person skilled in the art can think of are applied to this embodiment, and a form constructed by combining the components of different embodiments is also within the scope of one or more aspects may be included within
 本開示は、三次元データ符号化装置及び三次元データ復号装置に適用できる。 The present disclosure can be applied to a 3D data encoding device and a 3D data decoding device.
 100、130 三次元データ符号化装置
 101、132 グループ化部
 102、105、107、123、125、133、136、138、143、153、155 バッファ
 103、134 適応量子化部
 104、122、135、152 適応逆量子化部
 106、124、137、154 イントラ予測部
 108、139 動き補償部
 109、127、140、157 インター予測部
 110、128、141、158 切替部
 111、145 エントロピー符号化部
 120、150 三次元データ復号装置
 121、151 エントロピー復号部
 126、156 動き補償部
 131、142、159 座標変換部
 144 量子化部
100, 130 three-dimensional data encoding device 101, 132 grouping section 102, 105, 107, 123, 125, 133, 136, 138, 143, 153, 155 buffer 103, 134 adaptive quantization section 104, 122, 135, 152 adaptive inverse quantization section 106, 124, 137, 154 intra prediction section 108, 139 motion compensation section 109, 127, 140, 157 inter prediction section 110, 128, 141, 158 switching section 111, 145 entropy coding section 120, 150 three-dimensional data decoding device 121, 151 entropy decoding unit 126, 156 motion compensation unit 131, 142, 159 coordinate transformation unit 144 quantization unit

Claims (24)

  1.  それぞれが距離成分と角度成分とで表される複数の三次元点のうちの第1三次元点の角度成分と、インター予測で算出された、前記第1三次元点の前記角度成分の予測値との第1残差を算出し、
     第1量子化ステップを用いて前記第1残差を量子化し、
     前記第1量子化ステップは、前記第1三次元点の距離成分、及び、前記複数の三次元点に含まれ且つ前記第1三次元点の周辺に位置する1以上の第2三次元点の距離成分の少なくとも一方に応じて算出される
     三次元データ符号化方法。
    An angle component of a first three-dimensional point among a plurality of three-dimensional points each represented by a distance component and an angle component, and a predicted value of the angle component of the first three-dimensional point calculated by inter prediction. Calculate the first residual with
    quantizing the first residual using a first quantization step;
    In the first quantization step, a distance component of the first three-dimensional point and one or more second three-dimensional points included in the plurality of three-dimensional points and located around the first three-dimensional point. A three-dimensional data encoding method calculated according to at least one of the distance components.
  2.  前記1以上の第2三次元点は、前記複数の三次元点の符号化順において前記第1三次元点より前に符号化される
     請求項1に記載の三次元データ符号化方法。
    The 3D data encoding method of claim 1, wherein the one or more second 3D points are encoded before the first 3D points in the encoding order of the plurality of 3D points.
  3.  さらに、
     前記複数の三次元点のうちの第3三次元点の角度成分と、イントラ予測で算出された、前記第3三次元点の前記角度成分の予測値との第2残差を算出し、
     前記第1量子化ステップと異なる第2量子化ステップを用いて前記第2残差を量子化する
     請求項1に記載の三次元データ符号化方法。
    moreover,
    calculating a second residual between an angular component of a third three-dimensional point among the plurality of three-dimensional points and a predicted value of the angular component of the third three-dimensional point calculated by intra prediction;
    The three-dimensional data encoding method according to claim 1, wherein the second residual is quantized using a second quantization step different from the first quantization step.
  4.  前記第2量子化ステップは、前記第3三次元点の距離成分、及び、前記複数の三次元点に含まれ且つ前記第3三次元点の周辺に位置する1以上の第4三次元点の距離成分の少なくとも一方に応じて算出される
     請求項3に記載の三次元データ符号化方法。
    The second quantization step includes calculating the distance component of the third three-dimensional point and one or more fourth three-dimensional points included in the plurality of three-dimensional points and located around the third three-dimensional point. The three-dimensional data encoding method according to claim 3, wherein the distance component is calculated according to at least one of the distance components.
  5.  前記第1量子化ステップは、前記第1三次元点の前記角度成分の前記予測値の第1予測精度が小さいほど大きくなるように算出される
     請求項1に記載の三次元データ符号化方法。
    The three-dimensional data encoding method according to claim 1, wherein the first quantization step is calculated so as to increase as the first prediction accuracy of the predicted value of the angular component of the first three-dimensional point decreases.
  6.  前記第1量子化ステップは、前記第1三次元点の距離成分、及び、前記1以上の第2三次元点の距離成分の少なくとも一方と第1基準値とに応じて算出され、
     前記第1基準値は、前記第1予測精度が小さいほど大きくなるように前記第1量子化ステップが算出されるための基準値であり、
     前記三次元データ符号化方法は、さらに、量子化された前記第1残差及び前記第1基準値を含むビットストリームを生成する
     請求項5に記載の三次元データ符号化方法。
    The first quantization step is calculated according to at least one of the distance component of the first three-dimensional point and the distance component of the one or more second three-dimensional points and a first reference value,
    The first reference value is a reference value for calculating the first quantization step such that the smaller the first prediction accuracy, the larger the first quantization step;
    6. The 3D data encoding method of claim 5, wherein the 3D data encoding method further generates a bitstream including the quantized first residual and the first reference value.
  7.  さらに、
     前記複数の三次元点のうちの第3三次元点の角度成分と、イントラ予測で算出された、前記第3三次元点の前記角度成分の予測値との第2残差を算出し、
     前記第1量子化ステップと異なる第2量子化ステップを用いて前記第2残差を量子化し、
     前記第2量子化ステップは、前記第3三次元点の距離成分、及び、前記複数の三次元点に含まれ且つ前記第3三次元点の周辺に位置する1以上の第4三次元点の距離成分の少なくとも一方と、第2基準値とに応じて算出され、
     前記第2基準値は、前記第3三次元点の前記角度成分の前記予測値の第2予測精度が小さいほど大きくなるように前記第2量子化ステップが算出されるための基準値であり、
     前記ビットストリームは、さらに、量子化された前記第2残差及び前記第2基準値を含む
     請求項6に記載の三次元データ符号化方法。
    moreover,
    calculating a second residual between an angular component of a third three-dimensional point among the plurality of three-dimensional points and a predicted value of the angular component of the third three-dimensional point calculated by intra prediction;
    quantizing the second residual using a second quantization step different from the first quantization step;
    The second quantization step includes calculating the distance component of the third three-dimensional point and one or more fourth three-dimensional points included in the plurality of three-dimensional points and located around the third three-dimensional point. Calculated according to at least one of the distance components and the second reference value,
    the second reference value is a reference value for calculating the second quantization step such that the second prediction accuracy of the predicted value of the angle component of the third three-dimensional point is smaller, the second prediction accuracy is higher;
    7. The method of claim 6, wherein the bitstream further comprises the quantized second residual and the second reference value.
  8.  前記第1量子化ステップは、前記第1三次元点の距離成分、及び、前記1以上の第2三次元点の距離成分の少なくとも一方が大きいほど小さくなるように算出される
     請求項1に記載の三次元データ符号化方法。
    The first quantization step is calculated so as to decrease as at least one of the distance component of the first three-dimensional point and the distance component of the one or more second three-dimensional points increases. three-dimensional data encoding method.
  9.  さらに、
     前記複数の三次元点のうちの第3三次元点の角度成分と、イントラ予測で算出された、前記第3三次元点の前記角度成分の予測値との第2残差を算出し、
     前記第1量子化ステップと異なる第2量子化ステップを用いて前記第2残差を量子化し、
     前記第2量子化ステップは、前記第3三次元点の距離成分、及び、前記複数の三次元点に含まれ且つ前記第3三次元点の周辺に位置する1以上の第4三次元点の距離成分の少なくとも一方が大きいほど小さくなるように算出される
     請求項8に記載の三次元データ符号化方法。
    moreover,
    calculating a second residual between an angular component of a third three-dimensional point among the plurality of three-dimensional points and a predicted value of the angular component of the third three-dimensional point calculated by intra prediction;
    quantizing the second residual using a second quantization step different from the first quantization step;
    The second quantization step includes calculating the distance component of the third three-dimensional point and one or more fourth three-dimensional points included in the plurality of three-dimensional points and located around the third three-dimensional point. 9. The three-dimensional data encoding method according to claim 8, wherein the distance component is calculated so as to be smaller as at least one of the distance components is larger.
  10.  インター予測及びイントラ予測の一方の予測方式で、三次元点の位置の予測値を算出し、
     前記予測値と前記位置との残差を算出し、
     前記予測方式に応じた量子化ステップを用いて前記残差を量子化する
     三次元データ符号化方法。
    Calculate the predicted value of the position of the three-dimensional point by one of the inter-prediction and intra-prediction prediction methods,
    calculating a residual between the predicted value and the position;
    A three-dimensional data encoding method, wherein the residual is quantized using a quantization step according to the prediction scheme.
  11.  それぞれが距離成分と角度成分とで表される複数の三次元点のうちの第1三次元点の前記角度成分と、インター予測で算出された、前記第1三次元点の前記角度成分の予測値との第1残差を取得し、
     第1量子化ステップを用いて前記第1残差を逆量子化し、
     前記第1量子化ステップは、前記第1三次元点の距離成分、及び、前記複数の三次元点に含まれ且つ前記第1三次元点の周辺に位置する1以上の第2三次元点の距離成分の少なくとも一方に応じて算出される
     三次元データ復号方法。
    The angle component of a first three-dimensional point among a plurality of three-dimensional points each represented by a distance component and an angle component, and prediction of the angle component of the first three-dimensional point calculated by inter prediction. get the first residual with the value
    inverse quantizing the first residual using a first quantization step;
    In the first quantization step, a distance component of the first three-dimensional point and one or more second three-dimensional points included in the plurality of three-dimensional points and located around the first three-dimensional point. A three-dimensional data decoding method calculated according to at least one of distance components.
  12.  前記1以上の第2三次元点は、前記複数の三次元点の復号順において前記第1三次元点より前に復号される
     請求項11に記載の三次元データ復号方法。
    12. The method of decoding 3D data according to claim 11, wherein the one or more second 3D points are decoded before the first 3D point in the decoding order of the plurality of 3D points.
  13.  さらに、
     前記複数の三次元点のうちの第3三次元点の角度成分と、イントラ予測で算出された、前記第3三次元点の前記角度成分の予測値との第2残差を取得し、
     前記第1量子化ステップと異なる第2量子化ステップを用いて前記第2残差を逆量子化する
     請求項11に記載の三次元データ復号方法。
    moreover,
    Obtaining a second residual between an angular component of a third three-dimensional point among the plurality of three-dimensional points and a predicted value of the angular component of the third three-dimensional point calculated by intra prediction;
    12. The three-dimensional data decoding method according to claim 11, wherein the second residual is inversely quantized using a second quantization step different from the first quantization step.
  14.  前記第2量子化ステップは、前記第3三次元点の距離成分、及び、前記複数の三次元点に含まれ且つ前記第3三次元点の周辺に位置する1以上の第4三次元点の距離成分の少なくとも一方に応じて算出される
     請求項13に記載の三次元データ復号方法。
    The second quantization step includes calculating the distance component of the third three-dimensional point and one or more fourth three-dimensional points included in the plurality of three-dimensional points and located around the third three-dimensional point. 14. The three-dimensional data decoding method according to claim 13, calculated according to at least one of the distance components.
  15.  前記第1量子化ステップは、前記第1三次元点の前記角度成分の前記予測値の第1予測精度が小さいほど大きくなるように算出される
     請求項11に記載の三次元データ復号方法。
    The three-dimensional data decoding method according to claim 11, wherein the first quantization step is calculated so as to increase as the first prediction accuracy of the predicted value of the angle component of the first three-dimensional point decreases.
  16.  さらに、
     第1基準値を取得し、
     前記第1量子化ステップは、前記第1三次元点の距離成分、及び、前記1以上の第2三次元点の距離成分の少なくとも一方と第1基準値とに応じて算出され、
     前記第1基準値は、前記第1予測精度が小さいほど前記第1量子化ステップが大きくなるように算出されるための基準値である
     請求項15に記載の三次元データ復号方法。
    moreover,
    obtain the first reference value;
    The first quantization step is calculated according to at least one of the distance component of the first three-dimensional point and the distance component of the one or more second three-dimensional points and a first reference value,
    The three-dimensional data decoding method according to claim 15, wherein the first reference value is a reference value for calculation so that the first quantization step increases as the first prediction accuracy decreases.
  17.  さらに、
     前記複数の三次元点のうちの第3三次元点の角度成分と、イントラ予測で算出された、前記第3三次元点の前記角度成分の予測値との第2残差と第2基準値とを取得し、
     前記第1量子化ステップと異なる第2量子化ステップを用いて前記第2残差を逆量子化し、
     前記第2量子化ステップは、前記第3三次元点の距離成分、及び、前記複数の三次元点に含まれ且つ前記第3三次元点の周辺に位置する1以上の第4三次元点の距離成分の少なくとも一方と、第2基準値とに応じて算出され、
     前記第2基準値は、前記第3三次元点の前記角度成分の第2予測精度が小さいほど大きくなるように前記第2量子化ステップが算出されるための基準値である
     請求項16に記載の三次元データ復号方法。
    moreover,
    A second residual error and a second reference value between an angular component of a third three-dimensional point among the plurality of three-dimensional points and a predicted value of the angular component of the third three-dimensional point calculated by intra prediction. and get
    inverse quantizing the second residual using a second quantization step different from the first quantization step;
    The second quantization step includes calculating the distance component of the third three-dimensional point and one or more fourth three-dimensional points included in the plurality of three-dimensional points and located around the third three-dimensional point. Calculated according to at least one of the distance components and the second reference value,
    17. The second reference value according to claim 16, wherein the second reference value is a reference value for calculating the second quantization step such that the smaller the second prediction accuracy of the angle component of the third three-dimensional point, the larger the second prediction accuracy. three-dimensional data decoding method.
  18.  前記第1量子化ステップは、前記第1三次元点の距離成分、及び、前記1以上の第2三次元点の距離成分の少なくとも一方が大きいほど小さくなるように算出される
     請求項11に記載の三次元データ復号方法。
    12. The first quantization step is calculated so as to decrease as at least one of the distance component of the first three-dimensional point and the distance component of the one or more second three-dimensional points increases. three-dimensional data decoding method.
  19.  さらに、
     前記複数の三次元点のうちの第3三次元点の角度成分と、イントラ予測で算出された、前記第3三次元点の前記角度成分の予測値との第2残差を取得し、
     前記第1量子化ステップと異なる第2量子化ステップを用いて前記第2残差を逆量子化し、
     前記第2量子化ステップは、前記第3三次元点の距離成分、及び、前記複数の三次元点に含まれ且つ前記第3三次元点の周辺に位置する1以上の第4三次元点の距離成分の少なくとも一方が大きいほど小さくなるように算出される
     請求項18に記載の三次元データ復号方法。
    moreover,
    Obtaining a second residual between an angular component of a third three-dimensional point among the plurality of three-dimensional points and a predicted value of the angular component of the third three-dimensional point calculated by intra prediction;
    inverse quantizing the second residual using a second quantization step different from the first quantization step;
    The second quantization step includes calculating the distance component of the third three-dimensional point and one or more fourth three-dimensional points included in the plurality of three-dimensional points and located around the third three-dimensional point. The three-dimensional data decoding method according to claim 18, wherein the larger at least one of the distance components is calculated, the smaller the distance component.
  20.  三次元点の位置と、インター予測及びイントラ予測の一方の予測方式で算出された予測値との残差を取得し、
     前記予測方式に応じた量子化ステップを用いて前記残差を逆量子化する
     三次元データ復号方法。
    Obtaining the residual between the position of the three-dimensional point and the predicted value calculated by one of the inter prediction and intra prediction,
    A three-dimensional data decoding method, wherein the residual is inversely quantized using a quantization step according to the prediction scheme.
  21.  プロセッサと、
     メモリと、を備え、
     前記プロセッサは、前記メモリを用いて、
     それぞれが距離成分と角度成分とで表される複数の三次元点のうちの第1三次元点の角度成分と、インター予測で算出された、前記第1三次元点の前記角度成分の予測値との第1残差を算出し、
     第1量子化ステップを用いて前記第1残差を量子化し、
     前記第1量子化ステップは、前記第1三次元点の距離成分、及び、前記複数の三次元点に含まれ且つ前記第1三次元点の周辺に位置する1以上の第2三次元点の距離成分の少なくとも一方に応じて算出される
     三次元データ符号化装置。
    a processor;
    with memory and
    The processor, using the memory,
    An angle component of a first three-dimensional point among a plurality of three-dimensional points each represented by a distance component and an angle component, and a predicted value of the angle component of the first three-dimensional point calculated by inter prediction. Calculate the first residual with
    quantizing the first residual using a first quantization step;
    In the first quantization step, a distance component of the first three-dimensional point and one or more second three-dimensional points included in the plurality of three-dimensional points and located around the first three-dimensional point. A three-dimensional data encoding device calculated according to at least one of distance components.
  22.  プロセッサと、
     メモリと、を備え、
     前記プロセッサは、前記メモリを用いて、
     インター予測及びイントラ予測の一方の予測方式で、三次元点の位置の予測値を算出し、
     前記予測値と前記位置との残差を算出し、
     前記予測方式に応じた量子化ステップを用いて前記残差を量子化する
     三次元データ符号化装置。
    a processor;
    with memory and
    The processor, using the memory,
    Calculate the predicted value of the position of the three-dimensional point by one of the inter-prediction and intra-prediction prediction methods,
    calculating a residual between the predicted value and the position;
    A three-dimensional data encoding device that quantizes the residual using a quantization step according to the prediction method.
  23.  プロセッサと、
     メモリと、を備え、
     前記プロセッサは、前記メモリを用いて、
     それぞれが距離成分と角度成分とで表される複数の三次元点のうちの第1三次元点の前記角度成分と、インター予測で算出された、前記第1三次元点の前記角度成分の予測値との第1残差を取得し、
     第1量子化ステップを用いて前記第1残差を逆量子化し、
     前記第1量子化ステップは、前記第1三次元点の距離成分、及び、前記複数の三次元点に含まれ且つ前記第1三次元点の周辺に位置する1以上の第2三次元点の距離成分の少なくとも一方に応じて算出される
     三次元データ復号装置。
    a processor;
    with memory and
    The processor, using the memory,
    The angle component of a first three-dimensional point among a plurality of three-dimensional points each represented by a distance component and an angle component, and prediction of the angle component of the first three-dimensional point calculated by inter prediction. get the first residual with the value
    inverse quantizing the first residual using a first quantization step;
    In the first quantization step, a distance component of the first three-dimensional point and one or more second three-dimensional points included in the plurality of three-dimensional points and located around the first three-dimensional point. A three-dimensional data decoding device calculated according to at least one of distance components.
  24.  プロセッサと、
     メモリと、を備え、
     前記プロセッサは、前記メモリを用いて、
     三次元点の位置と、インター予測及びイントラ予測の一方の予測方式で算出された予測値との残差を取得し、
     前記予測方式に応じた量子化ステップを用いて前記残差を逆量子化する
     三次元データ復号装置。
    a processor;
    with memory and
    The processor, using the memory,
    Obtaining the residual between the position of the three-dimensional point and the predicted value calculated by one of the inter prediction and intra prediction,
    A three-dimensional data decoding device that inversely quantizes the residual using a quantization step according to the prediction method.
PCT/JP2022/023234 2021-06-11 2022-06-09 Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device WO2022260115A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2023527915A JPWO2022260115A1 (en) 2021-06-11 2022-06-09
CN202280038762.3A CN117396920A (en) 2021-06-11 2022-06-09 Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202163209687P 2021-06-11 2021-06-11
US63/209,687 2021-06-11

Publications (1)

Publication Number Publication Date
WO2022260115A1 true WO2022260115A1 (en) 2022-12-15

Family

ID=84425132

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/023234 WO2022260115A1 (en) 2021-06-11 2022-06-09 Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device

Country Status (3)

Country Link
JP (1) JPWO2022260115A1 (en)
CN (1) CN117396920A (en)
WO (1) WO2022260115A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020162495A1 (en) * 2019-02-05 2020-08-13 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
WO2020251888A1 (en) * 2019-06-11 2020-12-17 Tencent America LLC Method and apparatus for point cloud compression

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020162495A1 (en) * 2019-02-05 2020-08-13 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
WO2020251888A1 (en) * 2019-06-11 2020-12-17 Tencent America LLC Method and apparatus for point cloud compression

Also Published As

Publication number Publication date
JPWO2022260115A1 (en) 2022-12-15
CN117396920A (en) 2024-01-12

Similar Documents

Publication Publication Date Title
JP7323545B2 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
US11039163B2 (en) Adapting merge candidate positions and numbers according to size and/or shape of prediction block
US9185409B2 (en) Image prediction encoding/decoding system
US9036933B2 (en) Image encoding method and apparatus, image decoding method and apparatus, and programs therefor
JP2021529471A (en) Memory access window and padding for motion vector refinement and motion compensation
JP7358376B2 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
WO2022224888A1 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
EP4020396A1 (en) Method and apparatus of entropy encoding/decoding point cloud geometry data captured by a spinning sensors head
WO2022260115A1 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
WO2023002844A1 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
US20220343551A1 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
WO2023282127A1 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
WO2023276820A1 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
WO2023166888A1 (en) Decoding method, encoding method, decoding device, and encoding device
US20180249176A1 (en) Method and apparatus for encoding and decoding video signal
WO2022264938A1 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
WO2022259944A1 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
WO2024111355A1 (en) Decoding method, encoding method, decoding device, and encoding device
US20240233198A9 (en) Three-dimensional data decoding method, three-dimensional data decoding device, and three-dimensional data encoding device
WO2023135967A1 (en) Three-dimensional data decoding method, three-dimensional data encoding method, three-dimensional data decoding device, and three-dimensional data encoding device
WO2023199675A1 (en) Decoding method, encoding method, and decoding device
WO2024079985A1 (en) Point cloud decoding device, point cloud decoding method, and program
WO2023045443A1 (en) Method and apparatus of encoding/decoding point cloud geometry data sensed by at least one sensor
WO2024143031A1 (en) Decoding method, encoding method, decoding device, and encoding device
WO2024014205A1 (en) Decoding method, encoding method, decoding device, and encoding device

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: 22820294

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 202280038762.3

Country of ref document: CN

Ref document number: 2023527915

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22820294

Country of ref document: EP

Kind code of ref document: A1