Coding and decoding method and device based on inter-frame prediction, chip and storage medium thereof

By employing an inter-frame prediction-based coding method, and utilizing independent OBUF inter-frame context state trees and context probability model groups, the coding process of point cloud data is optimized, solving the efficiency problem of point cloud data storage and transmission, and achieving efficient point cloud compression.

CN121397236APending Publication Date: 2026-01-23HISENSE VISUAL TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410924225.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-07-10
Publication Date
2026-01-23

AI Technical Summary

Technical Problem

The massive and unstructured nature of point cloud data poses significant challenges to storage and transmission, and existing technologies struggle to compress and process it efficiently.

Method used

An inter-frame prediction-based coding method is adopted. By determining the prediction mode of the symbol to be encoded, and using an independent OBUF inter-frame context state tree and context probability model group, the coding process is optimized, the number of bits in the context state tree is reduced, and memory is saved.

Benefits of technology

Without affecting encoding efficiency, the number of bits in the context state tree is reduced, thus improving encoding efficiency and saving memory, making it suitable for efficient compression of point cloud data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121397236A_ABST
    Figure CN121397236A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a coding and decoding method and device based on inter-frame prediction, a chip and a storage medium thereof. The coding method comprises: determining a prediction mode of a symbol to be coded, the prediction mode comprising an intra-frame prediction mode and an inter-frame prediction mode; on the basis that the prediction mode is an inter-frame prediction mode, determining an inter-frame context state tree of the symbol to be coded; for the inter-frame context state tree, determining a predicted value of the symbol to be coded; determining a context probability model group corresponding to the symbol to be coded based on the inter-frame context state trees and the predicted values, wherein different inter-frame context state trees and different predicted values correspond to different context probability model groups; determining a context probability model based on the context probability model group corresponding to the symbol to be coded; and coding the symbol to be coded based on the context probability model.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present disclosure relates to the field of audio and video technology, and in particular, to a coding method and device based on inter-frame prediction, a chip and a storage medium thereof. BACKGROUND

[0002] A point cloud is a three-dimensional data set composed of a large number of points, each of which contains position information in space and possibly other attributes (such as color, normal vector, texture coordinate, and intensity value). Point cloud data includes rich spatial information and attribute information, and thus can express three-dimensional media content and can be used to provide VR, AR, MR, and other services. However, point cloud data often includes tens of thousands or even hundreds of thousands of point data for representation, and thus an effective method for processing point cloud data is needed. SUMMARY

[0003] The following is a brief summary of the present disclosure to provide a basic understanding of some aspects of the present disclosure. The summary is not an extensive overview of the present disclosure. The summary is not intended to identify key or critical elements of the present disclosure, nor is it intended to describe any scope or any scope of the claims of the present disclosure. The sole purpose of the summary is to present some concepts of the present disclosure in a simplified language as a preliminary presentation of the more detailed description presented later.

[0004] According to one or more aspects of the present disclosure, a coding method based on inter-frame prediction is provided. The method comprises: determining a prediction mode of a to-be-coded symbol, wherein the prediction mode comprises an intra-frame prediction mode and an inter-frame prediction mode; determining an inter-frame context state tree of the to-be-coded symbol based on the prediction mode being the inter-frame prediction mode; wherein the inter-frame context state tree of the to-be-coded symbol is an independent OBUF inter-frame context state tree; determining a prediction value of the to-be-coded symbol for the inter-frame context state tree; determining a context probability model group corresponding to the to-be-coded symbol based on the inter-frame context state tree and the prediction value, wherein different inter-frame context state trees and different prediction values correspond to different context probability model groups; determining a context probability model based on the context probability model group corresponding to the to-be-coded symbol; and coding the to-be-coded symbol based on the context probability model.

[0005] According to one or more aspects of the present disclosure, an inter prediction based encoder is provided. The encoder comprises: a prediction mode determining module configured to determine a prediction mode of a to-be-encoded symbol, wherein the prediction mode comprises an intra prediction mode and an inter prediction mode; a context state tree determining module configured to determine an inter context state tree of the to-be-encoded symbol based on the prediction mode being the inter prediction mode, wherein the inter context state tree of the to-be-encoded symbol is an independent OBUF inter context state tree; a prediction module configured to determine a prediction value of the to-be-encoded symbol for the inter context state tree; a context probability model group determining module configured to determine a context probability model group corresponding to the to-be-encoded symbol based on the inter context state tree and the prediction value, and determine a context probability model based on the context probability model group corresponding to the to-be-encoded symbol, wherein different inter context state trees and different prediction values correspond to different context probability model groups; and an entropy encoding module configured to encode the to-be-encoded symbol based on the context probability model.

[0006] According to one or more aspects of the present disclosure, an apparatus is provided. The apparatus comprises: a memory configured to store a computer program; and a processor configured to invoke the computer program to perform the encoding method as described above.

[0007] According to one or more aspects of the present disclosure, a non-transitory computer storage medium is provided. The non-transitory computer storage medium stores a computer program which, when invoked by a processor, causes the processor to implement the encoding method as described above.

[0008] According to one or more aspects of the present disclosure, a chip is provided. The chip comprises: a memory configured to store a computer program; and a processor configured to invoke the computer program to perform the encoding method as described above. BRIEF DESCRIPTION OF DRAWINGS

[0009] The present disclosure will be more fully understood from the following detailed description, taken in connection with the accompanying drawings, in which various embodiments of the present disclosure are represented. However, the drawings should not be used to limit the present disclosure to a particular embodiment, but are intended to explain and understand only.

[0010] Figure 1 An exemplary block diagram of a system 100 that can be used for G-PCC encoding and decoding in accordance with some embodiments of the present disclosure is shown;

[0011] Figure 2 An exemplary block diagram of a G-PCC encoder 200 in accordance with some embodiments of the present disclosure is shown;

[0012] Figure 3An exemplary block diagram of a G-PCC decoder 300 according to some embodiments of the present disclosure is shown;

[0013] Figure 4 An exemplary diagram of Trisoup-based geometry reconstruction according to some embodiments of the present disclosure is shown;

[0014] Figure 5 An exemplary block diagram of an encoder 500 using Optimal binarization with update on the fly (OBUF) technique for encoding according to some embodiments of the present disclosure is shown;

[0015] Figure 6 An exemplary diagram of neighbor vertices of an edge to be encoded located at x, y, z axes is shown;

[0016] Figure 7 An exemplary block diagram of an encoding module 700 that can be used to perform inter-prediction based Trisoup geometry encoding according to some embodiments of the present disclosure is shown;

[0017] Figure 8 An information structure diagram showing secondary information in the intra context state tree and the inter context state tree one, inter context state tree two, inter context state tree three, inter context state tree four according to some embodiments of the present disclosure is shown;

[0018] Figure 9 An information structure diagram showing secondary information in the intra context state tree and the inter context state tree one, inter context state tree two, inter context state tree three, inter context state tree four according to some other embodiments of the present disclosure is shown;

[0019] Figure 10 An information structure diagram showing secondary information in the intra context state tree and the inter context state tree one, inter context state tree two, inter context state tree three, inter context state tree four according to some other embodiments of the present disclosure is shown;

[0020] Figure 11 An exemplary block diagram of a decoding module 1100 that can be used to perform inter-prediction based Trisoup geometry decoding according to some embodiments of the present disclosure is shown;

[0021] Figure 12 An exemplary flow diagram of an encoding method flow 1200 using Optimal binarization with update on the fly technique according to some embodiments of the present disclosure is shown;

[0022] Figure 13An exemplary flowchart of an encoding method 1300 for Trisoup geometry coding based on inter prediction according to some embodiments of the present disclosure is shown;

[0023] Figure 14 An exemplary flowchart of a decoding method 1400 for Trisoup geometry coding based on inter prediction according to some embodiments of the present disclosure is shown;

[0024] Figure 15 An exemplary block diagram of a hardware structure 1500 that can be used to perform the encoding method and the decoding method according to some embodiments of the present disclosure is shown. DETAILED DESCRIPTION

[0025] In some embodiments, the method provided in some embodiments of the present disclosure can be used for encoding of Trisoup vertices in G-PCC. More specifically, the method provided in some embodiments of the present disclosure can be used for encoding of position information in Trisoup vertex information in G-PCC. In some embodiments, the position information includes N bits, each bit can divide the position interval where the Trisoup vertex currently locates into two intervals, left and right. Wherein, the position interval where the Trisoup vertex currently locates is determined based on previous bits. In some embodiments, when the bit value is 0, the bit value indicates that the Trisoup vertex locates in the left interval of the current position interval, and when the bit value is 1, the bit value indicates that the Trisoup vertex locates in the right interval of the current position interval. In some embodiments, when the bit value is 0, the bit value indicates that the Trisoup vertex locates in the right interval of the current position interval, and when the bit value is 1, the bit value indicates that the Trisoup vertex locates in the left interval of the current position interval.

[0026] In some embodiments, the N bits in the position information indicate that the position interval where the Trisoup vertex locates is divided N times, wherein the first bit in the N bits divides the position interval where the Trisoup vertex locates into left and right intervals, and determines whether the Trisoup vertex locates in the left interval or the right interval according to the value of the first bit. The second bit in the N bits continues to divide the left interval or the right interval where the Trisoup vertex locates into left and right intervals, and determines whether the Trisoup vertex locates in the left interval or the right interval according to the value of the second bit. Similarly, the subsequent bits in the N bits are also determined in the above manner, and after dividing N times, the position of the final Trisoup vertex is determined.

[0027] For example, when the N equals 2, the first bit in the position information divides the position interval where the Trisoup vertex is located into a first left interval and a first right interval. When the first bit is 0, the Trisoup vertex is in the first left interval; when the first bit is 1, the Trisoup vertex is in the first right interval. When the Trisoup vertex is in the first left interval, the second bit in the position information divides the first left interval into a second left interval and a second right interval. When the second bit is 0, the Trisoup vertex is in the second left interval; when the second bit is 1, the Trisoup vertex is in the second right interval.

[0028] In some embodiments, the position information of the to-be-encoded vertex includes N-bit information. Similarly, the position information of the neighbor compensated reference vertex and the neighbor uncompensated reference vertex of the to-be-encoded vertex also includes N-bit information.

[0029] In some embodiments, the method provided by some embodiments of the present disclosure can be used to encode the first bit of the position information of the Trisoup vertex. In some embodiments, the method provided by some embodiments of the present disclosure includes determining a prediction mode of a to-be-encoded symbol, wherein the prediction mode includes an intra prediction mode and an inter prediction mode; determining an inter context state tree of the to-be-encoded symbol based on the prediction mode being the inter prediction mode, wherein the inter context state tree of the to-be-encoded symbol is an independent OBUF inter context state tree; determining a prediction value of the to-be-encoded symbol for the inter context state tree; and selecting a context probability model group suitable for each state for the context state tree according to the method of the present disclosure, so that the inter prediction information is more fully utilized, and the number of bits of the context state tree is reduced and the memory is saved without affecting the Solid G-PCC set coding efficiency.

[0030] In some embodiments, the method provided by some embodiments of the present disclosure further determines the inter prediction information as information of prediction 0 and prediction 1 based on fourth quantity information and fifth quantity information, so as to update part of the inter prediction information from prediction 0 and prediction 1 to no prediction. The fourth quantity information is a cumulative sum of the first bit of the to-be-encoded vertex determining the position of the prediction, and the fifth quantity information is a cumulative sum of the first bit of the to-be-encoded vertex. In some embodiments, the above operation can merge part of the inter context state tree, so as to avoid slow convergence of the probability corresponding to the inter context state tree and poor prediction effect when the use of the inter prediction is less.

[0031] In some embodiments, the context state trees include an intra context state tree, an inter context state tree one, an inter context state tree two, an inter context state tree three, and an inter context state tree four. In some embodiments, the context state trees can include more context state trees, for example, the number of the context state trees can be determined according to N. In some embodiments, the context state trees can be and / or include independent OBUF context state trees. The OBUF context state trees refer to OBUF trees in one OBUF instance, and the OBUF trees in each OBUF instance are a set of independent context state trees.

[0032] In some embodiments, the context probability model groups can include 13 context probability model groups. In some embodiments, each of the inter context state trees corresponds to three prediction results, i.e., no prediction, prediction 0, and prediction 1. In some embodiments, each of the context probability model groups corresponds to one context state tree and one prediction result. For example, in some embodiments, one of the context probability model groups can be used to determine a context probability model based on the intra context state tree. In some embodiments, the remaining 12 of the context probability model groups can be used to determine a context probability model based on the inter context state tree one, the inter context state tree two, the inter context state tree three, the inter context state tree four, and the corresponding prediction result. In some embodiments, after determining the context state tree of the first bit of the position information in the vertex, the method provided in some embodiments of the present disclosure maps the context state tree to the corresponding context probability model group to determine the context probability model for subsequent encoding according to the inter prediction result when performing inter prediction.

[0033] In some embodiments, the context probability model groups include one or more context probability models. In some embodiments, after determining the corresponding context probability model group, the context probability model group determines the corresponding context probability model index based on the determined context state tree, where the context probability model index can indicate one of the context probability models in the context probability model group. In some embodiments, based on the context state tree, the probability model of the context probability model indicated by the context probability model index can be determined.

[0034] In some embodiments, the to-be-encoded symbol can be encoded based on the context probability model.

[0035] In some embodiments, the inter-prediction-based encoding apparatus, storage medium and method provided by the present disclosure are based on the same concept, and the implementation of the apparatus and the storage medium can be referred to each other since the principles of solving technical problems are similar, and the repeated parts will not be described.

[0036] In some embodiments, the inter-prediction-based decoding apparatus, storage medium and method provided by the present disclosure are based on the same concept as the inter-prediction-based encoding apparatus, storage medium and method provided by the present disclosure, and the principles of the technology adopted are similar, so the implementation of the decoding apparatus, storage medium and method can refer to the implementation of the encoding apparatus, storage medium and method, and the repeated parts will not be described.

[0037] In some embodiments, a point cloud refers to a collection of massive three-dimensional points. After obtaining the spatial coordinates of each sampling point on the surface of an object, a collection of points is obtained, which is referred to as a point cloud. In addition to geometric coordinates, the points in the point cloud can also include some other attribute information, such as color, normal vector, reflectivity, transparency, material type, etc. Point clouds can be obtained in various ways. In some embodiments, the implementation of obtaining a point cloud includes using a camera array with known fixed positions in space to observe an object, and using some related algorithms to obtain a three-dimensional representation of the object from the two-dimensional images taken by the camera array, thereby obtaining the point cloud corresponding to the object. In other embodiments, the implementation of obtaining a point cloud includes using a laser radar scanning device to obtain the point cloud corresponding to the object. The sensor of the laser radar scanning device records the electromagnetic waves reflected by the object surface after the radar emits electromagnetic waves, thereby obtaining the volume information of the object, and obtaining the point cloud corresponding to the object according to the volume information of the object. In other embodiments, the implementation of obtaining a point cloud can also include creating three-dimensional volume information from two-dimensional images by using artificial intelligence or computer vision algorithms, thereby obtaining the point cloud corresponding to the object.

[0038] Point clouds provide a high-precision three-dimensional representation for fine digitalization of the physical world, and can be widely used in fields such as three-dimensional modeling, smart cities, autonomous navigation systems, augmented reality, etc. However, due to the characteristics of massive data, unstructured, uneven density, etc., the storage and transmission of point clouds face great challenges. Therefore, it is necessary to efficiently compress point clouds. Currently, the compression standards for point clouds include Geometry-based Point Cloud Compression (G-PCC) and Video-based Point Cloud Compression (V-PCC). The principles and related algorithms of G-PCC are described below.

[0039] Figure 1An exemplary block diagram of a system 100 that can be used for G-PCC encoding and decoding in accordance with some embodiments of the present disclosure is shown. As shown Figure 1 The system 100 can be used for encoding and / or decoding point cloud data, i.e., supporting point cloud compression and / or decompression, as shown. The system can efficiently compress and / or decompress point cloud data. In some embodiments, the system 100 can be used for Solid G-PCC encoding and decoding.

[0040] In some embodiments, the system 100 can include a source device 110. The source device 110 can be used to provide encoded point cloud data to the destination device 120 for decoding.

[0041] In some embodiments, the system 100 can include a destination device 120. The destination device 120 can be used to receive and decode the encoded point cloud data sent by the source device 110.

[0042] In some embodiments, the system 100 can include a storage device 130. The source device 110 can store the encoded point cloud data in the storage device 130 after encoding the point cloud data. The destination device 120 can read the encoded point cloud data from the storage device 130 for decoding.

[0043] In some embodiments, the source device 110 and the destination device 120 can be any suitable device, such as one or more of a computer, a notebook, a Pad, a set-top box, a television, a camera, a display device, a digital media player, a video gaming console, a video streaming device, a land or sea vehicle, a spacecraft, an airplane, a robot, a LIDAR (Light Detection and Ranging) device, a satellite, etc. In some embodiments, the source device 110 and the destination device 120 can also use wireless communication and can also use wired communication. In some embodiments, the storage device 130 can be any suitable storage device and / or storage medium, such as a file server, a cloud server, a communication medium, a storage device, etc.

[0044] In some embodiments, the source device 110 can include a data source 111. The data source 111 can be configured to obtain point cloud data, in particular, point cloud data that has not been encoded. The data source 111 can be configured to provide a series of consecutive data frames to the G-PCC encoder 113 for encoding. The data source 111 can include a point cloud data obtaining device. The point cloud data obtaining device can be any one or more of a camera or a sensor, such as a 3D scanner, a LIDAR sensor, a video camera, etc. In some embodiments, the point cloud data obtaining device can also obtain historical point cloud data that has been obtained, or corresponding data from a data content provider. In summary, the point cloud data obtaining device is configured to obtain point cloud data that can be used for encoding. The point cloud data obtaining device can obtain point cloud data in any manner that allows the point cloud data to be obtained.

[0045] In some embodiments, the source device 110 can include a first memory 112. The first memory 112 can be configured to store point cloud data from the data source 111. The first memory 112 can be a general memory device. In some embodiments, the first memory 112 can also be configured to store encoded point cloud data from the G-PCC encoder 113.

[0046] In some embodiments, the source device 110 can include a G-PCC encoder 113. The G-PCC encoder 113 can be configured to encode point cloud data obtained from the data source 111. The G-PCC encoder 113 can rearrange received data frames from a received order to an encoding order that can be used for encoding. The G-PCC encoder 113 can generate one or more bitstreams corresponding to the point cloud data, where the one or more bitstreams include encoded data.

[0047] In some embodiments, the source device 110 can include an output interface 114. The output interface 114 can be used to output one or more bitstreams generated by the G-PCC encoder 113 to the G-PCC decoder 120 for decoding or to a storage device 130 for storage. In some embodiments, the output interface 114 can be a wireless transmitter / receiver, a modem, a wired network component (e.g., an Ethernet card), a wireless communication component operating according to any of the various IEEE 802.11 standards, or other physical components. The output interface 114 can be configured to transmit encoded data according to a cellular communication standard, e.g., 4G, 4G-LTE, 5G, etc. In some embodiments, the output interface 114 can also be configured to transmit encoded data according to other wireless standards, e.g., IEEE 802.11 specifications, IEEE 802.15 specifications (e.g., ZigBee™), Bluetooth™ standards, etc.

[0048] In some embodiments, the source device 110 can also include and / or any other suitable components that can be used for point cloud data encoding.

[0049] In some embodiments, the target device 120 can include an application 121. The application 121 can be used to use the decoded point cloud data. For example, the application 121 can determine the location of a particular object using the decoded point cloud data. In some embodiments, the application 121 can include a display that can be used to display images generated based on the decoded point cloud data.

[0050] In some embodiments, the target device 120 can include a second memory 122. The second memory 122 can be used to store the decoded point cloud data. In some embodiments, the second memory 122 and the first memory 112 can be memories in different devices. In some embodiments, the second memory 122 and the first memory 112 can also be different memories or the same memory in the same device. In some embodiments, when the second memory 122 and the first memory 112 are in the same device, the first memory 112 and the second memory 122 can be distinguished by storing instructions.

[0051] In some embodiments, the target device 120 can include a G-PCC decoder 123; wherein the G-PCC decoder 123 can be configured to decode the encoded point cloud data. The G-PCC decoder 123 can receive one or more bitstreams from the input interface 124 and decode the one or more bitstreams to obtain the point cloud data. After obtaining the point cloud data, the G-PCC decoder 123 can store the point cloud data in the second memory 122 or transmit the point cloud data to the application 121.

[0052] In some embodiments, the target device 120 can include an input interface 124; wherein the input interface 124 can receive and / or obtain one or more bitstreams from the source device 110 and / or the storage device 130 and transmit the one or more bitstreams to the G-PCC decoder 123 for decoding. In some embodiments, the input interface 124 can be a wireless transmitter / receiver, a modem, a wired network component (e.g., an Ethernet card), a wireless communication component operating according to any of the various IEEE 802.11 standards, or other physical components. The input interface 124 can be configured to transmit encoded data according to a cellular communication standard, e.g., 4G, 4G-LTE, 5G, etc. In some embodiments, the input data 124 can also be configured to transmit encoded data according to other wireless standards, e.g., IEEE 802.11 specifications, IEEE 802.15 specifications (e.g., ZigBee™), Bluetooth™ standards, etc.

[0053] In some embodiments, the target device 120 can include any suitable components that can be used to decode point cloud data.

[0054] In some embodiments, the G-PCC encoder 113 and the G-PCC decoder 123 can be any suitable encoding / decoding circuit, such as a microprocessor, digital signal processor, image processor, application-specific integrated circuit (ASIC), field-programmable gate array (FPGA), discrete logic, software, hardware, firmware, or any combination thereof. In some embodiments, when the encoding and / or decoding technology is implemented in software, the source device 110 and the target device 120 can store the software instructions in a suitable non-volatile storage medium and use one or more of the aforementioned processors to invoke the instructions and execute the techniques of this disclosure. The G-PCC encoder 113 and the G-PCC decoder 123 can be included in one or more encoders and / or decoders, wherein the one or more encoders and / or decoders can be integrated as part of a combined codec (CODEC) in a single device. In some embodiments, a device including the G-PCC encoder 113 and the G-PCC decoder 123 can be and / or include one or more integrated circuits, microprocessors, and / or other types of devices.

[0055] In some embodiments, the G-PCC encoder 113 and the G-PCC decoder 123 may operate according to an encoding standard, such as the Video Point Cloud Compression (V-PCC) standard or the Geometric Point Cloud Compression (G-PCC) standard. The one or more bitstreams typically include a series of values ​​for syntax elements of knowledge-based encoding decisions (e.g., encoding modes).

[0056] Figure 2 An exemplary block diagram of a G-PCC encoder 200 according to some embodiments of the present disclosure is shown. In some embodiments, the G-PCC encoder 200 may be and / or include a combination of Figure 1 The G-PCC encoder 113 is described above. For example... Figure 2 As shown, the G-PCC encoder 200 may include any suitable unit that can be used for geometric information encoding. In some embodiments, the attribute encoding module 220 may include any suitable unit that can be used for attribute information encoding.

[0057] In some embodiments, the G-PCC encoder 200 can be used to encode a point cloud to be encoded. The point cloud to be encoded includes geometric information and attribute information.

[0058] In some embodiments, the G-PCC encoder 200 can include the geometry encoding module 210. The geometry encoding module 210 can be configured to encode the geometry information. In some embodiments, the geometry encoding module 210 can include a coordinate conversion unit 211. The coordinate conversion unit 211 can be configured to perform coordinate conversion on the geometry information, so that all the points in the point cloud to be encoded are contained in a bounding box. In some embodiments, the geometry encoding module 210 can include a voxelization unit 212. The voxelization unit 212 can be configured to perform voxelization on the geometry information after coordinate conversion. In some embodiments, the voxelization unit 212 performing voxelization on the geometry information after coordinate conversion means that the voxelization unit 212 quantizes the geometry information after coordinate conversion and removes duplicate points, so as to scale the point cloud to be encoded. Since quantization rounding can make the positions of some points in the point cloud to be encoded the same, the voxelization unit 212 needs to determine whether to remove duplicate points according to a parameter. In some embodiments, the geometry encoding module 210 can include an octree encoding unit 213. In some embodiments, the geometry encoding module 210 can include a prediction tree encoding unit 214. The octree encoding unit 213 and the prediction tree encoding unit 214 can be configured to perform arithmetic encoding on the geometry information after voxelization is completed, so as to obtain a geometry information bitstream of the point cloud to be encoded. In some embodiments, the geometry encoding module 210 can include a first arithmetic encoding unit 215. In some embodiments, the G-PCC encoder 200 can perform arithmetic encoding on the geometry information after voxelization is completed by using the octree encoding unit 213 and the first arithmetic encoding unit 215. In some embodiments, the G-PCC encoder 200 can perform arithmetic encoding on the geometry information after voxelization is completed by using the prediction tree encoding unit 214 and the first arithmetic encoding unit 215.

[0059] In some embodiments, the octree encoding unit 213 comprises an octree partitioning subunit 2131. The octree partitioning subunit 2131 can be configured to perform octree partitioning. In some embodiments, the octree partitioning subunit 2131 can perform octree partitioning (octree / tetree / bintree) on the bounding box in a breadth first search order, and encode the occupancy code of each node. That is, the octree partitioning subunit 2131 can successively partition the bounding box to obtain subcubes, and continue to partition the non-empty (containing points in the point cloud) subcubes until the leaf nodes obtained by the partitioning are 1x1x1 unit cubes. Then the number of points contained in the leaf nodes is encoded, and finally the geometry octree is encoded to generate a binary code stream. In some embodiments, whether the subcube contains points is represented by an 8-bit binary code, which is referred to as an occupancy code. In some embodiments, when the subcube contains points, the bit is 1; when the subcube does not contain points, the bit is 0. In some embodiments, the octree encoding unit 213 can comprise a surface fitting subunit 2132 and any suitable unit that can be used for octree-based geometry encoding. In some embodiments, the surface fitting subunit 2132 can perform surface fitting on the geometry information based on a Trisoup (Triangle soup). When performing surface fitting, the surface fitting subunit 2132 can first perform octree partitioning, but does not need to successively partition the point cloud to be encoded to unit cubes with an edge length of 1x1x1, but rather stops partitioning when the edge length of the subblock is a preset value, and then obtains at most twelve vertices generated by the surface formed based on the distribution of the point cloud in each subblock and the twelve edges of the subblock. The first arithmetic encoding unit 215 can successively encode the vertex coordinates of each subblock to generate a binary geometry information code stream.

[0060] In some embodiments, the prediction tree encoding unit includes a prediction tree construction subunit 2141. The prediction tree construction subunit 2141 can be used to construct a prediction tree structure. In some embodiments, the prediction tree construction subunit 2141 can sort the points in the point cloud to be encoded and construct a prediction tree structure using two different ways (e.g., a high latency slow way and a low latency fast way), where the sorting can be in disorder, Morton order, azimuth angle order, radial distance order, etc. The prediction tree encoding unit can include a prediction quantization subunit 2142 and other suitable units that can be used for geometry encoding based on a prediction tree. The prediction quantization subunit 2142 can traverse each node in the prediction tree based on the prediction tree structure, predict the position information of the node using different prediction modes to obtain a prediction residual, and quantize the geometry prediction residual using a quantization parameter. The prediction modes include at least an intra prediction mode and an inter prediction mode. The first arithmetic encoding unit 215 can iteratively encode the prediction residual of the position information of the prediction tree node, the prediction tree structure, and the quantization parameter, etc., to generate a binary geometry information bitstream.

[0061] In some embodiments, the G-PCC encoder 200 may include an attribute encoding module 220, which is used to encode the attribute information. In some embodiments, the attribute encoding module 220 may include a color conversion unit 221, which is used to perform color conversion on the attribute information. In some embodiments, the attribute encoding module 220 may include a recoloring unit 222, which is used to recolor the geometric information. Recoloring refers to assigning attribute information to the reconstructed point cloud using the original point cloud, with the goal of minimizing the error by making the attribute values ​​of the reconstructed point cloud as similar as possible to the attribute values ​​of the point cloud to be encoded. In some embodiments, the attribute encoding module 220 may include a RAHT (Region Adaptive Hierarchical Transform) unit 223, which is used to perform a region adaptive hierarchical transformation on the attribute information. In some embodiments, the attribute encoding module 220 may include a quantization unit 224, which is used to quantize the coefficients of the RAHT transform. In some embodiments, the attribute encoding module 220 may include a geometric reconstruction unit 226. Since the attribute encoding module 220 processes based on reconstructed geometric information, after lossy geometric encoding is completed, the geometric reconstruction unit 226 can be used to reconstruct geometric information from the geometric bitstream and to match the original attribute information with the reconstructed geometric information. In some embodiments, the attribute encoding module 220 may include a second arithmetic encoding module 225. The second arithmetic encoding module 225 performs arithmetic encoding on the coefficients of the quantized RAHT transform to obtain the attribute information bitstream.

[0062] Figure 3 This is an exemplary block diagram of a G-PCC decoder 300 according to some embodiments of the present disclosure. In some embodiments, the G-PCC decoder 300 may be and / or include a combination of Figure 1 The G-PCC decoder 123 is described above. (For example...) Figure 3 As shown, the G-PCC decoder 300 may include any suitable unit that can be used for geometric information decoding. In some embodiments, the attribute decoding module 320 may include any suitable unit that can be used for attribute information decoding.

[0063] In some embodiments, the G-PCC decoder 300 can be used to decode the geometric information bitstream and the attribute information bitstream to obtain geometric information and attribute information, and then reconstruct the point cloud.

[0064] In some embodiments, the G-PCC decoder 300 can include a geometry decoding module 310. The geometry decoding module 310 can be configured to decode a geometry information bitstream to obtain geometry information. In some embodiments, the geometry decoding module can include a first arithmetic decoding unit 311. The first arithmetic decoding unit 311 can be configured to perform arithmetic decoding on the geometry information bitstream. In some embodiments, the geometry decoding module can include an octree decoding unit 312. The octree decoding unit 312 can be configured to perform octree decoding on the geometry information bitstream after arithmetic decoding. In some embodiments, the geometry decoding module can include a prediction tree decoding unit 313. The prediction tree decoding unit 313 can be configured to perform prediction tree decoding on the geometry information bitstream after arithmetic decoding. In some embodiments, the geometry decoding module can include a geometry reconstruction unit 314. The geometry reconstruction unit 314 can be configured to reconstruct the geometry information. In some embodiments, the geometry decoding module can include an inverse coordinate conversion unit 315. The inverse coordinate conversion unit 315 can be configured to perform inverse coordinate conversion on the reconstructed geometry information to output the geometry information.

[0065] In some embodiments, the octree decoding unit 312 can include an octree synthesis subunit 3121. The octree synthesis subunit 3121 can be configured to synthesize an octree. In some embodiments, the octree decoding unit 312 can include a surface fitting subunit 3122. The surface fitting subunit 3122 can be configured to perform surface fitting to be used for reconstructing geometry. In some embodiments, the octree decoding unit 312 can be configured to parse an occupancy code of each node by continuously parsing the occupancy code of each node and successively partitioning nodes in a breadth-first traversal order until a 1x1x1 unit cube is obtained, parse a number of points contained in each leaf node, and finally recover geometry reconstruction point cloud information.

[0066] In some embodiments, the prediction tree decoding unit 313 can include a prediction tree reconstruction subunit 3131. The prediction tree reconstruction subunit 3131 can be configured to reconstruct a prediction tree. In some embodiments, the prediction tree decoding unit 313 can include a residual calculation subunit 3132. The residual calculation subunit 3132 can be configured to obtain geometry position prediction residual information and a quantization parameter of each prediction node and perform inverse quantization, which can be used by the geometry reconstruction unit 314 and the inverse coordinate conversion unit 315 to obtain geometry information.

[0067] In some embodiments, the G-PCC decoder 300 can comprise an attribute decoding module 320. The attribute decoding module 320 can be configured to decode the attribute information bitstream to obtain attribute information. In some embodiments, the attribute decoding module 320 can comprise a second arithmetic decoding unit 321. The second arithmetic decoding unit 321 can be configured to perform arithmetic decoding on the attribute information bitstream. In some embodiments, the attribute decoding module 320 can comprise a dequantization unit 322. The dequantization unit 322 can be configured to perform dequantization on the attribute information bitstream after arithmetic decoding. In some embodiments, the attribute decoding module 320 can comprise a RAHT inverse transform unit 323. The RAHT inverse transform unit 323 can be configured to perform RAHT inverse transform on the attribute information bitstream. In some embodiments, the attribute decoding module 320 can comprise a color inverse transform unit 325. The color inverse transform unit 325 can be configured to perform color inverse transform on the attribute information bitstream after inverse transform to obtain attribute information.

[0068] In some embodiments, based on the geometry information obtained by the geometry decoding module 310 and the attribute information obtained by the attribute decoding module 320, the G-PCC decoder can restore the three-dimensional image model of the point cloud data to be encoded

[0069] In some embodiments, the G-PCC encoder can perform Trisoup-based geometry encoding and the G-PCC decoder can perform Trisoup-based geometry decoding. Figure 2 The G-PCC encoder and the G-PCC decoder as described above can perform Trisoup-based geometry encoding and geometry decoding. Figure 3 In some embodiments, the octree encoding unit 213 and the octree decoding unit 312 can perform Trisoup-based geometry encoding and geometry decoding. When performing Trisoup-based geometry encoding, the octree encoding unit 213 can first perform octree partitioning to divide the point cloud data to be encoded into leaf nodes with a specified edge length; then, surface information formed by the voxels in the nodes can be represented by a series of triangle meshes. In some embodiments, G-PCC generally uses a parameter trisoup node size to represent the size of the block where the triangle mesh is located. When the size of the block where the triangle mesh is located is greater than 0, the set of voxels in the node can be represented by a geometric patch, and the twelve foci generated by the twelve edges of the block where the triangle mesh is located are called vertices.

[0070] In some embodiments, the presence of the vertex on each node edge and the quantized position of the vertex on the edge can be represented as 1 bit and N bits respectively, and the vertex related information of each triangle patch is sequentially encoded to generate a binary code stream. In some embodiments, the N can be greater than or equal to 1, for example, can be equal to 2. Inside each node, the reconstructed surface is constructed by a non-planar polygon formed by the vertices, and organized into a set of triangles. In addition, each node also has a centroid vertex, and the encoding of the offset value between the final centroid coordinates and the initial centroid coordinates (along the surface normal n) can improve the representation of the surface curvature in each node. In addition, surface vertices can also be created and marked. Among them, Figure 4 A schematic diagram of Trisoup-based geometry reconstruction is provided according to some embodiments of the present disclosure. In some embodiments, the octree encoding unit can use a fiber tracking technique to convert triangle voxels into points, thereby reconstructing a point cloud.

[0071] In some embodiments, as shown in Figure 4 The centroid vertex C is encoded as the drift value of the barycenter average of all vertices. The vector represents the normal of the triangular surface.

[0072] When performing Trisoup-based geometry decoding, the octree decoding unit 312 can use a triangle rasterization technique to decode the geometry coordinates of the point cloud from the triangle patches of the nodes. For example, the octree decoding unit 312 checks whether each voxel inside the node cube intersects with the triangle patch, and if the voxel in the node cube intersects with the triangle patch, the intersection point is calculated and the decoded cube is output. In some embodiments, the octree decoding unit 312 can use 6 unit vectors (0, 1, 1), (0, 1, 1), (0, 1, 1), (0, 1, 1), (0, 1, 1), (0, 1, 1) to perform intersection test to determine whether each unit vector intersects with the triangle patch. In some embodiments, the number of points generated by the G-PCC decoder is determined by the grid distance d.

[0073] As described above, the vertex information includes the presence of the vertex and the position information of the vertex, wherein the position information can be represented by N bits, and each bit can be used to divide the position interval where the vertex is currently located into a left interval and a right interval, and N can be an integer greater than or equal to 1.

[0074] In some embodiments, when N equals 2, the position information in the vertex information is 2 bits. The first bit divides the position interval where the vertex is located into a first left interval and a first right interval. When the first bit value is 0, the vertex is in the first left interval; when the first bit value is 1, the vertex is in the first right interval. When the vertex is in the first left interval, the second bit divides the first left interval into a second left interval and a second right interval. When the second bit value is 0, the vertex is in the second left interval; when the second bit value is 1, the vertex is in the second right interval.

[0075] In some embodiments, when the G-PCC encoder encodes the vertex, it can be regarded as encoding the vertex information, i.e., encoding the position information of the vertex, i.e., encoding the N bits. In some embodiments, when the first bit in the N bits in the position information of the vertex is encoded, the vertex is a vertex to be encoded, and the first bit in the N bits is a symbol to be encoded.

[0076] Figure 5 An exemplary block diagram of an encoder 500 using an Optimal binarization with update on the fly (OBUF) technique for encoding in some embodiments of the present disclosure is shown. In some embodiments, the OBUF technique can quickly and accurately map some columns of discrete states of field information to a fixed number M of adaptive entropy encoders through a mapping relationship Look-Up Table (LUT). The above operation can make the context state tree information state no longer one-to-one correspond to the probability model, but will update the fixed number of context probability models with the current encoded syntax element, and update its mapping relationship after each placeholder code encoding is completed.

[0077] As Figure 5 shown, in some embodiments, the encoder 500 can include a context state tree determination module 501; in some embodiments, the encoder 500 can include a mapping module 502; in some embodiments, the encoder 500 can include an encoding module 503 and / or any suitable component that can be used for point cloud data encoding. In some embodiments, the encoder 500 can be and / or include the G-PCC encoder 123 and the geometry encoding unit 210 described in conjunction with Figure 1 and Figure 2 the G-PCC encoder 123 and the geometry encoding unit 210 described in conjunction with

[0078] In some embodiments, the context state tree determination module 501 can be configured to determine a context state tree for the to-be-encoded symbol. In some embodiments, the context state tree for the to-be-encoded symbol can be constructed from the neighbor vertex information that has been encoded in the space. In some embodiments, the context state tree vertex for the to-be-encoded vertex can be found from 12 neighbor nodes. Figure 6 An example diagram of neighbor vertices of a to-be-encoded edge in the x, y, z axes is shown. As shown, the neighbor nodes can include one or more of the following categories: (1) a vertex on the edge in the negative direction of the axis corresponding to the to-be-encoded edge; (2) a vertex on a neighbor edge (direct contact) that is perpendicular to the to-be-encoded edge; (3) a vertex on a neighbor edge (non-direct contact) that is perpendicular to the to-be-encoded edge; and (4) a vertex on a neighbor edge that is parallel to the to-be-encoded edge. Figure 6

[0079] In some embodiments, the context state tree determination module 501 can be configured to construct a context state tree for the to-be-encoded vertex in a certain order. In some embodiments, the first K context state tree vertices in the context state tree can be primary information, and the last L context state tree vertices can be secondary information. In some embodiments, L can be dynamically adjusted during the encoding process.

[0080] In some embodiments, each context state tree vertex can be present or absent, i.e., a 1 or 0 state. In some embodiments, the context state tree can be the state information of the K+L context state tree vertices in the context state tree, i.e., the context state tree can be represented by K+L bits. In some embodiments, the state information of the K+L context state tree vertices can include K primary information and L secondary information. In some embodiments, the encoder can record the number of times each context state tree is used during the encoding process. When the number of times a context state tree is used is greater than a threshold T, a context state tree node is added in the scanning order, i.e., the context state tree is subdivided by introducing a new context state tree node. In some embodiments, the updated context state tree can be used for geometric coding of the to-be-encoded vertex in the subsequent encoding process.

[0081] In some embodiments, the mapping module 502 can be configured to determine a context probability model index i corresponding to the context state tree for the to-be-encoded symbol based on a mapping relationship. In some embodiments, the mapping module 502 can determine the context probability model index i corresponding to the context state tree based on the context state tree and a mapping relationship lookup table (LUT) before all to-be-encoded symbols are encoded. In some embodiments, the context probability model index i can correspond to a binary encoder with index i in one or more context probability model groups in the encoding module 502. For example, the encoding module 502 can include one context probability model group, which can correspond to 32 binary encoders coder​i (i taking values [0, 1,..., 31]) then the context probability model of index i corresponds to the encoder coder i In some embodiments, the encoder described above can also be an entropy encoder.

[0082] In some embodiments, the encoding module 503 can be configured to perform geometric encoding and / or entropy encoding on the to-be-encoded symbols. In some embodiments, the encoding module 503 can include one or more context probability model groups, wherein each of the one or more context probability model groups includes a plurality of context probability models. The encoding module 503 can encode the to-be-encoded symbols by using the context probability model corresponding to the context state tree of the to-be-encoded symbols.

[0083] In some embodiments, the encoding module 503 can further include an encoder. The encoder can encode the to-be-encoded symbols based on the context probability models.

[0084] Figure 7 An exemplary block diagram of an encoding module 700 that can be used to perform inter prediction based Trisoup geometry encoding is shown. In some embodiments, the encoding module 700 can be and / or include the G-PCC encoder 113, the geometry encoding unit 210, and the encoding module 503 described in connection with Figure 1 、 Figure 2 and Figure 5 In some embodiments, the encoding module 700 can be used to encode the first bit in the position information in the to-be-encoded vertex.

[0085] As Figure 7 described, in some embodiments, the encoding module 700 can include any suitable components that can be used to perform inter prediction based Trisoup geometry encoding.

[0086] In some embodiments, the encoding module 700 can comprise a prediction mode determination module 701; wherein the prediction mode determination module 701 can be configured to determine a prediction mode of the to-be-encoded symbol. In some embodiments, the prediction mode can comprise an intra prediction; in some embodiments, the prediction mode can comprise an inter prediction. In some embodiments, the prediction mode determination module 701 can determine the prediction mode based on a first syntax element and uncompensated reference vertex information, wherein the first syntax element indicates whether the inter prediction is enabled, and the uncompensated reference vertex information indicates whether there is an uncompensated reference vertex. In some embodiments, when the first syntax element indicates that the inter prediction is not enabled or the uncompensated reference vertex information indicates that there is no uncompensated reference vertex, the prediction mode determination module 701 can determine the prediction mode as an intra prediction mode.

[0087] In some embodiments, when the first syntax element indicates that inter prediction is enabled and the uncompensated reference vertex information indicates that there is an uncompensated reference vertex, the prediction mode determining module 701 can determine the prediction mode according to first quantity information and second quantity information, wherein the first quantity information indicates a number of times of incorrect prediction when a neighbor uncompensated reference vertex predicts a neighbor vertex of the first bit, and the second quantity information indicates a number of times of incorrect prediction when a neighbor compensated reference vertex predicts a neighbor vertex of the first bit. In some embodiments, when the first quantity information is less than or equal to a first threshold or the second quantity information is less than or equal to a second threshold, it indicates that the prediction effect of the neighbor compensated vertex and the neighbor uncompensated vertex information of the to-be-encoded vertex after the inter prediction is enabled satisfies a preset condition, and when the first quantity information is greater than the first threshold and the second quantity information is greater than the second threshold, it indicates that the prediction effect of the neighbor compensated vertex and the neighbor uncompensated vertex information of the to-be-encoded vertex after the inter prediction is enabled does not satisfy the preset condition. In some embodiments, the preset condition can include that the prediction effect of the neighbor compensated vertex and the neighbor uncompensated vertex information of the to-be-encoded vertex is good, for example, the prediction result of the neighbor compensated vertex and the neighbor uncompensated vertex information of the to-be-encoded vertex is accurate or a small number of inaccurate. For example, in some embodiments, when the first quantity information is less than or equal to 0 or the second quantity information is less than or equal to 4, it indicates that the prediction effect of the neighbor compensated vertex and the neighbor uncompensated vertex information of the to-be-encoded vertex after the inter prediction is enabled satisfies the preset condition, and when the first quantity information is greater than 0 and the second quantity information is greater than 4, it indicates that the prediction effect of the neighbor compensated vertex and the neighbor uncompensated vertex information of the to-be-encoded vertex after the inter prediction is enabled does not satisfy the preset condition. In some embodiments, based on the first quantity information being less than or equal to the first threshold or the second quantity information being less than or equal to the second threshold, the prediction mode determining module 701 can be configured to determine the prediction mode as an inter prediction mode; and based on the first quantity information being greater than the first threshold and the second quantity information being greater than the second threshold, the prediction mode determining module 701 can be configured to determine the prediction mode as an intra prediction mode.

[0088] In some embodiments, the encoding module 700 can include a context state tree determining module 702; wherein the context state tree determining module 702 can be configured to determine a context state tree of the to-be-encoded symbol. In some embodiments, when the prediction mode determining module 701 determines that the prediction mode is an intra prediction mode, the context state tree determining module 702 can be configured to determine the context state tree as an intra context state tree. In some embodiments, when the prediction mode determining module 701 determines that the prediction mode is an inter prediction mode, the context state tree determining module 702 can be configured to determine the context state tree according to first indication information, wherein the first indication information can be determined by the value of TrisoupVerticesPred, indicating the position information of the compensated reference vertex.

[0089] In some embodiments, the inter-frame context state tree can be divided into an inter-frame context state tree one, an inter-frame context state tree two, an inter-frame context state tree three, and an inter-frame context state tree four. And based on the first bit, the position interval where the vertex to be encoded is located is divided into a first left interval and a first right interval. When the vertex is located in the first left interval, the second bit divides the first left interval into a second left interval and a second right interval. When the vertex is located in the first right interval, based on the second bit, the first right interval is divided into a third left interval and a third right interval. In some embodiments, when the first indication information is not located in the position interval where the vertex to be encoded is located, the first indication information is 0; when the first indication information is located in the second left interval, the first indication information is 1; when the first indication information is located in the second right interval, the first indication information is 2; when the first indication information is located in the third left interval, the first indication information is 3; and when the first indication information is located in the third right interval, the first indication information is 4.

[0090] In some embodiments, when the first indication information is 0, the context state tree determination module 702 can be configured to determine that the context state tree is an intra-frame context state tree; when the first indication information is 1, the context state tree determination module 702 can be configured to determine that the context state tree is an inter-frame context state tree one in the inter-frame context state tree; when the first indication information is 2, the context state tree determination module 702 can be configured to determine that the context state tree is an inter-frame context state tree two in the inter-frame context state tree; when the first indication information is 3, the context state tree determination module 702 can be configured to determine that the context state tree is an inter-frame context state tree three in the inter-frame context state tree; and when the first indication information is 4, the context state tree determination module 702 can be configured to determine that the context state tree is an inter-frame context state tree four in the inter-frame context state tree.

[0091] In some embodiments, the secondary information in the intra-frame context state tree can include 15 bits of information. The secondary information in the inter-frame context state tree one, the inter-frame context state tree two, the inter-frame context state tree three, and the inter-frame context state tree four can include 17 bits of information, respectively. The structures of the intra-frame context state tree and the inter-frame context state tree one, the inter-frame context state tree two, the inter-frame context state tree three, and the inter-frame context state tree four can be referred to Figure 8 .

[0092] In some embodiments, the encoding module 700 can comprise a prediction module 703; wherein the prediction module 703 can be configured to determine the predicted value of the first bit when the prediction mode is the inter prediction mode. In some embodiments, the prediction module 703 can comprise one or more prediction units 703-1, 703-2, …, 703-G, wherein G = 4. In some embodiments, G can be determined based on the number of bits of the position information in the vertex to be encoded. In some embodiments, each of the one or more prediction units can have the same structure.

[0093] In some embodiments, the one or more prediction units can be configured to determine the predicted value based on third quantity information and the uncompensated reference vertex information, wherein the third quantity information indicates a number of bits in the neighbor uncompensated reference vertex prediction neighbor vertex information that are predicted inaccurately. In some embodiments, the number of bits of the position information in the neighbor uncompensated reference vertex prediction neighbor vertex information can be the same as the number of bits in the position information of the vertex to be encoded. In some embodiments, when the third quantity information indicates that the number of bits in the neighbor uncompensated reference vertex prediction neighbor vertex information that are predicted inaccurately is greater than a first threshold, it indicates that the prediction of the first bit in the neighbor uncompensated reference vertex prediction neighbor vertex information does not satisfy a preset condition. When the third quantity information indicates that the number of bits in the neighbor uncompensated reference vertex prediction neighbor vertex information that are predicted inaccurately is less than or equal to 0, it indicates that the prediction of the first bit in the neighbor uncompensated reference vertex prediction neighbor vertex information satisfies the preset condition. In some embodiments, the preset condition can comprise that the prediction of the first bit in the neighbor uncompensated reference vertex prediction neighbor vertex information is good, for example, the prediction results of the neighbor compensated vertex and the neighbor uncompensated vertex information of the vertex to be encoded are accurate or a small number of inaccurate. In some embodiments, when the third quantity information indicates that the number of bits in the neighbor uncompensated reference vertex prediction neighbor vertex information that are predicted inaccurately is greater than 0, it indicates that the prediction of the first bit in the neighbor uncompensated reference vertex prediction neighbor vertex information does not satisfy the preset condition. When the third quantity information indicates that the number of bits in the neighbor uncompensated reference vertex prediction neighbor vertex information that are predicted inaccurately is less than or equal to 0, it indicates that the prediction of the first bit in the neighbor uncompensated reference vertex prediction neighbor vertex information satisfies the preset condition.

[0094] In some embodiments, when the prediction effect of the first bit in the neighbor uncompensated reference vertex prediction neighbor vertex information does not satisfy the preset condition or the uncompensated reference vertex information indicates that there is no uncompensated reference vertex, the one or more prediction units can be configured to determine not to predict using the uncompensated reference vertex information, i.e., NoPred. In some embodiments, when the prediction effect of the first bit in the neighbor uncompensated reference vertex prediction neighbor vertex information satisfies the preset condition and the uncompensated reference vertex information indicates that there is an uncompensated reference vertex, the one or more prediction units can be configured to determine a prediction value based on the first bit in the position information of the uncompensated reference vertex. If the first bit in the position information of the uncompensated reference vertex is 0, the one or more prediction units can be configured to determine that the prediction value is 0, i.e., Pred 0. If the first bit in the position information of the uncompensated reference vertex is 1, the one or more prediction units can be configured to determine that the prediction value is 1, i.e., Pred 1.

[0095] In some embodiments, the encoding module 700 can include a context probability model group 704. In some embodiments, when the prediction mode is the inter prediction mode, the context probability model group 704 can be configured to determine a context probability model for subsequent encoding of the to-be-encoded symbol based on the inter context state tree determined by the context state tree determination module 702 and the prediction value determined by the prediction module 703. In some embodiments, when the prediction mode is the intra prediction mode, the context probability model group 704 can be configured to determine a context probability model for subsequent encoding of the to-be-encoded symbol based on an intra context state tree.

[0096] In some embodiments, the context probability model set 704 can include one or more context probability model set 704-1, context probability model set 704-2, …, context probability model set 704-H, where H = 5. In some embodiments, based on the prediction mode being an intra prediction mode, the context probability model set 704-1 can be used to determine the context probability model for subsequent encoding. In some embodiments, based on the prediction mode being an inter prediction mode, the context probability model set 704-2, the context probability model set 704-3, the context probability model set 704-4, the context probability model set 704-5 can be used to determine the context probability model for subsequent encoding based on inter context state tree one, inter context state tree two, inter context state tree three, inter context state tree four, and their corresponding prediction values, respectively. In some embodiments, when the N is other values, then the context probability model set 704 can set the corresponding inter context state tree and the corresponding context probability model set according to the value of N, and determine the context probability model for encoding the to-be-encoded symbol based on the corresponding inter context state tree and the corresponding context probability model set.

[0097] In some embodiments, in some embodiments, the encoding module 700 can include an entropy encoder 705. The entropy encoder 705 can be used to entropy encode the to-be-encoded symbol based on the context probability model.

[0098] In some embodiments, the set of context probability models 704 can include one or more of a set of context probability models 704-1, a set of context probability models 704-2, …, a set of context probability models 704-H, where H = 13. In some embodiments, H can be determined based on the number of bits of the position information in the vertex to be encoded. In some embodiments, based on the prediction mode being an intra prediction mode, the set of context probability models 704-1 can be used to determine the context probability models for subsequent encoding. In some embodiments, based on the prediction mode being an inter prediction mode, each of the inter context state tree one, the inter context state tree two, the inter context state tree three, and the inter context state tree four corresponds to three sets of context probability models 704-i, 704-i+1, 704-i+2. That is, each inter context state tree corresponds to three prediction values, and each prediction value corresponds to a set of context probability models 704-i. For example, when the prediction mode is an inter prediction mode and the context state tree is an inter context state tree, the prediction values can be no prediction, prediction 0, and prediction 1, where no prediction corresponds to the set of context probability models 704-i; prediction 0 corresponds to the set of context probability models 704-i+1; and prediction 1 corresponds to the set of context probability models 704-i+2.

[0099] In some embodiments, for the context state tree being the inter context state tree one, when the prediction value is no prediction, the set of context probability models 704 can employ the set of context probability models 704-2; when the prediction value is prediction 0, the set of context probability models 704 can employ the set of context probability models 704-3; and when the prediction value is prediction 1, the set of context probability models 704 can employ the set of context probability models 704-4. Similarly, when the context state tree is the inter context state tree two, the inter context state tree three, and the inter context state tree four, respectively, the set of context probability models 704 employed by the set of context probability models 704 can be inferred in turn. In the above cases, the intra context state tree and the inter context state trees one, two, three, and four can each include 15 bits of information. The secondary information structure of the context state tree can be as shown in Figure 9

[0100] ​In some embodiments, each of the context probability model groups 704 includes one or more context probability models. In some embodiments, after determining the corresponding context probability model group, the context probability model group determines a corresponding context probability model index based on the determined context state tree, where the context probability model index can indicate a context probability model i in the context probability model group. In some embodiments, based on the context state tree, the probability model of the context probability model i indicated by the context probability model index can be determined.

[0101] The context probability model groups 704 use 13 context probability model groups to select a suitable context probability model group for each context state tree, where the suitable context probability model group refers to the context probability model group corresponding to the predicted value corresponding to the context state tree. The above method can avoid different predicted values of the context state tree sharing the same context probability model group, thereby improving the efficiency of context probability model group probability updating.

[0102] In some embodiments, in one or more prediction units in the prediction module 703, after determining the predicted value based on the third quantity information and the uncompensated reference vertex information, one or more prediction units in the prediction module 703 can determine the predicted value of 0 and the predicted value of 1 based on the ratio of the fourth quantity information and the fifth quantity information, where the fourth quantity information can indicate the cumulative sum of the first bit in the position information of the encoded vertex determined as predicted, and the fifth quantity information indicates the cumulative sum of the first bit in the position information of the decoded vertex. In some embodiments, one or more prediction units in the prediction module 703 can determine the predicted value of 0 and the predicted value of 1 by comparing the ratio of the fourth quantity information and the fifth quantity information with a preset threshold.

[0103] In some embodiments, based on the prediction value being 0 or the prediction value being 1, if the ratio of the fourth quantity information and the fifth quantity information is greater than the preset threshold, one or more prediction units in the prediction module 703 can be used to determine that the prediction value is unchanged, i.e., based on the ratio of the fourth quantity information and the fifth quantity information being greater than the preset threshold; if the prediction value is 0, one or more prediction units in the prediction module 703 can be used to determine that the prediction value is 0; if the prediction value is 1, one or more prediction units in the prediction module 703 can be used to determine that the prediction value is 1. In some embodiments, based on the prediction value being 0 or the prediction value being 1, if the ratio of the fourth quantity information and the fifth quantity information is less than or equal to the preset threshold, one or more prediction units in the prediction module 703 can be used to determine that the updated prediction value is not predicted, i.e., based on the ratio of the fourth quantity information and the fifth quantity information being less than or equal to the preset threshold; if the prediction value is 0 or 1, one or more prediction units in the prediction module 703 can be used to determine that the updated prediction value is not predicted.

[0104] In some embodiments, the budget value that one or more prediction units in the prediction module 703 can be used to determine can include the following cases: 1. not predicted; 2. the prediction value before updating is 0, and the prediction value after updating is not predicted; 3. the prediction value before updating is 1, and the prediction value after updating is not predicted; 4. the prediction value is 0; 5. the prediction value is 1.

[0105] The above-mentioned cases correspond to different context probability model groups 704-i in the context probability model groups 704. In some embodiments, based on the inter-frame context state tree one, case 1 above corresponds to the context probability model group 704-2 in the context probability model groups 704, i.e., when the prediction value is not predicted, the inter-frame context state tree one corresponds to the context probability model group 704-2 in the context probability model groups 704; case 2 above corresponds to the context probability model group 704-3 in the context probability model groups 704, i.e., when the prediction value is 0 before updating and not predicted after updating, the inter-frame context state tree one corresponds to the context probability model group 704-3 in the context probability model groups 704; case 3 above corresponds to the context probability model group 704-4 in the context probability model groups 704, i.e., when the prediction value is 1 before updating and not predicted after updating, the inter-frame context state tree one corresponds to the context probability model group 704-4 in the context probability model groups 704; case 4 above corresponds to the context probability model group 704-3 in the context probability model groups 704, i.e., when the prediction value is predicted 0, the inter-frame context state tree one corresponds to the context probability model group 704-3 in the context probability model groups 704; and case 5 above corresponds to the context probability model group 704-4 in the context probability model groups 704, i.e., when the prediction value is predicted 1, the inter-frame context state tree one corresponds to the context probability model group 704-4 in the context probability model groups 704. For the above-mentioned cases, the secondary information of the intra-frame context state tree can include 15 bits of information, and the inter-frame context state trees one, two, three, and four can each include 16 bits of information. The secondary information structure of the context state tree can be as shown in FIG. 7. Figure 10

[0106] In summary, although one or more prediction units in the prediction module 703 update the partial prediction value 0 and the prediction value 1 to the prediction value not predicted, the index value of the context probability model group in the context probability model group 704 corresponding to the context state tree still uses the index value of the context probability model group corresponding to the prediction value before updating. This approach can merge some inter-frame context state trees, avoiding slow convergence of the probability corresponding to the inter-frame context state tree when the use of inter-frame prediction is less, thereby having no good prediction effect.

[0107] In some embodiments, the encoding module 700 can not only be used to encode the first bit in the position information of the to-be-encoded vertex, but also can be applied to encode any bit in the position information of the to-be-encoded vertex.

[0108] Figure 11 ​An exemplary block diagram of a decoding module 1100 that can be used to perform inter-prediction based Trisoup geometry decoding according to some embodiments of the disclosure is shown. In some embodiments, the decoding module 1100 can be and / or include in the G-PCC decoder 123 and the G-PCC decoder 300 as described in connection with Figure 1 and Figure 3 In some embodiments, the decoding module 1100 can be used to determine a context probability model for a first bit in the position information of the vertex to be decoded can be used for subsequent decoding.

[0109] As Figure 11 described, in some embodiments, the decoding module 1100 can include a prediction mode determination module 1101; in some embodiments, the decoding module 1100 can include a context state tree determination module 1102; in some embodiments, the decoding module 1100 can include a prediction module 1103; in some embodiments, the decoding module 1100 can include a context probability model set 1104 and / or any suitable components that can be used to perform inter-prediction based Trisoup geometry decoding.

[0110] In some embodiments, the prediction mode determination module 1101 can be used to determine a prediction mode for the symbol to be decoded. In some embodiments, the prediction mode can include intra-prediction; in some embodiments, the prediction mode can include inter-prediction. In some embodiments, the prediction mode determination module 1101 performs the operations as performed by the prediction mode determination module 701 as described in connection with Figure 7 with repeated details being omitted here.

[0111] In some embodiments, the context state tree determination module 1102 can be used to determine a context state tree for the symbol to be decoded. In some embodiments, when the prediction mode determination module 1101 determines that the prediction mode is an intra-prediction mode, the context state tree determination module 1102 can be used to determine that the context state tree is an intra-context state tree. In some embodiments, when the prediction mode determination module 1101 determines that the prediction mode is an inter-prediction mode, the context state tree determination module 1102 can be used to determine the context state tree according to a first indication information, wherein the first indication information can be determined by a value of TrisoupVerticesPred, indicating the position information of the compensated reference vertex. In some embodiments, the context state tree determination module 1102 performs the operations as performed by the context state tree determination module 702 as described in connection with Figure 7 with repeated details being omitted here.

[0112] In some embodiments, the prediction module 1103 can be configured to determine the predicted value of the first bit when the prediction mode is inter prediction mode. In some embodiments, the prediction module 1103 can include one or more prediction units 1103-1, 1103-2, …, 1103-G, where G = 4. In some embodiments, G can be determined based on the number of bits of the position information in the vertex to be encoded. In some embodiments, each of the one or more prediction units can have the same structure. In some embodiments, the prediction module 1103 performs operations as described in connection with the prediction module 703, and repeated details are not provided herein. Figure 7 The prediction module 703 performs operations as described above, and repeated details are not provided herein.

[0113] In some embodiments, the context probability model set 1104 can be configured to determine context probability models for subsequent decoding based on the inter context state tree determined by the inter context state tree determination module 1102 and the predicted value determined by the prediction module 1103. In some embodiments, when the prediction mode is intra prediction mode, the context probability model set 1103 determines context probability models for subsequent decoding based on the intra context state tree. In some embodiments, the context probability model set 1104 can include one or more context probability model sets 1104-1, 1104-2, …, 1104-H, where H is determined based on the number of bits of the position information in the vertex to be encoded, H = 5. In some embodiments, H can also equal 13. In some embodiments, each of the context probability model sets 1104 can include one or more context probability models. In some embodiments, after determining the corresponding context probability model set, the context probability model set determines a corresponding context probability model index based on the determined context state tree, where the context probability model index can indicate a context probability model i in the context probability model set. In some embodiments, based on the context state tree, the probability model of the context probability model i indicated by the context probability model index can be determined. In some embodiments, the context probability model set 1104 performs decoding operations corresponding to the encoding operations performed by the context probability model set 704 as described above, and repeated details are not provided herein. Figure 7 The context probability model set 704 performs decoding operations corresponding to the encoding operations as described above, and repeated details are not provided herein.

[0114] In some embodiments, the entropy decoder 1105 can be configured to entropy decode the to-be-decoded symbol based on the context probability model.

[0115] Figure 12An exemplary flowchart of an encoding method flow 1200 using dynamically updated optimal binarization techniques according to some embodiments of this disclosure is shown. In some embodiments, the execution entity of the encoding method may be an encoder. The encoder may be and / or a combination of Figure 1 , Figure 2 and Figure 5 The G-PCC encoder 113, geometric encoding unit 210, and encoding module 503 are described above.

[0116] like Figure 12 As shown in 1201, the encoder can determine the context state tree of the symbol to be encoded. The context state tree of the symbol to be encoded is composed of the information of its encoded neighbor vertices in space. In some embodiments, the vertices of the context state tree of the vertex to be encoded can be found from 12 neighbor nodes. These neighbor nodes can be referenced... Figure 6 In some embodiments, the encoder can construct a context state tree for the vertices to be encoded in a certain order. The first K vertices of the context state tree represent primary information, and the last L vertices represent secondary information, where L can be dynamically adjusted during the encoding process.

[0117] In step 1202, the encoder can determine the context probability model index corresponding to the context state tree of the symbol to be encoded based on the mapping relationship. In some embodiments, the encoder can determine the context probability model index corresponding to the context state tree through a mapping lookup table (LUT) before all symbols to be encoded. The context probability model index can correspond to a context probability model with the specified context probability model index in one or more groups of context probability models.

[0118] In 1203, the encoder can perform geometric encoding and / or entropy encoding on the symbol to be encoded based on the context probability model corresponding to the context probability model index. In some embodiments, the encoder may include one or more binary encoders or entropy encoders. The encoder can perform binary encoding on the symbol to be encoded using the binary encoder corresponding to the context probability model index of the symbol to be encoded.

[0119] Figure 13 An exemplary flowchart of an encoding method 1300 based on inter-frame prediction Trisoup geometric coding according to some embodiments of the present disclosure is shown. In some embodiments, the implementer of the encoding method may be an encoder. The encoder may be and / or a combination of Figure 1 , Figure 2 and Figure 5The G-PCC encoder 113, geometric encoding unit 210, and encoding module 503 are described above.

[0120] like Figure 13 As shown, in step 1301, the encoder can determine the prediction mode based on a first syntax element and uncompensated reference vertex information, wherein the first syntax element indicates whether inter-frame prediction is enabled, and the uncompensated reference vertex information indicates whether uncompensated reference vertices exist. In some embodiments, when the first syntax element indicates that inter-frame prediction is not enabled or the uncompensated reference vertex information indicates that uncompensated reference vertices do not exist, the encoder can determine that the prediction mode is an intra-frame prediction mode, that is, the encoding method flow can proceed to step 1303.

[0121] In 1302, the encoder can determine the prediction mode based on a first quantity information and a second quantity information, wherein the first quantity information indicates the number of inaccurate predictions when the neighbor uncompensated reference vertex predicts the second bit of a neighbor vertex, and the second quantity information indicates the number of inaccurate predictions when the neighbor compensated reference vertex predicts the first bit of a neighbor vertex. In some embodiments, if the first quantity information is less than or equal to a first threshold or the second quantity information is less than or equal to a second threshold, it indicates that the prediction effect of the neighbor compensated vertex and neighbor uncompensated vertex information of the vertex to be encoded after enabling inter-frame prediction meets a preset condition; if the first quantity information is greater than the first threshold and the second quantity information is greater than the second threshold, it indicates that the prediction effect of the neighbor compensated vertex and neighbor uncompensated vertex information of the vertex to be encoded after enabling inter-frame prediction does not meet the preset condition. In some embodiments, the preset condition may include that the prediction effect of the neighbor compensated vertex and neighbor uncompensated vertex information of the vertex to be encoded is good, for example, the prediction results of the neighbor compensated vertex and neighbor uncompensated vertex information of the vertex to be encoded are accurate or very few are inaccurate. For example, if the first quantity information is less than or equal to 0 or the second quantity information is less than or equal to 4, it indicates that the prediction effect of the neighbor compensated vertices and neighbor uncompensated vertices of the vertex to be encoded after enabling inter-frame prediction meets the preset conditions. If the first quantity information is greater than 0 and the second quantity information is greater than 4, it indicates that the prediction effect of the neighbor compensated vertices and neighbor uncompensated vertices of the vertex to be encoded after enabling inter-frame prediction does not meet the preset conditions. In some embodiments, based on the first quantity information being less than or equal to a first threshold or the second quantity information being less than or equal to a second threshold, the prediction mode determination module 701 can be used to determine that the prediction mode is an inter-frame prediction mode, that is, the encoding method flow can proceed to 1304; based on the first quantity information being greater than the first threshold and the second quantity information being greater than the second threshold, the prediction mode determination module 701 can be used to determine that the prediction mode is an intra-frame prediction mode, that is, the encoding method flow can proceed to 1303.

[0122] In 1303, the encoder determines that the prediction mode is an intra prediction mode.

[0123] In 1304, the encoder determines that the prediction mode is an inter prediction mode.

[0124] In 1305, the encoder can determine the context state tree based on first indication information, wherein the first indication information indicates position information of a compensation reference vertex. In some embodiments, the inter context state tree can be divided into an inter context state tree one, an inter context state tree two, an inter context state tree three, and an inter context state tree four. And the first bit divides the position interval where the vertex to be encoded is located into a first left interval and a first right interval. When the vertex is in the first left interval, the second bit divides the first left interval into a second left interval and a second right interval. When the vertex is in the first right interval, the second bit divides the first right interval into a third left interval and a third right interval. In some embodiments, when the first indication information is not located in the position interval where the vertex to be encoded is located, the first indication information can be 0; when the first indication information is located in the second left interval, the first indication information can be 1; when the first indication information is located in the second right interval, the first indication information can be 2; when the first indication information is located in the third left interval, the first indication information can be 3; and when the first indication information is located in the third right interval, the first indication information can be 4.

[0125] In some embodiments, when the first indication information is 0, the encoder can determine the context state tree to be an intra context state tree; when the first indication information is 1, the encoder can determine the context state tree to be the inter context state tree one in the inter context state tree; when the first indication information is 2, the encoder can determine the context state tree to be the inter context state tree two in the inter context state tree; when the first indication information is 3, the encoder can determine the context state tree to be the inter context state tree three in the inter context state tree; and when the first indication information is 4, the encoder can determine the context state tree to be the inter context state tree four in the inter context state tree.

[0126] At 1306, the encoder can determine a prediction value of the symbol to be encoded. In some embodiments, the encoder can determine the prediction value based on the third number information and the uncompensated reference vertex information, where the third number information indicates a number of times that a second bit in neighbor uncompensated reference vertex prediction neighbor vertex information is predicted incorrectly. In some embodiments, when the third number information indicates that the number of times that the second bit in the neighbor uncompensated reference vertex prediction neighbor vertex information is predicted incorrectly is greater than a first threshold, it indicates that a prediction effect of a first bit in the neighbor uncompensated reference vertex prediction neighbor vertex information does not satisfy a preset condition. When the third number information indicates that the number of times that the second bit in the neighbor uncompensated reference vertex prediction neighbor vertex information is predicted incorrectly is less than or equal to 0, it indicates that the prediction effect of the first bit in the neighbor uncompensated reference vertex prediction neighbor vertex information satisfies the preset condition. In some embodiments, the preset condition can include that the prediction effect of the first bit in the neighbor uncompensated reference vertex prediction neighbor vertex information is good, for example, prediction results of neighbor compensated vertices and neighbor uncompensated vertex information of a vertex to be encoded are accurate or a small number of inaccurate. In some embodiments, when the third number information indicates that the number of times that the second bit in the neighbor uncompensated reference vertex prediction neighbor vertex information is predicted incorrectly is greater than 0, it indicates that the prediction effect of the first bit in the neighbor uncompensated reference vertex prediction neighbor vertex information does not satisfy the preset condition. When the third number information indicates that the number of times that the second bit in the neighbor uncompensated reference vertex prediction neighbor vertex information is predicted incorrectly is less than or equal to 0, it indicates that the prediction effect of the first bit in the neighbor uncompensated reference vertex prediction neighbor vertex information satisfies the preset condition. In some embodiments, when the prediction effect of the first bit in the neighbor uncompensated reference vertex prediction neighbor vertex information does not satisfy the preset condition or the uncompensated reference vertex information indicates that there is no uncompensated reference vertex, the encoder determines not to use the uncompensated reference vertex information for prediction, i.e., NoPred. In some embodiments, when the prediction effect of the first bit in the neighbor uncompensated reference vertex prediction neighbor vertex information satisfies the preset condition and the uncompensated reference vertex information indicates that there is an uncompensated reference vertex, the encoder determines the prediction value based on a first bit in position information of the uncompensated reference vertex. If the first bit in the position information of the uncompensated reference vertex is 0, the one or more prediction units determine the prediction value as 0 (Pred0). If the first bit in the position information of the uncompensated reference vertex is 1, the one or more prediction units determine the prediction value as 1 (Pred 1).

[0127] In some embodiments, the encoder can determine the prediction value for the prediction value of 0 and the prediction value of 1 based on a ratio of the fourth quantity information and the fifth quantity information, wherein the fourth quantity information indicates a cumulative sum of the first bits in the position information of the encoded vertex determined as predicted, and the fifth quantity information indicates a cumulative sum of the first bits in the position information of the decoded vertex. In some embodiments, the encoder can determine the prediction value for the prediction value of 0 and the prediction value of 1 by comparing the ratio of the fourth quantity information and the fifth quantity information with a preset threshold. For example, based on the prediction value of 0 or the prediction value of 1, if the ratio of the fourth quantity information and the fifth quantity information is greater than the preset threshold, the encoder determines that the prediction value is unchanged, i.e., based on the ratio of the fourth quantity information and the fifth quantity information being greater than the preset threshold, if the prediction value is 0, the encoder determines that the prediction value is 0; if the prediction value is 1, the encoder determines that the prediction value is 1. In some embodiments, based on the prediction value of 0 or the prediction value of 1, if the ratio of the fourth quantity information and the fifth quantity information is less than or equal to the preset threshold, the encoder can determine that the updated prediction value is not predicted, i.e., based on the ratio of the fourth quantity information and the fifth quantity information being less than or equal to the preset threshold, if the prediction value is 0 or 1, the encoder determines that the updated prediction value is not predicted. In the above case, the prediction value determined by the encoder can include the following cases: 1. not predicted; 2. the prediction value before updating is 0, and the prediction value after updating is not predicted; 3. the prediction value before updating is 1, and the prediction value after updating is not predicted; 4. the prediction value is 0; 5. the prediction value is 1.

[0128] In 1307, the encoder can select a context probability model corresponding to the to-be-encoded symbol based on the context state tree and the prediction value. In some embodiments, the encoder can include one or more context probability model groups 1-context probability model group H, where H=5. That is, the encoder can include context probability model groups 1-5. Based on the prediction mode being an intra prediction mode, the context probability model group 1 can be used to determine a context probability model based on an intra context state tree. Based on the prediction mode being an inter prediction mode, the context probability model groups 2-5 can be used to determine a context probability model based on an inter context state tree one, an inter context state tree two, an inter context state tree three, an inter context state tree four, and their corresponding prediction values, respectively. In some embodiments, when N is other values, the encoder can set the corresponding inter context state tree and the corresponding context probability model group according to the value of N, and determine the context probability model based on the corresponding inter context state tree and the corresponding context probability model group.

[0129] In some embodiments, the encoder can include one or more sets of context probability models, Set 1-Set H, where H=13. In some embodiments, H can be determined based on the number of bits of the position information in the vertex to be encoded. That is, the encoder can include Set 1-Set 13 of context probability models. Based on the prediction mode being an intra prediction mode, Set 1 of context probability models can be used to determine a context probability model based on an intra context state tree. Based on the prediction mode being an inter prediction mode, when the context state tree is Inter Context State Tree One and the prediction value is no prediction, Set 2 of context probability models can be used to determine a context probability model. When the context state tree is Inter Context State Tree One and the prediction value is prediction 0, Set 3 of context probability models can be used to determine a context probability model. When the context state tree is Inter Context State Tree One and the prediction value is prediction 1, Set 4 of context probability models can be used to determine a context probability model. When the context state tree is Inter Context State Tree Two, Three, Four, Set 5-Set 13 of context probability models can be used to determine a context probability model in the order of Set 1-Set 4 as described above. In some embodiments, when N is other values, the encoder can set the corresponding inter context state tree and the corresponding set of context probability models according to the value of N, and determine a context probability model based on the corresponding inter context state tree and the corresponding set of context probability models.

[0130] In some embodiments, when the encoder determines the prediction value in the above five cases, based on the context state tree being the inter-frame context state tree one, case 1 above corresponds to the context probability model group 2, i.e. when the prediction value is not predicted, the inter-frame context state tree one corresponds to the context probability model group 2 in the encoder; case 2 above corresponds to the context probability model group 3 in the encoder, i.e. when the prediction value is 0 before updating and not predicted after updating, the inter-frame context state tree one corresponds to the context probability model group 3 in the encoder; case 3 above corresponds to the context probability model group 4 in the encoder, i.e. when the prediction value is 1 before updating and not predicted after updating, the inter-frame context state tree one corresponds to the context probability model group 4 in the encoder; case 4 above corresponds to the context probability model group 3 in the encoder, i.e. when the prediction value is 0, the inter-frame context state tree one corresponds to the context probability model group 3 in the encoder; case 5 above corresponds to the context probability model group 4 in the encoder, i.e. when the prediction value is 1, the inter-frame context state tree one corresponds to the context probability model group 4 in the encoder. When the context state tree is the inter-frame context state tree two, three, or four, the context probability model groups 5 to 13 can be used to determine the context probability model according to the case of the inter-frame context state tree one in turn.

[0131] In some embodiments, each of the context probability model groups includes one or more context probability models. In some embodiments, after determining the corresponding context probability model group, the context probability model group determines the corresponding context probability model index based on the determined context state tree, where the context probability model index can indicate a context probability model i in the context probability model group. In some embodiments, based on the context state tree, the probability model of the context probability model i indicated by the context probability model index can be determined.

[0132] In 1308, the encoder encodes the to-be-encoded symbol based on the context probability model.

[0133] In some embodiments, the encoding method can not only be used to encode the first bit in the position information of the to-be-encoded vertex, but also can be applied to encode any bit in the position information of the to-be-encoded vertex.

[0134] In some embodiments, the encoding method described in the present disclosure can merge part of the inter-frame context state tree, avoiding the problem that the probability corresponding to the inter-frame context state tree converges slowly when the use of inter-frame prediction is less, thereby having no good prediction effect. In addition, the encoding method described in the present disclosure can also share the same context probability model group for different prediction values, thereby improving the efficiency of the context probability model group probability update.

[0135] Figure 14 An exemplary flowchart of a decoding method 1400 of Trisoup geometry decoding based on inter-frame prediction according to some embodiments of the present disclosure is shown. In some embodiments, the execution subject of the decoding method can be a decoder. The decoder can be and / or incorporate Figure 1 and Figure 3 the G-PCC decoder 123 and the G-PCC decoder 300 described above.

[0136] As Figure 14 shown, in 1401, the decoder can determine the prediction mode based on a first syntax element and uncompensated reference vertex information, wherein the first syntax element indicates whether inter-frame prediction is enabled, and the uncompensated reference vertex information indicates whether there is an uncompensated reference vertex. In some embodiments, when the first syntax element indicates that inter-frame prediction is not enabled or the uncompensated reference vertex information indicates that there is no uncompensated reference vertex, the decoder can determine the prediction mode as an intra-frame prediction mode, i.e., the decoding method flow can proceed to 1403.

[0137] At 1402, the decoder can determine the prediction mode based on the first number information and the second number information, wherein the first number information indicates a number of incorrect predictions when a neighbor uncompensated reference vertex predicts a neighbor vertex second bit, and the second number information indicates a number of incorrect predictions when a neighbor compensated reference vertex predicts a neighbor vertex first bit. In some embodiments, the first number information is less than or equal to a first threshold value or the second number information is less than or equal to a second threshold value, indicating that the prediction effect of the neighbor compensated vertex and the neighbor uncompensated vertex information of the to-be-encoded vertex after the inter-frame prediction is enabled satisfies a preset condition, and the first number information is greater than the first threshold value and the second number information is greater than the second threshold value, indicating that the prediction effect of the neighbor compensated vertex and the neighbor uncompensated vertex information of the to-be-encoded vertex after the inter-frame prediction is enabled does not satisfy the preset condition. In some embodiments, the preset condition can include that the prediction effect of the neighbor compensated vertex and the neighbor uncompensated vertex information of the to-be-encoded vertex is good, for example, the prediction result of the neighbor compensated vertex and the neighbor uncompensated vertex information of the to-be-encoded vertex is accurate or a small number of inaccurate. For example, in some embodiments, the first number information is less than or equal to 0 or the second number information is less than or equal to 4, indicating that the prediction effect of the neighbor compensated vertex and the neighbor uncompensated vertex information of the to-be-decoded vertex after the inter-frame prediction is enabled satisfies the preset condition, and the first number information is greater than 0 and the second number information is greater than 4, indicating that the prediction effect of the neighbor compensated vertex and the neighbor uncompensated vertex information of the to-be-decoded vertex after the inter-frame prediction is enabled does not satisfy the preset condition. In some embodiments, based on the first number information being less than or equal to the first threshold value or the second number information being less than or equal to the second threshold value, the decoder determines that the prediction mode is an inter-frame prediction mode, i.e., the decoding method flow can proceed to 1404; based on the first number information being greater than the first threshold value and the second number information being greater than the second threshold value, the prediction mode determination module 701 can be used to determine that the prediction mode is an intra-frame prediction mode, i.e., the decoding method flow can proceed to 1403.

[0138] At 1403, the decoder determines that the prediction mode is an intra-frame prediction mode.

[0139] At 1404, the decoder determines that the prediction mode is an inter-frame prediction mode.

[0140] In 1405, the decoder can determine the context state tree based on first indication information, wherein the first indication information indicates position information of a compensation reference vertex. In some embodiments, the inter-frame context state tree can be divided into an inter-frame context state tree one, an inter-frame context state tree two, an inter-frame context state tree three, and an inter-frame context state tree four. And a first bit divides a position interval in which the vertex to be decoded is located into a first left interval and a first right interval. When the vertex is in the first left interval, a second bit divides the first left interval into a second left interval and a second right interval. When the vertex is in the first right interval, the second bit divides the first right interval into a third left interval and a third right interval. In some embodiments, when the first indication information is not in the position interval in which the vertex to be decoded is located, the first indication information is 0; when the first indication information is in the second left interval, the first indication information is 1; when the first indication information is in the second right interval, the first indication information is 2; when the first indication information is in the third left interval, the first indication information is 3; and when the first indication information is in the third right interval, the first indication information is 4.

[0141] In some embodiments, when the first indication information is 0, the decoder determines that the context state tree is an intra-frame context state tree; when the first indication information is 1, the decoder determines that the context state tree is an inter-frame context state tree one in the inter-frame context state tree; when the first indication information is 2, the decoder determines that the context state tree is an inter-frame context state tree two in the inter-frame context state tree; when the first indication information is 3, the decoder determines that the context state tree is an inter-frame context state tree three in the inter-frame context state tree; and when the first indication information is 4, the decoder determines that the context state tree is an inter-frame context state tree four in the inter-frame context state tree.

[0142] At 1406, the decoder can determine a prediction value of the symbol to be decoded. In some embodiments, the decoder can determine the prediction value based on the third number information and the uncompensated reference vertex information, where the third number information indicates a number of times that a neighbor uncompensated reference vertex prediction neighbor vertex information is predicted incorrectly when a second bit of the neighbor uncompensated reference vertex prediction neighbor vertex information is predicted. In some embodiments, when the third number information indicates that the number of times that the neighbor uncompensated reference vertex prediction neighbor vertex information is predicted incorrectly when the second bit of the neighbor uncompensated reference vertex prediction neighbor vertex information is predicted is greater than a first threshold, it indicates that a prediction effect of a first bit of the neighbor uncompensated reference vertex prediction neighbor vertex information does not satisfy a preset condition. When the third number information indicates that the number of times that the neighbor uncompensated reference vertex prediction neighbor vertex information is predicted incorrectly when the second bit of the neighbor uncompensated reference vertex prediction neighbor vertex information is predicted is less than or equal to 0, it indicates that the prediction effect of the first bit of the neighbor uncompensated reference vertex prediction neighbor vertex information satisfies the preset condition. In some embodiments, the preset condition can include that the prediction effect of the first bit of the neighbor uncompensated reference vertex prediction neighbor vertex information is good, for example, a prediction result of a neighbor compensated vertex and a neighbor uncompensated vertex information of a vertex to be encoded is accurate or a small number of inaccuracies. In some embodiments, when the third number information indicates that the number of times that the neighbor uncompensated reference vertex prediction neighbor vertex information is predicted incorrectly when the second bit of the neighbor uncompensated reference vertex prediction neighbor vertex information is predicted is greater than 0, it indicates that the prediction effect of the first bit of the neighbor uncompensated reference vertex prediction neighbor vertex information does not satisfy the preset condition. When the third number information indicates that the number of times that the neighbor uncompensated reference vertex prediction neighbor vertex information is predicted incorrectly when the second bit of the neighbor uncompensated reference vertex prediction neighbor vertex information is predicted is less than or equal to 0, it indicates that the prediction effect of the first bit of the neighbor uncompensated reference vertex prediction neighbor vertex information satisfies the preset condition. In some embodiments, when the prediction effect of the first bit of the neighbor uncompensated reference vertex prediction neighbor vertex information does not satisfy the preset condition or the uncompensated reference vertex information indicates that there is no uncompensated reference vertex, the decoder determines not to predict using the uncompensated reference vertex information, i.e., NoPred. In some embodiments, when the prediction effect of the first bit of the neighbor uncompensated reference vertex prediction neighbor vertex information satisfies the preset condition and the uncompensated reference vertex information indicates that there is an uncompensated reference vertex, the decoder determines the prediction value based on a first bit of position information of the uncompensated reference vertex. If the first bit of the position information of the uncompensated reference vertex is 0, the one or more prediction units determine the prediction value as 0 (Pred0). If the first bit of the position information of the uncompensated reference vertex is 1, the one or more prediction units determine the prediction value as 1 (Pred 1).

[0143] In some embodiments, the decoder can determine the prediction value for the prediction value of 0 and the prediction value of 1 based on a ratio of a fourth quantity information and a fifth quantity information, wherein the fourth quantity information indicates a cumulative sum of the first bits in the position information of the decoded vertices determined to be predicted, and the fifth quantity information indicates a cumulative sum of the first bits in the position information of the decoded vertices. In some embodiments, the decoder can determine the prediction value for the prediction value of 0 and the prediction value of 1 by comparing the ratio of the fourth quantity information and the fifth quantity information with a preset threshold. For example, based on the prediction value of 0 or the prediction value of 1, if the ratio of the fourth quantity information and the fifth quantity information is greater than the preset threshold, the decoder determines that the prediction value is unchanged, i.e., based on the ratio of the fourth quantity information and the fifth quantity information being greater than the preset threshold, if the prediction value is 0, the decoder determines that the prediction value is 0; if the prediction value is 1, the decoder determines that the prediction value is 1. In some embodiments, based on the prediction value of 0 or the prediction value of 1, if the ratio of the fourth quantity information and the fifth quantity information is less than or equal to the preset threshold, the decoder determines that the updated prediction value is not predicted, i.e., based on the ratio of the fourth quantity information and the fifth quantity information being less than or equal to the preset threshold, if the prediction value is 0 or 1, the decoder determines that the updated prediction value is not predicted. In the above cases, the prediction value determined by the decoder can include the following cases: 1. not predicted; 2. the prediction value before updating is 0, and the prediction value after updating is not predicted; 3. the prediction value before updating is 1, and the prediction value after updating is not predicted; 4. the prediction value is 0; 5. the prediction value is 1.

[0144] In 1407, the decoder can determine a context probability model for the to-be-decoded symbol based on the context state tree and the prediction value for subsequent decoding. In some embodiments, the decoder can include one or more context probability model groups 1-context probability model group H, where H=5. That is, the decoder can include context probability model groups 1-5. Based on the prediction mode being an intra prediction mode, the context probability model group 1 can be used to determine a context probability model based on an intra context state tree for subsequent decoding. Based on the prediction mode being an inter prediction mode, the context probability model groups 2-5 are respectively used to determine a context probability model based on an inter context state tree one, an inter context state tree two, an inter context state tree three, an inter context state tree four, and their corresponding prediction values for subsequent decoding. In some embodiments, when the N is other values, the decoder can set the corresponding inter context state tree and the corresponding context probability model group according to the value of N, and determine a context probability model based on the corresponding inter context state tree and the corresponding context probability model group for subsequent decoding.

[0145] In some embodiments, the decoder can include one or more sets of context probability models, Set 1 - Set H, where H = 13. In some embodiments, H can be determined based on the number of bits of the position information in the vertex to be decoded. The decoder can include Set 1 - Set 13 of context probability models. Based on the prediction mode being an intra prediction mode, Set 1 of context probability models can be used to determine context probability models for subsequent decoding based on an intra context state tree. Based on the prediction mode being an inter prediction mode, when the context state tree is Inter Context State Tree One and the prediction value is no prediction, Set 2 of context probability models can be used to determine context probability models for subsequent decoding. When the context state tree is Inter Context State Tree One and the prediction value is prediction 0, Set 3 of context probability models can be used to determine context probability models for subsequent decoding. When the context state tree is Inter Context State Tree One and the prediction value is prediction 1, Set 4 of context probability models can be used to determine context probability models for subsequent decoding. When the context state tree is Inter Context State Tree Two, Three, Four, Set 5 - Set 13 of context probability models can be used to determine context probability models for subsequent decoding in the order of Inter Context State Tree One. In some embodiments, when N is other values, then the decoder can set the corresponding inter context state tree and the corresponding set of context probability models according to the value of N, and determine context probability models for subsequent decoding based on the corresponding inter context state tree and the corresponding set of context probability models.

[0146] In some embodiments, when the prediction value determined by the decoder is in the above five cases, based on the context state tree being inter context state tree one, case 1 above corresponds to context probability model group 2, i.e. when the prediction value is not predicted, the inter context state tree one corresponds to context probability model group 2 in the decoder; case 2 above corresponds to context probability model group 3 in the decoder, i.e. when the prediction value is 0 before updating and not predicted after updating, the inter context state tree one corresponds to context probability model group 3 in the decoder; case 3 above corresponds to context probability model group 4 in the decoder, i.e. when the prediction value is 1 before updating and not predicted after updating, the inter context state tree one corresponds to context probability model group 4 in the decoder; case 4 above corresponds to context probability model group 3 in the decoder, i.e. when the prediction value is 0, the inter context state tree one corresponds to context probability model group 3 in the decoder; case 5 above corresponds to context probability model group 4 in the decoder, i.e. when the prediction value is 1, the inter context state tree one corresponds to context probability model group 4 in the decoder. When the context state tree is inter context state tree two, three, four, context probability model group 5-context probability model group 13 can be inferred in turn for binary decoding according to the case of inter context state tree one.

[0147] In some embodiments, each of the context probability model groups includes one or more context probability models. In some embodiments, after determining the corresponding context probability model group, the context probability model group determines the corresponding context probability model index based on the determined context state tree, where the context probability model index can indicate a context probability model i in the context probability model group. In some embodiments, based on the context state tree, the probability model of the context probability model i indicated by the decoder index can be determined.

[0148] In 1408, the decoder decodes the to-be-decoded symbol based on the context probability model.

[0149] In some embodiments, the decoding method can not only be used to decode the first bit in the position information of the to-be-decoded vertex, but also can be applied to decode any bit in the position information of the to-be-decoded vertex.

[0150] Figure 15 An exemplary block diagram of a hardware structure 1500 that can be used to perform the encoding method and the decoding method in some embodiments of the present disclosure is shown. As shown, the hardware structure 1500 can include any suitable components that can be used to perform the encoding method and the decoding method. Figure 15 As shown, the hardware structure 1500 can include any suitable components that can be used to perform the encoding method and the decoding method.

[0151] In some embodiments, the processor 1501 can be configured to perform the system, the G-PCC encoder, the G-PCC decoder, the encoding method and the decoding method described in combination with Figures 1-14 the memory 1502 can be configured to store instructions, programs, and / or codes of the system, the G-PCC encoder, the G-PCC decoder, the encoding method and the decoding method described in combination with Figures 1-14 the communication interface 1503 can be configured to enable the hardware structure 1500 to communicate with other devices or can be configured to enable the communication between the internal modules of the system, the G-PCC encoder, the G-PCC decoder described in combination with Figures 1-11 the system, the G-PCC encoder, the G-PCC decoder.

[0152] In some embodiments, the hardware structure 1500 can include the processor 1501. The processor 1501 can include one or any combination of a microcontroller, a reduced instruction set computer (RISC), an application specific integrated circuit (ASIC), an application specific instruction set processor (ASIP), a central processing unit (CPU), a graphics processing unit (GPU), a physical processing unit (PPU), a microprocessor unit, a digital signal processor (DSP), and a field programmable gate array (FPGA), or other circuits or processors capable of executing computer program instructions.

[0153] In some embodiments, the hardware structure 1500 can include a memory 1502. The memory 1502 can be a device that uses electrical, optical, or other forms of storage to store information. For example, the memory 1502 can include one or more combinations of various types of memory, such as random access memory (RAM), read only memory (ROM), and the like. The RAM can include one or more combinations of a variety of types of RAM, such as static RAM (SRAM), dynamic RAM (DRAM), thyristor RAM (T-RAM), zero-capacitor RAM (Z-RAM), and the like. The ROM can include one or more combinations of a variety of types of ROM, such as bubble memory, magnetic core memory, thin-film memory, magnetic drum memory, magnetic tape, early non-volatile memory (NVRAM), phase change memory, magnetoresistive RAM, ferroelectric RAM, nonvolatile SRAM, flash memory, electrically erasable programmable ROM (EEPROM), programmable ROM (PROM), masked ROM, floating-gate ROM, nanoscopic memory, racetrack memory, variable resistance memory, programmable metallization cell, and the like. In some embodiments, the memory 1502 can be a device that uses magnetic energy to store information, such as a hard disk, floppy disk, magnetic tape, magnetic core memory, bubble memory, USB flash drive, and the like. In some embodiments, the memory 1502 can be a device that uses optical energy to store information, such as a CD or DVD, and the like. In some embodiments, the memory 1502 can be a device that uses magneto-optical energy to store information, such as a magneto-optical disk, and the like. In some embodiments, the memory 1502 can be accessed in one or more combinations of random access, serial access, read only, and the like. In some embodiments, the memory 1502 can be non-persistent memory or can be persistent memory. In some embodiments, the memory 1502 can be local or can be remote (e.g., the memory 1502 can be on a cloud server).

[0154] In some embodiments, the hardware interface can include a communication interface 1503. The communication interface 1503 can be a wired network interface or a wireless network interface. The communication interface 1503 can include one or more combinations of a metal cable, an optical fiber, a hybrid cable, a connection circuit, or other wired network interfaces. The communication interface 1503 can include one or more combinations of a wireless local area network (WLAN) interface, a local area network (LAN) interface, a wide area network (WAN) interface, a Bluetooth interface, a ZigBee interface, and a near field communication (NFC) interface. In some embodiments, the communication interface 1503 can also be a wireless transmitter / receiver, a modem, a wired network component (e.g., an Ethernet card), a wireless communication component operating according to any of the various IEEE 802.11 standards, or other physical components. The communication interface 1503 can be configured to transmit encoded data or decoded data according to a cellular communication standard, such as 4G, 4G-LTE, 5G, or the like. In some embodiments, the communication interface 1503 can also be configured to transmit encoded data or decoded data according to other wireless standards, such as IEEE 802.11 specifications, IEEE 802.15 specifications (e.g., ZigBee™), Bluetooth™ standards, or the like.

[0155] In some embodiments, some embodiments of the present disclosure also provide a non-volatile storage medium that can be used to store an executable combination Figures 1-14 The computer program of the system, G-PCC encoder, G-PCC decoder, encoding method and decoding method can be used by the processor to execute and / or implement the combination Figures 1-14 The system, G-PCC encoder, G-PCC decoder, encoding method and decoding method.

[0156] In some embodiments, some embodiments of the present disclosure also provide a chip that can include a memory that can be used to store an executable combination Figures 1-14 The computer program of the system, G-PCC encoder, G-PCC decoder, encoding method and decoding method. In some embodiments, the chip can include a processor. When the computer program is called by the processor, the processor can be used to execute and / or implement the combination Figures 1-14 The system, G-PCC encoder, G-PCC decoder, encoding method and decoding method.

[0157] For the sake of brevity, the methods of the present disclosure are often described in terms of sequential actions. However, the actions as described are not necessarily performed in the order described. Certain actions can be performed in a different order or concurrently with other actions, unless expressly stated otherwise. Moreover, any specific examples of sequences of actions are illustrative only and are not meant to limit or restrict the scope of the methods as described in the present disclosure. Additionally, the methods of the present disclosure can be represented as a series of interrelated states via a state diagram or event diagram.

[0158] The present disclosure has been presented with reference to numerous details of certain embodiments. It is not intended to limit the present disclosure to the described embodiments. Additional modifications will readily occur to those skilled in the art. Those skilled in the art will understand that many of the details specified in the description and in the claims are susceptible of alternative arrangements and mea s.

[0159] The terms "first", "second", "third", "fourth" and the like in the description and in the claims, if any, are used for distinguishing between similar elements and not necessarily for describing a sequential or chronological order. It is to be understood that the terms so used are interchangeable under appropriate circumstances such that the descriptive terms "first", "second", "third", "fourth", and the like, wherein and when used, can be utilized perceptually and are not

[0160] While additional modifications and changes can occur to those skilled in the art upon reading the preceding description, it is understood that the spirit and scope of the disclosure are not limited to the particular orders of acts described. Accordingly, any and all modifications, variations or equivalent arrangements that fall within the scope of the present disclosure should be considered as within the scope of the claims described herein.

Claims

1. A method of inter prediction based encoding, characterized in that, The method comprises: determining a prediction mode of a to-be-encoded symbol, wherein the prediction mode comprises an intra prediction mode and an inter prediction mode; determining an inter context state tree of the to-be-encoded symbol based on the prediction mode being the inter prediction mode; determining a prediction value of the to-be-encoded symbol for the inter context state tree; determining a context probability model group corresponding to the to-be-encoded symbol based on the inter context state tree and the prediction value, wherein different inter context state trees and different prediction values correspond to different context probability model groups; determining a context probability model based on the context probability model group corresponding to the to-be-encoded symbol; encoding the to-be-encoded symbol based on the context probability model.

2. The method of claim 1, wherein, The to-be-encoded symbol is position information of a to-be-encoded vertex, and the position information is represented by N bits, wherein N is an integer greater than or equal to 1, and each bit in the position information divides a position interval determined by a previous bit into two intervals, i.e., a left interval and a right interval.

3. The method of claim 1, wherein, The method comprises: determining a prediction mode based on a first syntax element and uncompensated reference vertex information, wherein the first syntax element is used to indicate whether inter prediction is enabled, and the uncompensated reference vertex information is used to indicate whether there is an uncompensated reference vertex.

4. The method of claim 3, wherein, The method comprises: determining the prediction mode as an intra prediction mode based on the first syntax element indicating that inter prediction is not enabled or the uncompensated reference vertex information indicating that there is no uncompensated reference vertex; determining the prediction mode based on first quantity information and second quantity information based on the first syntax element indicating that inter prediction is enabled and the uncompensated reference vertex information indicating that there is an uncompensated reference vertex, wherein the first quantity information indicates a number of neighbor uncompensated reference vertex prediction neighbor vertices that are not predicted accurately when a first bit is predicted, and the second quantity information indicates a number of neighbor compensated reference vertex prediction neighbor vertices that are not predicted accurately when a second bit is predicted.

5. The method of claim 4, wherein, The method comprises: determining the prediction mode as an inter prediction mode based on the first quantity information being less than or equal to a first threshold value or the second quantity information being less than or equal to a second threshold value; determining the prediction mode as an intra prediction mode based on the first quantity information being greater than the first threshold value and the second quantity information being greater than the second threshold value.

6. The method of claim 1, wherein, The method comprises: determining the context state tree as an intra context state tree based on the prediction mode being an intra prediction mode.

7. The method of claim 2, wherein, The method comprises: determining the inter context state tree based on first indication information, wherein the first indication information indicates position information of a compensated reference vertex.

8. The method of claim 7, wherein, The inter context state tree comprises: an inter context state tree one, an inter context state tree two, an inter context state tree three, and an inter context state tree four; and values of the first indication information comprise 0, 1, 2, 3, and 4.

9. The method of claim 8, wherein, The method comprises: determining, based on the first indication information having a value of 0, that the prediction mode is an intra prediction mode, and that the inter context state tree is an intra context state tree; determining, based on the first indication information having a value of 1, that the inter context is the inter context state tree one; determining, based on the first indication information having a value of 2, that the inter context is the inter context state tree two; determining, based on the first indication information having a value of 3, that the inter context is the inter context state tree three; determining, based on the first indication information having a value of 4, that the inter context is the inter context state tree four.

10. The method of claim 9, wherein, The determining the prediction value of the to-be-encoded symbol comprises: determining the prediction value based on third quantity information and uncompensated reference vertex information, wherein the third quantity information indicates a number of times of inaccurate prediction when a second bit in neighbor uncompensated reference vertex prediction neighbor vertex information is predicted.

11. The method of claim 10, wherein, The determining the prediction value based on the third quantity information and the uncompensated reference vertex information comprises: determining, based on the third quantity information indicating that the number of times of inaccurate prediction when the second bit in the neighbor uncompensated reference vertex prediction neighbor vertex information is predicted is greater than a first threshold value, or the uncompensated reference vertex information indicating that there is no uncompensated reference vertex, that the prediction value is no prediction; determining, based on the third quantity information indicating that the number of times of inaccurate prediction when the second bit in the neighbor uncompensated reference vertex prediction neighbor vertex information is predicted is less than or equal to the first threshold value, and the uncompensated reference vertex information indicating that there is an uncompensated reference vertex, the prediction value based on a first bit in position information of the uncompensated reference vertex.

12. The method of claim 11, wherein, The determining the prediction value based on the first bit in the position information of the uncompensated reference vertex comprises: determining, based on the first bit in the position information of the uncompensated reference vertex being 0, that the prediction value is 0; determining, based on the first bit in the position information of the uncompensated reference vertex being 1, that the prediction value is 1.

13. The method of claim 12, wherein, The context probability model groups comprise context probability model group 1-context probability model group 13; wherein the determining the context probability model group corresponding to the to-be-encoded symbol based on the inter context state tree and the prediction value comprises: determining, based on the prediction mode being intra prediction, that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 1; determining, based on the prediction mode being inter prediction, the inter context state tree being the inter context state tree one, and the prediction value being no prediction, that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 2; determining, based on the prediction mode being inter prediction, the inter context state tree being the inter context state tree one, and the prediction value being 0, that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 3; determining, based on the prediction mode being inter prediction, the inter context state tree being the inter context state tree one, and the prediction value being 1, that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 4; based on the prediction mode being inter prediction, the inter context state tree being inter context state tree two, and the prediction value being no prediction, determining that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 5; based on the prediction mode being inter prediction, the inter context state tree being inter context state tree two, and the prediction value being 0, determining that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 6; based on the prediction mode being inter prediction, the inter context state tree being inter context state tree two, and the prediction value being 1, determining that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 7; based on the prediction mode being inter prediction, the inter context state tree being inter context state tree three, and the prediction value being no prediction, determining that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 8; based on the prediction mode being inter prediction, the inter context state tree being inter context state tree three, and the prediction value being 0, determining that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 9; based on the prediction mode being inter prediction, the inter context state tree being inter context state tree three, and the prediction value being 1, determining that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 10; based on the prediction mode being inter prediction, the inter context state tree being inter context state tree four, and the prediction value being no prediction, determining that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 11; based on the prediction mode being inter prediction, the inter context state tree being inter context state tree four, and the prediction value being 0, determining that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 12; based on the prediction mode being inter prediction, the inter context state tree being inter context state tree four, and the prediction value being 1, determining that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 13.

14. The method of claim 12, wherein, The method comprises: based on the prediction value being 0 or the prediction value being 1, updating the prediction value based on a ratio of fourth quantity information and fifth quantity information, wherein the fourth quantity information indicates a cumulative sum of first bits in position information of encoded vertices determined as predicted, and the fifth quantity information indicates a cumulative sum of first bits in position information of decoded vertices.

15. The method of claim 14, wherein, The updating of the prediction value based on the ratio of the fourth quantity information and the fifth quantity information comprises: based on the ratio of the fourth quantity information and the fifth quantity information being less than or equal to a preset threshold, updating the prediction value to be no prediction; based on the ratio of the fourth quantity information and the fifth quantity information being greater than the preset threshold, not updating the prediction value.

16. The method of claim 15, wherein, The prediction value comprises any one of the following cases: no prediction; the prediction value before updating is 0, and the prediction value after updating is no prediction; the prediction value before updating is 1, and the prediction value after updating is no prediction; the prediction value is 0; the prediction value is 1.

17. The method of claim 16, wherein, The context probability model groups comprise context probability model group 1-context probability model group 13; wherein the determining the context probability model group corresponding to the to-be-encoded symbol based on the inter-frame context state tree and the prediction value comprises: determining the context probability model group corresponding to the to-be-encoded symbol as the context probability model group 1 based on the prediction mode being intra prediction; determining the context probability model group corresponding to the to-be-encoded symbol as the context probability model group 2 based on the prediction mode being inter prediction, the inter-frame context state tree being the inter-frame context state tree 1, and the prediction value being no prediction; determining the context probability model group corresponding to the to-be-encoded symbol as the context probability model group 3 based on the prediction mode being inter prediction, the inter-frame context state tree being the inter-frame context state tree 1, and the prediction value being that the prediction value before updating is 0 and the prediction value after updating is no prediction; determining the context probability model group corresponding to the to-be-encoded symbol as the context probability model group 4 based on the prediction mode being inter prediction, the inter-frame context state tree being the inter-frame context state tree 1, and the prediction value being that the prediction value before updating is 1 and the prediction value after updating is no prediction; determining the context probability model group corresponding to the to-be-encoded symbol as the context probability model group 3 based on the prediction mode being inter prediction, the inter-frame context state tree being the inter-frame context state tree 1, and the prediction value being 0; determining the context probability model group corresponding to the to-be-encoded symbol as the context probability model group 4 based on the prediction mode being inter prediction, the inter-frame context state tree being the inter-frame context state tree 1, and the prediction value being 1; determining the context probability model group corresponding to the to-be-encoded symbol as the context probability model group 5 based on the prediction mode being inter prediction, the inter-frame context state tree being the inter-frame context state tree 2, and the prediction value being no prediction; determining the context probability model group corresponding to the to-be-encoded symbol as the context probability model group 6 based on the prediction mode being inter prediction, the inter-frame context state tree being the inter-frame context state tree 2, and the prediction value being that the prediction value before updating is 0 and the prediction value after updating is no prediction; determining the context probability model group corresponding to the to-be-encoded symbol as the context probability model group 7 based on the prediction mode being inter prediction, the inter-frame context state tree being the inter-frame context state tree 2, and the prediction value being that the prediction value before updating is 1 and the prediction value after updating is no prediction; determining the context probability model group corresponding to the to-be-encoded symbol as the context probability model group 6 based on the prediction mode being inter prediction, the inter-frame context state tree being the inter-frame context state tree 2, and the prediction value being 0; determining the context probability model group corresponding to the to-be-encoded symbol as the context probability model group 7 based on the prediction mode being inter prediction, the inter-frame context state tree being the inter-frame context state tree 2, and the prediction value being 1; based on the prediction mode being inter prediction, the inter context state tree being inter context state tree three, and the prediction value being no prediction, determining that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 8; based on the prediction mode being inter prediction, the inter context state tree being inter context state tree three, and the prediction value being no prediction, determining that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 8; based on the prediction mode being inter prediction, the inter context state tree being inter context state tree three, and the prediction value being no prediction, determining that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 8; based on the prediction mode being inter prediction, the inter context state tree being inter context state tree three, and the prediction value being no prediction, determining that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 8; based on the prediction mode being inter prediction, the inter context state tree being inter context state tree three, and the prediction value being no prediction, determining that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 8; based on the prediction mode being inter prediction, the inter context state tree being inter context state tree three, and the prediction value being no prediction, determining that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 8; based on the prediction mode being inter prediction, the inter context state tree being inter context state tree three, and the prediction value being no prediction, determining that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 8; based on the prediction mode being inter prediction, the inter context state tree being inter context state tree three, and the prediction value being no prediction, determining that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 8; based on the prediction mode being inter prediction, the inter context state tree being inter context state tree three, and the prediction value being no prediction, determining that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 8; based on the prediction mode being inter prediction, the inter context state tree being inter context state tree three, and the prediction value being no prediction, determining that the context probability model group corresponding to the to-be-encoded symbol is context probability model group 8; 18. The method of any one of claims 1-13, wherein, the inter context state tree comprises primary information and secondary information, and the secondary information comprises 15-bit information.

19. The method of any one of claims 1-12 or 14-17, wherein, the inter context state tree comprises primary information and secondary information, and the secondary information comprises 16-bit information.

20. The method of claim 1, wherein, the determining of the context probability model based on the context probability model group corresponding to the to-be-encoded symbol comprises: determining a context probability model index based on the inter-frame context state tree and the context probability model group, the context probability model group comprising one or more context probability models, the context probability model index indicating one context probability model in the context probability model group; determining the context probability model indicated by the context probability model index based on the inter-frame context state tree.

21. The method of any one of claims 1-20, wherein, The to-be-encoded symbol is a first bit in the position information.

22. An inter prediction based encoder, comprising: comprising: a prediction mode determining module, configured to determine a prediction mode of a to-be-encoded symbol, wherein the prediction mode comprises an intra-frame prediction mode and an inter-frame prediction mode; a context state tree determining module, configured to determine an inter-frame context state tree of the to-be-encoded symbol based on the prediction mode being the inter-frame prediction mode; a prediction module, configured to determine a prediction value of the to-be-encoded symbol for the inter-frame context state tree; a context probability model group, configured to determine a context probability model group corresponding to the to-be-encoded symbol based on the inter-frame context state tree and the prediction value, and determine a context probability model based on the context probability model group corresponding to the to-be-encoded symbol, wherein different inter-frame context state trees and different prediction values correspond to different context probability model groups; an entropy encoding module, configured to encode the to-be-encoded symbol based on the context probability model.

23. The encoder of claim 22, wherein, The to-be-encoded symbol is a first bit in the position information.

24. An apparatus, comprising: a memory configured to store a computer program; a processor configured to invoke the computer program to perform the encoding method according to any one of claims 1-21.

25. A non-volatile computer storage medium, the non-volatile computer storage medium storing a computer program, when the computer program is invoked by a processor, causing the processor to implement the encoding method according to any one of claims 1-21.

26. A chip, comprising: a memory configured to store a computer program; a processor configured to invoke the computer program to perform the encoding method according to any one of claims 1-21.