Python PIL和枕头是如何压缩图片的?
我想用Python3.3编写一个程序,其中一个帧被添加到图片中。 我使用Python中的PIL包来实现这一点。但是我得到的照片不到原作的三分之一大,而且它们失去了一些焦点/锐度/光泽。Python在哪里压缩/更改图片,以及如何(如果可能)抑制它 我能想到一些段落,可能是压缩的Python PIL和枕头是如何压缩图片的?,python,image,python-imaging-library,image-compression,Python,Image,Python Imaging Library,Image Compression,我想用Python3.3编写一个程序,其中一个帧被添加到图片中。 我使用Python中的PIL包来实现这一点。但是我得到的照片不到原作的三分之一大,而且它们失去了一些焦点/锐度/光泽。Python在哪里压缩/更改图片,以及如何(如果可能)抑制它 我能想到一些段落,可能是压缩的 我用PIL加载图像: img=Image.open(元素) 我创建了一个新图片,它是黑色的: newImg=Image.new(“RGB”,(imgWidthNew,imgHightNew),(0,0,0)) 我用我的图片
img=Image.open(元素)
newImg=Image.new(“RGB”,(imgWidthNew,imgHightNew),(0,0,0))
pixels=newImg.load()
newImg.paste(Image.open(元素),(半帧宽、半帧高、imgWidth+半帧宽、imgHight+半帧高))
newImg.save(路径,dpi=[300300])
path = path[:path.rfind(".")] + fileEnding
但这不应该是问题所在,因为在不更改数据类型的情况下,我也有同样的问题。
我的操作系统是Windows7 64位,我使用Pillow 2.3.0和Python 3.3
谢谢您的帮助。保存为JPEG时,您可以设置质量参数来控制压缩量:
newImg.save(path, 'JPEG', dpi=[300,300], quality=90)
或者,以无损格式保存,如PNG:
newImg.save(path, 'PNG', dpi=[300,300])
图像是按其原始大小粘贴,还是缩小了?请确保
路径
扩展名和格式相互匹配,否则您会遇到一些问题。感谢您的帮助,这肯定是有帮助的。但我也偶然发现了为什么在我放大一点后,无损格式PNG在我的屏幕上看起来很模糊。对于我的屏幕来说,原始文件的大小是完美的,而我编辑的文件则不是。当我放大时,我得到了这张照片的完美格式,它看起来和另一张一样好。谢谢你,我现在想用JPEG。