Python PIL 图像处理库完整攻略
PIL(Python Imaging Library)是 Python 中用于图像处理的标准库,它提供了丰富的处理图像的工具和算法。在这篇文档中,我们将讲解 Python PIL 的基本知识和使用方法,以及两个简单的示例说明。
安装 Python PIL
在使用 PIL 之前,需要先安装它。在命令行中运行以下命令即可:
pip install Pillow
安装成功后,我们就可以使用 PIL 进行图像处理了。
打开图像
使用 PIL 打开图像非常简单。只需使用Image
模块的open()
函数即可:
from PIL import Image
img = Image.open('image.jpg')
上述代码打开名为image.jpg
的图像,并将其赋值给变量img
。我们可以使用变量名来引用图像。
保存图像
使用 PIL 保存图像也非常简单。只需调用图像对象的save()
方法并指定文件名即可:
img.save('new_image.jpg')
上述代码将图像对象img
保存为名为new_image.jpg
的新图像。
图像缩放
使用 PIL 进行图像缩放也非常方便。只需调用图像对象的resize()
方法,并指定新的尺寸即可:
new_img = img.resize((width, height))
上述代码将图像对象img
缩放为新的尺寸,并将结果保存到变量new_img
中。
示例1:图像处理
接下来我们来看一个简单的图像处理示例。
from PIL import Image, ImageFilter
img = Image.open('image.jpg')
gray_img = img.convert('L')
blur_img = gray_img.filter(ImageFilter.GaussianBlur(radius=10))
blur_img.save('processed_image.jpg')
上述代码先打开名为image.jpg
的图像,并将其转换为灰度图像。然后,应用高斯模糊滤镜,将处理结果保存到名为processed_image.jpg
的新图像中。
示例2:图像批量处理
我们还可以使用 PIL 对整个文件夹中的所有图像进行批量处理。
import os
from PIL import Image
input_folder = 'input_folder'
output_folder = 'output_folder'
size = (800, 600)
if not os.path.exists(output_folder):
os.makedirs(output_folder)
for filename in os.listdir(input_folder):
filepath = os.path.join(input_folder, filename)
if os.path.isfile(filepath):
with Image.open(filepath) as img:
img = img.resize(size)
img.save(os.path.join(output_folder, filename))
上述代码将input_folder
文件夹中所有的图像文件缩放为指定大小,并将处理结果保存到output_folder
文件夹中。
以上是 Python PIL 图像处理库的完整攻略和两个简单的示例说明。