Как сохранить массив Dask в виде стопки изображений? - PullRequest
0 голосов
/ 01 ноября 2019

У меня есть массив данных изображения Dask. Как мне сохранить этот массив в каталоге файлов TIFF?

1 Ответ

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

В идеале должна быть какая-то функция imsave. По состоянию на 2019-10-31 я не могу найти ни одного, но вы, возможно, захотите посмотреть https://image.dask.org в будущем для такого рода функциональности.

Вы можете сделать это сегодня, используя map_blocks и skimage.io.imread

import dask.array as da
import skimage.io

x = da.random.random((2000, 2000), chunks=(200, 200))  # make a dask array

def save_file(arr, block_info=None):
    """ Save file to foo-x-y.tif, where x and y are block locations """
    filename = "foo-" + "-".join(map(str, block_info[0]["chunk-location"])) + ".tif"
    skimage.io.imsave(filename, arr)
    return arr

x.map_blocks(save_file, dtype=x.dtype).compute()       # call function on every block

.

$ ls
foo-0-0.tif
foo-0-1.tif
...
foo-9-8.tif
foo-9-9.tif
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...