#1 Wed 03 February 2010 14:51
SAGA GIS - squelettisation (grid ou vecteur)
Bonjour,
Je recherche quelqu'un un peu au courant des méthodes de squelettisation, comme l'algorithme de Hilditch :
http://www.saga-gis.org/saga_modules_do … on_04.html
Le seul manuel disponible pour ce module de SAGA est celui que l'on trouve en suivant le lien ci dessus et j'avoue avoir du mal à paramétrer ce module (mis à part le "Channel Skeleton" qui marche avec les paramètres par défaut).
Le but est de trouver un logiciel libre capable de squelettiser des cours d'eau "surfaciques", initialement en polygones (cf cette question ou celle là, assez récurrente) pour les transformer en ligne médiane...et SAGA GIS semble capable de le faire.
Merci pour toute piste,
Robin.
Dernière modification par Robin (Thu 04 February 2010 10:42)
Hors ligne
#2 Wed 03 February 2010 16:48
Re: SAGA GIS - squelettisation (grid ou vecteur)
Bonjour,
Je recherche quelqu'un un peu au courant des méthodes de squelettisation, comme l'algorithme de Hilditch :
Le but est de trouver un logiciel libre capable de squelettiser des cours d'eau "surfaciques", initialement en polygones pour les transformer en ligne médiane...et SAGA GIS semble capable de le faire.
Ce que tu cherches c'est un algo de squelettisation de polygones.
L'algo de Hilditch fonctionne sur des données grillées (ie raster). Par une rasterisation de tes polygones, calcul par cet algo, puis une vectorisation des résultats tu peux effectivement arriver à ton but, mais ce n'est pas vraiment la meilleure méthode.
Les algos de squelettisation qui fonctionnent sur des géométries sont assez complexes. Si tes polygones sont convexes ça peut etre relativement simple, mais les concavités compliquent beaucoup le problème. Et les surfaces d'eau ont peu de raisons d'être convexes...
Je connais deux implémentations plus ou moins disponible gratuitement :
* l'algo Straight Skeleton de CGAL :
http://www.cgal.org/Manual/3.2/doc_html … _main.html
Mais il n'est pas dans la partie de CGAL sous licence libre. Et dans tous les cas il y a du code à écrire pour le faire tourner.
* Un plugin pour une ancienne version de JUMP, avec une application directe à ta problématique, en passant par du voronoi. Malheureusement impossible de remettre la main dessus, mais c'est mentionné la :
http://cgkn.net/cur/documents/ws4/Gruns … ummary.pdf
Il a du disparaitre avec le site http://www.jump-project.org/ :-/
Si c'est un gros besoin et que tu peux te le permettre, tu devrais pouvoir trouver des gens qui te développent une solution dans le logiciel opensource de ton choix..
Bon courage,
Vincent
Hors ligne
#3 Wed 03 February 2010 17:54
Re: SAGA GIS - squelettisation (grid ou vecteur)
Bonjour,
Je ne connais pas particulièrement votre problématique néanmoins sur
Un plugin pour une ancienne version de JUMP, avec une application directe à ta problématique, en passant par du voronoi. Malheureusement impossible de remettre la main dessus, mais c'est mentionné la :
j'ai exhumé les éléments.
Pour les binaires de Jump
http://web.archive.org/web/200707030753 … p;SID=DOWN
Pour le téléchargement du plugin (non récupérable par ailleurs via archive.org)
http://lists.refractions.net/msrm-cwb/d … er-1.0.zip
Pour la doc
http://web.archive.org/web/200708180457 … p;SID=OVER
Cordialement
ThomasG
Dernière modification par ThomasG (Wed 03 February 2010 17:55)
Hors ligne
#4 Thu 04 February 2010 10:14
Re: SAGA GIS - squelettisation (grid ou vecteur)
L'algo de Hilditch fonctionne sur des données grillées (ie raster). Par une rasterisation de tes polygones, calcul par cet algo, puis une vectorisation des résultats tu peux effectivement arriver à ton but, mais ce n'est pas vraiment la meilleure méthode.
Oups, oui, pardon, j'ai oublié de préciser que c'était l'idée initiale, à savoir convertir en grid puis squelettiser. Arcgis Spatial semble s'en sortir pas trop mal sur des zones relativement étroites avec la commande Thin (qui réduit le linéaire à 1 pixel) puis en vectorisant ce linéaire, mais je suppose qu'il y a d'autres solution, que je souhaite libre pour le suggérer aux utilisateurs des autres solutions propriétaires ou libres. Il me semble que la piste de Voronoi soit la bonne, j'ai souvenir que j'ai lu ça quelque part...
Merci pour ces premières pistes déjà, si jamais je débouche sur du concret, je ferais le suivi ici
Dernière modification par Robin (Thu 04 February 2010 10:15)
Hors ligne
#5 Thu 04 February 2010 10:54
Re: SAGA GIS - squelettisation (grid ou vecteur)
En fouillant, je suis tombé sur quelques mots clés en anglais pour approfondir le sujet et caractériser ce que je tente de trouver : http://en.wikipedia.org/wiki/Straight_skeleton et http://en.wikipedia.org/wiki/Topological_skeleton
Des liens supplémentaires :
http://www.isprs.org/proceedings/XXXVII … EM2009.pdf
http://ica.ign.fr/Leicester/paper/Haune … rkshop.pdf
Dernière modification par Robin (Thu 04 February 2010 11:00)
Hors ligne
#6 Thu 04 February 2010 21:30
- Vuilleumier
- Juste Inscrit !
- Lieu: Savigny
- Date d'inscription: 16 Jul 2009
- Messages: 5
- Site web
Re: SAGA GIS - squelettisation (grid ou vecteur)
Salut,
Je suis aussi en train d'étudier les méthodes de squelletisation. En parcourant le web, je suis tombé sur un autre article intéressant ici http://voronoi.com/wiki/images/5/58/Ter … uction.pdf.
Pour la squelletisation de polygones, tu peux peut-être utilisé le programme "Terrain modelling software" disponible ici : http://voronoi.com/wiki/index.php?title=Software. Le mode d'emploi est disponible sur la même page. Je ne l'ai pas encore testé, mais il semble pouvoir lire les shapefiles et les fichiers esri pour réaliser une squelletisation. Le responsable du site est d'ailleur un des auteurs de l'article ci-dessus.
Salutations
Vincent
Hors ligne
#7 Thu 09 December 2010 09:17
Re: SAGA GIS - squelettisation (grid ou vecteur)
Pour suivi, une manipulation sur PostgreSQL/PostGIS (gratuit) pour squelettiser (=réduire un polygone en polyligne centrale) :
http://georezo.net/forum/viewtopic.php?id=70825
Hors ligne