IP Library › Granted Patent US 11,936,909
Granted Patent B2
US 11,936,909 · App. 17/655,353 · Granted Mar 19, 2024

Prediction method, encoder, decoder, and computer storage medium

Inventors: Wei Zhang (Guangdong, CN); Fuzheng Yang (Guangdong, CN); Shuai Wan (Guangdong, CN); Junyan Huo (Guangdong, CN); Yanzhuo Ma (Guangdong, CN); Lihui Yang (Guangdong, CN); Na Dai (Guangdong, CN); Sujun Zhang (Guangdong, CN)
Assignee: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP., LTD.
H04N19/597H04N19/119H04N19/124H04N19/176H04N19/186
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,936,909
App. No.
17/655,353
Granted
Mar 19, 2024
Kind
B2
Abstract

A prediction method, an encoder, a decoder, and a computer storage medium are provided. The prediction method applied to an encoder includes: determining a spatial block in which an encoding point is located; constructing a prediction model according to the spatial block; acquiring a value of a first colour component and a value of a second colour component of the encoding point; obtaining a prediction value of the second colour component of the encoding point by using the prediction model and the value of the first colour component; calculating a difference between the value of the second colour component and the prediction value of the second colour component, and using the obtained difference as a residual of the encoding point; and performing Level of Detail (LOD) partitioning and lifting transform based on the residual of the encoding point.

Claims (78)

1. A prediction method, which is applied to an encoder and comprises:

determining a spatial block in which an encoding point is located;

constructing a prediction model according to the spatial block, wherein the prediction model is used for characterizing a predicted relationship between a first colour component and a second colour component of the encoding point;

acquiring a value of the first colour component and a value of the second colour component of the encoding point;

obtaining a prediction value of the second colour component of the encoding point by using the prediction model and the value of the first colour component;

calculating a difference between the value of the second colour component and the prediction value of the second colour component, and using the obtained difference as a residual of the encoding point; and

performing Level of Detail (LOD) partitioning and lifting transform based on the residual of the encoding point.

2. The method according to claim 1 , wherein after the LOD partitioning and lifting transform are performed based on the residual of the encoding point, the method further comprises:

encoding the residual of the encoding point and signalling the encoded residual in an attribute bitstream.

3. The method according to claim 1 , wherein the determining the spatial block in which the encoding point is located comprises:

partitioning spatially a point cloud to obtain at least one spatial block; and

determine the spatial block in which the encoding point is located from the at least one spatial block based on a geometric position of the encoding point.

4. The method according to claim 3 , wherein the partitioning spatially the point cloud to obtain the at least one spatial block comprises:

partitioning the point cloud into a plurality of point sets according to a spatial adjacency relationship between points in the point cloud, and determining a first degree of correlation between the first colour component and the second colour component in each of the point sets; and

partitioning spatially the point cloud according to the determined first degree of correlation to obtain the at least one spatial block.

5. The method according to claim 3 , wherein the partitioning spatially the point cloud to obtain the at least one spatial block comprises:

calculating Morton codes of points in the point cloud;

arranging the Morton codes of the points in the point cloud in an ascending order, and determining a maximum value of the Morton codes and a minimum value of the Morton codes;

calculating a difference between the maximum value of the Morton codes and the minimum value of the Morton codes, and shifting the obtained difference to right by N bits to obtain a shifted difference, wherein N is a positive integer greater than or equal to 1; and

partitioning the point cloud into a quantity, which equals to the shifted difference, of spatial blocks when the shifted difference meets a preset range.

6. The method according to claim 5 , wherein after the Morton codes of the points in the point cloud are calculated, the method further comprises:

shifting the Morton codes of the points in the point cloud to the right by N bits; and

determining that a portion of the points in the point cloud belongs to a same spatial block if values of shifted Morton codes of the portion of the points are the same.

7. The method according to claim 1 , wherein the constructing the prediction model according to the spatial block comprises:

selecting K points from the spatial block to combine the selected K points into a point set, wherein K is a positive integer greater than or equal to 20;

determining model parameters based on the K points in the point set, wherein the model parameters comprise a first model parameter and a second model parameter; and

constructing the prediction model according to the first model parameter and the second model parameter.

8. The method according to claim 7 , wherein the determining the model parameters based on the K points in the point set comprises:

acquiring a value of the first colour component and a value of the second colour component of each point in the point set;

calculating the first model parameter by using a first calculation sub-model according to the value of the first colour component and the value of the second colour component of each point in the point set; and

calculating the second model parameter by using a second calculation sub-model according to the first model parameter.

9. The method according to claim 7 , wherein after the Level of Detail (LOD) partitioning and lifting transform are performed based on the residual of the encoding point, the method further comprises:

signalling the first model parameter and the second model parameter in an attribute bitstream;

wherein the signalling the first model parameter and the second model parameter in the attribute bitstream comprises:

quantizing the first model parameter and the second model parameter to obtain a quantized first model parameter and a quantized second model parameter; and

signalling the quantized first model parameter and the quantized second model parameter in the attribute bitstream;

or, wherein the signalling the first model parameter and the second model parameter in the attribute bitstream comprises:

signalling the first model parameter and the second model parameter corresponding to a first spatial block of the at least one spatial block in the attribute bitstream; and

calculating values of residuals of model parameters of remaining spatial blocks with respect to a previous spatial block in the at least one spatial block, and signalling the values of the residuals of the model parameters in the attribute bitstream in turn, wherein the at least one spatial block comprises the first spatial block and the remaining spatial blocks.

10. The method according to claim 1 , further comprising:

calculating a second degree of correlation between the first colour component and the second colour component corresponding to the spatial block for the spatial block;

shifting a Morton code of each point in the spatial block to right by N−1 bits to obtain two sub-spatial blocks if the second degree of correlation is less than a preset threshold of degree of correlation;

calculating a third degree of correlation between the first colour component and the second colour component corresponding to the two sub-spatial blocks;

constructing two sub-prediction models according to the two sub-spatial blocks if the third degree of correlation is greater than the second degree of correlation; and

obtaining the prediction value of the second colour component value of the encoding point by using the two sub-prediction models and the value of the first colour component.

11. A prediction method, which is applied to a decoder and comprises:

determining a spatial block in which a decoding point is located;

parsing an attribute bitstream to obtain a value of a first colour component and an initial residual of the decoding point, and a first model parameter and a second model parameter corresponding to the spatial block;

constructing a prediction model according to the first model parameter and the second model parameter, wherein the prediction model is used for characterizing a predicted relationship between the first colour component and a second colour component of the decoding point;

obtaining a prediction value of the second colour component of the decoding point by using the prediction model and the value of the first colour component;

performing Level of Detail (LOD) partitioning and lifting inverse transform on the initial residual obtained by the parsing to determine a residual of the decoding point; and

calculating a reconstructed value of the second colour component of the decoding point based on the residual of the decoding point and the prediction value of the second colour component.

12. The method according to claim 11 , wherein the determining the spatial block in which the decoding point is located comprises:

partitioning spatially a point cloud to obtain at least one spatial block; and

determining the spatial block in which the decoding point is located from the at least one spatial block based on a geometric position of the decoding point.

13. The method according to claim 12 , wherein the partitioning spatially the point cloud to obtain the at least one spatial block comprises:

partitioning the point cloud into a plurality of point sets according to a spatial adjacency relationship between points in the point cloud, and determining a first degree of correlation between the first colour component and the second colour component in each of the point sets; and

partitioning spatially the point cloud according to the determined first degree of correlation to obtain the at least one spatial block.

14. The method according to claim 12 , wherein the partitioning spatially the point cloud to obtain the at least one spatial block comprises:

calculating Morton codes of points in the point cloud;

arranging the Morton codes of the points in the point cloud in an ascending order, and determining a maximum value of the Morton codes and a minimum value of the Morton codes;

calculating a difference between the maximum value of the Morton codes and the minimum value of the Morton codes, and shifting the obtained difference to right by N bits to obtain a shifted difference, wherein N is a positive integer greater than or equal to 1; and

partitioning the point cloud into a quantity, which equals to the shifted difference, of spatial blocks when the shifted difference meets a preset range.

15. The method according to claim 14 , wherein after calculating the Morton codes of the points in the point cloud, the method further comprises:

shifting the Morton codes of the points in the point cloud to right by N bits; and

determining that a portion of points in the point cloud belongs to a same spatial block if values of shifted Morton codes of the portion of the points are the same.

16. The method according to claim 11 , wherein after parsing the attribute bitstream, the method further comprises:

performing inverse quantization on the first model parameter and second model parameter obtained by the parsing to obtain the first model parameter and the second model parameter.

17. The method according to claim 11 , wherein after parsing the attribute bitstream, the method further comprises:

acquiring a first model parameter and a second model parameter corresponding to a first spatial block in the at least one spatial block and values of residuals of model parameters corresponding to remaining spatial blocks in the at least one spatial block; and

obtaining first model parameters and second model parameters corresponding to the remaining spatial blocks according to the first model parameter and the second model parameter corresponding to the first spatial block and the values of the residuals of the model parameters.

18. The method according to claim 11 , wherein a shape of the spatial block comprises at least one of: a cube shape, a cuboid shape, and an irregular shape.

19. An encoder comprising a first memory and a first processor, wherein

the first memory is configured to store a computer program executable by the first processor; and

the first processor is configured to perform the method according to claim 1 when executing the computer program.

20. A decoder comprising a second memory and a second processor, wherein

the second memory is configured to store a computer program executable by the second processor; and

the second processor is configured to perform the method according to claim 11 when executing the computer program.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 17, 2022
From: ZHANG, WEI; YANG, FUZHENG; WAN, SHUAI; HUO, JUNYAN; MA, YANZHUO; YANG, LIHUI; DAI, NA; ZHANG, SUJUN
To: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP., LTD.
Reel/Frame 059300/0047 →
Continuity (2)
Continuation PCTCN2019109695 · Sep 30, 2019
Related Publication 20220210471A1 · Jun 30, 2022