
Python基本的图像压缩方法
我想快速压缩一张图片,减少其文件大小,有哪些Python库和方法可以实现这一功能?
使用Pillow库进行基本图像压缩
可以使用Python的Pillow库来简单压缩图片。通过调整图片的质量参数(如JPEG格式中的quality),可以有效降低文件大小,同时保留一定的图像清晰度。代码示例:```python
from PIL import Image
img = Image.open('input.jpg')
img.save('output.jpg', quality=50) # quality取值范围为1-95,数值越低压缩越大
除了调整压缩质量外,如何使用Python降低图片分辨率以减小文件大小?
通过调整图像尺寸达到压缩效果
图像尺寸对文件大小影响显著,可以通过缩小宽高来压缩图像。使用Pillow库中的resize方法可以方便地调整分辨率。例如:```python
from PIL import Image
img = Image.open('input.png')
new_img = img.resize((img.width // 2, img.height // 2))
new_img.save('output.png')
有大量图片需要压缩处理,使用Python有哪些批量操作的建议?
结合os模块和Pillow实现批量压缩
可以利用Python的os模块遍历文件夹中的图片,再用Pillow进行压缩。示例代码如下:```python
import os
from PIL import Image
input_dir = 'input_images'
output_dir = 'compressed_images'
os.makedirs(output_dir, exist_ok=True)
for filename in os.listdir(input_dir):
if filename.endswith(('.jpg', '.jpeg', '.png')):
img_path = os.path.join(input_dir, filename)
img = Image.open(img_path)
img.save(os.path.join(output_dir, filename), quality=60)