#1 Fri 21 February 2025 10:17
- ChristopheV
- Membre
- Lieu: Ajaccio
- Date d'inscription: 7 Sep 2005
- Messages: 3221
- Site web
St_coveragesimplify() Influence paramètre tolérance
Bonjour,
Tout est dans le titre
La documentation n'est pas très claire pour moi.
Quelle est l'influence du paramètre de tolérance ? Bien sur j'ai fais des tests empiriques, mais j'aimerai comprendre un peu mieux.
Au plaisir de vous lire.
Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close
Hors ligne
#2 Fri 21 February 2025 12:19
- tumasgiu
- Membre
- Lieu: Ajaccio
- Date d'inscription: 5 Jul 2010
- Messages: 1215
Re: St_coveragesimplify() Influence paramètre tolérance
Salut Christophe,
De ce que j'ai compris, l'algo de simplification utilisé calcule "l'importance" d'un point d'une polyligne (ie. est ce que le point doit être conservé) en fonction de l'aire des triangles formés avec ses voisins. Si l'aire est inférieur à un certain seuil, le point n'est pas conservé. Le paramètre de tolérance permet de définir cette aire maximum.
L'algo termine quand il n'y a plus de points à supprimer ou qu'un nombre de points minimum a été atteint.
(https://en.wikipedia.org/wiki/Visvaling … _algorithm)
(https://hull-repository.worktribe.com/p … 962263.pdf)
On peut voir le code ici :
https://gitlab.com/geos/libgeos/-/blob/ … r.cpp#L183
Hors ligne
#3 Mon 24 February 2025 08:47
- ChristopheV
- Membre
- Lieu: Ajaccio
- Date d'inscription: 7 Sep 2005
- Messages: 3221
- Site web
Re: St_coveragesimplify() Influence paramètre tolérance
Salut Tumasgiu,
Merci pour le lien gitlab.
Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close
Hors ligne
#4 Aujourd'hui 06:25
- Jesseccoy
- Juste Inscrit !
- Date d'inscription: 26 Feb 2025
- Messages: 2
Re: St_coveragesimplify() Influence paramètre tolérance
Salut Christophe,
De ce que j'ai compris, l'algo de simplification utilisé calcule "l'importance" d'un point d'une polyligne (ie. est ce que le point doit être conservé) en fonction de l'aire des triangles formés avec ses voisins. Si l'aire est inférieur à un certain seuil, le point n'est pas conservé. Le paramètre de tolérance permet de définir cette aire maximum.
L'algo termine quand il n'y a plus de points à supprimer ou qu'un nombre de points minimum a été atteint.
(https://en.wikipedia.org/wiki/Visvaling … _algorithm)
(https://hull-repository.worktribe.com/p … 962263.pdf)
On peut voir le code ici :
https://gitlab.com/geos/libgeos/-/blob/ … r.cpp#L183
As-tu déjà comparé les résultats avec Douglas-Peucker sur des jeux de données réels ? Je me demande si la différence de performance ou de fidélité est vraiment significative.
Hors ligne
#5 Aujourd'hui 15:55
- tumasgiu
- Membre
- Lieu: Ajaccio
- Date d'inscription: 5 Jul 2010
- Messages: 1215
Re: St_coveragesimplify() Influence paramètre tolérance
Il est communement admis que Visvalingam-Wyatt produit des simplifications plus fidèles que Douglas-Pecker au prix d'une temps de calcul plus elevé, mais je n'ai jamais fait de comparatif dessus, et j'imagine que cela doit dépendre des cas (pour la fidélité).
Dernière modification par tumasgiu (Aujourd'hui 15:56)
Hors ligne