Skip to main content
Solved

Point clouds - find the lowest height in clusters


repas4411
Contributor
Forum|alt.badge.img+2

I have a point cloud with a certain class. This class will be scattered and in clusters within the point cloud, and I want to a) identify these clusters and b) create a point feature layer for the lowest point within these clusters and get the height. 

 

Is this possible with FME? 

Best answer by nielsgerrits

It depends what kind of clusters, but if these clusters are not overlapping in XY, one way to identify these is to use a HullReplacer. The pointcloud need to be coerced to a single multipoint first using a PointCloudToPointCoercer, else the HullReplacer will not work.

Then use the PointCloudStatisticsCalculator to find the lowest z and a PointCloudFilter to find the points with this z.

Attached sample workspace demonstrating this.

View original
Did this help you find an answer to your question?

3 replies

nielsgerrits
VIP
Forum|alt.badge.img+53
  • Best Answer
  • March 19, 2025

It depends what kind of clusters, but if these clusters are not overlapping in XY, one way to identify these is to use a HullReplacer. The pointcloud need to be coerced to a single multipoint first using a PointCloudToPointCoercer, else the HullReplacer will not work.

Then use the PointCloudStatisticsCalculator to find the lowest z and a PointCloudFilter to find the points with this z.

Attached sample workspace demonstrating this.


repas4411
Contributor
Forum|alt.badge.img+2
  • Author
  • Contributor
  • April 1, 2025

It works great except for places where the clusters are intersecting at y (as you maybe mentioned).

So the clusters im interested in are the pink ones, and here i will only get three values which is the lowest one, is there a way to do this and get all values? 

 


nielsgerrits
VIP
Forum|alt.badge.img+53

The classic way to do this is to flip the data over one axis, so you can apply a 2d transformer also from the side. This way you will be able to split the single cluster in 3 seperate clusters. Not easy but doable. Can you share a sample of your data? Just clip a 30 meter buffer and use an offsetter with  random kilometers in x,y,z to anonimize it.


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings