调整大小时的Python图像库图像分辨率

时间:2012-09-26 19:47:07

标签: python image-processing jpeg python-imaging-library resolution

我正在尝试使用python图像库将一些jpeg图像从24X36英寸缩小到11X16.5英寸。由于PIL处理像素,这应该意味着从7200X 4800像素缩放到3300 X2200像素,我的分辨率设置为200像素/英寸,但是当我运行我的脚本PIL时将分辨率更改为72像素/英寸,我最终得到更大比我以前的形象。

import Image

im = Image.open("image.jpg")

if im.size == (7200, 4800):
    out = im.resize((3300,2200), Image.ANTIALIAS)
elif im.size == (4800,7200):
    out = im.resize((2200,3300), Image.ANTIALIAS)

out.show()

当我调整图像大小时,有没有办法保持我的图像分辨率?

感谢您的帮助!

1 个答案:

答案 0 :(得分:7)

要保留DPI,您需要在保存时指定它; info属性并不总是在图像处理中保留:

dpi = im.info['dpi']  # Warning, throws KeyError if no DPI was set to begin with

# resize, etc.

out.save("out.jpg", dpi=dpi)