植生の侵害などの潜在的な危険を検出し、電線の構造的安定性を評価するには、送電線の正確な 3D 情報が不可欠です。 LiDAR 技術は、3D 点群として電線を高速かつ正確に、コスト効率の高い方法で取得することを可能にするため、この種の情報を取得するための主要なテクノロジーとなっています。
しかし、LiDAR 点群からの電線ポイントの抽出は、特に樹木やその他のオブジェクトが近接エリアにある場合、依然として困難です。 従来の手法は、ルールベースのアルゴリズムと手動での編集に依存することが多く、複雑な環境では、時間がかかり、エラーが生じやすい場合があります。 ディープ ラーニングが提供する強力な代替手法では、データからパターンを学習および認識するためのモデルをトレーニングして、より正確な自動分類を実現します。
ArcGIS Pro は、LiDAR 点群内の電線を分類するために電線分類モデルのトレーニングと適用をサポートする点群ディープ ラーニング ツールを提供します。
ソフトウェアおよびハードウェア要件:
- ArcGIS Pro と 3D Analyst エクステンション
- ディープ ラーニング ライブラリー (Deep Learning Libraries Installer for ArcGIS を使用してインストール可能)
- NVIDIA グラフィックス カード (CUDA 計算機能および 8 GB 以上の専用グラフィックス メモリーを搭載)
データ要件:
- 航空機、ヘリコプター、またはドローンからキャプチャーされた航空機 LiDAR 点群
- 1 フィート未満の平均ポイント間隔 (電線を分類するのに十分な詳細を確保するため)
推奨
「ディープ ラーニング分類モデルのトレーニング」、「トレーニング結果の評価」および「トレーニング済みモデルを使用して点群を分類」の一般的ガイドラインに従うことが重要です。 以下に示す推奨事項は、特に電線の分類に適用されます:
代表的なトレーニング サンプルを選択する
送電線は、環境条件がさまざまに変化する多様な地形に広がっています。 さまざまなテレイン タイプの点群を含めることで、このような変動性をキャプチャーし、モデルの堅牢性を高めることができます。 また、電線は高さと素材も異なるため、このような差異を反映するサンプルを組み込めば、モデルがさまざまなタイプの電線を学習するのに役立ちます。 電線の周囲の植生も種類や密度によってさまざまであるため、多様な植生サンプルを使用して、モデルが電線と周りの樹木の葉をより正確に区別できるようにします。
電線の近接エリアにトレーニングの焦点を当てる
送電線は通常、指定されたコリドー内に、安全なクリアランスを確保する特定の高さで設置されます。 時間の経過と共に、これらのエリアの植生が電線を侵害し、電線と周りの樹木の葉を区別することが困難になる可能性があります。
モデルの精度を高めるには、トレーニング中に一定の距離を越える LiDAR ポイントを電線から除外します。 これにより、電線周辺にモデルの焦点が当てられるため、モデルがより関連性の高い相違を学習できるようになると同時に、データセットの量を減らして、トレーニング効率を高めることができます。
属性を使用して、電線と他のフィーチャを区別する
電線は、通常、地表からの定義済みの高さの範囲内に配置される線形フィーチャです。 [相対高度] 属性は、特に、地表ポイントがトレーニング データから除外されている場合に電線を識別するのに役立ち、絶対高度と比べて、より意味を持つコンテキストが相対高度から得られます。
低電圧電線の場合、もう 1 つの役立つ属性として [強度] があり、これらの電線では、多くの場合、他のフィーチャと比べてより低い強度値が返されます。 反対に、高電圧電線は、他のオブジェクトに類似したより高い強度値を持つレーザー パルスを反射する傾向があるため、それらの電線を識別する際の強度の信頼性は低くなります。
不均衡なデータの影響を軽減する
不均衡データは、一部のクラスに含まれる例が他のクラスよりも大幅に多いことが原因で、モデルが最頻値クラスに対してバイアスを適用する場合に生成されます。 この問題は、電線の分類で電線ポイントが、地表や植生といった主要クラスと比べて小さな最少頻値を表す場合に特に重要です。
この問題を軽減するには、トレーニング中に最頻値クラスのサンプルを減らして (地表ポイントを除外するなど)、バイアスを最小化します。 さらに、[フォーカル損失] の適用により、より大きい加重を最少頻値クラスの例に割り当てることで、制限された電線データからモデルがより効率的に学習できるように支援します。
ワークフローの概要
以下のワークフローは、未分類の LiDAR 点群から開始します。 データがすでに分類されている場合は、該当する手順をスキップできます。
- [LAS データセットのピラミッドを構築 (Build LAS Dataset Pyramid)] ジオプロセシング ツールを使用して LAS データセットの LAS ピラミッドを構築し、レンダリングを最適化します。
- [LAS の地表分類 (Classify LAS Ground)] ジオプロセシング ツールを使用して地表ポイントを分類します。
- [LAS データセット → ラスター (LAS Dataset To Raster)] ツールを使用して DEM およびは DSM ラスターを作成します。
- [Minus] ジオプロセシング ツールを使用して正規化 DSM (DSM - DEM) を作成し、電線をハイライト表示します。 適切なバッファー距離 (例: 10 メートル) ですべての電線を囲む処理境界を作成します。

正規化 DSM ラスター内の電線、タン色のラインが処理境界を示している。 - 適したモデルが使用可能な場合は、[トレーニング済みモデルを使用して点群を分類 (Classify Point Cloud Using Trained Model)] ジオプロセシング ツールを使用して電線にラベル付けします。 そうでない場合は、プロファイルの編集によって電線ポイントに手動でラベル付けするか、[高さによる LAS の分類 (Classify LAS By Height)] ジオプロセシング ツールを使用して、指定した電線の高さの範囲内にある塔や植生といった誤分類されたポイントを対話型の編集ツールによって修正することができます。

プロファイル ビューアーでの電線の手動分類。 注意:
また、[高さによる LAS の分類 (Classify LAS By Height)] ジオプロセシング ツールを使用して、電線の高さの範囲よりも上または下にあるポイントを分類することもできます。 このようなポイントを地表ポイントとともにトレーニングから除外することで、データセットのサイズを縮小し、電線付近にモデルのトレーニングの焦点を当てることができます。
- データをトレーニングと検証のサブセットに分割します (80:20 の比率など)。
- [点群トレーニング データの準備 (Prepare Point Cloud Training Data)] ツールを使用してトレーニング ブロックと検証ブロックをエクスポートすることで、トレーニング データを準備します。 追加の詳細については、以下のセクションをご参照ください。
- [点群分類モデルのトレーニングを実行 (Train Point Cloud Classification Model)] ジオプロセシング ツールを使用してモデルをトレーニングします。 追加の詳細については、以下のセクションをご参照ください。
- [トレーニング済みモデルを使用して点群を分類 (Classify Point Cloud Using Trained Model)] ジオプロセシング ツールを使用して電線を分類します。 追加の詳細については、以下のセクションをご参照ください。
点群トレーニング データの準備ジオプロセシング ツールの使用
LAS データセットは、モデルのトレーニングで使用する前に、小さいトレーニング ブロックに変換する必要があります。 [点群トレーニング データの準備 (Prepare Point Cloud Training Data)] ジオプロセシング ツールは LAS データをこれらのブロックにエクスポートします。 以下に、主要なパラメーターの概要および電線分類のための使用ガイダンスを示します。
[トレーニング境界フィーチャ] と [検証境界フィーチャ]: 境界ポリゴンを使用して電線付近のポイントのみをエクスポートすることで、該当エリアにトレーニングの焦点を当てます。
[参照サーフェス]: 相対高度値を計算するための DEM ラスターを提供します。 電線と他のフィーチャを区別するには、この属性が不可欠です。
[除外されるクラス コード]: 電線の高さの範囲外にあるクラス (地表、低/中高度、ノイズなど) をトレーニング データから除外します。 特に地表ポイントは、多くの場合、データセットの大部分を占めているため、これらのポイントを削除すれば、データ量を大幅に削減し、トレーニングを高速化できます。
[ブロック サイズ] と [ブロック ポイント制限]: これらのパラメーターは、各ブロックに含まれるポイントの数を制御します。 これらのパラメーターは、点密度、オブジェクト サイズ、GPU メモリー、バッチ サイズのバランス調整によって設定します。 お使いのデータセットとハードウェアに最適な構成を決定するには、いくつかの実験が必要な場合があります。
注意:
- 経験則から、最小限のサブサンプリングによって対象のオブジェクトをキャプチャーできるだけの大きさのブロック サイズを設定し、トレーニング データで重要なフィーチャと十分な詳細を確保できるようにすることをおすすめします。
- ブロック サイズとブロックに含まれるポイントの数は GPU メモリーに大きく左右されます。 ブロック サイズが大きいほど、また、点密度が高いほどメモリーの使用量が増加します。 ブロック ポイント制限はブロックごとの最大ポイント数を制御します。 これを超過すると、ブロックが複数のブロックに分割されます。 たとえば、10,000 個のポイントを含むブロックは、ポイント制限が 3,000 個の場合、それぞれがランダムにサンプリングされた 3,000 個のポイントを含む 4 つのブロックに分割されます (一部のポイントは 2 つのブロックで重複している場合があります)。
- バッチ サイズは GPU で同時に処理されるブロックの数を制御します。 バッチ サイズが大きいほど、GPU メモリーの使用量が増加し、バッチ サイズが小さいほど、必要なメモリーが減少します。
- お使いの GPU メモリーに応じてこれらのパラメーターを調整します。 ハイメモリー GPU の場合、トレーニングの高速化と安定性の向上のために、より大きなブロック サイズ (より多くのコンテキストをキャプチャーするため)、より高いブロック ポイント制限 (サブサンプリングを減らすため)、より大きなバッチ サイズを選択できます。
ツールが完了したら、[メッセージ] でヒストグラムを確認して、ブロック サイズとブロック ポイント制限が適切であるかどうかを評価します。 出力トレーニング データは、フォルダー内に .pctd 拡張子を使用して保存されます。フォルダーには「train」と「val」の 2 つのサブフォルダーがあり、エクスポートされたトレーニング データと検証データがそれぞれ含まれます。 ポイント データは .h5 ファイルに格納され、ブロック別に整理されます。

点群分類モデルのトレーニングを実行ジオプロセシング ツールの使用
点群トレーニング データの準備ツールによってエクスポートされたトレーニング データを使用して、分類モデルをトレーニングします。 適切な事前トレーニング済みの電線分類モデルが使用可能な場合は、ユーザーのデータでそのモデルを微調整できます。そうでない場合は、新しいモデルを最初からトレーニングします。 ツールのパラメーターのリスト、および電線分類のためのパラメーターの構成方法についてのガイダンスを以下に示します。
[事前トレーニング済みモデル]: 適切な事前トレーニング済みモデルを選択します (使用可能な場合)。 トレーニング データが、元のトレーニング時に使用されたモデルの属性、クラス コード、および最大ポイント数に一致していることを確認します。
[モデル アーキテクチャー]: 電線分類の場合、特に最少頻値クラスの識別で最高のパフォーマンスと精度を得るには Point Transformer V3 が適しています。 RandLA-Net も、メモリーを効率よく使用しながら正確な結果を生成するため、推奨されます。 対照的に、PointCNN はより多くの GPU メモリーを必要とし、精度の低下をもたらすことが少なくありません。 Semantic Query Network は、制限されたサンプル データで有効なモデルをトレーニングできますが、ここではあまり適していません。 電線は線形に分散し、データセットの小さな部分のみを占めるため、電線をランダムにサンプリングすると、重要なローカル フィーチャが失われ、モデルの精度が低下する可能性があります。
[属性選択]: [相対高度] を選択し、低電圧電線の場合は、さらに [強度] を選択します。 これらの属性は、点群内で電線と他のオブジェクトを区別するために役立ちます。

[クラス再分類]: 電線以外のすべてのクラスをバックグラウンド クラスに再分類します。 これにより、複雑さを軽減することで、電線と単一のバックグラウンド クラスの区別、分類の効率化、トレーニングの迅速化、モデル精度の向上 (通例の場合) にモデルの焦点を当てることができるようになります。
[損失関数]: より大きい加重を最少頻値クラスの電線に割り当てることでクラスの不均衡に対処する [フォーカル損失] 関数を選択します。
[モデル選択基準]: すべてのクラス コードにわたってマクロ平均再現率を計算するデフォルトの [再現率] オプションを選択します。
[ブロックごとの最小ポイント数]: ポイント数が指定した値よりも少ないブロックがトレーニングから除外されます。 少数の電線ポイントしか含まないブロックをスキップすることで、トレーニングを迅速化し、モデルの学習効率を高めることができます。
[エポックの最大数]: デフォルト設定の 25 エポックを使用します。 25 エポック後にモデルの改善が続いている場合は、事前トレーニング済みモデルとしてそのモデルをさらに調整できます。
[エポック当たりの反復 (%)]: デフォルト値である 100 をそのまま使用して、エポックごとにトレーニング データ全体を渡します。
[学習率戦略]: デフォルトの [1 サイクルの学習率] オプションをそのまま使用します。 この戦略では、トレーニング全体を通して、低い学習率から始まり、ピークまで上昇してから減少するように学習率を動的に調整します。 この戦略は、収束を早め、過剰適合を防止し、モデルがより適切な極小値を検出できるようにして、トレーニングの速度とモデルの精度の両方を向上させます。
[学習率]: このパラメーターの設定方法がわからない場合は、空白のままにして、ツールによって最適な学習率が自動計算されるようにします。
[バッチ サイズ]: バッチ サイズは、一度に処理するブロックの数を指定します。 トレーニング データは複数のバッチに分割されます。 たとえば、バッチ サイズが 20 の場合、1,000 個のブロックが 50 個のバッチに分割され、そのバッチの全部が 1 エポックで処理されます。 小さなバッチ サイズは、トレーニングの安定化に役立ち、メモリーが限られている GPU に適していますが、トレーニング時間が長くなる可能性があります。 大きなバッチ サイズは、トレーニングを迅速化しますが、はるかに多くのメモリーを必要とし、ジェネラライズに影響を及ぼすことがあります。 最適なバッチ サイズを見つけるには、多くの場合、実験を通して GPU メモリー、トレーニング速度、モデルの精度をバランス調整する必要があります。
[モデルの改善がなくなった時点でトレーニングを停止]: このオプションを有効にすると、5 エポック後にモデルが改善を示さない場合にトレーニングが停止されて、過剰適合を防ぐことができます。
トレーニング中は、トレーニング ロス、検証ロス、および再現率の変化を追跡して、トレーニング プロセスを監視します。
注意:
各エポックの進行に伴い、トレーニング ロスと検証ロスが減少すると同時に再現率が増加しますが、これはモデルが学習していることを示しています。
出力は 2 つのフォルダーで構成されます。 そのうちの 1 つは、最適な全体の再現率を備えた保存済みのモデルを含むモデル フォルダーです。 もう 1 つは、エポックのチェックポイントごとに保存されるモデルを含むチェックポイント フォルダーです。
電線分類の場合、最適な全体の再現率 (電線とバックグラウンドのマクロ平均再現率) を備えたモデルは、電線の分類時に最適ではない可能性があります。 電線分類に最適なモデルとは、電線の再現率が最も高いモデルです。 チェックポイント フォルダー内の Epoch_Statistics.csv ファイルを開いて、電線の再現率が最も高いエポックを見つけ出し、対応するモデルを使用して電線を分類します。
トレーニング済みモデルを使用して点群を分類ジオプロセシング ツールの使用
トレーニング済みモデルを使用して点群を分類する場合は、分類する LiDAR データがトレーニング データに類似していることを確認します。 トレーニング データの準備中に処理境界、DEM サーフェス、または除外される特定のクラス コードを使用した場合は、ここで同じ設定を適用します。 以下のガイドに従うと、電線分類のために効果的にパラメーターを構成できるようになります。
[入力モデル定義]: 電線の再現率が最も高いチェックポイント モデルを選択します。
[既存のクラス コードの処理]: 分類の精度を向上させるために、[選択したポイントを編集] または [選択したポイントを維持] を選択します。 地表 (クラス 2)、低植生 (クラス 3)、中植生 (クラス 4) などのターゲット点群を事前に分類して、分類中に編集するクラス コードまたは維持するクラス コードを指定します。 たとえば、中植生を維持する場合、モデルで、一部の中植生ポイントが電線として誤分類された場合でも、そのクラス コードは変更されないままになります。
[バッチ サイズ]: このパラメーターの設定方法がわからない場合は、空白のままにして、ツールによって最適なバッチ サイズが利用可能な GPU メモリーに基づいて自動計算されるようにします。
[処理境界]、[参照サーフェス]、および [除外されるクラス コード]: 電線分類モデルが、これらのいずれかの入力でトレーニングされた場合、ここで必ず同じ設定を適用してください。
ツールが完了したら、シーン ビューで結果を確認します。 対話型の選択および編集ツールを使用して、誤分類された電線ポイントを修正します。 さらに、[点群から電線を抽出 (Extract Power Lines From Point Cloud)] ツールを使用して、電線をモデル化する 3D ラインを生成します。 さらに詳しい解析を行うには、[クリアランス サーフェスの生成 (Generate Clearance Surface)] ジオプロセシング ツールを使用して、電線の周囲にクリアランス ゾーンを描きます。 ゾーン内のフィーチャ (多くの場合、樹木) が、危険なほど電線に近付くと、停電や火災の危険性などのリスクをもたらすため、速やかに対処する必要があります。

LiDAR データ ソースの使用許諾:
- 「NASA Grant NNX13AP69G, the University of Maryland」および「Sonoma County Vegetation Mapping and LiDAR Program」。
- 実践的な練習については、「チュートリアル: ディープ ラーニングを使用した電線の分類」をご参照ください。