How do we process Lidar Data Today?

Bringing myselp up to speed on current processing
Author
Published

November 7, 2025

Modified

November 7, 2025

Seasons of Change - Seasons of Learning

Recently, I finished my PhD under the supervision of Dr. Nicholas Coops. Now, I am transitioning into post-doctoral role working with the Center for Wildfire Coexistence. I like to say I am crossing the boundary between wildfire recovery into wildfire mitigation and along the way I am completing my disaster cycle.

As a new post-doc I am reminded of my first year as a PhD - it is time to hit the ground and learn again! The last year has focused on ecology and writing. Now, I am turning back and brushing up on some of my more tecnical roots. Two of the technical subjects I am focusing on are wildfire hazard modeling and lidar data processing. The world of lidar processing has rapidly advanced and I thought it was important to as least look at how others have processed data.

In this blog-post I’ll give an overview of the following topics

  • What I mean when I say lidar data processing

  • What a general lidar processing workflow entails

  • packages and resources that help you step through a lidar processing workflow

Defining Lidar Data Processing

Lidar or “light detection and ranging” describes 3D structures on the landscape based on point clouds. To create point clouds, a sensor (often an airplane, drone, or mobile scanning unit) sends a light pulse (generally in the NIR range) in a direction. The sensor then monitors how long it takes for that light pulse to be reflected back to the sensor. Then, using the speed of light we can calculate distance using the equation below. \[ d = C,t \] Where C is the speed of light and t is the time it takes for the light to travel from the sensor to the surface it is reflected by At the most basic level, processing lidar data involves a process of data cleaning, interim product development, and derivation of various lidar metrics. Metrics can include manipulated point-clouds, derived mesh surfaces, and rasterized data products. The next section gives a short overview of these different processes. ## General Lidar Processing Workflow

I like to joke to geotechinical engineers that what I use Lidar data for is the antithesis of what they use lidar data for. I joke, but it is somewhat true I really use a combination of lidar products to derive important metrics. Generally lidar processing begins with some level of data-subsetting to improve data processing speeds, denoising of the data (to remove errors), classification of different types of returns (ground vs. canopy), point cloud normalization, and rasterization of different metrics. There are zillions of different metrics that you can process data, but I’ll describe the general standard metrics I derive.

  1. Data-chunking: Often, lidar acquisitions are large and create incredibly large files. These files will easily clog up your computer’s processing power and memory. Chunking, or processing by windows, helps improve the data processing and decreases the memory intensiveness. For large data acquisitions, a first step is to derive chunks for the dataset.

  2. Denoising: Lidar returns can include noise returns from things like water, clouds, and even birds. These erroneous points will impact final metrics and classification. Common approaches to remove this noise include identifying outliers and windowed reading.

  3. Classification: Similar to the process of denoising, classification of points uses spatial association across points to identify ground points, mid-canopy points, or top of canopy points.

  4. Normalization: Normalization is the one key difference between the way that foresters and ecosystem ecologists use lidar data and the approach used by geotechnical engineers. While geotechnical engineers are interested in the structure of the ground, foresters and ecologists are interested in the vegetation structure above that ground. Thus, normalization removes ground points so that the point cloud represents the surface structure.

  5. Rasterization: Processed point clouds can be interpolated to produce different metrics. For example, ground points can be spatially interpolated to create digital elevation models (DEMs), while first returns from normalized point clouds can be used to create canopy height models (CHMS).

Figure 1 shows and overview of the processing approach for an RPA lidar point cloud.

Figure 1

Resources + Packages to Process Lidar Data

The table below highlights different effective packages to process lidar data. Many of these packages are open-source and free. Generally, I have used lastools and lidr for most of my data processing.

Name Reading and Converting LAS data Chunked Reading Classification Parallization Normalization Rasterization Language(s) Cost
laspy yes yes yes no* no* no* Python Free
PDAL yes yes yes yes no yes C++ (with python and Julia options) Free
lastools yes yes yes yes yes yes DOS Some aspects are free
lidr yes yes yes yes yes yes R free
rlas functions automatically called by lidr package
Cloud Compare no no yes no yes yes command line interface free
Fusion yes yes yes yes yes yes yes free

Tutorials and Resources