在Python中获取输入图片的宽度和高度

时间:2014-03-24 22:35:30

标签: python file-io pygame

我们的任务是输入一张图片并创建一个程序来编写一个程序,该程序将在python 2.7.5中绘制该图片。这是我的代码:

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没有定义但是每个像素位置插入的位置。任何帮助,将不胜感激。谢谢。

2 个答案:

答案 0 :(得分:2)

PIL Image模块将能够执行您想要的操作。

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 :(得分:1)

您可以使用PIL(Python Imaging Library)来执行以下操作:

来自PIL导入图片

IM = Image.image( “image.png”)

pring im.size

width,height = im.size

如果有任何帮助