WO2022217611A1 - 编解码方法及相关设备、存储介质 - Google Patents
编解码方法及相关设备、存储介质 Download PDFInfo
- Publication number
- WO2022217611A1 WO2022217611A1 PCT/CN2021/087918 CN2021087918W WO2022217611A1 WO 2022217611 A1 WO2022217611 A1 WO 2022217611A1 CN 2021087918 W CN2021087918 W CN 2021087918W WO 2022217611 A1 WO2022217611 A1 WO 2022217611A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- value
- point
- neighbor
- attribute
- current point
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 159
- 238000013139 quantization Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 12
- 238000005457 optimization Methods 0.000 claims description 8
- 230000008569 process Effects 0.000 description 38
- 238000002310 reflectometry Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 12
- 230000006835 compression Effects 0.000 description 8
- 238000007906 compression Methods 0.000 description 8
- 238000012360 testing method Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000009466 transformation Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 229960001484 edetic acid Drugs 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000015541 sensory perception of touch Effects 0.000 description 1
- 230000003238 somatosensory effect Effects 0.000 description 1
- 235000014347 soups Nutrition 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000011426 transformation method Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/537—Motion estimation other than block-based
- H04N19/54—Motion estimation other than block-based using feature points or meshes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/001—Model-based coding, e.g. wire frame
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/004—Predictors, e.g. intraframe, interframe coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/182—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Definitions
- the embodiments of the present disclosure relate to, but are not limited to, encoding and decoding technologies, and in particular, relate to an encoding and decoding method, related devices, and storage media.
- 3D point cloud data has begun to spread to various fields, such as virtual/augmented reality, robotics, geographic information systems, medical fields, etc.
- 3D point cloud data With the development of 3D point cloud data and the continuous improvement of the benchmark and speed of 3D point cloud data scanning equipment (such as lidar, Kinect somatosensory camera, etc.), people can accurately obtain a large amount of point cloud data on the surface of objects, often a scene
- the point cloud data below can include hundreds of thousands of points.
- Such a huge amount of point cloud data also brings challenges to computer storage and transmission.
- Point cloud compression is mainly divided into geometric compression and attribute compression.
- the point cloud attribute compression framework described in the test platform TMC13 (Test Model for Category1&3) provided by the International Standards Organization (Moving Picture Experts Group, MGEP) includes multiple The Lifting Transform strategy of LOD (Level of Detail), and the Predicting Transform strategy based on LOD, etc.
- TMC13 Test Model for Category1&3
- PCEM Computer Engineering Coding Standard
- an embodiment of the present disclosure provides a coding method, comprising:
- the first parameter is the difference between the maximum value and the minimum value in the reconstruction value of the first attribute of the neighbor point
- the quantized residual value is encoded.
- an embodiment of the present disclosure provides a decoding method, including:
- the first parameter is the difference between the maximum value and the minimum value in the reconstruction value of the first attribute of the neighbor point
- an embodiment of the present disclosure also provides another encoding method, comprising:
- An encoding method comprising:
- the first parameter is the difference between the maximum value and the minimum value in the reconstruction value of the first attribute of the neighbor point
- the identification information of the first prediction mode is written into the code stream, where the identification information is used to indicate the prediction mode.
- an embodiment of the present disclosure also provides another decoding method, including:
- Fig. 1 is a kind of schematic flow chart of point cloud coding
- Fig. 2 is a kind of schematic flow chart of point cloud decoding
- Fig. 3 is a kind of schematic diagram of LOD generation process
- FIG. 5 is a schematic flowchart of an encoding method according to an embodiment of the present disclosure.
- FIG. 6 is a schematic flowchart of an encoding method according to an exemplary embodiment of the present disclosure.
- FIG. 7 is a schematic flowchart of a decoding method according to an embodiment of the present disclosure.
- FIG. 8 is a schematic flowchart of a decoding method according to an exemplary embodiment of the present disclosure.
- FIG. 9 is a schematic flowchart of an encoding method according to an embodiment of the present disclosure.
- FIG. 10 is a schematic flowchart of an encoding method according to an exemplary embodiment of the disclosure.
- FIG. 11 is a schematic flowchart of a decoding method according to an embodiment of the present disclosure.
- FIG. 12 is a schematic diagram of a framework of an encoder according to an embodiment of the present disclosure.
- FIG. 13 is a schematic diagram of an exemplary encoder processing flow of the disclosure.
- FIG. 14 is a schematic diagram of a framework of a decoder according to an embodiment of the present disclosure.
- 15 is a schematic diagram of an exemplary decoder processing flow of the disclosure.
- FIG. 16 is a schematic diagram of a frame of an encoding device.
- FIG. 1 is a schematic diagram of a point cloud encoding framework.
- the point cloud encoding framework shown in FIG. 1 can be applied to a point cloud encoder.
- the geometric information and attribute information of each point in the point cloud to be encoded are encoded separately.
- the geometric information is transformed into coordinates so that all point clouds are contained in a bounding box, and then quantized.
- This step of quantization mainly plays a role in scaling. Due to the rounding of quantization, some
- the geometric information of the point cloud is the same, so the process of quantizing and removing duplicate points is also called the voxelization process when deciding whether to remove duplicate points based on parameters. Then perform octree division on the bounding box.
- the bounding box is divided into eight sub-cubes, and the non-empty sub-cubes (including points in the point cloud) are further divided into eight equal parts until the obtained leaf nodes are divided into eight equal parts.
- the point is a 1 ⁇ 1 ⁇ 1 unit cube
- the division is stopped, and arithmetic coding is performed on the points in the leaf nodes to generate a binary geometric bit stream, that is, a geometric code stream.
- octree division is also required first, but different from octree-based geometric information encoding, this trisoup does not require point clouds to be divided into levels.
- the geometry encoding is completed, and after the geometric information is reconstructed, color conversion is performed to convert the color information (ie, a type of attribute information) from the RGB color space to the YUV color space. Then, the point cloud is recolored with the reconstructed geometric information so that the unencoded attribute information corresponds to the reconstructed geometric information. Attribute encoding is mainly carried out for color information.
- the distance-based predictive transform (Predictive Transform) that depends on the level of detail (Level of Detail, LOD) division, and the other is the same dependent
- LOD level of detail
- RAHT region adaptive hierarchical transform
- FIG. 2 is a schematic diagram of a point cloud decoding framework.
- the point cloud decoding framework shown in FIG. 2 can be applied to a point cloud decoder.
- For the obtained binary code stream first independently decode the geometric bit stream and the attribute bit stream in the binary code stream.
- the geometric information of the point cloud is obtained through arithmetic decoding-octree synthesis-surface fitting-reconstruction geometry-inverse coordinate transformation; when decoding the attribute bit stream, through arithmetic decoding-inverse coordinate transformation Quantization-LOD-based prediction transform or lifting inverse transform or RAHT-based inverse transform-inverse color transform to obtain the attribute information of the point cloud, and restore the 3D image model of the point cloud data to be encoded based on the geometric information and attribute information.
- LOD division is mainly used in two methods, Predicting Transform and Lifting Transform, in point cloud attribute transformation.
- the LOD division based on distance will be described in detail below.
- the process of LOD division is after the point cloud geometric reconstruction, and the geometric coordinate information of the point cloud can be directly obtained at this time.
- the process of dividing LOD can be applied to both the point cloud encoder and the point cloud decoder.
- the LOD generation process is as follows:
- the LOD layer is divided by continuous iteration.
- the LOD generation process of the refinement level corresponding to the first iteration is as follows:
- Figure 3 is a schematic diagram of a LOD generation process.
- the point cloud includes 10 points such as P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, etc.
- LOD division in this way, the order in the LOD0 set includes P4, P5, P0, P2, the order in the LOD1 set includes P4, P5, P0, P2, P3, P1, P6, and the order in the LOD2 set includes P4, P5, P0 , P2, P3, P1, P6, P7, P8, P9.
- the LOD division scheme based on Morton code can reduce the computational complexity.
- Morton coding is also called z-order code because its coding order is in the spatial z order.
- the variable Pi represents the point in the input point cloud
- the process of calculating the Morton code is described as follows. For the three-dimensional coordinates represented by d-bit binary numbers for each component, the three coordinate components are represented as follows:
- the Morton code M starts from the highest bit for x, y, and z, and arranges x l , y l , z l to the lowest bit in turn.
- the calculation formula of M is as follows:
- D0 the threshold of the initial distance
- ⁇ the distance threshold ratio when the adjacent LOD layers are divided
- I the index of all points
- the process is as follows:
- the initialized division distance threshold is D0;
- L(k) saves the points belonging to the LOD of the kth layer
- O(k) saves the point set with a higher level of refinement than the LODk layer.
- the calculation process of L(k) and O(k) is as follows:
- O(k) and L(k) are initialized to empty sets
- each iteration is traversed in the index order of the points saved in I.
- Each traversal will calculate the geometric distance from the current point to all points within a certain range in the set O(k), and based on the Morton code corresponding to the current point in I, the first search in the set O(k) is greater than the current point.
- the index of the Morton code point corresponding to the point and then search in a search range SR1 of the index (here, SR1 represents the search range based on Morton code, which can be 8, 16, 64); if in this range If a point whose distance from the current point is less than the threshold is found, the current point is added to the set L(k), otherwise, the current point is added to the set O(k);
- the nearest h predicted neighbors are searched in the set O(k) (in general, h can be set to 3). The process of finding the nearest neighbor is as follows:
- the Morton code corresponding to the point is Mi
- FIG 4 is a schematic diagram of another LOD generation process.
- the point cloud includes 10 points such as P0, P1, P2, P3, P4, P5, P6, P7, P8, and P9.
- the code is divided into LOD, firstly arranged in ascending order of Morton code, the order of these 10 points is P4, P1, P9, P5, P0, P6, P8, P2, P7, P3; then the nearest neighbor is searched, so , the LOD0 set still includes P4, P5, P0, P2 in order, the LOD1 set still includes P4, P5, P0, P2, P3, P1, P6 in order, and the LOD2 set still includes P4, P5, P0, P2, P3, P1, P6, P7, P8, P9.
- the Lifting Transform mode For the Lifting Transform mode, first use the point cloud sorted according to the Morton code to construct the LOD, that is, according to the preset number of LOD layers, downsample the sorted points.
- the points form a layer of LOD, and the sampling distance is from large to small until the entire LOD is constructed. Then, the points in the point cloud are searched for neighbor points in LOD order, and the weighted average of the attribute values of all neighbor points is used as the attribute prediction value, where the weight of each neighbor point is the geometric coordinates of the current point and the neighbor point of the current point.
- the inverse of the square of the distance and finally subtract the predicted value of the attribute from the actual attribute value of the current point to obtain the residual value of the attribute.
- the K nearest neighbor (k-Nearest Neighbor, KNN) algorithm can be used to find at most K nearest neighbor points for each point, then there are K+1
- There are two prediction modes namely: taking the attribute values of the first, second, ..., the K-th nearest neighbor point as the prediction reference value, and taking the attribute weighted average of the K nearest neighbor points as the prediction reference value,
- the weight of each nearest neighbor point is the reciprocal of the square Euclidean distance of the geometric coordinate between the current point and the nearest neighbor point of the current point, and then rate-distortion optimization is calculated for K+1 prediction reference values and corresponding modes.
- optimization, RDO cost value, and take the attribute prediction value corresponding to the smallest cost value as the attribute prediction value of the current point.
- the color prediction technique in the Predicting Transform mode applied to point cloud color coding can be implemented through the following process:
- the prediction mode and the number of bits idxBits required to encode each prediction mode are shown in Table 1.
- Predictive value idxBits 0 average 1 1 1st nearest point 2 2 2nd nearest point 3 3 3rd nearest point 3
- the RDO technology can be used to optimize the rate-distortion selection of the four prediction modes, and the optimal prediction mode can be selected to predict the color information of the current point. Entropy encoding is performed.
- predMode can take a value of 0-3.
- the three nearest neighbor points P0, P5 and P4 of P2 are obtained, and the distance-based weighted average of P0, P5 and P4 can be predicted.
- the variable index is set to 0.
- the predictor index of the attribute value of the nearest neighbor P4 is set to 1.
- the attribute value predictor index of the next neighbor points P5 and P0 are set to 2 and 3, respectively, as shown in Table 2. Show.
- the utilization distortion optimization process selects the best predictor and then performs arithmetic coding on the selected predictor index (here, no encoding is required if the prediction mode of the current point is 0, if The three prediction modes 1, 2, and 3 selected by RDO are encoded into the attribute code stream).
- Predictor index Predicted value 0 average 1 P4(1st nearest point) 2 P5( 2nd nearest point) 3 P0( 3rd nearest point)
- the color prediction technique in the Predicting Transform mode applied to point cloud color coding can be implemented through the following process:
- the RDO technology calculates a cost score for each prediction mode of the current point, and then selects the prediction mode with the smallest cost score, that is, the optimal prediction mode, as the attribute prediction mode of the current point.
- the maximum difference maxDiff of the attributes of the neighbor point set of the current point is calculated.
- the attribute value attrValue is subtracted from the predicted value attrPred and quantized to obtain the quantized residual attrResidualQuant.
- R1 represents the attribute value of the first neighbor point on the R component
- R2 represents the attribute value of the second neighbor point on the R component
- R3 represents the attribute value of the third neighbor point on the R component
- G1 represents the first neighbor point.
- G2 represents the attribute value of the second neighbor point on the G component
- G3 represents the attribute value of the third neighbor point on the G component
- B1 represents the first neighbor point in The attribute value on the B component
- B2 represents the attribute value of the second neighbor point on the B component
- B3 represents the attribute value of the third neighbor point on the B component.
- the attribute encoding process may include: generating a level of detail LOD (Level of Detail) by given the position information of the input point cloud, performing point cloud prediction according to the order of the LOD, and performing a prediction on the residual result calculated after the prediction (also It can be called residual value) for quantization, and arithmetic coding is performed on the residual value and the prediction mode to form an attribute code stream.
- the attribute decoding process may include: by parsing the attribute code stream, obtaining the residual value of attribute information of the point in the point cloud, then obtaining the prediction mode, and then performing point cloud prediction, obtaining the attribute prediction value of the point cloud, and then obtaining the prediction mode.
- the residual value of the attribute information of the point By inverse quantizing the residual value of the attribute information of the point, the residual value of the attribute information of the point after inverse quantization is obtained; adding the above predicted value to obtain the reconstructed value of the attribute information of the point to obtain the decoded point cloud.
- Attribute encoding includes not only the encoding of color information, but also the encoding of other attribute information such as reflectance information.
- the color information and reflectance information of each point in the point cloud to be encoded are encoded separately. For example, the color information (color) in the attribute is encoded first, the color attribute code stream is formed after the color information is encoded, and then the reflectance information (reflectance) is encoded, and the reflectance attribute code stream is formed after the encoding is completed.
- the prediction mode (predMode) of the reflectance information will default to the prediction mode left over from the color attribute, that is, the reflectance information will use the color by default Predictive patterns of information.
- the characteristics of the color attribute and the reflectance attribute are different.
- the prediction mode that directly inherits the color attribute predicts the reflectance information, which will cause logical errors, which may lead to deviations in the prediction results, resulting in low prediction accuracy and reduced encoding and decoding performance. .
- An embodiment of the present disclosure provides a decoding method, as shown in FIG. 5 , the method includes:
- Step 501 Determine the neighbor point of the current point in the point cloud to be encoded, and calculate a first parameter according to the neighbor point; the first parameter is the difference between the maximum value and the minimum value in the reconstruction value of the first attribute of the neighbor point value;
- Step 502 when the first parameter is less than a threshold, use a preset first prediction mode to determine the predicted value of the first attribute of the current point;
- Step 503 calculating the difference between the original value of the first attribute of the current point and the predicted value, as the residual value of the first attribute of the current point;
- Step 504 encoding the quantized residual value.
- the first attribute includes at least one of the following: reflectance information, color information.
- the first prediction mode includes at least one of: using a weighted average of attributes of neighbor points as a prediction value; and using an attribute value of one of the neighbor points as a prediction value.
- the use of the weighted average of neighbor point attributes as the predicted value includes:
- the property value of one of the neighbor points is used as the predicted value, including:
- the M neighbor points include at least some neighbor points among the first P neighbor points of the current point, P ⁇ M.
- the neighbor points of the current point include R neighbor points, and the value of R is a positive integer greater than 1.
- M may take a value of 3, 4, or 5.
- N may take a value of 1, 2, or 3.
- R may take a value of 3, 4, or 5.
- the method further includes:
- the rate-distortion optimization RDO is used to select the second prediction mode
- the identification information of the second prediction mode is written into the code stream, where the identification information is used to indicate the prediction mode.
- the second prediction mode includes at least one of the following:
- the use of the weighted average of neighbor point attributes as the predicted value includes:
- the weighted average of the attributes of the S neighbor points is used as the prediction value, the value of S is a positive integer greater than 1, and the corresponding identification information is a preset index value and has global uniqueness.
- the property value of one of the neighbor points is used as the predicted value, including:
- the attribute value of the T-th neighbor point of the current point is used as the predicted value, T is a positive integer, and the corresponding identification information is the index value of the T-th neighbor point.
- the S neighbor points include at least some of the first U neighbor points of the current point, U ⁇ S.
- S may take a value of 3, 4, or 5.
- T may take a value of 1, 2, or 3.
- U may take a value of 3, 4, or 5.
- An exemplary embodiment of the present disclosure provides an encoding method, as shown in FIG. 6 , including:
- Step 601 Determine the neighbor point of the current point in the point cloud to be encoded, and calculate a first parameter according to the neighbor point; the first parameter is the difference between the maximum value and the minimum value in the reconstruction value of the first attribute of the neighbor point value;
- the neighbor points of the current point in the point cloud to be encoded refer to already encoded neighbor points of the current point in the point cloud to be encoded.
- the neighbor points of the current point may include R neighbor points, where R is a positive integer greater than 1.
- R can take a value of 3, 4, or 5.
- the neighbor points of the current point include 3 neighbor points, and the 3 neighbor points may refer to the 3 neighbor points closest to the current point based on the distance from near to far, or any of the Z neighbor points closest to the current point.
- 3 neighbor points, Z>3, Z is a positive integer.
- the first attribute includes at least one of the following: reflectance information, color information.
- the first attribute includes reflectivity information
- the first parameter is a difference between a maximum value and a minimum value in reconstructed values of the reflectivity information of neighbor points.
- the first parameter maxDiff max(Re)-min(Re), where max(Re) represents the maximum value in the reconstructed values of the reflectivity information of the neighbor point, and min(Re) represents the maximum value in the reflectivity information of the neighbor point. minimum value.
- the neighbor points of the current point include 3 neighbor points, and the first parameter is the difference between the maximum value and the minimum value in the reconstructed values of the reflectivity information of the 3 neighbor points.
- the first attribute includes color information
- the first parameter is a difference between a maximum value and a minimum value in reconstructed values of color information of neighbor points.
- the first parameter maxDiff can be calculated by:
- maxDiff max(max(R)-min(R), max(G)-min(G), max(B)-min(B)), where max(R) indicates that the neighbor point is reconstructed on the R component
- max(R) indicates that the neighbor point is reconstructed on the R component
- min(R) represents the minimum value of the reconstructed value of the neighbor point on the R component
- max(G) represents the maximum value of the reconstructed value of the neighbor point on the G component
- min(G) represents the neighbor point in the The minimum value of the reconstructed value on the G component
- max(B) represents the maximum value of the reconstructed value of the neighbor point on the B component
- min(B) represents the minimum value of the neighbor point's reconstructed value on the B component.
- the neighbor points of the current point include 3 neighbor points
- the first parameter is the difference between the maximum value and the minimum value in the reconstructed values of the color information of the 3 neighbor points, that is, the first parameter is that the 3 neighbor points are in The maximum difference value on the R component, the maximum difference value on the G component, and the maximum difference value on the B component.
- Step 602 judging whether the first time parameter is less than a threshold
- the threshold may be preset.
- a threshold corresponding to the color information may be preset, and when the first attribute is color information, it is determined whether the first parameter is smaller than the threshold of the color information.
- a threshold value corresponding to the reflectivity information may be preset, and when the first attribute is the reflectivity information, it is determined whether the first parameter is smaller than the threshold value of the reflectivity information.
- Step 603 using a preset first prediction mode to determine the predicted value of the first attribute of the current point;
- the first prediction mode includes at least one of the following: using a weighted average of attributes of neighbor points as a prediction value; and using an attribute value of one of the neighbor points as a prediction value.
- the first prediction mode may be set in advance to use a weighted average of neighbor point attributes as a prediction value.
- the first prediction mode may be set in advance to use an attribute value of one of the neighbor points as a prediction value.
- the use of the weighted average of neighbor point attributes as the predicted value includes:
- M is a positive integer greater than 1.
- M can take a value of 3, 4, or 5.
- the weighted average of the attributes of 3 neighbor points can be used as the predicted value.
- the M neighbor points include at least some of the first P neighbor points of the current point, P ⁇ M.
- P can take a value of 5
- M can take a value of 3
- 3 neighbor points can be selected from the first 5 neighbor points of the current point.
- the top P neighbor points of the current point refer to the top P neighbor points from the current point based on the distance from near to far, where P is a positive integer.
- the M neighbor points may select neighbor points of the current point for which the first parameter is calculated.
- the neighbor point of the current point for which the first parameter is calculated may select 3 neighbor points, and the M neighbor points may also select the 3 neighbor points.
- the M neighbor points may also select the 3 neighbor points. For example, to calculate the neighbor points of the current point of the first parameter, select the 3 neighbor points closest to the current point, and also use the weighted average of the attributes of the 3 neighbor points closest to the current point as the predicted value.
- the M neighbor points may select points among the neighbor points of the current point for calculating the first parameter or points among the neighbor points that are not the current point for calculating the first parameter, such as neighbors of the current point for calculating the first parameter
- a point can choose 5 neighbor points
- M neighbor points can choose 3 neighbor points.
- the 3 neighbor points may be 3 of the 5 neighbor points, or the 3 neighbor points may not be among the 5 neighbor points, or some of the 3 neighbor points may be the 5 neighbor points point in .
- to calculate the neighbor points of the current point of the first parameter select the 5 neighbor points closest to the current point, and use the weighted average of the attributes of the 3 neighbor points closest to the current point as the predicted value.
- the weight of each neighbor point may be the inverse of the squared Euclidean distance between the current point and the neighbor point.
- using the attribute value of one of the neighbor points as the predicted value includes: using the attribute value of the Nth neighbor point of the current point as the predicted value, where N is a positive integer.
- N can take a value of 1, 2, or 3.
- the Nth neighbor point refers to the Nth neighbor point closest to the current point from near to far.
- the attribute value of the 1st neighbor point closest to the current point can be used as the predicted value, and the attribute value can be Rebuild value.
- the attribute value of the second neighbor point closest to the current point can be used as the predicted value.
- the attribute value of the third neighbor point closest to the current point can be used as the predicted value.
- the user may preset the first prediction mode of the codec, for example, the user may preset the first prediction mode of the encoder to use the weighted average of attributes of M neighbor points as the prediction value. For another example, the user may preset the first prediction mode of the encoder to use the attribute value of the Nth neighbor point of the current point as the prediction value.
- the first modes preset by the codec end are the same. In another example, the first modes preset by the codec end are different.
- the first prediction mode may further include: using an average value of neighbor points as a prediction value. For example, the average value of the attribute values of the selected three neighbor points is taken as the predicted value of the current point.
- the first prediction mode may further include: a value obtained by performing a mathematical operation on the attribute value of the neighbor point as a prediction value.
- the mathematical operation refers to any other mathematical operation method except weighted average and average.
- one of multiple prediction modes may be selected in advance and set as the first prediction mode of the encoding end.
- the multiple prediction modes may be determined according to the neighbor points of the current point for which the first parameter is calculated,
- the multiple prediction modes may include: a prediction mode that uses the weighted average of the attributes of the three neighbor points as the prediction value, and a prediction mode that uses the first, second, and third neighbor points respectively.
- the attribute value of the second neighbor point (2st nearest point) is directly used as the prediction value
- Each prediction mode may correspond to an identifier (which may be an index number). In this example, the index numbers of the four prediction modes, as shown in Table
- prediction mode Predictive value 1 1st nearest point 2 2nd nearest point 3 3rd nearest point
- the first prediction mode may be preset at the encoding end and the decoding end, for example, the default initialization value of the prediction mode at both ends of the encoding and decoding ends is set to the identifier corresponding to the first prediction mode.
- the default initialization value at both ends of the codec can be set to 1.
- the encoding end and the decoding end may set the same first prediction mode. In another example, the encoding end and the decoding end may set different first prediction modes.
- Step 604 calculating the difference between the original value of the first attribute of the current point and the predicted value, as the residual value of the first attribute of the current point;
- Step 605 encoding the quantized residual value
- Step 606 using rate-distortion optimized RDO to select a second prediction mode; using the second prediction mode to determine the predicted value of the first attribute of the current point;
- the second prediction mode may be selected using rate-distortion optimized RDO from among a variety of alternative prediction modes.
- the multiple alternative prediction modes may include: prediction modes in which the weighted average of the attributes of neighbor points is used as the prediction value, and D prediction modes, where D is a positive integer.
- the D types of prediction modes include one or more of the following: based on the distance from near to far, the prediction using the attribute values of the first, second, ..., E-th neighbor points of the current point as the predicted value respectively The modes are the 1st to Eth prediction modes, and E is a positive integer.
- the multiple prediction modes may include: a prediction mode in which the weighted average of the attributes of neighbor points is used as the prediction value, the attribute value of the first neighbor point closest to the current point is used as the prediction mode for the prediction value, and the first neighbor point closest to the current point is the prediction mode.
- the attribute values of the two neighbor points are used as the prediction mode of the predicted value, and the attribute value of the third neighbor point closest to the current point is used as the prediction mode of the predicted value.
- the multiple alternative prediction modes may include: F prediction modes, where F is a positive integer.
- the F prediction modes include one or more of the following: based on the distance from near to far, take the attribute values of the first, second, ..., G-th neighbor points of the current point as the prediction value respectively.
- the modes are the first to G-th prediction modes, and G is a positive integer.
- the multiple alternative prediction modes may include: a prediction mode in which the attribute value of the first neighbor point closest to the current point is used as the prediction value, and the attribute value of the second neighbor point closest to the current point is used as the prediction mode.
- the prediction mode of the value, the attribute value of the third neighbor point closest to the current point is used as the prediction mode of the predicted value.
- RDO is employed to select the second prediction mode from a variety of alternative prediction modes, including:
- the prediction mode with the smallest cost score is selected as the second prediction mode.
- the second prediction mode includes at least one of the following:
- the using the weighted average of attributes of neighbor points as the predicted value includes: using the weighted average of attributes of S neighbor points as the predicted value, where S is a positive integer greater than 1.
- S can take a value of 3, 4, or 5.
- the weighted average of the attributes of 3 neighbor points can be used as the predicted value.
- the S neighbor points include at least some of the first U neighbor points of the current point, U ⁇ S.
- U can take a value of 5
- S can take a value of 3
- 3 neighbor points can be selected from the first 5 neighbor points of the current point.
- the top U neighbors of the current point refer to the top U neighbors from the current point based on the distance from near to far, where U is a positive integer.
- the S neighbors may select neighbors of the current point for which the first parameter is calculated.
- the neighbor point of the current point for which the first parameter is calculated may select 3 neighbor points, and the S neighbor points may also select the 3 neighbor points.
- the S neighbor points may also select the 3 neighbor points. For example, to calculate the neighbor points of the current point of the first parameter, select the 3 neighbor points closest to the current point, and also use the weighted average of the attributes of the 3 neighbor points closest to the current point as the predicted value.
- the S neighbor points may select points among the neighbor points of the current point for calculating the first parameter or points among the neighbor points that are not the current point for calculating the first parameter, such as neighbors of the current point for calculating the first parameter
- a point can choose 5 neighbor points
- S neighbor points can choose 3 neighbor points.
- the 3 neighbor points may be 3 of the 5 neighbor points, or the 3 neighbor points may not be among the 5 neighbor points, or some of the 3 neighbor points may be the 5 neighbor points point in .
- select the 5 neighbor points closest to the current point select the 5 neighbor points closest to the current point, and use the weighted average of the attributes of the 3 neighbor points closest to the current point as the predicted value.
- the weight of each neighbor point may be the inverse of the squared Euclidean distance between the current point and the neighbor point.
- the weight of each neighbor point may also be other values, such as a preset coefficient or the like.
- the S neighbor points and the M neighbor points may select the same neighbor point, for example, the weighted average of attributes of the three neighbor points closest to the current point may be selected as the predicted value of the current point.
- the S neighbor points and the M neighbor points may also select different neighbor points.
- the M neighbor points select the weighted average of the attributes of the 3 neighbor points closest to the current point as the predicted value of the current point
- S Each neighbor point selects the weighted average of the attributes of the 5th to 7th neighbor points closest to the current point as the predicted value of the current point.
- the S neighbor points and the points of the M neighbor points may be partially identical.
- M neighbors select the weighted average of attributes of the 3 closest neighbors to the current point as the predicted value of the current point
- S neighbors select the weighted average of the attributes of the 2nd to 4th neighbors closest to the current point as the weighted average of the attributes of the current point. Predicted value for the current point.
- using the attribute value of one of the neighbor points as the predicted value includes: using the attribute value of the T-th neighbor point of the current point as the predicted value, where T is a positive integer.
- T can take a value of 1, 2, or 3.
- the T-th neighbor point refers to the T-th neighbor point that is closest to the current point from near to far.
- the attribute value of the 1st neighbor point closest to the current point can be used as the predicted value, and the attribute value can be Rebuild value.
- the attribute value of the second neighbor point closest to the current point can be used as the predicted value.
- the attribute value of the third neighbor point closest to the current point can be used as the predicted value.
- the second prediction mode may be selected using rate-distortion optimized RDO from among a variety of alternative prediction modes.
- the multiple candidate prediction modes may be determined according to the neighbor points of the current point for which the first parameter is calculated,
- the multiple alternative prediction modes may include: a prediction mode that uses the weighted average of the attributes of the three neighbor points as a prediction value, and a prediction mode that uses the first, second, The attribute value of the third neighbor point is used as the prediction mode of the prediction value.
- the second prediction mode can be selected from the four prediction modes.
- Step 607 calculating the difference between the original value of the first attribute of the current point and the predicted value, as the residual value of the first attribute of the current point;
- the residual value attrResidualQuant of the first attribute of the current point can be calculated by:
- AttrPredValue is the attribute prediction value
- attrValue is the attribute value (original value) of the current point
- the quantization step size Qstep is calculated from the quantization parameter Qp.
- Step 608 Encode the quantized residual value, and write the identification information of the second prediction mode into the code stream, where the identification information is used to indicate the prediction mode.
- each prediction mode may correspond to an identifier.
- the identifier of the prediction mode that uses the weighted average value of neighbor point attributes as the prediction value may be set as a preset index value with global uniqueness, for example, the prediction index value may be 0.
- the identifier of the prediction mode using the attribute value of the T-th neighbor point of the current point as the prediction value may be set as the index value of the T-th neighbor point in advance. For example, the identification of the prediction mode that uses the attribute value of the T-th neighbor point of the current point as the prediction value is set to T.
- the identifier of the prediction mode that uses the attribute value of the T-th neighbor point of the current point as the predicted value is set to 1
- the identifier of the prediction mode that uses the attribute value of the second neighbor point of the current point as the predicted value is set.
- the flag of the prediction mode that uses the attribute value of the 3rd neighbor point of the current point as the prediction value is set to 3.
- the T-th neighbor point of the current point refers to the T-th neighbor point closest to the current point based on the distance from near to far.
- the identification information may be an identification bit, which is used to indicate prediction mode information, such as an index number of the prediction mode.
- An embodiment of the present disclosure provides a decoding method, as shown in FIG. 7 , including:
- Step 701 Determine the neighbor point of the current point in the point cloud to be decoded, and calculate a first parameter according to the neighbor point; the first parameter is the difference between the maximum value and the minimum value in the reconstruction value of the first attribute of the neighbor point value;
- Step 702 when the first parameter is less than a threshold, use a preset first prediction mode to determine the predicted value of the first attribute of the current point;
- Step 703 parsing the code stream to obtain the residual value of the first attribute of the current point
- Step 704 Calculate the sum of the residual value after inverse quantization and the predicted value, as a reconstructed value of the first attribute of the current point.
- the first attribute includes at least one of the following: reflectance information, color information.
- the first prediction mode includes at least one of: using a weighted average of attributes of neighbor points as a prediction value; and using an attribute value of one of the neighbor points as a prediction value.
- the use of the weighted average of neighbor point attributes as the predicted value includes:
- the property value of one of the neighbor points is used as the predicted value, including:
- the neighbor points of the current point include R neighbor points, and the value of R is a positive integer greater than 1.
- M may take a value of 3, 4, or 5.
- N may take a value of 1, 2, or 3.
- R may take a value of 3, 4, or 5.
- the method further includes:
- a prediction value of the first attribute of the current point is determined using the prediction mode indicated by the identification information.
- a weighted average value of attributes of neighbor points is used as the predicted value of the current point
- the attribute value of one of the neighbor points is used as the predicted value of the current point
- using the weighted average value of neighbor point attributes as the predicted value of the current point including:
- using the attribute value of one of the neighbor points as the predicted value of the current point includes:
- the attribute value of the T-th neighbor point is used as the predicted value of the current point, where T is the index value corresponding to the identification information.
- An exemplary embodiment of the present disclosure provides a decoding method, as shown in FIG. 8 , the method includes:
- Step 801 Determine the neighbor point of the current point in the point cloud to be decoded, and calculate a first parameter according to the neighbor point; the first parameter is the difference between the maximum value and the minimum value in the reconstruction value of the first attribute of the neighbor point value;
- the neighbor points of the current point in the point cloud to be decoded refer to already decoded neighbor points of the current point in the point cloud to be decoded.
- the neighbor points of the current point may include R neighbor points, where R is a positive integer greater than 1. In one example, R can take a value of 3, 4, or 5.
- the neighbor points of the current point include 3 neighbor points, and the 3 neighbor points may refer to the 3 neighbor points closest to the current point based on the distance from near to far, or any of the Z neighbor points closest to the current point. 3 neighbor points, Z>3.
- the first attribute includes at least one of the following: reflectance information, color information.
- the first attribute includes reflectivity information
- the first parameter is a difference between a maximum value and a minimum value in reconstructed values of reflectivity information of neighbor points.
- the first parameter maxDiff max(Re)-min(Re), where max(Re) represents the maximum value in the reconstructed values of the reflectivity information of the neighbor point, and min(Re) represents the maximum value in the reflectivity information of the neighbor point. minimum value.
- the neighbor points of the current point include 3 neighbor points, and the first parameter is the difference between the maximum value and the minimum value in the reconstructed values of the reflectivity information of the 3 neighbor points.
- the first attribute includes color information
- the first parameter is a difference between a maximum value and a minimum value in reconstructed values of color information of neighbor points.
- the first parameter maxDiff can be calculated by:
- maxDiff max(max(R)-min(R), max(G)-min(G), max(B)-min(B)), where max(R) indicates that the neighbor point is reconstructed on the R component
- max(R) indicates that the neighbor point is reconstructed on the R component
- min(R) represents the minimum value of the reconstructed value of the neighbor point on the R component
- max(G) represents the maximum value of the reconstructed value of the neighbor point on the G component
- min(G) represents the neighbor point in the The minimum value of the reconstructed value on the G component
- max(B) represents the maximum value of the reconstructed value of the neighbor point on the B component
- min(B) represents the minimum value of the neighbor point's reconstructed value on the B component.
- the neighbor points of the current point include 3 neighbor points
- the first parameter is the difference between the maximum value and the minimum value in the reconstructed values of the color information of the 3 neighbor points, that is, the first parameter is that the 3 neighbor points are in The maximum difference value on the R component, the maximum difference value on the G component, and the maximum difference value on the B component.
- Step 802 judging whether the first time parameter is less than a threshold
- the threshold may be preset.
- a threshold corresponding to the color information may be preset, and when the first attribute is color information, it is determined whether the first parameter is smaller than the threshold of the color information.
- a threshold value corresponding to the reflectivity information may be preset, and when the first attribute is the reflectivity information, it is determined whether the first parameter is smaller than the threshold value of the reflectivity information.
- step 803 When the first parameter is less than the threshold, go to step 803, and when the first parameter is not less than the threshold, go to step 804:
- Step 803 using a preset first prediction mode to determine the predicted value of the first attribute of the current point;
- the first prediction mode includes at least one of the following: using a weighted average of attributes of neighbor points as a prediction value; and using an attribute value of one of the neighbor points as a prediction value.
- the first prediction mode may be set in advance to use a weighted average of neighbor point attributes as a prediction value.
- the first prediction mode may be set in advance to use an attribute value of one of the neighbor points as a prediction value.
- the use of the weighted average of neighbor point attributes as the predicted value includes:
- M is a positive integer greater than 1.
- M can take a value of 3, 4, or 5.
- the weighted average of the attributes of 3 neighbor points can be used as the predicted value.
- the M neighbor points include at least some of the first P neighbor points of the current point, P ⁇ M.
- P can take a value of 5
- M can take a value of 3
- 3 neighbor points can be selected from the first 5 neighbor points of the current point.
- the top P neighbor points of the current point refer to the top P neighbor points from the current point based on the distance from near to far.
- the M neighbor points may select neighbor points of the current point for which the first parameter is calculated.
- the neighbor point of the current point for which the first parameter is calculated may select 3 neighbor points, and the M neighbor points may also select the 3 neighbor points.
- the M neighbor points may also select the 3 neighbor points. For example, to calculate the neighbor points of the current point of the first parameter, select the 3 neighbor points closest to the current point, and also use the weighted average of the attributes of the 3 neighbor points closest to the current point as the predicted value.
- the M neighbor points may select points among the neighbor points of the current point for calculating the first parameter or points among the neighbor points that are not the current point for calculating the first parameter, such as neighbors of the current point for calculating the first parameter
- a point can choose 5 neighbor points
- M neighbor points can choose 3 neighbor points.
- the 3 neighbor points may be 3 of the 5 neighbor points, or the 3 neighbor points may not be among the 5 neighbor points, or some of the 3 neighbor points may be the 5 neighbor points point in .
- to calculate the neighbor points of the current point of the first parameter select the 5 neighbor points closest to the current point, and use the weighted average of the attributes of the 3 neighbor points closest to the current point as the predicted value.
- the weight of each neighbor point may be the inverse of the squared Euclidean distance between the current point and the neighbor point.
- the weight of each neighbor point may also be other values, such as a preset coefficient or the like.
- using the attribute value of one of the neighbor points as the predicted value includes: using the attribute value of the Nth neighbor point of the current point as the predicted value, where N is a positive integer.
- N can take a value of 1, 2, or 3.
- the Nth neighbor point refers to the Nth neighbor point closest to the current point from near to far.
- the attribute value of the 1st neighbor point closest to the current point can be used as the predicted value, and the attribute value can be Rebuild value.
- the attribute value of the second neighbor point closest to the current point can be used as the predicted value.
- the attribute value of the third neighbor point closest to the current point can be used as the predicted value.
- the user may preset the first prediction mode of the codec, for example, the user may preset the first prediction mode of the decoder to use the weighted average of attributes of M neighbor points as the prediction value.
- the user may preset the first prediction mode of the encoder to use the attribute value of the Nth neighbor point of the current point as the prediction value.
- the first modes preset by the codec end are the same. In another example, the first modes preset by the codec end are different.
- the first prediction mode may further include: using an average value of neighbor points as a prediction value. For example, the average value of the attribute values of the selected three neighbor points is taken as the predicted value of the current point.
- the first prediction mode may further include: a value obtained by performing a mathematical operation on the attribute value of the neighbor point as a prediction value.
- the mathematical operation refers to any other mathematical operation method except weighted average and average.
- Step 804 Parse the code stream to obtain identification information of the prediction mode; use the prediction mode indicated by the identification information to determine the predicted value of the first attribute of the current point;
- a weighted average of attributes of neighbor points is used as the predicted value of the current point.
- the indicator of the prediction mode that uses the weighted average of the attributes of the neighbor points as the prediction value is set as the index value 0 in advance, then when the identification information of the prediction mode obtained by analysis is 0, the prediction mode indicated by the identification information 0 is used to The attribute weighted average as the prediction mode of the predicted value determines the predicted value for the current point.
- the prediction mode that uses the weighted average of neighbor point attributes as the prediction value of the current point indicated by the identification information includes:
- S can take a value of 3, 4, or 5.
- the weighted average of the attributes of 3 neighbor points can be used as the predicted value.
- the S neighbor points include at least some of the first U neighbor points of the current point, U ⁇ S.
- U can take a value of 5
- S can take a value of 3
- 3 neighbor points can be selected from the first 5 neighbor points of the current point.
- the top U neighbors of the current point refer to the top U neighbors from the current point based on the distance from near to far.
- the S neighbors may select neighbors of the current point for which the first parameter is calculated.
- the neighbor point of the current point for which the first parameter is calculated may select 3 neighbor points, and the S neighbor points may also select the 3 neighbor points.
- the S neighbor points may also select the 3 neighbor points. For example, to calculate the neighbor points of the current point of the first parameter, select the 3 neighbor points closest to the current point, and also use the weighted average of the attributes of the 3 neighbor points closest to the current point as the predicted value.
- the S neighbor points may select points among the neighbor points of the current point for calculating the first parameter or points among the neighbor points that are not the current point for calculating the first parameter, such as neighbors of the current point for calculating the first parameter
- a point can choose 5 neighbor points
- S neighbor points can choose 3 neighbor points.
- the 3 neighbor points may be 3 of the 5 neighbor points, or the 3 neighbor points may not be among the 5 neighbor points, or some of the 3 neighbor points may be the 5 neighbor points point in .
- select the 5 neighbor points closest to the current point select the 5 neighbor points closest to the current point, and use the weighted average of the attributes of the 3 neighbor points closest to the current point as the predicted value.
- the weight of each neighbor point may be the inverse of the squared Euclidean distance between the current point and the neighbor point.
- the weight of each neighbor point may also be other values, such as a preset coefficient or the like.
- the S neighbor points and the M neighbor points may select the same neighbor point, for example, the weighted average of attributes of the three neighbor points closest to the current point may be selected as the predicted value of the current point.
- the S neighbor points and the M neighbor points may also select different neighbor points.
- the M neighbor points select the weighted average of the attributes of the 3 neighbor points closest to the current point as the predicted value of the current point
- S Each neighbor point selects the weighted average of the attributes of the 5th to 7th neighbor points closest to the current point as the predicted value of the current point.
- the S neighbor points and the points of the M neighbor points may be partially identical.
- M neighbors select the weighted average of attributes of the 3 closest neighbors to the current point as the predicted value of the current point
- S neighbors select the weighted average of the attributes of the 2nd to 4th neighbors closest to the current point as the weighted average of the attributes of the current point. Predicted value for the current point.
- an attribute value of one of the neighbor points is used as the predicted value of the current point.
- using the attribute value of one of the neighbor points as the predicted value includes: using the attribute value of the T-th neighbor point of the current point as the predicted value, where T is a positive integer.
- T can take a value of 1, 2, or 3.
- the T-th neighbor point refers to the T-th neighbor point that is closest to the current point from near to far.
- the index value of 1 can be preset to indicate that the attribute value of the first neighbor point of the current point is used as the predicted value.
- the index value 2 indicates that the attribute value of the second neighbor point of the current point is used as the predicted value
- the index value 1 indicates that the attribute value of the third neighbor point of the current point is used as the predicted value, when the identification information obtained by parsing is 1, Then use the attribute value of the first neighbor point of the current point as the predicted value of the current point, when the identification information obtained by analysis is 2, then use the attribute value of the second neighbor point of the current point as the predicted value of the current point, when If the identification information obtained by parsing is 3, the attribute value of the third neighbor point of the current point is used as the predicted value of the current point.
- the 1st, 2nd, and 3rd neighbor points refer to the 1st, 2nd, and 3rd neighbor points closest to the current point based on the distance from near to far.
- Step 805 Parse the code stream to obtain the residual value of the first attribute of the current point; calculate the sum of the residual value after inverse quantization and the predicted value, as the first attribute of the current point reconstruction value.
- An embodiment of the present disclosure provides an encoding method, as shown in FIG. 9 , including:
- Step 901 Determine the neighbor point of the current point in the point cloud to be encoded, and calculate a first parameter according to the neighbor point; the first parameter is the difference between the maximum value and the minimum value in the reconstruction value of the first attribute of the neighbor point value;
- Step 902 when the first parameter is less than a threshold, use a preset first prediction mode to determine the predicted value of the first attribute of the current point;
- Step 903 calculating the difference between the original value of the first attribute of the current point and the predicted value, as the residual value of the first attribute of the current point;
- Step 904 Encode the quantized residual value, and write the identification information of the first prediction mode into the code stream, where the identification information is used to indicate the prediction mode.
- the first attribute includes at least one of the following: reflectance information, color information.
- the first prediction mode includes at least one of: using a weighted average of attributes of neighbor points as a prediction value; and using an attribute value of one of the neighbor points as a prediction value.
- the use of the weighted average of neighbor point attributes as the predicted value includes:
- the property value of one of the neighbor points is used as the predicted value, including:
- the M neighbor points include at least some neighbor points among the first P neighbor points of the current point, P ⁇ M.
- the neighbor points of the current point include R neighbor points, and the value of R is a positive integer greater than 1.
- M may take a value of 3, 4, or 5.
- N may take a value of 1, 2, or 3.
- R may take a value of 3, 4, or 5.
- the method further includes:
- the rate-distortion optimization RDO is used to select the second prediction mode
- the identification information of the second prediction mode is written into the code stream, where the identification information is used to indicate the prediction mode.
- the second prediction mode includes at least one of the following:
- the use of the weighted average of neighbor point attributes as the predicted value includes:
- the weighted average of the attributes of the S neighbor points is used as the prediction value, the value of S is a positive integer greater than 1, and the corresponding identification information is a preset index value and has global uniqueness.
- the property value of one of the neighbor points is used as the predicted value, including:
- the attribute value of the T-th neighbor point of the current point is used as the predicted value, T is a positive integer, and the corresponding identification information is the index value of the T-th neighbor point.
- the S neighbor points include at least some of the first U neighbor points of the current point, U ⁇ S.
- S may be 3, 4, or 5.
- T may take a value of 1, 2, or 3.
- U may take a value of 3, 4, or 5.
- An exemplary embodiment of the present disclosure provides an encoding method, as shown in FIG. 10 , including:
- Step 1001 Determine the neighbor point of the current point in the point cloud to be encoded, and calculate a first parameter according to the neighbor point; the first parameter is the difference between the maximum value and the minimum value in the reconstruction value of the first attribute of the neighbor point value;
- the neighbor point of the current point and the related content of the first parameter are the same as in the above-mentioned embodiment, and are not repeated here.
- Step 1002 judging whether the first parameter is less than a threshold
- the threshold may be preset.
- a threshold corresponding to the color information may be preset, and when the first attribute is color information, it is determined whether the first parameter is smaller than the threshold of the color information.
- a threshold value corresponding to the reflectivity information may be preset, and when the first attribute is the reflectivity information, it is determined whether the first parameter is smaller than the threshold value of the reflectivity information.
- Step 1003 using a preset first prediction mode to determine the predicted value of the first attribute of the current point;
- the content related to the first prediction mode is the same as that in the above-mentioned embodiment, and details are not repeated here.
- the content related to the second prediction mode is the same as that in the above-mentioned embodiment, and details are not repeated here.
- Step 1004 calculating the difference between the original value of the first attribute of the current point and the predicted value, as the residual value of the first attribute of the current point;
- Step 1005 encode the quantized residual value; write the identification information of the first prediction mode into a code stream, and the identification information is used to indicate the prediction mode;
- Step 1006 using rate-distortion optimization RDO to select a second prediction mode; using the second prediction mode to determine the prediction value of the first attribute of the current point;
- Step 1007 calculating the difference between the original value of the first attribute of the current point and the predicted value, as the residual value of the first attribute of the current point;
- Step 1008 Encode the quantized residual value; write the identification information of the second prediction mode into the code stream, where the identification information is used to indicate the prediction mode.
- An embodiment of the present disclosure provides a decoding method. As shown in FIG. 11 , the method includes:
- Step 1101 parse the code stream to obtain the identification information of the prediction mode of the current point in the point cloud to be decoded
- Step 1102 using the prediction mode indicated by the identification information to determine the prediction value of the first attribute of the current point;
- Step 1103 parse the code stream to obtain the residual value of the first attribute of the current point
- Step 1104 Calculate the sum of the residual value after inverse quantization and the predicted value, as a reconstructed value of the first attribute of the current point.
- the first attribute includes at least one of the following: reflectance information, color information.
- a weighted average value of attributes of neighbor points is used as the predicted value of the current point
- an attribute value of one of the neighbor points is used as the predicted value of the current point.
- using the weighted average value of neighbor point attributes as the predicted value of the current point including:
- using the attribute value of one of the neighbor points as the predicted value of the current point includes:
- the attribute value of the Y-th neighbor point is used as the predicted value of the current point, and Y is the index value corresponding to the identification information. Y is a positive integer.
- the content related to the prediction value using the attribute value of one of the neighbor points as the prediction value is the same as that in the above-mentioned embodiment, and details are not repeated here.
- An exemplary embodiment of the present disclosure provides an encoding method, including:
- Step 1 determine the adjacent points of the current point, and calculate the maxDiff according to the adjacent points
- the pattern index numbers of the adjacent points are written into the code stream (that is, corresponding to pattern index numbers 1, 2, and 3 whose Predictor index in Table 1 is not equal to 0).
- neighbors used to compute maxDiff (“neighbor set A”), neighbors used for weighted average when computing "maxDiff ⁇ threshold” (“neighbor set B”) .
- the RDO determines the adjacent candidate points ("adjacent point set C") used in the process of determining the predicted value of the current point.
- An exemplary embodiment of the present disclosure provides a decoding method, including:
- Step 1 determine the adjacent points of the current point
- Step 2 parsing the code stream to obtain the mode index serial number of the current point
- the mode index number refers to the identification information of the prediction mode.
- Step 3 when the pattern index number indicates the use of "the prediction mode of the weighted average of the attribute values of neighbor points", the adjacent point is used to calculate the predicted value of the current point; "predicted value”, the decoder sets the predicted value of the current point to be equal to the attribute value of the adjacent point indicated by the mode index number.
- the pattern index number index indicates the point closest to the current point at the index th of the adjacent points according to the Euclidean distance).
- An exemplary embodiment of the present disclosure provides a decoding method, including:
- Step 1 parsing the code stream to obtain the mode index serial number of the current point
- Step 2 when the mode index number indicates the use of the "prediction mode of the weighted average of the attribute values of neighbor points", determine the adjacent points of the current point, and use the adjacent points to calculate the predicted value of the current point; otherwise,
- Step 3 when the mode index sequence number indicates that "the attribute value of the neighbor point determines the predicted value of the current point", the adjacent point of the current point is determined, and the decoder sets the predicted value of the current point to be equal to that indicated by the mode index sequence number.
- the attribute value of the adjacent point For example: the pattern index number index indicates the point closest to the current point at the index th of the adjacent points according to the Euclidean distance).
- the prediction mode is determined first, and then the adjacent points are acquired according to the prediction mode, so as to avoid the acquired adjacent points from being unused, thereby avoiding wasting resources.
- An exemplary embodiment of the present disclosure provides an encoding method, including:
- Step 1 determine the adjacent points of the current point, and calculate the maxDiff according to the adjacent points
- Step 2 when maxDiff ⁇ threshold, use the "prediction mode of weighted average of attribute values of neighbor points" to determine the prediction value of the current point.
- An exemplary embodiment of the present disclosure provides a decoding method, including:
- Step 1 determine the adjacent points of the current point, and calculate the value of the first parameter (that is, maxDiff);
- Step 2 when the Y value of maxDiff is a positive integer.
- the "prediction mode of the weighted average of the attribute values of neighbor points” is used to calculate the predicted value of the current point (that is, the mode index number corresponding to the Predictor index in Table 1 equal to 0); here, the decoder is based on the existing decoding information. To deduce the mode information of the current point, it is not necessary to parse the code stream to obtain the mode information; otherwise;
- Step 3 when the value of maxDiff is greater than the threshold, the decoder parses the code stream to obtain the mode index number; the decoder sets the predicted value of the current point equal to the attribute value of the adjacent point indicated by the mode index number.
- An embodiment of the present disclosure further provides an encoder, as shown in FIG. 12 , comprising: a processor and a memory storing a computer program executable on the processor, wherein the processor executes the computer program When implementing the encoding method described in any of the above.
- the processing flow of the encoder includes: calculating the maximum difference maxDiff (ie, the first parameter) of its attribute values for the neighbor point set of the current point, and judging whether maxDiff ⁇ threshold, when maxDiff ⁇ threshold , select the preset first prediction mode preMode to calculate the predicted value of point cloud attributes, otherwise execute RDO to select the second prediction mode to calculate the predicted value of point cloud attributes, and calculate the residual error of point cloud attributes.
- maxDiff ie, the first parameter
- the coding prediction mode (that is, the identification information of the prediction mode is written into the code stream, for example, when the selected second prediction mode is prediction mode 1, preMode1 is written. code stream) and the encoded residual, and write the encoded code word into the attribute code stream.
- the first prediction mode preMode may be one of the prediction modes 0, 1, 2, and 3 shown in Table 1, and the RDO may select one of the prediction modes 1, 2, and 3 as the second prediction mode. .
- An embodiment of the present disclosure further provides a decoder, as shown in FIG. 14 , comprising: a processor and a memory storing a computer program executable on the processor, wherein the processor executes the computer program When the decoding method described in any of the above is implemented.
- the processing flow of the decoder includes: obtaining an attribute code stream, decoding residuals, calculating the maximum difference maxDiff (ie, the first parameter) of attribute values for the neighbor point set of the current point, and determining Whether maxDiff ⁇ threshold, when maxDiff ⁇ threshold, select the preset first prediction mode preMode to calculate the point cloud attribute prediction value, otherwise decode the prediction mode (that is, parse and obtain the identification information of the prediction mode), use the prediction mode preMode ( That is, the prediction mode indicated by the identification information) calculates the predicted value of the point cloud attribute, and calculates the reconstructed attribute value of the point cloud according to the residual error and the predicted value, so as to reconstruct the point cloud.
- the first prediction mode preMode may be one of the prediction modes 0, 1, 2, and 3 shown in Table 1.
- An embodiment of the present disclosure further provides a terminal, including: a point cloud codec, where the point cloud codec includes the foregoing encoder and/or the foregoing decoder.
- An embodiment of the present disclosure further provides an encoding and decoding system, including: a point cloud codec, where the point cloud codec includes the above-mentioned encoder and/or the above-mentioned decoder.
- the technical solutions provided by the embodiments of the present disclosure avoid the occurrence of logical errors in the encoding and decoding process, resulting in the problem that the prediction result may be biased and the encoding and decoding performance is not high.
- the test result obtained by testing the test sequence in the cat3-fused test set required by MPEG under the CTC CY test condition is the end-to-end rate percentage ( End to End BD-AttrRate%) is -0.1%, indicating that the coding and decoding performance can be effectively improved by using the technical solutions provided by the embodiments of the present disclosure.
- FIG. 16 is a schematic frame diagram of an encoding device.
- the encoding device 1 may include a processor 101 , a memory 103 and a bus system 104 .
- the processor 101 and the memory 103 are connected through a bus system 104, the memory 103 is used to store instructions, and the processor 101 is used to execute any prediction method, encoding method or decoding method described in this disclosure.
- the processor 101 may be a central processing unit (CPU), and the processor 101 may also be other general-purpose processors, DSP, ASIC, FPGA or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
- a general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
- the memory 103 may comprise a ROM device or a RAM device. Any other suitable type of storage device may also be used as memory 103 .
- Memory 103 may include code and data accessed by processor 101 using bus 104 .
- bus system 104 may also include a power bus, a control bus, a status signal bus, and the like.
- Various buses may be designated as bus system 104 in the figure.
- the encoding device 1 may also include one or more output devices, such as a display 102 .
- the display 102 may be a touch-sensitive display that incorporates a display with a tactile sense operable to sense touch input.
- Display 102 may be connected to processor 101 via bus 104 .
- the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium and executed by a hardware-based processing unit.
- Computer-readable media may include computer-readable storage media corresponding to tangible media, such as data storage media, or communication media including any medium that facilitates transfer of a computer program from one place to another, eg, according to a communication protocol.
- a computer-readable medium may generally correspond to a non-transitory, tangible computer-readable storage medium or a communication medium such as a signal or carrier wave.
- Data storage media can be any available media that can be accessed by one or more computers or one or more processors to retrieve instructions, code and/or data structures for implementing the techniques described in this disclosure.
- the computer program product may comprise a computer-readable medium.
- such computer-readable storage media may include RAM, ROM, EEPROM, CD-ROM or other optical disk storage devices, magnetic disk storage devices or other magnetic storage devices, flash memory, or may be used to store instructions or data Any other medium in the form of a structure that stores the desired program code and that can be accessed by a computer.
- any connection is also termed a computer-readable medium if, for example, a connection is made from a website, server, or other remote sources transmit instructions, coaxial cable, fiber optic cable, twine, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium.
- computer-readable storage media and data storage media do not include connections, carrier waves, signals, or other transitory (transitory) media, but are instead directed to non-transitory, tangible storage media.
- magnetic disks and optical disks include compact disks (CDs), laser disks, optical disks, digital versatile disks (DVDs), floppy disks, or Blu-ray disks, etc., where disks typically reproduce data magnetically, while optical disks use lasers to Optically reproduce data. Combinations of the above should also be included within the scope of computer-readable media.
- processors such as one or more digital signal processors (DSPs), general purpose microprocessors, application specific integrated circuits (ASICs) field programmable logic arrays (FPGAs) or other equivalent integrated or discrete logic circuits.
- DSPs digital signal processors
- ASICs application specific integrated circuits
- FPGAs field programmable logic arrays
- processors may refer to any of the foregoing structure or any other structure suitable for implementation of the techniques described herein.
- the functionality described herein may be provided within dedicated hardware and/or software modules configured for encoding and decoding, or incorporated in a combined codec. Also, the techniques may be fully implemented in one or more circuits or logic elements.
- the technical solutions of the embodiments of the present disclosure may be implemented in a wide variety of devices or apparatuses, including a wireless handset, an integrated circuit (IC), or a set of ICs (eg, a chip set).
- IC integrated circuit
- Various components, modules, or units are described in the disclosed embodiments to emphasize functional aspects of devices configured to perform the described techniques, but do not necessarily require realization by different hardware units. Rather, as described above, the various units may be combined in codec hardware units or provided by a collection of interoperating hardware units (including one or more processors as described above) in conjunction with suitable software and/or firmware.
- Such software may be distributed on computer-readable media, which may include computer storage media (or non-transitory media) and communication media (or transitory media).
- computer storage media includes both volatile and nonvolatile implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data flexible, removable and non-removable media.
- Computer storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical disk storage, magnetic cartridges, magnetic tape, magnetic disk storage or other magnetic storage devices, or may Any other medium used to store desired information and which can be accessed by a computer.
- communication media typically embodies computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism, and can include any information delivery media, as is well known to those of ordinary skill in the art .
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
预测模式 | 预测值 | idxBits |
0 | average | 1 |
1 | 1st nearest point | 2 |
2 | 2nd nearest point | 3 |
3 | 3rd nearest point | 3 |
Predictor index | Predicted value |
0 | average |
1 | P4(1 st nearest point) |
2 | P5(2 nd nearest point) |
3 | P0(3 rd nearest point) |
预测模式 | 预测值 |
1 | 1st nearest point |
2 | 2nd nearest point |
3 | 3rd nearest point |
Claims (60)
- 一种编码方法,包括:确定待编码点云中当前点的邻居点,根据所述邻居点计算第一参数;所述第一参数为所述邻居点的第一属性的重建值中最大值与最小值的差值;当所述第一参数小于阈值时,使用预先设置的第一预测模式确定所述当前点的第一属性的预测值;计算所述当前点的第一属性的原始值与所述预测值的差值,作为所述当前点的第一属性的残差值;对量化后的所述残差值进行编码。
- 根据权利要求1所述的编码方法,其中,所述第一属性包括以下至少一种:反射率信息,颜色信息。
- 根据权利要求1所述的编码方法,其中,所述第一预测模式包括以下至少一种:使用邻居点属性加权平均值作为预测值;使用邻居点之一的属性值作为预测值。
- 根据权利要求3所述的编码方法,其中,所述使用邻居点属性加权平均值作为预测值,包括:使用M个邻居点属性加权平均值作为预测值,M取值为大于1的正整数。
- 根据权利要求3所述的编码方法,其中,使用邻居点之一的属性值作为预测值,包括:使用当前点的第N个邻居点的属性值作为预测值,N取值为正整数。
- 根据权利要求4所述的编码方法,其中,所述M个邻居点包括所述当前点的前P个邻居点中的至少部分邻居点,P≥M。
- 根据权利要求3所述的编码方法,其中,所述当前点的邻居点包括R个邻居点,R取值为大于1的正整数。
- 根据权利要求4所述的编码方法,其中,M取值为3、4或者5。
- 根据权利要求5所述的编码方法,其中,N取值为1、2或3。
- 根据权利要求7所述的编码方法,其中,R取值为3、4或5。
- 根据权利要求1所述的编码方法,该方法还包括:当所述第一参数不小于阈值时,采用率失真优化RDO选择第二预测模式;使用所述第二预测模式确定所述当前点的第一属性的预测值;将所述第二预测模式的标识信息写入码流,所述标识信息用于指示预测模式。
- 根据权利要求11所述的编码方法,其中,所述第二预测模式包括以下至少一种:使用邻居点属性加权平均值作为预测值;使用邻居点之一的属性值作为预测值。
- 根据权利要求12所述的编码方法,其中,所述使用邻居点属性加权平均值作为预测值,包括:使用S个邻居点属性加权平均值作为预测值,S取值为大于1的正整数,对应的标识信息为预设索引值且具有全局唯一性。
- 根据权利要求12所述的编码方法,其中,使用邻居点之一的属性值作为预测值,包括:使用当前点的第T个邻居点的属性值作为预测值,T取值为正整数,对应的标识信息是第T个邻居点的索引值。
- 根据权利要求13所述的编码方法,其中,所述S个邻居点包括所述当前点的前U个邻居点中的至少部分邻居点,U≥S。
- 根据权利要求13所述的编码方法,其中,S取值为3、4或5。
- 根据权利要求14所述的编码方法,其中,T取值为1、2或3。
- 根据权利要求15所述的编码方法,其中,U取值为3、4或5。
- 根据权利要求7所述的编码方法,其中,M和R的取值相同。
- 一种解码方法,包括:确定待解码点云中当前点的邻居点,根据所述邻居点计算第一参数;所述第一参数为所述邻居点的第一属性的重建值中最大值与最小值的差值;当所述第一参数小于阈值时,使用预先设置的第一预测模式确定所述当前点的第一属性的预测值;解析码流,获得所述当前点的第一属性的残差值;计算所述残差值反量化后与所述预测值相加的和值,作为所述当前点的第一属性的重建值。
- 根据权利要求20所述的解码方法,其中,所述第一属性包括以下至少一种:反射率信息,颜色信息。
- 根据权利要求20所述的解码方法,其中,所述第一预测模式包括以下至少一种:使用邻居点 属性加权平均值作为预测值;使用邻居点之一的属性值作为预测值。
- 根据权利要求22所述的解码方法,其中,所述使用邻居点属性加权平均值作为预测值,包括:使用M个邻居点属性加权平均值作为预测值,M取值为大于1的正整数。
- 根据权利要求22所述的解码方法,其中,使用邻居点之一的属性值作为预测值,包括:使用当前点的第N个邻居点的属性值作为预测值,N取值为正整数。
- 根据权利要求20所述的解码方法,其中,所述当前点的邻居点包括R个邻居点,R取值为大于1的正整数。
- 根据权利要求23所述的解码方法,其中,M取值为3、4或者5。
- 根据权利要求24所述的解码方法,其中,N取值为1、2或3。
- 根据权利要求26所述的解码方法,其中,R取值为3、4或5。
- 根据权利要求20所述的解码方法,该方法还包括:当所述第一参数不小于阈值时,解析码流,获得预测模式的标识信息;使用所述标识信息指示的预测模式确定所述当前点的第一属性的预测值。
- 根据权利要求21所述的解码方法,其中,当所述标识信息为预设索引值时,将邻居点属性加权平均值作为所述当前点的预测值;当所述标识信息为所述预设索引值之外的其他索引值时,使用邻居点之一的属性值作为所述当前点的预测值。
- 根据权利要求30所述的解码方法,其中,使用邻居点属性加权平均值作为所述当前点的预测值,包括:使用S个邻居点属性加权平均值作为预测值,S取值为大于1的正整数。
- 根据权利要求32所述的解码方法,其中,使用邻居点之一的属性值作为所述当前点的预测值,包括:使用第T个邻居点的属性值作为所述当前点的预测值,T为所述标识信息对应的索引值。
- 一种编码方法,包括:确定待编码点云中当前点的邻居点,根据所述邻居点计算第一参数;所述第一参数为所述邻居点的第一属性的重建值中最大值与最小值的差值;当所述第一参数小于阈值时,使用预先设置的第一预测模式确定所述当前点的第一属性的预测值;计算所述当前点的第一属性的原始值与所述预测值的差值,作为所述当前点的第一属性的残差值;对量化后的所述残差值进行编码;将所述第一预测模式的标识信息写入码流,所述标识信息用于指示预测模式。
- 根据权利要求33所述的编码方法,其中,所述第一属性包括以下至少一种:反射率信息,颜色信息。
- 根据权利要求33所述的编码方法,其中,所述第一预测模式包括以下至少一种:使用邻居点属性加权平均值作为预测值;使用邻居点之一的属性值作为预测值。
- 根据权利要求35所述的编码方法,其中,所述使用邻居点属性加权平均值作为预测值,包括:使用M个邻居点属性加权平均值作为预测值,M取值为大于1的正整数。
- 根据权利要求35所述的编码方法,其中,使用邻居点之一的属性值作为预测值,包括:使用当前点的第N个邻居点的属性值作为预测值,N取值为正整数。
- 根据权利要求36所述的编码方法,其中,所述M个邻居点包括所述当前点的前P个邻居点中的至少部分邻居点,P≥M。
- 根据权利要求33所述的编码方法,其中,所述当前点的邻居点包括R个邻居点,R取值为大于1的正整数。
- 根据权利要求36所述的编码方法,其中,M取值为3、4或者5。
- 根据权利要求37所述的编码方法,其中,N取值为1、2或3。
- 根据权利要求39所述的编码方法,其中,R取值为3、4或5。
- 根据权利要求9所述的编码方法,该方法还包括:当所述第一参数不小于阈值时,采用率失真优化RDO选择第二预测模式;使用所述第二预测模式确定所述当前点的第一属性的预测值;将所述第二预测模式的标识信息写入码流,所述标识信息用于指示预测模式。
- 根据权利要求43所述的编码方法,其中,所述第二预测模式包括以下至少一种:使用邻居点属性加权平均值作为预测值;使用邻居点之一的属性值作为预测值。
- 根据权利要求44所述的编码方法,其中,所述使用邻居点属性加权平均值作为预测值,包括:使用S个邻居点属性加权平均值作为预测值,S取值为大于1的正整数,对应的标识信息为预设索引值且具有全局唯一性。
- 根据权利要求44所述的编码方法,其中,使用邻居点之一的属性值作为预测值,包括:使用当前点的第T个邻居点的属性值作为预测值,T取值为正整数,对应的标识信息是第T个邻居点的索引值。
- 根据权利要求45所述的编码方法,其中,所述S个邻居点包括所述当前点的前U个邻居点中的至少部分邻居点,U≥S。
- 根据权利要求45所述的编码方法,其中,S取值为3、4或5。
- 根据权利要求46所述的编码方法,其中,T取值为1、2或3。
- 根据权利要求47所述的编码方法,其中,U取值为3、4或5。
- 一种解码方法,包括:解析码流,获得待解码点云中当前点的预测模式的标识信息;使用所述标识信息指示的预测模式确定所述当前点的第一属性的预测值;解析码流,获得所述当前点的第一属性的残差值;计算所述残差值反量化后与所述预测值相加的和值,作为所述当前点的第一属性的重建值。
- 根据权利要求51所述的解码方法,其中,所述第一属性包括以下至少一种:反射率信息,颜色信息。
- 根据权利要求51所述的解码方法,其中,当所述标识信息为预设索引值时,将邻居点属性加权平均值作为所述当前点的预测值;当所述标识信息为所述预设索引值之外的其他索引值时,使用邻居点之一的属性值作为所述当前点的预测值。
- 根据权利要求53所述的解码方法,其中,使用邻居点属性加权平均值作为所述当前点的预测值,包括:使用X个邻居点属性加权平均值作为预测值,X取值为大于1的正整数。
- 根据权利要求53所述的解码方法,其中,使用邻居点之一的属性值作为所述当前点的预测值,包括:使用第Y个邻居点的属性值作为所述当前点的预测值,Y为所述标识信息对应的索引值。
- 一种编码器,包括:处理器以及存储有可在所述处理器上运行的计算机程序的存储器,其中,所述处理器执行所述计算机程序时实现如权利要求1至19,或者33至50中任一项所述的编码方法。
- 一种解码器,包括:处理器以及存储有可在所述处理器上运行的计算机程序的存储器,其中,所述处理器执行所述计算机程序时实现如权利要求20至32或者51至55中任一项所述的解码方法。
- 一种终端,包括:点云编解码器,所述点云编解码器包括如权利要求56所述的编码器,和/或如权利要57所述的解码器。
- 一种编解码系统,包括:点云编解码器,所述点云编解码器包括如权利要求56所述的编码器,和/或如权利要求57所述的解码器。
- 一种非瞬态计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其中,所述计算机程序时被处理器执行时实现如如权利要求1至19,或者33至50中任一项所述的编码方法,或者如权利要求20至32或者51至55中任一项所述的解码方法。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP21936486.6A EP4322527A1 (en) | 2021-04-16 | 2021-04-16 | Coding and decoding methods, related devices and storage medium |
KR1020237038796A KR20230173135A (ko) | 2021-04-16 | 2021-04-16 | 인코딩 및 디코딩 방법 및 관련 기기, 저장 매체 |
PCT/CN2021/087918 WO2022217611A1 (zh) | 2021-04-16 | 2021-04-16 | 编解码方法及相关设备、存储介质 |
JP2023562955A JP2024513583A (ja) | 2021-04-16 | 2021-04-16 | 符号化・復号化方法およびその関連機器、記憶媒体 |
CN202180096891.3A CN117157973A (zh) | 2021-04-16 | 2021-04-16 | 编解码方法及相关设备、存储介质 |
US18/379,997 US20240037800A1 (en) | 2021-04-16 | 2023-10-13 | Encoding and decoding methods, related devices and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2021/087918 WO2022217611A1 (zh) | 2021-04-16 | 2021-04-16 | 编解码方法及相关设备、存储介质 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US18/379,997 Continuation US20240037800A1 (en) | 2021-04-16 | 2023-10-13 | Encoding and decoding methods, related devices and storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022217611A1 true WO2022217611A1 (zh) | 2022-10-20 |
Family
ID=83639448
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2021/087918 WO2022217611A1 (zh) | 2021-04-16 | 2021-04-16 | 编解码方法及相关设备、存储介质 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20240037800A1 (zh) |
EP (1) | EP4322527A1 (zh) |
JP (1) | JP2024513583A (zh) |
KR (1) | KR20230173135A (zh) |
CN (1) | CN117157973A (zh) |
WO (1) | WO2022217611A1 (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110418135A (zh) * | 2019-08-05 | 2019-11-05 | 北京大学深圳研究生院 | 一种基于邻居的权重优化的点云帧内预测方法及设备 |
US20200107048A1 (en) * | 2018-10-02 | 2020-04-02 | Tencent America LLC | Method and apparatus for video coding |
CN110996098A (zh) * | 2018-10-02 | 2020-04-10 | 腾讯美国有限责任公司 | 处理点云数据的方法和装置 |
CN111095929A (zh) * | 2017-09-14 | 2020-05-01 | 苹果公司 | 点云压缩 |
-
2021
- 2021-04-16 JP JP2023562955A patent/JP2024513583A/ja active Pending
- 2021-04-16 CN CN202180096891.3A patent/CN117157973A/zh active Pending
- 2021-04-16 EP EP21936486.6A patent/EP4322527A1/en active Pending
- 2021-04-16 WO PCT/CN2021/087918 patent/WO2022217611A1/zh active Application Filing
- 2021-04-16 KR KR1020237038796A patent/KR20230173135A/ko active Search and Examination
-
2023
- 2023-10-13 US US18/379,997 patent/US20240037800A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111095929A (zh) * | 2017-09-14 | 2020-05-01 | 苹果公司 | 点云压缩 |
US20200107048A1 (en) * | 2018-10-02 | 2020-04-02 | Tencent America LLC | Method and apparatus for video coding |
CN110996098A (zh) * | 2018-10-02 | 2020-04-10 | 腾讯美国有限责任公司 | 处理点云数据的方法和装置 |
CN110418135A (zh) * | 2019-08-05 | 2019-11-05 | 北京大学深圳研究生院 | 一种基于邻居的权重优化的点云帧内预测方法及设备 |
Also Published As
Publication number | Publication date |
---|---|
JP2024513583A (ja) | 2024-03-26 |
EP4322527A1 (en) | 2024-02-14 |
CN117157973A (zh) | 2023-12-01 |
KR20230173135A (ko) | 2023-12-26 |
US20240037800A1 (en) | 2024-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230188736A1 (en) | Methods and apparatuses for hierarchically encoding and decoding a bytestream | |
US11310525B2 (en) | Predictor-copy coding mode for coding of point clouds | |
WO2019195921A1 (en) | Methods and devices for predictive coding of point clouds | |
CN114467302A (zh) | 针对点云压缩的基于块的预测编码 | |
CN103918009A (zh) | 预测位置编码 | |
JP7386337B2 (ja) | 分割方法、符号器、復号器及びコンピュータ記憶媒体 | |
WO2021062772A1 (zh) | 预测方法、编码器、解码器及计算机存储介质 | |
EP3595179B1 (en) | Methods and devices for lossy coding of point cloud occupancy | |
US20230101072A1 (en) | Nearest neighbour search method, encoder, decoder and storage medium | |
WO2022121650A1 (zh) | 点云属性的预测方法、编码器、解码器及存储介质 | |
WO2020248176A1 (zh) | 点云处理的方法与装置 | |
WO2022067790A1 (zh) | 一种点云分层方法及解码器、编码器、存储介质 | |
WO2022217611A1 (zh) | 编解码方法及相关设备、存储介质 | |
WO2021108969A1 (zh) | 属性信息的预测方法、编码器、解码器、及存储介质 | |
WO2020237759A1 (zh) | 有效表示图像并对图像进行编码的系统和方法 | |
US20230086264A1 (en) | Decoding method, encoding method, decoder, and encoder based on point cloud attribute prediction | |
WO2022120594A1 (zh) | 点云编解码方法、编码器、解码器及计算机存储介质 | |
WO2021108970A1 (zh) | 点云处理方法、编码器、解码器及存储介质 | |
WO2024011427A1 (zh) | 一种点云帧间补偿方法、编解码方法、装置和系统 | |
WO2022067782A1 (zh) | 一种点云数据的层次划分方法、编码器及存储介质 | |
WO2023025135A1 (zh) | 点云属性编码方法、装置、解码方法以及装置 | |
WO2021138785A1 (zh) | 划分方法、编码器、解码器及计算机存储介质 | |
WO2023155045A1 (zh) | 预测的方法和装置、编码器、解码器和编解码系统 | |
WO2022188582A1 (zh) | 点云中邻居点的选择方法、装置及编解码器 | |
WO2023024842A1 (zh) | 点云编解码方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21936486 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2023562955 Country of ref document: JP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2021936486 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 20237038796 Country of ref document: KR Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1020237038796 Country of ref document: KR |
|
ENP | Entry into the national phase |
Ref document number: 2021936486 Country of ref document: EP Effective date: 20231108 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |