概要
航空 LIDAR データ内の地表ポイントを分類します。
図
使用法
このツールでは、入力 LAS データセットが投影座標系である必要があります。地理座標系で格納されたデータは、[LAS の抽出 (Extract LAS)] ツールと、出力座標系の環境設定で指定した投影座標系を使用して再投影できます。
クラス コード値が 0、1、または 2 の LAS ポイントだけを地表ポイントとして割り当てることができます。LAS ファイルで別のクラス コード値を使用して未分類ポイントまたは地表計測値を表している場合は、[LAS クラス コードの変更 (Change LAS Class Codes)] ツールを使用してクラス コード値を再割り当てします。また、分類プロセスでは、オーバーラップまたは保留分類フラグが割り当てられたポイントが無視されます。
地表分類ポイントを使用して、特定の解像度で地表ラスター サーフェスを生成する場合は、[DEM 解像度] パラメーターを使用して、結果の生成を高速化することを検討してください。地表クラス コードに割り当てられるポイントの数を減らすことで、指定した解像度に必要なカバレッジを維持しながら、パフォーマンスを向上できます。
LAS の分類で異なる傾斜角特性を持つテレイン (比較的平坦な領域に急な傾斜面が続く場所など) が返される場合、標準方法で地表分類を一度実行してから、2 回目に強力な検出方法と地表の再利用オプションを有効にして地表分類を実行することを検討してください。処理範囲を適用するか、ポリゴンの境界を指定して、この操作を必要な領域のみに制限します。
橋のある場所や高速道路の出入り口につながる道路は、地表として間違って分類されている可能性があるので確認する必要があります。
構文
arcpy.ddd.ClassifyLasGround(in_las_dataset, method, {reuse_ground}, {dem_resolution}, {compute_stats}, {extent}, boundary, {process_entire_files})
パラメーター | 説明 | データ タイプ |
in_las_dataset | 処理対象の LAS データセット。クラス コード値 0、1、または 2 を含む LAS ポイントのラスト リターンだけが評価されます。 | LAS Dataset Layer |
method | 地表ポイントの検出に使用される方法を指定します。
| String |
reuse_ground (オプション) | 既存の地表ポイントを再分類するか再使用するかを指定します。
| Boolean |
dem_resolution (オプション) | ポイントのサブセットだけが地表としての分類の評価対象となり、処理速度が上がる距離。より速く DEM サーフェスを生成する必要がある場合は、このパラメーターの使用を検討してください。最小距離は 0.3 メートルですが、この処理を効果的に実行するには、LIDAR データの平均ポイント間隔の 1.5 倍以上の距離を指定する必要があります。 | Linear Unit |
compute_stats (オプション) | LAS データセットで参照されている LAS ファイルの統計情報を計算するかどうかを指定します。統計情報を計算することで、LAS ファイルごとの空間インデックスが提供され、解析と表示のパフォーマンスが向上します。また統計によって、分類コードやリターン情報などの LAS 属性の表示が LAS ファイルに存在する値に制限されるので、フィルタリングとシンボルのエクスペリエンスも強化されます。
| Boolean |
extent (オプション) | このツールが評価するデータの範囲を指定します。 | Extent |
boundary | このツールで処理される対象地域を定義するポリゴン フィーチャ。 | Feature Layer |
process_entire_files (オプション) | 処理範囲の適用方法を指定します。
| Boolean |
派生した出力
名前 | 説明 | データ タイプ |
out_las_dataset | 変更された LAS データセット。 | LAS データセット レイヤー |
コードのサンプル
ClassifyLasGround (LAS の地表分類) の例 1 (Python ウィンドウ)
次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。
arcpy.env.workspace = 'C:/data'
arcpy.ClassifyLasGround_3d('metro.lasd', 'CONSERVATIVE',
boundary='study_area.shp',
process_entire_files='PROCESS_ENTIRE_FILES')
ClassifyLasGround (LAS の地表分類) の例 2 (スタンドアロン スクリプト)
次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。
'''****************************************************************************
Name: Classify Ground & Vegetation in Forest Environment
Description: Classify points representing vegetation with LAS class code values
of 3, 4, and 5. The code is designed for use as a script tool.
****************************************************************************'''
# Import system modules
import arcpy
# Set Local Variables
inLas = arcpy.GetParameterAsText(0)
recursion = arcpy.GetParameterAsText(1)
lasd = arcpy.GetParameterAsText(2)
try:
arcpy.CheckOutExtension('3D')
# Execute CreateLasDataset
arcpy.management.CreateLasDataset(inLas, lasd, folder_recursion=recursion)
# Make an initial pass of ground classifier
arcpy.ddd.ClassifyLasGround(lasd, method="Conservative")
# Make a secondary pass to capture ridges
arcpy.ddd.ClassifyLasGround(lasd, method="Aggressive",
reuse_ground="REUSE_GROUND")
# Classify vegetation
arcpy.ddd.ClassifyLasByHeight(lasd, ground_source='GROUND',
height_classification=[[3, 5],
[4, 17],
[5, 120]],
noise='HIGH_NOISE', compute_stats="COMPUTE_STATS")
arcpy.CheckInExtension('3D')
except arcpy.ExecuteError:
print(arcpy.GetMessages())
環境
ライセンス情報
- Basic: 次のものが必要 3D Analyst
- Standard: 次のものが必要 3D Analyst
- Advanced: 次のものが必要 3D Analyst