[Gfoss] Riproiezione di un raster

Massimiliano Moraca info a massimilianomoraca.it
Mar 17 Mar 2020 09:52:52 CET


Buongiorno a tutti, scrivo per esporvi alcuni dubbi che mi sono venuti
relativamente alla riproiezione di un raster. In ufficio, per alcuni indici
di vegetazione, abbiamo la necessità di visualizzare in un diagramma a barre
quanta superficie del raster in esame rientra in un certo range di valori.
Mi spiego meglio: posti tre range x, y e z, vogliamo sapere quanti pixel
rientrano in ognuno dei range e quale è la superficie totale di ognuno dei
range. Ad esempio: nel range x rientrano 20 pixel, la dimensione di ogni
pixel è 10x10 metri, quindi la superficie totale di x è 10x10x20=2000mq

Mettendo da parte i perchè, si è scelto di lavorare in questo modo:
1 - vettorializzazione del raster dell'indice di vegetazione
2 - calcolo della superficie di ogni poligono del vettore(ogni poligono
corrisponderà al singolo pixel del raster al punto 1)
3 - raggruppamento delle ricorrenze dei pixel secondo i range e sommatoria
delle aree

Il dato di partenza è in 4326 con dimensione del singolo pixel pari a
0.000112148462163201668 x 0.000112148462163201668

Uno sviluppatore si sta occupando di creare il flusso di lavoro in python,
io con QGIS ho fatto una verifica sui suoi risultati partendo da uno degli
indici calcolati.

Usando /Polygonize(raster to vector)/ ho ottenuto un vettore con una colonna
DN che contiene il valore di indice per ogni poligono. Ho a questo punto
aggiunto una colonna che ho chiamato area_mq con cui tramite field
calculator ho calcolato la superficie di ogni poligono: *area( transform(
$geometry, 'EPSG:4326', 'EPSG:3857'))*. Il risultato è pari a circa 206 mq
per ogni pixel.

Lo sviluppatore usando rasterio ha riproiettato il raster in 3857 e si è poi
calcolato l'estensione di ogni pixel che gli risulta pari a circa 175 mq con
pixel di dimensioni 13.26663473960738138 x 13.26663473960738138 m.

Per capire il perchè di queste differenze ho esportato il mio raster in
3857(Export -> Save as..) trovandomi con pixel di dimensioni
12.48430981132078799 x 16.5115487603316744 e quindi la superficie di ogni
pixel è circa 206 mq. Mi trovo con il risultato che mi sono calcolato in
precedenza ma non con il risultato dello sviluppatore.

Secondo test: ho usato /Warp/ per riproiettare il raster e mi trovo con le
dimensioni in pixel dello sviluppatore. 

Ora, posto che ho sempre riproiettato un raster nello stesso modo con cui si
riproietta un vettore non avendo mai riscontrato problemi di
riposizionamento vorrei capire il perchè di quello che sembra essere un mio
errore metodologico.

-----
Consulente GIS,  Formatore, Blogger e Ciclista Urbano
email: info a massimilianomoraca.it
cell: 333 5949583 (lun-ven, 9.00-18.00)
website: massimilianomoraca.it
--
Sent from: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/


Maggiori informazioni sulla lista Gfoss