Encoding method, decoding method, bit stream, decoder, encoder, and storage medium
By using target cross-attribute prediction patterns and correlation coefficients, the problem of multi-attribute redundancy in point cloud compression is solved, achieving more efficient encoding and decoding, and reducing data transmission redundancy and costs.
Patent Information
- Application Number
- PCT/CN2024/087747
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-04-15
- Publication Date
- 2025-10-23
AI Technical Summary
In geometry-based point cloud compression technology, the redundancy among multiple attributes is not fully exploited, resulting in low encoding and decoding efficiency and serious waste of bit rate.
By employing a target cross-attribute prediction model and correlation coefficient, the attribute value of the current point is predicted through the attribute reconstruction values of the target's nearest neighbors, thereby reducing transmission redundancy and improving bit rate utilization.
By accurately predicting attribute values, the amount of data transmitted can be reduced, bitrate waste can be decreased, and encoding/decoding efficiency and performance can be improved.
Smart Images

Figure CN2024087747_23102025_PF_FP_ABST
Abstract
Description
Coding method, code stream, decoder, encoder and storage medium TECHNICAL FIELD
[0001] Embodiments of the present application relate to the technical field of video coding, and particularly relate to a coding method, a code stream, a decoder, an encoder and a storage medium. BACKGROUND
[0002] In the attribute coding framework of Geometry-based Point Cloud Compression (GPCC / G-PCC), in order to remove the temporal and spatial redundancy of point cloud coding, intra prediction and inter prediction are introduced. However, when G-PCC encodes point cloud sequences of multiple attributes (such as color and reflectance), the redundancy between multiple attributes has not been fully mined and removed.
[0003] In related technologies, one kind of encoded attribute information is usually used to guide the coding of another kind of attribute information. However, when one kind of attribute information has been encoded, there is still a large amount of redundancy between the two kinds of attribute information when encoding another kind of attribute information, which causes waste of code rate and affects the coding efficiency.
[0004] SUMMARY
[0005] Embodiments of the present application provide a coding method, a code stream, a decoder, an encoder and a storage medium, which can improve the utilization rate of code rate and thus improve the coding efficiency.
[0006] The technical scheme of the embodiments of the present application can be implemented as follows:
[0007] In a first aspect, the embodiments of the present application provide a decoding method applied to a decoder, which comprises:
[0008] decoding a code stream to determine first syntax element information of a current point;
[0009] determining, according to a value of the first syntax element information, a best prediction mode of the current point from candidate prediction modes as a target cross-attribute prediction mode;
[0010] determining one or more attribute reconstruction values of a target neighbor point of the current point according to the target cross-attribute prediction mode;
[0011] determining a correlation coefficient of the target neighbor point according to the one or more attribute reconstruction values of the target neighbor point;
[0012] determining an attribute prediction value of a to-be-decoded attribute of the current point according to an attribute reference value of the to-be-decoded attribute of the current point and the correlation coefficient.
[0013] In a second aspect, an encoding method is provided. The method is applied to an encoder and includes the following steps.
[0014] determining a candidate cross-attribute prediction mode of the current point from the candidate prediction modes;
[0015] determining one or more attribute reconstruction values of the candidate neighbor point of the current point according to the candidate cross-attribute prediction mode;
[0016] determining a correlation coefficient of the candidate neighbor point according to the one or more attribute reconstruction values of the candidate neighbor point;
[0017] determining an attribute prediction value of the attribute to be encoded of the current point according to the attribute reference value of the attribute to be encoded of the current point and the correlation coefficient;
[0018] determining the best prediction mode of the current point as a target cross-attribute prediction mode according to an encoding decision of the attribute prediction value of the attribute to be encoded of the current point corresponding to one or more candidate cross-attribute prediction modes;
[0019] determining a value of the first syntax element information of the current point according to the best prediction mode;
[0020] encoding the first syntax element information, and writing the obtained encoding bits into a bitstream.
[0021] In a third aspect, a bitstream is provided. The bitstream is generated by bit-encoding to-be-encoded information. The to-be-encoded information includes at least one of the following:
[0022] The first syntax element information is used to indicate the prediction mode adopted by the current point, the second syntax element information is used to indicate the attribute reconstruction order of the current point, and the third syntax element information is used to indicate whether the cross-attribute prediction mode is allowed to be adopted by the current point.
[0023] In a fourth aspect, a decoder is provided. The decoder includes a decoding part and a first determining part, and includes the following steps.
[0024] The decoding part is configured to decode a bitstream and determine the first syntax element information of the current point;
[0025] The first determining part is configured to determine, according to the value of the first syntax element information, a best prediction mode of the current point from the candidate prediction modes as a target cross-attribute prediction mode; determine one or more attribute reconstruction values of a target neighbor point of the current point according to the target cross-attribute prediction mode; determine a correlation coefficient of the target neighbor point according to the one or more attribute reconstruction values of the target neighbor point; and determine an attribute prediction value of a to-be-decoded attribute of the current point according to an attribute reference value of the to-be-decoded attribute of the current point and the correlation coefficient.
[0026] In a fifth aspect, an embodiment of the present application provides an encoder, which comprises an encoding part and a second determining part, wherein:
[0027] The second determining part is configured to determine a candidate cross-attribute prediction mode of the current point from the candidate prediction modes; determine one or more attribute reconstruction values of a candidate neighbor point of the current point according to the candidate cross-attribute prediction mode; determine a correlation coefficient of the candidate neighbor point according to the one or more attribute reconstruction values of the candidate neighbor point; determine an attribute prediction value of a to-be-encoded attribute of the current point according to an attribute reference value of the to-be-encoded attribute of the current point and the correlation coefficient; perform encoding decision on the attribute prediction values of the to-be-encoded attribute of the current point corresponding to the one or more candidate cross-attribute prediction modes to determine that a best prediction mode of the current point is a target cross-attribute prediction mode; and determine a value of first syntax element information of the current point according to the best prediction mode.
[0028] The encoding part is configured to perform encoding processing on the first syntax element information and write obtained encoding bits into a bitstream.
[0029] In a sixth aspect, an embodiment of the present application provides a decoder, which comprises a first memory and a first processor, wherein:
[0030] The first memory is configured to store a computer program capable of running on the first processor;
[0031] The first processor is configured to execute the method in the first aspect when running the computer program.
[0032] In a seventh aspect, an embodiment of the present application provides an encoder, which comprises a second memory and a second processor, wherein:
[0033] The second memory is configured to store a computer program capable of running on the second processor;
[0034] The second processor is configured to execute the method in the second aspect when running the computer program.
[0035] In an eighth aspect, an embodiment of the present application provides a computer readable storage medium, which stores a computer program. The computer program is executed to implement the method in the first aspect or the second aspect.
[0036] The embodiments of the present application provide a coding method, a code stream, a decoder, an encoder and a storage medium. On the decoding side, the coding method comprises: decoding a code stream, determining first syntax element information of a current point; determining, according to a value of the first syntax element information, a best prediction mode of the current point from candidate prediction modes as a target cross-attribute prediction mode; determining one or more attribute reconstruction values of a target neighbor point of the current point according to the target cross-attribute prediction mode; determining a correlation coefficient of the target neighbor point according to the one or more attribute reconstruction values of the target neighbor point; and determining an attribute prediction value of a to-be-decoded attribute of the current point according to an attribute reference value of the to-be-decoded attribute of the current point and the correlation coefficient. On the encoding side, candidate cross-attribute prediction modes of the current point are determined from the candidate prediction modes. On the one hand, the attribute prediction value of the to-be-decoded attribute of the current point is determined through the target cross-attribute prediction mode and the correlation coefficient of the target neighbor point, so that the attribute value of the current point can be more accurately predicted, and redundant information can be avoided from being transmitted. In this way, the amount of data to be transmitted can be reduced during encoding, so that the waste of code rate is reduced. On the one hand, the attribute reconstruction value of the to-be-decoded attribute of the current point is predicted based on the correlation coefficient of the target neighbor point of the current point and the attribute reference value of the to-be-decoded attribute of the current point, so that the utilization rate of the code rate can be improved, the waste of the code rate can be avoided, the redundancy and cost during data transmission can be reduced, and thus the efficiency and performance of decoding can be improved.
[0037] At the encoding side, the encoding method comprises: determining one or more attribute reconstruction values of the candidate neighboring point of the current point according to the candidate cross-attribute prediction mode; determining the correlation coefficient of the candidate neighboring point according to the one or more attribute reconstruction values of the candidate neighboring point; determining the attribute prediction value of the to-be-encoded attribute of the current point according to the attribute reference value of the to-be-encoded attribute of the current point and the correlation coefficient; determining the best prediction mode of the current point as the target cross-attribute prediction mode according to the encoding decision of the attribute prediction value of the to-be-encoded attribute of the current point corresponding to one or more candidate cross-attribute prediction modes; determining the value of the first syntax element information of the current point according to the best prediction mode; and performing encoding processing on the first syntax element information and writing the obtained encoding bits into a bitstream. On the one hand, the attribute prediction value of the to-be-encoded attribute of the current point is determined through the candidate cross-attribute prediction mode and the correlation coefficient of the candidate neighboring point, so that the attribute value of the current point can be more accurately predicted, and the transmission of redundant information is avoided, so that the amount of data to be transmitted can be reduced during encoding, thereby reducing the waste of code rate. On the one hand, in the process of predicting the attribute reconstruction value of the to-be-encoded attribute of the current point, the attribute reconstruction value of the to-be-encoded attribute of the current point is determined based on the correlation coefficient of the candidate neighboring point of the current point and the attribute reference value of the to-be-encoded attribute of the current point, so that the utilization rate of the code rate can be improved, the waste of the code rate can be avoided, the redundancy and cost during data transmission can be reduced, and thus the efficiency and performance of the encoding can be improved. BRIEF DESCRIPTION OF DRAWINGS
[0038] FIG. 1A is a schematic diagram of a three-dimensional point cloud image according to an embodiment of the present application;
[0039] FIG. 1B is a partial enlarged view of a three-dimensional point cloud image according to an embodiment of the present application;
[0040] FIG. 2A is a schematic diagram of six viewing angles of a point cloud image according to an embodiment of the present application;
[0041] FIG. 2B is a schematic diagram of a data storage format corresponding to a point cloud image according to an embodiment of the present application;
[0042] FIG. 3 is a schematic diagram of a network architecture of point cloud coding according to an embodiment of the present application;
[0043] FIG. 4A is a schematic diagram of a constituent framework of a G-PCC encoder according to an embodiment of the present application;
[0044] FIG. 4B is a schematic diagram of a constituent framework of a G-PCC decoder according to an embodiment of the present application;
[0045] FIG. 5 is a schematic diagram of a PT encoding process according to an embodiment of the present application;
[0046] FIG. 6 is a schematic diagram of a distance-based LoD generation process according to an embodiment of the present application;
[0047] FIG. 7 is a flowchart of a method for determining a best prediction mode according to an embodiment of the present application;
[0048] FIG. 8 is a flowchart of a method for decoding according to an embodiment of the present application;
[0049] FIG. 9 is a diagram of a correlation between luminance and reflectance according to an embodiment of the present application;
[0050] FIG. 10 is a flowchart of a method for decoding according to an embodiment of the present application;
[0051] FIG. 11 is a flowchart of a method for encoding according to an embodiment of the present application;
[0052] FIG. 12 is a flowchart of a method for determining a best prediction mode according to an embodiment of the present application;
[0053] FIG. 13 is a flowchart of an implementation of an encoding end according to an embodiment of the present application;
[0054] FIG. 14 is a flowchart of an implementation of a decoding end according to an embodiment of the present application;
[0055] FIG. 15 is a diagram of a structure of a decoder according to an embodiment of the present application;
[0056] FIG. 16 is a diagram of a specific hardware structure of a decoder according to an embodiment of the present application;
[0057] FIG. 17 is a diagram of a structure of an encoder according to an embodiment of the present application;
[0058] FIG. 18 is a diagram of a specific hardware structure of an encoder according to an embodiment of the present application;
[0059] FIG. 19 is a diagram of a structure of a codec system according to an embodiment of the present application. DETAILED DESCRIPTION
[0060] In order to enable a person skilled in the art to more fully understand the features and technical content of the embodiments of the present application, the implementation of the embodiments of the present application will be described in detail below with reference to the accompanying drawings, which are used only for reference and are not intended to limit the embodiments of the present application.
[0061] 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 terminology used in the description herein is for describing the embodiments of the present application only and is not intended to limit the present application.
[0062] In the following description, reference is made to "some embodiments", which describe a subset of all possible embodiments, but it is to be understood that "some embodiments" can be the same subset or different subsets as each other and as other subsets of all possible embodiments, and can be combined with each other and with other subsets of all possible embodiments without conflict.
[0063] It should also be noted that the terms "first", "second", "third" etc. used in the embodiments of the present application are only used to distinguish similar objects, and do not represent a specific order of the objects. Understandably, "first", "second", "third" etc. 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.
[0064] Point cloud is a three-dimensional representation of the surface of an object. It can be collected by photoelectric radar, laser radar, laser scanner, multi-view camera and other collection devices.
[0065] Point cloud is a set of discrete points that express the spatial structure and surface properties of a three-dimensional object or scene in a random distribution in space. Figure 1A shows a three-dimensional point cloud image and Figure 1B shows a local enlarged view of the three-dimensional point cloud image. It can be seen that the point cloud surface is composed of densely distributed points.
[0066] A two-dimensional image has information expressed at each pixel point, and the distribution is regular, so there is no need to record the position information. However, the distribution of points in a point cloud in three-dimensional space has randomness and irregularity, so the position of each point in space needs to be recorded in order to fully express a point cloud. Similar to a two-dimensional image, each position has corresponding attribute information during the collection process, which is usually an RGB color value, and the color value reflects the color of the object. For a point cloud, the attribute information corresponding to each point, in addition to color information, also includes reflectance value, which reflects the surface material of the object. Therefore, point cloud data usually includes position information and attribute information of points. The position information of points can also be referred to as geometric information of points. For example, the geometric information of points can be three-dimensional coordinate information (x, y, z) of points. The attribute information of points can include color information and / or reflectance, etc. For example, the reflectance can be one-dimensional reflectance information (r); the color information can be information on any color space, or the color information can be three-dimensional color information such as RGB information. Here, R represents red (Red, R), G represents green (Green, G), and B represents blue (Blue, B). For another example, the color information can be luminance chrominance (YCbCr, YUV) information. Wherein, Y represents brightness (Luma), Cb (U) represents blue color difference, and Cr (V) represents red color difference.
[0067] According to the laser measurement principle, the point cloud obtained can include the three-dimensional coordinate information of the point and the reflectivity value of the point. For example, according to the photogrammetry principle, the point cloud obtained can include the three-dimensional coordinate information of the point and the three-dimensional color information of the point. For another example, the point cloud obtained in combination with the laser measurement and the photogrammetry principle can include the three-dimensional coordinate information of the point, the reflectivity value of the point, and the three-dimensional color information of the point.
[0068] As shown in FIGS. 2A and 2B, a point cloud image and its corresponding data storage format are shown. FIG. 2A provides six viewing angles of the point cloud image, and FIG. 2B is composed of a file header information part and a data part. The header information includes the data format, the data representation type, the total number of points of the point cloud, and the content represented by the point cloud. For example, the point cloud is in the “.ply” format, represented by ASCII code, with a total number of points of 207242, and each point has three-dimensional coordinate information (x, y, z) and three-dimensional color information (r, g, b).
[0069] The point cloud can be classified according to the acquisition method as follows:
[0070] Static point cloud: the object is static, and the device for acquiring the point cloud is also static;
[0071] Dynamic point cloud: the object is moving, but the device for acquiring the point cloud is static;
[0072] Dynamic acquisition of point cloud: the device for acquiring the point cloud is moving.
[0073] For example, the point cloud can be classified into two categories according to the use as follows:
[0074] Category I: machine perception point cloud, which can be used in autonomous navigation system, real-time inspection system, geographic information system, visual sorting robot, rescue robot, etc.
[0075] Category II: human eye perception point cloud, which can be used in digital cultural heritage, free viewpoint broadcast, three-dimensional immersive communication, three-dimensional immersive interaction, etc.
[0076] The point cloud can flexibly and conveniently express the spatial structure and surface properties of a three-dimensional object or scene, and can provide strong reality under the premise of ensuring accuracy because the point cloud is obtained by directly sampling a real object. Therefore, the point cloud is widely used in virtual reality games, computer-aided design, geographic information systems, autonomous navigation systems, digital cultural heritage, free viewpoint broadcast, three-dimensional immersive remote presentation, three-dimensional reconstruction of biological tissues and organs, etc.
[0077] The acquisition of point cloud mainly has the following ways: computer generation, 3D laser scanning, 3D photogrammetry, etc. The computer can generate the point cloud of virtual three-dimensional objects and scenes; 3D laser scanning can obtain the point cloud of static real-world three-dimensional objects or scenes, and can obtain million-level point cloud per second; 3D photogrammetry can obtain the point cloud of dynamic real-world three-dimensional objects or scenes, and can obtain ten million-level point cloud per second. These technologies reduce the cost and time period of point cloud data acquisition, and improve the accuracy of data. The change of point cloud data acquisition method makes it possible to obtain a large amount of point cloud data, and with the increase of application demand, the processing of massive 3D point cloud data encounters the bottleneck of storage space and transmission bandwidth limitation.
[0078] Exemplarily, taking a point cloud video with a frame rate of 30 frames per second (fps) as an example, the number of points of each frame of point cloud is 700,000, each point has coordinate information xyz (float) and color information RGB (uchar), and the data amount of 10s point cloud video is about 0.7 million × (4 Byte × 3 + 1 Byte × 3) × 30 fps × 10s = 3.15 GB, wherein 1 Byte is 10 bit; while the YUV sampling format is 4:2:0, the frame rate of 1280 × 720 two-dimensional video is 24 fps, and the data amount of 10s is about 1280 × 720 × 12 bit × 24 fps × 10s = 0.33 GB, and the data amount of 10s two-view three-dimensional video is about 0.33 × 2 = 0.66 GB. As can be seen, the data amount of point cloud video far exceeds that of two-dimensional video and three-dimensional video of the same length. Therefore, in order to better realize data management, save server storage space, reduce transmission flow and transmission time between server and client, point cloud compression has become a key problem to promote the development of point cloud industry.
[0079] That is, since the point cloud is a collection of massive points, storing the point cloud will not only consume a large amount of memory, but also be not conducive to transmission, and there is no such large bandwidth to support the transmission of point cloud without compression in the network layer, therefore, the point cloud needs to be compressed.
[0080] At present, the point cloud coding framework that can compress point cloud can be a geometry-based point cloud compression (G-PCC) coding framework or a video-based point cloud compression (V-PCC) coding framework provided by Moving Picture Experts Group (MPEG), or an AVS-PCC coding framework provided by AVS. The G-PCC coding framework can be used for compressing a first type of static point cloud and a third type of dynamically acquired point cloud, which can be based on a point cloud compression test platform (Test Model Compression 13, TMC13), and the V-PCC coding framework can be used for compressing a second type of dynamic point cloud, which can be based on a point cloud compression test platform (Test Model Compression 2, TMC2). Therefore, the G-PCC coding framework is also referred to as a point cloud codec TMC13, and the V-PCC coding framework is also referred to as a point cloud codec TMC2.
[0081] An embodiment of the present application provides a network architecture of a point cloud coding system including a decoding method and an encoding method. FIG. 3 is a schematic diagram of a network architecture of a point cloud coding provided by an embodiment of the present application. As shown in FIG. 3, the network architecture includes one or more electronic devices 13 to 1N and a communication network 01, wherein the electronic devices 13 to 1N can perform video interaction through the communication network 01. The electronic devices in the implementation process can be various types of devices with point cloud coding functions, for example, the electronic devices can include a mobile phone, a tablet computer, a personal computer, a personal digital assistant, a navigator, a digital telephone, a video telephone, a television, a sensing device, a server, and the like, and the present application is not limited thereto. The decoder or the encoder in the embodiment of the present application can be the above-mentioned electronic devices.
[0082] In the embodiment of the present application, the electronic device with the point cloud coding function generally includes a point cloud encoder (i.e., an encoder) and a point cloud decoder (i.e., a decoder).
[0083] The following describes related technologies by taking the G-PCC coding framework as an example.
[0084] Related technology 1:
[0085] In the point cloud G-PCC coding framework, for the point cloud data to be encoded, the point cloud data is first divided into multiple slices through slice division. In each slice, the geometry information of the point cloud and the attribute information corresponding to each point are encoded separately.
[0086] FIG. 4A shows a schematic diagram of a G-PCC encoder. As shown in FIG. 4A, in the geometry encoding process, the geometry information is first converted in coordinates, so that all the point clouds are contained in a bounding box, and then quantized, which mainly plays a role of scaling. Due to the quantization rounding, the geometry information of a part of the point clouds is the same, and then it is determined based on the parameters whether to remove the duplicate points. This process of quantization and removal of duplicate points is also called the voxelization process. Then, the bounding box is divided by an octree or a prediction tree is constructed. In this process, the points in the divided leaf nodes are arithmetically encoded to generate a binary geometry bitstream; or the vertices generated by the division are arithmetically encoded (surface fitting based on the vertices) to generate a binary geometry bitstream. In the attribute encoding process, after the geometry encoding is completed and the geometry information is reconstructed, color conversion is needed to convert the color information (i.e., attribute information) from the RGB color space to the YUV color space. Then, the reconstructed geometry information is used to recolor the point cloud, so that the unencoded attribute information corresponds to the reconstructed geometry information. Attribute encoding is mainly for color information. In the color information encoding process, there are mainly two transformation methods, one is distance-based lifting transformation depending on the level of detail (LOD) division, and the other is direct region adaptive hierarchical transform (RAHT). Then, the quantized coefficients are arithmetically encoded to generate a binary attribute bitstream.
[0087] FIG. 4B shows a schematic diagram of a G-PCC decoder. As shown in FIG. 4B, for the obtained binary bitstream, the geometry bitstream and the attribute bitstream in the binary bitstream are first independently decoded. In the decoding of the geometry bitstream, the geometry information of the point cloud is obtained through arithmetic decoding-reconstructing octree / reconstructing prediction tree-reconstructing geometry-coordinate inverse conversion; in the decoding of the attribute bitstream, the attribute information of the point cloud is obtained through arithmetic decoding-inverse quantization-LOD division / RAHT-color inverse conversion, and the point cloud data to be encoded (i.e., the output point cloud) is restored based on the geometry information and the attribute information.
[0088] Related technology 2:
[0089] In the point cloud G-PCC coding framework, the predicting transform (PT) coding of point cloud attribute information is a technology for point cloud data compression, which combines attribute prediction and transform coding to achieve efficient compression of point cloud data. Specifically, first, the attributes in the point cloud data are predicted, which can be performed by analyzing the attribute values of adjacent points or using prior knowledge to predict the attributes. The purpose of prediction is to estimate the value of each attribute in the point cloud as accurately as possible for subsequent compression and coding. After prediction, the predicted attribute value is compared with the original attribute value to obtain the prediction error or residual. Then, the quantized coefficients are entropy coded, usually using Huffman coding or arithmetic coding and other technologies to further compress the data. The receiving end decodes and decompresses the coded data, recovers the prediction error, and adds it to the predicted value to obtain the reconstructed attribute value. The final reconstructed attribute value can be used to restore the original point cloud data. Through PT coding, the attribute correlation and predictability in the point cloud data can be effectively utilized to achieve efficient compression and transmission of point cloud data.
[0090] FIG. 5 is a flowchart of a PT coding provided by an embodiment of the present application. As shown in FIG. 5, first, the original point cloud is divided into LoD according to the Levels of Detail (LoD) generation sequence. Then, the attributes of the current to-be-coded point are predicted using the reconstructed points (3 nearest neighbors of the ith point). Further, the prediction residual of the current to-be-coded point is obtained by subtracting the attribute prediction value from the original attribute value of the ith point. Finally, the prediction residual is quantized and entropy coded to generate an attribute bitstream.
[0091] The PT prediction coding process will be described in detail below according to the above steps.
[0092] Step 1, LoD generation:
[0093] The current G-PCC software platform uses a distance-based LoD construction method, as shown in FIG. 6. The original sequence includes the following points: P1, P2, P3, P4, P5, P6, P7, P8, P9, and P10. The LoD sequence includes 3 refinement levels (Refinement levels): LoD1, LoD2, and LoD3. l ) l=0…L-1 L represents the number of refinement layers. The specific steps of constructing LoD are as follows:
[0094] (1) The user defines L Euclidean distances (d l ) l=0…L-1 , and divides L refinement layers (R l ) l=0…L-1 ;
[0095] (2) Mark all points as unvisited and set the visited point set V as an empty set;
[0096] (3) Refine the layer R l Generate:
[0097] In some embodiments, traverse all points, if the current point has been visited, ignore it; otherwise, calculate the minimum distance D of the current point to the point set V. If D is less than d l , ignore the current point, otherwise, mark the current point as visited and add it to R l and V. Repeat the above process until all points are traversed.
[0098] (4) Take the union set of the refinement layers R0, R1,..., R l to obtain the detail layer LoD l (i.e. );
[0099] (5) Repeat the above process until all points have been visited.
[0100] Step 2, optimal prediction value selection:
[0101] In some embodiments, as shown in FIG. 7, the process of determining the best prediction mode in the related art includes S11 to S17:
[0102] S11, calculate the maximum attribute difference of the three candidate neighbors.
[0103] In some embodiments, after the LoD is constructed, according to the generation order of the LoD, first find the three nearest neighbors of the current to-be-encoded point from the already-encoded data points. The attribute reconstruction value of the three nearest neighbors is taken as the candidate prediction value of the current to-be-encoded point.
[0104] S12, whether the maximum attribute difference is greater than a preset threshold.
[0105] In some embodiments, calculate the maximum attribute difference max_difference of the three candidate neighbors, if the maximum attribute difference is greater than a preset threshold (adaptive threshold adaptive_threshold), execute S13, if the maximum attribute difference is less than or equal to the preset threshold (adaptive threshold adaptive_threshold), execute S14.
[0106] S13, calculate the scores of prediction modes 0-3 using RDO.
[0107] In some embodiments, if the value of max_difference is greater than the adaptive threshold adaptive_threshold, the optimal prediction value is selected from the three according to rate distortion optimization (RDO). The scores of modes 0-3 are calculated, and the minimum cost score is found as the best prediction mode.
[0108] S14, the best prediction mode = 0.
[0109] In some embodiments, if the value of max_difference is less than the adaptive threshold adaptive_threshold, the three neighbor points are considered to be close to the predicted point attribute value, and therefore mode 0 weighted prediction is adopted.
[0110] S15, find the minimum score.
[0111] In some embodiments, the mode corresponding to the minimum cost score in the scores of modes 0-3 is taken as the best prediction mode.
[0112] S16, set the best prediction mode.
[0113] S17, the best prediction mode = 0-3.
[0114] Table 1 is a schematic table of candidate prediction modes of an attribute encoding provided by an embodiment of the present application. For prediction mode 0, the attribute prediction value of the point to be encoded (also referred to as the current point or the point before the node) is the weighted average of the attributes of the three nearest neighbors of the point to be encoded. For prediction mode 1, the attribute prediction value of the point to be encoded is the attribute value of the first nearest neighbor of the point to be encoded. For prediction mode 2, the attribute prediction value of the point to be encoded is the attribute value of the second nearest neighbor of the point to be encoded. For prediction mode 3, the attribute prediction value of the point to be encoded is the attribute value of the third nearest neighbor of the point to be encoded. For example, when encoding the attribute value of point P0 in FIG. 6, the prediction variable index of the attribute value of the nearest neighbor point P2 is set to 1; the prediction variable indexes of the attribute values of the second nearest neighbor point P7 and the third nearest neighbor point P10 are set to 2 and 3, respectively; and the prediction variable index of the weighted average of points P2, P7 and P10 is set to 0.
[0115] Table 1
[0116] In some embodiments, the weighted average for prediction mode 0 can be represented by formula (1) and formula (2):
[0117] In formula (1) and formula (2), represents the attribute prediction value of the current point i, and j represents the index of the three neighbor points (also referred to as the nearest neighbor points), represents the attribute reconstruction value of the neighboring point i, Represents the spatial geometric weight of the neighboring point j to the current point i, x i 、y ij and z ij Represents the geometric position coordinates of the neighboring point j, x i 、y i and z i Indicates the geometric position coordinates of the current point i.
[0118] Step 3: Attribute prediction residual and quantification:
[0119] In some embodiments, the attribute prediction value of the current point i is obtained through steps 1 and 2. (k is the total number of points in the point cloud). Let (a i ) i∈0…k-1 is the original attribute value of the current point, then the attribute prediction residual (r i ) i∈0…k-1 It can be expressed by formula (3):
[0120] In formula (3), Represents the attribute prediction value of the current point i, a i Represents the original attribute value of the current point i, r i Represents the attribute prediction residual of the current point i.
[0121] In some embodiments, the attribute prediction residual of the current point i is quantized by formula (4):
[0122] In formula (4), r i Represents the attribute prediction residual of the current point i, Qs represents the quantization step (Quantization step, Qs), Q i represents the quantized attribute prediction residual of the current point i. The quantization step size Qs can be calculated by the quantization parameter (QP) specified by the Connectionless Transport Protocol (CTC).
[0123] Related technology 3:
[0124] The G-PCC software platform adopts a LoD construction method based on Euclidean distance, but for an Adaptive Multi-resolution Fused Point Cloud Sequence (Am-fused point cloud sequence) having adaptive multi-resolution characteristics and fusion processing and containing multiple attributes (color, reflectivity), if one attribute of the Am-fused point cloud sequence has been encoded, the prediction of another attribute can be guided by the encoded attribute. For example, if the reflectivity values of two points of the reconstructed point cloud are very different, it is reasonable to consider that the color information of the two points is also very different. Based on this idea, the G-PCC modifies the LoD construction method in the multi-attribute point cloud. When encoding the second attribute, the distance calculation formula of the LoD can be represented by formula (5) and formula (6): overrallDis = geomW x geomDis + attrW x attrDis (5) attrW = λ x maxGeom / maxAttr (6)
[0125] In formula (5) and formula (6), maxGeom represents the sum of the length, width and height of the block boundary box, maxAttr represents the maximum value of the encoded attribute, λ represents a parameter balancing the importance of geometry and attribute, the value of attrDis is the difference between the encoded attribute value of the current point and the predicted point, geomDis represents the Euclidean distance between the current point and the predicted point, and geomW is set to 1.
[0126] In the current G-PCC attribute encoding framework, in order to remove the temporal and spatial redundancy of point cloud encoding, intra-frame prediction and inter-frame prediction are widely introduced. And inter-chroma prediction is also introduced to remove the redundancy between the chroma blue component (Cb) and the chroma red component (Cr). However, when the G-PCC encodes the Am-fused point cloud sequence of multiple attributes (color, reflectivity), the redundancy between the two attributes has not been fully explored and removed. Although there are related technologies to explore the correlation information between the attributes, only the encoded attribute information is used to guide the encoding of another attribute. When one attribute has been encoded, there is still a lot of redundancy between the attributes when encoding another attribute, which will inevitably cause a waste of code rate.
[0127] Based on this, in a first aspect, the embodiments of the present application provide a decoding method. On the one hand, the attribute prediction value of the to-be-decoded attribute of the current point is determined through the target cross-attribute prediction mode and the correlation coefficient of the target neighbor point, which can more accurately predict the attribute value of the current point and avoid the transmission of redundant information. In this way, the amount of data to be transmitted can be reduced during encoding, thereby reducing the waste of code rate. On the one hand, in the process of predicting the attribute reconstruction value of the to-be-decoded attribute of the current point, the attribute reference value of the to-be-decoded attribute of the current point is determined based on the correlation coefficient of the target neighbor point of the current point, which can improve the utilization rate of the code rate, avoid the waste of the code rate, reduce the redundancy and cost during data transmission, and thus improve the efficiency and performance of decoding.
[0128] The embodiments of the present application will be described in detail below with reference to the accompanying drawings.
[0129] In an embodiment of the present application, FIG. 8 is a flowchart of a decoding method provided by the embodiments of the present application. As shown in FIG. 8, the method can include S101 to S105:
[0130] S101, decode the code stream to determine the first syntax element information of the current point.
[0131] It should be noted that the decoding method of the embodiments of the present application is applied to a decoder. In addition, the decoding method can specifically refer to a laser radar point cloud cross-attribute prediction method. Among the attribute prediction modes, this mainly improves a single-neighbor cross-attribute prediction PT encoding method to avoid the problem that when one attribute information has been encoded, there is still a large amount of redundancy between the two attribute information when encoding another attribute information in the related technology.
[0132] In the embodiments of the present application, the current point is also referred to as a current node, a current to-be-decoded point, a to-be-decoded point, a current to-be-detected point, a to-be-decoded node, etc., which are not limited in the embodiments of the present application.
[0133] In the embodiments of the present application, the first syntax element information is used to indicate the best prediction mode of the current point. Among them, the best prediction mode of the current point can be a cross-attribute prediction mode or a non-cross-attribute prediction mode.
[0134] In the embodiments of the present application, the value of the first syntax element information can be in the form of a parameter or in the form of a number. Specifically, the first syntax element information can be a parameter written in a profile, or a value of a flag, which is not limited here.
[0135] For example, if the value of the first syntax element information is 0, it is determined that the best prediction mode of the current point is prediction mode 0; if the value of the first syntax element information is 1, it is determined that the best prediction mode of the current point is prediction mode 1.
[0136] S102, determining, according to the value of the first syntax element information, the best prediction mode of the current point from the candidate prediction modes as the target cross-attribute prediction mode.
[0137] In the embodiments of the present application, the candidate prediction modes include at least one or more candidate cross-attribute prediction modes. Here, the candidate cross-attribute prediction mode is also referred to as a cross-attribute prediction mode.
[0138] In the embodiments of the present application, the target cross-attribute prediction mode is the best prediction mode of the one or more candidate cross-attribute prediction modes.
[0139] For example, the candidate prediction modes can include three candidate cross-attribute prediction modes, prediction mode 1, prediction mode 2 and prediction mode 3. In the case where the value of the first syntax element information is 1, prediction mode 1 is taken as the target cross-attribute prediction mode. In the case where the value of the first syntax element information is 2, prediction mode 2 is taken as the target cross-attribute prediction mode. In the case where the value of the first syntax element information is 3, prediction mode 3 is taken as the target cross-attribute prediction mode.
[0140] In the embodiments of the present application, the candidate cross-attribute prediction mode refers to predicting the attribute prediction value of the to-be-decoded attribute of the current point by using one or more attribute reconstruction values of the neighboring point of the current point.
[0141] For example, the one or more attribute reconstruction values include the luminance reconstruction value and the reflectance reconstruction value.
[0142] For example, the candidate cross-attribute prediction mode can represent predicting the luminance reconstruction value of the current point by using the luminance reconstruction value and the reflectance reconstruction value of the neighboring point of the current point. Alternatively, the cross-attribute prediction mode can represent predicting the reflectance reconstruction value of the current point by using the luminance reconstruction value and the reflectance reconstruction value of the neighboring point of the current point.
[0143] It should be noted that in the embodiments of the present application, the candidate cross-attribute prediction mode is described by predicting the luminance reconstruction value or the reflectance reconstruction value of the current point by using the luminance reconstruction value and the reflectance reconstruction value of the neighboring point of the current point. In actual application scenarios, the luminance reconstruction value and the reflectance reconstruction value are not limited, and other attribute reconstruction values can also be used, which are not limited in the embodiments of the present application.
[0144] S103, determining one or more attribute reconstruction values of the target neighboring point of the current point according to the target cross-attribute prediction mode.
[0145] In the embodiments of the present application, the target cross-attribute prediction mode corresponds to the target neighbor point. That is, the target neighbor point is the neighbor point corresponding to the target cross-attribute prediction mode in the M neighbor points of the current point.
[0146] In the embodiments of the present application, the target cross-attribute prediction mode is related to the target neighbor point. Table 2 is a schematic table of a candidate prediction mode provided by the embodiments of the present application. As shown in Table 2, in the case of the target cross-attribute prediction mode being prediction mode 1, it is indicated that the cross-attribute guided prediction is performed by using the first neighbor point of the current point to derive the attribute prediction value of the to-be-decoded attribute of the current point. In the case of the target cross-attribute prediction mode being prediction mode 2, it is indicated that the cross-attribute guided prediction is performed by using the second neighbor point of the current point to derive the attribute prediction value of the to-be-decoded attribute of the current point. In the case of the target cross-attribute prediction mode being prediction mode 3, it is indicated that the cross-attribute guided prediction is performed by using the third neighbor point of the current point to derive the attribute prediction value of the to-be-decoded attribute of the current point.
[0147] Table 2
[0148] In the embodiments of the present application, the first neighbor point, the second neighbor point and the third neighbor point in Table 1 are determined according to the RoD generation sequence. Assuming that the current point cloud sequence includes the following points: P0, P1, P2, P3, P4, P5, P6, P7, P8, P9 and P10, the distance-based LoD construction is performed on the above-mentioned 11 points to obtain the LoD sequence: P0, P2, P7, P10, P1, P5, P6, P9, P3, P4 and P8. Assuming that the current point is P0, the first neighbor point of P0 is P2, the second neighbor point of P0 is P7, and the third neighbor point of P0 is P10.
[0149] For example, prediction mode 1 can refer to predicting the luminance reconstruction value of the current point by using the luminance reconstruction value and the attribute reconstruction value of the first neighbor point of the current point, or prediction mode 1 can refer to predicting the reflectivity reconstruction value of the current point by using the luminance reconstruction value and the attribute reconstruction value of the first neighbor point of the current point. Prediction mode 2 can refer to predicting the luminance reconstruction value of the current point by using the luminance reconstruction value and the attribute reconstruction value of the second neighbor point of the current point, or prediction mode 2 can refer to predicting the reflectivity reconstruction value of the current point by using the luminance reconstruction value and the attribute reconstruction value of the second neighbor point of the current point. Prediction mode 3 can refer to predicting the luminance reconstruction value of the current point by using the luminance reconstruction value and the attribute reconstruction value of the third neighbor point of the current point, or prediction mode 3 can refer to predicting the reflectivity reconstruction value of the current point by using the luminance reconstruction value and the attribute reconstruction value of the third neighbor point of the current point.
[0150] In S104, the correlation coefficient of the target neighbor point is determined according to one or more attribute reconstruction values of the target neighbor point.
[0151] In the embodiments of the present application, the correlation coefficient of the target neighbor point has the following three cases:
[0152] Case 1: The correlation coefficient of the target neighbor point represents the correlation between the multiple attribute reconstruction values of the target neighbor point.
[0153] For example, the multiple attribute reconstruction values of the target neighbor point can include a luminance reconstruction value and a reflectance reconstruction value. At this time, the correlation coefficient of the target neighbor point can represent the correlation between the luminance reconstruction value and the reflectance reconstruction value of the target neighbor point.
[0154] Case 2: The correlation coefficient of the target neighbor point represents the correlation between the attribute reconstruction value of the target neighbor point and the attribute reconstruction value of the current point.
[0155] For example, in the case where the attribute reconstruction value of the target neighbor point is a luminance reconstruction value, the correlation coefficient of the target neighbor point can represent the correlation between the luminance reconstruction value of the target neighbor point and the luminance reconstruction value of the current point. Alternatively, in the case where the attribute reconstruction value of the target neighbor point is a reflectance reconstruction value, the correlation coefficient of the target neighbor point can represent the correlation between the reflectance reconstruction value of the target neighbor point and the reflectance reconstruction value of the current point.
[0156] Case 3: The correlation coefficient of the target neighbor point represents the correlation between the attribute reconstruction value of the target neighbor point and the attribute reconstruction value of a non-target neighbor point of the current point.
[0157] For example, the non-target neighbor point is any one of the M neighbor points of the current point other than the target neighbor point. The non-target neighbor point can be the nearest neighbor point of the M neighbor points of the current point other than the target neighbor point.
[0158] For example, the correlation coefficient of the target neighbor point can represent the correlation between the luminance reconstruction value of the target neighbor point and the luminance reconstruction value of the non-target neighbor point. Alternatively, the correlation coefficient of the target neighbor point can represent the correlation between the luminance reconstruction value of the target neighbor point and the reflectance reconstruction value of the non-target neighbor point. Alternatively, the correlation coefficient of the target neighbor point can represent the correlation between the reflectance reconstruction value of the target neighbor point and the reflectance reconstruction value of the non-target neighbor point.
[0159] S105, determining the attribute prediction value of the to-be-decoded attribute of the current point according to the attribute reference value of the to-be-decoded attribute of the current point and the correlation coefficient.
[0160] In the embodiments of the present application, the to-be-decoded attribute can be luminance or reflectance.
[0161] In some embodiments of the present application, the attribute prediction value of the to-be-decoded attribute is determined by multiplying the attribute reference value of the to-be-decoded attribute of the current point and the correlation coefficient.
[0162] In the embodiments of the present application, the implementation after S105 includes S106:
[0163] S106, determining the attribute reconstruction value of the to-be-decoded attribute of the current point based on the attribute prediction value of the to-be-decoded attribute of the current point.
[0164] In the embodiments of the present application, the implementation of S106 can include:
[0165] decoding the code stream to determine the attribute prediction difference value of the to-be-decoded attribute of the current point;
[0166] determining the attribute reconstruction value of the to-be-decoded attribute of the current point according to the attribute prediction difference value of the to-be-decoded attribute of the current point.
[0167] In the embodiments of the present application, the attribute prediction difference value of the to-be-decoded attribute of the current point is added to obtain the attribute reconstruction value of the to-be-decoded attribute of the current point.
[0168] The decoding method provided in the embodiments of the present application includes: decoding a code stream to determine first syntax element information of a current point; determining, according to a value of the first syntax element information, that a best prediction mode adopted by the current point is a target cross-attribute prediction mode from among candidate prediction modes; determining one or more attribute reconstruction values of a target neighbor point of the current point according to the target cross-attribute prediction mode; determining a correlation coefficient of the target neighbor point according to the one or more attribute reconstruction values of the target neighbor point; determining an attribute prediction value of a to-be-decoded attribute of the current point according to an attribute reference value of the to-be-decoded attribute of the current point and the correlation coefficient; and determining an attribute reconstruction value of the to-be-decoded attribute of the current point based on the attribute prediction value of the to-be-decoded attribute of the current point. The attribute prediction value of the to-be-decoded attribute is calculated according to the correlation information and known attribute values of the neighboring points of the current point, and can be used as the prediction value of the attribute of the current point. The correlation coefficient can help measure the degree of correlation between the to-be-decoded attribute and the known attribute. If the correlation coefficient is high, it means that there is a strong linear relationship between the two, and the prediction value can more accurately reflect the actual value of the to-be-decoded attribute. By using the correlation coefficient for prediction, unnecessary data transmission and storage can be avoided. If the correlation between the to-be-decoded attribute and the known attribute is low, the prediction value will be closer to the actual value of the to-be-decoded attribute, reducing the transmission and storage of redundant data. Thus, the utilization rate of the code rate can be improved, code rate waste can be avoided, and decoding performance can be improved.
[0169] The following describes how to perform cross-attribute prediction on the attribute prediction value of the to-be-decoded attribute of the current point in the three cases of the correlation coefficient of the target neighbor point mentioned in the foregoing.
[0170] 1. For case 1, the correlation coefficient represents the correlation between the reconstructed values of multiple attributes of the target neighbor point.
[0171] In some embodiments of the present application, the correlation coefficient includes a first coefficient; the implementation of determining the correlation coefficient of the target neighbor point according to the reconstructed value of one or more attributes of the target neighbor point in S104 can include:
[0172] determining the first coefficient according to the first attribute reconstructed value of the target neighbor point and the second attribute reconstructed value of the target neighbor point.
[0173] In an embodiment of the present application, in case 1, the first attribute reconstructed value of the target neighbor point corresponds to an attribute different from the attribute corresponding to the second attribute reconstructed value of the target neighbor point, and the attribute corresponding to the first attribute reconstructed value and the attribute corresponding to the second attribute reconstructed value have a correlation.
[0174] It should be noted that the attribute corresponding to the first attribute reconstructed value and the attribute corresponding to the second attribute reconstructed value are different and have a correlation, which means that the first attribute reconstructed value and the second attribute reconstructed value are reconstructed values of two different attributes (first attribute and second attribute), but the first attribute and the second attribute have a correlation. For example, the first attribute can be luminance, and the second attribute can be reflectance.
[0175] Here, the correlation between luminance and reflectance is described. In terms of optical properties of an object, luminance generally refers to the intensity of light perceived by the human eye or the light brightness. Reflectance is a measure of the degree of light reflection on the surface of an object, i.e., the relative intensity of the reflected light. In general, higher reflectance usually leads to higher luminance. According to optical theory, the luminance attribute and the reflectance attribute of an object have a strong correlation. According to statistics, the reflectance and luminance information between most points in the Am-fused category point cloud also have a strong correlation, especially for neighbor points, their correlation is basically the same. Therefore, using the already encoded attribute information of the current point to predict the unencoded attribute value can reduce the residual and remove the redundancy. For example, as shown in FIG. 9, the luminance information (luma) of the current point cloud has been encoded, the current point (to be predicted point) is P0, and the three neighbor points of the current point are P1, P2 and P3. The target neighbor point of the current point is P1, and a linear model (first coefficient) is established using the relationship between the luminance reconstructed value (luma=40) of P1 and the reflectance reconstructed value (ref=40) of P1 as the correlation between the luminance information and the reflectance information of the current point P0, so as to predict the attribute prediction value of the to-be-decoded attribute (reflectance) of the current point using the luminance reconstructed value of P0 and the first coefficient of P1, or predict the attribute prediction value of the to-be-decoded attribute (luminance) of the current point using the reflectance reconstructed value of P0 and the first coefficient of P1.
[0176] It can be understood that the first coefficient can reflect the degree of correlation between different attributes of the target neighbor point. If the first coefficient is close to 1, it indicates that there is a strong positive correlation between the first attribute and the second attribute; if it is close to 0, it indicates that there is almost no correlation between the two, which helps to evaluate the correlation between the attributes, so as to better understand the characteristics and rules of the data.
[0177] In some embodiments of the present application, the first coefficient includes a ratio of the first attribute reconstruction value of the target neighbor point and the second attribute reconstruction value of the target neighbor point.
[0178] In the embodiments of the present application, the attribute corresponding to the first attribute reconstruction value and the attribute corresponding to the second attribute reconstruction are related to the attribute coding order of the current node.
[0179] In the embodiments of the present application, taking the first attribute as luma and the second attribute as ref as an example, the first coefficient includes the following two cases:
[0180] (1) In the case that the attribute reconstruction order of the current point is that the first attribute precedes the second attribute, the attribute to be decoded is the second attribute, the first attribute reconstruction value of the target neighbor point is the reconstruction value of the second attribute of the target neighbor point, the second attribute reconstruction value of the target neighbor point is the reconstruction value of the first attribute of the target neighbor point, and the attribute reference value of the attribute to be decoded is the reconstruction value of the first attribute of the current point.
[0181] In the embodiments of the present application, in the case that the attribute reconstruction order of the current point is that the luma precedes the ref, the attribute to be decoded of the current node is the ref, the first attribute reconstruction value of the target neighbor point is the ref reconstruction value of the target neighbor point, the second attribute reconstruction value of the target neighbor point is the luma reconstruction value of the target neighbor point, the attribute reference value of the attribute to be decoded of the current point is the luma reconstruction value of the current point, and the attribute prediction value of the attribute to be decoded of the current point is the ref prediction value.
[0182] For example, the ref prediction value of the current point can be determined according to formula (7) and formula (8):
[0183] In formula (7) and formula (8), Coeff ref represents the ref prediction value of the current point (the attribute prediction value of the attribute to be decoded), Coeff luma represents the luma reconstruction value of the current point (the attribute reference value of the attribute to be decoded), s i represents the first coefficient of the target neighbor point (the i-th neighbor point of the current point), represents the ref reconstruction value of the target neighbor point (i.e. the first attribute reconstruction value of the target neighbor point), a reflectance reconstruction value of the target neighbor point (i.e., a second attribute reconstruction value of the target neighbor point).
[0184] (2) in the case that the attribute reconstruction order of the current point is that the second attribute precedes the first attribute, the attribute to be decoded is the first attribute, the first attribute reconstruction value of the target neighbor point is the reconstruction value of the first attribute of the target neighbor point, the second attribute reconstruction value of the target neighbor point is the reconstruction value of the second attribute of the target neighbor point, and the attribute reference value of the attribute to be decoded is the reconstruction value of the second attribute of the current point.
[0185] In the embodiments of the present application, in the case that the attribute reconstruction order of the current point is that the reflectance precedes the luminance, the attribute to be decoded of the current point is the luminance, the first attribute reconstruction value of the target neighbor point is the luminance reconstruction value of the target neighbor point, the second attribute reconstruction value of the target neighbor point is the reflectance reconstruction value of the target neighbor point, the attribute reference value of the attribute to be decoded of the current point is the reflectance reconstruction value of the current point, and the attribute prediction value of the attribute to be decoded of the current point is the luminance prediction value.
[0186] For example, the luminance prediction value of the current point can be determined according to formula (9) and formula (10):
[0187] In formula (9) and formula (10), Coeff ref represents the reflectance reconstruction value of the current point (the attribute reference value of the attribute to be decoded), Coeff luma represents the luminance prediction value of the current point (the attribute prediction value of the attribute to be decoded), s i represents the first coefficient of the target neighbor point (the i-th neighbor point of the current point), represents the reflectance reconstruction value of the target neighbor point (i.e., the second attribute reconstruction value of the target neighbor point), represents the luminance reconstruction value of the target neighbor point (i.e., the first attribute reconstruction value of the target neighbor point).
[0188] It can be understood that, on the one hand, by the first coefficient, the correlation between the first attribute reconstruction value and the second attribute reconstruction value of the target neighbor point can be taken into the prediction process. If the first coefficient is large, it indicates that there is a strong correlation between the two attributes, so when predicting the to-be-decoded attribute of the current point, the relationship between the first attribute and the second attribute can be more accurately utilized, and the prediction accuracy can be improved. On the other hand, in combination with the first coefficient and the attribute reference value, a more accurate attribute prediction value of the to-be-decoded attribute can be obtained. This prediction method based on correlation information can avoid unnecessary errors and improve the accuracy of the decoding process. On the other hand, the attribute prediction value calculation process based on the first coefficient and the attribute reference value is relatively simple and accurate, and does not require excessive computing resources, which can reduce redundant information in the data transmission process and improve the efficiency of data transmission. Especially in the case of limited bandwidth or high transmission cost, effective use of correlation information can save data transmission resources.
[0189] 2. For case 2, the correlation coefficient represents the correlation between the attribute reconstruction value of the target neighbor point and the attribute reconstruction value of the current point.
[0190] In some embodiments of the present application, the correlation coefficient includes a second coefficient; the implementation of determining the correlation coefficient of the target neighbor point according to one or more attribute reconstruction values of the target neighbor point in S104 can include:
[0191] determining the second coefficient according to the first attribute reconstruction value of the current point and the first attribute reconstruction value of the target neighbor point.
[0192] In an embodiment of the present application, in case 2, the first attribute reconstruction value of the target neighbor point corresponds to the same attribute as the attribute reconstruction value of the current point.
[0193] In some embodiments of the present application, the second coefficient includes the ratio of the first attribute reconstruction value of the current point and the first attribute reconstruction value of the target neighbor point.
[0194] In an embodiment of the present application, the attribute corresponding to the first attribute reconstruction value is related to the attribute coding order of the current point.
[0195] In an embodiment of the present application, taking the first attribute as luma and the second attribute as reflectance as an example, the second coefficient includes the following two cases:
[0196] (1) In the case where the attribute reconstruction order of the current point is that the first attribute precedes the second attribute, the to-be-decoded attribute is the second attribute, the first attribute reconstruction value of the current point is the reconstruction value of the first attribute of the current point, the first attribute reconstruction value of the target neighbor point is the reconstruction value of the first attribute of the target neighbor point, and the attribute reference value of the to-be-decoded attribute is the reconstruction value of the second attribute of the target neighbor point.
[0197] In the embodiments of the present application, in the case that the attribute reconstruction order of the current point is that the reflectivity precedes the luminance, the to-be-decoded attribute of the current node is the reflectivity, the first attribute reconstruction value of the current point is the luminance reconstruction value of the current point, the first attribute reconstruction value of the target neighbor point is the luminance reconstruction value of the target neighbor point, the attribute reference value of the to-be-decoded attribute of the current point is the reflectivity reconstruction value of the target neighbor point, and the attribute prediction value of the to-be-decoded attribute of the current point is the reflectivity prediction value.
[0198] For example, the luminance prediction value of the current point can be determined according to formula (11) and formula (12):
[0199] In formula (11) and formula (12), Coeff ref represents the reflectivity prediction value of the current point (the attribute prediction value of the to-be-decoded attribute), Coeff luma represents the luminance reconstruction value of the current point (the first attribute reconstruction value of the current point), s i represents the second coefficient of the target neighbor point (the i th neighbor point of the current point), represents the reflectivity reconstruction value of the target neighbor point (the attribute reference value of the to-be-decoded attribute), represents the luminance reconstruction value of the target neighbor point (the first attribute reconstruction value of the target neighbor point).
[0200] (2) In the case that the attribute reconstruction order of the current point is that the second attribute precedes the first attribute, the to-be-decoded attribute is the first attribute, the first attribute reconstruction value of the current point is the reconstruction value of the second attribute of the current point, the first attribute reconstruction value of the target neighbor point is the reconstruction value of the second attribute of the target neighbor point, and the attribute reference value of the to-be-decoded attribute is the reconstruction value of the first attribute of the target neighbor point.
[0201] In the embodiments of the present application, in the case that the attribute reconstruction order of the current point is that the reflectivity precedes the luminance, the to-be-decoded attribute of the current node is the luminance, the first attribute reconstruction value of the current point is the reflectivity reconstruction value of the current point, the first attribute reconstruction value of the target neighbor point is the reflectivity reconstruction value of the target neighbor point, the attribute reference value of the to-be-decoded attribute of the current point is the luminance reconstruction value of the target neighbor point, and the attribute prediction value of the to-be-decoded attribute of the current point is the luminance prediction value.
[0202] For example, the luminance prediction value of the current point can be determined according to formula (13) and formula (14):
[0203] In formula (13) and formula (14), Coeff ref represents the reflectivity reconstruction value of the current point (the first attribute reconstruction value of the current point), Coeff lumaa luminance prediction value of the current point (an attribute reference value of the attribute to be decoded), s i a second coefficient representing the target neighbor point (the i-th neighbor point of the current point), a reflectance reconstruction value of the target neighbor point (a first attribute reconstruction value of the target neighbor point), a luminance reconstruction value of the target neighbor point (an attribute reference value of the attribute to be decoded).
[0204] It can be understood that the second coefficient considers the ratio relationship between the first attribute reconstruction value of the current point and the first attribute reconstruction value of the target neighbor point, which can help to consider the correlation between the attribute of the current point and the attribute of the target neighbor point, so as to more accurately predict the attribute value of the current point. In combination with the second coefficient and the attribute reference value, a more accurate attribute prediction value of the attribute to be decoded can be obtained. The consideration of the second coefficient makes the prediction process more targeted, and can better reflect the attribute relationship between the current point and the target neighbor point, thereby improving the prediction accuracy. The accurate attribute prediction value can reduce unnecessary data transmission and save transmission resources. By considering the second coefficient, the correlation between attributes can be more effectively utilized, and redundant information in the transmission process can be reduced, thereby improving the efficiency of data transmission.
[0205] 3. For case 2, the correlation coefficient represents the correlation between the attribute reconstruction value of the target neighbor point and the attribute reconstruction value of the non-target neighbor point of the current point.
[0206] In some embodiments of the present application, the correlation coefficient includes a third coefficient; the implementation of determining the correlation coefficient of the target neighbor point according to one or more attribute reconstruction values of the target neighbor point in S104 can include:
[0207] determining the third coefficient according to the first attribute reconstruction value of the non-target neighbor point and the first attribute reconstruction value of the target neighbor point.
[0208] In an embodiment of the present application, in case 3, the attribute corresponding to the first attribute reconstruction value of the target neighbor point is the same as the attribute corresponding to the attribute reconstruction value of the non-target neighbor point.
[0209] In an embodiment of the present application, the non-target neighbor point is any one of the M neighbor points of the current point except the target neighbor point, for example, the non-target neighbor point can be the nearest neighbor point of the M neighbor points of the current point except the target neighbor point, or the non-target neighbor point can be the nearest neighbor point of the M neighbor points of the current point except the target neighbor point, and the present application does not make any limitation thereon.
[0210] In some embodiments of the present application, the third coefficient includes the ratio of the first attribute reconstruction value of the target neighbor point and the first attribute reconstruction value of the non-target neighbor point.
[0211] In the embodiments of the present application, the attribute corresponding to the first attribute reconstruction value is related to the attribute coding order of the current point.
[0212] In the embodiments of the present application, taking the first attribute as luma and the second attribute as ref as an example, the third coefficient includes the following two cases:
[0213] (1) In the case that the attribute reconstruction order of the current point is that the first attribute precedes the second attribute, the attribute to be decoded is the second attribute, the first attribute reconstruction value of the non-target neighbor point is the reconstruction value of the first attribute of the non-target neighbor point, the first attribute reconstruction value of the target neighbor point is the reconstruction value of the first attribute of the target neighbor point, and the attribute reference value of the attribute to be decoded is the reconstruction value of the second attribute of the target neighbor point.
[0214] In the embodiments of the present application, in the case that the attribute reconstruction order of the current point is that luma precedes ref, the attribute to be decoded of the current point is ref, the first attribute reconstruction value of the non-target neighbor point is the luma reconstruction value of the current point, the first attribute reconstruction value of the target neighbor point is the luma reconstruction value of the target neighbor point, the attribute reference value of the attribute to be decoded of the current point is the ref reconstruction value of the target neighbor point, and the attribute prediction value of the attribute to be decoded of the current point is the ref prediction value.
[0215] For example, the luma prediction value of the current point can be determined according to formula (15) and formula (16):
[0216] In formula (15) and formula (16), Coeff ref represents the ref prediction value (the attribute prediction value of the attribute to be decoded) of the current point, coeff_luma p represents the luma reconstruction value (the first attribute reconstruction value of the non-target neighbor point) of the non-target neighbor point (the pth neighbor point of the current point), s i represents the third coefficient of the target neighbor point (the ith neighbor point of the current point), represents the ref reconstruction value (the attribute reference value of the attribute to be decoded) of the target neighbor point, represents the luma reconstruction value (the first attribute reconstruction value of the target neighbor point) of the target neighbor point.
[0217] (2) In the case that the attribute reconstruction order of the current point is that the second attribute precedes the first attribute, the attribute to be decoded is the first attribute, the first attribute reconstruction value of the non-target neighbor point is the reconstruction value of the second attribute of the non-target neighbor point, the first attribute reconstruction value of the target neighbor point is the reconstruction value of the second attribute of the target neighbor point, and the attribute reference value of the attribute to be decoded is the reconstruction value of the first attribute of the target neighbor point.
[0218] In the embodiments of the present application, in the case that the attribute reconstruction order of the current point is that reflectance precedes luminance, the to-be-decoded attribute of the current point is luminance, the first attribute reconstruction value of the current point is the reflectance reconstruction value of the current point, the first attribute reconstruction value of the target neighbor point is the reflectance reconstruction value of the target neighbor point, the attribute reference value of the to-be-decoded attribute of the current point is the luminance reconstruction value of the target neighbor point, and the attribute prediction value of the to-be-decoded attribute of the current point is the luminance prediction value.
[0219] For example, the luminance prediction value of the current point can be determined according to formula (17) and formula (18):
[0220] In formula (17) and formula (18), represents the reflectance reconstruction value of the non-target neighbor point (the pth neighbor point of the current point) (the first attribute reconstruction value of the non-target neighbor point), Coeff luma represents the luminance prediction value of the current point (the attribute reference value of the to-be-decoded attribute), s i represents the third coefficient of the target neighbor point (the ith neighbor point of the current point), represents the reflectance reconstruction value of the target neighbor point (the first attribute reconstruction value of the target neighbor point), represents the luminance reconstruction value of the target neighbor point (the first attribute reconstruction value of the target neighbor point).
[0221] It can be understood that the third coefficient considers the ratio relationship between the first attribute reconstruction value of the target neighbor point and the first attribute reconstruction value of the non-target neighbor point, which can help to evaluate the attribute correlation between the target neighbor point and the non-target neighbor point, so as to better understand the characteristics and rules of the data. In combination with the third coefficient and the attribute reference value, a more accurate attribute prediction value of the to-be-decoded attribute can be obtained. The consideration of the third coefficient makes the prediction process more comprehensive and comprehensive, and can better reflect the attribute relationship between the current point and the target neighbor point and the non-target neighbor point, thereby improving the prediction accuracy. The accurate attribute prediction value can reduce unnecessary data transmission and save transmission resources. By considering the third coefficient, the attribute correlation between the target neighbor point and the non-target neighbor point can be more effectively utilized, and redundant information in the transmission process can be reduced, thereby improving the efficiency of data transmission.
[0222] In some embodiments of the present application, the decoding method further comprises:
[0223] parsing the code stream to determine the second syntax element information;
[0224] if the value of the second syntax element information is the first value, it is determined that the attribute reconstruction order of the current point is that the first attribute precedes the second attribute; or,
[0225] If the second syntax element information has the second value, it is determined that the attribute reconstruction order of the current point is that the second attribute is prior to the first attribute.
[0226] In the embodiments of the present application, the second syntax element information is used to indicate the attribute reconstruction order of the current point.
[0227] For example, the second syntax element information can be a flag bit of an attribute parameter APS, and the second syntax element information can be represented as muti_crosstype_pre, which is used to indicate the attribute coding order of the current point.
[0228] It should be noted that in the embodiments of the present application, the first value is different from the second value, and the first value and the second value can be in the form of a parameter or in the form of a number. Specifically, the second syntax identification information can be a parameter written in a profile, or a value of a flag, which is not limited here.
[0229] For example, for the first value and the second value, the first value can be set to 1, and the second value can be set to 0; or the first value can be set to 0, and the second value can be set to 1; or the first value can be set to true, and the second value can be set to false; or the first value can be set to false, and the second value can be set to true; but here is not limited.
[0230] In the embodiments of the present application, taking the flag written in the code stream as an example, assuming that the first value is set to 1 (true) and the second value is set to 0 (false), at this time, if the value of the second syntax identification information is 1 (true), it can be determined that the attribute reconstruction order of the current point is that the first attribute (luminance) is prior to the second attribute (reflectance), and then the reflectance prediction value of the current point needs to be predicted by using the correlation coefficient of the target neighbor node and the luminance reconstruction value of the current point; if the value of the second syntax identification information is 0 (false), it can be determined that the attribute reconstruction order of the current point is that the second attribute (reflectance) is prior to the first attribute (luminance), and then the luminance prediction value of the current point needs to be predicted by using the correlation coefficient of the target neighbor node and the reflectance reconstruction value of the current point.
[0231] In some embodiments of the present application, the candidate prediction modes further include a first prediction mode, and the decoding method further includes S107:
[0232] S107, according to the value of the first syntax element information, determining that the best prediction mode of the current point is the first prediction mode from the candidate prediction modes.
[0233] In the embodiments of the present application, the first prediction mode is a non-cross-attribute prediction mode.
[0234] In the embodiments of the present application, the first prediction mode is related to the reconstructed attribute values of the M neighboring points of the current point. For example, the first prediction mode can represent a weighted average of the reconstructed attribute values of the M neighboring points of the current point. The reconstructed attributes of the M neighboring points are the same as the to-be-decoded attribute of the current point.
[0235] In the embodiments of the present application, the candidate prediction modes can be divided into two cases:
[0236] Case 1: The candidate prediction modes include one or more cross-attribute prediction modes.
[0237] In the embodiments of the present application, the candidate prediction modes are shown in Table 2, and the one or more cross-attribute prediction modes can include prediction mode 1, prediction mode 2 and prediction mode 3. When the target cross-attribute prediction mode is prediction mode 1, it means that the first neighboring point of the current point is used for cross-attribute guided prediction to derive the attribute prediction value of the to-be-decoded attribute of the current point. When the target cross-attribute prediction mode is prediction mode 2, it means that the second neighboring point of the current point is used for cross-attribute guided prediction to derive the attribute prediction value of the to-be-decoded attribute of the current point. When the target cross-attribute prediction mode is prediction mode 3, it means that the third neighboring point of the current point is used for cross-attribute guided prediction to derive the attribute prediction value of the to-be-decoded attribute of the current point.
[0238] Case 2: The candidate prediction modes include one or more cross-attribute prediction modes and one or more non-cross-attribute prediction modes.
[0239] In the embodiments of the present application, Table 3 is a schematic table two of a candidate prediction mode provided by the present application, as shown in Table 3, the candidate prediction modes include three cross-attribute prediction modes and one non-cross-attribute prediction mode (prediction mode 0). When the target cross-attribute prediction mode is prediction mode 0, it means that the attribute prediction value of the to-be-decoded attribute of the current point is derived by using the reconstructed attribute values of the three neighboring points of the current point. For example, the weighted average value of the luminance reconstructed values of the three neighboring points of the current point is used as the luminance prediction value of the current point, or the weighted average value of the reflectance reconstructed values of the three neighboring points of the current point is used as the reflectance prediction value of the current point.
[0240] Table 3
[0241] In some embodiments of the present application, as shown in FIG. 10, the decoding method further includes S201 to S203:
[0242] S201, determining whether the current point satisfies a preset condition according to the attribute reconstructed values of the reconstructed attributes of the M neighboring points of the current point;
[0243] S202, in a case where the attribute reconstruction values of the reconstructed attributes of the M neighboring points of the current point satisfy a preset condition, performing a step of decoding the bitstream to determine the first syntax element information of the current point.
[0244] S203, in a case where the attribute reconstruction values of the reconstructed attributes of the M neighboring points of the current point do not satisfy the preset condition, determining that the second prediction mode is used for the current point.
[0245] In the embodiments of the present application, the preset condition is specified by both the encoder and the decoder, and both the encoder and the decoder need to perform the judgment step S201.
[0246] In the embodiments of the present application, the reconstructed attribute is the same as the to-be-decoded attribute.
[0247] In some embodiments of the present application, M is a positive integer greater than or equal to 2; the preset condition includes that the maximum attribute difference value of the attribute reconstruction values of the reconstructed attributes of the M neighboring points relative to each other is greater than or equal to a preset threshold.
[0248] In the embodiments of the present application, the preset threshold is a value specified by both the decoder and the encoder, or the preset threshold is set by the encoder end, the encoder writes the preset threshold into the bitstream, and the decoder obtains the preset threshold after decoding the bitstream. The present application does not make any limitation on the setting method of the preset threshold.
[0249] In the embodiments of the present application, the preset threshold is an adaptive threshold, which can be adaptively adjusted according to the related information (size, attribute complexity, point quantity, etc.) of the current point cloud, and the preset threshold can be represented as adaptive_threshold.
[0250] For example, the reconstructed attribute and the to-be-decoded attribute are taken as luminance, and it is assumed that the neighboring points of the current point include a neighboring point 1, a neighboring point 2 and a neighboring point 3. The attribute reconstruction values of the reconstructed attributes of the three neighboring points of the current point include a luminance reconstruction luma1 of the neighboring point 1, a luminance reconstruction luma2 of the neighboring point 2 and a luminance reconstruction luma3 of the neighboring point 3. The attribute reconstruction difference values between the three neighboring points of the current point relative to each other include |luma1-luma2|, |luma1-luma3| and |luma2-luma3|. If |luma1-luma3|>|luma1-luma2|>|luma2-luma3|, then |luma1-luma3| is taken as the maximum attribute difference value. If the maximum attribute difference value is greater than the preset threshold, the decoder performs the step of decoding the bitstream to determine the first syntax element information of the current point in S101. If the maximum attribute difference value is less than the preset threshold, it is determined that the second prediction mode is used for the current point.
[0251] In the embodiments of the present application, the second prediction mode is the same as or different from the first prediction mode. In the case where the second prediction mode is the same as the first prediction mode, the second prediction mode is to predict the attribute prediction value of the to-be-decoded attribute of the current point by using the attribute reconstruction values of the reconstructed attributes of the M neighboring points of the current point. For example, the second prediction mode is to predict the attribute prediction value of the to-be-decoded attribute of the current point by using the weighted average reconstruction value of the attribute reconstruction values of the reconstructed attributes of the M neighboring points of the current point.
[0252] It should be noted that S202 and S203 are parallel implementation steps, and S202 and S203 are executed alternatively, that is, the decoder can execute S202 or S203, and the present application does not limit this.
[0253] It can be understood that, on the one hand, by judging whether the attribute reconstruction values of the M neighboring points of the current point meet the preset condition, data decision optimization can be performed. If the condition is met, the decoding code stream process is executed, the first syntax element information of the current point can be more accurately determined, and the decoding accuracy and efficiency are improved; if the condition is not met, the second prediction mode is selected, so that the data processing is more intelligent and more adaptive. On the other hand, according to the judgment of the preset condition, the decoding of data that does not meet the condition can be avoided, the calculation resources and time in the decoding process are saved, the resource utilization efficiency is improved, and the decoding process is more efficient. According to the preset condition, data processing and decision making can guarantee the quality and integrity of the data. Decoding or selecting the second prediction mode only for data that meets the condition can help to avoid unnecessary data processing errors or misjudgments, improve the accuracy and reliability of data processing. In another aspect, the application of the preset condition can make the system operation more intelligent and efficient. According to the judgment of the specific condition, the decoding or prediction mode is selected flexibly, which helps to improve the system operation efficiency and meet different data processing needs.
[0254] It can be understood that, according to the attribute reconstruction values of the M neighboring points of the current point, the judgment of the preset condition and the execution of the decoding code stream or the selection of the second prediction mode can have beneficial effects in data decision optimization, resource utilization efficiency improvement, data transmission cost reduction, data quality guarantee and system operation efficiency improvement, which is of great significance to the efficiency and accuracy in the data encoding and decoding and transmission process.
[0255] In some embodiments of the present application, the decoding method further comprises:
[0256] In the case where it is determined that the current point adopts the second prediction mode, the spatial geometric weight of each of the M neighboring points is determined according to the spatial position of each of the M neighboring points and the spatial position of the current point;
[0257] The attribute prediction value of the to-be-decoded attribute is determined according to the attribute reconstruction value of the reconstructed attribute of each of the M neighboring points and the spatial geometry weight of each of the M neighboring points.
[0258] In the embodiments of the present application, the process of determining the attribute prediction value of the to-be-decoded attribute by using the second prediction mode can be represented by formula (19) and formula (20):
[0259] In formula (19) and formula (20), pred i represents the attribute prediction value of the to-be-decoded attribute of the current point i, j represents the index of the M neighboring points, recon i represents the attribute reconstruction value of the reconstructed attribute of the neighboring point i in the M neighboring points, weight ij represents the spatial geometry weight of the neighboring point j in the M neighboring points to the current point i, x i , y ij and z ij represent the geometric position coordinates of the neighboring point j, x i , y i and z i represent the geometric position coordinates (spatial position) of the current point i.
[0260] It can be understood that by considering the spatial positions of the M neighboring points and the spatial position of the current point, the spatial geometry weight is determined, the spatial information can be more fully utilized, which helps to reflect the spatial correlation between data and improves the accuracy and reliability of data prediction. In combination with the spatial geometry weight and the attribute reconstruction value, the correlation between the attributes of the M neighboring points and the attribute of the current point can be better evaluated, and such optimization can make the prediction process more comprehensive and comprehensive, and improve the accuracy and stability of the prediction.
[0261] In some embodiments of the present application, the decoding method further comprises:
[0262] decoding the code stream to determine third syntax element information;
[0263] in a case where the third syntax element information indicates that the current point is allowed to use the cross-attribute prediction mode, determining that the candidate prediction mode comprises one or more cross-attribute prediction modes; or
[0264] in a case where the third syntax element information indicates that the current point is not allowed to use the cross-attribute prediction mode, determining that the candidate prediction mode comprises one or more non-cross-attribute prediction modes;
[0265] determining the target prediction mode of the current point from the one or more non-cross-attribute prediction modes according to the value of the first syntax element information.
[0266] In the embodiments of the present application, the third syntax element information is used to indicate whether the current point is allowed to use the cross-attribute prediction mode.
[0267] In the embodiments of the present application, the candidate prediction modes are related to whether the current point is allowed to use the cross-attribute prediction mode indicated by the third syntax element, and specifically include the following two cases.
[0268] Case 1: The third syntax element information indicates that the current point is allowed to use the cross-attribute prediction mode.
[0269] In the embodiments of the present application, if the current point is allowed to use the cross-attribute prediction mode, the candidate prediction modes at least include one or more cross-attribute prediction modes. Taking the candidate prediction modes shown in Table 3 as an example, the candidate prediction modes of the current point include: prediction mode 0 (first prediction mode), prediction mode 1, prediction mode 2 and prediction mode 3. Among them, the prediction mode 0 is a non-cross-attribute prediction mode, and the prediction mode 1, the prediction mode 2 and the prediction mode 3 are cross-attribute prediction modes. The first syntax element information is used to indicate the target prediction mode of the current point, wherein the target prediction mode can be a target cross-attribute prediction mode (any one of prediction modes 1-3) or a non-cross-attribute prediction mode (prediction mode 0).
[0270] For example, taking the to-be-decoded attribute of the current point as luminance, if the value of the first syntax element information is 0, it is determined that the target prediction mode of the current point is 0, at this time, the decoder uses the weighted average luminance reconstruction value of the luminance reconstruction values of the three neighboring points of the current point as the luminance prediction value of the current point. If the value of the first syntax element information is 1, it is determined that the target prediction mode of the current point is prediction mode 1, at this time, the decoder uses the reflectance reconstruction value of the current point and the correlation coefficient of the first neighboring point of the current point to determine the luminance prediction value of the current point. If the value of the first syntax element information is 2, it is determined that the target prediction mode of the current point is prediction mode 2, at this time, the decoder uses the reflectance reconstruction value of the current point and the correlation coefficient of the second neighboring point of the current point to determine the luminance prediction value of the current point. If the value of the first syntax element information is 3, it is determined that the target prediction mode of the current point is prediction mode 3, at this time, the decoder uses the reflectance reconstruction value of the current point and the correlation coefficient of the third neighboring point of the current point to determine the luminance prediction value of the current point.
[0271] Case 2: The third syntax element information indicates that the current point is not allowed to use the cross-attribute prediction mode.
[0272] In the embodiments of the present application, if the current point is allowed to use the cross-attribute prediction mode, the candidate prediction modes at least include one or more non-cross-attribute prediction modes. Taking the candidate prediction modes shown in FIG. 1 as an example, the candidate prediction modes of the current point include prediction mode 0, prediction mode 1, prediction mode 2 and prediction mode 3. Among them, the prediction modes 0-3 are all non-cross-attribute prediction modes.
[0273] For example, taking the to-be-decoded attribute of the current point as the luminance, if the value of the first syntax element information is 0, it is determined that the target prediction mode of the current point is 0, at this time, the decoder uses the weighted average luminance reconstruction value of the luminance reconstruction values of the three neighboring points of the current point as the luminance prediction value of the current point. If the value of the first syntax element information is 1, it is determined that the target prediction mode of the current point is prediction mode 1, at this time, the decoder uses the luminance reconstruction value of the first neighboring point of the current point to determine the luminance prediction value of the current point. If the value of the first syntax element information is 2, it is determined that the target prediction mode of the current point is prediction mode 2, at this time, the decoder uses the luminance reconstruction value of the second neighboring point of the current point to determine the luminance prediction value of the current point. If the value of the first syntax element information is 3, it is determined that the target prediction mode of the current point is prediction mode 3, at this time, the decoder uses the luminance reconstruction value of the third neighboring point of the current point to determine the luminance prediction value of the current point.
[0274] It can be understood that, on the one hand, according to the value of the first syntax element information, in the case of allowing to use the cross-attribute prediction mode, the candidate prediction modes are determined to include one or more cross-attribute prediction modes; or in the case of not allowing to use the cross-attribute prediction mode, the candidate prediction modes are determined to include one or more non-cross-attribute prediction modes, so that the attribute prediction requirements of the current point can be more accurately matched, and the accuracy and reliability of prediction can be improved. On the other hand, according to the third syntax element information, it is determined whether the current point is allowed to use the cross-attribute prediction mode or the non-cross-attribute prediction mode, which helps to improve the efficiency of data prediction. Using a suitable prediction mode can more quickly perform data prediction, reduce the calculation cost and time cost. Reasonably selecting the prediction mode can reduce unnecessary data transmission amount, save transmission resources. By matching the target prediction mode, redundant information in the prediction process can be reduced, and the data transmission efficiency can be optimized. Suitable prediction mode selection can avoid errors or misjudgments in the prediction process, and guarantee the accuracy and reliability of data processing.
[0275] In some embodiments of the present application, the decoding method further includes:
[0276] If the value of the third syntax element information is the third value, it is determined that the current point is allowed to use the cross-attribute prediction mode; or,
[0277] If the value of the third syntax element information is the fourth value, it is determined that the current point is not allowed to use the cross-attribute prediction mode.
[0278] In the embodiments of the present application, the third syntax element information is used to indicate whether the current point is allowed to use the cross-attribute prediction mode.
[0279] For example, the third syntax element information can be a flag bit of an attribute parameter APS, and the third syntax element information can be represented as crosstype_enable_flag, which is used to indicate whether the current point is allowed to use the cross-attribute prediction mode.
[0280] It should be noted that in the embodiments of the present application, the third value is different from the fourth value, and the third value and the fourth value can be in the form of a parameter or in the form of a number. Specifically, the third syntax identification information can be a parameter written in a profile, or a value of a flag, which is not limited here.
[0281] For example, for the third value and the fourth value, the third value can be set to 1, and the fourth value can be set to 0; or the third value can be set to 0, and the fourth value can be set to 1; or the third value can be set to true, and the fourth value can be set to false; or the third value can be set to false, and the fourth value can be set to true; but here is not limited.
[0282] In the embodiments of the present application, taking the flag written in the code stream as an example, assuming that the third value is set to 1 (true) and the fourth value is set to 0 (false), at this time, if the value of the third syntax identification information is 0 (false), it can be determined that the current point is not allowed to use the cross-attribute prediction mode; if the value of the third syntax identification information is 1 (true), it can be determined that the current point is allowed to use the cross-attribute prediction mode.
[0283] In a second aspect, the embodiments of the present application provide an encoding method. On the one hand, by determining the attribute prediction value of the to-be-encoded attribute of the current point through the correlation coefficient of the candidate cross-attribute prediction mode and the candidate neighboring point, the attribute value of the current point can be more accurately predicted, and the transmission of redundant information is avoided, so that the amount of data to be transmitted can be reduced when encoding, thereby reducing the waste of code rate. On the one hand, in the process of predicting the attribute reconstruction value of the to-be-encoded attribute of the current point, the attribute reference value of the to-be-encoded attribute of the current point is determined based on the correlation coefficient of the candidate neighboring point of the current point, which can improve the utilization rate of the code rate, avoid the waste of the code rate, reduce the redundancy and cost during data transmission, and thus improve the efficiency and performance of the encoding.
[0284] The embodiments of the present application will be described in detail below with reference to the accompanying drawings.
[0285] In an embodiment of the present application, FIG. 11 is a flowchart of an encoding method provided by an embodiment of the present application. As shown in FIG. 11, the method can include S301-S307.
[0286] S301, determining a candidate cross-attribute prediction mode of the current point from candidate prediction modes.
[0287] It should be noted that the encoding method of the embodiments of the present application is applied to an encoder. In addition, the encoding method can specifically refer to a laser radar point cloud cross-attribute prediction method. In the attribute prediction mode, the present application mainly improves a PT encoding method of a single neighbor cross-attribute prediction to avoid the problem that when one attribute information has been encoded, there is still a large amount of redundancy between the two attribute information when encoding another attribute information in the related art.
[0288] In an embodiment of the present application, the current point is also referred to as a current node, a current to-be-encoded point, a to-be-encoded point, a current to-be-detected point, a to-be-encoded node, and the like, which are not limited in the embodiments of the present application.
[0289] In an embodiment of the present application, the candidate cross-attribute prediction mode is any one of one or more candidate cross-attribute prediction modes in the candidate prediction modes. Here, the candidate cross-attribute prediction mode is also referred to as a cross-attribute prediction mode.
[0290] For example, the candidate prediction modes include three candidate cross-attribute prediction modes: prediction mode 1, prediction mode 2, and prediction mode 3. The candidate cross-attribute prediction mode refers to any one of the prediction mode 1, the prediction mode 2, and the prediction mode 3.
[0291] S302, determining one or more attribute reconstruction values of the candidate near neighbor point of the current point according to the candidate cross-attribute prediction mode.
[0292] In an embodiment of the present application, for each candidate cross-attribute prediction mode of the candidate prediction mode, one or more attribute reconstruction values of the candidate near neighbor point of the current point need to be determined. The candidate near neighbor point corresponds to the candidate cross-attribute prediction mode.
[0293] For example, according to the prediction mode 1, one or more attribute reconstruction values of the first candidate near neighbor point of the current point are determined; according to the prediction mode 2, one or more attribute reconstruction values of the second candidate near neighbor point of the current point are determined; and according to the prediction mode 3, one or more attribute reconstruction values of the third candidate near neighbor point of the current point are determined.
[0294] It should be noted that the description of S302 can refer to the description of S103 in the foregoing, which will not be repeated here.
[0295] S303, determine the correlation coefficient of the candidate neighbor point according to the one or more attribute reconstruction values of the candidate neighbor point.
[0296] In the embodiments of the present application, the correlation coefficient of the candidate neighbor point has the following three cases:
[0297] Case 1: the correlation coefficient of the candidate neighbor point represents the correlation between the multiple attribute reconstruction values of the candidate neighbor point.
[0298] For example, the multiple attribute reconstruction values of the candidate neighbor point can include the luminance reconstruction value and the reflectance reconstruction value. At this time, the correlation coefficient of the candidate neighbor point can represent the correlation between the luminance reconstruction value and the reflectance reconstruction value of the candidate neighbor point.
[0299] Case 2: the correlation coefficient of the candidate neighbor point represents the correlation between the attribute reconstruction value of the candidate neighbor point and the attribute reconstruction value of the current point.
[0300] For example, in the case where the attribute reconstruction value of the candidate neighbor point is the luminance reconstruction value, the correlation coefficient of the candidate neighbor point can represent the correlation between the luminance reconstruction value of the candidate neighbor point and the luminance reconstruction value of the current point. Or, in the case where the attribute reconstruction value of the candidate neighbor point is the reflectance reconstruction value, the correlation coefficient of the candidate neighbor point can represent the correlation between the reflectance reconstruction value of the candidate neighbor point and the reflectance reconstruction value of the current point.
[0301] Case 3: the correlation coefficient of the candidate neighbor point represents the correlation between the attribute reconstruction value of the candidate neighbor point and the attribute reconstruction value of the non-candidate neighbor point of the current point.
[0302] For example, the non-candidate neighbor point is any one of the M neighbor points of the current point except the candidate neighbor point. The non-candidate neighbor point can be the nearest neighbor point of the M neighbor points of the current point except the candidate neighbor point.
[0303] For example, the correlation coefficient of the candidate neighbor point can represent the correlation between the luminance reconstruction value of the candidate neighbor point and the luminance reconstruction value of the non-candidate neighbor point. Or, the correlation coefficient of the candidate neighbor point can represent the correlation between the luminance reconstruction value of the candidate neighbor point and the reflectance reconstruction value of the non-candidate neighbor point. Or, the correlation coefficient of the candidate neighbor point can represent the correlation between the reflectance reconstruction value of the candidate neighbor point and the reflectance reconstruction value of the non-candidate neighbor point.
[0304] S304, determine the attribute prediction value of the to-be-encoded attribute of the current point according to the attribute reference value of the to-be-encoded attribute of the current point and the correlation coefficient.
[0305] In the embodiments of the present application, the to-be-encoded attribute can include luminance and reflectance.
[0306] In some embodiments of the present application, the attribute reference value of the attribute to be encoded of the current point is multiplied by the correlation coefficient to determine the attribute prediction value of the attribute to be encoded.
[0307] S305. Encoding decision is made on the attribute prediction value of the attribute to be encoded of the current point corresponding to one or more candidate cross-attribute prediction modes to determine the best prediction mode of the current point as the target cross-attribute prediction mode.
[0308] In an embodiment of the present application, rate-distortion cost (Rate-Distortion Optimation, RDO) calculation is performed on the attribute prediction value of the attribute to be encoded of the current point corresponding to one or more candidate cross-attribute prediction modes to obtain one or more rate-distortion costs; and the candidate cross-attribute prediction mode corresponding to the minimum rate-distortion cost among the one or more rate-distortion costs is taken as the best prediction mode of the current point.
[0309] S306. The value of the first syntax element information of the current point is determined according to the best prediction mode.
[0310] In an embodiment of the present application, the first syntax element information is used to indicate the best prediction mode of the current point. The best prediction mode of the current point can be a cross-attribute prediction mode or a non-cross-attribute prediction mode.
[0311] In an embodiment of the present application, the value of the first syntax element information can be in the form of a parameter or in the form of a number. Specifically, the first syntax element information can be a parameter written in a profile, or a value of a flag, which is not specifically limited herein.
[0312] For example, if the best prediction mode of the current point is determined to be prediction mode 0, the value of the first syntax element information is set to 0; and if the best prediction mode of the current point is determined to be prediction mode 1, the value of the first syntax element information is set to 1.
[0313] S307. The first syntax element information is encoded for processing, and the obtained encoded bits are written into a bitstream.
[0314] The encoding method provided in the embodiments of the present application comprises: determining a candidate cross-attribute prediction mode of a current point from candidate prediction modes; determining one or more attribute reconstruction values of a candidate neighbor point of the current point according to the candidate cross-attribute prediction mode; determining a correlation coefficient of the candidate neighbor point according to the one or more attribute reconstruction values of the candidate neighbor point; determining an attribute prediction value of a to-be-encoded attribute of the current point according to an attribute reference value of the to-be-encoded attribute of the current point and the correlation coefficient; performing encoding decision on the attribute prediction value of the to-be-encoded attribute of the current point corresponding to one or more candidate cross-attribute prediction modes to determine that a best prediction mode of the current point is a target cross-attribute prediction mode; determining a value of first syntax element information of the current point according to the best prediction mode; and performing encoding processing on the first syntax element information and writing obtained encoding bits into a bitstream. The attribute prediction value of the to-be-encoded attribute is calculated according to the correlation information and known attribute values of the neighboring points of the current point, and can be used as the prediction value of the attribute of the current point. The correlation coefficient can help measure the correlation degree between the to-be-encoded attribute and the known attribute. If the correlation coefficient is high, it means that there is a strong linear relationship between the two, and the prediction value can more accurately reflect the actual value of the to-be-encoded attribute. By using the correlation coefficient for prediction, unnecessary data transmission and storage can be avoided. If the correlation between the to-be-encoded attribute and the known attribute is low, the prediction value will be closer to the actual value of the to-be-encoded attribute, reducing the transmission and storage of redundant data. Therefore, the utilization rate of the code rate can be improved, the code rate waste can be avoided, and the encoding performance can be improved.
[0315] The following describes how to perform cross-attribute prediction on the attribute prediction value of the to-be-decoded attribute of the current point in the three cases of the correlation coefficient of the target neighbor point mentioned in the foregoing.
[0316] 1. For the correlation coefficient representing the correlation between the multiple attribute reconstruction values of the candidate neighbor point in case 1.
[0317] In some embodiments of the present application, the correlation coefficient comprises a first coefficient; and the implementation of determining the correlation coefficient of the candidate neighbor point according to the one or more attribute reconstruction values of the candidate neighbor point in S303 can comprise:
[0318] determining the first coefficient according to the first attribute reconstruction value of the candidate neighbor point and the second attribute reconstruction value of the candidate neighbor point.
[0319] In the embodiments of the present application, in case 1, the attribute corresponding to the first attribute reconstruction value of the candidate neighbor point is different from the attribute corresponding to the second attribute reconstruction value of the candidate neighbor point, and the attribute corresponding to the first attribute reconstruction value has correlation with the attribute corresponding to the second attribute reconstruction value.
[0320] It should be noted that the attribute corresponding to the first attribute reconstruction value is different from the attribute corresponding to the second attribute reconstruction value and has a correlation, which means that the first attribute reconstruction value and the second attribute reconstruction value are reconstruction values of two different attributes (the first attribute and the second attribute), but the first attribute and the second attribute have a correlation. For example, the first attribute can be luminance, and the second attribute can be reflectance.
[0321] Here, the correlation between luminance and reflectance is described. In terms of optical characteristics of an object, luminance generally refers to the intensity of light perceived by the human eye or the light and dark degree of light. Reflectance is a characteristic of an object surface that reflects the degree of light, that is, the relative intensity of the surface reflected light. In general, higher reflectance generally leads to higher luminance. According to optical theory, the luminance attribute and the reflectance attribute of an object have a strong correlation, and according to statistics, the reflectance and luminance information between most points in the Am-fused category point cloud also have a strong correlation, especially for neighboring points, their correlation is basically the same. Therefore, using the attribute information already encoded by the current point to predict the unencoded attribute value can reduce the residual and remove the redundancy. For example, as shown in FIG. 9, the luminance information (luma) of the current point cloud has been encoded, the current point (to-be-predicted point) is P0, and the three neighboring points of the current point are P1, P2 and P3. The candidate neighboring point of the current point is P1, and then a linear model (first coefficient) is established between the luminance reconstruction value (luma=40) of P1 and the reflectance reconstruction value (ref=40) of P1 as the correlation between the luminance information and the reflectance information of the current point P0, so as to predict the attribute prediction value of the to-be-decoded attribute (reflectance) of the current point by using the luminance reconstruction value of P0 and the first coefficient of P1, or predict the attribute prediction value of the to-be-decoded attribute (luminance) of the current point by using the reflectance reconstruction value of P0 and the first coefficient of P1.
[0322] It can be understood that the first coefficient can reflect the correlation degree between different attributes of the candidate neighboring point. If the first coefficient is close to 1, it means that there is a strong positive correlation between the first attribute and the second attribute; if it is close to 0, it means that there is almost no correlation between the two, which helps to evaluate the correlation between the attributes, so as to better understand the characteristics and rules of the data.
[0323] In some embodiments of the present application, the first coefficient includes a ratio of the first attribute reconstruction value of the candidate neighboring point and the second attribute reconstruction value of the candidate neighboring point.
[0324] In the embodiments of the present application, the attribute corresponding to the first attribute reconstruction value and the attribute corresponding to the second attribute reconstruction value are related to the attribute encoding order of the current node.
[0325] In the embodiments of the present application, taking the first attribute as luma and the second attribute as ref as an example, the first coefficient includes the following two cases:
[0326] (1) In the case that the attribute reconstruction order of the current point is that the first attribute precedes the second attribute, the attribute to be decoded is the second attribute, the first attribute reconstruction value of the candidate neighbor point is the reconstruction value of the second attribute of the candidate neighbor point, the second attribute reconstruction value of the candidate neighbor point is the reconstruction value of the first attribute of the candidate neighbor point, and the attribute reference value of the attribute to be decoded is the reconstruction value of the first attribute of the current point.
[0327] In the embodiments of the present application, in the case that the attribute reconstruction order of the current point is that luma precedes ref, the attribute to be decoded of the current point is ref, the first attribute reconstruction value of the candidate neighbor point is the reconstruction value of ref of the candidate neighbor point, the second attribute reconstruction value of the candidate neighbor point is the reconstruction value of luma of the candidate neighbor point, the attribute reference value of the attribute to be decoded of the current point is the reconstruction value of luma of the current point, and the attribute prediction value of the attribute to be decoded of the current point is the ref prediction value. For example, the ref prediction value of the current point can refer to the description of formula (7) and formula (8) in the foregoing.
[0328] (2) In the case that the attribute reconstruction order of the current point is that the second attribute precedes the first attribute, the attribute to be decoded is the first attribute, the first attribute reconstruction value of the candidate neighbor point is the reconstruction value of the first attribute of the candidate neighbor point, the second attribute reconstruction value of the candidate neighbor point is the reconstruction value of the second attribute of the candidate neighbor point, and the attribute reference value of the attribute to be decoded is the reconstruction value of the second attribute of the current point.
[0329] In the embodiments of the present application, in the case that the attribute reconstruction order of the current point is that ref precedes luma, the attribute to be decoded of the current point is luma, the first attribute reconstruction value of the candidate neighbor point is the reconstruction value of luma of the candidate neighbor point, the second attribute reconstruction value of the candidate neighbor point is the reconstruction value of ref of the candidate neighbor point, the attribute reference value of the attribute to be decoded of the current point is the reconstruction value of ref of the current point, and the attribute prediction value of the attribute to be decoded of the current point is the luma prediction value. For example, the luma prediction value of the current point can refer to the description of formula (9) and formula (10) in the foregoing.
[0330] It can be understood that, on the one hand, through the first coefficient, the correlation between the first attribute reconstruction value and the second attribute reconstruction value of the candidate neighbor point can be taken into the prediction process. If the first coefficient is large, it indicates that there is a strong correlation between the two attributes, so when predicting the to-be-decoded attribute of the current point, the relationship between the first attribute and the second attribute can be more accurately utilized to improve the accuracy of prediction. On the other hand, in combination with the first coefficient and the attribute reference value, a more accurate attribute prediction value of the to-be-decoded attribute can be obtained. This prediction method based on correlation information can avoid unnecessary errors and improve the accuracy of the decoding process. On the other hand, the attribute prediction value calculation process based on the first coefficient and the attribute reference value is relatively simple and accurate, and does not require excessive computing resources, which can reduce redundant information in the data transmission process and improve the efficiency of data transmission. Especially in the case of limited bandwidth or high transmission cost, effective use of correlation information can save data transmission resources.
[0331] 2. For case 2, the correlation coefficient represents the correlation between the attribute reconstruction value of the candidate neighbor point and the attribute reconstruction value of the current point.
[0332] In some embodiments of the present application, the correlation coefficient includes a second coefficient; the implementation of determining the correlation coefficient of the candidate neighbor point according to one or more attribute reconstruction values of the candidate neighbor point in S303 can include:
[0333] determining the second coefficient according to the first attribute reconstruction value of the current point and the first attribute reconstruction value of the candidate neighbor point.
[0334] In an embodiment of the present application, in case 2, the first attribute reconstruction value of the candidate neighbor point corresponds to the same attribute as the attribute reconstruction value of the current point.
[0335] In some embodiments of the present application, the second coefficient includes the ratio of the first attribute reconstruction value of the current point and the first attribute reconstruction value of the candidate neighbor point.
[0336] In an embodiment of the present application, the attribute corresponding to the first attribute reconstruction value is related to the attribute coding order of the current point.
[0337] In an embodiment of the present application, taking the first attribute as luma and the second attribute as reflectance as an example, the second coefficient includes the following two cases:
[0338] (1) In the case where the attribute reconstruction order of the current point is that the first attribute precedes the second attribute, the to-be-decoded attribute is the second attribute, the first attribute reconstruction value of the current point is the reconstruction value of the first attribute of the current point, the first attribute reconstruction value of the candidate neighbor point is the reconstruction value of the first attribute of the candidate neighbor point, and the attribute reference value of the to-be-decoded attribute is the reconstruction value of the second attribute of the candidate neighbor point.
[0339] In the embodiments of the present application, in the case that the attribute reconstruction order of the current point is that the reflectance precedes the luminance, the to-be-decoded attribute of the current node is the reflectance, the first attribute reconstruction value of the current point is the luminance reconstruction value of the current point, the first attribute reconstruction value of the candidate neighbor point is the luminance reconstruction value of the candidate neighbor point, the attribute reference value of the to-be-decoded attribute of the current point is the reflectance reconstruction value of the candidate neighbor point, and the attribute prediction value of the to-be-decoded attribute of the current point is the reflectance prediction value. For example, the luminance prediction value of the current point can refer to the description of the formula (11) and the formula (12) in the foregoing.
[0340] (2) In the case that the attribute reconstruction order of the current point is that the second attribute precedes the first attribute, the to-be-decoded attribute is the first attribute, the first attribute reconstruction value of the current point is the reconstruction value of the second attribute of the current point, the first attribute reconstruction value of the candidate neighbor point is the reconstruction value of the second attribute of the candidate neighbor point, and the attribute reference value of the to-be-decoded attribute is the reconstruction value of the first attribute of the candidate neighbor point.
[0341] In the embodiments of the present application, in the case that the attribute reconstruction order of the current point is that the reflectance precedes the luminance, the to-be-decoded attribute of the current node is the luminance, the first attribute reconstruction value of the current point is the reflectance reconstruction value of the current point, the first attribute reconstruction value of the candidate neighbor point is the reflectance reconstruction value of the candidate neighbor point, the attribute reference value of the to-be-decoded attribute of the current point is the luminance reconstruction value of the candidate neighbor point, and the attribute prediction value of the to-be-decoded attribute of the current point is the luminance prediction value. For example, the luminance prediction value of the current point can refer to the description of the formula (13) and the formula (14) in the foregoing.
[0342] It can be understood that the second coefficient considers the ratio relationship between the first attribute reconstruction value of the current point and the first attribute reconstruction value of the candidate neighbor point, which can help to consider the correlation between the attributes of the current point and the candidate neighbor point, so as to more accurately predict the attribute value of the current point. In combination with the second coefficient and the attribute reference value, a more accurate attribute prediction value of the to-be-decoded attribute can be obtained. The consideration of the second coefficient makes the prediction process more targeted, and can better reflect the attribute relationship between the current point and the candidate neighbor point, thereby improving the prediction accuracy. The accurate attribute prediction value can reduce unnecessary data transmission and save transmission resources. By considering the second coefficient, the correlation between the attributes can be more effectively utilized, the redundant information in the transmission process can be reduced, and the efficiency of data transmission can be improved.
[0343] 3. For the case 2, the correlation coefficient represents the correlation between the attribute reconstruction value of the candidate neighbor point and the attribute reconstruction value of the non-candidate neighbor point of the current point.
[0344] In some embodiments of the present application, the correlation coefficient includes a third coefficient; and the implementation of determining the correlation coefficient of the candidate neighbor point according to one or more attribute reconstruction values of the candidate neighbor point in S303 can include:
[0345] The third coefficient is determined according to the first attribute reconstruction value of the non-candidate near neighbor point and the first attribute reconstruction value of the candidate near neighbor point.
[0346] In the case 3, the first attribute reconstruction value of the candidate near neighbor point corresponds to the same attribute as the attribute reconstruction value of the non-candidate near neighbor point in the embodiment of the present application.
[0347] In the embodiment of the present application, the non-candidate near neighbor point is any one of the M near neighbor points of the current point except the candidate near neighbor point, for example, the non-candidate near neighbor point can be the nearest neighbor point of the M near neighbor points of the current point except the candidate near neighbor point, or the non-candidate near neighbor point can be the nearest neighbor point of the M near neighbor points of the current point except the candidate near neighbor point, and the present application does not make any limitation thereto.
[0348] In some embodiments of the present application, the third coefficient includes a ratio of the first attribute reconstruction value of the candidate near neighbor point and the first attribute reconstruction value of the non-candidate near neighbor point.
[0349] In the embodiment of the present application, the attribute corresponding to the first attribute reconstruction value is related to the attribute coding order of the current point.
[0350] In the embodiment of the present application, taking the first attribute as luma and the second attribute as reflectance as an example, the third coefficient includes the following two cases:
[0351] (1) In the case that the attribute reconstruction order of the current point is that the first attribute precedes the second attribute, the attribute to be decoded is the second attribute, the first attribute reconstruction value of the non-candidate near neighbor point is the first attribute reconstruction value of the non-candidate near neighbor point, the first attribute reconstruction value of the candidate near neighbor point is the first attribute reconstruction value of the candidate near neighbor point, and the attribute reference value of the attribute to be decoded is the second attribute reconstruction value of the candidate near neighbor point.
[0352] In the embodiment of the present application, in the case that the attribute reconstruction order of the current point is that the luma precedes the reflectance, the attribute to be decoded of the current node is the reflectance, the first attribute reconstruction value of the non-candidate near neighbor point is the luma reconstruction value of the current point, the first attribute reconstruction value of the candidate near neighbor point is the luma reconstruction value of the candidate near neighbor point, the attribute reference value of the attribute to be decoded of the current point is the reflectance reconstruction value of the candidate near neighbor point, and the attribute prediction value of the attribute to be decoded of the current point is the reflectance prediction value. For example, the luma prediction value of the current point can refer to the description of the formula (15) and the formula (16) in the foregoing.
[0353] (2) in the case that the attribute reconstruction order of the current point is that the second attribute precedes the first attribute, the to-be-decoded attribute is the first attribute, the first attribute reconstruction value of the non-candidate neighbor point is the reconstruction value of the second attribute of the non-candidate neighbor point, the first attribute reconstruction value of the candidate neighbor point is the reconstruction value of the second attribute of the candidate neighbor point, and the attribute reference value of the to-be-decoded attribute is the reconstruction value of the first attribute of the candidate neighbor point.
[0354] In the embodiments of the present application, in the case that the attribute reconstruction order of the current point is that the reflectivity precedes the brightness, the to-be-decoded attribute of the current point is the brightness, the first attribute reconstruction value of the current point is the reflectivity reconstruction value of the current point, the first attribute reconstruction value of the candidate neighbor point is the reflectivity reconstruction value of the candidate neighbor point, the attribute reference value of the to-be-decoded attribute of the current point is the brightness reconstruction value of the candidate neighbor point, and the attribute prediction value of the to-be-decoded attribute of the current point is the brightness prediction value. For example, the brightness prediction value of the current point can refer to the description of the formula (17) and the formula (18) above.
[0355] It can be understood that the third coefficient considers the ratio relationship between the first attribute reconstruction value of the candidate neighbor point and the first attribute reconstruction value of the non-candidate neighbor point, which can help to evaluate the attribute correlation between the candidate neighbor point and the non-candidate neighbor point, so as to better understand the characteristics and rules of the data. In combination with the third coefficient and the attribute reference value, a more accurate attribute prediction value of the to-be-decoded attribute can be obtained. The consideration of the third coefficient makes the prediction process more comprehensive and comprehensive, and can better reflect the attribute relationship between the current point and the candidate neighbor point and the non-candidate neighbor point, thereby improving the prediction accuracy. The accurate attribute prediction value can reduce unnecessary data transmission and save transmission resources. By considering the third coefficient, the attribute correlation between the candidate neighbor point and the non-candidate neighbor point can be more effectively utilized, and the redundant information in the transmission process can be reduced, thereby improving the efficiency of data transmission.
[0356] In some embodiments of the present application, the encoding method further comprises:
[0357] determining the second syntax element information;
[0358] if the value of the second syntax element information is the first value, it is determined that the attribute reconstruction order of the current point is that the first attribute precedes the second attribute; or
[0359] if the value of the second syntax element information is the second value, it is determined that the attribute reconstruction order of the current point is that the second attribute precedes the first attribute;
[0360] The method further comprises:
[0361] encoding the second syntax identification information, and writing the obtained encoding bits into the code stream.
[0362] In the embodiments of the present application, the second syntax element information is used to indicate the attribute reconstruction order of the current point.
[0363] For example, the second syntax element information can be a flag bit of an attribute parameter APS, and the second syntax element information can be represented as muti_crosstype_pre, which is used to indicate the attribute coding order of the current point.
[0364] It should be noted that in the embodiments of the present application, the first value is different from the second value, and the first value and the second value can be in the form of a parameter or in the form of a number. Specifically, the second syntax identification information can be a parameter written in a profile, or a value of a flag, which is not limited here.
[0365] In some embodiments of the present application, the candidate prediction modes further include a first prediction mode, and the encoding method further includes S401 to S403:
[0366] S401, determining the first prediction mode of the current point from the candidate prediction modes;
[0367] S402, determining the attribute prediction value of the attribute to be encoded of the current point according to the first prediction mode;
[0368] S403, determining the best prediction mode of the current point as the first prediction mode according to the attribute prediction value of the attribute to be encoded of the current point corresponding to each of the one or more candidate cross-attribute prediction modes and the first prediction mode, and the encoding decision.
[0369] In the embodiments of the present application, the first prediction mode is a non-cross-attribute prediction mode.
[0370] In the embodiments of the present application, the first prediction mode is related to the reconstructed attribute values of the M neighboring points of the current point. For example, the first prediction mode can represent the weighted average of the reconstructed attribute values of the M neighboring points of the current point. The reconstructed attributes of the M neighboring points are the same as the attribute to be encoded of the current point.
[0371] In the embodiments of the present application, the candidate prediction modes can be divided into two cases:
[0372] Case 1: The candidate prediction modes include one or more candidate cross-attribute prediction modes.
[0373] Exemplarily, the one or more candidate cross-attribute prediction modes can include: a prediction mode 1, a prediction mode 2 and a prediction mode 3. The prediction mode 1 indicates that a first candidate neighbor point of the current point is used for cross-attribute guided prediction to derive the attribute prediction value of the attribute to be encoded of the current point. The prediction mode 2 indicates that a second candidate neighbor point of the current point is used for cross-attribute guided prediction to derive the attribute prediction value of the attribute to be encoded of the current point. The prediction mode 3 indicates that a third candidate neighbor point of the current point is used for cross-attribute guided prediction to derive the attribute prediction value of the attribute to be encoded of the current point. In this case, the encoder makes an encoding decision on the attribute prediction value of the attribute to be encoded of the current point corresponding to each of the prediction mode 1, the prediction mode 2 and the prediction mode 3, to determine the best prediction mode of the current point.
[0374] Case 2, the candidate prediction modes include: one or more candidate cross-attribute prediction modes and one or more non-cross-attribute prediction modes.
[0375] Exemplarily, the candidate prediction modes include: three candidate cross-attribute prediction modes (a prediction mode 1, a prediction mode 2 and a prediction mode 3) and one non-cross-attribute prediction mode (a prediction mode 0). The prediction mode 0 indicates that the attribute reconstruction values of the three candidate neighbor points of the current point are used to derive the attribute prediction value of the attribute to be encoded of the current point. Exemplarily, the prediction mode 0 indicates that the weighted average value of the luminance reconstruction values of the three candidate neighbor points of the current point is used as the luminance prediction value of the current point, or the weighted average value of the reflectance reconstruction values of the three neighbor points of the current point is used as the reflectance prediction value of the current point. In this case, the encoder makes an encoding decision on the attribute prediction value of the attribute to be encoded of the current point corresponding to each of the prediction mode 0, the prediction mode 1, the prediction mode 2 and the prediction mode 3, to determine the best prediction mode of the current point.
[0376] In some embodiments of the present application, the encoding method further includes S501 to S503:
[0377] S501, determining whether the current point satisfies a preset condition according to the attribute reconstruction values of the reconstructed attributes of the M neighbor points of the current point;
[0378] S502, in the case that the attribute reconstruction values of the reconstructed attributes of the M neighbor points of the current point satisfy the preset condition, performing the step of determining the candidate cross-attribute prediction mode of the current point from the candidate prediction modes, or,
[0379] S503, in the case that the attribute reconstruction values of the reconstructed attributes of the M neighbor points of the current point do not satisfy the preset condition, determining that the second prediction mode is used for the current point.
[0380] In some embodiments of the present application, M is a positive integer greater than or equal to 2; the preset condition comprises: a maximum attribute difference of attribute reconstruction values of the reconstructed attributes of the M neighboring points is greater than or equal to a preset threshold; and the reconstructed attribute is the same as the to-be-encoded attribute.
[0381] In some embodiments of the present application, the encoding method further comprises:
[0382] In a case where it is determined that the current point adopts the second prediction mode, spatial geometric weights of the M neighboring points are determined according to spatial positions of the M neighboring points and a spatial position of the current point;
[0383] An attribute prediction value of the to-be-encoded attribute is determined according to attribute reconstruction values of the reconstructed attributes of the M neighboring points and the spatial geometric weights of the M neighboring points.
[0384] On the one hand, by judging whether the attribute reconstruction values of the M neighboring points of the current point meet the preset condition, data decision optimization can be performed. If the condition is met, the encoding bitstream process is performed, the first syntax element information of the current point can be more accurately determined, and the coding accuracy and efficiency are improved; if the condition is not met, the second prediction mode is selected, so that the data processing is more intelligent and more adaptive. On the other hand, according to the preset condition for judgment, the calculation resources and time in the encoding process can be saved, the resource utilization efficiency is improved, and the encoding process is more efficient. According to the preset condition for data processing and decision, the quality and integrity of the data can be guaranteed. Only the data meeting the condition is encoded or the second prediction mode is selected, which can help to avoid unnecessary data processing errors or misjudgments, improve the accuracy and reliability of data processing. On the other hand, the application of the preset condition can make the system operation more intelligent and efficient. According to the judgment of the specific condition, the encoding or prediction mode is selected flexibly, which helps to improve the system operation efficiency and meet different data processing requirements.
[0385] It should be noted that the explanations of S501 to S503 can refer to the descriptions of S201 to S203 in the foregoing, which will not be repeated here.
[0386] In some embodiments of the present application, the encoding method further comprises:
[0387] The third syntax element information is determined;
[0388] In a case where the third syntax element information indicates that the current point is allowed to adopt the cross-attribute prediction mode, the candidate prediction mode comprises one or more cross-attribute prediction modes; or,
[0389] In a case where the third syntax element information indicates that the current point is prohibited from using the cross-attribute prediction mode, the candidate prediction modes include one or more non-cross-attribute prediction modes;
[0390] According to the one or more non-cross-attribute prediction modes, one or more attribute prediction values of the current point are determined;
[0391] According to the one or more attribute prediction values of the current point, a decision is determined on a best prediction mode used by the current point;
[0392] According to the best prediction mode, a value of the first syntax element information is determined;
[0393] The first syntax element information is encoded, and the obtained coded bits are written into a bitstream;
[0394] The encoding method further includes:
[0395] The third syntax element information is encoded, and the obtained coded bits are written into the bitstream.
[0396] In an embodiment of the present application, the third syntax element information is used to indicate whether the current point is allowed to use the cross-attribute prediction mode.
[0397] In an embodiment of the present application, the candidate prediction modes are related to whether the current point is allowed to use the cross-attribute prediction mode indicated by the third syntax element, and specifically include the following two cases:
[0398] Case 1: The third syntax element information indicates that the current point is allowed to use the cross-attribute prediction mode.
[0399] For example, if the current point is allowed to use the cross-attribute prediction mode, the candidate prediction modes at least include one or more candidate cross-attribute prediction modes. The candidate prediction modes of the current point include a prediction mode 0 (a first prediction mode), a prediction mode 1, a prediction mode 2, and a prediction mode 3. The prediction mode 0 is a non-cross-attribute prediction mode, and the prediction mode 1, the prediction mode 2, and the prediction mode 3 are cross-attribute prediction modes. The first syntax element information is used to indicate the best prediction mode used by the current point, wherein the best prediction mode can be a target cross-attribute prediction mode (any one of the prediction modes 1-3) or a non-cross-attribute prediction mode (the prediction mode 0).
[0400] Case 2: The third syntax element information indicates that the current point is not allowed to use the cross-attribute prediction mode.
[0401] In an embodiment of the present application, if the current point is allowed to use the cross-attribute prediction mode, the candidate prediction modes at least include one or more non-cross-attribute prediction modes. The candidate prediction modes of the current point include a prediction mode 0, a prediction mode 1, a prediction mode 2, and a prediction mode 3. The prediction modes 0-3 are all non-cross-attribute prediction modes.
[0402] Exemplarily, taking the attribute to be coded of the current point as luminance as an example, the candidate prediction modes of the current point include: prediction mode 0, prediction mode 1, prediction mode 2 and prediction mode 3. The prediction mode 0 indicates that a weighted average luminance reconstruction value of the luminance reconstruction values of the three neighboring points of the current point is used as the luminance prediction value of the current point. The prediction mode 1 indicates that the luminance prediction value of the current point is determined by using the luminance reconstruction value of the first neighboring point of the current point. The prediction mode 2 indicates that the luminance prediction value of the current point is determined by using the luminance reconstruction value of the second neighboring point of the current point. The prediction mode 3 indicates that the luminance prediction value of the current point is determined by using the luminance reconstruction value of the third neighboring point of the current point. Further, the encoder determines the best prediction mode of the current point according to the coding decision of the luminance prediction value of the current point corresponding to the prediction mode 0, the prediction mode 1, the prediction mode 2 and the prediction mode 3.
[0403] In some embodiments of the present application, the coding method further comprises:
[0404] If the current point is allowed to use the cross-attribute prediction mode, the value of the third syntax element information is determined as a third value; or,
[0405] If the current point is not allowed to use the cross-attribute prediction mode, the value of the third syntax element information is determined as a fourth value.
[0406] In the embodiments of the present application, the third syntax element information is used to indicate whether the current point is allowed to use the cross-attribute prediction mode.
[0407] Exemplarily, the third syntax element information can be a flag bit of the attribute parameter APS, and the third syntax element information can be represented as crosstype_enable_flag, which is used to indicate whether the current point is allowed to use the cross-attribute prediction mode.
[0408] It should be noted that, in the embodiments of the present application, the third value is different from the fourth value, and the third value and the fourth value can be in the form of a parameter or in the form of a number. Specifically, the third syntax identification information can be a parameter written in a profile, or can be a value of a flag, which is not specifically limited here.
[0409] Exemplarily, for the third value and the fourth value, the third value can be set as 1, and the fourth value can be set as 0; or the third value can be set as 0, and the fourth value can be set as 1; or the third value can be set as true, and the fourth value can be set as false; or the third value can be set as false, and the fourth value can be set as true; but here is not specifically limited.
[0410] In the embodiments of the present application, taking the flag written in the code stream as an example, it is assumed that the third value is set to 1 (true) and the fourth value is set to 0 (false). At this time, if the value of the third syntax identification information is 0 (false), it can be determined that the current point does not allow the cross-attribute prediction mode to be used; if the value of the third syntax identification information is 1 (true), it can be determined that the current point allows the cross-attribute prediction mode to be used.
[0411] The coding method provided in the present application is explained below in a specific embodiment.
[0412] The coding method provided in the embodiments of the present application is also called a PT coding improvement method of single-neighbor cross-attribute prediction. As shown in FIG. 12, the process of determining the best prediction mode includes S21 to S29.
[0413] S21, the maximum attribute difference of three candidate neighbors is calculated.
[0414] In some embodiments, after the LoD is constructed, according to the generation order of the LoD, three nearest neighbor points of the current to-be-coded point are first found from the coded data points. The attribute reconstruction values of the three nearest neighbor points (3 nearest neighbor points) are taken as the candidate prediction values of the current to-be-coded point.
[0415] S22, whether the maximum attribute difference is greater than a preset threshold.
[0416] In some embodiments, the maximum attribute difference max_difference of the three candidate neighbors is calculated. If the maximum attribute difference is greater than a preset threshold (adaptive threshold adaptive_threshold), S23 is executed; if the maximum attribute difference is less than or equal to the preset threshold (adaptive threshold adaptive_threshold), S24 is executed.
[0417] S23, the correlation coefficients s of two attributes of the 3 nearest neighbor points are respectively calculated.
[0418] S24, the best prediction mode = 0.
[0419] In some embodiments, if the value of max_difference is less than the adaptive threshold adaptive_threshold, it is considered that the three neighbor points are similar to the attribute values of the predicted point, and therefore mode 0 weighted prediction is used.
[0420] S25, the attribute prediction values of modes 1-3 are recalculated using the correlation coefficients.
[0421] S26, the scores of prediction modes 0-3 are calculated using RDO.
[0422] In some embodiments, if the value of max_difference is greater than the adaptive threshold adaptive_threshold, the optimal prediction value is selected from the four prediction modes according to rate-distortion optimization (RDO). The scores of modes 0-3 are calculated, and the minimum cost score is found as the best prediction mode.
[0423] S27, find the minimum score.
[0424] In some embodiments, the mode corresponding to the minimum cost score among the scores of modes 0-3 is taken as the best prediction mode.
[0425] S28, set the best prediction mode.
[0426] S29, the best prediction mode = 0-3.
[0427] In the embodiments of the present application, in the current Predicting Transform (PT) coding scheme, after the LoD is constructed, according to the generation order of the LoD, first, three nearest neighbor points of the current to-be-coded point are found from the coded 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: mode 0 is average prediction, modes 1, 2, and 3 are the attribute reconstruction values of the three nearest neighbor points, which are taken as the attribute prediction value of the current to-be-coded point. When the attribute information of the multi-attribute point cloud has been coded, the prediction modes 1, 2, and 3 are modified to use the correlation between the two attributes of each nearest neighbor point as the correlation (equivalent to the correlation coefficient) between the two attributes of the current point, so that the first attribute value (equivalent to the attribute reference value of the to-be-decoded attribute of the current point) of the current point that has been coded can be used to predict the second to-be-coded attribute value (equivalent to the attribute prediction value of the to-be-decoded attribute of the current point) of the current point.
[0428] In the current PT coding scheme, as shown in Table 1, the prediction modes 1-3 directly take the attribute reconstruction values of the three nearest neighbor points of the current point as the attribute prediction value of the current to-be-coded point. Since the brightness information and the reflectivity information of the point cloud have correlation, especially between the nearest neighbor points, the correlation between the two attributes is roughly the same. If the brightness information of the point cloud has been coded, the cross-attribute prediction is used to remove redundancy, and the reflectivity value of the current to-be-predicted point can be expressed as: where Coeff ref and Coeffluma respectively, s is the correlation coefficient. In the present application, the prediction modes 1-3 are replaced by calculating the correlation coefficients of the three nearest neighbor points of the current point, and then the three correlation coefficients are taken as the attribute correlation coefficients of the current point, so as to realize the purpose of single-neighbor-guided cross-attribute prediction. Therefore, the improved prediction mode of attribute coding is modified as shown in Table 3. The correlation coefficient calculation of the luminance and reflectance of the neighbor node can be expressed as: respectively, s i is the correlation coefficient of the i-th neighbor luminance and reflectance attribute.
[0429] In the embodiment of the present application, the operation process at the encoding end is shown in FIG. 13, taking the prediction of reflectance (equivalent to the second attribute) from the luminance (equivalent to the first attribute) as an example. The luminance information of the original point cloud is encoded according to the original mode. After the luminance attribute coding is completed, for the reflectance, firstly, according to the generation order of LoD, the three nearest neighbors (3 nearest neighbors) of the current to-be-encoded point (current point) are found from the encoded data points (the nearest neighbors of the current point). Then the maximum attribute distance (maximum attribute difference) of the three nearest neighbors is calculated. If the maximum attribute distance is less than the adaptive threshold (preset threshold), the average prediction of the prediction mode 0 (first prediction mode) is selected. If the maximum attribute distance is greater than the adaptive threshold, the correlation coefficients s (first coefficient) of the luminance and attribute information of the three nearest neighbors are calculated respectively. Then, the prediction value of the reflectance (the reflectance prediction value of the current point) is calculated using the luminance information (luminance reconstruction value) of the current to-be-encoded point and the correlation coefficient s obtained by calculation. The best prediction value is selected by using the RDO technology, and the prediction residual (the reflectance prediction residual of the current point) is quantized, entropy encoded, and formed into an attribute code stream.
[0430] In the embodiment of the present application, the original code stream structure is not changed, and only a flag crosstype_enable_flag (equivalent to the third syntax element information) is added in the attribute parameter APS and encoded. The value of 1 indicates that the cross-attribute prediction is allowed, and the value of 0 indicates that the cross-attribute prediction is disabled.
[0431] In the embodiment of the present application, the operation flow at the decoding end is shown in FIG. 14. Taking the luminance (equivalent to the first attribute) predicting reflectance (equivalent to the second attribute) as an example, the luminance information of the original point cloud is decoded according to the original mode. After the luminance attribute is decoded and reconstructed, for the reflectance, the decoding end reads the attribute code stream, first decodes the attribute quantization residual through entropy decoding, dequantizes the decoded quantization residual to obtain the attribute residual (reflectance prediction residual). Then, according to the generated LoD order, three nearest neighbors (3 nearest neighbors) of the current point are found from the decoded and reconstructed data points (the nearest neighbors of the current point). Then, the maximum attribute distance (maximum attribute difference) of the three nearest neighbors is calculated. If the maximum attribute distance is less than the adaptive threshold (preset threshold), it is inferred that the prediction mode is the average prediction of 0 (the first prediction mode). If the maximum attribute distance is greater than the adaptive threshold, the best prediction mode i (the first syntax element information) is decoded from the code stream. If the value of i is 1-3, the correlation coefficient (the first coefficient) of the luminance and reflectance of the i-th neighbor (target nearest neighbor) is calculated. Then, the prediction value of the reflectance (the reflectance prediction value of the current point) is calculated using the luminance information of the current point (the luminance reconstruction value of the current point) and the correlation coefficient s (the first coefficient). After obtaining the attribute prediction value (the reflectance prediction value of the current point), the true reconstruction attribute value (the reflectance reconstruction value of the current point) is obtained by adding the dequantized attribute residual (the reflectance prediction residual of the current point). The reflectance information of the current point is decoded. All points are traversed in turn until the reflectance information of all points is completely reconstructed.
[0432] In the case of the present application, the program at the decoding end is implemented as follows. If the distance (maximum attribute difference) is greater than the adaptive threshold (preset threshold), the best prediction mode i is decoded from the code stream. If the value of i is 1-3, the correlation coefficient of the luminance and reflectance of the i-th neighbor is calculated. Then, the prediction value of the reflectance is calculated using the luminance information of the current point and the correlation coefficient s (the first coefficient) of the target nearest neighbor. The calculation process is embodied in the decoding end function predictReflectance. In the program, s is the correlation coefficient of the relationship between the luminance and reflectance of the i-th neighbor (target nearest neighbor).
[0433] In the embodiments of the present application, tests are performed in the G-PCC reference software TMC13 V24.0 under the CTC-C1 and CTC-C2 test conditions, and the configuration conditions used are octree-predcting, r01, r02, and r03 code rates. Compared with the original PT scheme, the present application obtains a gain of -2.9% on the Am-fused average dataset Reflectance component under the TMC13 and CTC-C1 test conditions, and a gain of -3.0% on the Am-fused average dataset Reflectance component under the CTC-C2 test condition. Meanwhile, the present application does not change the time complexity of G-PCC operation. The C1 condition is a lossless geometry and lossy attribute coding mode, and the C2 condition is a lossy geometry and lossy attribute coding mode. End-to-End BD-AttrRate represents the end-to-end attribute value BD-Rate for the attribute code stream. The BD-Rate reflects the difference between the PSNR curves in the two cases (with and without filtering). When the BD-Rate decreases, it means that the code rate decreases and the performance improves under the condition of equal PSNR. Conversely, the performance decreases. That is, the greater the decrease in BD-Rate, the better the compression effect. The Am-fused average dataset represents a fused point cloud dataset, and the Overall average is the average of the test results of all sequences.
[0434] In the embodiments of the present application, the same correlation coefficient prediction method can be used for neighbor-guided cross-attribute prediction de-redundancy on the LT lifting transform (an improvement based on PT).
[0435] The preferred embodiments of the present application are described in detail above with reference to the accompanying drawings, but the present application is not limited to the specific details in the above-described embodiments. Various simple modifications can be made to the technical solutions of the present application within the scope of the technical concept of the present application, and these simple modifications all belong to the protection scope of the present application. For example, in the case where there is no conflict, each specific technical feature described in the above-described specific embodiments can be combined in any appropriate manner. In order to avoid unnecessary repetition, the present application does not further describe various possible combination manners. For another example, various different embodiments of the present application can also be combined in any manner, as long as it does not deviate from the idea of the present application, and it should also be considered as the disclosed content of the present application. For another example, in the case where there is no conflict, each embodiment described in the present application and / or the technical features in each embodiment can be combined with any prior art, and the technical solutions obtained after the combination should also fall within the protection scope of the present application.
[0436] It should be understood that the size of the sequence number of each process described above does not mean the order of execution in various method embodiments of the present application, and the execution order of each process should be determined according to its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.
[0437] In an embodiment of the present application, based on the same inventive concept as the foregoing embodiments, a code stream is provided, which is generated by bit encoding according to to-be-encoded information; wherein the to-be-encoded information comprises at least one of the following:
[0438] The first syntax element information, the second syntax element information, and the third syntax element information; the first syntax element information is used to indicate the prediction mode adopted by the current point, the second syntax element information is used to indicate the attribute reconstruction order of the current point, and the third syntax element information is used to indicate whether the cross-attribute prediction mode is allowed to be adopted by the current point.
[0439] In still another embodiment of the present application, based on the same inventive concept as the foregoing embodiments, referring to FIG. 15, a constituent structure schematic diagram of a decoder provided by an embodiment of the present application is shown. As shown in FIG. 15, the decoder 1000 comprises a decoding part 1001 and a first determining part 1002, wherein:
[0440] The decoding part 1001 is configured to decode the code stream and determine the first syntax element information of the current point;
[0441] The first determining part 1002 is configured to determine, according to the value of the first syntax element information, that the best prediction mode of the current point is a target cross-attribute prediction mode from the candidate prediction modes; determine one or more attribute reconstruction values of a target neighbor point of the current point according to the target cross-attribute prediction mode; determine a correlation coefficient of the target neighbor point according to the one or more attribute reconstruction values of the target neighbor point; and determine an attribute prediction value of a to-be-decoded attribute of the current point according to an attribute reference value of the to-be-decoded attribute of the current point and the correlation coefficient.
[0442] In some embodiments, the correlation coefficient characterizes the correlation between the multiple attribute reconstruction values of the target neighbor point.
[0443] In some embodiments, the correlation coefficient comprises a first coefficient; and the first determining part 1002 is further configured to determine the first coefficient according to a first attribute reconstruction value of the target neighbor point and a second attribute reconstruction value of the target neighbor point.
[0444] In some embodiments, the first coefficient comprises a ratio of the first attribute reconstruction value of the target neighbor point and the second attribute reconstruction value of the target neighbor point. In some embodiments, the first coefficient comprises a ratio of the first attribute reconstruction value of the target neighbor point and the second attribute reconstruction value of the target neighbor point.
[0445] In some embodiments, when the attribute reconstruction order of the current point is that the first attribute precedes the second attribute, the attribute to be decoded is the second attribute, the first attribute reconstruction value of the target neighbor point is the reconstruction value of the second attribute of the target neighbor point, the second attribute reconstruction value of the target neighbor point is the reconstruction value of the first attribute of the target neighbor point, and the attribute reference value of the attribute to be decoded is the reconstruction value of the first attribute of the current point; or, when the attribute reconstruction order of the current point is that the second attribute precedes the first attribute, the attribute to be decoded is the first attribute, the first attribute reconstruction value of the target neighbor point is the reconstruction value of the first attribute of the target neighbor point, the second attribute reconstruction value of the target neighbor point is the reconstruction value of the second attribute of the target neighbor point, and the attribute reference value of the attribute to be decoded is the reconstruction value of the second attribute of the current point.
[0446] In some embodiments, the correlation coefficient represents a correlation between the attribute reconstruction value of the target neighbor point and the attribute reconstruction value of the current point.
[0447] In some embodiments, the correlation coefficient includes a second coefficient; and the first determining portion 1002 is further configured to determine the second coefficient according to the first attribute reconstruction value of the current point and the first attribute reconstruction value of the target neighbor point.
[0448] In some embodiments, the second coefficient includes a ratio of the first attribute reconstruction value of the current point and the first attribute reconstruction value of the target neighbor point.
[0449] In some embodiments, when the attribute reconstruction order of the current point is that the first attribute precedes the second attribute, the attribute to be decoded is the second attribute, the first attribute reconstruction value of the current point is the reconstruction value of the first attribute of the current point, the first attribute reconstruction value of the target neighbor point is the reconstruction value of the first attribute of the target neighbor point, and the attribute reference value of the attribute to be decoded is the reconstruction value of the second attribute of the target neighbor point; or, when the attribute reconstruction order of the current point is that the second attribute precedes the first attribute, the attribute to be decoded is the first attribute, the first attribute reconstruction value of the current point is the reconstruction value of the second attribute of the current point, the first attribute reconstruction value of the target neighbor point is the reconstruction value of the second attribute of the target neighbor point, and the attribute reference value of the attribute to be decoded is the reconstruction value of the first attribute of the target neighbor point.
[0450] In some embodiments, the decoding portion 1001 is further configured to parse the bitstream to determine second syntax element information.
[0451] In some embodiments, the first determining part 1002 is further configured to determine, if the value of the second syntax element information is a first value, that the attribute reconstruction order of the current point is that a first attribute is prior to a second attribute; or, if the value of the second syntax element information is a second value, that the attribute reconstruction order of the current point is that the second attribute is prior to the first attribute.
[0452] In some embodiments, the correlation coefficient represents a correlation between the attribute reconstruction value of the target neighbor point and the attribute reconstruction value of the non-target neighbor point of the current point.
[0453] In some embodiments, the first determining part 1002 is further configured to multiply the attribute reference value of the to-be-decoded attribute of the current point and the correlation coefficient to determine the attribute prediction value of the to-be-decoded attribute.
[0454] In some embodiments, the candidate prediction modes further include a first prediction mode, and the first determining part 1002 is further configured to determine, according to the value of the first syntax element information, that the best prediction mode of the current point is the first prediction mode from the candidate prediction modes.
[0455] In some embodiments, the first determining part 1002 is further configured to determine, according to the attribute reconstruction values of the reconstructed attributes of the M neighbor points of the current point, whether the current point satisfies a preset condition; in a case where the attribute reconstruction values of the reconstructed attributes of the M neighbor points of the current point satisfy the preset condition, perform the step of decoding the bitstream to determine the first syntax element information of the current point; or, in a case where the attribute reconstruction values of the reconstructed attributes of the M neighbor points of the current point do not satisfy the preset condition, determine that the current point adopts the second prediction mode.
[0456] In some embodiments, M is a positive integer greater than or equal to 2; the preset condition includes that a maximum attribute difference value of the attribute reconstruction values of the reconstructed attributes of the M neighbor points relative to each other is greater than or equal to a preset threshold; and the reconstructed attribute is the same as the to-be-decoded attribute.
[0457] In some embodiments, the first determining part 1002 is further configured to, in a case where it is determined that the current point adopts the second prediction mode, determine, according to the spatial positions of the M neighbor points and the spatial position of the current point, the spatial geometric weight of each of the M neighbor points; and determine, according to the attribute reconstruction values of the reconstructed attributes of the M neighbor points and the spatial geometric weight of each of the M neighbor points, the attribute prediction value of the to-be-decoded attribute.
[0458] In some embodiments, the decoding part 1001 is further configured to decode the bitstream to determine third syntax element information.
[0459] In some embodiments, the first determining module 1002 is further configured to, in the case that the third syntax element information indicates that the current point allows the cross-attribute prediction mode, determine that the candidate prediction modes include one or more cross-attribute prediction modes; or in the case that the third syntax element information indicates that the current point does not allow the cross-attribute prediction mode, determine that the candidate prediction modes include one or more non-cross-attribute prediction modes; and determine the target prediction mode of the current point from the one or more non-cross-attribute prediction modes according to the value of the first syntax element information.
[0460] In some embodiments, if the value of the third syntax element information is a third value, it is determined that the current point allows the cross-attribute prediction mode; or if the value of the third syntax element information is a fourth value, it is determined that the current point does not allow the cross-attribute prediction mode.
[0461] It can be understood that, in the embodiments of the present application, the "part" can be a part of circuit, a part of processor, a part of program or software, etc., and of course can also be a module, and can also be non-modular. Moreover, the constituent parts in the embodiments can be integrated in one processing unit, or can be physically present separately, or two or more units can be integrated in one unit. The integrated unit can be realized in the form of hardware or in the form of a software function module.
[0462] The integrated unit, if realized in the form of a software function module and not sold or used as an independent product, can be stored in a computer readable storage medium, based on such understanding, the technical solutions of the embodiments can be embodied in the form of a software product, and the computer software product is stored in a storage medium, and includes a plurality of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor to perform all or part of the steps of the methods described in the embodiments. The foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and various media that can store program codes.
[0463] Therefore, the embodiments of the present application provide a computer readable storage medium applied to the decoder 1000, the computer readable storage medium stores a computer program, and the computer program is executed by a first processor to implement the method in any one of the foregoing embodiments.
[0464] Based on the above components of the decoder 1000 and the computer readable storage medium, referring to FIG. 16, a specific hardware structure diagram of the decoder 1000 is shown. As shown in FIG. 16, the decoder 1000 can include a first communication interface 1101, a first memory 1102 and a first processor 1103; each component is coupled together through a first bus system 1104. It can be understood that the first bus system 1104 is used to realize the connection communication between the components. The first bus system 1104 includes not only a data bus, but also a power bus, a control bus and a status signal bus. However, in order to clearly illustrate, various buses are marked as the first bus system 1104 in FIG. 16.
[0465] wherein,
[0466] The first communication interface 1101 is configured to receive and send signals in the process of transceiving information with other external network elements;
[0467] The first memory 1102 is configured to store a computer program capable of running on the first processor 1103;
[0468] The first processor 1103 is configured to execute the following when running the computer program:
[0469] decoding the bitstream to determine the first syntax element information of the current point;
[0470] determining, according to the value of the first syntax element information, the best prediction mode of the current point from the candidate prediction modes to be the target cross-attribute prediction mode;
[0471] determining, according to the target cross-attribute prediction mode, one or more attribute reconstruction values of the target neighbor point of the current point;
[0472] determining, according to the one or more attribute reconstruction values of the target neighbor point, the correlation coefficient of the target neighbor point;
[0473] determining, according to the attribute reference value of the to-be-decoded attribute of the current point and the correlation coefficient, the attribute prediction value of the to-be-decoded attribute of the current point.
[0474] It is to be appreciated that the first memory 1102 in the embodiments of the application can be a volatile memory or a nonvolatile memory, or can include both volatile and nonvolatile memory. Where the nonvolatile memory is a Read-Only Memory (ROM), Programmable ROM (PROM), Erasable PROM (EPROM), Electrically EPROM (EEPROM), or flash memory. The volatile memory can be a Random Access Memory (RAM), which is used as an external cache. By way of example, and not limitation, many forms of RAM are available, for example, Static RAM (SRAM), Dynamic RAM (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDR SDRAM), Enhanced SDRAM (ESDRAM), Synchlink DRAM (SLDRAM), and Direct Rambus RAM (DRRAM). The first memory 1102 of the system and method described herein are intended to include, without being limited to, these and any other suitable types of memory.
[0475] The first processor 1103 can be an integrated circuit chip having a processing capability of signals. In the implementation process, each step of the above method can be completed by the integrated logic circuit of hardware or the instruction in the form of software in the first processor 1103. The first processor 1103 described above can be a general processor, a digital signal processor (Digital Signal Processor, DSP), an application specific integrated circuit (Application Specific Integrated Circuit, ASIC), a field programmable gate array (Field Programmable Gate Array, FPGA) or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component. Each method, step and logic block disclosed in the embodiment of the present application can be implemented or executed. The general processor can be a microprocessor or the processor can also be any conventional processor. The steps of the method disclosed in combination with the embodiment of the present application can be directly embodied as a hardware code processor for execution, or a combination of hardware and software modules in the code processor for execution. The software module can be located in a random access memory, a flash memory, a read only memory, a programmable read only memory or an electrically erasable programmable memory, a register or other mature storage medium in the art. The storage medium is located in the first storage 1102, and the first processor 1103 reads the information in the first storage 1102, and combines the hardware to complete the steps of the above method.
[0476] It can be understood that the embodiments described in the present application can be realized by hardware, software, firmware, middleware, microcode or a combination thereof. For hardware implementation, the processing unit can be realized in one or more application specific integrated circuits (Application Specific Integrated Circuits, ASIC), digital signal processors (Digital Signal Processing, DSP), digital signal processing devices (DSP Device, DSPD), programmable logic devices (Programmable Logic Device, PLD), field programmable gate arrays (Field-Programmable Gate Array, FPGA), general processors, controllers, microcontrollers, microprocessors, other electronic units for executing functions described in the present application or a combination thereof. For software implementation, the technology described in the present application can be realized by modules (such as processes, functions, etc.) for executing functions described in the present application. The software code can be stored in the memory and executed by the processor. The memory can be implemented in the processor or outside the processor.
[0477] Optionally, as another embodiment, the first processor 1103 is further configured to execute the method of any one of the preceding embodiments when running the computer program.
[0478] In yet another embodiment of the present application, based on the same inventive concept as the preceding embodiments, referring to FIG. 17, a schematic diagram of the composition structure of an encoder provided in an embodiment of the present application is shown. As shown in FIG. 17, the encoder 2000 can include a second determining part 2001 and an encoding part 2002; wherein,
[0479] The second determining part 2001 is configured to determine a candidate cross-attribute prediction mode of the current point from candidate prediction modes; determine one or more attribute reconstruction values of a candidate neighbor point of the current point according to the candidate cross-attribute prediction mode; determine a correlation coefficient of the candidate neighbor point according to the one or more attribute reconstruction values of the candidate neighbor point; determine an attribute prediction value of an attribute to be encoded of the current point according to an attribute reference value of the attribute to be encoded of the current point and the correlation coefficient; determine a best prediction mode of the current point as a target cross-attribute prediction mode according to an encoding decision of the attribute prediction value of the attribute to be encoded of the current point corresponding to one or more candidate cross-attribute prediction modes; and determine a value of a first syntax element information of the current point according to the best prediction mode.
[0480] The encoding part 2002 is configured to perform encoding processing on the first syntax element information, and write the obtained encoding bits into a bitstream.
[0481] In some embodiments, the correlation coefficient characterizes the correlation between the multiple attribute reconstruction values of the candidate neighbor point.
[0482] In some embodiments, the correlation coefficient includes a first coefficient; and the second determining part 2001 is further configured to determine the first coefficient according to a first attribute reconstruction value of the candidate neighbor point and a second attribute reconstruction value of the candidate neighbor point.
[0483] In some embodiments, the first coefficient includes a ratio of the first attribute reconstruction value of the candidate neighbor point and the second attribute reconstruction value of the candidate neighbor point.
[0484] In some embodiments, when the attribute reconstruction order of the current point is that a first attribute precedes a second attribute, the attribute to be encoded is the second attribute, the first attribute reconstruction value of the candidate neighbor point is the reconstruction value of the second attribute of the candidate neighbor point, the second attribute reconstruction value of the candidate neighbor point is the reconstruction value of the first attribute of the candidate neighbor point, and the attribute reference value of the attribute to be encoded is the reconstruction value of the first attribute of the current point; or, when the attribute reconstruction order of the current point is that the second attribute precedes the first attribute, the attribute to be encoded is the first attribute, the first attribute reconstruction value of the candidate neighbor point is the reconstruction value of the first attribute of the candidate neighbor point, the second attribute reconstruction value of the candidate neighbor point is the reconstruction value of the second attribute of the candidate neighbor point, and the attribute reference value of the attribute to be encoded is the reconstruction value of the second attribute of the current point.
[0485] In some embodiments, the correlation coefficient represents a correlation between the attribute reconstruction value of the candidate neighbor point and the attribute reconstruction value of the current point.
[0486] In some embodiments, the correlation coefficient includes a second coefficient; and the second determining portion 2001 is further configured to determine the second coefficient according to the first attribute reconstruction value of the current point and the first attribute reconstruction value of the candidate neighbor point.
[0487] In some embodiments, the second coefficient includes a ratio of the first attribute reconstruction value of the current point and the first attribute reconstruction value of the candidate neighbor point.
[0488] In some embodiments, when the attribute reconstruction order of the current point is that a first attribute precedes a second attribute, the attribute to be encoded is the second attribute, the first attribute reconstruction value of the current point is the reconstruction value of the first attribute of the current point, the first attribute reconstruction value of the candidate neighbor point is the reconstruction value of the first attribute of the candidate neighbor point, and the attribute reference value of the attribute to be encoded is the reconstruction value of the second attribute of the candidate neighbor point; or, when the attribute reconstruction order of the current point is that the second attribute precedes the first attribute, the attribute to be encoded is the first attribute, the first attribute reconstruction value of the current point is the reconstruction value of the second attribute of the current point, the first attribute reconstruction value of the candidate neighbor point is the reconstruction value of the second attribute of the candidate neighbor point, and the attribute reference value of the attribute to be encoded is the reconstruction value of the first attribute of the candidate neighbor point.
[0489] In some embodiments, the second determining portion 2001 is further configured to determine second syntax element information; if the value of the second syntax element information is a first value, it is determined that the attribute reconstruction order of the current point is that a first attribute precedes a second attribute; or, if the value of the second syntax element information is a second value, it is determined that the attribute reconstruction order of the current point is that the second attribute precedes the first attribute.
[0490] In some embodiments, the encoding part 2002 is further configured to encode the second syntax identification information, and write the obtained encoded bits into a bitstream.
[0491] In some embodiments, the correlation coefficient represents a correlation between the attribute reconstruction value of the candidate neighboring point and the attribute reconstruction value of the non-candidate neighboring point of the current point.
[0492] In some embodiments, the second determining part 2001 is further configured to multiply the attribute reference value of the attribute to be encoded of the current point and the correlation coefficient, and determine the attribute prediction value of the attribute to be encoded.
[0493] In some embodiments, the candidate prediction modes further include a first prediction mode, and the second determining part 2001 is further configured to determine the first prediction mode of the current point from the candidate prediction modes, determine the attribute prediction value of the attribute to be encoded of the current point according to the first prediction mode, and determine that the best prediction mode of the current point is the first prediction mode according to the coding decision of the attribute prediction value of the attribute to be encoded of the current point corresponding to the one or more candidate cross-attribute prediction modes and the first prediction mode.
[0494] In some embodiments, the second determining part 2001 is further configured to determine whether the current point satisfies a preset condition according to the attribute reconstruction value of the reconstructed attribute of each of the M neighboring points of the current point, and perform the step of determining the candidate cross-attribute prediction mode of the current point from the candidate prediction modes in a case where the attribute reconstruction value of the reconstructed attribute of each of the M neighboring points of the current point satisfies the preset condition, or determine that the second prediction mode is used by the current point in a case where the attribute reconstruction value of the reconstructed attribute of each of the M neighboring points of the current point does not satisfy the preset condition.
[0495] In some embodiments, M is a positive integer greater than or equal to 2, the preset condition includes that a maximum attribute difference value of the attribute reconstruction values of the reconstructed attributes of the M neighboring points relative to each other is greater than or equal to a preset threshold, and the reconstructed attribute is the same as the attribute to be encoded.
[0496] In some embodiments, the second determining part 2001 is further configured to, in a case where it is determined that the second prediction mode is used by the current point, determine a spatial geometric weight of each of the M neighboring points according to the spatial position of each of the M neighboring points and the spatial position of the current point, and determine the attribute prediction value of the attribute to be encoded according to the attribute reconstruction value of the reconstructed attribute of each of the M neighboring points and the spatial geometric weight of each of the M neighboring points.
[0497] In some embodiments, the second determining part 2001 is further configured to determine third syntax element information; in a case where the third syntax element information indicates that the current point allows to adopt the cross-attribute prediction mode, determine that the candidate prediction modes include one or more cross-attribute prediction modes; or in a case where the third syntax element information indicates that the current point prohibits the cross-attribute prediction mode, determine that the candidate prediction modes include one or more non-cross-attribute prediction modes; determine one or more attribute prediction values of the current point according to the one or more non-cross-attribute prediction modes; determine a best prediction mode adopted by the current point according to the one or more attribute prediction values of the current point; and determine the value of the first syntax element information according to the best prediction mode.
[0498] In some embodiments, the encoding part 2002 is further configured to perform encoding processing on the third syntax identification information, and write the obtained encoded bits into the code stream.
[0499] It can be understood that, in this embodiment, the "part" can be a partial circuit, a partial processor, a partial program or software, etc., and of course can also be a module, and can also be non-modular. Moreover, the components in this embodiment can be integrated in one processing unit, or can be physically present in individual units, or two or more units can be integrated in one unit. The integrated unit can be realized in the form of hardware or in the form of a software function module.
[0500] When the integrated unit is realized in the form of a software function module and is not sold or used as an independent product, it can be stored in a computer readable storage medium. Based on this understanding, the embodiment provides a computer readable storage medium applied to the encoder 2000, and the computer readable storage medium stores a computer program. When the computer program is executed by the second processor, the method in any one of the preceding embodiments is implemented.
[0501] Based on the components of the encoder 2000 and the computer readable storage medium, referring to FIG. 18, a specific hardware structure schematic diagram of the encoder 2000 provided by the embodiment of the application is shown. As shown in FIG. 18, the encoder 2000 can include a second communication interface 2101, a second memory 2102 and a second processor 2103; and the components are coupled together through a second bus system 2104. It can be understood that the second bus system 2104 is used to realize the connection communication between the components. The second bus system 2104 includes a data bus, a power supply bus, a control bus and a state signal bus. However, for the purpose of clear illustration, all kinds of buses are marked as the second bus system 2104 in FIG. 18. Among them,
[0502] The second communication interface 2101 is configured to receive and send signals in the process of transmitting and receiving information with other external network elements.
[0503] The second memory 2102 is configured to store a computer program capable of running on the second processor 2103.
[0504] The second processor 2103 is configured to perform the following when running the computer program:
[0505] determining a candidate cross-attribute prediction mode of the current point from candidate prediction modes;
[0506] determining one or more attribute reconstruction values of the candidate neighbor point of the current point according to the candidate cross-attribute prediction mode;
[0507] determining a correlation coefficient of the candidate neighbor point according to the one or more attribute reconstruction values of the candidate neighbor point;
[0508] determining an attribute prediction value of the attribute to be encoded of the current point according to the attribute reference value of the attribute to be encoded of the current point and the correlation coefficient;
[0509] determining the best prediction mode of the current point as a target cross-attribute prediction mode according to an encoding decision of the attribute prediction value of the attribute to be encoded of the current point corresponding to one or more candidate cross-attribute prediction modes;
[0510] determining a value of the first syntax element information of the current point according to the best prediction mode;
[0511] performing encoding processing on the first syntax element information, and writing the obtained encoding bits into a bitstream.
[0512] Optionally, as another embodiment, the second processor 2103 is further configured to perform the method in any one of the preceding embodiments when running the computer program.
[0513] It can be understood that the hardware functions of the second memory 2102 are similar to those of the first memory 1102, and the hardware functions of the second processor 2103 are similar to those of the first processor 1103; and details are not described herein.
[0514] In another embodiment of the present application, referring to FIG. 19, a constituent structure diagram of a coding system provided in an embodiment of the present application is shown. As shown in FIG. 19, the coding system 3000 can include a decoder 3001 and an encoder 3002.
[0515] In the embodiment of the present application, the decoder 3001 can be the decoder in any one of the preceding embodiments, and the encoder 3002 can be the encoder in any one of the preceding embodiments.
[0516] It should be noted that, in the present application, the terms "comprising", "containing" or any other variant thereof are intended to cover non-exclusive inclusions, so that a process, method, article or device including a series of elements not only includes those elements, but also includes other elements not explicitly listed, or further includes elements inherent to such a process, method, article or device. Without more limitations, the element defined by the statement "comprising a" does not exclude the presence of other identical elements in the process, method, article or device including the element.
[0517] The above-mentioned sequence numbers of the embodiments of the present application are only for description, and do not represent the advantages and disadvantages of the embodiments.
[0518] The methods disclosed in the several method embodiments provided by the present application can be combined arbitrarily without conflict to obtain new method embodiments.
[0519] The features disclosed in the several product embodiments provided by the present application can be combined arbitrarily without conflict to obtain new product embodiments.
[0520] The features disclosed in the several method or device embodiments provided by the present application can be combined arbitrarily without conflict to obtain new method or device embodiments.
[0521] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art can easily think of changes or replacements within the technical range disclosed by the present application, which should be covered within the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the embodiments of the present application.
Claims
1. A decoding method applied to a decoder, the method comprising: decoding a bitstream to determine first syntax element information of a current point; determining, according to a value of the first syntax element information, a best prediction mode of the current point from candidate prediction modes, as a target cross-attribute prediction mode; determining, according to the target cross-attribute prediction mode, one or more attribute reconstruction values of a target neighbor point of the current point; determining, according to the one or more attribute reconstruction values of the target neighbor point, a correlation coefficient of the target neighbor point; determining, according to an attribute reference value of a to-be-decoded attribute of the current point and the correlation coefficient, an attribute prediction value of the to-be-decoded attribute of the current point.
2. The method of claim 1, wherein, The correlation coefficient represents a correlation between the multiple attribute reconstruction values of the target neighbor point.
3. The method of claim 2, wherein, The correlation coefficient comprises a first coefficient; and the determining, according to the one or more attribute reconstruction values of the target neighbor point, the correlation coefficient of the target neighbor point comprises: determining, according to a first attribute reconstruction value of the target neighbor point and a second attribute reconstruction value of the target neighbor point, the first coefficient.
4. The method of claim 3, wherein, The first coefficient comprises a ratio of the first attribute reconstruction value of the target neighbor point and the second attribute reconstruction value of the target neighbor point.
5. The method of claim 4, wherein, in a case where an attribute reconstruction order of the current point is that a first attribute precedes a second attribute, the to-be-decoded attribute is the second attribute, the first attribute reconstruction value of the target neighbor point is a reconstruction value of a second attribute of the target neighbor point, the second attribute reconstruction value of the target neighbor point is a reconstruction value of a first attribute of the target neighbor point, and the attribute reference value of the to-be-decoded attribute is a reconstruction value of the first attribute of the current point; or in a case where the attribute reconstruction order of the current point is that the second attribute precedes the first attribute, the to-be-decoded attribute is the first attribute, the first attribute reconstruction value of the target neighbor point is the reconstruction value of the first attribute of the target neighbor point, the second attribute reconstruction value of the target neighbor point is the reconstruction value of the second attribute of the target neighbor point, and the attribute reference value of the to-be-decoded attribute is the reconstruction value of the second attribute of the current point.
6. The method of claim 1, wherein, The correlation coefficient represents a correlation between the attribute reconstruction value of the target neighbor point and the attribute reconstruction value of the current point.
7. The method of claim 6, wherein, The correlation coefficient comprises a second coefficient; and the determining, according to the one or more attribute reconstruction values of the target neighbor point, the correlation coefficient of the target neighbor point comprises: determining, according to a first attribute reconstruction value of the current point and a first attribute reconstruction value of the target neighbor point, the second coefficient.
8. The method of claim 7, wherein, The second coefficient comprises a ratio of the first attribute reconstruction value of the current point and the first attribute reconstruction value of the target neighbor point.
9. The method of claim 8, wherein, In a case where the attribute reconstruction order of the current point is that the first attribute precedes the second attribute, the attribute to be decoded is the second attribute, the first attribute reconstruction value of the current point is a reconstruction value of the first attribute of the current point, the first attribute reconstruction value of the target neighbor point is a reconstruction value of the first attribute of the target neighbor point, and the attribute reference value of the attribute to be decoded is a reconstruction value of the second attribute of the target neighbor point; or, In a case where the attribute reconstruction order of the current point is that the second attribute precedes the first attribute, the attribute to be decoded is the first attribute, the first attribute reconstruction value of the current point is a reconstruction value of the second attribute of the current point, the first attribute reconstruction value of the target neighbor point is a reconstruction value of the second attribute of the target neighbor point, and the attribute reference value of the attribute to be decoded is a reconstruction value of the first attribute of the target neighbor point.
10. The method of claim 5 or 9, wherein, The method further comprises: parsing the bitstream to determine second syntax element information; if the second syntax element information has a first value, determining that the attribute reconstruction order of the current point is that the first attribute precedes the second attribute; or if the second syntax element information has a second value, determining that the attribute reconstruction order of the current point is that the second attribute precedes the first attribute.
11. The method according to any one of claims 1 to 10, wherein, The correlation coefficient represents a correlation between the attribute reconstruction value of the target neighbor point and an attribute reconstruction value of a non-target neighbor point of the current point.
12. The method according to any one of claims 1 to 11, wherein, The attribute prediction value of the attribute to be decoded of the current point is determined according to the attribute reference value of the attribute to be decoded of the current point and the correlation coefficient, including: multiplying the attribute reference value of the attribute to be decoded of the current point and the correlation coefficient to determine the attribute prediction value of the attribute to be decoded.
13. The method of claim 1, wherein, The candidate prediction modes further include a first prediction mode, and the method further comprises: determining, according to the value of the first syntax element information, that the best prediction mode of the current point is the first prediction mode from the candidate prediction modes.
14. The method according to any one of claims 1 to 13, wherein, The method further comprises: determining whether the current point satisfies a preset condition according to the attribute reconstruction values of the reconstructed attributes of the M neighbor points of the current point; in a case where the attribute reconstruction values of the reconstructed attributes of the M neighbor points of the current point satisfy the preset condition, performing the step of decoding the bitstream to determine the first syntax element information of the current point; or in a case where the attribute reconstruction values of the reconstructed attributes of the M neighbor points of the current point do not satisfy the preset condition, determining that the second prediction mode is used for the current point.
15. The method of claim 14, wherein, M is a positive integer greater than or equal to 2; the preset condition includes that a maximum attribute difference value of the attribute reconstruction values of the reconstructed attributes of the M neighbor points relative to each other is greater than or equal to a preset threshold; and the reconstructed attribute is the same as the attribute to be decoded.
16. The method of claim 14, wherein, The method further comprises: in a case where it is determined that the second prediction mode is used for the current point, determining spatial geometric weights of the M neighbor points according to the spatial positions of the M neighbor points and the spatial position of the current point; determining the attribute prediction value of the attribute to be decoded according to the attribute reconstruction values of the reconstructed attributes of the M neighbor points and the spatial geometric weights of the M neighbor points.
17. The method of any one of claims 1 to 16, wherein, The method further comprises: decoding the code stream to determine third syntax element information; in a case where the third syntax element information indicates that the current point allows to use cross-attribute prediction mode, determining that the candidate prediction mode comprises one or more cross-attribute prediction modes; or, in a case where the third syntax element information indicates that the current point does not allow to use cross-attribute prediction mode, determining that the candidate prediction mode comprises one or more non-cross-attribute prediction modes; determining the best prediction mode of the current point from the one or more non-cross-attribute prediction modes according to the value of the first syntax element information.
18. The method of claim 17, wherein, The method further comprises: if the value of the third syntax element information is a third value, determining that the current point allows to use cross-attribute prediction mode; or, if the value of the third syntax element information is a fourth value, determining that the current point does not allow to use cross-attribute prediction mode.
19. An encoding method applied to an encoder, the method comprising: determining a candidate cross-attribute prediction mode of the current point from candidate prediction modes; determining one or more attribute reconstruction values of a candidate neighbor point of the current point according to the candidate cross-attribute prediction mode; determining a correlation coefficient of the candidate neighbor point according to the one or more attribute reconstruction values of the candidate neighbor point; determining an attribute prediction value of an attribute to be encoded of the current point according to an attribute reference value of the attribute to be encoded of the current point and the correlation coefficient; determining that a best prediction mode of the current point is a target cross-attribute prediction mode according to an encoding decision of the attribute prediction value of the attribute to be encoded of the current point corresponding to one or more candidate cross-attribute prediction modes; determining a value of a first syntax element information of the current point according to the best prediction mode; performing encoding processing on the first syntax element information, and writing obtained encoding bits into a code stream.
20. The method of claim 19, wherein, The correlation coefficient represents a correlation between the multiple attribute reconstruction values of the candidate neighbor point.
21. The method of claim 20, wherein, The correlation coefficient comprises a first coefficient; and the determining the correlation coefficient of the candidate neighbor point according to the one or more attribute reconstruction values of the candidate neighbor point comprises: determining the first coefficient according to a first attribute reconstruction value of the candidate neighbor point and a second attribute reconstruction value of the candidate neighbor point.
22. The method of claim 21, wherein, The first coefficient comprises a ratio of the first attribute reconstruction value of the candidate neighbor point and the second attribute reconstruction value of the candidate neighbor point.
23. The method of claim 22, wherein, in a case where the attribute reconstruction order of the current point is that a first attribute precedes a second attribute, the attribute to be encoded is the second attribute, the first attribute reconstruction value of the candidate neighbor point is a reconstruction value of the second attribute of the candidate neighbor point, the second attribute reconstruction value of the candidate neighbor point is a reconstruction value of the first attribute of the candidate neighbor point, and the attribute reference value of the attribute to be encoded is a reconstruction value of the first attribute of the current point; or, In a case where the attribute reconstruction order of the current point is that the first attribute precedes the second attribute, the attribute to be encoded is the first attribute, the first attribute reconstruction value of the candidate neighbor point is the reconstruction value of the first attribute of the candidate neighbor point, the second attribute reconstruction value of the candidate neighbor point is the reconstruction value of the second attribute of the candidate neighbor point, and the attribute reference value of the attribute to be encoded is the reconstruction value of the second attribute of the current point.
24. The method of claim 19, wherein, The correlation coefficient represents a correlation between the attribute reconstruction value of the candidate neighbor point and the attribute reconstruction value of the current point.
25. The method of claim 24, wherein, The correlation coefficient includes a second coefficient; and the determining of the correlation coefficient of the candidate neighbor point according to the one or more attribute reconstruction values of the candidate neighbor point includes: determining the second coefficient according to the first attribute reconstruction value of the current point and the first attribute reconstruction value of the candidate neighbor point.
26. The method of claim 25, wherein, The second coefficient includes a ratio of the first attribute reconstruction value of the current point and the first attribute reconstruction value of the candidate neighbor point.
27. The method of claim 26, wherein, In a case where the attribute reconstruction order of the current point is that the first attribute precedes the second attribute, the attribute to be encoded is the second attribute, the first attribute reconstruction value of the current point is the reconstruction value of the first attribute of the current point, the first attribute reconstruction value of the candidate neighbor point is the reconstruction value of the first attribute of the candidate neighbor point, and the attribute reference value of the attribute to be encoded is the reconstruction value of the second attribute of the candidate neighbor point; or, In a case where the attribute reconstruction order of the current point is that the second attribute precedes the first attribute, the attribute to be encoded is the first attribute, the first attribute reconstruction value of the current point is the reconstruction value of the second attribute of the current point, the first attribute reconstruction value of the candidate neighbor point is the reconstruction value of the second attribute of the candidate neighbor point, and the attribute reference value of the attribute to be encoded is the reconstruction value of the first attribute of the candidate neighbor point.
28. The method of claim 23 or 27, wherein, The method further includes: determining second syntax element information; if the value of the second syntax element information is a first value, determining that the attribute reconstruction order of the current point is that the first attribute precedes the second attribute; or if the value of the second syntax element information is a second value, determining that the attribute reconstruction order of the current point is that the second attribute precedes the first attribute. The method further includes: encoding the second syntax identification information and writing the obtained encoding bits into a bitstream.
29. The method of any one of claims 19 to 28, wherein, The correlation coefficient represents a correlation between the attribute reconstruction value of the candidate neighbor point and the attribute reconstruction value of a non-candidate neighbor point of the current point.
30. The method of any one of claims 19 to 29, wherein, The determining of the attribute prediction value of the attribute to be encoded of the current point according to the attribute reference value of the attribute to be encoded of the current point and the correlation coefficient includes: multiplying the attribute reference value of the attribute to be encoded of the current point and the correlation coefficient to determine the attribute prediction value of the attribute to be encoded.
31. The method of claim 1, wherein, The candidate prediction mode further includes a first prediction mode, and the method further includes: determining the first prediction mode of the current point from the candidate prediction mode; determining the attribute prediction value of the attribute to be encoded of the current point according to the first prediction mode; and determining the attribute prediction value of the attribute to be encoded of the current point according to the first prediction mode. According to attribute prediction values of the to-be-encoded attribute of the current point corresponding to the one or more candidate cross-attribute prediction modes and the first prediction mode, a coding decision is made to determine that the best prediction mode of the current point is the first prediction mode.
32. The method of any one of claims 19 to 31, wherein, The method further comprises: According to attribute reconstruction values of the reconstructed attribute of each of the M neighboring points of the current point, it is determined whether the current point satisfies a preset condition. In the case where the attribute reconstruction values of the reconstructed attribute of each of the M neighboring points of the current point satisfy the preset condition, the step of determining the candidate cross-attribute prediction mode of the current point from the candidate prediction modes is performed, or, In the case where the attribute reconstruction values of the reconstructed attribute of each of the M neighboring points of the current point do not satisfy the preset condition, it is determined that the second prediction mode is used for the current point.
33. The method of claim 32, wherein, M is a positive integer greater than or equal to 2; the preset condition includes that a maximum attribute difference of the attribute reconstruction values of the reconstructed attribute of the M neighboring points relative to each other is greater than or equal to a preset threshold; and the reconstructed attribute is the same as the to-be-encoded attribute.
34. The method of claim 32, wherein, The method further comprises: In the case where it is determined that the second prediction mode is used for the current point, spatial geometric weights of each of the M neighboring points are determined according to the spatial position of each of the M neighboring points and the spatial position of the current point; According to the attribute reconstruction values of the reconstructed attribute of each of the M neighboring points and the spatial geometric weights of each of the M neighboring points, the attribute prediction value of the to-be-encoded attribute is determined.
35. The method of any one of claims 19 to 34, wherein, The method further comprises: A third syntax element information is determined; In the case where the third syntax element information indicates that the cross-attribute prediction mode is allowed to be used for the current point, it is determined that the candidate prediction modes include one or more cross-attribute prediction modes; or, In the case where the third syntax element information indicates that the cross-attribute prediction mode is prohibited to be used for the current point, it is determined that the candidate prediction modes include one or more non-cross-attribute prediction modes; According to the one or more non-cross-attribute prediction modes, one or more attribute prediction values of the current point are determined; According to a coding decision of the one or more attribute prediction values of the current point, it is determined that the best prediction mode used for the current point; According to the best prediction mode, a value of the first syntax element information is determined; The first syntax element information is encoded, and the obtained coding bits are written into a bitstream; The method further comprises: The third syntax identification information is encoded, and the obtained coding bits are written into a bitstream.
36. A code stream, the code stream being generated by bit-encoding information to be encoded; wherein, The to-be-encoded information includes at least one of the following: The first syntax element information, the second syntax element information, and the third syntax element information; the first syntax element information is used to indicate the prediction mode used for the current point, the second syntax element information is used to indicate the attribute reconstruction order of the current point, and the third syntax element information is used to indicate whether the cross-attribute prediction mode is allowed to be used for the current point.
37. A decoder, comprising a decoding part and a first determining part, wherein: The decoding part is configured to decode a bitstream and determine first syntax element information of a current point; The first determining part is configured to determine, according to the value of the first syntax element information, a best prediction mode of the current point from candidate prediction modes as a target cross-attribute prediction mode, determine one or more attribute reconstruction values of a target neighbor point of the current point according to the target cross-attribute prediction mode, and determine a correlation coefficient of the target neighbor point according to the one or more attribute reconstruction values of the target neighbor point. The attribute prediction value of the to-be-decoded attribute of the current point is determined according to the attribute reference value of the to-be-decoded attribute of the current point and the correlation coefficient.
38. An encoder, comprising an encoding part and a second determining part, wherein: The second determining part is configured to determine a candidate cross-attribute prediction mode of the current point from candidate prediction modes, determine one or more attribute reconstruction values of a candidate neighbor point of the current point according to the candidate cross-attribute prediction mode, and determine a correlation coefficient of the candidate neighbor point according to the one or more attribute reconstruction values of the candidate neighbor point. The attribute prediction value of the to-be-encoded attribute of the current point is determined according to the attribute reference value of the to-be-encoded attribute of the current point and the correlation coefficient. An encoding decision is made on the attribute prediction values of the to-be-encoded attribute of the current point corresponding to one or more candidate cross-attribute prediction modes, to determine a best prediction mode of the current point as a target cross-attribute prediction mode, and determine a value of first syntax element information of the current point according to the best prediction mode. The encoding part is configured to perform encoding processing on the first syntax element information and write the obtained encoding bits into a bitstream.
39. A decoder, 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 in any one of claims 1 to 18 when running the computer program.
40. An encoder, 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 in any one of claims 19 to 35 when running the computer program.
41. A computer readable storage medium, wherein, The computer readable storage medium stores a computer program, which, when executed, implements the method in any one of claims 1 to 18 or implements the method in any one of claims 19 to 35.
Citation Information
Patent Citations
Data encoding and decoding method and device, and storage medium
CN112385238A
Point cloud prediction method and device, point cloud coding method and device and point cloud decoding method and device
CN115720272A
Video or image coding method and device therefor
US20220109888A1
Point cloud encoding method and system, point cloud decoding method and system, point cloud encoder, and point cloud decoder
US20230290012A1
Decoding method, encoding method, decoder and encoder
WO2023023918A1