To homeTo titleTo tail

峰面作成 SML の
せ っ ぽ う め ん さ く せ い エ ス エ ム エ ル の か い せ つ

 
「接峰面(せっぽうめん)」
という言葉をご存知ですか?

 地形を見る際、細かい谷に削られた場所を埋め戻すようにして、まだ侵食されていない元の地形に近い形で復元する、地形解析手法の代表的なテクニックです。

 地形図を小さなメッシュに区切って、そのメッシュ内で最も標高の高いところを抜き出し、その情報から大まかな等高線を手作業で引きなおすことが主流でしたが、GIS を利用することで、ある程度、接峰面の自動生成が可能になります。

 今回、ユーザさまより、この接峰面を作成する SML プログラムを提供していただきました。その使用方法と得られる結果についてご紹介します。




This Information was checked by Windows XP (TNTmips 6.8)
●1. ダウンロード
SML をダウンロード
●2. 実行
SML を実行して計算
●3. 処理の解説
どんな処理をしているの





 

  ウ ン ロ ー ド


 まずは、処理を行う SML プログラムをダウンロードしてください。 中身はテキストファイルですので、メモ帳などテキストエディタでも見ることができます。  



▼接峰面作成 SMLのダウンロード

ロッピーマークをクリックしますと、接峰面作成 SML がダウンロードできます。

整数(Integer)ラスタを用いる場合は、TNTmips ver6.8 PV(21may03) 以降をお使いください。それ以前の TNTmips をお使いの場合は、四捨五入処理で一部数値がおかしくなりますので、浮動小数点(Float)ラスタとして使用してください。

  Summit_v10.sml [約 1KB]





 

 


 次に、実行方法をご紹介します。 読み込むファイルを間違えないよう、ご注意くださいね。 



▼メインメニューから実行

TNTmips を起動しましたら、メインメニューより Process/SML/Run... を選択します。

 



▼Summit_v10.sml を読み出し

Select Files ウィンドウにて、先ほどダウンロードしました Summit_v10.sml ファイルを選択して OK ボタンをクリックしましょう。

 



▼DEM データを選択

、読み込むための DEM データを選択しましょう。

 



▼接峰面 DEM の保存先を指定

計算結果として得られる接峰面 DEM データの保存先を指定します。 右上の New File ボタンや New Object ボタンを利用してください。

 



▼繰り返しの回数を設定

、なめらかな地形を生成するための平滑化処理を何回行うかという設定になります。

うのが良いか?といいますと、経験的なものによりますが、起伏のあまりない丘陵地などは20回程度、急峻な山地の場合は 50回程度行うことをお薦めいたします。必要な繰り返し数に変更してください (この解説では20と設定していきます)

 



▼終了するまで待ちましょう

しの数だけ、処理に時間かかりますので、しばらく Finished !! というメッセージが現れるまで、お待ちください。終了しましたら、早速データを確認してみましょう。

 





 

  理 の 解 説


 得られた接峰面ラスタの確認と、そのアルゴリズムについての解説、そして注意点についてまとめてみました。 



▼まずは、比べてみましょう

メニューより Display/Spatial Data... [New 2D Group] 機能で、処理前の DEM(左側) と処理後の DEM(右側) を比較してみましょう。一目瞭然ですが、求められた接峰面 DEM は小さな谷が埋められて、非常に滑らかになっています。

 



▼処理の流れ

うなアルゴリズムで計算されているのか、フローチャートをご覧ください。基本的には、「5×5の窓領域を当てはめまして、その中(計25ピクセル)での平均値を求めつつ、その値が元の標高よりも高い場合だけ置き換える」といった処理を何度も行っています。

アルゴリズムにつきましては、中山・田中(2002):数値標高モデル(DEM)処理技術勉強会テキスト(2002年版).日本地形学連合. で紹介されております、中間ラスタを発生しながら比較を行う調和計算収束法を採用しております。

 



▼注意点

整数値(Integer)ラスタを利用して、計算を行う場合は、TNTmips ver6.8 PV(21may03) 以降にてご利用ください。それ以前の TNTmips でも計算可能ですが、若干四捨五入の処理で、バグがあります。TNTmips ver6.8 以前をご利用の場合は、一度ラスタを浮動小数点(Float)ラスタに変更してから実行するか、SML の中を書き換えて、出力ラスタの形式を浮動小数点(Float)に変更してください。

の端処理についてですが、5×5の窓枠をすべてのピクセルに対して当てはめていきますと、端のピクセルは対象ラスタが足りなくなります。この場合、TNTmips では、ピクセルのない部分はノーカウントという形で、合計25ピクセルを用いずに、9ピクセルや、12ピクセルだけで平均値を求めます。古い TNTmips の場合、端を拡張して計算するというアルゴリズムもありましたが、現在は対象ピクセルだけを平均しております。

国土地理院さんの数値地図50m [標高] のように、海の部分に-9999 などの特殊な数値を用いている場合は、必ずその値をヌル(Null)設定しておいてください(弊社の数値地図インポータでは、自動的に海コードはヌル設定されます)。ヌル設定をしない状態で処理を行いますと、海コードを標高値と判断して処理が進んでしまいます。 同様に、処理を行いたくない場所につきましては、ヌル(Null)設定しておくと便利です。






この解説ページは、
富山県林業技術センター林業試験場 小林裕之様の御協力により作成いたしました。



To homeHome  |  To titleTitles  |  To headHead

2003.5.29 更新

株 式 会 社 オ ー プ ン G I S
〒130-0001東京都墨田区吾妻橋1-19-14
電話 (03) 3623-2851
FAX (03) 3623-3025
info@opengis.co.jp