Remove Overlapping Flight Line in Point Cloud – Python Script

lidarpoint cloudpythonsoftware-recommendations

I have a LiDAR file (.las) corresponding to a topographical survey that I was able to carry out. However on this file we can see an overlap of points due to the percentage of flight overlap for the survey. I am trying to find a solution to uniformize this point cloud and remove this overlap. To do this I would like to make a Python script to automate this process. I know that there is LAStools for this kind of problem but I can't use it because my point cloud is very large.
Here you can find a picture of the overlapping problem.

enter image description here

Is there a Python library or a method to do this kind of point cloud processing?

Best Answer

I would first ask if the overlap is bad in some way. If the data are well aligned in the overlap areas, they shouldn't cause much trouble, but that depends on what you're doing with the data.

If the points in the overlapping areas are actually labeled as overlap using LAS attributes, you can use something like PDAL's filters.range to remove them.

If not, you could use PDAL's filters.sample to normalize the density of your points to some given distance threshold.

Both of these filters are available from PDAL via the command line interface or from the Python bindings.