更新时间:2023-11-23 08:29:52
使用 Image.getdata 方法.该方法返回一个可以迭代的生成器:
Use the Image.getdata method. The method returns a generator that you can iterate over:
from PIL import Image
img = Image.open("a.png")
data = img.getdata()
for (r, g, b, a) in data:
# do something with the pixel values
要采用其他方式,请使用 Image.putdata
一个>.这会生成一个小棋盘格图片:
To go the other way you use Image.putdata
. This generates a tiny checkerboard picture:
>>> img = Image.new("L", (3, 3))
>>> data = [0, 255, 0, 255, 0, 255, 0, 255, 0]
>>> img.putdata(data)
>>> img.save("checkerboard.png")
在这里我创建了一个灰度图像(只有一个发光"通道),所以我只为每个像素使用一个整数值.
Here I created a grayscale image (only one "luminescence" channel) and so I just used a single integer value for each pixel.