IP Library Granted Patent US 12,307,728
Granted Patent B2
US 12,307,728 · App. 17/771,246 · Granted May 20, 2025

Method and system for azimuthal angular prior and tree representation for cloud compression

Inventors: Jonathan Taquet (Talensac, FR); Sébastien Lasserre (Thorigné-fouillard, FR)
Assignee: BlackBerry Limited
G06T9/40
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,307,728
App. No.
17/771,246
Filed
Apr 22, 2022
Granted
May 20, 2025
Kind
B2
Art Unit
2667
USPC
382/238
Abstract

A method of encoding or decoding a point cloud to representing a three-dimensional location of an object, the point cloud being located within a volumetric space, the method including determining at least one closest, relative to azimuthal distance, encoded node to a current node; determining an azimuthal prediction angle for each of the at least one closest encoded node; finding an averaged azimuthal prediction angle from the determined azimuthal prediction angle for each of the at least one closest encoded node; selecting an angular azimuthal context based on the averaged azimuthal predication angle; encoding information representative of the current node based on the azimuthal context to generate the bitstream of compressed point cloud data or decoding information representative of the current node based on the azimuthal context to generate the point cloud data.

Claims (121)

1. A method of decoding a bitstream of compressed point cloud data representing a three-dimensional location of an object, for generating a point cloud data, the point cloud being located within a volumetric space and represented by a tree, the method comprising:

determining at least one closest, relative to azimuthal distance, coded node to a current node of the tree, wherein the determining excludes nodes that are larger in size than the current node and/or excludes nodes that are greater than a threshold azimuthal distance from the current node;

determining an azimuthal prediction angle for the at least one closest coded node;

selecting an angular azimuthal context based on the determined azimuthal prediction angle; and

decoding, from the bitstream, information representative of the current node based on the angular azimuthal context to generate the point cloud data.

2. The method of claim 1 , wherein the at least one closest coded node comprises a plurality of closest coded nodes and the determined azimuthal prediction angle is an averaged azimuthal prediction angle determined based on:

φ

pred

=

already

coded

nodes

φ

al

e

a

l

/

already

coded

nodes

1

e

a

l

(

13

)

where φ pred is the averaged azimuthal prediction angle, φ al is a respective azimuthal prediction angle of one of the closest coded nodes, and e al is a respective error in one of the closest coded nodes.

3. The method of claim 1 , wherein the decoding is in a planar mode, and wherein the method further comprises determining a left azimuthal angle and a right azimuthal angle for the current node, wherein the selecting the angular azimuthal context further comprises at least one of the following:

assigning a first bit based on whether the determined azimuthal prediction angle minus the left azimuthal angle has the same sign as the determined azimuthal prediction angle minus the right azimuthal angle;

assigning a second bit based on which of the determined azimuthal prediction angle minus the left azimuthal angle and the determined azimuthal prediction angle minus the right azimuthal angle has a largest absolute magnitude; and

providing a quantized context index based on a magnitude difference between the determined azimuthal prediction angle minus the left azimuthal angle and the determined azimuthal prediction angle minus the right azimuthal angle, times an inverse of a radius to the current node.

4. The method of claim 3 , wherein the method further comprises selecting an x plane position and/or a y plane position for azimuthal prediction based on a location of the current node relative to the x axis or the y axis.

5. The method of claim 1 , wherein the decoding is in an inferred direct coding mode (“IDCM”), and wherein the method further comprises:

initializing a coordinate interval;

recursively splitting the interval by:

determining a left azimuthal angle and a right azimuthal angle for the interval;

performing the selecting the angular azimuthal context by further using the left azimuthal angle and the right azimuthal angle with the determined azimuthal prediction angle;

performing the decoding of information representative of the coordinate of a point belonging the current node; and

updating, after the decoding, the coordinate interval.

6. The method of claim 5 , wherein the determining the left azimuthal angle and the right azimuthal angle are based on two points located at ¼ and ¾ of the Interval.

7. The method of claim 5 , wherein the determining the left azimuthal angle and a right azimuthal angle uses a first order approximation from previous values of the left azimuthal angle and a right azimuthal angle and/or the determined azimuthal prediction angle.

8. The method of claim 1 , wherein the decoding uses a predicted-point tree, and wherein the method further comprises:

determining a prediction of a point associated with the current node prior determining the determined azimuthal prediction angle;

initializing a coordinate interval for a coordinate from the prediction of the point and a size of a residual;

for each bit in the residual:

determining a left azimuthal angle and a right azimuthal angle for the interval;

performing the selecting the angular azimuthal context by further using the left azimuthal angle and the right azimuthal angle with the determined azimuthal prediction angle;

performing the decoding for the highest order remaining bit for the coordinate; and

updating, after the decoding, the coordinate interval.

9. The method of claim 5 , further comprising updating the determined azimuthal prediction angle after updating the coordinate interval.

10. A decoder for decoding a bitstream of compressed point cloud data to produce a reconstructed point cloud representing a three-dimensional location of a physical object, the point cloud data being located within a volumetric space, the decoder comprising:

a processor;

a memory; and

a decoding application containing instructions executable by the processor that, when executed, cause the processor to:

determine at least one closest, relative to azimuthal distance, coded node to a current node of the tree, wherein the determining excludes nodes that are larger in size than the current node and/or excludes nodes that are greater than a threshold azimuthal distance from the current node;

determine an azimuthal prediction angle for the at least one closest coded node; select an angular azimuthal context based on the determined azimuthal prediction angle; and

decode, from the bitstream, information representative of the current node based on the angular azimuthal context to generate the point cloud data.

11. A non-transitory processor-readable medium storing processor-executable instructions that, when executed by a processor, cause the processor to:

determine at least one closest, relative to azimuthal distance, coded node to a current node of the tree;

determine an azimuthal prediction angle for the at least one closest coded node, wherein the determining excludes nodes that are larger in size than the current node and/or excludes nodes that are greater than a threshold azimuthal distance from the current node;

select an angular azimuthal context based on the determined azimuthal prediction angle; and

decode, from the bitstream, information representative of the current node based on the angular azimuthal context to generate the point cloud data.

12. The decoder of claim 10 , wherein the at least one closest coded node comprises a plurality of closest coded nodes and the determined azimuthal prediction angle is an averaged azimuthal prediction angle determined based on:

φ

pred

=

already

coded

nodes

φ

al

e

a

l

/

already

coded

nodes

1

e

a

l

(

13

)

where φ pred is the averaged azimuthal prediction angle, φ al is a respective azimuthal prediction angle of one of the closest coded nodes, and e al is a respective error in one of the closest coded nodes.

13. The decoder of claim 10 , wherein the decoding is in a planar mode, and wherein the processor is further caused to determine a left azimuthal angle and a right azimuthal angle for the current node, wherein the processor is caused to select the angular azimuthal context by at least one of the following:

assigning a first bit based on whether the determined azimuthal prediction angle minus the left azimuthal angle has the same sign as the determined azimuthal prediction angle minus the right azimuthal angle;

assigning a second bit based on which of the determined azimuthal prediction angle minus the left azimuthal angle and the determined azimuthal prediction angle minus the right azimuthal angle has a largest absolute magnitude; and

providing a quantized context index based on a magnitude difference between the determined azimuthal prediction angle minus the left azimuthal angle and the determined azimuthal prediction angle minus the right azimuthal angle, times an inverse of a radius to the current node.

14. The decoder of claim 13 , wherein the processor is further caused to select an x plane position and/or a y plane position for azimuthal prediction based on a location of the current node relative to the x axis or the y axis.

15. The decoder of claim 10 , wherein the decoding is in an inferred direct coding mode (“IDCM”), and wherein the processor is further caused to:

initialize a coordinate interval;

recursively split the interval by:

determining a left azimuthal angle and a right azimuthal angle for the interval;

performing the selecting the angular azimuthal context by further using the left azimuthal angle and the right azimuthal angle with the determined azimuthal prediction angle;

performing the decoding of information representative of the coordinate of a point belonging the current node; and

updating, after the decoding, the coordinate interval.

16. The decoder of claim 15 , wherein the determining the left azimuthal angle and the right azimuthal angle are based on two points located at ¼ and ¾ of the interval.

17. The decoder of claim 15 , wherein the determining the left azimuthal angle and a right azimuthal angle uses a first order approximation from previous values of the left azimuthal angle and a right azimuthal angle and/or the determined azimuthal prediction angle.

18. The decoder of claim 10 , wherein the decoding uses a predicted-point tree, and wherein the processor is further caused to:

determine a prediction of a point associated with the current node prior determining the determined azimuthal prediction angle;

initialize a coordinate interval for a coordinate from the prediction of the point and a size of a residual;

for each bit in the residual:

determine a left azimuthal angle and a right azimuthal angle for the interval;

perform the selecting the angular azimuthal context by further using the left azimuthal angle and the right azimuthal angle with the determined azimuthal prediction angle;

perform the decoding for the highest order remaining bit for the coordinate; and update, after the decoding, the coordinate interval.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 22, 2022
From: LASSERRE, SÉBASTIEN; TAQUET, JONATHAN
To: BLACKBERRY FRANCE S.A.S.
Reel/Frame 059680/0842 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 22, 2022
From: BLACKBERRY FRANCE S.A.S.
To: BLACKBERRY LIMITED
Reel/Frame 059680/0897 →
Continuity (1)
Related Publication 20220398784A1 · Dec 15, 2022
References Cited (42)
US 11871037B2 · Ramasubramonian et al. · 2024 [cited by applicant]
US 11895307B2 · Mammou · 2024 [cited by examiner]
US 11941855B2 · Ray et al. · 2024 [cited by applicant]
US 20110282581A1 · Zeng · 2011 [cited by applicant]
US 20160086353A1 · Lukac et al. · 2016 [cited by applicant]
US 20170214943A1 · Cohen et al. · 2017 [cited by applicant]
US 20170347100A1 · Chou et al. · 2017 [cited by applicant]
US 20190156520A1 · Mammou et al. · 2019 [cited by applicant]
US 20210327095A1 · Van Der Auwera et al. · 2021 [cited by applicant]
US 20210327098A1 · Ray et al. · 2021 [cited by applicant]
US 20210327099A1 · Van Der Auwera et al. · 2021 [cited by applicant]
US 20210407143A1 · Van Der Auwera et al. · 2021 [cited by applicant]
US 20210409778A1 · Ramasubramonian et al. · 2021 [cited by applicant]
US 20220337872A1 · Park et al. · 2022 [cited by applicant]
US 20220366610A1 · Hur et al. · 2022 [cited by applicant]
CN 101032172A · 2007 [cited by applicant]
CN 106846425A · 2017 [cited by applicant]
CN 108769679A · 2018 [cited by applicant]
S. Schwarz et al., “Emerging MPEG Standards for Point Cloud Compression,” in IEEE Journal on Emerging and Selected Topics in Circuits and Systems, vol. 9, No. 1, pp. 133-148, Mar. 2019, doi: 10.1109/JETCAS.2018.2885981.… [cited by examiner]
China National Intellectual Property Administration (CNIPA): Office Action for Application No. 201980101940.0, dated Sep. 5, 2024, 5 pages. [cited by applicant]
United States Patent and Trademark Office (USPTO) Notice of Allowance and Fee(s) Due for U.S. Appl. No. 17/771,354 mailed Jul. 26, 2024, 55 pages. [cited by applicant]
Korean Intellectual Property Office office action for Application No. 10-2022-7017138 dated Dec. 26, 2023, 3 pages (4 pages English translation). [cited by applicant]
Patent Cooperation Treaty, International Search Report for International application No. PCT/IB2019/001235 mailed Apr. 29, 2020. [cited by applicant]
Asserre (Blackberry) S et al: “[GPCC][CE 13.22 related] The azimuthal coding mode”, 129, MPEG Meeting; Jan. 2020, Brussels, XP030224661. [cited by applicant]
Lasserre (Blackberry) S et al: “[GPCC][CE 13.22 related] An improvement of the planar coding mode”, 128, MPEG Meeting; Oct. 7-11, 2019, Geneva, XP030221087. [cited by applicant]
Lasserre (Blackberry) S et al: “[GPCC][new input] Planar mode in octree based geometry coding”, 127, MPEG Meeting; Jul. 2019, Geneva, XP030222328. [cited by applicant]
United States Patent and Trademark Office (USPTO) Office Action for U.S. Appl. No. 17/765,015 mailed Jun. 12, 2024, 22 pages. [cited by applicant]
In-Wook Song et al., “Progressive compression of PointTexture images” Article in Proceedings of SPIE, Visual Communications and Image Processing 2004, Jan. 2004, 4 pages. [cited by applicant]
Miguel Branco Roque Nazare Ferreira, “Dynamic 3D Point Cloud Compression”, Master of Science Thesis from Tecnico Lisboa, Nov. 2017, 110 pages. [cited by applicant]
Sebestian Schwarz et al., “Emerging MPEG Standards for Point Cloud Compression” IEEE Journal on Emerging and Selected Topics in Circuits and Systems, Mar. 2019, vol. 9, No. 1, 16 pages. [cited by applicant]
Armin Hornung et al. “OctoMap: an efficient probabilistic 3D mapping framework based on octrees”, Autonomous Robots, 2013, Preprint, 17 pages. [cited by applicant]
Chenxi Tu et al. “Real-Time Streaming Point Cloud Compression for 3D LiDAR Sensor Using U-Net”, IEEE Access, received Jun. 25, 2019, accepted Aug. 2, 2019, date of publication Aug. 14, 2019, date of current version Aug.… [cited by applicant]
“G-PCC codec description v4” ISO/IEC JTC 1 S/C 29 W/G 11 coding of moving pictures and audio convenorship: UNI (Italy), Jul. 2019, 62 pages. [cited by applicant]
European Patent Office (EPO), Extended European Search Report (EESR), Application No. 19200890.2, Dated: Mar. 20, 2020, 11 pages. [cited by applicant]
Jae-Kyun Ahn et al., “Large Scale 3D Point Cloud Compression Using Adaptive Radial Distance Prediction in Hybrid Coordinate Domains” in IEEE Journal of Selected Topics in Signal Processing, Apr. 2015, vol. 9, No. 3, pp.… [cited by applicant]
Ismael Daribo et al., “Adaptive Arithmetic Coding For Point Cloud Compression”. 2012 3DTV-Conference: The True Vision-Capture, Transmission and Display of 3D Video (3DTV-CON), Zurich, Switzerland, 2012, pp. 1-4. [cited by applicant]
Stefan Gumhold et al., “Predictive point-cloud compression”, Jul. 31, 2005, 1077952576-1077952576, Jul. 2005, pp. 137-es, XP058302295. [cited by applicant]
Gustavo Sandri et al., “Point Cloud Compression Incorporating Region of Interest Coding”, 126 MPEG Meeting, Mar. 2019, 6 pages. [cited by applicant]
Sebastien Lasserre et al., An improvement of the planar coding mode (paper), ISO/IEC JTC1/SC29/WG11 MPEG2019/m50642, Oct. 2019, Geneva, CH, 4 pages. [cited by applicant]
Patent Cooperation Treaty, International Search Report for International Application No. PCT/IB2019/001268, mailed Jun. 8, 2020, 3 pages. [cited by applicant]
Korean Intellectual Property Office: Office Action for Application No. 10-2022-7014079, Dated: Oct. 21, 2024, 3 pages. [cited by applicant]
United States Patent and Trademark Office (USPTO): Notice of Allowance for U.S. Appl. No. 17/765,015, Dated: Sep. 29, 2024, 20 pages. [cited by applicant]
Cited By (1)
US 12,579,696