最適パス (ラスター) (Optimal Path As Raster) (Spatial Analyst)

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

サマリー

ソースから目的地までの最適なパスをラスターとして算出します。

最適パスによる位置の接続の詳細

使用法

  • [最適パス (ラスター) (Optimal Path As Raster)] ツールは、出力ラスターを作成します。

  • 入力目的地データがラスターの場合、一連の目的地セルは、有効な値を持つ [入力ラスターまたは目的地フィーチャ] パラメーター値に含まれるすべてのセルで構成されます。 値が NoData のセルは、ソース セットには含まれません。 ゼロは有効値です。 目的地ラスターは、抽出ツールを使用して作成できます。

  • 特に、入力目的地フィーチャにポリゴン フィーチャを使用する際、出力セル サイズが入力フィーチャよりも粗い場合の処理方法に注意する必要があります。 [セルの中心][集約タイプ] のデフォルト設定で、[ポリゴン → ラスター (Polygon to Raster)] ツールを使用する内部的なラスター化処理が適用されます。 つまり、セルの中心に配置されていないデータは、ラスター化された目的地の中間出力に含まれず、距離の計算では表されません。 たとえば、目的地が出力のセル サイズに比べて小さい一連のポリゴン (建物のフットプリントなど) である場合は、一部のポリゴンだけが出力ラスター セルの中心に分類され、多くのポリゴンが解析で失われたように見える可能性があります。

    この状況を回避するには、中間的な手順として、[フィーチャ → ラスター (Feature to Raster)] ツールを使用して入力フィーチャを直接ラスター化し、[フィールド] パラメーターを設定します。 次に、結果の出力を距離ツールの入力として使用します。 また、入力フィーチャから適切な量の情報を捕捉できる小さいセル サイズを選択することもできます。

  • 通常は、最適なパスを生成する前に [距離累積 (Distance Accumulation)] または [距離アロケーション (Distance Allocation)] のいずれかのツールを使用して、距離累積ラスターとバック方向ラスターを作成します。 距離累積ラスターとバック方向ラスターは、最適パスを生成するための入力に必要です。

  • 作成された最適なパスは、D8 流向に基づいた流路です。 この方法で最適なパスを作成するには、[入力バック方向または入力流向ラスター] パラメーターの入力として D8 流向ラスターを使用します。 [入力距離累積ラスター] の値も指定する必要があります。[入力距離累積ラスター] の値はパスの決定に使用されません。 定数ラスターまたはデジタル標高モデル (DEM) のどちらを使用しても、パスは同じになり、パス上の属性値だけが変化します。 D8 流向ラスターの詳細については、[流向ラスターの作成 (Flow Direction)] ツールのドキュメントをご参照ください。

  • 最適な出力パス上の値は、指定した場所でのパスの数を表します。 多くの場合、パスは同じルートをたどります。ソースを出発して、異なる目的地に分岐します。 たとえば、1 の値は指定した場所に最適なパスが 1 つだけあることを示し、5 の値はその場所でそのセルを通る最適なパスが分析範囲に 5 つあることを示します。

  • 投影のエッジを横切るパスを作成するには、[入力距離累積ラスター] パラメーターと [入力バック方向ラスター] パラメーターの入力として使用するラスターが、円筒図法または地理出力座標系と [距離計算の方法] パラメーターの [測地線] オプションを併用して、全グローバル範囲で作成されている必要があります。

  • 最適なパスを生成するために、セル サイズ環境設定が無視され、[入力コスト バックリンク ラスター] 値のセル サイズが出力ラスターの計算に使用されます。 バックリンク ラスターのパターンは、別の解像度にリサンプリングされた場合に変化します。 混乱を避けるために、このツールを使用するときは、セル サイズを設定しないでください。

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

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

パラメーター

ラベル説明データ タイプ
入力ラスターまたは目的地フィーチャ

最小コストのソースまでの最適なパスが決定される位置を特定する整数ラスターまたはフィーチャ (ポイント、ライン、ポリゴン) です。

ラスターを入力とした場合、そのラスターを構成するセルに目的地の有効値が含まれていて、残りのセルに NoData が割り当てられている必要があります。 ゼロは有効値です。

Raster Layer; Feature Layer
入力距離累積ラスター

ソースから目的地までの最適なパスを決定するために使用される距離累積ラスター。

距離累積ラスターは通常、[距離累積 (Distance Accumulation)] または [距離アロケーション (Distance Allocation)] ツールで作成されます。 距離累積ラスター内の各セルは、各セルから一連のソース セルまでのサーフェス上での最小累積コスト距離を表します。

Raster Layer
入力バック方向または入力流向ラスター

バック方向ラスターは、角度で計算した方向を含みます。 バリアを避けながら、最小累積コスト ソースに戻る最適なパスに沿った隣接セルへの方向を特定します。

値の範囲は 0 度から 360 度で、0 はソース セル用に予約されています。 真東は 90 で、値は時計回りに増加します (180 が北、270 が西、360 が北)。

Raster Layer
目的地フィールド
(オプション)

目的地の位置の値を取得するために使用するフィールド。

Field
パスの種類
(オプション)

入力目的地データの値とゾーンを、コスト パスの計算の中でどのように解釈するかを定義するキーワードを指定します。

  • 各ゾーン入力目的地データのゾーンごとに、最小コスト パスが求められ、出力ラスターに保存されます。 このオプションを使用すると、各ゾーンの最小コスト パスは、ゾーン内で最低のコスト距離加重を持つセルから開始します。
  • 最適な単一入力目的地データのすべてのセルについて、最小コスト パスは、ソース セルへの最小コスト パスの最小値を使用してセルから求められます。
  • 各セル入力目的地データの有効な値を持つセルごとに、最小コスト パスが求められ、出力ラスターに保存されます。 このオプションを使用すると、入力目的地データの各セルが別々に扱われ、各セルの最小コスト パスが決定されます。
String

戻り値

ラベル説明データ タイプ
出力最適パス (ラスター)

出力ラスター。

Raster

OptimalPathAsRaster(in_destination_data, in_distance_accumulation_raster, in_back_direction_raster, {destination_field}, {path_type})
名前説明データ タイプ
in_destination_data

最小コストのソースまでの最適なパスが決定される位置を特定する整数ラスターまたはフィーチャ (ポイント、ライン、ポリゴン) です。

ラスターを入力とした場合、そのラスターを構成するセルに目的地の有効値が含まれていて、残りのセルに NoData が割り当てられている必要があります。 ゼロは有効値です。

Raster Layer; Feature Layer
in_distance_accumulation_raster

ソースから目的地までの最適なパスを決定するために使用される距離累積ラスター。

距離累積ラスターは通常、[距離累積 (Distance Accumulation)] または [距離アロケーション (Distance Allocation)] ツールで作成されます。 距離累積ラスター内の各セルは、各セルから一連のソース セルまでのサーフェス上での最小累積コスト距離を表します。

Raster Layer
in_back_direction_raster

バック方向ラスターは、角度で計算した方向を含みます。 バリアを避けながら、最小累積コスト ソースに戻る最適なパスに沿った隣接セルへの方向を特定します。

値の範囲は 0 度から 360 度で、0 はソース セル用に予約されています。 真東は 90 で、値は時計回りに増加します (180 が北、270 が西、360 が北)。

Raster Layer
destination_field
(オプション)

目的地の位置の値を取得するために使用するフィールド。

Field
path_type
(オプション)

入力目的地データの値とゾーンを、コスト パスの計算の中でどのように解釈するかを定義するキーワードを指定します。

  • EACH_ZONE入力目的地データのゾーンごとに、最小コスト パスが求められ、出力ラスターに保存されます。 このオプションを使用すると、各ゾーンの最小コスト パスは、ゾーン内で最低のコスト距離加重を持つセルから開始します。
  • BEST_SINGLE入力目的地データのすべてのセルについて、最小コスト パスは、ソース セルへの最小コスト パスの最小値を使用してセルから求められます。
  • EACH_CELL入力目的地データの有効な値を持つセルごとに、最小コスト パスが求められ、出力ラスターに保存されます。 このオプションを使用すると、入力目的地データの各セルが別々に扱われ、各セルの最小コスト パスが決定されます。
String

戻り値

名前説明データ タイプ
out_path_accumulation_raster

出力ラスター。

Raster

コードのサンプル

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

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

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outOptimalRasPath = OptimalPathAsRaster("observers", "distAccum.tif", "backDir2", "IdField", "EACH_CELL")
outOptimalRasPath.save("c:/sapyexamples/output/bestpaths.tif")
OptimalPathAsRaster の例 2 (スタンドアロン スクリプト)

ソースから目的地までの最小コストパスを算出します。

# Name: OptimalPathAsRaster_Ex_02.py
# Description: Calculates the least-cost path from a source to 
#              a destination.
# 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
inDestination = "observers.shp"
distAccumRaster = "distAccum.tif"
backDir = "backDir2.tif"
destField = "FID"
pathType = "EACH_CELL"

# Execute CostPath
outOptimalRasPath = OptimalPathAsRaster(inDestination, distAccumRaster, backDir, destField,
                       pathType)

# Save the output 
outOptimalRasPath.save("c:/sapyexamples/output/optimalraspath02.tif")

ライセンス情報

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

関連トピック