Я загрузил изображение в виде пиксельных данных в массив numpy (subjectImage). Следующие строки кода успешно восстанавливает Numpy массив обратно в изображение и отображает его:Масштабирование изображения в массиве numpy не может быть отменено
subjectImagePath = 'pathToFile/cat.0.jpg'
subjectImage = misc.imresize(misc.imread(subjectImagePath), (224,224,3))
img = Image.fromarray(subjectImage, 'RGB')
img.show()
Однако, если я масштабировать значения пикселей изображения между 0 и 1, то я не в состоянии восстановить изображение обратно к его первоначальной форме. (Он отображает кучу шума)
subjectImage = subjectImage/255
subjectImage = subjectImage*255
img = Image.fromarray(subjectImage, 'RGB')
img.show()
Numpy даже сообщает мне, что массивы одинаковы.
orig = subjectImage
subjectImage = subjectImage/255
print(np.array_equal(orig, subjectImage*255)) # => Prints True
Мне интересно, что могло бы вызвать это? Любая помощь будет замечательной!
библиотеки:
import numpy as np
from PIL import Image
from scipy import misc
Проверьте 'dtype' на разных этапах расчетов. – hpaulj