Les polygones de Thiessen sont-ils la même chose que les polygones de Voronoi? J'utilise ArcMap 10 et également QGIS 2.4 et j'aimerais connaître la différence exacte (le cas échéant) entre les deux méthodes.
Les polygones de Thiessen sont-ils la même chose que les polygones de Voronoi? J'utilise ArcMap 10 et également QGIS 2.4 et j'aimerais connaître la différence exacte (le cas échéant) entre les deux méthodes.
Réponses:
Oui, il s'agit de la même chose. Dans le domaine des SIG, nous avons tendance à les désigner sous le nom de polygones de Thiessen, d'après le météorologue américain qui a fréquenté leur utilisation. Dans d'autres domaines, en particulier les mathématiques et l'informatique, ils sont généralement appelés diagrammes de Voronoi, en l'honneur du mathématicien Georgy Voronyi. Les deux utilisations sont acceptables.
Nous ne pouvons pas connaître la différence exacte car nous ne pouvons pas voir le code source de l'implémentation d'ESRI. Cependant, il apparaît d'un coup d'œil que les deux implémentations utilisent en fait la même méthode qui est une traduction approximative de l' algorithme sweepline classique de Steven Fortune .
Ici, vous pouvez voir le code source réel utilisé dans QGIS. Il comprend la description suivante:
For programmatic use two functions are available:
computeVoronoiDiagram(points)
Takes a list of point objects (which must have x and y fields).
Returns a 3-tuple of:
(1) a list of 2-tuples, which are the x,y coordinates of the
Voronoi diagram vertices
(2) a list of 3-tuples (a,b,c) which are the equations of the
lines in the Voronoi diagram: a*x + b*y = c
(3) a list of 3-tuples, (l, v1, v2) representing edges of the
Voronoi diagram. l is the index of the line, v1 and v2 are
the indices of the vetices at the end of the edge. If
v1 or v2 is -1, the line extends to infinity.
computeDelaunayTriangulation(points):
Takes a list of point objects (which must have x and y fields).
Returns a list of 3-tuples: the indices of the points that form a
Delaunay triangle.
Maintenant, nous ne pouvons pas voir le code propriétaire d'ESRI qui pilote leur outil , mais la description de leur documentation révèle immédiatement que la base derrière les deux outils est la même:
Ces polygones proximaux sont construits comme suit:
Tous les points sont triangulés en un réseau irrégulier triangulé (TIN) qui répond au critère de Delaunay. Les bissectrices perpendiculaires pour chaque bord de triangle sont générées, formant les bords des polygones de Thiessen. L'emplacement auquel les bissectrices se croisent déterminent les emplacements des sommets du polygone de Thiessen.
Les nuances réelles du code pilotant les deux sont évidemment différentes, car il a été démontré que la traduction de Bill Simon a connu des bogues qui ne sont pas présents dans la version d'ESRI.
Il y a (comme cela a été indiqué dans les commentaires ci-dessus) plusieurs autres façons différentes de générer des diagrammes de Voronoi, même dans les SIG, comme cette méthodologie basée sur les trames . Il existe également d'autres méthodes vectorielles pour générer des diagrammes de Voronoi dans le SIG.
Il y a plusieurs avantages et inconvénients à chacune des méthodes. Par exemple, l'algorithme de Fortune est relativement rapide et bien documenté, mais il n'existe actuellement aucun moyen connu de générer des diagrammes de Voronoi pondérés multiplicativement en utilisant son implémentation directe.
Les méthodes raster sont généralement beaucoup plus lentes sur le plan du calcul, mais permettent la création de différents types de diagrammes de Voronoi ( tels que les diagrammes de Voronoi les plus éloignés ) sans réinventer complètement la méthodologie.
Divulgation complète: J'ai travaillé comme assistant de recherche pour le professeur qui a écrit le document sur la méthodologie basée sur les rasters pour générer des diagrammes de Voronoi.
TL; DR: Bien que les implémentations réelles diffèrent légèrement, elles sont basées sur le même algorithme et les deux devraient produire le même résultat (à part les quelques cas marginaux qui produisent les bogues notés dans la question de Dan Patterson liée ci-dessus).