ラベル | 説明 | データ タイプ |
入力サーフェス ラスター | 入力サーフェス ラスター。 | Raster Layer |
出力ラスター | 出力ラスター。 浮動小数点タイプになります。 | Raster Dataset |
パラメーター タイプ (オプション) | 計算する出力サーフェス パラメーターのタイプを指定します。
| String |
局所サーフェス タイプ (オプション) | ターゲット セルの周囲に適合するサーフェス関数のタイプを指定します。
| String |
近傍距離 (オプション) | 出力は、ターゲットセル中心に対してこの距離を比較して計算されます。 これによって近傍サイズを決定します。 デフォルト値は入力ラスターのセル サイズで、3 x 3 の近傍になります。 | Linear Unit |
適応可能な近傍の使用 (オプション) | 地形の変化に応じて近傍距離が変化するかどうかを指定します (アダプティブ)。 最大距離は近傍距離によって決定されます。 最小距離は、出力ラスターのセル サイズです。
| Boolean |
Z 単位 (オプション) | 垂直方向の Z 値の距離単位です。 存在する場合は、鉛直座標系によって定義されます。 鉛直座標系が存在しない場合、正しい測地線の計算を実現するために、単位リストから Z 単位を定義する必要があります。 デフォルトはメートルです。
| String |
出力傾斜角の計測 (オプション) | 出力傾斜角ラスターに使用される計測単位 (度またはパーセンテージ)。 このパラメーターは、[パラメーター タイプ] が [傾斜角] の場合にのみ有効です。
| String |
測地線方位の投影 (オプション) | 出力空間参照によって引き起こされる角度の歪みを修正するために、測地線方位を投影するかどうかを指定します。
| Boolean |
赤道傾斜方向の使用 (オプション) | 赤道上のポイント、または北極からアスペクトを測定するかどうかを指定します。
| Boolean |
Spatial Analyst のライセンスで利用可能。
3D Analyst のライセンスで利用可能。
使用法
出力パラメーターは、ターゲット セルの周囲に局所サーフェスを適合させることで、セルごとに計算されます。 [パラメーター タイプ] パラメーター (Python では parameter_type) で利用できるサーフェス パラメーター オプションは、[傾斜角]、[傾斜方向]、[平均曲率]、[接線 (法輪郭) 曲率]、[断面 (法傾斜) 曲率]、[平面 (投影コンター) 曲率]、[コンター測地線のねじれ率]、[ガウス曲率]、[カソラティ曲率] です。
すべての出力パラメーターは、測地座標と方程式を使って計算されます。
[パラメーター タイプ] に対して [傾斜角] (Python では SLOPE) オプションが指定されている場合、出力は各デジタル標高モデル (DEM) セルの標高変化率を表します。 これは DEM の一次微分です。 傾斜角出力の値の範囲は、計測単位のタイプによって異なります。
[パラメータータイプ] に対して [傾斜方向] (Python では ASPECT) オプションが指定されている場合、出力は各場所の下り坂斜面のコンパスの向きを特定します。 コンパスの向きは、0 〜 360 度の正の角度で、北から時計回りに計測されます。
曲率は、サーフェスの形状を表現するために使用されます。 地球科学に応用する場合、重力、侵食、その他のファクターがサーフェスに与える影響を理解するために使用され、他のサーフェス パラメーターと組み合わせて地形を識別および分類するために使用されます。
- [平均曲率] (Python では MEAN_CURVATURE) - サーフェスの全体的な曲率。 最小曲率と最大曲率の平均として計算されます。 これが [パラメータータイプ] に対して指定されている場合、出力は断面 (正規傾斜ライン) と接線 (正規コンター) の曲率の平均と等しくなります。 その符号は正または負のいずれかで、極端な値を除いて決定的な指標にはなりません。 高い正の値は最大の浸食エリアを示し、高い負の値は最大の堆積エリアを示します (Minár et al., 2020)。
- [断面 (正規傾斜ライン) 曲率] (Python では PROFILE_CURVATURE) - 傾斜に沿った幾何学的な法曲率。 正の値は、サーフェスの流れや侵食が加速している領域を示します。 負の断面曲率は、サーフェスの流れや堆積が遅くなっている領域を示します。 正の断面 (正規傾斜ライン) 曲率は、サーフェスが傾斜方向のセルで凸状になっていることを示します。 負の曲率は、サーフェスが同じ方向のセルで凹状になっていることを示します。 ゼロという値はサーフェスが平らであることを示します。
- [正接 (正規コンター) 曲率] (Python では TANGENTIAL_CURVATURE) は、傾斜に垂直で輪郭線に接する幾何学的な法曲率。 正の値は、サーフェスの流れが分岐している領域を示します。 負の接線曲率は、サーフェスの流れが収束している領域を示します。 正の接線 (正規コンター) 曲率は、傾斜の方向に垂直なセルでサーフェスが凸状であることを示します。 負の曲率は、サーフェスが傾斜に垂直な方向のセルで凹状になっていることを示します。 ゼロという値はサーフェスが平らであることを示します。
- [平面 (投影コンター) 曲率] (Python では CONTOUR_CURVATURE) - 等高線に沿った曲率。
- [コンター測地線のねじれ率] (Python では CONTOUR_GEODESIC_TORSION) - 等高線に沿った傾斜角の変化率。
- [ガウス曲率] (Python では GAUSSIAN_CURVATURE) - サーフェスの全体的な曲率。 曲率の最大値と最小値の積として計算され、負の値と正の値を取ることができます。 正の値はそのセルでサーフェスが凸面であることを示し、負の値はサーフェスが凹面であることを示します。 ゼロという値はサーフェスが平らであることを示します。
- [カソラティ曲率] (Python では CASORATI_CURVATURE) - サーフェスの全体的な曲率。 ゼロ、または常に正にできます。 高い正の値は、尖ったエリアが複数の方向に曲がっていることを示します。
曲率タイプ出力の単位は、すべて出力座標系の XY 単位の逆数 ([ガウス曲率] の逆数の二乗) になります。
[ローカル サーフェス タイプ] パラメーター (Python では local_surface_type) の [二次] (Python では QUADRATIC) オプションは、隣接するセルに正確に適合しません。 これはデフォルトであり、ほとんどのデータやアプリケーションに対しておすすめのオプションです。
- 二次サーフェスは、高解像度のライダー サーフェスのようなノイズの多いサーフェス データの影響を最小限に抑えます。この効果は曲率を計算する際に特に重要です。
- 二次サーフェスは、セル サイズよりも大きい近傍サイズを指定する場合や、適応可能な近傍オプションを使用する場合に使用します。
[ローカル サーフェス タイプ] パラメーターの [四次] (Python では BIQUADRATIC) オプションは、隣接するセルのデータに正確に適合しません。
- このオプションは精度の高い入力サーフェスに適しています。
- 近傍距離が入力ラスターのセル サイズよりも大きい場合、四次サーフェス タイプの精度の利点は失われます。 近傍距離はデフォルトのまま (セル サイズに等しい状態) にしておきます。
[近傍距離] パラメーター (Python では neighborhood_distance) は近傍サイズを決定し、ターゲット セルの中心からこの距離でサーフェス パラメーターを計算します。
- 入力ラスターのセル サイズよりも小さくすることはできません。
- 近傍距離が小さいほど、地形の局所的な変動性、つまり小さな地形フィーチャを取得できます。 高解像度の標高データでは、より大きな距離がより適切な場合があります。
[適応近傍の使用] パラメーターをオンにしている場合 (Python では use_adaptive_neighborhood を ADAPTIVE_NEIGHBORHOOD に設定している場合)、近隣距離が地形の変動により変化します。 計算ウィンドウの変動性が大きすぎる場合、近傍距離は減少します。
傾斜角出力を適切に計算できるようにするには、サーフェスの [Z 単位] パラメーター値 (Python では z-unit) を指定することが重要です。
入力ラスターの鉛直座標系では、Z 単位が使用できる場合は自動的に適用されます。 入力ラスターの Z 単位がない場合は定義することをおすすめします。 Z 単位の指定には、[投影法の定義 (Define Projection)] ツールを使用できます。 これが定義されていない場合、デフォルトでメートルが使用されます。
傾斜角出力の値の範囲は、[出力傾斜角の計測] (Python では output_slope_measurement) オプション単位によって異なります。
- [度] (Python では DEGREE) - 傾斜角の値の範囲は 0 から 90 です。
- [勾配率] (Python では PERCENT_RISE) - 範囲は 0 から基本的に無限です。 平坦なサーフェスを 0%、45 度のサーフェスを 100% として表し、サーフェスが垂直に近くなるほど勾配率は大きくなります。
[測地線方位の投影] パラメーターがオンの場合 (Python では project_geodesic_azimuths が PROJECT_GEODESIC_AZIMUTHS に設定されている場合)、以下の点が当てはまります。
- 北は常に 360 度として表されます。
- 方位は、非正角な出力座標系によって引き起こされる歪みを修正するために投影されます。 これらの角度を使用すると、最も急な下り勾配に沿ったポイントを正確に配置できます。
[赤道傾斜方向の使用] パラメーターがオンの場合 (Python では project_geodesic_azimuths が USE_EQUATORIAL_ASPECT に設定されています)、傾斜方向は赤道に沿ったポイントから測定され、極点に近づいたときに発生する方向のねじれを補正します。 このパラメーターは、南北軸と東西軸が互いに垂直である状態を確保します。
テレインが北極または南極に近い場合は、[赤道傾斜方向の使用] パラメーターをオンにしてください。
参考文献:
- James D.E., M.D. Tomer, S.A. Porter. (2014). 高解像度デジタル標高モデルからの越層的地形セグメンテーション (Trans-scalar landform segmentation from high-resolution digital elevation models)。 ポスター提供: ESRI ユーザー会 2014 年 7 月、カリフォルニア、サンディエゴ
- Minár, J., Evans, I. S., & Jenčo, M. (2020). 地表 (地形学) 曲率の定義の総合的体系、地球科学のモデリングと予測への応用についての影響 (A comprehensive system of definitions of land surface (topographic) curvatures, with implications for their application in geoscience modelling and prediction)。 Earth-Science Reviews, 103414. https://doi.org/10.1016/j.earscirev.2020.103414
パラメーター
arcpy.ddd.SurfaceParameters(in_raster, out_raster, {parameter_type}, {local_surface_type}, {neighborhood_distance}, {use_adaptive_neighborhood}, {z_unit}, {output_slope_measurement}, {project_geodesic_azimuths}, {use_equatorial_aspect})
名前 | 説明 | データ タイプ |
in_raster | 入力サーフェス ラスター。 | Raster Layer |
out_raster | 出力ラスター。 浮動小数点タイプになります。 | Raster Dataset |
parameter_type (オプション) | 計算する出力サーフェス パラメーターのタイプを指定します。
| String |
local_surface_type (オプション) | ターゲット セルの周囲に適合するサーフェス関数のタイプを指定します。
| String |
neighborhood_distance (オプション) | 出力は、ターゲットセル中心に対してこの距離を比較して計算されます。 これによって近傍サイズを決定します。 デフォルト値は入力ラスターのセル サイズで、3 x 3 の近傍になります。 | Linear Unit |
use_adaptive_neighborhood (オプション) | 地形の変化に応じて近傍距離が変化するかどうかを指定します (アダプティブ)。 最大距離は近傍距離によって決定されます。 最小距離は、出力ラスターのセル サイズです。
| Boolean |
z_unit (オプション) | 垂直方向の Z 値の距離単位です。 存在する場合は、鉛直座標系によって定義されます。 鉛直座標系が存在しない場合、正しい測地線の計算を実現するために、単位リストから Z 単位を定義する必要があります。 デフォルトはメートルです。
| String |
output_slope_measurement (オプション) | 出力傾斜角ラスターに使用される計測単位 (度またはパーセンテージ)。 このパラメーターは、parameter_type = "SLOPE" である場合にのみ使用できます。
| String |
project_geodesic_azimuths (オプション) | 出力空間参照によって引き起こされる角度の歪みを修正するために、測地線方位を投影するかどうかを指定します。
| Boolean |
use_equatorial_aspect (オプション) | 赤道上のポイント、または北極からアスペクトを測定するかどうかを指定します。
| Boolean |
コードのサンプル
次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。
この例では、適応近傍メソッドを使用して、出力値をパーセンテージで表示した傾斜ラスターを生成します。 最大近傍距離は 5 メートルです。
from arcpy.ddd import *
SurfaceParameters("elevation_1m.tif", "C:/data/output/outsurfaceparameters01.tif",
"", "", "5 METERS", "ADAPTIVE_NEIGHBORHOOD", "", "PERCENT_RISE")
次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。
この例では、適応近傍メソッドを使用して、断面 (正規傾斜ライン) 曲率ラスターを生成しています。 最大近傍距離は 10 メートルです。
# Name: SurfaceParameters_Ex_02.py
# Description: Derive profile (normal slope line) curvature for a 1m
# resolution elevation raster over an adaptive neighborhood distance of maximum 10m.
# Requirements: 3D Analyst Extension
# Import system modules
import arcpy
from arcpy.ddd import *
# Set environment settings
arcpy.env.workspace = "C:/data"
# Check out the ArcGIS 3D Analyst extension license
arcpy.CheckOutExtension("3D")
# Set local variables
inRaster = "elevation_1m.tif"
outRaster = "C:/data/output/outsurfaceparameters02.tif"
inParameterType = "PROFILE_CURVATURE"
inNeighborhoodDistance = "10 METERS"
inUseAdaptiveNeighborhood = "ADAPTIVE_NEIGHBORHOOD"
# Execute the tool
SurfaceParameters(inRaster, outRaster, inParameterType, "",
inNeighborhoodDistance, inUseAdaptiveNeighborhood)
次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。
この例では、5 メートルの近傍距離を使用してアスペクト ラスターを生成しています。 非共形投影を使用した場合の方向の歪みを補正します。
# Name: SurfaceParameters_Ex_03.py
# Description: Derive aspect for an elevation surface over a distance of 5m, correct
# for direction distortion from non-conformal projection system.
# Requirements: 3D Analyst Extension
# Import system modules
import arcpy
from arcpy.ddd import *
# Set environment settings
arcpy.env.workspace = "C:/data"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("3D")
# Set local variables
inRaster = "elevation_1m.tif"
outRaster = "C:/data/output/outsurfaceparameters03.tif"
inParameterType = "ASPECT"
inNeighborhoodDistance = "5 METERS"
inProjectGeodesicAzimuths = "PROJECT_GEODESIC_AZIMUTHS"
# Execute the tool
SurfaceParameters(inRaster, outRaster, inParameterType, "", inNeighborhoodDistance,
"", "", "", inProjectGeodesicAzimuths)
環境
ライセンス情報
- Basic: 次のものが必要 3D Analyst または Spatial Analyst
- Standard: 次のものが必要 3D Analyst または Spatial Analyst
- Advanced: 次のものが必要 3D Analyst または Spatial Analyst