最適パス (ラスター) (Optimal Path As Raster) (ラスター解析)

サマリー

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

最適パス (ラスター) のワークフロー

使用法

  • このラスター解析 ポータル ツールは、ArcGIS Enterprise「ArcGIS Enterprise の解析について」へのリンク ポータルにサイン インすると使用できます。このポータルに、ArcGIS Image Server 「ラスター解析の設定と配置」へのリンク用に構成された Raster Analysis 「ArcGIS Image Server とは」へのリンク があります。ツールを起動すると、ArcGIS Pro がクライアントとしてサービスを提供し、ArcGIS Enterprise とフェデレートされているサーバーで処理が発生します。ポータル ツールはポータルから入力としてレイヤーを受け取り、ポータルに出力を作成します。

    入力ラスター レイヤーは、ポータルから入力されたレイヤー、イメージ サービスへの URI または URL、[Image Server レイヤーの作成 (Make Image Server Layer)] ツールの出力に対応しています。入力フィーチャ レイヤーには、ポータルからのレイヤー、フィーチャ サービスへの URI または URL を使用できます。このツールは、ローカルのラスター データまたはレイヤーをサポートしません。このポータル ツールへの入力としてはローカルのフィーチャ データとレイヤーを使用できますが、ポータルのレイヤーを入力することをお勧めします。

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

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

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

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

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

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

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

  • 大部分のラスター解析ツールとは異なり、[最適パス (ライン) (Optimal Path As Line)] は、[出力データの座標系]、[範囲]、[セル サイズ]、[スナップ対象ラスター] の各環境変数を無視します。 バック リンク ラスターのパターンは、リサンプリングまたは再投影された場合は、大幅に変化し、パスが正しくなくなります。

パラメーター

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

データセットのラスターまたはフィーチャで、これらによって識別された位置から、最小コストのソースまでの最小累積コスト パスが求めらます。

ラスターの場合、入力の型は整数の必要があり、有効な値を持つセルで構成される必要があります (0 は有効な値です)。 残りのセルには NoData を割り当てる必要があります。

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

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

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

Raster Layer
入力逆方向または入力流向ラスター

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

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

Raster Layer
出力ラスター名

最適パスを含む出力ラスター サービスの名前。

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

目的地の場所の値を取得するために使用されるフィールド。

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

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

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

派生した出力

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

出力ラスター。

Raster

arcpy.ra.OptimalPathAsRaster(inputDestinationRasterOrFeatures, inputDistanceAccumulationRaster, inputBackDirectionRaster, outputRasterName, {destinationField}, {pathType})
名前説明データ タイプ
inputDestinationRasterOrFeatures

データセットのラスターまたはフィーチャで、これらによって識別された位置から、最小コストのソースまでの最小累積コスト パスが求めらます。

ラスターの場合、入力の型は整数の必要があり、有効な値を持つセルで構成される必要があります (0 は有効な値です)。 残りのセルには NoData を割り当てる必要があります。

Raster Layer; Feature Layer
inputDistanceAccumulationRaster

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

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

Raster Layer
inputBackDirectionRaster

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

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

Raster Layer
outputRasterName

最適パスを含む出力ラスター サービスの名前。

String
destinationField
(オプション)

目的地の場所の値を取得するために使用されるフィールド。

Field
pathType
(オプション)

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

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

派生した出力

名前説明データ タイプ
outputRaster

出力ラスター。

Raster

コードのサンプル

最適パス (ラスター) (Optimal Path As Raster) の例 1 (Python ウィンドウ)

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

import arcpy

arcpy.OptimalPathAsRaster_ra(
    "https://myserver/rest/services/destination/ImageServer", 
    "https://myserver/rest/services/accumulationraster/ImageServer", 
    "https://myserver/rest/services/backdirection/ImageServer", 
    "outpath")
最適パス (ラスター) (Optimal Path As Raster) の例 2 (スタンドアロン スクリプト)

ソースから目的地までの最適パスを計算します。

#-------------------------------------------------------------------------------
# Name: OptimalPathAsRaster_Ex_02.py
# Description: Calculates the optimal path from a source to a destination.
# Requirements: ArcGIS Image Server

# Import system modules
import arcpy

# Set local variables
inputDestinationLayer =
    'https://MyPortal.esri.com/server/rest/services/Hosted/destination/ImageServer'
inputAccumulationLayer =
    'https://MyPortal.esri.com/server/rest/services/Hosted/costaccumulation/ImageServer'
inputDirectionLayer = 
    'https://MyPortal.esri.com/server/rest/services/Hosted/backdirection/ImageServer'
outOptimalPathName = 'OptimalPath'

arcpy.OptimalPathAsRaster_ra(inputDestinationLayer, inputAccumulationLayer,
                            inputDirectionLayer, outOptimalPathName)

環境

このツールは、ジオプロセシング環境を使用しません。

関連トピック