Метод imsave() в Matplotlib
Метод imsave() — это функция в библиотеке Matplotlib, используемая для сохранения данных изображения на диск.
С помощью метода imsave() мы можем легко сохранить сгенерированное изображение в указанный нами каталог.
Метод imsave() поддерживает множество форматов изображений для сохранения изображений, таких как PNG, JPEG, BMP и т. д.
Синтаксис метода imsave() выглядит следующим образом:
matplotlib.pyplot.imsave(fname, arr, **kwargs)
Описание параметра:
fname: Имя файла для сохранения изображения; оно может быть относительным или абсолютным путём.arr: Представляет массив NumPy изображения.kwargs: Необязательные параметры, используемые для указания таких параметров, как формат изображения и качество изображения для сохранения.
Ниже приведён простой пример использования метода imsave() для сохранения изображения:
Пример
import numpy as np
# Создание двумерных данных изображения
img_data = np.random.random((100, 100))
# Отображение изображения
plt.imshow(img_data)
# Сохранить изображение на диск
plt.imsave('example-test.png', img_data)
В приведенном выше примере мы использовали метод imsave() для сохранения этого изображения в текущий каталог с именем файлаexample-test.png。
Поскольку формат изображения не был указан, библиотека Matplotlib по умолчанию сохраняет его как файл PNG.
Откройте текущий каталог, и вы найдете файлexample-test.png, как показано ниже:

В следующем примере показано, как использовать метод imsave() для сохранения изображения в оттенках серого и цветного изображения в текущий каталог:
Пример
import numpy as np
# Создать изображение в оттенках серого
img_gray = np.random.random((100, 100))
# Создать цветное изображение
img_color = np.zeros((100, 100, 3))
img_color[:, :, 0] = np.random.random((100, 100))
img_color[:, :, 1] = np.random.random((100, 100))
img_color[:, :, 2] = np.random.random((100, 100))
# Отобразить изображение в оттенках серого
plt.imshow(img_gray, cmap='gray')
# Сохранить изображение в оттенках серого на диск
plt.imsave('test_gray.png', img_gray, cmap='gray')
# Отобразить цветное изображение
plt.imshow(img_color)
# Сохранить цветное изображение на диск
plt.imsave('test_color.jpg', img_color)
В приведенном выше примере мы использовали модульnumpy.random, чтобы создать изображение в оттенках серого и цветное изображение соответственно, а затем использовали метод imshow() для отображения этих двух изображений соответственно.
Затем мы использовали функцию imsave() для сохранения двух изображений в текущий каталог с именами файловtest_gray.pngиtest_color.jpg。
При сохранении изображения в оттенках серого мы использовали параметр cmap, чтобы сохранить его в формате изображения в оттенках серого.
При сохранении цветного изображения мы не указали формат изображения, и библиотека Matplotlib по умолчанию сохранила его как файл JPEG.
Другие расширения