Inside osm

Preview:

DESCRIPTION

OpenStreetMap のサービスがどのように動いているかを解説しています。

Citation preview

OSMと地理空間情報

Hal Seki: July 20th 2012@VIOPS-7 Workshop

Friday, July 20, 12

関 治之(@hal_sk)

Geo Developer

Work

Hobby OpenStreetMap Foundation Japan

Volunteer

Friday, July 20, 12

オープンストリートマップ

Wiki的手法で世界地図をつくる

Friday, July 20, 12

4

GPS 手書き 衛星写真

デジタイジング

Friday, July 20, 12

Google Maps でいいのでは?

楽しい 直せる

商用利用制限なし

オフライン利用

データを作るスキル向上

独自レンダリング

データ利用可 二次利用可

低コスト

Friday, July 20, 12

6

Friday, July 20, 12

7

震災前

Friday, July 20, 12

8

震災後

Friday, July 20, 12

昨年の東日本大震災でも実施

2009 2011 May 7th

Friday, July 20, 12

`

OpenStreetMap Foundation Japanの三浦さんからメンバー宛にメールが

震災情報を集約して地図上で表示

Ushahidi という OSS を利用

Friday, July 20, 12

11

Yahoo ロコのレイヤーとしても採用

Friday, July 20, 12

12

Apple の新OSにもデータが利用されている

Friday, July 20, 12

ブルキナファソの首都ワガドゥグFriday, July 20, 12

Friday, July 20, 12

Friday, July 20, 12

Friday, July 20, 12

トナーマップ

http://www.dotspotting.org/Friday, July 20, 12

3Dマップ

http://www.osm-3d.org/map.htm

Friday, July 20, 12

バリアフリーマップ

http://wheelmap.org/Friday, July 20, 12

バリアフリーマップ

Friday, July 20, 12

全世界で60万ユーザ

Friday, July 20, 12

ウェブの地図サービスはどのように提供されるのか

タイルサーバ(TMS)

(タイル画像へ変換)

地図データ(ベクター,ラスター)

JavaScript(OpenLayersなど)

GISデータ(POIデータなど)

ブラウザ

モバイルアプリなど

256x256

WMS:Web Mapping Service

タイル画像を配置

地理情報データを検索、地図上に配置

Friday, July 20, 12

TMS:Tile Map Service• Open Geospatial Consortium(OGC)によって策定された、GISデータをインターネット越しに配信する為の標準プロトコル

• TMS(Tile Map Service)は、一般的なマップ利用に特化し、ズーム値の固定などWMSをより簡易にしたもの

• WMS(Web Map Service)は、TMSより細かな拡大縮小の指定などが可能だがスピードが劣る

• 地図データそのものを配信する、WFS(Web Feature Service)やWCS(Web Coverage Service)などのプロトコルもある

Friday, July 20, 12

Tile

POI

Friday, July 20, 12

Inside OSM

http://geoinformatics.fsv.cvut.cz/gwiki/Custom_OpenStreetMap_Rendering_-_OpenTrackMap_Experience

Friday, July 20, 12

データはXMLやバイナリ形式で入手可能

<?xml version="1.0" encoding="UTF-8"?><osm version="0.6" generator="OpenStreetMap server"> <bounds minlat="51.5073601795557" minlon="-0.108157396316528" maxlat="51.5076406454029" maxlon="-0.107599496841431"/> <node id="319408586" lat="51.5074089" lon="-0.1080108" version="1" changeset="440330" user="smsm1" uid="6871" visible="true" timestamp="2008-12-17T01:18:42Z"/> <node id="319408587" lat="51.5074343" lon="-0.1081264" version="1" changeset="440330" user="smsm1" uid="6871" visible="true" timestamp="2008-12-17T01:18:42Z"/> <node id="275452090" lat="51.5075933" lon="-0.1076186" version="3" changeset="2980587" user="nickb" uid="1697" visible="true" timestamp="2009-10-29T12:14:35Z"> <tag k="name" v="Jam's Sandwich Bar"/> <tag k="amenity" v="cafe"/> </node> <node id="304994980" lat="51.5074645" lon="-0.1075735" version="2" changeset="388960" user="BiIbo" uid="3516" visible="true" timestamp="2009-02-13T00:41:47Z"> <tag k="barrier" v="gate"/> </node> <node id="304994981" lat="51.5074723" lon="-0.1075014" version="1" changeset="374143" user="Matt" uid="70" visible="true" timestamp="2008-10-16T16:35:57Z"/> <node id="304994979" lat="51.507406" lon="-0.1083348" version="4" changeset="2114003" user="jamicu" uid="38244" visible="true" timestamp="2009-08-12T01:33:32Z"/> <way id="27776903" visible="true" timestamp="2009-05-31T13:39:15Z" version="3" changeset="1368552" user="Matt" uid="70"> <nd ref="304994979"/> <nd ref="319408587"/> <nd ref="319408586"/> <nd ref="304994980"/> <nd ref="304994981"/> <tag k="access" v="private"/> <tag k="highway" v="service"/> </way></osm>

http://wiki.openstreetmap.org/wiki/Planet.osmFriday, July 20, 12

Friday, July 20, 12

Friday, July 20, 12

Friday, July 20, 12

Mapnik は 3U のサーバで動作

http://wiki.openstreetmap.org/wiki/ServerFriday, July 20, 12

CPU 2.5Ghz, Memory 64GB

http://wiki.openstreetmap.org/wiki/Servers/smaugFriday, July 20, 12

http://munin.openstreetmap.org/openstreetmap/yevaud.openstreetmap/index.html

Friday, July 20, 12

GISデータ•お店の情報や、ポリゴンで書かれた地理空間情報

• Google MyMapで登録できるようなデータのこと

•よくあるユースケース•近くの◯◯を探す•ジオコーディングする

Friday, July 20, 12

高速・分散処理

•大量のデータを高速で検索できるサーバが必要とされている

• GeoHashなどを使いKeyValueストアにして検索するパターンもある

•MongoDB や CouchDB への空間検索実装(GeoCouch)もある

Friday, July 20, 12

より細かい検索処理• PostgreSQLの拡張、PostGISなどを使うとより詳細な検索が可能

• 近傍検索、到達圏検索、面積の算出、隣接判定など

• pgRoutingなどの、ルート検索ライブラリも存在している

• SSDサーバを使った高速化アプローチもFriday, July 20, 12

FOSS4G

Friday, July 20, 12

37

Friday, July 20, 12

38

Friday, July 20, 12

ありがとうございました。

Friday, July 20, 12