Transform coefficient encoding method, transform coefficient decoding method and terminal

By directly using the context probability model to encode the DC coefficient and AC coefficient in point cloud coding, the problem of excessive number of bits in the bit stream generated by point cloud coding is solved, and the coding efficiency is improved.

CN118338007BActive Publication Date: 2025-09-19VIVO MOBILE COMM CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310040548.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-01-11
Publication Date
2025-09-19
Estimated Expiration
2043-01-11

AI Technical Summary

Technical Problem

In the existing technology, the code stream generated by point cloud coding has a large number of bits, resulting in low coding efficiency.

Method used

By obtaining the transform coefficients corresponding to the point cloud, the DC coefficient and AC coefficient are directly encoded using the context probability model, which reduces the number of bits for encoding the transform coefficients.

Benefits of technology

It effectively reduces the number of bits in the code stream and improves coding efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118338007B_ABST
    Figure CN118338007B_ABST
Patent Text Reader

Abstract

The embodiment of the present application provides a transform coefficient encoding method, a transform coefficient decoding method and a terminal, which belong to the field of coding and decoding technology. The above-mentioned transform coefficient encoding method includes: obtaining the transform coefficient corresponding to the point cloud; the transform coefficient includes a direct current (DC) coefficient and at least two alternating current (AC) coefficients; encoding the DC coefficient according to the first order corresponding to the DC coefficient and the context probability model corresponding to each component of the DC coefficient; encoding each AC coefficient according to the second order corresponding to each AC coefficient and the context probability model corresponding to each component of each AC coefficient; the second order is determined based on the first order and the level corresponding to the transform coefficient; based on the encoding result of the DC coefficient and the encoding result of each AC coefficient, generating a target code stream.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application belongs to the field of coding and decoding technology, and specifically relates to a transform coefficient encoding method, a transform coefficient decoding method and a terminal. Background Art

[0002] A point cloud is a set of irregularly distributed discrete points in space that represent the spatial structure and surface properties of a three-dimensional object or scene. The point cloud encoding process involves encoding attribute information. After encoding the point cloud attribute information to obtain transform coefficients, these coefficients are quantized and then transformed into a bitstream using transform coefficient encoding.

[0003] In related technologies, a large number of context probability models are required to encode transform coefficients, which results in a large number of bits in the code stream generated by the encoding. Summary of the Invention

[0004] The embodiments of the present application provide a transform coefficient encoding method, a transform coefficient decoding method, and a terminal, which can solve the problem of a large number of bits in a code stream generated by encoding.

[0005] In a first aspect, a transform coefficient encoding method is provided, comprising:

[0006] The encoding end obtains the transformation coefficients corresponding to the point cloud; the transformation coefficients include a direct current (DC) coefficient and at least two alternating current (AC) coefficients;

[0007] The encoding end encodes the DC coefficient according to a first order corresponding to the DC coefficient and a context probability model corresponding to each component of the DC coefficient;

[0008] The encoding end encodes each AC coefficient according to a second order corresponding to each AC coefficient and a context probability model corresponding to each component of each AC coefficient, wherein the second order is determined based on the first order and the level corresponding to the transform coefficient;

[0009] The encoding end generates a target code stream based on the encoding result of the DC coefficient and the encoding result of each AC coefficient.

[0010] In a second aspect, a transform coefficient decoding method is provided, comprising:

[0011] The decoding end obtains a target bit stream; the target bit stream includes the encoding results of the DC coefficient in the transform coefficient and the encoding results of at least two AC coefficients in the transform coefficient;

[0012] The decoding end decodes the encoding result of the DC coefficient according to the first order corresponding to the DC coefficient and the context probability model corresponding to each component of the DC coefficient to obtain the DC coefficient;

[0013] The decoding end decodes the encoding result of each AC coefficient according to a second order corresponding to each AC coefficient and a context probability model corresponding to each component of each AC coefficient to obtain at least two AC coefficients; the second order is determined based on the first order and the level corresponding to the transform coefficient;

[0014] The decoding end determines a transform coefficient according to the DC coefficient and the at least two AC coefficients.

[0015] According to a third aspect, a transform coefficient encoding apparatus is provided, comprising:

[0016] An acquisition module is used to obtain transformation coefficients corresponding to the point cloud; the transformation coefficients include a direct current (DC) coefficient and at least two alternating current (AC) coefficients;

[0017] A first encoding module, configured to encode the DC coefficient according to a first order corresponding to the DC coefficient and a context probability model corresponding to each component of the DC coefficient;

[0018] a second encoding module, configured to encode each AC coefficient according to a second order corresponding to each AC coefficient and a context probability model corresponding to each component of each AC coefficient, wherein the second order is determined based on the first order and the level corresponding to the transform coefficient;

[0019] A generating module is used to generate a target code stream based on the encoding result of the DC coefficient and the encoding result of each AC coefficient.

[0020] In a fourth aspect, a transform coefficient decoding apparatus is provided, comprising:

[0021] A first acquisition module is configured to acquire a target bitstream, wherein the target bitstream includes an encoding result of a DC coefficient in a transform coefficient and an encoding result of at least two AC coefficients in the transform coefficient;

[0022] A first decoding module, configured to decode an encoding result of the DC coefficient according to a first order corresponding to the DC coefficient and a context probability model corresponding to each component of the DC coefficient, to obtain the DC coefficient;

[0023] a second decoding module, configured to decode an encoding result of each AC coefficient according to a second order corresponding to each AC coefficient and a context probability model corresponding to each component of each AC coefficient, to obtain at least two AC coefficients; wherein the second order is determined based on the first order and the level corresponding to the transform coefficient;

[0024] The first determination module is configured to determine a transform coefficient according to the DC coefficient and the at least two AC coefficients.

[0025] In a fifth aspect, a terminal is provided, which includes a processor and a memory, wherein the memory stores a program or instruction that can be run on the processor, and when the program or instruction is executed by the processor, the steps of the method described in the first aspect are implemented, or the steps of the method described in the second aspect are implemented.

[0026] In a sixth aspect, a readable storage medium is provided, on which a program or instruction is stored. When the program or instruction is executed by a processor, the steps of the method described in the first aspect are implemented, or the steps of the method described in the second aspect are implemented.

[0027] In the seventh aspect, a chip is provided, comprising a processor and a communication interface, wherein the communication interface is coupled to the processor, and the processor is used to run programs or instructions to implement the method described in the first aspect, or to implement the method described in the second aspect.

[0028] In an eighth aspect, a computer program / program product is provided, wherein the computer program / program product is stored in a storage medium, and the computer program / program product is executed by at least one processor to implement the steps of the method described in the first aspect, or to implement the steps of the method described in the second aspect.

[0029] In an embodiment of the present application, the transformation coefficients corresponding to the point cloud are obtained; the transformation coefficients include a direct current (DC) coefficient and at least two alternating current (AC) coefficients; the DC coefficient is encoded according to the first order corresponding to the DC coefficient and the context probability model corresponding to each component of the DC coefficient; each AC coefficient is encoded according to the second order corresponding to each AC coefficient and the context probability model corresponding to each component of each AC coefficient; the second order is determined based on the first order and the level corresponding to the transformation coefficient; based on the encoding result of the DC coefficient and the encoding result of each AC coefficient, a target bitstream is generated. In the related art, it is necessary to encode the transformation coefficients after encoding them according to the numerical size of the transformation coefficients through the context probability model; compared to the related art, the transformation coefficient encoding method provided in the embodiment of the present application, after obtaining the transformation coefficients, directly encodes the DC coefficients and AC coefficients included in the transformation coefficients through the context probability model, so that the transformation coefficient encoding of the transformation coefficients can be achieved through fewer context probability models, thereby reducing the number of bits of the bitstream. BRIEF DESCRIPTION OF THE DRAWINGS

[0030] Figure 1 This is a partial framework diagram of the G-PCC point cloud encoding device;

[0031] Figure 2 This is a partial framework diagram of the G-PCC point cloud decoding device;

[0032] Figure 3 1 is a flow chart of a transform coefficient encoding method provided in an embodiment of the present application;

[0033] Figure 4 1 is a flow chart of a transform coefficient encoding method provided in an embodiment of the present application;

[0034] Figure 5 is a structural diagram of a transform coefficient encoding device provided in an embodiment of the present application;

[0035] Figure 6 is a structural diagram of a transform coefficient decoding device provided in an embodiment of the present application;

[0036] Figure 7 is a structural diagram of a communication device provided in an embodiment of the present application;

[0037] Figure 8 This is a schematic diagram of the hardware structure of the terminal provided in an embodiment of the present application. DETAILED DESCRIPTION

[0038] The following will be combined with the accompanying drawings in the embodiments of this application to clearly describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field are within the scope of protection of this application.

[0039] The terms "first," "second," and the like in the specification and claims of this application are used to distinguish similar objects, and are not used to describe a specific order or precedence. It should be understood that the terms used in this manner are interchangeable where appropriate, so that the embodiments of this application can be implemented in an order other than that illustrated or described herein, and that the objects distinguished by "first" and "second" are generally of the same type, and do not limit the number of objects. For example, the first object can be one or more. In addition, the term "and / or" in the specification and claims refers to at least one of the connected objects, and the character " / " generally indicates that the objects connected are in an "or" relationship.

[0040] The list construction device corresponding to the list construction method in the embodiment of the present application can be a terminal, which can also be called a terminal device or a user terminal (User Equipment, UE). The terminal can be a mobile phone, a tablet computer (Tablet Personal Computer), a laptop computer (Laptop Computer) or a notebook computer, a personal digital assistant (Personal Digital Assistant, PDA), a handheld computer, a netbook, an ultra-mobile personal computer (ULPC), a mobile Internet device (Mobile Internet Device, MID), an augmented reality (AR) / virtual reality (VR) device, a robot, a wearable device (Wearable Device) or a vehicle-mounted device (VUE), a pedestrian terminal (PUE), a smart home (a home appliance with wireless communication function, such as a refrigerator, a television, a washing machine or furniture, etc.), a game console, a personal computer (personal Terminal devices include: computers, personal computers, ATMs, or self-service machines; wearable devices include: smart watches, smart bracelets, smart headphones, smart glasses, smart jewelry (smart bracelets, smart bracelets, smart rings, smart necklaces, smart anklets, smart anklets, etc.), smart wristbands, smart clothing, etc. It should be noted that the specific type of terminal is not limited in the embodiments of this application.

[0041] For ease of understanding, some of the contents involved in the embodiments of this application are described below:

[0042] See also Figure 1 ,like Figure 1 As shown, currently, in digital audio and video codec technical standards, a geometry-based point cloud compression (G-PCC) point cloud coding device can be used to encode the attribute information of a point cloud. Specifically, the attribute information of the point cloud can be color-converted and recolored. Then, based on the reconstructed geometric information, a region-adaptive transformation based on upsampling prediction or a lifting transformation based on hierarchical structure division can be performed on the recolored attribute information to obtain transform coefficients. The transform coefficients are then quantized to obtain quantized coefficients. Finally, the quantized coefficients are arithmetically coded to obtain an attribute bitstream.

[0043] Among them, the operation steps of the above-mentioned region adaptive transformation based on upsampling prediction include: constructing a transformation tree structure of the point cloud; then, performing upsampling prediction and region adaptive transformation (RAHT) layer by layer from the root node of the transformation tree structure. If the current node is a root node, the attribute information of the node is directly RAHT transformed to obtain the DC coefficient and AC coefficient; if the current node is not a root node, whether to predict the current node is determined based on the grandparent node and parent node of the current node. If the current node needs to be predicted, the attribute information of the current node is predicted to obtain the attribute prediction value, and then the attribute prediction value and the original attribute value of the current node are RAHT transformed respectively to calculate the AC coefficient residual; if the current node does not need to be predicted, the original attribute value of the current node is directly RAHT transformed to obtain the AC coefficient.

[0044] The operation steps of the hierarchical structure division-based lifting transformation include: first, dividing the point cloud into levels of detail (LoD) to establish a hierarchical structure of the point cloud;

[0045] Then, the nodes at the bottom level and the nodes at the same level as the current node are used as reference points. The current node searches within the reference points and selects multiple nearest reference points as prediction reference points. The reconstructed attribute values ​​of these multiple prediction reference points are used for linear interpolation prediction; the predicted values ​​are lifted and transformed.

[0046] It should be understood that the above-mentioned arithmetic coding includes zero-run coding and transform coefficient coding. First, the quantized transform coefficients are subjected to zero-run coding, and then the transform coefficients are subjected to transform coefficient coding to generate a bitstream. The following briefly describes the implementation process of zero-run coding: (1) The context probability model 1 is used to determine whether the run value of the transform coefficient is 0. If it is 0, a bit of 0 is encoded and the current coding ends; if it is not 0, a bit of 1 is encoded and the following judgment is continued.

[0047] (2) Determine whether the run value of the transform coefficient is 1 through context probability model 2. If it is 1, encode a 0 and end the current encoding; if it is not 1, encode a 1 and continue the following judgment.

[0048] (3) Use context probability model 3 to determine whether the run value of the transform coefficient is 2. If it is 2, encode a 0 and end the current encoding; if it is not 2, encode a 1 and continue with the following judgment.

[0049] (4) Update the stroke value, subtract 3 from the stroke value, and obtain the updated stroke value.

[0050] (5) Divide the run value by 2 to obtain the prefix value;

[0051] (6) Encode the prefix value into a unary code using the context probability model 4;

[0052] Determine whether the prefix value is 0. If it is 0, encode a 0 and use bypass encoding to encode the remainder of the run value taking 2; if it is not 0, encode a 1 and continue with the following judgment;

[0053] Determine whether the prefix value is 1. If it is 1, encode a 0 and use bypass encoding to encode the remainder of the run value taking 2; if it is not 1, encode a 1 and continue with the following judgment;

[0054] Determine whether the prefix value is 2. If it is 2, encode a 0 and use bypass encoding to encode the remainder of the run value taking 2; if it is not 2, encode a 1 and continue with the following judgment;

[0055] Determine whether the prefix value is 3. If it is 3, encode a 0 and use bypass encoding to encode the remainder of the run value of 2; if it is not 3, encode a 1 and end this encoding.

[0056] (7) Update the stroke value, subtract 8 from the stroke value, and obtain the updated stroke value.

[0057] (8) The updated run value is obtained by using the second-order exponential Golomb coding through the context probability model 5.

[0058] The following briefly describes the implementation process of transform coefficient coding:

[0059] (1) Determine whether the value of the transform coefficient is equal to 0 through the context probability model 1. If it is 0, end the encoding; if it is not 0, encode 1 and continue the following encoding;

[0060] (2) Determine whether the value of the transform coefficient is equal to 1 through the context probability model 1. If it is 1, end the encoding; if not, encode 1 and continue the following encoding;

[0061] (3) The prefix code of the code stream is generated by encoding through the first group of context probability models (including context probability model 3, context probability model 4 and context probability model 5), and the suffix code of the code stream is generated by encoding through the second group of context probability models (including context probability model 6, context probability model 7 and context probability model 8).

[0062] See also Figure 2 ,like Figure 2 As shown, currently, in the digital audio and video coding and decoding technical standards, a point cloud decoding device based on geometry point cloud compression (G-PCC) can be used to decode the attribute information of the point cloud. It should be understood that the implementation process of the above-mentioned G-PCC point cloud decoding device to decode the attribute information of the point cloud is the inverse process of its encoding process, and will not be repeated here. From the above content, it can be obtained that in the process of transform coefficient encoding, it is necessary to first encode the transform coefficient according to the numerical value through context probability model 1 and context probability model 2, and then encode the transform coefficient through two groups of context probability models. A larger number of context probability models are needed to encode the transform coefficient, which results in a larger number of bits in the code stream generated by the encoding.

[0063] To solve the above-mentioned technical problems, the present application provides a transform coefficient coding method, which can be applied to an encoding end. The transform coefficient coding method provided by the present application is described in detail below with reference to the accompanying drawings through some embodiments and their application scenarios.

[0064] See also Figure 3 , Figure 3 1 is a flow chart of a transform coefficient encoding method according to an embodiment of the present application. The transform coefficient encoding method provided in this embodiment includes the following steps:

[0065] S301: The encoder obtains the transformation coefficients corresponding to the point cloud.

[0066] It should be understood that the above-mentioned transform coefficients are the transform coefficients corresponding to the point cloud, that is, the quantized transform coefficients obtained by performing a regional adaptive transform based on upsampling prediction or a lifting transform based on hierarchical structure division on the attribute information of the point cloud. It should be noted that the attribute information includes color information, and the above-mentioned transform coefficients are obtained by performing a regional adaptive transform based on upsampling prediction or a lifting transform based on hierarchical structure division on the color information, that is, the above-mentioned transform coefficients include three color components, namely, the Y component, the U component, and the V component.

[0067] In this step, the encoding end obtains the transformation coefficients corresponding to the point cloud, wherein the above-mentioned transformation coefficients include a DC coefficient and at least two AC coefficients.

[0068] S302: The encoding end encodes the DC coefficient according to a first order corresponding to the DC coefficient and a context probability model corresponding to each component of the DC coefficient.

[0069] In this step, the DC coefficient may be encoded according to the first order and the context probability model corresponding to each component of the DC coefficient. For specific implementation methods, please refer to the subsequent embodiments.

[0070] S303: The encoding end encodes each AC coefficient according to the second order corresponding to each AC coefficient and the context probability model corresponding to each component of each AC coefficient.

[0071] In this step, the second order corresponding to the AC coefficient can be determined based on the first order and the level corresponding to the transform coefficient, and each AC coefficient can be encoded according to the context probability model corresponding to the above second order and each component of each AC coefficient. For specific implementation methods, please refer to the subsequent embodiments.

[0072] S304: The encoding end generates a target bitstream based on the encoding result of the DC coefficient and the encoding result of each AC coefficient.

[0073] After encoding the DC coefficient, the encoder generates a binary array, which can be understood as the encoding result of the DC coefficient. After encoding each AC coefficient, the encoder generates a binary array, which can be understood as the encoding result of the AC coefficient. In other words, the encoder generates the target bitstream by encoding the DC and AC coefficients in a single encoding process.

[0074] In the related art, it is necessary to encode the transform coefficients after encoding them according to the numerical size of the transform coefficients through a context probability model; compared with the related art, the transform coefficient encoding method provided in the embodiment of the present application directly encodes the DC coefficient and AC coefficient included in the transform coefficients through the context probability model after obtaining the transform coefficients, so that the transform coefficient encoding of the transform coefficients can be achieved through fewer context probability models, thereby reducing the number of bits of the code stream.

[0075] Optionally, before encoding the DC coefficient according to the first order corresponding to the DC coefficient and the context probability model corresponding to each component of the DC coefficient, the method further includes:

[0076] The first order corresponding to the DC coefficient is determined according to the Golomb order corresponding to at least part of the components of the DC coefficient.

[0077] In this embodiment, the first order corresponding to the DC coefficient may be determined according to the Golomb order corresponding to at least part of the components of the DC coefficient.

[0078] Optionally, after obtaining the Golomb orders corresponding to the Y component, the U component, and the V component of the DC coefficient, respectively, the Golomb order corresponding to any component is determined as the first order.

[0079] Optionally, determining the first order corresponding to the DC coefficient according to the Golomb order corresponding to at least part of the components of the DC coefficient includes:

[0080] Get the Golomb order corresponding to each component of the DC coefficient;

[0081] The Golomb order with the highest occurrence frequency among the Golomb orders corresponding to each component is determined as the first order corresponding to the DC coefficient.

[0082] In this embodiment, the Golomb orders corresponding to the Y, U, and V components of the DC coefficient can be obtained. For example, the logarithm of the Y component of the DC coefficient can be taken to obtain the Golomb order corresponding to the Y component. The Golomb order with the highest frequency among the three Golomb orders is then determined as the first order.

[0083] In one embodiment, if the Golomb order corresponding to each component has the same frequency of occurrence, the Golomb order corresponding to any component may be determined as the first order.

[0084] Optionally, determining the first order corresponding to the DC coefficient according to the Golomb order corresponding to at least part of the components of the DC coefficient includes:

[0085] Get the Golomb order corresponding to each component of the DC coefficient;

[0086] An average value of the Golomb orders corresponding to each component of the DC coefficient is rounded to obtain a first order corresponding to the DC coefficient.

[0087] In this embodiment, after obtaining the Golomb orders corresponding to the Y component, U component, and V component of the DC coefficient, respectively, the average value of the three Golomb orders is rounded to obtain the first order.

[0088] Optionally, the DC coefficient includes a Y component, a U component, and a V component, and encoding the DC coefficient according to a first order corresponding to the DC coefficient and a context probability model corresponding to each component of the DC coefficient includes:

[0089] Performing Golomb coding on the U component and the V component in the DC coefficient using a first set of context probability models;

[0090] The Y component in the DC coefficient is Golomb coded using a second set of context probability models.

[0091] In this embodiment, Golomb coding is performed on the U and V components of the DC coefficient using a first set of context probability models. The first set of context probability models includes multiple context probability models, and optionally, the first set of context probability models includes three context probability models. It should be understood that the coding order for Golomb coding the U and V components is the same as the first order.

[0092] In this embodiment, Golomb coding is performed on the Y component in the DC coefficient using a second set of context probability models. The second set of context probability models includes multiple context probability models, and optionally, the second set of context probability models includes three context probability models. It should be understood that the coding order of the Golomb coding of the Y component is the same as the first order.

[0093] It should be noted that the multiple context probability models included in the second group of context probability models are different from the multiple context probability models included in the first group of context probability models. The DC coefficient is encoded by the first group of context probability models to generate a prefix code corresponding to the DC coefficient, and the DC coefficient is encoded by the second group of context probability models to generate a suffix code corresponding to the DC coefficient.

[0094] In this embodiment, high-order exponential Golomb coding is performed on the DC coefficient according to the first order, the first set of context probability models, and the second set of context probability models, so as to reduce the number of bits of the code stream generated by the coding.

[0095] Optionally, before encoding each AC coefficient according to the second order corresponding to each AC coefficient and the context probability model corresponding to each component of each AC coefficient, the method further includes:

[0096] The difference between the first order and the first value is determined as the second order.

[0097] In this embodiment, the second order can be determined by the following formula:

[0098] color_ExpGolomb_order_AC=color_ExpGolomb_order_DC-(n+n*(level_max-level_cur) / 3)

[0099] Among them, color_ExpGolomb_order_AC represents the second order, color_ExpGolomb_order_DC represents the first order, n represents the first preset value, level_max represents the preset total level, and level_cur represents the level corresponding to the transformation coefficient.

[0100] Optionally, the DC coefficient includes a Y component, a U component, and a V component, and encoding the DC coefficient according to a first order corresponding to the DC coefficient and a context probability model corresponding to each component of the DC coefficient includes:

[0101] determining, according to the first order corresponding to the DC coefficient, a coding order for performing Golomb coding on each component of the DC coefficient;

[0102] Based on the coding order, each component of the DC coefficient is Golomb coded by a first set of context probability models and a second set of context probability models.

[0103] In this embodiment, after determining the first order corresponding to the DC coefficient, Golomb coding may be performed on each component of the DC coefficient using the first set of context probability models and the second set of context probability models.

[0104] One possible situation is that the first order corresponding to the DC coefficient is greater than the third preset value and less than or equal to the fourth preset value. In this case, the coding order of Golomb coding the Y component in the DC coefficient is the first order, and the coding order of Golomb coding the U component and the V component in the DC coefficient is 1.

[0105] Another possible situation is that the first order corresponding to the DC coefficient is greater than the fourth preset value. In this case, the coding order of Golomb coding for the U component and the V component in the DC coefficient is the difference between the first order and the fourth preset value, and the coding order of Golomb coding for the Y component in the DC coefficient is 1.

[0106] Another possible situation is that the first order corresponding to the DC coefficient is less than or equal to the third preset value. In this case, the coding order of Golomb coding performed on each component of the DC coefficient is 1.

[0107] Optionally, the third preset value is 1 and the fourth preset value is 2.

[0108] In this embodiment, high-order exponential Golomb coding is performed on at least part of the components of the DC coefficient according to the first order, the first set of context probability models and the second set of context probability models, so as to reduce the number of bits of the code stream generated by the coding.

[0109] Optionally, the AC coefficient includes a Y component, a U component, and a V component, and encoding each AC coefficient according to a second order corresponding to each AC coefficient and a context probability model corresponding to each component of each AC coefficient includes:

[0110] Determining, according to the second order corresponding to each AC coefficient, a coding order for performing Golomb coding on each component of the AC coefficient;

[0111] Based on the coding order, each component of the AC coefficient is Golomb coded by a first set of context probability models and a second set of context probability models.

[0112] As described above, the first group of context probability models includes multiple context probability models, optionally, the context probability models include 3 context probability models; the second group of context probability models includes multiple context probability models, optionally, the second group of context probability models includes 3 context probability models.

[0113] It should be noted that the multiple context probability models included in the second group of context probability models are different from the multiple context probability models included in the first group of context probability models. The AC coefficients are encoded by the first group of context probability models to generate prefix codes corresponding to the AC coefficients, and the AC coefficients are encoded by the second group of context probability models to generate suffix codes corresponding to the AC coefficients.

[0114] In this embodiment, after determining the second order corresponding to the AC coefficient, each component of the AC coefficient may be Golomb coded using the first set of context probability models and the second set of context probability models.

[0115] One possible situation is that the second order corresponding to the AC coefficient is greater than the third preset value and less than or equal to the fourth preset value. In this case, the coding order of Golomb coding the Y component in the AC coefficient is the second order, and the coding order of Golomb coding the U component and the V component in the AC coefficient is 1.

[0116] Another possible situation is that the second order corresponding to the AC coefficient is greater than the fourth preset value. In this case, the coding order of Golomb coding for the U and V components in the AC coefficient is the difference between the second order and the fourth preset value, and the coding order of Golomb coding for the Y component in the AC coefficient is 1.

[0117] Another possible situation is that the second order corresponding to the AC coefficient is less than or equal to the third preset value. In this case, the coding order of Golomb coding performed on each component of the AC coefficient is 1.

[0118] Optionally, the third preset value is 1 and the fourth preset value is 2.

[0119] In this embodiment, high-order exponential Golomb coding is performed on at least part of the components of the AC coefficients according to the second order, the first set of context probability models, and the second set of context probability models, so as to reduce the number of bits of the code stream generated by the coding.

[0120] Optionally, the AC coefficient includes a Y component, a U component, and a V component, and encoding each AC coefficient according to a second order corresponding to each AC coefficient and a context probability model corresponding to each component of each AC coefficient includes:

[0121] Performing Golomb coding on the U component and the V component in the AC coefficient using a first set of context probability models;

[0122] The Y component in the AC coefficient is Golomb coded using a second set of context probability models.

[0123] In this embodiment, the U component and the V component in the AC coefficient are Columbus encoded by the first set of context probability models, and the Y component in the AC coefficient is Columbus encoded by the second set of context probability models, wherein the coding order of the Columbus encoding of the AC coefficient is the same as the second order.

[0124] It should be noted that the multiple context probability models included in the second group of context probability models are different from the multiple context probability models included in the first group of context probability models. The AC coefficients are encoded by the first group of context probability models to generate prefix codes corresponding to the AC coefficients, and the AC coefficients are encoded by the second group of context probability models to generate suffix codes corresponding to the AC coefficients.

[0125] In this embodiment, high-order exponential Golomb coding is performed on the AC coefficients according to the second order, the first set of context probability models, and the second set of context probability models, so as to reduce the number of bits of the code stream generated by the coding.

[0126] Optionally, the initial probability of the context probability model is a preset probability value.

[0127] It should be understood that in related technologies, the initial probability of the context probability model is 0.5, that is, the number of bits required for the context probability model to encode 1 is the same as the number of bits required to encode 0, which makes the convergence speed of the arithmetic coding process slower and the coding efficiency lower.

[0128] In this embodiment, the user can customize the initial probability of the context probability model by modifying the relevant parameters of the encoder. In this way, the user can set the initial probability that conforms to the data distribution characteristics according to the data distribution law of the point cloud, thereby facilitating faster convergence of arithmetic coding and improving coding efficiency.

[0129] Optionally, the attribute information parameter set of the target code stream includes the first order.

[0130] Optionally, the first order may be represented by a parameter attr_golomb_num. In this embodiment, the parameter is input into the attribute information parameter set of the target bitstream, so that the decoding end can decode the transform coefficients according to the parameter.

[0131] For a more intuitive understanding of the technical effects of transform coefficient encoding provided in the embodiments of the present application, please refer to Table 1 and Table 2.

[0132] Table 1:

[0133] Y component U component V component Point cloud type 1 -0.1052% -0.1164% -0.1291% Point cloud type 2 -0.0938% -0.1126% -0.1188% Point cloud type 2 -0.0442% -0.0443% -0.0449% Point cloud type 4 -0.0823% -0.0645% -0.0825% Point cloud type 5 -0.0167% -0.0093% -0.0097%

[0134] Table 2:

[0135] Y component U component V component Point cloud type 1 -0.6487% -0.7946% -0.6480% Point cloud type 2 -0.5550% -0.5573% -0.4797% Point cloud type 2 -0.1397% -0.1586% -0.1443% Point cloud type 4 -0.0469% -0.0548% -0.0580% Point cloud type 5 -0.0260% -0.0179% -0.0171%

[0136] The values ​​in Table 1 and Table 2 are used to represent the bit rate ratio between the bit stream generated by the transform coefficient encoding provided by the embodiment of the present application and the bit stream generated using the related art when the peak signal-to-noise ratio is the same. It should be understood that the lower the value, the greater the bit rate reduction.

[0137] For example, "-0.1052%" in the second row and second column of Table 1 indicates that the bit rate of the Y component generated by the transform coefficient encoding provided by the embodiment of the present application is reduced by 0.1052% compared with the bit rate of the Y component generated using the related technology.

[0138] See also Figure 4 , Figure 4: is a flow chart of a transform coefficient decoding method provided by an embodiment of the present application. The transform coefficient decoding method provided by this embodiment includes the following steps:

[0139] S401: The decoding end obtains the target bitstream.

[0140] The target code stream includes the encoding results of the direct current (DC) coefficient in the transform coefficients and the encoding results of at least two alternating current (AC) coefficients in the transform coefficients.

[0141] S402: The decoding end decodes the encoding result of the DC coefficient according to the first order corresponding to the DC coefficient and the context probability model corresponding to each component of the DC coefficient to obtain the DC coefficient.

[0142] In this step, the decoding end may decode the encoding result of the DC coefficient according to the first order and the context probability model corresponding to each component of the DC coefficient.

[0143] S403: The decoding end decodes the encoding result of each AC coefficient according to the second order corresponding to each AC coefficient and the context probability model corresponding to each component of each AC coefficient to obtain at least two AC coefficients.

[0144] In this step, the decoding end can determine the second order based on the first order and the level corresponding to the transform coefficient, and decode the encoding result of each AC coefficient according to the context probability model corresponding to the second order and each component of each AC coefficient.

[0145] S404: The decoding end determines a transform coefficient according to the DC coefficient and the at least two AC coefficients.

[0146] It should be understood that the transform coefficient decoding method provided in this embodiment is the inverse process of the above-mentioned transform coefficient encoding method, and will not be repeated here.

[0147] Optionally, before decoding the encoding result of the DC coefficient according to the first order corresponding to the DC coefficient and the context probability model corresponding to each component of the DC coefficient, the method further includes:

[0148] The first order is obtained from a property information parameter set of the target code stream.

[0149] As described above, since the encoder inputs the first order in the attribute information parameter, the decoder can obtain the first order from the attribute information parameter set.

[0150] Optionally, the DC coefficient includes a Y component, a U component, and a V component, and decoding the encoding result of the DC coefficient according to the first order corresponding to the DC coefficient and the context probability model corresponding to each component of the DC coefficient includes:

[0151] Golomb decoding is performed on the encoding result of the DC coefficient using the first set of context probability models and the second set of context probability models.

[0152] It should be understood that the decoding order of the Golomb decoding performed on the encoding result of the DC coefficient is the same as the first order. As described above, the first group of context probability models includes multiple context probability models, optionally, the first group of context probability models includes 3 context probability models; the second group of context probability models includes multiple context probability models, optionally, the second group of context probability models includes 3 context probability models. The multiple context probability models included in the second group of context probability models are different from the multiple context probability models included in the first group of context probability models.

[0153] Optionally, before decoding the encoding result of each AC coefficient according to the second order corresponding to each AC coefficient and the context probability model corresponding to each component of each AC coefficient, the method further includes:

[0154] determining the difference between the first order and the first value as the second order;

[0155] Among them, the first value is the sum of the first preset value and the second value, the second value is the multiplication result between the first preset value and the second value divided by the second preset value, and the second value is the difference between the preset total level and the level corresponding to the transformation coefficient.

[0156] The decoder can substitute the first order into the calculation formula used by the encoder to determine the second order. The decoder calculates the second order in the same way as the encoder and will not be repeated here.

[0157] Optionally, the DC coefficient includes a Y component, a U component, and a V component, and decoding the encoding result of the DC coefficient according to the first order corresponding to the DC coefficient and the context probability model corresponding to each component of the DC coefficient includes:

[0158] Determining, according to the first order corresponding to each DC coefficient, a decoding order for performing Golomb decoding on each component of the DC coefficient;

[0159] Based on the decoding order, Golomb decoding is performed on the encoding result of the DC coefficient through a first context probability model and a second context probability model.

[0160] In this embodiment, after determining the first order corresponding to the DC coefficient, the encoding result of the DC coefficient can be Golomb decoded using the first set of context probability models and the second set of context probability models.

[0161] One possible situation is that the first order corresponding to the DC coefficient is greater than the third preset value and less than or equal to the fourth preset value. In this case, the decoding order of Golomb decoding on the Y component in the DC coefficient is the first order, and the decoding order of Golomb decoding on the U component and the V component in the DC coefficient is 1.

[0162] Another possible situation is that the first order corresponding to the DC coefficient is greater than the fourth preset value. In this case, the decoding order of Golomb decoding of the U component and the V component in the DC coefficient is the difference between the first order and the fourth preset value, and the decoding order of Golomb decoding of the Y component in the DC coefficient is 1.

[0163] Another possible situation is that the first order corresponding to the DC coefficient is less than or equal to the third preset value. In this case, the decoding order of Golomb decoding performed on each component of the DC coefficient is 1.

[0164] Optionally, the AC coefficient includes a Y component, a U component, and a V component, and decoding the encoding result of each AC coefficient according to the second order corresponding to each AC coefficient and the context probability model corresponding to each component of each AC coefficient includes:

[0165] determining, according to the second order corresponding to each AC coefficient, a decoding order for performing Golomb decoding on each component of the AC coefficient;

[0166] Based on the decoding order, Golomb decoding is performed on the encoding result of the AC coefficient through a first context probability model and a second context probability model.

[0167] In this embodiment, after determining the second order corresponding to the AC coefficient, the encoding result of the AC coefficient can be subjected to Golomb decoding using the first set of context probability models and the second set of context probability models.

[0168] One possible situation is that the second order corresponding to the AC coefficient is greater than the third preset value and less than or equal to the fourth preset value. In this case, the decoding order of Golomb decoding on the Y component in the AC coefficient is the second order, and the decoding order of Golomb decoding on the U component and the V component in the AC coefficient is 1.

[0169] Another possible situation is that the second order corresponding to the AC coefficient is greater than the fourth preset value. In this case, the decoding order of Golomb decoding of the U component and the V component in the AC coefficient is the difference between the second order and the fourth preset value, and the decoding order of Golomb decoding of the Y component in the AC coefficient is 1.

[0170] Another possible situation is that the second order corresponding to the AC coefficient is less than or equal to the third preset value. In this case, the decoding order of Golomb decoding performed on each component of the AC coefficient is 1.

[0171] Optionally, the AC coefficient includes a Y component, a U component, and a V component, and decoding the encoding result of each AC coefficient according to the second order corresponding to each AC coefficient and the context probability model corresponding to each component of each AC coefficient includes:

[0172] Golomb decoding is performed on the encoding results of the AC coefficients using the first set of context probability models and the second set of context probability models.

[0173] It should be understood that the decoding order of performing Golomb decoding on the coding result of the AC coefficients is the same as the second order.

[0174] Optionally, the third preset value is 1 and the fourth preset value is 2.

[0175] Optionally, the initial probability of the context probability model is a preset probability value.

[0176] In this embodiment, the initial probability of the context probability model can be customized, so that the initial probability that conforms to the data distribution characteristics can be set according to the data distribution law of the point cloud, which facilitates faster convergence of arithmetic decoding and improves decoding efficiency.

[0177] The transform coefficient coding method provided in the embodiment of the present application can be executed by a transform coefficient coding device. In the embodiment of the present application, the transform coefficient coding device performing the transform coefficient coding method is used as an example to illustrate the transform coefficient coding device provided in the embodiment of the present application.

[0178] like Figure 5 As shown, the embodiment of the present application further provides a transform coefficient encoding device 500, comprising:

[0179] An acquisition module 501 is configured to acquire transformation coefficients corresponding to a point cloud; the transformation coefficients include a DC coefficient and at least two AC coefficients;

[0180] A first encoding module 502 is configured to encode the DC coefficient according to a first order corresponding to the DC coefficient and a context probability model corresponding to each component of the DC coefficient;

[0181] a second encoding module 503, configured to encode each AC coefficient according to a second order corresponding to each AC coefficient and a context probability model corresponding to each component of each AC coefficient, wherein the second order is determined based on the first order and the level corresponding to the transform coefficient;

[0182] The generating module 504 is configured to generate a target bitstream based on the encoding result of the DC coefficient and the encoding result of each AC coefficient.

[0183] Optionally, the transform coefficient encoding device 500 further includes:

[0184] The first determining module is configured to determine a first order corresponding to the DC coefficient according to a Golomb order corresponding to at least a portion of a component of the DC coefficient.

[0185] Optionally, the first determining module is specifically configured to:

[0186] Get the Golomb order corresponding to each component of the DC coefficient;

[0187] The Golomb order with the highest occurrence frequency among the Golomb orders corresponding to each component is determined as the first order corresponding to the DC coefficient.

[0188] Optionally, the first determining module is further specifically configured to:

[0189] Get the Golomb order corresponding to each component of the DC coefficient;

[0190] An average value of the Golomb orders corresponding to each component of the DC coefficient is rounded to obtain a first order corresponding to the DC coefficient.

[0191] Optionally, the DC coefficient includes a Y component, a U component, and a V component, and the first encoding module 502 is specifically configured to:

[0192] performing Golomb coding on a U component and a V component in the DC coefficient using a first set of context probability models; wherein the Golomb coding on the U component and the V component has a coding order that is the same as the first order, and the first set of context probability models includes a plurality of context probability models;

[0193] The Y component in the DC coefficient is Golomb coded through a second group of context probability models; the coding order of the Golomb coded Y component is the same as the first order, the second group of context probability models includes multiple context probability models, and the multiple context probability models included in the second group of context probability models are different from the multiple context probability models included in the first group of context probability models.

[0194] Optionally, the transform coefficient encoding device 500 further includes:

[0195] a second determining module, configured to determine a difference between the first order and the first value as a second order;

[0196] Among them, the first value is the sum of the first preset value and the second value, the second value is the multiplication result between the first preset value and the second value divided by the second preset value, and the second value is the difference between the preset total level and the level corresponding to the transformation coefficient.

[0197] Optionally, the DC coefficient includes a Y component, a U component, and a V component, and the first encoding module 502 is further specifically configured to:

[0198] determining, according to the first order corresponding to the DC coefficient, a coding order for performing Golomb coding on each component of the DC coefficient;

[0199] Based on the coding order, performing Golomb coding on each component of the DC coefficient using a first set of context probability models and a second set of context probability models;

[0200] Wherein, when the first order corresponding to the DC coefficient is greater than the third preset value and less than or equal to the fourth preset value, the coding order of Golomb coding performed on the Y component in the DC coefficient is the first order, and the coding order of Golomb coding performed on the U component and the V component in the DC coefficient is 1; or,

[0201] When the first order corresponding to the DC coefficient is greater than a fourth preset value, the coding order of Golomb coding performed on the U component and the V component in the DC coefficient is a difference between the first order and the fourth preset value, and the coding order of Golomb coding performed on the Y component in the DC coefficient is 1; or

[0202] When the first order corresponding to the DC coefficient is less than or equal to a third preset value, the coding order of Golomb coding performed on each component of the DC coefficient is 1;

[0203] The first group of context probability models includes multiple context probability models, the second group of context probability models includes multiple context probability models, and the multiple context probability models included in the second group of context probability models are different from the multiple context probability models included in the first group of context probability models.

[0204] Optionally, the AC coefficient includes a Y component, a U component, and a V component, and the second encoding module 503 is specifically configured to:

[0205] Determining, according to the second order corresponding to each AC coefficient, a coding order for performing Golomb coding on each component of the AC coefficient;

[0206] Based on the coding order, performing Golomb coding on each component of the AC coefficient using a first set of context probability models and a second set of context probability models;

[0207] Wherein, when the second order corresponding to the AC coefficient is greater than the third preset value and less than or equal to the fourth preset value, the coding order of Golomb coding performed on the Y component in the AC coefficient is the second order, and the coding order of Golomb coding performed on the U component and the V component in the AC coefficient is 1; or,

[0208] When the second order corresponding to the AC coefficient is greater than a fourth preset value, the coding order of Golomb coding performed on the U component and the V component in the AC coefficient is a difference between the second order and the fourth preset value, and the coding order of Golomb coding performed on the Y component in the AC coefficient is 1; or

[0209] When the second order corresponding to the AC coefficient is less than or equal to a third preset value, the coding order of Golomb coding performed on each component of the AC coefficient is 1;

[0210] The first group of context probability models includes multiple context probability models, the second group of context probability models includes multiple context probability models, and the multiple context probability models included in the second group of context probability models are different from the multiple context probability models included in the first group of context probability models.

[0211] Optionally, the AC coefficient includes a Y component, a U component, and a V component, and the second encoding module 503 is further specifically configured to:

[0212] performing Golomb coding on a U component and a V component in the AC coefficient using a first set of context probability models; wherein the coding order of the Golomb coding on the U component and the V component is the same as the second order, and the first set of context probability models includes a plurality of context probability models;

[0213] The Y component in the AC coefficient is Golomb coded through a second group of context probability models; the coding order of the Golomb coded Y component is the same as the second order, the second group of context probability models includes multiple context probability models, and the multiple context probability models included in the second group of context probability models are different from the multiple context probability models included in the first group of context probability models.

[0214] Optionally, the initial probability of the context probability model is a preset probability value.

[0215] Optionally, the attribute information parameter set of the target code stream includes the first order.

[0216] In the related art, it is necessary to encode the transform coefficients after encoding them according to the numerical size of the transform coefficients through a context probability model; compared with the related art, the transform coefficient encoding method provided in the embodiment of the present application directly encodes the DC coefficient and AC coefficient included in the transform coefficients through the context probability model after obtaining the transform coefficients, so that the transform coefficient encoding of the transform coefficients can be achieved through fewer context probability models, thereby reducing the number of bits of the code stream.

[0217] This device embodiment is similar to the above Figure 3 Corresponding to the embodiment of the transform coefficient encoding method shown, each implementation process and implementation method of the encoding end in the above method embodiment can be applied to the device embodiment and can achieve the same technical effect.

[0218] The transform coefficient decoding method provided in the embodiment of the present application can be executed by a transform coefficient decoding device. In the embodiment of the present application, the transform coefficient decoding device provided in the embodiment of the present application is described by taking the transform coefficient decoding method performed by the transform coefficient decoding device as an example.

[0219] like Figure 6 As shown, the embodiment of the present application further provides a transform coefficient decoding device 600, comprising:

[0220] A first acquisition module 601 is configured to acquire a target bitstream, wherein the target bitstream includes an encoding result of a DC coefficient in a transform coefficient and an encoding result of at least two AC coefficients in the transform coefficient.

[0221] A first decoding module 602 is configured to decode the encoding result of the DC coefficient according to the first order corresponding to the DC coefficient and the context probability model corresponding to each component of the DC coefficient to obtain the DC coefficient;

[0222] a second decoding module 603 configured to decode the encoding result of each AC coefficient according to a second order corresponding to each AC coefficient and a context probability model corresponding to each component of each AC coefficient, to obtain at least two AC coefficients; wherein the second order is determined based on the first order and the level corresponding to the transform coefficient;

[0223] The first determination module 604 is configured to determine a transform coefficient according to the DC coefficient and the at least two AC coefficients.

[0224] Optionally, the transform coefficient decoding device 600 further includes:

[0225] The second acquisition module is configured to acquire the first order from a property information parameter set of the target code stream.

[0226] Optionally, the DC coefficient includes a Y component, a U component, and a V component, and the first decoding module 602 is specifically configured to:

[0227] Performing Golomb decoding on the encoding result of the DC coefficient using the first set of context probability models and the second set of context probability models;

[0228] In which, the decoding order of Columbus decoding of the encoding result of the DC coefficient is the same as the first order, the first group of context probability models includes multiple context probability models, the second group of context probability models includes multiple context probability models, and the multiple context probability models included in the second group of context probability models are different from the multiple context probability models included in the first group of context probability models.

[0229] Optionally, the transform coefficient decoding device 600 further includes:

[0230] a second determining module, configured to determine a difference between the first order and the first value as a second order;

[0231] Among them, the first value is the sum of the first preset value and the second value, the second value is the multiplication result between the first preset value and the second value divided by the second preset value, and the second value is the difference between the preset total level and the level corresponding to the transformation coefficient.

[0232] Optionally, the DC coefficient includes a Y component, a U component, and a V component, and the first decoding module 601 is further specifically configured to:

[0233] Determining, according to the first order corresponding to each DC coefficient, a decoding order for performing Golomb decoding on each component of the DC coefficient;

[0234] Based on the decoding order, performing Golomb decoding on the encoding result of the DC coefficient using a first context probability model and a second context probability model;

[0235] Wherein, when the first order corresponding to the DC coefficient is greater than the third preset value and less than or equal to the fourth preset value, the decoding order of performing Golomb decoding on the Y component in the DC coefficient is the first order, and the decoding order of performing Golomb decoding on the U component and the V component in the DC coefficient is 1; or,

[0236] When the first order corresponding to the DC coefficient is greater than a fourth preset value, the decoding order of Golomb decoding performed on the U component and the V component in the DC coefficient is a difference between the first order and the fourth preset value, and the decoding order of Golomb decoding performed on the Y component in the DC coefficient is 1; or

[0237] When the first order corresponding to the DC coefficient is less than or equal to a third preset value, the decoding order of Golomb decoding performed on the encoding result of the DC coefficient is 1.

[0238] Optionally, the AC coefficient includes a Y component, a U component, and a V component, and the second decoding module 603 is specifically configured to:

[0239] determining, according to the second order corresponding to each AC coefficient, a decoding order for performing Golomb decoding on each component of the AC coefficient;

[0240] Based on the decoding order, performing Golomb decoding on the encoding result of the AC coefficient using a first context probability model and a second context probability model;

[0241] Wherein, when the second order corresponding to the AC coefficient is greater than the third preset value and less than or equal to the fourth preset value, the decoding order of performing Golomb decoding on the Y component in the AC coefficient is the second order, and the decoding order of performing Golomb decoding on the U component and the V component in the AC coefficient is 1; or,

[0242] When the second order corresponding to the AC coefficient is greater than a fourth preset value, the decoding order of performing Golomb decoding on the U component and the V component in the AC coefficient is a difference between the second order and the fourth preset value, and the decoding order of performing Golomb decoding on the Y component in the AC coefficient is 1; or

[0243] When the second order corresponding to the AC coefficient is less than or equal to a third preset value, the decoding order of Golomb decoding performed on the encoding result of the AC coefficient is 1.

[0244] Optionally, the AC coefficient includes a Y component, a U component, and a V component, and the second decoding module 603 is further specifically configured to:

[0245] Performing Golomb decoding on the encoding results of the AC coefficients using the first set of context probability models and the second set of context probability models;

[0246] In which, the decoding order of Columbus decoding of the encoding result of the AC coefficient is the same as the second order, the first group of context probability models includes multiple context probability models, the second group of context probability models includes multiple context probability models, and the multiple context probability models included in the second group of context probability models are different from the multiple context probability models included in the first group of context probability models.

[0247] Optionally, the initial probability of the context probability model is a preset probability value.

[0248] The transform coefficient decoding device provided in the embodiment of the present application can achieve Figure 4 The various processes implemented by the method embodiment achieve the same technical effect and are not described here again to avoid repetition.

[0249] The transform coefficient encoding device and the transform coefficient decoding device in the embodiments of the present application can be electronic devices, such as electronic devices with an operating system, or components in electronic devices, such as integrated circuits or chips. The electronic device can be a terminal or other device other than a terminal. For example, the terminal can include but is not limited to the types of terminals listed above, and the other device can be a server, a network attached storage (NAS), etc., which are not specifically limited in the embodiments of the present application.

[0250] Alternatively, as Figure 7 As shown, an embodiment of the present application also provides a communication device 700, including a processor 701 and a memory 702, and the memory 702 stores a program or instruction that can be run on the processor 701. For example, when the communication device 700 is a terminal, the program or instruction is executed by the processor 701 to implement the various steps of the above-mentioned transform coefficient encoding method embodiment, or to implement the various steps of the above-mentioned transform coefficient decoding method embodiment, and can achieve the same technical effect.

[0251] An embodiment of the present application further provides a terminal, including a processor and a communication interface, wherein the processor is configured to perform the following operations:

[0252] Get the transformation coefficient corresponding to the point cloud;

[0253] encoding the DC coefficient according to a first order number corresponding to the DC coefficient and a context probability model corresponding to each component of the DC coefficient;

[0254] Encoding each AC coefficient according to a second order corresponding to each AC coefficient and a context probability model corresponding to each component of each AC coefficient;

[0255] A target code stream is generated based on the encoding result of the DC coefficient and the encoding result of each AC coefficient.

[0256] Alternatively, the processor is used to perform the following operations:

[0257] Get the target stream;

[0258] Decoding the encoding result of the DC coefficient according to the first order corresponding to the DC coefficient and the context probability model corresponding to each component of the DC coefficient to obtain the DC coefficient;

[0259] Decoding an encoding result of each AC coefficient according to a second order corresponding to each AC coefficient and a context probability model corresponding to each component of each AC coefficient to obtain at least two AC coefficients;

[0260] A transform coefficient is determined based on the DC coefficient and the at least two AC coefficients.

[0261] This terminal embodiment corresponds to the above-mentioned terminal side method embodiment, and each implementation process and implementation method of the above-mentioned method embodiment can be applied to this terminal embodiment and can achieve the same technical effect. Specifically, Figure 8 A schematic diagram of the hardware structure of a terminal for implementing an embodiment of the present application.

[0262] The terminal 800 includes but is not limited to components such as a radio frequency unit 801 , a network module 802 , an audio output unit 803 , an input unit 804 , a sensor 805 , a display unit 806 , a user input unit 807 , an interface unit 808 , a memory 809 , and a processor 810 .

[0263] Those skilled in the art will understand that the terminal 800 may also include a power supply (such as a battery) to power each component, and the power supply may be logically connected to the processor 810 through a power management system, thereby implementing functions such as charging, discharging, and power consumption management through the power management system. Figure 8 The terminal structure shown in the figure does not constitute a limitation on the terminal. The terminal may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently, which will not be repeated here.

[0264] It should be understood that in an embodiment of the present application, the input unit 804 may include a graphics processing unit (GPU) 8041 and a microphone 8042, and the graphics processor 8041 processes the image data of a static picture or video obtained by an image capture device (such as a camera) in a video capture mode or an image capture mode. The display unit 806 may include a display panel 8061, and the display panel 8061 may be configured in the form of a liquid crystal display, an organic light emitting diode, etc. The user input unit 807 includes a touch panel 8071 and at least one of other input devices 8072. The touch panel 8071 is also called a touch screen. The touch panel 8071 may include two parts: a touch detection device and a touch controller. Other input devices 8072 may include, but are not limited to, a physical keyboard, function keys (such as volume control keys, switch keys, etc.), a trackball, a mouse, and an operating stick, which will not be repeated here.

[0265] In the embodiment of the present application, after receiving downlink data from the network-side device, the radio frequency unit 801 can transmit the data to the processor 88 for processing; the radio frequency unit 801 can also send uplink data to the network-side device. Generally, the radio frequency unit 801 includes but is not limited to an antenna, an amplifier, a transceiver, a coupler, a low-noise amplifier, a duplexer, etc.

[0266] The memory 809 can be used to store software programs or instructions and various data. The memory 809 may mainly include a first storage area for storing programs or instructions and a second storage area for storing data, wherein the first storage area may store an operating system, applications or instructions required for at least one function (such as a sound playback function, an image playback function, etc.), etc. In addition, the memory 809 may include a volatile memory or a non-volatile memory, or the memory 809 may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), a static random access memory (SRAM), a dynamic random access memory (DRAM), a synchronous dynamic random access memory (SDRAM), a double data rate synchronous dynamic random access memory (DDRSDRAM), an enhanced synchronous dynamic random access memory (ESDRAM), a synchronous link dynamic random access memory (SLDRAM), and a direct RAM bus random access memory (DRRAM). The memory 809 in the embodiment of the present application includes but is not limited to these and any other suitable types of memory.

[0267] Processor 810 may include one or more processing units. Optionally, processor 810 integrates an application processor and a modem processor. The application processor primarily handles operations related to the operating system, user interface, and application programs, while the modem processor primarily processes wireless communication signals, such as a baseband processor. It is understood that the modem processor may not be integrated into processor 810.

[0268] The processor 801 is configured to perform the following operations:

[0269] Get the transformation coefficient corresponding to the point cloud;

[0270] encoding the DC coefficient according to a first order number corresponding to the DC coefficient and a context probability model corresponding to each component of the DC coefficient;

[0271] Encoding each AC coefficient according to a second order corresponding to each AC coefficient and a context probability model corresponding to each component of each AC coefficient;

[0272] A target code stream is generated based on the encoding result of the DC coefficient and the encoding result of each AC coefficient.

[0273] Alternatively, the processor 801 is further configured to perform the following operations:

[0274] Get the target stream;

[0275] Decoding the encoding result of the DC coefficient according to the first order corresponding to the DC coefficient and the context probability model corresponding to each component of the DC coefficient to obtain the DC coefficient;

[0276] Decoding an encoding result of each AC coefficient according to a second order corresponding to each AC coefficient and a context probability model corresponding to each component of each AC coefficient to obtain at least two AC coefficients;

[0277] A transform coefficient is determined based on the DC coefficient and the at least two AC coefficients.

[0278] An embodiment of the present application also provides a readable storage medium, on which a program or instruction is stored. When the program or instruction is executed by a processor, the various processes of the above-mentioned transform coefficient encoding method embodiment or the various processes of the above-mentioned transform coefficient decoding method embodiment are implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here.

[0279] The processor is the processor in the terminal described in the above embodiment. The readable storage medium includes a computer-readable storage medium, such as a computer read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0280] An embodiment of the present application further provides a chip, which includes a processor and a communication interface, wherein the communication interface is coupled to the processor, and the processor is used to run programs or instructions to implement the various processes of the above-mentioned transform coefficient encoding method embodiment, or to implement the various processes of the above-mentioned transform coefficient decoding method embodiment, and can achieve the same technical effect. To avoid repetition, it will not be repeated here.

[0281] It should be understood that the chip mentioned in the embodiments of the present application can also be called a system-level chip, a system chip, a chip system or a system-on-chip chip, etc.

[0282] An embodiment of the present application further provides a computer program / program product, which is stored in a storage medium. The computer program / program product is executed by at least one processor to implement the various processes of the above-mentioned transform coefficient encoding method embodiment, or to implement the various processes of the above-mentioned transform coefficient decoding method embodiment, and can achieve the same technical effect. To avoid repetition, it is not repeated here.

[0283] It should be noted that, in this article, the terms "comprise", "include" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the statement "comprises a ..." does not exclude the presence of other identical elements in the process, method, article or device comprising the element. In addition, it should be noted that the scope of the methods and devices in the embodiments of the present application is not limited to performing functions in the order shown or discussed, and may also include performing functions in a substantially simultaneous manner or in the opposite order according to the functions involved. For example, the described method may be performed in an order different from that described, and various steps may also be added, omitted, or combined. In addition, the features described with reference to certain examples may be combined in other examples.

[0284] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus the necessary general hardware platform, and of course can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a computer software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), and includes a number of instructions for enabling a terminal (which can be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in each embodiment of the present application.

[0285] The embodiments of the present application are described above in conjunction with the accompanying drawings, but the present application is not limited to the above-mentioned specific implementation methods. The above-mentioned specific implementation methods are merely illustrative and not restrictive. Under the guidance of this application, ordinary technicians in this field can also make many forms without departing from the purpose of this application and the scope of protection of the claims, all of which are within the protection of this application.

Claims

1. A transform coefficient encoding method, characterized in that: include: The encoder obtains the transformation coefficients corresponding to the point cloud; The conversion coefficients include a direct current (DC) coefficient and at least two alternating current (AC) coefficients; The encoding end encodes the DC coefficient according to a first order corresponding to the DC coefficient and a context probability model corresponding to each component of the DC coefficient; The encoding end encodes each AC coefficient according to a second order corresponding to each AC coefficient and a context probability model corresponding to each component of each AC coefficient; The second order is determined based on the first order and the level corresponding to the transform coefficient; The encoding end generates a target bitstream based on the encoding result of the DC coefficient and the encoding result of each AC coefficient; The first order and the second order are Columbus orders.

2. The method according to claim 1, characterized in that Before encoding the DC coefficient according to the first order corresponding to the DC coefficient and the context probability model corresponding to each component of the DC coefficient, the method further includes: The encoding end determines a first order corresponding to the DC coefficient according to a Golomb order corresponding to at least a portion of a component of the DC coefficient.

3. The method according to claim 2, characterized in that Determining the first order corresponding to the DC coefficient according to the Golomb order corresponding to at least part of the components of the DC coefficient includes: The encoding end obtains the Golomb order corresponding to each component of the DC coefficient; The encoding end determines the Golomb order with the highest occurrence frequency among the Golomb orders corresponding to each component as the first order corresponding to the DC coefficient.

4. The method according to claim 2, characterized in that Determining the first order corresponding to the DC coefficient according to the Golomb order corresponding to at least part of the components of the DC coefficient includes: The encoding end obtains the Golomb order corresponding to each component of the DC coefficient; The encoding end rounds the average value of the Golomb orders corresponding to each component of the DC coefficient to obtain a first order corresponding to the DC coefficient.

5. The method according to any one of claims 1 to 4, characterized in that The DC coefficient includes a Y component, a U component, and a V component, and encoding the DC coefficient according to a first order corresponding to the DC coefficient and a context probability model corresponding to each component of the DC coefficient includes: The encoding end performs Golomb coding on the U component and the V component in the DC coefficient using a first set of context probability models; the coding order of the Golomb coding on the U component and the V component is the same as the first order, and the first set of context probability models includes a plurality of context probability models; The encoding end performs Columbus encoding on the Y component in the DC coefficient through a second group of context probability models; the encoding order of the Columbus encoding of the Y component is the same as the first order, the second group of context probability models includes multiple context probability models, and the multiple context probability models included in the second group of context probability models are different from the multiple context probability models included in the first group of context probability models.

6. The method according to any one of claims 1 to 4, characterized in that Before encoding each AC coefficient according to the second order corresponding to each AC coefficient and the context probability model corresponding to each component of each AC coefficient, the method further includes: The encoding end determines the difference between the first order and the first value as the second order; Among them, the first value is the sum of the first preset value and the second value, the second value is the multiplication result between the first preset value and the third value divided by the second preset value, and the third value is the difference between the preset total level and the level corresponding to the transformation coefficient.

7. The method according to any one of claims 1 to 4, characterized in that The DC coefficient includes a Y component, a U component, and a V component, and encoding the DC coefficient according to a first order corresponding to the DC coefficient and a context probability model corresponding to each component of the DC coefficient includes: The encoding end determines, according to the first order corresponding to the DC coefficient, a coding order for performing Golomb coding on each component of the DC coefficient; The encoding end performs Golomb coding on each component of the DC coefficient using a first set of context probability models and a second set of context probability models based on the coding order; Wherein, when the first order corresponding to the DC coefficient is greater than the third preset value and less than or equal to the fourth preset value, the coding order of Golomb coding performed on the Y component in the DC coefficient is the first order, and the coding order of Golomb coding performed on the U component and the V component in the DC coefficient is 1; or, When the first order corresponding to the DC coefficient is greater than a fourth preset value, the coding order of Golomb coding performed on the U component and the V component in the DC coefficient is a difference between the first order and the fourth preset value, and the coding order of Golomb coding performed on the Y component in the DC coefficient is 1; or When the first order corresponding to the DC coefficient is less than or equal to a third preset value, the coding order of Golomb coding performed on each component of the DC coefficient is 1; The first group of context probability models includes multiple context probability models, the second group of context probability models includes multiple context probability models, and the multiple context probability models included in the second group of context probability models are different from the multiple context probability models included in the first group of context probability models.

8. The method according to any one of claims 1 to 4, characterized in that The AC coefficient includes a Y component, a U component, and a V component, and encoding each AC coefficient according to a second order corresponding to each AC coefficient and a context probability model corresponding to each component of each AC coefficient includes: The encoding end determines, according to the second order corresponding to each AC coefficient, a coding order for performing Golomb coding on each component of the AC coefficient; The encoding end performs Golomb coding on each component of the AC coefficient using a first set of context probability models and a second set of context probability models based on the coding order; Wherein, when the second order corresponding to the AC coefficient is greater than the third preset value and less than or equal to the fourth preset value, the coding order of Golomb coding performed on the Y component in the AC coefficient is the second order, and the coding order of Golomb coding performed on the U component and the V component in the AC coefficient is 1; or, When the second order corresponding to the AC coefficient is greater than a fourth preset value, the coding order of Golomb coding performed on the U component and the V component in the AC coefficient is a difference between the second order and the fourth preset value, and the coding order of Golomb coding performed on the Y component in the AC coefficient is 1; or When the second order corresponding to the AC coefficient is less than or equal to a third preset value, the coding order of Golomb coding performed on each component of the AC coefficient is 1; The first group of context probability models includes multiple context probability models, the second group of context probability models includes multiple context probability models, and the multiple context probability models included in the second group of context probability models are different from the multiple context probability models included in the first group of context probability models.

9. The method according to any one of claims 1 to 4, characterized in that The AC coefficient includes a Y component, a U component, and a V component, and encoding each AC coefficient according to a second order corresponding to each AC coefficient and a context probability model corresponding to each component of each AC coefficient includes: The encoding end performs Golomb coding on the U component and the V component in the AC coefficient using a first set of context probability models; the coding order of the Golomb coding on the U component and the V component is the same as the second order, and the first set of context probability models includes a plurality of context probability models; The encoding end performs Columbus encoding on the Y component in the AC coefficient through a second group of context probability models; the encoding order of the Columbus encoding of the Y component is the same as the second order, the second group of context probability models includes multiple context probability models, and the multiple context probability models included in the second group of context probability models are different from the multiple context probability models included in the first group of context probability models.

10. The method according to any one of claims 1 to 4, characterized in that The initial probability of the context probability model is a preset probability value.

11. The method according to any one of claims 1 to 4, characterized in that The attribute information parameter set of the target code stream includes the first order.

12. A method for decoding transform coefficients, characterized in that: include: The decoding end obtains a target bit stream; the target bit stream includes the encoding results of the DC coefficient in the transform coefficient and the encoding results of at least two AC coefficients in the transform coefficient; The decoding end decodes the encoding result of the DC coefficient according to the first order corresponding to the DC coefficient and the context probability model corresponding to each component of the DC coefficient to obtain the DC coefficient; The decoding end decodes the encoding result of each AC coefficient according to a second order corresponding to each AC coefficient and a context probability model corresponding to each component of each AC coefficient to obtain at least two AC coefficients; the second order is determined based on the first order and the level corresponding to the transform coefficient; The decoding end determines a transform coefficient based on the DC coefficient and the at least two AC coefficients; The first order and the second order are Columbus orders.

13. The method according to claim 12, characterized in that Before decoding the encoding result of the DC coefficient according to the first order corresponding to the DC coefficient and the context probability model corresponding to each component of the DC coefficient, the method further includes: The decoding end obtains the first order from a property information parameter set of the target code stream.

14. The method according to claim 12 or 13, characterized in that The DC coefficient includes a Y component, a U component, and a V component, and decoding the encoding result of the DC coefficient according to the first order corresponding to the DC coefficient and the context probability model corresponding to each component of the DC coefficient includes: The decoding end performs Golomb decoding on the encoding result of the DC coefficient using the first set of context probability models and the second set of context probability models; In which, the decoding order of Columbus decoding of the encoding result of the DC coefficient is the same as the first order, the first group of context probability models includes multiple context probability models, the second group of context probability models includes multiple context probability models, and the multiple context probability models included in the second group of context probability models are different from the multiple context probability models included in the first group of context probability models.

15. The method according to claim 12, characterized in that Before decoding the encoding result of each AC coefficient according to the second order corresponding to each AC coefficient and the context probability model corresponding to each component of each AC coefficient, the method further includes: The decoding end determines the difference between the first order and the first value as the second order; Among them, the first value is the sum of the first preset value and the second value, the second value is the multiplication result between the first preset value and the third value divided by the second preset value, and the third value is the difference between the preset total level and the level corresponding to the transformation coefficient.

16. The method according to claim 12 or 13, characterized in that The DC coefficient includes a Y component, a U component, and a V component, and decoding the encoding result of the DC coefficient according to the first order corresponding to the DC coefficient and the context probability model corresponding to each component of the DC coefficient includes: The decoding end determines, according to the first order corresponding to each DC coefficient, a decoding order for performing Golomb decoding on each component of the DC coefficient; The decoding end performs Golomb decoding on the encoding result of the DC coefficient using a first context probability model and a second context probability model based on the decoding order; Wherein, when the first order corresponding to the DC coefficient is greater than the third preset value and less than or equal to the fourth preset value, the decoding order of performing Golomb decoding on the Y component in the DC coefficient is the first order, and the decoding order of performing Golomb decoding on the U component and the V component in the DC coefficient is 1; or, When the first order corresponding to the DC coefficient is greater than a fourth preset value, the decoding order of Golomb decoding performed on the U component and the V component in the DC coefficient is a difference between the first order and the fourth preset value, and the decoding order of Golomb decoding performed on the Y component in the DC coefficient is 1; or When the first order corresponding to the DC coefficient is less than or equal to a third preset value, the decoding order of Golomb decoding performed on the encoding result of the DC coefficient is 1.

17. The method according to claim 12 or 15, characterized in that The AC coefficient includes a Y component, a U component, and a V component, and decoding the encoding result of each AC coefficient according to the second order corresponding to each AC coefficient and the context probability model corresponding to each component of each AC coefficient includes: The decoding end determines, according to the second order corresponding to each AC coefficient, a decoding order for performing Golomb decoding on each component of the AC coefficient; The decoding end performs Golomb decoding on the encoding result of the AC coefficient using a first context probability model and a second context probability model based on the decoding order; Wherein, when the second order corresponding to the AC coefficient is greater than the third preset value and less than or equal to the fourth preset value, the decoding order of performing Golomb decoding on the Y component in the AC coefficient is the second order, and the decoding order of performing Golomb decoding on the U component and the V component in the AC coefficient is 1; or, When the second order corresponding to the AC coefficient is greater than a fourth preset value, the decoding order of performing Golomb decoding on the U component and the V component in the AC coefficient is a difference between the second order and the fourth preset value, and the decoding order of performing Golomb decoding on the Y component in the AC coefficient is 1; or When the second order corresponding to the AC coefficient is less than or equal to a third preset value, the decoding order of Golomb decoding performed on the encoding result of the AC coefficient is 1.

18. The method according to claim 12 or 15, characterized in that The AC coefficient includes a Y component, a U component, and a V component, and decoding the encoding result of each AC coefficient according to the second order corresponding to each AC coefficient and the context probability model corresponding to each component of each AC coefficient includes: The decoding end performs Golomb decoding on the encoding results of the AC coefficients using the first set of context probability models and the second set of context probability models; In which, the decoding order of Columbus decoding of the encoding result of the AC coefficient is the same as the second order, the first group of context probability models includes multiple context probability models, the second group of context probability models includes multiple context probability models, and the multiple context probability models included in the second group of context probability models are different from the multiple context probability models included in the first group of context probability models.

19. The method according to claim 12 or 13, characterized in that The initial probability of the context probability model is a preset probability value.

20. A transform coefficient encoding device, characterized in that: include: Acquisition module, used to obtain the transformation coefficients corresponding to the point cloud; The conversion coefficients include a direct current (DC) coefficient and at least two alternating current (AC) coefficients; A first encoding module, configured to encode the DC coefficient according to a first order corresponding to the DC coefficient and a context probability model corresponding to each component of the DC coefficient; A second encoding module, configured to encode each AC coefficient according to a second order corresponding to each AC coefficient and a context probability model corresponding to each component of each AC coefficient; The second order is determined based on the first order and the level corresponding to the transform coefficient; A generating module, configured to generate a target bitstream based on the encoding result of the DC coefficient and the encoding result of each AC coefficient; The first order and the second order are Columbus orders.

21. A transform coefficient decoding device, characterized in that: include: A first acquisition module is configured to acquire a target bitstream, wherein the target bitstream includes an encoding result of a DC coefficient in a transform coefficient and an encoding result of at least two AC coefficients in the transform coefficient; A first decoding module, configured to decode an encoding result of the DC coefficient according to a first order corresponding to the DC coefficient and a context probability model corresponding to each component of the DC coefficient, to obtain the DC coefficient; a second decoding module, configured to decode an encoding result of each AC coefficient according to a second order corresponding to each AC coefficient and a context probability model corresponding to each component of each AC coefficient, to obtain at least two AC coefficients; wherein the second order is determined based on the first order and the level corresponding to the transform coefficient; a first determining module, configured to determine a transform coefficient based on the DC coefficient and the at least two AC coefficients; The first order and the second order are Columbus orders.

22. A terminal, characterized in that: The invention comprises a processor and a memory, wherein the memory stores a program or instruction that can be run on the processor, and when the program or instruction is executed by the processor, the steps of the transform coefficient encoding device as described in any one of claims 1 to 11 are implemented, or the steps of the transform coefficient decoding device as described in any one of claims 12 to 19 are implemented.

23. A readable storage medium, characterized in that The readable storage medium stores a program or instruction, and when the program or instruction is executed by the processor, the steps of the transform coefficient encoding method according to any one of claims 1 to 11 are implemented, or the steps of the transform coefficient decoding method according to any one of claims 12 to 19 are implemented.

Citation Information

Patent Citations

  • Method and equipment for entropy coding and entropy decoding of point cloud attribute transformation coefficients

    CN113489980A

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

    CN115086672A