我有一张没有 TIFF 格式的地理数据的图像(地图)。
我需要从我的图像中获取 GeoTIFF 文件。我的地图每个角落都有纬度和经度。如何将我的地理数据添加到 Google 空间参考中的图像以获取 geotiff?我知道GDAL可以帮助我。谁能帮我建立一个命令
2 回答
您的回答有正确的想法,但请允许我扩展。你是对的,你需要使用 gdal_translate 工具来设置地面控制点 (gcps) 来地理参考图像。但是命令行参数应该是这样的:
gdal_translate -of GTiff -a_srs EPSG:4326 -gcp [pixel line easting northing] -gcp [pixel line easting northing] -gcp [pixel line easting northing] sourcefile outpulfile
您不一定要输出到 VRT,如果您想对文件执行其他算法,向文件添加更多数据集,最终将其输出为 KML,则 VRT 很有用 - 您可以在此处阅读其他内容(http ://www.gdal.org/gdal_vrttut.html)。但为此目的,设置-of
为 GTiff 是理想的。
-a_srs EPSG:4326
接下来,在空间参考中你是正确的,它应该参考谷歌地球使用的坐标系 WGS84,但是我们指定它使用EPSG:4326
- 这只是地理信息学委员会同意识别全球坐标系的编码方案(http:/ /www.epsg.org/)。
-gcp [pixel line easting northing]
地面控制点可能是命令行参数中最棘手的部分。前 2 个数字代表实际图像的像素和线坐标,例如 (0,0) 表示图像的最左上角。应遵循的第二组数字是您的图像应参考的相应纬度/经度坐标。现在,您只需要其中的 3 个,-gcps
因为如果您的图像是正方形/矩形,则将确定第 4 个。
sourcefile outputfile
这部分应该是不言自明的,只要记住它们都是 *.tif 文件。
现在,如果您需要做最后一件事来完成您的任务。您必须将图像实际投影到坐标系才能对齐。这是使用gdalwarp
命令(http://www.gdal.org/gdalwarp.html)关闭的。
gdalwarp -t_srs EPSG:4326 sourcefile outputfile
如果它应该是 GeoTiff 以外的其他东西,则必须指定一个-of
(输出文件格式) - 但默认格式是 GTiff,因此您不需要指定它。
gdal_translate -of VRT -a_srs WGS84 -a_ullr 55.7254060 37.5516230 55.7248920 37.5569120 source image destination image
gdal_translate -of VRT -a_srs "spacial reference" -a_ullr "left top lat/long" "right bottom lat/long" source image destination image