J'ai les données des camions ( http://www.chorochronos.org/ ).
Ces données sont les coordonnées GPS de plusieurs trajectoires de camions à Athènes.
Je dois calculer la similitude entre les trajectoires, afin de supprimer celles qui sont très similaires!
Le rouge et le vert sont similaires, mais le bleu, le noir et (rouge ou vert) sont des trajectoires différentes. Je souhaite supprimer l'un des éléments similaires, rouge ou vert.
Les données sont en points (géométrie, lat et long, x et y) (coordonnées gps), l'image sont des exemples de trajectoires
postgis
postgresql
similarity
user2883056
la source
la source
Réponses:
Une mesure vraiment facile, mais pas fantastique, est d'obtenir la distance de Hausdorff entre chaque combinaison, ce qui est fait avec la fonction ST_HausdorffDistance . En utilisant les chaînes de lignes approximatives de votre figure, elles sont toutes affichées en bleu et la distance de Hausdorff est indiquée pour l'une des paires de lignes en rouge:
Et la requête pour trier les 6 combinaisons par ordre décroissant:
Donc, cela fonctionne bien pour cet exemple, mais ce n'est pas une technique excellente ou robuste pour regrouper des lignes, car la seule métrique est le point unique avec la plus grande distance, plutôt que de comparer les différences de lignes complètes. Il existe de bien meilleures méthodes, mais elles seront plus compliquées.
la source
Je n'ai pas accès à PostGres / PostGIS, mais voici comment j'y arriverais dans ArcGIS (ou autre).
la source