ラベル | 説明 | データ タイプ |
入力点群データ | オブジェクトの検出に使用される点群。 | LAS Dataset Layer |
入力モデル定義 | 使用されるオブジェクト検出モデル。 Esri モデル定義ファイル (.emd)、ディープ ラーニング パッケージ (.dlpk)、ArcGIS Online または Portal for ArcGIS から公開されているオブジェクト検出モデルを指定できます。 | File; String |
ターゲット オブジェクト | 入力点群で識別されるオブジェクト、および検出されたオブジェクトの承認に使用される信頼度閾値とオーバーラップ閾値。
| Value Table |
出力オブジェクト フィーチャ | 入力点群から検出されたオブジェクトを囲む境界四角形を含む出力マルチパッチ フィーチャ。 | Feature Class |
バッチ サイズ (オプション) | 入力点群から同時に処理されるブロックの数。 値が指定されていない場合、一度に 1 つのブロックが処理されます。 | Long |
処理境界 | 処理される対象地域を定義するポリゴン フィーチャ。 | Feature Layer |
参照サーフェス | 各ポイントの相対高度の計算に使用されるラスター サーフェス。 このパラメーターは、参照高度ラスター サーフェスを使用してトレーニングされたことを示す相対高度属性が入力モデルに含まれている場合、このパラメーターは必須です。 | Raster Layer |
除外クラス | 入力点群からのオブジェクト検出処理で除外されるポイントのクラスコード。 特定のクラス コードのポイントを除外してモデルがトレーニングされている場合、最適な結果を得るには、入力点群で同じオブジェクト クラスのポイントを識別して除外する必要があります。 | Long |
サマリー
ディープ ラーニング モデルを使用して、点群で捕捉されたオブジェクトを検出します。
図
使用法
このツールには、Deep Learning Essentials のインストールが必要です。これは、点群を分類するためのニューラル アーキテクチャを含む複数のニューラル ネットワーク ソリューションを提供します。
ArcGIS AllSource のディープ ラーニング フレームワークを使用するようにコンピューターを設定するには、「ArcGIS 用のディープ ラーニング フレームワークのインストール」をご参照ください。
オブジェクト検出モデルは分類対象の入力点群を必要としません。 ただし、評価対象の点群は、モデルのトレーニングに使用される点群データとほぼ同じ特性を持っていなければなりません。 たとえば、地上の点群についてトレーニングされた、自動車を分類するオブジェクト検出モデルは、別の地上測量の点群には適していても、航空 LIDAR 測量から収集された点群では十分に機能しないことがあります。
このモデルはさまざまなオブジェクトを識別し、その一部はオーバーラップしている場合があります。 これらの検出を調整するには、信頼度スコア閾値とオーバーラップ閾値の 2 つの主な閾値が使用されます。 信頼度スコアは 0.0 ~ 1.0 の数値であり、オブジェクトが正しく識別されている可能性がどの程度であるかを示します。 スコアが高いほど確実性が高くなり、閾値を設定することで、一定の信頼度を下回る検出を除外することができます。
複数の類似するオブジェクトの境界四角形がオーバーラップしている場合、オーバーラップ閾値がさらに重要になります。 この測定値では共通部分に対する交差部分 (IoU) の比率が使用され、これはオーバーラップする境界四角形の交差部分の体積を共通部分の体積で割ることによって計算されます。 IoU がオーバーラップ閾値を超えるオブジェクトのうち、信頼度スコアが最も高いものだけが維持されます。 最も関連性の高い検出だけを最終出力に含めるようにするには、Non-Maximum Suppression (NMS) アルゴリズムを使用します。
相対高度属性を使用して入力モデルがトレーニングされた場合、[参照サーフェス] パラメーターは必須です。 ラスター サーフェスが基準高度として使用され、そこから各ポイントの相対高度が内挿されます。 これによって得られるモデルの追加情報を使用して、各オブジェクトを容易に区別することができます。 このパラメーターで指定するラスター サーフェスは、モデルの作成に使用されたトレーニング データで使用されているラスターと同じデータのタイプを表している必要があります。 ほとんどの場合、これは地表分類ポイントから作成されたラスターになります。 地表フィルターを適用して [LAS データセット → ラスター (LAS Dataset to Raster)] ツールを使用することによって、LAS データセット内の地表分類ポイントからラスター サーフェスを生成することができます。 地表サーフェスは、[点群 → ラスター (Point Cloud To Raster)] ツールを使用して点群シーン レイヤーから生成することもできます。 入力点群から生成されないラスター サーフェスも使用できますが、ラスターの Z 値が点群の Z 値と適切に対応していることを確認する必要があります。
入力モデルが、トレーニング データから除外された特定のクラスのポイントでトレーニングされている場合、[除外されるクラス コード] パラメーターを使用して、このモデルによって評価される一連のポイントから、それらのポイントが除外されるようにします。 所定のモデルの目的に有用なコンテキストを提供しないクラスを除外することで、評価されるポイントの数が減るため、モデルのトレーニングと適用の速度が向上します。 たとえば、建物を表すポイントは、通常は、信号機、電線、自動車などのオブジェクトを表すポイントとは関連性がありません。 建物のポイントは、[LAS の建物分類 (Classify LAS Building)] ツールを使用して確実に分類することもできます。 モデルの作成に使用されたトレーニング データから、建物を表すクラス 6 のポイントが除外された場合、入力点群でも建物ポイントを分類してこれらをこのツールで除外する必要があります。
パラメーター
arcpy.ddd.DetectObjectsFromPointCloudUsingTrainedModel(in_point_cloud, in_trained_model, target_objects, out_features, {batch_size}, boundary, reference_height, excluded_class_codes)
名前 | 説明 | データ タイプ |
in_point_cloud | オブジェクトの検出に使用される点群。 | LAS Dataset Layer |
in_trained_model | 使用されるオブジェクト検出モデル。 Esri モデル定義ファイル (.emd)、ディープ ラーニング パッケージ (.dlpk)、ArcGIS Online または Portal for ArcGIS から公開されているオブジェクト検出モデルを指定できます。 | File; String |
target_objects [target_objects,...] | 入力点群で識別されるオブジェクト、および検出されたオブジェクトの承認に使用される信頼度閾値とオーバーラップ閾値。
| Value Table |
out_features | 入力点群から検出されたオブジェクトを囲む境界四角形を含む出力マルチパッチ フィーチャ。 | Feature Class |
batch_size (オプション) | 入力点群から同時に処理されるブロックの数。 値が指定されていない場合、一度に 1 つのブロックが処理されます。 | Long |
boundary | 処理される対象地域を定義するポリゴン フィーチャ。 | Feature Layer |
reference_height | 各ポイントの相対高度の計算に使用されるラスター サーフェス。 このパラメーターは、参照高度ラスター サーフェスを使用してトレーニングされたことを示す相対高度属性が入力モデルに含まれている場合、このパラメーターは必須です。 | Raster Layer |
excluded_class_codes [excluded_class_codes,...] | 入力点群からのオブジェクト検出処理で除外されるポイントのクラスコード。 特定のクラス コードのポイントを除外してモデルがトレーニングされている場合、最適な結果を得るには、入力点群で同じオブジェクト クラスのポイントを識別して除外する必要があります。 | Long |
コードのサンプル
次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。
import arcpy
arcpy.env.workspace = 'C:/data/detect_cars'
arcpy.ddd.DetectObjectsFromPointCloudUsingTrainedModel('2018_survey.lasd', 'cars.emd',
[(1, 0.7, 0.4)], 'Cars_in_Point_Cloud.shp',
10, 'study_area_boundary.shp',
'dem.tif', [2, 6, 7, 18])