cutline gdalwarp insieme a shapefile


26

Sto provando a ritagliare il mio file Raster secondo una geometria shapefile. Sto usando il seguente codice

gdalwarp -cutline INPUT.shp INPUT.tif OUTPUT.tif

Ma sta ottenendo un colore nero al di fuori dell'estensione della geometria dello shapefile. Sto dando l'esempio qui. Nella prima immagine che voglio ritagliare. La seconda immagine è il raster risultante, ma voglio il 3 ° raster in cui l'esterno della geometria sarà nullo.

1a Immagine: INPUT Raster

1a Immagine: INPUT Raster

Seconda immagine: OUTPUT Raster

Seconda immagine: OUTPUT Raster

inserisci qui la descrizione dell'immagine

Terza immagine: voglio ottenere un output in questo modo

Risposte:


34

È necessario utilizzare l' -dstalphaopzione per gdalwarpes .:

gdalwarp -cutline INPUT.shp -crop_to_cutline -dstalpha INPUT.tif OUTPUT.tif

Ciò aggiungerà una banda alfa all'output tiff che maschera l'area che cade al di fuori della linea di taglio.

Una risposta in ritardo, ma si spera che aiuterà qualcun altro con lo stesso problema.


2
senza il suggerimento -srcnodata <in> -dstnodata <out> di Curlew non ha funzionato per me.
Jens,

2
Bene, -dstalphaè OK da usare con le immagini (fondamentalmente aggiunge una banda alfa in GeoTIFF e maschera l'area). Tuttavia, i valori dei dati rimangono nella banda di origine (in questo caso suppongo che sia valore 0). Se vuoi lavorare con questo come valori raster (non immagini), -dstalphaè l'approccio SBAGLIATO. La risposta a chiurlo è un'opzione molto preferibile. Inoltre, ho trovato l' -crop_to_cutlineopzione molto pericolosa, se è necessario mantenere la sovrapposizione esatta (dimensione dei pixel e spaziatura) con l'input raster. Preferisco impostare le -teopzioni (riquadro di selezione) per mantenere il controllo completo delle coordinate.
jurajb,

20

Prova a specificare il valore nodata dal tuo raster di input e impostalo anche per l'output. Inoltre aggiungi l'opzione -crop_to_cutline per effettuare colture esatte. Maggiori informazioni sulle opzioni qui .

gdalwarp -srcnodata <in> -dstnodata <out> -crop_to_cutline -cutline INPUT.shp INPUT.tif OUTPUT.tif

1
Puoi approfondire un po 'di più? Cosa viene utilizzato come <in> e <out>?
Devils Dream

<in> è il valore nodata dei raster di input e <out> per l'output-raster. Dai un'occhiata al link fornito in cui puoi trovare tutte le informazioni e le opzioni (formato di output, fonte, estensione, ...)
Chiurlo

2

Puoi usare l'opzione raster clip in QGIS che esegue gdalwarp in background e configura le opzioni giuste per te.

http://www.qgistutorials.com/en/docs/raster_mosaicing_and_clipping.html


Voglio un formato ***. Tif
Devils Dream

I passaggi descritti nel link sopra dovrebbero fornire un output .tif.
pensieri spaziali

1
Il collegamento sembra morto.
Vadim Ovchinnikov,

1
@VadimOvchinnikov ha sfogliato un po 'e ha scoperto dove è stato spostato, risolto
DarkCygnus
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.