2014-03-24 95 views
0

我們的任務是輸入一張圖片並創建一個程序,該程序寫入一個將在python 2.7.5中繪製該圖片的程序。這裏是我的代碼:在Python中獲取輸入圖片的寬度和高度

from pygame import * 

inFile = open("picture.jpg") 
out = open('fa3.py','w') 


width = inFile.get_width() 
height = inFile.get_height() 

out.write(''' 
from pygame import * 
screen=display.set_mode((800,600)) 
running=True 

while running: 
    for evt in event.get(): 
     if evt.type == QUIT: 
      running = False 
      ''') 


for i in range(width,height): 
    c = inFile.get_at() 
    out.write('''draw.cricle(screen,(c),x,y,2)''') 
我有收到該文件的高度和寬度,也發現圖像中每個像素位置的麻煩

。我的老師告訴我使用「.get_width和height」,但它似乎不起作用。我知道我的x,y沒有被定義,但是這將是插入每個像素位置的地方。任何幫助,將不勝感激。謝謝。

+0

我不會用pygame的這一點,你可以使用圖片或PIL,這將是更有效的。 – Aidan

回答

2

PIL圖像模塊將能夠做你想做的。

http://effbot.org/imagingbook/image.htm

實施例來顯示的圖像

from PIL import Image 
im = Image.open("bride.jpg") 
im.show() 

下列附加代碼將讓你操縱像素(只要其保存後)

pixels = im.load() 
print pixels[x, y] 
pixels[x, y] = value #value is a tuple in this format (normally) (235,154,124) or (Red,Green,Blue) 

要獲得圖像大小

im.size() #width and height, (400,600) 
im.size[0] #width, 400 
im.size[1] #height, 600 
1

您可以使用PIL(Python圖像庫)做:

從PIL導入圖像

IM = Image.image( 「image.png」)

普林im.size

寬度,高度= im.size

如果那任何幫助