如题,目前只能通过遍历循环得出图像的所有像素值:
image = Image.open('test.png')
width = image.width
height = image.height
image_list = []
for x in range(height):
scanline_list = []
for y in range(width):
pixel = image.getpixel((y, x))
scanline_list.append(pixel)
image_list.append(scanline_list)
print(image_list)
是否有更简单的方法获取图像的所有像素?类似直接用 getpixels()
方法直接返回图像的所有像素的列表
image 本身就代表了一个像素组成的二维数组, 不一定非得把二维数组保存成一维数组吧. 我觉得题主不妨讲讲看, 要获取一个图片像素的一维数组是做什么需求, 或许有更好的办法解决.
另外, pillow 里面有直接获取像素二维数组的方法:
上面代码输出类似下面的两个 tuple:
参考 pillow 文档.
希望对你有所帮助.