Postgresql 如何找到相似的轨迹

Postgresql 如何找到相似的轨迹,postgresql,gis,Postgresql,Gis,我对地理信息系统很陌生。我正在使用一个现有的数据集,它是一个三元组及其轨迹ID的集合。我需要找到类似的轨迹。我使用postgres作为数据库。我已经导入了数据集,我想可视化轨迹。如何将现有数据转换为linestring 您是否只需要为每个轨迹ID使用一个线字符串(即通过“查找相似的轨迹”)?如果是这样,您希望结合使用(空间聚合版本)。对于PostGIS 9.0及更高版本,您可以执行以下操作: SELECT points.trackid, ST_MakeLine(points.poi

我对地理信息系统很陌生。我正在使用一个现有的数据集,它是一个三元组及其轨迹ID的集合。我需要找到类似的轨迹。我使用postgres作为数据库。我已经导入了数据集,我想可视化轨迹。如何将现有数据转换为linestring


您是否只需要为每个轨迹ID使用一个线字符串(即通过“查找相似的轨迹”)?如果是这样,您希望结合使用(空间聚合版本)。对于PostGIS 9.0及更高版本,您可以执行以下操作:

SELECT points.trackid,
       ST_MakeLine(points.point_geom ORDER BY points.timedetails) AS line_geom
FROM (SELECT data.trackid,
             data.timedetails,
             ST_MakePoint(data.longitude, data.latitude) AS point_geom
      FROM your_table AS data) AS points
GROUP BY points.trackid;

是的,我已经做过了。但现在我想比较一下这些轨迹。我可以使用LCSS算法来实现这一点吗?寻找相似轨迹的最佳算法是什么?我想是的,这很容易理解…)PostGIS的扩展正在开发中,似乎旨在处理LCSS问题。扩展很容易使用,这可能就是您想要的。我对比较时空数据知之甚少,不过。。。