对于一个形状为(100,100)的二维数组,我想将其保存为.tiff
格式的光栅文件。
我可以使用gdal
包读取已经存在的tiff
文件。但我仍然找不到一种简单的方法将二维数组转换为tiff文件。
使用plt.imsave("xx.tif",array)
或
def array_to_raster(array):
"""Array > Raster
Save a raster from a C order array.
:param array: ndarray
"""
dst_filename = 'xxx.tiff'
x_pixels = 100 # number of pixels in x
y_pixels = 100 # number of pixels in y
driver = gdal.GetDriverByName('GTiff')
dataset = driver.Create(
dst_filename,
x_pixels,
y_pixels,
1,
gdal.GDT_Float32, )
dataset.GetRasterBand(1).WriteArray(array)
dataset.FlushCache() # Write to disk.
return dataset, dataset.GetRasterBand(1)
他们都没有达到我的目标。第二种方法改编自here,它可以用投影将数组转换为geotiff
。
是否有一些简单的方法将数组保存到.tiff
中,以便我可以通过下次导入tiff
文件来调用它。
任何建议都将不胜感激。
目前没有回答
相关问题 更多 >
编程相关推荐