2

I need to take a larger (more dense) than needed list of lidar survey points (longitude, latitude, and elevation) for terrain definition and decimate it based on a 2 dimensional grid. The idea would be to end up with points based on a NxN (i.e. 1 meter x 1 meter) dimension grid using the longitude, latitude (x,y) values, therefore eliminating the points that are more than are needed. The goal is to determine what the elevation is at each point in the grid after the decimation, not use elevation as part of the decimation rule itself.

I would like to either code/script this myself in a scripting or programming language if I can start with a decimation algorithm or use a command line tool from a project that may already exist that can do this that can run on Ubuntu and called from our application as system call. The approach should not require using a GUI based type of software or tool to solve this. It needs to be part of an automated set of steps.

The data currently exists in a tab separated values file but I could load the data into a sqlite database file if using an database/sql query driven algorithm would be better/faster. The ideal scripting language would be ruby or python but can be any really and if there exists C/C++/C# libraries for this already then we could wrap those for our needs.

Ideas?

2
  • I haven't worked with DEM production directly like that, but is there a reason tools like gdal_grid or gdal_rasterize don't work here? Commented Apr 9, 2017 at 4:01
  • Try edit>subsample tool in cloudcompare. Search it's wiki for procedure. Really simple.
    – asghar
    Commented May 8, 2017 at 21:16

1 Answer 1

1

You can try PCL (Point Cloud Library) filtering code. http://pointclouds.org/documentation/tutorials/voxel_grid.php#voxelgrid Firstly, you have to install PCL library in your computer, after you can follow the steps of the code. It is command based.

Note: PCL uses .pcd point cloud format. You can find the documentation at this web http://pointclouds.org/documentation/.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.