【问题标题】:Extract topology from road network (.NET) [closed]从道路网络(.NET)中提取拓扑[关闭]
【发布时间】:2015-02-05 23:56:55
【问题描述】:

我们有多个来自多个来源(Open Street Map、TomTom...)的高质量道路网络。这些来源包含的信息比我们需要的多得多,有效地阻止了我们的计算。过滤掉次要道路很容易。我们的主要问题是高速公路的表示(两条相反方向的道路),复杂的高速公路交叉口(各种出口道路,路口不是点)。对于我们的目的,更“拓扑”风格的道路网络将是理想的。

高度详细的数据来源:

理想的简化网络:

是否有任何算法可以帮助我们提取简化的道路网络?如果在 .NET 中甚至可以实现,那将是真正的赢家。

更新:

原始数据表示为带有一些有限元数据的折线。元数据告诉道路的身份(名称或编号)、道路的“等级”(高速公路、主要、次要等),以及速度限制等更多细节,线路部分是桥梁还是隧道。数据质量非常好,我们可以很容易地根据道路标识将多段线段组合在一起形成一条道路。 同样,很容易忽略次要道路。高速公路出口的加减速车道也清楚地标明了它们的等级,因此它们也很容易过滤。

我们看到两个主要问题:

1) 高速公路:将两条(或多条)单向道路替换为一条道路

2) 高速公路路口:确定路口的中心点,并确保我们的简化高速公路与其相连。

更新 2: 数据存储在EZRI Shape files。使用SharpMap library,它们相对容易解析,或者进行地理空间搜索。源数据按国家分割,一个国家是一个shape文件(如果国家太大,像美国,德国),它会进一步划分为更小的区域。是的,这种划分带来了另一个问题。如何确保法德边境的简化高速公路相接?

感谢关注

【问题讨论】:

  • 我觉得这个问题很有趣,尽管它非常“软”,因为不清楚如何正式确定目标。您能否展示更多示例并更具体地说明“更多拓扑”的含义?数据集是作为有向图还是仅作为多边形集合给出?
  • 数据存储在哪里。这是 Postgis 等空间数据库擅长的领域。甚至还有一个拓扑扩展。

标签: .net algorithm geospatial geo topology


【解决方案1】:

这只是一个解决方案的草图,但是:

  • 定义曲线对之间的距离度量。首先想到的是由两条曲线包围的区域,除以它们的长度。您可以使用元数据来扩充它。目标是设计一个度量标准,使您认为相似的道路对的距离较小,而您认为不相似的道路对的距离较大。

  • 现在选择一个聚类算法并要求它根据您刚刚定义的距离对道路进行聚类。对你让它使用的集群数量非常慷慨。当它回来时,寻找“直径”非常低的集群,这意味着集群中的每个点都非常相似。 “完全链接聚类”可能是开始您的研究的好地方,因为它会导致这种聚类。

  • 然后,您可以在每个集群中取平均值,将非常相似的道路集合变成一条道路,从而解决您的问题 (1)(希望也解决问题 (2))。

    李>

完成后,下一个任务是区分“重要”道路和“不重要”道路。这里最好的方法是坐下来建立一个包含几百条随机道路的训练集,手动标记它们是否重要。然后采用某种分类器并在您手动标记的集合上训练它们。然后让它预测哪些其他道路是重要的。

我不能说最好使用哪个分类器,但如果你能抽出时间来构建一个大型训练集并研究文献,“神经网络”可以给出一些令人印象深刻的结果。如果您想要更简单的东西,请查看“随机森林”或(甚至更简单的)“逻辑回归”。

【讨论】:

    猜你喜欢
    • 2012-07-13
    • 1970-01-01
    • 2014-10-14
    • 2011-03-31
    • 2011-05-08
    • 1970-01-01
    • 1970-01-01
    • 2016-10-21
    • 1970-01-01
    相关资源
    最近更新 更多