Point cloud attribute encoding method and apparatus, point cloud attribute decoding method and apparatus, electronic device, and storage medium

By grouping and entropy encoding of point cloud multidimensional attributes, the problem of repeated calculations in multidimensional attribute processing in the prior art is solved, and a more efficient encoding and decoding process is achieved.

WO2025044535A1PCT designated stage expired Publication Date: 2025-03-06PENG CHENG LAB
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/104704
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-08-31
Filing Date
2024-07-10
Publication Date
2025-03-06

AI Technical Summary

Technical Problem

In the prior art, when processing point cloud multidimensional attributes, there are repeated calculation steps for geometric information, resulting in an increase in encoding and decoding time and computing resources, and the attribute correlation between multidimensional attributes is not utilized.

Method used

A point cloud attribute encoding and decoding method is proposed, by grouping attribute dimensions of multi-dimensional attributes, encoding and calculations are performed using the sharing and/or related information between multiple attribute dimensions, and entropy encoding of the packet indication information and encoding coefficients.

Benefits of technology

It improves the encoding and decoding efficiency of point cloud attributes, reduces repeated calculation steps, makes full use of the correlation between multi-dimensional attributes, and thus improves processing efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024104704_06032025_PF_FP_ABST
    Figure CN2024104704_06032025_PF_FP_ABST
Patent Text Reader

Abstract

Embodiments of the present application relate to the technical field of point cloud processing, and provide a point cloud attribute encoding method and apparatus, a point cloud attribute decoding method and apparatus, an electronic device, and a storage medium. The point cloud attribute encoding method comprises: obtaining a point cloud to be encoded, wherein said point cloud comprises multi-dimensional attributes; performing attribute dimension grouping on the multi-dimensional attributes of said point cloud to obtain attribute dimension groups and attribute dimension group indication information; on the basis of common and / or related information of a plurality of attribute dimensions, performing encoding computation on one-dimensional attributes in the attribute dimension groups to obtain a target encoding attribute coefficient; performing entropy encoding on the attribute dimension group indication information, and on the basis of a preset sequence, performing entropy encoding on the target encoding attribute coefficient to obtain a point cloud code stream. The embodiments of the present application can improve the encoding and decoding efficiency for the point cloud attributes.
Need to check novelty before this filing date? Find Prior Art

Description

Point cloud attribute encoding and decoding method, device, electronic device and storage medium Technical Field

[0001] The present application relates to the field of point cloud data processing technology, and in particular to a point cloud attribute encoding and decoding method, device, electronic device and storage medium. Background Art

[0002] Existing point cloud attribute encoding technologies primarily target single-dimensional attributes. For multidimensional attributes, existing technologies process each single-dimensional attribute independently. This independent processing involves repeated geometric calculations, increasing encoding and decoding time and computing resources, while also failing to consider the correlations between multidimensional attributes. Therefore, improving the encoding and decoding efficiency of multidimensional point cloud attributes has become a pressing technical challenge.

[0003] Summary of the Invention

[0004] The main purpose of the embodiments of the present application is to propose a point cloud attribute encoding and decoding method, device, electronic device and storage medium, aiming to improve the encoding and decoding efficiency of point cloud attributes.

[0005] To achieve the above objectives, a first aspect of an embodiment of the present application proposes a point cloud attribute encoding method, comprising:

[0006] Acquire a point cloud to be encoded, wherein the point cloud to be encoded includes multi-dimensional attributes;

[0007] Performing attribute dimension grouping on the multi-dimensional attributes of the point cloud to be encoded to obtain attribute dimension grouping and attribute dimension grouping indication information;

[0008] Performing coding calculation on the single-dimensional attributes within the attribute dimension grouping according to the shared and / or related information among the multiple attribute dimensions to obtain a target coding attribute coefficient;

[0009] The attribute dimension grouping indication information is entropy coded, and the target coding attribute coefficients are entropy coded according to a preset order to obtain a point cloud code stream.

[0010] In some embodiments, the attribute dimension grouping indication information includes any one of the following:

[0011] Setting the number of single-dimensional attribute dimensions in the attribute dimension group as the attribute dimension group indication information;

[0012] Alternatively, the attribute dimension grouping number to which the single-dimensional attribute belongs is set as the attribute dimension grouping indication information.

[0013] In some embodiments, the point cloud to be encoded includes geometric information, and encoding and calculating the single-dimensional attributes within the attribute dimension group based on the shared and / or related information among multiple attribute dimensions to obtain the target encoding attribute coefficient includes any one of the following:

[0014] Sequentially obtaining a set of single-dimensional attributes within the attribute dimension groupings of one or more points; performing encoding calculations on the single-dimensional attributes within the set of attribute dimension groupings using the calculation results of the shared geometric information to obtain the target encoding attribute coefficients;

[0015] And / or, sequentially obtain a group of single-dimensional attributes within the attribute dimension grouping of one or several points; perform encoding calculation on a group of single-dimensional attributes within the attribute dimension grouping to obtain a group of encoding attribute coefficients; perform inter-attribute decorrelation calculation on a group of the encoding attribute coefficients to obtain the target encoding attribute coefficients.

[0016] In some embodiments, the preset order includes any one of the following:

[0017] Setting the arrangement order of the attribute dimensions to the first order of the preset order, and setting the arrangement order of the points in the point cloud to the second order of the preset order;

[0018] Or, setting the arrangement order of the points in the point cloud to the first order, and setting the arrangement order of the attribute dimensions to the second order;

[0019] Alternatively, points in the point cloud are grouped according to point number to obtain point groups, an arrangement order of the points in the point groups is set to the first order, an arrangement order of the attribute dimensions is set to the second order, and an order of the point groups is set to a third order of the set order;

[0020] Alternatively, the points in the point cloud are grouped by point number to obtain point groups, the attribute coefficients of the points in the point groups are reordered according to a dynamic range to obtain attribute coefficient reordering, the attribute coefficient reordering is set to the first order, and the order of the point groups is set to the second order.

[0021] To achieve the above objectives, a second aspect of an embodiment of the present application proposes a point cloud attribute decoding method, comprising:

[0022] Get point cloud stream;

[0023] Decoding the point cloud code stream to obtain attribute dimension grouping indication information, and performing entropy decoding on the point cloud code stream according to the attribute dimension grouping indication information and a preset order to obtain a set of entropy decoding attribute coefficients;

[0024] A set of entropy-decoded attribute coefficients are decoded and calculated according to the shared and / or related information among multiple attribute dimensions to obtain a set of reconstructed point cloud attributes.

[0025] In some embodiments, decoding and calculating a set of entropy-decoded attribute coefficients based on shared and / or correlated information among multiple attribute dimensions to obtain a set of reconstructed point cloud attributes includes any one of the following:

[0026] Sequentially obtaining a set of entropy decoding attribute coefficients of one or more points; decoding and calculating the set of entropy decoding attribute coefficients using the calculation results of the shared geometric data to obtain a set of reconstructed point cloud attributes;

[0027] And / or, sequentially obtaining a set of entropy decoding attribute coefficients for one or more points; performing inter-attribute inverse decorrelation calculation on a set of entropy decoding attribute coefficients to obtain updated entropy decoding attribute coefficients; performing decoding calculation on the updated entropy decoding attribute coefficients to obtain a set of reconstructed point cloud attributes.

[0028] To achieve the above-mentioned objectives, a third aspect of the embodiments of the present application provides a point cloud attribute encoding device, comprising:

[0029] A point cloud acquisition module, configured to acquire a point cloud to be encoded, wherein the point cloud to be encoded includes multi-dimensional attributes;

[0030] An attribute grouping module, configured to group the multi-dimensional attributes of the point cloud to be encoded into attribute dimensions, and obtain attribute dimension groups and attribute dimension grouping indication information;

[0031] A coding calculation module, configured to perform coding calculation on a single-dimensional attribute within the attribute dimension group based on the shared and / or related information among the multiple attribute dimensions, to obtain a target coding attribute coefficient;

[0032] The entropy coding module is used to perform entropy coding on the attribute dimension grouping indication information and to perform entropy coding on the target coding attribute coefficients according to a preset order to obtain a point cloud code stream.

[0033] To achieve the above objectives, a fourth aspect of the embodiments of the present application provides a point cloud attribute decoding device, comprising:

[0034] Code stream acquisition module, used to obtain point cloud code stream;

[0035] an entropy decoding module, configured to decode the point cloud code stream to obtain attribute dimension grouping indication information, and perform entropy decoding on the point cloud code stream according to the attribute dimension grouping indication information and a preset order to obtain a set of entropy decoding attribute coefficients;

[0036] The decoding calculation module is used to decode and calculate a set of entropy decoding attribute coefficients according to the shared and / or related information among multiple attribute dimensions to obtain a set of reconstructed point cloud attributes.

[0037] To achieve the above-mentioned purpose, the fifth aspect of an embodiment of the present application proposes an electronic device, comprising a memory and a processor, wherein the memory stores a computer program, and the processor implements the method described in the first aspect and / or the second aspect when executing the computer program.

[0038] To achieve the above-mentioned objectives, the sixth aspect of an embodiment of the present application proposes a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, it implements the method described in the first aspect and / or the second aspect.

[0039] The point cloud attribute encoding and decoding method, device, electronic device, and storage medium proposed in the present application first obtain a point cloud to be encoded, the point cloud to be encoded including multi-dimensional attributes, group the multi-dimensional attributes by attribute dimensions, obtain attribute dimension groups and attribute dimension group indication information, encode and calculate the single-dimensional attributes within the attribute dimension groups one by one based on the shared and / or related information between the multiple attribute dimensions to obtain target encoding attribute coefficients, entropy encode the attribute dimension group indication information, and entropy encode the target encoding attribute coefficients according to a preset order to obtain a point cloud code stream. By grouping the multi-dimensional attributes in the point cloud to be encoded by attribute dimensions to obtain attribute dimension groups and attribute dimension group indication information, encode and calculate the single-dimensional attributes within the attribute dimension groups based on the shared and / or related information between the multiple attribute dimensions to obtain target encoding attribute coefficients, entropy encode the attribute dimension group indication information, and entropy encode the target encoding attribute coefficients according to a preset order to obtain a point cloud code stream, the encoding efficiency of the point cloud attributes can be improved.

[0040] By acquiring a point cloud code stream, decoding to obtain attribute dimension grouping indication information, entropy decoding the point cloud code stream according to the attribute dimension grouping indication information and a preset order, obtaining a set of entropy decoded attribute coefficients, and decoding and calculating the set of entropy decoded attribute coefficients one by one based on shared and / or related information between multiple attribute dimensions, a set of reconstructed point cloud attributes is obtained. By decoding the point cloud code stream to obtain attribute dimension grouping indication information, entropy decoding the point cloud code stream according to the attribute dimension grouping indication information and a preset order, obtaining a set of entropy decoded attribute coefficients, and decoding and calculating the entropy decoded attribute coefficients based on shared and / or related information between multiple attribute dimensions to reconstruct point cloud attributes, the decoding efficiency of point cloud attributes can be improved. BRIEF DESCRIPTION OF THE DRAWINGS

[0041] FIG1 is a schematic diagram of a flow chart of a point cloud attribute encoding method provided in an embodiment of the present application;

[0042] FIG2-1 is a schematic diagram of attribute dimension grouping indication information provided in an embodiment of the present application;

[0043] FIG2-2 is a schematic diagram of another attribute dimension grouping indication information provided by an embodiment of the present application;

[0044] FIG2-3 is a schematic diagram of another attribute dimension grouping indication information provided in an embodiment of the present application;

[0045] FIG3-1 is a schematic diagram of a preset sequence provided in an embodiment of the present application;

[0046] FIG3-2 is another schematic diagram of a preset sequence provided in an embodiment of the present application;

[0047] FIG3-3 is another schematic diagram of a preset sequence provided in an embodiment of the present application;

[0048] Figure 3-4 is another schematic diagram of a preset sequence provided in an embodiment of the present application;

[0049] FIG4 is a schematic diagram of a flow chart of a point cloud attribute decoding method provided in an embodiment of the present application;

[0050] FIG5-1 is another schematic diagram of a preset sequence provided in an embodiment of the present application;

[0051] FIG5-2 is another schematic diagram of a preset sequence provided in an embodiment of the present application;

[0052] FIG5-3 is another schematic diagram of a preset sequence provided in an embodiment of the present application;

[0053] FIG5-4 is another schematic diagram of a preset sequence provided in an embodiment of the present application;

[0054] FIG6 is a schematic diagram of the structure of a point cloud attribute encoding device provided in an embodiment of the present application;

[0055] FIG7 is a schematic diagram of the structure of a point cloud attribute decoding device provided in an embodiment of the present application;

[0056] FIG8 is a schematic diagram of the hardware structure of the electronic device provided in an embodiment of the present application.

[0057] Description of reference numerals:

[0058] Point cloud acquisition module 601, attribute grouping module 602, encoding calculation module 603, entropy coding module 604;

[0059] Code stream acquisition module 701, entropy decoding module 702, decoding calculation module 703. DETAILED DESCRIPTION

[0060] In order to make the purpose, technical solutions and advantages of this application more clear, the following further describes this application in detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain this application and are not intended to limit this application.

[0061] It should be noted that although the device schematics illustrate functional module divisions and the flowcharts illustrate logical sequences, in certain circumstances, the steps shown or described may be performed in a sequence that differs from the module divisions in the device or the sequence in the flowcharts. The terms "first," "second," and so on, in the specification, claims, and drawings, are used to distinguish similar items and are not necessarily used to describe a specific sequence or precedence.

[0062] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the art to which this application pertains. The terms used herein are for the purpose of describing the embodiments of this application only and are not intended to limit this application.

[0063] Currently, existing point cloud attribute encoding technologies primarily target single-dimensional attributes. For multidimensional attributes, existing technologies process each attribute independently. This process involves geometric duplication of calculations, increasing encoding and decoding time and computing resources, while also failing to leverage the correlations between multidimensional attributes. Therefore, improving the efficiency of point cloud attribute encoding and decoding has become a pressing technical challenge.

[0064] Based on this, the embodiments of the present application provide a point cloud attribute encoding and decoding method, device, electronic device and storage medium, aiming to improve the encoding and decoding efficiency of point cloud attributes.

[0065] The methods and devices, electronic devices, and storage media provided in the embodiments of the present application are specifically described through the following embodiments. First, the methods provided in the embodiments of the present application are described.

[0066] The present application can be used in many general or special computer system environments or configurations. For example: personal computers, server computers, handheld or portable devices, tablet devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments including any of the above systems or devices, and the like. The present application can be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, and the like that perform specific tasks or implement specific abstract data types. The present application can also be practiced in distributed computing environments in which tasks are performed by remote processing devices connected via a communication network. In a distributed computing environment, program modules can be located in local and remote computer storage media, including storage devices.

[0067] It should be noted that in each specific embodiment of the present application, when it comes to the need to perform relevant processing based on data related to the user's identity or characteristics, such as user information, user behavior data, user historical data, and user location information, the user's permission or consent will be obtained first, and the collection, use, and processing of such data will comply with relevant laws, regulations, and standards. In addition, when the embodiment of the present application needs to obtain the user's sensitive personal information, the user's separate permission or consent will be obtained through a pop-up window or by jumping to a confirmation page. After clearly obtaining the user's separate permission or consent, the necessary user-related data for the normal operation of the embodiment of the present application will be obtained.

[0068] FIG1 is a schematic diagram of an optional flow chart of a point cloud attribute encoding method provided in an embodiment of the present application. The method in FIG1 may include but is not limited to steps S101 to S104 .

[0069] Step S101, obtaining a point cloud to be encoded, where the point cloud to be encoded includes multi-dimensional attributes;

[0070] Step S102, performing attribute dimension grouping on the multi-dimensional attributes of the point cloud to be coded, and obtaining attribute dimension grouping and attribute dimension grouping indication information;

[0071] Step S103, encoding and calculating the single-dimensional attributes within the attribute dimension group based on the shared and / or related information among the multiple attribute dimensions to obtain target encoding attribute coefficients;

[0072] Step S104 , performing entropy coding on the attribute dimension grouping indication information, and performing entropy coding on the target coding attribute coefficients according to a preset order to obtain a point cloud code stream.

[0073] In steps S101 to S104 shown in the embodiment of the present application, a point cloud to be encoded is obtained, wherein the point cloud to be encoded includes multi-dimensional attributes, the multi-dimensional attribute data is grouped by dimension to obtain one or more attribute dimension groups and attribute dimension group indication information, single-dimensional attributes within the attribute dimension groups are encoded and calculated based on the shared and / or related information between the multiple attribute dimensions to obtain target encoding attribute coefficients, the attribute dimension group indication information is entropy encoded, and the target encoding attribute coefficients are entropy encoded according to a preset order to obtain a point cloud code stream. By grouping the multi-dimensional attributes in the point cloud to be encoded by dimension to obtain attribute dimension groups and attribute dimension group indication information, encoding and calculating single-dimensional attributes within the attribute dimension groups based on the shared and / or related information between the multiple attribute dimensions to obtain target encoding attribute coefficients, entropy encoding the attribute dimension group indication information, and entropy encoding the target encoding attribute coefficients according to a preset order to obtain a point cloud code stream, the coding efficiency of the point cloud attributes can be improved.

[0074] In step S101 of some embodiments, the current point cloud to be encoded includes multi-dimensional attributes, wherein the multi-dimensional attributes may include, for example, color, one-dimensional reflectivity, high-dimensional reflectivity, and astronomical point cloud data, etc. The astronomical observation data in the astronomical point cloud data often has a dimension of 100 to 1000.

[0075] In step S102 of some embodiments, the multidimensional attribute data of the point cloud to be encoded is grouped by attribute dimensions to obtain attribute dimension groups. The correlation between the multidimensional attributes can be analyzed based on the distribution characteristics of the attributes of the point cloud to be encoded to obtain correlation analysis results. Based on the correlation analysis results, the multidimensional attributes with greater correlation are grouped together to obtain one or more attribute dimension groups.

[0076] And / or, the multidimensional attribute data of the point cloud to be coded is grouped by attribute dimensions to obtain attribute dimension groups. The numerical dynamic range between the multidimensional attributes can be analyzed according to the distribution characteristics of the attributes of the point cloud to be coded to obtain a dynamic range analysis result. According to the dynamic range analysis result, the multidimensional attributes with similar dynamic ranges are grouped together to obtain one or more attribute dimension groups.

[0077] And / or, the multi-dimensional attribute data of the point cloud to be coded is grouped in attribute dimensions to obtain attribute dimension groups, and the multi-dimensional attributes of the point cloud to be coded can be grouped in attribute dimensions according to user needs to obtain attribute dimension groups. It should be noted that, based on the distribution characteristics of the attributes of the point cloud to be coded and / or the application needs of the user, the single-dimensional attributes of all dimensions are grouped. For example, for high-dimensional reflectivity attributes, through preprocessing, the correlation and numerical dynamic range between the multi-dimensional attributes in the high-dimensional reflectivity attributes are analyzed, and the multi-dimensional attributes with high correlation are grouped together or the multi-dimensional attributes with similar numerical dynamic ranges are grouped together. Among them, each dimension of the high-dimensional reflectivity attribute is a single-dimensional attribute data. Alternatively, according to user needs, for astronomical simulation data, multi-dimensional attributes from the same physical quantity (velocity, magnetic field strength, etc.) can be grouped together.

[0078] In step S102 of some embodiments, attribute dimension grouping is performed on the multi-dimensional attribute data of the point cloud to be coded to obtain attribute dimension grouping indication information. The attribute dimension grouping indication information may be set based on the number of single-dimensional attribute dimensions within the attribute dimension grouping, or may be set based on the attribute dimension grouping number to which the single-dimensional attribute belongs. The attribute dimension grouping indication information indicates the attribute dimension grouping to which the single-dimensional attribute belongs.

[0079] For example, attribute dimension grouping indication information is obtained by setting the number of single-dimensional attribute dimensions within an attribute dimension group. If the attribute dimension to be grouped is N, and the N-dimensional single-dimensional attributes are divided into M groups, the attribute dimension grouping indication information can be represented as an array A: [a1, a2…aM], where a1+a2+…+aM=N, and am indicates that the mth attribute dimension group has am-dimensional single-dimensional attributes. Specifically, according to the order in which the attribute data is arranged, single-dimensional attributes numbered 1 to a1 belong to the first attribute dimension group, single-dimensional attributes numbered a1+1 to a1+a2 belong to the second attribute dimension group, and so on. As shown in Figure 2-1, specifically, according to the order of attribute dimension arrangement, let N = 15, the 15-dimensional single-dimensional attribute dimensions are numbered 1 to 15, and the attribute dimension grouping indication information array A1 is: [2,3,5,1,4], indicating that the single-dimensional attributes with attribute dimension numbers 1 to 2 belong to the first attribute dimension grouping, the single-dimensional attributes with attribute dimension numbers 3 to 5 belong to the second attribute dimension grouping, and so on. The single-dimensional attributes with attribute dimension numbers 12 to 15 belong to the fifth attribute dimension grouping.

[0080] For another example, attribute dimension grouping indication information is obtained by setting the attribute dimension grouping number to which a single-dimensional attribute belongs. If the attribute dimension to be grouped is N, the attribute dimension grouping indication information can be represented as an array B: [b1, b2, …, bN], where bn is an integer ranging from 1 to M, indicating that the nth single-dimensional attribute belongs to the bnth group, and n is an integer ranging from 1 to N. As shown in Figure 2-2, specifically, assuming that the 15 single-dimensional attributes are numbered 1 to 15 according to the attribute dimension arrangement order, the attribute dimension grouping indication array B1 is: [1, 1, 2, 2, 2, 3, 3, 3, 3, 4, 5, 5, 5, 5]. Single-dimensional attributes with attribute dimension numbers 1 to 2 belong to the first attribute dimension grouping, single-dimensional attributes with attribute dimension numbers 3 to 5 belong to the second attribute dimension grouping, and so on. Single-dimensional attributes with attribute dimension numbers 12 to 15 belong to the fifth attribute dimension grouping. Alternatively, as shown in Figure 2-3, assume that the 5-dimensional single-dimensional attribute dimensions are numbered 1 to 5, and the attribute dimension grouping indication information array B2 is: [1, 2, 1, 2, 2]. The single-dimensional attributes with attribute dimension numbers 1 and 3 belong to the first attribute dimension grouping, and the single-dimensional attributes with attribute dimension numbers 2, 4, and 5 belong to the second attribute dimension grouping.

[0081] In step S103 of some embodiments, the point cloud to be encoded includes geometric information, and encoding calculation is performed on the single-dimensional attributes in the attribute dimension grouping according to the shared and / or related information between multiple attribute dimensions to obtain target encoding attribute coefficients. This can be by sequentially obtaining the single-dimensional attributes in a group of attribute dimension groups of one or several points, and encoding calculation is performed on the single-dimensional attributes in a group of attribute dimension groups according to the calculation result of the shared geometric information to obtain target encoding attribute coefficients; or, sequentially obtaining the single-dimensional attributes in a group of attribute dimension groups of one or several points, and encoding calculation is performed on the single-dimensional attributes in a group of attribute dimension groups to obtain a group of encoding attribute coefficients, and attribute decorrelation calculation is performed on the group of encoding attribute coefficients to obtain target encoding attribute coefficients.

[0082] It should be noted that when performing coding calculations, geometrically related coding calculations are performed on multi-dimensional attributes within the attribute dimension grouping. Sharing the calculation results of the geometric information can avoid repeated geometric calculations for each single-dimensional attribute, thereby improving coding efficiency. When performing coding calculations based on the calculation results of the shared geometric information, the multi-dimensional attributes within the attribute dimension grouping can be calculated independently or in parallel.

[0083] Specifically, when predicting attributes, it is necessary to determine the neighbor points of the point to be encoded, calculate the geometric distance from the neighbor points to the point to be encoded, and calculate the attribute prediction value based on the geometric distance. For multi-dimensional attributes within the attribute dimension grouping, the neighbor point information and the geometric distance calculation results of the neighbor points to the point to be decoded can be shared. For example, when predicting attributes, according to the attribute dimension grouping indication information, the attribute dimension grouping to be processed contains G points, and each point contains H-dimensional attributes. When searching for neighbor points, for the g-th point to be processed, among the points that have been attribute decoded and reconstructed, such as the previous points, search for the three neighbor points P1, P2, and P3 with the closest geometric distance to the g-th point to be processed. For H-dimensional attributes, the calculation of searching for neighbor points only needs to be done once, and the calculation of searching for neighbor points of H-dimensional attributes can share the neighbor point search results. When calculating the attribute prediction value, the weight information based on geometric distance is shared according to the neighboring points P1, P2, and P3 to calculate the predicted value of the H-dimensional attribute. For example, Ah = (w1xA1h+w2xA2h+w2xA3h) / (w1+w2+w3), where Ah is the h-dimensional attribute prediction value of the point to be processed, A1h, A2h, A3h are the h-dimensional attribute decoding and reconstruction values ​​of the neighboring points P1, P2, and P3, and w1, w2, and w3 are the inverses of the distances from the point to be processed to the neighboring points P1, P2, and P3. For the H-dimensional attributes, the calculation of w1, w2, and w3 only needs to be done once. The calculation of the H-dimensional attribute prediction value can share the weight calculation results w1, w2, and w3 based on geometric distance.

[0084] Specifically, during attribute transformation, in some methods, a one-dimensional transformation group or a multi-layer transformation tree structure can be constructed based on the geometry of the points in the point cloud. For multi-dimensional attributes within the attribute dimension grouping, the constructed one-dimensional transformation group or multi-layer transformation tree can be shared.

[0085] For example, during attribute transformation, according to the attribute dimension grouping indication information, the attribute dimension group to be processed contains G points, each containing H-dimensional attributes. When constructing a one-dimensional transform group, a sorting code, such as a Morton code or Hilbert code, is calculated based on the geometric coordinates of each point. The points are sorted according to the geometric sorting code, and the sorting codes of two adjacent points, shifted right by K bits, are compared sequentially. Points with the same comparison result are grouped into the same transform group. Alternatively, when constructing a one-dimensional transform group, a sorting code, such as a Morton code or Hilbert code, is calculated based on the geometric coordinates of each point. The points are sorted according to the geometric sorting code, and the geometric distances of two adjacent points are compared sequentially. Points with the smaller geometric distance are grouped into the same transform group. For H-dimensional attributes, the above transform grouping calculation steps only need to be performed once, and the grouping results can be shared. During encoding calculation, based on the transform grouping results, attribute values ​​or attribute prediction residual values ​​within a group of transform groups for the h-th dimension attribute are sequentially obtained. The attribute values ​​or attribute prediction residual values ​​within this transform group are then subjected to a DCT transform to obtain attribute coding coefficients within a group of transform groups for the h-th dimension attribute, where h = 1 to H. The group calculation of H-dimensional attribute transformation coefficients can share the same one-dimensional transformation group.

[0086] For another example, during attribute transformation, according to the attribute dimension grouping indication information, the attribute dimension group to be processed contains G points, and each point contains H-dimensional attributes. When constructing a multi-layer transformation tree, it is necessary to perform a multi-layer structure calculation on the G points based on the geometric coordinate information of the points. Specifically, an L-layer structure is constructed from the bottom up. For the lth layer of the L-layer structure, the distance between two adjacent points is calculated in sequence according to the arrangement order of the nodes, such as the Euclidean distance. If the distance is less than the threshold, a node is generated in the l-1 layer as the parent node of the two points. The midpoint of the line connecting the coordinates of the two points is the coordinate of the parent node, and so on, until the 1st layer. For H-dimensional attributes, the above calculation steps of the multi-layer structure only need to be done once and can be shared. When calculating the attribute coding coefficient, based on the multi-layer structure, the h-th dimension attribute is processed in sequence, where h = 1 to H. First, each layer is traversed from bottom to top, and Haar transform is performed on each pair of transformation nodes in the multi-layer structure to obtain the DC coefficient. Then, each layer is traversed from top to bottom, and Haar transform is performed on each pair of transformation nodes in the multi-layer structure to obtain the AC coefficient. Finally, the DC coefficient of the first layer node and all AC coefficients are used as the attribute coding coefficient.

[0087] During encoding calculations, attribute-correlated encoding calculations are performed on multi-dimensional attributes within attribute dimension groups, and decorrelation calculations are performed on a set of coded attribute coefficients across multiple dimensions. This can leverage the correlations between attributes across multiple dimensions to improve attribute encoding performance. When encoding calculations are performed based on decorrelation calculations across multiple dimensions, the multi-dimensional attributes within an attribute dimension group depend on the attribute coefficients of at least one dimension that is encoded first and cannot be calculated completely independently.

[0088] For example, decorrelation calculation method 1 groups a group of attribute dimensions. After calculation, a set of coding coefficients C = [c1, c2, ..., cH] for the H-dimensional attribute of a point in the group is obtained. Decorrelation calculation can be performed on the coding attribute coefficients in the group, and a quadratic residual calculation can be performed on the H-dimensional coding attribute coefficients of a point in the group to obtain the target coding attribute coefficients D = [c1, c2-c1, c3-c1, ..., cH-c1] = [d1, d2, ..., dH].

[0089] For another example, decorrelation calculation method 2 groups a set of attribute dimensions. After calculation, for the H-dimensional attribute of a point in the group, a set of coding coefficients C = [c1, c2, ..., cH] of the point is obtained. Decorrelation calculation can be performed on the coding attribute coefficients in the group, and quadratic residual calculation can be performed on the H-dimensional coding attribute coefficients of the point in the group to obtain the target coding attribute coefficient D = [c1, c2-c1, c3-c2, ..., cH-cH-1] = [d1, d2, ..., dH];

[0090] For another example, decorrelation calculation method 3 groups a group of attribute dimensions, and after calculation, performs an H-ary DCT transform on the H-dimensional coding attribute coefficient of a point in the group to obtain the target coding attribute coefficient D=TxC=[dc,ac1,…,acH-1], where T is the H-ary DCT transformation matrix.

[0091] In step 103 of some embodiments, encoding calculations are performed on single-dimensional attributes within the attribute dimension group based on shared and / or related information across multiple attribute dimensions to obtain target encoding attribute coefficients. Based on user needs, a calculation mode flag may also be set for each attribute dimension group. This allows different calculation modes to be used for different groups based on user needs.

[0092] For example, for an N-dimensional attribute point cloud, it is divided into M groups in the order of the single-dimensional attribute dimensions. Array A: [a1, a2…aM] represents the attribute dimension grouping, where a1+a2+…+aM=N, am indicates that the mth attribute dimension grouping has am-dimensional single-dimensional attributes, and m=1,2,…,M. Array F: [f1, f2,…, fM] represents the calculation mode for the attribute dimension grouping, and fm represents the calculation mode flag for the mth attribute dimension grouping. fm=0 indicates that the single-dimensional attributes within the mth attribute dimension grouping can be calculated independently; fm=1 indicates that the single-dimensional attributes within the mth attribute dimension grouping use decorrelation calculations between multiple dimensional attributes and cannot be calculated independently. Independent calculation indicates that the data for each single-dimensional attribute within the group is independent, allowing individual single-dimensional attributes to be calculated based on application requirements.

[0093] For another example, consider an N-dimensional attribute point cloud, which is divided into M groups in the order of the single-dimensional attribute dimensions. Array A: [a1, a2…aM] represents the attribute dimension grouping, where a1+a2+…+aM=N, am indicates that the mth attribute dimension grouping has am single-dimensional attributes, and m=1 to M. Array F: [f1, f2,…, fM] represents the calculation mode for the attribute dimension grouping, and fm represents the calculation mode for the mth attribute dimension grouping. When fm=0, the single-dimensional attributes within the mth attribute dimension grouping do not use the inter-attribute decorrelation calculation method and can be calculated independently. When fm=1, the single-dimensional attributes within the mth attribute dimension grouping use decorrelation calculation method 1. When fm=2, the single-dimensional attributes within the mth attribute dimension grouping use decorrelation calculation method 2. When fm=3, the single-dimensional attributes within the mth attribute dimension grouping use decorrelation calculation method 3.

[0094] In step 103 of some embodiments, encoding calculations are performed on single-dimensional attributes within the attribute dimension groupings based on shared and / or correlated information across multiple attribute dimensions to obtain target encoded attribute coefficients. Based on user needs, a calculation mode flag can also be set for each subgroup within each attribute dimension grouping. In this way, based on user needs, a common geometric calculation mode can be used within a group of attribute dimension groups, while different subgroups can use different attribute decorrelation calculation modes.

[0095] For example, for an N-dimensional attribute point cloud, it is divided into M groups according to the order of the single-dimensional attribute dimensions. The array A: [a1, a2…aM] represents the attribute dimension grouping, where a1+a2+…+aM=N, and am indicates that the mth attribute dimension grouping has am-dimensional single-dimensional attributes, where m=1 to M. For the mth attribute dimension grouping, it is divided into Jm groups according to the order of the single-dimensional attribute dimensions. The array Am: [a1m, a2m…aJm] represents the pattern grouping within the mth attribute dimension grouping, where a1m+a2m+…+aJm=am, and ajm indicates that the jth pattern grouping within the mth attribute dimension grouping has ajm-dimensional single-dimensional attributes, where j=1 to J. The array Fm: [f1m, f2m,…, fJm] represents the calculation pattern of the mth attribute dimension grouping, and fjm represents the calculation pattern of the jth pattern grouping within the mth attribute dimension grouping. fjm=0 means that the single-dimensional attributes within the j-th pattern group within the m-th attribute dimension group do not use the inter-attribute decorrelation calculation method; fjm=1 means that the single-dimensional attributes of the j-th pattern group within the m-th attribute dimension group use the decorrelation calculation method 1; fjm=2 means that the single-dimensional attributes of the j-th pattern group within the m-th attribute dimension group use the decorrelation calculation method 2; fjm=3 means that the single-dimensional attributes of the j-th pattern group within the m-th attribute dimension group use the decorrelation calculation method 3.

[0096] In step S104 of some embodiments, entropy encoding is performed on the attribute dimension grouping indication information, and entropy encoding is performed on the target encoding attribute coefficients according to a preset order to obtain a point cloud code stream. For example, a single entropy encoder may be used to encode the target encoding attribute coefficients of all dimensions, or multiple entropy encoders may be used to encode different single-dimensional attribute coefficients.

[0097] In step S104 of some embodiments, the target encoding attribute coefficients are entropy encoded according to a preset order, wherein the preset order may be setting the arrangement order of the attribute dimension to the first order of the preset order, and setting the arrangement order of the points in the point cloud to the second order of the preset order; or, setting the arrangement order of the points in the point cloud to the first order of the preset order, and setting the arrangement order of the attribute dimension to the second order of the preset order; or, grouping the points in the point cloud by the number of points to obtain point groups, setting the arrangement order of the points in the point group to the first order of the preset order, setting the arrangement order of the attribute dimension to the second order of the preset order, and setting the order of the point groups to the third order of the preset order; or, grouping the points in the point cloud by the number of points to obtain point groups, reordering the attribute coefficients of the points in the point group according to the dynamic range to obtain attribute coefficient reordering, setting the attribute coefficient reordering to the first order of the preset order, and setting the order of the point groups to the second order of the preset order. By setting the preset order through the arrangement order of attribute dimensions, the arrangement order of points in the point cloud, the arrangement order of point groups, the arrangement order of points within point groups and the reordering of attribute coefficients, the target coding coefficients are entropy encoded in the first order, second order and third order of the preset order, and the order with higher attribute relevance can be used as the priority to improve the coding performance.

[0098] For example, entropy coding is performed in preset order 1, and target coding attribute coefficients are entropy-coded according to preset order 1, wherein preset order 1 may be to set the arrangement order of attribute dimensions to the first order of preset order 1 and to set the arrangement order of points in the point cloud to the second order of preset order 1. Assume that the attribute dimension group to be processed contains G points, each point contains H-dimensional attributes, and the target coding attribute coefficients in the attribute dimension group to be processed can be represented as a matrix R, the size of matrix R is GxH. Specifically, as shown in Figure 3-1, the preset order 1 used for entropy coding is to first sort according to the arrangement order of attribute dimensions, and then sort according to the arrangement order of points in the point cloud, that is, [r11, r12, r13, r21, r22, r23, …, r71, r72, r73]. The lines in the figure represent the preset order 1 used for entropy coding.

[0099] For another example, entropy coding preset order 2 is used, and target attribute coefficients are entropy-encoded according to preset order 2. Preset order 2 can be to set the arrangement order of points in the point cloud to the first order of preset order 2, and to set the arrangement order of attribute dimensions to the second order of preset order 2. Assume that the attribute dimension group to be processed contains G points, each point contains H-dimensional attributes, and the target attribute coefficients in the attribute dimension group to be processed can be represented as a matrix R, where the size of matrix R is G×H. Specifically, as shown in Figure 3-2, the preset order 2 used for entropy coding is to first sort the points according to the arrangement order of the point cloud, and then sort them according to the arrangement order of the attribute dimensions, that is, [r11, r21, r31, r41, r51, r61, r71, r12, ..., r72, r13, r23, r33, r43, r53, r63, r73]. The lines in the figure represent the preset order 2 used for entropy coding.

[0100] For another example, entropy encoding is performed in preset order 3, and target encoding attribute coefficients are entropy encoded according to preset order 3, where preset order 3 can be: grouping the points in the point cloud by point number to obtain point number groups, setting the arrangement order of the points in the point number groups to the first order of preset order 3, setting the arrangement order of the attribute dimensions to the second order of preset order 3, and setting the order of the point number groups to the third order of preset order 3. Assume that the target encoding attribute coefficients in the attribute dimension group to be processed include G points, each point includes H-dimensional attributes, and the target encoding attribute coefficients in the attribute dimension group to be processed can be represented as a matrix R, and the size of matrix R is GxH. Specifically, as shown in Figure 3-3, the preset order 3 for entropy coding is to group the points in the point cloud by point number, set the arrangement order of the points in the point group to the first order, set the arrangement order of the attribute dimension to the second order, and set the order of the point group to the third order, that is, [r11, r21, r12, r22, r13, r23, r31, r41, r51, r32, r42, r52, r33, r43, r53, ...]. The lines in the figure represent the preset order 3 for entropy coding.

[0101] For another example, entropy encoding is performed in preset order 4, and target encoding attribute coefficients are entropy encoded according to preset order 4, where preset order 4 can be: grouping the points in the point cloud by point number to obtain point number groups, reordering the attribute coefficients of the points in the point number groups according to the dynamic range to obtain attribute coefficient reordering, setting the attribute coefficient reordering to the first order of preset order 4, and setting the order of the point number groups to the second order of preset order 4. Assume that the target encoding attribute coefficients in the attribute dimension group to be processed include G points, each point includes H-dimensional attributes, and the target encoding attribute coefficients in the attribute dimension group to be processed can be represented as a matrix R, and the size of matrix R is GxH. Specifically, as shown in Figure 3-4, each row of the matrix R undergoes an H-ary DCT transform to obtain a dc coefficient and H-1 ac coefficients. The attribute coefficients are reordered based on the dynamic range, with dc coefficients with large dynamic ranges arranged together and ac coefficients with small dynamic ranges arranged together. One ordering of the attribute coefficients is [dc11, dc21, ac12, ac13, ac22, ac23, ac32, ac33, ac42, ac43, ac52, ac53, dc31, dc41, dc51, dc61, dc71, ac62, ac63, ...]. The lines in the figure represent the preset order used for entropy coding4.

[0102] In step 104 of some embodiments, entropy coding is performed on the target coding attribute coefficients according to a preset order. Based on user needs, a preset order flag can be set for each attribute dimension group. In this way, different preset orders can be used for different groups based on user needs.

[0103] For example, for an N-dimensional attribute point cloud, it is divided into M groups according to the order of the single-dimensional attribute dimensions. Array A: [a1, a2…aM] represents the attribute dimension grouping, where a1+a2+…+aM=N, am indicates that the mth attribute dimension grouping has am single-dimensional attributes, and m=1 to M. Array S: [s1, s2,…, sM] represents the preset order of the attribute dimension grouping, and sm represents the preset order flag for the mth attribute dimension grouping. sm=0 indicates that the preset order of the mth attribute dimension grouping is preset order 1; sm=1 indicates that the preset order of the mth attribute dimension grouping is preset order 2; sm=2 indicates that the preset order of the mth attribute dimension grouping is preset order 3; and sm=3 indicates that the preset order of the mth attribute dimension grouping is preset order 4.

[0104] In step 104 of some embodiments, after entropy coding the attribute dimension grouping indication information, the following may also be included: entropy coding the calculation mode flag information; and / or entropy coding the preset sequence flag information.

[0105] FIG4 is a schematic diagram of an optional flow chart of a point cloud attribute decoding method provided in an embodiment of the present application. The method in FIG4 may include but is not limited to steps S401 to S404:

[0106] Step S401, obtaining a point cloud code stream;

[0107] Step S402: decoding the point cloud code stream to obtain attribute dimension grouping indication information, performing entropy decoding on the point cloud code stream according to the attribute dimension grouping indication information and a preset order to obtain a set of entropy decoding attribute coefficients;

[0108] Step S403 : decoding and calculating a set of entropy-decoded attribute coefficients based on the shared and / or related information among the multiple attribute dimensions to obtain a set of reconstructed point cloud attributes.

[0109] In steps S401 to S403 illustrated in the embodiment of the present application, a point cloud code stream is acquired, the point cloud code stream is decoded, attribute dimension grouping indication information is obtained, entropy decoding is performed on the point cloud code stream according to the attribute dimension grouping indication information and a preset order, a set of entropy-decoded attribute coefficients is obtained, and the set of entropy-decoded attribute coefficients is decoded and calculated based on the shared and / or related information between multiple attribute dimensions to obtain a set of reconstructed point cloud attributes. By decoding the point cloud code stream to obtain the attribute dimension grouping indication information, entropy decoding is performed on the point cloud code stream according to the attribute dimension grouping indication information and a preset order, a set of entropy-decoded attribute coefficients is obtained, and the entropy-decoded attribute coefficients are decoded and calculated based on the shared and / or related information between multiple attribute dimensions to reconstruct point cloud attributes, thereby improving the decoding efficiency of point cloud attributes.

[0110] In step S402 of some embodiments, attribute dimension grouping indication information is obtained by decoding the point cloud code stream. The attribute dimension grouping indication information may be the number of single-dimensional attribute dimensions within the attribute dimension group; or the attribute dimension grouping indication information may be the attribute dimension grouping number to which the single-dimensional attribute belongs. The attribute dimension grouping indication information is used to indicate the attribute dimension group to which the single-dimensional attribute belongs.

[0111] For example, the attribute dimension grouping indication information can be the number of single-dimensional attribute dimensions within the attribute dimension grouping. If the attribute dimension to be grouped is N, and the N-dimensional single-dimensional attributes are divided into M groups, the attribute dimension grouping indication information can be represented as an array A: [a1, a2…aM], where a1+a2+…+aM=N, and am indicates that the mth attribute dimension grouping has am-dimensional single-dimensional attributes. Specifically, according to the order in which the attribute data is arranged, the single-dimensional attributes numbered 1 to a1 belong to the first attribute dimension grouping, the single-dimensional attributes numbered a1+1 to a1+a2 belong to the second attribute dimension grouping, and so on. For example, the attribute dimension grouping indication information array A: [2,3,5,1,4] indicates that the single-dimensional attributes numbered 1 to 2 belong to the first attribute dimension grouping, the single-dimensional attributes numbered 3 to 5 belong to the second attribute dimension grouping, and so on, until the single-dimensional attributes numbered 12 to 15 belong to the fifth attribute dimension grouping.

[0112] For another example, the attribute dimension grouping indication information can be the attribute dimension grouping number to which the single-dimensional attribute belongs. The attribute dimension to be grouped is N, and the attribute dimension grouping indication information can be represented as an array B: [b1, b2, ..., bN], where bn is an integer in the range of 1 to M, indicating that the n-th single-dimensional attribute belongs to the bn-th group. As an example, specifically, the attribute dimension grouping indication information array B1: [1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 4, 5, 5, 5, 5] indicates that the single-dimensional attributes with attribute dimension numbers 1 to 2 belong to the first attribute dimension grouping, the single-dimensional attributes with attribute dimension numbers 3 to 5 belong to the second attribute dimension grouping, and so on. The single-dimensional attributes with attribute dimension numbers 12 to 15 belong to the fifth attribute dimension grouping. As another example, the attribute dimension grouping indication information array B2: [1, 2, 1, 2, 2] indicates that the single-dimensional attributes with attribute dimension numbers 1 and 3 belong to the first attribute dimension grouping, and the single-dimensional attributes with attribute dimension numbers 2, 4, and 5 belong to the second attribute dimension grouping.

[0113] In step S402 of some embodiments, the point cloud code stream is entropy decoded according to the attribute dimension grouping indication information and the preset order to obtain a set of entropy decoded attribute coefficients, wherein the preset order can be setting the arrangement order of the attribute dimension to the first order of the preset order, and setting the arrangement order of the points in the point cloud to the second order of the preset order; or, setting the arrangement order of the points in the point cloud to the first order of the preset order, and setting the arrangement order of the attribute dimension in the preset order to the second order of the preset order; or, grouping the points in the point cloud according to the number of points to obtain point groups, setting the arrangement order of the points in the point groups to the first order of the preset order, setting the arrangement order of the attribute dimension to the second order of the preset order, and setting the order of the point groups to the third order of the preset order; or, grouping the points in the point cloud according to the number of points to obtain point groups, reordering the attribute coefficients of the points in the point groups according to the dynamic range to obtain attribute coefficient reordering, setting the attribute coefficient reordering to the first order of the preset order, and setting the order of the point groups to the second order of the preset order. By setting the preset order through the arrangement order of attribute dimensions, the arrangement order of points in the point cloud, the arrangement order of point groups, the arrangement order of points within point groups and the reordering of attribute coefficients, the point cloud code stream is entropy decoded in the first order, second order and third order of the preset order to obtain a set of entropy decoding attribute coefficients. The order with higher attribute relevance can be used as the priority to improve the decoding performance.

[0114] For example, entropy decoding is performed using preset order 1. The point cloud codestream is entropy decoded according to the attribute dimension grouping indication information and preset order 1, resulting in a set of entropy-decoded attribute coefficients. Preset order 1 may be to set the attribute dimension arrangement order to the first order of preset order 1 and the point cloud point arrangement order to the second order of preset order 1. Assume that, according to the attribute dimension grouping indication information, the attribute dimension group to be processed contains G points, each containing H-dimensional attributes. The GxH attribute coefficients obtained by entropy decoding, [c1, c2, …, cGH-1, cGH], where cGH represents the GxH coefficient, are first sorted according to the attribute dimension arrangement order and then sorted according to the point cloud point arrangement order. This yields a set of entropy-decoded attribute coefficients, represented as a matrix R of size GxH. The matrix element arrangement order is shown in Figure 5-1.

[0115] For another example, entropy decoding preset order 2 is used. The point cloud codestream is entropy decoded according to the attribute dimension grouping indication information and preset order 2 to obtain a set of entropy-decoded attribute coefficients. Preset order 2 may be to set the order of the points in the point cloud to the first order of preset order 2 and the order of the attribute dimensions to the second order of preset order 2. Assume that, according to the attribute dimension grouping indication information, the attribute dimension group to be processed contains G points, each containing H-dimensional attributes. The GxH attribute coefficients obtained by entropy decoding, [c1, c2, …, cGH-1, cGH], where cGH represents the GxHth coefficient, are first sorted according to the order of the points in the point cloud and then sorted according to the attribute dimension order. This yields a set of entropy-decoded attribute coefficients, represented as a matrix R of size GxH. The order of matrix elements is shown in Figure 5-2, where cHG represents the HxGth coefficient, so cHG is equivalent to cGH.

[0116] For another example, entropy decoding is performed according to preset order 3. The point cloud code stream is entropy decoded according to the attribute dimension grouping indication information and preset order 3 to obtain a set of entropy decoded attribute coefficients. The preset order 3 may be grouping the points in the point cloud by point number to obtain point number groups, setting the arrangement order of the points within the point number groups to the first order of preset order 3, setting the arrangement order of the attribute dimensions to the second order of preset order 3, and setting the order of the point number groups to the third order of preset order 3. Assume that, according to the attribute dimension grouping indication information, the attribute dimension group to be processed contains G points, each point containing H-dimensional attributes. The GxH attribute coefficients [c1, c2, ..., cGH-1, cGH] obtained by entropy decoding, where cGH represents the GxH coefficient, are first sorted according to the arrangement order of the points within the point number group, then sorted according to the arrangement order of the attribute dimensions, and finally sorted according to the order of the point number groups, to obtain a set of entropy decoded attribute coefficients, represented as a matrix R. The size of matrix R is GxH, and G1+G2+...+Gp=G. The order of matrix elements is shown in Figure 5-3, where cHG represents the HxGth coefficient, so cHG is cGH; cHG1 represents the HxG1th coefficient, and cHG1+HG2 represents the HxG1+HxG2th coefficient.

[0117] For another example, entropy decoding is performed according to preset order 4. The point cloud code stream is entropy decoded according to the attribute dimension grouping indication information and preset order 4 to obtain a set of entropy-decoded attribute coefficients. Preset order 4 may be grouping the points in the point cloud by point number to obtain point number groups, reordering the attribute coefficients of the points within the point number groups according to the dynamic range to obtain attribute coefficient reordering, setting the attribute coefficient reordering to the first order of preset order 4, and setting the order of the point number groups to the second order of preset order 4. Assume that, according to the attribute dimension grouping indication information, the attribute dimension group to be processed contains G points, each point containing H-dimensional attributes. The GxH attribute coefficients [c1, c2, ..., cGH-1, cGH] obtained by entropy decoding, where cGH represents the GxH coefficient, are first sorted according to the preset order of the points within the point number group, and then sorted according to the order of the point number group, to obtain a set of entropy-decoded attribute coefficients, represented as a matrix R. The size of matrix R is GxH, and G1+G2+...+Gp=G. For example, when p=3, the order of matrix elements is as shown in Figure 5-4, where cHG represents the HxGth coefficient, so cHG is cGH; cHG1 represents the HxG1th coefficient, and cHG1+HG2 represents the HxG1+HxG2th coefficient.

[0118] In some embodiments, before entropy decoding the point cloud code stream according to the preset order, step S402 may further include decoding the point cloud code stream to obtain preset sequence flag information. The preset sequence flag information may identify the preset order used for each group of attribute dimensions. The preset order may be different for different groups.

[0119] For example, for an N-dimensional attribute, the attributes are grouped into M groups according to the order of the single-dimensional attributes. Array A: [a1, a2…aM] represents the attribute dimension grouping, where a1+a2+…+aM=N, and am indicates that the mth attribute dimension grouping has am single-dimensional attributes, where m=1-M. Array S: [s1, s2,…, sM] represents the preset order of the attribute dimension grouping, and sm represents the preset order flag for the mth attribute dimension grouping. sm=0 indicates that the preset order of the mth attribute dimension grouping is preset order 1; sm=1 indicates that the preset order of the mth attribute dimension grouping is preset order 2; sm=2 indicates that the preset order of the mth attribute dimension grouping is preset order 3; and sm=3 indicates that the preset order of the mth attribute dimension grouping is preset order 4.

[0120] In step S403 of some embodiments, a set of entropy-decoded attribute coefficients are decoded and calculated based on the shared and / or related information between multiple attribute dimensions to obtain a set of reconstructed point cloud attributes, wherein the decoding calculation may be to decode and calculate the entropy-decoded attribute coefficients of a set of attribute dimension groups based on the shared and / or related information between multiple attribute dimensions to obtain a set of reconstructed point cloud attributes, or to sequentially obtain the entropy-decoded attribute coefficients within a set of attribute dimension groups for one or several points, and decode and calculate the single-dimensional attributes within a set of attribute dimension groups based on the calculation results of the shared geometric information to obtain a set of reconstructed point cloud attributes; and / or sequentially obtain the entropy-decoded attribute coefficients within a set of attribute dimension groups for one or several points, perform inter-attribute inverse decorrelation calculation on the set of entropy-decoded attribute coefficients to obtain inverse decorrelation decoded attribute coefficients, and perform decoding calculation on the inverse decorrelation decoded attribute coefficients within a set of attribute dimension groups to obtain a set of reconstructed point cloud attributes.

[0121] It should be noted that when performing decoding calculations, geometrically related decoding calculations are performed on the entropy decoding attribute coefficients within a group of attribute dimension groups. Sharing the calculation results of the geometric information can avoid repeated geometric calculations for each single-dimensional attribute, thereby improving decoding efficiency. When performing decoding calculations based on the calculation results of the shared geometric information, multiple single-dimensional entropy decoding attribute coefficients within the attribute dimension group can be calculated independently or in parallel.

[0122] Specifically, when predicting attributes, it is necessary to determine the neighboring points of the point to be decoded, calculate the geometric distance from the neighboring points to the point to be decoded, and calculate the attribute prediction value based on this geometric distance. For multiple single-dimensional entropy-decoded attribute coefficients within an attribute dimension group, the neighboring point information and the geometric distance calculation results from the neighboring points to the point to be decoded can be shared.

[0123] For example, during attribute prediction, based on the attribute dimension grouping indication, the attribute dimension group to be processed contains G points, each containing H-dimensional attributes. During neighbor point search calculations, for the g-th point to be processed, the three neighboring points (P1, P2, and P3) with the closest geometric distance to the g-th point are searched among the points reconstructed from attribute decoding, such as the previous points. For H-dimensional attributes, the neighbor point search calculation only requires a single run, and the H-dimensional attribute neighbor point search calculation can share the neighbor point search results. When calculating the attribute prediction value, the weight information based on geometric distance is shared according to the neighboring points P1, P2, and P3 to calculate the predicted value of the H-dimensional attribute. For example, Ah = (w1xA1h+w2xA2h+w2xA3h) / (w1+w2+w3), where Ah is the h-dimensional attribute prediction value of the point to be processed, A1h, A2h, A3h are the h-dimensional attribute decoding and reconstruction values ​​of the neighboring points P1, P2, and P3, and w1, w2, and w3 are the reciprocals of the distances from the point to be processed to the neighboring points P1, P2, and P3. For the H-dimensional attributes, the calculation of w1, w2, and w3 only needs to be done once. The calculation of the H-dimensional attribute prediction value can share the weight calculation results w1, w2, and w3 based on geometric distance.

[0124] Specifically, during attribute transformation, in some methods, a one-dimensional transformation group or a multi-layer transformation tree structure is constructed based on the geometry of the points in the point cloud. For multiple single-dimensional entropy decoding attribute coefficients within the attribute dimension group, the constructed one-dimensional transformation group or multi-layer transformation tree can be shared.

[0125] For example, during attribute transformation, according to the attribute dimension grouping indication information, the attribute dimension group to be processed contains G points, each containing H-dimensional attributes. When determining a one-dimensional transformation group, a sorting code, such as a Morton code or Hilbert code, is calculated based on the geometric coordinates of each point. The number of right-shift bits, K, is obtained. The sorting codes of two adjacent points, after being right-shifted by K bits, are then compared sequentially according to the order of the original data points. Points with the same comparison results are grouped into the same transformation group. Alternatively, when constructing a one-dimensional transformation group, a sorting code, such as a Morton code or Hilbert code, is calculated based on the geometric coordinates of each point. The points are sorted according to the geometric sorting code, and the geometric distances of two adjacent points are compared sequentially. Adjacent points with the smallest geometric distance are grouped into the same transformation group. For H-dimensional attributes, the above transformation grouping calculation only needs to be performed once, and the transformation grouping results can be shared.

[0126] For another example, during attribute transformation, according to the attribute dimension grouping indication information, the attribute dimension group to be processed contains G points, and each point contains H-dimensional attributes. When constructing a multi-layer transformation tree, it is necessary to perform a multi-layer structure calculation on the G points based on the geometric coordinate information of the points. Specifically, an L-layer structure is constructed from the bottom up. For the lth layer of the L-layer structure, the distance between two adjacent points is calculated in sequence according to the arrangement order of the nodes, such as the Euclidean distance. If the distance is less than the threshold, a node is generated in the l-1th layer as the parent node of the two points. The midpoint of the line connecting the coordinates of the two points is the coordinate of the parent node, and so on, until the first layer. When performing decoding calculations, based on the multi-layer structure, the h-th dimension attribute is processed in sequence, where h = 1 to H, and each layer is traversed from top to bottom. Haar inverse transform is performed on each pair of transformation nodes in the multi-layer structure to obtain the reconstructed attribute value of the h-th dimension attribute. For H-dimensional attributes, the above calculation steps for constructing the multi-layer transformation tree only need to be done once, and the results of the multi-layer transformation tree construction can be shared.

[0127] It should be noted that during decoding calculations, attribute-related decoding calculations are performed on the multi-dimensional entropy-decoded attribute coefficients within a group of attribute dimension groups, and inverse decorrelation calculations are performed between the attribute coefficients of multiple dimensions. When decoding calculations are performed based on inverse decorrelation calculations between the attribute coefficients of multiple dimensions, the multiple single-dimensional entropy-decoded attribute coefficients within the attribute dimension group depend on at least the attribute coefficient of the first decoded dimension and cannot be calculated completely independently.

[0128] For example, in reverse decorrelation calculation method 1, for an H-dimensional entropy decoding attribute coefficient D = [d1, d2, ..., dH] of a point within a set of attribute dimension groups, reverse decorrelation calculation can be performed on the entropy decoding attribute coefficients within the group. An inverse quadratic residual calculation is performed on the H-dimensional entropy decoding attribute coefficients of the point within the group to obtain reverse decorrelation decoding attribute coefficients C = [c1, c2, ..., cH] = [d1, d2 + d1, d3 + d1, ..., dH + d1], where c1 = d1.

[0129] For another example, in reverse decorrelation calculation method 2, for an H-dimensional entropy decoding attribute coefficient D = [d1, d2, ..., dH] of a point within a set of attribute dimension groups, reverse decorrelation calculation can be performed on the entropy decoding attribute coefficients within the group. An inverse quadratic residual calculation is performed on the H-dimensional entropy decoding attribute coefficients of the point within the group to obtain reverse decorrelation decoding attribute coefficients C = [c1, c2, ..., cH] = [d1, d2 + c1, d3 + c2, ..., dH + cH - 1], where c1 = d1.

[0130] For another example, inverse decorrelation calculation method 3, for a point in a set of attribute dimension groups, the H-dimensional entropy decoding attribute coefficient D = [d1, d2, ..., dH] = [dc, ac1, ..., acH-1], the entropy decoding attribute coefficient in the group can be inversely decorated. The H-dimensional entropy decoding attribute coefficient of the point in the group is subjected to an H-ary inverse DCT transform to calculate the inverse decorrelation decoding attribute coefficient C = DxT -1 =[c1,c2,…,cH],T -1 is the H-ary inverse DCT transform matrix.

[0131] In some embodiments, before step 403, the step may further include decoding the point cloud code stream to obtain computing mode flag information. The computing mode flag information may identify the computing mode used for each attribute dimension grouping. Different attribute dimension groupings may have different computing modes.

[0132] For example, for an N-dimensional attribute, the attributes are grouped into M groups in the order of their dimensionality. Array A: [a1, a2…aM] represents the attribute dimension grouping, where a1+a2+…+aM=N, and am indicates that the mth attribute dimension grouping has am-dimensional unidimensional attributes, where m=1-M. Array F: [f1, f2,…, fM] represents the calculation mode for the attribute dimension grouping, and fm represents the calculation mode flag for the mth attribute dimension grouping. fm=0 indicates that the unidimensional attributes within the mth attribute dimension grouping can be calculated independently; fm=1 indicates that the unidimensional attributes within the mth attribute dimension grouping use decorrelation calculations between multiple dimensional attributes and cannot be calculated independently. Independent calculation means that the data for each unidimensional attribute within the group is independent, allowing individual unidimensional attributes to be calculated independently based on application requirements.

[0133] For another example, consider an N-dimensional attribute point cloud, which is divided into M groups in the order of the single-dimensional attribute dimensions. Array A: [a1, a2…aM] represents the attribute dimension grouping, where a1+a2+…+aM=N, and am indicates that the mth attribute dimension grouping has am-dimensional single-dimensional attributes, where m=1 to M. Array F: [f1, f2,…, fM] represents the calculation mode for the attribute dimension grouping, and fm represents the calculation mode for the mth attribute dimension grouping. When fm=0, it means that the single-dimensional attributes within the mth group of attribute dimension grouping do not use the inter-attribute decorrelation calculation method and can be calculated independently of each other; fm=1 means that the single-dimensional attributes within the mth group of attribute dimension grouping use decorrelation calculation method 1, and the inverse decorrelation method 1 can be used when performing decoding calculation; fm=2 means that the single-dimensional attributes within the mth group of attribute dimension grouping use decorrelation calculation method 2, and the inverse decorrelation method 2 can be used when performing decoding calculation; fm=3 means that the single-dimensional attributes within the mth group of attribute dimension grouping use decorrelation calculation method 3, and the inverse decorrelation method 3 can be used when performing decoding calculation.

[0134] In some embodiments, before step 403, the step may further include decoding the point cloud code stream to obtain a calculation mode flag for each mode subgroup within the attribute dimension grouping. The calculation mode flag information of the mode subgroup within the attribute dimension grouping can identify the calculation mode used by each mode subgroup within the attribute dimension grouping. Different mode subgroups within a set of attribute dimension groups can have different calculation modes.

[0135] For example, for an N-dimensional attribute, the attributes are grouped into M groups according to the order of their dimensions. Array A: [a1, a2…aM] represents the attribute dimension groupings, where a1+a2+…+aM=N, and am indicates that the mth attribute dimension grouping has am-dimensional single-dimensional attributes, where m=1 to M. For the mth attribute dimension groupings, the attributes are grouped into Jm groups according to the order of their dimensions. Array Am: [a1m, a2m…aJm] represents the pattern groupings within the mth attribute dimension groupings, where a1m+a2m+…+aJm=am, and ajm indicates that the jth pattern grouping within the mth attribute dimension groupings has ajm-dimensional single-dimensional attributes, where j=1 to J. Array Fm: [f1m, f2m,…, fJm] represents the calculation pattern for the mth attribute dimension groupings, and fjm represents the calculation pattern for the jth pattern grouping within the mth attribute dimension groupings. fjm=0 means that the single-dimensional attributes in the j-th pattern group within the m-th attribute dimension group do not use the inter-attribute decorrelation calculation method; fjm=1 means that the single-dimensional attributes of the j-th pattern group within the m-th attribute dimension group use decorrelation calculation method 1, and the inverse decorrelation method 1 can be used when performing decoding calculation; fjm=2 means that the single-dimensional attributes of the j-th pattern group within the m-th attribute dimension group use decorrelation calculation method 2, and the inverse decorrelation method 2 can be used when performing decoding calculation; fjm=3 means that the single-dimensional attributes of the j-th pattern group within the m-th attribute dimension group use decorrelation calculation method 3, and the inverse decorrelation method 3 can be used when performing decoding calculation.

[0136] Please refer to Figure 6. An embodiment of the present application also provides a point cloud attribute encoding device, which can implement the above-mentioned point cloud attribute encoding method. The point cloud attribute encoding device is applied to an encoder, and the device includes: a point cloud acquisition module 601, an attribute grouping module 602, an encoding calculation module 603 and an entropy encoding module 604.

[0137] The point cloud acquisition module 601 is used to acquire a point cloud to be encoded, wherein the point cloud to be encoded includes multi-dimensional attributes. The attribute grouping module 602 is used to group the multi-dimensional attributes of the point cloud to be encoded by attribute dimensions, obtaining attribute dimension groups and attribute dimension group indication information. The encoding calculation module 603 is used to perform encoding calculations on single-dimensional attributes within the attribute dimension groups based on the shared and / or related information between the multiple attribute dimensions, obtaining target encoding attribute coefficients. The entropy coding module 604 is used to entropy code the attribute dimension group indication information and entropy code the target encoding attribute coefficients according to a preset order to obtain a point cloud codestream. By grouping the multi-dimensional attributes in the point cloud to be encoded by dimensions to obtain attribute dimension groups and attribute dimension group indication information, performing encoding calculations on single-dimensional attributes within the attribute dimension groups based on the shared and / or related information between the multiple attribute dimensions to obtain target encoding attribute coefficients, entropy coding the attribute dimension group indication information, and entropy coding the target encoding attribute coefficients according to a preset order to obtain a point cloud codestream, the encoding efficiency of the point cloud attributes can be improved.

[0138] The specific implementation of the point cloud attribute encoding device is basically the same as the specific embodiment of the above-mentioned point cloud attribute encoding method, and will not be repeated here.

[0139] Please refer to Figure 7. An embodiment of the present application also provides a point cloud attribute decoding device, which can implement the above-mentioned point cloud attribute decoding method. The point cloud attribute decoding device is applied to a decoder, and the device includes: a code stream acquisition module 701, an entropy decoding module 702, and a decoding calculation module 703.

[0140] The bitstream acquisition module 701 is used to acquire a point cloud bitstream. The entropy decoding module 702 is used to decode the point cloud bitstream to obtain attribute dimension grouping indication information. Based on the attribute dimension grouping indication information and a preset order, the point cloud bitstream is entropy decoded to obtain a set of entropy-decoded attribute coefficients. The decoding calculation module 703 decodes and calculates the set of decoded attribute coefficients based on shared and / or related information across multiple attribute dimensions to obtain a set of reconstructed point cloud attributes.

[0141] By decoding the point cloud code stream to obtain attribute dimension grouping indication information, the point cloud code stream is entropy decoded according to the attribute dimension grouping indication information and a preset order to obtain a set of entropy decoding attribute coefficients. The entropy decoding attribute coefficients are decoded and calculated based on the shared and / or related information between multiple attribute dimensions to reconstruct the point cloud attributes, which can improve the decoding efficiency of the point cloud attributes.

[0142] The specific implementation of the point cloud decoding device is basically the same as the specific embodiment of the above-mentioned point cloud decoding method, and will not be repeated here.

[0143] The present application also provides an electronic device comprising a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the aforementioned point cloud attribute encoding method and / or point cloud attribute decoding method. The electronic device can be any smart terminal, including a tablet computer and an in-vehicle computer.

[0144] Please refer to FIG8 , which illustrates a hardware structure of an electronic device according to another embodiment. The electronic device includes:

[0145] The processor 801 may be implemented as a general-purpose CPU (Central Processing Unit), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of the present application.

[0146] The memory 802 can be implemented in the form of a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM). The memory 802 can store an operating system and other application programs. When the technical solutions provided in the embodiments of this specification are implemented through software or firmware, the relevant program codes are stored in the memory 802 and are called by the processor 801 to execute the point cloud attribute encoding method and / or point cloud attribute decoding method of the embodiments of this application.

[0147] Input / output interface 803, used to implement information input and output;

[0148] Communication interface 804, used to implement communication interaction between this device and other devices, which can be achieved through wired means (such as USB, network cable, etc.) or wireless means (such as mobile network, WiFi, Bluetooth, etc.);

[0149] Bus 805 , which transmits information between various components of the device (e.g., processor 801 , memory 802 , input / output interface 803 , and communication interface 804 );

[0150] The processor 801 , the memory 802 , the input / output interface 803 and the communication interface 804 are connected to each other in communication within the device via a bus 805 .

[0151] An embodiment of the present application further provides a computer-readable storage medium storing a computer program. When the computer program is executed by a processor, the above-mentioned point cloud attribute encoding method and / or point cloud attribute decoding method are implemented.

[0152] The memory, as a non-transient computer-readable storage medium, can be used to store non-transient software programs and non-transient computer executable programs. In addition, the memory may include a high-speed random access memory and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some embodiments, the memory may optionally include a memory remotely arranged relative to the processor, and these remote memories may be connected to the processor via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0153] The embodiments described in the embodiments of this application are intended to more clearly illustrate the technical solutions of the embodiments of this application and do not constitute a limitation on the technical solutions provided by the embodiments of this application. Those skilled in the art will appreciate that with the evolution of technology and the emergence of new application scenarios, the technical solutions provided in the embodiments of this application are also applicable to similar technical problems.

[0154] Those skilled in the art will understand that the technical solutions shown in the figures do not constitute a limitation on the embodiments of the present application, and may include more or fewer steps than shown in the figures, or a combination of certain steps, or different steps.

[0155] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, i.e., they may be located in one place or distributed across multiple network units. Some or all of the modules may be selected based on actual needs to achieve the objectives of this embodiment.

[0156] Those skilled in the art will appreciate that all or some of the steps in the methods, systems, and functional modules / units in the devices disclosed above may be implemented as software, firmware, hardware, or appropriate combinations thereof.

[0157] The terms "first", "second", "third", "fourth", etc. (if any) in the specification of the present application and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequential order. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0158] It should be understood that in this application, "at least one (item)" means one or more, and "plurality" means two or more. "And / or" is used to describe the association relationship of associated objects, indicating that three relationships may exist. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist at the same time, where A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following items" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, c can be single or multiple.

[0159] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the above-mentioned units is only a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0160] The units described above as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0161] In addition, the functional units in the various embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.

[0162] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, which is stored in a storage medium and includes multiple instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of various embodiments of the present application. The aforementioned storage medium includes: various media that can store programs, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0163] The preferred embodiments of the present invention are described above with reference to the accompanying drawings, but are not intended to limit the scope of the present invention. Any modifications, equivalent substitutions, and improvements made by those skilled in the art without departing from the scope and essence of the present invention should be within the scope of the present invention.

Claims

1. A point cloud attribute encoding method, characterized in that: include: Acquire a point cloud to be encoded, wherein the point cloud to be encoded includes multi-dimensional attributes; Performing attribute dimension grouping on the multi-dimensional attributes of the point cloud to be encoded to obtain attribute dimension grouping and attribute dimension grouping indication information; According to the common and / or related information among the multiple attribute dimensions, encoding and calculating the single-dimensional attributes in the attribute dimension grouping is performed to obtain a target encoding attribute coefficient; The attribute dimension grouping indication information is entropy encoded, and the target encoding attribute coefficients are entropy encoded according to a preset order to obtain a point cloud code stream.

2. The method according to claim 1, characterized in that The attribute dimension grouping indication information includes any one of the following: The number of single-dimensional attribute dimensions in the attribute dimension group is set as the attribute dimension group indication information; Or, the attribute dimension grouping number to which the single-dimensional attribute belongs is set as the attribute dimension grouping indication information.

3. The method according to claim 1, characterized in that The point cloud to be encoded includes geometric information, and encoding and calculating the single-dimensional attributes in the attribute dimension group according to the shared and / or related information among multiple attribute dimensions to obtain the target encoding attribute coefficient includes any one of the following: Sequentially obtain a set of single-dimensional attributes within the attribute dimension groupings of one or more points; Performing encoding calculation on a single-dimensional attribute in a group of attribute dimension groups by using the calculation result of the shared geometric information to obtain the target encoding attribute coefficient; and / or, sequentially obtaining a set of single-dimensional attributes within the attribute dimension groupings of one or more points; A coding calculation is performed on a group of single-dimensional attributes within the attribute dimension grouping to obtain a group of coded attribute coefficients; and an attribute decorrelation calculation is performed on a group of the coded attribute coefficients to obtain the target coded attribute coefficients.

4. The method according to claim 1, characterized in that: The preset sequence includes any one of the following: The arrangement order of the attribute dimensions is set to the first order of the preset order, and the arrangement order of the points in the point cloud is set to the second order of the preset order; Or, the arrangement order of the points in the point cloud is set to the first order, and the arrangement order of the attribute dimension is set to the second order; Or, grouping the points in the point cloud according to the number of points to obtain point groups, setting the arrangement order of the points in the point groups to the first order, setting the arrangement order of the attribute dimensions to the second order, and setting the order of the point groups to a third order of the preset order; Or, the points in the point cloud are grouped according to the number of points to obtain point groups, the attribute coefficients of the points in the point groups are reordered according to the dynamic range to obtain attribute coefficient reordering, the attribute coefficient reordering is set to the first order, and the order of the point groups is set to the second order.

5. A point cloud attribute decoding method, characterized in that: include: Get point cloud stream; Decoding the point cloud code stream to obtain attribute dimension grouping indication information, and performing entropy decoding on the point cloud code stream according to the attribute dimension grouping indication information and a preset order to obtain a set of entropy decoding attribute coefficients; A set of entropy-decoded attribute coefficients are decoded and calculated according to the shared and / or related information among multiple attribute dimensions to obtain a set of reconstructed point cloud attributes.

6. The method according to claim 5, characterized in that The decoding and calculation of a set of entropy decoded attribute coefficients according to the shared and / or related information among the multiple attribute dimensions to obtain a set of reconstructed point cloud attributes includes any one of the following: Sequentially obtaining a set of entropy decoding attribute coefficients of one or more points; Decoding and calculating a set of entropy decoding attribute coefficients using the calculation results of the shared geometric information to obtain a set of reconstructed point cloud attributes; And / or, sequentially obtaining a group of entropy decoding attribute coefficients of one or more points; performing inverse decorrelation calculation between multiple dimensional attributes on a group of entropy decoding attribute coefficients to obtain a group of reconstructed point cloud attributes.

7. A point cloud attribute encoding device, characterized in that: include: A point cloud acquisition module, used to acquire a point cloud to be encoded, wherein the point cloud to be encoded includes multi-dimensional attributes; An attribute grouping module, used for performing attribute dimension grouping on the multi-dimensional attributes of the point cloud to be encoded, and obtaining attribute dimension grouping and attribute dimension grouping indication information; A coding calculation module, used for performing coding calculation on a single-dimensional attribute in the attribute dimension group according to the shared and / or related information among multiple attribute dimensions, to obtain a target coding attribute coefficient; The entropy coding module is used to perform entropy coding on the attribute dimension grouping indication information and to perform entropy coding on the target coding attribute coefficients according to a preset order to obtain a point cloud code stream.

8. A point cloud attribute decoding device, characterized in that: include: Code stream acquisition module, used to obtain point cloud code stream; An entropy decoding module is used to decode the point cloud code stream to obtain attribute dimension grouping indication information, and perform entropy decoding on the point cloud code stream according to the attribute dimension grouping indication information and a preset order to obtain a set of entropy decoding attribute coefficients; The decoding calculation module is used to decode and calculate a set of entropy decoding attribute coefficients according to the shared and / or related information among multiple attribute dimensions to obtain a set of reconstructed point cloud attributes.

9. An electronic device, characterized in that: The invention comprises a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the point cloud attribute encoding method according to any one of claims 1 to 4 and / or the point cloud attribute decoding method according to any one of claims 5 to 6 is implemented.

10. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the point cloud attribute encoding method described in any one of claims 1 to 4 and / or the point cloud attribute decoding method described in any one of claims 5 to 6 are implemented.

Citation Information

Patent Citations

  • Point cloud encoding and decoding method, encoder, decoder, and computer storage medium

    CN113826385A

  • Point cloud attribute coding method and device, point cloud attribute decoding method and device and related equipment

    CN115086672A

  • Point cloud attribute coding method, point cloud decoding method and terminal

    CN116233385A

  • Coding and decoding method and device of point cloud attribute, equipment and storage medium

    CN116233467A

  • Point cloud attribute coding and decoding method and device, electronic equipment and storage medium

    CN117221610A