将 PIL 图像转换为 NumPy 数组
本教程将讨论在 Python 中将 PIL 图像转换为 3 维 NumPy 数组的方法。
在 Python 中使用 numpy.array()
函数将 PIL 图像转换为 NumPy 数组
PIL 用于在 Python 中对图像执行各种操作。枕头库未预先安装 Python 编程语言。因此,我们必须先安装它。下面给出了安装枕头库的命令。
pip install Pillow
如果要将 PIL 库读取的图像转换为 NumPy 数组,可以使用 numpy.array()
函数。numpy.array() 函数创建并初始化 numpy 数组。numpy.array()
函数会将 PIL 图像转换为 3 维数组。请参见以下代码示例。
import numpy as np
from PIL import Image
img = Image.open("NASA.jpg")
imgArray = np.array(img)
print(imgArray.shape)
输出:
(90, 240, 3)
在上面的代码中,我们使用 numpy.array()
函数将 PIL 图像 img
转换为三维 NumPy 数组 imgArray
。我们使用 Python 中的 Image.open()
函数读取变量 img
中的图像。然后,我们在 Python 中使用 numpy.array()
函数将 img
转换为 NumPy 数组 imgArray
。最后,我们使用 print()
函数打印了 imgArray
的形状。
在 Python 中使用 numpy.asarray()
函数将 PIL 图像转换为 NumPy 数组
我们还可以使用 numpy.asarray()
函数来实现与上一个示例相同的目标。numpy.asarray() 函数还创建并初始化一个 numpy 数组。通过将图像传递给 numpy.asarray()
函数,我们可以将 PIL 图像转换为 numPy 数组。请参见以下代码示例。
import numpy as np
from PIL import Image
img = Image.open("NASA.jpg")
imgArray = np.asarray(img)
print(imgArray.shape)
输出:
(90, 240, 3)
在上面的代码中,我们使用 python 中的 numpy.array()
函数将 PIL 图像 img
转换为三维 NumPy 数组 imgArray
。我们在 Python 中使用 Image.open()
函数将 img 变量加载到了 img 变量中。然后,我们在 Python 中使用 numpy.asarray()
函数将 img
图像转换为 NumPy 数组 imgArray
。最后,我们使用 print()
函数打印了 imgArray
的形状。
相关文章
在 Python 中将 Tensor 转换为 NumPy 数组
发布时间:2024/03/12 浏览次数:118 分类:Python
-
在 Python 中,可以使用 3 种主要方法将 Tensor 转换为 NumPy 数组:Tensor.numpy()函数,Tensor.eval()函数和 TensorFlow.Session()函数。
在 Python 中将 CSV 读取为 NumPy 数组
发布时间:2024/03/12 浏览次数:118 分类:Python
-
本教程演示如何在 Python 中将 CSV 读取为 NumPy 数组。
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 浏览次数:152 分类:Python
-
本教程展示了我们如何使用 plt.text()方法在 Matplotlib 中为图或轴添加文字。
如何在 Matplotlib 中的多个线条之间进行填充
发布时间:2024/02/04 浏览次数:191 分类:Python
-
`fill_between()` 每次只能填充两条线之间的区域,但是我们可以选择一对行来填充多个线条之间的区域。