셰이프 파일 지오메트리에 따라 래스터 파일을 자르려고합니다. 다음 코드를 사용하고 있습니다.
gdalwarp -cutline INPUT.shp INPUT.tif OUTPUT.tif
하지만 셰이프 파일 지오메트리 범위 외부에 검은 색이 나타납니다. 여기에 예를 들었습니다. 클립하려는 첫 번째 이미지에서. 두 번째 이미지는 결과 래스터이지만 지오메트리 외부가 null 인 세 번째 Raster를 원합니다.
첫 번째 이미지 : INPUT Raster
두 번째 이미지 : OUTPUT Raster
3 번째 이미지 : 다음과 같은 출력을 얻고 싶습니다.
답변
-dstalpha
옵션을 사용하여 gdalwarp
예 :
gdalwarp -cutline INPUT.shp -crop_to_cutline -dstalpha INPUT.tif OUTPUT.tif
이렇게하면 컷 라인을 벗어나는 영역을 가리는 알파 밴드가 출력 tiff에 추가됩니다.
늦은 답변이지만 도움이되기를 바랍니다. 같은 문제가있는 다른 사람.
댓글
Answer
입력 래스터에서 nodata-value를 지정하고 출력으로 설정해보십시오. 게다가. 또한 -crop_to_cutline 옵션을 추가하여 정확한 작물을 만듭니다. 옵션에 대한 자세한 내용은 여기 를 참조하세요.
gdalwarp -srcnodata <in> -dstnodata <out> -crop_to_cutline -cutline INPUT.shp INPUT.tif OUTPUT.tif
댓글
- 좀 더 자세히 설명해 주시겠습니까? < in > 및 < 외부 ?
- < in >는 입력 래스터 nodata-value 및 < out >. 모든 정보와 옵션 (출력 형식, 소스, 범위, …)을 찾을 수있는 제공된 링크를 살펴보십시오.
- 유효하지 않은 구문을 얻고 있습니다.이 gdalwarp -srcnodata를 도와 줄 수 있습니까? " myrasterfinal77.tif " -dstnodata " demUTM12.tif " -crop_to_cutline -cutline " Eastcoast.shp " " myrasterfinal77 .tif " " demUTM12.tif "
답변
백그라운드에서 gdalwarp을 실행하고 적절한 옵션을 구성하는 QGIS의 래스터 클립 옵션을 사용할 수 있습니다.
http://www.qgistutorials.com/en/docs/raster_mosaicing_and_clipping.html
댓글
- ***. tif 형식을 원합니다.
- 위 링크에 설명 된 단계는 .tif 출력을 제공합니다.
- l 잉크가 죽은 것 같습니다.
- @VadimOvchinnikov는 약간 탐색하여 이동 된 위치를 찾아서 수정했습니다.
-dstalpha
는 이미지와 함께 사용하는 것이 좋습니다 (기본적으로 GeoTIFF에 알파 밴드를 추가하고 영역을 마스킹합니다). 그러나 데이터 값은 소스 밴드에 남아 있습니다 (이 경우 값 0이라고 생각합니다). 이 작업을 이미지가 아닌 래스터 값으로 사용하려면-dstalpha
가 잘못된 접근 방식입니다. @ Curlew 대답이 훨씬 더 바람직한 옵션입니다. 또한 입력 래스터와 정확한 오버레이 (픽셀 크기 및 간격)를 유지해야하는 경우-crop_to_cutline
옵션이 매우 위험하다는 것을 발견했습니다. 좌표를 완전히 제어하기 위해-te
옵션 (경계 상자)을 설정하는 것을 선호합니다.