Automated pipeline for extracting Digital Terrain Models (DTM) from airborne LiDAR data (ALS/ISOK) using PyQGIS and PDAL engine. Covers point cloud classification (CSF algorithm in CloudCompare), floating-point precision handling (Global Shift, EPSG:2180), raster interpolation, and Hillshade generation. Full engineering report included (PDF).
Pobierz pełny raport inżynieryjny w formacie PDF
Cel projektu: Przetworzenie surowej chmury punktów ze skaningu lotniczego (ALS) do postaci Numerycznego Modelu Terenu (DTM) oraz modelu cieniowanego (Hillshade) dla silnie zurbanizowanego obszaru wokół ulicy Długosza we Wrocławiu. Projekt demonstruje optymalizację procesu pod kątem zasobów sprzętowych oraz automatyzację przy użyciu języka Python.
Wykorzystane technologie: CloudCompare, QGIS, PyQGIS, PDAL, Python.
Surowe dane .laz pobrano z serwisu Geoportal (projekt ISOK). Aby uniknąć błędów precyzji zmiennoprzecinkowej podczas przetwarzania ogromnych współrzędnych, podczas importu zastosowano mechanizm Global Shift, tymczasowo przesuwając układ EPSG:2180.
Do separacji punktów gruntu od infrastruktury miejskiej (budynki, zieleń) wykorzystano algorytm Cloth Simulation Filter (CSF). Parametry fizycznej symulacji (m.in. rozdzielczość płótna: 1.0m) zostały celowo dobrane tak, aby zoptymalizować czas obliczeń i zużycie pamięci RAM.
Wyekstrahowaną chmurę gruntu zaimportowano do QGIS (weryfikując poprawność współrzędnych z podkładem satelitarnym). Zamiast ręcznej interpolacji, proces generowania rastra DTM zautomatyzowano skryptem Python, odwołującym się bezpośrednio do biblioteki PDAL.
Aby uwydatnić mikrotopografię terenu, napisano drugi skrypt generujący trójwymiarowy model cieniowany (Hillshade). Zastosowanie inżynieryjnej fuzji (tryb mieszania: Multiply) mapy hipsometrycznej z rzeźbą terenu pozwoliło na stworzenie czytelnego produktu końcowego.