【ArcGIS Pro】あなたのための水文解析
本記事では,氾濫シミュレーションで使える基礎的なデータの構築に向け,ArcGIS Proを用いた水文解析のやり方を備忘録的に書いていく。
ArcGIS Proを用いた水文解析について参考になるサイトには,
「ArcGIS Pro: ArcGISで水文解析を行う方法 (ESRIジャパン)」
「水文解析のサンプル アプリケーション(ESRI)」
「簡便な土砂災害孤立リスク評価マップ作成手法(北海道立総合研究機構)」などがある。
また,QGISを用いた水文解析について参考になるサイトには,
「[初心者] QGISでの流域界(集水域)作成方法(水文解析)」
「ラスタデータの分析(GIS実習オープン教材)」
「QGIS:DEMの領域内のすべての流域界と流路のベクタを作成する(SKラボ.net)」などがある。
さらに,SAGA GISを用いた水文解析について参考になるサイトには,
「SAGAを使って地形解析(浅野友子 ホームページ)」などがある。
本記事はそれらの二番煎じにはなるが,GIS初心者でも解析できるように
丁寧に解説していく。
今回は静岡県東部の伊豆半島あたりを対象に,ArcGIS Proを用いて
「流向ラスタ・累積流量ラスタ・河川次数ラスタ・流域ラスタ・集水域ラスタ」の計5つのラスタを作成していく。
1. 水文解析とは?
そもそも水文解析とは何なのか。
水文解析とは,流域の範囲・河川の流路・流量などを把握する手法である。これにより,治水対策(洪水予測,防災対策)・水資源管理・災害リスク評価・都市計画におけるインフラ整備などに役立てることが可能である。一昔前の水文分野の研究では,地形図や空中写真などから河道位置と集水域を手作業で抽出・整理し,降雨量をもとに河川流量や水収支の解析を行っていた。これらの作業には時間やコストがかかり,解析対象の流域が広いほど根気のいる作業であった。
近年では,地理情報システム(GIS:Geographic Information System)の発達や全国的な数値標高モデル(DEM:Digital Elevation Model)の整備により,コンピュータ上で簡単に解析できるようになっている。
2. 標高データの取得方法
GISを用いたほとんどの水文解析で必要なのは標高データである。
標高についての詳しい説明は,
GISで学ぶ野生動物・鳥類の生態の「【QGIS3】国土地理院の基盤地図情報(数値標高モデル)のXMLファイルをQGISへインポートする方法(https://www.inokumaaranuu.com/qgiskmlimport/#rtoc-3)」や
ESRIジャパンの「GIS 基礎解説 標高データ(https://www.esrij.com/gis-guide/other-dataformat/elevation-data/)」を参照されたい。
本記事の説明もこれらのサイトを参考にしている。
今回は国土地理院の数値標高モデル(DEM)(https://fgd.gsi.go.jp/download/menu.php)と,
山崎ら[1]によって考案された日本域表面流向マップ(J-FlwDir: Japan Flow Direction Map)(https://hydro.iis.u-tokyo.ac.jp/~yamadai/JapanDir/)の2つを用いる。
2.1 DEMの取得
国土地理院の基盤地図情報ダウンロードサービスでは,10mDEM・5mDEM・1mDEM(2023年11月より整備開始)の3種類が提供されている。5mDEMは10mDEMに比べ精度が良いが,山岳地域ではデータの欠損があるため本記事では10mDEMを用いる。
※ 基盤地図情報ダウンロードサービスからデータをダウンロードする際には,必ずユーザー登録(https://ssosv.gsi.go.jp/piss/Attention.aspx)を行う必要である。
本記事では静岡県東部を対象とするため,下記の部分のデータをダウンロードした。ダウンロードデータは圧縮されているのため解凍し,一つのフォルダの同じ階層にまとめておく。
解凍すると「○○○○.xml」という形式のファイルがあることがわかる。GISで使う際にはGeoTIFF形式に変換する必要があり,ArcGIS Pro内でもzip形式のファイルからDEMを作成する機能があるが少し時間がかかってしまうため株式会社エコリスの基盤地図情報標高DEM変換ツール(https://www.ecoris.co.jp/contents/demtool.html)を用いる。
基盤地図情報標高DEM変換ツールをダウンロードし,「変換結合.vbs」というアプリケーション用いてGeoTIFF形式に変換する。このツールでは,一つ一つの「○○○○.xml」ファイルがそれぞれ1枚のGeoTIFF形式に変換される。
アプリ内では,これらを全て結合させた状態(すべての画像を1枚にまとめた状態)まで出力することが可能である。すべてを結合したGeoTIFFが「merge.tif」という名前で保存される。
2.2 日本域表面流向マップ(J-FlwDir)の取得
日本域表面流向マップとは,地理院の「国土数値情報」「基盤地図情報」を用いて, 東京大学と京都大学が開発した高精度水文地形データセット(https://hydro.iis.u-tokyo.ac.jp/~yamadai/JapanDir/)である。
ここでは,「表面流向データ(表面流向と整合性のとれた水文地形データレイヤ)」「水文補正標高」「上流集水面積」「上流集水ピクセル」「河道幅」「直近の河道からの相対高さ」などのデータを取得することができる。詳細は山崎ら[1](https://www.jstage.jst.go.jp/article/jscejhe/74/5/74_I_163/_article/-char/ja/)を参照されたい。
本記事では,高解像度水文地形データセットの中でも
「Flow Direction Map / 表面流向」「Adjusted Elevation / 水文補正標高」「Flow Accumulation Pixels / 上流集水ピクセル数」を3つを用いる
2.3 県境データの取得
DEMおよび日本域表面流向マップは,陸地部分だけでなく海部分まで含まれたデータである。欲しいデータは陸地部分なので,あらかじめ県境のポリ後データをダウンロードしておく。
本記事では,県境データとしてESRIジャパンの「全国市町村界データ(https://www.esrij.com/products/japan-shp/)」を用いる。
サイトからダウンロードし,解凍しておく。
3. DEMを用いた水文解析
この章では2.1章で取得したDEMをもとに,ArcGIS Proの解析ツールを用いて基本的な水文解析を行っていく。流れは以下のとおりである。
3.1 標高データの前処理(窪地埋め)
水文解析の前に標高データの前処理を行う。
基盤地図情報より取得したDEMデータをもとに流向ラスタや累積流量ラスタを作成すると,地形の細かな窪地(凹地形)の影響で意図しない結果が出る時がある。そのため,窪地の除去処理を行う。
ArcGIS Proを開き2.1章で取得した「merge.tif」をドラッグ&ドロップで表示させる。取得データの北西部には富士山があるため,配色が引っ張られている。
また,2.3章で取得した県境データ「japan_ver84.shp」もドラッグ&ドロップで表示させる。
窪地を埋めるため,上部の解析タブのツールからジオプロセッシングウィンドウを開き,「サーフェスの平滑化」と検索してウィンドウを開く。
入力サーフェスラスターを「merge.tif」(選択形式)
出力サーフェスラスターを「Fill_merge」に設定し実行する。
対象とする範囲によるが,本記事だと10秒程度かかる。
ラスタの見た目には変化はないが,窪地が埋められたラスタ「Fill_merge.tif」が作成される。
3.2 流向ラスタの作成
流向ラスタとは,水の流れの方向を指し示すラスタである。
ラスタ内の各セルからの流向方向(地形がどっちに傾いているか)を特定。
上部の解析タブのツールからジオプロセッシングウィンドウを開き,「流向ラスタ」と検索してウィンドウを開く。
パラメータータブの
入力サーフェスラスターを3.1章で作成した「Fill_merge」(選択形式)
出力流向ラスターを「FlowDirection」
流向タイプを「D8」(選択形式)に設定。
環境タブに移動し,
マスクを「japan_ver84」(選択形式)に設定し実行。
流向タイプでは,D8・MFD・DIFNからなる
3つのフローモデリング方法がある。
実行すると,県境でくり抜かれた流向ラスタが出力される。
以下の画像は出力画像のシンボルを設定し見やすいように色分けしている。
プライマリシンボルを「分類」(選択形式)
方法を「等量」(選択形式)
クラスを「8」(選択形式)
に設定。
拡大してみると,8色に分類されているのがわかる。
これにより,斜面の傾斜方向を知ることができる。
3.3 累積流量ラスタの作成
累積流量ラスタとは,1ピクセルを流量1として各セルに流れ込む流量の合計値を示すラスタである。当該メッシュの流量と流向が向いている下位のメッシュの流量を,次々に累積していく。
上部の解析タブのツールからジオプロセッシングウィンドウを開き,
「累積流量」と検索してウィンドウを開く。
パラメータータブの
入力流向ラスターを3.2章で作成した「FlowDirection」(選択形式)
出力累積流量ラスターを「FlowAccumulation」
入力流向タイプを「D8」(選択形式)に設定。
環境タブに移動し,
マスクを「japan_ver84」(選択形式)に設定し実行。
※ 1分程度かかる場合がある
実行すると県境でくり抜かれた累積流量ラスタが作成される。
以下の画像は出力画像のシンボルを設定し見やすいように色分けしている。
プライマリシンボルを「分類」(選択形式)
方法を「等量」(選択形式)
クラスを「5」(選択形式)
に設定。
拡大してみると,谷線や河川に沿って色分けされているのがわかる。
これにより,河川の大まかな位置を知ることができる。
3.4 河川次数ラスタの作成
河川次数ラスタとは,河川網のリンクに次数を割り当てたラスタである。川の大きさや重要度を数値化することができ,川の本流と支流を区別し,本流により近いほど高い次数を割り当てることで,川の階層構造を表現する。
上部の解析タブのツールからジオプロセッシングウィンドウを開き,
「河川次数」と検索してウィンドウを開く。
パラメータータブの
入力河川ラスターを3.3章で作成した「FlowAccumulation」(選択形式)
入力流向ラスターを3.2章で作成した「FlowDirection」(選択形式)
出力ラスターを「StreamOrder」
河川の順序付けに使用する方法を「Strahler」(選択形式)に設定。
環境タブに移動し,マスクを「japan_ver84」(選択形式)に設定し実行。
「河川の順序付けに使用する方法」には,StrahlerとShreveの2つがある。
■ Strahler
Strahlerの方法では,以下のようにして河川次数を決定する。
① 最も小さな支流には次数1を割り当てる
② 同じ次数の川が合流すると,次数が1つ上がる
③ 異なる次数の川が合流した場合は、高い方の次数を引き継ぐ
例えば,次数1の川が2本合流すると次数2となり,
次数2の川と次数1の川が合流すれば次数2のままとなる。
■ Shreve
Shreveの方法は上流に存在する河川本数をもとに河川次数を決定する。
① 最も小さな支流には次数1を割り当てる
② 川が合流する際,合流する川の次数を足し合わせた値が新しい次数となる
例えば,次数1の川が2本合流すれば次数2となり,次数2の川と次数3の川が合流すれば次数5となる。この方法では川の大きさを直接的に表現できる半面,次数の値が大きくなりすぎるというデメリットがある。
本記事では,Strahlerの方法を採用する。
実行すると県境でくり抜かれた河川次数ラスタが作成される。
以下の画像は出力画像のシンボルを設定し見やすいように色分けしている。
プライマリシンボルを「個別」(選択形式)
フィールドを「Value」(選択形式)
に設定。
また,その下の値部分で,河川実数1・2の表示を「色なし」に変更。
拡大してみると,河川の合流に色が分かれているのがわかる。
これにより,河川の大きさや重要度を数値で知ることができる。
3.5 流域ラスタの作成
流域ラスタとは,異なる流域(河川の範囲やその水が集まる範囲)の境界を示すラスタである。分水界,流域界と呼ぶこともある。
上部の解析タブのツールからジオプロセッシングウィンドウを開き,
「流域ラスタ」と検索してウィンドウを開く。
パラメータータブの
D8入力流向ラスターを3.2章で作成した「FlowDirection」(選択形式)
出力ラスターを「Basin」に設定し実行。
実行すると県境でくり抜かれた流域ラスタが作成される。
以下の画像は出力画像のシンボルを設定し見やすいように色分けしている。
プライマリシンボルを「ストレッチ」(選択形式)
透過表示を「37%」に設定。
これにより,河川の水が集まる範囲を可視化することができる。
3.6 集水域ラスタの作成
ここで言う集水域ラスタとは,ある地点から上流の流域を示すラスタである。本記事では,静岡県の中でも,狩野川中流部のとある地点を設定し,その地点より上流の集水域ラスタを作成していく。
まず,調べたい領域の最下流地点のpointを作成していく。
上部の表示タブのカタログウィンドウを開き,
プロジェクトを右クリックしてメニューを開く。
新規➡フィーチャクラスの順で選択し,フィーチャクラスの作成を開く。
名前を「集水域ラスタの最下流地点」
フィーチャクラスタイプを「マルチポイント」(選択形式)
に設定し完了を押す。
この作業では,データの入っていない空のpointベクタを作成している。
次に,この空のpointベクタにデータを追加していく。
① 上部の編集タブの作成を選択
② 作成した空のpointベクタ(集水域ラスタの最下流地点)を選択
③ 河川実数ラスタ(StreamOrder)を表示させ,調べたい流域の最下流地点を左クリックで設定。この時,最下流地点は河川実数ラスタ上で数値の大きい場所を採用すること。
④ 設定した最下流地点の仮決定
⑤ 保存を押して設定した最下流地点を決定
そして,集水域ラスタを作成していく。
上部の解析タブのツールからジオプロセッシングウィンドウを開き,
「集水域ラスタ」と検索してウィンドウを開く。
パラメータータブの
D8入力流向ラスターを3.2章で作成した「FlowDirection」(選択形式)
流出点データとして使用する入力ラスタ、またはフィーチャを
先ほど作成した「集水域ラスタの最下流地点」(選択形式)
出力ラスターを「Watershed」に設定し実行。
実行すると最下流地点より上流部の集水域ラスタが作成される。
4. 日本域表面流向マップを用いた水文解析
山崎らの日本域表面流向マップをダウンロードすると,
3章で出力した2つデータが名前は違えどデータセットとして揃っている。
標高データ(水文補正標高)
流域ラスタ(上流集水グリッド数)
しかしながら,それぞれラスタが複数枚ありデータ範囲が全国に渡るため
各データのラスタを結合(マージ,ディゾルブ)し,
対象地域の範囲でクリップする。流れは以下のとおりである。
4.1 各データの取得
本記事では,ラスタの結合および対象範囲のクリップに関する説明は
割愛する。元データである日本域表面流向マップのライセンスは,
Creative Commons Attribution 4.0 国際ライセンス(CC-BY 4.0)
であるため,加工後再配布が可能である。
静岡県の範囲でクリップした各データを以下に置いておく。
4.2 流向ラスタ・集水域ラスタの作成
水文補正標高ラスタから,3.2章と同様に流向ラスタを作成する。
流向ラスタからと上流集水グリッド数ラスタから,3.4章と同様に河川次数ラスタを作成する。
流向ラスタから,3.6章と同様に集水域ラスタを作成する。
4.3 集水域ラスタのベクタ化
4.1章で配布したデータについて,5章でさらに集水域単位でクリップするため,3.6章と同様に作成した集水域ラスタをベクタデータに変換する。
上部の解析タブのツールからジオプロセッシングウィンドウを開き,
「ラスター→ポリゴン」と検索してウィンドウを開く。
パラメータータブの
入力ラスターを4.2章で作成した「集水域ラスタを選択」(選択形式)
出力ポリゴン フィーチャを「Watershed_JFDM」に設定し実行。
5. ASCII-Grid形式への変換
本記事で作成してきたデータを氾濫シミュレーション等で使用する場合,
ASCII-Grid形式での出力が求められることがある。そのため,
4.1章で配布したデータを,
4.3章で作成した集水域ベクタでクリップしてから,
ASCII-Grid形式で保存する。
5.1 日本域表面流向マップ(JFDM)データのクリップ
上部の解析タブのツールからジオプロセッシングウィンドウを開き,
「ラスターのクリップ」と検索してウィンドウを開く。
まず,表面流向ラスタをクリップする。
パラメータータブの
入力ラスターをダウンロードした「表面流向.tif」(選択形式)
出力範囲を4.3章で作成した「Watershed_JFDM」(選択形式)
出力ラスター データセットを「DIR」
「入力フィーチャをクリップ ジオメトリとして使用」にチェック
をつけて実行。
同様にして,上流集水グリッド数ラスタをクリップする。
パラメータータブの
入力ラスターをダウンロードした「上流集水グリッド数.tif」(選択形式)
出力範囲を4.3章で作成した「Watershed_JFDM」(選択形式)
出力ラスター データセットを「ACC」
「入力フィーチャをクリップ ジオメトリとして使用」にチェック
をつけて実行。
同様にして,水文補正標高ラスタをクリップする。
パラメータータブの
入力ラスターをダウンロードした「水文補正標高.tif」(選択形式)
出力範囲を4.3章で作成した「Watershed_JFDM」(選択形式)
出力ラスター データセットを「DEM」
「入力フィーチャをクリップ ジオメトリとして使用」にチェック
をつけて実行。
5.2 ASCII-Grid形式での保存
上部の解析タブのツールからジオプロセッシングウィンドウを開き,
「ラスター→ASC」と検索してウィンドウを開く。
まず,DIR(表面流向ラスタ)を保存する。
パラメータータブの
入力ラスターを「DIR」(選択形式)
出力ASCⅡ ラスター ファイルを「DIR_JFDM.asc」
に設定し保存。
注意点として,ASCIIラスタの保存名には
必ず拡張子「.asc」をつけること。
同様にして,ACC(上流集水グリッド数ラスタ)を保存する。
パラメータータブの
入力ラスターを「ACC」(選択形式)
出力ASCⅡ ラスター ファイルを「ACC_JFDM.asc」
に設定し保存。
注意点として,ASCIIラスタの保存名には
必ず拡張子「.asc」をつけること。
同様にして,DEM(水文補正標高ラスタ)を保存する。
パラメータータブの
入力ラスターを「DEM」(選択形式)
出力ASCⅡ ラスター ファイルを「DEM_JFDM.asc」
に設定し保存。
注意点として,ASCIIラスタの保存名には
必ず拡張子「.asc」をつけること。
6. まとめ
お疲れ様でした。
以上でArcGIS Proを用いた水文解析の解説を終わります。
参考文献
[1] 山崎大,冨樫冴佳,竹島滉,佐山敬洋,2018.日本全域高解像度の表面
流向データ整備.土木学会論文集B1 (水工学),75巻5号,I_163-I_168.
この記事が気に入ったらサポートをしてみませんか?