LAS nach Höhe klassifizieren (3D Analyst)

Zusammenfassung

Reklassifiziert LIDAR-Punkte basierend auf ihrer Höhe von der Bodenoberfläche.

Verwendung

  • Mit diesem Werkzeug werden LAS-Punkte mit den Klassencodewerten "0" oder "1" basierend auf ihrer Höhe von der Bodenoberfläche reklassifiziert, die mit LIDAR-Rückgaben erstellt wurde, denen der Klassencodewert "2" oder "8" zugewiesen ist. Wenn LIDAR-Bodenrückgaben andere Werte als "2" oder "8" verwenden, nutzen Sie das Werkzeug LAS-Klassencodes ändern, damit die Klassencodedefinition den Spezifikationen des LAS-Formats entspricht.

  • Sie können dieses Werkzeug zum Klassifizieren der Vegetation in LIDAR-Daten verwenden, die für Remote-Bereiche mit minimaler Anzahl von Gebäuden erfasst wurden.

  • Wenden Sie eine Verarbeitungsausdehnung an, um die Eignung der festgelegten Z-Wertbereiche für eine Teilmenge von LAS-Punkten zu überprüfen. Nachdem die reklassifizierte Region als zufriedenstellend erachtet wurde, kann sie anschließend auf eine größere Ausdehnung angewendet werden.

  • Das LAS-Format unterstützt die Klassifizierung jedes Punktes basierend auf den von der ASPRS (American Society for Photogrammetry and Remote Sensing) definierten Spezifikationen. Die ArcGIS Plattform wendet das für die LAS-Dateiversion 1.4 angegebene Klassifizierungsschema an:

    Klassifizierungswert Klassifizierungstyp

    0

    Nie klassifiziert

    1

    Nicht zugewiesen

    2

    Boden

    3

    Niedrige Vegetation

    4

    Mittelhohe Vegetation

    5

    Hohe Vegetation

    6

    Gebäude

    7

    Niedriges Rauschen

    8

    Modellschlüssel/Reserviert

    9

    Wasser

    10

    Schienen

    11

    Straßenbelag

    12

    Überlappung/Reserviert

    13

    Draht - Schutz

    14

    Draht - Leiter

    15

    Strommast

    16

    Drahtverbinder

    17

    Brückenfahrbahn

    18

    Hohes Rauschen

    19 – 63

    Für die ASPRS-Definition reserviert (die Versionen LAS 1.1 bis 1.3 unterstützen bis zum Klassencode 31)

    32 – 255

    Kann vom Benutzer definiert werden (wird nur in LAS 1.0 und bestimmten Versionen von 1.4 unterstützt)

    Hinweis:

    Während der Großteil der mit LAS 1.4 eingeführten neuen Klassencodezuweisungen zuvor als "Reserviert" festgelegt wurde, wurden die Klassencodes 8 und 12 von "Modellschlüssel" und "Überlappung" in "Reserviert" geändert.

Syntax

ClassifyLasByHeight(in_las_dataset, ground_source, height_classification, {noise}, {compute_stats}, {extent}, {process_entire_files}, boundary)
ParameterErklärungDatentyp
in_las_dataset

Das LAS-Dataset, das verarbeitet wird. Es werden nur LAS-Punkte mit den Klassencodewerten 0 und 1 ausgewertet.

LAS Dataset Layer
ground_source

Die Bodenquellenmessungen zur Bestimmung der Höhe über dem Boden.

  • GROUNDEs werden LAS-Punkte verwendet, für die der Codewert 2 für Bodenklassifizierung und der Codewert 8 für Modellschlüssel festgelegt wurden.
  • MODEL_KEYEs werden nur LAS-Punkte verwendet, für die der Klassifizierungscodewert 8 für Modellschlüssel festgelegt wurde.
String
height_classification
[[class_code, height_from_ground],...]

Der Klassencodewert, der LAS-Punkten zugewiesen wird, die in den Wertebereich fallen, der von der angegebenen Höhe vom Boden abgeleitet ist. Die Reihenfolge der Einträge hat Auswirkungen auf die Höhenbereiche, anhand derer die Reklassifizierung von LAS-Punkten definiert wird. Der Z-Bereich des ersten Eintrags reicht von der Bodenoberfläche bis zu dem für height_from_ground angegebenen Wert. Der Z-Bereich nachfolgender Einträge reicht von der Obergrenze des vorherigen Eintrags bis zu seinem eigenen Wert für height_from_ground.

Value Table
noise
(optional)

Gibt an, ob Punkte basierend auf ihrer Nähe zum Boden als Rauschen reklassifiziert werden. Rauschen-Artefakte in LIDAR-Daten können durch Sensorfehler und das versehentliche Abfangen von Hindernissen in der Luft, wie Vögel im Pfad des LIDAR-Impulses, entstehen.

  • ALL_NOISEEs wird sowohl hohes als auch niedriges Rauschen klassifiziert.
  • HIGH_NOISENur Punkte, die sich über der maximalen Höhe in der LAS-Klassifizierungstabelle befinden, werden als hohes Rauschen reklassifiziert.
  • LOW_NOISENur Punkte unter der Bodenoberfläche werden als Rauschen reklassifiziert. Dies ist nur verfügbar, wenn alle Bodenpunkte zum Definieren der Bodenoberfläche herangezogen werden.
  • NONEEs werden keine Punkte als Rauschen reklassifiziert.
String
compute_stats
(optional)

Gibt an, ob für die vom LAS-Dataset referenzierten LAS-Dateien Statistiken berechnet werden sollen. Durch das Berechnen von Statistiken wird ein räumlicher Index für jede LAS-Datei bereitgestellt, wodurch sich die Analyse- und Darstellungs-Performance verbessert. Ferner werden durch Statistiken die Filter- und Symbolisierungsverfahren verbessert, da die Anzeige von LAS-Attributen, beispielsweise Klassifizierungscodes und Rückgabeinformationen, auf die in der LAS-Datei vorhandenen Werte begrenzt wird.

  • COMPUTE_STATSEs werden Statistiken berechnet.
  • NO_COMPUTE_STATSEs werden keine Statistiken berechnet. Dies ist die Standardeinstellung.
Boolean
extent
(optional)

Legen Sie die Ausdehnung der Daten fest, die von diesem Werkzeug ausgewertet werden.

Extent
process_entire_files
(optional)

Legen Sie fest, wie die Verarbeitungsausdehnung angewendet werden soll.

  • PROCESS_ENTIRE_FILESNur LAS-Punkte, die sich innerhalb der Verarbeitungsausdehnung befinden, werden ausgewertet. Dies ist die Standardeinstellung.
  • PROCESS_EXTENTAlle Punkte in den LAS-Dateien, die die Verarbeitungsausdehnung überschneiden, werden ausgewertet.
Boolean
boundary

Ein Polygon-Feature, das die Region definiert, für die LAS-Bodenpunkte ausgewertet werden.

Feature Layer

Abgeleitete Ausgabe

NameErklärungDatentyp
out_las_dataset

Das LAS-Dataset, das geändert wurde.

LAS-Dataset-Layer

Codebeispiel

ClassifyLasByHeight – Beispiel 1 (Python-Fenster)

Anhand des folgenden Beispiels wird die Verwendung dieses Werkzeugs im Python-Fenster veranschaulicht.

arcpy.env.workspace = 'C:/data'
arcpy.ClassifyLasByHeight_3d('lidar.lasd', 'Ground', 
                             [[3, 5], [4, 17], [5, 120]], 'HIGH_NOISE')
ClassifyLasByHeight – Beispiel 2 (eigenständiges Skript)

Im folgenden Beispiel wird die Verwendung dieses Werkzeugs in einem eigenständigen Python-Skript veranschaulicht.

'''****************************************************************************
Name:        Classify Vegetation Points
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
import exceptions, sys, traceback

# Set Local Variables
inLas = arcpy.GetParameterAsText(0)
recursion = arcpy.GetParameterAsText(1)
lasd = arcpy.GetParameterAsText(2)
extent = arcpy.GetParameter(3)
calcStats = arcpy.GetParameter(4)

try:
    # Execute CreateLasDataset
    arcpy.management.CreateLasDataset(inLas, lasd, folder_recursion=recursion)
    # Execute ChangeLasClassCodes
    arcpy.ddd.ClassifyLasByHeight(lasd, ground_source='GROUND', 
                                  height_classification=[[3, 5], 
                                                         [4, 17], 
                                                         [5, 120]], 
                                  noise='ALL_NOISE', compute_stats=calcStats, 
                                  extent=extent)

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

Lizenzinformationen

  • Basic: Erfordert 3D Analyst
  • Standard: Erfordert 3D Analyst
  • Advanced: Erfordert 3D Analyst

Verwandte Themen