我正在尝试使用rasterio加载图像,修改ndarray,然后使用与原始图像相同的空间参照系进行写出。以下功能是我尝试执行的操作。但是输出参考点缺少空间参考系统。关于我在做什么错的任何建议吗?
我检查了输入的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)
最佳答案
之前曾被此问题咬过,我想您的GDAL_DATA
环境变量设置不正确(有关更多详细信息,请参见https://github.com/conda/conda/issues/4050)。如果不了解您的安装/操作系统的更多信息,我不能肯定地说,但是如果gdal
(和rasterio
)无法通过元数据文件(例如那些支持涉及坐标参考系统的操作的元数据文件)来查找位置,输出tif中的CRS。
关于python - 从rasterio写入GeoTiff缺少空间引用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46225675/