如何将图像中每个像素的RGB值导入1-D数组?
我正在使用以下内容:
from PIL import Image
im = Image.open("bride.jpg")
pix = im.load()
print pix[x,y]
这将它导入到不可迭代的二维数组中。 我希望同样的东西,但在一维数组。
答案 0 :(得分:1)
您可以按如下方式将像素展平为一维数组:
width, height = im.size
pixels = [pix[i, j] for i in range(width) for j in range(height)]
答案 1 :(得分:1)
如果您正在使用numpy,并且无需加载图像,则很容易。
from PIL import Image
import numpy as np
im = Image.open("bride.jpg")
pix_flatiter = np.asarray(im).flat # is an iterable
如果要加载整个数组,可以执行以下操作:
pix_flat = np.asarray(im).flatten() # is an array