LP360 Ground Classification Workflow

Ground Classification with LP360 Drone is one of the software’s most common workflows and is required for several other PCTs to function, such as Tree Segmentation, Canopy Height Segmentation, and Building Extractors for dense datasets. For a general video tutorial of the LP360 Ground Classification workflow, please see the How to Perform Ground Classification in LP360 page. If you are utilizing the LP360 Cloud for your ground classification, see the How to use LP360 Cloud Ground Classification page for guidance.

The top level view of the ground classification workflow includes:

  • Generating a Ground Seed surface
  • Adaptive Ground Iterations
  • Ground Cleanup
  • Ground thinning/decimation

Generating a Ground Seed Surface

The first step in the ground classification workflow is to generate a ground seed surface. This is a preliminary surface that provides an initial approximation of the ground.

Creating a ground seed surface is done via a Classify by Statistics point cloud task in LP360. The user will input a desired cell size and what type of sampling to classify.

In the case of ground classification, we want to select minimum (min) sampling as we can assume that the lowest point in a given cell will be true ground. Our Input points filter should include classes 0 & 1, created never classified and unclassified as we typically have not done any prior classification. Since we are looking for Li-DAR points on the ground, we will want all of our input points set to single/last returns.

In general terms, the smaller the cell size the more accurate the seed surface will be. But may require more manual cleanup before generating your full ground surface.

The ability to generate a grid for the specified cell size is also include, ensure to select an output location for the shape file generated.

Initial Ground Seed Surface. Note the few noise points and buildings included.

While this ground surface is not poor quality, it does still include a few few in-deal noise/outlier points along with very obviously a building. For this example we’ll look at a mix of automatic parameters with PCTs and some manual cleanup options.

Low/Isolated Point Filter Macro

To assist in cleaning up our seed surface, we employ the use of a macro executing a Low/Isolated Points PCT with two sets of parameters. The PCTs described below are general purpose parameters and we encourage experimentation for the variety of terrains users may encounter.

Here is the first of two Isolated Points Filter PCTs that will run in the Macro.

Be sure to set the input points filter to only Class 2 – Ground.

Destination class with be set to Class 10 – Rail. Or another class that will be kept out of the way with further processing downstream.

This PCT will use the Low Points Filter instead of the isolated points.

The key difference here is the cluster size the tool will use. The destination class will also change to Class – Low Noise

In some cases, we may want to execute both of these PCTs (or more) in a single instance. To do this, we could create a new PCT Task Type: Macro. Macros can execute multiple tasks in tandem to one another with a single execute of the PCT.
These two tasks can be added to a Macro via the “Add Existing Task”
Then ran via the “By Active Layer” PCT Execution.

Manual Cleanup of Seed Surface

While the automated parameters do perform most of the lifting for cleanup of the ground seed surface, there may be a need for some manual clean up depending on size of buildings versus cell size, or larger structures in the project.

Manual classification via Classify by polygon or paint brush
Classify by Line or Paintbrush tool in Profile View. Note: Ctrl+R-Click will enable Persist Edit/Auto Commit Points and reduce effort of building clean up.

Perform Ground Classification Iterations

Once a cleaned ground seed surface is created, we can perform an Adaptive TIN Iteration classification to generate our full ground surface.

Ground Surface in LP360

This tool is an Adaptive TIN Ground Filter task type that will “grow” and classify our ground surface based on the seed points that have been previously classified as ground.

For destination class, class 2 – ground with Key-point flags should be set. This will allow us to more easily undo our classification if parameters need to be modified

Angular Threshold & Maximum distance are the two main parameters. These will view a ground point, consider all nearby points that fall within the parameters and classify those that do. Then repeat the process with newly classified points. The values specified here work well for mostly flat and open terrain with some variance between gentle slopes and some ditches.

Perform iterations will determine how many times the parameters are applied to the tool. Typically 3-5 iterations is recommended for mostly flat terrain with some variation such as ditches or gentle slopes. Past that will begin to show diminishing returns.

Specifying an Angular Threshold and Max Distance will determine what points are classified base on parameters

QC-ing Ground Surface

After running the Ground Iterations PCT it is necessary to perform a thorough QA/QC check on the points classified to ensure a reasonable ground surface and undesirable features are not included.

inspecting along vertical structures or steeper terrain are two areas that the algorithm may miss on it’s first pass. Depending on your project’s standard, re-running the Adaptive iterations PCT may be warranted.

For smaller areas that the PCT may miss such as the loading dock above located at our office. Smaller scale cleanup may be required.

Ground Cleanup Filter

The Ground Cleanup Filter PCT is used to clean up areas where the ground classification has left unclassified patches. It can also be used for automatic ground extraction in localized areas. This is useful for the automatic classification of stockpiles and it can be chained in a macro with the height filter following to classify conveyors over stockpiles.

Our input points filter should be set to Classes 0 & 1 by default.

Boundary Seed Points should be set to Class 2 – Ground.

Destination class should be Ground as well, no flags set.

Our node insertion parameters should be set to slightly higher than our setting for Adaptive TIN Iterations

If the Edge climbing algorithm was forgone previously, enabling it typically gives better results for the clean up filter

Performing one more iteration than what was used for the ground surface can improve results

Executing this PCT can only be done via the “By Polygon” PCT execution. This allows for more finite control for what area will be affected. To do so, click and draw a polygon around your area, each click will create a vertex, and double-clicking will commit the shape for the PCT.

Afterwards, place seed points sparsely by clicking on grey unclassified areas you know to be ground. Double-clicking the last point will execute the task and classify more ground, refining your surface.

Ground Thinning

Dependent on what downstream processing is required for your project. It may require export to another software such as Civil3D or AutoCAD. Some of which may struggle with millions of points in a dataset, so thinning may be required for processing in another software that can handle a max of ~40,000 points.

This can be done by a variant of our classify by statistics tool that we used earlier to create our ground seed surface. The general parameters are much the same with the key difference being the source points and sampling type.

This tool is setup nearly identical to our ground seed points as it is the same task type “Classify by Statistics”

Our Input Points Filter will be set to Ground Key points to avoid reclassifying our seed points.

Cell size will determine what sized grid the thinned ground will signify. As well as the amount of points classified. The lower the cell size, the more points classified. The higher, the fewer points classified.

E.g: Cell size of 1 will classify a 1m ground surface, cell size of 5 will classify a 5m ground surface.

Destination class should be set to a classification that will be out of the way, but somewhere that the user can reference quickly. In this case we have the destination set to Class 23 – reserved. Creating a filter for the thinned ground class can be helpful as well

5m thinned ground surface from Ground Thinning PCT. Point Count: 3,092

The just over three thousand points classified for a 5m grid is much more reasonable than the previous 10’s of millions of classified ground points for CAD software. For exporting said surface, more information can be found in our Export Wizard Guide article.

Share

GeoCue Support has written 723 articles

Leave a Reply