LAS-Überlappung klassifizieren (3D Analyst)

Zusammenfassung

Klassifiziert LAS-Punkte aus überlappenden Scans von LIDAR-Luftbildvermessungen.

Abbildung

Beispiel für das Werkzeug "LAS-Überlappung klassifizieren"

Verwendung

  • Überlappende Punkte stellen LAS-Rückgaben dar, die in unmittelbarer Nähe zu einem anderen Punkt aus einem Scan liegen, der aus einer anderen Flugbahn stammt. Wenn in einer Entfernung, die kürzer ist als der nominale Punktabstand, mehrere Punkte unterschiedlicher Flugbahnen liegen, wird in der Regel der Punkt mit dem größeren Abtastwinkel als Überlappung markiert. Durch die Bezeichnung "Überlappung" können die Punkte gefiltert und aus der Visualisierung und Analyse ausgeschlossen werden.

  • Dieses Werkzeug kann für gekachelte .las-Dateien verwendet werden, die Punkt-Datensätze aus mehreren Flugbahnen kombinieren. Jede .las-Datei wird einzeln verarbeitet, und die Eingabe-LAS-Daten werden dateiweise verarbeitet. Daher werden überlappende Punkte nicht erkannt, wenn jede Flugbahn in einer separaten .las-Datei gespeichert wird. Mit dem Werkzeug LAS kacheln kann eine Sammlung von .las-Dateien, die aus einzelnen Flugbahnen bestehen, in gekachelte Dateien mit mehreren Flugbahnen zusammengeführt werden.

  • Nicht klassifizierte überlappende Punkte können bei Vorgängen, bei denen eine gleichmäßige Punktverteilung vorausgesetzt wird, zu unerwünschten Ergebnissen führen. Daten, die aus Verarbeitungspunkten mit unregelmäßiger Punktdichte und Verteilung abgeleitet wurden, können eine unerwünschte Fehlerspanne aufweisen. Durch die Klassifizierung von überlappenden Punkten können die LAS-Daten gefiltert werden, um eine konsistente Punktdichte zu erzeugen und das Potenzial für Punktrückgaben mit einer höheren Fehlerspanne reduzieren.

  • Das Punktquell-ID-Attribut eines LAS-Punktes liefert Informationen zu der Flugbahn, aus der er stammt. Dieses Werkzeug verarbeitet LAS-Daten in Kacheln, indem es ermittelt, ob mehrere Punktquell-IDs vorhanden sind und die ID mit dem größeren Abtastwinkel als Überlappung identifiziert. Wenn in einer zu verarbeitenden Fläche mehrere Punkte mit derselben Punktquell-ID vorhanden sind, werden alle Punkte mit derselben Punktquell-ID des Punktes mit dem größeren Abtastwinkel als Überlappung klassifiziert. Daher sollte die zum Auswerten der LAS-Punkte verwendete Stichprobengröße ca. zwei- bis dreimal so groß sein wie der nominale Punktabstand der LAS-Daten. Vermeiden Sie größere Kachelgrößen, da Punkte mit kleineren Werten für den Abtastwinkel sonst möglicherweise falsch klassifiziert werden. Bei kleineren Stichprobengrößen werden möglicherweise nicht genügend Punkte erfasst, um überlappende Punkte ordnungsgemäß zu identifizieren und zu klassifizieren.

  • Überlappenden Punkten in LAS-Dateien mit der Versionsnummer 1.4 und einem Punktdatenformat zwischen 6 und 8 wird das Klassifizierungs-Flag "Überlappung" zugewiesen, wobei ihr ursprünglicher Klassencodewert erhalten bleibt. Überlappenden Punkten in allen anderen unterstützten .las-Dateien wird der Klassencodewert 12 zugewiesen. Wenn der Klassencodewert 12 von den Eingabe-.las-Dateien verwendet wird, um etwas anderes als überlappende Scans darzustellen, kann diesen Punkten mit dem Werkzeug LAS-Klassencodes ändern vor dem Ausführen dieses Werkzeugs ein anderer Wert zugewiesen werden.

Parameter

BeschriftungErläuterungDatentyp
Eingabe-LAS-Dataset

Das zu verarbeitende gekachelte LAS-Dataset.

LAS Dataset Layer
Stichprobenentfernung

Der Abstand einer Dimension der quadratischen Fläche, die zum Auswerten der LAS-Daten verwendet wird. Falls Unbekannt als lineare Einheit angegeben wurde, wird die Einheit durch den Raumbezug der Eingabe-.las-Datei definiert.

Linear Unit
Verarbeitungsausdehnung
(optional)

Die Ausdehnung der Daten, die von diesem Werkzeug ausgewertet werden.

  • Default: Die Ausdehnung basiert auf der maximalen Ausdehnung aller beteiligten Layer. Dies ist die Standardeinstellung.
  • Vereinigungsmenge der Eingaben: Die Ausdehnung basiert auf der maximalen Ausdehnung aller Eingaben.
  • Schnittmenge der Eingaben: Die Ausdehnung basiert auf der kleinsten gemeinsamen Fläche aller Eingaben.
  • Aktuelle Anzeigeausdehnung: Die Ausdehnung entspricht der sichtbaren Anzeige. Die Option ist nicht verfügbar, wenn keine aktive Karte vorhanden ist.
  • Wie unten angegeben: Die Ausdehnung basiert auf den angegebenen Minimal- und Maximalwerten der Ausdehnung.
  • Durchsuchen: Die Ausdehnung basiert auf einem vorhandenen Dataset.
Extent
Gesamte die Ausdehnung schneidende LAS-Dateien verarbeiten
(optional)

Gibt die Verwendung des Interessenbereichs an, indem Sie festlegen, wie .las-Dateien verarbeitet werden. Der Interessenbereich wird durch den Parameterwert Verarbeitungsausdehnung, den Parameterwert Verarbeitungsgrenze oder eine Kombination aus beiden definiert.

  • Deaktiviert: Es werden nur LAS-Punkte verarbeitet, die den Interessenbereich schneiden. Dies ist die Standardeinstellung.
  • Aktiviert: Wenn ein Teil einer .las-Datei den Interessenbereich schneidet, werden alle Punkte in dieser .las-Datei verarbeitet, einschließlich derer außerhalb des Interessenbereichs.
Boolean
Statistiken berechnen
(optional)

Gibt an, ob für die vom .las-Dataset referenzierten LAS-Dateien Statistiken berechnet werden. 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.

  • Aktiviert: Es werden Statistiken berechnet. Dies ist die Standardeinstellung.
  • Deaktiviert – Es werden keine Statistiken berechnet.
Boolean
Pyramide aktualisieren
(optional)

Gibt an, ob die LAS-Dataset-Pyramide aktualisiert wird, nachdem die Klassencodes geändert wurden.

  • Aktiviert: Die LAS-Dataset-Pyramide wird aktualisiert. Dies ist die Standardeinstellung.
  • Nicht aktiviert: Die LAS-Dataset-Pyramide wird nicht aktualisiert.
Boolean

Abgeleitete Ausgabe

BeschriftungErläuterungDatentyp
Ausgabe-LAS-Dataset

Das zu ändernde LAS-Dataset.

LAS Dataset Layer

arcpy.ddd.ClassifyLasOverlap(in_las_dataset, sample_distance, {extent}, {process_entire_files}, {compute_stats}, {update_pyramid})
NameErläuterungDatentyp
in_las_dataset

Das zu verarbeitende gekachelte LAS-Dataset.

LAS Dataset Layer
sample_distance

Der Abstand einer Dimension der quadratischen Fläche, die zum Auswerten der LAS-Daten verwendet wird. Dieser Wert kann als Zahl und Wert der linearen Einheit wie "3 Meter" ausgedrückt werden. Wenn keine linearen Einheiten angegeben oder als Unknown eingegeben wurden, wird die Einheit durch den Raumbezug der Eingabe-.las-Datei definiert.

Linear Unit
extent
(optional)

Die Ausdehnung der Daten, die von diesem Werkzeug ausgewertet werden.

  • MAXOF: Die maximale Ausdehnung aller Eingaben wird verwendet.
  • MINOF: Die kleinste gemeinsame Fläche aller Eingaben wird verwendet.
  • DISPLAY: Die Ausdehnung entspricht der sichtbaren Anzeige.
  • Layer-Name: Die Ausdehnung des angegebenen Layers wird verwendet.
  • Extent-Objekt: Die Ausdehnung des angegebenen Objekts wird verwendet.
  • Durch Leerzeichen getrennte Koordinatenzeichenfolge: Die Ausdehnung der angegebenen Zeichenfolge wird verwendet. Die Koordinaten werden in der Reihenfolge X-Min, Y-Min, X-Max, Y-Max ausgedrückt.
Extent
process_entire_files
(optional)

Legt fest, wie die Verarbeitungsausdehnung angewendet werden soll.

  • PROCESS_EXTENTEs werden nur LAS-Punkte verarbeitet, die den Interessenbereich schneiden. Dies ist die Standardeinstellung.
  • PROCESS_ENTIRE_FILESWenn ein Teil einer .las-Datei den Interessenbereich schneidet, werden alle Punkte in dieser .las-Datei verarbeitet, einschließlich derer außerhalb des Interessenbereichs.
Boolean
compute_stats
(optional)

Gibt an, ob für die vom .las-Dataset referenzierten LAS-Dateien Statistiken berechnet werden. 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. Dies ist die Standardeinstellung.
  • NO_COMPUTE_STATSEs werden keine Statistiken berechnet.
Boolean
update_pyramid
(optional)

Gibt an, ob die LAS-Dataset-Pyramide aktualisiert wird, nachdem die Klassencodes geändert wurden.

  • UPDATE_PYRAMIDDie LAS-Dataset-Pyramide wird aktualisiert. Dies ist die Standardeinstellung.
  • NO_UPDATE_PYRAMIDDie LAS-Dataset-Pyramide wird nicht aktualisiert.
Boolean

Abgeleitete Ausgabe

NameErläuterungDatentyp
out_las_dataset

Das zu ändernde LAS-Dataset.

LAS Dataset Layer

Codebeispiel

ClassifyLasOverlap – Beispiel 1 (Python-Fenster)

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

arcpy.env.workspace = 'C:/data'

arcpy.ddd.ClassifyLasOverlap('Denver_2.lasd', '1 Meter')
ClassifyLasOverlap – Beispiel 2 (eigenständiges Skript)

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

'''****************************************************************************
       Name: Classify Lidar & Extract Building Footprints
Description: Extract footprint from lidar points classified as buildings, 
             regularize its geometry, and calculate the building height.

****************************************************************************'''
import arcpy

lasd = arcpy.GetParameterAsText(0)
dem = arcpy.GetParameterAsText(1)
footprint = arcpy.GetParameterAsText(2)

try:
    desc = arcpy.Describe(lasd)
    if desc.spatialReference.linearUnitName in ['Foot_US', 'Foot']:
        unit = 'Feet'
    else:
        unit = 'Meters'
    ptSpacing = desc.pointSpacing * 2.25
    sampling = '{0} {1}'.format(ptSpacing, unit)
    # Classify overlap points
    arcpy.ddd.ClassifyLASOverlap(lasd, sampling)
    # Classify ground points
    arcpy.ddd.ClassifyLasGround(lasd)
    # Filter for ground points
    arcpy.management.MakeLasDatasetLayer(lasd, 'ground', class_code=[2])
    # Generate DEM
    arcpy.conversion.LasDatasetToRaster('ground', dem, 'ELEVATION', 
                                        'BINNING NEAREST NATURAL_NEIGHBOR', 
                                        sampling_type='CELLSIZE', 
                                        sampling_value=desc.pointSpacing)
    # Classify noise points
    arcpy.ddd.ClassifyLasNoise(lasd, method='ISOLATION', edit_las='CLASSIFY', 
                               withheld='WITHHELD', ground=dem, 
                               low_z='-2 feet', high_z='300 feet', 
                               max_neighbors=ptSpacing, step_width=ptSpacing, 
                               step_height='10 feet')
    # Classify buildings
    arcpy.ddd.ClassifyLasBuilding(lasd, '7.5 feet', '80 Square Feet')
    #Classify vegetation
    arcpy.ddd.ClassifyLasByHeight(lasd, 'GROUND', [8, 20, 55], 
                                  compute_stats='COMPUTE_STATS')
    # Filter LAS dataset for building points
    lasd_layer = 'building points'
    arcpy.management.MakeLasDatasetLayer(lasd, lasd_layer, class_code=[6])
    # Export raster from lidar using only building points
    temp_raster = 'in_memory/bldg_raster'
    arcpy.management.LasPointStatsAsRaster(lasd_layer, temp_raster,
                                           'PREDOMINANT_CLASS', 'CELLSIZE', 2.5)
    # Convert building raster to polygon
    temp_footprint = 'in_memory/footprint'
    arcpy.conversion.RasterToPolygon(temp_raster, temp_footprint)
    # Regularize building footprints
    arcpy.ddd.RegularizeBuildingFootprint(temp_footprint, footprint, 
                                          method='RIGHT_ANGLES')

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

Umgebungen

Sonderfälle

Lizenzinformationen

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

Verwandte Themen