3

我正在尝试使用 rasterio 加载图像,修改 ndarray,然后使用与原始图像相同的空间参考系统写出。下面的函数是我的尝试。但是输出 geotiff 中缺少空间参考系统。关于我做错了什么有什么建议吗?

我检查了输入 geotiff crs 是否有效('epsg:32611')。

# Function to write out an ndarry as a GeoTIFF using the spatial references of a sample geotif file
def write_GeoTif_like(templet_tif_file, output_ndarry, output_tif_file):
    import rasterio
    orig = rasterio.open(templet_tif_file)
    with rasterio.open(output_tif_file, 'w', driver='GTiff', height=output_ndarry.shape[0],
                       width=output_ndarry.shape[1], count=1, dtype=output_ndarry.dtype,
                       crs=orig.crs, transform=orig.transform, nodata=-9999) as dst:
        dst.write(output_ndarry, 1)
4

1 回答 1

2

之前被这个问题困扰过,我猜您的GDAL_DATA环境变量设置不正确(有关更多详细信息,请参见https://github.com/conda/conda/issues/4050)。在不了解您的安装/操作系统的情况下,我不能肯定地说,但如果gdal(和rasterio)无法找到元数据文件的位置,例如那些支持涉及坐标参考系统的操作,您将在输出 tif 中丢失 CRS .

于 2017-09-15T03:49:49.877 回答