WO2022057091A1 - 一种点云属性编码方法、解码方法、编码设备及解码设备 - Google Patents

一种点云属性编码方法、解码方法、编码设备及解码设备 Download PDF

Info

Publication number
WO2022057091A1
WO2022057091A1 PCT/CN2020/132450 CN2020132450W WO2022057091A1 WO 2022057091 A1 WO2022057091 A1 WO 2022057091A1 CN 2020132450 W CN2020132450 W CN 2020132450W WO 2022057091 A1 WO2022057091 A1 WO 2022057091A1
Authority
WO
WIPO (PCT)
Prior art keywords
attribute
layer
point cloud
coefficient
coefficients
Prior art date
Application number
PCT/CN2020/132450
Other languages
English (en)
French (fr)
Inventor
陈悦汝
王静
赵文博
李革
高文
Original Assignee
鹏城实验室
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 鹏城实验室 filed Critical 鹏城实验室
Priority to US18/252,872 priority Critical patent/US20230419554A1/en
Publication of WO2022057091A1 publication Critical patent/WO2022057091A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/005Tree description, e.g. octree, quadtree
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/148Wavelet transforms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/40Tree coding, e.g. quadtree, octree
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds

Definitions

  • the present invention relates to the technical field of point cloud processing, in particular to a point cloud attribute encoding method, decoding method, encoding device and decoding device.
  • 3D point cloud is an important form of digitization of the real world. With the rapid development of 3D scanning equipment (such as laser, radar, etc.), the accuracy and resolution of point clouds become higher. High-precision point clouds are widely used in the construction of urban digital maps, and play a technical supporting role in many popular researches such as smart cities, unmanned driving, and cultural relics protection.
  • a point cloud is obtained by sampling the surface of an object by a 3D scanning device.
  • the number of points in a frame of point cloud is generally in the millions.
  • Each point contains geometric information and attribute information such as color and reflectivity, and the amount of data is very large.
  • the huge data volume of 3D point cloud brings great challenges to data storage and transmission, so it is very important to compress point cloud.
  • Point cloud compression is mainly divided into geometric compression and attribute compression.
  • the point cloud attribute compression framework described in the test platform PCEM provided by the China AVS (Audio Video Coding Standard) point cloud compression working group is mainly based on the prediction of the nearest neighbors.
  • the above-mentioned related technologies do not make good use of the correlation of point cloud attributes, resulting in a decrease in compression performance.
  • the present invention provides a point cloud attribute encoding method, decoding method, encoding device and decoding device, aiming at solving the problem that the existing point cloud attribute encoding and decoding method cannot effectively utilize the attribute correlation between sub-nodes, resulting in poor point cloud attribute compression performance. Bad question.
  • a point cloud attribute encoding method comprising the steps of:
  • the target node in the binary tree structure For the target node in the binary tree structure, obtain the child nodes of the target node, perform transform calculation on the first attribute coefficient of the child node, and obtain the first attribute coefficient and the second attribute coefficient of the target node, wherein , the target node is a node in the P-th level in the binary tree structure, and P is a positive integer greater than or equal to 1 and less than or equal to N-1;
  • the first attribute coefficient of the root node in the binary tree structure and the second attribute coefficient of each of the target nodes in the binary tree structure are used as the output coefficients of the point cloud attribute encoding method, wherein the leaves in the binary tree structure are
  • the first attribute coefficient of the node is the point cloud attribute value corresponding to the leaf node, and the leaf node has no second attribute coefficient.
  • the binary tree includes a binary tree constructed based on point cloud geometry and a set one-dimensional arrangement order and a K-D tree constructed based on point cloud geometry S-dimensional arrangement order, where S is a natural number.
  • the method for encoding point cloud attributes wherein, when the binary tree is a K-D tree, the method for calculating the transformation of target nodes in different layers of the N-layer K-D tree structure specifically includes:
  • N-2 layer of the N-layer KD tree structure all nodes in the layer are used as target nodes, and the cotyledon nodes of the target node in the N-1 layer and the N layer are obtained, and the first attribute coefficient of the cotyledon node is obtained. performing calculation to obtain the first attribute coefficient and the second attribute coefficient of the target node;
  • For the target node in the KD tree structure obtain two child nodes of the target node, perform Haar wavelet transform on the first attribute coefficients of the two child nodes, and obtain the first attribute coefficient and the first attribute coefficient of the target node.
  • Two attribute coefficients wherein the target node is a node in the Mth level in the KD tree structure, and M is a positive integer greater than or equal to 1 and less than or equal to N-3.
  • the method for encoding point cloud attributes wherein the method steps for calculating the first attribute coefficient and the second attribute coefficient of the N-2 layer target node of the N-layer K-D tree structure include:
  • the non-leaf node in the layer is used as the target node, and two cotyledon nodes of the target node are obtained, and the first attribute coefficients of the two cotyledon nodes are respectively a1, a2, then calculate the first attribute coefficient of the target node as (a1+a2)/2, and the second attribute coefficient as (a1-a2)/2;
  • N-2 layers of the N-layer KD tree structure take all nodes in the layer as target nodes, obtain two child nodes of the target node, perform the same calculation above on the first attribute coefficients of the two child nodes, and obtain The first attribute coefficient and the second attribute coefficient of the target node, let the second attribute coefficient of the two child nodes also be the second attribute coefficient of the target node.
  • the method for encoding point cloud attributes wherein another method for calculating the first attribute coefficient and the second attribute coefficient of the N-2 layer target node of the N-layer K-D tree structure includes:
  • For the N-2 layer of the N-layer KD tree structure take all the nodes in the layer as the target node, and obtain the K cotyledon nodes of the target node in the N-1 layer and the N layer, where K is greater than or equal to 2 and less than or equal to 4 , perform one-dimensional discrete cosine transform on the first attribute coefficients of the K cotyledon nodes, use the low-frequency DC coefficients as the first attribute coefficients of the target node, and use the remaining high-frequency AC coefficients as the first attribute coefficients of the target node.
  • Two attribute coefficients; normalize the first attribute coefficient and the second attribute coefficient of the target node, and the normalization method is dividing by
  • the method for encoding point cloud attributes wherein the steps of calculating the first attribute coefficient and the second attribute coefficient of the target node from the N-3 layers of the N-layer K-D tree structure to the first layer of the target node include:
  • the target node includes two child nodes, and the first attribute coefficients of the two child nodes are a1 and a2 respectively;
  • the method for encoding point cloud attributes wherein, when the binary tree is a binary tree constructed based on point cloud geometry and setting a one-dimensional arrangement order, then the transformation calculation method for the target nodes of different layers of the N-layer binary tree structure, Specifically include:
  • the transformation starts from the N-1 layer of the N-layer binary tree and ends at the first layer of the tree;
  • the point cloud attribute encoding method wherein the first attribute coefficient of the root node in the binary tree structure and the second attribute coefficient of each of the target nodes in the binary tree structure are used as the point cloud attribute encoding method After the output coefficient of , it also includes steps:
  • Entropy encoding is directly performed on the output coefficient to obtain a transform coefficient code stream
  • the output coefficients are quantized to obtain quantized transform coefficients; the quantized transform coefficients are entropy encoded to obtain a quantized transform coefficient code stream.
  • the described point cloud attribute encoding method wherein, before the Haar wavelet transform is performed, it further comprises the steps:
  • the point cloud attribute encoding method wherein the first attribute coefficient of the root node in the binary tree structure and the second attribute coefficient of each of the target nodes in the binary tree structure are used as the point cloud attribute encoding method After the output coefficient of , it also includes steps:
  • a point cloud attribute encoding device including a processor, a memory, an encoding module and a bus;
  • a computer-readable program executable by the processor is stored on the memory
  • the bus implements connection communication between the processor and the memory
  • the processor When the processor is configured to call the encoding module to execute the computer-readable program, the steps in the point cloud attribute encoding method of the present invention are implemented.
  • a point cloud attribute decoding method comprising the steps of:
  • the transform coefficients decoded from the code stream are used as inverse transform input coefficients to perform inverse transform calculation to obtain the inverse transform output coefficients of the current layer;
  • the reconstructed output coefficients obtained by inverse transformation from the parent node of the previous layer and the transform coefficients decoded from the code stream are used as the inverse of the target node of the current layer. Transform the input coefficients and perform inverse transform calculation to obtain the reconstructed output coefficients;
  • the binary tree includes a binary tree constructed based on point cloud geometry and setting a one-dimensional arrangement order, and a K-D tree constructed based on a three-dimensional arrangement order of point cloud geometry.
  • the method for decoding point cloud attributes wherein, when the binary tree is a K-D tree, the inverse transform calculation method for target nodes at different layers of the N-layer K-D tree structure specifically includes:
  • layers 1 to N-3 of the N-layer KD tree structure take all nodes in the layer as target nodes, perform inverse Haar wavelet transform on the inverse transform input coefficients of each target node, and obtain the current layer The inverse transform output coefficient of ;
  • N-2 layers of the N-layer KD tree structure take all the nodes in the layer as target nodes, calculate the inverse transform input coefficients of each target node, and obtain the reconstructed output coefficients of the target nodes as the target nodes in the N- Reconstruction coefficients of cotyledon nodes at layers 1 and N.
  • the method for decoding point cloud attributes wherein the calculation steps of the reconstructed output coefficients of the target nodes from the 1st layer to the N-3th layer of the N-layer K-D tree structure include:
  • the target node contains input coefficients, which are b1 and b2 respectively, and the Haar wavelet inverse transformation is performed to obtain the reconstructed output coefficient of the target node as and
  • the method for decoding point cloud attributes wherein the calculation method steps of the reconstruction output coefficient of the target node of the N-2 layer of the N-layer K-D tree binary tree structure include:
  • the N-2th layer of the N-layer KD tree structure take all the nodes in the layer as the target node, obtain the two child nodes of the target node in the N-1 layer, and the input coefficients of the target node are b1, b2 respectively , the reconstruction output coefficients of the calculated target node are (b1+b2) and (b1-b2), and the reconstruction output coefficients are the reconstruction input coefficients of the two sub-nodes of the target node in the N-1 layer;
  • N-1th layer of the N-layer KD tree structure For the N-1th layer of the N-layer KD tree structure, take all non-leaf nodes in the layer as target nodes, obtain the two sub-leaf nodes of the target node in the N layer, and reconstruct the data obtained from the parent node of the previous layer.
  • the output coefficients and the transform coefficients decoded from the code stream are used as the input coefficients of the target node of the current layer to perform the same calculation as above, and two reconstructed output coefficients of the target node are obtained.
  • the method for decoding point cloud attributes wherein the other calculation method steps of the reconstruction output coefficient of the target node of the N-2 layer of the N-layer binary tree structure include:
  • the input coefficient of the target node is inversely normalized, and the processing method is multiplied by Then perform inverse one-dimensional discrete cosine transform to obtain K reconstructed output coefficients of the target node.
  • the described point cloud tree decoding method wherein, when the binary tree is a binary tree constructed based on point cloud geometry and setting a one-dimensional arrangement order, then the inverse transformation of the target nodes at different layers of the N-layer binary tree structure is calculated.
  • methods including:
  • the inverse transformation starts from the first layer of the binary tree and ends at the N-1th layer of the tree;
  • the method for decoding point cloud attributes wherein the step of decoding the point cloud code stream to obtain the point cloud transformation coefficients includes:
  • Entropy decoding is performed on the point cloud code stream to obtain the point cloud transformation coefficient
  • the method for decoding point cloud attributes wherein after performing the inverse Haar wavelet transform, the method further includes the step of: converting the reconstructed attribute values of the YUV color space into the reconstructed attribute values of the RGB space.
  • the method for decoding point cloud attributes wherein after using the reconstructed output coefficients of the leaf nodes as point cloud attribute transformation reconstruction values, the method further comprises the steps of:
  • Entropy decoding is performed on the point cloud code stream to obtain an attribute residual value; the sum of the attribute residual value and the transformed and reconstructed point cloud attribute value is calculated as the point cloud attribute reconstruction value;
  • a point cloud attribute decoding device including a processor, a memory, an encoding module and a bus;
  • a computer-readable program executable by the processor is stored on the memory
  • the bus implements connection communication between the processor and the memory
  • the processor When the processor is configured to invoke the encoding module to execute the computer-readable program, the steps in the point cloud attribute decoding method of the present invention are implemented.
  • the point cloud attribute encoding method and decoding method provided by the present invention solve the problem of sparse characteristics of point cloud data, and can improve the utilization of attribute correlation between sub-nodes, thereby effectively improving the point cloud attribute Compression performance.
  • FIG. 1 is a first flowchart of a preferred embodiment of a method for encoding a point cloud attribute provided by the present invention.
  • FIG. 2 is a schematic diagram of constructing a K-D tree structure according to the present invention.
  • FIG. 3 is a second flowchart of a point cloud attribute encoding method provided by the present invention.
  • FIG. 4 is a schematic structural diagram of a point cloud attribute encoding device provided by the present invention.
  • FIG. 5 is a first flow chart of a preferred embodiment of a point cloud attribute decoding method provided by the present invention.
  • FIG. 6 is a second flow chart of a point cloud attribute decoding method provided by the present invention.
  • FIG. 7 is a schematic diagram of constructing a binary tree based on Morton order.
  • the present invention provides a point cloud attribute encoding method, decoding method, encoding device and decoding device.
  • the present invention is further described in detail below with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are only used to explain the present invention, but not to limit the present invention.
  • FIG. 1 is a flowchart of a preferred embodiment of a point cloud attribute encoding method provided by the present invention. As shown in the figure, it includes steps:
  • the target node in the binary tree structure For the target node in the binary tree structure, obtain the child nodes of the target node, perform transform calculation on the first attribute coefficient of the child node, and obtain the first attribute coefficient and the second attribute coefficient of the target node. , wherein the target node is a node in the P-th level in the binary tree structure, and P is a positive integer greater than or equal to 1 and less than or equal to N-1;
  • the binary tree includes a binary tree constructed based on point cloud geometry and setting a one-dimensional arrangement order, and a K-D tree constructed based on a three-dimensional arrangement order of point cloud geometry, but is not limited thereto.
  • Haar wavelet transform is applied to attribute encoding of point clouds, and the specific implementation is as follows: firstly, KD tree decomposition is performed on the point cloud to obtain an N-layer KD tree structure, and each leaf node of the KD tree corresponds to The attribute value (such as color) of a three-dimensional point of a point cloud to be encoded, set this attribute value as the DC attribute coefficient of the leaf node, and perform Haar wavelet transform based on the binary tree structure shown in FIG. 2 .
  • the KD tree constructed in this embodiment is a binary tree structure as shown in Figure 2, and the steps for dividing the three-dimensional point coordinates are: for each node, first select a direction from x, y, and z (generally the direction with the largest variance, That is, the most discrete direction of the point distribution), along this direction, divide the space into two parts, so that the number of three-dimensional points in the two spaces is the same, and these two spaces are the corresponding child nodes; repeat the above steps until the node is within the There is only one three-dimensional point, and the division of the node is stopped; different from the octree division of the point cloud, each node of the KD tree division used in this embodiment must contain at least one point cloud three-dimensional point, and the leaf node only appears in N layer and N-1 layer.
  • the method for calculating the transformation of target nodes in different layers of the N-layer KD tree structure specifically includes: for the N-2 layers of the N-layer KD tree structure, taking all nodes in the layer as target nodes, obtaining The target node is in the cotyledon node of the N-1 layer and the N layer, calculates the first attribute coefficient of the cotyledon node, and obtains the first attribute coefficient and the second attribute coefficient of the target node; for the KD tree For the target node in the structure, obtain two child nodes of the target node, perform Haar wavelet transform on the first attribute coefficient of the two child nodes, and obtain the first attribute coefficient and the second attribute coefficient of the target node, wherein , the target node is a node in the Mth level in the KD tree structure, where M is a positive integer greater than or equal to 1 and less than or equal to N-3.
  • the method step for calculating the first attribute coefficient (DC coefficient) and the second attribute coefficient (AC coefficient) of the target node of the N-2 layer of the N-layer KD tree structure includes: for the N-layer In the N-1 layer of the KD tree structure, the non-leaf node in the layer is used as the target node, and the two cotyledon nodes of the target node are obtained.
  • the first attribute coefficients of the two cotyledon nodes are a1 and a2 respectively, then calculate the The first attribute coefficient of the target node is (a1+a2)/2, and the second attribute coefficient is (a1-a2)/2; for the N-2 layers of the N-layer KD tree structure, all nodes in the layer are used as the target node, obtain the two child nodes of the target node, perform the same calculation above on the first attribute coefficients of the two child nodes, obtain the first attribute coefficient and the second attribute coefficient of the target node, and let the two child nodes
  • the second attribute coefficient of is also the second attribute coefficient of the target node.
  • the method for calculating the first attribute coefficient (DC coefficient) and the second attribute coefficient (AC coefficient) of the N-2 layer target node of the N-layer KD tree structure includes: for the N-layer KD tree structure Layer N-2 of the KD tree structure, take all the nodes in the layer as target nodes, and obtain the K cotyledon nodes of the target node in the N-1 layer and the N layer (the cotyledon node specifically refers to the child node of the leaf node, here The child nodes of non-leaf nodes are not considered), K is an integer greater than or equal to 2 and less than or equal to 4, and a one-dimensional discrete cosine transform is performed on the first attribute coefficients of the K sub-leaf nodes, and the low-frequency DC coefficient is used as the target node.
  • the first attribute coefficient, the other high-frequency AC coefficients are used as the second attribute coefficient of the target node; the first attribute coefficient and the second attribute coefficient of the target node are normalized, and the normalization method
  • the point cloud is divided into a KD tree, each node of the KD tree must contain at least one 3D point of the point cloud, and the leaf node of the KD tree contains only one 3D point of the point cloud, which only appears in the N layer and N-1 layer.
  • layer N-2 calculate the first attribute coefficient and the second attribute coefficient of all nodes.
  • K is an integer greater than or equal to 2 and less than or equal to 4
  • the transformed low-frequency DC coefficient namely c 1
  • the remaining high-frequency AC coefficients namely c 2 , . . . , c K
  • C′ ⁇ R K is the final input coefficient of the node.
  • the first attribute coefficients of all nodes in the N-2 layer will be used as the input coefficients of the subsequent Haar wavelet transform to be transformed continuously.
  • the second attribute coefficients of all nodes in the N-2 layer will be directly used as coding coefficients, and will be quantized and entropy coded as required.
  • the node contains two child nodes, whose DC attribute coefficients are a1 and a2 respectively, and the DC of the node is calculated.
  • the coefficient is The AC coefficient is
  • the N-1 layer and the N-2 layer are the preprocessing steps of Haar wavelet transform, and the DC coefficient of the node in the N-2 layer can be regarded as the average value of the three-dimensional points it contains, as the input signal value of the wavelet transform.
  • the Haar wavelet transform is carried out, and the transformation matrix is Finally, through the process, a first attribute coefficient of a root node and a plurality of second attribute coefficients obtained from different layers are obtained, and these coefficients can be quantized and entropy coded as coding coefficients.
  • the first attribute coefficient of the root node in the K-D tree structure and the second attribute coefficient of each of the target nodes in the K-D tree structure are used as output coefficients of the point cloud attribute encoding method.
  • entropy encoding is performed directly on the output coefficients according to the requirements to obtain a transform coefficient code stream; or quantization of the output coefficients is performed to obtain quantized transform coefficients, and the quantized transform coefficients are entropy encoded to obtain a quantized transform coefficient code stream.
  • this embodiment designs a coding residual processing module to solve this problem.
  • the coding residual processing module adopts the following three methods during coding Method: Calculate the difference between the original point cloud attribute value and the reconstructed point cloud attribute value as the attribute residual value, and perform entropy encoding on the attribute residual value to obtain the residual point cloud code stream; or, calculate the original point cloud attribute value and The difference between the reconstructed point cloud attribute values is used as an attribute residual value; the attribute residual value is quantized to obtain an attribute quantization residual coefficient; the attribute quantization residual coefficient is encoded to obtain a residual point cloud code stream; or, calculating The difference between the attribute value of the original point cloud and the attribute value of the reconstructed point cloud is used as the attribute residual value; the attribute residual value is quantized to obtain the attribute quantization residual coefficient; the attribute quantization residual coefficient is encoded to obtain the residual point cloud Codestream; encodes the attribute quantization residual residue.
  • a transformation method is used to transform the point cloud to obtain transformation coefficients, and then quantization is performed to obtain quantized transformation coefficients, followed by inverse quantization to obtain reconstructed transformation coefficients, and finally inverse transformation is performed to obtain reconstructed transformation coefficients.
  • Point cloud attribute values The reconstructed point cloud and the original point cloud are passed into the coding residual processing module as input data.
  • the attribute residual value of the reconstructed point cloud and the original point cloud at each spatial point is obtained first, and then Quantize the attribute residual value according to the requirements to obtain the attribute quantization residual coefficient, and finally encode the attribute quantization residual coefficient.
  • Method 1 For the attribute residual value, no quantization processing is required, that is, the quantization step size is 1, and the attribute residual value is directly encoded; Method 2: For the attribute residual value Residual value, encoding the attribute quantization residual residue and attribute quantization residual coefficient.
  • the calculation of attribute residual values needs to be performed in the color space of the original point cloud. If the reconstructed attribute values of the point cloud generated by the inverse transformation are in different color spaces from the attribute values of the original point cloud, for example, the original point cloud has attribute values in the RGB color space, while the attribute values generated by the inverse transform are in the YUV color space. Then it is necessary to perform color space conversion on the reconstructed attribute value of the point cloud generated by the inverse transformation, and convert it to the same color space as the original point cloud.
  • the present invention also provides a point cloud attribute decoding device, as shown in FIG. 4 , which includes at least one processor (processor) 20; display screen 21; Including communication interface (Communications Interface) 23 and bus 24.
  • the processor 20 , the display screen 21 , the memory 22 and the communication interface 23 can communicate with each other through the bus 24 .
  • the display screen 21 is set to display a user guide interface preset in the initial setting mode.
  • the communication interface 23 can transmit information.
  • the processor 20 may invoke logic instructions in the memory 22 to perform the methods in the above-described embodiments.
  • logic instructions in the memory 22 can be implemented in the form of software functional units and can be stored in a computer-readable storage medium when sold or used as an independent product.
  • the memory 22 may be configured to store software programs and computer-executable programs, such as program instructions or modules corresponding to the methods in the embodiments of the present disclosure.
  • the processor 20 executes functional applications and data processing by running the software programs, instructions or modules stored in the memory 22, ie, implements the methods in the above embodiments.
  • the memory 22 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required for at least one function; the storage data area may store data created according to the use of the electronic device, and the like. Additionally, memory 22 may include high-speed random access memory, and may also include non-volatile memory. For example, U disk, mobile hard disk, read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic disk or optical disk and other media that can store program codes, or temporary state storage medium.
  • U disk U disk, mobile hard disk, read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic disk or optical disk and other media that can store program codes, or temporary state storage medium.
  • a point cloud attribute decoding method is also provided, as shown in FIG. 5 , which includes the steps:
  • the transform coefficients decoded from the code stream are used as inverse transform input coefficients to perform inverse Haar wavelet transform to obtain the inverse transform output coefficients of the current layer;
  • the binary tree includes a binary tree constructed based on point cloud geometry and a set one-dimensional arrangement order and a K-D tree constructed based on a three-dimensional arrangement order of point cloud geometry, but not limited thereto.
  • the method for decoding point cloud attributes is also described below by taking the binary tree as a KD tree as an example.
  • Haar wavelet transform is applied to the attribute decoding of point clouds.
  • the specific implementation method is as follows: Decomposition to obtain an N-layer KD tree structure, where each leaf node of the KD tree structure corresponds to the attribute value of a point cloud three-dimensional point to be decoded and reconstructed.
  • the point cloud code stream is decoded to obtain point cloud transformation coefficients, including a first attribute coefficient (DC coefficient) of the root node and a plurality of second attribute coefficients (AC coefficients) from different nodes.
  • DC coefficient first attribute coefficient
  • AC coefficients second attribute coefficients
  • the transform coefficients (one DC coefficient, one AC coefficient, denoted as b1, b2) obtained by decoding the code stream are used as the inverse transform input coefficients, and the inverse Haar wavelet transform is performed. , get two output coefficients a1, a2, the calculation formula is a1, a2 will be the input DC coefficients of the second layer inverse transform.
  • the method for calculating the inverse transformation of target nodes at different layers of the N-layer KD tree structure specifically includes: starting from the inverse transformation of the second layer of the KD tree until the end of the inverse transformation of the N-3th layer, from The output coefficients obtained by the inverse transform of the previous layer and the transform coefficients decoded from the code stream are used as the inverse transform input coefficients of the current layer node to perform inverse Haar wavelet transform to obtain the output transform coefficients;
  • the N-2th layer of the N-layer KD tree structure take all the nodes in the layer as the target node, obtain the two child nodes of the target node in the N-1 layer, and the input coefficients of the target node are b1, b2 respectively , calculate the reconstructed output coefficients of the target node as (b1+b2) and (b1-b2), and the reconstructed output coefficients are the reconstructed input coefficients of the two sub-nodes of the target node at the N-1 layer; for the N-layer KD In the N-1th layer of the tree structure, all non-leaf nodes in the layer are used as target nodes, and the two sub-leaf nodes of the target node in the N layer are obtained, and the reconstructed output coefficients obtained from the parent node of the previous layer and the slave code stream are obtained.
  • the transform coefficients decoded in are used as the input coefficients of the target node of the current layer to perform the same calculation as above, and the two reconstructed output coefficients of the target node are obtained.
  • a1, a2 will be used as input coefficients for the inverse processing of the N-1th layer.
  • the output coefficient obtained from the previous layer is the reconstructed attribute coefficient of the node.
  • another method for calculating the reconstructed output coefficients of the target nodes of the N-2 layer of the N-layer KD tree structure includes: for the N-2 layers of the N-layer KD tree structure, All nodes in the inner node are used as target nodes, and the K cotyledon nodes of the target node in the N-1 layer and the N layer are obtained, where K is an integer greater than or equal to 2 and less than or equal to 4, and the input coefficient of the target node is inversely normalized processing, the processing method is multiplied by Then perform inverse one-dimensional discrete cosine transform to obtain K reconstructed output coefficients of the target node.
  • the output coefficients obtained from the inverse transform and the transform coefficients decoded from the code stream are used as the inverse transform input coefficients of the N-2 layer nodes to perform inverse normalization and inverse DCT transform to obtain Reconstructed values of point cloud properties.
  • Calculate all nodes in the N-2 layer and obtain the K cotyledon nodes of the node in the N-1 layer and the N layer for the target node, where K is an integer greater than or equal to 2 and less than or equal to 4.
  • the K reconstructed output coefficients are the reconstructed first attribute coefficients of the corresponding cotyledon nodes, that is, the reconstructed values of the corresponding point cloud attributes.
  • all leaf nodes in this embodiment obtain a reconstructed attribute coefficient by calculation, and correspondingly, all reconstructed attribute values of the point cloud can be obtained.
  • the signal in the transform node be a row vector F ⁇ R 2 (2 child nodes)
  • the transformed coefficient be a row vector C ⁇ R 2
  • the constructed transform matrix is Haar transform and inverse Haar transform can be expressed as:
  • the inventive transformation has higher performance in YUV space, so if the color attributes of the original point cloud are in RGB space, this embodiment can first perform color space conversion on attribute values. The transformation is then performed in the YUV color space. Correspondingly, in the decoding process, the inverse transformation will generate the reconstructed color attribute value in the YUV space, and all need to inverse color space transformation to obtain the reconstructed color attribute value in the original point cloud color space (RGB color space).
  • the step of decoding the point cloud code stream to obtain the point cloud transform coefficients includes: performing entropy decoding on the point cloud code stream to obtain the point cloud transform coefficients; Entropy decoding is performed on the cloud code stream to obtain quantized transform coefficients; the quantized transform coefficients are inversely quantized to obtain the point cloud transform coefficients.
  • this embodiment designs a decoding residual processing module to solve this problem.
  • the decoding residual processing module adopts the following three methods during decoding. Method: perform entropy decoding on the point cloud code stream to obtain the attribute residual value; calculate the sum of the attribute residual value and the transformed and reconstructed point cloud attribute value as the point cloud attribute reconstruction value; Entropy decoding to obtain attribute quantization residual coefficients; inverse quantization of the attribute quantization residual coefficients to obtain inverse quantization attribute residual values; calculating the sum of the inverse quantization attribute residual values and the transformed and reconstructed point cloud attribute values as point cloud attribute reconstruction value; or, performing entropy decoding on the point cloud code stream to obtain attribute quantization residual coefficients and attribute quantization residual residuals; performing inverse quantization on the attribute quantization residual coefficients to obtain inverse quantization attribute residual values; The sum of the attribute quantization residual residue, the inverse quantization attribute residual value, and the transformed and reconstructed point cloud attribute value is taken as the
  • this embodiment firstly uses the inverse transform method to reconstruct the point cloud to obtain the reconstructed point cloud attribute value, and transmits the reconstructed point cloud attribute value and the quantized residual coefficient code stream as input data to the decoding residual Poor processing module.
  • the module firstly, entropy decoding is performed on the quantized residual coefficient code stream to obtain attribute quantized residual coefficients. Then, inverse quantization is performed on the attribute quantization residual coefficient to obtain the reconstructed attribute residual value, and finally the reconstructed attribute residual value and the reconstructed point cloud attribute value are added to obtain the final point cloud attribute decoding result.
  • Method 1 For the existing attribute residual value code stream, first perform entropy decoding on it to obtain the attribute residual value. The residual value and the reconstructed point cloud attribute value are added to obtain the final point cloud attribute decoding result; Attribute Quantization Residual Residual and Attribute Quantization Residual Coefficient. Then, inverse quantization is performed on them respectively to obtain the residual residual of the reconstructed attribute and the residual coefficient of the reconstructed attribute. Finally, the reconstructed attribute residual residue, the reconstructed attribute residual coefficient and the reconstructed point cloud attribute value are added to obtain the final point cloud attribute decoding result.
  • the decoding residual processing module needs to perform in the color space of the original point cloud. If the reconstructed attribute values of the point cloud generated by the inverse transformation are in different color spaces from the attribute values of the original point cloud, for example, the original point cloud has attribute values in the RGB color space, while the attribute values generated by the inverse transform are in the YUV color space. Then it is necessary to perform color space conversion on the reconstructed attribute value of the point cloud generated by the inverse transformation, and convert it to the same color space as the original point cloud.
  • a device for decoding point cloud attributes based on Haar wavelet transform which includes a processor, a memory, an encoding module and a bus;
  • a computer-readable program executable by the processor is stored on the memory
  • the bus implements connection communication between the processor and the memory
  • the processor implements the steps in the method according to the present invention when the processor is configured to invoke the encoding module to execute the computer-readable program.
  • Table 1 is a comparison table of the rate-distortion data of luminance, chromaticity and reflectance under the condition of limited lossy geometry and lossy attributes
  • Table 2 is a comparison table of the rate-distortion data of luminance, chromaticity and reflectance under the condition of lossless geometry and lossy attributes
  • Table 3 is a comparison table of the color properties and the rate-distortion data of the reflectance of the red (R), green (G), and blue (B) color channels under the condition of lossless geometry and limited lossy properties.
  • Table 4 is a comparison table of bit rate data of color and reflectivity under the condition of lossless geometry and lossless attribute
  • a binary tree is constructed based on the point cloud geometry and one-dimensional arrangement order, such as a binary tree constructed based on Morton order, or a binary tree constructed based on Hilbert order.
  • the binary tree can be constructed in the following two ways:
  • the root node contains M points, and the root node is divided into two child nodes.
  • the left child node includes the points with the sequence numbers 1 to M/2, and the right child node includes the points of the order (M/2+1) to M.
  • the other is a bottom-up construction method, which uses M points as the nodes of the lowest level (set as the Nth level) of the binary tree; two adjacent points are merged in order to form their parent nodes (that is, serial numbers 1 and 1). 2's point merging, 3 and 4's point merging, etc.).
  • These parent nodes constitute the nodes of the N-1 layer, and these nodes are arranged in the merged order (that is, the parent nodes of sequence numbers 1 and 2 are arranged first, the parent nodes of sequence numbers 3 and 4 are arranged in the second place, etc.).
  • all leaf nodes of the binary tree contain a point cloud data point.
  • the method of the above-mentioned embodiment can be used to perform hierarchical transformation to obtain the first attribute coefficient of the root node and the second attribute coefficient of other nodes as the output coefficients of the point cloud, and quantize the output coefficients coding.
  • a target node in a binary tree structure constructed based on a specific arrangement order obtain a child node of the target node, perform transform calculation on the first attribute coefficient of the child node, and obtain the first attribute coefficient of the target node. an attribute coefficient and a second attribute coefficient.
  • the transformation starts from the N-1th layer of the tree and ends at the first layer of the tree.
  • the transformation calculation is performed on each target node. If the target node has two children, the transformation matrix The first attribute coefficients of the two child nodes are transformed to obtain the first attribute coefficient and the second attribute coefficient of the target node.
  • the first attribute coefficient of the root node in the binary tree structure and the second attribute coefficient of each of the target nodes in the binary tree structure are used as output coefficients of the point cloud attribute encoding method, wherein the leaves in the binary tree structure are
  • the first attribute coefficient of the node is the point cloud attribute value corresponding to the leaf node, and the leaf node has no second attribute coefficient.
  • the transform coefficients decoded from the code stream are used as inverse transform input coefficients to perform inverse transform calculation to obtain the inverse of the current layer. Transform output coefficients.
  • the inverse transformation starts from the first layer of the tree and ends at the N-1th layer of the tree.
  • the inverse transform calculation is performed on the inverse transform input coefficients of each target node. If the target node has two children, the inverse transformation matrix The inverse transform obtains two reconstructed output coefficients, which are used as the inverse transform input coefficients of the two sub-nodes of the n+1th layer of the target node.
  • T 1 a transformation matrix used for each layer
  • Morton sorting is first performed on the point cloud, and multi-layer wavelet transform is performed based on the Morton sorting.
  • the attribute values of two adjacent nodes are transformed.
  • the forward and reverse transformation matrix is as follows: At the same time, two adjacent points are merged into a node in the N-1th layer, and the sum value (DC term) obtained by the transformation is used as the attribute value of the node in the N-1 layer.
  • the last node is directly used as the node in the N-1th layer, and its attribute value is multiplied by According to this transformation method, the nodes from the Nth layer to the second layer are transformed in pairs. Finally, the sum value (DC term) transformed by the second layer node and the difference value (AC term) transformed by other layers are outputted as transform coefficients for quantization and coding.
  • the specific method is that, when encoding, firstly, the point cloud is transformed by the above transformation method to obtain a set of transformation coefficients. Next, the transform coefficients are quantized, and this embodiment uses an expanded quantization step size, which is:
  • Q trans is the quantization step size of the transform coefficients
  • Q set is the given quantization step size. Then inverse quantization and inverse transform are performed on the quantized transform coefficients to obtain the reconstructed point cloud. Then, the attribute residual coefficient of each spatial point of the reconstructed point cloud and the original point cloud is obtained. Finally, according to the given quantization step size Q set , the residual coefficient is quantized, and the quantized residual is encoded.
  • the color attribute compression task when the color attribute compression task is performed, the color attribute is firstly converted into a color space, that is, RGB is converted into a YUV color space.
  • the transformation operations described in Scheme 1 are respectively performed on the three dimensions to obtain transformation coefficients.
  • the quantization step size can be correspondingly enlarged in this embodiment.
  • the forward and inverse transformation matrix of is:
  • this embodiment only quantizes and encodes the transform coefficient; for the near-lossy attribute compression condition, it is necessary to additionally calculate the residual coefficient, and quantize and encode both the transform coefficient and the residual coefficient.
  • the calculation of the residual coefficient is as follows. First, inverse quantization and inverse transform are performed on the above-mentioned quantized transform coefficients to obtain a reconstructed point cloud. Then, inverse color space conversion is performed to obtain the reconstructed attribute value in the RGB space, and then the residual between the reconstructed attribute value and the original attribute value is calculated as the residual coefficient.
  • the present invention uses the binary tree structure to realize the Haar wavelet transform of the point cloud data, which effectively solves the problem of the sparse characteristic of the point cloud data, and can improve the utilization of the attribute correlation between the sub-nodes, thereby effectively improving the point cloud data.
  • the present invention utilizes the designed coding residual processing module and decoding residual processing module to realize lossless compression and near-lossless compression (limited-lossy) with Hausdorff error as the evaluation standard; properties, transform compression processing in YUV space, and residual compression processing in RGB space, which can achieve efficient compression; and methods, which are independent of each other, and users can decide whether to use residual coding according to their needs; and the coding residual processing module and decoding residual processing module can be used as general post-processing techniques, combined with other compression methods to achieve lossless and near-lossless attribute compression.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Software Systems (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Geometry (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Algebra (AREA)
  • Computer Graphics (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

一种点云属性编码方法、解码方法、编码设备及解码设备,点云属性编码方法包括步骤:根据目标点云内点的位置将点云进行二叉树划分,构建N层二叉树结构,N为大于1的正整数;对于N层二叉树结构中的目标节点,获取所述目标节点的子节点,对所述子节点的第一属性系数进行变换计算,获取所述目标节点的第一属性系数和第二属性系数,其中,所述目标节点为所述二叉树结构中第P级中的节点,P为大于等于1且小于等于N-1的正整数;将根节点的第一属性系数以及二叉树结构中各个所述目标节点的第二属性系数作为点云属性编码方法的输出系数。本点云属性编码方法和解码方法能提升子节点之间属性相关性地利用,有效提高点云属性压缩性能。

Description

一种点云属性编码方法、解码方法、编码设备及解码设备 技术领域
本发明涉及点云处理技术领域,特别涉及一种点云属性编码方法、解码方法、编码设备及解码设备。
背景技术
三维点云是现实世界数字化的重要表现形式。随着三维扫描设备(如激光、雷达等)的快速发展,点云的精度和分辨率变得更高。高精度点云广泛应用于城市数字化地图的构建,在智慧城市、无人驾驶、文物保护等众多热门研究中起技术支撑作用。点云是三维扫描设备对物体表面采样所获取的,一帧点云的点数一般是百万级别,其中每个点包含几何信息和颜色、反射率等属性信息,数据量十分庞大。三维点云庞大的数据量给数据存储、传输等带来了巨大挑战,因此对点云进行压缩变得十分重要。
点云压缩主要分为几何压缩和属性压缩。目前由中国AVS(Audio Video coding Standard)点云压缩工作组所提供的测试平台PCEM中描述的点云属性压缩框架主要是通过近邻点预测。但是,上述相关技术没有很好的利用点云属性的相关性,导致压缩性能降低。
因此,现有技术还有待于改进和发展。
发明内容
本发明提供一种点云属性编码方法、解码方法、编码设备及解码设备,旨在解决现有点云属性编码及解码方法不能有效利用子节点之间的属性相关性,导致点云属性压缩性能较差的问题。
为了解决上述技术问题,本发明所采用的技术方案如下:
一种点云属性编码方法,其中,包括步骤:
根据目标点云内点的位置将点云进行二叉树划分,构建N层二叉树结构,N为大于1的正整数;
对于所述二叉树结构中的目标节点,获取所述目标节点的子节点,对所述子节点的第一属性系数进行变换计算,获取所述目标节点的第一属性系数和第二属性系数,其中,所述目标节点为所述二叉树结构中第P级中的节点,P为大于等于1且小于等于N-1的 正整数;
将所述二叉树结构中的根节点的第一属性系数,以及所述二叉树结构中各个所述目标节点的第二属性系数作为点云属性编码方法的输出系数,其中,所述二叉树结构中的叶节点的第一属性系数为叶节点对应的点云属性值,叶节点无第二属性系数。
所述点云树形编码方法,其中,所述二叉树包括基于点云几何和设定一维排列顺序而构建的二叉树以及基于点云几何S维排列顺序而构建的K-D树,S为自然数。
所述的点云属性编码方法,其中,当所述二叉树为K-D树时,则对所述N层K-D树结构不同层目标节点的变换计算方法,具体包括:
针对所述N层K-D树结构的N-2层,将层内所有节点作为目标节点,获取所述目标节点在N-1层和N层的子叶节点,对所述子叶节点的第一属性系数进行计算,获取所述目标节点的第一属性系数和第二属性系数;
对于所述K-D树结构中的目标节点,获取所述目标节点的两个子节点,对所述两个子节点的第一属性系数进行哈尔小波变换,获取所述目标节点的第一属性系数和第二属性系数,其中,所述目标节点为所述K-D树结构中第M级中的节点,M为大于等于1且小于等于N-3的正整数。
所述的点云属性编码方法,其中,对所述N层K-D树结构的N-2层目标节点的第一属性系数和第二属性系数的计算方法步骤包括:
针对所述N层K-D树结构的N-1层,将层内非叶节点作为目标节点,获取所述目标节点的两个子叶节点,所述两个子叶节点的第一属性系数分别为a1,a2,则计算该目标节点的第一属性系数为(a1+a2)/2,第二属性系数为(a1-a2)/2;
针对所述N层K-D树结构的N-2层,将层内所有节点作为目标节点,获取所述目标节点的两个子节点,对所述两个子节点的第一属性系数进行上述相同计算,获取所述目标节点的第一属性系数和第二属性系数,令所述两个子节点的第二属性系数也为所述目标节点的第二属性系数。
所述的点云属性编码方法,其中,对所述N层K-D树结构的N-2层目标节点的第一属性系数和第二属性系数的另一种计算方法步骤包括:
针对所述N层K-D树结构的N-2层,将层内所有节点作为目标节点,获取所述目标节点在N-1层和N层的K个子叶节点,K为大于等于2小于等于4的整数,对所述K个子叶节点的第一属性系数进行一维离散余弦变换,将低频直流系数作为所述目标节点的第一属性系数,将其余高频交流系数作为所述目标节点的第二属性系数;对所述目 标节点的第一属性系数和第二属性系数进行归一化,归一化方法为除以
Figure PCTCN2020132450-appb-000001
所述的点云属性编码方法,其中,所述N层K-D树结构的N-3层到第1层目标节点的第一属性系数和第二属性系数的计算步骤包括:
所述目标节点包含两个子节点,所述两个子节点的第一属性系数分别为a1,a2;
对所述两个子节点的第一属性系数进行哈尔小波变换,获得所述目标节点的第一属性系数为
Figure PCTCN2020132450-appb-000002
第二属性系数为
Figure PCTCN2020132450-appb-000003
所述的点云属性编码方法,其中,当所述二叉树为基于点云几何和设定一维排列顺序而构建的二叉树时,则对所述N层二叉树结构不同层目标节点的变换计算方法,具体包括:
根据构建的N层二叉树,由N层二叉树的第N-1层开始变换,到树的第1层结束;
对于二叉树的第z层,对每个目标节点进行变换计算,如果目标节点有两个子节点,变换矩阵
Figure PCTCN2020132450-appb-000004
对两个子节点的第一属性系数进行变换,得到该目标节点的第一属性系数和第二属性系数;如果目标节点有一个子节点,该目标节点只有第一属性系数没有第二属性系数,其第一属性系数等于其子节点的第一属性系数(z=Z,Z+1,…,N-1,如果Z=N,则不进行以上描述的变换);
对于二叉树的第n层,对每个目标节点进行变换计算;如果目标节点有两个子节点,变换矩阵
Figure PCTCN2020132450-appb-000005
对两个子节点的第一属性系数进行变换,得到该目标节点的第一属性系数和第二属性系数;如果目标节点有一个子节点,该目标节点只有第一属性系数没有第二属性系数,其第一属性系数等于其子节点的第一属性系数乘以
Figure PCTCN2020132450-appb-000006
(n=1,2,…,Z-1,如果Z=1,则不进行以上描述的变换)。
所述的点云属性编码方法,其中,所述将所述二叉树结构中的根节点的第一属性系数,以及所述二叉树结构中各个所述目标节点的第二属性系数作为点云属性编码方法的输出系数之后,还包括步骤:
直接对所述输出系数进行熵编码,得到变换系数码流;
或者,对所述输出系数进行量化得到量化变换系数;对量化变换系数进行熵编码,得到量化变换系数码流。
所述的点云属性编码方法,其中,在进行哈尔小波变换之前,还包括步骤:
将RGB颜色空间的属性值转换为YUV空间的属性值。
所述的点云属性编码方法,其中,所述将所述二叉树结构中的根节点的第一属性系 数,以及所述二叉树结构中各个所述目标节点的第二属性系数作为点云属性编码方法的输出系数之后,还包括步骤:
计算原始点云属性值与重建点云属性值的差值作为属性残差值,对所述属性残差值进行熵编码,得到残差点云码流;
或者,计算原始点云属性值与重建点云属性值的差值作为属性残差值;对所述属性残差值进行量化得到属性量化残差系数;对所述属性量化残差系数进行编码得到残差点云码流;
或者,计算原始点云属性值与重建点云属性值的差值作为属性残差值;对所述属性残差值进行量化得到属性量化残差系数;对所述属性量化残差系数进行编码得到残差点云码流;对属性量化残差余数进行编码。
一种点云属性编码设备,其中,包括处理器、存储器、编码模块和总线;
所述存储器上存储有可被所述处理器执行的计算机可读程序;
所述总线实现处理器和存储器之间的连接通信;
所述处理器用于调用所述编码模块从而执行所述计算机可读程序时实现如本发明点云属性编码方法中的步骤。
一种点云属性解码方法,其中,包括步骤:
根据目标点云内点的位置将点云进行二叉树划分,构建N层二叉树结构,N为大于1的正整数;
对点云码流进行解码,得到点云变换系数;
针对所述N层二叉树结构的第一层,将从码流中解码得到的变换系数,作为逆变换输入系数进行逆变换计算,获得所述当前层的逆变换输出系数;
从所述N层二叉树结构的第二层开始直到第N-1层,将从上一层父节点逆变换得到的重建输出系数和从码流中解码得到的变换系数,作为当前层目标节点逆变换输入系数进行逆变换计算,得到重建输出系数;
将所有叶节点的重建系数作为点云属性变换重建值。
所述的点云属性解码方法,其中,所述二叉树包括基于点云几何和设定一维排列顺序而构建的二叉树以及基于点云几何三维排列顺序而构建的K-D树。
所述的点云属性解码方法,其中,当所述二叉树为K-D树时,则对所述N层K-D树结构不同层目标节点的逆变换计算方法,具体包括:
针对所述N层K-D树结构的第1层到第N-3层,将层内所有节点作为目标节点, 对每个目标节点的逆变换输入系数进行哈尔小波逆变换,获得所述当前层的逆变换输出系数;
针对所述N层K-D树结构的N-2层,将层内所有节点作为目标节点,对每个目标节点的逆变换输入系数进行计算,获取所述目标节点的重建输出系数,作为在N-1层和N层的子叶节点的重建系数。
所述的点云属性解码方法,其中,所述N层K-D树结构的第1层到第N-3层目标节点的重建输出系数的计算步骤包括:
目标节点包含输入系数,分别为b1,b2,进行哈尔小波逆变换,获得该目标节点的重建输出系数为
Figure PCTCN2020132450-appb-000007
Figure PCTCN2020132450-appb-000008
所的点云属性解码方法,其中,所述N层K-D树二叉树结构的N-2层目标节点的重建输出系数的计算方法步骤包括:
针对所述N层K-D树结构的第N-2层,将层内所有节点作为目标节点,获取所述目标节点在N-1层的两个子节点,目标节点的输入系数,分别为b1,b2,计算该目标节点的重建输出系数为(b1+b2)和(b1-b2),所述重建输出系数为目标节点在N-1层的两个子节点的重建输入系数;
针对所述N层K-D树结构的第N-1层,将层内所有非叶节点作为目标节点,获取所述目标节点在N层的两个子叶节点,将从上一层父节点得到的重建输出系数和从码流中解码得到的变换系数,作为当前层目标节点的输入系数进行上述相同计算,获取所述目标节点的两个重建输出系数。
所的点云属性解码方法,其中,所述N层二叉树结构的N-2层目标节点的重建输出系数的另一种计算方法步骤包括:
针对所述N层二叉树结构的N-2层,将层内所有节点作为目标节点,获取所述目标节点在N-1层和N层的K个子叶节点,K为大于等于2小于等于4的整数,对所述目标节点的输入系数进行逆归一化处理,处理方法为乘以
Figure PCTCN2020132450-appb-000009
再进行逆一维离散余弦变换,获取所述目标节点的K个重建输出系数。
所述的点云树形解码方法,其中,当所述二叉树为基于点云几何和设定一维排列顺序而构建的二叉树时,则对所述N层二叉树结构不同层目标节点的逆变换计算方法,具体包括:
根据构建的N层二叉树,由二叉树的第一层开始逆变换,到树的第N-1层结束;
对于二叉树的第n层,对每个目标节点的逆变换输入系数进行反变换计算;如果目标节点有两个子节点,反变换矩阵
Figure PCTCN2020132450-appb-000010
反变换得到两个重建输出系数,作为该目标节点第n+1层两个子节点的逆变换输入系数;如果目标节点有一个子节点,该节点只有一个逆变换输入系数,由它的逆变换输入系数除以
Figure PCTCN2020132450-appb-000011
作为其重建输出系数,即唯一子节点的逆变换输入系数,n=1,2,…,Z-1;
对于二叉树的第z层,对每个目标节点进行反变换计算。如果目标节点有两个子节点,反变换矩阵
Figure PCTCN2020132450-appb-000012
反变换得到该目标节点第z+1层两个子节点的逆变换输入系数,z=Z,Z+1,…,N-1,如果目标节点有一个子节点,该节点只有一个逆变换输入系数,直接作为其重建输出系数。
所述的点云属性解码方法,其中,所述对点云码流进行解码,得到点云变换系数的步骤包括:
对所述点云码流进行熵解码,得到所述点云变换系数;
或者,对所述点云码流进行熵解码,得到量化变换系数;对所述量化变换系数进行逆量化得到所述点云变换系数。
所述的点云属性解码方法,其中,在进行哈尔小波逆变换之后还包括步骤:将YUV颜色空间的重建属性值转换为RGB空间的重建属性值。
所述的点云属性解码方法,其中,将所述叶节点的重建输出系数作为点云属性变换重建值之后,还包括步骤:
对点云码流进行熵解码得到属性残差值;计算所述属性残差值与所述变换重建点云属性值的和值作为点云属性重建值;
或者,对点云码流进行熵解码得到属性量化残差系数;对所述属性量化残差系数进行逆量化得到逆量化属性残差值;计算所述逆量化属性残差值、所述变换重建点云属性值的和值作为点云属性重建值;
或者,对点云码流进行熵解码得到属性量化残差系数及属性量化残差余数;对所述属性量化残差系数进行逆量化得到逆量化属性残差值;计算所述属性量化残差余数、所述逆量化属性残差值、所述变换重建点云属性值的和值作为点云属性重建值。
一种点云属性解码设备,其中,包括处理器、存储器、编码模块和总线;
所述存储器上存储有可被所述处理器执行的计算机可读程序;
所述总线实现处理器和存储器之间的连接通信;
所述处理器用于调用所述编码模块从而执行所述计算机可读程序时实现如本发明点云属性解码方法中的步骤。
有益效果:与现有技术相比,本发明提供的点云属性编码方法和解码方法解决了点云数据稀疏特性的问题,能够提升子节点之间属性相关性地利用,从而有效提高点云属性压缩性能。
附图说明
图1为本发明提供的一点云属性编码方法较佳实施例的第一流程图。
图2为本发明构建K-D树结构的示意图。
图3为本发明提供的一种点云属性编码方法第二流程图。
图4为本发明提供的一种点云属性编码设备结构原理图。
图5为本发明提供的一种点云属性解码方法较佳实施例的第一流程图。
图6为本发明提供的一种点云属性解码方法的第二流程图。
图7为基于莫顿顺序构建二叉树的示意图。
具体实施方式
本发明提供一种点云属性编码方法、解码方法、编码设备及解码设备,为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当本实施例称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还 应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
下面结合附图,通过对实施例的描述,对发明内容作进一步说明。
请参阅图1,图1为本发明提供的一种点云属性编码方法较佳实施例的流程图,如图所示,其包括步骤:
S10、根据目标点云内点的位置将点云进行二叉树划分,构建N层二叉树结构,N为大于1的正整数;
S20、对于所述二叉树结构中的目标节点,获取所述目标节点的子节点,对所述子节点的第一属性系数进行变换计算,获取所述目标节点的第一属性系数和第二属性系数,其中,所述目标节点为所述二叉树结构中第P级中的节点,P为大于等于1且小于等于N-1的正整数;
S30、将所述二叉树结构中的根节点的第一属性系数,以及所述二叉树结构中各个所述目标节点的第二属性系数作为点云属性编码方法的输出系数,其中,所述二叉树结构中的叶节点的第一属性系数为叶节点对应的点云属性值,叶节点无第二属性系数。
在本实施例中,所述二叉树包括基于点云几何和设定一维排列顺序而构建的二叉树以及基于点云几何三维排列顺序而构建的K-D树,但不限于此。
以下以所述二叉树为K-D树为例对点云属性编码方法进行说明,在编码端执行所述步骤S10-S30的步骤,实现所述点云的属性变换编码。本实施例将哈尔(Haar)小波变换应用于点云的属性编码中,具体实现如下:首先对点云进行K-D树分解,得到N层的K-D树结构,K-D树的每个叶节点对应于待编码的一个点云三维点的属性值(如颜色),设这个属性值为该叶节点的DC属性系数,基于如图2所示的二叉树结构进行哈尔小波变换。本实施例构建的K-D树为如图2所示的二叉树结构,对三维点坐标的划分步骤为:对于每个节点,首先从x,y,z中选择一个方向(一般为方差最大的方向,即点分布最离散的方向),沿着这个方向,将空间分成两份,使得这两个空间中的三维点个数相同,这两个空间就是对应的子节点;重复以上步骤,直到节点内只有一个三维点,停止该节点的划分;与点云的八叉树划分不同,本实施例使用K-D树的划分的每个节点,必然包含至少一个点云三维点,并且叶节点只出现在N层和N-1层中。
在一些实施方式中,对所述N层K-D树结构不同层目标节点的变换计算方法,具体包括:针对所述N层K-D树结构的N-2层,将层内所有节点作为目标节点,获取所 述目标节点在N-1层和N层的子叶节点,对所述子叶节点的第一属性系数进行计算,获取所述目标节点的第一属性系数和第二属性系数;对于所述K-D树结构中的目标节点,获取所述目标节点的两个子节点,对所述两个子节点的第一属性系数进行哈尔小波变换,获取所述目标节点的第一属性系数和第二属性系数,其中,所述目标节点为所述K-D树结构中第M级中的节点,M为大于等于1且小于等于N-3的正整数。
在一些实施方式中,对所述N层K-D树结构的N-2层目标节点的第一属性系数(DC系数)和第二属性系数(AC系数)的计算方法步骤包括:针对所述N层K-D树结构的N-1层,将层内非叶节点作为目标节点,获取所述目标节点的两个子叶节点,所述两个子叶节点的第一属性系数分别为a1,a2,则计算该目标节点的第一属性系数为(a1+a2)/2,第二属性系数为(a1-a2)/2;针对所述N层K-D树结构的N-2层,将层内所有节点作为目标节点,获取所述目标节点的两个子节点,对所述两个子节点的第一属性系数进行上述相同计算,获取所述目标节点的第一属性系数和第二属性系数,令所述两个子节点的第二属性系数也为所述目标节点的第二属性系数。
在另一些实施方式中,对所述N层K-D树结构的N-2层目标节点的第一属性系数(DC系数)和第二属性系数(AC系数)的计算方法步骤包括:针对所述N层K-D树结构的N-2层,将层内所有节点作为目标节点,获取所述目标节点在N-1层和N层的K个子叶节点(子叶节点具体指为叶节点的子节点,这里不考虑非叶节点的子节点),K为大于等于2小于等于4的整数,对所述K个子叶节点的第一属性系数进行一维离散余弦变换,将低频直流系数作为所述目标节点的第一属性系数,将其余高频交流系数作为所述目标节点的第二属性系数;对所述目标节点的第一属性系数和第二属性系数进行归一化,归一化方法为除以
Figure PCTCN2020132450-appb-000013
具体来讲,本实施例中,对点云进行K-D树划分,K-D树的每个节点,必然包含至少一个点云三维点,K-D树的叶节点只包含一个点云三维点,且只出现在N层和N-1层中。对N-2层,计算所有节点的第一属性系数和第二属性系数。获取节点在N-1层和N层的K个子叶节点,K为大于等于2小于等于4的整数,将K个子叶节点的第一属性系数作为输入系数,对其进行一维DCT变换。本实施例设节点内的输入系数为行向量F∈R K(K个子节点),变换后的系数为行向量C={c 1,...,c K}∈R K,变换公式为C=F×A K,换矩阵A K具体为:
K=2:
Figure PCTCN2020132450-appb-000014
K=3:
Figure PCTCN2020132450-appb-000015
K=4:
Figure PCTCN2020132450-appb-000016
将变换后的低频直流系数,即c 1,作为所述目标节点的第一属性系数,将其余高频交流系数,即c 2,...,c K,作为所述目标节点的第二属性系数。接着对所述目标节点的第一属性系数和第二属性系数进行归一化处理,具体计算方法为:
Figure PCTCN2020132450-appb-000017
C′∈R K,为最终该节点的输入系数。
N-2层所有节点的第一属性系数,将作为随后Haar小波变换的输入系数,被继续变换。N-2层所有节点的第二属性系数将直接作为编码系数,按照需求被量化和熵编码。
在一些实施方式中,从N-3层开始到第一层结束,计算每层所有节点的两个属性系数,节点包含两个子节点,其DC属性系数分别为a1,a2,计算该节点的DC系数为
Figure PCTCN2020132450-appb-000018
Figure PCTCN2020132450-appb-000019
AC系数为
Figure PCTCN2020132450-appb-000020
本实施例中N-1层和N-2层是Haar小波变换的预处理步骤,N-2层节点的DC系数可看作它所包含三维点的平均值,作为小波变换的输入信号值。从N-3层到第1层,进行了哈尔小波变换,其变换矩阵为
Figure PCTCN2020132450-appb-000021
最终,通过所述过程会得到一个根节点的第一属性系数和多个从不同层得到的第二属性系数,这些系数可作为编码系数被量化和熵编码。
在一些实施方式中,将所述K-D树结构中的根节点的第一属性系数,以及所述K-D树结构中各个所述目标节点的第二属性系数作为点云属性编码方法的输出系数。最后根据需求直接对所述输出系数进行熵编码,得到变换系数码流;或者对所述输出系数进行量化得到量化变换系数,对所述量化变换系数进行熵编码,得到量化变换系数码流。
在一些实施方式中,由于现有变换方法普遍无法实现无损的属性编码,所以本实施例设计了编码残差处理模块来解决这个问题,所述编码残差处理模块在编码时,采用以下三种方式:计算原始点云属性值与重建点云属性值的差值作为属性残差值,对所述属性残差值进行熵编码,得到残差点云码流;或者,计算原始点云属性值与重建点云属性值的差值作为属性残差值;对所述属性残差值进行量化得到属性量化残差系数;对所述属性量化残差系数进行编码得到残差点云码流;或者,计算原始点云属性值与重建点云 属性值的差值作为属性残差值;对所述属性残差值进行量化得到属性量化残差系数;对所述属性量化残差系数进行编码得到残差点云码流;对属性量化残差余数进行编码。
具体来讲,如图3所示,本实施例首先利用变换方法对点云进行变换得到变换系数,再对其量化得到量化变换系数,接着进行逆量化得到重建变换系数,最后进行逆变换得到重建点云属性值。将重建点云和原始点云作为输入数据传入编码残差处理模块,所述编码残差处理模块内,首先求得重建点云与原始点云在每一个空间点的属性残差值,然后根据需求对属性残差值进行量化得到属性量化残差系数,最后对属性量化残差系数进行编码。对于近无损条件(limited-lossy),针对属性残差值,需要根据给定的量化步长进行量化编码,可实现对Hausdorff误差的控制。对于无损条件(lossless),可以用以下两种方法处理:方法一:针对属性残差值,无需使用量化处理,即量化步长为1,直接对属性残差值进行编码;方法二:针对属性残差值,对属性量化残差余数和属性量化残差系数进行编码。
在一些实施方式中,对于颜色的编码,属性残差值的计算需要在原始点云的颜色空间中进行。如果逆变换产生的点云重建属性值与原始点云的属性值位于不同的颜色空间,例如,原始点云具有RGB颜色空间的属性值,而逆变换产生的为YUV颜色空间的属性值。则需要对逆变换产生的点云重建属性值进行颜色空间转换,转换到和原始点云相同的颜色空间中。
基于上述点云属性解码方法,本发明还提供一种点云属性解码设备,如图4所示,其包括至少一个处理器(processor)20;显示屏21;以及存储器(memory)22,还可以包括通信接口(Communications Interface)23和总线24。其中,处理器20、显示屏21、存储器22和通信接口23可以通过总线24完成相互间的通信。显示屏21设置为显示初始设置模式中预设的用户引导界面。通信接口23可以传输信息。处理器20可以调用存储器22中的逻辑指令,以执行上述实施例中的方法。
此外,上述的存储器22中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器22作为一种计算机可读存储介质,可设置为存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令或模块。处理器20通过运行存储在存储器22中的软件程序、指令或模块,从而执行功能应用以及数据处理,即实现上述实施例中的方法。
存储器22可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、 至少一个功能所需的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器22可以包括高速随机存取存储器,还可以包括非易失性存储器。例如,U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。
此外,上述存储介质以及点云属性编码设备中的多条指令处理器加载并执行的具体过程在上述方法中已经详细说明,在这里就不再一一陈述。
在一些实施方式中,还提供一种点云属性解码方法,如图5所示,其包括步骤:
S100、根据目标点云内点的位置将点云进行二叉树划分,构建N层二叉树结构,N为大于1的正整数;
S200、对点云码流进行解码,得到点云变换系数;
S300、针对所述N层二叉树结构的第一层,将从码流中解码得到的变换系数,作为逆变换输入系数进行哈尔小波逆变换,获得所述当前层的逆变换输出系数;
S400、从所述N层二叉树结构的第二层开始直到第N-1层,将从上一层父节点逆变换得到的重建输出系数和从码流中解码得到的变换系数,作为当前层目标节点逆变换输入系数进行逆变换计算,得到重建输出系数;
S500、将所有叶节点的重建输出系数作为点云属性变换重建值。
本实施例中,所述二叉树包括基于点云几何和设定一维排列顺序而构建的二叉树以及基于点云几何三维排列顺序而构建的K-D树,但不限于此。
以下同样以所述二叉树为K-D树为例对点云属性解码方法进行说明,本实施例将哈尔小波变换应用于点云的属性解码中,其具体实现方式如下:首先对点云进行K-D树分解,得到N层的K-D树结构,所述K-D树结构的每个叶节点对应于待解码重建的一个点云三维点的属性值。对点云码流进行解码,得到点云变换系数,包括根节点的一个第一属性系数(DC系数)和多个来自不同节点的第二属性系数(AC系数)。
针对K-D树的第一层(根节点),将从码流中解码得到的变换系数(一个DC系数,一个AC系数,记为b1,b2),作为逆变换输入系数,进行逆哈尔小波变换,得到两个输出系数a1,a2,计算公式为
Figure PCTCN2020132450-appb-000022
a1,a2将作为第二层逆变换的输入DC系数。
在一些实施方式中,对所述N层K-D树结构不同层目标节点的逆变换计算方法,具体包括:从K-D树的第二层的逆变换开始直到第N-3层逆变换结束,将从上一层逆 变换得到的输出系数和从码流中解码得到的变换系数,作为当前层节点的子节点逆变换输入系数进行逆哈尔小波变换,得到输出变换系数;
针对所述N层K-D树结构的第N-2层,将层内所有节点作为目标节点,获取所述目标节点在N-1层的两个子节点,目标节点的输入系数,分别为b1,b2,计算该目标节点的重建输出系数为(b1+b2)和(b1-b2),所述重建输出系数为目标节点在N-1层的两个子节点的重建输入系数;针对所述N层K-D树结构的第N-1层,将层内所有非叶节点作为目标节点,获取所述目标节点在N层的两个子叶节点,将从上一层父节点得到的重建输出系数和从码流中解码得到的变换系数,作为当前层目标节点的输入系数进行上述相同计算,获取所述目标节点的两个重建输出系数。具体来讲,针对K-D树的第N-2层,利用从上一层逆变换得到的输出系数和从码流中解码得到的变换系数(分别为b1,b2),计算两个输出系数a1,a2,计算公式为a1=(b1+b2),a2=(b1-b2)。a1,a2将作为第N-1层逆处理的输入系数。针对K-D树的第N-1层,对于叶节点,从上一层得到的输出系数即为该节点的重建属性系数。对于非叶节点,利用从上一层逆变换得到的输出系数和从码流中解码得到的变换系数(分别为b1,b2),计算两个输出系数a1,a2,计算公式为a1=(b1+b2),a2=(b1-b2)。a1,a2将作为第N层对应叶节点的重建属性系数。
在另一些实施方式中,所述N层K-D树结构的N-2层目标节点的重建输出系数的另一种计算方法步骤包括:针对所述N层K-D树结构的N-2层,将层内所有节点作为目标节点,获取所述目标节点在N-1层和N层的K个子叶节点,K为大于等于2小于等于4的整数,对所述目标节点的输入系数进行逆归一化处理,处理方法为乘以
Figure PCTCN2020132450-appb-000023
再进行逆一维离散余弦变换,获取所述目标节点的K个重建输出系数。
具体来讲,逆Haar变换结束后,将逆变换得到的输出系数和从码流中解码得到的变换系数,作为N-2层节点的逆变换输入系数进行逆归一化和逆DCT变换,得到点云属性的重建值。对N-2层的所有节点进行计算,针对目标节点,获取节点在N-1层和N层的K个子叶节点,K为大于等于2小于等于4的整数。对目标节点的输入系数,记为行向量C′={c′ 1,...,c′ K}∈R K,首先进行逆归一化处理,处理方法为:
Figure PCTCN2020132450-appb-000024
再对行向量C进行逆一维离散余弦变换,获取所述目标节点的K个重建输出系数,记为F∈R K,计算公式为
Figure PCTCN2020132450-appb-000025
其中逆变换矩阵
Figure PCTCN2020132450-appb-000026
就是正变换矩阵A K的转置。这K个重建输出系数则为对应子叶节点的重建第一属性系数,即相应的点云属性的重建值。
通过上述计算过程,本实施例所有叶节点都计算得到一个重建属性系数,则相应的,可得到点云的所有重建属性值。
在本实施例中,设变换节点内的信号为行向量F∈R 2(2个子节点),变换后的系数为行向量C∈R 2,构建变换矩阵为
Figure PCTCN2020132450-appb-000027
Haar变换和逆Haar变换可表示为:
C=F×A Haar变换
F=C×A T 逆Haar变换。
在一些实施方式中,针对颜色属性,发明的变换在YUV空间中有更高的性能,所有如果原始点云的颜色属性位于RGB空间中,本实施例可以首先对属性值进行颜色空间转换。随后在YUV颜色空间中进行变换。相应的,在解码过程中,逆变换会产生YUV空间中的重建颜色属性值,所有需要逆颜色空间转换,得到在原始点云颜色空间(RGB颜色空间)的重建颜色属性值。
在一些实施方式中,所述对点云码流进行解码,得到点云变换系数的步骤包括:对所述点云码流进行熵解码,得到所述点云变换系数;或者,对所述点云码流进行熵解码,得到量化变换系数;对所述量化变换系数进行逆量化得到所述点云变换系数。
在一些实施方式中,由于现有变换方法普遍无法实现无损的属性解码,所以本实施例设计了解码残差处理模块来解决这个问题,所述解码残差处理模块在解码时,采用以下三种方式:对点云码流进行熵解码得到属性残差值;计算所述属性残差值与所述变换重建点云属性值的和值作为点云属性重建值;或者,对点云码流进行熵解码得到属性量化残差系数;对所述属性量化残差系数进行逆量化得到逆量化属性残差值;计算所述逆量化属性残差值、所述变换重建点云属性值的和值作为点云属性重建值;或者,对点云码流进行熵解码得到属性量化残差系数及属性量化残差余数;对所述属性量化残差系数进行逆量化得到逆量化属性残差值;计算所述属性量化残差余数、所述逆量化属性残差值、所述变换重建点云属性值的和值作为点云属性重建值。
具体来讲,如图6所示,本实施例首先利用逆变换方法对点云进行重建得到重建点云属性值,将重建点云属性值和量化残差系数码流作为输入数据传入解码残差处理模块。模块内,首先对量化残差系数码流进行熵解码,得到属性量化残差系数。接着对属性量化残差系数进行逆量化得到重建属性残差值,最后将重建属性残差值与重建点云属性值相加得到最终的点云属性解码结果。
对于无损条件(lossless),可以用以下两种方法处理:方法一:针对已有的属性残差值码流,首先对其进行熵解码得到属性残差值,无需使用逆量化处理,直接将属性残差值与重建点云属性值相加得到最终的点云属性解码结果;方法二:针对已有的属性量 化残差余数码流和属性量化残差系数码流,首先分别进行熵解码,得到属性量化残差余数和属性量化残差系数。接着对他们分别进行逆量化,得到重建属性残差余数和重建属性残差系数。最后将重建属性残差余数,重建属性残差系数和重建点云属性值相加得到最终的点云属性解码结果。
在一些实施方式中,对于颜色的解码,解码残差处理模块需要在原始点云的颜色空间中进行。如果逆变换产生的点云重建属性值与原始点云的属性值位于不同的颜色空间,例如,原始点云具有RGB颜色空间的属性值,而逆变换产生的为YUV颜色空间的属性值。则需要对逆变换产生的点云重建属性值进行颜色空间转换,转换到和原始点云相同的颜色空间中。
在一些实施方式中,还提供一种基于哈尔小波变换的点云属性解码设备,其中,包括处理器、存储器、编码模块和总线;
所述存储器上存储有可被所述处理器执行的计算机可读程序;
所述总线实现处理器和存储器之间的连接通信;
所述处理器用于调用所述编码模块从而执行所述计算机可读程序时实现如本发明所述方法中的步骤。
进一步地,本发明基于PCEM软件v0.5版本,测试了本实施例方法与anchor对比的实验结果,结果如表1-表4所示。
表1为在有限有损几何、有损属性条件下的亮度、色度以及反射率的率失真数据对比表
Figure PCTCN2020132450-appb-000028
表2为在无损几何、有损属性条件下的亮度、色度以及反射率的率失真数据对比表
Figure PCTCN2020132450-appb-000029
表3为在无损几何、有限有损属性条件下的红(R)、绿(G)、蓝(B)三个颜色通道的颜色属性以及反射率的率失真数据对比表
Figure PCTCN2020132450-appb-000030
表4为在无损几何、无损属性条件下的颜色及反射率的比特率数据对比表
Figure PCTCN2020132450-appb-000031
表1-4中的数据显示,相比测试平台PCEM的基准结果,在有限有损几何、有损属性条件下,在无损几何、有损属性条件下,对于反射率属性,本发明的端到端属性率失真分别减少了12.4%,2.6%;对于亮度属性,本发明的端到端属性率失真分别减少了35.4%,53.8%;对于色度Cb属性,本发明的端到端属性率失真分别减少了70.6%,61.9%;对于色度Cr属性,本发明的端到端属性率失真分别减少了69.0%,63.8%;在无损几何、有限有损属性条件下,对于反射率属性,本发明的端到端豪斯多夫属性率失真减少了7.0%;对于红(R)、绿(G)、蓝(B)三个颜色通道的颜色属性,本发明的端到端豪斯多夫属性率失真都减少了20.8%;在无损几何、无损属性条件下,对于反射率属性,本发明的反射率比特率是基准结果的82.5%;对于颜色属性,本发明的颜色比特率是基准结果的 94.5%。
在一些实施方式中,基于点云几何和设定一维排列顺序而构建的二叉树,比如基于莫顿顺序构建的二叉树、或者基于希尔伯特顺序构建的二叉树。作为举例,假设当前点云有M个点,则二叉树可以有以下两种构建方法:
其一为自上而下的构建方法,根节点包含M个点,将根节点分成两个子节点。左子节点包含序号1~M/2的点,右子节点包含排序(M/2+1)~M的点。设此时左右节点数为M0和M1;对左右子节点继续从序号中点处划分,即(1~M0/2,(M0/2+1)~M0),M0+1~M0+M1/2,(M0+M1/2+2)~M)四个节点;按照这个方法对所有节点进行划分,如果节点只包含一个点云点,则停止划分,得到一个N层二叉树。
另一种为自下而上的构建方法,将M个点作为二叉树最低层(设为第N层)的节点;相邻的两个点,按照顺序合并构成他们的父节点(即序号1和2的点合并,序号3和4的点合并等等)。这些父节点构成N-1层的节点,将这些节点按照合并顺序排列(即序号1和2的父节点排在第一位,序号3和4的父节点排在第二位等等)。对N-1层的两个相邻节点,按照顺序合并构成他们的父节点,即N-2层的节点,将这些父节点按照合并顺序排列;如果第n层的节点的个数为奇数,排在最后的一个节点直接成为第n-1层的节点,(n=2,3,…,N);按照这个方法对每一层的节点进行合并,当一层内只有一个节点时停止,该层为树的根节点(第1层),得到一个N层二叉树。
对于上述构建的N层二叉树,二叉树的所有叶节点包含一个点云数据点。针对构建好的二叉树,本实施例可以使用上述实施例的方法进行分层变换,得到根节点的第一属性系数,以及其他节点的第二属性系数作为点云的输出系数,对输出系数进行量化编码。
在一些实施方式中,对于基于特定排列顺序构建的二叉树结构中的目标节点,获取所述目标节点的子节点,对所述子节点的第一属性系数进行变换计算,获取所述目标节点的第一属性系数和第二属性系数。
本实施例中,根据构建的N层二叉树,由树的第N-1层开始变换,到树的第1层结束,对于二叉树的第z层,对每个目标节点进行变换计算。如果目标节点有两个子节点,变换矩阵
Figure PCTCN2020132450-appb-000032
两个子节点的第一属性系数进行变换,得到该目标节点的第一属性系数和第二属性系数。如果目标节点有一个子节点,该目标节点只有第一属性系数没有第二属性系数,其第一属性系数等于其子节点的第一属性系数(z=Z,Z+1,…,N-1, 如果Z=N,则不进行以上描述的变换);对于二叉树的第n层,对每个目标节点进行变换计算。如果目标节点有两个子节点,变换矩阵
Figure PCTCN2020132450-appb-000033
两个子节点的第一属性系数进行变换,得到该目标节点的第一属性系数和第二属性系数。如果目标节点有一个子节点,该目标节点只有第一属性系数没有第二属性系数,其第一属性系数等于其子节点的第一属性系数乘以
Figure PCTCN2020132450-appb-000034
(n=1,2,…,Z-1,如果Z=1,则不进行以上描述的变换)。
将所述二叉树结构中的根节点的第一属性系数,以及所述二叉树结构中各个所述目标节点的第二属性系数作为点云属性编码方法的输出系数,其中,所述二叉树结构中的叶节点的第一属性系数为叶节点对应的点云属性值,叶节点无第二属性系数。
在一些实施方式中,针对所述基于特定排列顺序构建的二叉树结构的第一层,将从码流中解码得到的变换系数,作为逆变换输入系数进行逆变换计算,获得所述当前层的逆变换输出系数。
本实施例中,根据构建的N层二叉树,由树的第一层开始逆变换,到树的第N-1层结束。对于二叉树的第n层,对每个目标节点的逆变换输入系数进行反变换计算。如果目标节点有两个子节点,反变换矩阵
Figure PCTCN2020132450-appb-000035
反变换得到两个重建输出系数,作为该目标节点第n+1层两个子节点的逆变换输入系数。如果目标节点有一个子节点,该节点只有一个逆变换输入系数,由它的逆变换输入系数除以
Figure PCTCN2020132450-appb-000036
作为其重建输出系数,即唯一子节点的逆变换输入系数,(n=1,2,…,Z-1如果Z=N,则不进行以上描述的变换);对于二叉树的第z层,对每个目标节点进行反变换计算。如果目标节点有两个子节点,反变换矩阵
Figure PCTCN2020132450-appb-000037
反变换得到该目标节点第z+1层两个子节点的逆变换输入系数。如果目标节点有一个子节点,该节点只有一个逆变换输入系数,直接作为其重建输出系数,(z=Z,Z+1,…,N-1)。针对反射率属性,Z=N,即对于每一层都使用变换矩阵T 1
Figure PCTCN2020132450-appb-000038
对于颜色属性的U,V颜色通道,根据情况可以设定Z=N-1,即仅N-1层使用反变换矩阵T 2
Figure PCTCN2020132450-appb-000039
在一些具体的实施方式中,在进行反射率属性压缩任务时,首先对点云进行莫顿排序,基于莫顿排序进行多层小波变换。如图7所示,由第N层开始,对顺序相邻的两个节点的属性值进行变换,正逆变换矩阵如下:
Figure PCTCN2020132450-appb-000040
同时,相邻两点合并成为第N-1层中的节点,将变换得到的和值(DC项)作为N-1层中节点的属性值。 如果第N层中的节点个数为奇数,则排在最后的一个节点直接作为第N-1层中的节点,且将它的属性值乘以
Figure PCTCN2020132450-appb-000041
按照这种变换方法对第N层到第2层的节点,进行两两变换。最终输出第二层节点变换的和值(DC项)与其他层变换的差值(AC项),作为变换系数,进行量化编码。
为了控制逆变换得到的重建属性值的最大误差,需要计算重建属性值与真实属性值的残差,作为残差系数,并将其量化编码。具体做法为,在编码时,首先利用上述变换方法对点云进行变换,得到一组变换系数。接着对变换系数进行量化,本实施例使用扩大的量化步长,即为:
Figure PCTCN2020132450-appb-000042
Q trans是变换系数的量化步长,Q set是给定的量化步长。然后对量化后的变换系数进行逆量化和逆变换,得到重建点云。接着求得重建点云与原始点云每一个空间点的属性残差系数,最后根据给定的量化步长Q set,对残差系数进行量化,将量化后的残差进行编码。
在一些具体的实施方式中,在进行颜色属性压缩任务时,首先对颜色属性进行颜色空间转换,即将RGB转换到YUV颜色空间。在YUV颜色空间中,对3个维度,分别进行方案一中介绍的变换操作,得到变换系数。其中,由于UV两个维度的属性值具有较高的相关性,本实施例可以相应扩大其量化步长。具体做法有两种:1)在量化时,扩大UV两个维度的量化步长,即为原来的2倍;2)在变换时,使用均值替代DC系数,作为父节点的属性值,即新的正逆变换矩阵为:
Figure PCTCN2020132450-appb-000043
针对有损属性压缩条件,本实施例仅量化编码变换系数;针对近有损属性压缩条件,需要额外计算残差系数,对变换系数和残差系数都进行量化编码。残差系数的计算如下,首先对上述量化后的变换系数进行逆量化和逆变换,得到重建点云。接着逆颜色空间转换,求得RGB空间中的重建属性值,再计算重建属性值与原始属性值的残差,作为残差系数。
综上所述,本发明利用二叉树结构实现了点云数据的哈尔小波变换,其有效解决了点云数据稀疏特性的问题,能够提升子节点之间属性相关性地利用,从而有效提高点云属性压缩性能;本发明利用设计的编码残差处理模块以及解码残差处理模块,可实现无 损压缩和以豪斯多夫(hausdorff)误差为评价标准的近无损压缩(limited-lossy);对于颜色属性,在YUV空间中进行变换压缩处理,在RGB空间中进行残差压缩处理,可实现高效的压缩;本发明提供的所述编码残差处理模块以及解码残差处理模块与变换压缩方法的结和方式,具有相互独立性,用户可根据需求决定是否使用残差编码;且编码残差处理模块及解码残差处理模块可作为通用的后置处理技术,和其他压缩方法相结合,来实现无损和近无损的属性压缩。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (22)

  1. 一种点云属性编码方法,其特征在于,包括步骤:
    根据目标点云内点的位置将点云进行二叉树划分,构建N层二叉树结构,N为大于1的正整数;
    对于所述二叉树结构中的目标节点,获取所述目标节点的子节点,对所述子节点的第一属性系数进行变换计算,获取所述目标节点的第一属性系数和第二属性系数,其中,所述目标节点为所述二叉树结构中第P级中的节点,P为大于等于1且小于等于N-1的正整数;
    将所述二叉树结构中的根节点的第一属性系数,以及所述二叉树结构中各个所述目标节点的第二属性系数作为点云属性编码方法的输出系数,其中,所述二叉树结构中的叶节点的第一属性系数为叶节点对应的点云属性值,叶节点无第二属性系数。
  2. 根据权利要求1所述点云属性编码方法,其特征在于,所述二叉树包括基于点云几何和设定一维排列顺序而构建的二叉树以及基于点云几何S维排列顺序而构建的K-D树,S为自然数。
  3. 根据权利要求1所述的点云属性编码方法,其特征在于,当所述二叉树为基于点云几何S维排列顺序而构建的K-D树时,则对所述N层K-D树结构不同层目标节点的变换计算方法,具体包括:
    针对所述N层K-D树结构的N-2层,将层内所有节点作为目标节点,获取所述目标节点在N-1层和N层的子叶节点,对所述子叶节点的第一属性系数进行计算,获取所述目标节点的第一属性系数和第二属性系数;
    对于所述K-D树结构中的目标节点,获取所述目标节点的两个子节点,对所述两个子节点的第一属性系数进行哈尔小波变换,获取所述目标节点的第一属性系数和第二属性系数,其中,所述目标节点为所述K-D树结构中第M级中的节点,M为大于等于1且小于等于N-3的正整数。
  4. 根据权利要求3所述的点云属性编码方法,其特征在于,对所述N层K-D树结构的N-2层目标节点的第一属性系数和第二属性系数的计算方法步骤包括:
    针对所述N层K-D树结构的N-1层,将层内非叶节点作为目标节点,获取所述目标节点的两个子叶节点,所述两个子叶节点的第一属性系数分别为a1,a2,则计算该目标节点的第一属性系数为(a1+a2)/2,第二属性系数为(a1-a2)/2;
    针对所述N层K-D树结构的N-2层,将层内所有节点作为目标节点,获取所述目标节点的两个子节点,对所述两个子节点的第一属性系数进行上述相同计算,获取所述 目标节点的第一属性系数和第二属性系数,令所述两个子节点的第二属性系数也为所述目标节点的第二属性系数。
  5. 根据权利要求3所述的点云属性编码方法,其特征在于,对所述N层K-D树结构的N-2层目标节点的第一属性系数和第二属性系数的另一种计算方法步骤包括:
    针对所述N层K-D树结构的N-2层,将层内所有节点作为目标节点,获取所述目标节点在N-1层和N层的K个子叶节点,K为大于等于2小于等于4的整数,对所述K个子叶节点的第一属性系数进行一维离散余弦变换,将低频直流系数作为所述目标节点的第一属性系数,将其余高频交流系数作为所述目标节点的第二属性系数;对所述目标节点的第一属性系数和第二属性系数进行归一化,归一化方法为除以
    Figure PCTCN2020132450-appb-100001
  6. 根据权利要求3所述的点云属性编码方法,其特征在于,所述N层K-D树结构的N-3层到第1层目标节点的第一属性系数和第二属性系数的计算步骤包括:
    所述目标节点包含两个子节点,所述两个子节点的第一属性系数分别为a1,a2;
    对所述两个子节点的第一属性系数进行哈尔小波变换,获得所述目标节点的第一属性系数为
    Figure PCTCN2020132450-appb-100002
    第二属性系数为
    Figure PCTCN2020132450-appb-100003
  7. 根据权利要求1所述的点云属性编码方法,其特征在于,当所述二叉树为基于点云几何和设定一维排列顺序而构建的二叉树时,则对所述N层二叉树结构不同层目标节点的变换计算方法,具体包括:
    根据构建的N层二叉树,由N层二叉树的第N-1层开始变换,到树的第1层结束;
    对于二叉树的第z层,对每个目标节点进行变换计算,如果目标节点有两个子节点,变换矩阵
    Figure PCTCN2020132450-appb-100004
    对两个子节点的第一属性系数进行变换,得到该目标节点的第一属性系数和第二属性系数;如果目标节点有一个子节点,该目标节点只有第一属性系数没有第二属性系数,其第一属性系数等于其子节点的第一属性系数(z=Z,Z+1,…,N-1);
    对于二叉树的第n层,n=1,2,…,Z-1,对每个目标节点进行变换计算;如果目标节点有两个子节点,变换矩阵
    Figure PCTCN2020132450-appb-100005
    对两个子节点的第一属性系数进行变换,得到该目标节点的第一属性系数和第二属性系数;如果目标节点有一个子节点,该目标节点只有第一属性系数没有第二属性系数,其第一属性系数等于其子节点的第一属性系数乘以
    Figure PCTCN2020132450-appb-100006
  8. 根据权利要求1所述的点云属性编码方法,其特征在于,所述将所述二叉树结 构中的根节点的第一属性系数,以及所述二叉树结构中各个所述目标节点的第二属性系数作为点云属性编码方法的输出系数之后,还包括步骤:
    直接对所述输出系数进行熵编码,得到变换系数码流;
    或者,对所述输出系数进行量化得到量化变换系数;对量化变换系数进行熵编码,得到量化变换系数码流。
  9. 根据权利要求1所述的点云属性编码方法,其特征在于,在进行哈尔小波变换之前,还包括步骤:
    将RGB颜色空间的属性值转换为YUV空间的属性值。
  10. 根据权利要求1所述的点云属性编码方法,其特征在于,所述将所述二叉树结构中的根节点的第一属性系数,以及所述二叉树结构中各个所述目标节点的第二属性系数作为点云属性编码方法的输出系数之后,还包括步骤:
    计算原始点云属性值与重建点云属性值的差值作为属性残差值,对所述属性残差值进行熵编码,得到残差点云码流;
    或者,计算原始点云属性值与重建点云属性值的差值作为属性残差值;对所述属性残差值进行量化得到属性量化残差系数;对所述属性量化残差系数进行编码得到残差点云码流;
    或者,计算原始点云属性值与重建点云属性值的差值作为属性残差值;对所述属性残差值进行量化得到属性量化残差系数;对所述属性量化残差系数进行编码得到残差点云码流;对属性量化残差余数进行编码。
  11. 一种点云属性编码设备,其特征在于,包括处理器、存储器、编码模块和总线;
    所述存储器上存储有可被所述处理器执行的计算机可读程序;
    所述总线实现处理器和存储器之间的连接通信;
    所述处理器用于调用所述编码模块从而执行所述计算机可读程序时实现如权利要求1-10任意一项方法中的步骤。
  12. 一种点云属性解码方法,其特征在于,包括步骤:
    根据目标点云内点的位置将点云进行二叉树划分,构建N层二叉树结构,N为大于1的正整数;
    对点云码流进行解码,得到点云变换系数;
    针对所述N层二叉树结构的第一层,将从码流中解码得到的变换系数,作为逆变换输入系数进行逆变换计算,获得所述当前层的逆变换输出系数;
    从所述N层二叉树结构的第二层开始直到第N-1层,将从上一层父节点逆变换得到的重建输出系数和从码流中解码得到的变换系数,作为当前层目标节点逆变换输入系数进行逆变换计算,得到重建输出系数;
    将所有叶节点的重建系数作为点云属性变换重建值。
  13. 根据权利要求12所述的点云属性解码方法,其特征在于,所述二叉树包括基于点云几何和设定一维排列顺序而构建的二叉树以及基于点云几何S维排列顺序而构建的K-D树,S为自然数。
  14. 根据权利要求12所述的点云属性解码方法,其特征在于,当所述二叉树为基于点云几何K维排列顺序而构建的K-D树时,则对所述N层K-D树结构不同层目标节点的逆变换计算方法,具体包括:
    针对所述N层K-D树结构的第1层到第N-3层,将层内所有节点作为目标节点,对每个目标节点的逆变换输入系数进行哈尔小波逆变换,获得所述当前层的逆变换输出系数;
    针对所述N层K-D树结构的N-2层,将层内所有节点作为目标节点,对每个目标节点的逆变换输入系数进行计算,获取所述目标节点的重建输出系数,作为在N-1层和N层的子叶节点的重建系数。
  15. 根据权利要求14所述的点云属性解码方法,其特征在于,所述N层K-D树结构的第1层到第N-3层目标节点的重建输出系数的计算步骤包括:
    目标节点包含输入系数,分别为b1,b2,进行哈尔小波逆变换,获得该目标节点的重建输出系数为
    Figure PCTCN2020132450-appb-100007
    Figure PCTCN2020132450-appb-100008
  16. 根据权利要求14所的点云属性解码方法,其特征在于,所述N层K-D树二叉树结构的N-2层目标节点的重建输出系数的计算方法步骤包括:
    针对所述N层K-D树结构的第N-2层,将层内所有节点作为目标节点,获取所述目标节点在N-1层的两个子节点,目标节点的输入系数,分别为b1,b2,计算该目标节点的重建输出系数为(b1+b2)和(b1-b2),所述重建输出系数为目标节点在N-1层的两个子节点的重建输入系数;
    针对所述N层K-D树结构的第N-1层,将层内所有非叶节点作为目标节点,获取所述目标节点在N层的两个子叶节点,将从上一层父节点得到的重建输出系数和从码流中解码得到的变换系数,作为当前层目标节点的输入系数进行上述相同计算,获取所述目标节点的两个重建输出系数。
  17. 根据权利要求14所的点云属性解码方法,其特征在于,所述N层二叉树结构的N-2层目标节点的重建输出系数的另一种计算方法步骤包括:
    针对所述N层二叉树结构的N-2层,将层内所有节点作为目标节点,获取所述目标节点在N-1层和N层的K个子叶节点,K为大于等于2小于等于4的整数,对所述目标节点的输入系数进行逆归一化处理,处理方法为乘以
    Figure PCTCN2020132450-appb-100009
    再进行逆一维离散余弦变换,获取所述目标节点的K个重建输出系数。
  18. 根据权利要求12所述的点云树形解码方法,其特征在于,当所述二叉树为基于点云几何和设定一维排列顺序而构建的二叉树时,则对所述N层二叉树结构不同层目标节点的逆变换计算方法,具体包括:
    根据构建的N层二叉树,由二叉树的第一层开始逆变换,到树的第N-1层结束;
    对于二叉树的第n层,对每个目标节点的逆变换输入系数进行反变换计算;如果目标节点有两个子节点,反变换矩阵
    Figure PCTCN2020132450-appb-100010
    反变换得到两个重建输出系数,作为该目标节点第n+1层两个子节点的逆变换输入系数;如果目标节点有一个子节点,该节点只有一个逆变换输入系数,由它的逆变换输入系数除以
    Figure PCTCN2020132450-appb-100011
    作为其重建输出系数,即唯一子节点的逆变换输入系数,n=1,2,…,Z-1;
    对于二叉树的第z层,对每个目标节点进行反变换计算。如果目标节点有两个子节点,反变换矩阵
    Figure PCTCN2020132450-appb-100012
    反变换得到该目标节点第z+1层两个子节点的逆变换输入系数,z=Z,Z+1,…,N-1,如果目标节点有一个子节点,该节点只有一个逆变换输入系数,直接作为其重建输出系数。
  19. 根据权利要求12所述的点云属性解码方法,其特征在于,所述对点云码流进行解码,得到点云变换系数的步骤包括:
    对所述点云码流进行熵解码,得到所述点云变换系数;
    或者,对所述点云码流进行熵解码,得到量化变换系数;对所述量化变换系数进行逆量化得到所述点云变换系数。
  20. 根据权利要求12所述的点云属性解码方法,其特征在于,在进行哈尔小波逆变换之后还包括步骤:将YUV颜色空间的重建属性值转换为RGB空间的重建属性值。
  21. 根据权利要求12所述的点云属性解码方法,其特征在于,将所述叶节点的重建输出系数作为点云属性变换重建值之后,还包括步骤:
    对点云码流进行熵解码得到属性残差值;计算所述属性残差值与所述变换重建点云属性值的和值作为点云属性重建值;
    或者,对点云码流进行熵解码得到属性量化残差系数;对所述属性量化残差系数进行逆量化得到逆量化属性残差值;计算所述逆量化属性残差值、所述变换重建点云属性值的和值作为点云属性重建值;
    或者,对点云码流进行熵解码得到属性量化残差系数及属性量化残差余数;对所述属性量化残差系数进行逆量化得到逆量化属性残差值;计算所述属性量化残差余数、所述逆量化属性残差值、所述变换重建点云属性值的和值作为点云属性重建值。
  22. 一种点云属性解码设备,其特征在于,包括处理器、存储器、编码模块和总线;
    所述存储器上存储有可被所述处理器执行的计算机可读程序;
    所述总线实现处理器和存储器之间的连接通信;
    所述处理器用于调用所述编码模块从而执行所述计算机可读程序时实现如权利要求12-21任意一项方法中的步骤。
PCT/CN2020/132450 2020-09-15 2020-11-27 一种点云属性编码方法、解码方法、编码设备及解码设备 WO2022057091A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/252,872 US20230419554A1 (en) 2020-09-15 2020-11-27 Point cloud attribute encoding method, decoding method, encoding device, and decoding device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010967090.7 2020-09-15
CN202010967090.7A CN114187401A (zh) 2020-09-15 2020-09-15 一种点云属性编码方法、解码方法、编码设备及解码设备

Publications (1)

Publication Number Publication Date
WO2022057091A1 true WO2022057091A1 (zh) 2022-03-24

Family

ID=80601224

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/132450 WO2022057091A1 (zh) 2020-09-15 2020-11-27 一种点云属性编码方法、解码方法、编码设备及解码设备

Country Status (3)

Country Link
US (1) US20230419554A1 (zh)
CN (1) CN114187401A (zh)
WO (1) WO2022057091A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115688004A (zh) * 2022-11-08 2023-02-03 中国民用航空总局第二研究所 一种基于希尔伯特编码的目标属性确定方法、介质及设备
CN115796127A (zh) * 2023-01-31 2023-03-14 北京面壁智能科技有限责任公司 位置编码方法、装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107292192A (zh) * 2017-05-25 2017-10-24 南京邮电大学 一种云计算环境中低调整率的保序加密方法
CN107958163A (zh) * 2017-12-07 2018-04-24 江苏大学 基于云平台的实时动态数据安全存储管理系统
US20190355152A1 (en) * 2017-07-28 2019-11-21 Peking University Shenzen Graduate School Point cloud attribute compression method based on kd tree and optimized graph transformation
CN111602176A (zh) * 2019-06-03 2020-08-28 深圳市大疆创新科技有限公司 点云数据的位置坐标的编解码方法、系统和存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107292192A (zh) * 2017-05-25 2017-10-24 南京邮电大学 一种云计算环境中低调整率的保序加密方法
US20190355152A1 (en) * 2017-07-28 2019-11-21 Peking University Shenzen Graduate School Point cloud attribute compression method based on kd tree and optimized graph transformation
CN107958163A (zh) * 2017-12-07 2018-04-24 江苏大学 基于云平台的实时动态数据安全存储管理系统
CN111602176A (zh) * 2019-06-03 2020-08-28 深圳市大疆创新科技有限公司 点云数据的位置坐标的编解码方法、系统和存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115688004A (zh) * 2022-11-08 2023-02-03 中国民用航空总局第二研究所 一种基于希尔伯特编码的目标属性确定方法、介质及设备
CN115688004B (zh) * 2022-11-08 2023-09-29 中国民用航空总局第二研究所 一种基于希尔伯特编码的目标属性确定方法、介质及设备
CN115796127A (zh) * 2023-01-31 2023-03-14 北京面壁智能科技有限责任公司 位置编码方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
US20230419554A1 (en) 2023-12-28
CN114187401A (zh) 2022-03-15

Similar Documents

Publication Publication Date Title
US10939123B2 (en) Multi-angle adaptive intra-frame prediction-based point cloud attribute compression method
RU2656811C1 (ru) Способ и устройство для энтропийного кодирования/декодирования коэффициента преобразования
US20200160565A1 (en) Methods And Apparatuses For Learned Image Compression
WO2022042539A1 (zh) 一种基于空间顺序的点云分层方法、点云预测方法及设备
CN111953998A (zh) 基于dct变换的点云属性编码及解码方法、装置及系统
WO2016045565A1 (zh) 一种视频数据编码、解码的方法及装置
WO2020237646A1 (zh) 图像处理方法、设备及计算机可读存储介质
WO2022057091A1 (zh) 一种点云属性编码方法、解码方法、编码设备及解码设备
KR20070026512A (ko) 컬러 이미지 인코딩을 위한 방법, 시스템 및 소프트웨어제품
Yerva et al. Lossless image compression based on data folding
JPH11163733A (ja) 符号化方法および装置
CN112399181B (zh) 图像编解码的方法、装置和存储介质
US7379500B2 (en) Low-complexity 2-power transform for image/video compression
CN114449276B (zh) 一种基于学习的超先验边信息补偿图像压缩方法
US20230237705A1 (en) Methods for level partition of point cloud, and decoder
CN113518226A (zh) 一种基于地面分割的g-pcc点云编码改进方法
CN105872549B (zh) 基于块搜索和正交匹配追踪的视频变换编码方法
WO2023246700A1 (zh) 一种点云属性编码方法、点云属性解码方法及存储介质
Barman et al. A quantization based codebook formation method of vector quantization algorithm to improve the compression ratio while preserving the visual quality of the decompressed image
Hasnat et al. Luminance approximated vector quantization algorithm to retain better image quality of the decompressed image
CN115102934A (zh) 点云数据的解码方法、编码方法、装置、设备及存储介质
CN114092631A (zh) 基于加权三维哈尔变换的点云属性编码方法及解码方法
Koc et al. Application of pseudo-distance to lossless coding of color-mapped images
WO2024007253A1 (zh) 点云率失真优化方法及属性压缩方法、装置和存储介质
WO2023025135A1 (zh) 点云属性编码方法、装置、解码方法以及装置

Legal Events

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

Ref document number: 20953947

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 18252872

Country of ref document: US

122 Ep: pct application non-entry in european phase

Ref document number: 20953947

Country of ref document: EP

Kind code of ref document: A1