使用gdal进行地理配准错误

时间:2017-08-25 07:41:42

标签: gdal

虽然有几个页面专门用于此任务,但似乎我无法完成这项工作。我有一个非地理参考的tif文件,我提供了gdalinfo的输出

Driver: GTiff/GeoTIFF
Files: Arctic_r05c02.2017235.terra.250m.tif
Size is 4096, 4096
Coordinate System is `'
Metadata:
  TIFFTAG_SOFTWARE=ppm2geotiff v0.0.9
Image Structure Metadata:
  INTERLEAVE=PIXEL
Corner Coordinates:
Upper Left  (    0.0,    0.0)
Lower Left  (    0.0, 4096.0)
Upper Right ( 4096.0,    0.0)
Lower Right ( 4096.0, 4096.0)
Center      ( 2048.0, 2048.0)
Band 1 Block=4096x1 Type=Byte, ColorInterp=Red
Band 2 Block=4096x1 Type=Byte, ColorInterp=Green
Band 3 Block=4096x1 Type=Byte, ColorInterp=Blue

我确实在lat / lon中有角坐标扩展。因此,我使用以下命令创建地面控制点:

gdal_translate -of GTiff -gcp 0 0 -180.0000 +63.1066 -gcp 0 4096 -161.5651 +68.5979 -gcp 4096 0 +161.5651 +68.5979 -gcp 4096 4096 -180.0000 +76.3728 input.tif output.tif

导致:

Driver: GTiff/GeoTIFF
Files: Arctic_r05c02.2017235.terra.250mproj.tif
Size is 4096, 4096
Coordinate System is `'
GCP Projection = 
GCP[  0]: Id=1, Info=
          (0,0) -> (-180,63.1066,0)
GCP[  1]: Id=2, Info=
          (0,4096) -> (-161.5651,68.5979,0)
GCP[  2]: Id=3, Info=
          (4096,0) -> (161.5651,68.5979,0)
GCP[  3]: Id=4, Info=
          (4096,4096) -> (-180,76.3728,0)
Metadata:
  TIFFTAG_SOFTWARE=ppm2geotiff v0.0.9
Image Structure Metadata:
  INTERLEAVE=PIXEL
Corner Coordinates:
Upper Left  (    0.0,    0.0)
Lower Left  (    0.0, 4096.0)
Upper Right ( 4096.0,    0.0)
Lower Right ( 4096.0, 4096.0)
Center      ( 2048.0, 2048.0)
Band 1 Block=4096x1 Type=Byte, ColorInterp=Red
Band 2 Block=4096x1 Type=Byte, ColorInterp=Green
Band 3 Block=4096x1 Type=Byte, ColorInterp=Blue

下一步是使用gdalwarp重新采样以创建投影文件。

gdalwarp -r near -s_srs epsg:4326 -t_srs epsg:3413 -tr 250 250 input.tif output.tif

但文件似乎扭曲了: enter image description here

知道我还能做些什么吗?有没有办法直接更改tiff文件中的角坐标而不是添加GCP?那会有帮助吗?

我忘了更多的信息。数据可以在以下网址下载:

https://lance-modis.eosdis.nasa.gov/imagery/subsets/?subset=Arctic_r05c02.2017235.terra.250m

和边界框定义:

https://lance-modis.eosdis.nasa.gov/imagery/subsets/?subset=Arctic_r05c02.2017235.terra.250m.met

由于NASA方面的方框定义看起来有点奇怪,我尝试了以下方块的相同程序:

https://lance-modis.eosdis.nasa.gov/imagery/subsets/?subset=Arctic_r04c03.2017235.terra.250m

和方框定义:

https://lance-modis.eosdis.nasa.gov/imagery/subsets/?subset=Arctic_r04c03.2017235.terra.250m.met

虽然该框看起来没问题,但仍然生成了以下图片:

enter image description here

1 个答案:

答案 0 :(得分:1)

您下载的数据已经投影(在epsg:3413中),您正在指定一个不正确的投影(epsg:4326)和边界框。

您可以访问以下网址查看正确的设置: https://lance-modis.eosdis.nasa.gov/imagery/subsets/?subset=Arctic_r05c02.2017235.terra.250m.gdal

在页面的大约一半处,您将看到SELECT * FROM ( SELECT *,'T1' AS source FROM table1 UNION SELECT *,'T2' FROM table2 ) AS t ORDER BY t.source ASC; 命令,将其用于输入和输出。

例如: gdal_translate