Point cloud data encoding method and apparatus, point cloud data decoding method and apparatus, computer device, and readable storage medium

By acquiring the predictive coding state and local sparsity information of point cloud data, the contextual probability model is determined, which solves the problem of overlapping coding states in point cloud compression coding and improves coding accuracy.

WO2026016236A1PCT designated stage Publication Date: 2026-01-22PENG CHENG LAB
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/111785
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-07-16
Filing Date
2024-08-13
Publication Date
2026-01-22

AI Technical Summary

Technical Problem

In geometry-based point cloud compression coding, different types of coding states overlap, causing the encoder to be unable to accurately distinguish the coding states and reducing the accuracy of coding.

Method used

By acquiring the predicted encoding state of the child nodes to be encoded in point cloud data, the corresponding context probability model is determined. By utilizing local sparse information and predicted placeholder information, the boundaries between different information are clarified, thereby improving the accuracy of encoding.

Benefits of technology

It effectively distinguishes subtle differences in encoding states between adjacent frames, improving the encoding accuracy of child nodes to be encoded in point cloud data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024111785_22012026_PF_FP_ABST
    Figure CN2024111785_22012026_PF_FP_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a point cloud data encoding method and apparatus, a point cloud data decoding method and apparatus, a computer device, and a readable storage medium. The encoding method comprises: acquiring a child node to be encoded in point cloud data; acquiring a predicted encoding state of said child node, wherein the predicted encoding state comprises an inter-frame encoding state and an intra-frame encoding state; determining, on the basis of the predicted encoding state, a first context probability model corresponding to said child node; and encoding placeholder information of said child node by means of the first context probability model, so as to obtain target encoded data of the placeholder information. In this way, the predicted encoding state can be effectively used to accurately determine the corresponding first context probability model, thereby improving the accuracy of encoding said child node of the point cloud data.
Need to check novelty before this filing date? Find Prior Art

Description

Point cloud data encoding and decoding methods, apparatus, computer equipment and readable storage media Technical Field

[0001] This application relates to the field of point cloud compression coding technology, and in particular to a point cloud data encoding and decoding method, apparatus, computer equipment, and readable storage medium. Background Technology

[0002] Point cloud compression coding is a technique for efficiently storing and transmitting point cloud data. Point clouds consist of a large number of points in space, which represent the shape of the external environment or objects in a three-dimensional coordinate system. Since point cloud data is usually very large, direct storage and transmission would be very time-consuming and inefficient. Therefore, compression coding techniques are needed to reduce its data volume while maintaining the quality and accuracy of the original data as much as possible.

[0003] In related technologies, octree-based geometric encoding and decoding is commonly used in geometry-based point cloud compression (G-PCC) encoder frameworks. In the octree encoding framework, different encoding states typically share the same encoder group when encoding child nodes. However, in some cases, different types of encoding states may overlap. If the same encoder group is used for different encoding states, the boundaries between states may become blurred, leading to the encoder's inability to accurately distinguish encoding states and a decrease in encoding accuracy.

[0004] Summary of the Invention

[0005] The main objective of this application is to provide a point cloud data encoding and decoding method, apparatus, computer device, and readable storage medium, which can improve the accuracy of encoding the child nodes to be encoded in point cloud data.

[0006] To achieve the above objectives, a first aspect of this application proposes a point cloud data encoding method, the method comprising:

[0007] Obtain the child nodes to be encoded from the point cloud data;

[0008] Obtain the predicted coding state of the child node to be encoded; wherein the predicted coding state includes inter-frame coding state and intra-frame coding state;

[0009] Based on the predicted encoding state, the first context probability model corresponding to the child node to be encoded is determined;

[0010] The placeholder information of the child node to be encoded is encoded using the first context probability model to obtain the target encoded data of the placeholder information.

[0011] Accordingly, a second aspect of the embodiments of this application provides a point cloud data encoding device, the device comprising:

[0012] The first acquisition module is used to acquire the child nodes to be encoded in the point cloud data;

[0013] The second acquisition module is used to acquire the predicted coding state of the child node to be encoded; wherein the predicted coding state includes inter-frame coding state and intra-frame coding state;

[0014] The first determining module is used to determine the first context probability model corresponding to the child node to be encoded based on the predicted encoding state.

[0015] The encoding module is used to encode the placeholder information of the child node to be encoded using the first context probability model to obtain the target encoded data of the placeholder information.

[0016] In some implementations, the first determining module is further configured to:

[0017] Obtain the local sparse information of the child node to be encoded; based on the predicted encoding state and the local sparse information, determine the corresponding first context probability model from the first context probability model group;

[0018] Alternatively, based on the predicted encoding state, predictive placeholder information for the child node to be encoded is obtained; based on the predicted encoding state and the predicted placeholder information, the corresponding first context probability model is determined from the first context probability model group:

[0019] Alternatively, obtain the local sparse information of the child node to be encoded; predict the predicted placeholder information of the child node to be encoded based on the predicted encoding state; and determine the corresponding first context probability model from the first context probability model group based on at least two parameters among the predicted encoding state, the local sparse information, and the predicted placeholder information.

[0020] In some embodiments, the point cloud data encoding device further includes a first mapping module, used for:

[0021] At least one of the predicted coding state and the local sparse information is determined as the first classification information, and other information besides the first classification information in the predicted coding state and the local sparse information is determined as the second classification information; or, at least one of the predicted coding state and the predicted placeholder information is determined as the first classification information, and other information besides the first classification information in the predicted coding state and the predicted placeholder information is determined as the second classification information; or, at least one of the predicted coding state, the local sparse information and the predicted placeholder information is determined as the first classification information, and other information besides the first classification information in the predicted coding state, the local sparse information and the predicted placeholder information is determined as the second classification information.

[0022] Based on the first classification information, determine the context state tree category of the context state tree corresponding to the child node to be encoded;

[0023] Based on the context state tree category and the second classification information, a mapping is performed in the first context probability model group to determine the corresponding first context probability model.

[0024] In some implementations, the first determining module is further configured to:

[0025] Determine multiple pre-encoded adjacent nodes that precede the child node to be encoded according to the encoding order;

[0026] Based on the first occupancy information of the plurality of encoded adjacent nodes, the number of occupancy slots of the plurality of encoded adjacent nodes is determined.

[0027] The number of placeholders is compared with a preset placeholder threshold to determine the local sparse information of the child node to be encoded.

[0028] In some implementations, the first determining module is further configured to:

[0029] Obtain the frame to be encoded where the child node to be encoded is located, and determine at least one reference frame from the adjacent encoded frames according to the encoding order;

[0030] Determine a reference child node from the reference frame that has the same spatial position and size as the child node to be encoded;

[0031] The reference occupant information of the reference child node is obtained as the second occupant information, and the second occupant information is used as the predicted occupant information of the child node to be encoded.

[0032] Accordingly, a third aspect of this application proposes a point cloud data decoding method, the method comprising:

[0033] Obtain the target decoding data of the child nodes to be decoded in the point cloud data;

[0034] Obtain the predicted decoding state of the child node to be decoded; wherein the predicted decoding state includes inter-frame decoding state and intra-frame decoding state;

[0035] Based on the predicted decoding state, determine the second context probability model corresponding to the child node to be decoded;

[0036] The target decoding data of the child node to be decoded is decoded using the second context probability model to obtain the placeholder information of the child node to be decoded.

[0037] Accordingly, a fourth aspect of the embodiments of this application proposes a point cloud data decoding apparatus, the apparatus comprising:

[0038] The third acquisition module is used to acquire the target decoding data of the child nodes to be decoded in the point cloud data;

[0039] The fourth acquisition module is used to acquire the predicted decoding state of the child node to be decoded; wherein the predicted decoding state includes inter-frame decoding state and intra-frame decoding state;

[0040] The second determining module is used to determine the second context probability model corresponding to the child node to be decoded based on the predicted decoding state.

[0041] The decoding module is used to decode the target decoding data of the child node to be decoded through the second context probability model to obtain the placeholder information of the child node to be decoded.

[0042] In some implementations, the second determining module is further configured to:

[0043] Obtain the local sparse information of the child node to be decoded; based on the predicted decoding state and the local sparse information, determine the corresponding second context probability model from the second context probability model group;

[0044] Alternatively, based on the predicted decoding state, predictive placeholder information for the child node to be decoded is obtained; based on the predicted decoding state and the predicted placeholder information, the corresponding second context probability model is determined from the second context probability model group:

[0045] Alternatively, obtain the local sparse information of the child node to be decoded; predict the predicted placeholder information of the child node to be decoded based on the predicted decoding state; and determine the corresponding second context probability model from the second context probability model group based on at least two parameters among the predicted decoding state, the local sparse information, and the predicted placeholder information.

[0046] In some embodiments, the point cloud data decoding device further includes a second mapping module, used for:

[0047] At least one of the predicted decoding state and the local sparse information is determined as the first classification information, and other information besides the first classification information in the predicted decoding state and the local sparse information is determined as the second classification information; or, at least one of the predicted decoding state and the predicted placeholder information is determined as the first classification information, and other information besides the first classification information in the predicted decoding state and the predicted placeholder information is determined as the second classification information; or, at least one of the predicted decoding state, the local sparse information and the predicted placeholder information is determined as the first classification information, and other information besides the first classification information in the predicted decoding state, the local sparse information and the predicted placeholder information is determined as the second classification information.

[0048] Based on the first classification information, determine the context state tree category of the context state tree corresponding to the child node to be decoded;

[0049] Based on the context state tree category and the second classification information, a mapping is performed in the second context probability model group to determine the corresponding second context probability model.

[0050] In some implementations, the second determining module is further configured to:

[0051] Determine multiple decoded adjacent nodes that precede the child node to be decoded according to the decoding order;

[0052] Based on the first occupancy information of the plurality of decoded adjacent nodes, the number of occupancy slots of the plurality of decoded adjacent nodes is determined;

[0053] The number of placeholders is compared with a preset placeholder threshold to determine the local sparse information of the child node to be decoded.

[0054] In some implementations, the second determining module is further configured to:

[0055] Obtain the frame to be decoded where the child node to be decoded is located, and determine at least one reference frame from the adjacent frames that have already been decoded according to the decoding order;

[0056] Determine a reference child node from the reference frame that has the same spatial position and size as the child node to be decoded;

[0057] The reference occupant information of the reference child node is obtained as the second occupant information, and the second occupant information is used as the predicted occupant information of the child node to be decoded.

[0058] Accordingly, a fifth aspect of the present application provides a computer device, the computer device including a memory and a processor, the memory storing a computer program, and the processor executing the computer program to implement the point cloud data encoding method according to any one of the first aspect embodiments of the present application, or the point cloud data decoding method according to any one of the second aspect embodiments of the present application.

[0059] Accordingly, a sixth aspect of the present application provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the point cloud data encoding method described in any one of the first aspect embodiments of the present application, or the point cloud data decoding method described in any one of the second aspect embodiments of the present application.

[0060] This application embodiment acquires child nodes to be encoded from point cloud data; acquires the predicted coding state of the child nodes to be encoded; wherein the predicted coding state includes inter-frame coding state and intra-frame coding state; based on the predicted coding state, determines the first context probability model corresponding to the child node to be encoded; and encodes the placeholder information of the child node to be encoded using the first context probability model to obtain the target encoded data of the placeholder information. In this way, the corresponding first context probability model can be determined according to different predicted coding states, thus clarifying the dividing boundary of the first context probability model corresponding to different information. This allows the context probability model to effectively distinguish and encode subtle differences in coding states between adjacent frames, improving the accuracy of encoding child nodes to be encoded in point cloud data. Attached Figure Description

[0061] Figure 1 is a schematic diagram of the architecture of the point cloud data encoding and decoding system provided in an embodiment of this application;

[0062] Figure 2 is a flowchart of the point cloud data encoding method provided in the embodiments of this application;

[0063] Figure 3 is a flowchart of the point cloud data decoding method provided in the embodiments of this application;

[0064] Figure 4 is a flowchart of the overall encoding process of the point cloud data encoding method provided in the embodiments of this application;

[0065] Figure 5 is a flowchart of the overall decoding process of the point cloud data decoding method provided in the embodiments of this application;

[0066] Figure 6 is a schematic diagram of the functional modules of the point cloud data encoding device provided in an embodiment of this application;

[0067] Figure 7 is a schematic diagram of the functional modules of the point cloud data decoding device provided in an embodiment of this application;

[0068] Figure 8 is a schematic diagram of the hardware structure of the computer device provided in an embodiment of this application. Detailed Implementation

[0069] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.

[0070] It should be noted that although functional modules are divided in the device schematic diagram and a logical order is shown in the flowchart, in some cases, the steps shown or described may be performed in a different order than the module division in the device or the order in the flowchart. The terms "first," "second," etc., in the specification, claims, and the aforementioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence.

[0071] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing embodiments of this application only and is not intended to limit this application.

[0072] Point cloud compression coding is a technique for efficiently storing and transmitting point cloud data. Point clouds consist of a large number of points in space, which represent the shape of the external environment or objects in a three-dimensional coordinate system. Since point cloud data is usually very large, direct storage and transmission would be very time-consuming and inefficient. Therefore, compression coding techniques are needed to reduce its data volume while maintaining the quality and accuracy of the original data as much as possible.

[0073] In related technologies, octree-based geometric encoding and decoding is commonly used in geometry-based point cloud compression (G-PCC) encoder frameworks. In the octree encoding framework, different encoding states typically share the same encoder group when encoding child nodes. However, in some cases, different types of encoding states may overlap. If the same encoder group is used for different encoding states, the boundaries between states may become blurred, leading to the encoder's inability to accurately distinguish encoding states and a decrease in encoding accuracy.

[0074] Based on this, embodiments of this application provide a point cloud data encoding and decoding method, apparatus, computer equipment, and readable storage medium, which can improve the accuracy of encoding the child nodes to be encoded in point cloud data.

[0075] The point cloud data encoding and decoding method, apparatus, computer equipment, and readable storage medium provided in the embodiments of this application are specifically described through the following embodiments. First, the point cloud data encoding and decoding system in the embodiments of this application is described.

[0076] Referring to Figure 1, in some embodiments, the point cloud data encoding and decoding system includes a terminal 11 and a server 12.

[0077] For example, terminal 11 can be a computing device, such as a smartphone, tablet, personal computer, or dedicated device; any device used to capture and process point cloud data can serve as terminal 11. For example, in the indoor underground emergency scene 3D modeling method based on a mobile phone crowdsourced imaging terminal, data generation and processing are both completed on terminal 11, and the results are then sent to server 12 for display and measurement applications. In some embodiments, terminal 11 can encode the child nodes to be encoded in the point cloud data to obtain target encoded data.

[0078] For example, server 12 can be a high-performance computing server or a cloud computing platform, responsible for tasks such as data storage, decoding, analysis, and application deployment. Server 12 can process and store point cloud data. For example, the encoding of large-scale point cloud data is also completed on server 12. In some embodiments, server 12 can receive target encoded data transmitted from terminal 11 and decode the target encoded data to obtain the node placeholder information corresponding to the target encoded data.

[0079] The point cloud data encoding method in this application can be illustrated through the following embodiments.

[0080] It should be noted that in all specific embodiments of this application, when processing data related to user identity or characteristics, such as user information, user behavior data, user historical data, and user location information, user permission or consent will be obtained first. Furthermore, the collection, use, and processing of this data will comply with relevant laws, regulations, and standards. In addition, when embodiments of this application require access to sensitive personal information of users, separate permission or consent from the user will be obtained through pop-ups or redirects to confirmation pages. Only after obtaining the user's separate permission or consent will the necessary user-related data for the normal operation of the embodiments of this application be obtained.

[0081] In this embodiment, the description will focus on the point cloud data encoding device, which can be integrated into a computer device. Referring to Figure 2, which is a flowchart of the point cloud data encoding method provided in this embodiment, this embodiment takes the point cloud data encoding device being integrated into a terminal or server as an example. When the processor on the terminal or server executes the program instructions corresponding to the point cloud data encoding method, the specific process is as follows:

[0082] Step 101: Obtain the child nodes to be encoded from the point cloud data.

[0083] In some implementations, because point cloud data is often very large, direct transmission may result in high storage space requirements, long transmission times, and low processing efficiency. Therefore, to facilitate transmission, the child nodes to be encoded in the point cloud data can be obtained, and the placeholder information of the child nodes to be encoded can be encoded to effectively reduce the storage space of the point cloud data and improve the transmission efficiency of the point cloud data.

[0084] Point cloud data can be a collection of multiple points in three-dimensional space. Each point cloud data contains coordinate information (such as x, y, z) and possibly other attribute information. The specific coordinate and attribute information can be collected by devices such as LiDAR and used in various application fields, such as indoor scene analysis, terrain mapping, architectural planning, industrial production, and autonomous driving. Point cloud data is processed and compressed during the encoding process to reduce storage space or transmission bandwidth requirements.

[0085] Among them, the child nodes to be encoded can be nodes in the point cloud data that need to be encoded.

[0086] For example, quadtrees or binary trees can be used to partition the point cloud data to obtain several child nodes to be encoded. Taking octree partitioning as an example, before partitioning the point cloud data into an octree, it is necessary to first perform coordinate transformation on the geometric information of the point cloud data so that all the point cloud data are contained within a bounding box. Then, quantization is performed. This step of quantization mainly serves a scaling function. Due to the rounding effect of quantization, some points have the same geometric information. The parameters determine whether to remove duplicate points. This process of quantization and removal of duplicate points is also called voxelization. Thus, multiple child nodes to be encoded can be obtained. The specific processes of coordinate transformation and voxelization are not described in detail here.

[0087] In some implementations, the child nodes to be encoded may also be obtained in other ways, and no specific restrictions are imposed here.

[0088] The above methods can be used to identify the child nodes to be encoded in point cloud data, so as to obtain the predictive encoding status of the child nodes to be encoded later.

[0089] Step 102: Obtain the predicted coding state of the child node to be encoded; wherein, the predicted coding state includes the inter-frame coding state and the intra-frame coding state.

[0090] In some implementations, in order to determine the predictive coding state of the child node to be encoded so as to determine the corresponding first context probability model based on the predictive coding state, the predictive coding state of the child node to be encoded can be obtained by acquiring the enable flag corresponding to the frame to be encoded where the child node to be encoded is located, so as to accurately determine whether inter-frame prediction is enabled in the frame to be encoded where the child node to be encoded is located.

[0091] Specifically, the enable flag corresponding to the frame to be encoded where the child node to be encoded is located can be obtained, and the predictive coding state of the child node to be encoded can be determined based on the enable flag.

[0092] The frame to be encoded can be the frame containing the child nodes to be encoded. Specifically, point cloud data can be organized into a series of frames, each containing a series of nodes.

[0093] The enable flag can be an indicator used to show whether inter-frame prediction is enabled for the frame to be encoded. In point cloud data, inter-frame prediction typically refers to using information from previous frames to predict the content of the current frame, thereby reducing the amount of data that needs to be encoded. The value of the enable flag (gbh.interPredictionEnabledFlag) can be obtained directly, specifically 0 or 1, where 0 indicates that inter-frame prediction is disabled, and 1 indicates that inter-frame prediction is enabled.

[0094] The predictive coding state can be the inter-frame enabled state of the frame to be coded. The predictive coding state can include the intra-frame coding state and the inter-frame coding state.

[0095] Specifically, when the enable flag corresponding to the frame to be encoded is 1, it indicates that inter-frame prediction is enabled for the frame to be encoded, and the predictive coding state of the frame to be encoded is the inter-frame coding state; when the enable flag corresponding to the frame to be encoded is 0, it indicates that inter-frame prediction is disabled for the frame to be encoded, and the predictive coding state of the frame to be encoded is the intra-frame coding state.

[0096] By obtaining the enable flag to determine the predictive coding state of the child node to be encoded, it is easier to adopt different coding strategies according to different predictive coding states, thereby improving the efficiency and quality of subsequent coding.

[0097] Step 103: Based on the predicted encoding state, determine the first context probability model corresponding to the child node to be encoded.

[0098] In some implementations, to adapt to different encoding requirements, a corresponding first context probability model can be determined from the first context probability model group based on the predicted encoding state, so as to dynamically adjust the encoding strategy according to the characteristics of the data, thereby improving the accuracy of encoding the child nodes to be encoded in the point cloud data.

[0099] The first context probability model group can be a collection of context probability models used to process and encode different types of data.

[0100] The first context probability model can be a probability model used to encode binary data, used to encode the placeholder information of the child node to be encoded.

[0101] Understandably, intra-frame coding processes only a single frame and is suitable for scenarios with drastic scene changes or where random access is required. Inter-frame coding, on the other hand, utilizes the similarity between frames for compression, significantly improving the compression ratio but also increasing decoding complexity. Therefore, a corresponding context probability model can be selected based on the predictive coding state of different frames to find a balance between compression efficiency and decoding complexity.

[0102] Furthermore, in image or video frames, different regions have varying amounts of information and degrees of change. For example, regions like the sky and large monochromatic backgrounds exhibit little variation and can utilize simple contextual probability models; while moving objects and regions rich in detail require more complex contextual probability models. Therefore, determining the contextual probability model based on local sparse information can improve coding efficiency while maintaining coding quality.

[0103] By determining the corresponding context probability model based on the predicted occupancy information, the dividing boundary of the first context probability model corresponding to different information can be clearly defined, enabling the context probability model to effectively distinguish and encode subtle differences in the encoding state between adjacent frames, thereby improving the accuracy of encoding the child nodes to be encoded in point cloud data.

[0104] In some implementations, to improve the efficiency and accuracy of encoding, local sparse information, prediction placeholder information, and some or all information in the predicted encoding state of the child node to be encoded can be obtained, and the corresponding first context state model can be determined accordingly. For example, step 103 can determine the first context probability model corresponding to the child node to be encoded through one of the following implementations:

[0105] (A.1) Obtain the local sparse information of the child node to be encoded; based on the predicted encoding state and the local sparse information, determine the corresponding first context probability model from the first context probability model group;

[0106] (A.2) Or, based on the prediction coding state, predict the prediction placeholder information of the child node to be encoded; based on the prediction coding state and the prediction placeholder information, determine the corresponding first context probability model from the first context probability model group;

[0107] (A.3) Alternatively, obtain the local sparse information of the child node to be encoded; predict the predicted placeholder information of the child node to be encoded based on the predicted encoding state; and determine the corresponding first context probability model from the first context probability model group based on at least two parameters among the predicted encoding state, local sparse information and predicted placeholder information.

[0108] The local sparsity information can be the point cloud density around the child node to be encoded. If the number of adjacent nodes is large, it indicates that the area around the child node to be encoded is relatively dense, and vice versa.

[0109] The predicted placeholder information can be the predicted value of the placeholder state of the child node to be encoded, obtained based on the predicted encoding state. The predicted placeholder information can be represented in binary code (0 or 1), where 1 indicates that the child node to be encoded is occupied by a dot, and 0 indicates that the child node to be encoded is not occupied by a dot.

[0110] In some implementations, the local sparsity information of the child node to be encoded can be obtained by acquiring multiple encoded neighboring nodes preceding the child node to be encoded, determining the first occupancy information of each neighboring node, calculating the occupancy number of the multiple encoded neighboring nodes, and comparing the occupancy number with a preset occupancy number threshold. When the occupancy number is greater than or equal to the occupancy number threshold, the local sparsity information of the child node to be encoded can be determined to be sparse; when the occupancy number is less than the occupancy number threshold, the local sparsity information of the child node to be encoded can be determined to be non-sparse.

[0111] In some implementations, the predicted placeholder information of the child node to be encoded can be obtained by acquiring the frame to be encoded where the child node to be encoded is located, determining at least one reference frame from the adjacent encoded frames according to the encoding order, and determining a reference child node from the reference frame that has the same spatial position and size as the child node to be encoded, and predicting it using the second placeholder information of the reference child node. Specifically, when the second placeholder information is placeholder, the predicted placeholder information of the child node to be encoded is also placeholder; when the second placeholder information is not placeholder, the predicted placeholder information of the child node to be encoded is also not placeholder.

[0112] Specifically, the corresponding first context probability model can be determined from the first context probability model group based on the predicted coding state and local sparse information, or it can be determined based on the predicted coding state and predicted placeholder information, or it can be determined based on at least two parameters among the predicted coding state, local sparse information and predicted placeholder information, or it can be determined based only on the predicted coding state.

[0113] Furthermore, in order to ensure a clearer boundary between the first context probability model that utilizes inter-frame information and the first context probability model that does not utilize inter-frame information, the first context probability model needs to be determined based on the predictive coding state during the determination process. As for local sparse information and predictive placeholder information, they are used to select a more accurate first context probability model for the child node to be encoded through effective information, thereby improving the efficiency and accuracy of encoding the placeholder information of the child node to be encoded.

[0114] In some implementations, to more efficiently and accurately determine the first context probability model for encoding the placeholder information of the child node to be encoded, the category of the context state tree of the child node to be encoded can be determined first. This allows for the effective use of the context state tree to quickly determine the most suitable first context probability model for encoding the placeholder information of the current child node, improving encoding efficiency and accuracy. For example, for the cases mentioned above regarding determining the first context probability model corresponding to the child node to be encoded, the method further includes the following steps:

[0115] (B1) Determine at least one of the predicted coding state and local sparse information as the first classification information, and use other information besides the first classification information in the predicted coding state and local sparse information as the second classification information; or, determine at least one of the predicted coding state and predicted placeholder information as the first classification information, and use other information besides the first classification information in the predicted coding state and predicted placeholder information as the second classification information; or, determine at least one of the predicted coding state, local sparse information and predicted placeholder information as the first classification information, and use other information besides the first classification information in the predicted coding state, local sparse information and predicted placeholder information as the second classification information;

[0116] (B2) Based on the first classification information, determine the context state tree category of the context state tree corresponding to the child node to be encoded;

[0117] (B3) Map the first context probability model to the first context probability model group based on the context state tree category and the second classification information.

[0118] The context state tree can be constructed using placeholder information from the encoded neighboring nodes adjacent to the child node to be encoded. For example, each neighboring node corresponds to a placeholder, such as node B having a placeholder of 101, node C having a placeholder of 011, and node D having a placeholder of 110. Combining the placeholder information of neighboring nodes into the context state tree yields 101, 011, 110. Furthermore, the context state tree can also include the position information of each neighboring node.

[0119] The context state tree category can reflect a specific state of the child node to be encoded. The context state tree can include the predicted coding state of the child node, local sparsity information, and predicted placeholder information, etc. For example, the context state tree can be an inter-frame sparse context state tree, a sparse context state tree, an inter-frame context state tree, etc., specifically determined based on the selected first classification information.

[0120] The first classification information can be information used to determine the context state tree category of the context state tree corresponding to the child node to be encoded, specifically it can be used to determine the first context probability model group.

[0121] The second classification information can be information used to determine the first context probability model corresponding to the child node to be encoded. The first and second classification information are selected based on the predicted encoding state, local sparsity information, and predicted placeholder information.

[0122] For example, the context state tree category of the context state tree corresponding to the child node to be encoded can be determined first, and the corresponding first context probability model group can be determined according to the context state tree category and the second classification information. Then, the child node occupancy probability corresponding to the child node to be encoded can be determined according to the context state tree corresponding to the child node to be encoded. Then, the first context probability model can be determined from the first context probability model group based on the child node occupancy probability.

[0123] In some implementations, the corresponding context state tree category can be determined first by predicting some or all of the information in the encoding state, predicted placeholder information and local sparse information, and the corresponding first context probability model group can be determined according to the context state tree category; then, the first context probability model can be further determined from the determined first context probability model group according to the child node occupancy probability of the child node to be encoded.

[0124] Furthermore, the predicted coding state includes intra-frame coding state and inter-frame coding state; local sparse information includes sparse and non-sparse information; and predicted placeholder information includes placeholder and non-placeholder information.

[0125] For example, the following description addresses the case where the first context probability model is determined from the first context probability model group based on the predictive coding state and local sparse information. For instance, when the first classification information is the predictive coding state and the second classification information is local sparse information, the corresponding context state tree category (such as an inter-frame coding state tree) can be determined based on the predictive coding state, and the corresponding first context probability model group can be determined based on the local sparse information and the context state tree category. Then, based on the context state tree corresponding to the child node to be encoded, the child node occupancy probability of the child node to be encoded is determined, and the first context probability model is determined from the first context probability model group based on the child node occupancy probability. Conversely, when the first classification information is local sparse information and the second classification information is the predictive coding state, the corresponding context state tree category can be determined based on the local sparse information, and the corresponding first context probability model group can be determined based on the predictive coding state and the context state tree category. Then, based on the context state tree corresponding to the child node to be encoded, the child node occupancy probability of the child node to be encoded is determined, and the first context probability model is determined from the first context probability model group based on the child node occupancy probability.

[0126] For example, the following description addresses the case where the first context probability model is determined from the first context probability model group based on the predicted encoding state and predicted placeholder information. For instance, when the first classification information is the predicted encoding state and the second classification information is the predicted placeholder information, the corresponding context state tree category can be determined based on the predicted encoding state, and the corresponding first context probability model group can be determined based on the predicted placeholder information and the context state tree. Then, based on the context state tree corresponding to the child node to be encoded, the child node occupancy probability of the child node to be encoded is determined, and the first context probability model is determined from the first context probability model group based on the child node occupancy probability. Conversely, when the first classification information is the predicted placeholder information and the second classification information is the predicted encoding state, the corresponding context state tree category can be determined based on the predicted placeholder information, and the first context probability model group can be determined based on the predicted encoding state and the context state tree category. Then, based on the context state tree corresponding to the child node to be encoded, the child node occupancy probability of the child node to be encoded is determined, and the first context probability model is determined from the first context probability model group based on the child node occupancy probability.

[0127] For example, the following description addresses the situation where a first context probability model is determined from a first context probability model group based on at least two parameters: the predicted encoding state, local sparsity information, and predicted placeholder information. For instance, when the first classification information is the predicted encoding state and the second classification information is local sparsity and predicted placeholder information, the corresponding context state tree category can be determined based on the predicted encoding state. Then, a first context probability model group is determined based on the context state tree category, local sparsity, and predicted placeholder information. Next, the child node occupancy probability of the child node to be encoded is determined according to the context state tree corresponding to the child node to be encoded, and the first context probability model is determined from the first context probability model group based on the child node occupancy probability. Conversely, when the first classification information is the predicted encoding state and local sparsity information, and the second classification information is predicted placeholder information, the corresponding context state tree category can be determined based on the predicted encoding state and local sparsity information. Then, a context probability model group is determined based on the predicted placeholder information and the context state tree category. Next, the child node occupancy probability of the child node to be encoded is determined according to the context state tree corresponding to the child node to be encoded, and the first context probability model is determined from the first context probability model group based on the child node occupancy probability. It is understood that any two of the predicted coding state, local sparse information, and predicted placeholder information can be determined as the first classification information, and the remaining information can be determined as the second classification information; alternatively, any one of the predicted coding state, local sparse information, and predicted placeholder information can be determined as the first classification information, and the remaining two information can be determined as the second classification information; alternatively, all of the predicted coding state, local sparse information, and predicted placeholder information can be determined as the first classification information, directly determining the corresponding context state tree category and mapping it to the specific first context probability model, without selecting the second classification information; alternatively, all of the predicted coding state, local sparse information, and predicted placeholder information can be determined as the second classification information, directly mapping it to the specific first context probability model, without selecting the first classification information; specific combinations are not listed here, and any combination that does not deviate from the concept of this application can be used as the technical solution of this application.

[0128] In some implementations, when the prediction coding state is intra-frame coding state, there is no need to predict the prediction placeholder information of the child nodes to be coded, and the prediction placeholder information is all set to 0; when the prediction coding state is inter-frame coding state, the prediction placeholder information of the child nodes to be coded is predicted, and the prediction placeholder information may be 0 or 1. The placeholder information of the child nodes to be coded with different prediction placeholder information will be mapped to different first context probability models.

[0129] By determining the context state tree category of the child node to be encoded, the selection efficiency of the first context probability model can be improved, thereby improving the efficiency of encoding the occupancy information of the child node to be encoded.

[0130] In some implementations, since the occupancy state of the child node to be encoded in point cloud data is often not completely independent but is influenced by the states of surrounding nodes, in order to more accurately predict the local sparsity information of the child node to be encoded, the first occupancy information of the already encoded adjacent nodes can be used to predict the local sparsity information of the child node to be encoded, thereby improving the efficiency of encoding and the quality of reconstruction. For example, in listing the first context probability models used to determine the child node to be encoded, the "obtaining the local sparsity information of the child node to be encoded" mentioned in (A.1) and (A.3) may include:

[0131] (C1) Determine the multiple coded adjacent nodes that precede the child node to be encoded according to the encoding order;

[0132] (C2) Determine the number of occupants of multiple encoded neighboring nodes based on the first occupant information of multiple encoded neighboring nodes;

[0133] (C3) Compare the number of placeholders with the preset number of placeholders threshold to determine the local sparse information of the child node to be encoded.

[0134] In this context, adjacent nodes can be nodes that are spatially adjacent to the child node to be encoded. Specifically, they can be nodes that share a common edge or common surface with the child node to be encoded. Furthermore, adjacent nodes can be used to predict the state of the child node to be encoded, thereby improving encoding efficiency.

[0135] The first placeholder information can be the occupancy status information of the neighboring nodes that are spatially adjacent to the child node to be encoded. In point cloud data, the occupancy status of a node is usually represented in binary code (0 or 1), where 1 indicates that the node is occupied by a point, and 0 indicates that the node is not occupied by a point. Since the neighboring nodes have already been encoded, the first placeholder information of the neighboring nodes can be obtained directly.

[0136] The number of occupants can be the sum of the occupancy status information of multiple coded nodes adjacent to the child node to be encoded. In point cloud data, the occupancy status of a node is usually represented in binary code (0 or 1), where 1 indicates that the node is occupied by a point, and 0 indicates that the node is not occupied by a point. The number of occupants is obtained by adding the occupancy status of multiple adjacent nodes and is used to reflect whether the spatial region around the child node to be encoded is sparse.

[0137] The placeholder threshold can be a preset value used to distinguish local sparse information in the child nodes to be encoded. The placeholder threshold can be set according to the actual situation, for example, it can be set to 1, 2, 3, etc.

[0138] The local sparsity information can be the point cloud density around the child node to be encoded. If the number of adjacent nodes is large, it indicates that the area around the child node to be encoded is relatively dense, and vice versa.

[0139] For example, starting from the child node to be encoded, a preset number of adjacent nodes can be selected according to the negative x, y, and z directions adjacent to the child node to be encoded, that is, the directions of the nodes that have been encoded before the child node to be encoded. Specifically, the preset number can be set according to the actual situation, such as 12, 15, etc.

[0140] For example, the number of placeholders can be compared with a preset placeholder threshold, and the local sparse information of the child node to be encoded can be determined based on the comparison result.

[0141] For example, if the child node to be encoded is adjacent to 12 neighboring nodes, and these neighboring nodes have already been encoded, then the placeholder information (whether it is occupied by a point) can be directly obtained. Furthermore, the number of placeholders among these 12 neighboring nodes can be calculated. For instance, if the placeholder information for these 12 neighboring nodes is 1,0,0,1,0,1,0,1,0,1,0,0, then the number of placeholders is 1+0+0+1+0+1+0+1+0+1+0+0 = 5.

[0142] Furthermore, if the placeholder threshold is 1, the calculated placeholder quantity 5 is compared with the placeholder threshold 1. Since 5 is greater than 1, the comparison result is "greater than the threshold". Therefore, it can be determined that the local sparse information of the child node to be encoded is non-sparse. Non-sparse local sparse information means that the spatial region around the child node to be encoded is relatively dense. Therefore, a more efficient encoding strategy can be selected during encoding to reduce redundant information.

[0143] For example, if the first placeholder information indicates a large number of adjacent nodes occupying space, then the local sparse information of the child node to be encoded is non-sparse; if the first placeholder information indicates a small number of adjacent nodes occupying space, then the local sparse information of the child node to be encoded is sparse. This can be determined by setting a placeholder threshold or a placeholder ratio. For example, a placeholder threshold of 1 can be set. When the first placeholder information indicates a number of adjacent nodes occupying space greater than 1, the local sparse information of the child node to be encoded is determined to be non-sparse; otherwise, it is sparse.

[0144] By using the above methods, we can obtain the child node to be encoded and multiple encoded neighboring nodes preceding the child node to be encoded. By utilizing the first placeholder information of the encoded neighboring nodes, and further by setting a placeholder threshold and comparing the number of placeholders with the placeholder threshold, we can make the judgment of local sparse information clearer and more operable, thereby improving the efficiency and accuracy of encoding.

[0145] In some implementations, to facilitate the subsequent adoption of different coding strategies based on different predicted occupancy information, the occupancy information of the child node to be encoded can be predicted using the second occupancy information of the reference child node in at least one reference frame preceding the frame to be encoded, thereby improving coding efficiency and accuracy. For example, in listing the first context probability model used to determine the child node to be encoded, the phrase "predicting the predicted occupancy information of the child node to be encoded based on the predicted coding state" mentioned in (A.2) and (A.3) includes:

[0146] (D1) Obtain the frame to be encoded where the child node to be encoded is located, and determine at least one reference frame from the adjacent encoded frames according to the encoding order;

[0147] (D2) Identify reference child nodes from the reference frame that have the same spatial position and size as the child nodes of the child node to be encoded;

[0148] (D3) Obtain the reference placeholder information of the reference child node as the second placeholder information, and use the second placeholder information as the prediction placeholder information of the child node to be encoded.

[0149] The reference frame can be an adjacent frame preceding the frame to be encoded, in the encoding order. The reference frame can be used to predict the occupancy status of the child nodes to be encoded in the current frame.

[0150] The spatial position of a child node can be the corresponding spatial position of the child node to be encoded in the reference frame. For example, if the position of the child node to be encoded in the frame to be encoded is the top left corner, then its position in the reference frame is also the position corresponding to the top left corner.

[0151] In this context, having the same child node size indicates that the two nodes occupy the same amount of space. For example, if the reference child node and the child node to be encoded have the same child node size, then the reference child node and the child node to be encoded occupy the same amount of space.

[0152] The reference child node can be the node in the reference frame that has the highest similarity to the current child node to be encoded.

[0153] The second placeholder information can be the placeholder information of the reference child node in the reference frame that has the highest similarity to the current child node to be encoded.

[0154] It is understandable that the inter-frame coding state can be the state in which inter-frame predictive coding is enabled for the current frame to be coded. Since there is no placeholder information for the child nodes to be coded when the predictive coding state is intra-frame coding state, it is only necessary to predict the placeholder state of the child nodes to be coded that are in the inter-frame coding state.

[0155] Specifically, since the motion of objects is continuous between consecutive frames, this means that the child node to be encoded in the current frame is also very likely to have a corresponding position and state in the previous frame (reference frame). Therefore, the predicted occupancy information of the child node to be encoded can be predicted by using the second occupancy information of the reference child node in the reference frame.

[0156] In some implementations, a reference child node can be determined based on its position. In this case, the reference child node can be a node in the reference frame that has the same position and the same size as the current child node to be encoded, and the second placeholder information can be the placeholder information of the reference child node that has the same position as the current child node to be encoded in the reference frame.

[0157] In some implementations, it can be assumed that the child node to be encoded is located in frame F1. To predict the placeholder information of the child node to be encoded in frame F1, a reference frame preceding frame F1 can be selected. For example, frame F0 can be selected as the reference frame. Further, in the reference frame F0, the node with the highest similarity to the child node to be encoded in frame F1 can be determined as the reference child node, and the second placeholder information of the reference child node can be obtained. This second placeholder information is then used as the predicted placeholder information of the child node to be encoded. For example, if the second placeholder information is 0, then the predicted placeholder information is also 0.

[0158] For example, the number of reference frames selected can be determined based on the actual situation. For instance, according to the encoding order, the following arrangement can be obtained: adjacent frame 1, adjacent frame 2, adjacent frame 3, adjacent frame 4, frame to be encoded 1, adjacent frame 5, adjacent frame 6. Therefore, the adjacent frames preceding the frame to be encoded can be determined as adjacent frame 1, adjacent frame 2, adjacent frame 3, and adjacent frame 4. If only one reference frame is selected, the reference frame can be determined according to the principle of proximity; specifically, adjacent frame 4 can be selected as the reference frame. Similarly, if two reference frames are selected, adjacent frames 3 and 4 can be selected as reference frames.

[0159] Furthermore, if multiple reference frames are selected, but the second placeholder information of the reference child nodes corresponding to different reference frames is different, then the second placeholder information with the highest frequency of occurrence can be selected as the predicted placeholder information. For example, if there are 3 selected reference frames, and the corresponding second placeholder information is 1, 1, and 0, then 1 can be used as the predicted placeholder information.

[0160] By predicting the predicted occupant information of the child node to be encoded using the second occupant information of the reference child node in the reference frame, the state of the current child node to be encoded can be predicted and encoded more accurately, thereby improving the efficiency and accuracy of encoding.

[0161] Step 104: Encode the placeholder information of the child node to be encoded using the first context probability model to obtain the target encoded data of the placeholder information.

[0162] In some implementations, within the geometric coding framework of point cloud data, encoding the child nodes to be encoded mainly includes encoding the placeholder information of the child nodes, also known as placeholder codes. Encoding the placeholder information of the child nodes can achieve data compression and improve storage and transmission efficiency.

[0163] The target encoded data can be the data after compressing and encoding the placeholder information of the child nodes to be encoded.

[0164] Specifically, based on the context state tree where the child node to be encoded is located, the child node occupancy probability of the placeholder information of the child node to be encoded can be determined; then, based on the child node occupancy probability, the specific first context probability model can be determined from the first context probability model group, and the placeholder information can be encoded according to the first context probability model to obtain the target encoded data of the placeholder information.

[0165] For example, based on the predicted coding state and local sparsity information, the context state tree category corresponding to the child node to be encoded can be determined to be an inter-frame non-sparse state. Then, based on the context state tree category and node occupancy information (e.g., node occupancy information is occupied), a first context probability model group A is determined. The first context probability model group A includes first context probability model a1, first context probability model a2, first context probability model a3, and first context probability model a4. Further, if it is determined that the occupancy probability of the child node to be encoded is high, then based on the child node occupancy probability, the first context probability model a1 can be determined as the final first context probability model for encoding the occupancy information of the child node to be encoded, and the occupancy information of the child node to be encoded can be encoded using the first context probability model a1.

[0166] The occupancy probability of a child node can be determined based on the occupancy status of the child node to be encoded, as determined by the context state tree corresponding to that child node. If most of the neighboring nodes of the child node to be encoded are occupied by points, then the occupancy probability of the child node to be encoded may be high; if most of the neighboring nodes are not occupied by points, then the occupancy probability of the child node to be encoded may be low.

[0167] For example, based on the context state tree of the child node to be encoded, it can be determined whether each adjacent node has an occupied or non-occupied state. The occupied states of all adjacent nodes are combined to form a binary number, and the occupancy probability of the child node to be encoded is determined based on the distribution information of the binary number. For example, the context state tree can be represented as the binary number 101101.

[0168] Encoding the placeholder information of the child node to be encoded using the first context probability model can achieve data compression, improve storage and transmission efficiency, speed up data processing, simplify data representation, and improve the accuracy of data recovery.

[0169] This application embodiment acquires child nodes to be encoded from point cloud data; acquires the predicted coding state of the child nodes to be encoded; wherein the predicted coding state includes inter-frame coding state and intra-frame coding state; based on the predicted coding state, determines the first context probability model corresponding to the child node to be encoded; and encodes the placeholder information of the child node to be encoded using the first context probability model to obtain the target encoded data of the placeholder information. In this way, the corresponding first context probability model can be determined according to different predicted coding states, thus clarifying the dividing boundary of the first context probability model corresponding to different information. This allows the context probability model to effectively distinguish and encode subtle differences in coding states between adjacent frames, improving the accuracy of encoding child nodes to be encoded in point cloud data.

[0170] Referring to Figure 3, in some implementations, after the decoding end receives the target encoded data, it can use the target encoded data as the target decoded data for decoding to obtain the placeholder information of the child node to be decoded. The specific decoding process will be described in detail below.

[0171] In some implementations, the point cloud data decoding method includes the following steps:

[0172] Step 201: Obtain the target decoding data of the child nodes to be decoded in the point cloud data.

[0173] In some implementations, point cloud data is often very large, and direct transmission may result in high storage space requirements, long transmission times, and low processing efficiency. Therefore, to facilitate transmission, the child nodes to be decoded in the point cloud data can be obtained, and the placeholder information of the child nodes to be decoded can be decoded to effectively reduce the storage space of the point cloud data and improve the transmission efficiency of the point cloud data.

[0174] Point cloud data can be a collection of multiple points in three-dimensional space. Each point cloud data contains coordinate information (such as x, y, z) and possibly other attribute information. The specific coordinate and attribute information can be collected by devices such as LiDAR and used in various application fields, such as indoor scene analysis, terrain mapping, architectural planning, industrial production, and autonomous driving. Point cloud data is processed and compressed during decoding to reduce storage space or transmission bandwidth requirements.

[0175] Among them, the child node to be decoded can be a node in the point cloud data that needs to be decoded.

[0176] The target decoded data is the target encoded data obtained after being encoded by the second context probability model. During decoding, the target encoded data is used as the target decoded data and decoded using the selected second context probability model.

[0177] For example, quadtrees or binary trees can be used to partition the point cloud data to obtain several child nodes to be decoded. Taking octree partitioning as an example, before partitioning the point cloud data into an octree, the geometric information of the point cloud data needs to be transformed to ensure that all point cloud data are contained within a bounding box. Then, quantization is performed. This quantization step mainly serves a scaling function. Due to quantization rounding, some points have the same geometric information. The parameters determine whether to remove duplicate points. This process of quantization and removing duplicate points is also called voxelization. Thus, multiple child nodes to be decoded can be obtained. The specific processes of coordinate transformation and voxelization are not described in detail here.

[0178] In some implementations, the child nodes to be decoded may also be obtained in other ways, and no specific restrictions are imposed here.

[0179] The above methods can be used to obtain the child nodes to be decoded in the point cloud data, so as to facilitate the subsequent acquisition of the predicted decoding status of the child nodes to be decoded.

[0180] Step 202: Obtain the predicted decoding state of the child node to be decoded; wherein, the predicted decoding state includes inter-frame decoding state and intra-frame decoding state.

[0181] In some implementations, in order to determine the predicted decoding state of the child node to be decoded so as to determine the corresponding second context probability model based on the predicted decoding state, the predicted decoding state of the child node to be decoded can be obtained by acquiring the enable flag corresponding to the frame to be decoded where the child node to be decoded is located, so as to accurately determine whether the frame to be decoded where the child node to be decoded is located has enabled inter-frame prediction.

[0182] Specifically, the enable flag corresponding to the frame to be decoded where the child node to be decoded is located can be obtained, and the predicted decoding state of the child node to be decoded can be determined based on the enable flag.

[0183] The frame to be decoded can be the frame containing the child node to be decoded. Specifically, point cloud data can be organized into a series of frames, each containing a series of nodes.

[0184] The enable flag can be an indicator used to show whether inter-frame prediction is enabled for the frame to be decoded. In point cloud data, inter-frame prediction typically refers to using information from previous frames to predict the content of the current frame, thereby reducing the amount of data that needs to be decoded. The value of the enable flag (gbh.interPredictionEnabledFlag) can be obtained directly, specifically 0 or 1, where 0 indicates that inter-frame prediction is disabled, and 1 indicates that inter-frame prediction is enabled.

[0185] The predictive decoding state can be the inter-frame enabled state of the frame to be decoded. The predictive decoding state can include intra-frame decoding state and inter-frame decoding state.

[0186] Specifically, when the enable flag corresponding to the frame to be decoded is 1, it indicates that inter-frame prediction is enabled for the frame to be decoded, and the prediction decoding state of the frame to be decoded is the inter-frame decoding state; when the enable flag corresponding to the frame to be decoded is 0, it indicates that inter-frame prediction is disabled for the frame to be decoded, and the prediction decoding state of the frame to be decoded is the intra-frame decoding state.

[0187] By obtaining the enable flag to determine the predicted decoding state of the child node to be decoded, it is easier to adopt different decoding strategies according to different predicted decoding states, thereby improving the subsequent decoding efficiency and quality.

[0188] Step 203: Based on the predicted decoding state, determine the second context probability model corresponding to the child node to be decoded.

[0189] In some implementations, to adapt to different decoding requirements, a corresponding second context probability model can be determined from the second context probability model group based on the predicted decoding state, so as to dynamically adjust the decoding strategy according to the characteristics of the data, thereby improving the accuracy of decoding the child nodes to be decoded in the point cloud data.

[0190] The second context probability model group can be a collection of context probability models used to process and decode different types of data.

[0191] The second context probability model can be a probability model used to decode binary data, used to decode the placeholder information of the child node to be decoded.

[0192] Understandably, intra-frame decoding processes only a single frame, making it suitable for scenarios with drastic scene changes or requiring random access. Inter-frame decoding, on the other hand, utilizes the similarity between frames for compression, significantly improving the compression ratio but also increasing decoding complexity. Therefore, a corresponding contextual probability model can be selected based on the predicted decoding state of different frames to find a balance between compression efficiency and decoding complexity.

[0193] Furthermore, within an image or video frame, different regions exhibit varying levels of information and change. For instance, regions like the sky or large monochromatic backgrounds exhibit minimal variation and can utilize simple contextual probability models; while moving objects and regions rich in detail require more complex contextual probability models. Therefore, determining the contextual probability model based on local sparse information can improve decoding efficiency while maintaining decoding quality.

[0194] By determining the corresponding context probability model based on the predicted occupancy information, the dividing boundary of the second context probability model corresponding to different information can be clarified, enabling the context probability model to effectively distinguish and decode the subtle differences in the decoding state between adjacent frames, thereby improving the accuracy of decoding the child nodes to be decoded in point cloud data.

[0195] In some implementations, to improve decoding efficiency and accuracy, local sparse information, predicted placeholder information, and some or all information in the predicted decoding state of the child node to be decoded can be obtained, and the corresponding first context state model can be determined accordingly. For example, step 203 can determine the second context probability model corresponding to the child node to be decoded through one of the following implementations:

[0196] (E.1) Obtain the local sparse information of the child node to be decoded; based on the predicted decoding state and the local sparse information, determine the corresponding second context probability model from the second context probability model group;

[0197] (E.2) Alternatively, based on the predicted decoding state, predict the predicted placeholder information of the child node to be decoded; based on the predicted decoding state and the predicted placeholder information, determine the corresponding second context probability model from the second context probability model group:

[0198] (E.3) Alternatively, obtain the local sparse information of the child node to be decoded; predict the predicted placeholder information of the child node to be decoded based on the predicted decoding state; and determine the corresponding second context probability model from the second context probability model group based on at least two parameters among the predicted decoding state, local sparse information, and predicted placeholder information.

[0199] The local sparsity information can be the point cloud density around the child node to be decoded. If the number of adjacent nodes is large, it indicates that the area around the child node to be decoded is relatively dense, and vice versa.

[0200] The predicted placeholder information can be the predicted value of the placeholder state of the child node to be decoded, obtained based on the predicted decoding state. The predicted placeholder information can be represented in binary code (0 or 1), where 1 indicates that the child node to be decoded is occupied by a dot, and 0 indicates that the child node to be decoded is not occupied by a dot.

[0201] In some implementations, the local sparse information of the child node to be decoded can be obtained by acquiring multiple decoded neighboring nodes preceding the child node to be decoded, determining the first occupancy information of each neighboring node, calculating the occupancy number of the multiple decoded neighboring nodes, and comparing the occupancy number with a preset occupancy number threshold. When the occupancy number is greater than or equal to the occupancy number threshold, the local sparse information of the child node to be decoded can be determined to be sparse; when the occupancy number is less than the occupancy number threshold, the local sparse information of the child node to be decoded can be determined to be non-sparse.

[0202] In some implementations, the predicted placeholder information of the child node to be decoded can be obtained by acquiring the frame to be decoded where the child node to be decoded is located, determining at least one reference frame from the adjacent decoded frames according to the decoding order, and determining a reference child node from the reference frame that has the same spatial position and size as the child node to be decoded. The prediction is then obtained through the second placeholder information of the reference child node. Specifically, when the second placeholder information is placeholder, the predicted placeholder information of the child node to be decoded is also placeholder; when the second placeholder information is not placeholder, the predicted placeholder information of the child node to be decoded is also not placeholder.

[0203] Specifically, the corresponding second context probability model can be determined from the second context probability model group based on the predicted decoding state and local sparse information, or it can be determined based on the predicted decoding state and predicted placeholder information, or based on at least two parameters among the predicted decoding state, local sparse information and predicted placeholder information, or it can be determined based solely on the predicted decoding state.

[0204] Furthermore, in order to ensure a clearer boundary between the second context probability model that utilizes inter-frame information and the second context probability model that does not utilize inter-frame information, the second context probability model needs to be determined based on the prediction decoding state during the determination process. As for local sparse information and prediction placeholder information, they are used to select a more accurate second context probability model for the child node to be decoded through effective information, thereby improving the efficiency and accuracy of decoding the placeholder information of the child node to be decoded.

[0205] In some implementations, to more efficiently and accurately determine the second context probability model for decoding the placeholder information of the child node to be decoded, the category of the context state tree of the child node to be decoded can be determined first. This allows for the effective and rapid determination of the second context probability model most suitable for decoding the placeholder information of the current child node, improving decoding efficiency and accuracy. For example, for the cases mentioned above regarding determining the second context probability model corresponding to the child node to be decoded, the method further includes the following steps:

[0206] (F1) Determine at least one of the predicted decoding state and local sparse information as the first classification information, and use other information besides the first classification information in the predicted decoding state and local sparse information as the second classification information; or, determine at least one of the predicted decoding state and predicted placeholder information as the first classification information, and use other information besides the first classification information in the predicted decoding state and predicted placeholder information as the second classification information; or, determine at least one of the predicted decoding state, local sparse information and predicted placeholder information as the first classification information, and use other information besides the first classification information in the predicted decoding state, local sparse information and predicted placeholder information as the second classification information;

[0207] (F2) Based on the first classification information, determine the context state tree category of the context state tree corresponding to the child node to be decoded;

[0208] (F3) Map the second context probability model group according to the context state tree category and the second classification information to determine the corresponding second context probability model.

[0209] The context state tree can be constructed using placeholder information from the decoded neighboring nodes adjacent to the child node to be decoded. For example, each neighboring node corresponds to a placeholder, such as node B having a placeholder of 101, node C having a placeholder of 011, and node D having a placeholder of 110. Combining the placeholder information of neighboring nodes into the context state tree yields 101, 011, 110. Furthermore, the context state tree can also include the position information of each neighboring node.

[0210] The context state tree category can reflect a specific state of the child node to be decoded. The context state tree can include the predicted decoding state of the child node, local sparse information, and predicted placeholder information, etc. For example, the context state tree can be an inter-frame sparse context state tree, a sparse context state tree, an inter-frame context state tree, etc., specifically determined based on the selected first classification information.

[0211] The first classification information can be information used to determine the context state tree category of the context state tree corresponding to the child node to be decoded, specifically it can be used to determine the second context probability model group.

[0212] The second classification information can be information used to determine the second context probability model corresponding to the child node to be decoded. The first and second classification information are selected based on the predicted decoding state, local sparsity information, and predicted placeholder information.

[0213] For example, the context state tree category of the context state tree corresponding to the child node to be decoded can be determined first, and the corresponding second context probability model group can be determined according to the context state tree category and the second classification information. Then, the child node occupancy probability corresponding to the child node to be decoded can be determined according to the context state tree corresponding to the child node to be decoded. Finally, the second context probability model can be determined from the second context probability model group based on the child node occupancy probability.

[0214] In some implementations, the corresponding context state tree category can be determined first by predicting the decoding state, predicting the placeholder information, and some or all of the local sparse information. The corresponding second context probability model group can then be determined based on the context state tree category. After that, the second context probability model can be further determined from the determined second context probability model group based on the child node occupancy probability of the child node to be decoded.

[0215] Furthermore, the predicted decoding state includes intra-frame decoding state and inter-frame decoding state; local sparse information includes sparse and non-sparse information; and the predicted placeholder information includes placeholder and non-placeholder information.

[0216] For example, the following description addresses the case where the corresponding second context probability model is determined from the second context probability model group based on the predicted decoding state and local sparse information. For instance, when the first classification information is the predicted decoding state and the second classification information is local sparse information, the corresponding context state tree category (such as inter-frame decoding context state) can be determined based on the predicted decoding state, and the corresponding second context probability model group can be determined based on the local sparse information and the context state tree category. Then, based on the context state tree corresponding to the child node to be decoded, the child node occupancy probability of the child node to be decoded is determined, and the second context probability model is determined from the second context probability model group based on the child node occupancy probability. Conversely, when the first classification information is local sparse information and the second classification information is the predicted decoding state, the corresponding context state tree category can be determined based on the local sparse information, and the corresponding second context probability model group can be determined based on the predicted decoding state and the context state tree category. Then, based on the context state tree corresponding to the child node to be decoded, the child node occupancy probability of the child node to be decoded is determined, and the second context probability model is determined from the second context probability model group based on the child node occupancy probability.

[0217] For example, the following description addresses the case where the corresponding second context probability model is determined from the second context probability model group based on the predicted decoding state and predicted placeholder information. For instance, when the first classification information is the predicted decoding state and the second classification information is the predicted placeholder information, the corresponding context state tree category can be determined based on the predicted decoding state, and the corresponding second context probability model group can be determined based on the predicted placeholder information and the context state tree. Then, based on the context state tree corresponding to the child node to be decoded, the child node occupancy probability of the child node to be decoded is determined, and the second context probability model is determined from the second context probability model group based on the child node occupancy probability. Conversely, when the first classification information is the predicted placeholder information and the second classification information is the predicted decoding state, the corresponding context state tree category can be determined based on the predicted placeholder information, and the second context probability model group can be determined based on the predicted decoding state and the context state tree category. Then, based on the context state tree corresponding to the child node to be decoded, the child node occupancy probability of the child node to be decoded is determined, and the second context probability model is determined from the second context probability model group based on the child node occupancy probability.

[0218] For example, the following description focuses on determining the corresponding second context probability model from the second context probability model group based on at least two parameters among the predicted decoding state, local sparsity information, and predicted placeholder information. For instance, when the first classification information is the predicted decoding state, and the second classification information is local sparsity and predicted placeholder information, the corresponding context state tree category can be determined based on the predicted decoding state. Then, the second context probability model group is determined based on the context state tree category, local sparsity, and predicted placeholder information. Subsequently, the child node occupancy probability of the child node to be decoded is determined according to the context state tree corresponding to the child node to be decoded, and the second context probability model is determined from the second context probability model group based on the child node occupancy probability. Conversely, when the first classification information is the predicted decoding state and local sparsity information, and the second classification information is predicted placeholder information, the corresponding context state tree category can be determined based on the predicted decoding state and local sparsity information. Then, a context probability model group is determined based on the predicted placeholder information and the context state tree category. Finally, the child node occupancy probability of the child node to be decoded is determined according to the context state tree corresponding to the child node to be decoded, and the second context probability model is determined from the second context probability model group based on the child node occupancy probability. It is understood that any two of the predicted decoding state, local sparse information, and predicted placeholder information can be determined as the first classification information, and the remaining information can be determined as the second classification information; alternatively, any one of the predicted decoding state, local sparse information, and predicted placeholder information can be determined as the first classification information, and the remaining two information can be determined as the second classification information; alternatively, all of the predicted decoding state, local sparse information, and predicted placeholder information can be determined as the first classification information, directly determining the corresponding context state tree category and mapping it to the specific second context probability model, without selecting the second classification information; alternatively, all of the predicted decoding state, local sparse information, and predicted placeholder information can be determined as the second classification information, directly mapping it to the specific second context probability model, without selecting the first classification information; specific combinations are not listed here, and any combination that does not deviate from the concept of this application can be used as the technical solution of this application.

[0219] In some implementations, when the predicted decoding state is intra-frame decoding state, there is no need to predict the predicted placeholder information of the child nodes to be decoded, and the predicted placeholder information is all set to 0; when the predicted decoding state is inter-frame decoding state, the predicted placeholder information of the child nodes to be decoded is predicted, and the predicted placeholder information may be 0 or 1. The placeholder information of the child nodes to be decoded with different predicted placeholder information will be mapped to different second context probability models.

[0220] By determining the context state tree category of the child node to be decoded, the selection efficiency of the second context probability model can be improved, thereby improving the efficiency of decoding the occupancy information of the child node to be decoded.

[0221] In some implementations, since the occupancy state of the child node to be decoded in point cloud data is often not completely independent but is influenced by the states of surrounding nodes, in order to more accurately predict the local sparsity information of the child node to be decoded, the first occupancy information of the already decoded adjacent nodes can be used to predict the local sparsity information of the child node to be decoded, thereby improving decoding efficiency and reconstruction quality. For example, in listing the second context probability model used to determine the child node to be decoded, the "obtaining the local sparsity information of the child node to be decoded" mentioned in (E.1) and (E.3) may include:

[0222] (G1) Determine multiple decoded adjacent nodes that precede the child node to be decoded according to the decoding order;

[0223] (G2) Based on the first occupancy information of multiple decoded neighboring nodes, determine the number of occupants of multiple decoded neighboring nodes;

[0224] (G3) compares the number of placeholders with the preset number of placeholders threshold to determine the local sparse information of the child node to be decoded.

[0225] In this context, adjacent nodes can be nodes that are spatially adjacent to the child node to be decoded. Specifically, they can be nodes that share a common edge or common surface with the child node to be decoded. Furthermore, adjacent nodes can be used to predict the state of the child node to be decoded, thereby improving decoding efficiency.

[0226] The first placeholder information can be the occupancy status information of the neighboring nodes that are spatially adjacent to the child node to be decoded. In point cloud data, the occupancy status of a node is usually represented in binary code (0 or 1), where 1 indicates that the node is occupied by a point, and 0 indicates that the node is not occupied by a point. Since the neighboring nodes have already been decoded, the first placeholder information of the neighboring nodes can be obtained directly.

[0227] The number of occupants can be the sum of the occupancy status information of multiple decoded nodes adjacent to the child node to be decoded. In point cloud data, the occupancy status of a node is usually represented in binary code (0 or 1), where 1 indicates that the node is occupied by a point, and 0 indicates that the node is not occupied by a point. The number of occupants is obtained by adding the occupancy status of multiple adjacent nodes and is used to reflect whether the spatial region around the child node to be decoded is sparse.

[0228] The placeholder threshold can be a preset value used to distinguish local sparse information in the child nodes to be decoded. The placeholder threshold can be set according to the actual situation, for example, it can be set to 1, 2, 3, etc.

[0229] The local sparsity information can be the point cloud density around the child node to be decoded. If the number of adjacent nodes is large, it indicates that the area around the child node to be decoded is relatively dense, and vice versa.

[0230] For example, starting from the child node to be decoded, a preset number of adjacent nodes can be selected according to the negative x, y, and z directions adjacent to the child node to be decoded, that is, the directions of the nodes that have been decoded before the child node to be decoded. Specifically, the preset number can be set according to the actual situation, for example, it can be 12, 15, etc.

[0231] For example, the number of placeholders can be compared with a preset placeholder threshold, and the local sparse information of the child node to be decoded can be determined based on the comparison result.

[0232] For example, if the child node to be decoded is adjacent to 12 neighboring nodes, and these neighboring nodes have already been decoded, then the placeholder information (whether it is occupied by a point) can be directly obtained. Furthermore, the number of placeholders among these 12 neighboring nodes can be calculated. For instance, if the placeholder information for these 12 neighboring nodes is 1,0,0,1,0,1,0,1,0,1,0,0, then the number of placeholders is 1+0+0+1+0+1+0+1+0+1+0+0 = 5.

[0233] Furthermore, if the placeholder threshold is 1, the calculated placeholder quantity 5 is compared with the placeholder threshold 1. Since 5 is greater than 1, the comparison result is "greater than the threshold". Therefore, it can be determined that the local sparse information of the child node to be decoded is non-sparse. Non-sparse local sparse information means that the spatial region around the child node to be decoded is relatively dense. Therefore, a more efficient decoding strategy can be selected during decoding to reduce redundant information.

[0234] For example, if the first placeholder information indicates a large number of adjacent nodes occupying space, then the local sparse information of the child node to be decoded is non-sparse; if the first placeholder information indicates a small number of adjacent nodes occupying space, then the local sparse information of the child node to be decoded is sparse. This can be determined by setting a placeholder threshold or a placeholder ratio. For example, a placeholder threshold of 1 can be set. When the first placeholder information indicates a number of adjacent nodes occupying space greater than 1, the local sparse information of the child node to be decoded is determined to be non-sparse; otherwise, it is sparse.

[0235] By using the above methods, we can obtain the child node to be decoded and multiple decoded adjacent nodes preceding the child node to be decoded. By utilizing the first placeholder information of the decoded adjacent nodes, and further by setting a placeholder threshold and comparing the number of placeholders with the placeholder threshold, we can make the judgment of local sparse information clearer and more operable, thereby improving the efficiency and accuracy of decoding.

[0236] In some implementations, to facilitate the subsequent adoption of different decoding strategies based on different predicted occupancy information, the occupancy information of the child node to be decoded can be predicted using the second occupancy information of the reference child node located in at least one reference frame preceding the frame to be decoded, thereby improving decoding efficiency and accuracy. For example, in listing the second context probability model used to determine the child node to be decoded, the phrase "predicting the predicted occupancy information of the child node to be decoded based on the predicted decoding state" mentioned in (E.2) and (E.3) includes:

[0237] (H1) Obtain the frame to be decoded where the child node to be decoded is located, and determine at least one reference frame from the adjacent frames that have been decoded in the decoding order;

[0238] (H2) Determine a reference child node from the reference frame that has the same spatial position and size as the child node to be decoded;

[0239] (H3) Obtain the reference placeholder information of the reference child node as the second placeholder information, and use the second placeholder information as the prediction placeholder information of the child node to be decoded.

[0240] The reference frame can be an adjacent frame preceding the frame to be decoded in the decoding order. The reference frame can be used to predict the occupancy state of the child nodes to be decoded in the current frame.

[0241] The spatial position of the child node can be the corresponding spatial position of the child node to be decoded in the reference frame. For example, if the position of the child node to be decoded in the frame to be decoded is the top left corner, then its position in the reference frame is also the position corresponding to the top left corner.

[0242] In this context, having the same child node size indicates that the two nodes occupy the same amount of space. For example, if the reference child node and the child node to be decoded have the same child node size, then the reference child node and the child node to be decoded occupy the same amount of space.

[0243] The reference child node can be the node in the reference frame that has the highest similarity to the current child node to be decoded.

[0244] The second placeholder information can be the placeholder information of the reference child node in the reference frame that has the highest similarity to the current child node to be decoded.

[0245] It is understandable that the inter-frame decoding state can be the state in which inter-frame predictive decoding is enabled for the current frame to be decoded. Since there is no placeholder information for the child nodes to be decoded when the predictive decoding state is intra-frame decoding, it is only necessary to predict the placeholder state of the child nodes to be decoded that are in the inter-frame decoding state.

[0246] Specifically, since the motion of objects is continuous between consecutive frames, this means that the child node to be decoded in the current frame is also very likely to have a corresponding position and state in the previous frame (reference frame). Therefore, the predicted occupancy information of the child node to be decoded can be predicted by using the second occupancy information of the reference child node in the reference frame.

[0247] In some implementations, a reference child node can be determined based on its position. In this case, the reference child node can be a node in the reference frame that has the same position and the same size as the current child node to be decoded, and the second placeholder information can be the placeholder information of the reference child node that has the same position as the current child node to be decoded in the reference frame.

[0248] In some implementations, it can be assumed that the child node to be decoded is located in frame F1. To predict the occupancy information of the child node to be decoded in frame F1, a reference frame preceding frame F1 can be selected. For example, frame F0 can be selected as the reference frame. Further, in the reference frame F0, the node with the highest similarity to the child node to be decoded in frame F1 can be determined as the reference child node, and the second occupancy information of the reference child node can be obtained. This second occupancy information is then used as the predicted occupancy information of the child node to be decoded. For example, if the second occupancy information is 0, then the predicted occupancy information is also 0.

[0249] For example, the number of reference frames selected can be determined according to the actual situation. For instance, according to the decoding order, the following arrangement can be obtained: adjacent frame 1, adjacent frame 2, adjacent frame 3, adjacent frame 4, frame to be decoded 1, adjacent frame 5, adjacent frame 6. Therefore, the adjacent frames preceding the frame to be decoded can be determined as adjacent frame 1, adjacent frame 2, adjacent frame 3, and adjacent frame 4. If the number of selected reference frames is 1, the reference frame can be determined according to the principle of proximity; specifically, adjacent frame 4 can be determined as the reference frame. Similarly, if the number of selected reference frames is 2, adjacent frames 3 and 4 can be determined as reference frames.

[0250] Furthermore, if multiple reference frames are selected, but the second placeholder information of the reference child nodes corresponding to different reference frames is different, then the second placeholder information with the highest frequency of occurrence can be selected as the predicted placeholder information. For example, if there are 3 selected reference frames, and the corresponding second placeholder information is 1, 1, and 0, then 1 can be used as the predicted placeholder information.

[0251] By predicting the predicted placeholder information of the child node to be decoded using the second placeholder information of the reference child node in the reference frame, the state of the current child node to be decoded can be predicted and decoded more accurately, thereby improving the efficiency and accuracy of decoding.

[0252] Step 204: Decode the target decoding data of the child node to be decoded using the second context probability model to obtain the placeholder information of the child node to be decoded.

[0253] In some implementations, within the geometric decoding framework of point cloud data, decoding the child nodes to be decoded mainly includes decoding the placeholder information, also known as placeholder codes, of the child nodes to be decoded. Decoding the placeholder information of the child nodes to be decoded can achieve data compression and improve storage and transmission efficiency.

[0254] The target decoding data can be the data after compressing and decoding the placeholder information of the child node to be decoded.

[0255] Specifically, based on the context state tree where the child node to be decoded is located, the child node occupancy probability of the placeholder information of the child node to be decoded can be determined; then, through the child node occupancy probability and the second classification information, the specific second context probability model is determined from the second context probability model group, and the placeholder information is decoded according to the second context probability model to obtain the target decoded data of the placeholder information.

[0256] For example, based on the predicted decoding state and local sparse information, the context state tree category corresponding to the child node to be decoded can be determined to be an inter-frame non-sparse state. Then, based on the context state tree category and node occupancy information (e.g., node occupancy information is occupied), a second context probability model group A is determined. The second context probability model group A includes second context probability model a1, second context probability model a2, second context probability model a3, and second context probability model a4. Furthermore, if it is determined that the occupancy probability of the child node to be decoded is high, then based on the child node occupancy probability, the second context probability model a1 can be determined as the final second context probability model for decoding the occupancy information of the child node to be decoded, and the occupancy information of the child node to be decoded can be decoded through the second context probability model a1.

[0257] The occupancy probability of a child node can be considered as the probability of the occupancy state of the child node to be decoded. If most of the neighboring nodes of the child node to be decoded are occupied by points, then the occupancy probability of the child node to be decoded may be high; if most of the neighboring nodes are not occupied by points, then the occupancy probability of the child node to be decoded may be low.

[0258] For example, based on the context state tree of the child node to be decoded, it can be determined whether each adjacent node is occupied or not, and the occupancy states of all adjacent nodes can be combined to form a binary number. Based on the distribution information of the binary number, the occupancy probability of the child node to be decoded can be determined. For example, the context state tree can be represented as the binary number 101101.

[0259] By decoding the placeholder information of the child node to be decoded using the second context probability model, data compression, improved storage and transmission efficiency, faster data processing speed, simplified data representation, and improved accuracy of data recovery can be achieved.

[0260] This application embodiment obtains target decoding data of a child node to be decoded in point cloud data; obtains the predicted decoding state of the child node to be decoded; wherein the predicted decoding state includes inter-frame decoding state and intra-frame decoding state; based on the predicted decoding state, determines the first context probability model corresponding to the child node to be decoded; and decodes the placeholder information of the child node to be decoded through the first context probability model to obtain the target decoding data of the placeholder information. In this way, the corresponding first context probability model can be determined according to different predicted decoding states, so as to clarify the dividing boundary of the first context probability model corresponding to different information, enabling the context probability model to effectively distinguish and decode subtle differences in decoding states between adjacent frames, thereby improving the accuracy of decoding the child node to be decoded in point cloud data.

[0261] Please refer to Figures 4 and 5. Figure 4 shows the overall process of encoding the placeholder information of the child node to be encoded and obtaining the target encoded data of the child node to be encoded. Figure 5 shows the overall process of decoding the target encoded data of the child node to be encoded and obtaining the target placeholder information corresponding to the target encoded data.

[0262] Referring to Figure 4, for example, during the encoding process, the context state tree can be classified as follows: intra-frame non-sparse context state tree, intra-frame sparse context state tree, inter-frame non-sparse context state tree, inter-frame sparse context state tree, etc. In practical applications, the context state tree category can be determined based on any one of local sparse information, prediction placeholder information, and prediction decoding state.

[0263] Specifically, the context state tree category can be determined based on the first classification information, and the first context probability model group can be determined based on the context state tree category and the second classification information. Then, based on the context state tree corresponding to the child node to be encoded, the occupancy probability of the child node to be encoded is determined. Finally, the context probability model is determined from the first context probability model group based on the child node occupancy probability, such as first context probability model 1. The first and second classification information are determined based on the predicted encoding state, predicted occupancy information, and local sparsity information of the child node to be encoded.

[0264] Referring to Figure 5, for example, during the decoding process, the context state tree can be classified as follows: intra-frame non-sparse context state tree, intra-frame sparse context state tree, inter-frame non-sparse context state tree, inter-frame sparse context state tree, etc. In practical applications, the context state tree category can be determined based on any one of local sparse information, prediction placeholder information, and prediction decoding state.

[0265] Specifically, the context state tree category can be determined based on the first classification information, and the second context probability model group can be determined based on the context state tree category and the second classification information. Then, based on the context state tree corresponding to the child node to be decoded, the occupancy probability of the child node to be decoded is determined. Finally, the context probability model is determined from the second context probability model group based on the child node occupancy probability, such as second context probability model 1. The first and second classification information are determined based on the predicted decoding state, predicted occupancy information, and local sparsity information of the child node to be decoded.

[0266] Please refer to Figure 6. This application embodiment also provides a point cloud data encoding device, which can implement the above-described point cloud data encoding method. The point cloud data encoding device includes:

[0267] The first acquisition module 61 is used to acquire the child nodes to be encoded in the point cloud data;

[0268] The second acquisition module 62 is used to acquire the predicted coding state of the child node to be encoded; wherein, the predicted coding state includes inter-frame coding state and intra-frame coding state;

[0269] The first determining module 63 is used to determine the first context probability model corresponding to the child node to be encoded based on the predicted encoding state.

[0270] The encoding module 64 is used to encode the placeholder information of the child node to be encoded through the first context probability model to obtain the target encoded data of the placeholder information.

[0271] The specific implementation of this point cloud data encoding device is basically the same as the specific embodiment of the point cloud data encoding method described above, and will not be repeated here. Subject to meeting the requirements of the embodiments of this application, the point cloud data encoding device may also be equipped with other functional modules to implement the point cloud data encoding method in the above embodiments.

[0272] Referring to Figure 7, this application embodiment also provides a point cloud data decoding device, which can implement the above-described point cloud data decoding method. The point cloud data decoding device includes:

[0273] The third acquisition module 71 is used to acquire the target decoding data of the child node to be decoded in the point cloud data;

[0274] The fourth acquisition module 72 is used to acquire the predicted decoding state of the child node to be decoded; wherein, the predicted decoding state includes inter-frame decoding state and intra-frame decoding state;

[0275] The second determining module 73 is used to determine the first context probability model corresponding to the child node to be decoded based on the predicted decoding state.

[0276] The decoding module 74 is used to decode the target decoding data of the child node to be decoded through the first context probability model to obtain the placeholder information of the child node to be decoded.

[0277] The specific implementation of this point cloud data decoding device is basically the same as the specific embodiment of the point cloud data decoding method described above, and will not be repeated here. Subject to meeting the requirements of the embodiments of this application, the point cloud data decoding device may also be equipped with other functional modules to implement the point cloud data decoding method in the above embodiments.

[0278] This application also provides a computer device, which includes a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the above-described point cloud data encoding and decoding method. This computer device can be any smart terminal, including tablet computers, in-vehicle computers, etc.

[0279] Please refer to Figure 8, which illustrates the hardware structure of a computer device according to another embodiment. The computer device includes:

[0280] The processor 81 can be implemented using a general-purpose CPU (Central Processing Unit), microprocessor, 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 this application.

[0281] The memory 82 can be implemented as a read-only memory (ROM), static storage device, dynamic storage device, or random access memory (RAM). The memory 82 can store the operating system and other applications. When the technical solutions provided in the embodiments of this specification are implemented through software or firmware, the relevant program code is stored in the memory 82 and called and executed by the processor 81 using the point cloud data encoding and decoding method of the embodiments of this application.

[0282] Input / output interface 83 is used to implement information input and output;

[0283] The communication interface 84 is used to enable communication and interaction between this device and other devices. Communication can be achieved through wired means (such as USB, network cable, etc.) or wireless means (such as mobile network, WIFI, Bluetooth, etc.).

[0284] Bus 85 transmits information between various components of the device (e.g., processor 81, memory 82, input / output interface 83, and communication interface 84);

[0285] The processor 81, memory 82, input / output interface 83, and communication interface 84 are connected to each other within the device via bus 85.

[0286] This application also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the above-described point cloud data encoding and decoding method.

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

[0288] The embodiments described in this application are for the purpose of more clearly illustrating 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. As those skilled in the art will know, with the evolution of technology and the emergence of new application scenarios, the technical solutions provided by the embodiments of this application are also applicable to similar technical problems.

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

[0290] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.

[0291] Those skilled in the art will understand that all or some of the steps in the methods disclosed above, as well as the functional modules / units in the systems and devices, can be implemented as software, firmware, hardware, or suitable combinations thereof.

[0292] The terms “first,” “second,” “third,” “fourth,” etc. (if present) in the specification and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms “comprising” and “having,” and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0293] It should be understood that in this application, "at least one" and "several" refer to one or more, and "multiple" refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, "A and / or B" can represent three cases: only A exists, only B exists, and both A and B exist simultaneously, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can represent: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple.

[0294] In the embodiments provided in this application, it should be understood that the disclosed systems and methods can be implemented in other ways. For example, the system embodiments described above are merely illustrative; for instance, the division of the units described above is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interfaces, devices, or units, and may be electrical, mechanical, or other forms.

[0295] The units described above as separate components may or may not be physically separate. 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 the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0296] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0297] If the integrated unit is implemented as 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 this application, in essence, 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. This computer software product is stored in a storage medium and includes multiple instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing programs, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0298] The preferred embodiments of the present application have been described above with reference to the accompanying drawings, but this does not limit the scope of the claims of the present application. Any modifications, equivalent substitutions, and improvements made by those skilled in the art without departing from the scope and substance of the embodiments of the present application shall be within the scope of the claims of the present application.

Claims

1. A point cloud data encoding method, characterized by, The method comprises: acquiring a to-be-encoded sub-node in point cloud data; acquiring a prediction encoding state of the to-be-encoded sub-node; wherein the prediction encoding state comprises an inter-frame encoding state and an intra-frame encoding state; determining a first context probability model corresponding to the to-be-encoded sub-node based on the prediction encoding state; encoding occupancy information of the to-be-encoded sub-node through the first context probability model to obtain target encoding data of the occupancy information.

2. The point cloud data encoding method of claim 1, wherein The determination of the first context probability model corresponding to the to-be-encoded sub-node based on the prediction encoding state comprises: acquiring local sparse information of the to-be-encoded sub-node; and determining the corresponding first context probability model from a first context probability model group based on the prediction encoding state and the local sparse information; alternatively, predicting prediction occupancy information of the to-be-encoded sub-node according to the prediction encoding state; and determining the corresponding first context probability model from the first context probability model group based on the prediction encoding state and the prediction occupancy information; alternatively, acquiring local sparse information of the to-be-encoded sub-node; predicting prediction occupancy information of the to-be-encoded sub-node according to the prediction encoding state; and determining the corresponding first context probability model from the first context probability model group based on at least two parameters in the prediction encoding state, the local sparse information and the prediction occupancy information.

3. The point cloud data encoding method of claim 2, wherein The method further comprises: determining at least one of the prediction encoding state and the local sparse information as first classification information, and determining other information in the prediction encoding state and the local sparse information other than the first classification information as second classification information; or determining at least one of the prediction encoding state and the prediction occupancy information as first classification information, and determining other information in the prediction encoding state and the prediction occupancy information other than the first classification information as second classification information; or determining at least one of the prediction encoding state, the local sparse information and the prediction occupancy information as first classification information, and determining other information in the prediction encoding state, the local sparse information and the prediction occupancy information other than the first classification information as second classification information; determining a context state tree category of a context state tree corresponding to the to-be-encoded sub-node according to the first classification information; mapping the context state tree category and the second classification information in the first context probability model group to determine the corresponding first context probability model.

4. The point cloud data encoding method of claim 2, wherein The acquisition of the local sparse information of the to-be-encoded sub-node comprises: determining a plurality of encoded adjacent nodes located in a sequence before the to-be-encoded sub-node according to an encoding sequence; determining an occupancy number of the plurality of encoded adjacent nodes based on first occupancy information of the plurality of encoded adjacent nodes; comparing the occupancy number with a preset occupancy number threshold to determine the local sparse information of the to-be-encoded sub-node.

5. The point cloud data encoding method of claim 2, wherein, The prediction of the prediction occupancy information of the to-be-encoded sub-node according to the prediction encoding state comprises: acquire a to-be-encoded frame where the to-be-encoded sub-node is located, and determine at least one reference frame from the encoded adjacent frames according to the encoding order; determine a reference sub-node from the reference frame, which has the same spatial position and size as the to-be-encoded sub-node; acquire reference occupancy information of the reference sub-node as second occupancy information, and use the second occupancy information as predicted occupancy information of the to-be-encoded sub-node. The method comprises:

6. A method of decoding point cloud data, the method comprising: acquire target decoding data of a to-be-decoded sub-node in point cloud data; acquire a predicted decoding state of the to-be-decoded sub-node; wherein the predicted decoding state comprises an inter-frame decoding state and an intra-frame decoding state; determine a second context probability model corresponding to the to-be-decoded sub-node based on the predicted decoding state; decode the target decoding data of the to-be-decoded sub-node through the second context probability model to obtain occupancy information of the to-be-decoded sub-node. The determination of the second context probability model corresponding to the to-be-decoded sub-node based on the predicted decoding state comprises:

7. The method of Claim 6, wherein, acquire local sparse information of the to-be-decoded sub-node; and determine the corresponding second context probability model from a second context probability model group based on the predicted decoding state and the local sparse information; or, predict the predicted occupancy information of the to-be-decoded sub-node according to the predicted decoding state; and determine the corresponding second context probability model from the second context probability model group based on the predicted decoding state and the predicted occupancy information; or, acquire the local sparse information of the to-be-decoded sub-node; predict the predicted occupancy information of the to-be-decoded sub-node according to the predicted decoding state; and determine the corresponding second context probability model from the second context probability model group based on at least two parameters from among the predicted decoding state, the local sparse information, and the predicted occupancy information. The method further comprises:

8. The method of Claim 7, wherein, determine at least one of the predicted decoding state and the local sparse information as first classification information, and determine other information in the predicted decoding state and the local sparse information as second classification information; or determine at least one of the predicted decoding state and the predicted occupancy information as first classification information, and determine other information in the predicted decoding state and the predicted occupancy information as second classification information; or determine at least one of the predicted decoding state, the local sparse information, and the predicted occupancy information as first classification information, and determine other information in the predicted decoding state, the local sparse information, and the predicted occupancy information as second classification information; determine a context state tree category of a context state tree corresponding to the to-be-decoded sub-node according to the first classification information; map the context state tree category and the second classification information in the second context probability model group to determine the corresponding second context probability model. The acquisition of the local sparse information of the to-be-decoded sub-node comprises:

9. The method of Claim 7, wherein, ​ determining, in a decoding order, a plurality of decoded neighboring nodes located in a pre-order of the to-be-decoded sub-node; determining, based on first occupancy information of the plurality of decoded neighboring nodes, an occupancy number of the plurality of decoded neighboring nodes; comparing the occupancy number with a preset occupancy number threshold to determine local sparse information of the to-be-decoded sub-node.

10. The method of Claim 7, wherein, The predicting, according to the predicted decoding state, of the predicted occupancy information of the to-be-decoded sub-node comprises: obtaining a to-be-decoded frame in which the to-be-decoded sub-node is located, and determining at least one reference frame from decoded neighboring frames in a decoding order; determining, from the reference frame, a reference sub-node that is identical to the to-be-decoded sub-node in a spatial position of a sub-node and identical to the to-be-decoded sub-node in a size of a sub-node; obtaining reference occupancy information of the reference sub-node as second occupancy information, and taking the second occupancy information as the predicted occupancy information of the to-be-decoded sub-node.

11. A point cloud data encoding apparatus characterized by comprising: The apparatus comprises: a first obtaining module configured to obtain a to-be-encoded sub-node in point cloud data; a second obtaining module configured to obtain a predicted encoding state of the to-be-encoded sub-node; wherein the predicted encoding state comprises an inter-frame encoding state and an intra-frame encoding state; a first determining module configured to determine, based on the predicted encoding state, a first context probability model corresponding to the to-be-encoded sub-node; an encoding module configured to encode occupancy information of the to-be-encoded sub-node by using the first context probability model to obtain target encoding data of the occupancy information.

12. A point cloud data decoding apparatus, characterized by comprising: The apparatus comprises: a third obtaining module configured to obtain target decoding data of a to-be-decoded sub-node in point cloud data; a fourth obtaining module configured to obtain a predicted decoding state of the to-be-decoded sub-node; wherein the predicted decoding state comprises an inter-frame decoding state and an intra-frame decoding state; a second determining module configured to determine, based on the predicted decoding state, a second context probability model corresponding to the to-be-decoded sub-node; a decoding module configured to decode the target decoding data of the to-be-decoded sub-node by using the second context probability model to obtain occupancy information of the to-be-decoded sub-node.

13. A computer device, comprising: The computer device comprises a memory and a processor, the memory stores a computer program, and the processor implements the point cloud data encoding method in any one of claims 1 to 5 or the point cloud data decoding method in any one of claims 6 to 10 when executing the computer program.

14. A computer readable storage medium, the storage medium having stored thereon a computer program, characterized in that, The computer program is executed by the processor to implement the point cloud data encoding method in any one of claims 1 to 5 or the point cloud data decoding method in any one of claims 6 to 10.

Citation Information

Patent Citations

  • Point cloud geometrical information inter-frame encoding and decoding method

    CN112565764A

  • Point cloud geometrical information encoding and decoding method

    CN112565795A

  • Entropy coding and decoding method and device

    CN115474050A

  • Point cloud coding method and apparatus, point cloud decoding method and apparatus, and devices and storage medium

    WO2024145933A1