Почему размер изображения изменяется после сохранения? - PullRequest
0 голосов
/ 08 апреля 2019

У меня проблема с размером изображения (M * N) когда я читаю изображение как np.array после применения метода алгоритма, размер его изменения к другому значению. Некоторое время увеличивается, а иногда уменьшается в зависимости от изображения.

img = cv2.imread('baboon.jpg',1)  # read image (255*255)
na = np.array(img)  # convert it to array
x, y ,pp = img.shape[:3]  # size of 3d
blue = np.array(range(x*y), int).reshape((x, y))
blue[:,:] = na[:, :, 0]
en_split_block_8(red,31,1)  # function algorithm

Я использую этот код для сохранения изображения, и размер изменяется с (255 * 255) на (640 * 480)

plt.imshow(blue,interpolation='nearest',cmap="gray")
plt.savefig('blue.jpg')#(640*480)

Я хочу, чтобы изображение сохранило свой размер. (Я не изменяю размер изображения, просто работаю со значениями).

original image

image after encryption and save

1 Ответ

1 голос
/ 09 апреля 2019

Это потому, что вы сохраняете изображение с помощью pyplot, которое показывает изображение в виде диаграммы.Вместо этого вы хотите сохранить blue изображение, используя cv2 с: cv2.imwrite('blue.jpg', blue).

. Помните, что na = np.array(img) является избыточным, поскольку img уже является ndarray.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...