.tif 래스터 레이어를 번역 (위치 변경)하는 방법은 무엇입니까?


10

나는 논문 (환경 물리학)에 QGIS를 사용하기 시작했고 그것에 대해 꽤 무지하다는 것을 인정해야한다. 나는 항상 Mathematica 나 Matlab을 사용했다.

내 문제는 : .tif 형식의 래스터 레이어가 잘못 배치되어 있습니다 (남서로 100m 이동해야 함). 번역 (위치 변경)해야하며 어떻게 할 수 있는지 전혀 모릅니다.

Affine 변환을 시도했지만 작동하지 않습니다 (입력 레이어를 선택할 수 없음). 나는 또한 파이썬에서 래스터를 번역 (위치 변경)하는 방법을 읽었 습니까? 그러나 나는 그것을 많이 이해하지 못했다는 것을 인정해야한다. 나는 여러 번 시도했지만 파이썬에는 좋지 않다.


.tif 레이어가 어떤 방식으로 지리 참조되어 있다고 가정합니까? 메타 데이터에 어떤 좌표 참조 시스템이 명시되어 있습니까? CRS 설정 만 수정하면 레이어가 정렬됩니다.
underdark

의견 주셔서 감사합니다! 그렇습니다. 지리 참조되어 있고 좌표계가 올바른 것입니다 (WGS 84 / UTM zone 32N). .. 따라서 필요 ... 레이어의 위치를 변경한다

Affine Transform 플러그인은 벡터 레이어 전용입니다.
AndreJ

답변:


9

아! 링크 된 토론에서 말한대로 다음과 같이 처리했습니다 .... ( Python에서 래스터를 변환하는 방법? ) 파이썬 콘솔을 사용하는 방법을 알아내는 데 시간이 걸렸습니다. ;) 어쨌든 고마워! :)

QGIS Python 콘솔에서 GDAL / Python을 사용했습니다! :)

내가 쓴 것은 :

from osgeo import gdal
gdal.AllRegister()
rast_src = gdal.Open('filename.tif', 1 )
gt = rast_src.GetGeoTransform()
gtl = list(gt)
gtl[0] -= 200
gtl[3] -= 100
rast_src.SetGeoTransform(tuple(gtl))
rast_src = None

편집 : "gdall.AllRegister ()"를 "gdal.AllRegister ()"로 전환했습니다.


코드에는 한 글자의 오타가 있습니다. gdall.AllRegister에는 두 개의 "L"이 사용되지 않아야합니다. ( 'generals : "'gdall 'is not defined") 불행히도 편집 할 수있는 길이는 6 자 이상이므로 편집 할 수 없습니다.
Smerla

이 답변은 정말 도움이되었습니다! 내가 추가하고 싶은 것은 print(gtl)함수 를 입력하여 변환을 수행하기 전에 단위를 확인하고 확인하는 것입니다. 예를 들어, 내 래스터는 dd mm ss에 있었으며, 몇 미터가 10 진수로되어 있는지 알아 내기 위해 여기서 사용할 수있는 표를 사용했습니다 (위도보다 경도가 더 쉽습니다!) : 미터를 10 진수로 변환하는 표
Justin Kray

1

Rasmover플러그인은 당신이 원하는해야한다.

실험용 플러그인이 플러그인 목록에 들어가도록 허용해야합니다.

결과는 가상 래스터 파일이며, 필요한 경우 텍스트 편집기로 편집하여 매개 변수를 조정할 수 있습니다.


찾을 수 없습니다 ... 3.6에서는 사용할 수 없습니까?
foobarbecue

1
플러그인은 github.com/geodrinx/rasmover 에서 찾을 수 있지만 최근 활동은 없습니다. osgeo-org.1560.x6.nabble.com/…gis.stackexchange.com/questions/274074/…를 참조하십시오 . Rasterbender 플러그인이이를 대체 할 수 있습니다.
AndreJ

0

래스터에 이미 UTM 투영이 있고 다른 UTM 영역으로 세로 방향으로 이동하려는 특수한 경우에는 gdal_translate가능합니다. 예를 들어, 입력 래스터는 UTM 영역 Z에 있으며 UTM 영역 26 (즉, 대부분의 위도에서 대서양)으로 이동하려고합니다.

gdal_translate -a_srs '+proj=utm +zone=26 +datum=WGS84' input.tif output.tif

보고 된 모델 공간 단위의 원점 및 모서리 좌표 gdalinfo는 동일하게 유지됩니다. 그러나 모서리는 위도 / 경도 변화에 따라 조정되며 래스터는 실제로 세계의 다른 부분으로 이동했습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.