📜  使用 PIL 保存 numpy arrayw - Python (1)

📅  最后修改于: 2023-12-03 15:06:49.755000             🧑  作者: Mango

使用 PIL 保存 numpy arrayw - Python

有时候我们需要将 numpy 数组保存成图像,这时就需要用到 PIL 库。在 Python 中,我们可以通过 PIL 的 Image.fromarray() 函数将 numpy 数组转换成 PIL 中的图像格式,然后使用 PIL 中的 save() 函数保存成图像文件。

下面是一个简单的示例代码,演示了如何使用 PIL 保存 numpy 数组。

import numpy as np
from PIL import Image

# 创建一个随机的 numpy 数组
img_array = np.random.rand(512, 512) * 255

# 将 numpy 数组转换成 PIL 中的图像格式
img = Image.fromarray(img_array.astype('uint8'))

# 保存成图像文件
img.save('random_image.png')

在上面的代码中,我们首先使用 numpy.random.rand() 函数创建了一个大小为 512x512 的随机数组,并将其乘以 255,使得数据范围在 0~255 之间。然后,我们将这个 numpy 数组转换成 PIL 中的 Image 对象,并使用 save() 函数将其保存成 PNG 格式的图像文件。

需要注意的是,在使用 Image.fromarray() 函数将 numpy 数组转换成 PIL 中的图像格式时,需要将 numpy 数组的数据类型转换成 'uint8',否则可能会导致图像出现异常。