Я загрузил изображение 100x100 rgb в массив numpy. Затем я преобразовал его в массив 30000x1 numpy, чтобы пройти через модель машинного обучения. Выходной сигнал этой модели также представляет собой массив 30000x1 numpy. Как преобразовать этот массив обратно в массив numpy из 100x100 3-кортежей, чтобы я мог распечатать сгенерированное изображение rgb?Изменить матрицу на матрицу rgb
Если начальный массив равен [r1 g1 b1],[r2 g2 b2],...,[]
, он разворачивается до [r1 g1 b1 r2 g2 b2 ...]
. Мне нужно это обратно в форме [r1 g1 b1],[r2 g2 b2],...,[]
.
Что я использовал, чтобы загрузить изображение в виде массива:
im=img.resize((height,width), Image.ANTIALIAS);
im=np.array(im);
im=im.ravel();
Я попытался .reshape ((100,100,3)) и я получаю черное выходное изображение. Модель машинного обучения правильная, и это не является причиной получения черного выхода.
Ваш 'reshape' кажется правильным (попробуйте его с помощью начального массива). Как вы конвертируете в RGB, может быть, проблема есть? – Alex
Я не конвертирую изображение в RGB. Я загружаю изображение RGB в массив 'img' и переставляя его в 100x100 и сохраняя его в' im' – Sibi
. Я имел в виду вывод. Из вашего вопроса: «Я пробовал .reshape ((100,100,3)), и я получаю черное выходное изображение.» - следовательно, мой вопрос, _how_, вы переходите к обращению RGB? Вы пытались переделать и отобразить исходный массив без частичного обучения машиной? – Alex