点群分類モデルの評価 (Evaluate Point Cloud Classification Model) (3D Analyst)

サマリー

各モデルから取得した分類結果の計算のベースラインとして適切に分類された点群を使用して、1 つ以上の点群分類モデルの品質を評価します。

使用法

  • 最適な評価結果を得るために、評価される対象オブジェクトで参照点群を適切に分類する必要があります。

  • 評価されるすべての入力モデルに同じ分類コードが必要です。 評価対象モデルのクラスと値または意味が一致するクラス コードが参照点群にない場合、[点群クラス再分類] パラメーターを使用して、参照点群の分類をトレーニング済みモデルのコードに指定します。

  • PointCNN ディープ ラーニング アーキテクチャを使用すると、点群分類モデルを作成できます。 このアーキテクチャでは、同じ入力データ セットを処理するときに少し異なる結果が生成される場合があります。 同じモデルを入力として複数回指定して、点群の分類結果の一貫性を評価できます。 分類結果のばらつきの可能性に関する詳細は、「PointCNN: Convolution On X-Transformed Points」をご参照ください。

  • 評価プロセスによって、[ターゲット フォルダー] パラメーター値に複数の出力ファイルが作成されます。 各ファイルの名前は、[ベース名] パラメーター値で指定したテキストで始まります。

    • <ベース名>_ModelStatistics.csv - 各モデルの全体的な正確度、精度、再現率、F1 スコアを一覧したテーブル。
    • <ベース名>_ClassCodeStatistics.csv - 各クラス コードの正確度、精度、再現率、F1 スコアの評価結果をまとめたテーブル。
    • <ベース名>_ConfusionMatrices.csv - 参照点群の各クラス コードの各ポイントが入力モデルごとにどのように分類されたかをまとめたテーブル。 真陽性と偽陽性の数に加え、偽陽性が発生したクラスもこのテーブルで特定されます。
    • <ベース名>_ConfusionMatrix_<model number>.png - 特定のモデルの混同行列をわかりやすく表現したチャートの画像。
  • [参照サーフェス] パラメーターは、基準高度情報を使用してトレーニングした分類モデルを使用する場合には必須の入力です。 このパラメーターに提供されるラスターは、重複する各ポイントの相対高度属性を取得するために使用されます。 属性は、各ポイントの Z 値を取り、共一次内挿法によってラスターから取得した高さを差し引くことで算出されます。 この情報は、ラスター サーフェスからの相対高度の範囲が明確なクラスに関連付けられたオブジェクトを、より容易に区別するために使用されます。 モデルが相対高度の情報を使用してトレーニングされると、分類のための入力として指定されたラスター サーフェスは、同じ種類のポイントに基づく必要があります。 トレーニング時に相対高度を組み込むために使用されたラスターが地表の分類ポイントに基づく場合、このツールでも同じ種類のラスターを指定します。 屋外調査を表す LAS データセットの場合、相対高度情報の最も一般的なソースは、同じ点群から取得した地表分類ポイントです。 ラスター サーフェスは、レイヤー プロパティから LAS データセットをフィルタリングし、[LAS データセット → ラスター (LAS Dataset To Raster)] ツールを使用することで、地表の分類ポイントから生成できます。 ツールを Python で使用する場合は、[LAS データセット レイヤーの作成 (Make LAS Dataset Layer)] を使用し、ラスターを作成する前に目的のポイントをフィルタリングできます。 地表サーフェスは、[点群 → ラスター (Point Cloud To Raster)] ツールを使用して点群シーン レイヤーから生成することもできます。 入力点群から生成されないラスター サーフェスも使用できますが、ラスターの Z 値が点群の Z 値と適切に対応していることを確認する必要があります。

  • モデルから除外された特定のクラスでトレーニングされた分類モデルを使用する場合、[除外されるクラス コード] パラメーターを使用して、モデルによって評価される一連のポイントから、同じポイントを除外するようにします。 つまり、分類または評価を行う点群では、このツールを実行する前に除外されたポイントが分類する必要があります。 対象オブジェクトの分類を推論するうえで有用なコンテキストを提供しないクラスを除外することで、評価されるポイント数を減らすことができるため、トレーニングと推論プロセスの速度が向上するというメリットがあります。 たとえば、建物の分類済みポイントは、信号機、電線、または各種の鉄道アセットなどのオブジェクトの分類モデルのトレーニングには重要ではないことが一般的です。 建物のポイントは、[LAS の建物分類 (Classify LAS Building)] ツールを使用して分類することもできます。 モデルのトレーニング時に、建物を表すクラス 6 のポイントが除外された場合、このモデルを使用してその他の対象オブジェクトを分類する点群で、建物ポイントを分類する必要があります。

パラメーター

ラベル説明データ タイプ
入力モデル定義

評価プロセスで使用される点群分類モデルとバッチ サイズ。

Value Table
参照点群

分類モデルを評価するのに使用される点群。

LAS Dataset Layer; File
ターゲット フォルダー

評価結果を要約したファイルを格納するディレクトリ。

Folder
ベース名

評価結果を要約した各出力ファイルに使用されるファイル名接頭辞。

String
処理境界
(オプション)

分類モデルを評価するのに使用される参照点群の一部を表現するポリゴン フィーチャ。

Feature Layer
点群クラス再分類
(オプション)

参照点群のクラス コードは、評価対象モデルのクラス コードと一致する必要があります。 クラス コードが一致しない場合、このパラメーターを使用して、点群のさまざまなクラス コードと、評価対象のモデルでサポートされるクラスを関連付けます。

Value Table
参照サーフェス
(オプション)

点群データの各ポイントの相対高度値を指定するために使用されるラスター サーフェス。 ラスターと重複しないポイントは、解析から除外されます。

Raster Layer
除外されるクラス コード
(オプション)

処理から除外されるクラス コード。 0 ~ 255 の範囲内の任意の値を指定できます。

Long

派生した出力

ラベル説明データ タイプ
出力混同マトリックス

各入力モデルの各クラス コードの混同行列を格納する CSV 形式のテーブル。

Text File
出力モデルの統計

入力モデルの全体的な統計情報を要約した CSV 形式のテーブル。

Text File
出力クラス コード統計情報

各入力モデルの各クラス コードの統計情報を要約した CSV 形式のテーブル。

Text File

arcpy.ddd.EvaluatePointCloudClassificationModel(in_trained_model, in_point_cloud, target_folder, base_name, {boundary}, {class_remap}, {reference_height}, {excluded_class_codes})
名前説明データ タイプ
in_trained_model
[in_trained_model,...]

評価プロセスで使用される点群分類モデルとバッチ サイズ。

Value Table
in_point_cloud

分類モデルを評価するのに使用される点群。

LAS Dataset Layer; File
target_folder

評価結果を要約したファイルを格納するディレクトリ。

Folder
base_name

評価結果を要約した各出力ファイルに使用されるファイル名接頭辞。

String
boundary
(オプション)

分類モデルを評価するのに使用される参照点群の一部を表現するポリゴン フィーチャ。

Feature Layer
class_remap
[class_remap,...]
(オプション)

参照点群のクラス コードは、評価対象モデルのクラス コードと一致する必要があります。 クラス コードが一致しない場合、このパラメーターを使用して、点群のさまざまなクラス コードと、評価対象のモデルでサポートされるクラスを関連付けます。

Value Table
reference_height
(オプション)

点群データの各ポイントの相対高度値を指定するために使用されるラスター サーフェス。 ラスターと重複しないポイントは、解析から除外されます。

Raster Layer
excluded_class_codes
[excluded_class_codes,...]
(オプション)

処理から除外されるクラス コード。 0 ~ 255 の範囲内の任意の値を指定できます。

Long

派生した出力

名前説明データ タイプ
out_confusion_matrices

各入力モデルの各クラス コードの混同行列を格納する CSV 形式のテーブル。

Text File
out_model_statistics

入力モデルの全体的な統計情報を要約した CSV 形式のテーブル。

Text File
out_class_code_statistics

各入力モデルの各クラス コードの統計情報を要約した CSV 形式のテーブル。

Text File

コードのサンプル

EvaluatePointCloudUsingTrainedModel の例 (Python ウィンドウ)

次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。

import arcpy
arcpy.env.workspace = 'C:/data'
arcpy.ddd.EvaluatePointCloudUsingTrainedModel(
        ['Transmission_Power_Lines.dlpk', 'Distribution_Power_Lines.dlpk'], 
        'Classified_Power_Lines.lasd', 'D:/Evaluate_PointCNN_Models', 
        'Power_Line_Results_', 'test_boundary.shp', [[18, 14], [20, 14]])

ライセンス情報

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

関連トピック