python PIL保存图像不同大小的原始

时间:2015-11-11 01:17:39

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

我正在使用python中的PIL进行项目。 只需打开并保存图像,输出图像就会比原始图像更大(以字节为单位),保持相同的分辨率,我不知道为什么......

from PIL import Image
img = Image.open("photo.png")
img.save("photo2.png", "PNG")

result from code above

有人知道为什么会这样吗?我需要它们完全一样。

2 个答案:

答案 0 :(得分:1)

PNG是一种压缩无损格式。原始图像可能使用不同的压缩设置保存。

查看您可以尝试的documentation

img.save("photo2.png", "PNG", optimize=True)

img.save("photo2.png", "PNG", compress_level=9)

默认使用compress_level=6

请注意,optimize选项包括将压缩级别设置为9.但它也会尝试查找最佳编码器设置。

答案 1 :(得分:0)

我想您不会更改图像,否则大小会有所不同。如果您不更改图像,为什么不复制呢?

shutil.copyfile(source, destination)