Skip to main content
Solved

Radius from point cloud?


virtualcitymatt
Celebrity
Forum|alt.badge.img+35

Hi all,

 

Has anyone had any luck trying to calculate a radius of on object from a point cloud?

I have point data for several structures (e.g., wind turbine, water towers etc) and I have a fairly detailed Surface Model.

 

Seems to be quite a tricky task for FME. I would probably try and clip the point cloud by some buffer which I assume will be bigger and then try and get all points which are some percentage of the max height withing the buffer.

Once I have the points then it would be about creating a convex hull and calculate radius based on area (assuming a circle).

 

Pretty crude...

 

Any other ideas would be welcome.

 

Thanks in Advance

Best answer by redgeographics

A few years ago I experimented with this to find the diameters of treetrunks. The process was to get a slice of the points at a certain elevation range above the ground, turn them into 2D points, buffer them slightly and dissolve the buffers to create clusters. Then create a convex hull of all points falling within a cluster and replace that with a bounding box, storing the lengths of the sides in attributes. Get the centerpoint of that bounding box and then replace it with an ellipse.

It didn't work great (partly because the source data wasn't great to begin with) and due to various external reasons my customer declined pursue this further, but I think it has potential.

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

4 replies

redgeographics
Celebrity
Forum|alt.badge.img+49
  • Celebrity
  • Best Answer
  • August 3, 2020

A few years ago I experimented with this to find the diameters of treetrunks. The process was to get a slice of the points at a certain elevation range above the ground, turn them into 2D points, buffer them slightly and dissolve the buffers to create clusters. Then create a convex hull of all points falling within a cluster and replace that with a bounding box, storing the lengths of the sides in attributes. Get the centerpoint of that bounding box and then replace it with an ellipse.

It didn't work great (partly because the source data wasn't great to begin with) and due to various external reasons my customer declined pursue this further, but I think it has potential.


virtualcitymatt
Celebrity
Forum|alt.badge.img+35
redgeographics wrote:

A few years ago I experimented with this to find the diameters of treetrunks. The process was to get a slice of the points at a certain elevation range above the ground, turn them into 2D points, buffer them slightly and dissolve the buffers to create clusters. Then create a convex hull of all points falling within a cluster and replace that with a bounding box, storing the lengths of the sides in attributes. Get the centerpoint of that bounding box and then replace it with an ellipse.

It didn't work great (partly because the source data wasn't great to begin with) and due to various external reasons my customer declined pursue this further, but I think it has potential.

Ahh, nice approach - something to think about.


helmoet
Forum|alt.badge.img+8
  • August 3, 2020

Hi, Could you do this with the results of a ContourGenerator?


virtualcitymatt
Celebrity
Forum|alt.badge.img+35
helmoet wrote:

Hi, Could you do this with the results of a ContourGenerator?

Not a bad idea at all! will have a play around with 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