在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/人工智能  Python  C/ Python Pillow 如何獲取圖像的所有像素?

Python Pillow 如何獲取圖像的所有像素?

如題,目前只能通過(guò)遍歷循環(huán)得出圖像的所有像素值:

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)

是否有更簡(jiǎn)單的方法獲取圖像的所有像素?類似直接用 getpixels() 方法直接返回圖像的所有像素的列表

回答
編輯回答
莓森

image 本身就代表了一個(gè)像素組成的二維數(shù)組, 不一定非得把二維數(shù)組保存成一維數(shù)組吧. 我覺(jué)得題主不妨講講看, 要獲取一個(gè)圖片像素的一維數(shù)組是做什么需求, 或許有更好的辦法解決.
另外, pillow 里面有直接獲取像素二維數(shù)組的方法:

from PIL import Image
im = Image.open('hopper.jpg')
px = im.load()
print (px[4,4])
px[4,4] = (0,0,0)
print (px[4,4])

上面代碼輸出類似下面的兩個(gè) tuple:

(23, 24, 68)
(0, 0, 0)

參考 pillow 文檔.
希望對(duì)你有所幫助.

2017年8月3日 05:36