gpt4 book ai didi

lua - 如何在 OSRM 配置文件中使用外部数据

转载 作者:行者123 更新时间:2023-12-05 00:58:03 24 4
gpt4 key购买 nike

this Mapbox blog post , Lauren Budorick分享他们如何与 OSRM 一起使用路线引擎,该引擎使用海拔数据为骑车人提供更好的路线......太棒了!

我还想在插入外部(用户生成的)数据时探索 OSRM 路由的潜力,但我仍然很难掌握 OSRM 的配置文件是如何工作的。我想我明白了主要思想,即每条路(或节点?)都通过管道传输到一些函数中,这些函数加在一起,对这条路径的好坏进行了评分。

但就是这样,我脑子里还有很多缺失的部分,比如劳伦在她的个人资料中使用的每个功能都做了什么。如果有人能告诉我一些关于所有这些如何运作的更详细的信息,你会让我下周变得容易得多:)

此外,在 Lauren 的帖子中,在 source_function 内她加载了 ./srtm_bayarea.asc文件。 .asc 文件是什么样的?如何从存储在 pgsql 数据库中的数据生成这样的文件?我们可以使用其他格式吗,比如 GeoJSON?

然后,当在 segment_function她使用诸如 source.lon 之类的东西和 target.lat ,那些是指存储在 asc 文件中的原始数据吗?或者该文件是否被处理成某种标准来映射所有内容以符合它?

正如您所看到的,我是一个完整的路由新手,也许是一般的 GIS,但我很想更多地了解这个围绕 OSRM 生态系统的标准和工具。你能和我分享一些技巧吗?

最佳答案

I think I get the main idea, that every way (or node?) is piped into a few functions that, all toghether, scores how good that path is.



对了,每一种方式,每一个节点都被评分 as they are read from an OSM dump确定节点的可通过性和路径的速度(用作评分启发式)。

数据格式的基本描述可以在 here 中找到。 .在读取时,ArcInfo ASCII 网格中立即可用的数据包括 SRTM data .目前纯文本 ASCII 网格是唯一支持的格式。 GIS 开发人员有几个很棒的 Python 工具可以帮助将其他数据类型转换为 ASCII 网格 - check out rasterio , 例如。这是一个将 NED IMG 转换为 ASCII 网格的非常简单的 Python 脚本示例:
import sys
import rasterio as rio
import numpy as np

args = sys.argv[1:]

with rio.drivers():
with rio.open(args[0]) as src:
elev = src.read()[0]
profile = src.profile

def shortify(x):
if x == profile['nodata']:
return -9999
elif x == np.finfo(x).tiny:
return 0
else:
return int(round(x))

out_elev = [map(shortify, row) for row in elev]

with open(args[0] + '.asc', 'a') as dst:
np.savetxt(dst, np.array(out_elev),fmt="%s",delimiter=" ")
source.lontarget.lat例如: sourcetarget是由 extraction process 作为参数提供的节点.它们的坐标用于在 each location 处查找数据。在提取过程中。

请务必通读相关维基页面(已链接)。

Feel free alternately to open a Github issue in https://github.com/Project-OSRM/osrm-backend/issues with OSRM questions.

关于lua - 如何在 OSRM 配置文件中使用外部数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33594766/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com