IP Library › Granted Patent US 11,734,884
Granted Patent B2
US 11,734,884 · App. 17/862,167 · Granted Aug 22, 2023

Point cloud filtering

Inventors: Christopher Frank Eckman (San Francisco, CA); Brady Michael Lowe (Pocatello, ID); Alexander Hall (Rexburg, ID)
Assignee: Lineage Logistics, LLC
G06T17/05G06F18/23G06T17/20G06V20/176G06V20/182G06V20/188
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 11,734,884
App. No.
17/862,167
Granted
Aug 22, 2023
Kind
B2
Abstract

This specification describes systems and methods for refining point cloud data. Methods can include receiving point cloud data for a physical space, iteratively selecting points along an x, y, and z dimension, clustering the selected points into 2D histograms, determining a slope value for each 2D histogram, and removing, based on the slope value exceeding a predetermined value, points from the point cloud data. Methods can also include iteratively voxelizing each 2D histogram into predetermined mesh sizes, summating points in each voxelized 2D histogram, removing, based on determining the summation is below a predetermined sum value, points from the point cloud data, keeping, based on determining that a number of points in each voxelized 2D histogram exceeds a threshold value, a center point, selecting, for each histogram, a point, identifying, nearest neighbors in the point cloud data, removing the identified nearest neighbors from the data, and returning remaining points.

Claims (65)

1. A method for refining point cloud data, the method comprising:

receiving, by a computing system, point cloud data for a physical space, the point cloud data including a plurality of points in three-dimensional (“3D”) space that approximate locations of physical surfaces within the physical space;

generating, by the computing system, two dimensional (“2D”) histograms based on the point cloud data;

iteratively voxelizing, by the computing system, the 2D histograms into predetermined mesh sizes;

filtering, by the computing system, each of the voxelized 2D histograms based on a summation of points in the voxelized 2D histogram;

identifying, by the computing system, a center point for each of the filtered 2D histograms;

selecting, by the computing system and for each of the filtered 2D histograms, a point from amongst the center points;

identifying, by the computing system and for the point, nearest neighbors in the point cloud data;

removing, by the computing system, the identified nearest neighbors from the point cloud data; and

returning, by the computing system, remaining points in the point cloud data.

2. The method of claim 1 , wherein generating, by the computing system, 2D histograms comprises:

iteratively selecting points from the plurality of points along an x, y, and z dimension;

clustering the selected points into the 2D histograms;

determining a slope value for each of the 2D histograms; and

returning the slope value for each of the 2D histograms.

3. The method of claim 1 , further comprising, for each of the 2D histograms:

determining whether the slope value exceeds a threshold slope value; and

removing, based on a determination that the slope value exceeds the threshold slope value, at least one point from the point cloud data.

4. The method of claim 1 , wherein filtering, by the computing system, each of the voxelized 2D histograms comprises, for each of the voxelized 2D histograms:

identifying a center point in the voxelized 2D histogram;

summating, based on the identified center point, points in the voxelized 2D histogram;

determining whether the summation of points is less than a threshold sum value; and

removing, based on the determining step, points from the point cloud data.

5. The method of claim 1 , wherein identifying, by the computing system, a center point for each of the filtered 2D histograms comprises, for each of the filtered 2D histograms:

determining a quantity of points in the filtered 2D histogram;

determining whether the quantity of points exceeds a threshold quantity; and

keeping, based on a determination that the quantity of points exceeds the threshold quantity, the center point for the filtered 2D histogram.

6. The method of claim 1 , wherein returning, by the computing system, remaining points in the point cloud data comprises generating a map based on the remaining points in the point cloud data.

7. The method of claim 6 , wherein the map is a blueprint of the physical space.

8. The method of claim 1 , further comprising determining, by the computing system, a size of the physical space based on the remaining points in the point cloud data.

9. The method of claim 1 , wherein the physical space is a storage facility and the method further comprises determining, by the computing system, a capacity of the storage facility based on the remaining points in the point cloud data.

10. The method of claim 1 , wherein the physical space is a storage facility and the method further comprises:

generating, by the computing system, a map of the storage facility based on the remaining points in the point cloud data; and

determining, by the computing system, a process flow of activity in the storage facility based on generated map of the storage facility.

11. The method of claim 10 , further comprising determining, by the computing system, expected movement of at least one of human workers and forklifts in the storage facility based on one or more of the physical surfaces identified in the map of the storage facility.

12. The method of claim 11 , further comprising, for each of the voxelized 2D histograms:

performing, by the computing system, a standard distribution on a density of points in the voxelized 2D histogram;

determining, by the computing system, whether the standard distribution exceeds a threshold density distribution value; and

removing, by the computing system and based on a determination that the standard distribution exceeds the threshold density distribution value, points from the voxelized 2D histogram.

13. The method of claim 12 , further comprising adding, by the computing system and based on a determination that the standard distribution is less than the threshold density distribution value, points to the voxelized 2D histogram.

14. The method of claim 1 , further comprising classifying, by the computing system, the physical structures in the physical space based on the returned remaining points in the point cloud data.

15. The method of claim 14 , wherein classifying, by the computing system, the physical structures in the physical space comprises applying a spherical filter to the remaining points in the point cloud data.

16. The method of claim 1 , further comprising:

aligning, by the computing system, the remaining points in the point cloud data along x, y, and z dimensions that correspond to an orientation of the physical space;

classifying, by the computing system, the remaining points as corresponding to one or more types of physical surfaces;

identifying, by the computing system, predetermined physical structures in the physical space based, at least in part, on the classifying step; and

generating, by the computing system, a map of the physical space based on the identified physical structures and corresponding contours of the identified physical structures within the orientation of the physical space.

17. The method of claim 1 , wherein the physical surfaces within the physical space include at least one of pallets, racks, shelves, walls, floor, ceiling, doors, light fixtures, vertical support poles, human workers, and forklifts.

18. The method of claim 1 , wherein the physical space includes at least one of a warehouse and a storage facility.

19. A computerized system for refining point cloud data, the system comprising:

one or more processors; and

one or more computer-readable devices including instructions that, when executed by the one or more processors, cause the computerized system to perform operations that include:

receiving point cloud data for a physical space, the point cloud data including a plurality of points in three-dimensional (“3D”) space that approximate locations of physical surfaces within the physical space;

generating two dimensional (“2D”) histograms based on the point cloud data;

iteratively voxelizing the 2D histograms into predetermined mesh sizes;

filtering each of the voxelized 2D histograms based on a summation of points in the voxelized 2D histogram;

identifying a center point for each of the filtered 2D histograms;

selecting, for each of the filtered 2D histograms, a point from amongst the center points;

identifying, for the point, nearest neighbors in the point cloud data;

removing the identified nearest neighbors from the point cloud data; and

returning remaining points in the point cloud data.

20. The computerized system of claim 19 , wherein the physical space is a storage facility and the operations further include:

classifying the remaining points as corresponding to one or more types of physical surfaces, the types of physical structures including at least one of pallets, racks, shelves, walls, floor, ceiling, doors, light fixtures, vertical support poles, human workers, and forklifts;

generating a map of the storage facility based at least in part on the classified physical surfaces; and

determining, based on the generated map of the storage facility, at least one of (i) a size of the storage facility, (ii) a capacity of the storage facility, and (iii) a process flow of activity in the storage facility.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2023
From: ECKMAN, CHRISTOPHER FRANK; LOWE, BRADY MICHAEL; HALL, ALEXANDER
To: LINEAGE LOGISTICS, LLC
Reel/Frame 062511/0913 →
Continuity (2)
Continuation 17230730 · Apr 14, 2021
Related Publication 20220351464A1 · Nov 3, 2022