Bestimmen von Bare-Earth-DEM aus nicht klassifizierten LAS-Dateien?


10

Ich habe Daten im LAS-Format mit RGB-Werten, die aus der Luftbildfotogrammetrie mit einem UAV erstellt wurden. Ich versuche eine Lösung zu finden, um das nackte Erd-DEM aus der Punktwolke zu extrahieren.

Ich habe SAGA, Fusion, MCC-LIDAR ausprobiert, aber es scheint, dass die LAS-Datei bereits klassifiziert sein muss (was natürlich nicht der Fall ist). Kann mich jemand mit einer kurzen Erklärung des Prozesses in die richtige Richtung weisen?

Im Allgemeinen müsste ich ungefähr 100 Mühlenpunkte gleichzeitig verarbeiten (kann sie bei Bedarf kacheln).


MCC oder Fusion erfordern nicht, dass Ihre Punkte klassifiziert werden. Der MCC-Programmcode füllt jedoch das Klassifizierungsfeld aus. Was hat Sie zu der Annahme gebracht, dass dies der Fall ist? Möglicherweise liegt ein Versionsproblem mit Ihrer las-Datei vor, das Sie jetzt identifizieren können.
Jeffrey Evans

Antworten:


16

Generieren von LiDAR-DEMs aus nicht klassifizierten Punktwolken mit:

MCC-LIDAR ist ein Befehlszeilenprogramm zur Verarbeitung von LIDAR-Daten mit diskreter Rückgabe in bewaldeten Umgebungen (Evans & Hudak, 2007).

Arbeitsablauf:

  • a) nicht klassifizierte Punktwolke.
  • b) Bodenrenditen klassifiziert.
  • c) Bare-Earth-DEM (Raster).

Geben Sie hier die Bildbeschreibung ein


Erstellen wir eine hypothetische Situation, um ein weiteres Beispiel mit Code bereitzustellen.

MCC-LIDAR ist installiert in:

C:\MCC

Die nicht klassifizierte LiDAR-Punktwolke (.las-Datei) befindet sich in:

C:\lidar\project\unclassified.las  

Die Ausgabe, die das Bare-Earth-DEM sein wird, ist in:

C:\lidar\project\dem.asc  

Das folgende Beispiel klassifiziert Bodenrückläufe mit dem MCC-Algorithmus und erstellt ein Bare-Earth-DEM mit einer Auflösung von 1 Meter.

#MCC syntax: 
#command
#-s (spacing for scale domain)
#-t (curvature threshold)
#input_file (unclassified point cloud) 
#output_file (classified point cloud - ground -> class 2 and not ground -> class 1)
#-c (cell size of ground surface)
#output_DEM (raster surface interpolated from ground points)

C:\MCC\bin\mcc-lidar.exe -s 0.5 -t 0.07 C:\lidar\project\unclassified.las C:\lidar\project\classified.las -c 1 C:\lidar\project\dem.asc

Um besser zu verstehen, wie die Parameter Skala (n) und Krümmungsschwelle (t) funktionieren, lesen Sie: Ausführen von MCC-LiDAR und; Evans und Hudak (2007).

Die Parameter müssen kalibriert werden, um Kommissions- / Kennzeichnungsfehler zu vermeiden (wenn ein Punkt als zum Boden gehörend eingestuft wird, aber tatsächlich zur Vegetation oder zu Gebäuden gehört). Zum Beispiel:

Geben Sie hier die Bildbeschreibung ein

Das MCC-LIDAR verwendet die TPS-Interpolationsmethode ( Thin Plate Spline ), um Erdungspunkte zu klassifizieren und das Bare-Earth-DEM zu generieren.


Verweise:

Weitere Optionen zu Bodenpunktklassifizierungsalgorithmen finden Sie bei Meng et al. (2010):


MCC Lidar scheint mit der Anzahl der Punkte zu kämpfen. Es heißt, nicht genügend Speicher, versuchen Sie einen größeren Pfostenabstand. Ich habe versucht, ein Abstandsraster von 5 aus einem anfänglichen Abstand von 1 m zu erstellen. Mein Speicher ist 96 GB auf einer starken Workstation, so dass dies möglicherweise nicht das Problem sein kann.
user32307

@ user32307, siehe diesen Beitrag , der das gleiche Problem meldet. Die Antwort dort könnte Ihnen helfen.
Andre Silva

8

Ich denke, dass LasTools Ihren Anforderungen entsprechen könnte, siehe LASGround . Die Lizenz ist ein bisschen lustig, je nachdem welche Tools. Die Tools können vor dem Kauf heruntergeladen und ausgewertet werden. auch das Produkt ist relativ günstig.


7

Ich hatte viel Glück mit dem GroundFilter-Befehl von FUSION (Handbuch hier ). Ich hatte kein Problem mit 40 Millionen Punkten (nicht klassifiziert), würde also kein Problem mit 100 Millionen erwarten.


2

Dies kann mit einem Filter erfolgen , der entweder SMRF- Algorithmen ( Simple Morphological Filter) oder PMF- Algorithmen (Progressive Morphological Filter) verwendet.

Schnell

pdal ground --cell_size=5 --extract input.laz out-bare-earth.laz

Erstellt eine komprimierte LAS-Datei mit nackter Erde und einer Zellengröße von 5 Bodeneinheiten unter Verwendung von PMF. ( docs )

Weitere Erläuterungen finden Sie im Lernprogramm zur Identifizierung von Bodenrenditen mithilfe der ProgressiveMorphologicalFilter-Segmentierung .

Mehr beteiligt, mit SMRF

Ein Pipeline- Beispiel, das:

  • Wendet den SMRF-Filter an, vergrößert die Größenoption cellauf 2,0 (Koordinatensystemeinheiten) und einen Schwellenwert von 0,75
  • wählt nur die neu klassifizierten Bodenpunkte aus ( 2ist der LAS-Standardwert für Boden)
  • schreibt die Auswahl in eine unkomprimierte LAS-Ausgabedatei (ändern Sie einfach die Erweiterung für komprimierte in .laz)

Befehl: pdal pipeline "classify-ground-smrf.json"

Die JSON-Parameterdatei:

{
    "pipeline": [
        "inputfile.laz",
        {
            "type":"filters.smrf",
            "cell": "2.0",
            "threshold": "0.75"
        },
        {
            "type":"filters.range",
            "limits":"Classification[2:2]"
        },
        "out/smurf_classifed.las"
    ]
}

Nur oberirdisch extrahieren

Dieses Beispiel a) klassifiziert in Boden / Nicht-Boden, b) fügt das Attribut "Höhe über dem Boden" hinzu und c) exportiert nur Punkte 2.0 (Koordinatensystemeinheiten) über dem Boden.

{
    "pipeline": [
        "input.laz",
        {
            "type": "filters.assign",
            "assignment": "Classification[:]=0"
        },
        {
            "type": "filters.smrf"
        },
        {
            "type": "filters.hag"
        },
        {
            "type": "filters.range",
            "limits": "HeightAboveGround[2:]"
        },
        {
            "filename":"above-ground.laz"
        }
    ]
}

Adaptiert von Brad Chambers, https://lists.osgeo.org/pipermail/pdal/2017-July/001367.html


Ich habe festgestellt, dass bestimmte strukturelle Objektgeometrien (z. B. Gebäude) recht gut identifiziert werden können, aber morphologische Ansätze in Waldgebieten, insbesondere mit variablen Gefällen, ziemlich schlecht funktionieren. Wenn die Lidar-Daten über ein Stadtgebiet erfasst würden, würde ich MF sicherlich empfehlen, aber andere Algorithmen sind angesichts unterschiedlicher physikalischer Einstellungen viel effektiver.
Jeffrey Evans

@ JeffreyEvans Können Sie näher erläutern, welche anderen Algorithmen in nicht städtischen Umgebungen besser sind? (und vielleicht welche Arten von nicht-städtischen, z. B. bewaldeten, bergigen, ...)
Matt Wilkie
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.