【发布时间】:2011-04-04 02:22:52
【问题描述】:
我将图像转换为具有 RGBA 值的 ndarray。假设它是 50 x 50 x 4。
我想用值array([255, 255, 255, 255]) 替换array([0, 0, 0, 0]) 的所有像素。所以:
from numpy import *
from PIL import Image
def test(mask):
mask = array(mask)
find = array([255, 255, 255, 255])
replace = array([0, 0, 0, 0])
return putmask(mask, mask != find, replace)
mask = Image.open('test.png')
test(mask)
我做错了什么?这给了我一个ValueError: putmask: mask and data must be the same size。但是,如果我将数组更改为数字(查找 = 255,替换 = 0),它就可以工作。
【问题讨论】:
标签: python arrays image image-processing numpy