Skip to main content

pointclouddensitySo far, I tried two approaches.

  1. Read pointcloud--> extract bounds-> tile point cloud into 1mx1m raster-->extract number of points per point cloud-->sort the number of points--> aggregate the number of points into groups-->write to csv
  2. read point cloud-->extract bounds-> calculate density by PointClouddensityCalculator--> rasterCellCoercer to extract the number of points into z--> coordinate extractor to get 3d points--> aggregate z (which corrsponds the number of points-->sorter-->write to csv

The problem with both approaches: it takes a lot of time (more than 1 h) . Does anyone have an idea how I could calculate the density quicker?

I add a screenshot of my workspace.

I appreciate any help. Thanks in advance!

Kind regards,

Ingrid

If you create a small sample set so the run-time does to around 2 minutes. What transformer seems to be the biggest impact on your process?

 

Why do you sort the points?

Why do you aggregate? Maybe a statistics-calculator is faster

Maybe a counter, with a group-by is faster.

 

I can't follow your second approach, the densityCalculator is a customTransformer, is it editable? What steps are done there. The first approach seems way more efficient, but maybe your result is not what you want?

 

 


Hey jkr_da,

thank you very much for your response. I think I now know why it took so much time. I had the caching on.

I want to calculate the density of the point cloud. Therefore, I divide the point cloud into a 1mx1m raster. I then calculate the number of points in each tile, hence the PointCloudPropertyExtractor. I sort the number of points with the Sorter to be able to aggregate ( as I want to group the number of points , my goal is to know how many squares have, e.g. 1 point, 2 points etc).

Thank you again for your help.

 


Reply