PIL(Python Imaging Library)是一个强大的Python库,用于处理图像。以下是如何使用PIL来压缩图像的步骤:
图像压缩是指减少图像数据量的过程,以便于存储和传输,同时尽量保持图像质量。压缩可以分为无损压缩和有损压缩。无损压缩可以完全恢复原始图像,而有损压缩则会丢失一些信息,但通常可以显著减小文件大小。
以下是一个使用PIL库压缩JPEG图像的示例代码:
from PIL import Image
import os
def compress_image(input_path, output_path, quality=75):
"""
压缩图像并保存到指定路径。
:param input_path: 输入图像的路径
:param output_path: 输出压缩后图像的路径
:param quality: 图像质量,范围为1-95,默认75
"""
with Image.open(input_path) as img:
img.save(output_path, optimize=True, quality=quality)
# 使用示例
input_image = 'example.jpg'
output_image = 'compressed_example.jpg'
compress_image(input_image, output_image, quality=50)
# 检查文件大小变化
original_size = os.path.getsize(input_image)
compressed_size = os.path.getsize(output_image)
print(f'Original size: {original_size} bytes')
print(f'Compressed size: {compressed_size} bytes')
quality
参数的值。通过上述方法,你可以有效地使用PIL库来压缩图像,同时控制输出文件的大小和质量。
领取专属 10元无门槛券
手把手带您无忧上云