Associare i valori di un raster a poligoni: le statistiche zonali

Ciao a tutti. Per il post di oggi prendiamo ispirazione da una domanda che ci è stata fatta recentemente: come si fa ad associare i valori di un raster ad un poligono o (aggiungiamo noi) a più poligoni? La risposta è: grazie alle statistiche zonali che ci sono a disposizione nel pannello degli strumenti di processing di QGIS.

1. Associare i valori di un raster ad un poligono: come funziona

Cosa vuol dire associare i valori di un raster ad un poligono?

In un video precedente, abbiamo visto come fare a campionare un raster con un file puntuale (puoi leggere qui o guardare qui). In quel caso, era semplice assegnare un valore al punto, perché bastava considerare il pixel su cui ricadeva il punto.

Nel caso di un poligono, ma lo stesso discorso vale anche per una linea, abbiamo che l’elemento geometrico ricade su diversi pixel che hanno un diverso valore della variabile contenuta nel nostro raster. Per cui, non possiamo prendere direttamente un valore a caso, ma dobbiamo ricorrere a delle statistiche semplici, calcolate sull’area individuata dal poligono o sulla linea cui siamo interessati.

Le statistiche calcolate su un insieme di pixel individuati tramite una maschera lineare o poligonale vengono chiamate zonal statistics o statistiche zonali. Le zonal statistics sono una delle funzioni di base appartenenti alla map algebra.

Overlay tra file puntuale e poligonale e file raster: differenza tra campionamento e statistiche zonali
Overlay tra file puntuale e poligonale e file raster: differenza tra campionamento e statistiche zonali

2. Associare i valori di un raster ad un poligono con le zonal statistics

Vediamo, quindi, come fare, in pratica, ad associare i valori di un raster ad un poligono tramite le zonal statistics o statistiche zonali.

Per il tutorial di oggi usiamo un raster delle pendenze espresse in percentuale ed uno shapefile poligonale.

Per eseguire le zonal statistics andiamo nel pannello degli strumenti di processing, poi nel gruppo di strumenti Analisi raster (1) ed infine apriamo la tool Statistiche Zonali (2).

Settiamo i parametri della tool:

  • In layer in ingresso inseriamo lo shapefile contenente il poligono, i poligoni, la linea o le linee a cui vuoi associare le statistiche del raster delle pendenze (3).
  • In layer raster inseriamo invece il raster da cui estrarre le statistiche (4). Poco più sotto, in banda raster, poiché la sloper è un raster monobanda, QGIS ti darà una sola opzione da selezionare.
  • Prefisso colonna in uscita (5): con la tool Statistiche zonali,QGIS crea un nuovo shapefile, contenente lo stesso poligono di partenza e la sua stessa tabella degli attributi. In più alla tabella degli attributi sarà associata una o più colonne. contenenti le statistiche cui siamo interessati. Pertanto QGIS ci chiede qual è il prefisso che vogliamo dare alle colonne che ci aggiungerà. Noi preferiamo un’unica lettera, in questo caso la S di slope, in modo da richiamare il raster da cui le statistiche sono state calcolate, ma senza avere un prefisso troppo lungo.
  • Statistiche da calcolare. Cliccando sul pulsante con i tre puntini (6) è possibile scegliere quali sono le statistiche che è più opportuno calcolare per il nostro poligono. Noi scegliamo la media, il minimo e la deviazione standard. Voi potete scegliere di calcolarle anche tutte. Non dimenticare di cliccare su OK dopo aver selezionato le statistiche, altrimenti QGIS non ricorderà la tua scelta.
  • Infine in Statistiche Zonali (7), cliccando sul pulsante a destra con i tre puntini, diciamo a QGIS dove e come chiamare il nuovo file che creerà. Noi lo abbiamo chiamato poligoniStat.
Impostazione parametri delle Statistiche Zonali
Impostazione parametri delle Statistiche Zonali

Clicchiamo su Esegui e andiamo a guardare la tabella degli attributi del nuovo layer che QGIS ha creato per noi.

Ovviamente la tabella contiene un solo record perché anche lo shapefile di partenza conteneva un solo elemento.

Oltre al campo id, che QGIS si è portato dietro dal poligono originale, vediamo che nella tabella ci sono anche tre campi con le tre statistiche zonali desiderate. Più precisamente i campi:

  • Smean, contenente la media dei pixel sottesi dal nostro poligono;
  • Sstdev, contenente la deviazione standard di tutti i pixel che coprono il poligono da noi usato;
  • Smin e cioè il campo con il valore minimo tra tutti i valori dei pixel che intersecano il poligono.
Statistiche derivate all’interno di un poligono con la tool Statistiche zonali
Statistiche derivate all’interno di un poligono con la tool Statistiche zonali

Tips & tricks

La tool Statistiche zonali funziona anche se nello shapefile da usare come maschera sono presenti più poligoni. In questo caso, è importante che ci sia un identificativo univoco per ciascun poligono (ad esempio, nel campo id un numero crescente (puoi imparare come creare un campo identificativo autoincrementale leggendo questo post o guardando questo video), soprattutto se poi vuoi lavorare con questa tabella all’esterno di QGIS ed essere sempre in grado di collegare ciascuna riga con il poligono corrispondente.

Statistiche zonali di un layer contenente più poligoni
Statistiche zonali di un layer contenente più poligoni

Bene, questo post è finito. Se ti è piaciuto condividilo! Hai dubbi o suggerimenti? Lascia pure un commento.

Puoi vedere anche il nostro video su YouTube “Associare i valori di un raster a dei poligoni: le statistiche zonali” e iscriverti al nostro canale.

Ciaooo

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *