ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • ヘルプ
  • Sign Out
ArcGIS Desktop

ArcGIS Online

組織のマッピング プラットフォーム

ArcGIS Desktop

完全なプロ仕様の GIS

ArcGIS Enterprise

エンタープライズ GIS

ArcGIS Developers

位置情報利用アプリの開発ツール

ArcGIS Solutions

各種業界向けの無料のテンプレート マップおよびテンプレート アプリケーション

ArcGIS Marketplace

組織で使えるアプリとデータを取得

  • ドキュメント
  • サポート
Esri
  • サイン イン
user
  • マイ プロフィール
  • サイン アウト

ArcMap

  • ホーム
  • はじめに
  • マップ
  • 解析
  • データ管理
  • ツール
  • エクステンション

LAS クラス コードの変更 (Change LAS Class Codes)

  • 概要
  • 使用法
  • 構文
  • コードのサンプル
  • 環境
  • ライセンス情報

概要

LAS ファイルの分類コードとフラグを再割り当てします。

使用法

  • LAS データセットが参照するすべての LAS ファイルがこのツールによって評価されます。ただし、変更されるのは、提供されたクラス コードを含むファイルだけです。

  • このツールを使用して、LAS 1.1 仕様の標準化されたクラス コードの導入の前に作成された LAS ファイルのデータ ポイントの分類を更新します。

  • LAS 形式は、ASPRS (American Society for Photogrammetry and Remote Sensing) によって定義された仕様に基づいて各ポイントの分類をサポートします。ArcGIS プラットフォームは、LAS ファイル バージョン 1.4 で規定されている以下の分類方式を適用します。

    分類値 分類タイプ

    0

    分類不可

    1

    未分類

    2

    地表

    3

    低植生

    4

    中植生

    5

    高植生

    6

    建物

    7

    低ノイズ

    8

    モデル キー/予約

    9

    水

    10

    レール

    11

    路面

    12

    オーバーラップ/予約

    13

    保護線

    14

    電線

    15

    送電塔

    16

    ワイヤー コネクタ

    17

    橋床版

    18

    高ノイズ

    19 ~ 63

    ASPRS 定義用の予約 (LAS 1.1 〜 1.3 はクラス コード 31 までをサポート)

    32 ~ 255

    ユーザー定義可能 (LAS 1.0 および 1.4 の特定バージョンでのみサポートされる)

構文

arcpy.ddd.ChangeLasClassCodes(in_las_dataset, class_codes, {compute_stats}, {extent}, boundary, {process_entire_files})
パラメーター説明データ タイプ
in_las_dataset

処理対象の LAS データセット。

LAS Dataset Layer
class_codes
[[current_class, new_class],...]

現在のクラス コード値と新しいクラス コード値の各ペアを、スペースで区切った文字列または整数のリストとして指定します。たとえば、現在のクラス コード 5 を 2 に変更する場合は、「5 2」または [5, 2] と指定します。複数のクラス コードは、セミコロンで区切った文字列 (「5 2; 8 3; 1 4」)、文字列のリスト (たとえば、[[5, 2], [8, 3], [1, 4]]) として入力できます。

Value Table
compute_stats
(オプション)

LAS データセットで参照されている LAS ファイルの統計情報を計算するかどうかを指定します。統計情報を計算することで、LAS ファイルごとの空間インデックスが提供され、解析と表示のパフォーマンスが向上します。また統計によって、分類コードやリターン情報などの LAS 属性の表示が LAS ファイルに存在する値に制限されるので、フィルタリングとシンボルのエクスペリエンスも強化されます。

  • COMPUTE_STATS —統計情報を計算します。
  • NO_COMPUTE_STATS —統計情報を計算しません。これがデフォルトです。
Boolean
extent
(オプション)

このツールが評価するデータの範囲を指定します。

Extent
boundary

このツールで処理される対象地域を定義するポリゴン フィーチャ。

Feature Layer
process_entire_files
(オプション)

処理範囲の適用方法を指定します。

  • PROCESS_EXTENT —対象地域と交差している LAS ポイントだけが処理されます。これがデフォルトです。
  • PROCESS_ENTIRE_FILES —LAS ファイルの一部が対象地域と交差している場合、対象地域の外側にあるポイントも含め、その LAS ファイル内のすべてのポイントが処理されます。
Boolean

派生した出力

名前説明データ タイプ
derived_las_dataset

更新された LAS データセット。

LAS データセット レイヤー

コードのサンプル

ChangeLasClassCodes (LAS クラス コードの変更) の例 1 (Python ウィンドウ)

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

import arcpy
from arcpy import env

arcpy.CheckOutExtension('3D')
env.workspace = 'C:/data'
arcpy.ChangeLasClassCodes_3d('test.lasd', [[5, 2], [3, 1], [4, 6]], 
                           'COMPUTE_STATS')
ChangeLasClassCodes (LAS クラス コードの変更) の例 2 (スタンドアロン スクリプト)

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

'''****************************************************************************
Name: Update LAS 1.0 Classification to ASPRS 1.1 Specs
Description: Updates classification of version 1.0 LAS files to conform to 
             the standardized class codes introduced in the 1.1 specifications. 
             The code is designed for use as a script tool.
****************************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback

# Set Local Variables
inLas = arcpy.GetParameterAsText(0)
recursion = arcpy.GetParameterAsText(1)
lasd = arcpy.GetParameterAsText(2)
reclassList = arcpy.GetParameterAsText(3) #List of values '<oldCode> <newCode>'
calcStats = arcpy.GetParameter(4)

try:
    arcpy.CheckOutExtension('3D')
    # Execute CreateLasDataset
    arcpy.management.CreateLasDataset(inLas, lasd, recursion)
    # Execute ChangeLasClassCodes
    arcpy.ddd.ChangeLasClassCodes(lasd, reclassList, calcStats)
    # Report messages
    arcpy.GetMessages()
    
except arcpy.ExecuteError:
    print arcpy.GetMessages()
    
except:
    # Get the traceback object
    tb = sys.exc_info()[2]
    tbinfo = traceback.format_tb(tb)[0]
    # Concatenate error information into message string
    pymsg = 'PYTHON ERRORS:\nTraceback info:\n{0}\nError Info:\n{1}'\
          .format(tbinfo, str(sys.exc_info()[1]))
    msgs = 'ArcPy ERRORS:\n {0}\n'.format(arcpy.GetMessages(2))
    # Return python error messages for script tool or Python Window
    arcpy.AddError(pymsg)
    arcpy.AddError(msgs)

環境

  • 現在のワークスペース
  • 範囲

ライセンス情報

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

関連トピック

  • データ管理ツールセットの概要
  • サーフェスの基礎
  • サーフェスの形式
  • LIDAR ポイントの分類
  • LAS ポイント分類の編集
  • ArcGIS での LAS 分類の操作

ArcGIS Desktop

  • ホーム
  • ドキュメント
  • サポート

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

Esri について

  • 会社概要
  • 採用情報
  • Esri ブログ
  • ユーザ カンファレンス
  • デベロッパ サミット
Esri
ご意見・ご感想をお寄せください。
Copyright © 2021 Esri. | プライバシー | リーガル