IP Library › Granted Patent US 10,783,698
Granted Patent B2
US 10,783,698 · App. 16/050,802 · Granted Sep 22, 2020

Point cloud operations

Inventors: Roland Mishaev (Kfar-Saba, IL); Tzach Ashkenazi (Petach Tikva, IL); Maria Bortman (Ashkelon, IL)
Assignee: INTEL CORPORATION
G06T15/08G06T5/002G06T7/30G06T2207/10028
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 10,783,698
App. No.
16/050,802
Granted
Sep 22, 2020
Kind
B2
Abstract

Embodiments described herein provide an apparatus comprising a processor to separate a three-dimensional (3D) scene in a point cloud data set comprising a plurality of voxels into a 3D grid of cells, each cell in the 3D grid of cells comprising a plurality of faces, execute a 3D clustering algorithm to create a plurality of 3D clusters, define a transparency level for each face of each cell in the plurality of cells, detect a surface layer of cells for the plurality of clusters in the 3D scene, and delete, from the plurality of clusters, cells which are not in the surface layer of cells. Other embodiments may be described and claimed.

Claims (35)

1. A method, comprising:

separating a three-dimensional (3D) scene in a point cloud data set comprising a plurality of voxels into a 3D grid of cells, each cell in the 3D grid of cells comprising a plurality of faces;

executing a 3D K-means clustering algorithm to sort the point cloud data set into a plurality of 3D clusters, wherein each cluster in the plurality of clusters is identified by a centroid and a collection of feature values including a cell density value;

determine a mean density parameter for a plurality of non-empty cells in the 3D grid of cells;

defining a transparency level for each face of each cell in the plurality of non-empty cells based at least in part on cell density value in relation to the mean density parameter;

detecting a surface layer of cells for the plurality of clusters in the 3D scene; and deleting, from the plurality of clusters, one of more cells which are not in the surface layer of cells.

2. The method of claim 1 , further comprising: deleting one or more noisy voxels in the 3D scene.

3. The method of claim 1 , further comprising: calculating a plurality of normal vectors for the respective plurality of voxels in the surface layer of cells for the plurality of clusters in the 3D scene.

4. The method of claim 1 , further comprising: structuring a data hierarchy for the 3D scene, the data hierarchy comprising: a general header comprising information about the point cloud data set; a plurality of cluster headers logically linked to the general header, each cluster header in the plurality of cluster headers comprising information which describes a plurality of cells in the cluster; a plurality of cell headers for the plurality of clusters, each cell header comprising information which describes a number of voxels in the cell and coordinate data for the cell, the plurality of cell headers logically linked to the plurality of cluster headers.

5. The method of claim 4 , further comprising: applying a differential encoding algorithm to the voxel data within a cell to generate differential encoding data for at least a portion of the voxel data in the cell.

6. The method of claim 5 , further comprising: defining a plurality of data precision levels; and encoding the differential encoding data at a selected precision level within the plurality of precision levels.

7. A non-transitory machine readable medium storing instructions which, when executed by one or more processors, cause the one or more processors to perform operations comprising:

separating a three-dimensional (3D) scene in a point cloud data set comprising a plurality of voxels into a 3D grid of cells, each cell in the 3D grid of cells comprising a plurality of faces;

executing a 3D K-means clustering algorithm to sort the point cloud data set into a plurality of 3D clusters, wherein each cluster in the plurality of clusters is identified by a centroid and a collection of feature values including a cell density value;

determine a mean density parameter for a plurality of non-empty cells in the 3D grid of cells;

defining a transparency level for each face of each cell in the plurality of non-empty cells based at least in part on cell density value in relation to the mean density parameter;

detecting a surface layer of cells for the plurality of clusters in the 3D scene; and deleting, from the plurality of clusters, one of more cells which are not in the surface layer of cells.

8. The non-transitory machine readable medium of claim 7 , the operations additionally comprising: deleting one or more noisy voxels in the 3D scene.

9. The non-transitory machine readable medium of claim 7 , the operations additionally comprising: calculating a plurality of normal vectors for the respective plurality of voxels in the surface layer of cells for the plurality of clusters in the 3D scene.

10. The non-transitory machine readable medium of claim 7 , the operations additionally comprising: structuring a data hierarchy for the 3D scene, the data hierarchy comprising: a general header comprising information about the point cloud data set; a plurality of cluster headers logically linked to the general header, each cluster header in the plurality of cluster headers comprising information which describes a plurality of cells in the cluster; a plurality of cell headers for the plurality of clusters, each cell header comprising information which describes a number of voxels in the cell and coordinate data for the cell, the plurality of cell headers logically linked to the plurality of cluster headers.

11. The non-transitory machine readable medium of claim 10 , the operations additionally comprising: applying a differential encoding algorithm to the voxel data within a cell to generate differential encoding data for at least a portion of the voxel data in the cell.

12. The non-transitory machine readable medium of claim 11 , the operations additionally comprising: defining a plurality of data precision levels; and encoding the differential encoding data at a selected precision level within the plurality of precision levels.

13. An apparatus, comprising:

a processor to separate a three-dimensional (3D) scene in a point cloud data set comprising a plurality of voxels into a 3D grid of cells, each cell in the 3D grid of cells comprising a plurality of faces;

executing a 3D K-means clustering algorithm to sort the point cloud data set into a plurality of 3D clusters, wherein each cluster in the plurality of clusters is identified by a centroid and a collection of feature values including a cell density value;

determine a mean density parameter for a plurality of non-empty cells in the 3D grid of cells;

defining a transparency level for each face of each cell in the plurality of non-empty cells based at least in part on cell density value in relation to the mean density parameter;

detect a surface layer of cells for the plurality of clusters in the 3D scene;

and delete, from the plurality of clusters, one or more cells which are not in the surface layer of cells; and

a memory communicatively coupled to the processor.

14. The apparatus of claim 13 , the processor to delete one or more noisy voxels in the 3D scene.

15. The apparatus of claim 13 , the processor to calculate a plurality of normal vectors for the respective plurality of voxels in the surface layer of cells for the plurality of clusters in the 3D scene.

16. The apparatus of claim 15 , the processor to structure a data hierarchy for the 3D scene, the data hierarchy comprising: a general header comprising information about the point cloud data set; a plurality of cluster headers logically linked to the general header, each cluster header in the plurality of cluster headers comprising information which describes a plurality of cells in the cluster; a plurality of cell headers for the plurality of clusters, each cell header comprising information which describes a number of voxels in the cell and coordinate data for the cell, the plurality of cell headers logically linked to the plurality of cluster headers.

17. The apparatus of claim 16 , the processor to apply a differential encoding algorithm to the voxel data within a cell to generate differential encoding data for at least a portion of the voxel data in the cell.

18. The apparatus of claim 17 , the processor to define a plurality of data precision levels; and encoding the differential encoding data at a selected precision level within the plurality of precision levels.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 30, 2018
From: ROLAND, MISHAEV; ASHKENAZI, TZACH; BORTMAN, MARIA
To: INTEL CORPORATION
Reel/Frame 046757/0671 →
Continuity (1)
Related Publication 20200043220A1 · Feb 6, 2020
Cited By (6)
US 12,219,115 US 12,219,158 US 12,330,057 US 12,425,554 US 12,555,298 US 12,739,410