マルチスケール サーフェス差分 (Multiscale Surface Difference) (Spatial Analyst)

Spatial Analyst のライセンスで利用可能。

サマリー

空間縮尺の範囲全体における平均標高からの最大差を計算します。

マルチスケール サーフェス差分の機能について説明します。

使用法

  • スケール全体における平均標高からの最大差が計算されます。 これらのスケールは、計算に使用される近傍距離値です (ターゲット セルの中心からの距離で、ターゲット セルの周囲にセルの正方形を作成します)。 たとえば、2 つのセルのスケールは、5 x 5 セルの近傍です。

  • 各スケールの平均標高が求められ、中央のセルの値とそのスケールの平均標高の差が求められます。 異なるスケールの値と比較するために、差分は保持されます。

  • [入力サーフェス ラスター] (Python では in_raster) パラメーター値は、任意のタイプのサーフェス ラスターを使用できます。

  • [出力差分ラスター] (Python では out_difference_raster) パラメーターはプライマリ出力です。 これは、空間スケールの範囲全体における平均標高からの最大差を含むラスターです。

  • [出力スケール ラスター] (Python では out_scale_raster) パラメーターは、プライマリ出力に関する詳細情報を提供します。 これには、各セルの平均標高からの最大差が見つかったスケールが含まれます。 このスケールは、近傍距離値 (ターゲット セルの中心からの距離) で、ターゲット セルの周囲にセルの正方形を作成します。

  • [距離単位] (Python では distance_units) パラメーターのヤード・ポンド単位のオプションは国際版の単位です。 US Survey のヤード・ポンド単位は現在のところサポートされていません。 [入力サーフェス ラスター] 入力の空間参照のマップ単位が US Survey の場合、このパラメーターではデフォルト値として [セル] が使用されます。

  • [最小近傍距離] (Python では min_scale) および [最大近傍距離] (Python では max_scale) パラメーターは、差分が計算される最小および最大の近傍サイズ、つまりスケールを定義します。 これらの値は、ターゲット セルからの最小距離と最大距離を表します。 たとえば、値が 1 の場合、3 x 3 セルの近傍が作成され、値が 2 の場合、5 x 5 セルの近傍が作成されます。

    これらの値は、入力ラスターのセル サイズまたは 1 セルよりも小さくすることはできません。

    [最小近傍距離] パラメーター値は、[最大近傍距離] パラメーター値以下でなくてはなりません。

  • [距離の増分] (Python では increment) パラメーターは、縮尺間の近傍距離の増分です。

    このパラメーター値は、入力ラスターのセル サイズまたは 1 セルよりも小さくすることはできません。 デフォルト値は、入力ラスターのセル サイズです。

  • [入力サーフェス ラスター] 値の NoData セルは無視され、それらのセルには [出力差分ラスター][出力スケール ラスター] パラメーター値に NoData が割り当てられます。

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

    互換性のある GPU、GPU デバイスの構成と動作に関する詳細や、問題が発生した場合のトラブルシューティングのヒントについては、「Spatial Analyst での GPU 処理」をご参照ください。

  • このツールは、並列処理をサポートしています。 お使いのコンピューターに、複数のプロセッサや、複数のコアを持つプロセッサが搭載されている場合は、特に対象となるデータセットが大きいときにパフォーマンスが向上します。 「Spatial Analyst による並列処理」ヘルプ トピックには、この機能と設定方法の詳細が記載されています。

    デフォルトでは、このツールは使用可能なコアの 50% を使用します。 並列処理ファクター環境で、ツールが使用するコアの数を制御できます。

  • 出力ラスターの形式が .crf の場合、このツールはピラミッド ラスター格納環境をサポートします。 デフォルトでは、ピラミッドは出力で作成されます。 その他の出力形式ではこの環境はサポートされず、ピラミッドは作成されません。

  • このツールに適用されるジオプロセシング環境の詳細については、「解析環境と Spatial Analyst」をご参照ください。

パラメーター

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

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

Raster Layer
出力スケール ラスター
(オプション)

各セルで最も極端な差分が見つかったスケールを含む出力ラスター。 スケールは、近傍距離値として表されます。

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

Raster Dataset
距離単位
(オプション)

[最小近傍距離][最大近傍距離][距離の増分] の各パラメーターに使用される距離単位を指定します。

距離は、セルの数または指定した単位で計測されます。 デフォルトは、[入力サーフェス ラスター] 値の空間参照のマップ単位です。

  • セル距離の単位はセルです。
  • メートル距離の単位はメートルです。
  • センチメートル距離の単位はセンチメートルです。
  • キロメートル距離の単位はキロメートルです。
  • インチ距離単位は国際インチになります。
  • フィート距離単位は国際フィートになります。
  • ヤード距離単位は国際ヤードになります。
  • マイル距離単位は国際マイルになります。
String
最小近傍距離
(オプション)

標高差が計算される最小の近傍縮尺を定義する距離。 これは、ターゲット セルの中心からの距離で、ターゲット セルの周囲にセルの正方形を作成します。

この値は [最大近傍距離] パラメーター値以下、入力ラスター セル サイズまたは 1 セル以上である必要があります。

デフォルト値は [入力サーフェス ラスター] パラメーター値のセル サイズの 4 倍で、9 x 9 セル近傍になります。

Double
最大近傍距離
(オプション)

標高差が計算される最大の近傍スケールを定義する距離。 これは、ターゲット セルの中心からの距離で、ターゲット セルの周囲にセルの正方形を作成します。

この値は [最小近傍距離] パラメーター値と、入力ラスター セル サイズまたは 1 セル以上である必要があります。

デフォルト値は [入力サーフェス ラスター] パラメーター値のセル サイズの 13 倍で、27 x 27 セル近傍になります。

Double
距離の増分
(オプション)

スケール間の近傍距離の増分。

このパラメーター値は、[入力サーフェス ラスター] のセル サイズまたは 1 セルよりも小さくすることはできません。

デフォルト値は、[入力サーフェス ラスター] パラメーター値のセル サイズです。

Double
解析のターゲット デバイス
(オプション)

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

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

戻り値

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

各セルの平均標高からの最大差を含む出力ラスター。

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

Raster

MultiscaleSurfaceDifference(in_raster, {out_scale_raster}, {distance_units}, {min_scale}, {max_scale}, {increment}, {analysis_target_device})
名前説明データ タイプ
in_raster

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

Raster Layer
out_scale_raster
(オプション)

各セルで最も極端な差分が見つかったスケールを含む出力ラスター。 スケールは、近傍距離値として表されます。

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

Raster Dataset
distance_units
(オプション)

min_scalemax_scale、increment の各パラメーターに使用される距離単位を指定します。

距離は、セルの数または指定した単位で計測されます。 デフォルトは、in_raster 値の空間参照のマップ単位です。

  • CELLS距離の単位はセルです。
  • METERS距離の単位はメートルです。
  • CENTIMETERS距離の単位はセンチメートルです。
  • KILOMETERS距離の単位はキロメートルです。
  • INCHES距離単位は国際インチになります。
  • FEET距離単位は国際フィートになります。
  • YARDS距離単位は国際ヤードになります。
  • MILES距離単位は国際マイルになります。
String
min_scale
(オプション)

標高差が計算される最小の近傍縮尺を定義する距離。 これは、ターゲット セルの中心からの距離で、ターゲット セルの周囲にセルの正方形を作成します。

この値は max_scale パラメーター値以下、入力ラスター セル サイズまたは 1 セル以上である必要があります。

デフォルト値は in_raster パラメーター値のセル サイズの 4 倍で、9 x 9 セル近傍になります。

Double
max_scale
(オプション)

標高差が計算される最大の近傍スケールを定義する距離。 これは、ターゲット セルの中心からの距離で、ターゲット セルの周囲にセルの正方形を作成します。

この値は min_scale パラメーター値と、入力ラスター セル サイズまたは 1 セル以上である必要があります。

デフォルト値は in_raster パラメーター値のセル サイズの 13 倍で、27 x 27 セル近傍になります。

Double
increment
(オプション)

スケール間の近傍距離の増分。

このパラメーター値は、in_raster のセル サイズまたは 1 セルよりも小さくすることはできません。

デフォルト値は、in_raster パラメーター値のセル サイズです。

Double
analysis_target_device
(オプション)

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

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

戻り値

名前説明データ タイプ
out_difference_raster

各セルの平均標高からの最大差を含む出力ラスター。

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

Raster

コードのサンプル

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

次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。

この例では、すべてのオプション パラメーターにデフォルト値を使用して、入力サーフェス ラスターから差分出力ラスターを生成します。

from arcpy.sa import *
outMaxDifferences = MultiscaleSurfaceDifference("elevation.tif", "", "", "", "", "", "")
outMaxDifferences.save("C:/sapyexamples/output/outmaxdifferencs01.tif")
MultiscaleSurfaceDifference の例 2 (スタンドアロン スクリプト)

次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。

この例では、10 メートルから 100 メートルまでのスケールの差分ラスターを、各スケール間を 1 メートルの増分で生成します。

# Name: MultiscaleSurfaceDifference_standalone.py
# Description: Calculates the maximum difference for each cell from the mean
# over a range of spatial scales.
# Requirements: Spatial Analyst Extension

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

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

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

# Set local variables
inRaster = "elevation.tif"
inDistanceUnits = "METERS"
inMinScale = 10
inMaxScale = 100
inIncrement = 1

# Execute the tool
outMaxDifferences = MultiscaleSurfaceDifference(inRaster, "", inDistanceUnits, inMinScale,
                                                inMaxScale, inIncrement, "")

# Save the output 
outMaxDifference.save("C:/sapyexamples/output/outmaxdifferences02.tif")

ライセンス情報

  • Basic: 次のものが必要 Spatial Analyst
  • Standard: 次のものが必要 Spatial Analyst
  • Advanced: 次のものが必要 Spatial Analyst

関連トピック