Integracja danych z różnych źródeł: Analiza zmian pokrycia terenu

Author

Anna Dmowska

1 Cel ćwiczenia

Celem ćwiczenia jest przeanalizowanie zmian w pokryciu terenu między dwoma latami.

2 Zadanie

  • Przeanalizuj zmiany w pokryciu terenu między latami 1990 a 2018.

    • Jaką powierzchnię zajmowały obszary dla których nie zmieniło się pokrycie/użytkowanie terenu?
    • Jaką procent powierzchni zajmowały obszary dla których zmieniło się pokrycie/użytkowanie terenu?
    • Jaki typ zmian zajmował największą powierzchnię?
  • Ile osób zamieszkuje obszar w granicach powiatu poznańskiego oraz miasta Poznań, który zmienił typ pokrycia terenu z gruntów ornych na obszary zurbanizowane?

2.1 Raport końcowy

Wyniki rozwiązania zadania proszę przedstawić w formie pisemego raportu zawierającego:

  • dane
  • etapy analizy wraz ze schematem graficznym rozwiązania zadania.
  • rozwiązanie zadania wraz z wynikowymi mapami oraz odpowiedziami na podstawione w zadaniu pytania.
  • opis wyników.

Raport ma także zawierać

  1. kompozycję mapy składającą się z:
  • map wejściowych (clc1990_rcl, clc2018_rcl),
  • map wynikowych (mapa zmian pokrycia terenu między 1990-2018).
  1. kompozycję mapy składająca się z mapy rozmieszczenia ludności dla powiatu poznańskiego oraz powiatu Poznań wraz z nałożonymi w formie wektorowej granicami obszarów pokazujące kategorie zmian pokrycia terenu.

3 Dane

  • clc1990.tif, clc2018.tif - dane o pokryciu terenu o rozdzielczości 100m, EPSG: 3035.

    • Dane CLC posiadają 45 klas odpowiadających klasyfikacji na poziomie 3. Każdej komórce przypisano wartość od 1 do 44 (oraz 48 dla kodu braku danych), zamiast oryginalnych kodów używanych w klasyfikacji CLC na poziomie 3. Po wczytaniu stylizacji dla warstwy clc1990 oraz clc2018 z pliku clc_legend_qgis_raster.qml będzie można uzyskać informację dotyczącą oryginalnych kodów CLC.
  • world_pop.tif - dane rastrowe o rozmieszczeniu ludności pochodzące z projektu World Pop https://www.worldpop.org/; WGS 84 (EPSG:4326), rozdzielczość: 3 sekundy kątowe (co odpowiada 100m na równiku).

4 Kryteria i etapy analizy

Kryterium Dane Narzędzia

Przed przystąpieniem do rozwiązania zadania w QGIS proszę wypisać etapy analizy oraz narysować graficzny schemat rozwiązania zadania.

5 Przygotowanie danych rastrowych

W ćwiczeniu zostaną wykorzystane 3 warstwy rastrowe:

  • clc1990.tif
  • clc2018.tif
  • pop2020.tif

Wszystkie te warstwy trzeba sprowadzić do tej samej rozdzielczości (100m), zasięgu (zasięg warstw clc) oraz układu odniesienia (EPSG:3035).

Zmiana układu odniesienia warstwy pop2020

  • Raster - Projection - Warp (reproject)

    • Input layer: pop2020
    • Source CRS: EPSG: 4326
    • Target CRS: EPSG:3035
    • Resampling method to use: Bilinear
    • Output file resolution in target georeferenced units: 100
    • Output data type: Use Input Layer Data Type
    • Georeferenced extents of output file to be created: Calculate from layer - clc1990
    • CRS of the target raster extent: EPSG:3035
    • Reprojected: pop2020_3035_clc.tif

Zapoznaj się z informacjami o warstwie clc1990 oraz pop2020_3035_clc. Czy obie warstwy mają ten sam zasięg, rozmiar oraz rozdzielczość?

Wyświetl warstwy clc1990 oraz pop2020_3035_clc. Sprawdź czy komórki na obu warstwach pokrywają się?

6 Zmiany pokrycia terenu

6.1 Reklasyfikacja danych CLC

Dane CLC (clc1990 oraz clc2018) zawierają kody na poziomie klasyfikacji na poziomie 3. Na potrzeby analizy należy przeklasyfikować obie warstwy używając poziomu 1 na 5 klas:

  • obszary zurbanizowane (1)
  • obszary rolnicze (2)
  • obszary leśne (3)
  • obszary bagienne (4)
  • wody (5)

Tabela reklasyfikacyjna

Min Max Nowa wartość
1 11 1
12 22 2
23 34 3
35 39 4
40 44 5

Reklasyfikacja w QGIS

  • Processing Toolbox - Raster analysis - Reclassify by table

  • Range boundaries: min <= value <= max

  • Output type: Byte

Proszę wykonać reklasyfikację warstw clc1990 oraz clc2018 oraz zapisać je odpowiednio jako clc1990_rcl oraz clc2018_rcl

7 Analiza zmian.

Dla każdej komórki możemy przypisać kategorię odpowiadającą kategorii w roku 1990 oraz kategorii w roku 2018:

  • Warstwie z roku 1990 nadajemy klasy 10,20,30,40,50.
  • Warstwie z roku 2018 nadajemy klasy 1,2,3,4,5.
  • Następnie obie zreklasyfikowane warstwy dodajemy. W wynikowej warstwie każdej klasie przypisujemy kod dwucyfrowy. Pierwsza cyfra w zakresie (1-5) odpowiada klasie w roku 1990, a druga w 2018. Np. kategoria 21 oznacza obszary, które w 1990 roku były sklasyfikowane jako obszary rolnicze (2), a w 2018 jako obszary zurbanizowane (1).

W poprzednim kroku przeklasyfikowaliśmy warstwy do 5 klas, przypisując każdej komórce wartość od 1 - 5 (warstwy clc1990_rcl oraz clc2018_rcl). Używając kalkulatora rastrów możemy otrzymać warstwę wynikową poprzez podanie wyrażenia:

(“clc1990_rcl@1” * 10) + “clc2018_rcl@1”

Warstwę wynikową proszę zapisać jako clc1990_2018_raster_calc

8 Powierzchnia poszczególnych klas

  • Processing Toolbox - Raster analysis - Raster layer unique value reports

W wyniku tej operacji otrzymamy tabelę zawierającą informacje dla poszczególnych kategorii warstwy rastrowej:

  • value - wartość przypisana do każdej komórki, oznaczająca kategorię
  • count - liczba komórek w danej kategorii.
  • m2 - powierzchnia danej kategorii w \(m^2\) (wynikowa warstwa jest w układzie EPSG:3035 dla którego jednostką są metry).

Aby obliczyć powierzchnię w \(km2\) należy użyć kalkulatora pól dostępnego z poziomu tabeli atrybutów. Nowe pole w tabeli change_table należy nazwać km2 (typ zmiennoprzecinkowy), a jako wyrażenie podać: m2 / 10\^6 co pozwoli przeliczyć wartości z \(m^2\) na \(km^2\).

Posortuj wartości w tabeli change_table wg pola km2. Jaki typ zmian zajmował największą powierzchnię?

  • Jaką powierzchnię zajmowały obszary dla których nie zmieniło się pokrycie/użytkowanie terenu?

    • W tabeli atrybutów change_table zaznaczyć kategorie oznaczające brak zmiany (11, 22, 33, 44, 55)
    • Obliczyć staststyki podstawowe dla pola km2 tylko dla zaznaczonych obiektów. Suma oznacza sumaryczną powierzchnię tych kategorii. (Vector - Analysis Tools - Basic statistics for field)
    • Odpowiedź: 7887.16 \(km^2\)

  • Jaką procent powierzchni zajmowały obszary dla których zmieniło się pokrycie/użytkowanie terenu?

    • W tabeli atrybtów change_table można odwrócić selekcję (ikona invert selection), a następnie używając narzędzia Vector - Analysis Tools - Basic statistics for field dla zaznaczonych obiektów obliczyć powierzchnię obszarów, które zmieniły swoją kategorię.
    • Powierzchnia tych obszarów wynosi: 442.769 \(km^2\).
    • Z poprzedniego podpunktu znamy powierzchnię obszarów, które nie zmieniły swojej kategorii, zatem możemy obliczyć procent używając kalkulatora (poza QGIS): (442.769/(7887.16 + 442.769))*100 = 5.3.
    • Odpowiedź: Obszary które zmieniły typ pokrycia terenu między 1990 a 2018 stanowią 5.3% powierzchni analizowanego obszaru.
  • Zapisywanie tabeli atrybutów w formacie MS Excel.

    • Tabelę atrybutów change_table można zapisać do pliku Excela. W tym celu należy kliknąć prawym klawiszem myszy na nazwę warstwy oraz wybrać Export - Save Feautures As (tak samo jak przy zapisie warstwy wektorowej). Otworzy się okno zapisu warstwy wektorowej, w którym jako format pliku trzeba wybrać MS Office Open XML Spreadsheet.
  • Następnie wszelkie podsumowania można wykonac w MS Excel.

9 Analiza zmian - zespół/crosstabulacja

  • Funkcja ta na podstawie dwóch lub większej liczby map rastrowych tworzy nowy raster, w którym każdej komórce przypisany jest niepowtarzalny identyfikator odpowiadający unikalnym kombinacjom wartości rastrów wejściowych.

  • Processing Toolbox w QGIS dostarcza wielu dodatkowych narzędzi do analizy danych geoprzestrzennych, w tym funkcje dostępne w innych bibliotekach (GDAL) oraz programach GIS (np. GRASS). Dostęp do tych funkcji w znacznym stopniu rozszerza możliwości wykorzystania oprogramowania QGIS.

  • Funkcja corsstabulacji jest dostępna w QGIS jako jeden z modułów programu GRASS.

    • Processing Toolbox - GRASS - Raster (r.*) - r.cross
  • Zastosowanie funkcji r.cross

    • Input layers: clc1990_rcl, clc2018_rcl
    • Cross product: clc1990_2018_cross
  • Powierzchnia poszczególnych klas: Processing Toolbox - Raster analysis - Raster layer unique value reports

    • Zwróć uwagę, że mapa wynikowa składa się z 25 klas oznaczonych od 0 do 24. Nie wiemy jednak jakim typom zmian odpowiada dana klasa.
  • Powierzchnia poszczególnych klas: r.report

    • Do obliczenia powierzchni poszczególnych klas zastosujemy narzędzie r.report z programu GRASS (Processing Toolbox - GRASS - Raster (r.*) - r.report)

      • Rasters layers to report on: clc1990_2018_cross
      • Units: k
      • Name for output file to hold a report: clc1990_2018_report.txt

- Zwróć uwagę, że narzędzie `r.report` zwraca także informację o kategoriach danych wejściowych użytych przez narzędzie `r.cross` 

10 Wykorzystanie warstwy pop2020.

Zadanie: Ile osób zamieszkuje obszar w granicach powiatu poznańskiego oraz miasta Poznań, który zmienił typ pokrycia terenu z gruntów ornych na obszary zurbanizowane?

10.1 Etapy rozwiązania zadania

  • Przygotowanie danych wektorowych

    • Używając wtyczki Wtyczka GIS Support pobrać dane dla powiatu Poznańskiego. Następnie używając narzędzia Processing Toolbox - Vector Geometry - Delete holes “wypełnić dziurę” jaką stanowi w poligonie miasto Poznań. Zapisać waeswę jako poznan.shp w układzie odniesienia EPSG:3035.
  • Docięcie warstwy clc1990_2018_raster_calc.tif oraz pop2020_3035_clc.tif do granic powiatu poznańskiego oraz miasta Poznań (warstwa poznan.shp). Zapisać docięte warstwy jako clc1990_2018_poznan.tif oraz pop2020_poznan.tif

    • Aby dociąć obie warstwy można zastosować opcję obliczeń wsadowych (Run as batch process).

  • Obliczenie liczby ludności w klasach warstwy clc1990_2018_poznan.tif

    • Zastosowane zostanie narzędzie Raster layer zonal statistics, które służy do obliczania statystyk stref w przypadku gdy strefy są wyznaczone za pomocą danych rastrowych, a nie poligonów warstwy wektorowej
    • Processing Toolbox - Raster analysis - Raster layer zonal statistics

  • Wynikiem będzie tabela atrybutów:

    • zone - strefa wyznaczona przez kategorie warstwy clc1990_2018_poznan.
    • sum, min, max, mean - statystyki obliczone na podstawie warstwy pop2020_poznan w kategoriach warstwy clc1990_2018_poznan; sum to liczba ludności zamieszkująca daną strefę
    • count - liczba komórek w danej strefie.

Odpowiedź: Obszar w granicach powiatu poznańskiego oraz miasta Poznań, który zmienił typ pokrycia terenu z gruntów ornych na obszary zurbanizowane zamieszkiwany jest przez 90820 osób.

Oblicz jaki procent ludności zamieszkującej cały analizowany obszar (wg danych z warstwy pop2020_poznan) stanowią osoby zamieszkałe w obszarach, które zmieniły typ pokrycia terenu z obszarów rolniczych na obszary zurbanizowane?