Post Processing LiDAR Point Clouds
The usual form of delivery of the processed LiDAR data is in the form of a point cloud. This takes one of two forms; ASCII text files or binary LAS files. The files contain the coordinates of each detected LiDAR return, from these a raster DEM can be created.
Removing Noise Points
As part of the standard processing and quality checking of the LiDAR point clouds, ARSF-DAN classify 'noisy' points. This is done both by using automatic algorithms and by viewing the data. The noisy points can be one of the following:
- isolated points
- isolated clusters of points
- water induced noise
- cloud noise
- system noise
When a point has been identified as being 'noise' it is given a classification value of '7'. All other points will probably have classification of '0' (unclassified) or '1' (default). The classification values used follow the ASPRS standard LiDAR point classes.
It is advised that these points be removed before using the data, unless they are of specific use to your studies.
Removing noisy points from ASCII files
ARSF-DAN include a utility for removing these points from the ASCII files called 'pt_cloud_filter', which has both linux and Windows versions.
To use, open the command line interface (in Windows: click start → click run → type ‘cmd’). Then type:
pt_cloud_filter [input_ascii_file] [classification number(s) to be removed] > [output_filename]
pt_cloud_filter.exe point_cloud.txt 7 > filtered_point_cloud.txt
will create a file called filtered_point_cloud.txt from the points in point_cloud.txt excluding those with classification 7.
Removing noisy points from LAS files
The following command can be used to create a copy of the LAS file, removing points flagged as noise:
las2las -i point_cloud.las -o filtered_point_cloud.las -drop_class 7
You can also use the LAStools toolbox available for ArcGIS and QGIS. Within QGIS, once the toolbox has been setup (following the instructions here) points can be filtered using the 'las2las_filter' from within the processing toolbox and using 'drop_class 7' as the filter, as shown below:
Both the toolboxes and command line tools can also be used to select only the first or last return and subset the points to a bounding box.
For additional assistance using LAStools the developer has a mailing list at https://groups.google.com/forum/#!forum/lastools