2010-07-02 16 views
5

मेरे पास एक छवि है, मैं एक रंग के सभी पिक्सल को एक अलग रंग में बदलना चाहता हूं, इसके बारे में जाने का सबसे आसान तरीका क्या है?पीआईएल में एक ही रंग को बदलना?

कम या ज्यादा मेरे पास टिंकर में एक छवि है, और जब एक बटन दबाया जाता है तो मैं रंग बदलना चाहता हूं।

+1

संभावित डुप्लिकेट: http://stackoverflow.com/questions/1616767/pil-best-way-to-replace-color – unutbu

उत्तर

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) 

आप रंग अवशोषित करने के लिए जिम्प में रंग पिकर का उपयोग करें और है कि RGBA रंग

3

मुझे लगता है कि ऐसा करने का सबसे तेज़ तरीका Image.load() विधि का उपयोग करना है। इस तरह कुछ काम करना चाहिए:

from PIL import Image 
im = Image.open("image.jpg") 
image_data = im.load() 
# Here you have access to the RGB color of each pixel 
# image_data[x,y] = (R,G,B) 
0

यह करने के लिए सबसे अच्छा तरीका बिंदु विधि का उपयोग कर रहा है देख सकते हैं। पूर्ण स्पष्टीकरण के लिए इस thread को आजमाएं।

संबंधित मुद्दे