Sto cercando di ritagliare il mio file Raster secondo una geometria shapefile. Sto usando il seguente codice

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

Ma risulta un colore nero al di fuori dellestensione della geometria dello shapefile. Sto dando lesempio qui. Nella prima immagine che voglio ritagliare. La seconda immagine è il raster risultante ma voglio il terzo raster in cui lesterno della geometria sarà nullo.

1a immagine: INPUT Raster

Prima immagine: INPUT Raster

Seconda immagine: OUTPUT Raster

Seconda immagine: OUTPUT Raster

inserisci qui la descrizione dellimmagine

3a immagine: voglio ottenere un output come questo

Risposta

Devi utilizzare lopzione -dstalpha per gdalwarp ad esempio:

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

Ciò aggiungerà una banda alfa al tiff di output che maschera larea che cade al di fuori della linea di taglio.

Una risposta tardiva, ma si spera che aiuti qualcun altro con lo stesso problema.

Commenti

  • senza -srcnodata < in > -dstnodata < out > suggerimento di Curlew non ha funzionato per me.
  • Bene, -dstalpha può essere utilizzato con le immagini (fondamentalmente aggiunge una banda alfa in GeoTIFF e maschera larea). Tuttavia, i valori dei dati rimangono nella banda di origine (in questo caso immagino che sia il valore 0). Se vuoi lavorare con questo come valori raster (non immagini), -dstalpha è un approccio SBAGLIATO. La risposta di @ Curlew è unopzione molto preferibile. Inoltre, ho trovato lopzione -crop_to_cutline molto pericolosa, se è necessario mantenere la sovrapposizione esatta (dimensione dei pixel e spaziatura) con il raster di input. Preferisco impostare le -te opzioni (riquadro di delimitazione) per mantenere le coordinate sotto il pieno controllo.
  • gdalwarp -cutline Eastcoast.shp -crop_to_cutline -dstalpha " myrasterfinal77.tif " " demUTM12.tif " Recupero sintassi non valida

Risposta

Prova a specificare il valore nodata dal tuo raster di input e impostalo per loutput anche. Inoltre aggiungi lopzione -crop_to_cutline per creare ritagli esatti. Ulteriori informazioni sulle opzioni qui .

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

Commenti

  • Puoi approfondire un po di più? Che cosa viene utilizzato come < in > e < out >?
  • < in > è il valore nodata dei raster di input e < out > per il tuo output-raster. Dai unocchiata al collegamento fornito dove puoi trovare tutte le informazioni e le opzioni (formato di output, sorgente, estensione, …)
  • Ricevo una sintassi non valida, puoi aiutarmi con questo gdalwarp -srcnodata " myrasterfinal77.tif " -dstnodata " demUTM12.tif " -crop_to_cutline -cutline " Eastcoast.shp " " myrasterfinal77 .tif " " demUTM12.tif "

Risposta

Puoi usare lopzione clip raster 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

Commenti

  • Voglio un formato ***. tif
  • I passaggi descritti nel collegamento sopra dovrebbero darti un output .tif.
  • Il linchiostro sembra morto.
  • @VadimOvchinnikov ha sfogliato un po e ha trovato dove era stato spostato, risolto

Lascia un commento

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