Question

Derive largest inscribed convex polygon

  • 14 February 2017
  • 4 replies
  • 6 views

Badge +6

Hello!

I have polygon geometry representing water areas obtained from satellite imagery. They are sometimes very large and include multiple rivers inside the same polygon. I would need to decompose/split those huge polygons into smaller ones in order to have one distinct polygon for each river. This is just one polygon:

I would need to identify the main tributaries and seperate them into distinct polygons. Tributaries would be cut from the main stem more or less according to the following dividing line:

I am still not sure how this could be automated given the very irregular nature of the polygon. I would also need to decide what a relevant tributary is (width of the junction and/or area upstream,...).

I have made some attempts at obtaining a sort of skeleton using the CenterLineReplacer transformer but it ends up with a crash even after generalization. I am also looking at whether it would be possible to have FME calculate the biggest inscribed convex polygons and use the result of these in order to derive a sort of dividing line between the major waterways. I did not find a transformer for that but if you think you see an approach for solving the problem, I would be very glad if you could share it with me.

I have attached the original polygon () in case you want to play around with it.

Thanks!

Olivier


4 replies

Badge +16

I personally think you are better off drawing the division lines manually and using them in the clipping. Sometimes it's the most effiecient way....

Badge +6

Thank you @itay!

This is indeed something I am considering doing. But I first wanted to rule out all efficient automated options because we may need to perform these tasks for very large areas around the world. These shapes are generated from a machine learning methodology.

Badge +16

Thank you @itay!

This is indeed something I am considering doing. But I first wanted to rule out all efficient automated options because we may need to perform these tasks for very large areas around the world. These shapes are generated from a machine learning methodology.

So teach it to draw it right :)

 

 

Badge +16

Thank you @itay!

This is indeed something I am considering doing. But I first wanted to rule out all efficient automated options because we may need to perform these tasks for very large areas around the world. These shapes are generated from a machine learning methodology.

Hi @olivier,

 

even if there is an automated option probably a manual step to verify the automated step will be necessary. Tha is my experience with this kind of solutions.

 

 

Results from playing with the generalizer

 

 

 

Reply