IDW(Inverse Distance Weighted) (Spatial Analyst)
使用法
-
IDW(Inverse Distance Weighted)を使用したセルの出力値は、内挿に使用する値の範囲に制限されています。IDW は加重平均距離なので、平均が入力の最高値より大きくなったり、最低値より小さくなることはできません。したがって、これらの極値がまだサンプリングされていない場合は、尾根や谷を作成することができません(Watson と Philip、1985)。
-
IDW によって最適な結果を得ることができるのは、シミュレーション対象のローカル変動に対して、十分な密度のサンプリングが行われている場合です。入力ポイントのサンプリングがまばらで不均等な場合、結果として目的のサーフェスを十分に表現できない可能性があります(Watson と Philip、1985)。
-
内挿された値に対する入力ポイントの影響は、等方性です。入力ポイントが内挿結果におよぼす影響は、距離によって左右されるので、IDW では「尾根が維持」されません(Philip と Watson、1982)。
-
入力データセットには X、Y 座標が同じである位置に複数のポイントが存在することがあります。共通の位置にあるポイントの値が同じである場合、それは重複とみなされて出力には影響しません。値が異なる場合は、一致ポイントとみなされます。
このデータ条件の処理方法は各種内挿ツールによって異なることがあります。たとえば、最初に遭遇した一致ポイントが計算に使用されることも、最後に遭遇した一致ポイントが計算に使用されることもあります。そのため、出力ラスタ内のある位置に予想とは異なる値が出力される可能性があります。対策としては、このような一致ポイントを削除したデータを用意しておくことです。[Spatial Statistics] ツールボックスの [イベントの集計(Collect Events)] ツールは、データ内の一致ポイントを特定するのに役立ちます。
-
サーフェスの連続性を中断することが認知されているリニア フィーチャの位置を指定するには、バリア オプションが使用されます。これらのフィーチャには Z 値がありません。バリアの代表的な例としては、崖、断層、堤防などが挙げられます。バリアがあると、個々のセルにおける内挿計算においては、バリアで仕切られた一方の側からのみ(該当セルが存在する側からのみ)、内挿用の入力ポイントが採取されます。バリアによる分離は、ポイントの各ペア間の見通し解析によって決定されます。つまり、相互に影響する領域から除外される 2 つのポイントには、トポロジ分離は必要ありません。厳密にバリア ライン上に存在する入力サンプル ポイントは、バリアの両側の選択サンプル セットに含まれます。
-
バリア フィーチャは、ポリライン フィーチャとして入力されます。IDW では、リニア フィーチャに対して X、Y 座標のみを使用します。したがって、バリアの左側と右側に Z 値を設定する必要はありません。Z 値を設定しても無視されます。
-
バリアを使うと、処理時間が大幅に長くなることがあります。
-
このツールの入力ポイントには、約 4500 万という制限があります。入力フィーチャクラスに含まれるポイント数が 4500 万を超えると、ツールが結果を作成できなくなる可能性があります。この制限を避けるには、調査領域を複数部分に内挿し、エッジの一部が重なっていることを確認し、結果をモザイク処理して 1 つの大きなラスタ データセットを作成します。あるいは、テレイン データセットを使用して、無数の計測ポイントによって構成されているポイントとサーフェスを格納して視覚化することもできます。
Geostatistical Analyst エクステンションがある場合は、大規模なデータセットを処理できる可能性があります。
-
入力フィーチャ データには少なくとも 1 つの有効なフィールドが含まれていなければなりません。
構文
パラメータ | 説明 | データ タイプ |
in_point_features |
サーフェス ラスタとして内挿する Z 値を含む入力ポイント フィーチャ。 | Feature Layer |
z_field |
各ポイントの高さまたは大きさの値を保持するフィールド。 これは数値フィールドまたは、入力ポイント フィーチャが Z 値を含む場合は Shape フィールドです。 | Field |
cell_size (オプション) |
作成する出力ラスタのセル サイズ。 環境設定で特定の値が指定されている場合は、その値を使用します。そうでない場合、セル サイズは、入力空間参照において、入力ポイント フィーチャの範囲の幅または高さ(どちらか短いほう)を 250 で割った値になります。 | Analysis Cell Size |
power (オプション) |
距離の指数。 内挿された値に対する周囲のポイントの有意性を制御します。累乗が大きいほど、遠くのポイントからの影響が小さくなります。任意の正の実数に設定できますが、最も合理的な結果は 0.5 ~ 3 の値を使用した場合に得られます。デフォルトは 2 です。 | Double |
search_radius (オプション) |
Radius クラスは、どの入力ポイントを使用して出力ラスタの各セル値を内挿するかを定義します。 Radius クラスには、次の 2 つのタイプがあります。RadiusVariable と RadiusFixed です。可変検索範囲は、指定された数の入力サンプル ポイントを見つけて内挿するときに使用されます。固定タイプでは、指定された固定距離内にあるすべての入力ポイントが内挿に使用されます。デフォルトは可変タイプです。
| Radius |
in_barrier_polyline_features (オプション) |
入力サンプル ポイントの検索で、ブレークまたは制限として使用されるポリライン フィーチャ。 | Feature Layer |
戻り値
名前 | 説明 | データ タイプ |
out_raster |
内挿された出力サーフェス ラスタ。 | Raster |
コードのサンプル
この例では、ポイント シェープファイルを入力として、内挿したサーフェスを TIFF ラスタとして出力します。
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outIDW = Idw("ozone_pts.shp", "ozone", 2000, 2, RadiusVariable(10, 150000))
outIDW.save("C:/sapyexamples/output/idwout.tif")
この例では、ポイント シェープファイルを入力として、内挿したサーフェスを GRID ラスタとして出力します。
# Name: IDW_Ex_02.py
# Description: Interpolate a series of point features onto a rectangular
# raster using Inverse Distance Weighting (IDW).
# 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
inPointFeatures = "ca_ozone_pts.shp"
zField = "ozone"
cellSize = 2000.0
power = 2
searchRadius = RadiusVariable(10, 150000)
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute IDW
outIDW = Idw(inPointFeatures, zField, cellSize, power, searchRadius)
# Save the output
outIDW.save("C:/sapyexamples/output/idwout02")