### Table of Contents

- How to import point cloud data in the OPALS datamanager (ODM)?
- How to import multiple input files into a single ODM?
- How to compute and store information about the laser beam?
- How to derive a shaded relief map based on a LiDAR point cloud?
- How to derive a colour coded elevation map?
- How to analyse the height distribution of a data set?
- How to derive a histogram of a point attribute?
- How to analyse and visualize the point density of a data set?
- How to compute and visualize height differences of overlapping strips?
- How to calculate a DEM based on last echoes only?
- How to calculate a DTM based on ground points only?
- How to perform quality control of an entire flight block?
- How to get a quick overview of a LiDAR dataset?
- How to quickly check the available attributes of a LiDAR dataset?
- How to compute normal vectors for each point in a point cloud?
- How to calibrate a full waveform LiDAR data radiometrically?
- How to flag outliers in a point cloud?
- How to derive a gap-free DEM?
- How to import/export points within a radius r from a given location (x1,y1)?
- How to import data in specified rectangular area of interest?
- How to create a result only in a specified rectangular area of interest?
- How to find points on cables in point cloud data?
- How to store object heights (i.e. height above DEM) in an ODM?
- How to export X, Y, Z, Amplitude, EchoWidth from an ODM into a text file?
- How to calculate a land cover dependent DSM from ALS data?
- How to calculate a land cover dependent DSM from ALS data step-by-step?
- How to consider all the points within a fixed neighbourhood size?
- How to find tall vegetation (trees, bushes) in point cloud data?

This page contains a collection of useful OPALS command sequences. If you want your own cases published here, please send us an e-mail with the commands, a short description of the processing chain and optionally illustrative figures.

# How to import point cloud data in the OPALS datamanager (ODM)?

To import point cloud data in the OPALS Data Manager (ODM), use the opalsImport module.

# How to import multiple input files into a single ODM?

To import all files of a directory into a single ODM, use wildcard characters (*,?) during import (first case), while if only specific files need to be selected, use the quotes (second case).

# How to compute and store information about the laser beam?

To compute and store the laser beam information, import the point cloud into an ODM by providing the trajectory file as well and use the storeBeamInfo parameter. For computing BeamVectorSCS and ScanAngle it is necessary to specify a coordinate reference system using coord_ref_sys.

# How to derive a shaded relief map based on a LiDAR point cloud?

To derive a hill shading, first import the point cloud into an ODM, interpolate an elevation grid model and then compute the shaded relief raster map.

# How to derive a colour coded elevation map?

To derive a colour coded elevation map, import the point cloud into an ODM, interpolate an elevation grid model and then perform Module ZColor a "z-coloring".

# How to analyse the height distribution of a data set?

To analyse the height distribution of a point cloud, import the data and compute a histogram of its *z* attribute (default).

# How to derive a histogram of a point attribute?

To derive a histogram of a point attribute, import the point cloud into an ODM and compute the histogram of the desired attribute (e.g. the Amplitude of each point).

# How to analyse and visualize the point density of a data set?

To analyse the point density of the data set, import the point cloud into an ODM, derive a point density raster model and compute its histogram. To visualize it as map, apply a z-coloring to it.

# How to compute and visualize height differences of overlapping strips?

To compute the height differences of overlapping strips, import both strips (points clouds), interpolate an elevation grid model (DEM) for each one and calculate a difference model of both DEMs. To visualize it, apply a z-coloring to it.

# How to calculate a DEM based on last echoes only?

To calculate a DEM based on last echoes only, import the point cloud into an ODM and interpolate an elevation grid model by taking into account only the last echoes using a filter.

# How to calculate a DTM based on ground points only?

To calculate a DTM based on ground points only, import the point cloud into an ODM and then interpolate an elevation grid model by taking into account only the ground points using a filter.

# How to perform quality control of an entire flight block?

To perform quality control of an entire flight block (point density, DEM, strip differences, strip displacements via LSM, including mosaic calculation), use the Python script opalsQuality.

# How to get a quick overview of a LiDAR dataset?

To get a quick overview of a LiDAR dataset, import the point cloud, derive a simple DEM, and visualize it as a shaded relief and a coloured map.

# How to quickly check the available attributes of a LiDAR dataset?

To query the available attributes of of a LiDAR dataset, import the point cloud into an ODM and log the ODM header.

# How to compute normal vectors for each point in a point cloud?

To compute normal vectors for each point in a point cloud, import the point cloud into an ODM and estimate local surface normal information for each point.

# How to calibrate a full waveform LiDAR data radiometrically?

To calibrate a full waveform LiDAR data radiometrically, import the point cloud into an ODM and estimate the normal vector for each point. Then, calculate the calibration constant and derive the calibrated radiometric values for each echo.

# How to flag outliers in a point cloud?

To flag outliers in a point cloud, import the point cloud into an ODM and update the Classification (attribute) values according to the desired criterion (e.g. 3D point density).

# How to derive a gap-free DEM?

**Since OPALS version 2.3.0 Module FillGaps is provided for specifically solving this task**. For completeness, however, a *deprecated strategy* for deriving a gap-free DEMs is also shown below. Therefore, import the point cloud into an ODM, interpolate DEMs with three different interpolation methods (movingPlanes, movingAverage and nearestNeighbour) and then fill in the gaps by combining these grid models.

# How to import/export points within a radius r from a given location (x1,y1)?

To import points within a radius `r`

from a given location (x1,y1), import the point cloud into an ODM using a generic filter. For export, use the same principle.

# How to import data in specified rectangular area of interest?

To import a dataset in a specified rectangular area of interest, import the point cloud into an ODM using a Region filter.

# How to create a result only in a specified rectangular area of interest?

To create a result (e.g. a grid model) only in a specified rectangular area of interest, import the entire point cloud into an ODM and interpolate an elevation grid model using a user-defined grid limit.

# How to find points on cables in point cloud data?

To find points on cables in point cloud data, import the point cloud into an ODM, estimate the normal vector for each point (using a high number of neighbours) and store the corresponding eigenvalues and eigenvectors. Then, add a new attribute `_Linearity`

to the ODM and classify the points according to its values (Classification value 9: points with high linearity).

# How to store object heights (i.e. height above DEM) in an ODM?

To store object heights (i.e. height above DEM), import the point cloud into an ODM, interpolate an elevation grid model (DSM) and then add a new attribute `NormalizedZ`

to the ODM, which describes the height difference between the point cloud and the DSM.

# How to export X, Y, Z, Amplitude, EchoWidth from an ODM into a text file?

To export X, Y, Z, Amplitude, EchoWidth from an ODM into a text file, import the point cloud into an ODM including its input format and then export it including the desired output format.

# How to calculate a land cover dependent DSM from ALS data?

For calculating a land cover dependent DSM, import the point cloud into an ODM and then use the python script forDSM.

# How to calculate a land cover dependent DSM from ALS data step-by-step?

The single processing steps of the above example are as follows. After data import and homogenization of the data distribution, two approximate DSMs are derived by rasterization (highest elevation within a cell) and movingPlanes interpolation. The final DSM is a combination of both models depending on the surface roughness (sigma0).

# How to consider all the points within a fixed neighbourhood size?

For all modules supporting both neighbours and searchRadius (e.g. opalsNormals, opalsGrid, opalsCell etc.), the primary search criterion is the nearest neighbous count. To enforce fixed distance queries, set the neighbour count significantly higher than the expected point density. For example:

# How to find tall vegetation (trees, bushes) in point cloud data?

To find tall vegetation (e.g. trees and bushes) in point cloud data, import the point cloud into an ODM and calculate the echo ratio for each point. Then, interpolate an echo ratio grid model, using only the first returns, and create a mask that maintains only the vegetation. Finally, smoothen the result by applying a morphological opening filter to it.

- Date
- 01.07.2016