1

我想创建一些简单的栅格测试数据rasterio,以便稍后处理。我不想从磁盘写入/读取任何文件,而是想从变量/内存对象中工作。我暂时也不需要给这个光栅一个投影。例如,对于asc类型栅格,它可以像这样简单:

ncols 4
nrows 4
xllcorner 20
yllcorner 8.5
cellsize 0.5
nodata_value -9999
0.1 0.2 0.3 0.4
0.2 0.3 0.4 0.5
0.3 0.4 0.5 0.6
0.4 0.5 0.6 0.7

是否rasterio支持我可以用上述数据填写的任何对象,而不必担心写入或读取光栅文件?谢谢

4

1 回答 1

2

我认为rasterio.io.MemoryFile可能适用于您的应用程序(内存文件文档)。对于您的示例,它可能类似于:

from rasterio.io import MemoryFile
from affine import Affine

with MemoryFile() as memfile:
    transform = Affine(0.5, 0, 20, 0, 0.5, 8.5)
    data = np.arange(16).reshape(1, 4, 4) / 10
    meta = {"count": 1, "width": 4, "height": 4, "transform": transform, "nodata": -9999, "dtype": "float64"}
    with memfile.open(driver='GTiff', **meta) as dataset:
        dataset.write(data)
于 2018-09-25T05:56:34.023 回答