2010-07-02 26 views
5

我有一张图片,我想用不同颜色的图片替换一种颜色的所有像素,那么最简单的方法是什么?替换PIL中的单个颜色?

或多或少我在tkinter中有一个图像,当按下按钮时,我希望颜色改变。

+1

可能的重复:http://stackoverflow.com/questions/1616767/pil-best-way-to-replace-color – unutbu 2010-07-03 00:31:17

回答

4

试试这个。

#!/usr/bin/python 
from PIL import Image 
import sys 

img = Image.open(sys.argv[1]) 
img = img.convert("RGBA") 

pixdata = img.load() 

# Clean the background noise, if color != white, then set to black. 

for y in xrange(img.size[1]): 
    for x in xrange(img.size[0]): 
     if pixdata[x, y] == (255, 255, 255, 255): 
      pixdata[x, y] = (0, 0, 0, 255) 

您可以使用颜色选择器在GIMP吸收的颜色和看到的RGBA颜色

3

我认为最快的方法是使用Image.load()方法。 这样的事情应该工作:

​​
0

要做到这一点,最好的办法是使用点方法。 有完整的解释请试试thread