Этот вопрос закрыт для ответов, так как повторяет вопрос Оценка изображения в BRISQUE выдает ошибку?
@JRBRO

Как переделать 2d array в 3d?

При таком коде
img = (io.imread('file_example_TIFF_1MB.tiff', as_gray=True))[:,:,:3]

выдает такую ошибку
IndexError: too many indices for array: array is 2-dimensional, but 3 were indexed


Вопрос- как сделать так, чтобы изображение стало 3д? Это надо для работы библиотеки, с 2д она не работает.
  • Вопрос задан
  • 77 просмотров
Решения вопроса 1
Vindicar
@Vindicar
RTFM!
Ну так ты загружаешь изображение как серое, потому получаешь одноканальный выхлоп, т.е. двумерный массив яркости пикселей вида высота х ширина. Если бы загружал цветное изображение, у тебя было бы три индекса - высота, ширина, канал.

Либо грузи изображение как цветное, либо создавай массив вида высота х ширина х 3 и впиши в него свой исходный массив, в каждый канал.

Подробнее не подскажу потому что хз что за структура данных используется - numpy массив, или питоновский array, или ещё что.
Ответ написан
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы