傾斜角 (Slope) (Spatial Analyst)

サマリー

ラスターの各セルから傾斜角 (勾配または傾き) を決定します。

[サーフェス パラメーター (Surface Parameters)] ツールにより、実装が更新されて機能が向上します。

傾斜角の詳細

傾斜角ツールの図
OutRas = Slope(InRas1)Slope_3d (InRas1, OutRas)

使用法

  • [サーフェス パラメーター (Surface Parameters)] ツールは傾斜角を新たに実装するので、[傾斜角 (Slope)] ツールの代わりに使用することをお勧めします。 [傾斜角 (Slope)] ツールは平面を 9 個のローカル セルに収めますが、平面は地形の記述子としてはあまり役に立たないことが多く、対象の自然変動がマスクされたり、強調されたりすることがあります。 [サーフェス パラメーター (Surface Parameters)] ツールは、サーフェスを平面ではなくセルの近傍に収めるため、地形をより自然に適合させることができます。

    [傾斜角 (Slope)] ツールは、常に 3 x 3 のセル ウィンドウを使用して値を計算するのに対し、[サーフェス パラメーター (Surface Parameters)] ツールは 3 x 3 から 15 x 15 のセルまでのウィンドウ サイズを使用できます。 高解像度の標高データには、大きいウィンドウ サイズが便利です。これにより、地表面の処理を適切な縮尺で捉えられるようになります。 [サーフェス パラメーター (Surface Parameters)] にはアダプティブ ウィンドウ オプションもあります。このオプションは地形のローカル変動を評価し、セルごとに最大の適切な近傍サイズを特定します。 これは、河川、道路、傾斜の急変によって途切れる、緩やかな同種の地形において便利です。

    以前のツールの実行と正確に一致する結果が必要である場合、またはアルゴリズムの正確さよりも高速な実行の方が重要である場合には、[傾斜角 (Slope)] ツールの従来のアプローチを引き続き使用できます。

  • このツールは、3 X 3 のセル移動ウィンドウを使用して、データを処理します。 処理するセルが NoData の場合、その位置の出力は NoData になります。

  • このツールでは、処理するセルに隣接した 8 つのセルのうち、少なくとも 7 つが有効な値を持つ必要があります。 有効なセルの数が 7 未満である場合、計算は実行されず、その処理セルの出力は NoData になります。

  • 出力ラスターの最も外側のロウとカラムにあるセルは NoData になります。 これは、これらのセルが、入力データセットの境界沿いにあり、必要なだけの有効な隣接セルに囲まれていないためです。

  • 出力の値の範囲は、計測単位のタイプによって異なります。

    • 度の場合、傾斜角の値の範囲は 0 から 90 です。
    • 勾配率の場合、範囲は 0 から本質的に無限です。 平坦なサーフェスを 0%、45 度のサーフェスを 100% として表し、サーフェスが垂直に近くなるほど勾配率は大きくなります。

  • 平面による方法の場合、サーフェス (垂直方向) の Z 座標の単位と地面の X および Y 座標の単位が異なる場合は、傾斜角を正しく計算するために Z 係数を使用する必要があります。 [Z 係数] パラメーターは、平面による方法が選択された場合のみ有効になります。

  • 測地線による方法の場合、サーフェスの Z 単位を指定することで、出力の精度が確保されます。 [Z 単位] パラメーターは、測地線による方法が選択された場合のみ有効になります。

  • 入力ラスターの「鉛直座標系」では、Z 単位が使用できる場合は自動的に適用されます。 入力ラスターの Z 単位がない場合は定義することをお勧めします。 Z 単位の指定には、[投影法の定義 (Define Projection)] ツールを使用できます。 これが定義されていない場合、デフォルトでメートルが使用されます。

  • 入力ラスターをリサンプリングする必要がある場合は、共一次内挿法を使用します。 入力ラスターをリサンプリングする例としては、出力座標系、範囲、またはセル サイズが入力と異なる場合があります。

  • [入力ラスター] パラメーターの値 (Python の in_raster) が高解像度でセル サイズが数メートル未満の場合や、特にノイズが多い場合は、このツールの直接 3 × 3 近傍ではなく、[サーフェス パラメーター (Surface Parameters)] ツールとそのユーザー定義の近傍距離オプションを使用することを検討してください。 より大きな近傍を使用することで、ノイズの多いサーフェスの影響を最小限に抑えることができます。 また、高解像度のサーフェスを使用する場合は、より大きな近隣を使用することで、地形やサーフェスの特性をより上手く表現することができます。

  • このツールは GPU により処理を加速化できます。つまり、システムで互換性のある GPU (グラフィックス処理装置) を使用可能な場合は、その GPU を使用してツールのパフォーマンスを強化できます。 このツールの実行に GPU と CPU のどちらを使用するかを制御するには、[解析のターゲット デバイス] (Python の analysis_target_device) パラメーターを使用します。

    互換性のある GPU、GPU デバイスの構成と操作、トラブルシューティングのヒントの詳細については、「Spatial Analyst での GPU 処理」をご参照ください。

パラメーター

ラベル説明データ タイプ
入力ラスター

入力サーフェス ラスター。

Raster Layer
出力単位
(オプション)

出力傾斜角ラスターの計測単位 (度またはパーセンテージ) を指定します。

  • 傾斜角を度単位で計算します。
  • 勾配率傾斜角は、勾配率 (傾斜率) として計算されます。
String
Z 係数
(オプション)

サーフェス Z 単位あたりの地表 X,Y 単位の数。

z 単位の測定基準が入力サーフェスの xy 単位と異なる場合、z 係数を使用して z 測定単位を調整します。 最終的な出力サーフェスを計算する際、入力サーフェスの Z 値に Z 係数が乗算されます。

X,Y 単位と Z 単位の測定基準が同じ場合、Z 係数は 1 これがデフォルトです。

X,Y 単位と Z 単位の測定基準が異なる場合は、Z 係数に適切な値を設定する必要があります。Z 係数が適切でないと、正しい結果が得られません。 たとえば、Z 単位がフィートであり、X,Y 単位がメートルの場合、Z 係数 0.3048 を使用して Z 単位をフィートからメートルへ変換します (1 フィート = 0.3048 メートル)。

Double
方法
(オプション)

平面 (平面地球) と測地線 (楕円体) のどちらの方法に基づいて計算するかを指定します。

平面による方法は、正しい距離と面積が維持される投影法で、ローカル エリアに使用するのに適しています。 これは、エリアの都市、郡、小さな州などのエリアをカバーする解析に適しています。 測地線による方法では、より正確な結果が生成されますが、処理時間が増加する可能性があります。

  • 平面計算は、2 次元直交座標系を使用して投影された平面で実行されます。 これがデフォルトの方法です。
  • 測地線計算は、地球の形状を楕円体と見なして、3 次元直交座標系で実行されます。
String
Z 単位
(オプション)

鉛直方向の Z 値の距離単位を指定します。

これは、鉛直座標系で定義されます (存在する場合)。 鉛直座標系が存在しない場合、正しい測地線の計算を実現するために、単位リストを使用して Z 単位を定義します。 デフォルトはメートルです。

  • インチ距離単位はインチになります。
  • フィート距離単位はフィートになります。
  • ヤード距離単位はヤードになります。
  • US マイル距離単位はマイルになります。
  • 海里距離単位は海里になります。
  • ミリメートル距離単位はミリメートルになります。
  • センチメートル距離単位はセンチメートルになります。
  • メートル距離単位はメートルになります。
  • キロメートル距離単位はキロメートルになります。
  • デシメートル距離単位はデシメートルになります。
String
解析のターゲット デバイス
(オプション)

計算の実行に使用するデバイスを指定します。

  • GPU の後で CPU互換性のある GPU が検出された場合、その GPU を使用して計算が実行されます。 検出されなかった場合、CPU が使用されます。 これがデフォルトです。
  • CPU のみ計算は CPU でのみ実行されます。
  • GPU のみ計算は GPU でのみ実行されます。
String

戻り値

ラベル説明データ タイプ
出力ラスター

出力傾斜角ラスター。

浮動小数点タイプになります。

Raster

Slope(in_raster, {output_measurement}, {z_factor}, {method}, {z_unit}, {analysis_target_device})
名前説明データ タイプ
in_raster

入力サーフェス ラスター。

Raster Layer
output_measurement
(オプション)

出力傾斜角ラスターの計測単位 (度またはパーセンテージ) を指定します。

  • DEGREE傾斜角を度単位で計算します。
  • PERCENT_RISE傾斜角は、勾配率 (傾斜率) として計算されます。
String
z_factor
(オプション)

サーフェス Z 単位あたりの地表 X,Y 単位の数。

z 単位の測定基準が入力サーフェスの xy 単位と異なる場合、z 係数を使用して z 測定単位を調整します。 最終的な出力サーフェスを計算する際、入力サーフェスの Z 値に Z 係数が乗算されます。

X,Y 単位と Z 単位の測定基準が同じ場合、Z 係数は 1 これがデフォルトです。

X,Y 単位と Z 単位の測定基準が異なる場合は、Z 係数に適切な値を設定する必要があります。Z 係数が適切でないと、正しい結果が得られません。 たとえば、Z 単位がフィートであり、X,Y 単位がメートルの場合、Z 係数 0.3048 を使用して Z 単位をフィートからメートルへ変換します (1 フィート = 0.3048 メートル)。

Double
method
(オプション)

平面 (平面地球) と測地線 (楕円体) のどちらの方法に基づいて計算するかを指定します。

  • PLANAR計算は、2 次元直交座標系を使用して投影された平面で実行されます。 これがデフォルトの方法です。
  • GEODESIC計算は、地球の形状を楕円体と見なして、3 次元直交座標系で実行されます。

平面による方法は、正しい距離と面積が維持される投影法で、ローカル エリアに使用するのに適しています。 これは、エリアの都市、郡、小さな州などのエリアをカバーする解析に適しています。 測地線による方法では、より正確な結果が生成されますが、処理時間が増加する可能性があります。

String
z_unit
(オプション)

鉛直方向の Z 値の距離単位を指定します。

これは、鉛直座標系で定義されます (存在する場合)。 鉛直座標系が存在しない場合、正しい測地線の計算を実現するために、単位リストを使用して Z 単位を定義します。 デフォルトはメートルです。

  • INCH距離単位はインチになります。
  • FOOT距離単位はフィートになります。
  • YARD距離単位はヤードになります。
  • MILE_US距離単位はマイルになります。
  • NAUTICAL_MILE距離単位は海里になります。
  • MILLIMETER距離単位はミリメートルになります。
  • CENTIMETER距離単位はセンチメートルになります。
  • METER距離単位はメートルになります。
  • KILOMETER距離単位はキロメートルになります。
  • DECIMETER距離単位はデシメートルになります。
String
analysis_target_device
(オプション)

計算の実行に使用するデバイスを指定します。

  • GPU_THEN_CPU互換性のある GPU が検出された場合、その GPU を使用して計算が実行されます。 検出されなかった場合、CPU が使用されます。 これがデフォルトです。
  • CPU_ONLY計算は CPU でのみ実行されます。
  • GPU_ONLY計算は GPU でのみ実行されます。
String

戻り値

名前説明データ タイプ
out_raster

出力傾斜角ラスター。

浮動小数点タイプになります。

Raster

コードのサンプル

Slope の例 1 (Python ウィンドウ)

この例は、入力サーフェス ラスターの傾斜角の値を決定します。

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outSlope = Slope("elevation", "DEGREE", 0.3043)
outSlope.save("C:/sapyexamples/output/outslope01")
Slope の例 2 (スタンドアロン スクリプト)

この例は、入力サーフェス ラスターの傾斜角の値を決定します。

# Name: _Ex_02.py
# Description: Identifies slope from each cell.
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inRaster = "elevation"
outMeasurement = "DEGREE"
zFactor = ""
method = "GEODESIC"
zUnit = "FOOT"

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Execute Slope
outSlope = Slope(inRaster, outMeasurement, zFactor, method, zUnit)

# Save the output 
outSlope.save("C:/sapyexamples/output/outslope02")