Ich versuche, meine Raster-Datei gemäß einer Shapefile-Geometrie zu beschneiden. Ich verwende den folgenden Code:
gdalwarp -cutline INPUT.shp INPUT.tif OUTPUT.tif
Es entsteht jedoch eine schwarze Farbe außerhalb der Ausdehnung der Shapefile-Geometrie. Ich gebe hier das Beispiel. Im ersten Bild, das ich ausschneiden möchte. Das zweite Bild ist das resultierende Raster, aber ich möchte das dritte Raster, bei dem die Außenseite der Geometrie null ist.
1. Bild: INPUT-Raster
2. Bild: OUTPUT-Raster
3. Bild: Ich möchte eine Ausgabe wie diese erhalten
Antwort
Sie müssen die Option -dstalpha
verwenden, um gdalwarp
zu verwenden, z. B.:
gdalwarp -cutline INPUT.shp -crop_to_cutline -dstalpha INPUT.tif OUTPUT.tif
Dies fügt dem Ausgabe-TIFF ein Alpha-Band hinzu, das den Bereich maskiert, der außerhalb der Schnittlinie liegt.
Eine späte Antwort, aber hoffentlich hilft es jemand anderes mit dem gleichen Problem.
Kommentare
- ohne die -srcnodata < in > -dstnodata < out > Hinweis von Curlew, dass es nicht funktioniert hat für mich.
- Nun,
-dstalpha
kann mit Bildern verwendet werden (es fügt im Grunde ein Alpha-Band in GeoTIFF hinzu und maskiert den Bereich). Die Datenwerte bleiben jedoch im Quellband (in diesem Fall ist es vermutlich der Wert 0). Wenn Sie damit als Rasterwerte (keine Bilder) arbeiten möchten, ist-dstalpha
ein FALSCHER Ansatz. Die Antwort auf @ Curlew ist eine sehr bevorzugte Option. Außerdem fand ich die Option-crop_to_cutline
sehr gefährlich, wenn Sie eine genaue Überlagerung (Pixelgröße und Abstand) mit dem Eingabe-Raster beibehalten müssen. Ich ziehe es vor,-te
-Optionen (Begrenzungsrahmen) festzulegen, um die Koordinaten unter voller Kontrolle zu halten. - gdalwarp -cutline Eastcoast.shp -crop_to_cutline -dstalpha " myrasterfinal77.tif " " demUTM12.tif " ungültige Syntax
Antwort
Versuchen Sie, den Knotenwert aus Ihrem Eingabe-Raster anzugeben und für die Ausgabe festzulegen auch. Fügen Sie außerdem die Option -crop_to_cutline hinzu, um genaue Ernten zu erzielen. Weitere Informationen zu den Optionen finden Sie hier .
gdalwarp -srcnodata <in> -dstnodata <out> -crop_to_cutline -cutline INPUT.shp INPUT.tif OUTPUT.tif
Kommentare
- Können Sie etwas näher darauf eingehen? Was wird als < in > und < out ?
- < in > ist der Knotenwert Ihrer Eingaberaster und < out > für Ihr Ausgabe-Raster. Bitte schauen Sie sich den bereitgestellten Link an, wo Sie alle Informationen und Optionen finden (Ausgabeformat, Quelle, Umfang, …).
- Ich erhalte eine ungültige Syntax. Können Sie mir bei diesen gdalwarp -srcnodata helfen? " myrasterfinal77.tif " -dstnodata " demUTM12.tif " -crop_to_cutline -cutline " Eastcoast.shp " " myrasterfinal77 .tif " " demUTM12.tif "
Antwort
Sie können die Rasterclip-Option in QGIS verwenden, die gdalwarp im Hintergrund ausführt und die richtigen Optionen für Sie konfiguriert.
http://www.qgistutorials.com/en/docs/raster_mosaicing_and_clipping.html
Kommentare
- Ich möchte ein ***. tif-Format
- Die im obigen Link beschriebenen Schritte sollten Ihnen eine .tif-Ausgabe geben.
- Das l Tinte scheint tot zu sein.
- @VadimOvchinnikov blätterte ein wenig und fand heraus, wo sie bewegt wurde, korrigierte sie