迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

在 Python 中将 NumPy 数组保存为图像

作者:迹忆客 最近更新:2024/03/12 浏览次数:

在 Python 中,numpy 模块用于处理数组。Python 中有许多可用的模块,这些模块使我们可以读取和存储图像。

可以将图像视为存储在具有相应颜色代码的特定位置的不同像素的数组。因此,我们可能会遇到需要将数组转换并保存为图像的情况。

在本教程中,我们将讨论如何将 numpy 数组另存为图像。


使用 Image.fromarray() 函数将一个 numpy 数组另存为图像

fromarray() 函数用于从导出数组的对象创建图像内存。然后,我们可以通过提供所需的路径和文件名将图像内存保存到我们所需的位置。

例如,

import numpy as np
from PIL import Image

array = np.arange(0, 737280, 1, np.uint8)
array = np.reshape(array, (1024, 720))

im = Image.fromarray(array)
im.save("filename.jpeg")

我们首先创建一个存储 RGB 颜色代码的数组,然后将其导出。我们可以在文件名中指定图像的所需格式。可以是 jpegpng 或任何其他常用的图​​像格式。这对于下面讨论的所有方法都是很常见的。


使用 imageio.imwrite() 函数将一个 numpy 数组另存为图像

较早之前,scipy 模块具有 imsave() 函数,可将 numpy 数组另存为图像。但是,在最近的版本中,它已被弃用,并且开始推荐使用 image.io() 中的 imwrite() 函数来执行此任务,并因其简单性而广受欢迎。

以下代码显示了如何使用此函数。

import imageio
import numpy as np

array = np.arange(0, 737280, 1, np.uint8)
array = np.reshape(array, (1024, 720))

imageio.imwrite("filename.jpeg", array)

使用 matplotlib.pyplot.imsave() 函数将一个 NumPy 数组另存为图像

matplotlib 模块有多种函数可用于处理图像。

imsave() 函数可以将数组另存为图像文件。

例如,

import matplotlib.pyplot as plt
import numpy as np

array = np.arange(0, 737280, 1, np.uint8)
array = np.reshape(array, (1024, 720))

plt.imsave("filename.jpeg", array)

使用 cv2.imwrite() 函数将一个 numpy 数组另存为图像

OpenCV 模块通常用于 Python 中的图像处理。该模块中的 imwrite() 函数可以将一个 numpy 数组导出为图像文件。

例如,

import cv2
import numpy as np

array = np.arange(0, 737280, 1, np.uint8)
array = np.reshape(array, (1024, 720))

cv2.imwrite("filename.jpeg", array)

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 Python 中将 Tensor 转换为 NumPy 数组

发布时间:2024/03/12 浏览次数:118 分类:Python

在 Python 中,可以使用 3 种主要方法将 Tensor 转换为 NumPy 数组:Tensor.numpy()函数,Tensor.eval()函数和 TensorFlow.Session()函数。

Python NumPy 中的逐元素除法

发布时间:2024/03/12 浏览次数:177 分类:Python

有两种主要方法可用于在 Python 中对 NumPy 数组执行逐元素除法,即 numpy.divide() 函数和 / 运算符。

如何在 Matplotlib Pyplot 中显示网格

发布时间:2024/02/04 浏览次数:128 分类:Python

本文演示了如何在 Python Matplotlib 中在一个图上画一个网格。使用 grid()函数来绘制网格,并解释了如何改变网格颜色和线条类型。

如何在 Matplotlib 中画一条任意线

发布时间:2024/02/04 浏览次数:155 分类:Python

本教程讲解了我们如何在 Matplotlib 中使用 matplotlib.pyplot.plot()、matplotlib.pyplot.vlines()、matplotlib.pyplot.hlines()方法和 matplotlib.collection.LineCollection 绘制任意线条。

Matplotlib 中的叠加条形图

发布时间:2024/02/04 浏览次数:172 分类:Python

本教程展示了如何使用 plt.bar()方法将某些数据集的条形图堆叠在另一个数据集上。我们在 Matplotlib 中使用 matplotlib.pyplot.bar()方法生成条形图。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便