
第11回目の講義です.GIS(GRASS)を実際に利用するためには,既存のデータの入力や,きれいな出力を行なう方法などを考えなくてはいけません.ここではそれらについて説明します.
また,実習ではそれらの方法を具体例を示しながら説明します.
GISを構築していく際には,既存の地図データ等を用いて基本地図を作成し,その上に独自のデータベースを構築する場合が多くあります.ここでは,既存のデータの変換入力を中心とした入力の方法と結果をより詳細に出力するための方法,および他システムとの変換入出力(インポート・エクスポート)の方法について,簡単に解説します.
国土地理院等により多くのデジタル化された地図情報が作成・提供されています.これらによりGISの基本となる地図情報を容易に入手することが可能になってきました.国土地理院(国土交通省)で刊行しているCD-ROMの例を次に紹介します(それぞれの詳細は
国土地理院のホームページを参照して下さい). 1.数値地図50mメッシュ(標高),数値地図250mメッシュ(標高)
約50mや250m間隔(1kmも含む)に区切ったDEM
2.数値地図25000(地図画像),数値地図200000(地図画像)
地図をtiff形式等の画像として表したもの.
レイヤー分けにより等高線や道路・鉄道などの情報が区別可能.
3.数値地図2500(空間データ基盤)
行政区域・海岸線,道路中心線,鉄道,建物等のベクトルデータ.
4.数値地図25000(行政界・海岸線)
行政界・海岸線についてベクトルデータ.
5.数値地図25000(地名・公共施設)
地形図中の公共施設等の代表点や属性等をテーブル化した情報
6.日本国勢地図
7.細密数値情報(10mメッシュ土地利用)
このほかに,リモートセンシングの章で説明した人工衛星画像(宇宙開発事業団(NASDA),(財)リモート・センシング技術センター(RESTEC)等)などがあります.また,一般的ではありませんが,地質調査所(経済産業省産業技術総合研究所)から刊行されている
100万分の1日本地質図CD-ROM版や,防災科学技術研究所(文部科学省)の地すべり地形分布図データベースなどがあります.これらの既存データはデータの形式から,大きく分けてラスター型(DEMや画像),ベクトル型,サイト型に分けられます.ここでは,これらの中からは特に利用する機会が多いと思われる,ラスター型を中心に説明します.国土地理院の数値地図50mメッシュ(標高)や数値地図25000(地図画像)および人工衛星画像などはラスター型で情報が提供されています.ラスター型のデータの入力は,
r.in.asciiの例を(第5回実習)で説明しました.しかし,それぞれが独自の形式で提供されているために,GRASSのアスキー形式に変換しなければなりません.また,前にも講義で説明したように国土地理院の数値地図50mメッシュ(標高)は,経度・緯度による分割であり,UTM座標系ではそのまま利用することはできません.本講座では,UTM座標系を推奨しているので,ここではUTM座標系への入力を前提として説明します.(1)数値地図50mメッシュ(標高)
国土地理院の50mメッシュのような経・緯度分割によるデータを入力する場合は
r.in.asciiではなく,r.in.ll(longitude & latitude;経度・緯度)を用います.r.in.llはバイナリー形式のラスター型データを入力するコマンドであるため,それに対応したバイナリー形式のデータを作成しなければなりません(実習に,このためのフォートランプログラム例を示します).変換されたバイナリー形式のデータは,それぞれの位置(緯度経度)が明確なため,そのまま入力できます.注意しなければならないのは,地形図面の境界はUTM座標の値ではなく,緯度経度で区切られているためにUTM座標系を用いた場合は,これらの地形図の境界とGISでの領域境界とが一致ないということと,位置合わせを行なうために,標高データが補間されてもとの情報と厳密には一致していないという点です(もともとの標高を正確に利用したいのであれば,GRASSの設定で経・緯度系あるいはxy座標系などを利用してください).(2)数値地図25000(地図画像)
一般的にGRASSで画像を取り扱う場合は,まず画像入力用の中間ファイル等を作成するためのxy座標系で設定した別の作業用のLOCATIONとMAPSETを作成し,そこに画像を
r.in.tiff(Tiff画像をラスター形式で入力するコマンド)等を用いて入力し,画像の切りだし等の処理を行ないます.この画像をi.targetおよびi.rectifyの2つのコマンドを用いて,実際に利用するUTM座標のLOCATIONに投影します.国土地理院の25000分の1地形図の地図画像は,地図がTiff形式の画像として保存されています.画像の1ピクセルは0.1×0.1mm(約2.5m×2.5m)で,ビット毎に切り分けると,等高線や地名などが独立して利用できるようになっています.地形図そのものの画像であるため,余白や外側の線・文字等がはいっています.UTM投影のため,画像は長方形ですが,地形図は台形となっています.地図1枚単位で使用する場合は,気にならなければ無視しても問題ありませんが,複数枚にまたがる領域を使用するときには,実際の地図部分だけを切り出す作業が必要となります.実際には必要な部分のマスクを作成して抽出します.マスクの作成に必要な地図の4隅の情報は,CD-ROMの
DATAディレクトリの下のKANRI.CSVファイルの中に記述されています.この情報をもとにUTM座標系に投影します.(3)人工衛星画像
基本的な考え方は地図画像と同じですが,人工衛星画像には正確な位置を表す情報が無いという点が異なります.
人工衛星画像にはデータフォーマットに対応した入力コマンドが準備されています(LANDSATのMSS用;
i.tape.mss,LANDSATのTM用;i.tape.tm,SPOT用;i.tape.spotなどのCCT用(テープ)).また,この他のデータフォーマットに対応するためのi.tape.otherコマンドなどもあります.これらのコマンドを用いてxy座標系で入力します.入力した画像のフルシーンの例を下に示します.
人工衛星画像のフルシーンの例(クリックすると拡大します;70KB).
入力した画像は正確な位置情報をもたないので,画像と前述の地図画像など正確な位置を示す点(地上基準点:
GCP(Ground Control Point)との対応情報を用いて,座標変換を行なう必要があります.このGCPをGRASSで設定するためのコマンドとして,i.pointsが用意されています.人工衛星画像と地図を見比べながら,基準点の位置を指定していきます.この結果の情報をもとに目的とするデータベースへの座標変換・出力を行ないます.なお,対象とする範囲にもよりますが,上図に示したように1つのフルシーンはかなり広範囲であるため,これらの作業は必要範囲を切り出した後に行なうと不必要な計算を避け,より短い時間で処理が行なえます.なお,国土地理院の50mDEMに位置合わせを行なった,使いやすい人工衛星画像データが整備されつつあります.ベクトル型情報の代表的なものとして,国土地理院の数値地図2500(空間データ基盤)があり,これはCD-ROMで提供されています(以前は10000もありFDで販売されていました).座標系は基本的に平面直角座標系が用いられています.原点は左下隅で(0,0)となっています.GRASSに取りこむためには,まずGRASSのアスキー形式のベクトルデータに変換し(変換ソフトが必要です),
v.in.asciiで取りこみ利用します.簡易な方法として,UTM座標に変換するためのテーブルを作成し,v.transformコマンドでUTM座標系へ変換して利用することも出来ます(正式には,厳密な座標変換を行なうことが必要です).GRASSに入力した道路のベクトル型データ表示例を下に示します.
ベクトル型データ表示例(クリックすると拡大します;13KB).
この他に,既存のデジタルデータがない場合は,デジタイザーを用いた入力も可能です.デジタイザーは,図面上の点(連続すると線,囲むと面が表現できる)をカーソルやペンで入力するCAD等で良く用いられている装置です(写真を下に示す).
デジタイザーの例(装置)(クリックすると拡大します;6KB).
デジタイザーからの入力は,
v.digitコマンドを用います.このコマンドはマウスからの入力も可能であるため,デジタイザーがない場合は,画像等をイメージスキャナー等で取り込み,画面上でマウスを用いて,デジタイザーと同じように点・線ベクトルデータを取り込むことや領域を指定することが可能です(v.digitによるデジタイズの画面とその結果の例を下に示す).


v.digitの画面とその例(クリックすると拡大します;61KB).
一般的に,サイト型のデータはGRASSのサイトデータ形式に変更することで入力できます(簡単なソフトウェアが必要です).また,人工衛星による地球測位システムであるGPS(Global Positioning System;全地球測位システム)から,直接入力することも可能です.近年,GPSは精度が向上し,非常にハンディになってきました(写真を下に示す).
ハンディGPSの例(クリックすると拡大します;10KB).
このようなGPSをGISと接続して用いることにより,野外で調査を行なう分野などにおいて,現場でのサイト情報入力が容易になってきました.なお,GPSからの入力は,
v.in.gpsコマンドにより行ないます.画像等を出力する方法は多様です.目的(分解能や編集のしやすさ等)に応じた出力形式があります.
画像出力の最も簡単な方法は,前(第2回実習)で説明した様にモニターに出力した画像そのものを,xwdコマンドやxvなどのソフトを用いて取りこむ方法です.これらをWindows等で取り扱える形式の画像ファイルに変更することができます(本講座で示したほとんどのGRASSの画面はこの方法を用いました).しかし,これではディスプレイ画面の表現能力以上には使えません.もっと高分解能で出力したい場合は,
x0などのモニターの代わりにCELLを指定して大きな仮想のCELL画面に描く方法を用います.また,ラスター画像を直接tiffやppmのような画像形式に変換する方法(r.out.tiff,r.out.ppm)などもあります.プリンターを設定して,そこに直接出力する方法も便利です.GRASSのコマンド
p.mapやp.map.new(後述するps.mapも同じ)は,ラスターやベクトルを重ね合せたり,色をパターンに変えたり,ラベルやスケールおよび凡例をつけたりして適当なスケールでプリント出力することができます.ただし,利用できるプリンタードライバーが少ないために,どのプリンターでも利用できるわけではありません(ヒューレットパッカードのような,海外のメーカーは比較的簡単に設定できます).画像出力で示したp.mapとほぼ同等の操作で出力できる
ps.mapは,PostScript形式(拡張子.ps)のファイルを作成できます(個人的には,これがおすすめです).この場合,プリンターへの依存度がほとんどないために(デフォルト設定で良い),プリンターが設定できない状態ではこちらの方が便利です.PS形式のファイルは,基本的にテキスト形式ですので,エディター等で直接中身を変更することもできます.また,ベクトル情報はベクトルのままですので,詳細な図面を描く際には非常に便利な形式です.ただし,ファイルは大きなサイズになってしまいます.gimp(あるいはGhostscript,Ghostviewなど:linux版,Windows版)等を利用すればPS形式のファイルを表示することや一般的なプリンターへ出力することも可能になります.Windowsのドローやペイント系ソフト(例えば,コーレルドロー8やPAINT SHOPなど)では,インポートも可能です.特にドロー系のソフトでは,ベクトル線のエディティング等もできます.また,前回の講義で示したバーチャルリアリティモデル言語(VRML)のファイルに変換することも可能です.VRMLの作成は,
p.vrmlコマンドにより行ないます.GRASSの情報を他のGISやCADのファイル形式へ変換出力(エクスポート)することが可能です.例えば, GISソフトARC/INFOの形式にはベクトルデータを
v.out.arcにより変換でき,AutoCadのDXF形式にはv.out.dxfにより変換できます(注意;完全互換ではない場合もあります.).また,逆にこれらのソフトウェアでのファイル形式をGRASSに変換入力(インポート)することも可能です(v.in.arc,v.in.dxf).これらの機能をまとめた,v.exportやv.importなどのコマンド(取り扱えるファイル形式をそれぞれまとめた表を下に示します.なお,バージョンにより取り扱える形式が異なります)もあります.また,ラスター情報に関しても幾つかのインポート・エクスポートを行なえるコマンドがあります.| インポート(v.import) |
エクスポート (v.export) |
|
ASCII DLG file |
ASCII DLG file |
|
Binary DLG file |
|
|
ASCII DIGIT file |
ASCII DIGIT file |
|
Binary DIGIT file |
|
|
ASCII SCS-GEF file |
ASCII SCS-GEF file |
|
ASCII ARC/INFO file |
ASCII ARC/INFO file |
|
ASCII DXF file |
ASCII DXF file |
|
ASCII TIGER file |
|
データの入出力
情報源(国土地理院・NASDA・RESTEC・地質調査所・防災科学技術研究所等)
入力(デジタル化された地図情報)
(以上,第11回講義)
第11回 実習のページへ 大阪市立大学広報ホームページ