pillow python3
  FoZN5OJ14wRT 2023年11月05日 49 0

Pillow: Python3中的图像处理库

![Pillow Logo](

简介

Pillow是Python3中最流行的图像处理库之一。它是Python Imaging Library(PIL)的一个分支,提供了丰富的图像处理功能和易于使用的API。不仅可以打开、保存和显示图像,还可以进行缩放、裁剪、旋转、滤镜处理等等。Pillow支持多种图像格式,并且是免费开源的。

安装Pillow

要使用Pillow库,首先需要将其安装在Python环境中。可以使用pip包管理器来安装:

pip install pillow

入门示例

以下是一个简单的示例,演示了如何使用Pillow库加载图像,并将其旋转90度后保存到新文件中。

from PIL import Image

# 打开图像文件
image = Image.open("example.jpg")

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

# 保存旋转后的图像
image.save("rotated.jpg")

上述代码首先使用Image.open()函数打开了名为example.jpg的图像文件。然后,使用rotate()方法将图像旋转90度。最后,使用save()方法将旋转后的图像保存为rotated.jpg文件。

常见的图像处理操作

除了旋转之外,Pillow还提供了许多其他常见的图像处理操作。下面是一些示例:

缩放图像

from PIL import Image

# 打开图像文件
image = Image.open("example.jpg")

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

# 保存缩放后的图像
resized_image.save("resized.jpg")

上述代码使用resize()方法将图像缩放到指定的大小,并使用save()方法保存缩放后的图像。

裁剪图像

from PIL import Image

# 打开图像文件
image = Image.open("example.jpg")

# 裁剪图像
crop_area = (100, 100, 500, 400)  # (左,上,右,下)
cropped_image = image.crop(crop_area)

# 保存裁剪后的图像
cropped_image.save("cropped.jpg")

上述代码使用crop()方法从图像中裁剪出指定区域,并使用save()方法保存裁剪后的图像。

应用滤镜

from PIL import Image, ImageFilter

# 打开图像文件
image = Image.open("example.jpg")

# 应用滤镜
filtered_image = image.filter(ImageFilter.BLUR)

# 保存应用滤镜后的图像
filtered_image.save("filtered.jpg")

上述代码使用filter()方法应用了一个模糊滤镜,并使用save()方法保存应用滤镜后的图像。

支持的图像格式

Pillow库支持多种常见的图像格式,例如JPEG、PNG、GIF、BMP等等。可以使用Image.open()函数打开各种图像格式的文件,并使用save()方法保存图像为特定的格式。

以下是一些示例:

from PIL import Image

# 打开JPEG图像
jpeg_image = Image.open("example.jpg")

# 打开PNG图像
png_image = Image.open("example.png")

# 保存图像为JPEG格式
jpeg_image.save("example.jpg")

# 保存图像为PNG格式
png_image.save("example.png")

序列图示例

下面是一个使用sequenceDiagram标记的Mermaid语法示例,演示了使用Pillow库进行图像处理的过程:

sequenceDiagram
    participant User
    participant Pillow
    participant Image

    User->>Pillow: 导入Pillow模块
    User->>Image: 导入Image类
    User->>Image: 打开图像文件
    Pillow->>Image: 调用open()方法
    Image->>Pillow: 返回图像对象
    User->>Image: 进行图像处理操作
    Image->>Image: 旋转图像
    Image->>Image: 缩放图像
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

FoZN5OJ14wRT