У меня есть матрица изображений, которую я масштабирую, а затем уменьшаю исходные значения.Матрица Умножение, выводящее неправильное изображение
Изображение сначала считывается в массив размера (150,200,3).
image_data = ndimage.imread(image_file,mode='RGB').astype(float)
Далее Я масштабирую значения пикселей, а затем возвращаю их исходные значения. Кроме того, я возвращаю массив float обратно в целочисленный массив.
image_data = (image_data - (255.0/2))/255.0
image_data = (image_data * 255.0) + (255.0/2)
image_data = image_data.astype(int)
Теперь я сохраняю изображение в файле initial.jpg.
image0 = PILImage.fromarray(image_data,mode='RGB')
image0.save('Tests/Initial.jpg')
сохраненное изображение выглядит так ...
Однако, если я удалю матричное умножение и литья (средние три строки кода). Я сохраняю изображение, которое выглядит так. Это правильный файл.
Я проверил матрицы и модифицированные матрицы идентичны оригиналу, так что я запутался, почему образы не будут идентичны, а также.