調査地のGISデータベース構築に挑戦(6) ETM+画像データをGRASSデータベースにとりこむ
いよいよ、第3回でダウンロードしたランドサット画像をGRASSにとりこむ。
下準備
ダウンロードファイル、elp185r062_7t20000806.tar.gzを解凍して中身を見る。
> tar zxvf elp185r062_7t20000806.tar.gz
> cd elp185r062_7t20000806
> ls
p185r062_7k20000806_z32_nn61.tif p185r062_7t20000806_z32_nn20.tif
p185r062_7k20000806_z32_nn62.tif p185r062_7t20000806_z32_nn30.tif
p185r062_7p20000806_z32_nn80.tif p185r062_7t20000806_z32_nn40.tif
p185r062_7t20000806.met p185r062_7t20000806_z32_nn50.tif
p185r062_7t20000806_z32_nn10.tif p185r062_7t20000806_z32_nn70.tif
雰囲気でだいたいわかるが、拡張子".tif"のついているファイルが衛星画像で、拡張子の直前の番号がバンド名。拡張子が".met"のものはテキストファイルで、この衛星画像のメタ情報が記されている。
このメタ情報をもとにGRASSのロケーションを作成する。
GRASSロケーション作成
GRASSを起動する。ここでは、wxPythonを使ったGUIを用いる。
> grass -wx # -wx オプションでwxPython GUIを指定。
- 起動画面右の「Location wizard」をクリック
- 次画面でデータディレクトリとロケーション名を入力
- 次画面で「Use coordinate system of selected georeferenced file」をチェックする。
ダウンロードしたETM+画像はGeoTIFF形式で、画像の測地系、楕円体、投影法の情報がメタファイルに記されている。上記を選択することで、GRASSが選択されたTIFFファイルの地理情報を読みとってくれるのだ。ちなみにダウンロードされたファイルは、WGS84測地系(WGS84楕円体)にもとづき、UTM(ゾーン32、赤道のY値は0)に投影されたものである。
- 次画面で、どのバンドでもよいからtifファイルを選択。
- 次画面で「Finish」をクリックすると、「Do you want to set the default region extents and resolution now?」と表示されるので、「はい」を選択する。
ここで、ロケーションのデフォルト範囲と地上解像度を設定する。.metファイルの以下の行を参考に、東西南北の座標値を入力する。
SCENE_UL_CORNER_MAPX = 596362.500 # 画像の左上のX座標値
SCENE_UL_CORNER_MAPY = -216514.500 # 同、Y座標値
SCENE_UR_CORNER_MAPX = 778164.000 # 画像の右上のX座標値
SCENE_UR_CORNER_MAPY = -243019.500 # 同、Y座標値
SCENE_LL_CORNER_MAPX = 557631.000 # 画像の左下のX座標値
SCENE_LL_CORNER_MAPY = -396406.500 # 同、Y座標値
SCENE_LR_CORNER_MAPX = 739489.500 # 画像の右下のX座標値
SCENE_LR_CORNER_MAPY = -422940.000 # 同、Y座標値
地上解像度は、もっとも高解像度のバンド8、すなわちパンクロ画像にあわせる。.metファイルを見ると、
GRID_CELL_SIZE_PAN = 14.250 # パンクロ画像の地上解像度
GRID_CELL_SIZE_THM = 57.000 # 赤外線画像の地上解像度
GRID_CELL_SIZE_REF = 28.500 # 可視光画像の地上解像度
とあり、14.250mとわかる。x,yとも同じ値を記入する。
これでロケーションが作成され、自動的に「PARMANENT」というマップセットがその中に作られる。
GUIで今作成したロケーションのマップセットPARMANENTを選択して左下の「Start GRASS」をクリックすると、GRASSが起動する。
GRASSへの衛星画像のインポート
GRASSの「GIS Layer Manager」画面で、File → import raster map → Multiple raster data import using GDAL を選択する。
「Choose directory」で、ETM+画像を格納したディレクトリを指定する。Select file extensio を "tif"として、「import」ボタンをクリックすると、ディレクトリ内のすべてのtif画像をGRASS GISにインポートしてくれる。
インポートされたデータの名前は、それぞれのファイル名と同じになっている。
これは、コマンドラインでの操作としては、それぞれのファイルに対し
r.in gdal -o input="filename" output="filename"
を行なったのと同じことになる。
必要に応じて、インポートした地図データの名前は変更できる。
次回はSRTM画像をGRASSにとりこみ、SRTMの標高データをもとに等高線地図を作成する。