-編集:以下の情報は正しくありません。正しいプロセスを説明するwhuberの投稿をご覧ください。
TRI(Riley 1999)とTPI(Jenness 2002)は似ていますが、異なります。
ArcGIS 10.xを使用してTRIおよびTPIを計算するには...
ステップ1: Focal Statisticsツールを使用して、DEMから2つの新しいラスターデータセットを作成します。
ラスター1 "MAX")近傍:長方形、高さ:3、幅:3、単位:セル、統計タイプ:最大
ラスター2 "MIN")近傍:長方形、高さ:3、幅:3、単位:セル、統計タイプ:最小
ステップ2: Raster Calculatorを使用して、作成した2つのラスターデータセットに対して次の機能を実行します。
TRIの場合:SquareRoot(Abs((Square( "%MAX%")-Square( "%MIN%"))))
TPIの場合:( "%Input DEM%"-"%MIN%")/( "%MAX%"-"%MIN%")
以下は、TRI用に作成したモデルからエクスポートされたサンプルPythonコードです。
# -*- coding: utf-8 -*-
# ---------------------------------------------------------------------------
# script.py
# Created on: 2014-03-06 08:56:13.00000
# (generated by ArcGIS/ModelBuilder)
# Usage: script <Input_raster> <TRI_Raster>
# Description:
# ---------------------------------------------------------------------------
# Import arcpy module
import arcpy
# Check out any necessary licenses
arcpy.CheckOutExtension("spatial")
# Script arguments
Input_raster = arcpy.GetParameterAsText(0)
TRI_Raster = arcpy.GetParameterAsText(1)
if TRI_Raster == '#' or not TRI_Raster:
TRI_Raster = "C:\\Users\\Documents\\ArcGIS\\Default.gdb\\rastercalc1" # provide a default value if unspecified
# Local variables:
MIN = Input_raster
MAX = Input_raster
# Process: 3x3Max
arcpy.gp.FocalStatistics_sa(Input_raster, MAX, "Rectangle 3 3 CELL", "MAXIMUM", "DATA")
# Process: 3x3Min
arcpy.gp.FocalStatistics_sa(Input_raster, MIN, "Rectangle 3 3 CELL", "MINIMUM", "DATA")
# Process: Raster Calculator
arcpy.gp.RasterCalculator_sa("SquareRoot(Abs((Square(\"%MAX%\") - Square(\"%MIN%\"))))", TRI_Raster)