哪些 OSM 属性用于路由? (欧司朗)

which OSM attributes are used for routing? (OSRM)

我正在尝试在我自己的地图数据(OSM 格式)上使用 OSRM

我想知道 ~66k OSM 属性中哪些与此相关,哪些被 OSRM 忽略。

有人可以指点我参考吗?

他们都是。

OSRM 的路由决策是由用 Lua 脚本语言编写的小脚本 ("profiles") 做出的。这些脚本采用给定方式的 OSM 标签,并据此计算该方式的速度 and/or 权重。

因此,例如,您可以编写一个 script/profile,为名称中包含单词 "Street" 的任何方式提供更好的权重,但对包含 "Road" 的任何方式进行惩罚。这会有点武断,但你可以做到。 :)

OSRM 存储库附带了几个这样的 scripts/profiles 开箱即用,供汽车、步行和自行车使用。车型偏爱高速路,脚型则能走人行道,不喜欢高速路。这些决定是通过查看 OSM 标签做出的,例如 highway 标签。

但您并不局限于这三个配置文件。你可以自己写。例如,我 运行 https://cycle.travel/map,一个自行车路线服务,它使用很多很多 OSM 标签来提供我希望的最佳自行车路线。它不使用 66k 标签,但它可能使用 66.

如果您想对此进行更多探索,我建议您从一个现成的配置文件开始,然后一点一点地调整它以获得您需要的结果。有关完整详细信息,请参阅 https://github.com/Project-OSRM/osrm-backend/blob/master/docs/profiles.md,其中解释了 Lua 脚本如何与 OSRM 交互以设置这些优先级。

如果您只是对现有 OSRM 配置文件使用的标签的概述感兴趣,可以参考 Taginfo page for OSRM