OpenStreetMap(OSM)は,道路地図などの地理情報データを誰でも利用できるよう,フリーで利用できる地理情報データを作成することを目的としたプロジェクトです。OpenStreetMap Japanサイトもある。
誰でも自由に参加して,誰でも自由に編集でき,誰でも自由に利用する事が出来る(もちろんルールがある)ようです。
私も実際に住んでいる家の周りとか気になった所をちょこちょこ編集していると結構楽しい。
OpenStreetMap(OSM)はWEBブラウザでアクセスしてアカウントを作成してログインすると,WEBブラウザ上で編集ボタンをクリックすると,地図を編集することが出来る。
また,PCで一部の地域のデータをダウンロードして編集後OpenStreetMapを更新することができるアプリケーションに,JOSM(Java OpenStreetMap Editor)がある。
LeanOSMでJOSMを使って編集する方法が説明されている。
http://wiki.openstreetmap.org/wiki/JA:Planet.osmで説明されているように,planet.osmはOpenStreetMapの全世界の現在のデータベースのようです。編集履歴はありませんが,全世界の地図情報データが入っています。ということで,圧縮した.pbfでもファイルサイズは48GByteを超えています
また各国毎に抽出した地図データは,OpenStreetMap Data Extractsからダウンロード出来ます。
OpenStreetMapのファイル形式はいくつかあって,
.pbfファイルは,非圧縮でも.osm.bz2よりもサイズが小さくなるみたいなんで,ファイルのやり取りには.pbfがいいということになります。
OpenStreetMapは,WEBブラウザやJOSMで編集・更新が出来るんだけど,その更新した地図をスマートフォンの地図アプリなんかで使う場合には,どうにかして最新状態のOpenStreetMapのデータから各アプリで使える地図データに変換する必要がある。
また,使用したい場所の地図データだけにしておかないと,地球全体となったらファイルサイズがとんでもなく大きくなってしまう。
とりあえず日本の地図データをダウンロードするには,OpenStreetMap Data Extractsから,日本のOSMデータをダウンロードするのが簡単。
しかし日本の地図データは,.pbfの物でも1.3GByteと大きい。これを地図編集・更新をした後で毎回ダウンロードしていては時間がかかるし(高速な環境でもダウンロードに10分以上かかる),変更の無い部分も全部ダウンロードする事になるので余り効率的ではない。
そこで,.pbfの日本の地図データから編集・更新した情報だけをダウンロードして,その内容をマージして地図データファイルを更新するツールosmupdate(実際にはMSYS2/MinGW-W64環境で自前ビルドしたものosmctools.zip)を使って地図データを更新するようにします。
まず,日本の地図データをダウンロードします。(初めのみ)
> cd jpmap > wget http://download.geofabrik.de/asia/japan-latest.osm.pbf
その後,更新します。
> osmupdate -B=..\poly\japan.poly -v japan-latest.osm.pbf japan-update.osm.pbf > rm japan-latest.osm.pbf > mv japan-update.osm.pbf japan-latest.osm.pbf
osmupdateがhttp://planet.osm.org/にアクセスして,changesetsをダウンロードして最新の情報へ更新し,japan-latest.osm.pbfに保存します。(japan.polyを指定して,日本だけを更新する。)
このようなことを,定期的に(または自分が地図を編集した後なんかに)行えば,日本の地図データファイルが効率的に更新出来るようになります。
新しくコメントをつける