Point cloud encoding method, point cloud decoding method, decoder, encoder, and computer-readable storage medium

By using truncated unary codes to represent the prediction pattern index value in point cloud coding, the problem of low coding efficiency of point cloud attribute information prediction transformation in existing technologies is solved, and more efficient coding and decoding performance is achieved.

WO2025217783A1PCT designated stage Publication Date: 2025-10-23GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP LTD
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/087849
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-04-15
Publication Date
2025-10-23

AI Technical Summary

Technical Problem

Existing point cloud attribute information prediction transformation encoding methods are inefficient, leading to a decrease in encoding and decoding performance.

Method used

The prediction mode index value is represented by a truncated unary code. By determining the attribute reconstruction values ​​of multiple nearest neighbor points of the current point, the attribute prediction residual and the prediction mode index value are calculated. The joint residual is determined by the truncated unary code and then encoded.

Benefits of technology

It improves encoding efficiency, reduces bitrate, and enhances point cloud reconstruction quality and encoding/decoding performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024087849_23102025_PF_FP_ABST
    Figure CN2024087849_23102025_PF_FP_ABST
Patent Text Reader

Abstract

The present application provides a point cloud encoding method, a point cloud decoding method, a decoder, an encoder, and a computer-readable storage medium, which can improve encoding and decoding efficiency, thereby improving encoding and decoding performance. The method comprises: decoding a bitstream to determine a joint residual of a current point in a current point cloud, wherein the joint residual is determined on the basis of a truncated unary code corresponding to an attribute prediction residual and a prediction mode index value of the current point (S201); on the basis of the joint residual, determining the attribute prediction residual and the prediction mode index value of the current point (S202); and on the basis of the prediction mode index value and the attribute prediction residual of the current point, determining an attribute reconstruction value of the current point (S203).
Need to check novelty before this filing date? Find Prior Art

Description

Point cloud coding method, decoder, encoder and computer readable storage medium TECHNICAL FIELD

[0001] The present application relates to point cloud compression coding technology, and in particular to a point cloud coding method, a decoder, an encoder and a computer readable storage medium. BACKGROUND

[0002] A point cloud is a set of points, which can store the geometric position and related attribute information of each point, thereby accurately and three-dimensionally describing objects in space. Point cloud data is large in quantity, and a frame of point cloud can contain millions of points, which brings great difficulty and challenge to the effective storage and transmission of point cloud. Therefore, compression technology is used to reduce the redundant information in point cloud storage, thereby facilitating subsequent processing work.

[0003] At present, in the predicting transform (PT) encoding of attribute information of a point cloud, the encoding mode of the attribute prediction mode is low in efficiency, thereby reducing the coding performance.

[0004] SUMMARY

[0005] The embodiments of the present application provide a point cloud coding method, a decoder, an encoder and a computer readable storage medium, which can improve the coding efficiency and thereby improve the coding performance.

[0006] The technical solution of the present application is implemented as follows:

[0007] The embodiments of the present application provide a point cloud decoding method applied to a decoder, comprising:

[0008] Decoding a code stream to determine a joint residual of a current point in a current point cloud; the joint residual is determined based on an attribute prediction residual of the current point and a truncated unary code corresponding to a prediction mode index value;

[0009] Based on the joint residual, the attribute prediction residual and the prediction mode index value of the current point are determined.

[0010] Based on the prediction mode index value of the current point and the attribute prediction residual, an attribute reconstruction value of the current point is determined.

[0011] The embodiments of the present application provide a point cloud encoding method applied to an encoder, comprising:

[0012] In the reconstructed points of the current point cloud, a plurality of neighboring points of a current point are determined;

[0013] Based on a plurality of attribute reconstruction values of the plurality of neighboring points, an attribute prediction residual of the current point and a prediction mode index value of the current point are determined;

[0014] determining a truncated unary code corresponding to the prediction mode index value, and determining the joint residual of the current point based on the attribute prediction residual and the truncated unary code;

[0015] encoding the joint residual, and writing the obtained encoding bits into a bitstream.

[0016] An embodiment of the present application provides a decoder, comprising a decoding part, a second determining part and a reconstruction part, wherein:

[0017] The decoding part is configured to decode a bitstream, and determine a joint residual of a current point in a current point cloud; the joint residual is determined based on an attribute prediction residual of the current point and a truncated unary code corresponding to a prediction mode index value of the current point;

[0018] The second determining part is configured to determine the attribute prediction residual of the current point and the prediction mode index value based on the joint residual.

[0019] The reconstruction part is configured to determine an attribute reconstruction value of the current point based on the prediction mode index value of the current point and the attribute prediction residual.

[0020] An embodiment of the present application provides an encoder, comprising:

[0021] The first determining part is configured to determine a plurality of neighbor points of a current point in a reconstructed point of a current point cloud, determine an attribute prediction residual of the current point and a prediction mode index value of the current point based on a plurality of attribute reconstruction values of the plurality of neighbor points, determine a truncated unary code corresponding to the prediction mode index value, and determine a joint residual of the current point based on the attribute prediction residual and the truncated unary code.

[0022] The encoding part is configured to encode based on the joint residual, and write the obtained encoding bits into a bitstream.

[0023] An embodiment of the present application provides a bitstream, wherein the bitstream is generated by bit encoding to-be-encoded information; wherein the to-be-encoded information at least comprises a joint residual; the joint residual is determined based on an attribute prediction residual of a current point and a truncated unary code corresponding to a prediction mode index value.

[0024] An embodiment of the present application provides a decoder, comprising:

[0025] A first memory is configured to store executable instructions;

[0026] A first processor is configured to execute the executable instructions stored in the first memory, and implement the point cloud decoding method in any one of the above embodiments.

[0027] The embodiment of the present application provides an encoder, comprising:

[0028] A second memory configured to store executable instructions;

[0029] A second processor configured to execute the executable instructions stored in the second memory to implement the point cloud encoding method according to any one of the preceding embodiments.

[0030] The embodiment of the present application provides a computer readable storage medium storing executable instructions for causing a first processor to execute to implement the decoding method or for causing a second processor to execute to implement the encoding method.

[0031] The embodiment of the present application provides a computer program product comprising a computer program or instructions, which, when executed by a first processor, implement the decoding method provided by the embodiment of the present application, or which, when executed by a second processor, implement the encoding method provided by the embodiment of the present application.

[0032] The embodiment of the present application provides a point cloud encoding and decoding method, a decoder, an encoder and a computer readable storage medium. The encoder determines a plurality of neighboring points of a current point in a reconstructed point of a current point cloud; determines an attribute prediction residual of the current point and a prediction mode index value of the current point based on a plurality of attribute reconstruction values of the plurality of neighboring points; determines a truncated unary code corresponding to the prediction mode index value, and determines a joint residual of the current point based on the attribute prediction residual and the truncated unary code; encodes the joint residual, and writes the obtained encoding bits into a bitstream; the decoder decodes the bitstream to determine the joint residual of the current point in the current point cloud; the joint residual is determined based on the attribute prediction residual of the current point and the truncated unary code corresponding to the prediction mode index value; the attribute prediction residual and the prediction mode index value of the current point are determined based on the joint residual; and the attribute reconstruction value of the current point is determined based on the prediction mode index value and the attribute prediction residual of the current point. In this way, the prediction mode index value of the attribute information of the current point is represented by the truncated unary code, and only one code value is used to represent the prediction mode index value '0' which has a high probability of occurrence, so that short bit coding is adopted for the index value with a high probability of occurrence, long bit coding is adopted for the index value with a low probability of occurrence, the coding efficiency is improved, the code rate is reduced, the quality of the reconstructed point cloud at the average code rate of the decoding end is improved, and the encoding and decoding performance is improved. BRIEF DESCRIPTION OF DRAWINGS

[0033] FIG. 1 is an encoding flowchart of a prediction transformation of point cloud attribute information;

[0034] FIG. 2 is a schematic diagram of a distance-based LoD generation process;

[0035] FIG. 3 is a schematic diagram of a best prediction mode selection scheme;

[0036] FIG. 4 is an optional structure diagram of a coding system according to an embodiment of the present application;

[0037] FIG. 5 is an optional flow diagram of a point cloud encoding method according to an embodiment of the present application;

[0038] FIG. 6A is a data structure diagram of a first channel joint residual according to an embodiment of the present application;

[0039] FIG. 6B is a data structure diagram of a second channel joint residual according to an embodiment of the present application;

[0040] FIG. 7A is a data structure diagram of a first channel joint residual according to an embodiment of the present application;

[0041] FIG. 7B is a data structure diagram of a second channel joint residual according to an embodiment of the present application;

[0042] FIG. 8A is a data structure diagram of a first channel joint residual according to an embodiment of the present application;

[0043] FIG. 8B is a data structure diagram of a second channel joint residual according to an embodiment of the present application;

[0044] FIG. 9 is a flow diagram of an attribute encoding process according to an embodiment of the present application;

[0045] FIG. 10A is a data structure diagram of a joint residual according to an embodiment of the present application;

[0046] FIG. 10B is a data structure diagram of a joint residual according to an embodiment of the present application;

[0047] FIG. 10C is a data structure diagram of a joint residual according to an embodiment of the present application;

[0048] FIG. 11 is an optional flow diagram of a point cloud decoding method according to an embodiment of the present application;

[0049] FIG. 12 is a flow diagram of an attribute decoding process according to an embodiment of the present application;

[0050] FIG. 13 is an optional structure diagram of a decoder according to an embodiment of the present application;

[0051] FIG. 14 is an optional structure diagram of an encoder according to an embodiment of the present application;

[0052] FIG. 15 is an optional structure diagram of a decoder according to an embodiment of the present application;

[0053] FIG. 16 is an optional structure diagram of an encoder according to an embodiment of the present application. DETAILED DESCRIPTION

[0054] In order to make the purposes, technical solutions and advantages of the present application clearer, the present application will be further described in detail below with the accompanying drawings. The described embodiments should not be regarded as limitations to the present application. All other embodiments obtained by those of ordinary skill in the art without creative work under the premise that there is no conflict, belong to the scope of protection of the present application.

[0055] In the following description, "some embodiments" are referred to, which describe a subset of all possible embodiments, but it can be understood that "some embodiments" can be the same subset or different subset of all possible embodiments, and can be combined with each other without conflict.

[0056] In the following description, the terms "first\second\third" are only to distinguish similar objects, and do not represent a specific order of the objects. It can be understood that "first\second\third" can be interchanged in a specific order or sequence as allowed, so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein.

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

[0058] Before the embodiments of the present application are further described in detail, the terms and phrases involved in the embodiments of the present application are explained, and the terms and phrases involved in the embodiments of the present application are applicable to the following explanations.

[0059] 1) Geometry-based Point Cloud Compression (GPCC / G-PCC)

[0060] 2) Levels of Detail (LoD)

[0061] 3) K Nearest Neighbor (KNN)

[0062] 4) Peak Signal to Noise Ratio (PSNR)

[0063] 5) Bitrate saving at fixed PSNR (BD-rate)

[0064] ​6) Quantization Parameter (QP)

[0065] 7) Rate-Distortion Optimation (RDO)

[0066] 8) reflectance (Ref)

[0067] 9) Luminance (Luma)

[0068] In the point cloud G-PCC encoder framework, the geometry information of the point cloud and the attribute information corresponding to the points in the point cloud are encoded separately. Among them, the predicting transform (PT) encoding of the point cloud attribute information belongs to one of the three attribute prediction modes of GPCC. The encoding process of PT is shown in FIG. 1. The main encoding process is: first, according to the LoD generation order, the points in the original point cloud are predicted by using the reconstructed points; second, the prediction residual of the current point to be encoded is obtained by subtracting the predicted value from the original value; finally, the prediction residual is quantized and encoded to generate the attribute information code stream. The PT prediction encoding process is described in detail below.

[0069] Step 1: Generation of LOD

[0070] The distance-based LoD construction method is currently used in the G-PCC software platform, as shown in FIG. 2, (R l ) l=0…L-1 represents the refinement level, and L is the number of LoD. The specific steps of constructing LoD are as follows:

[0071] (1) The user defines L Euclidean distances (d l ) l=0…L-1 , and divides L refinement levels (R l ) l=0…L-1 ;

[0072] (2) Mark all points as unvisited, and set the visited point set V as an empty set;

[0073] (3) The refinement level R l is generated, including:

[0074] Traverse all points, and if the current point has been visited, ignore it;

[0075] Otherwise, calculate the minimum distance D of the current point from the point set V;

[0076] If D is less than d l , ignore the current point;

[0077] Otherwise, mark the current point as visited and join R l and V;

[0078] Repeat this process until all points are traversed.

[0079] (4) Take the union of the refinement layers R0, R1,..., R l to get the detail layer LoD l (i.e. );

[0080] (5) Repeat this process until all points have been visited.

[0081] Step 2: Optimal prediction value selection:

[0082] After the LoD is constructed, according to the generation order of the LoD, first find the three nearest neighbor points of the current to-be-encoded point from the already-encoded data points. The attribute reconstruction values of the three nearest neighbor points are taken as the candidate prediction values of the current to-be-encoded point; then calculate the maximum attribute difference max_difference of the three candidate neighbors, if the value of max_difference is less than the adaptive threshold adaptive_threshold, then consider that the three neighbor points are similar to the attribute value of the predicted point, and thus adopt mode 0 weighted prediction; if the value of max_difference is greater than or equal to the adaptive threshold adaptive_threshold, then select the optimal prediction value from them according to the rate-distortion optimization (Rate-Distortion Optimal, RDO). Calculate the scores of modes 0-3, and find the minimum cost score as the best prediction mode. For example, when encoding the attribute value of point P0 in FIG. 2, the prediction mode index of the attribute value of the nearest neighbor point (i.e. the first nearest neighbor point) P2 is set to 1; the prediction mode indexes of the attribute values of the second nearest neighbor point (i.e. the second nearest neighbor point) P7 and the third nearest neighbor point P10 are set to 2 and 3 respectively; the prediction mode index of the weighted average of points P2, P7 and P10 is set to 0, as shown in Table 1; the selection scheme of the prediction mode is shown in FIG. 3. The formula of the weighted average is shown in (1):

[0083] In formula (1), represents the attribute prediction value of the current point i, j represents the index of the three neighbor points, represents the attribute value of the neighbor point after reconstruction, represents the spatial geometric weight of the neighbor point j to the current point i, and can be calculated by formula (2) as follows:

[0084] In formula (2), x iy i z i are the geometric position coordinates of the current point i, x ij y ij z ij are the geometric coordinates of the near neighbor point j.

[0085] Table 1

[0086] Step 3: Attribute prediction residual and quantization:

[0087] The attribute prediction value of the current point i is obtained by the above prediction (k is the total number of points of the point cloud). Let (a i ) i∈0…k-1 be the original attribute value of the current point, then the initial attribute prediction residual (r i ) i∈0…k-1 can be determined by formula (3) as follows:

[0088] Further quantization of the initial prediction residual to obtain the prediction residual, as shown in formula (4) as follows:

[0089] In formula (4), Q i represents the quantized attribute prediction residual of the current point i, and Qs is the quantization step (Quantization step, Qs), which can be calculated from the quantization parameter QP (Quantization Parameter, QP) specified by CTC.

[0090] Step 4: Optimal prediction mode encoding:

[0091] For the encoding of the optimal prediction mode, G-PCC adopts a joint residual, prediction mode index encoding method, which puts the prediction mode index into the quantized prediction residual for joint encoding. Among them, the attribute information can include color attribute information and / or reflectivity attribute information, and the prediction residual can include color attribute residual and / or reflectivity attribute residual.

[0092] Among them, the color attribute residual includes the residual on the YCbCr three channels. Among them, Y represents the luminance channel; Cb (Chrominance), Cr (Chroma) represents the chrominance channel. The joint encoding method of the color attribute residual in the prediction residual and the prediction mode index can be as shown in Table 2 as follows:

[0093] Table 2

[0094] In Table 2, |res1'| represents the Cb channel joint residual obtained by jointly encoding the Cb channel residual and the prediction mode index, and |res2'| represents the Cr channel joint residual obtained by jointly encoding the Cr channel residual and the prediction mode index. |res1'| mod 2 represents the Cb channel joint residual modulo 2, and |res2'| mod 2 represents the Cr channel joint residual modulo 2. The two-bit fixed-length code is used to represent the four prediction mode indexes 0, 1, 2, and 3, which are 00, 01, 10, and 11, respectively. The relationship between the two-bit code of the prediction mode index and the Cb channel joint residual and the Cr channel joint residual can be shown in Table 2.

[0095] Given a tuple (res1, res2, sigIndex), where res1 represents the Cb channel residual in the color attribute residual, res2 represents the Cr channel residual in the color attribute residual, and sigIndex represents the two-bit code of the prediction mode index, the joint encoded residual information res1' on the Cb channel can be calculated by formula (5), and the joint encoded residual information res2' on the Cr channel can be calculated by formula (6), as follows: res1' = sign(res1) * (|res1| « 1 + sigIndex) » 1 formula (5) res2' = sign(res2) * (|res2| « 1 + sigIndex & 1) » 1 formula (6)

[0096] Taking the prediction mode index 2, the Cb channel residual value |res1| as 2 (i.e., '10'), and the Cr channel residual res2 as 3 (i.e., '11') as an example, the two-bit code sigIndex corresponding to the prediction mode index 2 is '10'. According to formula (5), the value of sigIndex (i.e., '10') is right-shifted by 1 bit to obtain the code value '1', and |res1| (i.e., '10') is left-shifted by 1 bit to obtain the code value '100'. Adding '100' and '1' together, the Cb channel joint residual |res1'| is obtained as '101'. The sign(res1) of formula (5) is the sign bit of the Cb channel residual.

[0097] Similarly, the code value '0' in '10' can be obtained by sigIndex & 1 according to equation (6); |res2| is left shifted by one bit to obtain '110', and '110' is added with '0' to obtain the joint residual |res2'| of Cr channel as '110'. The sign(res2) of equation (6) is the sign bit of the residual of Cr channel. It can be seen that the joint coding of color attribute residual and prediction mode index is equivalent to putting two bits of prediction mode index respectively after the residual of Cb channel and the residual of Cr channel to obtain new residual information.

[0098] With respect to the joint coding process of color attribute residual and prediction mode index, the decoder decodes the residual of Cb channel, the residual of Cr channel and the prediction mode index according to res1' and res2' respectively through the inverse operation process as equations (7)-(9). res1 = sign(res1') * (|res1'| » 1) equation (7) res2 = sign(res2') * (|res2'| » 1) equation (8) sigIndex = (|res1'| & 1) « 1 + (|res2'| & 1) equation (9)

[0099] For the reflectance attribute residual in the prediction residual, given (res, sigIndex), where res represents the reflectance attribute residual, the residual information res' of the joint coding of reflectance attribute residual and prediction mode index can be calculated as shown in equation (10) as follows: res' = sign(res) * (|res| « 2 + sigIndex) equation (10)

[0100] Exemplarily, taking the case of prediction mode index as 2, the corresponding two bits of sigIndex as '10', and the reflectance attribute residual res as 2 (i.e. '10') as an example, |res| is left shifted by two bits to obtain the code value '1010' by equation (10) and added with sigIndex. It can be seen that the joint coding of reflectance attribute and prediction mode index is equivalent to putting two bits of prediction mode index all after the reflectance attribute residual to obtain new residual information.

[0101] With respect to the joint coding process of reflectance attribute residual and prediction mode index, the decoder decodes the reflectance attribute residual and the prediction mode index according to res' through the inverse operation process as equations (11) and (12) as follows: res = sign(res') * (|res'| » 2) equation (11) sigIndex = res' & 3 equation (12)

[0102] Step 5: Encoding the reconstructed attribute value

[0103] The purpose of the encoding side reconstruction is to predict the subsequent points. Before reconstructing the attribute value, the residual is dequantized, denoted as the dequantized residual, as shown in equation (13):

[0104] and the predicted value is added to obtain the reconstructed value of point i as shown in equation (14):

[0105] It can be seen that in the current PT encoding scheme, after the LoD is constructed, according to the generation order of the LoD, the three nearest neighbor points of the current to-be-encoded point are first found from the encoded data points. Then the maximum attribute difference max_difference of the three candidate neighbors is calculated. If the value of max_difference is less than the adaptive threshold, it is considered that the three neighbor points are similar to the attribute value of the predicted point, and therefore mode 0 weighted prediction is adopted. If the value of max_difference is greater than the adaptive threshold, the optimal prediction value is selected from the four prediction modes according to RDO: among them, mode 0 is average prediction, and modes 1, 2, and 3 are the attribute reconstructed values of the three nearest neighbor points, which are used as the attribute prediction value of the current to-be-encoded point.

[0106] When G-PCC encodes the four prediction mode indexes, a method of jointly encoding residual and prediction mode index is used. Two fixed-length bits are used to represent the four prediction mode indexes (00, 01, 10, 11, respectively). If it is a color attribute residual, the two bits of the prediction mode index are placed after the color attribute residual (res1, res2), respectively. If it is a reflectance attribute residual, the two bits of the prediction mode index are all placed after the reflectance attribute residual, that is, the attribute residual is shifted and added to the bits of the prediction mode index to obtain new residual information, so as to be jointly entropy encoded. When the decoder decodes, the joint residual needs to be decoded first, and then the true residual and the prediction mode index are calculated. However, according to statistics, the encoder selects the weighted average prediction mode of mode 0 with a high probability, and selects the direct neighbor prediction of modes 1, 2, and 3 with a small probability. Therefore, for the encoding mode 0 with a high probability, using two fixed-bit lengths as the prediction mode index and the prediction residual for joint encoding will cause a large waste of code stream, reduce the encoding and decoding efficiency, and thus reduce the encoding and decoding performance.

[0107] Embodiments of the present application propose a prediction mode coding scheme based on truncated unary code. Unary code is used to represent the value to be coded by the number of '1's, and finally a '0' is added as a termination flag. Truncated unary code is a variant of unary code, which is used in the case where the maximum value to be coded is known. The maximum value is directly represented by the number of '1's, and the remaining values are still represented by unary code. Using truncated unary code, characters with a large probability of occurrence can be coded with shorter bits, and characters with a small probability of occurrence can be coded with longer bits, thereby enabling flexible adjustment during PT algorithm prediction mode coding and improving coding efficiency. Therefore, the coding methods of the four prediction modes after adjustment using truncated unary code are shown in Table 3 as follows:

[0108] Table 3

[0109] It can be seen that the embodiments of the present application propose to use truncated unary code as an index to represent the prediction mode. The encoder determines a plurality of neighboring points of the current point in the reconstructed points of the current point cloud; determines the attribute prediction residual of the current point and the prediction mode index value of the current point based on a plurality of attribute reconstruction values of the plurality of neighboring points; determines the truncated unary code corresponding to the prediction mode index value, and determines the joint residual of the current point based on the attribute prediction residual and the truncated unary code; and encodes the joint residual and writes the obtained coding bits into the code stream. Correspondingly, the decoder decodes the code stream to determine the joint residual of the current point in the current point cloud; determines the attribute prediction residual and the truncated unary code of the current point based on the joint residual; determines the prediction mode index value of the current point based on the truncated unary code; and determines the attribute reconstruction value of the current point based on the prediction mode index value of the current point and the attribute prediction residual. In this way, the prediction mode index 0 with the highest probability of occurrence only needs 1 bit for coding and decoding, which can improve the coding and decoding efficiency and thus improve the coding and decoding performance.

[0110] Embodiments of the present application also provide a mesh architecture of a coding and decoding system comprising a decoding method and a coding method. FIG. 4 is a schematic diagram of a coding and decoding mesh architecture provided by an embodiment of the present application. As shown in FIG. 4, the mesh architecture comprises one or more electronic devices 14 to 1N and a communication mesh 01, wherein the electronic devices 14 to 1N can perform video interaction through the communication mesh 01. The electronic devices can be various types of devices with coding and decoding functions in the implementation process, for example, the electronic devices can include mobile phones, tablet computers, personal computers, personal digital assistants, navigation devices, digital phones, video phones, televisions, sensing devices, servers, etc., which are not limited here.

[0111] Here, the decoder or encoder described in the embodiments of the present application can be the above-mentioned electronic device.

[0112] The point cloud coding method applied to the encoder provided by the embodiments of the present application is described below.

[0113] Referring to FIG. 5, FIG. 5 is an optional flowchart of an encoding method according to an embodiment of the present application. The steps shown in FIG. 5 will be described in conjunction with the steps shown in FIG. 5.

[0114] S101, in the reconstructed points of the current point cloud, a plurality of neighboring points of the current point are determined.

[0115] In the embodiments of the present application, the current point cloud is a point cloud containing the current point, and the current point includes a current to-be-encoded point; the reconstructed points of the current point cloud include points in the current point cloud that have completed encoding and reconstruction.

[0116] In some embodiments, the current point cloud is divided, and at least one level of detail (LoD) corresponding to the current point cloud is determined; the plurality of neighboring points are determined from the reconstructed points of the current point cloud according to the generation order of the at least one level of detail.

[0117] For example, three neighboring points can be determined from the reconstructed points of the current point cloud, including the nearest neighbor point of the current point, the second nearest neighbor point of the current point, and the third nearest neighbor point of the current point.

[0118] S102, based on a plurality of attribute reconstruction values of the plurality of neighboring points, an attribute prediction residual of the current point and a prediction mode index value of the current point are determined.

[0119] In the embodiments of the present application, the plurality of neighboring points are all reconstructed points, and the plurality of attribute reconstruction values are obtained according to the attribute reconstruction value of each neighboring point in the plurality of neighboring points.

[0120] In some embodiments, a maximum attribute difference value of the plurality of neighboring points can be determined based on the plurality of attribute reconstruction values of the plurality of neighboring points; and the attribute prediction residual and the prediction mode index value are determined based on the maximum attribute difference value and the plurality of attribute reconstruction values of the plurality of neighboring points.

[0121] In some embodiments, the prediction mode index value includes a preset index value corresponding to an optimal prediction mode of the current point determined from a plurality of preset prediction modes. For example, in the case where the maximum attribute difference value is greater than or equal to a preset adaptive threshold, it indicates that the attribute values of the plurality of neighboring points and the current point differ greatly, and the optimal prediction mode of the current point needs to be determined by comparing distortion costs of the plurality of prediction modes. In some embodiments, in the case where the maximum attribute difference value is greater than or equal to the preset adaptive threshold, a plurality of distortion costs corresponding to the plurality of prediction modes are determined; the plurality of prediction modes include a prediction mode based on weighted average prediction of the plurality of attribute reconstruction values, and a prediction mode based on prediction of one attribute reconstruction value in the plurality of attribute reconstruction values; the prediction mode index value is determined based on the plurality of distortion costs; and the attribute prediction residual corresponding to the current point is determined according to the attribute prediction value corresponding to the prediction mode index value and the original attribute value of the current point.

[0122] Exemplarily, in a case that the maximum attribute difference value is greater than or equal to a preset adaptive threshold, rate distortion costs corresponding to the following prediction modes are respectively calculated:

[0123] a prediction mode (a first prediction mode) of performing weighted average prediction on the plurality of attribute reconstruction values to obtain the attribute prediction value of the current point, a prediction mode (a second prediction mode) of taking the attribute reconstruction value of the first neighbor point in the plurality of neighbor points as the attribute prediction value of the current point, a prediction mode (a third prediction mode) of taking the attribute reconstruction value of the second neighbor point in the plurality of neighbor points as the attribute prediction value of the current point, and a prediction mode (a fourth prediction mode) of taking the attribute reconstruction value of the third neighbor point in the plurality of neighbor points as the attribute prediction value of the current point.

[0124] Exemplarily, the distortion cost can include a rate distortion cost, or can include a distortion cost determined by other cost functions, and the embodiments of the present application are not limited thereto.

[0125] From the four rate distortion costs corresponding to the first prediction mode, the second prediction mode, the third prediction mode and the fourth prediction mode, a minimum rate distortion cost is determined, and a prediction mode corresponding to the minimum rate distortion cost is determined as the prediction mode of the current point. A prediction mode index value corresponding to the prediction mode of the current point is determined from a preset correspondence between the prediction mode and the index value. Exemplarily, the preset correspondence between the prediction mode and the index value includes: the index value corresponding to the first prediction mode is a first preset value; the index value corresponding to the second prediction mode is a second preset value; the index value corresponding to the third prediction mode is a third preset value; and the index value corresponding to the fourth prediction mode is a fourth preset value. The preset first value can be 0, the preset second value can be 1, the preset third value can be 2, and the preset fourth value can be 3. If the prediction mode of the current point is the second prediction mode, the prediction mode index value of the current point is 2.

[0126] Since the prediction mode index value represents the optimal prediction mode selected based on rate distortion optimization, the attribute prediction value corresponding to the prediction mode index value is taken as the attribute prediction value corresponding to the current point, and residual error calculation is performed according to the attribute prediction value corresponding to the prediction mode index value and the original attribute value of the current point to determine the attribute prediction residual error corresponding to the current point.

[0127] S103, a truncated unary code corresponding to the prediction mode index value is determined, and a joint residual error of the current point is determined based on the attribute prediction residual error and the truncated unary code.

[0128] In the embodiments of the present application, the truncated unary code is used to represent the prediction mode index value. For the prediction mode index value determined in S102, the prediction mode index value is converted into the truncated unary code, and the truncated unary code corresponding to the prediction mode index value is determined. The truncated unary code includes at least one code value. The at least one code value of the truncated unary code is jointly coded with the attribute prediction residual to determine the joint residual of the current point. For example, according to the correspondence between the prediction mode index value and the truncated unary code in Table 3, the truncated unary code corresponding to the prediction mode index value of the current point can be determined.

[0129] In some embodiments, the prediction mode index value is converted into the truncated unary code based on the prediction mode index value and a preset index maximum value. For example, the preset index maximum value can be 3.

[0130] In some embodiments, the attribute prediction residual can include a color attribute residual corresponding to the color attribute of the current point, and a reflectance attribute residual corresponding to the reflectance attribute of the current point. In the following, the process of jointly coding the color attribute residual and the truncated unary code corresponding to the prediction mode index value, and the process of jointly coding the reflectance attribute residual and the truncated unary code corresponding to the prediction mode index value are described.

[0131] For the color attribute residual, the color attribute residual includes at least one color channel residual corresponding to at least one color channel of the color attribute. The joint residual of the current point corresponds to at least one channel joint residual corresponding to at least one color channel. The encoder determines the at least one color channel residual corresponding to the color attribute residual; based on the prediction mode index value, each code value of the at least one code value in the truncated unary code is combined with one color channel residual in the at least one color channel residual in turn to determine the at least one channel joint residual corresponding to the at least one color channel.

[0132] In some embodiments, the at least one color channel comprises: a first color channel and / or a second color channel; wherein the first color channel comprises a Chrominanc-blue channel; the second color channel comprises a Chrominance-red channel; or the first color channel comprises a Chrominance channel; the second color channel comprises a Chroma channel. The at least one color channel residual comprises: a first color channel residual corresponding to the first color channel among the at least one color channel, and / or a second color channel residual corresponding to the second color channel among the at least one color channel. Illustratively, the at least one color channel comprises Cb and Cr channels among YCbCr three channels; wherein the first color channel corresponds to the Cb channel; the second color channel corresponds to the Cr channel. Since different prediction mode index values correspond to different truncated unary codes, for at least one bit value in the truncated unary code corresponding to the prediction mode index value of the current point, each bit value is combined with one color channel residual among the at least one color channel residual in turn by a shift operation and a bit addition, to determine at least one channel joint residual corresponding to the at least one color channel.

[0133] In some embodiments, in a case where the prediction mode index value comprises a preset first value, the first color channel residual is left shifted by one bit, and the first channel joint residual corresponding to the first color channel is determined by combining the first color channel residual left shifted by one bit with a truncated unary code of one bit value corresponding to the preset first value.

[0134] Or, in some embodiments, in a case where the prediction mode index value comprises a preset first value, the second color channel residual is left shifted by one bit, and the second channel joint residual corresponding to the second color channel is determined by combining the second color channel residual left shifted by one bit with a truncated unary code of one bit value corresponding to the preset first value.

[0135] In the preset first value is used to represent a prediction mode that the attribute prediction value of the current point is determined by weighted average of the plurality of attribute reconstruction values of the plurality of neighboring points. For example, the preset first value can be 0. In the case of the prediction mode index value being 0, the truncated unary code corresponding to 0 is 0, which contains a one-bit code value, i.e., one bit. Therefore, the first color channel residual can be left shifted by one bit, which is equivalent to adding one bit of 0 after the original first color channel residual, adding the one-bit code value (‘0’) of the truncated unary code to the first color channel residual left shifted by one bit, and adding the one-bit code value (‘0’) at the end of the first color channel residual left shifted by one bit, so as to determine the first channel joint residual corresponding to the first color channel by combining the first color channel residual left shifted by one bit and the one-bit code value. Alternatively, the second color channel residual can also be left shifted by one bit, and the one-bit code value of the truncated unary code is combined with the second color channel residual left shifted by one bit to determine the second channel joint residual corresponding to the second color channel. It can be seen that in the case of the prediction mode index value including the preset first value, the one-bit code value of the truncated unary code (index0) corresponding to the preset first value is added after the first color channel residual (res1) to obtain the first channel joint residual, or the one-bit code value of the truncated unary code (index0) is added after the second color channel residual (res2) to obtain the second channel joint residual, as shown in FIG. 6A and FIG. 6B.

[0136] For example, the first color channel residual is 2 (corresponding to the bit data ‘10’), and in the case of the prediction mode index value of the current point being 0, the first color channel residual left shifted by one bit is added to the truncated unary code (one bit of ‘0’) to determine the first channel joint residual as ‘100’.

[0137] In some embodiments, in the case of the prediction mode index value including the preset second value, the following operations are performed to determine the at least one channel joint residual:

[0138] The second color channel residual is left shifted by one bit, and the first bit code value of the truncated unary code is combined with the second color channel residual left shifted by one bit to determine the second channel joint residual corresponding to the second color channel;

[0139] The first color channel residual is left shifted by one bit, and the second bit code value of the truncated unary code is combined with the first color channel residual left shifted by one bit to determine the first channel joint residual corresponding to the first color channel.

[0140] Alternatively, the first color channel residual can also be left shifted by one bit, and the first bit code value of the truncated unary code is combined with the first color channel residual left shifted by one bit to determine the first channel joint residual corresponding to the first color channel;

[0141] The second color channel residual is left shifted by one bit, and the second channel joint residual corresponding to the second color channel is determined by combining the second color channel residual left shifted by one bit with the second bit code value of the truncated unary code.

[0142] The preset second value represents a prediction mode of determining the attribute prediction value of the current point based on the attribute reconstruction value of the first neighbor point of the current point among the plurality of neighbor points. For example, the preset second value can be 1, representing that the attribute prediction value of the current point is determined according to the attribute reconstruction value of the first neighbor point among the three neighbor points around the current point. In the case where the prediction mode index value of the current point is 1, the corresponding truncated unary code is '01', which contains two bit code values, i.e., two bits. That is, in the case where the prediction mode index value includes the preset second value, the first bit code value of the truncated unary code is 0, and the second bit code value is 1. In this case, the two bits can be combined with the first color channel residual and the second color channel residual respectively to obtain the first channel joint residual and the second channel joint residual.

[0143] For example, the second color channel residual is left shifted by one bit, which is equivalent to adding a bit of 0 after the original second color channel residual. The first bit code value (such as '0' in 01) of the two bit code values of the truncated unary code is added to the last bit of the second color channel residual left shifted by one bit, so as to combine the second color channel residual left shifted by one bit with the first bit code value of the truncated unary code, and determine the second channel joint residual corresponding to the second color channel. In addition, the first color channel residual is left shifted by one bit, and the second bit code value (such as '1' in 01) of the two bit code values of the truncated unary code is added to the last bit of the first color channel residual left shifted by one bit, so as to combine the first color channel residual left shifted by one bit with the second bit code value of the truncated unary code, and determine the first channel joint residual corresponding to the first color channel.

[0144] Alternatively, the first color channel residual is left shifted by one bit, which is equivalent to appending one bit of 0 after the original first color channel residual, the first color channel residual left shifted by one bit is added with the first bit code value (e.g., '0' in '01') of the two bit code value of the truncated unary code, and the first bit code value ('0') is added at the end of the first color channel residual left shifted by one bit, so as to determine the first channel joint residual corresponding to the first color channel by combining the first color channel residual left shifted by one bit and the first bit code value of the truncated unary code. Further, the second color channel residual is left shifted by one bit, and the second color channel residual left shifted by one bit is added with the second bit code value (e.g., '1' in '01') of the truncated unary code, and the second bit code value ('1') is added at the end of the second color channel residual left shifted by one bit, so as to determine the second channel joint residual corresponding to the second color channel by combining the second color channel residual left shifted by one bit and the second bit code value of the truncated unary code. It can be seen that, in the case where the prediction mode index value includes the preset second value, it is equivalent to that the first bit code value (index0) of the truncated unary code corresponding to the preset second value is added after the second color channel residual (res2) to obtain the second channel joint residual, and the second bit code value (index1) of the truncated unary code is added to the first color channel residual (res1) to obtain the first channel joint residual, or, as shown in FIG. 7B, the first bit code value (index0) of the truncated unary code is added after the first color channel residual (res1) to obtain the first channel joint residual, and the second bit code value (index1) of the truncated unary code is added to the second color channel residual (res2) to obtain the second channel joint residual.

[0145] For example, the first color channel residual is 2 (corresponding to bit data '10'), the second color channel residual is 3 (corresponding to bit data '11'), and the prediction mode index value at the current point is 1, so the truncated unary code is '01'. The second color channel residual '11' is left shifted by one bit to obtain '110', the second color channel residual left shifted by one bit '110' is added with the first bit code value '0' of the truncated unary code '01', and the second channel joint residual is determined to be '110'; the first color channel residual '10' is left shifted by one bit to obtain '100', the first color channel residual left shifted by one bit '100' is added with the second bit code value '1' of the truncated unary code '01', and the first channel joint residual is determined to be '100'.

[0146] In some embodiments, in the case where the prediction mode index value includes a preset third value or a preset fourth value, the following operations are performed to determine the at least one channel joint residual:

[0147] The first color channel residual is left shifted by one bit, and the first color channel residual left shifted by one bit is combined with the first bit code value of the truncated unary code to determine the initial first channel joint residual corresponding to the first color channel;

[0148] left-shifting the second color channel residual by one bit, and combining the left-shifted second color channel residual with the second bit code value of the truncated unary code, to determine a second channel joint residual corresponding to the second color channel;

[0149] left-shift the initial first channel joint residual by one bit, and combine the left-shifted initial first channel joint residual with the third bit code value of the truncated unary code, to determine a first channel joint residual corresponding to the first color channel; wherein,

[0150] The preset third value represents a prediction mode of determining the attribute prediction value of the current point by using the attribute reconstruction value of the second nearest neighbor point of the three nearest neighbor points; and the preset fourth value represents a prediction mode of determining the attribute prediction value of the current point by using the attribute reconstruction value of the third nearest neighbor point of the three nearest neighbor points.

[0151] Alternatively,

[0152] In a case where the prediction mode index value includes the preset third value or the preset fourth value, the following operations are performed to determine the at least one channel joint residual:

[0153] left-shift the first color channel residual by one bit, and combine the left-shifted first color channel residual with the first bit code value of the truncated unary code, to determine a first channel joint residual corresponding to the first color channel;

[0154] left-shift the second color channel residual by one bit, and combine the left-shifted second color channel residual with the second bit code value of the truncated unary code, to determine an initial second channel joint residual corresponding to the second color channel;

[0155] left-shift the initial second channel joint residual by one bit, and combine the left-shifted initial second channel joint residual with the third bit code value of the truncated unary code, to determine a second channel joint residual corresponding to the second color channel;

[0156] The preset third value represents a prediction mode of determining the attribute prediction value of the current point by using the attribute reconstruction value of the second nearest neighbor point of the three nearest neighbor points; and the preset fourth value represents a prediction mode of determining the attribute prediction value of the current point by using the attribute reconstruction value of the third nearest neighbor point of the three nearest neighbor points.

[0157] Here, in a case where the prediction mode index value includes the preset third value or the preset fourth value, the truncated unary code corresponding to the prediction mode index value includes three bit code values (3-bit length). Each bit code value in the three bit code values is combined with the first color channel residual and the second color channel residual in sequence, respectively, to determine the first channel joint residual and the second channel joint residual.

[0158] In some embodiments, when the prediction mode index value comprises a preset third value, the first bit code value of the truncated unary code is 0, the second bit code value is 1, and the third bit code value is 1; when the prediction mode index value comprises a preset fourth value, the first bit code value of the truncated unary code is 1, the second bit code value is 1, and the third bit code value is 1. Exemplarily, the prediction third value can be 2. The prediction fourth value can be 3. That is, the truncated unary code corresponding to the prediction mode index value 2 is '011'; the truncated unary code corresponding to the prediction mode index value 3 is '111'. When the prediction mode index value is 2 or 3, the first bit code value of the truncated unary code can be combined with the first color channel residual, the second bit code value of the truncated unary code can be combined with the second color channel residual, and the third bit code value of the truncated unary code can be combined with the first color channel residual combined with the first bit code value; or, the third bit code value of the truncated unary code can be combined with the second color channel residual combined with the second bit code value, so as to determine the first channel joint residual corresponding to the first color channel and the second channel joint residual corresponding to the second color channel.

[0159] Exemplarily, when the prediction mode index value comprises 2 or 3, the first color channel residual is left shifted by one bit, which is equivalent to adding one bit of 0 after the original first color channel residual, the first bit code value (index0) in the three bit code values of the truncated unary code is added to the left shifted first color channel residual, and the first bit code value (index0) is added to the last bit of the left shifted first color channel residual, so as to combine the left shifted first color channel residual and the first bit code value (index0) of the truncated unary code, and determine the initial first channel joint residual corresponding to the first color channel. The second color channel residual is left shifted by one bit, the second bit code value (index1) of the truncated unary code is added to the left shifted second color channel residual, and the second bit code value (index1) is added to the last bit of the left shifted second color channel residual, so as to combine the left shifted second color channel residual and the second bit code value of the truncated unary code, and determine the second channel joint residual corresponding to the second color channel; the initial first channel joint residual corresponding to the first color channel is left shifted by one bit, and the third bit code value (index2) of the truncated unary code is combined with the left shifted initial first channel joint residual, so as to determine the first channel joint residual corresponding to the first color channel. The data structure of the truncated unary code obtained by the above process can be as shown in FIG. 8A.

[0160] Alternatively, in the case that the prediction mode index value includes 2 or 3, the first color channel residual is left shifted by one bit, which is equivalent to appending one bit of 0 after the original first color channel residual, the first color channel residual left shifted by one bit is added to the first bit value (index0) in the three bit values of the truncated unary code, and the first bit value (index0) is added to the last bit of the first color channel residual left shifted by one bit, so as to determine the first channel joint residual corresponding to the first color channel in combination with the first color channel residual left shifted by one bit and the first bit value (index0) of the truncated unary code. The second color channel residual is left shifted by one bit, the second color channel residual left shifted by one bit is added to the second bit value (index1) of the truncated unary code, and the second bit value (index1) is added to the last bit of the second color channel residual left shifted by one bit, so as to determine the initial second channel joint residual corresponding to the second color channel in combination with the second color channel residual left shifted by one bit and the second bit value of the truncated unary code; the initial second channel joint residual is left shifted by one bit, and the initial second channel joint residual left shifted by one bit is added to the third bit value (index2) of the truncated unary code to determine the second channel joint residual corresponding to the second color channel. The data structure of the truncated unary code obtained through the above process can be as shown in FIG. 8B.

[0161] It should be noted that res0 in FIGS. 6A-8B above represents the third color channel residual corresponding to the third color channel in at least one color channel. Exemplarily, the third color channel residual res0 can include a Y channel, that is, a luminance channel residual.

[0162] Exemplarily, a flowchart of an attribute encoding process of an encoder provided by an embodiment of the present application can be as shown in FIG. 9. For an original point cloud, that is, a current point cloud, three nearest neighbor points of the current point are found from the reconstructed points according to the generation order of LoD; the maximum attribute difference value of the three nearest neighbor points is calculated, and if the maximum attribute difference value is less than a preset adaptive threshold, it is determined that the prediction mode corresponding to the current point is mode 0, and the attribute prediction value corresponding to the current point is obtained by using weighted average prediction of the three nearest neighbor points; if the maximum attribute difference value is greater than the preset adaptive threshold, the best prediction mode is selected from the four prediction modes based on the distortion cost to perform attribute prediction, the attribute prediction residual is obtained by subtracting the attribute prediction value of the current point obtained by prediction from the original attribute value of the current point, the truncated unary code of the prediction mode index value corresponding to the optimal prediction mode is jointly entered into the attribute prediction residual for joint entropy encoding according to the truncated unary code index table provided by the embodiment of the present application, and an attribute code stream is formed. The truncated unary code index table in FIG. 9 can include a corresponding relationship table of the prediction mode index value and the truncated unary code, and exemplarily, as shown in Table 3.

[0163] In some embodiments, in the case that the prediction mode index value is greater than a preset second value, the following operations are performed:

[0164] determining a first bit code value of the truncated unary code corresponding to the prediction mode index value according to a difference between the prediction mode index value and a preset third value;

[0165] left-shifting the first color channel residual by one bit, and determining an initial first channel joint residual corresponding to the first color channel according to a sum of the left-shifted first color channel residual by one bit and the first bit code value;

[0166] determining a second bit code value of the truncated unary code corresponding to the prediction mode index value according to whether a difference between the prediction mode index value and a preset second value is greater than 0; in a case where the difference between the prediction mode index value and the preset second value is greater than 0, the second bit code value is 1; in a case where the difference between the prediction mode index value and the preset second value is not greater than 0, the second bit code value is 0;

[0167] left-shifting the second color channel residual by one bit, and determining a second channel joint residual corresponding to the second color channel according to a sum of the left-shifted second color channel residual by one bit and the second bit code value;

[0168] determining a third bit code value of the truncated unary code corresponding to the prediction mode index value according to whether the prediction mode index value is greater than a preset first value; the preset first value is less than the preset second value; in a case where the prediction mode index value is greater than the preset first value, the third bit code value takes a value of 1;

[0169] left-shifting the initial first channel joint residual by one bit, and determining a first channel joint residual corresponding to the first color channel according to a sum of the left-shifted initial first channel joint residual by one bit and the third bit code value.

[0170] In some embodiments, in a case where the prediction mode index value is not greater than the preset second value and is greater than the preset first value, the following operations are performed:

[0171] determining a first bit code value of the truncated unary code corresponding to the prediction mode index value according to whether a difference between the prediction mode index value and a preset second value is greater than 0; in a case where the difference between the prediction mode index value and the preset second value is greater than 0, the first bit code value is 1; in a case where the difference between the prediction mode index value and the preset second value is not greater than 0, the first bit code value is 0;

[0172] left-shifting the second color channel residual by one bit, and determining a second channel joint residual corresponding to the second color channel according to a sum of the left-shifted second color channel residual by one bit and the first bit code value;

[0173] determining a second bit code value of the truncated unary code corresponding to the prediction mode index value according to whether the prediction mode index value is greater than a preset first value; in a case where the prediction mode index value is greater than the preset first value, the second bit code value takes a value of 1;

[0174] left-shifting the first color channel residual by one bit, and determining the first channel joint residual corresponding to the first color channel according to a sum of the left-shifted first color channel residual by one bit and the second bit code value.

[0175] In some embodiments, in the case that the prediction mode index value is not greater than the preset first value, the following operations are performed:

[0176] determining a one-bit code value of the truncated unary code corresponding to the prediction mode index value according to whether the prediction mode index value is greater than the preset first value; in the case that the prediction mode index value is not greater than the preset first value, the code value takes a value of 0;

[0177] left-shifting the first color channel residual by one bit, and determining the first channel joint residual corresponding to the first color channel according to a sum of the left-shifted first color channel residual by one bit and the one-bit code value.

[0178] Exemplarily, in the case that the at least one color channel residual and the prediction mode index value are determined, the code syntax description of the process of calculating the at least one channel joint residual corresponding to the at least one color channel can be as follows, where mode represents the prediction mode index value sigIndex; coeffAbsk1 represents the first color channel residual (such as the Cb channel residual res1); coeffAbsk2 represents the second color channel residual (the Cr channel residual res2); coeff[1] represents the joint coded residual information res1’ on the first color channel (such as the Cb channel); coeff[2] represents the joint coded residual information res2’ on the second color channel (the Cr channel); and the code syntax description is as follows:

[0179] if (mode > 1) / / mode is greater than 1, including two cases of the prediction mode index value being 2 or 3, that is, in the case that the prediction mode index is 2 or 3, the next sentence is executed

[0180] coeffAbsk1 = ((coeffAbsk1 « 1) + (mode - 2)); / / left shift the first color channel residual by one bit, add the result of (mode - 2) to the left shifted first color channel residual, update the assignment of the first color channel residual, which is equivalent to determining the initial first channel joint residual corresponding to the first color channel; wherein, for mode = 2, the result of (mode - 2) is 0, that is, the first bit code value '0' of the truncated unary code '011' corresponding to the prediction mode index value '2' is combined with the left shifted first color channel residual to determine the initial first channel joint residual corresponding to the first color channel; for mode = 3, the result of (mode - 2) is 1, that is, the first bit code value '1' of the truncated unary code '111' corresponding to the prediction mode index value '3' is combined with the left shifted first color channel residual to determine the initial first channel joint residual corresponding to the first color channel;

[0181] if (mode > 0) / / mode is greater than 0, including three cases of prediction mode index values 1, 2 or 3, that is, when the prediction mode index value is 1, 2 or 3, the next sentence is executed;

[0182] coeffAbsk2 = ((coeffAbsk2 « 1) + ((mode - 1) > 0)); / / left shift the second color channel residual by one bit, add the logical judgment result of (mode - 1) greater than 0 to the left shifted second color channel residual to determine the second channel joint residual corresponding to the second color channel. Wherein, the logical judgment result of (mode - 1) greater than 0 is 1 when it is greater than 0, and 0 when it is not greater than 0. For example, when mode = 3 or mode = 2, (mode - 1) is greater than 0, which is equivalent to combining the second bit code value '1' of the truncated unary code '011' corresponding to the prediction mode index value '2' with the left shifted second color channel residual to determine the second channel joint residual corresponding to the second color channel; or, combining the second bit code value '1' of the truncated unary code '111' corresponding to the prediction mode index value '3' with the left shifted second color channel residual to determine the second channel joint residual corresponding to the second color channel. When mode = 1, (mode - 1) is not greater than 0, which is equivalent to combining the first bit code value '0' in the truncated unary code '01' corresponding to the prediction mode index value '1' with the left shifted second color channel residual to determine the second channel joint residual corresponding to the second color channel.

[0183] coeffAbsk1 = ((coeffAbsk1 « 1) + (mode > 0)); / / this statement is not in the scope of the above two if statements, that is, when the prediction mode index value is any one of 0, 1, 2, 3, this statement is executed. For prediction mode index values 2 and 3, the value of coeffAbsk1 at this time is the initial first channel joint residual; for prediction mode index values 1 and 0, the value of coeffAbsk1 at this time is the first color channel residual. The first color channel residual or the initial first channel joint residual is left shifted by one bit, and the left shifted first color channel residual or the initial first channel joint residual is added to the logical judgment result of mode greater than 0 to determine the first channel joint residual corresponding to the first color channel. Among them, for prediction mode index values 1, 2 and 3, the logical judgment result of mode greater than 0 is 1, which is equivalent to combining the third code value '1' of the truncated unary code '011' corresponding to the prediction mode index value '2' with the left shifted initial first channel joint residual to determine the first channel joint residual corresponding to the first color channel; the third code value '1' of the truncated unary code '111' corresponding to the prediction mode index value '3' is combined with the left shifted initial first channel joint residual to determine the first channel joint residual corresponding to the first color channel; in this way, the data structure of the prediction mode index value '2' and the prediction mode index value '3' as shown in FIG. 8A is obtained. It is equivalent to combining the second code value '1' of the truncated unary code '01' corresponding to the prediction mode index value '1' with the left shifted first color channel residual to determine the first channel joint residual corresponding to the first color channel, in this way, the data structure of the prediction mode index value '1' as shown in FIG. 7A is obtained. For prediction mode index value '0', the logical judgment result of mode greater than 0 is 0, which is equivalent to combining the one-bit code value truncated unary code '0' corresponding to the prediction mode index value '0' with the left shifted first color channel residual to determine the first channel joint residual corresponding to the first color channel, in this way, the data structure of the prediction mode index value '0' as shown in FIG. 6A is obtained.

[0184] coeff[1] = signk1 * coeffAbsk1; / / add the original sign bit of the first color channel residual to the first channel joint residual coeffAbsk1 as the residual information of the joint coding corresponding to the first color channel;

[0185] coeff[2] = signk2 * coeffAbsk2; / / add the original sign bit of the second color channel residual to the second channel joint residual coeffAbsk2 as the residual information of the joint coding corresponding to the second color channel;

[0186] break;

[0187] The joint coding of the reflectance attribute residual is introduced below. For the reflectance attribute residual, a truncated unary code is combined with the reflectance attribute residual to determine a joint residual.

[0188] In some embodiments, according to the length of the truncated unary code corresponding to the prediction mode index value, the number of bits N by which the reflectance attribute residual is left shifted is determined; the reflectance attribute residual is left shifted by N bits, and the left shifted reflectance attribute residual is combined with the truncated unary code to determine the joint residual. Exemplarily, when the prediction mode index value is 2 or 3, the truncated unary code contains a 3-bit code value, and the length is 3. The reflectance attribute residual is left shifted by 3 bits, and then the 3-bit truncated unary code is added, which is equivalent to directly adding the truncated unary code after the reflectance attribute residual to determine the joint residual corresponding to the reflectance attribute.

[0189] In some embodiments, in the case where the prediction mode index value includes a preset first value, the reflectance attribute residual is left shifted by one bit, and the left shifted reflectance attribute residual is combined with the truncated unary code of a one-bit code value to determine the joint residual.

[0190] Exemplarily, in the case where the prediction mode index value includes a preset first value, such as when the prediction mode index value is 0, the truncated unary code corresponding to the prediction mode index value '0' is a one-bit code value '0'. The reflectance attribute residual is left shifted by one bit, and the left shifted reflectance attribute residual is combined with the truncated unary code of a one-bit code value '0' to determine the joint residual corresponding to the reflectance attribute.

[0191] In some embodiments, in the case where the prediction mode index value includes a preset second value, the reflectance attribute residual is left shifted by one bit, and the left shifted reflectance attribute residual is combined with the first bit code value in the truncated unary code to determine an initial joint residual; the initial joint residual is left shifted by one bit, and the left shifted initial joint residual is combined with the second bit code value in the truncated unary code to determine the joint residual.

[0192] Exemplarily, in the case where the prediction mode index value includes a preset second value, such as when the prediction mode index value is 1, the truncated unary code corresponding to the prediction mode index value '1' is '01'. The reflectance attribute residual is left shifted by one bit, and the left shifted reflectance attribute residual is combined with the first bit code value '0' in the truncated unary code '01' to determine an initial joint residual. The initial joint residual is left shifted by one bit, and the left shifted initial joint residual is combined with the second bit code value '1' in the truncated unary code '01' to determine the joint residual. This is equivalent to left shifting the reflectance attribute residual by two bits and combining the truncated unary code of the two-bit code value corresponding to the prediction mode index value being the preset second value to determine the joint residual corresponding to the reflectance attribute.

[0193] In some embodiments, when the prediction mode index value comprises a preset third value or a preset fourth value, the reflectance attribute residual is left shifted by one bit, and the initial joint residual is determined in combination with the first bit code value in the truncated unary code and the left shifted reflectance attribute residual; the initial joint residual is left shifted by one bit, and the intermediate joint residual is determined in combination with the second bit code value in the truncated unary code and the left shifted initial joint residual; the intermediate joint residual is left shifted by one bit, and the joint residual is determined in combination with the third bit code value in the truncated unary code and the left shifted intermediate joint residual.

[0194] For example, when the prediction mode index value comprises a preset third value, such as the prediction mode index value being 2, the truncated unary code corresponding to the prediction mode index value '2' is '011'. The reflectance attribute residual is left shifted by one bit, and the initial joint residual is determined in combination with the first bit code value '0' in the truncated unary code '011' and the left shifted reflectance attribute residual; the initial joint residual is left shifted by one bit, and the intermediate joint residual is determined in combination with the second bit code value '1' in the truncated unary code '011' and the left shifted initial joint residual; the intermediate joint residual is left shifted by one bit, and the joint residual corresponding to the reflectance attribute is determined in combination with the third bit code value '1' in the truncated unary code '011' and the left shifted intermediate joint residual.

[0195] For example, when the prediction mode index value comprises a preset fourth value, such as the prediction mode index value being 3, the truncated unary code corresponding to the prediction mode index value '3' is '111'. The reflectance attribute residual is left shifted by one bit, and the initial joint residual is determined in combination with the first bit code value '1' in the truncated unary code and the left shifted reflectance attribute residual; the initial joint residual is left shifted by one bit, and the intermediate joint residual is determined in combination with the second bit code value '1' in the truncated unary code '111' and the left shifted initial joint residual; the intermediate joint residual is left shifted by one bit, and the joint residual corresponding to the reflectance attribute is determined in combination with the third bit code value '1' in the truncated unary code '111' and the left shifted intermediate joint residual.

[0196] In some embodiments, in the case that the prediction mode index value is greater than a preset second value, a first bit code value of the truncated unary code corresponding to the prediction mode index value is determined according to a difference between the prediction mode index value and a preset third value; the reflectance attribute residual is left shifted by one bit, and an initial joint residual is determined by combining the reflectance attribute residual left shifted by one bit and the first bit code value; in the case that the prediction mode index value is greater than a preset first value, a second bit code value of the truncated unary code corresponding to the prediction mode index value is determined according to whether the difference between the prediction mode index value and the preset second value is greater than 0; the preset second value is greater than the preset first value; the second bit code value is 1 when the difference between the prediction mode index value and the preset second value is greater than 0; the second bit code value is 0 when the difference between the prediction mode index value and the preset second value is not greater than 0; the initial joint residual is left shifted by one bit, and a joint residual is determined by combining the initial joint residual left shifted by one bit and the second bit code value; the first bit code value of the truncated unary code corresponding to the prediction mode index value is determined according to whether the prediction mode index value is greater than the preset first value; the first bit code value is 1 when the prediction mode index value is greater than the preset first value; the first bit code value is 0 when the prediction mode index value is not greater than the preset first value; and the joint residual is determined according to the intermediate joint residual left shifted by one bit and the first bit code value.

[0197] In some embodiments, in the case that the prediction mode index value is greater than a preset first value and not greater than a preset second value, a first bit code value of the truncated unary code corresponding to the prediction mode index value is determined according to whether the difference between the prediction mode index value and the preset second value is greater than 0; the reflectance attribute residual is left shifted by one bit, and an initial joint residual is determined by combining the reflectance attribute residual left shifted by one bit and the first bit code value; a second bit code value of the truncated unary code corresponding to the prediction mode index value is determined according to whether the prediction mode index value is greater than the preset first value; and the joint residual is determined by left shifting the initial joint residual by one bit and combining the initial joint residual left shifted by one bit and the second bit code value.

[0198] In some embodiments, in the case that the prediction mode index value is not greater than a preset first value, a bit code value of the truncated unary code corresponding to the prediction mode index value is determined according to whether the prediction mode index value is greater than the preset first value; the code value is 0 in the case that the prediction mode index value is not greater than the preset first value; and the joint residual is determined by left shifting the reflectance attribute residual by one bit and combining the reflectance attribute residual left shifted by one bit and the bit code value.

[0199] Exemplarily, the code description of the process of determining the joint residual corresponding to the reflectance attribute can be as follows. Wherein, mode represents the prediction mode index value sigIndex; coeffAbs represents the reflectance attribute residual (res); and coeff represents the residual information res' of the joint coding of the reflectance attribute residual and the prediction mode index value. The code syntax description is as follows:

[0200] if (mode > 1) / / mode is greater than 1, including the case that the prediction mode index value is 2 or 3;

[0201] coeffAbs = ((coeffAbs << 1) + (mode - 2)); / / left shift the reflectance attribute residual by one bit, and take the calculation result of (mode - 2) as the first bit code value of the truncated unary code. In the case of mode = 2, the first bit code value (index0) is 0, and in the case of mode = 3, the first bit code value (index0) is 1. Add the first bit code value to the left shifted reflectance attribute residual by one bit, and update the value of the reflectance attribute residual as the initial joint residual.

[0202] if (mode > 0) / / mode is greater than 0, including the case that the prediction mode index value is 1, 2 or 3;

[0203] coeffAbs = ((coeffAbs << 1) + ((mode - 1) > 0)); / / left shift the initial joint residual by one bit for the prediction mode index value 2 or 3, or left shift the reflectance attribute residual by one bit for the prediction mode index value 1; determine the logical judgment result of whether (mode - 1) is greater than 0 as the second bit code value (index1) of the truncated unary code corresponding to the prediction mode index value 2 or 3, or as the first bit code value (index0) of the truncated unary code corresponding to the prediction mode index value 1. For the prediction mode index value 2 or 3, combine the left shifted initial joint residual by one bit with the second bit code value (index1) of the truncated unary code corresponding thereto to determine the intermediate joint residual; for the prediction mode index value 1, combine the left shifted reflectance attribute residual by one bit with the first bit code value (index0) of the truncated unary code corresponding thereto to determine the initial joint residual.

[0204] coeffAbs = ((coeffAbs << 1) + (mode > 0)); / / this statement is not in the scope of the above two if statements, that is, when the prediction mode index value is any one of 0, 1, 2, 3, this statement is executed. Among them, for the prediction mode index values '2' and '3', the value of coeffAbs at this time is the intermediate joint residual; for the prediction mode index value '1', the value of coeffAbs at this time is the initial joint residual; for the prediction mode index value '0', the value of coeffAbs at this time is the reflectance attribute residual. For the prediction mode index values '2' and '3', the logical judgment result of mode greater than 0 is 1, and the intermediate joint residual left shifted by one is added to the logical judgment result of mode greater than 0, which is equivalent to combining the third code value (index2) '1' in the truncated unary code '011' corresponding to the prediction mode index value '2' or the truncated unary code '111' corresponding to the prediction mode index value '3' with the intermediate joint residual left shifted by one, to determine the joint residual. For the prediction mode index value '1', the logical judgment result of mode greater than 0 is 1, and the initial joint residual left shifted by one is added to the logical judgment result of mode greater than 0, which is equivalent to combining the second code value (index1) '1' in the truncated unary code '01' corresponding to the prediction mode index value '1' with the initial joint residual left shifted by one, to determine the joint residual. For the prediction mode index value '0', the logical judgment result of mode greater than 0 is 0, and the reflectance attribute residual left shifted by one is added to the logical judgment result of mode greater than 0, which is equivalent to combining the one code value (index0) '0' in the truncated unary code '0' corresponding to the prediction mode index value '0' with the reflectance attribute residual left shifted by one, to determine the joint residual.

[0205] coeff = coeffSign * coeffAbs; / / add the original sign bit of the reflectance attribute residual to the joint residual coeffAbs as residual information jointly coded with the prediction mode index value

[0206] break;

[0207] It should be noted that in the embodiments of the present application, the "difference" involved in the above process specifically refers to the absolute value of the difference between the two.

[0208] S104, encode based on the joint residual, and write the obtained coding bits into the code stream.

[0209] In the embodiments of the present application, the encoder encodes based on the joint residual obtained by the above process, and writes the obtained coding bits into the code stream.

[0210] In some embodiments, in a case where the maximum attribute difference value is less than the preset adaptive threshold, the encoder can further perform weighted average on the multiple attribute reconstruction values to determine the attribute prediction value of the current point; and according to the attribute prediction value and the original attribute value of the current point, the attribute prediction residual corresponding to the current point is determined and encoded, and the obtained encoding bits are written into the bitstream.

[0211] It can be understood that, in the reconstructed points of the current point cloud, the multiple neighboring points corresponding to the current point are determined; based on the multiple attribute reconstruction values of the multiple neighboring points, the attribute prediction residual of the current point and the prediction mode index value of the current point are determined; the truncated unary code corresponding to the prediction mode index value is determined, and the joint residual of the current point is determined based on the attribute prediction residual and the truncated unary code; the joint residual is encoded, and the obtained encoding bits are written into the bitstream. In this way, the prediction mode index value of the attribute information of the current point is represented by the truncated unary code, and only one bit code value can be used to represent the prediction mode index value '0' which has a high probability of occurrence, so that short bit encoding is adopted for the index value with a high probability of occurrence, and long bit encoding is adopted for the index value with a low probability of occurrence, the encoding efficiency is improved, the code rate is reduced, the attribute encoding efficiency of the point cloud is improved, and the encoding performance is further improved.

[0212] Referring to FIG. 11, FIG. 11 is an optional flowchart of a point cloud decoding method provided by an embodiment of the present application, which will be described in combination with the steps shown in FIG. 11.

[0213] S201, decoding the bitstream to determine the joint residual of the current point in the current point cloud; the joint residual is determined based on the attribute prediction residual of the current point and the truncated unary code corresponding to the prediction mode index value.

[0214] S202, determining the attribute prediction residual of the current point and the prediction mode index value based on the joint residual.

[0215] S203, determining the attribute reconstruction value of the current point based on the prediction mode index value and the attribute prediction residual of the current point.

[0216] In the embodiment of the present application, the decoder determines the joint residual of the current point in the current point cloud by parsing the bitstream. The joint residual is determined based on the attribute prediction residual of the current point and the truncated unary code corresponding to the prediction mode index value by using the point cloud encoding method. The determination process of the joint residual will not be described here.

[0217] In some embodiments, the multiple neighboring points corresponding to the current point in the reconstructed points of the current point cloud are determined; based on the multiple attribute reconstruction values of the multiple neighboring points, the maximum attribute difference value is determined; in a case where the maximum attribute difference value is greater than or equal to the preset adaptive threshold, the decoded attribute residual information is determined as the joint residual.

[0218] In some embodiments, the attribute prediction value of the current point is determined by weighted average of the plurality of attribute reconstruction values, in a case that the prediction mode index value is a preset first value; and the attribute reconstruction value of the current point is determined based on the attribute prediction value and the attribute prediction residual.

[0219] In some embodiments, the current point cloud is divided to determine at least one detail level corresponding to the current point cloud; and the plurality of neighbor points are determined from the reconstruction points of the current point cloud according to the generation order of the at least one detail level.

[0220] In the embodiments of the present application, the decoder separates the attribute prediction residual of the current point and the prediction mode index value from the joint residual through inverse operations corresponding to the encoder based on the joint residual. In the following, the decoding of the joint residual determined based on the color attribute residual and the decoding of the joint residual determined based on the reflectivity attribute are described respectively.

[0221] In some embodiments, the attribute prediction residual of the current point includes a color attribute residual corresponding to at least one color channel. In a case that the joint residual includes at least one channel joint residual corresponding to at least one color channel, a first channel last value corresponding to a first channel joint residual in the at least one channel joint residual is determined; the first channel joint residual includes a channel joint residual corresponding to a first color channel in the at least one color channel; and each channel joint residual in the at least one channel joint residual is shifted based on the first channel last value to determine a truncated unary code and a color attribute residual corresponding to each color channel in the at least one color channel.

[0222] Here, when decoding the joint residual corresponding to the color attribute residual, the last code value of the first channel joint residual corresponding to the first color channel in the at least one color channel can be determined as the first channel last value, and each channel joint residual in the at least one channel joint residual is shifted based on the value of the first channel last value to determine a truncated unary code and a color attribute residual corresponding to each color channel. As follows:

[0223] In some embodiments, in a case that the first channel last value is 0, the first color attribute residual corresponding to the first color channel is determined by right shifting the first channel joint residual by one bit; and the last value of the first channel joint residual is determined as the truncated unary code.

[0224] Exemplarily, based on the joint coding data structure shown in FIG. 6A, FIG. 7A and FIG. 8A, the first channel last bit value corresponding to the last bit code value of the joint coding of the first color channel can include: a first bit code value (index0) of the truncated unary code when the prediction mode index value is a preset first value, or a second bit code value (index1) of the truncated unary code when the prediction mode index value is a preset second value, or a third bit code value (index2) of the truncated unary code when the prediction mode index value is a preset third value or a preset fourth value. When the first channel last bit value is 0, it means that the truncated unary code only has one bit code value '0', which corresponds to the case that the prediction mode index value is the preset first value, i.e. 0, according to Table 3. Therefore, in the case that the first channel last bit value is 0, the last bit value corresponding to the first channel joint residual is determined as the truncated unary code, and the first color attribute residual corresponding to the first color channel is determined by right shifting the first channel joint residual by one bit.

[0225] In some embodiments, in the case that the first channel last bit value is greater than 0, the first channel joint residual is right shifted by one bit to determine the first initial color attribute residual corresponding to the first color channel; a second channel last bit value of a second channel joint residual in the at least one channel joint residual is determined; the second channel joint residual includes a channel joint residual corresponding to a second color channel in the at least one color channel; the second channel joint residual is right shifted by one bit to determine a second color attribute residual corresponding to the second color channel; in the case that the second channel last bit value is 0, the second channel last bit value is determined as a first bit code value, the first channel last bit value is determined as a second bit code value, the truncated unary code is determined, and the first initial color attribute residual is determined as the first color attribute residual corresponding to the first color channel.

[0226] Exemplarily, based on the joint coding data structure shown in FIG. 6A, FIG. 7A and FIG. 8A and in combination with Table 3, in the case that the first channel last bit value is greater than 0, it means that the prediction mode index value can be one of 1, 2 or 3. The last bit code value of the second channel joint residual, i.e. the second channel last bit value, can include: a first bit code value (index0) of the truncated unary code when the prediction mode index value is the preset second value, or a second bit code value (index1) of the truncated unary code when the prediction mode index value is the preset third value or the preset fourth value. In the case that the second channel last bit value is 0, it means that the truncated unary code has two bit code values '01', which corresponds to the case that the prediction mode index value is the first preset value, i.e. 1, according to Table 3. And the first color attribute residual and the second color attribute residual are determined by right shifting the first channel joint residual and the second channel joint residual to separate the code value of the truncated unary code.

[0227] In some embodiments, in the case that the last bit value of the first channel is greater than 0, the first initial color attribute residual of the first color channel is determined by right shifting the first channel joint residual by one bit; the last bit value of a second channel joint residual in the at least one channel joint residual is determined, the second channel joint residual including a channel joint residual corresponding to a second color channel in the at least one color channel; the second color attribute residual corresponding to the second color channel is determined by right shifting the second channel joint residual by one bit; in the case that the last bit value of the second channel is greater than 0, the last bit value of the first initial color attribute residual is determined; the last bit value of the first initial color attribute residual is taken as a first bit code value, the last bit value of the second channel is taken as a second bit code value, and the last bit value of the first channel is taken as a third bit code value to determine the truncated unary code; and the first color attribute residual corresponding to the first color channel is determined by right shifting the first initial color attribute residual by one bit.

[0228] Exemplarily, based on the joint coded data structures shown in FIG. 6A, FIG. 7A and FIG. 8A and in combination with Table 3, in the case that the last bit value of the first channel is greater than 0, it is illustrated that the prediction mode index value can be one of 1, 2 or 3. The last bit value of the second channel joint residual, i.e., the last bit value of the second channel, is determined, and in the case that the last bit value of the second channel is greater than 0, it is illustrated that the truncated unary code has three bit code values, which can be ‘011’ or ‘111’. The last bit value of the first initial color attribute residual, i.e., the last bit value of the first initial color attribute residual, is taken as a first bit code value, the last bit value of the second channel is taken as a second bit code value, and the last bit value of the first channel is taken as a third bit code value to determine the truncated unary code. And the code values of the truncated unary code are separated by right shifting the first channel joint residual and the second channel joint residual to determine the first color attribute residual and the second color attribute residual.

[0229] It should be noted that the technical ideas of the joint coded data structures shown in FIG. 6B, FIG. 7B and FIG. 8B are similar to the above process, which are to separate the last bit value of the second channel joint residual or the first channel joint residual successively, and determine whether all code values of the truncated unary code are separated by combining the prediction mode index value and the corresponding relationship table of the truncated unary code, so as to decode the truncated unary code and the first color attribute residual and the second color attribute residual. The corresponding specific decoding process can be derived based on the above technical ideas, which will not be described here.

[0230] In some embodiments, for decoding the joint residual corresponding to the color attribute residual, the following process can also be used:

[0231] In some embodiments, a first channel last value corresponding to a first channel joint residual in the at least one channel joint residual is determined as an initial index value; the first channel joint residual is a joint residual corresponding to a first color channel in the at least one color channel; the first channel joint residual is right shifted by one bit to determine an initial first color attribute residual corresponding to the first color channel; in a case that the initial index value is not greater than a preset first value, the initial index value is determined as a prediction mode index value of the current point, and the initial first color attribute residual is determined as a first color attribute residual corresponding to the first color channel.

[0232] In some embodiments, a first channel last value corresponding to a first channel joint residual in the at least one channel joint residual is determined as an initial index value; the first channel joint residual is a joint residual corresponding to a first color channel in the at least one color channel; the first channel joint residual is right shifted by one bit to determine an initial first color attribute residual corresponding to the first color channel; in a case that the initial index value is greater than a preset first value, a second channel last value corresponding to a second channel joint residual in the at least one channel joint residual is determined, and a sum of the second channel last value and the initial index value is determined as an intermediate index value; the second channel joint residual is a joint residual corresponding to a second color channel in the at least one color channel; the second channel joint residual is right shifted by one bit to determine a second color attribute residual corresponding to the second color channel in the at least one color channel; in a case that the intermediate index value is not greater than a preset second value, the intermediate index value is determined as a prediction mode index value corresponding to the current point, and the initial first color attribute residual is determined as a first color attribute residual corresponding to the first color channel.

[0233] In some embodiments, a first channel last value corresponding to a first channel joint residual in the at least one channel joint residual is determined as an initial index value; the first channel joint residual is a joint residual corresponding to a first color channel in the at least one color channel; the first channel joint residual is right shifted by one bit to determine an initial first color attribute residual corresponding to the first color channel; in a case that the initial index value is greater than a preset first value, a second channel last value corresponding to a second channel joint residual in the at least one channel joint residual is determined, and a sum of the second channel last value and the initial index value is determined as an intermediate index value; the second channel joint residual is a joint residual corresponding to a second color channel in the at least one color channel; the second channel joint residual is right shifted by one bit to determine a second color attribute residual corresponding to the second color channel in the at least one color channel; in a case that the intermediate index value is greater than a preset second value, a last value of the initial first color attribute residual is determined, and a sum of the last value of the initial first color attribute residual and the intermediate prediction mode index value is determined as a prediction mode index value of the current point; the initial first color attribute residual is right shifted by one bit to determine a first color attribute residual corresponding to the first color channel.

[0234] Exemplarily, the code syntax description of the above process can be as follows. Wherein, coeffAbsk1 represents the first channel joint residual, and coeffAbsk2 represents the second channel joint residual, as follows:

[0235] Based on the prediction mode index value decoding process of the above color attribute residual, the corresponding relationship between the truncated unary code and the prediction mode index value in the decoder can be as shown in Table 4, as follows:

[0236] Table 4

[0237] In Table 4, |res1’| represents the first channel joint residual, and |res2’| represents the second channel joint residual.

[0238] In some embodiments, the decoding process of the decoder provided by the embodiments of the present application can be as shown in FIG. 12. The decoder reads the attribute code stream, first decodes the attribute prediction difference through entropy decoding. According to the generated LoD order, three nearest neighbor points of the current point are found from the reconstructed points whose reconstruction has been completed. The maximum attribute difference value of the three nearest neighbor points is calculated. If the maximum attribute difference value is less than the preset adaptive threshold, it is inferred that the prediction mode is the average prediction of 0. If the maximum attribute difference value is greater than the preset adaptive threshold, the prediction mode index value is separated from the attribute prediction residual according to the truncated unary code index table (such as the corresponding relationship between the truncated unary code and the prediction mode index value in Table 4), so as to perform attribute prediction to obtain the attribute prediction value of the current point. The attribute prediction value and the separated attribute prediction residual are added to obtain the reconstructed attribute value of the current point. All point sets in the current point cloud are traversed in turn until the attribute information of all points is completely reconstructed.

[0239] In some embodiments, for the joint residual determined based on the reflectivity attribute residual, in the case that the joint residual includes the joint residual corresponding to the reflectivity attribute, the last code value of the joint residual is determined as the first last value; based on the first last value, the joint residual is subjected to a step-by-step shifting operation to determine the reflectivity attribute residual and the truncated unary code corresponding to the current point; based on the truncated unary code corresponding to the current point, the prediction mode index value corresponding to the current point is determined.

[0240] In some embodiments, in the case that the first last value is 0, the joint residual is right shifted by one bit to determine the reflectivity attribute residual, and the first last value is determined as the truncated unary code.

[0241] Exemplarily, for the joint residual corresponding to the reflectance property residual, based on the data structure of the joint residual shown in FIGS. 10A-10C, in combination with Table 3, in a case where the first last value is 0, it is illustrated that the truncated unary code only has one code value ‘0’. Therefore, the joint residual is right-shifted by one bit to determine the reflectance property residual, and the first last value is determined as the truncated unary code, and the corresponding prediction mode index value is determined as a preset first value ‘0’.

[0242] In some embodiments, in a case where the first last value is greater than 0, the joint residual is right-shifted by one bit to determine an initial reflectance property residual; a last value of an initial candidate reflectance property residual is determined; in a case where the last value of the initial candidate reflectance property residual is equal to 0, the last value of the initial candidate reflectance property residual is determined as a first code value, the first last value is determined as a second code value, and the truncated unary code is determined; the initial reflectance property residual is right-shifted by one bit to determine the reflectance property residual.

[0243] Exemplarily, based on the data structure of the joint residual shown in FIGS. 10A-10C, in combination with Table 3, in a case where the first last value is greater than 0, in a case where the last value of the initial candidate reflectance property residual (i.e., the second last value of the joint residual) is equal to 0, it is illustrated that the truncated unary code includes two code values ‘01’. That is, the last value of the initial candidate reflectance property residual is determined as a first code value, the first last value is determined as a second code value, the truncated unary code ‘01’ is obtained, and the corresponding prediction mode index value is determined as a preset second value ‘1’. Moreover, it is equivalent to right-shift the joint residual by two bits to determine the reflectance property residual.

[0244] In some embodiments, in a case where the first last value is greater than 0, the joint residual is right-shifted by one bit to determine an initial reflectance property residual; a last value of the initial reflectance property residual is determined; the initial reflectance property residual is right-shifted by one bit to determine an intermediate reflectance property residual; in a case where the last value of the initial reflectance property residual is greater than 0, a last value of the intermediate reflectance property residual is determined; the last value of the intermediate reflectance property residual is determined as a first code value, the last value of the initial reflectance property residual is determined as a second code value, and the first last value is determined as a third code value, and the truncated unary code is determined; the intermediate reflectance property residual is right-shifted by one bit to determine the reflectance property residual.

[0245] Exemplarily, based on the joint residual data structure shown in FIGS. 10A-10C, in combination with Table 3, in a case where the first last significant value is greater than 0, and in a case where the last significant value of the initial reflectance attribute residual is greater than 0, it is illustrated that the truncated unary code includes a three-bit code value. Among them, the first split first last significant value is the first bit code value, the last significant value of the initial reflectance attribute residual is the second bit code value, and the last split last significant value of the intermediate reflectance attribute residual is the third bit code value. In this way, the truncated unary code is determined, and the prediction mode index value is determined to be a preset third value '2' or a preset fourth value '3' according to the truncated unary code. And, it is equivalent to right shifting the joint residual by three bits, and determining the reflectance attribute residual.

[0246] In some embodiments, the preset correspondence between the truncated unary code and the prediction mode index value includes: in a case where the truncated unary code includes a one-bit code value, and the one-bit code value is 0, the prediction mode index value is a preset first value; in a case where the truncated unary code includes a two-bit code value, and the first bit code value is 0 and the second bit code value is 1, the prediction mode index value is a preset second value; in a case where the truncated unary code includes a three-bit code value, and the first bit code value is 0, the second bit code value is 1, and the third bit code value is 1, the prediction mode index value is a preset third value; in a case where the truncated unary code includes a three-bit code value, and the first bit code value is 1, the second bit code value is 1, and the third bit code value is 1, the prediction mode index value is a preset fourth value.

[0247] In some embodiments, the preset first value is 0, the preset second value is 1, the preset third value is 2, and the preset fourth value is 3.

[0248] In some embodiments, the prediction mode index value and the reflectance attribute prediction residual can also be determined from the joint residual determined based on the reflectance attribute residual through the following process:

[0249] In some embodiments, in a case where the joint residual includes a joint residual corresponding to the reflectance attribute, a first last significant value of the joint residual is determined; the joint residual is right shifted by one bit to determine an initial reflectance attribute residual; in a case where the first last significant value is not greater than 0, the first last significant value is determined as the prediction mode index value of the current point, and the initial reflectance attribute residual is determined as the reflectance attribute residual of the current point.

[0250] In some embodiments, in the case that the joint residual includes a joint residual corresponding to the reflectance attribute, a first least significant bit of the joint residual is determined; the joint residual is right-shifted by one bit to determine an initial reflectance attribute residual; in the case that the first least significant bit is greater than 0, a least significant bit of the initial reflectance attribute residual is determined; the least significant bit of the initial reflectance attribute residual is added to the first least significant bit to determine an initial index value; the initial reflectance attribute residual is right-shifted by one bit to determine an intermediate reflectance attribute residual; in the case that the initial index value is not greater than a preset second value, the initial index value is determined as the prediction mode index value of the current point, and the intermediate reflectance attribute residual is determined as the reflectance attribute residual of the current point.

[0251] In some embodiments, in the case that the joint residual includes a joint residual corresponding to the reflectance attribute, a first least significant bit of the joint residual is determined; the joint residual is right-shifted by one bit to determine an initial reflectance attribute residual; in the case that the first least significant bit is greater than 0, a least significant bit of the initial reflectance attribute residual is determined; the least significant bit of the initial reflectance attribute residual is added to the first least significant bit to determine an initial index value; the initial reflectance attribute residual is right-shifted by one bit to determine an intermediate reflectance attribute residual; in the case that the initial index value is not greater than a preset second value, the initial index value is determined as the prediction mode index value of the current point, and the intermediate reflectance attribute residual is determined as the reflectance attribute residual of the current point.

[0252] Exemplarily, the code syntax description of the above process can be as follows. Wherein, coeffAbs represents a joint residual corresponding to the reflectance attribute residual, as follows:

[0253] It should be noted that in the embodiments of the present application, the "difference" involved in the above process specifically refers to the absolute value of the difference between the two.

[0254] It can be understood that the decoder decodes the prediction mode index value in the form of the truncated unary code, and only one bit of code value is needed for the decoding process of the mode 0 which has a high probability of occurrence, thereby realizing short bit decoding for the index value with a high probability of occurrence and long bit decoding for the index value with a low probability of occurrence, improving the attribute decoding efficiency of the point cloud, and thereby improving the decoding performance.

[0255] The embodiments of the present application provide a decoder 1, as shown in FIG. 13, which includes a decoding part 11, a second determining part 12 and a reconstruction part 13, wherein:

[0256] The decoding part 11 is configured to decode a code stream and determine a joint residual of a current point in a current point cloud; the joint residual is determined based on an attribute prediction residual of the current point and a truncated unary code corresponding to a prediction mode index value;

[0257] The second determining part 12 is configured to determine the attribute prediction residual of the current point and a prediction mode index value based on the joint residual.

[0258] The reconstruction part 13 is configured to determine the attribute reconstruction value of the current point based on the prediction mode index value of the current point and the attribute prediction residual.

[0259] In some embodiments, the attribute prediction residual of the current point includes a color attribute residual corresponding to at least one color channel; the second determining part 12 is further configured to, in a case where the joint residual includes at least one channel joint residual corresponding to the at least one color channel, determine a first channel last value corresponding to a first channel joint residual in the at least one channel joint residual; the first channel joint residual includes a channel joint residual corresponding to a first color channel in the at least one color channel; determine the truncated unary code and the color attribute residual corresponding to each color channel in the at least one color channel by performing a shift operation on each channel joint residual in the at least one channel joint residual based on the first channel last value; and determine the prediction mode index value corresponding to the current point based on the truncated unary code corresponding to the current point.

[0260] In some embodiments, the attribute prediction residual of the current point includes a reflectance attribute residual; the second determining part 12 is further configured to, in a case where the joint residual includes a joint residual corresponding to a reflectance attribute, determine a first last value of the joint residual; determine the reflectance attribute residual and the truncated unary code corresponding to the current point by performing a step-by-step shift operation on the joint residual based on the first last value; and determine the prediction mode index value corresponding to the current point based on the truncated unary code corresponding to the current point.

[0261] In some embodiments, the second determining part 12 is further configured to, in a case where the first channel last value is 0, determine the first color attribute residual corresponding to the first color channel by right shifting the first channel joint residual by one bit; and determine the last value corresponding to the first channel joint residual as the truncated unary code.

[0262] In some embodiments, the second determining part 12 is further configured to, in the case that the first channel last value is greater than 0, right shift the first channel joint residual by one bit to determine a first initial color attribute residual corresponding to the first color channel; determine a second channel last value of a second channel joint residual in the at least one channel joint residual; the second channel joint residual comprises a channel joint residual corresponding to a second color channel in the at least one color channel; right shift the second channel joint residual by one bit to determine a second color attribute residual corresponding to the second color channel; in the case that the second channel last value is 0, determine the second channel last value as a first bit code value, the first channel last value as a second bit code value, and determine the truncated unary code; and determine the first initial color attribute residual as the first color attribute residual corresponding to the first color channel.

[0263] In some embodiments, the second determining part 12 is further configured to, in the case that the first channel last value is greater than 0, right shift the first channel joint residual by one bit to determine a first initial color attribute residual corresponding to the first color channel; determine a second channel last value of a second channel joint residual in the at least one channel joint residual; the second channel joint residual comprises a channel joint residual corresponding to a second color channel in the at least one color channel; right shift the second channel joint residual by one bit to determine a second color attribute residual corresponding to the second color channel; in the case that the second channel last value is greater than 0, determine a last value of the first initial color attribute residual; determine the truncated unary code with the last value of the first initial color attribute residual as a first bit code value, the second channel last value as a second bit code value, and the first channel last value as a third bit code value; right shift the first initial color attribute residual by one bit to determine the first color attribute residual corresponding to the first color channel.

[0264] In some embodiments, the second determining part 12 is further configured to, in the case that the first last value is 0, right shift the joint residual by one bit to determine the reflectance attribute residual, and determine the first last value as the truncated unary code.

[0265] In some embodiments, the second determining part 12 is further configured to, in the case that the first last value is greater than 0, right shift the joint residual by one bit to determine an initial reflectance attribute residual; determine a last value of the initial candidate reflectance attribute residual; in the case that the last value of the initial candidate reflectance attribute residual is equal to 0, determine the truncated unary code with the last value of the initial candidate reflectance attribute residual as a first bit code value and the first last value as a second bit code value; and right shift the initial reflectance attribute residual by one bit to determine the reflectance attribute residual.

[0266] In some embodiments, the second determining portion 12 is further configured to, in the case that the first last value is greater than 0, right shift the joint residual by one bit to determine an initial reflectance attribute residual; determine a last value of the initial reflectance attribute residual; right shift the initial reflectance attribute residual by one bit to determine an intermediate reflectance attribute residual; in the case that the last value of the initial reflectance attribute residual is greater than 0, determine a last value of the intermediate reflectance attribute residual; determine the last value of the intermediate reflectance attribute residual as a first bit code value, the last value of the initial reflectance attribute residual as a second bit code value, and the first last value as a third bit code value, to determine the truncated unary code; and right shift the intermediate reflectance attribute residual by one bit to determine the reflectance attribute residual.

[0267] In some embodiments, the second determining portion 12 is further configured to determine, based on a preset correspondence between the truncated unary code and the prediction mode index value, the prediction mode index value corresponding to the current point for the truncated unary code.

[0268] In some embodiments, in the case that the truncated unary code includes a one-bit code value and the one-bit code value is 0, the prediction mode index value is a preset first value; in the case that the truncated unary code includes a two-bit code value and the first bit code value is 0 and the second bit code value is 1, the prediction mode index value is a preset second value; in the case that the truncated unary code includes a three-bit code value and the first bit code value is 0, the second bit code value is 1, and the third bit code value is 1, the prediction mode index value is a preset third value; and in the case that the truncated unary code includes a three-bit code value and the first bit code value is 1, the second bit code value is 1, and the third bit code value is 1, the prediction mode index value is a preset fourth value.

[0269] In some embodiments, the preset first value is 0, the preset second value is 1, the preset third value is 2, and the preset fourth value is 3.

[0270] In some embodiments, the attribute prediction residual of the current point includes a first color attribute residual corresponding to a first color channel of the at least one color channel, and the joint residual includes at least one channel joint residual corresponding to the at least one color channel; the second determining portion 12 is further configured to determine a first channel last value corresponding to a first channel joint residual of the at least one channel joint residual as an initial index value, the first channel joint residual being the joint residual corresponding to the first color channel of the at least one color channel; right shift the first channel joint residual by one bit to determine an initial first color attribute residual corresponding to the first color channel; and in the case that the initial index value is not greater than a preset first value, determine the initial index value as the prediction mode index value of the current point and the initial first color attribute residual as the first color attribute residual corresponding to the first color channel.

[0271] In some embodiments, the attribute prediction residual of the current point comprises a first color attribute residual corresponding to a first color channel of the at least one color channel and a second color attribute residual corresponding to a second color channel of the at least one color channel; the joint residual comprises at least one channel joint residual corresponding to the at least one color channel; the second determining unit 12 is further configured to: determine a first channel last value corresponding to a first channel joint residual of the at least one channel joint residual as an initial index value, the first channel joint residual being a joint residual corresponding to the first color channel of the at least one color channel; right shift the first channel joint residual by one bit to determine an initial first color attribute residual corresponding to the first color channel; in a case where the initial index value is greater than a preset first value, determine a second channel last value corresponding to a second channel joint residual of the at least one channel joint residual, and determine a sum of the second channel last value and the initial index value as an intermediate index value, the second channel joint residual being a joint residual corresponding to the second color channel of the at least one color channel; right shift the second channel joint residual by one bit to determine a second color attribute residual corresponding to the second color channel of the at least one color channel; in a case where the intermediate index value is not greater than a preset second value, determine the intermediate index value as the prediction mode index value corresponding to the current point, and determine the initial first color attribute residual as the first color attribute residual corresponding to the first color channel.

[0272] In some embodiments, the attribute prediction residual of the current point comprises: a first color attribute residual corresponding to a first color channel of the at least one color channel, and a second color attribute residual corresponding to a second color channel of the at least one color channel; the joint residual comprises at least one channel joint residual corresponding to the at least one color channel; the second determining part 12 is further configured to: determine a first channel last value corresponding to a first channel joint residual of the at least one channel joint residual as an initial index value, the first channel joint residual being a joint residual corresponding to a first color channel of the at least one color channel; right shift the first channel joint residual by one bit to determine an initial first color attribute residual corresponding to the first color channel; in a case where the initial index value is greater than a preset first value, determine a second channel last value corresponding to a second channel joint residual of the at least one channel joint residual, and determine a sum of the second channel last value and the initial index value as an intermediate index value, the second channel joint residual being a joint residual corresponding to a second color channel of the at least one color channel; right shift the second channel joint residual by one bit to determine a second color attribute residual corresponding to the second color channel of the at least one color channel; in a case where the intermediate index value is greater than a preset second value, determine a last value of the initial first color attribute residual, and determine a sum of the last value of the initial first color attribute residual and the intermediate prediction mode index value as the prediction mode index value of the current point; right shift the initial first color attribute residual by one bit to determine the first color attribute residual corresponding to the first color channel.

[0273] In some embodiments, the attribute prediction residual of the current point comprises: a reflectance attribute residual; the second determining part 12 is further configured to: in a case where the joint residual comprises a joint residual corresponding to a reflectance attribute, determine a first last value of the joint residual; right shift the joint residual by one bit to determine an initial reflectance attribute residual; in a case where the first last value is not greater than 0, determine the first last value as the prediction mode index value of the current point, and determine the initial reflectance attribute residual as the reflectance attribute residual of the current point.

[0274] In some embodiments, the attribute prediction residual of the current point comprises a reflectance attribute residual; the second determining part 12 is further configured to: in a case that the joint residual comprises a joint residual corresponding to a reflectance attribute, determine a first last bit value of the joint residual; right shift the joint residual by one bit to determine an initial reflectance attribute residual; in a case that the first last bit value is greater than 0, determine a last bit value of the initial reflectance attribute residual; add the last bit value of the initial reflectance attribute residual and the first last bit value to determine an initial index value; right shift the initial reflectance attribute residual by one bit to determine an intermediate reflectance attribute residual; in a case that the initial index value is not greater than a preset second value, determine the initial index value as the prediction mode index value of the current point, and determine the intermediate reflectance attribute residual as the reflectance attribute residual of the current point.

[0275] In some embodiments, the attribute prediction residual of the current point comprises a reflectance attribute residual; the second determining part 12 is further configured to: in a case that the joint residual comprises a joint residual corresponding to a reflectance attribute, determine a first last bit value of the joint residual; right shift the joint residual by one bit to determine an initial reflectance attribute residual; in a case that the first last bit value is greater than 0, determine a last bit value of the initial reflectance attribute residual; add the last bit value of the initial reflectance attribute residual and the first last bit value to determine an initial index value; right shift the initial reflectance attribute residual by one bit to determine an intermediate reflectance attribute residual; in a case that the initial index value is not greater than a preset second value, determine the initial index value as the prediction mode index value of the current point, and determine the intermediate reflectance attribute residual as the reflectance attribute residual of the current point.

[0276] In some embodiments, the second determining part 12 is further configured to: determine a plurality of near neighbor points corresponding to the current point in the reconstructed points of the current point cloud; determine a maximum attribute difference value based on a plurality of attribute reconstructed values of the plurality of near neighbor points; in a case that the maximum attribute difference value is greater than or equal to a preset adaptive threshold, determine the decoded attribute residual information as the joint residual.

[0277] In some embodiments, the second determining part 12 is further configured to, in a case that the prediction mode index value is a preset first value, perform weighted average on the plurality of attribute reconstructed values to determine an attribute prediction value of the current point; determine an attribute reconstructed value of the current point based on the attribute prediction value and the attribute prediction residual.

[0278] In some embodiments, the second determining portion 12 is further configured to divide the current point cloud, determine at least one level of detail corresponding to the current point cloud, and determine the plurality of near neighbor points from the reconstructed points of the current point cloud according to a generation order of the at least one level of detail.

[0279] It should be noted that the above description of the decoder device embodiments is similar to the description of the above point cloud decoding method embodiments, and has similar beneficial effects as the point cloud decoding method embodiments. For technical details not disclosed in the decoder device embodiments of the present application, please refer to the description of the point cloud decoding method embodiments of the present application for understanding.

[0280] The present embodiment provides an encoder 2, as shown in FIG. 14, comprising a first determining portion 21 and an encoding portion 22, wherein:

[0281] The first determining portion 21 is configured to determine a plurality of near neighbor points of a current point from reconstructed points of a current point cloud, determine an attribute prediction residual of the current point and a prediction mode index value of the current point based on a plurality of attribute reconstruction values of the plurality of near neighbor points, determine a truncated unary code corresponding to the prediction mode index value, and determine a joint residual of the current point based on the attribute prediction residual and the truncated unary code.

[0282] The encoding portion 22 is configured to encode based on the joint residual, and write the obtained encoding bits into a bitstream.

[0283] In some embodiments, the first determining portion 21 is further configured to convert the prediction mode index value into the truncated unary code based on the prediction mode index value and a preset maximum index value.

[0284] In some embodiments, the first determining portion 21 is further configured to, in a case where the attribute prediction residual includes a color attribute residual corresponding to a color attribute of the current point, determine at least one color channel residual corresponding to the color attribute residual, the at least one color channel residual corresponding to at least one color channel of the color attribute, sequentially combine each bit code value of at least one bit code value with one color channel residual of the at least one color channel residual based on the prediction mode index value, determine at least one channel joint residual corresponding to the at least one color channel, and determine the joint residual of the current point based on the at least one channel joint residual.

[0285] In some embodiments, the first determining portion 21 is further configured to, in a case where the attribute prediction residual includes a reflectance attribute residual corresponding to a reflectance attribute of the current point, combine the truncated unary code with the reflectance attribute residual to determine the joint residual.

[0286] In some embodiments, the at least one color channel residual includes a first color channel residual corresponding to a first color channel of the at least one color channel; and the first determining portion 21 is further configured to, in a case that the prediction mode index value includes a preset first value, left-shift the first color channel residual by one bit, and determine a first channel joint residual corresponding to the first color channel based on the left-shifted first color channel residual and a truncated unary code corresponding to one bit code value of the preset first value.

[0287] In some embodiments, the one bit code value corresponding to the preset first value is 0, and the preset first value represents a prediction mode of determining the attribute prediction value of the current point based on weighted average of the attribute reconstruction values of the plurality of neighboring points.

[0288] In some embodiments, the at least one color channel residual includes a first color channel residual corresponding to a first color channel of the at least one color channel, and a second color channel residual corresponding to a second color channel of the at least one color channel; and the first determining portion 21 is further configured to, in a case that the prediction mode index value includes a preset second value, perform the following operations to determine the at least one channel joint residual: left-shift the second color channel residual by one bit, and determine a second channel joint residual corresponding to the second color channel based on the left-shifted second color channel residual and a first bit code value of the truncated unary code; left-shift the first color channel residual by one bit, and determine a first channel joint residual corresponding to the first color channel based on the left-shifted first color channel residual and a second bit code value of the truncated unary code; wherein the preset second value represents a prediction mode of determining the attribute prediction value of the current point based on the attribute reconstruction value of a first neighboring point of the current point in the plurality of neighboring points.

[0289] In some embodiments, the at least one color channel residual includes a first color channel residual corresponding to a first color channel of the at least one color channel, and a second color channel residual corresponding to a second color channel of the at least one color channel; and the first determining portion 21 is further configured to, in a case that the prediction mode index value includes a preset third value or a preset fourth value, perform the following operations to determine the at least one channel joint residual: left-shift the first color channel residual by one bit, and determine an initial first channel joint residual corresponding to the first color channel based on the left-shifted first color channel residual and a first bit code value of the truncated unary code;

[0290] determining a first channel joint residual corresponding to the first color channel by left shifting the first color channel residual by one bit and combining the left shifted first color channel residual with a third bit code value of the truncated unary code; wherein the preset third value represents a prediction mode of determining the attribute prediction value of the current point by using an attribute reconstruction value of a second nearest neighbor point among the three nearest neighbor points; and the preset fourth value represents the prediction mode of determining the attribute prediction value of the current point by using an attribute reconstruction value of a third nearest neighbor point among the three nearest neighbor points.

[0291] In some embodiments, the at least one color channel residual includes a first color channel residual corresponding to a first color channel among the at least one color channel, and a second color channel residual corresponding to a second color channel among the at least one color channel; and the first determining portion 21 is further configured to, in a case where the prediction mode index value includes a preset third value or a preset fourth value, perform the following operations to determine the at least one channel joint residual: determining a first channel joint residual corresponding to the first color channel by left shifting the first color channel residual by one bit and combining the left shifted first color channel residual with a first bit code value of the truncated unary code; determining an initial second channel joint residual corresponding to the second color channel by left shifting the second color channel residual by one bit and combining the left shifted second color channel residual with a second bit code value of the truncated unary code; and determining a second channel joint residual corresponding to the second color channel by left shifting the initial second channel joint residual by one bit and combining the left shifted initial second channel joint residual with a third bit code value of the truncated unary code; wherein the preset third value represents a prediction mode of determining the attribute prediction value of the current point by using an attribute reconstruction value of a second nearest neighbor point among the three nearest neighbor points; and the preset fourth value represents the prediction mode of determining the attribute prediction value of the current point by using an attribute reconstruction value of a third nearest neighbor point among the three nearest neighbor points.

[0292] In some embodiments, the first color channel includes a blue (Chrominanc-blue) chroma channel; the second color channel includes a red (Chrominance-red) chroma channel; or the first color channel includes a chroma (Chrominance) channel; and the second color channel includes a chroma (Chroma) channel.

[0293] In some embodiments, the first determining portion 21 is further configured to, in a case that the prediction mode index value comprises a preset first value, left-shift the reflectance attribute residual by one bit, and determine the joint residual based on the left-shifted reflectance attribute residual and a first bit code value in the truncated unary code.

[0294] In some embodiments, the first determining portion 21 is further configured to, in a case that the prediction mode index value comprises a preset second value, left-shift the reflectance attribute residual by one bit, determine an initial joint residual based on the left-shifted reflectance attribute residual and a first bit code value in the truncated unary code, left-shift the initial joint residual by one bit, and determine the joint residual based on the left-shifted initial joint residual and a second bit code value in the truncated unary code.

[0295] In some embodiments, the first determining portion 21 is further configured to, in a case that the prediction mode index value comprises a preset third value or a preset fourth value, left-shift the reflectance attribute residual by one bit, determine an initial joint residual based on the left-shifted reflectance attribute residual and a first bit code value in the truncated unary code, left-shift the initial joint residual by one bit, determine an intermediate joint residual based on the left-shifted initial joint residual and a second bit code value in the truncated unary code, left-shift the intermediate joint residual by one bit, and determine the joint residual based on the left-shifted intermediate joint residual and a third bit code value in the truncated unary code.

[0296] In some embodiments, the first determining portion 21 is further configured to left-shift the reflectance attribute residual by N bits, and determine the joint residual based on the left-shifted reflectance attribute residual and the truncated unary code, wherein the N represents a length of the truncated unary code.

[0297] In some embodiments, the first determining portion 21 is further configured to determine a maximum attribute difference value of the plurality of near neighbor points based on the plurality of attribute reconstruction values of the plurality of near neighbor points, and determine the attribute prediction residual and the prediction mode index value based on the maximum attribute difference value and the plurality of attribute reconstruction values of the plurality of near neighbor points.

[0298] In some embodiments, the first determining portion 21 is further configured to: in a case that the maximum attribute difference value is greater than or equal to a preset adaptive threshold, determine a plurality of distortion costs corresponding to a plurality of prediction modes, wherein the plurality of prediction modes comprise a prediction mode based on weighted average prediction of the plurality of attribute reconstruction values and a prediction mode based on prediction of one attribute reconstruction value in the plurality of attribute reconstruction values; determine the prediction mode index value based on the plurality of distortion costs; and determine the attribute prediction residual corresponding to the current point based on an attribute prediction value corresponding to the prediction mode index value and the original attribute value of the current point.

[0299] In some embodiments, the encoding portion 22 is further configured to: in a case that the maximum attribute difference value is less than the preset adaptive threshold, determine the attribute prediction value of the current point by weighted average of the plurality of attribute reconstruction values; and determine and encode the attribute prediction residual corresponding to the current point based on the attribute prediction value and the original attribute value of the current point, and write the obtained encoded bits into a bitstream.

[0300] In some embodiments, the first determining portion 21 is further configured to: divide the current point cloud to determine at least one level of detail corresponding to the current point cloud; and determine the plurality of neighbor points from the reconstruction points of the current point cloud according to a generation order of the at least one level of detail.

[0301] In some embodiments, the at least one color channel residual comprises a second color channel residual corresponding to a second color channel in the at least one color channel; and the first determining portion 21 is further configured to: in a case that the prediction mode index value comprises a preset first value, left shift the second color channel residual by one bit, combine the left shifted second color channel residual with a truncated unary code corresponding to a one-bit code value of the preset first value to determine a second channel joint residual corresponding to the second color channel.

[0302] In some embodiments, the at least one color channel residual includes: a first color channel residual corresponding to a first color channel of the at least one color channel, and a second color channel residual corresponding to a second color channel of the at least one color channel; the first determining portion 21 is further configured to: in a case where the prediction mode index value includes a preset second value, perform the following operations to determine the at least one channel joint residual: left shift the second color channel residual by one bit, combine the left-shifted second color channel residual and a first bit code value of the truncated unary code to determine a second channel joint residual corresponding to the second color channel; left shift the first color channel residual by one bit, combine the left-shifted first color channel residual and a second bit code value of the truncated unary code to determine a first channel joint residual corresponding to the first color channel; wherein the preset second value represents a prediction mode of determining the attribute prediction value of the current point based on an attribute reconstruction value of a first nearest neighbor point of the current point in the plurality of nearest neighbor points.

[0303] In some embodiments, the attribute prediction residual includes: a first color channel residual corresponding to a first color channel and a second color channel residual corresponding to a second color channel; the joint residual includes: a first channel joint residual corresponding to the first color channel and a second channel joint residual corresponding to the second color channel; the first determining portion 21 is further configured to: determine a first bit code value of a truncated unary code corresponding to the prediction mode index value according to a difference between the prediction mode index value and a preset third value; left shift the first color channel residual by one bit, and determine an initial first channel joint residual corresponding to the first color channel according to a sum of the left-shifted first color channel residual and the first bit code value; determine a second bit code value of the truncated unary code corresponding to the prediction mode index value according to whether the difference between the prediction mode index value and a preset second value is greater than 0; in a case where the difference between the prediction mode index value and the preset second value is greater than 0, the second bit code value is 1; in a case where the difference between the prediction mode index value and the preset second value is not greater than 0, the second bit code value is 0; left shift the second color channel residual by one bit, and determine a second channel joint residual corresponding to the second color channel according to a sum of the left-shifted second color channel residual and the second bit code value; determine a third bit code value of the truncated unary code corresponding to the prediction mode index value according to whether the prediction mode index value is greater than a preset first value; the preset first value is less than the preset second value; in a case where the prediction mode index value is greater than the preset first value, the third bit code value is 1; left shift the initial first channel joint residual by one bit, and determine a first channel joint residual corresponding to the first color channel according to a sum of the left-shifted initial first channel joint residual and the third bit code value.

[0304] In some embodiments, the attribute prediction residual includes: a first color channel residual corresponding to a first color channel and a second color channel residual corresponding to a second color channel; the joint residual includes: a first channel joint residual corresponding to the first color channel and a second channel joint residual corresponding to the second color channel; the first determining part 21 is further configured to: in the case that the prediction mode index value is not greater than a preset second value and is greater than a preset first value, perform the following operations: according to whether the difference between the prediction mode index value and the preset second value is greater than 0, determine the first bit code value of the truncated unary code corresponding to the prediction mode index value; in the case that the difference between the prediction mode index value and the preset second value is greater than 0, the first bit code value is 1; in the case that the difference between the prediction mode index value and the preset second value is not greater than 0, the first bit code value is 0; left shift the second color channel residual by one bit, and determine the second channel joint residual corresponding to the second color channel according to the sum of the left-shifted second color channel residual by one bit and the first bit code value; according to whether the prediction mode index value is greater than the preset first value, determine the second bit code value of the truncated unary code corresponding to the prediction mode index value; in the case that the prediction mode index value is greater than the preset first value, the second bit code value is 1; left shift the first color channel residual by one bit, and determine the first channel joint residual corresponding to the first color channel according to the sum of the left-shifted first color channel residual by one bit and the second bit code value.

[0305] In some embodiments, the attribute prediction residual includes: a first color channel residual corresponding to a first color channel; the joint residual includes: a first channel joint residual corresponding to the first color channel; the first determining part 21 is further configured to: in the case that the prediction mode index value is not greater than a preset first value, perform the following operations: according to whether the prediction mode index value is greater than the preset first value, determine the one-bit code value of the truncated unary code corresponding to the prediction mode index value; in the case that the prediction mode index value is not greater than the preset first value, the code value is 0; left shift the first color channel residual by one bit, and determine the first channel joint residual corresponding to the first color channel according to the sum of the left-shifted first color channel residual by one bit and the one-bit code value.

[0306] In some embodiments, when the prediction mode index value is a preset first value, the truncated unary code includes one-bit code value, and the one-bit code value is 0; when the prediction mode index value is a preset second value, the truncated unary code includes two-bit code value, wherein the first bit code value is 0 and the second bit code value is 1; when the prediction mode index value is a preset third value, the truncated unary code includes three-bit code value, wherein the first bit code value is 0, the second bit code value is 1, and the third bit code value is 1; when the prediction mode index value is a preset fourth value, the truncated unary code includes three-bit code value, the first bit code value is 1, the second bit code value is 1, and the third bit code value is 1.

[0307] In some embodiments, the preset first value is 0, the preset second value is 1, the preset third value is 2, and the preset fourth value is 3.

[0308] In some embodiments, the first determining part 21 is further configured to: in the case that the prediction mode index value is greater than the preset second value, determine the first bit code value of the truncated unary code corresponding to the prediction mode index value according to the difference between the prediction mode index value and the preset third value; left shift the reflectance attribute residual by one bit, and determine the initial joint residual by combining the reflectance attribute residual left shifted by one bit with the first bit code value; in the case that the prediction mode index value is greater than the preset first value, determine the second bit code value of the truncated unary code corresponding to the prediction mode index value according to whether the difference between the prediction mode index value and the preset second value is greater than 0; the preset second value is greater than the preset first value; the second bit code value is 1 when the difference between the prediction mode index value and the preset second value is greater than 0; the second bit code value is 0 when the difference between the prediction mode index value and the preset second value is not greater than 0; left shift the initial joint residual by one bit, and determine the intermediate joint residual by combining the initial joint residual left shifted by one bit with the second bit code value; determine the first bit code value of the truncated unary code corresponding to the prediction mode index value according to whether the prediction mode index value is greater than the preset first value; the first bit code value is 1 when the prediction mode index value is greater than the preset first value; the first bit code value is 0 when the prediction mode index value is not greater than the preset first value; left shift the intermediate joint residual by one bit, and determine the joint residual according to the intermediate joint residual left shifted by one bit and the first bit code value.

[0309] In some embodiments, the first determining part 21 is further configured to: in the case that the prediction mode index value is greater than the preset first value and not greater than the preset second value, determine the first bit code value of the truncated unary code corresponding to the prediction mode index value according to whether the difference between the prediction mode index value and the preset second value is greater than 0; left shift the reflectance attribute residual by one bit, and determine the initial joint residual by combining the reflectance attribute residual left shifted by one bit with the first bit code value; determine the second bit code value of the truncated unary code corresponding to the prediction mode index value according to whether the prediction mode index value is greater than the preset first value; left shift the initial joint residual by one bit, and determine the joint residual by combining the initial joint residual left shifted by one bit with the second bit code value.

[0310] In some embodiments, the first determining part 21 is further configured to: in the case that the prediction mode index value is not greater than a preset first value, determine a one-bit code value of the truncated unary code corresponding to the prediction mode index value according to whether the prediction mode index value is greater than the preset first value; in the case that the prediction mode index value is not greater than the preset first value, the code value is 0; and determine the joint residual by left shifting the reflectance attribute residual by one bit and combining the left-shifted reflectance attribute residual by one bit with the one-bit code value.

[0311] It should be noted that the above description of the device embodiments is similar to the description of the above-mentioned point cloud encoding method embodiments, and has similar beneficial effects to the method embodiments. For technical details not disclosed in the device embodiments of the present application, please refer to the description of the point cloud encoding method embodiments of the present application for understanding.

[0312] In some embodiments, the present application also provides a decoder, and FIG. 15 is a schematic structural diagram of an optional decoder 3 provided by an embodiment of the present application. As shown in FIG. 15, the decoder 3 comprises a first memory 32 and a first processor 33. The first memory 32 and the first processor 33 are connected through a first communication bus 34. The first memory 32 is configured to store executable instructions. The first processor 33 is configured to execute the executable instructions stored in the first memory 32 to implement the decoding method provided by the embodiments of the present application.

[0313] In some embodiments, the present application also provides an encoder, and FIG. 16 is a schematic structural diagram of an optional encoder 4 provided by an embodiment of the present application. As shown in FIG. 16, the encoder 4 comprises a second memory 42 and a second processor 43. The second memory 42 and the second processor 43 are connected through a second communication bus 44. The second memory 42 is configured to store executable instructions. The second processor 43 is configured to execute the executable instructions stored in the second memory 42 to implement the encoding method provided by the embodiments of the present application.

[0314] The embodiments of the present application provide a computer readable storage medium storing executable instructions, wherein the executable instructions, when executed by a first processor, will cause the first processor to execute any one of the decoding methods provided by the embodiments of the present application; or the executable instructions, when executed by a second processor, will cause the second processor to execute any one of the encoding methods provided by the embodiments of the present application.

[0315] In some embodiments, the computer readable storage medium can be FRAM, ROM, PROM, EPROM, EEPROM, flash memory, magnetic surface memory, optical disc, or CD-ROM memory, etc. It can also be various devices comprising one or any combination of the above-mentioned memories.

[0316] In some embodiments, executable instructions can be in the form of programs, software, software modules, scripts, or code that are written in any form of programming language, including compiled or interpreted languages, or declarative or procedural languages; and that are deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment.

[0317] By way of example, an executable instruction can be, but is not limited to, a file in a file system, a portion of a file in a file system, a set of instructions associated with the file, a set of instructions associated with the portion of the file, a set of instructions associated with the file system, a set of instructions associated with the set of instructions associated with the file, a set of instructions associated with the set of instructions associated with the portion of the file, a set of instructions associated with the set of instructions associated with the file system, a set of instructions associated with the set of instructions associated with the set of instructions associated with the file, a set of instructions associated with the set of instructions associated with the set of instructions associated with the portion of the file, or a set of instructions associated with the set of instructions associated with the set of instructions associated with the set of instructions associated with the file system.

[0318] By way of example, an executable instruction can be deployed in one computing device or across multiple computing devices located at one site or distributed across multiple sites and interconnected by a communication network.

[0319] As will be appreciated by one skilled in the art, aspects of the present application can be embodied as a method, system, or computer program product. Accordingly, aspects of the present application can take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, aspects of the present application can take the form of a computer program product on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, and so on) embodying computer-readable instructions.

[0320] The computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operations to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions specified in the flowchart block or blocks or in the flowchart or block diagrams.

[0321] These computer program instructions can also be loaded into a computer or other programmable data processing devices, so that a series of operation steps are performed on the computer or other programmable devices to generate a computer implemented process, so that the instructions executed on the computer or other programmable devices provide steps for implementing the functions specified in one or more flows of the flowchart and / or one or more blocks of the block diagram.

[0322] The above describes only the preferred embodiments of the present application and is not intended to limit the scope of protection of the present application. Any modifications, equivalent replacements and improvements made within the spirit and scope of the present application shall be included in the scope of protection of the present application. Industrial applicability

[0323] The embodiment of the present application provides a point cloud coding method, a decoder, an encoder and a computer readable storage medium. The encoder determines a plurality of neighbor points of a current point in reconstructed points of a current point cloud; determines an attribute prediction residual of the current point and a prediction mode index value of the current point based on a plurality of attribute reconstruction values of the plurality of neighbor points; determines a truncated unary code corresponding to the prediction mode index value, and determines a joint residual of the current point based on the attribute prediction residual and the truncated unary code; encodes the joint residual, and writes obtained encoding bits into a bitstream; and the decoder decodes the bitstream to determine the joint residual of the current point in the current point cloud; the joint residual is determined based on the attribute prediction residual of the current point and the truncated unary code corresponding to the prediction mode index value; the attribute prediction residual and the prediction mode index value of the current point are determined based on the joint residual; and the attribute reconstruction value of the current point is determined based on the prediction mode index value and the attribute prediction residual of the current point. In this way, the prediction mode index value of the attribute information of the current point is represented by the truncated unary code, the prediction mode index value '0' with a high probability of occurrence can be represented by only one code value, so that short bit coding is adopted for the index value with a high probability of occurrence, long bit coding is adopted for the index value with a low probability of occurrence, the coding efficiency is improved, the code rate is reduced, the quality of the reconstructed point cloud at the average code rate of the decoding end is improved, and the coding and decoding performance is improved.

Claims

1. A point cloud decoding method applied to a decoder, comprising: decoding a bitstream to determine a joint residual of a current point in a current point cloud; the joint residual is determined based on an attribute prediction residual of the current point and a truncated unary code corresponding to a prediction mode index value; based on the joint residual, an attribute prediction residual of the current point and a prediction mode index value are determined; based on the prediction mode index value and the attribute prediction residual of the current point, an attribute reconstructed value of the current point is determined.

2. The method of claim 1, wherein, the attribute prediction residual of the current point comprises a color attribute residual corresponding to at least one color channel; and based on the joint residual, the attribute prediction residual of the current point and the prediction mode index value are determined, comprising: in a case where the joint residual comprises at least one channel joint residual corresponding to the at least one color channel, a first channel last value corresponding to a first channel joint residual in the at least one channel joint residual is determined; the first channel joint residual comprises a channel joint residual corresponding to a first color channel in the at least one color channel; based on the first channel last value, a shift operation is performed on each channel joint residual in the at least one channel joint residual to determine the truncated unary code and a color attribute residual corresponding to each color channel in the at least one color channel; 3. The method of claim 1, wherein, based on the truncated unary code corresponding to the current point, a prediction mode index value corresponding to the current point is determined. the attribute prediction residual of the current point comprises a reflectance attribute residual; and based on the joint residual, the attribute prediction residual of the current point and the prediction mode index value are determined, comprising: in a case where the joint residual comprises a joint residual corresponding to a reflectance attribute, a first last value of the joint residual is determined; 4. The method of claim 2, wherein, based on the first last value, a step-by-step shift operation is performed on the joint residual to determine the reflectance attribute residual and the truncated unary code corresponding to the current point; based on the truncated unary code corresponding to the current point, a prediction mode index value corresponding to the current point is determined. based on the first channel last value, a shift operation is performed on each channel joint residual in the at least one channel joint residual to determine the truncated unary code and a color attribute residual corresponding to each color channel in the at least one color channel, comprising:

5. The method of claim 2, wherein, in a case where the first channel last value is 0, a first color attribute residual corresponding to the first color channel is determined by right shifting the first channel joint residual by one bit; the last value corresponding to the first channel joint residual is determined as the truncated unary code. based on the first channel last value, a shift operation is performed on each channel joint residual in the at least one channel joint residual to determine the truncated unary code and a color attribute residual corresponding to each color channel in the at least one color channel, comprising: in a case where the first channel last value is greater than 0, a first initial color attribute residual corresponding to the first color channel is determined by right shifting the first channel joint residual by one bit; determining a second channel last value of a second channel joint residual in the at least one channel joint residual; the second channel joint residual comprises a channel joint residual corresponding to a second color channel in the at least one color channel; right shifting the second channel joint residual by one bit to determine a second color attribute residual corresponding to the second color channel; in a case where the second channel last value is 0, taking the second channel last value as a first bit code value, taking the first channel last value as a second bit code value, determining the truncated unary code, and determining the first initial color attribute residual as a first color attribute residual corresponding to the first color channel.

6. The method of claim 2, wherein, the step of determining the truncated unary code and the color attribute residual corresponding to each color channel in the at least one color channel based on the first channel last value, comprises: in a case where the first channel last value is greater than 0, right shifting the first channel joint residual by one bit to determine a first initial color attribute residual corresponding to the first color channel; determining a second channel last value of a second channel joint residual in the at least one channel joint residual; the second channel joint residual comprises a channel joint residual corresponding to a second color channel in the at least one color channel; right shifting the second channel joint residual by one bit to determine a second color attribute residual corresponding to the second color channel; in a case where the second channel last value is greater than 0, determining a last value of the first initial color attribute residual; taking the last value of the first initial color attribute residual as a first bit code value, taking the second channel last value as a second bit code value, and taking the first channel last value as a third bit code value to determine the truncated unary code; right shifting the first initial color attribute residual by one bit to determine the first color attribute residual corresponding to the first color channel.

7. The method of claim 3, wherein, the step of determining the reflectance attribute residual and the truncated unary code corresponding to the current point based on the first last value, comprises: in a case where the first last value is 0, right shifting the joint residual by one bit to determine the reflectance attribute residual, and taking the first last value as the truncated unary code. the step of determining the reflectance attribute residual and the truncated unary code corresponding to the current point based on the first last value, comprises:

8. The method of claim 3, wherein, in a case where the first last value is greater than 0, right shifting the joint residual by one bit to determine an initial reflectance attribute residual; determining a last value of the initial candidate reflectance attribute residual; in a case where the last value of the initial candidate reflectance attribute residual is equal to 0, taking the last value of the initial candidate reflectance attribute residual as a first bit code value, and taking the first last value as a second bit code value to determine the truncated unary code; right shifting the initial reflectance attribute residual by one bit to determine the reflectance attribute residual. ​ 9. The method of claim 3, wherein, The step of determining the reflectance attribute residual and the truncated unary code corresponding to the current point based on the first last value comprises: In the case that the first last value is greater than 0, right shifting the joint residual by one bit to determine an initial reflectance attribute residual; Determining a last value of the initial reflectance attribute residual; Right shifting the initial reflectance attribute residual by one bit to determine an intermediate reflectance attribute residual; In the case that the last value of the initial reflectance attribute residual is greater than 0, determining a last value of the intermediate reflectance attribute residual; Determining the truncated unary code based on the last value of the intermediate reflectance attribute residual as a first bit code value, the last value of the initial reflectance attribute residual as a second bit code value, and the first last value as a third bit code value; Right shifting the intermediate reflectance attribute residual by one bit to determine the reflectance attribute residual.

10. The method of any one of claims 2-9, wherein, The step of determining the prediction mode index value corresponding to the current point based on the truncated unary code corresponding to the current point comprises: Determining the prediction mode index value corresponding to the current point based on a preset correspondence between the truncated unary code and the prediction mode index value.

11. The method of any one of claims 1-10, wherein, in the case that the truncated unary code comprises one bit code value and the one bit code value is 0, the prediction mode index value is a preset first value; in the case that the truncated unary code comprises two bit code values and the first bit code value is 0 and the second bit code value is 1, the prediction mode index value is a preset second value; in the case that the truncated unary code comprises three bit code values and the first bit code value is 0, the second bit code value is 1, and the third bit code value is 1, the prediction mode index value is a preset third value; in the case that the truncated unary code comprises three bit code values and the first bit code value is 1, the second bit code value is 1, and the third bit code value is 1, the prediction mode index value is a preset fourth value.

12. The method of claim 11, wherein, The preset first value is 0, the preset second value is 1, the preset third value is 2, and the preset fourth value is 3.

13. The method of claim 1, wherein, The attribute prediction residual of the current point comprises a first color attribute residual corresponding to a first color channel in at least one color channel, and the joint residual comprises at least one channel joint residual corresponding to the at least one color channel, and the step of determining the attribute prediction residual and the prediction mode index value of the current point based on the joint residual comprises: determining a first channel last value corresponding to a first channel joint residual in the at least one channel joint residual as an initial index value, wherein the first channel joint residual is a joint residual corresponding to a first color channel in the at least one color channel; right shifting the first channel joint residual by one bit to determine an initial first color attribute residual corresponding to the first color channel; in the case that the initial index value is not greater than a preset first value, determining the initial index value as the prediction mode index value of the current point and determining the initial first color attribute residual as the first color attribute residual corresponding to the first color channel.

14. The method of claim 1, wherein, The attribute prediction residual of the current point comprises: a first color attribute residual corresponding to a first color channel in the at least one color channel, and a second color attribute residual corresponding to a second color channel in the at least one color channel; the joint residual comprises at least one channel joint residual corresponding to the at least one color channel; and the method comprises: determining a first channel last bit value corresponding to a first channel joint residual in the at least one channel joint residual as an initial index value; the first channel joint residual is a joint residual corresponding to a first color channel in the at least one color channel; right shifting the first channel joint residual by one bit to determine an initial first color attribute residual corresponding to the first color channel; in a case where the initial index value is greater than a preset first value, determining a second channel last bit value corresponding to a second channel joint residual in the at least one channel joint residual, and determining a sum of the second channel last bit value and the initial index value as an intermediate index value; the second channel joint residual is a joint residual corresponding to a second color channel in the at least one color channel; right shifting the second channel joint residual by one bit to determine a second color attribute residual corresponding to the second color channel in the at least one color channel; in a case where the intermediate index value is not greater than a preset second value, determining the intermediate index value as a prediction mode index value corresponding to the current point, and determining the initial first color attribute residual as a first color attribute residual corresponding to the first color channel. The attribute prediction residual of the current point comprises: a first color attribute residual corresponding to a first color channel in the at least one color channel, and a second color attribute residual corresponding to a second color channel in the at least one color channel; the joint residual comprises at least one channel joint residual corresponding to the at least one color channel; and the method comprises:

15. The method of claim 1, wherein, determining a first channel last bit value corresponding to a first channel joint residual in the at least one channel joint residual as an initial index value; the first channel joint residual is a joint residual corresponding to a first color channel in the at least one color channel; right shifting the first channel joint residual by one bit to determine an initial first color attribute residual corresponding to the first color channel; in a case where the initial index value is greater than a preset first value, determining a second channel last bit value corresponding to a second channel joint residual in the at least one channel joint residual, and determining a sum of the second channel last bit value and the initial index value as an intermediate index value; the second channel joint residual is a joint residual corresponding to a second color channel in the at least one color channel; right shifting the second channel joint residual by one bit to determine a second color attribute residual corresponding to the second color channel in the at least one color channel; in a case where the intermediate index value is not greater than a preset second value, determining the intermediate index value as a prediction mode index value corresponding to the current point, and determining the initial first color attribute residual as a first color attribute residual corresponding to the first color channel. determining a last bit value of the initial first color attribute residual, and adding the last bit value of the initial first color attribute residual and the intermediate prediction mode index value to determine a prediction mode index value of the current point; right shifting the initial first color attribute residual by one bit to determine a first color attribute residual corresponding to the first color channel.

16. The method of claim 1, wherein, The attribute prediction residual of the current point includes a reflectance attribute residual; and determining the attribute prediction residual and the prediction mode index value of the current point based on the joint residual includes: determining a first last bit value of the joint residual in a case where the joint residual includes a joint residual corresponding to a reflectance attribute; right shifting the joint residual by one bit to determine an initial reflectance attribute residual; in a case where the first last bit value is not greater than 0, determining the first last bit value as the prediction mode index value of the current point, and determining the initial reflectance attribute residual as the reflectance attribute residual of the current point.

17. The method of claim 1, wherein, The attribute prediction residual of the current point includes a reflectance attribute residual; and determining the attribute prediction residual and the prediction mode index value of the current point based on the joint residual includes: determining a first last bit value of the joint residual in a case where the joint residual includes a joint residual corresponding to a reflectance attribute; right shifting the joint residual by one bit to determine an initial reflectance attribute residual; in a case where the first last bit value is greater than 0, determining a last bit value of the initial reflectance attribute residual; adding the last bit value of the initial reflectance attribute residual and the first last bit value to determine an initial index value; right shifting the initial reflectance attribute residual by one bit to determine an intermediate reflectance attribute residual; in a case where the initial index value is not greater than a preset second value, determining the initial index value as the prediction mode index value of the current point, and determining the intermediate reflectance attribute residual as the reflectance attribute residual of the current point.

18. The method of claim 1, wherein, The attribute prediction residual of the current point includes a reflectance attribute residual; and determining the attribute prediction residual and the prediction mode index value of the current point based on the joint residual includes: determining a first last bit value of the joint residual in a case where the joint residual includes a joint residual corresponding to a reflectance attribute; right shifting the joint residual by one bit to determine an initial reflectance attribute residual; in a case where the first last bit value is greater than 0, determining a last bit value of the initial reflectance attribute residual; adding the last bit value of the initial reflectance attribute residual and the first last bit value to determine an initial index value; right shifting the initial reflectance attribute residual by one bit to determine an intermediate reflectance attribute residual; in a case where the initial index value is greater than a preset second value, determining a last bit value of the intermediate reflectance attribute residual; adding the initial index value and the last bit value of the intermediate reflectance attribute residual to determine a prediction mode index value of the current point; right shifting the intermediate reflectance attribute residual by one bit to determine the reflectance attribute residual of the current point.

19. A point cloud encoding method applied to an encoder, comprising: In the current point cloud, a plurality of neighboring points of the current point are determined in the reconstructed points of the current point cloud; Based on the attribute reconstruction value of the plurality of neighboring points, the attribute prediction residual of the current point and the prediction mode index value of the current point are determined; The truncated unary code corresponding to the prediction mode index value is determined, and the joint residual of the current point is determined based on the attribute prediction residual and the truncated unary code; Based on the joint residual, the obtained coding bits are written into the code stream.

20. The method of claim 19, wherein, The truncated unary code corresponding to the prediction mode index value is determined, and the joint residual of the current point is determined based on the attribute prediction residual and the truncated unary code. The truncated unary code corresponding to the prediction mode index value is determined, and the joint residual of the current point is determined based on the attribute prediction residual and the truncated unary code.

21. The method of claim 19 or 20, wherein, The truncated unary code includes at least one code value, and the joint residual of the current point is determined based on the attribute prediction residual and the truncated unary code. In the case that the attribute prediction residual includes a color attribute residual corresponding to a color attribute of the current point, at least one color channel residual corresponding to the color attribute residual is determined; the at least one color channel residual corresponds to at least one color channel of the color attribute. Based on the prediction mode index value, each bit code value of the at least one bit code value is combined with one color channel residual in the at least one color channel residual in turn to determine at least one channel joint residual corresponding to the at least one color channel. Based on the at least one channel joint residual, the joint residual of the current point is determined. The truncated unary code corresponding to the prediction mode index value is determined, and the joint residual of the current point is determined based on the attribute prediction residual and the truncated unary code.

22. The method of claim 19 or 20, wherein, In the case that the attribute prediction residual includes a color attribute residual corresponding to a color attribute of the current point, at least one color channel residual corresponding to the color attribute residual is determined; the at least one color channel residual corresponds to at least one color channel of the color attribute. Based on the prediction mode index value, each bit code value of the at least one bit code value is combined with one color channel residual in the at least one color channel residual in turn to determine at least one channel joint residual corresponding to the at least one color channel.

23. The method of claim 21, wherein, In the case that the prediction mode index value includes a preset first value, the first color channel residual is left shifted by one bit, and the truncated unary code corresponding to one bit code value of the preset first value is combined with the left shifted first color channel residual to determine the first channel joint residual corresponding to the first color channel. The one bit code value corresponding to the preset first value is 0, and the preset first value represents a prediction mode of performing weighted average based on the attribute reconstruction value of the plurality of neighboring points to determine the attribute prediction value of the current point.

24. The method of claim 23, wherein, ​ 25. The method of claim 23, wherein, The at least one color channel residual includes: a first color channel residual corresponding to a first color channel in the at least one color channel, and a second color channel residual corresponding to a second color channel in the at least one color channel; and the combining each bit code value of the at least one bit code value with one color channel residual in the at least one color channel residual in sequence based on the prediction mode index value to determine at least one channel joint residual corresponding to the at least one color channel includes: In a case where the prediction mode index value includes a preset second value, the following operations are performed to determine the at least one channel joint residual: Left shifting the second color channel residual by one bit, and combining the second color channel residual left shifted by one bit with a first bit code value of the truncated unary code to determine a second channel joint residual corresponding to the second color channel; Left shifting the first color channel residual by one bit, and combining the first color channel residual left shifted by one bit with a second bit code value of the truncated unary code to determine a first channel joint residual corresponding to the first color channel; and The preset second value represents a prediction mode of determining the attribute prediction value of the current point based on an attribute reconstruction value of a first neighbor point of the current point in the plurality of neighbor points.

26. The method of claim 23, wherein, The at least one color channel residual includes: a first color channel residual corresponding to a first color channel in the at least one color channel, and a second color channel residual corresponding to a second color channel in the at least one color channel; and the combining each bit code value of the at least one bit code value with one color channel residual in the at least one color channel residual in sequence based on the prediction mode index value to determine at least one channel joint residual corresponding to the at least one color channel includes: In a case where the prediction mode index value includes a preset third value or a preset fourth value, the following operations are performed to determine the at least one channel joint residual: Left shifting the first color channel residual by one bit, and combining the first color channel residual left shifted by one bit with a first bit code value of the truncated unary code to determine an initial first channel joint residual corresponding to the first color channel; Left shifting the second color channel residual by one bit, and combining the second color channel residual left shifted by one bit with a second bit code value of the truncated unary code to determine a second channel joint residual corresponding to the second color channel; Left shifting the initial first channel joint residual by one bit, and combining the initial first channel joint residual left shifted by one bit with a third bit code value of the truncated unary code to determine a first channel joint residual corresponding to the first color channel; and The preset third value represents a prediction mode of determining the attribute prediction value of the current point by using an attribute reconstruction value of a second neighbor point of the current point in three neighbor points; and the preset fourth value represents a prediction mode of determining the attribute prediction value of the current point by using an attribute reconstruction value of a third neighbor point of the current point in the three neighbor points.

27. The method of claim 23, wherein, The at least one color channel residual includes: a first color channel residual corresponding to a first color channel in the at least one color channel, and a second color channel residual corresponding to a second color channel in the at least one color channel; and the combining each bit code value of the at least one bit code value with one color channel residual in the at least one color channel residual in sequence based on the prediction mode index value to determine at least one channel joint residual corresponding to the at least one color channel includes: In a case where the prediction mode index value includes a preset third value or a preset fourth value, the following operations are performed to determine the at least one channel joint residual: Left shifting the first color channel residual by one bit, and combining the first bit code value of the truncated unary code with the left-shifted first color channel residual by one bit to determine a first channel joint residual corresponding to the first color channel; Left shifting the second color channel residual by one bit, and combining the second bit code value of the truncated unary code with the left-shifted second color channel residual by one bit to determine an initial second channel joint residual corresponding to the second color channel; Left shifting the initial second channel joint residual by one bit, and combining the third bit code value of the truncated unary code with the left-shifted initial second channel joint residual by one bit to determine a second channel joint residual corresponding to the second color channel; The preset third value represents a prediction mode of determining the attribute prediction value of the current point by using an attribute reconstruction value of a second nearest neighbor point of the three nearest neighbor points of the current point; and the preset fourth value represents a prediction mode of determining the attribute prediction value of the current point by using an attribute reconstruction value of a third nearest neighbor point of the three nearest neighbor points of the current point.

28. The method of any one of claims 23-27, wherein, The first color channel includes a blue (Chrominanc-blue) chroma channel; and the second color channel includes a red (Chrominance-red) chroma channel. Or, The first color channel includes a chroma (Chrominance) channel; and the second color channel includes a chroma (Chroma) channel.

29. The method of claim 22, wherein, The combining the truncated unary code and the reflectance attribute residual to determine the joint residual includes: In a case where the prediction mode index value includes a preset first value, left shifting the reflectance attribute residual by one bit, and combining the truncated unary code of one bit code value with the left-shifted reflectance attribute residual by one bit to determine the joint residual.

30. The method of claim 22, wherein, The combining the truncated unary code and the reflectance attribute residual to determine the joint residual includes: In a case where the prediction mode index value includes a preset second value, left shifting the reflectance attribute residual by one bit, and combining the first bit code value in the truncated unary code with the left-shifted reflectance attribute residual by one bit to determine an initial joint residual; Left shifting the initial joint residual by one bit, and combining the second bit code value in the truncated unary code with the left-shifted initial joint residual by one bit to determine the joint residual.

31. The method of claim 22, wherein, The combining the truncated unary code and the reflectance attribute residual to determine the joint residual includes: In a case where the prediction mode index value comprises a preset third value or a preset fourth value, the reflectance attribute residual is left shifted by one bit, and an initial joint residual is determined based on the left shifted reflectance attribute residual and a first bit code value in the truncated unary code; the initial joint residual is left shifted by one bit, and an intermediate joint residual is determined based on the left shifted initial joint residual and a second bit code value in the truncated unary code; the intermediate joint residual is left shifted by one bit, and the joint residual is determined based on the left shifted intermediate joint residual and a third bit code value in the truncated unary code.

32. The method of claim 22, wherein, The combining the truncated unary code and the reflectance attribute residual to determine the joint residual comprises: the reflectance attribute residual is left shifted by N bits, and the joint residual is determined based on the left shifted reflectance attribute residual and the truncated unary code; N represents a length of the truncated unary code.

33. The method of claim 21, wherein, The at least one color channel residual comprises a second color channel residual corresponding to a second color channel in the at least one color channel; and the combining each bit code value of the at least one bit code value and one color channel residual in the at least one color channel residual to determine at least one channel joint residual corresponding to the at least one color channel comprises: in a case where the prediction mode index value comprises a preset first value, the second color channel residual is left shifted by one bit, and a second channel joint residual corresponding to the second color channel is determined based on the left shifted second color channel residual and a truncated unary code of a bit code value corresponding to the preset first value.

34. The method of claim 21, wherein, The at least one color channel residual comprises a first color channel residual corresponding to a first color channel in the at least one color channel and a second color channel residual corresponding to a second color channel in the at least one color channel; and the combining each bit code value of the at least one bit code value and one color channel residual in the at least one color channel residual to determine at least one channel joint residual corresponding to the at least one color channel comprises: in a case where the prediction mode index value comprises a preset second value, the following operations are performed to determine the at least one channel joint residual: the second color channel residual is left shifted by one bit, and a second channel joint residual corresponding to the second color channel is determined based on the left shifted second color channel residual and a first bit code value in the truncated unary code; the first color channel residual is left shifted by one bit, and a first channel joint residual corresponding to the first color channel is determined based on the left shifted first color channel residual and a second bit code value in the truncated unary code; and the preset second value represents a prediction mode based on a property reconstruction value of a first nearest neighbor point in the plurality of nearest neighbor points to determine a property prediction value of the current point.

35. The method of claim 21, wherein, The attribute prediction residual comprises: a first color channel residual corresponding to a first color channel and a second color channel residual corresponding to a second color channel; the joint residual comprises: a first channel joint residual corresponding to the first color channel and a second channel joint residual corresponding to the second color channel; and the operation of sequentially combining each bit code value of at least one bit code value with one of the at least one color channel residual based on the prediction mode index value to determine at least one channel joint residual corresponding to the at least one color channel comprises: In a case where the prediction mode index value is greater than a preset second value, the following operations are performed: A first bit code value of the truncated unary code corresponding to the prediction mode index value is determined according to a difference between the prediction mode index value and a preset third value; The first color channel residual is left shifted by one bit, and an initial first channel joint residual corresponding to the first color channel is determined according to a sum of the left-shifted first color channel residual by one bit and the first bit code value; A second bit code value of the truncated unary code corresponding to the prediction mode index value is determined according to whether a difference between the prediction mode index value and a preset second value is greater than 0; in a case where the difference between the prediction mode index value and the preset second value is greater than 0, the second bit code value is 1; and in a case where the difference between the prediction mode index value and the preset second value is not greater than 0, the second bit code value is 0; The second color channel residual is left shifted by one bit, and a second channel joint residual corresponding to the second color channel is determined according to a sum of the left-shifted second color channel residual by one bit and the second bit code value; A third bit code value of the truncated unary code corresponding to the prediction mode index value is determined according to whether the prediction mode index value is greater than a preset first value; the preset first value is less than the preset second value; and in a case where the prediction mode index value is greater than the preset first value, the third bit code value is 1; The initial first channel joint residual is left shifted by one bit, and the first channel joint residual corresponding to the first color channel is determined according to a sum of the left-shifted initial first channel joint residual by one bit and the third bit code value.

36. The method of claim 21, wherein, The attribute prediction residual comprises: a first color channel residual corresponding to a first color channel and a second color channel residual corresponding to a second color channel; the joint residual comprises: a first channel joint residual corresponding to the first color channel and a second channel joint residual corresponding to the second color channel; and the operation of sequentially combining each bit code value of at least one bit code value with one of the at least one color channel residual based on the prediction mode index value to determine at least one channel joint residual corresponding to the at least one color channel comprises: In a case where the prediction mode index value is not greater than a preset second value and is greater than a preset first value, the following operations are performed: determining a first bit code value of the truncated unary code corresponding to the prediction mode index value according to whether a difference between the prediction mode index value and a preset second value is greater than 0; the first bit code value is 1 in a case that the difference between the prediction mode index value and the preset second value is greater than 0; the first bit code value is 0 in a case that the difference between the prediction mode index value and the preset second value is not greater than 0; left-shifting the second color channel residual by one bit, and determining a second channel joint residual corresponding to the second color channel according to a sum of the left-shifted second color channel residual by one bit and the first bit code value; determining a second bit code value of the truncated unary code corresponding to the prediction mode index value according to whether the prediction mode index value is greater than a preset first value; the second bit code value is 1 in a case that the prediction mode index value is greater than the preset first value; left-shifting the first color channel residual by one bit, and determining a first channel joint residual corresponding to the first color channel according to a sum of the left-shifted first color channel residual by one bit and the second bit code value.

37. The method of claim 21, wherein, The attribute prediction residual includes a first color channel residual corresponding to a first color channel; the joint residual includes a first channel joint residual corresponding to the first color channel; and the combining each bit code value of the at least one bit code value with one color channel residual of the at least one color channel residual in sequence to determine at least one channel joint residual corresponding to the at least one color channel based on the prediction mode index value includes: in a case that the prediction mode index value is not greater than the preset first value, performing the following operations: determining a first bit code value of the truncated unary code corresponding to the prediction mode index value according to whether the prediction mode index value is greater than a preset first value; the first bit code value is 1 in a case that the prediction mode index value is greater than the preset first value; the first bit code value is 0 in a case that the prediction mode index value is not greater than the preset first value; left-shifting the first color channel residual by one bit, and determining a first channel joint residual corresponding to the first color channel according to a sum of the left-shifted first color channel residual by one bit and the second bit code value.

38. The method of any one of claims 19-37, wherein, the truncated unary code includes one bit code value when the prediction mode index value is a preset first value, and the one bit code value is 0; the truncated unary code includes two bit code values when the prediction mode index value is a preset second value, and the first bit code value is 0 and the second bit code value is 1; the truncated unary code includes three bit code values when the prediction mode index value is a preset third value, and the first bit code value is 0, the second bit code value is 1, and the third bit code value is 1; the truncated unary code includes three bit code values when the prediction mode index value is a preset fourth value, and the first bit code value is 1, the second bit code value is 1, and the third bit code value is 1.

39. The method of claim 38, wherein, the preset first value is 0, the preset second value is 1, the preset third value is 2, and the preset fourth value is 3.

40. The method of claim 22, wherein, The combining the truncated unary code with the reflectance attribute residual to determine the joint residual includes: in a case that the prediction mode index value is greater than the preset second value, determining a first bit code value of the truncated unary code corresponding to the prediction mode index value according to a difference between the prediction mode index value and a preset third value; the first bit code value is 1 in a case that the difference between the prediction mode index value and the preset third value is greater than 0; the first bit code value is 0 in a case that the difference between the prediction mode index value and the preset third value is not greater than 0; determining a first bit code value of the truncated unary code corresponding to the prediction mode index value according to whether the prediction mode index value is greater than a preset first value; left-shifting the reflectance attribute residual by one bit, and combining the left-shifted reflectance attribute residual and the first bit code value to determine an initial joint residual; in a case where the prediction mode index value is greater than the preset first value, determining a second bit code value of the truncated unary code corresponding to the prediction mode index value according to whether a difference between the prediction mode index value and a preset second value is greater than 0, the preset second value being greater than the preset first value, the second bit code value being 1 when the difference between the prediction mode index value and the preset second value is greater than 0, and the second bit code value being 0 when the difference between the prediction mode index value and the preset second value is not greater than 0; left-shifting the initial joint residual by one bit, and combining the left-shifted initial joint residual and the second bit code value to determine an intermediate joint residual; determining a first bit code value of the truncated unary code corresponding to the prediction mode index value according to whether the prediction mode index value is greater than a preset first value; left-shifting the intermediate joint residual by one bit, and determining a joint residual according to the left-shifted intermediate joint residual and the first bit code value.

41. The method of claim 22, wherein, The combining the truncated unary code and the reflectance attribute residual to determine the joint residual comprises: in a case where the prediction mode index value is greater than the preset first value and not greater than the preset second value, determining a first bit code value of the truncated unary code corresponding to the prediction mode index value according to whether a difference between the prediction mode index value and the preset second value is greater than 0; left-shifting the reflectance attribute residual by one bit, and combining the left-shifted reflectance attribute residual and the first bit code value to determine an initial joint residual; determining a second bit code value of the truncated unary code corresponding to the prediction mode index value according to whether the prediction mode index value is greater than a preset first value; left-shifting the initial joint residual by one bit, and combining the left-shifted initial joint residual and the second bit code value to determine the joint residual.

42. The method of claim 22, wherein, The combining the truncated unary code and the reflectance attribute residual to determine the joint residual comprises: in a case where the prediction mode index value is not greater than the preset first value, determining a bit code value of the truncated unary code corresponding to the prediction mode index value according to whether the prediction mode index value is greater than the preset first value, the bit code value being 0 in the case where the prediction mode index value is not greater than the preset first value; left-shifting the reflectance attribute residual by one bit, and combining the left-shifted reflectance attribute residual and the bit code value to determine the joint residual.

43. A bitstream, wherein, The code stream is generated according to to-be-encoded information through bit encoding; the to-be-encoded information at least includes a joint residual; the joint residual is determined based on an attribute prediction residual of a current point in a current point cloud and a truncated unary code corresponding to a prediction mode index value.

44. An encoder comprising a first determining part and an encoding part, wherein: The first determining part is configured to determine a plurality of near-neighbor points of a current point in reconstructed points of a current point cloud; determine an attribute prediction residual of the current point and a prediction mode index value of the current point based on a plurality of attribute reconstruction values of the plurality of near-neighbor points; determine a truncated unary code corresponding to the prediction mode index value, and determine a joint residual of the current point based on the attribute prediction residual and the truncated unary code. The encoding part is configured to encode based on the joint residual, and write obtained encoding bits into a bitstream.

45. An encoder comprising a first memory and a first processor, wherein: the first memory is configured to store a computer program capable of running on the first processor; the first processor is configured to execute the method according to any one of claims 1 to 18 when running the computer program.

46. A decoder comprising a decoding part, a second determining part and a reconstruction part, wherein: the decoding part is configured to decode a bitstream to determine a joint residual of a current point in a current point cloud; the joint residual is determined based on an attribute prediction residual of the current point and a truncated unary code corresponding to a prediction mode index value of the current point; the second determining part is configured to determine the attribute prediction residual of the current point and the prediction mode index value based on the joint residual; the reconstruction part is configured to determine an attribute reconstruction value of the current point based on the prediction mode index value of the current point and the attribute prediction residual.

47. A decoder comprising a second memory and a second processor, wherein: the second memory is configured to store a computer program capable of running on the second processor; the second processor is configured to execute the method according to any one of claims 19 to 42 when running the computer program.

48. A computer readable storage medium, wherein, The computer readable storage medium stores a computer program, and the computer program is executed to implement the method according to any one of claims 1 to 18, or implement the method according to any one of claims 19 to 42.

Citation Information

Patent Citations

  • Method and device of processing point cloud data

    CN110996098A

  • Coding and decoding of chroma residuals

    CN114846807A

  • Predictor index signaling for predictive transformation in geometry-based point cloud compression

    CN115211117A

  • Image coding and decoding method and device and storage medium

    CN116800956A

  • Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device

    US20230230286A1