HydroSHEDSの河道網データと標高データから
PlainFormatV2河道データと流域点標高データ、格子位置データを生成する手順

2010年8月3日

藤田 勇樹


HydroSHEDSはアメリカ地質調査所(USGS)の公開している全球規模の水文学的データセットです。

ここでは、HydroSHEDSの河道網データ(River Network)と標高データ(Void-filled digital elevation model;GRID形式)から、
plain format V.2 形式の河道網データと流域点標高データ、格子位置データを生成するシステムについて説明します。
この場合は国土数値情報とは異なり、2次メッシュごとではなく、対象とするファイルの範囲すべてを一つのデータに変換します。

なお、作業する際にはArcGISを利用します。(ArcGISのバージョンによってはここで説明しているものと表記などが異なる場合があります。)


河道網データの切り出し

HydroSHEDSからダウンロードできる河道データは、一つのファイルに広範な領域が記録されていて、そのままでは扱いにくいため、対象とする河道を含む小領域を切り出す必要があります。
ここでは、ArcMapおよびArcCatalogを用いて任意の小領域を切り出す方法を説明します。

(1)まず、ArcCatalogでシェープファイルを作成します。(ここで作成したシェープファイルが切り出す際の型となります。)

     (a)ArcCatalogを開き、シェープファイルを作成したいフォルダ上で右クリックし、「新規作成」→「シェープファイル」を選択します。(図1)


図1:ArcCatalogでシェープファイルを新規作成する

     (b)フィーチャタイプをPolygonに設定します。(図2)
     
     (c)「編集」をクリックして空間参照プロパティで座標系を設定し、型となるシェープファイルの作成を完了します。
       HydroSHEDSのデータはWGS84に準拠しています。(図3)
 
図2:フィーチャタイプをPolygonに設定する
 
図3:座標を設定する

(2)上記の要領で新規作成したシェープファイルをArcMapで読み込みます。
  ただし、この時点では何も表示されないため、切り出す前の河道網レイヤも同時に表示しておかなければ後の作業が困難です。

(3)新規作成した方のシェープファイルをエディタツールバーで編集します。
  エディタツールバーで「編集の開始」を選び、「スケッチツール」をクリックします(注:「編集ツール」の方ではありません)。   
  次に、「タスク」に「新規フィーチャ作成」、「ターゲット」に新規作成した方のシェープファイルをそれぞれ指定したのち、表示されている元の河道網レイヤを参考にして抽出する位置を決め、スケッチツールで形を決めて(ここで「四角形ツール」や「円ツール」を用いると、正確な長方形や円の形で抽出できます)編集を保存・終了します。(図4)

(4)最後に、「ArcToolbox」→「解析ツール」→「抽出」→「Clip」を選択します(エディタツールバーのClipではありません)。   
  Clipツールを開いたら、「入力フィーチャ」に元の河道網ファイル、「クリップフィーチャ」に編集した新しいシェープファイル、「出力フィーチャ」に出来上がる河道網ファイルをそれぞれ選択して実行すると河道網が切り出されます。(図5、図6)
 
図4:エディタツールでシェープファイルの形を決める

図5:Clipツール 
 
図6:切り出された河道網


標高データの切り出し

次に標高データを切り出します。

河道網データと同様に、ArcGISのツールを用いて切り出します。

(1)「ArcToolbox」→「データ管理ツール」→「ラスタ」→「ラスタプロセシング」→「Clip」を選択します。

(2)「入力ラスタ」に元の標高データファイル、「出力範囲(オプション)」に先ほどの河道データの切り出しに用いた切り出し用のシェープファイル、「出力ラスタデータセット」に出力データファイルをそれぞれ指定し、「入力フィーチャをクリップジオメトリとして使用」にチェックを入れて実行します。

(3)切り出された標高ファイルをTEXTファイルに変換します。
「ArcToolbox」→「変換ツール」→「ラスタから変換」→「ラスタ→ASCII」を選び、「入力ラスタ」及び「出力ASCIIファイル」の欄を入力し実行します。


各種データの生成

切り出した河道網データと標高データから、 PlainFormatV2河道データと流域点標高データ、格子位置データを生成します。

TEXT形式の標高データファイルと河道網データセットの中のSHPファイル(.shp)を入力ファイルとして、
HSconverter を用いて生成します。

   ・用いるプログラム
    HSconverter     

   ・コンパイル
    g++ 3.4.4でコンパイル確認済み(2010月8月1日)

   ・使い方
    % HSconverter DEM.txt RIVER.shp     

   ・入力ファイル
     HydroSHEDSの標高データ(TEXT形式)
     HydroSHEDSの河道データファイル(SHPファイル)       

   ・出力ファイル
     plain format V.2 形式の河道網データファイル (output.pf2.dat)
     流域点標高データ (点番号、x座標、y座標、z座標)(point.dat)
     格子位置データ (グリッドの番号、グリッドの位置、グリッドを構成する頂点の番号)(grid.dat)       


続いて、流域地形データセット (Node format V.0, Edge format V.0 形式)の生成に進みます。


今後流域地形データを作成したりする際に河道区分番号が必要となりますが、
これは対象となる河道網ファイルをArcMapで表示させ、各河道区分の属性値“FID”に1を足した数字となります。
(FIDは各河道区分に対して0から割り振られている)
FIDは、ArcMapのツール中の「個別属性表示」で確認することができます。