領域の特定 (Locate Regions) (Spatial Analyst)

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

概要

指定した評価条件を満たし、識別された形状、サイズ、数、および領域内の距離制限を満たす入力有用性 (適合性) ラスターから、最適な領域、または連続セルのグループを識別します。

このツールは、パラメーター化された領域拡張 (PRG) アルゴリズムを使用して、指定した形状を最適に維持しながら領域の有用性も最大化する隣接セルを領域に追加することで、シード セルから候補領域を拡張します。選択アルゴリズムと評価条件 (最も高い平均値など) を使用して、特定されたサイズと空間的制限を満たす候補領域から最適な領域が選択されます。空間的制限の例としては、領域間で特定の最小距離を維持することなどが挙げられます。

[領域の特定 (Locate Regions)] ツールの詳細

使用法

  • 多くの場合、入力有用性ラスターは、適合性モデルの出力です。適合性モデルは、各場所の適合性を、その場所で実際に見つかった必要な属性に基づいて識別します。適合性モデリングは、Spatial Analyst で最も一般的なアプリケーションの 1 つです。適合性モデリングの詳細については、「オーバーレイ解析について」をご参照ください。

  • 有用性ラスターの入力値が高いほど、有用性が高くなります。

  • [領域間の最小距離][領域間の最大距離] の設定は、[合計面積] より優先されます。たとえば、5 つの領域が必要な場合でも、指定した最小距離と最大距離のために特定できる領域が 4 つだけの場合は、4 つの領域のみが選択されます。その結果、[合計面積] は条件を満たしません。警告が通知される場合もありますが、されない場合もあります。

  • パラメーター化された領域拡張 (PRG) アルゴリズムは、入力ラスターの有用性の値に基づき、領域を拡張します。セルの値が大きいほど拡張効果は高くなります。[評価方法] は、選択される候補領域を決定します。これは、領域の拡張には影響しません。

  • [領域の特定 (Locate Regions)] ツールは、計算負荷が非常に高い処理です。入力データの設定方法と、これに影響する特定のパラメーターの設定には、いくつかの手順があります。

  • 処理を高速化するには、選択処理で考慮しない場所を、事前処理のステップで NoData に設定するか、マスクを使用して除去する必要があります。領域は、これらの除外された場所からは拡張せず、選択プロセスに割り当てられません。除外されたエリアは、[既存の領域入力ラスターまたはフィーチャ] とは異なり、パラメーター化された領域拡張 (PRG) アルゴリズムや候補領域の選択において、[領域間の最小距離][領域間の最大距離] に影響しません。

  • [拡張元のシードの数][拡張の解像度] パラメーターで選択されたオプションは、処理時間に大きな影響を与える可能性があります。

    これらのパラメーターで Small および Low オプションを選択すると、最高のパフォーマンスが実現します。[拡張元のシードの数]SmallMediumLarge を、[拡張の解像度]LowMediumHigh を選択すると、適切な時間内に最も信頼できる結果を得ることができます。

  • [拡張元のシードの数] または [拡張の解像度]Maximum 以外のオプションを指定した場合は、すべてのセルから領域が拡張しなかったり粗い解像度にリサンプリングされるため、データが失われます。ただし、入力ラスターのサイズによっては、Maximum オプションを使用すると、処理に非常に時間がかかる可能性があります。そのため、その他のオプションの方が実用的な場合があります。

  • 入力ラスターのサイズによっては、[拡張元のシードの数] または [拡張の解像度]Maximum を選択すると、時間がかかる可能性があります。 [領域の特定 (Locate Regions)] のアルゴリズムは、2 ステップのプロセスで実行されます。まず、候補領域が拡張され、次に、候補領域から最適な領域が選択されます。入力ラスターが大きい場合、領域の拡張に時間がかかる可能性があります。ただし、領域の選択ステップでは、距離マトリックスが最初に読み込まれます。このマトリックスをメモリ制限のために読み込むことができない場合、ツールは処理を終了します。このような場合は、拡張元のシードの数を少なくするか、拡張の解像度を低くします。

  • [拡張元のシードの数][拡張の解像度] のデフォルト値は、入力ラスター内のセル数に依存します。入力ラスター内のセルが多いほど、このツールの実行時間は長くなります。実行時間が極端に長くならないように、これらのデフォルト値は適切に設定されています。

    入力セル数

    拡張元のシードの数拡張の解像度

    <= 100,000

    最大最大

    100,000 - 500,000

    最大

    > 500,000

  • [領域の数] が 8 より大きい場合は、[領域の選択方法]Sequential オプションを使用することをお勧めします。8 より多くの領域が選択されている場合に Combinatorial 方法を使用すると、パフォーマンスが低下する可能性があります。

  • 通常、[拡張元のシードの数] の値は、処理速度に最も大きな影響を与えます。拡張元のシードの数が多いほど、ツールの処理時間は長くなります。ただし、ほとんどの場合、指定した値に関係なく、結果は似たものになります。

  • [拡張元のシードの数] は、有用性の値に基づいて入力ラスター内に分散します。有用性の値が高いエリアには、より多くのシードが配置されます。[評価方法] は、この分散に影響しません。

  • [拡張の解像度] は、パラメーター化された領域拡張が実行される解像度を設定します。入力ラスターは、共一次内挿法を使用して、定義された解像度にリサンプリングされます。領域が選択されると、最終的な出力ラスターが作成される前に、最近隣内挿法を使用して結果がセル サイズ環境にリサンプリングされます。

  • 入力ラスターのエッジにある領域に対して、形状の調整が実行されます。形状を維持するために少なくとも 1 つのセルが入力ラスターの境界外に存在する必要がある場合、領域の有用性は 50 % に減少します。この有用性の減少によって、この領域が選択される可能性が低くなりますが、この領域が減少によって選択プロセスから除外されるわけではありません。

  • [領域内の島を許可しない] がオンの場合、選択された面積が、指定された合計面積より大きくなる可能性があります。選択された面積と指定した合計面積の間の矛盾が、島を許可しないパラメーターに基づくかどうかを判断するには、このパラメーターをオフにしてツールを再実行します。最初の実行で使用した出力ラスター属性テーブルの COUNT からセル数を追加します。次に、ツールを再実行し、それぞれの合計にセルの面積を乗算し、指定した面積と結果を比較します。

  • [拡張の解像度]Maximum 以外のオプションが指定された場合、後処理を通じて、各領域の元の有用性の値は [ゾーン統計 (Zonal Statistics)] を使用して識別できます。 [領域の特定 (Locate Regions)] の出力領域ラスターをゾーン ラスターとして、入力有用性ラスターを値ラスターとして入力します。

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

構文

LocateRegions(in_raster, {total_area}, {area_units}, {number_of_regions}, {region_shape}, {region_orientation}, {shape_tradeoff}, {evaluation_method}, {minimum_area}, {maximum_area}, {minimum_distance}, {maximum_distance}, {distance_units}, {in_existing_regions}, {number_of_neighbors}, {no_islands}, {region_seeds}, {region_resolution}, {selection_method})
パラメーター説明データ タイプ
in_raster

領域を取得する入力有用性ラスター。

入力ラスターの値が大きいほど、有用性が高くなります。

ラスターは、整数型または浮動小数点型のいずれかになります。

Raster Layer
total_area
(オプション)

すべての領域の合計面積。

デフォルトは、処理範囲内にある入力セルの 10 % です。

Double
area_units
(オプション)

total_areaminimum_areamaximum_area の各パラメーターで使用される面積の単位を定義します。

利用可能なオプションとそれに対応する単位は次のとおりです。

  • SQUARE_MAP_UNITS出力空間参照の距離単位の平方の場合
  • SQUARE_MILESマイルの場合
  • SQUARE_KILOMETERSキロメートルの場合
  • HECTARESヘクタールの場合
  • ACRESエーカーの場合
  • SQUARE_METERSメートルの場合
  • SQUARE_YARDSヤードの場合
  • SQUARE_FEETフィートの場合

デフォルトは、入力ラスター データセットに基づきます。入力ラスターの単位がフィート、ヤード、マイル、その他のインペリアル単位の場合、Square miles が使用されます。入力ラスターの単位がメートル、キロメートル、その他のメトリック単位の場合、Square kilometers が使用されます。

String
number_of_regions
(オプション)

total_area に分散する領域の数を決定します。

指定できる領域の最大数は 30 です。デフォルトは 1 です。

Long
region_shape
(オプション)

出力領域の形状の特徴を定義します。

領域は、シード セルの位置から開始して、セルに指定された、目的の形状を維持する優先順位を使用して外側に拡張します。

利用可能な形状オプションは次のとおりです。

  • CIRCLE円形の領域を維持するセルが大きなウェイトを取ります。これがデフォルトです。
  • ELLIPSE楕円形の領域を維持するセルが大きなウェイトを取ります。
  • TRIANGLE正三角形の領域を維持するセルが大きなウェイトを取ります。
  • SQUARE正方形の領域を維持するセルが大きなウェイトを取ります。
  • PENTAGON五角形の領域を維持するセルが大きなウェイトを取ります。
  • HEXAGON六角形の領域を維持するセルが大きなウェイトを取ります。
  • OCTAGON八角形の領域を維持するセルが大きなウェイトを取ります。
String
region_orientation
(オプション)

定義された形状の方向を定義します。領域は、セルに指定された、領域の形状における目的の方向を維持する優先順位を使用して、シードの場所から拡張します。

方向の値は、北から時計回りに 0 ~ 360 度です。デフォルトは 0 です。

デフォルトの 0 の場合、円形は変化なし、楕円は補助軸の向きが南北、三角形と五角形は 1 つのポイントが真上、四角形、六角形、八角形は 1 つの辺が東西になります。

Double
shape_tradeoff
(オプション)

パラメーター化された領域拡張アルゴリズムで候補領域が拡張しているときのセルのウェイトを識別します。重み付けは、領域の形状を維持するためのセルの寄与度と、セルの属性値の有用性寄与度とのトレードオフです。

値が高いほど、領域の形状を維持することが、高い有用性の値を選択することより重要になります。使用できるパーセント値は 0 ~ 100 です。デフォルトは 50 です。

このパラメーターは、実現可能な候補領域を識別するために使用されます。アルゴリズムで選択される候補領域は、evaluation_method パラメーターによって制御されます。

Double
evaluation_method
(オプション)

パラメーター化された領域拡張アルゴリズムで識別された候補領域の中で、最も優先される領域を決定するために使用される評価条件です。優先順位は、有用性値の特定の統計情報や、領域内のセルの空間配置に基づいて指定できます。

利用可能なオプションは次のとおりです。

  • HIGHEST_AVERAGE_VALUE最も高い平均値に基づいて、領域を選択します。これがデフォルト設定。
  • HIGHEST_SUM最も高い合計値に基づいて、領域を選択します。
  • HIGHEST_MEDIAN_VALUE最も高い中央値に基づいて、領域を選択します。
  • HIGHEST_VALUE領域内に含まれる最も高い個別セル値に基づいて、領域を選択します。このオプションを使用すると、最適な個別セルを選択できます。
  • LOWEST_VALUE領域内に含まれる最も低い個別セル値に基づいて、領域を選択します。このオプションを使用すると、選択した領域に有用性が本当に低いセルが含まれます。
  • GREATEST_CORE_AREA最も大きなコア エリアに基づいて、領域を選択します。領域のエッジから 1 つのセルより遠いセルは、コアの一部と見なされます。エッジ距離は、解析セル サイズによって制御できます。セル サイズを小さく設定すると、コア エリアが増大します。
  • HIGHEST_CORE_SUMコア エリアの有用性値の最も高い累積合計に基づいて、領域を選択します。エッジ距離は、解析セル サイズによって制御できます。
  • GREATEST_EDGEP1 レシオを使用した最も大きなエッジ量に基づいて、領域を選択します。P1 は、形状の周長と同じ面積の円の周長の比率です。円の P1 レシオは 1 です。
String
minimum_area
(オプション)

各領域に許可する最小面積を定義します。

area_units で指定された単位が使用されます。

最小面積と最大面積が定義されたときの領域の作成方法に関する詳細については、「最小面積と最大面積が定義されたときの領域の決定方法」をご参照ください。

Double
maximum_area
(オプション)

各領域に許可する最大面積を定義します。

area_units で指定された単位が使用されます。

最小面積と最大面積が定義されたときの領域の作成方法に関する詳細については、「最小面積と最大面積が定義されたときの領域の決定方法」をご参照ください。

Double
minimum_distance
(オプション)

領域間に許可する最小距離を定義します。2 つの領域を、この距離より近くに配置することはできません。

このパラメーターは、パラメーター化された領域拡張 (PRG) アルゴリズムに影響します。あるセルが候補領域に追加される可能性があるが、in_existing_regions で指定されたデータセット内の任意の領域からこの距離内にある場合、このセルは候補領域として考慮されません。最小距離設定は、除外された場所 (NoData のセル) には適用されません。

distance_units で指定された単位が使用されます。

Double
maximum_distance
(オプション)

領域間に許可する最大距離を定義します。領域を、少なくとも 1 つの他の領域から、この距離より遠くには配置できません。

領域を順番に選択しているときに、次の最適な領域が、すでに選択された領域からこの距離より遠い場合、その領域はこの時点で考慮されません。ただし、他の領域が選択されることで、後で選択される可能性はあります。

最大距離は in_existing_regions に適用されます。つまり、選択された領域の少なくとも 1 つは、既存の領域から最大距離内にある必要があります。最大距離設定は、除外されたエリア (NoData のセル) には適用されず、PRG アルゴリズムに影響しません。

distance_units で指定された単位が使用されます。

Double
distance_units
(オプション)

minimum_distancemaximum_distance の各パラメーターに使用される距離単位を定義します。

利用可能なオプションとそれに対応する単位は次のとおりです。

  • MAP_UNITS出力空間参照の距離単位の場合
  • MILESマイルの場合
  • KILOMETERSキロメートルの場合
  • METERSメートルの場合
  • YARDSヤードの場合
  • FEETフィートの場合

デフォルトは、入力ラスター データセットに基づきます。入力ラスターの単位がフィート、ヤード、マイル、その他のインペリアル単位の場合、Miles が使用されます。入力ラスターの単位がメートル、キロメートル、その他のメトリック単位の場合、Kilometers が使用されます。

String
in_existing_regions
(オプション)

領域がすでに存在する場所を識別するデータセット。

入力には、ラスターまたはフィーチャ データセットを使用できます。入力がラスターの場合、ラスター内で有効な値を持つ場所はすでに割り当てられていると見なされます。その他すべての場所は、NoData に設定されます。

パラメーター化された領域拡張アルゴリズムでは、既存の領域を含む場所からは領域は拡張しません。既存の領域は、minimum_distancemaximum_distance の拡張と評価に使用されます (上記の対応するパラメーターの説明を参照)。

Raster Layer; Feature Layer
number_of_neighbors
(オプション)

領域の拡張時に使用する隣接セルを定義します。

利用可能なオプションは次のとおりです。

  • FOUR領域セルに隣接する (直交する) 4 つの近傍セルだけが、領域の拡張で考慮されます。
  • EIGHT8 つの近傍セル (直交と対角) が領域の拡張で考慮されます。これがデフォルトです。
String
no_islands
(オプション)

潜在的な領域内で島を許可するかどうかを定義します。

  • NO_ISLANDSパラメーター化された領域拡張アルゴリズムにおいて、領域内に島は存在しません。領域が作成されたら、領域が選択される前に、後処理として flood fill アルゴリズムが実行されます。領域内に島がある場合、島は埋められ、そのセルが領域に加えられます。埋めるプロセスは選択プロセスの前に実行されるため、島セルの有用性が領域に追加され、領域の選択プロセスと出力領域の統計情報にその値が含められます。埋めるプロセスの結果として、割り当てられた合計面積が、ターゲットの total_area の値を超える可能性があります。これがデフォルトです。
  • ISLANDS_ALLOWED島を許可します。
Boolean
region_seeds
(オプション)

領域の拡張元になるシードの数を定義します。

領域拡張アルゴリズムに対するシードの影響の詳細については、「シードの分散方法」をご参照ください。

利用可能なオプションは次のとおりです。

  • AUTOシードの数は、入力ラスター内のセルの数に基づきます。入力ラスター内のセルが 100,000 以内の場合、デフォルトは Maximum です。入力ラスター内のセルが 100,000 より大きい場合、デフォルトは Small です。これがデフォルトです。
  • SMALLシードの数は、NoData のセルを除外した後、入力ラスター内のセル数の 10 % になりますが、1,600 シードは超えません。
  • MEDIUMシードの数は、NoData のセルを除外した後、入力ラスター内のセル数の 20 % になりますが、2,500 シードは超えません。
  • LARGEシードの数は、NoData のセルを除外した後、入力ラスター内のセル数の 30 % になりますが、3,600 シードは超えません。
  • MAXIMUM領域の拡張は、入力ラスター内で利用可能な各セルで発生します。利用可能なセルとは、NoData ではなく、既存の領域として識別されていないすべてのセルです。
String
region_resolution
(オプション)

領域の拡張が発生する解像度を設定します。

入力ラスターは、このパラメーターで識別されたセル数で決定される解像度にリサンプリングされます (以下を参照)。たとえば、Low の場合、入力ラスターは 147,356 セルにリサンプリングされます。パラメーター化された領域拡張アルゴリズムは、リサンプリングされた中間ラスターで拡張します。リサンプリングされた中間ラスターから領域が選択されると、選択された領域がセル サイズにリサンプリングされます。

必要な平均領域サイズのセル数が少なすぎる場合や多すぎる場合は、以下で識別されるターゲットの解像度への調整が実行される可能性があります。この調整により、必要な各領域内に十分な数のセルが確実に存在するか、不必要な処理が行われなくなります。その結果、指定された以下の各解像度にリサンプリングされた中間ラスターの合計セル数が、ターゲットのセル数より少ない/多い可能性があります。この調整と使用される閾値の詳細については、「必要な領域のサイズに基づく領域拡張の解像度の調整」をご参照ください。

入力のセルが 147,356 未満の場合や、Maximum が選択された場合、リサンプリングは実行されず、領域の拡張は入力ラスター内のすべてのセルに対して実行されます。入力のセルが 147,356 未満の場合、LowMediumHigh オプションは影響ありません。

利用可能なオプションは次のとおりです。

  • AUTO解像度は、入力ラスター内のセルの数に基づきます。入力ラスター内のセルが 500,000 以内の場合、デフォルトは Maximum です。入力ラスター内のセルが 500,000 より大きい場合、デフォルトは Low です。これがデフォルトです。
  • LOW解析は、入力ラスターとして同じ x と y の比率で分散した 147,356 (384 x 384) のセルを含む中間ラスターに対して実行されます。
  • MEDIUM解析は、入力ラスターとして同じ x と y の比率で分散した 262,144 (512 x 512) のセルを含む中間ラスターに対して実行されます。
  • HIGH解析は、入力ラスターとして同じ x と y の比率で分散した 589,824 (768 x 768) のセルを含む中間ラスターに対して実行されます。
  • MAXIMUM解析は、入力ラスター内のすべてのセルに対して実行されます。
String
selection_method
(オプション)

領域の選択方法を識別します。

利用可能なオプションは次のとおりです。

  • AUTO選択方法は、[領域の数] パラメーターに基づきます。[領域の数] が 8 以下の場合、Combinatorial 選択方法が使用されます。[領域の数] が 8 より大きい場合、Sequential 選択方法が使用されます。これがデフォルトです。
  • COMBINATORIALパラメーター化された領域拡張 (PRG) アルゴリズムの候補領域内で、必要な領域数の組み合わせをすべてテストすることで、空間的制限を適用しながら、指定された評価方法に基づいて最適な領域を選択します。
  • SEQUENTIAL必要な領域数に達するまで、評価方法に基づき、空間的制限を満たす最適な領域を順番に選択します。
String

戻り値

名前説明データ タイプ
out_raster

出力領域ラスター。

各領域には、ゼロより大きい一意の番号が付けられます。領域に属さないセルには、ゼロが割り当てられます。出力は常に整数ラスターになります。

選択された領域の統計情報を格納する追加フィールドが、各領域に対して計算されます。これらのフィールドには次のようなものがあります。

  • AVERAGE領域の平均有用性値。
  • TOTAL領域内の有用性値の合計。
  • MEDIAN領域の中央有用性値。
  • HIGHEST領域内に含まれる最も高い個別セル値。
  • LOWEST領域内に含まれる最も低い個別セル値。
  • COREAREAコア エリア。領域のエッジから 1 つのセルより遠いセルは、コアの一部と見なされます。
  • CORESUMコア エリアの有用性値の累積合計。
  • EDGEP1 レシオを使用したエッジ量。P1 は、形状の周長と同じ面積の円の周長の比率です。円の P1 レシオは 1 です。
Raster

コードのサンプル

LocateRegions (領域の特定) の例 1 (Python ウィンドウ)

次の Python ウィンドウ スクリプトは、LocateRegionsツールの使用方法を示しています。

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outRegions = LocateRegions("suitsurface", 13.5, "SQUARE_MILES", 5, "CIRCLE",
                           0, 50, "HIGHEST_AVERAGE_VALUE", 2, 5, 1, 3, "MILES",
                           "existingreg.shp", "EIGHT", "NO_ISLANDS", "SMALL", 
                           "LOW", "COMBINATORIAL")
outRegions.save("C:/sapyexamples/output/outregions")
LocateRegions (領域の特定) の例 2 (スタンドアロン スクリプト)

空間的要件を満たしながら、適合性サーフェスから最適な 8 つの領域を識別します。

# Name: LocateRegions_Ex_02.py
# Description: Selects the best specified number of regions
# 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
InRaster1 = "suitsurface"
InTotalArea2 = 13.5
InAreaUnits3 = "SQUARE_MILES"
InNumberofRegions4 = 5
InRegionShape5 = "CIRCLE"
InRegionOrientation6 = 0
InShapeTradeoff7 = 50
InEvaluationMethod8 = "HIGHEST_AVERAGE_VALUE"
InMinimumArea9 = 2
InMaximumArea10 = 5
InMinimumDistance11 = 1
InMaximumDistance12 = 3
InDistanceUnits13 = "MILES"
InExistingRegions14 = "existingreg.shp"
InRegionofNeighbors15 = "EIGHT"
InRegionNoIslands16 = "NO_ISLANDS"
InRegionSeeds17 = "SMALL"
InRegionResolution18 = "LOW"
InCombinatorialThreshold19 = "COMBINATORIAL"

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

# Execute Locate Regions
outRegions = LocateRegions(InRaster1, InTotalArea2, InAreaUnits3, InNumberofRegions4,
                           InRegionShape5, InRegionOrientation6, InShapeTradeoff7,
                           InEvaluationMethod8, InMinimumArea9, InMaximumArea10,
                           InMinimumDistance11, InMaximumDistance12, InDistanceUnits13,
                           InExistingRegions14, InRegionofNeighbors15, InRegionNoIslands16,
                           InRegionSeeds17, InRegionResolution18, InCombinatorialThreshold19)

# Save the output
outRegions.save("C:/sapyexamples/output/outregions")

ライセンス情報

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

関連トピック