IP Library › Granted Patent US 12,159,437
Granted Patent B2
US 12,159,437 · App. 17/810,509 · Granted Dec 3, 2024

Partitioning method, encoder, decoder and computer storage medium

Inventors: Fuzheng Yang (Guangdong, CN); Zexing Sun (Guangdong, CN); Lihui Yang (Guangdong, CN); Shuai Wan (Guangdong, CN)
Assignee: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP., LTD.
G06T9/001G06F5/01G06F7/24
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,159,437
App. No.
17/810,509
Granted
Dec 3, 2024
Kind
B2
Abstract

Disclosed are a partitioning method, an encoder, a decoder and a computer storage medium. The method includes: determining location information of a point of a point cloud to be partitioned; when i is less than or equal to M−1, determining right-shift number N i of ith LOD layer in the point cloud, M representing a preset maximum quantity of layers for LOD partitioning; for the ith LOD layer, shifting location information of the point rightwards by N i -digit, performing storing in a preset storage area based on right-shifted location information; determining location information of a parent point corresponding to a current point in the ith LOD layer; according to determined location information of the parent point, searching the preset storage area for a neighbor point of the parent point; partitioning the current point into an (i+1)th LOD layer, or the neighbor point into the ith LOD layer.

Claims (70)

1. A partitioning method, applied to an encoder, the method comprising:

determining, according to a point cloud to be partitioned, location information of a point of the point cloud to be partitioned;

when i is less than or equal to M−1, determining a right shift number N i corresponding to an ith Level of Detail (LOD) layer in the point cloud to be partitioned; wherein i is an integer greater than or equal to 0, N i is an integer greater than 0, and M represents a preset maximum quantity of layers for LOD partitioning;

for the ith LOD layer, performing right shift of the location information of the point of the point cloud to be partitioned by N i binary digits, and performing storing in a preset storage area based on the right-shifted location information;

determining location information of a parent point corresponding to a current point in the ith LOD layer;

searching, according to the determined location information of the parent point, the preset storage area for a neighbor point corresponding to the parent point;

partitioning the current point into an (i+1)th LOD layer, or partitioning the neighbor point into the ith LOD layer.

2. The method of claim 1 , further comprising:

sorting, according to a preset sorting strategy, location information of points of the point cloud to be partitioned, and determining the sorted location information as location information of the points of the point cloud to be partitioned.

3. The method of claim 2 , further comprising:

determining, according to the sorted location information, maximum location information and minimum location information;

calculating a difference value between the maximum location information and the minimum location information;

performing right shift processing on the difference value, and when the right-shifted difference value meets a preset range, acquiring a right shift number of the difference value; and

determining the right shift number as the initial right shift number of the point cloud to be partitioned.

4. The method of claim 1 , wherein when i is less than or equal to M−1, the determining the right shift number N i corresponding to the ith LOD layer in the point cloud to be partitioned comprises:

determining the right shift number N i corresponding to the ith LOD layer in the point cloud to be partitioned by using a first preset calculation model.

5. The method of claim 1 , wherein the determining the location information of the parent point corresponding to the current point in the ith LOD layer comprises:

performing right shift processing on location information of the current point in the ith LOD layer based on the right shift number N i corresponding to the ith LOD layer; and

determining the right-shifted location information as the location information of the parent point corresponding to the current point in the ith LOD layer.

6. The method of claim 1 , wherein the searching, according to the determined location information of the parent point, the preset storage area for the neighbor point corresponding to the parent point comprises:

determining, according to the determined location information of the parent point, location information of the neighbor point corresponding to the parent point; and

searching, according to the location information of the neighbor point, the preset storage area for the neighbor point corresponding to the location information of the neighbor point.

7. The method of claim 6 , wherein the determining, according to the determined location information of the parent point, the location information of the neighbor point corresponding to the parent point comprises:

calculating, according to the determined location information of the parent point, location information of all neighbor points coplanar, collinear and co-point with the parent point, to obtain location information of a first quantity of neighbor points;

respectively comparing the location information of the first quantity of neighbor points with the location information of the current point;

discarding location information of a neighbor point when the location information of the neighbor point is smaller than the location information of the current point;

reserving location information of a neighbor point when the location information of the neighbor point is greater than or equal to the location information of the current point, to obtain location information of a second quantity of neighbor points; wherein the second quantity is less than or equal to the first quantity; and

determining the location information of the second quantity of neighbor points as location information of neighbor points corresponding to the parent point.

8. The method of claim 1 , further comprising:

when i is greater than M−1, determining an 0th LOD layer to an (M−1)th LOD layer as corresponding partitioned LOD layers of the point cloud to be partitioned.

9. A partitioning method, applied to a decoder, the method comprising:

determining, according to a point cloud to be partitioned, location information of a point of the point cloud to be partitioned;

when i is less than or equal to M−1, determining a right shift number N i corresponding to an ith Level of Detail (LOD) layer in the point cloud to be partitioned; wherein i is an integer greater than or equal to 0, N i is an integer greater than 0, and M represents a preset maximum quantity of layers for LOD partitioning;

for the ith LOD layer, performing right shift of the location information of the point of the point cloud to be partitioned by N i binary digits, and performing storing in a preset storage area based on the right-shifted location information;

determining location information of a parent point corresponding to a current point in the ith LOD layer;

searching, according to the determined location information of the parent point, the preset storage area for a neighbor point corresponding to the parent point;

partitioning the current point into an (i+1)th LOD layer, or partitioning the neighbor point into the ith LOD layer.

10. The method of claim 9 , further comprising:

sorting, according to a preset sorting strategy, location information of points of the point cloud to be partitioned, and determining the sorted location information as location information of the points of the point cloud to be partitioned.

11. The method of claim 10 , further comprising:

determining, according to the sorted location information, maximum location information and minimum location information;

calculating a difference value between the maximum location information and the minimum location information;

performing right shift processing on the difference value, and when the right-shifted difference value meets a preset range, acquiring a right shift number of the difference value; and

determining the right shift number as the initial right shift number of the point cloud to be partitioned.

12. The method of claim 9 , wherein when i is less than or equal to M−1, the determining the right shift number N i corresponding to the ith LOD layer in the point cloud to be partitioned comprises:

determining the right shift number N i corresponding to the ith LOD layer in the point cloud to be partitioned by using a first preset calculation model.

13. The method of claim 9 , wherein the determining the location information of the parent point corresponding to the current point in the ith LOD layer comprises:

performing right shift processing on location information of the current point in the ith LOD layer based on the right shift number N i corresponding to the ith LOD layer; and

determining the right-shifted location information as the location information of the parent point corresponding to the current node in the ith LOD layer.

14. The method of claim 9 , wherein the searching, according to the determined location information of the parent point, the preset storage area for the neighbor point corresponding to the parent point comprises:

determining, according to the determined location information of the parent point, location information of the neighbor point corresponding to the parent point; and

searching, according to the location information of the neighbor point, the preset storage area for the neighbor point corresponding to the location information of the neighbor point.

15. The method of claim 14 , wherein the determining, according to the determined location information of the parent point, the location information of the neighbor point corresponding to the parent point comprises:

calculating, according to the determined location information of the parent point, location information of all neighbor points coplanar, collinear and co-point with the parent point, to obtain location information of a first quantity of neighbor points;

respectively comparing the location information of the first quantity of neighbor points with the location information of the current point;

discarding location information of a neighbor point when the location information of the neighbor point is smaller than the location information of the current point;

reserving location information of a neighbor point when the location information of the neighbor point is greater than or equal to the location information of the current point, to obtain location information of a second quantity of neighbor points; wherein the second quantity is less than or equal to the first quantity; and

determining the location information of the second quantity of neighbor points as location information of neighbor points corresponding to the parent point.

16. The method of claim 9 , further comprising:

when i is greater than M−1, determining an 0th LOD layer to an (M−1)th LOD layer as corresponding partitioned LOD layers of the point cloud to be partitioned.

17. An encoder, comprising a processor, wherein the processor is configured to perform the following acts:

determining, according to a point cloud to be partitioned, location information of a point of the point cloud to be partitioned;

when i is less than or equal to M−1, determining a right shift number N i corresponding to an ith Level of Detail (LOD) layer in the point cloud to be partitioned; wherein i is an integer greater than or equal to 0, N i is an integer greater than 0, and M represents a preset maximum quantity of layers for LOD partitioning;

for the ith LOD layer, performing right shift of the location information of the point of the point cloud to be partitioned by N i binary digits, and performing storing in a preset storage area based on the right-shifted location information;

determining location information of a parent point corresponding to a current point in the ith LOD layer;

searching, according to the determined location information of the parent point, the preset storage area for a neighbor point corresponding to the parent point;

partitioning the current point into an (i+1)th LOD layer, or partitioning the neighbor point into the ith LOD layer.

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

the second memory is configured to store a computer program runnable on the second processor; and

the second processor is configured to perform the method of claim 9 when running the computer program.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 1, 2022
From: YANG, FUZHENG; SUN, ZEXING; YANG, LIHUI; WAN, SHUAI
To: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP., LTD.
Reel/Frame 060425/0391 →
Continuity (2)
Continuation PCTCN2020070554 · Jan 6, 2020
Related Publication 20220343550A1 · Oct 27, 2022
Cited By (2)
US 12,316,844 US 12,750,535