Python – LiDAR Processing Tools Available in Python

fusiongeoprocessinglaslidarpython

I have been using FUSION and the command line FUSION Lidar Toolkit (LTK) to process LiDAR data. A broad Google search ("Lidar Python") yielded libLAS and pyLAS as Python LiDAR libraries, however, these appear to provide only read and write access to LAS data.

I am particularly interested in creating intensity and density images in addition to canopy surface models from point clouds. Is there a generally accepted set of tools in Python that can accomplish the same sort of tasks FUSION LTK is capable of?

Best Answer

laspy is another good LAS read/write software. It supports working with the data directly in numpy arrays and a number of other nice Pythonic features. It isn't processing software per se, however.

PDAL has the ability to use Python as an in-pipeline filtering language, but this isn't a processing engine either.

There isn't too much in the Python quiver for LiDAR and point cloud processing. I think some of this has to do with the volumes of data typically processed and the typical response to reach for C/C++ when faced with the challenge. I do hope that as Python improves (PyPy is driving lots of things, and it is the reason that I worked to have laspy developed) more Python point cloud processing software becomes available. I think the outlook is improving but things still aren't quite there yet.