Python geotif光栅中的坐标参考系转换

Python geotif光栅中的坐标参考系转换,python,geolocation,gis,geospatial,rasterio,Python,Geolocation,Gis,Geospatial,Rasterio,我有以下几点。我编写了一个简单的脚本,将其坐标转换为谷歌地图坐标系 import rasterio import rasterio.features import rasterio.warp DATA = "/Users/Desktop/TextureUSDA_23/" def main(): with rasterio.open(DATA + 'textureUSDA_eu23.tif') as dataset: mask = dataset.dataset_m

我有以下几点。我编写了一个简单的脚本,将其坐标转换为谷歌地图坐标系

import rasterio
import rasterio.features
import rasterio.warp


DATA = "/Users/Desktop/TextureUSDA_23/"


def main():
    with rasterio.open(DATA + 'textureUSDA_eu23.tif') as dataset:
        mask = dataset.dataset_mask()
        print(dataset.crs)
        for geom, val in rasterio.features.shapes(mask, transform=dataset.transform):
            geom = rasterio.warp.transform_geom(dataset.crs, 'EPSG:4326', geom, precision=6)
            print(geom)


if __name__ == "__main__":
    main()
此脚本的输出是转换坐标的列表,即
[-4.414515,57.507086]
。然而,如果我输入这个坐标,那么它们将指向,但它们应该放在欧洲

你能解释一下我遗漏了什么吗

关于geotiff的其他信息

PROJCS["GRS_1980_IUGG_1980_Lambert_Azimuthal_Equal_Area",GEOGCS["GCS_GRS_1980_IUGG_1980",DATUM["unknown",SPHEROID["GRS80",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]],PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",52],PARAMETER["longitude_of_center",10],PARAMETER["false_easting",4321000],PARAMETER["false_northing",3210000],UNIT["metre",1,AUTHORITY["EPSG","9001"]]]


坐标以x、y顺序返回,即经度和纬度。谷歌地图(以及我见过的其他类似服务)希望坐标的顺序是纬度,然后是经度。如果你交换坐标的顺序,你会得到一个,我猜你在找什么。对于不同技术的lon/lat订购有一个很好的总结。

Wow。我将尝试测试交换坐标。顺便说一句,这是太多的要求从我这边,但可以验证我是否在正确的道路上?Ie从geo tiff中提取坐标的代码正确吗?在不完全了解您要做什么的情况下,它看起来像是从图像中的特征获取位置的一组合理步骤。我想从geo tiff中提取坐标并在google maps中绘制它们。看来我走对了路。谢谢你的回复。