首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从geojson数据创建OSRM文件?

如何从geojson数据创建OSRM文件?
EN

Stack Overflow用户
提问于 2022-06-08 15:00:08
回答 1查看 168关注 0票数 1

我有一个包含highway=footway路径的geojson数据文件,我想使用OSRM来查找多个点之间的路由(也就是说,不只是从A到B的最有效的路径,而是类似于旅行推销员的路径)。

OSRM文档中,我看到要使用自定义数据而不是来自OpenStreetMap的数据,我需要一个OSRM文件,我显然可以“通过运行node_OpenStreetMap/ OSRM /lib/binding/和默认配置文件中提供的osrm二进制文件”来创建osrm文件。

我觉得这很模糊,我不知道该怎么做。上面链接的文档引用了OSRM -后端文档,但我没有发现任何与创建OSRM文件有关的内容。我通过npm获得了node_modules/osrm目录,但是osrm/lib/binding目录中没有任何内容.

如何继续使用我的数据进行OSRM路由?或者,如果我想要实现的东西有一个更简单的解决方案,它会是什么?

EN

回答 1

Stack Overflow用户

发布于 2022-06-13 18:07:08

通过遵循以下“管道”,我能够创建一个osrm文件:

  1. 使用JOSM将geojson文件转换为osm (或从osm文件开始)。您可以通过打开geojson文件并单击file > Save .然后选择OSM文件格式。
  2. 使用osmconvert转换添加版本、时间戳和更改集标记
代码语言:javascript
复制
$ osmconvert64 intput_file.osm --fake-author -o=output_file.osm
  1. 使用渗透将osm文件变成二进制文件
代码语言:javascript
复制
$ osmosis --rx input_file.osm --wb output_file.osm.pbf omitmetadata=true
  1. 使用OSRM容器创建osrm文件。安装了Docker桌面:
代码语言:javascript
复制
$ docker run -t -v "absolute/path/to/data":/data osrm/osrm-backend osrm-extract -p /opt/profile.lua /data/file_name.osm.pbf
$ docker run -t -v "absolute/path/to/data":/data osrm/osrm-backend osrm-contract /data/file_name.osrm

备注:

  • 对于停靠器步骤,您必须创建一个data目录,数据的绝对路径应该链接到该目录。
  • 对于file_name输入,所使用的osrm-contract必须与osrm-contract输出相同,因为OSRM将使用该名称生成其他一些文件,它将尝试在契约步骤中找到这些文件。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72547990

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档