Point cloud attribute encoding method, apparatus, decoding method and apparatus

By sorting point cloud data and constructing a multi-layer structure, and assigning a suitable encoding mode to each node, the problem of small space utilization in existing technologies is solved, and the encoding efficiency of point cloud data is improved.

CN115714864BActive Publication Date: 2026-06-30PENG CHENG LAB

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
PENG CHENG LAB
Filing Date
2021-08-23
Publication Date
2026-06-30

AI Technical Summary

Technical Problem

In existing technologies, point cloud attribute encoding methods have a small spatial utilization range, resulting in low encoding efficiency.

Method used

The point cloud data is sorted, a multi-layer structure is constructed, and a direct coding mode, predictive coding mode or transform coding mode is assigned to each node. Encoding is performed using neighboring node information or transform matrix.

Benefits of technology

It expands the scope of spatial utilization and improves the coding efficiency of point cloud data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115714864B_ABST
    Figure CN115714864B_ABST
Patent Text Reader

Abstract

This invention discloses a point cloud attribute encoding method, apparatus, decoding method, and apparatus. The point cloud attribute encoding method includes: sorting all point cloud data to be encoded to obtain sorted point cloud data, wherein the point cloud data to be encoded is point cloud data with attributes to be encoded; constructing a multi-layer structure based on all sorted point cloud data and the distances between each sorted point cloud data; obtaining the encoding method corresponding to each node in the multi-layer structure, wherein the encoding method corresponding to a node is a direct encoding mode, a predictive encoding mode, or a transform encoding mode, wherein the predictive encoding mode encodes the node based on information from its neighboring nodes, and the transform encoding mode encodes the node based on a transform matrix; and performing point cloud attribute encoding on each node based on the multi-layer structure and the corresponding encoding method. Compared with existing technologies, this invention improves the overall encoding efficiency of point cloud data.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of point cloud data processing technology, and in particular to a point cloud attribute encoding method, apparatus, decoding method, and apparatus. Background Technology

[0002] With the advancement of science and technology, especially the rapid development of 3D scanning equipment, the application of 3D reconstruction technology is becoming increasingly widespread, and the accuracy and resolution of point clouds are also getting higher and higher. A single frame of point cloud typically contains millions of points, with each point containing geometric information and attribute information such as color and reflectivity, resulting in a massive amount of data. Therefore, compression encoding and decoding of point cloud data are crucial during transmission and use.

[0003] In existing technologies, point cloud attributes are typically encoded and decoded using prediction methods. Specifically, during the encoding process, each point is encoded sequentially, and the attribute value of a given point is predicted using information from previously encoded points. The encoding of that point is then completed based on the predicted value and the actual attribute value. The problem with existing technologies is that prediction methods have limited spatial utilization, which hinders the improvement of encoding efficiency.

[0004] Therefore, existing technologies still need improvement and development. Summary of the Invention

[0005] The main objective of this invention is to provide a point cloud attribute encoding method, apparatus, decoding method, and apparatus, aiming to solve the problem that the spatial utilization range of the prediction method used in the prior art is small, which is not conducive to improving encoding efficiency.

[0006] Sort all the point cloud data to be encoded to obtain sorted point cloud data, where the point cloud data to be encoded is the point cloud data with attributes to be encoded.

[0007] A multi-layer structure is constructed based on all the above-mentioned sorted point cloud data and the distances between each of the above-mentioned sorted point cloud data.

[0008] Obtain the encoding method corresponding to each node in the above multi-layer structure. The encoding method corresponding to one of the above nodes is a direct encoding mode, a predictive encoding mode, or a transform encoding mode. The predictive encoding mode encodes the above node based on the information of the neighboring nodes corresponding to the above node, and the transform encoding mode encodes the above node based on the transform matrix.

[0009] Based on the above multi-layer structure and the corresponding encoding method, point cloud attribute encoding is performed on each of the above nodes.

[0010] Optionally, the above process sorts all the point cloud data to be encoded to obtain sorted point cloud data, including:

[0011] Based on the three-dimensional coordinates of each of the above-mentioned point cloud data to be encoded, all the above-mentioned point cloud data to be encoded are arranged from a three-dimensional distribution to a one-dimensional order according to a preset rule to obtain sorted point cloud data.

[0012] Optionally, the above-mentioned multi-layer structure is constructed based on all the sorted point cloud data and the distances between each of the sorted point cloud data, including:

[0013] All the sorted point cloud data mentioned above are taken as the lowest-level nodes;

[0014] A multi-layer structure is constructed from bottom to top based on all the nodes at the bottom layer and the distances between each of the nodes at the bottom layer. In the multi-layer structure, the distance between multiple child nodes corresponding to a parent node is less than a preset distance threshold.

[0015] Optionally, the above-mentioned method for obtaining the encoding method corresponding to each node in the multi-layer structure includes, wherein the encoding method corresponding to one of the nodes is a predictive coding mode, a transform coding mode, a direct coding mode, a predictive coding mode, or a transform coding mode, including:

[0016] The encoding method corresponding to all directly encoded nodes in the above multi-layer structure is set to direct encoding mode. The above directly encoded nodes are the nodes of the first layer in the above multi-layer structure.

[0017] The encoding method corresponding to all predictive coding nodes in the above multi-layer structure is set as the predictive coding mode. The above predictive coding nodes are nodes from the second layer to the Mth layer of the above multi-layer structure that do not have a parent node.

[0018] The encoding method corresponding to all transformation encoding nodes in the above multi-layer structure is set as transformation encoding mode. The above transformation encoding nodes are nodes with parent nodes in the second to Mth layers of the above multi-layer structure.

[0019] The aforementioned multi-layer structure includes M layers, with the Mth layer being the lowest layer.

[0020] Optionally, the direct encoding mode encodes the direct encoding node directly based on the information of the direct encoding node; the predictive encoding mode encodes the predictive encoding node based on the information of neighboring nodes within the neighborhood of the predictive encoding node; and the transform encoding mode encodes the transform encoding node using a transform matrix.

[0021] Optionally, based on the aforementioned multi-layer structure and corresponding encoding methods, point cloud attribute encoding is performed on each of the aforementioned nodes, including:

[0022] Based on the above multi-layer structure, the first attribute coefficient of each of the above nodes is calculated from bottom to top. Among them, the first attribute coefficient of the node in the lowest layer of the above multi-layer structure is the original attribute value of the point cloud corresponding to the node, and the first attribute coefficient of the nodes in other layers is the DC coefficient corresponding to the node.

[0023] Based on the above multi-layer structure, the first attribute coefficients of each of the above nodes, and the encoding methods corresponding to each of the above nodes, each of the above nodes is encoded from top to bottom.

[0024] Optionally, based on the aforementioned multi-layer structure, the first attribute coefficients of each of the aforementioned nodes, and the encoding method corresponding to each of the aforementioned nodes, the aforementioned nodes are encoded from top to bottom, including:

[0025] Based on m=1 to m=M-1, the above multi-layer structure is traversed from top to bottom, and the following steps are performed to obtain the second attribute coefficient and / or first attribute residual coefficient corresponding to each node: the node of the m-th layer is taken as the first target node, and the second attribute coefficient of each first target node and the reconstructed first attribute coefficient of the child nodes of each first target node are calculated and obtained respectively; for each of the above predicted coding nodes in the m+1-th layer, the second target node corresponding to each of the above predicted coding nodes is obtained in the m+1-th layer, and the first attribute residual coefficient of the corresponding predicted coding node is estimated and obtained based on the second target node; wherein, the second attribute coefficient is the communication coefficient corresponding to the node, and the second target node is the K nodes in the m+1-th layer that are closest to the above predicted coding node and whose reconstructed first attribute coefficient has been calculated, where K is the preset search number;

[0026] The first attribute coefficients of each node in the first layer of the multi-layer structure and the second attribute coefficients and / or first attribute residual coefficients of each node in other layers are quantized and entropy encoded.

[0027] A second aspect of the present invention provides a point cloud attribute encoding device, wherein the device comprises:

[0028] The sorting module is used to sort all the point cloud data to be encoded and obtain sorted point cloud data, wherein the point cloud data to be encoded is the point cloud data with attributes to be encoded.

[0029] A multi-layer structure building module is used to build a multi-layer structure based on all the above-mentioned sorted point cloud data and the distances between each of the above-mentioned sorted point cloud data.

[0030] The encoding method acquisition module is used to acquire the encoding method corresponding to each node in the above multi-layer structure. The encoding method corresponding to a node is a direct encoding mode, a predictive encoding mode, or a transform encoding mode. The predictive encoding mode encodes the node based on the information of the neighboring nodes corresponding to the node, and the transform encoding mode encodes the node based on the transform matrix.

[0031] The encoding module is used to encode the point cloud attributes of each of the above nodes based on the above multi-layer structure and the corresponding encoding method.

[0032] A third aspect of the present invention provides a point cloud attribute decoding method, wherein the method includes:

[0033] Sort all point cloud data to be decoded to obtain sorted point cloud data to be decoded, wherein the above point cloud data to be decoded is point cloud data with attributes to be decoded;

[0034] A multi-layer structure is constructed based on all the above-mentioned point cloud data to be decoded and sorted, as well as the distances between each of the above-mentioned point cloud data to be decoded and sorted.

[0035] Obtain the decoding method corresponding to each node in the above multi-layer structure. The decoding method corresponding to one of the above nodes is a direct decoding mode, a predictive decoding mode, or a transform decoding mode. The predictive decoding mode decodes the above node based on the information of the neighboring nodes corresponding to the above node, and the transform decoding mode decodes the above node based on the transform matrix.

[0036] Based on the above multi-layer structure and the corresponding decoding method, the point cloud attributes of each of the above nodes are decoded respectively.

[0037] Optionally, the above process sorts all the point cloud data to be decoded to obtain sorted point cloud data to be decoded, wherein the point cloud data to be decoded is point cloud data with attributes to be decoded, including:

[0038] Based on the three-dimensional coordinates of each of the above-mentioned point cloud data to be decoded, all the above-mentioned point cloud data to be decoded are arranged from a three-dimensional distribution to a one-dimensional order according to a preset rule to obtain the sorted point cloud data to be decoded.

[0039] Optionally, the above-mentioned multi-layer structure is constructed based on all the above-mentioned point cloud data to be decoded and sorted, as well as the distances between each of the above-mentioned point cloud data to be decoded and sorted, including:

[0040] All the above-mentioned point cloud data to be decoded and sorted are taken as the lowest-level nodes;

[0041] A multi-layer structure is constructed from bottom to top based on all the nodes at the bottom layer and the distances between each of the nodes at the bottom layer. In the multi-layer structure, the distance between multiple child nodes corresponding to a parent node is less than a preset distance threshold.

[0042] Optionally, the point cloud attribute decoding of each node based on the above multi-layer structure and corresponding decoding method includes:

[0043] Based on the above multi-layer structure, the reconstruction first attribute coefficients of each of the above nodes are calculated from top to bottom.

[0044] Based on the above multi-layer structure, the reconstruction first attribute coefficients of each of the above nodes, and the decoding methods corresponding to each of the above nodes, the above nodes are decoded from top to bottom.

[0045] A fourth aspect of the present invention provides a point cloud attribute decoding apparatus, wherein the apparatus comprises:

[0046] The sorting module is used to sort all the point cloud data to be decoded and obtain the sorted point cloud data to be decoded. The point cloud data to be decoded is the point cloud data with attributes to be decoded.

[0047] A multi-layer structure building module is used to build a multi-layer structure based on all the above-mentioned point cloud data to be decoded and sorted, as well as the distances between each of the above-mentioned point cloud data to be decoded and sorted.

[0048] The decoding method acquisition module is used to acquire the decoding method corresponding to each node in the above multi-layer structure. The decoding method corresponding to a node is a direct decoding mode, a predictive decoding mode, or a transform decoding mode. The predictive decoding mode decodes the node based on the information of the neighboring nodes corresponding to the node, and the transform decoding mode decodes the node based on the transform matrix.

[0049] The decoding module is used to decode the point cloud attributes of each of the above nodes based on the above multi-layer structure and the corresponding decoding method.

[0050] As can be seen from the above, in the present invention, all point cloud data to be encoded are sorted to obtain sorted point cloud data, wherein the point cloud data to be encoded is point cloud data with attributes to be encoded; a multi-layer structure is constructed based on all the sorted point cloud data and the distances between each sorted point cloud data; the encoding method corresponding to each node in the multi-layer structure is obtained, wherein the encoding method corresponding to a node is a direct encoding mode, a predictive encoding mode, or a transform encoding mode, wherein the predictive encoding mode encodes the node based on the information of the neighboring nodes corresponding to the node, and the transform encoding mode encodes the node based on the transform matrix; point cloud attributes are encoded for each node based on the multi-layer structure and the corresponding encoding method. Compared with the prior art, the present invention constructs a multi-layer structure based on the distances between sorted point cloud data and encodes based on the multi-layer structure, which is beneficial to expand the spatial utilization range and assigns a suitable encoding mode to each node, further improving the encoding efficiency of each node, thereby improving the overall encoding efficiency of the point cloud data. Attached Figure Description

[0051] To more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0052] Figure 1 This is a flowchart illustrating a point cloud attribute encoding method provided in an embodiment of the present invention;

[0053] Figure 2 This is an embodiment of the present invention. Figure 1 A detailed flowchart of step S200 is shown below;

[0054] Figure 3 This is an embodiment of the present invention. Figure 1 A detailed flowchart of step S300 is shown below;

[0055] Figure 4 This is a schematic diagram of a multi-layer structure provided in an embodiment of the present invention;

[0056] Figure 5 This is a schematic diagram of a multi-layer structure provided in an embodiment of the present invention;

[0057] Figure 6 This is an embodiment of the present invention. Figure 1 A detailed flowchart of step S400 is shown below;

[0058] Figure 7This is a schematic diagram of a point cloud attribute encoding method with encoding residual processing steps provided in an embodiment of the present invention;

[0059] Figure 8 This is a schematic diagram of the structure of a point cloud attribute encoding device provided in an embodiment of the present invention;

[0060] Figure 9 This is a flowchart illustrating a point cloud attribute decoding method provided in an embodiment of the present invention;

[0061] Figure 10 This is an embodiment of the present invention. Figure 9 A detailed flowchart of step A200;

[0062] Figure 11 This is an embodiment of the present invention. Figure 9 A detailed flowchart of step A400;

[0063] Figure 12 This is a schematic flowchart of a point cloud attribute decoding method with a decoding residual processing step provided in an embodiment of the present invention;

[0064] Figure 13 This is a schematic diagram of the structure of a point cloud attribute decoding device provided in an embodiment of the present invention. Detailed Implementation

[0065] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limitation, in order to provide a thorough understanding of the embodiments of the invention. However, those skilled in the art will understand that the invention can be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, apparatuses, circuits, and methods are omitted so as not to obscure the description of the invention with unnecessary detail.

[0066] It should be understood that, when used in this specification and the appended claims, the term "comprising" indicates the presence of the described features, integrals, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integrals, steps, operations, elements, components and / or collections thereof.

[0067] It should also be understood that the terminology used in this specification is for the purpose of describing particular embodiments only and is not intended to limit the invention. As used in this specification and the appended claims, the singular forms “a,” “an,” and “the” are intended to include the plural forms unless the context clearly indicates otherwise.

[0068] It should also be further understood that the term "and / or" as used in this specification and the appended claims refers to any combination of one or more of the associated listed items and all possible combinations, and includes such combinations.

[0069] As used in this specification and the appended claims, the term "if" may be interpreted, depending on the context, as "when," "once," "in response to determination," or "in response to detection." Similarly, the phrases "if determined" or "if detected [the described condition or event]" may be interpreted, depending on the context, as meaning "once determined," "in response to determination," "once detected [the described condition or event]," or "in response to detection [the described condition or event]."

[0070] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0071] Many specific details are set forth in the following description in order to provide a full understanding of the invention. However, the invention may also be practiced in other ways different from those described herein, and those skilled in the art can make similar extensions without departing from the spirit of the invention. Therefore, the invention is not limited to the specific embodiments disclosed below.

[0072] With the advancement of science and technology, especially the rapid development of 3D scanning equipment, the application of 3D reconstruction technology is becoming increasingly widespread, and the accuracy and resolution of point clouds are also getting higher and higher. A single frame of point cloud typically contains millions of points, with each point containing geometric information and attribute information such as color and reflectivity, resulting in a massive amount of data. Therefore, compression encoding and decoding of point cloud data are crucial during transmission and use.

[0073] In existing technologies, point cloud attributes are typically encoded and decoded using prediction methods. Specifically, during the encoding process, each point is encoded sequentially, and the attribute value of a given point is predicted using information from previously encoded points. The encoding of that point is then completed based on the predicted value and the actual attribute value. The problem with existing technologies is that prediction methods have limited spatial utilization, which hinders the improvement of encoding efficiency.

[0074] With the advancement of science and technology, especially the rapid development of 3D scanning equipment, the application of 3D reconstruction technology is becoming increasingly widespread, and the accuracy and resolution of point clouds are also getting higher and higher. A single frame of point cloud typically contains millions of points, with each point containing geometric information and attribute information such as color and reflectivity, resulting in a massive amount of data. Therefore, compression encoding and decoding of point cloud data are crucial during transmission and use.

[0075] In existing technologies, point cloud attributes are typically encoded and decoded using prediction methods. Specifically, during the encoding process, each point is encoded sequentially. Information from previously encoded points is used to predict the attribute value of a given point, and the residual between the predicted and actual attribute values ​​is calculated. This residual is then quantized to obtain quantization residual coefficients, which are then entropy-encoded to complete the encoding of that point. Based on this, for the first point, a fixed numerical value represents the predicted value; for example, color attributes are represented by R=128, G=128, and B=128. The quantization residual coefficients are then inversely quantized to obtain the reconstructed residual, which is added to the predicted value to obtain the reconstructed attribute value, which is used for predicting subsequent points. The problem with existing technologies is that using prediction methods results in a limited spatial utilization range, which is detrimental to improving encoding efficiency.

[0076] To address the problems of existing technologies, this invention provides a point cloud attribute encoding method. In this embodiment, all point cloud data to be encoded are sorted to obtain sorted point cloud data, wherein the point cloud data to be encoded is point cloud data with attributes to be encoded; a multi-layer structure is constructed based on all the sorted point cloud data and the distances between each sorted point cloud data; the encoding method corresponding to each node in the multi-layer structure is obtained, wherein the encoding method corresponding to a node is a direct encoding mode, a predictive encoding mode, or a transform encoding mode, wherein the predictive encoding mode encodes the node based on the information of the neighboring nodes corresponding to the node, and the transform encoding mode encodes the node based on a transform matrix; point cloud attribute encoding is performed on each node based on the multi-layer structure and the corresponding encoding method. Compared with existing technologies, the solution of this invention, which constructs a multi-layer structure based on the distances between sorted point cloud data and performs encoding based on the multi-layer structure, is beneficial for expanding the spatial utilization range and assigning suitable encoding modes to each node, further improving the encoding efficiency of each node, thereby improving the overall encoding efficiency of point cloud data.

[0077] like Figure 1 As shown, this embodiment of the invention provides a point cloud attribute encoding method. Specifically, the method includes the following steps:

[0078] Step S100: Sort all the point cloud data to be encoded and obtain sorted point cloud data, wherein the point cloud data to be encoded is the point cloud data with attributes to be encoded.

[0079] The point cloud data to be encoded is point cloud data that requires attribute compression encoding. Point cloud encoding mainly includes geometric encoding and attribute encoding. In this embodiment of the invention, point cloud attribute encoding is mainly implemented, such as encoding the color attribute of the point cloud.

[0080] Step S200: Construct a multi-layer structure based on all the sorted point cloud data and the distances between each sorted point cloud data.

[0081] The multi-layer structure mentioned above is a multi-layer structure composed of multiple nodes. For example, the multi-layer structure is an M-layer structure (M is a positive integer). The M-th layer is the bottom layer. Then, all the points corresponding to the point cloud data are respectively regarded as nodes of the M-th layer. Then, based on the distance between the nodes of the M-th layer, it is determined whether there is a parent node and the corresponding parent node is constructed. In this way, the M-layer structure is constructed layer by layer.

[0082] Step S300: Obtain the encoding method corresponding to each node in the multi-layer structure. The encoding method corresponding to a node is a direct encoding mode, a predictive encoding mode, or a transform encoding mode. The predictive encoding mode encodes the node based on the information of the neighboring nodes corresponding to the node, and the transform encoding mode encodes the node based on the transform matrix.

[0083] In the aforementioned predictive coding mode, the corresponding nodes can be encoded based on existing prediction methods, while in the aforementioned transform coding mode, the corresponding nodes can be encoded based on the Haar wavelet transform method. In this application, the aforementioned predictive coding mode encodes the corresponding nodes based on an improved prediction method incorporating a multi-layer structure, but this is not intended as a specific limitation. The aforementioned transform matrix is ​​a pre-set transform matrix, which can be set and adjusted according to actual needs, and is not specifically limited here.

[0084] Step S400: Based on the above multi-layer structure and the corresponding encoding method, point cloud attribute encoding is performed on each of the above nodes.

[0085] Specifically, based on the above multi-layer structure and the corresponding encoding method, the point cloud attribute data corresponding to each of the above nodes are calculated, quantized and entropy encoded to complete the point cloud encoding task.

[0086] As can be seen from the above, in the point cloud attribute encoding method provided by the embodiments of the present invention, all point cloud data to be encoded are sorted to obtain sorted point cloud data, wherein the point cloud data to be encoded is point cloud data with attributes to be encoded; a multi-layer structure is constructed based on all the sorted point cloud data and the distance between each sorted point cloud data; the encoding method corresponding to each node in the multi-layer structure is obtained, wherein the encoding method corresponding to a node is a direct encoding mode, a predictive encoding mode, or a transform encoding mode, wherein the predictive encoding mode encodes the node based on the information of the neighboring nodes corresponding to the node, and the transform encoding mode encodes the node based on the transform matrix; point cloud attribute encoding is performed on each node based on the multi-layer structure and the corresponding encoding method. Compared with the prior art, the solution of the present invention constructs a multi-layer structure based on the distance between sorted point cloud data and performs encoding based on the multi-layer structure, which is beneficial to expand the spatial utilization range and assigns a suitable encoding mode to each node, further improving the encoding efficiency of each node, thereby improving the overall encoding efficiency of point cloud data.

[0087] Specifically, in this embodiment, step S100 includes: arranging all the point cloud data to be encoded from a three-dimensional distribution to a one-dimensional order according to a preset rule based on the three-dimensional coordinates of each point cloud data to be encoded, thereby obtaining sorted point cloud data. The preset rule is a pre-set sorting rule that can be set and adjusted according to actual needs. Optionally, the preset rule can be a sorting rule based on Morton code or Hilbert code. Specifically, in this embodiment, the target code corresponding to each point cloud data to be encoded is obtained based on the three-dimensional coordinates of each point cloud data to be encoded, wherein the target code is Morton code or Hilbert code; the point cloud data to be encoded is sorted based on all the target codes to obtain sorted point cloud data. In this embodiment, the point cloud contains N points (i.e., corresponding to N point cloud data to be encoded), and they are sorted according to the preset rule, with sequence numbers from 1 to N.

[0088] Specifically, in this embodiment, as Figure 2 As shown, step S200 above includes:

[0089] Step S201: Take all the sorted point cloud data mentioned above as the lowest level nodes.

[0090] Step S202: Construct a multi-layer structure from bottom to top based on all the nodes at the bottom layer and the distances between each of the nodes at the bottom layer, wherein the distance between multiple child nodes corresponding to a parent node in the multi-layer structure is less than a preset distance threshold.

[0091] The aforementioned preset distance threshold is a pre-set value used to define the distance relationship between nodes, and can be set and adjusted according to actual needs. Preferably, th...m The above distance threshold, th m It is related to the density of points. For example, for the Mth layer, let the average side length of the point cloud bounding box (the bounding box is the smallest cuboid that can enclose the point cloud) be d. mean The number of nodes in the Mth layer is N. m The adjustable parameter is s. `s` is a parameter that can be preset and adjusted according to actual needs. `s` controls the number of parent nodes generated; the larger `s` is, the more parent nodes are generated. In one application scenario, when one parent node corresponds to two child nodes (i.e., two child nodes are merged into one parent node), when N... m When the number is small, all nodes can be merged pairwise to generate a parent node; for odd numbers N... m Except for the last node in the case. From the perspective of coding efficiency (i.e., the final compressed data size), the optimal th for different point clouds. m The values ​​of are different. From the perspective of time complexity, th m The larger the value, the less computation is required and the less time is needed.

[0092] In one application scenario, N points are used as the nodes of the lowest layer (the Mth layer, i.e., the lowest level). Let the current target point be i. Calculate the distances from the next P points to point i, compare the distances to find the largest integer p, where the pairwise distances between points i, i+1, ..., i+p are less than the threshold value p. m If p is greater than 0, merge points i, i+1, ..., i+p to form their parent node in the (M-1)th layer. Set point i+p+1 as the next target point and repeat the above steps. If p equals 0, point i is not merged with any point to generate a parent node. Set point i+1 as the next target point and repeat the above steps. Traverse all points in the Mth layer. P is a set integer greater than or equal to 1 to limit the search range. It can be set and adjusted according to actual needs, and no specific limitation is made here. For all nodes in the M-1th layer, merge them according to the above steps to form nodes in the M-2th layer. And so on, merge the nodes in each layer. Stop when there are no nodes to merge in a layer, and take that layer as the first layer to form the M-layer structure.

[0093] In this embodiment, it is preferable to fix a parent node by constructing a parent node from two child nodes, that is, p is fixed at 2. Specifically, N points are used as the nodes of the lowest layer (M layer), and the distance di between the current point i and the next point i+1 is calculated. If di <th mMerge points i and i+1 to form their parent nodes in layer M-1. These parent nodes constitute the nodes in layer M-1, arranged in the order of merging. After merging points i and i+1, the next step is to check points i+2 and i+3. If i and i+1 fail to merge, the next step is to check points i+1 and i+2. For all nodes in layer M-1, merge them according to the above steps to form the nodes in layer M-2, and so on, merging nodes in each layer until no nodes in a layer are merged. In this way, an M-layer structure is obtained from bottom to top. Based on this structure, layered transformation and prediction can be performed to achieve point cloud encoding. Specifically, each node in the above M-layer structure is assigned its position coordinates. For nodes in layer M, the position of each point is the position of the corresponding point cloud geometric point; for nodes in other layers, the position of each point is determined according to the position of its child nodes. For example, the position coordinates of the midpoint of the line connecting two child nodes are used as the position coordinates of the parent node. Specifically, the point cloud attribute data of the parent node can also be determined based on the child nodes. For example, the average value of the color attribute of the child nodes can be used as the value of the color attribute of the parent node. The color attribute of each node in the Mth layer is the actual color attribute value of the corresponding point cloud point. There are other setting methods as well, which are not specifically limited here.

[0094] Specifically, in this embodiment, as Figure 3 As shown, step S300 above includes:

[0095] Step S301: Set the encoding method of all directly encoded nodes in the above multi-layer structure to direct encoding mode. The above directly encoded nodes are the nodes of the first layer in the above multi-layer structure.

[0096] Step S302: Set the encoding method corresponding to all predictive coding nodes in the above multi-layer structure to predictive coding mode. The above predictive coding nodes are nodes in the second layer to the Mth layer of the above multi-layer structure that do not have a parent node.

[0097] Step S303: Set the encoding method corresponding to all transformation encoding nodes in the above multi-layer structure to transformation encoding mode. The above transformation encoding nodes are nodes with parent nodes in the second layer to the Mth layer of the above multi-layer structure.

[0098] The aforementioned multi-layer structure includes M layers, with the Mth layer being the lowest layer. Figure 4 This is a schematic diagram of a multi-layer structure provided in an embodiment of the present invention. Specifically, M = 3, that is... Figure 4 The diagram shows a 3-layer structure. Figure 4 In this model, nodes in layer 1 are direct coding nodes, nodes in layers 2 and 3 without parent nodes are predictive coding nodes, and nodes in layers 2 and 3 with parent nodes are transform coding nodes.

[0099] Specifically, in this embodiment, the direct encoding mode encodes the direct encoding node directly based on the information of the direct encoding node; the predictive encoding mode encodes the predictive encoding node based on the information of neighboring nodes within the neighborhood of the predictive encoding node; and the transform encoding mode encodes the transform encoding node using a transform matrix.

[0100] The aforementioned proximity range is a pre-set range that can be set and adjusted according to actual needs. In one application scenario, this proximity range can include all nodes in that layer. A neighboring node is defined as one whose distance from the predictive coding node within the proximity range is less than the threshold value. m point.

[0101] In one application scenario, the above-mentioned transform coding mode specifically uses the Haar wavelet transform method for point cloud attribute coding. Figure 5 This is a schematic diagram of a multi-layer structure provided in an embodiment of the present invention. Specifically, Figure 5 The tree structure is a 5-level binary tree, where M=5. For each node, a first attribute coefficient and a second attribute coefficient are defined. Some nodes may not have a second attribute coefficient; for example, a node in level M may only have a first attribute coefficient. The first attribute coefficient of a node in level M is the attribute value (i.e., the true attribute value) of the point cloud to be encoded. The first attribute coefficients of nodes in levels 1 to (M-1) are the DC coefficients after transformation, and the second attribute coefficients are the AC coefficients after transformation. The transformation begins from level (M-1) of the M-level binary tree and ends at level 1. For the m-th level of the binary tree, where m = 1, 2, ..., M-1, the transformation calculation is performed for each target node: if the target node has two child nodes, the transformation matrix... Transform the first attribute coefficients a1 and a2 of the two child nodes to obtain the first attribute coefficients and second attribute coefficients of the target node, where the first attribute coefficient is... The coefficient of the second attribute is If the target node has only one child node, then the target node only has a first attribute coefficient and no second attribute coefficient. Its first attribute coefficient is equal to the first attribute coefficient of its child node multiplied by 1. After all layer transformations are completed, all the obtained second attribute coefficients are quantized and entropy encoded with the first attribute coefficients of the root node (i.e., the first layer node) to complete the point cloud encoding task.

[0102] Specifically, simple prediction methods primarily utilize the attribute and geometric information of nearby coded points to estimate the attribute value of the point to be encoded. For example, a weighted average of the attribute values ​​of the three closest coded points can be used as the predicted attribute value for the point to be encoded. The more accurate the estimation, the higher the encoding efficiency. The accuracy of the estimation depends on whether coded points with high correlation to the attribute of the point to be encoded can be found. The attribute value is reconstructed from the aforementioned attribute information; the attribute can be the RGB value of color. Geometric information refers to the coordinates of the point's location, or specifically the distance from the coded point to the point to be encoded. Encoding efficiency refers to the size of the compressed data output by the final entropy encoder; the smaller the final compressed data, the higher the encoding (compression) efficiency. It can be understood that if every predicted value is the same as the true value, the encoding residuals will all be 0, resulting in very small compressed data. The Haar wavelet transform method, however, utilizes the idea of ​​multi-layer, multi-resolution processing, which helps to utilize information from a wider range of points. The higher the attribute correlation of the transformed point group, the higher the encoding efficiency. It should be noted that the above multi-layer processing can be called multi-resolution processing, where the first attribute coefficient (DC coefficient) of each layer corresponds to a resolution. The M layer has the highest resolution, and the resolution decreases with each subsequent layer.

[0103] In this embodiment of the invention, based on predictive coding mode and transform coding mode, the above-mentioned simple prediction method and Haar wavelet transform method are improved and integrated. Based on a multi-layer processing structure, within each layer, using known information such as distance (specifically, distance information is used in this embodiment, but it can also be extended to utilize reconstructed first attribute coefficient information, etc.), it is determined whether the target node should be encoded using predictive coding mode or transform coding mode. This allows for the utilization of information from a wider range of points and more efficient use of information from neighboring points. For example, when two points are close, their attribute correlation can be considered high, and transform coding mode is superior (compared to predictive coding mode, transform coding mode has lower computational complexity); when two points are far apart, predictive coding mode can be used to more efficiently utilize information from neighboring points (compared to simple prediction methods, the predictive coding mode of this invention can find more nearest neighbors and obtain more accurate attribute prediction values). This improves compression (coding) efficiency, resulting in smaller storage space occupied by the final compressed data, and also shortens compression time, thus increasing coding speed.

[0104] In this embodiment, entropy coding is used. During the coding process, no information is lost according to the entropy principle. After encoding the point cloud, a string of codes corresponding to each point is finally obtained (i.e., compressed data after entropy coding). This code is calculated from the point cloud attributes and can be recovered through decoding; the recovered data is called the reconstructed point cloud. The data before and after entropy coding and entropy decoding are completely identical, with no error. The error between the reconstructed point cloud attribute values ​​and the original point cloud attribute values ​​all comes from the previous calculation process (e.g., the quantization process).

[0105] Specifically, in this embodiment, as Figure 6 As shown, step S400 above includes:

[0106] Step S401: Based on the above multi-layer structure, calculate the first attribute coefficient of each of the above nodes from bottom to top. The first attribute coefficient of the node in the lowest layer of the above multi-layer structure is the original attribute value of the point cloud corresponding to the node, and the first attribute coefficient of the nodes in other layers is the DC coefficient corresponding to the node.

[0107] Step S402: Based on the above multi-layer structure, the first attribute coefficients of each of the above nodes, and the encoding method corresponding to each of the above nodes, each of the above nodes is encoded from top to bottom.

[0108] Specifically, step S402 includes: traversing the multi-layer structure from top to bottom based on m=1 to m=M-1, performing the following steps and obtaining the second attribute coefficients and / or first attribute residual coefficients corresponding to each node: taking the nodes of the m-th layer as the first target nodes, calculating and obtaining the second attribute coefficients of each first target node and the reconstructed first attribute coefficients of the child nodes of each first target node based on each first target node and its corresponding child nodes; for each of the predicted coding nodes in the (m+1)-th layer, obtaining the second target nodes corresponding to each predicted coding node in the (m+1)-th layer, estimating and obtaining the first attribute residual coefficients of the corresponding predicted coding nodes based on the second target nodes; wherein, the second attribute coefficients are the communication coefficients corresponding to the nodes, and the second target nodes are the K nodes in the (m+1)-th layer that are closest to the predicted coding nodes and whose reconstructed first attribute coefficients have been calculated, where K is a preset search number; quantizing and entropy encoding the first attribute coefficients of each node in the first layer of the multi-layer structure and the second attribute coefficients and / or first attribute residual coefficients of each node in other layers.

[0109] Furthermore, in this embodiment, step S402 further includes: sequentially quantizing and dequantizing the first attribute coefficients of each of the directly encoded nodes to obtain the reconstructed first attribute coefficients of each of the directly encoded nodes; calculating and obtaining the reconstructed second attribute coefficients of each of the first target nodes based on each of the first target nodes and their corresponding child nodes; and estimating and obtaining the first attribute prediction value, the reconstructed first attribute residual coefficient, and the reconstructed first attribute coefficient of the corresponding predictive encoded node based on the second target node. This is so that the encoded data can be decoded accordingly.

[0110] Specifically, in this embodiment, based on an M-layer structure, the first attribute coefficients of nodes are calculated from top to bottom. For N nodes in layer M (N is the number of points in the point cloud, the same as the number of point cloud data to be encoded), their corresponding original point cloud attribute values ​​(specifically, values ​​of attribute information such as color and reflectivity) are used as the first attribute coefficients. For nodes in layer M-1, let the first attribute coefficients of their two corresponding child nodes be a1 and a2, respectively, and use the transformed DC coefficients of the two child nodes as their first attribute coefficients, i.e. Based on the above steps, calculate the first attribute coefficient of each node in each layer, stopping at the first layer. In this way, each node in each layer has a first attribute coefficient.

[0111] Based on the M-layer structure, the reconstruction coefficients of the first attribute, the second attribute, and the attribute residual coefficients of the nodes are calculated from top to bottom. The specific steps are as follows:

[0112] a. For the j-th node of layer 1, quantize and dequantize the first attribute coefficients to obtain reconstructed first attribute coefficients, thus ensuring encoding and decoding consistency. During decoding, only reconstructed xx coefficients (such as reconstructed first attribute coefficients) can be obtained. Therefore, during encoding, the reconstructed xx coefficients of all xx coefficients must be calculated to ensure encoding and decoding consistency. There will be errors between all reconstructed xx coefficients and the original xx coefficients, including quantization errors and inverse transform precision errors.

[0113] b. For the j-th node in the m-th layer, let the first attribute coefficients of its corresponding child nodes be a1 and a2. Then, use the transformed AC coefficients of the two child nodes as its second attribute coefficients. The second attribute coefficients are quantized and dequantized to obtain the reconstructed second attribute coefficients. These are then combined with the reconstructed first attribute coefficients of node j and subjected to an inverse transformation to obtain the reconstructed first attribute coefficients of the corresponding two child nodes. This process is repeated for all nodes in layer m. Let the reconstructed first attribute coefficients of the two child nodes be a1′ and a2′, the reconstructed first attribute coefficient of node j be b1′, and the reconstructed second attribute coefficient be b2′.

[0114] c. For the j-th node in layer m+1, if it has no parent node, search within the layer for the K nearest nodes (pre-set or adjusted by the user, generally K=3) whose reconstructed first attribute coefficients have already been calculated. (These nodes include: those with a parent node whose reconstructed first attribute coefficients were calculated during the calculation of layer m in step b; and those without a parent node but ranked before the j-th node whose reconstructed first attribute coefficients were calculated in step c). Use these reconstructed first attribute coefficients to estimate the predicted value of the first attribute of node j (i.e., using a predictive coding mode, the estimation method is the same as the prediction algorithm, for example, calculating the weighted average reconstructed attribute value of these K points as the predicted value of node j). Calculate the difference between the first attribute coefficient and the predicted value of the first attribute of node j as the first attribute residual coefficient. Quantize and dequantize the first attribute residual coefficient to obtain the reconstructed first attribute residual coefficient, add it to the predicted value of the first attribute of node j to obtain the reconstructed first attribute coefficient of node j. Repeat this process for all nodes in layer m+1.

[0115] Based on m = 1, 2, ..., M-2, M-1, traverse each layer of the M-layer structure from top to bottom and repeatedly execute steps b and c above to perform relevant calculations.

[0116] Specifically, refer to Figure 4 ,right Figure 4 The process iterates through the nodes of the first layer, performing step a to obtain the reconstructed first attribute coefficients for all nodes in the first layer. Then, iterate through all nodes in the first layer, performing step b to obtain the reconstructed first attribute coefficients for all nodes in the second layer that have parent nodes. Next, iterate through the nodes in the second layer that do not have parent nodes, performing step c to obtain the reconstructed first attribute coefficients for all nodes in the second layer that do not have parent nodes. This process is repeated for all nodes in the second layer, and step c is performed for all nodes in the third layer that do not have parent nodes. This continues until step b is performed for all nodes in the (M-1)th layer and step c is performed for all nodes in the Mth layer that do not have parent nodes, at which point the iteration ends. The first attribute coefficients of the nodes in the first layer are not transformed but are directly entropy encoded, i.e., a direct encoding mode is used.

[0117] After all layer transformations are completed, quantization and entropy encoding are performed based on the first attribute coefficients of each node in the first layer and the second attribute coefficients and / or first attribute residual coefficients of each node in other layers to complete the point cloud encoding task. Simultaneously, the reconstructed first attribute coefficients of the calculated Mth layer are used as the reconstructed attribute values ​​of the original point cloud to obtain the reconstructed point cloud. For a node in any layer other than the first layer, if it has both second attribute coefficients and first attribute residual coefficients, both are encoded; if it only has second attribute coefficients and no first attribute residual coefficients, only the second attribute coefficients are encoded. The final set of coefficients for quantization and entropy encoding is: all first attribute coefficients of the first layer, and all second attribute coefficients and / or first attribute residual coefficients of the mth layer (m = 1, 2, ..., M-1).

[0118] It should be noted that the transformation and inverse transformation in this embodiment can be performed in the following way: Let the signal within the transformation node (the signal refers to the first attribute coefficients a1 and a2 of the two child nodes) be a row vector F∈R. 2 (The first attribute coefficients corresponding to the two child nodes), R 2 This represents a two-dimensional vector (a1, a2) where each dimension is a real number, and the coefficients after transformation are the row vector C∈R. 2 Construct the transformation matrix as The Haar transform and inverse Haar transform can be expressed as:

[0119] C = F × A Haar transform

[0120] F = C × A T Inverse Haar transform

[0121] In the Haar transform process, let the input coefficients be a1 and a2, and the output coefficients be b1 and b2. In the inverse Haar transform process, let the input coefficients be b1′ and b2′, and the output coefficients be a1′ and a2′, then...

[0122] Thus, compared to simple prediction algorithms, this embodiment of the invention employs a multi-layer processing method, expanding the scope of space utilization. Simultaneously, the predictive coding mode of this invention can utilize information from subsequently reconstructed points transformed by parent nodes to achieve more accurate attribute prediction. Compared to simple multi-layer transformation algorithms, this embodiment of the invention can effectively select groups with high transformation efficiency for transformation, and for nodes with low transformation efficiency, use the predictive coding mode to further utilize information from neighboring points to aid encoding. This improves coding efficiency. Specifically, coding efficiency = compressed file size / original file size; the smaller the coding efficiency value, the higher the corresponding coding efficiency. This invention's solution can improve overall compression efficiency (i.e., coding efficiency).

[0123] Furthermore, since transformation methods generally cannot achieve lossless attribute encoding and decoding, this embodiment sets up encoding residual processing steps and decoding residual processing steps to achieve lossless or near-lossless attribute encoding and decoding, thereby improving the accuracy of the encoding and decoding process. Optionally, the above-mentioned encoding residual processing steps and decoding residual processing steps can also be combined with other compression methods to achieve lossless or near-lossless attribute compression, which is not specifically limited here.

[0124] Specifically, the point cloud attribute encoding method described above may also include an encoding residual processing step. Figure 7 This is a schematic diagram of a point cloud attribute encoding method with an encoding residual processing step provided by an embodiment of the present invention, as shown below. Figure 7 As shown, during attribute encoding, the attribute residual value between the reconstructed point cloud and the original point cloud at each spatial point is calculated. Then, the attribute residual value is quantized according to requirements to obtain attribute quantization residual coefficients. Finally, the attribute quantization residual coefficients are encoded. The reconstructed point cloud mentioned above is a point cloud with reconstructed attribute values ​​obtained according to the above point cloud attribute encoding method, and the original point cloud mentioned above is the unprocessed point cloud data to be encoded. Specifically, for near-lossless conditions (limited-lossy), quantization encoding is performed on the attribute residual value according to a given quantization step size, which can control Hausdorff error. For lossless conditions, the following two methods can be used: Method 1, no quantization processing is needed for the attribute residual value, i.e., the quantization step size is 1, and the attribute residual value is directly encoded; Method 2, the attribute quantization residual remainder and attribute quantization residual coefficient are encoded for the attribute residual value. For color encoding, the calculation of the attribute residual value needs to be performed in the color space of the original point cloud. If the attribute values ​​of the point cloud reconstructed by the inverse transform are in different color spaces than the attribute values ​​of the original point cloud, for example, the original point cloud has attribute values ​​in the RGB color space, while the attribute values ​​generated by the inverse transform are in the YUV color space, then the attribute values ​​of the point cloud reconstructed by the inverse transform need to be converted to the same color space as the original point cloud before calculation.

[0125] Furthermore, based on AVS-PCC PCRM software version 4.0, the embodiments of the present invention tested the benchmark results of the method of this embodiment and the PCRM test platform, and the results are shown in Tables 1 and 2 below.

[0126] Table 1

[0127]

[0128] Table 2

[0129]

[0130] Table 1 compares the rate-distortion data of luminance, chromaticity, and reflectance under finite lossy geometry and lossy attribute conditions, and Table 2 compares the rate-distortion data of luminance, chromaticity, and reflectance under non-lossy geometry and lossy attribute conditions. The data in Tables 1 and 2 show that, compared to the baseline results of the PCRM test platform, under finite lossy geometry and lossy attribute conditions, and under non-lossy geometry and lossy attribute conditions, for luminance, the end-to-end attribute rate-distortion of the present invention is reduced by 16.0% and 27.3%, respectively; for chromaticity (Cb), the end-to-end attribute rate-distortion of the present invention is reduced by 51.6% and 46.7%, respectively; for chromaticity (Cr), the end-to-end attribute rate-distortion of the present invention is reduced by 56.2% and 50.5%, respectively; and for reflectance, the end-to-end attribute rate-distortion of the present invention is reduced by 3.9% and 3.5%, respectively.

[0131] like Figure 8 As shown, corresponding to the above-described point cloud attribute encoding method, this embodiment of the invention also provides a point cloud attribute encoding device, which includes:

[0132] The sorting module 510 is used to sort all the point cloud data to be encoded and obtain sorted point cloud data, wherein the point cloud data to be encoded is point cloud data with attributes to be encoded.

[0133] The point cloud data to be encoded is point cloud data that requires attribute compression encoding. Point cloud encoding mainly includes geometric encoding and attribute encoding. In this embodiment of the invention, point cloud attribute encoding is mainly implemented, such as encoding the color attribute of the point cloud.

[0134] The multi-layer structure building module 520 is used to build a multi-layer structure based on all the above-mentioned sorted point cloud data and the distance between each of the above-mentioned sorted point cloud data.

[0135] The multi-layer structure mentioned above is a multi-layer structure composed of multiple nodes. For example, the multi-layer structure is an M-layer structure (M is a positive integer). The M-th layer is the bottom layer. Then, all the points corresponding to the point cloud data are respectively regarded as nodes of the M-th layer. Then, based on the distance between the nodes of the M-th layer, it is determined whether there is a parent node and the corresponding parent node is constructed. In this way, the M-layer structure is constructed layer by layer.

[0136] The encoding method acquisition module 530 is used to acquire the encoding method corresponding to each node in the multi-layer structure. The encoding method corresponding to a node is a direct encoding mode, a predictive encoding mode, or a transform encoding mode. The predictive encoding mode encodes the node based on the information of the neighboring nodes corresponding to the node, and the transform encoding mode encodes the node based on the transform matrix.

[0137] In the aforementioned predictive coding mode, the corresponding nodes can be encoded based on existing prediction methods, while in the aforementioned transform coding mode, the corresponding nodes can be encoded based on the Haar wavelet transform method. In this application, the aforementioned predictive coding mode is based on an improved prediction method incorporating a multi-layer structure to encode the corresponding nodes, but this is not intended as a specific limitation. The aforementioned transform matrix is ​​a pre-set transform matrix, which can be set and adjusted according to actual needs, and is not specifically limited here.

[0138] The encoding module 540 is used to encode the point cloud attributes of each of the above nodes based on the above multi-layer structure and the corresponding encoding method.

[0139] Specifically, based on the above multi-layer structure and the corresponding encoding method, the point cloud attribute data corresponding to each of the above nodes are calculated, quantized and entropy encoded to complete the point cloud encoding task.

[0140] As can be seen from the above, compared with the prior art, the point cloud attribute encoding device provided in this embodiment of the invention constructs a multi-layer structure based on the distance between sorted point cloud data and performs encoding based on the multi-layer structure, which is beneficial to expand the spatial utilization range and assign a suitable encoding mode to each node, further improving the encoding efficiency of each node, thereby improving the overall encoding efficiency of point cloud data.

[0141] Optionally, the point cloud attribute encoding device described above can also be equipped with an encoding residual processing module. Figure 8 (Not shown in the image) This module is used to calculate the attribute residual value between the reconstructed point cloud and the original point cloud at each spatial point. Then, it quantizes the attribute residual value according to requirements to obtain attribute quantization residual coefficients. Finally, it encodes the attribute quantization residual coefficients. In other words, it performs the corresponding encoding residual processing steps described above, thereby cooperating with the corresponding decoding residual processing to improve compression accuracy. The specific processing procedure of the above encoding residual processing module can be found in the description of the corresponding encoding residual processing steps above, and will not be repeated here.

[0142] It should be noted that the specific functions or settings of the point cloud attribute encoding device and its modules can be referred to the description in the above method embodiments, and will not be repeated here.

[0143] like Figure 9 As shown, corresponding to the above point cloud attribute encoding method, this embodiment of the invention also provides a point cloud attribute decoding method, the method comprising:

[0144] Step A100: Sort all point cloud data to be decoded to obtain sorted point cloud data to be decoded, wherein the point cloud data to be decoded is the point cloud data with attributes to be decoded.

[0145] The point cloud data to be decoded refers to point cloud data with attributes to be decoded. Specifically, it refers to point cloud data encoded using the point cloud attribute encoding method provided in this embodiment of the invention.

[0146] Step A200: Construct a multi-layer structure based on all the above-mentioned point cloud data to be decoded and sorted, as well as the distances between each of the above-mentioned point cloud data to be decoded and sorted.

[0147] The aforementioned multi-layer structure consists of multiple nodes. For example, in an M-layer structure (M is a positive integer), where the Mth layer is the lowest layer, all points corresponding to the point cloud data are treated as nodes in the Mth layer. Then, based on the distance between nodes in the Mth layer, it is determined whether each node has a parent node, and the corresponding parent node is constructed. This process is repeated layer by layer to construct the M-layer structure. The specific M-layer structure and the method for constructing it are similar to the encoding process and will not be elaborated upon here.

[0148] Step A300: Obtain the decoding method corresponding to each node in the above multi-layer structure. The decoding method corresponding to one of the nodes is a direct decoding mode, a predictive decoding mode, or a transform decoding mode. The predictive decoding mode decodes the node based on the information of the neighboring nodes corresponding to the node, and the transform decoding mode decodes the node based on the transform matrix.

[0149] In the aforementioned prediction decoding mode, the corresponding nodes can be decoded based on existing prediction methods, and in the aforementioned transform decoding mode, the corresponding nodes can be decoded based on the Haar wavelet transform method. In this application, the aforementioned prediction decoding mode is based on an improved prediction method combining a multi-layer structure to decode the corresponding nodes, but this is not intended as a specific limitation. The aforementioned transform matrix is ​​the same as the transform matrix used in the encoding process. Step A400: Based on the aforementioned multi-layer structure and the corresponding decoding method, the point cloud attributes of each of the aforementioned nodes are decoded respectively.

[0150] Specifically, based on the above multi-layer structure and the corresponding decoding method, the point cloud attribute data corresponding to each of the above nodes are calculated, quantized, and entropy decoded to complete the point cloud decoding task.

[0151] In this way, the decoding of encoded data can be realized, the spatial utilization range can be expanded, and a suitable decoding mode can be assigned to each node to further improve the decoding efficiency of each node, thereby improving the overall decoding efficiency of point cloud data.

[0152] Specifically, in this embodiment, step A200 includes: based on the three-dimensional coordinates of each of the aforementioned point cloud data to be decoded, arranging all the aforementioned point cloud data to be decoded from a three-dimensional distribution to a one-dimensional order according to a preset rule, thereby obtaining the sorted point cloud data to be decoded. The preset rule is a pre-set sorting rule that can be set and adjusted according to actual needs. Optionally, the preset rule can be a sorting rule based on Morton code or Hilbert code.

[0153] Specifically, in this embodiment, as Figure 10 As shown, step A200 above includes:

[0154] Step A201: Take all the above-mentioned sorted point cloud data to be decoded as the lowest level node.

[0155] Step A202: Construct a multi-layer structure from bottom to top based on all the nodes at the bottom layer and the distances between each of the nodes at the bottom layer, wherein the distance between multiple child nodes corresponding to a parent node in the multi-layer structure is less than a preset distance threshold.

[0156] The specific process of constructing a multi-layered structure can be found in the corresponding description in the coding method, and will not be repeated here.

[0157] Specifically, in this embodiment, as Figure 11 As shown, step A400 above includes:

[0158] Step A401: Based on the above multi-layer structure, calculate the reconstruction first attribute coefficients of each of the above nodes from top to bottom.

[0159] Step A402: Based on the above multi-layer structure, the reconstruction first attribute coefficients of each of the above nodes, and the decoding method corresponding to each of the above nodes, the above nodes are decoded from top to bottom.

[0160] Specifically, based on the M-layer structure, the reconstruction first attribute coefficients of the nodes are calculated from top to bottom. The specific steps are as follows:

[0161] a. For the j-th node of layer 1, the reconstructed first attribute coefficients are obtained from the bitstream entropy decoding and dequantization. The reconstructed first attribute coefficients obtained here are exactly the same as those obtained during encoding.

[0162] b. For the j-th node in the m-th layer, obtain its reconstructed first attribute coefficient b1′; obtain the reconstructed second attribute coefficient b2′ from the bitstream entropy decoding and dequantization. Perform inverse transformation on b1′ and b2′ to obtain the reconstructed first attribute coefficients a1′ and a2′ of the two child nodes corresponding to the j-th node. In this way, traverse all nodes in the m-th layer.

[0163] c. For the j-th node in layer m+1, if it has no parent node, search within the layer for the K nearest nodes whose reconstructed first attribute coefficients have already been calculated. Use these reconstructed first attribute coefficients to calculate the predicted first attribute value for node j. Obtain the reconstructed attribute residual coefficients from the bitstream entropy decoding and dequantization, and add them to the predicted first attribute value for node j to obtain the reconstructed first attribute coefficients for node j. Repeat this process for all nodes in layer m+1.

[0164] Based on m = 1, 2, ..., M-2, M-1, traverse each layer of the M-layer structure from top to bottom and repeatedly execute steps b and c above to perform relevant calculations.

[0165] Similar to the encoding process, refer to Figure 4 , Figure 4 For nodes in the first layer, perform step a; for all nodes in the first layer, perform step b; for nodes in the second layer without a parent, perform step c; for all nodes in the second layer, perform step b; for nodes in the third layer without a parent, perform step c; and so on, until step b is performed for all nodes in the (M-1)th layer and step c is performed for nodes in the Mth layer without a parent, then the traversal ends.

[0166] After completing calculations for all layers, the reconstructed first attribute coefficients of the N nodes in the Mth layer are obtained, serving as the reconstructed attribute values ​​of the point cloud. This completes the decoding process. The purpose of decoding is to obtain the reconstructed first attribute coefficients of all N nodes, which serve as the reconstructed attribute values ​​of the point cloud. The reconstructed attribute value equals the actual attribute value plus the error.

[0167] Optionally, in this embodiment, the point cloud attribute decoding method can also refer to the specific steps in the point cloud attribute encoding method to perform corresponding decoding. For example, inverse quantization can be performed based on the quantization step size in the point cloud attribute encoding method, etc., which will not be elaborated here. In this way, data encoded based on the point cloud attribute encoding method can be decoded.

[0168] Furthermore, in order to reduce the loss in the attribute encoding and decoding process and achieve lossless or near-lossless attribute encoding and decoding, a decoding residual processing step can be set up corresponding to the above encoding residual processing step to improve the accuracy in the encoding and decoding process.

[0169] Specifically, the point cloud attribute decoding method described above may also include a decoding residual processing step. Figure 12 This is a schematic flowchart of a point cloud attribute decoding method with a decoding residual processing step provided by an embodiment of the present invention, as shown below. Figure 12As shown, during attribute decoding, the reconstructed point cloud and quantization residual coefficient bitstream are input into the decoding residual processing module. Within this module, entropy decoding is first performed on the quantization residual coefficient bitstream to obtain the quantized attribute residual coefficients. Next, inverse quantization is performed on the quantized attribute residual coefficients to obtain the reconstructed attribute residual values. Finally, the reconstructed attribute residual values ​​are added to the reconstructed point cloud attribute values ​​to obtain the final point cloud attribute decoding result. Specifically, for near-lossless conditions, the quantization residual coefficient bitstream is first entropy decoded to obtain the quantized attribute residual coefficients, and then inverse quantization is performed according to a given quantization step size (the same as the quantization step size corresponding to the encoding residual processing step) to obtain the attribute residual values. For lossless conditions, the following two methods can be used: Method 1: For the existing attribute residual bitstream, first perform entropy decoding to obtain the attribute residual values. Without inverse quantization, directly add the attribute residual values ​​to the reconstructed point cloud attribute values ​​to obtain the final point cloud attribute decoding result. Method 2: For the existing attribute quantization residual remainder bitstream and attribute quantization residual coefficient bitstream, first perform entropy decoding separately to obtain the attribute quantization residual remainder and attribute quantization residual coefficient. Then, perform inverse quantization on them separately to obtain the reconstructed attribute residual remainder and reconstructed attribute residual coefficient. Finally, add the reconstructed attribute residual remainder, reconstructed attribute residual coefficient, and reconstructed point cloud attribute values ​​to obtain the final point cloud attribute decoding result. For color decoding, the decoding residual processing needs to be performed in the color space of the original point cloud. If the attribute values ​​of the reconstructed point cloud generated by decoding are in different color spaces than the attribute values ​​of the original point cloud, for example, the original point cloud has attribute values ​​in the RGB color space, while the attribute values ​​generated by decoding are in the YUV color space, then the attribute values ​​of the point cloud reconstructed by the inverse transform need to be converted to the same color space as the original point cloud before calculation.

[0170] like Figure 13 As shown, corresponding to the above-described point cloud attribute decoding method, this embodiment of the invention also provides a point cloud attribute decoding device, which includes:

[0171] The sorting module 610 is used to sort all the point cloud data to be decoded and obtain sorted point cloud data to be decoded, wherein the point cloud data to be decoded is the point cloud data with attributes to be decoded.

[0172] The point cloud data to be decoded refers to point cloud data with attributes to be decoded. Specifically, it refers to point cloud data encoded using the point cloud attribute encoding method provided in this embodiment of the invention.

[0173] The multi-layer structure building module 620 is used to build a multi-layer structure based on all the above-mentioned point cloud data to be decoded and sorted, as well as the distance between each of the above-mentioned point cloud data to be decoded and sorted.

[0174] The aforementioned multi-layer structure consists of multiple nodes. For example, in an M-layer structure (M is a positive integer), where the Mth layer is the lowest layer, all points corresponding to the point cloud data are treated as nodes in the Mth layer. Then, based on the distance between nodes in the Mth layer, it is determined whether each node has a parent node, and the corresponding parent node is constructed. This process is repeated layer by layer to construct the M-layer structure. The specific M-layer structure and the method for constructing it are similar to the encoding process and will not be elaborated upon here.

[0175] The decoding method acquisition module 630 is used to acquire the decoding method corresponding to each node in the multi-layer structure. The decoding method corresponding to a node is a direct decoding mode, a predictive decoding mode, or a transform decoding mode. The predictive decoding mode decodes the node based on the information of the neighboring nodes corresponding to the node, and the transform decoding mode decodes the node based on the transform matrix.

[0176] In the aforementioned prediction decoding mode, the corresponding nodes can be decoded based on existing prediction methods, while in the aforementioned transform decoding mode, the corresponding nodes can be decoded based on the Haar wavelet transform method. In this application, the aforementioned prediction decoding mode decodes the corresponding nodes based on an improved prediction method incorporating a multi-layer structure, but this is not intended as a specific limitation. The aforementioned transform matrix is ​​the same as the transform matrix used in the encoding process.

[0177] The decoding module 640 is used to decode the point cloud attributes of each of the above nodes based on the above multi-layer structure and the corresponding decoding method.

[0178] Specifically, based on the above multi-layer structure and the corresponding decoding method, the point cloud attribute data corresponding to each of the above nodes are calculated, quantized, and entropy decoded to complete the point cloud decoding task.

[0179] In this way, the decoding of encoded data can be realized, the spatial utilization range can be expanded, and a suitable decoding mode can be assigned to each node to further improve the decoding efficiency of each node, thereby improving the overall decoding efficiency of point cloud data.

[0180] Optionally, the point cloud attribute decoding device described above can also be equipped with a decoding residual processing module. Figure 13 (Not shown in the image) This module is used to calculate the attribute residual value between the reconstructed point cloud and the original point cloud at each spatial point. Then, it quantizes the attribute residual value according to requirements to obtain attribute quantization residual coefficients. Finally, it decodes the attribute quantization residual coefficients. In other words, it executes the corresponding decoding residual processing steps described above, thereby improving compression accuracy. The specific processing procedure of the above decoding residual processing module can be found in the description of the corresponding decoding residual processing steps above, and will not be repeated here.

[0181] It should be noted that the specific functions or settings of the point cloud attribute decoding device and its modules can be referred to the description in the above method embodiments, and will not be repeated here.

[0182] Based on the above embodiments, the present invention also provides a smart terminal. The smart terminal includes a processor, a memory, a network interface, and a display screen connected via a system bus. The processor of the smart terminal provides computing and control capabilities. The memory of the smart terminal includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores an operating system and a point cloud attribute encoding program and / or a point cloud attribute decoding program. The internal memory provides an environment for the operation of the operating system and the point cloud attribute encoding program and / or the point cloud attribute decoding program stored in the non-volatile storage medium. The network interface of the smart terminal is used for communication with external terminals via a network connection. When the point cloud attribute encoding program and / or the point cloud attribute decoding program is executed by the processor, it implements the steps of any of the above-described point cloud attribute encoding and / or decoding methods. The display screen of the smart terminal can be a liquid crystal display screen or an electronic ink display screen.

[0183] This invention also provides a computer-readable storage medium storing a point cloud attribute encoding program and / or a point cloud attribute decoding program. When the point cloud attribute encoding program and / or point cloud attribute decoding program are executed by a processor, they implement the steps of any point cloud attribute encoding and / or decoding method provided in this invention.

[0184] It should be understood that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.

[0185] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is merely an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the above device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit. Furthermore, the specific names of the functional units and modules are only for easy differentiation and are not intended to limit the scope of protection of this invention. The specific working process of the units and modules in the above system can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.

[0186] In the above embodiments, the descriptions of each embodiment have different focuses. For parts that are not described in detail or recorded in a certain embodiment, please refer to the relevant descriptions of other embodiments.

[0187] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this invention.

[0188] In the embodiments provided by this invention, it should be understood that the disclosed apparatus / terminal devices and methods can be implemented in other ways. For example, the apparatus / terminal device embodiments described above are merely illustrative. For instance, the division of the above modules or units is merely a logical functional division, and in actual implementation, it can be divided in other ways. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed.

[0189] If the integrated modules / units described above are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments can also be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include: any entity or device capable of carrying the computer program code, recording media, USB flash drives, portable hard drives, magnetic disks, optical disks, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the content included in the computer-readable storage medium can be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction.

[0190] The above-described embodiments are only used to illustrate the technical solutions of the present invention, and are not intended to limit it. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not mean that the essence of the corresponding technical solutions deviates from the spirit and scope of the technical solutions of the embodiments of the present invention, and should all be included within the protection scope of the present invention.

Claims

1. A point cloud attribute encoding method, characterized in that, The method includes: Sort all point cloud data to be encoded to obtain sorted point cloud data, wherein the point cloud data to be encoded is point cloud data with attributes to be encoded; A multi-layer structure is constructed based on all the sorted point cloud data and the distances between each sorted point cloud data. Obtain the encoding method corresponding to each node in the multi-layer structure, wherein the encoding method corresponding to a node is a direct encoding mode, a predictive encoding mode, or a transform encoding mode, wherein the predictive encoding mode encodes the node based on the information of the neighboring nodes corresponding to the node, and the transform encoding mode encodes the node based on the transform matrix; Based on the multi-layer structure and the corresponding encoding method, point cloud attribute encoding is performed on each of the nodes respectively; The step of obtaining the encoding method corresponding to each node in the multi-layer structure, wherein the encoding method corresponding to a node is a direct encoding mode, a predictive encoding mode, or a transform encoding mode, includes: setting the encoding method corresponding to all directly encoded nodes in the multi-layer structure to the direct encoding mode, wherein the direct encoded nodes are nodes in the first layer of the multi-layer structure; setting the encoding method corresponding to all predictive encoded nodes in the multi-layer structure to the predictive encoding mode, wherein the predictive encoded nodes are nodes in the second to Mth layers of the multi-layer structure that do not have a parent node; setting the encoding method corresponding to all transform encoded nodes in the multi-layer structure to the transform encoding mode, wherein the transform encoded nodes are nodes in the second to Mth layers of the multi-layer structure that have a parent node; wherein the multi-layer structure includes M layers, and the Mth layer is the lowest layer.

2. The point cloud attribute encoding method according to claim 1, characterized in that, The step of sorting all the point cloud data to be encoded and obtaining the sorted point cloud data includes: Based on the three-dimensional coordinates of each point cloud data to be encoded, all the point cloud data to be encoded are arranged from a three-dimensional distribution to a one-dimensional order according to a preset rule to obtain sorted point cloud data.

3. The point cloud attribute encoding method according to claim 1, characterized in that, The construction of a multi-layer structure based on all the sorted point cloud data and the distances between each sorted point cloud data includes: All the sorted point cloud data are taken as the lowest-level nodes; A multi-layer structure is constructed from bottom to top based on all the bottom-level nodes and the distances between each bottom-level node, wherein the distance between multiple child nodes corresponding to a parent node in the multi-layer structure is less than a preset distance threshold.

4. The point cloud attribute encoding method according to claim 1, characterized in that, The direct encoding mode encodes the direct encoding node directly based on the information of the direct encoding node; the predictive encoding mode encodes the predictive encoding node based on the information of the neighboring nodes within the neighborhood of the predictive encoding node; the transform encoding mode encodes the transform encoding node using a transform matrix.

5. The point cloud attribute encoding method according to claim 4, characterized in that, The step of encoding point cloud attributes for each node based on the multi-layer structure and the corresponding encoding method includes: Based on the multi-layer structure, the first attribute coefficient of each node is calculated from bottom to top. The first attribute coefficient of the node in the lowest layer of the multi-layer structure is the original attribute value of the point cloud corresponding to the node, and the first attribute coefficient of the nodes in other layers is the DC coefficient corresponding to the node. Based on the multi-layer structure, the first attribute coefficients of each node, and the encoding method corresponding to each node, each node is encoded from top to bottom.

6. The point cloud attribute encoding method according to claim 5, characterized in that, The encoding of each node from top to bottom based on the multi-layer structure, the first attribute coefficients of each node, and the encoding method corresponding to each node includes: Based on m=1 to m=M-1, the multi-layer structure is traversed from top to bottom, and the following steps are performed to obtain the second attribute coefficient and / or first attribute residual coefficient corresponding to each node: taking the node of the m-th layer as the first target node, calculating and obtaining the second attribute coefficient of each first target node and the reconstructed first attribute coefficient of the child nodes of each first target node based on each first target node and its corresponding child nodes; for each predicted coding node in the (m+1)-th layer, obtaining the second target node corresponding to each predicted coding node in the (m+1)-th layer, estimating and obtaining the first attribute residual coefficient of the corresponding predicted coding node based on the second target node; wherein, the second attribute coefficient is the communication coefficient corresponding to the node, and the second target node is the K nodes in the (m+1)-th layer that are closest to the predicted coding node and whose reconstructed first attribute coefficient has been calculated, where K is a preset search number; The first attribute coefficients of each node in the first layer of the multi-layer structure and the second attribute coefficients and / or first attribute residual coefficients of each node in other layers are quantized and entropy encoded.

7. A point cloud attribute encoding device, characterized in that, The point cloud attribute encoding device includes: The sorting module is used to sort all the point cloud data to be encoded and obtain sorted point cloud data, wherein the point cloud data to be encoded is point cloud data with attributes to be encoded. A multi-layer structure construction module is used to construct a multi-layer structure based on all the sorted point cloud data and the distance between each sorted point cloud data. The encoding method acquisition module is used to acquire the encoding method corresponding to each node in the multi-layer structure. The encoding method corresponding to a node is a direct encoding mode, a predictive encoding mode, or a transform encoding mode. The predictive encoding mode encodes the node based on the information of the neighboring nodes corresponding to the node, and the transform encoding mode encodes the node based on the transform matrix. The encoding module is used to encode the point cloud attributes of each node based on the multi-layer structure and the corresponding encoding method. The encoding method acquisition module is specifically used for: setting the encoding method corresponding to all directly encoded nodes in the multi-layer structure to the direct encoding mode, wherein the directly encoded nodes are nodes in the first layer of the multi-layer structure; setting the encoding method corresponding to all predictive encoded nodes in the multi-layer structure to the predictive encoding mode, wherein the predictive encoded nodes are nodes in the second to Mth layers of the multi-layer structure that do not have a parent node; setting the encoding method corresponding to all transform encoded nodes in the multi-layer structure to the transform encoding mode, wherein the transform encoded nodes are nodes in the second to Mth layers of the multi-layer structure that have a parent node; wherein the multi-layer structure includes M layers, and the Mth layer is the lowest layer.

8. A point cloud attribute decoding method, characterized in that, The method includes: Sort all point cloud data to be decoded to obtain sorted point cloud data to be decoded, wherein the point cloud data to be decoded is point cloud data with attributes to be decoded; A multi-layer structure is constructed based on all the point cloud data to be decoded and sorted, as well as the distances between each point cloud data to be decoded and sorted. Obtain the decoding method corresponding to each node in the multi-layer structure, wherein the decoding method corresponding to a node is a direct decoding mode, a predictive decoding mode, or a transform decoding mode, wherein the predictive decoding mode decodes the node based on the information of the neighboring nodes corresponding to the node, and the transform decoding mode decodes the node based on the transform matrix; Based on the multi-layer structure and the corresponding decoding method, the point cloud attributes of each node are decoded respectively. The step of obtaining the decoding method corresponding to each node in the multi-layer structure, wherein the decoding method corresponding to a node is a direct decoding mode, a predictive decoding mode, or a transform decoding mode, includes: setting the decoding method corresponding to all direct decoding nodes in the multi-layer structure to the direct decoding mode, wherein the direct decoding node is a node in the first layer of the multi-layer structure; setting the decoding method corresponding to all predictive decoding nodes in the multi-layer structure to the predictive decoding mode, wherein the predictive decoding node is a node in the second to Mth layers of the multi-layer structure that does not have a parent node; setting the decoding method corresponding to all transform decoding nodes in the multi-layer structure to the transform decoding mode, wherein the transform decoding node is a node in the second to Mth layers of the multi-layer structure that has a parent node; wherein the multi-layer structure includes M layers, and the Mth layer is the lowest layer.

9. The point cloud attribute decoding method according to claim 8, characterized in that, The step involves sorting all the point cloud data to be decoded to obtain sorted point cloud data to be decoded. The point cloud data to be decoded consists of point cloud data with attributes to be decoded, including: Based on the three-dimensional coordinates of each point cloud data to be decoded, all the point cloud data to be decoded are arranged from a three-dimensional distribution to a one-dimensional order according to a preset rule to obtain the sorted point cloud data to be decoded.

10. The point cloud attribute decoding method according to claim 8, characterized in that, The construction of a multi-layer structure based on all the point cloud data to be decoded and sorted, and the distances between each of the point cloud data to be decoded and sorted, includes: All the point cloud data to be decoded and sorted are taken as the lowest-level nodes; A multi-layer structure is constructed from bottom to top based on all the bottom-level nodes and the distances between each bottom-level node, wherein the distance between multiple child nodes corresponding to a parent node in the multi-layer structure is less than a preset distance threshold.

11. The point cloud attribute decoding method according to claim 8, characterized in that, The point cloud attribute decoding of each node based on the multi-layer structure and the corresponding decoding method includes: Based on the multi-layer structure, the reconstruction first attribute coefficients of each node are calculated from top to bottom; Based on the multi-layer structure, the reconstruction first attribute coefficients of each node, and the decoding method corresponding to each node, each node is decoded from top to bottom.

12. A point cloud attribute decoding device, characterized in that, The device includes: The sorting module is used to sort all the point cloud data to be decoded and obtain sorted point cloud data to be decoded, wherein the point cloud data to be decoded is point cloud data with attributes to be decoded; A multi-layer structure construction module is used to construct a multi-layer structure based on all the point cloud data to be decoded and sorted and the distance between each point cloud data to be decoded and sorted. The decoding method acquisition module is used to acquire the decoding method corresponding to each node in the multi-layer structure. The decoding method corresponding to a node is a direct decoding mode, a predictive decoding mode, or a transform decoding mode. The predictive decoding mode decodes the node based on the information of the neighboring nodes corresponding to the node, and the transform decoding mode decodes the node based on the transform matrix. The decoding module is used to decode the point cloud attributes of each node based on the multi-layer structure and the corresponding decoding method. The decoding method acquisition module is specifically used for: setting the decoding method corresponding to all direct decoding nodes in the multi-layer structure to direct decoding mode, wherein the direct decoding node is a node in the first layer of the multi-layer structure; setting the decoding method corresponding to all predictive decoding nodes in the multi-layer structure to predictive decoding mode, wherein the predictive decoding node is a node in the second to Mth layers of the multi-layer structure that does not have a parent node; setting the decoding method corresponding to all transform decoding nodes in the multi-layer structure to transform decoding mode, wherein the transform decoding node is a node in the second to Mth layers of the multi-layer structure that has a parent node; wherein the multi-layer structure includes M layers, and the Mth layer is the lowest layer.