IP Library › Granted Patent US 12,219,141
Granted Patent B2
US 12,219,141 · App. 18/208,771 · Granted Feb 4, 2025

Point cloud encoding method and decoding method, and encoder and decoder

Inventors: Hui Yuan (Dongguan, CN); Xiaohui Wang (Dongguan, CN); Lu Wang (Dongguan, CN); Qi Liu (Dongguan, CN); Ming Li (Dongguan, CN)
Assignee: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP., LTD.
H04N19/124H04N19/119H04N19/136H04N19/50H04N19/70
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 12,219,141
App. No.
18/208,771
Filed
Jun 12, 2023
Granted
Feb 4, 2025
Kind
B2
Examiner
VO, TUNG T
Art Unit
2425
USPC
375/240.03
Abstract

Provided are a point cloud encoding method and decoding method, and an encoder and a decoder. The encoding method comprises: processing attribute information of a target point in a point cloud, so as to obtain a predicted residual of the attribute information of the target point; quantizing the predicted residual on the basis of a quantized weight of the target point and a quantized stride of the target point, so as to obtain a quantized residual of the attribute information of the target point, wherein the quantized weight of the target point is the weight used when weighting the quantized stride of the target point; and encoding the quantized residual, so as to obtain a code stream.

Claims (88)

1. A method for encoding a point cloud, comprising:

processing attribute information of a target point in a point cloud to obtain a predicted residual value of the attribute information of the target point;

quantizing the predicted residual value based on a quantization weight of the target point and a quantization step of the target point to obtain a quantized residual value of the attribute information of the target point, the quantization weight of the target point being a weight used for performing weighting on the quantization step of the target point; and

encoding the quantized residual value to obtain a bitstream;

wherein the quantizing the predicted residual value based on a quantization weight of the target point and a quantization step of the target point to obtain a quantized residual value of the attribute information of the target point comprises:

determining an effective quantization weight of the target point based on the quantization weight of the target point; and

quantizing the predicted residual value by using the effective quantization weight of the target point and the quantization step of the target point to obtain the quantized residual value;

wherein the quantizing the predicted residual value by using the effective quantization weight of the target point and the quantization step of the target point to obtain the quantized residual value comprises:

updating the quantization step of the target point by using the following formula:

newQstep=┌Qstep/effectiveQuantWeight┐,

wherein effectiveQuantWeight represents effective quantization weight of the target point, newQstep represents the quantization step of the target point after being updated based on the effective quantization weight of the target point, and Ostep represents the quantization step of the target point before being updated based on the effective quantization weight of the target point; and

quantizing the predicted residual value by using the quantization step after being updated of the target point to obtain the quantized residual value.

2. The method of claim 1 , wherein a value of the effective quantization weight is equal to an integer power of 2.

3. The method of claim 1 , wherein a value of the effective quantization weight is not equal to an integer power of 2; and determining the effective quantization weight of the target point based on the quantization weight of the target point comprises:

determining the integer power of 2 which is the closest to the quantization weight of the target point as the effective quantization weight based on the value of the quantization weight of the target point.

4. The method of claim 1 , wherein the quantizing the predicted residual value by using the effective quantization weight of the target point and the quantization step of the target point to obtain the quantized residual value comprises:

multiplying the effective quantization weight by the predicted residual value to obtain a weighted residual value; and

quantizing the weighted residual value by using the quantization step of the target point to obtain the quantized residual value.

5. The method of claim 1 , further comprising:

updating quantization weights of N nearest points of the present point based on the quantization weight of the present point by traversing points in the cloud point according to a reverse order of an encoding order of the point cloud, N being an integer greater than 0.

6. The method of claim 5 , further comprising:

dividing the point cloud into one or more Level of Detail (LOD) layers, wherein each LOD layer comprises one or more points, and

an initial value of the quantization weight of a point in the previous M layers of LOD of the plurality of LOD layers is greater than an initial value of the quantization weight of a point in remaining LOD layers of the plurality of LOD layers.

7. The method of claim 1 , wherein the processing the attribute information of the target point in the point cloud to obtain the predicted residual value of the attribute information of the target point comprises:

processing location information of the target point to obtain reconstructed information of the location information of the target point;

obtaining a predicted value of the attribute information of the target point according to the reconstructed information of the location information of the target point;

processing the attribute information of the target point in the point cloud to obtain a true value of the attribute information of the target point; and

obtaining the predicted residual value according to the predicted value of the attribute information of the target point and the true value of the attribute information of the target point.

8. A method for decoding a point cloud, comprising:

parsing a bitstream of a point cloud to obtain a quantized residual value of attribute information of a target point of the point cloud;

performing inverse quantization on the quantized residual value based on a quantization weight of the target point and a quantization step of the target point to obtain a reconstructed residual value of the attribute information of the target point, the quantization weight of the target point being a weight used for performing weighting on the quantization step of the target point;

obtaining a reconstructed value of the attribute information of the target point according to the reconstructed residual value and the predicted value of the attribute information of the target point; and

obtaining a decoded point cloud according to the reconstructed value of the attribute information of the target point;

wherein the performing the inverse quantization on the quantized residual value based on the quantization weight of the target point and the quantization step of the target point to obtain the reconstructed residual value of the attribute information of the target point comprises:

determining an effective quantization weight of the target point based on the quantization weight of the target point; and

performing inverse quantization on the quantized residual value by using the effective quantization weight of the target point and the quantization step of the target point to obtain the reconstructed residual value;

wherein the performing the inverse quantization on the quantized residual value by using the effective quantization weight of the target point and the quantization step of the target point to obtain the reconstructed residual value comprises:

updating the quantization step of the target point by using the following formula:

newQstep=┌Qstep/effectiveQuantWeight┐,

wherein effectiveQuantWeight represents effective quantization weight of the target point, newQstep represents the quantization step of the target point after being updated based on the effective quantization weight of the target point, and Qstep represents the quantization step of the target point before being updated based on the effective quantization weight of the target point; and

performing inverse quantization on the quantized residual value by using the quantization step after being updated of the target point to obtain the reconstructed residual value.

9. The method of claim 8 , wherein a value of the effective quantization weight is not equal to an integer power of 2; and the determining the effective quantization weight of the target point based on the quantization weight of the target point comprises:

determining the integer power of 2 which is the closest to the quantization weight of the target point as the effective quantization weight based on the value of the quantization weight of the target point.

10. The method of claim 8 , wherein the performing the inverse quantization on the quantized residual value by using the effective quantization weight of the target point and the quantization step of the target point to obtain the reconstructed residual value comprises:

performing inverse quantization on the quantized residual value by using the quantization step of the target point to obtain a weighted residual value; and

dividing the weighted residual value by the effective quantization weight to obtain the reconstructed residual value.

11. The method of claim 8 , further comprising:

updating quantization weights of N nearest points of a present point based on the quantization weight of the present point by traversing the points in the cloud point according to a reverse order of an encoding order of the point cloud, N being an integer greater than 0.

12. The method of claim 11 , further comprising:

dividing the point cloud into one or more Level of Detail (LOD) layers, wherein each LOD layer comprises one or more points, and

an initial value of the quantization weight of a point in the previous M layers of LOD of the one or more LOD layers is greater than an initial value of the quantization weight of a point in remaining LOD layers of the plurality of LOD layers.

13. The method of claim 11 , wherein the updating the quantization weights of the N nearest points of the present point based on the quantization weight of the present point comprises:

acquiring an influence weight of the present point on each of the N nearest points, the influence weight depending on location information of the present point and the N nearest points; and

updating the quantization weights of the N nearest points based on the quantization weight of the present point and the influence weight of the present point on each of the N nearest points.

14. The method of claim 8 , further comprising:

parsing a bitstream to obtain reconstructed information of location information of the target point; and

obtaining a predicted value of the attribute information of the target point according to the reconstructed information of the location information of the target point.

15. A point cloud encoder, comprising:

a processor and

a computer-readable storage medium for storing a computer program;

wherein the processor is configured to execute the computer program to:

process attribute information of a target point in a point cloud to obtain a predicted residual value of the attribute information of the target point;

quantize the quantized residual value based on a quantization weight of the target point and a quantization step of the target point to obtain a quantized residual value of the attribute information of the target point, the quantization weight of the target point being a weight used for performing weighting on the quantization step of the target point; and

encode the quantized residual value to obtain a bitstream;

wherein in response to quantizing the predicted residual value based on the quantization weight of the target point and the quantization step of the target point to obtain the quantized residual value of the attribute information of the target point, the processor is configured to execute the computer program to:

determine an effective quantization weight of the target point based on the quantization weight of the target point; and

quantize the predicted residual value by using the effective quantization weight of the target point and the quantization step of the target point to obtain the quantized residual value;

wherein in response to quantizing the predicted residual value by using the effective quantization weight of the target point and the quantization step of the target point to obtain the quantized residual value, the processor is configured to execute the computer program to:

update the quantization step of the target point by using the following formula:

newQstep=┌Qstep/effectiveQuantWeight┐,

wherein effectiveQuantWeight represents effective quantization weight of the target point, newQstep represents the quantization step of the target point after being updated based on the effective quantization weight of the target point, and Qstep represents the quantization step of the target point before being updated based on the effective quantization weight of the target point; and

quantize the predicted residual value by using the quantization step after being updated of the target point to obtain the quantized residual value.

16. A point cloud decoder, comprising:

a processor and

a computer-readable storage medium for storing a computer program;

wherein the processor is configured to execute the computer program to:

parse a bitstream of a point cloud to obtain a quantized residual value of attribute information of a target point of the point cloud;

perform inverse quantization on the quantized residual value based on a quantization weight of the target point and a quantization step of the target point to obtain a reconstructed residual value of the attribute information of the target point, the quantization weight of the target point being a weight used for performing weighting on the quantization step of the target point;

obtain a reconstructed value of the attribute information of the target point according to the reconstructed residual value and a predicted value of the attribute information of the target point; and

obtain a decoded point cloud according to the reconstructed value of the attribute information of the target point;

wherein in response to performing the inverse quantization on the quantized residual value based on the quantization weight of the target point and the quantization step of the target point to obtain the reconstructed residual value of the attribute information of the target point, the processor is configured to execute the computer program to:

determine an effective quantization weight of the target point based on the quantization weight of the target point; and

perform inverse quantization on the quantized residual value by using the effective quantization weight of the target point and the quantization step of the target point to obtain the reconstructed residual value;

wherein in response to performing the inverse quantization on the quantized residual value by using the effective quantization weight of the target point and the quantization step of the target point to obtain the reconstructed residual value, the processor is configured to execute the computer program to:

update the quantization step of the target point by using the following formula:

newQstep=┌Qstep/effectiveQuantWeight┐,

wherein effectiveQuantWeight represents effective quantization weight of the target point, newQstep represents the quantization step of the target point after being updated based on the effective quantization weight of the target point, and Qstep represents the quantization step of the target point before being updated based on the effective quantization weight of the target point; and

perform inverse quantization on the quantized residual value by using the quantization step after being updated of the target point to obtain the reconstructed residual value.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 13, 2023
From: YUAN, HUI; WANG, XIAOHUI; WANG, LU; LIU, QI; LI, MING
To: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP., LTD.
Reel/Frame 063928/0989 →
Continuity (2)
Continuation PCTCN2020138421 · Dec 22, 2020
Related Publication 20230328246A1 · Oct 12, 2023
References Cited (75)
US 8023563B2 · Vella · 2011 [cited by examiner]
US 10762667B2 · Mekuria · 2020 [cited by applicant]
US 10861196B2 · Mammou · 2020 [cited by applicant]
US 10904564B2 · Yea · 2021 [cited by applicant]
US 10911787B2 · Tourapis · 2021 [cited by applicant]
US 11202054B2 · Yea · 2021 [cited by examiner]
US 20050141774A1 · Deever · 2005 [cited by examiner]
US 20070263720A1 · He · 2007 [cited by applicant]
US 20180324426A1 · Huang · 2018 [cited by examiner]
US 20190080483A1 · Mammou et al. · 2019 [cited by applicant]
US 20200021844A1 · Yea et al. · 2020 [cited by applicant]
US 20200021856A1 · Tourapis et al. · 2020 [cited by applicant]
US 20200090373A1 · Graziosi · 2020 [cited by applicant]
US 20200175725A1 · Mekuria · 2020 [cited by applicant]
US 20200366932A1 · Li et al. · 2020 [cited by applicant]
US 20210082153A1 · Sugio · 2021 [cited by applicant]
US 20210084289A1 · Sugio · 2021 [cited by applicant]
US 20210092355A1 · Sugio · 2021 [cited by applicant]
US 20210209811A1 · Ramasubramonian · 2021 [cited by examiner]
US 20210209812A1 · Han · 2021 [cited by examiner]
US 20210327097A1 · Ramasubramonian · 2021 [cited by examiner]
US 20210329298A1 · Ramasubramonian · 2021 [cited by examiner]
US 20210368186A1 · Sugio · 2021 [cited by applicant]
US 20210407142A1 · Hur · 2021 [cited by examiner]
US 20220028120A1 · Sugio · 2022 [cited by examiner]
US 20220108489A1 · Sugio · 2022 [cited by examiner]
US 20220207782A1 · Iguchi · 2022 [cited by examiner]
US 20220224941A1 · Sugio · 2022 [cited by examiner]
US 20220264085A1 · Galpin et al. · 2022 [cited by applicant]
US 20230046917A1 · Flynn · 2023 [cited by examiner]
US 20230100085A1 · Sugio · 2023 [cited by examiner]
US 20230196625A1 · Li · 2023 [cited by examiner]
US 20230232004A1 · Yuan · 2023 [cited by examiner]
US 20230412837A1 · Oh · 2023 [cited by examiner]
US 20240015325A1 · Zhu · 2024 [cited by examiner]
US 20240233195A1 · Wang · 2024 [cited by examiner]
CA 3126760A1 · 2020 [cited by applicant]
CN 108322742A · 2018 [cited by applicant]
CN 109889840A · 2019 [cited by applicant]
CN 110708560A · 2020 [cited by applicant]
CN 111095929A · 2020 [cited by applicant]
CN 111247802A · 2020 [cited by applicant]
CN 111327897A · 2020 [cited by applicant]
CN 111327906A · 2020 [cited by applicant]
CN 111953998A · 2020 [cited by applicant]
JP 2018078503A · 2018 [cited by applicant]
WO 2019235366A1 · 2019 [cited by applicant]
WO 2019240215A1 · 2019 [cited by applicant]
WO 2019240284A1 · 2019 [cited by applicant]
WO 2020071414A1 · 2020 [cited by applicant]
WO 2020162495A1 · 2020 [cited by applicant]
WO 2020186060A1 · 2020 [cited by applicant]
WO 2020189709A1 · 2020 [cited by applicant]
WO 2020189976A1 · 2020 [cited by applicant]
WO 2020190093A1 · 2020 [cited by applicant]
Khaled Mammou et al: “Lifting Scheme for Lossy Attribute Encoding in TMCI”, 122. MPEG Meeting; Apr. 16, 2018-Apr. 20, 2018; San Diego; (Motion Picture Expert Group or ISO/IEC JTC1/SC29/WG11), No. m42640, Apr. 11, 2018 (… [cited by applicant]
Bappaditya Ray (Qualcomm) et al: “[G-PCC][ new] Attribute related high level syntax-fixes and improvements”, 130. MPEG Meeting; Apr. 20, 2020-Apr. 24, 2020; Alpbach; (Motion Picture Expert Group or ISO/IEC JTC1/SC29/WG1… [cited by applicant]
Dean Han (Panasonic) et al: “[G-PCC] Delta QP for Layer of Lifting/Predicting Transform and RAHT”, 126. MPEG Meeting; Mar. 25, 2019-Mar. 29, 2019; Geneva; (Motion Picture Expert Group or ISO/IEC JTC1/SC29/WG11), No. m47… [cited by applicant]
Supplementary European Search Report in the European application No. 20966332.7, mailed on Sep. 20, 2023, 13 pages. [cited by applicant]
International Search Report in the international application No. PCT/CN2020/117941, mailed on Jun. 23, 2021. [cited by applicant]
Written Opinion of the International Search Authority in the international application No. PCT/CN2020/117941, mailed on Jun. 23, 2021. [cited by applicant]
International Search Report in the international application No. PCT/CN2021/087064, mailed on Jul. 2, 2021. [cited by applicant]
Written Opinion of the International Search Authority in the international application No. PCT/CN2021/087064, mailed on Jul. 2, 2021. [cited by applicant]
International Search Report in the international application No. PCT/CN2020/138421, mailed on Sep. 7, 2021. [cited by applicant]
Written Opinion of the International Search Authority in the international application No. PCT/CN2020/138421, mailed on Sep. 7, 2021. [cited by applicant]
International Search Report in the international application No. PCT/CN2020/138423, mailed on Sep. 13, 2021. [cited by applicant]
Written Opinion of the International Search Authority in the international application No. PCT/CN2020/138423, mailed on Sep. 13, 2021. [cited by applicant]
Sehoon Yea et al: “Lossless Scalable Lifting for Attribute Coding”, 127. MPEG Meeting; Jul. 8, 2019-Jul. 12, 2019; Gothenburg; (Motion Picture Expert Groue or ISO/IEC JTC1/SC29/WG11), No. m49603, Jul. 9, 2019 (Jul. 9, 2… [cited by applicant]
Khaled Mammou et al:“G-PCC codec description v2”, 125. MPEG Meeting; Jan. 14, 2019-Jan. 18, 2019; Marrakech; (Motion Picture Expert Group or ISO/IEC JTC1/sc29/wG11), No. N18189, Feb. 22, 2019 (Feb. 22, 2019), XP03021273… [cited by applicant]
Anonymous:“G-PCC codec description”,International Organization for Ftandardization Organisation Internationale De Normalisation ISO/IEC JTC 1/SC 29/WG 7 MPEG 3D Graphics Coding,Oct. 1, 2020 (Oct. 1, 2020), XP055964154, … [cited by applicant]
Liu Hao et al: “A Comprehensive Study and Comparison of Core Technologies for MPEG 3-D Point Cloud Compression” IEEE Transactions on Broadcasting, IEEE Service Center, Piscatanay, NJ, US, vol. 66, No. 3, Sep. 1, 2020 (S… [cited by applicant]
Supplementary European Search Report in the European application No. 21870758.6, mailed on Feb. 16, 2024, 13 pages. [cited by applicant]
Non-Final Office Action of the U.S. Appl. No. 18/125,276, issued on Jun. 25, 2024, 50 pages. [cited by applicant]
First Office Action of the Japanese application No. 2023-538020, issued on Nov. 26, 2024, 8 pages with English translation. [cited by applicant]
First Office Action of the Korean application No. 10-2023-7024952, issued on Nov. 28, 2024, 9 pages with English translation. [cited by applicant]
Cited By (1)
US 12,518,430