在之前的博客中,我们曾多次介绍过将图层的地理坐标系转为投影坐标系的方法,也就是投影操作——例如ArcGIS矢量图层投影与地理坐标系转为投影坐标系——ArcMap,以及Google Earth Engine谷歌地球引擎地理坐标系、投影坐标系的变换与重投影,还有ArcMap通过模型构建器导出地理与投影坐标系转换的Python代码等。而在本文中,我们将反过来,介绍把一个栅格图像原本的投影坐标系转为地理坐标系的方法。
其中,其实本文的操作方法,和文章GDAL命令:一行代码转换坐标系中的操作非常近似,可以认为就是将上述文章里代码修改一个参数,从而使得操作反过来执行了。
首先,我们看一下原文件,也就是待转换为地理坐标系的遥感影像文件。在ArcMap软件打开它,可以看到其坐标系为WGS_1984_UTM_Zone_48N
,也就是一个UTM投影坐标系;如下图所示。
我们希望将其的投影坐标系转换为地理坐标系,本文就以将其转换为GCS_WGS_1984
,也就是WGS84
坐标系为例,来介绍具体的方法;如果大家需要转换为其他的地理坐标系,只需要修改下述代码中的参数就好。
这里需要注意,本文和文章GDAL命令:一行代码转换坐标系一样,只要在配置好gdal
模块后,进入任何一个命令行工具中即可执行代码;其中,如果大家的gdal
模块是在Python环境中配置的,那么建议就在Python环境下的命令行工具中执行代码即可。
例如,我这里前期是在Anaconda环境的Python中配置的gdal
模块,那么此时就打开Anaconda下属的Prompt工具即可;如下图所示,这两个Prompt工具选择任意一个均可。
随后,即可执行代码。
其中,本文所用代码非常简单。首先,我们需要cd
进入存储有原文件(也就是待转换为地理坐标系的栅格遥感影像文件)的路径下。
cd F:\Data_Reflectance_Rec\Test
运行上述代码,如下图所示。
随后,输入如下的代码。其中,我这里的GF1WFV1.16m.2021001035028.48STA.000000_SR.tiff
就是原文件(待转换为地理坐标系的遥感影像文件)的名称,SR_WGS84.tif
就是输出文件的名称(这两个参数,大家结合自己的实际情况来修改即可);-t_srs
表示接下来输入的内容为目标坐标系(或者叫输出坐标系),其后面的参数就是我们期望的地理坐标系,随后的"EPSG:4326"
就是GCS_WGS_1984
这个投影坐标系(这参数,大家也需要结合自己的实际情况来修改)。其中,大家可以在这个网站(https://epsg.io/)中,找到自己所需坐标系的EPSG编号。
gdalwarp GF1WFV1.16m.2021001035028.48STA.000000_SR.tiff SR_WGS84.tif -t_srs "EPSG:4326"
运行上述代码,如下图所示。
此时,即可在目标文件夹下,看到我们刚刚生成的结果遥感影像文件;如下图所示。
其中,在ArcMap软件打开它,可以看到其坐标系已经被修改为GCS_WGS_1984
了,也就是完成了由投影坐标系到地理坐标系的转换;如下图所示。
至此,大功告成。