Python中Pillow库的常见用法和代码示例

Pillow是Python中非常流行的图像处理库,它提供了广泛的图像操作功能,如打开、保存、缩放、裁剪、旋转、调色等。下面我将为您展示Pillow库的一些常见用法和代码示例。

首先,确保您已经安装了Pillow库。如果尚未安装,可以使用pip进行安装:

bash复制代码

pip install pillow

1. 打开和显示图像

from PIL import Image  
  
# 打开图像  
image = Image.open('path_to_your_image.jpg')  
  
# 显示图像(这一步需要在支持图形用户界面的环境中执行,例如Jupyter Notebook)  
image.show()

2. 保存图像

# 保存图像为新的文件  
image.save('new_image.jpg')

3. 图像缩放

# 缩放图像到指定大小  
resized_image = image.resize((800, 600))  
resized_image.show()

4. 图像裁剪

# 裁剪图像(定义左上角和右下角的坐标)  
cropped_image = image.crop((100, 100, 400, 400))  
cropped_image.show()

5. 图像旋转

# 旋转图像(90度)  
rotated_image = image.rotate(90)  
rotated_image.show()

6. 调整图像亮度

# 使用ImageEnhance库调整亮度  
from PIL import ImageEnhance  
  
enhancer = ImageEnhance.Brightness(image)  
brightened_image = enhancer.enhance(2.0)  # 增加亮度(2.0倍)  
brightened_image.show()

7. 图像格式转换

# 将图像转换为灰度图像  
gray_image = image.convert('L')  
gray_image.show()

8. 图像滤镜

# 应用滤镜效果(例如模糊)  
blurred_image = image.filter(ImageFilter.BLUR)  
blurred_image.show()

注意:在上面的滤镜示例中,我遗漏了ImageFilter的导入语句。正确的代码应该是:

from PIL import Image, ImageFilter  
  
# 应用滤镜效果(例如模糊)  
blurred_image = image.filter(ImageFilter.BLUR)  
blurred_image.show()

9. 图像合成与叠加

# 打开另一个图像用于合成  
overlay_image = Image.open('path_to_overlay_image.png')  
  
# 将overlay_image叠加到原始图像上(注意:这两个图像应该有相同的尺寸)  
result = Image.alpha_composite(image, overlay_image)  
result.show()

10. 图像像素操作

# 访问并修改图像的像素值  
pixels = image.load()  
width, height = image.size  
  
for x in range(width):  
    for y in range(height):  
        r, g, b = pixels[x, y]  # 获取像素的RGB值  
        # 对像素值进行一些操作,例如增加亮度  
        r = min(255, r + 50)  
        g = min(255, g + 50)  
        b = min(255, b + 50)  
        pixels[x, y] = (r, g, b)  # 设置新的像素值  
  
image.show()  # 显示修改后的图像

这些示例涵盖了Pillow库的一些基本用法。当然,Pillow还提供了许多其他高级功能和选项,您可以查阅官方文档以获取更多详细信息。

你可能感兴趣的:(Python常用的库,opencv)