Why point cloud classification is (not) the answer to everything

Okay, let’s be honest: Despite what the manufacturers of laser scanning equipment are trying to tell us, nobody really wants point clouds. They are huge blobs of unstructured and often noisy data with a low semantic information content. But the end user wants information – line and plane geometry with labels, or at a higher level, knowledge about assets and their condition. Getting this useful information out of point clouds usually requires fast computers, lots of storage space, expensive software, patience, and a considerable amount of manual work is required, too. This means that automatisation can provide massive benefits.

A typical processing pipeline for point clouds is shown below:

  1. The data is acquired using a static, mobile, or airborne laser scanner.
  2. During registration, the raw data is brought into a (usually) georeferenced coordinate system. This is an intricate process that may require the computation of GNSS/INS derived trajectories, ground control points, and the adjustment of geodetic observations in a geodetic network analysis.
  3. The point clouds are then classified, assigning labels of object classes to each individual point.
  4. During feature extraction, geometry such as lines and planes are extracted from the point clouds, along with semantic labels like “road edge” and “roof”.
  5. During what I call Finishing, the automatically extracted features are manually verified, which often involved re-labelling, cutting, and trimming. The amount of work required here depends on the quality of the results from the previous step.

As Classification is the first step after registration, I decided to first focus my efforts upon development of a general-purpose machine learning approach to point cloud classification. This has resulted in the program HaiClass that I use for classifying the point cloud datasets that I encounter during my work. Here’s an example of a classified point cloud that was acquired by a mobile mapping system mounted on a train:

Working with such a point cloud that is classified into meaningful classes can make automated feature extraction very simple. Here are the contact wires extracted from a point cloud with a relatively simple algorithm, much simpler and faster than earlier attempts by me when working with unclassified point clouds, which tried using a Kalman filter to follow the wires or detecting the wires in cross sections extracted along an approximate centerline:

Yet, as this example shows, point cloud classification by itself is not the solution to all point cloud related problems. It is only one step in a point cloud processing and feature extraction pipeline. You will still need both good feature extraction algorithms and manual work to get a satisfying end result – but good classification will make feature extraction much easier.

Interested in trying out my classification method or talk about how I can help you with point cloud processing? Then get in touch.

Leave a comment

Your email address will not be published. Required fields are marked *