IP Library Granted Patent US 12,450,872
Granted Patent B2
US 12,450,872 · App. 17/938,547 · Granted Oct 21, 2025

Machine learning techniques for ground classification

Inventors: Kevin Balkoski (San Mateo, CA); Edward Melcher (Toronto, CA); Eleanor Crane (Sunnyvale, CA); Matthieu Francois Perrinel (Berkeley, CA)
Assignee: CoStar Realty Information, Inc.
G06V10/764G01S17/89G06V10/267G06V10/40G06V10/774G06V20/17
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,450,872
App. No.
17/938,547
Granted
Oct 21, 2025
Kind
B2
Abstract

Example systems, methods, and non-transitory computer readable media are directed to obtaining a point cloud that represents an environment based at least in part on a plurality of points in three-dimensional space; determining corresponding classifications of points in the point cloud as ground or not-ground based at least in part on a plurality of ground classification algorithms; determining respective point cloud features associated with the points in the point cloud; determining respective cell features associated with a plurality of cells that segment the point cloud; generating feature data for a machine learning model based at least in part on one or more of: the classifications of the points based on the plurality of ground classification algorithms, the point cloud features, or the cell features; and classifying the points in the point cloud based at least in part on an output from the machine learning model.

Claims (50)

1. A computer-implemented method comprising:

obtaining a point cloud that represents an environment based at least in part on a plurality of points in three-dimensional space;

determining corresponding classifications of points in the point cloud as ground or not-ground based at least in part on a plurality of ground classification algorithms;

determining respective point cloud features associated with the points in the point cloud;

determining respective cell features associated with a plurality of cells that segment the point cloud;

generating feature data for a machine learning model based on at least two of: the classifications of the points based on the plurality of ground classification algorithms, the point cloud features, or the cell features; and

classifying the points in the point cloud based at least in part on an output from the machine learning model in response to input of the feature data.

2. The computer-implemented method of claim 1 , wherein determining the respective point cloud features comprises:

determining attributes for each point, the attributes including at least one of: coordinates of the point in three-dimensional space, a color associated with the point, an intensity associated with the point, or an estimated above ground level (AGL) associated with the point.

3. The computer-implemented method of claim 1 , wherein the output from the machine learning model further comprises respective ground classification probabilities for the points in the point cloud, wherein a ground classification probability for a point represents a likelihood of that point corresponding to a ground level in the environment.

4. The computer-implemented method of claim 3 , wherein the attributes determined for the cell comprise one or more of: a minimum z value of a point in the cell or a maximum z value of a point in the cell; a minimum, maximum, or median AGL associated with points included in the cell; a standard deviation of AGL associated with points included in the cell; a minimum, maximum, or median intensity of points included in the cell; a minimum, maximum, or median curvature associated with points included in the cell; a minimum, maximum, or median red, green, blue (RGB) values associated with points included in the cell; a minimum, maximum, or median normalized different vegetation index (NDVI); a minimum, maximum, median, or standard deviation of zenith angle (or slope) associated with points included in the cell; a minimum, maximum, or median simple morphological filter (SMRF) estimated AGL; a standard deviation of normals; a minimum, maximum, or median interquartile range (IQR) of vertical z coordinates, or a combination thereof.

5. The computer-implemented method of claim 1 , wherein the plurality of points in three-dimensional space is determined by a sensor device.

6. The computer-implemented method of claim 1 , wherein determining the respective cell features associated with the plurality of cells comprises:

dividing the point cloud into a two-dimensional grid of cells along horizontal X and Y dimensions, wherein a cell corresponds to a portion of the environment as represented by the point cloud; and

determining one or more attributes for each cell, wherein the one or more attributes are representative of points included in the cell.

7. The computer-implemented method of claim 1 , further comprising:

determining respective regional features associated with a plurality of regions of cells that represent the environment, wherein a region of cells comprises a plurality of cells.

8. The computer-implemented method of claim 7 , wherein determining the respective regional features associated with the plurality of regions of cells that represent the environment comprises:

grouping cells in the plurality of cells into the plurality of regions of cells; and

determining one or more attributes for each region of cells, wherein the one or more attributes are representative of a plurality of cells and points included in the region of cells.

9. The computer-implemented method of claim 8 , wherein the attributes determined for the region of cells comprise one or more of: a height in radius R associated with the region of cells; a depth in radius R associated with the region of cells; a Z entropy in radius R associated with the region of cells; a minimum height of cell below minimum height in some radius associated with the region of cells; an intensity entropy in the region of cells, a slope of a cell in the region of cells that is above a median slope of the point cloud, or a combination thereof.

10. The computer-implemented method of claim 1 , wherein generating the feature data for the machine learning model comprises:

formatting the feature data for ingestion by the machine learning model.

11. A system comprising at least one processor and memory storing instructions that cause the system to perform:

obtaining a point cloud that represents an environment based at least in part on a plurality of points in three-dimensional space;

determining corresponding classifications of points in the point cloud as ground or not-ground based at least in part on a plurality of ground classification algorithms;

determining respective point cloud features associated with the points in the point cloud;

determining respective cell features associated with a plurality of cells that segment the point cloud;

generating feature data for a machine learning model based at least on two of: the classifications of the points based on the plurality of ground classification algorithms, the point cloud features, or the cell features; and

classifying the points in the point cloud based at least in part on an output from the machine learning model in response to input of the feature data.

12. The system of claim 11 , wherein determining the respective point cloud features causes the system to perform:

determining attributes for each point, the attributes including at least one of: coordinates of the point in three-dimensional space, a color associated with the point, an intensity associated with the point, or an estimated above ground level (AGL) associated with the point.

13. The system of claim 11 , wherein the output from the machine learning model further comprises respective ground classification probabilities for the points in the point cloud, wherein a ground classification probability for a point represents a likelihood of that point corresponding to a ground level in the environment.

14. The system of claim 13 , wherein the plurality of points in three-dimensional space is determined by a sensor device.

15. The system of claim 11 , wherein determining the respective cell features associated with the plurality of cells causes the system to perform:

dividing the point cloud into a two-dimensional grid of cells along horizontal X and Y dimensions, wherein a cell corresponds to a portion of the environment as represented by the point cloud; and

determining one or more attributes for each cell, wherein the one or more attributes are representative of points included in the cell.

16. A system comprising at least one processor and memory storing instructions that cause the system to perform:

obtaining a point cloud that represents an environment based at least in part on a plurality of points in three-dimensional space;

determining corresponding classifications of points in the point cloud as ground or not-ground based at least in part on a plurality of ground classification algorithms;

determining respective point cloud features associated with the points in the point cloud;

determining respective cell features associated with a plurality of cells that segment the point cloud;

generating feature data for a machine learning model based on at least two of: the classifications of the points based on the plurality of ground classification algorithms, the point cloud features, or the cell features; and

training the machine learning model based at least in part on the feature data.

17. The system of claim 16 , wherein the plurality of points in three-dimensional space is determined by a sensor device.

18. The system of claim 16 , wherein the feature data further comprises ground truth information for the points in the point cloud, wherein the ground truth information correctly classifies the points in the point cloud as ground or not-ground.

19. The system of claim 18 , wherein the instructions further cause the at least one processor to perform:

storing the feature data as a training example in a training data repository.

20. The system of claim 16 , wherein the instructions further cause the at least one processor to perform:

determining respective regional features associated with a plurality of regions of cells that represent the environment, wherein a region of cells comprises a plurality of cells.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2025
From: MATTERPORT, LLC
To: COSTAR REALTY INFORMATION, INC.
Reel/Frame 072938/0375 →
MERGER AND CHANGE OF NAME Recorded Sep 10, 2025
From: MATTERPORT, INC.; MATRIX MERGER SUB II LLC
To: MATTERPORT, LLC
Reel/Frame 072827/0337 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2024
From: BALKOSKI, KEVIN; MELCHER, EDWARD; CRANE, ELEANOR; PERRINEL, MATTHIEU FRANCOIS
To: MATTERPORT, INC.
Reel/Frame 066810/0081 →
Continuity (2)
Provisional Application 63252873 · Oct 6, 2021
Related Publication 20230104674A1 · Apr 6, 2023
References Cited (12)
US 20150170526A1 · Wang · 2015 [cited by examiner]
US 20160154999A1 · Fan · 2016 [cited by examiner]
US 20190188602A1 · Kwant · 2019 [cited by examiner]
Aerial point cloud classification with deep learning and machine learning algorithms, Ãzdemir et al.(Year: 2019). [cited by examiner]
An Improved Morphological Algorithm for Filtering Airborne LiDAR Point Cloud Based on Multi-Level Kriging Interpolation, Hui et al (Year: 2016). [cited by examiner]
Classification of LiDAR Point Cloud based on Multiscale Features and PointNet, Zhongyang et al (Year: 2018). [cited by examiner]
Gastellu-Etchegorry, Jean-Philippe, et al., 2015. “Discrete Anisotropic Radiative Transfer (DART 5) for Modeling Airborne and Satellite Spectroradiometer and LIDAR Acquisitions of Natural and Urban Landscapes” Remote Se… [cited by applicant]
Guilherme Gusmão, et al., 2019, A LiDAR system simulator based on raytracing, modeled with metrological parameters and environmental noise. 11-12. 10.5753/svr_estendido.2019.8453. [cited by applicant]
Kegi Zhang, Shu-Ching Chen, Dean Whitman, Mei-Ling Shyu, Jianhua Yan, Chengcui Zhang, 2003, A progressive morphological filter for removing nonground measurements from airborne LIDAR data. Geoscience and Remote Sensing,… [cited by applicant]
Steven Hancock et al., Exploring the Measurement of Forests With Full Waveform LiDAR Through Monte-Carlo Ray Tracing , The International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences. v… [cited by applicant]
Thomas Pingel, Keith Clarke, William McBride, 2013, An Improved Simple Morphological Filter for the Terrain Classification of Airborne LIDAR Data. ISPRS Journal of Photogrammetry and Remote Sensing. 77. 21-30. 10.1016/j… [cited by applicant]
Zhang, W.; Qi, J.; Wan, P.; Wang, H.; Xie, D.; Wang, X.; Yan, G. An Easy-to-Use Airborne LiDAR Data Filtering Method Based on Cloth Simulation. Remote Sens. 2016, 8, 501. https://doi.org/10.3390/rs8060501. [cited by applicant]