Přeskočit obsah

6. Komplexní úloha zpracování geoprostorových dat v Python

Komplexní úloha kombinující knihovny Fiona, Shapely a Rasterio.

Datové zdroje

Zadání

  1. Stáhněte data ve výměnném formátu RÚIAN (VFR) nejprve manuálně (VDP) a prozkoumejte jej pomocí ogrinfo -so -al (OSGeo4W Shell)
  2. Otevřte soubor pomocí hnihovny Fiona.
  3. Vyřešte problém s více geometriemi (Fiona nepodporuje zdroje s vice geometriemi) - pomocí GDAL převeďte vybranou geometrii (OriginalniHranice) do nové datové vrstvy (tip: gdal.VectorTranslate) (viz tip)
  4. Data zpracujte pomocí Fiony: vytvořte novou datovou vrstvu, která bude obsahovat pouze parcely, pro které platí, že rozdíl výměry SGI a SPI je větší než vámi zadaná tolerance. Atributová tabulka bude obsahovat parcelní číšlo (kmenové číslo a pododdělení čísla), výměru SPI a rozdíl výměr.
  5. Zjistěte kolik parcel nad tolerancí mělo plochu měřěnu až po roce 2020?
  6. Vyřešte automatizované stahování VFR z URL adresy url = 'https://vdp.cuzk.cz/vymenny_format/soucasna/{datum}_OB_{obec}_UKSH.xml.zip'

Tip

from osgeo import gdal
parcely_poly = "/tmp/parcely.gml"
gdal.VectorTranslate(parcely_poly, filename, format="GML",
                     SQLStatement="select OriginalniHranice,* from parcely")

Pokračování

  1. Stáhněte DMR5G Geoportál pro vámi zvolené území odpovídající první části zadání
  2. Vytvořte DMR v rastrové reprezentaci pomocí PDAL
  3. Pro každou parcelu (z první části) vypočítejte rozdíl vodorovné a skloněné plochy. Vypište celkový počet parcel a počet s lišící se plochou.

Ukázka řešení zde.

Tip

Více o knihovně PDAL v předmětu FGIS.