python PIL保存不同大小的原始图像
我正在用python与PIL合作一个项目。 只需打开并保存图像,输出图像就会比原始图像更大(以字节为单位),保持相同的分辨率,我不知道为什么python PIL保存不同大小的原始图像,python,image,image-processing,python-imaging-library,Python,Image,Image Processing,Python Imaging Library,我正在用python与PIL合作一个项目。 只需打开并保存图像,输出图像就会比原始图像更大(以字节为单位),保持相同的分辨率,我不知道为什么 from PIL import Image img = Image.open("photo.png") img.save("photo2.png", "PNG") 有人知道为什么会这样吗?我需要它们完全相同。PNG是一种压缩无损格式。原始图像可能是使用不同的压缩设置保存的 看看下面的例子,你可以试试: img.save("photo2.png", "P
from PIL import Image
img = Image.open("photo.png")
img.save("photo2.png", "PNG")
有人知道为什么会这样吗?我需要它们完全相同。PNG是一种压缩无损格式。原始图像可能是使用不同的压缩设置保存的 看看下面的例子,你可以试试:
img.save("photo2.png", "PNG", optimize=True)
或
默认情况下,使用compress\u level=6
请注意,
optimize
选项包括将压缩级别设置为9。但它也试图找到最佳的编码器设置。我想你不会改变图像,否则大小会不同。如果你不改变图像,为什么不复制它呢
shutil.copyfile(source, destination)
这并没有解决问题。。。实际上,原始图像必须具有不同的压缩设置,这在Python图像库(PIL)中是不可用的。我所做的是使用photo2.png作为原始版本。。。ty任何一个
libpng
库都会丢失除压缩以外的可能设置。PIL可能无法全部使用它们。
shutil.copyfile(source, destination)