17.15. Tagliare e unire raster

Nota

In questa lezione vedremo un altro esempio di preparazione di dati spaziali, per continuare a utilizzare geoalgoritmi in scenari reali.

Per questa lezione, andremo a calcolare un raster delle pendenze per una zona intorno a un’area cittadina, che è fornita in un vettore costituito da un singolo poligono. Il DEM di base è diviso in due raster che, insieme, coprono un’area molto più estesa di quella attorno alla città con cui vogliamo lavorare. Se apri il progetto corrispondente a questa lezione, vedrai qualcosa del genere.

../../../_images/medfordarea.png

Questi raster hanno due problemi:

  • Coprono un’area che troppo estesa per i nostri scopi (ci interessa solo una zona più piccola intorno al centro cittadino)

  • Si trovano in due file diversi (i confini cittadini si trovano all’interno di un solo raster, ma, come si è già detto, vogliamo avere dello spazio aggiuntivo attorno ad esso).

Entrambi i problemi sono facilmente risolvibili con i geoalgoritmi appropriati.

Innanzitutto, creiamo un rettangolo che definisca l’area di cui abbiamo bisogno. Per fare ciò, creiamo un vettore contenente il perimetro di delimitazione del vettore con i confini dell’area cittadina, e in seguito eseguiamo un buffer su di esso, in modo da avere un raster che si estenda un po” oltre lo spazio minimo necessario.

Per il calcolare il perimetro di delimitazione, possiamo usare l’algoritmo Poligono dall’estensione del layer

../../../_images/bbox.png

Per eseguire il buffer, usiamo l’algoritmo Buffer a distanza fissa, con i seguenti parametri.

../../../_images/buffer_dialog.png

Avvertimento

La sintassi è cambiata nelle ultime versioni; imposta .25 sia per Distanza che per Vertice dell’arco.

Ecco il perimetro di delimitazione risultante ottenuto utilizzando i parametri sopra mostrati.

../../../_images/buffer1.png

Si tratta di un riquadro arrotondato, ma possiamo ottenere facilmente il riquadro equivalente con angoli retti eseguendo l’algoritmo Poligono dall’estensione del layer su di esso. Avremmo potuto eseguire prima il buffer sui confini della città, e dopo calcolare il rettangolo dell’estensione, risparmiando un passaggio.

../../../_images/buffer_squared.png

Noterai che i raster hanno una proiezione differente rispetto al vettore. Dovremmo pertanto riproiettarli prima di procedere oltre, utilizzando lo strumento Riproiezione.

../../../_images/warp.png

Nota

Le ultime versioni hanno un’interfaccia più complessa. Assicurati che sia selezionato almeno un metodo di compressione.

Con questo vettore che contiene il perimetro di delimitazione del raster che vogliamo ottenere, possiamo tagliare entrambi i raster, utilizzando l’algoritmo Taglia raster con poligono.

../../../_images/clip1.png

Una che i raster sono stati tagliati, possono essere uniti utilizzando l’algoritmo GDAL Unione.

../../../_images/merge.png

Nota

Puoi risparmiare del tempo prima unendo e poi tagliando, evitando di richiamare due volte l’algoritmo di ritaglio. Comunque, se ci sono diversi raster da unire ed essi hanno una dimensione piuttosto elevata, otterrai un raster esteso che sarà successivamente difficile da procesare. In tal caso, potrebbe essere necessario lanciare l’algoritmo di ritaglio diverse volte, il che potrebbe essere dispendioso in termini di tempo, ma non preoccuparti, presto vedremo che esistono strumenti aggiuntivi per automatizzare tale operazione. In questo esempio abbiamo solo due raster, per cui al momento non dovresti preoccuparti di ciò.

Così facendo, otteniamo il DEM finale desiderato.

../../../_images/finaldem.png

Adesso è il momento di creare il raster delle pendenze.

Un raster delle pendenze può essere calcolato con l’algoritmo **Pendenza, Esposizione, Curvatura*, ma il DEM ottenuto nell’ultimo passaggio non è adatto come file di ingresso, dal momento che i valori di elevazione sono in metri ma la dimensione della cella non è espressa in metri (il raster utilizza un CRS con coordinate geografiche). È necessaria una riproiezione. Per riproiettare un raster, si può utilizzare nuovamente l’algoritmo Riproiezione. Eseguiamo la riproiezione in un CRS avente i metri come unità (ad es. 3857), in modo da poter calcolare correttamente la pendenza, con SAGA o GDAL.

Con il nuovo DEM, la pendenza può essere ora calcolata.

../../../_images/slope.png

E questo è il raster delle pendenze risultante.

../../../_images/slopereproj.png

La pendenza generata dall’algoritmo Pendenza, Esposizione, Curvatura può essere espressa in gradi o radianti; i gradi sono più pratici ed unità di misura comuni. Nel caso in cui l’avessi calcolata in radianti, l’algoritmo Conversioni metriche ci verrà in aiuto per eseguire la conversione (ma qualora non avessi saputo dell’esistenza dell’algoritmo, avresti potuto usare il calcolatore raster che abbiamo già utilizzato).

../../../_images/metricconversions.png

Riproiettato il raster delle pendenze convertito con lo strumento Riproietta raster, otteniamo il raster finale desiderato.

Avvertimento

da fare: Aggiungi immagine

I processi di riproiezione potrebbero aver fatto in modo che il raster finale contenga alcuni dati al di fuori del perimetro di delimitazione che avevamo calcolato in uno dei passaggi iniziali. Questo può essere risolto tagliandolo di nuovo, così come abbiamo fatto per ottenere il DEM di base.