Skip to main content
Question

Split Pointcloud based on point counts

  • October 12, 2023
  • 1 reply
  • 15 views

gvatin06
Contributor
Forum|alt.badge.img+2

I have LAZ files which I want to divide into smaller pointcloud (XYZ format) to use in another software. I cannot find how to split / divide a single pointcloud into smaller ones, based on point counts. For instance, splitting a single cloud of 20 M points into 4 clouds of 5 M points.

 

For now, I use the PointCloudCoercer to create single points, then add an attribute for "batch number" (with the point number), then re-create cloud merging the points according the the bach number. But this takes very long.

 

I you have any tricks, I would be happy to know it! Thanks.

1 reply

nielsgerrits
VIP
Forum|alt.badge.img+60
  • 2938 replies
  • October 12, 2023

Depending on what you need you can try different things.

If you need the resulting pointcloud to be spatially comparable and needed number of points should not be exact, you can use the extent of the pointcloud, tile the extent, clip the pointcloud using the tiles and write the result. (BoundsExtractor, Tiler, Clipper, PointCloudPropertyExtractor)

 

If you need the exact amount of points, you can probably use the PointCloudThinner and iterate through that. For looping transformers you will need a custom transformer which is harder to set up.