Qgis / gdal无法识别无人机图像中的元数据/空间参考

时间:2019-08-19 09:36:55

标签: python gdal qgis google-earth-engine

我正在尝试将无人机图像提取到QGIS / Google Earth Engine中,但都无法识别图像的空间参考,也就是说,QGIS / GDAL并未从文件中提取元数据。

问题: 当我将jpeg文件导入QGIS或ArcGIS时,两者都告诉我图像没有参考系统(例如WARNING CRS was undefined : defaulting to CRS EPSG:4326 - WGS 84;但是,从元数据中,我知道图像的纬度/经度值我可以提取。没有CRS,我无法继续分析。目前,我对投影图像不感兴趣,只需要一个地理参考系统即可。

我已经尝试过:

  • 使用.jpeg作为子过程从exiftool.exe文件中提取元数据。效果很好,我可以修改元数据,但是我不知道如何更改它,以便QGIS / ArcGIS识别纬度/经度值并将图像定位在应有的位置。
  • 使用GDAL将jpeg文件导出到geotiff文件,如下所示:
gdal.Translate(outfile, infile, format = 'GTiff')

,但是GeoTIFF具有与jpeg完全相同的元数据。

  • 而且我还尝试过手动设置SRS
gdal.Translate(outfile, infile, format = 'GTiff', outputSRS='EPSG:4326')
  • 我还尝试过使用众所周知的文本(wkt)手动创建投影文件(*.prj),如下所示:
with open(basename+'.prj', 'w') as file:
        file.write('PROJCS["WGS 84 / UTM zone 56S",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",153],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",10000000],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","32756"]]')
  • SetMetadata()也不起作用。我尝试过:
ras = gdal.Open(input_file)
ras.SetMetadata({'Latitude': 'lat_from_metadata', 'Longitude':'lon_from_metadata'})

这些方法都没有帮助我在jpeg或TIFF上的图像文件上设置CRS。

如何在图像文件上设置SRS,以便QGIS / ArcGIS识别图像的位置? 任何提示都将不胜感激。

0 个答案:

没有答案