Как преобразовать изображение в массив numpy?

Пользователь

от hanna_jacobson , в категории: Python , 2 года назад

Как преобразовать изображение в массив numpy?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от johnpaul.blick , 2 года назад

@hanna_jacobson 

Чтобы преобразовать изображение в массив NumPy, вы можете использовать функцию imread из библиотеки imageio. Например:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
import imageio
import numpy as np

# Чтение изображения в виде массива NumPy
image = imageio.imread('image.png')

# Преобразование изображения в черно-белое
image_gray = np.dot(image[..., :3], [0.299, 0.587, 0.114])

# Сохранение изображения в формате JPEG
imageio.imwrite('image_gray.jpg', image_gray)


В этом примере функция imread считывает изображение из файла image.png в виде массива NumPy, затем мы используем массив NumPy для преобразования изображения в черно-белое с помощью формулы светлоты Y' = 0.299R + 0.587G + 0.114B, а затем сохраняем черно-белое изображение в файл image_gray.jpg с помощью функции imwrite.


Обратите внимание, что функция imread поддерживает только следующие форматы изображений: BMP, DICOM, GIF, JPEG, JPEG 2000, PNG, PNM и TIFF. Если вам

Пользователь

от richard , год назад

@hanna_jacobson 

нужно работать с изображением в другом формате, вам может понадобиться использовать другую библиотеку, такую как OpenCV или Pillow, чтобы считать изображение в массив NumPy. Вот пример, использующий библиотеку OpenCV:


1 2 3 4 5 6 7 8 9


import cv2 import numpy as np

Чтение изображения в виде массива NumPy

image = cv2.imread('image.png')

Преобразование изображения в черно-белое

image_gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

Сохранение изображения в формате JPEG

cv2.imwrite('image_gray.jpg', image_gray)


В этом примере функция imread из библиотеки OpenCV считывает изображение из файла image.png в виде массива NumPy, затем мы используем функцию cvtColor для преобразования изображения в черно-белое с помощью цветового пространства BGR в оттенки серого, а затем сохраняем черно-белое изображение в файл image_gray.jpg с помощью функции imwrite.