Skip To Content

Gebäude aus LAS klassifizieren

Zusammenfassung

Klassifiziert Dachpunkte von Gebäuden in LIDAR-Daten

Abbildung

Klassifizierung von Dachpunkten von Gebäuden.

Verwendung

  • Für die LAS-Daten müssen Bodenpunkte klassifiziert worden sein, damit Sie Dachpunkte von Gebäuden klassifizieren können. Wenn noch keine Bodenpunkte klassifiziert wurden, können Sie das Werkzeug Boden aus LAS klassifizieren verwenden. Die Bodenpunkte müssen den Klassencodewert 2 aufweisen. Wenn Bodenpunkte über einen anderen Klassencodewert als 2 verfügen, verwenden Sie das Werkzeug LAS-Klassencodes ändern, um den Klassencode entsprechend neu zuzuweisen.

  • LAS-Punkte mit den Klassencodewerten 0, 1 und 6 werden ausgewertet, um zu bestimmen, ob sie die Eigenschaften von Gebäudedächern aufweisen. Wenn Punkte, die als Gebäude klassifiziert wurden, diese Kriterien nicht erfüllen, wird ihnen der neue Klassencodewert 1 zugewiesen, es sei denn, die Option zur Wiederverwendung vorhandener Punkte, die als Gebäude klassifiziert wurden, ist angegeben.

Syntax

ClassifyLasBuilding(in_las_dataset, {min_height}, min_area, {compute_stats}, {extent}, boundary, {process_entire_files}, point_spacing, {reuse_building}, {photogrammetric_data})
ParameterErklärungDatentyp
in_las_dataset

Das LAS-Dataset, das klassifiziert werden soll.

LAS Dataset Layer
min_height
(optional)

Die Höhe vom Boden, die den niedrigsten Punkt festlegt, von dem aus Dachpunkte identifiziert werden.

Linear Unit
min_area

Die kleinste Fläche aus koplanaren Punkten, die verwendet wird, um das Vorhandensein eines Gebäudedaches festzustellen.

Areal Unit
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)

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

Extent
boundary

Ein Polygon-Feature, das den Interessenbereich definiert, der von diesem Werkzeug verarbeitet werden soll.

Feature Layer
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
point_spacing

Der durchschnittliche Abstand von LAS-Punkten, der verwendet wird, um das Vorhandensein von Gebäudedächern festzustellen. Dieser Wert entspricht standardmäßig dem für das LAS-Dataset berechneten durchschnittlichen Abstand.

Linear Unit
reuse_building
(optional)

Gibt an, ob die vorhandenen, als Gebäude klassifizierten Punkte erneut verwendet oder ausgewertet werden.

Gibt an, ob die vorhandenen, als Gebäude klassifizierten Punkte erneut verwendet oder ausgewertet werden.

  • RECLASSIFY_BUILDINGVorhandene Punkte, die als Gebäude klassifiziert wurden, werden neu ausgewertet, um den Kriterien für die Erkennung von Ebenen zu entsprechen. Punkten, die der angegebenen Fläche und Höhe nicht entsprechen, wird der Wert 1 zugewiesen. Dies ist die Standardeinstellung.
  • REUSE_BUILDINGVorhandene Punkte, die als Gebäude klassifiziert wurden, tragen zur Erkennung von Ebenen bei. Wenn sie die angegebenen Kriterien für die Regelausführung nicht erfüllen, werden sie jedoch nicht neu klassifiziert. Verwenden Sie diese Option, wenn die vorhandene Klassifizierung wünschenswert scheint.
Boolean
photogrammetric_data
(optional)

Gibt an, ob die Punkte in der LAS-Datei aus einer photogrammetrisch abgeleiteten Punktwolke stammen.

Gibt an, ob die Punkte in der LAS-Datei aus einer photogrammetrisch abgeleiteten Punktwolke stammen.

  • NOT_PHOTOGRAMMETRIC_DATADie Punkte in der LAS-Datei stammen aus einer LIDAR-Vermessung und nicht aus einer photogrammetrischen Methode für die Erzeugung von Punktwolken. Dies ist die Standardeinstellung.
  • PHOTOGRAMMETRIC_DATADie Punkte in der LAS-Datei stammen aus einer photogrammetrischen Methode für die Erzeugung von Punktwolken.
Boolean

Abgeleitete Ausgabe

NameErklärungDatentyp
derived_las_dataset

Das LAS-Dataset, das für Gebäudedächer klassifiziert ist.

LAS-Dataset-Layer

Codebeispiel

ClassifyLasBuilding – Beispiel 1 (Python-Fenster)

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

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

arcpy.ClassifyLasBuilding_3d('Highland.lasd', minHeight='9 feet', 
                             minArea='30 Square Feet', compute_stats=True)
ClassifyLasBuilding – Beispiel 2 (eigenständiges Skript)

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

'''****************************************************************************
       Name: Tile & Classify LAS Files
Description: Creates & classifies tiled LAS files.
****************************************************************************'''
# Import system modules
import arcpy
import tempfile
import math

in_las = arcpy.GetParameterAsText(1) # The LAS files that need to be tiled
out_folder = arcpy.GetParameterAsText(2) # folder for LAS files
basename = arcpy.GetParameterAsText(3) # basename for output files
out_lasd = arcpy.GetParameterAsText(4) # output LAS dataset


try:
    # Create temp LAS dataset to reference LAS files that will be tiled
    temp_lasd = arcpy.CreateUniqueName('temp.lasd', tempfile.gettempdir())
    arcpy.management.CreateLasDataset(in_las, temp_lasd)
    arcpy.ddd.TileLas(temp_lasd, out_folder, basename, out_lasd, las_version=1.4, 
                      point_format=7, file_size=300)
    arcpy.management.Delete(temp_lasd)
    arcpy.ddd.ClassifyLasGround(out_lasd, method='AGGRESSIVE')
    arcpy.ddd.ClassifyLasBuilding(out_lasd, min_height='3 Meters', min_area='4 Meters')
    arcpy.ddd.ClassifyLasByHeight(out_lasd, height_classification=[(3, 6), (4,20), (5,70)],
                                  noise='All Noise', compute_stats='COMPUTE_STATS')

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

Lizenzinformationen

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

Verwandte Themen