Я хочу извлечь патчи цветного изображения из цветного изображения 512x512 и сохранить их как отдельные патчи изображения в папке. Как я могу восстановить свое оригинальное изображение из этих патчей?
Я прочитал и посмотрел несколько подобных вопросов, и они не решают мою проблему.
Я немного прочитал и решил использовать функцию view_as_windows из SKimage для исправления моего изображения. Мне также удалось сохранить свои патчи в png-файлах.
В настоящее время с помощью SKimage view_as_window для извлечения заплат из цветного изображения размером 512x512 patch_img = view_as_windows(input_img, (128, 128, 3), step=64)
при раскрытии деталей выходного массива я заметил, что patch_img
имеет форму (7, 7, 1, 128, 128, 3 ) и d-тип unint8. Чтобы сохранить каждый патч как отдельное изображение, я использую следующий код.
for i in range(0, len(patch_img)): #range should be 0 to 6
for x in range(0, len(patch_img)):
fname= 'IMG_test_{}_{}.png'.format(i, x)
#cv2.imwrite(fname, crop_img[i,x,0,:,:,:])
При загрузке всей папки с сохраненными изображениями с использованием CV2, я не могу вернуть ту же форму и dtype patch_img
, вместо этого я получаю форму (49, 128, 128, 3). Как я могу это исправить.
Редактировать: Исправлена форма с использованием savedimg = savedimg.reshape(7,7,128 128, 3)
Кроме того, как я могу затем использовать сохраненные патчи для восстановления исходного изображения?