我正在使用PIL来调整图像大小。为了确保调整大小的图像仍具有与原始图像相同的颜色,ICC 颜色配置文件将再次添加到输出图像中。
代码如下所示:
image = Image.open('input.jpg')
icc_profile = image.info.get('icc_profile')
# resize the image
resized_image.save('output.jpg', format='JPEG', icc_profile=icc_profile)
除了调整大小(较小)图像的文件大小甚至大于原始图像之外,一切正常。
例:
- 原始图像 => 1.2 MB
- 在没有 ICC 配置文件的情况下调整大小的图像 => 485.1 KB
- 使用 ICC 配置文件调整大小的图像 => 1.8 MB
如果您想检查它们,我已经上传了图像:http://www.fileswap.com/dl/ueKjdYLKZS/
有谁知道为什么文件大小会增加这么多,是否有解决方法?
任何帮助,不胜感激。谢谢!
我尝试使用最近邻(默认)image.resize((800, 533))
和抗锯齿image.resize((800, 533), Image.ANTIALIAS)
.但是,生成的文件大小为751KB和747KB,包括ICC配置文件,远小于原始图片。
与最初保存时更高的质量(更少的压缩)保存 JPEG 时,JPEG 在修改并再次保存后,文件大小可能会变大。或者,以前保存和压缩时会增加伪影,从而降低进一步压缩的效率。