Ich versuche, Lidar-Dateien (.las, .xyz) mit einem Shapefile zu schneiden oder zu filtern, das mehrere Polygone enthält.
Gibt es Open Source-Software, die diese räumliche Operation ausführen kann?
Meine .las-Dateien sind riesig und ich sollte sagen, dass ich mit DEM-Daten und -Analysen sehr neu bin, daher wäre jede Hilfe sehr willkommen.
Antworten:
Ich stimme der Antwort von @Michal Mackiewicz (über Fusion / LTK) zu, also hoffe ich, dass dieses Beispiel Ihnen dabei hilft, durchzukommen.
Dies ist der
PolyCLipData
Syntaxbefehl (siehe Handbuch auf Seite 110):Verwenden Sie einen Texteditor, um den Befehl zu schreiben, bevor Sie ihn ausführen (z. B. NotePad ++). Speichern Sie die Datei mit der Erweiterung
.bat
(Batch-Datei). Vergessen Sie nicht, die Datei zu speichern, bevor Sie sie ausführen.Angenommen, Sie haben:
schreib das Folgende:
Verwenden Sie den Schalter,
multifile
wenn die aus Polygonen generierten Las-Dateien in separaten Dateien gespeichert werden sollen. Zum Beispiel:Verwenden Sie den
shape
Schalter zusammen mitmultifile
, um mehrere OutputFiles mit Werten zu benennen, die in eine der dbf-Spalten von PolyFile eingebettet sind. Zum Beispiel, wenn Sie die Dateien mit den ID-Informationen benennen möchten (Angenommen, die ID befindet sich in der ersten Spalte des Shapefiles). Schreiben:Informationen zum Beschneiden von Las-Dateien
PolyClipData
mit mehreren Shapefiles mit einem Teil finden Sie im folgenden Beitrag:Beschneiden von LAS-Daten mit mehreren Shapefiles
Informationen zum Ausschneiden mehrerer Las-Dateien, in die sie als Datendateiparameter in eine TXT-Datei eingebettet sind, finden Sie im
PolyClipData
folgenden Beitrag:Mehrere FAS-Dateidaten mithilfe von FUSION in ein Polygon-Shapefile schneiden
Informationen zum Abschneiden mehrerer Las-Dateien mit Shapefiles mit lastools (mit der
LAStools Production
Toolbox) finden Sie im folgenden Beitrag:Ausschneiden aus einem gekachelten LAS-Dataset mit LASTools (für ArcGIS)
quelle
FUSION LiDAR Toolkit verfügt über Clipping-Funktionen (PolyClipData-Tool) und ist im Gegensatz zu LASTools uneingeschränkt verwendbar. Trotz der Tatsache, dass ein SVN-Repository auf SourceForge vorhanden ist, ist der veröffentlichte Quellcode unvollständig und sehr alt. Wenn Sie fortfahren können, ohne den Code zu kennen, und nur die kompilierte Binärdatei verwenden, sollte FUSION für diese Aufgabe in Ordnung sein.
quelle
WhiteboxTools kann eine LAS-Datei mit dem
ClipLidarToPolygon
Tool in mehrere Polygone schneiden, die in einem Shapefile enthalten sind . Mit Python-Skripten können Sie das Tool wie folgt verwenden:Wenn Sie eine grafische Benutzeroberfläche bevorzugen, können Sie auch das QGIS-basierte Plugin oder den WhiteboxTools Runner verwenden, der mit dem binären Download der Bibliothek verteilt wird ( wb_runner.py ):
quelle
Auf LiDAR-Datensätze werden üblicherweise verschiedene Filteraufgaben angewendet (Filterung nach Punktdichte, Tiefpass, Vegetationsfilterung, Glättungsaufgaben usw.). Wenn Sie nach einer räumlichen Operation (mit einem Shapefile) fragen , suchen Sie vermutlich nach einer Möglichkeit, Ihr Dataset zu beschneiden , dh Punkte auszuschließen, die außerhalb der durch ein Shapefile definierten Polygongrenzen liegen .
Im Allgemeinen ist LAStools ein leistungsstarkes Paket für die Punktdatenverarbeitung. Es handelt sich um eine Reihe von Befehlszeilentools, die jedoch auch eine einfache Benutzeroberfläche enthalten und in QGIS (und übrigens in ArcGIS) integriert sind. Sie können die Toolbox kostenlos herunterladen und auswerten. Allerdings sind nur Teile davon Open Source (LGPL 2.1-Lizenz). Die Closed-Source-Teile müssen je nach Verwendungszweck lizenziert werden. Sie müssen überprüfen, welche Bedingungen für Sie gelten.
Verwenden Sie Lasclip von LASTools (Closed Source, Lizenzierung überprüfen)
Eines der Closed-Source-Tools, Lasclip , führt genau eine Clip-by-Shapefile- Aufgabe aus:
Die Verwendung ist unkompliziert:
( Weitere Informationen zur Verwendung, weitere Beispiele und Anforderungen an Shapefiles finden Sie in der Lasclip- README- Datei. )
Verwenden Sie las2las von LASTools (Open Source; nur grundlegende Clipping-Aufgaben)
Wenn Closed-Source-Software keine Option ist: Das las2las- Tool kann auch einfache Beschneidungsaufgaben ausführen. Sie können jedoch nicht in ein Shapefile-definiertes Polygon schneiden . Sie können beispielsweise nach Rechtecken, Kreisen, Höhe, Scanwinkel, Klassifizierung oder Datenqualität schneiden. ( Anwendungsbeispiele und Details finden Sie in der README- Datei .)
Leider ist mir kein Open-Source-Tool bekannt, das der Lasclip-Funktionalität entspricht.
Verwenden Sie libLAS, um in einem selbst erstellten Skript auf LAS-Dateien zuzugreifen
LASTools basieren auf der Open-Source- Bibliothek libLAS mit BSD-Lizenz . Sie können libLAS verwenden, um auf Ihre LAS-Dateien zuzugreifen und sie mit einem benutzerdefinierten Skript zu filtern, z . B. mit Python .
Natürlich gibt es andere Möglichkeiten, wenn Sie Ihren Verarbeitungsablauf ändern (z. B. später LAS in Raster und Clip konvertieren), aber ich denke, der bequemste Weg ist, so lange wie möglich mit LAS zu arbeiten und die gesamte Filterung mit den Punktwolkendaten durchzuführen selbst.
quelle
Ich habe ein schrittweises PDAL-Tutorial geschrieben, das zeigt, wie diese Aufgabe in dieser Umgebung ausgeführt wird. Weitere Informationen finden Sie im PDAL-Clipping-Tutorial .
quelle