2016-12-08 5 views
1

Моя программа генерирует некоторый Numpy массив во время процесса, запущенного, я сохраняю их с помощьюсохраненное изображение не может быть открыт

from skimage import io 
    io.imsave("img.tif",imgs[0,0]) 

imgs имеет тип float32, форма (1,1,128,128); тогда как максимальное значение равно 1.0, а минимальное значение - 0.0. Изображение правильно сохранено. Однако, когда я его открываю, я получил следующее сообщение об ошибке. В чем причина?

enter image description here

+0

попробовать преобразование в 8-битном UINT? 'Io.imsave ("img.tif", (ГИМ [0,0] * 255) .astype (np.uint8))' – Aaron

ответ

0

После проверки того, что я предложил в комментариях, я совершенно уверен, что это ваша точная проблема. (Я воспроизвел точную ошибку)

Tiff изображения не поддерживают только любое произвольное цветовое пространство. Обычно поддерживаемые типы включают в себя 8-битный серо-масштаб, 16-битный серо-масштабный, двухуровневый (двоичный), цветовая палитра, rgb (типичный 24 бит).

обращенный в 8 битной серую шкалу (вероятно, наиболее часто поддерживаются после RGB) с этим редактированием:

io.imsave("img.tif",(imgs[0,0]*255).astype(np.uint8)) 

 Смежные вопросы

  • Нет связанных вопросов^_^