オフライン機能を備えたopenstreetmapを使いたいと思います。具体的には、APIを使用せずに特定の住所をジオコードすることが可能かどうかを知りたいと思います。この理由は簡単です。ジオコードするアドレスが何十万もある場合、それは永遠にかかるでしょう。私はすでにシェープファイルを持っていますが、あなたはOSMバックエンドをダウンロードできることは知っていますが、OSMのオフラインバージョンをRにする方法を知らない...オフラインOSMとR
助けてください。
オフライン機能を備えたopenstreetmapを使いたいと思います。具体的には、APIを使用せずに特定の住所をジオコードすることが可能かどうかを知りたいと思います。この理由は簡単です。ジオコードするアドレスが何十万もある場合、それは永遠にかかるでしょう。私はすでにシェープファイルを持っていますが、あなたはOSMバックエンドをダウンロードできることは知っていますが、OSMのオフラインバージョンをRにする方法を知らない...オフラインOSMとR
助けてください。
私はRで主に働いて、私の問題への解決策を見つけた:
まず、あなたはhttps://github.com/Project-OSRM/osrm-backendのクローンを作成する必要があります。
:次に、あなたは、あなたが次の行(必要に応じて経度緯度を更新)
txt <- getURL("http://127.0.0.1:5000/route/v1/driving/13.388860,53.517037;13.385983,52.496891?overview=false")
いくつかの余分なノートを呼び出すことができますhttps://www.docker.com/community-edition
country <- "germany"
# Download new maps - NOTE, this is a large download (more than 3GB)
download.file(url = paste0("http://download.geofabrik.de/europe/", country, "-latest.osm.pbf"),
destfile = paste0("./Data/POIs/", country, "/latest.osm.pbf"))
# Download dictionary
download.file(url = "https://raw.githubusercontent.com/MorbZ/OsmPoisPbf/master/doc/poi_types.csv",
destfile = paste0("./Data/POIs/", country, "/poi_types_dict.csv"))
pois_dict <- read.csv(paste0("./Data/POIs/", country, "/poi_types_dict.csv", sep = ","))
pois_dict <- pois_dict[!is.na(pois_dict$CODE), ]
# Create local version of search engine car + foot
cmd1 <- paste0("cd ",getwd(),"/Data/POIs/", country)
cmd2 <- paste0("docker run -t -v $(pwd):/data osrm/osrm-backend osrm-extract -p /opt/car.lua /data/latest.osm.pbf")
cmd3 <- paste0("docker run -t -v $(pwd):/data osrm/osrm-backend osrm-contract /data/latest.osrm")
cmd4 <- paste0("docker run -t -i -p 5000:5000 -v $(pwd):/data osrm/osrm-backend osrm-routed /data/latest.osrm")
system(paste(cmd1, cmd2, cmd3, cmd4, sep = "; "))
ドッキングウィンドウをインストールして起動する必要があります。 1)これは明らかにOSRMのためであるが、同様の技術をOSMにも使用することができる。
2)ファイルのサイズが大きくなることがあります。ドッカーはデフォルトで1000Mbしか割り当てませんので、必要に応じてこれを変更する必要があります。
3)得られた最終結果は、必要なものを得るために(正規表現で)作成する必要があります。
オフラインOSMジオコーダの場合、Rパッケージが使用するジオコーダに応じて、またはOSM-based search enginesのいずれかを使用できます。
助けてくれてありがとう、私は非常に新しいので、私は推薦状をダウンロードする場合、どのように私はRとNominatimを "接続"するのですか? –
Nominatimがインストールされている場合、Nominatimにダウンロードしたシェイプファイルをどのように "リンク"しますか? –
理論的には、あなたの地元のNominatim instaceを指すようにURLを変更するだけです。私はRユーザーではないので、この設定をどこに設定するか分かりません。 Nominatimはシェープファイルでは機能しません。通常、XMLまたはPBFであるOSMデータが必要です。 https://wiki.openstreetmap.org/wiki/Nominatim/Installation#Import_and_index_OSM_data – scai
「OSM」は単なるプレーンなデータです。ジオコーダーが必要な場合は、「OSMのオフライン・バージョン」ではなく、オフラインOSMベース・ジオコーダーが必要です。違いを理解しよう。 OSMは未処理のマップデータですが、ジオコーダ、ルータなどはソフトウェアです。利用可能なOSMベースのソフトウェアがたくさんありますが、OSMはまだデータだけでソフトウェア自体はありません。 – scai