第20回gis学会grassハンズオン

103
GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション GRASSハンズオンセッション GRASSを用いた 衛星・GISデータ処理の基礎 GISA FOSS4G分科会/ OSGeo財団日本支部/農業環境技術研究所 岩崎亘典

Upload: nobusuke-iwasaki

Post on 07-Jul-2015

3.445 views

Category:

Documents


5 download

DESCRIPTION

第20回GIS学会GRASSハンズオン

TRANSCRIPT

Page 1: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

GRASSハンズオンセッション

GRASSを用いた衛星・GISデータ処理の基礎

GISA FOSS4G分科会/OSGeo財団日本支部/農業環境技術研究所

岩崎亘典

Page 2: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

はじめに● 本日のアジェンダ

● GRASSについて– 特徴や歴史など。日本におけるGRASS

● GRASSの基本的操作– データ構造について、インポート・エクスポート、

● GRASSを用いた衛星画像分析– 東日本大震災被災地域(主に福島~宮城)における

浸水域と浸水水田面積の推定

Page 3: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

GRASSとは?● 強力な解析機能を持った、オープンソースのデス

クトップFOSS4Gの代表格● デスクトップFOSS4Gの代表格

– もうすぐ30歳!– 現在は最新版が6.4.1。10/11に6.4.2RC

● 強力な解析機能– ラスタ、ベクタ、画像を問わない

● オープンソース– GPLで公開

Page 4: 第20回GIS学会GRASSハンズオン

2010

, Mar

kus

Net

eler

1987USA(GRASS 2.0, no Web!)

1995USA 1997,

Univ. ofHannover,Germany

2002ITC-irst Trento+ Baylor

GRASS: 25 28 years of GFOSS

2011/10/12

Page 5: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

解析機能について● ラスタ、ベクタ、イメージ、etc...

Page 6: 第20回GIS学会GRASSハンズオン

2010

, Mar

kus

Net

eler

Geostatistics with GRASS and R-statsR statistical software is run inside a GRASS session: R reads and writes data directly from/to GRASS

Page 7: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

日本におけるGRASS● 升本先生とベンカ先生

● この二人は外せない● 大阪市大と(株)オーク

ニーによる国際化● 現在も文科省の受託プロ

ジェクトでチュートリアル等を作成中● 配布したDVDに入っていま

Page 8: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

GRASSを使う上での基礎知識(1)● 基本はコマンドラインで行うプログラム

● GUIは有るけど、GUIを使ってコマンドを呼び出している

Page 9: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

代表的なコマンド例コマンド 動作内容

d.rast ラスターマップレイヤーを表示、またはオーバーレイ(重ね書き)する。

d.rgb 指定した3つのラスターマップレイヤーを赤色、緑色、青色にそれぞれ対応させ重ね合わせ表示する。

g.gisenv ユーザーの現在のGRASS変数を出力、または変更する。

g.region 対象とする地域の範囲や分解能を変更したり、標準に戻すなどの管理を行う。

r.contour ラスターマップレイヤーから、指定された高さの等高線マップを作り出す。

r.mapcalc ラスターマップレイヤーの数値演算を行う。

r.univar ラスターマップの非NULLセルから単変量統計を計算する。

v.info ベクトルマップの基本情報を出力する。

v.to.rast GRASSのバイナリーベクトルマップをGRASSのラスターマップへ変換する。

i.composite 指定した3つの画像バンドファイルからカラー合成画像を作る。

i.fft ラスター画像に対して高速フーリエ変換(FFT)を行う。

Page 10: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

GRASSを使う上での基礎知識(2)● 独自データベースを作成し、その中に格納

● 実際はディレクトリ構造で管理● 標準的なGISデータのファイルは使用可能

– v.in.ogrやr.in.gdalを使ってインポート– r.externalまたはv.externalで外部ファイルも使用可

● 上位から「GISデータディレクトリ」、「ロケーション」、「マップセット」と呼ばれる

Page 11: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

データベースの説明

GISデータディレクトリ ロケーション マップセット ジオメトリ・属性データ

C:\GIS_DATA\GRASS localtion1

location2

PERMANENT

mapset1

mapset2

RASTER data

VECTOR data

Volume data

GISデータを格納しておくためのフォルダ特殊な機能は無し

重要!!測地系と座標系を定義異なるものは混在出来ない!

後で変更不可

(+解析範囲と解像度)

重要!!実際に作業をする単位PERMANENTには共通するデータを格納各mapsetに個別データを入れる

(用途別、形式別等)

実際のデータ中を見る機会はほとんど無い

Page 12: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

引用:国土交通大学(@geo80k氏)作成資料

Page 13: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

実習の流れ(1)● 目標:東北地方太平洋沖地震で発生した津波で、

浸水した水田を特定する● ロケーションとマップセットの作成

● 一番重要● データのインポート

● ラスタデータ(LANDSAT)● ベクタデータ(国土数値情報)

● データ表示の基礎● ラスタとベクタの表示のしかた

Page 14: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

実習の流れ(2)● NDVI、NDWIの算出● 津波浸水域と水田域の推定

● 二時期の画像の差分– MASKの作成、Mapカルキュレータの使用法

● 市町村毎の津波浸水域面積の算出● ベクタを使ったラスタの統計

Page 15: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

使用するデータ(衛星画像)● LANDSAT 5号(TM)および7号(ETM+)

● 水稲作付け域の推定– 水田湛水期(TM, 2004年6月)– 水田収穫期(ETM+, 2001年9月)

● 同じ年の方がいい● 津波浸水域の推定

– 津波前(ETM+, 2002年4月)– 津波後(TM, 2011年4月)

● それほど時期が違わない方がいい

Page 16: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

今回の分析 ~画像の差分~

● 左が津波前、右が津波後の画像● この二つの画像で違う部分を抽出する

● 二時期の画像の差分を評価

Page 17: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

LANDSATデータのダウンロード● GLOVISもしくはEarthExplorerがおすすめ

● GLOVIS http://glovis.usgs.gov/

● EarthExplorer http://edcsns17.cr.usgs.gov/NewEarthExplorer/

● 見た目はEarthExplorer、使い勝手はGLOVIS

Page 18: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

Page 19: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

使用するデータ(国土数値情報)● 市町村境界線

● 対象は宮城県南部から福島県にかけて

Page 20: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

使用するデータ● C:\GIS_DATA以下にあります

● さらにその下のtifとshpフォルダ

Page 21: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

使用するGRASSのバージョン● GRASS 6.4SVN

● 文科省受託プロジェクト「FOSS4Gを活用した衛星データ活用のためのオープンリソースの開発」の成果品– http://www.osgeo.jp/foss4g-mext/

– チュートリアル等もあります

Page 22: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

GRASSの基本操作

Page 23: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

GRASSの起動● GRASS 6.4 SVNをダブルクリック● 右のような画面が出るはず

● ここで作業を行う– GISデータディレクトリ– ロケーション– マップセット

を規定する

Page 24: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

ロケーションの作成● GISデータディレクトリを

「C:\GIS_DATA\GRASS」に設定● ロケーションウィザードをクリック

Page 25: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

ロケーションの設定● ロケーション名は「TOHOKU_UTM54」● 「地理参照ファイルを選択」をクリック● 「GIS_DATA\tiff\....」内のtifを選択

● 出来れば「L5107034_03420110405_B30.TIF」

Page 26: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

ロケーションの設定● 要約が出るので「終了」

をクリック● メッセージはOKをク

リック● 作成した

「TOHOKU_UTM54」を選択、「PERMANENT」をクリックして「GRASSの起動」

Page 27: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

GRASSの画面の説明● GRASS GISレイヤーマネージャ

● 表示するデータや処理の選択● GRASS GIS Map Display

● データの表示

Page 28: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

ベクタファイルのインポート● 「ベクトルデータをインポートします」をクリック

● OGRデータソース名に「shp」の中の「ana_area.shp」を選択

● 出力するベクトルマップを「ana_area」して実行● 終了したら閉じる

Page 29: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

データの表示● 「レイヤマネージャのベクターマップレイヤーを追加」をクリック

● 「入力するベクトルマップ名」で「ana_area」を選択してOK● 選択などで何を表示するか決める(areaにする)

Page 30: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

データの表示● このようにデータが表示される

● 四方向矢印で移動、虫眼鏡で拡大・縮小● コメント矢印で属性表示

– ここで一度終了。ファイル→終了で

Page 31: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

新しいマップセットの作成● 起動画面の「マップセットの作成」をクリック● 「LANDSAT」と入力。これを選択して起動

Page 32: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

ラスタのインポート● 「ラスタデータのバルクインポート」を選択

● 単独のものインポートする場合はその上● ソースタイプは「ディレクトリ」● tiffの中のフォルダを一つ選択

● 最後がB10~50と70を選択して「インポート」– 時間がかかるけど、お待ち下さい

Page 33: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

申し訳ないが、ちょっとした注意!● 新しいマップセットは本来はGRASSを終了させる

ことなく新しいmapsetを作れます● が、Windows版では出来ません...

● GIS_LOCKというファイルが作られないため?● なので、マップセットの作成や変更の際には、一度GRASSを終了して下さい。● ごめんなさい・・・。

Page 34: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

ラスタデータの表示● ラスタデータの表示として二つ説明

● 単バンド画像– 白黒の画像

● RGB合成画像– R(赤)、G(緑)、B(青)に衛星データのバンド

を仮想的に割り当てるやり方

Page 35: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

衛星画像のバンドについて● 波長毎にデータを記録

している● LANDSATの場合は右

– その他はチュートリアルを参考

Page 36: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

単バンドデータの表示● 「ラスタマップの追加」をクリック● 「d.rast」で表示するマップを選択

● ここではB40を選択

Page 37: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

データの表示● ベクタデータと同様に表示される

● 移動、拡大、縮小等も同じ

Page 38: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

RGB合成バンド● 「ラスターマップレイヤーの追加」の「RGBレイヤー追加をクリック

● redにB30,greenにB40,blueにB20を設定

Page 39: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

RGB合成画像● カラーで表示される

● これはナチュラルカラーといわれる

Page 40: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

LANDSATの場合のカラー合成

● トゥルーカラー:R=band3, G=band2, B=band1● フォルスカラー:R=band4, G=band3, B=band2● ナチュラルカラー:R=band3, G=band4, B=band2● 中間赤外合成::R=band7, G=band5, B=band3

● サンプルは、チュートリアルで

Page 41: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

残りのデータのインポート● 残りのデータもインポートして下さい。

● 使うのはバンドはB30~B50まで、それだけでOK● インポートが終了したら、新しく「INDEX」とい

うマップを作成

Page 42: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

いまさらですがLANDSATデータの命名規則● フォルダ

LE71070342002110EDC00

● ファイル

● L71107034_03420020420_B10.TIF

● GLOVIS等からDLするとこれに準拠する

センサー名5号ならLT5

path row

年 DOY年始めから数えて何日目か

センサー名5号ならL5

path row

年 月日

row?

バンド名

Page 43: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

NDVI・NDWIの算出

Page 44: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

実習の流れ(2)● NDVI、NDWIの算出● 津波浸水域と水田域の推定

● 二時期の画像の差分– MASKの作成、Mapカルキュレータの使用法

● 市町村毎の津波浸水域面積の算出● ベクタを使ったラスタの統計

Page 45: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

NDVIとNDWI● NDVI(正規化植生指数)

● 植物のバイオマスや生育状況を反映– 1~-1の値を取り、大きいほど植生が多い

NDWI(正規化水指数)● 地表面の水の状態を反映

– 1~-1の値を取り、大きいほど水分が多い

NDVI=band4−band3band4+band3

NDWI=band3−band5band3+band5

Page 46: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

津波浸水域の評価

● 左が津波前、右が津波後の画像● この画像からNDWIを算出● 津波前にNDWIが小さく、津波後に大きい所を浸水域と定義

Page 47: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

水田域の評価

● 左が湛水期、右が収穫前の画像● 湛水期からNDWI、収穫前からNDVIを算出● 湛水期にNDWIが大きく、収穫前にNDVI大きい所を水田域と

定義

Page 48: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

算出する指標● 水稲作付け域の推定

● 水田湛水期(TM, 2004年6月) :NDWI● 水田収穫期(ETM+, 2001年9月) :NDVI

● 津波浸水域の推定● 津波前(ETM+, 2002年4月) :NDWI● 津波後(TM, 2011年4月) :NDWI

Page 49: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

新しいマップセットの作成● 「INDEX」というマップセットを新しく作成

● NDVIやNDWIの計算結果を保存するため

Page 50: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

MASKとは● 解析範囲を限定するために使う

● 沿岸の市町村だけを対象とする● ラスターからしか作れない

● 市町村境界のベクタからラスタを作成● 上記のラスタから作成

Page 51: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

マップタイプの変換● 「ベクトル→ラスター」をクリック● 「入力するベクトルマップ名」に

「ana_area@PEARMANENT」● 「出力するラスターマップ名」に「ana_area」

Page 52: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

マップタイプの変換● 「オプション」タブを選択

● ラスター値のソースを「val」● ラスター値を「1」

● 変換結果を表示して確認

Page 53: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

MASKの作成● 「ラスタ」→「マスク」をクリック● 「MASKを使用するためのラスターマップ」に先ほどの「ana_area」を選択して実行

Page 54: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

画面表示を更新● 画面の更新ボタンをクリック

● 右下に「マスク」と表示されていればOK

Page 55: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

異なるマップセットの利用● 現在のマップセットは「IDNEX」● 「LANDSAT」のデータも使えるようにしたい

● NDVI等の計算やデータの表示● 「マップセット作成」をクリック● 「LANDSAT」をチェック

Page 56: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

表示テスト● 合成カラー表示を行う● 「LANDSAT」の中のレイヤを選択

● R=B30, G=B40, B=B20● MASKが設定されているので、限られた範囲だけ

が表示される

Page 57: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

NDVI及びNDWIの算出● NDVIの算出は、「地図と地図の演算」

● MapCalculatorを使う● 「ラスターマップカルキュレータ」をクリック

Page 58: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

NDWIの計算● 計算式は下の通り

● まず、2004年6月のNDWIを計算● 「ラスターマップの名前」にNDWI_200406● 「関数を挿入」から「float(x)」を選択● 「マップを挿入」から

「L5107034_03420040604_B30@LANDSAT」を選択

● float(x)の括弧を調整

NDWI=band3−band5band3+band5

Page 59: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

Page 60: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

NDWIの計算(2)● 「-」記号と

「L5107034_03420040604_B50@LANDSAT」を追加

● 「/」を追加して計算式の分母を入れる● 式の枠の中でコピペ出来るので活用

Page 61: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

NDWIの計算(3)● 計算結果は小数型

● 整数の方が取り回ししやすい● 整数になるように、計算を工夫

● 計算結果を1000倍● int(x)を加える

– float(x):ラスターを小数型にする関数– int(x):ラスターを整数型にする関数

Page 62: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

NDWIの計算(4)● 計算を実施し、表示

Page 63: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

NDWIの計算(5)● 2002年4月、2011年4月のNDWIを計算

● コピペを活用

Page 64: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

間違えた場合● ファイル→マップ管理→削除

Page 65: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

NDVIの計算● 計算式は下の通り

● 2001年9月のNDVIを計算● 「ラスターマップの名前」にNDVI_200109

– バンドが違うだけ

NDVI=band4−band3band4+band3

Page 66: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

津波前後のNDWIの比較

Page 67: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

差分を計算● 出力ファイル名はDIFF_201104_200204

Page 68: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

水田のNDWIとNDVIの比較

Page 69: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

差分を計算● 出力ファイル名はSUM_200109_200406

● 差分といっても二時期の違いという意味

Page 70: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

この二つの重複領域を算出

● ともに高い値を示す所を抽出

Page 71: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

MASKの削除● また別のマスクを利用するため

● Cmdの欄に「r.mask -r」と入力

Page 72: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

津波浸水域内の水田推定と市町村毎の面積推計

Page 73: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

新しいマップセットの作成● LULCとして下さい

● 土地利用・被覆(Land Use and Land Cover)● mapset「INDEX」にアクセス出来るように

Page 74: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

分類の手順

● これまでの計算結果を組みあわせ

水田湛水期水域マップ

SUM_201104_200406

NDWI_200406

水田域マップ

DIFF_201104_200204

津波浸水域マップ

津波浸水域内水田マップ

再分類

マスク 再分類再分類

マップ演算

Page 75: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

ラスタの再分類● ラスタの値に基づいて再分類を行う

● NDVI > 0.5 であれば緑地とか、NDWI > 0であれば水面など

● 「定義ファイルを利用した再分類」をクリック

Page 76: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

水田湛水期水域の定義● 「再分類されるラスターマップ」を

「NDWI_200406@INDEX」、出力するラスタマップを「WATER_200406」

Page 77: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

水田湛水期水域の定義(オプション)● オプションタブの「再分類ルールを含むファイ

ル」で「C:\GIS_GATA\script\water_reclass.txt」● 中身は右の通り

Page 78: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

マスクの作成● 「WATER_200406」をマスクとして使用する

Page 79: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

水田域マップ● 「再分類...」は

「SUM_200109_200406@INDEX」● 「出力..」は「PADYY_200406」● オプションの「再分類ルール...」は

「C:\GIS_GATA\script\paddy_reclass.txt」

Page 80: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

分類結果

● 細かいノイズがあるものの大体上手くいってる● 再分類の値は実際は試行錯誤● クリックして値を確認→1のはず

Page 81: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

津波浸水域マップ● 「再分類...」は

「DIFF_201104_200204@INDEX」● 「出力..」は「FLOOD_201104」● オプションの「再分類ルール...」は

「C:\GIS_GATA\script\flood_reclass.txt」

Page 82: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

分類結果

● ちょっと誤分類が多い・・・。● クリックして値を確認→1のはず

Page 83: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

津波浸水域内水田分布図● ラスタマップカルキュレーターを使用● 算術演算ではなく、論理演算● 作成するラスタ名は

「PADDY_FLOOD_201104」● マップ演算関数としてif(x, a)をクリック

Page 84: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

if(x, a)の説明● 条件式xを満たした場合、aという値を取る

● この場合、「FLOOD_201104@LULC == 1」をまず入れる

Page 85: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

if(x, a)の説明(2)● if(x, a)の「a」の部分には、if(x, a)が入ることも

出来る。● 「if(PADDY_200406@LULC ==1,1)」とする

● つまり「津波浸水域かつ水田域の場合に1」という式になる。

Page 86: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

衛星画像と重ね合わせてみる● マスクを削除してから衛星画像と重ね合わせ

● マップセット作成でLANDSATも追加– 水域を除外し切れていない・・・

Page 87: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

市町村毎の集計● GRASSを終了させ、「GRASS 6.4.SVN with MSYS」というアイコンから起動

● これまで使ってきた「GRASS 6.4 SVN」だと集計をするときにエラーが出るため。● 原因は調査します

Page 88: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

起動画面● 英語になっていますが、基本的に同じ

● LULCを選択して起動● Layer Managerも英語ですが、各ウインドはある程度日本語化されています。

Page 89: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

市町村データのコピー● 市町村データを「PERMANENT」から「LULC」に

コピーする● File → Manage maps and volumes → Copy

● 「コピーするvectファイル」で、● 「PERMANENT」内の「ana_area」を選択● 「area@PERMANENT,city_stats」と入力

Page 90: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

注意!!● 「ana_area@PERMANENT,city_stats」のカンマ

の後にはスペースは入りません!● 「RUN」をクリック

Page 91: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

市町村毎の統計● Vector → Update area attributes from raster● 「ベクトルポリゴン名」で「city_stats@LULC」● 「統計値...」で

「PADDY_FLOOD_201104@LULC」● 新しい属性列の列プレフィックスで「PF」

● この文字が各種集計値の頭につきます– 長すぎるとエラーが出るので注意!

● RUN

Page 92: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

計算結果の確認● GIS Layer ManagerのCommand outputを選択● Query raster/vector Mapsを選択

Page 93: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

計算結果の確認● ベクトルマップをクリックすると統計値が表示

● ただし、「面積」ではなく「カウント」

Page 94: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

面積の計算● まず計算結果を出力する列を追加する

● Database → Vector database connections → Add columns

● 「属性...」で「city_stats@LULC」を選択、「新しい列名と...」に「PF_AREA INT」と入力、RUN

Page 95: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

面積の計算(2)● 計算の実施

● Database → Vector database connections → Change values

● 「属性テーブル...」で「city_stats@LULC」を、「アップデートする列」で「PF_AREA」を選択

Page 96: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

面積の計算(3)● 「Option」タブの「検索する列」に「PF_n * 90」と入力してRUN● 「PF_n」は対象セルの個数。LANDSATの画像のセ

ルの面積は90m2● クリックして確認

Page 97: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

面積に基づく表示● 「Add various vector-based map layer」の

「Add thematic layer」をクリック

Page 98: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

面積に基づく表示(2)● 「ベクトルマップ名」で「city_stats@LULC」、

「主題ディスプレイ...」で「PF_AREA」を選択● 色分けして表示されます(ただしQGISの方が良い

かと)

Page 99: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

終了のさせ方● File → Exitを選択● クリーム色の画面で「exit」と入力

Page 100: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

お疲れさまでした!!● 長丁場のハンズオン、お疲れさまでした● この実習はあくまで「練習」です

● 今回求めた面積等はあまり正確ではありません– 見ての通り、水域とかも混ざってますし

● 時間の都合で、基礎的な説明をはしょっている部分があります● 特に「領域」(region)の概念● 衛星利用チュートリアルに詳しく説明してあるの

で、そちらをご参考に

Page 101: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

FOSS4G Tokyo/Osakaのお知らせ● OSGeo.JP主催のイベント

● FOSS4G Tokyo 11/5~7● FOSS4G Osaka 11/9, 11~12

● 是非ご参加下さい!● 詳しくはWebで

– http://www.osgeo.jp

Page 102: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

ご意見御質問などは● FOSS4G 分科会ML

● https://groups.google.com/group/gisa-foss4g?hl=ja

● OSGeo.JPディスカスML● http://lists.osgeo.org/mailman/listinfo/osgeojapan-discuss

● アンケートにもご回答下さい● 午後に特別セッションがあるので、そちらにも!

Page 103: 第20回GIS学会GRASSハンズオン

 GISA第20回研究発表大会 FOSS4G分科会ハンズオンセッション

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

講師の連絡先e-mail: [email protected]

Twitter: @wata909