IP Library Granted Patent US 12,283,074
Granted Patent B2
US 12,283,074 · App. 18/627,002 · Granted Apr 22, 2025

Planar and azimuthal mode in geometric point cloud compression

Inventors: Geert Van der Auwera (San Diego, CA); Bappaditya Ray (San Diego, CA); Adarsh Krishnan Ramasubramonian (Irvine, CA); Marta Karczewicz (San Diego, CA)
Assignee: QUALCOMM INCORPORATED
G06T9/001G01S17/89G06T17/20
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,283,074
App. No.
18/627,002
Granted
Apr 22, 2025
Kind
B2
Abstract

A device for encoding point cloud data, the device comprising: a memory to store the point cloud data; and one or more processors coupled to the memory and implemented in circuitry, the one or more processors configured to: determine a horizontal plane position of a node, wherein the horizontal plane position indicates a position of a single plane that is perpendicular to a first axis of a coordinate system, wherein the first axis is a horizontal axis; determine, from a plurality of contexts consisting of 8 contexts, a context for the horizontal plane position of the node; and perform arithmetic encoding on a syntax element indicating the horizontal plane position using the determined context.

Claims (52)

1. A device for encoding point cloud data, the device comprising:

a memory to store the point cloud data; and

one or more processors coupled to the memory and implemented in circuitry, the one or more processors configured to:

determine that occupied child nodes of a node form a single plane perpendicular to a first axis of a coordinate system, wherein the first axis is a horizontal axis and the occupied child nodes contain points represented by the point cloud data;

determine, from a plurality of contexts consisting of 8 contexts, a context for a horizontal plane position of the node, wherein the horizontal plane position indicates a position of the plane perpendicular to the first axis;

perform arithmetic encoding on a syntax element indicating the horizontal plane position using the determined context; and

based on the determination that the occupied child nodes of the node form the plane perpendicular to the first axis, not encoding of child nodes that are not in the plane perpendicular to the first axis.

2. The device of claim 1 , wherein the node is a first node, the determined context is a first context, the plurality of contexts is a first plurality of contexts, the plane perpendicular to the first axis is a first single plane, an angular planar coding mode and an azimuthal planar coding mode are disabled for a second node, and the one or more processors are further configured to:

determine a context index that is equal to an axis index of the first axis regardless of occupancy of a neighbor node or Manhattan distance between a position of the second node and a position of a most-recently node with a same axis position value for the first axis and regardless of whether tracking of closest nodes using a buffer is used in a process of coding a planar mode flag and plane position, wherein the axis position value for the first axis indicates 14 least significant bits of a first-axis coordinate of the second node; and

perform arithmetic encoding on a planar flag for the first axis using a context indicated by the context index, wherein the planar flag indicates that child nodes of the second node form a second single plane perpendicular to the first axis of the coordinate system, and the context indicated by the context index is in a second plurality of contexts different from the first plurality of contexts.

3. The device of claim 1 , wherein the one or more processors are further configured to generate the point cloud data.

4. The device of claim 3 , wherein the one or more processors are configured to, as part of generating the point cloud data, generate the point cloud data based on signals from a LIDAR apparatus.

5. The device of claim 1 , wherein the device is one of a mobile phone, tablet computer, a vehicle, or an extended reality device.

6. The device of claim 1 , wherein the device comprises an interface configured to transmit encoded point cloud data.

7. A device for decoding point cloud data, the device comprising:

a memory to store the point cloud data; and

one or more processors coupled to the memory and implemented in circuitry, the one or more processors configured to:

determine that occupied child nodes of a node form a single plane perpendicular to a first axis of a coordinate system, wherein the first axis is a horizontal axis and the occupied child nodes contain points represented by the point cloud data;

determine, from a plurality of contexts consisting of 8 contexts, a context for a horizontal plane position of the node, wherein the horizontal plane position indicates a position of the single plane that is perpendicular to the first axis of the coordinate system; and

perform arithmetic decoding on a syntax element indicating the horizontal plane position using the determined context; and

based on the determination that the occupied child nodes of the node form the plane perpendicular to the first axis, not decoding of child nodes that are not in the plane perpendicular.

8. The device of claim 7 , wherein the node is a first node, the determined context is a first context, the plurality of contexts is a first plurality of contexts, the plane perpendicular to the first axis is a first single plane, an angular planar coding mode and an azimuthal planar coding mode are disabled for a second node, and the one or more processors are further configured to:

determine a context index that is equal to an axis index of the first axis regardless of occupancy of a neighbor node or Manhattan distance between a position of the second node and a position of a most-recently node with a same axis position value for the first axis and regardless of whether tracking of closest nodes using a buffer is used in a process of coding a planar mode flag and plane position, the axis position value for the first axis indicates 14 least significant bits of a first-axis coordinate of the second node; and

perform arithmetic decoding on a planar flag for the first axis using a context indicated by the context index, wherein the planar flag indicates that child nodes of the second node form a second single plane perpendicular to the first axis of the coordinate system, and the context indicated by the context index is in a second plurality of contexts different from the first plurality of contexts.

9. The device of claim 7 , wherein the one or more processors are further configured to:

reconstruct the point cloud data; and

perform one or more of:

generate a map of an interior of a building based on the reconstructed point cloud data,

perform an autonomous navigation operation based on the reconstructed point cloud data, or

generate computer graphics based on the reconstructed point cloud data.

10. The device of claim 7 , wherein the one or more processors are configured to:

reconstruct the point cloud data;

determine a position of a virtual object based on the reconstructed point cloud data; and

generate an extended reality (XR) visualization in which the virtual object is at the determined position.

11. The device of claim 7 , wherein the device is one of a mobile phone, a tablet computer, a vehicle, or an extended reality device.

12. The device of claim 7 , further comprising a display to present imagery based on the point cloud data.

13. A method for encoding point cloud data, the method comprising:

determining that occupied child nodes of a node form a single plane perpendicular to a first axis of a coordinate system, wherein the first axis is a horizontal axis and the occupied child nodes contain points represented by the point cloud data;

determining, from a plurality of contexts consisting of 8 contexts, a context for a horizontal plane position of the node, wherein the horizontal plane position indicates a position of the plane perpendicular to the first axis;

performing arithmetic encoding on a syntax element indicating the horizontal plane position using the determined context; and

based on the determination that the occupied child nodes of the node form the plane perpendicular to the first axis, omitting not encoding of child nodes of the node that are not in the plane perpendicular to the first axis.

14. The method of claim 13 , wherein the node is a first node, the determined context is a first context, the plurality of contexts is a first plurality of contexts, the plane perpendicular to the first axis is a first single plane, an angular planar coding mode and an azimuthal planar coding mode are disabled for a second node, and the method further comprises:

determining a context index that is equal to an axis index of the first axis regardless of occupancy of a neighbor node or Manhattan distance between a position of the second node and a position of a most-recently node with a same axis position value for the first axis and regardless of whether tracking of closest nodes using a buffer is used in a process of coding a planar mode flag and plane position, wherein the axis position value for the first axis indicates 14 least significant bits of a first-axis coordinate of the second node; and

performing arithmetic encoding on a planar flag for the first axis using a context indicated by the context index, wherein the planar flag indicates that child nodes of the second node form a second single plane perpendicular to the first axis of the coordinate system, and the context indicated by the context index is in a second plurality of contexts different from the first plurality of contexts.

15. A method for decoding point cloud data, the method comprising:

determining that occupied child nodes of a node form a single plane perpendicular to a first axis of a coordinate system, wherein the first axis is a horizontal axis and the occupied child nodes contain points represented by the point cloud data;

determining, from a plurality of contexts consisting of 8 contexts, a context for a horizontal plane position of the node, wherein the horizontal plane position indicates a position of the single plane that is perpendicular to the first axis of the coordinate system;

performing arithmetic decoding on a syntax element indicating the horizontal plane position using the determined context; and

based on the determination that the occupied child nodes of the node form the plane perpendicular to the first axis, not decoding of child nodes of the node that are not in the plane perpendicular to the first axis.

16. The method of claim 15 , wherein the node is a first node, the determined context is a first context, the plurality of contexts is a first plurality of contexts, the plane perpendicular to the first axis is a first single plane, an angular planar coding mode and an azimuthal planar coding mode are disabled for a second node, and the method further comprises:

determining a context index that is equal to an axis index of the first axis regardless of occupancy of a neighbor node or Manhattan distance between a position of the second node and a position of a most-recently node with a same axis position value for the first axis and regardless of whether tracking of closest nodes using a buffer is used in a process of coding a planar mode flag and plane position, the axis position value for the first axis indicates 14 least significant bits of a first-axis coordinate of the second node; and

performing arithmetic decoding on a planar flag for the first axis using a context indicated by the context index, wherein the planar flag indicates that child nodes of the second node form a second single plane perpendicular to the first axis of the coordinate system, and the context indicated by the context index is in a second plurality of contexts different from the first plurality of contexts.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 4, 2024
From: VAN DER AUWERA, GEERT; RAY, BAPPADITYA; RAMASUBRAMONIAN, ADARSH KRISHNAN; KARCZEWICZ, MARTA
To: QUALCOMM INCORPORATED
Reel/Frame 067010/0545 →
Continuity (4)
Continuation 17350603 · Jun 17, 2021
Provisional Application 63046512 · Jun 30, 2020
Provisional Application 63042432 · Jun 22, 2020
Related Publication 20240303869A1 · Sep 12, 2024
References Cited (27)
US 10693492B1 · Lasserre et al. · 2020 [cited by applicant]
US 20110115812A1 · Minear et al. · 2011 [cited by applicant]
US 20190311499A1 · Mammou et al. · 2019 [cited by applicant]
US 20200288159A1 · Van der Auwera · 2020 [cited by examiner]
US 20200413080A1 · Lasserre et al. · 2020 [cited by applicant]
US 20210012539A1 · Zhang et al. · 2021 [cited by applicant]
US 20210103780A1 · Mammou et al. · 2021 [cited by applicant]
US 20210407143A1 · Van Der Auwera · 2021 [cited by applicant]
US 20220108492A1 · Van Der Auwera et al. · 2022 [cited by applicant]
US 20230048381A1 · Taquet et al. · 2023 [cited by applicant]
US 20230065156A1 · Yang et al. · 2023 [cited by applicant]
US 20230162402A1 · Zhang et al. · 2023 [cited by applicant]
US 20230316586A1 · Wan et al. · 2023 [cited by applicant]
3DG: “G-PCC Codec Description v6”, Coding of Moving Pictures and Audio, ISO/IEC JTC1/SC29/WG11, N19091, Jan. 2020, Brussels, BE, Mar. 27, 2020, 92 pages. [cited by applicant]
3DG: “G-PCC Future Enhancements”, International Organisation for Standardisation Organisation Internationale De Normalisation, ISO/IEC JTC 1/SC 29/WG 11 Coding of Moving Pictures and Audio, ISO/IEC JTC 1/SC 29/WG 11, N1… [cited by applicant]
Anonymous: “Euclidean vs Chebyshev vs Manhattan Distance”, May 22, 2012 (May 22, 2012), pp. 1-4, XP055873158, Retrieved from the Internet: URL: https://lyfat.wordpress.com/2012/05/22/euclidean-vs-chebyshev-vs-manhattan-… [cited by applicant]
Auwera G.V.D., et al., “[GPCC] [New] Planar and Azimuthal Coding Mode Simplifications”, 131. MPEG Meeting, Jun. 29, 2020-Jul. 3, 2020, Online, (Motion Picture Expert Group or ISO/IEC JTC1/SC29/WG11), No. m54694, Jul. 1,… [cited by applicant]
Auwera (Qualcomm) G., et al., “[G-PCC] [New proposal] Planar Mode Simplifications”, 132. MPEG Meeting, Oct. 12, 2020-Oct. 16, 2020, Online, (Motion Picture Expert Group or ISO/IEC JTC1/SC29/WG11), No. m55379, Oct. 13, 2… [cited by applicant]
European Search Report—EP23189340—Search Authority—Berlin—Nov. 28, 2023. [cited by applicant]
International Preliminary Report on Patentability—PCT/US2021/038008—The International Bureau of WIPO—Geneva, Switzerland—Jan. 5, 2023. [cited by applicant]
International Search Report and Written Opinion—PCT/US2021/038008—ISA/EPO—Oct. 4, 2021. [cited by applicant]
ITU-T H.265: “Series H: Audiovisual and Multimedia Systems Infrastructure of Audiovisual Services—Coding of Moving Video”, High Efficiency Video Coding, The International Telecommunication Union, Jun. 2019, 696 Pages. [cited by applicant]
Lasserre S., et al., “m48906_Planar Mode in Octree-Based Geometry Coding”, 127. MPEG Meeting, Jul. 8, 2019-Jul. 12, 2019, Gothenburg, (Motion Picture Expert Group or ISO/IEC JTC1/SC29/WG11) No. m48906, Jul. 3, 2019 (Jul… [cited by applicant]
Lasserre S., et al., “The New Azimuthal Coding Mode”, BlackBerry, [GPCC][CE13.22 related], 129. MPEG Meeting, Jan. 13, 2020-Jan. 17, 2020, Brussels, (Motion Picture Expert Group or ISO/IEC JTC1/SC29/WG11), No. m51596, J… [cited by applicant]
Sze V., et al., “Entropy Coding in HEVC” In: “High Efficiency Video Coding (HEVC)” Algorithms and Architectures—Chapter 8: Entropy Coding in HEVC, Springer International Publishing, Jan. 1, 2014, pp. 209-274, XP55263413… [cited by applicant]
Taquet (Blackberry) J., et al., “[G-PCC] [CE13.22 Related] Planar mode Buffer Optimization”, 129. MPEG Meeting, Jan. 13, 2020-Jan. 17, 2020, Brussels, (Motion Picture Expert Group or ISO/IEC JTC1/SC29/WG11), No. m52345,… [cited by applicant]
“Text of ISO/IEC 23090-9 DIS Geometry-Based Point Cloud Compression”, 129. MPEG Meeting, Jan. 13, 2020-Jan. 17, 2020, Brussels, (Motion Picture Expert Group or ISO/IEC JTC1/SC29/WG11), No. n19088, Apr. 20, 2020, XP03028… [cited by applicant]