Wyznaczanie nagiej ziemi DEM na podstawie niesklasyfikowanego pliku LAS?


10

Mam dane w formacie LAS z wartościami RGB utworzonymi z fotogrametrii lotniczej za pomocą UAV. Usiłuję znaleźć rozwiązanie do wydobywania gołej ziemi DEM z chmury punktów.

Próbowałem SAGA, Fusion, MCC-LIDAR, ale wygląda na to, że potrzebują pliku LAS, aby był już sklasyfikowany (co oczywiście nie jest). Czy ktoś może wskazać mi właściwy kierunek z krótkim wyjaśnieniem tego procesu?

Zasadniczo musiałbym przetwarzać około 100 milionów punktów na raz (w razie potrzeby można je kafelkować).


MCC lub Fusion nie wymagają klasyfikowania punktów. Kod programu MCC wypełnia jednak pole klasyfikacji. Co skłoniło cię do przekonania, że ​​tak jest? Być może masz problem z wersją pliku las, który dobrze byłoby teraz zidentyfikować.
Jeffrey Evans

Odpowiedzi:


16

Generowanie LiDAR DEM z niesklasyfikowanych chmur punktów za pomocą:

MCC-LIDAR to narzędzie wiersza polecenia do przetwarzania danych LIDAR z dyskretnym zwrotem w środowiskach leśnych (Evans i Hudak, 2007).

Przepływ pracy:

  • a) niesklasyfikowana chmura punktów.
  • b) sklasyfikowane zwroty z ziemi.
  • c) DEM bez gołej ziemi (raster).

wprowadź opis zdjęcia tutaj


Stwórzmy hipotetyczną sytuację, aby dodatkowo podać przykład z kodem.

MCC-LIDAR jest zainstalowany w:

C:\MCC

Niesklasyfikowana chmura punktów LiDAR (plik .las) znajduje się w:

C:\lidar\project\unclassified.las  

Dane wyjściowe, które będą DEM bez gołej ziemi, znajdują się w:

C:\lidar\project\dem.asc  

W poniższym przykładzie klasyfikuje się zwroty z ziemi za pomocą algorytmu MCC i tworzy się DEM bez izolacji z rozdzielczością 1 metra.

#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

Aby lepiej zrozumieć, jak działają parametry skali i progu krzywizny (t), przeczytaj: Jak uruchomić MCC-LiDAR i; Evans and Hudak (2007).

Parametry należy skalibrować, aby uniknąć błędów prowizji / etykietowania (gdy punkt jest klasyfikowany jako należący do ziemi, ale w rzeczywistości należy do roślinności lub budynków). Na przykład:

wprowadź opis zdjęcia tutaj

MCC-LIDAR wykorzystuje metodę interpolacji cienkiego splajnu (TPS) do klasyfikacji punktów naziemnych i generowania DEM bez izolacji.


Bibliografia:

Aby uzyskać więcej opcji dotyczących algorytmów klasyfikacji punktów bazowych, patrz Meng i in. (2010):


LIDAR MCC wydaje się walczyć z liczbą punktów. Mówi o niewystarczającej pamięci, spróbuj zwiększyć odstępy między postami. Próbowałem słupków dystansowych 5 z początkowego odstępu 1m. Moja pamięć to 96 Gb na silnej stacji roboczej, więc nie może to stanowić problemu.
user32307,

@ user32307, zobacz ten post , który zgłasza ten sam problem. Odpowiedź może ci pomóc.
Andre Silva

8

Myślę, że LasTools może odpowiadać twoim potrzebom, patrz LASGround . Licencja jest trochę zabawna w zależności od narzędzi. Narzędzia można pobrać i ocenić przed zakupem; również produkt jest stosunkowo niedrogi.


7

Miałem szczęście z poleceniem GroundFilter firmy FUSION ( tutaj ). Nie miałem problemu z obsługą 40 milionów punktów (niesklasyfikowane), więc nie spodziewałbym się problemu ze 100 milionami.


2

Można to zrobić za pomocą filtru za pomocą Simple Morphological Filter (SMRF) lub Progressive Morphological Filter (PMF) .

Szybki

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

Tworzy skompresowany plik LAS z gołą ziemią o rozmiarze komórki 5 jednostek naziemnych za pomocą PMF. ( dokumenty )

Aby uzyskać więcej wyjaśnień, zapoznaj się z samouczkiem Identyfikowanie zwrotów z ziemi za pomocą segmentacji ProgressiveMorphologicalFilter .

Bardziej zaangażowani, korzystając z SMRF

Przykład potoku, który:

  • stosuje filtr SMRF, powiększa cellopcję rozmiaru do 2,0 (jednostki układu współrzędnych) i progu 0,75
  • wybiera tylko nowo sklasyfikowane punkty naziemne ( 2jest to standardowa wartość LAS dla podłoża)
  • zapisuje selekcję do nieskompresowanego pliku wyjściowego LAS (wystarczy zmienić rozszerzenie na .laz dla skompresowanego)

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

Plik parametrów JSON:

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

Wyciąg tylko nad ziemią

W tym przykładzie a) klasyfikuje się do ziemi / bez ziemi, b) dodaje atrybut „Wysokość nad ziemią”, c) eksportuje tylko punkty 2.0 (jednostki układu współrzędnych) nad ziemią.

{
    "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"
        }
    ]
}

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


Odkryłem, że pewne geometrie obiektów strukturalnych (np. Budynki) są dość dobrze zidentyfikowane, ale podejścia morfologiczne działają dość słabo na obszarach leśnych, szczególnie o zmiennych nachyleniach. Gdyby dane lidarowe zostały pozyskane na obszarach miejskich, z pewnością poleciłbym MF, ale inne algorytmy są znacznie bardziej skuteczne, biorąc pod uwagę różne ustawienia fizyczne.
Jeffrey Evans

@JeffreyEvans czy możesz opracować inne algorytmy, które okazały się lepsze w warunkach pozamiejskich? (i być może jakie rodzaje pozamiejskie, np. zalesione, górzyste, ...)
matt wilkie
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.