2016-03-24 25 views
-5
from cImage import * 

im = FileImage("image.gif") 

width = im.getWidth() 

height = im.getHeight() 

im2 = FileImage("background.gif") 



a = height-1 

x=-1 

y=0 

for row in range(height): 

    for column in range(width): 

     if x<=a: 

      x=x+1 

     else: 

      y=y+1 

      x=0 

     p = im.getPixel(x,y) 

     h = p[0] 

     i = p[1] 

     j = p[2] 

     average = (h+i+j)/3 

     if average < 235: 

      im2.setPixel(x,y,Pixel(h,i,j)) 

im2.save("background.gif") 
+1

Kodunuzun ne yapması gerektiğini ve beklediğiniz gibi davranmadığını açıklamak ister misiniz? – idjaw

+1

"Bir buggy programı yazdım ve işe yaramıyor" ardından bir kod dökümü bir soru değil, bir hikaye. – timgeb

cevap

1

El ile x ve y'u yönetmeniz gerekmez. Döngü için olan şey budur. Sadece yazın:

for y in range(height): 
    for x in range(width): 
     p = im.getPixel(x,y) 
     ... 

Nitekim onlarla uğraşan elle soruna neden sizi 0 ila height - 1 yerine width - 1 Aralığa x set çünkü.

İlgili konular