Ich habe "schmutzige" LiDAR-Daten, die erste und letzte Rückgaben sowie unvermeidlich Fehler unter und über der Oberfläche enthalten. (Bildschirmfoto)
Ich habe SAGA, QGIS, ESRI und FME zur Hand, aber keine echte Methode. Was wäre ein guter Workflow, um diese Daten zu bereinigen? Gibt es eine vollautomatische Methode oder würde ich sie irgendwie manuell löschen?
Antworten:
Sie scheinen Ausreißer zu haben:
Für 'i' besteht die Option darin, einen Bodenfilteralgorithmus zu verwenden, der 'negative Fehler' berücksichtigen kann, um eine saubere LiDAR-Bodenpunktwolke zu erhalten. Siehe den MCC-Algorithmus (Multiscale Curvature Classification) von Evans und Hudak (2007). Es wird auf Seite 4 gesagt:
Unten finden Sie einen Beitrag mit einem Beispiel zur Verwendung von MCC-LIDAR:
Sobald Sie eine genaue LiDAR-Bodenpunktwolke haben, um ein genaues DEM zu erstellen, können Sie die Punktwolke normalisieren und Punkte ausschließen, die sich unter der DEM-Oberfläche befinden (solche mit negativen Werten). Mit dem gleichen Ansatz ist es auch möglich, die Punktnummer 'iii' zu adressieren, um Punkte über einem festen Schwellenwert zu entfernen. Siehe zum Beispiel:
Dann lässt er uns mit ‚II‘, das von adressiert AlecZ Antwort zu empfehlen
lasnoise
von LAStools. Es wird auch 'iii' und möglicherweise auch einen Teil von 'i' verarbeiten (LAStools erfordert jedoch eine Lizenz). Andere Tools, die speziell zum Überprüfen / Entfernen von Ausreißern entwickelt wurden, wurden hier zitiert: PDALsfilters.outlier
Tool in Charlie Parrs Antwort, das eine detaillierte Erklärung der Funktionsweise des Tools enthält, und mit dem Vorteil, dass PDAL eine freie Software ist.Was vom automatisierten Prozess übrig bleibt (falls vorhanden), kann dann manuell entfernt werden. Zum Beispiel:
Evans, Jeffrey S.; Hudak, Andrew T. 2007. Ein Multiskalen-Krümmungsalgorithmus zur Klassifizierung von LiDAR mit diskreter Rückgabe in bewaldeten Umgebungen . IEEE-Transaktionen zu Geowissenschaften und Fernerkundung. 45 (4): 1029 & ndash; 1038.
quelle
Ich empfehle PDAL die Punktdaten-Abstratationsbibliothek. Ich hatte gute Erfolge mit PDAL für ein ähnliches Filterproblem. Ich mag PDAL, weil es Open Source ist, Python-Unterstützung bietet und es mir einfach macht, die Verarbeitung zu reproduzieren und meine Filterparameter zu verfolgen. Ich mag es auch, weil es 'Pipelines' hat, in denen Sie mehrere Schritte verketten können (z. B. zuschneiden, filtern, dann exportieren) und sie gleichzeitig ausführen können. Beachten Sie, dass PDAL bei sehr, sehr großen Punktwolken möglicherweise nicht so schnell ist wie einige andere Lösungen (LASTools, QTM usw.).
Sie können das Problem der abgelegenen Punkte mit einer PDAL-Pipeline beheben, die der folgenden ähnelt:
Diese Pipeline liest einen LAS ein, schneidet ihn bis zu einem bestimmten UTM-Umfang zu, führt dann einen Filter aus, der alle abgelegenen Punkte kennzeichnet, führt dann einen zweiten Filter aus, der nur nicht abgelegene Punkte beibehält (dh das Klassifizierungsflag! = 7), und exportiert dann nach ein GeoTIFF mit einer Auflösung von 1 m. Der statistische Filter führt eine Berechnung der mittleren Entfernung zum nächsten Nachbarn durch, um zu testen, ob ein Punkt "zu weit" von seinen Nachbarn entfernt ist und daher ein Ausreißer.
Aus der Dokumentation :
quelle
Da OP die Lösungen nicht auf Open Source beschränkte, würde ich Quick Terrain Modeler ( QT Modeler ) vorschlagen . Es ist eine Lizenz erforderlich. Laden Sie die Punktwolke in QT, und kippen Sie sie im Wesentlichen, um die gewünschte Profilansicht zu erhalten. Binden Sie den zu entfernenden Cluster mit einem Gummiband ab und klicken Sie einfach auf Löschen.
quelle
Ich hatte Glück, einfach eine Fokusvarianz für ein interpoliertes Raster zu verwenden. Anschließend weisen Sie Ihren Punkten die Varianzwerte zu und verwenden einen Schwellenwert, um lokal hohe Varianzen zu entfernen, die große Abweichungen von der lokalen Kernelschätzung darstellen.
Sie müssen sicherstellen, dass die Auflösung der interpolierten Oberfläche klein genug ist, um lokale Abweichungen auf Punktniveau zu erfassen. Die Größe des Kernels wirkt sich ebenfalls aus, aber für einzelne Ausreißer sollte ein 3x3-Fenster ausreichen. Möglicherweise verlieren Sie ein paar zusätzliche Punkte, aber mit Lidar haben Sie genügend Daten zur Verfügung.
quelle
Lastools bietet genau das, was Sie benötigen - automatisierte Skripte, mit denen alle diese Punkte für Sie entfernt werden. Hierfür fallen jedoch Lizenzkosten an. Wenn dies jedoch ein Prozess ist, den Sie schnell als reguläre Aufgabe ausführen möchten, ist die Verwendung des Lasnoise-Skripts aus dem Toolset die perfekte Option.
Wie @Andre Silva feststellte, verfügt ArcGIS über ein Las-Toolset, das Sie nach dem Ausführen des Geoverarbeitungswerkzeugs "LAS-Datensatz erstellen" verwenden können. Von dort aus können Sie diese Rauschpunkte manuell neu klassifizieren oder löschen. Der Nachteil ist, dass es sich nicht um einen so intuitiven oder effektiven Prozess handelt wie QT Modeler (vorgeschlagen von @auslander), wahrscheinlich das beste Programm zum manuellen Visualisieren / Analysieren / Bearbeiten von Las-Dateien und mit Lizenzkosten. ArcMap begrenzt die Anzahl der sichtbaren Punkte beim Bearbeiten Ihrer Punktwolke. Dies bedeutet, dass Sie wahrscheinlich Bereiche mit Rauschen vergrößern, entfernen oder neu klassifizieren und dann als Teil eines manuellen Bereinigungsprozesses durchlaufen müssen. Aber das wird den Job erledigen.
quelle
Wie Andre Silva gesagt hat, ist MCC-LIDAR eine gute Option, um die Grundpunkte zu extrahieren, aber meiner Erfahrung nach wird es schwierig sein, wenn Sie eine sehr große Punktwolke haben (500 Millionen Punkte oder noch weniger). Mit anderen Worten, es wird ein Fehler zurückgegeben und der Algorithmus wird nicht ausgeführt, selbst wenn Sie die Einstellungen (Skalierungs- und Krümmungsparameter) ändern. Nach meiner Erfahrung bleiben auch einige der "negativen Fehler" in den Daten erhalten.
Meine Alternative dazu ist das Umkehren der Punktwolke (die Punkte unter der Erde werden nach oben und die über der Erde nach unten gehen). Um dies zu erreichen, lade ich die Daten in R und invertiere die Höhe, führe dann MCC-LIDAR aus und invertiere die Daten erneut. Sie könnten dies wahrscheinlich in QGIS oder ArcGIS tun, aber je nach Größe Ihres Datasets kann dies eine Weile dauern.
Der PDAL-Tool Ground ist auch eine gute Option, da er mit größeren Datensätzen besser funktioniert, aber auch hier bleiben einige der Punkte unter Ground erhalten. Das Invertieren des Datensatzes hilft erneut, dieses Problem zu lösen.
Für die oberirdischen Punkte ist mein bester Ansatz eine manuelle Reinigung, und das beste Open-Source-Tool, das ich dafür gefunden habe, ist CloudCompare. Sie wählen
Segment
im Menü der oberen Leiste und können entweder die ausgewählten Punkte oder alle anderen entfernen. Ich habe zuvor LAStools (lasview
Tool) verwendet, aber die Funktionsweise der 3D-Oberfläche ist nicht so benutzerfreundlich.quelle
Ich bin ein technischer Support von GreenValley International. Das Tool zum Entfernen von Ausreißern in unserer Flaggschiff-Software LiDAR360 kann verwendet werden, um diese Fehler so weit wie möglich zu entfernen und damit die Datenqualität zu verbessern.
Der Algorithmus sucht zuerst nach den Nachbarpunkten jedes Punkts innerhalb einer benutzerdefinierten Nachbarschaft und berechnet die durchschnittliche Entfernung vom Punkt zu seinen Nachbarpunkten. Dann werden der Mittelwert und die Standardabweichung dieser durchschnittlichen Abstände für alle Punkte berechnet. Wenn die durchschnittliche Entfernung eines Punkts zu seinen Nachbarn größer als die maximale Entfernung ist (maximale Entfernung = Mittelwert + n * Standardabweichung, wobei n eine benutzerdefinierte Mehrfachzahl ist), wird er als Ausreißer betrachtet und aus dem Original entfernt Punktwolke.
quelle
Als Open Source-Option bietet 3D Forest einige nützliche Tools zum automatischen Filtern sowie manuelle Tools zum Bereinigen von Punktwolken. Möglicherweise müssen Sie verschiedene Filterparameter verwenden, um das gewünschte Ergebnis zu erzielen. Obwohl es sich an Waldpunktwolken orientiert, sind viele Tools in jeder Punktwolke nützlich.
quelle