Próbuję przyciąć mój plik Raster zgodnie z geometrią shapefile. Używam następującego kodu
gdalwarp -cutline INPUT.shp INPUT.tif OUTPUT.tif
Ale w wyniku tego pojawia się czarny kolor poza zasięgiem geometrii shapefile. Podaję tutaj przykład. Na pierwszym obrazie, który chcę przyciąć. Drugi obraz to wynikowy raster, ale chcę trzeciego rastra, w którym zewnętrzna część geometrii będzie zerowa.
Pierwszy obraz: INPUT Raster
Drugi obraz: OUTPUT Raster
Trzeci obraz: Chcę uzyskać taki wynik
Odpowiedź
Musisz użyć opcji -dstalpha
, aby gdalwarp
np .:
gdalwarp -cutline INPUT.shp -crop_to_cutline -dstalpha INPUT.tif OUTPUT.tif
To doda pasmo alfa do wyjściowej tiff, które maskuje obszar wykraczający poza linię cięcia.
Późna odpowiedź, ale miejmy nadzieję, że pomoże ktoś inny z tym samym problemem.
Komentarze
Odpowiedź
Spróbuj określić wartość nodata z rastra wejściowego i ustaw ją na wyjściu także. Ponadto dodaj opcję -crop_to_cutline, aby uzyskać dokładne przycięcia. Więcej o opcjach tutaj .
gdalwarp -srcnodata <in> -dstnodata <out> -crop_to_cutline -cutline INPUT.shp INPUT.tif OUTPUT.tif
Komentarze
- Czy możesz wyjaśnić trochę więcej? Co jest używane jako < w > i < na >?
- < w > czy rastry wejściowe są wartością nodata i < out > dla rastra wyjściowego. Proszę spojrzeć na podany link, w którym można znaleźć wszystkie informacje i opcje (format wyjściowy, źródło, zakres, …)
- Otrzymuję nieprawidłową składnię, czy możesz mi pomóc z tym gdalwarp -srcnodata " myrasterfinal77.tif " -dstnodata " demUTM12.tif " -crop_to_cutline -cutline " Eastcoast.shp " " myrasterfinal77 .tif " " demUTM12.tif "
Odpowiedź
Możesz użyć opcji klipu rastrowego w QGIS, która uruchamia gdalwarp w tle i konfiguruje odpowiednie opcje.
http://www.qgistutorials.com/en/docs/raster_mosaicing_and_clipping.html
Komentarze
- Chcę mieć format ***. tif
- Kroki opisane w powyższym linku powinny dać wyjście .tif.
- L atrament wygląda na martwy.
- @VadimOvchinnikov przeglądał trochę i znalazł miejsce, w którym został przeniesiony, naprawił go
-dstalpha
można używać ze zdjęciami (w zasadzie dodaje pasmo alfa w GeoTIFF i maskuje obszar). Jednak wartości danych pozostają w źródłowym paśmie (w tym przypadku wydaje mi się, że jest to wartość 0). Jeśli chcesz pracować z tym jako z wartościami rastrowymi (nie z obrazami),-dstalpha
jest ZŁE. Odpowiedź @ Curlew jest znacznie lepszą opcją. Uważam również, że opcja-crop_to_cutline
jest bardzo niebezpieczna, jeśli chcesz zachować dokładną nakładkę (rozmiar pikseli i odstępy) w rastrze wejściowym. Wolę ustawić opcje-te
(obwiednia), aby zachować współrzędne pod pełną kontrolą.