Сохранение массива в виде Geotiff с использованием растерио - PullRequest
1 голос
/ 06 ноября 2019

У меня есть следующий массив NumPy:

supervised.shape
(1270, 1847)

Я пытаюсь использовать следующий код, чтобы сохранить его в GeoTIFF, используя rasterio:

with rasterio.open('/my/path/ReferenceRaster.tif') as src:
    ras_meta = src.profile

with rasterio.open('/my/output/path/output_supervised.tif', 'w', **ras_meta) as dst:
    dst.write(supervised)

Где ras_metaэто:

{'driver': 'GTiff', 'dtype': 'float32', 'nodata': None, 'width': 1847, 'height': 1270, 'count': 1, 'crs': CRS.from_epsg(32736), 'transform': Affine(10.0, 0.0, 653847.1979372115,
       0.0, -10.0, 7807064.5603836905), 'tiled': False, 'interleave': 'band'}

Я сталкиваюсь со следующей ошибкой, которую я не могу понять, поскольку и эталонный растр, и мой массив supervised имеют одинаковые shape

ValueError: Source shape (1270, 1847) is inconsistent with given indexes 1

Любая идея, чтопроблема здесь? Я не до конца понимаю значение ошибки.

1 Ответ

1 голос
/ 07 ноября 2019

write ожидает массив с формой (band, row, col). Вы можете либо изменить свой массив, либо использовать write(supervised, indexes=1).

...