geospatial technologies
DESCRIPTION
主にWeb系から使う位置情報系の技術について大雑把に紹介。間違っているところがあったら教えてください。TRANSCRIPT
GeoSpatial Technologiesby hal_sk
2010年9月1日水曜日
Overview
SensingDevices
POIsData
Database etc..Software
Lat/LonSpecifications
2010年9月1日水曜日
Specifications
2010年9月1日水曜日
緯度経度とは?
Latitude -90
+90
Longitude -180 +180
2010年9月1日水曜日
単位Degree東経139.716911度、北緯35.647401度+139.716911, +35.647401
DMS東経139度43分0秒88、北緯35度38分50秒644東経139°43′0″88、北緯35°38′50″644E139.43.0.88,N35.38.50.644+139.43.0.88,+35.38.50.644
2010年9月1日水曜日
測地系(datum)• 同じ地点でも測量基準によって緯度経度が変わる• 準拠楕円体、測地座標系、ジオイド面の3要素が必要
• 現在のネット系地図サービスでは、世界測地系が主流だが、日本のサービスのいくつかは、日本測地系が使われている
• 地図に座標をマッピングするには、投影法を決める必要がある(Projection)
2010年9月1日水曜日
準拠楕円体
http://vldb.gsi.go.jp/sokuchi/datum/tokyodatum.html
• 準拠楕円体はGRS80、測地座標系はWGS84が主流2010年9月1日水曜日
地理空間情報の表現方法
• KML• GML• GeoRSS• GeoJSONなど
2010年9月1日水曜日
KML<kml xmlns="http://www.opengis.net/kml/2.2" xmlns:atom="http://www.w3.org/2005/Atom">
<Document> <name>One Reader's View of Harry Potter</name> <atom:author> <atom:name>J. K. Rowling</atom:name> </atom:author> <atom:link href="http://www.harrypotter.com" />
<Placemark> <name>Hogwarts</name> <Point> <coordinates>-3.576327,50.620920</coordinates> </Point> </Placemark> <Placemark> <name>Little Hangleton</name> <Point> <coordinates>-0.006660,52.409369</coordinates> </Point> </Placemark> </Document> </kml>
2010年9月1日水曜日
GML<osgb:FeatureCollection
xmlns:osgb='http://www.ordnancesurvey.co.uk/xml/namespaces/osgb' ....> <gml:boundedBy> <gml:null>unknown</gml:null> </gml:boundedBy> <osgb:queryTime>2010-04-19T15:12:06</osgb:queryTime> <osgb:queryExtent> <gml:Polygon srsName='osgb:BNG'> <gml:outerBoundaryIs> <gml:LinearRing> <gml:coordinates> 528000.000,178856.330 528000.000,178919.260 527993.000,178892.000 527996.000,178867.000 528000.000,178856.330 </gml:coordinates> </gml:LinearRing> </gml:outerBoundaryIs> </gml:Polygon> </osgb:queryExtent>
2010年9月1日水曜日
GeoRSS<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:georss="http://www.georss.org/georss"> <title>Earthquakes</title> <subtitle>International earthquake observation labs</subtitle> <link href="http://example.org/"/> <updated>2005-12-13T18:30:02Z</updated> <author> <name>Dr. Thaddeus Remor</name> <email>[email protected]</email> </author> <id>urn:uuid:60a76c80-d399-11d9-b93C-0003939e0af6</id> <entry> <title>M 3.2, Mona Passage</title> <link href="http://example.org/2005/09/09/atom01"/> <id>urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a</id> <updated>2005-08-17T07:02:32Z</updated> <summary>We just had a big one.</summary>
<georss:point>45.256 -71.92</georss:point> <georss:line>45.256 -110.45 46.46 -109.48 43.84 -109.86</georss:line> <georss:polygon> 45.256 -110.45 46.46 -109.48 43.84 -109.86 45.256 -110.45 </georss:polygon> <georss:circle>42.943 -71.032 500</georss:circle>
</entry></feed>
2010年9月1日水曜日
GeoJSON{ "type": "FeatureCollection",
"features": [ { "type": "Feature", "geometry": {"type": "Point", "coordinates": [102.0, 0.5]}, "properties": {"prop0": "value0"} }, { "type": "Feature", "geometry": { "type": "LineString", "coordinates": [ [102.0, 0.0], [103.0, 1.0], [104.0, 0.0], [105.0, 1.0] ] }, "properties": { "prop0": "value0", "prop1": 0.0 } }, { "type": "Feature", "geometry": { "type": "Polygon", "coordinates": [ [ [100.0, 0.0], [101.0, 0.0], [101.0, 1.0], [100.0, 1.0], [100.0, 0.0] ] ] }, "properties": {
2010年9月1日水曜日
Devices
2010年9月1日水曜日
位置を取得する手段
• GPS•基地局測位•Wi-Fi 測位•その他
2010年9月1日水曜日
GPS
•衛星を使った測位•国内普及端末の60%くらい•純粋GPSとAGPSがある(多くはAGPS)•精度が高いが時間がかかる•屋内や高層ビル街では精度が大きく下がる
2010年9月1日水曜日
基地局測位
•基地局情報を元にした三角測位•国内普及端末のほぼ全てで利用可能•国内端末のみ •早いが誤差が大きい•電波の入らない場所では測位できない
2010年9月1日水曜日
Wi-Fi測位• SSIDと位置情報を紐付けたデータベースを使って測位
• 主にスマートフォンで利用されている• 早いが、精度はデータベースや電波状況依存• Skyhook 社や Googleなどがサービス提供• ライブラリのインストールやデータベース構築ができれば、屋内測位なども可能
2010年9月1日水曜日
その他• ICタグなどの接触系デバイスと位置情報を紐付ければ位置情報は取れる
•将来的には•可視光通信•屋内測位モジュールなどが利用可能に
2010年9月1日水曜日
ブラウザ vs アプリ• ブラウザ• コンベ端:各キャリア独自仕様位置情報送信の確認が毎回出る
• スマートフォン:Geolocation API• アプリ• コンベ端:各キャリア独自仕様• スマートフォン:SDK毎独自仕様
2010年9月1日水曜日
Data
2010年9月1日水曜日
POIs•Point Of Interest•お店の地点情報やランドマークなどの、緯度経度つきデータ
2010年9月1日水曜日
地図データ
•地図をレンダリングする為のデータ•道路データなどは、地図以外でも利用可能(ex. 経路探索)
•国土地理院や地図会社などが提供•オープンなものもある(後述)
2010年9月1日水曜日
Data Platforms
• Town Directories• Social Platforms•Map Services
2010年9月1日水曜日
Town Directories
2010年9月1日水曜日
Social Platforms
2010年9月1日水曜日
Map Services
2010年9月1日水曜日
OpenStreetMap
自由な地理情報データを作成することを目的とした世界的なプロジェクト
2010年9月1日水曜日
Software
2010年9月1日水曜日
FOSS4G Stack
Desktop GIS
Server Application
Libraries
Database
2010年9月1日水曜日
投影法変換• proj: 緯度経度→平面直角座標• cs2cs: 座標系変換 など
NOTE071% echo "139.74458388 35.6548652 0.0" | cs2cs -v +init=epsg:4004 +towgs84=-146.414,507.337,680.507 +to +init=epsg:4612# ---- From Coordinate System ----#Lat/long (Geodetic alias)# # +init=epsg:4004 +towgs84=-146.414,507.337,680.507 +proj=longlat# +ellps=bessel +no_defs# ---- To Coordinate System ----#Lat/long (Geodetic alias)# # +init=epsg:4612 +proj=longlat +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +no_defs139d44'28.87"E 35d39'29.183"N 36.560
2010年9月1日水曜日
DB• 空間検索機能は一般のDBにも搭載されている• ポイントのみの比較であれば緯度経度をそのまま使ってもそれほど問題はない
• 複雑な検索をしたい場合や大量にデータがある場合は空間検索機能があった方が良い
• PostgreSQLの拡張、PostGIS は空間情報を操作する機能が豊富
2010年9月1日水曜日
PostGIS/PostgreSQL
• PostgreSQL のGIS拡張•空間インデックスが高速•豊富な空間情報処理関数
お勧めサイト:http://lets.postgresql.jp/2010年9月1日水曜日
空間検索の例1// 渋谷から札幌間の距離を求める# SELECT ST_Distance( # ST_Transform(ST_GeomFromText(# ‘POINT(139.716911 35.647401)’, 4326), 2451),# ST_Transform(ST_GeomFRomText(# ‘POINT(141.3535861 43.06255)’, 4326), 2451)); st_distance-------------------------------------- 835162.846678699(1 row)
2010年9月1日水曜日
空間検索の例2
// 東京都の中から、一番面積が大きい区を取得# SELECT name, ST_Area ( the_geom ) as area# FROM tokyodb # ORDER BY area DESC LIMIT 1; name | area-------------------------------------------------- 大田区 | 60682132.9324725(1 row)
2010年9月1日水曜日
空間検索の例3// 世田谷区に隣接した市区町村を調べる# SELECT name# FROM tokyodb # WHERE ST_Intersects ( the_geom, (# SELECT the_geom FROM tokyodb# WHERE name = ‘世田谷区’ name -------------- 大田区 世田谷区 調布市 狛江市.....
2010年9月1日水曜日
pgRouting• PostGIS の拡張ライブラリ• 2点間の最短経路探索•複数拠点の巡回セールスマン問題•ある地点からの到達圏検索
http://pgrouting.postlbs.org/
2010年9月1日水曜日
GeoHash• ジオコード手法のうちのひとつ• 緯度経度をひとつのハッシュコードに変換したもの
• 35.647401 139.716911 → xn76g36tpvpv
• Website→http://geohash.org
2010年9月1日水曜日
GeoHashのメリット
• 範囲検索を高速に行ないたい場合に有効• 単一のカラムに格納できるので Key/Value Data Store 向き
• 桁数=詳細度なので、前方一致検索で容易に絞り込み検索が可能
2010年9月1日水曜日
GeoHexとは•@sa2da 氏考案• GeoHash と似ているが、六角形なところがポイント
• Cool•斜め方向の距離計算が容易•今週金曜日に勉強会やります
2010年9月1日水曜日
おさらい
SensingDevices
POIsData
Database etc..Software
Lat/LonSpecifications
2010年9月1日水曜日
ありがとうございました。
•WEB+DB PRESS vol.57 にもいろいろ書いてます
スマートフォンでもケータイでも![速習]位置情報サービス
GPSや基地局による位置情報を利用したサービスが注目を集めています。従来の携帯電話でも位置情報を利用できましたが,iPhone,Androidの登場をきっかけに,セカイカメラなど,これまでにはないサービスの可能性が広がっています。また,PostGISなど,位置情報サービスを作る土台となるソフトウェアも充実してきました。そこで本特集では,3キャリア(ドコモ,au,ソフトバンク)の携帯電話,iPhone,Androidのスマートフォンを対象に,位置情報サービスについて基本から解説していきます。
http://twitter.com/hal_sk
2010年9月1日水曜日