LAS データセット レイヤーの作成 (Make LAS Dataset Layer) (データ管理)

サマリー

LAS ポイントにフィルターを適用し、サーフェス制御フィーチャの適用をコントロールできる LAS データセット レイヤーを作成します。

使用法

  • LAS データセット レイヤーを使用すると、LAS データセットからサーフェスを三角形分割する際に、LAS ポイントにフィルターを適用し、適用するサーフェス制御フィーチャをコントロールできます。 LAS ポイントは、各ポイントに関連付けられた分類コード、分類フラグ、およびリターン値を使用してフィルター処理できます。 フィルターは、LAS データセットを処理するさまざまなツールによって使用されます。 たとえば、地表面をモデリングするラスター サーフェスは、分類された地表ポイントをフィルタリングし、生成されたレイヤーを [LAS データセット → ラスター] ツールの入力として使用することにより構築できます。

    注意:

    このツールによって生成されるレイヤーは、[レイヤー ファイルの保存] ツールを使用してレイヤー ファイルとして保存することができます。

  • マップまたはシーン内の LAS データセット レイヤーを操作する際に、LAS データセット レイヤー プロパティ ダイアログ ボックスを使用して、LAS ポイントとサーフェス制御をフィルター処理できます。 フィルター オプションを管理するための便利なメカニズムが提供されます。 このツールは、ModelBuilder または Python で作成された自動ソリューションを考慮して LAS データセット フィルターを適用するのに便利です。

  • 指定された LAS ファイルでサポートされている分類コード、分類フラグ、およびリターン値は、そのファイルのバージョンとポイント記録形式によって異なります。 入力 LAS ファイル値を指定してフィルターを定義していない場合、生成されたレイヤーからポイントは生成されません。 LAS データセットにある分類コード、分類フラグ、およびリターン値は、統計情報の計算により決まります。

    LAS データセットの統計情報の操作の詳細

パラメーター

ラベル説明データ タイプ
入力 LAS データセット

処理される LAS データセット。

LAS Dataset Layer
出力レイヤー

作成される LAS データセット レイヤーの名前。 バックスラッシュまたはスラッシュを使用して、グループ レイヤーを示すことができます。

LAS Dataset Layer
クラス コード
(オプション)

LAS ポイントのフィルタリングに使用する分類コードを指定します。 デフォルトでは、すべてのクラス コードが選択されます。

  • 0分類方法で処理しません
  • 1分類方法で処理しますが、クラス コードは決定できません。
  • 2地表計測値
  • 3地域で標高が低いと見なされる植生
  • 4地域で標高が中程度と見なされる植生
  • 5地域で標高が高いと見なされる植生
  • 6屋根および壁を持つ構造
  • 7地面に近い誤りのデータまたは不要なデータ
  • 8以降の使用のための予約、LAS 1.1 - 1.3 のモデル キー ポイントに使用されます。
  • 9水域
  • 10列車が使用する鉄道の線路
  • 11路面
  • 12以降の使用のための予約、LAS 1.1 - 1.3 のオーバーラップ ポイントに使用されます。
  • 13電線の周囲の標識
  • 14電線
  • 15頭上の電線を支えるために使用する鉄塔
  • 16電気回路を結合する機械部品
  • 17橋の表面。
  • 18地面から遠い誤りのデータまたは不要なデータ
  • 19 - 63ASPRS 指定用の予約済みクラス コード
  • 64 - 255ユーザー定義可能なクラス コード
String
戻り値
(オプション)

LAS ポイントのフィルタリングに使用する順序パルス リターン値を指定します。 値が指定されない場合、すべてのリターンが使用されます。 リターン情報は、LIDAR スキャナーから収集された LAS ポイント クラウドでのみ使用できます。 リターン番号は LIDAR パルスから取得された離散点の順序を反映しているため、最初のリターンはスキャナーに最も近く、最後のリターンはスキャナーから最も遠くなります。

  • LASTすべての LIDAR パルスからの最後のポイントを使用します。
  • FIRST_OF_MANY複数のリターンがある各 LIDAR パルスの最初のポイントを使用します。
  • LAST_OF_MANY複数のリターンがある各 LIDAR パルスの最後のポイントを使用します。
  • SINGLEリターンが 1 つだけある LIDAR パルスのすべてのポイントを使用します。
  • 1リターン値が 1 のすべてのポイントを使用します。
  • 2リターン値が 2 のすべてのポイントを使用します。
  • 3リターン値が 3 のすべてのポイントを使用します。
  • 4リターン値が 4 のすべてのポイントを使用します。
  • 5リターン値が 5 のすべてのポイントを使用します。
  • 6リターン値が 6 のすべてのポイントを使用します。
  • 7リターン値が 7 のすべてのポイントを使用します。
  • 8リターン値が 8 のすべてのポイントを使用します。
  • 9リターン値が 9 のすべてのポイントを使用します。
  • 10リターン値が 10 のすべてのポイントを使用します。
  • 11リターン値が 11 のすべてのポイントを使用します。
  • 12リターン値が 12 のすべてのポイントを使用します。
  • 13リターン値が 13 のすべてのポイントを使用します。
  • 14リターン値が 14 のすべてのポイントを使用します。
  • 15リターン値が 15 のすべてのポイントを使用します。
String
フラグなし
(オプション)

分類フラグが割り当てられていないデータ ポイントを含めるかどうかを指定します。

  • オン - フラグが割り当てられていないポイントを含めます。 これがデフォルトです。
  • オフ - フラグが割り当てられていないポイントを除外します。
Boolean
Synthetic ポイント
(オプション)

Synthetic のフラグが設定されたデータ ポイントを含めるかどうかを指定します。 Synthetic ポイントとは LIDAR スキャナー以外のデータ ソースから生成された LAS ポイントです。

  • オン - Synthetic ポイントを含めます。 これがデフォルトです。
  • オフ - Synthetic ポイントを除外します。
Boolean
モデル キー ポイント
(オプション)

モデル キー ポイントのフラグが設定されたデータ ポイントを含めるかどうかを指定します。 モデル キー ポイントとは関連するオブジェクトのモデリングに重要な LAS ポイントです。

  • オン - モデル キーポイントを含めます。 これがデフォルトです。
  • オフ - モデル キーポイントを除外します。
Boolean
Withheld ポイント
(オプション)

Withheld のフラグが設定されたデータ ポイントを含めるかどうかを指定します。 Withheld ポイントは、LAS ポイントで取得された不正または不要な計測値を表します。

  • オン - Withheld ポイントを含めます。
  • オフ - Withheld ポイントを除外します。 これがデフォルトです。
Boolean
サーフェス制御
(オプション)

レイヤー内で有効化されるサーフェス制御フィーチャの名前。 すべてのサーフェス制御がデフォルトで有効となります。

String
オーバーラップ ポイント
(オプション)

オーバーラップとしてフラグが設定されたデータ ポイントを含めるかどうかを指定します。 オーバーラップ ポイントとは、通常スキャン角度が大きいオーバーラップ スキャンで収集されたポイントです。 オーバーラップ ポイントをフィルタリングすると、データの範囲全体で LAS ポイントの規則的な分布を実現できます。

  • オン - オーバーラップ ポイントを含めます。 これがデフォルトです。
  • オフ - オーバーラップ ポイントを除外します。
Boolean

arcpy.management.MakeLasDatasetLayer(in_las_dataset, out_layer, {class_code}, {return_values}, {no_flag}, {synthetic}, {keypoint}, {withheld}, {surface_constraints}, {overlap})
名前説明データ タイプ
in_las_dataset

処理される LAS データセット。

LAS Dataset Layer
out_layer

作成される LAS データセット レイヤーの名前。 バックスラッシュまたはスラッシュを使用して、グループ レイヤーを示すことができます。

LAS Dataset Layer
class_code
[class_code,...]
(オプション)

LAS ポイントのフィルタリングに使用する分類コードを指定します。 デフォルトでは、すべてのクラス コードが選択されます。

  • 0分類方法で処理しません
  • 1分類方法で処理しますが、クラス コードは決定できません。
  • 2地表計測値
  • 3地域で標高が低いと見なされる植生
  • 4地域で標高が中程度と見なされる植生
  • 5地域で標高が高いと見なされる植生
  • 6屋根および壁を持つ構造
  • 7地面に近い誤りのデータまたは不要なデータ
  • 8以降の使用のための予約、LAS 1.1 - 1.3 のモデル キー ポイントに使用されます。
  • 9水域
  • 10列車が使用する鉄道の線路
  • 11路面
  • 12以降の使用のための予約、LAS 1.1 - 1.3 のオーバーラップ ポイントに使用されます。
  • 13電線の周囲の標識
  • 14電線
  • 15頭上の電線を支えるために使用する鉄塔
  • 16電気回路を結合する機械部品
  • 17橋の表面。
  • 18地面から遠い誤りのデータまたは不要なデータ
  • 19 - 63ASPRS 指定用の予約済みクラス コード
  • 64 - 255ユーザー定義可能なクラス コード
String
return_values
[return_values,...]
(オプション)

LAS ポイントのフィルタリングに使用する順序パルス リターン値を指定します。 値が指定されない場合、すべてのリターンが使用されます。 リターン情報は、LIDAR スキャナーから収集された LAS ポイント クラウドでのみ使用できます。 リターン番号は LIDAR パルスから取得された離散点の順序を反映しているため、最初のリターンはスキャナーに最も近く、最後のリターンはスキャナーから最も遠くなります。

  • LASTすべての LIDAR パルスからの最後のポイントを使用します。
  • FIRST_OF_MANY複数のリターンがある各 LIDAR パルスの最初のポイントを使用します。
  • LAST_OF_MANY複数のリターンがある各 LIDAR パルスの最後のポイントを使用します。
  • SINGLEリターンが 1 つだけある LIDAR パルスのすべてのポイントを使用します。
  • 1リターン値が 1 のすべてのポイントを使用します。
  • 2リターン値が 2 のすべてのポイントを使用します。
  • 3リターン値が 3 のすべてのポイントを使用します。
  • 4リターン値が 4 のすべてのポイントを使用します。
  • 5リターン値が 5 のすべてのポイントを使用します。
  • 6リターン値が 6 のすべてのポイントを使用します。
  • 7リターン値が 7 のすべてのポイントを使用します。
  • 8リターン値が 8 のすべてのポイントを使用します。
  • 9リターン値が 9 のすべてのポイントを使用します。
  • 10リターン値が 10 のすべてのポイントを使用します。
  • 11リターン値が 11 のすべてのポイントを使用します。
  • 12リターン値が 12 のすべてのポイントを使用します。
  • 13リターン値が 13 のすべてのポイントを使用します。
  • 14リターン値が 14 のすべてのポイントを使用します。
  • 15リターン値が 15 のすべてのポイントを使用します。
String
no_flag
(オプション)

分類フラグが割り当てられていないデータ ポイントを表示および解析のために含めるかどうかを指定します。

  • INCLUDE_UNFLAGGEDフラグが割り当てられていないポイントを含めます。 これがデフォルトです。
  • EXCLUDE_UNFLAGGEDフラグが割り当てられていないポイントを除外します。
Boolean
synthetic
(オプション)

Synthetic のフラグが設定されたデータ ポイントを含めるかどうかを指定します。 Synthetic ポイントとは LIDAR スキャナー以外のデータ ソースから生成された LAS ポイントです。

  • INCLUDE_SYNTHETICSynthetic ポイントを含めます。 これがデフォルトです。
  • EXCLUDE_SYNTHETICSynthetic ポイントを除外します。
Boolean
keypoint
(オプション)

モデル キー ポイントのフラグが設定されたデータ ポイントを含めるかどうかを指定します。 モデル キー ポイントとは関連するオブジェクトのモデリングに重要な LAS ポイントです。

  • INCLUDE_KEYPOINTモデル キーポイントを含めます。 これがデフォルトです。
  • EXCLUDE_KEYPOINTモデル キーポイントを除外します。
Boolean
withheld
(オプション)

Withheld のフラグが設定されたデータ ポイントを含めるかどうかを指定します。 Withheld ポイントは、LAS ポイントで取得された不正または不要な計測値を表します。

  • INCLUDE_WITHHELDWithheld ポイントを含めます。
  • EXCLUDE_WITHHELDWithheld ポイントを除外します。 これがデフォルトです。
Boolean
surface_constraints
[surface_constraints,...]
(オプション)

レイヤー内で有効化されるサーフェス制御フィーチャの名前。 すべてのサーフェス制御がデフォルトで有効となります。

String
overlap
(オプション)

オーバーラップとしてフラグが設定されたデータ ポイントを含めるかどうかを指定します。 オーバーラップ ポイントとは、通常スキャン角度が大きいオーバーラップ スキャンで収集されたポイントです。 オーバーラップ ポイントをフィルタリングすると、データの範囲全体で LAS ポイントの規則的な分布を実現できます。

  • INCLUDE_OVERLAPオーバーラップ ポイントを含めます。 これがデフォルトです。
  • EXCLUDE_OVERLAPオーバーラップ ポイントを除外します。
Boolean

コードのサンプル

MakeLasDatasetLayer の例 1 (Python ウィンドウ)

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

arcpy.env.workspace = 'C:/data'
arcpy.management.MakeLasDatasetLayer('Baltimore.lasd', 'Baltimore Layer',
                                     class_code=[2, 6], return_values=['LAST', 'SINGLE'])
MakeLasDatasetLayer の例 2 (スタンドアロン スクリプト)

次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。

'''*********************************************************************
Name: Export Elevation Raster from Ground LAS Measurements
Description: This script demonstrates how to export
             ground measurements from LAS files to a raster using a
             LAS dataset. This sample is designed to be used as a script
             tool.
*********************************************************************'''
# Import system modules
import arcpy

try:
    # Set Local Variables
    inLas = arcpy.GetParameterAsText(0)
    recursion = arcpy.GetParameterAsText(1)
    surfCons = arcpy.GetParameterAsText(2)
    classCode = arcpy.GetParameterAsText(3)
    returnValue = arcpy.GetParameterAsText(4)
    spatialRef = arcpy.GetParameterAsText(5)
    lasD = arcpy.GetParameterAsText(6)
    outRaster = arcpy.GetParameterAsText(7)
    cellSize = arcpy.GetParameter(8)
    zFactor = arcpy.GetParameter(9)

    # Execute CreateLasDataset
    arcpy.management.CreateLasDataset(inLas, lasD, recursion, surfCons, sr)
    # Execute MakeLasDatasetLayer
    lasLyr = arcpy.CreateUniqueName('Baltimore')
    arcpy.management.MakeLasDatasetLayer(lasD, lasLyr, classCode, returnValue)
    # Execute LasDatasetToRaster
    arcpy.conversion.LasDatasetToRaster(lasLyr, outRaster, 'ELEVATION',
                              'TRIANGULATION LINEAR WINDOW_SIZE 10', 'FLOAT',
                              'CELLSIZE', cellSize, zFactor)
    print(arcpy.GetMessages())

except arcpy.ExecuteError:
    print(arcpy.GetMessages())

except Exception as err:
    print(err.args[0])

finally:
    arcpy.management.Delete(lasLyr)