JA:GIS for Dummies (written by a dummy)

From OpenStreetMap Wiki
Jump to navigation Jump to search

このページは、私のように地理やGISのスペシャリストではないけれど、色々な経緯でOpenStreetMapにたどり着いた人たちに、GISや地理に関する幾つかの概念を紹介するためのものです、

下に書かれていることは、私がMerkaartorを開発する際に学んだことです。もし何か変なことが書いていれば、気軽に修正してください(^^)

Datums、WGS84とは

世の人は皆、地球が丸いということを知っています・・・本当に?おっと、あなたはそうではないことをご存知かもしれませんね。様々な力が働いているため、地球は実際には両極から押しつぶされるような格好でやや扁平になっており、楕円体を呈しています。さらに、その形も常に変化し続けているのです!

ご存知のとおり、地球上のいかなる場所も、経度(東経-西経)と緯度(北緯-南緯)によって表現され得ます。困ったことに、この座標系は原点 (0,0)°を基準としていながら、その原点は常に動いているのです! 共通の参照系を得るためには、地球の計測に関する正確な定義を得なければいけません。そして、それは Datums が記述することになるものです。

近年の標準的な (そして、GPSとOSMの両方でも使われている) 参照系が、WGS 84です。

  • Datumsや投影に関する背景や用語の説明などは、GRASS Wikiの Basic GIS conceptsに良い情報があります。徹底的な数学的な文書は PROJ.4 WEBサイトにあります。

投影、メルカトル図法とは

Mercator = Cylinder
World in Mercator

地球は丸いので (おっと、実際はそうじゃないけど、そうだと仮定して) 、三次元の球体を二次元のスクリーン (或いは印刷された地図) に表現する術を見つけなければいけません。 そこで、投影の出番になるわけです。投影法による、単純だったりとても込み入った数学のおかげで、地球という球体は二次元上に表現されることになるのです。

世の中には無数の投影法が存在し、それぞれ異なった目的で利用されています。OSMにおいて最も重要な投影法は、メルカトル図法と (標準緯線を赤道に置いた) 正距円筒図法ではあります (この理由は後でわかります) が、実際にはOSMのデータには様々な投影法が用いられています。

ご参考までに、メルカトルは、16世紀フランドル (現ベルギー) 出身の地図製作者です。


TMS

Main page: TMS

TMSは、インターネットを通じて地図画像をタイル状に構成して配信する方式の標準です。詳細な実装は様々に異なりますが、共通する部分としては、ズームレベルに応じてサーバ側で描画され、(一般的には256ピクセル×256ピクセルの) タイル状に組み合わされた上で、単純なWEBサーバを介して配信される、といったところでしょう。

地図画像を生成する際に用いられる投影方式は、主としてメルカトル図法です。もっと正確に言えば、"Google投影法" と呼ばれる、メルカトル図法の特別な方式です。この投影方式では、およそ北緯及び南緯85°より極側は省略され、結果的に全世界を表示した際に地図が矩形となるということに特殊性があります。この投影方式は、一般的に、視覚的用途の地図に対してのみ役立つものです。

  • GoogleマップのタイルとOSM Slippy map tilenames は、標準のTMSと異なり、タイルをカウントする原点を左下に置くのではなく、左上に置いています。TMS#The Y coordinate flipped も参照してみてください。


WMS

Main page: WMS

WMS (Web Map Service) は地図画像配信のもう一つの標準です。これはTMSとは大きく異なり、クライアントに配信されるものは、URLによって指定された数々のパラメータを利用して、その場所に関して描画されたものとなります。基本的なパラメータは、何が見たいか (レイヤ) 、どの範囲を表示したいか (バウンディングボックス) 、画像の形式 (エンコードやサイズ) といったところです。

WMSにて一般的に用いられる "投影方式" は epsg:4326 です。"投影方式" と引用符を付けましたが、それは、epsg:4326 は実際には投影方式ではなく、WGS84に沿った緯度・経度のデータを利用していると言っているに過ぎないため、です。等価な投影方式は、 (標準緯線を赤道に置いた) 正距円筒図法です。この方式名は、(スケールを考慮に入れ無かった場合に) 緯度経度における1°が 1ピクセルになる、と平たく言うには良い名前です。結果的に、西経180°から東経180°、北緯90°から南緯90°までの全地球の投影は、辺の長さの比が 2:1 の長方形になります。

ウェイ、ポイント、ポリゴン

本項について、OSMは、既存のGISソフトウェアやデータ形式と異なります。OSMでは、その地図データの殆どを、2つの単純な element の種類、すなわちノードとウェイで表現します。多くの他のフォーマットでは "ポリゴン" を用意し、これを用いて二次元の領域を表現しています。 (OSMでは、「閉じられたウェイ」がこの用途に用いられています。)

ファイルフォーマット - "シェイプ"とは

GISデータの交換に用いられる最も普及したフォーマットは、Shapefile として知られている、拡張子 .shp のフォーマットです。このフォーマットは ESRI (ArcGISという、悪名高いソフトウェアを作った会社) によって導入され、ビジネス領域ではデファクトスタンダードとなっています。多くのGISプログラムは、シェイプファイルをサポートするか、少なくともそのプログラム用にコンバートする機能を有しています。ひとつのシェイプファイルは複数の "実際の" ファイルから構成されているため、コピー&ペーストを繰り返したりすると、容易に壊れてしまいます。

レイヤ - GIMPの世界の話?

多くのGISプログラムにおいて、"レイヤ" と称された、多くの人は Photoshop や GIMP 等でなじみのあるであろう概念が大きな役割を担っています。考え方はシンプルで、全てのデータを同じ一つのお皿に載せる代わりに、異なる種類のデータを一つずつ積み重ねよう、といったものです。この考え方は、データの利用・操作・分析において、物事をより簡単に、かつ強力にしてくれます。GISの世界での例を示します。

ある科学者が、サヘル地帯の衛星画像を持っています。研究のために、この科学者はこの画像を使って a) 主要な道路 b) 井戸 を確認しようとしています。この目的のため、この科学者は、持っていた画像を土台のレイヤとし、その上に2つのレイヤを作って重ねます。ひとつのレイヤはウェイ (この場合は道路) に、もうひとつのレイヤはポイント (この場合は井戸) となります。このようにすることは、以下に挙げる2つの理由から、必要なことです。

  1. データを整理された状態に保つため。道路と井戸は2つの違った性質のものであり、これらを1つのレイヤに詰め込んでしまうと、整然としているとは言えなくなります。
  2. 多くの地理情報を扱うフォーマット (.shpが最も普及している) は、1つのファイルでは1つの種類のデータしか扱えないため。


OpenStreetMapでは、何事もシンプルに保ちたいと考えています。これは、このプロジェクトの極めて重要なテーマでもあり、新しい編集者でも、可能な限り時間をかけず、かつ労せずに、編集用ソフトウェアを利用することができます。地図データは、概して1つのレイヤ上に集積されたものとして認識されます。 編集用ソフトウェアの中には、レイヤ分割の機能をサポートしたものもありますが、これは主にデータソースの操作やマージ機構のためのものです。これは制限事項ではありません! レイヤは、地図を作り上げていくための、違った考え方の1つです。OSMを基にした地図では、OSMタグを抜き取って、分割されたレイヤとして表示しています (例えば、クリック可能なマーカーを備えたWEB地図など)。同じように、OSMデータをシェイプファイルに変換する際にも、データを tags によって分割する処理が含まれています。

注意: ここで話題としているレイヤは、GISソフトウェアの中で言うところのレイヤです。"Layer"という言葉自体は、異なる文脈で様々に用いられます。