ラスターの変化の計算 (Compute Change Raster) (Image Analyst)

Image Analyst ライセンスで利用できます。

サマリー

2 つのラスター データセット間の絶対的な差分、相対的な差分、カテゴリ差分、またはスペクトル差分を計算します。

使用法

  • このツールは、2 つのラスターを比較して、2 つのラスター間の差分を含む新しいラスターを生成します。 たとえば、このツールを使用して、2001 年から 2020 年にかけて炭素蓄積のピクセル値がどのように変化したのかを確認したり、2010 年から 2015 年にかけて土地被覆がどのように変化したのかを確認したりします。

  • ラスターの変化を計算できる計算タイプは、次のとおりです。

    • [差異] - [From ラスター] パラメーターのピクセル値と [To ラスター] パラメーターのピクセル値の間の数学的な差 (減算) が計算されます。

      出力 = (To ラスター) - (From ラスター)

    • [相対的な差分] - 比較される値の数量を考慮に入れて、ピクセル値の差が計算されます。

      出力 = (To ラスター - From ラスター) / max(To ラスター, From ラスター)

    • カテゴリ差分 - 2 つのカテゴリ ラスターまたは主題ラスター間の差。出力には、2 つのラスター間で発生した各クラス遷移が表示されます。
    • [スペクトル ユークリッド距離] - 2 つのマルチバンド ラスター間のユークリッド距離であり、各ピクセルがベクターとして処理されます。 値が大きいほど、画像間の変化が大きくなります。
    • [スペクトル角度差] - 2 つのマルチバンド ラスター間のスペクトル角度であり、各ピクセルがベクターとして処理されます。 角度が大きいほど、画像間の変化が大きくなります。
    • [変化が最も大きいバンド] - 2 つのマルチバンド ラスター間の各ピクセルで最も大きい変化を示すバンド。

  • [カテゴリ差分] 計算タイプから生成される出力は、属性テーブルを含むラスター データセットです。 このテーブルは、トランジション タイプ (例: 森林から市街地まで)、各トランジション タイプに含まれるピクセルの数、各トランジション タイプの推定エリアで構成されます。 エリアは、ピクセル サイズに各トランジション タイプ内のピクセルの数を掛けて求められた値として算出されます。 この単位は、入力ラスター データの距離単位に相当します。

  • 2 つのカテゴリ ラスター間の差を計算する場合に、解析を特定のクラスに制限することができます。 たとえば、都市の成長を視覚化するには、[From クラス] リスト内にあるすべてのクラスのうち、[To クラス] リストにある Urban クラスだけを含めます。 結果には、Urban カテゴリに関与した遷移がすべて含まれます。

  • 入力ラスターに異なるセル サイズまたは範囲が含まれている場合、[セル サイズ] および [出力範囲] 環境設定でセル サイズと範囲を指定できます。

  • [変化の計算方法] パラメーターが [カテゴリ差分] に設定されている場合、[From ラスター] パラメーターと [To ラスター] パラメーターには、Value フィールドまたは ClassValue フィールドに関連付けられたラスター属性テーブルが必要です。 対応するクラス値のクラス名は、出力クラス送信名として使用されます。 このツールでは、標準のフィールド クラス名 CLASS_NAME または CLASSNAME が使用されます。 これらのフィールド名が存在しない場合は、[From ラスターのクラス名フィールド] パラメーターと [To ラスターのクラス名フィールド] パラメーターを使用して定義することができます。

パラメーター

ラベル説明データ タイプ
From ラスター

解析対象の初期または古いラスター。

Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service; String
To ラスター

解析対象の最終または新しいラスター。 これは、初期ラスターと比較されるラスターです。

Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service; String
変化の計算方法
(オプション)

2 つのラスター間で実行する計算のタイプを指定します。

  • 差分ラスターのピクセル値間の数学的な差 (減算) が計算されます。 これがデフォルトです。
  • 相対的な差分比較されるピクセル値の数量を考慮に入れて、ピクセル値の差が計算されます。
  • カテゴリ差分2 つのカテゴリ ラスターまたは主題ラスター間の差が計算されます。 出力には、2 つのラスター間で発生したクラス遷移が含まれます。
  • スペクトル ユークリッド距離2 つのマルチバンド ラスターのピクセル値間のユークリッド距離が計算されます。
  • スペクトル角度差2 つのマルチバンド ラスターのピクセル値間のスペクトル角度が計算されます。 出力の単位はラジアンになります。
  • 変化が最も大きいバンド2 つのマルチバンド ラスター間の各ピクセルで最も大きい変化を示すバンドが計算されます。
String
From クラス
(オプション)

計算に含める [From ラスター] パラメーターのクラス名のリスト。 クラスが指定されていないと、すべてのクラスが含まれます。

このパラメーターは、[変化の計算方法] パラメーターが [カテゴリ差分] に設定されている場合にアクティブになります。

String
To クラス
(オプション)

計算に含める [To ラスター] パラメーターのクラス名のリスト。 クラスが指定されていないと、すべてのクラスが含まれます。

このパラメーターは、[変化の計算方法] パラメーターが [カテゴリ差分] に設定されている場合にアクティブになります。

String
フィルター方法
(オプション)

出力ラスターに分類されるピクセルを指定します。 このパラメーターは、[変化の計算方法] パラメーターが [カテゴリ差分] に設定されている場合にアクティブになります。

  • 変化したピクセルのみカテゴリを変更したピクセルのみが出力に分類されます。 カテゴリを変更していないピクセルは「Other」というクラスにグループ化されます。
  • 変化していないピクセルのみカテゴリを変更していないピクセルのみが出力に分類されます。 カテゴリを変更したピクセルは「Other」というクラスにグループ化されます。
  • すべてのピクセルピクセルはすべて出力に分類されます。 これがデフォルトです。
String
遷移クラスの色
(オプション)

出力クラスのシンボル表示に使用する色を指定します。 ピクセルがあるクラスから別のクラスに変化すると、出力ピクセルの色は初期クラス タイプ、最終クラス タイプ、または 2 つのタイプのブレンドを表します。

このパラメーターは、[変化の計算方法] パラメーターが [カテゴリ差分] に設定されている場合にアクティブになります。

  • From 色と To 色の平均出力クラスの色は From (初期) クラス色と To (最終) クラス色の平均です。 これがデフォルトです。
  • From 色出力クラスの色は From (初期) クラス色と一致します。
  • To 色出力クラスの色は To (最終) クラス色と一致します。
String
From ラスターのクラス名フィールド
(オプション)

[From ラスター] パラメーターの値に含まれているクラス名が格納されるフィールド。 このツールでは、使用する ClassName フィールドまたは Class_Name フィールドが自動的に検索されます。

このパラメーターは、標準のフィールド名が入力値に含まれていない場合に使用します。

Field
To ラスターのクラス名フィールド
(オプション)

[To ラスター] パラメーターの値に含まれているクラス名が格納されるフィールド。 このツールでは、使用する ClassName フィールドまたは Class_Name フィールドが自動的に検索されます。

このパラメーターは、標準のフィールド名が入力値に含まれていない場合に使用します。

Field

戻り値

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

出力変更ラスター データセット。

Raster

ComputeChangeRaster(from_raster, to_raster, {compute_change_method}, {from_classes}, {to_classes}, {filter_method}, {define_transition_colors}, {from_classname_field}, {to_classname_field})
名前説明データ タイプ
from_raster

解析対象の初期または古いラスター。

Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service; String
to_raster

解析対象の最終または新しいラスター。 これは、初期ラスターと比較されるラスターです。

Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service; String
compute_change_method
(オプション)

2 つのラスター間で実行する計算のタイプを指定します。

  • DIFFERENCEラスターのピクセル値間の数学的な差 (減算) が計算されます。 これがデフォルトです。
  • RELATIVE_DIFFERENCE比較されるピクセル値の数量を考慮に入れて、ピクセル値の差が計算されます。
  • CATEGORICAL_DIFFERENCE2 つのカテゴリ ラスターまたは主題ラスター間の差が計算されます。 出力には、2 つのラスター間で発生したクラス遷移が含まれます。
  • SPECTRAL_EUCLIDEAN_DISTANCE2 つのマルチバンド ラスターのピクセル値間のユークリッド距離が計算されます。
  • SPECTRAL_ANGLE_DIFFERENCE2 つのマルチバンド ラスターのピクセル値間のスペクトル角度が計算されます。 出力の単位はラジアンになります。
  • BAND_WITH_MOST_CHANGE2 つのマルチバンド ラスター間の各ピクセルで最も大きい変化を示すバンドが計算されます。
String
from_classes
[from_classes,...]
(オプション)

計算に含める from_raster パラメーターのクラス名のリスト。 クラスが指定されていないと、すべてのクラスが含まれます。

このパラメーターは、compute_change_method パラメーターが CATEGORICAL_DIFFERENCE に設定されている場合にアクティブになります。

String
to_classes
[to_classes,...]
(オプション)

計算に含める to_raster パラメーターのクラス名のリスト。 クラスが指定されていないと、すべてのクラスが含まれます。

このパラメーターは、compute_change_method パラメーターが CATEGORICAL_DIFFERENCE に設定されている場合にアクティブになります。

String
filter_method
(オプション)

出力ラスターに分類されるピクセルを指定します。 このパラメーターは、compute_change_method パラメーターが CATEGORICAL_DIFFERENCE に設定されている場合にアクティブになります。

  • CHANGED_PIXELS_ONLYカテゴリを変更したピクセルのみが出力に分類されます。 カテゴリを変更していないピクセルは「Other」というクラスにグループ化されます。
  • UNCHANGED_PIXELS_ONLYカテゴリを変更していないピクセルのみが出力に分類されます。 カテゴリを変更したピクセルは「Other」というクラスにグループ化されます。
  • ALLピクセルはすべて出力に分類されます。 これがデフォルトです。
String
define_transition_colors
(オプション)

出力クラスのシンボル表示に使用する色を指定します。 ピクセルがあるクラスから別のクラスに変化すると、出力ピクセルの色は初期クラス タイプ、最終クラス タイプ、または 2 つのタイプのブレンドを表します。

このパラメーターは、compute_change_method パラメーターが CATEGORICAL_DIFFERENCE に設定されている場合にアクティブになります。

  • AVERAGE出力クラスの色は From (初期) クラス色と To (最終) クラス色の平均です。 これがデフォルトです。
  • FROM_COLOR出力クラスの色は From (初期) クラス色と一致します。
  • TO_COLOR出力クラスの色は To (最終) クラス色と一致します。
String
from_classname_field
(オプション)

from_raster パラメーターの値に含まれているクラス名が格納されるフィールド。 このツールでは、使用する ClassName フィールドまたは Class_Name フィールドが自動的に検索されます。

このパラメーターは、標準のフィールド名が入力値に含まれていない場合に使用します。

Field
to_classname_field
(オプション)

to_raster パラメーターの値に含まれているクラス名が格納されるフィールド。 このツールでは、使用する ClassName フィールドまたは Class_Name フィールドが自動的に検索されます。

このパラメーターは、標準のフィールド名が入力値に含まれていない場合に使用します。

Field

戻り値

名前説明データ タイプ
out_raster_dataset

出力変更ラスター データセット。

Raster

コードのサンプル

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

この例では、2000 年と 2020 年の NDVI ピクセル値の差を計算します。

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

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

NDVIchange = arcpy.ia.ComputeChangeRaster(
	"NDVI_2000.tif", "NDVI_2020.tif", "DIFFERENCE")
	
NDVIchange.save("C:/Data/NDVI_2000_2020.tif")
ComputeChangeRaster の例 2 (スタンドアロン スクリプト)

この例では、2000 年と 2020 年の NDVI ピクセル値の相対的な差を計算します。

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

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

# Define input parameters
FromRaster = "C:/Data/NDVI_2000.tif"
ToRaster = "C:/Data/NDVI_2020.tif"
ChangeType = "RELATIVE_DIFFERENCE"

# Execute - calculate the relative difference in NDVI from 2000 to 2020
NDVIrelativeChange = arcpy.ia.ComputeChangeRaster(
	FromRaster, ToRaster, ChangeType)
	
# Save output
NDVIrelativeChange.save("C:/Data/Relative_NDVI_2000_2020.tif")
ComputeChangeRaster の例 3 (スタンドアロン スクリプト)

この例では、2000 年から 2020 年にかけての土地被膜の変化を計算し、Forest、Agriculture、Water、または Barren クラスから Urban クラスに変化したピクセルのみを抽出します。

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

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


LandcoverChange = arcpy.ia.ComputeChangeRaster(
	"Landcover_2000.tif", "Landcover_2020.tif", "CATEGORICAL_DIFFERENCE", 
	"'Forest';'Agriculture';'Water';'Barren'", "'Urban'", 
	"CHANGED_PIXELS_ONLY", "AVERAGE")
	
# Save output  
LandcoverChange.save("C:/Data/Landcover_2000_2020.tif")

関連トピック