38
オープンデータから OpenStreetMapへのデータ投入方法と Overpass API OpenStreetMap Foundation Japan OpenStreetMap北陸 宇野泰行

オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

Embed Size (px)

DESCRIPTION

オープンデータからOSMへのデータ投入方法とAPI利用について。

Citation preview

Page 1: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

オープンデータからOpenStreetMapへのデータ投入方法と

Overpass API

OpenStreetMap Foundation Japan

OpenStreetMap北陸

宇野泰行

Page 2: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

アジェンダ

• オープンデータを提供している自治体

• オープンデータをOSMに投入してみよう

• OSMのAPIを使ってみよう

Page 3: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

オープンデータを提供する自治体

Page 4: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

オープンデータを提供する自治体

・福井県鯖江市

・福島県会津若松市

・石川県金沢市←new!!

・福井県坂井市(Coming Soon ?)

Page 5: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

鯖江市の事例

http://www.city.sabae.fukui.jp/pageview.html?id=11552

・市内トイレ等のトイレ情報・・・OSM投入済

・市内のAED情報

・鯖江市の施設・・・OSM投入済

・市営駐車場情報・・・OSM投入済

・ツツジバスのバス停

・鯖江市文化財

・西山動物園の動物・・・OSM投入済

・鯖江市のオープンな地図データ(Coming Soon!!)

など

Page 6: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

OSMに投入できるデータ

できないデータOSMに投入するための条件

1.位置情報と結びつくデータであること

NG例) 鯖江市議会議員の情報

2.とりあえず以下のWikiに載っているような地物だけにしましょう。

http://wiki.openstreetmap.org/wiki/JA:How_to_map_a

NG例) 鯖江市WiFiスポットデータ

OSMには自分で新しいタグを提案する仕組みもありますが

それは一旦置いておきます。

Page 7: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

オープンデータを投入してみよう

Page 8: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

オープンデータを投入してみよう

今回は金沢市のオープンデータを投入してみます。

http://www4.city.kanazawa.lg.jp/11010/opendata/

Page 9: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

1.OSMアカウントの取得

右上の[ユーザ登録]より登録して下さい。

http://www.openstreetmap.org/

Page 10: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

2.JOSMのダウンロード

こちらからJOSMをダウンロードしてください。

http://josm.openstreetmap.de/

Page 11: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

3. オープンデータのダウンロード

施設情報のCSVをダウンロードしましょう。

駐輪場・駐車場データをダウンロードしてみます。

http://www4.city.kanazawa.lg.jp/11010/opendata/

Page 12: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

4. JOSMの接続設定

JOSMを起動し、

ツールバーの[編集]タブの中の[設定]をクリックします。

[接続設定]タブでOSMアカウント及びパスワードを入力し、[OK]クリック。

Page 13: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

5. JOSMの設定

ツールバーの[編集]タブの中の[設定]をクリックします。

上級者モードにチェックをつけて下さい。

Page 14: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

6. 既存OSMデータのダウンロード

JOSMで金沢市の既存データをダウンロードしましょう。

クリック

Page 15: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

6. 既存OSMデータのダウンロード

地図が表示されますので、金沢市の適当なエリアを選択してください。

右クリックしながらドラッグすることで地図の移動、

左クリックしながらドラックすることでエリアの選択、

マウスホイールで地図の拡大・縮小ができます。

あまり大きなエリアを選択するとサーバに拒否されます。

Page 16: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

6. 既存OSMデータのダウンロード

選択したら、[ダウンロード]クリック

Page 17: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

6. 既存OSMデータのダウンロード

ダウンロードが完了すると、下図のようになります。

右クリックしながらドラッグで移動、ホイールで縮小・拡大ができます。

Page 18: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

7. 新規ノードの追加

駐車場データのID=1441の駐車場を追加してみます。

ツールバーの[ツール]-[ノードを追加]をクリック

緯度・経度をCSVデータより

コピーして入力し、[OK]

Page 19: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

7. 新規ノードの追加

今追加したノード(点)が選択ウィンドウに表示されているは

ずなので、下図の赤枠のところで右クリックし、

[選択へズーム]

Page 20: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

7. 新規ノードの追加

[選択へズーム]すると、先ほど追加したノードが中心になる

ように地図が移動します。

Page 21: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

8. ノードに情報を付加

このままではただの“点”なので、ノードに対して情報を付加

していきます。

ツールバーより[プリセット]-[輸送]-[自動車]-[駐車場]

を選択し、

オープンデータのCSVから

入力できそうな項目を埋めます。

わかるところだけで構いません。

Page 22: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

8. ノードに情報を付加

ただの“点”から、駐車場のマークになりました。

Page 23: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

9. sourceタグの追加

source(情報源)タグを入力しましょう。

今回は金沢市が公開しているデータを利用しているため、

情報源は金沢市となります。

データの帰属

attribution=Copyright Kanazawa City 2013

データソース

source=Kanazawa City 2013

データソース参照URL

source_ref=http://www4.city.kanazawa.lg.jp/11010/opendata/

それでは、これらのタグを先ほどのオブジェクトに付加していきます。

Page 24: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

9. sourceタグの追加

追加したオブジェクトを選択した状態で

プロパティウィンドウの[追加]をクリックします。

Page 25: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

9. sourceタグの追加

attribution =Copyright Kanazawa City 2013を入力して[OK]

同様にして、

source=Kanazawa City 2013source_ref=http://www4.city.kanazawa.lg.jp/11010/opendata/の2つも追加します。

Page 26: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

10. データのアップロード

クリック

Page 27: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

10. データのアップロード

コミットコメントを入力して、[変更のアップロード]

Page 28: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

10. データのアップロード

アップロードは即時反映されます。

Page 29: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

OSMのAPIを使ってみよう

Page 30: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

OSMの利用

OpenStreetMapの活用方法は、

大きく次の2つに分類されます。

1.背景地図としての利用

2.位置情報を含む汎用DBとしての利用

Page 31: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

背景地図としての利用

OSMにマーカーを付けたり、レイヤーを分けて

他のデータとマッシュアップして表示することができます。

LeafletやOpenLayersを使うと良いでしょう。

Leaflet http://leafletjs.com/

OpenLayers http://openlayers.org/

例えば鯖江市つつじバスの位置情報APIと組み合わせて、

背景地図をOSMにするなど。

Page 32: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

汎用DBとしての利用

OSMのデータベースに保存されているデータを、

OSMのAPIを使って取得するという利用方法もあります。

データを更新する必要があれば

API v0.6

データを更新する必要が無ければ

Overpass API

を使いましょう。

Page 33: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

Overpass APIを使ってみる

使い方詳細は下記URL参照

http://wiki.openstreetmap.org/wiki/Overpass_API/Language_Guide

例えば、福井駅から半径1kmのコンビニデータをJSON形式で取得する

には以下のようにします。

このままブラウザのアドレスバーに貼ってみて下さい。

http://overpass.osm.rambler.ru/cgi/interpreter?data=[out:json];node["name

"="福井(Fukui)"]["railway"="station"];node(around:1000)["shop"="convenien

ce"];out body;

Page 34: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

Overpass APIを使ってみる

OSMには電話番号やFAX番号、営業時間、駐車場利用可能台数など

地物の名前以外にも様々なタグが登録されています。

その多くは標準のMapnikではレンダリングされず、裏に隠れています。

APIを使うことで、単に背景地図としての利用から一歩踏み出し、

OSMのデータをフルに使ったWebサービスを作ってみてください。

Page 35: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

困ったときは

Page 36: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

困ったときは

Twitter

ハッシュタグ#osmjpを付けて質問すると

きっと誰かが答えてくれます。

ML

OpenStreetMap日本語ML

http://lists.openstreetmap.org/listinfo/talk-ja

Q&A

http://www.osm-japan.org/

Page 37: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

困ったときは

Group

OSM関西

http://groups.google.com/group/OSMKansai

OSM東海

http://groups.google.com/group/OSM-Tokai

http://www.facebook.com/groups/OSMTokai

OSM北陸

http://groups.google.com/group/OSM-Hokuriku

http://www.facebook.com/groups/OSMHokuriku

OSM横浜

http://www.facebook.com/groups/397490593609520

Page 38: オープンデータからOpenStreetMapへのデータ投入方法とOverpass API

ありがとうございました

地図づくりは楽しい。

それが世界的プロジェクトの一員だと思えばもっと楽しい。