使用Python和PIL来压缩图像可以通过调整图像的大小和质量来实现。以下是详细的步骤:
1. 安装PIL库
PIL是Python中一个用于图像处理的库,我们可以使用pip命令来安装它:
pip install Pillow
2. 打开图像
使用PIL库中的Image.open()
方法来打开图像,例如:
from PIL import Image
img = Image.open("example.jpg")
3. 调整图像大小
可以使用Image.resize()
方法来调整图像的大小。这个方法需要一个新的大小作为参数。例如,我们将图像调整为原始大小的一半:
new_size = (img.width // 2, img.height // 2)
resized_img = img.resize(new_size)
4. 调整图像质量
可以使用Image.save()
方法来保存调整后的图像,并可以通过设置quality
参数来调整图像的质量。quality
参数的值可以在0到100之间,100表示最高质量。例如,我们将图像质量降低到50:
resized_img.save("example_compressed.jpg", quality=50)
示例1:压缩单张图像
下面是一个将一张图像压缩的示例:
from PIL import Image
img = Image.open("example.jpg")
new_size = (img.width // 2, img.height // 2)
resized_img = img.resize(new_size)
resized_img.save("example_compressed.jpg", quality=50)
示例2:批量压缩图像
下面是一个批量压缩文件夹中所有图像的示例:
import os
from PIL import Image
path = "./images"
for filename in os.listdir(path):
if not filename.endswith(".jpg"):
continue
img = Image.open(os.path.join(path, filename))
new_size = (img.width // 2, img.height // 2)
resized_img = img.resize(new_size)
compressed_filename = os.path.join(path, f"{os.path.splitext(filename)[0]}_compressed.jpg")
resized_img.save(compressed_filename, quality=50)
以上就是使用Python和PIL来压缩图像的完整攻略,希望能帮助到你!