2016-06-10 15 views
0

Ich möchte r, g, b Matrix eines Bildes zu analysieren, um Änderungen vorzunehmen und dann wieder auf ein Bild anwenden. Ich habe PhotoImage Funktion zum Anzeigen des Bildes verwendet:Wie ändere ich den Wert der RGB-Komponente eines Bildes

img=Photoimage(filename) 
for i in range (0,500): 
    for j in range (0,500): 
     pixel=img.get(i,j) 

Dies wird mir den RGB-Wert jedes Pixels zurückkehrt, aber ich bin nicht in der Lage den Pixelwert des Bildes, um Änderungen in.
ich versuchte, mit load(), imread(), getpixel(), getred() .. aber diese scheinen nicht 3.
Irgendwelche Vorschläge mit Python arbeiten zu werden?

Antwort

0

Ich habe PIL verwendet, um dieses in der Vergangenheit zu tun, hier ist der Code, den ich verwendet, es als einen einzigen Wert liest und nicht als RGB, wie es scheint, nur mit GIFs zu arbeiten:

f="path\to\image.gif" 
from PIL import Image, ImageTk 

img = Image.open(f) 
pix=list(img.getdata()) 
width=img.size[0] 
height=img.size[1] 

#modify the image here 
for i in pix: 
    print(i) 

img.putdata(pix) 
photo.paste(img) 
img.close() 

Hoffnung das hilft.

Verwandte Themen