Tengo los datos de camiones ( http://www.chorochronos.org/ ).
Estos datos son coordenadas gps de múltiples trayectorias de camiones en Atenas.
¡Tengo que calcular la similitud entre las trayectorias para eliminar aquellas que son muy similares!
Rojo y Verde son similares, pero azul, negro y (rojo o verde) son trayectorias diferentes. Quiero eliminar uno de los similares, rojo o verde.
Los datos están en puntos (geometría, lat y long, x e y) (coordenadas gps), la imagen son ejemplos de trayectorias
postgis
postgresql
similarity
usuario2883056
fuente
fuente
Respuestas:
Una medida realmente fácil, pero no fantástica, es obtener la distancia de Hausdorff entre cada combinación, lo que se hace con la función ST_HausdorffDistance . Usando LineStrings aproximados de su figura, todos se muestran en azul, y la distancia de Hausdorff se muestra para uno de los pares de líneas en rojo:
Y la consulta para ordenar las 6 combinaciones en orden descendente:
Por lo tanto, funciona bien para este ejemplo, pero no es una técnica excelente o robusta para agrupar líneas, ya que la única métrica es el único punto con la mayor distancia, en lugar de comparar las diferencias de las líneas completas. Hay métodos mucho mejores, pero serán más complicados.
fuente
No tengo acceso a PostGres / PostGIS, pero así es como lo haría en ArcGIS (u otro).
fuente